Package eu.bandm.tools.ramus.runtime2
Interface Action.BiContinuation<R,S,T,M,O>
- Type Parameters:
R
- the first input type of parsing resultsS
- the second input type of parsing resultsT
- the output type of parsing resultsM
- the type of diagnostic messages
- All Superinterfaces:
BiFunction<R,
S, Action<T, M, O>>
- 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 static interface Action.BiContinuation<R,S,T,M,O>
extends BiFunction<R,S,Action<T,M,O>>
Functional interface for binary continuations.
-
Method Summary
Modifier and TypeMethodDescriptionApplies this continuation, possibly using a recyclable leaf node.static <R,
S, T, M, O>
Action.BiContinuation<R,S, T, M, O> forget
(BiFunction<? super R, ? super S, ? extends Action<T, M, O>> fun) Lifts a monadic function on parsing results to a continuation.Methods inherited from interface java.util.function.BiFunction
andThen
-
Method Details
-
apply
Applies this continuation, possibly using a recyclable leaf node.- Parameters:
arg1
- the first input parsing resultarg2
- the second input parsing resultrecyclable
- a recyclable leaf node, ornull
if not available- Returns:
- a leaf node with a newly computed parsing result;
either
recyclable
if available ornew
. - See Also:
-
apply
- Specified by:
apply
in interfaceBiFunction<R,
S, T>
-
forget
static <R,S, Action.BiContinuation<R,T, M, O> S, forgetT, M, O> (BiFunction<? super R, ? super S, ? extends Action<T, M, O>> fun) Lifts a monadic function on parsing results to a continuation.- Parameters:
fun
- the function- Returns:
- a continuation that applies the function
- Throws:
IllegalArgumentException
- iffun == null
-