Trait MutVisitable

Source
pub(crate) trait MutVisitable<V: MutVisitor> {
    type Extra: Copy;

    // Required method
    fn visit_mut(&mut self, visitor: &mut V, extra: Self::Extra);
}

Required Associated Types§

Required Methods§

Source

fn visit_mut(&mut self, visitor: &mut V, extra: Self::Extra)

Implementations on Foreign Types§

Source§

impl<V: MutVisitor> MutVisitable<V> for Cow<'_, str>

Source§

type Extra = ()

Source§

fn visit_mut(&mut self, _vis: &mut V, _extra: Self::Extra) -> V::Result

Source§

impl<V: MutVisitor> MutVisitable<V> for Result<(), ErrorGuaranteed>

Source§

type Extra = ()

Source§

fn visit_mut(&mut self, _vis: &mut V, _extra: Self::Extra) -> V::Result

Source§

impl<V: MutVisitor> MutVisitable<V> for bool

Source§

type Extra = ()

Source§

fn visit_mut(&mut self, _vis: &mut V, _extra: Self::Extra) -> V::Result

Source§

impl<V: MutVisitor> MutVisitable<V> for char

Source§

type Extra = ()

Source§

fn visit_mut(&mut self, _vis: &mut V, _extra: Self::Extra) -> V::Result

Source§

impl<V: MutVisitor> MutVisitable<V> for u8

Source§

type Extra = ()

Source§

fn visit_mut(&mut self, _vis: &mut V, _extra: Self::Extra) -> V::Result

Source§

impl<V: MutVisitor> MutVisitable<V> for usize

Source§

type Extra = ()

Source§

fn visit_mut(&mut self, _vis: &mut V, _extra: Self::Extra) -> V::Result

Source§

impl<V: MutVisitor> MutVisitable<V> for Span

Source§

type Extra = ()

Source§

fn visit_mut(&mut self, visitor: &mut V, _extra: Self::Extra) -> V::Result

Source§

impl<V: MutVisitor> MutVisitable<V> for ErrorGuaranteed

Source§

type Extra = ()

Source§

fn visit_mut(&mut self, _vis: &mut V, _extra: Self::Extra) -> V::Result

Source§

impl<V: MutVisitor> MutVisitable<V> for ByteSymbol

Source§

type Extra = ()

Source§

fn visit_mut(&mut self, _vis: &mut V, _extra: Self::Extra) -> V::Result

Source§

impl<V: MutVisitor> MutVisitable<V> for Ident

Source§

type Extra = ()

Source§

fn visit_mut(&mut self, visitor: &mut V, _extra: Self::Extra) -> V::Result

Source§

impl<V: MutVisitor> MutVisitable<V> for Symbol

Source§

type Extra = ()

Source§

fn visit_mut(&mut self, _vis: &mut V, _extra: Self::Extra) -> V::Result

Source§

impl<V: MutVisitor> MutVisitable<V> for ThinVec<Arm>

Source§

type Extra = ()

Source§

fn visit_mut(&mut self, visitor: &mut V, (): Self::Extra) -> V::Result

Source§

impl<V: MutVisitor> MutVisitable<V> for ThinVec<ExprField>

Source§

type Extra = ()

Source§

fn visit_mut(&mut self, visitor: &mut V, (): Self::Extra) -> V::Result

Source§

impl<V: MutVisitor> MutVisitable<V> for ThinVec<FieldDef>

Source§

type Extra = ()

Source§

fn visit_mut(&mut self, visitor: &mut V, (): Self::Extra) -> V::Result

Source§

impl<V: MutVisitor> MutVisitable<V> for ThinVec<GenericParam>

Source§

type Extra = ()

Source§

fn visit_mut(&mut self, visitor: &mut V, (): Self::Extra) -> V::Result

Source§

impl<V: MutVisitor> MutVisitable<V> for ThinVec<Param>

Source§

type Extra = ()

Source§

fn visit_mut(&mut self, visitor: &mut V, (): Self::Extra) -> V::Result

Source§

impl<V: MutVisitor> MutVisitable<V> for ThinVec<PatField>

Source§

type Extra = ()

Source§

fn visit_mut(&mut self, visitor: &mut V, (): Self::Extra) -> V::Result

