Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
DeclareConverters.h File Reference
#include "Converters.h"
#include "Dimensions.h"
#include "cppjit_interop.h"
#include <complex>
#include <string>
Include dependency graph for DeclareConverters.h:
This graph shows which files directly or indirectly include this file:

Namespaces

namespace  cppjit
 
namespace  cppjit::cpyrt
 

Macros

#define CPPJIT_DECLARE_ARRAY_CONVERTER(name)
 
#define CPPJIT_DECLARE_BASIC_CONVERTER(name)
 
#define CPPJIT_DECLARE_BASIC_CONVERTER2(name, base)
 
#define CPPJIT_DECLARE_REFCONVERTER(name)
 
#define CPPJIT_DECLARE_STRING_CONVERTER(name, strtype)
 

Macro Definition Documentation

◆ CPPJIT_DECLARE_ARRAY_CONVERTER

#define CPPJIT_DECLARE_ARRAY_CONVERTER ( name)
Value:
class name##ArrayConverter : public Converter { \
public: \
name##ArrayConverter(cdims_t dims); \
name##ArrayConverter(const name##ArrayConverter&) = delete; \
name##ArrayConverter& operator=(const name##ArrayConverter&) = delete; \
bool SetArg(PyObject*, Parameter&, CallContext* = nullptr) override; \
PyObject* FromMemory(void*) override; \
bool ToMemory(PyObject*, void*, PyObject* = nullptr) override; \
bool HasState() override { return true; } \
std::string GetFailureMsg() override { \
return "[" #name "ArrayConverter]"; \
} \
\
protected: \
bool fIsFixed; \
};
dims_t fShape
bool fIsFixed
_object PyObject
char name[80]
Definition TGX11.cxx:142
Dimensions dims_t
Definition API.h:113

Definition at line 60 of file DeclareConverters.h.

◆ CPPJIT_DECLARE_BASIC_CONVERTER

#define CPPJIT_DECLARE_BASIC_CONVERTER ( name)
Value:
class name##Converter : public Converter { \
public: \
bool SetArg(PyObject*, Parameter&, CallContext* = nullptr) override; \
PyObject* FromMemory(void*) override; \
bool ToMemory(PyObject*, void*, PyObject* = nullptr) override; \
std::string GetFailureMsg() override { return "[" #name "Converter]"; } \
}; \
\
class Const##name##RefConverter : public Converter { \
public: \
bool SetArg(PyObject*, Parameter&, CallContext* = nullptr) override; \
PyObject* FromMemory(void*) override; \
std::string GetFailureMsg() override { \
return "[Const" #name "RefConverter]"; \
} \
}

Definition at line 17 of file DeclareConverters.h.

◆ CPPJIT_DECLARE_BASIC_CONVERTER2

#define CPPJIT_DECLARE_BASIC_CONVERTER2 ( name,
base )
Value:
class name##Converter : public base##Converter { \
public: \
PyObject* FromMemory(void*) override; \
bool ToMemory(PyObject*, void*, PyObject* = nullptr) override; \
std::string GetFailureMsg() override { return "[" #name "Converter]"; } \
}; \
\
class Const##name##RefConverter : public Converter { \
public: \
bool SetArg(PyObject*, Parameter&, CallContext* = nullptr) override; \
PyObject* FromMemory(void*) override; \
std::string GetFailureMsg() override { \
return "[Const" #name "RefConverter]"; \
} \
}

Definition at line 35 of file DeclareConverters.h.

◆ CPPJIT_DECLARE_REFCONVERTER

#define CPPJIT_DECLARE_REFCONVERTER ( name)
Value:
class name##RefConverter : public Converter { \
public: \
bool SetArg(PyObject*, Parameter&, CallContext* = nullptr) override; \
PyObject* FromMemory(void*) override; \
std::string GetFailureMsg() override { return "[" #name "RefConverter]"; } \
};

Definition at line 52 of file DeclareConverters.h.

◆ CPPJIT_DECLARE_STRING_CONVERTER

#define CPPJIT_DECLARE_STRING_CONVERTER ( name,
strtype )
Value:
class name##Converter : public InstanceConverter { \
public: \
name##Converter(bool keepControl = true); \
\
public: \
bool SetArg(PyObject*, Parameter&, CallContext* = nullptr) override; \
PyObject* FromMemory(void* address) override; \
bool ToMemory(PyObject*, void*, PyObject* = nullptr) override; \
bool HasState() override { return true; } \
std::string GetFailureMsg() override { return "[" #name "Converter]"; }; \
\
protected: \
strtype fBuffer; \
}
fBuffer

Definition at line 419 of file DeclareConverters.h.

Variable Documentation

◆ fAllowCppInstance

bool fAllowCppInstance = false
protected

Definition at line 463 of file DeclareConverters.h.

◆ fBase

Converter* fBase
private

Definition at line 156 of file DeclareConverters.h.

◆ fBuffer

void* fBuffer = nullptr
protected

Definition at line 178 of file DeclareConverters.h.

◆ fClass

interop::TCppScope_t fClass
protected

Definition at line 328 of file DeclareConverters.h.

◆ fConverter

Converter* fConverter
protected

Definition at line 488 of file DeclareConverters.h.

◆ fConverters

std::vector<Converter*> fConverters
protected

Definition at line 534 of file DeclareConverters.h.

◆ fEnumName

std::string fEnumName
private

Definition at line 157 of file DeclareConverters.h.

◆ fFailureMsg

const std::string fFailureMsg
protected

Definition at line 414 of file DeclareConverters.h.

◆ fFnType

cppjit::interop::TCppType_t fFnType
protected

Definition at line 462 of file DeclareConverters.h.

◆ fIsConst

bool fIsConst
protected

Definition at line 329 of file DeclareConverters.h.

◆ fIsFixed

bool fIsFixed
protected

Definition at line 253 of file DeclareConverters.h.

◆ fIsRef

bool fIsRef
protected

Definition at line 512 of file DeclareConverters.h.

◆ fKeepControl

bool fKeepControl
protected

Definition at line 511 of file DeclareConverters.h.

◆ fMaxSize

std::wstring::size_type fMaxSize
protected

Definition at line 179 of file DeclareConverters.h.

◆ fRetType

std::string fRetType
protected

Definition at line 486 of file DeclareConverters.h.

◆ fShape

dims_t fShape
protected

Definition at line 253 of file DeclareConverters.h.

◆ fSignature

std::string fSignature
protected

Definition at line 487 of file DeclareConverters.h.

◆ fSmartPtrType

interop::TCppScope_t fSmartPtrType
protected

Definition at line 509 of file DeclareConverters.h.

◆ fUnderlyingType

interop::TCppScope_t fUnderlyingType
protected

Definition at line 510 of file DeclareConverters.h.

◆ fValueSize

size_t fValueSize
protected

Definition at line 537 of file DeclareConverters.h.

◆ fValueType

interop::TCppScope_t fValueType
protected

Definition at line 536 of file DeclareConverters.h.

◆ fValueTypeName

std::string fValueTypeName
protected

Definition at line 535 of file DeclareConverters.h.