MonadP

optparse_applicative.internal.MonadP
trait MonadP[F[_]] extends MonadPlus[F]

Attributes

Graph
Supertypes
trait MonadPlus[F]
trait ApplicativePlus[F]
trait PlusEmpty[F]
trait Plus[F]
trait Monad[F]
trait Bind[F]
trait Applicative[F]
trait InvariantApplicative[F]
trait Apply[F]
trait Functor[F]
trait InvariantFunctor[F]
class Object
trait Matchable
class Any
Show all

Members list

Type members

Inherited classlikes

trait ApplicativeLaw extends ApplyLaw

Attributes

Inherited from:
Applicative
Supertypes
trait ApplyLaw
trait FunctorLaw
class Object
trait Matchable
class Any
Show all
Known subtypes
trait ApplyLaw extends FunctorLaw

Attributes

Inherited from:
Apply
Supertypes
trait FunctorLaw
class Object
trait Matchable
class Any
Known subtypes
trait BindLaw extends ApplyLaw

Attributes

Inherited from:
Bind
Supertypes
trait ApplyLaw
trait FunctorLaw
class Object
trait Matchable
class Any
Show all
Known subtypes
trait EmptyLaw extends PlusLaw

Attributes

Inherited from:
PlusEmpty
Supertypes
trait PlusLaw
class Object
trait Matchable
class Any
Known subtypes

Attributes

Inherited from:
Functor
Supertypes
class Object
trait Matchable
class Any
Known subtypes
trait ApplyLaw
trait MonadLaw
trait MonadPlusLaw
trait BindLaw
Show all

Attributes

Inherited from:
InvariantFunctor
Supertypes
class Object
trait Matchable
class Any
Known subtypes
trait FunctorLaw
trait ApplyLaw
trait MonadLaw
trait MonadPlusLaw
trait BindLaw
Show all

Attributes

Inherited from:
Monad
Supertypes
trait BindLaw
trait ApplyLaw
trait FunctorLaw
class Object
trait Matchable
class Any
Show all
Known subtypes
trait MonadPlusLaw extends EmptyLaw, MonadLaw

Attributes

Inherited from:
MonadPlus
Supertypes
trait MonadLaw
trait BindLaw
trait ApplyLaw
trait FunctorLaw
trait EmptyLaw
trait PlusLaw
class Object
trait Matchable
class Any
Show all
Known subtypes
trait PlusLaw

Attributes

Inherited from:
Plus
Supertypes
class Object
trait Matchable
class Any
Known subtypes

Attributes

Inherited from:
MonadPlus
Supertypes
trait MonadPlusLaw
trait MonadLaw
trait BindLaw
trait ApplyLaw
trait FunctorLaw
trait EmptyLaw
trait PlusLaw
class Object
trait Matchable
class Any
Show all

Value members

Abstract methods

def attempt[A](fa: F[A]): F[ParseError \/ A]
def error[A](e: ParseError): F[A]
def exit[A, B](p: Parser[B], a: Option[A]): F[A]
def missingArg[A](e: ParseError): F[A]
def setContext[A](s: Option[String], p: ParserInfo[A]): F[Unit]
def setParser[A](s: Option[String], p: Parser[A]): F[Unit]

Inherited methods

override def ap[A, B](fa: => F[A])(f: => F[A => B]): F[B]

Sequence f, then fa, combining their results by function application.

Sequence f, then fa, combining their results by function application.

NB: with respect to apply2 and all other combinators, as well as scalaz.Bind, the f action appears to the left. So f should be the "first" F-action to perform. This is in accordance with all other implementations of this typeclass in common use, which are "function first".

Attributes

Definition Classes
Bind -> Apply
Inherited from:
Bind
def ap2[A, B, C](fa: => F[A], fb: => F[B])(f: F[(A, B) => C]): F[C]

Attributes

Inherited from:
Apply
def ap3[A, B, C, D](fa: => F[A], fb: => F[B], fc: => F[C])(f: F[(A, B, C) => D]): F[D]

Attributes

Inherited from:
Apply
def ap4[A, B, C, D, E](fa: => F[A], fb: => F[B], fc: => F[C], fd: => F[D])(f: F[(A, B, C, D) => E]): F[E]

Attributes

Inherited from:
Apply
def ap5[A, B, C, D, E, R](fa: => F[A], fb: => F[B], fc: => F[C], fd: => F[D], fe: => F[E])(f: F[(A, B, C, D, E) => R]): F[R]

Attributes

