1use crate::request::BuildRequestError;
2
3pub type Result<T> = std::result::Result<T, Error>;
4
5pub type BoxError = Box<dyn std::error::Error + Send + Sync>;
6
7#[derive(Debug, thiserror::Error)]
8pub enum Error {
9 #[error("body error: {0}")]
10 Body(#[source] BoxError),
11 #[error("request build error: {0}")]
12 BuildRequest(#[from] BuildRequestError),
13 #[error("request send error: {0}")]
14 SendRequest(#[source] BoxError),
15 #[error("response error: {0}")]
16 Response(#[from] crate::response::ResponseError),
17 #[error("raw http error: {0}")]
18 Http(#[from] http::Error),
19}