Portability | portable |
---|---|
Stability | experimental |
Maintainer | ross@soi.city.ac.uk |
Safe Haskell | Safe-Inferred |
Arrow transformers, for making new arrow types out of old ones.
- class (Arrow a, Arrow (f a)) => ArrowTransformer f a where
- lift :: a b c -> f a b c
Documentation
class (Arrow a, Arrow (f a)) => ArrowTransformer f a whereSource
Construct a new arrow from an existing one.
(Arrow (Automaton a), Arrow a) => ArrowTransformer Automaton a | |
(Arrow (StreamArrow a), Arrow a) => ArrowTransformer StreamArrow a | |
(Arrow a, Arrow (ErrorArrow ex a), ArrowChoice a) => ArrowTransformer (ErrorArrow ex) a | |
(Arrow (StateArrow s a), Arrow a) => ArrowTransformer (StateArrow s) a | |
(Arrow (StaticArrow f a), Arrow a, Applicative f) => ArrowTransformer (StaticArrow f) a | |
(Arrow (WriterArrow w a), Arrow a, Monoid w) => ArrowTransformer (WriterArrow w) a | |
(Arrow (ReaderArrow r a), Arrow a) => ArrowTransformer (ReaderArrow r) a |