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

#include <DWARFASTParserClang.h>

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

Classes

class  DelayedAddObjCClassProperty
 

Public Member Functions

 DWARFASTParserClang (lldb_private::ClangASTContext &ast)
 
 ~DWARFASTParserClang () override
 
lldb::TypeSP ParseTypeFromDWARF (const lldb_private::SymbolContext &sc, const DWARFDIE &die, lldb_private::Log *log, bool *type_is_new_ptr) override
 
lldb_private::FunctionParseFunctionFromDWARF (lldb_private::CompileUnit &comp_unit, const DWARFDIE &die) override
 
bool CompleteTypeFromDWARF (const DWARFDIE &die, lldb_private::Type *type, lldb_private::CompilerType &compiler_type) override
 
lldb_private::CompilerDecl GetDeclForUIDFromDWARF (const DWARFDIE &die) override
 
std::vector< DWARFDIEGetDIEForDeclContext (lldb_private::CompilerDeclContext decl_context) override
 
lldb_private::CompilerDeclContext GetDeclContextForUIDFromDWARF (const DWARFDIE &die) override
 
lldb_private::CompilerDeclContext GetDeclContextContainingUIDFromDWARF (const DWARFDIE &die) override
 
lldb_private::ClangASTImporterGetClangASTImporter ()
 
- Public Member Functions inherited from DWARFASTParser
virtual ~DWARFASTParser ()
 

Protected Types

typedef std::vector< DelayedAddObjCClassPropertyDelayedPropertyList
 
typedef llvm::SmallPtrSet< const DWARFDebugInfoEntry *, 4 > DIEPointerSet
 
typedef llvm::DenseMap< const DWARFDebugInfoEntry *, clang::DeclContext * > DIEToDeclContextMap
 
typedef std::multimap< const clang::DeclContext *, const DWARFDIEDeclContextToDIEMap
 
typedef llvm::DenseMap< const DWARFDebugInfoEntry *, clang::Decl * > DIEToDeclMap
 
typedef llvm::DenseMap< const clang::Decl *, DIEPointerSetDeclToDIEMap
 

Protected Member Functions

clang::DeclContext * GetDeclContextForBlock (const DWARFDIE &die)
 
clang::BlockDecl * ResolveBlockDIE (const DWARFDIE &die)
 
clang::NamespaceDecl * ResolveNamespaceDIE (const DWARFDIE &die)
 
bool ParseTemplateDIE (const DWARFDIE &die, lldb_private::ClangASTContext::TemplateParameterInfos &template_param_infos)
 
bool ParseTemplateParameterInfos (const DWARFDIE &parent_die, lldb_private::ClangASTContext::TemplateParameterInfos &template_param_infos)
 
bool ParseChildMembers (const lldb_private::SymbolContext &sc, const DWARFDIE &die, lldb_private::CompilerType &class_compiler_type, const lldb::LanguageType class_language, std::vector< std::unique_ptr< clang::CXXBaseSpecifier >> &base_classes, std::vector< int > &member_accessibilities, std::vector< DWARFDIE > &member_function_dies, DelayedPropertyList &delayed_properties, lldb::AccessType &default_accessibility, bool &is_a_class, lldb_private::ClangASTImporter::LayoutInfo &layout_info)
 
size_t ParseChildParameters (lldb_private::CompileUnit &comp_unit, clang::DeclContext *containing_decl_ctx, const DWARFDIE &parent_die, bool skip_artificial, bool &is_static, bool &is_variadic, bool &has_template_params, std::vector< lldb_private::CompilerType > &function_args, std::vector< clang::ParmVarDecl *> &function_param_decls, unsigned &type_quals)
 
size_t ParseChildEnumerators (const lldb_private::SymbolContext &sc, lldb_private::CompilerType &compiler_type, bool is_signed, uint32_t enumerator_byte_size, const DWARFDIE &parent_die)
 
lldb_private::TypeGetTypeForDIE (const DWARFDIE &die)
 
clang::Decl * GetClangDeclForDIE (const DWARFDIE &die)
 
clang::DeclContext * GetClangDeclContextForDIE (const DWARFDIE &die)
 
