Trait nom::lib::std::prelude::v1::rust_2018::PartialOrd1.0.0[][src]

#[lang = "partial_ord"]
pub trait PartialOrd<Rhs = Self>: PartialEq<Rhs> where
    Rhs: ?Sized
{ #[must_use] pub fn partial_cmp(&self, other: &Rhs) -> Option<Ordering>; #[must_use] pub fn lt(&self, other: &Rhs) -> bool { ... }
#[must_use] pub fn le(&self, other: &Rhs) -> bool { ... }
#[must_use] pub fn gt(&self, other: &Rhs) -> bool { ... }
#[must_use] pub fn ge(&self, other: &Rhs) -> bool { ... } }
[]

Trait for values that can be compared for a sort-order.

The comparison must satisfy, for all a, b and c:

Note that these requirements mean that the trait itself must be implemented symmetrically and transitively: if T: PartialOrd<U> and U: PartialOrd<V> then U: PartialOrd<T> and T: PartialOrd<V>.

Derivable

This trait can be used with #[derive]. When derived on structs, it will produce a lexicographic ordering based on the top-to-bottom declaration order of the struct’s members. When derived on enums, variants are ordered by their top-to-bottom discriminant order.

How can I implement PartialOrd?

PartialOrd only requires implementation of the partial_cmp method, with the others generated from default implementations.

However it remains possible to implement the others separately for types which do not have a total order. For example, for floating point numbers, NaN < 0 == false and NaN >= 0 == false (cf. IEEE 754-2008 section 5.11).

PartialOrd requires your type to be PartialEq.

Implementations of PartialEq, PartialOrd, and Ord must agree with each other. It’s easy to accidentally make them disagree by deriving some of the traits and manually implementing others.

If your type is Ord, you can implement partial_cmp by using cmp:

use std::cmp::Ordering;

#[derive(Eq)]
struct Person {
    id: u32,
    name: String,
    height: u32,
}

impl PartialOrd for Person {
    fn partial_cmp(&self, other: &Self) -> Option<Ordering> {
        Some(self.cmp(other))
    }
}

impl Ord for Person {
    fn cmp(&self, other: &Self) -> Ordering {
        self.height.cmp(&other.height)
    }
}

impl PartialEq for Person {
    fn eq(&self, other: &Self) -> bool {
        self.height == other.height
    }
}

You may also find it useful to use partial_cmp on your type’s fields. Here is an example of Person types who have a floating-point height field that is the only field to be used for sorting:

use std::cmp::Ordering;

struct Person {
    id: u32,
    name: String,
    height: f64,
}

impl PartialOrd for Person {
    fn partial_cmp(&self, other: &Self) -> Option<Ordering> {
        self.height.partial_cmp(&other.height)
    }
}

impl PartialEq for Person {
    fn eq(&self, other: &Self) -> bool {
        self.height == other.height
    }
}

Examples

let x : u32 = 0;
let y : u32 = 1;

assert_eq!(x < y, true);
assert_eq!(x.lt(&y), true);

Required methods

#[must_use]
pub fn partial_cmp(&self, other: &Rhs) -> Option<Ordering>
[src][]

This method returns an ordering between self and other values if one exists.

Examples

use std::cmp::Ordering;

let result = 1.0.partial_cmp(&2.0);
assert_eq!(result, Some(Ordering::Less));

let result = 1.0.partial_cmp(&1.0);
assert_eq!(result, Some(Ordering::Equal));

let result = 2.0.partial_cmp(&1.0);
assert_eq!(result, Some(Ordering::Greater));

When comparison is impossible:

let result = f64::NAN.partial_cmp(&1.0);
assert_eq!(result, None);

Provided methods

#[must_use]
pub fn lt(&self, other: &Rhs) -> bool
[src][]

This method tests less than (for self and other) and is used by the < operator.

Examples

let result = 1.0 < 2.0;
assert_eq!(result, true);

let result = 2.0 < 1.0;
assert_eq!(result, false);

#[must_use]
pub fn le(&self, other: &Rhs) -> bool
[src][]

This method tests less than or equal to (for self and other) and is used by the <= operator.

Examples

let result = 1.0 <= 2.0;
assert_eq!(result, true);

let result = 2.0 <= 2.0;
assert_eq!(result, true);

#[must_use]
pub fn gt(&self, other: &Rhs) -> bool
[src][]

This method tests greater than (for self and other) and is used by the > operator.

Examples

let result = 1.0 > 2.0;
assert_eq!(result, false);

let result = 2.0 > 2.0;
assert_eq!(result, false);

#[must_use]
pub fn ge(&self, other: &Rhs) -> bool
[src][]

This method tests greater than or equal to (for self and other) and is used by the >= operator.

Examples

let result = 2.0 >= 1.0;
assert_eq!(result, true);

let result = 2.0 >= 2.0;
assert_eq!(result, true);

Implementations on Foreign Types

impl PartialOrd<TypeId> for TypeId[src][]

impl PartialOrd<Duration> for Duration[src][]

impl PartialOrd<NonZeroU32> for NonZeroU32[src][]

impl PartialOrd<NonZeroU16> for NonZeroU16[src][]

impl<T> PartialOrd<Cell<T>> for Cell<T> where
    T: PartialOrd<T> + Copy
[src][]

impl PartialOrd<NonZeroU128> for NonZeroU128[src][]

impl PartialOrd<NonZeroI16> for NonZeroI16[src][]

impl<P, Q> PartialOrd<Pin<Q>> for Pin<P> where
    P: Deref,
    Q: Deref,
    <P as Deref>::Target: PartialOrd<<Q as Deref>::Target>, 
[src][]

impl PartialOrd<NonZeroU8> for NonZeroU8[src][]

impl<Dyn> PartialOrd<DynMetadata<Dyn>> for DynMetadata<Dyn> where
    Dyn: ?Sized
[src][]

impl PartialOrd<NonZeroI128> for NonZeroI128[src][]

impl PartialOrd<NonZeroI32> for NonZeroI32[src][]

impl PartialOrd<NonZeroI8> for NonZeroI8[src][]

impl PartialOrd<NonZeroUsize> for NonZeroUsize[src][]

impl<T> PartialOrd<NonNull<T>> for NonNull<T> where
    T: ?Sized
[src][]

impl<T> PartialOrd<Wrapping<T>> for Wrapping<T> where
    T: PartialOrd<T>, 
[src][]

impl<'a> PartialOrd<Location<'a>> for Location<'a>[src][]

impl PartialOrd<PhantomPinned> for PhantomPinned[src][]

impl<T> PartialOrd<Poll<T>> for Poll<T> where
    T: PartialOrd<T>, 
[src][]

impl PartialOrd<NonZeroU64> for NonZeroU64[src][]

impl<T> PartialOrd<RefCell<T>> for RefCell<T> where
    T: PartialOrd<T> + ?Sized
[src][]

pub fn partial_cmp(&self, other: &RefCell<T>) -> Option<Ordering>[src][]

Panics

Panics if the value in either RefCell is currently borrowed.

pub fn lt(&self, other: &RefCell<T>) -> bool[src][]

Panics

Panics if the value in either RefCell is currently borrowed.

pub fn le(&self, other: &RefCell<T>) -> bool[src][]

Panics

Panics if the value in either RefCell is currently borrowed.

pub fn gt(&self, other: &RefCell<T>) -> bool[src][]

Panics

Panics if the value in either RefCell is currently borrowed.

pub fn ge(&self, other: &RefCell<T>) -> bool[src][]

Panics

Panics if the value in either RefCell is currently borrowed.

impl<T> PartialOrd<PhantomData<T>> for PhantomData<T> where
    T: ?Sized
[src][]

impl PartialOrd<NonZeroI64> for NonZeroI64[src][]

impl PartialOrd<NonZeroIsize> for NonZeroIsize[src][]

impl PartialOrd<CpuidResult> for CpuidResult[src][]

Implementors

impl PartialOrd<!> for ![src][+]

impl PartialOrd<()> for ()[src][+]

impl PartialOrd<Ordering> for Ordering[src][+]

impl PartialOrd<Infallible> for Infallible1.34.0[src][+]

impl PartialOrd<Error> for Error[src][+]

impl PartialOrd<NoneError> for NoneError[src][+]

impl PartialOrd<bool> for bool[src][+]

impl PartialOrd<char> for char[src][+]

impl PartialOrd<f32> for f32[src][+]

impl PartialOrd<f64> for f64[src][+]

impl PartialOrd<i8> for i8[src][+]

impl PartialOrd<i16> for i16[src][+]

impl PartialOrd<i32> for i32[src][+]

impl PartialOrd<i64> for i64[src][+]

impl PartialOrd<i128> for i128[src][+]

impl PartialOrd<isize> for isize[src][+]

impl PartialOrd<str> for str[src][+]

Implements comparison operations on strings.

Strings are compared lexicographically by their byte values. This compares Unicode code points based on their positions in the code charts. This is not necessarily the same as “alphabetical” order, which varies by language and locale. Comparing strings according to culturally-accepted standards requires locale-specific data that is outside the scope of the str type.

impl PartialOrd<u8> for u8[src][+]

impl PartialOrd<u16> for u16[src][+]

impl PartialOrd<u32> for u32[src][+]

impl PartialOrd<u64> for u64[src][+]

impl PartialOrd<u128> for u128[src][+]

impl PartialOrd<usize> for usize[src][+]

impl<'_, '_, A, B> PartialOrd<&'_ B> for &'_ A where
    A: PartialOrd<B> + ?Sized,
    B: ?Sized
[src][+]

impl<'_, '_, A, B> PartialOrd<&'_ mut B> for &'_ mut A where
    A: PartialOrd<B> + ?Sized,
    B: ?Sized
[src][+]

impl<A> PartialOrd<(A,)> for (A,) where
    A: PartialOrd<A> + PartialEq<A> + ?Sized
[src][+]

impl<A, B> PartialOrd<(A, B)> for (A, B) where
    A: PartialOrd<A> + PartialEq<A>,
    B: PartialOrd<B> + PartialEq<B> + ?Sized
[src][+]

impl<A, B, C> PartialOrd<(A, B, C)> for (A, B, C) where
    C: PartialOrd<C> + PartialEq<C> + ?Sized,
    A: PartialOrd<A> + PartialEq<A>,
    B: PartialOrd<B> + PartialEq<B>, 
[src][+]

impl<A, B, C, D> PartialOrd<(A, B, C, D)> for (A, B, C, D) where
    C: PartialOrd<C> + PartialEq<C>,
    A: PartialOrd<A> + PartialEq<A>,
    B: PartialOrd<B> + PartialEq<B>,
    D: PartialOrd<D> + PartialEq<D> + ?Sized
[src][+]

impl<A, B, C, D, E> PartialOrd<(A, B, C, D, E)> for (A, B, C, D, E) where
    C: PartialOrd<C> + PartialEq<C>,
    E: PartialOrd<E> + PartialEq<E> + ?Sized,
    A: PartialOrd<A> + PartialEq<A>,
    B: PartialOrd<B> + PartialEq<B>,
    D: PartialOrd<D> + PartialEq<D>, 
[src][+]

impl<A, B, C, D, E, F> PartialOrd<(A, B, C, D, E, F)> for (A, B, C, D, E, F) where
    C: PartialOrd<C> + PartialEq<C>,
    F: PartialOrd<F> + PartialEq<F> + ?Sized,
    E: PartialOrd<E> + PartialEq<E>,
    A: PartialOrd<A> + PartialEq<A>,
    B: PartialOrd<B> + PartialEq<B>,
    D: PartialOrd<D> + PartialEq<D>, 
[src][+]

impl<A, B, C, D, E, F, G> PartialOrd<(A, B, C, D, E, F, G)> for (A, B, C, D, E, F, G) where
    C: PartialOrd<C> + PartialEq<C>,
    F: PartialOrd<F> + PartialEq<F>,
    E: PartialOrd<E> + PartialEq<E>,
    G: PartialOrd<G> + PartialEq<G> + ?Sized,
    A: PartialOrd<A> + PartialEq<A>,
    B: PartialOrd<B> + PartialEq<B>,
    D: PartialOrd<D> + PartialEq<D>, 
[src][+]

impl<A, B, C, D, E, F, G, H> PartialOrd<(A, B, C, D, E, F, G, H)> for (A, B, C, D, E, F, G, H) where
    C: PartialOrd<C> + PartialEq<C>,
    F: PartialOrd<F> + PartialEq<F>,
    E: PartialOrd<E> + PartialEq<E>,
    G: PartialOrd<G> + PartialEq<G>,
    H: PartialOrd<H> + PartialEq<H> + ?Sized,
    A: PartialOrd<A> + PartialEq<A>,
    B: PartialOrd<B> + PartialEq<B>,
    D: PartialOrd<D> + PartialEq<D>, 
[src][+]

impl<A, B, C, D, E, F, G, H, I> PartialOrd<(A, B, C, D, E, F, G, H, I)> for (A, B, C, D, E, F, G, H, I) where
    C: PartialOrd<C> + PartialEq<C>,
    F: PartialOrd<F> + PartialEq<F>,
    E: PartialOrd<E> + PartialEq<E>,
    I: PartialOrd<I> + PartialEq<I> + ?Sized,
    G: PartialOrd<G> + PartialEq<G>,
    H: PartialOrd<H> + PartialEq<H>,
    A: PartialOrd<A> + PartialEq<A>,
    B: PartialOrd<B> + PartialEq<B>,
    D: PartialOrd<D> + PartialEq<D>, 
[src][+]

impl<A, B, C, D, E, F, G, H, I, J> PartialOrd<(A, B, C, D, E, F, G, H, I, J)> for (A, B, C, D, E, F, G, H, I, J) where
    C: PartialOrd<C> + PartialEq<C>,
    F: PartialOrd<F> + PartialEq<F>,
    E: PartialOrd<E> + PartialEq<E>,
    I: PartialOrd<I> + PartialEq<I>,
    G: PartialOrd<G> + PartialEq<G>,
    H: PartialOrd<H> + PartialEq<H>,
    A: PartialOrd<A> + PartialEq<A>,
    B: PartialOrd<B> + PartialEq<B>,
    D: PartialOrd<D> + PartialEq<D>,
    J: PartialOrd<J> + PartialEq<J> + ?Sized
[src][+]

impl<A, B, C, D, E, F, G, H, I, J, K> PartialOrd<(A, B, C, D, E, F, G, H, I, J, K)> for (A, B, C, D, E, F, G, H, I, J, K) where
    C: PartialOrd<C> + PartialEq<C>,
    F: PartialOrd<F> + PartialEq<F>,
    E: PartialOrd<E> + PartialEq<E>,
    I: PartialOrd<I> + PartialEq<I>,
    G: PartialOrd<G> + PartialEq<G>,
    H: PartialOrd<H> + PartialEq<H>,
    A: PartialOrd<A> + PartialEq<A>,
    B: PartialOrd<B> + PartialEq<B>,
    D: PartialOrd<D> + PartialEq<D>,
    J: PartialOrd<J> + PartialEq<J>,
    K: PartialOrd<K> + PartialEq<K> + ?Sized
[src][+]

impl<A, B, C, D, E, F, G, H, I, J, K, L> PartialOrd<(A, B, C, D, E, F, G, H, I, J, K, L)> for (A, B, C, D, E, F, G, H, I, J, K, L) where
    C: PartialOrd<C> + PartialEq<C>,
    F: PartialOrd<F> + PartialEq<F>,
    E: PartialOrd<E> + PartialEq<E>,
    I: PartialOrd<I> + PartialEq<I>,
    G: PartialOrd<G> + PartialEq<G>,
    H: PartialOrd<H> + PartialEq<H>,
    A: PartialOrd<A> + PartialEq<A>,
    B: PartialOrd<B> + PartialEq<B>,
    D: PartialOrd<D> + PartialEq<D>,
    J: PartialOrd<J> + PartialEq<J>,
    K: PartialOrd<K> + PartialEq<K>,
    L: PartialOrd<L> + PartialEq<L> + ?Sized
[src][+]

impl<Ret> PartialOrd<extern "C" fn() -> Ret> for extern "C" fn() -> Ret1.4.0[src][+]

impl<Ret> PartialOrd<fn() -> Ret> for fn() -> Ret1.4.0[src][+]

impl<Ret> PartialOrd<unsafe extern "C" fn() -> Ret> for unsafe extern "C" fn() -> Ret1.4.0[src][+]

impl<Ret> PartialOrd<unsafe fn() -> Ret> for unsafe fn() -> Ret1.4.0[src][+]

impl<Ret, A> PartialOrd<extern "C" fn(A) -> Ret> for extern "C" fn(A) -> Ret1.4.0[src][+]

impl<Ret, A> PartialOrd<extern "C" fn(A, ...) -> Ret> for extern "C" fn(A, ...) -> Ret1.4.0[src][+]

impl<Ret, A> PartialOrd<fn(A) -> Ret> for fn(A) -> Ret1.4.0[src][+]

impl<Ret, A> PartialOrd<unsafe extern "C" fn(A) -> Ret> for unsafe extern "C" fn(A) -> Ret1.4.0[src][+]

impl<Ret, A> PartialOrd<unsafe extern "C" fn(A, ...) -> Ret> for unsafe extern "C" fn(A, ...) -> Ret1.4.0[src][+]

impl<Ret, A> PartialOrd<unsafe fn(A) -> Ret> for unsafe fn(A) -> Ret1.4.0[src][+]

impl<Ret, A, B> PartialOrd<extern "C" fn(A, B) -> Ret> for extern "C" fn(A, B) -> Ret1.4.0[src][+]

impl<Ret, A, B> PartialOrd<extern "C" fn(A, B, ...) -> Ret> for extern "C" fn(A, B, ...) -> Ret1.4.0[src][+]

impl<Ret, A, B> PartialOrd<fn(A, B) -> Ret> for fn(A, B) -> Ret1.4.0[src][+]

impl<Ret, A, B> PartialOrd<unsafe extern "C" fn(A, B) -> Ret> for unsafe extern "C" fn(A, B) -> Ret1.4.0[src][+]

impl<Ret, A, B> PartialOrd<unsafe extern "C" fn(A, B, ...) -> Ret> for unsafe extern "C" fn(A, B, ...) -> Ret1.4.0[src][+]

impl<Ret, A, B> PartialOrd<unsafe fn(A, B) -> Ret> for unsafe fn(A, B) -> Ret1.4.0[src][+]

impl<Ret, A, B, C> PartialOrd<extern "C" fn(A, B, C) -> Ret> for extern "C" fn(A, B, C) -> Ret1.4.0[src][+]

impl<Ret, A, B, C> PartialOrd<extern "C" fn(A, B, C, ...) -> Ret> for extern "C" fn(A, B, C, ...) -> Ret1.4.0[src][+]

impl<Ret, A, B, C> PartialOrd<fn(A, B, C) -> Ret> for fn(A, B, C) -> Ret1.4.0[src][+]

impl<Ret, A, B, C> PartialOrd<unsafe extern "C" fn(A, B, C) -> Ret> for unsafe extern "C" fn(A, B, C) -> Ret1.4.0[src][+]

impl<Ret, A, B, C> PartialOrd<unsafe extern "C" fn(A, B, C, ...) -> Ret> for unsafe extern "C" fn(A, B, C, ...) -> Ret1.4.0[src][+]

impl<Ret, A, B, C> PartialOrd<unsafe fn(A, B, C) -> Ret> for unsafe fn(A, B, C) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D> PartialOrd<extern "C" fn(A, B, C, D) -> Ret> for extern "C" fn(A, B, C, D) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D> PartialOrd<extern "C" fn(A, B, C, D, ...) -> Ret> for extern "C" fn(A, B, C, D, ...) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D> PartialOrd<fn(A, B, C, D) -> Ret> for fn(A, B, C, D) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D> PartialOrd<unsafe extern "C" fn(A, B, C, D) -> Ret> for unsafe extern "C" fn(A, B, C, D) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D> PartialOrd<unsafe extern "C" fn(A, B, C, D, ...) -> Ret> for unsafe extern "C" fn(A, B, C, D, ...) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D> PartialOrd<unsafe fn(A, B, C, D) -> Ret> for unsafe fn(A, B, C, D) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E> PartialOrd<extern "C" fn(A, B, C, D, E) -> Ret> for extern "C" fn(A, B, C, D, E) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E> PartialOrd<extern "C" fn(A, B, C, D, E, ...) -> Ret> for extern "C" fn(A, B, C, D, E, ...) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E> PartialOrd<fn(A, B, C, D, E) -> Ret> for fn(A, B, C, D, E) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E> PartialOrd<unsafe extern "C" fn(A, B, C, D, E) -> Ret> for unsafe extern "C" fn(A, B, C, D, E) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E> PartialOrd<unsafe extern "C" fn(A, B, C, D, E, ...) -> Ret> for unsafe extern "C" fn(A, B, C, D, E, ...) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E> PartialOrd<unsafe fn(A, B, C, D, E) -> Ret> for unsafe fn(A, B, C, D, E) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F> PartialOrd<extern "C" fn(A, B, C, D, E, F) -> Ret> for extern "C" fn(A, B, C, D, E, F) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F> PartialOrd<extern "C" fn(A, B, C, D, E, F, ...) -> Ret> for extern "C" fn(A, B, C, D, E, F, ...) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F> PartialOrd<fn(A, B, C, D, E, F) -> Ret> for fn(A, B, C, D, E, F) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F> PartialOrd<unsafe extern "C" fn(A, B, C, D, E, F) -> Ret> for unsafe extern "C" fn(A, B, C, D, E, F) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F> PartialOrd<unsafe extern "C" fn(A, B, C, D, E, F, ...) -> Ret> for unsafe extern "C" fn(A, B, C, D, E, F, ...) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F> PartialOrd<unsafe fn(A, B, C, D, E, F) -> Ret> for unsafe fn(A, B, C, D, E, F) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F, G> PartialOrd<extern "C" fn(A, B, C, D, E, F, G) -> Ret> for extern "C" fn(A, B, C, D, E, F, G) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F, G> PartialOrd<extern "C" fn(A, B, C, D, E, F, G, ...) -> Ret> for extern "C" fn(A, B, C, D, E, F, G, ...) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F, G> PartialOrd<fn(A, B, C, D, E, F, G) -> Ret> for fn(A, B, C, D, E, F, G) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F, G> PartialOrd<unsafe extern "C" fn(A, B, C, D, E, F, G) -> Ret> for unsafe extern "C" fn(A, B, C, D, E, F, G) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F, G> PartialOrd<unsafe extern "C" fn(A, B, C, D, E, F, G, ...) -> Ret> for unsafe extern "C" fn(A, B, C, D, E, F, G, ...) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F, G> PartialOrd<unsafe fn(A, B, C, D, E, F, G) -> Ret> for unsafe fn(A, B, C, D, E, F, G) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F, G, H> PartialOrd<extern "C" fn(A, B, C, D, E, F, G, H) -> Ret> for extern "C" fn(A, B, C, D, E, F, G, H) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F, G, H> PartialOrd<extern "C" fn(A, B, C, D, E, F, G, H, ...) -> Ret> for extern "C" fn(A, B, C, D, E, F, G, H, ...) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F, G, H> PartialOrd<fn(A, B, C, D, E, F, G, H) -> Ret> for fn(A, B, C, D, E, F, G, H) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F, G, H> PartialOrd<unsafe extern "C" fn(A, B, C, D, E, F, G, H) -> Ret> for unsafe extern "C" fn(A, B, C, D, E, F, G, H) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F, G, H> PartialOrd<unsafe extern "C" fn(A, B, C, D, E, F, G, H, ...) -> Ret> for unsafe extern "C" fn(A, B, C, D, E, F, G, H, ...) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F, G, H> PartialOrd<unsafe fn(A, B, C, D, E, F, G, H) -> Ret> for unsafe fn(A, B, C, D, E, F, G, H) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F, G, H, I> PartialOrd<extern "C" fn(A, B, C, D, E, F, G, H, I) -> Ret> for extern "C" fn(A, B, C, D, E, F, G, H, I) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F, G, H, I> PartialOrd<extern "C" fn(A, B, C, D, E, F, G, H, I, ...) -> Ret> for extern "C" fn(A, B, C, D, E, F, G, H, I, ...) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F, G, H, I> PartialOrd<fn(A, B, C, D, E, F, G, H, I) -> Ret> for fn(A, B, C, D, E, F, G, H, I) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F, G, H, I> PartialOrd<unsafe extern "C" fn(A, B, C, D, E, F, G, H, I) -> Ret> for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F, G, H, I> PartialOrd<unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, ...) -> Ret> for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, ...) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F, G, H, I> PartialOrd<unsafe fn(A, B, C, D, E, F, G, H, I) -> Ret> for unsafe fn(A, B, C, D, E, F, G, H, I) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F, G, H, I, J> PartialOrd<extern "C" fn(A, B, C, D, E, F, G, H, I, J) -> Ret> for extern "C" fn(A, B, C, D, E, F, G, H, I, J) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F, G, H, I, J> PartialOrd<extern "C" fn(A, B, C, D, E, F, G, H, I, J, ...) -> Ret> for extern "C" fn(A, B, C, D, E, F, G, H, I, J, ...) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F, G, H, I, J> PartialOrd<fn(A, B, C, D, E, F, G, H, I, J) -> Ret> for fn(A, B, C, D, E, F, G, H, I, J) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F, G, H, I, J> PartialOrd<unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J) -> Ret> for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F, G, H, I, J> PartialOrd<unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, ...) -> Ret> for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, ...) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F, G, H, I, J> PartialOrd<unsafe fn(A, B, C, D, E, F, G, H, I, J) -> Ret> for unsafe fn(A, B, C, D, E, F, G, H, I, J) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F, G, H, I, J, K> PartialOrd<extern "C" fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret> for extern "C" fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F, G, H, I, J, K> PartialOrd<extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, ...) -> Ret> for extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, ...) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F, G, H, I, J, K> PartialOrd<fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret> for fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F, G, H, I, J, K> PartialOrd<unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret> for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F, G, H, I, J, K> PartialOrd<unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, ...) -> Ret> for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, ...) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F, G, H, I, J, K> PartialOrd<unsafe fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret> for unsafe fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> PartialOrd<extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Ret> for extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> PartialOrd<extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L, ...) -> Ret> for extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L, ...) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> PartialOrd<fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Ret> for fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> PartialOrd<unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Ret> for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> PartialOrd<unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L, ...) -> Ret> for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L, ...) -> Ret1.4.0[src][+]

