IngestResult

Enum IngestResult 

Source
pub enum IngestResult<E> {
    Complete(Operation<E>),
    Retry(Header<E>, Option<Body>, Vec<u8>, u64),
    Outdated(Operation<E>),
}
Expand description

Operations can be ingested directly or need to be re-tried if they arrived out-of-order.

Variants§

§

Complete(Operation<E>)

Operation has been successfully validated and persisted.

§

Retry(Header<E>, Option<Body>, Vec<u8>, u64)

We’re missing previous operations before we can try validating the backlink of this operation.

The number indicates how many operations we are lacking before we can attempt validation again.

§

Outdated(Operation<E>)

Operation can be considered “outdated” as a “newer” operation in the log removed this operation (“pruning”) while we processed it.

Applications usually want to ignore these operations as the latest operation will hold all the state we need. Additionally we were also not able to correctly check its log integrity anymore.

Trait Implementations§

Source§

impl<E: Debug> Debug for IngestResult<E>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<E> Freeze for IngestResult<E>
where E: Freeze,

§

impl<E> RefUnwindSafe for IngestResult<E>
where E: RefUnwindSafe,

§

impl<E> Send for IngestResult<E>
where E: Send,

§

impl<E> Sync for IngestResult<E>
where E: Sync,

§

impl<E> Unpin for IngestResult<E>
where E: Unpin,

§

impl<E> UnwindSafe for IngestResult<E>
where E: UnwindSafe,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

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

Source§

fn vzip(self) -> V