clang::DeclContext * GetClangDeclContextContainingDIE (const DWARFDIE &die, DWARFDIE *decl_ctx_die)
 
bool CopyUniqueClassMethodTypes (const DWARFDIE &src_class_die, const DWARFDIE &dst_class_die, lldb_private::Type *class_type, std::vector< DWARFDIE > &failures)
 
clang::DeclContext * GetCachedClangDeclContextForDIE (const DWARFDIE &die)
 
void LinkDeclContextToDIE (clang::DeclContext *decl_ctx, const DWARFDIE &die)
 
void LinkDeclToDIE (clang::Decl *decl, const DWARFDIE &die)
 
lldb::TypeSP ParseTypeFromDWO (const DWARFDIE &die, lldb_private::Log *log)
 
lldb::ModuleSP GetModuleForType (const DWARFDIE &die)
 

Protected Attributes

lldb_private::ClangASTContextm_ast
 
DIEToDeclMap m_die_to_decl
 
DeclToDIEMap m_decl_to_die
 
DIEToDeclContextMap m_die_to_decl_ctx
 
DeclContextToDIEMap m_decl_ctx_to_die
 
std::unique_ptr< lldb_private::ClangASTImporterm_clang_ast_importer_up
 

Additional Inherited Members

- Static Public Member Functions inherited from DWARFASTParser
static llvm::Optional< lldb_private::SymbolFile::ArrayInfoParseChildArrayInfo (const DWARFDIE &parent_die, const lldb_private::ExecutionContext *exe_ctx=nullptr)
 

Detailed Description

Definition at line 32 of file DWARFASTParserClang.h.

Member Typedef Documentation

◆ DeclContextToDIEMap

typedef std::multimap<const clang::DeclContext *, const DWARFDIE> DWARFASTParserClang::DeclContextToDIEMap
protected

Definition at line 141 of file DWARFASTParserClang.h.

◆ DeclToDIEMap

typedef llvm::DenseMap<const clang::Decl *, DIEPointerSet> DWARFASTParserClang::DeclToDIEMap
protected

Definition at line 144 of file DWARFASTParserClang.h.

◆ DelayedPropertyList

Definition at line 66 of file DWARFASTParserClang.h.

◆ DIEPointerSet

typedef llvm::SmallPtrSet<const DWARFDebugInfoEntry *, 4> DWARFASTParserClang::DIEPointerSet
protected

Definition at line 135 of file DWARFASTParserClang.h.

◆ DIEToDeclContextMap

typedef llvm::DenseMap<const DWARFDebugInfoEntry *, clang::DeclContext *> DWARFASTParserClang::DIEToDeclContextMap
protected

Definition at line 137 of file DWARFASTParserClang.h.

◆ DIEToDeclMap

typedef llvm::DenseMap<const DWARFDebugInfoEntry *, clang::Decl *> DWARFASTParserClang::DIEToDeclMap
protected

Definition at line 143 of file DWARFASTParserClang.h.

Constructor & Destructor Documentation

◆ DWARFASTParserClang()

DWARFASTParserClang::DWARFASTParserClang ( lldb_private::ClangASTContext ast)

Definition at line 59 of file DWARFASTParserClang.cpp.

◆ ~DWARFASTParserClang()

DWARFASTParserClang::~DWARFASTParserClang ( )
override

Definition at line 62 of file DWARFASTParserClang.cpp.

Member Function Documentation

◆ CompleteTypeFromDWARF()

bool DWARFASTParserClang::CompleteTypeFromDWARF ( const DWARFDIE die,
lldb_private::Type type,
lldb_private::CompilerType compiler_type 
)
overridevirtual

Implements DWARFASTParser.

Definition at line 2120 of file DWARFASTParserClang.cpp.

