Trait/Object

cats.effect

Effect

Related Docs: object Effect | package effect

Permalink

trait Effect[F[_]] extends Async[F] with Serializable

A monad that can suspend side effects into the F context and that supports lazy and potentially asynchronous evaluation.

This type class is describing data types that:

  1. implement the Async algebra
  2. implement a lawful runAsync operation that triggers the evaluation (in the context of IO)
  3. implement a lawful runSyncStep operation which triggers evaluation up to the first asynchronous boundary

Note this is the safe and generic version of IO.unsafeRunAsync (aka Haskell's unsafePerformIO).

Annotations
@implicitNotFound( ... )
Source
Effect.scala
Linear Supertypes
Async[F], LiftIO[F], Sync[F], Bracket[F, Throwable], MonadError[F, Throwable], Monad[F], FlatMap[F], ApplicativeError[F, Throwable], Applicative[F], InvariantMonoidal[F], Apply[F], ApplyArityFunctions[F], InvariantSemigroupal[F], Semigroupal[F], Functor[F], Invariant[F], Serializable, Serializable, AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Effect
  2. Async
  3. LiftIO
  4. Sync
  5. Bracket
  6. MonadError
  7. Monad
  8. FlatMap
  9. ApplicativeError
  10. Applicative
  11. InvariantMonoidal
  12. Apply
  13. ApplyArityFunctions
  14. InvariantSemigroupal
  15. Semigroupal
  16. Functor
  17. Invariant
  18. Serializable
  19. Serializable
  20. AnyRef
  21. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def async[A](k: ((Either[Throwable, A]) ⇒ Unit) ⇒ Unit): F[A]

    Permalink

    Creates a simple, non-cancelable F[A] instance that executes an asynchronous process on evaluation.

    Creates a simple, non-cancelable F[A] instance that executes an asynchronous process on evaluation.

    The given function is being injected with a side-effectful callback for signaling the final result of an asynchronous process.

    This operation could be derived from asyncF, because:

    F.async(k) <-> F.asyncF(cb => F.delay(k(cb)))

    As an example of wrapping an impure async API, here's the implementation of Async.shift:

    def shift[F[_]](ec: ExecutionContext)(implicit F: Async[F]): F[Unit] =
      F.async { cb =>
        // Scheduling an async boundary (logical thread fork)
        ec.execute(new Runnable {
          def run(): Unit = {
            // Signaling successful completion
            cb(Right(()))
          }
        })
      }
    k

    is a function that should be called with a callback for signaling the result once it is ready

    Definition Classes
    Async
    See also

    asyncF for the variant that can suspend side effects in the provided registration function.

  2. abstract def asyncF[A](k: ((Either[Throwable, A]) ⇒ Unit) ⇒ F[Unit]): F[A]

    Permalink

    Creates a simple, non-cancelable F[A] instance that executes an asynchronous process on evaluation.

    Creates a simple, non-cancelable F[A] instance that executes an asynchronous process on evaluation.

    The given function is being injected with a side-effectful callback for signaling the final result of an asynchronous process. And its returned result needs to be a pure F[Unit] that gets evaluated by the runtime.

    Note the simpler async variant async can be derived like this:

    F.async(k) <-> F.asyncF(cb => F.delay(k(cb)))

    For wrapping impure APIs usually you can use the simpler async, however asyncF is useful in cases where impure APIs are wrapped with the help of pure abstractions, such as Ref.

    For example here's how a simple, "pure Promise" implementation could be implemented via Ref (sample is for didactic purposes, as you have a far better Deferred available):

    import cats.effect.concurrent.Ref
    
    type Callback[-A] = Either[Throwable, A] => Unit
    
    class PurePromise[F[_], A](ref: Ref[F, Either[List[Callback[A]], A]])
      (implicit F: Async[F]) {
    
      def get: F[A] = F.asyncF { cb =>
        ref.modify {
          case current @ Right(result) =>
            (current, F.delay(cb(Right(result))))
          case Left(list) =>
            (Left(cb :: list), F.unit)
        }
      }
    
      def complete(value: A): F[Unit] =
        F.flatten(ref.modify {
          case Left(list) =>
            (Right(value), F.delay(list.foreach(_(Right(value)))))
          case right =>
            (right, F.unit)
        })
    }

    N.B. if F[_] is a cancelable data type (i.e. implementing Concurrent), then the returned F[Unit] can be cancelable, its evaluation hooking into the underlying cancelation mechanism of F[_], so something like this behaves like you'd expect:

    def delayed[F[_], A](thunk: => A)
      (implicit F: Async[F], timer: Timer[F]): F[A] = {
    
      timer.sleep(1.second) *> F.delay(cb(
        try cb(Right(thunk))
        catch { case NonFatal(e) => Left(cb(Left(e))) }
      ))
    }

    The asyncF operation behaves like Sync.suspend, except that the result has to be signaled via the provided callback.

    ERROR HANDLING

    As a matter of contract the returned F[Unit] should not throw errors. If it does, then the behavior is undefined.

    This is because by contract the provided callback should only be called once. Calling it concurrently, multiple times, is a contract violation. And if the returned F[Unit] throws, then the implementation might have called it already, so it would be a contract violation to call it without expensive synchronization.

    In case errors are thrown the behavior is implementation specific. The error might get logged to stderr, or via other mechanisms that are implementations specific.

    k

    is a function that should be called with a callback for signaling the result once it is ready

    Definition Classes
    Async
    See also

    async for the simpler variant.

  3. abstract def bracketCase[A, B](acquire: F[A])(use: (A) ⇒ F[B])(release: (A, ExitCase[Throwable]) ⇒ F[Unit]): F[B]

    Permalink

    A generalized version of bracket which uses ExitCase to distinguish between different exit cases when releasing the acquired resource.

    A generalized version of bracket which uses ExitCase to distinguish between different exit cases when releasing the acquired resource.

    acquire

    is an action that "acquires" some expensive resource, that needs to be used and then discarded

    use

    is the action that uses the newly allocated resource and that will provide the final result

    release

    is the action that's supposed to release the allocated resource after use is done, by observing and acting on its exit condition

    Definition Classes
    Bracket
  4. abstract def flatMap[A, B](fa: F[A])(f: (A) ⇒ F[B]): F[B]

    Permalink
    Definition Classes
    FlatMap
  5. abstract def handleErrorWith[A](fa: F[A])(f: (Throwable) ⇒ F[A]): F[A]

    Permalink
    Definition Classes
    ApplicativeError
  6. abstract def pure[A](x: A): F[A]

    Permalink
    Definition Classes
    Applicative
  7. abstract def raiseError[A](e: Throwable): F[A]

    Permalink
    Definition Classes
    ApplicativeError
  8. abstract def runAsync[A](fa: F[A])(cb: (Either[Throwable, A]) ⇒ IO[Unit]): IO[Unit]

    Permalink

    Evaluates F[_], with the effect of starting the run-loop being suspended in the IO context.

    Evaluates F[_], with the effect of starting the run-loop being suspended in the IO context.

    Note that evaluating the returned IO[Unit] is guaranteed to execute immediately:

    val io = F.runAsync(fa)(cb)
    
    // For triggering actual execution, guaranteed to be
    // immediate because it doesn't wait for the result
    io.unsafeRunSync
  9. abstract def runSyncStep[A](fa: F[A]): IO[Either[F[A], A]]

    Permalink

    Returns an IO which runs fa until it reaches an asynchronous boundary.

    Returns an IO which runs fa until it reaches an asynchronous boundary.

    If it is possible to run the entirety of fa synchronously, its result is returned wrapped in a Right. Otherwise, the continuation (asynchronous) effect is returned in a Left.

    Note that evaluating the returned IO is guaranteed to execute immediately.

  10. abstract def suspend[A](thunk: ⇒ F[A]): F[A]

    Permalink

    Suspends the evaluation of an F reference.

    Suspends the evaluation of an F reference.

    Equivalent to FlatMap.flatten for pure expressions, the purpose of this function is to suspend side effects in F.

    Definition Classes
    Sync
  11. abstract def tailRecM[A, B](a: A)(f: (A) ⇒ F[Either[A, B]]): F[B]

    Permalink
    Definition Classes
    FlatMap

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 *>[A, B](fa: F[A])(fb: F[B]): F[B]

    Permalink
    Definition Classes
    Apply
    Annotations
    @inline()
  4. final def <*[A, B](fa: F[A])(fb: F[B]): F[A]

    Permalink
    Definition Classes
    Apply
    Annotations
    @inline()
  5. final def <*>[A, B](ff: F[(A) ⇒ B])(fa: F[A]): F[B]

    Permalink
    Definition Classes
    Apply
    Annotations
    @inline()
  6. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  7. def adaptError[A](fa: F[A])(pf: PartialFunction[Throwable, Throwable]): F[A]

    Permalink
    Definition Classes
    MonadError
  8. def ap[A, B](ff: F[(A) ⇒ B])(fa: F[A]): F[B]

    Permalink
    Definition Classes
    FlatMap → Apply
  9. def ap10[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, Z](f: F[(A0, A1, A2, A3, A4, A5, A6, A7, A8, A9) ⇒ Z])(f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9]): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  10. def ap11[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, Z](f: F[(A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10) ⇒ Z])(f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9], f10: F[A10]): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  11. def ap12[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, Z](f: F[(A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11) ⇒ Z])(f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9], f10: F[A10], f11: F[A11]): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  12. def ap13[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, Z](f: F[(A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12) ⇒ Z])(f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9], f10: F[A10], f11: F[A11], f12: F[A12]): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  13. def ap14[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, Z](f: F[(A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13) ⇒ Z])(f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9], f10: F[A10], f11: F[A11], f12: F[A12], f13: F[A13]): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  14. def ap15[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, Z](f: F[(A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14) ⇒ Z])(f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9], f10: F[A10], f11: F[A11], f12: F[A12], f13: F[A13], f14: F[A14]): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  15. def ap16[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, Z](f: F[(A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15) ⇒ Z])(f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9], f10: F[A10], f11: F[A11], f12: F[A12], f13: F[A13], f14: F[A14], f15: F[A15]): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  16. def ap17[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, Z](f: F[(A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16) ⇒ Z])(f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9], f10: F[A10], f11: F[A11], f12: F[A12], f13: F[A13], f14: F[A14], f15: F[A15], f16: F[A16]): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  17. def ap18[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, Z](f: F[(A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17) ⇒ Z])(f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9], f10: F[A10], f11: F[A11], f12: F[A12], f13: F[A13], f14: F[A14], f15: F[A15], f16: F[A16], f17: F[A17]): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  18. def ap19[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, Z](f: F[(A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18) ⇒ Z])(f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9], f10: F[A10], f11: F[A11], f12: F[A12], f13: F[A13], f14: F[A14], f15: F[A15], f16: F[A16], f17: F[A17], f18: F[A18]): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  19. def ap2[A, B, Z](ff: F[(A, B) ⇒ Z])(fa: F[A], fb: F[B]): F[Z]

    Permalink
    Definition Classes
    Apply
  20. def ap20[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, Z](f: F[(A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19) ⇒ Z])(f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9], f10: F[A10], f11: F[A11], f12: F[A12], f13: F[A13], f14: F[A14], f15: F[A15], f16: F[A16], f17: F[A17], f18: F[A18], f19: F[A19]): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  21. def ap21[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, Z](f: F[(A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20) ⇒ Z])(f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9], f10: F[A10], f11: F[A11], f12: F[A12], f13: F[A13], f14: F[A14], f15: F[A15], f16: F[A16], f17: F[A17], f18: F[A18], f19: F[A19], f20: F[A20]): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  22. def ap22[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, Z](f: F[(A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21) ⇒ Z])(f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9], f10: F[A10], f11: F[A11], f12: F[A12], f13: F[A13], f14: F[A14], f15: F[A15], f16: F[A16], f17: F[A17], f18: F[A18], f19: F[A19], f20: F[A20], f21: F[A21]): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  23. def ap3[A0, A1, A2, Z](f: F[(A0, A1, A2) ⇒ Z])(f0: F[A0], f1: F[A1], f2: F[A2]): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  24. def ap4[A0, A1, A2, A3, Z](f: F[(A0, A1, A2, A3) ⇒ Z])(f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3]): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  25. def ap5[A0, A1, A2, A3, A4, Z](f: F[(A0, A1, A2, A3, A4) ⇒ Z])(f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4]): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  26. def ap6[A0, A1, A2, A3, A4, A5, Z](f: F[(A0, A1, A2, A3, A4, A5) ⇒ Z])(f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5]): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  27. def ap7[A0, A1, A2, A3, A4, A5, A6, Z](f: F[(A0, A1, A2, A3, A4, A5, A6) ⇒ Z])(f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6]): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  28. def ap8[A0, A1, A2, A3, A4, A5, A6, A7, Z](f: F[(A0, A1, A2, A3, A4, A5, A6, A7) ⇒ Z])(f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7]): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  29. def ap9[A0, A1, A2, A3, A4, A5, A6, A7, A8, Z](f: F[(A0, A1, A2, A3, A4, A5, A6, A7, A8) ⇒ Z])(f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8]): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  30. def as[A, B](fa: F[A], b: B): F[B]

    Permalink
    Definition Classes
    Functor
  31. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  32. def attempt[A](fa: F[A]): F[Either[Throwable, A]]

    Permalink
    Definition Classes
    ApplicativeError
  33. def attemptT[A](fa: F[A]): EitherT[F, Throwable, A]

    Permalink
    Definition Classes
    ApplicativeError
  34. def bracket[A, B](acquire: F[A])(use: (A) ⇒ F[B])(release: (A) ⇒ F[Unit]): F[B]

    Permalink

    Operation meant for specifying tasks with safe resource acquisition and release in the face of errors and interruption.

    Operation meant for specifying tasks with safe resource acquisition and release in the face of errors and interruption.

    This operation provides the equivalent of try/catch/finally statements in mainstream imperative languages for resource acquisition and release.

    acquire

    is an action that "acquires" some expensive resource, that needs to be used and then discarded

    use

    is the action that uses the newly allocated resource and that will provide the final result

    release

    is the action that's supposed to release the allocated resource after use is done, irregardless of its exit condition

    Definition Classes
    Bracket
  35. def catchNonFatal[A](a: ⇒ A)(implicit ev: <:<[Throwable, Throwable]): F[A]

    Permalink
    Definition Classes
    ApplicativeError
  36. def catchNonFatalEval[A](a: Eval[A])(implicit ev: <:<[Throwable, Throwable]): F[A]

    Permalink
    Definition Classes
    ApplicativeError
  37. def clone(): AnyRef

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

    Permalink
    Definition Classes
    Applicative
  39. def compose[G[_]](implicit arg0: Apply[G]): Apply[[α]F[G[α]]]

    Permalink
    Definition Classes
    Apply
  40. def compose[G[_]](implicit arg0: Functor[G]): Functor[[α]F[G[α]]]

    Permalink
    Definition Classes
    Functor
  41. def compose[G[_]](implicit arg0: Invariant[G]): Invariant[[α]F[G[α]]]

    Permalink
    Definition Classes
    Invariant
  42. def composeApply[G[_]](implicit arg0: Apply[G]): InvariantSemigroupal[[α]F[G[α]]]

    Permalink
    Definition Classes
    InvariantSemigroupal
  43. def composeContravariant[G[_]](implicit arg0: Contravariant[G]): Contravariant[[α]F[G[α]]]

    Permalink
    Definition Classes
    Functor → Invariant
  44. def composeContravariantMonoidal[G[_]](implicit arg0: ContravariantMonoidal[G]): ContravariantMonoidal[[α]F[G[α]]]

    Permalink
    Definition Classes
    Applicative
  45. def composeFunctor[G[_]](implicit arg0: Functor[G]): Invariant[[α]F[G[α]]]

    Permalink
    Definition Classes
    Invariant
  46. def delay[A](thunk: ⇒ A): F[A]

    Permalink

    Lifts any by-name parameter into the F context.

    Lifts any by-name parameter into the F context.

    Equivalent to Applicative.pure for pure expressions, the purpose of this function is to suspend side effects in F.

    Definition Classes
    Sync
  47. def ensure[A](fa: F[A])(error: ⇒ Throwable)(predicate: (A) ⇒ Boolean): F[A]

    Permalink
    Definition Classes
    MonadError
  48. def ensureOr[A](fa: F[A])(error: (A) ⇒ Throwable)(predicate: (A) ⇒ Boolean): F[A]

    Permalink
    Definition Classes
    MonadError
  49. final def eq(arg0: AnyRef): Boolean

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

    Permalink
    Definition Classes
    AnyRef → Any
  51. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  52. def flatTap[A, B](fa: F[A])(f: (A) ⇒ F[B]): F[A]

    Permalink
    Definition Classes
    FlatMap
  53. def flatten[A](ffa: F[F[A]]): F[A]

    Permalink
    Definition Classes
    FlatMap
  54. final def fmap[A, B](fa: F[A])(f: (A) ⇒ B): F[B]

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

    Permalink
    Definition Classes
    Functor
  56. def fromEither[A](x: Either[Throwable, A]): F[A]

    Permalink
    Definition Classes
    ApplicativeError
  57. def fromTry[A](t: Try[A])(implicit ev: <:<[Throwable, Throwable]): F[A]

    Permalink
    Definition Classes
    ApplicativeError
  58. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  59. def guarantee[A](fa: F[A])(finalizer: F[Unit]): F[A]

    Permalink

    Executes the given finalizer when the source is finished, either in success or in error, or if canceled.

    Executes the given finalizer when the source is finished, either in success or in error, or if canceled.

    This variant of guaranteeCase evaluates the given finalizer regardless of how the source gets terminated:

    • normal completion
    • completion in error
    • cancelation

    This equivalence always holds:

    F.guarantee(fa)(f) <-> F.bracket(F.unit)(_ => fa)(_ => f)

    As best practice, it's not a good idea to release resources via guaranteeCase in polymorphic code. Prefer bracket for the acquisition and release of resources.

    Definition Classes
    Bracket
    See also

    bracket for the more general operation

    guaranteeCase for the version that can discriminate between termination conditions

  60. def guaranteeCase[A](fa: F[A])(finalizer: (ExitCase[Throwable]) ⇒ F[Unit]): F[A]

    Permalink

    Executes the given finalizer when the source is finished, either in success or in error, or if canceled, allowing for differentiating between exit conditions.

    Executes the given finalizer when the source is finished, either in success or in error, or if canceled, allowing for differentiating between exit conditions.

    This variant of guarantee injects an ExitCase in the provided function, allowing one to make a difference between:

    • normal completion
    • completion in error
    • cancelation

    This equivalence always holds:

    F.guaranteeCase(fa)(f) <-> F.bracketCase(F.unit)(_ => fa)((_, e) => f(e))

    As best practice, it's not a good idea to release resources via guaranteeCase in polymorphic code. Prefer bracketCase for the acquisition and release of resources.

    Definition Classes
    Bracket
    See also

    bracketCase for the more general operation

    guarantee for the simpler version

  61. def handleError[A](fa: F[A])(f: (Throwable) ⇒ A): F[A]

    Permalink
    Definition Classes
    ApplicativeError
  62. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  63. def ifM[B](fa: F[Boolean])(ifTrue: ⇒ F[B], ifFalse: ⇒ F[B]): F[B]

    Permalink
    Definition Classes
    FlatMap
  64. def imap[A, B](fa: F[A])(f: (A) ⇒ B)(g: (B) ⇒ A): F[B]

    Permalink
    Definition Classes
    Functor → Invariant
  65. final def isInstanceOf[T0]: Boolean

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

    Permalink
    Definition Classes
    Monad
  67. def iterateUntilM[A](init: A)(f: (A) ⇒ F[A])(p: (A) ⇒ Boolean): F[A]

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

    Permalink
    Definition Classes
    Monad
  69. def iterateWhileM[A](init: A)(f: (A) ⇒ F[A])(p: (A) ⇒ Boolean): F[A]

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

    Permalink
    Definition Classes
    Functor
  71. def liftIO[A](ioa: IO[A]): F[A]

    Permalink

    Inherited from LiftIO, defines a conversion from IO in terms of the Async type class.

    Inherited from LiftIO, defines a conversion from IO in terms of the Async type class.

    N.B. expressing this conversion in terms of Async and its capabilities means that the resulting F is not cancelable. Concurrent then overrides this with an implementation that is.

    To access this implementation as a standalone function, you can use Async.liftIO (on the object companion).

    Definition Classes
    AsyncLiftIO
  72. def map[A, B](fa: F[A])(f: (A) ⇒ B): F[B]

    Permalink
    Definition Classes
    Monad → Applicative → Functor
  73. def map10[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9])(f: (A0, A1, A2, A3, A4, A5, A6, A7, A8, A9) ⇒ Z): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  74. def map11[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9], f10: F[A10])(f: (A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10) ⇒ Z): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  75. def map12[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9], f10: F[A10], f11: F[A11])(f: (A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11) ⇒ Z): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  76. def map13[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9], f10: F[A10], f11: F[A11], f12: F[A12])(f: (A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12) ⇒ Z): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  77. def map14[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9], f10: F[A10], f11: F[A11], f12: F[A12], f13: F[A13])(f: (A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13) ⇒ Z): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  78. def map15[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9], f10: F[A10], f11: F[A11], f12: F[A12], f13: F[A13], f14: F[A14])(f: (A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14) ⇒ Z): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  79. def map16[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9], f10: F[A10], f11: F[A11], f12: F[A12], f13: F[A13], f14: F[A14], f15: F[A15])(f: (A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15) ⇒ Z): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  80. def map17[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9], f10: F[A10], f11: F[A11], f12: F[A12], f13: F[A13], f14: F[A14], f15: F[A15], f16: F[A16])(f: (A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16) ⇒ Z): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  81. def map18[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9], f10: F[A10], f11: F[A11], f12: F[A12], f13: F[A13], f14: F[A14], f15: F[A15], f16: F[A16], f17: F[A17])(f: (A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17) ⇒ Z): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  82. def map19[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9], f10: F[A10], f11: F[A11], f12: F[A12], f13: F[A13], f14: F[A14], f15: F[A15], f16: F[A16], f17: F[A17], f18: F[A18])(f: (A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18) ⇒ Z): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  83. def map2[A, B, Z](fa: F[A], fb: F[B])(f: (A, B) ⇒ Z): F[Z]

    Permalink
    Definition Classes
    Apply
  84. def map20[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9], f10: F[A10], f11: F[A11], f12: F[A12], f13: F[A13], f14: F[A14], f15: F[A15], f16: F[A16], f17: F[A17], f18: F[A18], f19: F[A19])(f: (A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19) ⇒ Z): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  85. def map21[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9], f10: F[A10], f11: F[A11], f12: F[A12], f13: F[A13], f14: F[A14], f15: F[A15], f16: F[A16], f17: F[A17], f18: F[A18], f19: F[A19], f20: F[A20])(f: (A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20) ⇒ Z): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  86. def map22[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9], f10: F[A10], f11: F[A11], f12: F[A12], f13: F[A13], f14: F[A14], f15: F[A15], f16: F[A16], f17: F[A17], f18: F[A18], f19: F[A19], f20: F[A20], f21: F[A21])(f: (A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21) ⇒ Z): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  87. def map2Eval[A, B, Z](fa: F[A], fb: Eval[F[B]])(f: (A, B) ⇒ Z): Eval[F[Z]]

    Permalink
    Definition Classes
    Apply
  88. def map3[A0, A1, A2, Z](f0: F[A0], f1: F[A1], f2: F[A2])(f: (A0, A1, A2) ⇒ Z): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  89. def map4[A0, A1, A2, A3, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3])(f: (A0, A1, A2, A3) ⇒ Z): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  90. def map5[A0, A1, A2, A3, A4, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4])(f: (A0, A1, A2, A3, A4) ⇒ Z): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  91. def map6[A0, A1, A2, A3, A4, A5, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5])(f: (A0, A1, A2, A3, A4, A5) ⇒ Z): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  92. def map7[A0, A1, A2, A3, A4, A5, A6, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6])(f: (A0, A1, A2, A3, A4, A5, A6) ⇒ Z): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  93. def map8[A0, A1, A2, A3, A4, A5, A6, A7, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7])(f: (A0, A1, A2, A3, A4, A5, A6, A7) ⇒ Z): F[Z]

    Permalink
    Definition Classes
    ApplyArityFunctions
  94. def map9[A0, A1, A2, A3, A4, A5, A6, A7, A8, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8])(f: (A0, A1, A2, A3, A4, A5, A6, A7, A8) ⇒ Z): F[Z]

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

    Permalink
    Definition Classes
    FlatMap
  96. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  97. def never[A]: F[A]

    Permalink

    Returns a non-terminating F[_], that never completes with a result, being equivalent to async(_ => ())

    Returns a non-terminating F[_], that never completes with a result, being equivalent to async(_ => ())

    Definition Classes
    Async
  98. final def notify(): Unit

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

    Permalink
    Definition Classes
    AnyRef
  100. def onError[A](fa: F[A])(pf: PartialFunction[Throwable, F[Unit]]): F[A]

    Permalink
    Definition Classes
    ApplicativeError
  101. def point[A](a: A): F[A]

    Permalink
    Definition Classes
    InvariantMonoidal
  102. def product[A, B](fa: F[A], fb: F[B]): F[(A, B)]

    Permalink
    Definition Classes
    FlatMap → Apply → Semigroupal
  103. def productL[A, B](fa: F[A])(fb: F[B]): F[A]

    Permalink
    Definition Classes
    Apply
  104. def productLEval[A, B](fa: F[A])(fb: Eval[F[B]]): F[A]

    Permalink
    Definition Classes
    FlatMap
  105. def productR[A, B](fa: F[A])(fb: F[B]): F[B]

    Permalink
    Definition Classes
    Apply
  106. def productREval[A, B](fa: F[A])(fb: Eval[F[B]]): F[B]

    Permalink
    Definition Classes
    FlatMap
  107. def recover[A](fa: F[A])(pf: PartialFunction[Throwable, A]): F[A]

    Permalink
    Definition Classes
    ApplicativeError
  108. def recoverWith[A](fa: F[A])(pf: PartialFunction[Throwable, F[A]]): F[A]

    Permalink
    Definition Classes
    ApplicativeError
  109. def replicateA[A](n: Int, fa: F[A]): F[List[A]]

    Permalink
    Definition Classes
    Applicative
  110. def rethrow[A](fa: F[Either[Throwable, A]]): F[A]

    Permalink
    Definition Classes
    MonadError
  111. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  112. def toIO[A](fa: F[A]): IO[A]

    Permalink

    Convert to an IO[A].

    Convert to an IO[A].

    The law is that toIO(liftIO(ioa)) is the same as ioa

  113. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  114. def tuple10[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9]): F[(A0, A1, A2, A3, A4, A5, A6, A7, A8, A9)]

    Permalink
    Definition Classes
    ApplyArityFunctions
  115. def tuple11[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9], f10: F[A10]): F[(A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10)]

    Permalink
    Definition Classes
    ApplyArityFunctions
  116. def tuple12[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9], f10: F[A10], f11: F[A11]): F[(A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11)]

    Permalink
    Definition Classes
    ApplyArityFunctions
  117. def tuple13[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9], f10: F[A10], f11: F[A11], f12: F[A12]): F[(A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12)]

    Permalink
    Definition Classes
    ApplyArityFunctions
  118. def tuple14[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9], f10: F[A10], f11: F[A11], f12: F[A12], f13: F[A13]): F[(A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13)]

    Permalink
    Definition Classes
    ApplyArityFunctions
  119. def tuple15[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9], f10: F[A10], f11: F[A11], f12: F[A12], f13: F[A13], f14: F[A14]): F[(A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14)]

    Permalink
    Definition Classes
    ApplyArityFunctions
  120. def tuple16[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9], f10: F[A10], f11: F[A11], f12: F[A12], f13: F[A13], f14: F[A14], f15: F[A15]): F[(A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15)]

    Permalink
    Definition Classes
    ApplyArityFunctions
  121. def tuple17[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9], f10: F[A10], f11: F[A11], f12: F[A12], f13: F[A13], f14: F[A14], f15: F[A15], f16: F[A16]): F[(A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16)]

    Permalink
    Definition Classes
    ApplyArityFunctions
  122. def tuple18[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9], f10: F[A10], f11: F[A11], f12: F[A12], f13: F[A13], f14: F[A14], f15: F[A15], f16: F[A16], f17: F[A17]): F[(A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17)]

    Permalink
    Definition Classes
    ApplyArityFunctions
  123. def tuple19[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9], f10: F[A10], f11: F[A11], f12: F[A12], f13: F[A13], f14: F[A14], f15: F[A15], f16: F[A16], f17: F[A17], f18: F[A18]): F[(A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18)]

    Permalink
    Definition Classes
    ApplyArityFunctions
  124. def tuple2[A, B](f1: F[A], f2: F[B]): F[(A, B)]

    Permalink
    Definition Classes
    ApplyArityFunctions
  125. def tuple20[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9], f10: F[A10], f11: F[A11], f12: F[A12], f13: F[A13], f14: F[A14], f15: F[A15], f16: F[A16], f17: F[A17], f18: F[A18], f19: F[A19]): F[(A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19)]

    Permalink
    Definition Classes
    ApplyArityFunctions
  126. def tuple21[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9], f10: F[A10], f11: F[A11], f12: F[A12], f13: F[A13], f14: F[A14], f15: F[A15], f16: F[A16], f17: F[A17], f18: F[A18], f19: F[A19], f20: F[A20]): F[(A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20)]

    Permalink
    Definition Classes
    ApplyArityFunctions
  127. def tuple22[A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8], f9: F[A9], f10: F[A10], f11: F[A11], f12: F[A12], f13: F[A13], f14: F[A14], f15: F[A15], f16: F[A16], f17: F[A17], f18: F[A18], f19: F[A19], f20: F[A20], f21: F[A21]): F[(A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21)]

    Permalink
    Definition Classes
    ApplyArityFunctions
  128. def tuple3[A0, A1, A2, Z](f0: F[A0], f1: F[A1], f2: F[A2]): F[(A0, A1, A2)]

    Permalink
    Definition Classes
    ApplyArityFunctions
  129. def tuple4[A0, A1, A2, A3, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3]): F[(A0, A1, A2, A3)]

    Permalink
    Definition Classes
    ApplyArityFunctions
  130. def tuple5[A0, A1, A2, A3, A4, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4]): F[(A0, A1, A2, A3, A4)]

    Permalink
    Definition Classes
    ApplyArityFunctions
  131. def tuple6[A0, A1, A2, A3, A4, A5, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5]): F[(A0, A1, A2, A3, A4, A5)]

    Permalink
    Definition Classes
    ApplyArityFunctions
  132. def tuple7[A0, A1, A2, A3, A4, A5, A6, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6]): F[(A0, A1, A2, A3, A4, A5, A6)]

    Permalink
    Definition Classes
    ApplyArityFunctions
  133. def tuple8[A0, A1, A2, A3, A4, A5, A6, A7, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7]): F[(A0, A1, A2, A3, A4, A5, A6, A7)]

    Permalink
    Definition Classes
    ApplyArityFunctions
  134. def tuple9[A0, A1, A2, A3, A4, A5, A6, A7, A8, Z](f0: F[A0], f1: F[A1], f2: F[A2], f3: F[A3], f4: F[A4], f5: F[A5], f6: F[A6], f7: F[A7], f8: F[A8]): F[(A0, A1, A2, A3, A4, A5, A6, A7, A8)]

    Permalink
    Definition Classes
    ApplyArityFunctions
  135. def tupleLeft[A, B](fa: F[A], b: B): F[(B, A)]

    Permalink
    Definition Classes
    Functor
  136. def tupleRight[A, B](fa: F[A], b: B): F[(A, B)]

    Permalink
    Definition Classes
    Functor
  137. def uncancelable[A](fa: F[A]): F[A]

    Permalink

    Operation meant for ensuring a given task continues execution even when interrupted.

    Operation meant for ensuring a given task continues execution even when interrupted.

    Definition Classes
    Bracket
  138. def unit: F[Unit]

    Permalink
    Definition Classes
    Applicative → InvariantMonoidal
  139. def unlessA[A](cond: Boolean)(f: ⇒ F[A]): F[Unit]

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

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

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

    Permalink
    Definition Classes
    Functor
  143. final def wait(): Unit

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

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

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

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

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

    Permalink
    Definition Classes
    Monad
  149. def widen[A, B >: A](fa: F[A]): F[B]

    Permalink
    Definition Classes
    Functor

