|
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 447 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 429 of file PdbAstBuilderClang.cpp.
References CompleteTagDecl(), lldb_private::ClangASTImporter::CompleteType(), FromCompilerType(), and GetClangASTImporter().
|
private |
Definition at line 1214 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 325 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 1191 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 873 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 985 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 1116 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 1231 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 602 of file PdbAstBuilderClang.cpp.
References GetOrCreateClangType().
Referenced by CreateType().
|
private |
Definition at line 529 of file PdbAstBuilderClang.cpp.
References GetOrCreateClangType(), and m_clang.
Referenced by CreateType().
|
private |
Definition at line 615 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 507 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 769 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 684 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 1512 of file PdbAstBuilderClang.cpp.
References lldb_private::Stream::AsRawOstream(), and m_clang.
|
overridevirtual |
Implements lldb_private::npdb::PdbAstBuilder.
Definition at line 1103 of file PdbAstBuilderClang.cpp.
References GetOrCreateBlockDecl().
|
overridevirtual |
Implements lldb_private::npdb::PdbAstBuilder.
Definition at line 1094 of file PdbAstBuilderClang.cpp.
References GetOrCreateFunctionDecl().
|
overridevirtual |
Implements lldb_private::npdb::PdbAstBuilder.
Definition at line 1098 of file PdbAstBuilderClang.cpp.
References GetOrCreateInlinedFunctionDecl().
|
overridevirtual |
Implements lldb_private::npdb::PdbAstBuilder.
Definition at line 1107 of file PdbAstBuilderClang.cpp.
References GetOrCreateVariableDecl().
|
overridevirtual |
Implements lldb_private::npdb::PdbAstBuilder.
Definition at line 1112 of file PdbAstBuilderClang.cpp.
References GetOrCreateVariableDecl().
|
overridevirtual |
Implements lldb_private::npdb::PdbAstBuilder.
Definition at line 1518 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 1501 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 1508 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 1492 of file PdbAstBuilderClang.cpp.
References lldb_private::ClangUtil::GetQualType().
Referenced by CompleteType().
| clang::QualType PdbAstBuilderClang::GetBasicType | ( | lldb::BasicType | type | ) |
Definition at line 764 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 665 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 307 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 823 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 320 of file PdbAstBuilderClang.cpp.
References GetOrCreateClangDeclContextForUid(), and ToCompilerDeclContext().
|
overridevirtual |
Implements lldb_private::npdb::PdbAstBuilder.
Definition at line 277 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 1040 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 946 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 654 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 242 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 866 of file PdbAstBuilderClang.cpp.
References GetOrCreateClangType(), and ToCompilerType().
|
overridevirtual |
Implements lldb_private::npdb::PdbAstBuilder.
Definition at line 732 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 703 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 720 of file PdbAstBuilderClang.cpp.
References CreateVariableDecl(), FromCompilerDeclContext(), GetTranslationUnitDecl(), m_clang, lldb_private::npdb::PdbIndex::ReadSymbolRecord(), and TryGetDecl().
|
private |
Definition at line 362 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 425 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 1344 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 1326 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 1405 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 1456 of file PdbAstBuilderClang.cpp.
References FromCompilerDeclContext(), isBlockDecl(), isFunctionDecl(), isTagDecl(), ParseAllFunctionsAndNonLocalVars(), ParseAllTypes(), ParseDeclsForSimpleContext(), and ParseNamespace().
|
private |
Definition at line 1436 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 1287 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 1484 of file PdbAstBuilderClang.cpp.
References m_clang.
Referenced by GetOrCreateDeclForUid().
| CompilerDeclContext PdbAstBuilderClang::ToCompilerDeclContext | ( | clang::DeclContext * | context | ) |
Definition at line 1497 of file PdbAstBuilderClang.cpp.
References m_clang.
Referenced by FindNamespaceDecl(), GetOrCreateDeclContextForUid(), GetOrCreateTypedefType(), GetParentDeclContext(), and GetTranslationUnitDecl().
| CompilerType PdbAstBuilderClang::ToCompilerType | ( | clang::QualType | qt | ) |
Definition at line 1488 of file PdbAstBuilderClang.cpp.
References m_clang.
Referenced by CompleteTagDecl(), CreateArrayType(), CreateEnumType(), CreateFunctionDecl(), CreateFunctionDeclFromId(), CreateFunctionType(), GetOrCreateFunctionDecl(), GetOrCreateType(), and GetOrCreateTypedefType().
|
private |
Definition at line 646 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().