Update to the next version of proc-macro2

Depends on dtolnay/quote#73
Depends on alexcrichton/proc-macro2#90
Depends on a new nightly
diff --git a/src/gen/fold.rs b/src/gen/fold.rs
index b5b67b3..f8e6071 100644
--- a/src/gen/fold.rs
+++ b/src/gen/fold.rs
@@ -9,7 +9,7 @@
 use *;
 #[cfg(any(feature = "full", feature = "derive"))]
 use token::{Brace, Bracket, Paren, Group};
-use proc_macro2::Span;
+use proc_macro2::{Span, Ident};
 #[cfg(any(feature = "full", feature = "derive"))]
 use gen::helper::fold::*;
 
@@ -191,8 +191,6 @@
 fn fold_generic_param(&mut self, i: GenericParam) -> GenericParam { fold_generic_param(self, i) }
 # [ cfg ( any ( feature = "full" , feature = "derive" ) ) ]
 fn fold_generics(&mut self, i: Generics) -> Generics { fold_generics(self, i) }
-
-fn fold_ident(&mut self, i: Ident) -> Ident { fold_ident(self, i) }
 # [ cfg ( feature = "full" ) ]
 fn fold_impl_item(&mut self, i: ImplItem) -> ImplItem { fold_impl_item(self, i) }
 # [ cfg ( feature = "full" ) ]
@@ -538,7 +536,7 @@
     match _i {
         BareFnArgName::Named(_binding_0, ) => {
             BareFnArgName::Named (
-                _visitor.fold_ident(_binding_0),
+                _binding_0,
             )
         }
         BareFnArgName::Wild(_binding_0, ) => {
@@ -696,7 +694,7 @@
 # [ cfg ( any ( feature = "full" , feature = "derive" ) ) ]
 pub fn fold_binding<V: Fold + ?Sized>(_visitor: &mut V, _i: Binding) -> Binding {
     Binding {
-        ident: _visitor.fold_ident(_i . ident),
+        ident: _i . ident,
         eq_token: Token ! [ = ](tokens_helper(_visitor, &(_i . eq_token).0)),
         ty: _visitor.fold_type(_i . ty),
     }
@@ -722,7 +720,7 @@
     ConstParam {
         attrs: FoldHelper::lift(_i . attrs, |it| { _visitor.fold_attribute(it) }),
         const_token: Token ! [ const ](tokens_helper(_visitor, &(_i . const_token).0)),
-        ident: _visitor.fold_ident(_i . ident),
+        ident: _i . ident,
         colon_token: Token ! [ : ](tokens_helper(_visitor, &(_i . colon_token).0)),
         ty: _visitor.fold_type(_i . ty),
         eq_token: (_i . eq_token).map(|it| { Token ! [ = ](tokens_helper(_visitor, &(it).0)) }),
@@ -777,7 +775,7 @@
     DeriveInput {
         attrs: FoldHelper::lift(_i . attrs, |it| { _visitor.fold_attribute(it) }),
         vis: _visitor.fold_visibility(_i . vis),
-        ident: _visitor.fold_ident(_i . ident),
+        ident: _i . ident,
         generics: _visitor.fold_generics(_i . generics),
         data: _visitor.fold_data(_i . data),
     }
@@ -1209,7 +1207,7 @@
         attrs: FoldHelper::lift(_i . attrs, |it| { _visitor.fold_attribute(it) }),
         receiver: Box::new(_visitor.fold_expr(* _i . receiver)),
         dot_token: Token ! [ . ](tokens_helper(_visitor, &(_i . dot_token).0)),
-        method: _visitor.fold_ident(_i . method),
+        method: _i . method,
         turbofish: (_i . turbofish).map(|it| { _visitor.fold_method_turbofish(it) }),
         paren_token: Paren(tokens_helper(_visitor, &(_i . paren_token).0)),
         args: FoldHelper::lift(_i . args, |it| { _visitor.fold_expr(it) }),
@@ -1361,7 +1359,7 @@
     Field {
         attrs: FoldHelper::lift(_i . attrs, |it| { _visitor.fold_attribute(it) }),
         vis: _visitor.fold_visibility(_i . vis),
-        ident: (_i . ident).map(|it| { _visitor.fold_ident(it) }),
+        ident: _i . ident,
         colon_token: (_i . colon_token).map(|it| { Token ! [ : ](tokens_helper(_visitor, &(it).0)) }),
         ty: _visitor.fold_type(_i . ty),
     }
@@ -1493,7 +1491,7 @@
     ForeignItemFn {
         attrs: FoldHelper::lift(_i . attrs, |it| { _visitor.fold_attribute(it) }),
         vis: _visitor.fold_visibility(_i . vis),
-        ident: _visitor.fold_ident(_i . ident),
+        ident: _i . ident,
         decl: Box::new(_visitor.fold_fn_decl(* _i . decl)),
         semi_token: Token ! [ ; ](tokens_helper(_visitor, &(_i . semi_token).0)),
     }
@@ -1505,7 +1503,7 @@
         vis: _visitor.fold_visibility(_i . vis),
         static_token: Token ! [ static ](tokens_helper(_visitor, &(_i . static_token).0)),
         mutability: (_i . mutability).map(|it| { Token ! [ mut ](tokens_helper(_visitor, &(it).0)) }),
-        ident: _visitor.fold_ident(_i . ident),
+        ident: _i . ident,
         colon_token: Token ! [ : ](tokens_helper(_visitor, &(_i . colon_token).0)),
         ty: Box::new(_visitor.fold_type(* _i . ty)),
         semi_token: Token ! [ ; ](tokens_helper(_visitor, &(_i . semi_token).0)),
@@ -1517,7 +1515,7 @@
         attrs: FoldHelper::lift(_i . attrs, |it| { _visitor.fold_attribute(it) }),
         vis: _visitor.fold_visibility(_i . vis),
         type_token: Token ! [ type ](tokens_helper(_visitor, &(_i . type_token).0)),
-        ident: _visitor.fold_ident(_i . ident),
+        ident: _i . ident,
         semi_token: Token ! [ ; ](tokens_helper(_visitor, &(_i . semi_token).0)),
     }
 }
@@ -1633,7 +1631,7 @@
         vis: _visitor.fold_visibility(_i . vis),
         defaultness: (_i . defaultness).map(|it| { Token ! [ default ](tokens_helper(_visitor, &(it).0)) }),
         const_token: Token ! [ const ](tokens_helper(_visitor, &(_i . const_token).0)),
-        ident: _visitor.fold_ident(_i . ident),
+        ident: _i . ident,
         colon_token: Token ! [ : ](tokens_helper(_visitor, &(_i . colon_token).0)),
         ty: _visitor.fold_type(_i . ty),
         eq_token: Token ! [ = ](tokens_helper(_visitor, &(_i . eq_token).0)),
@@ -1666,7 +1664,7 @@
         vis: _visitor.fold_visibility(_i . vis),
         defaultness: (_i . defaultness).map(|it| { Token ! [ default ](tokens_helper(_visitor, &(it).0)) }),
         type_token: Token ! [ type ](tokens_helper(_visitor, &(_i . type_token).0)),
-        ident: _visitor.fold_ident(_i . ident),
+        ident: _i . ident,
         generics: _visitor.fold_generics(_i . generics),
         eq_token: Token ! [ = ](tokens_helper(_visitor, &(_i . eq_token).0)),
         ty: _visitor.fold_type(_i . ty),
@@ -1777,7 +1775,7 @@
         attrs: FoldHelper::lift(_i . attrs, |it| { _visitor.fold_attribute(it) }),
         vis: _visitor.fold_visibility(_i . vis),
         const_token: Token ! [ const ](tokens_helper(_visitor, &(_i . const_token).0)),
-        ident: _visitor.fold_ident(_i . ident),
+        ident: _i . ident,
         colon_token: Token ! [ : ](tokens_helper(_visitor, &(_i . colon_token).0)),
         ty: Box::new(_visitor.fold_type(* _i . ty)),
         eq_token: Token ! [ = ](tokens_helper(_visitor, &(_i . eq_token).0)),
@@ -1791,7 +1789,7 @@
         attrs: FoldHelper::lift(_i . attrs, |it| { _visitor.fold_attribute(it) }),
         vis: _visitor.fold_visibility(_i . vis),
         enum_token: Token ! [ enum ](tokens_helper(_visitor, &(_i . enum_token).0)),
-        ident: _visitor.fold_ident(_i . ident),
+        ident: _i . ident,
         generics: _visitor.fold_generics(_i . generics),
         brace_token: Brace(tokens_helper(_visitor, &(_i . brace_token).0)),
         variants: FoldHelper::lift(_i . variants, |it| { _visitor.fold_variant(it) }),
@@ -1804,10 +1802,10 @@
         vis: _visitor.fold_visibility(_i . vis),
         extern_token: Token ! [ extern ](tokens_helper(_visitor, &(_i . extern_token).0)),
         crate_token: Token ! [ crate ](tokens_helper(_visitor, &(_i . crate_token).0)),
-        ident: _visitor.fold_ident(_i . ident),
+        ident: _i . ident,
         rename: (_i . rename).map(|it| { (
             Token ! [ as ](tokens_helper(_visitor, &(( it ) . 0).0)),
-            _visitor.fold_ident(( it ) . 1),
+            ( it ) . 1,
         ) }),
         semi_token: Token ! [ ; ](tokens_helper(_visitor, &(_i . semi_token).0)),
     }
@@ -1820,7 +1818,7 @@
         constness: (_i . constness).map(|it| { Token ! [ const ](tokens_helper(_visitor, &(it).0)) }),
         unsafety: (_i . unsafety).map(|it| { Token ! [ unsafe ](tokens_helper(_visitor, &(it).0)) }),
         abi: (_i . abi).map(|it| { _visitor.fold_abi(it) }),
-        ident: _visitor.fold_ident(_i . ident),
+        ident: _i . ident,
         decl: Box::new(_visitor.fold_fn_decl(* _i . decl)),
         block: Box::new(_visitor.fold_block(* _i . block)),
     }
