@@ -11,6 +11,7 @@ pub struct ResponseContent<T> {
1111#[ derive( Debug ) ]
1212pub enum Error < T > {
1313 Reqwest ( reqwest:: Error ) ,
14+ ReqwestMiddleware ( reqwest_middleware:: Error ) ,
1415 Serde ( serde_json:: Error ) ,
1516 Io ( std:: io:: Error ) ,
1617 ResponseError ( ResponseContent < T > ) ,
@@ -20,6 +21,7 @@ impl<T> fmt::Display for Error<T> {
2021 fn fmt ( & self , f : & mut fmt:: Formatter < ' _ > ) -> fmt:: Result {
2122 let ( module, e) = match self {
2223 Error :: Reqwest ( e) => ( "reqwest" , e. to_string ( ) ) ,
24+ Error :: ReqwestMiddleware ( e) => ( "reqwest-middleware" , e. to_string ( ) ) ,
2325 Error :: Serde ( e) => ( "serde" , e. to_string ( ) ) ,
2426 Error :: Io ( e) => ( "IO" , e. to_string ( ) ) ,
2527 Error :: ResponseError ( e) => ( "response" , format ! ( "status code {}" , e. status) ) ,
@@ -32,6 +34,7 @@ impl<T: fmt::Debug> error::Error for Error<T> {
3234 fn source ( & self ) -> Option < & ( dyn error:: Error + ' static ) > {
3335 Some ( match self {
3436 Error :: Reqwest ( e) => e,
37+ Error :: ReqwestMiddleware ( e) => e,
3538 Error :: Serde ( e) => e,
3639 Error :: Io ( e) => e,
3740 Error :: ResponseError ( _) => return None ,
@@ -45,6 +48,12 @@ impl<T> From<reqwest::Error> for Error<T> {
4548 }
4649}
4750
51+ impl < T > From < reqwest_middleware:: Error > for Error < T > {
52+ fn from ( e : reqwest_middleware:: Error ) -> Self {
53+ Error :: ReqwestMiddleware ( e)
54+ }
55+ }
56+
4857impl < T > From < serde_json:: Error > for Error < T > {
4958 fn from ( e : serde_json:: Error ) -> Self {
5059 Error :: Serde ( e)
0 commit comments