Lines Matching full:descriptor

1 //===--- Descriptor.h - Types for the constexpr VM --------------*- C++ -*-===//
25 struct Descriptor;
36 const Descriptor *FieldDesc);
41 const Descriptor *FieldDesc);
49 const Descriptor *FieldDesc);
57 /// Descriptor used for global variables.
63 /// Inline descriptor embedded in structures and arrays.
95 const Descriptor *Desc;
97 InlineDescriptor(const Descriptor *D) in InlineDescriptor()
107 struct Descriptor final {
138 /// Descriptor of the array element.
139 const Descriptor *const ElemDesc = nullptr;
140 /// The primitive type this descriptor was created for,
152 /// Flag indicating if this is a dummy descriptor.
160 /// Allocates a descriptor for a primitive.
161 Descriptor(const DeclTy &D, PrimType Type, MetadataSize MD, bool IsConst,
164 /// Allocates a descriptor for an array of primitives.
165 Descriptor(const DeclTy &D, PrimType Type, MetadataSize MD, size_t NumElems,
168 /// Allocates a descriptor for an array of primitives of unknown size.
169 Descriptor(const DeclTy &D, PrimType Type, MetadataSize MDSize,
172 /// Allocates a descriptor for an array of composites.
173 Descriptor(const DeclTy &D, const Descriptor *Elem, MetadataSize MD,
176 /// Allocates a descriptor for an array of composites of unknown size.
177 Descriptor(const DeclTy &D, const Descriptor *Elem, MetadataSize MD,
180 /// Allocates a descriptor for a record.
181 Descriptor(const DeclTy &D, const Record *R, MetadataSize MD, bool IsConst,
184 /// Allocates a dummy descriptor.
185 Descriptor(const DeclTy &D);
187 /// Make this descriptor a dummy descriptor.
237 /// Checks if the descriptor is of an array of primitives.
239 /// Checks if the descriptor is of an array of composites.
241 /// Checks if the descriptor is of an array of zero size.
243 /// Checks if the descriptor is of an array of unknown size.
246 /// Checks if the descriptor is of a primitive.
249 /// Checks if the descriptor is of an array.
251 /// Checks if the descriptor is of a record.
253 /// Checks if this is a dummy descriptor.