#[non_exhaustive]pub enum OutOfSpecKind {
Show 34 variants
InvalidHeader,
InvalidFooter,
NegativeFooterLength,
InvalidFlatbufferFooter(Error),
MissingRecordBatches,
InvalidFlatbufferRecordBatches(Error),
MissingSchema,
InvalidFlatbufferSchema(Error),
MissingFields,
InvalidFlatbufferDictionaries(Error),
InvalidFlatbufferBlock(Error),
InvalidFlatbufferMessage(Error),
MissingMessageHeader,
InvalidFlatbufferHeader(Error),
UnexpectedNegativeInteger,
UnexpectedMessageType,
MissingMessageBuffers,
InvalidFlatbufferBuffers(Error),
MissingMessageNodes,
InvalidFlatbufferNodes(Error),
InvalidFlatbufferBodyLength(Error),
MissingData,
InvalidFlatbufferData(Error),
InvalidFlatbufferVersion(Error),
InvalidFlatbufferCompression(Error),
ExpectedBuffer,
InvalidBuffer {
length: usize,
type_name: &'static str,
required_number_of_bytes: usize,
buffer_length: usize,
},
InvalidBuffersLength {
buffers_size: u64,
file_size: u64,
},
InvalidBitmap {
length: usize,
number_of_bits: usize,
},
InvalidFlatbufferIsDelta(Error),
InvalidFlatbufferId(Error),
InvalidId {
requested_id: i64,
},
InvalidIdDataType {
requested_id: i64,
},
InvalidDataType,
}
Expand description
The different types of errors that reading from IPC can cause
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
InvalidHeader
The IPC file does not start with [b’A’, b’R’, b’R’, b’O’, b’W’, b’1’]
The IPC file does not end with [b’A’, b’R’, b’R’, b’O’, b’W’, b’1’]
The first 4 bytes of the last 10 bytes is < 0
The footer is an invalid flatbuffer
MissingRecordBatches
The file’s footer does not contain record batches
InvalidFlatbufferRecordBatches(Error)
The footer’s record batches is an invalid flatbuffer
MissingSchema
The file’s footer does not contain a schema
InvalidFlatbufferSchema(Error)
The footer’s schema is an invalid flatbuffer
MissingFields
The file’s schema does not contain fields
InvalidFlatbufferDictionaries(Error)
The footer’s dictionaries is an invalid flatbuffer
InvalidFlatbufferBlock(Error)
The block is an invalid flatbuffer
InvalidFlatbufferMessage(Error)
The dictionary message is an invalid flatbuffer
MissingMessageHeader
The message does not contain a header
InvalidFlatbufferHeader(Error)
The message’s header is an invalid flatbuffer
UnexpectedNegativeInteger
Relative positions in the file is < 0
UnexpectedMessageType
dictionaries can only contain dictionary messages; record batches can only contain records
MissingMessageBuffers
RecordBatch messages do not contain buffers
InvalidFlatbufferBuffers(Error)
The message’s buffers is an invalid flatbuffer
MissingMessageNodes
RecordBatch messages does not contain nodes
InvalidFlatbufferNodes(Error)
The message’s nodes is an invalid flatbuffer
InvalidFlatbufferBodyLength(Error)
The message’s body length is an invalid flatbuffer
MissingData
The message does not contain data
InvalidFlatbufferData(Error)
The message’s data is an invalid flatbuffer
InvalidFlatbufferVersion(Error)
The version is an invalid flatbuffer
InvalidFlatbufferCompression(Error)
The compression is an invalid flatbuffer
ExpectedBuffer
The record contains a number of buffers that does not match the required number by the data type
InvalidBuffer
A buffer’s size is smaller than the required for the number of elements
Fields
InvalidBuffersLength
A buffer’s size is larger than the file size
Fields
InvalidBitmap
A bitmap’s size is smaller than the required for the number of elements
Fields
InvalidFlatbufferIsDelta(Error)
The dictionary is_delta is an invalid flatbuffer
InvalidFlatbufferId(Error)
The dictionary id is an invalid flatbuffer
InvalidId
Invalid dictionary id
InvalidIdDataType
Field id is not a dictionary
InvalidDataType
FixedSizeBinaryArray has invalid datatype.
Trait Implementations§
§impl Debug for OutOfSpecKind
impl Debug for OutOfSpecKind
§impl From<OutOfSpecKind> for Error
impl From<OutOfSpecKind> for Error
§fn from(kind: OutOfSpecKind) -> Error
fn from(kind: OutOfSpecKind) -> Error
Auto Trait Implementations§
impl Freeze for OutOfSpecKind
impl RefUnwindSafe for OutOfSpecKind
impl Send for OutOfSpecKind
impl Sync for OutOfSpecKind
impl Unpin for OutOfSpecKind
impl UnwindSafe for OutOfSpecKind
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
source§impl<T> CheckedAs for T
impl<T> CheckedAs for T
source§fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
source§impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
source§fn checked_cast_from(src: Src) -> Option<Dst>
fn checked_cast_from(src: Src) -> Option<Dst>
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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> ⓘ
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> ⓘ
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<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request