@@ -731,19 +731,19 @@ pub fn ensure_sufficient_stack<R>(f: impl FnOnce() -> R) -> R {
731
731
/// Context that provides information local to a place under investigation.
732
732
#[ derive( derivative:: Derivative ) ]
733
733
#[ derivative( Debug ( bound = "" ) , Clone ( bound = "" ) , Copy ( bound = "" ) ) ]
734
- pub ( crate ) struct PlaceCtxt < ' a , ' p , Cx : TypeCx > {
734
+ pub ( crate ) struct PlaceCtxt < ' a , Cx : TypeCx > {
735
735
#[ derivative( Debug = "ignore" ) ]
736
- pub ( crate ) mcx : MatchCtxt < ' a , ' p , Cx > ,
736
+ pub ( crate ) mcx : MatchCtxt < ' a , Cx > ,
737
737
/// Type of the place under investigation.
738
738
pub ( crate ) ty : Cx :: Ty ,
739
739
/// Whether the place is the original scrutinee place, as opposed to a subplace of it.
740
740
pub ( crate ) is_scrutinee : bool ,
741
741
}
742
742
743
- impl < ' a , ' p , Cx : TypeCx > PlaceCtxt < ' a , ' p , Cx > {
743
+ impl < ' a , Cx : TypeCx > PlaceCtxt < ' a , Cx > {
744
744
/// A `PlaceCtxt` when code other than `is_useful` needs one.
745
745
#[ cfg_attr( not( feature = "rustc" ) , allow( dead_code) ) ]
746
- pub ( crate ) fn new_dummy ( mcx : MatchCtxt < ' a , ' p , Cx > , ty : Cx :: Ty ) -> Self {
746
+ pub ( crate ) fn new_dummy ( mcx : MatchCtxt < ' a , Cx > , ty : Cx :: Ty ) -> Self {
747
747
PlaceCtxt { mcx, ty, is_scrutinee : false }
748
748
}
749
749
@@ -1056,7 +1056,7 @@ impl<'p, Cx: TypeCx> Matrix<'p, Cx> {
1056
1056
/// This computes `specialize(ctor, self)`. See top of the file for explanations.
1057
1057
fn specialize_constructor (
1058
1058
& self ,
1059
- pcx : & PlaceCtxt < ' _ , ' p , Cx > ,
1059
+ pcx : & PlaceCtxt < ' _ , Cx > ,
1060
1060
ctor : & Constructor < Cx > ,
1061
1061
ctor_is_relevant : bool ,
1062
1062
) -> Matrix < ' p , Cx > {
@@ -1214,7 +1214,7 @@ impl<Cx: TypeCx> WitnessStack<Cx> {
1214
1214
/// pats: [(false, "foo"), _, true]
1215
1215
/// result: [Enum::Variant { a: (false, "foo"), b: _ }, true]
1216
1216
/// ```
1217
- fn apply_constructor ( & mut self , pcx : & PlaceCtxt < ' _ , ' _ , Cx > , ctor : & Constructor < Cx > ) {
1217
+ fn apply_constructor ( & mut self , pcx : & PlaceCtxt < ' _ , Cx > , ctor : & Constructor < Cx > ) {
1218
1218
let len = self . 0 . len ( ) ;
1219
1219
let arity = ctor. arity ( pcx) ;
1220
1220
let fields = self . 0 . drain ( ( len - arity) ..) . rev ( ) . collect ( ) ;
@@ -1265,7 +1265,7 @@ impl<Cx: TypeCx> WitnessMatrix<Cx> {
1265
1265
/// Reverses specialization by `ctor`. See the section on `unspecialize` at the top of the file.
1266
1266
fn apply_constructor (
1267
1267
& mut self ,
1268
- pcx : & PlaceCtxt < ' _ , ' _ , Cx > ,
1268
+ pcx : & PlaceCtxt < ' _ , Cx > ,
1269
1269
missing_ctors : & [ Constructor < Cx > ] ,
1270
1270
ctor : & Constructor < Cx > ,
1271
1271
report_individual_missing_ctors : bool ,
@@ -1332,7 +1332,7 @@ impl<Cx: TypeCx> WitnessMatrix<Cx> {
1332
1332
/// This is all explained at the top of the file.
1333
1333
#[ instrument( level = "debug" , skip( mcx, is_top_level) , ret) ]
1334
1334
fn compute_exhaustiveness_and_usefulness < ' a , ' p , Cx : TypeCx > (
1335
- mcx : MatchCtxt < ' a , ' p , Cx > ,
1335
+ mcx : MatchCtxt < ' a , Cx > ,
1336
1336
matrix : & mut Matrix < ' p , Cx > ,
1337
1337
is_top_level : bool ,
1338
1338
) -> WitnessMatrix < Cx > {
@@ -1464,7 +1464,7 @@ pub struct UsefulnessReport<'p, Cx: TypeCx> {
1464
1464
/// Computes whether a match is exhaustive and which of its arms are useful.
1465
1465
#[ instrument( skip( cx, arms) , level = "debug" ) ]
1466
1466
pub fn compute_match_usefulness < ' p , Cx : TypeCx > (
1467
- cx : MatchCtxt < ' _ , ' p , Cx > ,
1467
+ cx : MatchCtxt < ' _ , Cx > ,
1468
1468
arms : & [ MatchArm < ' p , Cx > ] ,
1469
1469
scrut_ty : Cx :: Ty ,
1470
1470
scrut_validity : ValidityConstraint ,
0 commit comments