9#ifndef LLDB_SOURCE_PLUGINS_SCRIPTINTERPRETER_PYTHON_SWIGPYTHONBRIDGE_H
10#define LLDB_SOURCE_PLUGINS_SCRIPTINTERPRETER_PYTHON_SWIGPYTHONBRIDGE_H
21#include "llvm/Support/Error.h"
123 const char *python_function_name,
const char *session_dictionary_name,
129 const char *python_function_name,
const char *session_dictionary_name,
134 const char *session_dictionary_name,
138 const char *python_function_name,
const void *session_dictionary,
144 const char *session_dictionary_name,
149 const char *session_dictionary_name,
160 const char *child_name);
175 const char *session_dictionary_name,
191 static std::optional<std::string>
193 std::string &command);
197 PyObject *implementor, std::vector<llvm::StringRef> &args_impl,
198 size_t args_pos,
size_t pos_in_arg);
202 PyObject *implementor, llvm::StringRef &long_option,
size_t pos_in_arg);
205 const char *session_dictionary_name,
210 const char *session_dictionary_name,
215 const char *session_dictionary_name,
220 const char *session_dictionary_name);
230 const char *python_function_name,
const char *session_dictionary_name,
233 static std::optional<std::string>
235 const char *session_dictionary_name,
239 const char *python_function_name,
const char *session_dictionary_name,
242 static std::optional<std::string>
244 const char *session_dictionary_name,
248 const char *python_function_name,
const char *session_dictionary_name,
A stream class that can stream formatted output to a file.
std::shared_ptr< Dictionary > DictionarySP
Defines a symbol context baton that can be handed other debug core functions.
static PythonObject ToSWIGWrapper(lldb::DescriptionLevel level)
static PyObject * LLDBSwigPython_GetRecognizedArguments(PyObject *implementor, const lldb::StackFrameSP &frame_sp)
static PythonObject ToSWIGWrapper(std::unique_ptr< lldb::SBModuleSpec > module_spec_sb)
static PythonObject ToSWIGWrapper(std::unique_ptr< lldb::SBStructuredData > data_sb)
static PythonObject ToSWIGWrapper(lldb::ProcessAttachInfoSP attach_info_sp)
static PythonObject ToSWIGWrapper(lldb::DataExtractorSP data_extractor_sp)
static PythonObject ToSWIGWrapper(lldb::StackFrameSP frame_sp)
static PythonObject ToSWIGWrapper(lldb::ValueObjectSP value_sp)
static bool LLDBSWIGPythonRunScriptKeywordValue(const char *python_function_name, const char *session_dictionary_name, const lldb::ValueObjectSP &value, std::string &output)
static bool LLDBSwigPythonCallParsedCommandObject(PyObject *implementor, lldb::DebuggerSP debugger, StructuredDataImpl &args_impl, lldb_private::CommandReturnObject &cmd_retobj, lldb::ExecutionContextRefSP exe_ctx_ref_sp)
static bool LLDBSwigPythonCallTypeScript(const char *python_function_name, const void *session_dictionary, const lldb::ValueObjectSP &valobj_sp, void **pyfunct_wrapper, const lldb::TypeSummaryOptionsSP &options_sp, std::string &retval)
static void * LLDBSWIGPython_GetDynamicSetting(void *module, const char *setting, const lldb::TargetSP &target_sp)
static PythonObject ToSWIGWrapper(const SymbolContext &sym_ctx)
static python::ScopedPythonObject< lldb::SBCommandReturnObject > ToSWIGWrapper(CommandReturnObject &cmd_retobj)
static lldb::ValueObjectSP LLDBSWIGPython_GetValueObjectSPFromSBValue(void *data)
static PythonObject ToSWIGWrapper(lldb::ProcessSP process_sp)
static std::optional< std::string > LLDBSWIGPythonRunScriptKeywordThread(const char *python_function_name, const char *session_dictionary_name, lldb::ThreadSP thread)
static StructuredData::DictionarySP LLDBSwigPythonHandleArgumentCompletionForScriptedCommand(PyObject *implementor, std::vector< llvm::StringRef > &args_impl, size_t args_pos, size_t pos_in_arg)
static PythonObject ToSWIGWrapper(Status &&status)
static python::PythonObject LLDBSWIGPythonCreateOSPlugin(const char *python_class_name, const char *session_dictionary_name, const lldb::ProcessSP &process_sp)
static bool LLDBSwigPythonCallCommand(const char *python_function_name, const char *session_dictionary_name, lldb::DebuggerSP debugger, const char *args, lldb_private::CommandReturnObject &cmd_retobj, lldb::ExecutionContextRefSP exe_ctx_ref_sp)
static PythonObject ToSWIGWrapper(lldb::TargetSP target_sp)
static PyObject * LLDBSwigPython_GetValueSynthProviderInstance(PyObject *implementor)
static PythonObject ToSWIGWrapper(lldb::ProcessLaunchInfoSP launch_info_sp)
static PythonObject ToSWIGWrapper(lldb::DebuggerSP debugger_sp)
static bool LLDBSwigPython_UpdateSynthProviderInstance(PyObject *implementor)
static PythonObject ToSWIGWrapper(lldb::ThreadPlanSP thread_plan_sp)
static StructuredData::DictionarySP LLDBSwigPythonHandleOptionArgumentCompletionForScriptedCommand(PyObject *implementor, llvm::StringRef &long_option, size_t pos_in_arg)
static PythonObject ToSWIGWrapper(lldb::ExecutionContextRefSP ctx_sp)
static bool LLDBSWIGPythonRunScriptKeywordTarget(const char *python_function_name, const char *session_dictionary_name, const lldb::TargetSP &target, std::string &output)
static uint32_t LLDBSwigPython_GetIndexOfChildWithName(PyObject *implementor, const char *child_name)
static std::optional< std::string > LLDBSwigPythonGetRepeatCommandForScriptedCommand(PyObject *implementor, std::string &command)
static std::optional< std::string > LLDBSWIGPythonRunScriptKeywordFrame(const char *python_function_name, const char *session_dictionary_name, lldb::StackFrameSP frame)
static PythonObject ToSWIGWrapper(lldb::BreakpointLocationSP bp_loc_sp)
static PyObject * LLDBSwigPython_GetChildAtIndex(PyObject *implementor, uint32_t idx)
static PythonObject ToSWIGWrapper(lldb::WatchpointSP watchpoint_sp)
static PythonObject ToSWIGWrapper(lldb::ModuleSP module_sp)
static bool LLDBSWIGPythonRunScriptKeywordProcess(const char *python_function_name, const char *session_dictionary_name, const lldb::ProcessSP &process, std::string &output)
static bool LLDBSwigPythonFormatterCallbackFunction(const char *python_function_name, const char *session_dictionary_name, lldb::TypeImplSP type_impl_sp)
static bool LLDBSwigPythonCallModuleInit(const char *python_module_name, const char *session_dictionary_name, lldb::DebuggerSP debugger)
static python::PythonObject LLDBSwigPythonCreateSyntheticProvider(const char *python_class_name, const char *session_dictionary_name, const lldb::ValueObjectSP &valobj_sp)
static bool LLDBSwigPythonWatchpointCallbackFunction(const char *python_function_name, const char *session_dictionary_name, const lldb::StackFrameSP &sb_frame, const lldb::WatchpointSP &sb_wp)
static python::PythonObject LLDBSWIGPython_CreateFrameRecognizer(const char *python_class_name, const char *session_dictionary_name)
static size_t LLDBSwigPython_CalculateNumChildren(PyObject *implementor, uint32_t max)
static PythonObject ToSWIGWrapper(std::unique_ptr< lldb::SBFileSpec > file_spec_sb)
static PythonObject ToSWIGWrapper(std::shared_ptr< lldb::SBStream > stream_sb)
static PythonObject ToSWIGWrapper(std::unique_ptr< lldb::SBValue > value_sb)
static PythonObject ToSWIGWrapper(lldb::BreakpointSP breakpoint_sp)
static PythonObject ToSWIGWrapper(const Stream *stream)
static PythonObject ToSWIGWrapper(const TypeSummaryOptions &summary_options)
static PythonObject ToSWIGWrapper(lldb::TypeImplSP type_impl_sp)
static PythonObject ToSWIGWrapper(lldb::StackFrameListSP frames_sp)
static bool LLDBSwigPythonCallCommandObject(PyObject *implementor, lldb::DebuggerSP debugger, const char *args, lldb_private::CommandReturnObject &cmd_retobj, lldb::ExecutionContextRefSP exe_ctx_ref_sp)
static bool LLDBSwigPython_MightHaveChildrenSynthProviderInstance(PyObject *implementor)
static PythonObject ToSWIGWrapper(std::unique_ptr< lldb::SBCommandReturnObject > result_up)
static PythonObject ToSWIGWrapper(Event *event)
static bool LLDBSwigPythonCallModuleNewTarget(const char *python_module_name, const char *session_dictionary_name, lldb::TargetSP target)
static python::PythonObject LLDBSwigPythonCreateCommandObject(const char *python_class_name, const char *session_dictionary_name, lldb::DebuggerSP debugger_sp)
static PythonObject ToSWIGWrapper(lldb::ThreadSP thread_sp)
static PythonObject ToSWIGWrapper(const StructuredDataImpl &data_impl)
static bool LLDBSwigPython_ShouldHide(PyObject *implementor, const lldb::StackFrameSP &frame_sp)
static llvm::Expected< bool > LLDBSwigPythonBreakpointCallbackFunction(const char *python_function_name, const char *session_dictionary_name, const lldb::StackFrameSP &sb_frame, const lldb::BreakpointLocationSP &sb_bp_loc, const lldb_private::StructuredDataImpl &args_impl)
A class that automatically clears an SB object when it goes out of scope.
ScopedPythonObject(ScopedPythonObject &&rhs)
ScopedPythonObject(T *sb, swig_type_info *info)
ScopedPythonObject & operator=(const ScopedPythonObject &)=delete
ScopedPythonObject & operator=(ScopedPythonObject &&)=delete
const PythonObject & obj() const
ScopedPythonObject(const ScopedPythonObject &)=delete
void * LLDBSWIGPython_CastPyObjectToSBExecutionContext(PyObject *data)
void * LLDBSWIGPython_CastPyObjectToSBFrameList(PyObject *data)
void * LLDBSWIGPython_CastPyObjectToSBThread(PyObject *data)
void * LLDBSWIGPython_CastPyObjectToSBData(PyObject *data)
void * LLDBSWIGPython_CastPyObjectToSBSymbolContext(PyObject *data)
void * LLDBSWIGPython_CastPyObjectToSBStream(PyObject *data)
void * LLDBSWIGPython_CastPyObjectToSBMemoryRegionInfo(PyObject *data)
struct swig_type_info swig_type_info
void * LLDBSWIGPython_CastPyObjectToSBBreakpointLocation(PyObject *data)
void * LLDBSWIGPython_CastPyObjectToSBError(PyObject *data)
python::PythonObject ToSWIGHelper(void *obj, swig_type_info *info)
void * LLDBSWIGPython_CastPyObjectToSBAttachInfo(PyObject *data)
void * LLDBSWIGPython_CastPyObjectToSBLaunchInfo(PyObject *data)
void * LLDBSWIGPython_CastPyObjectToSBValueList(PyObject *data)
void * LLDBSWIGPython_CastPyObjectToSBValue(PyObject *data)
void * LLDBSWIGPython_CastPyObjectToSBEvent(PyObject *data)
void * LLDBSWIGPython_CastPyObjectToSBBreakpoint(PyObject *data)
void * LLDBSWIGPython_CastPyObjectToSBFrame(PyObject *data)
A class that represents a running process on the host machine.
std::shared_ptr< lldb_private::ThreadPlan > ThreadPlanSP
std::shared_ptr< lldb_private::StackFrame > StackFrameSP
std::shared_ptr< lldb_private::BreakpointLocation > BreakpointLocationSP
DescriptionLevel
Description levels for "void GetDescription(Stream *, DescriptionLevel)" calls.
std::shared_ptr< lldb_private::Thread > ThreadSP
std::shared_ptr< lldb_private::ValueObject > ValueObjectSP
std::shared_ptr< lldb_private::ProcessAttachInfo > ProcessAttachInfoSP
std::shared_ptr< lldb_private::TypeSummaryOptions > TypeSummaryOptionsSP
std::shared_ptr< lldb_private::Breakpoint > BreakpointSP
std::shared_ptr< lldb_private::Process > ProcessSP
std::shared_ptr< lldb_private::Debugger > DebuggerSP
std::shared_ptr< lldb_private::Watchpoint > WatchpointSP
std::shared_ptr< lldb_private::TypeImpl > TypeImplSP
std::shared_ptr< lldb_private::Target > TargetSP
std::shared_ptr< lldb_private::DataExtractor > DataExtractorSP
std::shared_ptr< lldb_private::ProcessLaunchInfo > ProcessLaunchInfoSP
std::shared_ptr< lldb_private::Module > ModuleSP
std::shared_ptr< lldb_private::StackFrameList > StackFrameListSP
std::shared_ptr< lldb_private::ExecutionContextRef > ExecutionContextRefSP