forevervm_sdk/client/
error.rs1use crate::api::ApiErrorResponse;
2
3pub type Result<T> = std::result::Result<T, ClientError>;
4
5#[derive(thiserror::Error, Debug)]
6pub enum ClientError {
7 #[error("Api error: {0}")]
8 ApiError(#[from] ApiErrorResponse),
9
10 #[error("Reqwest error: {0}")]
11 ReqwestError(#[from] reqwest::Error),
12
13 #[error("Server responded with code {code} and message {message}")]
14 ServerResponseError { code: u16, message: String },
15
16 #[error("Invalid URL")]
17 InvalidUrl,
18
19 #[error("Error parsing url: {0}")]
20 UrlError(#[from] url::ParseError),
21
22 #[error("Error deserializing response: {0}")]
23 DeserializeError(#[from] serde_json::Error),
24
25 #[error("Error from Tungstenite: {0}")]
26 TungsteniteError(#[from] tungstenite::Error),
27
28 #[error("Http")]
29 HttpError(#[from] tungstenite::http::Error),
30
31 #[error("Instruction interrupted")]
32 InstructionInterrupted,
33
34 #[error("Other error: {0}")]
35 Other(String),
36}