1#ifndef CPYCPPYY_DECLAREEXECUTORS_H
2#define CPYCPPYY_DECLAREEXECUTORS_H
17#define CPPYY_DECL_EXEC(name) \
18class name##Executor : public Executor { \
21 Cppyy::TCppMethod_t, Cppyy::TCppObject_t, CallContext*) override; \
53#define CPPYY_ARRAY_DECL_EXEC(name) \
54class name##ArrayExecutor : public Executor { \
57 name##ArrayExecutor(dims_t dims) : fShape(dims) {} \
59 Cppyy::TCppMethod_t, Cppyy::TCppObject_t, CallContext*) override; \
60 bool HasState() override { return true; } \
89class InstancePtrExecutor :
public Executor {
94 bool HasState()
override {
return true; }
100class InstanceExecutor :
public Executor {
105 bool HasState()
override {
return true; }
112class IteratorExecutor :
public InstanceExecutor {
120#define CPPYY_DECL_REFEXEC(name) \
121class name##RefExecutor : public RefExecutor { \
124 Cppyy::TCppMethod_t, Cppyy::TCppObject_t, CallContext*) override; \
147class InstanceRefExecutor :
public RefExecutor {
157class InstancePtrPtrExecutor :
public InstanceRefExecutor {
159 using InstanceRefExecutor::InstanceRefExecutor;
164class InstancePtrRefExecutor :
public InstanceRefExecutor {
166 using InstanceRefExecutor::InstanceRefExecutor;
171class InstanceArrayExecutor :
public InstancePtrExecutor {
182class FunctionPointerExecutor :
public Executor {
184 FunctionPointerExecutor(
const std::string&
ret,
const std::string& sig) :
#define CPPYY_ARRAY_DECL_EXEC(name)
#define CPPYY_DECL_EXEC(name)
#define CPPYY_DECL_REFEXEC(name)
std::ios_base::fmtflags fFlags
Py_ssize_t array_size(const std::string &name)