Skip to content

Latest commit

 

History

History

rust

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Native Rust implementation of Apache Arrow

Build Status Coverage Status

Status

This is a starting point for a native Rust implementation of Arrow.

The current code demonstrates arrays of primitive types and structs.

Creating an Array from a Vec

// create a memory-aligned Arrow array from an existing Vec
let array = PrimitiveArray::from(vec![1, 2, 3, 4, 5]);

println!("array contents: {:?}", array.iter().collect::<Vec<i32>>());

Creating an Array from a Builder

let mut builder: Builder<i32> = Builder::new();
for i in 0..10 {
    builder.push(i);
}
let buffer = builder.finish();
let array = PrimitiveArray::from(buffer);

println!("array contents: {:?}", array.iter().collect::<Vec<i32>>());

Run Examples

Examples can be run using the cargo run --example command. For example:

cargo run --example array_from_builder

Run Tests

cargo test