Re-land "[lldb/Lua] Add string conversion operator for SBTarget."

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.
This commit is contained in:
Jonas Devlieghere 2020-01-07 13:23:52 -08:00
parent 52366088a8
commit 06d122bc42
4 changed files with 12 additions and 12 deletions

View File

@ -502,18 +502,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)):

View File

@ -0,0 +1,10 @@
%extend lldb::SBTarget {
%nothreadallow;
const char *lldb::SBTarget::__str__ (){
lldb::SBStream description;
$self->GetDescription (description, lldb::eDescriptionLevelBrief);
return description.GetData();
}
%clearnothreadallow;
}

View File

@ -95,6 +95,7 @@ def lldb_iter(obj, getsize, getelem):
%include "./Python/python-typemaps.swig"
%include "./headers.swig"
%include "./extensions.swig"
%{
#include "../source/Plugins/ScriptInterpreter/Python/PythonDataObjects.h"

View File

@ -9,6 +9,7 @@
%module lldb
%include "./headers.swig"
%include "./extensions.swig"
%{
using namespace lldb_private;