#[non_exhaustive]pub enum ArchiveError {
Decode {
format: &'static str,
detail: String,
},
TooLarge {
cap: u64,
},
Open {
format: &'static str,
detail: String,
},
Read {
format: &'static str,
detail: String,
},
IndexOutOfRange {
index: usize,
count: usize,
},
DepthExceeded {
max: usize,
chain: String,
},
TooManyEntries {
max: usize,
},
TotalInflatedExceeded {
cap: u64,
},
}Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Decode
A codec decoder failed on the packed stream.
TooLarge
The decompressed output exceeded the in-memory cap (bomb guard) — a loud failure, never a silent truncation.
Open
Parsing an archive’s directory / central structure failed.
Read
Extracting a single member failed (bad offset, unsupported member codec, CRC mismatch, …). The detail carries the backend’s own diagnostic.
IndexOutOfRange
A member index was out of range for the archive.
DepthExceeded
The recursion peeled past the configured nesting limit (bomb guard). The chain names the layer path that tripped it.
TooManyEntries
The cumulative number of members across the whole recursion exceeded the configured cap (bomb guard).
TotalInflatedExceeded
The cumulative inflated size across the whole recursion exceeded the cap (bomb guard) — tracked across layers, not per layer.
Trait Implementations§
Source§impl Debug for ArchiveError
impl Debug for ArchiveError
Source§impl Display for ArchiveError
impl Display for ArchiveError
Source§impl Error for ArchiveError
impl Error for ArchiveError
1.30.0 · 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()