| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Algebra.Traversable
- module Algebra.Applicative
- module Algebra.Foldable
- class Functor t => Traversable t where
- 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]
- doTimes_ :: Applicative f => Int -> f a -> f ()
- 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')
- coerceSequence :: 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 #
Minimal complete definition
Methods
sequence :: Applicative f => t (f a) -> f (t a) Source #
Instances
| Traversable DeQue Source # | |
| Traversable TimeVal Source # | |
| Traversable w => Traversable (Cofree w) Source # | |
| Traversable f => Traversable (Free f) Source # | |
| Traversable m => Traversable (StrictT m) Source # | |
| Traversable m => Traversable (MaybeT m) Source # | |
| Traversable m => Traversable (TreeT m) Source # | |
| Traversable m => Traversable (ListT m) Source # | |
| (Monad m, Traversable m) => Traversable (LogicT m) Source # | |
| (Traversable g, Traversable f) => Traversable (Compose' f g) Source # | |
| Traversable m => Traversable (EitherT e m) Source # | |
| Traversable m => Traversable (WriterT e m) Source # | |
| Traversable (Queue push pop) Source # | |
| Traversable m => Traversable (RWST Void w Void m) Source # | |
class Functor t => Contravariant t where Source #
Minimal complete definition
Instances
| Contravariant Id Source # | |
| Contravariant Strict Source # | |
| Contravariant ((->) a) Source # | |
| (Contravariant f, Contravariant g) => Contravariant ((:.:) f g) Source # | |
| Contravariant f => Contravariant (Kleisli f a) Source # | |
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 #
doTimes_ :: Applicative f => Int -> f a -> f () 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
coerceSequence :: forall f t' t a. (Applicative f, Traversable t) => (forall b. t b -> t' b) -> t' (f a) -> f (t' a) Source #
Orphan instances
| Traversable [] Source # | |
| Traversable Maybe Source # | |
| Traversable Tree Source # | |
| Traversable Interleave Source # | |
| Traversable OrdList Source # | |
| Traversable Id Source # | |
| Traversable Strict Source # | |
| Compound a b [a] [b] Source # | |
| Traversable (Either a) Source # | |
| Traversable ((,) c) Source # | |
| Traversable (Assoc k) Source # | |
| Traversable (Increasing k) Source # | |
| Traversable f => Traversable (Zip f) Source # | |
| (Traversable f, Traversable g) => Traversable ((:++:) f g) Source # | |
| (Traversable f, Traversable g) => Traversable ((:**:) f g) Source # | |
| (Traversable f, Traversable g) => Traversable ((:.:) f g) Source # | |