impl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> PartialOrd<unsafe fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Ret> for unsafe fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Ret1.4.0[src][+]

impl<T> PartialOrd<*const T> for *const T where
    T: ?Sized
[src][+]

impl<T> PartialOrd<*mut T> for *mut T where
    T: ?Sized
[src][+]

impl<T> PartialOrd<Option<T>> for Option<T> where
    T: PartialOrd<T>, 
[src][+]

impl<T> PartialOrd<Reverse<T>> for Reverse<T> where
    T: PartialOrd<T>, 
1.19.0[src][+]

impl<T> PartialOrd<ManuallyDrop<T>> for ManuallyDrop<T> where
    T: PartialOrd<T> + ?Sized
1.20.0[src][+]

impl<T> PartialOrd<[T]> for [T] where
    T: PartialOrd<T>, 
[src][+]

Implements comparison of vectors lexicographically.

impl<T, E> PartialOrd<Result<T, E>> for Result<T, E> where
    E: PartialOrd<E>,
    T: PartialOrd<T>, 
[src][+]

impl<T, const N: usize> PartialOrd<[T; N]> for [T; N] where
    T: PartialOrd<T>, 
[src][+]

impl<Y, R> PartialOrd<GeneratorState<Y, R>> for GeneratorState<Y, R> where
    R: PartialOrd<R>,
    Y: PartialOrd<Y>, 
