| Package | Description |
|---|---|
| com.codepoetics.protonpack.stateful |
| Modifier and Type | Class and Description |
|---|---|
class |
ComposedStateMachine<S,I,O> |
class |
LastMatchingFinderStateMachine<T> |
class |
SubsetCheckingStateMachine<T> |
class |
TaggingStateMachine<S,T> |
class |
TerminatingActionStateMachine<T> |
class |
WindowingStateMachine<T,R> |
| Modifier and Type | Method and Description |
|---|---|
static <S,I,O> StateMachine<S,I,O> |
StateMachine.create(java.util.function.Supplier<S> initialState,
java.util.function.BiFunction<S,I,Transition<S,O>> transitionFunction)
Use the given transition function to create a state machine that never terminates, and releases no final outputs at the end of processing.
|
static <S,I,O> StateMachine<S,I,O> |
StateMachine.create(java.util.function.Supplier<S> initialState,
java.util.function.BiFunction<S,I,Transition<S,O>> transitionFunction,
java.util.function.Predicate<S> isTerminal)
Use the given transition function to create a state machine that terminates if the terminating condition is met, but releases no final outputs at the end of processing.
|
static <S,I,O> StateMachine<S,I,O> |
StateMachine.create(java.util.function.Supplier<S> initialState,
java.util.function.BiFunction<S,I,Transition<S,O>> transitionFunction,
java.util.function.Predicate<S> isTerminal,
java.util.function.Function<S,java.util.stream.Stream<O>> finisher)
Use the given transition function to create a state machine that terminates if the terminating condition is met, and may release final outputs at the end of processing.
|
| Modifier and Type | Method and Description |
|---|---|
static <S,I,O> StateMachineRunner<S,I,O> |
StateMachineRunner.create(S initialState,
StateMachine<S,I,O> stateMachine) |
static <S,I,O> boolean |
Statefully.terminates(java.util.stream.Stream<I> input,
StateMachine<S,I,O> stateMachine) |
static <S,I,O> java.util.stream.Stream<O> |
Statefully.transform(java.util.stream.Stream<I> input,
StateMachine<S,I,O> stateMachine) |
static <S,I,O> S |
Statefully.traverse(java.util.stream.Stream<I> input,
StateMachine<S,I,O> stateMachine) |
Copyright © 2020. All rights reserved.