@FunctionalInterface public interface LBiFunction<T1,T2,R> extends java.util.function.BiFunction<T1,T2,R>, MetaFunction, MetaInterface.NonThrowing, Codomain<aType.a<R>>, Domain2<aType.a<T1>,aType.a<T2>>
Non-throwing functional interface (lambda) LBiFunction for Java 8.
Type: function
Domain (lvl: 2): T1 a1,T2 a2
Co-domain: R
| Modifier and Type | Interface and Description |
|---|---|
static class |
LBiFunction.LBiFunctionSingle<T1,T2,R> |
static interface |
LBiFunction.LObj1Obj0Func<T2,T1,R>
Permutation of LBiFunction for method references.
|
MetaInterface.NonThrowing, MetaInterface.Throwing<X>| Modifier and Type | Field and Description |
|---|---|
static String |
DESCRIPTION |
static LSupplier<String> |
NULL_VALUE_MESSAGE_SUPPLIER |
| Modifier and Type | Method and Description |
|---|---|
default LBiFunction<T1,T2,R> |
after(LConsumer<? super R> after) |
default R |
apply(T1 a1,
T2 a2) |
default R |
apply(T1 a1,
T2 a2,
ExWF<RuntimeException> exF) |
default R |
apply(T1 a1,
T2 a2,
ExWMF<RuntimeException> exF,
String newMessage,
Object... messageParams) |
static <T1,T2,R> LBiFunction<T1,T2,R> |
apply1st(LFunction<T1,R> func)
Captures single parameter function into this interface where only 1st parameter will be used.
|
static <T1,T2,R> LBiFunction<T1,T2,R> |
apply2nd(LFunction<T2,R> func)
Captures single parameter function into this interface where only 2nd parameter will be used.
|
default R |
applyThen(T1 a1,
T2 a2,
LFunction<Throwable,R> handler) |
R |
applyX(T1 a1,
T2 a2)
Implement this, but call apply(T1 a1,T2 a2)
|
default LBiFunction<T1,T2,R> |
before(LBiConsumer<? super T1,? super T2> before) |
static <T1,T2,R> LBiFunction<T1,T2,R> |
biFunc(LBiFunction<T1,T2,R> lambda)
Convenient method in case lambda expression is ambiguous for the compiler (that might happen for overloaded methods accepting different interfaces).
|
static <T1,T2,R> LBiFunction<T1,T2,R> |
biFuncThrowing(ExF<Throwable> exF) |
static <T1,T2,R> LBiFunction<T1,T2,R> |
biFuncThrowing(String message,
ExMF<Throwable> exF) |
static <T1,T2,R> R |
call(T1 a1,
T2 a2,
LBiFunction<T1,T2,R> lambda) |
default LSupplier<R> |
capture(T1 a1,
T2 a2)
Captures arguments but delays the evaluation.
|
default <V2,V3,V4> LBiFunction<V2,V3,V4> |
cast()
Cast that replace generics.
|
static <V2,V3,V4,T1,T2,R> |
cast(LBiFunction<T1,T2,R> function)
Cast that replace generics.
|
default <V1,V2> LBiFunction<V1,V2,R> |
compose(LFunction<? super V1,? extends T1> before1,
LFunction<? super V2,? extends T2> before2)
Allows to manipulate the domain of the function.
|
static <V1,V2,T1,T2,R> |
composed(LFunction<? super V1,? extends T1> before1,
LFunction<? super V2,? extends T2> before2,
LBiFunction<T1,T2,R> after) |
static <T1,T2,R> LBiFunction<T1,T2,R> |
constant(R r)
Creates function that always returns the same value.
|
static <T1,T2,R> LBiFunction<T1,T2,R> |
failSafe(LBiFunction<T1,T2,R> func,
LBiFunction<T1,T2,R> failSafe) |
default R |
failSafeApply(T1 a1,
T2 a2,
LBiFunction<T1,T2,R> failSafe) |
static <T1,T2,R> R |
failSafeApply(T1 a1,
T2 a2,
LBiFunction<T1,T2,R> func,
LBiFunction<T1,T2,R> failSafe) |
default <C1,C2> void |
forEach(IndexedRead<C1,aType.a<T1>> ia1,
C1 source1,
IndexedRead<C2,aType.a<T2>> ia2,
C2 source2,
LConsumer<? super R> consumer)
For each element (or tuple) from arguments, calls the function and passes the result to consumer.
|
static <T1,T2,R> void |
fromTill(int min_i,
int max_i,
T1 a1,
T2 a2,
LBiFunction<T1,T2,R> func)
From-To.
|
static <T1,T2,R> void |
fromTo(int min_i,
int max_i,
T1 a1,
T2 a2,
LBiFunction<T1,T2,R> func)
From-To.
|
default String |
functionalInterfaceDescription()
Returns description of the functional interface.
|
default LBiFunction<T1,T2,R> |
handling(HandlingInstructions<Throwable,RuntimeException> handling) |
default R |
handlingApply(T1 a1,
T2 a2,
HandlingInstructions<Throwable,RuntimeException> handling)
Function call that handles exceptions according to the instructions.
|
static <T1,T2,R> R |
handlingApply(T1 a1,
T2 a2,
LBiFunction<T1,T2,R> func,
HandlingInstructions<Throwable,RuntimeException> handling) |
default <C1,C2,I2> void |
iterate(IndexedRead<C1,aType.a<T1>> ia1,
C1 source1,
SequentialRead<C2,I2,aType.a<T2>> sa2,
C2 source2,
LConsumer<? super R> consumer)
For each element (or tuple) from arguments, calls the function and passes the result to consumer.
|
default <C1,I1,C2> void |
iterate(SequentialRead<C1,I1,aType.a<T1>> sa1,
C1 source1,
IndexedRead<C2,aType.a<T2>> ia2,
C2 source2,
LConsumer<? super R> consumer)
For each element (or tuple) from arguments, calls the function and passes the result to consumer.
|
default <C1,I1,C2,I2> |
iterate(SequentialRead<C1,I1,aType.a<T1>> sa1,
C1 source1,
SequentialRead<C2,I2,aType.a<T2>> sa2,
C2 source2,
LConsumer<? super R> consumer)
For each element (or tuple) from arguments, calls the function and passes the result to consumer.
|
default LFunction<T2,R> |
lShrink(LFunction<T2,T1> left) |
default LFunction<T2,R> |
lShrinkc(T1 a1) |
static <T2,R,T1> LFunction<T2,R> |
lShrinked(LFunction<T2,T1> left,
LBiFunction<T1,T2,R> func) |
static <T2,R,T1> LFunction<T2,R> |
lShrinkedc(T1 a1,
LBiFunction<T1,T2,R> func) |
default R |
nestingApply(T1 a1,
T2 a2)
Function call that handles exceptions by always nesting checked exceptions and propagating the others as is.
|
default LBiFunction<T1,T2,R> |
nonNullable()
Converts to function that makes sure that the result is not null.
|
default R |
nonNullApply(T1 a1,
T2 a2)
Function call that ensures the result is not null
|
static <T2,T1,R> LBiFunction.LObj1Obj0Func<T2,T1,R> |
obj1Obj0Func(LBiFunction.LObj1Obj0Func<T2,T1,R> lambda)
Convenient method in case lambda expression is ambiguous for the compiler (that might happen for overloaded methods accepting different interfaces).
|
static <T1,T2,R> R |
produce(T1 a1,
T2 a2)
Does nothing (LBiFunction) Function
|
static <T1,T2,R> LBiFunction<T1,T2,R> |
recursive(LFunction<LBiFunction<T1,T2,R>,LBiFunction<T1,T2,R>> selfLambda) |
default LFunction<T1,R> |
rShrink(LFunction<T1,T2> right) |
default LFunction<T1,R> |
rShrinkc(T2 a2) |
static <T1,R,T2> LFunction<T1,R> |
rShrinked(LFunction<T1,T2> right,
LBiFunction<T1,T2,R> func) |
static <T1,R,T2> LFunction<T1,R> |
rShrinkedc(T2 a2,
LBiFunction<T1,T2,R> func) |
static <T1,T2,R> LBiFunction<T1,T2,R> |
safe()
Safe instance.
|
static <T1,T2,R> LBiFunction<T1,T2,R> |
safe(LBiFunction<T1,T2,R> other)
Safe wrapping.
|
static <T1,T2,R> LSupplier<LBiFunction<T1,T2,R>> |
safeSupplier()
Safe instance supplier.
|
static <T1,T2,R> LSupplier<LBiFunction<T1,T2,R>> |
safeSupplier(LSupplier<LBiFunction<T1,T2,R>> supplier)
Safe supplier.
|
default R |
shovingApply(T1 a1,
T2 a2)
Function call that handles exceptions by always propagating them as is, even when they are undeclared checked ones.
|
default <V> LBiFunction<T1,T2,V> |
then(LFunction<? super R,? extends V> after)
Combines two functions together in a order.
|
default LBiConsumer<T1,T2> |
thenConsume(LConsumer<? super R> after)
Combines two functions together in a order.
|
default LBiPredicate<T1,T2> |
thenToBool(LPredicate<? super R> after)
Combines two functions together in a order.
|
default LToByteBiFunction<T1,T2> |
thenToByte(LToByteFunction<? super R> after)
Combines two functions together in a order.
|
default LToCharBiFunction<T1,T2> |
thenToChar(LToCharFunction<? super R> after)
Combines two functions together in a order.
|
default LToDblBiFunction<T1,T2> |
thenToDbl(LToDblFunction<? super R> after)
Combines two functions together in a order.
|
default LToFltBiFunction<T1,T2> |
thenToFlt(LToFltFunction<? super R> after)
Combines two functions together in a order.
|
default LToIntBiFunction<T1,T2> |
thenToInt(LToIntFunction<? super R> after)
Combines two functions together in a order.
|
default LToLongBiFunction<T1,T2> |
thenToLong(LToLongFunction<? super R> after)
Combines two functions together in a order.
|
default LToSrtBiFunction<T1,T2> |
thenToSrt(LToSrtFunction<? super R> after)
Combines two functions together in a order.
|
static <T1,T2,R> void |
times(int max_i,
T1 a1,
T2 a2,
LBiFunction<T1,T2,R> func)
From-To.
|
static <T1,T2,R> R |
tryApply(T1 a1,
T2 a2,
LBiFunction<T1,T2,R> func) |
static <T1,T2,R> R |
tryApply(T1 a1,
T2 a2,
LBiFunction<T1,T2,R> func,
ExWF<RuntimeException> exF) |
static <T1,T2,R> R |
tryApply(T1 a1,
T2 a2,
LBiFunction<T1,T2,R> func,
ExWMF<RuntimeException> exF,
String newMessage,
Object... messageParams) |
static <T1,T2,R> R |
tryApplyThen(T1 a1,
T2 a2,
LBiFunction<T1,T2,R> func,
LFunction<Throwable,R> handler) |
default LBiFunction<T1,T2,R> |
trying(ExWF<RuntimeException> exF) |
default LBiFunction<T1,T2,R> |
trying(ExWMF<RuntimeException> exF,
String newMessage,
Object... messageParams) |
default LBiFunction<T1,T2,R> |
tryingThen(LFunction<Throwable,R> handler) |
default R |
tupleApply(LPair<T1,T2> args) |
static <T1,T2,R> LBiFunction<T1,T2,R> |
uncurry(LFunction<T1,LFunction<T2,R>> func) |
default LBiFunction |
untyped()
Cast that removes generics.
|
static <T1,T2,R> LBiFunction<T1,T2,R> |
wrap(java.util.function.BiFunction<T1,T2,R> other)
Wraps JRE instance.
|
andThenisFunctionformatTo, isAction, isConsumer, isOperator, isPredicate, isSupplierisThrowingstatic final String DESCRIPTION
@Nullable default R apply(T1 a1, T2 a2)
apply in interface java.util.function.BiFunction<T1,T2,R>R applyX(T1 a1, T2 a2) throws Throwable
Implement this, but call apply(T1 a1,T2 a2)
Throwabledefault R handlingApply(T1 a1, T2 a2, HandlingInstructions<Throwable,RuntimeException> handling)
Function call that handles exceptions according to the instructions.
default LBiFunction<T1,T2,R> handling(HandlingInstructions<Throwable,RuntimeException> handling)
default R apply(T1 a1, T2 a2, @Nonnull ExWMF<RuntimeException> exF, @Nonnull String newMessage, @Nullable Object... messageParams)
default LBiFunction<T1,T2,R> trying(@Nonnull ExWMF<RuntimeException> exF, @Nonnull String newMessage, @Nullable Object... messageParams)
default LBiFunction<T1,T2,R> trying(@Nonnull ExWF<RuntimeException> exF)
default R nestingApply(T1 a1, T2 a2)
Function call that handles exceptions by always nesting checked exceptions and propagating the others as is.
default R shovingApply(T1 a1, T2 a2)
Function call that handles exceptions by always propagating them as is, even when they are undeclared checked ones.
static <T1,T2,R> R handlingApply(T1 a1,
T2 a2,
LBiFunction<T1,T2,R> func,
HandlingInstructions<Throwable,RuntimeException> handling)
static <T1,T2,R> R tryApply(T1 a1,
T2 a2,
LBiFunction<T1,T2,R> func)
static <T1,T2,R> R tryApply(T1 a1,
T2 a2,
LBiFunction<T1,T2,R> func,
@Nonnull
ExWMF<RuntimeException> exF,
@Nonnull
String newMessage,
@Nullable
Object... messageParams)
static <T1,T2,R> R tryApply(T1 a1,
T2 a2,
LBiFunction<T1,T2,R> func,
@Nonnull
ExWF<RuntimeException> exF)
static <T1,T2,R> R tryApplyThen(T1 a1,
T2 a2,
LBiFunction<T1,T2,R> func,
@Nonnull
LFunction<Throwable,R> handler)
static <T1,T2,R> R failSafeApply(T1 a1,
T2 a2,
LBiFunction<T1,T2,R> func,
@Nonnull
LBiFunction<T1,T2,R> failSafe)
static <T1,T2,R> LBiFunction<T1,T2,R> failSafe(LBiFunction<T1,T2,R> func, @Nonnull LBiFunction<T1,T2,R> failSafe)
@Nonnull default R nonNullApply(T1 a1, T2 a2)
Function call that ensures the result is not null
@Nonnull default String functionalInterfaceDescription()
Returns description of the functional interface.
functionalInterfaceDescription in interface MetaFunctionalInterfacestatic <T1,T2,R> void fromTo(int min_i,
int max_i,
T1 a1,
T2 a2,
LBiFunction<T1,T2,R> func)
From-To. Intended to be used with non-capturing lambda.
static <T1,T2,R> void fromTill(int min_i,
int max_i,
T1 a1,
T2 a2,
LBiFunction<T1,T2,R> func)
From-To. Intended to be used with non-capturing lambda.
static <T1,T2,R> void times(int max_i,
T1 a1,
T2 a2,
LBiFunction<T1,T2,R> func)
From-To. Intended to be used with non-capturing lambda.
static <T2,R,T1> LFunction<T2,R> lShrinked(LFunction<T2,T1> left, LBiFunction<T1,T2,R> func)
static <T2,R,T1> LFunction<T2,R> lShrinkedc(T1 a1, LBiFunction<T1,T2,R> func)
static <T1,R,T2> LFunction<T1,R> rShrinked(LFunction<T1,T2> right, LBiFunction<T1,T2,R> func)
static <T1,R,T2> LFunction<T1,R> rShrinkedc(T2 a2, LBiFunction<T1,T2,R> func)
static <T1,T2,R> LBiFunction<T1,T2,R> uncurry(LFunction<T1,LFunction<T2,R>> func)
default LBiFunction untyped()
Cast that removes generics.
default <V2,V3,V4> LBiFunction<V2,V3,V4> cast()
Cast that replace generics.
static <V2,V3,V4,T1,T2,R> LBiFunction<V2,V3,V4> cast(LBiFunction<T1,T2,R> function)
Cast that replace generics.
static <T1,T2,R> LBiFunction<T1,T2,R> constant(R r)
Creates function that always returns the same value.
@Nonnull static <T1,T2,R> LBiFunction<T1,T2,R> apply1st(@Nonnull LFunction<T1,R> func)
Captures single parameter function into this interface where only 1st parameter will be used.
@Nonnull static <T1,T2,R> LBiFunction<T1,T2,R> apply2nd(@Nonnull LFunction<T2,R> func)
Captures single parameter function into this interface where only 2nd parameter will be used.
@Nonnull static <T1,T2,R> LBiFunction<T1,T2,R> biFunc(@Nonnull LBiFunction<T1,T2,R> lambda)
Convenient method in case lambda expression is ambiguous for the compiler (that might happen for overloaded methods accepting different interfaces).
@Nonnull static <T1,T2,R> LBiFunction<T1,T2,R> recursive(@Nonnull LFunction<LBiFunction<T1,T2,R>,LBiFunction<T1,T2,R>> selfLambda)
@Nonnull static <T1,T2,R> LBiFunction<T1,T2,R> biFuncThrowing(@Nonnull ExF<Throwable> exF)
@Nonnull static <T1,T2,R> LBiFunction<T1,T2,R> biFuncThrowing(String message, @Nonnull ExMF<Throwable> exF)
@Nonnull static <T2,T1,R> LBiFunction.LObj1Obj0Func<T2,T1,R> obj1Obj0Func(@Nonnull LBiFunction.LObj1Obj0Func<T2,T1,R> lambda)
Convenient method in case lambda expression is ambiguous for the compiler (that might happen for overloaded methods accepting different interfaces).
static <T1,T2,R> R call(T1 a1,
T2 a2,
@Nonnull
LBiFunction<T1,T2,R> lambda)
@Nonnull static <T1,T2,R> LBiFunction<T1,T2,R> wrap(java.util.function.BiFunction<T1,T2,R> other)
Wraps JRE instance.
@Nonnull static <T1,T2,R> LBiFunction<T1,T2,R> safe()
Safe instance. That always returns the same value (as produce).
@Nonnull static <T1,T2,R> LSupplier<LBiFunction<T1,T2,R>> safeSupplier()
Safe instance supplier. Returns supplier of safe() instance.
@Nonnull static <T1,T2,R> LBiFunction<T1,T2,R> safe(@Nullable LBiFunction<T1,T2,R> other)
Safe wrapping. Either argument function is returned (if it is not null) or safe() instance.
@Nonnull static <T1,T2,R> LSupplier<LBiFunction<T1,T2,R>> safeSupplier(@Nullable LSupplier<LBiFunction<T1,T2,R>> supplier)
Safe supplier. Either argument supplier is returned (if it is not null) or supplier of safe() instance.
@Nonnull default <V1,V2> LBiFunction<V1,V2,R> compose(@Nonnull LFunction<? super V1,? extends T1> before1, @Nonnull LFunction<? super V2,? extends T2> before2)
Allows to manipulate the domain of the function.
static <V1,V2,T1,T2,R> LBiFunction<V1,V2,R> composed(@Nonnull LFunction<? super V1,? extends T1> before1, @Nonnull LFunction<? super V2,? extends T2> before2, LBiFunction<T1,T2,R> after)
@Nonnull default <V> LBiFunction<T1,T2,V> then(@Nonnull LFunction<? super R,? extends V> after)
Combines two functions together in a order.
@Nonnull default LBiConsumer<T1,T2> thenConsume(@Nonnull LConsumer<? super R> after)
Combines two functions together in a order.
@Nonnull default LBiFunction<T1,T2,R> before(@Nonnull LBiConsumer<? super T1,? super T2> before)
@Nonnull default LToByteBiFunction<T1,T2> thenToByte(@Nonnull LToByteFunction<? super R> after)
Combines two functions together in a order.
@Nonnull default LToSrtBiFunction<T1,T2> thenToSrt(@Nonnull LToSrtFunction<? super R> after)
Combines two functions together in a order.
@Nonnull default LToIntBiFunction<T1,T2> thenToInt(@Nonnull LToIntFunction<? super R> after)
Combines two functions together in a order.
@Nonnull default LToLongBiFunction<T1,T2> thenToLong(@Nonnull LToLongFunction<? super R> after)
Combines two functions together in a order.
@Nonnull default LToFltBiFunction<T1,T2> thenToFlt(@Nonnull LToFltFunction<? super R> after)
Combines two functions together in a order.
@Nonnull default LToDblBiFunction<T1,T2> thenToDbl(@Nonnull LToDblFunction<? super R> after)
Combines two functions together in a order.
@Nonnull default LToCharBiFunction<T1,T2> thenToChar(@Nonnull LToCharFunction<? super R> after)
Combines two functions together in a order.
@Nonnull default LBiPredicate<T1,T2> thenToBool(@Nonnull LPredicate<? super R> after)
Combines two functions together in a order.
@Nonnull default LBiFunction<T1,T2,R> nonNullable()
Converts to function that makes sure that the result is not null.
static <T1,T2,R> R produce(T1 a1,
T2 a2)
Does nothing (LBiFunction) Function
default <C1,C2> void forEach(IndexedRead<C1,aType.a<T1>> ia1, C1 source1, IndexedRead<C2,aType.a<T2>> ia2, C2 source2, LConsumer<? super R> consumer)
For each element (or tuple) from arguments, calls the function and passes the result to consumer. Thread safety, fail-fast, fail-safety of this method is not expected.
default <C1,I1,C2> void iterate(SequentialRead<C1,I1,aType.a<T1>> sa1, C1 source1, IndexedRead<C2,aType.a<T2>> ia2, C2 source2, LConsumer<? super R> consumer)
For each element (or tuple) from arguments, calls the function and passes the result to consumer. Thread safety, fail-fast, fail-safety of this method is not expected.
default <C1,C2,I2> void iterate(IndexedRead<C1,aType.a<T1>> ia1, C1 source1, SequentialRead<C2,I2,aType.a<T2>> sa2, C2 source2, LConsumer<? super R> consumer)
For each element (or tuple) from arguments, calls the function and passes the result to consumer. Thread safety, fail-fast, fail-safety of this method is not expected.
default <C1,I1,C2,I2> void iterate(SequentialRead<C1,I1,aType.a<T1>> sa1, C1 source1, SequentialRead<C2,I2,aType.a<T2>> sa2, C2 source2, LConsumer<? super R> consumer)
For each element (or tuple) from arguments, calls the function and passes the result to consumer. Thread safety, fail-fast, fail-safety of this method depends highly on the arguments.
Copyright © 2019. All rights reserved.