typed-arrow 0.7.0

Compile-time Arrow schemas for Rust.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
use arrow_array::Array;
use arrow_schema::DataType;
use typed_arrow::{LargeBinary, arrow_array, arrow_schema, bridge::ArrowBinding};

#[test]
fn large_binary_datatype_and_build() {
    assert_eq!(
        <LargeBinary as ArrowBinding>::data_type(),
        DataType::LargeBinary
    );
    let mut b = <LargeBinary as ArrowBinding>::new_builder(3);
    <LargeBinary as ArrowBinding>::append_value(&mut b, &LargeBinary::new(vec![1, 2, 3]));
    <LargeBinary as ArrowBinding>::append_null(&mut b);
    <LargeBinary as ArrowBinding>::append_value(&mut b, &LargeBinary::new(vec![]));
    let a = <LargeBinary as ArrowBinding>::finish(b);
    assert_eq!(a.len(), 3);
}