[src][+]

impl PartialOrd<Point> for Point

impl PartialOrd<Sides> for Sides

impl PartialOrd<BigEndian> for BigEndian

impl PartialOrd<LittleEndian> for LittleEndian

impl<'g, T: ?Sized + Pointable> PartialOrd<Shared<'g, T>> for Shared<'g, T>

impl PartialOrd<Compression> for Compression

impl PartialOrd<MatchingType> for MatchingType

impl PartialOrd<FrontFace> for FrontFace

impl PartialOrd<Offset> for Offset

impl PartialOrd<CullFace> for CullFace

impl PartialOrd<RasterMethod> for RasterMethod

impl PartialOrd<MultiSample> for MultiSample

impl PartialOrd<Rasterizer> for Rasterizer

impl PartialOrd<Comparison> for Comparison

impl PartialOrd<StencilOp> for StencilOp

impl PartialOrd<StencilSide> for StencilSide

impl PartialOrd<Stencil> for Stencil

impl PartialOrd<Depth> for Depth

impl PartialOrd<Equation> for Equation

impl PartialOrd<BlendValue> for BlendValue

impl PartialOrd<Factor> for Factor

impl PartialOrd<BlendChannel> for BlendChannel

impl PartialOrd<Blend> for Blend

impl PartialOrd<ColorMask> for ColorMask

