LLDB mainline
Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
lldb::SBType Class Reference

#include <SBType.h>

Collaboration diagram for lldb::SBType:
Collaboration graph
[legend]

Public Member Functions

 SBType ()
 
 SBType (const lldb::SBType &rhs)
 
 SBType (const lldb::TypeImplSP &)
 
 ~SBType ()
 
 operator bool () const
 
bool IsValid () const
 
uint64_t GetByteSize ()
 
bool IsPointerType ()
 
bool IsReferenceType ()
 
bool IsFunctionType ()
 
bool IsPolymorphicClass ()
 
bool IsArrayType ()
 
bool IsVectorType ()
 
bool IsTypedefType ()
 
bool IsAnonymousType ()
 
bool IsScopedEnumerationType ()
 
bool IsAggregateType ()
 
lldb::SBType GetPointerType ()
 
lldb::SBType GetPointeeType ()
 
lldb::SBType GetReferenceType ()
 
lldb::SBType GetTypedefedType ()
 
lldb::SBType GetDereferencedType ()
 
lldb::SBType GetUnqualifiedType ()
 
lldb::SBType GetArrayElementType ()
 
lldb::SBType GetArrayType (uint64_t size)
 
lldb::SBType GetVectorElementType ()
 
lldb::SBType GetCanonicalType ()
 
lldb::SBType GetEnumerationIntegerType ()
 
lldb::BasicType GetBasicType ()
 
lldb::SBType GetBasicType (lldb::BasicType type)
 
uint32_t GetNumberOfFields ()
 
uint32_t GetNumberOfDirectBaseClasses ()
 
uint32_t GetNumberOfVirtualBaseClasses ()
 
lldb::SBTypeMember GetFieldAtIndex (uint32_t idx)
 
lldb::SBTypeMember GetDirectBaseClassAtIndex (uint32_t idx)
 
lldb::SBTypeMember GetVirtualBaseClassAtIndex (uint32_t idx)
 
lldb::SBTypeEnumMemberList GetEnumMembers ()
 
uint32_t GetNumberOfTemplateArguments ()
 
lldb::SBType GetTemplateArgumentType (uint32_t idx)
 
lldb::TemplateArgumentKind GetTemplateArgumentKind (uint32_t idx)
 Return the TemplateArgumentKind of the template argument at index idx.
 
lldb::SBType GetFunctionReturnType ()
 
lldb::SBTypeList GetFunctionArgumentTypes ()
 
uint32_t GetNumberOfMemberFunctions ()
 
lldb::SBTypeMemberFunction GetMemberFunctionAtIndex (uint32_t idx)
 
lldb::SBModule GetModule ()
 
const char * GetName ()
 
const char * GetDisplayTypeName ()
 
lldb::TypeClass GetTypeClass ()
 
bool IsTypeComplete ()
 
uint32_t GetTypeFlags ()
 
bool GetDescription (lldb::SBStream &description, lldb::DescriptionLevel description_level)
 
lldb::SBTypeoperator= (const lldb::SBType &rhs)
 
bool operator== (lldb::SBType &rhs)
 
bool operator!= (lldb::SBType &rhs)
 

Protected Member Functions

lldb_private::TypeImplref ()
 
const lldb_private::TypeImplref () const
 
lldb::TypeImplSP GetSP ()
 
void SetSP (const lldb::TypeImplSP &type_impl_sp)
 
 SBType (const lldb_private::CompilerType &)
 
 SBType (const lldb::TypeSP &)
 

Protected Attributes

lldb::TypeImplSP m_opaque_sp
 

Friends

class SBFunction
 
class SBModule
 
class SBTarget
 
class SBTypeEnumMember
 
class SBTypeEnumMemberList
 
class SBTypeNameSpecifier
 
class SBTypeMember
 
class SBTypeMemberFunction
 
class SBTypeList
 
class SBValue
 

Detailed Description

Definition at line 104 of file SBType.h.

Constructor & Destructor Documentation

◆ SBType() [1/5]

SBType::SBType ( )

◆ SBType() [2/5]

SBType::SBType ( const lldb::SBType rhs)

Definition at line 40 of file SBType.cpp.

References LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ SBType() [3/5]

SBType::SBType ( const lldb::TypeImplSP &  type_impl_sp)

Definition at line 37 of file SBType.cpp.

◆ ~SBType()

SBType::~SBType ( )
default

◆ SBType() [4/5]

SBType::SBType ( const lldb_private::CompilerType type)
protected

Definition at line 32 of file SBType.cpp.

◆ SBType() [5/5]

SBType::SBType ( const lldb::TypeSP &  type_sp)
protected

Definition at line 34 of file SBType.cpp.

Member Function Documentation

◆ GetArrayElementType()

SBType SBType::GetArrayElementType ( )

Definition at line 204 of file SBType.cpp.

References IsValid(), LLDB_INSTRUMENT_VA, m_opaque_sp, and SBType().

◆ GetArrayType()

SBType SBType::GetArrayType ( uint64_t  size)

Definition at line 213 of file SBType.cpp.

References IsValid(), LLDB_INSTRUMENT_VA, m_opaque_sp, and SBType().

