156 lines · plain
1namespace lldb_private {2namespace python {3 4PythonObject ToSWIGHelper(void *obj, swig_type_info *info) {5 return {PyRefType::Owned, SWIG_NewPointerObj(obj, info, SWIG_POINTER_OWN)};6}7 8PythonObject SWIGBridge::ToSWIGWrapper(std::unique_ptr<lldb::SBValue> value_sb) {9 return ToSWIGHelper(value_sb.release(), SWIGTYPE_p_lldb__SBValue);10}11 12PythonObject SWIGBridge::ToSWIGWrapper(std::unique_ptr<lldb::SBCommandReturnObject> result_up) {13 return ToSWIGHelper(result_up.release(), SWIGTYPE_p_lldb__SBCommandReturnObject);14}15 16PythonObject SWIGBridge::ToSWIGWrapper(lldb::ValueObjectSP value_sp) {17 return ToSWIGWrapper(std::unique_ptr<lldb::SBValue>(new lldb::SBValue(value_sp)));18}19 20PythonObject SWIGBridge::ToSWIGWrapper(lldb::TargetSP target_sp) {21 return ToSWIGHelper(new lldb::SBTarget(std::move(target_sp)),22 SWIGTYPE_p_lldb__SBTarget);23}24 25PythonObject SWIGBridge::ToSWIGWrapper(lldb::ProcessSP process_sp) {26 return ToSWIGHelper(new lldb::SBProcess(std::move(process_sp)),27 SWIGTYPE_p_lldb__SBProcess);28}29 30PythonObject SWIGBridge::ToSWIGWrapper(lldb::ModuleSP module_sp) {31 return ToSWIGHelper(new lldb::SBModule(std::move(module_sp)),32 SWIGTYPE_p_lldb__SBModule);33}34 35PythonObject SWIGBridge::ToSWIGWrapper(lldb::ThreadPlanSP thread_plan_sp) {36 return ToSWIGHelper(new lldb::SBThreadPlan(std::move(thread_plan_sp)),37 SWIGTYPE_p_lldb__SBThreadPlan);38}39 40PythonObject SWIGBridge::ToSWIGWrapper(lldb::StackFrameListSP frames_sp) {41 return ToSWIGHelper(new lldb::SBFrameList(std::move(frames_sp)),42 SWIGTYPE_p_lldb__SBFrameList);43}44 45PythonObject SWIGBridge::ToSWIGWrapper(lldb::BreakpointSP breakpoint_sp) {46 return ToSWIGHelper(new lldb::SBBreakpoint(std::move(breakpoint_sp)),47 SWIGTYPE_p_lldb__SBBreakpoint);48}49 50PythonObject SWIGBridge::ToSWIGWrapper(Status&& status) {51 return ToSWIGHelper(new lldb::SBError(std::move(status)), SWIGTYPE_p_lldb__SBError);52}53 54PythonObject SWIGBridge::ToSWIGWrapper(std::unique_ptr<lldb::SBStructuredData> data_sb) {55 return ToSWIGHelper(data_sb.release(), SWIGTYPE_p_lldb__SBStructuredData);56}57 58PythonObject SWIGBridge::ToSWIGWrapper(const StructuredDataImpl &data_impl) {59 return ToSWIGWrapper(std::unique_ptr<lldb::SBStructuredData>(new lldb::SBStructuredData(data_impl)));60}61 62PythonObject SWIGBridge::ToSWIGWrapper(lldb::ThreadSP thread_sp) {63 return ToSWIGHelper(new lldb::SBThread(std::move(thread_sp)),64 SWIGTYPE_p_lldb__SBThread);65}66 67PythonObject SWIGBridge::ToSWIGWrapper(lldb::StackFrameSP frame_sp) {68 return ToSWIGHelper(new lldb::SBFrame(std::move(frame_sp)),69 SWIGTYPE_p_lldb__SBFrame);70}71 72PythonObject SWIGBridge::ToSWIGWrapper(lldb::DebuggerSP debugger_sp) {73 return ToSWIGHelper(new lldb::SBDebugger(std::move(debugger_sp)),74 SWIGTYPE_p_lldb__SBDebugger);75}76 77PythonObject SWIGBridge::ToSWIGWrapper(lldb::WatchpointSP watchpoint_sp) {78 return ToSWIGHelper(new lldb::SBWatchpoint(std::move(watchpoint_sp)),79 SWIGTYPE_p_lldb__SBWatchpoint);80}81 82PythonObject SWIGBridge::ToSWIGWrapper(lldb::BreakpointLocationSP bp_loc_sp) {83 return ToSWIGHelper(new lldb::SBBreakpointLocation(std::move(bp_loc_sp)),84 SWIGTYPE_p_lldb__SBBreakpointLocation);85}86 87PythonObject SWIGBridge::ToSWIGWrapper(lldb::ExecutionContextRefSP ctx_sp) {88 return ToSWIGHelper(new lldb::SBExecutionContext(std::move(ctx_sp)),89 SWIGTYPE_p_lldb__SBExecutionContext);90}91 92PythonObject SWIGBridge::ToSWIGWrapper(lldb::TypeImplSP type_impl_sp) {93 return ToSWIGHelper(new lldb::SBType(type_impl_sp), SWIGTYPE_p_lldb__SBType);94}95 96PythonObject SWIGBridge::ToSWIGWrapper(const TypeSummaryOptions &summary_options) {97 return ToSWIGHelper(new lldb::SBTypeSummaryOptions(summary_options),98 SWIGTYPE_p_lldb__SBTypeSummaryOptions);99}100 101PythonObject SWIGBridge::ToSWIGWrapper(const SymbolContext &sym_ctx) {102 return ToSWIGHelper(new lldb::SBSymbolContext(sym_ctx),103 SWIGTYPE_p_lldb__SBSymbolContext);104}105 106PythonObject SWIGBridge::ToSWIGWrapper(lldb::ProcessLaunchInfoSP launch_info_sp) {107 return ToSWIGHelper(new lldb::ProcessLaunchInfoSP(std::move(launch_info_sp)),108 SWIGTYPE_p_lldb__SBLaunchInfo);109 }110 111 PythonObject SWIGBridge::ToSWIGWrapper(lldb::ProcessAttachInfoSP attach_info_sp) {112 return ToSWIGHelper(new lldb::ProcessAttachInfoSP(std::move(attach_info_sp)),113 SWIGTYPE_p_lldb__SBAttachInfo);114 }115 116PythonObject SWIGBridge::ToSWIGWrapper(lldb::DataExtractorSP data_sp) {117 return ToSWIGHelper(new lldb::DataExtractorSP(std::move(data_sp)),118 SWIGTYPE_p_lldb__SBData);119}120 121ScopedPythonObject<lldb::SBCommandReturnObject>122SWIGBridge::ToSWIGWrapper(CommandReturnObject &cmd_retobj) {123 return ScopedPythonObject<lldb::SBCommandReturnObject>(124 new lldb::SBCommandReturnObject(cmd_retobj),125 SWIGTYPE_p_lldb__SBCommandReturnObject);126}127 128PythonObject SWIGBridge::ToSWIGWrapper(const Stream *s) {129 return ToSWIGHelper(new lldb::SBStream(), SWIGTYPE_p_lldb__SBStream);130}131 132PythonObject SWIGBridge::ToSWIGWrapper(std::shared_ptr<lldb::SBStream> stream_sb) {133 return ToSWIGHelper(stream_sb.get(), SWIGTYPE_p_lldb__SBStream);134}135 136PythonObject SWIGBridge::ToSWIGWrapper(Event *event) {137 return ToSWIGHelper(new lldb::SBEvent(event), SWIGTYPE_p_lldb__SBEvent);138}139 140PythonObject SWIGBridge::ToSWIGWrapper(141 std::unique_ptr<lldb::SBFileSpec> file_spec_sb) {142 return ToSWIGHelper(file_spec_sb.release(), SWIGTYPE_p_lldb__SBFileSpec);143}144 145PythonObject SWIGBridge::ToSWIGWrapper(146 std::unique_ptr<lldb::SBModuleSpec> module_spec_sb) {147 return ToSWIGHelper(module_spec_sb.release(), SWIGTYPE_p_lldb__SBModuleSpec);148}149 150PythonObject SWIGBridge::ToSWIGWrapper(lldb::DescriptionLevel level) {151 return PythonInteger((int64_t) level);152}153 154} // namespace python155} // namespace lldb_private156