HORIZON HASKELLDocslts/ghc-9.10.xc74966e2026-09-27Search names, modules, packages, or :: a typeCtrl K

GHC 9.10.3 · lts/ghc-9.10.x · c74966e · 2026-09-27

Modulerebase-1.21.2Haskell2010

Rebase.Data.Functor.Classes

  • 8 classes
  • 28 values
  • Packagerebase-1.21.2
  • Exports36
  • LanguageHaskell2010
  • LicenceMIT
  • SourceClasses.hs
classclass (forall a. Eq a => Eq (f a)) => Eq1 (f :: Type -> Type) where
#

Lifting of the Eq class to unary type constructors.

Any instance should be subject to the following law that canonicity is preserved:

liftEq (==) = (==)

This class therefore represents the generalization of Eq by decomposing its main method into a canonical lifting on a canonical inner method, so that the lifting can be reused for other arguments than the canonical one.

Methods

  • liftEq :: (a -> b -> Bool) -> f a -> f b -> Bool

    Lift an equality test through the type constructor.

    The function will usually be applied to an equality function, but the more general type ensures that the implementation uses it to compare elements of the first container with elements of the second.

Instances83Eq1, …
  • Eq1 ComplexDefined in base-4.20.2.0 · Data.Functor.Classes
    Example1 expression
    eq1 (1 :+ 2) (1 :+ 2)True
    Example1 expression
    eq1 (1 :+ 2) (1 :+ 3)False
  • Eq1 SCCDefined in containers-0.7 · Data.Graph
  • Eq1 IntMapDefined in containers-0.7 · Data.IntMap.Internal
  • Eq1 SeqDefined in containers-0.7 · Data.Sequence.Internal
  • Eq1 SetDefined in containers-0.7 · Data.Set.Internal
  • Eq1 TreeDefined in containers-0.7 · Data.Tree
  • Eq1 NonEmptyDefined in base-4.20.2.0 · Data.Functor.Classes
  • Eq1 IdentityDefined in base-4.20.2.0 · Data.Functor.Classes
  • Eq1 DownDefined in base-4.20.2.0 · Data.Functor.Classes
  • Eq1 Par1Defined in base-orphans-0.9.3 · Data.Orphans · orphan
  • Eq1 MaybeDefined in base-4.20.2.0 · Data.Functor.Classes
  • Eq1 SoloDefined in base-4.20.2.0 · Data.Functor.Classes
  • Eq1 HashedDefined in hashable-1.4.7.0 · Data.Hashable.Class
  • Eq1 ArrayDefined in primitive-0.9.1.0 · Data.Primitive.Array
  • Eq1 SmallArrayDefined in primitive-0.9.1.0 · Data.Primitive.SmallArray
  • Eq1 HashSetDefined in unordered-containers-0.2.21 · Data.HashSet.Internal
  • Eq1 VectorDefined in vector-0.13.2.0 · Data.Vector
  • Eq1 VectorDefined in vector-0.13.2.0 · Data.Vector.Strict
  • Eq1 []Defined in base-4.20.2.0 · Data.Functor.Classes
  • Eq1 ProxyDefined in base-4.20.2.0 · Data.Functor.Classes
  • Eq1 U1Defined in base-orphans-0.9.3 · Data.Orphans · orphan
  • Eq1 UAddrDefined in base-orphans-0.9.3 · Data.Orphans · orphan
  • Eq1 UCharDefined in base-orphans-0.9.3 · Data.Orphans · orphan
  • Eq1 UDoubleDefined in base-orphans-0.9.3 · Data.Orphans · orphan
  • Eq1 UFloatDefined in base-orphans-0.9.3 · Data.Orphans · orphan
  • Eq1 UIntDefined in base-orphans-0.9.3 · Data.Orphans · orphan
  • Eq1 UWordDefined in base-orphans-0.9.3 · Data.Orphans · orphan
  • Eq1 V1Defined in base-orphans-0.9.3 · Data.Orphans · orphan
  • Eq1 f => Eq1 (Ap f)Defined in free-5.2 · Control.Applicative.Free
  • Eq1 f => Eq1 (Cofree f)Defined in free-5.2 · Control.Comonad.Cofree
  • Eq1 f => Eq1 (Free f)Defined in free-5.2 · Control.Monad.Free
  • Eq1 f => Eq1 (Free f)Defined in free-5.2 · Control.Monad.Free.Ap
  • Eq1 f => Eq1 (Coyoneda f)Defined in kan-extensions-5.2.7 · Data.Functor.Coyoneda
  • Eq1 f => Eq1 (Yoneda f)Defined in kan-extensions-5.2.7 · Data.Functor.Yoneda
  • Eq1 f => Eq1 (Lift f)Defined in transformers-0.6.1.1 · Control.Applicative.Lift
  • Eq1 m => Eq1 (IterT m)Defined in free-5.2 · Control.Monad.Trans.Iter
  • Eq1 m => Eq1 (MaybeT m)Defined in transformers-0.6.1.1 · Control.Monad.Trans.Maybe
  • Eq1 w => Eq1 (CoiterT w)Defined in free-5.2 · Control.Comonad.Trans.Coiter
  • Eq a => Eq1 (Either a)Defined in base-4.20.2.0 · Data.Functor.Classes
  • Eq a => Eq1 (Tuple2 a)Defined in base-4.20.2.0 · Data.Functor.Classes
  • Eq k => Eq1 (Map k)Defined in containers-0.7 · Data.Map.Internal
  • Eq k => Eq1 (HashMap k)Defined in unordered-containers-0.2.21 · Data.HashMap.Internal
  • (GEq1 NonV4 (Rep1 f), Generic1 f) => Eq1 (FunctorClassesDefault f)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal
  • Eq1 (Tagged s)Defined in tagged-0.8.9 · Data.Tagged
  • Eq1 (Bundle Id v)Defined in vector-0.13.2.0 · Data.Vector.Fusion.Bundle · orphan
  • Eq1 (bi a) => Eq1 (Biap bi a)Defined in bifunctors-5.6.2 · Data.Bifunctor.Biap
  • Eq1 f => Eq1 (Rec1 f)Defined in base-orphans-0.9.3 · Data.Orphans · orphan
  • Eq1 f => Eq1 (Backwards f)Defined in transformers-0.6.1.1 · Control.Applicative.Backwards
  • Eq1 f => Eq1 (IdentityT f)Defined in transformers-0.6.1.1 · Control.Monad.Trans.Identity
  • Eq1 f => Eq1 (Reverse f)Defined in transformers-0.6.1.1 · Data.Functor.Reverse
  • Eq2 p => Eq1 (Fix p)Defined in bifunctors-5.6.2 · Data.Bifunctor.Fix
  • Eq2 p => Eq1 (Join p)Defined in bifunctors-5.6.2 · Data.Bifunctor.Join
  • Eq a => Eq1 (Const a)Defined in base-4.20.2.0 · Data.Functor.Classes
  • Eq a => Eq1 (Constant a)Defined in transformers-0.6.1.1 · Data.Functor.Constant
  • (Eq1 f, Eq1 m) => Eq1 (FreeT f m)Defined in free-5.2 · Control.Monad.Trans.Free
  • (Eq1 f, Eq1 m) => Eq1 (FreeT f m)Defined in free-5.2 · Control.Monad.Trans.Free.Ap
  • (Eq1 f, Eq a) => Eq1 (CofreeF f a)Defined in free-5.2 · Control.Comonad.Trans.Cofree
  • (Eq1 f, Eq a) => Eq1 (FreeF f a)Defined in free-5.2 · Control.Monad.Trans.Free
  • (Eq1 f, Eq a) => Eq1 (FreeF f a)Defined in free-5.2 · Control.Monad.Trans.Free.Ap
  • (Eq1 f, Eq e) => Eq1 (ExceptT e f)Defined in selective-0.7.0.1 · Control.Selective.Trans.Except
  • (Functor f, Monad m, Eq1 f, Eq1 m) => Eq1 (FT f m)Defined in free-5.2 · Control.Monad.Trans.Free.Church
  • (Generic1 f, Eq1 (Rep1 f)) => Eq1 (Generically1 f)Defined in base-4.20.2.0 · Data.Functor.Classes
  • (Eq a, Eq b) => Eq1 (Tuple3 a b)Defined in base-4.20.2.0 · Data.Functor.Classes
  • (Eq e, Eq1 m) => Eq1 (ExceptT e m)Defined in transformers-0.6.1.1 · Control.Monad.Trans.Except
  • (Eq w, Eq1 m) => Eq1 (WriterT w m)Defined in transformers-0.6.1.1 · Control.Monad.Trans.Writer.Lazy
  • (Eq w, Eq1 m) => Eq1 (WriterT w m)Defined in transformers-0.6.1.1 · Control.Monad.Trans.Writer.Strict
  • Eq c => Eq1 (K1 i c)Defined in base-orphans-0.9.3 · Data.Orphans · orphan
  • (Eq1 f, Eq1 g) => Eq1 (Product f g)Defined in base-4.20.2.0 · Data.Functor.Product
  • (Eq1 f, Eq1 g) => Eq1 (Sum f g)Defined in base-4.20.2.0 · Data.Functor.Sum
  • (Eq1 f, Eq1 g) => Eq1 (f :*: g)Defined in base-orphans-0.9.3 · Data.Orphans · orphan
  • (Eq1 f, Eq1 g) => Eq1 (f :+: g)Defined in base-orphans-0.9.3 · Data.Orphans · orphan
  • (Eq a, Eq b, Eq c) => Eq1 (Tuple4 a b c)Defined in base-4.20.2.0 · Data.Functor.Classes
  • Eq1 f => Eq1 (M1 i c f)Defined in base-orphans-0.9.3 · Data.Orphans · orphan
  • Eq1 g => Eq1 (Joker g a)Defined in bifunctors-5.6.2 · Data.Bifunctor.Joker
  • (Eq1 f, Eq1 g) => Eq1 (Compose f g)Defined in base-4.20.2.0 · Data.Functor.Compose
  • (Eq1 f, Eq1 g) => Eq1 (f :.: g)Defined in base-orphans-0.9.3 · Data.Orphans · orphan
  • (Eq1 f, Eq a) => Eq1 (Clown f a)Defined in bifunctors-5.6.2 · Data.Bifunctor.Clown
  • (Eq2 p, Eq a) => Eq1 (Flip p a)Defined in bifunctors-5.6.2 · Data.Bifunctor.Flip
  • (Eq2 p, Eq a) => Eq1 (WrappedBifunctor p a)Defined in bifunctors-5.6.2 · Data.Bifunctor.Wrapped
  • (Eq2 f, Eq2 g, Eq a) => Eq1 (Product f g a)Defined in bifunctors-5.6.2 · Data.Bifunctor.Product
  • (Eq2 f, Eq2 g, Eq a) => Eq1 (Sum f g a)Defined in bifunctors-5.6.2 · Data.Bifunctor.Sum
  • (Eq1 f, Eq2 p, Eq a) => Eq1 (Tannen f p a)Defined in bifunctors-5.6.2 · Data.Bifunctor.Tannen
  • (Eq2 p, Eq1 f, Eq1 g, Eq a) => Eq1 (Biff p f g a)Defined in bifunctors-5.6.2 · Data.Bifunctor.Biff
classclass (Eq1 f, forall a. Ord a => Ord (f a)) => Ord1 (f :: Type -> Type) where
#

Lifting of the Ord class to unary type constructors.

Any instance should be subject to the following law that canonicity is preserved:

liftCompare compare = compare

This class therefore represents the generalization of Ord by decomposing its main method into a canonical lifting on a canonical inner method, so that the lifting can be reused for other arguments than the canonical one.

Methods

  • liftCompare :: (a -> b -> Ordering) -> f a -> f b -> Ordering

    Lift a compare function through the type constructor.

    The function will usually be applied to a comparison function, but the more general type ensures that the implementation uses it to compare elements of the first container with elements of the second.

Instances81Ord1, …
  • Ord1 IntMapDefined in containers-0.7 · Data.IntMap.Internal
  • Ord1 SeqDefined in containers-0.7 · Data.Sequence.Internal
  • Ord1 SetDefined in containers-0.7 · Data.Set.Internal
  • Ord1 TreeDefined in containers-0.7 · Data.Tree
  • Ord1 NonEmptyDefined in base-4.20.2.0 · Data.Functor.Classes
  • Ord1 IdentityDefined in base-4.20.2.0 · Data.Functor.Classes
  • Ord1 DownDefined in base-4.20.2.0 · Data.Functor.Classes
  • Ord1 Par1Defined in base-orphans-0.9.3 · Data.Orphans · orphan
  • Ord1 MaybeDefined in base-4.20.2.0 · Data.Functor.Classes
  • Ord1 SoloDefined in base-4.20.2.0 · Data.Functor.Classes
  • Ord1 HashedDefined in hashable-1.4.7.0 · Data.Hashable.Class
  • Ord1 ArrayDefined in primitive-0.9.1.0 · Data.Primitive.Array
  • Ord1 SmallArrayDefined in primitive-0.9.1.0 · Data.Primitive.SmallArray
  • Ord1 HashSetDefined in unordered-containers-0.2.21 · Data.HashSet.Internal
  • Ord1 VectorDefined in vector-0.13.2.0 · Data.Vector
  • Ord1 VectorDefined in vector-0.13.2.0 · Data.Vector.Strict
  • Ord1 []Defined in base-4.20.2.0 · Data.Functor.Classes
  • Ord1 ProxyDefined in base-4.20.2.0 · Data.Functor.Classes
  • Ord1 U1Defined in base-orphans-0.9.3 · Data.Orphans · orphan
  • Ord1 UAddrDefined in base-orphans-0.9.3 · Data.Orphans · orphan
  • Ord1 UCharDefined in base-orphans-0.9.3 · Data.Orphans · orphan
  • Ord1 UDoubleDefined in base-orphans-0.9.3 · Data.Orphans · orphan
  • Ord1 UFloatDefined in base-orphans-0.9.3 · Data.Orphans · orphan
  • Ord1 UIntDefined in base-orphans-0.9.3 · Data.Orphans · orphan
  • Ord1 UWordDefined in base-orphans-0.9.3 · Data.Orphans · orphan
  • Ord1 V1Defined in base-orphans-0.9.3 · Data.Orphans · orphan
  • Ord1 f => Ord1 (Ap f)Defined in free-5.2 · Control.Applicative.Free
  • Ord1 f => Ord1 (Cofree f)Defined in free-5.2 · Control.Comonad.Cofree
  • Ord1 f => Ord1 (Free f)Defined in free-5.2 · Control.Monad.Free
  • Ord1 f => Ord1 (Free f)Defined in free-5.2 · Control.Monad.Free.Ap
  • Ord1 f => Ord1 (Coyoneda f)Defined in kan-extensions-5.2.7 · Data.Functor.Coyoneda
  • Ord1 f => Ord1 (Yoneda f)Defined in kan-extensions-5.2.7 · Data.Functor.Yoneda
  • Ord1 f => Ord1 (Lift f)Defined in transformers-0.6.1.1 · Control.Applicative.Lift
  • Ord1 m => Ord1 (IterT m)Defined in free-5.2 · Control.Monad.Trans.Iter
  • Ord1 m => Ord1 (MaybeT m)Defined in transformers-0.6.1.1 · Control.Monad.Trans.Maybe
  • Ord1 w => Ord1 (CoiterT w)Defined in free-5.2 · Control.Comonad.Trans.Coiter
  • Ord a => Ord1 (Either a)Defined in base-4.20.2.0 · Data.Functor.Classes
  • Ord a => Ord1 (Tuple2 a)Defined in base-4.20.2.0 · Data.Functor.Classes
  • Ord k => Ord1 (Map k)Defined in containers-0.7 · Data.Map.Internal
  • Ord k => Ord1 (HashMap k)Defined in unordered-containers-0.2.21 · Data.HashMap.Internal
  • (GOrd1 NonV4 (Rep1 f), Generic1 f) => Ord1 (FunctorClassesDefault f)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal
  • Ord1 (Tagged s)Defined in tagged-0.8.9 · Data.Tagged
  • Ord1 (Bundle Id v)Defined in vector-0.13.2.0 · Data.Vector.Fusion.Bundle · orphan
  • Ord1 (bi a) => Ord1 (Biap bi a)Defined in bifunctors-5.6.2 · Data.Bifunctor.Biap
  • Ord1 f => Ord1 (Rec1 f)Defined in base-orphans-0.9.3 · Data.Orphans · orphan
  • Ord1 f => Ord1 (Backwards f)Defined in transformers-0.6.1.1 · Control.Applicative.Backwards
  • Ord1 f => Ord1 (IdentityT f)Defined in transformers-0.6.1.1 · Control.Monad.Trans.Identity
  • Ord1 f => Ord1 (Reverse f)Defined in transformers-0.6.1.1 · Data.Functor.Reverse
  • Ord2 p => Ord1 (Fix p)Defined in bifunctors-5.6.2 · Data.Bifunctor.Fix
  • Ord2 p => Ord1 (Join p)Defined in bifunctors-5.6.2 · Data.Bifunctor.Join
  • Ord a => Ord1 (Const a)Defined in base-4.20.2.0 · Data.Functor.Classes
  • Ord a => Ord1 (Constant a)Defined in transformers-0.6.1.1 · Data.Functor.Constant
  • (Ord1 f, Ord1 m) => Ord1 (FreeT f m)Defined in free-5.2 · Control.Monad.Trans.Free
  • (Ord1 f, Ord1 m) => Ord1 (FreeT f m)Defined in free-5.2 · Control.Monad.Trans.Free.Ap
  • (Ord1 f, Ord a) => Ord1 (CofreeF f a)Defined in free-5.2 · Control.Comonad.Trans.Cofree
  • (Ord1 f, Ord a) => Ord1 (FreeF f a)Defined in free-5.2 · Control.Monad.Trans.Free
  • (Ord1 f, Ord a) => Ord1 (FreeF f a)Defined in free-5.2 · Control.Monad.Trans.Free.Ap
  • (Ord1 f, Ord e) => Ord1 (ExceptT e f)Defined in selective-0.7.0.1 · Control.Selective.Trans.Except
  • (Functor f, Monad m, Ord1 f, Ord1 m) => Ord1 (FT f m)Defined in free-5.2 · Control.Monad.Trans.Free.Church
  • (Generic1 f, Ord1 (Rep1 f)) => Ord1 (Generically1 f)Defined in base-4.20.2.0 · Data.Functor.Classes
  • (Ord a, Ord b) => Ord1 (Tuple3 a b)Defined in base-4.20.2.0 · Data.Functor.Classes
  • (Ord e, Ord1 m) => Ord1 (ExceptT e m)Defined in transformers-0.6.1.1 · Control.Monad.Trans.Except
  • (Ord w, Ord1 m) => Ord1 (WriterT w m)Defined in transformers-0.6.1.1 · Control.Monad.Trans.Writer.Lazy
  • (Ord w, Ord1 m) => Ord1 (WriterT w m)Defined in transformers-0.6.1.1 · Control.Monad.Trans.Writer.Strict
  • Ord c => Ord1 (K1 i c)Defined in base-orphans-0.9.3 · Data.Orphans · orphan
  • (Ord1 f, Ord1 g) => Ord1 (Product f g)Defined in base-4.20.2.0 · Data.Functor.Product
  • (Ord1 f, Ord1 g) => Ord1 (Sum f g)Defined in base-4.20.2.0 · Data.Functor.Sum
  • (Ord1 f, Ord1 g) => Ord1 (f :*: g)Defined in base-orphans-0.9.3 · Data.Orphans · orphan
  • (Ord1 f, Ord1 g) => Ord1 (f :+: g)Defined in base-orphans-0.9.3 · Data.Orphans · orphan
  • (Ord a, Ord b, Ord c) => Ord1 (Tuple4 a b c)Defined in base-4.20.2.0 · Data.Functor.Classes
  • Ord1 f => Ord1 (M1 i c f)Defined in base-orphans-0.9.3 · Data.Orphans · orphan
  • Ord1 g => Ord1 (Joker g a)Defined in bifunctors-5.6.2 · Data.Bifunctor.Joker
  • (Ord1 f, Ord1 g) => Ord1 (Compose f g)Defined in base-4.20.2.0 · Data.Functor.Compose
  • (Ord1 f, Ord1 g) => Ord1 (f :.: g)Defined in base-orphans-0.9.3 · Data.Orphans · orphan
  • (Ord1 f, Ord a) => Ord1 (Clown f a)Defined in bifunctors-5.6.2 · Data.Bifunctor.Clown
  • (Ord2 p, Ord a) => Ord1 (Flip p a)Defined in bifunctors-5.6.2 · Data.Bifunctor.Flip
  • (Ord2 p, Ord a) => Ord1 (WrappedBifunctor p a)Defined in bifunctors-5.6.2 · Data.Bifunctor.Wrapped
  • (Ord2 f, Ord2 g, Ord a) => Ord1 (Product f g a)Defined in bifunctors-5.6.2 · Data.Bifunctor.Product
  • (Ord2 f, Ord2 g, Ord a) => Ord1 (Sum f g a)Defined in bifunctors-5.6.2 · Data.Bifunctor.Sum
  • (Ord1 f, Ord2 p, Ord a) => Ord1 (Tannen f p a)Defined in bifunctors-5.6.2 · Data.Bifunctor.Tannen
  • (Ord2 p, Ord1 f, Ord1 g, Ord a) => Ord1 (Biff p f g a)Defined in bifunctors-5.6.2 · Data.Bifunctor.Biff
classclass (forall a. Read a => Read (f a)) => Read1 (f :: Type -> Type) where
#

Lifting of the Read class to unary type constructors.

Any instance should be subject to the following laws that canonicity is preserved:

liftReadsPrec readsPrec readList = readsPrec

liftReadList readsPrec readList = readList

liftReadPrec readPrec readListPrec = readPrec

liftReadListPrec readPrec readListPrec = readListPrec

This class therefore represents the generalization of Read by decomposing it's methods into a canonical lifting on a canonical inner method, so that the lifting can be reused for other arguments than the canonical one.

Both liftReadsPrec and liftReadPrec exist to match the interface provided in the Read type class, but it is recommended to implement Read1 instances using liftReadPrec as opposed to liftReadsPrec, since the former is more efficient than the latter. For example:

instance Read1 T where
  liftReadPrec     = ...
  liftReadListPrec = liftReadListPrecDefault

For more information, refer to the documentation for the Read class.

Methods

Instances69Read1, …
classclass (forall a. Show a => Show (f a)) => Show1 (f :: Type -> Type) where
#

Lifting of the Show class to unary type constructors.

Any instance should be subject to the following laws that canonicity is preserved:

liftShowsPrec showsPrec showList = showsPrec

liftShowList showsPrec showList = showList

This class therefore represents the generalization of Show by decomposing it's methods into a canonical lifting on a canonical inner method, so that the lifting can be reused for other arguments than the canonical one.

Methods

Instances78Show1, …
  • Show1 ComplexDefined in base-4.20.2.0 · Data.Functor.Classes
    Example1 expression
    showsPrec1 0 (2 :+ 3) """2 :+ 3"
  • Show1 SCCDefined in containers-0.7 · Data.Graph
  • Show1 IntMapDefined in containers-0.7 · Data.IntMap.Internal
  • Show1 SeqDefined in containers-0.7 · Data.Sequence.Internal
  • Show1 SetDefined in containers-0.7 · Data.Set.Internal
  • Show1 TreeDefined in containers-0.7 · Data.Tree
  • Show1 NonEmptyDefined in base-4.20.2.0 · Data.Functor.Classes
  • Show1 IdentityDefined in base-4.20.2.0 · Data.Functor.Classes
  • Show1 DownDefined in base-4.20.2.0 · Data.Functor.Classes
  • Show1 Par1Defined in base-orphans-0.9.3 · Data.Orphans · orphan
  • Show1 MaybeDefined in base-4.20.2.0 · Data.Functor.Classes
  • Show1 SoloDefined in base-4.20.2.0 · Data.Functor.Classes
  • Show1 HashedDefined in hashable-1.4.7.0 · Data.Hashable.Class
  • Show1 ArrayDefined in primitive-0.9.1.0 · Data.Primitive.Array
  • Show1 SmallArrayDefined in primitive-0.9.1.0 · Data.Primitive.SmallArray
  • Show1 HashSetDefined in unordered-containers-0.2.21 · Data.HashSet.Internal
  • Show1 VectorDefined in vector-0.13.2.0 · Data.Vector
  • Show1 VectorDefined in vector-0.13.2.0 · Data.Vector.Strict
  • Show1 []Defined in base-4.20.2.0 · Data.Functor.Classes
  • Show1 ProxyDefined in base-4.20.2.0 · Data.Functor.Classes
  • Show1 U1Defined in base-orphans-0.9.3 · Data.Orphans · orphan
  • Show1 UAddrDefined in base-orphans-0.9.3 · Data.Orphans · orphan
  • Show1 UCharDefined in base-orphans-0.9.3 · Data.Orphans · orphan
  • Show1 UDoubleDefined in base-orphans-0.9.3 · Data.Orphans · orphan
  • Show1 UFloatDefined in base-orphans-0.9.3 · Data.Orphans · orphan
  • Show1 UIntDefined in base-orphans-0.9.3 · Data.Orphans · orphan
  • Show1 UWordDefined in base-orphans-0.9.3 · Data.Orphans · orphan
  • Show1 V1Defined in base-orphans-0.9.3 · Data.Orphans · orphan
  • Show1 f => Show1 (Cofree f)Defined in free-5.2 · Control.Comonad.Cofree
  • Show1 f => Show1 (Free f)Defined in free-5.2 · Control.Monad.Free
  • Show1 f => Show1 (Free f)Defined in free-5.2 · Control.Monad.Free.Ap
  • Show1 f => Show1 (Yoneda f)Defined in kan-extensions-5.2.7 · Data.Functor.Yoneda
  • Show1 f => Show1 (Lift f)Defined in transformers-0.6.1.1 · Control.Applicative.Lift
  • Show1 m => Show1 (IterT m)Defined in free-5.2 · Control.Monad.Trans.Iter
  • Show1 m => Show1 (MaybeT m)Defined in transformers-0.6.1.1 · Control.Monad.Trans.Maybe
  • Show1 w => Show1 (CoiterT w)Defined in free-5.2 · Control.Comonad.Trans.Coiter
  • Show a => Show1 (Either a)Defined in base-4.20.2.0 · Data.Functor.Classes
  • Show a => Show1 (Tuple2 a)Defined in base-4.20.2.0 · Data.Functor.Classes
  • Show k => Show1 (Map k)Defined in containers-0.7 · Data.Map.Internal
  • Show k => Show1 (HashMap k)Defined in unordered-containers-0.2.21 · Data.HashMap.Internal
  • (Functor f, Show1 f) => Show1 (Coyoneda f)Defined in kan-extensions-5.2.7 · Data.Functor.Coyoneda
  • (GShow1 NonV4 (Rep1 f), Generic1 f) => Show1 (FunctorClassesDefault f)Defined in transformers-compat-0.7.2 · Data.Functor.Classes.Generic.Internal
  • Show1 (Tagged s)Defined in tagged-0.8.9 · Data.Tagged
  • Show1 f => Show1 (Rec1 f)Defined in base-orphans-0.9.3 · Data.Orphans · orphan
  • Show1 f => Show1 (Backwards f)Defined in transformers-0.6.1.1 · Control.Applicative.Backwards
  • Show1 f => Show1 (IdentityT f)Defined in transformers-0.6.1.1 · Control.Monad.Trans.Identity
  • Show1 f => Show1 (Reverse f)Defined in transformers-0.6.1.1 · Data.Functor.Reverse
  • Show2 p => Show1 (Fix p)Defined in bifunctors-5.6.2 · Data.Bifunctor.Fix
  • Show2 p => Show1 (Join p)Defined in bifunctors-5.6.2 · Data.Bifunctor.Join
  • Show a => Show1 (Const a)Defined in base-4.20.2.0 · Data.Functor.Classes
  • Show a => Show1 (Constant a)Defined in transformers-0.6.1.1 · Data.Functor.Constant
  • (Show1 f, Show1 m) => Show1 (FreeT f m)Defined in free-5.2 · Control.Monad.Trans.Free
  • (Show1 f, Show1 m) => Show1 (FreeT f m)Defined in free-5.2 · Control.Monad.Trans.Free.Ap
  • (Show1 f, Show a) => Show1 (CofreeF f a)Defined in free-5.2 · Control.Comonad.Trans.Cofree
  • (Show1 f, Show a) => Show1 (FreeF f a)Defined in free-5.2 · Control.Monad.Trans.Free
  • (Show1 f, Show a) => Show1 (FreeF f a)Defined in free-5.2 · Control.Monad.Trans.Free.Ap
  • (Show1 f, Show e) => Show1 (ExceptT e f)Defined in selective-0.7.0.1 · Control.Selective.Trans.Except
  • (Show a, Show b) => Show1 (Tuple3 a b)Defined in base-4.20.2.0 · Data.Functor.Classes
  • (Show e, Show1 m) => Show1 (ExceptT e m)Defined in transformers-0.6.1.1 · Control.Monad.Trans.Except
  • (Show w, Show1 m) => Show1 (WriterT w m)Defined in transformers-0.6.1.1 · Control.Monad.Trans.Writer.Lazy
  • (Show w, Show1 m) => Show1 (WriterT w m)Defined in transformers-0.6.1.1 · Control.Monad.Trans.Writer.Strict
  • Show c => Show1 (K1 i c)Defined in base-orphans-0.9.3 · Data.Orphans · orphan
  • (Show1 f, Show1 g) => Show1 (Product f g)Defined in base-4.20.2.0 · Data.Functor.Product
  • (Show1 f, Show1 g) => Show1 (Sum f g)Defined in base-4.20.2.0 · Data.Functor.Sum
  • (Show1 f, Show1 g) => Show1 (f :*: g)Defined in base-orphans-0.9.3 · Data.Orphans · orphan
  • (Show1 f, Show1 g) => Show1 (f :+: g)Defined in base-orphans-0.9.3 · Data.Orphans · orphan
  • (Show a, Show b, Show c) => Show1 (Tuple4 a b c)Defined in base-4.20.2.0 · Data.Functor.Classes
  • Show1 f => Show1 (M1 i c f)Defined in base-orphans-0.9.3 · Data.Orphans · orphan
  • Show1 g => Show1 (Joker g a)Defined in bifunctors-5.6.2 · Data.Bifunctor.Joker
  • (Show1 f, Show1 g) => Show1 (Compose f g)Defined in base-4.20.2.0 · Data.Functor.Compose
  • (Show1 f, Show1 g) => Show1 (f :.: g)Defined in base-orphans-0.9.3 · Data.Orphans · orphan
  • (Show1 f, Show a) => Show1 (Clown f a)Defined in bifunctors-5.6.2 · Data.Bifunctor.Clown
  • (Show2 p, Show a) => Show1 (Flip p a)Defined in bifunctors-5.6.2 · Data.Bifunctor.Flip
  • (Show2 p, Show a) => Show1 (WrappedBifunctor p a)Defined in bifunctors-5.6.2 · Data.Bifunctor.Wrapped
  • (Show2 f, Show2 g, Show a) => Show1 (Product f g a)Defined in bifunctors-5.6.2 · Data.Bifunctor.Product
  • (Show2 f, Show2 g, Show a) => Show1 (Sum f g a)Defined in bifunctors-5.6.2 · Data.Bifunctor.Sum
  • (Show1 f, Show2 p, Show a) => Show1 (Tannen f p a)Defined in bifunctors-5.6.2 · Data.Bifunctor.Tannen
  • (Show2 p, Show1 f, Show1 g, Show a) => Show1 (Biff p f g a)Defined in bifunctors-5.6.2 · Data.Bifunctor.Biff
classclass (forall a. Eq a => Eq1 (f a)) => Eq2 (f :: Type -> Type -> Type) where
#

Lifting of the Eq class to binary type constructors.

Methods

  • liftEq2 :: (a -> b -> Bool) -> (c -> d -> Bool) -> f a c -> f b d -> Bool

    Lift equality tests through the type constructor.

    The function will usually be applied to equality functions, but the more general type ensures that the implementation uses them to compare elements of the first container with elements of the second.

Instances21Eq2, …
  • Eq2 MapDefined in containers-0.7 · Data.Map.Internal
  • Eq2 EitherDefined in base-4.20.2.0 · Data.Functor.Classes
  • Eq2 Tuple2Defined in base-4.20.2.0 · Data.Functor.Classes
  • Eq2 HashMapDefined in unordered-containers-0.2.21 · Data.HashMap.Internal
  • Eq1 f => Eq2 (CofreeF f)Defined in free-5.2 · Control.Comonad.Trans.Cofree
  • Eq1 f => Eq2 (FreeF f)Defined in free-5.2 · Control.Monad.Trans.Free
  • Eq1 f => Eq2 (FreeF f)Defined in free-5.2 · Control.Monad.Trans.Free.Ap
  • Eq2 ConstDefined in base-4.20.2.0 · Data.Functor.Classes
  • Eq2 TaggedDefined in tagged-0.8.9 · Data.Tagged
  • Eq2 ConstantDefined in transformers-0.6.1.1 · Data.Functor.Constant
  • Eq2 bi => Eq2 (Biap bi)Defined in bifunctors-5.6.2 · Data.Bifunctor.Biap
  • Eq a => Eq2 (Tuple3 a)Defined in base-4.20.2.0 · Data.Functor.Classes
    Example1 expression
    eq2 ('x', True, "str") ('x', True, "str")True
  • (Eq a, Eq b) => Eq2 (Tuple4 a b)Defined in base-4.20.2.0 · Data.Functor.Classes
    Example1 expression
    eq2 ('x', True, "str", 2) ('x', True, "str", 2 :: Int)True
  • Eq1 f => Eq2 (Clown f)Defined in bifunctors-5.6.2 · Data.Bifunctor.Clown
  • Eq1 g => Eq2 (Joker g)Defined in bifunctors-5.6.2 · Data.Bifunctor.Joker
  • Eq2 p => Eq2 (Flip p)Defined in bifunctors-5.6.2 · Data.Bifunctor.Flip
  • Eq2 p => Eq2 (WrappedBifunctor p)Defined in bifunctors-5.6.2 · Data.Bifunctor.Wrapped
  • (Eq2 f, Eq2 g) => Eq2 (Product f g)Defined in bifunctors-5.6.2 · Data.Bifunctor.Product
  • (Eq2 f, Eq2 g) => Eq2 (Sum f g)Defined in bifunctors-5.6.2 · Data.Bifunctor.Sum
  • (Eq1 f, Eq2 p) => Eq2 (Tannen f p)Defined in bifunctors-5.6.2 · Data.Bifunctor.Tannen
  • (Eq2 p, Eq1 f, Eq1 g) => Eq2 (Biff p f g)Defined in bifunctors-5.6.2 · Data.Bifunctor.Biff
classclass (Eq2 f, forall a. Ord a => Ord1 (f a)) => Ord2 (f :: Type -> Type -> Type) where
#

Lifting of the Ord class to binary type constructors.

Methods

  • liftCompare2 :: (a -> b -> Ordering) -> (c -> d -> Ordering) -> f a c -> f b d -> Ordering

    Lift compare functions through the type constructor.

    The function will usually be applied to comparison functions, but the more general type ensures that the implementation uses them to compare elements of the first container with elements of the second.

Instances21Ord2, …
  • Ord2 MapDefined in containers-0.7 · Data.Map.Internal
  • Ord2 EitherDefined in base-4.20.2.0 · Data.Functor.Classes
  • Ord2 Tuple2Defined in base-4.20.2.0 · Data.Functor.Classes
  • Ord2 HashMapDefined in unordered-containers-0.2.21 · Data.HashMap.Internal
  • Ord1 f => Ord2 (CofreeF f)Defined in free-5.2 · Control.Comonad.Trans.Cofree
  • Ord1 f => Ord2 (FreeF f)Defined in free-5.2 · Control.Monad.Trans.Free
  • Ord1 f => Ord2 (FreeF f)Defined in free-5.2 · Control.Monad.Trans.Free.Ap
  • Ord2 ConstDefined in base-4.20.2.0 · Data.Functor.Classes
  • Ord2 TaggedDefined in tagged-0.8.9 · Data.Tagged
  • Ord2 ConstantDefined in transformers-0.6.1.1 · Data.Functor.Constant
  • Ord2 bi => Ord2 (Biap bi)Defined in bifunctors-5.6.2 · Data.Bifunctor.Biap
  • Ord a => Ord2 (Tuple3 a)Defined in base-4.20.2.0 · Data.Functor.Classes
    Example1 expression
    compare2 ('x', True, "aaa") ('x', True, "zzz")LT
  • (Ord a, Ord b) => Ord2 (Tuple4 a b)Defined in base-4.20.2.0 · Data.Functor.Classes
    Example1 expression
    compare2 ('x', True, "str", 2) ('x', True, "str", 3 :: Int)LT
  • Ord1 f => Ord2 (Clown f)Defined in bifunctors-5.6.2 · Data.Bifunctor.Clown
  • Ord1 g => Ord2 (Joker g)Defined in bifunctors-5.6.2 · Data.Bifunctor.Joker
  • Ord2 p => Ord2 (Flip p)Defined in bifunctors-5.6.2 · Data.Bifunctor.Flip
  • Ord2 p => Ord2 (WrappedBifunctor p)Defined in bifunctors-5.6.2 · Data.Bifunctor.Wrapped
  • (Ord2 f, Ord2 g) => Ord2 (Product f g)Defined in bifunctors-5.6.2 · Data.Bifunctor.Product
  • (Ord2 f, Ord2 g) => Ord2 (Sum f g)Defined in bifunctors-5.6.2 · Data.Bifunctor.Sum
  • (Ord1 f, Ord2 p) => Ord2 (Tannen f p)Defined in bifunctors-5.6.2 · Data.Bifunctor.Tannen
  • (Ord2 p, Ord1 f, Ord1 g) => Ord2 (Biff p f g)Defined in bifunctors-5.6.2 · Data.Bifunctor.Biff
classclass (forall a. Read a => Read1 (f a)) => Read2 (f :: Type -> Type -> Type) where
#

Lifting of the Read class to binary type constructors.

Both liftReadsPrec2 and liftReadPrec2 exist to match the interface provided in the Read type class, but it is recommended to implement Read2 instances using liftReadPrec2 as opposed to liftReadsPrec2, since the former is more efficient than the latter. For example:

instance Read2 T where
  liftReadPrec2     = ...
  liftReadListPrec2 = liftReadListPrec2Default

For more information, refer to the documentation for the Read class.

Methods

Instances18Read2, …
  • Read2 EitherDefined in base-4.20.2.0 · Data.Functor.Classes
  • Read2 Tuple2Defined in base-4.20.2.0 · Data.Functor.Classes
  • Read1 f => Read2 (CofreeF f)Defined in free-5.2 · Control.Comonad.Trans.Cofree
  • Read1 f => Read2 (FreeF f)Defined in free-5.2 · Control.Monad.Trans.Free
  • Read1 f => Read2 (FreeF f)Defined in free-5.2 · Control.Monad.Trans.Free.Ap
  • Read2 ConstDefined in base-4.20.2.0 · Data.Functor.Classes
  • Read2 TaggedDefined in tagged-0.8.9 · Data.Tagged
  • Read2 ConstantDefined in transformers-0.6.1.1 · Data.Functor.Constant
  • Read a => Read2 (Tuple3 a)Defined in base-4.20.2.0 · Data.Functor.Classes
    Example1 expression
    readPrec_to_S readPrec2 0 "('x', True, 2)" :: [((Char, Bool, Int), String)][(('x',True,2),"")]
  • (Read a, Read b) => Read2 (Tuple4 a b)Defined in base-4.20.2.0 · Data.Functor.Classes
    Example1 expression
    readPrec_to_S readPrec2 0 "('x', True, 2, 4.5)" :: [((Char, Bool, Int, Double), String)][(('x',True,2,4.5),"")]
  • Read1 f => Read2 (Clown f)Defined in bifunctors-5.6.2 · Data.Bifunctor.Clown
  • Read1 g => Read2 (Joker g)Defined in bifunctors-5.6.2 · Data.Bifunctor.Joker
  • Read2 p => Read2 (Flip p)Defined in bifunctors-5.6.2 · Data.Bifunctor.Flip
  • Read2 p => Read2 (WrappedBifunctor p)Defined in bifunctors-5.6.2 · Data.Bifunctor.Wrapped
  • (Read2 f, Read2 g) => Read2 (Product f g)Defined in bifunctors-5.6.2 · Data.Bifunctor.Product
  • (Read2 f, Read2 g) => Read2 (Sum f g)Defined in bifunctors-5.6.2 · Data.Bifunctor.Sum
  • (Read1 f, Read2 p) => Read2 (Tannen f p)Defined in bifunctors-5.6.2 · Data.Bifunctor.Tannen
  • (Read2 p, Read1 f, Read1 g) => Read2 (Biff p f g)Defined in bifunctors-5.6.2 · Data.Bifunctor.Biff
classclass (forall a. Show a => Show1 (f a)) => Show2 (f :: Type -> Type -> Type) where
#

Lifting of the Show class to binary type constructors.

Methods

Instances20Show2, …
  • Show2 MapDefined in containers-0.7 · Data.Map.Internal
  • Show2 EitherDefined in base-4.20.2.0 · Data.Functor.Classes
  • Show2 Tuple2Defined in base-4.20.2.0 · Data.Functor.Classes
  • Show2 HashMapDefined in unordered-containers-0.2.21 · Data.HashMap.Internal
  • Show1 f => Show2 (CofreeF f)Defined in free-5.2 · Control.Comonad.Trans.Cofree
  • Show1 f => Show2 (FreeF f)Defined in free-5.2 · Control.Monad.Trans.Free
  • Show1 f => Show2 (FreeF f)Defined in free-5.2 · Control.Monad.Trans.Free.Ap
  • Show2 ConstDefined in base-4.20.2.0 · Data.Functor.Classes
  • Show2 TaggedDefined in tagged-0.8.9 · Data.Tagged
  • Show2 ConstantDefined in transformers-0.6.1.1 · Data.Functor.Constant
  • Show a => Show2 (Tuple3 a)Defined in base-4.20.2.0 · Data.Functor.Classes
    Example1 expression
    showsPrec2 0 ('x', True, 2 :: Int) """('x',True,2)"
  • (Show a, Show b) => Show2 (Tuple4 a b)Defined in base-4.20.2.0 · Data.Functor.Classes
    Example1 expression
    showsPrec2 0 ('x', True, 2 :: Int, 4.5 :: Double) """('x',True,2,4.5)"
  • Show1 f => Show2 (Clown f)Defined in bifunctors-5.6.2 · Data.Bifunctor.Clown
  • Show1 g => Show2 (Joker g)Defined in bifunctors-5.6.2 · Data.Bifunctor.Joker
  • Show2 p => Show2 (Flip p)Defined in bifunctors-5.6.2 · Data.Bifunctor.Flip
  • Show2 p => Show2 (WrappedBifunctor p)Defined in bifunctors-5.6.2 · Data.Bifunctor.Wrapped
  • (Show2 f, Show2 g) => Show2 (Product f g)Defined in bifunctors-5.6.2 · Data.Bifunctor.Product
  • (Show2 f, Show2 g) => Show2 (Sum f g)Defined in bifunctors-5.6.2 · Data.Bifunctor.Sum
  • (Show1 f, Show2 p) => Show2 (Tannen f p)Defined in bifunctors-5.6.2 · Data.Bifunctor.Tannen
  • (Show2 p, Show1 f, Show1 g) => Show2 (Biff p f g)Defined in bifunctors-5.6.2 · Data.Bifunctor.Biff
valueeq1 :: (Eq1 f, Eq a) => f a -> f a -> Bool
#

Lift the standard (==) function through the type constructor.

valueeq2 :: (Eq2 f, Eq a, Eq b) => f a b -> f a b -> Bool
#

Lift the standard (==) function through the type constructor.