struct InitMap
Declaration
struct InitMap { /* full declaration omitted */ };
Description
Bitfield tracking the initialisation status of elements of primitive arrays. A pointer to this is embedded at the end of all primitive arrays. If the map was not yet created and nothing was initialized, the pointer to this structure is 0. If the object was fully initialized, the pointer is -1.
Declared at: clang/lib/AST/Interp/Descriptor.h:189
Member Variables
- private unsigned int UninitFields
- Number of fields initialized.
- private static const uint64_t PER_FIELD = sizeof(unsigned long) * 8
- Bits stored in a single field.
Method Overview
- private InitMap(unsigned int N)
- public static clang::interp::InitMap * allocate(unsigned int N)
- private clang::interp::InitMap::T * data()
- public bool initialize(unsigned int I)
- public bool isInitialized(unsigned int I)
Methods
¶InitMap(unsigned int N)
InitMap(unsigned int N)
Description
Initializes the map with no fields set.
Declared at: clang/lib/AST/Interp/Descriptor.h:197
Parameters
- unsigned int N
¶static clang::interp::InitMap* allocate(
unsigned int N)
static clang::interp::InitMap* allocate(
unsigned int N)
Description
Allocates a map holding N elements.
Declared at: clang/lib/AST/Interp/Descriptor.h:210
Parameters
- unsigned int N
¶clang::interp::InitMap::T* data()
clang::interp::InitMap::T* data()
Description
Returns a pointer to storage.
Declared at: clang/lib/AST/Interp/Descriptor.h:200
¶bool initialize(unsigned int I)
bool initialize(unsigned int I)
Description
Initializes an element. Returns true when object if fully initialized.
Declared at: clang/lib/AST/Interp/Descriptor.h:204
Parameters
- unsigned int I
¶bool isInitialized(unsigned int I)
bool isInitialized(unsigned int I)
Description
Checks if an element was initialized.
Declared at: clang/lib/AST/Interp/Descriptor.h:207
Parameters
- unsigned int I