0.1.0 - Initial release
A zero-copy, strongly typed interface for Apache Arrow columns and record batches, for Rust's arrow-rs.
Highlights:
Column<L>: a strongly-typed, validated, zero-copy view of one record batch column,
whereLis a logical type likeString,Option<i64>, orList<Option<String>>- One eager, cheap validation at the parse boundary; after that,
element access is infallible, fully typed, and zero-copy - Logical types for primitives,
f16, strings, binaries, timestamps, durations,
dates, times, lists, fixed-size lists, fixed-size binaries, and dictionaries #[derive(Quiver)]: convert a struct of columns to and from arrowRecordBatches,
mixing strongly-typedColumn<L>fields with raw arrow arraysCOLUMN_*descriptor constants for single-column extraction without hard-coding names- Per-column metadata, declared (
#[quiver(metadata("key" = "value"))]) or per-instance newtype_datatype!for domain newtypes, and theAsadapter for foreign types
Published crates: quiver, quiver_types, quiver_derive