pub enum Staleness {
Linearized,
BestEffort {
max_lag: Duration,
},
}Expand description
The core’s own types, re-exported: every field of
record::ParsedPolicy is one of these, so a caller that declares a
policy reaches them through this crate rather than depending on
didbot-policy for the names alone.
How stale an evaluator’s view of the world may be before it is
unhealthy.
Variants§
Linearized
Blocks rather than answer from a stale view. Its lag bound is its latency bound, and it is a throughput ceiling — the right choice for a deterministic, in-process evaluator whose answer is exact and cheap.
BestEffort
Answers from what it has seen. Exceeding max_lag is a health
failure, routed the same way a crashed evaluator is: the writes the
tree scopes to it are refused until it catches up.
Trait Implementations§
impl Copy for Staleness
impl Eq for Staleness
impl StructuralPartialEq for Staleness
Auto Trait Implementations§
impl Freeze for Staleness
impl RefUnwindSafe for Staleness
impl Send for Staleness
impl Sync for Staleness
impl Unpin for Staleness
impl UnsafeUnpin for Staleness
impl UnwindSafe for Staleness
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
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
Checks if this value is equivalent to the given key. Read more
§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
Compare self to
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>
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 more