pub type ColumnWriterImpl<'a, T> = GenericColumnWriter<'a, ColumnValueEncoderImpl<T>>;
Expand description
Typed column writer for a primitive column.
Aliased Type§
struct ColumnWriterImpl<'a, T> {Show 18 fields
descr: Arc<ColumnDescriptor>,
props: Arc<WriterProperties>,
statistics_enabled: EnabledStatistics,
page_writer: Box<dyn PageWriter + 'a>,
codec: Compression,
compressor: Option<Box<dyn Codec>>,
encoder: ColumnValueEncoderImpl<T>,
page_metrics: PageMetrics,
column_metrics: ColumnMetrics<<ColumnValueEncoderImpl<T> as ColumnValueEncoder>::T>,
encodings: BTreeSet<Encoding>,
def_levels_sink: Vec<i16>,
rep_levels_sink: Vec<i16>,
data_pages: VecDeque<CompressedPage>,
column_index_builder: ColumnIndexBuilder,
offset_index_builder: OffsetIndexBuilder,
data_page_boundary_ascending: bool,
data_page_boundary_descending: bool,
last_non_null_data_page_min_max: Option<(<ColumnValueEncoderImpl<T> as ColumnValueEncoder>::T, <ColumnValueEncoderImpl<T> as ColumnValueEncoder>::T)>,
}
Fields§
§descr: Arc<ColumnDescriptor>
§props: Arc<WriterProperties>
§statistics_enabled: EnabledStatistics
§page_writer: Box<dyn PageWriter + 'a>
§codec: Compression
§compressor: Option<Box<dyn Codec>>
§encoder: ColumnValueEncoderImpl<T>
§page_metrics: PageMetrics
§column_metrics: ColumnMetrics<<ColumnValueEncoderImpl<T> as ColumnValueEncoder>::T>
§encodings: BTreeSet<Encoding>
The order of encodings within the generated metadata does not impact its meaning, but we use a BTreeSet so that the output is deterministic
def_levels_sink: Vec<i16>
§rep_levels_sink: Vec<i16>
§data_pages: VecDeque<CompressedPage>
§column_index_builder: ColumnIndexBuilder
§offset_index_builder: OffsetIndexBuilder
§data_page_boundary_ascending: bool
§data_page_boundary_descending: bool
§last_non_null_data_page_min_max: Option<(<ColumnValueEncoderImpl<T> as ColumnValueEncoder>::T, <ColumnValueEncoderImpl<T> as ColumnValueEncoder>::T)>
(min, max)