Inherited from:
Apply
def ap6[A, B, C, D, E, FF, R](fa: => F[A], fb: => F[B], fc: => F[C], fd: => F[D], fe: => F[E], ff: => F[FF])(f: F[(A, B, C, D, E, FF) => R]): F[R]

Attributes

Inherited from:
Apply
def ap7[A, B, C, D, E, FF, G, R](fa: => F[A], fb: => F[B], fc: => F[C], fd: => F[D], fe: => F[E], ff: => F[FF], fg: => F[G])(f: F[(A, B, C, D, E, FF, G) => R]): F[R]

Attributes

Inherited from:
Apply
def ap8[A, B, C, D, E, FF, G, H, R](fa: => F[A], fb: => F[B], fc: => F[C], fd: => F[D], fe: => F[E], ff: => F[FF], fg: => F[G], fh: => F[H])(f: F[(A, B, C, D, E, FF, G, H) => R]): F[R]

Attributes

Inherited from:
Apply
def apF[A, B](f: => F[A => B]): (F[A]) => F[B]

Flipped variant of ap.

Flipped variant of ap.

Attributes

Inherited from:
Apply

Attributes

Inherited from:
Applicative
def apply[A, B](fa: F[A])(f: A => B): F[B]

Alias for map.

Alias for map.

Attributes

Inherited from:
Functor
def apply10[A, B, C, D, E, FF, G, H, I, J, R](fa: => F[A], fb: => F[B], fc: => F[C], fd: => F[D], fe: => F[E], ff: => F[FF], fg: => F[G], fh: => F[H], fi: => F[I], fj: => F[J])(f: (A, B, C, D, E, FF, G, H, I, J) => R): F[R]

Attributes

Inherited from:
Apply
def apply11[A, B, C, D, E, FF, G, H, I, J, K, R](fa: => F[A], fb: => F[B], fc: => F[C], fd: => F[D], fe: => F[E], ff: => F[FF], fg: => F[G], fh: => F[H], fi: => F[I], fj: => F[J], fk: => F[K])(f: (A, B, C, D, E, FF, G, H, I, J, K) => R): F[R]

Attributes

Inherited from:
Apply
def apply12[A, B, C, D, E, FF, G, H, I, J, K, L, R](fa: => F[A], fb: => F[B], fc: => F[C], fd: => F[D], fe: => F[E], ff: => F[FF], fg: => F[G], fh: => F[H], fi: => F[I], fj: => F[J], fk: => F[K], fl: => F[L])(f: (A, B, C, D, E, FF, G, H, I, J, K, L) => R): F[R]

Attributes

Inherited from:
Apply
override def apply2[A, B, C](fa: => F[A], fb: => F[B])(f: (A, B) => C): F[C]

Attributes

Definition Classes
Bind -> Apply
Inherited from:
Bind
def apply3[A, B, C, D](fa: => F[A], fb: => F[B], fc: => F[C])(f: (A, B, C) => D): F[D]

Attributes

Inherited from:
Apply
def apply4[A, B, C, D, E](fa: => F[A], fb: => F[B], fc: => F[C], fd: => F[D])(f: (A, B, C, D) => E): F[E]

Attributes

Inherited from:
Apply
def apply5[A, B, C, D, E, R](fa: => F[A], fb: => F[B], fc: => F[C], fd: => F[D], fe: => F[E])(f: (A, B, C, D, E) => R): F[R]

Attributes

Inherited from:
Apply
def apply6[A, B, C, D, E, FF, R](fa: => F[A], fb: => F[B], fc: => F[C], fd: => F[D], fe: => F[E], ff: => F[FF])(f: (A, B, C, D, E, FF) => R): F[R]

Attributes

Inherited from:
Apply
def apply7[A, B, C, D, E, FF, G, R](fa: => F[A], fb: => F[B], fc: => F[C], fd: => F[D], fe: => F[E], ff: => F[FF], fg: => F[G])(f: (A, B, C, D, E, FF, G) => R): F[R]

Attributes

Inherited from:
Apply
def apply8[A, B, C, D, E, FF, G, H, R](fa: => F[A], fb: => F[B], fc: => F[C], fd: => F[D], fe: => F[E], ff: => F[FF], fg: => F[G], fh: => F[H])(f: (A, B, C, D, E, FF, G, H) => R): F[R]

Attributes

Inherited from:
Apply
def apply9[A, B, C, D, E, FF, G, H, I, R](fa: => F[A], fb: => F[B], fc: => F[C], fd: => F[D], fe: => F[E], ff: => F[FF], fg: => F[G], fh: => F[H], fi: => F[I])(f: (A, B, C, D, E, FF, G, H, I) => R): F[R]