References lldb_private::ClangASTContext::AddMethodOverridesForCXXRecordType(), lldb_private::ClangASTImporter::LayoutInfo::alignment, lldb_private::ConstString::AsCString(), lldb_private::ClangASTImporter::LayoutInfo::base_offsets, lldb_private::ClangASTImporter::LayoutInfo::bit_size, SymbolFileDWARF::DebugInfo(), lldb::eAccessNone, lldb::eAccessPrivate, lldb::eAccessPublic, lldb::eLanguageTypeObjC, lldb::eLanguageTypeUnknown, eProducerClang, lldb_private::ClangASTImporter::LayoutInfo::field_offsets, lldb_private::ClangASTContext::GetAsCXXRecordDecl(), lldb_private::ClangASTContext::GetAsRecordDecl(), DWARFBaseDIE::GetAttributeValueAsUnsigned(), lldb_private::Type::GetByteSize(), GetClangASTImporter(), DWARFBaseDIE::GetCU(), DWARFDebugInfo::GetDIE(), DWARFBaseDIE::GetDWARF(), DWARFBaseDIE::GetID(), DWARFBaseDIE::GetLLDBCompileUnit(), lldb_private::ModuleChild::GetModule(), DWARFBaseDIE::GetName(), lldb_private::Type::GetName(), SymbolFileDWARF::GetObjCMethodDIEOffsets(), lldb_private::SymbolFile::GetObjectFile(), lldb_private::CompilerType::GetOpaqueQualType(), DWARFUnit::GetProducer(), DWARFBaseDIE::GetTagAsCString(), lldb_private::CompilerType::GetTypeName(), DWARFBaseDIE::HasChildren(), lldb_private::ClangASTImporter::InsertRecordDecl(), lldb_private::CompilerType::IsIntegerType(), m_ast, ParseChildEnumerators(), ParseChildMembers(), DWARFDIE::ResolveType(), SymbolFileDWARF::ResolveType(), lldb_private::ClangASTContext::SetDefaultAccessForRecordFields(), lldb_private::ClangASTContext::SetHasExternalStorage(), lldb_private::ClangASTContext::SetTagTypeKind(), DWARFBaseDIE::Tag(), lldb_private::ClangASTContext::TransferBaseClasses(), and lldb_private::ClangASTImporter::LayoutInfo::vbase_offsets.

◆ CopyUniqueClassMethodTypes()

bool DWARFASTParserClang::CopyUniqueClassMethodTypes ( const DWARFDIE src_class_die,
const DWARFDIE dst_class_die,
lldb_private::Type class_type,
std::vector< DWARFDIE > &  failures 
)
protected

◆ GetCachedClangDeclContextForDIE()

clang::DeclContext * DWARFASTParserClang::GetCachedClangDeclContextForDIE ( const DWARFDIE die)
protected

◆ GetClangASTImporter()

ClangASTImporter & DWARFASTParserClang::GetClangASTImporter ( )

◆ GetClangDeclContextContainingDIE()

clang::DeclContext * DWARFASTParserClang::GetClangDeclContextContainingDIE ( const DWARFDIE die,
DWARFDIE decl_ctx_die 
)
protected

◆ GetClangDeclContextForDIE()

clang::DeclContext * DWARFASTParserClang::GetClangDeclContextForDIE ( const DWARFDIE die)
protected

◆ GetClangDeclForDIE()

clang::Decl * DWARFASTParserClang::GetClangDeclForDIE ( const DWARFDIE die)
protected

◆ GetDeclContextContainingUIDFromDWARF()

CompilerDeclContext DWARFASTParserClang::GetDeclContextContainingUIDFromDWARF ( const DWARFDIE die)
overridevirtual

Implements DWARFASTParser.

Definition at line 2450 of file DWARFASTParserClang.cpp.

References GetClangDeclContextContainingDIE(), and m_ast.

Referenced by GetDeclContextForBlock().

◆ GetDeclContextForBlock()

clang::DeclContext * DWARFASTParserClang::GetDeclContextForBlock ( const DWARFDIE die)
protected

◆ GetDeclContextForUIDFromDWARF()

CompilerDeclContext DWARFASTParserClang::GetDeclContextForUIDFromDWARF ( const DWARFDIE die)
overridevirtual

Implements DWARFASTParser.

Definition at line 2442 of file DWARFASTParserClang.cpp.

References GetClangDeclContextForDIE(), and m_ast.

