[lldb] Make use of Scripted{Python,}Interface for ScriptedThreadPlan (#70392)
This patch makes ScriptedThreadPlan conforming to the ScriptedInterface
& ScriptedPythonInterface facilities by introducing 2
ScriptedThreadPlanInterface & ScriptedThreadPlanPythonInterface classes.
This allows us to get rid of every ScriptedThreadPlan-specific SWIG
method and re-use the same affordances as other scripting offordances,
like Scripted{Process,Thread,Platform} & OperatingSystem.
To do so, this adds new transformer methods for `ThreadPlan`, `Stream` &
`Event`, to allow the bijection between C++ objects and their python
counterparts.
Signed-off-by: Med Ismail Bennani <ismail@bennani.ma>
This commit is contained in:
1 parent
c2f642d90d
commit
4b3cd379cc
23 files changed
+401
-407
No files matched your search
@@ -224,6 +224,10 @@ protected:
|
||||
return python::SWIGBridge::ToSWIGWrapper(arg);
|
||||
}
|
||||
|
||||
python::PythonObject Transform(lldb::ThreadPlanSP arg) {
|
||||
return python::SWIGBridge::ToSWIGWrapper(arg);
|
||||
}
|
||||
|
||||
python::PythonObject Transform(lldb::ProcessAttachInfoSP arg) {
|
||||
return python::SWIGBridge::ToSWIGWrapper(arg);
|
||||
}
|
||||
@@ -232,6 +236,14 @@ protected:
|
||||
return python::SWIGBridge::ToSWIGWrapper(arg);
|
||||
}
|
||||
|
||||
python::PythonObject Transform(Event *arg) {
|
||||
return python::SWIGBridge::ToSWIGWrapper(arg);
|
||||
}
|
||||
|
||||
python::PythonObject Transform(Stream *arg) {
|
||||
return python::SWIGBridge::ToSWIGWrapper(arg);
|
||||
}
|
||||
|
||||
python::PythonObject Transform(lldb::DataExtractorSP arg) {
|
||||
return python::SWIGBridge::ToSWIGWrapper(arg);
|
||||
}
|
||||
@@ -329,6 +341,14 @@ template <>
|
||||
Status ScriptedPythonInterface::ExtractValueFromPythonObject<Status>(
|
||||
python::PythonObject &p, Status &error);
|
||||
|
||||
template <>
|
||||
Event *ScriptedPythonInterface::ExtractValueFromPythonObject<Event *>(
|
||||
python::PythonObject &p, Status &error);
|
||||
|
||||
template <>
|
||||
Stream *ScriptedPythonInterface::ExtractValueFromPythonObject<Stream *>(
|
||||
python::PythonObject &p, Status &error);
|
||||
|
||||
template <>
|
||||
lldb::BreakpointSP
|
||||
ScriptedPythonInterface::ExtractValueFromPythonObject<lldb::BreakpointSP>(
|
||||
|
||||
Reference in new issue
Block a user