Attributes

Inherited from:
Apply
def applyApplicative: Applicative[[α] =>> F[α] \/ α]

Add a unit to any Apply to form an Applicative.

Add a unit to any Apply to form an Applicative.

Attributes

Inherited from:
Apply

Attributes

Inherited from:
Apply
final def applying1[Z, A1](f: A1 => Z)(implicit a1: F[A1]): F[Z]

Attributes

Inherited from:
Apply
final def applying2[Z, A1, A2](f: (A1, A2) => Z)(implicit a1: F[A1], a2: F[A2]): F[Z]

Attributes

Inherited from:
Apply
final def applying3[Z, A1, A2, A3](f: (A1, A2, A3) => Z)(implicit a1: F[A1], a2: F[A2], a3: F[A3]): F[Z]

Attributes

Inherited from:
Apply
final def applying4[Z, A1, A2, A3, A4](f: (A1, A2, A3, A4) => Z)(implicit a1: F[A1], a2: F[A2], a3: F[A3], a4: F[A4]): F[Z]

Attributes

Inherited from:
Apply
def bicompose[G[_, _] : Bifunctor]: Bifunctor[[α, β] =>> F[G[α, β]]]

The composition of Functor F and Bifunctor G, [x, y]F[G[x, y]], is a Bifunctor

The composition of Functor F and Bifunctor G, [x, y]F[G[x, y]], is a Bifunctor

Attributes

Inherited from:
Functor
def bind[A, B](fa: F[A])(f: A => F[B]): F[B]

Equivalent to join(map(fa)(f)).

Equivalent to join(map(fa)(f)).

Attributes

Inherited from:
Bind

Attributes

Inherited from:
Bind
override def compose[G[_]](implicit G0: Applicative[G]): ApplicativePlus[[α] =>> F[G[α]]]

The composition of ApplicativePlus F and Applicative G, [x]F[G[x]], is a ApplicativePlus

The composition of ApplicativePlus F and Applicative G, [x]F[G[x]], is a ApplicativePlus

Attributes

Definition Classes
ApplicativePlus -> Applicative
Inherited from:
ApplicativePlus
override def compose[G[_]]: PlusEmpty[[α] =>> F[G[α]]]

The composition of PlusEmpty F and G, [x]F[G[x]], is a PlusEmpty

The composition of PlusEmpty F and G, [x]F[G[x]], is a PlusEmpty

Attributes

Definition Classes
PlusEmpty -> Plus
Inherited from:
PlusEmpty
def compose[G[_]](implicit G0: Apply[G]): Apply[[α] =>> F[G[α]]]

The composition of Applys F and G, [x]F[G[x]], is a Apply

The composition of Applys F and G, [x]F[G[x]], is a Apply

Attributes

Inherited from:
Apply
def compose[G[_]](implicit G0: Functor[G]): Functor[[α] =>> F[G[α]]]

The composition of Functors F and G, [x]F[G[x]], is a Functor

The composition of Functors F and G, [x]F[G[x]], is a Functor

Attributes

Inherited from:
Functor
def counzip[A, B](a: F[A] \/ F[B]): F[A \/ B]

Attributes

Inherited from:
Functor
def discardLeft[A, B](fa: => F[A], fb: => F[B]): F[B]

Combine fa and fb according to Apply[F] with a function that discards the A(s)

Combine fa and fb according to Apply[F] with a function that discards the A(s)

Attributes

Inherited from:
Apply
def discardRight[A, B](fa: => F[A], fb: => F[B]): F[A]

Combine fa and fb according to Apply[F] with a function that discards the B(s)

Combine fa and fb according to Apply[F] with a function that discards the B(s)

Attributes

Inherited from:
Apply
def empty[A]: F[A]

Attributes

Inherited from:
PlusEmpty
def filter[A](fa: F[A])(f: A => Boolean): F[A]

Remove f-failing As in fa, by which we mean: in the expression filter(filter(fa)(f))(g), g will never be invoked for any a where f(a) returns false.

Remove f-failing As in fa, by which we mean: in the expression filter(filter(fa)(f))(g), g will never be invoked for any a where f(a) returns false.

Attributes

Inherited from:
MonadPlus
def filterM[A](l: IList[A])(f: A => F[Boolean]): F[IList[A]]

Filter l according to an applicative predicate.

Filter l according to an applicative predicate.

Attributes

Inherited from:
Applicative
def filterM[A](l: List[A])(f: A => F[Boolean]): F[List[A]]

