Module mut_visit

Source
Expand description

A MutVisitor represents an AST modification; it accepts an AST piece and mutates it in place. So, for instance, macro expansion is a MutVisitor that walks over an AST and modifies it.

Note: using a MutVisitor (other than the MacroExpander MutVisitor) on an AST before macro expansion is probably a bad idea. For instance, a MutVisitor renaming item names in a module will miss all of those that are created by the expansion of a macro.

Enumsยง

FnKind

Traitsยง

DummyAstNode
Some value for the AST node that is valid but possibly meaningless. Similar to Default but not intended for wide use. The value will never be used meaningfully, it exists just to support unwinding in visit_clobber in the case where its closure panics.
ExpectOne
MutVisitor
WalkItemKind

Functionsยง

noop_filter_map_expr
visit_attr_args ๐Ÿ”’
visit_attrs ๐Ÿ”’
visit_bounds ๐Ÿ”’
visit_clobber
Use a map-style function (FnOnce(T) -> T) to overwrite a &mut T. Useful when using a flat_map_* or filter_map_* method within a visit_ method.
visit_constness ๐Ÿ”’
visit_defaultness ๐Ÿ”’
visit_delim_args ๐Ÿ”’
visit_exprs ๐Ÿ”’
visit_opt ๐Ÿ”’
visit_polarity ๐Ÿ”’
visit_safety ๐Ÿ”’
visit_thin_exprs ๐Ÿ”’
visit_thin_vec ๐Ÿ”’
visit_vec ๐Ÿ”’
walk_angle_bracketed_parameter_data ๐Ÿ”’
walk_anon_const ๐Ÿ”’
walk_arm
walk_assoc_item
walk_assoc_item_constraint ๐Ÿ”’
walk_attribute ๐Ÿ”’
walk_block
walk_capture_by ๐Ÿ”’
walk_closure_binder ๐Ÿ”’
walk_const_item ๐Ÿ”’
walk_contract ๐Ÿ”’
walk_coroutine_kind ๐Ÿ”’
walk_crate
walk_define_opaques ๐Ÿ”’
walk_expr
walk_expr_field
walk_field_def
walk_flat_map_arm
walk_flat_map_assoc_item
walk_flat_map_expr_field
walk_flat_map_field_def
walk_flat_map_foreign_item
walk_flat_map_generic_param
walk_flat_map_item
walk_flat_map_param
walk_flat_map_pat_field
walk_flat_map_stmt
walk_flat_map_stmt_kind ๐Ÿ”’
walk_flat_map_variant
walk_flat_map_where_predicate
walk_fn ๐Ÿ”’
walk_fn_decl ๐Ÿ”’
walk_fn_header ๐Ÿ”’
walk_fn_ret_ty ๐Ÿ”’
walk_foreign_mod ๐Ÿ”’
walk_format_args ๐Ÿ”’
walk_generic_arg ๐Ÿ”’
walk_generic_args ๐Ÿ”’
walk_generic_param
walk_generics ๐Ÿ”’
walk_ident ๐Ÿ”’
walk_inline_asm ๐Ÿ”’
walk_inline_asm_sym ๐Ÿ”’
walk_item
walk_item_ctxt ๐Ÿ”’
walk_item_kind
walk_label ๐Ÿ”’
walk_lifetime ๐Ÿ”’
walk_local ๐Ÿ”’
walk_mac ๐Ÿ”’
walk_macro_def ๐Ÿ”’
walk_meta_item ๐Ÿ”’
walk_meta_list_item ๐Ÿ”’
walk_modifiers ๐Ÿ”’
walk_mt ๐Ÿ”’
walk_param
walk_param_bound ๐Ÿ”’
walk_parenthesized_parameter_data ๐Ÿ”’
walk_pat
walk_pat_field
walk_path ๐Ÿ”’
walk_path_segment ๐Ÿ”’
walk_poly_trait_ref ๐Ÿ”’
walk_precise_capturing_arg ๐Ÿ”’
walk_qself ๐Ÿ”’
walk_trait_ref ๐Ÿ”’
walk_ty
walk_ty_alias_where_clauses ๐Ÿ”’
walk_ty_pat
walk_use_tree ๐Ÿ”’
walk_variant
walk_variant_data ๐Ÿ”’
walk_vis ๐Ÿ”’
walk_where_clause ๐Ÿ”’
walk_where_predicate_kind