Le 24/09/2020 à 17:18, Antoine Pitrou a écrit : >> 1. in pyarrow, I was only able to find Array.from_buffers and from_pandas. >> Is the ABI implemented but not documented? > > It is implemented in C++ and also exposed (but undocumented) in Python. > > The Python methods are called `Array._import_from_c`, > `Array._export_to_c`, likewise for `Schema` and `RecordBatch`. > > You can find the source for Array methods here: > https://github.com/apache/arrow/blob/master/python/pyarrow/array.pxi#L1201 > > There are ad-hoc tests for Python here: > https://github.com/apache/arrow/blob/master/python/pyarrow/tests/test_cffi.py > > The core C++ implementation is exported and documented here: > https://github.com/apache/arrow/blob/master/cpp/src/arrow/c/bridge.h
Ah, and there are a couple of low-level C helpers you may find useful here, if you want to reimplement the same operations in Rust: https://github.com/apache/arrow/blob/master/cpp/src/arrow/c/helpers.h Regards Antoine.