Filter l according to an applicative predicate.

Filter l according to an applicative predicate.

Attributes

Inherited from:
Applicative
def filterM[A, B](map: A ==>> B)(f: B => F[Boolean])(implicit O: Order[A]): F[A ==>> B]

Filter map according to an applicative predicate. *

Filter map according to an applicative predicate. *

Attributes

Inherited from:
Applicative
override def flip: Applicative[F]

An Applicative for F in which effects happen in the opposite order.

An Applicative for F in which effects happen in the opposite order.

Attributes

Definition Classes
Applicative -> Apply
Inherited from:
Applicative
def forever[A, B](fa: F[A]): F[B]

Repeats an applicative action infinitely

Repeats an applicative action infinitely

Attributes

Inherited from:
Apply
def fpair[A](fa: F[A]): F[(A, A)]

Twin all As in fa.

Twin all As in fa.

Attributes

Inherited from:
Functor
def fproduct[A, B](fa: F[A])(f: A => B): F[(A, B)]

Pair all As in fa with the result of function application.

Pair all As in fa with the result of function application.

Attributes

Inherited from:
Functor

Attributes

Inherited from:
Functor
def icompose[G[_]](implicit G0: Contravariant[G]): Contravariant[[α] =>> F[G[α]]]

The composition of Functor F and Contravariant G, [x]F[G[x]], is contravariant.

The composition of Functor F and Contravariant G, [x]F[G[x]], is contravariant.

Attributes

Inherited from:
Functor
def ifM[B](value: F[Boolean], ifTrue: => F[B], ifFalse: => F[B]): F[B]

if lifted into a binding. Unlike lift3((t,c,a)=>if(t)c else a), this will only include context from the chosen of ifTrue and ifFalse, not the other.

if lifted into a binding. Unlike lift3((t,c,a)=>if(t)c else a), this will only include context from the chosen of ifTrue and ifFalse, not the other.

Attributes

Inherited from:
Bind

Attributes

Inherited from:
InvariantFunctor
def iterateUntil[A](f: F[A])(p: A => Boolean): F[A]

Execute an action repeatedly until its result satisfies the given predicate and return that result, discarding all others.

Execute an action repeatedly until its result satisfies the given predicate and return that result, discarding all others.

Attributes

Inherited from:
Monad
def iterateWhile[A](f: F[A])(p: A => Boolean): F[A]

Execute an action repeatedly until its result fails to satisfy the given predicate and return that result, discarding all others.

Execute an action repeatedly until its result fails to satisfy the given predicate and return that result, discarding all others.

Attributes

Inherited from:
Monad
def join[A](ffa: F[F[A]]): F[A]

Sequence the inner F of FFA after the outer F, forming a single F[A].

Sequence the inner F of FFA after the outer F, forming a single F[A].

Attributes

Inherited from:
Bind
def lefts[G[_, _], A, B](value: F[G[A, B]])(implicit G: Bifoldable[G]): F[A]

Generalized version of Haskell's lefts

Generalized version of Haskell's lefts

Attributes

Inherited from:
MonadPlus
def lift[A, B](f: A => B): (F[A]) => F[B]

Lift f into F.

Lift f into F.

Attributes

Inherited from:
Functor
def lift10[A, B, C, D, E, FF, G, H, I, J, R](f: (A, B, C, D, E, FF, G, H, I, J) => R): (F[A], F[B], F[C], F[D], F[E], F[FF], F[G], F[H], F[I], F[J]) => F[R]

Attributes

Inherited from:
Apply
def lift11[A, B, C, D, E, FF, G, H, I, J, K, R](f: (A, B, C, D, E, FF, G, H, I, J, K) => R): (F[A], F[B], F[C], F[D], F[E], F[FF], F[G], F[H], F[I], F[J], F[K]) => F[R]

Attributes

Inherited from:
Apply
def lift12[A, B, C, D, E, FF, G, H, I, J, K, L, R](f: (A, B, C, D, E, FF, G, H, I, J, K, L) => R): (F[A], F[B], F[C], F[D], F[E], F[FF], F[G], F[H], F[I], F[J], F[K], F[L]) => F[R]

Attributes

Inherited from:
Apply
def lift2[A, B, C](f: (A, B) => C): (F[A], F[B]) => F[C]

Attributes

Inherited from:
Apply
def lift3[A, B, C, D](f: (A, B, C) => D): (F[A], F[B], F[C]) => F[D]

Attributes

