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::{LargeUtf8, arrow_array, arrow_schema, bridge::ArrowBinding};

#[test]
fn large_utf8_datatype_and_build() {
    assert_eq!(
        <LargeUtf8 as ArrowBinding>::data_type(),
        DataType::LargeUtf8
    );
    let mut b = <LargeUtf8 as ArrowBinding>::new_builder(3);
    <LargeUtf8 as ArrowBinding>::append_value(&mut b, &LargeUtf8::new("hello".into()));
    <LargeUtf8 as ArrowBinding>::append_null(&mut b);
    <LargeUtf8 as ArrowBinding>::append_value(&mut b, &LargeUtf8::new(String::new()));
    let a = <LargeUtf8 as ArrowBinding>::finish(b);
    assert_eq!(a.len(), 3);
}