S - The input object type.T - The output object type.A - The input field type.B - The output field type.public interface Traversal<S,T,A,B> extends Wander<S::A,T::B>, Optic<TraversalP _,S::A,T::B>
The operation performed by traversals is analogous to Traversable,
which defines a structure-preserving transformation in the context of an effectful transformation.
Traversable| Modifier and Type | Interface and Description |
|---|---|
static class |
Traversal.Instance<A2,B2>
The
TraversalP type class instance for Traversal. |
| Modifier and Type | Method and Description |
|---|---|
default <P extends K2> |
eval(TraversalP P proof)
Produces a function that takes a transformation between field types and produces a transformation between
object types.
|
compose, composeUnchecked, upCastdefault <P extends K2> (P<A,B>) -> P<S,T> eval(TraversalP P proof)
eval in interface Optic<TraversalP _,S::A,T::B>P - The transformation type.proof - The profunctor associated with this optic.Wander.wander(Applicative, FunctionType)