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.