clang
10.0.0git
|
Inline descriptor embedded in structures and arrays. More...
#include "/work/www-prereleases/10.0.0/rc2/docsbuild/clang/lib/AST/Interp/Descriptor.h"
Public Attributes | |
unsigned | Offset |
Offset inside the structure/array. More... | |
unsigned | IsConst: 1 |
Flag indicating if the storage is constant or not. More... | |
unsigned | IsInitialized: 1 |
For primitive fields, it indicates if the field was initialized. More... | |
unsigned | IsBase: 1 |
Flag indicating if the field is an embedded base class. More... | |
unsigned | IsActive: 1 |
Flag indicating if the field is the active member of a union. More... | |
unsigned | IsMutable: 1 |
Flag indicating if the field is mutable (if in a record). More... | |
Descriptor * | Desc |
Inline descriptor embedded in structures and arrays.
Such descriptors precede all composite array elements and structure fields. If the base of a pointer is not zero, the base points to the end of this structure. The offset field is used to traverse the pointer chain up to the root structure which allocated the object.
Definition at line 163 of file Descriptor.h.
Descriptor* clang::interp::InlineDescriptor::Desc |
Definition at line 182 of file Descriptor.h.
Referenced by clang::interp::Pointer::expand(), and clang::interp::Pointer::getFieldDesc().
unsigned clang::interp::InlineDescriptor::IsActive |
Flag indicating if the field is the active member of a union.
Definition at line 178 of file Descriptor.h.
Referenced by clang::interp::Pointer::activate(), and clang::interp::Pointer::isActive().
unsigned clang::interp::InlineDescriptor::IsBase |
Flag indicating if the field is an embedded base class.
Definition at line 176 of file Descriptor.h.
Referenced by clang::interp::Pointer::isBaseClass().
unsigned clang::interp::InlineDescriptor::IsConst |
Flag indicating if the storage is constant or not.
Relevant for primitive fields.
Definition at line 169 of file Descriptor.h.
Referenced by clang::interp::Pointer::isConst().
unsigned clang::interp::InlineDescriptor::IsInitialized |
For primitive fields, it indicates if the field was initialized.
Primitive fields in static storage are always initialized. Arrays are always initialized, even though their elements might not be. Base classes are initialized after the constructor is invoked.
Definition at line 174 of file Descriptor.h.
Referenced by clang::interp::Pointer::initialize(), and clang::interp::Pointer::isInitialized().
unsigned clang::interp::InlineDescriptor::IsMutable |
Flag indicating if the field is mutable (if in a record).
Definition at line 180 of file Descriptor.h.
Referenced by clang::interp::Pointer::isMutable().
unsigned clang::interp::InlineDescriptor::Offset |
Offset inside the structure/array.
Definition at line 165 of file Descriptor.h.
Referenced by ctorRecord(), clang::interp::Pointer::expand(), and clang::interp::Pointer::getBase().