pub enum RateLimitDecision {
Allow,
Limit {
retry_after_ms: u64,
},
}Expand description
The fast path’s view of a rate-limit consult (ADR 000033).
Variants§
Allow
A token was available (or the route has no limiter) — forward.
Limit
The bucket was empty — fail closed with 429. retry_after_ms is an advisory upper bound on
when a token next frees up (surfaced as Retry-After).
Trait Implementations§
Source§impl Clone for RateLimitDecision
impl Clone for RateLimitDecision
Source§fn clone(&self) -> RateLimitDecision
fn clone(&self) -> RateLimitDecision
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for RateLimitDecision
Source§impl Debug for RateLimitDecision
impl Debug for RateLimitDecision
impl Eq for RateLimitDecision
Source§impl PartialEq for RateLimitDecision
impl PartialEq for RateLimitDecision
impl StructuralPartialEq for RateLimitDecision
Auto Trait Implementations§
impl Freeze for RateLimitDecision
impl RefUnwindSafe for RateLimitDecision
impl Send for RateLimitDecision
impl Sync for RateLimitDecision
impl Unpin for RateLimitDecision
impl UnsafeUnpin for RateLimitDecision
impl UnwindSafe for RateLimitDecision
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,
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
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
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>
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