logic_blocks/logic_block library

Classes

Context
Logic block execution context provided to each state.
FakeContext
Fake logic block context provided for testing convenience.
FutureTracker
Tracks in-flight Futures and exposes a single future that completes when all tracked futures have finished.
LogicBlock<TState extends StateLogic<TState>>
A logic block. Logic blocks are machines that receive input, maintain a single state, and produce outputs. They can be used as simple input-to-state reducers or built upon to create hierarchical state machines.
LogicBlockBase
Base class for all logic blocks. Provides access to the blackboard and the current state as an Object.
LogicBlockBinding<TState extends StateLogic<TState>>
A binding to a logic block.
LogicBlockFakeBinding<TState extends StateLogic<TState>>
A fake binding for testing logic block bindings without a real logic block.
LogicBlockListener<TState extends StateLogic<TState>>
Logic block listener base class.
StatefulFuture<T>
A wrapper around a Future that delivers its result as an input to a logic block.
StateLogic<TState>
Base class for logic block states.
Transition
Represents a transition to a new state type.

Enums

LogicBlockStatus
The lifecycle status of a logic block.

Extensions

StateLogicExtensions on TDerived
Extension methods on StateLogic subclasses for registering hierarchy-aware entrance and exit callbacks.

Typedefs

ErrorCallback<TError> = void Function(TError error)
Callback invoked when an error of type TError is encountered.
InputCallback<TInput> = void Function(TInput input)
Callback invoked when an input of type TInput is received.
InputReturnCallback<TInput> = TInput Function<TData>(TData data)
Callback that maps a data of type TData to an input of type TInput.
OutputCallback<TOutput> = void Function(TOutput output)
Callback invoked when an output of type TOutput is produced.
StateCallback<TState> = void Function(TState state)
Callback invoked when a state of type TState is encountered.