Enum ListenerHealth
pub enum ListenerHealth {
Pending,
Healthy,
Unhealthy,
}Expand description
What a channel can say about its own listener without performing any I/O.
See Channel::listener_health. The three states exist because a listener
that has not connected yet and a listener that is working are different
claims, and a caller that stamps “healthy” for both reports a channel as
ok before it has ever reached the service.
Variants§
Pending
No exchange has completed yet, so the channel has nothing to report. Not a failure — a listener that has only just started is not yet broken — but not evidence of health either.
Healthy
The most recent exchange succeeded, recently enough that it is still evidence the channel works.
Unhealthy
Either the most recent exchange failed, or the last success is old
enough that the channel will no longer vouch for it. Both mean a live
listen() is not proof the channel is working.
Trait Implementations§
Source§impl Clone for ListenerHealth
impl Clone for ListenerHealth
Source§fn clone(&self) -> ListenerHealth
fn clone(&self) -> ListenerHealth
1.0.0 (const: unstable) · §fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for ListenerHealth
Source§impl Debug for ListenerHealth
impl Debug for ListenerHealth
impl Eq for ListenerHealth
Source§impl PartialEq for ListenerHealth
impl PartialEq for ListenerHealth
impl StructuralPartialEq for ListenerHealth
Auto Trait Implementations§
impl Freeze for ListenerHealth
impl RefUnwindSafe for ListenerHealth
impl Send for ListenerHealth
impl Sync for ListenerHealth
impl Unpin for ListenerHealth
impl UnsafeUnpin for ListenerHealth
impl UnwindSafe for ListenerHealth
Blanket Implementations§
§impl<T> AnyEq for T
impl<T> AnyEq for T
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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