Trait segment_tree::ops::Inverse
[−]
[src]
pub trait Inverse<N> { fn uncombine(a: &mut N, b: &N); }
A trait that specifies that this type allows uncombining.
Required Methods
fn uncombine(a: &mut N, b: &N)
Returns some value such that combine(uncombine(a, b), b) = a
.
Implementors
impl Inverse<u8> for Add
impl Inverse<u8> for Mul
impl Inverse<u8> for Xor
impl Inverse<u8> for And
impl Inverse<u8> for Or
impl Inverse<Wrapping<u8>> for Add
impl Inverse<Wrapping<u8>> for Mul
impl Inverse<Wrapping<u8>> for Xor
impl Inverse<Wrapping<u8>> for And
impl Inverse<Wrapping<u8>> for Or
impl Inverse<u16> for Add
impl Inverse<u16> for Mul
impl Inverse<u16> for Xor
impl Inverse<u16> for And
impl Inverse<u16> for Or
impl Inverse<Wrapping<u16>> for Add
impl Inverse<Wrapping<u16>> for Mul
impl Inverse<Wrapping<u16>> for Xor
impl Inverse<Wrapping<u16>> for And
impl Inverse<Wrapping<u16>> for Or
impl Inverse<u32> for Add
impl Inverse<u32> for Mul
impl Inverse<u32> for Xor
impl Inverse<u32> for And
impl Inverse<u32> for Or
impl Inverse<Wrapping<u32>> for Add
impl Inverse<Wrapping<u32>> for Mul
impl Inverse<Wrapping<u32>> for Xor
impl Inverse<Wrapping<u32>> for And
impl Inverse<Wrapping<u32>> for Or
impl Inverse<u64> for Add
impl Inverse<u64> for Mul
impl Inverse<u64> for Xor
impl Inverse<u64> for And
impl Inverse<u64> for Or
impl Inverse<Wrapping<u64>> for Add
impl Inverse<Wrapping<u64>> for Mul
impl Inverse<Wrapping<u64>> for Xor
impl Inverse<Wrapping<u64>> for And
impl Inverse<Wrapping<u64>> for Or
impl Inverse<i8> for Add
impl Inverse<i8> for Mul
impl Inverse<i8> for Xor
impl Inverse<i8> for And
impl Inverse<i8> for Or
impl Inverse<Wrapping<i8>> for Add
impl Inverse<Wrapping<i8>> for Mul
impl Inverse<Wrapping<i8>> for Xor
impl Inverse<Wrapping<i8>> for And
impl Inverse<Wrapping<i8>> for Or
impl Inverse<i16> for Add
impl Inverse<i16> for Mul
impl Inverse<i16> for Xor
impl Inverse<i16> for And
impl Inverse<i16> for Or
impl Inverse<Wrapping<i16>> for Add
impl Inverse<Wrapping<i16>> for Mul
impl Inverse<Wrapping<i16>> for Xor
impl Inverse<Wrapping<i16>> for And
impl Inverse<Wrapping<i16>> for Or
impl Inverse<i32> for Add
impl Inverse<i32> for Mul
impl Inverse<i32> for Xor
impl Inverse<i32> for And
impl Inverse<i32> for Or
impl Inverse<Wrapping<i32>> for Add
impl Inverse<Wrapping<i32>> for Mul
impl Inverse<Wrapping<i32>> for Xor
impl Inverse<Wrapping<i32>> for And
impl Inverse<Wrapping<i32>> for Or
impl Inverse<i64> for Add
impl Inverse<i64> for Mul
impl Inverse<i64> for Xor
impl Inverse<i64> for And
impl Inverse<i64> for Or
impl Inverse<Wrapping<i64>> for Add
impl Inverse<Wrapping<i64>> for Mul
impl Inverse<Wrapping<i64>> for Xor
impl Inverse<Wrapping<i64>> for And
impl Inverse<Wrapping<i64>> for Or
impl Inverse<usize> for Add
impl Inverse<usize> for Mul
impl Inverse<usize> for Xor
impl Inverse<usize> for And
impl Inverse<usize> for Or
impl Inverse<Wrapping<usize>> for Add
impl Inverse<Wrapping<usize>> for Mul
impl Inverse<Wrapping<usize>> for Xor
impl Inverse<Wrapping<usize>> for And
impl Inverse<Wrapping<usize>> for Or
impl Inverse<isize> for Add
impl Inverse<isize> for Mul
impl Inverse<isize> for Xor
impl Inverse<isize> for And
impl Inverse<isize> for Or
impl Inverse<Wrapping<isize>> for Add
impl Inverse<Wrapping<isize>> for Mul
impl Inverse<Wrapping<isize>> for Xor
impl Inverse<Wrapping<isize>> for And
impl Inverse<Wrapping<isize>> for Or
impl Inverse<f32> for Add
impl Inverse<f32> for Mul
impl Inverse<f64> for Add
impl Inverse<f64> for Mul
impl<TA, TB, A: Inverse<TA>, B: Inverse<TB>> Inverse<(TA, TB)> for Pair<A, B>