Struct compare::Natural [] [src]

pub struct Natural<T: Ord + ?Sized>(_);

A comparator that delegates to Ord.

Examples

use compare::{Compare, natural};
use std::cmp::Ordering::{Less, Equal, Greater};

let a = &1;
let b = &2;

let cmp = natural();
assert_eq!(cmp.compare(a, b), Less);
assert_eq!(cmp.compare(b, a), Greater);
assert_eq!(cmp.compare(a, a), Equal);

Trait Implementations

impl<T: Ord + ?Sized> Compare<T> for Natural<T>
[src]

fn compare(&self, l: &T, r: &T) -> Ordering

Compares two values, returning Less, Equal, or Greater if l is less than, equal to, or greater than r, respectively. Read more

fn compares_lt(&self, l: &T, r: &T) -> bool

Checks if l is less than r.

fn compares_le(&self, l: &T, r: &T) -> bool

Checks if l is less than or equal to r.

fn compares_ge(&self, l: &T, r: &T) -> bool

Checks if l is greater than or equal to r.

fn compares_gt(&self, l: &T, r: &T) -> bool

Checks if l is greater than r.

fn compares_eq(&self, l: &T, r: &T) -> bool

Checks if l is equal to r.

fn compares_ne(&self, l: &T, r: &T) -> bool

Checks if l is not equal to r.

fn borrowing(self) -> Borrowing<Self, L, R> where Self: Sized

Borrows the comparator's parameters before comparing them. Read more

fn rev(self) -> Rev<Self> where Self: Sized

Reverses the ordering of the comparator. Read more

fn swap(self) -> Swap<Self> where Self: Sized

Swaps the comparator's parameters, maintaining the underlying ordering. Read more

fn then<D>(self, then: D) -> Then<Self, D> where D: Compare<L, R>, Self: Sized

Lexicographically combines the comparator with another. Read more

impl<T: Ord + ?Sized> Clone for Natural<T>
[src]

fn clone(&self) -> Self

Returns a copy of the value. Read more

fn clone_from(&mut self, source: &Self)
1.0.0

Performs copy-assignment from source. Read more

impl<T: Ord + ?Sized> Copy for Natural<T>
[src]

impl<T: Ord + ?Sized> Default for Natural<T>
[src]

fn default() -> Self

Returns the "default value" for a type. Read more

impl<T: Ord + ?Sized> PartialEq for Natural<T>
[src]

fn eq(&self, _other: &Self) -> bool

This method tests for self and other values to be equal, and is used by ==. Read more

fn ne(&self, other: &Rhs) -> bool
1.0.0

This method tests for !=.

impl<T: Ord + ?Sized> Eq for Natural<T>
[src]

impl<T: Ord + ?Sized> Debug for Natural<T>
[src]

fn fmt(&self, f: &mut Formatter) -> Result

Formats the value using the given formatter.