pub enum PushResult {
Delivered,
Conflated,
DroppedNewest,
Overflow,
}Expand description
What happened to one event offered to a buffer. Returned by SubscriptionBuffer::try_push and
BackpressureManager::ingest.
The meaning depends on the subscription’s [Backpressure] policy:
| Policy | Possible results |
|---|---|
[Backpressure::Conflate] | always Conflated |
[Backpressure::Lossless] | Delivered, then Overflow for ever |
[Backpressure::DropNewest] | Delivered or DroppedNewest |
Variants§
Delivered
The event is in the buffer and will be delivered in order.
Conflated
The event is the buffer’s “latest” value of its kind. It replaced the previous one of that kind, if any.
This is the only result of a Conflate subscription, even for its first event.
DroppedNewest
The buffer was full and the new event was thrown away. Older events are kept. The loss is
counted in SubscriptionBuffer::dropped. The connector does not become degraded.
Overflow
A Lossless buffer was full. The event was not stored. This is terminal until the buffer is
reset: every later event of this subscription is refused too, and the owner must tell the
consumer with [Event::Overflow] and mark the connector degraded (see BackpressureManager).
Trait Implementations§
Source§impl Clone for PushResult
impl Clone for PushResult
Source§fn clone(&self) -> PushResult
fn clone(&self) -> PushResult
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for PushResult
impl Debug for PushResult
impl Eq for PushResult
Source§impl PartialEq for PushResult
impl PartialEq for PushResult
Source§fn eq(&self, other: &PushResult) -> bool
fn eq(&self, other: &PushResult) -> bool
self and other values to be equal, and is used by ==.impl StructuralPartialEq for PushResult
Auto Trait Implementations§
impl Freeze for PushResult
impl RefUnwindSafe for PushResult
impl Send for PushResult
impl Sync for PushResult
impl Unpin for PushResult
impl UnsafeUnpin for PushResult
impl UnwindSafe for PushResult
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
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
§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
key and return true if they are equal.