@@ -1163,7 +1163,10 @@ pub mod visit {
1163
1163
pub trait WalkItemKind : Sized {
1164
1164
fn walk < ' a , V : Visitor < ' a > > (
1165
1165
& ' a self ,
1166
- item : & ' a Item < Self > ,
1166
+ id : NodeId ,
1167
+ span : Span ,
1168
+ vis : & ' a Visibility ,
1169
+ ident : & ' a Ident ,
1167
1170
visitor : & mut V ,
1168
1171
) -> V :: Result ;
1169
1172
}
@@ -1173,13 +1176,15 @@ pub mod visit {
1173
1176
impl WalkItemKind for ItemKind {
1174
1177
fn walk < ' a , V : Visitor < ' a > > (
1175
1178
& ' a self ,
1176
- item : & ' a Item < Self > ,
1179
+ id : NodeId ,
1180
+ span : Span ,
1181
+ vis : & ' a Visibility ,
1182
+ ident : & ' a Ident ,
1177
1183
visitor : & mut V ,
1178
1184
) -> V :: Result {
1179
- let Item { id, span, vis, ident, .. } = item;
1180
1185
match self {
1181
1186
ItemKind :: ExternCrate ( _rename) => { }
1182
- ItemKind :: Use ( use_tree) => try_visit ! ( visitor. visit_use_tree( use_tree, * id, false ) ) ,
1187
+ ItemKind :: Use ( use_tree) => try_visit ! ( visitor. visit_use_tree( use_tree, id, false ) ) ,
1183
1188
ItemKind :: Static ( box StaticItem { ty, safety : _, mutability : _, expr } ) => {
1184
1189
try_visit ! ( visitor. visit_ty( ty) ) ;
1185
1190
visit_opt ! ( visitor, visit_expr, expr) ;
@@ -1192,7 +1197,7 @@ pub mod visit {
1192
1197
ItemKind :: Fn ( box Fn { defaultness : _, generics, sig, body } ) => {
1193
1198
let kind =
1194
1199
FnKind :: Fn ( FnCtxt :: Free , * ident, sig, vis, generics, body. as_deref ( ) ) ;
1195
- try_visit ! ( visitor. visit_fn( kind, * span, * id) ) ;
1200
+ try_visit ! ( visitor. visit_fn( kind, span, id) ) ;
1196
1201
}
1197
1202
ItemKind :: Mod ( _unsafety, mod_kind) => match mod_kind {
1198
1203
ModKind :: Loaded ( items, _inline, _inner_span) => {
@@ -1249,7 +1254,7 @@ pub mod visit {
1249
1254
walk_list ! ( visitor, visit_param_bound, bounds, BoundKind :: Bound ) ;
1250
1255
}
1251
1256
ItemKind :: MacCall ( mac) => try_visit ! ( visitor. visit_mac_call( mac) ) ,
1252
- ItemKind :: MacroDef ( ts) => try_visit ! ( visitor. visit_mac_def( ts, * id) ) ,
1257
+ ItemKind :: MacroDef ( ts) => try_visit ! ( visitor. visit_mac_def( ts, id) ) ,
1253
1258
ItemKind :: Delegation ( box Delegation {
1254
1259
id,
1255
1260
qself,
@@ -1265,7 +1270,7 @@ pub mod visit {
1265
1270
}
1266
1271
ItemKind :: DelegationMac ( box DelegationMac { qself, prefix, suffixes, body } ) => {
1267
1272
try_visit ! ( visitor. visit_qself( qself) ) ;
1268
- try_visit ! ( visitor. visit_path( prefix, * id) ) ;
1273
+ try_visit ! ( visitor. visit_path( prefix, id) ) ;
1269
1274
if let Some ( suffixes) = suffixes {
1270
1275
for ( ident, rename) in suffixes {
1271
1276
visitor. visit_ident ( * ident) ;
@@ -1285,11 +1290,11 @@ pub mod visit {
1285
1290
visitor : & mut V ,
1286
1291
item : & ' a Item < impl WalkItemKind > ,
1287
1292
) -> V :: Result {
1288
- let & Item { id : _ , span : _ , ident, ref vis, ref attrs, ref kind, tokens : _ } = item;
1293
+ let Item { id, span, ident, vis, attrs, kind, tokens : _ } = item;
1289
1294
walk_list ! ( visitor, visit_attribute, attrs) ;
1290
1295
try_visit ! ( visitor. visit_vis( vis) ) ;
1291
- try_visit ! ( visitor. visit_ident( ident) ) ;
1292
- try_visit ! ( kind. walk( item , visitor) ) ;
1296
+ try_visit ! ( visitor. visit_ident( * ident) ) ;
1297
+ try_visit ! ( kind. walk( * id , * span , vis , ident , visitor) ) ;
1293
1298
V :: Result :: output ( )
1294
1299
}
1295
1300
@@ -1363,18 +1368,20 @@ pub mod visit {
1363
1368
impl WalkItemKind for ForeignItemKind {
1364
1369
fn walk < ' a , V : Visitor < ' a > > (
1365
1370
& ' a self ,
1366
- item : & ' a Item < Self > ,
1371
+ id : NodeId ,
1372
+ span : Span ,
1373
+ vis : & ' a Visibility ,
1374
+ ident : & ' a Ident ,
1367
1375
visitor : & mut V ,
1368
1376
) -> V :: Result {
1369
- let & Item { id, span, ident, ref vis, .. } = item;
1370
1377
match self {
1371
1378
ForeignItemKind :: Static ( box StaticItem { ty, mutability : _, expr, safety : _ } ) => {
1372
1379
try_visit ! ( visitor. visit_ty( ty) ) ;
1373
1380
visit_opt ! ( visitor, visit_expr, expr) ;
1374
1381
}
1375
1382
ForeignItemKind :: Fn ( box Fn { defaultness : _, generics, sig, body } ) => {
1376
1383
let kind =
1377
- FnKind :: Fn ( FnCtxt :: Foreign , ident, sig, vis, generics, body. as_deref ( ) ) ;
1384
+ FnKind :: Fn ( FnCtxt :: Foreign , * ident, sig, vis, generics, body. as_deref ( ) ) ;
1378
1385
try_visit ! ( visitor. visit_fn( kind, span, id) ) ;
1379
1386
}
1380
1387
ForeignItemKind :: TyAlias ( box TyAlias {
0 commit comments