15 if (kwds && ((PyDict_Check(kwds) && PyDict_Size(kwds)) ||
16 (PyTuple_CheckExact(kwds) && PyTuple_GET_SIZE(kwds)))) {
17 PyErr_SetString(PyExc_TypeError,
"keyword arguments are not yet supported");
36 if ((!self || (
PyObject*)self == Py_None) && nargs) {
50 return this->
Execute(
nullptr, 0, ctxt);
56 PyUnicode_FromString((GetReturnTypeName() +
" (*)").c_str());
57 PyUnicode_AppendAndDel(&cppname, GetSignature(
false ));
PyObject * Call(CPPInstance *&self, cpyrt_PyArgs_t args, size_t nargsf, PyObject *kwds, CallContext *ctxt=nullptr) override
PyObject * GetTypeName() override
bool Initialize(CallContext *ctxt=nullptr)
PyObject * Execute(void *self, ptrdiff_t offset, CallContext *ctxt=nullptr)
bool ConvertAndSetArgs(cpyrt_PyArgs_t, size_t nargsf, CallContext *ctxt=nullptr)
interop::TCppScope_t GetScope()
PyObject *const * cpyrt_PyArgs_t
static Py_ssize_t cpyrt_PyArgs_GET_SIZE(cpyrt_PyArgs_t, size_t nargsf)
static PyObject * cpyrt_PyArgs_GET_ITEM(cpyrt_PyArgs_t args, Py_ssize_t i)
bool CPPInstance_Check(T *object)
bool IsSubclass(TCppScope_t derived, TCppScope_t base)