risingwave_storage::hummock::iterator

Trait RustIteratorBuilder

source
pub trait RustIteratorBuilder:
    Send
    + Sync
    + 'static {
    type Iterable: Send + Sync;
    type Direction: HummockIteratorDirection;
    type RewindIter<'a>: Iterator<Item = (TableKey<&'a [u8]>, HummockValue<&'a [u8]>)> + Send + Sync + 'a;
    type SeekIter<'a>: Iterator<Item = (TableKey<&'a [u8]>, HummockValue<&'a [u8]>)> + Send + Sync + 'a;

    // Required methods
    fn seek<'a>(
        iterable: &'a Self::Iterable,
        seek_key: TableKey<&[u8]>,
    ) -> Self::SeekIter<'a>;
    fn rewind(iterable: &Self::Iterable) -> Self::RewindIter<'_>;
}

Required Associated Types§

source

type Iterable: Send + Sync

source

type Direction: HummockIteratorDirection

source

type RewindIter<'a>: Iterator<Item = (TableKey<&'a [u8]>, HummockValue<&'a [u8]>)> + Send + Sync + 'a

source

type SeekIter<'a>: Iterator<Item = (TableKey<&'a [u8]>, HummockValue<&'a [u8]>)> + Send + Sync + 'a

Required Methods§

source

fn seek<'a>( iterable: &'a Self::Iterable, seek_key: TableKey<&[u8]>, ) -> Self::SeekIter<'a>

source

fn rewind(iterable: &Self::Iterable) -> Self::RewindIter<'_>

Object Safety§

This trait is not object safe.

Implementors§