cefi_rs_binance/
errors.rs

1use std::fmt;
2
3pub type BinanceResult<T> = Result<T, BinanceError>;
4
5#[derive(Debug)]
6pub enum BinanceError {
7    ApiError(i64, String),
8    DeserializeError(String),
9    Unknown(String),
10}
11
12impl From<anyhow::Error> for BinanceError {
13    fn from(value: anyhow::Error) -> Self {
14        BinanceError::Unknown(format!("{}", value))
15    }
16}
17
18impl From<serde_json::Error> for BinanceError {
19    fn from(value: serde_json::Error) -> Self {
20        BinanceError::DeserializeError(format!("{}", value))
21    }
22}
23
24impl fmt::Display for BinanceError {
25    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
26        write!(f, "{}", self)
27    }
28}