Skip to main content

paper_gap/
error.rs

1use std::io;
2use thiserror::Error;
3
4#[derive(Debug, Error)]
5pub enum Error {
6    #[error("{0}")]
7    Message(String),
8    #[error(transparent)]
9    Io(#[from] io::Error),
10    #[error(transparent)]
11    Reqwest(#[from] reqwest::Error),
12    #[error(transparent)]
13    Xml(#[from] quick_xml::Error),
14    #[error(transparent)]
15    SerdeJson(#[from] serde_json::Error),
16    #[error(transparent)]
17    ParseInt(#[from] std::num::ParseIntError),
18}
19
20pub type Result<T> = std::result::Result<T, Error>;
21
22pub fn err(message: impl Into<String>) -> Error {
23    Error::Message(message.into())
24}