impl PartialOrd<Color> for Color

impl PartialOrd<RefValues> for RefValues

impl PartialOrd<Rect> for Rect

impl PartialOrd<Mirror> for Mirror

impl<L: PartialOrd, R: PartialOrd> PartialOrd<Either<L, R>> for Either<L, R>

impl PartialOrd<ClearColor> for ClearColor

impl PartialOrd<ChannelType> for ChannelType

impl PartialOrd<Int> for Int

impl PartialOrd<Uint> for Uint

impl PartialOrd<Inorm> for Inorm

impl PartialOrd<Unorm> for Unorm

impl PartialOrd<Float> for Float

impl PartialOrd<Srgb> for Srgb

impl PartialOrd<SurfaceType> for SurfaceType

impl PartialOrd<R4_G4> for R4_G4

impl PartialOrd<R4_G4_B4_A4> for R4_G4_B4_A4

impl PartialOrd<R5_G5_B5_A1> for R5_G5_B5_A1

impl PartialOrd<R5_G6_B5> for R5_G6_B5

impl PartialOrd<R8> for R8

impl PartialOrd<R8_G8> for R8_G8

impl PartialOrd<R8_G8_B8_A8> for R8_G8_B8_A8

impl PartialOrd<R10_G10_B10_A2> for R10_G10_B10_A2

