Module rustc_type_ir::elaborate

source ·

Structs§

  • “Elaboration” is the process of identifying all the predicates that are implied by a source predicate. Currently, this basically means walking the “supertraits” and other similar assumptions. For example, if we know that T: Ord, the elaborator would deduce that T: PartialOrd holds as well. Similarly, if we have trait Foo: 'static, and we know that T: Foo, then we know that T: 'static.
  • A filter around an iterator of predicates that makes it yield up just trait references.

Enums§

Traits§

  • Describes how to elaborate an obligation into a sub-obligation.

Functions§