Expand description
Client state machine interfaces and executor implementation
Modules§
- dbtx π
- executor π
- notifier π
- Helper to notify modules about state transitions
- state π
- State machine state interface
- util
Structs§
- Active
State KeyBytes - Active
State KeyPrefix - Active
State Meta - ClientSM
Database Transaction - A transaction that acts as isolated for module code but can be accessed as a normal transaction in this crate.
- DynContext
- A shared context for a module client state machine
- DynState
- A type-erased state of a state machine belonging to a module instance, see
State
- Executor
- Executor that drives forward state machines under its management.
- Executor
Builder - Builder to which module clients can be attached and used to build an
Executor
supporting these. - Inactive
State KeyBytes - Inactive
State KeyPrefix - Inactive
State Meta - Module
Notifier - State transition notifier for a specific module instance that can only subscribe to transitions belonging to that module
- Notifier
- State transition notifier owned by the modularized client used to inform modules of state transitions.
- Notifier
Sender - Notifier send handle that can be shared to places where we donβt need an
entire
Notifier
but still need to trigger notifications. The main use case is triggering notifications when a DB transaction was committed successfully. - Operation
State - State
Transition - Represents one or multiple possible state transitions triggered in a common way