LLDB mainline
Public Member Functions | Private Member Functions | Private Attributes | List of all members
lldb_private::TypeImpl Class Reference

#include <Type.h>

Public Member Functions

 TypeImpl ()=default
 
 ~TypeImpl ()=default
 
 TypeImpl (const lldb::TypeSP &type_sp)
 
 TypeImpl (const CompilerType &compiler_type)
 
 TypeImpl (const lldb::TypeSP &type_sp, const CompilerType &dynamic)
 
 TypeImpl (const CompilerType &compiler_type, const CompilerType &dynamic)
 
void SetType (const lldb::TypeSP &type_sp)
 
void SetType (const CompilerType &compiler_type)
 
void SetType (const lldb::TypeSP &type_sp, const CompilerType &dynamic)
 
void SetType (const CompilerType &compiler_type, const CompilerType &dynamic)
 
bool operator== (const TypeImpl &rhs) const
 
bool operator!= (const TypeImpl &rhs) const
 
bool IsValid () const
 
 operator bool () const
 
void Clear ()
 
lldb::ModuleSP GetModule () const
 
ConstString GetName () const
 
ConstString GetDisplayTypeName () const
 
TypeImpl GetPointerType () const
 
TypeImpl GetPointeeType () const
 
TypeImpl GetReferenceType () const
 
TypeImpl GetTypedefedType () const
 
TypeImpl GetDereferencedType () const
 
TypeImpl GetUnqualifiedType () const
 
TypeImpl GetCanonicalType () const
 
CompilerType GetCompilerType (bool prefer_dynamic)
 
CompilerType::TypeSystemSPWrapper GetTypeSystem (bool prefer_dynamic)
 
bool GetDescription (lldb_private::Stream &strm, lldb::DescriptionLevel description_level)
 
CompilerType FindDirectNestedType (llvm::StringRef name)
 

Private Member Functions

bool CheckModule (lldb::ModuleSP &module_sp) const
 
bool CheckExeModule (lldb::ModuleSP &module_sp) const
 
bool CheckModuleCommon (const lldb::ModuleWP &input_module_wp, lldb::ModuleSP &module_sp) const
 

Private Attributes

lldb::ModuleWP m_module_wp
 
lldb::ModuleWP m_exe_module_wp
 
CompilerType m_static_type
 
CompilerType m_dynamic_type
 

Detailed Description

Definition at line 590 of file Type.h.

Constructor & Destructor Documentation

◆ TypeImpl() [1/5]

lldb_private::TypeImpl::TypeImpl ( )
default

◆ ~TypeImpl()

lldb_private::TypeImpl::~TypeImpl ( )
default

◆ TypeImpl() [2/5]

TypeImpl::TypeImpl ( const lldb::TypeSP type_sp)

Definition at line 907 of file Type.cpp.

References SetType().

◆ TypeImpl() [3/5]

TypeImpl::TypeImpl ( const CompilerType compiler_type)

Definition at line 912 of file Type.cpp.

References SetType().

◆ TypeImpl() [4/5]

TypeImpl::TypeImpl ( const lldb::TypeSP type_sp,
const CompilerType dynamic 
)

Definition at line 917 of file Type.cpp.

References SetType().

◆ TypeImpl() [5/5]

TypeImpl::TypeImpl ( const CompilerType compiler_type,
const CompilerType dynamic 
)

Definition at line 922 of file Type.cpp.

References SetType().

Member Function Documentation

◆ CheckExeModule()

bool TypeImpl::CheckExeModule ( lldb::ModuleSP module_sp) const
private

Definition at line 961 of file Type.cpp.

References CheckModuleCommon(), and m_exe_module_wp.

Referenced by GetModule().

◆ CheckModule()

bool TypeImpl::CheckModule ( lldb::ModuleSP module_sp) const
private

◆ CheckModuleCommon()

bool TypeImpl::CheckModuleCommon ( const lldb::ModuleWP input_module_wp,
lldb::ModuleSP module_sp 
) const
private

Definition at line 965 of file Type.cpp.

Referenced by CheckExeModule(), and CheckModule().

◆ Clear()

void TypeImpl::Clear ( )

◆ FindDirectNestedType()

CompilerType TypeImpl::FindDirectNestedType ( llvm::StringRef  name)

◆ GetCanonicalType()

TypeImpl TypeImpl::GetCanonicalType ( ) const

◆ GetCompilerType()

CompilerType TypeImpl::GetCompilerType ( bool  prefer_dynamic)

◆ GetDereferencedType()

TypeImpl TypeImpl::GetDereferencedType ( ) const

◆ GetDescription()

bool TypeImpl::GetDescription ( lldb_private::Stream strm,
lldb::DescriptionLevel  description_level 
)

◆ GetDisplayTypeName()

ConstString TypeImpl::GetDisplayTypeName ( ) const

◆ GetModule()

ModuleSP TypeImpl::GetModule ( ) const

Definition at line 1019 of file Type.cpp.

References CheckExeModule().

◆ GetName()

ConstString TypeImpl::GetName ( ) const

◆ GetPointeeType()

TypeImpl TypeImpl::GetPointeeType ( ) const

◆ GetPointerType()

TypeImpl TypeImpl::GetPointerType ( ) const

◆ GetReferenceType()

TypeImpl TypeImpl::GetReferenceType ( ) const

◆ GetTypedefedType()

TypeImpl TypeImpl::GetTypedefedType ( ) const

◆ GetTypeSystem()

CompilerType::TypeSystemSPWrapper TypeImpl::GetTypeSystem ( bool  prefer_dynamic)

◆ GetUnqualifiedType()

TypeImpl TypeImpl::GetUnqualifiedType ( ) const

◆ IsValid()

bool TypeImpl::IsValid ( ) const

◆ operator bool()

TypeImpl::operator bool ( ) const
explicit

Definition at line 1011 of file Type.cpp.

◆ operator!=()

bool TypeImpl::operator!= ( const TypeImpl rhs) const

Definition at line 999 of file Type.cpp.

◆ operator==()

bool TypeImpl::operator== ( const TypeImpl rhs) const

Definition at line 994 of file Type.cpp.

References m_dynamic_type, and m_static_type.

◆ SetType() [1/4]

void TypeImpl::SetType ( const CompilerType compiler_type)

Definition at line 939 of file Type.cpp.

References m_module_wp, and m_static_type.

◆ SetType() [2/4]

void TypeImpl::SetType ( const CompilerType compiler_type,
const CompilerType dynamic 
)

Definition at line 950 of file Type.cpp.

References m_dynamic_type, m_module_wp, and m_static_type.

◆ SetType() [3/4]

void TypeImpl::SetType ( const lldb::TypeSP type_sp)

◆ SetType() [4/4]

void TypeImpl::SetType ( const lldb::TypeSP type_sp,
const CompilerType dynamic 
)

Definition at line 944 of file Type.cpp.

References m_dynamic_type, and SetType().

Member Data Documentation

◆ m_dynamic_type

CompilerType lldb_private::TypeImpl::m_dynamic_type
private

◆ m_exe_module_wp

lldb::ModuleWP lldb_private::TypeImpl::m_exe_module_wp
private

Definition at line 658 of file Type.h.

Referenced by CheckExeModule(), and SetType().

◆ m_module_wp

lldb::ModuleWP lldb_private::TypeImpl::m_module_wp
private

Definition at line 657 of file Type.h.

Referenced by CheckModule(), Clear(), and SetType().

◆ m_static_type

CompilerType lldb_private::TypeImpl::m_static_type
private

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