6#pragma warning(disable : 4275)
8#pragma warning(disable : 4251)
10#pragma warning(disable : 4800)
25#ifdef _FILE_OFFSET_BITS
26#undef _FILE_OFFSET_BITS
35#define PY_SSIZE_T_CLEAN
40typedef Py_ssize_t
dim_t;
47#define cpyrt_PyText_Check PyUnicode_Check
48#define cpyrt_PyText_CheckExact PyUnicode_CheckExact
49#define cpyrt_PyText_AsString PyUnicode_AsUTF8
50#define cpyrt_PyText_AsStringChecked PyUnicode_AsUTF8
51#define cpyrt_PyText_GetSize PyUnicode_GetSize
52#define cpyrt_PyText_GET_SIZE PyUnicode_GET_LENGTH
53#define cpyrt_PyUnicode_GET_SIZE PyUnicode_GET_LENGTH
54#define cpyrt_PyText_FromFormat PyUnicode_FromFormat
55#define cpyrt_PyText_FromString PyUnicode_FromString
56#define cpyrt_PyText_InternFromString PyUnicode_InternFromString
57#define cpyrt_PyText_Append PyUnicode_Append
58#define cpyrt_PyText_AppendAndDel PyUnicode_AppendAndDel
59#define cpyrt_PyText_FromStringAndSize PyUnicode_FromStringAndSize
61#define _cpyrt_PyText_AsStringAndSize PyUnicode_AsUTF8AndSize
66 if (!cstr && PyBytes_CheckExact(pystr)) {
68 PyBytes_AsStringAndSize(pystr, (
char**)&cstr,
size);
73#define cpyrt_PyText_Type PyUnicode_Type
75#define PyIntObject PyLongObject
76#define PyInt_Check PyLong_Check
77#define PyInt_AsLong PyLong_AsLong
78#define PyInt_AS_LONG PyLong_AsLong
79#define PyInt_AsSsize_t PyLong_AsSsize_t
80#define PyInt_CheckExact PyLong_CheckExact
81#define PyInt_FromLong PyLong_FromLong
82#define PyInt_FromSsize_t PyLong_FromSsize_t
84#define PyInt_Type PyLong_Type
86#define cpyrt_PyCapsule_New PyCapsule_New
87#define cpyrt_PyCapsule_CheckExact PyCapsule_CheckExact
88#define cpyrt_PyCapsule_GetPointer PyCapsule_GetPointer
90#define CPPJIT__long__ "__int__"
91#define CPPJIT__idiv__ "__itruediv__"
92#define CPPJIT__div__ "__truediv__"
93#define CPPJIT__next__ "__next__"
95#define Py_TPFLAGS_HAVE_RICHCOMPARE 0
96#define Py_TPFLAGS_CHECKTYPES 0
98#define PyClass_Check PyType_Check
100#define PyBuffer_Type PyMemoryView_Type
102#define cpyrt_PySliceCast PyObject*
103#define PyUnicode_GetSize PyUnicode_GetLength
105#define cpyrt_PyUnicode_AsWideChar PyUnicode_AsWideChar
108#if SIZEOF_SIZE_T == SIZEOF_INT
109#if defined(MAC_OS_X_VERSION_10_4)
110#define PY_SSIZE_T_FORMAT "%ld"
112#define PY_SSIZE_T_FORMAT "%d"
114#elif SIZEOF_SIZE_T == SIZEOF_LONG
115#define PY_SSIZE_T_FORMAT "%ld"
118#define PY_SSIZE_T_FORMAT "%zd"
121#ifndef Py_RETURN_NONE
122#define Py_RETURN_NONE return Py_INCREF(Py_None), Py_None
125#ifndef Py_RETURN_TRUE
126#define Py_RETURN_TRUE return Py_INCREF(Py_True), Py_True
129#ifndef Py_RETURN_FALSE
130#define Py_RETURN_FALSE return Py_INCREF(Py_False), Py_False
134#define cpyrt_PyCFunction_Call PyObject_Call
144 return ((
PyObject**)args)[i] = item;
147 return PyVectorcall_NARGS(nargsf);
153 PyMem_Free((
void*)args);
155#define cpyrt_PyObject_Call PyObject_Vectorcall
158 Py_ssize_t
offset = Py_TYPE(cb)->tp_vectorcall_offset;
159 vectorcallfunc func = *(vectorcallfunc*)(((
char*)cb) +
offset);
160 return func(cb, args, nargsf, kwds);
163#ifndef Py_TPFLAGS_HAVE_VECTORCALL
164#define Py_TPFLAGS_HAVE_VECTORCALL _Py_TPFLAGS_HAVE_VECTORCALL
168#if PY_VERSION_HEX < 0x30d0000
170 PyObject* pyobject = PyWeakref_GetObject(ref);
171 if (!pyobject || pyobject == Py_None)
179 if (PyWeakref_GetRef(ref, &pyobject) != -1)
197#if PY_VERSION_HEX >= 0x030c0000
198#define CPYRT_TP_WATCHED , 0
200#define CPYRT_TP_WATCHED
203#if PY_VERSION_HEX >= 0x030d0000
204#define CPYRT_TP_VERSIONS_USED , 0
206#define CPYRT_TP_VERSIONS_USED
209#if PY_VERSION_HEX >= 0x030f0000
210#define CPYRT_TP_ITERITEM , nullptr
212#define CPYRT_TP_ITERITEM
215#define CPYRT_PYTYPE_TAIL \
217 CPYRT_TP_VERSIONS_USED \
size_t size(const MatrixT &matrix)
retrieve the size of a square matrix
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char Pixmap_t Pixmap_t PictureAttributes_t attr const char char ret_data h unsigned char height h offset
static PyObject * cpyrt_PyArgs_SET_ITEM(cpyrt_PyArgs_t args, Py_ssize_t i, PyObject *item)
static void cpyrt_PyArgs_DEL(cpyrt_PyArgs_t args)
Py_ssize_t(* dict_lookup_func)(PyDictObject *, PyObject *, Py_hash_t, PyObject **)
PyObject *const * cpyrt_PyArgs_t
static const char * cpyrt_PyText_AsStringAndSize(PyObject *pystr, Py_ssize_t *size)
static Py_ssize_t cpyrt_PyArgs_GET_SIZE(cpyrt_PyArgs_t, size_t nargsf)
PyObject * cpyrt_tp_call(PyObject *cb, cpyrt_PyArgs_t args, size_t nargsf, PyObject *kwds)
static cpyrt_PyArgs_t cpyrt_PyArgs_New(Py_ssize_t N)
static PyObject * cpyrt_PyArgs_GET_ITEM(cpyrt_PyArgs_t args, Py_ssize_t i)
#define _cpyrt_PyText_AsStringAndSize
static PyObject * cpyrt_GetWeakRef(PyObject *ref)