pub trait SimpleColumnarData {
type ArrowBuilder: ArrayBuilder + Default;
type ArrowColumn: Array + Clone + 'static;
// Required methods
fn goodbytes(builder: &Self::ArrowBuilder) -> usize;
fn push(&self, builder: &mut Self::ArrowBuilder);
fn push_null(builder: &mut Self::ArrowBuilder);
fn read(&mut self, idx: usize, column: &Self::ArrowColumn);
}
Expand description
Simple type of data that can be columnar encoded.
Required Associated Types§
sourcetype ArrowBuilder: ArrayBuilder + Default
type ArrowBuilder: ArrayBuilder + Default
Type of arrow
builder that we encode data into.
sourcetype ArrowColumn: Array + Clone + 'static
type ArrowColumn: Array + Clone + 'static
Type of arrow
array the we decode data from.
Required Methods§
sourcefn goodbytes(builder: &Self::ArrowBuilder) -> usize
fn goodbytes(builder: &Self::ArrowBuilder) -> usize
The number of actual data bytes this item represents.
sourcefn push(&self, builder: &mut Self::ArrowBuilder)
fn push(&self, builder: &mut Self::ArrowBuilder)
Encode self
into builder
.
sourcefn push_null(builder: &mut Self::ArrowBuilder)
fn push_null(builder: &mut Self::ArrowBuilder)
Encode a null value into builder
.
sourcefn read(&mut self, idx: usize, column: &Self::ArrowColumn)
fn read(&mut self, idx: usize, column: &Self::ArrowColumn)
Decode an instance of self
from column
.
Object Safety§
This trait is not object safe.