9#ifndef LLDB_SOURCE_PLUGINS_SYMBOLFILE_JSON_SYMBOLFILEJSON_H
10#define LLDB_SOURCE_PLUGINS_SYMBOLFILE_JSON_SYMBOLFILEJSON_H
28 bool isA(
const void *ClassID)
const override {
70 std::vector<lldb_private::SourceModule> &imported_modules)
override {
94 lldb::SymbolContextItem resolve_scope,
98 lldb::TypeClass type_mask,
106 std::vector<std::pair<uint64_t, std::string>>
m_symbols;
A section + offset based address class.
A class that describes a compilation unit.
Generic representation of a type in a programming language.
"lldb/Target/ExecutionContext.h" A class that contains an execution context.
A class that describes a function.
A list of support files for a CompileUnit.
"lldb/Symbol/SymbolContextScope.h" Inherit from this if your object is part of a symbol context and c...
Defines a symbol context baton that can be handed other debug core functions.
Containing protected virtual methods for child classes to override.
bool isA(const void *ClassID) const override
LLVM RTTI support.
llvm::StringRef GetPluginName() override
static char ID
LLVM RTTI support.
bool CompleteType(CompilerType &compiler_type) override
size_t ParseVariablesForContext(const SymbolContext &sc) override
size_t ParseTypes(CompileUnit &cu) override
uint32_t ResolveSymbolContext(const lldb_private::Address &so_addr, lldb::SymbolContextItem resolve_scope, lldb_private::SymbolContext &sc) override
bool ParseDebugMacros(CompileUnit &comp_unit) override
void AddSymbols(Symtab &symtab) override
bool isA(const void *ClassID) const override
LLVM RTTI support.
uint32_t CalculateNumCompileUnits() override
static llvm::StringRef GetPluginNameStatic()
Type * ResolveTypeUID(lldb::user_id_t type_uid) override
std::optional< ArrayInfo > GetDynamicArrayInfoForUID(lldb::user_id_t type_uid, const lldb_private::ExecutionContext *exe_ctx) override
If type_uid points to an array type, return its characteristics.
static bool classof(const SymbolFile *obj)
void GetTypes(lldb_private::SymbolContextScope *sc_scope, lldb::TypeClass type_mask, lldb_private::TypeList &type_list) override
uint32_t CalculateAbilities() override
bool ParseSupportFiles(CompileUnit &comp_unit, SupportFileList &support_files) override
bool ParseImportedModules(const SymbolContext &sc, std::vector< lldb_private::SourceModule > &imported_modules) override
size_t ParseFunctions(CompileUnit &comp_unit) override
size_t ParseBlocksRecursive(Function &func) override
bool ParseLineTable(CompileUnit &comp_unit) override
lldb::LanguageType ParseLanguage(CompileUnit &comp_unit) override
lldb::addr_t GetBaseFileAddress()
static llvm::StringRef GetPluginDescriptionStatic()
static lldb_private::SymbolFile * CreateInstance(lldb::ObjectFileSP objfile_sp)
lldb::CompUnitSP ParseCompileUnitAtIndex(uint32_t index) override
std::vector< std::pair< uint64_t, std::string > > m_symbols
Provides public interface for all SymbolFiles.
virtual bool isA(const void *ClassID) const
LLVM RTTI support.
A class that represents a running process on the host machine.
std::shared_ptr< lldb_private::ObjectFile > ObjectFileSP
LanguageType
Programming language type.
@ eLanguageTypeUnknown
Unknown or invalid language value.
std::shared_ptr< lldb_private::CompileUnit > CompUnitSP