pub trait Lattice:
MeetSemilattice
+ JoinSemilattice
+ PartialOrd {
// Provided methods
fn meet_join(&self, other: &Self) -> (Self, Self) { ... }
fn partial_min<'a>(&'a self, other: &'a Self) -> Option<&'a Self> { ... }
fn partial_max<'a>(&'a self, other: &'a Self) -> Option<&'a Self> { ... }
fn partial_sort2<'a>(
&'a self,
other: &'a Self,
) -> Option<(&'a Self, &'a Self)> { ... }
fn partial_clamp<'a>(
&'a self,
min: &'a Self,
max: &'a Self,
) -> Option<&'a Self> { ... }
}Expand description
Partially orderable sets where every two elements have a supremum and infimum.
Provided Methods§
Sourcefn meet_join(&self, other: &Self) -> (Self, Self)
fn meet_join(&self, other: &Self) -> (Self, Self)
Returns the infimum and the supremum simultaneously.
Sourcefn partial_min<'a>(&'a self, other: &'a Self) -> Option<&'a Self>
fn partial_min<'a>(&'a self, other: &'a Self) -> Option<&'a Self>
Return the minimum of self and other if they are comparable.
Sourcefn partial_max<'a>(&'a self, other: &'a Self) -> Option<&'a Self>
fn partial_max<'a>(&'a self, other: &'a Self) -> Option<&'a Self>
Return the maximum of self and other if they are comparable.
Sourcefn partial_sort2<'a>(&'a self, other: &'a Self) -> Option<(&'a Self, &'a Self)>
fn partial_sort2<'a>(&'a self, other: &'a Self) -> Option<(&'a Self, &'a Self)>
Sorts two values in increasing order using a partial ordering.
Sourcefn partial_clamp<'a>(&'a self, min: &'a Self, max: &'a Self) -> Option<&'a Self>
fn partial_clamp<'a>(&'a self, min: &'a Self, max: &'a Self) -> Option<&'a Self>
Clamp value between min and max. Returns None if value is not comparable to
min or max.
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.