helium_api/
error.rs

1use thiserror::Error;
2pub type Result<T = ()> = std::result::Result<T, Error>;
3
4#[derive(Error, Debug)]
5pub enum Error {
6    #[error("request error")]
7    Request(#[from] reqwest::Error),
8    #[error("unexpected value")]
9    Value(serde_json::Value),
10    #[error("invalid decimals in {0}, only 8 allowed")]
11    Decimals(String),
12    #[error("unexpected or invalid number {0}")]
13    Number(String),
14}
15
16impl Error {
17    pub fn value(value: serde_json::Value) -> Self {
18        Self::Value(value)
19    }
20
21    pub fn decimals(value: &str) -> Self {
22        Self::Decimals(value.to_string())
23    }
24
25    pub fn number(value: &str) -> Self {
26        Self::Number(value.to_string())
27    }
28}