pub struct ZoneMapsFieldEncoder { /* private fields */ }
Expand description
A field encoder that creates zone maps for the data it encodes
This encoder will create zone maps for the data it encodes. The zone maps are created by dividing the data into zones of a fixed size and calculating the min/max values for each zone. The zone maps are then encoded as metadata.
This metadata can be used by the reader to skip over zones that don’t contain data that matches the query.
Implementations§
Trait Implementations§
Source§impl FieldEncoder for ZoneMapsFieldEncoder
impl FieldEncoder for ZoneMapsFieldEncoder
Source§fn maybe_encode(
&mut self,
array: ArrayRef,
external_buffers: &mut OutOfLineBuffers,
repdef: RepDefBuilder,
row_number: u64,
) -> Result<Vec<EncodeTask>>
fn maybe_encode( &mut self, array: ArrayRef, external_buffers: &mut OutOfLineBuffers, repdef: RepDefBuilder, row_number: u64, ) -> Result<Vec<EncodeTask>>
Buffer the data and, if there is enough data in the buffer to form a page, return
an encoding task to encode the data. Read more
Source§fn flush(
&mut self,
external_buffers: &mut OutOfLineBuffers,
) -> Result<Vec<EncodeTask>>
fn flush( &mut self, external_buffers: &mut OutOfLineBuffers, ) -> Result<Vec<EncodeTask>>
Flush any remaining data from the buffers into encoding tasks Read more
Source§fn finish(
&mut self,
external_buffers: &mut OutOfLineBuffers,
) -> BoxFuture<'_, Result<Vec<EncodedColumn>>>
fn finish( &mut self, external_buffers: &mut OutOfLineBuffers, ) -> BoxFuture<'_, Result<Vec<EncodedColumn>>>
Finish encoding and return column metadata Read more
Source§fn num_columns(&self) -> u32
fn num_columns(&self) -> u32
The number of output columns this encoding will create
Auto Trait Implementations§
impl Freeze for ZoneMapsFieldEncoder
impl !RefUnwindSafe for ZoneMapsFieldEncoder
impl Send for ZoneMapsFieldEncoder
impl !Sync for ZoneMapsFieldEncoder
impl Unpin for ZoneMapsFieldEncoder
impl !UnwindSafe for ZoneMapsFieldEncoder
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
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 moreCreates a shared type from an unshared type.