Trait/Object

scalaz

MonadPlus

Related Docs: object MonadPlus | package scalaz

Permalink

trait MonadPlus[F[_]] extends Monad[F] with ApplicativePlus[F]

Self Type
MonadPlus[F]
Source
MonadPlus.scala
See also

scalaz.PlusEmpty

scalaz.Monad

Linear Supertypes
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. MonadPlus
  2. ApplicativePlus
  3. PlusEmpty
  4. Plus
  5. Monad
  6. Bind
  7. Applicative
  8. InvariantApplicative
  9. Apply
  10. Functor
  11. InvariantFunctor
  12. AnyRef
  13. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. trait ApplicativeLaw extends ApplyLaw

    Permalink
    Definition Classes
    Applicative
  2. trait ApplyLaw extends FunctorLaw

    Permalink
    Definition Classes
    Apply
  3. trait BindLaw extends ApplyLaw

    Permalink
    Definition Classes
    Bind
  4. trait EmptyLaw extends PlusLaw

    Permalink
    Definition Classes
    PlusEmpty
  5. trait FlippedApply extends Apply[F]

    Permalink
    Attributes
    protected[this]
    Definition Classes
    Apply
  6. trait FunctorLaw extends InvariantFunctorLaw

    Permalink
    Definition Classes
    Functor
  7. trait InvariantFunctorLaw extends AnyRef

    Permalink
    Definition Classes
    InvariantFunctor
  8. trait MonadLaw extends ApplicativeLaw with BindLaw

    Permalink
    Definition Classes
    Monad
  9. trait MonadPlusLaw extends EmptyLaw with MonadLaw

    Permalink
  10. trait PlusLaw extends AnyRef

    Permalink
    Definition Classes
    Plus
  11. trait StrongMonadPlusLaw extends MonadPlusLaw

    Permalink

Abstract Value Members

  1. abstract def bind[A, B](fa: F[A])(f: (A) ⇒ F[B]): F[B]

    Permalink

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

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

    Definition Classes
    Bind
  2. abstract def empty[A]: F[A]

    Permalink
    Definition Classes
    PlusEmpty
  3. abstract def plus[A](a: F[A], b: ⇒ F[A]): F[A]

    Permalink
    Definition Classes
    Plus
  4. abstract def point[A](a: ⇒ A): F[A]

    Permalink
    Definition Classes
    Applicative

