pub trait UseLengthFinder<B: BTreeTrait> {
    // Required methods
    fn get_len(cache: &B::Cache) -> usize;
    fn find_element_by_offset(
        elements: &[<B as BTreeTrait>::Elem],
        offset: usize
    ) -> FindResult;

    // Provided methods
    fn finder_delete(
        elements: &mut HeapVec<B::Elem>,
        elem_index: usize,
        offset: usize
    ) -> Option<B::Elem> { ... }
    fn finder_drain_range(
        elements: &mut HeapVec<B::Elem>,
        start: Option<QueryResult>,
        end: Option<QueryResult>
    ) -> Box<dyn Iterator<Item = B::Elem> + '_> { ... }
    fn finder_delete_range(
        elements: &mut HeapVec<B::Elem>,
        start: Option<QueryResult>,
        end: Option<QueryResult>
    ) { ... }
}

Required Methods§

source

fn get_len(cache: &B::Cache) -> usize

source

fn find_element_by_offset( elements: &[<B as BTreeTrait>::Elem], offset: usize ) -> FindResult

Provided Methods§

source

fn finder_delete( elements: &mut HeapVec<B::Elem>, elem_index: usize, offset: usize ) -> Option<B::Elem>

source

fn finder_drain_range( elements: &mut HeapVec<B::Elem>, start: Option<QueryResult>, end: Option<QueryResult> ) -> Box<dyn Iterator<Item = B::Elem> + '_>

source

fn finder_delete_range( elements: &mut HeapVec<B::Elem>, start: Option<QueryResult>, end: Option<QueryResult> )

Implementors§