[][src]Enum governor::NegativeMultiDecision

pub enum NegativeMultiDecision<E: Display> {
    BatchNonConforming(u32, E),
    InsufficientCapacity(u32),
}

Gives additional information about the negative outcome of a batch cell decision.

Since batch queries can be made for batch sizes bigger than the rate limiter parameter could accomodate, there are now two possible negative outcomes:

  • BatchNonConforming - the query is valid but the Decider can not accomodate them.

  • InsufficientCapacity - the query was invalid as the rate limite parameters can never accomodate the number of cells queried for.

Variants

BatchNonConforming(u32, E)

A batch of cells (the first argument) is non-conforming and can not be let through at this time. The second argument gives information about when that batch of cells might be let through again (not accounting for thundering herds and other, simultaneous decisions).

InsufficientCapacity(u32)

The number of cells tested (the first argument) is larger than the bucket's capacity, which means the decision can never have a conforming result. The argument gives the maximum number of cells that could ever have a conforming result.

Trait Implementations

impl<E: Debug + Display> Debug for NegativeMultiDecision<E>[src]

impl<E: PartialEq + Display> PartialEq<NegativeMultiDecision<E>> for NegativeMultiDecision<E>[src]

impl<E: Display> StructuralPartialEq for NegativeMultiDecision<E>[src]

Auto Trait Implementations

impl<E> RefUnwindSafe for NegativeMultiDecision<E> where
    E: RefUnwindSafe
[src]

impl<E> Send for NegativeMultiDecision<E> where
    E: Send
[src]

impl<E> Sync for NegativeMultiDecision<E> where
    E: Sync
[src]

impl<E> Unpin for NegativeMultiDecision<E> where
    E: Unpin
[src]

impl<E> UnwindSafe for NegativeMultiDecision<E> where
    E: UnwindSafe
[src]

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,