semigroupoids-5.3.7: Semigroupoids: Category sans id
Copyright (C) 2011-2015 Edward Kmett
License BSD-style (see the file LICENSE)
Maintainer Edward Kmett <ekmett@gmail.com>
Stability provisional
Portability portable
Safe Haskell Trustworthy
Language Haskell2010

Data.Semigroup.Traversable.Class

Description

Documentation

class ( Bifoldable1 t, Bitraversable t) => Bitraversable1 t where Source #

Minimal complete definition

bitraverse1 | bisequence1

Methods

bitraverse1 :: Apply f => (a -> f b) -> (c -> f d) -> t a c -> f (t b d) Source #

bisequence1 :: Apply f => t (f a) (f b) -> f (t a b) Source #

Instances

Instances details
Bitraversable1 Either Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

bitraverse1 :: Apply f => (a -> f b) -> (c -> f d) -> Either a c -> f ( Either b d) Source #

bisequence1 :: Apply f => Either (f a) (f b) -> f ( Either a b) Source #

Bitraversable1 (,) Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

bitraverse1 :: Apply f => (a -> f b) -> (c -> f d) -> (a, c) -> f (b, d) Source #

bisequence1 :: Apply f => (f a, f b) -> f (a, b) Source #

Bitraversable1 Arg Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

bitraverse1 :: Apply f => (a -> f b) -> (c -> f d) -> Arg a c -> f ( Arg b d) Source #

bisequence1 :: Apply f => Arg (f a) (f b) -> f ( Arg a b) Source #

Bitraversable1 ( (,,) x) Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

bitraverse1 :: Apply f => (a -> f b) -> (c -> f d) -> (x, a, c) -> f (x, b, d) Source #

bisequence1 :: Apply f => (x, f a, f b) -> f (x, a, b) Source #

Bitraversable1 ( Const :: Type -> Type -> Type ) Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

bitraverse1 :: Apply f => (a -> f b) -> (c -> f d) -> Const a c -> f ( Const b d) Source #

bisequence1 :: Apply f => Const (f a) (f b) -> f ( Const a b) Source #

Bitraversable1 ( Tagged :: Type -> Type -> Type ) Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

bitraverse1 :: Apply f => (a -> f b) -> (c -> f d) -> Tagged a c -> f ( Tagged b d) Source #

bisequence1 :: Apply f => Tagged (f a) (f b) -> f ( Tagged a b) Source #

Bitraversable1 ( (,,,) x y) Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

bitraverse1 :: Apply f => (a -> f b) -> (c -> f d) -> (x, y, a, c) -> f (x, y, b, d) Source #

bisequence1 :: Apply f => (x, y, f a, f b) -> f (x, y, a, b) Source #

Bitraversable1 ( (,,,,) x y z) Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

bitraverse1 :: Apply f => (a -> f b) -> (c -> f d) -> (x, y, z, a, c) -> f (x, y, z, b, d) Source #

bisequence1 :: Apply f => (x, y, z, f a, f b) -> f (x, y, z, a, b) Source #

Bitraversable1 p => Bitraversable1 ( WrappedBifunctor p) Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Traversable1 g => Bitraversable1 ( Joker g :: Type -> Type -> Type ) Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

bitraverse1 :: Apply f => (a -> f b) -> (c -> f d) -> Joker g a c -> f ( Joker g b d) Source #

bisequence1 :: Apply f => Joker g (f a) (f b) -> f ( Joker g a b) Source #

Bitraversable1 p => Bitraversable1 ( Flip p) Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

bitraverse1 :: Apply f => (a -> f b) -> (c -> f d) -> Flip p a c -> f ( Flip p b d) Source #

bisequence1 :: Apply f => Flip p (f a) (f b) -> f ( Flip p a b) Source #

Traversable1 f => Bitraversable1 ( Clown f :: Type -> Type -> Type ) Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

bitraverse1 :: Apply f0 => (a -> f0 b) -> (c -> f0 d) -> Clown f a c -> f0 ( Clown f b d) Source #

bisequence1 :: Apply f0 => Clown f (f0 a) (f0 b) -> f0 ( Clown f a b) Source #

