vttcompilepy 0.0.1.7__zip → 0.0.1.9__zip

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of vttcompilepy might be problematic. Click here for more details.

Files changed (38) hide show
  1. {vttcompilepy-0.0.1.7 → vttcompilepy-0.0.1.9}/PKG-INFO +2 -1
  2. vttcompilepy-0.0.1.9/setup.py +92 -0
  3. {vttcompilepy-0.0.1.7 → vttcompilepy-0.0.1.9}/src/TextBuffer.cpp +15 -4
  4. vttcompilepy-0.0.1.9/vttcompilepy/quit_to_glyphs.py +115 -0
  5. {vttcompilepy-0.0.1.7 → vttcompilepy-0.0.1.9}/vttcompilepy/vttcompilepy.cpp +383 -306
  6. {vttcompilepy-0.0.1.7 → vttcompilepy-0.0.1.9}/vttcompilepy.egg-info/PKG-INFO +2 -1
  7. {vttcompilepy-0.0.1.7 → vttcompilepy-0.0.1.9}/vttcompilepy.egg-info/SOURCES.txt +1 -0
  8. {vttcompilepy-0.0.1.7 → vttcompilepy-0.0.1.9}/vttcompilepy.egg-info/entry_points.txt +1 -0
  9. vttcompilepy-0.0.1.7/setup.py +0 -69
  10. {vttcompilepy-0.0.1.7 → vttcompilepy-0.0.1.9}/README.md +0 -0
  11. {vttcompilepy-0.0.1.7 → vttcompilepy-0.0.1.9}/pyproject.toml +0 -0
  12. {vttcompilepy-0.0.1.7 → vttcompilepy-0.0.1.9}/setup.cfg +0 -0
  13. {vttcompilepy-0.0.1.7 → vttcompilepy-0.0.1.9}/src/CvtManager.cpp +0 -0
  14. {vttcompilepy-0.0.1.7 → vttcompilepy-0.0.1.9}/src/File.cpp +0 -0
  15. {vttcompilepy-0.0.1.7 → vttcompilepy-0.0.1.9}/src/List.cpp +0 -0
  16. {vttcompilepy-0.0.1.7 → vttcompilepy-0.0.1.9}/src/MathUtils.cpp +0 -0
  17. {vttcompilepy-0.0.1.7 → vttcompilepy-0.0.1.9}/src/Memory.cpp +0 -0
  18. {vttcompilepy-0.0.1.7 → vttcompilepy-0.0.1.9}/src/Platform.cpp +0 -0
  19. {vttcompilepy-0.0.1.7 → vttcompilepy-0.0.1.9}/src/TMTParser.cpp +0 -0
  20. {vttcompilepy-0.0.1.7 → vttcompilepy-0.0.1.9}/src/TTAssembler.cpp +0 -0
  21. {vttcompilepy-0.0.1.7 → vttcompilepy-0.0.1.9}/src/TTEngine.cpp +0 -0
  22. {vttcompilepy-0.0.1.7 → vttcompilepy-0.0.1.9}/src/TTFont.cpp +0 -0
  23. {vttcompilepy-0.0.1.7 → vttcompilepy-0.0.1.9}/src/TTGenerator.cpp +0 -0
  24. {vttcompilepy-0.0.1.7 → vttcompilepy-0.0.1.9}/src/Variation.cpp +0 -0
  25. {vttcompilepy-0.0.1.7 → vttcompilepy-0.0.1.9}/src/VariationInstance.cpp +0 -0
  26. {vttcompilepy-0.0.1.7 → vttcompilepy-0.0.1.9}/src/VariationModels.cpp +0 -0
  27. {vttcompilepy-0.0.1.7 → vttcompilepy-0.0.1.9}/src/application.cpp +0 -0
  28. {vttcompilepy-0.0.1.7 → vttcompilepy-0.0.1.9}/src/application.h +0 -0
  29. {vttcompilepy-0.0.1.7 → vttcompilepy-0.0.1.9}/src/pch.h +0 -0
  30. {vttcompilepy-0.0.1.7 → vttcompilepy-0.0.1.9}/src/ttiua.cpp +0 -0
  31. {vttcompilepy-0.0.1.7 → vttcompilepy-0.0.1.9}/tests/test_vttcompile.py +0 -0
  32. {vttcompilepy-0.0.1.7 → vttcompilepy-0.0.1.9}/vttcompilepy/__init__.py +0 -0
  33. {vttcompilepy-0.0.1.7 → vttcompilepy-0.0.1.9}/vttcompilepy/__main__.py +0 -0
  34. {vttcompilepy-0.0.1.7 → vttcompilepy-0.0.1.9}/vttcompilepy/_version.py +0 -0
  35. {vttcompilepy-0.0.1.7 → vttcompilepy-0.0.1.9}/vttcompilepy.egg-info/dependency_links.txt +0 -0
  36. {vttcompilepy-0.0.1.7 → vttcompilepy-0.0.1.9}/vttcompilepy.egg-info/not-zip-safe +0 -0
  37. {vttcompilepy-0.0.1.7 → vttcompilepy-0.0.1.9}/vttcompilepy.egg-info/requires.txt +0 -0
  38. {vttcompilepy-0.0.1.7 → vttcompilepy-0.0.1.9}/vttcompilepy.egg-info/top_level.txt +0 -0
@@ -1,4 +1,4 @@
1
- /* Generated by Cython 3.0.2 */
1
+ /* Generated by Cython 3.0.9 */
2
2
 
3
3
  /* BEGIN: Cython Metadata
4
4
  {
@@ -87,15 +87,15 @@ END: Cython Metadata */
87
87
  #elif PY_VERSION_HEX < 0x02070000 || (0x03000000 <= PY_VERSION_HEX && PY_VERSION_HEX < 0x03030000)
88
88
  #error Cython requires Python 2.7+ or Python 3.3+.
89
89
  #else
90
- #if CYTHON_LIMITED_API
90
+ #if defined(CYTHON_LIMITED_API) && CYTHON_LIMITED_API
91
91
  #define __PYX_EXTRA_ABI_MODULE_NAME "limited"
92
92
  #else
93
93
  #define __PYX_EXTRA_ABI_MODULE_NAME ""
94
94
  #endif
95
- #define CYTHON_ABI "3_0_2" __PYX_EXTRA_ABI_MODULE_NAME
95
+ #define CYTHON_ABI "3_0_9" __PYX_EXTRA_ABI_MODULE_NAME
96
96
  #define __PYX_ABI_MODULE_NAME "_cython_" CYTHON_ABI
97
97
  #define __PYX_TYPE_MODULE_PREFIX __PYX_ABI_MODULE_NAME "."
98
- #define CYTHON_HEX_VERSION 0x030002F0
98
+ #define CYTHON_HEX_VERSION 0x030009F0
99
99
  #define CYTHON_FUTURE_DIVISION 1
100
100
  #include <stddef.h>
101
101
  #ifndef offsetof
@@ -309,7 +309,7 @@ END: Cython Metadata */
309
309
  #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC
310
310
  #define CYTHON_UPDATE_DESCRIPTOR_DOC 0
311
311
  #endif
312
- #elif defined(PY_NOGIL)
312
+ #elif defined(Py_GIL_DISABLED) || defined(Py_NOGIL)
313
313
  #define CYTHON_COMPILING_IN_PYPY 0
314
314
  #define CYTHON_COMPILING_IN_CPYTHON 0
315
315
  #define CYTHON_COMPILING_IN_LIMITED_API 0
