Module rustc_trait_selection::infer::lattice
source · Expand description
Lattice variables
Generic code for operating on lattices of inference variables that are characterized by an upper- and lower-bound.
The code is defined quite generically so that it can be applied both to type variables, which represent types being inferred, and fn variables, which represent function types being inferred. (It may eventually be applied to their types as well.) In some cases, the functions are also generic with respect to the operation on the lattice (GLB vs LUB).
Note
Although all the functions are generic, for simplicity, comments in the source code generally refer to type variables and the LUB operation.
Traits
- Trait for returning data about a lattice, and for abstracting over the “direction” of the lattice operation (LUB/GLB).
Functions
- Relates two types using a given lattice.