use cxx::Exception;
use thiserror::Error;
#[derive(Debug, Error)]
pub enum Error {
#[error(transparent)]
LhapdfException(Exception),
#[error("{0}")]
General(String),
#[error("file not found")]
Http404,
#[error(transparent)]
Other(anyhow::Error),
}
pub type Result<T> = std::result::Result<T, Error>;
impl From<Exception> for Error {
fn from(err: Exception) -> Self {
Self::LhapdfException(err)
}
}
impl From<std::io::Error> for Error {
fn from(err: std::io::Error) -> Self {
Self::Other(anyhow::Error::new(err))
}
}