pub struct ChunkedLayoutWriter { /* private fields */ }Expand description
A basic implementation of a chunked layout writer that writes each batch into its own chunk.
TODO(ngates): introduce more sophisticated layout writers with different chunking strategies.
Implementations§
Source§impl ChunkedLayoutWriter
impl ChunkedLayoutWriter
pub fn new( ctx: ArrayContext, dtype: DType, options: ChunkedLayoutStrategy, ) -> Self
Trait Implementations§
Source§impl LayoutWriter for ChunkedLayoutWriter
impl LayoutWriter for ChunkedLayoutWriter
Source§fn 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.
Source§fn flush(&mut self, _segment_writer: &mut dyn SegmentWriter) -> VortexResult<()>
fn flush(&mut self, _segment_writer: &mut dyn SegmentWriter) -> VortexResult<()>
Flush any buffered chunks.
Source§fn 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.Auto Trait Implementations§
impl Freeze for ChunkedLayoutWriter
impl !RefUnwindSafe for ChunkedLayoutWriter
impl Send for ChunkedLayoutWriter
impl !Sync for ChunkedLayoutWriter
impl Unpin for ChunkedLayoutWriter
impl !UnwindSafe for ChunkedLayoutWriter
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 moreSource§impl<L> LayoutWriterExt for Lwhere
L: LayoutWriter + ?Sized,
impl<L> LayoutWriterExt for Lwhere
L: LayoutWriter + ?Sized,
Source§fn push_one(
&mut self,
segment_writer: &mut dyn SegmentWriter,
chunk: ArrayRef,
) -> VortexResult<Layout>
fn push_one( &mut self, segment_writer: &mut dyn SegmentWriter, chunk: ArrayRef, ) -> VortexResult<Layout>
Push a single chunk into the layout writer and return the finished
Layout.Source§fn push_all<I: IntoIterator<Item = VortexResult<ArrayRef>>>(
&mut self,
segment_writer: &mut dyn SegmentWriter,
iter: I,
) -> VortexResult<Layout>
fn push_all<I: IntoIterator<Item = VortexResult<ArrayRef>>>( &mut self, segment_writer: &mut dyn SegmentWriter, iter: I, ) -> VortexResult<Layout>
Push all chunks of the iterator into the layout writer and return the finished
Layout.