Trait MutVisitor

Source
pub trait MutVisitor: Sized {
Show 74 methods // Provided methods fn visit_crate(&mut self, c: &mut Crate) { ... } fn visit_meta_list_item(&mut self, list_item: &mut MetaItemInner) { ... } fn visit_meta_item(&mut self, meta_item: &mut MetaItem) { ... } fn visit_use_tree(&mut self, use_tree: &mut UseTree) { ... } fn visit_foreign_item(&mut self, ni: &mut P<ForeignItem>) { ... } fn flat_map_foreign_item( &mut self, ni: P<ForeignItem>, ) -> SmallVec<[P<ForeignItem>; 1]> { ... } fn visit_item(&mut self, i: &mut P<Item>) { ... } fn flat_map_item(&mut self, i: P<Item>) -> SmallVec<[P<Item>; 1]> { ... } fn visit_fn_header(&mut self, header: &mut FnHeader) { ... } fn visit_field_def(&mut self, fd: &mut FieldDef) { ... } fn flat_map_field_def(&mut self, fd: FieldDef) -> SmallVec<[FieldDef; 1]> { ... } fn visit_assoc_item(&mut self, i: &mut P<AssocItem>, ctxt: AssocCtxt) { ... } fn flat_map_assoc_item( &mut self, i: P<AssocItem>, ctxt: AssocCtxt, ) -> SmallVec<[P<AssocItem>; 1]> { ... } fn visit_contract(&mut self, c: &mut P<FnContract>) { ... } fn visit_fn_decl(&mut self, d: &mut P<FnDecl>) { ... } fn visit_fn(&mut self, fk: FnKind<'_>, _: Span, _: NodeId) { ... } fn visit_coroutine_kind(&mut self, a: &mut CoroutineKind) { ... } fn visit_closure_binder(&mut self, b: &mut ClosureBinder) { ... } fn visit_block(&mut self, b: &mut P<Block>) { ... } fn flat_map_stmt(&mut self, s: Stmt) -> SmallVec<[Stmt; 1]> { ... } fn visit_arm(&mut self, arm: &mut Arm) { ... } fn flat_map_arm(&mut self, arm: Arm) -> SmallVec<[Arm; 1]> { ... } fn visit_pat(&mut self, p: &mut P<Pat>) { ... } fn visit_anon_const(&mut self, c: &mut AnonConst) { ... } fn visit_expr(&mut self, e: &mut P<Expr>) { ... } fn visit_method_receiver_expr(&mut self, ex: &mut P<Expr>) { ... } fn filter_map_expr(&mut self, e: P<Expr>) -> Option<P<Expr>> { ... } fn visit_generic_arg(&mut self, arg: &mut GenericArg) { ... } fn visit_ty(&mut self, t: &mut P<Ty>) { ... } fn visit_ty_pat(&mut self, t: &mut P<TyPat>) { ... } fn visit_lifetime(&mut self, l: &mut Lifetime) { ... } fn visit_assoc_item_constraint(&mut self, c: &mut AssocItemConstraint) { ... } fn visit_foreign_mod(&mut self, nm: &mut ForeignMod) { ... } fn visit_variant(&mut self, v: &mut Variant) { ... } fn flat_map_variant(&mut self, v: Variant) -> SmallVec<[Variant; 1]> { ... } fn visit_ident(&mut self, i: &mut Ident) { ... } fn visit_modifiers(&mut self, m: &mut TraitBoundModifiers) { ... } fn visit_path(&mut self, p: &mut Path) { ... } fn visit_path_segment(&mut self, p: &mut PathSegment) { ... } fn visit_qself(&mut self, qs: &mut Option<P<QSelf>>) { ... } fn visit_generic_args(&mut self, p: &mut GenericArgs) { ... } fn visit_angle_bracketed_parameter_data( &mut self, p: &mut AngleBracketedArgs, ) { ... } fn visit_parenthesized_parameter_data(&mut self, p: &mut ParenthesizedArgs) { ... } fn visit_local(&mut self, l: &mut P<Local>) { ... } fn visit_mac_call(&mut self, mac: &mut MacCall) { ... } fn visit_macro_def(&mut self, def: &mut MacroDef) { ... } fn visit_label(&mut self, label: &mut Label) { ... } fn visit_attribute(&mut self, at: &mut Attribute) { ... } fn visit_param(&mut self, param: &mut Param) { ... } fn flat_map_param(&mut self, param: Param) -> SmallVec<[Param; 1]> { ... } fn visit_generics(&mut self, generics: &mut Generics) { ... } fn visit_trait_ref(&mut self, tr: &mut TraitRef) { ... } fn visit_poly_trait_ref(&mut self, p: &mut PolyTraitRef) { ... } fn visit_variant_data(&mut self, vdata: &mut VariantData) { ... } fn visit_generic_param(&mut self, param: &mut GenericParam) { ... } fn flat_map_generic_param( &mut self, param: GenericParam, ) -> SmallVec<[GenericParam; 1]> { ... } fn visit_param_bound(&mut self, tpb: &mut GenericBound, _ctxt: BoundKind) { ... } fn visit_precise_capturing_arg(&mut self, arg: &mut PreciseCapturingArg) { ... } fn visit_mt(&mut self, mt: &mut MutTy) { ... } fn visit_expr_field(&mut self, f: &mut ExprField) { ... } fn flat_map_expr_field(&mut self, f: ExprField) -> SmallVec<[ExprField; 1]> { ... } fn visit_where_clause(&mut self, where_clause: &mut WhereClause) { ... } fn flat_map_where_predicate( &mut self, where_predicate: WherePredicate, ) -> SmallVec<[WherePredicate; 1]> { ... } fn visit_where_predicate_kind(&mut self, kind: &mut WherePredicateKind) { ... } fn visit_vis(&mut self, vis: &mut Visibility) { ... } fn visit_id(&mut self, _id: &mut NodeId) { ... } fn visit_span(&mut self, _sp: &mut Span) { ... } fn visit_pat_field(&mut self, fp: &mut PatField) { ... } fn flat_map_pat_field(&mut self, fp: PatField) -> SmallVec<[PatField; 1]> { ... } fn visit_inline_asm(&mut self, asm: &mut InlineAsm) { ... } fn visit_inline_asm_sym(&mut self, sym: &mut InlineAsmSym) { ... } fn visit_format_args(&mut self, fmt: &mut FormatArgs) { ... } fn visit_capture_by(&mut self, capture_by: &mut CaptureBy) { ... } fn visit_fn_ret_ty(&mut self, fn_ret_ty: &mut FnRetTy) { ... }
}

