Maintainer | Ertugrul Soeylemez <es@ertes.de> |
---|
Monadic computations for wires over Kleisli arrows. The difference
between these wires and Control.Wire.Classes.arrM
is that these are
exception-aware.
- class Arrow >~ => WExecute m (>~) | >~ -> m where
- execute :: Applicative f => Wire (f SomeException) >~ (m b) b
- executeWith :: (SomeException -> e) -> Wire e >~ (m b) b
Run monadic actions
class Arrow >~ => WExecute m (>~) | >~ -> m whereSource
Run monadic actions.
execute :: Applicative f => Wire (f SomeException) >~ (m b) bSource
Run the input monadic action at each instant.
- Depends: Current instant.
- Inhibits: Whenever the input computation throws an exception.
executeWith :: (SomeException -> e) -> Wire e >~ (m b) bSource
Run the input monadic action at each instant. The argument function converts thrown exceptions to inhibition values.
- Depends: Current instant.
- Inhibits: Whenever the input computation throws an exception.
MonadBaseControl IO m => WExecute m (Kleisli m) |