#include "SymbolFileJSON.h"
#include "Plugins/ObjectFile/JSON/ObjectFileJSON.h"
#include "lldb/Core/Module.h"
#include "lldb/Core/PluginManager.h"
#include "lldb/Symbol/CompileUnit.h"
#include "lldb/Symbol/Function.h"
#include "lldb/Symbol/ObjectFile.h"
#include "lldb/Symbol/Symbol.h"
#include "lldb/Symbol/SymbolContext.h"
#include "lldb/Symbol/Symtab.h"
#include "lldb/Symbol/TypeList.h"
#include "lldb/Utility/LLDBLog.h"
#include "lldb/Utility/Log.h"
#include "lldb/Utility/RegularExpression.h"
#include "lldb/Utility/Timer.h"
#include "llvm/Support/MemoryBuffer.h"
#include <memory>
#include <optional>
usingnamespacellvm;
usingnamespacelldb;
usingnamespacelldb_private;
LLDB_PLUGIN_DEFINE(…)
char SymbolFileJSON::ID;
SymbolFileJSON::SymbolFileJSON(lldb::ObjectFileSP objfile_sp)
: … { … }
void SymbolFileJSON::Initialize() { … }
void SymbolFileJSON::Terminate() { … }
llvm::StringRef SymbolFileJSON::GetPluginDescriptionStatic() { … }
SymbolFile *SymbolFileJSON::CreateInstance(ObjectFileSP objfile_sp) { … }
uint32_t SymbolFileJSON::CalculateAbilities() { … }
uint32_t SymbolFileJSON::ResolveSymbolContext(const Address &so_addr,
SymbolContextItem resolve_scope,
SymbolContext &sc) { … }
CompUnitSP SymbolFileJSON::ParseCompileUnitAtIndex(uint32_t idx) { … }
void SymbolFileJSON::GetTypes(SymbolContextScope *sc_scope, TypeClass type_mask,
lldb_private::TypeList &type_list) { … }
void SymbolFileJSON::AddSymbols(Symtab &symtab) { … }