arrows-0.4.1.1: Arrow classes and transformersSource codeContentsIndex
Control.Arrow.Transformer.Static
Portabilitynon-portable (multi-parameter type classes)
Stabilityexperimental
Maintainerross@soi.city.ac.uk
Description
Arrow transformer adding static information.
Synopsis
data StaticArrow f a b c
type StaticMonadArrow m = StaticArrow (WrappedMonad m)
type StaticArrowArrow a s = StaticArrow (WrappedArrow a s)
wrapA :: (Arrow a, Arrow a') => a s (a' b c) -> StaticArrowArrow a s a' b c
unwrapA :: (Arrow a, Arrow a') => StaticArrowArrow a s a' b c -> a s (a' b c)
wrapM :: (Monad m, Arrow a) => m (a b c) -> StaticMonadArrow m a b c
unwrapM :: (Monad m, Arrow a) => StaticMonadArrow m a b c -> m (a b c)
Documentation
data StaticArrow f a b c Source
An arrow type that augments the underlying arrow with static information.
show/hide Instances
type StaticMonadArrow m = StaticArrow (WrappedMonad m)Source
A special case is monads applied to the whole arrow, in contrast to Kleisli arrows, in which the monad is applied to the output.
type StaticArrowArrow a s = StaticArrow (WrappedArrow a s)Source
A special case.
wrapA :: (Arrow a, Arrow a') => a s (a' b c) -> StaticArrowArrow a s a' b cSource
unwrapA :: (Arrow a, Arrow a') => StaticArrowArrow a s a' b c -> a s (a' b c)Source
wrapM :: (Monad m, Arrow a) => m (a b c) -> StaticMonadArrow m a b cSource
unwrapM :: (Monad m, Arrow a) => StaticMonadArrow m a b c -> m (a b c)Source
Produced by Haddock version 2.4.2