( Bitraversable1 f, Bitraversable1 g) => Bitraversable1 ( Product f g) Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

bitraverse1 :: Apply f0 => (a -> f0 b) -> (c -> f0 d) -> Product f g a c -> f0 ( Product f g b d) Source #

bisequence1 :: Apply f0 => Product f g (f0 a) (f0 b) -> f0 ( Product f g a b) Source #

( Traversable1 f, Bitraversable1 p) => Bitraversable1 ( Tannen f p) Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

bitraverse1 :: Apply f0 => (a -> f0 b) -> (c -> f0 d) -> Tannen f p a c -> f0 ( Tannen f p b d) Source #

bisequence1 :: Apply f0 => Tannen f p (f0 a) (f0 b) -> f0 ( Tannen f p a b) Source #

( Bitraversable1 p, Traversable1 f, Traversable1 g) => Bitraversable1 ( Biff p f g) Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

bitraverse1 :: Apply f0 => (a -> f0 b) -> (c -> f0 d) -> Biff p f g a c -> f0 ( Biff p f g b d) Source #

bisequence1 :: Apply f0 => Biff p f g (f0 a) (f0 b) -> f0 ( Biff p f g a b) Source #

class ( Foldable1 t, Traversable t) => Traversable1 t where Source #

Minimal complete definition

traverse1 | sequence1

Methods

traverse1 :: Apply f => (a -> f b) -> t a -> f (t b) Source #

sequence1 :: Apply f => t (f b) -> f (t b) Source #

Instances

Instances details
Traversable1 Par1 Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

traverse1 :: Apply f => (a -> f b) -> Par1 a -> f ( Par1 b) Source #

sequence1 :: Apply f => Par1 (f b) -> f ( Par1 b) Source #

Traversable1 Complex Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Traversable1 Min Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

traverse1 :: Apply f => (a -> f b) -> Min a -> f ( Min b) Source #

sequence1 :: Apply f => Min (f b) -> f ( Min b) Source #

Traversable1 Max Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

traverse1 :: Apply f => (a -> f b) -> Max a -> f ( Max b) Source #

sequence1 :: Apply f => Max (f b) -> f ( Max b) Source #

Traversable1 First Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Traversable1 Last Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

traverse1 :: Apply f => (a -> f b) -> Last a -> f ( Last b) Source #

sequence1 :: Apply f => Last (f b) -> f ( Last b) Source #

Traversable1 Identity Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Traversable1 Dual Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

traverse1 :: Apply f => (a -> f b) -> Dual a -> f ( Dual b) Source #

sequence1 :: Apply f => Dual (f b) -> f ( Dual b) Source #

Traversable1 Sum Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

traverse1 :: Apply f => (a -> f b) -> Sum a -> f ( Sum b) Source #

sequence1 :: Apply f => Sum (f b) -> f ( Sum b) Source #

Traversable1 Product Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Traversable1 NonEmpty Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Traversable1 Tree Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

traverse1 :: Apply f => (a -> f b) -> Tree a -> f ( Tree b) Source #

sequence1 :: Apply f => Tree (f b) -> f ( Tree b) Source #

Traversable1 ( V1 :: Type -> Type ) Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

traverse1 :: Apply f => (a -> f b) -> V1 a -> f ( V1 b) Source #

sequence1 :: Apply f => V1 (f b) -> f ( V1 b) Source #

Traversable1 ( (,) a) Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

traverse1 :: Apply f => (a0 -> f b) -> (a, a0) -> f (a, b) Source #

sequence1 :: Apply f => (a, f b) -> f (a, b) Source #

Traversable1 f => Traversable1 ( Lift f) Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

traverse1 :: Apply f0 => (a -> f0 b) -> Lift f a -> f0 ( Lift f b) Source #

sequence1 :: Apply f0 => Lift f (f0 b) -> f0 ( Lift f b) Source #

Traversable1 f => Traversable1 ( Rec1 f) Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

traverse1 :: Apply f0 => (a -> f0 b) -> Rec1 f a -> f0 ( Rec1 f b) Source #

sequence1 :: Apply f0 => Rec1 f (f0 b) -> f0 ( Rec1 f b) Source #

Traversable1 f => Traversable1 ( Alt f) Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

