finata/
error.rs

1use serde_json::Value;
2use snafu::Snafu;
3use url::Url;
4
5#[derive(Debug, Snafu)]
6#[snafu(visibility = "pub")]
7pub enum Error {
8    #[snafu(context(false))]
9    ParseUrlError {
10        source: url::ParseError,
11    },
12    InvalidUrl {
13        url: Url,
14    },
15    #[snafu(display("InvalidResponse: {}", resp))]
16    InvalidResponse {
17        resp: Value,
18    },
19    #[snafu(display("Fails to fetch `{}`: {}", url, source))]
20    NetworkError {
21        url: Url,
22        source: reqwest::Error,
23    },
24    #[snafu(context(false))]
25    ParseJsonError {
26        source: reqwest::Error,
27    },
28}