pub enum Error<T, D>where
D: Delegate<Id = T::Id, Address = <T::Resolver as AddressResolver>::ResolvedAddress>,
T: Transport,{
Memberlist(MemberlistError<T::Id, <T::Resolver as AddressResolver>::ResolvedAddress>),
Serf(SerfError),
Transport(T::Error),
Delegate(SerfDelegateError<D>),
Relay(RelayError<T, D>),
}Expand description
Error type for the serf crate.
Variants§
Memberlist(MemberlistError<T::Id, <T::Resolver as AddressResolver>::ResolvedAddress>)
Returned when the underlyhing memberlist error
Serf(SerfError)
Returned when the serf error
Transport(T::Error)
Returned when the transport error
Delegate(SerfDelegateError<D>)
Returned when the delegate error
Relay(RelayError<T, D>)
Returned when the relay error
Implementations§
Source§impl<T, D> Error<T, D>where
D: Delegate<Id = T::Id, Address = <T::Resolver as AddressResolver>::ResolvedAddress>,
T: Transport,
impl<T, D> Error<T, D>where
D: Delegate<Id = T::Id, Address = <T::Resolver as AddressResolver>::ResolvedAddress>,
T: Transport,
Sourcepub fn transform_delegate(err: <D as TransformDelegate>::Error) -> Self
pub fn transform_delegate(err: <D as TransformDelegate>::Error) -> Self
Create error from a transform error
Sourcepub const fn merge_delegate(err: <D as MergeDelegate>::Error) -> Self
pub const fn merge_delegate(err: <D as MergeDelegate>::Error) -> Self
Create a merge delegate error
Sourcepub const fn query_response_too_large(limit: usize, got: usize) -> Self
pub const fn query_response_too_large(limit: usize, got: usize) -> Self
Create a query response too large error
Sourcepub const fn query_timeout() -> Self
pub const fn query_timeout() -> Self
Create a query timeout error
Sourcepub const fn query_already_responsed() -> Self
pub const fn query_already_responsed() -> Self
Create a query already response error
Sourcepub const fn query_response_delivery_failed() -> Self
pub const fn query_response_delivery_failed() -> Self
Create a query response delivery failed error
Sourcepub const fn relayed_response_too_large(size: usize) -> Self
pub const fn relayed_response_too_large(size: usize) -> Self
Create a relayed response too large error
Sourcepub const fn relay(err: RelayError<T, D>) -> Self
pub const fn relay(err: RelayError<T, D>) -> Self
Create a relay error
Sourcepub const fn fail_truncate_response() -> Self
pub const fn fail_truncate_response() -> Self
Create a fail truncate response error
Create a tags too large error
Sourcepub const fn query_too_large(size: usize) -> Self
pub const fn query_too_large(size: usize) -> Self
Create a query too large error
Sourcepub const fn user_event_limit_too_large(size: usize) -> Self
pub const fn user_event_limit_too_large(size: usize) -> Self
Create a user event limit too large error
Sourcepub const fn user_event_too_large(size: usize) -> Self
pub const fn user_event_too_large(size: usize) -> Self
Create a user event limit too large error
Sourcepub const fn raw_user_event_too_large(size: usize) -> Self
pub const fn raw_user_event_too_large(size: usize) -> Self
Create a raw user event too large error
Sourcepub const fn broadcast_channel_closed() -> Self
pub const fn broadcast_channel_closed() -> Self
Create a broadcast channel closed error
Sourcepub const fn removal_broadcast_timeout() -> Self
pub const fn removal_broadcast_timeout() -> Self
Create a removal broadcast timeout error
Sourcepub const fn snapshot(err: SnapshotError) -> Self
pub const fn snapshot(err: SnapshotError) -> Self
Create a snapshot error
Sourcepub const fn memberlist(
err: MemberlistError<T::Id, <T::Resolver as AddressResolver>::ResolvedAddress>,
) -> Self
pub const fn memberlist( err: MemberlistError<T::Id, <T::Resolver as AddressResolver>::ResolvedAddress>, ) -> Self
Create a memberlist error
Sourcepub const fn bad_leave_status(status: SerfState) -> Self
pub const fn bad_leave_status(status: SerfState) -> Self
Create a bad leave status error
Sourcepub const fn bad_join_status(status: SerfState) -> Self
pub const fn bad_join_status(status: SerfState) -> Self
Create a bad join status error
Sourcepub const fn coordinates_disabled() -> Self
pub const fn coordinates_disabled() -> Self
Create a coordinates disabled error
Trait Implementations§
Source§impl<T, D> Debug for Error<T, D>where
D: Delegate<Id = T::Id, Address = <T::Resolver as AddressResolver>::ResolvedAddress>,
T: Transport,
impl<T, D> Debug for Error<T, D>where
D: Delegate<Id = T::Id, Address = <T::Resolver as AddressResolver>::ResolvedAddress>,
T: Transport,
Source§impl<T, D> Display for Error<T, D>where
D: Delegate<Id = T::Id, Address = <T::Resolver as AddressResolver>::ResolvedAddress>,
T: Transport,
SerfDelegateError<D>: Display,
RelayError<T, D>: Display,
impl<T, D> Display for Error<T, D>where
D: Delegate<Id = T::Id, Address = <T::Resolver as AddressResolver>::ResolvedAddress>,
T: Transport,
SerfDelegateError<D>: Display,
RelayError<T, D>: Display,
Source§impl<T, D> Error for Error<T, D>where
D: Delegate<Id = T::Id, Address = <T::Resolver as AddressResolver>::ResolvedAddress>,
T: Transport,
SerfDelegateError<D>: Error,
RelayError<T, D>: Error,
Self: Debug + Display,
impl<T, D> Error for Error<T, D>where
D: Delegate<Id = T::Id, Address = <T::Resolver as AddressResolver>::ResolvedAddress>,
T: Transport,
SerfDelegateError<D>: Error,
RelayError<T, D>: Error,
Self: Debug + Display,
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
Source§impl<T, D> From<Error<T, SerfDelegate<T, D>>> for Error<T, D>where
D: Delegate<Id = T::Id, Address = <T::Resolver as AddressResolver>::ResolvedAddress>,
T: Transport,
impl<T, D> From<Error<T, SerfDelegate<T, D>>> for Error<T, D>where
D: Delegate<Id = T::Id, Address = <T::Resolver as AddressResolver>::ResolvedAddress>,
T: Transport,
Source§impl<T, D> From<MemberlistError<<T as Transport>::Id, <<T as Transport>::Resolver as AddressResolver>::ResolvedAddress>> for Error<T, D>where
D: Delegate<Id = T::Id, Address = <T::Resolver as AddressResolver>::ResolvedAddress>,
T: Transport,
impl<T, D> From<MemberlistError<<T as Transport>::Id, <<T as Transport>::Resolver as AddressResolver>::ResolvedAddress>> for Error<T, D>where
D: Delegate<Id = T::Id, Address = <T::Resolver as AddressResolver>::ResolvedAddress>,
T: Transport,
Source§fn from(
source: MemberlistError<T::Id, <T::Resolver as AddressResolver>::ResolvedAddress>,
) -> Self
fn from( source: MemberlistError<T::Id, <T::Resolver as AddressResolver>::ResolvedAddress>, ) -> Self
Source§impl<T, D> From<RelayError<T, D>> for Error<T, D>where
D: Delegate<Id = T::Id, Address = <T::Resolver as AddressResolver>::ResolvedAddress>,
T: Transport,
impl<T, D> From<RelayError<T, D>> for Error<T, D>where
D: Delegate<Id = T::Id, Address = <T::Resolver as AddressResolver>::ResolvedAddress>,
T: Transport,
Source§fn from(source: RelayError<T, D>) -> Self
fn from(source: RelayError<T, D>) -> Self
Source§impl<T, D> From<SerfDelegateError<D>> for Error<T, D>where
D: Delegate<Id = T::Id, Address = <T::Resolver as AddressResolver>::ResolvedAddress>,
T: Transport,
impl<T, D> From<SerfDelegateError<D>> for Error<T, D>where
D: Delegate<Id = T::Id, Address = <T::Resolver as AddressResolver>::ResolvedAddress>,
T: Transport,
Source§fn from(source: SerfDelegateError<D>) -> Self
fn from(source: SerfDelegateError<D>) -> Self
Source§impl<T, D> From<SerfError> for Error<T, D>where
D: Delegate<Id = T::Id, Address = <T::Resolver as AddressResolver>::ResolvedAddress>,
T: Transport,
impl<T, D> From<SerfError> for Error<T, D>where
D: Delegate<Id = T::Id, Address = <T::Resolver as AddressResolver>::ResolvedAddress>,
T: Transport,
Source§impl<T, D> From<SnapshotError> for Error<T, D>where
D: Delegate<Id = T::Id, Address = <T::Resolver as AddressResolver>::ResolvedAddress>,
T: Transport,
impl<T, D> From<SnapshotError> for Error<T, D>where
D: Delegate<Id = T::Id, Address = <T::Resolver as AddressResolver>::ResolvedAddress>,
T: Transport,
Source§fn from(value: SnapshotError) -> Self
fn from(value: SnapshotError) -> Self
Auto Trait Implementations§
impl<T, D> Freeze for Error<T, D>where
<T as Transport>::Error: Freeze,
<D as TransformDelegate>::Error: Freeze,
<D as MergeDelegate>::Error: Freeze,
<T as Transport>::Id: Freeze,
<<T as Transport>::Resolver as AddressResolver>::ResolvedAddress: Freeze,
impl<T, D> !RefUnwindSafe for Error<T, D>
impl<T, D> Send for Error<T, D>
impl<T, D> Sync for Error<T, D>
impl<T, D> Unpin for Error<T, D>where
<T as Transport>::Error: Unpin,
<D as TransformDelegate>::Error: Unpin,
<D as MergeDelegate>::Error: Unpin,
<<T as Transport>::Resolver as AddressResolver>::ResolvedAddress: Unpin,
impl<T, D> !UnwindSafe for Error<T, D>
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
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<K, Q> Comparable<Q> for K
impl<K, Q> Comparable<Q> for K
Source§impl<K, Q> Equivalent<Q> for K
impl<K, Q> Equivalent<Q> for K
Source§fn equivalent(&self, key: &Q) -> bool
fn equivalent(&self, key: &Q) -> bool
key and return true if they are equal.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>
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 moreSource§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
out indicating that a T is niched.