◆ GetDeclForUIDFromDWARF()

CompilerDecl DWARFASTParserClang::GetDeclForUIDFromDWARF ( const DWARFDIE die)
overridevirtual

Implements DWARFASTParser.

Definition at line 2434 of file DWARFASTParserClang.cpp.

References GetClangDeclForDIE(), and m_ast.

◆ GetDIEForDeclContext()

std::vector< DWARFDIE > DWARFASTParserClang::GetDIEForDeclContext ( lldb_private::CompilerDeclContext  decl_context)
overridevirtual

◆ GetModuleForType()

lldb::ModuleSP DWARFASTParserClang::GetModuleForType ( const DWARFDIE die)
protected

◆ GetTypeForDIE()

Type * DWARFASTParserClang::GetTypeForDIE ( const DWARFDIE die)
protected

◆ LinkDeclContextToDIE()

void DWARFASTParserClang::LinkDeclContextToDIE ( clang::DeclContext *  decl_ctx,
const DWARFDIE die 
)
protected

◆ LinkDeclToDIE()

void DWARFASTParserClang::LinkDeclToDIE ( clang::Decl *  decl,
const DWARFDIE die 
)
protected

◆ ParseChildEnumerators()

size_t DWARFASTParserClang::ParseChildEnumerators ( const lldb_private::SymbolContext sc,
lldb_private::CompilerType compiler_type,
bool  is_signed,
uint32_t  enumerator_byte_size,
const DWARFDIE parent_die 
)
protected

◆ ParseChildMembers()

bool DWARFASTParserClang::ParseChildMembers ( const lldb_private::SymbolContext sc,
const DWARFDIE die,
lldb_private::CompilerType class_compiler_type,
const lldb::LanguageType  class_language,
std::vector< std::unique_ptr< clang::CXXBaseSpecifier >> &  base_classes,
std::vector< int > &  member_accessibilities,
std::vector< DWARFDIE > &  member_function_dies,
DelayedPropertyList delayed_properties,
lldb::AccessType default_accessibility,
bool &  is_a_class,
lldb_private::ClangASTImporter::LayoutInfo layout_info 
)
protected

Definition at line 2686 of file DWARFASTParserClang.cpp.

References DWARFFormValue::AsCString(), DWARFAttributes::AttributeAtIndex(), lldb_private::ClangASTImporter::LayoutInfo::base_offsets, BitfieldInfo::bit_offset, BitfieldInfo::bit_size, DWARFFormValue::BlockData(), DWARFFormValue::Boolean(), BitfieldInfo::Clear(), lldb_private::SymbolContext::comp_unit, lldb_private::ClangASTContext::CreateArrayType(), lldb_private::ClangASTContext::CreateBaseClassSpecifier(), DW_ACCESS_to_AccessType(), lldb_private::DW_TAG_value_to_name(), lldb::eAccessNone, lldb::eAccessPrivate, lldb::eAccessPublic, lldb::eByteOrderLittle, lldb::eEncodingSint, lldb::eLanguageTypeObjC, lldb::eLanguageTypeObjC_plus_plus, eProducerClang, lldb::eRegisterKindDWARF, DWARFAttributes::ExtractFormValueAtIndex(), lldb_private::ClangASTImporter::LayoutInfo::field_offsets, lldb_private::ClangASTContext::GetAsCXXRecordDecl(), DWARFBaseDIE::GetAttributeValueAsUnsigned(), lldb_private::ClangASTContext::GetBuiltinTypeForEncodingAndBitSize(), lldb_private::ObjectFile::GetByteOrder(), lldb_private::Type::GetByteSize(), lldb_private::CompilerType::GetCompleteType(), lldb_private::ConstString::GetCString(), lldb_private::DataExtractor::GetData(), lldb_private::DataExtractor::GetDataStart(), DWARFBaseDIE::GetDWARF(), DWARFDIE::GetFirstChild(), lldb_private::Type::GetFullCompilerType(), DWARFBaseDIE::GetID(), lldb_private::Type::GetLayoutCompilerType(), lldb_private::ModuleChild::GetModule(), DWARFBaseDIE::GetName(), lldb_private::SymbolFile::GetObjectFile(), DWARFBaseDIE::GetOffset(), lldb_private::CompilerType::GetOpaqueQualType(), lldb_private::FileSpec::GetPath(), lldb_private::ObjCLanguage::MethodName::GetSelector(), lldb_private::StreamString::GetString(), lldb_private::CompileUnit::GetSupportFiles(), lldb_private::CompilerType::GetTypeSystem(), lldb_private::CompilerType::IsArrayType(), lldb_private::CompilerType::IsCompleteType(), DWARFBaseDIE::IsValid(), BitfieldInfo::IsValid(), m_ast, BitfieldInfo::NextBitfieldOffsetIsValid(), lldb_private::Stream::Printf(), DWARFFormValue::Reference(), lldb_private::Declaration::SetColumn(), lldb_private::Declaration::SetFile(), lldb_private::Declaration::SetLine(), lldb_private::ClangASTContext::SetMetadataAsUserID(), lldb_private::ClangASTContext::SetObjCSuperClass(), lldb_private::ConstString::SetString(), lldb_private::ClangASTMetadata::SetUserID(), DWARFFormValue::Signed(), DWARFBaseDIE::Tag(), UINT32_MAX, UINT64_MAX, and DWARFFormValue::Unsigned().

