Module typenum::operator_aliases[][src]

Expand description

Aliases for the type operators used in this crate. Their purpose is to increase the ergonomics of performing operations on the types defined here. For even more ergonomics, consider using the op! macro instead.

For example, type X and type Y are the same here:

use std::ops::Mul;
use typenum::{Prod, P5, P7};

type X = <P7 as Mul<P5>>::Output;
type Y = Prod<P7, P5>;

assert_type_eq!(X, Y);

Type Definitions

Alias for the associated type of Abs: AbsVal<A> = <A as Abs>::Output

Alias to make it easy to add 1: Add1<A> = <A as Add<B1>>::Output

Alias for the associated type of BitAnd: And<A, B> = <A as BitAnd<B>>::Output

Alias for the associated type of Cmp: Compare<A, B> = <A as Cmp<B>>::Output

Alias to make it easy to cube. Cube<A> = <Square<A> as Mul<A>>::Output

Alias for the associated type of Sub: Diff<A, B> = <A as Sub<B>>::Output

Alias to make it easy to multiply by 2. Double<A> = Shleft<A, B1>

Alias for the associated type of IsEqual: Eq<A, B> = <A as IsEqual<B>>::Output

Alias for the associated type of Pow: Exp<A, B> = <A as Pow<B>>::Output

Alias for the associated type of Gcd: Gcf<A, B> = <A as Gcd<B>>::Output>

Alias for the associated type of IsGreater: Gr<A, B> = <A as IsGreater<B>>::Output

Alias for the associated type of IsGreaterOrEqual: GrEq<A, B> = <A as IsGreaterOrEqual<B>>::Output

Alias for the associated type of IsLess: Le<A, B> = <A as IsLess<B>>::Output

Alias for the associated type of IsLessOrEqual: LeEq<A, B> = <A as IsLessOrEqual<B>>::Output

Alias for the associated type of Len: Length<A> = <A as Len>::Output

Alias for the associated type of Logarithm2: Log2<A> = <A as Logarithm2>::Output

Alias for the associated type of Max: Maximum<A, B> = <A as Max<B>>::Output

Alias for the associated type of Min: Minimum<A, B> = <A as Min<B>>::Output

Alias for the associated type of Rem: Mod<A, B> = <A as Rem<B>>::Output

Alias for the associated type of Neg: Negate<A> = <A as Neg>::Output

Alias for the associated type of IsNotEqual: NotEq<A, B> = <A as IsNotEqual<B>>::Output

Alias for the associated type of BitOr: Or<A, B> = <A as BitOr<B>>::Output

Alias for the associated type of PartialDiv: PartialQuot<A, B> = <A as PartialDiv<B>>::Output

Alias for the associated type of Mul: Prod<A, B> = <A as Mul<B>>::Output

Alias for the associated type of Div: Quot<A, B> = <A as Div<B>>::Output

Alias for the associated type of Shl: Shleft<A, B> = <A as Shl<B>>::Output

Alias for the associated type of Shr: Shright<A, B> = <A as Shr<B>>::Output

Alias for the associated type of SquareRoot: Sqrt<A> = <A as SquareRoot>::Output

Alias to make it easy to square. Square<A> = <A as Mul<A>>::Output

Alias to make it easy to subtract 1: Sub1<A> = <A as Sub<B1>>::Output

Alias for the associated type of Add: Sum<A, B> = <A as Add<B>>::Output

Alias for the associated type of BitXor: Xor<A, B> = <A as BitXor<B>>::Output