1use syn::Error as SynError;
2use thiserror::Error;
3
4#[derive(Error, Debug)]
5pub enum Error {
6 #[error(transparent)]
7 Syn(#[from] SynError),
8 #[error("Token initialization error: {0}")]
9 TokenInitFailed(String),
10 #[error("Conversion error: {0}")]
11 ConversionFailed(String),
12 #[error("Parser error: {0}")]
13 ParsingFailed(String),
14 #[error(transparent)]
15 IO(#[from] std::io::Error),
16 #[error(transparent)]
17 SerdeJson(#[from] serde_json::Error),
18}
19
20pub type CainomeResult<T, E = Error> = Result<T, E>;