Safe Haskell | Safe |
---|---|
Language | Haskell2010 |
Generics.Deriving.Traversable
Synopsis
- class (GFunctor t, GFoldable t) => GTraversable t where
- gtraverse :: Applicative f => (a -> f b) -> t a -> f (t b)
- gsequenceA :: Applicative f => t (f a) -> f (t a)
- gmapM :: Monad m => (a -> m b) -> t a -> m (t b)
- gsequence :: Monad m => t (m a) -> m (t a)
- gtraversedefault :: (Generic1 t, GTraversable' (Rep1 t), Applicative f) => (a -> f b) -> t a -> f (t b)
- class GTraversable' t where
- gtraverse' :: Applicative f => (a -> f b) -> t a -> f (t b)
Generic Traversable class
class (GFunctor t, GFoldable t) => GTraversable t where Source #
Minimal complete definition
Nothing
Methods
gtraverse :: Applicative f => (a -> f b) -> t a -> f (t b) Source #
gtraverse :: (Generic1 t, GTraversable' (Rep1 t), Applicative f) => (a -> f b) -> t a -> f (t b) Source #
gsequenceA :: Applicative f => t (f a) -> f (t a) Source #
Instances
GTraversable [] Source # | |
GTraversable Maybe Source # | |
Defined in Generics.Deriving.Traversable | |
GTraversable Down Source # | |
Defined in Generics.Deriving.Traversable | |
GTraversable NonEmpty Source # | |
Defined in Generics.Deriving.Traversable | |
GTraversable ZipList Source # | |
Defined in Generics.Deriving.Traversable | |
GTraversable First Source # | |
Defined in Generics.Deriving.Traversable | |
GTraversable Last Source # | |
Defined in Generics.Deriving.Traversable | |
GTraversable Dual Source # | |
Defined in Generics.Deriving.Traversable | |
GTraversable Product Source # | |
Defined in Generics.Deriving.Traversable | |
GTraversable Sum Source # | |
GTraversable Complex Source # | |
Defined in Generics.Deriving.Traversable | |
GTraversable Identity Source # | |
Defined in Generics.Deriving.Traversable | |
GTraversable First Source # | |
Defined in Generics.Deriving.Traversable | |
GTraversable Last Source # | |
Defined in Generics.Deriving.Traversable | |
GTraversable Max Source # | |
GTraversable Min Source # | |
GTraversable Option Source # | |
Defined in Generics.Deriving.Traversable | |
GTraversable WrappedMonoid Source # | |
Defined in Generics.Deriving.Traversable Methods gtraverse :: Applicative f => (a -> f b) -> WrappedMonoid a -> f (WrappedMonoid b) Source # gsequenceA :: Applicative f => WrappedMonoid (f a) -> f (WrappedMonoid a) Source # gmapM :: Monad m => (a -> m b) -> WrappedMonoid a -> m (WrappedMonoid b) Source # gsequence :: Monad m => WrappedMonoid (m a) -> m (WrappedMonoid a) Source # | |
GTraversable (Either a) Source # | |
Defined in Generics.Deriving.Traversable Methods gtraverse :: Applicative f => (a0 -> f b) -> Either a a0 -> f (Either a b) Source # gsequenceA :: Applicative f => Either a (f a0) -> f (Either a a0) Source # gmapM :: Monad m => (a0 -> m b) -> Either a a0 -> m (Either a b) Source # gsequence :: Monad m => Either a (m a0) -> m (Either a a0) Source # | |
GTraversable ((,) a) Source # | |
Defined in Generics.Deriving.Traversable | |
GTraversable (Proxy :: Type -> Type) Source # | |
Defined in Generics.Deriving.Traversable | |
GTraversable (Arg a) Source # | |
Defined in Generics.Deriving.Traversable | |
(Generic1 t, GFunctor' (Rep1 t), GFoldable' (Rep1 t), GTraversable' (Rep1 t)) => GTraversable (Default1 t) Source # | |
Defined in Generics.Deriving.Default Methods gtraverse :: Applicative f => (a -> f b) -> Default1 t a -> f (Default1 t b) Source # gsequenceA :: Applicative f => Default1 t (f a) -> f (Default1 t a) Source # gmapM :: Monad m => (a -> m b) -> Default1 t a -> m (Default1 t b) Source # gsequence :: Monad m => Default1 t (m a) -> m (Default1 t a) Source # | |
GTraversable (Const m :: Type -> Type) Source # | |
Defined in Generics.Deriving.Traversable | |
(GTraversable f, GTraversable g) => GTraversable (Product f g) Source # | |
Defined in Generics.Deriving.Traversable Methods gtraverse :: Applicative f0 => (a -> f0 b) -> Product f g a -> f0 (Product f g b) Source # gsequenceA :: Applicative f0 => Product f g (f0 a) -> f0 (Product f g a) Source # gmapM :: Monad m => (a -> m b) -> Product f g a -> m (Product f g b) Source # gsequence :: Monad m => Product f g (m a) -> m (Product f g a) Source # | |
(GTraversable f, GTraversable g) => GTraversable (Sum f g) Source # | |
Defined in Generics.Deriving.Traversable |
Default method
gtraversedefault :: (Generic1 t, GTraversable' (Rep1 t), Applicative f) => (a -> f b) -> t a -> f (t b) Source #
Internal Traversable class
class GTraversable' t where Source #
Methods
gtraverse' :: Applicative f => (a -> f b) -> t a -> f (t b) Source #
Instances
GTraversable' Par1 Source # | |
Defined in Generics.Deriving.Traversable Methods gtraverse' :: Applicative f => (a -> f b) -> Par1 a -> f (Par1 b) Source # | |
GTraversable' (V1 :: Type -> Type) Source # | |
Defined in Generics.Deriving.Traversable Methods gtraverse' :: Applicative f => (a -> f b) -> V1 a -> f (V1 b) Source # | |
GTraversable' (U1 :: Type -> Type) Source # | |
Defined in Generics.Deriving.Traversable Methods gtraverse' :: Applicative f => (a -> f b) -> U1 a -> f (U1 b) Source # | |
GTraversable' (UAddr :: Type -> Type) Source # | |
Defined in Generics.Deriving.Traversable Methods gtraverse' :: Applicative f => (a -> f b) -> UAddr a -> f (UAddr b) Source # | |
GTraversable' (UChar :: Type -> Type) Source # | |
Defined in Generics.Deriving.Traversable Methods gtraverse' :: Applicative f => (a -> f b) -> UChar a -> f (UChar b) Source # | |
GTraversable' (UDouble :: Type -> Type) Source # | |
Defined in Generics.Deriving.Traversable Methods gtraverse' :: Applicative f => (a -> f b) -> UDouble a -> f (UDouble b) Source # | |
GTraversable' (UFloat :: Type -> Type) Source # | |
Defined in Generics.Deriving.Traversable Methods gtraverse' :: Applicative f => (a -> f b) -> UFloat a -> f (UFloat b) Source # | |
GTraversable' (UInt :: Type -> Type) Source # | |
Defined in Generics.Deriving.Traversable Methods gtraverse' :: Applicative f => (a -> f b) -> UInt a -> f (UInt b) Source # | |
GTraversable' (UWord :: Type -> Type) Source # | |
Defined in Generics.Deriving.Traversable Methods gtraverse' :: Applicative f => (a -> f b) -> UWord a -> f (UWord b) Source # | |
GTraversable f => GTraversable' (Rec1 f) Source # | |
Defined in Generics.Deriving.Traversable Methods gtraverse' :: Applicative f0 => (a -> f0 b) -> Rec1 f a -> f0 (Rec1 f b) Source # | |
GTraversable' (K1 i c :: Type -> Type) Source # | |
Defined in Generics.Deriving.Traversable Methods gtraverse' :: Applicative f => (a -> f b) -> K1 i c a -> f (K1 i c b) Source # | |
(GTraversable' f, GTraversable' g) => GTraversable' (f :+: g) Source # | |
Defined in Generics.Deriving.Traversable Methods gtraverse' :: Applicative f0 => (a -> f0 b) -> (f :+: g) a -> f0 ((f :+: g) b) Source # | |
(GTraversable' f, GTraversable' g) => GTraversable' (f :*: g) Source # | |
Defined in Generics.Deriving.Traversable Methods gtraverse' :: Applicative f0 => (a -> f0 b) -> (f :*: g) a -> f0 ((f :*: g) b) Source # | |
GTraversable' f => GTraversable' (M1 i c f) Source # | |
Defined in Generics.Deriving.Traversable Methods gtraverse' :: Applicative f0 => (a -> f0 b) -> M1 i c f a -> f0 (M1 i c f b) Source # | |
(GTraversable f, GTraversable' g) => GTraversable' (f :.: g) Source # | |
Defined in Generics.Deriving.Traversable Methods gtraverse' :: Applicative f0 => (a -> f0 b) -> (f :.: g) a -> f0 ((f :.: g) b) Source # |