pub trait MakeVisitor<T> {
    type Visitor: Visit;

    // Required method
    fn make_visitor(&self, target: T) -> Self::Visitor;
}
Expand description

Creates new visitors.

A type implementing MakeVisitor represents a composable factory for types implementing the Visit trait. The MakeVisitor trait defines a single function, make_visitor, which takes in a T-typed target and returns a type implementing Visit configured for that target. A target may be a string, output stream, or data structure that the visitor will record data to, configuration variables that determine the visitor’s behavior, or () when no input is required to produce a visitor.

Required Associated Types§

source

type Visitor: Visit

The visitor type produced by this MakeVisitor.

Required Methods§

source

fn make_visitor(&self, target: T) -> Self::Visitor

Make a new visitor for the provided target.

Implementors§

source§

impl<'a> MakeVisitor<Writer<'a>> for DefaultFields

source§

impl<'a> MakeVisitor<Writer<'a>> for PrettyFields

source§

impl<'a, F> MakeVisitor<Writer<'a>> for FieldFn<F>
where F: Fn(&mut Writer<'a>, &Field, &dyn Debug) -> Result<(), Error> + Clone,

source§

impl<D, V, T> MakeVisitor<T> for Delimited<D, V>
where D: AsRef<str> + Clone, V: MakeVisitor<T>, <V as MakeVisitor<T>>::Visitor: VisitFmt,

source§

impl<T, V> MakeVisitor<T> for Alt<V>
where V: MakeVisitor<T>,

§

type Visitor = Alt<<V as MakeVisitor<T>>::Visitor>

source§

impl<T, V> MakeVisitor<T> for Messages<V>
where V: MakeVisitor<T>,

source§

impl<T, V, F> MakeVisitor<T> for F
where F: Fn(T) -> V, V: Visit,

§

type Visitor = V