use thiserror::Error;
#[derive(Debug, Error)]
pub enum Error {
#[error("ppocr: {0}")]
Ppocr(#[from] ppocr_rs::OcrError),
#[error("image: {0}")]
Image(#[from] image::ImageError),
#[error("tiff: {0}")]
Tiff(String),
#[error("io: {0}")]
Io(#[from] std::io::Error),
#[error("modello non trovato: {0}")]
ModelNotFound(String),
#[error("{0}")]
Other(String),
}
#[cfg(feature = "tesseract-engine")]
impl From<tesseract5_rs::TesseractError> for Error {
fn from(e: tesseract5_rs::TesseractError) -> Self {
Error::Other(format!("tesseract: {e}"))
}
}
pub type Result<T> = std::result::Result<T, Error>;