Trait cretonne_codegen::bforest::Comparator[][src]

pub trait Comparator<K> where
    K: Copy
{ fn cmp(&self, a: K, b: K) -> Ordering; fn search(&self, k: K, s: &[K]) -> Result<usize, usize> { ... } }

Key comparator.

Keys don't need to implement Ord. They are compared using a comparator object which provides a context for comparison.

Required Methods

Compare keys a and b.

This relation must provide a total ordering or the key space.

Provided Methods

Binary search for k in an ordered slice.

Assume that s is already sorted according to this ordering, search for the key k.

Returns Ok(idx) if k was found in the slice or Err(idx) with the position where it should be inserted to preserve the ordering.

Implementations on Foreign Types

impl<K> Comparator<K> for () where
    K: Copy + Ord
[src]

Trivial comparator that doesn't actually provide any context.

Implementors