typed-fsm-0.3.0.1: A framework for strongly typed FSM
Safe HaskellNone
LanguageGHC2021

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 #