public final class LastMatchingFinderStateMachine<T> extends Object implements StateMachine<java.util.function.Supplier<java.util.stream.Stream<T>>,T,T>
| Modifier and Type | Method and Description |
|---|---|
Transition<java.util.function.Supplier<java.util.stream.Stream<T>>,T> |
apply(java.util.function.Supplier<java.util.stream.Stream<T>> state,
T item)
Apply the given input to the given state, returning a transition to a new state with 0 or more outputs.
|
java.util.stream.Stream<T> |
finish(java.util.function.Supplier<java.util.stream.Stream<T>> finalState)
Based on the final state (if non-terminal), obtain any "left-over" outputs when the end of the stream is reached.
|
java.util.function.Supplier<java.util.stream.Stream<T>> |
getInitialState() |
boolean |
isTerminal(java.util.function.Supplier<java.util.stream.Stream<T>> state)
Test whether a given state is terminal and stream traversal should stop.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitcreate, create, create, runner, runnerWithpublic Transition<java.util.function.Supplier<java.util.stream.Stream<T>>,T> apply(java.util.function.Supplier<java.util.stream.Stream<T>> state, T item)
StateMachineapply in interface StateMachine<java.util.function.Supplier<java.util.stream.Stream<T>>,T,T>state - The state to transition from.item - The input to apply to the state.public boolean isTerminal(java.util.function.Supplier<java.util.stream.Stream<T>> state)
StateMachineisTerminal in interface StateMachine<java.util.function.Supplier<java.util.stream.Stream<T>>,T,T>state - The state to test.public java.util.stream.Stream<T> finish(java.util.function.Supplier<java.util.stream.Stream<T>> finalState)
StateMachinefinish in interface StateMachine<java.util.function.Supplier<java.util.stream.Stream<T>>,T,T>finalState - The state at the end of the stream.public java.util.function.Supplier<java.util.stream.Stream<T>> getInitialState()
getInitialState in interface StateMachine<java.util.function.Supplier<java.util.stream.Stream<T>>,T,T>Copyright © 2020. All rights reserved.