View source code
Display the source code in dmd/backend/dtype.d from which this
page was generated on github.
Report a bug
If you spot a problem with this page, click here to create a
Bugzilla issue.
Improve this page
Quickly fork, edit online, and submit a pull request for this page.
Requires a signed-in GitHub account. This works well for small changes.
If you'd like to make larger changes you may want to consider using
local clone.
Module dmd.backend.dtype
Compiler implementation of the D programming language.
Functions
Name | Description |
---|---|
param_append_type(pp, t)
|
Allocate a param_t of type t, and append it to parameter list. |
param_calloc()
|
Allocate a param_t. |
param_free(pparamlst)
|
Free parameter list. |
param_free_l(p)
|
Version of param_free() suitable for list_free(). |
param_search(name, pp)
|
Search for member, create symbol as needed. Used for symbol tables for VLA's such as: void func(int n, int a[n]); |
param_t_createTal(p, ptali)
|
Create template-argument-list blank from template-parameter-list |
param_t_length(p)
|
Compute number of parameters |
param_t_print(p)
|
Pretty-print a param_t |
param_t_search(p, id)
|
Look for Pident matching id |
param_t_searchn(p, id)
|
Look for Pident matching id |
type_alignsize(t)
|
Return the size of a type for alignment purposes. |
type_alloc(ty)
|
Create a type & initialize it. |
type_allocn(ty, tn)
|
Allocate a type of ty with a Tnext of tn. |
type_assoc_array(tkey, tvalue)
|
Allocate an associative array type, which are key=value pairs |
type_copy(t)
|
Type type information. |
type_delegate(tnext)
|
Allocate a delegate type. |
type_dyn_array(tnext)
|
Allocate a dynamic array type. |
type_embed(t, u)
|
Recursively check if type u is embedded in type t. |
type_enum(name, tbase)
|
Create an enum type. |
type_fake(ty)
|
Fake a type & initialize it. |
type_free(t)
|
Free up data type. |
type_function(tyf, ptypes, variadic, tret)
|
Allocation a function type. |
type_isdependent(t)
|
Determine if type t is a dependent type. |
type_isvla(t)
|
Determine if type is a VLA. |
type_parameterSize(t, tyf)
|
Compute the size of a single parameter. |
type_paramsize(t)
|
Compute the total size of parameters for function call. Used for stdcall name mangling. Note that hidden parameters do not contribute to size. |
type_pointer(tnext)
|
Allocate a pointer type. |
type_print(t)
|
Pretty-print a type. |
type_setcv(pt, cv)
|
Set/clear const and volatile bits in *pt according to the settings in cv. |
type_setdependent(t)
|
Create a 'dependent' version of type t. |
type_setdim(pt, dim)
|
Set dimension of array. |
type_setmangle(pt, mangle)
|
Modify the Tmangle field of a type. |
type_setty(pt, newty)
|
Modify the tym_t field of a type. |
type_settype(pt, t)
|
Set type field of some object to t. |
type_size(t)
|
Compute size of type in bytes. |
type_static_array(dim, tnext)
|
Allocate a static array type. |
type_struct_class(name, alignsize, structsize, arg1type, arg2type, isUnion, isClass, isPOD, is0size)
|
Create a struct/union/class type. |
type_term()
|
Free type_list. |
type_zeroSize(t, tyf)
|
Compute special zero sized struct. |
typematch(t1, t2, relax)
|
A cheap version of exp2.typematch() and exp2.paramlstmatch(), so that we can get cpp_mangle() to work for MARS. It's less complex because it doesn't do templates and can rely on strict typechecking. |
Authors
License
Copyright © 1999-2022 by the D Language Foundation | Page generated by ddox.