Trait Equals

Source
pub trait Equals<T: Nat> {
    type Result: Bool;
}
Expand description

§Equality testing

type TwoPlusTwo = <Two as Plus<Two>>::Result;
type IsFour = <TwoPlusTwo as Equals<Four>>::Result;
assert_eq!(IsFour::eval(), true);
type MinusOne = <TwoPlusTwo as Minus<One>>::Result;
type ThatsThree = <MinusOne as Equals<Three>>::Result;
assert_eq!(ThatsThree::eval(), true); // quick maffs

assert_eq!(<Zero as Equals<One>>::Result::eval(), false);

Required Associated Types§

Implementors§

Source§

impl Equals<Zero> for Zero

Source§

impl<T, U: Nat> Equals<Succ<T>> for Succ<U>
where T: Equals<U> + Nat,

Source§

type Result = <T as Equals<U>>::Result

Source§

impl<T: Nat> Equals<Succ<T>> for Zero

Source§

impl<T: Nat> Equals<Zero> for Succ<T>