pub trait SuffixTrait<T> {
    // Required methods
    fn get(&self, version: u64) -> SuffixResult<Option<SuffixItem<T>>>;
    fn get_mut(&mut self, version: u64) -> Option<&mut SuffixItem<T>>;
    fn get_meta(&self) -> &SuffixMeta;
    fn insert(
        &mut self,
        version: u64,
        message: SuffixItemType<T>
    ) -> SuffixResult<()>;
    fn update_decision(
        &mut self,
        version: u64,
        decision_ver: u64
    ) -> SuffixResult<()>;
    fn prune_till_index(
        &mut self,
        index: usize
    ) -> SuffixResult<Vec<Option<SuffixItem<T>>>>;
    fn prune_till_version(
        &mut self,
        version: u64
    ) -> SuffixResult<Vec<Option<SuffixItem<T>>>>;
    fn remove(&mut self, version: u64) -> SuffixResult<()>;
}

Required Methods§

source

fn get(&self, version: u64) -> SuffixResult<Option<SuffixItem<T>>>

source

fn get_mut(&mut self, version: u64) -> Option<&mut SuffixItem<T>>

source

fn get_meta(&self) -> &SuffixMeta

source

fn insert( &mut self, version: u64, message: SuffixItemType<T> ) -> SuffixResult<()>

source

fn update_decision( &mut self, version: u64, decision_ver: u64 ) -> SuffixResult<()>

source

fn prune_till_index( &mut self, index: usize ) -> SuffixResult<Vec<Option<SuffixItem<T>>>>

source

fn prune_till_version( &mut self, version: u64 ) -> SuffixResult<Vec<Option<SuffixItem<T>>>>

source

fn remove(&mut self, version: u64) -> SuffixResult<()>

Implementors§

source§

impl<T> SuffixTrait<T> for Suffix<T>
where T: Sized + Clone + Debug,