pub enum RequestError<E: Error> {
ResponseError(ResponseError),
ClientError(ClientError),
ApplicationError(E),
}Expand description
Union of types for actions that bundle client logic and response handling
Variants§
Trait Implementations§
Source§impl<E: Error> Display for RequestError<E>
impl<E: Error> Display for RequestError<E>
Source§impl<E: Error> Error for RequestError<E>
impl<E: Error> Error for RequestError<E>
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()
Source§impl<E: Error> From<ClientError> for RequestError<E>
Convert a ClientError into a RequestError.
impl<E: Error> From<ClientError> for RequestError<E>
Convert a ClientError into a RequestError.
This is useful because client-side operations can fail for reasons that are not related to the server’s response (e.g., network connectivity issues, deserialization errors on the client-side, etc.).
By implementing From<ClientError> for RequestError, we can easily propagate
client-side errors up to the request handling layer, where they can be
treated as part of the overall request error scenario, without needing to
explicitly convert them everywhere they might occur.
Source§fn from(err: ClientError) -> Self
fn from(err: ClientError) -> Self
Converts to this type from the input type.
Source§impl<E: Error + DeserializeOwned> From<ResponseError> for RequestError<E>
impl<E: Error + DeserializeOwned> From<ResponseError> for RequestError<E>
Source§fn from(err: ResponseError) -> Self
fn from(err: ResponseError) -> Self
Converts to this type from the input type.
impl<E: Eq + Error> Eq for RequestError<E>
impl<E: Error> StructuralPartialEq for RequestError<E>
Auto Trait Implementations§
impl<E> Freeze for RequestError<E>where
E: Freeze,
impl<E> RefUnwindSafe for RequestError<E>where
E: RefUnwindSafe,
impl<E> Send for RequestError<E>where
E: Send,
impl<E> Sync for RequestError<E>where
E: Sync,
impl<E> Unpin for RequestError<E>where
E: Unpin,
impl<E> UnsafeUnpin for RequestError<E>where
E: UnsafeUnpin,
impl<E> UnwindSafe for RequestError<E>where
E: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more