impl PartialOrd<R11_G11_B10> for R11_G11_B10

impl PartialOrd<R16> for R16

impl PartialOrd<R16_G16> for R16_G16

impl PartialOrd<R16_G16_B16> for R16_G16_B16

impl PartialOrd<R16_G16_B16_A16> for R16_G16_B16_A16

impl PartialOrd<R32> for R32

impl PartialOrd<R32_G32> for R32_G32

impl PartialOrd<R32_G32_B32> for R32_G32_B32

impl PartialOrd<R32_G32_B32_A32> for R32_G32_B32_A32

impl PartialOrd<B8_G8_R8_A8> for B8_G8_R8_A8

impl PartialOrd<D16> for D16

impl PartialOrd<D24> for D24

impl PartialOrd<D24_S8> for D24_S8

impl PartialOrd<D32> for D32

impl PartialOrd<BC1_R8_G8_B8> for BC1_R8_G8_B8

impl PartialOrd<BC3_R8_G8_B8_A8> for BC3_R8_G8_B8_A8

impl PartialOrd<ChannelSource> for ChannelSource

impl PartialOrd<Swizzle> for Swizzle

impl PartialOrd<Format> for Format

impl PartialOrd<U8Norm> for U8Norm

impl PartialOrd<I8Norm> for I8Norm

