@@ -115,49 +115,25 @@ macro_rules! make_ast_visitor {
115
115
// forget to add handling for it.
116
116
117
117
make_visit!{ AngleBracketedArgs ; visit_angle_bracketed_parameter_data, walk_angle_bracketed_parameter_data}
118
- make_visit!{ AnonConst ; visit_anon_const, walk_anon_const}
119
- make_visit!{ AssocItemConstraint ; visit_assoc_item_constraint, walk_assoc_item_constraint}
120
- make_visit!{ Attribute ; visit_attribute, walk_attribute}
121
118
make_visit!{ CaptureBy ; visit_capture_by, walk_capture_by}
122
- make_visit!{ ClosureBinder ; visit_closure_binder, walk_closure_binder}
123
119
make_visit!{ CoroutineKind ; visit_coroutine_kind, walk_coroutine_kind}
124
- make_visit!{ Crate ; visit_crate, walk_crate}
125
120
make_visit!{ FnHeader ; visit_fn_header, walk_fn_header}
126
121
make_visit!{ ForeignMod ; visit_foreign_mod, walk_foreign_mod}
127
- make_visit!{ FormatArgs ; visit_format_args, walk_format_args}
128
- make_visit!{ GenericArg ; visit_generic_arg, walk_generic_arg}
129
- make_visit!{ GenericArgs ; visit_generic_args, walk_generic_args}
130
- make_visit!{ GenericBound , _ ctxt: BoundKind ; visit_param_bound, walk_param_bound}
131
- make_visit!{ Generics ; visit_generics, walk_generics}
132
122
make_visit!{ Ident ; visit_ident, walk_ident}
133
- make_visit!{ InlineAsm ; visit_inline_asm, walk_inline_asm}
134
- make_visit!{ InlineAsmSym ; visit_inline_asm_sym, walk_inline_asm_sym}
135
- make_visit!{ Label ; visit_label, walk_label}
136
123
make_visit!{ Lifetime ; visit_lifetime, walk_lifetime}
137
- make_visit!{ MacCall ; visit_mac_call, walk_mac}
138
124
make_visit!{ MacroDef ; visit_macro_def, walk_macro_def}
139
125
make_visit!{ MetaItem ; visit_meta_item, walk_meta_item}
140
126
make_visit!{ MetaItemInner ; visit_meta_list_item, walk_meta_list_item}
141
127
make_visit!{ MutTy ; visit_mt, walk_mt}
142
128
make_visit!{ Option <P <QSelf >>; visit_qself, walk_qself}
143
129
make_visit!{ ParenthesizedArgs ; visit_parenthesized_parameter_data, walk_parenthesized_parameter_data}
144
130
make_visit!{ Path ; visit_path, walk_path}
145
- make_visit!{ PathSegment ; visit_path_segment, walk_path_segment}
146
- make_visit!{ PolyTraitRef ; visit_poly_trait_ref, walk_poly_trait_ref}
147
131
make_visit!{ PreciseCapturingArg ; visit_precise_capturing_arg, walk_precise_capturing_arg}
148
- make_visit!{ TraitRef ; visit_trait_ref, walk_trait_ref}
149
132
make_visit!{ UseTree ; visit_use_tree, walk_use_tree}
150
133
make_visit!{ VariantData ; visit_variant_data, walk_variant_data}
151
- make_visit!{ Visibility ; visit_vis, walk_vis}
152
134
make_visit!{ WhereClause ; visit_where_clause, walk_where_clause}
153
- make_visit!{ WherePredicate ; visit_where_predicate, walk_where_predicate}
154
135
155
- make_visit!{ P !( Block ) ; visit_block, walk_block}
156
- make_visit!{ P !( Expr ) ; visit_expr, walk_expr}
157
136
make_visit!{ P !( FnDecl ) ; visit_fn_decl, walk_fn_decl}
158
- make_visit!{ P !( Local ) ; visit_local, walk_local}
159
- make_visit!{ P !( Pat ) ; visit_pat, walk_pat}
160
- make_visit!{ P !( Ty ) ; visit_ty, walk_ty}
161
137
162
138
fn flat_map_foreign_item( & mut self , ni: P <ForeignItem >) -> SmallVec <[ P <ForeignItem >; 1 ] > {
163
139
walk_flat_map_item( self , ni)
@@ -234,48 +210,23 @@ macro_rules! make_ast_visitor {
234
210
/// or `ControlFlow<T>`.
235
211
type Result : VisitorResult = ( ) ;
236
212
237
- make_visit!{ AnonConst ; visit_anon_const, walk_anon_const}
238
213
make_visit!{ Arm ; visit_arm, walk_arm}
239
214
make_visit!{ AssocItem , ctxt: AssocCtxt ; visit_assoc_item, walk_assoc_item}
240
- make_visit!{ AssocItemConstraint ; visit_assoc_item_constraint, walk_assoc_item_constraint}
241
- make_visit!{ Attribute ; visit_attribute, walk_attribute}
242
- make_visit!{ ClosureBinder ; visit_closure_binder, walk_closure_binder}
243
- make_visit!{ Crate ; visit_crate, walk_crate}
244
215
make_visit!{ EnumDef ; visit_enum_def, walk_enum_def}
245
216
make_visit!{ ExprField ; visit_expr_field, walk_expr_field}
246
217
make_visit!{ FieldDef ; visit_field_def, walk_field_def}
247
218
make_visit!{ FnRetTy ; visit_fn_ret_ty, walk_fn_ret_ty}
248
219
make_visit!{ ForeignItem ; visit_foreign_item, walk_item}
249
- make_visit!{ FormatArgs ; visit_format_args, walk_format_args}
250
- make_visit!{ GenericArg ; visit_generic_arg, walk_generic_arg}
251
- make_visit!{ GenericArgs ; visit_generic_args, walk_generic_args}
252
- make_visit!{ GenericBound , _ ctxt: BoundKind ; visit_param_bound, walk_param_bound}
253
220
make_visit!{ GenericParam ; visit_generic_param, walk_generic_param}
254
- make_visit!{ Generics ; visit_generics, walk_generics}
255
- make_visit!{ InlineAsm ; visit_inline_asm, walk_inline_asm}
256
- make_visit!{ InlineAsmSym ; visit_inline_asm_sym, walk_inline_asm_sym}
257
221
make_visit!{ Item ; visit_item, walk_item}
258
- make_visit!{ Label ; visit_label, walk_label}
259
222
make_visit!{ Lifetime , _ ctxt: LifetimeCtxt ; visit_lifetime, walk_lifetime}
260
- make_visit!{ MacCall ; visit_mac_call, walk_mac}
261
223
make_visit!{ Param ; visit_param, walk_param}
262
224
make_visit!{ PatField ; visit_pat_field, walk_pat_field}
263
225
make_visit!{ Path , _ id: NodeId ; visit_path, walk_path}
264
- make_visit!{ PathSegment ; visit_path_segment, walk_path_segment}
265
- make_visit!{ PolyTraitRef ; visit_poly_trait_ref, walk_poly_trait_ref}
266
226
make_visit!{ Stmt ; visit_stmt, walk_stmt}
267
- make_visit!{ TraitRef ; visit_trait_ref, walk_trait_ref}
268
227
make_visit!{ UseTree , id: NodeId , _ nested: bool ; visit_use_tree, walk_use_tree}
269
228
make_visit!{ Variant ; visit_variant, walk_variant}
270
229
make_visit!{ VariantData ; visit_variant_data, walk_struct_def}
271
- make_visit!{ Visibility ; visit_vis, walk_vis}
272
- make_visit!{ WherePredicate ; visit_where_predicate, walk_where_predicate}
273
-
274
- make_visit!{ P !( Block ) ; visit_block, walk_block}
275
- make_visit!{ P !( Expr ) ; visit_expr, walk_expr}
276
- make_visit!{ P !( Local ) ; visit_local, walk_local}
277
- make_visit!{ P !( Pat ) ; visit_pat, walk_pat}
278
- make_visit!{ P !( Ty ) ; visit_ty, walk_ty}
279
230
280
231
fn visit_ident( & mut self , _ident: Ident ) -> Self :: Result {
281
232
Self :: Result :: output( )
@@ -307,6 +258,32 @@ macro_rules! make_ast_visitor {
307
258
Self :: Result :: output( )
308
259
}
309
260
} }
261
+
262
+ make_visit!{ AnonConst ; visit_anon_const, walk_anon_const}
263
+ make_visit!{ AssocItemConstraint ; visit_assoc_item_constraint, walk_assoc_item_constraint}
264
+ make_visit!{ Attribute ; visit_attribute, walk_attribute}
265
+ make_visit!{ ClosureBinder ; visit_closure_binder, walk_closure_binder}
266
+ make_visit!{ Crate ; visit_crate, walk_crate}
267
+ make_visit!{ FormatArgs ; visit_format_args, walk_format_args}
268
+ make_visit!{ GenericArg ; visit_generic_arg, walk_generic_arg}
269
+ make_visit!{ GenericArgs ; visit_generic_args, walk_generic_args}
270
+ make_visit!{ GenericBound , _ ctxt: BoundKind ; visit_param_bound, walk_param_bound}
271
+ make_visit!{ Generics ; visit_generics, walk_generics}
272
+ make_visit!{ InlineAsm ; visit_inline_asm, walk_inline_asm}
273
+ make_visit!{ InlineAsmSym ; visit_inline_asm_sym, walk_inline_asm_sym}
274
+ make_visit!{ Label ; visit_label, walk_label}
275
+ make_visit!{ MacCall ; visit_mac_call, walk_mac}
276
+ make_visit!{ PathSegment ; visit_path_segment, walk_path_segment}
277
+ make_visit!{ PolyTraitRef ; visit_poly_trait_ref, walk_poly_trait_ref}
278
+ make_visit!{ TraitRef ; visit_trait_ref, walk_trait_ref}
279
+ make_visit!{ Visibility ; visit_vis, walk_vis}
280
+ make_visit!{ WherePredicate ; visit_where_predicate, walk_where_predicate}
281
+
282
+ make_visit!{ P !( Block ) ; visit_block, walk_block}
283
+ make_visit!{ P !( Expr ) ; visit_expr, walk_expr}
284
+ make_visit!{ P !( Local ) ; visit_local, walk_local}
285
+ make_visit!{ P !( Pat ) ; visit_pat, walk_pat}
286
+ make_visit!{ P !( Ty ) ; visit_ty, walk_ty}
310
287
}
311
288
}
312
289
}
0 commit comments