Low-level buffer abstractions for Apache Arrow Rust
Byte Storage abstractions
- [
MutableBuffer]: Raw memory buffer that can be mutated and grown - [
Buffer]: Immutable buffer that is shared across threads
Typed Abstractions
There are also several wrappers over [Buffer] with methods for
easier manipulation:
- [
BooleanBuffer][]: Bitmasks (buffer of packed bits) - [
NullBuffer][]: Arrow null (validity) bitmaps ([BooleanBuffer] with extra utilities) - [
ScalarBuffer<T>][]: Typed buffer for primitive types (e.g.,i32,f64) - [
OffsetBuffer<O>][]: Offsets used in variable-length types (e.g., strings, lists) - [
RunEndBuffer<E>][]: Run-ends used in run-encoded encoded data