@@ -72,7 +72,7 @@ impl<'a, 'tcx> FnCtxt<'a, 'tcx> {
72
72
let is_nrp = self . is_non_ref_pat ( pat, path_resolution. map ( |( res, ..) | res) ) ;
73
73
let ( expected, def_bm) = self . calc_default_binding_mode ( pat, expected, def_bm, is_nrp) ;
74
74
75
- let ty = match & pat. kind {
75
+ let ty = match pat. kind {
76
76
PatKind :: Wild => expected,
77
77
PatKind :: Lit ( lt) => self . check_pat_lit ( pat. span , lt, expected, discrim_span) ,
78
78
PatKind :: Range ( begin, end, _) => {
@@ -82,50 +82,40 @@ impl<'a, 'tcx> FnCtxt<'a, 'tcx> {
82
82
}
83
83
}
84
84
PatKind :: Binding ( ba, var_id, _, sub) => {
85
- let sub = sub. as_deref ( ) ;
86
- self . check_pat_ident ( pat, * ba, * var_id, sub, expected, def_bm, discrim_span)
85
+ self . check_pat_ident ( pat, ba, var_id, sub, expected, def_bm, discrim_span)
87
86
}
88
- PatKind :: TupleStruct ( qpath, subpats, ddpos) => self . check_pat_tuple_struct (
87
+ PatKind :: TupleStruct ( ref qpath, subpats, ddpos) => self . check_pat_tuple_struct (
89
88
pat,
90
89
qpath,
91
90
subpats,
92
- * ddpos,
91
+ ddpos,
93
92
expected,
94
93
def_bm,
95
94
discrim_span,
96
95
) ,
97
- PatKind :: Path ( qpath) => {
96
+ PatKind :: Path ( ref qpath) => {
98
97
self . check_pat_path ( pat, path_resolution. unwrap ( ) , qpath, expected)
99
98
}
100
- PatKind :: Struct ( qpath, fields, etc) => {
101
- self . check_pat_struct ( pat, qpath, fields, * etc, expected, def_bm, discrim_span)
99
+ PatKind :: Struct ( ref qpath, fields, etc) => {
100
+ self . check_pat_struct ( pat, qpath, fields, etc, expected, def_bm, discrim_span)
102
101
}
103
102
PatKind :: Or ( pats) => {
104
- for pat in * pats {
103
+ for pat in pats {
105
104
self . check_pat ( pat, expected, def_bm, discrim_span) ;
106
105
}
107
106
expected
108
107
}
109
108
PatKind :: Tuple ( elements, ddpos) => {
110
- self . check_pat_tuple ( pat. span , * elements, * ddpos, expected, def_bm, discrim_span)
109
+ self . check_pat_tuple ( pat. span , elements, ddpos, expected, def_bm, discrim_span)
111
110
}
112
111
PatKind :: Box ( inner) => {
113
112
self . check_pat_box ( pat. span , inner, expected, def_bm, discrim_span)
114
113
}
115
114
PatKind :: Ref ( inner, mutbl) => {
116
- self . check_pat_ref ( pat, inner, * mutbl, expected, def_bm, discrim_span)
115
+ self . check_pat_ref ( pat, inner, mutbl, expected, def_bm, discrim_span)
117
116
}
118
117
PatKind :: Slice ( before, slice, after) => {
119
- let slice = slice. as_deref ( ) ;
120
- self . check_pat_slice (
121
- pat. span ,
122
- * before,
123
- slice,
124
- * after,
125
- expected,
126
- def_bm,
127
- discrim_span,
128
- )
118
+ self . check_pat_slice ( pat. span , before, slice, after, expected, def_bm, discrim_span)
129
119
}
130
120
} ;
131
121
0 commit comments