geoarrow-c
geoarrow-c copied to clipboard
Add support for 64-bit offsets
Currently, all offset types are int32_t
and iterating over LARGE_WKT
and LARGE_WKB
is currently not possible. We need to:
- Ensure that the
offsets
member of theGeoArrowArrayView
can handleint64_t
- Implement a visitor + writer for LARGE_WKB and LARGE_WKT. There is nothing inherently difficult about this except that doing it in C is hard because there are no templates
While we're changing the GeoArrowArrayView
+ places that access it, it's worth making a few other changes to ease the cost of updating when adding a few other features:
- Ensure that serialized types can be represented by a
GeoArrowArrayView
. Right now there's no place to put thedata
member andgeobuffers()
does not work for serialized types - Ensure that the coordinate buffer value of
double
can expand to fit more types, probably by making this type a union. This will ensure that a future version of geoarrow-c that supports float coords won't be source-breaking.