| Copyright | (c) Nathaniel Symer, 2015 |
|---|---|
| License | MIT |
| Maintainer | nate@symer.io |
| Stability | experimental |
| Portability | POSIX |
| Safe Haskell | None |
| Language | Haskell2010 |
Data.Niagra.Monad
Description
- newtype NiagraT m a = NiagraT (RWST () (Seq Block) (Seq (Selector, Seq Declaration)) m a)
- execNiagraT :: Monad m => Selector -> NiagraT m () -> m (Seq Block)
- withNewScope :: Monad m => Selector -> NiagraT m () -> NiagraT m ()
- getCurrentBlock :: Monad m => NiagraT m Block
- addBlock :: Monad m => Block -> NiagraT m ()
- addDeclaration :: Monad m => Declaration -> NiagraT m ()
Documentation
NiagraT monad transformer.
execNiagraT :: Monad m => Selector -> NiagraT m () -> m (Seq Block) Source
Evaluate a NiagraT monadic action.
withNewScope :: Monad m => Selector -> NiagraT m () -> NiagraT m () Source
Run an act in a fresh NiagraT state.
addDeclaration :: Monad m => Declaration -> NiagraT m () Source
Add a declaration to the NiagraT state.