|
| TaggedASTType (const CompilerType &compiler_type) |
|
| TaggedASTType (lldb::opaque_compiler_type_t type, lldb::TypeSystemWP type_system) |
|
| TaggedASTType (const TaggedASTType< C > &tw) |
|
| TaggedASTType () |
|
virtual | ~TaggedASTType ()=default |
|
TaggedASTType< C > & | operator= (const TaggedASTType< C > &tw) |
|
| CompilerType (lldb::TypeSystemWP type_system, lldb::opaque_compiler_type_t type) |
| Creates a CompilerType with the given TypeSystem and opaque compiler type.
|
|
| CompilerType (TypeSystemSPWrapper type_system, lldb::opaque_compiler_type_t type) |
|
| CompilerType (const CompilerType &rhs) |
|
| CompilerType ()=default |
|
bool | IsForcefullyCompleted () const |
|
unsigned | GetPtrAuthKey () const |
|
unsigned | GetPtrAuthDiscriminator () const |
|
bool | GetPtrAuthAddressDiversity () const |
|
bool | GetValueAsScalar (const DataExtractor &data, lldb::offset_t data_offset, size_t data_byte_size, Scalar &value, ExecutionContextScope *exe_scope) const |
|
void | Clear () |
|
const CompilerType & | operator= (const CompilerType &rhs) |
| Operators.
|
|
bool | operator< (const CompilerType &rhs) const |
|
| operator bool () const |
| Tests.
|
|
bool | IsValid () const |
|
bool | IsArrayType (CompilerType *element_type=nullptr, uint64_t *size=nullptr, bool *is_incomplete=nullptr) const |
|
bool | IsVectorType (CompilerType *element_type=nullptr, uint64_t *size=nullptr) const |
|
bool | IsArrayOfScalarType () const |
|
bool | IsAggregateType () const |
|
bool | IsAnonymousType () const |
|
bool | IsScopedEnumerationType () const |
|
bool | IsBeingDefined () const |
|
bool | IsCharType () const |
|
bool | IsCompleteType () const |
|
bool | IsConst () const |
|
bool | IsDefined () const |
|
bool | IsFloatingPointType (uint32_t &count, bool &is_complex) const |
|
bool | IsFunctionType () const |
|
uint32_t | IsHomogeneousAggregate (CompilerType *base_type_ptr) const |
|
size_t | GetNumberOfFunctionArguments () const |
|
CompilerType | GetFunctionArgumentAtIndex (const size_t index) const |
|
bool | IsVariadicFunctionType () const |
|
bool | IsFunctionPointerType () const |
|
bool | IsMemberFunctionPointerType () const |
|
bool | IsBlockPointerType (CompilerType *function_pointer_type_ptr=nullptr) const |
|
bool | IsIntegerType (bool &is_signed) const |
|
bool | IsEnumerationType (bool &is_signed) const |
|
bool | IsIntegerOrEnumerationType (bool &is_signed) const |
|
bool | IsPolymorphicClass () const |
|
bool | IsPossibleDynamicType (CompilerType *target_type, bool check_cplusplus, bool check_objc) const |
|
bool | IsPointerToScalarType () const |
|
bool | IsRuntimeGeneratedType () const |
|
bool | IsPointerType (CompilerType *pointee_type=nullptr) const |
|
bool | IsPointerOrReferenceType (CompilerType *pointee_type=nullptr) const |
|
bool | IsReferenceType (CompilerType *pointee_type=nullptr, bool *is_rvalue=nullptr) const |
|
bool | ShouldTreatScalarValueAsAddress () const |
|
bool | IsScalarType () const |
|
bool | IsTemplateType () const |
|
bool | IsTypedefType () const |
|
bool | IsVoidType () const |
|
bool | IsInteger () const |
| This is used when you don't care about the signedness of the integer.
|
|
bool | IsFloat () const |
|
bool | IsEnumerationType () const |
| This is used when you don't care about the signedness of the enum.
|
|
bool | IsUnscopedEnumerationType () const |
|
bool | IsIntegerOrUnscopedEnumerationType () const |
|
bool | IsSigned () const |
|
bool | IsNullPtrType () const |
|
bool | IsBoolean () const |
|
bool | IsEnumerationIntegerTypeSigned () const |
|
bool | IsScalarOrUnscopedEnumerationType () const |
|
bool | IsPromotableIntegerType () const |
|
bool | IsPointerToVoid () const |
|
bool | IsRecordType () const |
|
bool | IsVirtualBase (CompilerType target_base, CompilerType *virtual_base, bool carry_virtual=false) const |
| Checks whether target_base is a virtual base of type (direct or indirect).
|
|
bool | IsContextuallyConvertibleToBool () const |
| This may only be defined in TypeSystemClang.
|
|
bool | IsBasicType () const |
|
std::string | TypeDescription () |
|
bool | CompareTypes (CompilerType rhs) const |
|
const char * | GetTypeTag () |
|
uint32_t | GetNumberOfNonEmptyBaseClasses () |
| Go through the base classes and count non-empty ones.
|
|
bool | GetCompleteType () const |
| Type Completion.
|
|
size_t | GetPointerByteSize () const |
| AST related queries.
|
|
TypeSystemSPWrapper | GetTypeSystem () const |
| Accessors.
|
|
ConstString | GetTypeName (bool BaseOnly=false) const |
|
ConstString | GetDisplayTypeName () const |
|
uint32_t | GetTypeInfo (CompilerType *pointee_or_element_compiler_type=nullptr) const |
|
lldb::LanguageType | GetMinimumLanguage () |
|
lldb::opaque_compiler_type_t | GetOpaqueQualType () const |
|
lldb::TypeClass | GetTypeClass () const |
|
void | SetCompilerType (lldb::TypeSystemWP type_system, lldb::opaque_compiler_type_t type) |
|
void | SetCompilerType (TypeSystemSPWrapper type_system, lldb::opaque_compiler_type_t type) |
|
unsigned | GetTypeQualifiers () const |
|
CompilerType | GetArrayElementType (ExecutionContextScope *exe_scope) const |
| Creating related types.
|
|
CompilerType | GetArrayType (uint64_t size) const |
|
CompilerType | GetCanonicalType () const |
|
CompilerType | GetFullyUnqualifiedType () const |
|
CompilerType | GetEnumerationIntegerType () const |
|
int | GetFunctionArgumentCount () const |
| Returns -1 if this isn't a function of if the function doesn't have a prototype Returns a value >= 0 if there is a prototype.
|
|
CompilerType | GetFunctionArgumentTypeAtIndex (size_t idx) const |
|
CompilerType | GetFunctionReturnType () const |
|
size_t | GetNumMemberFunctions () const |
|
TypeMemberFunctionImpl | GetMemberFunctionAtIndex (size_t idx) |
|
CompilerType | GetNonReferenceType () const |
| If this type is a reference to a type (L value or R value reference), return a new type with the reference removed, else return the current type itself.
|
|
CompilerType | GetPointeeType () const |
| If this type is a pointer type, return the type that the pointer points to, else return an invalid type.
|
|
CompilerType | GetPointerType () const |
| Return a new CompilerType that is a pointer to this type.
|
|
CompilerType | GetLValueReferenceType () const |
| Return a new CompilerType that is a L value reference to this type if this type is valid and the type system supports L value references, else return an invalid type.
|
|
CompilerType | GetRValueReferenceType () const |
| Return a new CompilerType that is a R value reference to this type if this type is valid and the type system supports R value references, else return an invalid type.
|
|
CompilerType | AddConstModifier () const |
| Return a new CompilerType adds a const modifier to this type if this type is valid and the type system supports const modifiers, else return an invalid type.
|
|
CompilerType | AddVolatileModifier () const |
| Return a new CompilerType adds a volatile modifier to this type if this type is valid and the type system supports volatile modifiers, else return an invalid type.
|
|
CompilerType | GetAtomicType () const |
| Return a new CompilerType that is the atomic type of this type.
|
|
CompilerType | AddRestrictModifier () const |
| Return a new CompilerType adds a restrict modifier to this type if this type is valid and the type system supports restrict modifiers, else return an invalid type.
|
|
CompilerType | CreateTypedef (const char *name, const CompilerDeclContext &decl_ctx, uint32_t payload) const |
| Create a typedef to this type using "name" as the name of the typedef this type is valid and the type system supports typedefs, else return an invalid type.
|
|
CompilerType | GetTypedefedType () const |
| If the current object represents a typedef type, get the underlying type.
|
|
CompilerType | GetBasicTypeFromAST (lldb::BasicType basic_type) const |
| Create related types using the current type's AST.
|
|
CompilerType | AddPtrAuthModifier (uint32_t payload) const |
| Return a new CompilerType adds a ptrauth modifier from the given 32-bit opaque payload to this type if this type is valid and the type system supports ptrauth modifiers, else return an invalid type.
|
|
std::optional< uint64_t > | GetByteSize (ExecutionContextScope *exe_scope) const |
| Return the size of the type in bytes.
|
|
std::optional< uint64_t > | GetBitSize (ExecutionContextScope *exe_scope) const |
| Return the size of the type in bits.
|
|
lldb::Encoding | GetEncoding (uint64_t &count) const |
|
lldb::Format | GetFormat () const |
|
std::optional< size_t > | GetTypeBitAlign (ExecutionContextScope *exe_scope) const |
|
llvm::Expected< uint32_t > | GetNumChildren (bool omit_empty_base_classes, const ExecutionContext *exe_ctx) const |
|
lldb::BasicType | GetBasicTypeEnumeration () const |
|
void | ForEachEnumerator (std::function< bool(const CompilerType &integer_type, ConstString name, const llvm::APSInt &value)> const &callback) const |
| If this type is an enumeration, iterate through all of its enumerators using a callback.
|
|
uint32_t | GetNumFields () const |
|
CompilerType | GetFieldAtIndex (size_t idx, std::string &name, uint64_t *bit_offset_ptr, uint32_t *bitfield_bit_size_ptr, bool *is_bitfield_ptr) const |
|
uint32_t | GetNumDirectBaseClasses () const |
|
uint32_t | GetNumVirtualBaseClasses () const |
|
CompilerType | GetDirectBaseClassAtIndex (size_t idx, uint32_t *bit_offset_ptr) const |
|
CompilerType | GetVirtualBaseClassAtIndex (size_t idx, uint32_t *bit_offset_ptr) const |
|
CompilerDecl | GetStaticFieldWithName (llvm::StringRef name) const |
|
uint32_t | GetIndexOfFieldWithName (const char *name, CompilerType *field_compiler_type=nullptr, uint64_t *bit_offset_ptr=nullptr, uint32_t *bitfield_bit_size_ptr=nullptr, bool *is_bitfield_ptr=nullptr) const |
|
llvm::Expected< CompilerType > | GetChildCompilerTypeAtIndex (ExecutionContext *exe_ctx, size_t idx, bool transparent_pointers, bool omit_empty_base_classes, bool ignore_array_bounds, std::string &child_name, uint32_t &child_byte_size, int32_t &child_byte_offset, uint32_t &child_bitfield_bit_size, uint32_t &child_bitfield_bit_offset, bool &child_is_base_class, bool &child_is_deref_of_parent, ValueObject *valobj, uint64_t &language_flags) const |
|
uint32_t | GetIndexOfChildWithName (llvm::StringRef name, bool omit_empty_base_classes) const |
| Lookup a child given a name.
|
|
size_t | GetIndexOfChildMemberWithName (llvm::StringRef name, bool omit_empty_base_classes, std::vector< uint32_t > &child_indexes) const |
| Lookup a child member given a name.
|
|
CompilerType | GetDirectNestedTypeWithName (llvm::StringRef name) const |
|
size_t | GetNumTemplateArguments (bool expand_pack=false) const |
| Return the number of template arguments the type has.
|
|
lldb::TemplateArgumentKind | GetTemplateArgumentKind (size_t idx, bool expand_pack=false) const |
|
CompilerType | GetTypeTemplateArgument (size_t idx, bool expand_pack=false) const |
|
std::optional< IntegralTemplateArgument > | GetIntegralTemplateArgument (size_t idx, bool expand_pack=false) const |
| Returns the value of the template argument and its type.
|
|
CompilerType | GetTypeForFormatters () const |
|
LazyBool | ShouldPrintAsOneLiner (ValueObject *valobj) const |
|
bool | IsMeaninglessWithoutDynamicResolution () const |
|
LLVM_DUMP_METHOD void | dump () const |
| Dumping types.
|
|
bool | DumpTypeValue (Stream *s, lldb::Format format, const DataExtractor &data, lldb::offset_t data_offset, size_t data_byte_size, uint32_t bitfield_bit_size, uint32_t bitfield_bit_offset, ExecutionContextScope *exe_scope) |
|
void | DumpTypeDescription (lldb::DescriptionLevel level=lldb::eDescriptionLevelFull) const |
| Dump to stdout.
|
|
void | DumpTypeDescription (Stream *s, lldb::DescriptionLevel level=lldb::eDescriptionLevelFull) const |
| Print a description of the type to a stream.
|
|
template<unsigned int C>
class lldb_private::TaggedASTType< C >
Definition at line 18 of file TaggedASTType.h.