Lines Matching refs:node

929 pub fn visit_abi_mut<V>(v: &mut V, node: &mut Abi)
933 skip!(node.extern_token);
934 if let Some(it) = &mut node.name {
942 node: &mut AngleBracketedGenericArguments,
947 skip!(node.colon2_token);
948 skip!(node.lt_token);
949 for mut el in Punctuated::pairs_mut(&mut node.args) {
953 skip!(node.gt_token);
957 pub fn visit_arm_mut<V>(v: &mut V, node: &mut Arm)
961 for it in &mut node.attrs {
964 v.visit_pat_mut(&mut node.pat);
965 if let Some(it) = &mut node.guard {
969 skip!(node.fat_arrow_token);
970 v.visit_expr_mut(&mut *node.body);
971 skip!(node.comma);
975 pub fn visit_assoc_const_mut<V>(v: &mut V, node: &mut AssocConst)
979 v.visit_ident_mut(&mut node.ident);
980 if let Some(it) = &mut node.generics {
983 skip!(node.eq_token);
984 v.visit_expr_mut(&mut node.value);
988 pub fn visit_assoc_type_mut<V>(v: &mut V, node: &mut AssocType)
992 v.visit_ident_mut(&mut node.ident);
993 if let Some(it) = &mut node.generics {
996 skip!(node.eq_token);
997 v.visit_type_mut(&mut node.ty);
1001 pub fn visit_attr_style_mut<V>(v: &mut V, node: &mut AttrStyle)
1005 match node {
1014 pub fn visit_attribute_mut<V>(v: &mut V, node: &mut Attribute)
1018 skip!(node.pound_token);
1019 v.visit_attr_style_mut(&mut node.style);
1020 skip!(node.bracket_token);
1021 v.visit_meta_mut(&mut node.meta);
1025 pub fn visit_bare_fn_arg_mut<V>(v: &mut V, node: &mut BareFnArg)
1029 for it in &mut node.attrs {
1032 if let Some(it) = &mut node.name {
1036 v.visit_type_mut(&mut node.ty);
1040 pub fn visit_bare_variadic_mut<V>(v: &mut V, node: &mut BareVariadic)
1044 for it in &mut node.attrs {
1047 if let Some(it) = &mut node.name {
1051 skip!(node.dots);
1052 skip!(node.comma);
1056 pub fn visit_bin_op_mut<V>(v: &mut V, node: &mut BinOp)
1060 match node {
1149 pub fn visit_block_mut<V>(v: &mut V, node: &mut Block)
1153 skip!(node.brace_token);
1154 for it in &mut node.stmts {
1160 pub fn visit_bound_lifetimes_mut<V>(v: &mut V, node: &mut BoundLifetimes)
1164 skip!(node.for_token);
1165 skip!(node.lt_token);
1166 for mut el in Punctuated::pairs_mut(&mut node.lifetimes) {
1170 skip!(node.gt_token);
1174 pub fn visit_const_param_mut<V>(v: &mut V, node: &mut ConstParam)
1178 for it in &mut node.attrs {
1181 skip!(node.const_token);
1182 v.visit_ident_mut(&mut node.ident);
1183 skip!(node.colon_token);
1184 v.visit_type_mut(&mut node.ty);
1185 skip!(node.eq_token);
1186 if let Some(it) = &mut node.default {
1192 pub fn visit_constraint_mut<V>(v: &mut V, node: &mut Constraint)
1196 v.visit_ident_mut(&mut node.ident);
1197 if let Some(it) = &mut node.generics {
1200 skip!(node.colon_token);
1201 for mut el in Punctuated::pairs_mut(&mut node.bounds) {
1208 pub fn visit_data_mut<V>(v: &mut V, node: &mut Data)
1212 match node {
1226 pub fn visit_data_enum_mut<V>(v: &mut V, node: &mut DataEnum)
1230 skip!(node.enum_token);
1231 skip!(node.brace_token);
1232 for mut el in Punctuated::pairs_mut(&mut node.variants) {
1239 pub fn visit_data_struct_mut<V>(v: &mut V, node: &mut DataStruct)
1243 skip!(node.struct_token);
1244 v.visit_fields_mut(&mut node.fields);
1245 skip!(node.semi_token);
1249 pub fn visit_data_union_mut<V>(v: &mut V, node: &mut DataUnion)
1253 skip!(node.union_token);
1254 v.visit_fields_named_mut(&mut node.fields);
1258 pub fn visit_derive_input_mut<V>(v: &mut V, node: &mut DeriveInput)
1262 for it in &mut node.attrs {
1265 v.visit_visibility_mut(&mut node.vis);
1266 v.visit_ident_mut(&mut node.ident);
1267 v.visit_generics_mut(&mut node.generics);
1268 v.visit_data_mut(&mut node.data);
1272 pub fn visit_expr_mut<V>(v: &mut V, node: &mut Expr)
1276 match node {
1398 pub fn visit_expr_array_mut<V>(v: &mut V, node: &mut ExprArray)
1402 for it in &mut node.attrs {
1405 skip!(node.bracket_token);
1406 for mut el in Punctuated::pairs_mut(&mut node.elems) {
1413 pub fn visit_expr_assign_mut<V>(v: &mut V, node: &mut ExprAssign)
1417 for it in &mut node.attrs {
1420 v.visit_expr_mut(&mut *node.left);
1421 skip!(node.eq_token);
1422 v.visit_expr_mut(&mut *node.right);
1426 pub fn visit_expr_async_mut<V>(v: &mut V, node: &mut ExprAsync)
1430 for it in &mut node.attrs {
1433 skip!(node.async_token);
1434 skip!(node.capture);
1435 v.visit_block_mut(&mut node.block);
1439 pub fn visit_expr_await_mut<V>(v: &mut V, node: &mut ExprAwait)
1443 for it in &mut node.attrs {
1446 v.visit_expr_mut(&mut *node.base);
1447 skip!(node.dot_token);
1448 skip!(node.await_token);
1452 pub fn visit_expr_binary_mut<V>(v: &mut V, node: &mut ExprBinary)
1456 for it in &mut node.attrs {
1459 v.visit_expr_mut(&mut *node.left);
1460 v.visit_bin_op_mut(&mut node.op);
1461 v.visit_expr_mut(&mut *node.right);
1465 pub fn visit_expr_block_mut<V>(v: &mut V, node: &mut ExprBlock)
1469 for it in &mut node.attrs {
1472 if let Some(it) = &mut node.label {
1475 v.visit_block_mut(&mut node.block);
1479 pub fn visit_expr_break_mut<V>(v: &mut V, node: &mut ExprBreak)
1483 for it in &mut node.attrs {
1486 skip!(node.break_token);
1487 if let Some(it) = &mut node.label {
1490 if let Some(it) = &mut node.expr {
1496 pub fn visit_expr_call_mut<V>(v: &mut V, node: &mut ExprCall)
1500 for it in &mut node.attrs {
1503 v.visit_expr_mut(&mut *node.func);
1504 skip!(node.paren_token);
1505 for mut el in Punctuated::pairs_mut(&mut node.args) {
1512 pub fn visit_expr_cast_mut<V>(v: &mut V, node: &mut ExprCast)
1516 for it in &mut node.attrs {
1519 v.visit_expr_mut(&mut *node.expr);
1520 skip!(node.as_token);
1521 v.visit_type_mut(&mut *node.ty);
1525 pub fn visit_expr_closure_mut<V>(v: &mut V, node: &mut ExprClosure)
1529 for it in &mut node.attrs {
1532 if let Some(it) = &mut node.lifetimes {
1535 skip!(node.constness);
1536 skip!(node.movability);
1537 skip!(node.asyncness);
1538 skip!(node.capture);
1539 skip!(node.or1_token);
1540 for mut el in Punctuated::pairs_mut(&mut node.inputs) {
1544 skip!(node.or2_token);
1545 v.visit_return_type_mut(&mut node.output);
1546 v.visit_expr_mut(&mut *node.body);
1550 pub fn visit_expr_const_mut<V>(v: &mut V, node: &mut ExprConst)
1554 for it in &mut node.attrs {
1557 skip!(node.const_token);
1558 v.visit_block_mut(&mut node.block);
1562 pub fn visit_expr_continue_mut<V>(v: &mut V, node: &mut ExprContinue)
1566 for it in &mut node.attrs {
1569 skip!(node.continue_token);
1570 if let Some(it) = &mut node.label {
1576 pub fn visit_expr_field_mut<V>(v: &mut V, node: &mut ExprField)
1580 for it in &mut node.attrs {
1583 v.visit_expr_mut(&mut *node.base);
1584 skip!(node.dot_token);
1585 v.visit_member_mut(&mut node.member);
1589 pub fn visit_expr_for_loop_mut<V>(v: &mut V, node: &mut ExprForLoop)
1593 for it in &mut node.attrs {
1596 if let Some(it) = &mut node.label {
1599 skip!(node.for_token);
1600 v.visit_pat_mut(&mut *node.pat);
1601 skip!(node.in_token);
1602 v.visit_expr_mut(&mut *node.expr);
1603 v.visit_block_mut(&mut node.body);
1607 pub fn visit_expr_group_mut<V>(v: &mut V, node: &mut ExprGroup)
1611 for it in &mut node.attrs {
1614 skip!(node.group_token);
1615 v.visit_expr_mut(&mut *node.expr);
1619 pub fn visit_expr_if_mut<V>(v: &mut V, node: &mut ExprIf)
1623 for it in &mut node.attrs {
1626 skip!(node.if_token);
1627 v.visit_expr_mut(&mut *node.cond);
1628 v.visit_block_mut(&mut node.then_branch);
1629 if let Some(it) = &mut node.else_branch {
1636 pub fn visit_expr_index_mut<V>(v: &mut V, node: &mut ExprIndex)
1640 for it in &mut node.attrs {
1643 v.visit_expr_mut(&mut *node.expr);
1644 skip!(node.bracket_token);
1645 v.visit_expr_mut(&mut *node.index);
1649 pub fn visit_expr_infer_mut<V>(v: &mut V, node: &mut ExprInfer)
1653 for it in &mut node.attrs {
1656 skip!(node.underscore_token);
1660 pub fn visit_expr_let_mut<V>(v: &mut V, node: &mut ExprLet)
1664 for it in &mut node.attrs {
1667 skip!(node.let_token);
1668 v.visit_pat_mut(&mut *node.pat);
1669 skip!(node.eq_token);
1670 v.visit_expr_mut(&mut *node.expr);
1674 pub fn visit_expr_lit_mut<V>(v: &mut V, node: &mut ExprLit)
1678 for it in &mut node.attrs {
1681 v.visit_lit_mut(&mut node.lit);
1685 pub fn visit_expr_loop_mut<V>(v: &mut V, node: &mut ExprLoop)
1689 for it in &mut node.attrs {
1692 if let Some(it) = &mut node.label {
1695 skip!(node.loop_token);
1696 v.visit_block_mut(&mut node.body);
1700 pub fn visit_expr_macro_mut<V>(v: &mut V, node: &mut ExprMacro)
1704 for it in &mut node.attrs {
1707 v.visit_macro_mut(&mut node.mac);
1711 pub fn visit_expr_match_mut<V>(v: &mut V, node: &mut ExprMatch)
1715 for it in &mut node.attrs {
1718 skip!(node.match_token);
1719 v.visit_expr_mut(&mut *node.expr);
1720 skip!(node.brace_token);
1721 for it in &mut node.arms {
1727 pub fn visit_expr_method_call_mut<V>(v: &mut V, node: &mut ExprMethodCall)
1731 for it in &mut node.attrs {
1734 v.visit_expr_mut(&mut *node.receiver);
1735 skip!(node.dot_token);
1736 v.visit_ident_mut(&mut node.method);
1737 if let Some(it) = &mut node.turbofish {
1740 skip!(node.paren_token);
1741 for mut el in Punctuated::pairs_mut(&mut node.args) {
1748 pub fn visit_expr_paren_mut<V>(v: &mut V, node: &mut ExprParen)
1752 for it in &mut node.attrs {
1755 skip!(node.paren_token);
1756 v.visit_expr_mut(&mut *node.expr);
1760 pub fn visit_expr_path_mut<V>(v: &mut V, node: &mut ExprPath)
1764 for it in &mut node.attrs {
1767 if let Some(it) = &mut node.qself {
1770 v.visit_path_mut(&mut node.path);
1774 pub fn visit_expr_range_mut<V>(v: &mut V, node: &mut ExprRange)
1778 for it in &mut node.attrs {
1781 if let Some(it) = &mut node.start {
1784 v.visit_range_limits_mut(&mut node.limits);
1785 if let Some(it) = &mut node.end {
1791 pub fn visit_expr_reference_mut<V>(v: &mut V, node: &mut ExprReference)
1795 for it in &mut node.attrs {
1798 skip!(node.and_token);
1799 skip!(node.mutability);
1800 v.visit_expr_mut(&mut *node.expr);
1804 pub fn visit_expr_repeat_mut<V>(v: &mut V, node: &mut ExprRepeat)
1808 for it in &mut node.attrs {
1811 skip!(node.bracket_token);
1812 v.visit_expr_mut(&mut *node.expr);
1813 skip!(node.semi_token);
1814 v.visit_expr_mut(&mut *node.len);
1818 pub fn visit_expr_return_mut<V>(v: &mut V, node: &mut ExprReturn)
1822 for it in &mut node.attrs {
1825 skip!(node.return_token);
1826 if let Some(it) = &mut node.expr {
1832 pub fn visit_expr_struct_mut<V>(v: &mut V, node: &mut ExprStruct)
1836 for it in &mut node.attrs {
1839 if let Some(it) = &mut node.qself {
1842 v.visit_path_mut(&mut node.path);
1843 skip!(node.brace_token);
1844 for mut el in Punctuated::pairs_mut(&mut node.fields) {
1848 skip!(node.dot2_token);
1849 if let Some(it) = &mut node.rest {
1855 pub fn visit_expr_try_mut<V>(v: &mut V, node: &mut ExprTry)
1859 for it in &mut node.attrs {
1862 v.visit_expr_mut(&mut *node.expr);
1863 skip!(node.question_token);
1867 pub fn visit_expr_try_block_mut<V>(v: &mut V, node: &mut ExprTryBlock)
1871 for it in &mut node.attrs {
1874 skip!(node.try_token);
1875 v.visit_block_mut(&mut node.block);
1879 pub fn visit_expr_tuple_mut<V>(v: &mut V, node: &mut ExprTuple)
1883 for it in &mut node.attrs {
1886 skip!(node.paren_token);
1887 for mut el in Punctuated::pairs_mut(&mut node.elems) {
1894 pub fn visit_expr_unary_mut<V>(v: &mut V, node: &mut ExprUnary)
1898 for it in &mut node.attrs {
1901 v.visit_un_op_mut(&mut node.op);
1902 v.visit_expr_mut(&mut *node.expr);
1906 pub fn visit_expr_unsafe_mut<V>(v: &mut V, node: &mut ExprUnsafe)
1910 for it in &mut node.attrs {
1913 skip!(node.unsafe_token);
1914 v.visit_block_mut(&mut node.block);
1918 pub fn visit_expr_while_mut<V>(v: &mut V, node: &mut ExprWhile)
1922 for it in &mut node.attrs {
1925 if let Some(it) = &mut node.label {
1928 skip!(node.while_token);
1929 v.visit_expr_mut(&mut *node.cond);
1930 v.visit_block_mut(&mut node.body);
1934 pub fn visit_expr_yield_mut<V>(v: &mut V, node: &mut ExprYield)
1938 for it in &mut node.attrs {
1941 skip!(node.yield_token);
1942 if let Some(it) = &mut node.expr {
1948 pub fn visit_field_mut<V>(v: &mut V, node: &mut Field)
1952 for it in &mut node.attrs {
1955 v.visit_visibility_mut(&mut node.vis);
1956 v.visit_field_mutability_mut(&mut node.mutability);
1957 if let Some(it) = &mut node.ident {
1960 skip!(node.colon_token);
1961 v.visit_type_mut(&mut node.ty);
1965 pub fn visit_field_mutability_mut<V>(v: &mut V, node: &mut FieldMutability)
1969 match node {
1975 pub fn visit_field_pat_mut<V>(v: &mut V, node: &mut FieldPat)
1979 for it in &mut node.attrs {
1982 v.visit_member_mut(&mut node.member);
1983 skip!(node.colon_token);
1984 v.visit_pat_mut(&mut *node.pat);
1988 pub fn visit_field_value_mut<V>(v: &mut V, node: &mut FieldValue)
1992 for it in &mut node.attrs {
1995 v.visit_member_mut(&mut node.member);
1996 skip!(node.colon_token);
1997 v.visit_expr_mut(&mut node.expr);
2001 pub fn visit_fields_mut<V>(v: &mut V, node: &mut Fields)
2005 match node {
2017 pub fn visit_fields_named_mut<V>(v: &mut V, node: &mut FieldsNamed)
2021 skip!(node.brace_token);
2022 for mut el in Punctuated::pairs_mut(&mut node.named) {
2029 pub fn visit_fields_unnamed_mut<V>(v: &mut V, node: &mut FieldsUnnamed)
2033 skip!(node.paren_token);
2034 for mut el in Punctuated::pairs_mut(&mut node.unnamed) {
2041 pub fn visit_file_mut<V>(v: &mut V, node: &mut File)
2045 skip!(node.shebang);
2046 for it in &mut node.attrs {
2049 for it in &mut node.items {
2055 pub fn visit_fn_arg_mut<V>(v: &mut V, node: &mut FnArg)
2059 match node {
2070 pub fn visit_foreign_item_mut<V>(v: &mut V, node: &mut ForeignItem)
2074 match node {
2094 pub fn visit_foreign_item_fn_mut<V>(v: &mut V, node: &mut ForeignItemFn)
2098 for it in &mut node.attrs {
2101 v.visit_visibility_mut(&mut node.vis);
2102 v.visit_signature_mut(&mut node.sig);
2103 skip!(node.semi_token);
2107 pub fn visit_foreign_item_macro_mut<V>(v: &mut V, node: &mut ForeignItemMacro)
2111 for it in &mut node.attrs {
2114 v.visit_macro_mut(&mut node.mac);
2115 skip!(node.semi_token);
2119 pub fn visit_foreign_item_static_mut<V>(v: &mut V, node: &mut ForeignItemStatic)
2123 for it in &mut node.attrs {
2126 v.visit_visibility_mut(&mut node.vis);
2127 skip!(node.static_token);
2128 v.visit_static_mutability_mut(&mut node.mutability);
2129 v.visit_ident_mut(&mut node.ident);
2130 skip!(node.colon_token);
2131 v.visit_type_mut(&mut *node.ty);
2132 skip!(node.semi_token);
2136 pub fn visit_foreign_item_type_mut<V>(v: &mut V, node: &mut ForeignItemType)
2140 for it in &mut node.attrs {
2143 v.visit_visibility_mut(&mut node.vis);
2144 skip!(node.type_token);
2145 v.visit_ident_mut(&mut node.ident);
2146 v.visit_generics_mut(&mut node.generics);
2147 skip!(node.semi_token);
2151 pub fn visit_generic_argument_mut<V>(v: &mut V, node: &mut GenericArgument)
2155 match node {
2178 pub fn visit_generic_param_mut<V>(v: &mut V, node: &mut GenericParam)
2182 match node {
2196 pub fn visit_generics_mut<V>(v: &mut V, node: &mut Generics)
2200 skip!(node.lt_token);
2201 for mut el in Punctuated::pairs_mut(&mut node.params) {
2205 skip!(node.gt_token);
2206 if let Some(it) = &mut node.where_clause {
2210 pub fn visit_ident_mut<V>(v: &mut V, node: &mut Ident)
2214 let mut span = node.span();
2216 node.set_span(span);
2220 pub fn visit_impl_item_mut<V>(v: &mut V, node: &mut ImplItem)
2224 match node {
2244 pub fn visit_impl_item_const_mut<V>(v: &mut V, node: &mut ImplItemConst)
2248 for it in &mut node.attrs {
2251 v.visit_visibility_mut(&mut node.vis);
2252 skip!(node.defaultness);
2253 skip!(node.const_token);
2254 v.visit_ident_mut(&mut node.ident);
2255 v.visit_generics_mut(&mut node.generics);
2256 skip!(node.colon_token);
2257 v.visit_type_mut(&mut node.ty);
2258 skip!(node.eq_token);
2259 v.visit_expr_mut(&mut node.expr);
2260 skip!(node.semi_token);
2264 pub fn visit_impl_item_fn_mut<V>(v: &mut V, node: &mut ImplItemFn)
2268 for it in &mut node.attrs {
2271 v.visit_visibility_mut(&mut node.vis);
2272 skip!(node.defaultness);
2273 v.visit_signature_mut(&mut node.sig);
2274 v.visit_block_mut(&mut node.block);
2278 pub fn visit_impl_item_macro_mut<V>(v: &mut V, node: &mut ImplItemMacro)
2282 for it in &mut node.attrs {
2285 v.visit_macro_mut(&mut node.mac);
2286 skip!(node.semi_token);
2290 pub fn visit_impl_item_type_mut<V>(v: &mut V, node: &mut ImplItemType)
2294 for it in &mut node.attrs {
2297 v.visit_visibility_mut(&mut node.vis);
2298 skip!(node.defaultness);
2299 skip!(node.type_token);
2300 v.visit_ident_mut(&mut node.ident);
2301 v.visit_generics_mut(&mut node.generics);
2302 skip!(node.eq_token);
2303 v.visit_type_mut(&mut node.ty);
2304 skip!(node.semi_token);
2308 pub fn visit_impl_restriction_mut<V>(v: &mut V, node: &mut ImplRestriction)
2312 match *node {}
2316 pub fn visit_index_mut<V>(v: &mut V, node: &mut Index)
2320 skip!(node.index);
2321 v.visit_span_mut(&mut node.span);
2325 pub fn visit_item_mut<V>(v: &mut V, node: &mut Item)
2329 match node {
2382 pub fn visit_item_const_mut<V>(v: &mut V, node: &mut ItemConst)
2386 for it in &mut node.attrs {
2389 v.visit_visibility_mut(&mut node.vis);
2390 skip!(node.const_token);
2391 v.visit_ident_mut(&mut node.ident);
2392 v.visit_generics_mut(&mut node.generics);
2393 skip!(node.colon_token);
2394 v.visit_type_mut(&mut *node.ty);
2395 skip!(node.eq_token);
2396 v.visit_expr_mut(&mut *node.expr);
2397 skip!(node.semi_token);
2401 pub fn visit_item_enum_mut<V>(v: &mut V, node: &mut ItemEnum)
2405 for it in &mut node.attrs {
2408 v.visit_visibility_mut(&mut node.vis);
2409 skip!(node.enum_token);
2410 v.visit_ident_mut(&mut node.ident);
2411 v.visit_generics_mut(&mut node.generics);
2412 skip!(node.brace_token);
2413 for mut el in Punctuated::pairs_mut(&mut node.variants) {
2420 pub fn visit_item_extern_crate_mut<V>(v: &mut V, node: &mut ItemExternCrate)
2424 for it in &mut node.attrs {
2427 v.visit_visibility_mut(&mut node.vis);
2428 skip!(node.extern_token);
2429 skip!(node.crate_token);
2430 v.visit_ident_mut(&mut node.ident);
2431 if let Some(it) = &mut node.rename {
2435 skip!(node.semi_token);
2439 pub fn visit_item_fn_mut<V>(v: &mut V, node: &mut ItemFn)
2443 for it in &mut node.attrs {
2446 v.visit_visibility_mut(&mut node.vis);
2447 v.visit_signature_mut(&mut node.sig);
2448 v.visit_block_mut(&mut *node.block);
2452 pub fn visit_item_foreign_mod_mut<V>(v: &mut V, node: &mut ItemForeignMod)
2456 for it in &mut node.attrs {
2459 skip!(node.unsafety);
2460 v.visit_abi_mut(&mut node.abi);
2461 skip!(node.brace_token);
2462 for it in &mut node.items {
2468 pub fn visit_item_impl_mut<V>(v: &mut V, node: &mut ItemImpl)
2472 for it in &mut node.attrs {
2475 skip!(node.defaultness);
2476 skip!(node.unsafety);
2477 skip!(node.impl_token);
2478 v.visit_generics_mut(&mut node.generics);
2479 if let Some(it) = &mut node.trait_ {
2484 v.visit_type_mut(&mut *node.self_ty);
2485 skip!(node.brace_token);
2486 for it in &mut node.items {
2492 pub fn visit_item_macro_mut<V>(v: &mut V, node: &mut ItemMacro)
2496 for it in &mut node.attrs {
2499 if let Some(it) = &mut node.ident {
2502 v.visit_macro_mut(&mut node.mac);
2503 skip!(node.semi_token);
2507 pub fn visit_item_mod_mut<V>(v: &mut V, node: &mut ItemMod)
2511 for it in &mut node.attrs {
2514 v.visit_visibility_mut(&mut node.vis);
2515 skip!(node.unsafety);
2516 skip!(node.mod_token);
2517 v.visit_ident_mut(&mut node.ident);
2518 if let Some(it) = &mut node.content {
2524 skip!(node.semi);
2528 pub fn visit_item_static_mut<V>(v: &mut V, node: &mut ItemStatic)
2532 for it in &mut node.attrs {
2535 v.visit_visibility_mut(&mut node.vis);
2536 skip!(node.static_token);
2537 v.visit_static_mutability_mut(&mut node.mutability);
2538 v.visit_ident_mut(&mut node.ident);
2539 skip!(node.colon_token);
2540 v.visit_type_mut(&mut *node.ty);
2541 skip!(node.eq_token);
2542 v.visit_expr_mut(&mut *node.expr);
2543 skip!(node.semi_token);
2547 pub fn visit_item_struct_mut<V>(v: &mut V, node: &mut ItemStruct)
2551 for it in &mut node.attrs {
2554 v.visit_visibility_mut(&mut node.vis);
2555 skip!(node.struct_token);
2556 v.visit_ident_mut(&mut node.ident);
2557 v.visit_generics_mut(&mut node.generics);
2558 v.visit_fields_mut(&mut node.fields);
2559 skip!(node.semi_token);
2563 pub fn visit_item_trait_mut<V>(v: &mut V, node: &mut ItemTrait)
2567 for it in &mut node.attrs {
2570 v.visit_visibility_mut(&mut node.vis);
2571 skip!(node.unsafety);
2572 skip!(node.auto_token);
2573 if let Some(it) = &mut node.restriction {
2576 skip!(node.trait_token);
2577 v.visit_ident_mut(&mut node.ident);
2578 v.visit_generics_mut(&mut node.generics);
2579 skip!(node.colon_token);
2580 for mut el in Punctuated::pairs_mut(&mut node.supertraits) {
2584 skip!(node.brace_token);
2585 for it in &mut node.items {
2591 pub fn visit_item_trait_alias_mut<V>(v: &mut V, node: &mut ItemTraitAlias)
2595 for it in &mut node.attrs {
2598 v.visit_visibility_mut(&mut node.vis);
2599 skip!(node.trait_token);
2600 v.visit_ident_mut(&mut node.ident);
2601 v.visit_generics_mut(&mut node.generics);
2602 skip!(node.eq_token);
2603 for mut el in Punctuated::pairs_mut(&mut node.bounds) {
2607 skip!(node.semi_token);
2611 pub fn visit_item_type_mut<V>(v: &mut V, node: &mut ItemType)
2615 for it in &mut node.attrs {
2618 v.visit_visibility_mut(&mut node.vis);
2619 skip!(node.type_token);
2620 v.visit_ident_mut(&mut node.ident);
2621 v.visit_generics_mut(&mut node.generics);
2622 skip!(node.eq_token);
2623 v.visit_type_mut(&mut *node.ty);
2624 skip!(node.semi_token);
2628 pub fn visit_item_union_mut<V>(v: &mut V, node: &mut ItemUnion)
2632 for it in &mut node.attrs {
2635 v.visit_visibility_mut(&mut node.vis);
2636 skip!(node.union_token);
2637 v.visit_ident_mut(&mut node.ident);
2638 v.visit_generics_mut(&mut node.generics);
2639 v.visit_fields_named_mut(&mut node.fields);
2643 pub fn visit_item_use_mut<V>(v: &mut V, node: &mut ItemUse)
2647 for it in &mut node.attrs {
2650 v.visit_visibility_mut(&mut node.vis);
2651 skip!(node.use_token);
2652 skip!(node.leading_colon);
2653 v.visit_use_tree_mut(&mut node.tree);
2654 skip!(node.semi_token);
2658 pub fn visit_label_mut<V>(v: &mut V, node: &mut Label)
2662 v.visit_lifetime_mut(&mut node.name);
2663 skip!(node.colon_token);
2665 pub fn visit_lifetime_mut<V>(v: &mut V, node: &mut Lifetime)
2669 v.visit_span_mut(&mut node.apostrophe);
2670 v.visit_ident_mut(&mut node.ident);
2674 pub fn visit_lifetime_param_mut<V>(v: &mut V, node: &mut LifetimeParam)
2678 for it in &mut node.attrs {
2681 v.visit_lifetime_mut(&mut node.lifetime);
2682 skip!(node.colon_token);
2683 for mut el in Punctuated::pairs_mut(&mut node.bounds) {
2688 pub fn visit_lit_mut<V>(v: &mut V, node: &mut Lit)
2692 match node {
2719 pub fn visit_lit_bool_mut<V>(v: &mut V, node: &mut LitBool)
2723 skip!(node.value);
2724 v.visit_span_mut(&mut node.span);
2726 pub fn visit_lit_byte_mut<V>(v: &mut V, node: &mut LitByte)
2730 pub fn visit_lit_byte_str_mut<V>(v: &mut V, node: &mut LitByteStr)
2734 pub fn visit_lit_char_mut<V>(v: &mut V, node: &mut LitChar)
2738 pub fn visit_lit_float_mut<V>(v: &mut V, node: &mut LitFloat)
2742 pub fn visit_lit_int_mut<V>(v: &mut V, node: &mut LitInt)
2746 pub fn visit_lit_str_mut<V>(v: &mut V, node: &mut LitStr)
2752 pub fn visit_local_mut<V>(v: &mut V, node: &mut Local)
2756 for it in &mut node.attrs {
2759 skip!(node.let_token);
2760 v.visit_pat_mut(&mut node.pat);
2761 if let Some(it) = &mut node.init {
2764 skip!(node.semi_token);
2768 pub fn visit_local_init_mut<V>(v: &mut V, node: &mut LocalInit)
2772 skip!(node.eq_token);
2773 v.visit_expr_mut(&mut *node.expr);
2774 if let Some(it) = &mut node.diverge {
2781 pub fn visit_macro_mut<V>(v: &mut V, node: &mut Macro)
2785 v.visit_path_mut(&mut node.path);
2786 skip!(node.bang_token);
2787 v.visit_macro_delimiter_mut(&mut node.delimiter);
2788 skip!(node.tokens);
2792 pub fn visit_macro_delimiter_mut<V>(v: &mut V, node: &mut MacroDelimiter)
2796 match node {
2810 pub fn visit_member_mut<V>(v: &mut V, node: &mut Member)
2814 match node {
2825 pub fn visit_meta_mut<V>(v: &mut V, node: &mut Meta)
2829 match node {
2843 pub fn visit_meta_list_mut<V>(v: &mut V, node: &mut MetaList)
2847 v.visit_path_mut(&mut node.path);
2848 v.visit_macro_delimiter_mut(&mut node.delimiter);
2849 skip!(node.tokens);
2853 pub fn visit_meta_name_value_mut<V>(v: &mut V, node: &mut MetaNameValue)
2857 v.visit_path_mut(&mut node.path);
2858 skip!(node.eq_token);
2859 v.visit_expr_mut(&mut node.value);
2865 node: &mut ParenthesizedGenericArguments,
2870 skip!(node.paren_token);
2871 for mut el in Punctuated::pairs_mut(&mut node.inputs) {
2875 v.visit_return_type_mut(&mut node.output);
2879 pub fn visit_pat_mut<V>(v: &mut V, node: &mut Pat)
2883 match node {
2939 pub fn visit_pat_ident_mut<V>(v: &mut V, node: &mut PatIdent)
2943 for it in &mut node.attrs {
2946 skip!(node.by_ref);
2947 skip!(node.mutability);
2948 v.visit_ident_mut(&mut node.ident);
2949 if let Some(it) = &mut node.subpat {
2956 pub fn visit_pat_or_mut<V>(v: &mut V, node: &mut PatOr)
2960 for it in &mut node.attrs {
2963 skip!(node.leading_vert);
2964 for mut el in Punctuated::pairs_mut(&mut node.cases) {
2971 pub fn visit_pat_paren_mut<V>(v: &mut V, node: &mut PatParen)
2975 for it in &mut node.attrs {
2978 skip!(node.paren_token);
2979 v.visit_pat_mut(&mut *node.pat);
2983 pub fn visit_pat_reference_mut<V>(v: &mut V, node: &mut PatReference)
2987 for it in &mut node.attrs {
2990 skip!(node.and_token);
2991 skip!(node.mutability);
2992 v.visit_pat_mut(&mut *node.pat);
2996 pub fn visit_pat_rest_mut<V>(v: &mut V, node: &mut PatRest)
3000 for it in &mut node.attrs {
3003 skip!(node.dot2_token);
3007 pub fn visit_pat_slice_mut<V>(v: &mut V, node: &mut PatSlice)
3011 for it in &mut node.attrs {
3014 skip!(node.bracket_token);
3015 for mut el in Punctuated::pairs_mut(&mut node.elems) {
3022 pub fn visit_pat_struct_mut<V>(v: &mut V, node: &mut PatStruct)
3026 for it in &mut node.attrs {
3029 if let Some(it) = &mut node.qself {
3032 v.visit_path_mut(&mut node.path);
3033 skip!(node.brace_token);
3034 for mut el in Punctuated::pairs_mut(&mut node.fields) {
3038 if let Some(it) = &mut node.rest {
3044 pub fn visit_pat_tuple_mut<V>(v: &mut V, node: &mut PatTuple)
3048 for it in &mut node.attrs {
3051 skip!(node.paren_token);
3052 for mut el in Punctuated::pairs_mut(&mut node.elems) {
3059 pub fn visit_pat_tuple_struct_mut<V>(v: &mut V, node: &mut PatTupleStruct)
3063 for it in &mut node.attrs {
3066 if let Some(it) = &mut node.qself {
3069 v.visit_path_mut(&mut node.path);
3070 skip!(node.paren_token);
3071 for mut el in Punctuated::pairs_mut(&mut node.elems) {
3078 pub fn visit_pat_type_mut<V>(v: &mut V, node: &mut PatType)
3082 for it in &mut node.attrs {
3085 v.visit_pat_mut(&mut *node.pat);
3086 skip!(node.colon_token);
3087 v.visit_type_mut(&mut *node.ty);
3091 pub fn visit_pat_wild_mut<V>(v: &mut V, node: &mut PatWild)
3095 for it in &mut node.attrs {
3098 skip!(node.underscore_token);
3102 pub fn visit_path_mut<V>(v: &mut V, node: &mut Path)
3106 skip!(node.leading_colon);
3107 for mut el in Punctuated::pairs_mut(&mut node.segments) {
3114 pub fn visit_path_arguments_mut<V>(v: &mut V, node: &mut PathArguments)
3118 match node {
3130 pub fn visit_path_segment_mut<V>(v: &mut V, node: &mut PathSegment)
3134 v.visit_ident_mut(&mut node.ident);
3135 v.visit_path_arguments_mut(&mut node.arguments);
3139 pub fn visit_predicate_lifetime_mut<V>(v: &mut V, node: &mut PredicateLifetime)
3143 v.visit_lifetime_mut(&mut node.lifetime);
3144 skip!(node.colon_token);
3145 for mut el in Punctuated::pairs_mut(&mut node.bounds) {
3152 pub fn visit_predicate_type_mut<V>(v: &mut V, node: &mut PredicateType)
3156 if let Some(it) = &mut node.lifetimes {
3159 v.visit_type_mut(&mut node.bounded_ty);
3160 skip!(node.colon_token);
3161 for mut el in Punctuated::pairs_mut(&mut node.bounds) {
3168 pub fn visit_qself_mut<V>(v: &mut V, node: &mut QSelf)
3172 skip!(node.lt_token);
3173 v.visit_type_mut(&mut *node.ty);
3174 skip!(node.position);
3175 skip!(node.as_token);
3176 skip!(node.gt_token);
3180 pub fn visit_range_limits_mut<V>(v: &mut V, node: &mut RangeLimits)
3184 match node {
3195 pub fn visit_receiver_mut<V>(v: &mut V, node: &mut Receiver)
3199 for it in &mut node.attrs {
3202 if let Some(it) = &mut node.reference {
3208 skip!(node.mutability);
3209 skip!(node.self_token);
3210 skip!(node.colon_token);
3211 v.visit_type_mut(&mut *node.ty);
3215 pub fn visit_return_type_mut<V>(v: &mut V, node: &mut ReturnType)
3219 match node {
3229 pub fn visit_signature_mut<V>(v: &mut V, node: &mut Signature)
3233 skip!(node.constness);
3234 skip!(node.asyncness);
3235 skip!(node.unsafety);
3236 if let Some(it) = &mut node.abi {
3239 skip!(node.fn_token);
3240 v.visit_ident_mut(&mut node.ident);
3241 v.visit_generics_mut(&mut node.generics);
3242 skip!(node.paren_token);
3243 for mut el in Punctuated::pairs_mut(&mut node.inputs) {
3247 if let Some(it) = &mut node.variadic {
3250 v.visit_return_type_mut(&mut node.output);
3252 pub fn visit_span_mut<V>(v: &mut V, node: &mut Span)
3258 pub fn visit_static_mutability_mut<V>(v: &mut V, node: &mut StaticMutability)
3262 match node {
3271 pub fn visit_stmt_mut<V>(v: &mut V, node: &mut Stmt)
3275 match node {
3293 pub fn visit_stmt_macro_mut<V>(v: &mut V, node: &mut StmtMacro)
3297 for it in &mut node.attrs {
3300 v.visit_macro_mut(&mut node.mac);
3301 skip!(node.semi_token);
3305 pub fn visit_trait_bound_mut<V>(v: &mut V, node: &mut TraitBound)
3309 skip!(node.paren_token);
3310 v.visit_trait_bound_modifier_mut(&mut node.modifier);
3311 if let Some(it) = &mut node.lifetimes {
3314 v.visit_path_mut(&mut node.path);
3318 pub fn visit_trait_bound_modifier_mut<V>(v: &mut V, node: &mut TraitBoundModifier)
3322 match node {
3331 pub fn visit_trait_item_mut<V>(v: &mut V, node: &mut TraitItem)
3335 match node {
3355 pub fn visit_trait_item_const_mut<V>(v: &mut V, node: &mut TraitItemConst)
3359 for it in &mut node.attrs {
3362 skip!(node.const_token);
3363 v.visit_ident_mut(&mut node.ident);
3364 v.visit_generics_mut(&mut node.generics);
3365 skip!(node.colon_token);
3366 v.visit_type_mut(&mut node.ty);
3367 if let Some(it) = &mut node.default {
3371 skip!(node.semi_token);
3375 pub fn visit_trait_item_fn_mut<V>(v: &mut V, node: &mut TraitItemFn)
3379 for it in &mut node.attrs {
3382 v.visit_signature_mut(&mut node.sig);
3383 if let Some(it) = &mut node.default {
3386 skip!(node.semi_token);
3390 pub fn visit_trait_item_macro_mut<V>(v: &mut V, node: &mut TraitItemMacro)
3394 for it in &mut node.attrs {
3397 v.visit_macro_mut(&mut node.mac);
3398 skip!(node.semi_token);
3402 pub fn visit_trait_item_type_mut<V>(v: &mut V, node: &mut TraitItemType)
3406 for it in &mut node.attrs {
3409 skip!(node.type_token);
3410 v.visit_ident_mut(&mut node.ident);
3411 v.visit_generics_mut(&mut node.generics);
3412 skip!(node.colon_token);
3413 for mut el in Punctuated::pairs_mut(&mut node.bounds) {
3417 if let Some(it) = &mut node.default {
3421 skip!(node.semi_token);
3425 pub fn visit_type_mut<V>(v: &mut V, node: &mut Type)
3429 match node {
3479 pub fn visit_type_array_mut<V>(v: &mut V, node: &mut TypeArray)
3483 skip!(node.bracket_token);
3484 v.visit_type_mut(&mut *node.elem);
3485 skip!(node.semi_token);
3486 v.visit_expr_mut(&mut node.len);
3490 pub fn visit_type_bare_fn_mut<V>(v: &mut V, node: &mut TypeBareFn)
3494 if let Some(it) = &mut node.lifetimes {
3497 skip!(node.unsafety);
3498 if let Some(it) = &mut node.abi {
3501 skip!(node.fn_token);
3502 skip!(node.paren_token);
3503 for mut el in Punctuated::pairs_mut(&mut node.inputs) {
3507 if let Some(it) = &mut node.variadic {
3510 v.visit_return_type_mut(&mut node.output);
3514 pub fn visit_type_group_mut<V>(v: &mut V, node: &mut TypeGroup)
3518 skip!(node.group_token);
3519 v.visit_type_mut(&mut *node.elem);
3523 pub fn visit_type_impl_trait_mut<V>(v: &mut V, node: &mut TypeImplTrait)
3527 skip!(node.impl_token);
3528 for mut el in Punctuated::pairs_mut(&mut node.bounds) {
3535 pub fn visit_type_infer_mut<V>(v: &mut V, node: &mut TypeInfer)
3539 skip!(node.underscore_token);
3543 pub fn visit_type_macro_mut<V>(v: &mut V, node: &mut TypeMacro)
3547 v.visit_macro_mut(&mut node.mac);
3551 pub fn visit_type_never_mut<V>(v: &mut V, node: &mut TypeNever)
3555 skip!(node.bang_token);
3559 pub fn visit_type_param_mut<V>(v: &mut V, node: &mut TypeParam)
3563 for it in &mut node.attrs {
3566 v.visit_ident_mut(&mut node.ident);
3567 skip!(node.colon_token);
3568 for mut el in Punctuated::pairs_mut(&mut node.bounds) {
3572 skip!(node.eq_token);
3573 if let Some(it) = &mut node.default {
3579 pub fn visit_type_param_bound_mut<V>(v: &mut V, node: &mut TypeParamBound)
3583 match node {
3597 pub fn visit_type_paren_mut<V>(v: &mut V, node: &mut TypeParen)
3601 skip!(node.paren_token);
3602 v.visit_type_mut(&mut *node.elem);
3606 pub fn visit_type_path_mut<V>(v: &mut V, node: &mut TypePath)
3610 if let Some(it) = &mut node.qself {
3613 v.visit_path_mut(&mut node.path);
3617 pub fn visit_type_ptr_mut<V>(v: &mut V, node: &mut TypePtr)
3621 skip!(node.star_token);
3622 skip!(node.const_token);
3623 skip!(node.mutability);
3624 v.visit_type_mut(&mut *node.elem);
3628 pub fn visit_type_reference_mut<V>(v: &mut V, node: &mut TypeReference)
3632 skip!(node.and_token);
3633 if let Some(it) = &mut node.lifetime {
3636 skip!(node.mutability);
3637 v.visit_type_mut(&mut *node.elem);
3641 pub fn visit_type_slice_mut<V>(v: &mut V, node: &mut TypeSlice)
3645 skip!(node.bracket_token);
3646 v.visit_type_mut(&mut *node.elem);
3650 pub fn visit_type_trait_object_mut<V>(v: &mut V, node: &mut TypeTraitObject)
3654 skip!(node.dyn_token);
3655 for mut el in Punctuated::pairs_mut(&mut node.bounds) {
3662 pub fn visit_type_tuple_mut<V>(v: &mut V, node: &mut TypeTuple)
3666 skip!(node.paren_token);
3667 for mut el in Punctuated::pairs_mut(&mut node.elems) {
3674 pub fn visit_un_op_mut<V>(v: &mut V, node: &mut UnOp)
3678 match node {
3692 pub fn visit_use_glob_mut<V>(v: &mut V, node: &mut UseGlob)
3696 skip!(node.star_token);
3700 pub fn visit_use_group_mut<V>(v: &mut V, node: &mut UseGroup)
3704 skip!(node.brace_token);
3705 for mut el in Punctuated::pairs_mut(&mut node.items) {
3712 pub fn visit_use_name_mut<V>(v: &mut V, node: &mut UseName)
3716 v.visit_ident_mut(&mut node.ident);
3720 pub fn visit_use_path_mut<V>(v: &mut V, node: &mut UsePath)
3724 v.visit_ident_mut(&mut node.ident);
3725 skip!(node.colon2_token);
3726 v.visit_use_tree_mut(&mut *node.tree);
3730 pub fn visit_use_rename_mut<V>(v: &mut V, node: &mut UseRename)
3734 v.visit_ident_mut(&mut node.ident);
3735 skip!(node.as_token);
3736 v.visit_ident_mut(&mut node.rename);
3740 pub fn visit_use_tree_mut<V>(v: &mut V, node: &mut UseTree)
3744 match node {
3764 pub fn visit_variadic_mut<V>(v: &mut V, node: &mut Variadic)
3768 for it in &mut node.attrs {
3771 if let Some(it) = &mut node.pat {
3775 skip!(node.dots);
3776 skip!(node.comma);
3780 pub fn visit_variant_mut<V>(v: &mut V, node: &mut Variant)
3784 for it in &mut node.attrs {
3787 v.visit_ident_mut(&mut node.ident);
3788 v.visit_fields_mut(&mut node.fields);
3789 if let Some(it) = &mut node.discriminant {
3796 pub fn visit_vis_restricted_mut<V>(v: &mut V, node: &mut VisRestricted)
3800 skip!(node.pub_token);
3801 skip!(node.paren_token);
3802 skip!(node.in_token);
3803 v.visit_path_mut(&mut *node.path);
3807 pub fn visit_visibility_mut<V>(v: &mut V, node: &mut Visibility)
3811 match node {
3823 pub fn visit_where_clause_mut<V>(v: &mut V, node: &mut WhereClause)
3827 skip!(node.where_token);
3828 for mut el in Punctuated::pairs_mut(&mut node.predicates) {
3835 pub fn visit_where_predicate_mut<V>(v: &mut V, node: &mut WherePredicate)
3839 match node {