LLDB  mainline
Public Types | Public Member Functions | Protected Attributes | List of all members
DWARFBaseDIE Class Reference

#include <DWARFBaseDIE.h>

Inheritance diagram for DWARFBaseDIE:
Inheritance graph
[legend]
Collaboration diagram for DWARFBaseDIE:
Collaboration graph
[legend]

Public Types

enum  Recurse : bool { Recurse::no, Recurse::yes }
 

Public Member Functions

 DWARFBaseDIE ()
 
 DWARFBaseDIE (DWARFUnit *cu, DWARFDebugInfoEntry *die)
 
 DWARFBaseDIE (const DWARFUnit *cu, DWARFDebugInfoEntry *die)
 
 DWARFBaseDIE (DWARFUnit *cu, const DWARFDebugInfoEntry *die)
 
 DWARFBaseDIE (const DWARFUnit *cu, const DWARFDebugInfoEntry *die)
 
 operator bool () const
 
bool IsValid () const
 
bool HasChildren () const
 
bool Supports_DW_AT_APPLE_objc_complete_type () const
 
SymbolFileDWARFGetDWARF () const
 
DWARFUnitGetCU () const
 
DWARFDebugInfoEntryGetDIE () const
 
llvm::Optional< DIERefGetDIERef () const
 
void Set (DWARFUnit *cu, DWARFDebugInfoEntry *die)
 
void Clear ()
 
const lldb_private::DWARFDataExtractorGetData () const
 
dw_tag_t Tag () const
 
const char * GetTagAsCString () const
 
dw_offset_t GetOffset () const
 
lldb::user_id_t GetID () const
 
const char * GetName () const
 
lldb::ModuleSP GetModule () const
 
const char * GetAttributeValueAsString (const dw_attr_t attr, const char *fail_value) const
 
uint64_t GetAttributeValueAsUnsigned (const dw_attr_t attr, uint64_t fail_value) const
 
uint64_t GetAttributeValueAsAddress (const dw_attr_t attr, uint64_t fail_value) const
 
size_t GetAttributes (DWARFAttributes &attributes, Recurse recurse=Recurse::yes) const
 

Protected Attributes

DWARFUnitm_cu
 
DWARFDebugInfoEntrym_die
 

Detailed Description

Definition at line 25 of file DWARFBaseDIE.h.

Member Enumeration Documentation

◆ Recurse

enum DWARFBaseDIE::Recurse : bool
strong
Enumerator
no 
yes 

Definition at line 113 of file DWARFBaseDIE.h.

Constructor & Destructor Documentation

◆ DWARFBaseDIE() [1/5]

DWARFBaseDIE::DWARFBaseDIE ( )
inline

Definition at line 27 of file DWARFBaseDIE.h.

◆ DWARFBaseDIE() [2/5]

DWARFBaseDIE::DWARFBaseDIE ( DWARFUnit cu,
DWARFDebugInfoEntry die 
)
inline

Definition at line 29 of file DWARFBaseDIE.h.

◆ DWARFBaseDIE() [3/5]

DWARFBaseDIE::DWARFBaseDIE ( const DWARFUnit cu,
DWARFDebugInfoEntry die 
)
inline

Definition at line 32 of file DWARFBaseDIE.h.

◆ DWARFBaseDIE() [4/5]

DWARFBaseDIE::DWARFBaseDIE ( DWARFUnit cu,
const DWARFDebugInfoEntry die 
)
inline

Definition at line 35 of file DWARFBaseDIE.h.

◆ DWARFBaseDIE() [5/5]

DWARFBaseDIE::DWARFBaseDIE ( const DWARFUnit cu,
const DWARFDebugInfoEntry die 
)
inline

Definition at line 38 of file DWARFBaseDIE.h.

Member Function Documentation

◆ Clear()

void DWARFBaseDIE::Clear ( )
inline

◆ GetAttributes()

size_t DWARFBaseDIE::GetAttributes ( DWARFAttributes attributes,
Recurse  recurse = Recurse::yes 
) const

◆ GetAttributeValueAsAddress()

uint64_t DWARFBaseDIE::GetAttributeValueAsAddress ( const dw_attr_t  attr,
uint64_t  fail_value 
) const

Definition at line 56 of file DWARFBaseDIE.cpp.

Referenced by Clear(), and SymbolFileDWARF::ParseVariablesForContext().

◆ GetAttributeValueAsString()

const char * DWARFBaseDIE::GetAttributeValueAsString ( const dw_attr_t  attr,
const char *  fail_value 
) const

◆ GetAttributeValueAsUnsigned()

uint64_t DWARFBaseDIE::GetAttributeValueAsUnsigned ( const dw_attr_t  attr,
uint64_t  fail_value 
) const

◆ GetCU()

DWARFUnit* DWARFBaseDIE::GetCU ( ) const
inline

◆ GetData()

const DWARFDataExtractor & DWARFBaseDIE::GetData ( ) const

