Applicative

Definitions

def *>(ma: m[a], mb: m[b]): m[b]Source

*> is an operator alias for productRight.

def <*(ma: m[a], mb: m[b]): m[a]Source

<* is an operator alias for productLeft.

def <**>(ma: m[a], mf: m[a -> b \ ef]): m[b] \ efSource

<**> is a variant of the operator <*> with its arguments flipped.

The order of evaluation is ma then mf.

def <*>(mf: m[a -> b \ ef], ma: m[a]): m[b] \ efSource

<*> is an operator alias for ap.

def product(fa: m[a], fb: m[b]): m[(a, b)]Source

Chain two applicative actions, returns the product of their results.

def product3(x1: m[t1], x2: m[t2], x3: m[t3]): m[(t1, t2, t3)]Source

Chain three applicative actions, return the 3-tuple of their results.

def product4(x1: m[t1], x2: m[t2], x3: m[t3], x4: m[t4]): m[(t1, t2, t3, t4)]Source

Chain four applicative actions, return the 4-tuple of their results.

def product5(x1: m[t1], x2: m[t2], x3: m[t3], x4: m[t4], x5: m[t5]): m[(t1, t2, t3, t4, t5)]Source

Chain five applicative actions, return the 5-tuple of their results.

def productLeft(fa: m[a], fb: m[b]): m[a]Source

Chain two applicative actions, return only the result of the first.

def productRight(fa: m[a], fb: m[b]): m[b]Source

Chain two applicative actions, return only the result of the second.