Inherited from:
Apply
def lift4[A, B, C, D, E](f: (A, B, C, D) => E): (F[A], F[B], F[C], F[D]) => F[E]

Attributes

Inherited from:
Apply
def lift5[A, B, C, D, E, R](f: (A, B, C, D, E) => R): (F[A], F[B], F[C], F[D], F[E]) => F[R]

Attributes

Inherited from:
Apply
def lift6[A, B, C, D, E, FF, R](f: (A, B, C, D, E, FF) => R): (F[A], F[B], F[C], F[D], F[E], F[FF]) => F[R]

Attributes

Inherited from:
Apply
def lift7[A, B, C, D, E, FF, G, R](f: (A, B, C, D, E, FF, G) => R): (F[A], F[B], F[C], F[D], F[E], F[FF], F[G]) => F[R]

Attributes

Inherited from:
Apply
def lift8[A, B, C, D, E, FF, G, H, R](f: (A, B, C, D, E, FF, G, H) => R): (F[A], F[B], F[C], F[D], F[E], F[FF], F[G], F[H]) => F[R]

Attributes

Inherited from:
Apply
def lift9[A, B, C, D, E, FF, G, H, I, R](f: (A, B, C, D, E, FF, G, H, I) => R): (F[A], F[B], F[C], F[D], F[E], F[FF], F[G], F[H], F[I]) => F[R]

Attributes

Inherited from:
Apply
def liftReducer[A, B](implicit r: Reducer[A, B]): Reducer[F[A], F[B]]

Attributes

Inherited from:
Apply
override def map[A, B](fa: F[A])(f: A => B): F[B]

Lift f into F and apply to F[A].

Lift f into F and apply to F[A].

Attributes

Definition Classes
Monad -> Applicative -> Functor
Inherited from:
Monad
def mapply[A, B](a: A)(f: F[A => B]): F[B]

Lift apply(a), and apply the result to f.

Lift apply(a), and apply the result to f.

Attributes

Inherited from:
Functor

Attributes

Inherited from:
Monad

Attributes

Inherited from:
MonadPlus
def monoid[A]: Monoid[F[A]]

Attributes

Inherited from:
PlusEmpty
def mproduct[A, B](fa: F[A])(f: A => F[B]): F[(A, B)]

Pair A with the result of function application.

Pair A with the result of function application.

Attributes

Inherited from:
Bind
def par: Par[F]

A lawful implementation of this that is isomorphic up to the methods defined on Applicative allowing for optimised parallel implementations that would otherwise violate laws of more specific typeclasses (e.g. Monad).

A lawful implementation of this that is isomorphic up to the methods defined on Applicative allowing for optimised parallel implementations that would otherwise violate laws of more specific typeclasses (e.g. Monad).

Attributes

Inherited from:
Applicative
def plus[A](a: F[A], b: => F[A]): F[A]

Attributes

Inherited from:
Plus
def plusA[A](x: => F[A], y: => F[A])(implicit sa: Semigroup[A]): F[A]

Semigroups can be added within an Applicative

Semigroups can be added within an Applicative

Attributes

Inherited from:
Applicative

Attributes

Inherited from:
PlusEmpty

Attributes

Inherited from:
Plus
def point[A](a: => A): F[A]

Attributes

Inherited from:
Applicative
def product[G[_]](implicit G0: MonadPlus[G]): MonadPlus[[α] =>> (F[α], G[α])]

The product of MonadPlus F and G, [x](F[x], G[x]]), is a MonadPlus

The product of MonadPlus F and G, [x](F[x], G[x]]), is a MonadPlus

Attributes

Inherited from:
MonadPlus
def product[G[_]](implicit G0: ApplicativePlus[G]): ApplicativePlus[[α] =>> (F[α], G[α])]

The product of ApplicativePlus F and G, [x](F[x], G[x]]), is a ApplicativePlus

The product of ApplicativePlus F and G, [x](F[x], G[x]]), is a ApplicativePlus

Attributes

Inherited from:
ApplicativePlus
def product[G[_]](implicit G0: PlusEmpty[G]): PlusEmpty[[α] =>> (F[α], G[α])]

The product of PlusEmpty F and G, [x](F[x], G[x]]), is a PlusEmpty

The product of PlusEmpty F and G, [x](F[x], G[x]]), is a PlusEmpty

Attributes

Inherited from:
PlusEmpty
def product[G[_]](implicit G0: Plus[G]): Plus[[α] =>> (F[α], G[α])]

The product of Plus F and G, [x](F[x], G[x]]), is a Plus

