telegram_bot_async_raw/requests/_base/
errors.rs

1use crate::types::*;
2
3/// Telegram bot module error type.
4#[derive(Debug, Fail)]
5pub enum Error {
6    /// Empty body error.
7    #[fail(display = "empty body")]
8    EmptyBody,
9
10    /// Telegram error.
11    #[fail(display = "Telegram error: {} params: {:?}", _0, _1)]
12    Telegram(String, Option<ResponseParameters>),
13
14    /// Detached error.
15    #[fail(display = "Detached error: {}", _0)]
16    Detached(String),
17
18    /// Serde JSON error.
19    #[fail(display = "serde json error: {:?}", _0)]
20    Json(#[cause] serde_json::Error),
21}
22
23impl From<serde_json::Error> for Error {
24    fn from(err: serde_json::Error) -> Error {
25        Error::Json(err)
26    }
27}