Source§

impl<V: MutVisitor> MutVisitable<V> for ThinVec<Stmt>

Source§

type Extra = ()

Source§

fn visit_mut(&mut self, visitor: &mut V, (): Self::Extra) -> V::Result

Source§

impl<V: MutVisitor> MutVisitable<V> for ThinVec<Variant>

Source§

type Extra = ()

Source§

fn visit_mut(&mut self, visitor: &mut V, (): Self::Extra) -> V::Result

Source§

impl<V: MutVisitor> MutVisitable<V> for ThinVec<WherePredicate>

Source§

type Extra = ()

Source§

fn visit_mut(&mut self, visitor: &mut V, (): Self::Extra) -> V::Result

Source§

impl<V: MutVisitor> MutVisitable<V> for ThinVec<P<Expr>>

Source§

type Extra = ()

Source§

fn visit_mut(&mut self, visitor: &mut V, (): Self::Extra) -> V::Result

Source§

impl<V: MutVisitor> MutVisitable<V> for ThinVec<P<Item>>

Source§

type Extra = ()

Source§

fn visit_mut(&mut self, visitor: &mut V, (): Self::Extra) -> V::Result

Source§

impl<V: MutVisitor> MutVisitable<V> for ThinVec<P<AssocItem>>

Source§

type Extra = AssocCtxt

Source§

fn visit_mut(&mut self, visitor: &mut V, ctxt: Self::Extra) -> V::Result

Source§

impl<V: MutVisitor> MutVisitable<V> for ThinVec<P<ForeignItem>>

Source§

type Extra = ()

Source§

fn visit_mut(&mut self, visitor: &mut V, (): Self::Extra) -> V::Result

Source§

impl<V: MutVisitor> MutVisitable<V> for FxHashMap<Symbol, usize>

Source§

type Extra = ()

Source§

fn visit_mut(&mut self, _vis: &mut V, _extra: Self::Extra) -> V::Result

Source§

impl<V: MutVisitor, T1, T2> MutVisitable<V> for (T1, T2)
where T1: MutVisitable<V, Extra = ()>, T2: MutVisitable<V, Extra = ()>,

Source§

type Extra = ()

Source§

fn visit_mut(&mut self, visitor: &mut V, extra: Self::Extra)

Source§

impl<V: MutVisitor, T1, T2, T3> MutVisitable<V> for (T1, T2, T3)
where T1: MutVisitable<V, Extra = ()>, T2: MutVisitable<V, Extra = ()>, T3: MutVisitable<V, Extra = ()>,

Source§

type Extra = ()

Source§

fn visit_mut(&mut self, visitor: &mut V, extra: Self::Extra)

Source§

impl<V: MutVisitor, T1, T2, T3, T4> MutVisitable<V> for (T1, T2, T3, T4)
where T1: MutVisitable<V, Extra = ()>, T2: MutVisitable<V, Extra = ()>, T3: MutVisitable<V, Extra = ()>, T4: MutVisitable<V, Extra = ()>,

Source§

type Extra = ()

Source§

fn visit_mut(&mut self, visitor: &mut V, extra: Self::Extra)

Source§

impl<V: MutVisitor, T> MutVisitable<V> for Option<T>
where T: MutVisitable<V>,

Source§

type Extra = <T as MutVisitable<V>>::Extra

Source§

fn visit_mut(&mut self, visitor: &mut V, extra: Self::Extra)

Source§

impl<V: MutVisitor, T> MutVisitable<V> for [T]
where T: MutVisitable<V>,

Source§

type Extra = <T as MutVisitable<V>>::Extra

Source§

fn visit_mut(&mut self, visitor: &mut V, extra: Self::Extra)

Source§

impl<V: MutVisitor, T> MutVisitable<V> for (T,)
where T: MutVisitable<V>,

Source§

type Extra = <T as MutVisitable<V>>::Extra

Source§

fn visit_mut(&mut self, visitor: &mut V, extra: Self::Extra)

Source§

impl<V: MutVisitor, T> MutVisitable<V> for Spanned<T>
where T: MutVisitable<V>,

Source§

type Extra = <T as MutVisitable<V>>::Extra

Source§

fn visit_mut(&mut self, visitor: &mut V, extra: Self::Extra)