◆ GetBasicType() [1/2]

lldb::BasicType SBType::GetBasicType ( )

Definition at line 354 of file SBType.cpp.

References lldb::eBasicTypeInvalid, IsValid(), LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ GetBasicType() [2/2]

SBType SBType::GetBasicType ( lldb::BasicType  type)

Definition at line 362 of file SBType.cpp.

References IsValid(), LLDB_INSTRUMENT_VA, m_opaque_sp, and SBType().

◆ GetByteSize()

uint64_t SBType::GetByteSize ( )

Definition at line 120 of file SBType.cpp.

References IsValid(), LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ GetCanonicalType()

lldb::SBType SBType::GetCanonicalType ( )

Definition at line 336 of file SBType.cpp.

References IsValid(), LLDB_INSTRUMENT_VA, m_opaque_sp, and SBType().

◆ GetDereferencedType()

SBType SBType::GetDereferencedType ( )

Definition at line 196 of file SBType.cpp.

References IsValid(), LLDB_INSTRUMENT_VA, m_opaque_sp, and SBType().

◆ GetDescription()

bool SBType::GetDescription ( lldb::SBStream description,
lldb::DescriptionLevel  description_level 
)

◆ GetDirectBaseClassAtIndex()

SBTypeMember SBType::GetDirectBaseClassAtIndex ( uint32_t  idx)

◆ GetDisplayTypeName()

const char * SBType::GetDisplayTypeName ( )

Definition at line 529 of file SBType.cpp.

References IsValid(), LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ GetEnumerationIntegerType()

SBType SBType::GetEnumerationIntegerType ( )

Definition at line 344 of file SBType.cpp.

References IsValid(), LLDB_INSTRUMENT_VA, m_opaque_sp, and SBType().

◆ GetEnumMembers()

SBTypeEnumMemberList SBType::GetEnumMembers ( )

◆ GetFieldAtIndex()

SBTypeMember SBType::GetFieldAtIndex ( uint32_t  idx)

◆ GetFunctionArgumentTypes()

lldb::SBTypeList SBType::GetFunctionArgumentTypes ( )

◆ GetFunctionReturnType()

lldb::SBType SBType::GetFunctionReturnType ( )

◆ GetMemberFunctionAtIndex()

lldb::SBTypeMemberFunction SBType::GetMemberFunctionAtIndex ( uint32_t  idx)

◆ GetModule()

lldb::SBModule SBType::GetModule ( )

Definition at line 510 of file SBType.cpp.

References IsValid(), LLDB_INSTRUMENT_VA, m_opaque_sp, and lldb::SBModule::SetSP().

◆ GetName()

const char * SBType::GetName ( )

Definition at line 521 of file SBType.cpp.

References IsValid(), LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ GetNumberOfDirectBaseClasses()

uint32_t SBType::GetNumberOfDirectBaseClasses ( )

Definition at line 371 of file SBType.cpp.

References IsValid(), LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ GetNumberOfFields()

uint32_t SBType::GetNumberOfFields ( )

Definition at line 387 of file SBType.cpp.

References IsValid(), LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ GetNumberOfMemberFunctions()

uint32_t SBType::GetNumberOfMemberFunctions ( )

Definition at line 309 of file SBType.cpp.

References IsValid(), LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ GetNumberOfTemplateArguments()

uint32_t SBType::GetNumberOfTemplateArguments ( )

Definition at line 545 of file SBType.cpp.

References IsValid(), LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ GetNumberOfVirtualBaseClasses()

uint32_t SBType::GetNumberOfVirtualBaseClasses ( )

Definition at line 379 of file SBType.cpp.

References IsValid(), LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ GetPointeeType()

SBType SBType::GetPointeeType ( )

Definition at line 172 of file SBType.cpp.

References IsValid(), LLDB_INSTRUMENT_VA, m_opaque_sp, and SBType().

◆ GetPointerType()

SBType SBType::GetPointerType ( )

Definition at line 163 of file SBType.cpp.

References IsValid(), LLDB_INSTRUMENT_VA, m_opaque_sp, and SBType().

◆ GetReferenceType()

SBType SBType::GetReferenceType ( )

Definition at line 180 of file SBType.cpp.

References IsValid(), LLDB_INSTRUMENT_VA, m_opaque_sp, and SBType().

◆ GetSP()

lldb::TypeImplSP SBType::GetSP ( )
protected

◆ GetTemplateArgumentKind()

lldb::TemplateArgumentKind SBType::GetTemplateArgumentKind ( uint32_t  idx)

Return the TemplateArgumentKind of the template argument at index idx.

Variadic argument packs are automatically expanded.

Definition at line 580 of file SBType.cpp.

References lldb::eTemplateArgumentKindNull, IsValid(), LLDB_INSTRUMENT_VA, and m_opaque_sp.

Referenced by GetTemplateArgumentType().

◆ GetTemplateArgumentType()

lldb::SBType SBType::GetTemplateArgumentType ( uint32_t  idx)

◆ GetTypeClass()

lldb::TypeClass SBType::GetTypeClass ( )

Definition at line 537 of file SBType.cpp.

