9#ifndef LLDB_LLDB_PRIVATE_INTERFACES_H
10#define LLDB_LLDB_PRIVATE_INTERFACES_H
12#if defined(__cplusplus)
29typedef lldb::ABISP (*ABICreateInstance)(lldb::ProcessSP process_sp,
30 const ArchSpec &arch);
31typedef std::unique_ptr<Architecture> (*ArchitectureCreateInstance)(
32 const ArchSpec &arch);
33typedef Disassembler *(*DisassemblerCreateInstance)(
const ArchSpec &arch,
37typedef lldb::JITLoaderSP (*JITLoaderCreateInstance)(
Process *process,
39typedef ObjectContainer *(*ObjectContainerCreateInstance)(
40 const lldb::ModuleSP &module_sp, lldb::DataBufferSP &data_sp,
43typedef ObjectContainer *(*ObjectContainerCreateMemoryInstance)(
44 const lldb::ModuleSP &module_sp, lldb::WritableDataBufferSP data_sp,
46typedef size_t (*ObjectFileGetModuleSpecifications)(
47 const FileSpec &file, lldb::DataBufferSP &data_sp,
50typedef ObjectFile *(*ObjectFileCreateInstance)(
const lldb::ModuleSP &module_sp,
51 lldb::DataBufferSP data_sp,
56typedef ObjectFile *(*ObjectFileCreateMemoryInstance)(
57 const lldb::ModuleSP &module_sp, lldb::WritableDataBufferSP data_sp,
59typedef bool (*ObjectFileSaveCore)(
const lldb::ProcessSP &process_sp,
60 const FileSpec &outfile,
63typedef EmulateInstruction *(*EmulateInstructionCreateInstance)(
65typedef OperatingSystem *(*OperatingSystemCreateInstance)(
Process *process,
68typedef LanguageRuntime *(*LanguageRuntimeCreateInstance)(
70typedef lldb::CommandObjectSP (*LanguageRuntimeGetCommandObject)(
71 CommandInterpreter &interpreter);
72typedef lldb::BreakpointPreconditionSP (
77typedef Status (*StructuredDataFilterLaunchInfo)(ProcessLaunchInfo &launch_info,
80typedef lldb::PlatformSP (*PlatformCreateInstance)(
bool force,
81 const ArchSpec *arch);
82typedef lldb::ProcessSP (*ProcessCreateInstance)(
83 lldb::TargetSP target_sp, lldb::ListenerSP listener_sp,
84 const FileSpec *crash_file_path,
bool can_connect);
87typedef SymbolFile *(*SymbolFileCreateInstance)(lldb::ObjectFileSP objfile_sp);
88typedef SymbolVendor *(*SymbolVendorCreateInstance)(
89 const lldb::ModuleSP &module_sp,
92typedef bool (*BreakpointHitCallback)(
void *baton,
93 StoppointCallbackContext *context,
96typedef bool (*WatchpointHitCallback)(
void *baton,
97 StoppointCallbackContext *context,
99typedef bool (*ThreadPlanShouldStopHereCallback)(
101 Status &status,
void *baton);
102typedef lldb::ThreadPlanSP (*ThreadPlanStepFromHereCallback)(
104 Status &status,
void *baton);
105typedef UnwindAssembly *(*UnwindAssemblyCreateInstance)(
const ArchSpec &arch);
106typedef lldb::MemoryHistorySP (*MemoryHistoryCreateInstance)(
107 const lldb::ProcessSP &process_sp);
110 const lldb::ProcessSP &process_sp);
115 Debugger *debugger,
Target *target,
116 const char *repl_options);
117typedef int (*ComparisonFunction)(
const void *,
const void *);
122 const llvm::json::Value &trace_bundle_description,
124typedef llvm::Expected<lldb::TraceSP> (*TraceCreateInstanceForLiveProcess)(
127typedef lldb::CommandObjectSP (*ThreadTraceExportCommandCreator)(
128 CommandInterpreter &interpreter);
static llvm::raw_ostream & error(Stream &strm)
A class to manage flag bits.
A stream class that can stream formatted output to a file.
A class that represents a running process on the host machine.
InstructionType
Instruction types.
FrameComparison
This is the return value for frame comparisons.
LanguageType
Programming language type.
InstrumentationRuntimeType