ftypes-0.1.0.0: Initial project template from stack

Safe HaskellSafe
LanguageHaskell2010

FTypes.Classes.FApplicative

Documentation

class FFunctor r => FApplicative r where

Minimal complete definition

fpure, (<<*>>)

Methods

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

(<<*>>) :: r (f ==>> g) -> r f -> r g infixl 4

(*>>) :: r f -> r g -> r g infixl 4

(<<*) :: r f -> r g -> r f infixl 4

Instances

FApplicative * r => FApplicative * (Precompose r f) 
(FApplicative * rec, Applicative f) => FApplicative * (Postcompose rec f) 
FApplicative k (FApply k x) 
(FApplicative k r, FApplicative k s) => FApplicative k (FProd (k -> *) r s) 

fpureTrafo :: FApplicative r => (f ==> g) -> r (f ==>> g)

fliftA1 :: FFunctor r => (forall a. f a -> g a) -> r f -> r g

fliftA2 :: FApplicative r => (forall a. f a -> g a -> h a) -> r f -> r g -> r h

fliftA3 :: FApplicative r => (forall a. f a -> g a -> h a -> i a) -> r f -> r g -> r h -> r i

fliftA4 :: FApplicative r => (forall a. f a -> g a -> h a -> i a -> j a) -> r f -> r g -> r h -> r i -> r j

fliftA5 :: FApplicative r => (forall a. f a -> g a -> h a -> i a -> j a -> k a) -> r f -> r g -> r h -> r i -> r j -> r k

fliftA6 :: FApplicative r => (forall a. f a -> g a -> h a -> i a -> j a -> k a -> l a) -> r f -> r g -> r h -> r i -> r j -> r k -> r l

fliftA7 :: FApplicative r => (forall a. f a -> g a -> h a -> i a -> j a -> k a -> l a -> m a) -> r f -> r g -> r h -> r i -> r j -> r k -> r l -> r m

fliftA8 :: FApplicative r => (forall a. f a -> g a -> h a -> i a -> j a -> k a -> l a -> m a -> n a) -> r f -> r g -> r h -> r i -> r j -> r k -> r l -> r m -> r n