Trait content_tree::TreeIndex[][src]

pub trait TreeIndex<E: ContentTraits> where
    Self: Debug + Copy + Clone + PartialEq + Eq
{ type IndexUpdate: Debug + Default + PartialEq + Eq; type IndexValue: Copy + Clone + Default + Debug + AddAssign + SubAssign + PartialEq + Eq + Sized; const CAN_COUNT_ITEMS: bool; fn increment_marker(marker: &mut Self::IndexUpdate, entry: &E);
fn decrement_marker(marker: &mut Self::IndexUpdate, entry: &E);
fn decrement_marker_by_val(
        marker: &mut Self::IndexUpdate,
        val: &Self::IndexValue
    );
fn update_offset_by_marker(
        offset: &mut Self::IndexValue,
        by: &Self::IndexUpdate
    );
fn increment_offset(offset: &mut Self::IndexValue, by: &E); fn increment_offset_partial(
        offset: &mut Self::IndexValue,
        by: &E,
        at: usize
    ) { ... }
fn count_items(_idx: Self::IndexValue) -> usize { ... } }
Expand description

The index describes which fields we’re tracking, and can query. Indexes let us convert cursors to positions and vice versa.

Associated Types

Associated Constants

Required methods

Provided methods

Implementors