[−][src]Trait pergola::LatticeDef
Implement this trait on a (typically vacuous) type to define a specific lattice as a type-with-some-choice-of-operators.
Associated Types
Loading content...Required methods
pub fn unit() -> Self::T
[src]
pub fn join(lhs: &Self::T, rhs: &Self::T) -> Self::T
[src]
pub fn partial_order(lhs: &Self::T, rhs: &Self::T) -> Option<Ordering>
[src]
Implementors
impl LatticeDef for BitSetWithIntersection
[src]
type T = Option<BitSetWrapper>
pub fn unit() -> Self::T
[src]
pub fn join(lhs: &Self::T, rhs: &Self::T) -> Self::T
[src]
pub fn partial_order(lhs: &Self::T, rhs: &Self::T) -> Option<Ordering>
[src]
impl LatticeDef for BitSetWithUnion
[src]
type T = BitSetWrapper
pub fn unit() -> Self::T
[src]
pub fn join(lhs: &Self::T, rhs: &Self::T) -> Self::T
[src]
pub fn partial_order(lhs: &Self::T, rhs: &Self::T) -> Option<Ordering>
[src]
impl<A: LatticeDef, B: LatticeDef> LatticeDef for Tuple2<A, B>
[src]
type T = (LatticeElt<A>, LatticeElt<B>)
pub fn unit() -> Self::T
[src]
pub fn join(lhs: &Self::T, rhs: &Self::T) -> Self::T
[src]
pub fn partial_order(lhs: &Self::T, rhs: &Self::T) -> Option<Ordering>
[src]
impl<A: LatticeDef, B: LatticeDef, C: LatticeDef> LatticeDef for Tuple3<A, B, C>
[src]
type T = (LatticeElt<A>, LatticeElt<B>, LatticeElt<C>)
pub fn unit() -> Self::T
[src]
pub fn join(lhs: &Self::T, rhs: &Self::T) -> Self::T
[src]
pub fn partial_order(lhs: &Self::T, rhs: &Self::T) -> Option<Ordering>
[src]
impl<A: LatticeDef, B: LatticeDef, C: LatticeDef, D: LatticeDef> LatticeDef for Tuple4<A, B, C, D>
[src]
type T = (LatticeElt<A>, LatticeElt<B>, LatticeElt<C>, LatticeElt<D>)
pub fn unit() -> Self::T
[src]
pub fn join(lhs: &Self::T, rhs: &Self::T) -> Self::T
[src]
pub fn partial_order(lhs: &Self::T, rhs: &Self::T) -> Option<Ordering>
[src]
impl<A: LatticeDef, B: LatticeDef, C: LatticeDef, D: LatticeDef, E: LatticeDef> LatticeDef for Tuple5<A, B, C, D, E>
[src]
type T = (LatticeElt<A>, LatticeElt<B>, LatticeElt<C>, LatticeElt<D>, LatticeElt<E>)
pub fn unit() -> Self::T
[src]
pub fn join(lhs: &Self::T, rhs: &Self::T) -> Self::T
[src]
pub fn partial_order(lhs: &Self::T, rhs: &Self::T) -> Option<Ordering>
[src]
impl<K: DefTraits, VD: LatticeDef> LatticeDef for ArcOrdMapWithIntersection<K, VD> where
VD::T: Clone,
[src]
VD::T: Clone,
type T = Option<ArcOrdMap<K, LatticeElt<VD>>>
pub fn unit() -> Self::T
[src]
pub fn join(lhs: &Self::T, rhs: &Self::T) -> Self::T
[src]
pub fn partial_order(lhs: &Self::T, rhs: &Self::T) -> Option<Ordering>
[src]
impl<K: DefTraits, VD: LatticeDef> LatticeDef for ArcOrdMapWithUnion<K, VD> where
VD::T: Clone,
[src]
VD::T: Clone,
type T = ArcOrdMap<K, LatticeElt<VD>>
pub fn unit() -> Self::T
[src]
pub fn join(lhs: &Self::T, rhs: &Self::T) -> Self::T
[src]
pub fn partial_order(lhs: &Self::T, rhs: &Self::T) -> Option<Ordering>
[src]
impl<K: DefTraits, VD: LatticeDef> LatticeDef for BTreeMapWithIntersection<K, VD> where
VD::T: Clone,
[src]
VD::T: Clone,
type T = Option<BTreeMap<K, LatticeElt<VD>>>
pub fn unit() -> Self::T
[src]
pub fn join(lhs: &Self::T, rhs: &Self::T) -> Self::T
[src]
pub fn partial_order(lhs: &Self::T, rhs: &Self::T) -> Option<Ordering>
[src]
impl<K: DefTraits, VD: LatticeDef> LatticeDef for BTreeMapWithUnion<K, VD> where
VD::T: Clone,
[src]
VD::T: Clone,
type T = BTreeMap<K, LatticeElt<VD>>
pub fn unit() -> Self::T
[src]
pub fn join(lhs: &Self::T, rhs: &Self::T) -> Self::T
[src]
pub fn partial_order(lhs: &Self::T, rhs: &Self::T) -> Option<Ordering>
[src]
impl<K: DefTraits, VD: LatticeDef> LatticeDef for RcOrdMapWithIntersection<K, VD> where
VD::T: Clone,
[src]
VD::T: Clone,
type T = Option<RcOrdMap<K, LatticeElt<VD>>>
pub fn unit() -> Self::T
[src]
pub fn join(lhs: &Self::T, rhs: &Self::T) -> Self::T
[src]
pub fn partial_order(lhs: &Self::T, rhs: &Self::T) -> Option<Ordering>
[src]
impl<K: DefTraits, VD: LatticeDef> LatticeDef for RcOrdMapWithUnion<K, VD> where
VD::T: Clone,
[src]
VD::T: Clone,