Referenced by CompleteTypeFromDWARF().

◆ ParseChildParameters()

size_t DWARFASTParserClang::ParseChildParameters ( lldb_private::CompileUnit comp_unit,
clang::DeclContext *  containing_decl_ctx,
const DWARFDIE parent_die,
bool  skip_artificial,
bool &  is_static,
bool &  is_variadic,
bool &  has_template_params,
std::vector< lldb_private::CompilerType > &  function_args,
std::vector< clang::ParmVarDecl *> &  function_param_decls,
unsigned &  type_quals 
)
protected

◆ ParseFunctionFromDWARF()

Function * DWARFASTParserClang::ParseFunctionFromDWARF ( lldb_private::CompileUnit comp_unit,
const DWARFDIE die 
)
overridevirtual

◆ ParseTemplateDIE()

bool DWARFASTParserClang::ParseTemplateDIE ( const DWARFDIE die,
lldb_private::ClangASTContext::TemplateParameterInfos template_param_infos 
)
protected

◆ ParseTemplateParameterInfos()

bool DWARFASTParserClang::ParseTemplateParameterInfos ( const DWARFDIE parent_die,
lldb_private::ClangASTContext::TemplateParameterInfos template_param_infos 
)
protected

◆ ParseTypeFromDWARF()

TypeSP DWARFASTParserClang::ParseTypeFromDWARF ( const lldb_private::SymbolContext sc,
const DWARFDIE die,
lldb_private::Log log,
bool *  type_is_new_ptr 
)
overridevirtual

Implements DWARFASTParser.

Definition at line 231 of file DWARFASTParserClang.cpp.

