@@ -75,14 +75,12 @@ pub trait Folder {
75
75
}
76
76
77
77
fn fold_struct_field ( & mut self , sf : & StructField ) -> StructField {
78
- let fold_attribute = |x| fold_attribute_ ( x, self ) ;
79
-
80
78
Spanned {
81
79
node : ast:: StructField_ {
82
80
kind : sf. node . kind ,
83
81
id : self . new_id ( sf. node . id ) ,
84
82
ty : self . fold_ty ( sf. node . ty ) ,
85
- attrs : sf. node . attrs . map ( |e| fold_attribute ( * e) )
83
+ attrs : sf. node . attrs . map ( |e| fold_attribute_ ( * e, self ) )
86
84
} ,
87
85
span : self . new_span ( sf. span )
88
86
}
@@ -225,8 +223,7 @@ pub trait Folder {
225
223
}
226
224
}
227
225
228
- let fold_attribute = |x| fold_attribute_ ( x, self ) ;
229
- let attrs = v. node . attrs . map ( |x| fold_attribute ( * x) ) ;
226
+ let attrs = v. node . attrs . map ( |x| fold_attribute_ ( * x, self ) ) ;
230
227
231
228
let de = match v. node . disr_expr {
232
229
Some ( e) => Some ( self . fold_expr ( e) ) ,
@@ -323,8 +320,7 @@ fn fold_meta_item_<T: Folder>(mi: @MetaItem, fld: &mut T) -> @MetaItem {
323
320
match mi. node {
324
321
MetaWord ( ref id) => MetaWord ( ( * id) . clone ( ) ) ,
325
322
MetaList ( ref id, ref mis) => {
326
- let fold_meta_item = |x| fold_meta_item_ ( x, fld) ;
327
- MetaList ( ( * id) . clone ( ) , mis. map ( |e| fold_meta_item ( * e) ) )
323
+ MetaList ( ( * id) . clone ( ) , mis. map ( |e| fold_meta_item_ ( * e, fld) ) )
328
324
}
329
325
MetaNameValue ( ref id, ref s) => {
330
326
MetaNameValue ( ( * id) . clone ( ) , ( * s) . clone ( ) )
@@ -604,23 +600,18 @@ pub fn noop_fold_mod<T: Folder>(m: &Mod, folder: &mut T) -> Mod {
604
600
}
605
601
606
602
pub fn noop_fold_crate < T : Folder > ( c : Crate , folder : & mut T ) -> Crate {
607
- let fold_meta_item = |x| fold_meta_item_ ( x, folder) ;
608
- let fold_attribute = |x| fold_attribute_ ( x, folder) ;
609
-
610
603
Crate {
611
604
module : folder. fold_mod ( & c. module ) ,
612
- attrs : c. attrs . map ( |x| fold_attribute ( * x) ) ,
613
- config : c. config . map ( |x| fold_meta_item ( * x) ) ,
605
+ attrs : c. attrs . map ( |x| fold_attribute_ ( * x, folder ) ) ,
606
+ config : c. config . map ( |x| fold_meta_item_ ( * x, folder ) ) ,
614
607
span : folder. new_span ( c. span ) ,
615
608
}
616
609
}
617
610
618
611
pub fn noop_fold_item < T : Folder > ( i : & Item , folder : & mut T ) -> SmallVector < @Item > {
619
- let fold_attribute = |x| fold_attribute_ ( x, folder) ;
620
-
621
612
SmallVector :: one ( @Item {
622
613
ident : folder. fold_ident ( i. ident ) ,
623
- attrs : i. attrs . map ( |e| fold_attribute ( * e) ) ,
614
+ attrs : i. attrs . map ( |e| fold_attribute_ ( * e, folder ) ) ,
624
615
id : folder. new_id ( i. id ) ,
625
616
node : folder. fold_item_underscore ( & i. node ) ,
626
617
vis : i. vis ,
@@ -711,8 +702,6 @@ pub fn noop_fold_pat<T: Folder>(p: @Pat, folder: &mut T) -> @Pat {
711
702
}
712
703
713
704
pub fn noop_fold_expr < T : Folder > ( e : @Expr , folder : & mut T ) -> @Expr {
714
- let fold_field = |x| fold_field_ ( x, folder) ;
715
-
716
705
let node = match e. node {
717
706
ExprVstore ( e, v) => {
718
707
ExprVstore ( folder. fold_expr ( e) , v)
@@ -824,7 +813,7 @@ pub fn noop_fold_expr<T: Folder>(e: @Expr, folder: &mut T) -> @Expr {
824
813
ExprMac ( ref mac) => ExprMac ( folder. fold_mac ( mac) ) ,
825
814
ExprStruct ( ref path, ref fields, maybe_expr) => {
826
815
ExprStruct ( folder. fold_path ( path) ,
827
- fields. map ( |x| fold_field ( * x) ) ,
816
+ fields. map ( |x| fold_field_ ( * x, folder ) ) ,
828
817
maybe_expr. map ( |x| folder. fold_expr ( x) ) )
829
818
} ,
830
819
ExprParen ( ex) => ExprParen ( folder. fold_expr ( ex) )
0 commit comments