#[non_exhaustive]pub enum DecodeError {
Show 16 variants
Io {
offset: Option<u64>,
source: Arc<Error>,
},
InvalidGzip {
offset: u64,
reason: GzipErrorKind,
},
UnrecognizedFormat,
InvalidZlib {
offset: u64,
reason: ZlibErrorKind,
},
InvalidDeflate {
bit_offset: u64,
reason: DeflateErrorKind,
},
Analysis {
reason: AnalysisErrorKind,
},
ChecksumMismatch {
member: u64,
expected: u32,
actual: u32,
},
SizeMismatch {
member: u64,
expected: u32,
actual_mod32: u32,
},
OutputLimitExceeded {
limit: u64,
},
UnexpectedOutputSize {
expected: u64,
actual: u64,
},
IndexBoundaryMismatch {
expected_bit_offset: u64,
actual_bit_offset: u64,
},
IndexOutputMismatch {
checkpoint_bit_offset: u64,
expected_bytes: u64,
actual_bytes: u64,
},
IndexLineMismatch {
checkpoint_byte_offset: u64,
expected_lines: u64,
actual_lines: u64,
},
IndexTotalLineMismatch {
expected_lines: u64,
actual_lines: u64,
},
WorkerPanicked,
Cancelled,
}Expand description
A terminal decoding error.
This type is cloneable so a std::io::Read adapter can return the same
logical failure on every read after the pipeline has failed.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Io
A positional input read or output write failed.
Fields
InvalidGzip
The gzip framing was invalid.
UnrecognizedFormat
Automatic detection found neither gzip nor zlib framing.
InvalidZlib
The zlib framing was invalid.
InvalidDeflate
The raw DEFLATE payload was invalid.
Analysis
Structural analysis exhausted a configured budget or exact counter.
Fields
reason: AnalysisErrorKindTyped resource or counter failure.
ChecksumMismatch
A member’s CRC32 did not match its footer.
SizeMismatch
A member’s modulo-2^32 output size did not match its footer.
Fields
OutputLimitExceeded
Decoded output would exceed the configured limit.
UnexpectedOutputSize
Decoded output did not equal the caller’s exact expectation.
Fields
IndexBoundaryMismatch
Inflation did not reach an index checkpoint at its declared bit offset.
Fields
IndexOutputMismatch
A checkpoint’s decompressed offset disagreed with decoded output.
Fields
IndexLineMismatch
A checkpoint’s imported line counter disagreed with decoded output.
Fields
IndexTotalLineMismatch
An imported index’s total line counter disagreed with decoded output.
Fields
WorkerPanicked
A decoder worker panicked.
Cancelled
Decoding was cancelled because the consumer stopped.
Trait Implementations§
Source§impl Clone for DecodeError
impl Clone for DecodeError
Source§fn clone(&self) -> DecodeError
fn clone(&self) -> DecodeError
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for DecodeError
impl Debug for DecodeError
Source§impl Display for DecodeError
impl Display for DecodeError
Source§impl Error for DecodeError
impl Error for DecodeError
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()