use crate::format::Format;
#[derive(Debug, thiserror::Error)]
pub enum Error {
#[error("unsupported format: {0:?}")]
UnsupportedFormat(Format),
#[error("unknown format for file: {0}")]
UnknownFormat(String),
#[error("encoding not supported for {0:?} (license restriction)")]
EncodingNotSupported(Format),
#[error("decode error: {0}")]
Decode(String),
#[error("encode error: {0}")]
Encode(String),
#[error("resize error: {0}")]
Resize(String),
#[error("crop error: {0}")]
Crop(String),
#[error("extend error: {0}")]
Extend(String),
#[error(transparent)]
Io(#[from] std::io::Error),
#[error(transparent)]
Image(#[from] image::ImageError),
}
pub type Result<T> = std::result::Result<T, Error>;