%PYARG_0 = %CONVERTTOPYTHON[bool](Shiboken::Object::isValid(%1, false)); if (Shiboken::ObjectType::checkType((PyTypeObject*)%2)) %PYARG_0 = Shiboken::Object::newObject((SbkObjectType*)%2, (void*)%1, false, true); else PyErr_SetString(PyExc_TypeError, "You need a shiboken-based type."); if (Shiboken::Object::checkType(%1)) { std::vector<void*> ptrs = Shiboken::Object::cppPointers((SbkObject*)%1); %PYARG_0 = PyTuple_New(ptrs.size()); for (std::size_t i = 0; i < ptrs.size(); ++i) PyTuple_SET_ITEM(%PYARG_0, i, PyLong_FromVoidPtr(ptrs[i])); } else { PyErr_SetString(PyExc_TypeError, "You need a shiboken-based type."); } if (Shiboken::Object::checkType(%1)) { Shiboken::Object::callCppDestructors((SbkObject*)%1); } else { PyErr_SetString(PyExc_TypeError, "You need a shiboken-based type."); } if (Shiboken::Object::checkType(%1)) { %PYARG_0 = %CONVERTTOPYTHON[bool](Shiboken::Object::hasOwnership((SbkObject*)%1)); } else { PyErr_SetString(PyExc_TypeError, "You need a shiboken-based type."); } if (Shiboken::Object::checkType(%1)) { %PYARG_0 = %CONVERTTOPYTHON[bool](Shiboken::Object::wasCreatedByPython((SbkObject*)%1)); } else { PyErr_SetString(PyExc_TypeError, "You need a shiboken-based type."); } if (!Shiboken::Object::checkType(%1)) { %PYARG_0 = PyString_FromString("Ordinary Python type."); } else { std::string str = Shiboken::Object::info((SbkObject*)%1); %PYARG_0 = PyString_FromString(str.c_str()); }