#[non_exhaustive]pub enum RoutingErrorKind {
UnknownOperation,
MethodNotAllowed,
MalformedRequest,
UnsupportedOperation,
MissingContentType,
}Expand description
The routing-semantic classification of a rejection.
Keep this classification coarse; finer diagnostic detail belongs in
RoutingError’s source chain.
#[non_exhaustive] so a protocol that someday needs a new wire distinction can get a
kind instead of downcasting sources.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
UnknownOperation
The request is framed as this protocol but names no operation the service serves —
or is missing what would name one (e.g. X-Amz-Target).
MethodNotAllowed
The URI matched an operation but the HTTP method did not.
Only REST routing can produce this: RPC protocols don’t route on the method, so a wrong verb there is indistinguishable from an unknown operation. Protocols that do not distinguish method failures can map this kind to their unknown-operation response.
MalformedRequest
The request claims the protocol but violates its framing rules — forbidden headers, a malformed rpcv2 path, an invalid header value.
UnsupportedOperation
A known operation uses a feature unsupported by the selected protocol.
MissingContentType
A matched REST input has a required body member without a default, but the request omits Content-Type. REST protocols frame this as unsupported media type.
Trait Implementations§
Source§impl Clone for RoutingErrorKind
impl Clone for RoutingErrorKind
Source§fn clone(&self) -> RoutingErrorKind
fn clone(&self) -> RoutingErrorKind
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for RoutingErrorKind
impl Debug for RoutingErrorKind
Source§impl PartialEq for RoutingErrorKind
impl PartialEq for RoutingErrorKind
impl Copy for RoutingErrorKind
impl Eq for RoutingErrorKind
impl StructuralPartialEq for RoutingErrorKind
Auto Trait Implementations§
impl Freeze for RoutingErrorKind
impl RefUnwindSafe for RoutingErrorKind
impl Send for RoutingErrorKind
impl Sync for RoutingErrorKind
impl Unpin for RoutingErrorKind
impl UnsafeUnpin for RoutingErrorKind
impl UnwindSafe for RoutingErrorKind
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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>
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>
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