cainome_parser/
error.rs

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    #[error("Invalid option type path: {0}")]
19    InvalidOptionTypePath(String),
20    #[error("Invalid result type path: {0}")]
21    InvalidResultTypePath(String),
22    #[error("Invalid non-zero type path: {0}")]
23    InvalidNonZeroTypePath(String),
24}
25
26pub type CainomeResult<T, E = Error> = Result<T, E>;