pub struct Or;
Expand description
Each node contains the bitwise or of the interval it represents.
Trait Implementations§
Source§impl Operation<bool> for Or
impl Operation<bool> for Or
Source§fn combine_mut(&self, a: &mut N, b: &N)
fn combine_mut(&self, a: &mut N, b: &N)
Replace the value in
a
with combine(a, b)
. This function exists to allow
certain optimizations and by default simply calls combine
.Source§fn combine_mut2(&self, a: &N, b: &mut N)
fn combine_mut2(&self, a: &N, b: &mut N)
Replace the value in
b
with combine(a, b)
. This function exists to allow
certain optimizations and by default simply calls combine
.Source§fn combine_left(&self, a: N, b: &N) -> N
fn combine_left(&self, a: N, b: &N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_mut
.Source§fn combine_right(&self, a: &N, b: N) -> N
fn combine_right(&self, a: &N, b: N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_mut2
.Source§fn combine_both(&self, a: N, b: N) -> N
fn combine_both(&self, a: N, b: N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_left
.Source§impl Operation<i128> for Or
impl Operation<i128> for Or
Source§fn combine_mut(&self, a: &mut N, b: &N)
fn combine_mut(&self, a: &mut N, b: &N)
Replace the value in
a
with combine(a, b)
. This function exists to allow
certain optimizations and by default simply calls combine
.Source§fn combine_mut2(&self, a: &N, b: &mut N)
fn combine_mut2(&self, a: &N, b: &mut N)
Replace the value in
b
with combine(a, b)
. This function exists to allow
certain optimizations and by default simply calls combine
.Source§fn combine_left(&self, a: N, b: &N) -> N
fn combine_left(&self, a: N, b: &N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_mut
.Source§fn combine_right(&self, a: &N, b: N) -> N
fn combine_right(&self, a: &N, b: N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_mut2
.Source§fn combine_both(&self, a: N, b: N) -> N
fn combine_both(&self, a: N, b: N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_left
.Source§impl Operation<i16> for Or
impl Operation<i16> for Or
Source§fn combine_mut(&self, a: &mut N, b: &N)
fn combine_mut(&self, a: &mut N, b: &N)
Replace the value in
a
with combine(a, b)
. This function exists to allow
certain optimizations and by default simply calls combine
.Source§fn combine_mut2(&self, a: &N, b: &mut N)
fn combine_mut2(&self, a: &N, b: &mut N)
Replace the value in
b
with combine(a, b)
. This function exists to allow
certain optimizations and by default simply calls combine
.Source§fn combine_left(&self, a: N, b: &N) -> N
fn combine_left(&self, a: N, b: &N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_mut
.Source§fn combine_right(&self, a: &N, b: N) -> N
fn combine_right(&self, a: &N, b: N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_mut2
.Source§fn combine_both(&self, a: N, b: N) -> N
fn combine_both(&self, a: N, b: N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_left
.Source§impl Operation<i32> for Or
impl Operation<i32> for Or
Source§fn combine_mut(&self, a: &mut N, b: &N)
fn combine_mut(&self, a: &mut N, b: &N)
Replace the value in
a
with combine(a, b)
. This function exists to allow
certain optimizations and by default simply calls combine
.Source§fn combine_mut2(&self, a: &N, b: &mut N)
fn combine_mut2(&self, a: &N, b: &mut N)
Replace the value in
b
with combine(a, b)
. This function exists to allow
certain optimizations and by default simply calls combine
.Source§fn combine_left(&self, a: N, b: &N) -> N
fn combine_left(&self, a: N, b: &N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_mut
.Source§fn combine_right(&self, a: &N, b: N) -> N
fn combine_right(&self, a: &N, b: N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_mut2
.Source§fn combine_both(&self, a: N, b: N) -> N
fn combine_both(&self, a: N, b: N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_left
.Source§impl Operation<i64> for Or
impl Operation<i64> for Or
Source§fn combine_mut(&self, a: &mut N, b: &N)
fn combine_mut(&self, a: &mut N, b: &N)
Replace the value in
a
with combine(a, b)
. This function exists to allow
certain optimizations and by default simply calls combine
.Source§fn combine_mut2(&self, a: &N, b: &mut N)
fn combine_mut2(&self, a: &N, b: &mut N)
Replace the value in
b
with combine(a, b)
. This function exists to allow
certain optimizations and by default simply calls combine
.Source§fn combine_left(&self, a: N, b: &N) -> N
fn combine_left(&self, a: N, b: &N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_mut
.Source§fn combine_right(&self, a: &N, b: N) -> N
fn combine_right(&self, a: &N, b: N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_mut2
.Source§fn combine_both(&self, a: N, b: N) -> N
fn combine_both(&self, a: N, b: N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_left
.Source§impl Operation<i8> for Or
impl Operation<i8> for Or
Source§fn combine_mut(&self, a: &mut N, b: &N)
fn combine_mut(&self, a: &mut N, b: &N)
Replace the value in
a
with combine(a, b)
. This function exists to allow
certain optimizations and by default simply calls combine
.Source§fn combine_mut2(&self, a: &N, b: &mut N)
fn combine_mut2(&self, a: &N, b: &mut N)
Replace the value in
b
with combine(a, b)
. This function exists to allow
certain optimizations and by default simply calls combine
.Source§fn combine_left(&self, a: N, b: &N) -> N
fn combine_left(&self, a: N, b: &N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_mut
.Source§fn combine_right(&self, a: &N, b: N) -> N
fn combine_right(&self, a: &N, b: N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_mut2
.Source§fn combine_both(&self, a: N, b: N) -> N
fn combine_both(&self, a: N, b: N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_left
.Source§impl Operation<isize> for Or
impl Operation<isize> for Or
Source§fn combine_mut(&self, a: &mut N, b: &N)
fn combine_mut(&self, a: &mut N, b: &N)
Replace the value in
a
with combine(a, b)
. This function exists to allow
certain optimizations and by default simply calls combine
.Source§fn combine_mut2(&self, a: &N, b: &mut N)
fn combine_mut2(&self, a: &N, b: &mut N)
Replace the value in
b
with combine(a, b)
. This function exists to allow
certain optimizations and by default simply calls combine
.Source§fn combine_left(&self, a: N, b: &N) -> N
fn combine_left(&self, a: N, b: &N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_mut
.Source§fn combine_right(&self, a: &N, b: N) -> N
fn combine_right(&self, a: &N, b: N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_mut2
.Source§fn combine_both(&self, a: N, b: N) -> N
fn combine_both(&self, a: N, b: N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_left
.Source§impl Operation<u128> for Or
impl Operation<u128> for Or
Source§fn combine_mut(&self, a: &mut N, b: &N)
fn combine_mut(&self, a: &mut N, b: &N)
Replace the value in
a
with combine(a, b)
. This function exists to allow
certain optimizations and by default simply calls combine
.Source§fn combine_mut2(&self, a: &N, b: &mut N)
fn combine_mut2(&self, a: &N, b: &mut N)
Replace the value in
b
with combine(a, b)
. This function exists to allow
certain optimizations and by default simply calls combine
.Source§fn combine_left(&self, a: N, b: &N) -> N
fn combine_left(&self, a: N, b: &N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_mut
.Source§fn combine_right(&self, a: &N, b: N) -> N
fn combine_right(&self, a: &N, b: N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_mut2
.Source§fn combine_both(&self, a: N, b: N) -> N
fn combine_both(&self, a: N, b: N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_left
.Source§impl Operation<u16> for Or
impl Operation<u16> for Or
Source§fn combine_mut(&self, a: &mut N, b: &N)
fn combine_mut(&self, a: &mut N, b: &N)
Replace the value in
a
with combine(a, b)
. This function exists to allow
certain optimizations and by default simply calls combine
.Source§fn combine_mut2(&self, a: &N, b: &mut N)
fn combine_mut2(&self, a: &N, b: &mut N)
Replace the value in
b
with combine(a, b)
. This function exists to allow
certain optimizations and by default simply calls combine
.Source§fn combine_left(&self, a: N, b: &N) -> N
fn combine_left(&self, a: N, b: &N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_mut
.Source§fn combine_right(&self, a: &N, b: N) -> N
fn combine_right(&self, a: &N, b: N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_mut2
.Source§fn combine_both(&self, a: N, b: N) -> N
fn combine_both(&self, a: N, b: N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_left
.Source§impl Operation<u32> for Or
impl Operation<u32> for Or
Source§fn combine_mut(&self, a: &mut N, b: &N)
fn combine_mut(&self, a: &mut N, b: &N)
Replace the value in
a
with combine(a, b)
. This function exists to allow
certain optimizations and by default simply calls combine
.Source§fn combine_mut2(&self, a: &N, b: &mut N)
fn combine_mut2(&self, a: &N, b: &mut N)
Replace the value in
b
with combine(a, b)
. This function exists to allow
certain optimizations and by default simply calls combine
.Source§fn combine_left(&self, a: N, b: &N) -> N
fn combine_left(&self, a: N, b: &N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_mut
.Source§fn combine_right(&self, a: &N, b: N) -> N
fn combine_right(&self, a: &N, b: N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_mut2
.Source§fn combine_both(&self, a: N, b: N) -> N
fn combine_both(&self, a: N, b: N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_left
.Source§impl Operation<u64> for Or
impl Operation<u64> for Or
Source§fn combine_mut(&self, a: &mut N, b: &N)
fn combine_mut(&self, a: &mut N, b: &N)
Replace the value in
a
with combine(a, b)
. This function exists to allow
certain optimizations and by default simply calls combine
.Source§fn combine_mut2(&self, a: &N, b: &mut N)
fn combine_mut2(&self, a: &N, b: &mut N)
Replace the value in
b
with combine(a, b)
. This function exists to allow
certain optimizations and by default simply calls combine
.Source§fn combine_left(&self, a: N, b: &N) -> N
fn combine_left(&self, a: N, b: &N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_mut
.Source§fn combine_right(&self, a: &N, b: N) -> N
fn combine_right(&self, a: &N, b: N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_mut2
.Source§fn combine_both(&self, a: N, b: N) -> N
fn combine_both(&self, a: N, b: N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_left
.Source§impl Operation<u8> for Or
impl Operation<u8> for Or
Source§fn combine_mut(&self, a: &mut N, b: &N)
fn combine_mut(&self, a: &mut N, b: &N)
Replace the value in
a
with combine(a, b)
. This function exists to allow
certain optimizations and by default simply calls combine
.Source§fn combine_mut2(&self, a: &N, b: &mut N)
fn combine_mut2(&self, a: &N, b: &mut N)
Replace the value in
b
with combine(a, b)
. This function exists to allow
certain optimizations and by default simply calls combine
.Source§fn combine_left(&self, a: N, b: &N) -> N
fn combine_left(&self, a: N, b: &N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_mut
.Source§fn combine_right(&self, a: &N, b: N) -> N
fn combine_right(&self, a: &N, b: N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_mut2
.Source§fn combine_both(&self, a: N, b: N) -> N
fn combine_both(&self, a: N, b: N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_left
.Source§impl Operation<usize> for Or
impl Operation<usize> for Or
Source§fn combine_mut(&self, a: &mut N, b: &N)
fn combine_mut(&self, a: &mut N, b: &N)
Replace the value in
a
with combine(a, b)
. This function exists to allow
certain optimizations and by default simply calls combine
.Source§fn combine_mut2(&self, a: &N, b: &mut N)
fn combine_mut2(&self, a: &N, b: &mut N)
Replace the value in
b
with combine(a, b)
. This function exists to allow
certain optimizations and by default simply calls combine
.Source§fn combine_left(&self, a: N, b: &N) -> N
fn combine_left(&self, a: N, b: &N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_mut
.Source§fn combine_right(&self, a: &N, b: N) -> N
fn combine_right(&self, a: &N, b: N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_mut2
.Source§fn combine_both(&self, a: N, b: N) -> N
fn combine_both(&self, a: N, b: N) -> N
Must return the same as
combine
. This function exists to allow certain
optimizations and by default simply calls combine_left
.Source§impl Ord for Or
impl Ord for Or
Source§impl PartialOrd for Or
impl PartialOrd for Or
impl Commutative<i128> for Or
impl Commutative<i16> for Or
impl Commutative<i32> for Or
impl Commutative<i64> for Or
impl Commutative<i8> for Or
impl Commutative<isize> for Or
impl Commutative<u128> for Or
impl Commutative<u16> for Or
impl Commutative<u32> for Or
impl Commutative<u64> for Or
impl Commutative<u8> for Or
impl Commutative<usize> for Or
impl Copy for Or
impl Eq for Or
impl StructuralPartialEq for Or
Auto Trait Implementations§
impl Freeze for Or
impl RefUnwindSafe for Or
impl Send for Or
impl Sync for Or
impl Unpin for Or
impl UnwindSafe for Or
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more