Visitable in rustc_ast::visit - Rust (original) (raw)
pub(crate) trait Visitable<'a, V: Visitor<'a>> {
type Extra: Copy;
// Required method
fn visit(&'a self, visitor: &mut V, extra: Self::Extra) -> V::Result;
}Required Associated Types§
type Extra: Copy
Required Methods§
fn visit(&'a self, visitor: &mut V, extra: Self::Extra) -> V::Result
Implementations on Foreign Types§
impl<'a, V: Visitor<'a>> Visitable<'a, V> for Cow<'_, str>
type Extra = ()
fn visit(&'a self, _vis: &mut V, _extra: Self::Extra) -> V::Result
impl<'a, V: Visitor<'a>> Visitable<'a, V> for Result<(), ErrorGuaranteed>
type Extra = ()
fn visit(&'a self, _vis: &mut V, _extra: Self::Extra) -> V::Result
impl<'a, V: Visitor<'a>> Visitable<'a, V> for bool
type Extra = ()
fn visit(&'a self, _vis: &mut V, _extra: Self::Extra) -> V::Result
impl<'a, V: Visitor<'a>> Visitable<'a, V> for char
type Extra = ()
fn visit(&'a self, _vis: &mut V, _extra: Self::Extra) -> V::Result
impl<'a, V: Visitor<'a>> Visitable<'a, V> for u8
type Extra = ()
fn visit(&'a self, _vis: &mut V, _extra: Self::Extra) -> V::Result
impl<'a, V: Visitor<'a>> Visitable<'a, V> for usize
type Extra = ()
fn visit(&'a self, _vis: &mut V, _extra: Self::Extra) -> V::Result
impl<'a, V: Visitor<'a>> Visitable<'a, V> for Span
type Extra = ()
fn visit(&'a self, _vis: &mut V, _extra: Self::Extra) -> V::Result
impl<'a, V: Visitor<'a>> Visitable<'a, V> for ErrorGuaranteed
type Extra = ()
fn visit(&'a self, _vis: &mut V, _extra: Self::Extra) -> V::Result
impl<'a, V: Visitor<'a>> Visitable<'a, V> for ByteSymbol
type Extra = ()
fn visit(&'a self, _vis: &mut V, _extra: Self::Extra) -> V::Result
impl<'a, V: Visitor<'a>> Visitable<'a, V> for Ident
type Extra = ()
fn visit(&'a self, visitor: &mut V, _extra: Self::Extra) -> V::Result
impl<'a, V: Visitor<'a>> Visitable<'a, V> for Symbol
type Extra = ()
fn visit(&'a self, _vis: &mut V, _extra: Self::Extra) -> V::Result
impl<'a, V: Visitor<'a>> Visitable<'a, V> for ThinVec<(UseTree, NodeId)>
type Extra = ()
fn visit(&'a self, vis: &mut V, _extra: Self::Extra) -> V::Result
impl<'a, V: Visitor<'a>> Visitable<'a, V> for ThinVec<Arm>
type Extra = ()
fn visit(&'a self, visitor: &mut V, (): Self::Extra) -> V::Result
impl<'a, V: Visitor<'a>> Visitable<'a, V> for ThinVec<ExprField>
type Extra = ()
fn visit(&'a self, visitor: &mut V, (): Self::Extra) -> V::Result
impl<'a, V: Visitor<'a>> Visitable<'a, V> for ThinVec<FieldDef>
type Extra = ()
fn visit(&'a self, visitor: &mut V, (): Self::Extra) -> V::Result
impl<'a, V: Visitor<'a>> Visitable<'a, V> for ThinVec<GenericParam>
type Extra = ()
fn visit(&'a self, visitor: &mut V, (): Self::Extra) -> V::Result
impl<'a, V: Visitor<'a>> Visitable<'a, V> for ThinVec<Param>
type Extra = ()
fn visit(&'a self, visitor: &mut V, (): Self::Extra) -> V::Result
impl<'a, V: Visitor<'a>> Visitable<'a, V> for ThinVec<PatField>
type Extra = ()
fn visit(&'a self, visitor: &mut V, (): Self::Extra) -> V::Result
impl<'a, V: Visitor<'a>> Visitable<'a, V> for ThinVec<Stmt>
type Extra = ()
fn visit(&'a self, visitor: &mut V, (): Self::Extra) -> V::Result
impl<'a, V: Visitor<'a>> Visitable<'a, V> for ThinVec<Variant>
type Extra = ()
fn visit(&'a self, visitor: &mut V, (): Self::Extra) -> V::Result
impl<'a, V: Visitor<'a>> Visitable<'a, V> for ThinVec<WherePredicate>
type Extra = ()
fn visit(&'a self, visitor: &mut V, (): Self::Extra) -> V::Result
impl<'a, V: Visitor<'a>> Visitable<'a, V> for ThinVec<Box<Expr>>
type Extra = ()
fn visit(&'a self, visitor: &mut V, (): Self::Extra) -> V::Result
impl<'a, V: Visitor<'a>> Visitable<'a, V> for ThinVec<Box<Item>>
type Extra = ()
fn visit(&'a self, visitor: &mut V, (): Self::Extra) -> V::Result
impl<'a, V: Visitor<'a>> Visitable<'a, V> for ThinVec<Box<AssocItem>>
type Extra = AssocCtxt
fn visit(&'a self, visitor: &mut V, ctxt: Self::Extra) -> V::Result
impl<'a, V: Visitor<'a>> Visitable<'a, V> for ThinVec<Box<ForeignItem>>
type Extra = ()
fn visit(&'a self, visitor: &mut V, (): Self::Extra) -> V::Result
impl<'a, V: Visitor<'a>> Visitable<'a, V> for FxHashMap<Symbol, usize>
type Extra = ()
fn visit(&'a self, _vis: &mut V, _extra: Self::Extra) -> V::Result
impl<'a, V: Visitor<'a>, T1, T2> Visitable<'a, V> for (T1, T2)
type Extra = ()
fn visit(&'a self, visitor: &mut V, extra: Self::Extra) -> V::Result
impl<'a, V: Visitor<'a>, T1, T2, T3> Visitable<'a, V> for (T1, T2, T3)
type Extra = ()
fn visit(&'a self, visitor: &mut V, extra: Self::Extra) -> V::Result
impl<'a, V: Visitor<'a>, T1, T2, T3, T4> Visitable<'a, V> for (T1, T2, T3, T4)
where T1: Visitable<'a, V, Extra = ()>, T2: Visitable<'a, V, Extra = ()>, T3: Visitable<'a, V, Extra = ()>, T4: Visitable<'a, V, Extra = ()>,