pub trait Action {
type Output: Monoid;
type Lazy: Monoid;
// Required method
fn convert(
value: Self::Output,
lazy: Self::Lazy,
len: usize,
) -> Self::Output;
// Provided methods
fn fold_id() -> Self::Output { ... }
fn fold(a: Self::Output, b: Self::Output) -> Self::Output { ... }
fn update_id() -> Self::Lazy { ... }
fn update(cur: Self::Lazy, next: Self::Lazy) -> Self::Lazy { ... }
}
Expand description
遅延セグメント木などに載せる構造
Required Associated Types§
Required Methods§
Provided Methods§
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.