pub trait Value: Sized + Debug {
type K: Key;
// Required methods
fn try_merge_backwards(self, other: &Self) -> Result<Self, Self>;
fn try_merge_forward(self, other: &Self) -> Result<Self, Self>;
fn split(
self,
prev_range: Option<Range<Self::K>>,
range: Range<Self::K>,
next_range: Option<Range<Self::K>>,
) -> (Option<Self>, Self, Option<Self>);
}
Required Associated Types§
Required Methods§
fn try_merge_backwards(self, other: &Self) -> Result<Self, Self>
fn try_merge_forward(self, other: &Self) -> Result<Self, Self>
fn split( self, prev_range: Option<Range<Self::K>>, range: Range<Self::K>, next_range: Option<Range<Self::K>>, ) -> (Option<Self>, Self, Option<Self>)
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.