The product of Plus F and G, [x](F[x], G[x]]), is a Plus

Attributes

Inherited from:
Plus
def product[G[_]](implicit G0: Applicative[G]): Applicative[[α] =>> (F[α], G[α])]

The product of Applicatives F and G, [x](F[x], G[x]]), is an Applicative

The product of Applicatives F and G, [x](F[x], G[x]]), is an Applicative

Attributes

Inherited from:
Applicative
def product[G[_]](implicit G0: Apply[G]): Apply[[α] =>> (F[α], G[α])]

The product of Applys F and G, [x](F[x], G[x]]), is a Apply

The product of Applys F and G, [x](F[x], G[x]]), is a Apply

Attributes

Inherited from:
Apply
def product[G[_]](implicit G0: Functor[G]): Functor[[α] =>> (F[α], G[α])]

The product of Functors F and G, [x](F[x], G[x]]), is a Functor

The product of Functors F and G, [x](F[x], G[x]]), is a Functor

Attributes

Inherited from:
Functor
def product[G[_]](implicit G0: Monad[G]): Monad[[α] =>> (F[α], G[α])]

The product of Monad F and G, [x](F[x], G[x]]), is a Monad

The product of Monad F and G, [x](F[x], G[x]]), is a Monad

Attributes

Inherited from:
Monad
def product[G[_]](implicit G0: Bind[G]): Bind[[α] =>> (F[α], G[α])]

The product of Bind F and G, [x](F[x], G[x]]), is a Bind

The product of Bind F and G, [x](F[x], G[x]]), is a Bind

Attributes

Inherited from:
Bind
final def pure[A](a: => A): F[A]

Attributes

Inherited from:
Applicative
def replicateM[A](n: Int, fa: F[A]): F[IList[A]]

Performs the action n times, returning the list of results.

Performs the action n times, returning the list of results.

Attributes

Inherited from:
Applicative
def replicateM_[A](n: Int, fa: F[A]): F[Unit]

Performs the action n times, returning nothing.

Performs the action n times, returning nothing.

Attributes

Inherited from:
Applicative
def rights[G[_, _], A, B](value: F[G[A, B]])(implicit G: Bifoldable[G]): F[B]

Generalized version of Haskell's rights

Generalized version of Haskell's rights

Attributes

Inherited from:
MonadPlus
def semigroup[A]: Semigroup[F[A]]

Attributes

Inherited from:
Plus
def separate[G[_, _], A, B](value: F[G[A, B]])(implicit G: Bifoldable[G]): (F[A], F[B])

Generalized version of Haskell's partitionEithers

Generalized version of Haskell's partitionEithers

Attributes

Inherited from:
MonadPlus
def sequence[A, G[_] : Traverse](as: G[F[A]]): F[G[A]]

Attributes

Inherited from:
Applicative
def sequence1[A, G[_] : Traverse1](as: G[F[A]]): F[G[A]]

Attributes

Inherited from:
Apply
def strengthL[A, B](a: A, f: F[B]): F[(A, B)]

Inject a to the left of Bs in f.

Inject a to the left of Bs in f.

Attributes

Inherited from:
Functor
def strengthR[A, B](f: F[A], b: B): F[(A, B)]

Inject b to the right of As in f.

Inject b to the right of As in f.

Attributes

Inherited from:
Functor

Attributes

Inherited from:
MonadPlus
def traverse[A, G[_], B](value: G[A])(f: A => F[B])(implicit G: Traverse[G]): F[G[B]]

Attributes

Inherited from:
Applicative
def traverse1[A, G[_], B](value: G[A])(f: A => F[B])(implicit G: Traverse1[G]): F[G[B]]

Attributes

Inherited from:
Apply
def tuple2[A, B](fa: => F[A], fb: => F[B]): F[(A, B)]

Attributes

Inherited from:
Apply
def tuple3[A, B, C](fa: => F[A], fb: => F[B], fc: => F[C]): F[(A, B, C)]

Attributes

Inherited from:
Apply
def tuple4[A, B, C, D](fa: => F[A], fb: => F[B], fc: => F[C], fd: => F[D]): F[(A, B, C, D)]

Attributes

Inherited from:
Apply
def tuple5[A, B, C, D, E](fa: => F[A], fb: => F[B], fc: => F[C], fd: => F[D], fe: => F[E]): F[(A, B, C, D, E)]

Attributes

Inherited from:
Apply
def unfoldlPsum[S, A](seed: S)(f: S => Maybe[(S, F[A])]): F[A]

Attributes

