Struct segment_tree::ops::Xor [] [src]

pub struct Xor;

Each node contains the bitwise xor of the interval it represents.

Trait Implementations

impl<T: BitXor<Output = T> + Copy> Operation<T> for Xor
[src]

The operation that is performed to combine two intervals in the segment tree. Read more

Replace the value in a with combine(a, b). This function exists to allow certain optimizations and by default simply calls combine. Read more

Replace the value in a with combine(a, b). This function exists to allow certain optimizations and by default simply calls combine. Read more

Must return the same as combine. This function exists to allow certain optimizations and by default simply calls combine_mut. Read more

Must return the same as combine. This function exists to allow certain optimizations and by default simply calls combine_mut2. Read more

Must return the same as combine. This function exists to allow certain optimizations and by default simply calls combine_left. Read more

impl<T: BitXor<Output = T> + Copy> Inverse<T> for Xor
[src]

Returns some value such that combine(uncombine(a, b), b) = a.

impl CommutativeOperation<u8> for Xor
[src]

impl CommutativeOperation<u16> for Xor
[src]

impl CommutativeOperation<u32> for Xor
[src]

impl CommutativeOperation<u64> for Xor
[src]

impl CommutativeOperation<i8> for Xor
[src]

impl CommutativeOperation<i16> for Xor
[src]

impl CommutativeOperation<i32> for Xor
[src]

impl CommutativeOperation<i64> for Xor
[src]

impl CommutativeOperation<usize> for Xor
[src]

impl CommutativeOperation<isize> for Xor
[src]

impl<T: Copy> CommutativeOperation<Wrapping<T>> for Xor where
    Xor: CommutativeOperation<T>,
    Wrapping<T>: BitXor<Output = Wrapping<T>>, 
[src]

impl Identity<u8> for Xor
[src]

Returns any identity.

impl Identity<u16> for Xor
[src]

Returns any identity.

impl Identity<u32> for Xor
[src]

Returns any identity.

impl Identity<u64> for Xor
[src]

Returns any identity.

impl Identity<i8> for Xor
[src]

Returns any identity.

impl Identity<i16> for Xor
[src]

Returns any identity.

impl Identity<i32> for Xor
[src]

Returns any identity.

impl Identity<i64> for Xor
[src]

Returns any identity.

impl Identity<usize> for Xor
[src]

Returns any identity.

impl Identity<isize> for Xor
[src]

Returns any identity.

impl<T> Identity<Wrapping<T>> for Xor where
    Xor: Identity<T>, 
[src]

Returns any identity.