T
- The functor type.P
- The profunctor type.Mu
- The witness type for this FunctorProfunctor
.public interface FunctorProfunctor<T extends K1,P extends K2,Mu extends FunctorProfunctor<T> _> extends Kind2 P
distribute(App, App2)
that wraps the input and output of a profunctor
into an effect defined via a functor.
Note that this interface does not extend Profunctor
.
Profunctor
,
Functor
Modifier and Type | Method and Description |
---|---|
<A,B,F extends K1> |
distribute(? extends T<F> proof,
P<A,B> input)
Wraps the input and output of the given transformation in the given functor.
|
<A,B,F extends K1> P<F<A>,F<B>> distribute(? extends T<F> proof, P<A,B> input)
This method is equivalent to Functor.map(Function, App)
, but generalized
to operate on any Profunctor
.
F
across the arguments of the profunctor P
,
hence the name distribute
.A
- The input type of the transformation.B
- The output type of the transformation.F
- The type of functor.proof
- The type class instance for the desired functor.input
- The transformation.Functor.map(Function, App)