blob: b311a893ebabb96f05f8d85e842a9068fe29c80f [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
Nika Layzella6f46c42017-10-26 15:26:16 -04009use *;
Nika Layzell27726662017-10-24 23:16:35 -040010
Nika Layzell4ab8d6e2017-10-26 09:45:49 -040011
12#[cfg(feature = "full")]
13macro_rules! full {
14 ($e:expr) => { $e }
15}
16
17#[cfg(not(feature = "full"))]
18macro_rules! full {
19 ($e:expr) => { unreachable!() }
20}
21
22
Nika Layzell27726662017-10-24 23:16:35 -040023/// Each method of the Visitor trait is a hook to be potentially
24/// overridden. Each method's default implementation recursively visits
25/// the substructure of the input via the corresponding `walk` method;
26/// e.g. the `visit_mod` method by default calls `visit::walk_mod`.
27///
28/// If you want to ensure that your code handles every variant
29/// explicitly, you need to override each method. (And you also need
30/// to monitor future changes to `Visitor` in case a new method with a
31/// new default implementation gets introduced.)
32pub trait Visitor {
33
Nika Layzella6f46c42017-10-26 15:26:16 -040034fn visit_abi(&mut self, i: &Abi) { visit_abi(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -040035
Nika Layzella6f46c42017-10-26 15:26:16 -040036fn visit_abi_kind(&mut self, i: &AbiKind) { visit_abi_kind(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -040037
Nika Layzella6f46c42017-10-26 15:26:16 -040038fn visit_angle_bracketed_parameter_data(&mut self, i: &AngleBracketedParameterData) { visit_angle_bracketed_parameter_data(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -040039# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -040040fn visit_arg_captured(&mut self, i: &ArgCaptured) { visit_arg_captured(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -040041# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -040042fn visit_arg_self(&mut self, i: &ArgSelf) { visit_arg_self(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -040043# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -040044fn visit_arg_self_ref(&mut self, i: &ArgSelfRef) { visit_arg_self_ref(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -040045# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -040046fn visit_arm(&mut self, i: &Arm) { visit_arm(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -040047
Nika Layzella6f46c42017-10-26 15:26:16 -040048fn visit_attr_style(&mut self, i: &AttrStyle) { visit_attr_style(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -040049
Nika Layzella6f46c42017-10-26 15:26:16 -040050fn visit_attribute(&mut self, i: &Attribute) { visit_attribute(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -040051
Nika Layzella6f46c42017-10-26 15:26:16 -040052fn visit_bare_fn_arg(&mut self, i: &BareFnArg) { visit_bare_fn_arg(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -040053
Nika Layzella6f46c42017-10-26 15:26:16 -040054fn visit_bare_fn_arg_name(&mut self, i: &BareFnArgName) { visit_bare_fn_arg_name(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -040055
David Tolnayfd6bf5c2017-11-12 09:41:14 -080056fn visit_bare_fn_type(&mut self, i: &BareFnType) { visit_bare_fn_type(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -040057
Nika Layzella6f46c42017-10-26 15:26:16 -040058fn visit_bin_op(&mut self, i: &BinOp) { visit_bin_op(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -040059# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -040060fn visit_binding_mode(&mut self, i: &BindingMode) { visit_binding_mode(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -040061# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -040062fn visit_block(&mut self, i: &Block) { visit_block(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -040063
Nika Layzella6f46c42017-10-26 15:26:16 -040064fn visit_body(&mut self, i: &Body) { visit_body(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -040065
Nika Layzella6f46c42017-10-26 15:26:16 -040066fn visit_body_enum(&mut self, i: &BodyEnum) { visit_body_enum(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -040067
Nika Layzella6f46c42017-10-26 15:26:16 -040068fn visit_body_struct(&mut self, i: &BodyStruct) { visit_body_struct(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -040069
Nika Layzella6f46c42017-10-26 15:26:16 -040070fn visit_bound_lifetimes(&mut self, i: &BoundLifetimes) { visit_bound_lifetimes(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -040071# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -040072fn visit_capture_by(&mut self, i: &CaptureBy) { visit_capture_by(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -040073# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -040074fn visit_constness(&mut self, i: &Constness) { visit_constness(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -040075# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -040076fn visit_defaultness(&mut self, i: &Defaultness) { visit_defaultness(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -040077
Nika Layzella6f46c42017-10-26 15:26:16 -040078fn visit_derive_input(&mut self, i: &DeriveInput) { visit_derive_input(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -040079
Nika Layzella6f46c42017-10-26 15:26:16 -040080fn visit_expr(&mut self, i: &Expr) { visit_expr(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -040081# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -040082fn visit_expr_addr_of(&mut self, i: &ExprAddrOf) { visit_expr_addr_of(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -040083# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -040084fn visit_expr_array(&mut self, i: &ExprArray) { visit_expr_array(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -040085# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -040086fn visit_expr_assign(&mut self, i: &ExprAssign) { visit_expr_assign(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -040087# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -040088fn visit_expr_assign_op(&mut self, i: &ExprAssignOp) { visit_expr_assign_op(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -040089
Nika Layzella6f46c42017-10-26 15:26:16 -040090fn visit_expr_binary(&mut self, i: &ExprBinary) { visit_expr_binary(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -040091# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -040092fn visit_expr_block(&mut self, i: &ExprBlock) { visit_expr_block(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -040093# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -040094fn visit_expr_box(&mut self, i: &ExprBox) { visit_expr_box(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -040095# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -040096fn visit_expr_break(&mut self, i: &ExprBreak) { visit_expr_break(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -040097
Nika Layzella6f46c42017-10-26 15:26:16 -040098fn visit_expr_call(&mut self, i: &ExprCall) { visit_expr_call(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -040099
Nika Layzella6f46c42017-10-26 15:26:16 -0400100fn visit_expr_cast(&mut self, i: &ExprCast) { visit_expr_cast(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400101# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400102fn visit_expr_catch(&mut self, i: &ExprCatch) { visit_expr_catch(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400103# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400104fn visit_expr_closure(&mut self, i: &ExprClosure) { visit_expr_closure(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400105# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400106fn visit_expr_continue(&mut self, i: &ExprContinue) { visit_expr_continue(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400107# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400108fn visit_expr_field(&mut self, i: &ExprField) { visit_expr_field(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400109# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400110fn visit_expr_for_loop(&mut self, i: &ExprForLoop) { visit_expr_for_loop(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400111
Nika Layzella6f46c42017-10-26 15:26:16 -0400112fn visit_expr_group(&mut self, i: &ExprGroup) { visit_expr_group(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400113# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400114fn visit_expr_if(&mut self, i: &ExprIf) { visit_expr_if(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400115# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400116fn visit_expr_if_let(&mut self, i: &ExprIfLet) { visit_expr_if_let(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400117# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400118fn visit_expr_in_place(&mut self, i: &ExprInPlace) { visit_expr_in_place(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400119
Nika Layzella6f46c42017-10-26 15:26:16 -0400120fn visit_expr_index(&mut self, i: &ExprIndex) { visit_expr_index(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400121
Nika Layzella6f46c42017-10-26 15:26:16 -0400122fn visit_expr_kind(&mut self, i: &ExprKind) { visit_expr_kind(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400123# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400124fn visit_expr_loop(&mut self, i: &ExprLoop) { visit_expr_loop(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400125# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400126fn visit_expr_match(&mut self, i: &ExprMatch) { visit_expr_match(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400127# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400128fn visit_expr_method_call(&mut self, i: &ExprMethodCall) { visit_expr_method_call(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400129
Nika Layzella6f46c42017-10-26 15:26:16 -0400130fn visit_expr_paren(&mut self, i: &ExprParen) { visit_expr_paren(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400131
Nika Layzella6f46c42017-10-26 15:26:16 -0400132fn visit_expr_path(&mut self, i: &ExprPath) { visit_expr_path(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400133# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400134fn visit_expr_range(&mut self, i: &ExprRange) { visit_expr_range(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400135# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400136fn visit_expr_repeat(&mut self, i: &ExprRepeat) { visit_expr_repeat(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400137# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400138fn visit_expr_ret(&mut self, i: &ExprRet) { visit_expr_ret(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400139# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400140fn visit_expr_struct(&mut self, i: &ExprStruct) { visit_expr_struct(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400141# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400142fn visit_expr_try(&mut self, i: &ExprTry) { visit_expr_try(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400143# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400144fn visit_expr_tup(&mut self, i: &ExprTup) { visit_expr_tup(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400145# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400146fn visit_expr_tup_field(&mut self, i: &ExprTupField) { visit_expr_tup_field(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400147
Nika Layzella6f46c42017-10-26 15:26:16 -0400148fn visit_expr_type(&mut self, i: &ExprType) { visit_expr_type(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400149
Nika Layzella6f46c42017-10-26 15:26:16 -0400150fn visit_expr_unary(&mut self, i: &ExprUnary) { visit_expr_unary(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400151# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400152fn visit_expr_while(&mut self, i: &ExprWhile) { visit_expr_while(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400153# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400154fn visit_expr_while_let(&mut self, i: &ExprWhileLet) { visit_expr_while_let(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400155# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400156fn visit_expr_yield(&mut self, i: &ExprYield) { visit_expr_yield(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400157
Nika Layzella6f46c42017-10-26 15:26:16 -0400158fn visit_field(&mut self, i: &Field) { visit_field(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400159# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400160fn visit_field_pat(&mut self, i: &FieldPat) { visit_field_pat(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400161# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400162fn visit_field_value(&mut self, i: &FieldValue) { visit_field_value(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400163# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400164fn visit_file(&mut self, i: &File) { visit_file(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400165# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400166fn visit_fn_arg(&mut self, i: &FnArg) { visit_fn_arg(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400167# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400168fn visit_fn_decl(&mut self, i: &FnDecl) { visit_fn_decl(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400169# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400170fn visit_foreign_item(&mut self, i: &ForeignItem) { visit_foreign_item(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400171# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400172fn visit_foreign_item_fn(&mut self, i: &ForeignItemFn) { visit_foreign_item_fn(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400173# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400174fn visit_foreign_item_static(&mut self, i: &ForeignItemStatic) { visit_foreign_item_static(self, i) }
David Tolnay199bcbb2017-11-12 10:33:52 -0800175# [ cfg ( feature = "full" ) ]
176fn visit_foreign_item_type(&mut self, i: &ForeignItemType) { visit_foreign_item_type(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400177
Nika Layzella6f46c42017-10-26 15:26:16 -0400178fn visit_generics(&mut self, i: &Generics) { visit_generics(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400179# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400180fn visit_impl_item(&mut self, i: &ImplItem) { visit_impl_item(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400181# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400182fn visit_impl_item_const(&mut self, i: &ImplItemConst) { visit_impl_item_const(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400183# [ cfg ( feature = "full" ) ]
David Tolnay857628c2017-11-11 12:25:31 -0800184fn visit_impl_item_macro(&mut self, i: &ImplItemMacro) { visit_impl_item_macro(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400185# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400186fn visit_impl_item_method(&mut self, i: &ImplItemMethod) { visit_impl_item_method(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400187# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400188fn visit_impl_item_type(&mut self, i: &ImplItemType) { visit_impl_item_type(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400189# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400190fn visit_impl_polarity(&mut self, i: &ImplPolarity) { visit_impl_polarity(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400191# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400192fn visit_in_place_kind(&mut self, i: &InPlaceKind) { visit_in_place_kind(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400193# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400194fn visit_item(&mut self, i: &Item) { visit_item(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400195# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400196fn visit_item_const(&mut self, i: &ItemConst) { visit_item_const(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400197# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400198fn visit_item_default_impl(&mut self, i: &ItemDefaultImpl) { visit_item_default_impl(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400199# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400200fn visit_item_enum(&mut self, i: &ItemEnum) { visit_item_enum(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400201# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400202fn visit_item_extern_crate(&mut self, i: &ItemExternCrate) { visit_item_extern_crate(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400203# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400204fn visit_item_fn(&mut self, i: &ItemFn) { visit_item_fn(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400205# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400206fn visit_item_foreign_mod(&mut self, i: &ItemForeignMod) { visit_item_foreign_mod(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400207# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400208fn visit_item_impl(&mut self, i: &ItemImpl) { visit_item_impl(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400209# [ cfg ( feature = "full" ) ]
David Tolnaydecf28d2017-11-11 11:56:45 -0800210fn visit_item_macro(&mut self, i: &ItemMacro) { visit_item_macro(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400211# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400212fn visit_item_mod(&mut self, i: &ItemMod) { visit_item_mod(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400213# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400214fn visit_item_static(&mut self, i: &ItemStatic) { visit_item_static(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400215# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400216fn visit_item_struct(&mut self, i: &ItemStruct) { visit_item_struct(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400217# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400218fn visit_item_trait(&mut self, i: &ItemTrait) { visit_item_trait(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400219# [ cfg ( feature = "full" ) ]
David Tolnayfd6bf5c2017-11-12 09:41:14 -0800220fn visit_item_type(&mut self, i: &ItemType) { visit_item_type(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400221# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400222fn visit_item_union(&mut self, i: &ItemUnion) { visit_item_union(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400223# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400224fn visit_item_use(&mut self, i: &ItemUse) { visit_item_use(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400225
Nika Layzella6f46c42017-10-26 15:26:16 -0400226fn visit_lifetime_def(&mut self, i: &LifetimeDef) { visit_lifetime_def(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400227# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400228fn visit_local(&mut self, i: &Local) { visit_local(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400229# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400230fn visit_mac_stmt_style(&mut self, i: &MacStmtStyle) { visit_mac_stmt_style(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400231
David Tolnaydecf28d2017-11-11 11:56:45 -0800232fn visit_macro(&mut self, i: &Macro) { visit_macro(self, i) }
233
Nika Layzella6f46c42017-10-26 15:26:16 -0400234fn visit_meta_item(&mut self, i: &MetaItem) { visit_meta_item(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400235
Nika Layzella6f46c42017-10-26 15:26:16 -0400236fn visit_meta_item_list(&mut self, i: &MetaItemList) { visit_meta_item_list(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400237
Nika Layzella6f46c42017-10-26 15:26:16 -0400238fn visit_meta_name_value(&mut self, i: &MetaNameValue) { visit_meta_name_value(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400239# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400240fn visit_method_sig(&mut self, i: &MethodSig) { visit_method_sig(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400241
David Tolnayfd6bf5c2017-11-12 09:41:14 -0800242fn visit_mut_type(&mut self, i: &MutType) { visit_mut_type(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400243
Nika Layzella6f46c42017-10-26 15:26:16 -0400244fn visit_mutability(&mut self, i: &Mutability) { visit_mutability(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400245
Nika Layzella6f46c42017-10-26 15:26:16 -0400246fn visit_nested_meta_item(&mut self, i: &NestedMetaItem) { visit_nested_meta_item(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400247
Nika Layzella6f46c42017-10-26 15:26:16 -0400248fn visit_parenthesized_parameter_data(&mut self, i: &ParenthesizedParameterData) { visit_parenthesized_parameter_data(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400249# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400250fn visit_pat(&mut self, i: &Pat) { visit_pat(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400251# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400252fn visit_pat_box(&mut self, i: &PatBox) { visit_pat_box(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400253# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400254fn visit_pat_ident(&mut self, i: &PatIdent) { visit_pat_ident(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400255# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400256fn visit_pat_lit(&mut self, i: &PatLit) { visit_pat_lit(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400257# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400258fn visit_pat_path(&mut self, i: &PatPath) { visit_pat_path(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400259# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400260fn visit_pat_range(&mut self, i: &PatRange) { visit_pat_range(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400261# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400262fn visit_pat_ref(&mut self, i: &PatRef) { visit_pat_ref(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400263# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400264fn visit_pat_slice(&mut self, i: &PatSlice) { visit_pat_slice(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400265# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400266fn visit_pat_struct(&mut self, i: &PatStruct) { visit_pat_struct(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400267# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400268fn visit_pat_tuple(&mut self, i: &PatTuple) { visit_pat_tuple(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400269# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400270fn visit_pat_tuple_struct(&mut self, i: &PatTupleStruct) { visit_pat_tuple_struct(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400271# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400272fn visit_pat_wild(&mut self, i: &PatWild) { visit_pat_wild(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400273
Nika Layzella6f46c42017-10-26 15:26:16 -0400274fn visit_path(&mut self, i: &Path) { visit_path(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400275# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400276fn visit_path_glob(&mut self, i: &PathGlob) { visit_path_glob(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400277# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400278fn visit_path_list(&mut self, i: &PathList) { visit_path_list(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400279# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400280fn visit_path_list_item(&mut self, i: &PathListItem) { visit_path_list_item(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400281
Nika Layzella6f46c42017-10-26 15:26:16 -0400282fn visit_path_parameters(&mut self, i: &PathParameters) { visit_path_parameters(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400283
Nika Layzella6f46c42017-10-26 15:26:16 -0400284fn visit_path_segment(&mut self, i: &PathSegment) { visit_path_segment(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400285# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400286fn visit_path_simple(&mut self, i: &PathSimple) { visit_path_simple(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400287
Nika Layzella6f46c42017-10-26 15:26:16 -0400288fn visit_poly_trait_ref(&mut self, i: &PolyTraitRef) { visit_poly_trait_ref(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400289
Nika Layzella6f46c42017-10-26 15:26:16 -0400290fn visit_qself(&mut self, i: &QSelf) { visit_qself(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400291# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400292fn visit_range_limits(&mut self, i: &RangeLimits) { visit_range_limits(self, i) }
David Tolnayf93b90d2017-11-11 19:21:26 -0800293
294fn visit_return_type(&mut self, i: &ReturnType) { visit_return_type(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400295# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400296fn visit_stmt(&mut self, i: &Stmt) { visit_stmt(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400297
Nika Layzella6f46c42017-10-26 15:26:16 -0400298fn visit_trait_bound_modifier(&mut self, i: &TraitBoundModifier) { visit_trait_bound_modifier(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400299# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400300fn visit_trait_item(&mut self, i: &TraitItem) { visit_trait_item(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400301# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400302fn visit_trait_item_const(&mut self, i: &TraitItemConst) { visit_trait_item_const(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400303# [ cfg ( feature = "full" ) ]
David Tolnaydecf28d2017-11-11 11:56:45 -0800304fn visit_trait_item_macro(&mut self, i: &TraitItemMacro) { visit_trait_item_macro(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400305# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400306fn visit_trait_item_method(&mut self, i: &TraitItemMethod) { visit_trait_item_method(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400307# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400308fn visit_trait_item_type(&mut self, i: &TraitItemType) { visit_trait_item_type(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400309
David Tolnayfd6bf5c2017-11-12 09:41:14 -0800310fn visit_type(&mut self, i: &Type) { visit_type(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400311
David Tolnayfd6bf5c2017-11-12 09:41:14 -0800312fn visit_type_array(&mut self, i: &TypeArray) { visit_type_array(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400313
David Tolnayfd6bf5c2017-11-12 09:41:14 -0800314fn visit_type_bare_fn(&mut self, i: &TypeBareFn) { visit_type_bare_fn(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400315
Nika Layzella6f46c42017-10-26 15:26:16 -0400316fn visit_type_binding(&mut self, i: &TypeBinding) { visit_type_binding(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400317
David Tolnayfd6bf5c2017-11-12 09:41:14 -0800318fn visit_type_group(&mut self, i: &TypeGroup) { visit_type_group(self, i) }
319
320fn visit_type_impl_trait(&mut self, i: &TypeImplTrait) { visit_type_impl_trait(self, i) }
321
322fn visit_type_infer(&mut self, i: &TypeInfer) { visit_type_infer(self, i) }
323
324fn visit_type_never(&mut self, i: &TypeNever) { visit_type_never(self, i) }
325
326fn visit_type_param(&mut self, i: &TypeParam) { visit_type_param(self, i) }
327
328fn visit_type_param_bound(&mut self, i: &TypeParamBound) { visit_type_param_bound(self, i) }
329
330fn visit_type_paren(&mut self, i: &TypeParen) { visit_type_paren(self, i) }
331
332fn visit_type_path(&mut self, i: &TypePath) { visit_type_path(self, i) }
333
334fn visit_type_ptr(&mut self, i: &TypePtr) { visit_type_ptr(self, i) }
335
David Tolnay0a89b4d2017-11-13 00:55:45 -0800336fn visit_type_reference(&mut self, i: &TypeReference) { visit_type_reference(self, i) }
David Tolnayfd6bf5c2017-11-12 09:41:14 -0800337
338fn visit_type_slice(&mut self, i: &TypeSlice) { visit_type_slice(self, i) }
339
340fn visit_type_trait_object(&mut self, i: &TypeTraitObject) { visit_type_trait_object(self, i) }
341
342fn visit_type_tup(&mut self, i: &TypeTup) { visit_type_tup(self, i) }
343
Nika Layzella6f46c42017-10-26 15:26:16 -0400344fn visit_un_op(&mut self, i: &UnOp) { visit_un_op(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400345
Nika Layzella6f46c42017-10-26 15:26:16 -0400346fn visit_unsafety(&mut self, i: &Unsafety) { visit_unsafety(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400347
Nika Layzella6f46c42017-10-26 15:26:16 -0400348fn visit_variant(&mut self, i: &Variant) { visit_variant(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400349
Nika Layzella6f46c42017-10-26 15:26:16 -0400350fn visit_variant_data(&mut self, i: &VariantData) { visit_variant_data(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400351# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400352fn visit_view_path(&mut self, i: &ViewPath) { visit_view_path(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400353
Nika Layzella6f46c42017-10-26 15:26:16 -0400354fn visit_vis_crate(&mut self, i: &VisCrate) { visit_vis_crate(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400355
Nika Layzella6f46c42017-10-26 15:26:16 -0400356fn visit_vis_inherited(&mut self, i: &VisInherited) { visit_vis_inherited(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400357
Nika Layzella6f46c42017-10-26 15:26:16 -0400358fn visit_vis_public(&mut self, i: &VisPublic) { visit_vis_public(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400359
Nika Layzella6f46c42017-10-26 15:26:16 -0400360fn visit_vis_restricted(&mut self, i: &VisRestricted) { visit_vis_restricted(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400361
Nika Layzella6f46c42017-10-26 15:26:16 -0400362fn visit_visibility(&mut self, i: &Visibility) { visit_visibility(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400363
Nika Layzella6f46c42017-10-26 15:26:16 -0400364fn visit_where_bound_predicate(&mut self, i: &WhereBoundPredicate) { visit_where_bound_predicate(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400365
Nika Layzella6f46c42017-10-26 15:26:16 -0400366fn visit_where_clause(&mut self, i: &WhereClause) { visit_where_clause(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400367
Nika Layzella6f46c42017-10-26 15:26:16 -0400368fn visit_where_eq_predicate(&mut self, i: &WhereEqPredicate) { visit_where_eq_predicate(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400369
Nika Layzella6f46c42017-10-26 15:26:16 -0400370fn visit_where_predicate(&mut self, i: &WherePredicate) { visit_where_predicate(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400371
Nika Layzella6f46c42017-10-26 15:26:16 -0400372fn visit_where_region_predicate(&mut self, i: &WhereRegionPredicate) { visit_where_region_predicate(self, i) }
Nika Layzell27726662017-10-24 23:16:35 -0400373
374}
375
376
Nika Layzella6f46c42017-10-26 15:26:16 -0400377pub fn visit_abi<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Abi) {
Nika Layzell27726662017-10-24 23:16:35 -0400378 // Skipped field _i . extern_token;
379 _visitor.visit_abi_kind(&_i . kind);
380}
381
Nika Layzella6f46c42017-10-26 15:26:16 -0400382pub fn visit_abi_kind<V: Visitor + ?Sized>(_visitor: &mut V, _i: &AbiKind) {
Nika Layzell27726662017-10-24 23:16:35 -0400383 use ::AbiKind::*;
384 match *_i {
385 Named(ref _binding_0, ) => {
386 // Skipped field * _binding_0;
387 }
388 Default => { }
389 }
390}
391
Nika Layzella6f46c42017-10-26 15:26:16 -0400392pub fn visit_angle_bracketed_parameter_data<V: Visitor + ?Sized>(_visitor: &mut V, _i: &AngleBracketedParameterData) {
Nika Layzell27726662017-10-24 23:16:35 -0400393 // Skipped field _i . turbofish;
394 // Skipped field _i . lt_token;
395 // Skipped field _i . lifetimes;
David Tolnayfd6bf5c2017-11-12 09:41:14 -0800396 for el in (_i . types).iter() { let it = el.item(); _visitor.visit_type(&it) };
Nika Layzell27726662017-10-24 23:16:35 -0400397 for el in (_i . bindings).iter() { let it = el.item(); _visitor.visit_type_binding(&it) };
398 // Skipped field _i . gt_token;
399}
400# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400401pub fn visit_arg_captured<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ArgCaptured) {
Nika Layzell27726662017-10-24 23:16:35 -0400402 _visitor.visit_pat(&_i . pat);
403 // Skipped field _i . colon_token;
David Tolnayfd6bf5c2017-11-12 09:41:14 -0800404 _visitor.visit_type(&_i . ty);
Nika Layzell27726662017-10-24 23:16:35 -0400405}
406# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400407pub fn visit_arg_self<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ArgSelf) {
Nika Layzell27726662017-10-24 23:16:35 -0400408 _visitor.visit_mutability(&_i . mutbl);
409 // Skipped field _i . self_token;
410}
411# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400412pub fn visit_arg_self_ref<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ArgSelfRef) {
Nika Layzell27726662017-10-24 23:16:35 -0400413 // Skipped field _i . and_token;
414 // Skipped field _i . self_token;
415 // Skipped field _i . lifetime;
416 _visitor.visit_mutability(&_i . mutbl);
417}
418# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400419pub fn visit_arm<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Arm) {
Nika Layzell27726662017-10-24 23:16:35 -0400420 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
421 for el in (_i . pats).iter() { let it = el.item(); _visitor.visit_pat(&it) };
422 // Skipped field _i . if_token;
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400423 if let Some(ref it) = _i . guard { _visitor.visit_expr(&* it) };
Nika Layzell27726662017-10-24 23:16:35 -0400424 // Skipped field _i . rocket_token;
425 _visitor.visit_expr(&_i . body);
426 // Skipped field _i . comma;
427}
428
Nika Layzella6f46c42017-10-26 15:26:16 -0400429pub fn visit_attr_style<V: Visitor + ?Sized>(_visitor: &mut V, _i: &AttrStyle) {
Nika Layzell27726662017-10-24 23:16:35 -0400430 use ::AttrStyle::*;
431 match *_i {
432 Outer => { }
433 Inner(ref _binding_0, ) => {
434 // Skipped field * _binding_0;
435 }
436 }
437}
438
Nika Layzella6f46c42017-10-26 15:26:16 -0400439pub fn visit_attribute<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Attribute) {
Nika Layzell27726662017-10-24 23:16:35 -0400440 _visitor.visit_attr_style(&_i . style);
441 // Skipped field _i . pound_token;
442 // Skipped field _i . bracket_token;
443 _visitor.visit_path(&_i . path);
444 // Skipped field _i . tts;
445 // Skipped field _i . is_sugared_doc;
446}
447
Nika Layzella6f46c42017-10-26 15:26:16 -0400448pub fn visit_bare_fn_arg<V: Visitor + ?Sized>(_visitor: &mut V, _i: &BareFnArg) {
Nika Layzell27726662017-10-24 23:16:35 -0400449 // Skipped field _i . name;
David Tolnayfd6bf5c2017-11-12 09:41:14 -0800450 _visitor.visit_type(&_i . ty);
Nika Layzell27726662017-10-24 23:16:35 -0400451}
452
Nika Layzella6f46c42017-10-26 15:26:16 -0400453pub fn visit_bare_fn_arg_name<V: Visitor + ?Sized>(_visitor: &mut V, _i: &BareFnArgName) {
Nika Layzell27726662017-10-24 23:16:35 -0400454 use ::BareFnArgName::*;
455 match *_i {
456 Named(ref _binding_0, ) => {
457 // Skipped field * _binding_0;
458 }
459 Wild(ref _binding_0, ) => {
460 // Skipped field * _binding_0;
461 }
462 }
463}
464
David Tolnayfd6bf5c2017-11-12 09:41:14 -0800465pub fn visit_bare_fn_type<V: Visitor + ?Sized>(_visitor: &mut V, _i: &BareFnType) {
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400466 if let Some(ref it) = _i . lifetimes { _visitor.visit_bound_lifetimes(&* it) };
Nika Layzell27726662017-10-24 23:16:35 -0400467 _visitor.visit_unsafety(&_i . unsafety);
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400468 if let Some(ref it) = _i . abi { _visitor.visit_abi(&* it) };
Nika Layzell27726662017-10-24 23:16:35 -0400469 // Skipped field _i . fn_token;
470 // Skipped field _i . paren_token;
471 for el in (_i . inputs).iter() { let it = el.item(); _visitor.visit_bare_fn_arg(&it) };
472 // Skipped field _i . variadic;
David Tolnayf93b90d2017-11-11 19:21:26 -0800473 _visitor.visit_return_type(&_i . output);
Nika Layzell27726662017-10-24 23:16:35 -0400474}
475
Nika Layzella6f46c42017-10-26 15:26:16 -0400476pub fn visit_bin_op<V: Visitor + ?Sized>(_visitor: &mut V, _i: &BinOp) {
Nika Layzell27726662017-10-24 23:16:35 -0400477 use ::BinOp::*;
478 match *_i {
479 Add(ref _binding_0, ) => {
480 // Skipped field * _binding_0;
481 }
482 Sub(ref _binding_0, ) => {
483 // Skipped field * _binding_0;
484 }
485 Mul(ref _binding_0, ) => {
486 // Skipped field * _binding_0;
487 }
488 Div(ref _binding_0, ) => {
489 // Skipped field * _binding_0;
490 }
491 Rem(ref _binding_0, ) => {
492 // Skipped field * _binding_0;
493 }
494 And(ref _binding_0, ) => {
495 // Skipped field * _binding_0;
496 }
497 Or(ref _binding_0, ) => {
498 // Skipped field * _binding_0;
499 }
500 BitXor(ref _binding_0, ) => {
501 // Skipped field * _binding_0;
502 }
503 BitAnd(ref _binding_0, ) => {
504 // Skipped field * _binding_0;
505 }
506 BitOr(ref _binding_0, ) => {
507 // Skipped field * _binding_0;
508 }
509 Shl(ref _binding_0, ) => {
510 // Skipped field * _binding_0;
511 }
512 Shr(ref _binding_0, ) => {
513 // Skipped field * _binding_0;
514 }
515 Eq(ref _binding_0, ) => {
516 // Skipped field * _binding_0;
517 }
518 Lt(ref _binding_0, ) => {
519 // Skipped field * _binding_0;
520 }
521 Le(ref _binding_0, ) => {
522 // Skipped field * _binding_0;
523 }
524 Ne(ref _binding_0, ) => {
525 // Skipped field * _binding_0;
526 }
527 Ge(ref _binding_0, ) => {
528 // Skipped field * _binding_0;
529 }
530 Gt(ref _binding_0, ) => {
531 // Skipped field * _binding_0;
532 }
533 AddEq(ref _binding_0, ) => {
534 // Skipped field * _binding_0;
535 }
536 SubEq(ref _binding_0, ) => {
537 // Skipped field * _binding_0;
538 }
539 MulEq(ref _binding_0, ) => {
540 // Skipped field * _binding_0;
541 }
542 DivEq(ref _binding_0, ) => {
543 // Skipped field * _binding_0;
544 }
545 RemEq(ref _binding_0, ) => {
546 // Skipped field * _binding_0;
547 }
548 BitXorEq(ref _binding_0, ) => {
549 // Skipped field * _binding_0;
550 }
551 BitAndEq(ref _binding_0, ) => {
552 // Skipped field * _binding_0;
553 }
554 BitOrEq(ref _binding_0, ) => {
555 // Skipped field * _binding_0;
556 }
557 ShlEq(ref _binding_0, ) => {
558 // Skipped field * _binding_0;
559 }
560 ShrEq(ref _binding_0, ) => {
561 // Skipped field * _binding_0;
562 }
563 }
564}
565# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400566pub fn visit_binding_mode<V: Visitor + ?Sized>(_visitor: &mut V, _i: &BindingMode) {
Nika Layzell27726662017-10-24 23:16:35 -0400567 use ::BindingMode::*;
568 match *_i {
569 ByRef(ref _binding_0, ref _binding_1, ) => {
570 // Skipped field * _binding_0;
571 _visitor.visit_mutability(&* _binding_1);
572 }
573 ByValue(ref _binding_0, ) => {
574 _visitor.visit_mutability(&* _binding_0);
575 }
576 }
577}
578# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400579pub fn visit_block<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Block) {
Nika Layzell27726662017-10-24 23:16:35 -0400580 // Skipped field _i . brace_token;
581 for it in (_i . stmts).iter() { _visitor.visit_stmt(&it) };
582}
583
Nika Layzella6f46c42017-10-26 15:26:16 -0400584pub fn visit_body<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Body) {
Nika Layzell27726662017-10-24 23:16:35 -0400585 use ::Body::*;
586 match *_i {
587 Enum(ref _binding_0, ) => {
588 _visitor.visit_body_enum(&* _binding_0);
589 }
590 Struct(ref _binding_0, ) => {
591 _visitor.visit_body_struct(&* _binding_0);
592 }
593 }
594}
595
Nika Layzella6f46c42017-10-26 15:26:16 -0400596pub fn visit_body_enum<V: Visitor + ?Sized>(_visitor: &mut V, _i: &BodyEnum) {
Nika Layzell27726662017-10-24 23:16:35 -0400597 // Skipped field _i . enum_token;
598 // Skipped field _i . brace_token;
599 for el in (_i . variants).iter() { let it = el.item(); _visitor.visit_variant(&it) };
600}
601
Nika Layzella6f46c42017-10-26 15:26:16 -0400602pub fn visit_body_struct<V: Visitor + ?Sized>(_visitor: &mut V, _i: &BodyStruct) {
Nika Layzell27726662017-10-24 23:16:35 -0400603 _visitor.visit_variant_data(&_i . data);
604 // Skipped field _i . struct_token;
605 // Skipped field _i . semi_token;
606}
607
Nika Layzella6f46c42017-10-26 15:26:16 -0400608pub fn visit_bound_lifetimes<V: Visitor + ?Sized>(_visitor: &mut V, _i: &BoundLifetimes) {
Nika Layzell27726662017-10-24 23:16:35 -0400609 // Skipped field _i . for_token;
610 // Skipped field _i . lt_token;
611 for el in (_i . lifetimes).iter() { let it = el.item(); _visitor.visit_lifetime_def(&it) };
612 // Skipped field _i . gt_token;
613}
614# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400615pub fn visit_capture_by<V: Visitor + ?Sized>(_visitor: &mut V, _i: &CaptureBy) {
Nika Layzell27726662017-10-24 23:16:35 -0400616 use ::CaptureBy::*;
617 match *_i {
618 Value(ref _binding_0, ) => {
619 // Skipped field * _binding_0;
620 }
621 Ref => { }
622 }
623}
624# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400625pub fn visit_constness<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Constness) {
Nika Layzell27726662017-10-24 23:16:35 -0400626 use ::Constness::*;
627 match *_i {
628 Const(ref _binding_0, ) => {
629 // Skipped field * _binding_0;
630 }
631 NotConst => { }
632 }
633}
634# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400635pub fn visit_defaultness<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Defaultness) {
Nika Layzell27726662017-10-24 23:16:35 -0400636 use ::Defaultness::*;
637 match *_i {
638 Default(ref _binding_0, ) => {
639 // Skipped field * _binding_0;
640 }
641 Final => { }
642 }
643}
644
Nika Layzella6f46c42017-10-26 15:26:16 -0400645pub fn visit_derive_input<V: Visitor + ?Sized>(_visitor: &mut V, _i: &DeriveInput) {
Nika Layzell27726662017-10-24 23:16:35 -0400646 // Skipped field _i . ident;
647 _visitor.visit_visibility(&_i . vis);
648 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
649 _visitor.visit_generics(&_i . generics);
650 _visitor.visit_body(&_i . body);
651}
652
Nika Layzella6f46c42017-10-26 15:26:16 -0400653pub fn visit_expr<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Expr) {
Nika Layzell27726662017-10-24 23:16:35 -0400654 _visitor.visit_expr_kind(&_i . node);
655 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
656}
657# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400658pub fn visit_expr_addr_of<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprAddrOf) {
Nika Layzell27726662017-10-24 23:16:35 -0400659 // Skipped field _i . and_token;
660 _visitor.visit_mutability(&_i . mutbl);
661 _visitor.visit_expr(&_i . expr);
662}
663# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400664pub fn visit_expr_array<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprArray) {
Nika Layzell27726662017-10-24 23:16:35 -0400665 for el in (_i . exprs).iter() { let it = el.item(); _visitor.visit_expr(&it) };
666 // Skipped field _i . bracket_token;
667}
668# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400669pub fn visit_expr_assign<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprAssign) {
Nika Layzell27726662017-10-24 23:16:35 -0400670 _visitor.visit_expr(&_i . left);
671 _visitor.visit_expr(&_i . right);
672 // Skipped field _i . eq_token;
673}
674# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400675pub fn visit_expr_assign_op<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprAssignOp) {
Nika Layzell27726662017-10-24 23:16:35 -0400676 _visitor.visit_bin_op(&_i . op);
677 _visitor.visit_expr(&_i . left);
678 _visitor.visit_expr(&_i . right);
679}
680
Nika Layzella6f46c42017-10-26 15:26:16 -0400681pub fn visit_expr_binary<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprBinary) {
Nika Layzell27726662017-10-24 23:16:35 -0400682 _visitor.visit_bin_op(&_i . op);
683 _visitor.visit_expr(&_i . left);
684 _visitor.visit_expr(&_i . right);
685}
686# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400687pub fn visit_expr_block<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprBlock) {
Nika Layzell27726662017-10-24 23:16:35 -0400688 _visitor.visit_unsafety(&_i . unsafety);
689 _visitor.visit_block(&_i . block);
690}
691# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400692pub fn visit_expr_box<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprBox) {
Nika Layzell27726662017-10-24 23:16:35 -0400693 _visitor.visit_expr(&_i . expr);
694 // Skipped field _i . box_token;
695}
696# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400697pub fn visit_expr_break<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprBreak) {
Nika Layzell27726662017-10-24 23:16:35 -0400698 // Skipped field _i . label;
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400699 if let Some(ref it) = _i . expr { _visitor.visit_expr(&* it) };
Nika Layzell27726662017-10-24 23:16:35 -0400700 // Skipped field _i . break_token;
701}
702
Nika Layzella6f46c42017-10-26 15:26:16 -0400703pub fn visit_expr_call<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprCall) {
Nika Layzell27726662017-10-24 23:16:35 -0400704 _visitor.visit_expr(&_i . func);
705 for el in (_i . args).iter() { let it = el.item(); _visitor.visit_expr(&it) };
706 // Skipped field _i . paren_token;
707}
708
Nika Layzella6f46c42017-10-26 15:26:16 -0400709pub fn visit_expr_cast<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprCast) {
Nika Layzell27726662017-10-24 23:16:35 -0400710 _visitor.visit_expr(&_i . expr);
711 // Skipped field _i . as_token;
David Tolnayfd6bf5c2017-11-12 09:41:14 -0800712 _visitor.visit_type(&_i . ty);
Nika Layzell27726662017-10-24 23:16:35 -0400713}
714# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400715pub fn visit_expr_catch<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprCatch) {
Nika Layzell27726662017-10-24 23:16:35 -0400716 // Skipped field _i . do_token;
717 // Skipped field _i . catch_token;
718 _visitor.visit_block(&_i . block);
719}
720# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400721pub fn visit_expr_closure<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprClosure) {
Nika Layzell27726662017-10-24 23:16:35 -0400722 _visitor.visit_capture_by(&_i . capture);
723 _visitor.visit_fn_decl(&_i . decl);
724 _visitor.visit_expr(&_i . body);
725 // Skipped field _i . or1_token;
726 // Skipped field _i . or2_token;
727}
728# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400729pub fn visit_expr_continue<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprContinue) {
Nika Layzell27726662017-10-24 23:16:35 -0400730 // Skipped field _i . label;
731 // Skipped field _i . continue_token;
732}
733# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400734pub fn visit_expr_field<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprField) {
Nika Layzell27726662017-10-24 23:16:35 -0400735 _visitor.visit_expr(&_i . expr);
736 // Skipped field _i . field;
737 // Skipped field _i . dot_token;
738}
739# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400740pub fn visit_expr_for_loop<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprForLoop) {
Nika Layzell27726662017-10-24 23:16:35 -0400741 _visitor.visit_pat(&_i . pat);
742 _visitor.visit_expr(&_i . expr);
743 _visitor.visit_block(&_i . body);
744 // Skipped field _i . label;
745 // Skipped field _i . for_token;
746 // Skipped field _i . colon_token;
747 // Skipped field _i . in_token;
748}
749
Nika Layzella6f46c42017-10-26 15:26:16 -0400750pub fn visit_expr_group<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprGroup) {
Nika Layzell27726662017-10-24 23:16:35 -0400751 _visitor.visit_expr(&_i . expr);
752 // Skipped field _i . group_token;
753}
754# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400755pub fn visit_expr_if<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprIf) {
Nika Layzell27726662017-10-24 23:16:35 -0400756 _visitor.visit_expr(&_i . cond);
757 _visitor.visit_block(&_i . if_true);
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400758 if let Some(ref it) = _i . if_false { _visitor.visit_expr(&* it) };
Nika Layzell27726662017-10-24 23:16:35 -0400759 // Skipped field _i . if_token;
760 // Skipped field _i . else_token;
761}
762# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400763pub fn visit_expr_if_let<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprIfLet) {
Nika Layzell27726662017-10-24 23:16:35 -0400764 _visitor.visit_pat(&_i . pat);
765 _visitor.visit_expr(&_i . expr);
766 _visitor.visit_block(&_i . if_true);
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400767 if let Some(ref it) = _i . if_false { _visitor.visit_expr(&* it) };
Nika Layzell27726662017-10-24 23:16:35 -0400768 // Skipped field _i . if_token;
769 // Skipped field _i . let_token;
770 // Skipped field _i . eq_token;
771 // Skipped field _i . else_token;
772}
773# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400774pub fn visit_expr_in_place<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprInPlace) {
Nika Layzell27726662017-10-24 23:16:35 -0400775 _visitor.visit_expr(&_i . place);
776 _visitor.visit_in_place_kind(&_i . kind);
777 _visitor.visit_expr(&_i . value);
778}
779
Nika Layzella6f46c42017-10-26 15:26:16 -0400780pub fn visit_expr_index<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprIndex) {
Nika Layzell27726662017-10-24 23:16:35 -0400781 _visitor.visit_expr(&_i . expr);
782 _visitor.visit_expr(&_i . index);
783 // Skipped field _i . bracket_token;
784}
785
Nika Layzella6f46c42017-10-26 15:26:16 -0400786pub fn visit_expr_kind<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprKind) {
Nika Layzell27726662017-10-24 23:16:35 -0400787 use ::ExprKind::*;
788 match *_i {
789 Box(ref _binding_0, ) => {
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400790 full!(_visitor.visit_expr_box(&* _binding_0));
Nika Layzell27726662017-10-24 23:16:35 -0400791 }
792 InPlace(ref _binding_0, ) => {
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400793 full!(_visitor.visit_expr_in_place(&* _binding_0));
Nika Layzell27726662017-10-24 23:16:35 -0400794 }
795 Array(ref _binding_0, ) => {
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400796 full!(_visitor.visit_expr_array(&* _binding_0));
Nika Layzell27726662017-10-24 23:16:35 -0400797 }
798 Call(ref _binding_0, ) => {
799 _visitor.visit_expr_call(&* _binding_0);
800 }
801 MethodCall(ref _binding_0, ) => {
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400802 full!(_visitor.visit_expr_method_call(&* _binding_0));
Nika Layzell27726662017-10-24 23:16:35 -0400803 }
804 Tup(ref _binding_0, ) => {
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400805 full!(_visitor.visit_expr_tup(&* _binding_0));
Nika Layzell27726662017-10-24 23:16:35 -0400806 }
807 Binary(ref _binding_0, ) => {
808 _visitor.visit_expr_binary(&* _binding_0);
809 }
810 Unary(ref _binding_0, ) => {
811 _visitor.visit_expr_unary(&* _binding_0);
812 }
813 Lit(ref _binding_0, ) => {
814 // Skipped field * _binding_0;
815 }
816 Cast(ref _binding_0, ) => {
817 _visitor.visit_expr_cast(&* _binding_0);
818 }
819 Type(ref _binding_0, ) => {
820 _visitor.visit_expr_type(&* _binding_0);
821 }
822 If(ref _binding_0, ) => {
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400823 full!(_visitor.visit_expr_if(&* _binding_0));
Nika Layzell27726662017-10-24 23:16:35 -0400824 }
825 IfLet(ref _binding_0, ) => {
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400826 full!(_visitor.visit_expr_if_let(&* _binding_0));
Nika Layzell27726662017-10-24 23:16:35 -0400827 }
828 While(ref _binding_0, ) => {
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400829 full!(_visitor.visit_expr_while(&* _binding_0));
Nika Layzell27726662017-10-24 23:16:35 -0400830 }
831 WhileLet(ref _binding_0, ) => {
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400832 full!(_visitor.visit_expr_while_let(&* _binding_0));
Nika Layzell27726662017-10-24 23:16:35 -0400833 }
834 ForLoop(ref _binding_0, ) => {
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400835 full!(_visitor.visit_expr_for_loop(&* _binding_0));
Nika Layzell27726662017-10-24 23:16:35 -0400836 }
837 Loop(ref _binding_0, ) => {
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400838 full!(_visitor.visit_expr_loop(&* _binding_0));
Nika Layzell27726662017-10-24 23:16:35 -0400839 }
840 Match(ref _binding_0, ) => {
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400841 full!(_visitor.visit_expr_match(&* _binding_0));
Nika Layzell27726662017-10-24 23:16:35 -0400842 }
843 Closure(ref _binding_0, ) => {
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400844 full!(_visitor.visit_expr_closure(&* _binding_0));
Nika Layzell27726662017-10-24 23:16:35 -0400845 }
846 Block(ref _binding_0, ) => {
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400847 full!(_visitor.visit_expr_block(&* _binding_0));
Nika Layzell27726662017-10-24 23:16:35 -0400848 }
849 Assign(ref _binding_0, ) => {
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400850 full!(_visitor.visit_expr_assign(&* _binding_0));
Nika Layzell27726662017-10-24 23:16:35 -0400851 }
852 AssignOp(ref _binding_0, ) => {
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400853 full!(_visitor.visit_expr_assign_op(&* _binding_0));
Nika Layzell27726662017-10-24 23:16:35 -0400854 }
855 Field(ref _binding_0, ) => {
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400856 full!(_visitor.visit_expr_field(&* _binding_0));
Nika Layzell27726662017-10-24 23:16:35 -0400857 }
858 TupField(ref _binding_0, ) => {
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400859 full!(_visitor.visit_expr_tup_field(&* _binding_0));
Nika Layzell27726662017-10-24 23:16:35 -0400860 }
861 Index(ref _binding_0, ) => {
862 _visitor.visit_expr_index(&* _binding_0);
863 }
864 Range(ref _binding_0, ) => {
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400865 full!(_visitor.visit_expr_range(&* _binding_0));
Nika Layzell27726662017-10-24 23:16:35 -0400866 }
867 Path(ref _binding_0, ) => {
868 _visitor.visit_expr_path(&* _binding_0);
869 }
870 AddrOf(ref _binding_0, ) => {
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400871 full!(_visitor.visit_expr_addr_of(&* _binding_0));
Nika Layzell27726662017-10-24 23:16:35 -0400872 }
873 Break(ref _binding_0, ) => {
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400874 full!(_visitor.visit_expr_break(&* _binding_0));
Nika Layzell27726662017-10-24 23:16:35 -0400875 }
876 Continue(ref _binding_0, ) => {
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400877 full!(_visitor.visit_expr_continue(&* _binding_0));
Nika Layzell27726662017-10-24 23:16:35 -0400878 }
879 Ret(ref _binding_0, ) => {
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400880 full!(_visitor.visit_expr_ret(&* _binding_0));
Nika Layzell27726662017-10-24 23:16:35 -0400881 }
David Tolnaydecf28d2017-11-11 11:56:45 -0800882 Macro(ref _binding_0, ) => {
883 _visitor.visit_macro(&* _binding_0);
Nika Layzell27726662017-10-24 23:16:35 -0400884 }
885 Struct(ref _binding_0, ) => {
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400886 full!(_visitor.visit_expr_struct(&* _binding_0));
Nika Layzell27726662017-10-24 23:16:35 -0400887 }
888 Repeat(ref _binding_0, ) => {
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400889 full!(_visitor.visit_expr_repeat(&* _binding_0));
Nika Layzell27726662017-10-24 23:16:35 -0400890 }
891 Paren(ref _binding_0, ) => {
892 _visitor.visit_expr_paren(&* _binding_0);
893 }
894 Group(ref _binding_0, ) => {
895 _visitor.visit_expr_group(&* _binding_0);
896 }
897 Try(ref _binding_0, ) => {
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400898 full!(_visitor.visit_expr_try(&* _binding_0));
Nika Layzell27726662017-10-24 23:16:35 -0400899 }
900 Catch(ref _binding_0, ) => {
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400901 full!(_visitor.visit_expr_catch(&* _binding_0));
Nika Layzell27726662017-10-24 23:16:35 -0400902 }
903 Yield(ref _binding_0, ) => {
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400904 full!(_visitor.visit_expr_yield(&* _binding_0));
Nika Layzell27726662017-10-24 23:16:35 -0400905 }
906 }
907}
908# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400909pub fn visit_expr_loop<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprLoop) {
Nika Layzell27726662017-10-24 23:16:35 -0400910 _visitor.visit_block(&_i . body);
911 // Skipped field _i . label;
912 // Skipped field _i . loop_token;
913 // Skipped field _i . colon_token;
914}
915# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400916pub fn visit_expr_match<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprMatch) {
Nika Layzell27726662017-10-24 23:16:35 -0400917 // Skipped field _i . match_token;
918 // Skipped field _i . brace_token;
919 _visitor.visit_expr(&_i . expr);
920 for it in (_i . arms).iter() { _visitor.visit_arm(&it) };
921}
922# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400923pub fn visit_expr_method_call<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprMethodCall) {
Nika Layzell27726662017-10-24 23:16:35 -0400924 _visitor.visit_expr(&_i . expr);
925 // Skipped field _i . method;
David Tolnayfd6bf5c2017-11-12 09:41:14 -0800926 for el in (_i . typarams).iter() { let it = el.item(); _visitor.visit_type(&it) };
Nika Layzell27726662017-10-24 23:16:35 -0400927 for el in (_i . args).iter() { let it = el.item(); _visitor.visit_expr(&it) };
928 // Skipped field _i . paren_token;
929 // Skipped field _i . dot_token;
930 // Skipped field _i . lt_token;
931 // Skipped field _i . colon2_token;
932 // Skipped field _i . gt_token;
933}
934
Nika Layzella6f46c42017-10-26 15:26:16 -0400935pub fn visit_expr_paren<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprParen) {
Nika Layzell27726662017-10-24 23:16:35 -0400936 _visitor.visit_expr(&_i . expr);
937 // Skipped field _i . paren_token;
938}
939
Nika Layzella6f46c42017-10-26 15:26:16 -0400940pub fn visit_expr_path<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprPath) {
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400941 if let Some(ref it) = _i . qself { _visitor.visit_qself(&* it) };
Nika Layzell27726662017-10-24 23:16:35 -0400942 _visitor.visit_path(&_i . path);
943}
944# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400945pub fn visit_expr_range<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprRange) {
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400946 if let Some(ref it) = _i . from { _visitor.visit_expr(&* it) };
947 if let Some(ref it) = _i . to { _visitor.visit_expr(&* it) };
Nika Layzell27726662017-10-24 23:16:35 -0400948 _visitor.visit_range_limits(&_i . limits);
949}
950# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400951pub fn visit_expr_repeat<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprRepeat) {
Nika Layzell27726662017-10-24 23:16:35 -0400952 // Skipped field _i . bracket_token;
953 // Skipped field _i . semi_token;
954 _visitor.visit_expr(&_i . expr);
955 _visitor.visit_expr(&_i . amt);
956}
957# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400958pub fn visit_expr_ret<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprRet) {
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400959 if let Some(ref it) = _i . expr { _visitor.visit_expr(&* it) };
Nika Layzell27726662017-10-24 23:16:35 -0400960 // Skipped field _i . return_token;
961}
962# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400963pub fn visit_expr_struct<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprStruct) {
Nika Layzell27726662017-10-24 23:16:35 -0400964 _visitor.visit_path(&_i . path);
965 for el in (_i . fields).iter() { let it = el.item(); _visitor.visit_field_value(&it) };
Nika Layzell4ab8d6e2017-10-26 09:45:49 -0400966 if let Some(ref it) = _i . rest { _visitor.visit_expr(&* it) };
Nika Layzell27726662017-10-24 23:16:35 -0400967 // Skipped field _i . dot2_token;
968 // Skipped field _i . brace_token;
969}
970# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400971pub fn visit_expr_try<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprTry) {
Nika Layzell27726662017-10-24 23:16:35 -0400972 _visitor.visit_expr(&_i . expr);
973 // Skipped field _i . question_token;
974}
975# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400976pub fn visit_expr_tup<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprTup) {
Nika Layzell27726662017-10-24 23:16:35 -0400977 for el in (_i . args).iter() { let it = el.item(); _visitor.visit_expr(&it) };
978 // Skipped field _i . paren_token;
979 // Skipped field _i . lone_comma;
980}
981# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400982pub fn visit_expr_tup_field<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprTupField) {
Nika Layzell27726662017-10-24 23:16:35 -0400983 _visitor.visit_expr(&_i . expr);
984 // Skipped field _i . field;
985 // Skipped field _i . dot_token;
986}
987
Nika Layzella6f46c42017-10-26 15:26:16 -0400988pub fn visit_expr_type<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprType) {
Nika Layzell27726662017-10-24 23:16:35 -0400989 _visitor.visit_expr(&_i . expr);
990 // Skipped field _i . colon_token;
David Tolnayfd6bf5c2017-11-12 09:41:14 -0800991 _visitor.visit_type(&_i . ty);
Nika Layzell27726662017-10-24 23:16:35 -0400992}
993
Nika Layzella6f46c42017-10-26 15:26:16 -0400994pub fn visit_expr_unary<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprUnary) {
Nika Layzell27726662017-10-24 23:16:35 -0400995 _visitor.visit_un_op(&_i . op);
996 _visitor.visit_expr(&_i . expr);
997}
998# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -0400999pub fn visit_expr_while<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprWhile) {
Nika Layzell27726662017-10-24 23:16:35 -04001000 _visitor.visit_expr(&_i . cond);
1001 _visitor.visit_block(&_i . body);
1002 // Skipped field _i . label;
1003 // Skipped field _i . colon_token;
1004 // Skipped field _i . while_token;
1005}
1006# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001007pub fn visit_expr_while_let<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprWhileLet) {
Nika Layzell27726662017-10-24 23:16:35 -04001008 _visitor.visit_pat(&_i . pat);
1009 _visitor.visit_expr(&_i . expr);
1010 _visitor.visit_block(&_i . body);
1011 // Skipped field _i . label;
1012 // Skipped field _i . colon_token;
1013 // Skipped field _i . while_token;
1014 // Skipped field _i . let_token;
1015 // Skipped field _i . eq_token;
1016}
1017# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001018pub fn visit_expr_yield<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ExprYield) {
Nika Layzell27726662017-10-24 23:16:35 -04001019 // Skipped field _i . yield_token;
Nika Layzell4ab8d6e2017-10-26 09:45:49 -04001020 if let Some(ref it) = _i . expr { _visitor.visit_expr(&* it) };
Nika Layzell27726662017-10-24 23:16:35 -04001021}
1022
Nika Layzella6f46c42017-10-26 15:26:16 -04001023pub fn visit_field<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Field) {
Nika Layzell27726662017-10-24 23:16:35 -04001024 // Skipped field _i . ident;
1025 _visitor.visit_visibility(&_i . vis);
1026 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001027 _visitor.visit_type(&_i . ty);
Nika Layzell27726662017-10-24 23:16:35 -04001028 // Skipped field _i . colon_token;
1029}
1030# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001031pub fn visit_field_pat<V: Visitor + ?Sized>(_visitor: &mut V, _i: &FieldPat) {
Nika Layzell27726662017-10-24 23:16:35 -04001032 // Skipped field _i . ident;
1033 _visitor.visit_pat(&_i . pat);
1034 // Skipped field _i . is_shorthand;
1035 // Skipped field _i . colon_token;
1036 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
1037}
1038# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001039pub fn visit_field_value<V: Visitor + ?Sized>(_visitor: &mut V, _i: &FieldValue) {
Nika Layzell27726662017-10-24 23:16:35 -04001040 // Skipped field _i . ident;
1041 _visitor.visit_expr(&_i . expr);
1042 // Skipped field _i . is_shorthand;
1043 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
1044 // Skipped field _i . colon_token;
1045}
1046# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001047pub fn visit_file<V: Visitor + ?Sized>(_visitor: &mut V, _i: &File) {
Nika Layzell27726662017-10-24 23:16:35 -04001048 // Skipped field _i . shebang;
1049 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
1050 for it in (_i . items).iter() { _visitor.visit_item(&it) };
1051}
1052# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001053pub fn visit_fn_arg<V: Visitor + ?Sized>(_visitor: &mut V, _i: &FnArg) {
Nika Layzell27726662017-10-24 23:16:35 -04001054 use ::FnArg::*;
1055 match *_i {
1056 SelfRef(ref _binding_0, ) => {
1057 _visitor.visit_arg_self_ref(&* _binding_0);
1058 }
1059 SelfValue(ref _binding_0, ) => {
1060 _visitor.visit_arg_self(&* _binding_0);
1061 }
1062 Captured(ref _binding_0, ) => {
1063 _visitor.visit_arg_captured(&* _binding_0);
1064 }
1065 Ignored(ref _binding_0, ) => {
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001066 _visitor.visit_type(&* _binding_0);
Nika Layzell27726662017-10-24 23:16:35 -04001067 }
1068 }
1069}
1070# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001071pub fn visit_fn_decl<V: Visitor + ?Sized>(_visitor: &mut V, _i: &FnDecl) {
Nika Layzell27726662017-10-24 23:16:35 -04001072 // Skipped field _i . fn_token;
1073 // Skipped field _i . paren_token;
1074 for el in (_i . inputs).iter() { let it = el.item(); _visitor.visit_fn_arg(&it) };
David Tolnayf93b90d2017-11-11 19:21:26 -08001075 _visitor.visit_return_type(&_i . output);
Nika Layzell27726662017-10-24 23:16:35 -04001076 _visitor.visit_generics(&_i . generics);
1077 // Skipped field _i . variadic;
1078 // Skipped field _i . dot_tokens;
1079}
1080# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001081pub fn visit_foreign_item<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ForeignItem) {
David Tolnay8894f602017-11-11 12:11:04 -08001082 use ::ForeignItem::*;
Nika Layzell27726662017-10-24 23:16:35 -04001083 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 }
David Tolnay199bcbb2017-11-12 10:33:52 -08001090 Type(ref _binding_0, ) => {
1091 _visitor.visit_foreign_item_type(&* _binding_0);
1092 }
Nika Layzell27726662017-10-24 23:16:35 -04001093 }
1094}
1095# [ cfg ( feature = "full" ) ]
David Tolnay8894f602017-11-11 12:11:04 -08001096pub fn visit_foreign_item_fn<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ForeignItemFn) {
1097 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
1098 _visitor.visit_visibility(&_i . vis);
1099 // Skipped field _i . ident;
1100 _visitor.visit_fn_decl(&_i . decl);
1101 // Skipped field _i . semi_token;
1102}
1103# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001104pub fn visit_foreign_item_static<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ForeignItemStatic) {
David Tolnay8894f602017-11-11 12:11:04 -08001105 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
1106 _visitor.visit_visibility(&_i . vis);
Nika Layzell27726662017-10-24 23:16:35 -04001107 // Skipped field _i . static_token;
Nika Layzell27726662017-10-24 23:16:35 -04001108 _visitor.visit_mutability(&_i . mutbl);
David Tolnay8894f602017-11-11 12:11:04 -08001109 // Skipped field _i . ident;
1110 // Skipped field _i . colon_token;
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001111 _visitor.visit_type(&_i . ty);
David Tolnay8894f602017-11-11 12:11:04 -08001112 // Skipped field _i . semi_token;
Nika Layzell27726662017-10-24 23:16:35 -04001113}
David Tolnay199bcbb2017-11-12 10:33:52 -08001114# [ cfg ( feature = "full" ) ]
1115pub fn visit_foreign_item_type<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ForeignItemType) {
1116 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
1117 _visitor.visit_visibility(&_i . vis);
1118 // Skipped field _i . type_token;
1119 // Skipped field _i . ident;
1120 // Skipped field _i . semi_token;
1121}
Nika Layzell27726662017-10-24 23:16:35 -04001122
Nika Layzella6f46c42017-10-26 15:26:16 -04001123pub fn visit_generics<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Generics) {
Nika Layzell27726662017-10-24 23:16:35 -04001124 // Skipped field _i . lt_token;
1125 // Skipped field _i . gt_token;
1126 for el in (_i . lifetimes).iter() { let it = el.item(); _visitor.visit_lifetime_def(&it) };
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001127 for el in (_i . ty_params).iter() { let it = el.item(); _visitor.visit_type_param(&it) };
Nika Layzell27726662017-10-24 23:16:35 -04001128 _visitor.visit_where_clause(&_i . where_clause);
1129}
1130# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001131pub fn visit_impl_item<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ImplItem) {
David Tolnay857628c2017-11-11 12:25:31 -08001132 use ::ImplItem::*;
Nika Layzell27726662017-10-24 23:16:35 -04001133 match *_i {
1134 Const(ref _binding_0, ) => {
1135 _visitor.visit_impl_item_const(&* _binding_0);
1136 }
1137 Method(ref _binding_0, ) => {
1138 _visitor.visit_impl_item_method(&* _binding_0);
1139 }
1140 Type(ref _binding_0, ) => {
1141 _visitor.visit_impl_item_type(&* _binding_0);
1142 }
1143 Macro(ref _binding_0, ) => {
David Tolnay857628c2017-11-11 12:25:31 -08001144 _visitor.visit_impl_item_macro(&* _binding_0);
Nika Layzell27726662017-10-24 23:16:35 -04001145 }
1146 }
1147}
1148# [ cfg ( feature = "full" ) ]
David Tolnay857628c2017-11-11 12:25:31 -08001149pub fn visit_impl_item_const<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ImplItemConst) {
1150 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
1151 _visitor.visit_visibility(&_i . vis);
1152 _visitor.visit_defaultness(&_i . defaultness);
1153 // Skipped field _i . const_token;
1154 // Skipped field _i . ident;
1155 // Skipped field _i . colon_token;
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001156 _visitor.visit_type(&_i . ty);
David Tolnay857628c2017-11-11 12:25:31 -08001157 // Skipped field _i . eq_token;
1158 _visitor.visit_expr(&_i . expr);
1159 // Skipped field _i . semi_token;
1160}
1161# [ cfg ( feature = "full" ) ]
1162pub fn visit_impl_item_macro<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ImplItemMacro) {
1163 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
1164 _visitor.visit_macro(&_i . mac);
1165}
1166# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001167pub fn visit_impl_item_method<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ImplItemMethod) {
David Tolnay857628c2017-11-11 12:25:31 -08001168 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
Nika Layzell27726662017-10-24 23:16:35 -04001169 _visitor.visit_visibility(&_i . vis);
1170 _visitor.visit_defaultness(&_i . defaultness);
1171 _visitor.visit_method_sig(&_i . sig);
1172 _visitor.visit_block(&_i . block);
1173}
1174# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001175pub fn visit_impl_item_type<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ImplItemType) {
David Tolnay857628c2017-11-11 12:25:31 -08001176 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
Nika Layzell27726662017-10-24 23:16:35 -04001177 _visitor.visit_visibility(&_i . vis);
1178 _visitor.visit_defaultness(&_i . defaultness);
1179 // Skipped field _i . type_token;
1180 // Skipped field _i . ident;
1181 // Skipped field _i . eq_token;
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001182 _visitor.visit_type(&_i . ty);
Nika Layzell27726662017-10-24 23:16:35 -04001183 // Skipped field _i . semi_token;
1184}
1185# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001186pub fn visit_impl_polarity<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ImplPolarity) {
Nika Layzell27726662017-10-24 23:16:35 -04001187 use ::ImplPolarity::*;
1188 match *_i {
1189 Positive => { }
1190 Negative(ref _binding_0, ) => {
1191 // Skipped field * _binding_0;
1192 }
1193 }
1194}
1195# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001196pub fn visit_in_place_kind<V: Visitor + ?Sized>(_visitor: &mut V, _i: &InPlaceKind) {
Nika Layzell27726662017-10-24 23:16:35 -04001197 use ::InPlaceKind::*;
1198 match *_i {
1199 Arrow(ref _binding_0, ) => {
1200 // Skipped field * _binding_0;
1201 }
1202 In(ref _binding_0, ) => {
1203 // Skipped field * _binding_0;
1204 }
1205 }
1206}
1207# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001208pub fn visit_item<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Item) {
David Tolnayc6b55bc2017-11-09 22:48:38 -08001209 use ::Item::*;
Nika Layzell27726662017-10-24 23:16:35 -04001210 match *_i {
1211 ExternCrate(ref _binding_0, ) => {
1212 _visitor.visit_item_extern_crate(&* _binding_0);
1213 }
1214 Use(ref _binding_0, ) => {
1215 _visitor.visit_item_use(&* _binding_0);
1216 }
1217 Static(ref _binding_0, ) => {
1218 _visitor.visit_item_static(&* _binding_0);
1219 }
1220 Const(ref _binding_0, ) => {
1221 _visitor.visit_item_const(&* _binding_0);
1222 }
1223 Fn(ref _binding_0, ) => {
1224 _visitor.visit_item_fn(&* _binding_0);
1225 }
1226 Mod(ref _binding_0, ) => {
1227 _visitor.visit_item_mod(&* _binding_0);
1228 }
1229 ForeignMod(ref _binding_0, ) => {
1230 _visitor.visit_item_foreign_mod(&* _binding_0);
1231 }
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001232 Type(ref _binding_0, ) => {
1233 _visitor.visit_item_type(&* _binding_0);
Nika Layzell27726662017-10-24 23:16:35 -04001234 }
1235 Enum(ref _binding_0, ) => {
1236 _visitor.visit_item_enum(&* _binding_0);
1237 }
1238 Struct(ref _binding_0, ) => {
1239 _visitor.visit_item_struct(&* _binding_0);
1240 }
1241 Union(ref _binding_0, ) => {
1242 _visitor.visit_item_union(&* _binding_0);
1243 }
1244 Trait(ref _binding_0, ) => {
1245 _visitor.visit_item_trait(&* _binding_0);
1246 }
1247 DefaultImpl(ref _binding_0, ) => {
1248 _visitor.visit_item_default_impl(&* _binding_0);
1249 }
1250 Impl(ref _binding_0, ) => {
1251 _visitor.visit_item_impl(&* _binding_0);
1252 }
David Tolnaydecf28d2017-11-11 11:56:45 -08001253 Macro(ref _binding_0, ) => {
1254 _visitor.visit_item_macro(&* _binding_0);
Nika Layzell27726662017-10-24 23:16:35 -04001255 }
1256 }
1257}
1258# [ cfg ( feature = "full" ) ]
David Tolnayc6b55bc2017-11-09 22:48:38 -08001259pub fn visit_item_const<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ItemConst) {
1260 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
1261 _visitor.visit_visibility(&_i . vis);
1262 // Skipped field _i . const_token;
1263 // Skipped field _i . ident;
1264 // Skipped field _i . colon_token;
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001265 _visitor.visit_type(&_i . ty);
David Tolnayc6b55bc2017-11-09 22:48:38 -08001266 // Skipped field _i . eq_token;
1267 _visitor.visit_expr(&_i . expr);
1268 // Skipped field _i . semi_token;
1269}
1270# [ cfg ( feature = "full" ) ]
1271pub fn visit_item_default_impl<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ItemDefaultImpl) {
1272 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
1273 _visitor.visit_unsafety(&_i . unsafety);
1274 // Skipped field _i . impl_token;
1275 _visitor.visit_path(&_i . path);
1276 // Skipped field _i . for_token;
1277 // Skipped field _i . dot2_token;
1278 // Skipped field _i . brace_token;
1279}
1280# [ cfg ( feature = "full" ) ]
1281pub fn visit_item_enum<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ItemEnum) {
1282 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
1283 _visitor.visit_visibility(&_i . vis);
1284 // Skipped field _i . enum_token;
1285 // Skipped field _i . ident;
1286 _visitor.visit_generics(&_i . generics);
1287 // Skipped field _i . brace_token;
1288 for el in (_i . variants).iter() { let it = el.item(); _visitor.visit_variant(&it) };
1289}
1290# [ cfg ( feature = "full" ) ]
1291pub fn visit_item_extern_crate<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ItemExternCrate) {
1292 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
1293 _visitor.visit_visibility(&_i . vis);
1294 // Skipped field _i . extern_token;
1295 // Skipped field _i . crate_token;
1296 // Skipped field _i . ident;
1297 // Skipped field _i . rename;
1298 // Skipped field _i . semi_token;
1299}
1300# [ cfg ( feature = "full" ) ]
1301pub fn visit_item_fn<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ItemFn) {
1302 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
1303 _visitor.visit_visibility(&_i . vis);
1304 _visitor.visit_constness(&_i . constness);
1305 _visitor.visit_unsafety(&_i . unsafety);
1306 if let Some(ref it) = _i . abi { _visitor.visit_abi(&* it) };
1307 _visitor.visit_fn_decl(&_i . decl);
1308 // Skipped field _i . ident;
1309 _visitor.visit_block(&_i . block);
1310}
1311# [ cfg ( feature = "full" ) ]
1312pub fn visit_item_foreign_mod<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ItemForeignMod) {
1313 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
1314 _visitor.visit_abi(&_i . abi);
1315 // Skipped field _i . brace_token;
1316 for it in (_i . items).iter() { _visitor.visit_foreign_item(&it) };
1317}
1318# [ cfg ( feature = "full" ) ]
1319pub fn visit_item_impl<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ItemImpl) {
1320 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
1321 _visitor.visit_defaultness(&_i . defaultness);
1322 _visitor.visit_unsafety(&_i . unsafety);
1323 // Skipped field _i . impl_token;
1324 _visitor.visit_generics(&_i . generics);
1325 // Skipped field _i . trait_;
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001326 _visitor.visit_type(&_i . self_ty);
David Tolnayc6b55bc2017-11-09 22:48:38 -08001327 // Skipped field _i . brace_token;
1328 for it in (_i . items).iter() { _visitor.visit_impl_item(&it) };
1329}
1330# [ cfg ( feature = "full" ) ]
David Tolnaydecf28d2017-11-11 11:56:45 -08001331pub fn visit_item_macro<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ItemMacro) {
David Tolnayc6b55bc2017-11-09 22:48:38 -08001332 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
David Tolnay99a953d2017-11-11 12:51:43 -08001333 // Skipped field _i . ident;
David Tolnaydecf28d2017-11-11 11:56:45 -08001334 _visitor.visit_macro(&_i . mac);
David Tolnayc6b55bc2017-11-09 22:48:38 -08001335}
1336# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001337pub fn visit_item_mod<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ItemMod) {
David Tolnayc6b55bc2017-11-09 22:48:38 -08001338 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
Nika Layzell27726662017-10-24 23:16:35 -04001339 _visitor.visit_visibility(&_i . vis);
1340 // Skipped field _i . mod_token;
1341 // Skipped field _i . ident;
1342 // Skipped field _i . content;
1343 // Skipped field _i . semi;
1344}
1345# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001346pub fn visit_item_static<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ItemStatic) {
David Tolnayc6b55bc2017-11-09 22:48:38 -08001347 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
Nika Layzell27726662017-10-24 23:16:35 -04001348 _visitor.visit_visibility(&_i . vis);
1349 // Skipped field _i . static_token;
1350 _visitor.visit_mutability(&_i . mutbl);
1351 // Skipped field _i . ident;
1352 // Skipped field _i . colon_token;
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001353 _visitor.visit_type(&_i . ty);
Nika Layzell27726662017-10-24 23:16:35 -04001354 // Skipped field _i . eq_token;
1355 _visitor.visit_expr(&_i . expr);
1356 // Skipped field _i . semi_token;
1357}
1358# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001359pub fn visit_item_struct<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ItemStruct) {
David Tolnayc6b55bc2017-11-09 22:48:38 -08001360 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
Nika Layzell27726662017-10-24 23:16:35 -04001361 _visitor.visit_visibility(&_i . vis);
1362 // Skipped field _i . struct_token;
1363 // Skipped field _i . ident;
1364 _visitor.visit_generics(&_i . generics);
1365 _visitor.visit_variant_data(&_i . data);
1366 // Skipped field _i . semi_token;
1367}
1368# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001369pub fn visit_item_trait<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ItemTrait) {
David Tolnayc6b55bc2017-11-09 22:48:38 -08001370 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
Nika Layzell27726662017-10-24 23:16:35 -04001371 _visitor.visit_visibility(&_i . vis);
1372 _visitor.visit_unsafety(&_i . unsafety);
Nika Layzell0dc6e632017-11-18 12:55:25 -05001373 // Skipped field _i . auto_token;
Nika Layzell27726662017-10-24 23:16:35 -04001374 // Skipped field _i . trait_token;
1375 // Skipped field _i . ident;
1376 _visitor.visit_generics(&_i . generics);
1377 // Skipped field _i . colon_token;
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001378 for el in (_i . supertraits).iter() { let it = el.item(); _visitor.visit_type_param_bound(&it) };
Nika Layzell27726662017-10-24 23:16:35 -04001379 // Skipped field _i . brace_token;
1380 for it in (_i . items).iter() { _visitor.visit_trait_item(&it) };
1381}
1382# [ cfg ( feature = "full" ) ]
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001383pub fn visit_item_type<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ItemType) {
David Tolnayc6b55bc2017-11-09 22:48:38 -08001384 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
Nika Layzell27726662017-10-24 23:16:35 -04001385 _visitor.visit_visibility(&_i . vis);
1386 // Skipped field _i . type_token;
1387 // Skipped field _i . ident;
1388 _visitor.visit_generics(&_i . generics);
1389 // Skipped field _i . eq_token;
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001390 _visitor.visit_type(&_i . ty);
Nika Layzell27726662017-10-24 23:16:35 -04001391 // Skipped field _i . semi_token;
1392}
1393# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001394pub fn visit_item_union<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ItemUnion) {
David Tolnayc6b55bc2017-11-09 22:48:38 -08001395 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
Nika Layzell27726662017-10-24 23:16:35 -04001396 _visitor.visit_visibility(&_i . vis);
1397 // Skipped field _i . union_token;
1398 // Skipped field _i . ident;
1399 _visitor.visit_generics(&_i . generics);
1400 _visitor.visit_variant_data(&_i . data);
1401}
1402# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001403pub fn visit_item_use<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ItemUse) {
David Tolnayc6b55bc2017-11-09 22:48:38 -08001404 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
Nika Layzell27726662017-10-24 23:16:35 -04001405 _visitor.visit_visibility(&_i . vis);
1406 // Skipped field _i . use_token;
1407 _visitor.visit_view_path(&_i . path);
1408 // Skipped field _i . semi_token;
1409}
1410
Nika Layzella6f46c42017-10-26 15:26:16 -04001411pub fn visit_lifetime_def<V: Visitor + ?Sized>(_visitor: &mut V, _i: &LifetimeDef) {
Nika Layzell27726662017-10-24 23:16:35 -04001412 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
1413 // Skipped field _i . lifetime;
1414 // Skipped field _i . colon_token;
1415 // Skipped field _i . bounds;
1416}
1417# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001418pub fn visit_local<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Local) {
Nika Layzell27726662017-10-24 23:16:35 -04001419 // Skipped field _i . let_token;
1420 // Skipped field _i . colon_token;
1421 // Skipped field _i . eq_token;
1422 // Skipped field _i . semi_token;
1423 _visitor.visit_pat(&_i . pat);
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001424 if let Some(ref it) = _i . ty { _visitor.visit_type(&* it) };
Nika Layzell4ab8d6e2017-10-26 09:45:49 -04001425 if let Some(ref it) = _i . init { _visitor.visit_expr(&* it) };
Nika Layzell27726662017-10-24 23:16:35 -04001426 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
1427}
Nika Layzell27726662017-10-24 23:16:35 -04001428# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001429pub fn visit_mac_stmt_style<V: Visitor + ?Sized>(_visitor: &mut V, _i: &MacStmtStyle) {
Nika Layzell27726662017-10-24 23:16:35 -04001430 use ::MacStmtStyle::*;
1431 match *_i {
1432 Semicolon(ref _binding_0, ) => {
1433 // Skipped field * _binding_0;
1434 }
1435 Braces => { }
1436 NoBraces => { }
1437 }
1438}
1439
David Tolnaydecf28d2017-11-11 11:56:45 -08001440pub fn visit_macro<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Macro) {
1441 _visitor.visit_path(&_i . path);
1442 // Skipped field _i . bang_token;
David Tolnaydecf28d2017-11-11 11:56:45 -08001443 // Skipped field _i . tokens;
1444}
1445
Nika Layzella6f46c42017-10-26 15:26:16 -04001446pub fn visit_meta_item<V: Visitor + ?Sized>(_visitor: &mut V, _i: &MetaItem) {
Nika Layzell27726662017-10-24 23:16:35 -04001447 use ::MetaItem::*;
1448 match *_i {
1449 Term(ref _binding_0, ) => {
1450 // Skipped field * _binding_0;
1451 }
1452 List(ref _binding_0, ) => {
1453 _visitor.visit_meta_item_list(&* _binding_0);
1454 }
1455 NameValue(ref _binding_0, ) => {
1456 _visitor.visit_meta_name_value(&* _binding_0);
1457 }
1458 }
1459}
1460
Nika Layzella6f46c42017-10-26 15:26:16 -04001461pub fn visit_meta_item_list<V: Visitor + ?Sized>(_visitor: &mut V, _i: &MetaItemList) {
Nika Layzell27726662017-10-24 23:16:35 -04001462 // Skipped field _i . ident;
1463 // Skipped field _i . paren_token;
1464 for el in (_i . nested).iter() { let it = el.item(); _visitor.visit_nested_meta_item(&it) };
1465}
1466
Nika Layzella6f46c42017-10-26 15:26:16 -04001467pub fn visit_meta_name_value<V: Visitor + ?Sized>(_visitor: &mut V, _i: &MetaNameValue) {
Nika Layzell27726662017-10-24 23:16:35 -04001468 // Skipped field _i . ident;
1469 // Skipped field _i . eq_token;
1470 // Skipped field _i . lit;
1471}
1472# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001473pub fn visit_method_sig<V: Visitor + ?Sized>(_visitor: &mut V, _i: &MethodSig) {
Nika Layzell27726662017-10-24 23:16:35 -04001474 _visitor.visit_constness(&_i . constness);
1475 _visitor.visit_unsafety(&_i . unsafety);
Nika Layzell4ab8d6e2017-10-26 09:45:49 -04001476 if let Some(ref it) = _i . abi { _visitor.visit_abi(&* it) };
Nika Layzell27726662017-10-24 23:16:35 -04001477 // Skipped field _i . ident;
1478 _visitor.visit_fn_decl(&_i . decl);
1479}
1480
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001481pub fn visit_mut_type<V: Visitor + ?Sized>(_visitor: &mut V, _i: &MutType) {
1482 _visitor.visit_type(&_i . ty);
Nika Layzell27726662017-10-24 23:16:35 -04001483 _visitor.visit_mutability(&_i . mutability);
1484}
1485
Nika Layzella6f46c42017-10-26 15:26:16 -04001486pub fn visit_mutability<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Mutability) {
Nika Layzell27726662017-10-24 23:16:35 -04001487 use ::Mutability::*;
1488 match *_i {
1489 Mutable(ref _binding_0, ) => {
1490 // Skipped field * _binding_0;
1491 }
1492 Immutable => { }
1493 }
1494}
1495
Nika Layzella6f46c42017-10-26 15:26:16 -04001496pub fn visit_nested_meta_item<V: Visitor + ?Sized>(_visitor: &mut V, _i: &NestedMetaItem) {
Nika Layzell27726662017-10-24 23:16:35 -04001497 use ::NestedMetaItem::*;
1498 match *_i {
1499 MetaItem(ref _binding_0, ) => {
1500 _visitor.visit_meta_item(&* _binding_0);
1501 }
1502 Literal(ref _binding_0, ) => {
1503 // Skipped field * _binding_0;
1504 }
1505 }
1506}
1507
Nika Layzella6f46c42017-10-26 15:26:16 -04001508pub fn visit_parenthesized_parameter_data<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ParenthesizedParameterData) {
Nika Layzell27726662017-10-24 23:16:35 -04001509 // Skipped field _i . paren_token;
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001510 for el in (_i . inputs).iter() { let it = el.item(); _visitor.visit_type(&it) };
David Tolnayf93b90d2017-11-11 19:21:26 -08001511 _visitor.visit_return_type(&_i . output);
Nika Layzell27726662017-10-24 23:16:35 -04001512}
1513# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001514pub fn visit_pat<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Pat) {
Nika Layzell27726662017-10-24 23:16:35 -04001515 use ::Pat::*;
1516 match *_i {
1517 Wild(ref _binding_0, ) => {
1518 _visitor.visit_pat_wild(&* _binding_0);
1519 }
1520 Ident(ref _binding_0, ) => {
1521 _visitor.visit_pat_ident(&* _binding_0);
1522 }
1523 Struct(ref _binding_0, ) => {
1524 _visitor.visit_pat_struct(&* _binding_0);
1525 }
1526 TupleStruct(ref _binding_0, ) => {
1527 _visitor.visit_pat_tuple_struct(&* _binding_0);
1528 }
1529 Path(ref _binding_0, ) => {
1530 _visitor.visit_pat_path(&* _binding_0);
1531 }
1532 Tuple(ref _binding_0, ) => {
1533 _visitor.visit_pat_tuple(&* _binding_0);
1534 }
1535 Box(ref _binding_0, ) => {
1536 _visitor.visit_pat_box(&* _binding_0);
1537 }
1538 Ref(ref _binding_0, ) => {
1539 _visitor.visit_pat_ref(&* _binding_0);
1540 }
1541 Lit(ref _binding_0, ) => {
1542 _visitor.visit_pat_lit(&* _binding_0);
1543 }
1544 Range(ref _binding_0, ) => {
1545 _visitor.visit_pat_range(&* _binding_0);
1546 }
1547 Slice(ref _binding_0, ) => {
1548 _visitor.visit_pat_slice(&* _binding_0);
1549 }
David Tolnaydecf28d2017-11-11 11:56:45 -08001550 Macro(ref _binding_0, ) => {
1551 _visitor.visit_macro(&* _binding_0);
Nika Layzell27726662017-10-24 23:16:35 -04001552 }
1553 }
1554}
1555# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001556pub fn visit_pat_box<V: Visitor + ?Sized>(_visitor: &mut V, _i: &PatBox) {
Nika Layzell27726662017-10-24 23:16:35 -04001557 _visitor.visit_pat(&_i . pat);
1558 // Skipped field _i . box_token;
1559}
1560# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001561pub fn visit_pat_ident<V: Visitor + ?Sized>(_visitor: &mut V, _i: &PatIdent) {
Nika Layzell27726662017-10-24 23:16:35 -04001562 _visitor.visit_binding_mode(&_i . mode);
1563 // Skipped field _i . ident;
Nika Layzell4ab8d6e2017-10-26 09:45:49 -04001564 if let Some(ref it) = _i . subpat { _visitor.visit_pat(&* it) };
Nika Layzell27726662017-10-24 23:16:35 -04001565 // Skipped field _i . at_token;
1566}
1567# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001568pub fn visit_pat_lit<V: Visitor + ?Sized>(_visitor: &mut V, _i: &PatLit) {
Nika Layzell27726662017-10-24 23:16:35 -04001569 _visitor.visit_expr(&_i . expr);
1570}
1571# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001572pub fn visit_pat_path<V: Visitor + ?Sized>(_visitor: &mut V, _i: &PatPath) {
Nika Layzell4ab8d6e2017-10-26 09:45:49 -04001573 if let Some(ref it) = _i . qself { _visitor.visit_qself(&* it) };
Nika Layzell27726662017-10-24 23:16:35 -04001574 _visitor.visit_path(&_i . path);
1575}
1576# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001577pub fn visit_pat_range<V: Visitor + ?Sized>(_visitor: &mut V, _i: &PatRange) {
Nika Layzell27726662017-10-24 23:16:35 -04001578 _visitor.visit_expr(&_i . lo);
1579 _visitor.visit_expr(&_i . hi);
1580 _visitor.visit_range_limits(&_i . limits);
1581}
1582# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001583pub fn visit_pat_ref<V: Visitor + ?Sized>(_visitor: &mut V, _i: &PatRef) {
Nika Layzell27726662017-10-24 23:16:35 -04001584 _visitor.visit_pat(&_i . pat);
1585 _visitor.visit_mutability(&_i . mutbl);
1586 // Skipped field _i . and_token;
1587}
1588# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001589pub fn visit_pat_slice<V: Visitor + ?Sized>(_visitor: &mut V, _i: &PatSlice) {
Nika Layzell27726662017-10-24 23:16:35 -04001590 for el in (_i . front).iter() { let it = el.item(); _visitor.visit_pat(&it) };
Nika Layzell4ab8d6e2017-10-26 09:45:49 -04001591 if let Some(ref it) = _i . middle { _visitor.visit_pat(&* it) };
Nika Layzell27726662017-10-24 23:16:35 -04001592 for el in (_i . back).iter() { let it = el.item(); _visitor.visit_pat(&it) };
1593 // Skipped field _i . dot2_token;
1594 // Skipped field _i . comma_token;
1595 // Skipped field _i . bracket_token;
1596}
1597# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001598pub fn visit_pat_struct<V: Visitor + ?Sized>(_visitor: &mut V, _i: &PatStruct) {
Nika Layzell27726662017-10-24 23:16:35 -04001599 _visitor.visit_path(&_i . path);
1600 for el in (_i . fields).iter() { let it = el.item(); _visitor.visit_field_pat(&it) };
1601 // Skipped field _i . brace_token;
1602 // Skipped field _i . dot2_token;
1603}
1604# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001605pub fn visit_pat_tuple<V: Visitor + ?Sized>(_visitor: &mut V, _i: &PatTuple) {
Nika Layzell27726662017-10-24 23:16:35 -04001606 for el in (_i . pats).iter() { let it = el.item(); _visitor.visit_pat(&it) };
1607 // Skipped field _i . dots_pos;
1608 // Skipped field _i . paren_token;
1609 // Skipped field _i . dot2_token;
1610 // Skipped field _i . comma_token;
1611}
1612# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001613pub fn visit_pat_tuple_struct<V: Visitor + ?Sized>(_visitor: &mut V, _i: &PatTupleStruct) {
Nika Layzell27726662017-10-24 23:16:35 -04001614 _visitor.visit_path(&_i . path);
1615 _visitor.visit_pat_tuple(&_i . pat);
1616}
1617# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001618pub fn visit_pat_wild<V: Visitor + ?Sized>(_visitor: &mut V, _i: &PatWild) {
Nika Layzell27726662017-10-24 23:16:35 -04001619 // Skipped field _i . underscore_token;
1620}
1621
Nika Layzella6f46c42017-10-26 15:26:16 -04001622pub fn visit_path<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Path) {
Nika Layzell27726662017-10-24 23:16:35 -04001623 // Skipped field _i . leading_colon;
1624 for el in (_i . segments).iter() { let it = el.item(); _visitor.visit_path_segment(&it) };
1625}
1626# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001627pub fn visit_path_glob<V: Visitor + ?Sized>(_visitor: &mut V, _i: &PathGlob) {
Nika Layzell27726662017-10-24 23:16:35 -04001628 _visitor.visit_path(&_i . path);
1629 // Skipped field _i . colon2_token;
1630 // Skipped field _i . star_token;
1631}
1632# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001633pub fn visit_path_list<V: Visitor + ?Sized>(_visitor: &mut V, _i: &PathList) {
Nika Layzell27726662017-10-24 23:16:35 -04001634 _visitor.visit_path(&_i . path);
1635 // Skipped field _i . colon2_token;
1636 // Skipped field _i . brace_token;
1637 for el in (_i . items).iter() { let it = el.item(); _visitor.visit_path_list_item(&it) };
1638}
1639# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001640pub fn visit_path_list_item<V: Visitor + ?Sized>(_visitor: &mut V, _i: &PathListItem) {
Nika Layzell27726662017-10-24 23:16:35 -04001641 // Skipped field _i . name;
1642 // Skipped field _i . rename;
1643 // Skipped field _i . as_token;
1644}
1645
Nika Layzella6f46c42017-10-26 15:26:16 -04001646pub fn visit_path_parameters<V: Visitor + ?Sized>(_visitor: &mut V, _i: &PathParameters) {
Nika Layzell27726662017-10-24 23:16:35 -04001647 use ::PathParameters::*;
1648 match *_i {
1649 None => { }
1650 AngleBracketed(ref _binding_0, ) => {
1651 _visitor.visit_angle_bracketed_parameter_data(&* _binding_0);
1652 }
1653 Parenthesized(ref _binding_0, ) => {
1654 _visitor.visit_parenthesized_parameter_data(&* _binding_0);
1655 }
1656 }
1657}
1658
Nika Layzella6f46c42017-10-26 15:26:16 -04001659pub fn visit_path_segment<V: Visitor + ?Sized>(_visitor: &mut V, _i: &PathSegment) {
Nika Layzell27726662017-10-24 23:16:35 -04001660 // Skipped field _i . ident;
1661 _visitor.visit_path_parameters(&_i . parameters);
1662}
1663# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001664pub fn visit_path_simple<V: Visitor + ?Sized>(_visitor: &mut V, _i: &PathSimple) {
Nika Layzell27726662017-10-24 23:16:35 -04001665 _visitor.visit_path(&_i . path);
1666 // Skipped field _i . as_token;
1667 // Skipped field _i . rename;
1668}
1669
Nika Layzella6f46c42017-10-26 15:26:16 -04001670pub fn visit_poly_trait_ref<V: Visitor + ?Sized>(_visitor: &mut V, _i: &PolyTraitRef) {
Nika Layzell4ab8d6e2017-10-26 09:45:49 -04001671 if let Some(ref it) = _i . bound_lifetimes { _visitor.visit_bound_lifetimes(&* it) };
Nika Layzell27726662017-10-24 23:16:35 -04001672 _visitor.visit_path(&_i . trait_ref);
1673}
1674
Nika Layzella6f46c42017-10-26 15:26:16 -04001675pub fn visit_qself<V: Visitor + ?Sized>(_visitor: &mut V, _i: &QSelf) {
Nika Layzell27726662017-10-24 23:16:35 -04001676 // Skipped field _i . lt_token;
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001677 _visitor.visit_type(&_i . ty);
Nika Layzell27726662017-10-24 23:16:35 -04001678 // Skipped field _i . position;
1679 // Skipped field _i . as_token;
1680 // Skipped field _i . gt_token;
1681}
1682# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001683pub fn visit_range_limits<V: Visitor + ?Sized>(_visitor: &mut V, _i: &RangeLimits) {
Nika Layzell27726662017-10-24 23:16:35 -04001684 use ::RangeLimits::*;
1685 match *_i {
1686 HalfOpen(ref _binding_0, ) => {
1687 // Skipped field * _binding_0;
1688 }
1689 Closed(ref _binding_0, ) => {
1690 // Skipped field * _binding_0;
1691 }
1692 }
1693}
David Tolnayf93b90d2017-11-11 19:21:26 -08001694
1695pub fn visit_return_type<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ReturnType) {
1696 use ::ReturnType::*;
1697 match *_i {
1698 Default => { }
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001699 Type(ref _binding_0, ref _binding_1, ) => {
1700 _visitor.visit_type(&* _binding_0);
David Tolnayf93b90d2017-11-11 19:21:26 -08001701 // Skipped field * _binding_1;
1702 }
1703 }
1704}
Nika Layzell27726662017-10-24 23:16:35 -04001705# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001706pub fn visit_stmt<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Stmt) {
Nika Layzell27726662017-10-24 23:16:35 -04001707 use ::Stmt::*;
1708 match *_i {
1709 Local(ref _binding_0, ) => {
1710 _visitor.visit_local(&* _binding_0);
1711 }
1712 Item(ref _binding_0, ) => {
1713 _visitor.visit_item(&* _binding_0);
1714 }
1715 Expr(ref _binding_0, ) => {
1716 _visitor.visit_expr(&* _binding_0);
1717 }
1718 Semi(ref _binding_0, ref _binding_1, ) => {
1719 _visitor.visit_expr(&* _binding_0);
1720 // Skipped field * _binding_1;
1721 }
David Tolnaydecf28d2017-11-11 11:56:45 -08001722 Macro(ref _binding_0, ) => {
Nika Layzell27726662017-10-24 23:16:35 -04001723 // Skipped field * _binding_0;
1724 }
1725 }
1726}
1727
Nika Layzella6f46c42017-10-26 15:26:16 -04001728pub fn visit_trait_bound_modifier<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TraitBoundModifier) {
Nika Layzell27726662017-10-24 23:16:35 -04001729 use ::TraitBoundModifier::*;
1730 match *_i {
1731 None => { }
1732 Maybe(ref _binding_0, ) => {
1733 // Skipped field * _binding_0;
1734 }
1735 }
1736}
1737# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001738pub fn visit_trait_item<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TraitItem) {
David Tolnayda705bd2017-11-10 21:58:05 -08001739 use ::TraitItem::*;
Nika Layzell27726662017-10-24 23:16:35 -04001740 match *_i {
1741 Const(ref _binding_0, ) => {
1742 _visitor.visit_trait_item_const(&* _binding_0);
1743 }
1744 Method(ref _binding_0, ) => {
1745 _visitor.visit_trait_item_method(&* _binding_0);
1746 }
1747 Type(ref _binding_0, ) => {
1748 _visitor.visit_trait_item_type(&* _binding_0);
1749 }
1750 Macro(ref _binding_0, ) => {
David Tolnaydecf28d2017-11-11 11:56:45 -08001751 _visitor.visit_trait_item_macro(&* _binding_0);
Nika Layzell27726662017-10-24 23:16:35 -04001752 }
1753 }
1754}
1755# [ cfg ( feature = "full" ) ]
David Tolnayda705bd2017-11-10 21:58:05 -08001756pub fn visit_trait_item_const<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TraitItemConst) {
1757 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
1758 // Skipped field _i . const_token;
1759 // Skipped field _i . ident;
1760 // Skipped field _i . colon_token;
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001761 _visitor.visit_type(&_i . ty);
David Tolnayda705bd2017-11-10 21:58:05 -08001762 // Skipped field _i . default;
1763 // Skipped field _i . semi_token;
1764}
1765# [ cfg ( feature = "full" ) ]
David Tolnaydecf28d2017-11-11 11:56:45 -08001766pub fn visit_trait_item_macro<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TraitItemMacro) {
David Tolnayda705bd2017-11-10 21:58:05 -08001767 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
David Tolnaydecf28d2017-11-11 11:56:45 -08001768 _visitor.visit_macro(&_i . mac);
David Tolnayda705bd2017-11-10 21:58:05 -08001769}
1770# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001771pub fn visit_trait_item_method<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TraitItemMethod) {
David Tolnayda705bd2017-11-10 21:58:05 -08001772 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
Nika Layzell27726662017-10-24 23:16:35 -04001773 _visitor.visit_method_sig(&_i . sig);
Nika Layzell4ab8d6e2017-10-26 09:45:49 -04001774 if let Some(ref it) = _i . default { _visitor.visit_block(&* it) };
Nika Layzell27726662017-10-24 23:16:35 -04001775 // Skipped field _i . semi_token;
1776}
1777# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001778pub fn visit_trait_item_type<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TraitItemType) {
David Tolnayda705bd2017-11-10 21:58:05 -08001779 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
Nika Layzell27726662017-10-24 23:16:35 -04001780 // Skipped field _i . type_token;
1781 // Skipped field _i . ident;
1782 // Skipped field _i . colon_token;
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001783 for el in (_i . bounds).iter() { let it = el.item(); _visitor.visit_type_param_bound(&it) };
Nika Layzell27726662017-10-24 23:16:35 -04001784 // Skipped field _i . default;
1785 // Skipped field _i . semi_token;
1786}
1787
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001788pub fn visit_type<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Type) {
1789 use ::Type::*;
Nika Layzell27726662017-10-24 23:16:35 -04001790 match *_i {
1791 Slice(ref _binding_0, ) => {
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001792 _visitor.visit_type_slice(&* _binding_0);
Nika Layzell27726662017-10-24 23:16:35 -04001793 }
1794 Array(ref _binding_0, ) => {
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001795 _visitor.visit_type_array(&* _binding_0);
Nika Layzell27726662017-10-24 23:16:35 -04001796 }
1797 Ptr(ref _binding_0, ) => {
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001798 _visitor.visit_type_ptr(&* _binding_0);
Nika Layzell27726662017-10-24 23:16:35 -04001799 }
David Tolnay0a89b4d2017-11-13 00:55:45 -08001800 Reference(ref _binding_0, ) => {
1801 _visitor.visit_type_reference(&* _binding_0);
Nika Layzell27726662017-10-24 23:16:35 -04001802 }
1803 BareFn(ref _binding_0, ) => {
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001804 _visitor.visit_type_bare_fn(&* _binding_0);
Nika Layzell27726662017-10-24 23:16:35 -04001805 }
1806 Never(ref _binding_0, ) => {
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001807 _visitor.visit_type_never(&* _binding_0);
Nika Layzell27726662017-10-24 23:16:35 -04001808 }
1809 Tup(ref _binding_0, ) => {
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001810 _visitor.visit_type_tup(&* _binding_0);
Nika Layzell27726662017-10-24 23:16:35 -04001811 }
1812 Path(ref _binding_0, ) => {
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001813 _visitor.visit_type_path(&* _binding_0);
Nika Layzell27726662017-10-24 23:16:35 -04001814 }
1815 TraitObject(ref _binding_0, ) => {
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001816 _visitor.visit_type_trait_object(&* _binding_0);
Nika Layzell27726662017-10-24 23:16:35 -04001817 }
1818 ImplTrait(ref _binding_0, ) => {
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001819 _visitor.visit_type_impl_trait(&* _binding_0);
Nika Layzell27726662017-10-24 23:16:35 -04001820 }
1821 Paren(ref _binding_0, ) => {
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001822 _visitor.visit_type_paren(&* _binding_0);
Nika Layzell27726662017-10-24 23:16:35 -04001823 }
1824 Group(ref _binding_0, ) => {
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001825 _visitor.visit_type_group(&* _binding_0);
Nika Layzell27726662017-10-24 23:16:35 -04001826 }
1827 Infer(ref _binding_0, ) => {
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001828 _visitor.visit_type_infer(&* _binding_0);
Nika Layzell27726662017-10-24 23:16:35 -04001829 }
David Tolnaydecf28d2017-11-11 11:56:45 -08001830 Macro(ref _binding_0, ) => {
1831 _visitor.visit_macro(&* _binding_0);
Nika Layzell27726662017-10-24 23:16:35 -04001832 }
1833 }
1834}
1835
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001836pub fn visit_type_array<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TypeArray) {
Nika Layzell27726662017-10-24 23:16:35 -04001837 // Skipped field _i . bracket_token;
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001838 _visitor.visit_type(&_i . ty);
Nika Layzell27726662017-10-24 23:16:35 -04001839 // Skipped field _i . semi_token;
1840 _visitor.visit_expr(&_i . amt);
1841}
1842
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001843pub fn visit_type_bare_fn<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TypeBareFn) {
1844 _visitor.visit_bare_fn_type(&_i . ty);
Nika Layzell27726662017-10-24 23:16:35 -04001845}
1846
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001847pub fn visit_type_binding<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TypeBinding) {
1848 // Skipped field _i . ident;
1849 // Skipped field _i . eq_token;
1850 _visitor.visit_type(&_i . ty);
1851}
1852
1853pub fn visit_type_group<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TypeGroup) {
Nika Layzell27726662017-10-24 23:16:35 -04001854 // Skipped field _i . group_token;
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001855 _visitor.visit_type(&_i . ty);
Nika Layzell27726662017-10-24 23:16:35 -04001856}
1857
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001858pub fn visit_type_impl_trait<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TypeImplTrait) {
Nika Layzell27726662017-10-24 23:16:35 -04001859 // Skipped field _i . impl_token;
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001860 for el in (_i . bounds).iter() { let it = el.item(); _visitor.visit_type_param_bound(&it) };
Nika Layzell27726662017-10-24 23:16:35 -04001861}
1862
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001863pub fn visit_type_infer<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TypeInfer) {
Nika Layzell27726662017-10-24 23:16:35 -04001864 // Skipped field _i . underscore_token;
1865}
1866
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001867pub fn visit_type_never<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TypeNever) {
Nika Layzell27726662017-10-24 23:16:35 -04001868 // Skipped field _i . bang_token;
1869}
1870
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001871pub fn visit_type_param<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TypeParam) {
Nika Layzell27726662017-10-24 23:16:35 -04001872 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
1873 // Skipped field _i . ident;
1874 // Skipped field _i . colon_token;
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001875 for el in (_i . bounds).iter() { let it = el.item(); _visitor.visit_type_param_bound(&it) };
Nika Layzell27726662017-10-24 23:16:35 -04001876 // Skipped field _i . eq_token;
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001877 if let Some(ref it) = _i . default { _visitor.visit_type(&* it) };
Nika Layzell27726662017-10-24 23:16:35 -04001878}
1879
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001880pub fn visit_type_param_bound<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TypeParamBound) {
1881 use ::TypeParamBound::*;
Nika Layzell27726662017-10-24 23:16:35 -04001882 match *_i {
1883 Trait(ref _binding_0, ref _binding_1, ) => {
1884 _visitor.visit_poly_trait_ref(&* _binding_0);
1885 _visitor.visit_trait_bound_modifier(&* _binding_1);
1886 }
1887 Region(ref _binding_0, ) => {
1888 // Skipped field * _binding_0;
1889 }
1890 }
1891}
1892
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001893pub fn visit_type_paren<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TypeParen) {
Nika Layzell27726662017-10-24 23:16:35 -04001894 // Skipped field _i . paren_token;
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001895 _visitor.visit_type(&_i . ty);
Nika Layzell27726662017-10-24 23:16:35 -04001896}
1897
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001898pub fn visit_type_path<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TypePath) {
Nika Layzell4ab8d6e2017-10-26 09:45:49 -04001899 if let Some(ref it) = _i . qself { _visitor.visit_qself(&* it) };
Nika Layzell27726662017-10-24 23:16:35 -04001900 _visitor.visit_path(&_i . path);
1901}
1902
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001903pub fn visit_type_ptr<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TypePtr) {
Nika Layzell27726662017-10-24 23:16:35 -04001904 // Skipped field _i . star_token;
1905 // Skipped field _i . const_token;
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001906 _visitor.visit_mut_type(&_i . ty);
Nika Layzell27726662017-10-24 23:16:35 -04001907}
1908
David Tolnay0a89b4d2017-11-13 00:55:45 -08001909pub fn visit_type_reference<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TypeReference) {
Nika Layzell27726662017-10-24 23:16:35 -04001910 // Skipped field _i . and_token;
1911 // Skipped field _i . lifetime;
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001912 _visitor.visit_mut_type(&_i . ty);
Nika Layzell27726662017-10-24 23:16:35 -04001913}
1914
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001915pub fn visit_type_slice<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TypeSlice) {
1916 _visitor.visit_type(&_i . ty);
Nika Layzell27726662017-10-24 23:16:35 -04001917 // Skipped field _i . bracket_token;
1918}
1919
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001920pub fn visit_type_trait_object<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TypeTraitObject) {
1921 for el in (_i . bounds).iter() { let it = el.item(); _visitor.visit_type_param_bound(&it) };
Nika Layzell27726662017-10-24 23:16:35 -04001922}
1923
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001924pub fn visit_type_tup<V: Visitor + ?Sized>(_visitor: &mut V, _i: &TypeTup) {
Nika Layzell27726662017-10-24 23:16:35 -04001925 // Skipped field _i . paren_token;
David Tolnayfd6bf5c2017-11-12 09:41:14 -08001926 for el in (_i . tys).iter() { let it = el.item(); _visitor.visit_type(&it) };
Nika Layzell27726662017-10-24 23:16:35 -04001927 // Skipped field _i . lone_comma;
1928}
1929
Nika Layzella6f46c42017-10-26 15:26:16 -04001930pub fn visit_un_op<V: Visitor + ?Sized>(_visitor: &mut V, _i: &UnOp) {
Nika Layzell27726662017-10-24 23:16:35 -04001931 use ::UnOp::*;
1932 match *_i {
1933 Deref(ref _binding_0, ) => {
1934 // Skipped field * _binding_0;
1935 }
1936 Not(ref _binding_0, ) => {
1937 // Skipped field * _binding_0;
1938 }
1939 Neg(ref _binding_0, ) => {
1940 // Skipped field * _binding_0;
1941 }
1942 }
1943}
1944
Nika Layzella6f46c42017-10-26 15:26:16 -04001945pub fn visit_unsafety<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Unsafety) {
Nika Layzell27726662017-10-24 23:16:35 -04001946 use ::Unsafety::*;
1947 match *_i {
1948 Unsafe(ref _binding_0, ) => {
1949 // Skipped field * _binding_0;
1950 }
1951 Normal => { }
1952 }
1953}
1954
Nika Layzella6f46c42017-10-26 15:26:16 -04001955pub fn visit_variant<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Variant) {
Nika Layzell27726662017-10-24 23:16:35 -04001956 // Skipped field _i . ident;
1957 for it in (_i . attrs).iter() { _visitor.visit_attribute(&it) };
1958 _visitor.visit_variant_data(&_i . data);
Nika Layzell4ab8d6e2017-10-26 09:45:49 -04001959 if let Some(ref it) = _i . discriminant { _visitor.visit_expr(&* it) };
Nika Layzell27726662017-10-24 23:16:35 -04001960 // Skipped field _i . eq_token;
1961}
1962
Nika Layzella6f46c42017-10-26 15:26:16 -04001963pub fn visit_variant_data<V: Visitor + ?Sized>(_visitor: &mut V, _i: &VariantData) {
Nika Layzell27726662017-10-24 23:16:35 -04001964 use ::VariantData::*;
1965 match *_i {
1966 Struct(ref _binding_0, ref _binding_1, ) => {
1967 for el in (* _binding_0).iter() { let it = el.item(); _visitor.visit_field(&it) };
1968 // Skipped field * _binding_1;
1969 }
1970 Tuple(ref _binding_0, ref _binding_1, ) => {
1971 for el in (* _binding_0).iter() { let it = el.item(); _visitor.visit_field(&it) };
1972 // Skipped field * _binding_1;
1973 }
1974 Unit => { }
1975 }
1976}
1977# [ cfg ( feature = "full" ) ]
Nika Layzella6f46c42017-10-26 15:26:16 -04001978pub fn visit_view_path<V: Visitor + ?Sized>(_visitor: &mut V, _i: &ViewPath) {
Nika Layzell27726662017-10-24 23:16:35 -04001979 use ::ViewPath::*;
1980 match *_i {
1981 Simple(ref _binding_0, ) => {
1982 _visitor.visit_path_simple(&* _binding_0);
1983 }
1984 Glob(ref _binding_0, ) => {
1985 _visitor.visit_path_glob(&* _binding_0);
1986 }
1987 List(ref _binding_0, ) => {
1988 _visitor.visit_path_list(&* _binding_0);
1989 }
1990 }
1991}
1992
Nika Layzella6f46c42017-10-26 15:26:16 -04001993pub fn visit_vis_crate<V: Visitor + ?Sized>(_visitor: &mut V, _i: &VisCrate) {
Nika Layzell27726662017-10-24 23:16:35 -04001994 // Skipped field _i . pub_token;
1995 // Skipped field _i . paren_token;
1996 // Skipped field _i . crate_token;
1997}
1998
Nika Layzella6f46c42017-10-26 15:26:16 -04001999pub fn visit_vis_inherited<V: Visitor + ?Sized>(_visitor: &mut V, _i: &VisInherited) {
Nika Layzell27726662017-10-24 23:16:35 -04002000}
2001
Nika Layzella6f46c42017-10-26 15:26:16 -04002002pub fn visit_vis_public<V: Visitor + ?Sized>(_visitor: &mut V, _i: &VisPublic) {
Nika Layzell27726662017-10-24 23:16:35 -04002003 // Skipped field _i . pub_token;
2004}
2005
Nika Layzella6f46c42017-10-26 15:26:16 -04002006pub fn visit_vis_restricted<V: Visitor + ?Sized>(_visitor: &mut V, _i: &VisRestricted) {
Nika Layzell27726662017-10-24 23:16:35 -04002007 // Skipped field _i . pub_token;
2008 // Skipped field _i . paren_token;
2009 // Skipped field _i . in_token;
2010 _visitor.visit_path(&_i . path);
2011}
2012
Nika Layzella6f46c42017-10-26 15:26:16 -04002013pub fn visit_visibility<V: Visitor + ?Sized>(_visitor: &mut V, _i: &Visibility) {
Nika Layzell27726662017-10-24 23:16:35 -04002014 use ::Visibility::*;
2015 match *_i {
2016 Public(ref _binding_0, ) => {
2017 _visitor.visit_vis_public(&* _binding_0);
2018 }
2019 Crate(ref _binding_0, ) => {
2020 _visitor.visit_vis_crate(&* _binding_0);
2021 }
2022 Restricted(ref _binding_0, ) => {
2023 _visitor.visit_vis_restricted(&* _binding_0);
2024 }
2025 Inherited(ref _binding_0, ) => {
2026 _visitor.visit_vis_inherited(&* _binding_0);
2027 }
2028 }
2029}
2030
Nika Layzella6f46c42017-10-26 15:26:16 -04002031pub fn visit_where_bound_predicate<V: Visitor + ?Sized>(_visitor: &mut V, _i: &WhereBoundPredicate) {
Nika Layzell4ab8d6e2017-10-26 09:45:49 -04002032 if let Some(ref it) = _i . bound_lifetimes { _visitor.visit_bound_lifetimes(&* it) };
David Tolnayfd6bf5c2017-11-12 09:41:14 -08002033 _visitor.visit_type(&_i . bounded_ty);
Nika Layzell27726662017-10-24 23:16:35 -04002034 // Skipped field _i . colon_token;
David Tolnayfd6bf5c2017-11-12 09:41:14 -08002035 for el in (_i . bounds).iter() { let it = el.item(); _visitor.visit_type_param_bound(&it) };
Nika Layzell27726662017-10-24 23:16:35 -04002036}
2037
Nika Layzella6f46c42017-10-26 15:26:16 -04002038pub fn visit_where_clause<V: Visitor + ?Sized>(_visitor: &mut V, _i: &WhereClause) {
Nika Layzell27726662017-10-24 23:16:35 -04002039 // Skipped field _i . where_token;
2040 for el in (_i . predicates).iter() { let it = el.item(); _visitor.visit_where_predicate(&it) };
2041}
2042
Nika Layzella6f46c42017-10-26 15:26:16 -04002043pub fn visit_where_eq_predicate<V: Visitor + ?Sized>(_visitor: &mut V, _i: &WhereEqPredicate) {
David Tolnayfd6bf5c2017-11-12 09:41:14 -08002044 _visitor.visit_type(&_i . lhs_ty);
Nika Layzell27726662017-10-24 23:16:35 -04002045 // Skipped field _i . eq_token;
David Tolnayfd6bf5c2017-11-12 09:41:14 -08002046 _visitor.visit_type(&_i . rhs_ty);
Nika Layzell27726662017-10-24 23:16:35 -04002047}
2048
Nika Layzella6f46c42017-10-26 15:26:16 -04002049pub fn visit_where_predicate<V: Visitor + ?Sized>(_visitor: &mut V, _i: &WherePredicate) {
Nika Layzell27726662017-10-24 23:16:35 -04002050 use ::WherePredicate::*;
2051 match *_i {
2052 BoundPredicate(ref _binding_0, ) => {
2053 _visitor.visit_where_bound_predicate(&* _binding_0);
2054 }
2055 RegionPredicate(ref _binding_0, ) => {
2056 _visitor.visit_where_region_predicate(&* _binding_0);
2057 }
2058 EqPredicate(ref _binding_0, ) => {
2059 _visitor.visit_where_eq_predicate(&* _binding_0);
2060 }
2061 }
2062}
2063
Nika Layzella6f46c42017-10-26 15:26:16 -04002064pub fn visit_where_region_predicate<V: Visitor + ?Sized>(_visitor: &mut V, _i: &WhereRegionPredicate) {
Nika Layzell27726662017-10-24 23:16:35 -04002065 // Skipped field _i . lifetime;
2066 // Skipped field _i . colon_token;
2067 // Skipped field _i . bounds;
2068}
2069