Safe Haskell | Safe-Infered |
---|
- newtype FactoryArrow m n i o = FactoryArrow {
- runFactory :: m (Kleisli n i o)
Documentation
newtype FactoryArrow m n i o Source
An Arrow
that constructs an associated monadic computation.
FactoryArrow | |
|
(Monad m, Monad n) => ArrowChoice (FactoryArrow m n) | A choice is constructed at factory time whether or not the constructed action is ever evaluated. |
(Monad m, Monad n) => Arrow (FactoryArrow m n) | |
(Monad m, MonadPlus n) => ArrowZero (FactoryArrow m n) | |
(Monad m, MonadPlus n) => ArrowPlus (FactoryArrow m n) | As with ArrowChoice, both branches are constructed at factory time whether or not the constructed actions are ever evaluated. |
Monad m => ArrowApply (FactoryArrow m m) | Careful! To implement ArrowApply, the factory action must run imbedded in the constructed action. |
(Monad m, MonadFix n) => ArrowLoop (FactoryArrow m n) | |
(Monad m, Monad n) => Category (FactoryArrow m n) |