use thiserror::Error;
#[derive(Debug, Clone, PartialEq, Error)]
pub enum CompressionError {
#[error("invalid input: {0}")]
InvalidInput(String),
#[error("compression failed: {0}")]
CompressionFailed(String),
#[error("decompression failed: {0}")]
DecompressionFailed(String),
#[error("ANS encoding error: {0}")]
AnsError(String),
#[error("I/O error: {0}")]
Io(String),
}
impl From<std::io::Error> for CompressionError {
fn from(e: std::io::Error) -> Self {
Self::Io(e.to_string())
}
}