Trait bitflags::__core::prelude::v1::Ord
[−]
[src]
pub trait Ord: Eq + PartialOrd<Self> {
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>.
This trait can be used with #[derive]. When derived, it will produce a lexicographic
ordering based on the top-to-bottom declaration order of the struct's members.
Required Methods
fn cmp(&self, other: &Self) -> Ordering
This method returns an Ordering between self and other.
By convention, self.cmp(&other) returns the ordering matching the expression
self <operator> other if true.
Examples
use std::cmp::Ordering; assert_eq!(5.cmp(&10), Ordering::Less); assert_eq!(10.cmp(&5), Ordering::Greater); assert_eq!(5.cmp(&5), Ordering::Equal);
Implementors
impl<A, B, C, D, E, F, G, H, I, J, K, L> Ord for (A, B, C, D, E, F, G, H, I, J, K, L) where B: Ord, A: Ord, E: Ord, G: Ord, C: Ord, I: Ord, K: Ord, F: Ord, L: Ord, D: Ord, J: Ord, H: Ordimpl<A, B, C, D, E, F, G, H, I, J, K> Ord for (A, B, C, D, E, F, G, H, I, J, K) where E: Ord, G: Ord, D: Ord, H: Ord, J: Ord, I: Ord, C: Ord, B: Ord, F: Ord, A: Ord, K: Ordimpl<A, B, C, D, E, F, G, H, I, J> Ord for (A, B, C, D, E, F, G, H, I, J) where J: Ord, G: Ord, B: Ord, E: Ord, C: Ord, F: Ord, D: Ord, A: Ord, H: Ord, I: Ordimpl<A, B, C, D, E, F, G, H, I> Ord for (A, B, C, D, E, F, G, H, I) where C: Ord, B: Ord, H: Ord, I: Ord, D: Ord, G: Ord, A: Ord, E: Ord, F: Ordimpl<A, B, C, D, E, F, G, H> Ord for (A, B, C, D, E, F, G, H) where H: Ord, G: Ord, E: Ord, F: Ord, B: Ord, C: Ord, D: Ord, A: Ordimpl<A, B, C, D, E, F, G> Ord for (A, B, C, D, E, F, G) where D: Ord, F: Ord, C: Ord, B: Ord, A: Ord, E: Ord, G: Ordimpl<A, B, C, D, E, F> Ord for (A, B, C, D, E, F) where C: Ord, E: Ord, F: Ord, D: Ord, A: Ord, B: Ordimpl<A, B, C, D, E> Ord for (A, B, C, D, E) where E: Ord, B: Ord, A: Ord, C: Ord, D: Ordimpl<A, B, C, D> Ord for (A, B, C, D) where B: Ord, D: Ord, C: Ord, A: Ordimpl<A, B, C> Ord for (A, B, C) where B: Ord, A: Ord, C: Ordimpl<A, B> Ord for (A, B) where A: Ord, B: Ordimpl<A> Ord for (A,) where A: Ordimpl Ord for strimpl<T> Ord for [T] where T: Ordimpl<T, E> Ord for Result<T, E> where E: Ord, T: Ordimpl<T> Ord for [T; 32] where T: Ordimpl<T> Ord for [T; 31] where T: Ordimpl<T> Ord for [T; 30] where T: Ordimpl<T> Ord for [T; 29] where T: Ordimpl<T> Ord for [T; 28] where T: Ordimpl<T> Ord for [T; 27] where T: Ordimpl<T> Ord for [T; 26] where T: Ordimpl<T> Ord for [T; 25] where T: Ordimpl<T> Ord for [T; 24] where T: Ordimpl<T> Ord for [T; 23] where T: Ordimpl<T> Ord for [T; 22] where T: Ordimpl<T> Ord for [T; 21] where T: Ordimpl<T> Ord for [T; 20] where T: Ordimpl<T> Ord for [T; 19] where T: Ordimpl<T> Ord for [T; 18] where T: Ordimpl<T> Ord for [T; 17] where T: Ordimpl<T> Ord for [T; 16] where T: Ordimpl<T> Ord for [T; 15] where T: Ordimpl<T> Ord for [T; 14] where T: Ordimpl<T> Ord for [T; 13] where T: Ordimpl<T> Ord for [T; 12] where T: Ordimpl<T> Ord for [T; 11] where T: Ordimpl<T> Ord for [T; 10] where T: Ordimpl<T> Ord for [T; 9] where T: Ordimpl<T> Ord for [T; 8] where T: Ordimpl<T> Ord for [T; 7] where T: Ordimpl<T> Ord for [T; 6] where T: Ordimpl<T> Ord for [T; 5] where T: Ordimpl<T> Ord for [T; 4] where T: Ordimpl<T> Ord for [T; 3] where T: Ordimpl<T> Ord for [T; 2] where T: Ordimpl<T> Ord for [T; 1] where T: Ordimpl<T> Ord for [T; 0] where T: Ordimpl Ord for i64impl Ord for i32impl Ord for i16impl Ord for i8impl Ord for isizeimpl Ord for u64impl Ord for u32impl Ord for u16impl Ord for u8impl Ord for usizeimpl Ord for charimpl Ord for boolimpl Ord for ()impl<T> Ord for *mut T where T: ?Sizedimpl<T> Ord for *const T where T: ?Sizedimpl<T> Ord for Option<T> where T: Ordimpl<T> Ord for Box<T> where T: Ord + ?Sizedimpl<T> Ord for Vec<T> where T: Ordimpl Ord for Stringimpl<T> Ord for Wrapping<T> where T: Ordimpl<A> Ord for VecDeque<A> where A: Ordimpl<A> Ord for LinkedList<A> where A: Ordimpl<K, V> Ord for BTreeMap<K, V> where K: Ord, V: Ordimpl<T> Ord for BTreeSet<T> where T: Ordimpl Ord for CStringimpl Ord for CStrimpl<T> Ord for Arc<T> where T: Ord + ?Sizedimpl<T> Ord for Rc<T> where T: Ord + ?Sizedimpl Ord for Orderingimpl Ord for Errorimpl<T> Ord for PhantomData<T> where T: ?Sizedimpl<'a, B> Ord for Cow<'a, B> where B: Ord + ToOwned + ?Sized