◆ GetDIE()

DWARFDebugInfoEntry* DWARFBaseDIE::GetDIE ( ) const
inline

Definition at line 56 of file DWARFBaseDIE.h.

References GetDIERef(), and m_die.

Referenced by operator==(), and SymbolFileDWARF::UpdateExternalModuleListIfNeeded().

◆ GetDIERef()

llvm::Optional< DIERef > DWARFBaseDIE::GetDIERef ( ) const

◆ GetDWARF()

SymbolFileDWARF * DWARFBaseDIE::GetDWARF ( ) const

◆ GetID()

lldb::user_id_t DWARFBaseDIE::GetID ( ) const

◆ GetModule()

lldb::ModuleSP DWARFBaseDIE::GetModule ( ) const

◆ GetName()

const char * DWARFBaseDIE::GetName ( ) const

Definition at line 70 of file DWARFBaseDIE.cpp.

Referenced by Clear(), and SymbolFileDWARF::ParseCompileUnit().

◆ GetOffset()

dw_offset_t DWARFBaseDIE::GetOffset ( ) const

◆ GetTagAsCString()

const char * DWARFBaseDIE::GetTagAsCString ( ) const

◆ HasChildren()

bool DWARFBaseDIE::HasChildren ( ) const

◆ IsValid()

bool DWARFBaseDIE::IsValid ( ) const
inline

◆ operator bool()

DWARFBaseDIE::operator bool ( ) const
inlineexplicit

Definition at line 43 of file DWARFBaseDIE.h.

References IsValid().

◆ Set()

void DWARFBaseDIE::Set ( DWARFUnit cu,
DWARFDebugInfoEntry die 
)
inline

Definition at line 60 of file DWARFBaseDIE.h.

References Clear(), m_cu, and m_die.

◆ Supports_DW_AT_APPLE_objc_complete_type()

bool DWARFBaseDIE::Supports_DW_AT_APPLE_objc_complete_type ( ) const

◆ Tag()

dw_tag_t DWARFBaseDIE::Tag ( ) const

Definition at line 29 of file DWARFBaseDIE.cpp.

Referenced by Clear(), DWARFASTParserClang::CompleteRecordType(), DWARFASTParserClang::CompleteTypeFromDWARF(), DWARFASTParserClang::CopyUniqueClassMethodTypes(), SymbolFileDWARF::DIEDeclContextsMatch(), UniqueDWARFASTTypeList::Find(), SymbolFileDWARF::FindBlockContainingSpecification(), SymbolFileDWARF::FindCompleteObjCDefinitionTypeForDIE(), SymbolFileDWARF::FindDefinitionTypeForDWARFDeclContext(), SymbolFileDWARF::FindGlobalVariables(), DWARFASTParserClang::GetClangDeclContextForDIE(), DWARFASTParserClang::GetClangDeclForDIE(), GetContainingClangModuleDIE(), SymbolFileDWARF::GetDeclContextDIEContainingDIE(), DWARFASTParserClang::GetDeclContextForBlock(), DWARFDebugInfoEntry::GetDWARFDeclContextStatic(), DWARFDebugInfoEntry::GetParentDeclContextDIE(), SymbolFileDWARF::GetParentSymbolContextDIE(), DWARFDebugInfoEntry::GetQualifiedName(), SymbolFileDWARF::GetTypes(), IsSubroutine(), SymbolFileDWARF::ParseBlocksRecursive(), DWARFASTParserClang::ParseEnum(), DWARFASTParserClang::ParseFunctionFromDWARF(), SymbolFileDWARF::ParseImportedModules(), DWARFASTParserClang::ParseSingleMember(), DWARFASTParserClang::ParseStructureLikeDIE(), DWARFASTParserClang::ParseSubroutine(), DWARFASTParserClang::ParseTemplateDIE(), SymbolFileDWARF::ParseType(), DWARFASTParserClang::ParseTypeFromDWARF(), DWARFASTParserClang::ParseTypeModifier(), SymbolFileDWARF::ParseTypes(), SymbolFileDWARF::ParseVariableDIE(), SymbolFileDWARF::ParseVariables(), DWARFASTParserClang::ResolveBlockDIE(), SymbolFileDWARF::ResolveFunction(), DWARFASTParserClang::ResolveNamespaceDIE(), SymbolFileDWARF::ResolveTypeUID(), and DWARFASTParserClang::UpdateSymbolContextScopeForType().

Member Data Documentation

◆ m_cu

DWARFUnit* DWARFBaseDIE::m_cu
protected

Definition at line 118 of file DWARFBaseDIE.h.

Referenced by Clear(), GetCU(), IsValid(), and Set().

◆ m_die

DWARFDebugInfoEntry* DWARFBaseDIE::m_die
protected

Definition at line 119 of file DWARFBaseDIE.h.

Referenced by Clear(), UniqueDWARFASTTypeList::Find(), GetDIE(), IsValid(), and Set().


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