pub struct PrimitiveGroupValueBuilder<T: ArrowPrimitiveType, const NULLABLE: bool> {
data_type: DataType,
group_values: Vec<T::Native>,
nulls: MaybeNullBufferBuilder,
}Expand description
An implementation of GroupColumn for primitive values
Optimized to skip null buffer construction if the input is known to be non nullable
§Template parameters
T: the native Rust type that stores the data
NULLABLE: if the data can contain any nulls
Fields§
§data_type: DataType§group_values: Vec<T::Native>§nulls: MaybeNullBufferBuilderImplementations§
Trait Implementations§
Source§impl<T: Debug + ArrowPrimitiveType, const NULLABLE: bool> Debug for PrimitiveGroupValueBuilder<T, NULLABLE>where
T::Native: Debug,
impl<T: Debug + ArrowPrimitiveType, const NULLABLE: bool> Debug for PrimitiveGroupValueBuilder<T, NULLABLE>where
T::Native: Debug,
Source§impl<T: ArrowPrimitiveType, const NULLABLE: bool> GroupColumn for PrimitiveGroupValueBuilder<T, NULLABLE>
impl<T: ArrowPrimitiveType, const NULLABLE: bool> GroupColumn for PrimitiveGroupValueBuilder<T, NULLABLE>
Source§fn equal_to(&self, lhs_row: usize, array: &ArrayRef, rhs_row: usize) -> bool
fn equal_to(&self, lhs_row: usize, array: &ArrayRef, rhs_row: usize) -> bool
Returns equal if the row stored in this builder at
lhs_row is equal to
the row in array at rhs_row Read moreSource§fn append_val(&mut self, array: &ArrayRef, row: usize) -> Result<()>
fn append_val(&mut self, array: &ArrayRef, row: usize) -> Result<()>
Appends the row at
row in array to this builderSource§fn vectorized_equal_to(
&self,
lhs_rows: &[usize],
array: &ArrayRef,
rhs_rows: &[usize],
equal_to_results: &mut [bool],
)
fn vectorized_equal_to( &self, lhs_rows: &[usize], array: &ArrayRef, rhs_rows: &[usize], equal_to_results: &mut [bool], )
The vectorized version equal to Read more
Source§fn vectorized_append(&mut self, array: &ArrayRef, rows: &[usize]) -> Result<()>
fn vectorized_append(&mut self, array: &ArrayRef, rows: &[usize]) -> Result<()>
The vectorized version
append_valSource§fn size(&self) -> usize
fn size(&self) -> usize
Returns the number of bytes used by this
GroupColumnAuto Trait Implementations§
impl<T, const NULLABLE: bool> Freeze for PrimitiveGroupValueBuilder<T, NULLABLE>
impl<T, const NULLABLE: bool> RefUnwindSafe for PrimitiveGroupValueBuilder<T, NULLABLE>where
<T as ArrowPrimitiveType>::Native: RefUnwindSafe,
impl<T, const NULLABLE: bool> Send for PrimitiveGroupValueBuilder<T, NULLABLE>
impl<T, const NULLABLE: bool> Sync for PrimitiveGroupValueBuilder<T, NULLABLE>
impl<T, const NULLABLE: bool> Unpin for PrimitiveGroupValueBuilder<T, NULLABLE>where
<T as ArrowPrimitiveType>::Native: Unpin,
impl<T, const NULLABLE: bool> UnwindSafe for PrimitiveGroupValueBuilder<T, NULLABLE>where
<T as ArrowPrimitiveType>::Native: UnwindSafe,
Blanket Implementations§
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<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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