immutable_fsm library

An immutable Finite State Machine.

It is designed to work well with state management due to immutability - any transition could produces a copy of the FSM state holding new values.

Classes

FSMState<Event, Data>
An ImmutableFSM's state.
FSMStateOnEnterResponse<Event, Data>
A handler that is given to any FSMState to provide a response.
FSMStateOnExitResponse<Event, Data>
A handler that is provided to any FSMState to provide a response.
ImmutableFSM<Event, Data>
An immutable Finite State Machine.

Exceptions / Errors

FSMException
State machine exception.