Interface Fn7<A,B,C,D,E,F,G,H>
-
- Type Parameters:
A
- The first argument typeB
- The second argument typeC
- The third argument typeD
- The fourth argument typeE
- The fifth argument typeF
- The sixth argument typeG
- The seventh argument typeH
- The return type
- All Superinterfaces:
Applicative<Fn1<B,Fn1<C,Fn1<D,Fn1<E,Fn1<F,Fn1<G,H>>>>>>,Fn1<A,?>>
,Cartesian<A,Fn1<B,Fn1<C,Fn1<D,Fn1<E,Fn1<F,Fn1<G,H>>>>>>,Fn1<?,?>>
,Cocartesian<A,Fn1<B,Fn1<C,Fn1<D,Fn1<E,Fn1<F,Fn1<G,H>>>>>>,Fn1<?,?>>
,Contravariant<A,Profunctor<?,Fn1<B,Fn1<C,Fn1<D,Fn1<E,Fn1<F,Fn1<G,H>>>>>>,Fn1<?,?>>>
,Fn1<A,Fn1<B,Fn1<C,Fn1<D,Fn1<E,Fn1<F,Fn1<G,H>>>>>>>
,Fn2<A,B,Fn1<C,Fn1<D,Fn1<E,Fn1<F,Fn1<G,H>>>>>>
,Fn3<A,B,C,Fn1<D,Fn1<E,Fn1<F,Fn1<G,H>>>>>
,Fn4<A,B,C,D,Fn1<E,Fn1<F,Fn1<G,H>>>>
,Fn5<A,B,C,D,E,Fn1<F,Fn1<G,H>>>
,Fn6<A,B,C,D,E,F,Fn1<G,H>>
,Functor<Fn1<B,Fn1<C,Fn1<D,Fn1<E,Fn1<F,Fn1<G,H>>>>>>,Fn1<A,?>>
,Monad<Fn1<B,Fn1<C,Fn1<D,Fn1<E,Fn1<F,Fn1<G,H>>>>>>,Fn1<A,?>>
,MonadReader<A,Fn1<B,Fn1<C,Fn1<D,Fn1<E,Fn1<F,Fn1<G,H>>>>>>,Fn1<A,?>>
,MonadRec<Fn1<B,Fn1<C,Fn1<D,Fn1<E,Fn1<F,Fn1<G,H>>>>>>,Fn1<A,?>>
,MonadWriter<A,Fn1<B,Fn1<C,Fn1<D,Fn1<E,Fn1<F,Fn1<G,H>>>>>>,Fn1<A,?>>
,Profunctor<A,Fn1<B,Fn1<C,Fn1<D,Fn1<E,Fn1<F,Fn1<G,H>>>>>>,Fn1<?,?>>
- All Known Subinterfaces:
Fn8<A,B,C,D,E,F,G,H,I>
- Functional Interface:
- This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
@FunctionalInterface public interface Fn7<A,B,C,D,E,F,G,H> extends Fn6<A,B,C,D,E,F,Fn1<G,H>>
A function taking seven arguments. Defined in terms ofFn6
, so similarly auto-curried.- See Also:
Fn6
-
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description default Fn6<B,C,D,E,F,G,H>
apply(A a)
Partially apply this function by taking its first argument.default Fn5<C,D,E,F,G,H>
apply(A a, B b)
Partially apply this function by taking its first two arguments.default Fn4<D,E,F,G,H>
apply(A a, B b, C c)
Partially apply this function by taking its first three arguments.default Fn3<E,F,G,H>
apply(A a, B b, C c, D d)
Partially apply this function by taking its first four arguments.default Fn2<F,G,H>
apply(A a, B b, C c, D d, E e)
Partially apply this function by taking its first five arguments.default Fn1<G,H>
apply(A a, B b, C c, D d, E e, F f)
Partially apply this function by taking its first six arguments.default H
apply(A a, B b, C c, D d, E e, F f, G g)
Invoke this function with the given arguments.default Fn1<G,H>
checkedApply(A a, B b, C c, D d, E e, F f)
H
checkedApply(A a, B b, C c, D d, E e, F f, G g)
default <Y,Z>
Fn8<Y,Z,B,C,D,E,F,G,H>compose(Fn2<? super Y,? super Z,? extends A> before)
Right-to-left composition between different arity functions.default <Z> Fn7<Z,B,C,D,E,F,G,H>
contraMap(Fn1<? super Z,? extends A> fn)
Contravariantly mapA <- B
.default <Z> Fn7<Z,B,C,D,E,F,G,H>
diMapL(Fn1<? super Z,? extends A> fn)
Contravariantly map over the argument to this function, producing a function that takes the new argument type, and produces the same result.default <I> Fn7<A,B,C,D,E,F,G,H>
discardR(Applicative<I,Fn1<A,?>> appB)
Sequence both thisApplicative
andappB
, discardingappB's
result and returning thisApplicative
.default Fn7<B,A,C,D,E,F,G,H>
flip()
Flip the order of the first two arguments.static <A,B,C,D,E,F,G,H>
Fn7<A,B,C,D,E,F,G,H>fn7(Fn1<A,Fn6<B,C,D,E,F,G,H>> curriedFn1)
static <A,B,C,D,E,F,G,H>
Fn7<A,B,C,D,E,F,G,H>fn7(Fn2<A,B,Fn5<C,D,E,F,G,H>> curriedFn2)
static <A,B,C,D,E,F,G,H>
Fn7<A,B,C,D,E,F,G,H>fn7(Fn3<A,B,C,Fn4<D,E,F,G,H>> curriedFn3)
static <A,B,C,D,E,F,G,H>
Fn7<A,B,C,D,E,F,G,H>fn7(Fn4<A,B,C,D,Fn3<E,F,G,H>> curriedFn4)
static <A,B,C,D,E,F,G,H>
Fn7<A,B,C,D,E,F,G,H>fn7(Fn5<A,B,C,D,E,Fn2<F,G,H>> curriedFn5)
static <A,B,C,D,E,F,G,H>
Fn7<A,B,C,D,E,F,G,H>fn7(Fn6<A,B,C,D,E,F,Fn1<G,H>> curriedFn6)
static <A,B,C,D,E,F,G,H>
Fn7<A,B,C,D,E,F,G,H>fn7(Fn7<A,B,C,D,E,F,G,H> fn)
Static factory method for coercing a lambda to anFn7
.default Fn6<? super Product2<? extends A,? extends B>,C,D,E,F,G,H>
uncurry()
default <Z> Fn8<Z,A,B,C,D,E,F,G,H>
widen()
Widen this function's argument list by prepending an ignored argument of any type to the front.-
Methods 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, zip
-
Methods inherited from interface com.jnape.palatable.lambda.functions.Fn2
checkedApply, toBiFunction
-
Methods inherited from interface com.jnape.palatable.lambda.functions.Fn3
checkedApply
-
Methods inherited from interface com.jnape.palatable.lambda.functions.Fn4
checkedApply
-
Methods inherited from interface com.jnape.palatable.lambda.functions.Fn5
checkedApply
-
Methods inherited from interface com.jnape.palatable.lambda.functions.Fn6
checkedApply
-
-
-
-
Method Detail
-
checkedApply
H checkedApply(A a, B b, C c, D d, E e, F f, G g) throws java.lang.Throwable
- Throws:
java.lang.Throwable
-
apply
default H apply(A a, B b, C c, D d, E e, F f, G g)
Invoke this function with the given arguments.- Parameters:
a
- the first argumentb
- the second argumentc
- the third argumentd
- the fourth argumente
- the fifth argumentf
- the sixth argumentg
- the seventh argument- Returns:
- the result of the function application
-
checkedApply
default Fn1<G,H> checkedApply(A a, B b, C c, D d, E e, F f) throws java.lang.Throwable
-
widen
default <Z> Fn8<Z,A,B,C,D,E,F,G,H> widen()
Widen this function's argument list by prepending an ignored argument of any type to the front.- Specified by:
widen
in interfaceFn1<A,B>
- Specified by:
widen
in interfaceFn2<A,B,C>
- Specified by:
widen
in interfaceFn3<A,B,C,D>
- Specified by:
widen
in interfaceFn4<A,B,C,D,E>
- Specified by:
widen
in interfaceFn5<A,B,C,D,E,F>
- Specified by:
widen
in interfaceFn6<A,B,C,D,E,F,G>
- Type Parameters:
Z
- the new first argument type- Returns:
- the widened function
-
apply
default Fn6<B,C,D,E,F,G,H> apply(A a)
Partially apply this function by taking its first argument.- Specified by:
apply
in interfaceFn1<A,B>
- Specified by:
apply
in interfaceFn2<A,B,C>
- Specified by:
apply
in interfaceFn3<A,B,C,D>
- Specified by:
apply
in interfaceFn4<A,B,C,D,E>
- Specified by:
apply
in interfaceFn5<A,B,C,D,E,F>
- Specified by:
apply
in interfaceFn6<A,B,C,D,E,F,G>
- Parameters:
a
- the first argument- Returns:
- an
Fn6
that takes the remaining arguments and returns the result
-
apply
default Fn5<C,D,E,F,G,H> apply(A a, B b)
Partially apply this function by taking its first two arguments.- Specified by:
apply
in interfaceFn2<A,B,C>
- Specified by:
apply
in interfaceFn3<A,B,C,D>
- Specified by:
apply
in interfaceFn4<A,B,C,D,E>
- Specified by:
apply
in interfaceFn5<A,B,C,D,E,F>
- Specified by:
apply
in interfaceFn6<A,B,C,D,E,F,G>
- Parameters:
a
- the first argumentb
- the second argument- Returns:
- an
Fn5
that takes the remaining arguments and returns the result
-
apply
default Fn4<D,E,F,G,H> apply(A a, B b, C c)
Partially apply this function by taking its first three arguments.- Specified by:
apply
in interfaceFn3<A,B,C,D>
- Specified by:
apply
in interfaceFn4<A,B,C,D,E>
- Specified by:
apply
in interfaceFn5<A,B,C,D,E,F>
- Specified by:
apply
in interfaceFn6<A,B,C,D,E,F,G>
- Parameters:
a
- the first argumentb
- the second argumentc
- the third argument- Returns:
- an
Fn4
that takes remaining arguments and returns the result
-
apply
default Fn3<E,F,G,H> apply(A a, B b, C c, D d)
Partially apply this function by taking its first four arguments.- Specified by:
apply
in interfaceFn4<A,B,C,D,E>
- Specified by:
apply
in interfaceFn5<A,B,C,D,E,F>
- Specified by:
apply
in interfaceFn6<A,B,C,D,E,F,G>
- Parameters:
a
- the first argumentb
- the second argumentc
- the third argumentd
- the fourth argument- Returns:
- an
Fn3
that takes the remaining arguments and returns the result
-
apply
default Fn2<F,G,H> apply(A a, B b, C c, D d, E e)
Partially apply this function by taking its first five arguments.- Specified by:
apply
in interfaceFn5<A,B,C,D,E,F>
- Specified by:
apply
in interfaceFn6<A,B,C,D,E,F,G>
- Parameters:
a
- the first argumentb
- the second argumentc
- the third argumentd
- the fourth argumente
- the fifth argument- Returns:
- an
Fn2
that takes the remaining arguments and returns the result
-
apply
default Fn1<G,H> apply(A a, B b, C c, D d, E e, F f)
Partially apply this function by taking its first six arguments.
-
flip
default Fn7<B,A,C,D,E,F,G,H> flip()
Flip the order of the first two arguments.- Specified by:
flip
in interfaceFn2<A,B,C>
- Specified by:
flip
in interfaceFn3<A,B,C,D>
- Specified by:
flip
in interfaceFn4<A,B,C,D,E>
- Specified by:
flip
in interfaceFn5<A,B,C,D,E,F>
- Specified by:
flip
in interfaceFn6<A,B,C,D,E,F,G>
- Returns:
- an
Fn7
that takes the first and second arguments in reversed order
-
uncurry
default Fn6<? super Product2<? extends A,? extends B>,C,D,E,F,G,H> uncurry()
- Specified by:
uncurry
in interfaceFn2<A,B,C>
- Specified by:
uncurry
in interfaceFn3<A,B,C,D>
- Specified by:
uncurry
in interfaceFn4<A,B,C,D,E>
- Specified by:
uncurry
in interfaceFn5<A,B,C,D,E,F>
- Specified by:
uncurry
in interfaceFn6<A,B,C,D,E,F,G>
- Returns:
- an
Fn6
taking aProduct2
and the remaining arguments
-
discardR
default <I> Fn7<A,B,C,D,E,F,G,H> discardR(Applicative<I,Fn1<A,?>> appB)
Description copied from interface:Fn2
Sequence both thisApplicative
andappB
, discardingappB's
result and returning thisApplicative
. This is generally useful for sequentially performing side-effects.- Specified by:
discardR
in interfaceApplicative<A,B>
- Specified by:
discardR
in interfaceFn1<A,B>
- Specified by:
discardR
in interfaceFn2<A,B,C>
- Specified by:
discardR
in interfaceFn3<A,B,C,D>
- Specified by:
discardR
in interfaceFn4<A,B,C,D,E>
- Specified by:
discardR
in interfaceFn5<A,B,C,D,E,F>
- Specified by:
discardR
in interfaceFn6<A,B,C,D,E,F,G>
- Specified by:
discardR
in interfaceMonad<A,B>
- Specified by:
discardR
in interfaceMonadReader<A,B,C>
- Specified by:
discardR
in interfaceMonadRec<A,B>
- Specified by:
discardR
in interfaceMonadWriter<A,B,C>
- Type Parameters:
I
- the type of appB's parameter- Parameters:
appB
- the other Applicative- Returns:
- this Applicative
-
diMapL
default <Z> Fn7<Z,B,C,D,E,F,G,H> diMapL(Fn1<? super Z,? extends A> fn)
Description copied from interface:Fn2
Contravariantly map over the argument to this function, producing a function that takes the new argument type, and produces the same result.- Specified by:
diMapL
in interfaceCartesian<A,B,C>
- Specified by:
diMapL
in interfaceCocartesian<A,B,C>
- Specified by:
diMapL
in interfaceFn1<A,B>
- Specified by:
diMapL
in interfaceFn2<A,B,C>
- Specified by:
diMapL
in interfaceFn3<A,B,C,D>
- Specified by:
diMapL
in interfaceFn4<A,B,C,D,E>
- Specified by:
diMapL
in interfaceFn5<A,B,C,D,E,F>
- Specified by:
diMapL
in interfaceFn6<A,B,C,D,E,F,G>
- Specified by:
diMapL
in interfaceProfunctor<A,B,C>
- Type Parameters:
Z
- the new argument type- Parameters:
fn
- the contravariant argument mapping function- Returns:
- an
Fn1
<Z, B>
-
contraMap
default <Z> Fn7<Z,B,C,D,E,F,G,H> contraMap(Fn1<? super Z,? extends A> fn)
Description copied from interface:Fn2
Contravariantly mapA <- B
.- Specified by:
contraMap
in interfaceCartesian<A,B,C>
- Specified by:
contraMap
in interfaceCocartesian<A,B,C>
- Specified by:
contraMap
in interfaceContravariant<A,B>
- Specified by:
contraMap
in interfaceFn1<A,B>
- Specified by:
contraMap
in interfaceFn2<A,B,C>
- Specified by:
contraMap
in interfaceFn3<A,B,C,D>
- Specified by:
contraMap
in interfaceFn4<A,B,C,D,E>
- Specified by:
contraMap
in interfaceFn5<A,B,C,D,E,F>
- Specified by:
contraMap
in interfaceFn6<A,B,C,D,E,F,G>
- Specified by:
contraMap
in interfaceProfunctor<A,B,C>
- Type Parameters:
Z
- the new parameter type- Parameters:
fn
- the mapping function- Returns:
- the mapped Contravariant functor instance
-
compose
default <Y,Z> Fn8<Y,Z,B,C,D,E,F,G,H> compose(Fn2<? super Y,? super Z,? extends A> before)
Description copied from interface:Fn2
Right-to-left composition between different arity functions. Preserves highest arity in the return type.- Specified by:
compose
in interfaceFn1<A,B>
- Specified by:
compose
in interfaceFn2<A,B,C>
- Specified by:
compose
in interfaceFn3<A,B,C,D>
- Specified by:
compose
in interfaceFn4<A,B,C,D,E>
- Specified by:
compose
in interfaceFn5<A,B,C,D,E,F>
- Specified by:
compose
in interfaceFn6<A,B,C,D,E,F,G>
- Type Parameters:
Y
- the resulting function's first argument typeZ
- the resulting function's second argument type- Parameters:
before
- the function to pass its return value to this function's input- Returns:
- an
Fn2
<Y, Z, B>
-
fn7
static <A,B,C,D,E,F,G,H> Fn7<A,B,C,D,E,F,G,H> fn7(Fn1<A,Fn6<B,C,D,E,F,G,H>> curriedFn1)
- Type Parameters:
A
- the first input argument typeB
- the second input argument typeC
- the third input argument typeD
- the fourth input argument typeE
- the fifth input argument typeF
- the sixth input argument typeG
- the seventh input argument typeH
- the output type- Parameters:
curriedFn1
- the curried fn1 to adapt- Returns:
- the
Fn7
-
fn7
static <A,B,C,D,E,F,G,H> Fn7<A,B,C,D,E,F,G,H> fn7(Fn2<A,B,Fn5<C,D,E,F,G,H>> curriedFn2)
- Type Parameters:
A
- the first input argument typeB
- the second input argument typeC
- the third input argument typeD
- the fourth input argument typeE
- the fifth input argument typeF
- the sixth input argument typeG
- the seventh input argument typeH
- the output type- Parameters:
curriedFn2
- the curried fn2 to adapt- Returns:
- the
Fn7
-
fn7
static <A,B,C,D,E,F,G,H> Fn7<A,B,C,D,E,F,G,H> fn7(Fn3<A,B,C,Fn4<D,E,F,G,H>> curriedFn3)
- Type Parameters:
A
- the first input argument typeB
- the second input argument typeC
- the third input argument typeD
- the fourth input argument typeE
- the fifth input argument typeF
- the sixth input argument typeG
- the seventh input argument typeH
- the output type- Parameters:
curriedFn3
- the curried fn3 to adapt- Returns:
- the
Fn7
-
fn7
static <A,B,C,D,E,F,G,H> Fn7<A,B,C,D,E,F,G,H> fn7(Fn4<A,B,C,D,Fn3<E,F,G,H>> curriedFn4)
- Type Parameters:
A
- the first input argument typeB
- the second input argument typeC
- the third input argument typeD
- the fourth input argument typeE
- the fifth input argument typeF
- the sixth input argument typeG
- the seventh input argument typeH
- the output type- Parameters:
curriedFn4
- the curried fn4 to adapt- Returns:
- the
Fn7
-
fn7
static <A,B,C,D,E,F,G,H> Fn7<A,B,C,D,E,F,G,H> fn7(Fn5<A,B,C,D,E,Fn2<F,G,H>> curriedFn5)
- Type Parameters:
A
- the first input argument typeB
- the second input argument typeC
- the third input argument typeD
- the fourth input argument typeE
- the fifth input argument typeF
- the sixth input argument typeG
- the seventh input argument typeH
- the output type- Parameters:
curriedFn5
- the curried fn5 to adapt- Returns:
- the
Fn7
-
fn7
static <A,B,C,D,E,F,G,H> Fn7<A,B,C,D,E,F,G,H> fn7(Fn6<A,B,C,D,E,F,Fn1<G,H>> curriedFn6)
- Type Parameters:
A
- the first input argument typeB
- the second input argument typeC
- the third input argument typeD
- the fourth input argument typeE
- the fifth input argument typeF
- the sixth input argument typeG
- the seventh input argument typeH
- the output type- Parameters:
curriedFn6
- the curried fn6 to adapt- Returns:
- the
Fn7
-
fn7
static <A,B,C,D,E,F,G,H> Fn7<A,B,C,D,E,F,G,H> fn7(Fn7<A,B,C,D,E,F,G,H> fn)
Static factory method for coercing a lambda to anFn7
.- Type Parameters:
A
- the first input argument typeB
- the second input argument typeC
- the third input argument typeD
- the fourth input argument typeE
- the fifth input argument typeF
- the sixth input argument typeG
- the seventh input argument typeH
- the output type- Parameters:
fn
- the lambda to coerce- Returns:
- the
Fn7
-
-