pyogrio 0.10.0__cp310-cp310-win_amd64.whl → 0.11.0__cp310-cp310-win_amd64.whl
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 pyogrio might be problematic. Click here for more details.
- pyogrio/__init__.py +13 -14
- pyogrio/_compat.py +8 -0
- pyogrio/_err.c +9881 -4061
- pyogrio/_err.cp310-win_amd64.pyd +0 -0
- pyogrio/_geometry.c +372 -204
- pyogrio/_geometry.cp310-win_amd64.pyd +0 -0
- pyogrio/_io.c +7119 -6034
- pyogrio/_io.cp310-win_amd64.pyd +0 -0
- pyogrio/_ogr.c +1317 -1232
- pyogrio/_ogr.cp310-win_amd64.pyd +0 -0
- pyogrio/_version.py +3 -3
- pyogrio/_vsi.c +417 -424
- pyogrio/_vsi.cp310-win_amd64.pyd +0 -0
- pyogrio/gdal_data/GDAL-targets.cmake +2 -2
- pyogrio/gdal_data/GDALConfigVersion.cmake +3 -3
- pyogrio/gdal_data/gdalinfo_output.schema.json +3 -3
- pyogrio/gdal_data/gdaltileindex.xsd +1 -17
- pyogrio/gdal_data/gdalvrt.xsd +48 -41
- pyogrio/gdal_data/nitf_spec.xml +1 -17
- pyogrio/gdal_data/nitf_spec.xsd +1 -17
- pyogrio/gdal_data/ogrvrt.xsd +1 -17
- pyogrio/gdal_data/osmconf.ini +3 -1
- pyogrio/gdal_data/pdfcomposition.xsd +1 -17
- pyogrio/gdal_data/template_tiles.mapml +28 -0
- pyogrio/gdal_data/vcpkg.spdx.json +28 -23
- pyogrio/gdal_data/vcpkg_abi_info.txt +29 -28
- pyogrio/gdal_data/vdv452.xml +1 -17
- pyogrio/gdal_data/vdv452.xsd +1 -17
- pyogrio/geopandas.py +91 -43
- pyogrio/proj_data/ITRF2014 +1 -1
- pyogrio/proj_data/ITRF2020 +91 -0
- pyogrio/proj_data/proj-config-version.cmake +3 -3
- pyogrio/proj_data/proj-config.cmake +1 -1
- pyogrio/proj_data/proj-targets-release.cmake +3 -2
- pyogrio/proj_data/proj-targets.cmake +2 -2
- pyogrio/proj_data/proj.db +0 -0
- pyogrio/proj_data/proj.ini +11 -3
- pyogrio/proj_data/proj4-targets-release.cmake +3 -2
- pyogrio/proj_data/proj4-targets.cmake +2 -2
- pyogrio/proj_data/usage +7 -2
- pyogrio/proj_data/vcpkg.spdx.json +26 -21
- pyogrio/proj_data/vcpkg_abi_info.txt +17 -16
- pyogrio/tests/conftest.py +8 -0
- pyogrio/tests/test_arrow.py +3 -0
- pyogrio/tests/test_core.py +8 -4
- pyogrio/tests/test_geopandas_io.py +250 -42
- pyogrio/tests/test_path.py +10 -0
- pyogrio/tests/test_raw_io.py +6 -2
- pyogrio/util.py +15 -2
- pyogrio-0.11.0.dist-info/DELVEWHEEL +2 -0
- {pyogrio-0.10.0.dist-info → pyogrio-0.11.0.dist-info}/METADATA +32 -37
- {pyogrio-0.10.0.dist-info → pyogrio-0.11.0.dist-info}/RECORD +75 -71
- {pyogrio-0.10.0.dist-info → pyogrio-0.11.0.dist-info}/WHEEL +1 -1
- pyogrio.libs/{Lerc-089e3fef3df84b17326dcddbf1dedaa4.dll → Lerc-0a4c85fb364eca6153da109568898e6c.dll} +0 -0
- pyogrio.libs/{gdal-debee5933f0da7bb90b4bcd009023377.dll → gdal-34e3e080255b205ef706390e097fa4dc.dll} +0 -0
- pyogrio.libs/geos-d8f20037634583c2efcd6ea1f4153169.dll +0 -0
- pyogrio.libs/geos_c-046e8885887192fced9516bda554471d.dll +0 -0
- pyogrio.libs/{geotiff-c8fe8a095520a4ea4e465d27e06add3a.dll → geotiff-1f2f76a5d30685a8e0497d9dbf8a79cf.dll} +0 -0
- pyogrio.libs/{iconv-2-27352d156a5467ca5383d3951093ea5a.dll → iconv-2-4b71ebbdf6834234e0c64cb2439b77cf.dll} +0 -0
- pyogrio.libs/{jpeg62-e56b6f95a95af498f4623b8da4cebd46.dll → jpeg62-bf2a75b1f2695748cd86238ddb19c65b.dll} +0 -0
- pyogrio.libs/json-c-4bc6781090e73c9b22d8dc057618a277.dll +0 -0
- pyogrio.libs/libcrypto-3-x64-c8f1692ed45cf55faecce2c448056b2e.dll +0 -0
- pyogrio.libs/libcurl-f3604410cd467a44d927794ebdce81b8.dll +0 -0
- pyogrio.libs/libexpat-385074fd54deb4b640baafa42cbb3146.dll +0 -0
- pyogrio.libs/liblzma-8968f0bfd463b7fe612b20d07adc3c1e.dll +0 -0
- pyogrio.libs/libpng16-44105208fe941d03e9f0c17bdbb952f7.dll +0 -0
- pyogrio.libs/libssl-3-x64-58c364315f431ab1f0e48b311b8cf105.dll +0 -0
- pyogrio.libs/msvcp140-99aa35e2033bb8d388bc35c8a68b77e3.dll +0 -0
- pyogrio.libs/proj_9-ee59474f99643c112eb02aa34a910237.dll +0 -0
- pyogrio.libs/{qhull_r-516897f855568caab1ab1fe37912766c.dll → qhull_r-eaac2f11a3d8241f082e54447c7504d7.dll} +0 -0
- pyogrio.libs/sqlite3-dc748e3452944fd41001abacdd783569.dll +0 -0
- pyogrio.libs/tiff-c409ddbe87b39639b83fee50d4aea318.dll +0 -0
- pyogrio.libs/{zlib1-e5af16a15c63f05bd82d90396807ae5b.dll → zlib1-094085b7b78666197dcc8e1fce2d835d.dll} +0 -0
- pyogrio-0.10.0.dist-info/DELVEWHEEL +0 -2
- pyogrio.libs/geos-ace4c5b5c1f569bb4213e7bbd0b0322e.dll +0 -0
- pyogrio.libs/geos_c-7478ca0a86136b280d9b2d245c6f6627.dll +0 -0
- pyogrio.libs/json-c-c84940e2654a4f8468bfcf2ce992aa93.dll +0 -0
- pyogrio.libs/libcurl-d69cfd4ad487d53d58743b6778ec85e7.dll +0 -0
- pyogrio.libs/libexpat-6576a8d02641b6a3dbad35901ec200a7.dll +0 -0
- pyogrio.libs/liblzma-9ee4accb476ec1ae24e924953140273d.dll +0 -0
- pyogrio.libs/libpng16-7c36142dda59f186f6bb683e8dae2bfe.dll +0 -0
- pyogrio.libs/msvcp140-98b3e5b80de1e5e9d1703b786d795623.dll +0 -0
- pyogrio.libs/proj-a408c5327f3fd2f5fabe8c56815beed7.dll +0 -0
- pyogrio.libs/sqlite3-9bc109d8536d5ed9666332fec94485fc.dll +0 -0
- pyogrio.libs/tiff-9b3f605fffe0bccc0a964c374ee4f820.dll +0 -0
- {pyogrio-0.10.0.dist-info → pyogrio-0.11.0.dist-info/licenses}/LICENSE +0 -0
- {pyogrio-0.10.0.dist-info → pyogrio-0.11.0.dist-info}/top_level.txt +0 -0
pyogrio/_geometry.c
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* Generated by Cython 3.0.
|
|
1
|
+
/* Generated by Cython 3.0.12 */
|
|
2
2
|
|
|
3
3
|
/* BEGIN: Cython Metadata
|
|
4
4
|
{
|
|
@@ -58,10 +58,10 @@ END: Cython Metadata */
|
|
|
58
58
|
#else
|
|
59
59
|
#define __PYX_EXTRA_ABI_MODULE_NAME ""
|
|
60
60
|
#endif
|
|
61
|
-
#define CYTHON_ABI "
|
|
61
|
+
#define CYTHON_ABI "3_0_12" __PYX_EXTRA_ABI_MODULE_NAME
|
|
62
62
|
#define __PYX_ABI_MODULE_NAME "_cython_" CYTHON_ABI
|
|
63
63
|
#define __PYX_TYPE_MODULE_PREFIX __PYX_ABI_MODULE_NAME "."
|
|
64
|
-
#define CYTHON_HEX_VERSION
|
|
64
|
+
#define CYTHON_HEX_VERSION 0x03000CF0
|
|
65
65
|
#define CYTHON_FUTURE_DIVISION 1
|
|
66
66
|
#include <stddef.h>
|
|
67
67
|
#ifndef offsetof
|
|
@@ -1515,6 +1515,7 @@ static const char *__pyx_filename;
|
|
|
1515
1515
|
|
|
1516
1516
|
static const char *__pyx_f[] = {
|
|
1517
1517
|
"pyogrio\\\\_geometry.pyx",
|
|
1518
|
+
"pyogrio\\\\_err.pxd",
|
|
1518
1519
|
};
|
|
1519
1520
|
/* #### Code section: utility_code_proto_before_types ### */
|
|
1520
1521
|
/* ForceInitThreads.proto */
|
|
@@ -1527,9 +1528,10 @@ static const char *__pyx_f[] = {
|
|
|
1527
1528
|
/* #### Code section: type_declarations ### */
|
|
1528
1529
|
|
|
1529
1530
|
/*--- Type declarations ---*/
|
|
1531
|
+
struct __pyx_obj_7pyogrio_4_err_ErrorHandler;
|
|
1530
1532
|
struct __pyx_opt_args_7pyogrio_4_ogr_get_string;
|
|
1531
1533
|
|
|
1532
|
-
/* "pyogrio/_ogr.pxd":
|
|
1534
|
+
/* "pyogrio/_ogr.pxd":514
|
|
1533
1535
|
*
|
|
1534
1536
|
*
|
|
1535
1537
|
* cdef get_string(const char *c_str, str encoding=*) # <<<<<<<<<<<<<<
|
|
@@ -1538,6 +1540,28 @@ struct __pyx_opt_args_7pyogrio_4_ogr_get_string {
|
|
|
1538
1540
|
int __pyx_n;
|
|
1539
1541
|
PyObject *encoding;
|
|
1540
1542
|
};
|
|
1543
|
+
|
|
1544
|
+
/* "pyogrio/_err.pxd":5
|
|
1545
|
+
* cdef void *check_pointer(void *ptr) except NULL
|
|
1546
|
+
*
|
|
1547
|
+
* cdef class ErrorHandler: # <<<<<<<<<<<<<<
|
|
1548
|
+
* cdef object error_stack
|
|
1549
|
+
* cdef int check_int(self, int retval, bint squash_errors) except -1
|
|
1550
|
+
*/
|
|
1551
|
+
struct __pyx_obj_7pyogrio_4_err_ErrorHandler {
|
|
1552
|
+
PyObject_HEAD
|
|
1553
|
+
struct __pyx_vtabstruct_7pyogrio_4_err_ErrorHandler *__pyx_vtab;
|
|
1554
|
+
PyObject *error_stack;
|
|
1555
|
+
};
|
|
1556
|
+
|
|
1557
|
+
|
|
1558
|
+
|
|
1559
|
+
struct __pyx_vtabstruct_7pyogrio_4_err_ErrorHandler {
|
|
1560
|
+
int (*check_int)(struct __pyx_obj_7pyogrio_4_err_ErrorHandler *, int, int);
|
|
1561
|
+
void *(*check_pointer)(struct __pyx_obj_7pyogrio_4_err_ErrorHandler *, void *, int);
|
|
1562
|
+
void (*_handle_error_stack)(struct __pyx_obj_7pyogrio_4_err_ErrorHandler *, int);
|
|
1563
|
+
};
|
|
1564
|
+
static struct __pyx_vtabstruct_7pyogrio_4_err_ErrorHandler *__pyx_vtabptr_7pyogrio_4_err_ErrorHandler;
|
|
1541
1565
|
/* #### Code section: utility_code_proto ### */
|
|
1542
1566
|
|
|
1543
1567
|
/* --- Runtime support code (head) --- */
|
|
@@ -1787,7 +1811,7 @@ static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args,
|
|
|
1787
1811
|
#if !CYTHON_VECTORCALL
|
|
1788
1812
|
#if PY_VERSION_HEX >= 0x03080000
|
|
1789
1813
|
#include "frameobject.h"
|
|
1790
|
-
#if PY_VERSION_HEX >= 0x030b00a6 && !CYTHON_COMPILING_IN_LIMITED_API
|
|
1814
|
+
#if PY_VERSION_HEX >= 0x030b00a6 && !CYTHON_COMPILING_IN_LIMITED_API && !defined(PYPY_VERSION)
|
|
1791
1815
|
#ifndef Py_BUILD_CORE
|
|
1792
1816
|
#define Py_BUILD_CORE 1
|
|
1793
1817
|
#endif
|
|
@@ -1939,6 +1963,28 @@ static PyObject *__Pyx_PyDict_GetItem(PyObject *d, PyObject* key);
|
|
|
1939
1963
|
#define __Pyx_PyObject_Dict_GetItem(obj, name) PyObject_GetItem(obj, name)
|
|
1940
1964
|
#endif
|
|
1941
1965
|
|
|
1966
|
+
/* TypeImport.proto */
|
|
1967
|
+
#ifndef __PYX_HAVE_RT_ImportType_proto_3_0_12
|
|
1968
|
+
#define __PYX_HAVE_RT_ImportType_proto_3_0_12
|
|
1969
|
+
#if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L
|
|
1970
|
+
#include <stdalign.h>
|
|
1971
|
+
#endif
|
|
1972
|
+
#if (defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L) || __cplusplus >= 201103L
|
|
1973
|
+
#define __PYX_GET_STRUCT_ALIGNMENT_3_0_12(s) alignof(s)
|
|
1974
|
+
#else
|
|
1975
|
+
#define __PYX_GET_STRUCT_ALIGNMENT_3_0_12(s) sizeof(void*)
|
|
1976
|
+
#endif
|
|
1977
|
+
enum __Pyx_ImportType_CheckSize_3_0_12 {
|
|
1978
|
+
__Pyx_ImportType_CheckSize_Error_3_0_12 = 0,
|
|
1979
|
+
__Pyx_ImportType_CheckSize_Warn_3_0_12 = 1,
|
|
1980
|
+
__Pyx_ImportType_CheckSize_Ignore_3_0_12 = 2
|
|
1981
|
+
};
|
|
1982
|
+
static PyTypeObject *__Pyx_ImportType_3_0_12(PyObject* module, const char *module_name, const char *class_name, size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_0_12 check_size);
|
|
1983
|
+
#endif
|
|
1984
|
+
|
|
1985
|
+
/* GetVTable.proto */
|
|
1986
|
+
static void* __Pyx_GetVtable(PyTypeObject *type);
|
|
1987
|
+
|
|
1942
1988
|
/* Import.proto */
|
|
1943
1989
|
static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level);
|
|
1944
1990
|
|
|
@@ -2060,7 +2106,7 @@ static int __Pyx_check_binary_version(unsigned long ct_version, unsigned long rt
|
|
|
2060
2106
|
static int __Pyx_ExportFunction(const char *name, void (*f)(void), const char *sig);
|
|
2061
2107
|
|
|
2062
2108
|
/* FunctionImport.proto */
|
|
2063
|
-
static int
|
|
2109
|
+
static int __Pyx_ImportFunction_3_0_12(PyObject *module, const char *funcname, void (**f)(void), const char *sig);
|
|
2064
2110
|
|
|
2065
2111
|
/* InitStrings.proto */
|
|
2066
2112
|
static int __Pyx_InitStrings(__Pyx_StringTabEntry *t);
|
|
@@ -2076,7 +2122,7 @@ static int __Pyx_InitStrings(__Pyx_StringTabEntry *t);
|
|
|
2076
2122
|
/* Module declarations from "pyogrio._ogr" */
|
|
2077
2123
|
|
|
2078
2124
|
/* Module declarations from "pyogrio._err" */
|
|
2079
|
-
static void *(*
|
|
2125
|
+
static void *(*__pyx_f_7pyogrio_4_err_check_pointer)(void *); /*proto*/
|
|
2080
2126
|
|
|
2081
2127
|
/* Module declarations from "pyogrio._geometry" */
|
|
2082
2128
|
static PyObject *__pyx_7genexpr__pyx_v_7pyogrio_9_geometry_k;
|
|
@@ -2114,6 +2160,7 @@ static const char __pyx_k_2_5D_Point[] = "2.5D Point";
|
|
|
2114
2160
|
static const char __pyx_k_LineString[] = "LineString";
|
|
2115
2161
|
static const char __pyx_k_LinearRing[] = "LinearRing";
|
|
2116
2162
|
static const char __pyx_k_MultiPoint[] = "MultiPoint";
|
|
2163
|
+
static const char __pyx_k_pyx_vtable[] = "__pyx_vtable__";
|
|
2117
2164
|
static const char __pyx_k_2_5D_Polygon[] = "2.5D Polygon";
|
|
2118
2165
|
static const char __pyx_k_LineString_Z[] = "LineString Z";
|
|
2119
2166
|
static const char __pyx_k_MultiPoint_Z[] = "MultiPoint Z";
|
|
@@ -2194,6 +2241,7 @@ typedef struct {
|
|
|
2194
2241
|
#endif
|
|
2195
2242
|
#if CYTHON_USE_MODULE_STATE
|
|
2196
2243
|
#endif
|
|
2244
|
+
PyTypeObject *__pyx_ptype_7pyogrio_4_err_ErrorHandler;
|
|
2197
2245
|
#if CYTHON_USE_MODULE_STATE
|
|
2198
2246
|
#endif
|
|
2199
2247
|
PyObject *__pyx_kp_u_;
|
|
@@ -2257,6 +2305,7 @@ typedef struct {
|
|
|
2257
2305
|
PyObject *__pyx_n_s_name;
|
|
2258
2306
|
PyObject *__pyx_n_s_pyogrio__err;
|
|
2259
2307
|
PyObject *__pyx_n_s_pyogrio_errors;
|
|
2308
|
+
PyObject *__pyx_n_s_pyx_vtable;
|
|
2260
2309
|
PyObject *__pyx_n_s_spec;
|
|
2261
2310
|
PyObject *__pyx_n_s_test;
|
|
2262
2311
|
PyObject *__pyx_n_s_update;
|
|
@@ -2311,6 +2360,7 @@ static int __pyx_m_clear(PyObject *m) {
|
|
|
2311
2360
|
#ifdef __Pyx_FusedFunction_USED
|
|
2312
2361
|
Py_CLEAR(clear_module_state->__pyx_FusedFunctionType);
|
|
2313
2362
|
#endif
|
|
2363
|
+
Py_CLEAR(clear_module_state->__pyx_ptype_7pyogrio_4_err_ErrorHandler);
|
|
2314
2364
|
Py_CLEAR(clear_module_state->__pyx_kp_u_);
|
|
2315
2365
|
Py_CLEAR(clear_module_state->__pyx_kp_u_2_5D_GeometryCollection);
|
|
2316
2366
|
Py_CLEAR(clear_module_state->__pyx_kp_u_2_5D_LineString);
|
|
@@ -2372,6 +2422,7 @@ static int __pyx_m_clear(PyObject *m) {
|
|
|
2372
2422
|
Py_CLEAR(clear_module_state->__pyx_n_s_name);
|
|
2373
2423
|
Py_CLEAR(clear_module_state->__pyx_n_s_pyogrio__err);
|
|
2374
2424
|
Py_CLEAR(clear_module_state->__pyx_n_s_pyogrio_errors);
|
|
2425
|
+
Py_CLEAR(clear_module_state->__pyx_n_s_pyx_vtable);
|
|
2375
2426
|
Py_CLEAR(clear_module_state->__pyx_n_s_spec);
|
|
2376
2427
|
Py_CLEAR(clear_module_state->__pyx_n_s_test);
|
|
2377
2428
|
Py_CLEAR(clear_module_state->__pyx_n_s_update);
|
|
@@ -2404,6 +2455,7 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) {
|
|
|
2404
2455
|
#ifdef __Pyx_FusedFunction_USED
|
|
2405
2456
|
Py_VISIT(traverse_module_state->__pyx_FusedFunctionType);
|
|
2406
2457
|
#endif
|
|
2458
|
+
Py_VISIT(traverse_module_state->__pyx_ptype_7pyogrio_4_err_ErrorHandler);
|
|
2407
2459
|
Py_VISIT(traverse_module_state->__pyx_kp_u_);
|
|
2408
2460
|
Py_VISIT(traverse_module_state->__pyx_kp_u_2_5D_GeometryCollection);
|
|
2409
2461
|
Py_VISIT(traverse_module_state->__pyx_kp_u_2_5D_LineString);
|
|
@@ -2465,6 +2517,7 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) {
|
|
|
2465
2517
|
Py_VISIT(traverse_module_state->__pyx_n_s_name);
|
|
2466
2518
|
Py_VISIT(traverse_module_state->__pyx_n_s_pyogrio__err);
|
|
2467
2519
|
Py_VISIT(traverse_module_state->__pyx_n_s_pyogrio_errors);
|
|
2520
|
+
Py_VISIT(traverse_module_state->__pyx_n_s_pyx_vtable);
|
|
2468
2521
|
Py_VISIT(traverse_module_state->__pyx_n_s_spec);
|
|
2469
2522
|
Py_VISIT(traverse_module_state->__pyx_n_s_test);
|
|
2470
2523
|
Py_VISIT(traverse_module_state->__pyx_n_s_update);
|
|
@@ -2515,6 +2568,7 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) {
|
|
|
2515
2568
|
#endif
|
|
2516
2569
|
#if CYTHON_USE_MODULE_STATE
|
|
2517
2570
|
#endif
|
|
2571
|
+
#define __pyx_ptype_7pyogrio_4_err_ErrorHandler __pyx_mstate_global->__pyx_ptype_7pyogrio_4_err_ErrorHandler
|
|
2518
2572
|
#if CYTHON_USE_MODULE_STATE
|
|
2519
2573
|
#endif
|
|
2520
2574
|
#define __pyx_kp_u_ __pyx_mstate_global->__pyx_kp_u_
|
|
@@ -2578,6 +2632,7 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) {
|
|
|
2578
2632
|
#define __pyx_n_s_name __pyx_mstate_global->__pyx_n_s_name
|
|
2579
2633
|
#define __pyx_n_s_pyogrio__err __pyx_mstate_global->__pyx_n_s_pyogrio__err
|
|
2580
2634
|
#define __pyx_n_s_pyogrio_errors __pyx_mstate_global->__pyx_n_s_pyogrio_errors
|
|
2635
|
+
#define __pyx_n_s_pyx_vtable __pyx_mstate_global->__pyx_n_s_pyx_vtable
|
|
2581
2636
|
#define __pyx_n_s_spec __pyx_mstate_global->__pyx_n_s_spec
|
|
2582
2637
|
#define __pyx_n_s_test __pyx_mstate_global->__pyx_n_s_test
|
|
2583
2638
|
#define __pyx_n_s_update __pyx_mstate_global->__pyx_n_s_update
|
|
@@ -2601,9 +2656,8 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) {
|
|
|
2601
2656
|
*/
|
|
2602
2657
|
|
|
2603
2658
|
static PyObject *__pyx_f_7pyogrio_9_geometry_get_geometry_type(void *__pyx_v_ogr_layer) {
|
|
2604
|
-
CYTHON_UNUSED void *__pyx_v_cogr_featuredef;
|
|
2605
|
-
OGRwkbGeometryType __pyx_v_ogr_type;
|
|
2606
2659
|
void *__pyx_v_ogr_featuredef;
|
|
2660
|
+
OGRwkbGeometryType __pyx_v_ogr_type;
|
|
2607
2661
|
PyObject *__pyx_v_exc = NULL;
|
|
2608
2662
|
PyObject *__pyx_v_original_type = NULL;
|
|
2609
2663
|
PyObject *__pyx_r = NULL;
|
|
@@ -2640,17 +2694,17 @@ static PyObject *__pyx_f_7pyogrio_9_geometry_get_geometry_type(void *__pyx_v_ogr
|
|
|
2640
2694
|
/* "pyogrio/_geometry.pyx":83
|
|
2641
2695
|
* geometry type
|
|
2642
2696
|
* """
|
|
2643
|
-
* cdef void *
|
|
2697
|
+
* cdef void *ogr_featuredef = NULL # <<<<<<<<<<<<<<
|
|
2644
2698
|
* cdef OGRwkbGeometryType ogr_type
|
|
2645
2699
|
*
|
|
2646
2700
|
*/
|
|
2647
|
-
|
|
2701
|
+
__pyx_v_ogr_featuredef = NULL;
|
|
2648
2702
|
|
|
2649
2703
|
/* "pyogrio/_geometry.pyx":86
|
|
2650
2704
|
* cdef OGRwkbGeometryType ogr_type
|
|
2651
2705
|
*
|
|
2652
2706
|
* try: # <<<<<<<<<<<<<<
|
|
2653
|
-
* ogr_featuredef =
|
|
2707
|
+
* ogr_featuredef = check_pointer(OGR_L_GetLayerDefn(ogr_layer))
|
|
2654
2708
|
* except NullPointerError:
|
|
2655
2709
|
*/
|
|
2656
2710
|
{
|
|
@@ -2665,18 +2719,18 @@ static PyObject *__pyx_f_7pyogrio_9_geometry_get_geometry_type(void *__pyx_v_ogr
|
|
|
2665
2719
|
/* "pyogrio/_geometry.pyx":87
|
|
2666
2720
|
*
|
|
2667
2721
|
* try:
|
|
2668
|
-
* ogr_featuredef =
|
|
2722
|
+
* ogr_featuredef = check_pointer(OGR_L_GetLayerDefn(ogr_layer)) # <<<<<<<<<<<<<<
|
|
2669
2723
|
* except NullPointerError:
|
|
2670
2724
|
* raise DataLayerError("Could not get layer definition")
|
|
2671
2725
|
*/
|
|
2672
|
-
__pyx_t_4 =
|
|
2726
|
+
__pyx_t_4 = __pyx_f_7pyogrio_4_err_check_pointer(OGR_L_GetLayerDefn(__pyx_v_ogr_layer)); if (unlikely(__pyx_t_4 == ((void *)NULL))) __PYX_ERR(0, 87, __pyx_L3_error)
|
|
2673
2727
|
__pyx_v_ogr_featuredef = __pyx_t_4;
|
|
2674
2728
|
|
|
2675
2729
|
/* "pyogrio/_geometry.pyx":86
|
|
2676
2730
|
* cdef OGRwkbGeometryType ogr_type
|
|
2677
2731
|
*
|
|
2678
2732
|
* try: # <<<<<<<<<<<<<<
|
|
2679
|
-
* ogr_featuredef =
|
|
2733
|
+
* ogr_featuredef = check_pointer(OGR_L_GetLayerDefn(ogr_layer))
|
|
2680
2734
|
* except NullPointerError:
|
|
2681
2735
|
*/
|
|
2682
2736
|
}
|
|
@@ -2688,7 +2742,7 @@ static PyObject *__pyx_f_7pyogrio_9_geometry_get_geometry_type(void *__pyx_v_ogr
|
|
|
2688
2742
|
|
|
2689
2743
|
/* "pyogrio/_geometry.pyx":88
|
|
2690
2744
|
* try:
|
|
2691
|
-
* ogr_featuredef =
|
|
2745
|
+
* ogr_featuredef = check_pointer(OGR_L_GetLayerDefn(ogr_layer))
|
|
2692
2746
|
* except NullPointerError: # <<<<<<<<<<<<<<
|
|
2693
2747
|
* raise DataLayerError("Could not get layer definition")
|
|
2694
2748
|
*
|
|
@@ -2708,7 +2762,7 @@ static PyObject *__pyx_f_7pyogrio_9_geometry_get_geometry_type(void *__pyx_v_ogr
|
|
|
2708
2762
|
__Pyx_XGOTREF(__pyx_t_5);
|
|
2709
2763
|
|
|
2710
2764
|
/* "pyogrio/_geometry.pyx":89
|
|
2711
|
-
* ogr_featuredef =
|
|
2765
|
+
* ogr_featuredef = check_pointer(OGR_L_GetLayerDefn(ogr_layer))
|
|
2712
2766
|
* except NullPointerError:
|
|
2713
2767
|
* raise DataLayerError("Could not get layer definition") # <<<<<<<<<<<<<<
|
|
2714
2768
|
*
|
|
@@ -2857,7 +2911,7 @@ static PyObject *__pyx_f_7pyogrio_9_geometry_get_geometry_type(void *__pyx_v_ogr
|
|
|
2857
2911
|
* cdef OGRwkbGeometryType ogr_type
|
|
2858
2912
|
*
|
|
2859
2913
|
* try: # <<<<<<<<<<<<<<
|
|
2860
|
-
* ogr_featuredef =
|
|
2914
|
+
* ogr_featuredef = check_pointer(OGR_L_GetLayerDefn(ogr_layer))
|
|
2861
2915
|
* except NullPointerError:
|
|
2862
2916
|
*/
|
|
2863
2917
|
__pyx_L5_except_error:;
|
|
@@ -3348,6 +3402,7 @@ static int __Pyx_CreateStringTabAndInitStrings(void) {
|
|
|
3348
3402
|
{&__pyx_n_s_name, __pyx_k_name, sizeof(__pyx_k_name), 0, 0, 1, 1},
|
|
3349
3403
|
{&__pyx_n_s_pyogrio__err, __pyx_k_pyogrio__err, sizeof(__pyx_k_pyogrio__err), 0, 0, 1, 1},
|
|
3350
3404
|
{&__pyx_n_s_pyogrio_errors, __pyx_k_pyogrio_errors, sizeof(__pyx_k_pyogrio_errors), 0, 0, 1, 1},
|
|
3405
|
+
{&__pyx_n_s_pyx_vtable, __pyx_k_pyx_vtable, sizeof(__pyx_k_pyx_vtable), 0, 0, 1, 1},
|
|
3351
3406
|
{&__pyx_n_s_spec, __pyx_k_spec, sizeof(__pyx_k_spec), 0, 0, 1, 1},
|
|
3352
3407
|
{&__pyx_n_s_test, __pyx_k_test, sizeof(__pyx_k_test), 0, 0, 1, 1},
|
|
3353
3408
|
{&__pyx_n_s_update, __pyx_k_update, sizeof(__pyx_k_update), 0, 0, 1, 1},
|
|
@@ -3443,10 +3498,23 @@ static int __Pyx_modinit_type_init_code(void) {
|
|
|
3443
3498
|
|
|
3444
3499
|
static int __Pyx_modinit_type_import_code(void) {
|
|
3445
3500
|
__Pyx_RefNannyDeclarations
|
|
3501
|
+
PyObject *__pyx_t_1 = NULL;
|
|
3502
|
+
int __pyx_lineno = 0;
|
|
3503
|
+
const char *__pyx_filename = NULL;
|
|
3504
|
+
int __pyx_clineno = 0;
|
|
3446
3505
|
__Pyx_RefNannySetupContext("__Pyx_modinit_type_import_code", 0);
|
|
3447
3506
|
/*--- Type import code ---*/
|
|
3507
|
+
__pyx_t_1 = PyImport_ImportModule("pyogrio._err"); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 5, __pyx_L1_error)
|
|
3508
|
+
__Pyx_GOTREF(__pyx_t_1);
|
|
3509
|
+
__pyx_ptype_7pyogrio_4_err_ErrorHandler = __Pyx_ImportType_3_0_12(__pyx_t_1, "pyogrio._err", "ErrorHandler", sizeof(struct __pyx_obj_7pyogrio_4_err_ErrorHandler), __PYX_GET_STRUCT_ALIGNMENT_3_0_12(struct __pyx_obj_7pyogrio_4_err_ErrorHandler),__Pyx_ImportType_CheckSize_Warn_3_0_12); if (!__pyx_ptype_7pyogrio_4_err_ErrorHandler) __PYX_ERR(1, 5, __pyx_L1_error)
|
|
3510
|
+
__pyx_vtabptr_7pyogrio_4_err_ErrorHandler = (struct __pyx_vtabstruct_7pyogrio_4_err_ErrorHandler*)__Pyx_GetVtable(__pyx_ptype_7pyogrio_4_err_ErrorHandler); if (unlikely(!__pyx_vtabptr_7pyogrio_4_err_ErrorHandler)) __PYX_ERR(1, 5, __pyx_L1_error)
|
|
3511
|
+
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
|
|
3448
3512
|
__Pyx_RefNannyFinishContext();
|
|
3449
3513
|
return 0;
|
|
3514
|
+
__pyx_L1_error:;
|
|
3515
|
+
__Pyx_XDECREF(__pyx_t_1);
|
|
3516
|
+
__Pyx_RefNannyFinishContext();
|
|
3517
|
+
return -1;
|
|
3450
3518
|
}
|
|
3451
3519
|
|
|
3452
3520
|
static int __Pyx_modinit_variable_import_code(void) {
|
|
@@ -3467,7 +3535,7 @@ static int __Pyx_modinit_function_import_code(void) {
|
|
|
3467
3535
|
/*--- Function import code ---*/
|
|
3468
3536
|
__pyx_t_1 = PyImport_ImportModule("pyogrio._err"); if (!__pyx_t_1) __PYX_ERR(0, 1, __pyx_L1_error)
|
|
3469
3537
|
__Pyx_GOTREF(__pyx_t_1);
|
|
3470
|
-
if (
|
|
3538
|
+
if (__Pyx_ImportFunction_3_0_12(__pyx_t_1, "check_pointer", (void (**)(void))&__pyx_f_7pyogrio_4_err_check_pointer, "void *(void *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
|
|
3471
3539
|
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
|
|
3472
3540
|
__Pyx_RefNannyFinishContext();
|
|
3473
3541
|
return 0;
|
|
@@ -3754,7 +3822,7 @@ if (!__Pyx_RefNanny) {
|
|
|
3754
3822
|
(void)__Pyx_modinit_variable_export_code();
|
|
3755
3823
|
if (unlikely((__Pyx_modinit_function_export_code() < 0))) __PYX_ERR(0, 1, __pyx_L1_error)
|
|
3756
3824
|
(void)__Pyx_modinit_type_init_code();
|
|
3757
|
-
(
|
|
3825
|
+
if (unlikely((__Pyx_modinit_type_import_code() < 0))) __PYX_ERR(0, 1, __pyx_L1_error)
|
|
3758
3826
|
(void)__Pyx_modinit_variable_import_code();
|
|
3759
3827
|
if (unlikely((__Pyx_modinit_function_import_code() < 0))) __PYX_ERR(0, 1, __pyx_L1_error)
|
|
3760
3828
|
/*--- Execution code ---*/
|
|
@@ -3831,9 +3899,9 @@ if (!__Pyx_RefNanny) {
|
|
|
3831
3899
|
/* "pyogrio/_geometry.pyx":11
|
|
3832
3900
|
*
|
|
3833
3901
|
* GEOMETRY_TYPES = {
|
|
3834
|
-
* wkbUnknown:
|
|
3835
|
-
* wkbPoint:
|
|
3836
|
-
* wkbLineString:
|
|
3902
|
+
* wkbUnknown: "Unknown", # <<<<<<<<<<<<<<
|
|
3903
|
+
* wkbPoint: "Point",
|
|
3904
|
+
* wkbLineString: "LineString",
|
|
3837
3905
|
*/
|
|
3838
3906
|
__pyx_t_2 = __Pyx_PyDict_NewPresized(31); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 11, __pyx_L1_error)
|
|
3839
3907
|
__Pyx_GOTREF(__pyx_t_2);
|
|
@@ -3844,10 +3912,10 @@ if (!__Pyx_RefNanny) {
|
|
|
3844
3912
|
|
|
3845
3913
|
/* "pyogrio/_geometry.pyx":12
|
|
3846
3914
|
* GEOMETRY_TYPES = {
|
|
3847
|
-
* wkbUnknown:
|
|
3848
|
-
* wkbPoint:
|
|
3849
|
-
* wkbLineString:
|
|
3850
|
-
* wkbPolygon:
|
|
3915
|
+
* wkbUnknown: "Unknown",
|
|
3916
|
+
* wkbPoint: "Point", # <<<<<<<<<<<<<<
|
|
3917
|
+
* wkbLineString: "LineString",
|
|
3918
|
+
* wkbPolygon: "Polygon",
|
|
3851
3919
|
*/
|
|
3852
3920
|
__pyx_t_3 = __Pyx_PyInt_From_OGRwkbGeometryType(wkbPoint); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 12, __pyx_L1_error)
|
|
3853
3921
|
__Pyx_GOTREF(__pyx_t_3);
|
|
@@ -3855,11 +3923,11 @@ if (!__Pyx_RefNanny) {
|
|
|
3855
3923
|
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
|
|
3856
3924
|
|
|
3857
3925
|
/* "pyogrio/_geometry.pyx":13
|
|
3858
|
-
* wkbUnknown:
|
|
3859
|
-
* wkbPoint:
|
|
3860
|
-
* wkbLineString:
|
|
3861
|
-
* wkbPolygon:
|
|
3862
|
-
* wkbMultiPoint:
|
|
3926
|
+
* wkbUnknown: "Unknown",
|
|
3927
|
+
* wkbPoint: "Point",
|
|
3928
|
+
* wkbLineString: "LineString", # <<<<<<<<<<<<<<
|
|
3929
|
+
* wkbPolygon: "Polygon",
|
|
3930
|
+
* wkbMultiPoint: "MultiPoint",
|
|
3863
3931
|
*/
|
|
3864
3932
|
__pyx_t_3 = __Pyx_PyInt_From_OGRwkbGeometryType(wkbLineString); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 13, __pyx_L1_error)
|
|
3865
3933
|
__Pyx_GOTREF(__pyx_t_3);
|
|
@@ -3867,11 +3935,11 @@ if (!__Pyx_RefNanny) {
|
|
|
3867
3935
|
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
|
|
3868
3936
|
|
|
3869
3937
|
/* "pyogrio/_geometry.pyx":14
|
|
3870
|
-
* wkbPoint:
|
|
3871
|
-
* wkbLineString:
|
|
3872
|
-
* wkbPolygon:
|
|
3873
|
-
* wkbMultiPoint:
|
|
3874
|
-
* wkbMultiLineString:
|
|
3938
|
+
* wkbPoint: "Point",
|
|
3939
|
+
* wkbLineString: "LineString",
|
|
3940
|
+
* wkbPolygon: "Polygon", # <<<<<<<<<<<<<<
|
|
3941
|
+
* wkbMultiPoint: "MultiPoint",
|
|
3942
|
+
* wkbMultiLineString: "MultiLineString",
|
|
3875
3943
|
*/
|
|
3876
3944
|
__pyx_t_3 = __Pyx_PyInt_From_OGRwkbGeometryType(wkbPolygon); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 14, __pyx_L1_error)
|
|
3877
3945
|
__Pyx_GOTREF(__pyx_t_3);
|
|
@@ -3879,11 +3947,11 @@ if (!__Pyx_RefNanny) {
|
|
|
3879
3947
|
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
|
|
3880
3948
|
|
|
3881
3949
|
/* "pyogrio/_geometry.pyx":15
|
|
3882
|
-
* wkbLineString:
|
|
3883
|
-
* wkbPolygon:
|
|
3884
|
-
* wkbMultiPoint:
|
|
3885
|
-
* wkbMultiLineString:
|
|
3886
|
-
* wkbMultiPolygon:
|
|
3950
|
+
* wkbLineString: "LineString",
|
|
3951
|
+
* wkbPolygon: "Polygon",
|
|
3952
|
+
* wkbMultiPoint: "MultiPoint", # <<<<<<<<<<<<<<
|
|
3953
|
+
* wkbMultiLineString: "MultiLineString",
|
|
3954
|
+
* wkbMultiPolygon: "MultiPolygon",
|
|
3887
3955
|
*/
|
|
3888
3956
|
__pyx_t_3 = __Pyx_PyInt_From_OGRwkbGeometryType(wkbMultiPoint); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 15, __pyx_L1_error)
|
|
3889
3957
|
__Pyx_GOTREF(__pyx_t_3);
|
|
@@ -3891,11 +3959,11 @@ if (!__Pyx_RefNanny) {
|
|
|
3891
3959
|
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
|
|
3892
3960
|
|
|
3893
3961
|
/* "pyogrio/_geometry.pyx":16
|
|
3894
|
-
* wkbPolygon:
|
|
3895
|
-
* wkbMultiPoint:
|
|
3896
|
-
* wkbMultiLineString:
|
|
3897
|
-
* wkbMultiPolygon:
|
|
3898
|
-
* wkbGeometryCollection:
|
|
3962
|
+
* wkbPolygon: "Polygon",
|
|
3963
|
+
* wkbMultiPoint: "MultiPoint",
|
|
3964
|
+
* wkbMultiLineString: "MultiLineString", # <<<<<<<<<<<<<<
|
|
3965
|
+
* wkbMultiPolygon: "MultiPolygon",
|
|
3966
|
+
* wkbGeometryCollection: "GeometryCollection",
|
|
3899
3967
|
*/
|
|
3900
3968
|
__pyx_t_3 = __Pyx_PyInt_From_OGRwkbGeometryType(wkbMultiLineString); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 16, __pyx_L1_error)
|
|
3901
3969
|
__Pyx_GOTREF(__pyx_t_3);
|
|
@@ -3903,10 +3971,10 @@ if (!__Pyx_RefNanny) {
|
|
|
3903
3971
|
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
|
|
3904
3972
|
|
|
3905
3973
|
/* "pyogrio/_geometry.pyx":17
|
|
3906
|
-
* wkbMultiPoint:
|
|
3907
|
-
* wkbMultiLineString:
|
|
3908
|
-
* wkbMultiPolygon:
|
|
3909
|
-
* wkbGeometryCollection:
|
|
3974
|
+
* wkbMultiPoint: "MultiPoint",
|
|
3975
|
+
* wkbMultiLineString: "MultiLineString",
|
|
3976
|
+
* wkbMultiPolygon: "MultiPolygon", # <<<<<<<<<<<<<<
|
|
3977
|
+
* wkbGeometryCollection: "GeometryCollection",
|
|
3910
3978
|
* wkbNone: None,
|
|
3911
3979
|
*/
|
|
3912
3980
|
__pyx_t_3 = __Pyx_PyInt_From_OGRwkbGeometryType(wkbMultiPolygon); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 17, __pyx_L1_error)
|
|
@@ -3915,11 +3983,11 @@ if (!__Pyx_RefNanny) {
|
|
|
3915
3983
|
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
|
|
3916
3984
|
|
|
3917
3985
|
/* "pyogrio/_geometry.pyx":18
|
|
3918
|
-
* wkbMultiLineString:
|
|
3919
|
-
* wkbMultiPolygon:
|
|
3920
|
-
* wkbGeometryCollection:
|
|
3986
|
+
* wkbMultiLineString: "MultiLineString",
|
|
3987
|
+
* wkbMultiPolygon: "MultiPolygon",
|
|
3988
|
+
* wkbGeometryCollection: "GeometryCollection", # <<<<<<<<<<<<<<
|
|
3921
3989
|
* wkbNone: None,
|
|
3922
|
-
* wkbLinearRing:
|
|
3990
|
+
* wkbLinearRing: "LinearRing",
|
|
3923
3991
|
*/
|
|
3924
3992
|
__pyx_t_3 = __Pyx_PyInt_From_OGRwkbGeometryType(wkbGeometryCollection); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 18, __pyx_L1_error)
|
|
3925
3993
|
__Pyx_GOTREF(__pyx_t_3);
|
|
@@ -3927,10 +3995,10 @@ if (!__Pyx_RefNanny) {
|
|
|
3927
3995
|
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
|
|
3928
3996
|
|
|
3929
3997
|
/* "pyogrio/_geometry.pyx":19
|
|
3930
|
-
* wkbMultiPolygon:
|
|
3931
|
-
* wkbGeometryCollection:
|
|
3998
|
+
* wkbMultiPolygon: "MultiPolygon",
|
|
3999
|
+
* wkbGeometryCollection: "GeometryCollection",
|
|
3932
4000
|
* wkbNone: None, # <<<<<<<<<<<<<<
|
|
3933
|
-
* wkbLinearRing:
|
|
4001
|
+
* wkbLinearRing: "LinearRing",
|
|
3934
4002
|
* # WARNING: Measured types are not supported in GEOS and downstream uses
|
|
3935
4003
|
*/
|
|
3936
4004
|
__pyx_t_3 = __Pyx_PyInt_From_OGRwkbGeometryType(wkbNone); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 19, __pyx_L1_error)
|
|
@@ -3939,9 +4007,9 @@ if (!__Pyx_RefNanny) {
|
|
|
3939
4007
|
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
|
|
3940
4008
|
|
|
3941
4009
|
/* "pyogrio/_geometry.pyx":20
|
|
3942
|
-
* wkbGeometryCollection:
|
|
4010
|
+
* wkbGeometryCollection: "GeometryCollection",
|
|
3943
4011
|
* wkbNone: None,
|
|
3944
|
-
* wkbLinearRing:
|
|
4012
|
+
* wkbLinearRing: "LinearRing", # <<<<<<<<<<<<<<
|
|
3945
4013
|
* # WARNING: Measured types are not supported in GEOS and downstream uses
|
|
3946
4014
|
* # these are stripped automatically to their corresponding 2D / 3D types
|
|
3947
4015
|
*/
|
|
@@ -3953,9 +4021,9 @@ if (!__Pyx_RefNanny) {
|
|
|
3953
4021
|
/* "pyogrio/_geometry.pyx":23
|
|
3954
4022
|
* # WARNING: Measured types are not supported in GEOS and downstream uses
|
|
3955
4023
|
* # these are stripped automatically to their corresponding 2D / 3D types
|
|
3956
|
-
* wkbPointM:
|
|
3957
|
-
* wkbLineStringM:
|
|
3958
|
-
* wkbPolygonM:
|
|
4024
|
+
* wkbPointM: "PointM", # <<<<<<<<<<<<<<
|
|
4025
|
+
* wkbLineStringM: "Measured LineString",
|
|
4026
|
+
* wkbPolygonM: "Measured Polygon",
|
|
3959
4027
|
*/
|
|
3960
4028
|
__pyx_t_3 = __Pyx_PyInt_From_OGRwkbGeometryType(wkbPointM); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 23, __pyx_L1_error)
|
|
3961
4029
|
__Pyx_GOTREF(__pyx_t_3);
|
|
@@ -3964,10 +4032,10 @@ if (!__Pyx_RefNanny) {
|
|
|
3964
4032
|
|
|
3965
4033
|
/* "pyogrio/_geometry.pyx":24
|
|
3966
4034
|
* # these are stripped automatically to their corresponding 2D / 3D types
|
|
3967
|
-
* wkbPointM:
|
|
3968
|
-
* wkbLineStringM:
|
|
3969
|
-
* wkbPolygonM:
|
|
3970
|
-
* wkbMultiPointM:
|
|
4035
|
+
* wkbPointM: "PointM",
|
|
4036
|
+
* wkbLineStringM: "Measured LineString", # <<<<<<<<<<<<<<
|
|
4037
|
+
* wkbPolygonM: "Measured Polygon",
|
|
4038
|
+
* wkbMultiPointM: "Measured MultiPoint",
|
|
3971
4039
|
*/
|
|
3972
4040
|
__pyx_t_3 = __Pyx_PyInt_From_OGRwkbGeometryType(wkbLineStringM); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 24, __pyx_L1_error)
|
|
3973
4041
|
__Pyx_GOTREF(__pyx_t_3);
|
|
@@ -3975,11 +4043,11 @@ if (!__Pyx_RefNanny) {
|
|
|
3975
4043
|
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
|
|
3976
4044
|
|
|
3977
4045
|
/* "pyogrio/_geometry.pyx":25
|
|
3978
|
-
* wkbPointM:
|
|
3979
|
-
* wkbLineStringM:
|
|
3980
|
-
* wkbPolygonM:
|
|
3981
|
-
* wkbMultiPointM:
|
|
3982
|
-
* wkbMultiLineStringM:
|
|
4046
|
+
* wkbPointM: "PointM",
|
|
4047
|
+
* wkbLineStringM: "Measured LineString",
|
|
4048
|
+
* wkbPolygonM: "Measured Polygon", # <<<<<<<<<<<<<<
|
|
4049
|
+
* wkbMultiPointM: "Measured MultiPoint",
|
|
4050
|
+
* wkbMultiLineStringM: "Measured MultiLineString",
|
|
3983
4051
|
*/
|
|
3984
4052
|
__pyx_t_3 = __Pyx_PyInt_From_OGRwkbGeometryType(wkbPolygonM); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 25, __pyx_L1_error)
|
|
3985
4053
|
__Pyx_GOTREF(__pyx_t_3);
|
|
@@ -3987,11 +4055,11 @@ if (!__Pyx_RefNanny) {
|
|
|
3987
4055
|
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
|
|
3988
4056
|
|
|
3989
4057
|
/* "pyogrio/_geometry.pyx":26
|
|
3990
|
-
* wkbLineStringM:
|
|
3991
|
-
* wkbPolygonM:
|
|
3992
|
-
* wkbMultiPointM:
|
|
3993
|
-
* wkbMultiLineStringM:
|
|
3994
|
-
* wkbMultiPolygonM:
|
|
4058
|
+
* wkbLineStringM: "Measured LineString",
|
|
4059
|
+
* wkbPolygonM: "Measured Polygon",
|
|
4060
|
+
* wkbMultiPointM: "Measured MultiPoint", # <<<<<<<<<<<<<<
|
|
4061
|
+
* wkbMultiLineStringM: "Measured MultiLineString",
|
|
4062
|
+
* wkbMultiPolygonM: "Measured MultiPolygon",
|
|
3995
4063
|
*/
|
|
3996
4064
|
__pyx_t_3 = __Pyx_PyInt_From_OGRwkbGeometryType(wkbMultiPointM); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 26, __pyx_L1_error)
|
|
3997
4065
|
__Pyx_GOTREF(__pyx_t_3);
|
|
@@ -3999,11 +4067,11 @@ if (!__Pyx_RefNanny) {
|
|
|
3999
4067
|
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
|
|
4000
4068
|
|
|
4001
4069
|
/* "pyogrio/_geometry.pyx":27
|
|
4002
|
-
* wkbPolygonM:
|
|
4003
|
-
* wkbMultiPointM:
|
|
4004
|
-
* wkbMultiLineStringM:
|
|
4005
|
-
* wkbMultiPolygonM:
|
|
4006
|
-
* wkbGeometryCollectionM:
|
|
4070
|
+
* wkbPolygonM: "Measured Polygon",
|
|
4071
|
+
* wkbMultiPointM: "Measured MultiPoint",
|
|
4072
|
+
* wkbMultiLineStringM: "Measured MultiLineString", # <<<<<<<<<<<<<<
|
|
4073
|
+
* wkbMultiPolygonM: "Measured MultiPolygon",
|
|
4074
|
+
* wkbGeometryCollectionM: "Measured GeometryCollection",
|
|
4007
4075
|
*/
|
|
4008
4076
|
__pyx_t_3 = __Pyx_PyInt_From_OGRwkbGeometryType(wkbMultiLineStringM); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 27, __pyx_L1_error)
|
|
4009
4077
|
__Pyx_GOTREF(__pyx_t_3);
|
|
@@ -4011,11 +4079,11 @@ if (!__Pyx_RefNanny) {
|
|
|
4011
4079
|
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
|
|
4012
4080
|
|
|
4013
4081
|
/* "pyogrio/_geometry.pyx":28
|
|
4014
|
-
* wkbMultiPointM:
|
|
4015
|
-
* wkbMultiLineStringM:
|
|
4016
|
-
* wkbMultiPolygonM:
|
|
4017
|
-
* wkbGeometryCollectionM:
|
|
4018
|
-
* wkbPointZM:
|
|
4082
|
+
* wkbMultiPointM: "Measured MultiPoint",
|
|
4083
|
+
* wkbMultiLineStringM: "Measured MultiLineString",
|
|
4084
|
+
* wkbMultiPolygonM: "Measured MultiPolygon", # <<<<<<<<<<<<<<
|
|
4085
|
+
* wkbGeometryCollectionM: "Measured GeometryCollection",
|
|
4086
|
+
* wkbPointZM: "Measured 3D Point",
|
|
4019
4087
|
*/
|
|
4020
4088
|
__pyx_t_3 = __Pyx_PyInt_From_OGRwkbGeometryType(wkbMultiPolygonM); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 28, __pyx_L1_error)
|
|
4021
4089
|
__Pyx_GOTREF(__pyx_t_3);
|
|
@@ -4023,11 +4091,11 @@ if (!__Pyx_RefNanny) {
|
|
|
4023
4091
|
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
|
|
4024
4092
|
|
|
4025
4093
|
/* "pyogrio/_geometry.pyx":29
|
|
4026
|
-
* wkbMultiLineStringM:
|
|
4027
|
-
* wkbMultiPolygonM:
|
|
4028
|
-
* wkbGeometryCollectionM:
|
|
4029
|
-
* wkbPointZM:
|
|
4030
|
-
* wkbLineStringZM:
|
|
4094
|
+
* wkbMultiLineStringM: "Measured MultiLineString",
|
|
4095
|
+
* wkbMultiPolygonM: "Measured MultiPolygon",
|
|
4096
|
+
* wkbGeometryCollectionM: "Measured GeometryCollection", # <<<<<<<<<<<<<<
|
|
4097
|
+
* wkbPointZM: "Measured 3D Point",
|
|
4098
|
+
* wkbLineStringZM: "Measured 3D LineString",
|
|
4031
4099
|
*/
|
|
4032
4100
|
__pyx_t_3 = __Pyx_PyInt_From_OGRwkbGeometryType(wkbGeometryCollectionM); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 29, __pyx_L1_error)
|
|
4033
4101
|
__Pyx_GOTREF(__pyx_t_3);
|
|
@@ -4035,11 +4103,11 @@ if (!__Pyx_RefNanny) {
|
|
|
4035
4103
|
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
|
|
4036
4104
|
|
|
4037
4105
|
/* "pyogrio/_geometry.pyx":30
|
|
4038
|
-
* wkbMultiPolygonM:
|
|
4039
|
-
* wkbGeometryCollectionM:
|
|
4040
|
-
* wkbPointZM:
|
|
4041
|
-
* wkbLineStringZM:
|
|
4042
|
-
* wkbPolygonZM:
|
|
4106
|
+
* wkbMultiPolygonM: "Measured MultiPolygon",
|
|
4107
|
+
* wkbGeometryCollectionM: "Measured GeometryCollection",
|
|
4108
|
+
* wkbPointZM: "Measured 3D Point", # <<<<<<<<<<<<<<
|
|
4109
|
+
* wkbLineStringZM: "Measured 3D LineString",
|
|
4110
|
+
* wkbPolygonZM: "Measured 3D Polygon",
|
|
4043
4111
|
*/
|
|
4044
4112
|
__pyx_t_3 = __Pyx_PyInt_From_OGRwkbGeometryType(wkbPointZM); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 30, __pyx_L1_error)
|
|
4045
4113
|
__Pyx_GOTREF(__pyx_t_3);
|
|
@@ -4047,11 +4115,11 @@ if (!__Pyx_RefNanny) {
|
|
|
4047
4115
|
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
|
|
4048
4116
|
|
|
4049
4117
|
/* "pyogrio/_geometry.pyx":31
|
|
4050
|
-
* wkbGeometryCollectionM:
|
|
4051
|
-
* wkbPointZM:
|
|
4052
|
-
* wkbLineStringZM:
|
|
4053
|
-
* wkbPolygonZM:
|
|
4054
|
-
* wkbMultiPointZM:
|
|
4118
|
+
* wkbGeometryCollectionM: "Measured GeometryCollection",
|
|
4119
|
+
* wkbPointZM: "Measured 3D Point",
|
|
4120
|
+
* wkbLineStringZM: "Measured 3D LineString", # <<<<<<<<<<<<<<
|
|
4121
|
+
* wkbPolygonZM: "Measured 3D Polygon",
|
|
4122
|
+
* wkbMultiPointZM: "Measured 3D MultiPoint",
|
|
4055
4123
|
*/
|
|
4056
4124
|
__pyx_t_3 = __Pyx_PyInt_From_OGRwkbGeometryType(wkbLineStringZM); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 31, __pyx_L1_error)
|
|
4057
4125
|
__Pyx_GOTREF(__pyx_t_3);
|
|
@@ -4059,11 +4127,11 @@ if (!__Pyx_RefNanny) {
|
|
|
4059
4127
|
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
|
|
4060
4128
|
|
|
4061
4129
|
/* "pyogrio/_geometry.pyx":32
|
|
4062
|
-
* wkbPointZM:
|
|
4063
|
-
* wkbLineStringZM:
|
|
4064
|
-
* wkbPolygonZM:
|
|
4065
|
-
* wkbMultiPointZM:
|
|
4066
|
-
* wkbMultiLineStringZM:
|
|
4130
|
+
* wkbPointZM: "Measured 3D Point",
|
|
4131
|
+
* wkbLineStringZM: "Measured 3D LineString",
|
|
4132
|
+
* wkbPolygonZM: "Measured 3D Polygon", # <<<<<<<<<<<<<<
|
|
4133
|
+
* wkbMultiPointZM: "Measured 3D MultiPoint",
|
|
4134
|
+
* wkbMultiLineStringZM: "Measured 3D MultiLineString",
|
|
4067
4135
|
*/
|
|
4068
4136
|
__pyx_t_3 = __Pyx_PyInt_From_OGRwkbGeometryType(wkbPolygonZM); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 32, __pyx_L1_error)
|
|
4069
4137
|
__Pyx_GOTREF(__pyx_t_3);
|
|
@@ -4071,11 +4139,11 @@ if (!__Pyx_RefNanny) {
|
|
|
4071
4139
|
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
|
|
4072
4140
|
|
|
4073
4141
|
/* "pyogrio/_geometry.pyx":33
|
|
4074
|
-
* wkbLineStringZM:
|
|
4075
|
-
* wkbPolygonZM:
|
|
4076
|
-
* wkbMultiPointZM:
|
|
4077
|
-
* wkbMultiLineStringZM:
|
|
4078
|
-
* wkbMultiPolygonZM:
|
|
4142
|
+
* wkbLineStringZM: "Measured 3D LineString",
|
|
4143
|
+
* wkbPolygonZM: "Measured 3D Polygon",
|
|
4144
|
+
* wkbMultiPointZM: "Measured 3D MultiPoint", # <<<<<<<<<<<<<<
|
|
4145
|
+
* wkbMultiLineStringZM: "Measured 3D MultiLineString",
|
|
4146
|
+
* wkbMultiPolygonZM: "Measured 3D MultiPolygon",
|
|
4079
4147
|
*/
|
|
4080
4148
|
__pyx_t_3 = __Pyx_PyInt_From_OGRwkbGeometryType(wkbMultiPointZM); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 33, __pyx_L1_error)
|
|
4081
4149
|
__Pyx_GOTREF(__pyx_t_3);
|
|
@@ -4083,11 +4151,11 @@ if (!__Pyx_RefNanny) {
|
|
|
4083
4151
|
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
|
|
4084
4152
|
|
|
4085
4153
|
/* "pyogrio/_geometry.pyx":34
|
|
4086
|
-
* wkbPolygonZM:
|
|
4087
|
-
* wkbMultiPointZM:
|
|
4088
|
-
* wkbMultiLineStringZM:
|
|
4089
|
-
* wkbMultiPolygonZM:
|
|
4090
|
-
* wkbGeometryCollectionZM:
|
|
4154
|
+
* wkbPolygonZM: "Measured 3D Polygon",
|
|
4155
|
+
* wkbMultiPointZM: "Measured 3D MultiPoint",
|
|
4156
|
+
* wkbMultiLineStringZM: "Measured 3D MultiLineString", # <<<<<<<<<<<<<<
|
|
4157
|
+
* wkbMultiPolygonZM: "Measured 3D MultiPolygon",
|
|
4158
|
+
* wkbGeometryCollectionZM: "Measured 3D GeometryCollection",
|
|
4091
4159
|
*/
|
|
4092
4160
|
__pyx_t_3 = __Pyx_PyInt_From_OGRwkbGeometryType(wkbMultiLineStringZM); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 34, __pyx_L1_error)
|
|
4093
4161
|
__Pyx_GOTREF(__pyx_t_3);
|
|
@@ -4095,11 +4163,11 @@ if (!__Pyx_RefNanny) {
|
|
|
4095
4163
|
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
|
|
4096
4164
|
|
|
4097
4165
|
/* "pyogrio/_geometry.pyx":35
|
|
4098
|
-
* wkbMultiPointZM:
|
|
4099
|
-
* wkbMultiLineStringZM:
|
|
4100
|
-
* wkbMultiPolygonZM:
|
|
4101
|
-
* wkbGeometryCollectionZM:
|
|
4102
|
-
* wkbPoint25D:
|
|
4166
|
+
* wkbMultiPointZM: "Measured 3D MultiPoint",
|
|
4167
|
+
* wkbMultiLineStringZM: "Measured 3D MultiLineString",
|
|
4168
|
+
* wkbMultiPolygonZM: "Measured 3D MultiPolygon", # <<<<<<<<<<<<<<
|
|
4169
|
+
* wkbGeometryCollectionZM: "Measured 3D GeometryCollection",
|
|
4170
|
+
* wkbPoint25D: "Point Z",
|
|
4103
4171
|
*/
|
|
4104
4172
|
__pyx_t_3 = __Pyx_PyInt_From_OGRwkbGeometryType(wkbMultiPolygonZM); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 35, __pyx_L1_error)
|
|
4105
4173
|
__Pyx_GOTREF(__pyx_t_3);
|
|
@@ -4107,11 +4175,11 @@ if (!__Pyx_RefNanny) {
|
|
|
4107
4175
|
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
|
|
4108
4176
|
|
|
4109
4177
|
/* "pyogrio/_geometry.pyx":36
|
|
4110
|
-
* wkbMultiLineStringZM:
|
|
4111
|
-
* wkbMultiPolygonZM:
|
|
4112
|
-
* wkbGeometryCollectionZM:
|
|
4113
|
-
* wkbPoint25D:
|
|
4114
|
-
* wkbLineString25D:
|
|
4178
|
+
* wkbMultiLineStringZM: "Measured 3D MultiLineString",
|
|
4179
|
+
* wkbMultiPolygonZM: "Measured 3D MultiPolygon",
|
|
4180
|
+
* wkbGeometryCollectionZM: "Measured 3D GeometryCollection", # <<<<<<<<<<<<<<
|
|
4181
|
+
* wkbPoint25D: "Point Z",
|
|
4182
|
+
* wkbLineString25D: "LineString Z",
|
|
4115
4183
|
*/
|
|
4116
4184
|
__pyx_t_3 = __Pyx_PyInt_From_OGRwkbGeometryType(wkbGeometryCollectionZM); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 36, __pyx_L1_error)
|
|
4117
4185
|
__Pyx_GOTREF(__pyx_t_3);
|
|
@@ -4119,11 +4187,11 @@ if (!__Pyx_RefNanny) {
|
|
|
4119
4187
|
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
|
|
4120
4188
|
|
|
4121
4189
|
/* "pyogrio/_geometry.pyx":37
|
|
4122
|
-
* wkbMultiPolygonZM:
|
|
4123
|
-
* wkbGeometryCollectionZM:
|
|
4124
|
-
* wkbPoint25D:
|
|
4125
|
-
* wkbLineString25D:
|
|
4126
|
-
* wkbPolygon25D:
|
|
4190
|
+
* wkbMultiPolygonZM: "Measured 3D MultiPolygon",
|
|
4191
|
+
* wkbGeometryCollectionZM: "Measured 3D GeometryCollection",
|
|
4192
|
+
* wkbPoint25D: "Point Z", # <<<<<<<<<<<<<<
|
|
4193
|
+
* wkbLineString25D: "LineString Z",
|
|
4194
|
+
* wkbPolygon25D: "Polygon Z",
|
|
4127
4195
|
*/
|
|
4128
4196
|
__pyx_t_3 = __Pyx_PyInt_From_OGRwkbGeometryType(wkbPoint25D); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 37, __pyx_L1_error)
|
|
4129
4197
|
__Pyx_GOTREF(__pyx_t_3);
|
|
@@ -4131,11 +4199,11 @@ if (!__Pyx_RefNanny) {
|
|
|
4131
4199
|
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
|
|
4132
4200
|
|
|
4133
4201
|
/* "pyogrio/_geometry.pyx":38
|
|
4134
|
-
* wkbGeometryCollectionZM:
|
|
4135
|
-
* wkbPoint25D:
|
|
4136
|
-
* wkbLineString25D:
|
|
4137
|
-
* wkbPolygon25D:
|
|
4138
|
-
* wkbMultiPoint25D:
|
|
4202
|
+
* wkbGeometryCollectionZM: "Measured 3D GeometryCollection",
|
|
4203
|
+
* wkbPoint25D: "Point Z",
|
|
4204
|
+
* wkbLineString25D: "LineString Z", # <<<<<<<<<<<<<<
|
|
4205
|
+
* wkbPolygon25D: "Polygon Z",
|
|
4206
|
+
* wkbMultiPoint25D: "MultiPoint Z",
|
|
4139
4207
|
*/
|
|
4140
4208
|
__pyx_t_3 = __Pyx_PyInt_From_OGRwkbGeometryType(wkbLineString25D); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 38, __pyx_L1_error)
|
|
4141
4209
|
__Pyx_GOTREF(__pyx_t_3);
|
|
@@ -4143,11 +4211,11 @@ if (!__Pyx_RefNanny) {
|
|
|
4143
4211
|
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
|
|
4144
4212
|
|
|
4145
4213
|
/* "pyogrio/_geometry.pyx":39
|
|
4146
|
-
* wkbPoint25D:
|
|
4147
|
-
* wkbLineString25D:
|
|
4148
|
-
* wkbPolygon25D:
|
|
4149
|
-
* wkbMultiPoint25D:
|
|
4150
|
-
* wkbMultiLineString25D:
|
|
4214
|
+
* wkbPoint25D: "Point Z",
|
|
4215
|
+
* wkbLineString25D: "LineString Z",
|
|
4216
|
+
* wkbPolygon25D: "Polygon Z", # <<<<<<<<<<<<<<
|
|
4217
|
+
* wkbMultiPoint25D: "MultiPoint Z",
|
|
4218
|
+
* wkbMultiLineString25D: "MultiLineString Z",
|
|
4151
4219
|
*/
|
|
4152
4220
|
__pyx_t_3 = __Pyx_PyInt_From_OGRwkbGeometryType(wkbPolygon25D); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 39, __pyx_L1_error)
|
|
4153
4221
|
__Pyx_GOTREF(__pyx_t_3);
|
|
@@ -4155,11 +4223,11 @@ if (!__Pyx_RefNanny) {
|
|
|
4155
4223
|
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
|
|
4156
4224
|
|
|
4157
4225
|
/* "pyogrio/_geometry.pyx":40
|
|
4158
|
-
* wkbLineString25D:
|
|
4159
|
-
* wkbPolygon25D:
|
|
4160
|
-
* wkbMultiPoint25D:
|
|
4161
|
-
* wkbMultiLineString25D:
|
|
4162
|
-
* wkbMultiPolygon25D:
|
|
4226
|
+
* wkbLineString25D: "LineString Z",
|
|
4227
|
+
* wkbPolygon25D: "Polygon Z",
|
|
4228
|
+
* wkbMultiPoint25D: "MultiPoint Z", # <<<<<<<<<<<<<<
|
|
4229
|
+
* wkbMultiLineString25D: "MultiLineString Z",
|
|
4230
|
+
* wkbMultiPolygon25D: "MultiPolygon Z",
|
|
4163
4231
|
*/
|
|
4164
4232
|
__pyx_t_3 = __Pyx_PyInt_From_OGRwkbGeometryType(wkbMultiPoint25D); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 40, __pyx_L1_error)
|
|
4165
4233
|
__Pyx_GOTREF(__pyx_t_3);
|
|
@@ -4167,11 +4235,11 @@ if (!__Pyx_RefNanny) {
|
|
|
4167
4235
|
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
|
|
4168
4236
|
|
|
4169
4237
|
/* "pyogrio/_geometry.pyx":41
|
|
4170
|
-
* wkbPolygon25D:
|
|
4171
|
-
* wkbMultiPoint25D:
|
|
4172
|
-
* wkbMultiLineString25D:
|
|
4173
|
-
* wkbMultiPolygon25D:
|
|
4174
|
-
* wkbGeometryCollection25D:
|
|
4238
|
+
* wkbPolygon25D: "Polygon Z",
|
|
4239
|
+
* wkbMultiPoint25D: "MultiPoint Z",
|
|
4240
|
+
* wkbMultiLineString25D: "MultiLineString Z", # <<<<<<<<<<<<<<
|
|
4241
|
+
* wkbMultiPolygon25D: "MultiPolygon Z",
|
|
4242
|
+
* wkbGeometryCollection25D: "GeometryCollection Z",
|
|
4175
4243
|
*/
|
|
4176
4244
|
__pyx_t_3 = __Pyx_PyInt_From_OGRwkbGeometryType(wkbMultiLineString25D); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 41, __pyx_L1_error)
|
|
4177
4245
|
__Pyx_GOTREF(__pyx_t_3);
|
|
@@ -4179,10 +4247,10 @@ if (!__Pyx_RefNanny) {
|
|
|
4179
4247
|
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
|
|
4180
4248
|
|
|
4181
4249
|
/* "pyogrio/_geometry.pyx":42
|
|
4182
|
-
* wkbMultiPoint25D:
|
|
4183
|
-
* wkbMultiLineString25D:
|
|
4184
|
-
* wkbMultiPolygon25D:
|
|
4185
|
-
* wkbGeometryCollection25D:
|
|
4250
|
+
* wkbMultiPoint25D: "MultiPoint Z",
|
|
4251
|
+
* wkbMultiLineString25D: "MultiLineString Z",
|
|
4252
|
+
* wkbMultiPolygon25D: "MultiPolygon Z", # <<<<<<<<<<<<<<
|
|
4253
|
+
* wkbGeometryCollection25D: "GeometryCollection Z",
|
|
4186
4254
|
* }
|
|
4187
4255
|
*/
|
|
4188
4256
|
__pyx_t_3 = __Pyx_PyInt_From_OGRwkbGeometryType(wkbMultiPolygon25D); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 42, __pyx_L1_error)
|
|
@@ -4191,9 +4259,9 @@ if (!__Pyx_RefNanny) {
|
|
|
4191
4259
|
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
|
|
4192
4260
|
|
|
4193
4261
|
/* "pyogrio/_geometry.pyx":43
|
|
4194
|
-
* wkbMultiLineString25D:
|
|
4195
|
-
* wkbMultiPolygon25D:
|
|
4196
|
-
* wkbGeometryCollection25D:
|
|
4262
|
+
* wkbMultiLineString25D: "MultiLineString Z",
|
|
4263
|
+
* wkbMultiPolygon25D: "MultiPolygon Z",
|
|
4264
|
+
* wkbGeometryCollection25D: "GeometryCollection Z", # <<<<<<<<<<<<<<
|
|
4197
4265
|
* }
|
|
4198
4266
|
*
|
|
4199
4267
|
*/
|
|
@@ -4207,7 +4275,7 @@ if (!__Pyx_RefNanny) {
|
|
|
4207
4275
|
/* "pyogrio/_geometry.pyx":46
|
|
4208
4276
|
* }
|
|
4209
4277
|
*
|
|
4210
|
-
* GEOMETRY_TYPE_CODES = {v:k for k, v in GEOMETRY_TYPES.items()} # <<<<<<<<<<<<<<
|
|
4278
|
+
* GEOMETRY_TYPE_CODES = {v: k for k, v in GEOMETRY_TYPES.items()} # <<<<<<<<<<<<<<
|
|
4211
4279
|
*
|
|
4212
4280
|
* # add additional aliases from 2.5D format
|
|
4213
4281
|
*/
|
|
@@ -4264,8 +4332,8 @@ if (!__Pyx_RefNanny) {
|
|
|
4264
4332
|
*
|
|
4265
4333
|
* # add additional aliases from 2.5D format
|
|
4266
4334
|
* GEOMETRY_TYPE_CODES.update({ # <<<<<<<<<<<<<<
|
|
4267
|
-
*
|
|
4268
|
-
*
|
|
4335
|
+
* "2.5D Point": wkbPoint25D,
|
|
4336
|
+
* "2.5D LineString": wkbLineString25D,
|
|
4269
4337
|
*/
|
|
4270
4338
|
__Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_GEOMETRY_TYPE_CODES); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 49, __pyx_L1_error)
|
|
4271
4339
|
__Pyx_GOTREF(__pyx_t_2);
|
|
@@ -4276,9 +4344,9 @@ if (!__Pyx_RefNanny) {
|
|
|
4276
4344
|
/* "pyogrio/_geometry.pyx":50
|
|
4277
4345
|
* # add additional aliases from 2.5D format
|
|
4278
4346
|
* GEOMETRY_TYPE_CODES.update({
|
|
4279
|
-
*
|
|
4280
|
-
*
|
|
4281
|
-
*
|
|
4347
|
+
* "2.5D Point": wkbPoint25D, # <<<<<<<<<<<<<<
|
|
4348
|
+
* "2.5D LineString": wkbLineString25D,
|
|
4349
|
+
* "2.5D Polygon": wkbPolygon25D,
|
|
4282
4350
|
*/
|
|
4283
4351
|
__pyx_t_2 = __Pyx_PyDict_NewPresized(7); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 50, __pyx_L1_error)
|
|
4284
4352
|
__Pyx_GOTREF(__pyx_t_2);
|
|
@@ -4289,10 +4357,10 @@ if (!__Pyx_RefNanny) {
|
|
|
4289
4357
|
|
|
4290
4358
|
/* "pyogrio/_geometry.pyx":51
|
|
4291
4359
|
* GEOMETRY_TYPE_CODES.update({
|
|
4292
|
-
*
|
|
4293
|
-
*
|
|
4294
|
-
*
|
|
4295
|
-
*
|
|
4360
|
+
* "2.5D Point": wkbPoint25D,
|
|
4361
|
+
* "2.5D LineString": wkbLineString25D, # <<<<<<<<<<<<<<
|
|
4362
|
+
* "2.5D Polygon": wkbPolygon25D,
|
|
4363
|
+
* "2.5D MultiPoint": wkbMultiPoint25D,
|
|
4296
4364
|
*/
|
|
4297
4365
|
__pyx_t_7 = __Pyx_PyInt_From_OGRwkbGeometryType(wkbLineString25D); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 51, __pyx_L1_error)
|
|
4298
4366
|
__Pyx_GOTREF(__pyx_t_7);
|
|
@@ -4300,11 +4368,11 @@ if (!__Pyx_RefNanny) {
|
|
|
4300
4368
|
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
|
|
4301
4369
|
|
|
4302
4370
|
/* "pyogrio/_geometry.pyx":52
|
|
4303
|
-
*
|
|
4304
|
-
*
|
|
4305
|
-
*
|
|
4306
|
-
*
|
|
4307
|
-
*
|
|
4371
|
+
* "2.5D Point": wkbPoint25D,
|
|
4372
|
+
* "2.5D LineString": wkbLineString25D,
|
|
4373
|
+
* "2.5D Polygon": wkbPolygon25D, # <<<<<<<<<<<<<<
|
|
4374
|
+
* "2.5D MultiPoint": wkbMultiPoint25D,
|
|
4375
|
+
* "2.5D MultiLineString": wkbMultiLineString25D,
|
|
4308
4376
|
*/
|
|
4309
4377
|
__pyx_t_7 = __Pyx_PyInt_From_OGRwkbGeometryType(wkbPolygon25D); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 52, __pyx_L1_error)
|
|
4310
4378
|
__Pyx_GOTREF(__pyx_t_7);
|
|
@@ -4312,11 +4380,11 @@ if (!__Pyx_RefNanny) {
|
|
|
4312
4380
|
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
|
|
4313
4381
|
|
|
4314
4382
|
/* "pyogrio/_geometry.pyx":53
|
|
4315
|
-
*
|
|
4316
|
-
*
|
|
4317
|
-
*
|
|
4318
|
-
*
|
|
4319
|
-
*
|
|
4383
|
+
* "2.5D LineString": wkbLineString25D,
|
|
4384
|
+
* "2.5D Polygon": wkbPolygon25D,
|
|
4385
|
+
* "2.5D MultiPoint": wkbMultiPoint25D, # <<<<<<<<<<<<<<
|
|
4386
|
+
* "2.5D MultiLineString": wkbMultiLineString25D,
|
|
4387
|
+
* "2.5D MultiPolygon": wkbMultiPolygon25D,
|
|
4320
4388
|
*/
|
|
4321
4389
|
__pyx_t_7 = __Pyx_PyInt_From_OGRwkbGeometryType(wkbMultiPoint25D); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 53, __pyx_L1_error)
|
|
4322
4390
|
__Pyx_GOTREF(__pyx_t_7);
|
|
@@ -4324,11 +4392,11 @@ if (!__Pyx_RefNanny) {
|
|
|
4324
4392
|
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
|
|
4325
4393
|
|
|
4326
4394
|
/* "pyogrio/_geometry.pyx":54
|
|
4327
|
-
*
|
|
4328
|
-
*
|
|
4329
|
-
*
|
|
4330
|
-
*
|
|
4331
|
-
*
|
|
4395
|
+
* "2.5D Polygon": wkbPolygon25D,
|
|
4396
|
+
* "2.5D MultiPoint": wkbMultiPoint25D,
|
|
4397
|
+
* "2.5D MultiLineString": wkbMultiLineString25D, # <<<<<<<<<<<<<<
|
|
4398
|
+
* "2.5D MultiPolygon": wkbMultiPolygon25D,
|
|
4399
|
+
* "2.5D GeometryCollection": wkbGeometryCollection25D
|
|
4332
4400
|
*/
|
|
4333
4401
|
__pyx_t_7 = __Pyx_PyInt_From_OGRwkbGeometryType(wkbMultiLineString25D); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 54, __pyx_L1_error)
|
|
4334
4402
|
__Pyx_GOTREF(__pyx_t_7);
|
|
@@ -4336,10 +4404,10 @@ if (!__Pyx_RefNanny) {
|
|
|
4336
4404
|
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
|
|
4337
4405
|
|
|
4338
4406
|
/* "pyogrio/_geometry.pyx":55
|
|
4339
|
-
*
|
|
4340
|
-
*
|
|
4341
|
-
*
|
|
4342
|
-
*
|
|
4407
|
+
* "2.5D MultiPoint": wkbMultiPoint25D,
|
|
4408
|
+
* "2.5D MultiLineString": wkbMultiLineString25D,
|
|
4409
|
+
* "2.5D MultiPolygon": wkbMultiPolygon25D, # <<<<<<<<<<<<<<
|
|
4410
|
+
* "2.5D GeometryCollection": wkbGeometryCollection25D
|
|
4343
4411
|
* })
|
|
4344
4412
|
*/
|
|
4345
4413
|
__pyx_t_7 = __Pyx_PyInt_From_OGRwkbGeometryType(wkbMultiPolygon25D); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 55, __pyx_L1_error)
|
|
@@ -4348,9 +4416,9 @@ if (!__Pyx_RefNanny) {
|
|
|
4348
4416
|
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
|
|
4349
4417
|
|
|
4350
4418
|
/* "pyogrio/_geometry.pyx":56
|
|
4351
|
-
*
|
|
4352
|
-
*
|
|
4353
|
-
*
|
|
4419
|
+
* "2.5D MultiLineString": wkbMultiLineString25D,
|
|
4420
|
+
* "2.5D MultiPolygon": wkbMultiPolygon25D,
|
|
4421
|
+
* "2.5D GeometryCollection": wkbGeometryCollection25D # <<<<<<<<<<<<<<
|
|
4354
4422
|
* })
|
|
4355
4423
|
*
|
|
4356
4424
|
*/
|
|
@@ -4363,8 +4431,8 @@ if (!__Pyx_RefNanny) {
|
|
|
4363
4431
|
*
|
|
4364
4432
|
* # add additional aliases from 2.5D format
|
|
4365
4433
|
* GEOMETRY_TYPE_CODES.update({ # <<<<<<<<<<<<<<
|
|
4366
|
-
*
|
|
4367
|
-
*
|
|
4434
|
+
* "2.5D Point": wkbPoint25D,
|
|
4435
|
+
* "2.5D LineString": wkbLineString25D,
|
|
4368
4436
|
*/
|
|
4369
4437
|
__pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 49, __pyx_L1_error)
|
|
4370
4438
|
__Pyx_GOTREF(__pyx_t_7);
|
|
@@ -4376,8 +4444,8 @@ if (!__Pyx_RefNanny) {
|
|
|
4376
4444
|
*
|
|
4377
4445
|
* # 2.5D also represented using negative numbers not enumerated above
|
|
4378
4446
|
* GEOMETRY_TYPES.update({ # <<<<<<<<<<<<<<
|
|
4379
|
-
* -2147483647:
|
|
4380
|
-
* -2147483646:
|
|
4447
|
+
* -2147483647: "Point Z",
|
|
4448
|
+
* -2147483646: "LineString Z",
|
|
4381
4449
|
*/
|
|
4382
4450
|
__Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_GEOMETRY_TYPES); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 60, __pyx_L1_error)
|
|
4383
4451
|
__Pyx_GOTREF(__pyx_t_7);
|
|
@@ -4388,9 +4456,9 @@ if (!__Pyx_RefNanny) {
|
|
|
4388
4456
|
/* "pyogrio/_geometry.pyx":61
|
|
4389
4457
|
* # 2.5D also represented using negative numbers not enumerated above
|
|
4390
4458
|
* GEOMETRY_TYPES.update({
|
|
4391
|
-
* -2147483647:
|
|
4392
|
-
* -2147483646:
|
|
4393
|
-
* -2147483645:
|
|
4459
|
+
* -2147483647: "Point Z", # <<<<<<<<<<<<<<
|
|
4460
|
+
* -2147483646: "LineString Z",
|
|
4461
|
+
* -2147483645: "Polygon Z",
|
|
4394
4462
|
*/
|
|
4395
4463
|
__pyx_t_7 = __Pyx_PyDict_NewPresized(7); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 61, __pyx_L1_error)
|
|
4396
4464
|
__Pyx_GOTREF(__pyx_t_7);
|
|
@@ -4406,8 +4474,8 @@ if (!__Pyx_RefNanny) {
|
|
|
4406
4474
|
*
|
|
4407
4475
|
* # 2.5D also represented using negative numbers not enumerated above
|
|
4408
4476
|
* GEOMETRY_TYPES.update({ # <<<<<<<<<<<<<<
|
|
4409
|
-
* -2147483647:
|
|
4410
|
-
* -2147483646:
|
|
4477
|
+
* -2147483647: "Point Z",
|
|
4478
|
+
* -2147483646: "LineString Z",
|
|
4411
4479
|
*/
|
|
4412
4480
|
__pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_7); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 60, __pyx_L1_error)
|
|
4413
4481
|
__Pyx_GOTREF(__pyx_t_3);
|
|
@@ -5920,6 +5988,106 @@ static PyObject *__Pyx_PyDict_GetItem(PyObject *d, PyObject* key) {
|
|
|
5920
5988
|
}
|
|
5921
5989
|
#endif
|
|
5922
5990
|
|
|
5991
|
+
/* TypeImport */
|
|
5992
|
+
#ifndef __PYX_HAVE_RT_ImportType_3_0_12
|
|
5993
|
+
#define __PYX_HAVE_RT_ImportType_3_0_12
|
|
5994
|
+
static PyTypeObject *__Pyx_ImportType_3_0_12(PyObject *module, const char *module_name, const char *class_name,
|
|
5995
|
+
size_t size, size_t alignment, enum __Pyx_ImportType_CheckSize_3_0_12 check_size)
|
|
5996
|
+
{
|
|
5997
|
+
PyObject *result = 0;
|
|
5998
|
+
char warning[200];
|
|
5999
|
+
Py_ssize_t basicsize;
|
|
6000
|
+
Py_ssize_t itemsize;
|
|
6001
|
+
#if CYTHON_COMPILING_IN_LIMITED_API
|
|
6002
|
+
PyObject *py_basicsize;
|
|
6003
|
+
PyObject *py_itemsize;
|
|
6004
|
+
#endif
|
|
6005
|
+
result = PyObject_GetAttrString(module, class_name);
|
|
6006
|
+
if (!result)
|
|
6007
|
+
goto bad;
|
|
6008
|
+
if (!PyType_Check(result)) {
|
|
6009
|
+
PyErr_Format(PyExc_TypeError,
|
|
6010
|
+
"%.200s.%.200s is not a type object",
|
|
6011
|
+
module_name, class_name);
|
|
6012
|
+
goto bad;
|
|
6013
|
+
}
|
|
6014
|
+
#if !CYTHON_COMPILING_IN_LIMITED_API
|
|
6015
|
+
basicsize = ((PyTypeObject *)result)->tp_basicsize;
|
|
6016
|
+
itemsize = ((PyTypeObject *)result)->tp_itemsize;
|
|
6017
|
+
#else
|
|
6018
|
+
py_basicsize = PyObject_GetAttrString(result, "__basicsize__");
|
|
6019
|
+
if (!py_basicsize)
|
|
6020
|
+
goto bad;
|
|
6021
|
+
basicsize = PyLong_AsSsize_t(py_basicsize);
|
|
6022
|
+
Py_DECREF(py_basicsize);
|
|
6023
|
+
py_basicsize = 0;
|
|
6024
|
+
if (basicsize == (Py_ssize_t)-1 && PyErr_Occurred())
|
|
6025
|
+
goto bad;
|
|
6026
|
+
py_itemsize = PyObject_GetAttrString(result, "__itemsize__");
|
|
6027
|
+
if (!py_itemsize)
|
|
6028
|
+
goto bad;
|
|
6029
|
+
itemsize = PyLong_AsSsize_t(py_itemsize);
|
|
6030
|
+
Py_DECREF(py_itemsize);
|
|
6031
|
+
py_itemsize = 0;
|
|
6032
|
+
if (itemsize == (Py_ssize_t)-1 && PyErr_Occurred())
|
|
6033
|
+
goto bad;
|
|
6034
|
+
#endif
|
|
6035
|
+
if (itemsize) {
|
|
6036
|
+
if (size % alignment) {
|
|
6037
|
+
alignment = size % alignment;
|
|
6038
|
+
}
|
|
6039
|
+
if (itemsize < (Py_ssize_t)alignment)
|
|
6040
|
+
itemsize = (Py_ssize_t)alignment;
|
|
6041
|
+
}
|
|
6042
|
+
if ((size_t)(basicsize + itemsize) < size) {
|
|
6043
|
+
PyErr_Format(PyExc_ValueError,
|
|
6044
|
+
"%.200s.%.200s size changed, may indicate binary incompatibility. "
|
|
6045
|
+
"Expected %zd from C header, got %zd from PyObject",
|
|
6046
|
+
module_name, class_name, size, basicsize+itemsize);
|
|
6047
|
+
goto bad;
|
|
6048
|
+
}
|
|
6049
|
+
if (check_size == __Pyx_ImportType_CheckSize_Error_3_0_12 &&
|
|
6050
|
+
((size_t)basicsize > size || (size_t)(basicsize + itemsize) < size)) {
|
|
6051
|
+
PyErr_Format(PyExc_ValueError,
|
|
6052
|
+
"%.200s.%.200s size changed, may indicate binary incompatibility. "
|
|
6053
|
+
"Expected %zd from C header, got %zd-%zd from PyObject",
|
|
6054
|
+
module_name, class_name, size, basicsize, basicsize+itemsize);
|
|
6055
|
+
goto bad;
|
|
6056
|
+
}
|
|
6057
|
+
else if (check_size == __Pyx_ImportType_CheckSize_Warn_3_0_12 && (size_t)basicsize > size) {
|
|
6058
|
+
PyOS_snprintf(warning, sizeof(warning),
|
|
6059
|
+
"%s.%s size changed, may indicate binary incompatibility. "
|
|
6060
|
+
"Expected %zd from C header, got %zd from PyObject",
|
|
6061
|
+
module_name, class_name, size, basicsize);
|
|
6062
|
+
if (PyErr_WarnEx(NULL, warning, 0) < 0) goto bad;
|
|
6063
|
+
}
|
|
6064
|
+
return (PyTypeObject *)result;
|
|
6065
|
+
bad:
|
|
6066
|
+
Py_XDECREF(result);
|
|
6067
|
+
return NULL;
|
|
6068
|
+
}
|
|
6069
|
+
#endif
|
|
6070
|
+
|
|
6071
|
+
/* GetVTable */
|
|
6072
|
+
static void* __Pyx_GetVtable(PyTypeObject *type) {
|
|
6073
|
+
void* ptr;
|
|
6074
|
+
#if CYTHON_COMPILING_IN_LIMITED_API
|
|
6075
|
+
PyObject *ob = PyObject_GetAttr((PyObject *)type, __pyx_n_s_pyx_vtable);
|
|
6076
|
+
#else
|
|
6077
|
+
PyObject *ob = PyObject_GetItem(type->tp_dict, __pyx_n_s_pyx_vtable);
|
|
6078
|
+
#endif
|
|
6079
|
+
if (!ob)
|
|
6080
|
+
goto bad;
|
|
6081
|
+
ptr = PyCapsule_GetPointer(ob, 0);
|
|
6082
|
+
if (!ptr && !PyErr_Occurred())
|
|
6083
|
+
PyErr_SetString(PyExc_RuntimeError, "invalid vtable found for imported type");
|
|
6084
|
+
Py_DECREF(ob);
|
|
6085
|
+
return ptr;
|
|
6086
|
+
bad:
|
|
6087
|
+
Py_XDECREF(ob);
|
|
6088
|
+
return NULL;
|
|
6089
|
+
}
|
|
6090
|
+
|
|
5923
6091
|
/* Import */
|
|
5924
6092
|
static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level) {
|
|
5925
6093
|
PyObject *module = 0;
|
|
@@ -6623,7 +6791,7 @@ static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object) {
|
|
|
6623
6791
|
#include "compile.h"
|
|
6624
6792
|
#include "frameobject.h"
|
|
6625
6793
|
#include "traceback.h"
|
|
6626
|
-
#if PY_VERSION_HEX >= 0x030b00a6 && !CYTHON_COMPILING_IN_LIMITED_API
|
|
6794
|
+
#if PY_VERSION_HEX >= 0x030b00a6 && !CYTHON_COMPILING_IN_LIMITED_API && !defined(PYPY_VERSION)
|
|
6627
6795
|
#ifndef Py_BUILD_CORE
|
|
6628
6796
|
#define Py_BUILD_CORE 1
|
|
6629
6797
|
#endif
|
|
@@ -7808,9 +7976,9 @@ bad:
|
|
|
7808
7976
|
}
|
|
7809
7977
|
|
|
7810
7978
|
/* FunctionImport */
|
|
7811
|
-
#ifndef
|
|
7812
|
-
#define
|
|
7813
|
-
static int
|
|
7979
|
+
#ifndef __PYX_HAVE_RT_ImportFunction_3_0_12
|
|
7980
|
+
#define __PYX_HAVE_RT_ImportFunction_3_0_12
|
|
7981
|
+
static int __Pyx_ImportFunction_3_0_12(PyObject *module, const char *funcname, void (**f)(void), const char *sig) {
|
|
7814
7982
|
PyObject *d = 0;
|
|
7815
7983
|
PyObject *cobj = 0;
|
|
7816
7984
|
union {
|