pub enum FileStreamState {
Idle,
Open {
future: FileOpenFuture,
partition_values: Vec<ScalarValue>,
},
Scan {
partition_values: Vec<ScalarValue>,
reader: BoxStream<'static, Result<RecordBatch, ArrowError>>,
next: Option<(NextOpen, Vec<ScalarValue>)>,
},
Error,
Limit,
}
Variants§
Idle
The idle state, no file is currently being read
Open
Currently performing asynchronous IO to obtain a stream of RecordBatch for a given file
Fields
§
future: FileOpenFuture
A FileOpenFuture
returned by FileOpener::open
§
partition_values: Vec<ScalarValue>
The partition values for this file
Scan
Scanning the BoxStream
returned by the completion of a FileOpenFuture
returned by FileOpener::open
Fields
§
partition_values: Vec<ScalarValue>
Partitioning column values for the current batch_iter
§
reader: BoxStream<'static, Result<RecordBatch, ArrowError>>
The reader instance
§
next: Option<(NextOpen, Vec<ScalarValue>)>
A FileOpenFuture
for the next file to be processed,
and its corresponding partition column values, if any.
This allows the next file to be opened in parallel while the
current file is read.
Error
Encountered an error
Limit
Reached the row limit
Auto Trait Implementations§
impl Freeze for FileStreamState
impl !RefUnwindSafe for FileStreamState
impl Send for FileStreamState
impl !Sync for FileStreamState
impl Unpin for FileStreamState
impl !UnwindSafe for FileStreamState
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