Skip to main content

flow_fcs_compress/
error.rs

1use thiserror::Error;
2
3#[derive(Debug, Error)]
4pub enum Error {
5    #[error("codec id {0:#06x} is not registered")]
6    UnknownCodec(u16),
7
8    #[error("decoded buffer length mismatch: expected {expected}, got {actual}")]
9    LengthMismatch { expected: usize, actual: usize },
10
11    #[error("chunk checksum mismatch (xxh3): expected {expected:#018x}, got {actual:#018x}")]
12    ChecksumMismatch { expected: u64, actual: u64 },
13
14    #[error("payload truncated: needed {needed} bytes, have {have}")]
15    Truncated { needed: usize, have: usize },
16
17    #[error("invalid channel params: {0}")]
18    InvalidParams(&'static str),
19
20    #[error("zstd: {0}")]
21    Zstd(#[from] std::io::Error),
22}
23
24pub type Result<T> = std::result::Result<T, Error>;