pub struct Max;
Expand description
Each node contains the maximum of the interval it represents.
Trait Implementations§
Source§impl Operation<i128> for Max
impl Operation<i128> for Max
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 Max
impl Operation<i16> for Max
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 Max
impl Operation<i32> for Max
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 Max
impl Operation<i64> for Max
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 Max
impl Operation<i8> for Max
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 Max
impl Operation<isize> for Max
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 Max
impl Operation<u128> for Max
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 Max
impl Operation<u16> for Max
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 Max
impl Operation<u32> for Max
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 Max
impl Operation<u64> for Max
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 Max
impl Operation<u8> for Max
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 Max
impl Operation<usize> for Max
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 Max
impl Ord for Max
Source§impl PartialOrd for Max
impl PartialOrd for Max
impl Commutative<i128> for Max
impl Commutative<i16> for Max
impl Commutative<i32> for Max
impl Commutative<i64> for Max
impl Commutative<i8> for Max
impl Commutative<isize> for Max
impl Commutative<u128> for Max
impl Commutative<u16> for Max
impl Commutative<u32> for Max
impl Commutative<u64> for Max
impl Commutative<u8> for Max
impl Commutative<usize> for Max
impl Copy for Max
impl Eq for Max
impl StructuralPartialEq for Max
Auto Trait Implementations§
impl Freeze for Max
impl RefUnwindSafe for Max
impl Send for Max
impl Sync for Max
impl Unpin for Max
impl UnwindSafe for Max
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