Extend the SBTarget class with a string conversion operator and reuse
the same code between Python and Lua. This should happen for all the SB
classes, but I'm doing just this one as an example and for use in a test
case.
}
%extend lldb::SBTarget {
- %nothreadallow;
- PyObject *lldb::SBTarget::__str__ (){
- lldb::SBStream description;
- $self->GetDescription (description, lldb::eDescriptionLevelBrief);
- const char *desc = description.GetData();
- size_t desc_len = description.GetSize();
- if (desc_len > 0 && (desc[desc_len-1] == '\n' || desc[desc_len-1] == '\r'))
- --desc_len;
- return PythonString(llvm::StringRef(desc, desc_len)).release();
- }
- %clearnothreadallow;
-
%pythoncode %{
def __eq__(self, rhs):
if not isinstance(rhs, type(self)):
--- /dev/null
+%extend lldb::SBTarget {
+ %nothreadallow;
+ const char *lldb::SBTarget::__str__ (){
+ lldb::SBStream description;
+ $self->GetDescription (description, lldb::eDescriptionLevelBrief);
+ return description.GetData();
+ }
+ %clearnothreadallow;
+}
+
%include "./Python/python-typemaps.swig"
%include "./headers.swig"
+%include "./extensions.swig"
%{
#include "../source/Plugins/ScriptInterpreter/Python/PythonDataObjects.h"
%module lldb
%include "./headers.swig"
+%include "./extensions.swig"
%{
using namespace lldb_private;