Inherited from:
PlusEmpty
def unfoldlPsumOpt[S, A](seed: S)(f: S => Maybe[(S, F[A])]): Maybe[F[A]]

Unfold seed to the left and sum using plus. Plus instances with right absorbing elements may override this method to not unfold more than is necessary to determine the result.

Unfold seed to the left and sum using plus. Plus instances with right absorbing elements may override this method to not unfold more than is necessary to determine the result.

Attributes

Inherited from:
Plus
def unfoldrOpt[S, A, B](seed: S)(f: S => Maybe[(F[A], S)])(implicit R: Reducer[A, B]): Maybe[F[B]]

Unfold seed to the right and combine effects left-to-right, using the given Reducer to combine values. Implementations may override this method to not unfold more than is necessary to determine the result.

Unfold seed to the right and combine effects left-to-right, using the given Reducer to combine values. Implementations may override this method to not unfold more than is necessary to determine the result.

Attributes

Inherited from:
Apply
def unfoldrPsum[S, A](seed: S)(f: S => Maybe[(F[A], S)]): F[A]

Attributes

Inherited from:
PlusEmpty
def unfoldrPsumOpt[S, A](seed: S)(f: S => Maybe[(F[A], S)]): Maybe[F[A]]

Unfold seed to the right and sum using plus. Plus instances with left absorbing elements may override this method to not unfold more than is necessary to determine the result.

Unfold seed to the right and sum using plus. Plus instances with left absorbing elements may override this method to not unfold more than is necessary to determine the result.

Attributes

Inherited from:
Plus
def unite[T[_], A](value: F[T[A]])(implicit T: Foldable[T]): F[A]

Generalized version of Haskell's catMaybes

Generalized version of Haskell's catMaybes

Attributes

Inherited from:
MonadPlus
final def uniteU[T](value: F[T])(implicit T: Unapply[[F[_]] =>> Foldable[F], T]): F[T.A]

A version of unite that infers the type constructor T.

A version of unite that infers the type constructor T.

Attributes

Inherited from:
MonadPlus
def unlessM[A](cond: Boolean)(f: => F[A]): F[Unit]

Returns the given argument if cond is false, otherwise, unit lifted into F.

Returns the given argument if cond is false, otherwise, unit lifted into F.

Attributes

Inherited from:
Applicative
def untilM[G[_], A](f: F[A], cond: => F[Boolean])(implicit G: MonadPlus[G]): F[G[A]]

Execute an action repeatedly until the Boolean condition returns true. The condition is evaluated after the loop body. Collects results into an arbitrary MonadPlus value, such as a List.

Execute an action repeatedly until the Boolean condition returns true. The condition is evaluated after the loop body. Collects results into an arbitrary MonadPlus value, such as a List.

Attributes

Inherited from:
Monad
def untilM_[A](f: F[A], cond: => F[Boolean]): F[Unit]

Execute an action repeatedly until the Boolean condition returns true. The condition is evaluated after the loop body. Discards results.

Execute an action repeatedly until the Boolean condition returns true. The condition is evaluated after the loop body. Discards results.

Attributes

Inherited from:
Monad
def void[A](fa: F[A]): F[Unit]

Empty fa of meaningful pure values, preserving its structure.

Empty fa of meaningful pure values, preserving its structure.

Attributes

Inherited from:
Functor
def whenM[A](cond: Boolean)(f: => F[A]): F[Unit]

Returns the given argument if cond is true, otherwise, unit lifted into F.

Returns the given argument if cond is true, otherwise, unit lifted into F.

Attributes

Inherited from:
Applicative
def whileM[G[_], A](p: F[Boolean], body: => F[A])(implicit G: MonadPlus[G]): F[G[A]]

Execute an action repeatedly as long as the given Boolean expression returns true. The condition is evaluated before the loop body. Collects the results into an arbitrary MonadPlus value, such as a List.

Execute an action repeatedly as long as the given Boolean expression returns true. The condition is evaluated before the loop body. Collects the results into an arbitrary MonadPlus value, such as a List.

Attributes

Inherited from:
Monad
def whileM_[A](p: F[Boolean], body: => F[A]): F[Unit]

Execute an action repeatedly as long as the given Boolean expression returns true. The condition is evaluated before the loop body. Discards results.

Execute an action repeatedly as long as the given Boolean expression returns true. The condition is evaluated before the loop body. Discards results.

Attributes

Inherited from:
Monad
def widen[A, B](fa: F[A])(implicit ev: Liskov[A, B]): F[B]

Functors are covariant by nature, so we can treat an F[A] as an F[B] if A is a subtype of B.

