1use std::io;
2
3use thiserror::Error;
4
5#[derive(Error, Debug)]
7#[error("{0}")]
8pub enum LeetUpError {
9 Any(#[from] anyhow::Error),
11
12 Io(#[from] io::Error),
14
15 Serde(#[from] serde_json::Error),
17
18 Regex(#[from] regex::Error),
20
21 Reqwest(#[from] reqwest::Error),
23
24 InvalidHeaderValue(#[from] reqwest::header::InvalidHeaderValue),
26
27 #[error("Tried to unwrap None")]
29 OptNone,
30
31 #[error("Unexpected command")]
33 UnexpectedCommand,
34}
35
36pub type Result<T> = anyhow::Result<T, LeetUpError>;