Trait std::cmp::Ord[src]
pub trait Ord: Eq + PartialOrd {
fn cmp(&self, other: &Self) -> Ordering;
}Trait for types that form a total order.
An order is a total order if it is (for all a, b and c):
- total and antisymmetric: exactly one of
a < b,a == bora > bis true; and - transitive,
a < bandb < cimpliesa < c. The same must hold for both==and>.
Required Methods
fn cmp(&self, other: &Self) -> Ordering
This method returns an ordering between self and other values.
By convention, self.cmp(&other) returns the ordering matching
the expression self <operator> other if true. For example:
assert_eq!( 5u.cmp(&10), Less); // because 5 < 10 assert_eq!(10u.cmp(&5), Greater); // because 10 > 5 assert_eq!( 5u.cmp(&5), Equal); // because 5 == 5
Implementors
impl Ord for Asciiimpl<T: Ord + 'static> Ord for Gc<T>impl Ord for Orderingimpl Ord for ()impl Ord for boolimpl Ord for charimpl Ord for uintimpl Ord for u8impl Ord for u16impl Ord for u32impl Ord for u64impl Ord for intimpl Ord for i8impl Ord for i16impl Ord for i32impl Ord for i64impl<'a, T: Ord> Ord for &'a Timpl<'a, T: Ord> Ord for &'a mut Timpl<T: Ord> Ord for Option<T>impl<T: Ord, E: Ord> Ord for Result<T, E>impl<'a, T: Ord> Ord for &'a [T]impl<'a> Ord for &'a strimpl<A: Ord> Ord for (A)impl<A: Ord, B: Ord> Ord for (A, B)impl<A: Ord, B: Ord, C: Ord> Ord for (A, B, C)impl<A: Ord, B: Ord, C: Ord, D: Ord> Ord for (A, B, C, D)impl<A: Ord, B: Ord, C: Ord, D: Ord, E: Ord> Ord for (A, B, C, D, E)impl<A: Ord, B: Ord, C: Ord, D: Ord, E: Ord, F: Ord> Ord for (A, B, C, D, E, F)impl<A: Ord, B: Ord, C: Ord, D: Ord, E: Ord, F: Ord, G: Ord> Ord for (A, B, C, D, E, F, G)impl<A: Ord, B: Ord, C: Ord, D: Ord, E: Ord, F: Ord, G: Ord, H: Ord> Ord for (A, B, C, D, E, F, G, H)impl<A: Ord, B: Ord, C: Ord, D: Ord, E: Ord, F: Ord, G: Ord, H: Ord, I: Ord> Ord for (A, B, C, D, E, F, G, H, I)impl<A: Ord, B: Ord, C: Ord, D: Ord, E: Ord, F: Ord, G: Ord, H: Ord, I: Ord, J: Ord> Ord for (A, B, C, D, E, F, G, H, I, J)impl<A: Ord, B: Ord, C: Ord, D: Ord, E: Ord, F: Ord, G: Ord, H: Ord, I: Ord, J: Ord, K: Ord> Ord for (A, B, C, D, E, F, G, H, I, J, K)impl<A: Ord, B: Ord, C: Ord, D: Ord, E: Ord, F: Ord, G: Ord, H: Ord, I: Ord, J: Ord, K: Ord, L: Ord> Ord for (A, B, C, D, E, F, G, H, I, J, K, L)impl<K: Ord, V: Eq> Ord for BTree<K, V>impl<K: Ord, V: Eq> Ord for Node<K, V>impl<K: Ord, V: Eq> Ord for Leaf<K, V>impl<K: Ord, V: Eq> Ord for Branch<K, V>impl<K: Ord, V: Eq> Ord for LeafElt<K, V>impl<K: Ord, V: Eq> Ord for BranchElt<K, V>impl<'a> Ord for MaybeOwned<'a>impl Ord for Stringimpl<T: Ord> Ord for Vec<T>impl<T: Ord> Ord for Boximpl<T: Ord> Ord for Rc<T>