#include "lldb/Symbol/SymbolFileOnDemand.h"
#include "lldb/Core/Module.h"
#include "lldb/Symbol/SymbolFile.h"
#include <memory>
#include <optional>
usingnamespacelldb;
usingnamespacelldb_private;
char SymbolFileOnDemand::ID;
SymbolFileOnDemand::SymbolFileOnDemand(
std::unique_ptr<SymbolFile> &&symbol_file)
: … { … }
SymbolFileOnDemand::~SymbolFileOnDemand() = default;
uint32_t SymbolFileOnDemand::CalculateAbilities() { … }
std::recursive_mutex &SymbolFileOnDemand::GetModuleMutex() const { … }
void SymbolFileOnDemand::InitializeObject() { … }
lldb::LanguageType SymbolFileOnDemand::ParseLanguage(CompileUnit &comp_unit) { … }
XcodeSDK SymbolFileOnDemand::ParseXcodeSDK(CompileUnit &comp_unit) { … }
size_t SymbolFileOnDemand::ParseFunctions(CompileUnit &comp_unit) { … }
bool SymbolFileOnDemand::ParseLineTable(CompileUnit &comp_unit) { … }
bool SymbolFileOnDemand::ParseDebugMacros(CompileUnit &comp_unit) { … }
bool SymbolFileOnDemand::ForEachExternalModule(
CompileUnit &comp_unit,
llvm::DenseSet<lldb_private::SymbolFile *> &visited_symbol_files,
llvm::function_ref<bool(Module &)> lambda) { … }
bool SymbolFileOnDemand::ParseSupportFiles(CompileUnit &comp_unit,
SupportFileList &support_files) { … }
bool SymbolFileOnDemand::ParseIsOptimized(CompileUnit &comp_unit) { … }
size_t SymbolFileOnDemand::ParseTypes(CompileUnit &comp_unit) { … }
bool SymbolFileOnDemand::ParseImportedModules(
const lldb_private::SymbolContext &sc,
std::vector<SourceModule> &imported_modules) { … }
size_t SymbolFileOnDemand::ParseBlocksRecursive(Function &func) { … }
size_t SymbolFileOnDemand::ParseVariablesForContext(const SymbolContext &sc) { … }
Type *SymbolFileOnDemand::ResolveTypeUID(lldb::user_id_t type_uid) { … }
std::optional<SymbolFile::ArrayInfo>
SymbolFileOnDemand::GetDynamicArrayInfoForUID(
lldb::user_id_t type_uid, const lldb_private::ExecutionContext *exe_ctx) { … }
bool SymbolFileOnDemand::CompleteType(CompilerType &compiler_type) { … }
CompilerDecl SymbolFileOnDemand::GetDeclForUID(lldb::user_id_t type_uid) { … }
CompilerDeclContext
SymbolFileOnDemand::GetDeclContextForUID(lldb::user_id_t type_uid) { … }
CompilerDeclContext
SymbolFileOnDemand::GetDeclContextContainingUID(lldb::user_id_t type_uid) { … }
void SymbolFileOnDemand::ParseDeclsForContext(CompilerDeclContext decl_ctx) { … }
uint32_t
SymbolFileOnDemand::ResolveSymbolContext(const Address &so_addr,
SymbolContextItem resolve_scope,
SymbolContext &sc) { … }
Status SymbolFileOnDemand::CalculateFrameVariableError(StackFrame &frame) { … }
uint32_t SymbolFileOnDemand::ResolveSymbolContext(
const SourceLocationSpec &src_location_spec,
SymbolContextItem resolve_scope, SymbolContextList &sc_list) { … }
void SymbolFileOnDemand::Dump(lldb_private::Stream &s) { … }
void SymbolFileOnDemand::DumpClangAST(lldb_private::Stream &s) { … }
void SymbolFileOnDemand::FindGlobalVariables(const RegularExpression ®ex,
uint32_t max_matches,
VariableList &variables) { … }
void SymbolFileOnDemand::FindGlobalVariables(
ConstString name, const CompilerDeclContext &parent_decl_ctx,
uint32_t max_matches, VariableList &variables) { … }
void SymbolFileOnDemand::FindFunctions(const RegularExpression ®ex,
bool include_inlines,
SymbolContextList &sc_list) { … }
void SymbolFileOnDemand::FindFunctions(
const Module::LookupInfo &lookup_info,
const CompilerDeclContext &parent_decl_ctx, bool include_inlines,
SymbolContextList &sc_list) { … }
void SymbolFileOnDemand::GetMangledNamesForFunction(
const std::string &scope_qualified_name,
std::vector<ConstString> &mangled_names) { … }
void SymbolFileOnDemand::FindTypes(const TypeQuery &match,
TypeResults &results) { … }
void SymbolFileOnDemand::GetTypes(SymbolContextScope *sc_scope,
TypeClass type_mask, TypeList &type_list) { … }
llvm::Expected<lldb::TypeSystemSP>
SymbolFileOnDemand::GetTypeSystemForLanguage(LanguageType language) { … }
CompilerDeclContext
SymbolFileOnDemand::FindNamespace(ConstString name,
const CompilerDeclContext &parent_decl_ctx,
bool only_root_namespaces) { … }
std::vector<std::unique_ptr<lldb_private::CallEdge>>
SymbolFileOnDemand::ParseCallEdgesInFunction(UserID func_id) { … }
lldb::UnwindPlanSP
SymbolFileOnDemand::GetUnwindPlan(const Address &address,
const RegisterInfoResolver &resolver) { … }
llvm::Expected<lldb::addr_t>
SymbolFileOnDemand::GetParameterStackSize(Symbol &symbol) { … }
void SymbolFileOnDemand::PreloadSymbols() { … }
uint64_t SymbolFileOnDemand::GetDebugInfoSize(bool load_all_debug_info) { … }
StatsDuration::Duration SymbolFileOnDemand::GetDebugInfoParseTime() { … }
StatsDuration::Duration SymbolFileOnDemand::GetDebugInfoIndexTime() { … }
void SymbolFileOnDemand::SetLoadDebugInfoEnabled() { … }
uint32_t SymbolFileOnDemand::GetNumCompileUnits() { … }
CompUnitSP SymbolFileOnDemand::GetCompileUnitAtIndex(uint32_t idx) { … }
uint32_t SymbolFileOnDemand::GetAbilities() { … }