Provided Methods§

Source

fn visit_crate(&mut self, c: &mut Crate)

Source

fn visit_meta_list_item(&mut self, list_item: &mut MetaItemInner)

Source

fn visit_meta_item(&mut self, meta_item: &mut MetaItem)

Source

fn visit_use_tree(&mut self, use_tree: &mut UseTree)

Source

fn visit_foreign_item(&mut self, ni: &mut P<ForeignItem>)

Source

fn flat_map_foreign_item( &mut self, ni: P<ForeignItem>, ) -> SmallVec<[P<ForeignItem>; 1]>

Source

fn visit_item(&mut self, i: &mut P<Item>)

Source

fn flat_map_item(&mut self, i: P<Item>) -> SmallVec<[P<Item>; 1]>

Source

fn visit_fn_header(&mut self, header: &mut FnHeader)

Source

fn visit_field_def(&mut self, fd: &mut FieldDef)

Source

fn flat_map_field_def(&mut self, fd: FieldDef) -> SmallVec<[FieldDef; 1]>

Source

fn visit_assoc_item(&mut self, i: &mut P<AssocItem>, ctxt: AssocCtxt)

Source

fn flat_map_assoc_item( &mut self, i: P<AssocItem>, ctxt: AssocCtxt, ) -> SmallVec<[P<AssocItem>; 1]>

Source

fn visit_contract(&mut self, c: &mut P<FnContract>)

Source

fn visit_fn_decl(&mut self, d: &mut P<FnDecl>)

Source

