@@ -39,6 +39,7 @@ pub trait NoopVisitItemKind {
39
39
fn noop_visit (
40
40
& mut self ,
41
41
ctxt : Option < AssocCtxt > ,
42
+ ident : Ident ,
42
43
span : Span ,
43
44
id : NodeId ,
44
45
visitor : & mut impl MutVisitor ,
@@ -897,7 +898,7 @@ fn noop_visit_coroutine_kind<T: MutVisitor>(coroutine_kind: &mut CoroutineKind,
897
898
898
899
fn noop_visit_fn < T : MutVisitor > ( kind : FnKind < ' _ > , vis : & mut T ) {
899
900
match kind {
900
- FnKind :: Fn ( _ctxt, FnSig { header, decl, span } , generics, body) => {
901
+ FnKind :: Fn ( _ctxt, _ident , FnSig { header, decl, span } , generics, body) => {
901
902
// Identifier and visibility are visited as a part of the item.
902
903
vis. visit_fn_header ( header) ;
903
904
vis. visit_generics ( generics) ;
@@ -1098,17 +1099,19 @@ pub fn noop_visit_block<T: MutVisitor>(block: &mut P<Block>, vis: &mut T) {
1098
1099
1099
1100
pub fn noop_visit_item_kind (
1100
1101
kind : & mut impl NoopVisitItemKind ,
1102
+ ident : Ident ,
1101
1103
span : Span ,
1102
1104
id : NodeId ,
1103
1105
vis : & mut impl MutVisitor ,
1104
1106
) {
1105
- kind. noop_visit ( None , span, id, vis)
1107
+ kind. noop_visit ( None , ident , span, id, vis)
1106
1108
}
1107
1109
1108
1110
impl NoopVisitItemKind for ItemKind {
1109
1111
fn noop_visit (
1110
1112
& mut self ,
1111
1113
ctxt : Option < AssocCtxt > ,
1114
+ ident : Ident ,
1112
1115
span : Span ,
1113
1116
id : NodeId ,
1114
1117
vis : & mut impl MutVisitor ,
@@ -1126,7 +1129,7 @@ impl NoopVisitItemKind for ItemKind {
1126
1129
}
1127
1130
ItemKind :: Fn ( box Fn { defaultness, generics, sig, body } ) => {
1128
1131
visit_defaultness ( defaultness, vis) ;
1129
- vis. visit_fn ( FnKind :: Fn ( FnCtxt :: Free , sig, generics, body) , span, id) ;
1132
+ vis. visit_fn ( FnKind :: Fn ( FnCtxt :: Free , ident , sig, generics, body) , span, id) ;
1130
1133
}
1131
1134
ItemKind :: Mod ( safety, mod_kind) => {
1132
1135
visit_safety ( safety, vis) ;
@@ -1228,6 +1231,7 @@ impl NoopVisitItemKind for AssocItemKind {
1228
1231
fn noop_visit (
1229
1232
& mut self ,
1230
1233
ctxt : Option < AssocCtxt > ,
1234
+ ident : Ident ,
1231
1235
span : Span ,
1232
1236
id : NodeId ,
1233
1237
visitor : & mut impl MutVisitor ,
@@ -1239,7 +1243,11 @@ impl NoopVisitItemKind for AssocItemKind {
1239
1243
}
1240
1244
AssocItemKind :: Fn ( box Fn { defaultness, generics, sig, body } ) => {
1241
1245
visit_defaultness ( defaultness, visitor) ;
1242
- visitor. visit_fn ( FnKind :: Fn ( FnCtxt :: Assoc ( ctxt) , sig, generics, body) , span, id) ;
1246
+ visitor. visit_fn (
1247
+ FnKind :: Fn ( FnCtxt :: Assoc ( ctxt) , ident, sig, generics, body) ,
1248
+ span,
1249
+ id,
1250
+ ) ;
1243
1251
}
1244
1252
AssocItemKind :: Type ( box TyAlias {
1245
1253
defaultness,
@@ -1330,7 +1338,7 @@ pub fn noop_flat_map_item<K: NoopVisitItemKind>(
1330
1338
visit_attrs ( attrs, visitor) ;
1331
1339
visitor. visit_vis ( vis) ;
1332
1340
visitor. visit_ident ( ident) ;
1333
- kind. noop_visit ( ctxt, * span, * id, visitor) ;
1341
+ kind. noop_visit ( ctxt, * ident , * span, * id, visitor) ;
1334
1342
visit_lazy_tts ( tokens, visitor) ;
1335
1343
visitor. visit_span ( span) ;
1336
1344
smallvec ! [ item]
@@ -1340,6 +1348,7 @@ impl NoopVisitItemKind for ForeignItemKind {
1340
1348
fn noop_visit (
1341
1349
& mut self ,
1342
1350
ctxt : Option < AssocCtxt > ,
1351
+ ident : Ident ,
1343
1352
span : Span ,
1344
1353
id : NodeId ,
1345
1354
visitor : & mut impl MutVisitor ,
@@ -1352,7 +1361,7 @@ impl NoopVisitItemKind for ForeignItemKind {
1352
1361
}
1353
1362
ForeignItemKind :: Fn ( box Fn { defaultness, generics, sig, body } ) => {
1354
1363
visit_defaultness ( defaultness, visitor) ;
1355
- visitor. visit_fn ( FnKind :: Fn ( FnCtxt :: Foreign , sig, generics, body) , span, id) ;
1364
+ visitor. visit_fn ( FnKind :: Fn ( FnCtxt :: Foreign , ident , sig, generics, body) , span, id) ;
1356
1365
}
1357
1366
ForeignItemKind :: TyAlias ( box TyAlias {
1358
1367
defaultness,
@@ -1826,7 +1835,7 @@ impl<N: DummyAstNode, T: DummyAstNode> DummyAstNode for crate::ast_traits::AstNo
1826
1835
#[ derive( Debug ) ]
1827
1836
pub enum FnKind < ' a > {
1828
1837
/// E.g., `fn foo()`, `fn foo(&self)`, or `extern "Abi" fn foo()`.
1829
- Fn ( FnCtxt , & ' a mut FnSig , & ' a mut Generics , & ' a mut Option < P < Block > > ) ,
1838
+ Fn ( FnCtxt , Ident , & ' a mut FnSig , & ' a mut Generics , & ' a mut Option < P < Block > > ) ,
1830
1839
1831
1840
/// E.g., `|x, y| body`.
1832
1841
Closure ( & ' a mut ClosureBinder , & ' a mut P < FnDecl > , & ' a mut P < Expr > ) ,
0 commit comments