paleolimbot commented on code in PR #16: URL: https://github.com/apache/arrow-nanoarrow/pull/16#discussion_r942437669
########## src/nanoarrow/nanoarrow.h: ########## @@ -508,9 +512,31 @@ void ArrowArraySetValidityBitmap(struct ArrowArray* array, struct ArrowBitmap* b ArrowErrorCode ArrowArraySetBuffer(struct ArrowArray* array, int64_t i, struct ArrowBuffer* buffer); +static inline struct ArrowBitmap* ArrowArrayValidityBitmap(struct ArrowArray* array); + +static inline struct ArrowBuffer* ArrowArrayBuffer(struct ArrowArray* array, int64_t i); + +static inline ArrowErrorCode ArrowArrayReserve(struct ArrowArray* array, + int64_t additional_size_elements); + +static inline ArrowErrorCode ArrowArrayResize(struct ArrowArray* array, + int64_t new_capacity_elements, + char shrink_to_fit); + +static inline ArrowErrorCode ArrowArrayAppendNull(struct ArrowArray* array, int64_t n); + +static inline ArrowErrorCode ArrowArrayAppendInt(struct ArrowArray* array, int64_t value); Review Comment: At the point that one is appending by element, does the time required to cast to 64-bit width and back matter? The truly fast way to do it would be `ArrowBufferAppendUnsafe(ArrowArrayBuffer(array, 1), &value, sizeof(int16_t)))`. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@arrow.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org