Struct rustc::middle::ty::ProjectionPredicateExperimental
[-]
[+]
[src]
pub struct ProjectionPredicate<'tcx> {
pub projection_ty: ProjectionTy<'tcx>,
pub ty: Ty<'tcx>,
}This kind of predicate has no direct correspondent in the syntax, but it roughly corresponds to the syntactic forms:
T : TraitRef<..., Item=Type><T as TraitRef<...>>::Item == Type(NYI)
In particular, form #1 is "desugared" to the combination of a
normal trait predicate (T : TraitRef<...>) and one of these
predicates. Form #2 is a broader form in that it also permits
equality between arbitrary types. Processing an instance of Form
2 eventually yields one of these ProjectionPredicate
instances to normalize the LHS.
Fields
projection_ty | |
ty |