A
- The type of the left parameterB
- The type of the right parameterPF
- The unification parameter@FunctionalInterface public interface Profunctor<A,B,PF extends Profunctor<?,?,PF>> extends Contravariant<A,Profunctor<?,B,PF>>
For more information, read about Profunctors.
Functor
,
Bifunctor
,
Contravariant
,
Fn1
,
Optic
Modifier and Type | Method and Description |
---|---|
default <Z> Profunctor<Z,B,PF> |
contraMap(Fn1<? super Z,? extends A> fn)
Contravariantly map
A <- B . |
<Z,C> Profunctor<Z,C,PF> |
diMap(Fn1<? super Z,? extends A> lFn,
Fn1<? super B,? extends C> rFn)
Dually map contravariantly over the left parameter and covariantly over the right parameter.
|
default <Z> Profunctor<Z,B,PF> |
diMapL(Fn1<? super Z,? extends A> fn)
Contravariantly map over the left parameter.
|
default <C> Profunctor<A,C,PF> |
diMapR(Fn1<? super B,? extends C> fn)
Covariantly map over the right parameter.
|
<Z,C> Profunctor<Z,C,PF> diMap(Fn1<? super Z,? extends A> lFn, Fn1<? super B,? extends C> rFn)
diMapL(lFn).diMapR(rFn)
.Z
- the new left parameter typeC
- the new right parameter typelFn
- the left parameter mapping functionrFn
- the right parameter mapping functiondefault <Z> Profunctor<Z,B,PF> diMapL(Fn1<? super Z,? extends A> fn)
Z
- the new left parameter typefn
- the mapping functiondefault <C> Profunctor<A,C,PF> diMapR(Fn1<? super B,? extends C> fn)
diMapR(f) == fmap(f)
.C
- the new right parameter typefn
- the mapping functiondefault <Z> Profunctor<Z,B,PF> contraMap(Fn1<? super Z,? extends A> fn)
A <- B
.contraMap
in interface Contravariant<A,Profunctor<?,B,PF extends Profunctor<?,?,PF>>>
Z
- the new parameter typefn
- the mapping function