#[non_exhaustive]pub enum FrameError {
TooShort(usize),
BadMagic {
expected: [u8; 4],
got: [u8; 4],
},
PayloadTruncated {
compressed_size: u64,
remaining: usize,
},
UnknownCodec(u32),
PayloadTooLarge(u64),
}Expand description
v1.0 stability: #[non_exhaustive] — new framing-level validation
errors may be added in minor releases. Downstream callers must
include a _ => arm when matching on this enum.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
TooShort(usize)
BadMagic
PayloadTruncated
UnknownCodec(u32)
PayloadTooLarge(u64)
v0.8.15 H-b: a frame’s declared compressed_size (or padding
frame length) exceeds the target architecture’s
usize::MAX. On 64-bit hosts this is unreachable; on the
32-bit wasm32-unknown-unknown target the as usize cast
used to truncate, letting a forged 4 GiB+ frame parse as a
64-byte payload (silent data loss in the browser decoder).
try_from-based validation forces the typed error instead.
Trait Implementations§
Source§impl Debug for FrameError
impl Debug for FrameError
Source§impl Display for FrameError
impl Display for FrameError
Source§impl Error for FrameError
impl Error for FrameError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0:
use the Display impl or to_string()
Auto Trait Implementations§
impl Freeze for FrameError
impl RefUnwindSafe for FrameError
impl Send for FrameError
impl Sync for FrameError
impl Unpin for FrameError
impl UnsafeUnpin for FrameError
impl UnwindSafe for FrameError
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