Struct scrapmetal::MutateEverything [] [src]

pub struct MutateEverything<M, R, F> where
    M: GenericMutate<R>,
    F: FnMut(R, R) -> R, 
{ /* fields omitted */ }

Recursively perform a query in a top-down, left-to-right manner across a data structure. The M: GenericMutate<R> queries individual values, while the F: FnMut(R, R) -> R joins the results of multiple queries into a single result.

Methods

impl<M, R, F> MutateEverything<M, R, F> where
    M: GenericMutate<R>,
    F: FnMut(R, R) -> R, 
[src]

Construct a new MutateEverything query traversal.

impl<M> MutateEverything<M, (), fn(_: (), _: ())> where
    M: GenericMutate<()>, 
[src]

Construct a new MutateEverything query traversal.

Trait Implementations

impl<M: Debug, R: Debug, F: Debug> Debug for MutateEverything<M, R, F> where
    M: GenericMutate<R>,
    F: FnMut(R, R) -> R, 
[src]

Formats the value using the given formatter.

impl<M, R, F> GenericMutate<R> for MutateEverything<M, R, F> where
    M: GenericMutate<R>,
    F: FnMut(R, R) -> R, 
[src]

Call the query function on any T.