Source§

impl<V: MutVisitor, T> MutVisitable<V> for Vec<T>
where T: MutVisitable<V>,

Source§

type Extra = <T as MutVisitable<V>>::Extra

Source§

fn visit_mut(&mut self, visitor: &mut V, extra: Self::Extra)

Source§

impl<V: MutVisitor, T> MutVisitable<V> for ThinVec<(Ident, Option<Ident>)>
where for<'a> &'a mut ThinVec<(Ident, Option<Ident>)>: IntoIterator<Item = &'a mut T>, T: MutVisitable<V>,

Source§

type Extra = <T as MutVisitable<V>>::Extra

Source§

fn visit_mut(&mut self, visitor: &mut V, extra: Self::Extra)

Source§

impl<V: MutVisitor, T> MutVisitable<V> for ThinVec<(UseTree, NodeId)>
where for<'a> &'a mut ThinVec<(UseTree, NodeId)>: IntoIterator<Item = &'a mut T>, T: MutVisitable<V>,

Source§

type Extra = <T as MutVisitable<V>>::Extra

Source§

fn visit_mut(&mut self, visitor: &mut V, extra: Self::Extra)

Source§

impl<V: MutVisitor, T> MutVisitable<V> for ThinVec<(NodeId, Path)>
where for<'a> &'a mut ThinVec<(NodeId, Path)>: IntoIterator<Item = &'a mut T>, T: MutVisitable<V>,

Source§

type Extra = <T as MutVisitable<V>>::Extra

Source§

fn visit_mut(&mut self, visitor: &mut V, extra: Self::Extra)

Source§

impl<V: MutVisitor, T> MutVisitable<V> for ThinVec<AngleBracketedArg>
where for<'a> &'a mut ThinVec<AngleBracketedArg>: IntoIterator<Item = &'a mut T>, T: MutVisitable<V>,

Source§

type Extra = <T as MutVisitable<V>>::Extra

Source§

fn visit_mut(&mut self, visitor: &mut V, extra: Self::Extra)

Source§

impl<V: MutVisitor, T> MutVisitable<V> for ThinVec<PreciseCapturingArg>
where for<'a> &'a mut ThinVec<PreciseCapturingArg>: IntoIterator<Item = &'a mut T>, T: MutVisitable<V>,

Source§

type Extra = <T as MutVisitable<V>>::Extra

Source§

fn visit_mut(&mut self, visitor: &mut V, extra: Self::Extra)

Source§

impl<V: MutVisitor, T> MutVisitable<V> for ThinVec<Attribute>
where for<'a> &'a mut ThinVec<Attribute>: IntoIterator<Item = &'a mut T>, T: MutVisitable<V>,

Source§

type Extra = <T as MutVisitable<V>>::Extra

Source§

fn visit_mut(&mut self, visitor: &mut V, extra: Self::Extra)

Source§

impl<V: MutVisitor, T> MutVisitable<V> for ThinVec<PathSegment>
where for<'a> &'a mut ThinVec<PathSegment>: IntoIterator<Item = &'a mut T>, T: MutVisitable<V>,

Source§

type Extra = <T as MutVisitable<V>>::Extra

Source§

fn visit_mut(&mut self, visitor: &mut V, extra: Self::Extra)

Source§

impl<V: MutVisitor, T> MutVisitable<V> for ThinVec<P<Pat>>
where for<'a> &'a mut ThinVec<P<Pat>>: IntoIterator<Item = &'a mut T>, T: MutVisitable<V>,

Source§

type Extra = <T as MutVisitable<V>>::Extra

Source§

fn visit_mut(&mut self, visitor: &mut V, extra: Self::Extra)

Source§

impl<V: MutVisitor, T> MutVisitable<V> for ThinVec<P<Ty>>
where for<'a> &'a mut ThinVec<P<Ty>>: IntoIterator<Item = &'a mut T>, T: MutVisitable<V>,

Source§

type Extra = <T as MutVisitable<V>>::Extra

Source§

fn visit_mut(&mut self, visitor: &mut V, extra: Self::Extra)

Source§

