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