@@ -47,7 +47,7 @@ pub trait Folder : Sized {
47
47
noop_fold_view_path ( view_path, self )
48
48
}
49
49
50
- fn fold_foreign_item ( & mut self , ni : P < ForeignItem > ) -> P < ForeignItem > {
50
+ fn fold_foreign_item ( & mut self , ni : ForeignItem ) -> ForeignItem {
51
51
noop_fold_foreign_item ( ni, self )
52
52
}
53
53
@@ -67,11 +67,11 @@ pub trait Folder : Sized {
67
67
noop_fold_item_underscore ( i, self )
68
68
}
69
69
70
- fn fold_trait_item ( & mut self , i : P < TraitItem > ) -> P < TraitItem > {
70
+ fn fold_trait_item ( & mut self , i : TraitItem ) -> TraitItem {
71
71
noop_fold_trait_item ( i, self )
72
72
}
73
73
74
- fn fold_impl_item ( & mut self , i : P < ImplItem > ) -> P < ImplItem > {
74
+ fn fold_impl_item ( & mut self , i : ImplItem ) -> ImplItem {
75
75
noop_fold_impl_item ( i, self )
76
76
}
77
77
@@ -83,7 +83,7 @@ pub trait Folder : Sized {
83
83
noop_fold_block ( b, self )
84
84
}
85
85
86
- fn fold_stmt ( & mut self , s : P < Stmt > ) -> P < Stmt > {
86
+ fn fold_stmt ( & mut self , s : Stmt ) -> Stmt {
87
87
noop_fold_stmt ( s, self )
88
88
}
89
89
@@ -107,7 +107,7 @@ pub trait Folder : Sized {
107
107
noop_fold_ty ( t, self )
108
108
}
109
109
110
- fn fold_ty_binding ( & mut self , t : P < TypeBinding > ) -> P < TypeBinding > {
110
+ fn fold_ty_binding ( & mut self , t : TypeBinding ) -> TypeBinding {
111
111
noop_fold_ty_binding ( t, self )
112
112
}
113
113
@@ -119,7 +119,7 @@ pub trait Folder : Sized {
119
119
noop_fold_foreign_mod ( nm, self )
120
120
}
121
121
122
- fn fold_variant ( & mut self , v : P < Variant > ) -> P < Variant > {
122
+ fn fold_variant ( & mut self , v : Variant ) -> Variant {
123
123
noop_fold_variant ( v, self )
124
124
}
125
125
@@ -333,15 +333,13 @@ pub fn noop_fold_decl<T: Folder>(d: P<Decl>, fld: &mut T) -> P<Decl> {
333
333
} )
334
334
}
335
335
336
- pub fn noop_fold_ty_binding < T : Folder > ( b : P < TypeBinding > , fld : & mut T ) -> P < TypeBinding > {
337
- b. map ( |TypeBinding { id, name, ty, span } | {
338
- TypeBinding {
339
- id : fld. new_id ( id) ,
340
- name : name,
341
- ty : fld. fold_ty ( ty) ,
342
- span : fld. new_span ( span) ,
343
- }
344
- } )
336
+ pub fn noop_fold_ty_binding < T : Folder > ( b : TypeBinding , fld : & mut T ) -> TypeBinding {
337
+ TypeBinding {
338
+ id : fld. new_id ( b. id ) ,
339
+ name : b. name ,
340
+ ty : fld. fold_ty ( b. ty ) ,
341
+ span : fld. new_span ( b. span ) ,
342
+ }
345
343
}
346
344
347
345
pub fn noop_fold_ty < T : Folder > ( t : P < Ty > , fld : & mut T ) -> P < Ty > {
@@ -402,18 +400,16 @@ pub fn noop_fold_foreign_mod<T: Folder>(ForeignMod { abi, items }: ForeignMod,
402
400
}
403
401
}
404
402
405
- pub fn noop_fold_variant < T : Folder > ( v : P < Variant > , fld : & mut T ) -> P < Variant > {
406
- v. map ( |Spanned { node : Variant_ { name, attrs, data, disr_expr } , span } | {
407
- Spanned {
408
- node : Variant_ {
409
- name : name,
410
- attrs : fold_attrs ( attrs, fld) ,
411
- data : fld. fold_variant_data ( data) ,
412
- disr_expr : disr_expr. map ( |e| fld. fold_expr ( e) ) ,
413
- } ,
414
- span : fld. new_span ( span) ,
415
- }
416
- } )
403
+ pub fn noop_fold_variant < T : Folder > ( v : Variant , fld : & mut T ) -> Variant {
404
+ Spanned {
405
+ node : Variant_ {
406
+ name : v. node . name ,
407
+ attrs : fold_attrs ( v. node . attrs , fld) ,
408
+ data : fld. fold_variant_data ( v. node . data ) ,
409
+ disr_expr : v. node . disr_expr . map ( |e| fld. fold_expr ( e) ) ,
410
+ } ,
411
+ span : fld. new_span ( v. span ) ,
412
+ }
417
413
}
418
414
419
415
pub fn noop_fold_name < T : Folder > ( n : Name , _: & mut T ) -> Name {
@@ -814,51 +810,47 @@ pub fn noop_fold_item_underscore<T: Folder>(i: Item_, folder: &mut T) -> Item_ {
814
810
}
815
811
}
816
812
817
- pub fn noop_fold_trait_item < T : Folder > ( i : P < TraitItem > ,
813
+ pub fn noop_fold_trait_item < T : Folder > ( i : TraitItem ,
818
814
folder : & mut T )
819
- -> P < TraitItem > {
820
- i. map ( |TraitItem { id, name, attrs, node, span } | {
821
- TraitItem {
822
- id : folder. new_id ( id) ,
823
- name : folder. fold_name ( name) ,
824
- attrs : fold_attrs ( attrs, folder) ,
825
- node : match node {
826
- ConstTraitItem ( ty, default) => {
827
- ConstTraitItem ( folder. fold_ty ( ty) , default. map ( |x| folder. fold_expr ( x) ) )
828
- }
829
- MethodTraitItem ( sig, body) => {
830
- MethodTraitItem ( noop_fold_method_sig ( sig, folder) ,
831
- body. map ( |x| folder. fold_block ( x) ) )
832
- }
833
- TypeTraitItem ( bounds, default) => {
834
- TypeTraitItem ( folder. fold_bounds ( bounds) ,
835
- default. map ( |x| folder. fold_ty ( x) ) )
836
- }
837
- } ,
838
- span : folder. new_span ( span) ,
839
- }
840
- } )
815
+ -> TraitItem {
816
+ TraitItem {
817
+ id : folder. new_id ( i. id ) ,
818
+ name : folder. fold_name ( i. name ) ,
819
+ attrs : fold_attrs ( i. attrs , folder) ,
820
+ node : match i. node {
821
+ ConstTraitItem ( ty, default) => {
822
+ ConstTraitItem ( folder. fold_ty ( ty) , default. map ( |x| folder. fold_expr ( x) ) )
823
+ }
824
+ MethodTraitItem ( sig, body) => {
825
+ MethodTraitItem ( noop_fold_method_sig ( sig, folder) ,
826
+ body. map ( |x| folder. fold_block ( x) ) )
827
+ }
828
+ TypeTraitItem ( bounds, default) => {
829
+ TypeTraitItem ( folder. fold_bounds ( bounds) ,
830
+ default. map ( |x| folder. fold_ty ( x) ) )
831
+ }
832
+ } ,
833
+ span : folder. new_span ( i. span ) ,
834
+ }
841
835
}
842
836
843
- pub fn noop_fold_impl_item < T : Folder > ( i : P < ImplItem > , folder : & mut T ) -> P < ImplItem > {
844
- i. map ( |ImplItem { id, name, attrs, node, vis, span } | {
845
- ImplItem {
846
- id : folder. new_id ( id) ,
847
- name : folder. fold_name ( name) ,
848
- attrs : fold_attrs ( attrs, folder) ,
849
- vis : vis,
850
- node : match node {
851
- ImplItemKind :: Const ( ty, expr) => {
852
- ImplItemKind :: Const ( folder. fold_ty ( ty) , folder. fold_expr ( expr) )
853
- }
854
- ImplItemKind :: Method ( sig, body) => {
855
- ImplItemKind :: Method ( noop_fold_method_sig ( sig, folder) , folder. fold_block ( body) )
856
- }
857
- ImplItemKind :: Type ( ty) => ImplItemKind :: Type ( folder. fold_ty ( ty) ) ,
858
- } ,
859
- span : folder. new_span ( span) ,
860
- }
861
- } )
837
+ pub fn noop_fold_impl_item < T : Folder > ( i : ImplItem , folder : & mut T ) -> ImplItem {
838
+ ImplItem {
839
+ id : folder. new_id ( i. id ) ,
840
+ name : folder. fold_name ( i. name ) ,
841
+ attrs : fold_attrs ( i. attrs , folder) ,
842
+ vis : i. vis ,
843
+ node : match i. node {
844
+ ImplItemKind :: Const ( ty, expr) => {
845
+ ImplItemKind :: Const ( folder. fold_ty ( ty) , folder. fold_expr ( expr) )
846
+ }
847
+ ImplItemKind :: Method ( sig, body) => {
848
+ ImplItemKind :: Method ( noop_fold_method_sig ( sig, folder) , folder. fold_block ( body) )
849
+ }
850
+ ImplItemKind :: Type ( ty) => ImplItemKind :: Type ( folder. fold_ty ( ty) ) ,
851
+ } ,
852
+ span : folder. new_span ( i. span ) ,
853
+ }
862
854
}
863
855
864
856
pub fn noop_fold_mod < T : Folder > ( Mod { inner, item_ids } : Mod , folder : & mut T ) -> Mod {
@@ -935,24 +927,22 @@ pub fn noop_fold_item<T: Folder>(item: Item, folder: &mut T) -> Item {
935
927
}
936
928
}
937
929
938
- pub fn noop_fold_foreign_item < T : Folder > ( ni : P < ForeignItem > , folder : & mut T ) -> P < ForeignItem > {
939
- ni. map ( |ForeignItem { id, name, attrs, node, span, vis } | {
940
- ForeignItem {
941
- id : folder. new_id ( id) ,
942
- name : folder. fold_name ( name) ,
943
- attrs : fold_attrs ( attrs, folder) ,
944
- node : match node {
945
- ForeignItemFn ( fdec, generics) => {
946
- ForeignItemFn ( folder. fold_fn_decl ( fdec) , folder. fold_generics ( generics) )
947
- }
948
- ForeignItemStatic ( t, m) => {
949
- ForeignItemStatic ( folder. fold_ty ( t) , m)
950
- }
951
- } ,
952
- vis : vis,
953
- span : folder. new_span ( span) ,
954
- }
955
- } )
930
+ pub fn noop_fold_foreign_item < T : Folder > ( ni : ForeignItem , folder : & mut T ) -> ForeignItem {
931
+ ForeignItem {
932
+ id : folder. new_id ( ni. id ) ,
933
+ name : folder. fold_name ( ni. name ) ,
934
+ attrs : fold_attrs ( ni. attrs , folder) ,
935
+ node : match ni. node {
936
+ ForeignItemFn ( fdec, generics) => {
937
+ ForeignItemFn ( folder. fold_fn_decl ( fdec) , folder. fold_generics ( generics) )
938
+ }
939
+ ForeignItemStatic ( t, m) => {
940
+ ForeignItemStatic ( folder. fold_ty ( t) , m)
941
+ }
942
+ } ,
943
+ vis : ni. vis ,
944
+ span : folder. new_span ( ni. span ) ,
945
+ }
956
946
}
957
947
958
948
pub fn noop_fold_method_sig < T : Folder > ( sig : MethodSig , folder : & mut T ) -> MethodSig {
@@ -1147,32 +1137,29 @@ pub fn noop_fold_expr<T: Folder>(Expr { id, node, span, attrs }: Expr, folder: &
1147
1137
}
1148
1138
}
1149
1139
1150
- pub fn noop_fold_stmt < T : Folder > ( stmt : P < Stmt > , folder : & mut T )
1151
- -> P < Stmt > {
1152
- stmt. map ( |Spanned { node, span } | {
1153
- let span = folder. new_span ( span) ;
1154
- match node {
1155
- StmtDecl ( d, id) => {
1156
- let id = folder. new_id ( id) ;
1157
- Spanned {
1158
- node : StmtDecl ( folder. fold_decl ( d) , id) ,
1159
- span : span
1160
- }
1140
+ pub fn noop_fold_stmt < T : Folder > ( stmt : Stmt , folder : & mut T ) -> Stmt {
1141
+ let span = folder. new_span ( stmt. span ) ;
1142
+ match stmt. node {
1143
+ StmtDecl ( d, id) => {
1144
+ let id = folder. new_id ( id) ;
1145
+ Spanned {
1146
+ node : StmtDecl ( folder. fold_decl ( d) , id) ,
1147
+ span : span
1161
1148
}
1162
- StmtExpr ( e , id ) => {
1163
- let id = folder . new_id ( id ) ;
1164
- Spanned {
1165
- node : StmtExpr ( folder . fold_expr ( e ) , id ) ,
1166
- span : span ,
1167
- }
1149
+ }
1150
+ StmtExpr ( e , id ) => {
1151
+ let id = folder . new_id ( id ) ;
1152
+ Spanned {
1153
+ node : StmtExpr ( folder . fold_expr ( e ) , id ) ,
1154
+ span : span ,
1168
1155
}
1169
- StmtSemi ( e , id ) => {
1170
- let id = folder . new_id ( id ) ;
1171
- Spanned {
1172
- node : StmtSemi ( folder . fold_expr ( e ) , id ) ,
1173
- span : span ,
1174
- }
1156
+ }
1157
+ StmtSemi ( e , id ) => {
1158
+ let id = folder . new_id ( id ) ;
1159
+ Spanned {
1160
+ node : StmtSemi ( folder . fold_expr ( e ) , id ) ,
1161
+ span : span ,
1175
1162
}
1176
1163
}
1177
- } )
1164
+ }
1178
1165
}
0 commit comments