This mod contains everything related to types and collections of types (type tables).
- Variant is a trait representing the variant of an abstract type that will be inferred during the type checking procedure.
- Constructable: A variant is constructable if it can be transformed into a concrete type, i.e., Constructable::Type.
- TypeTable and PreliminaryTypeTable are mappings from a TcKey to a concrete Constructable::Type or Preliminary type.
A type implementing this trait can potentially be transformed into a concrete representation. This transformation can fail.
A Variant which requires a context for meet operations and equality checks.
A variant that will be inferred during the type checking procedure.