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(lldb::ValueObjectSP value_sp) { 13 return ToSWIGWrapper(std::unique_ptr<lldb::SBValue>(new lldb::SBValue(value_sp))); 14} 15 16PythonObject SWIGBridge::ToSWIGWrapper(lldb::TargetSP target_sp) { 17 return ToSWIGHelper(new lldb::SBTarget(std::move(target_sp)), 18 SWIGTYPE_p_lldb__SBTarget); 19} 20 21PythonObject SWIGBridge::ToSWIGWrapper(lldb::ProcessSP process_sp) { 22 return ToSWIGHelper(new lldb::SBProcess(std::move(process_sp)), 23 SWIGTYPE_p_lldb__SBProcess); 24} 25 26PythonObject SWIGBridge::ToSWIGWrapper(lldb::ThreadPlanSP thread_plan_sp) { 27 return ToSWIGHelper(new lldb::SBThreadPlan(std::move(thread_plan_sp)), 28 SWIGTYPE_p_lldb__SBThreadPlan); 29} 30 31PythonObject SWIGBridge::ToSWIGWrapper(lldb::BreakpointSP breakpoint_sp) { 32 return ToSWIGHelper(new lldb::SBBreakpoint(std::move(breakpoint_sp)), 33 SWIGTYPE_p_lldb__SBBreakpoint); 34} 35 36PythonObject SWIGBridge::ToSWIGWrapper(const Status& status) { 37 return ToSWIGHelper(new lldb::SBError(status), SWIGTYPE_p_lldb__SBError); 38} 39 40PythonObject SWIGBridge::ToSWIGWrapper(std::unique_ptr<lldb::SBStream> stream_sb) { 41 return ToSWIGHelper(stream_sb.release(), SWIGTYPE_p_lldb__SBStream); 42} 43 44PythonObject SWIGBridge::ToSWIGWrapper(std::unique_ptr<lldb::SBStructuredData> data_sb) { 45 return ToSWIGHelper(data_sb.release(), SWIGTYPE_p_lldb__SBStructuredData); 46} 47 48PythonObject SWIGBridge::ToSWIGWrapper(const StructuredDataImpl &data_impl) { 49 return ToSWIGWrapper(std::unique_ptr<lldb::SBStructuredData>(new lldb::SBStructuredData(data_impl))); 50} 51 52PythonObject SWIGBridge::ToSWIGWrapper(lldb::ThreadSP thread_sp) { 53 return ToSWIGHelper(new lldb::SBThread(std::move(thread_sp)), 54 SWIGTYPE_p_lldb__SBThread); 55} 56 57PythonObject SWIGBridge::ToSWIGWrapper(lldb::StackFrameSP frame_sp) { 58 return ToSWIGHelper(new lldb::SBFrame(std::move(frame_sp)), 59 SWIGTYPE_p_lldb__SBFrame); 60} 61 62PythonObject SWIGBridge::ToSWIGWrapper(lldb::DebuggerSP debugger_sp) { 63 return ToSWIGHelper(new lldb::SBDebugger(std::move(debugger_sp)), 64 SWIGTYPE_p_lldb__SBDebugger); 65} 66 67PythonObject SWIGBridge::ToSWIGWrapper(lldb::WatchpointSP watchpoint_sp) { 68 return ToSWIGHelper(new lldb::SBWatchpoint(std::move(watchpoint_sp)), 69 SWIGTYPE_p_lldb__SBWatchpoint); 70} 71 72PythonObject SWIGBridge::ToSWIGWrapper(lldb::BreakpointLocationSP bp_loc_sp) { 73 return ToSWIGHelper(new lldb::SBBreakpointLocation(std::move(bp_loc_sp)), 74 SWIGTYPE_p_lldb__SBBreakpointLocation); 75} 76 77PythonObject SWIGBridge::ToSWIGWrapper(lldb::ExecutionContextRefSP ctx_sp) { 78 return ToSWIGHelper(new lldb::SBExecutionContext(std::move(ctx_sp)), 79 SWIGTYPE_p_lldb__SBExecutionContext); 80} 81 82PythonObject SWIGBridge::ToSWIGWrapper(lldb::TypeImplSP type_impl_sp) { 83 return ToSWIGHelper(new lldb::SBType(type_impl_sp), SWIGTYPE_p_lldb__SBType); 84} 85 86PythonObject SWIGBridge::ToSWIGWrapper(const TypeSummaryOptions &summary_options) { 87 return ToSWIGHelper(new lldb::SBTypeSummaryOptions(summary_options), 88 SWIGTYPE_p_lldb__SBTypeSummaryOptions); 89} 90 91PythonObject SWIGBridge::ToSWIGWrapper(const SymbolContext &sym_ctx) { 92 return ToSWIGHelper(new lldb::SBSymbolContext(sym_ctx), 93 SWIGTYPE_p_lldb__SBSymbolContext); 94} 95 96PythonObject SWIGBridge::ToSWIGWrapper(lldb::ProcessLaunchInfoSP launch_info_sp) { 97 return ToSWIGHelper(new lldb::ProcessLaunchInfoSP(std::move(launch_info_sp)), 98 SWIGTYPE_p_lldb__SBLaunchInfo); 99 } 100 101 PythonObject SWIGBridge::ToSWIGWrapper(lldb::ProcessAttachInfoSP attach_info_sp) { 102 return ToSWIGHelper(new lldb::ProcessAttachInfoSP(std::move(attach_info_sp)), 103 SWIGTYPE_p_lldb__SBAttachInfo); 104 } 105 106PythonObject SWIGBridge::ToSWIGWrapper(lldb::DataExtractorSP data_sp) { 107 return ToSWIGHelper(new lldb::DataExtractorSP(std::move(data_sp)), 108 SWIGTYPE_p_lldb__SBData); 109} 110 111ScopedPythonObject<lldb::SBCommandReturnObject> 112SWIGBridge::ToSWIGWrapper(CommandReturnObject &cmd_retobj) { 113 return ScopedPythonObject<lldb::SBCommandReturnObject>( 114 new lldb::SBCommandReturnObject(cmd_retobj), 115 SWIGTYPE_p_lldb__SBCommandReturnObject); 116} 117 118ScopedPythonObject<lldb::SBEvent> SWIGBridge::ToSWIGWrapper(Event *event) { 119 return ScopedPythonObject<lldb::SBEvent>(new lldb::SBEvent(event), 120 SWIGTYPE_p_lldb__SBEvent); 121} 122 123PythonObject SWIGBridge::ToSWIGWrapper( 124 std::unique_ptr<lldb::SBFileSpec> file_spec_sb) { 125 return ToSWIGHelper(file_spec_sb.release(), SWIGTYPE_p_lldb__SBFileSpec); 126} 127 128PythonObject SWIGBridge::ToSWIGWrapper( 129 std::unique_ptr<lldb::SBModuleSpec> module_spec_sb) { 130 return ToSWIGHelper(module_spec_sb.release(), SWIGTYPE_p_lldb__SBModuleSpec); 131} 132 133} // namespace python 134} // namespace lldb_private 135