titan_client/
error.rs

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
use bitcoin::{consensus, hex::HexToArrayError};
use thiserror::Error;

#[derive(Error, Debug)]
pub enum Error {
    #[error("reqwest error")]
    ReqwestError(#[from] reqwest::Error),

    #[error("titan error with status {0}: {1}")]
    TitanError(reqwest::StatusCode, String),

    #[error("serde error")]
    SerdeError(#[from] serde_json::Error),

    #[error("hex error: {0}")]
    HexToArrayError(#[from] HexToArrayError),

    #[error("bitcoin consensus error: {0}")]
    BitcoinConsensusError(#[from] consensus::encode::Error),
}