dmd.dstruct
Struct and union declarations.
Specification: Structs, Unions
License
Source: dstruct.d
Documentation: https://dlang.org/phobos/dmd_dstruct.html
-
Declaration
FuncDeclaration
search_toString
(StructDeclarationsd
);Search
sd
for a member function of the form:extern (D) string toString();
Parameters
StructDeclaration
sd
struct declaration to search
Return Value
FuncDeclaration of
toString()
if found,null
if not -
Declaration
void
semanticTypeInfo
(Scope*sc
, Typet
);Request additional semantic analysis for TypeInfo generation.
Parameters
Scope*
sc
context
Type
t
type that TypeInfo is being generated for
-
Declaration
class
StructDeclaration
: dmd.aggregate.AggregateDeclaration;All
struct
declarations are an instance of this.-
Declaration
final void
determineTypeProperties
();Compute cached type properties for
TypeStruct
-
Declaration
final bool
isPOD
();Determine if struct is POD (Plain Old Data).
Discussion
POD is defined as:
- not nested
- no postblits, destructors, or assignment operators
- no
ref
fields or fields that are themselves non-POD
Return Value
true
if struct is POD -
Declaration
final bool
hasCopyConstruction
();Determine if struct has copy construction (copy constructor or postblit)
Return Value
true
if struct has copy construction -
Declaration
final bool
hasRegularCtor
(boolcheckDisabled
= false);Verifies whether the struct declaration has a constructor that is not a copy constructor. Optionally, it can check whether the struct declaration has a regular constructor, that is not disabled.
Parameters
bool
checkDisabled
if the struct has a regular non-disabled constructor
Return Value
true
, if the struct has a regular (optionally, not disabled) constructor,false
otherwise.
-
-
Declaration
bool
_isZeroInit
(Expressionexp
);Determine if
exp
is all binary zeros.Parameters
Expression
exp
expression to check
Return Value
true
if it's all binary 0 -
Declaration
class
UnionDeclaration
: dmd.dstruct.StructDeclaration;Unions are a variation on structs.