pub(crate) struct ThriftMetadataWriter<'a, W: Write> {
buf: &'a mut TrackedWrite<W>,
schema: &'a TypePtr,
schema_descr: &'a SchemaDescPtr,
row_groups: Vec<RowGroup>,
column_indexes: Option<&'a [Vec<Option<ColumnIndex>>]>,
offset_indexes: Option<&'a [Vec<Option<OffsetIndex>>]>,
key_value_metadata: Option<Vec<KeyValue>>,
created_by: Option<String>,
writer_version: i32,
}
Expand description
Writes crate::file::metadata
structures to a thrift encoded byte stream
See ParquetMetaDataWriter
for background and example.
Fields§
§buf: &'a mut TrackedWrite<W>
§schema: &'a TypePtr
§schema_descr: &'a SchemaDescPtr
§row_groups: Vec<RowGroup>
§column_indexes: Option<&'a [Vec<Option<ColumnIndex>>]>
§offset_indexes: Option<&'a [Vec<Option<OffsetIndex>>]>
§key_value_metadata: Option<Vec<KeyValue>>
§created_by: Option<String>
§writer_version: i32
Implementations§
Source§impl<'a, W: Write> ThriftMetadataWriter<'a, W>
impl<'a, W: Write> ThriftMetadataWriter<'a, W>
Sourcefn write_offset_indexes(
&mut self,
offset_indexes: &[Vec<Option<OffsetIndex>>],
) -> Result<()>
fn write_offset_indexes( &mut self, offset_indexes: &[Vec<Option<OffsetIndex>>], ) -> Result<()>
Serialize all the offset indexes to self.buf
,
Note: also updates the ColumnChunk::offset_index_offset
and
ColumnChunk::offset_index_length
to reflect the position and length
of the serialized offset indexes.
Sourcefn write_column_indexes(
&mut self,
column_indexes: &[Vec<Option<ColumnIndex>>],
) -> Result<()>
fn write_column_indexes( &mut self, column_indexes: &[Vec<Option<ColumnIndex>>], ) -> Result<()>
Serialize all the column indexes to the self.buf
Note: also updates the ColumnChunk::column_index_offset
and
ColumnChunk::column_index_length
to reflect the position and length
of the serialized column indexes.
Sourcepub fn finish(self) -> Result<FileMetaData>
pub fn finish(self) -> Result<FileMetaData>
Assembles and writes the final metadata to self.buf
pub fn new( buf: &'a mut TrackedWrite<W>, schema: &'a TypePtr, schema_descr: &'a SchemaDescPtr, row_groups: Vec<RowGroup>, created_by: Option<String>, writer_version: i32, ) -> Self
pub fn with_column_indexes( self, column_indexes: &'a [Vec<Option<ColumnIndex>>], ) -> Self
pub fn with_offset_indexes( self, offset_indexes: &'a [Vec<Option<OffsetIndex>>], ) -> Self
pub fn with_key_value_metadata(self, key_value_metadata: Vec<KeyValue>) -> Self
Auto Trait Implementations§
impl<'a, W> Freeze for ThriftMetadataWriter<'a, W>
impl<'a, W> RefUnwindSafe for ThriftMetadataWriter<'a, W>where
W: RefUnwindSafe,
impl<'a, W> Send for ThriftMetadataWriter<'a, W>where
W: Send,
impl<'a, W> Sync for ThriftMetadataWriter<'a, W>where
W: Sync,
impl<'a, W> Unpin for ThriftMetadataWriter<'a, W>
impl<'a, W> !UnwindSafe for ThriftMetadataWriter<'a, W>
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> 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