Safe Haskell | None |
---|---|

Language | Haskell2010 |

- data AppState = AppState {}
- type App a = AppT AppState IO a
- type Action state a = ActionT AppState state IO a
- type ActionM s m a = ActionT AppState s m a
- type AppM m a = AppT AppState m a
- exit :: (Monad m, HasStates s) => ActionT s zoomed m ()
- isExiting :: (Monad m, HasStates s) => ActionT s zoomed m Bool
- asyncQueue :: (HasStates s, Typeable m, Typeable base) => Lens' s (Maybe (Chan (AppT base m ())))

# Documentation

type ActionM s m a = ActionT AppState s m a Source #

A more general version of `Action`

which lets you to specify the underlying monad.

type AppM m a = AppT AppState m a Source #

A more general version of `App`

which lets you specify the underlying monad.

exit :: (Monad m, HasStates s) => ActionT s zoomed m () Source #

Tells the application to quit. This triggers `onExit`

listeners
following the current event loop.