@@ -912,9 +912,6 @@ pub enum Predicate<'tcx> {
912
912
/// would be the type parameters.
913
913
Trait ( PolyTraitPredicate < ' tcx > ) ,
914
914
915
- /// where `T1 == T2`.
916
- Equate ( PolyEquatePredicate < ' tcx > ) ,
917
-
918
915
/// where 'a : 'b
919
916
RegionOutlives ( PolyRegionOutlivesPredicate < ' tcx > ) ,
920
917
@@ -1023,8 +1020,6 @@ impl<'a, 'gcx, 'tcx> Predicate<'tcx> {
1023
1020
match * self {
1024
1021
Predicate :: Trait ( ty:: Binder ( ref data) ) =>
1025
1022
Predicate :: Trait ( ty:: Binder ( data. subst ( tcx, substs) ) ) ,
1026
- Predicate :: Equate ( ty:: Binder ( ref data) ) =>
1027
- Predicate :: Equate ( ty:: Binder ( data. subst ( tcx, substs) ) ) ,
1028
1023
Predicate :: Subtype ( ty:: Binder ( ref data) ) =>
1029
1024
Predicate :: Subtype ( ty:: Binder ( data. subst ( tcx, substs) ) ) ,
1030
1025
Predicate :: RegionOutlives ( ty:: Binder ( ref data) ) =>
@@ -1072,10 +1067,6 @@ impl<'tcx> PolyTraitPredicate<'tcx> {
1072
1067
}
1073
1068
}
1074
1069
1075
- #[ derive( Clone , Copy , PartialEq , Eq , Hash , Debug , RustcEncodable , RustcDecodable ) ]
1076
- pub struct EquatePredicate < ' tcx > ( pub Ty < ' tcx > , pub Ty < ' tcx > ) ; // `0 == 1`
1077
- pub type PolyEquatePredicate < ' tcx > = ty:: Binder < EquatePredicate < ' tcx > > ;
1078
-
1079
1070
#[ derive( Clone , Copy , PartialEq , Eq , Hash , Debug , RustcEncodable , RustcDecodable ) ]
1080
1071
pub struct OutlivesPredicate < A , B > ( pub A , pub B ) ; // `A : B`
1081
1072
pub type PolyOutlivesPredicate < A , B > = ty:: Binder < OutlivesPredicate < A , B > > ;
@@ -1166,12 +1157,6 @@ impl<'tcx> ToPredicate<'tcx> for PolyTraitRef<'tcx> {
1166
1157
}
1167
1158
}
1168
1159
1169
- impl < ' tcx > ToPredicate < ' tcx > for PolyEquatePredicate < ' tcx > {
1170
- fn to_predicate ( & self ) -> Predicate < ' tcx > {
1171
- Predicate :: Equate ( self . clone ( ) )
1172
- }
1173
- }
1174
-
1175
1160
impl < ' tcx > ToPredicate < ' tcx > for PolyRegionOutlivesPredicate < ' tcx > {
1176
1161
fn to_predicate ( & self ) -> Predicate < ' tcx > {
1177
1162
Predicate :: RegionOutlives ( self . clone ( ) )
@@ -1199,9 +1184,6 @@ impl<'tcx> Predicate<'tcx> {
1199
1184
ty:: Predicate :: Trait ( ref data) => {
1200
1185
data. skip_binder ( ) . input_types ( ) . collect ( )
1201
1186
}
1202
- ty:: Predicate :: Equate ( ty:: Binder ( ref data) ) => {
1203
- vec ! [ data. 0 , data. 1 ]
1204
- }
1205
1187
ty:: Predicate :: Subtype ( ty:: Binder ( SubtypePredicate { a, b, a_is_expected : _ } ) ) => {
1206
1188
vec ! [ a, b]
1207
1189
}
@@ -1242,7 +1224,6 @@ impl<'tcx> Predicate<'tcx> {
1242
1224
Some ( t. to_poly_trait_ref ( ) )
1243
1225
}
1244
1226
Predicate :: Projection ( ..) |
1245
- Predicate :: Equate ( ..) |
1246
1227
Predicate :: Subtype ( ..) |
1247
1228
Predicate :: RegionOutlives ( ..) |
1248
1229
Predicate :: WellFormed ( ..) |
@@ -1262,7 +1243,6 @@ impl<'tcx> Predicate<'tcx> {
1262
1243
}
1263
1244
Predicate :: Trait ( ..) |
1264
1245
Predicate :: Projection ( ..) |
1265
- Predicate :: Equate ( ..) |
1266
1246
Predicate :: Subtype ( ..) |
1267
1247
Predicate :: RegionOutlives ( ..) |
1268
1248
Predicate :: WellFormed ( ..) |
0 commit comments