Class LiftA4<A, B, C, D, E, App extends Applicative<?,App>, AppE extends Applicative<E,App>>

java.lang.Object
com.jnape.palatable.lambda.functions.builtin.fn5.LiftA4<A,B,C,D,E,App,AppE>
Type Parameters:
A - the function's first argument type
B - the function's second argument type
C - the function's third argument type
D - the function's fourth argument type
E - the function's return type
App - the applicative witness
AppE - the inferred applicative return type
All Implemented Interfaces:
Fn1<Fn4<A,B,C,D,E>, Fn1<Applicative<A,App>, Fn1<Applicative<B,App>, Fn1<Applicative<C,App>, Fn1<Applicative<D,App>, AppE>>>>>, Fn2<Fn4<A,B,C,D,E>, Applicative<A,App>, Fn1<Applicative<B,App>, Fn1<Applicative<C,App>, Fn1<Applicative<D,App>, AppE>>>>, Fn3<Fn4<A,B,C,D,E>, Applicative<A,App>, Applicative<B,App>, Fn1<Applicative<C,App>, Fn1<Applicative<D,App>, AppE>>>, Fn4<Fn4<A,B,C,D,E>, Applicative<A,App>, Applicative<B,App>, Applicative<C,App>, Fn1<Applicative<D,App>, AppE>>, Fn5<Fn4<A,B,C,D,E>, Applicative<A,App>, Applicative<B,App>, Applicative<C,App>, Applicative<D,App>, AppE>, Applicative<Fn1<Applicative<A,App>, Fn1<Applicative<B,App>, Fn1<Applicative<C,App>, Fn1<Applicative<D,App>, AppE>>>>, Fn1<Fn4<A,B,C,D,E>, ?>>, Cartesian<Fn4<A,B,C,D,E>, Fn1<Applicative<A,App>, Fn1<Applicative<B,App>, Fn1<Applicative<C,App>, Fn1<Applicative<D,App>, AppE>>>>, Fn1<?,?>>, Cocartesian<Fn4<A,B,C,D,E>, Fn1<Applicative<A,App>, Fn1<Applicative<B,App>, Fn1<Applicative<C,App>, Fn1<Applicative<D,App>, AppE>>>>, Fn1<?,?>>, Contravariant<Fn4<A,B,C,D,E>, Profunctor<?, Fn1<Applicative<A,App>, Fn1<Applicative<B,App>, Fn1<Applicative<C,App>, Fn1<Applicative<D,App>, AppE>>>>, Fn1<?,?>>>, Functor<Fn1<Applicative<A,App>, Fn1<Applicative<B,App>, Fn1<Applicative<C,App>, Fn1<Applicative<D,App>, AppE>>>>, Fn1<Fn4<A,B,C,D,E>, ?>>, Profunctor<Fn4<A,B,C,D,E>, Fn1<Applicative<A,App>, Fn1<Applicative<B,App>, Fn1<Applicative<C,App>, Fn1<Applicative<D,App>, AppE>>>>, Fn1<?,?>>, Monad<Fn1<Applicative<A,App>, Fn1<Applicative<B,App>, Fn1<Applicative<C,App>, Fn1<Applicative<D,App>, AppE>>>>, Fn1<Fn4<A,B,C,D,E>, ?>>, MonadReader<Fn4<A,B,C,D,E>, Fn1<Applicative<A,App>, Fn1<Applicative<B,App>, Fn1<Applicative<C,App>, Fn1<Applicative<D,App>, AppE>>>>, Fn1<Fn4<A,B,C,D,E>, ?>>, MonadRec<Fn1<Applicative<A,App>, Fn1<Applicative<B,App>, Fn1<Applicative<C,App>, Fn1<Applicative<D,App>, AppE>>>>, Fn1<Fn4<A,B,C,D,E>, ?>>, MonadWriter<Fn4<A,B,C,D,E>, Fn1<Applicative<A,App>, Fn1<Applicative<B,App>, Fn1<Applicative<C,App>, Fn1<Applicative<D,App>, AppE>>>>, Fn1<Fn4<A,B,C,D,E>, ?>>

public final class LiftA4<A, B, C, D, E, App extends Applicative<?,App>, AppE extends Applicative<E,App>> extends Object implements Fn5<Fn4<A,B,C,D,E>, Applicative<A,App>, Applicative<B,App>, Applicative<C,App>, Applicative<D,App>, AppE>
Lift into and apply an Fn4 to four Applicative values, returning the result inside the same Applicative context.
See Also: