pub trait LayoutWriter: Send {
// Required methods
fn push_chunk(
&mut self,
segment_writer: &mut dyn SegmentWriter,
chunk: ArrayRef,
) -> VortexResult<()>;
fn flush(
&mut self,
segment_writer: &mut dyn SegmentWriter,
) -> VortexResult<()>;
fn finish(
&mut self,
segment_writer: &mut dyn SegmentWriter,
) -> VortexResult<Layout>;
}Expand description
A strategy for writing chunks of an array into a layout.
Required Methods§
Sourcefn push_chunk(
&mut self,
segment_writer: &mut dyn SegmentWriter,
chunk: ArrayRef,
) -> VortexResult<()>
fn push_chunk( &mut self, segment_writer: &mut dyn SegmentWriter, chunk: ArrayRef, ) -> VortexResult<()>
Push a chunk into the layout writer.
Sourcefn flush(&mut self, segment_writer: &mut dyn SegmentWriter) -> VortexResult<()>
fn flush(&mut self, segment_writer: &mut dyn SegmentWriter) -> VortexResult<()>
Flush any buffered chunks.
Sourcefn finish(
&mut self,
segment_writer: &mut dyn SegmentWriter,
) -> VortexResult<Layout>
fn finish( &mut self, segment_writer: &mut dyn SegmentWriter, ) -> VortexResult<Layout>
Write any final data (e.g. stats) and return the finished Layout.