@@ -26,15 +26,6 @@ macro_rules! mutability_dependent {
26
26
fn visit_path( & mut self , path: & ' ast Path , _id: NodeId ) -> Self :: Result {
27
27
walk_path( self , path)
28
28
}
29
- // FIXME: inconsistent
30
- fn visit_use_tree(
31
- & mut self ,
32
- use_tree: & ' ast UseTree ,
33
- id: NodeId ,
34
- _nested: bool ,
35
- ) -> Self :: Result {
36
- walk_use_tree( self , use_tree, id)
37
- }
38
29
} ;
39
30
( mut $( $lf: lifetime) ?) => {
40
31
/// Mutable token visiting only exists for the `macro_rules` token marker and should not be
@@ -83,10 +74,6 @@ macro_rules! mutability_dependent {
83
74
walk_meta_item( self , meta_item) ;
84
75
}
85
76
86
- fn visit_use_tree( & mut self , use_tree: & mut UseTree ) {
87
- walk_use_tree( self , use_tree) ;
88
- }
89
-
90
77
fn flat_map_foreign_item( & mut self , ni: P <ForeignItem >) -> SmallVec <[ P <ForeignItem >; 1 ] > {
91
78
walk_flat_map_item( self , ni)
92
79
}
@@ -365,6 +352,14 @@ macro_rules! make_ast_visitor {
365
352
self . visit_expr( ex)
366
353
}
367
354
355
+ fn visit_use_tree(
356
+ & mut self ,
357
+ use_tree: ref_t!( UseTree ) ,
358
+ id: NodeId ,
359
+ _nested: bool ,
360
+ ) -> result!( ) {
361
+ walk_use_tree( self , use_tree, id)
362
+ }
368
363
}
369
364
370
365
macro_rules! visit_span {
@@ -1855,15 +1850,15 @@ pub mod mut_visit {
1855
1850
vis. visit_span ( close) ;
1856
1851
}
1857
1852
1858
- fn walk_use_tree < T : MutVisitor > ( vis : & mut T , use_tree : & mut UseTree ) {
1853
+ fn walk_use_tree < T : MutVisitor > ( vis : & mut T , use_tree : & mut UseTree , _id : NodeId ) {
1859
1854
let UseTree { prefix, kind, span } = use_tree;
1860
1855
vis. visit_path ( prefix) ;
1861
1856
match kind {
1862
1857
UseTreeKind :: Simple ( rename) => visit_opt ( rename, |rename| vis. visit_ident ( rename) ) ,
1863
1858
UseTreeKind :: Nested { items, span } => {
1864
1859
for ( tree, id) in items {
1865
1860
vis. visit_id ( id) ;
1866
- vis. visit_use_tree ( tree) ;
1861
+ vis. visit_use_tree ( tree, * id , true ) ;
1867
1862
}
1868
1863
vis. visit_span ( span) ;
1869
1864
}
@@ -2332,7 +2327,7 @@ pub mod mut_visit {
2332
2327
fn walk ( & mut self , span : Span , id : NodeId , vis : & mut impl MutVisitor ) {
2333
2328
match self {
2334
2329
ItemKind :: ExternCrate ( _orig_name) => { }
2335
- ItemKind :: Use ( use_tree) => vis. visit_use_tree ( use_tree) ,
2330
+ ItemKind :: Use ( use_tree) => vis. visit_use_tree ( use_tree, id , false ) ,
2336
2331
ItemKind :: Static ( box StaticItem { ty, safety : _, mutability : _, expr } ) => {
2337
2332
vis. visit_ty ( ty) ;
2338
2333
visit_opt ( expr, |expr| vis. visit_expr ( expr) ) ;
0 commit comments