Deprecated Value Members

  1. final def followedBy[A, B](fa: F[A])(fb: F[B]): F[B]

    Permalink
    Definition Classes
    Apply
    Annotations
    @deprecated @inline()
    Deprecated

    (Since version 1.0.0-RC2) Use *> or productR instead.

  2. def followedByEval[A, B](fa: F[A])(fb: Eval[F[B]]): F[B]

    Permalink
    Definition Classes
    FlatMap
    Annotations
    @deprecated
    Deprecated

    (Since version 1.0.0-RC2) Use productREval instead.

  3. final def forEffect[A, B](fa: F[A])(fb: F[B]): F[A]

    Permalink
    Definition Classes
    Apply
    Annotations
    @deprecated @inline()
    Deprecated

    (Since version 1.0.0-RC2) Use <* or productL instead.

  4. def forEffectEval[A, B](fa: F[A])(fb: Eval[F[B]]): F[A]

    Permalink
    Definition Classes
    FlatMap
    Annotations
    @deprecated
    Deprecated

    (Since version 1.0.0-RC2) Use productLEval instead.

Inherited from Async[F]

Inherited from LiftIO[F]

Inherited from Sync[F]

Inherited from Bracket[F, Throwable]

Inherited from MonadError[F, Throwable]

Inherited from Monad[F]

Inherited from FlatMap[F]

Inherited from ApplicativeError[F, Throwable]

Inherited from Applicative[F]

Inherited from InvariantMonoidal[F]

Inherited from Apply[F]

Inherited from ApplyArityFunctions[F]

Inherited from InvariantSemigroupal[F]

Inherited from Semigroupal[F]

Inherited from Functor[F]

Inherited from Invariant[F]

Inherited from Serializable

Inherited from Serializable

Inherited from AnyRef

Inherited from Any

Ungrouped