impl PartialOrd<U16Norm> for U16Norm

impl PartialOrd<I16Norm> for I16Norm

impl PartialOrd<F16> for F16

impl PartialOrd<Usage> for Usage

impl PartialOrd<Access> for Access

impl PartialOrd<Bind> for Bind

impl PartialOrd<UniformValue> for UniformValue

impl PartialOrd<Usage> for Usage

impl PartialOrd<AaMode> for AaMode

impl PartialOrd<FilterMethod> for FilterMethod

impl PartialOrd<CubeFace> for CubeFace

impl PartialOrd<Kind> for Kind

impl PartialOrd<Mipmap> for Mipmap

impl<F: PartialOrd> PartialOrd<ImageInfoCommon<F>> for ImageInfoCommon<F>

impl<T: PartialOrd> PartialOrd<TextureCopyRegion<T>> for TextureCopyRegion<T>

impl PartialOrd<WrapMode> for WrapMode

impl PartialOrd<Lod> for Lod

impl PartialOrd<PackedColor> for PackedColor

impl PartialOrd<SamplerInfo> for SamplerInfo

impl PartialOrd<Info> for Info

impl PartialOrd<ResourceDesc> for ResourceDesc

impl PartialOrd<RenderDesc> for RenderDesc

impl PartialOrd<DepthStencilFlags> for DepthStencilFlags

