Opaques have duplicated lifetimes and we need to compute bidirectional outlives predicates to
enforce that these lifetimes stay in sync.
Ensures that the super-predicates of the trait with a DefId
of trait_def_id
are lowered and stored. This also ensures that
the transitive super-predicates are lowered.
Returns a list of user-specified type predicates for the definition with ID def_id
.
N.B., this does not include any implied/inferred constraints.
Ensures that the super-predicates of the trait with a DefId
of trait_def_id
are lowered and stored. This also ensures that
the transitive super-predicates are lowered.
Returns a list of all type predicates (explicit and implicit) for the definition with
ID def_id
. This includes all predicates returned by predicates_defined_on
, plus
Self: Trait
predicates for traits.
Returns the predicates defined on item_def_id
of the form
X: Foo
where X
is the type parameter def_id
.