9#ifndef LLDB_SOURCE_PLUGINS_SYMBOLFILE_DWARF_SYMBOLFILEDWARFDWO_H
10#define LLDB_SOURCE_PLUGINS_SYMBOLFILE_DWARF_SYMBOLFILEDWARFDWO_H
24 bool isA(
const void *ClassID)
const override {
38 llvm::function_ref<
bool(
DWARFDIE die)> callback)
override;
40 llvm::Expected<lldb::TypeSystemSP>
48 const uint8_t op)
const override;
52 std::vector<Value> &stack)
const override;
76 bool must_be_implementation)
override;
Represents a generic declaration context in a program.
A uniqued constant string class.
Provides public interface for all SymbolFiles.
virtual bool isA(const void *ClassID) const
LLVM RTTI support.
Identifies a DWARF debug info entry within a given Module.
CompilerTypeToDIE & GetForwardDeclCompilerTypeToDIE() override
UniqueDWARFASTTypeMap & GetUniqueDWARFASTTypeMap() override
DWARFCompileUnit * FindSingleCompileUnit()
If this file contains exactly one compile unit, this function will return it.
bool isA(const void *ClassID) const override
LLVM RTTI support.
DIEToTypePtr & GetDIEToType() override
DIEToVariableSP & GetDIEToVariable() override
lldb::TypeSP FindCompleteObjCDefinitionTypeForDIE(const DWARFDIE &die, ConstString type_name, bool must_be_implementation) override
SymbolFileDWARF & m_base_symbol_file
static bool classof(const SymbolFile *obj)
SymbolFileDWARF & GetBaseSymbolFile() const
~SymbolFileDWARFDwo() override=default
llvm::Expected< lldb::TypeSystemSP > GetTypeSystemForLanguage(lldb::LanguageType language) override
void FindGlobalVariables(ConstString name, const CompilerDeclContext &parent_decl_ctx, uint32_t max_matches, VariableList &variables) override
lldb::TypeSP FindDefinitionTypeForDWARFDeclContext(const DWARFDIE &die) override
DIEToCompilerType & GetForwardDeclDIEToCompilerType() override
DWARFDIE GetDIE(const DIERef &die_ref) override
DWARFCompileUnit * GetDWOCompileUnitForHash(uint64_t hash)
void GetObjCMethods(ConstString class_name, llvm::function_ref< bool(DWARFDIE die)> callback) override
static char ID
LLVM RTTI support.
bool ParseVendorDWARFOpcode(uint8_t op, const DataExtractor &opcodes, lldb::offset_t &offset, std::vector< Value > &stack) const override
lldb::offset_t GetVendorDWARFOpcodeSize(const DataExtractor &data, const lldb::offset_t data_offset, const uint8_t op) const override
llvm::DenseMap< lldb::opaque_compiler_type_t, DIERef > CompilerTypeToDIE
llvm::DenseMap< const DWARFDebugInfoEntry *, Type * > DIEToTypePtr
llvm::DenseMap< const DWARFDebugInfoEntry *, lldb::VariableSP > DIEToVariableSP
friend class SymbolFileDWARFDwo
bool isA(const void *ClassID) const override
LLVM RTTI support.
llvm::DenseMap< const DWARFDebugInfoEntry *, lldb::opaque_compiler_type_t > DIEToCompilerType
std::shared_ptr< lldb_private::ObjectFile > ObjectFileSP
LanguageType
Programming language type.
std::shared_ptr< lldb_private::Type > TypeSP