Data.Functor.Product (original) (raw)
Generic1 (Product f g :: k -> Type) Source #
Instance details
Defined in Data.Functor.Product
(Foldable1 f, Foldable1 g) => Foldable1 (Product f g) Source #
It would be enough for either half of a product to be [Foldable1](Data-Foldable1.html#t:Foldable1 "Data.Foldable1")
. Other could be [Foldable](Data-Foldable.html#t:Foldable "Data.Foldable")
.
Instance details
Defined in Data.Foldable1
(Eq1 f, Eq1 g) => Eq1 (Product f g) Source #
Since: base-4.9.0.0
Instance details
Defined in Data.Functor.Product
(Ord1 f, Ord1 g) => Ord1 (Product f g) Source #
Since: base-4.9.0.0
Instance details
Defined in Data.Functor.Product
(Read1 f, Read1 g) => Read1 (Product f g) Source #
Since: base-4.9.0.0
Instance details
Defined in Data.Functor.Product
(Show1 f, Show1 g) => Show1 (Product f g) Source #
Since: base-4.9.0.0
Instance details
Defined in Data.Functor.Product
(Contravariant f, Contravariant g) => Contravariant (Product f g) Source #
Instance details
Defined in Data.Functor.Contravariant
(Alternative f, Alternative g) => Alternative (Product f g) Source #
Since: base-4.9.0.0
Instance details
Defined in Data.Functor.Product
(Applicative f, Applicative g) => Applicative (Product f g) Source #
Since: base-4.9.0.0
Instance details
Defined in Data.Functor.Product
(Functor f, Functor g) => Functor (Product f g) Source #
Since: base-4.9.0.0
Instance details
Defined in Data.Functor.Product
(Monad f, Monad g) => Monad (Product f g) Source #
Since: base-4.9.0.0
Instance details
Defined in Data.Functor.Product
(MonadPlus f, MonadPlus g) => MonadPlus (Product f g) Source #
Since: base-4.9.0.0
Instance details
Defined in Data.Functor.Product
(MonadFix f, MonadFix g) => MonadFix (Product f g) Source #
Since: base-4.9.0.0
Instance details
Defined in Data.Functor.Product
(MonadZip f, MonadZip g) => MonadZip (Product f g) Source #
Since: base-4.9.0.0
Instance details
Defined in Data.Functor.Product
(Foldable f, Foldable g) => Foldable (Product f g) Source #
Since: base-4.9.0.0
Instance details
Defined in Data.Functor.Product
(Traversable f, Traversable g) => Traversable (Product f g) Source #
Since: base-4.9.0.0
Instance details
Defined in Data.Functor.Product
(Monoid (f a), Monoid (g a)) => Monoid (Product f g a) Source #
Since: base-4.16.0.0
Instance details
Defined in Data.Functor.Product
(Semigroup (f a), Semigroup (g a)) => Semigroup (Product f g a) Source #
Since: base-4.16.0.0
Instance details
Defined in Data.Functor.Product
(Typeable a, Typeable f, Typeable g, Typeable k, Data (f a), Data (g a)) => Data (Product f g a) Source #
Since: base-4.9.0.0
Instance details
Defined in Data.Functor.Product
Generic (Product f g a) Source #
Instance details
Defined in Data.Functor.Product
(Read (f a), Read (g a)) => Read (Product f g a) Source #
Since: base-4.18.0.0
Instance details
Defined in Data.Functor.Product
(Show (f a), Show (g a)) => Show (Product f g a) Source #
Since: base-4.18.0.0
Instance details
Defined in Data.Functor.Product
(Eq (f a), Eq (g a)) => Eq (Product f g a) Source #
Since: base-4.18.0.0
Instance details
Defined in Data.Functor.Product
(Ord (f a), Ord (g a)) => Ord (Product f g a) Source #
Since: base-4.18.0.0
Instance details
Defined in Data.Functor.Product
type Rep1 (Product f g :: k -> Type) Source #
Since: base-4.9.0.0
Instance details
Defined in Data.Functor.Product
type Rep (Product f g a) Source #
Since: base-4.9.0.0
Instance details
Defined in Data.Functor.Product