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