@@ -652,17 +652,20 @@ class __Pyx_FakeReference {
652
652
  PyObject *name, int fline, PyObject *lnos) {
653
653
  PyObject *exception_table = NULL;
654
654
  PyObject *types_module=NULL, *code_type=NULL, *result=NULL;
655
- PyObject *version_info; // borrowed
655
+ #if __PYX_LIMITED_VERSION_HEX < 0x030B0000
656
+ PyObject *version_info;
656
657
  PyObject *py_minor_version = NULL;
658
+ #endif
657
659
  long minor_version = 0;
658
660
  PyObject *type, *value, *traceback;
659
661
  PyErr_Fetch(&type, &value, &traceback);
660
662
  #if __PYX_LIMITED_VERSION_HEX >= 0x030B0000
661
- minor_version = 11; // we don't yet need to distinguish between versions > 11
663
+ minor_version = 11;
662
664
  #else
663
665
  if (!(version_info = PySys_GetObject("version_info"))) goto end;
664
666
  if (!(py_minor_version = PySequence_GetItem(version_info, 1))) goto end;
665
667
  minor_version = PyLong_AsLong(py_minor_version);
668
+ Py_DECREF(py_minor_version);
666
669
  if (minor_version == -1 && PyErr_Occurred()) goto end;
667
670
  #endif
668
671
  if (!(types_module = PyImport_ImportModule("types"))) goto end;
@@ -683,7 +686,6 @@ class __Pyx_FakeReference {
683
686
  Py_XDECREF(code_type);
684
687
  Py_XDECREF(exception_table);
685
688
  Py_XDECREF(types_module);
686
- Py_XDECREF(py_minor_version);
687
689
  if (type) {
688
690
  PyErr_Restore(type, value, traceback);
689
691
  }
@@ -716,7 +718,7 @@ class __Pyx_FakeReference {
716
718
  PyObject *fv, PyObject *cell, PyObject* fn,
717
719
  PyObject *name, int fline, PyObject *lnos) {
718
720
  PyCodeObject *result;
719
- PyObject *empty_bytes = PyBytes_FromStringAndSize("", 0); // we don't have access to __pyx_empty_bytes here
721
+ PyObject *empty_bytes = PyBytes_FromStringAndSize("", 0);
720
722
  if (!empty_bytes) return NULL;
721
723
  result =
722
724
  #if PY_VERSION_HEX >= 0x030C0000
@@ -802,8 +804,13 @@ class __Pyx_FakeReference {
802
804
  typedef PyObject *(*__Pyx_PyCFunctionFastWithKeywords) (PyObject *self, PyObject *const *args,
803
805
  Py_ssize_t nargs, PyObject *kwnames);
804
806
  #else
805
- #define __Pyx_PyCFunctionFast _PyCFunctionFast
806
- #define __Pyx_PyCFunctionFastWithKeywords _PyCFunctionFastWithKeywords
807
+ #if PY_VERSION_HEX >= 0x030d00A4
808
+ # define __Pyx_PyCFunctionFast PyCFunctionFast
809
+ # define __Pyx_PyCFunctionFastWithKeywords PyCFunctionFastWithKeywords
810
+ #else
811
+ # define __Pyx_PyCFunctionFast _PyCFunctionFast
812
+ # define __Pyx_PyCFunctionFastWithKeywords _PyCFunctionFastWithKeywords
813
+ #endif
807
814
  #endif
808
815
  #if CYTHON_METH_FASTCALL
809
816
  #define __Pyx_METH_FASTCALL METH_FASTCALL
@@ -827,6 +834,31 @@ class __Pyx_FakeReference {
827
834
  #define __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET 0
828
835
  #define __Pyx_PyVectorcall_NARGS(n) ((Py_ssize_t)(n))
829
836
  #endif
837
+ #if PY_MAJOR_VERSION >= 0x030900B1
838
+ #define __Pyx_PyCFunction_CheckExact(func) PyCFunction_CheckExact(func)
839
+ #else
840
+ #define __Pyx_PyCFunction_CheckExact(func) PyCFunction_Check(func)
841
+ #endif
842
+ #define __Pyx_CyOrPyCFunction_Check(func) PyCFunction_Check(func)
843
+ #if CYTHON_COMPILING_IN_CPYTHON
844
+ #define __Pyx_CyOrPyCFunction_GET_FUNCTION(func) (((PyCFunctionObject*)(func))->m_ml->ml_meth)
845
+ #elif !CYTHON_COMPILING_IN_LIMITED_API
846
+ #define __Pyx_CyOrPyCFunction_GET_FUNCTION(func) PyCFunction_GET_FUNCTION(func)
847
+ #endif
848
+ #if CYTHON_COMPILING_IN_CPYTHON
849
+ #define __Pyx_CyOrPyCFunction_GET_FLAGS(func) (((PyCFunctionObject*)(func))->m_ml->ml_flags)
850
+ static CYTHON_INLINE PyObject* __Pyx_CyOrPyCFunction_GET_SELF(PyObject *func) {
851
+ return (__Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_STATIC) ? NULL : ((PyCFunctionObject*)func)->m_self;
852
+ }
853
+ #endif
854
+ static CYTHON_INLINE int __Pyx__IsSameCFunction(PyObject *func, void *cfunc) {
855
+ #if CYTHON_COMPILING_IN_LIMITED_API
856
+ return PyCFunction_Check(func) && PyCFunction_GetFunction(func) == (PyCFunction) cfunc;
857
+ #else
858
+ return PyCFunction_Check(func) && PyCFunction_GET_FUNCTION(func) == (PyCFunction) cfunc;
859
+ #endif
860
+ }
861
+ #define __Pyx_IsSameCFunction(func, cfunc) __Pyx__IsSameCFunction(func, cfunc)
830
862
  #if __PYX_LIMITED_VERSION_HEX < 0x030900B1
831
863
  #define __Pyx_PyType_FromModuleAndSpec(m, s, b) ((void)m, PyType_FromSpecWithBases(s, b))
832
864
  typedef PyObject *(*__Pyx_PyCMethod)(PyObject *, PyTypeObject *, PyObject *const *, size_t, PyObject *);
@@ -853,6 +885,8 @@ class __Pyx_FakeReference {
853
885
  #define __Pyx_PyThreadState_Current PyThreadState_Get()
854
886
  #elif !CYTHON_FAST_THREAD_STATE
855
887
  #define __Pyx_PyThreadState_Current PyThreadState_GET()
888
+ #elif PY_VERSION_HEX >= 0x030d00A1
889
+ #define __Pyx_PyThreadState_Current PyThreadState_GetUnchecked()
856
890
  #elif PY_VERSION_HEX >= 0x03060000
857
891
  #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet()
858
892
  #elif PY_VERSION_HEX >= 0x03000000
@@ -928,7 +962,7 @@ static CYTHON_INLINE void * PyThread_tss_get(Py_tss_t *key) {
928
962
  }
929
963
  #endif
930
964
  #endif
931
- #if CYTHON_COMPILING_IN_CPYTHON || defined(_PyDict_NewPresized)
965
+ #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030d0000 || defined(_PyDict_NewPresized)
932
966
  #define __Pyx_PyDict_NewPresized(n) ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n))
933
967
  #else
934
968
  #define __Pyx_PyDict_NewPresized(n) PyDict_New()
@@ -940,7 +974,7 @@ static CYTHON_INLINE void * PyThread_tss_get(Py_tss_t *key) {
940
974
  #define __Pyx_PyNumber_Divide(x,y) PyNumber_Divide(x,y)
941
975
  #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceDivide(x,y)
942
976
  #endif
943
- #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX > 0x030600B4 && CYTHON_USE_UNICODE_INTERNALS
977
+ #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX > 0x030600B4 && PY_VERSION_HEX < 0x030d0000 && CYTHON_USE_UNICODE_INTERNALS
944
978
  #define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash)
945
979
  static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStr(PyObject *dict, PyObject *name) {
946
980
  PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name);
@@ -984,7 +1018,7 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict,
984
1018
  #endif
985
1019
  #if CYTHON_USE_TYPE_SPECS && PY_VERSION_HEX >= 0x03080000
986
1020
  #define __Pyx_PyHeapTypeObject_GC_Del(obj) {\
987
- PyTypeObject *type = Py_TYPE(obj);\
1021
+ PyTypeObject *type = Py_TYPE((PyObject*)obj);\
988
1022
  assert(__Pyx_PyType_HasFeature(type, Py_TPFLAGS_HEAPTYPE));\
989
1023
  PyObject_GC_Del(obj);\
990
1024
  Py_DECREF(type);\
@@ -1128,6 +1162,15 @@ static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict,
1128
1162
  #define __Pyx_PyBytes_GET_SIZE(o) PyBytes_Size(o)
1129
1163
  #define __Pyx_PyByteArray_GET_SIZE(o) PyByteArray_Size(o)
1130
1164
  #endif
1165
+ #if __PYX_LIMITED_VERSION_HEX >= 0x030d00A1
1166
+ #define __Pyx_PyImport_AddModuleRef(name) PyImport_AddModuleRef(name)
1167
+ #else
1168
+ static CYTHON_INLINE PyObject *__Pyx_PyImport_AddModuleRef(const char *name) {
1169
+ PyObject *module = PyImport_AddModule(name);
1170
+ Py_XINCREF(module);
1171
+ return module;
1172
+ }
1173
+ #endif
1131
1174
  #if PY_MAJOR_VERSION >= 3
1132
1175
  #define PyIntObject PyLongObject
1133
1176
  #define PyInt_Type PyLong_Type
@@ -1206,7 +1249,7 @@ static CYTHON_INLINE float __PYX_NAN() {
1206
1249
  #endif
1207
1250
 
1208
1251
  #define __PYX_MARK_ERR_POS(f_index, lineno) \
1209
- { __pyx_filename = __pyx_f[f_index]; (void)__pyx_filename; __pyx_lineno = lineno; (void)__pyx_lineno; __pyx_clineno = __LINE__; (void)__pyx_clineno; }
1252
+ { __pyx_filename = __pyx_f[f_index]; (void)__pyx_filename; __pyx_lineno = lineno; (void)__pyx_lineno; __pyx_clineno = __LINE__; (void)__pyx_clineno; }
1210
1253
  #define __PYX_ERR(f_index, lineno, Ln_error) \
1211
1254
  { __PYX_MARK_ERR_POS(f_index, lineno) goto Ln_error; }
1212
1255
 
@@ -1295,9 +1338,10 @@ static CYTHON_INLINE int __Pyx_is_valid_index(Py_ssize_t i, Py_ssize_t limit) {
1295
1338
  #else
1296
1339
  #define __Pyx_sst_abs(value) ((value<0) ? -value : value)
1297
1340
  #endif
1341
+ static CYTHON_INLINE Py_ssize_t __Pyx_ssize_strlen(const char *s);
1298
1342
  static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject*);
1299
1343
  static CYTHON_INLINE const char* __Pyx_PyObject_AsStringAndSize(PyObject*, Py_ssize_t* length);
1300
- #define __Pyx_PyByteArray_FromString(s) PyByteArray_FromStringAndSize((const char*)s, strlen((const char*)s))
1344
+ static CYTHON_INLINE PyObject* __Pyx_PyByteArray_FromString(const char*);
1301
1345
  #define __Pyx_PyByteArray_FromStringAndSize(s, l) PyByteArray_FromStringAndSize((const char*)s, l)
1302
1346
  #define __Pyx_PyBytes_FromString PyBytes_FromString
1303
1347
  #define __Pyx_PyBytes_FromStringAndSize PyBytes_FromStringAndSize
@@ -1325,24 +1369,7 @@ static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char*);
1325
1369
  #define __Pyx_PyByteArray_FromCString(s) __Pyx_PyByteArray_FromString((const char*)s)
1326
1370
  #define __Pyx_PyStr_FromCString(s) __Pyx_PyStr_FromString((const char*)s)
1327
1371
  #define __Pyx_PyUnicode_FromCString(s) __Pyx_PyUnicode_FromString((const char*)s)
1328
- #if CYTHON_COMPILING_IN_LIMITED_API
1329
- static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const wchar_t *u)
1330
- {
1331
- const wchar_t *u_end = u;
1332
- while (*u_end++) ;
1333
- return (size_t)(u_end - u - 1);
1334
- }
1335
- #else
1336
- static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u)
1337
- {
1338
- const Py_UNICODE *u_end = u;
1339
- while (*u_end++) ;
1340
- return (size_t)(u_end - u - 1);
1341
- }
1342
- #endif
1343
1372
  #define __Pyx_PyUnicode_FromOrdinal(o) PyUnicode_FromOrdinal((int)o)
1344
- #define __Pyx_PyUnicode_FromUnicode(u) PyUnicode_FromUnicode(u, __Pyx_Py_UNICODE_strlen(u))
1345
- #define __Pyx_PyUnicode_FromUnicodeAndLength PyUnicode_FromUnicode
1346
1373
  #define __Pyx_PyUnicode_AsUnicode PyUnicode_AsUnicode
1347
1374
  #define __Pyx_NewRef(obj) (Py_INCREF(obj), obj)
1348
1375
  #define __Pyx_Owned_Py_None(b) __Pyx_NewRef(Py_None)
@@ -1392,7 +1419,7 @@ static CYTHON_INLINE Py_hash_t __Pyx_PyIndex_AsHash_t(PyObject*);
1392
1419
  #endif
1393
1420
  typedef Py_ssize_t __Pyx_compact_pylong;
1394
1421
  typedef size_t __Pyx_compact_upylong;
1395
- #else // Py < 3.12
1422
+ #else
1396
1423
  #define __Pyx_PyLong_IsNeg(x) (Py_SIZE(x) < 0)
1397
1424
  #define __Pyx_PyLong_IsNonNeg(x) (Py_SIZE(x) >= 0)
1398
1425
  #define __Pyx_PyLong_IsZero(x) (Py_SIZE(x) == 0)
@@ -1413,6 +1440,7 @@ static CYTHON_INLINE Py_hash_t __Pyx_PyIndex_AsHash_t(PyObject*);
1413
1440
  #endif
1414
1441
  #endif
1415
1442
  #if PY_MAJOR_VERSION < 3 && __PYX_DEFAULT_STRING_ENCODING_IS_ASCII
1443
+ #include <string.h>
1416
1444
  static int __Pyx_sys_getdefaultencoding_not_ascii;
1417
1445
  static int __Pyx_init_sys_getdefaultencoding_params(void) {
1418
1446
  PyObject* sys;
@@ -1463,6 +1491,7 @@ bad:
1463
1491
  #else
1464
1492
  #define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_Decode(c_str, size, __PYX_DEFAULT_STRING_ENCODING, NULL)
1465
1493
  #if __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT
1494
+ #include <string.h>
1466
1495
  static char* __PYX_DEFAULT_STRING_ENCODING;
1467
1496
  static int __Pyx_init_sys_getdefaultencoding_params(void) {
1468
1497
  PyObject* sys;
@@ -1518,6 +1547,11 @@ static const char *__pyx_f[] = {
1518
1547
  "complex.pxd",
1519
1548
  };
1520
1549
  /* #### Code section: utility_code_proto_before_types ### */
1550
+ /* ForceInitThreads.proto */
1551
+ #ifndef __PYX_FORCE_INIT_THREADS
1552
+ #define __PYX_FORCE_INIT_THREADS 0
1553
+ #endif
1554
+
1521
1555
  /* #### Code section: numeric_typedefs ### */
1522
1556
  /* #### Code section: complex_type_declarations ### */
1523
1557
  /* #### Code section: type_declarations ### */
@@ -1740,8 +1774,8 @@ static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int
1740
1774
  #define __Pyx_Arg_NewRef_VARARGS(arg) __Pyx_NewRef(arg)
1741
1775
  #define __Pyx_Arg_XDECREF_VARARGS(arg) Py_XDECREF(arg)
1742
1776
  #else
1743
- #define __Pyx_Arg_NewRef_VARARGS(arg) arg // no-op
1744
- #define __Pyx_Arg_XDECREF_VARARGS(arg) // no-op - arg is borrowed
1777
+ #define __Pyx_Arg_NewRef_VARARGS(arg) arg
1778
+ #define __Pyx_Arg_XDECREF_VARARGS(arg)
1745
1779
  #endif
1746
1780
  #define __Pyx_NumKwargs_VARARGS(kwds) PyDict_Size(kwds)
1747
1781
  #define __Pyx_KwValues_VARARGS(args, nargs) NULL
@@ -1752,9 +1786,14 @@ static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int
1752
1786
  #define __Pyx_NumKwargs_FASTCALL(kwds) PyTuple_GET_SIZE(kwds)
1753
1787
  #define __Pyx_KwValues_FASTCALL(args, nargs) ((args) + (nargs))
1754
1788
  static CYTHON_INLINE PyObject * __Pyx_GetKwValue_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues, PyObject *s);
1789
+ #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000
1790
+ CYTHON_UNUSED static PyObject *__Pyx_KwargsAsDict_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues);
1791
+ #else
1755
1792
  #define __Pyx_KwargsAsDict_FASTCALL(kw, kwvalues) _PyStack_AsDict(kwvalues, kw)
1756
- #define __Pyx_Arg_NewRef_FASTCALL(arg) arg // no-op, __Pyx_Arg_FASTCALL is direct and this needs
1757
- #define __Pyx_Arg_XDECREF_FASTCALL(arg) // no-op - arg was returned from array
1793
+ #endif
1794
+ #define __Pyx_Arg_NewRef_FASTCALL(arg) arg /* no-op, __Pyx_Arg_FASTCALL is direct and this needs
1795
+ to have the same reference counting */
1796
+ #define __Pyx_Arg_XDECREF_FASTCALL(arg)
1758
1797
  #else
1759
1798
  #define __Pyx_Arg_FASTCALL __Pyx_Arg_VARARGS
1760
1799
  #define __Pyx_NumKwargs_FASTCALL __Pyx_NumKwargs_VARARGS
@@ -1951,22 +1990,22 @@ static int __Pyx_setup_reduce(PyObject* type_obj);
1951
1990
  #endif
1952
1991
 
1953
1992
  /* TypeImport.proto */
1954
- #ifndef __PYX_HAVE_RT_ImportType_proto_3_0_2
1955
- #define __PYX_HAVE_RT_ImportType_proto_3_0_2
1993
+ #ifndef __PYX_HAVE_RT_ImportType_proto_3_0_9
1994
+ #define __PYX_HAVE_RT_ImportType_proto_3_0_9
1956
1995
  #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L
1957
1996
  #include <stdalign.h>
1958
1997
  #endif
1959
1998
  #if (defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L) || __cplusplus >= 201103L
1960
- #define __PYX_GET_STRUCT_ALIGNMENT_3_0_2(s) alignof(s)
1999
+ #define __PYX_GET_STRUCT_ALIGNMENT_3_0_9(s) alignof(s)
1961
2000
  #else
1962
- #define __PYX_GET_STRUCT_ALIGNMENT_3_0_2(s) sizeof(void*)
2001
+ #define __PYX_GET_STRUCT_ALIGNMENT_3_0_9(s) sizeof(void*)
1963
2002
  #endif
1964
- enum __Pyx_ImportType_CheckSize_3_0_2 {
1965
- __Pyx_ImportType_CheckSize_Error_3_0_2 = 0,
1966
- __Pyx_ImportType_CheckSize_Warn_3_0_2 = 1,
1967
- __Pyx_ImportType_CheckSize_Ignore_3_0_2 = 2
2003
+ enum __Pyx_ImportType_CheckSize_3_0_9 {
2004
+ __Pyx_ImportType_CheckSize_Error_3_0_9 = 0,
2005
+ __Pyx_ImportType_CheckSize_Warn_3_0_9 = 1,
2006
+ __Pyx_ImportType_CheckSize_Ignore_3_0_9 = 2
1968
2007
  };
1969
- static PyTypeObject *__Pyx_ImportType_3_0_2(PyObject* module, const char *module_name, const char *class_name, size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_0_2 check_size);
2008
+ static PyTypeObject *__Pyx_ImportType_3_0_9(PyObject* module, const char *module_name, const char *class_name, size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_0_9 check_size);
1970
2009
  #endif
1971
2010
 
1972
2011
  /* Import.proto */
@@ -2007,7 +2046,7 @@ static PyObject *__Pyx_Py3ClassCreate(PyObject *metaclass, PyObject *name, PyObj
2007
2046
  PyObject *mkw, int calculate_metaclass, int allow_py2_metaclass);
2008
2047
 
2009
2048
  /* SetNameInClass.proto */
2010
- #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030500A1
2049
+ #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030500A1 && PY_VERSION_HEX < 0x030d0000
2011
2050
  #define __Pyx_SetNameInClass(ns, name, value)\
2012
2051
  (likely(PyDict_CheckExact(ns)) ? _PyDict_SetItem_KnownHash(ns, name, value, ((PyASCIIObject *) name)->hash) : PyObject_SetItem(ns, name, value))
2013
2052
  #elif CYTHON_COMPILING_IN_CPYTHON
@@ -2107,7 +2146,7 @@ typedef struct {
2107
2146
  #endif
2108
2147
  void *defaults;
2109
2148
  int defaults_pyobjects;
2110
- size_t defaults_size; // used by FusedFunction for copying defaults
2149
+ size_t defaults_size;
2111
2150
  int flags;
2112
2151
  PyObject *defaults_tuple;
2113
2152
  PyObject *defaults_kwdict;
@@ -2115,9 +2154,13 @@ typedef struct {
2115
2154
  PyObject *func_annotations;
2116
2155
  PyObject *func_is_coroutine;
2117
2156
  } __pyx_CyFunctionObject;
2157
+ #undef __Pyx_CyOrPyCFunction_Check
2118
2158
  #define __Pyx_CyFunction_Check(obj) __Pyx_TypeCheck(obj, __pyx_CyFunctionType)
2119
- #define __Pyx_IsCyOrPyCFunction(obj) __Pyx_TypeCheck2(obj, __pyx_CyFunctionType, &PyCFunction_Type)
2159
+ #define __Pyx_CyOrPyCFunction_Check(obj) __Pyx_TypeCheck2(obj, __pyx_CyFunctionType, &PyCFunction_Type)
2120
2160
  #define __Pyx_CyFunction_CheckExact(obj) __Pyx_IS_TYPE(obj, __pyx_CyFunctionType)
2161
+ static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void *cfunc);
2162
+ #undef __Pyx_IsSameCFunction
2163
+ #define __Pyx_IsSameCFunction(func, cfunc) __Pyx__IsSameCyOrCFunction(func, cfunc)
2121
2164
  static PyObject *__Pyx_CyFunction_Init(__pyx_CyFunctionObject* op, PyMethodDef *ml,
2122
2165
  int flags, PyObject* qualname,
2123
2166
  PyObject *closure,
@@ -2409,7 +2452,8 @@ static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObj
2409
2452
  #define __Pyx_PyException_Check(obj) __Pyx_TypeCheck(obj, PyExc_Exception)
2410
2453
 
2411
2454
  /* CheckBinaryVersion.proto */
2412
- static int __Pyx_check_binary_version(void);
2455
+ static unsigned long __Pyx_get_runtime_version(void);
2456
+ static int __Pyx_check_binary_version(unsigned long ct_version, unsigned long rt_version, int allow_newer);
2413
2457
 
2414
2458
  /* InitStrings.proto */
2415
2459
  static int __Pyx_InitStrings(__Pyx_StringTabEntry *t);
@@ -2518,7 +2562,7 @@ static CYTHON_INLINE double __pyx_f_7cpython_7complex_7complex_4imag_imag(PyComp
2518
2562
  static CYTHON_INLINE int __pyx_f_7cpython_5array_extend_buffer(arrayobject *, char *, Py_ssize_t); /*proto*/
2519
2563
 
2520
2564
  /* Module declarations from "vttcompilepy.vttcompilepy" */
2521
- static std::string __pyx_convert_string_from_py_std__in_string(PyObject *); /*proto*/
2565
+ static std::string __pyx_convert_string_from_py_6libcpp_6string_std__in_string(PyObject *); /*proto*/
2522
2566
  /* #### Code section: typeinfo ### */
2523
2567
  /* #### Code section: before_global_var ### */
2524
2568
  #define __Pyx_MODULE_NAME "vttcompilepy.vttcompilepy"
@@ -3521,27 +3565,25 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) {
3521
3565
 
3522
3566
  /* "string.from_py":13
3523
3567
  *
3524
- * @cname("__pyx_convert_string_from_py_std__in_string")
3525
- * cdef string __pyx_convert_string_from_py_std__in_string(object o) except *: # <<<<<<<<<<<<<<
3568
+ * @cname("__pyx_convert_string_from_py_6libcpp_6string_std__in_string")
3569
+ * cdef string __pyx_convert_string_from_py_6libcpp_6string_std__in_string(object o) except *: # <<<<<<<<<<<<<<
3526
3570
  * cdef Py_ssize_t length = 0
3527
3571
  * cdef const char* data = __Pyx_PyObject_AsStringAndSize(o, &length)
3528
3572
  */
3529
3573
 
3530
- static std::string __pyx_convert_string_from_py_std__in_string(PyObject *__pyx_v_o) {
3574
+ static std::string __pyx_convert_string_from_py_6libcpp_6string_std__in_string(PyObject *__pyx_v_o) {
3531
3575
  Py_ssize_t __pyx_v_length;
3532
3576
  char const *__pyx_v_data;
3533
3577
  std::string __pyx_r;
3534
- __Pyx_RefNannyDeclarations
3535
3578
  char const *__pyx_t_1;
3536
3579
  std::string __pyx_t_2;
3537
3580
  int __pyx_lineno = 0;
3538
3581
  const char *__pyx_filename = NULL;
3539
3582
  int __pyx_clineno = 0;
3540
- __Pyx_RefNannySetupContext("__pyx_convert_string_from_py_std__in_string", 0);
3541
3583
 
3542
3584
  /* "string.from_py":14
3543
- * @cname("__pyx_convert_string_from_py_std__in_string")
3544
- * cdef string __pyx_convert_string_from_py_std__in_string(object o) except *:
3585
+ * @cname("__pyx_convert_string_from_py_6libcpp_6string_std__in_string")
3586
+ * cdef string __pyx_convert_string_from_py_6libcpp_6string_std__in_string(object o) except *:
3545
3587
  * cdef Py_ssize_t length = 0 # <<<<<<<<<<<<<<
3546
3588
  * cdef const char* data = __Pyx_PyObject_AsStringAndSize(o, &length)
3547
3589
  * return string(data, length)
@@ -3549,7 +3591,7 @@ static std::string __pyx_convert_string_from_py_std__in_string(PyObject *__pyx_v
3549
3591
  __pyx_v_length = 0;
3550
3592
 
3551
3593
  /* "string.from_py":15
3552
- * cdef string __pyx_convert_string_from_py_std__in_string(object o) except *:
3594
+ * cdef string __pyx_convert_string_from_py_6libcpp_6string_std__in_string(object o) except *:
3553
3595
  * cdef Py_ssize_t length = 0
3554
3596
  * cdef const char* data = __Pyx_PyObject_AsStringAndSize(o, &length) # <<<<<<<<<<<<<<
3555
3597
  * return string(data, length)
@@ -3576,18 +3618,17 @@ static std::string __pyx_convert_string_from_py_std__in_string(PyObject *__pyx_v
3576
3618
 
3577
3619
  /* "string.from_py":13
3578
3620
  *
3579
- * @cname("__pyx_convert_string_from_py_std__in_string")
3580
- * cdef string __pyx_convert_string_from_py_std__in_string(object o) except *: # <<<<<<<<<<<<<<
3621
+ * @cname("__pyx_convert_string_from_py_6libcpp_6string_std__in_string")
3622
+ * cdef string __pyx_convert_string_from_py_6libcpp_6string_std__in_string(object o) except *: # <<<<<<<<<<<<<<
3581
3623
  * cdef Py_ssize_t length = 0
3582
3624
  * cdef const char* data = __Pyx_PyObject_AsStringAndSize(o, &length)
3583
3625
  */
3584
3626
 
3585
3627
  /* function exit code */
3586
3628
  __pyx_L1_error:;
3587
- __Pyx_AddTraceback("string.from_py.__pyx_convert_string_from_py_std__in_string", __pyx_clineno, __pyx_lineno, __pyx_filename);
3629
+ __Pyx_AddTraceback("string.from_py.__pyx_convert_string_from_py_6libcpp_6string_std__in_string", __pyx_clineno, __pyx_lineno, __pyx_filename);
3588
3630
  __Pyx_pretend_to_initialize(&__pyx_r);
3589
3631
  __pyx_L0:;
3590
- __Pyx_RefNannyFinishContext();
3591
3632
  return __pyx_r;
3592
3633
  }
3593
3634
 
@@ -3601,8 +3642,6 @@ static std::string __pyx_convert_string_from_py_std__in_string(PyObject *__pyx_v
3601
3642
 
3602
3643
  static CYTHON_INLINE double __pyx_f_7cpython_7complex_7complex_4real_real(PyComplexObject *__pyx_v_self) {
3603
3644
  double __pyx_r;
3604
- __Pyx_RefNannyDeclarations
3605
- __Pyx_RefNannySetupContext("real", 0);
3606
3645
 
3607
3646
  /* "cpython/complex.pxd":20
3608
3647
  * @property
@@ -3624,7 +3663,6 @@ static CYTHON_INLINE double __pyx_f_7cpython_7complex_7complex_4real_real(PyComp
3624
3663
 
3625
3664
  /* function exit code */
3626
3665
  __pyx_L0:;
3627
- __Pyx_RefNannyFinishContext();
3628
3666
  return __pyx_r;
3629
3667
  }
3630
3668
 
@@ -3638,8 +3676,6 @@ static CYTHON_INLINE double __pyx_f_7cpython_7complex_7complex_4real_real(PyComp
3638
3676
 
3639
3677
  static CYTHON_INLINE double __pyx_f_7cpython_7complex_7complex_4imag_imag(PyComplexObject *__pyx_v_self) {
3640
3678
  double __pyx_r;
3641
- __Pyx_RefNannyDeclarations
3642
- __Pyx_RefNannySetupContext("imag", 0);
3643
3679
 
3644
3680
  /* "cpython/complex.pxd":24
3645
3681
  * @property
@@ -3661,7 +3697,6 @@ static CYTHON_INLINE double __pyx_f_7cpython_7complex_7complex_4imag_imag(PyComp
3661
3697
 
3662
3698
  /* function exit code */
3663
3699
  __pyx_L0:;
3664
- __Pyx_RefNannyFinishContext();
3665
3700
  return __pyx_r;
3666
3701
  }
3667
3702
 
@@ -3685,7 +3720,7 @@ static CYTHON_INLINE PyObject *__pyx_f_7cpython_11contextvars_get_value(PyObject
3685
3720
  int __pyx_lineno = 0;
3686
3721
  const char *__pyx_filename = NULL;
3687
3722
  int __pyx_clineno = 0;
3688
- __Pyx_RefNannySetupContext("get_value", 0);
3723
+ __Pyx_RefNannySetupContext("get_value", 1);
3689
3724
  if (__pyx_optional_args) {
3690
3725
  if (__pyx_optional_args->__pyx_n > 0) {
3691
3726
  __pyx_v_default_value = __pyx_optional_args->default_value;
@@ -3815,7 +3850,7 @@ static CYTHON_INLINE PyObject *__pyx_f_7cpython_11contextvars_get_value_no_defau
3815
3850
  int __pyx_lineno = 0;
3816
3851
  const char *__pyx_filename = NULL;
3817
3852
  int __pyx_clineno = 0;
3818
- __Pyx_RefNannySetupContext("get_value_no_default", 0);
3853
+ __Pyx_RefNannySetupContext("get_value_no_default", 1);
3819
3854
  if (__pyx_optional_args) {
3820
3855
  if (__pyx_optional_args->__pyx_n > 0) {
3821
3856
  __pyx_v_default_value = __pyx_optional_args->default_value;
@@ -4161,8 +4196,6 @@ CYTHON_UNUSED static void __pyx_pw_7cpython_5array_5array_3__releasebuffer__(PyO
4161
4196
  }
4162
4197
 
4163
4198
  static void __pyx_pf_7cpython_5array_5array_2__releasebuffer__(CYTHON_UNUSED arrayobject *__pyx_v_self, Py_buffer *__pyx_v_info) {
4164
- __Pyx_RefNannyDeclarations
4165
- __Pyx_RefNannySetupContext("__releasebuffer__", 0);
4166
4199
 
4167
4200
  /* "array.pxd":130
4168
4201
  *
@@ -4182,7 +4215,6 @@ static void __pyx_pf_7cpython_5array_5array_2__releasebuffer__(CYTHON_UNUSED arr
4182
4215
  */
4183
4216
 
4184
4217
  /* function exit code */
4185
- __Pyx_RefNannyFinishContext();
4186
4218
  }
4187
4219
 
4188
4220
  /* "array.pxd":141
@@ -4203,7 +4235,7 @@ static CYTHON_INLINE arrayobject *__pyx_f_7cpython_5array_clone(arrayobject *__p
4203
4235
  int __pyx_lineno = 0;
4204
4236
  const char *__pyx_filename = NULL;
4205
4237
  int __pyx_clineno = 0;
4206
- __Pyx_RefNannySetupContext("clone", 0);
4238
+ __Pyx_RefNannySetupContext("clone", 1);
4207
4239
 
4208
4240
  /* "array.pxd":145
4209
4241
  * type will be same as template.
@@ -4300,7 +4332,7 @@ static CYTHON_INLINE arrayobject *__pyx_f_7cpython_5array_copy(arrayobject *__py
4300
4332
  int __pyx_lineno = 0;
4301
4333
  const char *__pyx_filename = NULL;
4302
4334
  int __pyx_clineno = 0;
4303
- __Pyx_RefNannySetupContext("copy", 0);
4335
+ __Pyx_RefNannySetupContext("copy", 1);
4304
4336
 
4305
4337
  /* "array.pxd":152
4306
4338
  * cdef inline array copy(array self):
@@ -4367,12 +4399,10 @@ static CYTHON_INLINE int __pyx_f_7cpython_5array_extend_buffer(arrayobject *__py
4367
4399
  Py_ssize_t __pyx_v_itemsize;
4368
4400
  Py_ssize_t __pyx_v_origsize;
4369
4401
  int __pyx_r;
4370
- __Pyx_RefNannyDeclarations
4371
4402
  int __pyx_t_1;
4372
4403
  int __pyx_lineno = 0;
4373
4404
  const char *__pyx_filename = NULL;
4374
4405
  int __pyx_clineno = 0;
4375
- __Pyx_RefNannySetupContext("extend_buffer", 0);
4376
4406
 
4377
4407
  /* "array.pxd":160
4378
4408
  * (e.g. of same array type)
@@ -4434,7 +4464,6 @@ static CYTHON_INLINE int __pyx_f_7cpython_5array_extend_buffer(arrayobject *__py
4434
4464
  __Pyx_AddTraceback("cpython.array.extend_buffer", __pyx_clineno, __pyx_lineno, __pyx_filename);
4435
4465
  __pyx_r = -1;
4436
4466
  __pyx_L0:;
4437
- __Pyx_RefNannyFinishContext();
4438
4467
  return __pyx_r;
4439
4468
  }
4440
4469
 
@@ -4448,13 +4477,11 @@ static CYTHON_INLINE int __pyx_f_7cpython_5array_extend_buffer(arrayobject *__py
4448
4477
 
4449
4478
  static CYTHON_INLINE int __pyx_f_7cpython_5array_extend(arrayobject *__pyx_v_self, arrayobject *__pyx_v_other) {
4450
4479
  int __pyx_r;
4451
- __Pyx_RefNannyDeclarations
4452
4480
  int __pyx_t_1;
4453
4481
  int __pyx_t_2;
4454
4482
  int __pyx_lineno = 0;
4455
4483
  const char *__pyx_filename = NULL;
4456
4484
  int __pyx_clineno = 0;
4457
- __Pyx_RefNannySetupContext("extend", 0);
4458
4485
 
4459
4486
  /* "array.pxd":168
4460
4487
  * cdef inline int extend(array self, array other) except -1:
@@ -4508,7 +4535,6 @@ static CYTHON_INLINE int __pyx_f_7cpython_5array_extend(arrayobject *__pyx_v_sel
4508
4535
  __Pyx_AddTraceback("cpython.array.extend", __pyx_clineno, __pyx_lineno, __pyx_filename);
4509
4536
  __pyx_r = -1;
4510
4537
  __pyx_L0:;
4511
- __Pyx_RefNannyFinishContext();
4512
4538
  return __pyx_r;
4513
4539
  }
4514
4540
 
@@ -4521,8 +4547,6 @@ static CYTHON_INLINE int __pyx_f_7cpython_5array_extend(arrayobject *__pyx_v_sel
4521
4547
  */
4522
4548
 
4523
4549
  static CYTHON_INLINE void __pyx_f_7cpython_5array_zero(arrayobject *__pyx_v_self) {
4524
- __Pyx_RefNannyDeclarations
4525
- __Pyx_RefNannySetupContext("zero", 0);
4526
4550
 
4527
4551
  /* "array.pxd":174
4528
4552
  * cdef inline void zero(array self):
@@ -4540,7 +4564,6 @@ static CYTHON_INLINE void __pyx_f_7cpython_5array_zero(arrayobject *__pyx_v_self
4540
4564
  */
4541
4565
 
4542
4566
  /* function exit code */
4543
- __Pyx_RefNannyFinishContext();
4544
4567
  }
4545
4568
 
4546
4569
  /* "vttcompilepy/vttcompilepy.pyx":28
@@ -4567,8 +4590,7 @@ static int __pyx_pw_12vttcompilepy_12vttcompilepy_8Compiler_1__cinit__(PyObject
4567
4590
  #if CYTHON_ASSUME_SAFE_MACROS
4568
4591
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
4569
4592
  #else
4570
- __pyx_nargs = PyTuple_Size(__pyx_args);
4571
- if (unlikely((__pyx_nargs < 0))) __PYX_ERR(0, 28, __pyx_L3_error)
4593
+ __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return -1;
4572
4594
  #endif
4573
4595
  __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs);
4574
4596
  {
@@ -4602,10 +4624,11 @@ static int __pyx_pw_12vttcompilepy_12vttcompilepy_8Compiler_1__cinit__(PyObject
4602
4624
  }
4603
4625
  __pyx_v_font = values[0];
4604
4626
  }
4605
- goto __pyx_L4_argument_unpacking_done;
4627
+ goto __pyx_L6_skip;
4606
4628
  __pyx_L5_argtuple_error:;
4607
4629
  __Pyx_RaiseArgtupleInvalid("__cinit__", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 28, __pyx_L3_error)
4608
- goto __pyx_L3_error;
4630
+ __pyx_L6_skip:;
4631
+ goto __pyx_L4_argument_unpacking_done;
4609
4632
  __pyx_L3_error:;
4610
4633
  {
4611
4634
  Py_ssize_t __pyx_temp;
@@ -4781,7 +4804,7 @@ static int __pyx_pf_12vttcompilepy_12vttcompilepy_8Compiler___cinit__(struct __p
4781
4804
  * if result != True:
4782
4805
  * raise FileNotFoundError(self.app_.wCharToChar(err, werr))
4783
4806
  */
4784
- __pyx_t_7 = __pyx_convert_string_from_py_std__in_string(__pyx_v_src); if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 39, __pyx_L1_error)
4807
+ __pyx_t_7 = __pyx_convert_string_from_py_6libcpp_6string_std__in_string(__pyx_v_src); if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 39, __pyx_L1_error)
4785
4808
  __pyx_v_result = __pyx_v_self->app_->OpenFont(__PYX_STD_MOVE_IF_SUPPORTED(__pyx_t_7), __pyx_v_werr, 0x400);
4786
4809
 
4787
4810
  /* "vttcompilepy/vttcompilepy.pyx":40
@@ -4925,7 +4948,7 @@ static int __pyx_pf_12vttcompilepy_12vttcompilepy_8Compiler___cinit__(struct __p
4925
4948
  }
4926
4949
  #endif
4927
4950
  {
4928
- PyObject *__pyx_callargs[1] = {__pyx_t_5, };
4951
+ PyObject *__pyx_callargs[2] = {__pyx_t_5, NULL};
4929
4952
  __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_6, 0+__pyx_t_6);
4930
4953
  __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
4931
4954
  if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 47, __pyx_L1_error)
@@ -4992,7 +5015,7 @@ static int __pyx_pf_12vttcompilepy_12vttcompilepy_8Compiler___cinit__(struct __p
4992
5015
  }
4993
5016
  #endif
4994
5017
  {
4995
- PyObject *__pyx_callargs[1] = {__pyx_t_5, };
5018
+ PyObject *__pyx_callargs[2] = {__pyx_t_5, NULL};
4996
5019
  __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_6, 0+__pyx_t_6);
4997
5020
  __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
4998
5021
  if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 49, __pyx_L1_error)
@@ -5029,7 +5052,7 @@ static int __pyx_pf_12vttcompilepy_12vttcompilepy_8Compiler___cinit__(struct __p
5029
5052
  }
5030
5053
  #endif
5031
5054
  {
5032
- PyObject *__pyx_callargs[1] = {__pyx_t_5, };
5055
+ PyObject *__pyx_callargs[2] = {__pyx_t_5, NULL};
5033
5056
  __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_2, __pyx_callargs+1-__pyx_t_6, 0+__pyx_t_6);
5034
5057
  __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
5035
5058
  if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 51, __pyx_L1_error)
@@ -5261,8 +5284,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds
5261
5284
  #if CYTHON_ASSUME_SAFE_MACROS
5262
5285
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
5263
5286
  #else
5264
- __pyx_nargs = PyTuple_Size(__pyx_args);
5265
- if (unlikely((__pyx_nargs < 0))) __PYX_ERR(0, 63, __pyx_L3_error)
5287
+ __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
5266
5288
  #endif
5267
5289
  #endif
5268
5290
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
@@ -5297,10 +5319,11 @@ PyObject *__pyx_args, PyObject *__pyx_kwds
5297
5319
  }
5298
5320
  __pyx_v_file = values[0];
5299
5321
  }
5300
- goto __pyx_L4_argument_unpacking_done;
5322
+ goto __pyx_L6_skip;
5301
5323
  __pyx_L5_argtuple_error:;
5302
5324
  __Pyx_RaiseArgtupleInvalid("from_file", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 63, __pyx_L3_error)
5303
- goto __pyx_L3_error;
5325
+ __pyx_L6_skip:;
5326
+ goto __pyx_L4_argument_unpacking_done;
5304
5327
  __pyx_L3_error:;
5305
5328
  {
5306
5329
  Py_ssize_t __pyx_temp;
@@ -5332,7 +5355,7 @@ static PyObject *__pyx_pf_12vttcompilepy_12vttcompilepy_8Compiler_2from_file(PyT
5332
5355
  int __pyx_lineno = 0;
5333
5356
  const char *__pyx_filename = NULL;
5334
5357
  int __pyx_clineno = 0;
5335
- __Pyx_RefNannySetupContext("from_file", 0);
5358
+ __Pyx_RefNannySetupContext("from_file", 1);
5336
5359
 
5337
5360
  /* "vttcompilepy/vttcompilepy.pyx":65
5338
5361
  * @classmethod
@@ -5407,8 +5430,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds
5407
5430
  #if CYTHON_ASSUME_SAFE_MACROS
5408
5431
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
5409
5432
  #else
5410
- __pyx_nargs = PyTuple_Size(__pyx_args);
5411
- if (unlikely((__pyx_nargs < 0))) __PYX_ERR(0, 67, __pyx_L3_error)
5433
+ __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
5412
5434
  #endif
5413
5435
  #endif
5414
5436
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
@@ -5443,10 +5465,11 @@ PyObject *__pyx_args, PyObject *__pyx_kwds
5443
5465
  }
5444
5466
  __pyx_v_font = values[0];
5445
5467
  }
5446
- goto __pyx_L4_argument_unpacking_done;
5468
+ goto __pyx_L6_skip;
5447
5469
  __pyx_L5_argtuple_error:;
5448
5470
  __Pyx_RaiseArgtupleInvalid("from_ttfont", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 67, __pyx_L3_error)
5449
- goto __pyx_L3_error;
5471
+ __pyx_L6_skip:;
5472
+ goto __pyx_L4_argument_unpacking_done;
5450
5473
  __pyx_L3_error:;
5451
5474
  {
5452
5475
  Py_ssize_t __pyx_temp;
@@ -5478,7 +5501,7 @@ static PyObject *__pyx_pf_12vttcompilepy_12vttcompilepy_8Compiler_4from_ttfont(P
5478
5501
  int __pyx_lineno = 0;
5479
5502
  const char *__pyx_filename = NULL;
5480
5503
  int __pyx_clineno = 0;
5481
- __Pyx_RefNannySetupContext("from_ttfont", 0);
5504
+ __Pyx_RefNannySetupContext("from_ttfont", 1);
5482
5505
 
5483
5506
  /* "vttcompilepy/vttcompilepy.pyx":69
5484
5507
  * @classmethod
@@ -5535,8 +5558,6 @@ static void __pyx_pw_12vttcompilepy_12vttcompilepy_8Compiler_7__dealloc__(PyObje
5535
5558
  }
5536
5559
 
5537
5560
  static void __pyx_pf_12vttcompilepy_12vttcompilepy_8Compiler_6__dealloc__(struct __pyx_obj_12vttcompilepy_12vttcompilepy_Compiler *__pyx_v_self) {
5538
- __Pyx_RefNannyDeclarations
5539
- __Pyx_RefNannySetupContext("__dealloc__", 0);
5540
5561
 
5541
5562
  /* "vttcompilepy/vttcompilepy.pyx":72
5542
5563
  *
@@ -5556,7 +5577,6 @@ static void __pyx_pf_12vttcompilepy_12vttcompilepy_8Compiler_6__dealloc__(struct
5556
5577
  */
5557
5578
 
5558
5579
  /* function exit code */
5559
- __Pyx_RefNannyFinishContext();
5560
5580
  }
5561
5581
 
5562
5582
  /* "vttcompilepy/vttcompilepy.pyx":74
@@ -5587,9 +5607,6 @@ PyObject *__pyx_args, PyObject *__pyx_kwds
5587
5607
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
5588
5608
  #endif
5589
5609
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
5590
- int __pyx_lineno = 0;
5591
- const char *__pyx_filename = NULL;
5592
- int __pyx_clineno = 0;
5593
5610
  PyObject *__pyx_r = 0;
5594
5611
  __Pyx_RefNannyDeclarations
5595
5612
  __Pyx_RefNannySetupContext("import_source_from_binary (wrapper)", 0);
@@ -5597,21 +5614,13 @@ PyObject *__pyx_args, PyObject *__pyx_kwds
5597
5614
  #if CYTHON_ASSUME_SAFE_MACROS
5598
5615
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
5599
5616
  #else
5600
- __pyx_nargs = PyTuple_Size(__pyx_args);
5601
- if (unlikely((__pyx_nargs < 0))) __PYX_ERR(0, 74, __pyx_L3_error)
5617
+ __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
5602
5618
  #endif
5603
5619
  #endif
5604
5620
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
5605
5621
  if (unlikely(__pyx_nargs > 0)) {
5606
5622
  __Pyx_RaiseArgtupleInvalid("import_source_from_binary", 1, 0, 0, __pyx_nargs); return NULL;}
5607
5623
  if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_FASTCALL(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "import_source_from_binary", 0))) return NULL;
5608
- goto __pyx_L4_argument_unpacking_done;
5609
- goto __pyx_L3_error;
5610
- __pyx_L3_error:;
5611
- __Pyx_AddTraceback("vttcompilepy.vttcompilepy.Compiler.import_source_from_binary", __pyx_clineno, __pyx_lineno, __pyx_filename);
5612
- __Pyx_RefNannyFinishContext();
5613
- return NULL;
5614
- __pyx_L4_argument_unpacking_done:;
5615
5624
  __pyx_r = __pyx_pf_12vttcompilepy_12vttcompilepy_8Compiler_8import_source_from_binary(((struct __pyx_obj_12vttcompilepy_12vttcompilepy_Compiler *)__pyx_v_self));
5616
5625
 
5617
5626
  /* function exit code */
@@ -5631,7 +5640,7 @@ static PyObject *__pyx_pf_12vttcompilepy_12vttcompilepy_8Compiler_8import_source
5631
5640
  int __pyx_lineno = 0;
5632
5641
  const char *__pyx_filename = NULL;
5633
5642
  int __pyx_clineno = 0;
5634
- __Pyx_RefNannySetupContext("import_source_from_binary", 0);
5643
+ __Pyx_RefNannySetupContext("import_source_from_binary", 1);
5635
5644
 
5636
5645
  /* "vttcompilepy/vttcompilepy.pyx":77
5637
5646
  * cdef wchar_t werr[ERR_BUF_SIZE]
@@ -5740,8 +5749,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds
5740
5749
  #if CYTHON_ASSUME_SAFE_MACROS
5741
5750
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
5742
5751
  #else
5743
- __pyx_nargs = PyTuple_Size(__pyx_args);
5744
- if (unlikely((__pyx_nargs < 0))) __PYX_ERR(0, 81, __pyx_L3_error)
5752
+ __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
5745
5753
  #endif
5746
5754
  #endif
5747
5755
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
@@ -5792,10 +5800,11 @@ PyObject *__pyx_args, PyObject *__pyx_kwds
5792
5800
  __pyx_v_legacy = values[0];
5793
5801
  __pyx_v_variationCompositeGuard = values[1];
5794
5802
  }
5795
- goto __pyx_L4_argument_unpacking_done;
5803
+ goto __pyx_L6_skip;
5796
5804
  __pyx_L5_argtuple_error:;
5797
5805
  __Pyx_RaiseArgtupleInvalid("compile_all", 0, 0, 2, __pyx_nargs); __PYX_ERR(0, 81, __pyx_L3_error)
5798
- goto __pyx_L3_error;
5806
+ __pyx_L6_skip:;
5807
+ goto __pyx_L4_argument_unpacking_done;
5799
5808
  __pyx_L3_error:;
5800
5809
  {
5801
5810
  Py_ssize_t __pyx_temp;
@@ -5837,7 +5846,7 @@ static PyObject *__pyx_pf_12vttcompilepy_12vttcompilepy_8Compiler_10compile_all(
5837
5846
  int __pyx_lineno = 0;
5838
5847
  const char *__pyx_filename = NULL;
5839
5848
  int __pyx_clineno = 0;
5840
- __Pyx_RefNannySetupContext("compile_all", 0);
5849
+ __Pyx_RefNannySetupContext("compile_all", 1);
5841
5850
 
5842
5851
  /* "vttcompilepy/vttcompilepy.pyx":84
5843
5852
  * cdef wchar_t werr[ERR_BUF_SIZE]
@@ -5974,8 +5983,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds
5974
5983
  #if CYTHON_ASSUME_SAFE_MACROS
5975
5984
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
5976
5985
  #else
5977
- __pyx_nargs = PyTuple_Size(__pyx_args);
5978
- if (unlikely((__pyx_nargs < 0))) __PYX_ERR(0, 88, __pyx_L3_error)
5986
+ __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
5979
5987
  #endif
5980
5988
  #endif
5981
5989
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
@@ -6052,10 +6060,11 @@ PyObject *__pyx_args, PyObject *__pyx_kwds
6052
6060
  __pyx_v_legacy = values[2];
6053
6061
  __pyx_v_variationCompositeGuard = values[3];
6054
6062
  }
6055
- goto __pyx_L4_argument_unpacking_done;
6063
+ goto __pyx_L6_skip;
6056
6064
  __pyx_L5_argtuple_error:;
6057
6065
  __Pyx_RaiseArgtupleInvalid("compile_glyph_range", 0, 0, 4, __pyx_nargs); __PYX_ERR(0, 88, __pyx_L3_error)
6058
- goto __pyx_L3_error;
6066
+ __pyx_L6_skip:;
6067
+ goto __pyx_L4_argument_unpacking_done;
6059
6068
  __pyx_L3_error:;
6060
6069
  {
6061
6070
  Py_ssize_t __pyx_temp;
@@ -6105,7 +6114,7 @@ static PyObject *__pyx_pf_12vttcompilepy_12vttcompilepy_8Compiler_12compile_glyp
6105
6114
  int __pyx_lineno = 0;
6106
6115
  const char *__pyx_filename = NULL;
6107
6116
  int __pyx_clineno = 0;
6108
- __Pyx_RefNannySetupContext("compile_glyph_range", 0);
6117
+ __Pyx_RefNannySetupContext("compile_glyph_range", 1);
6109
6118
 
6110
6119
  /* "vttcompilepy/vttcompilepy.pyx":91
6111
6120
  * cdef wchar_t werr[ERR_BUF_SIZE]
@@ -6241,8 +6250,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds
6241
6250
  #if CYTHON_ASSUME_SAFE_MACROS
6242
6251
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
6243
6252
  #else
6244
- __pyx_nargs = PyTuple_Size(__pyx_args);
6245
- if (unlikely((__pyx_nargs < 0))) __PYX_ERR(0, 95, __pyx_L3_error)
6253
+ __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
6246
6254
  #endif
6247
6255
  #endif
6248
6256
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
@@ -6280,10 +6288,11 @@ PyObject *__pyx_args, PyObject *__pyx_kwds
6280
6288
  }
6281
6289
  __pyx_v_level = values[0];
6282
6290
  }
6283
- goto __pyx_L4_argument_unpacking_done;
6291
+ goto __pyx_L6_skip;
6284
6292
  __pyx_L5_argtuple_error:;
6285
6293
  __Pyx_RaiseArgtupleInvalid("get_ttfont", 0, 0, 1, __pyx_nargs); __PYX_ERR(0, 95, __pyx_L3_error)
6286
- goto __pyx_L3_error;
6294
+ __pyx_L6_skip:;
6295
+ goto __pyx_L4_argument_unpacking_done;
6287
6296
  __pyx_L3_error:;
6288
6297
  {
6289
6298
  Py_ssize_t __pyx_temp;
@@ -6516,7 +6525,7 @@ static PyObject *__pyx_pf_12vttcompilepy_12vttcompilepy_8Compiler_14get_ttfont(s
6516
6525
  }
6517
6526
  #endif
6518
6527
  {
6519
- PyObject *__pyx_callargs[1] = {__pyx_t_8, };
6528
+ PyObject *__pyx_callargs[2] = {__pyx_t_8, NULL};
6520
6529
  __pyx_t_5 = __Pyx_PyObject_FastCall(__pyx_t_7, __pyx_callargs+1-__pyx_t_6, 0+__pyx_t_6);
6521
6530
  __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
6522
6531
  if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 115, __pyx_L1_error)
@@ -6655,8 +6664,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds
6655
6664
  #if CYTHON_ASSUME_SAFE_MACROS
6656
6665
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
6657
6666
  #else
6658
- __pyx_nargs = PyTuple_Size(__pyx_args);
6659
- if (unlikely((__pyx_nargs < 0))) __PYX_ERR(0, 119, __pyx_L3_error)
6667
+ __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
6660
6668
  #endif
6661
6669
  #endif
6662
6670
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
@@ -6707,10 +6715,11 @@ PyObject *__pyx_args, PyObject *__pyx_kwds
6707
6715
  __pyx_v_file = values[0];
6708
6716
  __pyx_v_level = values[1];
6709
6717
  }
6710
- goto __pyx_L4_argument_unpacking_done;
6718
+ goto __pyx_L6_skip;
6711
6719
  __pyx_L5_argtuple_error:;
6712
6720
  __Pyx_RaiseArgtupleInvalid("save_font", 0, 0, 2, __pyx_nargs); __PYX_ERR(0, 119, __pyx_L3_error)
6713
- goto __pyx_L3_error;
6721
+ __pyx_L6_skip:;
6722
+ goto __pyx_L4_argument_unpacking_done;
6714
6723
  __pyx_L3_error:;
6715
6724
  {
6716
6725
  Py_ssize_t __pyx_temp;
@@ -6864,7 +6873,7 @@ static PyObject *__pyx_pf_12vttcompilepy_12vttcompilepy_8Compiler_16save_font(st
6864
6873
  */
6865
6874
  __pyx_t_3 = __Pyx_PyObject_CallOneArg(((PyObject *)(&PyBytes_Type)), __pyx_v_file); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 130, __pyx_L1_error)
6866
6875
  __Pyx_GOTREF(__pyx_t_3);
6867
- __pyx_t_6 = __pyx_convert_string_from_py_std__in_string(__pyx_t_3); if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 130, __pyx_L1_error)
6876
+ __pyx_t_6 = __pyx_convert_string_from_py_6libcpp_6string_std__in_string(__pyx_t_3); if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 130, __pyx_L1_error)
6868
6877
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
6869
6878
  __pyx_v_dest = __PYX_STD_MOVE_IF_SUPPORTED(__pyx_t_6);
6870
6879
 
@@ -6976,9 +6985,6 @@ PyObject *__pyx_args, PyObject *__pyx_kwds
6976
6985
  CYTHON_UNUSED Py_ssize_t __pyx_nargs;
6977
6986
  #endif
6978
6987
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
6979
- int __pyx_lineno = 0;
6980
- const char *__pyx_filename = NULL;
6981
- int __pyx_clineno = 0;
6982
6988
  PyObject *__pyx_r = 0;
6983
6989
  __Pyx_RefNannyDeclarations
6984
6990
  __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0);
@@ -6986,21 +6992,13 @@ PyObject *__pyx_args, PyObject *__pyx_kwds
6986
6992
  #if CYTHON_ASSUME_SAFE_MACROS
6987
6993
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
6988
6994
  #else
6989
- __pyx_nargs = PyTuple_Size(__pyx_args);
6990
- if (unlikely((__pyx_nargs < 0))) __PYX_ERR(1, 1, __pyx_L3_error)
6995
+ __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
6991
6996
  #endif
6992
6997
  #endif
6993
6998
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
6994
6999
  if (unlikely(__pyx_nargs > 0)) {
6995
7000
  __Pyx_RaiseArgtupleInvalid("__reduce_cython__", 1, 0, 0, __pyx_nargs); return NULL;}
6996
7001
  if (unlikely(__pyx_kwds) && __Pyx_NumKwargs_FASTCALL(__pyx_kwds) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__reduce_cython__", 0))) return NULL;
6997
- goto __pyx_L4_argument_unpacking_done;
6998
- goto __pyx_L3_error;
6999
- __pyx_L3_error:;
7000
- __Pyx_AddTraceback("vttcompilepy.vttcompilepy.Compiler.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename);
7001
- __Pyx_RefNannyFinishContext();
7002
- return NULL;
7003
- __pyx_L4_argument_unpacking_done:;
7004
7002
  __pyx_r = __pyx_pf_12vttcompilepy_12vttcompilepy_8Compiler_18__reduce_cython__(((struct __pyx_obj_12vttcompilepy_12vttcompilepy_Compiler *)__pyx_v_self));
7005
7003
 
7006
7004
  /* function exit code */
@@ -7014,7 +7012,7 @@ static PyObject *__pyx_pf_12vttcompilepy_12vttcompilepy_8Compiler_18__reduce_cyt
7014
7012
  int __pyx_lineno = 0;
7015
7013
  const char *__pyx_filename = NULL;
7016
7014
  int __pyx_clineno = 0;
7017
- __Pyx_RefNannySetupContext("__reduce_cython__", 0);
7015
+ __Pyx_RefNannySetupContext("__reduce_cython__", 1);
7018
7016
 
7019
7017
  /* "(tree fragment)":2
7020
7018
  * def __reduce_cython__(self):
@@ -7079,8 +7077,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds
7079
7077
  #if CYTHON_ASSUME_SAFE_MACROS
7080
7078
  __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
7081
7079
  #else
7082
- __pyx_nargs = PyTuple_Size(__pyx_args);
7083
- if (unlikely((__pyx_nargs < 0))) __PYX_ERR(1, 3, __pyx_L3_error)
7080
+ __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL;
7084
7081
  #endif
7085
7082
  #endif
7086
7083
  __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
@@ -7115,10 +7112,11 @@ PyObject *__pyx_args, PyObject *__pyx_kwds
7115
7112
  }
7116
7113
  __pyx_v___pyx_state = values[0];
7117
7114
  }
7118
- goto __pyx_L4_argument_unpacking_done;
7115
+ goto __pyx_L6_skip;
7119
7116
  __pyx_L5_argtuple_error:;
7120
7117
  __Pyx_RaiseArgtupleInvalid("__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(1, 3, __pyx_L3_error)
7121
- goto __pyx_L3_error;
7118
+ __pyx_L6_skip:;
7119
+ goto __pyx_L4_argument_unpacking_done;
7122
7120
  __pyx_L3_error:;
7123
7121
  {
7124
7122
  Py_ssize_t __pyx_temp;
@@ -7149,7 +7147,7 @@ static PyObject *__pyx_pf_12vttcompilepy_12vttcompilepy_8Compiler_20__setstate_c
7149
7147
  int __pyx_lineno = 0;
7150
7148
  const char *__pyx_filename = NULL;
7151
7149
  int __pyx_clineno = 0;
7152
- __Pyx_RefNannySetupContext("__setstate_cython__", 0);
7150
+ __Pyx_RefNannySetupContext("__setstate_cython__", 1);
7153
7151
 
7154
7152
  /* "(tree fragment)":4
7155
7153
  * raise TypeError, "no default __reduce__ due to non-trivial __cinit__"
@@ -7708,27 +7706,27 @@ static int __Pyx_modinit_type_import_code(void) {
7708
7706
  /*--- Type import code ---*/
7709
7707
  __pyx_t_1 = PyImport_ImportModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 9, __pyx_L1_error)
7710
7708
  __Pyx_GOTREF(__pyx_t_1);
7711
- __pyx_ptype_7cpython_4type_type = __Pyx_ImportType_3_0_2(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "type",
7709
+ __pyx_ptype_7cpython_4type_type = __Pyx_ImportType_3_0_9(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "type",
7712
7710
  #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000
7713
- sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_2(PyTypeObject),
7711
+ sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_9(PyTypeObject),
7714
7712
  #elif CYTHON_COMPILING_IN_LIMITED_API
7715
- sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_2(PyTypeObject),
7713
+ sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_9(PyTypeObject),
7716
7714
  #else
7717
- sizeof(PyHeapTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_2(PyHeapTypeObject),
7715
+ sizeof(PyHeapTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_9(PyHeapTypeObject),
7718
7716
  #endif
7719
- __Pyx_ImportType_CheckSize_Warn_3_0_2); if (!__pyx_ptype_7cpython_4type_type) __PYX_ERR(4, 9, __pyx_L1_error)
7717
+ __Pyx_ImportType_CheckSize_Warn_3_0_9); if (!__pyx_ptype_7cpython_4type_type) __PYX_ERR(4, 9, __pyx_L1_error)
7720
7718
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
7721
7719
  __pyx_t_1 = PyImport_ImportModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_t_1)) __PYX_ERR(5, 8, __pyx_L1_error)
7722
7720
  __Pyx_GOTREF(__pyx_t_1);
7723
- __pyx_ptype_7cpython_4bool_bool = __Pyx_ImportType_3_0_2(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "bool", sizeof(PyBoolObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_2(PyBoolObject),__Pyx_ImportType_CheckSize_Warn_3_0_2); if (!__pyx_ptype_7cpython_4bool_bool) __PYX_ERR(5, 8, __pyx_L1_error)
7721
+ __pyx_ptype_7cpython_4bool_bool = __Pyx_ImportType_3_0_9(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "bool", sizeof(PyBoolObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_9(PyBoolObject),__Pyx_ImportType_CheckSize_Warn_3_0_9); if (!__pyx_ptype_7cpython_4bool_bool) __PYX_ERR(5, 8, __pyx_L1_error)
7724
7722
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
7725
7723
  __pyx_t_1 = PyImport_ImportModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_t_1)) __PYX_ERR(6, 15, __pyx_L1_error)
7726
7724
  __Pyx_GOTREF(__pyx_t_1);
7727
- __pyx_ptype_7cpython_7complex_complex = __Pyx_ImportType_3_0_2(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "complex", sizeof(PyComplexObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_2(PyComplexObject),__Pyx_ImportType_CheckSize_Warn_3_0_2); if (!__pyx_ptype_7cpython_7complex_complex) __PYX_ERR(6, 15, __pyx_L1_error)
7725
+ __pyx_ptype_7cpython_7complex_complex = __Pyx_ImportType_3_0_9(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "complex", sizeof(PyComplexObject), __PYX_GET_STRUCT_ALIGNMENT_3_0_9(PyComplexObject),__Pyx_ImportType_CheckSize_Warn_3_0_9); if (!__pyx_ptype_7cpython_7complex_complex) __PYX_ERR(6, 15, __pyx_L1_error)
7728
7726
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
7729
7727
  __pyx_t_1 = PyImport_ImportModule("array"); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 69, __pyx_L1_error)
7730
7728
  __Pyx_GOTREF(__pyx_t_1);
7731
- __pyx_ptype_7cpython_5array_array = __Pyx_ImportType_3_0_2(__pyx_t_1, "array", "array", sizeof(arrayobject), __PYX_GET_STRUCT_ALIGNMENT_3_0_2(arrayobject),__Pyx_ImportType_CheckSize_Warn_3_0_2); if (!__pyx_ptype_7cpython_5array_array) __PYX_ERR(3, 69, __pyx_L1_error)
7729
+ __pyx_ptype_7cpython_5array_array = __Pyx_ImportType_3_0_9(__pyx_t_1, "array", "array", sizeof(arrayobject), __PYX_GET_STRUCT_ALIGNMENT_3_0_9(arrayobject),__Pyx_ImportType_CheckSize_Warn_3_0_9); if (!__pyx_ptype_7cpython_5array_array) __PYX_ERR(3, 69, __pyx_L1_error)
7732
7730
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
7733
7731
  __Pyx_RefNannyFinishContext();
7734
7732
  return 0;
@@ -7945,7 +7943,7 @@ static CYTHON_SMALL_CODE int __pyx_pymod_exec_vttcompilepy(PyObject *__pyx_pyini
7945
7943
  __pyx_t_1 = PyModule_Create(&__pyx_moduledef); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1, __pyx_L1_error)
7946
7944
  {
7947
7945
  int add_module_result = PyState_AddModule(__pyx_t_1, &__pyx_moduledef);
7948
- __pyx_t_1 = 0; /* transfer ownership from __pyx_t_1 to vttcompilepy pseudovariable */
7946
+ __pyx_t_1 = 0; /* transfer ownership from __pyx_t_1 to "vttcompilepy" pseudovariable */
7949
7947
  if (unlikely((add_module_result < 0))) __PYX_ERR(0, 1, __pyx_L1_error)
7950
7948
  pystate_addmodule_run = 1;
7951
7949
  }
@@ -7957,10 +7955,8 @@ static CYTHON_SMALL_CODE int __pyx_pymod_exec_vttcompilepy(PyObject *__pyx_pyini
7957
7955
  CYTHON_UNUSED_VAR(__pyx_t_1);
7958
7956
  __pyx_d = PyModule_GetDict(__pyx_m); if (unlikely(!__pyx_d)) __PYX_ERR(0, 1, __pyx_L1_error)
7959
7957
  Py_INCREF(__pyx_d);
7960
- __pyx_b = PyImport_AddModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_b)) __PYX_ERR(0, 1, __pyx_L1_error)
7961
- Py_INCREF(__pyx_b);
7962
- __pyx_cython_runtime = PyImport_AddModule((char *) "cython_runtime"); if (unlikely(!__pyx_cython_runtime)) __PYX_ERR(0, 1, __pyx_L1_error)
7963
- Py_INCREF(__pyx_cython_runtime);
7958
+ __pyx_b = __Pyx_PyImport_AddModuleRef(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_b)) __PYX_ERR(0, 1, __pyx_L1_error)
7959
+ __pyx_cython_runtime = __Pyx_PyImport_AddModuleRef((const char *) "cython_runtime"); if (unlikely(!__pyx_cython_runtime)) __PYX_ERR(0, 1, __pyx_L1_error)
7964
7960
  if (PyObject_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) __PYX_ERR(0, 1, __pyx_L1_error)
7965
7961
  #if CYTHON_REFNANNY
7966
7962
  __Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny");
@@ -7972,7 +7968,7 @@ if (!__Pyx_RefNanny) {
7972
7968
  }
7973
7969
  #endif
7974
7970
  __Pyx_RefNannySetupContext("__Pyx_PyMODINIT_FUNC PyInit_vttcompilepy(void)", 0);
7975
- if (__Pyx_check_binary_version() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
7971
+ if (__Pyx_check_binary_version(__PYX_LIMITED_VERSION_HEX, __Pyx_get_runtime_version(), CYTHON_COMPILING_IN_LIMITED_API) < 0) __PYX_ERR(0, 1, __pyx_L1_error)
7976
7972
  #ifdef __Pxy_PyFrame_Initialize_Offsets
7977
7973
  __Pxy_PyFrame_Initialize_Offsets();
7978
7974
  #endif
@@ -8615,6 +8611,8 @@ static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObjec
8615
8611
  tmp_value = tstate->current_exception;
8616
8612
  tstate->current_exception = value;
8617
8613
  Py_XDECREF(tmp_value);
8614
+ Py_XDECREF(type);
8615
+ Py_XDECREF(tb);
8618
8616
  #else
8619
8617
  PyObject *tmp_type, *tmp_value, *tmp_tb;
8620
8618
  tmp_type = tstate->curexc_type;
@@ -8672,14 +8670,20 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject
8672
8670
  #endif
8673
8671
 
8674
8672
  /* PyObjectGetAttrStrNoError */
8673
+ #if __PYX_LIMITED_VERSION_HEX < 0x030d00A1
8675
8674
  static void __Pyx_PyObject_GetAttrStr_ClearAttributeError(void) {
8676
8675
  __Pyx_PyThreadState_declare
8677
8676
  __Pyx_PyThreadState_assign
8678
8677
  if (likely(__Pyx_PyErr_ExceptionMatches(PyExc_AttributeError)))
8679
8678
  __Pyx_PyErr_Clear();
8680
8679
  }
8680
+ #endif
8681
8681
  static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStrNoError(PyObject* obj, PyObject* attr_name) {
8682
8682
  PyObject *result;
8683
+ #if __PYX_LIMITED_VERSION_HEX >= 0x030d00A1
8684
+ (void) PyObject_GetOptionalAttr(obj, attr_name, &result);
8685
+ return result;
8686
+ #else
8683
8687
  #if CYTHON_COMPILING_IN_CPYTHON && CYTHON_USE_TYPE_SLOTS && PY_VERSION_HEX >= 0x030700B1
8684
8688
  PyTypeObject* tp = Py_TYPE(obj);
8685
8689
  if (likely(tp->tp_getattro == PyObject_GenericGetAttr)) {
@@ -8691,6 +8695,7 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStrNoError(PyObject* obj, P
8691
8695
  __Pyx_PyObject_GetAttrStr_ClearAttributeError();
8692
8696
  }
8693
8697
  return result;
8698
+ #endif
8694
8699
  }
8695
8700
 
8696
8701
  /* GetBuiltinName */
@@ -8906,13 +8911,31 @@ static CYTHON_INLINE PyObject * __Pyx_GetKwValue_FASTCALL(PyObject *kwnames, PyO
8906
8911
  {
8907
8912
  int eq = __Pyx_PyUnicode_Equals(s, PyTuple_GET_ITEM(kwnames, i), Py_EQ);
8908
8913
  if (unlikely(eq != 0)) {
8909
- if (unlikely(eq < 0)) return NULL; // error
8914
+ if (unlikely(eq < 0)) return NULL;
8910
8915
  return kwvalues[i];
8911
8916
  }
8912
8917
  }
8913
- return NULL; // not found (no exception set)
8918
+ return NULL;
8919
+ }
8920
+ #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000
8921
+ CYTHON_UNUSED static PyObject *__Pyx_KwargsAsDict_FASTCALL(PyObject *kwnames, PyObject *const *kwvalues) {
8922
+ Py_ssize_t i, nkwargs = PyTuple_GET_SIZE(kwnames);
8923
+ PyObject *dict;
8924
+ dict = PyDict_New();
8925
+ if (unlikely(!dict))
8926
+ return NULL;
8927
+ for (i=0; i<nkwargs; i++) {
8928
+ PyObject *key = PyTuple_GET_ITEM(kwnames, i);
8929
+ if (unlikely(PyDict_SetItem(dict, key, kwvalues[i]) < 0))
8930
+ goto bad;
8931
+ }
8932
+ return dict;
8933
+ bad:
8934
+ Py_DECREF(dict);
8935
+ return NULL;
8914
8936
  }
8915
8937
  #endif
8938
+ #endif
8916
8939
 
8917
8940
  /* RaiseDoubleKeywords */
8918
8941
  static void __Pyx_RaiseDoubleKeywordsError(
@@ -8979,7 +9002,7 @@ static int __Pyx_ParseOptionalKeywords(
8979
9002
  if (*name) {
8980
9003
  values[name-argnames] = value;
8981
9004
  #if CYTHON_AVOID_BORROWED_REFS
8982
- Py_INCREF(value); // transfer ownership of value to values
9005
+ Py_INCREF(value);
8983
9006
  Py_DECREF(key);
8984
9007
  #endif
8985
9008
  key = NULL;
@@ -8998,7 +9021,7 @@ static int __Pyx_ParseOptionalKeywords(
8998
9021
  && _PyString_Eq(**name, key)) {
8999
9022
  values[name-argnames] = value;
9000
9023
  #if CYTHON_AVOID_BORROWED_REFS
9001
- value = NULL; // ownership transferred to values
9024
+ value = NULL;
9002
9025
  #endif
9003
9026
  break;
9004
9027
  }
@@ -9030,7 +9053,7 @@ static int __Pyx_ParseOptionalKeywords(
9030
9053
  if (cmp == 0) {
9031
9054
  values[name-argnames] = value;
9032
9055
  #if CYTHON_AVOID_BORROWED_REFS
9033
- value = NULL; // ownership transferred to values
9056
+ value = NULL;
9034
9057
  #endif
9035
9058
  break;
9036
9059
  }
@@ -9117,8 +9140,13 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg
9117
9140
  ternaryfunc call = Py_TYPE(func)->tp_call;
9118
9141
  if (unlikely(!call))
9119
9142
  return PyObject_Call(func, arg, kw);
9143
+ #if PY_MAJOR_VERSION < 3
9120
9144
  if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object")))
9121
9145
  return NULL;
9146
+ #else
9147
+ if (unlikely(Py_EnterRecursiveCall(" while calling a Python object")))
9148
+ return NULL;
9149
+ #endif
9122
9150
  result = (*call)(func, arg, kw);
9123
9151
  Py_LeaveRecursiveCall();
9124
9152
  if (unlikely(!result) && unlikely(!PyErr_Occurred())) {
@@ -9165,7 +9193,7 @@ static CYTHON_INLINE PyObject *__Pyx__GetModuleGlobalName(PyObject *name)
9165
9193
  {
9166
9194
  PyObject *result;
9167
9195
  #if !CYTHON_AVOID_BORROWED_REFS
9168
- #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030500A1
9196
+ #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030500A1 && PY_VERSION_HEX < 0x030d0000
9169
9197
  result = _PyDict_GetItem_KnownHash(__pyx_d, name, ((PyASCIIObject *) name)->hash);
9170
9198
  __PYX_UPDATE_DICT_CACHE(__pyx_d, result, *dict_cached_value, *dict_version)
9171
9199
  if (likely(result)) {
@@ -9244,9 +9272,15 @@ static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args,
9244
9272
  PyObject *result;
9245
9273
  assert(kwargs == NULL || PyDict_Check(kwargs));
9246
9274
  nk = kwargs ? PyDict_Size(kwargs) : 0;
9275
+ #if PY_MAJOR_VERSION < 3
9247
9276
  if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object"))) {
9248
9277
  return NULL;
9249
9278
  }
9279
+ #else
9280
+ if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) {
9281
+ return NULL;
9282
+ }
9283
+ #endif
9250
9284
  if (
9251
9285
  #if PY_MAJOR_VERSION >= 3
9252
9286
  co->co_kwonlyargcount == 0 &&
@@ -9321,10 +9355,15 @@ done:
9321
9355
  static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg) {
9322
9356
  PyObject *self, *result;
9323
9357
  PyCFunction cfunc;
9324
- cfunc = PyCFunction_GET_FUNCTION(func);
9325
- self = PyCFunction_GET_SELF(func);
9358
+ cfunc = __Pyx_CyOrPyCFunction_GET_FUNCTION(func);
9359
+ self = __Pyx_CyOrPyCFunction_GET_SELF(func);
9360
+ #if PY_MAJOR_VERSION < 3
9326
9361
  if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object")))
9327
9362
  return NULL;
9363
+ #else
9364
+ if (unlikely(Py_EnterRecursiveCall(" while calling a Python object")))
9365
+ return NULL;
9366
+ #endif
9328
9367
  result = cfunc(self, arg);
9329
9368
  Py_LeaveRecursiveCall();
9330
9369
  if (unlikely(!result) && unlikely(!PyErr_Occurred())) {
@@ -9337,6 +9376,7 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject
9337
9376
  #endif
9338
9377
 
9339
9378
  /* PyObjectFastCall */
9379
+ #if PY_VERSION_HEX < 0x03090000 || CYTHON_COMPILING_IN_LIMITED_API
9340
9380
  static PyObject* __Pyx_PyObject_FastCall_fallback(PyObject *func, PyObject **args, size_t nargs, PyObject *kwargs) {
9341
9381
  PyObject *argstuple;
9342
9382
  PyObject *result = 0;
@@ -9352,28 +9392,17 @@ static PyObject* __Pyx_PyObject_FastCall_fallback(PyObject *func, PyObject **arg
9352
9392
  Py_DECREF(argstuple);
9353
9393
  return result;
9354
9394
  }
9395
+ #endif
9355
9396
  static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObject **args, size_t _nargs, PyObject *kwargs) {
9356
9397
  Py_ssize_t nargs = __Pyx_PyVectorcall_NARGS(_nargs);
9357
9398
  #if CYTHON_COMPILING_IN_CPYTHON
9358
9399
  if (nargs == 0 && kwargs == NULL) {
9359
- #if defined(__Pyx_CyFunction_USED) && defined(NDEBUG)
9360
- if (__Pyx_IsCyOrPyCFunction(func))
9361
- #else
9362
- if (PyCFunction_Check(func))
9363
- #endif
9364
- {
9365
- if (likely(PyCFunction_GET_FLAGS(func) & METH_NOARGS)) {
9366
- return __Pyx_PyObject_CallMethO(func, NULL);
9367
- }
9368
- }
9400
+ if (__Pyx_CyOrPyCFunction_Check(func) && likely( __Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_NOARGS))
9401
+ return __Pyx_PyObject_CallMethO(func, NULL);
9369
9402
  }
9370
9403
  else if (nargs == 1 && kwargs == NULL) {
9371
- if (PyCFunction_Check(func))
9372
- {
9373
- if (likely(PyCFunction_GET_FLAGS(func) & METH_O)) {
9374
- return __Pyx_PyObject_CallMethO(func, args[0]);
9375
- }
9376
- }
9404
+ if (__Pyx_CyOrPyCFunction_Check(func) && likely( __Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_O))
9405
+ return __Pyx_PyObject_CallMethO(func, args[0]);
9377
9406
  }
9378
9407
  #endif
9379
9408
  #if PY_VERSION_HEX < 0x030800B1
@@ -9397,25 +9426,31 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObj
9397
9426
  }
9398
9427
  #endif
9399
9428
  #endif
9400
- #if CYTHON_VECTORCALL
9401
- #if Py_VERSION_HEX < 0x03090000
9402
- vectorcallfunc f = _PyVectorcall_Function(func);
9403
- #else
9404
- vectorcallfunc f = PyVectorcall_Function(func);
9405
- #endif
9406
- if (f) {
9407
- return f(func, args, (size_t)nargs, kwargs);
9408
- }
9409
- #elif defined(__Pyx_CyFunction_USED) && CYTHON_BACKPORT_VECTORCALL
9410
- if (__Pyx_CyFunction_CheckExact(func)) {
9411
- __pyx_vectorcallfunc f = __Pyx_CyFunction_func_vectorcall(func);
9412
- if (f) return f(func, args, (size_t)nargs, kwargs);
9429
+ if (kwargs == NULL) {
9430
+ #if CYTHON_VECTORCALL
9431
+ #if PY_VERSION_HEX < 0x03090000
9432
+ vectorcallfunc f = _PyVectorcall_Function(func);
9433
+ #else
9434
+ vectorcallfunc f = PyVectorcall_Function(func);
9435
+ #endif
9436
+ if (f) {
9437
+ return f(func, args, (size_t)nargs, NULL);
9438
+ }
9439
+ #elif defined(__Pyx_CyFunction_USED) && CYTHON_BACKPORT_VECTORCALL
9440
+ if (__Pyx_CyFunction_CheckExact(func)) {
9441
+ __pyx_vectorcallfunc f = __Pyx_CyFunction_func_vectorcall(func);
9442
+ if (f) return f(func, args, (size_t)nargs, NULL);
9443
+ }
9444
+ #endif
9413
9445
  }
9414
- #endif
9415
9446
  if (nargs == 0) {
9416
9447
  return __Pyx_PyObject_Call(func, __pyx_empty_tuple, kwargs);
9417
9448
  }
9449
+ #if PY_VERSION_HEX >= 0x03090000 && !CYTHON_COMPILING_IN_LIMITED_API
9450
+ return PyObject_VectorcallDict(func, args, (size_t)nargs, kwargs);
9451
+ #else
9418
9452
  return __Pyx_PyObject_FastCall_fallback(func, args, (size_t)nargs, kwargs);
9453
+ #endif
9419
9454
  }
9420
9455
 
9421
9456
  /* PyObjectCallOneArg */
@@ -9761,8 +9796,8 @@ static int __Pyx_fix_up_extension_type_from_spec(PyType_Spec *spec, PyTypeObject
9761
9796
 
9762
9797
  /* PyObjectCallNoArg */
9763
9798
  static CYTHON_INLINE PyObject* __Pyx_PyObject_CallNoArg(PyObject *func) {
9764
- PyObject *arg = NULL;
9765
- return __Pyx_PyObject_FastCall(func, (&arg)+1, 0 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET);
9799
+ PyObject *arg[2] = {NULL, NULL};
9800
+ return __Pyx_PyObject_FastCall(func, arg + 1, 0 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET);
9766
9801
  }
9767
9802
 
9768
9803
  /* PyObjectGetMethod */
@@ -9927,38 +9962,38 @@ static int __Pyx_validate_bases_tuple(const char *type_name, Py_ssize_t dictoffs
9927
9962
  #endif
9928
9963
  return -1;
9929
9964
  }
9930
- #if !CYTHON_USE_TYPE_SLOTS
9931
- if (dictoffset == 0) {
9932
- PyErr_Format(PyExc_TypeError,
9933
- "extension type '%s.200s': "
9934
- "unable to validate whether bases have a __dict__ "
9935
- "when CYTHON_USE_TYPE_SLOTS is off "
9936
- "(likely because you are building in the limited API). "
9937
- "Therefore, all extension types with multiple bases "
9938
- "must add 'cdef dict __dict__' in this compilation mode",
9939
- type_name);
9940
- #if CYTHON_AVOID_BORROWED_REFS
9941
- Py_DECREF(b0);
9942
- #endif
9943
- return -1;
9944
- }
9945
- #else
9946
- if (dictoffset == 0 && b->tp_dictoffset)
9965
+ if (dictoffset == 0)
9947
9966
  {
9948
- __Pyx_TypeName b_name = __Pyx_PyType_GetName(b);
9949
- PyErr_Format(PyExc_TypeError,
9950
- "extension type '%.200s' has no __dict__ slot, "
9951
- "but base type '" __Pyx_FMT_TYPENAME "' has: "
9952
- "either add 'cdef dict __dict__' to the extension type "
9953
- "or add '__slots__ = [...]' to the base type",
9954
- type_name, b_name);
9955
- __Pyx_DECREF_TypeName(b_name);
9967
+ Py_ssize_t b_dictoffset = 0;
9968
+ #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY
9969
+ b_dictoffset = b->tp_dictoffset;
9970
+ #else
9971
+ PyObject *py_b_dictoffset = PyObject_GetAttrString((PyObject*)b, "__dictoffset__");
9972
+ if (!py_b_dictoffset) goto dictoffset_return;
9973
+ b_dictoffset = PyLong_AsSsize_t(py_b_dictoffset);
9974
+ Py_DECREF(py_b_dictoffset);
9975
+ if (b_dictoffset == -1 && PyErr_Occurred()) goto dictoffset_return;
9976
+ #endif
9977
+ if (b_dictoffset) {
9978
+ {
9979
+ __Pyx_TypeName b_name = __Pyx_PyType_GetName(b);
9980
+ PyErr_Format(PyExc_TypeError,
9981
+ "extension type '%.200s' has no __dict__ slot, "
9982
+ "but base type '" __Pyx_FMT_TYPENAME "' has: "
9983
+ "either add 'cdef dict __dict__' to the extension type "
9984
+ "or add '__slots__ = [...]' to the base type",
9985
+ type_name, b_name);
9986
+ __Pyx_DECREF_TypeName(b_name);
9987
+ }
9988
+ #if !(CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY)
9989
+ dictoffset_return:
9990
+ #endif
9956
9991
  #if CYTHON_AVOID_BORROWED_REFS
9957
- Py_DECREF(b0);
9992
+ Py_DECREF(b0);
9958
9993
  #endif
9959
- return -1;
9994
+ return -1;
9995
+ }
9960
9996
  }
9961
- #endif
9962
9997
  #if CYTHON_AVOID_BORROWED_REFS
9963
9998
  Py_DECREF(b0);
9964
9999
  #endif
@@ -10213,10 +10248,10 @@ __PYX_GOOD:
10213
10248
  #endif
10214
10249
 
10215
10250
  /* TypeImport */
10216
- #ifndef __PYX_HAVE_RT_ImportType_3_0_2
10217
- #define __PYX_HAVE_RT_ImportType_3_0_2
10218
- static PyTypeObject *__Pyx_ImportType_3_0_2(PyObject *module, const char *module_name, const char *class_name,
10219
- size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_0_2 check_size)
10251
+ #ifndef __PYX_HAVE_RT_ImportType_3_0_9
10252
+ #define __PYX_HAVE_RT_ImportType_3_0_9
10253
+ static PyTypeObject *__Pyx_ImportType_3_0_9(PyObject *module, const char *module_name, const char *class_name,
10254
+ size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_0_9 check_size)
10220
10255
  {
10221
10256
  PyObject *result = 0;
10222
10257
  char warning[200];
@@ -10270,7 +10305,7 @@ static PyTypeObject *__Pyx_ImportType_3_0_2(PyObject *module, const char *module
10270
10305
  module_name, class_name, size, basicsize+itemsize);
10271
10306
  goto bad;
10272
10307
  }
10273
- if (check_size == __Pyx_ImportType_CheckSize_Error_3_0_2 &&
10308
+ if (check_size == __Pyx_ImportType_CheckSize_Error_3_0_9 &&
10274
10309
  ((size_t)basicsize > size || (size_t)(basicsize + itemsize) < size)) {
10275
10310
  PyErr_Format(PyExc_ValueError,
10276
10311
  "%.200s.%.200s size changed, may indicate binary incompatibility. "
@@ -10278,7 +10313,7 @@ static PyTypeObject *__Pyx_ImportType_3_0_2(PyObject *module, const char *module
10278
10313
  module_name, class_name, size, basicsize, basicsize+itemsize);
10279
10314
  goto bad;
10280
10315
  }
10281
- else if (check_size == __Pyx_ImportType_CheckSize_Warn_3_0_2 && (size_t)basicsize > size) {
10316
+ else if (check_size == __Pyx_ImportType_CheckSize_Warn_3_0_9 && (size_t)basicsize > size) {
10282
10317
  PyOS_snprintf(warning, sizeof(warning),
10283
10318
  "%s.%s size changed, may indicate binary incompatibility. "
10284
10319
  "Expected %zd from C header, got %zd from PyObject",
@@ -10315,7 +10350,7 @@ static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level) {
10315
10350
  {
10316
10351
  #if PY_MAJOR_VERSION >= 3
10317
10352
  if (level == -1) {
10318
- if ((1) && (strchr(__Pyx_MODULE_NAME, '.'))) {
10353
+ if (strchr(__Pyx_MODULE_NAME, '.') != NULL) {
10319
10354
  module = PyImport_ImportModuleLevelObject(
10320
10355
  name, __pyx_d, empty_dict, from_list, 1);
10321
10356
  if (unlikely(!module)) {
@@ -10878,10 +10913,7 @@ static PyObject *__Pyx_Py3ClassCreate(PyObject *metaclass, PyObject *name, PyObj
10878
10913
 
10879
10914
  /* FetchSharedCythonModule */
10880
10915
  static PyObject *__Pyx_FetchSharedCythonABIModule(void) {
10881
- PyObject *abi_module = PyImport_AddModule((char*) __PYX_ABI_MODULE_NAME);
10882
- if (unlikely(!abi_module)) return NULL;
10883
- Py_INCREF(abi_module);
10884
- return abi_module;
10916
+ return __Pyx_PyImport_AddModuleRef((char*) __PYX_ABI_MODULE_NAME);
10885
10917
  }
10886
10918
 
10887
10919
  /* FetchCommonType */
@@ -11042,6 +11074,20 @@ static CYTHON_INLINE PyObject *__Pyx_PyVectorcall_FastCallDict(PyObject *func, _
11042
11074
  #endif
11043
11075
 
11044
11076
  /* CythonFunctionShared */
11077
+ #if CYTHON_COMPILING_IN_LIMITED_API
11078
+ static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void *cfunc) {
11079
+ if (__Pyx_CyFunction_Check(func)) {
11080
+ return PyCFunction_GetFunction(((__pyx_CyFunctionObject*)func)->func) == (PyCFunction) cfunc;
11081
+ } else if (PyCFunction_Check(func)) {
11082
+ return PyCFunction_GetFunction(func) == (PyCFunction) cfunc;
11083
+ }
11084
+ return 0;
11085
+ }
11086
+ #else
11087
+ static CYTHON_INLINE int __Pyx__IsSameCyOrCFunction(PyObject *func, void *cfunc) {
11088
+ return __Pyx_CyOrPyCFunction_Check(func) && __Pyx_CyOrPyCFunction_GET_FUNCTION(func) == (PyCFunction) cfunc;
11089
+ }
11090
+ #endif
11045
11091
  static CYTHON_INLINE void __Pyx__CyFunction_SetClassObj(__pyx_CyFunctionObject* f, PyObject* classobj) {
11046
11092
  #if PY_VERSION_HEX < 0x030900B1 || CYTHON_COMPILING_IN_LIMITED_API
11047
11093
  __Pyx_Py_XDECREF_SET(
@@ -11851,7 +11897,7 @@ static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS(PyObject *func,
11851
11897
  default:
11852
11898
  return NULL;
11853
11899
  }
11854
- return ((_PyCFunctionFastWithKeywords)(void(*)(void))def->ml_meth)(self, args, nargs, kwnames);
11900
+ return ((__Pyx_PyCFunctionFastWithKeywords)(void(*)(void))def->ml_meth)(self, args, nargs, kwnames);
11855
11901
  }
11856
11902
  static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS_METHOD(PyObject *func, PyObject *const *args, size_t nargsf, PyObject *kwnames)
11857
11903
  {
@@ -12265,8 +12311,8 @@ static PyObject *__Pyx_PyCode_Replace_For_AddTraceback(PyObject *code, PyObject
12265
12311
  Py_DECREF(replace);
12266
12312
  return result;
12267
12313
  }
12268
- #if __PYX_LIMITED_VERSION_HEX < 0x030780000
12269
12314
  PyErr_Clear();
12315
+ #if __PYX_LIMITED_VERSION_HEX < 0x030780000
12270
12316
  {
12271
12317
  PyObject *compiled = NULL, *result = NULL;
12272
12318
  if (unlikely(PyDict_SetItemString(scratch_dict, "code", code))) return NULL;
@@ -12286,6 +12332,8 @@ static PyObject *__Pyx_PyCode_Replace_For_AddTraceback(PyObject *code, PyObject
12286
12332
  if (result) Py_INCREF(result);
12287
12333
  return result;
12288
12334
  }
12335
+ #else
12336
+ return NULL;
12289
12337
  #endif
12290
12338
  }
12291
12339
  static void __Pyx_AddTraceback(const char *funcname, int c_line,
@@ -12383,7 +12431,7 @@ static PyCodeObject* __Pyx_CreateCodeObjectForTraceback(
12383
12431
  #else
12384
12432
  py_code = PyCode_NewEmpty(filename, funcname, py_line);
12385
12433
  #endif
12386
- Py_XDECREF(py_funcname); // XDECREF since it's only set on Py3 if cline
12434
+ Py_XDECREF(py_funcname);
12387
12435
  return py_code;
12388
12436
  bad:
12389
12437
  Py_XDECREF(py_funcname);
@@ -12487,13 +12535,13 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_StripCommand(StripCommand value)
12487
12535
  {
12488
12536
  int one = 1; int little = (int)*(unsigned char *)&one;
12489
12537
  unsigned char *bytes = (unsigned char *)&value;
12490
- #if !CYTHON_COMPILING_IN_LIMITED_API
12538
+ #if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030d0000
12491
12539
  return _PyLong_FromByteArray(bytes, sizeof(StripCommand),
12492
12540
  little, !is_unsigned);
12493
12541
  #else
12494
12542
  PyObject *from_bytes, *result = NULL;
12495
12543
  PyObject *py_bytes = NULL, *arg_tuple = NULL, *kwds = NULL, *order_str = NULL;
12496
- from_bytes = PyObject_GetAttrString((PyObject*)&PyInt_Type, "from_bytes");
12544
+ from_bytes = PyObject_GetAttrString((PyObject*)&PyLong_Type, "from_bytes");
12497
12545
  if (!from_bytes) return NULL;
12498
12546
  py_bytes = PyBytes_FromStringAndSize((char*)bytes, sizeof(StripCommand));
12499
12547
  if (!py_bytes) goto limited_bad;
@@ -12501,16 +12549,18 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_StripCommand(StripCommand value)
12501
12549
  if (!order_str) goto limited_bad;
12502
12550
  arg_tuple = PyTuple_Pack(2, py_bytes, order_str);
12503
12551
  if (!arg_tuple) goto limited_bad;
12504
- kwds = PyDict_New();
12505
- if (!kwds) goto limited_bad;
12506
- if (PyDict_SetItemString(kwds, "signed", __Pyx_NewRef(!is_unsigned ? Py_True : Py_False))) goto limited_bad;
12552
+ if (!is_unsigned) {
12553
+ kwds = PyDict_New();
12554
+ if (!kwds) goto limited_bad;
12555
+ if (PyDict_SetItemString(kwds, "signed", __Pyx_NewRef(Py_True))) goto limited_bad;
12556
+ }
12507
12557
  result = PyObject_Call(from_bytes, arg_tuple, kwds);
12508
12558
  limited_bad:
12509
- Py_XDECREF(from_bytes);
12510
- Py_XDECREF(py_bytes);
12511
- Py_XDECREF(order_str);
12512
- Py_XDECREF(arg_tuple);
12513
12559
  Py_XDECREF(kwds);
12560
+ Py_XDECREF(arg_tuple);
12561
+ Py_XDECREF(order_str);
12562
+ Py_XDECREF(py_bytes);
12563
+ Py_XDECREF(from_bytes);
12514
12564
  return result;
12515
12565
  #endif
12516
12566
  }
@@ -12686,7 +12736,7 @@ static CYTHON_INLINE uint32_t __Pyx_PyInt_As_uint32_t(PyObject *x) {
12686
12736
  #endif
12687
12737
  if (likely(v)) {
12688
12738
  int ret = -1;
12689
- #if !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray)
12739
+ #if PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray)
12690
12740
  int one = 1; int is_little = (int)*(unsigned char *)&one;
12691
12741
  unsigned char *bytes = (unsigned char *)&val;
12692
12742
  ret = _PyLong_AsByteArray((PyLongObject *)v,
@@ -12959,7 +13009,7 @@ static CYTHON_INLINE uint16_t __Pyx_PyInt_As_uint16_t(PyObject *x) {
12959
13009
  #endif
12960
13010
  if (likely(v)) {
12961
13011
  int ret = -1;
12962
- #if !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray)
13012
+ #if PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray)
12963
13013
  int one = 1; int is_little = (int)*(unsigned char *)&one;
12964
13014
  unsigned char *bytes = (unsigned char *)&val;
12965
13015
  ret = _PyLong_AsByteArray((PyLongObject *)v,
@@ -13411,7 +13461,7 @@ static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) {
13411
13461
  #endif
13412
13462
  if (likely(v)) {
13413
13463
  int ret = -1;
13414
- #if !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray)
13464
+ #if PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray)
13415
13465
  int one = 1; int is_little = (int)*(unsigned char *)&one;
13416
13466
  unsigned char *bytes = (unsigned char *)&val;
13417
13467
  ret = _PyLong_AsByteArray((PyLongObject *)v,
@@ -13563,13 +13613,13 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) {
13563
13613
  {
13564
13614
  int one = 1; int little = (int)*(unsigned char *)&one;
13565
13615
  unsigned char *bytes = (unsigned char *)&value;
13566
- #if !CYTHON_COMPILING_IN_LIMITED_API
13616
+ #if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030d0000
13567
13617
  return _PyLong_FromByteArray(bytes, sizeof(long),
13568
13618
  little, !is_unsigned);
13569
13619
  #else
13570
13620
  PyObject *from_bytes, *result = NULL;
13571
13621
  PyObject *py_bytes = NULL, *arg_tuple = NULL, *kwds = NULL, *order_str = NULL;
13572
- from_bytes = PyObject_GetAttrString((PyObject*)&PyInt_Type, "from_bytes");
13622
+ from_bytes = PyObject_GetAttrString((PyObject*)&PyLong_Type, "from_bytes");
13573
13623
  if (!from_bytes) return NULL;
13574
13624
  py_bytes = PyBytes_FromStringAndSize((char*)bytes, sizeof(long));
13575
13625
  if (!py_bytes) goto limited_bad;
@@ -13577,16 +13627,18 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) {
13577
13627
  if (!order_str) goto limited_bad;
13578
13628
  arg_tuple = PyTuple_Pack(2, py_bytes, order_str);
13579
13629
  if (!arg_tuple) goto limited_bad;
13580
- kwds = PyDict_New();
13581
- if (!kwds) goto limited_bad;
13582
- if (PyDict_SetItemString(kwds, "signed", __Pyx_NewRef(!is_unsigned ? Py_True : Py_False))) goto limited_bad;
13630
+ if (!is_unsigned) {
13631
+ kwds = PyDict_New();
13632
+ if (!kwds) goto limited_bad;
13633
+ if (PyDict_SetItemString(kwds, "signed", __Pyx_NewRef(Py_True))) goto limited_bad;
13634
+ }
13583
13635
  result = PyObject_Call(from_bytes, arg_tuple, kwds);
13584
13636
  limited_bad:
13585
- Py_XDECREF(from_bytes);
13586
- Py_XDECREF(py_bytes);
13587
- Py_XDECREF(order_str);
13588
- Py_XDECREF(arg_tuple);
13589
13637
  Py_XDECREF(kwds);
13638
+ Py_XDECREF(arg_tuple);
13639
+ Py_XDECREF(order_str);
13640
+ Py_XDECREF(py_bytes);
13641
+ Py_XDECREF(from_bytes);
13590
13642
  return result;
13591
13643
  #endif
13592
13644
  }
@@ -13762,7 +13814,7 @@ static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) {
13762
13814
  #endif
13763
13815
  if (likely(v)) {
13764
13816
  int ret = -1;
13765
- #if !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray)
13817
+ #if PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray)
13766
13818
  int one = 1; int is_little = (int)*(unsigned char *)&one;
13767
13819
  unsigned char *bytes = (unsigned char *)&val;
13768
13820
  ret = _PyLong_AsByteArray((PyLongObject *)v,
@@ -13982,41 +14034,50 @@ static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObj
13982
14034
  #endif
13983
14035
 
13984
14036
  /* CheckBinaryVersion */
13985
- static int __Pyx_check_binary_version(void) {
13986
- char ctversion[5];
13987
- int same=1, i, found_dot;
13988
- const char* rt_from_call = Py_GetVersion();
13989
- PyOS_snprintf(ctversion, 5, "%d.%d", PY_MAJOR_VERSION, PY_MINOR_VERSION);
13990
- found_dot = 0;
13991
- for (i = 0; i < 4; i++) {
13992
- if (!ctversion[i]) {
13993
- same = (rt_from_call[i] < '0' || rt_from_call[i] > '9');
14037
+ static unsigned long __Pyx_get_runtime_version(void) {
14038
+ #if __PYX_LIMITED_VERSION_HEX >= 0x030B00A4
14039
+ return Py_Version & ~0xFFUL;
14040
+ #else
14041
+ const char* rt_version = Py_GetVersion();
14042
+ unsigned long version = 0;
14043
+ unsigned long factor = 0x01000000UL;
14044
+ unsigned int digit = 0;
14045
+ int i = 0;
14046
+ while (factor) {
14047
+ while ('0' <= rt_version[i] && rt_version[i] <= '9') {
14048
+ digit = digit * 10 + (unsigned int) (rt_version[i] - '0');
14049
+ ++i;
14050
+ }
14051
+ version += factor * digit;
14052
+ if (rt_version[i] != '.')
13994
14053
  break;
13995
- }
13996
- if (rt_from_call[i] != ctversion[i]) {
13997
- same = 0;
13998
- break;
13999
- }
14054
+ digit = 0;
14055
+ factor >>= 8;
14056
+ ++i;
14000
14057
  }
14001
- if (!same) {
14002
- char rtversion[5] = {'\0'};
14058
+ return version;
14059
+ #endif
14060
+ }
14061
+ static int __Pyx_check_binary_version(unsigned long ct_version, unsigned long rt_version, int allow_newer) {
14062
+ const unsigned long MAJOR_MINOR = 0xFFFF0000UL;
14063
+ if ((rt_version & MAJOR_MINOR) == (ct_version & MAJOR_MINOR))
14064
+ return 0;
14065
+ if (likely(allow_newer && (rt_version & MAJOR_MINOR) > (ct_version & MAJOR_MINOR)))
14066
+ return 1;
14067
+ {
14003
14068
  char message[200];
14004
- for (i=0; i<4; ++i) {
14005
- if (rt_from_call[i] == '.') {
14006
- if (found_dot) break;
14007
- found_dot = 1;
14008
- } else if (rt_from_call[i] < '0' || rt_from_call[i] > '9') {
14009
- break;
14010
- }
14011
- rtversion[i] = rt_from_call[i];
14012
- }
14013
14069
  PyOS_snprintf(message, sizeof(message),
14014
- "compile time version %s of module '%.100s' "
14015
- "does not match runtime version %s",
14016
- ctversion, __Pyx_MODULE_NAME, rtversion);
14070
+ "compile time Python version %d.%d "
14071
+ "of module '%.100s' "
14072
+ "%s "
14073
+ "runtime version %d.%d",
14074
+ (int) (ct_version >> 24), (int) ((ct_version >> 16) & 0xFF),
14075
+ __Pyx_MODULE_NAME,
14076
+ (allow_newer) ? "was newer than" : "does not match",
14077
+ (int) (rt_version >> 24), (int) ((rt_version >> 16) & 0xFF)
14078
+ );
14017
14079
  return PyErr_WarnEx(NULL, message, 1);
14018
14080
  }
14019
- return 0;
14020
14081
  }
14021
14082
 
14022
14083
  /* InitStrings */
@@ -14062,8 +14123,24 @@ static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) {
14062
14123
  return 0;
14063
14124
  }
14064
14125
 
14126
+ #include <string.h>
14127
+ static CYTHON_INLINE Py_ssize_t __Pyx_ssize_strlen(const char *s) {
14128
+ size_t len = strlen(s);
14129
+ if (unlikely(len > (size_t) PY_SSIZE_T_MAX)) {
14130
+ PyErr_SetString(PyExc_OverflowError, "byte string is too long");
14131
+ return -1;
14132
+ }
14133
+ return (Py_ssize_t) len;
14134
+ }
14065
14135
  static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char* c_str) {
14066
- return __Pyx_PyUnicode_FromStringAndSize(c_str, (Py_ssize_t)strlen(c_str));
14136
+ Py_ssize_t len = __Pyx_ssize_strlen(c_str);
14137
+ if (unlikely(len < 0)) return NULL;
14138
+ return __Pyx_PyUnicode_FromStringAndSize(c_str, len);
14139
+ }
14140
+ static CYTHON_INLINE PyObject* __Pyx_PyByteArray_FromString(const char* c_str) {
14141
+ Py_ssize_t len = __Pyx_ssize_strlen(c_str);
14142
+ if (unlikely(len < 0)) return NULL;
14143
+ return PyByteArray_FromStringAndSize(c_str, len);
14067
14144
  }
14068
14145
  static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject* o) {
14069
14146
  Py_ssize_t ignore;