References lldb_private::ClangASTContext::AddMethodToCXXRecordType(), lldb_private::ClangASTContext::AddMethodToObjCObjectType(), DWARFFormValue::AsCString(), DWARFAttributes::AttributeAtIndex(), DWARFFormValue::Boolean(), SymbolFileDWARF::ClassOrStructIsVirtual(), DWARFBaseDIE::Clear(), lldb_private::Declaration::Clear(), DWARFFormValue::Clear(), lldb_private::SymbolContext::comp_unit, CompleteExternalTagDeclType(), CopyUniqueClassMethodTypes(), lldb_private::ClangASTContext::CreateArrayType(), lldb_private::ClangASTContext::CreateBlockPointerType(), lldb_private::ClangASTContext::CreateClassTemplateSpecializationDecl(), lldb_private::ClangASTContext::CreateClassTemplateSpecializationType(), lldb_private::ClangASTContext::CreateEnumerationType(), lldb_private::ClangASTContext::CreateFunctionDeclaration(), lldb_private::ClangASTContext::CreateFunctionTemplateDecl(), lldb_private::ClangASTContext::CreateFunctionTemplateSpecializationInfo(), lldb_private::ClangASTContext::CreateFunctionType(), lldb_private::ClangASTContext::CreateRecordType(), DEBUG_PRINTF, SymbolFileDWARF::DebugInfo(), DeclKindIsCXXClass(), DIE_IS_BEING_PARSED, DW_ACCESS_to_AccessType(), DW_INVALID_OFFSET, lldb_private::DW_TAG_value_to_name(), lldb::eAccessNone, lldb::eAccessPrivate, lldb::eAccessPublic, lldb::eBasicTypeInt, lldb::eBasicTypeNullPtr, lldb::eBasicTypeObjCClass, lldb::eBasicTypeObjCID, lldb::eBasicTypeObjCSel, lldb::eBasicTypeVoid, lldb::eLanguageTypeObjC, lldb::eLanguageTypeObjC_plus_plus, lldb::eLanguageTypeUnknown, eProducerClang, DWARFAttributes::ExtractFormValueAtIndex(), UniqueDWARFASTTypeMap::Find(), lldb_private::Block::FindBlockByID(), SymbolFileDWARFDebugMap::FindCompleteObjCDefinitionTypeForDIE(), SymbolFileDWARF::FindCompleteObjCDefinitionTypeForDIE(), SymbolFileDWARFDebugMap::FindDefinitionTypeForDWARFDeclContext(), SymbolFileDWARF::FindDefinitionTypeForDWARFDeclContext(), lldb_private::SymbolContext::function, lldb_private::ClangASTContext::GetAsCXXRecordDecl(), DWARFBaseDIE::GetAttributes(), DWARFBaseDIE::GetAttributeValueAsUnsigned(), lldb_private::ClangASTContext::GetBasicType(), lldb_private::Function::GetBlock(), lldb_private::ClangASTContext::GetBuiltinTypeForDWARFEncodingAndBitSize(), lldb_private::Type::GetByteSize(), lldb_private::CompilerType::GetByteSize(), GetCachedClangDeclContextForDIE(), GetClangASTImporter(), GetClangDeclContextContainingDIE(), GetClangDeclContextForDIE(), lldb_private::ObjCLanguage::MethodName::GetClassName(), lldb_private::CompilerType::GetCompleteType(), DWARFDIE::GetContainingDWOModuleDIE(), lldb_private::ConstString::GetCString(), DWARFBaseDIE::GetCU(), SymbolFileDWARF::GetDebugMapSymfile(), lldb_private::ClangASTContext::GetDeclContextForType(), DWARFDebugInfo::GetDIE(), DWARFDIE::GetDIE(), SymbolFileDWARF::GetDIE(), DWARFBaseDIE::GetDIERef(), SymbolFileDWARF::GetDIEToType(), DWARFBaseDIE::GetDWARF(), DWARFDIE::GetDWARFDeclContext(), lldb_private::ClangASTContext::GetEnumerationIntegerType(), lldb_private::ObjectFile::GetFileSpec(), DWARFDIE::GetFirstChild(), lldb_private::Type::GetForwardCompilerType(), SymbolFileDWARF::GetForwardDeclClangTypeToDie(), SymbolFileDWARF::GetForwardDeclDieToClangType(), lldb_private::Type::GetFullCompilerType(), lldb_private::UserID::GetID(), DWARFBaseDIE::GetID(), DWARFBaseDIE::GetLanguage(), lldb_private::CompileUnit::GetLanguage(), lldb_private::Type::GetLayoutCompilerType(), DWARFBaseDIE::GetLLDBCompileUnit(), lldb_private::ModuleChild::GetModule(), DWARFBaseDIE::GetModule(), DWARFBaseDIE::GetName(), lldb_private::Type::GetName(), lldb_private::SymbolFile::GetObjectFile(), DWARFBaseDIE::GetOffset(), lldb_private::CompilerType::GetOpaqueQualType(), SymbolFileDWARFDebugMap::GetOSOIndexFromUserID(), SymbolFileDWARF::GetParentSymbolContextDIE(), lldb_private::FileSpec::GetPath(), DWARFUnit::GetProducer(), DWARFDIE::GetQualifiedName(), DWARFDIE::GetReferencedDIE(), DWARFDIE::GetSibling(), lldb_private::CompileUnit::GetSupportFiles(), SymbolFileDWARFDebugMap::GetSymbolFileByOSOIndex(), DWARFBaseDIE::GetTagAsCString(), lldb_private::ClangASTContext::GetTranslationUnitDecl(), SymbolFileDWARF::GetTypeList(), DIERef::GetUID(), SymbolFileDWARF::GetUniqueDWARFASTTypeMap(), DWARFBaseDIE::HasChildren(), lldb_private::TypeList::Insert(), UniqueDWARFASTTypeMap::Insert(), lldb_private::ClangASTImporter::InsertRecordDecl(), lldb_private::CompilerType::IsBeingDefined(), DWARFBaseDIE::IsValid(), lldb_private::ObjCLanguage::MethodName::IsValid(), DWARFFormValue::IsValid(), LinkDeclContextToDIE(), LLDB_INVALID_UID, lldbassert, m_ast, DWARFASTParser::ParseChildArrayInfo(), ParseChildEnumerators(), ParseChildParameters(), lldb_private::ClangASTContext::ParseClassTemplateDecl(), ParseTemplateParameterInfos(), ParseTypeFromDWO(), lldb_private::Log::Printf(), DWARFFormValue::Reference(), SymbolFileDWARF::ResolveType(), SymbolFileDWARF::ResolveTypeUID(), lldb_private::Declaration::SetColumn(), lldb_private::CompilerType::SetCompilerType(), lldb_private::ConstString::SetCString(), lldb_private::Declaration::SetFile(), lldb_private::ClangASTContext::SetFunctionParameters(), lldb_private::ClangASTContext::SetHasExternalStorage(), lldb_private::ClangASTMetadata::SetIsDynamicCXXType(), lldb_private::Declaration::SetLine(), lldb_private::ClangASTContext::SetMetadata(), lldb_private::ClangASTContext::SetMetadataAsUserID(), lldb_private::ClangASTMetadata::SetObjectPtrName(), lldb_private::ClangASTMetadata::SetUserID(), DWARFFormValue::Signed(), DWARFBaseDIE::Supports_DW_AT_APPLE_objc_complete_type(), DWARFBaseDIE::Tag(), and DWARFFormValue::Unsigned().

