[][src]Enum transaction_pool::scoring::Change

pub enum Change<T = ()> {
    InsertedAt(usize),
    RemovedAt(usize),
    ReplacedAt(usize),
    Culled(usize),
    Event(T),
}

Describes a reason why the Score of transactions should be updated. The Scoring implementations can use this information to update the Score table more efficiently.

Variants

InsertedAt(usize)

New transaction has been inserted at given index. The Score at that index is initialized with default value and needs to be filled in.

RemovedAt(usize)

The transaction has been removed at given index and other transactions shifted to it's place. The scores were removed and shifted as well. For simple scoring algorithms no action is required here.

ReplacedAt(usize)

The transaction at given index has replaced a previous transaction. The score at that index needs to be update (it contains value from previous transaction).

Culled(usize)

Given number of stalled transactions has been culled from the beginning. The scores has been removed from the beginning as well. For simple scoring algorithms no action is required here.

Event(T)

Custom event to update the score triggered outside of the pool. Handling this event is up to scoring implementation.

Trait Implementations

impl<T: Clone> Clone for Change<T>[src]

impl<T: Copy> Copy for Change<T>[src]

impl<T: Debug> Debug for Change<T>[src]

impl<T: Eq> Eq for Change<T>[src]

impl<T: PartialEq> PartialEq<Change<T>> for Change<T>[src]

impl<T> StructuralEq for Change<T>[src]

impl<T> StructuralPartialEq for Change<T>[src]

Auto Trait Implementations

impl<T> RefUnwindSafe for Change<T> where
    T: RefUnwindSafe

impl<T> Send for Change<T> where
    T: Send

impl<T> Sync for Change<T> where
    T: Sync

impl<T> Unpin for Change<T> where
    T: Unpin

impl<T> UnwindSafe for Change<T> where
    T: UnwindSafe

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> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

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.