1#ifndef CPYCPPYY_CPPMETHOD_H
2#define CPYCPPYY_CPPMETHOD_H
29#if PY_VERSION_HEX >= 0x03080000
31 kDoItemDecref = 0x0010
PyObject * CPyCppyy_PyArgs_t
std::string GetReturnTypeName()
PyObject * GetSignature(bool show_formalargs=true) override
bool Initialize(CallContext *ctxt=nullptr)
bool ProcessKwds(PyObject *self_in, PyCallArgs &args)
void SetPyError_(PyObject *msg)
PyObject * GetSignatureNames() override
Returns a tuple with the names of the input parameters of this method.
Cppyy::TCppScope_t fScope
virtual bool ProcessArgs(PyCallArgs &args)
int GetPriority() override
virtual bool InitExecutor_(Executor *&, CallContext *ctxt=nullptr)
int GetArgMatchScore(PyObject *args_tuple) override
std::string GetSignatureString(bool show_formalargs=true)
PyObject * ExecuteProtected(void *, ptrdiff_t, CallContext *)
bool ConvertAndSetArgs(CPyCppyy_PyArgs_t, size_t nargsf, CallContext *ctxt=nullptr)
std::map< std::string, int > * fArgIndices
std::vector< Converter * > fConverters
PyObject * GetTypeName() override
PyObject * GetSignatureTypes() override
Returns a dictionary with the types of the signature of this method.
PyObject * ExecuteFast(void *, ptrdiff_t, CallContext *)
PyObject * Execute(void *self, ptrdiff_t offset, CallContext *ctxt=nullptr)
Cppyy::TCppFuncAddr_t GetFunctionAddress() override
void Copy_(const CPPMethod &)
PyObject * GetCoVarNames() override
PyObject * GetPrototype(bool show_formalargs=true) override
Construct a Python string from the method's prototype.
Cppyy::TCppMethod_t fMethod
Cppyy::TCppScope_t GetScope()
PyCallable * Clone() override
PyObject * GetArgDefault(int iarg, bool silent=true) override
int GetMaxArgs() override
bool VerifyArgCount_(Py_ssize_t)
CPPMethod & operator=(const CPPMethod &)
Cppyy::TCppMethod_t GetMethod()
CPPMethod(Cppyy::TCppScope_t scope, Cppyy::TCppMethod_t method)
PyObject * Reflex(Cppyy::Reflex::RequestId_t request, Cppyy::Reflex::FormatId_t=Cppyy::Reflex::OPTIMAL) override
PyObject * Call(CPPInstance *&self, CPyCppyy_PyArgs_t args, size_t nargsf, PyObject *kwds, CallContext *ctxt=nullptr) override
PyObject * GetScopeProxy() override
PyCallArgs(CPPInstance *&self, CPyCppyy_PyArgs_t args, size_t nargsf, PyObject *kwds)