Safe Haskell | None |
---|---|
Language | Haskell2010 |
- module Algebra.Applicative
- module Algebra.Foldable
- class Functor t => Traversable t where
- sequence :: Applicative f => t (f a) -> f (t a)
- class Functor t => Contravariant t where
- traverse :: (Applicative f, Traversable t) => (a -> f b) -> t a -> f (t b)
- for :: (Applicative f, Traversable t) => t a -> (a -> f b) -> f (t b)
- transpose :: (Applicative f, Traversable t) => t (f a) -> f (t a)
- doTimes :: Applicative f => Int -> f a -> f [a]
- converted :: (Unit f, Unit g, Foldable f, Foldable g, Monoid (f a), Monoid (g b)) => Iso (f a) (f b) (g a) (g b)
- folded :: (Unit f', Foldable f, Monoid m) => Iso m m' (f m) (f' m')
- coerceSeq :: forall f t' t a. (Applicative f, Traversable t) => (forall b. t b -> t' b) -> t' (f a) -> f (t' a)
Documentation
module Algebra.Applicative
module Algebra.Foldable
class Functor t => Traversable t where Source
sequence :: Applicative f => t (f a) -> f (t a) Source
Traversable [] | |
Traversable Maybe | |
Traversable Tree | |
Traversable Interleave | |
Traversable OrdList | |
Traversable Strict | |
Traversable TimeVal | |
Traversable DeQue | |
Traversable (Either a) | |
Traversable ((,) c) | |
Eq k => Traversable (Map k) | |
Traversable (Assoc k) | |
Traversable (Increasing k) | |
Traversable f => Traversable (Zip f) | |
Traversable m => Traversable (StrictT m) | |
Traversable m => Traversable (MaybeT m) | |
Traversable m => Traversable (TreeT m) | |
Traversable m => Traversable (ListT m) | |
Traversable w => Traversable (Cofree w) | |
Traversable f => Traversable (Free f) | |
(Traversable f, Traversable g) => Traversable ((:++:) f g) | |
(Traversable f, Traversable g) => Traversable ((:**:) f g) | |
(Traversable f, Traversable g) => Traversable ((:.:) f g) | |
(Traversable g, Traversable f) => Traversable (Compose' f g) | |
Traversable m => Traversable (WriterT e m) | |
Traversable m => Traversable (EitherT e m) | |
Traversable (Queue push pop) | |
Traversable m => Traversable (RWST Void w Void m) |
class Functor t => Contravariant t where Source
Contravariant Id | |
Contravariant Strict | |
Contravariant ((->) a) | |
(Contravariant f, Contravariant g) => Contravariant ((:.:) f g) | |
Contravariant f => Contravariant (Kleisli f a) |
traverse :: (Applicative f, Traversable t) => (a -> f b) -> t a -> f (t b) Source
for :: (Applicative f, Traversable t) => t a -> (a -> f b) -> f (t b) Source
transpose :: (Applicative f, Traversable t) => t (f a) -> f (t a) Source
doTimes :: Applicative f => Int -> f a -> f [a] Source
converted :: (Unit f, Unit g, Foldable f, Foldable g, Monoid (f a), Monoid (g b)) => Iso (f a) (f b) (g a) (g b) Source
Instance utilities
coerceSeq :: forall f t' t a. (Applicative f, Traversable t) => (forall b. t b -> t' b) -> t' (f a) -> f (t' a) Source