Trait libipld::cid::multihash::typenum::type_operators::Max[]

pub trait Max<Rhs = Self> {
    type Output;
    fn max(self, rhs: Rhs) -> Self::Output;
}
Expand description

A type operator that returns the maximum of Self and Rhs.

Associated Types

type Output

The type of the maximum of Self and Rhs

Required methods

fn max(self, rhs: Rhs) -> Self::Output

Method returning the maximum

Implementors

impl Max<B0> for B0

type Output = B0

pub fn max(self, B0) -> B0

impl Max<B0> for B1

type Output = B1

pub fn max(self, B0) -> B1

impl Max<B1> for B0

type Output = B1

pub fn max(self, rhs: B1) -> B1

impl Max<B1> for B1

type Output = B1

pub fn max(self, B1) -> B1

impl Max<Z0> for Z0

type Output = Z0

pub fn max(self, Z0) -> <Z0 as Max<Z0>>::Output

impl<U> Max<NInt<U>> for Z0 where
    U: Unsigned + NonZero

type Output = Z0

pub fn max(self, NInt<U>) -> <Z0 as Max<NInt<U>>>::Output

impl<U> Max<PInt<U>> for Z0 where
    U: Unsigned + NonZero

type Output = PInt<U>

pub fn max(self, rhs: PInt<U>) -> <Z0 as Max<PInt<U>>>::Output

impl<U> Max<Z0> for NInt<U> where
    U: Unsigned + NonZero

type Output = Z0

pub fn max(self, rhs: Z0) -> <NInt<U> as Max<Z0>>::Output

impl<U> Max<Z0> for PInt<U> where
    U: Unsigned + NonZero

type Output = PInt<U>

pub fn max(self, Z0) -> <PInt<U> as Max<Z0>>::Output

impl<U> Max<U> for UTerm where
    U: Unsigned

type Output = U

pub fn max(self, rhs: U) -> <UTerm as Max<U>>::Output

impl<U, B, Ur> Max<Ur> for UInt<U, B> where
    U: Unsigned,
    B: Bit,
    Ur: Unsigned,
    UInt<U, B>: Cmp<Ur>,
    UInt<U, B>: PrivateMax<Ur, <UInt<U, B> as Cmp<Ur>>::Output>, 

type Output = <UInt<U, B> as PrivateMax<Ur, <UInt<U, B> as Cmp<Ur>>::Output>>::Output

pub fn max(self, rhs: Ur) -> <UInt<U, B> as Max<Ur>>::Output

impl<Ul, Ur> Max<NInt<Ur>> for NInt<Ul> where
    Ul: Unsigned + NonZero + Min<Ur>,
    Ur: Unsigned + NonZero,
    <Ul as Min<Ur>>::Output: Unsigned,
    <Ul as Min<Ur>>::Output: NonZero

type Output = NInt<<Ul as Min<Ur>>::Output>

pub fn max(self, rhs: NInt<Ur>) -> <NInt<Ul> as Max<NInt<Ur>>>::Output

impl<Ul, Ur> Max<NInt<Ur>> for PInt<Ul> where
    Ul: Unsigned + NonZero,
    Ur: Unsigned + NonZero

type Output = PInt<Ul>

pub fn max(self, NInt<Ur>) -> <PInt<Ul> as Max<NInt<Ur>>>::Output

impl<Ul, Ur> Max<PInt<Ur>> for NInt<Ul> where
    Ul: Unsigned + NonZero,
    Ur: Unsigned + NonZero

type Output = PInt<Ur>

pub fn max(self, rhs: PInt<Ur>) -> <NInt<Ul> as Max<PInt<Ur>>>::Output

impl<Ul, Ur> Max<PInt<Ur>> for PInt<Ul> where
    Ul: Unsigned + NonZero + Max<Ur>,
    Ur: Unsigned + NonZero,
    <Ul as Max<Ur>>::Output: Unsigned,
    <Ul as Max<Ur>>::Output: NonZero

type Output = PInt<<Ul as Max<Ur>>::Output>

pub fn max(self, rhs: PInt<Ur>) -> <PInt<Ul> as Max<PInt<Ur>>>::Output