pub enum AcquireError {
GlobalExhausted {
limit: usize,
current: usize,
},
PrincipalExhausted {
principal: String,
limit: usize,
current: usize,
},
}Expand description
Failure modes of StreamCapacityRegistry::try_acquire. Each
variant carries the cap that fired and the live counter value at
refusal time so clients can back off intelligently (the HTTP layer
surfaces these inside the structured 429 body).
Variants§
GlobalExhausted
stream.max_global exceeded. Per acceptance criterion #1.
PrincipalExhausted
stream.max_per_principal exceeded for principal. Per
acceptance criterion #2. The principal is surfaced verbatim;
callers must escape it on the wire.
Implementations§
Trait Implementations§
Source§impl Clone for AcquireError
impl Clone for AcquireError
Source§fn clone(&self) -> AcquireError
fn clone(&self) -> AcquireError
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 moreSource§impl Debug for AcquireError
impl Debug for AcquireError
Source§impl PartialEq for AcquireError
impl PartialEq for AcquireError
Source§fn eq(&self, other: &AcquireError) -> bool
fn eq(&self, other: &AcquireError) -> bool
Tests for
self and other values to be equal, and is used by ==.impl Eq for AcquireError
impl StructuralPartialEq for AcquireError
Auto Trait Implementations§
impl Freeze for AcquireError
impl RefUnwindSafe for AcquireError
impl Send for AcquireError
impl Sync for AcquireError
impl Unpin for AcquireError
impl UnsafeUnpin for AcquireError
impl UnwindSafe for AcquireError
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
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§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<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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request