|
LLDB mainline
|
#include <PdbAstBuilderClang.h>
Private Types | |
| using | TypeIndex = llvm::codeview::TypeIndex |
| using | NamespaceSet = llvm::DenseSet<clang::NamespaceDecl *> |
Private Member Functions | |
| CompilerDeclContext | GetTranslationUnitDecl () |
| clang::DeclContext * | GetParentClangDeclContext (PdbSymUid uid) |
| clang::Decl * | TryGetDecl (PdbSymUid uid) const |
| clang::FunctionDecl * | GetOrCreateFunctionDecl (PdbCompilandSymId func_id) |
| clang::FunctionDecl * | GetOrCreateInlinedFunctionDecl (PdbCompilandSymId inlinesite_id) |
| clang::BlockDecl * | GetOrCreateBlockDecl (PdbCompilandSymId block_id) |
| clang::VarDecl * | GetOrCreateVariableDecl (PdbCompilandSymId scope_id, PdbCompilandSymId var_id) |
| clang::VarDecl * | GetOrCreateVariableDecl (PdbGlobalSymId var_id) |
| clang::QualType | CreatePointerType (const llvm::codeview::PointerRecord &pointer) |
| clang::QualType | CreateModifierType (const llvm::codeview::ModifierRecord &modifier) |
| clang::QualType | CreateArrayType (const llvm::codeview::ArrayRecord &array) |
| clang::QualType | CreateRecordType (PdbTypeSymId id, const llvm::codeview::TagRecord &record) |
| clang::QualType | CreateEnumType (PdbTypeSymId id, const llvm::codeview::EnumRecord &record) |
| clang::QualType | CreateFunctionType (TypeIndex args_type_idx, TypeIndex return_type_idx, llvm::codeview::CallingConvention calling_convention) |
| clang::QualType | CreateType (PdbTypeSymId type) |
| void | CreateFunctionParameters (PdbCompilandSymId func_id, clang::FunctionDecl &function_decl, uint32_t param_count) |
| clang::Decl * | GetOrCreateSymbolForId (PdbCompilandSymId id) |
| clang::VarDecl * | CreateVariableDecl (PdbSymUid uid, llvm::codeview::CVSymbol sym, clang::DeclContext &scope) |
| clang::NamespaceDecl * | GetOrCreateNamespaceDecl (const char *name, clang::DeclContext &context) |
| clang::FunctionDecl * | CreateFunctionDeclFromId (PdbTypeSymId func_tid, PdbCompilandSymId func_sid) |
| clang::FunctionDecl * | CreateFunctionDecl (PdbCompilandSymId func_id, llvm::StringRef func_name, TypeIndex func_ti, CompilerType func_ct, uint32_t param_count, clang::StorageClass func_storage, bool is_inline, clang::DeclContext *parent) |
| void | ParseNamespace (clang::DeclContext &parent) |
| void | ParseAllTypes () |
| void | ParseAllFunctionsAndNonLocalVars () |
| void | ParseDeclsForSimpleContext (clang::DeclContext &context) |
| void | ParseBlockChildren (PdbCompilandSymId block_id) |
| std::pair< clang::DeclContext *, std::string > | CreateDeclInfoForType (const llvm::codeview::TagRecord &record, TypeIndex ti) |
| std::pair< clang::DeclContext *, std::string > | CreateDeclInfoForUndecoratedName (llvm::StringRef uname) |
| clang::QualType | CreateSimpleType (TypeIndex ti) |
Private Attributes | |
| TypeSystemClang & | m_clang |
| ClangASTImporter | m_importer |
| llvm::once_flag | m_parse_functions_and_non_local_vars |
| llvm::once_flag | m_parse_all_types |
| llvm::DenseMap< clang::Decl *, DeclStatus > | m_decl_to_status |
| llvm::DenseMap< lldb::user_id_t, clang::Decl * > | m_uid_to_decl |
| llvm::DenseMap< lldb::user_id_t, clang::QualType > | m_uid_to_type |
| llvm::DenseMap< lldb::opaque_compiler_type_t, llvm::SmallSet< std::pair< llvm::StringRef, CompilerType >, 8 > > | m_cxx_record_map |
| NamespaceSet | m_parsed_namespaces |
| NamespaceSet | m_known_namespaces |
| llvm::DenseMap< clang::DeclContext *, NamespaceSet > | m_parent_to_namespaces |
Definition at line 53 of file PdbAstBuilderClang.h.
|
private |
Definition at line 169 of file PdbAstBuilderClang.h.
|
private |
Definition at line 110 of file PdbAstBuilderClang.h.
| PdbAstBuilderClang::PdbAstBuilderClang | ( | TypeSystemClang & | clang | ) |
Definition at line 161 of file PdbAstBuilderClang.cpp.
References m_clang.
|
inline |
Definition at line 93 of file PdbAstBuilderClang.h.
References m_clang.
| bool PdbAstBuilderClang::CompleteTagDecl | ( | clang::TagDecl & | tag | ) |
Definition at line 448 of file PdbAstBuilderClang.cpp.
References lldb_private::npdb::PdbSymUid::asTypeSym(), lldb_private::npdb::UdtRecordCompleter::complete(), error(), lldb_private::npdb::GetBestPossibleDecl(), lldb_private::npdb::GetFieldListIndex(), lldb_private::npdb::SymbolFileNativePDB::GetIndex(), lldb_private::npdb::PdbTypeSymId::index, lldb_private::npdb::IsForwardRefUdt(), lldb_private::npdb::IsTagRecord(), lldbassert, lldb_private::npdb::LookThroughModifierRecord(), m_clang, m_cxx_record_map, m_decl_to_status, lldb_private::npdb::DeclStatus::resolved, lldb_private::TypeSystemClang::SetHasExternalStorage(), ToCompilerType(), lldb_private::npdb::PdbIndex::tpi(), and lldb_private::npdb::DeclStatus::uid.
Referenced by CompleteType(), and ParseDeclsForSimpleContext().
|
overridevirtual |
Implements lldb_private::npdb::PdbAstBuilder.
Definition at line 430 of file PdbAstBuilderClang.cpp.
References CompleteTagDecl(), lldb_private::ClangASTImporter::CompleteType(), FromCompilerType(), and GetClangASTImporter().
|
private |
Definition at line 1223 of file PdbAstBuilderClang.cpp.
References lldb_private::CompilerType::GetOpaqueQualType(), GetOrCreateClangType(), lldb_private::npdb::GetSizeOfType(), m_clang, lldb_private::TypeSystemClang::RequireCompleteType(), ToCompilerType(), and lldb_private::npdb::PdbIndex::tpi().
Referenced by CreateType().
|
private |
Definition at line 169 of file PdbAstBuilderClang.cpp.
References AnyScopesHaveTemplateParams(), CreateDeclInfoForUndecoratedName(), GetOrCreateClangType(), GetOrCreateNamespaceDecl(), and m_clang.
Referenced by CreateEnumType(), CreateRecordType(), and ParseNamespace().
|
private |
Definition at line 326 of file PdbAstBuilderClang.cpp.
References FromCompilerDeclContext(), GetOrCreateClangType(), GetOrCreateNamespaceDecl(), MSVCUndecoratedNameParser::GetSpecifiers(), GetTranslationUnitDecl(), m_clang, and lldb_private::npdb::PdbIndex::tpi().
Referenced by CreateDeclInfoForType(), and GetParentClangDeclContext().
|
private |
Definition at line 1200 of file PdbAstBuilderClang.cpp.
References CreateDeclInfoForType(), lldb_private::CompilerType::GetOpaqueQualType(), GetOrCreateClangType(), m_clang, lldb_private::TypeSystemClang::SetHasExternalStorage(), lldb_private::TypeSystemClang::StartTagDeclarationDefinition(), and ToCompilerType().
Referenced by CreateType().
|
private |
Definition at line 874 of file PdbAstBuilderClang.cpp.
References lldb_private::npdb::CVTagRecord::asTag(), lldb_private::npdb::CVTagRecord::create(), CreateFunctionParameters(), error(), lldb_private::CompilerType::GetOpaqueQualType(), m_clang, m_cxx_record_map, ToCompilerType(), and lldb_private::npdb::PdbIndex::tpi().
Referenced by CreateFunctionDeclFromId(), and GetOrCreateFunctionDecl().
|
private |
Definition at line 986 of file PdbAstBuilderClang.cpp.
References CreateFunctionDecl(), FromCompilerDeclContext(), GetOrCreateClangDeclContextForUid(), GetOrCreateClangType(), GetOrCreateNamespaceDecl(), GetTranslationUnitDecl(), lldb_private::npdb::PdbTypeSymId::index, lldb_private::npdb::PdbIndex::ipi(), lldb_private::npdb::PdbTypeSymId::is_ipi, lldbassert, m_clang, and ToCompilerType().
Referenced by GetOrCreateInlinedFunctionDecl().
|
private |
Definition at line 1117 of file PdbAstBuilderClang.cpp.
References lldb_private::npdb::PdbIndex::compilands(), lldb_private::npdb::CompileUnitIndex::GetCompiland(), GetOrCreateClangType(), lldbassert, m_clang, lldb_private::npdb::CompilandIndexItem::m_debug_stream, m_uid_to_decl, lldb_private::npdb::PdbCompilandSymId::modi, lldb_private::npdb::PdbCompilandSymId::offset, and lldb_private::npdb::toOpaqueUid().
Referenced by CreateFunctionDecl().
|
private |
Definition at line 1240 of file PdbAstBuilderClang.cpp.
References lldb_private::CompilerType::GetOpaqueQualType(), GetOrCreateClangType(), IsCVarArgsFunction(), m_clang, ToCompilerType(), lldb_private::npdb::PdbIndex::tpi(), and TranslateCallingConvention().
Referenced by CreateType().
|
private |
Definition at line 603 of file PdbAstBuilderClang.cpp.
References GetOrCreateClangType().
Referenced by CreateType().
|
private |
Definition at line 530 of file PdbAstBuilderClang.cpp.
References GetOrCreateClangType(), and m_clang.
Referenced by CreateType().
|
private |
Definition at line 616 of file PdbAstBuilderClang.cpp.
References CreateDeclInfoForType(), lldb::eLanguageTypeC_plus_plus, lldb_private::CompilerType::GetOpaqueQualType(), lldb_private::CompilerType::IsValid(), lldbassert, m_clang, lldb_private::TypeSystemClang::SetHasExternalStorage(), lldb_private::ClangASTMetadata::SetIsDynamicCXXType(), lldb_private::ClangASTMetadata::SetUserID(), lldb_private::TypeSystemClang::StartTagDeclarationDefinition(), lldb_private::npdb::toOpaqueUid(), and TranslateUdtKind().
Referenced by CreateType().
|
private |
Definition at line 508 of file PdbAstBuilderClang.cpp.
References lldb::eBasicTypeInvalid, lldb::eBasicTypeNullPtr, GetBasicType(), lldb_private::npdb::GetCompilerTypeForSimpleKind(), GetOrCreateClangType(), and m_clang.
Referenced by CreateType().
|
private |
Definition at line 770 of file PdbAstBuilderClang.cpp.
References lldb_private::npdb::CVTagRecord::asClass(), lldb_private::npdb::CVTagRecord::asEnum(), lldb_private::npdb::CVTagRecord::asUnion(), lldb_private::npdb::CVTagRecord::create(), CreateArrayType(), CreateEnumType(), CreateFunctionType(), CreateModifierType(), CreatePointerType(), CreateRecordType(), CreateSimpleType(), lldb_private::npdb::CVTagRecord::Enum, lldb_private::npdb::PdbTypeSymId::index, lldb_private::npdb::IsTagRecord(), lldb_private::npdb::CVTagRecord::kind(), m_clang, lldb_private::npdb::PdbIndex::tpi(), and lldb_private::npdb::CVTagRecord::Union.
Referenced by GetOrCreateClangType().
|
private |
Definition at line 685 of file PdbAstBuilderClang.cpp.
References GetOrCreateClangType(), lldb_private::npdb::GetVariableNameInfo(), m_clang, m_decl_to_status, m_uid_to_decl, lldb_private::npdb::VariableInfo::name, lldb_private::npdb::DeclStatus::resolved, lldb_private::npdb::toOpaqueUid(), lldb_private::npdb::VariableInfo::type, and lldb_private::npdb::DeclStatus::uid.
Referenced by GetOrCreateVariableDecl(), and GetOrCreateVariableDecl().
|
overridevirtual |
Implements lldb_private::npdb::PdbAstBuilder.
Definition at line 1521 of file PdbAstBuilderClang.cpp.
References lldb_private::Stream::AsRawOstream(), and m_clang.
|
overridevirtual |
Implements lldb_private::npdb::PdbAstBuilder.
Definition at line 1104 of file PdbAstBuilderClang.cpp.
References GetOrCreateBlockDecl().
|
overridevirtual |
Implements lldb_private::npdb::PdbAstBuilder.
Definition at line 1095 of file PdbAstBuilderClang.cpp.
References GetOrCreateFunctionDecl().
|
overridevirtual |
Implements lldb_private::npdb::PdbAstBuilder.
Definition at line 1099 of file PdbAstBuilderClang.cpp.
References GetOrCreateInlinedFunctionDecl().
|
overridevirtual |
Implements lldb_private::npdb::PdbAstBuilder.
Definition at line 1108 of file PdbAstBuilderClang.cpp.
References GetOrCreateVariableDecl().
|
overridevirtual |
Implements lldb_private::npdb::PdbAstBuilder.
Definition at line 1113 of file PdbAstBuilderClang.cpp.
References GetOrCreateVariableDecl().
|
overridevirtual |
Implements lldb_private::npdb::PdbAstBuilder.
Definition at line 1527 of file PdbAstBuilderClang.cpp.
References FindNamespaceDecl(), FromCompilerDeclContext(), m_known_namespaces, m_parent_to_namespaces, and ToCompilerDeclContext().
Referenced by FindNamespaceDecl().
| clang::Decl * PdbAstBuilderClang::FromCompilerDecl | ( | CompilerDecl | decl | ) |
Definition at line 1510 of file PdbAstBuilderClang.cpp.
References lldb_private::ClangUtil::GetDecl(), and lldb_private::CompilerDecl::GetTypeSystem().
Referenced by GetOrCreateClangDeclContextForUid().
| clang::DeclContext * PdbAstBuilderClang::FromCompilerDeclContext | ( | CompilerDeclContext | context | ) |
Definition at line 1517 of file PdbAstBuilderClang.cpp.
References lldb_private::CompilerDeclContext::GetOpaqueDeclContext().
Referenced by CreateDeclInfoForUndecoratedName(), CreateFunctionDeclFromId(), FindNamespaceDecl(), GetOrCreateClangDeclContextForUid(), GetOrCreateVariableDecl(), GetParentClangDeclContext(), and ParseDeclsForContext().
| clang::QualType PdbAstBuilderClang::FromCompilerType | ( | CompilerType | ct | ) |
Definition at line 1501 of file PdbAstBuilderClang.cpp.
References lldb_private::ClangUtil::GetQualType().
Referenced by CompleteType().
| clang::QualType PdbAstBuilderClang::GetBasicType | ( | lldb::BasicType | type | ) |
Definition at line 765 of file PdbAstBuilderClang.cpp.
References lldb_private::CompilerType::GetOpaqueQualType(), and m_clang.
Referenced by CreateSimpleType().
|
inline |
Definition at line 94 of file PdbAstBuilderClang.h.
References m_importer.
Referenced by CompleteType().
|
private |
Definition at line 666 of file PdbAstBuilderClang.cpp.
References GetParentClangDeclContext(), m_clang, m_decl_to_status, m_uid_to_decl, lldb_private::npdb::DeclStatus::resolved, lldb_private::npdb::toOpaqueUid(), TryGetDecl(), and lldb_private::npdb::DeclStatus::uid.
Referenced by EnsureBlock(), and GetOrCreateSymbolForId().
| clang::DeclContext * PdbAstBuilderClang::GetOrCreateClangDeclContextForUid | ( | PdbSymUid | uid | ) |
Definition at line 308 of file PdbAstBuilderClang.cpp.
References lldb_private::npdb::PdbSymUid::asCompilandSym(), lldb_private::npdb::CompilandSym, FromCompilerDecl(), FromCompilerDeclContext(), GetOrCreateDeclForUid(), GetTranslationUnitDecl(), lldb_private::npdb::PdbSymUid::kind(), and lldb_private::npdb::PdbCompilandSymId::offset.
Referenced by CreateFunctionDeclFromId(), GetOrCreateDeclContextForUid(), GetOrCreateVariableDecl(), and GetParentClangDeclContext().
| clang::QualType PdbAstBuilderClang::GetOrCreateClangType | ( | PdbTypeSymId | type | ) |
Definition at line 824 of file PdbAstBuilderClang.cpp.
References CreateType(), lldb_private::npdb::GetBestPossibleDecl(), GetOrCreateClangType(), lldb_private::npdb::PdbTypeSymId::index, lldb_private::npdb::IsTagRecord(), lldbassert, m_clang, m_decl_to_status, m_uid_to_type, lldb_private::npdb::DeclStatus::resolved, lldb_private::npdb::toOpaqueUid(), lldb_private::npdb::PdbIndex::tpi(), and lldb_private::npdb::DeclStatus::uid.
Referenced by CreateArrayType(), CreateDeclInfoForType(), CreateDeclInfoForUndecoratedName(), CreateEnumType(), CreateFunctionDeclFromId(), CreateFunctionParameters(), CreateFunctionType(), CreateModifierType(), CreatePointerType(), CreateSimpleType(), CreateVariableDecl(), GetOrCreateClangType(), GetOrCreateDeclForUid(), GetOrCreateFunctionDecl(), GetOrCreateType(), GetOrCreateTypedefType(), ParseAllTypes(), and ParseNamespace().
|
overridevirtual |
Implements lldb_private::npdb::PdbAstBuilder.
Definition at line 321 of file PdbAstBuilderClang.cpp.
References GetOrCreateClangDeclContextForUid(), and ToCompilerDeclContext().
|
overridevirtual |
Implements lldb_private::npdb::PdbAstBuilder.
Definition at line 278 of file PdbAstBuilderClang.cpp.
References lldb_private::npdb::PdbSymUid::asCompilandSym(), lldb_private::npdb::PdbSymUid::asTypeSym(), lldb_private::npdb::CompilandSym, GetOrCreateClangType(), GetOrCreateSymbolForId(), lldb_private::npdb::PdbSymUid::kind(), m_uid_to_decl, ToCompilerDecl(), lldb_private::npdb::toOpaqueUid(), TryGetDecl(), and lldb_private::npdb::Type.
Referenced by GetOrCreateClangDeclContextForUid().
|
private |
Definition at line 1041 of file PdbAstBuilderClang.cpp.
References CreateFunctionDecl(), GetOrCreateClangType(), GetParentClangDeclContext(), lldbassert, m_clang, m_decl_to_status, m_uid_to_decl, lldb_private::npdb::PdbIndex::ReadSymbolRecord(), lldb_private::npdb::DeclStatus::resolved, ToCompilerType(), lldb_private::npdb::toOpaqueUid(), TryGetDecl(), and lldb_private::npdb::DeclStatus::uid.
Referenced by EnsureFunction(), GetOrCreateSymbolForId(), and ParseAllFunctionsAndNonLocalVars().
|
private |
Definition at line 947 of file PdbAstBuilderClang.cpp.
References lldb_private::npdb::PdbIndex::compilands(), CreateFunctionDeclFromId(), lldb_private::npdb::CompileUnitIndex::GetCompiland(), lldbassert, m_clang, lldb_private::npdb::CompilandIndexItem::m_debug_stream, m_decl_to_status, m_uid_to_decl, lldb_private::npdb::PdbCompilandSymId::modi, lldb_private::npdb::PdbCompilandSymId::offset, lldb_private::npdb::DeclStatus::resolved, lldb_private::npdb::toOpaqueUid(), TryGetDecl(), and lldb_private::npdb::DeclStatus::uid.
Referenced by EnsureInlinedFunction(), and GetOrCreateSymbolForId().
|
private |
Definition at line 655 of file PdbAstBuilderClang.cpp.
References IsAnonymousNamespaceName(), m_clang, m_known_namespaces, and m_parent_to_namespaces.
Referenced by CreateDeclInfoForType(), CreateDeclInfoForUndecoratedName(), and CreateFunctionDeclFromId().
|
private |
Definition at line 243 of file PdbAstBuilderClang.cpp.
References lldb_private::npdb::PdbSymUid::asCompilandSym(), GetOrCreateBlockDecl(), GetOrCreateFunctionDecl(), GetOrCreateInlinedFunctionDecl(), GetOrCreateVariableDecl(), GetParentClangDeclContext(), isLocalVariableType(), m_clang, m_decl_to_status, and lldb_private::npdb::PdbIndex::ReadSymbolRecord().
Referenced by GetOrCreateDeclForUid(), and ParseBlockChildren().
|
overridevirtual |
Implements lldb_private::npdb::PdbAstBuilder.
Definition at line 867 of file PdbAstBuilderClang.cpp.
References GetOrCreateClangType(), and ToCompilerType().
|
overridevirtual |
Implements lldb_private::npdb::PdbAstBuilder.
Definition at line 733 of file PdbAstBuilderClang.cpp.
References lldb_private::CompilerType::CreateTypedef(), lldb_private::npdb::DropNameScope(), GetOrCreateClangType(), GetParentClangDeclContext(), lldbassert, m_clang, m_decl_to_status, lldb_private::npdb::PdbIndex::ReadSymbolRecord(), lldb_private::npdb::DeclStatus::resolved, ToCompilerDeclContext(), ToCompilerType(), lldb_private::npdb::toOpaqueUid(), TryGetDecl(), and lldb_private::npdb::DeclStatus::uid.
|
private |
Definition at line 704 of file PdbAstBuilderClang.cpp.
References CreateVariableDecl(), GetOrCreateClangDeclContextForUid(), m_clang, lldb_private::npdb::PdbIndex::ReadSymbolRecord(), and TryGetDecl().
Referenced by EnsureVariable(), EnsureVariable(), GetOrCreateSymbolForId(), and ParseAllFunctionsAndNonLocalVars().
|
private |
Definition at line 721 of file PdbAstBuilderClang.cpp.
References CreateVariableDecl(), FromCompilerDeclContext(), GetTranslationUnitDecl(), m_clang, lldb_private::npdb::PdbIndex::ReadSymbolRecord(), and TryGetDecl().
|
private |
Definition at line 363 of file PdbAstBuilderClang.cpp.
References lldb_private::npdb::PdbSymUid::asCompilandSym(), lldb_private::npdb::PdbSymUid::asGlobalSym(), lldb_private::npdb::PdbSymUid::asTypeSym(), lldb_private::npdb::CompilandSym, CreateDeclInfoForUndecoratedName(), lldb_private::npdb::FieldListMember, FromCompilerDeclContext(), GetOrCreateClangDeclContextForUid(), GetParentClangDeclContext(), GetTranslationUnitDecl(), lldb_private::npdb::GlobalSym, lldb_private::npdb::PdbTypeSymId::index, lldb_private::npdb::PdbSymUid::kind(), m_clang, lldb_private::npdb::PdbIndex::ReadSymbolRecord(), and lldb_private::npdb::Type.
Referenced by GetOrCreateBlockDecl(), GetOrCreateFunctionDecl(), GetOrCreateSymbolForId(), GetOrCreateTypedefType(), GetParentClangDeclContext(), and GetParentDeclContext().
|
overridevirtual |
Implements lldb_private::npdb::PdbAstBuilder.
Definition at line 426 of file PdbAstBuilderClang.cpp.
References GetParentClangDeclContext(), and ToCompilerDeclContext().
|
private |
Definition at line 164 of file PdbAstBuilderClang.cpp.
References m_clang, and ToCompilerDeclContext().
Referenced by CreateDeclInfoForUndecoratedName(), CreateFunctionDeclFromId(), GetOrCreateClangDeclContextForUid(), GetOrCreateVariableDecl(), and GetParentClangDeclContext().
|
private |
Definition at line 1353 of file PdbAstBuilderClang.cpp.
References lldb_private::npdb::PdbIndex::compilands(), lldb_private::npdb::PdbIndex::dbi(), lldb_private::npdb::CompileUnitIndex::GetOrCreateCompiland(), GetOrCreateFunctionDecl(), GetOrCreateVariableDecl(), m_clang, lldb_private::npdb::CompilandIndexItem::m_debug_stream, and m_parse_functions_and_non_local_vars.
Referenced by ParseDeclsForContext(), and ParseNamespace().
|
private |
Definition at line 1335 of file PdbAstBuilderClang.cpp.
References GetOrCreateClangType(), lldb_private::npdb::IsTagRecord(), m_clang, m_parse_all_types, and lldb_private::npdb::PdbIndex::tpi().
Referenced by ParseDeclsForContext().
|
private |
Definition at line 1414 of file PdbAstBuilderClang.cpp.
References lldb_private::npdb::PdbIndex::compilands(), lldb_private::npdb::CompileUnitIndex::GetOrCreateCompiland(), GetOrCreateSymbolForId(), lldbassert, m_clang, lldb_private::npdb::CompilandIndexItem::m_debug_stream, m_uid_to_decl, lldb_private::npdb::PdbCompilandSymId::modi, lldb_private::npdb::PdbCompilandSymId::offset, ParseBlockChildren(), lldb_private::npdb::PdbIndex::ReadSymbolRecord(), skipFunctionParameters(), and lldb_private::npdb::toOpaqueUid().
Referenced by ParseBlockChildren(), and ParseDeclsForSimpleContext().
|
overridevirtual |
Implements lldb_private::npdb::PdbAstBuilder.
Definition at line 1465 of file PdbAstBuilderClang.cpp.
References FromCompilerDeclContext(), isBlockDecl(), isFunctionDecl(), isTagDecl(), ParseAllFunctionsAndNonLocalVars(), ParseAllTypes(), ParseDeclsForSimpleContext(), and ParseNamespace().
|
private |
Definition at line 1445 of file PdbAstBuilderClang.cpp.
References lldb_private::npdb::PdbSymUid::asCompilandSym(), CompleteTagDecl(), isBlockDecl(), isFunctionDecl(), lldbassert, m_decl_to_status, and ParseBlockChildren().
Referenced by ParseDeclsForContext().
|
private |
Definition at line 1296 of file PdbAstBuilderClang.cpp.
References lldb_private::npdb::CVTagRecord::asTag(), lldb_private::npdb::CVTagRecord::create(), CreateDeclInfoForType(), GetOrCreateClangType(), lldb_private::npdb::PdbTypeSymId::index, lldb_private::npdb::IsTagRecord(), m_clang, m_parsed_namespaces, ParseAllFunctionsAndNonLocalVars(), and lldb_private::npdb::PdbIndex::tpi().
Referenced by ParseDeclsForContext().
| CompilerDecl PdbAstBuilderClang::ToCompilerDecl | ( | clang::Decl * | decl | ) |
Definition at line 1493 of file PdbAstBuilderClang.cpp.
References m_clang.
Referenced by GetOrCreateDeclForUid().
| CompilerDeclContext PdbAstBuilderClang::ToCompilerDeclContext | ( | clang::DeclContext * | context | ) |
Definition at line 1506 of file PdbAstBuilderClang.cpp.
References m_clang.
Referenced by FindNamespaceDecl(), GetOrCreateDeclContextForUid(), GetOrCreateTypedefType(), GetParentDeclContext(), and GetTranslationUnitDecl().
| CompilerType PdbAstBuilderClang::ToCompilerType | ( | clang::QualType | qt | ) |
Definition at line 1497 of file PdbAstBuilderClang.cpp.
References m_clang.
Referenced by CompleteTagDecl(), CreateArrayType(), CreateEnumType(), CreateFunctionDecl(), CreateFunctionDeclFromId(), CreateFunctionType(), GetOrCreateFunctionDecl(), GetOrCreateType(), and GetOrCreateTypedefType().
|
private |
Definition at line 647 of file PdbAstBuilderClang.cpp.
References m_uid_to_decl, and lldb_private::npdb::toOpaqueUid().
Referenced by GetOrCreateBlockDecl(), GetOrCreateDeclForUid(), GetOrCreateFunctionDecl(), GetOrCreateInlinedFunctionDecl(), GetOrCreateTypedefType(), GetOrCreateVariableDecl(), and GetOrCreateVariableDecl().
|
private |
Definition at line 154 of file PdbAstBuilderClang.h.
Referenced by clang(), CompleteTagDecl(), CreateArrayType(), CreateDeclInfoForType(), CreateDeclInfoForUndecoratedName(), CreateEnumType(), CreateFunctionDecl(), CreateFunctionDeclFromId(), CreateFunctionParameters(), CreateFunctionType(), CreatePointerType(), CreateRecordType(), CreateSimpleType(), CreateType(), CreateVariableDecl(), Dump(), GetBasicType(), GetOrCreateBlockDecl(), GetOrCreateClangType(), GetOrCreateFunctionDecl(), GetOrCreateInlinedFunctionDecl(), GetOrCreateNamespaceDecl(), GetOrCreateSymbolForId(), GetOrCreateTypedefType(), GetOrCreateVariableDecl(), GetOrCreateVariableDecl(), GetParentClangDeclContext(), GetTranslationUnitDecl(), ParseAllFunctionsAndNonLocalVars(), ParseAllTypes(), ParseBlockChildren(), ParseNamespace(), PdbAstBuilderClang(), ToCompilerDecl(), ToCompilerDeclContext(), and ToCompilerType().
|
private |
Definition at line 167 of file PdbAstBuilderClang.h.
Referenced by CompleteTagDecl(), and CreateFunctionDecl().
|
private |
Definition at line 159 of file PdbAstBuilderClang.h.
Referenced by CompleteTagDecl(), CreateVariableDecl(), GetOrCreateBlockDecl(), GetOrCreateClangType(), GetOrCreateFunctionDecl(), GetOrCreateInlinedFunctionDecl(), GetOrCreateSymbolForId(), GetOrCreateTypedefType(), and ParseDeclsForSimpleContext().
|
private |
Definition at line 156 of file PdbAstBuilderClang.h.
Referenced by GetClangASTImporter().
|
private |
Definition at line 175 of file PdbAstBuilderClang.h.
Referenced by FindNamespaceDecl(), and GetOrCreateNamespaceDecl().
|
private |
Definition at line 176 of file PdbAstBuilderClang.h.
Referenced by FindNamespaceDecl(), and GetOrCreateNamespaceDecl().
|
private |
Definition at line 158 of file PdbAstBuilderClang.h.
Referenced by ParseAllTypes().
|
private |
Definition at line 157 of file PdbAstBuilderClang.h.
Referenced by ParseAllFunctionsAndNonLocalVars().
|
private |
Definition at line 172 of file PdbAstBuilderClang.h.
Referenced by ParseNamespace().
|
private |
Definition at line 160 of file PdbAstBuilderClang.h.
Referenced by CreateFunctionParameters(), CreateVariableDecl(), GetOrCreateBlockDecl(), GetOrCreateDeclForUid(), GetOrCreateFunctionDecl(), GetOrCreateInlinedFunctionDecl(), ParseBlockChildren(), and TryGetDecl().
|
private |
Definition at line 161 of file PdbAstBuilderClang.h.
Referenced by GetOrCreateClangType().