pub enum ColumnVector {
Bool(Vec<bool>),
Int64(Vec<i64>),
UInt64(Vec<u64>),
Float64(Vec<f64>),
String {
offsets: Vec<u32>,
data: Vec<u8>,
},
Binary {
offsets: Vec<u32>,
data: Vec<u8>,
},
Null(Vec<u64>),
}Expand description
Typed column vector for SIMD-friendly access
Each variant stores contiguous values for vectorized operations.
Variants§
Bool(Vec<bool>)
Boolean column (bit-packed for SIMD)
Int64(Vec<i64>)
64-bit signed integers (SIMD-friendly)
UInt64(Vec<u64>)
64-bit unsigned integers
Float64(Vec<f64>)
64-bit floats
String
Variable-length strings (Arrow-style: offsets + data)
Binary
Binary data (Arrow-style: offsets + data)
Null(Vec<u64>)
Null bitmap for any column (packed bits)
Implementations§
Source§impl ColumnVector
impl ColumnVector
pub fn new_float64(capacity: usize) -> Self
pub fn new_string(capacity: usize) -> Self
Sourcepub fn memory_size(&self) -> usize
pub fn memory_size(&self) -> usize
Get memory size in bytes
Trait Implementations§
Source§impl Clone for ColumnVector
impl Clone for ColumnVector
Source§fn clone(&self) -> ColumnVector
fn clone(&self) -> ColumnVector
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for ColumnVector
impl RefUnwindSafe for ColumnVector
impl Send for ColumnVector
impl Sync for ColumnVector
impl Unpin for ColumnVector
impl UnsafeUnpin for ColumnVector
impl UnwindSafe for ColumnVector
Blanket Implementations§
impl<T> Allocation for T
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more