pub type ColumnWriterImpl<'a, T> = GenericColumnWriter<'a, ColumnValueEncoderImpl<T>>;Expand description
Typed column writer for a primitive column.
Aliased Type§
pub struct ColumnWriterImpl<'a, T> {Show 19 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>,
encoding_stats: Vec<PageEncodingStats>,
def_levels_sink: Vec<i16>,
rep_levels_sink: Vec<i16>,
data_pages: VecDeque<CompressedPage>,
column_index_builder: ColumnIndexBuilder,
offset_index_builder: Option<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
encoding_stats: Vec<PageEncodingStats>§def_levels_sink: Vec<i16>§rep_levels_sink: Vec<i16>§data_pages: VecDeque<CompressedPage>§column_index_builder: ColumnIndexBuilder§offset_index_builder: Option<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)