fn visit_fn(&mut self, fk: FnKind<'_>, _: Span, _: NodeId)

Span and NodeId are mutated at the caller site.

Source

fn visit_coroutine_kind(&mut self, a: &mut CoroutineKind)

Source

fn visit_closure_binder(&mut self, b: &mut ClosureBinder)

Source

fn visit_block(&mut self, b: &mut P<Block>)

Source

fn flat_map_stmt(&mut self, s: Stmt) -> SmallVec<[Stmt; 1]>

Source

fn visit_arm(&mut self, arm: &mut Arm)

Source

fn flat_map_arm(&mut self, arm: Arm) -> SmallVec<[Arm; 1]>

Source

fn visit_pat(&mut self, p: &mut P<Pat>)

Source

fn visit_anon_const(&mut self, c: &mut AnonConst)

Source

fn visit_expr(&mut self, e: &mut P<Expr>)

Source

fn visit_method_receiver_expr(&mut self, ex: &mut P<Expr>)

This method is a hack to workaround unstable of stmt_expr_attributes. It can be removed once that feature is stabilized.

Source

fn filter_map_expr(&mut self, e: P<Expr>) -> Option<P<Expr>>

Source

fn visit_generic_arg(&mut self, arg: &mut GenericArg)

Source

fn visit_ty(&mut self, t: &mut P<Ty>)

Source

fn visit_ty_pat(&mut self, t: &mut P<TyPat>)

Source

fn visit_lifetime(&mut self, l: &mut Lifetime)

Source

fn visit_assoc_item_constraint(&mut self, c: &mut AssocItemConstraint)

Source

fn visit_foreign_mod(&mut self, nm: &mut ForeignMod)

Source

fn visit_variant(&mut self, v: &mut Variant)

Source

fn flat_map_variant(&mut self, v: Variant) -> SmallVec<[Variant; 1]>

Source

fn visit_ident(&mut self, i: &mut Ident)

Source

fn visit_modifiers(&mut self, m: &mut TraitBoundModifiers)

Source

fn visit_path(&mut self, p: &mut Path)

Source

fn visit_path_segment(&mut self, p: &mut PathSegment)

Source

fn visit_qself(&mut self, qs: &mut Option<P<QSelf>>)

Source

fn visit_generic_args(&mut self, p: &mut GenericArgs)

Source

fn visit_angle_bracketed_parameter_data(&mut self, p: &mut AngleBracketedArgs)

Source

fn visit_parenthesized_parameter_data(&mut self, p: &mut ParenthesizedArgs)

Source

fn visit_local(&mut self, l: &mut P<Local>)

Source

fn visit_mac_call(&mut self, mac: &mut MacCall)

Source

fn visit_macro_def(&mut self, def: &mut MacroDef)

Source

fn visit_label(&mut self, label: &mut Label)

Source

fn visit_attribute(&mut self, at: &mut Attribute)

Source

fn visit_param(&mut self, param: &mut Param)

Source

fn flat_map_param(&mut self, param: Param) -> SmallVec<[Param; 1]>

Source

fn visit_generics(&mut self, generics: &mut Generics)

Source

fn visit_trait_ref(&mut self, tr: &mut TraitRef)

Source

fn visit_poly_trait_ref(&mut self, p: &mut PolyTraitRef)

Source

fn visit_variant_data(&mut self, vdata: &mut VariantData)

Source

fn visit_generic_param(&mut self, param: &mut GenericParam)

Source

fn flat_map_generic_param( &mut self, param: GenericParam, ) -> SmallVec<[GenericParam; 1]>

Source

fn visit_param_bound(&mut self, tpb: &mut GenericBound, _ctxt: BoundKind)

Source

fn visit_precise_capturing_arg(&mut self, arg: &mut PreciseCapturingArg)

Source

fn visit_mt(&mut self, mt: &mut MutTy)

Source

fn visit_expr_field(&mut self, f: &mut ExprField)

Source

fn flat_map_expr_field(&mut self, f: ExprField) -> SmallVec<[ExprField; 1]>

Source

fn visit_where_clause(&mut self, where_clause: &mut WhereClause)

Source

fn flat_map_where_predicate( &mut self, where_predicate: WherePredicate, ) -> SmallVec<[WherePredicate; 1]>

Source

fn visit_where_predicate_kind(&mut self, kind: &mut WherePredicateKind)

Source

fn visit_vis(&mut self, vis: &mut Visibility)

Source

fn visit_id(&mut self, _id: &mut NodeId)

Source

fn visit_span(&mut self, _sp: &mut Span)

Source

fn visit_pat_field(&mut self, fp: &mut PatField)

Source

fn flat_map_pat_field(&mut self, fp: PatField) -> SmallVec<[PatField; 1]>

Source

fn visit_inline_asm(&mut self, asm: &mut InlineAsm)

Source

fn visit_inline_asm_sym(&mut self, sym: &mut InlineAsmSym)

Source

fn visit_format_args(&mut self, fmt: &mut FormatArgs)

Source

fn visit_capture_by(&mut self, capture_by: &mut CaptureBy)

Source

fn visit_fn_ret_ty(&mut self, fn_ret_ty: &mut FnRetTy)

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.

Implementors§