FSM
fsmcr is a general-purpose finite state machine library. A machine is defined once by a machine-scoped builder, sealed, then interpreted. The sealed definition is immutable and safe to share across interpreters and fibers. Interpretation separates deciding from doing: a pure core computes an ordered list of effects and runs none of them, and an interpreter (Service or AsyncService) runs them.
Constants
VERSION = "0.1.0"
Nested types
- FSM::Any
- FSM::AsyncService(T)
- FSM::Builder(T)
- FSM::Context
- FSM::DuplicateStateError
- FSM::InvalidInitialStateError
- FSM::Machine(T)
- FSM::MissingTargetStateError
- FSM::ObserverFiring
- FSM::ObserverRegistrar
- FSM::SealedStateError
- FSM::Service(T)
- FSM::State
- FSM::StateDefinition(T)
- FSM::StateMachineError
- FSM::Status
- FSM::StoppedError
- FSM::Transition(T)