# Trait rustc_mir_dataflow::lattice::MeetSemiLattice

source ·

    pub trait MeetSemiLattice: Eq {
        // Required method
        fn meet(&mut self, other: &Self) -> bool;
    }

Expand description

A partially ordered set that has a greatest lower bound for any pair of elements in the set.

Dataflow analyses only require that their domains implement `JoinSemiLattice`, not `MeetSemiLattice`. However, types that will be used as dataflow domains should implement both so that they can be used with `Dual`.

## Required Methods§

source

#### fn meet(&mut self, other: &Self) -> bool

Computes the greatest lower bound of two elements, storing the result in `self` and returning `true` if `self` has changed.

The lattice meet operator is abbreviated as `∧`.

## Object Safety§

This trait is not object safe.

## Implementations on Foreign Types§

source§

### impl MeetSemiLattice for bool

source§

#### fn meet(&mut self, other: &Self) -> bool

source§

### impl<I: Idx, T: MeetSemiLattice> MeetSemiLattice for IndexVec<I, T>

source§

#### fn meet(&mut self, other: &Self) -> bool

source§

### impl<T: Idx> MeetSemiLattice for BitSet<T>

source§

#### fn meet(&mut self, other: &Self) -> bool

source§

### impl<T: Idx> MeetSemiLattice for ChunkedBitSet<T>

source§

#### fn meet(&mut self, other: &Self) -> bool

## Implementors§

source§

### impl<T: Clone + Eq> MeetSemiLattice for FlatSet<T>

source§

### impl<T: JoinSemiLattice> MeetSemiLattice for Dual<T>