| Safe Haskell | None |
|---|---|
| Language | GHC2021 |
TypedFsm.Driver.General
Description
Running FSM
Documentation
anyToSomeMsg :: forall ps (input :: ps). SEq ps => Sing input -> AnyMsg ps -> Maybe (SomeMsg ps input) Source #
newtype UnexpectMsg ps Source #
Constructors
| UnexpectMsg (AnyMsg ps) |
data UnexpectMsgHandler ps (m :: Type -> Type) Source #
Constructors
| Ignore | |
| IgnoreAndTrace (AnyMsg ps -> m ()) | |
| Terminal |
runOperate :: forall ps m a (input :: ps) (output :: ps). (Monad m, SEq ps) => UnexpectMsgHandler ps m -> [AnyMsg ps] -> Sing input -> Operate m (At a output) input -> m (Result ps (UnexpectMsg ps) m a) Source #