blob: 45b7e5e7b617acc1d61e7460916cafa360b8d4e0 [file] [log] [blame]
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Syntax tree traversal to mutate an exclusive borrow of a syntax tree in place."><meta name="keywords" content="rust, rustlang, rust-lang, visit_mut"><title>syn::visit_mut - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../SourceSerif4-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../FiraSans-Regular.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../FiraSans-Medium.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../SourceCodePro-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../SourceSerif4-Bold.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../SourceCodePro-Semibold.ttf.woff2"><link rel="stylesheet" href="../../normalize.css"><link rel="stylesheet" href="../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" href="../../ayu.css" disabled><link rel="stylesheet" href="../../dark.css" disabled><link rel="stylesheet" href="../../light.css" id="themeStyle"><script id="default-settings" ></script><script src="../../storage.js"></script><script defer src="../../main.js"></script><noscript><link rel="stylesheet" href="../../noscript.css"></noscript><link rel="alternate icon" type="image/png" href="../../favicon-16x16.png"><link rel="alternate icon" type="image/png" href="../../favicon-32x32.png"><link rel="icon" type="image/svg+xml" href="../../favicon.svg"></head><body class="rustdoc mod"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">&#9776;</button><a class="sidebar-logo" href="../../syn/index.html"><div class="logo-container"><img class="rust-logo" src="../../rust-logo.svg" alt="logo"></div></a><h2></h2></nav><nav class="sidebar"><a class="sidebar-logo" href="../../syn/index.html"><div class="logo-container"><img class="rust-logo" src="../../rust-logo.svg" alt="logo"></div></a><h2 class="location"><a href="#">Module visit_mut</a></h2><div class="sidebar-elems"><section><ul class="block"><li><a href="#traits">Traits</a></li><li><a href="#functions">Functions</a></li></ul></section></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><div class="search-container"><span></span><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../wheel.svg"></a></div></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1 class="fqn">Module <a href="../index.html">syn</a>::<wbr><a class="mod" href="#">visit_mut</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../clipboard.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="srclink" href="../../src/syn/gen/visit_mut.rs.html#4-3504">source</a> · <a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">&#x2212;</span>]</a></span></div><details class="rustdoc-toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Syntax tree traversal to mutate an exclusive borrow of a syntax tree in
place.</p>
<p>Each method of the <a href="trait.VisitMut.html"><code>VisitMut</code></a> trait is a hook that can be overridden
to customize the behavior when mutating the corresponding type of node.
By default, every method recursively visits the substructure of the
input by invoking the right visitor method of each of its fields.</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">pub trait </span>VisitMut {
<span class="comment">/* ... */
</span><span class="kw">fn </span>visit_expr_binary_mut(<span class="kw-2">&amp;mut </span><span class="self">self</span>, node: <span class="kw-2">&amp;mut </span>ExprBinary) {
visit_expr_binary_mut(<span class="self">self</span>, node);
}
<span class="comment">/* ... */
</span>}
<span class="kw">pub fn </span>visit_expr_binary_mut&lt;V&gt;(v: <span class="kw-2">&amp;mut </span>V, node: <span class="kw-2">&amp;mut </span>ExprBinary)
<span class="kw">where
</span>V: VisitMut + <span class="question-mark">?</span>Sized,
{
<span class="kw">for </span>attr <span class="kw">in </span><span class="kw-2">&amp;mut </span>node.attrs {
v.visit_attribute_mut(attr);
}
v.visit_expr_mut(<span class="kw-2">&amp;mut *</span>node.left);
v.visit_bin_op_mut(<span class="kw-2">&amp;mut </span>node.op);
v.visit_expr_mut(<span class="kw-2">&amp;mut *</span>node.right);
}
<span class="comment">/* ... */</span></code></pre></div>
<br>
<h2 id="example"><a href="#example">Example</a></h2>
<p>This mut visitor replace occurrences of u256 suffixed integer literals
like <code>999u256</code> with a macro invocation <code>bigint::u256!(999)</code>.</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="comment">// [dependencies]
// quote = &quot;1.0&quot;
// syn = { version = &quot;2.0&quot;, features = [&quot;full&quot;, &quot;visit-mut&quot;] }
</span><span class="kw">use </span>quote::quote;
<span class="kw">use </span>syn::visit_mut::{<span class="self">self</span>, VisitMut};
<span class="kw">use </span>syn::{parse_quote, Expr, File, Lit, LitInt};
<span class="kw">struct </span>BigintReplace;
<span class="kw">impl </span>VisitMut <span class="kw">for </span>BigintReplace {
<span class="kw">fn </span>visit_expr_mut(<span class="kw-2">&amp;mut </span><span class="self">self</span>, node: <span class="kw-2">&amp;mut </span>Expr) {
<span class="kw">if let </span>Expr::Lit(expr) = <span class="kw-2">&amp;</span>node {
<span class="kw">if let </span>Lit::Int(int) = <span class="kw-2">&amp;</span>expr.lit {
<span class="kw">if </span>int.suffix() == <span class="string">&quot;u256&quot; </span>{
<span class="kw">let </span>digits = int.base10_digits();
<span class="kw">let </span>unsuffixed: LitInt = syn::parse_str(digits).unwrap();
<span class="kw-2">*</span>node = <span class="macro">parse_quote!</span>(<span class="macro">bigint::u256!</span>(#unsuffixed));
<span class="kw">return</span>;
}
}
}
<span class="comment">// Delegate to the default impl to visit nested expressions.
</span>visit_mut::visit_expr_mut(<span class="self">self</span>, node);
}
}
<span class="kw">fn </span>main() {
<span class="kw">let </span>code = <span class="macro">quote! </span>{
<span class="kw">fn </span>main() {
<span class="kw">let _ </span>= <span class="number">999u256</span>;
}
};
<span class="kw">let </span><span class="kw-2">mut </span>syntax_tree: File = syn::parse2(code).unwrap();
BigintReplace.visit_file_mut(<span class="kw-2">&amp;mut </span>syntax_tree);
<span class="macro">println!</span>(<span class="string">&quot;{}&quot;</span>, <span class="macro">quote!</span>(#syntax_tree));
}</code></pre></div>
</div></details><h2 id="traits" class="small-section-header"><a href="#traits">Traits</a></h2><div class="item-table"><div class="item-row"><div class="item-left module-item"><a class="trait" href="trait.VisitMut.html" title="syn::visit_mut::VisitMut trait">VisitMut</a></div><div class="item-right docblock-short">Syntax tree traversal to mutate an exclusive borrow of a syntax tree in
place.</div></div></div><h2 id="functions" class="small-section-header"><a href="#functions">Functions</a></h2><div class="item-table"><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_abi_mut.html" title="syn::visit_mut::visit_abi_mut fn">visit_abi_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_angle_bracketed_generic_arguments_mut.html" title="syn::visit_mut::visit_angle_bracketed_generic_arguments_mut fn">visit_angle_bracketed_generic_arguments_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_arm_mut.html" title="syn::visit_mut::visit_arm_mut fn">visit_arm_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_assoc_const_mut.html" title="syn::visit_mut::visit_assoc_const_mut fn">visit_assoc_const_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_assoc_type_mut.html" title="syn::visit_mut::visit_assoc_type_mut fn">visit_assoc_type_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_attr_style_mut.html" title="syn::visit_mut::visit_attr_style_mut fn">visit_attr_style_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_attribute_mut.html" title="syn::visit_mut::visit_attribute_mut fn">visit_attribute_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_bare_fn_arg_mut.html" title="syn::visit_mut::visit_bare_fn_arg_mut fn">visit_bare_fn_arg_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_bare_variadic_mut.html" title="syn::visit_mut::visit_bare_variadic_mut fn">visit_bare_variadic_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_bin_op_mut.html" title="syn::visit_mut::visit_bin_op_mut fn">visit_bin_op_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_block_mut.html" title="syn::visit_mut::visit_block_mut fn">visit_block_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_bound_lifetimes_mut.html" title="syn::visit_mut::visit_bound_lifetimes_mut fn">visit_bound_lifetimes_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_const_param_mut.html" title="syn::visit_mut::visit_const_param_mut fn">visit_const_param_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_constraint_mut.html" title="syn::visit_mut::visit_constraint_mut fn">visit_constraint_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_data_enum_mut.html" title="syn::visit_mut::visit_data_enum_mut fn">visit_data_enum_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_data_mut.html" title="syn::visit_mut::visit_data_mut fn">visit_data_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_data_struct_mut.html" title="syn::visit_mut::visit_data_struct_mut fn">visit_data_struct_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_data_union_mut.html" title="syn::visit_mut::visit_data_union_mut fn">visit_data_union_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_derive_input_mut.html" title="syn::visit_mut::visit_derive_input_mut fn">visit_derive_input_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_array_mut.html" title="syn::visit_mut::visit_expr_array_mut fn">visit_expr_array_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_assign_mut.html" title="syn::visit_mut::visit_expr_assign_mut fn">visit_expr_assign_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_async_mut.html" title="syn::visit_mut::visit_expr_async_mut fn">visit_expr_async_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_await_mut.html" title="syn::visit_mut::visit_expr_await_mut fn">visit_expr_await_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_binary_mut.html" title="syn::visit_mut::visit_expr_binary_mut fn">visit_expr_binary_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_block_mut.html" title="syn::visit_mut::visit_expr_block_mut fn">visit_expr_block_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_break_mut.html" title="syn::visit_mut::visit_expr_break_mut fn">visit_expr_break_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_call_mut.html" title="syn::visit_mut::visit_expr_call_mut fn">visit_expr_call_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_cast_mut.html" title="syn::visit_mut::visit_expr_cast_mut fn">visit_expr_cast_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_closure_mut.html" title="syn::visit_mut::visit_expr_closure_mut fn">visit_expr_closure_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_const_mut.html" title="syn::visit_mut::visit_expr_const_mut fn">visit_expr_const_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_continue_mut.html" title="syn::visit_mut::visit_expr_continue_mut fn">visit_expr_continue_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_field_mut.html" title="syn::visit_mut::visit_expr_field_mut fn">visit_expr_field_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_for_loop_mut.html" title="syn::visit_mut::visit_expr_for_loop_mut fn">visit_expr_for_loop_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_group_mut.html" title="syn::visit_mut::visit_expr_group_mut fn">visit_expr_group_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_if_mut.html" title="syn::visit_mut::visit_expr_if_mut fn">visit_expr_if_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_index_mut.html" title="syn::visit_mut::visit_expr_index_mut fn">visit_expr_index_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_infer_mut.html" title="syn::visit_mut::visit_expr_infer_mut fn">visit_expr_infer_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_let_mut.html" title="syn::visit_mut::visit_expr_let_mut fn">visit_expr_let_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_lit_mut.html" title="syn::visit_mut::visit_expr_lit_mut fn">visit_expr_lit_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_loop_mut.html" title="syn::visit_mut::visit_expr_loop_mut fn">visit_expr_loop_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_macro_mut.html" title="syn::visit_mut::visit_expr_macro_mut fn">visit_expr_macro_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_match_mut.html" title="syn::visit_mut::visit_expr_match_mut fn">visit_expr_match_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_method_call_mut.html" title="syn::visit_mut::visit_expr_method_call_mut fn">visit_expr_method_call_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_mut.html" title="syn::visit_mut::visit_expr_mut fn">visit_expr_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_paren_mut.html" title="syn::visit_mut::visit_expr_paren_mut fn">visit_expr_paren_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_path_mut.html" title="syn::visit_mut::visit_expr_path_mut fn">visit_expr_path_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_range_mut.html" title="syn::visit_mut::visit_expr_range_mut fn">visit_expr_range_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_reference_mut.html" title="syn::visit_mut::visit_expr_reference_mut fn">visit_expr_reference_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_repeat_mut.html" title="syn::visit_mut::visit_expr_repeat_mut fn">visit_expr_repeat_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_return_mut.html" title="syn::visit_mut::visit_expr_return_mut fn">visit_expr_return_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_struct_mut.html" title="syn::visit_mut::visit_expr_struct_mut fn">visit_expr_struct_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_try_block_mut.html" title="syn::visit_mut::visit_expr_try_block_mut fn">visit_expr_try_block_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_try_mut.html" title="syn::visit_mut::visit_expr_try_mut fn">visit_expr_try_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_tuple_mut.html" title="syn::visit_mut::visit_expr_tuple_mut fn">visit_expr_tuple_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_unary_mut.html" title="syn::visit_mut::visit_expr_unary_mut fn">visit_expr_unary_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_unsafe_mut.html" title="syn::visit_mut::visit_expr_unsafe_mut fn">visit_expr_unsafe_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_while_mut.html" title="syn::visit_mut::visit_expr_while_mut fn">visit_expr_while_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_expr_yield_mut.html" title="syn::visit_mut::visit_expr_yield_mut fn">visit_expr_yield_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_field_mut.html" title="syn::visit_mut::visit_field_mut fn">visit_field_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_field_mutability_mut.html" title="syn::visit_mut::visit_field_mutability_mut fn">visit_field_mutability_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_field_pat_mut.html" title="syn::visit_mut::visit_field_pat_mut fn">visit_field_pat_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_field_value_mut.html" title="syn::visit_mut::visit_field_value_mut fn">visit_field_value_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_fields_mut.html" title="syn::visit_mut::visit_fields_mut fn">visit_fields_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_fields_named_mut.html" title="syn::visit_mut::visit_fields_named_mut fn">visit_fields_named_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_fields_unnamed_mut.html" title="syn::visit_mut::visit_fields_unnamed_mut fn">visit_fields_unnamed_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_file_mut.html" title="syn::visit_mut::visit_file_mut fn">visit_file_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_fn_arg_mut.html" title="syn::visit_mut::visit_fn_arg_mut fn">visit_fn_arg_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_foreign_item_fn_mut.html" title="syn::visit_mut::visit_foreign_item_fn_mut fn">visit_foreign_item_fn_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_foreign_item_macro_mut.html" title="syn::visit_mut::visit_foreign_item_macro_mut fn">visit_foreign_item_macro_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_foreign_item_mut.html" title="syn::visit_mut::visit_foreign_item_mut fn">visit_foreign_item_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_foreign_item_static_mut.html" title="syn::visit_mut::visit_foreign_item_static_mut fn">visit_foreign_item_static_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_foreign_item_type_mut.html" title="syn::visit_mut::visit_foreign_item_type_mut fn">visit_foreign_item_type_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_generic_argument_mut.html" title="syn::visit_mut::visit_generic_argument_mut fn">visit_generic_argument_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_generic_param_mut.html" title="syn::visit_mut::visit_generic_param_mut fn">visit_generic_param_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_generics_mut.html" title="syn::visit_mut::visit_generics_mut fn">visit_generics_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_ident_mut.html" title="syn::visit_mut::visit_ident_mut fn">visit_ident_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_impl_item_const_mut.html" title="syn::visit_mut::visit_impl_item_const_mut fn">visit_impl_item_const_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_impl_item_fn_mut.html" title="syn::visit_mut::visit_impl_item_fn_mut fn">visit_impl_item_fn_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_impl_item_macro_mut.html" title="syn::visit_mut::visit_impl_item_macro_mut fn">visit_impl_item_macro_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_impl_item_mut.html" title="syn::visit_mut::visit_impl_item_mut fn">visit_impl_item_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_impl_item_type_mut.html" title="syn::visit_mut::visit_impl_item_type_mut fn">visit_impl_item_type_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_impl_restriction_mut.html" title="syn::visit_mut::visit_impl_restriction_mut fn">visit_impl_restriction_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_index_mut.html" title="syn::visit_mut::visit_index_mut fn">visit_index_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_item_const_mut.html" title="syn::visit_mut::visit_item_const_mut fn">visit_item_const_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_item_enum_mut.html" title="syn::visit_mut::visit_item_enum_mut fn">visit_item_enum_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_item_extern_crate_mut.html" title="syn::visit_mut::visit_item_extern_crate_mut fn">visit_item_extern_crate_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_item_fn_mut.html" title="syn::visit_mut::visit_item_fn_mut fn">visit_item_fn_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_item_foreign_mod_mut.html" title="syn::visit_mut::visit_item_foreign_mod_mut fn">visit_item_foreign_mod_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_item_impl_mut.html" title="syn::visit_mut::visit_item_impl_mut fn">visit_item_impl_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_item_macro_mut.html" title="syn::visit_mut::visit_item_macro_mut fn">visit_item_macro_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_item_mod_mut.html" title="syn::visit_mut::visit_item_mod_mut fn">visit_item_mod_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_item_mut.html" title="syn::visit_mut::visit_item_mut fn">visit_item_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_item_static_mut.html" title="syn::visit_mut::visit_item_static_mut fn">visit_item_static_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_item_struct_mut.html" title="syn::visit_mut::visit_item_struct_mut fn">visit_item_struct_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_item_trait_alias_mut.html" title="syn::visit_mut::visit_item_trait_alias_mut fn">visit_item_trait_alias_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_item_trait_mut.html" title="syn::visit_mut::visit_item_trait_mut fn">visit_item_trait_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_item_type_mut.html" title="syn::visit_mut::visit_item_type_mut fn">visit_item_type_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_item_union_mut.html" title="syn::visit_mut::visit_item_union_mut fn">visit_item_union_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_item_use_mut.html" title="syn::visit_mut::visit_item_use_mut fn">visit_item_use_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_label_mut.html" title="syn::visit_mut::visit_label_mut fn">visit_label_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_lifetime_mut.html" title="syn::visit_mut::visit_lifetime_mut fn">visit_lifetime_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_lifetime_param_mut.html" title="syn::visit_mut::visit_lifetime_param_mut fn">visit_lifetime_param_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_lit_bool_mut.html" title="syn::visit_mut::visit_lit_bool_mut fn">visit_lit_bool_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_lit_byte_mut.html" title="syn::visit_mut::visit_lit_byte_mut fn">visit_lit_byte_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_lit_byte_str_mut.html" title="syn::visit_mut::visit_lit_byte_str_mut fn">visit_lit_byte_str_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_lit_char_mut.html" title="syn::visit_mut::visit_lit_char_mut fn">visit_lit_char_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_lit_float_mut.html" title="syn::visit_mut::visit_lit_float_mut fn">visit_lit_float_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_lit_int_mut.html" title="syn::visit_mut::visit_lit_int_mut fn">visit_lit_int_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_lit_mut.html" title="syn::visit_mut::visit_lit_mut fn">visit_lit_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_lit_str_mut.html" title="syn::visit_mut::visit_lit_str_mut fn">visit_lit_str_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_local_init_mut.html" title="syn::visit_mut::visit_local_init_mut fn">visit_local_init_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_local_mut.html" title="syn::visit_mut::visit_local_mut fn">visit_local_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_macro_delimiter_mut.html" title="syn::visit_mut::visit_macro_delimiter_mut fn">visit_macro_delimiter_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_macro_mut.html" title="syn::visit_mut::visit_macro_mut fn">visit_macro_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_member_mut.html" title="syn::visit_mut::visit_member_mut fn">visit_member_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_meta_list_mut.html" title="syn::visit_mut::visit_meta_list_mut fn">visit_meta_list_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_meta_mut.html" title="syn::visit_mut::visit_meta_mut fn">visit_meta_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_meta_name_value_mut.html" title="syn::visit_mut::visit_meta_name_value_mut fn">visit_meta_name_value_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_parenthesized_generic_arguments_mut.html" title="syn::visit_mut::visit_parenthesized_generic_arguments_mut fn">visit_parenthesized_generic_arguments_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_pat_ident_mut.html" title="syn::visit_mut::visit_pat_ident_mut fn">visit_pat_ident_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_pat_mut.html" title="syn::visit_mut::visit_pat_mut fn">visit_pat_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_pat_or_mut.html" title="syn::visit_mut::visit_pat_or_mut fn">visit_pat_or_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_pat_paren_mut.html" title="syn::visit_mut::visit_pat_paren_mut fn">visit_pat_paren_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_pat_reference_mut.html" title="syn::visit_mut::visit_pat_reference_mut fn">visit_pat_reference_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_pat_rest_mut.html" title="syn::visit_mut::visit_pat_rest_mut fn">visit_pat_rest_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_pat_slice_mut.html" title="syn::visit_mut::visit_pat_slice_mut fn">visit_pat_slice_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_pat_struct_mut.html" title="syn::visit_mut::visit_pat_struct_mut fn">visit_pat_struct_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_pat_tuple_mut.html" title="syn::visit_mut::visit_pat_tuple_mut fn">visit_pat_tuple_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_pat_tuple_struct_mut.html" title="syn::visit_mut::visit_pat_tuple_struct_mut fn">visit_pat_tuple_struct_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_pat_type_mut.html" title="syn::visit_mut::visit_pat_type_mut fn">visit_pat_type_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_pat_wild_mut.html" title="syn::visit_mut::visit_pat_wild_mut fn">visit_pat_wild_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_path_arguments_mut.html" title="syn::visit_mut::visit_path_arguments_mut fn">visit_path_arguments_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_path_mut.html" title="syn::visit_mut::visit_path_mut fn">visit_path_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_path_segment_mut.html" title="syn::visit_mut::visit_path_segment_mut fn">visit_path_segment_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_predicate_lifetime_mut.html" title="syn::visit_mut::visit_predicate_lifetime_mut fn">visit_predicate_lifetime_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_predicate_type_mut.html" title="syn::visit_mut::visit_predicate_type_mut fn">visit_predicate_type_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_qself_mut.html" title="syn::visit_mut::visit_qself_mut fn">visit_qself_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_range_limits_mut.html" title="syn::visit_mut::visit_range_limits_mut fn">visit_range_limits_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_receiver_mut.html" title="syn::visit_mut::visit_receiver_mut fn">visit_receiver_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_return_type_mut.html" title="syn::visit_mut::visit_return_type_mut fn">visit_return_type_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_signature_mut.html" title="syn::visit_mut::visit_signature_mut fn">visit_signature_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_span_mut.html" title="syn::visit_mut::visit_span_mut fn">visit_span_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_static_mutability_mut.html" title="syn::visit_mut::visit_static_mutability_mut fn">visit_static_mutability_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_stmt_macro_mut.html" title="syn::visit_mut::visit_stmt_macro_mut fn">visit_stmt_macro_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_stmt_mut.html" title="syn::visit_mut::visit_stmt_mut fn">visit_stmt_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_trait_bound_modifier_mut.html" title="syn::visit_mut::visit_trait_bound_modifier_mut fn">visit_trait_bound_modifier_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_trait_bound_mut.html" title="syn::visit_mut::visit_trait_bound_mut fn">visit_trait_bound_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_trait_item_const_mut.html" title="syn::visit_mut::visit_trait_item_const_mut fn">visit_trait_item_const_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_trait_item_fn_mut.html" title="syn::visit_mut::visit_trait_item_fn_mut fn">visit_trait_item_fn_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_trait_item_macro_mut.html" title="syn::visit_mut::visit_trait_item_macro_mut fn">visit_trait_item_macro_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_trait_item_mut.html" title="syn::visit_mut::visit_trait_item_mut fn">visit_trait_item_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_trait_item_type_mut.html" title="syn::visit_mut::visit_trait_item_type_mut fn">visit_trait_item_type_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_type_array_mut.html" title="syn::visit_mut::visit_type_array_mut fn">visit_type_array_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_type_bare_fn_mut.html" title="syn::visit_mut::visit_type_bare_fn_mut fn">visit_type_bare_fn_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_type_group_mut.html" title="syn::visit_mut::visit_type_group_mut fn">visit_type_group_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_type_impl_trait_mut.html" title="syn::visit_mut::visit_type_impl_trait_mut fn">visit_type_impl_trait_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_type_infer_mut.html" title="syn::visit_mut::visit_type_infer_mut fn">visit_type_infer_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_type_macro_mut.html" title="syn::visit_mut::visit_type_macro_mut fn">visit_type_macro_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_type_mut.html" title="syn::visit_mut::visit_type_mut fn">visit_type_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_type_never_mut.html" title="syn::visit_mut::visit_type_never_mut fn">visit_type_never_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_type_param_bound_mut.html" title="syn::visit_mut::visit_type_param_bound_mut fn">visit_type_param_bound_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_type_param_mut.html" title="syn::visit_mut::visit_type_param_mut fn">visit_type_param_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_type_paren_mut.html" title="syn::visit_mut::visit_type_paren_mut fn">visit_type_paren_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_type_path_mut.html" title="syn::visit_mut::visit_type_path_mut fn">visit_type_path_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_type_ptr_mut.html" title="syn::visit_mut::visit_type_ptr_mut fn">visit_type_ptr_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_type_reference_mut.html" title="syn::visit_mut::visit_type_reference_mut fn">visit_type_reference_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_type_slice_mut.html" title="syn::visit_mut::visit_type_slice_mut fn">visit_type_slice_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_type_trait_object_mut.html" title="syn::visit_mut::visit_type_trait_object_mut fn">visit_type_trait_object_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_type_tuple_mut.html" title="syn::visit_mut::visit_type_tuple_mut fn">visit_type_tuple_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_un_op_mut.html" title="syn::visit_mut::visit_un_op_mut fn">visit_un_op_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_use_glob_mut.html" title="syn::visit_mut::visit_use_glob_mut fn">visit_use_glob_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_use_group_mut.html" title="syn::visit_mut::visit_use_group_mut fn">visit_use_group_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_use_name_mut.html" title="syn::visit_mut::visit_use_name_mut fn">visit_use_name_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_use_path_mut.html" title="syn::visit_mut::visit_use_path_mut fn">visit_use_path_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_use_rename_mut.html" title="syn::visit_mut::visit_use_rename_mut fn">visit_use_rename_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_use_tree_mut.html" title="syn::visit_mut::visit_use_tree_mut fn">visit_use_tree_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_variadic_mut.html" title="syn::visit_mut::visit_variadic_mut fn">visit_variadic_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_variant_mut.html" title="syn::visit_mut::visit_variant_mut fn">visit_variant_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_vis_restricted_mut.html" title="syn::visit_mut::visit_vis_restricted_mut fn">visit_vis_restricted_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_visibility_mut.html" title="syn::visit_mut::visit_visibility_mut fn">visit_visibility_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_where_clause_mut.html" title="syn::visit_mut::visit_where_clause_mut fn">visit_where_clause_mut</a></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.visit_where_predicate_mut.html" title="syn::visit_mut::visit_where_predicate_mut fn">visit_where_predicate_mut</a></div></div></div></section></div></main><div id="rustdoc-vars" data-root-path="../../" data-current-crate="syn" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.66.0-nightly (5c8bff74b 2022-10-21)" ></div></body></html>