9 #ifndef LLDB_LLDB_PRIVATE_INTERFACES_H
10 #define LLDB_LLDB_PRIVATE_INTERFACES_H
12 #if defined(__cplusplus)
29 typedef lldb::ABISP (*ABICreateInstance)(lldb::ProcessSP process_sp,
30 const ArchSpec &arch);
31 typedef std::unique_ptr<Architecture> (*ArchitectureCreateInstance)(
32 const ArchSpec &arch);
33 typedef Disassembler *(*DisassemblerCreateInstance)(
const ArchSpec &arch,
37 typedef lldb::JITLoaderSP (*JITLoaderCreateInstance)(
Process *process,
39 typedef ObjectContainer *(*ObjectContainerCreateInstance)(
40 const lldb::ModuleSP &module_sp, lldb::DataBufferSP &data_sp,
43 typedef size_t (*ObjectFileGetModuleSpecifications)(
44 const FileSpec &file, lldb::DataBufferSP &data_sp,
47 typedef ObjectFile *(*ObjectFileCreateInstance)(
const lldb::ModuleSP &module_sp,
48 lldb::DataBufferSP data_sp,
53 typedef ObjectFile *(*ObjectFileCreateMemoryInstance)(
54 const lldb::ModuleSP &module_sp, lldb::WritableDataBufferSP data_sp,
56 typedef bool (*ObjectFileSaveCore)(
const lldb::ProcessSP &process_sp,
57 const FileSpec &outfile,
60 typedef EmulateInstruction *(*EmulateInstructionCreateInstance)(
62 typedef OperatingSystem *(*OperatingSystemCreateInstance)(
Process *process,
65 typedef LanguageRuntime *(*LanguageRuntimeCreateInstance)(
67 typedef lldb::CommandObjectSP (*LanguageRuntimeGetCommandObject)(
68 CommandInterpreter &interpreter);
69 typedef lldb::BreakpointPreconditionSP (
74 typedef Status (*StructuredDataFilterLaunchInfo)(ProcessLaunchInfo &launch_info,
77 typedef lldb::PlatformSP (*PlatformCreateInstance)(
bool force,
78 const ArchSpec *arch);
79 typedef lldb::ProcessSP (*ProcessCreateInstance)(
80 lldb::TargetSP target_sp, lldb::ListenerSP listener_sp,
81 const FileSpec *crash_file_path,
bool can_connect);
84 typedef SymbolFile *(*SymbolFileCreateInstance)(lldb::ObjectFileSP objfile_sp);
85 typedef SymbolVendor *(*SymbolVendorCreateInstance)(
86 const lldb::ModuleSP &module_sp,
89 typedef bool (*BreakpointHitCallback)(
void *baton,
90 StoppointCallbackContext *context,
93 typedef bool (*WatchpointHitCallback)(
void *baton,
94 StoppointCallbackContext *context,
96 typedef bool (*ThreadPlanShouldStopHereCallback)(
98 Status &status,
void *baton);
99 typedef lldb::ThreadPlanSP (*ThreadPlanStepFromHereCallback)(
101 Status &status,
void *baton);
102 typedef UnwindAssembly *(*UnwindAssemblyCreateInstance)(
const ArchSpec &arch);
103 typedef lldb::MemoryHistorySP (*MemoryHistoryCreateInstance)(
104 const lldb::ProcessSP &process_sp);
107 const lldb::ProcessSP &process_sp);
112 Debugger *debugger,
Target *target,
113 const char *repl_options);
114 typedef int (*ComparisonFunction)(
const void *,
const void *);
119 const llvm::json::Value &trace_bundle_description,
121 typedef llvm::Expected<lldb::TraceSP> (*TraceCreateInstanceForLiveProcess)(
124 typedef lldb::CommandObjectSP (*ThreadTraceExportCommandCreator)(
125 CommandInterpreter &interpreter);
129 #endif // #if defined(__cplusplus)
131 #endif // LLDB_LLDB_PRIVATE_INTERFACES_H