pub trait Comparator<K>where
K: Copy,{
// Required method
fn cmp(&self, a: K, b: K) -> Ordering;
// Provided method
fn search(&self, k: K, s: &[K]) -> Result<usize, usize> { ... }
}Expand description
Key comparator.
Keys don’t need to implement Ord. They are compared using a comparator object which
provides a context for comparison.
Required Methods§
Provided Methods§
Sourcefn search(&self, k: K, s: &[K]) -> Result<usize, usize>
fn search(&self, k: K, s: &[K]) -> Result<usize, usize>
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§
Source§impl<K> Comparator<K> for ()
Trivial comparator that doesn’t actually provide any context.
impl<K> Comparator<K> for ()
Trivial comparator that doesn’t actually provide any context.