public final class StateMachines extends Object
public static <T> LastMatchingFinderStateMachine<T> lastMatchingFinder(java.util.function.Predicate<T> condition)
public static <T,R> WindowingStateMachine<T,R> windowingStateMachine(int size, java.util.function.Function<java.util.stream.Stream<T>,R> reducer)
public static <T> SubsetCheckingStateMachine<T> checkingSubset(Set<T> subset)
public static <T> TerminatingActionStateMachine<T> terminatingForEach(java.util.function.Function<T,Boolean> action)
public static <S,T> TaggingStateMachine<S,T> tagging(S initialState, java.util.function.BiFunction<S,T,S> stateTransitionFunction)
public static <S,T> TaggingStateMachine<S,T> tagging(S initialState, java.util.function.BiFunction<S,T,S> stateTransitionFunction, java.util.function.Predicate<S> isTerminal)
public static <S,T> TaggingStateMachine<S,T> tagging(java.util.function.Supplier<S> initialStateSupplier, java.util.function.BiFunction<S,T,S> stateTransitionFunction)
public static <S,T> TaggingStateMachine<S,T> tagging(java.util.function.Supplier<S> initialStateSupplier, java.util.function.BiFunction<S,T,S> stateTransitionFunction, java.util.function.Predicate<S> isTerminal)
Copyright © 2020. All rights reserved.