pub trait Visit<'a>: Sized {
Show 79 methods
// Provided methods
fn visit<W: Walk>(&mut self, walker: &'a W) -> &mut Self { ... }
fn visit_children<W: Walk>(&mut self, walker: &'a W) { ... }
fn visit_span(&mut self, value: &'a Span) { ... }
fn visit_mutability(&mut self, value: &'a Mutability) { ... }
fn visit_visibility(&mut self, value: &'a Visibility) { ... }
fn visit_sym(&mut self, value: &'a Sym) { ... }
fn visit_literal(&mut self, value: &'a Literal) { ... }
fn visit_bool(&mut self, value: &'a bool) { ... }
fn visit_char(&mut self, value: &'a char) { ... }
fn visit_int(&mut self, value: &'a u128) { ... }
fn visit_smuggled_float(&mut self, value: &'a u64) { ... }
fn visit_string(&mut self, value: &'a str) { ... }
fn visit_file(&mut self, value: &'a File) { ... }
fn visit_attrs(&mut self, value: &'a Attrs) { ... }
fn visit_meta(&mut self, value: &'a Meta) { ... }
fn visit_meta_kind(&mut self, value: &'a MetaKind) { ... }
fn visit_item(&mut self, value: &'a Item) { ... }
fn visit_item_kind(&mut self, value: &'a ItemKind) { ... }
fn visit_generics(&mut self, value: &'a Generics) { ... }
fn visit_alias(&mut self, value: &'a Alias) { ... }
fn visit_const(&mut self, value: &'a Const) { ... }
fn visit_static(&mut self, value: &'a Static) { ... }
fn visit_module(&mut self, value: &'a Module) { ... }
fn visit_function(&mut self, value: &'a Function) { ... }
fn visit_struct(&mut self, value: &'a Struct) { ... }
fn visit_struct_kind(&mut self, value: &'a StructKind) { ... }
fn visit_struct_member(&mut self, value: &'a StructMember) { ... }
fn visit_enum(&mut self, value: &'a Enum) { ... }
fn visit_variant(&mut self, value: &'a Variant) { ... }
fn visit_impl(&mut self, value: &'a Impl) { ... }
fn visit_impl_kind(&mut self, value: &'a ImplKind) { ... }
fn visit_use(&mut self, value: &'a Use) { ... }
fn visit_use_tree(&mut self, value: &'a UseTree) { ... }
fn visit_ty(&mut self, value: &'a Ty) { ... }
fn visit_ty_kind(&mut self, value: &'a TyKind) { ... }
fn visit_ty_array(&mut self, value: &'a TyArray) { ... }
fn visit_ty_slice(&mut self, value: &'a TySlice) { ... }
fn visit_ty_tuple(&mut self, value: &'a TyTuple) { ... }
fn visit_ty_ref(&mut self, value: &'a TyRef) { ... }
fn visit_ty_fn(&mut self, value: &'a TyFn) { ... }
fn visit_path(&mut self, value: &'a Path) { ... }
fn visit_path_part(&mut self, value: &'a PathPart) { ... }
fn visit_stmt(&mut self, value: &'a Stmt) { ... }
fn visit_stmt_kind(&mut self, value: &'a StmtKind) { ... }
fn visit_semi(&mut self, value: &'a Semi) { ... }
fn visit_expr(&mut self, value: &'a Expr) { ... }
fn visit_expr_kind(&mut self, value: &'a ExprKind) { ... }
fn visit_closure(&mut self, value: &'a Closure) { ... }
fn visit_quote(&mut self, value: &'a Quote) { ... }
fn visit_let(&mut self, value: &'a Let) { ... }
fn visit_pattern(&mut self, value: &'a Pattern) { ... }
fn visit_match(&mut self, value: &'a Match) { ... }
fn visit_match_arm(&mut self, value: &'a MatchArm) { ... }
fn visit_assign(&mut self, value: &'a Assign) { ... }
fn visit_modify(&mut self, value: &'a Modify) { ... }
fn visit_modify_kind(&mut self, value: &'a ModifyKind) { ... }
fn visit_binary(&mut self, value: &'a Binary) { ... }
fn visit_binary_kind(&mut self, value: &'a BinaryKind) { ... }
fn visit_unary(&mut self, value: &'a Unary) { ... }
fn visit_unary_kind(&mut self, value: &'a UnaryKind) { ... }
fn visit_cast(&mut self, value: &'a Cast) { ... }
fn visit_member(&mut self, value: &'a Member) { ... }
fn visit_member_kind(&mut self, value: &'a MemberKind) { ... }
fn visit_index(&mut self, value: &'a Index) { ... }
fn visit_structor(&mut self, value: &'a Structor) { ... }
fn visit_fielder(&mut self, value: &'a Fielder) { ... }
fn visit_array(&mut self, value: &'a Array) { ... }
fn visit_array_rep(&mut self, value: &'a ArrayRep) { ... }
fn visit_addrof(&mut self, value: &'a AddrOf) { ... }
fn visit_block(&mut self, value: &'a Block) { ... }
fn visit_group(&mut self, value: &'a Group) { ... }
fn visit_tuple(&mut self, value: &'a Tuple) { ... }
fn visit_while(&mut self, value: &'a While) { ... }
fn visit_if(&mut self, value: &'a If) { ... }
fn visit_for(&mut self, value: &'a For) { ... }
fn visit_else(&mut self, value: &'a Else) { ... }
fn visit_break(&mut self, value: &'a Break) { ... }
fn visit_return(&mut self, value: &'a Return) { ... }
fn visit_continue(&mut self) { ... }
}
Expand description
Immutably walks the entire AST
Each method acts as a customization point.
Provided Methods§
Sourcefn visit_children<W: Walk>(&mut self, walker: &'a W)
fn visit_children<W: Walk>(&mut self, walker: &'a W)
Visits the children of a Walker
fn visit_span(&mut self, value: &'a Span)
fn visit_mutability(&mut self, value: &'a Mutability)
fn visit_visibility(&mut self, value: &'a Visibility)
fn visit_sym(&mut self, value: &'a Sym)
fn visit_literal(&mut self, value: &'a Literal)
fn visit_bool(&mut self, value: &'a bool)
fn visit_char(&mut self, value: &'a char)
fn visit_int(&mut self, value: &'a u128)
fn visit_smuggled_float(&mut self, value: &'a u64)
fn visit_string(&mut self, value: &'a str)
fn visit_file(&mut self, value: &'a File)
fn visit_attrs(&mut self, value: &'a Attrs)
fn visit_meta(&mut self, value: &'a Meta)
fn visit_meta_kind(&mut self, value: &'a MetaKind)
fn visit_item(&mut self, value: &'a Item)
fn visit_item_kind(&mut self, value: &'a ItemKind)
fn visit_generics(&mut self, value: &'a Generics)
fn visit_alias(&mut self, value: &'a Alias)
fn visit_const(&mut self, value: &'a Const)
fn visit_static(&mut self, value: &'a Static)
fn visit_module(&mut self, value: &'a Module)
fn visit_function(&mut self, value: &'a Function)
fn visit_struct(&mut self, value: &'a Struct)
fn visit_struct_kind(&mut self, value: &'a StructKind)
fn visit_struct_member(&mut self, value: &'a StructMember)
fn visit_enum(&mut self, value: &'a Enum)
fn visit_variant(&mut self, value: &'a Variant)
fn visit_impl(&mut self, value: &'a Impl)
fn visit_impl_kind(&mut self, value: &'a ImplKind)
fn visit_use(&mut self, value: &'a Use)
fn visit_use_tree(&mut self, value: &'a UseTree)
fn visit_ty(&mut self, value: &'a Ty)
fn visit_ty_kind(&mut self, value: &'a TyKind)
fn visit_ty_array(&mut self, value: &'a TyArray)
fn visit_ty_slice(&mut self, value: &'a TySlice)
fn visit_ty_tuple(&mut self, value: &'a TyTuple)
fn visit_ty_ref(&mut self, value: &'a TyRef)
fn visit_ty_fn(&mut self, value: &'a TyFn)
fn visit_path(&mut self, value: &'a Path)
fn visit_path_part(&mut self, value: &'a PathPart)
fn visit_stmt(&mut self, value: &'a Stmt)
fn visit_stmt_kind(&mut self, value: &'a StmtKind)
fn visit_semi(&mut self, value: &'a Semi)
fn visit_expr(&mut self, value: &'a Expr)
fn visit_expr_kind(&mut self, value: &'a ExprKind)
fn visit_closure(&mut self, value: &'a Closure)
fn visit_quote(&mut self, value: &'a Quote)
fn visit_let(&mut self, value: &'a Let)
fn visit_pattern(&mut self, value: &'a Pattern)
fn visit_match(&mut self, value: &'a Match)
fn visit_match_arm(&mut self, value: &'a MatchArm)
fn visit_assign(&mut self, value: &'a Assign)
fn visit_modify(&mut self, value: &'a Modify)
fn visit_modify_kind(&mut self, value: &'a ModifyKind)
fn visit_binary(&mut self, value: &'a Binary)
fn visit_binary_kind(&mut self, value: &'a BinaryKind)
fn visit_unary(&mut self, value: &'a Unary)
fn visit_unary_kind(&mut self, value: &'a UnaryKind)
fn visit_cast(&mut self, value: &'a Cast)
fn visit_member(&mut self, value: &'a Member)
fn visit_member_kind(&mut self, value: &'a MemberKind)
fn visit_index(&mut self, value: &'a Index)
fn visit_structor(&mut self, value: &'a Structor)
fn visit_fielder(&mut self, value: &'a Fielder)
fn visit_array(&mut self, value: &'a Array)
fn visit_array_rep(&mut self, value: &'a ArrayRep)
fn visit_addrof(&mut self, value: &'a AddrOf)
fn visit_block(&mut self, value: &'a Block)
fn visit_group(&mut self, value: &'a Group)
fn visit_tuple(&mut self, value: &'a Tuple)
fn visit_while(&mut self, value: &'a While)
fn visit_if(&mut self, value: &'a If)
fn visit_for(&mut self, value: &'a For)
fn visit_else(&mut self, value: &'a Else)
fn visit_break(&mut self, value: &'a Break)
fn visit_return(&mut self, value: &'a Return)
fn visit_continue(&mut self)
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.