Trait/Object

scalaz

Applicative

Related Docs: object Applicative | package scalaz

Permalink

trait Applicative[F[_]] extends Apply[F] with InvariantApplicative[F]

Applicative Functor, described in Applicative Programming with Effects

Whereas a scalaz.Functor allows application of a pure function to a value in a context, an Applicative also allows application of a function in a context to a value in a context (ap).

It follows that a pure function can be applied to arguments in a context. (See apply2, apply3, ... )

Applicative instances come in a few flavours:

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

scalaz.Applicative.ApplicativeLaw

Linear Supertypes
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Applicative
  2. InvariantApplicative
  3. Apply
  4. Functor
  5. InvariantFunctor
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. trait ApplicativeLaw extends ApplyLaw

    Permalink
  2. trait ApplyLaw extends FunctorLaw

    Permalink
    Definition Classes
    Apply
  3. trait FlippedApply extends Apply[F]

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

    Permalink
    Definition Classes
    Functor
  5. trait InvariantFunctorLaw extends AnyRef

    Permalink
    Definition Classes
    InvariantFunctor

Abstract Value Members

  1. abstract 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
    Apply
  2. abstract def point[A](a: ⇒ A): F[A]

    Permalink

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 ap2[A, B, C](fa: ⇒ F[A], fb: ⇒ F[B])(f: F[(A, B) ⇒ C]): F[C]

    Permalink
    Definition Classes
    Apply
  5. 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
  6. 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
  7. 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
  8. 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
  9. 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
  10. 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
  11. def apF[A, B](f: ⇒ F[(A) ⇒ B]): (F[A]) ⇒ F[B]

    Permalink

    Flipped variant of ap.

    Flipped variant of ap.

    Definition Classes
    Apply
  12. def applicativeLaw: ApplicativeLaw

    Permalink
  13. val applicativeSyntax: ApplicativeSyntax[F]

    Permalink
  14. def apply[A, B](fa: F[A])(f: (A) ⇒ B): F[B]

    Permalink

    Alias for map.

    Alias for map.

    Definition Classes
    Functor
  15. 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
  16. 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
  17. 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
  18. def apply2[A, B, C](fa: ⇒ F[A], fb: ⇒ F[B])(f: (A, B) ⇒ C): F[C]

    Permalink
    Definition Classes
    ApplicativeApply
  19. 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
  20. 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
  21. 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
  22. 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
  23. 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
  24. 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
  25. 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
  26. 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
  27. def applyLaw: ApplyLaw

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

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

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

    Permalink
    Definition Classes
    Apply
  31. 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
  32. 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
  33. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  34. 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
  35. def clone(): AnyRef

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

    Permalink

    The composition of Applicatives F and G, [x]F[G[x]], is an Applicative

  37. 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
  38. 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
  39. def counzip[A, B](a: \/[F[A], F[B]]): F[\/[A, B]]

    Permalink
    Definition Classes
    Functor
  40. 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
  41. 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
  42. final def eq(arg0: AnyRef): Boolean

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

    Permalink
    Definition Classes
    AnyRef → Any
  44. def filterM[A](l: IList[A])(f: (A) ⇒ F[Boolean]): F[IList[A]]

    Permalink

    Filter l according to an applicative predicate.

  45. def filterM[A](l: List[A])(f: (A) ⇒ F[Boolean]): F[List[A]]

    Permalink

    Filter l according to an applicative predicate.

  46. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  47. 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
  48. def forever[A, B](fa: F[A]): F[B]

    Permalink

    Repeats an applicative action infinitely

    Repeats an applicative action infinitely

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

    Permalink

    Twin all As in fa.

    Twin all As in fa.

    Definition Classes
    Functor
  50. 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
  51. def functorLaw: FunctorLaw

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

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  55. 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
  56. val invariantApplicativeSyntax: InvariantApplicativeSyntax[F]

    Permalink
    Definition Classes
    InvariantApplicative
  57. def invariantFunctorLaw: InvariantFunctorLaw

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

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

    Permalink
    Definition Classes
    Any
  60. def lift[A, B](f: (A) ⇒ B): (F[A]) ⇒ F[B]

    Permalink

    Lift f into F.

    Lift f into F.

    Definition Classes
    Functor
  61. 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
  62. 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
  63. 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
  64. def lift2[A, B, C](f: (A, B) ⇒ C): (F[A], F[B]) ⇒ F[C]

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

    Permalink
    Definition Classes
    Apply
  66. 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
  67. 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
  68. 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
  69. 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
  70. 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
  71. 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
  72. def liftReducer[A, B](implicit r: Reducer[A, B]): Reducer[F[A], F[B]]

    Permalink
    Definition Classes
    Apply
  73. 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
    ApplicativeFunctor
  74. 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
  75. final def ne(arg0: AnyRef): Boolean

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

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

    Permalink
    Definition Classes
    AnyRef
  78. 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).

  79. def plusA[A](x: ⇒ F[A], y: ⇒ F[A])(implicit sa: Semigroup[A]): F[A]

    Permalink

    Semigroups can be added within an Applicative

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

  81. 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
  82. 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
  83. final def pure[A](a: ⇒ A): F[A]

    Permalink
  84. def replicateM[A](n: Int, fa: F[A]): F[IList[A]]

    Permalink

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

  85. def replicateM_[A](n: Int, fa: F[A]): F[Unit]

    Permalink

    Performs the action n times, returning nothing.

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

    Permalink
  87. def sequence1[A, G[_]](as: G[F[A]])(implicit arg0: Traverse1[G]): F[G[A]]

    Permalink
    Definition Classes
    Apply
  88. 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
  89. 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
  90. final def synchronized[T0](arg0: ⇒ T0): T0

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

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

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

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

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

    Permalink
    Definition Classes
    Apply
  96. 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
  97. 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
  98. 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
  99. def unlessM[A](cond: Boolean)(f: ⇒ F[A]): F[Unit]

    Permalink

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

  100. 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
  101. final def wait(): Unit

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

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

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

    Permalink

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

  105. 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
  106. final def xderiving0[Z](z: ⇒ Z): F[Z]

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

    Permalink
    Definition Classes
    InvariantApplicative
  108. 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
  109. 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
  110. 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
  111. 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
  112. 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
  113. 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
  114. def xproduct0[Z](z: ⇒ Z): F[Z]

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

    Permalink
    Definition Classes
    ApplicativeInvariantApplicative
  116. 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
  117. 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
  118. 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 InvariantApplicative[F]

Inherited from Apply[F]

Inherited from Functor[F]

Inherited from InvariantFunctor[F]

Inherited from AnyRef

Inherited from Any

Ungrouped