pub trait Buffer: Send + 'static {
    type RoundNum: RoundNum;
    type CoordNum: CoordNum;
    type Entry: LogEntry;
    type Error: Error + Send + Sync + 'static;

    fn insert(
        &mut self,
        round_num: Self::RoundNum,
        coord_num: Self::CoordNum,
        entry: Arc<Self::Entry>
    ); fn get(
        &self,
        round_num: Self::RoundNum
    ) -> Result<Option<(Self::CoordNum, Arc<Self::Entry>)>, Self::Error>; }
Expand description

A buffer of entries that were applied to the local state.

Required Associated Types

The round number type.

The coordination number type.

The log entry type.

The type of error this buffer may raise.

Required Methods

Insert an applied entry into the buffer.

Retrieve an entry from the buffer.

May be called for round numbers that were not previously inserted.

Implementors