Trait tidb_query_common::storage::Storage[][src]

pub trait Storage: Send {
    type Statistics;
    fn begin_scan(
        &mut self,
        is_backward_scan: bool,
        is_key_only: bool,
        range: IntervalRange
    ) -> Result<()>;
fn scan_next(&mut self) -> Result<Option<OwnedKvPair>>;
fn get(
        &mut self,
        is_key_only: bool,
        range: PointRange
    ) -> Result<Option<OwnedKvPair>>;
fn met_uncacheable_data(&self) -> Option<bool>;
fn collect_statistics(&mut self, dest: &mut Self::Statistics); }

The abstract storage interface. The table scan and index scan executor relies on a Storage implementation to provide source data.

Associated Types

type Statistics[src]

Loading content...

Required methods

fn begin_scan(
    &mut self,
    is_backward_scan: bool,
    is_key_only: bool,
    range: IntervalRange
) -> Result<()>
[src]

fn scan_next(&mut self) -> Result<Option<OwnedKvPair>>[src]

fn get(
    &mut self,
    is_key_only: bool,
    range: PointRange
) -> Result<Option<OwnedKvPair>>
[src]

fn met_uncacheable_data(&self) -> Option<bool>[src]

fn collect_statistics(&mut self, dest: &mut Self::Statistics)[src]

Loading content...

Implementations on Foreign Types

impl<T: Storage + ?Sized> Storage for Box<T>[src]

type Statistics = T::Statistics

Loading content...

Implementors

impl Storage for FixtureStorage[src]

type Statistics = ()

Loading content...