impl PartialOrd<DepthStencilDesc> for DepthStencilDesc

impl PartialOrd<IndexType> for IndexType

impl PartialOrd<DrawState> for DrawState

impl PartialOrd<Blend> for Blend

impl PartialOrd<Stencil> for Stencil

impl PartialOrd<Version> for Version

impl PartialOrd<NormalForm> for NormalForm

impl PartialOrd<Delay> for Delay

impl PartialOrd<ControllerButton> for ControllerButton

impl PartialOrd<ControllerHat> for ControllerHat

impl PartialOrd<ControllerAxisArgs> for ControllerAxisArgs

impl PartialOrd<ModifierKey> for ModifierKey

impl PartialOrd<Key> for Key

impl PartialOrd<MouseButton> for MouseButton

impl PartialOrd<EventId> for EventId

impl PartialOrd<AfterRenderArgs> for AfterRenderArgs

impl PartialOrd<ButtonState> for ButtonState

impl PartialOrd<ButtonArgs> for ButtonArgs

impl PartialOrd<CloseArgs> for CloseArgs

impl PartialOrd<IdleArgs> for IdleArgs

impl PartialOrd<RenderArgs> for RenderArgs

impl PartialOrd<ResizeArgs> for ResizeArgs

impl PartialOrd<Touch> for Touch

impl PartialOrd<TouchArgs> for TouchArgs

impl PartialOrd<UpdateArgs> for UpdateArgs

impl PartialOrd<Button> for Button

impl PartialOrd<Motion> for Motion

impl PartialOrd<HatState> for HatState

impl PartialOrd<FileDrag> for FileDrag

impl PartialOrd<Input> for Input

impl PartialOrd<Loop> for Loop

impl PartialOrd<Event> for Event

impl PartialOrd<Level> for Level

impl PartialOrd<LevelFilter> for Level

impl PartialOrd<LevelFilter> for LevelFilter

impl PartialOrd<Level> for LevelFilter

impl<'a> PartialOrd<Metadata<'a>> for Metadata<'a>

impl<'a> PartialOrd<MetadataBuilder<'a>> for MetadataBuilder<'a>

impl PartialOrd<PollOpt> for PollOpt

impl PartialOrd<Ready> for Ready

impl PartialOrd<UnixReady> for UnixReady

impl PartialOrd<Token> for Token

impl PartialOrd<AtFlags> for AtFlags

impl PartialOrd<OFlag> for OFlag

impl PartialOrd<SealFlag> for SealFlag

impl PartialOrd<FdFlag> for FdFlag

impl PartialOrd<SpliceFFlags> for SpliceFFlags

impl PartialOrd<FallocateFlags> for FallocateFlags

impl PartialOrd<PosixFadviseAdvice> for PosixFadviseAdvice

impl PartialOrd<ModuleInitFlags> for ModuleInitFlags

impl PartialOrd<DeleteModuleFlags> for DeleteModuleFlags

impl PartialOrd<MsFlags> for MsFlags

impl PartialOrd<MntFlags> for MntFlags

impl PartialOrd<MQ_OFlag> for MQ_OFlag

impl PartialOrd<FdFlag> for FdFlag

