rustc_middle::ty

Module relate

Source

Modules§

combine
solver_relating

Enums§

StructurallyRelateAliases
Whether aliases should be related structurally or not. Used to adjust the behavior of generalization and combine.
VarianceDiagInfo
Extra information about why we ended up with a particular variance. This is only used to add more information to error messages, and has no effect on soundness. While choosing the ‘wrong’ VarianceDiagInfo may lead to confusing notes in error messages, it will never cause a miscompilation or unsoundness.

Traits§

Relate
TypeRelation

Functions§

relate_args_invariantly
relate_args_with_variances
structurally_relate_consts
Relates a and b structurally, calling the relation for all nested values. Any semantic equality, e.g. of unevaluated consts, and inference variables have to be handled by the caller.
structurally_relate_tys
Relates a and b structurally, calling the relation for all nested values. Any semantic equality, e.g. of projections, and inference variables have to be handled by the caller.

Type Aliases§

RelateResult