@@ -26,7 +26,7 @@ pub struct SpanlessEq<'a, 'tcx> {
26
26
cx : & ' a LateContext < ' tcx > ,
27
27
maybe_typeck_results : Option < & ' tcx TypeckResults < ' tcx > > ,
28
28
allow_side_effects : bool ,
29
- expr_fallback : Option < Box < dyn Fn ( & Expr < ' _ > , & Expr < ' _ > ) -> bool + ' a > > ,
29
+ expr_fallback : Option < Box < dyn FnMut ( & Expr < ' _ > , & Expr < ' _ > ) -> bool + ' a > > ,
30
30
}
31
31
32
32
impl < ' a , ' tcx > SpanlessEq < ' a , ' tcx > {
@@ -47,7 +47,7 @@ impl<'a, 'tcx> SpanlessEq<'a, 'tcx> {
47
47
}
48
48
}
49
49
50
- pub fn expr_fallback ( self , expr_fallback : impl Fn ( & Expr < ' _ > , & Expr < ' _ > ) -> bool + ' a ) -> Self {
50
+ pub fn expr_fallback ( self , expr_fallback : impl FnMut ( & Expr < ' _ > , & Expr < ' _ > ) -> bool + ' a ) -> Self {
51
51
Self {
52
52
expr_fallback : Some ( Box :: new ( expr_fallback) ) ,
53
53
..self
@@ -209,7 +209,7 @@ impl HirEqInterExpr<'_, '_, '_> {
209
209
( & ExprKind :: DropTemps ( ref le) , & ExprKind :: DropTemps ( ref re) ) => self . eq_expr ( le, re) ,
210
210
_ => false ,
211
211
} ;
212
- is_eq || self . inner . expr_fallback . as_ref ( ) . map_or ( false , |f| f ( left, right) )
212
+ is_eq || self . inner . expr_fallback . as_mut ( ) . map_or ( false , |f| f ( left, right) )
213
213
}
214
214
215
215
fn eq_exprs ( & mut self , left : & [ Expr < ' _ > ] , right : & [ Expr < ' _ > ] ) -> bool {
0 commit comments