pub struct RangeSumRangeLinear<T> { /* private fields */ }
Trait Implementations§
Source§impl<T> MonoidAction for RangeSumRangeLinear<T>
impl<T> MonoidAction for RangeSumRangeLinear<T>
type Key = T
type Agg = (T, T)
type Act = (T, T)
type AggMonoid = (AdditiveOperation<T>, AdditiveOperation<T>)
type ActMonoid = LinearOperation<T>
fn single_agg(key: &Self::Key) -> Self::Agg
fn act_key(x: &Self::Key, (a, b): &Self::Act) -> Self::Key
fn act_agg((x, y): &Self::Agg, (a, b): &Self::Act) -> Option<Self::Agg>
fn toggle(_x: &mut Self::Agg)
fn agg_unit() -> Self::Agg
fn act_unit() -> Self::Act
fn agg_operate(x: &Self::Agg, y: &Self::Agg) -> Self::Agg
fn act_operate(x: &Self::Act, y: &Self::Act) -> Self::Act
fn agg_operate_assign(x: &mut Self::Agg, y: &Self::Agg)
fn act_operate_assign(x: &mut Self::Act, y: &Self::Act)
Auto Trait Implementations§
impl<T> Freeze for RangeSumRangeLinear<T>
impl<T> RefUnwindSafe for RangeSumRangeLinear<T>
impl<T> Send for RangeSumRangeLinear<T>
impl<T> Sync for RangeSumRangeLinear<T>
impl<T> Unpin for RangeSumRangeLinear<T>
impl<T> UnwindSafe for RangeSumRangeLinear<T>
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