diff --git a/lldb/scripts/Python/python-extensions.swig b/lldb/scripts/Python/python-extensions.swig --- a/lldb/scripts/Python/python-extensions.swig +++ b/lldb/scripts/Python/python-extensions.swig @@ -1,4 +1,3 @@ - %extend lldb::SBAddress { %nothreadallow; PyObject *lldb::SBAddress::__str__ (){ @@ -502,18 +501,6 @@ } %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)): diff --git a/lldb/scripts/interface/SBTarget.i b/lldb/scripts/interface/SBTarget.i --- a/lldb/scripts/interface/SBTarget.i +++ b/lldb/scripts/interface/SBTarget.i @@ -8,7 +8,6 @@ namespace lldb { - %feature("docstring", "Represents the target program running under the debugger. @@ -968,6 +967,22 @@ lldb::SBValue EvaluateExpression (const char *expr, const lldb::SBExpressionOptions &options); + %extend { + %nothreadallow; + std::string lldb::SBTarget::__str__(){ + lldb::SBStream stream; + $self->GetDescription (stream, lldb::eDescriptionLevelBrief); + + const char *desc = stream.GetData(); + size_t desc_len = stream.GetSize(); + if (desc_len > 0 && (desc[desc_len-1] == '\n' || desc[desc_len-1] == '\r')) + --desc_len; + + return std::string(desc, desc_len); + } + %clearnothreadallow; + } + #ifdef SWIGPYTHON %pythoncode %{ class modules_access(object): diff --git a/lldb/scripts/lldb.swig b/lldb/scripts/lldb.swig --- a/lldb/scripts/lldb.swig +++ b/lldb/scripts/lldb.swig @@ -93,6 +93,7 @@ yield elem(i) %} +%include %include "./Python/python-typemaps.swig" %include "./headers.swig" diff --git a/lldb/scripts/lldb_lua.swig b/lldb/scripts/lldb_lua.swig --- a/lldb/scripts/lldb_lua.swig +++ b/lldb/scripts/lldb_lua.swig @@ -8,6 +8,7 @@ %module lldb +%include %include "./headers.swig" %{