@@ -1856,7 +1854,7 @@
 pub fn fold_item_macro<V: Fold + ?Sized>(_visitor: &mut V, _i: ItemMacro) -> ItemMacro {
     ItemMacro {
         attrs: FoldHelper::lift(_i . attrs, |it| { _visitor.fold_attribute(it) }),
-        ident: (_i . ident).map(|it| { _visitor.fold_ident(it) }),
+        ident: _i . ident,
         mac: _visitor.fold_macro(_i . mac),
         semi_token: (_i . semi_token).map(|it| { Token ! [ ; ](tokens_helper(_visitor, &(it).0)) }),
     }
@@ -1867,7 +1865,7 @@
         attrs: FoldHelper::lift(_i . attrs, |it| { _visitor.fold_attribute(it) }),
         vis: _visitor.fold_visibility(_i . vis),
         macro_token: Token ! [ macro ](tokens_helper(_visitor, &(_i . macro_token).0)),
-        ident: _visitor.fold_ident(_i . ident),
+        ident: _i . ident,
         paren_token: Paren(tokens_helper(_visitor, &(_i . paren_token).0)),
         args: _i . args,
         brace_token: Brace(tokens_helper(_visitor, &(_i . brace_token).0)),
@@ -1880,7 +1878,7 @@
         attrs: FoldHelper::lift(_i . attrs, |it| { _visitor.fold_attribute(it) }),
         vis: _visitor.fold_visibility(_i . vis),
         mod_token: Token ! [ mod ](tokens_helper(_visitor, &(_i . mod_token).0)),
-        ident: _visitor.fold_ident(_i . ident),
+        ident: _i . ident,
         content: (_i . content).map(|it| { (
             Brace(tokens_helper(_visitor, &(( it ) . 0).0)),
             FoldHelper::lift(( it ) . 1, |it| { _visitor.fold_item(it) }),
@@ -1895,7 +1893,7 @@
         vis: _visitor.fold_visibility(_i . vis),
         static_token: Token ! [ static ](tokens_helper(_visitor, &(_i . static_token).0)),
         mutability: (_i . mutability).map(|it| { Token ! [ mut ](tokens_helper(_visitor, &(it).0)) }),
-        ident: _visitor.fold_ident(_i . ident),
+        ident: _i . ident,
         colon_token: Token ! [ : ](tokens_helper(_visitor, &(_i . colon_token).0)),
         ty: Box::new(_visitor.fold_type(* _i . ty)),
         eq_token: Token ! [ = ](tokens_helper(_visitor, &(_i . eq_token).0)),
@@ -1909,7 +1907,7 @@
         attrs: FoldHelper::lift(_i . attrs, |it| { _visitor.fold_attribute(it) }),
         vis: _visitor.fold_visibility(_i . vis),
         struct_token: Token ! [ struct ](tokens_helper(_visitor, &(_i . struct_token).0)),
-        ident: _visitor.fold_ident(_i . ident),
+        ident: _i . ident,
         generics: _visitor.fold_generics(_i . generics),
         fields: _visitor.fold_fields(_i . fields),
         semi_token: (_i . semi_token).map(|it| { Token ! [ ; ](tokens_helper(_visitor, &(it).0)) }),
@@ -1923,7 +1921,7 @@
         unsafety: (_i . unsafety).map(|it| { Token ! [ unsafe ](tokens_helper(_visitor, &(it).0)) }),
         auto_token: (_i . auto_token).map(|it| { Token ! [ auto ](tokens_helper(_visitor, &(it).0)) }),
         trait_token: Token ! [ trait ](tokens_helper(_visitor, &(_i . trait_token).0)),
-        ident: _visitor.fold_ident(_i . ident),
+        ident: _i . ident,
         generics: _visitor.fold_generics(_i . generics),
         colon_token: (_i . colon_token).map(|it| { Token ! [ : ](tokens_helper(_visitor, &(it).0)) }),
         supertraits: FoldHelper::lift(_i . supertraits, |it| { _visitor.fold_type_param_bound(it) }),
@@ -1937,7 +1935,7 @@
         attrs: FoldHelper::lift(_i . attrs, |it| { _visitor.fold_attribute(it) }),
         vis: _visitor.fold_visibility(_i . vis),
         type_token: Token ! [ type ](tokens_helper(_visitor, &(_i . type_token).0)),
-        ident: _visitor.fold_ident(_i . ident),
+        ident: _i . ident,
         generics: _visitor.fold_generics(_i . generics),
         eq_token: Token ! [ = ](tokens_helper(_visitor, &(_i . eq_token).0)),
         ty: Box::new(_visitor.fold_type(* _i . ty)),
@@ -1950,7 +1948,7 @@
         attrs: FoldHelper::lift(_i . attrs, |it| { _visitor.fold_attribute(it) }),
         vis: _visitor.fold_visibility(_i . vis),
         union_token: Token ! [ union ](tokens_helper(_visitor, &(_i . union_token).0)),
-        ident: _visitor.fold_ident(_i . ident),
+        ident: _i . ident,
         generics: _visitor.fold_generics(_i . generics),
         fields: _visitor.fold_fields_named(_i . fields),
     }
@@ -2097,7 +2095,7 @@
     match _i {
         Member::Named(_binding_0, ) => {
             Member::Named (
-                _visitor.fold_ident(_binding_0),
+                _binding_0,
             )
         }
         Member::Unnamed(_binding_0, ) => {
@@ -2112,7 +2110,7 @@
     match _i {
         Meta::Word(_binding_0, ) => {
             Meta::Word (
-                _visitor.fold_ident(_binding_0),
+                _binding_0,
             )
         }
         Meta::List(_binding_0, ) => {
@@ -2130,7 +2128,7 @@
 # [ cfg ( any ( feature = "full" , feature = "derive" ) ) ]
 pub fn fold_meta_list<V: Fold + ?Sized>(_visitor: &mut V, _i: MetaList) -> MetaList {
     MetaList {
-        ident: _visitor.fold_ident(_i . ident),
+        ident: _i . ident,
         paren_token: Paren(tokens_helper(_visitor, &(_i . paren_token).0)),
         nested: FoldHelper::lift(_i . nested, |it| { _visitor.fold_nested_meta(it) }),
     }
@@ -2138,7 +2136,7 @@
 # [ cfg ( any ( feature = "full" , feature = "derive" ) ) ]
 pub fn fold_meta_name_value<V: Fold + ?Sized>(_visitor: &mut V, _i: MetaNameValue) -> MetaNameValue {
     MetaNameValue {
-        ident: _visitor.fold_ident(_i . ident),
+        ident: _i . ident,
         eq_token: Token ! [ = ](tokens_helper(_visitor, &(_i . eq_token).0)),
         lit: _visitor.fold_lit(_i . lit),
     }
@@ -2149,7 +2147,7 @@
         constness: (_i . constness).map(|it| { Token ! [ const ](tokens_helper(_visitor, &(it).0)) }),
         unsafety: (_i . unsafety).map(|it| { Token ! [ unsafe ](tokens_helper(_visitor, &(it).0)) }),
         abi: (_i . abi).map(|it| { _visitor.fold_abi(it) }),
-        ident: _visitor.fold_ident(_i . ident),
+        ident: _i . ident,
         decl: _visitor.fold_fn_decl(_i . decl),
     }
 }
@@ -2267,7 +2265,7 @@
     PatIdent {
         by_ref: (_i . by_ref).map(|it| { Token ! [ ref ](tokens_helper(_visitor, &(it).0)) }),
         mutability: (_i . mutability).map(|it| { Token ! [ mut ](tokens_helper(_visitor, &(it).0)) }),
-        ident: _visitor.fold_ident(_i . ident),
+        ident: _i . ident,
         subpat: (_i . subpat).map(|it| { (
             Token ! [ @ ](tokens_helper(_visitor, &(( it ) . 0).0)),
             Box::new(_visitor.fold_pat(* ( it ) . 1)),
@@ -2384,7 +2382,7 @@
 # [ cfg ( any ( feature = "full" , feature = "derive" ) ) ]
 pub fn fold_path_segment<V: Fold + ?Sized>(_visitor: &mut V, _i: PathSegment) -> PathSegment {
     PathSegment {
-        ident: _visitor.fold_ident(_i . ident),
+        ident: _i . ident,
         arguments: _visitor.fold_path_arguments(_i . arguments),
     }
 }
@@ -2535,7 +2533,7 @@
     TraitItemConst {
         attrs: FoldHelper::lift(_i . attrs, |it| { _visitor.fold_attribute(it) }),
         const_token: Token ! [ const ](tokens_helper(_visitor, &(_i . const_token).0)),
-        ident: _visitor.fold_ident(_i . ident),
+        ident: _i . ident,
         colon_token: Token ! [ : ](tokens_helper(_visitor, &(_i . colon_token).0)),
         ty: _visitor.fold_type(_i . ty),
         default: (_i . default).map(|it| { (
@@ -2567,7 +2565,7 @@
     TraitItemType {
         attrs: FoldHelper::lift(_i . attrs, |it| { _visitor.fold_attribute(it) }),
         type_token: Token ! [ type ](tokens_helper(_visitor, &(_i . type_token).0)),
-        ident: _visitor.fold_ident(_i . ident),
+        ident: _i . ident,
         generics: _visitor.fold_generics(_i . generics),
         colon_token: (_i . colon_token).map(|it| { Token ! [ : ](tokens_helper(_visitor, &(it).0)) }),
         bounds: FoldHelper::lift(_i . bounds, |it| { _visitor.fold_type_param_bound(it) }),
@@ -2722,7 +2720,7 @@
 pub fn fold_type_param<V: Fold + ?Sized>(_visitor: &mut V, _i: TypeParam) -> TypeParam {
     TypeParam {
         attrs: FoldHelper::lift(_i . attrs, |it| { _visitor.fold_attribute(it) }),
-        ident: _visitor.fold_ident(_i . ident),
+        ident: _i . ident,
         colon_token: (_i . colon_token).map(|it| { Token ! [ : ](tokens_helper(_visitor, &(it).0)) }),
         bounds: FoldHelper::lift(_i . bounds, |it| { _visitor.fold_type_param_bound(it) }),
         eq_token: (_i . eq_token).map(|it| { Token ! [ = ](tokens_helper(_visitor, &(it).0)) }),
@@ -2839,13 +2837,13 @@
 # [ cfg ( feature = "full" ) ]
 pub fn fold_use_name<V: Fold + ?Sized>(_visitor: &mut V, _i: UseName) -> UseName {
     UseName {
-        ident: _visitor.fold_ident(_i . ident),
+        ident: _i . ident,
     }
 }
 # [ cfg ( feature = "full" ) ]
 pub fn fold_use_path<V: Fold + ?Sized>(_visitor: &mut V, _i: UsePath) -> UsePath {
     UsePath {
-        ident: _visitor.fold_ident(_i . ident),
+        ident: _i . ident,
         colon2_token: Token ! [ :: ](tokens_helper(_visitor, &(_i . colon2_token).0)),
         tree: Box::new(_visitor.fold_use_tree(* _i . tree)),
     }
@@ -2853,9 +2851,9 @@
 # [ cfg ( feature = "full" ) ]
 pub fn fold_use_rename<V: Fold + ?Sized>(_visitor: &mut V, _i: UseRename) -> UseRename {
     UseRename {
-        ident: _visitor.fold_ident(_i . ident),
+        ident: _i . ident,
         as_token: Token ! [ as ](tokens_helper(_visitor, &(_i . as_token).0)),
-        rename: _visitor.fold_ident(_i . rename),
+        rename: _i . rename,
     }
 }
 # [ cfg ( feature = "full" ) ]
@@ -2892,7 +2890,7 @@
 pub fn fold_variant<V: Fold + ?Sized>(_visitor: &mut V, _i: Variant) -> Variant {
     Variant {
         attrs: FoldHelper::lift(_i . attrs, |it| { _visitor.fold_attribute(it) }),
-        ident: _visitor.fold_ident(_i . ident),
+        ident: _i . ident,
         fields: _visitor.fold_fields(_i . fields),
         discriminant: (_i . discriminant).map(|it| { (
             Token ! [ = ](tokens_helper(_visitor, &(( it ) . 0).0)),
diff --git a/src/gen/visit.rs b/src/gen/visit.rs
index 6a38d1d..3a8c28d 100644
--- a/src/gen/visit.rs
+++ b/src/gen/visit.rs
@@ -189,8 +189,6 @@
 fn visit_generic_param(&mut self, i: &'ast GenericParam) { visit_generic_param(self, i) }
 # [ cfg ( any ( feature = "full" , feature = "derive" ) ) ]
 fn visit_generics(&mut self, i: &'ast Generics) { visit_generics(self, i) }
-
-fn visit_ident(&mut self, i: &'ast Ident) { visit_ident(self, i) }
 # [ cfg ( feature = "full" ) ]
 fn visit_impl_item(&mut self, i: &'ast ImplItem) { visit_impl_item(self, i) }
 # [ cfg ( feature = "full" ) ]
@@ -491,7 +489,7 @@
 pub fn visit_bare_fn_arg_name<'ast, V: Visit<'ast> + ?Sized>(_visitor: &mut V, _i: &'ast BareFnArgName) {
     match *_i {
         BareFnArgName::Named(ref _binding_0, ) => {
-            _visitor.visit_ident(_binding_0);
+            // Skipped field _binding_0;
         }
         BareFnArgName::Wild(ref _binding_0, ) => {
             tokens_helper(_visitor, &(_binding_0).0);
@@ -589,7 +587,7 @@
 }
 # [ cfg ( any ( feature = "full" , feature = "derive" ) ) ]
 pub fn visit_binding<'ast, V: Visit<'ast> + ?Sized>(_visitor: &mut V, _i: &'ast Binding) {
-    _visitor.visit_ident(& _i . ident);
+    // Skipped field _i . ident;
     tokens_helper(_visitor, &(& _i . eq_token).0);
     _visitor.visit_type(& _i . ty);
 }
@@ -609,7 +607,7 @@
 pub fn visit_const_param<'ast, V: Visit<'ast> + ?Sized>(_visitor: &mut V, _i: &'ast ConstParam) {
     for it in & _i . attrs { _visitor.visit_attribute(it) };
     tokens_helper(_visitor, &(& _i . const_token).0);
-    _visitor.visit_ident(& _i . ident);
+    // Skipped field _i . ident;
     tokens_helper(_visitor, &(& _i . colon_token).0);
     _visitor.visit_type(& _i . ty);
     if let Some(ref it) = _i . eq_token { tokens_helper(_visitor, &(it).0) };
@@ -650,7 +648,7 @@
 pub fn visit_derive_input<'ast, V: Visit<'ast> + ?Sized>(_visitor: &mut V, _i: &'ast DeriveInput) {
     for it in & _i . attrs { _visitor.visit_attribute(it) };
     _visitor.visit_visibility(& _i . vis);
-    _visitor.visit_ident(& _i . ident);
+    // Skipped field _i . ident;
     _visitor.visit_generics(& _i . generics);
     _visitor.visit_data(& _i . data);
 }
@@ -954,7 +952,7 @@
     for it in & _i . attrs { _visitor.visit_attribute(it) };
     _visitor.visit_expr(& * _i . receiver);
     tokens_helper(_visitor, &(& _i . dot_token).0);
-    _visitor.visit_ident(& _i . method);
+    // Skipped field _i . method;
     if let Some(ref it) = _i . turbofish { _visitor.visit_method_turbofish(it) };
     tokens_helper(_visitor, &(& _i . paren_token).0);
     for el in Punctuated::pairs(& _i . args) { let it = el.value(); _visitor.visit_expr(it) };
@@ -1072,7 +1070,7 @@
 pub fn visit_field<'ast, V: Visit<'ast> + ?Sized>(_visitor: &mut V, _i: &'ast Field) {
     for it in & _i . attrs { _visitor.visit_attribute(it) };
     _visitor.visit_visibility(& _i . vis);
-    if let Some(ref it) = _i . ident { _visitor.visit_ident(it) };
+    // Skipped field _i . ident;
     if let Some(ref it) = _i . colon_token { tokens_helper(_visitor, &(it).0) };
     _visitor.visit_type(& _i . ty);
 }
@@ -1168,7 +1166,7 @@
 pub fn visit_foreign_item_fn<'ast, V: Visit<'ast> + ?Sized>(_visitor: &mut V, _i: &'ast ForeignItemFn) {
     for it in & _i . attrs { _visitor.visit_attribute(it) };
     _visitor.visit_visibility(& _i . vis);
-    _visitor.visit_ident(& _i . ident);
+    // Skipped field _i . ident;
     _visitor.visit_fn_decl(& * _i . decl);
     tokens_helper(_visitor, &(& _i . semi_token).0);
 }
@@ -1178,7 +1176,7 @@
     _visitor.visit_visibility(& _i . vis);
     tokens_helper(_visitor, &(& _i . static_token).0);
     if let Some(ref it) = _i . mutability { tokens_helper(_visitor, &(it).0) };
-    _visitor.visit_ident(& _i . ident);
+    // Skipped field _i . ident;
     tokens_helper(_visitor, &(& _i . colon_token).0);
     _visitor.visit_type(& * _i . ty);
     tokens_helper(_visitor, &(& _i . semi_token).0);
@@ -1188,7 +1186,7 @@
     for it in & _i . attrs { _visitor.visit_attribute(it) };
     _visitor.visit_visibility(& _i . vis);
     tokens_helper(_visitor, &(& _i . type_token).0);
-    _visitor.visit_ident(& _i . ident);
+    // Skipped field _i . ident;
     tokens_helper(_visitor, &(& _i . semi_token).0);
 }
 # [ cfg ( feature = "full" ) ]
@@ -1244,10 +1242,6 @@
     if let Some(ref it) = _i . gt_token { tokens_helper(_visitor, &(it).0) };
     if let Some(ref it) = _i . where_clause { _visitor.visit_where_clause(it) };
 }
-
-pub fn visit_ident<'ast, V: Visit<'ast> + ?Sized>(_visitor: &mut V, _i: &'ast Ident) {
-    // Skipped field _i . term;
-}
 # [ cfg ( feature = "full" ) ]
 pub fn visit_impl_item<'ast, V: Visit<'ast> + ?Sized>(_visitor: &mut V, _i: &'ast ImplItem) {
     match *_i {
@@ -1274,7 +1268,7 @@
     _visitor.visit_visibility(& _i . vis);
     if let Some(ref it) = _i . defaultness { tokens_helper(_visitor, &(it).0) };
     tokens_helper(_visitor, &(& _i . const_token).0);
-    _visitor.visit_ident(& _i . ident);
+    // Skipped field _i . ident;
     tokens_helper(_visitor, &(& _i . colon_token).0);
     _visitor.visit_type(& _i . ty);
     tokens_helper(_visitor, &(& _i . eq_token).0);
@@ -1301,7 +1295,7 @@
     _visitor.visit_visibility(& _i . vis);
     if let Some(ref it) = _i . defaultness { tokens_helper(_visitor, &(it).0) };
     tokens_helper(_visitor, &(& _i . type_token).0);
-    _visitor.visit_ident(& _i . ident);
+    // Skipped field _i . ident;
     _visitor.visit_generics(& _i . generics);
     tokens_helper(_visitor, &(& _i . eq_token).0);
     _visitor.visit_type(& _i . ty);
@@ -1374,7 +1368,7 @@
     for it in & _i . attrs { _visitor.visit_attribute(it) };
     _visitor.visit_visibility(& _i . vis);
     tokens_helper(_visitor, &(& _i . const_token).0);
-    _visitor.visit_ident(& _i . ident);
+    // Skipped field _i . ident;
     tokens_helper(_visitor, &(& _i . colon_token).0);
     _visitor.visit_type(& * _i . ty);
     tokens_helper(_visitor, &(& _i . eq_token).0);
@@ -1386,7 +1380,7 @@
     for it in & _i . attrs { _visitor.visit_attribute(it) };
     _visitor.visit_visibility(& _i . vis);
     tokens_helper(_visitor, &(& _i . enum_token).0);
-    _visitor.visit_ident(& _i . ident);
+    // Skipped field _i . ident;
     _visitor.visit_generics(& _i . generics);
     tokens_helper(_visitor, &(& _i . brace_token).0);
     for el in Punctuated::pairs(& _i . variants) { let it = el.value(); _visitor.visit_variant(it) };
@@ -1397,10 +1391,10 @@
     _visitor.visit_visibility(& _i . vis);
     tokens_helper(_visitor, &(& _i . extern_token).0);
     tokens_helper(_visitor, &(& _i . crate_token).0);
-    _visitor.visit_ident(& _i . ident);
+    // Skipped field _i . ident;
     if let Some(ref it) = _i . rename { 
             tokens_helper(_visitor, &(& ( it ) . 0).0);
-            _visitor.visit_ident(& ( it ) . 1);
+            // Skipped field ( it ) . 1;
          };
     tokens_helper(_visitor, &(& _i . semi_token).0);
 }
@@ -1411,7 +1405,7 @@
     if let Some(ref it) = _i . constness { tokens_helper(_visitor, &(it).0) };
     if let Some(ref it) = _i . unsafety { tokens_helper(_visitor, &(it).0) };
     if let Some(ref it) = _i . abi { _visitor.visit_abi(it) };
-    _visitor.visit_ident(& _i . ident);
+    // Skipped field _i . ident;
     _visitor.visit_fn_decl(& * _i . decl);
     _visitor.visit_block(& * _i . block);
 }
@@ -1441,7 +1435,7 @@
 # [ cfg ( feature = "full" ) ]
 pub fn visit_item_macro<'ast, V: Visit<'ast> + ?Sized>(_visitor: &mut V, _i: &'ast ItemMacro) {
     for it in & _i . attrs { _visitor.visit_attribute(it) };
-    if let Some(ref it) = _i . ident { _visitor.visit_ident(it) };
+    // Skipped field _i . ident;
     _visitor.visit_macro(& _i . mac);
     if let Some(ref it) = _i . semi_token { tokens_helper(_visitor, &(it).0) };
 }
@@ -1450,7 +1444,7 @@
     for it in & _i . attrs { _visitor.visit_attribute(it) };
     _visitor.visit_visibility(& _i . vis);
     tokens_helper(_visitor, &(& _i . macro_token).0);
-    _visitor.visit_ident(& _i . ident);
+    // Skipped field _i . ident;
     tokens_helper(_visitor, &(& _i . paren_token).0);
     // Skipped field _i . args;
     tokens_helper(_visitor, &(& _i . brace_token).0);
@@ -1461,7 +1455,7 @@
     for it in & _i . attrs { _visitor.visit_attribute(it) };
     _visitor.visit_visibility(& _i . vis);
     tokens_helper(_visitor, &(& _i . mod_token).0);
-    _visitor.visit_ident(& _i . ident);
+    // Skipped field _i . ident;
     if let Some(ref it) = _i . content { 
             tokens_helper(_visitor, &(& ( it ) . 0).0);
             for it in & ( it ) . 1 { _visitor.visit_item(it) };
@@ -1474,7 +1468,7 @@
     _visitor.visit_visibility(& _i . vis);
     tokens_helper(_visitor, &(& _i . static_token).0);
     if let Some(ref it) = _i . mutability { tokens_helper(_visitor, &(it).0) };
-    _visitor.visit_ident(& _i . ident);
+    // Skipped field _i . ident;
     tokens_helper(_visitor, &(& _i . colon_token).0);
     _visitor.visit_type(& * _i . ty);
     tokens_helper(_visitor, &(& _i . eq_token).0);
@@ -1486,7 +1480,7 @@
     for it in & _i . attrs { _visitor.visit_attribute(it) };
     _visitor.visit_visibility(& _i . vis);
     tokens_helper(_visitor, &(& _i . struct_token).0);
-    _visitor.visit_ident(& _i . ident);
+    // Skipped field _i . ident;
     _visitor.visit_generics(& _i . generics);
     _visitor.visit_fields(& _i . fields);
     if let Some(ref it) = _i . semi_token { tokens_helper(_visitor, &(it).0) };
@@ -1498,7 +1492,7 @@
     if let Some(ref it) = _i . unsafety { tokens_helper(_visitor, &(it).0) };
     if let Some(ref it) = _i . auto_token { tokens_helper(_visitor, &(it).0) };
     tokens_helper(_visitor, &(& _i . trait_token).0);
-    _visitor.visit_ident(& _i . ident);
+    // Skipped field _i . ident;
     _visitor.visit_generics(& _i . generics);
     if let Some(ref it) = _i . colon_token { tokens_helper(_visitor, &(it).0) };
     for el in Punctuated::pairs(& _i . supertraits) { let it = el.value(); _visitor.visit_type_param_bound(it) };
@@ -1510,7 +1504,7 @@
     for it in & _i . attrs { _visitor.visit_attribute(it) };
     _visitor.visit_visibility(& _i . vis);
     tokens_helper(_visitor, &(& _i . type_token).0);
-    _visitor.visit_ident(& _i . ident);
+    // Skipped field _i . ident;
     _visitor.visit_generics(& _i . generics);
     tokens_helper(_visitor, &(& _i . eq_token).0);
     _visitor.visit_type(& * _i . ty);
@@ -1521,7 +1515,7 @@
     for it in & _i . attrs { _visitor.visit_attribute(it) };
     _visitor.visit_visibility(& _i . vis);
     tokens_helper(_visitor, &(& _i . union_token).0);
-    _visitor.visit_ident(& _i . ident);
+    // Skipped field _i . ident;
     _visitor.visit_generics(& _i . generics);
     _visitor.visit_fields_named(& _i . fields);
 }
@@ -1545,7 +1539,7 @@
 }
 # [ cfg ( any ( feature = "full" , feature = "derive" ) ) ]
 pub fn visit_lifetime<'ast, V: Visit<'ast> + ?Sized>(_visitor: &mut V, _i: &'ast Lifetime) {
-    // Skipped field _i . term;
+    // Skipped field _i . ident;
 }
 # [ cfg ( any ( feature = "full" , feature = "derive" ) ) ]
 pub fn visit_lifetime_def<'ast, V: Visit<'ast> + ?Sized>(_visitor: &mut V, _i: &'ast LifetimeDef) {
@@ -1656,7 +1650,7 @@
 pub fn visit_member<'ast, V: Visit<'ast> + ?Sized>(_visitor: &mut V, _i: &'ast Member) {
     match *_i {
         Member::Named(ref _binding_0, ) => {
-            _visitor.visit_ident(_binding_0);
+            // Skipped field _binding_0;
         }
         Member::Unnamed(ref _binding_0, ) => {
             _visitor.visit_index(_binding_0);
@@ -1667,7 +1661,7 @@
 pub fn visit_meta<'ast, V: Visit<'ast> + ?Sized>(_visitor: &mut V, _i: &'ast Meta) {
     match *_i {
         Meta::Word(ref _binding_0, ) => {
-            _visitor.visit_ident(_binding_0);
+            // Skipped field _binding_0;
         }
         Meta::List(ref _binding_0, ) => {
             _visitor.visit_meta_list(_binding_0);
@@ -1679,13 +1673,13 @@
 }
 # [ cfg ( any ( feature = "full" , feature = "derive" ) ) ]
 pub fn visit_meta_list<'ast, V: Visit<'ast> + ?Sized>(_visitor: &mut V, _i: &'ast MetaList) {
-    _visitor.visit_ident(& _i . ident);
+    // Skipped field _i . ident;
     tokens_helper(_visitor, &(& _i . paren_token).0);
     for el in Punctuated::pairs(& _i . nested) { let it = el.value(); _visitor.visit_nested_meta(it) };
 }
 # [ cfg ( any ( feature = "full" , feature = "derive" ) ) ]
 pub fn visit_meta_name_value<'ast, V: Visit<'ast> + ?Sized>(_visitor: &mut V, _i: &'ast MetaNameValue) {
-    _visitor.visit_ident(& _i . ident);
+    // Skipped field _i . ident;
     tokens_helper(_visitor, &(& _i . eq_token).0);
     _visitor.visit_lit(& _i . lit);
 }
@@ -1694,7 +1688,7 @@
     if let Some(ref it) = _i . constness { tokens_helper(_visitor, &(it).0) };
     if let Some(ref it) = _i . unsafety { tokens_helper(_visitor, &(it).0) };
     if let Some(ref it) = _i . abi { _visitor.visit_abi(it) };
-    _visitor.visit_ident(& _i . ident);
+    // Skipped field _i . ident;
     _visitor.visit_fn_decl(& _i . decl);
 }
 # [ cfg ( any ( feature = "full" , feature = "derive" ) ) ] # [ cfg ( feature = "full" ) ]
@@ -1774,7 +1768,7 @@
 pub fn visit_pat_ident<'ast, V: Visit<'ast> + ?Sized>(_visitor: &mut V, _i: &'ast PatIdent) {
     if let Some(ref it) = _i . by_ref { tokens_helper(_visitor, &(it).0) };
     if let Some(ref it) = _i . mutability { tokens_helper(_visitor, &(it).0) };
-    _visitor.visit_ident(& _i . ident);
+    // Skipped field _i . ident;
     if let Some(ref it) = _i . subpat { 
             tokens_helper(_visitor, &(& ( it ) . 0).0);
             _visitor.visit_pat(& * ( it ) . 1);
@@ -1861,7 +1855,7 @@
 }
 # [ cfg ( any ( feature = "full" , feature = "derive" ) ) ]
 pub fn visit_path_segment<'ast, V: Visit<'ast> + ?Sized>(_visitor: &mut V, _i: &'ast PathSegment) {
-    _visitor.visit_ident(& _i . ident);
+    // Skipped field _i . ident;
     _visitor.visit_path_arguments(& _i . arguments);
 }
 # [ cfg ( any ( feature = "full" , feature = "derive" ) ) ]
@@ -1973,7 +1967,7 @@
 pub fn visit_trait_item_const<'ast, V: Visit<'ast> + ?Sized>(_visitor: &mut V, _i: &'ast TraitItemConst) {
     for it in & _i . attrs { _visitor.visit_attribute(it) };
     tokens_helper(_visitor, &(& _i . const_token).0);
-    _visitor.visit_ident(& _i . ident);
+    // Skipped field _i . ident;
     tokens_helper(_visitor, &(& _i . colon_token).0);
     _visitor.visit_type(& _i . ty);
     if let Some(ref it) = _i . default { 
@@ -1999,7 +1993,7 @@
 pub fn visit_trait_item_type<'ast, V: Visit<'ast> + ?Sized>(_visitor: &mut V, _i: &'ast TraitItemType) {
     for it in & _i . attrs { _visitor.visit_attribute(it) };
     tokens_helper(_visitor, &(& _i . type_token).0);
-    _visitor.visit_ident(& _i . ident);
+    // Skipped field _i . ident;
     _visitor.visit_generics(& _i . generics);
     if let Some(ref it) = _i . colon_token { tokens_helper(_visitor, &(it).0) };
     for el in Punctuated::pairs(& _i . bounds) { let it = el.value(); _visitor.visit_type_param_bound(it) };
@@ -2106,7 +2100,7 @@
 # [ cfg ( any ( feature = "full" , feature = "derive" ) ) ]
 pub fn visit_type_param<'ast, V: Visit<'ast> + ?Sized>(_visitor: &mut V, _i: &'ast TypeParam) {
     for it in & _i . attrs { _visitor.visit_attribute(it) };
-    _visitor.visit_ident(& _i . ident);
+    // Skipped field _i . ident;
     if let Some(ref it) = _i . colon_token { tokens_helper(_visitor, &(it).0) };
     for el in Punctuated::pairs(& _i . bounds) { let it = el.value(); _visitor.visit_type_param_bound(it) };
     if let Some(ref it) = _i . eq_token { tokens_helper(_visitor, &(it).0) };
@@ -2191,19 +2185,19 @@
 }
 # [ cfg ( feature = "full" ) ]
 pub fn visit_use_name<'ast, V: Visit<'ast> + ?Sized>(_visitor: &mut V, _i: &'ast UseName) {
-    _visitor.visit_ident(& _i . ident);
+    // Skipped field _i . ident;
 }
 # [ cfg ( feature = "full" ) ]
 pub fn visit_use_path<'ast, V: Visit<'ast> + ?Sized>(_visitor: &mut V, _i: &'ast UsePath) {
-    _visitor.visit_ident(& _i . ident);
+    // Skipped field _i . ident;
     tokens_helper(_visitor, &(& _i . colon2_token).0);
     _visitor.visit_use_tree(& * _i . tree);
 }
 # [ cfg ( feature = "full" ) ]
 pub fn visit_use_rename<'ast, V: Visit<'ast> + ?Sized>(_visitor: &mut V, _i: &'ast UseRename) {
-    _visitor.visit_ident(& _i . ident);
+    // Skipped field _i . ident;
     tokens_helper(_visitor, &(& _i . as_token).0);
-    _visitor.visit_ident(& _i . rename);
+    // Skipped field _i . rename;
 }
 # [ cfg ( feature = "full" ) ]
 pub fn visit_use_tree<'ast, V: Visit<'ast> + ?Sized>(_visitor: &mut V, _i: &'ast UseTree) {
@@ -2228,7 +2222,7 @@
 # [ cfg ( any ( feature = "full" , feature = "derive" ) ) ]
 pub fn visit_variant<'ast, V: Visit<'ast> + ?Sized>(_visitor: &mut V, _i: &'ast Variant) {
     for it in & _i . attrs { _visitor.visit_attribute(it) };
-    _visitor.visit_ident(& _i . ident);
+    // Skipped field _i . ident;
     _visitor.visit_fields(& _i . fields);
     if let Some(ref it) = _i . discriminant { 
             tokens_helper(_visitor, &(& ( it ) . 0).0);
diff --git a/src/gen/visit_mut.rs b/src/gen/visit_mut.rs
index 2a86a0c..0af2d52 100644
--- a/src/gen/visit_mut.rs
+++ b/src/gen/visit_mut.rs
@@ -190,8 +190,6 @@
 fn visit_generic_param_mut(&mut self, i: &mut GenericParam) { visit_generic_param_mut(self, i) }
 # [ cfg ( any ( feature = "full" , feature = "derive" ) ) ]
 fn visit_generics_mut(&mut self, i: &mut Generics) { visit_generics_mut(self, i) }
-
-fn visit_ident_mut(&mut self, i: &mut Ident) { visit_ident_mut(self, i) }
 # [ cfg ( feature = "full" ) ]
 fn visit_impl_item_mut(&mut self, i: &mut ImplItem) { visit_impl_item_mut(self, i) }
 # [ cfg ( feature = "full" ) ]
@@ -492,7 +490,7 @@
 pub fn visit_bare_fn_arg_name_mut<V: VisitMut + ?Sized>(_visitor: &mut V, _i: &mut BareFnArgName) {
     match *_i {
         BareFnArgName::Named(ref mut _binding_0, ) => {
-            _visitor.visit_ident_mut(_binding_0);
+            // Skipped field _binding_0;
         }
         BareFnArgName::Wild(ref mut _binding_0, ) => {
             tokens_helper(_visitor, &mut (_binding_0).0);
@@ -590,7 +588,7 @@
 }
 # [ cfg ( any ( feature = "full" , feature = "derive" ) ) ]
 pub fn visit_binding_mut<V: VisitMut + ?Sized>(_visitor: &mut V, _i: &mut Binding) {
-    _visitor.visit_ident_mut(& mut _i . ident);
+    // Skipped field _i . ident;
     tokens_helper(_visitor, &mut (& mut _i . eq_token).0);
     _visitor.visit_type_mut(& mut _i . ty);
 }
@@ -610,7 +608,7 @@
 pub fn visit_const_param_mut<V: VisitMut + ?Sized>(_visitor: &mut V, _i: &mut ConstParam) {
     for it in & mut _i . attrs { _visitor.visit_attribute_mut(it) };
     tokens_helper(_visitor, &mut (& mut _i . const_token).0);
-    _visitor.visit_ident_mut(& mut _i . ident);
+    // Skipped field _i . ident;
     tokens_helper(_visitor, &mut (& mut _i . colon_token).0);
     _visitor.visit_type_mut(& mut _i . ty);
     if let Some(ref mut it) = _i . eq_token { tokens_helper(_visitor, &mut (it).0) };
@@ -651,7 +649,7 @@
 pub fn visit_derive_input_mut<V: VisitMut + ?Sized>(_visitor: &mut V, _i: &mut DeriveInput) {
     for it in & mut _i . attrs { _visitor.visit_attribute_mut(it) };
     _visitor.visit_visibility_mut(& mut _i . vis);
-    _visitor.visit_ident_mut(& mut _i . ident);
+    // Skipped field _i . ident;
     _visitor.visit_generics_mut(& mut _i . generics);
     _visitor.visit_data_mut(& mut _i . data);
 }
@@ -955,7 +953,7 @@
     for it in & mut _i . attrs { _visitor.visit_attribute_mut(it) };
     _visitor.visit_expr_mut(& mut * _i . receiver);
     tokens_helper(_visitor, &mut (& mut _i . dot_token).0);
-    _visitor.visit_ident_mut(& mut _i . method);
+    // Skipped field _i . method;
     if let Some(ref mut it) = _i . turbofish { _visitor.visit_method_turbofish_mut(it) };
     tokens_helper(_visitor, &mut (& mut _i . paren_token).0);
     for mut el in Punctuated::pairs_mut(& mut _i . args) { let it = el.value_mut(); _visitor.visit_expr_mut(it) };
@@ -1073,7 +1071,7 @@
 pub fn visit_field_mut<V: VisitMut + ?Sized>(_visitor: &mut V, _i: &mut Field) {
     for it in & mut _i . attrs { _visitor.visit_attribute_mut(it) };
     _visitor.visit_visibility_mut(& mut _i . vis);
-    if let Some(ref mut it) = _i . ident { _visitor.visit_ident_mut(it) };
+    // Skipped field _i . ident;
     if let Some(ref mut it) = _i . colon_token { tokens_helper(_visitor, &mut (it).0) };
     _visitor.visit_type_mut(& mut _i . ty);
 }
@@ -1169,7 +1167,7 @@
 pub fn visit_foreign_item_fn_mut<V: VisitMut + ?Sized>(_visitor: &mut V, _i: &mut ForeignItemFn) {
     for it in & mut _i . attrs { _visitor.visit_attribute_mut(it) };
     _visitor.visit_visibility_mut(& mut _i . vis);
-    _visitor.visit_ident_mut(& mut _i . ident);
+    // Skipped field _i . ident;
     _visitor.visit_fn_decl_mut(& mut * _i . decl);
     tokens_helper(_visitor, &mut (& mut _i . semi_token).0);
 }
@@ -1179,7 +1177,7 @@
     _visitor.visit_visibility_mut(& mut _i . vis);
     tokens_helper(_visitor, &mut (& mut _i . static_token).0);
     if let Some(ref mut it) = _i . mutability { tokens_helper(_visitor, &mut (it).0) };
-    _visitor.visit_ident_mut(& mut _i . ident);
+    // Skipped field _i . ident;
     tokens_helper(_visitor, &mut (& mut _i . colon_token).0);
     _visitor.visit_type_mut(& mut * _i . ty);
     tokens_helper(_visitor, &mut (& mut _i . semi_token).0);
@@ -1189,7 +1187,7 @@
     for it in & mut _i . attrs { _visitor.visit_attribute_mut(it) };
     _visitor.visit_visibility_mut(& mut _i . vis);
     tokens_helper(_visitor, &mut (& mut _i . type_token).0);
-    _visitor.visit_ident_mut(& mut _i . ident);
+    // Skipped field _i . ident;
     tokens_helper(_visitor, &mut (& mut _i . semi_token).0);
 }
 # [ cfg ( feature = "full" ) ]
@@ -1245,10 +1243,6 @@
     if let Some(ref mut it) = _i . gt_token { tokens_helper(_visitor, &mut (it).0) };
     if let Some(ref mut it) = _i . where_clause { _visitor.visit_where_clause_mut(it) };
 }
-
-pub fn visit_ident_mut<V: VisitMut + ?Sized>(_visitor: &mut V, _i: &mut Ident) {
-    // Skipped field _i . term;
-}
 # [ cfg ( feature = "full" ) ]
 pub fn visit_impl_item_mut<V: VisitMut + ?Sized>(_visitor: &mut V, _i: &mut ImplItem) {
     match *_i {
@@ -1275,7 +1269,7 @@
     _visitor.visit_visibility_mut(& mut _i . vis);
     if let Some(ref mut it) = _i . defaultness { tokens_helper(_visitor, &mut (it).0) };
     tokens_helper(_visitor, &mut (& mut _i . const_token).0);
-    _visitor.visit_ident_mut(& mut _i . ident);
+    // Skipped field _i . ident;
     tokens_helper(_visitor, &mut (& mut _i . colon_token).0);
     _visitor.visit_type_mut(& mut _i . ty);
     tokens_helper(_visitor, &mut (& mut _i . eq_token).0);
@@ -1302,7 +1296,7 @@
     _visitor.visit_visibility_mut(& mut _i . vis);
     if let Some(ref mut it) = _i . defaultness { tokens_helper(_visitor, &mut (it).0) };
     tokens_helper(_visitor, &mut (& mut _i . type_token).0);
-    _visitor.visit_ident_mut(& mut _i . ident);
+    // Skipped field _i . ident;
     _visitor.visit_generics_mut(& mut _i . generics);
     tokens_helper(_visitor, &mut (& mut _i . eq_token).0);
     _visitor.visit_type_mut(& mut _i . ty);
@@ -1375,7 +1369,7 @@
     for it in & mut _i . attrs { _visitor.visit_attribute_mut(it) };
     _visitor.visit_visibility_mut(& mut _i . vis);
     tokens_helper(_visitor, &mut (& mut _i . const_token).0);
-    _visitor.visit_ident_mut(& mut _i . ident);
+    // Skipped field _i . ident;
     tokens_helper(_visitor, &mut (& mut _i . colon_token).0);
     _visitor.visit_type_mut(& mut * _i . ty);
     tokens_helper(_visitor, &mut (& mut _i . eq_token).0);
@@ -1387,7 +1381,7 @@
     for it in & mut _i . attrs { _visitor.visit_attribute_mut(it) };
     _visitor.visit_visibility_mut(& mut _i . vis);
     tokens_helper(_visitor, &mut (& mut _i . enum_token).0);
-    _visitor.visit_ident_mut(& mut _i . ident);
+    // Skipped field _i . ident;
     _visitor.visit_generics_mut(& mut _i . generics);
     tokens_helper(_visitor, &mut (& mut _i . brace_token).0);
     for mut el in Punctuated::pairs_mut(& mut _i . variants) { let it = el.value_mut(); _visitor.visit_variant_mut(it) };
@@ -1398,10 +1392,10 @@
     _visitor.visit_visibility_mut(& mut _i . vis);
     tokens_helper(_visitor, &mut (& mut _i . extern_token).0);
     tokens_helper(_visitor, &mut (& mut _i . crate_token).0);
-    _visitor.visit_ident_mut(& mut _i . ident);
+    // Skipped field _i . ident;
     if let Some(ref mut it) = _i . rename { 
             tokens_helper(_visitor, &mut (& mut ( it ) . 0).0);
-            _visitor.visit_ident_mut(& mut ( it ) . 1);
+            // Skipped field ( it ) . 1;
          };
     tokens_helper(_visitor, &mut (& mut _i . semi_token).0);
 }
@@ -1412,7 +1406,7 @@
     if let Some(ref mut it) = _i . constness { tokens_helper(_visitor, &mut (it).0) };
     if let Some(ref mut it) = _i . unsafety { tokens_helper(_visitor, &mut (it).0) };
     if let Some(ref mut it) = _i . abi { _visitor.visit_abi_mut(it) };
-    _visitor.visit_ident_mut(& mut _i . ident);
+    // Skipped field _i . ident;
     _visitor.visit_fn_decl_mut(& mut * _i . decl);
     _visitor.visit_block_mut(& mut * _i . block);
 }
@@ -1442,7 +1436,7 @@
 # [ cfg ( feature = "full" ) ]
 pub fn visit_item_macro_mut<V: VisitMut + ?Sized>(_visitor: &mut V, _i: &mut ItemMacro) {
     for it in & mut _i . attrs { _visitor.visit_attribute_mut(it) };
-    if let Some(ref mut it) = _i . ident { _visitor.visit_ident_mut(it) };
+    // Skipped field _i . ident;
     _visitor.visit_macro_mut(& mut _i . mac);
     if let Some(ref mut it) = _i . semi_token { tokens_helper(_visitor, &mut (it).0) };
 }
@@ -1451,7 +1445,7 @@
     for it in & mut _i . attrs { _visitor.visit_attribute_mut(it) };
     _visitor.visit_visibility_mut(& mut _i . vis);
     tokens_helper(_visitor, &mut (& mut _i . macro_token).0);
-    _visitor.visit_ident_mut(& mut _i . ident);
+    // Skipped field _i . ident;
     tokens_helper(_visitor, &mut (& mut _i . paren_token).0);
     // Skipped field _i . args;
     tokens_helper(_visitor, &mut (& mut _i . brace_token).0);
@@ -1462,7 +1456,7 @@
     for it in & mut _i . attrs { _visitor.visit_attribute_mut(it) };
     _visitor.visit_visibility_mut(& mut _i . vis);
     tokens_helper(_visitor, &mut (& mut _i . mod_token).0);
-    _visitor.visit_ident_mut(& mut _i . ident);
+    // Skipped field _i . ident;
     if let Some(ref mut it) = _i . content { 
             tokens_helper(_visitor, &mut (& mut ( it ) . 0).0);
             for it in & mut ( it ) . 1 { _visitor.visit_item_mut(it) };
@@ -1475,7 +1469,7 @@
     _visitor.visit_visibility_mut(& mut _i . vis);
     tokens_helper(_visitor, &mut (& mut _i . static_token).0);
     if let Some(ref mut it) = _i . mutability { tokens_helper(_visitor, &mut (it).0) };
-    _visitor.visit_ident_mut(& mut _i . ident);
+    // Skipped field _i . ident;
     tokens_helper(_visitor, &mut (& mut _i . colon_token).0);
     _visitor.visit_type_mut(& mut * _i . ty);
     tokens_helper(_visitor, &mut (& mut _i . eq_token).0);
@@ -1487,7 +1481,7 @@
     for it in & mut _i . attrs { _visitor.visit_attribute_mut(it) };
     _visitor.visit_visibility_mut(& mut _i . vis);
     tokens_helper(_visitor, &mut (& mut _i . struct_token).0);
-    _visitor.visit_ident_mut(& mut _i . ident);
+    // Skipped field _i . ident;
     _visitor.visit_generics_mut(& mut _i . generics);
     _visitor.visit_fields_mut(& mut _i . fields);
     if let Some(ref mut it) = _i . semi_token { tokens_helper(_visitor, &mut (it).0) };
@@ -1499,7 +1493,7 @@
     if let Some(ref mut it) = _i . unsafety { tokens_helper(_visitor, &mut (it).0) };
     if let Some(ref mut it) = _i . auto_token { tokens_helper(_visitor, &mut (it).0) };
     tokens_helper(_visitor, &mut (& mut _i . trait_token).0);
-    _visitor.visit_ident_mut(& mut _i . ident);
+    // Skipped field _i . ident;
     _visitor.visit_generics_mut(& mut _i . generics);
     if let Some(ref mut it) = _i . colon_token { tokens_helper(_visitor, &mut (it).0) };
     for mut el in Punctuated::pairs_mut(& mut _i . supertraits) { let it = el.value_mut(); _visitor.visit_type_param_bound_mut(it) };
@@ -1511,7 +1505,7 @@
     for it in & mut _i . attrs { _visitor.visit_attribute_mut(it) };
     _visitor.visit_visibility_mut(& mut _i . vis);
     tokens_helper(_visitor, &mut (& mut _i . type_token).0);
-    _visitor.visit_ident_mut(& mut _i . ident);
+    // Skipped field _i . ident;
     _visitor.visit_generics_mut(& mut _i . generics);
     tokens_helper(_visitor, &mut (& mut _i . eq_token).0);
     _visitor.visit_type_mut(& mut * _i . ty);
@@ -1522,7 +1516,7 @@
     for it in & mut _i . attrs { _visitor.visit_attribute_mut(it) };
     _visitor.visit_visibility_mut(& mut _i . vis);
     tokens_helper(_visitor, &mut (& mut _i . union_token).0);
-    _visitor.visit_ident_mut(& mut _i . ident);
+    // Skipped field _i . ident;
     _visitor.visit_generics_mut(& mut _i . generics);
     _visitor.visit_fields_named_mut(& mut _i . fields);
 }
@@ -1546,7 +1540,7 @@
 }
 # [ cfg ( any ( feature = "full" , feature = "derive" ) ) ]
 pub fn visit_lifetime_mut<V: VisitMut + ?Sized>(_visitor: &mut V, _i: &mut Lifetime) {
-    // Skipped field _i . term;
+    // Skipped field _i . ident;
 }
 # [ cfg ( any ( feature = "full" , feature = "derive" ) ) ]
 pub fn visit_lifetime_def_mut<V: VisitMut + ?Sized>(_visitor: &mut V, _i: &mut LifetimeDef) {
@@ -1657,7 +1651,7 @@
 pub fn visit_member_mut<V: VisitMut + ?Sized>(_visitor: &mut V, _i: &mut Member) {
     match *_i {
         Member::Named(ref mut _binding_0, ) => {
-            _visitor.visit_ident_mut(_binding_0);
+            // Skipped field _binding_0;
         }
         Member::Unnamed(ref mut _binding_0, ) => {
             _visitor.visit_index_mut(_binding_0);
@@ -1668,7 +1662,7 @@
 pub fn visit_meta_mut<V: VisitMut + ?Sized>(_visitor: &mut V, _i: &mut Meta) {
     match *_i {
         Meta::Word(ref mut _binding_0, ) => {
-            _visitor.visit_ident_mut(_binding_0);
+            // Skipped field _binding_0;
         }
         Meta::List(ref mut _binding_0, ) => {
             _visitor.visit_meta_list_mut(_binding_0);
@@ -1680,13 +1674,13 @@
 }
 # [ cfg ( any ( feature = "full" , feature = "derive" ) ) ]
 pub fn visit_meta_list_mut<V: VisitMut + ?Sized>(_visitor: &mut V, _i: &mut MetaList) {
-    _visitor.visit_ident_mut(& mut _i . ident);
+    // Skipped field _i . ident;
     tokens_helper(_visitor, &mut (& mut _i . paren_token).0);
     for mut el in Punctuated::pairs_mut(& mut _i . nested) { let it = el.value_mut(); _visitor.visit_nested_meta_mut(it) };
 }
 # [ cfg ( any ( feature = "full" , feature = "derive" ) ) ]
 pub fn visit_meta_name_value_mut<V: VisitMut + ?Sized>(_visitor: &mut V, _i: &mut MetaNameValue) {
-    _visitor.visit_ident_mut(& mut _i . ident);
+    // Skipped field _i . ident;
     tokens_helper(_visitor, &mut (& mut _i . eq_token).0);
     _visitor.visit_lit_mut(& mut _i . lit);
 }
@@ -1695,7 +1689,7 @@
     if let Some(ref mut it) = _i . constness { tokens_helper(_visitor, &mut (it).0) };
     if let Some(ref mut it) = _i . unsafety { tokens_helper(_visitor, &mut (it).0) };
     if let Some(ref mut it) = _i . abi { _visitor.visit_abi_mut(it) };
-    _visitor.visit_ident_mut(& mut _i . ident);
+    // Skipped field _i . ident;
     _visitor.visit_fn_decl_mut(& mut _i . decl);
 }
 # [ cfg ( any ( feature = "full" , feature = "derive" ) ) ] # [ cfg ( feature = "full" ) ]
@@ -1775,7 +1769,7 @@
 pub fn visit_pat_ident_mut<V: VisitMut + ?Sized>(_visitor: &mut V, _i: &mut PatIdent) {
     if let Some(ref mut it) = _i . by_ref { tokens_helper(_visitor, &mut (it).0) };
     if let Some(ref mut it) = _i . mutability { tokens_helper(_visitor, &mut (it).0) };
-    _visitor.visit_ident_mut(& mut _i . ident);
+    // Skipped field _i . ident;
     if let Some(ref mut it) = _i . subpat { 
             tokens_helper(_visitor, &mut (& mut ( it ) . 0).0);
             _visitor.visit_pat_mut(& mut * ( it ) . 1);
@@ -1862,7 +1856,7 @@
 }
 # [ cfg ( any ( feature = "full" , feature = "derive" ) ) ]
 pub fn visit_path_segment_mut<V: VisitMut + ?Sized>(_visitor: &mut V, _i: &mut PathSegment) {
-    _visitor.visit_ident_mut(& mut _i . ident);
+    // Skipped field _i . ident;
     _visitor.visit_path_arguments_mut(& mut _i . arguments);
 }
 # [ cfg ( any ( feature = "full" , feature = "derive" ) ) ]
@@ -1974,7 +1968,7 @@
 pub fn visit_trait_item_const_mut<V: VisitMut + ?Sized>(_visitor: &mut V, _i: &mut TraitItemConst) {
     for it in & mut _i . attrs { _visitor.visit_attribute_mut(it) };
     tokens_helper(_visitor, &mut (& mut _i . const_token).0);
-    _visitor.visit_ident_mut(& mut _i . ident);
+    // Skipped field _i . ident;
     tokens_helper(_visitor, &mut (& mut _i . colon_token).0);
     _visitor.visit_type_mut(& mut _i . ty);
     if let Some(ref mut it) = _i . default { 
@@ -2000,7 +1994,7 @@
 pub fn visit_trait_item_type_mut<V: VisitMut + ?Sized>(_visitor: &mut V, _i: &mut TraitItemType) {
     for it in & mut _i . attrs { _visitor.visit_attribute_mut(it) };
     tokens_helper(_visitor, &mut (& mut _i . type_token).0);
-    _visitor.visit_ident_mut(& mut _i . ident);
+    // Skipped field _i . ident;
     _visitor.visit_generics_mut(& mut _i . generics);
     if let Some(ref mut it) = _i . colon_token { tokens_helper(_visitor, &mut (it).0) };
     for mut el in Punctuated::pairs_mut(& mut _i . bounds) { let it = el.value_mut(); _visitor.visit_type_param_bound_mut(it) };
@@ -2107,7 +2101,7 @@
 # [ cfg ( any ( feature = "full" , feature = "derive" ) ) ]
 pub fn visit_type_param_mut<V: VisitMut + ?Sized>(_visitor: &mut V, _i: &mut TypeParam) {
     for it in & mut _i . attrs { _visitor.visit_attribute_mut(it) };
-    _visitor.visit_ident_mut(& mut _i . ident);
+    // Skipped field _i . ident;
     if let Some(ref mut it) = _i . colon_token { tokens_helper(_visitor, &mut (it).0) };
     for mut el in Punctuated::pairs_mut(& mut _i . bounds) { let it = el.value_mut(); _visitor.visit_type_param_bound_mut(it) };
     if let Some(ref mut it) = _i . eq_token { tokens_helper(_visitor, &mut (it).0) };
@@ -2192,19 +2186,19 @@
 }
 # [ cfg ( feature = "full" ) ]
 pub fn visit_use_name_mut<V: VisitMut + ?Sized>(_visitor: &mut V, _i: &mut UseName) {
-    _visitor.visit_ident_mut(& mut _i . ident);
+    // Skipped field _i . ident;
 }
 # [ cfg ( feature = "full" ) ]
 pub fn visit_use_path_mut<V: VisitMut + ?Sized>(_visitor: &mut V, _i: &mut UsePath) {
-    _visitor.visit_ident_mut(& mut _i . ident);
+    // Skipped field _i . ident;
     tokens_helper(_visitor, &mut (& mut _i . colon2_token).0);
     _visitor.visit_use_tree_mut(& mut * _i . tree);
 }
 # [ cfg ( feature = "full" ) ]
 pub fn visit_use_rename_mut<V: VisitMut + ?Sized>(_visitor: &mut V, _i: &mut UseRename) {
-    _visitor.visit_ident_mut(& mut _i . ident);
+    // Skipped field _i . ident;
     tokens_helper(_visitor, &mut (& mut _i . as_token).0);
-    _visitor.visit_ident_mut(& mut _i . rename);
+    // Skipped field _i . rename;
 }
 # [ cfg ( feature = "full" ) ]
 pub fn visit_use_tree_mut<V: VisitMut + ?Sized>(_visitor: &mut V, _i: &mut UseTree) {
@@ -2229,7 +2223,7 @@
 # [ cfg ( any ( feature = "full" , feature = "derive" ) ) ]
 pub fn visit_variant_mut<V: VisitMut + ?Sized>(_visitor: &mut V, _i: &mut Variant) {
     for it in & mut _i . attrs { _visitor.visit_attribute_mut(it) };
-    _visitor.visit_ident_mut(& mut _i . ident);
+    // Skipped field _i . ident;
     _visitor.visit_fields_mut(& mut _i . fields);
     if let Some(ref mut it) = _i . discriminant { 
             tokens_helper(_visitor, &mut (& mut ( it ) . 0).0);