impl<V: MutVisitor, T> MutVisitable<V> for ThinVec<P<TyPat>>
where for<'a> &'a mut ThinVec<P<TyPat>>: IntoIterator<Item = &'a mut T>, T: MutVisitable<V>,

Source§

type Extra = <T as MutVisitable<V>>::Extra

Source§

fn visit_mut(&mut self, visitor: &mut V, extra: Self::Extra)

Implementors§

Source§

impl<V: MutVisitor> MutVisitable<V> for AngleBracketedArg

Source§

impl<V: MutVisitor> MutVisitable<V> for AsmMacro

Source§

impl<V: MutVisitor> MutVisitable<V> for AssignOpKind

Source§

impl<V: MutVisitor> MutVisitable<V> for AssocItemConstraintKind

Source§

impl<V: MutVisitor> MutVisitable<V> for AttrArgs

Source§

impl<V: MutVisitor> MutVisitable<V> for AttrKind

Source§

impl<V: MutVisitor> MutVisitable<V> for AttrStyle

Source§

impl<V: MutVisitor> MutVisitable<V> for BinOpKind

Source§

impl<V: MutVisitor> MutVisitable<V> for BlockCheckMode

Source§

impl<V: MutVisitor> MutVisitable<V> for BorrowKind

Source§

impl<V: MutVisitor> MutVisitable<V> for BoundAsyncness

Source§

impl<V: MutVisitor> MutVisitable<V> for BoundConstness

Source§

impl<V: MutVisitor> MutVisitable<V> for BoundPolarity

Source§

impl<V: MutVisitor> MutVisitable<V> for ByRef

Source§

impl<V: MutVisitor> MutVisitable<V> for CaptureBy

Source§

impl<V: MutVisitor> MutVisitable<V> for ClosureBinder

Source§

impl<V: MutVisitor> MutVisitable<V> for Const

Source§

impl<V: MutVisitor> MutVisitable<V> for CoroutineKind

Source§

impl<V: MutVisitor> MutVisitable<V> for Defaultness

Source§

impl<V: MutVisitor> MutVisitable<V> for Extern

Source§

impl<V: MutVisitor> MutVisitable<V> for FnRetTy

Source§

impl<V: MutVisitor> MutVisitable<V> for ForLoopKind

Source§

impl<V: MutVisitor> MutVisitable<V> for GenBlockKind

Source§

impl<V: MutVisitor> MutVisitable<V> for GenericArg

Source§

impl<V: MutVisitor> MutVisitable<V> for GenericArgs

Source§

impl<V: MutVisitor> MutVisitable<V> for GenericBound

Source§

impl<V: MutVisitor> MutVisitable<V> for GenericParamKind

Source§

impl<V: MutVisitor> MutVisitable<V> for ImplPolarity

Source§

impl<V: MutVisitor> MutVisitable<V> for Inline

Source§

impl<V: MutVisitor> MutVisitable<V> for InlineAsmOperand

Source§

impl<V: MutVisitor> MutVisitable<V> for InlineAsmRegOrRegClass

Source§

impl<V: MutVisitor> MutVisitable<V> for InlineAsmTemplatePiece

Source§

impl<V: MutVisitor> MutVisitable<V> for IsAuto

Source§

impl<V: MutVisitor> MutVisitable<V> for LocalKind

Source§

impl<V: MutVisitor> MutVisitable<V> for MacStmtStyle

Source§

impl<V: MutVisitor> MutVisitable<V> for MatchKind

Source§

impl<V: MutVisitor> MutVisitable<V> for ModKind

Source§

impl<V: MutVisitor> MutVisitable<V> for Movability

Source§

impl<V: MutVisitor> MutVisitable<V> for Mutability

Source§

impl<V: MutVisitor> MutVisitable<V> for Parens

Source§

impl<V: MutVisitor> MutVisitable<V> for PatFieldsRest

Source§

impl<V: MutVisitor> MutVisitable<V> for PatKind

Source§

impl<V: MutVisitor> MutVisitable<V> for PreciseCapturingArg

Source§

impl<V: MutVisitor> MutVisitable<V> for RangeEnd

Source§

impl<V: MutVisitor> MutVisitable<V> for RangeLimits

Source§

impl<V: MutVisitor> MutVisitable<V> for RangeSyntax

Source§

