#[non_exhaustive]pub enum ProtocolResolutionError {
NoProtocolsDeclared,
MissingRegistrations {
protocols: Vec<String>,
},
DuplicateRegistration {
protocol: String,
},
OrderCycle {
protocols: Vec<String>,
},
AmbiguousOrder {
first: String,
second: String,
},
}Expand description
Failure to resolve a service’s protocol registrations or claim ordering.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
NoProtocolsDeclared
The service schema declares no protocols.
MissingRegistrations
Declared service protocols without a runtime registration, in declaration order.
DuplicateRegistration
The same protocol is registered more than once.
OrderCycle
Registered protocols participating in ordering cycles, in registration order.
AmbiguousOrder
Two served protocols have no ordering constraint relating them.
Trait Implementations§
Source§impl Debug for ProtocolResolutionError
impl Debug for ProtocolResolutionError
Source§impl Display for ProtocolResolutionError
impl Display for ProtocolResolutionError
Source§impl Error for ProtocolResolutionError
impl Error for ProtocolResolutionError
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 From<ProtocolResolutionError> for RouterBuildError
impl From<ProtocolResolutionError> for RouterBuildError
Source§fn from(source: ProtocolResolutionError) -> Self
fn from(source: ProtocolResolutionError) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl Freeze for ProtocolResolutionError
impl RefUnwindSafe for ProtocolResolutionError
impl Send for ProtocolResolutionError
impl Sync for ProtocolResolutionError
impl Unpin for ProtocolResolutionError
impl UnsafeUnpin for ProtocolResolutionError
impl UnwindSafe for ProtocolResolutionError
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
§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>
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 moreCreates a shared type from an unshared type.