pub enum TapError {
Poisoned {
what: &'static str,
},
StationsDisagree {
named: usize,
found: usize,
},
HopsOutOfOrder {
hop: usize,
at_ms: u64,
before_ms: u64,
},
HopBeforeFirstSight {
hop: usize,
early_ms: u64,
},
HopOverflow {
hop: usize,
},
Several(Vec<Self>),
}Expand description
A tap or console operation found a lock poisoned and refused to continue with a guard it cannot trust.
Variants§
Poisoned
The named lock was poisoned by a panic on another thread.
StationsDisagree
The two passes that build a message’s station list disagreed: the
count named named stations and the fill found found. The list is
refused, never filled in, and the message is kept as not recorded.
HopsOutOfOrder
A kept message’s hop was measured earlier than the hop before it, which monotonic instants taken in order never give (lane brief ruling 3, Hermes 04:09). The message is kept with its hops as measured, never rewritten, and the observe is counted as failed.
Fields
HopBeforeFirstSight
A kept message’s hop was measured before the message was first seen
(Buttercup’s V2, Hermes 04:27). at_ms cannot carry it, so the hop
is left out of the record, never written as 0, and the observe is
counted as failed.
Fields
HopOverflow
A kept message’s hop was measured further from first sight than
at_ms can carry. The hop is left out, never written as the most it
can hold, and the observe is counted as failed.
Several(Vec<Self>)
More than one of the above on one observe, each reported (Buttercup’s V3, Hermes 04:27): a refused station list never hides a hop. One entry per kind, the first hop of each.
Implementations§
Trait Implementations§
impl Eq for TapError
Source§impl Error for TapError
impl Error for TapError
1.30.0 · 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
use the Display impl or to_string()
Source§impl From<TapError> for ConsoleError
impl From<TapError> for ConsoleError
impl StructuralPartialEq for TapError
Auto Trait Implementations§
impl Freeze for TapError
impl RefUnwindSafe for TapError
impl Send for TapError
impl Sync for TapError
impl Unpin for TapError
impl UnsafeUnpin for TapError
impl UnwindSafe for TapError
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§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,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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
key and return true if they are equal.