Copyright | (c) 2012 Ertugrul Soeylemez |
---|---|
License | BSD3 |
Maintainer | Ertugrul Soeylemez <es@ertes.de> |
Safe Haskell | None |
Language | Haskell2010 |
Effectful wires.
- perform :: Monad m => Wire e m (m b) b
- execute :: MonadBaseControl IO m => Wire LastException m (m a) a
- execute_ :: MonadBaseControl IO m => (a -> m b) -> Wire LastException m a b
- executeWith :: MonadBaseControl IO m => (SomeException -> e) -> Wire e m (m a) a
- executeWith_ :: MonadBaseControl IO m => (SomeException -> e) -> (a -> m b) -> Wire e m a b
- branch :: MonadPlus m => Wire e m [a] a
- quit :: MonadPlus m => Wire e m a b
- quitWith :: MonadPlus m => Wire e m a a
Monadic effects
Simple
perform :: Monad m => Wire e m (m b) b Source
Perform the input monadic action in a wire.
- Depends: current instant.
Exception-aware
execute :: MonadBaseControl IO m => Wire LastException m (m a) a Source
Variant of executeWith
for the LastException
inhibition monoid.
- Depends: current instant.
- Inhibits: when the action throws an exception.
execute_ :: MonadBaseControl IO m => (a -> m b) -> Wire LastException m a b Source
Variant of executeWith_
for the LastException
inhibition monoid.
- Depends: current instant, if the given function is strict.
- Inhibits: when the action throws an exception.
:: MonadBaseControl IO m | |
=> (SomeException -> e) | Turns an exception into an inhibition value. |
-> Wire e m (m a) a |
Perform the input monadic action at every instant.
- Depends: current instant.
- Inhibits: when the action throws an exception.
:: MonadBaseControl IO m | |
=> (SomeException -> e) | Turns an exception into an inhibition value. |
-> (a -> m b) | Action to perform. |
-> Wire e m a b |
Perform the given monadic action at every instant.
- Depends: current instant, if the given function is strict.
- Inhibits: when the action throws an exception.