impl<V: MutVisitor> MutVisitable<V> for Recovered

Source§

impl<V: MutVisitor> MutVisitable<V> for Safety

Source§

impl<V: MutVisitor> MutVisitable<V> for StrStyle

Source§

impl<V: MutVisitor> MutVisitable<V> for StructRest

Source§

impl<V: MutVisitor> MutVisitable<V> for Term

Source§

impl<V: MutVisitor> MutVisitable<V> for TraitObjectSyntax

Source§

impl<V: MutVisitor> MutVisitable<V> for TyKind

Source§

impl<V: MutVisitor> MutVisitable<V> for TyPatKind

Source§

impl<V: MutVisitor> MutVisitable<V> for UnOp

Source§

impl<V: MutVisitor> MutVisitable<V> for UnsafeBinderCastKind

Source§

impl<V: MutVisitor> MutVisitable<V> for UnsafeSource

Source§

impl<V: MutVisitor> MutVisitable<V> for UseTreeKind

Source§

impl<V: MutVisitor> MutVisitable<V> for VariantData

Source§

impl<V: MutVisitor> MutVisitable<V> for VisibilityKind

Source§

impl<V: MutVisitor> MutVisitable<V> for WherePredicateKind

Source§

impl<V: MutVisitor> MutVisitable<V> for YieldKind

Source§

impl<V: MutVisitor> MutVisitable<V> for FormatArgsPiece

Source§

impl<V: MutVisitor> MutVisitable<V> for FormatArgumentKind

Source§

impl<V: MutVisitor> MutVisitable<V> for CommentKind

Source§

impl<V: MutVisitor> MutVisitable<V> for Delimiter

Source§

impl<V: MutVisitor> MutVisitable<V> for LitKind

Source§

impl<V: MutVisitor> MutVisitable<V> for AngleBracketedArgs

Source§

impl<V: MutVisitor> MutVisitable<V> for AnonConst

Source§

impl<V: MutVisitor> MutVisitable<V> for Arm

Source§

impl<V: MutVisitor> MutVisitable<V> for AssocItemConstraint

Source§

impl<V: MutVisitor> MutVisitable<V> for AttrId

Source§

impl<V: MutVisitor> MutVisitable<V> for AttrItem

Source§

impl<V: MutVisitor> MutVisitable<V> for Attribute

Source§

impl<V: MutVisitor> MutVisitable<V> for BindingMode

Source§

impl<V: MutVisitor> MutVisitable<V> for Block

Source§

impl<V: MutVisitor> MutVisitable<V> for Closure

Source§

impl<V: MutVisitor> MutVisitable<V> for ConstItem

Source§

impl<V: MutVisitor> MutVisitable<V> for Crate

Source§

impl<V: MutVisitor> MutVisitable<V> for Delegation

Source§

impl<V: MutVisitor> MutVisitable<V> for DelegationMac

Source§

impl<V: MutVisitor> MutVisitable<V> for DelimArgs

Source§

impl<V: MutVisitor> MutVisitable<V> for EnumDef

Source§

impl<V: MutVisitor> MutVisitable<V> for Expr

Source§

impl<V: MutVisitor> MutVisitable<V> for ExprField

Source§

impl<V: MutVisitor> MutVisitable<V> for FieldDef

Source§

impl<V: MutVisitor> MutVisitable<V> for FnContract

Source§

impl<V: MutVisitor> MutVisitable<V> for FnDecl

Source§

impl<V: MutVisitor> MutVisitable<V> for FnHeader

Source§

impl<V: MutVisitor> MutVisitable<V> for FnPtrTy

Source§

impl<V: MutVisitor> MutVisitable<V> for ForeignMod

Source§

impl<V: MutVisitor> MutVisitable<V> for GenericParam

Source§

impl<V: MutVisitor> MutVisitable<V> for Generics

Source§

impl<V: MutVisitor> MutVisitable<V> for Impl

Source§

impl<V: MutVisitor> MutVisitable<V> for InlineAsm

Source§

impl<V: MutVisitor> MutVisitable<V> for InlineAsmSym

Source§

impl<V: MutVisitor> MutVisitable<V> for Item

Source§

impl<V: MutVisitor> MutVisitable<V> for Label

Source§

