Trait Commutative

Source
pub trait Commutative<N>: Operation<N> { }
Expand description

A marker trait that specifies that an Operation is commutative, that is: combine(a, b) = combine(b, a).

Implementors§

Source§

impl Commutative<f32> for Add

Source§

impl Commutative<f32> for MaxIgnoreNaN

Source§

impl Commutative<f32> for MaxTakeNaN

Source§

impl Commutative<f32> for MinIgnoreNaN

Source§

impl Commutative<f32> for MinTakeNaN

Source§

impl Commutative<f32> for Mul

Source§

impl Commutative<f64> for Add

Source§

impl Commutative<f64> for MaxIgnoreNaN

Source§

impl Commutative<f64> for MaxTakeNaN

Source§

impl Commutative<f64> for MinIgnoreNaN

Source§

impl Commutative<f64> for MinTakeNaN

Source§

impl Commutative<f64> for Mul

Source§

impl Commutative<i8> for Add

Source§

impl Commutative<i8> for And

Source§

impl Commutative<i8> for Max

Source§

impl Commutative<i8> for Min

Source§

impl Commutative<i8> for Mul

Source§

impl Commutative<i8> for Or

Source§

impl Commutative<i8> for Xor

Source§

impl Commutative<i16> for Add

Source§

impl Commutative<i16> for And

Source§

impl Commutative<i16> for Max

Source§

impl Commutative<i16> for Min

Source§

impl Commutative<i16> for Mul

Source§

impl Commutative<i16> for Or

Source§

impl Commutative<i16> for Xor

Source§

impl Commutative<i32> for Add

Source§

impl Commutative<i32> for And

Source§

impl Commutative<i32> for Max

Source§

impl Commutative<i32> for Min

Source§

impl Commutative<i32> for Mul

Source§

impl Commutative<i32> for Or

Source§

impl Commutative<i32> for Xor

Source§

impl Commutative<i64> for Add

Source§

impl Commutative<i64> for And

Source§

impl Commutative<i64> for Max

Source§

impl Commutative<i64> for Min

Source§

impl Commutative<i64> for Mul

Source§

impl Commutative<i64> for Or

Source§

impl Commutative<i64> for Xor

Source§

impl Commutative<i128> for Add

Source§

impl Commutative<i128> for And

Source§

impl Commutative<i128> for Max

Source§

impl Commutative<i128> for Min

Source§

impl Commutative<i128> for Mul

Source§

impl Commutative<i128> for Or

Source§

impl Commutative<i128> for Xor

Source§

impl Commutative<isize> for Add

Source§

impl Commutative<isize> for And

Source§

impl Commutative<isize> for Max

Source§

impl Commutative<isize> for Min

Source§

impl Commutative<isize> for Mul

Source§

impl Commutative<isize> for Or

Source§

impl Commutative<isize> for Xor

Source§

impl Commutative<u8> for Add

Source§

impl Commutative<u8> for And

Source§

impl Commutative<u8> for Max

Source§

impl Commutative<u8> for Min

Source§

impl Commutative<u8> for Mul

Source§

impl Commutative<u8> for Or

Source§

impl Commutative<u8> for Xor

Source§

impl Commutative<u16> for Add

Source§

impl Commutative<u16> for And

Source§

impl Commutative<u16> for Max

Source§

impl Commutative<u16> for Min

Source§

impl Commutative<u16> for Mul

Source§

impl Commutative<u16> for Or

Source§

impl Commutative<u16> for Xor

Source§

impl Commutative<u32> for Add

Source§

impl Commutative<u32> for And

Source§

impl Commutative<u32> for Max

Source§

impl Commutative<u32> for Min

Source§

impl Commutative<u32> for Mul

Source§

impl Commutative<u32> for Or

Source§

impl Commutative<u32> for Xor

Source§

impl Commutative<u64> for Add

Source§

impl Commutative<u64> for And

Source§

impl Commutative<u64> for Max

Source§

impl Commutative<u64> for Min

Source§

impl Commutative<u64> for Mul

Source§

impl Commutative<u64> for Or

Source§

impl Commutative<u64> for Xor

Source§

impl Commutative<u128> for Add

Source§

impl Commutative<u128> for And

Source§

impl Commutative<u128> for Max

Source§

impl Commutative<u128> for Min

Source§

impl Commutative<u128> for Mul

Source§

impl Commutative<u128> for Or

Source§

impl Commutative<u128> for Xor

Source§

impl Commutative<usize> for Add

Source§

impl Commutative<usize> for And

Source§

impl Commutative<usize> for Max

Source§

impl Commutative<usize> for Min

Source§

impl Commutative<usize> for Mul

Source§

impl Commutative<usize> for Or

Source§

impl Commutative<usize> for Xor

Source§

impl Commutative<Wrapping<i8>> for Add

Source§

impl Commutative<Wrapping<i8>> for Mul

Source§

impl Commutative<Wrapping<i16>> for Add

Source§

impl Commutative<Wrapping<i16>> for Mul

Source§

impl Commutative<Wrapping<i32>> for Add

Source§

impl Commutative<Wrapping<i32>> for Mul

Source§

impl Commutative<Wrapping<i64>> for Add

Source§

impl Commutative<Wrapping<i64>> for Mul

Source§

impl Commutative<Wrapping<i128>> for Add

Source§

impl Commutative<Wrapping<i128>> for Mul

Source§

impl Commutative<Wrapping<isize>> for Add

Source§

impl Commutative<Wrapping<isize>> for Mul

Source§

impl Commutative<Wrapping<u8>> for Add

Source§

impl Commutative<Wrapping<u8>> for Mul

Source§

impl Commutative<Wrapping<u16>> for Add

Source§

impl Commutative<Wrapping<u16>> for Mul

Source§

impl Commutative<Wrapping<u32>> for Add

Source§

impl Commutative<Wrapping<u32>> for Mul

Source§

impl Commutative<Wrapping<u64>> for Add

Source§

impl Commutative<Wrapping<u64>> for Mul

Source§

impl Commutative<Wrapping<u128>> for Add

Source§

impl Commutative<Wrapping<u128>> for Mul

Source§

impl Commutative<Wrapping<usize>> for Add

Source§

impl Commutative<Wrapping<usize>> for Mul

Source§

impl Commutative<BigInt> for Add

Source§

impl Commutative<BigInt> for Mul

Source§

impl Commutative<BigUint> for Add

Source§

impl Commutative<BigUint> for Mul

Source§

impl<TA, TB, A: Commutative<TA>, B: Commutative<TB>> Commutative<(TA, TB)> for Pair<A, B>