A type of SideEffect which is executed after the ACTION is dispatched
and then the STATE is changed accordingly. This SideEffect is executed
only when the transition is successfully made.
A type of SideEffect executed after the ACTION is dispatched, after all
other processes are finished, and regardless of whether the transition is
made.
Interface of the class that generates SideEffect that is executed at the
end of the process when an Action is dispatched regardless of whether
a transition is made
A class representing the state transition pattern when the transition is
invalid. It has the same state before the transition and the action as
Transition, but it does not have the state after the transition.
Subscription is a component which can be registered to StateMachine to
monitor changes of the state.
This is mainly used to monitor a change in state and to instruct
StateMachine to perform some processing based on that change.
For example, it is conceivable to monitor the connection status of WebSocket
and instruct StateMachine to attempt to reconnect if the connection
is lost.
A parent class for representing state transition patterns
The parent of Valid and Invalid class, which holds the state before the
transition and the action which caused the transition.
A class representing the state transition pattern when the transition is
valid. In addition to the properties defined by the parent(Transition)
it also holds the state after the transition.The state before the transition
and the action are inherited from Transition, and the state after the
transition is added.
This function creates a StateMachine with the given graphBuilder,
initialState, sideEffectCreators, and subscriptions.
This function exists to hide StateMachineImpl.