1359575Sdim// leaving this undefined ensures we will get a linker error if we try to use SBTypeToSWIGWrapper() 2359575Sdim// for a type for which we did not specialze this function 3359575Sdimtemplate <typename SBClass> 4359575SdimPyObject* 5359575SdimSBTypeToSWIGWrapper (SBClass* sb_object); 6359575Sdim 7359575Sdimtemplate <typename SBClass> 8359575SdimPyObject* 9359575SdimSBTypeToSWIGWrapper (SBClass& sb_object) 10359575Sdim{ 11359575Sdim return SBTypeToSWIGWrapper(&sb_object); 12359575Sdim} 13359575Sdim 14359575Sdimtemplate <typename SBClass> 15359575SdimPyObject* 16359575SdimSBTypeToSWIGWrapper (const SBClass& sb_object) 17359575Sdim{ 18359575Sdim return SBTypeToSWIGWrapper(&sb_object); 19359575Sdim} 20359575Sdim 21359575Sdimtemplate <> 22359575SdimPyObject* 23359575SdimSBTypeToSWIGWrapper (PyObject* py_object) 24359575Sdim{ 25359575Sdim return py_object; 26359575Sdim} 27359575Sdim 28359575Sdimtemplate <> 29359575SdimPyObject* 30359575SdimSBTypeToSWIGWrapper (unsigned int* c_int) 31359575Sdim{ 32359575Sdim if (!c_int) 33359575Sdim return NULL; 34359575Sdim return PyInt_FromLong(*c_int); 35359575Sdim} 36359575Sdim 37359575Sdimtemplate <> 38359575SdimPyObject* 39359575SdimSBTypeToSWIGWrapper (lldb::SBEvent* event_sb) 40359575Sdim{ 41359575Sdim return SWIG_NewPointerObj((void *) event_sb, SWIGTYPE_p_lldb__SBEvent, 0); 42359575Sdim} 43359575Sdim 44359575Sdimtemplate <> 45359575SdimPyObject* 46359575SdimSBTypeToSWIGWrapper (lldb::SBProcess* process_sb) 47359575Sdim{ 48359575Sdim return SWIG_NewPointerObj((void *) process_sb, SWIGTYPE_p_lldb__SBProcess, 0); 49359575Sdim} 50359575Sdim 51359575Sdimtemplate <> 52359575SdimPyObject* 53359575SdimSBTypeToSWIGWrapper (lldb::SBThread* thread_sb) 54359575Sdim{ 55359575Sdim return SWIG_NewPointerObj((void *) thread_sb, SWIGTYPE_p_lldb__SBThread, 0); 56359575Sdim} 57359575Sdim 58359575Sdimtemplate <> 59359575SdimPyObject* 60359575SdimSBTypeToSWIGWrapper (lldb::SBThreadPlan* thread_plan_sb) 61359575Sdim{ 62359575Sdim return SWIG_NewPointerObj((void *) thread_plan_sb, SWIGTYPE_p_lldb__SBThreadPlan, 0); 63359575Sdim} 64359575Sdim 65359575Sdimtemplate <> 66359575SdimPyObject* 67359575SdimSBTypeToSWIGWrapper (lldb::SBTarget* target_sb) 68359575Sdim{ 69359575Sdim return SWIG_NewPointerObj((void *) target_sb, SWIGTYPE_p_lldb__SBTarget, 0); 70359575Sdim} 71359575Sdim 72359575Sdimtemplate <> 73359575SdimPyObject* 74359575SdimSBTypeToSWIGWrapper (lldb::SBFrame* frame_sb) 75359575Sdim{ 76359575Sdim return SWIG_NewPointerObj((void *) frame_sb, SWIGTYPE_p_lldb__SBFrame, 0); 77359575Sdim} 78359575Sdim 79359575Sdimtemplate <> 80359575SdimPyObject* 81359575SdimSBTypeToSWIGWrapper (lldb::SBDebugger* debugger_sb) 82359575Sdim{ 83359575Sdim return SWIG_NewPointerObj((void *) debugger_sb, SWIGTYPE_p_lldb__SBDebugger, 0); 84359575Sdim} 85359575Sdim 86359575Sdimtemplate <> 87359575SdimPyObject* 88359575SdimSBTypeToSWIGWrapper (lldb::SBBreakpoint* breakpoint_sb) 89359575Sdim{ 90359575Sdim return SWIG_NewPointerObj((void *) breakpoint_sb, SWIGTYPE_p_lldb__SBBreakpoint, 0); 91359575Sdim} 92359575Sdim 93359575Sdimtemplate <> 94359575SdimPyObject* 95359575SdimSBTypeToSWIGWrapper (lldb::SBWatchpoint* watchpoint_sb) 96359575Sdim{ 97359575Sdim return SWIG_NewPointerObj((void *) watchpoint_sb, SWIGTYPE_p_lldb__SBWatchpoint, 0); 98359575Sdim} 99359575Sdim 100359575Sdimtemplate <> 101359575SdimPyObject* 102359575SdimSBTypeToSWIGWrapper (lldb::SBBreakpointLocation* breakpoint_location_sb) 103359575Sdim{ 104359575Sdim return SWIG_NewPointerObj((void *) breakpoint_location_sb, SWIGTYPE_p_lldb__SBBreakpointLocation, 0); 105359575Sdim} 106359575Sdim 107359575Sdimtemplate <> 108359575SdimPyObject* 109359575SdimSBTypeToSWIGWrapper (lldb::SBBreakpointName* breakpoint_name_sb) 110359575Sdim{ 111359575Sdim return SWIG_NewPointerObj((void *) breakpoint_name_sb, SWIGTYPE_p_lldb__SBBreakpointName, 0); 112359575Sdim} 113359575Sdim 114359575Sdimtemplate <> 115359575SdimPyObject* 116359575SdimSBTypeToSWIGWrapper (lldb::SBValue* value_sb) 117359575Sdim{ 118359575Sdim return SWIG_NewPointerObj((void *) value_sb, SWIGTYPE_p_lldb__SBValue, 0); 119359575Sdim} 120359575Sdim 121359575Sdimtemplate <> 122359575SdimPyObject* 123359575SdimSBTypeToSWIGWrapper (lldb::SBCommandReturnObject* cmd_ret_obj_sb) 124359575Sdim{ 125359575Sdim return SWIG_NewPointerObj((void *) cmd_ret_obj_sb, SWIGTYPE_p_lldb__SBCommandReturnObject, 0); 126359575Sdim} 127359575Sdim 128359575Sdimtemplate <> 129359575SdimPyObject* 130359575SdimSBTypeToSWIGWrapper (lldb::SBExecutionContext* ctx_sb) 131359575Sdim{ 132359575Sdim return SWIG_NewPointerObj((void *) ctx_sb, SWIGTYPE_p_lldb__SBExecutionContext, 0); 133359575Sdim} 134359575Sdim 135359575Sdimtemplate <> 136359575SdimPyObject* 137359575SdimSBTypeToSWIGWrapper (lldb::SBTypeSummaryOptions* summary_options_sb) 138359575Sdim{ 139359575Sdim return SWIG_NewPointerObj((void *) summary_options_sb, SWIGTYPE_p_lldb__SBTypeSummaryOptions, 0); 140359575Sdim} 141359575Sdim 142359575Sdimtemplate <> 143359575SdimPyObject* 144359575SdimSBTypeToSWIGWrapper (lldb::SBStructuredData* structured_data_sb) 145359575Sdim{ 146359575Sdim return SWIG_NewPointerObj((void *) structured_data_sb, SWIGTYPE_p_lldb__SBStructuredData, 0); 147359575Sdim} 148359575Sdim 149359575Sdimtemplate <> 150359575SdimPyObject* 151359575SdimSBTypeToSWIGWrapper (lldb::SBSymbolContext* sym_ctx_sb) 152359575Sdim{ 153359575Sdim return SWIG_NewPointerObj((void *) sym_ctx_sb, SWIGTYPE_p_lldb__SBSymbolContext, 0); 154359575Sdim} 155