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}