Concrete Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. def ap[A, B](fa: ⇒ F[A])(f: ⇒ F[(A) ⇒ B]): F[B]

    Permalink

    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".

    Definition Classes
    BindApply
  5. def ap2[A, B, C](fa: ⇒ F[A], fb: ⇒ F[B])(f: F[(A, B) ⇒ C]): F[C]

    Permalink
    Definition Classes
    Apply
  6. def ap3[A, B, C, D](fa: ⇒ F[A], fb: ⇒ F[B], fc: ⇒ F[C])(f: F[(A, B, C) ⇒ D]): F[D]

    Permalink
    Definition Classes
    Apply
  7. 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]

    Permalink
    Definition Classes
    Apply
  8. 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]

    Permalink
    Definition Classes
    Apply
  9. 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]

    Permalink
    Definition Classes
    Apply
  10. 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]

    Permalink
    Definition Classes
    Apply
  11. 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]

    Permalink
    Definition Classes
    Apply
  12. def apF[A, B](f: ⇒ F[(A) ⇒ B]): (F[A]) ⇒ F[B]

    Permalink

    Flipped variant of ap.

    Flipped variant of ap.

    Definition Classes
    Apply
  13. def applicativeLaw: ApplicativeLaw

    Permalink
    Definition Classes
    Applicative
  14. val applicativePlusSyntax: ApplicativePlusSyntax[F]

    Permalink
    Definition Classes
    ApplicativePlus
  15. val applicativeSyntax: ApplicativeSyntax[F]

    Permalink
    Definition Classes
    Applicative
  16. def apply[A, B](fa: F[A])(f: (A) ⇒ B): F[B]

    Permalink

    Alias for map.

    Alias for map.

    Definition Classes
    Functor
  17. 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]

    Permalink
    Definition Classes
    Apply
  18. 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]

    Permalink
    Definition Classes
    Apply
  19. 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]

    Permalink
    Definition Classes
    Apply
  20. def apply2[A, B, C](fa: ⇒ F[A], fb: ⇒ F[B])(f: (A, B) ⇒ C): F[C]

    Permalink
    Definition Classes
    BindApply
  21. def apply3[A, B, C, D](fa: ⇒ F[A], fb: ⇒ F[B], fc: ⇒ F[C])(f: (A, B, C) ⇒ D): F[D]

    Permalink
    Definition Classes
    Apply
  22. 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]

    Permalink
    Definition Classes
    Apply
  23. 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]

    Permalink
    Definition Classes
    Apply
  24. 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]

    Permalink
    Definition Classes
    Apply
  25. 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]

    Permalink
    Definition Classes
    Apply
  26. 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]

    Permalink
    Definition Classes
    Apply
  27. 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]

    Permalink
    Definition Classes
    Apply
  28. def applyApplicative: Applicative[[α]\/[F[α], α]]

    Permalink

    Add a unit to any Apply to form an Applicative.

    Add a unit to any Apply to form an Applicative.

    Definition Classes
    Apply
  29. def applyLaw: ApplyLaw

    Permalink
    Definition Classes
    Apply
  30. val applySyntax: ApplySyntax[F]

    Permalink
    Definition Classes
    Apply
  31. final def applying1[Z, A1](f: (A1) ⇒ Z)(implicit a1: F[A1]): F[Z]

    Permalink
    Definition Classes
    Apply
  32. final def applying2[Z, A1, A2](f: (A1, A2) ⇒ Z)(implicit a1: F[A1], a2: F[A2]): F[Z]

    Permalink
    Definition Classes
    Apply
  33. final def applying3[Z, A1, A2, A3](f: (A1, A2, A3) ⇒ Z)(implicit a1: F[A1], a2: F[A2], a3: F[A3]): F[Z]

    Permalink
    Definition Classes
    Apply
  34. 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]

    Permalink
    Definition Classes
    Apply
  35. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  36. def bicompose[G[_, _]](implicit arg0: Bifunctor[G]): Bifunctor[[α, β]F[G[α, β]]]

    Permalink

    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

    Definition Classes
    Functor
  37. def bindLaw: BindLaw

    Permalink
    Definition Classes
    Bind
  38. val bindSyntax: BindSyntax[F]

    Permalink
    Definition Classes
    Bind
  39. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  40. def compose[G[_]](implicit G0: Applicative[G]): ApplicativePlus[[α]F[G[α]]]

    Permalink

    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

    Definition Classes
    ApplicativePlusApplicative
  41. def compose[G[_]]: PlusEmpty[[α]F[G[α]]]

    Permalink

    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

    Definition Classes
    PlusEmptyPlus
  42. def compose[G[_]](implicit G0: Apply[G]): Apply[[α]F[G[α]]]

    Permalink

    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

    Definition Classes
    Apply
  43. def compose[G[_]](implicit G0: Functor[G]): Functor[[α]F[G[α]]]

    Permalink

    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

    Definition Classes
    Functor
  44. def counzip[A, B](a: \/[F[A], F[B]]): F[\/[A, B]]

    Permalink
    Definition Classes
    Functor
  45. def discardLeft[A, B](fa: ⇒ F[A], fb: ⇒ F[B]): F[B]

    Permalink

    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)

    Definition Classes
    Apply
  46. def discardRight[A, B](fa: ⇒ F[A], fb: ⇒ F[B]): F[A]

    Permalink

    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)

    Definition Classes
    Apply
  47. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  48. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  49. def filter[A](fa: F[A])(f: (A) ⇒ Boolean): F[A]

    Permalink

    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.

  50. def filterM[A](l: IList[A])(f: (A) ⇒ F[Boolean]): F[IList[A]]

    Permalink

    Filter l according to an applicative predicate.

    Filter l according to an applicative predicate.

    Definition Classes
    Applicative
  51. def filterM[A](l: List[A])(f: (A) ⇒ F[Boolean]): F[List[A]]

    Permalink

    Filter l according to an applicative predicate.

    Filter l according to an applicative predicate.

    Definition Classes
    Applicative
  52. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  53. def flip: Applicative[F]

    Permalink

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

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

    Definition Classes
    ApplicativeApply
  54. def forever[A, B](fa: F[A]): F[B]

    Permalink

    Repeats an applicative action infinitely

    Repeats an applicative action infinitely

    Definition Classes
    Apply
  55. def fpair[A](fa: F[A]): F[(A, A)]

    Permalink

    Twin all As in fa.

    Twin all As in fa.

    Definition Classes
    Functor
  56. def fproduct[A, B](fa: F[A])(f: (A) ⇒ B): F[(A, B)]

    Permalink

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

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

    Definition Classes
    Functor
  57. def functorLaw: FunctorLaw

    Permalink
    Definition Classes
    Functor
  58. val functorSyntax: FunctorSyntax[F]

    Permalink
    Definition Classes
    Functor
  59. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  60. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  61. def icompose[G[_]](implicit G0: Contravariant[G]): Contravariant[[α]F[G[α]]]

    Permalink

    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.

    Definition Classes
    Functor
  62. def ifM[B](value: F[Boolean], ifTrue: ⇒ F[B], ifFalse: ⇒ F[B]): F[B]

    Permalink

    if lifted into a binding.

    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.

    Definition Classes
    Bind
  63. val invariantApplicativeSyntax: InvariantApplicativeSyntax[F]

    Permalink
    Definition Classes
    InvariantApplicative
  64. def invariantFunctorLaw: InvariantFunctorLaw

    Permalink
    Definition Classes
    InvariantFunctor
  65. val invariantFunctorSyntax: InvariantFunctorSyntax[F]

    Permalink
    Definition Classes
    InvariantFunctor
  66. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  67. def iterateUntil[A](f: F[A])(p: (A) ⇒ Boolean): F[A]

    Permalink

    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.

    Definition Classes
    Monad
  68. def iterateWhile[A](f: F[A])(p: (A) ⇒ Boolean): F[A]

    Permalink

    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.

    Definition Classes
    Monad
  69. def join[A](ffa: F[F[A]]): F[A]

    Permalink

    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].

    Definition Classes
    Bind
  70. def lefts[G[_, _], A, B](value: F[G[A, B]])(implicit G: Bifoldable[G]): F[A]

    Permalink

    Generalized version of Haskell's lefts

  71. def lift[A, B](f: (A) ⇒ B): (F[A]) ⇒ F[B]

    Permalink

    Lift f into F.

    Lift f into F.

    Definition Classes
    Functor
  72. 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]

    Permalink
    Definition Classes
    Apply
  73. 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]

    Permalink
    Definition Classes
    Apply
  74. 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]

    Permalink
    Definition Classes
    Apply
  75. def lift2[A, B, C](f: (A, B) ⇒ C): (F[A], F[B]) ⇒ F[C]

    Permalink
    Definition Classes
    Apply
  76. def lift3[A, B, C, D](f: (A, B, C) ⇒ D): (F[A], F[B], F[C]) ⇒ F[D]

    Permalink
    Definition Classes
    Apply
  77. def lift4[A, B, C, D, E](f: (A, B, C, D) ⇒ E): (F[A], F[B], F[C], F[D]) ⇒ F[E]

    Permalink
    Definition Classes
    Apply
  78. 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]

    Permalink
    Definition Classes
    Apply
  79. 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]

    Permalink
    Definition Classes
    Apply
  80. 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]

    Permalink
    Definition Classes
    Apply
  81. 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]

    Permalink
    Definition Classes
    Apply
  82. 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]

    Permalink
    Definition Classes
    Apply
  83. def liftReducer[A, B](implicit r: Reducer[A, B]): Reducer[F[A], F[B]]

    Permalink
    Definition Classes
    Apply
  84. def map[A, B](fa: F[A])(f: (A) ⇒ B): F[B]

    Permalink

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

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

    Definition Classes
    MonadApplicativeFunctor
  85. def mapply[A, B](a: A)(f: F[(A) ⇒ B]): F[B]

    Permalink

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

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

    Definition Classes
    Functor
  86. def monadLaw: MonadLaw

    Permalink
    Definition Classes
    Monad
  87. def monadPlusLaw: MonadPlusLaw

    Permalink
  88. val monadPlusSyntax: MonadPlusSyntax[F]

    Permalink
  89. val monadSyntax: MonadSyntax[F]

    Permalink
    Definition Classes
    Monad
  90. def monoid[A]: Monoid[F[A]]

    Permalink
    Definition Classes
    PlusEmpty
  91. def mproduct[A, B](fa: F[A])(f: (A) ⇒ F[B]): F[(A, B)]

    Permalink

    Pair A with the result of function application.

    Pair A with the result of function application.

    Definition Classes
    Bind
  92. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  93. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  94. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  95. def par: Par[F]

    Permalink

    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.

    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).

    Definition Classes
    Applicative
  96. def plusEmptyLaw: EmptyLaw

    Permalink
    Definition Classes
    PlusEmpty
  97. val plusEmptySyntax: PlusEmptySyntax[F]

    Permalink
    Definition Classes
    PlusEmpty
  98. def plusLaw: PlusLaw

    Permalink
    Definition Classes
    Plus
  99. val plusSyntax: PlusSyntax[F]

    Permalink
    Definition Classes
    Plus
  100. def product[G[_]](implicit G0: MonadPlus[G]): MonadPlus[[α](F[α], G[α])]

    Permalink

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

  101. def product[G[_]](implicit G0: ApplicativePlus[G]): ApplicativePlus[[α](F[α], G[α])]

    Permalink

    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

    Definition Classes
    ApplicativePlus
  102. def product[G[_]](implicit G0: PlusEmpty[G]): PlusEmpty[[α](F[α], G[α])]

    Permalink

    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

    Definition Classes
    PlusEmpty
  103. def product[G[_]](implicit G0: Plus[G]): Plus[[α](F[α], G[α])]

    Permalink

    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

    Definition Classes
    Plus
  104. def product[G[_]](implicit G0: Monad[G]): Monad[[α](F[α], G[α])]

    Permalink

    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

    Definition Classes
    Monad
  105. def product[G[_]](implicit G0: Bind[G]): Bind[[α](F[α], G[α])]

    Permalink

    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

    Definition Classes
    Bind
  106. def product[G[_]](implicit G0: Applicative[G]): Applicative[[α](F[α], G[α])]

    Permalink

    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

    Definition Classes
    Applicative
  107. def product[G[_]](implicit G0: Apply[G]): Apply[[α](F[α], G[α])]

    Permalink

    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

    Definition Classes
    Apply
  108. def product[G[_]](implicit G0: Functor[G]): Functor[[α](F[α], G[α])]

    Permalink

    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

    Definition Classes
    Functor
  109. final def pure[A](a: ⇒ A): F[A]

    Permalink
    Definition Classes
    Applicative
  110. def replicateM[A](n: Int, fa: F[A]): F[IList[A]]

    Permalink

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

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

    Definition Classes
    Applicative
  111. def replicateM_[A](n: Int, fa: F[A]): F[Unit]

    Permalink

    Performs the action n times, returning nothing.

    Performs the action n times, returning nothing.

    Definition Classes
    Applicative
  112. def rights[G[_, _], A, B](value: F[G[A, B]])(implicit G: Bifoldable[G]): F[B]

    Permalink

    Generalized version of Haskell's rights

  113. def semigroup[A]: Semigroup[F[A]]

    Permalink
    Definition Classes
    Plus
  114. def separate[G[_, _], A, B](value: F[G[A, B]])(implicit G: Bifoldable[G]): (F[A], F[B])

    Permalink

    Generalized version of Haskell's partitionEithers

  115. def sequence[A, G[_]](as: G[F[A]])(implicit arg0: Traverse[G]): F[G[A]]

    Permalink
    Definition Classes
    Applicative
  116. def sequence1[A, G[_]](as: G[F[A]])(implicit arg0: Traverse1[G]): F[G[A]]

    Permalink
    Definition Classes
    Apply
  117. def strengthL[A, B](a: A, f: F[B]): F[(A, B)]

    Permalink

    Inject a to the left of Bs in f.

    Inject a to the left of Bs in f.

    Definition Classes
    Functor
  118. def strengthR[A, B](f: F[A], b: B): F[(A, B)]

    Permalink

    Inject b to the right of As in f.

    Inject b to the right of As in f.

    Definition Classes
    Functor
  119. def strongMonadPlusLaw: StrongMonadPlusLaw

    Permalink
  120. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  121. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  122. def traverse[A, G[_], B](value: G[A])(f: (A) ⇒ F[B])(implicit G: Traverse[G]): F[G[B]]

    Permalink
    Definition Classes
    Applicative
  123. def traverse1[A, G[_], B](value: G[A])(f: (A) ⇒ F[B])(implicit G: Traverse1[G]): F[G[B]]

    Permalink
    Definition Classes
    Apply
  124. def tuple2[A, B](fa: ⇒ F[A], fb: ⇒ F[B]): F[(A, B)]

    Permalink
    Definition Classes
    Apply
  125. def tuple3[A, B, C](fa: ⇒ F[A], fb: ⇒ F[B], fc: ⇒ F[C]): F[(A, B, C)]

    Permalink
    Definition Classes
    Apply
  126. def tuple4[A, B, C, D](fa: ⇒ F[A], fb: ⇒ F[B], fc: ⇒ F[C], fd: ⇒ F[D]): F[(A, B, C, D)]

    Permalink
    Definition Classes
    Apply
  127. 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)]

    Permalink
    Definition Classes
    Apply
  128. def unfoldlPsum[S, A](seed: S)(f: (S) ⇒ Maybe[(S, F[A])]): F[A]

    Permalink
    Definition Classes
    PlusEmpty
  129. def unfoldlPsumOpt[S, A](seed: S)(f: (S) ⇒ Maybe[(S, F[A])]): Maybe[F[A]]

    Permalink

    Unfold seed to the left and sum using #plus.

    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.

    Definition Classes
    Plus
  130. def unfoldrOpt[S, A, B](seed: S)(f: (S) ⇒ Maybe[(F[A], S)])(implicit R: Reducer[A, B]): Maybe[F[B]]

    Permalink

    Unfold seed to the right and combine effects left-to-right, using the given Reducer to combine values.

    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.

    Definition Classes
    Apply
  131. def unfoldrPsum[S, A](seed: S)(f: (S) ⇒ Maybe[(F[A], S)]): F[A]

    Permalink
    Definition Classes
    PlusEmpty
  132. def unfoldrPsumOpt[S, A](seed: S)(f: (S) ⇒ Maybe[(F[A], S)]): Maybe[F[A]]

    Permalink

    Unfold seed to the right and sum using #plus.

    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.

    Definition Classes
    Plus
  133. def unite[T[_], A](value: F[T[A]])(implicit T: Foldable[T]): F[A]

    Permalink

    Generalized version of Haskell's catMaybes

  134. final def uniteU[T](value: F[T])(implicit T: Unapply[Foldable, T]): F[A]

    Permalink

    A version of unite that infers the type constructor T.

  135. def unlessM[A](cond: Boolean)(f: ⇒ F[A]): F[Unit]

    Permalink

    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.

    Definition Classes
    Applicative
  136. def untilM[G[_], A](f: F[A], cond: ⇒ F[Boolean])(implicit G: MonadPlus[G]): F[G[A]]

    Permalink

    Execute an action repeatedly until the Boolean condition returns true.

    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.

    Definition Classes
    Monad
  137. def untilM_[A](f: F[A], cond: ⇒ F[Boolean]): F[Unit]

    Permalink

    Execute an action repeatedly until the Boolean condition returns true.

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

    Definition Classes
    Monad
  138. def void[A](fa: F[A]): F[Unit]

    Permalink

    Empty fa of meaningful pure values, preserving its structure.

    Empty fa of meaningful pure values, preserving its structure.

    Definition Classes
    Functor
  139. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  140. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  141. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  142. def whenM[A](cond: Boolean)(f: ⇒ F[A]): F[Unit]

    Permalink

    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.

    Definition Classes
    Applicative
  143. def whileM[G[_], A](p: F[Boolean], body: ⇒ F[A])(implicit G: MonadPlus[G]): F[G[A]]

    Permalink

    Execute an action repeatedly as long as the given Boolean expression returns true.

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

    Definition Classes
    Monad
  144. def whileM_[A](p: F[Boolean], body: ⇒ F[A]): F[Unit]

    Permalink

    Execute an action repeatedly as long as the given Boolean expression returns true.

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

    Definition Classes
    Monad
  145. def widen[A, B](fa: F[A])(implicit ev: <~<[A, B]): F[B]

    Permalink

    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.

    Definition Classes
    Functor
  146. final def xderiving0[Z](z: ⇒ Z): F[Z]

    Permalink
    Definition Classes
    InvariantApplicative
  147. final def xderiving1[Z, A1](f: (A1) ⇒ Z, g: (Z) ⇒ A1)(implicit a1: F[A1]): F[Z]

    Permalink
    Definition Classes
    InvariantApplicative
  148. final def xderiving2[Z, A1, A2](f: (A1, A2) ⇒ Z, g: (Z) ⇒ (A1, A2))(implicit a1: F[A1], a2: F[A2]): F[Z]

    Permalink
    Definition Classes
    InvariantApplicative
  149. 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]

    Permalink
    Definition Classes
    InvariantApplicative
  150. 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]

    Permalink
    Definition Classes
    InvariantApplicative
  151. def xmap[A, B](fa: F[A], f: (A) ⇒ B, g: (B) ⇒ A): F[B]

    Permalink

    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.

    Definition Classes
    FunctorInvariantFunctor
  152. def xmapb[A, B](ma: F[A])(b: Bijection[A, B]): F[B]

    Permalink

    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.

    Definition Classes
    InvariantFunctor
  153. def xmapi[A, B](ma: F[A])(iso: Isomorphism.<=>[A, B]): F[B]

    Permalink

    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.

    Definition Classes
    InvariantFunctor
  154. def xproduct0[Z](z: ⇒ Z): F[Z]

    Permalink
    Definition Classes
    ApplicativeInvariantApplicative
  155. def xproduct1[Z, A1](a1: ⇒ F[A1])(f: (A1) ⇒ Z, g: (Z) ⇒ A1): F[Z]

    Permalink
    Definition Classes
    ApplicativeInvariantApplicative
  156. def xproduct2[Z, A1, A2](a1: ⇒ F[A1], a2: ⇒ F[A2])(f: (A1, A2) ⇒ Z, g: (Z) ⇒ (A1, A2)): F[Z]

    Permalink
    Definition Classes
    ApplicativeInvariantApplicative
  157. 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]

    Permalink
    Definition Classes
    ApplicativeInvariantApplicative
  158. 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]

    Permalink
    Definition Classes
    ApplicativeInvariantApplicative

Inherited from ApplicativePlus[F]

Inherited from PlusEmpty[F]

Inherited from Plus[F]

Inherited from Monad[F]

Inherited from Bind[F]

Inherited from Applicative[F]

Inherited from InvariantApplicative[F]

Inherited from Apply[F]

Inherited from Functor[F]

Inherited from InvariantFunctor[F]

Inherited from AnyRef

Inherited from Any

Ungrouped