curl_http_client/
error.rs

1use std::fmt::Debug;
2
3use crate::ExtendedHandler;
4
5/// Error type returned by failed curl HTTP requests.
6#[derive(Debug)]
7pub enum Error<C>
8where
9    C: ExtendedHandler + Debug + Send + 'static,
10{
11    Curl(curl::Error),
12    Http(String),
13    Perform(async_curl::error::Error<C>),
14    Other(String),
15}
16
17impl<C> std::fmt::Display for Error<C>
18where
19    C: ExtendedHandler + Debug + Send + 'static,
20{
21    fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
22        match self {
23            Error::Curl(err) => write!(f, "{}", err),
24            Error::Http(err) => write!(f, "{}", err),
25            Error::Perform(err) => write!(f, "{}", err),
26            Error::Other(err) => write!(f, "{}", err),
27        }
28    }
29}
30
31impl<C> std::error::Error for Error<C> where C: ExtendedHandler + Debug + Send + 'static {}