// This file is @generated by syn-internal-codegen. // It is not intended for manual editing. #![allow(unused_variables)] #![allow(clippy::needless_pass_by_ref_mut)] #[cfg(any(feature = "full", feature = "derive"))] use crate::punctuated::Punctuated; #[cfg(feature = "full")] macro_rules! full { ($e:expr) => { $e }; } #[cfg(all(feature = "derive", not(feature = "full")))] macro_rules! full { ($e:expr) => { unreachable!() }; } macro_rules! skip { ($($tt:tt)*) => {}; } /// Syntax tree traversal to mutate an exclusive borrow of a syntax tree in /// place. /// /// See the [module documentation] for details. /// /// [module documentation]: self pub trait VisitMut { #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_abi_mut(&mut self, i: &mut crate::Abi) { visit_abi_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_angle_bracketed_generic_arguments_mut( &mut self, i: &mut crate::AngleBracketedGenericArguments, ) { visit_angle_bracketed_generic_arguments_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_arm_mut(&mut self, i: &mut crate::Arm) { visit_arm_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_assoc_const_mut(&mut self, i: &mut crate::AssocConst) { visit_assoc_const_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_assoc_type_mut(&mut self, i: &mut crate::AssocType) { visit_assoc_type_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_attr_style_mut(&mut self, i: &mut crate::AttrStyle) { visit_attr_style_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_attribute_mut(&mut self, i: &mut crate::Attribute) { visit_attribute_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_bare_fn_arg_mut(&mut self, i: &mut crate::BareFnArg) { visit_bare_fn_arg_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_bare_variadic_mut(&mut self, i: &mut crate::BareVariadic) { visit_bare_variadic_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_bin_op_mut(&mut self, i: &mut crate::BinOp) { visit_bin_op_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_block_mut(&mut self, i: &mut crate::Block) { visit_block_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_bound_lifetimes_mut(&mut self, i: &mut crate::BoundLifetimes) { visit_bound_lifetimes_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_const_param_mut(&mut self, i: &mut crate::ConstParam) { visit_const_param_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_constraint_mut(&mut self, i: &mut crate::Constraint) { visit_constraint_mut(self, i); } #[cfg(feature = "derive")] #[cfg_attr(doc_cfg, doc(cfg(feature = "derive")))] fn visit_data_mut(&mut self, i: &mut crate::Data) { visit_data_mut(self, i); } #[cfg(feature = "derive")] #[cfg_attr(doc_cfg, doc(cfg(feature = "derive")))] fn visit_data_enum_mut(&mut self, i: &mut crate::DataEnum) { visit_data_enum_mut(self, i); } #[cfg(feature = "derive")] #[cfg_attr(doc_cfg, doc(cfg(feature = "derive")))] fn visit_data_struct_mut(&mut self, i: &mut crate::DataStruct) { visit_data_struct_mut(self, i); } #[cfg(feature = "derive")] #[cfg_attr(doc_cfg, doc(cfg(feature = "derive")))] fn visit_data_union_mut(&mut self, i: &mut crate::DataUnion) { visit_data_union_mut(self, i); } #[cfg(feature = "derive")] #[cfg_attr(doc_cfg, doc(cfg(feature = "derive")))] fn visit_derive_input_mut(&mut self, i: &mut crate::DeriveInput) { visit_derive_input_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_expr_mut(&mut self, i: &mut crate::Expr) { visit_expr_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_expr_array_mut(&mut self, i: &mut crate::ExprArray) { visit_expr_array_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_expr_assign_mut(&mut self, i: &mut crate::ExprAssign) { visit_expr_assign_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_expr_async_mut(&mut self, i: &mut crate::ExprAsync) { visit_expr_async_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_expr_await_mut(&mut self, i: &mut crate::ExprAwait) { visit_expr_await_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_expr_binary_mut(&mut self, i: &mut crate::ExprBinary) { visit_expr_binary_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_expr_block_mut(&mut self, i: &mut crate::ExprBlock) { visit_expr_block_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_expr_break_mut(&mut self, i: &mut crate::ExprBreak) { visit_expr_break_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_expr_call_mut(&mut self, i: &mut crate::ExprCall) { visit_expr_call_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_expr_cast_mut(&mut self, i: &mut crate::ExprCast) { visit_expr_cast_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_expr_closure_mut(&mut self, i: &mut crate::ExprClosure) { visit_expr_closure_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_expr_const_mut(&mut self, i: &mut crate::ExprConst) { visit_expr_const_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_expr_continue_mut(&mut self, i: &mut crate::ExprContinue) { visit_expr_continue_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_expr_field_mut(&mut self, i: &mut crate::ExprField) { visit_expr_field_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_expr_for_loop_mut(&mut self, i: &mut crate::ExprForLoop) { visit_expr_for_loop_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_expr_group_mut(&mut self, i: &mut crate::ExprGroup) { visit_expr_group_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_expr_if_mut(&mut self, i: &mut crate::ExprIf) { visit_expr_if_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_expr_index_mut(&mut self, i: &mut crate::ExprIndex) { visit_expr_index_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_expr_infer_mut(&mut self, i: &mut crate::ExprInfer) { visit_expr_infer_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_expr_let_mut(&mut self, i: &mut crate::ExprLet) { visit_expr_let_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_expr_lit_mut(&mut self, i: &mut crate::ExprLit) { visit_expr_lit_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_expr_loop_mut(&mut self, i: &mut crate::ExprLoop) { visit_expr_loop_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_expr_macro_mut(&mut self, i: &mut crate::ExprMacro) { visit_expr_macro_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_expr_match_mut(&mut self, i: &mut crate::ExprMatch) { visit_expr_match_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_expr_method_call_mut(&mut self, i: &mut crate::ExprMethodCall) { visit_expr_method_call_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_expr_paren_mut(&mut self, i: &mut crate::ExprParen) { visit_expr_paren_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_expr_path_mut(&mut self, i: &mut crate::ExprPath) { visit_expr_path_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_expr_range_mut(&mut self, i: &mut crate::ExprRange) { visit_expr_range_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_expr_reference_mut(&mut self, i: &mut crate::ExprReference) { visit_expr_reference_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_expr_repeat_mut(&mut self, i: &mut crate::ExprRepeat) { visit_expr_repeat_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_expr_return_mut(&mut self, i: &mut crate::ExprReturn) { visit_expr_return_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_expr_struct_mut(&mut self, i: &mut crate::ExprStruct) { visit_expr_struct_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_expr_try_mut(&mut self, i: &mut crate::ExprTry) { visit_expr_try_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_expr_try_block_mut(&mut self, i: &mut crate::ExprTryBlock) { visit_expr_try_block_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_expr_tuple_mut(&mut self, i: &mut crate::ExprTuple) { visit_expr_tuple_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_expr_unary_mut(&mut self, i: &mut crate::ExprUnary) { visit_expr_unary_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_expr_unsafe_mut(&mut self, i: &mut crate::ExprUnsafe) { visit_expr_unsafe_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_expr_while_mut(&mut self, i: &mut crate::ExprWhile) { visit_expr_while_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_expr_yield_mut(&mut self, i: &mut crate::ExprYield) { visit_expr_yield_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_field_mut(&mut self, i: &mut crate::Field) { visit_field_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_field_mutability_mut(&mut self, i: &mut crate::FieldMutability) { visit_field_mutability_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_field_pat_mut(&mut self, i: &mut crate::FieldPat) { visit_field_pat_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_field_value_mut(&mut self, i: &mut crate::FieldValue) { visit_field_value_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_fields_mut(&mut self, i: &mut crate::Fields) { visit_fields_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_fields_named_mut(&mut self, i: &mut crate::FieldsNamed) { visit_fields_named_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_fields_unnamed_mut(&mut self, i: &mut crate::FieldsUnnamed) { visit_fields_unnamed_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_file_mut(&mut self, i: &mut crate::File) { visit_file_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_fn_arg_mut(&mut self, i: &mut crate::FnArg) { visit_fn_arg_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_foreign_item_mut(&mut self, i: &mut crate::ForeignItem) { visit_foreign_item_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_foreign_item_fn_mut(&mut self, i: &mut crate::ForeignItemFn) { visit_foreign_item_fn_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_foreign_item_macro_mut(&mut self, i: &mut crate::ForeignItemMacro) { visit_foreign_item_macro_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_foreign_item_static_mut(&mut self, i: &mut crate::ForeignItemStatic) { visit_foreign_item_static_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_foreign_item_type_mut(&mut self, i: &mut crate::ForeignItemType) { visit_foreign_item_type_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_generic_argument_mut(&mut self, i: &mut crate::GenericArgument) { visit_generic_argument_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_generic_param_mut(&mut self, i: &mut crate::GenericParam) { visit_generic_param_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_generics_mut(&mut self, i: &mut crate::Generics) { visit_generics_mut(self, i); } fn visit_ident_mut(&mut self, i: &mut proc_macro2::Ident) { visit_ident_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_impl_item_mut(&mut self, i: &mut crate::ImplItem) { visit_impl_item_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_impl_item_const_mut(&mut self, i: &mut crate::ImplItemConst) { visit_impl_item_const_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_impl_item_fn_mut(&mut self, i: &mut crate::ImplItemFn) { visit_impl_item_fn_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_impl_item_macro_mut(&mut self, i: &mut crate::ImplItemMacro) { visit_impl_item_macro_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_impl_item_type_mut(&mut self, i: &mut crate::ImplItemType) { visit_impl_item_type_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_impl_restriction_mut(&mut self, i: &mut crate::ImplRestriction) { visit_impl_restriction_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_index_mut(&mut self, i: &mut crate::Index) { visit_index_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_item_mut(&mut self, i: &mut crate::Item) { visit_item_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_item_const_mut(&mut self, i: &mut crate::ItemConst) { visit_item_const_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_item_enum_mut(&mut self, i: &mut crate::ItemEnum) { visit_item_enum_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_item_extern_crate_mut(&mut self, i: &mut crate::ItemExternCrate) { visit_item_extern_crate_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_item_fn_mut(&mut self, i: &mut crate::ItemFn) { visit_item_fn_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_item_foreign_mod_mut(&mut self, i: &mut crate::ItemForeignMod) { visit_item_foreign_mod_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_item_impl_mut(&mut self, i: &mut crate::ItemImpl) { visit_item_impl_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_item_macro_mut(&mut self, i: &mut crate::ItemMacro) { visit_item_macro_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_item_mod_mut(&mut self, i: &mut crate::ItemMod) { visit_item_mod_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_item_static_mut(&mut self, i: &mut crate::ItemStatic) { visit_item_static_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_item_struct_mut(&mut self, i: &mut crate::ItemStruct) { visit_item_struct_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_item_trait_mut(&mut self, i: &mut crate::ItemTrait) { visit_item_trait_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_item_trait_alias_mut(&mut self, i: &mut crate::ItemTraitAlias) { visit_item_trait_alias_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_item_type_mut(&mut self, i: &mut crate::ItemType) { visit_item_type_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_item_union_mut(&mut self, i: &mut crate::ItemUnion) { visit_item_union_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_item_use_mut(&mut self, i: &mut crate::ItemUse) { visit_item_use_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_label_mut(&mut self, i: &mut crate::Label) { visit_label_mut(self, i); } fn visit_lifetime_mut(&mut self, i: &mut crate::Lifetime) { visit_lifetime_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_lifetime_param_mut(&mut self, i: &mut crate::LifetimeParam) { visit_lifetime_param_mut(self, i); } fn visit_lit_mut(&mut self, i: &mut crate::Lit) { visit_lit_mut(self, i); } fn visit_lit_bool_mut(&mut self, i: &mut crate::LitBool) { visit_lit_bool_mut(self, i); } fn visit_lit_byte_mut(&mut self, i: &mut crate::LitByte) { visit_lit_byte_mut(self, i); } fn visit_lit_byte_str_mut(&mut self, i: &mut crate::LitByteStr) { visit_lit_byte_str_mut(self, i); } fn visit_lit_char_mut(&mut self, i: &mut crate::LitChar) { visit_lit_char_mut(self, i); } fn visit_lit_float_mut(&mut self, i: &mut crate::LitFloat) { visit_lit_float_mut(self, i); } fn visit_lit_int_mut(&mut self, i: &mut crate::LitInt) { visit_lit_int_mut(self, i); } fn visit_lit_str_mut(&mut self, i: &mut crate::LitStr) { visit_lit_str_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_local_mut(&mut self, i: &mut crate::Local) { visit_local_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_local_init_mut(&mut self, i: &mut crate::LocalInit) { visit_local_init_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_macro_mut(&mut self, i: &mut crate::Macro) { visit_macro_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_macro_delimiter_mut(&mut self, i: &mut crate::MacroDelimiter) { visit_macro_delimiter_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_member_mut(&mut self, i: &mut crate::Member) { visit_member_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_meta_mut(&mut self, i: &mut crate::Meta) { visit_meta_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_meta_list_mut(&mut self, i: &mut crate::MetaList) { visit_meta_list_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_meta_name_value_mut(&mut self, i: &mut crate::MetaNameValue) { visit_meta_name_value_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_parenthesized_generic_arguments_mut( &mut self, i: &mut crate::ParenthesizedGenericArguments, ) { visit_parenthesized_generic_arguments_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_pat_mut(&mut self, i: &mut crate::Pat) { visit_pat_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_pat_ident_mut(&mut self, i: &mut crate::PatIdent) { visit_pat_ident_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_pat_or_mut(&mut self, i: &mut crate::PatOr) { visit_pat_or_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_pat_paren_mut(&mut self, i: &mut crate::PatParen) { visit_pat_paren_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_pat_reference_mut(&mut self, i: &mut crate::PatReference) { visit_pat_reference_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_pat_rest_mut(&mut self, i: &mut crate::PatRest) { visit_pat_rest_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_pat_slice_mut(&mut self, i: &mut crate::PatSlice) { visit_pat_slice_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_pat_struct_mut(&mut self, i: &mut crate::PatStruct) { visit_pat_struct_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_pat_tuple_mut(&mut self, i: &mut crate::PatTuple) { visit_pat_tuple_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_pat_tuple_struct_mut(&mut self, i: &mut crate::PatTupleStruct) { visit_pat_tuple_struct_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_pat_type_mut(&mut self, i: &mut crate::PatType) { visit_pat_type_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_pat_wild_mut(&mut self, i: &mut crate::PatWild) { visit_pat_wild_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_path_mut(&mut self, i: &mut crate::Path) { visit_path_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_path_arguments_mut(&mut self, i: &mut crate::PathArguments) { visit_path_arguments_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_path_segment_mut(&mut self, i: &mut crate::PathSegment) { visit_path_segment_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_predicate_lifetime_mut(&mut self, i: &mut crate::PredicateLifetime) { visit_predicate_lifetime_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_predicate_type_mut(&mut self, i: &mut crate::PredicateType) { visit_predicate_type_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_qself_mut(&mut self, i: &mut crate::QSelf) { visit_qself_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_range_limits_mut(&mut self, i: &mut crate::RangeLimits) { visit_range_limits_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_receiver_mut(&mut self, i: &mut crate::Receiver) { visit_receiver_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_return_type_mut(&mut self, i: &mut crate::ReturnType) { visit_return_type_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_signature_mut(&mut self, i: &mut crate::Signature) { visit_signature_mut(self, i); } fn visit_span_mut(&mut self, i: &mut proc_macro2::Span) { visit_span_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_static_mutability_mut(&mut self, i: &mut crate::StaticMutability) { visit_static_mutability_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_stmt_mut(&mut self, i: &mut crate::Stmt) { visit_stmt_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_stmt_macro_mut(&mut self, i: &mut crate::StmtMacro) { visit_stmt_macro_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_trait_bound_mut(&mut self, i: &mut crate::TraitBound) { visit_trait_bound_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_trait_bound_modifier_mut(&mut self, i: &mut crate::TraitBoundModifier) { visit_trait_bound_modifier_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_trait_item_mut(&mut self, i: &mut crate::TraitItem) { visit_trait_item_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_trait_item_const_mut(&mut self, i: &mut crate::TraitItemConst) { visit_trait_item_const_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_trait_item_fn_mut(&mut self, i: &mut crate::TraitItemFn) { visit_trait_item_fn_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_trait_item_macro_mut(&mut self, i: &mut crate::TraitItemMacro) { visit_trait_item_macro_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_trait_item_type_mut(&mut self, i: &mut crate::TraitItemType) { visit_trait_item_type_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_type_mut(&mut self, i: &mut crate::Type) { visit_type_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_type_array_mut(&mut self, i: &mut crate::TypeArray) { visit_type_array_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_type_bare_fn_mut(&mut self, i: &mut crate::TypeBareFn) { visit_type_bare_fn_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_type_group_mut(&mut self, i: &mut crate::TypeGroup) { visit_type_group_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_type_impl_trait_mut(&mut self, i: &mut crate::TypeImplTrait) { visit_type_impl_trait_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_type_infer_mut(&mut self, i: &mut crate::TypeInfer) { visit_type_infer_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_type_macro_mut(&mut self, i: &mut crate::TypeMacro) { visit_type_macro_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_type_never_mut(&mut self, i: &mut crate::TypeNever) { visit_type_never_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_type_param_mut(&mut self, i: &mut crate::TypeParam) { visit_type_param_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_type_param_bound_mut(&mut self, i: &mut crate::TypeParamBound) { visit_type_param_bound_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_type_paren_mut(&mut self, i: &mut crate::TypeParen) { visit_type_paren_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_type_path_mut(&mut self, i: &mut crate::TypePath) { visit_type_path_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_type_ptr_mut(&mut self, i: &mut crate::TypePtr) { visit_type_ptr_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_type_reference_mut(&mut self, i: &mut crate::TypeReference) { visit_type_reference_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_type_slice_mut(&mut self, i: &mut crate::TypeSlice) { visit_type_slice_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_type_trait_object_mut(&mut self, i: &mut crate::TypeTraitObject) { visit_type_trait_object_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_type_tuple_mut(&mut self, i: &mut crate::TypeTuple) { visit_type_tuple_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_un_op_mut(&mut self, i: &mut crate::UnOp) { visit_un_op_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_use_glob_mut(&mut self, i: &mut crate::UseGlob) { visit_use_glob_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_use_group_mut(&mut self, i: &mut crate::UseGroup) { visit_use_group_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_use_name_mut(&mut self, i: &mut crate::UseName) { visit_use_name_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_use_path_mut(&mut self, i: &mut crate::UsePath) { visit_use_path_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_use_rename_mut(&mut self, i: &mut crate::UseRename) { visit_use_rename_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_use_tree_mut(&mut self, i: &mut crate::UseTree) { visit_use_tree_mut(self, i); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] fn visit_variadic_mut(&mut self, i: &mut crate::Variadic) { visit_variadic_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_variant_mut(&mut self, i: &mut crate::Variant) { visit_variant_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_vis_restricted_mut(&mut self, i: &mut crate::VisRestricted) { visit_vis_restricted_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_visibility_mut(&mut self, i: &mut crate::Visibility) { visit_visibility_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_where_clause_mut(&mut self, i: &mut crate::WhereClause) { visit_where_clause_mut(self, i); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] fn visit_where_predicate_mut(&mut self, i: &mut crate::WherePredicate) { visit_where_predicate_mut(self, i); } } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_abi_mut(v: &mut V, node: &mut crate::Abi) where V: VisitMut + ?Sized, { skip!(node.extern_token); if let Some(it) = &mut node.name { v.visit_lit_str_mut(it); } } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_angle_bracketed_generic_arguments_mut( v: &mut V, node: &mut crate::AngleBracketedGenericArguments, ) where V: VisitMut + ?Sized, { skip!(node.colon2_token); skip!(node.lt_token); for mut el in Punctuated::pairs_mut(&mut node.args) { let it = el.value_mut(); v.visit_generic_argument_mut(it); } skip!(node.gt_token); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_arm_mut(v: &mut V, node: &mut crate::Arm) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_pat_mut(&mut node.pat); if let Some(it) = &mut node.guard { skip!((it).0); v.visit_expr_mut(&mut *(it).1); } skip!(node.fat_arrow_token); v.visit_expr_mut(&mut *node.body); skip!(node.comma); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_assoc_const_mut(v: &mut V, node: &mut crate::AssocConst) where V: VisitMut + ?Sized, { v.visit_ident_mut(&mut node.ident); if let Some(it) = &mut node.generics { v.visit_angle_bracketed_generic_arguments_mut(it); } skip!(node.eq_token); v.visit_expr_mut(&mut node.value); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_assoc_type_mut(v: &mut V, node: &mut crate::AssocType) where V: VisitMut + ?Sized, { v.visit_ident_mut(&mut node.ident); if let Some(it) = &mut node.generics { v.visit_angle_bracketed_generic_arguments_mut(it); } skip!(node.eq_token); v.visit_type_mut(&mut node.ty); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_attr_style_mut(v: &mut V, node: &mut crate::AttrStyle) where V: VisitMut + ?Sized, { match node { crate::AttrStyle::Outer => {} crate::AttrStyle::Inner(_binding_0) => { skip!(_binding_0); } } } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_attribute_mut(v: &mut V, node: &mut crate::Attribute) where V: VisitMut + ?Sized, { skip!(node.pound_token); v.visit_attr_style_mut(&mut node.style); skip!(node.bracket_token); v.visit_meta_mut(&mut node.meta); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_bare_fn_arg_mut(v: &mut V, node: &mut crate::BareFnArg) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } if let Some(it) = &mut node.name { v.visit_ident_mut(&mut (it).0); skip!((it).1); } v.visit_type_mut(&mut node.ty); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_bare_variadic_mut(v: &mut V, node: &mut crate::BareVariadic) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } if let Some(it) = &mut node.name { v.visit_ident_mut(&mut (it).0); skip!((it).1); } skip!(node.dots); skip!(node.comma); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_bin_op_mut(v: &mut V, node: &mut crate::BinOp) where V: VisitMut + ?Sized, { match node { crate::BinOp::Add(_binding_0) => { skip!(_binding_0); } crate::BinOp::Sub(_binding_0) => { skip!(_binding_0); } crate::BinOp::Mul(_binding_0) => { skip!(_binding_0); } crate::BinOp::Div(_binding_0) => { skip!(_binding_0); } crate::BinOp::Rem(_binding_0) => { skip!(_binding_0); } crate::BinOp::And(_binding_0) => { skip!(_binding_0); } crate::BinOp::Or(_binding_0) => { skip!(_binding_0); } crate::BinOp::BitXor(_binding_0) => { skip!(_binding_0); } crate::BinOp::BitAnd(_binding_0) => { skip!(_binding_0); } crate::BinOp::BitOr(_binding_0) => { skip!(_binding_0); } crate::BinOp::Shl(_binding_0) => { skip!(_binding_0); } crate::BinOp::Shr(_binding_0) => { skip!(_binding_0); } crate::BinOp::Eq(_binding_0) => { skip!(_binding_0); } crate::BinOp::Lt(_binding_0) => { skip!(_binding_0); } crate::BinOp::Le(_binding_0) => { skip!(_binding_0); } crate::BinOp::Ne(_binding_0) => { skip!(_binding_0); } crate::BinOp::Ge(_binding_0) => { skip!(_binding_0); } crate::BinOp::Gt(_binding_0) => { skip!(_binding_0); } crate::BinOp::AddAssign(_binding_0) => { skip!(_binding_0); } crate::BinOp::SubAssign(_binding_0) => { skip!(_binding_0); } crate::BinOp::MulAssign(_binding_0) => { skip!(_binding_0); } crate::BinOp::DivAssign(_binding_0) => { skip!(_binding_0); } crate::BinOp::RemAssign(_binding_0) => { skip!(_binding_0); } crate::BinOp::BitXorAssign(_binding_0) => { skip!(_binding_0); } crate::BinOp::BitAndAssign(_binding_0) => { skip!(_binding_0); } crate::BinOp::BitOrAssign(_binding_0) => { skip!(_binding_0); } crate::BinOp::ShlAssign(_binding_0) => { skip!(_binding_0); } crate::BinOp::ShrAssign(_binding_0) => { skip!(_binding_0); } } } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_block_mut(v: &mut V, node: &mut crate::Block) where V: VisitMut + ?Sized, { skip!(node.brace_token); for it in &mut node.stmts { v.visit_stmt_mut(it); } } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_bound_lifetimes_mut(v: &mut V, node: &mut crate::BoundLifetimes) where V: VisitMut + ?Sized, { skip!(node.for_token); skip!(node.lt_token); for mut el in Punctuated::pairs_mut(&mut node.lifetimes) { let it = el.value_mut(); v.visit_generic_param_mut(it); } skip!(node.gt_token); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_const_param_mut(v: &mut V, node: &mut crate::ConstParam) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } skip!(node.const_token); v.visit_ident_mut(&mut node.ident); skip!(node.colon_token); v.visit_type_mut(&mut node.ty); skip!(node.eq_token); if let Some(it) = &mut node.default { v.visit_expr_mut(it); } } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_constraint_mut(v: &mut V, node: &mut crate::Constraint) where V: VisitMut + ?Sized, { v.visit_ident_mut(&mut node.ident); if let Some(it) = &mut node.generics { v.visit_angle_bracketed_generic_arguments_mut(it); } skip!(node.colon_token); for mut el in Punctuated::pairs_mut(&mut node.bounds) { let it = el.value_mut(); v.visit_type_param_bound_mut(it); } } #[cfg(feature = "derive")] #[cfg_attr(doc_cfg, doc(cfg(feature = "derive")))] pub fn visit_data_mut(v: &mut V, node: &mut crate::Data) where V: VisitMut + ?Sized, { match node { crate::Data::Struct(_binding_0) => { v.visit_data_struct_mut(_binding_0); } crate::Data::Enum(_binding_0) => { v.visit_data_enum_mut(_binding_0); } crate::Data::Union(_binding_0) => { v.visit_data_union_mut(_binding_0); } } } #[cfg(feature = "derive")] #[cfg_attr(doc_cfg, doc(cfg(feature = "derive")))] pub fn visit_data_enum_mut(v: &mut V, node: &mut crate::DataEnum) where V: VisitMut + ?Sized, { skip!(node.enum_token); skip!(node.brace_token); for mut el in Punctuated::pairs_mut(&mut node.variants) { let it = el.value_mut(); v.visit_variant_mut(it); } } #[cfg(feature = "derive")] #[cfg_attr(doc_cfg, doc(cfg(feature = "derive")))] pub fn visit_data_struct_mut(v: &mut V, node: &mut crate::DataStruct) where V: VisitMut + ?Sized, { skip!(node.struct_token); v.visit_fields_mut(&mut node.fields); skip!(node.semi_token); } #[cfg(feature = "derive")] #[cfg_attr(doc_cfg, doc(cfg(feature = "derive")))] pub fn visit_data_union_mut(v: &mut V, node: &mut crate::DataUnion) where V: VisitMut + ?Sized, { skip!(node.union_token); v.visit_fields_named_mut(&mut node.fields); } #[cfg(feature = "derive")] #[cfg_attr(doc_cfg, doc(cfg(feature = "derive")))] pub fn visit_derive_input_mut(v: &mut V, node: &mut crate::DeriveInput) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_visibility_mut(&mut node.vis); v.visit_ident_mut(&mut node.ident); v.visit_generics_mut(&mut node.generics); v.visit_data_mut(&mut node.data); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_expr_mut(v: &mut V, node: &mut crate::Expr) where V: VisitMut + ?Sized, { match node { crate::Expr::Array(_binding_0) => { full!(v.visit_expr_array_mut(_binding_0)); } crate::Expr::Assign(_binding_0) => { full!(v.visit_expr_assign_mut(_binding_0)); } crate::Expr::Async(_binding_0) => { full!(v.visit_expr_async_mut(_binding_0)); } crate::Expr::Await(_binding_0) => { full!(v.visit_expr_await_mut(_binding_0)); } crate::Expr::Binary(_binding_0) => { v.visit_expr_binary_mut(_binding_0); } crate::Expr::Block(_binding_0) => { full!(v.visit_expr_block_mut(_binding_0)); } crate::Expr::Break(_binding_0) => { full!(v.visit_expr_break_mut(_binding_0)); } crate::Expr::Call(_binding_0) => { v.visit_expr_call_mut(_binding_0); } crate::Expr::Cast(_binding_0) => { v.visit_expr_cast_mut(_binding_0); } crate::Expr::Closure(_binding_0) => { full!(v.visit_expr_closure_mut(_binding_0)); } crate::Expr::Const(_binding_0) => { full!(v.visit_expr_const_mut(_binding_0)); } crate::Expr::Continue(_binding_0) => { full!(v.visit_expr_continue_mut(_binding_0)); } crate::Expr::Field(_binding_0) => { v.visit_expr_field_mut(_binding_0); } crate::Expr::ForLoop(_binding_0) => { full!(v.visit_expr_for_loop_mut(_binding_0)); } crate::Expr::Group(_binding_0) => { v.visit_expr_group_mut(_binding_0); } crate::Expr::If(_binding_0) => { full!(v.visit_expr_if_mut(_binding_0)); } crate::Expr::Index(_binding_0) => { v.visit_expr_index_mut(_binding_0); } crate::Expr::Infer(_binding_0) => { full!(v.visit_expr_infer_mut(_binding_0)); } crate::Expr::Let(_binding_0) => { full!(v.visit_expr_let_mut(_binding_0)); } crate::Expr::Lit(_binding_0) => { v.visit_expr_lit_mut(_binding_0); } crate::Expr::Loop(_binding_0) => { full!(v.visit_expr_loop_mut(_binding_0)); } crate::Expr::Macro(_binding_0) => { v.visit_expr_macro_mut(_binding_0); } crate::Expr::Match(_binding_0) => { full!(v.visit_expr_match_mut(_binding_0)); } crate::Expr::MethodCall(_binding_0) => { v.visit_expr_method_call_mut(_binding_0); } crate::Expr::Paren(_binding_0) => { v.visit_expr_paren_mut(_binding_0); } crate::Expr::Path(_binding_0) => { v.visit_expr_path_mut(_binding_0); } crate::Expr::Range(_binding_0) => { full!(v.visit_expr_range_mut(_binding_0)); } crate::Expr::Reference(_binding_0) => { v.visit_expr_reference_mut(_binding_0); } crate::Expr::Repeat(_binding_0) => { full!(v.visit_expr_repeat_mut(_binding_0)); } crate::Expr::Return(_binding_0) => { full!(v.visit_expr_return_mut(_binding_0)); } crate::Expr::Struct(_binding_0) => { v.visit_expr_struct_mut(_binding_0); } crate::Expr::Try(_binding_0) => { full!(v.visit_expr_try_mut(_binding_0)); } crate::Expr::TryBlock(_binding_0) => { full!(v.visit_expr_try_block_mut(_binding_0)); } crate::Expr::Tuple(_binding_0) => { full!(v.visit_expr_tuple_mut(_binding_0)); } crate::Expr::Unary(_binding_0) => { v.visit_expr_unary_mut(_binding_0); } crate::Expr::Unsafe(_binding_0) => { full!(v.visit_expr_unsafe_mut(_binding_0)); } crate::Expr::Verbatim(_binding_0) => { skip!(_binding_0); } crate::Expr::While(_binding_0) => { full!(v.visit_expr_while_mut(_binding_0)); } crate::Expr::Yield(_binding_0) => { full!(v.visit_expr_yield_mut(_binding_0)); } } } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_expr_array_mut(v: &mut V, node: &mut crate::ExprArray) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } skip!(node.bracket_token); for mut el in Punctuated::pairs_mut(&mut node.elems) { let it = el.value_mut(); v.visit_expr_mut(it); } } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_expr_assign_mut(v: &mut V, node: &mut crate::ExprAssign) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_expr_mut(&mut *node.left); skip!(node.eq_token); v.visit_expr_mut(&mut *node.right); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_expr_async_mut(v: &mut V, node: &mut crate::ExprAsync) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } skip!(node.async_token); skip!(node.capture); v.visit_block_mut(&mut node.block); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_expr_await_mut(v: &mut V, node: &mut crate::ExprAwait) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_expr_mut(&mut *node.base); skip!(node.dot_token); skip!(node.await_token); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_expr_binary_mut(v: &mut V, node: &mut crate::ExprBinary) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_expr_mut(&mut *node.left); v.visit_bin_op_mut(&mut node.op); v.visit_expr_mut(&mut *node.right); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_expr_block_mut(v: &mut V, node: &mut crate::ExprBlock) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } if let Some(it) = &mut node.label { v.visit_label_mut(it); } v.visit_block_mut(&mut node.block); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_expr_break_mut(v: &mut V, node: &mut crate::ExprBreak) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } skip!(node.break_token); if let Some(it) = &mut node.label { v.visit_lifetime_mut(it); } if let Some(it) = &mut node.expr { v.visit_expr_mut(&mut **it); } } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_expr_call_mut(v: &mut V, node: &mut crate::ExprCall) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_expr_mut(&mut *node.func); skip!(node.paren_token); for mut el in Punctuated::pairs_mut(&mut node.args) { let it = el.value_mut(); v.visit_expr_mut(it); } } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_expr_cast_mut(v: &mut V, node: &mut crate::ExprCast) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_expr_mut(&mut *node.expr); skip!(node.as_token); v.visit_type_mut(&mut *node.ty); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_expr_closure_mut(v: &mut V, node: &mut crate::ExprClosure) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } if let Some(it) = &mut node.lifetimes { v.visit_bound_lifetimes_mut(it); } skip!(node.constness); skip!(node.movability); skip!(node.asyncness); skip!(node.capture); skip!(node.or1_token); for mut el in Punctuated::pairs_mut(&mut node.inputs) { let it = el.value_mut(); v.visit_pat_mut(it); } skip!(node.or2_token); v.visit_return_type_mut(&mut node.output); v.visit_expr_mut(&mut *node.body); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_expr_const_mut(v: &mut V, node: &mut crate::ExprConst) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } skip!(node.const_token); v.visit_block_mut(&mut node.block); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_expr_continue_mut(v: &mut V, node: &mut crate::ExprContinue) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } skip!(node.continue_token); if let Some(it) = &mut node.label { v.visit_lifetime_mut(it); } } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_expr_field_mut(v: &mut V, node: &mut crate::ExprField) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_expr_mut(&mut *node.base); skip!(node.dot_token); v.visit_member_mut(&mut node.member); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_expr_for_loop_mut(v: &mut V, node: &mut crate::ExprForLoop) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } if let Some(it) = &mut node.label { v.visit_label_mut(it); } skip!(node.for_token); v.visit_pat_mut(&mut *node.pat); skip!(node.in_token); v.visit_expr_mut(&mut *node.expr); v.visit_block_mut(&mut node.body); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_expr_group_mut(v: &mut V, node: &mut crate::ExprGroup) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } skip!(node.group_token); v.visit_expr_mut(&mut *node.expr); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_expr_if_mut(v: &mut V, node: &mut crate::ExprIf) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } skip!(node.if_token); v.visit_expr_mut(&mut *node.cond); v.visit_block_mut(&mut node.then_branch); if let Some(it) = &mut node.else_branch { skip!((it).0); v.visit_expr_mut(&mut *(it).1); } } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_expr_index_mut(v: &mut V, node: &mut crate::ExprIndex) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_expr_mut(&mut *node.expr); skip!(node.bracket_token); v.visit_expr_mut(&mut *node.index); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_expr_infer_mut(v: &mut V, node: &mut crate::ExprInfer) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } skip!(node.underscore_token); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_expr_let_mut(v: &mut V, node: &mut crate::ExprLet) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } skip!(node.let_token); v.visit_pat_mut(&mut *node.pat); skip!(node.eq_token); v.visit_expr_mut(&mut *node.expr); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_expr_lit_mut(v: &mut V, node: &mut crate::ExprLit) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_lit_mut(&mut node.lit); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_expr_loop_mut(v: &mut V, node: &mut crate::ExprLoop) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } if let Some(it) = &mut node.label { v.visit_label_mut(it); } skip!(node.loop_token); v.visit_block_mut(&mut node.body); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_expr_macro_mut(v: &mut V, node: &mut crate::ExprMacro) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_macro_mut(&mut node.mac); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_expr_match_mut(v: &mut V, node: &mut crate::ExprMatch) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } skip!(node.match_token); v.visit_expr_mut(&mut *node.expr); skip!(node.brace_token); for it in &mut node.arms { v.visit_arm_mut(it); } } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_expr_method_call_mut(v: &mut V, node: &mut crate::ExprMethodCall) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_expr_mut(&mut *node.receiver); skip!(node.dot_token); v.visit_ident_mut(&mut node.method); if let Some(it) = &mut node.turbofish { v.visit_angle_bracketed_generic_arguments_mut(it); } skip!(node.paren_token); for mut el in Punctuated::pairs_mut(&mut node.args) { let it = el.value_mut(); v.visit_expr_mut(it); } } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_expr_paren_mut(v: &mut V, node: &mut crate::ExprParen) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } skip!(node.paren_token); v.visit_expr_mut(&mut *node.expr); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_expr_path_mut(v: &mut V, node: &mut crate::ExprPath) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } if let Some(it) = &mut node.qself { v.visit_qself_mut(it); } v.visit_path_mut(&mut node.path); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_expr_range_mut(v: &mut V, node: &mut crate::ExprRange) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } if let Some(it) = &mut node.start { v.visit_expr_mut(&mut **it); } v.visit_range_limits_mut(&mut node.limits); if let Some(it) = &mut node.end { v.visit_expr_mut(&mut **it); } } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_expr_reference_mut(v: &mut V, node: &mut crate::ExprReference) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } skip!(node.and_token); skip!(node.mutability); v.visit_expr_mut(&mut *node.expr); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_expr_repeat_mut(v: &mut V, node: &mut crate::ExprRepeat) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } skip!(node.bracket_token); v.visit_expr_mut(&mut *node.expr); skip!(node.semi_token); v.visit_expr_mut(&mut *node.len); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_expr_return_mut(v: &mut V, node: &mut crate::ExprReturn) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } skip!(node.return_token); if let Some(it) = &mut node.expr { v.visit_expr_mut(&mut **it); } } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_expr_struct_mut(v: &mut V, node: &mut crate::ExprStruct) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } if let Some(it) = &mut node.qself { v.visit_qself_mut(it); } v.visit_path_mut(&mut node.path); skip!(node.brace_token); for mut el in Punctuated::pairs_mut(&mut node.fields) { let it = el.value_mut(); v.visit_field_value_mut(it); } skip!(node.dot2_token); if let Some(it) = &mut node.rest { v.visit_expr_mut(&mut **it); } } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_expr_try_mut(v: &mut V, node: &mut crate::ExprTry) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_expr_mut(&mut *node.expr); skip!(node.question_token); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_expr_try_block_mut(v: &mut V, node: &mut crate::ExprTryBlock) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } skip!(node.try_token); v.visit_block_mut(&mut node.block); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_expr_tuple_mut(v: &mut V, node: &mut crate::ExprTuple) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } skip!(node.paren_token); for mut el in Punctuated::pairs_mut(&mut node.elems) { let it = el.value_mut(); v.visit_expr_mut(it); } } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_expr_unary_mut(v: &mut V, node: &mut crate::ExprUnary) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_un_op_mut(&mut node.op); v.visit_expr_mut(&mut *node.expr); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_expr_unsafe_mut(v: &mut V, node: &mut crate::ExprUnsafe) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } skip!(node.unsafe_token); v.visit_block_mut(&mut node.block); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_expr_while_mut(v: &mut V, node: &mut crate::ExprWhile) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } if let Some(it) = &mut node.label { v.visit_label_mut(it); } skip!(node.while_token); v.visit_expr_mut(&mut *node.cond); v.visit_block_mut(&mut node.body); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_expr_yield_mut(v: &mut V, node: &mut crate::ExprYield) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } skip!(node.yield_token); if let Some(it) = &mut node.expr { v.visit_expr_mut(&mut **it); } } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_field_mut(v: &mut V, node: &mut crate::Field) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_visibility_mut(&mut node.vis); v.visit_field_mutability_mut(&mut node.mutability); if let Some(it) = &mut node.ident { v.visit_ident_mut(it); } skip!(node.colon_token); v.visit_type_mut(&mut node.ty); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_field_mutability_mut(v: &mut V, node: &mut crate::FieldMutability) where V: VisitMut + ?Sized, { match node { crate::FieldMutability::None => {} } } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_field_pat_mut(v: &mut V, node: &mut crate::FieldPat) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_member_mut(&mut node.member); skip!(node.colon_token); v.visit_pat_mut(&mut *node.pat); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_field_value_mut(v: &mut V, node: &mut crate::FieldValue) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_member_mut(&mut node.member); skip!(node.colon_token); v.visit_expr_mut(&mut node.expr); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_fields_mut(v: &mut V, node: &mut crate::Fields) where V: VisitMut + ?Sized, { match node { crate::Fields::Named(_binding_0) => { v.visit_fields_named_mut(_binding_0); } crate::Fields::Unnamed(_binding_0) => { v.visit_fields_unnamed_mut(_binding_0); } crate::Fields::Unit => {} } } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_fields_named_mut(v: &mut V, node: &mut crate::FieldsNamed) where V: VisitMut + ?Sized, { skip!(node.brace_token); for mut el in Punctuated::pairs_mut(&mut node.named) { let it = el.value_mut(); v.visit_field_mut(it); } } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_fields_unnamed_mut(v: &mut V, node: &mut crate::FieldsUnnamed) where V: VisitMut + ?Sized, { skip!(node.paren_token); for mut el in Punctuated::pairs_mut(&mut node.unnamed) { let it = el.value_mut(); v.visit_field_mut(it); } } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_file_mut(v: &mut V, node: &mut crate::File) where V: VisitMut + ?Sized, { skip!(node.shebang); for it in &mut node.attrs { v.visit_attribute_mut(it); } for it in &mut node.items { v.visit_item_mut(it); } } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_fn_arg_mut(v: &mut V, node: &mut crate::FnArg) where V: VisitMut + ?Sized, { match node { crate::FnArg::Receiver(_binding_0) => { v.visit_receiver_mut(_binding_0); } crate::FnArg::Typed(_binding_0) => { v.visit_pat_type_mut(_binding_0); } } } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_foreign_item_mut(v: &mut V, node: &mut crate::ForeignItem) where V: VisitMut + ?Sized, { match node { crate::ForeignItem::Fn(_binding_0) => { v.visit_foreign_item_fn_mut(_binding_0); } crate::ForeignItem::Static(_binding_0) => { v.visit_foreign_item_static_mut(_binding_0); } crate::ForeignItem::Type(_binding_0) => { v.visit_foreign_item_type_mut(_binding_0); } crate::ForeignItem::Macro(_binding_0) => { v.visit_foreign_item_macro_mut(_binding_0); } crate::ForeignItem::Verbatim(_binding_0) => { skip!(_binding_0); } } } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_foreign_item_fn_mut(v: &mut V, node: &mut crate::ForeignItemFn) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_visibility_mut(&mut node.vis); v.visit_signature_mut(&mut node.sig); skip!(node.semi_token); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_foreign_item_macro_mut(v: &mut V, node: &mut crate::ForeignItemMacro) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_macro_mut(&mut node.mac); skip!(node.semi_token); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_foreign_item_static_mut(v: &mut V, node: &mut crate::ForeignItemStatic) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_visibility_mut(&mut node.vis); skip!(node.static_token); v.visit_static_mutability_mut(&mut node.mutability); v.visit_ident_mut(&mut node.ident); skip!(node.colon_token); v.visit_type_mut(&mut *node.ty); skip!(node.semi_token); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_foreign_item_type_mut(v: &mut V, node: &mut crate::ForeignItemType) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_visibility_mut(&mut node.vis); skip!(node.type_token); v.visit_ident_mut(&mut node.ident); v.visit_generics_mut(&mut node.generics); skip!(node.semi_token); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_generic_argument_mut(v: &mut V, node: &mut crate::GenericArgument) where V: VisitMut + ?Sized, { match node { crate::GenericArgument::Lifetime(_binding_0) => { v.visit_lifetime_mut(_binding_0); } crate::GenericArgument::Type(_binding_0) => { v.visit_type_mut(_binding_0); } crate::GenericArgument::Const(_binding_0) => { v.visit_expr_mut(_binding_0); } crate::GenericArgument::AssocType(_binding_0) => { v.visit_assoc_type_mut(_binding_0); } crate::GenericArgument::AssocConst(_binding_0) => { v.visit_assoc_const_mut(_binding_0); } crate::GenericArgument::Constraint(_binding_0) => { v.visit_constraint_mut(_binding_0); } } } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_generic_param_mut(v: &mut V, node: &mut crate::GenericParam) where V: VisitMut + ?Sized, { match node { crate::GenericParam::Lifetime(_binding_0) => { v.visit_lifetime_param_mut(_binding_0); } crate::GenericParam::Type(_binding_0) => { v.visit_type_param_mut(_binding_0); } crate::GenericParam::Const(_binding_0) => { v.visit_const_param_mut(_binding_0); } } } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_generics_mut(v: &mut V, node: &mut crate::Generics) where V: VisitMut + ?Sized, { skip!(node.lt_token); for mut el in Punctuated::pairs_mut(&mut node.params) { let it = el.value_mut(); v.visit_generic_param_mut(it); } skip!(node.gt_token); if let Some(it) = &mut node.where_clause { v.visit_where_clause_mut(it); } } pub fn visit_ident_mut(v: &mut V, node: &mut proc_macro2::Ident) where V: VisitMut + ?Sized, { let mut span = node.span(); v.visit_span_mut(&mut span); node.set_span(span); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_impl_item_mut(v: &mut V, node: &mut crate::ImplItem) where V: VisitMut + ?Sized, { match node { crate::ImplItem::Const(_binding_0) => { v.visit_impl_item_const_mut(_binding_0); } crate::ImplItem::Fn(_binding_0) => { v.visit_impl_item_fn_mut(_binding_0); } crate::ImplItem::Type(_binding_0) => { v.visit_impl_item_type_mut(_binding_0); } crate::ImplItem::Macro(_binding_0) => { v.visit_impl_item_macro_mut(_binding_0); } crate::ImplItem::Verbatim(_binding_0) => { skip!(_binding_0); } } } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_impl_item_const_mut(v: &mut V, node: &mut crate::ImplItemConst) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_visibility_mut(&mut node.vis); skip!(node.defaultness); skip!(node.const_token); v.visit_ident_mut(&mut node.ident); v.visit_generics_mut(&mut node.generics); skip!(node.colon_token); v.visit_type_mut(&mut node.ty); skip!(node.eq_token); v.visit_expr_mut(&mut node.expr); skip!(node.semi_token); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_impl_item_fn_mut(v: &mut V, node: &mut crate::ImplItemFn) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_visibility_mut(&mut node.vis); skip!(node.defaultness); v.visit_signature_mut(&mut node.sig); v.visit_block_mut(&mut node.block); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_impl_item_macro_mut(v: &mut V, node: &mut crate::ImplItemMacro) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_macro_mut(&mut node.mac); skip!(node.semi_token); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_impl_item_type_mut(v: &mut V, node: &mut crate::ImplItemType) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_visibility_mut(&mut node.vis); skip!(node.defaultness); skip!(node.type_token); v.visit_ident_mut(&mut node.ident); v.visit_generics_mut(&mut node.generics); skip!(node.eq_token); v.visit_type_mut(&mut node.ty); skip!(node.semi_token); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_impl_restriction_mut(v: &mut V, node: &mut crate::ImplRestriction) where V: VisitMut + ?Sized, { match *node {} } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_index_mut(v: &mut V, node: &mut crate::Index) where V: VisitMut + ?Sized, { skip!(node.index); v.visit_span_mut(&mut node.span); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_item_mut(v: &mut V, node: &mut crate::Item) where V: VisitMut + ?Sized, { match node { crate::Item::Const(_binding_0) => { v.visit_item_const_mut(_binding_0); } crate::Item::Enum(_binding_0) => { v.visit_item_enum_mut(_binding_0); } crate::Item::ExternCrate(_binding_0) => { v.visit_item_extern_crate_mut(_binding_0); } crate::Item::Fn(_binding_0) => { v.visit_item_fn_mut(_binding_0); } crate::Item::ForeignMod(_binding_0) => { v.visit_item_foreign_mod_mut(_binding_0); } crate::Item::Impl(_binding_0) => { v.visit_item_impl_mut(_binding_0); } crate::Item::Macro(_binding_0) => { v.visit_item_macro_mut(_binding_0); } crate::Item::Mod(_binding_0) => { v.visit_item_mod_mut(_binding_0); } crate::Item::Static(_binding_0) => { v.visit_item_static_mut(_binding_0); } crate::Item::Struct(_binding_0) => { v.visit_item_struct_mut(_binding_0); } crate::Item::Trait(_binding_0) => { v.visit_item_trait_mut(_binding_0); } crate::Item::TraitAlias(_binding_0) => { v.visit_item_trait_alias_mut(_binding_0); } crate::Item::Type(_binding_0) => { v.visit_item_type_mut(_binding_0); } crate::Item::Union(_binding_0) => { v.visit_item_union_mut(_binding_0); } crate::Item::Use(_binding_0) => { v.visit_item_use_mut(_binding_0); } crate::Item::Verbatim(_binding_0) => { skip!(_binding_0); } } } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_item_const_mut(v: &mut V, node: &mut crate::ItemConst) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_visibility_mut(&mut node.vis); skip!(node.const_token); v.visit_ident_mut(&mut node.ident); v.visit_generics_mut(&mut node.generics); skip!(node.colon_token); v.visit_type_mut(&mut *node.ty); skip!(node.eq_token); v.visit_expr_mut(&mut *node.expr); skip!(node.semi_token); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_item_enum_mut(v: &mut V, node: &mut crate::ItemEnum) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_visibility_mut(&mut node.vis); skip!(node.enum_token); v.visit_ident_mut(&mut node.ident); v.visit_generics_mut(&mut node.generics); skip!(node.brace_token); for mut el in Punctuated::pairs_mut(&mut node.variants) { let it = el.value_mut(); v.visit_variant_mut(it); } } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_item_extern_crate_mut(v: &mut V, node: &mut crate::ItemExternCrate) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_visibility_mut(&mut node.vis); skip!(node.extern_token); skip!(node.crate_token); v.visit_ident_mut(&mut node.ident); if let Some(it) = &mut node.rename { skip!((it).0); v.visit_ident_mut(&mut (it).1); } skip!(node.semi_token); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_item_fn_mut(v: &mut V, node: &mut crate::ItemFn) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_visibility_mut(&mut node.vis); v.visit_signature_mut(&mut node.sig); v.visit_block_mut(&mut *node.block); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_item_foreign_mod_mut(v: &mut V, node: &mut crate::ItemForeignMod) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } skip!(node.unsafety); v.visit_abi_mut(&mut node.abi); skip!(node.brace_token); for it in &mut node.items { v.visit_foreign_item_mut(it); } } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_item_impl_mut(v: &mut V, node: &mut crate::ItemImpl) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } skip!(node.defaultness); skip!(node.unsafety); skip!(node.impl_token); v.visit_generics_mut(&mut node.generics); if let Some(it) = &mut node.trait_ { skip!((it).0); v.visit_path_mut(&mut (it).1); skip!((it).2); } v.visit_type_mut(&mut *node.self_ty); skip!(node.brace_token); for it in &mut node.items { v.visit_impl_item_mut(it); } } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_item_macro_mut(v: &mut V, node: &mut crate::ItemMacro) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } if let Some(it) = &mut node.ident { v.visit_ident_mut(it); } v.visit_macro_mut(&mut node.mac); skip!(node.semi_token); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_item_mod_mut(v: &mut V, node: &mut crate::ItemMod) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_visibility_mut(&mut node.vis); skip!(node.unsafety); skip!(node.mod_token); v.visit_ident_mut(&mut node.ident); if let Some(it) = &mut node.content { skip!((it).0); for it in &mut (it).1 { v.visit_item_mut(it); } } skip!(node.semi); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_item_static_mut(v: &mut V, node: &mut crate::ItemStatic) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_visibility_mut(&mut node.vis); skip!(node.static_token); v.visit_static_mutability_mut(&mut node.mutability); v.visit_ident_mut(&mut node.ident); skip!(node.colon_token); v.visit_type_mut(&mut *node.ty); skip!(node.eq_token); v.visit_expr_mut(&mut *node.expr); skip!(node.semi_token); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_item_struct_mut(v: &mut V, node: &mut crate::ItemStruct) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_visibility_mut(&mut node.vis); skip!(node.struct_token); v.visit_ident_mut(&mut node.ident); v.visit_generics_mut(&mut node.generics); v.visit_fields_mut(&mut node.fields); skip!(node.semi_token); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_item_trait_mut(v: &mut V, node: &mut crate::ItemTrait) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_visibility_mut(&mut node.vis); skip!(node.unsafety); skip!(node.auto_token); if let Some(it) = &mut node.restriction { v.visit_impl_restriction_mut(it); } skip!(node.trait_token); v.visit_ident_mut(&mut node.ident); v.visit_generics_mut(&mut node.generics); skip!(node.colon_token); for mut el in Punctuated::pairs_mut(&mut node.supertraits) { let it = el.value_mut(); v.visit_type_param_bound_mut(it); } skip!(node.brace_token); for it in &mut node.items { v.visit_trait_item_mut(it); } } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_item_trait_alias_mut(v: &mut V, node: &mut crate::ItemTraitAlias) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_visibility_mut(&mut node.vis); skip!(node.trait_token); v.visit_ident_mut(&mut node.ident); v.visit_generics_mut(&mut node.generics); skip!(node.eq_token); for mut el in Punctuated::pairs_mut(&mut node.bounds) { let it = el.value_mut(); v.visit_type_param_bound_mut(it); } skip!(node.semi_token); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_item_type_mut(v: &mut V, node: &mut crate::ItemType) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_visibility_mut(&mut node.vis); skip!(node.type_token); v.visit_ident_mut(&mut node.ident); v.visit_generics_mut(&mut node.generics); skip!(node.eq_token); v.visit_type_mut(&mut *node.ty); skip!(node.semi_token); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_item_union_mut(v: &mut V, node: &mut crate::ItemUnion) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_visibility_mut(&mut node.vis); skip!(node.union_token); v.visit_ident_mut(&mut node.ident); v.visit_generics_mut(&mut node.generics); v.visit_fields_named_mut(&mut node.fields); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_item_use_mut(v: &mut V, node: &mut crate::ItemUse) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_visibility_mut(&mut node.vis); skip!(node.use_token); skip!(node.leading_colon); v.visit_use_tree_mut(&mut node.tree); skip!(node.semi_token); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_label_mut(v: &mut V, node: &mut crate::Label) where V: VisitMut + ?Sized, { v.visit_lifetime_mut(&mut node.name); skip!(node.colon_token); } pub fn visit_lifetime_mut(v: &mut V, node: &mut crate::Lifetime) where V: VisitMut + ?Sized, { v.visit_span_mut(&mut node.apostrophe); v.visit_ident_mut(&mut node.ident); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_lifetime_param_mut(v: &mut V, node: &mut crate::LifetimeParam) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_lifetime_mut(&mut node.lifetime); skip!(node.colon_token); for mut el in Punctuated::pairs_mut(&mut node.bounds) { let it = el.value_mut(); v.visit_lifetime_mut(it); } } pub fn visit_lit_mut(v: &mut V, node: &mut crate::Lit) where V: VisitMut + ?Sized, { match node { crate::Lit::Str(_binding_0) => { v.visit_lit_str_mut(_binding_0); } crate::Lit::ByteStr(_binding_0) => { v.visit_lit_byte_str_mut(_binding_0); } crate::Lit::Byte(_binding_0) => { v.visit_lit_byte_mut(_binding_0); } crate::Lit::Char(_binding_0) => { v.visit_lit_char_mut(_binding_0); } crate::Lit::Int(_binding_0) => { v.visit_lit_int_mut(_binding_0); } crate::Lit::Float(_binding_0) => { v.visit_lit_float_mut(_binding_0); } crate::Lit::Bool(_binding_0) => { v.visit_lit_bool_mut(_binding_0); } crate::Lit::Verbatim(_binding_0) => { skip!(_binding_0); } } } pub fn visit_lit_bool_mut(v: &mut V, node: &mut crate::LitBool) where V: VisitMut + ?Sized, { skip!(node.value); v.visit_span_mut(&mut node.span); } pub fn visit_lit_byte_mut(v: &mut V, node: &mut crate::LitByte) where V: VisitMut + ?Sized, {} pub fn visit_lit_byte_str_mut(v: &mut V, node: &mut crate::LitByteStr) where V: VisitMut + ?Sized, {} pub fn visit_lit_char_mut(v: &mut V, node: &mut crate::LitChar) where V: VisitMut + ?Sized, {} pub fn visit_lit_float_mut(v: &mut V, node: &mut crate::LitFloat) where V: VisitMut + ?Sized, {} pub fn visit_lit_int_mut(v: &mut V, node: &mut crate::LitInt) where V: VisitMut + ?Sized, {} pub fn visit_lit_str_mut(v: &mut V, node: &mut crate::LitStr) where V: VisitMut + ?Sized, {} #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_local_mut(v: &mut V, node: &mut crate::Local) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } skip!(node.let_token); v.visit_pat_mut(&mut node.pat); if let Some(it) = &mut node.init { v.visit_local_init_mut(it); } skip!(node.semi_token); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_local_init_mut(v: &mut V, node: &mut crate::LocalInit) where V: VisitMut + ?Sized, { skip!(node.eq_token); v.visit_expr_mut(&mut *node.expr); if let Some(it) = &mut node.diverge { skip!((it).0); v.visit_expr_mut(&mut *(it).1); } } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_macro_mut(v: &mut V, node: &mut crate::Macro) where V: VisitMut + ?Sized, { v.visit_path_mut(&mut node.path); skip!(node.bang_token); v.visit_macro_delimiter_mut(&mut node.delimiter); skip!(node.tokens); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_macro_delimiter_mut(v: &mut V, node: &mut crate::MacroDelimiter) where V: VisitMut + ?Sized, { match node { crate::MacroDelimiter::Paren(_binding_0) => { skip!(_binding_0); } crate::MacroDelimiter::Brace(_binding_0) => { skip!(_binding_0); } crate::MacroDelimiter::Bracket(_binding_0) => { skip!(_binding_0); } } } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_member_mut(v: &mut V, node: &mut crate::Member) where V: VisitMut + ?Sized, { match node { crate::Member::Named(_binding_0) => { v.visit_ident_mut(_binding_0); } crate::Member::Unnamed(_binding_0) => { v.visit_index_mut(_binding_0); } } } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_meta_mut(v: &mut V, node: &mut crate::Meta) where V: VisitMut + ?Sized, { match node { crate::Meta::Path(_binding_0) => { v.visit_path_mut(_binding_0); } crate::Meta::List(_binding_0) => { v.visit_meta_list_mut(_binding_0); } crate::Meta::NameValue(_binding_0) => { v.visit_meta_name_value_mut(_binding_0); } } } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_meta_list_mut(v: &mut V, node: &mut crate::MetaList) where V: VisitMut + ?Sized, { v.visit_path_mut(&mut node.path); v.visit_macro_delimiter_mut(&mut node.delimiter); skip!(node.tokens); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_meta_name_value_mut(v: &mut V, node: &mut crate::MetaNameValue) where V: VisitMut + ?Sized, { v.visit_path_mut(&mut node.path); skip!(node.eq_token); v.visit_expr_mut(&mut node.value); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_parenthesized_generic_arguments_mut( v: &mut V, node: &mut crate::ParenthesizedGenericArguments, ) where V: VisitMut + ?Sized, { skip!(node.paren_token); for mut el in Punctuated::pairs_mut(&mut node.inputs) { let it = el.value_mut(); v.visit_type_mut(it); } v.visit_return_type_mut(&mut node.output); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_pat_mut(v: &mut V, node: &mut crate::Pat) where V: VisitMut + ?Sized, { match node { crate::Pat::Const(_binding_0) => { v.visit_expr_const_mut(_binding_0); } crate::Pat::Ident(_binding_0) => { v.visit_pat_ident_mut(_binding_0); } crate::Pat::Lit(_binding_0) => { v.visit_expr_lit_mut(_binding_0); } crate::Pat::Macro(_binding_0) => { v.visit_expr_macro_mut(_binding_0); } crate::Pat::Or(_binding_0) => { v.visit_pat_or_mut(_binding_0); } crate::Pat::Paren(_binding_0) => { v.visit_pat_paren_mut(_binding_0); } crate::Pat::Path(_binding_0) => { v.visit_expr_path_mut(_binding_0); } crate::Pat::Range(_binding_0) => { v.visit_expr_range_mut(_binding_0); } crate::Pat::Reference(_binding_0) => { v.visit_pat_reference_mut(_binding_0); } crate::Pat::Rest(_binding_0) => { v.visit_pat_rest_mut(_binding_0); } crate::Pat::Slice(_binding_0) => { v.visit_pat_slice_mut(_binding_0); } crate::Pat::Struct(_binding_0) => { v.visit_pat_struct_mut(_binding_0); } crate::Pat::Tuple(_binding_0) => { v.visit_pat_tuple_mut(_binding_0); } crate::Pat::TupleStruct(_binding_0) => { v.visit_pat_tuple_struct_mut(_binding_0); } crate::Pat::Type(_binding_0) => { v.visit_pat_type_mut(_binding_0); } crate::Pat::Verbatim(_binding_0) => { skip!(_binding_0); } crate::Pat::Wild(_binding_0) => { v.visit_pat_wild_mut(_binding_0); } } } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_pat_ident_mut(v: &mut V, node: &mut crate::PatIdent) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } skip!(node.by_ref); skip!(node.mutability); v.visit_ident_mut(&mut node.ident); if let Some(it) = &mut node.subpat { skip!((it).0); v.visit_pat_mut(&mut *(it).1); } } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_pat_or_mut(v: &mut V, node: &mut crate::PatOr) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } skip!(node.leading_vert); for mut el in Punctuated::pairs_mut(&mut node.cases) { let it = el.value_mut(); v.visit_pat_mut(it); } } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_pat_paren_mut(v: &mut V, node: &mut crate::PatParen) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } skip!(node.paren_token); v.visit_pat_mut(&mut *node.pat); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_pat_reference_mut(v: &mut V, node: &mut crate::PatReference) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } skip!(node.and_token); skip!(node.mutability); v.visit_pat_mut(&mut *node.pat); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_pat_rest_mut(v: &mut V, node: &mut crate::PatRest) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } skip!(node.dot2_token); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_pat_slice_mut(v: &mut V, node: &mut crate::PatSlice) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } skip!(node.bracket_token); for mut el in Punctuated::pairs_mut(&mut node.elems) { let it = el.value_mut(); v.visit_pat_mut(it); } } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_pat_struct_mut(v: &mut V, node: &mut crate::PatStruct) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } if let Some(it) = &mut node.qself { v.visit_qself_mut(it); } v.visit_path_mut(&mut node.path); skip!(node.brace_token); for mut el in Punctuated::pairs_mut(&mut node.fields) { let it = el.value_mut(); v.visit_field_pat_mut(it); } if let Some(it) = &mut node.rest { v.visit_pat_rest_mut(it); } } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_pat_tuple_mut(v: &mut V, node: &mut crate::PatTuple) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } skip!(node.paren_token); for mut el in Punctuated::pairs_mut(&mut node.elems) { let it = el.value_mut(); v.visit_pat_mut(it); } } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_pat_tuple_struct_mut(v: &mut V, node: &mut crate::PatTupleStruct) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } if let Some(it) = &mut node.qself { v.visit_qself_mut(it); } v.visit_path_mut(&mut node.path); skip!(node.paren_token); for mut el in Punctuated::pairs_mut(&mut node.elems) { let it = el.value_mut(); v.visit_pat_mut(it); } } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_pat_type_mut(v: &mut V, node: &mut crate::PatType) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_pat_mut(&mut *node.pat); skip!(node.colon_token); v.visit_type_mut(&mut *node.ty); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_pat_wild_mut(v: &mut V, node: &mut crate::PatWild) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } skip!(node.underscore_token); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_path_mut(v: &mut V, node: &mut crate::Path) where V: VisitMut + ?Sized, { skip!(node.leading_colon); for mut el in Punctuated::pairs_mut(&mut node.segments) { let it = el.value_mut(); v.visit_path_segment_mut(it); } } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_path_arguments_mut(v: &mut V, node: &mut crate::PathArguments) where V: VisitMut + ?Sized, { match node { crate::PathArguments::None => {} crate::PathArguments::AngleBracketed(_binding_0) => { v.visit_angle_bracketed_generic_arguments_mut(_binding_0); } crate::PathArguments::Parenthesized(_binding_0) => { v.visit_parenthesized_generic_arguments_mut(_binding_0); } } } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_path_segment_mut(v: &mut V, node: &mut crate::PathSegment) where V: VisitMut + ?Sized, { v.visit_ident_mut(&mut node.ident); v.visit_path_arguments_mut(&mut node.arguments); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_predicate_lifetime_mut(v: &mut V, node: &mut crate::PredicateLifetime) where V: VisitMut + ?Sized, { v.visit_lifetime_mut(&mut node.lifetime); skip!(node.colon_token); for mut el in Punctuated::pairs_mut(&mut node.bounds) { let it = el.value_mut(); v.visit_lifetime_mut(it); } } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_predicate_type_mut(v: &mut V, node: &mut crate::PredicateType) where V: VisitMut + ?Sized, { if let Some(it) = &mut node.lifetimes { v.visit_bound_lifetimes_mut(it); } v.visit_type_mut(&mut node.bounded_ty); skip!(node.colon_token); for mut el in Punctuated::pairs_mut(&mut node.bounds) { let it = el.value_mut(); v.visit_type_param_bound_mut(it); } } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_qself_mut(v: &mut V, node: &mut crate::QSelf) where V: VisitMut + ?Sized, { skip!(node.lt_token); v.visit_type_mut(&mut *node.ty); skip!(node.position); skip!(node.as_token); skip!(node.gt_token); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_range_limits_mut(v: &mut V, node: &mut crate::RangeLimits) where V: VisitMut + ?Sized, { match node { crate::RangeLimits::HalfOpen(_binding_0) => { skip!(_binding_0); } crate::RangeLimits::Closed(_binding_0) => { skip!(_binding_0); } } } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_receiver_mut(v: &mut V, node: &mut crate::Receiver) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } if let Some(it) = &mut node.reference { skip!((it).0); if let Some(it) = &mut (it).1 { v.visit_lifetime_mut(it); } } skip!(node.mutability); skip!(node.self_token); skip!(node.colon_token); v.visit_type_mut(&mut *node.ty); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_return_type_mut(v: &mut V, node: &mut crate::ReturnType) where V: VisitMut + ?Sized, { match node { crate::ReturnType::Default => {} crate::ReturnType::Type(_binding_0, _binding_1) => { skip!(_binding_0); v.visit_type_mut(&mut **_binding_1); } } } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_signature_mut(v: &mut V, node: &mut crate::Signature) where V: VisitMut + ?Sized, { skip!(node.constness); skip!(node.asyncness); skip!(node.unsafety); if let Some(it) = &mut node.abi { v.visit_abi_mut(it); } skip!(node.fn_token); v.visit_ident_mut(&mut node.ident); v.visit_generics_mut(&mut node.generics); skip!(node.paren_token); for mut el in Punctuated::pairs_mut(&mut node.inputs) { let it = el.value_mut(); v.visit_fn_arg_mut(it); } if let Some(it) = &mut node.variadic { v.visit_variadic_mut(it); } v.visit_return_type_mut(&mut node.output); } pub fn visit_span_mut(v: &mut V, node: &mut proc_macro2::Span) where V: VisitMut + ?Sized, {} #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_static_mutability_mut(v: &mut V, node: &mut crate::StaticMutability) where V: VisitMut + ?Sized, { match node { crate::StaticMutability::Mut(_binding_0) => { skip!(_binding_0); } crate::StaticMutability::None => {} } } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_stmt_mut(v: &mut V, node: &mut crate::Stmt) where V: VisitMut + ?Sized, { match node { crate::Stmt::Local(_binding_0) => { v.visit_local_mut(_binding_0); } crate::Stmt::Item(_binding_0) => { v.visit_item_mut(_binding_0); } crate::Stmt::Expr(_binding_0, _binding_1) => { v.visit_expr_mut(_binding_0); skip!(_binding_1); } crate::Stmt::Macro(_binding_0) => { v.visit_stmt_macro_mut(_binding_0); } } } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_stmt_macro_mut(v: &mut V, node: &mut crate::StmtMacro) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_macro_mut(&mut node.mac); skip!(node.semi_token); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_trait_bound_mut(v: &mut V, node: &mut crate::TraitBound) where V: VisitMut + ?Sized, { skip!(node.paren_token); v.visit_trait_bound_modifier_mut(&mut node.modifier); if let Some(it) = &mut node.lifetimes { v.visit_bound_lifetimes_mut(it); } v.visit_path_mut(&mut node.path); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_trait_bound_modifier_mut(v: &mut V, node: &mut crate::TraitBoundModifier) where V: VisitMut + ?Sized, { match node { crate::TraitBoundModifier::None => {} crate::TraitBoundModifier::Maybe(_binding_0) => { skip!(_binding_0); } } } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_trait_item_mut(v: &mut V, node: &mut crate::TraitItem) where V: VisitMut + ?Sized, { match node { crate::TraitItem::Const(_binding_0) => { v.visit_trait_item_const_mut(_binding_0); } crate::TraitItem::Fn(_binding_0) => { v.visit_trait_item_fn_mut(_binding_0); } crate::TraitItem::Type(_binding_0) => { v.visit_trait_item_type_mut(_binding_0); } crate::TraitItem::Macro(_binding_0) => { v.visit_trait_item_macro_mut(_binding_0); } crate::TraitItem::Verbatim(_binding_0) => { skip!(_binding_0); } } } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_trait_item_const_mut(v: &mut V, node: &mut crate::TraitItemConst) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } skip!(node.const_token); v.visit_ident_mut(&mut node.ident); v.visit_generics_mut(&mut node.generics); skip!(node.colon_token); v.visit_type_mut(&mut node.ty); if let Some(it) = &mut node.default { skip!((it).0); v.visit_expr_mut(&mut (it).1); } skip!(node.semi_token); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_trait_item_fn_mut(v: &mut V, node: &mut crate::TraitItemFn) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_signature_mut(&mut node.sig); if let Some(it) = &mut node.default { v.visit_block_mut(it); } skip!(node.semi_token); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_trait_item_macro_mut(v: &mut V, node: &mut crate::TraitItemMacro) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_macro_mut(&mut node.mac); skip!(node.semi_token); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_trait_item_type_mut(v: &mut V, node: &mut crate::TraitItemType) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } skip!(node.type_token); v.visit_ident_mut(&mut node.ident); v.visit_generics_mut(&mut node.generics); skip!(node.colon_token); for mut el in Punctuated::pairs_mut(&mut node.bounds) { let it = el.value_mut(); v.visit_type_param_bound_mut(it); } if let Some(it) = &mut node.default { skip!((it).0); v.visit_type_mut(&mut (it).1); } skip!(node.semi_token); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_type_mut(v: &mut V, node: &mut crate::Type) where V: VisitMut + ?Sized, { match node { crate::Type::Array(_binding_0) => { v.visit_type_array_mut(_binding_0); } crate::Type::BareFn(_binding_0) => { v.visit_type_bare_fn_mut(_binding_0); } crate::Type::Group(_binding_0) => { v.visit_type_group_mut(_binding_0); } crate::Type::ImplTrait(_binding_0) => { v.visit_type_impl_trait_mut(_binding_0); } crate::Type::Infer(_binding_0) => { v.visit_type_infer_mut(_binding_0); } crate::Type::Macro(_binding_0) => { v.visit_type_macro_mut(_binding_0); } crate::Type::Never(_binding_0) => { v.visit_type_never_mut(_binding_0); } crate::Type::Paren(_binding_0) => { v.visit_type_paren_mut(_binding_0); } crate::Type::Path(_binding_0) => { v.visit_type_path_mut(_binding_0); } crate::Type::Ptr(_binding_0) => { v.visit_type_ptr_mut(_binding_0); } crate::Type::Reference(_binding_0) => { v.visit_type_reference_mut(_binding_0); } crate::Type::Slice(_binding_0) => { v.visit_type_slice_mut(_binding_0); } crate::Type::TraitObject(_binding_0) => { v.visit_type_trait_object_mut(_binding_0); } crate::Type::Tuple(_binding_0) => { v.visit_type_tuple_mut(_binding_0); } crate::Type::Verbatim(_binding_0) => { skip!(_binding_0); } } } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_type_array_mut(v: &mut V, node: &mut crate::TypeArray) where V: VisitMut + ?Sized, { skip!(node.bracket_token); v.visit_type_mut(&mut *node.elem); skip!(node.semi_token); v.visit_expr_mut(&mut node.len); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_type_bare_fn_mut(v: &mut V, node: &mut crate::TypeBareFn) where V: VisitMut + ?Sized, { if let Some(it) = &mut node.lifetimes { v.visit_bound_lifetimes_mut(it); } skip!(node.unsafety); if let Some(it) = &mut node.abi { v.visit_abi_mut(it); } skip!(node.fn_token); skip!(node.paren_token); for mut el in Punctuated::pairs_mut(&mut node.inputs) { let it = el.value_mut(); v.visit_bare_fn_arg_mut(it); } if let Some(it) = &mut node.variadic { v.visit_bare_variadic_mut(it); } v.visit_return_type_mut(&mut node.output); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_type_group_mut(v: &mut V, node: &mut crate::TypeGroup) where V: VisitMut + ?Sized, { skip!(node.group_token); v.visit_type_mut(&mut *node.elem); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_type_impl_trait_mut(v: &mut V, node: &mut crate::TypeImplTrait) where V: VisitMut + ?Sized, { skip!(node.impl_token); for mut el in Punctuated::pairs_mut(&mut node.bounds) { let it = el.value_mut(); v.visit_type_param_bound_mut(it); } } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_type_infer_mut(v: &mut V, node: &mut crate::TypeInfer) where V: VisitMut + ?Sized, { skip!(node.underscore_token); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_type_macro_mut(v: &mut V, node: &mut crate::TypeMacro) where V: VisitMut + ?Sized, { v.visit_macro_mut(&mut node.mac); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_type_never_mut(v: &mut V, node: &mut crate::TypeNever) where V: VisitMut + ?Sized, { skip!(node.bang_token); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_type_param_mut(v: &mut V, node: &mut crate::TypeParam) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_ident_mut(&mut node.ident); skip!(node.colon_token); for mut el in Punctuated::pairs_mut(&mut node.bounds) { let it = el.value_mut(); v.visit_type_param_bound_mut(it); } skip!(node.eq_token); if let Some(it) = &mut node.default { v.visit_type_mut(it); } } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_type_param_bound_mut(v: &mut V, node: &mut crate::TypeParamBound) where V: VisitMut + ?Sized, { match node { crate::TypeParamBound::Trait(_binding_0) => { v.visit_trait_bound_mut(_binding_0); } crate::TypeParamBound::Lifetime(_binding_0) => { v.visit_lifetime_mut(_binding_0); } crate::TypeParamBound::Verbatim(_binding_0) => { skip!(_binding_0); } } } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_type_paren_mut(v: &mut V, node: &mut crate::TypeParen) where V: VisitMut + ?Sized, { skip!(node.paren_token); v.visit_type_mut(&mut *node.elem); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_type_path_mut(v: &mut V, node: &mut crate::TypePath) where V: VisitMut + ?Sized, { if let Some(it) = &mut node.qself { v.visit_qself_mut(it); } v.visit_path_mut(&mut node.path); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_type_ptr_mut(v: &mut V, node: &mut crate::TypePtr) where V: VisitMut + ?Sized, { skip!(node.star_token); skip!(node.const_token); skip!(node.mutability); v.visit_type_mut(&mut *node.elem); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_type_reference_mut(v: &mut V, node: &mut crate::TypeReference) where V: VisitMut + ?Sized, { skip!(node.and_token); if let Some(it) = &mut node.lifetime { v.visit_lifetime_mut(it); } skip!(node.mutability); v.visit_type_mut(&mut *node.elem); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_type_slice_mut(v: &mut V, node: &mut crate::TypeSlice) where V: VisitMut + ?Sized, { skip!(node.bracket_token); v.visit_type_mut(&mut *node.elem); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_type_trait_object_mut(v: &mut V, node: &mut crate::TypeTraitObject) where V: VisitMut + ?Sized, { skip!(node.dyn_token); for mut el in Punctuated::pairs_mut(&mut node.bounds) { let it = el.value_mut(); v.visit_type_param_bound_mut(it); } } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_type_tuple_mut(v: &mut V, node: &mut crate::TypeTuple) where V: VisitMut + ?Sized, { skip!(node.paren_token); for mut el in Punctuated::pairs_mut(&mut node.elems) { let it = el.value_mut(); v.visit_type_mut(it); } } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_un_op_mut(v: &mut V, node: &mut crate::UnOp) where V: VisitMut + ?Sized, { match node { crate::UnOp::Deref(_binding_0) => { skip!(_binding_0); } crate::UnOp::Not(_binding_0) => { skip!(_binding_0); } crate::UnOp::Neg(_binding_0) => { skip!(_binding_0); } } } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_use_glob_mut(v: &mut V, node: &mut crate::UseGlob) where V: VisitMut + ?Sized, { skip!(node.star_token); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_use_group_mut(v: &mut V, node: &mut crate::UseGroup) where V: VisitMut + ?Sized, { skip!(node.brace_token); for mut el in Punctuated::pairs_mut(&mut node.items) { let it = el.value_mut(); v.visit_use_tree_mut(it); } } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_use_name_mut(v: &mut V, node: &mut crate::UseName) where V: VisitMut + ?Sized, { v.visit_ident_mut(&mut node.ident); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_use_path_mut(v: &mut V, node: &mut crate::UsePath) where V: VisitMut + ?Sized, { v.visit_ident_mut(&mut node.ident); skip!(node.colon2_token); v.visit_use_tree_mut(&mut *node.tree); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_use_rename_mut(v: &mut V, node: &mut crate::UseRename) where V: VisitMut + ?Sized, { v.visit_ident_mut(&mut node.ident); skip!(node.as_token); v.visit_ident_mut(&mut node.rename); } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_use_tree_mut(v: &mut V, node: &mut crate::UseTree) where V: VisitMut + ?Sized, { match node { crate::UseTree::Path(_binding_0) => { v.visit_use_path_mut(_binding_0); } crate::UseTree::Name(_binding_0) => { v.visit_use_name_mut(_binding_0); } crate::UseTree::Rename(_binding_0) => { v.visit_use_rename_mut(_binding_0); } crate::UseTree::Glob(_binding_0) => { v.visit_use_glob_mut(_binding_0); } crate::UseTree::Group(_binding_0) => { v.visit_use_group_mut(_binding_0); } } } #[cfg(feature = "full")] #[cfg_attr(doc_cfg, doc(cfg(feature = "full")))] pub fn visit_variadic_mut(v: &mut V, node: &mut crate::Variadic) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } if let Some(it) = &mut node.pat { v.visit_pat_mut(&mut *(it).0); skip!((it).1); } skip!(node.dots); skip!(node.comma); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_variant_mut(v: &mut V, node: &mut crate::Variant) where V: VisitMut + ?Sized, { for it in &mut node.attrs { v.visit_attribute_mut(it); } v.visit_ident_mut(&mut node.ident); v.visit_fields_mut(&mut node.fields); if let Some(it) = &mut node.discriminant { skip!((it).0); v.visit_expr_mut(&mut (it).1); } } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_vis_restricted_mut(v: &mut V, node: &mut crate::VisRestricted) where V: VisitMut + ?Sized, { skip!(node.pub_token); skip!(node.paren_token); skip!(node.in_token); v.visit_path_mut(&mut *node.path); } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_visibility_mut(v: &mut V, node: &mut crate::Visibility) where V: VisitMut + ?Sized, { match node { crate::Visibility::Public(_binding_0) => { skip!(_binding_0); } crate::Visibility::Restricted(_binding_0) => { v.visit_vis_restricted_mut(_binding_0); } crate::Visibility::Inherited => {} } } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_where_clause_mut(v: &mut V, node: &mut crate::WhereClause) where V: VisitMut + ?Sized, { skip!(node.where_token); for mut el in Punctuated::pairs_mut(&mut node.predicates) { let it = el.value_mut(); v.visit_where_predicate_mut(it); } } #[cfg(any(feature = "derive", feature = "full"))] #[cfg_attr(doc_cfg, doc(cfg(any(feature = "derive", feature = "full"))))] pub fn visit_where_predicate_mut(v: &mut V, node: &mut crate::WherePredicate) where V: VisitMut + ?Sized, { match node { crate::WherePredicate::Lifetime(_binding_0) => { v.visit_predicate_lifetime_mut(_binding_0); } crate::WherePredicate::Type(_binding_0) => { v.visit_predicate_type_mut(_binding_0); } } }