impl<V: MutVisitor> MutVisitable<V> for Lifetime

Source§

impl<V: MutVisitor> MutVisitable<V> for Local

Source§

impl<V: MutVisitor> MutVisitable<V> for MacCall

Source§

impl<V: MutVisitor> MutVisitable<V> for MacCallStmt

Source§

impl<V: MutVisitor> MutVisitable<V> for MacroDef

Source§

impl<V: MutVisitor> MutVisitable<V> for MethodCall

Source§

impl<V: MutVisitor> MutVisitable<V> for ModSpans

Source§

impl<V: MutVisitor> MutVisitable<V> for MutTy

Source§

impl<V: MutVisitor> MutVisitable<V> for NormalAttr

Source§

impl<V: MutVisitor> MutVisitable<V> for Param

Source§

impl<V: MutVisitor> MutVisitable<V> for ParenthesizedArgs

Source§

impl<V: MutVisitor> MutVisitable<V> for Pat

Source§

impl<V: MutVisitor> MutVisitable<V> for PatField

Source§

impl<V: MutVisitor> MutVisitable<V> for Path

Source§

impl<V: MutVisitor> MutVisitable<V> for PathSegment

Source§

impl<V: MutVisitor> MutVisitable<V> for PolyTraitRef

Source§

impl<V: MutVisitor> MutVisitable<V> for QSelf

Source§

impl<V: MutVisitor> MutVisitable<V> for StaticItem

Source§

impl<V: MutVisitor> MutVisitable<V> for StrLit

Source§

impl<V: MutVisitor> MutVisitable<V> for StructExpr

Source§

impl<V: MutVisitor> MutVisitable<V> for Trait

Source§

impl<V: MutVisitor> MutVisitable<V> for TraitBoundModifiers

Source§

impl<V: MutVisitor> MutVisitable<V> for TraitRef

Source§

impl<V: MutVisitor> MutVisitable<V> for Ty

Source§

impl<V: MutVisitor> MutVisitable<V> for TyAlias

Source§

impl<V: MutVisitor> MutVisitable<V> for TyAliasWhereClause

Source§

impl<V: MutVisitor> MutVisitable<V> for TyAliasWhereClauses

Source§

impl<V: MutVisitor> MutVisitable<V> for TyPat

Source§

impl<V: MutVisitor> MutVisitable<V> for UnsafeBinderTy

Source§

impl<V: MutVisitor> MutVisitable<V> for UseTree

Source§

impl<V: MutVisitor> MutVisitable<V> for Variant

Source§

impl<V: MutVisitor> MutVisitable<V> for Visibility

Source§

impl<V: MutVisitor> MutVisitable<V> for WhereBoundPredicate

Source§

impl<V: MutVisitor> MutVisitable<V> for WhereClause

Source§

impl<V: MutVisitor> MutVisitable<V> for WhereEqPredicate

Source§

impl<V: MutVisitor> MutVisitable<V> for WherePredicate

Source§

impl<V: MutVisitor> MutVisitable<V> for WhereRegionPredicate

Source§

impl<V: MutVisitor> MutVisitable<V> for FormatArgPosition

Source§

impl<V: MutVisitor> MutVisitable<V> for FormatArgs

Source§

impl<V: MutVisitor> MutVisitable<V> for FormatArgument

Source§

impl<V: MutVisitor> MutVisitable<V> for FormatArguments

Source§

impl<V: MutVisitor> MutVisitable<V> for FormatPlaceholder

Source§

impl<V: MutVisitor> MutVisitable<V> for NodeId

Source§

impl<V: MutVisitor> MutVisitable<V> for Lit

Source§

impl<V: MutVisitor> MutVisitable<V> for DelimSpan

Source§

impl<V: MutVisitor> MutVisitable<V> for LazyAttrTokenStream

Source§

impl<V: MutVisitor> MutVisitable<V> for TokenStream

Source§

impl<V: MutVisitor> MutVisitable<V> for AssocItem

Source§

impl<V: MutVisitor> MutVisitable<V> for ForeignItem

Source§

impl<V: MutVisitor, T> MutVisitable<V> for P<T>
where T: MutVisitable<V> + ?Sized,

Source§

type Extra = <T as MutVisitable<V>>::Extra