impl PartialOrd<InterfaceFlags> for InterfaceFlags

impl PartialOrd<PollFlags> for PollFlags

impl PartialOrd<CloneFlags> for CloneFlags

impl PartialOrd<AioFsyncMode> for AioFsyncMode

impl PartialOrd<LioOpcode> for LioOpcode

impl PartialOrd<LioMode> for LioMode

impl PartialOrd<EpollFlags> for EpollFlags

impl PartialOrd<EpollCreateFlags> for EpollCreateFlags

impl PartialOrd<EfdFlags> for EfdFlags

impl PartialOrd<MemFdCreateFlag> for MemFdCreateFlag

impl PartialOrd<ProtFlags> for ProtFlags

impl PartialOrd<MapFlags> for MapFlags

impl PartialOrd<MRemapFlags> for MRemapFlags

impl PartialOrd<MmapAdvise> for MmapAdvise

impl PartialOrd<MsFlags> for MsFlags

impl PartialOrd<MlockAllFlags> for MlockAllFlags

impl PartialOrd<Persona> for Persona

impl PartialOrd<Request> for Request

impl PartialOrd<Event> for Event

impl PartialOrd<Options> for Options

impl PartialOrd<QuotaType> for QuotaType

impl PartialOrd<QuotaFmt> for QuotaFmt

impl PartialOrd<QuotaValidFlags> for QuotaValidFlags

impl PartialOrd<RebootMode> for RebootMode

impl PartialOrd<Signal> for Signal

impl PartialOrd<SaFlags> for SaFlags

impl PartialOrd<SigmaskHow> for SigmaskHow

impl PartialOrd<SfdFlags> for SfdFlags

impl PartialOrd<SockFlag> for SockFlag

impl PartialOrd<MsgFlags> for MsgFlags

impl PartialOrd<SFlag> for SFlag

impl PartialOrd<Mode> for Mode

impl PartialOrd<FsFlags> for FsFlags

impl PartialOrd<BaudRate> for BaudRate

impl PartialOrd<SetArg> for SetArg

impl PartialOrd<FlushArg> for FlushArg

impl PartialOrd<FlowArg> for FlowArg

impl PartialOrd<SpecialCharacterIndices> for SpecialCharacterIndices

impl PartialOrd<InputFlags> for InputFlags

impl PartialOrd<OutputFlags> for OutputFlags

impl PartialOrd<ControlFlags> for ControlFlags

impl PartialOrd<LocalFlags> for LocalFlags

impl PartialOrd<TimeSpec> for TimeSpec

impl PartialOrd<TimeVal> for TimeVal

impl PartialOrd<WaitPidFlag> for WaitPidFlag

impl PartialOrd<AddWatchFlags> for AddWatchFlags

impl PartialOrd<InitFlags> for InitFlags

impl PartialOrd<WatchDescriptor> for WatchDescriptor

impl PartialOrd<ClockId> for ClockId

impl PartialOrd<TimerFlags> for TimerFlags

impl PartialOrd<TimerSetTimeFlags> for TimerSetTimeFlags

impl PartialOrd<ClockId> for ClockId

impl PartialOrd<Pid> for Pid

impl PartialOrd<AccessFlags> for AccessFlags

impl<T: Clone + Integer> PartialOrd<Ratio<T>> for Ratio<T>

impl PartialOrd<Transformations> for Transformations

impl PartialOrd<Ident> for Ident

impl<N: PartialOrd> PartialOrd<Point<N>> for Point<N>

impl<N: PartialOrd> PartialOrd<Vector<N>> for Vector<N>

impl<N: PartialOrd> PartialOrd<Rect<N>> for Rect<N>

impl PartialOrd<GlyphId> for GlyphId

impl PartialOrd<HMetrics> for HMetrics

impl PartialOrd<VMetrics> for VMetrics

impl PartialOrd<Scale> for Scale

impl PartialOrd<OpenGL> for OpenGL

impl PartialOrd<GLSL> for GLSL

impl<A: Array> PartialOrd<SmallVec<A>> for SmallVec<A> where
    A::Item: PartialOrd

impl PartialOrd<Lifetime> for Lifetime

impl PartialOrd<Width> for Width

impl PartialOrd<GlyphId> for GlyphId

impl PartialOrd<Tag> for Tag

impl PartialOrd<DndAction> for DndAction

impl PartialOrd<Resize> for Resize

impl PartialOrd<Transient> for Transient

impl PartialOrd<Capability> for Capability

impl PartialOrd<Mode> for Mode

impl PartialOrd<ContentHint> for ContentHint

impl PartialOrd<Anchor> for Anchor

impl PartialOrd<Gravity> for Gravity

impl PartialOrd<ConstraintAdjustment> for ConstraintAdjustment

impl PartialOrd<Anchor> for Anchor

impl PartialOrd<Flags> for Flags

impl PartialOrd<Kind> for Kind

impl PartialOrd<ConstraintAdjustment> for ConstraintAdjustment

impl PartialOrd<DeviceId> for DeviceId

impl PartialOrd<VirtualKeyCode> for VirtualKeyCode

impl PartialOrd<ModifiersState> for ModifiersState

impl PartialOrd<VideoMode> for VideoMode

impl PartialOrd<MonitorHandle> for MonitorHandle

impl PartialOrd<WindowId> for WindowId