References IsValid(), LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ GetTypedefedType()

SBType SBType::GetTypedefedType ( )

Definition at line 188 of file SBType.cpp.

References IsValid(), LLDB_INSTRUMENT_VA, m_opaque_sp, and SBType().

◆ GetTypeFlags()

uint32_t SBType::GetTypeFlags ( )

Definition at line 502 of file SBType.cpp.

References IsValid(), LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ GetUnqualifiedType()

lldb::SBType SBType::GetUnqualifiedType ( )

Definition at line 328 of file SBType.cpp.

References IsValid(), LLDB_INSTRUMENT_VA, m_opaque_sp, and SBType().

◆ GetVectorElementType()

SBType SBType::GetVectorElementType ( )

Definition at line 222 of file SBType.cpp.

References IsValid(), LLDB_INSTRUMENT_VA, m_opaque_sp, and SetSP().

◆ GetVirtualBaseClassAtIndex()

SBTypeMember SBType::GetVirtualBaseClassAtIndex ( uint32_t  idx)

◆ IsAggregateType()

bool SBType::IsAggregateType ( )

Definition at line 275 of file SBType.cpp.

References IsValid(), LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ IsAnonymousType()

bool SBType::IsAnonymousType ( )

Definition at line 259 of file SBType.cpp.

References IsValid(), LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ IsArrayType()

bool SBType::IsArrayType ( )

Definition at line 138 of file SBType.cpp.

References IsValid(), LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ IsFunctionType()

bool SBType::IsFunctionType ( )

Definition at line 235 of file SBType.cpp.

References IsValid(), LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ IsPointerType()

bool SBType::IsPointerType ( )

Definition at line 130 of file SBType.cpp.

References IsValid(), LLDB_INSTRUMENT_VA, and m_opaque_sp.

Referenced by lldb::SBValue::TypeIsPointerType().

◆ IsPolymorphicClass()

bool SBType::IsPolymorphicClass ( )

Definition at line 243 of file SBType.cpp.

References IsValid(), LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ IsReferenceType()

bool SBType::IsReferenceType ( )

Definition at line 155 of file SBType.cpp.

References IsValid(), LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ IsScopedEnumerationType()

bool SBType::IsScopedEnumerationType ( )

Definition at line 267 of file SBType.cpp.

References IsValid(), LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ IsTypeComplete()

bool SBType::IsTypeComplete ( )

◆ IsTypedefType()

bool SBType::IsTypedefType ( )

Definition at line 251 of file SBType.cpp.

References IsValid(), LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ IsValid()

bool SBType::IsValid ( ) const

◆ IsVectorType()

bool SBType::IsVectorType ( )

Definition at line 147 of file SBType.cpp.

References IsValid(), LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ operator bool()

SBType::operator bool ( ) const
explicit

Definition at line 111 of file SBType.cpp.

References LLDB_INSTRUMENT_VA.

◆ operator!=()

bool SBType::operator!= ( lldb::SBType rhs)

Definition at line 64 of file SBType.cpp.

References IsValid(), LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ operator=()

SBType & SBType::operator= ( const lldb::SBType rhs)

Definition at line 82 of file SBType.cpp.

References LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ operator==()

bool SBType::operator== ( lldb::SBType rhs)

Definition at line 52 of file SBType.cpp.

References IsValid(), LLDB_INSTRUMENT_VA, and m_opaque_sp.

◆ ref() [1/2]

TypeImpl & SBType::ref ( )
protected

Definition at line 93 of file SBType.cpp.

References m_opaque_sp.

Referenced by lldb::SBFunction::GetType().

◆ ref() [2/2]

const TypeImpl & SBType::ref ( ) const
protected

Definition at line 99 of file SBType.cpp.

References m_opaque_sp.

◆ SetSP()

void SBType::SetSP ( const lldb::TypeImplSP &  type_impl_sp)
protected

Friends And Related Function Documentation

◆ SBFunction

friend class SBFunction
friend

Definition at line 230 of file SBType.h.

◆ SBModule

friend class SBModule
friend

Definition at line 231 of file SBType.h.

◆ SBTarget

friend class SBTarget
friend

Definition at line 232 of file SBType.h.

◆ SBTypeEnumMember

friend class SBTypeEnumMember
friend

Definition at line 233 of file SBType.h.

◆ SBTypeEnumMemberList

friend class SBTypeEnumMemberList
friend

Definition at line 234 of file SBType.h.

◆ SBTypeList

friend class SBTypeList
friend

Definition at line 238 of file SBType.h.

◆ SBTypeMember

friend class SBTypeMember
friend

Definition at line 236 of file SBType.h.

◆ SBTypeMemberFunction

friend class SBTypeMemberFunction
friend

Definition at line 237 of file SBType.h.

◆ SBTypeNameSpecifier

friend class SBTypeNameSpecifier
friend

Definition at line 235 of file SBType.h.

◆ SBValue

friend class SBValue
friend

Definition at line 239 of file SBType.h.

Member Data Documentation

◆ m_opaque_sp

lldb::TypeImplSP lldb::SBType::m_opaque_sp
protected

The documentation for this class was generated from the following files: