first-class-instances-0.1.0.0: First class typeclass instances

Safe HaskellNone
LanguageHaskell2010

FCI.Control.Applicative

Synopsis

Documentation

pattern Applicative :: (Inst (Functor f)) -> (forall (a :: Type). a -> f a) -> (forall (a :: Type) (b :: Type). f (a -> b) -> f a -> f b) -> (forall (a :: Type) (b :: Type) (c :: Type). (a -> b -> c) -> f a -> f b -> f c) -> (forall (a :: Type) (b :: Type). f a -> f b -> f b) -> (forall (a :: Type) (b :: Type). f a -> f b -> f a) -> Dict (Applicative (f :: Type -> Type)) Source #

$sel:_pure:Applicative :: Dict (Applicative (f :: Type -> Type)) -> forall (a :: Type). a -> f a Source #

$sel:|<*>:Applicative :: Dict (Applicative (f :: Type -> Type)) -> forall (a :: Type) (b :: Type). f (a -> b) -> f a -> f b Source #

$sel:_liftA2:Applicative :: Dict (Applicative (f :: Type -> Type)) -> forall (a :: Type) (b :: Type) (c :: Type). (a -> b -> c) -> f a -> f b -> f c Source #

$sel:|*>:Applicative :: Dict (Applicative (f :: Type -> Type)) -> forall (a :: Type) (b :: Type). f a -> f b -> f b Source #

$sel:|<*:Applicative :: Dict (Applicative (f :: Type -> Type)) -> forall (a :: Type) (b :: Type). f a -> f b -> f a Source #

applyApplicative Source #

Arguments

:: (forall a. a -> f a)

pure

-> (forall a b. f (a -> b) -> f a -> f b)

(<*>)

-> Inst (Applicative f) 

Creates Dict instance from apply (<*>) definition.

liftA2Applicative Source #

Arguments

:: (forall a. a -> f a)

pure

-> (forall a b c. (a -> b -> c) -> f a -> f b -> f c)

liftA2

-> Inst (Applicative f) 

Creates Dict instance from liftA2 definition.

coerceApplicative :: forall f. Newtype f => Inst (Applicative f) Source #

Creates Dict instance for any type that can be "coerced out".