Class LiftA3<A,B,C,D,App extends Applicative<?,App>,AppD extends Applicative<D,App>>
java.lang.Object
com.jnape.palatable.lambda.functions.builtin.fn4.LiftA3<A,B,C,D,App,AppD>
- Type Parameters:
A- the function's first argument typeB- the function's second argument typeC- the function's third argument typeD- the function's return typeApp- the applicative witnessAppD- the inferred applicative return type
- All Implemented Interfaces:
Fn1<Fn3<A,,B, C, D>, Fn1<Applicative<A, App>, Fn1<Applicative<B, App>, Fn1<Applicative<C, App>, AppD>>>> Fn2<Fn3<A,,B, C, D>, Applicative<A, App>, Fn1<Applicative<B, App>, Fn1<Applicative<C, App>, AppD>>> Fn3<Fn3<A,,B, C, D>, Applicative<A, App>, Applicative<B, App>, Fn1<Applicative<C, App>, AppD>> Fn4<Fn3<A,,B, C, D>, Applicative<A, App>, Applicative<B, App>, Applicative<C, App>, AppD> Applicative<Fn1<Applicative<A,,App>, Fn1<Applicative<B, App>, Fn1<Applicative<C, App>, AppD>>>, Fn1<Fn3<A, B, C, D>, ?>> Cartesian<Fn3<A,,B, C, D>, Fn1<Applicative<A, App>, Fn1<Applicative<B, App>, Fn1<Applicative<C, App>, AppD>>>, Fn1<?, ?>> Cocartesian<Fn3<A,,B, C, D>, Fn1<Applicative<A, App>, Fn1<Applicative<B, App>, Fn1<Applicative<C, App>, AppD>>>, Fn1<?, ?>> Contravariant<Fn3<A,,B, C, D>, Profunctor<?, Fn1<Applicative<A, App>, Fn1<Applicative<B, App>, Fn1<Applicative<C, App>, AppD>>>, Fn1<?, ?>>> Functor<Fn1<Applicative<A,,App>, Fn1<Applicative<B, App>, Fn1<Applicative<C, App>, AppD>>>, Fn1<Fn3<A, B, C, D>, ?>> Profunctor<Fn3<A,,B, C, D>, Fn1<Applicative<A, App>, Fn1<Applicative<B, App>, Fn1<Applicative<C, App>, AppD>>>, Fn1<?, ?>> Monad<Fn1<Applicative<A,,App>, Fn1<Applicative<B, App>, Fn1<Applicative<C, App>, AppD>>>, Fn1<Fn3<A, B, C, D>, ?>> MonadReader<Fn3<A,,B, C, D>, Fn1<Applicative<A, App>, Fn1<Applicative<B, App>, Fn1<Applicative<C, App>, AppD>>>, Fn1<Fn3<A, B, C, D>, ?>> MonadRec<Fn1<Applicative<A,,App>, Fn1<Applicative<B, App>, Fn1<Applicative<C, App>, AppD>>>, Fn1<Fn3<A, B, C, D>, ?>> MonadWriter<Fn3<A,B, C, D>, Fn1<Applicative<A, App>, Fn1<Applicative<B, App>, Fn1<Applicative<C, App>, AppD>>>, Fn1<Fn3<A, B, C, D>, ?>>
public final class LiftA3<A,B,C,D,App extends Applicative<?,App>,AppD extends Applicative<D,App>>
extends Object
implements Fn4<Fn3<A,B,C,D>,Applicative<A,App>,Applicative<B,App>,Applicative<C,App>,AppD>
Lift into and apply an
Fn3 to three Applicative values, returning the result inside the same
Applicative context.- See Also:
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncheckedApply(Fn3<A, B, C, D> fn, Applicative<A, App> appA, Applicative<B, App> appB, Applicative<C, App> appC) static <A,B, C, D, App extends Applicative<?, App>, AppD extends Applicative<D, App>>
LiftA3<A, B, C, D, App, AppD> liftA3()static <A,B, C, D, App extends Applicative<?, App>, AppD extends Applicative<D, App>>
Fn3<Applicative<A, App>, Applicative<B, App>, Applicative<C, App>, AppD> static <A,B, C, D, App extends Applicative<?, App>, AppD extends Applicative<D, App>>
Fn2<Applicative<B, App>, Applicative<C, App>, AppD> liftA3(Fn3<A, B, C, D> fn, Applicative<A, App> appA) static <A,B, C, D, App extends Applicative<?, App>, AppD extends Applicative<D, App>>
Fn1<Applicative<C, App>, AppD> liftA3(Fn3<A, B, C, D> fn, Applicative<A, App> appA, Applicative<B, App> appB) static <A,B, C, D, App extends Applicative<?, App>, AppD extends Applicative<D, App>>
AppDliftA3(Fn3<A, B, C, D> fn, Applicative<A, App> appA, Applicative<B, App> appB, Applicative<C, App> appC) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.jnape.palatable.lambda.functions.Fn1
andThen, carry, cartesian, censor, choose, cocartesian, diMap, diMapR, discardL, flatMap, fmap, lazyZip, listens, local, pure, self, thunk, toFunction, trampolineM, zip, zipMethods inherited from interface com.jnape.palatable.lambda.functions.Fn2
checkedApply, toBiFunctionMethods inherited from interface com.jnape.palatable.lambda.functions.Fn3
checkedApply
-
Field Details
-
INSTANCE
-
-
Constructor Details
-
LiftA3
private LiftA3()
-
-
Method Details
-
checkedApply
public AppD checkedApply(Fn3<A, B, C, D> fn, Applicative<A, App> appA, Applicative<B, App> appB, Applicative<C, App> appC) - Specified by:
checkedApplyin interfaceFn4<A,B, C, D, App extends Applicative<?, App>>
-
liftA3
public static <A,B, LiftA3<A,C, D, App extends Applicative<?, App>, AppD extends Applicative<D, App>> B, liftA3()C, D, App, AppD> -
liftA3
public static <A,B, Fn3<Applicative<A,C, D, App extends Applicative<?, App>, AppD extends Applicative<D, App>> App>, liftA3Applicative<B, App>, Applicative<C, App>, AppD> (Fn3<A, B, C, D> fn) -
liftA3
public static <A,B, Fn2<Applicative<B,C, D, App extends Applicative<?, App>, AppD extends Applicative<D, App>> App>, liftA3Applicative<C, App>, AppD> (Fn3<A, B, C, D> fn, Applicative<A, App> appA) -
liftA3
public static <A,B, Fn1<Applicative<C,C, D, App extends Applicative<?, App>, AppD extends Applicative<D, App>> App>, liftA3AppD> (Fn3<A, B, C, D> fn, Applicative<A, App> appA, Applicative<B, App> appB) -
liftA3
public static <A,B, AppD liftA3C, D, App extends Applicative<?, App>, AppD extends Applicative<D, App>> (Fn3<A, B, C, D> fn, Applicative<A, App> appA, Applicative<B, App> appB, Applicative<C, App> appC)
-