traverse1 :: Apply f0 => (a -> f0 b) -> Alt f a -> f0 ( Alt f b) Source #

sequence1 :: Apply f0 => Alt f (f0 b) -> f0 ( Alt f b) Source #

Bitraversable1 p => Traversable1 ( Join p) Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

traverse1 :: Apply f => (a -> f b) -> Join p a -> f ( Join p b) Source #

sequence1 :: Apply f => Join p (f b) -> f ( Join p b) Source #

Traversable1 f => Traversable1 ( IdentityT f) Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

traverse1 :: Apply f0 => (a -> f0 b) -> IdentityT f a -> f0 ( IdentityT f b) Source #

sequence1 :: Apply f0 => IdentityT f (f0 b) -> f0 ( IdentityT f b) Source #

Traversable1 ( Tagged a) Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

traverse1 :: Apply f => (a0 -> f b) -> Tagged a a0 -> f ( Tagged a b) Source #

sequence1 :: Apply f => Tagged a (f b) -> f ( Tagged a b) Source #

Traversable1 f => Traversable1 ( Reverse f) Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

traverse1 :: Apply f0 => (a -> f0 b) -> Reverse f a -> f0 ( Reverse f b) Source #

sequence1 :: Apply f0 => Reverse f (f0 b) -> f0 ( Reverse f b) Source #

Traversable1 f => Traversable1 ( Backwards f) Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

traverse1 :: Apply f0 => (a -> f0 b) -> Backwards f a -> f0 ( Backwards f b) Source #

sequence1 :: Apply f0 => Backwards f (f0 b) -> f0 ( Backwards f b) Source #

( Traversable1 f, Traversable1 g) => Traversable1 (f :+: g) Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

traverse1 :: Apply f0 => (a -> f0 b) -> (f :+: g) a -> f0 ((f :+: g) b) Source #

sequence1 :: Apply f0 => (f :+: g) (f0 b) -> f0 ((f :+: g) b) Source #

( Traversable1 f, Traversable1 g) => Traversable1 (f :*: g) Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

traverse1 :: Apply f0 => (a -> f0 b) -> (f :*: g) a -> f0 ((f :*: g) b) Source #

sequence1 :: Apply f0 => (f :*: g) (f0 b) -> f0 ((f :*: g) b) Source #

( Traversable1 f, Traversable1 g) => Traversable1 ( Product f g) Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

traverse1 :: Apply f0 => (a -> f0 b) -> Product f g a -> f0 ( Product f g b) Source #

sequence1 :: Apply f0 => Product f g (f0 b) -> f0 ( Product f g b) Source #

( Traversable1 f, Traversable1 g) => Traversable1 ( Sum f g) Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

traverse1 :: Apply f0 => (a -> f0 b) -> Sum f g a -> f0 ( Sum f g b) Source #

sequence1 :: Apply f0 => Sum f g (f0 b) -> f0 ( Sum f g b) Source #

Traversable1 f => Traversable1 ( M1 i c f) Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

traverse1 :: Apply f0 => (a -> f0 b) -> M1 i c f a -> f0 ( M1 i c f b) Source #

sequence1 :: Apply f0 => M1 i c f (f0 b) -> f0 ( M1 i c f b) Source #

( Traversable1 f, Traversable1 g) => Traversable1 (f :.: g) Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

traverse1 :: Apply f0 => (a -> f0 b) -> (f :.: g) a -> f0 ((f :.: g) b) Source #

sequence1 :: Apply f0 => (f :.: g) (f0 b) -> f0 ((f :.: g) b) Source #

( Traversable1 f, Traversable1 g) => Traversable1 ( Compose f g) Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

traverse1 :: Apply f0 => (a -> f0 b) -> Compose f g a -> f0 ( Compose f g b) Source #

sequence1 :: Apply f0 => Compose f g (f0 b) -> f0 ( Compose f g b) Source #

Traversable1 g => Traversable1 ( Joker g a) Source #
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

traverse1 :: Apply f => (a0 -> f b) -> Joker g a a0 -> f ( Joker g a b) Source #

sequence1 :: Apply f => Joker g a (f b) -> f ( Joker g a b) Source #