◆ ParseTypeFromDWO()

TypeSP DWARFASTParserClang::ParseTypeFromDWO ( const DWARFDIE die,
lldb_private::Log log 
)
protected

◆ ResolveBlockDIE()

clang::BlockDecl * DWARFASTParserClang::ResolveBlockDIE ( const DWARFDIE die)
protected

◆ ResolveNamespaceDIE()

clang::NamespaceDecl * DWARFASTParserClang::ResolveNamespaceDIE ( const DWARFDIE die)
protected

Member Data Documentation

◆ m_ast

lldb_private::ClangASTContext& DWARFASTParserClang::m_ast
protected

◆ m_clang_ast_importer_up

std::unique_ptr<lldb_private::ClangASTImporter> DWARFASTParserClang::m_clang_ast_importer_up
protected

Definition at line 151 of file DWARFASTParserClang.h.

Referenced by GetClangASTImporter().

◆ m_decl_ctx_to_die

DeclContextToDIEMap DWARFASTParserClang::m_decl_ctx_to_die
protected

Definition at line 150 of file DWARFASTParserClang.h.

Referenced by GetDIEForDeclContext(), and LinkDeclContextToDIE().

◆ m_decl_to_die

DeclToDIEMap DWARFASTParserClang::m_decl_to_die
protected

Definition at line 148 of file DWARFASTParserClang.h.

Referenced by GetClangDeclForDIE().

◆ m_die_to_decl

DIEToDeclMap DWARFASTParserClang::m_die_to_decl
protected

Definition at line 147 of file DWARFASTParserClang.h.

Referenced by GetClangDeclForDIE().

◆ m_die_to_decl_ctx

DIEToDeclContextMap DWARFASTParserClang::m_die_to_decl_ctx
protected

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