Groovy Documentation

com.github.mperry.fg.typeclass
[Groovy] Class Applicative

java.lang.Object
  com.github.mperry.fg.typeclass.Applicative
All Implemented Interfaces:
Functor

@groovy.transform.TypeChecked
abstract class Applicative

Created by MarkPerry on 9/04/2014.

See Also:
http
http


Method Summary
App apply(App t1, App t2)

(<*>) :: f (a -> b) -> f a -> f b

App left(App a1, App a2)

(<*) :: f a -> f b -> f a

App liftA(F f, App a1)

liftA :: Applicative f => (a -> b) -> f a -> f b

App liftA2(F2 f, App apa, App apb)

liftA2 :: Applicative f => (a -> b -> c) -> f a -> f b -> f c

App liftA3(F3 f, App apa, App apb, App apc)

liftA3 :: Applicative f => (a -> b -> c -> d) -> f a -> f b -> f c -> f d

App pure(A a)

pure :: a -> f a

App right(App a1, App a2)

(*>) :: f a -> f b -> f b

 
Methods inherited from class java.lang.Object
java.lang.Object#wait(long, int), java.lang.Object#wait(long), java.lang.Object#wait(), java.lang.Object#equals(java.lang.Object), java.lang.Object#toString(), java.lang.Object#hashCode(), java.lang.Object#getClass(), java.lang.Object#notify(), java.lang.Object#notifyAll()
 

Method Detail

apply

App apply(App t1, App t2)
(<*>) :: f (a -> b) -> f a -> f b


left

App left(App a1, App a2)
(<*) :: f a -> f b -> f a


liftA

App liftA(F f, App a1)
liftA :: Applicative f => (a -> b) -> f a -> f b


liftA2

App liftA2(F2 f, App apa, App apb)
liftA2 :: Applicative f => (a -> b -> c) -> f a -> f b -> f c


liftA3

App liftA3(F3 f, App apa, App apb, App apc)
liftA3 :: Applicative f => (a -> b -> c -> d) -> f a -> f b -> f c -> f d


pure

App pure(A a)
pure :: a -> f a


right

App right(App a1, App a2)
(*>) :: f a -> f b -> f b


 

Groovy Documentation