blob: f9329959d05a0a855529bd44abefcd1539dc3f32 [file] [log] [blame]
Nika Layzell27726662017-10-24 23:16:35 -04001
2// THIS FILE IS AUTOMATICALLY GENERATED; DO NOT EDIT
3
4//! AST walker. Each overridden visit method has full control over what
5//! happens with its node, it can do its own traversal of the node's children,
6//! call `visit::walk_*` to apply the default traversal algorithm, or prevent
7//! deeper traversal by doing nothing.
8
9use super::*;
10
11/// Each method of the Visitor trait is a hook to be potentially
12/// overridden. Each method's default implementation recursively visits
13/// the substructure of the input via the corresponding `walk` method;
14/// e.g. the `visit_mod` method by default calls `visit::walk_mod`.
15///
16/// If you want to ensure that your code handles every variant
17/// explicitly, you need to override each method. (And you also need
18/// to monitor future changes to `Visitor` in case a new method with a
19/// new default implementation gets introduced.)
20pub trait Visitor {
21
22fn visit_abi(&mut self, i: &Abi) { walk_abi(self, i) }
23
24fn visit_abi_kind(&mut self, i: &AbiKind) { walk_abi_kind(self, i) }
25
26fn visit_angle_bracketed_parameter_data(&mut self, i: &AngleBracketedParameterData) { walk_angle_bracketed_parameter_data(self, i) }
27# [ cfg ( feature = "full" ) ]
28fn visit_arg_captured(&mut self, i: &ArgCaptured) { walk_arg_captured(self, i) }
29# [ cfg ( feature = "full" ) ]
30fn visit_arg_self(&mut self, i: &ArgSelf) { walk_arg_self(self, i) }
31# [ cfg ( feature = "full" ) ]
32fn visit_arg_self_ref(&mut self, i: &ArgSelfRef) { walk_arg_self_ref(self, i) }
33# [ cfg ( feature = "full" ) ]
34fn visit_arm(&mut self, i: &Arm) { walk_arm(self, i) }
35
36fn visit_attr_style(&mut self, i: &AttrStyle) { walk_attr_style(self, i) }
37
38fn visit_attribute(&mut self, i: &Attribute) { walk_attribute(self, i) }
39
40fn visit_bare_fn_arg(&mut self, i: &BareFnArg) { walk_bare_fn_arg(self, i) }
41
42fn visit_bare_fn_arg_name(&mut self, i: &BareFnArgName) { walk_bare_fn_arg_name(self, i) }
43
44fn visit_bare_fn_ty(&mut self, i: &BareFnTy) { walk_bare_fn_ty(self, i) }
45
46fn visit_bin_op(&mut self, i: &BinOp) { walk_bin_op(self, i) }
47# [ cfg ( feature = "full" ) ]
48fn visit_binding_mode(&mut self, i: &BindingMode) { walk_binding_mode(self, i) }
49# [ cfg ( feature = "full" ) ]
50fn visit_block(&mut self, i: &Block) { walk_block(self, i) }
51
52fn visit_body(&mut self, i: &Body) { walk_body(self, i) }
53
54fn visit_body_enum(&mut self, i: &BodyEnum) { walk_body_enum(self, i) }
55
56fn visit_body_struct(&mut self, i: &BodyStruct) { walk_body_struct(self, i) }
57
58fn visit_bound_lifetimes(&mut self, i: &BoundLifetimes) { walk_bound_lifetimes(self, i) }
59# [ cfg ( feature = "full" ) ]
60fn visit_capture_by(&mut self, i: &CaptureBy) { walk_capture_by(self, i) }
61# [ cfg ( feature = "full" ) ]
62fn visit_constness(&mut self, i: &Constness) { walk_constness(self, i) }
63# [ cfg ( feature = "full" ) ]
64fn visit_defaultness(&mut self, i: &Defaultness) { walk_defaultness(self, i) }
65
66fn visit_derive_input(&mut self, i: &DeriveInput) { walk_derive_input(self, i) }
67
68fn visit_expr(&mut self, i: &Expr) { walk_expr(self, i) }
69# [ cfg ( feature = "full" ) ]
70fn visit_expr_addr_of(&mut self, i: &ExprAddrOf) { walk_expr_addr_of(self, i) }
71# [ cfg ( feature = "full" ) ]
72fn visit_expr_array(&mut self, i: &ExprArray) { walk_expr_array(self, i) }
73# [ cfg ( feature = "full" ) ]
74fn visit_expr_assign(&mut self, i: &ExprAssign) { walk_expr_assign(self, i) }
75# [ cfg ( feature = "full" ) ]
76fn visit_expr_assign_op(&mut self, i: &ExprAssignOp) { walk_expr_assign_op(self, i) }
77
78fn visit_expr_binary(&mut self, i: &ExprBinary) { walk_expr_binary(self, i) }
79# [ cfg ( feature = "full" ) ]
80fn visit_expr_block(&mut self, i: &ExprBlock) { walk_expr_block(self, i) }
81# [ cfg ( feature = "full" ) ]
82fn visit_expr_box(&mut self, i: &ExprBox) { walk_expr_box(self, i) }
83# [ cfg ( feature = "full" ) ]
84fn visit_expr_break(&mut self, i: &ExprBreak) { walk_expr_break(self, i) }
85
86fn visit_expr_call(&mut self, i: &ExprCall) { walk_expr_call(self, i) }
87
88fn visit_expr_cast(&mut self, i: &ExprCast) { walk_expr_cast(self, i) }
89# [ cfg ( feature = "full" ) ]
90fn visit_expr_catch(&mut self, i: &ExprCatch) { walk_expr_catch(self, i) }
91# [ cfg ( feature = "full" ) ]
92fn visit_expr_closure(&mut self, i: &ExprClosure) { walk_expr_closure(self, i) }
93# [ cfg ( feature = "full" ) ]
94fn visit_expr_continue(&mut self, i: &ExprContinue) { walk_expr_continue(self, i) }
95# [ cfg ( feature = "full" ) ]
96fn visit_expr_field(&mut self, i: &ExprField) { walk_expr_field(self, i) }
97# [ cfg ( feature = "full" ) ]
98fn visit_expr_for_loop(&mut self, i: &ExprForLoop) { walk_expr_for_loop(self, i) }
99
100fn visit_expr_group(&mut self, i: &ExprGroup) { walk_expr_group(self, i) }
101# [ cfg ( feature = "full" ) ]
102fn visit_expr_if(&mut self, i: &ExprIf) { walk_expr_if(self, i) }
103# [ cfg ( feature = "full" ) ]
104fn visit_expr_if_let(&mut self, i: &ExprIfLet) { walk_expr_if_let(self, i) }
105# [ cfg ( feature = "full" ) ]
106fn visit_expr_in_place(&mut self, i: &ExprInPlace) { walk_expr_in_place(self, i) }
107
108fn visit_expr_index(&mut self, i: &ExprIndex) { walk_expr_index(self, i) }
109
110fn visit_expr_kind(&mut self, i: &ExprKind) { walk_expr_kind(self, i) }
111# [ cfg ( feature = "full" ) ]
112fn visit_expr_loop(&mut self, i: &ExprLoop) { walk_expr_loop(self, i) }
113# [ cfg ( feature = "full" ) ]
114fn visit_expr_match(&mut self, i: &ExprMatch) { walk_expr_match(self, i) }
115# [ cfg ( feature = "full" ) ]
116fn visit_expr_method_call(&mut self, i: &ExprMethodCall) { walk_expr_method_call(self, i) }
117
118fn visit_expr_paren(&mut self, i: &ExprParen) { walk_expr_paren(self, i) }
119
120fn visit_expr_path(&mut self, i: &ExprPath) { walk_expr_path(self, i) }
121# [ cfg ( feature = "full" ) ]
122fn visit_expr_range(&mut self, i: &ExprRange) { walk_expr_range(self, i) }
123# [ cfg ( feature = "full" ) ]
124fn visit_expr_repeat(&mut self, i: &ExprRepeat) { walk_expr_repeat(self, i) }
125# [ cfg ( feature = "full" ) ]
126fn visit_expr_ret(&mut self, i: &ExprRet) { walk_expr_ret(self, i) }
127# [ cfg ( feature = "full" ) ]
128fn visit_expr_struct(&mut self, i: &ExprStruct) { walk_expr_struct(self, i) }
129# [ cfg ( feature = "full" ) ]
130fn visit_expr_try(&mut self, i: &ExprTry) { walk_expr_try(self, i) }
131# [ cfg ( feature = "full" ) ]
132fn visit_expr_tup(&mut self, i: &ExprTup) { walk_expr_tup(self, i) }
133# [ cfg ( feature = "full" ) ]
134fn visit_expr_tup_field(&mut self, i: &ExprTupField) { walk_expr_tup_field(self, i) }
135
136fn visit_expr_type(&mut self, i: &ExprType) { walk_expr_type(self, i) }
137
138fn visit_expr_unary(&mut self, i: &ExprUnary) { walk_expr_unary(self, i) }
139# [ cfg ( feature = "full" ) ]
140fn visit_expr_while(&mut self, i: &ExprWhile) { walk_expr_while(self, i) }
141# [ cfg ( feature = "full" ) ]
142fn visit_expr_while_let(&mut self, i: &ExprWhileLet) { walk_expr_while_let(self, i) }
143# [ cfg ( feature = "full" ) ]
144fn visit_expr_yield(&mut self, i: &ExprYield) { walk_expr_yield(self, i) }
145
146fn visit_field(&mut self, i: &Field) { walk_field(self, i) }
147# [ cfg ( feature = "full" ) ]
148fn visit_field_pat(&mut self, i: &FieldPat) { walk_field_pat(self, i) }
149# [ cfg ( feature = "full" ) ]
150fn visit_field_value(&mut self, i: &FieldValue) { walk_field_value(self, i) }
151# [ cfg ( feature = "full" ) ]
152fn visit_file(&mut self, i: &File) { walk_file(self, i) }
153# [ cfg ( feature = "full" ) ]
154fn visit_fn_arg(&mut self, i: &FnArg) { walk_fn_arg(self, i) }
155# [ cfg ( feature = "full" ) ]
156fn visit_fn_decl(&mut self, i: &FnDecl) { walk_fn_decl(self, i) }
157# [ cfg ( feature = "full" ) ]
158fn visit_foreign_item(&mut self, i: &ForeignItem) { walk_foreign_item(self, i) }
159# [ cfg ( feature = "full" ) ]
160fn visit_foreign_item_fn(&mut self, i: &ForeignItemFn) { walk_foreign_item_fn(self, i) }
161# [ cfg ( feature = "full" ) ]
162fn visit_foreign_item_kind(&mut self, i: &ForeignItemKind) { walk_foreign_item_kind(self, i) }
163# [ cfg ( feature = "full" ) ]
164fn visit_foreign_item_static(&mut self, i: &ForeignItemStatic) { walk_foreign_item_static(self, i) }
165
166fn visit_function_ret_ty(&mut self, i: &FunctionRetTy) { walk_function_ret_ty(self, i) }
167
168fn visit_generics(&mut self, i: &Generics) { walk_generics(self, i) }
169# [ cfg ( feature = "full" ) ]
170fn visit_impl_item(&mut self, i: &ImplItem) { walk_impl_item(self, i) }
171# [ cfg ( feature = "full" ) ]
172fn visit_impl_item_const(&mut self, i: &ImplItemConst) { walk_impl_item_const(self, i) }
173# [ cfg ( feature = "full" ) ]
174fn visit_impl_item_kind(&mut self, i: &ImplItemKind) { walk_impl_item_kind(self, i) }
175# [ cfg ( feature = "full" ) ]
176fn visit_impl_item_method(&mut self, i: &ImplItemMethod) { walk_impl_item_method(self, i) }
177# [ cfg ( feature = "full" ) ]
178fn visit_impl_item_type(&mut self, i: &ImplItemType) { walk_impl_item_type(self, i) }
179# [ cfg ( feature = "full" ) ]
180fn visit_impl_polarity(&mut self, i: &ImplPolarity) { walk_impl_polarity(self, i) }
181# [ cfg ( feature = "full" ) ]
182fn visit_in_place_kind(&mut self, i: &InPlaceKind) { walk_in_place_kind(self, i) }
183# [ cfg ( feature = "full" ) ]
184fn visit_item(&mut self, i: &Item) { walk_item(self, i) }
185# [ cfg ( feature = "full" ) ]
186fn visit_item_const(&mut self, i: &ItemConst) { walk_item_const(self, i) }
187# [ cfg ( feature = "full" ) ]
188fn visit_item_default_impl(&mut self, i: &ItemDefaultImpl) { walk_item_default_impl(self, i) }
189# [ cfg ( feature = "full" ) ]
190fn visit_item_enum(&mut self, i: &ItemEnum) { walk_item_enum(self, i) }
191# [ cfg ( feature = "full" ) ]
192fn visit_item_extern_crate(&mut self, i: &ItemExternCrate) { walk_item_extern_crate(self, i) }
193# [ cfg ( feature = "full" ) ]
194fn visit_item_fn(&mut self, i: &ItemFn) { walk_item_fn(self, i) }
195# [ cfg ( feature = "full" ) ]
196fn visit_item_foreign_mod(&mut self, i: &ItemForeignMod) { walk_item_foreign_mod(self, i) }
197# [ cfg ( feature = "full" ) ]
198fn visit_item_impl(&mut self, i: &ItemImpl) { walk_item_impl(self, i) }
199# [ cfg ( feature = "full" ) ]
200fn visit_item_kind(&mut self, i: &ItemKind) { walk_item_kind(self, i) }
201# [ cfg ( feature = "full" ) ]
202fn visit_item_mod(&mut self, i: &ItemMod) { walk_item_mod(self, i) }
203# [ cfg ( feature = "full" ) ]
204fn visit_item_static(&mut self, i: &ItemStatic) { walk_item_static(self, i) }
205# [ cfg ( feature = "full" ) ]
206fn visit_item_struct(&mut self, i: &ItemStruct) { walk_item_struct(self, i) }
207# [ cfg ( feature = "full" ) ]
208fn visit_item_trait(&mut self, i: &ItemTrait) { walk_item_trait(self, i) }
209# [ cfg ( feature = "full" ) ]
210fn visit_item_ty(&mut self, i: &ItemTy) { walk_item_ty(self, i) }
211# [ cfg ( feature = "full" ) ]
212fn visit_item_union(&mut self, i: &ItemUnion) { walk_item_union(self, i) }
213# [ cfg ( feature = "full" ) ]
214fn visit_item_use(&mut self, i: &ItemUse) { walk_item_use(self, i) }
215
216fn visit_lifetime_def(&mut self, i: &LifetimeDef) { walk_lifetime_def(self, i) }
217# [ cfg ( feature = "full" ) ]
218fn visit_local(&mut self, i: &Local) { walk_local(self, i) }
219
220fn visit_mac(&mut self, i: &Mac) { walk_mac(self, i) }
221# [ cfg ( feature = "full" ) ]
222fn visit_mac_stmt_style(&mut self, i: &MacStmtStyle) { walk_mac_stmt_style(self, i) }
223
224fn visit_meta_item(&mut self, i: &MetaItem) { walk_meta_item(self, i) }
225
226fn visit_meta_item_list(&mut self, i: &MetaItemList) { walk_meta_item_list(self, i) }
227
228fn visit_meta_name_value(&mut self, i: &MetaNameValue) { walk_meta_name_value(self, i) }
229# [ cfg ( feature = "full" ) ]
230fn visit_method_sig(&mut self, i: &MethodSig) { walk_method_sig(self, i) }
231
232fn visit_mut_ty(&mut self, i: &MutTy) { walk_mut_ty(self, i) }
233
234fn visit_mutability(&mut self, i: &Mutability) { walk_mutability(self, i) }
235
236fn visit_nested_meta_item(&mut self, i: &NestedMetaItem) { walk_nested_meta_item(self, i) }
237
238fn visit_parenthesized_parameter_data(&mut self, i: &ParenthesizedParameterData) { walk_parenthesized_parameter_data(self, i) }
239# [ cfg ( feature = "full" ) ]
240fn visit_pat(&mut self, i: &Pat) { walk_pat(self, i) }
241# [ cfg ( feature = "full" ) ]
242fn visit_pat_box(&mut self, i: &PatBox) { walk_pat_box(self, i) }
243# [ cfg ( feature = "full" ) ]
244fn visit_pat_ident(&mut self, i: &PatIdent) { walk_pat_ident(self, i) }
245# [ cfg ( feature = "full" ) ]
246fn visit_pat_lit(&mut self, i: &PatLit) { walk_pat_lit(self, i) }
247# [ cfg ( feature = "full" ) ]
248fn visit_pat_path(&mut self, i: &PatPath) { walk_pat_path(self, i) }
249# [ cfg ( feature = "full" ) ]
250fn visit_pat_range(&mut self, i: &PatRange) { walk_pat_range(self, i) }
251# [ cfg ( feature = "full" ) ]
252fn visit_pat_ref(&mut self, i: &PatRef) { walk_pat_ref(self, i) }
253# [ cfg ( feature = "full" ) ]
254fn visit_pat_slice(&mut self, i: &PatSlice) { walk_pat_slice(self, i) }
255# [ cfg ( feature = "full" ) ]
256fn visit_pat_struct(&mut self, i: &PatStruct) { walk_pat_struct(self, i) }
257# [ cfg ( feature = "full" ) ]
258fn visit_pat_tuple(&mut self, i: &PatTuple) { walk_pat_tuple(self, i) }
259# [ cfg ( feature = "full" ) ]
260fn visit_pat_tuple_struct(&mut self, i: &PatTupleStruct) { walk_pat_tuple_struct(self, i) }
261# [ cfg ( feature = "full" ) ]
262fn visit_pat_wild(&mut self, i: &PatWild) { walk_pat_wild(self, i) }
263
264fn visit_path(&mut self, i: &Path) { walk_path(self, i) }
265# [ cfg ( feature = "full" ) ]
266fn visit_path_glob(&mut self, i: &PathGlob) { walk_path_glob(self, i) }
267# [ cfg ( feature = "full" ) ]
268fn visit_path_list(&mut self, i: &PathList) { walk_path_list(self, i) }
269# [ cfg ( feature = "full" ) ]
270fn visit_path_list_item(&mut self, i: &PathListItem) { walk_path_list_item(self, i) }
271
272fn visit_path_parameters(&mut self, i: &PathParameters) { walk_path_parameters(self, i) }
273
274fn visit_path_segment(&mut self, i: &PathSegment) { walk_path_segment(self, i) }
275# [ cfg ( feature = "full" ) ]
276fn visit_path_simple(&mut self, i: &PathSimple) { walk_path_simple(self, i) }
277
278fn visit_poly_trait_ref(&mut self, i: &PolyTraitRef) { walk_poly_trait_ref(self, i) }
279
280fn visit_qself(&mut self, i: &QSelf) { walk_qself(self, i) }
281# [ cfg ( feature = "full" ) ]
282fn visit_range_limits(&mut self, i: &RangeLimits) { walk_range_limits(self, i) }
283# [ cfg ( feature = "full" ) ]
284fn visit_stmt(&mut self, i: &Stmt) { walk_stmt(self, i) }
285
286fn visit_trait_bound_modifier(&mut self, i: &TraitBoundModifier) { walk_trait_bound_modifier(self, i) }
287# [ cfg ( feature = "full" ) ]
288fn visit_trait_item(&mut self, i: &TraitItem) { walk_trait_item(self, i) }
289# [ cfg ( feature = "full" ) ]
290fn visit_trait_item_const(&mut self, i: &TraitItemConst) { walk_trait_item_const(self, i) }
291# [ cfg ( feature = "full" ) ]
292fn visit_trait_item_kind(&mut self, i: &TraitItemKind) { walk_trait_item_kind(self, i) }
293# [ cfg ( feature = "full" ) ]
294fn visit_trait_item_method(&mut self, i: &TraitItemMethod) { walk_trait_item_method(self, i) }
295# [ cfg ( feature = "full" ) ]
296fn visit_trait_item_type(&mut self, i: &TraitItemType) { walk_trait_item_type(self, i) }
297
298fn visit_ty(&mut self, i: &Ty) { walk_ty(self, i) }
299
300fn visit_ty_array(&mut self, i: &TyArray) { walk_ty_array(self, i) }
301
302fn visit_ty_bare_fn(&mut self, i: &TyBareFn) { walk_ty_bare_fn(self, i) }
303
304fn visit_ty_group(&mut self, i: &TyGroup) { walk_ty_group(self, i) }
305
306fn visit_ty_impl_trait(&mut self, i: &TyImplTrait) { walk_ty_impl_trait(self, i) }
307
308fn visit_ty_infer(&mut self, i: &TyInfer) { walk_ty_infer(self, i) }
309
310fn visit_ty_never(&mut self, i: &TyNever) { walk_ty_never(self, i) }
311
312fn visit_ty_param(&mut self, i: &TyParam) { walk_ty_param(self, i) }
313
314fn visit_ty_param_bound(&mut self, i: &TyParamBound) { walk_ty_param_bound(self, i) }
315
316fn visit_ty_paren(&mut self, i: &TyParen) { walk_ty_paren(self, i) }
317
318fn visit_ty_path(&mut self, i: &TyPath) { walk_ty_path(self, i) }
319
320fn visit_ty_ptr(&mut self, i: &TyPtr) { walk_ty_ptr(self, i) }
321
322fn visit_ty_rptr(&mut self, i: &TyRptr) { walk_ty_rptr(self, i) }
323
324fn visit_ty_slice(&mut self, i: &TySlice) { walk_ty_slice(self, i) }
325
326fn visit_ty_trait_object(&mut self, i: &TyTraitObject) { walk_ty_trait_object(self, i) }
327
328fn visit_ty_tup(&mut self, i: &TyTup) { walk_ty_tup(self, i) }
329
330fn visit_type_binding(&mut self, i: &TypeBinding) { walk_type_binding(self, i) }
331
332fn visit_un_op(&mut self, i: &UnOp) { walk_un_op(self, i) }
333
334fn visit_unsafety(&mut self, i: &Unsafety) { walk_unsafety(self, i) }
335
336fn visit_variant(&mut self, i: &Variant) { walk_variant(self, i) }
337
338fn visit_variant_data(&mut self, i: &VariantData) { walk_variant_data(self, i) }
339# [ cfg ( feature = "full" ) ]
340fn visit_view_path(&mut self, i: &ViewPath) { walk_view_path(self, i) }
341
342fn visit_vis_crate(&mut self, i: &VisCrate) { walk_vis_crate(self, i) }
343
344fn visit_vis_inherited(&mut self, i: &VisInherited) { walk_vis_inherited(self, i) }
345
346fn visit_vis_public(&mut self, i: &VisPublic) { walk_vis_public(self, i) }
347
348fn visit_vis_restricted(&mut self, i: &VisRestricted) { walk_vis_restricted(self, i) }
349
350fn visit_visibility(&mut self, i: &Visibility) { walk_visibility(self, i) }
351
352fn visit_where_bound_predicate(&mut self, i: &WhereBoundPredicate) { walk_where_bound_predicate(self, i) }
353
354fn visit_where_clause(&mut self, i: &WhereClause) { walk_where_clause(self, i) }
355
356fn visit_where_eq_predicate(&mut self, i: &WhereEqPredicate) { walk_where_eq_predicate(self, i) }
357
358fn visit_where_predicate(&mut self, i: &WherePredicate) { walk_where_predicate(self, i) }
359
360fn visit_where_region_predicate(&mut self, i: &WhereRegionPredicate) { walk_where_region_predicate(self, i) }
361
362}
363
364
365pub fn walk_abi<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Abi) {
366 // Skipped field _i . extern_token;
367 _visitor.visit_abi_kind(&_i . kind);
368}
369
370pub fn walk_abi_kind<V: Visitor + ?Sized>(_visitor: &mut V, _i: &AbiKind) {
371 use ::AbiKind::*;
372 match *_i {
373 Named(ref _binding_0, ) => {
374 // Skipped field * _binding_0;
375 }
376 Default => { }
377 }
378}
379
380pub fn walk_angle_bracketed_parameter_data<V: Visitor + ?Sized>(_visitor: &mut V, _i: &AngleBracketedParameterData) {
381 // Skipped field _i . turbofish;
382 // Skipped field _i . lt_token;
383 // Skipped field _i . lifetimes;
384 for el in (_i . types).iter() { let it = el.item(); _visitor.visit_ty(&it) };
385 for el in (_i . bindings).iter() { let it = el.item(); _visitor.visit_type_binding(&it) };
386 // Skipped field _i . gt_token;
387}
388# [ cfg ( feature = "full" ) ]
389pub fn walk_arg_captured<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ArgCaptured) {
390 _visitor.visit_pat(&_i . pat);
391 // Skipped field _i . colon_token;
392 _visitor.visit_ty(&_i . ty);
393}
394# [ cfg ( feature = "full" ) ]
395pub fn walk_arg_self<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ArgSelf) {
396 _visitor.visit_mutability(&_i . mutbl);
397 // Skipped field _i . self_token;
398}
399# [ cfg ( feature = "full" ) ]
400pub fn walk_arg_self_ref<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ArgSelfRef) {
401 // Skipped field _i . and_token;
402 // Skipped field _i . self_token;
403 // Skipped field _i . lifetime;
404 _visitor.visit_mutability(&_i . mutbl);
405}
406# [ cfg ( feature = "full" ) ]
407pub fn walk_arm<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Arm) {
408 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
409 for el in (_i . pats).iter() { let it = el.item(); _visitor.visit_pat(&it) };
410 // Skipped field _i . if_token;
411 // Skipped field _i . guard;
412 // Skipped field _i . rocket_token;
413 _visitor.visit_expr(&_i . body);
414 // Skipped field _i . comma;
415}
416
417pub fn walk_attr_style<V: Visitor + ?Sized>(_visitor: &mut V, _i: &AttrStyle) {
418 use ::AttrStyle::*;
419 match *_i {
420 Outer => { }
421 Inner(ref _binding_0, ) => {
422 // Skipped field * _binding_0;
423 }
424 }
425}
426
427pub fn walk_attribute<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Attribute) {
428 _visitor.visit_attr_style(&_i . style);
429 // Skipped field _i . pound_token;
430 // Skipped field _i . bracket_token;
431 _visitor.visit_path(&_i . path);
432 // Skipped field _i . tts;
433 // Skipped field _i . is_sugared_doc;
434}
435
436pub fn walk_bare_fn_arg<V: Visitor + ?Sized>(_visitor: &mut V, _i: &BareFnArg) {
437 // Skipped field _i . name;
438 _visitor.visit_ty(&_i . ty);
439}
440
441pub fn walk_bare_fn_arg_name<V: Visitor + ?Sized>(_visitor: &mut V, _i: &BareFnArgName) {
442 use ::BareFnArgName::*;
443 match *_i {
444 Named(ref _binding_0, ) => {
445 // Skipped field * _binding_0;
446 }
447 Wild(ref _binding_0, ) => {
448 // Skipped field * _binding_0;
449 }
450 }
451}
452
453pub fn walk_bare_fn_ty<V: Visitor + ?Sized>(_visitor: &mut V, _i: &BareFnTy) {
454 // Skipped field _i . lifetimes;
455 _visitor.visit_unsafety(&_i . unsafety);
456 // Skipped field _i . abi;
457 // Skipped field _i . fn_token;
458 // Skipped field _i . paren_token;
459 for el in (_i . inputs).iter() { let it = el.item(); _visitor.visit_bare_fn_arg(&it) };
460 // Skipped field _i . variadic;
461 _visitor.visit_function_ret_ty(&_i . output);
462}
463
464pub fn walk_bin_op<V: Visitor + ?Sized>(_visitor: &mut V, _i: &BinOp) {
465 use ::BinOp::*;
466 match *_i {
467 Add(ref _binding_0, ) => {
468 // Skipped field * _binding_0;
469 }
470 Sub(ref _binding_0, ) => {
471 // Skipped field * _binding_0;
472 }
473 Mul(ref _binding_0, ) => {
474 // Skipped field * _binding_0;
475 }
476 Div(ref _binding_0, ) => {
477 // Skipped field * _binding_0;
478 }
479 Rem(ref _binding_0, ) => {
480 // Skipped field * _binding_0;
481 }
482 And(ref _binding_0, ) => {
483 // Skipped field * _binding_0;
484 }
485 Or(ref _binding_0, ) => {
486 // Skipped field * _binding_0;
487 }
488 BitXor(ref _binding_0, ) => {
489 // Skipped field * _binding_0;
490 }
491 BitAnd(ref _binding_0, ) => {
492 // Skipped field * _binding_0;
493 }
494 BitOr(ref _binding_0, ) => {
495 // Skipped field * _binding_0;
496 }
497 Shl(ref _binding_0, ) => {
498 // Skipped field * _binding_0;
499 }
500 Shr(ref _binding_0, ) => {
501 // Skipped field * _binding_0;
502 }
503 Eq(ref _binding_0, ) => {
504 // Skipped field * _binding_0;
505 }
506 Lt(ref _binding_0, ) => {
507 // Skipped field * _binding_0;
508 }
509 Le(ref _binding_0, ) => {
510 // Skipped field * _binding_0;
511 }
512 Ne(ref _binding_0, ) => {
513 // Skipped field * _binding_0;
514 }
515 Ge(ref _binding_0, ) => {
516 // Skipped field * _binding_0;
517 }
518 Gt(ref _binding_0, ) => {
519 // Skipped field * _binding_0;
520 }
521 AddEq(ref _binding_0, ) => {
522 // Skipped field * _binding_0;
523 }
524 SubEq(ref _binding_0, ) => {
525 // Skipped field * _binding_0;
526 }
527 MulEq(ref _binding_0, ) => {
528 // Skipped field * _binding_0;
529 }
530 DivEq(ref _binding_0, ) => {
531 // Skipped field * _binding_0;
532 }
533 RemEq(ref _binding_0, ) => {
534 // Skipped field * _binding_0;
535 }
536 BitXorEq(ref _binding_0, ) => {
537 // Skipped field * _binding_0;
538 }
539 BitAndEq(ref _binding_0, ) => {
540 // Skipped field * _binding_0;
541 }
542 BitOrEq(ref _binding_0, ) => {
543 // Skipped field * _binding_0;
544 }
545 ShlEq(ref _binding_0, ) => {
546 // Skipped field * _binding_0;
547 }
548 ShrEq(ref _binding_0, ) => {
549 // Skipped field * _binding_0;
550 }
551 }
552}
553# [ cfg ( feature = "full" ) ]
554pub fn walk_binding_mode<V: Visitor + ?Sized>(_visitor: &mut V, _i: &BindingMode) {
555 use ::BindingMode::*;
556 match *_i {
557 ByRef(ref _binding_0, ref _binding_1, ) => {
558 // Skipped field * _binding_0;
559 _visitor.visit_mutability(&* _binding_1);
560 }
561 ByValue(ref _binding_0, ) => {
562 _visitor.visit_mutability(&* _binding_0);
563 }
564 }
565}
566# [ cfg ( feature = "full" ) ]
567pub fn walk_block<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Block) {
568 // Skipped field _i . brace_token;
569 for it in (_i . stmts).iter() { _visitor.visit_stmt(&it) };
570}
571
572pub fn walk_body<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Body) {
573 use ::Body::*;
574 match *_i {
575 Enum(ref _binding_0, ) => {
576 _visitor.visit_body_enum(&* _binding_0);
577 }
578 Struct(ref _binding_0, ) => {
579 _visitor.visit_body_struct(&* _binding_0);
580 }
581 }
582}
583
584pub fn walk_body_enum<V: Visitor + ?Sized>(_visitor: &mut V, _i: &BodyEnum) {
585 // Skipped field _i . enum_token;
586 // Skipped field _i . brace_token;
587 for el in (_i . variants).iter() { let it = el.item(); _visitor.visit_variant(&it) };
588}
589
590pub fn walk_body_struct<V: Visitor + ?Sized>(_visitor: &mut V, _i: &BodyStruct) {
591 _visitor.visit_variant_data(&_i . data);
592 // Skipped field _i . struct_token;
593 // Skipped field _i . semi_token;
594}
595
596pub fn walk_bound_lifetimes<V: Visitor + ?Sized>(_visitor: &mut V, _i: &BoundLifetimes) {
597 // Skipped field _i . for_token;
598 // Skipped field _i . lt_token;
599 for el in (_i . lifetimes).iter() { let it = el.item(); _visitor.visit_lifetime_def(&it) };
600 // Skipped field _i . gt_token;
601}
602# [ cfg ( feature = "full" ) ]
603pub fn walk_capture_by<V: Visitor + ?Sized>(_visitor: &mut V, _i: &CaptureBy) {
604 use ::CaptureBy::*;
605 match *_i {
606 Value(ref _binding_0, ) => {
607 // Skipped field * _binding_0;
608 }
609 Ref => { }
610 }
611}
612# [ cfg ( feature = "full" ) ]
613pub fn walk_constness<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Constness) {
614 use ::Constness::*;
615 match *_i {
616 Const(ref _binding_0, ) => {
617 // Skipped field * _binding_0;
618 }
619 NotConst => { }
620 }
621}
622# [ cfg ( feature = "full" ) ]
623pub fn walk_defaultness<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Defaultness) {
624 use ::Defaultness::*;
625 match *_i {
626 Default(ref _binding_0, ) => {
627 // Skipped field * _binding_0;
628 }
629 Final => { }
630 }
631}
632
633pub fn walk_derive_input<V: Visitor + ?Sized>(_visitor: &mut V, _i: &DeriveInput) {
634 // Skipped field _i . ident;
635 _visitor.visit_visibility(&_i . vis);
636 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
637 _visitor.visit_generics(&_i . generics);
638 _visitor.visit_body(&_i . body);
639}
640
641pub fn walk_expr<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Expr) {
642 _visitor.visit_expr_kind(&_i . node);
643 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
644}
645# [ cfg ( feature = "full" ) ]
646pub fn walk_expr_addr_of<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprAddrOf) {
647 // Skipped field _i . and_token;
648 _visitor.visit_mutability(&_i . mutbl);
649 _visitor.visit_expr(&_i . expr);
650}
651# [ cfg ( feature = "full" ) ]
652pub fn walk_expr_array<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprArray) {
653 for el in (_i . exprs).iter() { let it = el.item(); _visitor.visit_expr(&it) };
654 // Skipped field _i . bracket_token;
655}
656# [ cfg ( feature = "full" ) ]
657pub fn walk_expr_assign<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprAssign) {
658 _visitor.visit_expr(&_i . left);
659 _visitor.visit_expr(&_i . right);
660 // Skipped field _i . eq_token;
661}
662# [ cfg ( feature = "full" ) ]
663pub fn walk_expr_assign_op<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprAssignOp) {
664 _visitor.visit_bin_op(&_i . op);
665 _visitor.visit_expr(&_i . left);
666 _visitor.visit_expr(&_i . right);
667}
668
669pub fn walk_expr_binary<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprBinary) {
670 _visitor.visit_bin_op(&_i . op);
671 _visitor.visit_expr(&_i . left);
672 _visitor.visit_expr(&_i . right);
673}
674# [ cfg ( feature = "full" ) ]
675pub fn walk_expr_block<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprBlock) {
676 _visitor.visit_unsafety(&_i . unsafety);
677 _visitor.visit_block(&_i . block);
678}
679# [ cfg ( feature = "full" ) ]
680pub fn walk_expr_box<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprBox) {
681 _visitor.visit_expr(&_i . expr);
682 // Skipped field _i . box_token;
683}
684# [ cfg ( feature = "full" ) ]
685pub fn walk_expr_break<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprBreak) {
686 // Skipped field _i . label;
687 // Skipped field _i . expr;
688 // Skipped field _i . break_token;
689}
690
691pub fn walk_expr_call<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprCall) {
692 _visitor.visit_expr(&_i . func);
693 for el in (_i . args).iter() { let it = el.item(); _visitor.visit_expr(&it) };
694 // Skipped field _i . paren_token;
695}
696
697pub fn walk_expr_cast<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprCast) {
698 _visitor.visit_expr(&_i . expr);
699 // Skipped field _i . as_token;
700 _visitor.visit_ty(&_i . ty);
701}
702# [ cfg ( feature = "full" ) ]
703pub fn walk_expr_catch<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprCatch) {
704 // Skipped field _i . do_token;
705 // Skipped field _i . catch_token;
706 _visitor.visit_block(&_i . block);
707}
708# [ cfg ( feature = "full" ) ]
709pub fn walk_expr_closure<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprClosure) {
710 _visitor.visit_capture_by(&_i . capture);
711 _visitor.visit_fn_decl(&_i . decl);
712 _visitor.visit_expr(&_i . body);
713 // Skipped field _i . or1_token;
714 // Skipped field _i . or2_token;
715}
716# [ cfg ( feature = "full" ) ]
717pub fn walk_expr_continue<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprContinue) {
718 // Skipped field _i . label;
719 // Skipped field _i . continue_token;
720}
721# [ cfg ( feature = "full" ) ]
722pub fn walk_expr_field<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprField) {
723 _visitor.visit_expr(&_i . expr);
724 // Skipped field _i . field;
725 // Skipped field _i . dot_token;
726}
727# [ cfg ( feature = "full" ) ]
728pub fn walk_expr_for_loop<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprForLoop) {
729 _visitor.visit_pat(&_i . pat);
730 _visitor.visit_expr(&_i . expr);
731 _visitor.visit_block(&_i . body);
732 // Skipped field _i . label;
733 // Skipped field _i . for_token;
734 // Skipped field _i . colon_token;
735 // Skipped field _i . in_token;
736}
737
738pub fn walk_expr_group<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprGroup) {
739 _visitor.visit_expr(&_i . expr);
740 // Skipped field _i . group_token;
741}
742# [ cfg ( feature = "full" ) ]
743pub fn walk_expr_if<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprIf) {
744 _visitor.visit_expr(&_i . cond);
745 _visitor.visit_block(&_i . if_true);
746 // Skipped field _i . if_false;
747 // Skipped field _i . if_token;
748 // Skipped field _i . else_token;
749}
750# [ cfg ( feature = "full" ) ]
751pub fn walk_expr_if_let<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprIfLet) {
752 _visitor.visit_pat(&_i . pat);
753 _visitor.visit_expr(&_i . expr);
754 _visitor.visit_block(&_i . if_true);
755 // Skipped field _i . if_false;
756 // Skipped field _i . if_token;
757 // Skipped field _i . let_token;
758 // Skipped field _i . eq_token;
759 // Skipped field _i . else_token;
760}
761# [ cfg ( feature = "full" ) ]
762pub fn walk_expr_in_place<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprInPlace) {
763 _visitor.visit_expr(&_i . place);
764 _visitor.visit_in_place_kind(&_i . kind);
765 _visitor.visit_expr(&_i . value);
766}
767
768pub fn walk_expr_index<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprIndex) {
769 _visitor.visit_expr(&_i . expr);
770 _visitor.visit_expr(&_i . index);
771 // Skipped field _i . bracket_token;
772}
773
774pub fn walk_expr_kind<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprKind) {
775 use ::ExprKind::*;
776 match *_i {
777 Box(ref _binding_0, ) => {
778 { #[cfg(feature = "full")] { _visitor.visit_expr_box(&* _binding_0) } #[cfg(not(feature = "full"))] unreachable!() };
779 }
780 InPlace(ref _binding_0, ) => {
781 { #[cfg(feature = "full")] { _visitor.visit_expr_in_place(&* _binding_0) } #[cfg(not(feature = "full"))] unreachable!() };
782 }
783 Array(ref _binding_0, ) => {
784 { #[cfg(feature = "full")] { _visitor.visit_expr_array(&* _binding_0) } #[cfg(not(feature = "full"))] unreachable!() };
785 }
786 Call(ref _binding_0, ) => {
787 _visitor.visit_expr_call(&* _binding_0);
788 }
789 MethodCall(ref _binding_0, ) => {
790 { #[cfg(feature = "full")] { _visitor.visit_expr_method_call(&* _binding_0) } #[cfg(not(feature = "full"))] unreachable!() };
791 }
792 Tup(ref _binding_0, ) => {
793 { #[cfg(feature = "full")] { _visitor.visit_expr_tup(&* _binding_0) } #[cfg(not(feature = "full"))] unreachable!() };
794 }
795 Binary(ref _binding_0, ) => {
796 _visitor.visit_expr_binary(&* _binding_0);
797 }
798 Unary(ref _binding_0, ) => {
799 _visitor.visit_expr_unary(&* _binding_0);
800 }
801 Lit(ref _binding_0, ) => {
802 // Skipped field * _binding_0;
803 }
804 Cast(ref _binding_0, ) => {
805 _visitor.visit_expr_cast(&* _binding_0);
806 }
807 Type(ref _binding_0, ) => {
808 _visitor.visit_expr_type(&* _binding_0);
809 }
810 If(ref _binding_0, ) => {
811 { #[cfg(feature = "full")] { _visitor.visit_expr_if(&* _binding_0) } #[cfg(not(feature = "full"))] unreachable!() };
812 }
813 IfLet(ref _binding_0, ) => {
814 { #[cfg(feature = "full")] { _visitor.visit_expr_if_let(&* _binding_0) } #[cfg(not(feature = "full"))] unreachable!() };
815 }
816 While(ref _binding_0, ) => {
817 { #[cfg(feature = "full")] { _visitor.visit_expr_while(&* _binding_0) } #[cfg(not(feature = "full"))] unreachable!() };
818 }
819 WhileLet(ref _binding_0, ) => {
820 { #[cfg(feature = "full")] { _visitor.visit_expr_while_let(&* _binding_0) } #[cfg(not(feature = "full"))] unreachable!() };
821 }
822 ForLoop(ref _binding_0, ) => {
823 { #[cfg(feature = "full")] { _visitor.visit_expr_for_loop(&* _binding_0) } #[cfg(not(feature = "full"))] unreachable!() };
824 }
825 Loop(ref _binding_0, ) => {
826 { #[cfg(feature = "full")] { _visitor.visit_expr_loop(&* _binding_0) } #[cfg(not(feature = "full"))] unreachable!() };
827 }
828 Match(ref _binding_0, ) => {
829 { #[cfg(feature = "full")] { _visitor.visit_expr_match(&* _binding_0) } #[cfg(not(feature = "full"))] unreachable!() };
830 }
831 Closure(ref _binding_0, ) => {
832 { #[cfg(feature = "full")] { _visitor.visit_expr_closure(&* _binding_0) } #[cfg(not(feature = "full"))] unreachable!() };
833 }
834 Block(ref _binding_0, ) => {
835 { #[cfg(feature = "full")] { _visitor.visit_expr_block(&* _binding_0) } #[cfg(not(feature = "full"))] unreachable!() };
836 }
837 Assign(ref _binding_0, ) => {
838 { #[cfg(feature = "full")] { _visitor.visit_expr_assign(&* _binding_0) } #[cfg(not(feature = "full"))] unreachable!() };
839 }
840 AssignOp(ref _binding_0, ) => {
841 { #[cfg(feature = "full")] { _visitor.visit_expr_assign_op(&* _binding_0) } #[cfg(not(feature = "full"))] unreachable!() };
842 }
843 Field(ref _binding_0, ) => {
844 { #[cfg(feature = "full")] { _visitor.visit_expr_field(&* _binding_0) } #[cfg(not(feature = "full"))] unreachable!() };
845 }
846 TupField(ref _binding_0, ) => {
847 { #[cfg(feature = "full")] { _visitor.visit_expr_tup_field(&* _binding_0) } #[cfg(not(feature = "full"))] unreachable!() };
848 }
849 Index(ref _binding_0, ) => {
850 _visitor.visit_expr_index(&* _binding_0);
851 }
852 Range(ref _binding_0, ) => {
853 { #[cfg(feature = "full")] { _visitor.visit_expr_range(&* _binding_0) } #[cfg(not(feature = "full"))] unreachable!() };
854 }
855 Path(ref _binding_0, ) => {
856 _visitor.visit_expr_path(&* _binding_0);
857 }
858 AddrOf(ref _binding_0, ) => {
859 { #[cfg(feature = "full")] { _visitor.visit_expr_addr_of(&* _binding_0) } #[cfg(not(feature = "full"))] unreachable!() };
860 }
861 Break(ref _binding_0, ) => {
862 { #[cfg(feature = "full")] { _visitor.visit_expr_break(&* _binding_0) } #[cfg(not(feature = "full"))] unreachable!() };
863 }
864 Continue(ref _binding_0, ) => {
865 { #[cfg(feature = "full")] { _visitor.visit_expr_continue(&* _binding_0) } #[cfg(not(feature = "full"))] unreachable!() };
866 }
867 Ret(ref _binding_0, ) => {
868 { #[cfg(feature = "full")] { _visitor.visit_expr_ret(&* _binding_0) } #[cfg(not(feature = "full"))] unreachable!() };
869 }
870 Mac(ref _binding_0, ) => {
871 _visitor.visit_mac(&* _binding_0);
872 }
873 Struct(ref _binding_0, ) => {
874 { #[cfg(feature = "full")] { _visitor.visit_expr_struct(&* _binding_0) } #[cfg(not(feature = "full"))] unreachable!() };
875 }
876 Repeat(ref _binding_0, ) => {
877 { #[cfg(feature = "full")] { _visitor.visit_expr_repeat(&* _binding_0) } #[cfg(not(feature = "full"))] unreachable!() };
878 }
879 Paren(ref _binding_0, ) => {
880 _visitor.visit_expr_paren(&* _binding_0);
881 }
882 Group(ref _binding_0, ) => {
883 _visitor.visit_expr_group(&* _binding_0);
884 }
885 Try(ref _binding_0, ) => {
886 { #[cfg(feature = "full")] { _visitor.visit_expr_try(&* _binding_0) } #[cfg(not(feature = "full"))] unreachable!() };
887 }
888 Catch(ref _binding_0, ) => {
889 { #[cfg(feature = "full")] { _visitor.visit_expr_catch(&* _binding_0) } #[cfg(not(feature = "full"))] unreachable!() };
890 }
891 Yield(ref _binding_0, ) => {
892 { #[cfg(feature = "full")] { _visitor.visit_expr_yield(&* _binding_0) } #[cfg(not(feature = "full"))] unreachable!() };
893 }
894 }
895}
896# [ cfg ( feature = "full" ) ]
897pub fn walk_expr_loop<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprLoop) {
898 _visitor.visit_block(&_i . body);
899 // Skipped field _i . label;
900 // Skipped field _i . loop_token;
901 // Skipped field _i . colon_token;
902}
903# [ cfg ( feature = "full" ) ]
904pub fn walk_expr_match<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprMatch) {
905 // Skipped field _i . match_token;
906 // Skipped field _i . brace_token;
907 _visitor.visit_expr(&_i . expr);
908 for it in (_i . arms).iter() { _visitor.visit_arm(&it) };
909}
910# [ cfg ( feature = "full" ) ]
911pub fn walk_expr_method_call<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprMethodCall) {
912 _visitor.visit_expr(&_i . expr);
913 // Skipped field _i . method;
914 for el in (_i . typarams).iter() { let it = el.item(); _visitor.visit_ty(&it) };
915 for el in (_i . args).iter() { let it = el.item(); _visitor.visit_expr(&it) };
916 // Skipped field _i . paren_token;
917 // Skipped field _i . dot_token;
918 // Skipped field _i . lt_token;
919 // Skipped field _i . colon2_token;
920 // Skipped field _i . gt_token;
921}
922
923pub fn walk_expr_paren<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprParen) {
924 _visitor.visit_expr(&_i . expr);
925 // Skipped field _i . paren_token;
926}
927
928pub fn walk_expr_path<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprPath) {
929 // Skipped field _i . qself;
930 _visitor.visit_path(&_i . path);
931}
932# [ cfg ( feature = "full" ) ]
933pub fn walk_expr_range<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprRange) {
934 // Skipped field _i . from;
935 // Skipped field _i . to;
936 _visitor.visit_range_limits(&_i . limits);
937}
938# [ cfg ( feature = "full" ) ]
939pub fn walk_expr_repeat<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprRepeat) {
940 // Skipped field _i . bracket_token;
941 // Skipped field _i . semi_token;
942 _visitor.visit_expr(&_i . expr);
943 _visitor.visit_expr(&_i . amt);
944}
945# [ cfg ( feature = "full" ) ]
946pub fn walk_expr_ret<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprRet) {
947 // Skipped field _i . expr;
948 // Skipped field _i . return_token;
949}
950# [ cfg ( feature = "full" ) ]
951pub fn walk_expr_struct<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprStruct) {
952 _visitor.visit_path(&_i . path);
953 for el in (_i . fields).iter() { let it = el.item(); _visitor.visit_field_value(&it) };
954 // Skipped field _i . rest;
955 // Skipped field _i . dot2_token;
956 // Skipped field _i . brace_token;
957}
958# [ cfg ( feature = "full" ) ]
959pub fn walk_expr_try<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprTry) {
960 _visitor.visit_expr(&_i . expr);
961 // Skipped field _i . question_token;
962}
963# [ cfg ( feature = "full" ) ]
964pub fn walk_expr_tup<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprTup) {
965 for el in (_i . args).iter() { let it = el.item(); _visitor.visit_expr(&it) };
966 // Skipped field _i . paren_token;
967 // Skipped field _i . lone_comma;
968}
969# [ cfg ( feature = "full" ) ]
970pub fn walk_expr_tup_field<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprTupField) {
971 _visitor.visit_expr(&_i . expr);
972 // Skipped field _i . field;
973 // Skipped field _i . dot_token;
974}
975
976pub fn walk_expr_type<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprType) {
977 _visitor.visit_expr(&_i . expr);
978 // Skipped field _i . colon_token;
979 _visitor.visit_ty(&_i . ty);
980}
981
982pub fn walk_expr_unary<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprUnary) {
983 _visitor.visit_un_op(&_i . op);
984 _visitor.visit_expr(&_i . expr);
985}
986# [ cfg ( feature = "full" ) ]
987pub fn walk_expr_while<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprWhile) {
988 _visitor.visit_expr(&_i . cond);
989 _visitor.visit_block(&_i . body);
990 // Skipped field _i . label;
991 // Skipped field _i . colon_token;
992 // Skipped field _i . while_token;
993}
994# [ cfg ( feature = "full" ) ]
995pub fn walk_expr_while_let<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprWhileLet) {
996 _visitor.visit_pat(&_i . pat);
997 _visitor.visit_expr(&_i . expr);
998 _visitor.visit_block(&_i . body);
999 // Skipped field _i . label;
1000 // Skipped field _i . colon_token;
1001 // Skipped field _i . while_token;
1002 // Skipped field _i . let_token;
1003 // Skipped field _i . eq_token;
1004}
1005# [ cfg ( feature = "full" ) ]
1006pub fn walk_expr_yield<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprYield) {
1007 // Skipped field _i . yield_token;
1008 // Skipped field _i . expr;
1009}
1010
1011pub fn walk_field<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Field) {
1012 // Skipped field _i . ident;
1013 _visitor.visit_visibility(&_i . vis);
1014 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
1015 _visitor.visit_ty(&_i . ty);
1016 // Skipped field _i . colon_token;
1017}
1018# [ cfg ( feature = "full" ) ]
1019pub fn walk_field_pat<V: Visitor + ?Sized>(_visitor: &mut V, _i: &FieldPat) {
1020 // Skipped field _i . ident;
1021 _visitor.visit_pat(&_i . pat);
1022 // Skipped field _i . is_shorthand;
1023 // Skipped field _i . colon_token;
1024 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
1025}
1026# [ cfg ( feature = "full" ) ]
1027pub fn walk_field_value<V: Visitor + ?Sized>(_visitor: &mut V, _i: &FieldValue) {
1028 // Skipped field _i . ident;
1029 _visitor.visit_expr(&_i . expr);
1030 // Skipped field _i . is_shorthand;
1031 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
1032 // Skipped field _i . colon_token;
1033}
1034# [ cfg ( feature = "full" ) ]
1035pub fn walk_file<V: Visitor + ?Sized>(_visitor: &mut V, _i: &File) {
1036 // Skipped field _i . shebang;
1037 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
1038 for it in (_i . items).iter() { _visitor.visit_item(&it) };
1039}
1040# [ cfg ( feature = "full" ) ]
1041pub fn walk_fn_arg<V: Visitor + ?Sized>(_visitor: &mut V, _i: &FnArg) {
1042 use ::FnArg::*;
1043 match *_i {
1044 SelfRef(ref _binding_0, ) => {
1045 _visitor.visit_arg_self_ref(&* _binding_0);
1046 }
1047 SelfValue(ref _binding_0, ) => {
1048 _visitor.visit_arg_self(&* _binding_0);
1049 }
1050 Captured(ref _binding_0, ) => {
1051 _visitor.visit_arg_captured(&* _binding_0);
1052 }
1053 Ignored(ref _binding_0, ) => {
1054 _visitor.visit_ty(&* _binding_0);
1055 }
1056 }
1057}
1058# [ cfg ( feature = "full" ) ]
1059pub fn walk_fn_decl<V: Visitor + ?Sized>(_visitor: &mut V, _i: &FnDecl) {
1060 // Skipped field _i . fn_token;
1061 // Skipped field _i . paren_token;
1062 for el in (_i . inputs).iter() { let it = el.item(); _visitor.visit_fn_arg(&it) };
1063 _visitor.visit_function_ret_ty(&_i . output);
1064 _visitor.visit_generics(&_i . generics);
1065 // Skipped field _i . variadic;
1066 // Skipped field _i . dot_tokens;
1067}
1068# [ cfg ( feature = "full" ) ]
1069pub fn walk_foreign_item<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ForeignItem) {
1070 // Skipped field _i . ident;
1071 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
1072 _visitor.visit_foreign_item_kind(&_i . node);
1073 _visitor.visit_visibility(&_i . vis);
1074 // Skipped field _i . semi_token;
1075}
1076# [ cfg ( feature = "full" ) ]
1077pub fn walk_foreign_item_fn<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ForeignItemFn) {
1078 _visitor.visit_fn_decl(&_i . decl);
1079}
1080# [ cfg ( feature = "full" ) ]
1081pub fn walk_foreign_item_kind<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ForeignItemKind) {
1082 use ::ForeignItemKind::*;
1083 match *_i {
1084 Fn(ref _binding_0, ) => {
1085 _visitor.visit_foreign_item_fn(&* _binding_0);
1086 }
1087 Static(ref _binding_0, ) => {
1088 _visitor.visit_foreign_item_static(&* _binding_0);
1089 }
1090 }
1091}
1092# [ cfg ( feature = "full" ) ]
1093pub fn walk_foreign_item_static<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ForeignItemStatic) {
1094 // Skipped field _i . static_token;
1095 _visitor.visit_ty(&_i . ty);
1096 // Skipped field _i . colon_token;
1097 _visitor.visit_mutability(&_i . mutbl);
1098}
1099
1100pub fn walk_function_ret_ty<V: Visitor + ?Sized>(_visitor: &mut V, _i: &FunctionRetTy) {
1101 use ::FunctionRetTy::*;
1102 match *_i {
1103 Default => { }
1104 Ty(ref _binding_0, ref _binding_1, ) => {
1105 _visitor.visit_ty(&* _binding_0);
1106 // Skipped field * _binding_1;
1107 }
1108 }
1109}
1110
1111pub fn walk_generics<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Generics) {
1112 // Skipped field _i . lt_token;
1113 // Skipped field _i . gt_token;
1114 for el in (_i . lifetimes).iter() { let it = el.item(); _visitor.visit_lifetime_def(&it) };
1115 for el in (_i . ty_params).iter() { let it = el.item(); _visitor.visit_ty_param(&it) };
1116 _visitor.visit_where_clause(&_i . where_clause);
1117}
1118# [ cfg ( feature = "full" ) ]
1119pub fn walk_impl_item<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ImplItem) {
1120 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
1121 _visitor.visit_impl_item_kind(&_i . node);
1122}
1123# [ cfg ( feature = "full" ) ]
1124pub fn walk_impl_item_const<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ImplItemConst) {
1125 _visitor.visit_visibility(&_i . vis);
1126 _visitor.visit_defaultness(&_i . defaultness);
1127 // Skipped field _i . const_token;
1128 // Skipped field _i . ident;
1129 // Skipped field _i . colon_token;
1130 _visitor.visit_ty(&_i . ty);
1131 // Skipped field _i . eq_token;
1132 _visitor.visit_expr(&_i . expr);
1133 // Skipped field _i . semi_token;
1134}
1135# [ cfg ( feature = "full" ) ]
1136pub fn walk_impl_item_kind<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ImplItemKind) {
1137 use ::ImplItemKind::*;
1138 match *_i {
1139 Const(ref _binding_0, ) => {
1140 _visitor.visit_impl_item_const(&* _binding_0);
1141 }
1142 Method(ref _binding_0, ) => {
1143 _visitor.visit_impl_item_method(&* _binding_0);
1144 }
1145 Type(ref _binding_0, ) => {
1146 _visitor.visit_impl_item_type(&* _binding_0);
1147 }
1148 Macro(ref _binding_0, ) => {
1149 _visitor.visit_mac(&* _binding_0);
1150 }
1151 }
1152}
1153# [ cfg ( feature = "full" ) ]
1154pub fn walk_impl_item_method<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ImplItemMethod) {
1155 _visitor.visit_visibility(&_i . vis);
1156 _visitor.visit_defaultness(&_i . defaultness);
1157 _visitor.visit_method_sig(&_i . sig);
1158 _visitor.visit_block(&_i . block);
1159}
1160# [ cfg ( feature = "full" ) ]
1161pub fn walk_impl_item_type<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ImplItemType) {
1162 _visitor.visit_visibility(&_i . vis);
1163 _visitor.visit_defaultness(&_i . defaultness);
1164 // Skipped field _i . type_token;
1165 // Skipped field _i . ident;
1166 // Skipped field _i . eq_token;
1167 _visitor.visit_ty(&_i . ty);
1168 // Skipped field _i . semi_token;
1169}
1170# [ cfg ( feature = "full" ) ]
1171pub fn walk_impl_polarity<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ImplPolarity) {
1172 use ::ImplPolarity::*;
1173 match *_i {
1174 Positive => { }
1175 Negative(ref _binding_0, ) => {
1176 // Skipped field * _binding_0;
1177 }
1178 }
1179}
1180# [ cfg ( feature = "full" ) ]
1181pub fn walk_in_place_kind<V: Visitor + ?Sized>(_visitor: &mut V, _i: &InPlaceKind) {
1182 use ::InPlaceKind::*;
1183 match *_i {
1184 Arrow(ref _binding_0, ) => {
1185 // Skipped field * _binding_0;
1186 }
1187 In(ref _binding_0, ) => {
1188 // Skipped field * _binding_0;
1189 }
1190 }
1191}
1192# [ cfg ( feature = "full" ) ]
1193pub fn walk_item<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Item) {
1194 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
1195 _visitor.visit_item_kind(&_i . node);
1196}
1197# [ cfg ( feature = "full" ) ]
1198pub fn walk_item_const<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ItemConst) {
1199 _visitor.visit_visibility(&_i . vis);
1200 // Skipped field _i . const_token;
1201 // Skipped field _i . ident;
1202 // Skipped field _i . colon_token;
1203 _visitor.visit_ty(&_i . ty);
1204 // Skipped field _i . eq_token;
1205 _visitor.visit_expr(&_i . expr);
1206 // Skipped field _i . semi_token;
1207}
1208# [ cfg ( feature = "full" ) ]
1209pub fn walk_item_default_impl<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ItemDefaultImpl) {
1210 _visitor.visit_unsafety(&_i . unsafety);
1211 // Skipped field _i . impl_token;
1212 _visitor.visit_path(&_i . path);
1213 // Skipped field _i . for_token;
1214 // Skipped field _i . dot2_token;
1215 // Skipped field _i . brace_token;
1216}
1217# [ cfg ( feature = "full" ) ]
1218pub fn walk_item_enum<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ItemEnum) {
1219 _visitor.visit_visibility(&_i . vis);
1220 // Skipped field _i . enum_token;
1221 // Skipped field _i . ident;
1222 _visitor.visit_generics(&_i . generics);
1223 // Skipped field _i . brace_token;
1224 for el in (_i . variants).iter() { let it = el.item(); _visitor.visit_variant(&it) };
1225}
1226# [ cfg ( feature = "full" ) ]
1227pub fn walk_item_extern_crate<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ItemExternCrate) {
1228 _visitor.visit_visibility(&_i . vis);
1229 // Skipped field _i . extern_token;
1230 // Skipped field _i . crate_token;
1231 // Skipped field _i . ident;
1232 // Skipped field _i . rename;
1233 // Skipped field _i . semi_token;
1234}
1235# [ cfg ( feature = "full" ) ]
1236pub fn walk_item_fn<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ItemFn) {
1237 _visitor.visit_visibility(&_i . vis);
1238 _visitor.visit_constness(&_i . constness);
1239 _visitor.visit_unsafety(&_i . unsafety);
1240 // Skipped field _i . abi;
1241 _visitor.visit_fn_decl(&_i . decl);
1242 // Skipped field _i . ident;
1243 _visitor.visit_block(&_i . block);
1244}
1245# [ cfg ( feature = "full" ) ]
1246pub fn walk_item_foreign_mod<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ItemForeignMod) {
1247 _visitor.visit_abi(&_i . abi);
1248 // Skipped field _i . brace_token;
1249 for it in (_i . items).iter() { _visitor.visit_foreign_item(&it) };
1250}
1251# [ cfg ( feature = "full" ) ]
1252pub fn walk_item_impl<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ItemImpl) {
1253 _visitor.visit_defaultness(&_i . defaultness);
1254 _visitor.visit_unsafety(&_i . unsafety);
1255 // Skipped field _i . impl_token;
1256 _visitor.visit_generics(&_i . generics);
1257 // Skipped field _i . trait_;
1258 _visitor.visit_ty(&_i . self_ty);
1259 // Skipped field _i . brace_token;
1260 for it in (_i . items).iter() { _visitor.visit_impl_item(&it) };
1261}
1262# [ cfg ( feature = "full" ) ]
1263pub fn walk_item_kind<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ItemKind) {
1264 use ::ItemKind::*;
1265 match *_i {
1266 ExternCrate(ref _binding_0, ) => {
1267 _visitor.visit_item_extern_crate(&* _binding_0);
1268 }
1269 Use(ref _binding_0, ) => {
1270 _visitor.visit_item_use(&* _binding_0);
1271 }
1272 Static(ref _binding_0, ) => {
1273 _visitor.visit_item_static(&* _binding_0);
1274 }
1275 Const(ref _binding_0, ) => {
1276 _visitor.visit_item_const(&* _binding_0);
1277 }
1278 Fn(ref _binding_0, ) => {
1279 _visitor.visit_item_fn(&* _binding_0);
1280 }
1281 Mod(ref _binding_0, ) => {
1282 _visitor.visit_item_mod(&* _binding_0);
1283 }
1284 ForeignMod(ref _binding_0, ) => {
1285 _visitor.visit_item_foreign_mod(&* _binding_0);
1286 }
1287 Ty(ref _binding_0, ) => {
1288 _visitor.visit_item_ty(&* _binding_0);
1289 }
1290 Enum(ref _binding_0, ) => {
1291 _visitor.visit_item_enum(&* _binding_0);
1292 }
1293 Struct(ref _binding_0, ) => {
1294 _visitor.visit_item_struct(&* _binding_0);
1295 }
1296 Union(ref _binding_0, ) => {
1297 _visitor.visit_item_union(&* _binding_0);
1298 }
1299 Trait(ref _binding_0, ) => {
1300 _visitor.visit_item_trait(&* _binding_0);
1301 }
1302 DefaultImpl(ref _binding_0, ) => {
1303 _visitor.visit_item_default_impl(&* _binding_0);
1304 }
1305 Impl(ref _binding_0, ) => {
1306 _visitor.visit_item_impl(&* _binding_0);
1307 }
1308 Mac(ref _binding_0, ) => {
1309 _visitor.visit_mac(&* _binding_0);
1310 }
1311 }
1312}
1313# [ cfg ( feature = "full" ) ]
1314pub fn walk_item_mod<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ItemMod) {
1315 _visitor.visit_visibility(&_i . vis);
1316 // Skipped field _i . mod_token;
1317 // Skipped field _i . ident;
1318 // Skipped field _i . content;
1319 // Skipped field _i . semi;
1320}
1321# [ cfg ( feature = "full" ) ]
1322pub fn walk_item_static<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ItemStatic) {
1323 _visitor.visit_visibility(&_i . vis);
1324 // Skipped field _i . static_token;
1325 _visitor.visit_mutability(&_i . mutbl);
1326 // Skipped field _i . ident;
1327 // Skipped field _i . colon_token;
1328 _visitor.visit_ty(&_i . ty);
1329 // Skipped field _i . eq_token;
1330 _visitor.visit_expr(&_i . expr);
1331 // Skipped field _i . semi_token;
1332}
1333# [ cfg ( feature = "full" ) ]
1334pub fn walk_item_struct<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ItemStruct) {
1335 _visitor.visit_visibility(&_i . vis);
1336 // Skipped field _i . struct_token;
1337 // Skipped field _i . ident;
1338 _visitor.visit_generics(&_i . generics);
1339 _visitor.visit_variant_data(&_i . data);
1340 // Skipped field _i . semi_token;
1341}
1342# [ cfg ( feature = "full" ) ]
1343pub fn walk_item_trait<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ItemTrait) {
1344 _visitor.visit_visibility(&_i . vis);
1345 _visitor.visit_unsafety(&_i . unsafety);
1346 // Skipped field _i . trait_token;
1347 // Skipped field _i . ident;
1348 _visitor.visit_generics(&_i . generics);
1349 // Skipped field _i . colon_token;
1350 for el in (_i . supertraits).iter() { let it = el.item(); _visitor.visit_ty_param_bound(&it) };
1351 // Skipped field _i . brace_token;
1352 for it in (_i . items).iter() { _visitor.visit_trait_item(&it) };
1353}
1354# [ cfg ( feature = "full" ) ]
1355pub fn walk_item_ty<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ItemTy) {
1356 _visitor.visit_visibility(&_i . vis);
1357 // Skipped field _i . type_token;
1358 // Skipped field _i . ident;
1359 _visitor.visit_generics(&_i . generics);
1360 // Skipped field _i . eq_token;
1361 _visitor.visit_ty(&_i . ty);
1362 // Skipped field _i . semi_token;
1363}
1364# [ cfg ( feature = "full" ) ]
1365pub fn walk_item_union<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ItemUnion) {
1366 _visitor.visit_visibility(&_i . vis);
1367 // Skipped field _i . union_token;
1368 // Skipped field _i . ident;
1369 _visitor.visit_generics(&_i . generics);
1370 _visitor.visit_variant_data(&_i . data);
1371}
1372# [ cfg ( feature = "full" ) ]
1373pub fn walk_item_use<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ItemUse) {
1374 _visitor.visit_visibility(&_i . vis);
1375 // Skipped field _i . use_token;
1376 _visitor.visit_view_path(&_i . path);
1377 // Skipped field _i . semi_token;
1378}
1379
1380pub fn walk_lifetime_def<V: Visitor + ?Sized>(_visitor: &mut V, _i: &LifetimeDef) {
1381 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
1382 // Skipped field _i . lifetime;
1383 // Skipped field _i . colon_token;
1384 // Skipped field _i . bounds;
1385}
1386# [ cfg ( feature = "full" ) ]
1387pub fn walk_local<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Local) {
1388 // Skipped field _i . let_token;
1389 // Skipped field _i . colon_token;
1390 // Skipped field _i . eq_token;
1391 // Skipped field _i . semi_token;
1392 _visitor.visit_pat(&_i . pat);
1393 // Skipped field _i . ty;
1394 // Skipped field _i . init;
1395 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
1396}
1397
1398pub fn walk_mac<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Mac) {
1399 _visitor.visit_path(&_i . path);
1400 // Skipped field _i . bang_token;
1401 // Skipped field _i . ident;
1402 // Skipped field _i . tokens;
1403}
1404# [ cfg ( feature = "full" ) ]
1405pub fn walk_mac_stmt_style<V: Visitor + ?Sized>(_visitor: &mut V, _i: &MacStmtStyle) {
1406 use ::MacStmtStyle::*;
1407 match *_i {
1408 Semicolon(ref _binding_0, ) => {
1409 // Skipped field * _binding_0;
1410 }
1411 Braces => { }
1412 NoBraces => { }
1413 }
1414}
1415
1416pub fn walk_meta_item<V: Visitor + ?Sized>(_visitor: &mut V, _i: &MetaItem) {
1417 use ::MetaItem::*;
1418 match *_i {
1419 Term(ref _binding_0, ) => {
1420 // Skipped field * _binding_0;
1421 }
1422 List(ref _binding_0, ) => {
1423 _visitor.visit_meta_item_list(&* _binding_0);
1424 }
1425 NameValue(ref _binding_0, ) => {
1426 _visitor.visit_meta_name_value(&* _binding_0);
1427 }
1428 }
1429}
1430
1431pub fn walk_meta_item_list<V: Visitor + ?Sized>(_visitor: &mut V, _i: &MetaItemList) {
1432 // Skipped field _i . ident;
1433 // Skipped field _i . paren_token;
1434 for el in (_i . nested).iter() { let it = el.item(); _visitor.visit_nested_meta_item(&it) };
1435}
1436
1437pub fn walk_meta_name_value<V: Visitor + ?Sized>(_visitor: &mut V, _i: &MetaNameValue) {
1438 // Skipped field _i . ident;
1439 // Skipped field _i . eq_token;
1440 // Skipped field _i . lit;
1441}
1442# [ cfg ( feature = "full" ) ]
1443pub fn walk_method_sig<V: Visitor + ?Sized>(_visitor: &mut V, _i: &MethodSig) {
1444 _visitor.visit_constness(&_i . constness);
1445 _visitor.visit_unsafety(&_i . unsafety);
1446 // Skipped field _i . abi;
1447 // Skipped field _i . ident;
1448 _visitor.visit_fn_decl(&_i . decl);
1449}
1450
1451pub fn walk_mut_ty<V: Visitor + ?Sized>(_visitor: &mut V, _i: &MutTy) {
1452 _visitor.visit_ty(&_i . ty);
1453 _visitor.visit_mutability(&_i . mutability);
1454}
1455
1456pub fn walk_mutability<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Mutability) {
1457 use ::Mutability::*;
1458 match *_i {
1459 Mutable(ref _binding_0, ) => {
1460 // Skipped field * _binding_0;
1461 }
1462 Immutable => { }
1463 }
1464}
1465
1466pub fn walk_nested_meta_item<V: Visitor + ?Sized>(_visitor: &mut V, _i: &NestedMetaItem) {
1467 use ::NestedMetaItem::*;
1468 match *_i {
1469 MetaItem(ref _binding_0, ) => {
1470 _visitor.visit_meta_item(&* _binding_0);
1471 }
1472 Literal(ref _binding_0, ) => {
1473 // Skipped field * _binding_0;
1474 }
1475 }
1476}
1477
1478pub fn walk_parenthesized_parameter_data<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ParenthesizedParameterData) {
1479 // Skipped field _i . paren_token;
1480 for el in (_i . inputs).iter() { let it = el.item(); _visitor.visit_ty(&it) };
1481 _visitor.visit_function_ret_ty(&_i . output);
1482}
1483# [ cfg ( feature = "full" ) ]
1484pub fn walk_pat<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Pat) {
1485 use ::Pat::*;
1486 match *_i {
1487 Wild(ref _binding_0, ) => {
1488 _visitor.visit_pat_wild(&* _binding_0);
1489 }
1490 Ident(ref _binding_0, ) => {
1491 _visitor.visit_pat_ident(&* _binding_0);
1492 }
1493 Struct(ref _binding_0, ) => {
1494 _visitor.visit_pat_struct(&* _binding_0);
1495 }
1496 TupleStruct(ref _binding_0, ) => {
1497 _visitor.visit_pat_tuple_struct(&* _binding_0);
1498 }
1499 Path(ref _binding_0, ) => {
1500 _visitor.visit_pat_path(&* _binding_0);
1501 }
1502 Tuple(ref _binding_0, ) => {
1503 _visitor.visit_pat_tuple(&* _binding_0);
1504 }
1505 Box(ref _binding_0, ) => {
1506 _visitor.visit_pat_box(&* _binding_0);
1507 }
1508 Ref(ref _binding_0, ) => {
1509 _visitor.visit_pat_ref(&* _binding_0);
1510 }
1511 Lit(ref _binding_0, ) => {
1512 _visitor.visit_pat_lit(&* _binding_0);
1513 }
1514 Range(ref _binding_0, ) => {
1515 _visitor.visit_pat_range(&* _binding_0);
1516 }
1517 Slice(ref _binding_0, ) => {
1518 _visitor.visit_pat_slice(&* _binding_0);
1519 }
1520 Mac(ref _binding_0, ) => {
1521 _visitor.visit_mac(&* _binding_0);
1522 }
1523 }
1524}
1525# [ cfg ( feature = "full" ) ]
1526pub fn walk_pat_box<V: Visitor + ?Sized>(_visitor: &mut V, _i: &PatBox) {
1527 _visitor.visit_pat(&_i . pat);
1528 // Skipped field _i . box_token;
1529}
1530# [ cfg ( feature = "full" ) ]
1531pub fn walk_pat_ident<V: Visitor + ?Sized>(_visitor: &mut V, _i: &PatIdent) {
1532 _visitor.visit_binding_mode(&_i . mode);
1533 // Skipped field _i . ident;
1534 // Skipped field _i . subpat;
1535 // Skipped field _i . at_token;
1536}
1537# [ cfg ( feature = "full" ) ]
1538pub fn walk_pat_lit<V: Visitor + ?Sized>(_visitor: &mut V, _i: &PatLit) {
1539 _visitor.visit_expr(&_i . expr);
1540}
1541# [ cfg ( feature = "full" ) ]
1542pub fn walk_pat_path<V: Visitor + ?Sized>(_visitor: &mut V, _i: &PatPath) {
1543 // Skipped field _i . qself;
1544 _visitor.visit_path(&_i . path);
1545}
1546# [ cfg ( feature = "full" ) ]
1547pub fn walk_pat_range<V: Visitor + ?Sized>(_visitor: &mut V, _i: &PatRange) {
1548 _visitor.visit_expr(&_i . lo);
1549 _visitor.visit_expr(&_i . hi);
1550 _visitor.visit_range_limits(&_i . limits);
1551}
1552# [ cfg ( feature = "full" ) ]
1553pub fn walk_pat_ref<V: Visitor + ?Sized>(_visitor: &mut V, _i: &PatRef) {
1554 _visitor.visit_pat(&_i . pat);
1555 _visitor.visit_mutability(&_i . mutbl);
1556 // Skipped field _i . and_token;
1557}
1558# [ cfg ( feature = "full" ) ]
1559pub fn walk_pat_slice<V: Visitor + ?Sized>(_visitor: &mut V, _i: &PatSlice) {
1560 for el in (_i . front).iter() { let it = el.item(); _visitor.visit_pat(&it) };
1561 // Skipped field _i . middle;
1562 for el in (_i . back).iter() { let it = el.item(); _visitor.visit_pat(&it) };
1563 // Skipped field _i . dot2_token;
1564 // Skipped field _i . comma_token;
1565 // Skipped field _i . bracket_token;
1566}
1567# [ cfg ( feature = "full" ) ]
1568pub fn walk_pat_struct<V: Visitor + ?Sized>(_visitor: &mut V, _i: &PatStruct) {
1569 _visitor.visit_path(&_i . path);
1570 for el in (_i . fields).iter() { let it = el.item(); _visitor.visit_field_pat(&it) };
1571 // Skipped field _i . brace_token;
1572 // Skipped field _i . dot2_token;
1573}
1574# [ cfg ( feature = "full" ) ]
1575pub fn walk_pat_tuple<V: Visitor + ?Sized>(_visitor: &mut V, _i: &PatTuple) {
1576 for el in (_i . pats).iter() { let it = el.item(); _visitor.visit_pat(&it) };
1577 // Skipped field _i . dots_pos;
1578 // Skipped field _i . paren_token;
1579 // Skipped field _i . dot2_token;
1580 // Skipped field _i . comma_token;
1581}
1582# [ cfg ( feature = "full" ) ]
1583pub fn walk_pat_tuple_struct<V: Visitor + ?Sized>(_visitor: &mut V, _i: &PatTupleStruct) {
1584 _visitor.visit_path(&_i . path);
1585 _visitor.visit_pat_tuple(&_i . pat);
1586}
1587# [ cfg ( feature = "full" ) ]
1588pub fn walk_pat_wild<V: Visitor + ?Sized>(_visitor: &mut V, _i: &PatWild) {
1589 // Skipped field _i . underscore_token;
1590}
1591
1592pub fn walk_path<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Path) {
1593 // Skipped field _i . leading_colon;
1594 for el in (_i . segments).iter() { let it = el.item(); _visitor.visit_path_segment(&it) };
1595}
1596# [ cfg ( feature = "full" ) ]
1597pub fn walk_path_glob<V: Visitor + ?Sized>(_visitor: &mut V, _i: &PathGlob) {
1598 _visitor.visit_path(&_i . path);
1599 // Skipped field _i . colon2_token;
1600 // Skipped field _i . star_token;
1601}
1602# [ cfg ( feature = "full" ) ]
1603pub fn walk_path_list<V: Visitor + ?Sized>(_visitor: &mut V, _i: &PathList) {
1604 _visitor.visit_path(&_i . path);
1605 // Skipped field _i . colon2_token;
1606 // Skipped field _i . brace_token;
1607 for el in (_i . items).iter() { let it = el.item(); _visitor.visit_path_list_item(&it) };
1608}
1609# [ cfg ( feature = "full" ) ]
1610pub fn walk_path_list_item<V: Visitor + ?Sized>(_visitor: &mut V, _i: &PathListItem) {
1611 // Skipped field _i . name;
1612 // Skipped field _i . rename;
1613 // Skipped field _i . as_token;
1614}
1615
1616pub fn walk_path_parameters<V: Visitor + ?Sized>(_visitor: &mut V, _i: &PathParameters) {
1617 use ::PathParameters::*;
1618 match *_i {
1619 None => { }
1620 AngleBracketed(ref _binding_0, ) => {
1621 _visitor.visit_angle_bracketed_parameter_data(&* _binding_0);
1622 }
1623 Parenthesized(ref _binding_0, ) => {
1624 _visitor.visit_parenthesized_parameter_data(&* _binding_0);
1625 }
1626 }
1627}
1628
1629pub fn walk_path_segment<V: Visitor + ?Sized>(_visitor: &mut V, _i: &PathSegment) {
1630 // Skipped field _i . ident;
1631 _visitor.visit_path_parameters(&_i . parameters);
1632}
1633# [ cfg ( feature = "full" ) ]
1634pub fn walk_path_simple<V: Visitor + ?Sized>(_visitor: &mut V, _i: &PathSimple) {
1635 _visitor.visit_path(&_i . path);
1636 // Skipped field _i . as_token;
1637 // Skipped field _i . rename;
1638}
1639
1640pub fn walk_poly_trait_ref<V: Visitor + ?Sized>(_visitor: &mut V, _i: &PolyTraitRef) {
1641 // Skipped field _i . bound_lifetimes;
1642 _visitor.visit_path(&_i . trait_ref);
1643}
1644
1645pub fn walk_qself<V: Visitor + ?Sized>(_visitor: &mut V, _i: &QSelf) {
1646 // Skipped field _i . lt_token;
1647 _visitor.visit_ty(&_i . ty);
1648 // Skipped field _i . position;
1649 // Skipped field _i . as_token;
1650 // Skipped field _i . gt_token;
1651}
1652# [ cfg ( feature = "full" ) ]
1653pub fn walk_range_limits<V: Visitor + ?Sized>(_visitor: &mut V, _i: &RangeLimits) {
1654 use ::RangeLimits::*;
1655 match *_i {
1656 HalfOpen(ref _binding_0, ) => {
1657 // Skipped field * _binding_0;
1658 }
1659 Closed(ref _binding_0, ) => {
1660 // Skipped field * _binding_0;
1661 }
1662 }
1663}
1664# [ cfg ( feature = "full" ) ]
1665pub fn walk_stmt<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Stmt) {
1666 use ::Stmt::*;
1667 match *_i {
1668 Local(ref _binding_0, ) => {
1669 _visitor.visit_local(&* _binding_0);
1670 }
1671 Item(ref _binding_0, ) => {
1672 _visitor.visit_item(&* _binding_0);
1673 }
1674 Expr(ref _binding_0, ) => {
1675 _visitor.visit_expr(&* _binding_0);
1676 }
1677 Semi(ref _binding_0, ref _binding_1, ) => {
1678 _visitor.visit_expr(&* _binding_0);
1679 // Skipped field * _binding_1;
1680 }
1681 Mac(ref _binding_0, ) => {
1682 // Skipped field * _binding_0;
1683 }
1684 }
1685}
1686
1687pub fn walk_trait_bound_modifier<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TraitBoundModifier) {
1688 use ::TraitBoundModifier::*;
1689 match *_i {
1690 None => { }
1691 Maybe(ref _binding_0, ) => {
1692 // Skipped field * _binding_0;
1693 }
1694 }
1695}
1696# [ cfg ( feature = "full" ) ]
1697pub fn walk_trait_item<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TraitItem) {
1698 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
1699 _visitor.visit_trait_item_kind(&_i . node);
1700}
1701# [ cfg ( feature = "full" ) ]
1702pub fn walk_trait_item_const<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TraitItemConst) {
1703 // Skipped field _i . const_token;
1704 // Skipped field _i . ident;
1705 // Skipped field _i . colon_token;
1706 _visitor.visit_ty(&_i . ty);
1707 // Skipped field _i . default;
1708 // Skipped field _i . semi_token;
1709}
1710# [ cfg ( feature = "full" ) ]
1711pub fn walk_trait_item_kind<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TraitItemKind) {
1712 use ::TraitItemKind::*;
1713 match *_i {
1714 Const(ref _binding_0, ) => {
1715 _visitor.visit_trait_item_const(&* _binding_0);
1716 }
1717 Method(ref _binding_0, ) => {
1718 _visitor.visit_trait_item_method(&* _binding_0);
1719 }
1720 Type(ref _binding_0, ) => {
1721 _visitor.visit_trait_item_type(&* _binding_0);
1722 }
1723 Macro(ref _binding_0, ) => {
1724 _visitor.visit_mac(&* _binding_0);
1725 }
1726 }
1727}
1728# [ cfg ( feature = "full" ) ]
1729pub fn walk_trait_item_method<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TraitItemMethod) {
1730 _visitor.visit_method_sig(&_i . sig);
1731 // Skipped field _i . default;
1732 // Skipped field _i . semi_token;
1733}
1734# [ cfg ( feature = "full" ) ]
1735pub fn walk_trait_item_type<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TraitItemType) {
1736 // Skipped field _i . type_token;
1737 // Skipped field _i . ident;
1738 // Skipped field _i . colon_token;
1739 for el in (_i . bounds).iter() { let it = el.item(); _visitor.visit_ty_param_bound(&it) };
1740 // Skipped field _i . default;
1741 // Skipped field _i . semi_token;
1742}
1743
1744pub fn walk_ty<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Ty) {
1745 use ::Ty::*;
1746 match *_i {
1747 Slice(ref _binding_0, ) => {
1748 _visitor.visit_ty_slice(&* _binding_0);
1749 }
1750 Array(ref _binding_0, ) => {
1751 _visitor.visit_ty_array(&* _binding_0);
1752 }
1753 Ptr(ref _binding_0, ) => {
1754 _visitor.visit_ty_ptr(&* _binding_0);
1755 }
1756 Rptr(ref _binding_0, ) => {
1757 _visitor.visit_ty_rptr(&* _binding_0);
1758 }
1759 BareFn(ref _binding_0, ) => {
1760 _visitor.visit_ty_bare_fn(&* _binding_0);
1761 }
1762 Never(ref _binding_0, ) => {
1763 _visitor.visit_ty_never(&* _binding_0);
1764 }
1765 Tup(ref _binding_0, ) => {
1766 _visitor.visit_ty_tup(&* _binding_0);
1767 }
1768 Path(ref _binding_0, ) => {
1769 _visitor.visit_ty_path(&* _binding_0);
1770 }
1771 TraitObject(ref _binding_0, ) => {
1772 _visitor.visit_ty_trait_object(&* _binding_0);
1773 }
1774 ImplTrait(ref _binding_0, ) => {
1775 _visitor.visit_ty_impl_trait(&* _binding_0);
1776 }
1777 Paren(ref _binding_0, ) => {
1778 _visitor.visit_ty_paren(&* _binding_0);
1779 }
1780 Group(ref _binding_0, ) => {
1781 _visitor.visit_ty_group(&* _binding_0);
1782 }
1783 Infer(ref _binding_0, ) => {
1784 _visitor.visit_ty_infer(&* _binding_0);
1785 }
1786 Mac(ref _binding_0, ) => {
1787 _visitor.visit_mac(&* _binding_0);
1788 }
1789 }
1790}
1791
1792pub fn walk_ty_array<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TyArray) {
1793 // Skipped field _i . bracket_token;
1794 _visitor.visit_ty(&_i . ty);
1795 // Skipped field _i . semi_token;
1796 _visitor.visit_expr(&_i . amt);
1797}
1798
1799pub fn walk_ty_bare_fn<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TyBareFn) {
1800 _visitor.visit_bare_fn_ty(&_i . ty);
1801}
1802
1803pub fn walk_ty_group<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TyGroup) {
1804 // Skipped field _i . group_token;
1805 _visitor.visit_ty(&_i . ty);
1806}
1807
1808pub fn walk_ty_impl_trait<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TyImplTrait) {
1809 // Skipped field _i . impl_token;
1810 for el in (_i . bounds).iter() { let it = el.item(); _visitor.visit_ty_param_bound(&it) };
1811}
1812
1813pub fn walk_ty_infer<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TyInfer) {
1814 // Skipped field _i . underscore_token;
1815}
1816
1817pub fn walk_ty_never<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TyNever) {
1818 // Skipped field _i . bang_token;
1819}
1820
1821pub fn walk_ty_param<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TyParam) {
1822 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
1823 // Skipped field _i . ident;
1824 // Skipped field _i . colon_token;
1825 for el in (_i . bounds).iter() { let it = el.item(); _visitor.visit_ty_param_bound(&it) };
1826 // Skipped field _i . eq_token;
1827 // Skipped field _i . default;
1828}
1829
1830pub fn walk_ty_param_bound<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TyParamBound) {
1831 use ::TyParamBound::*;
1832 match *_i {
1833 Trait(ref _binding_0, ref _binding_1, ) => {
1834 _visitor.visit_poly_trait_ref(&* _binding_0);
1835 _visitor.visit_trait_bound_modifier(&* _binding_1);
1836 }
1837 Region(ref _binding_0, ) => {
1838 // Skipped field * _binding_0;
1839 }
1840 }
1841}
1842
1843pub fn walk_ty_paren<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TyParen) {
1844 // Skipped field _i . paren_token;
1845 _visitor.visit_ty(&_i . ty);
1846}
1847
1848pub fn walk_ty_path<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TyPath) {
1849 // Skipped field _i . qself;
1850 _visitor.visit_path(&_i . path);
1851}
1852
1853pub fn walk_ty_ptr<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TyPtr) {
1854 // Skipped field _i . star_token;
1855 // Skipped field _i . const_token;
1856 _visitor.visit_mut_ty(&_i . ty);
1857}
1858
1859pub fn walk_ty_rptr<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TyRptr) {
1860 // Skipped field _i . and_token;
1861 // Skipped field _i . lifetime;
1862 _visitor.visit_mut_ty(&_i . ty);
1863}
1864
1865pub fn walk_ty_slice<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TySlice) {
1866 _visitor.visit_ty(&_i . ty);
1867 // Skipped field _i . bracket_token;
1868}
1869
1870pub fn walk_ty_trait_object<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TyTraitObject) {
1871 for el in (_i . bounds).iter() { let it = el.item(); _visitor.visit_ty_param_bound(&it) };
1872}
1873
1874pub fn walk_ty_tup<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TyTup) {
1875 // Skipped field _i . paren_token;
1876 for el in (_i . tys).iter() { let it = el.item(); _visitor.visit_ty(&it) };
1877 // Skipped field _i . lone_comma;
1878}
1879
1880pub fn walk_type_binding<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TypeBinding) {
1881 // Skipped field _i . ident;
1882 // Skipped field _i . eq_token;
1883 _visitor.visit_ty(&_i . ty);
1884}
1885
1886pub fn walk_un_op<V: Visitor + ?Sized>(_visitor: &mut V, _i: &UnOp) {
1887 use ::UnOp::*;
1888 match *_i {
1889 Deref(ref _binding_0, ) => {
1890 // Skipped field * _binding_0;
1891 }
1892 Not(ref _binding_0, ) => {
1893 // Skipped field * _binding_0;
1894 }
1895 Neg(ref _binding_0, ) => {
1896 // Skipped field * _binding_0;
1897 }
1898 }
1899}
1900
1901pub fn walk_unsafety<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Unsafety) {
1902 use ::Unsafety::*;
1903 match *_i {
1904 Unsafe(ref _binding_0, ) => {
1905 // Skipped field * _binding_0;
1906 }
1907 Normal => { }
1908 }
1909}
1910
1911pub fn walk_variant<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Variant) {
1912 // Skipped field _i . ident;
1913 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
1914 _visitor.visit_variant_data(&_i . data);
1915 // Skipped field _i . discriminant;
1916 // Skipped field _i . eq_token;
1917}
1918
1919pub fn walk_variant_data<V: Visitor + ?Sized>(_visitor: &mut V, _i: &VariantData) {
1920 use ::VariantData::*;
1921 match *_i {
1922 Struct(ref _binding_0, ref _binding_1, ) => {
1923 for el in (* _binding_0).iter() { let it = el.item(); _visitor.visit_field(&it) };
1924 // Skipped field * _binding_1;
1925 }
1926 Tuple(ref _binding_0, ref _binding_1, ) => {
1927 for el in (* _binding_0).iter() { let it = el.item(); _visitor.visit_field(&it) };
1928 // Skipped field * _binding_1;
1929 }
1930 Unit => { }
1931 }
1932}
1933# [ cfg ( feature = "full" ) ]
1934pub fn walk_view_path<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ViewPath) {
1935 use ::ViewPath::*;
1936 match *_i {
1937 Simple(ref _binding_0, ) => {
1938 _visitor.visit_path_simple(&* _binding_0);
1939 }
1940 Glob(ref _binding_0, ) => {
1941 _visitor.visit_path_glob(&* _binding_0);
1942 }
1943 List(ref _binding_0, ) => {
1944 _visitor.visit_path_list(&* _binding_0);
1945 }
1946 }
1947}
1948
1949pub fn walk_vis_crate<V: Visitor + ?Sized>(_visitor: &mut V, _i: &VisCrate) {
1950 // Skipped field _i . pub_token;
1951 // Skipped field _i . paren_token;
1952 // Skipped field _i . crate_token;
1953}
1954
1955pub fn walk_vis_inherited<V: Visitor + ?Sized>(_visitor: &mut V, _i: &VisInherited) {
1956}
1957
1958pub fn walk_vis_public<V: Visitor + ?Sized>(_visitor: &mut V, _i: &VisPublic) {
1959 // Skipped field _i . pub_token;
1960}
1961
1962pub fn walk_vis_restricted<V: Visitor + ?Sized>(_visitor: &mut V, _i: &VisRestricted) {
1963 // Skipped field _i . pub_token;
1964 // Skipped field _i . paren_token;
1965 // Skipped field _i . in_token;
1966 _visitor.visit_path(&_i . path);
1967}
1968
1969pub fn walk_visibility<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Visibility) {
1970 use ::Visibility::*;
1971 match *_i {
1972 Public(ref _binding_0, ) => {
1973 _visitor.visit_vis_public(&* _binding_0);
1974 }
1975 Crate(ref _binding_0, ) => {
1976 _visitor.visit_vis_crate(&* _binding_0);
1977 }
1978 Restricted(ref _binding_0, ) => {
1979 _visitor.visit_vis_restricted(&* _binding_0);
1980 }
1981 Inherited(ref _binding_0, ) => {
1982 _visitor.visit_vis_inherited(&* _binding_0);
1983 }
1984 }
1985}
1986
1987pub fn walk_where_bound_predicate<V: Visitor + ?Sized>(_visitor: &mut V, _i: &WhereBoundPredicate) {
1988 // Skipped field _i . bound_lifetimes;
1989 _visitor.visit_ty(&_i . bounded_ty);
1990 // Skipped field _i . colon_token;
1991 for el in (_i . bounds).iter() { let it = el.item(); _visitor.visit_ty_param_bound(&it) };
1992}
1993
1994pub fn walk_where_clause<V: Visitor + ?Sized>(_visitor: &mut V, _i: &WhereClause) {
1995 // Skipped field _i . where_token;
1996 for el in (_i . predicates).iter() { let it = el.item(); _visitor.visit_where_predicate(&it) };
1997}
1998
1999pub fn walk_where_eq_predicate<V: Visitor + ?Sized>(_visitor: &mut V, _i: &WhereEqPredicate) {
2000 _visitor.visit_ty(&_i . lhs_ty);
2001 // Skipped field _i . eq_token;
2002 _visitor.visit_ty(&_i . rhs_ty);
2003}
2004
2005pub fn walk_where_predicate<V: Visitor + ?Sized>(_visitor: &mut V, _i: &WherePredicate) {
2006 use ::WherePredicate::*;
2007 match *_i {
2008 BoundPredicate(ref _binding_0, ) => {
2009 _visitor.visit_where_bound_predicate(&* _binding_0);
2010 }
2011 RegionPredicate(ref _binding_0, ) => {
2012 _visitor.visit_where_region_predicate(&* _binding_0);
2013 }
2014 EqPredicate(ref _binding_0, ) => {
2015 _visitor.visit_where_eq_predicate(&* _binding_0);
2016 }
2017 }
2018}
2019
2020pub fn walk_where_region_predicate<V: Visitor + ?Sized>(_visitor: &mut V, _i: &WhereRegionPredicate) {
2021 // Skipped field _i . lifetime;
2022 // Skipped field _i . colon_token;
2023 // Skipped field _i . bounds;
2024}
2025