Functors are covariant by nature, so we can treat an F[A] as an F[B] if A is a subtype of B.

Attributes

Inherited from:
Functor
final def xderiving0[Z](z: => Z): F[Z]

Attributes

Inherited from:
InvariantApplicative
final def xderiving1[Z, A1](f: A1 => Z, g: Z => A1)(implicit a1: F[A1]): F[Z]

Attributes

Inherited from:
InvariantApplicative
final def xderiving2[Z, A1, A2](f: (A1, A2) => Z, g: Z => (A1, A2))(implicit a1: F[A1], a2: F[A2]): F[Z]

Attributes

Inherited from:
InvariantApplicative
final def xderiving3[Z, A1, A2, A3](f: (A1, A2, A3) => Z, g: Z => (A1, A2, A3))(implicit a1: F[A1], a2: F[A2], a3: F[A3]): F[Z]

Attributes

Inherited from:
InvariantApplicative
final def xderiving4[Z, A1, A2, A3, A4](f: (A1, A2, A3, A4) => Z, g: Z => (A1, A2, A3, A4))(implicit a1: F[A1], a2: F[A2], a3: F[A3], a4: F[A4]): F[Z]

Attributes

Inherited from:
InvariantApplicative
def xmap[A, B](fa: F[A], f: A => B, g: B => A): F[B]

Converts ma to a value of type F[B] using the provided functions f and g.

Converts ma to a value of type F[B] using the provided functions f and g.

Attributes

Inherited from:
Functor
def xmapb[A, B](ma: F[A])(b: Bijection[A, B]): F[B]

Converts ma to a value of type F[B] using the provided bijection.

Converts ma to a value of type F[B] using the provided bijection.

Attributes

Inherited from:
InvariantFunctor
def xmapi[A, B](ma: F[A])(iso: IsoSet[A, B]): F[B]

Converts ma to a value of type F[B] using the provided isomorphism.

Converts ma to a value of type F[B] using the provided isomorphism.

Attributes

Inherited from:
InvariantFunctor
override def xproduct0[Z](z: => Z): F[Z]

Attributes

Definition Classes
Applicative -> InvariantApplicative
Inherited from:
Applicative
override def xproduct1[Z, A1](a1: => F[A1])(f: A1 => Z, g: Z => A1): F[Z]

Attributes

Definition Classes
Applicative -> InvariantApplicative
Inherited from:
Applicative
override def xproduct2[Z, A1, A2](a1: => F[A1], a2: => F[A2])(f: (A1, A2) => Z, g: Z => (A1, A2)): F[Z]

Attributes

Definition Classes
Applicative -> InvariantApplicative
Inherited from:
Applicative
override def xproduct3[Z, A1, A2, A3](a1: => F[A1], a2: => F[A2], a3: => F[A3])(f: (A1, A2, A3) => Z, g: Z => (A1, A2, A3)): F[Z]

Attributes

Definition Classes
Applicative -> InvariantApplicative
Inherited from:
Applicative
override def xproduct4[Z, A1, A2, A3, A4](a1: => F[A1], a2: => F[A2], a3: => F[A3], a4: => F[A4])(f: (A1, A2, A3, A4) => Z, g: Z => (A1, A2, A3, A4)): F[Z]

Attributes

Definition Classes
Applicative -> InvariantApplicative
Inherited from:
Applicative

Inherited fields

val applicativePlusSyntax: ApplicativePlusSyntax[F]

Attributes

Inherited from:
ApplicativePlus
val applicativeSyntax: ApplicativeSyntax[F]

Attributes

Inherited from:
Applicative
val applySyntax: ApplySyntax[F]

Attributes

Inherited from:
Apply
val bindSyntax: BindSyntax[F]

Attributes

Inherited from:
Bind
val functorSyntax: FunctorSyntax[F]

Attributes

Inherited from:
Functor
val invariantApplicativeSyntax: InvariantApplicativeSyntax[F]

Attributes

Inherited from:
InvariantApplicative
val invariantFunctorSyntax: InvariantFunctorSyntax[F]

Attributes

Inherited from:
InvariantFunctor
val monadPlusSyntax: MonadPlusSyntax[F]

Attributes

Inherited from:
MonadPlus
val monadSyntax: MonadSyntax[F]

Attributes

Inherited from:
Monad
val plusEmptySyntax: PlusEmptySyntax[F]

Attributes

Inherited from:
PlusEmpty
val plusSyntax: PlusSyntax[F]

Attributes

Inherited from:
Plus