Trait cranelift_bforest::Comparator
source · [−]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> { ... }
}
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
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
sourceimpl<K> Comparator<K> for () where
K: Copy + Ord,
impl<K> Comparator<K> for () where
K: Copy + Ord,
Trivial comparator that doesn’t actually provide any context.