Trait IntAdd

Source
pub trait IntAdd<B: Int>: Int {
    type Output: Int;
}
Expand description

Integer addition. Used as Add<X, Y> or <X as IntAdd<Y>>::Output.

Required Associated Types§

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl IntAdd<Term> for Term

Source§

impl IntAdd<Term> for Undefined

Source§

impl IntAdd<Undefined> for Term

Source§

impl IntAdd<Undefined> for Undefined

Source§

impl<M, N: Int> IntAdd<Minus<N>> for Minus<M>
where <M as IntAdd<N>>::Output: IntAdd<Minus>, M: IntAdd<N> + Int,

Source§

type Output = Plus<<<M as IntAdd<N>>::Output as IntAdd<Minus>>::Output>

Source§

impl<M, N: Int> IntAdd<Minus<N>> for Plus<M>
where Zero<<M as IntAdd<N>>::Output>: Unique, M: IntAdd<N> + Int,

Source§

type Output = <Zero<<M as IntAdd<N>>::Output> as Unique>::Output

Source§

impl<M, N: Int> IntAdd<Minus<N>> for Zero<M>
where M: IntAdd<N> + Int,

Source§

type Output = Minus<<M as IntAdd<N>>::Output>

Source§

impl<M, N: Int> IntAdd<Plus<N>> for Minus<M>
where Zero<<M as IntAdd<N>>::Output>: Unique, M: IntAdd<N> + Int,

Source§

type Output = <Zero<<M as IntAdd<N>>::Output> as Unique>::Output

Source§

impl<M, N: Int> IntAdd<Plus<N>> for Plus<M>
where <M as IntAdd<N>>::Output: IntSucc, M: IntAdd<N> + Int,

Source§

type Output = Minus<<<M as IntAdd<N>>::Output as IntSucc>::Output>

Source§

impl<M, N: Int> IntAdd<Plus<N>> for Zero<M>
where M: IntAdd<N> + Int,

Source§

type Output = Plus<<M as IntAdd<N>>::Output>

Source§

impl<M, N: Int> IntAdd<Zero<N>> for Minus<M>
where M: IntAdd<N> + Int,

Source§

type Output = Minus<<M as IntAdd<N>>::Output>

Source§

impl<M, N: Int> IntAdd<Zero<N>> for Plus<M>
where M: IntAdd<N> + Int,

Source§

type Output = Plus<<M as IntAdd<N>>::Output>

Source§

impl<M, N: Int> IntAdd<Zero<N>> for Zero<M>
where Zero<<M as IntAdd<N>>::Output>: Unique, M: IntAdd<N> + Int,

Source§

type Output = <Zero<<M as IntAdd<N>>::Output> as Unique>::Output

Source§

impl<N: Int> IntAdd<Minus<N>> for Term

Source§

impl<N: Int> IntAdd<Minus<N>> for Undefined

Source§

impl<N: Int> IntAdd<Plus<N>> for Term

Source§

impl<N: Int> IntAdd<Plus<N>> for Undefined

Source§

impl<N: Int> IntAdd<Term> for Minus<N>

Source§

impl<N: Int> IntAdd<Term> for Plus<N>

Source§

impl<N: Int> IntAdd<Term> for Zero<N>
where Zero<N>: Unique,

Source§

impl<N: Int> IntAdd<Undefined> for Minus<N>

Source§

impl<N: Int> IntAdd<Undefined> for Plus<N>

Source§

impl<N: Int> IntAdd<Undefined> for Zero<N>

Source§

impl<N: Int> IntAdd<Zero<N>> for Term
where Zero<N>: Unique,

Source§

impl<N: Int> IntAdd<Zero<N>> for Undefined