Packages

trait Async3[F[-_, +_, +_]] extends Concurrent3[F] with IO3[F]

Linear Supertypes
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Async3
  2. IO3
  3. Panic3
  4. PanicSyntax
  5. Bracket3
  6. Error3
  7. Monad3
  8. ApplicativeError3
  9. Bifunctor3
  10. Guarantee3
  11. Applicative3
  12. Functor3
  13. Concurrent3
  14. Parallel3
  15. RootBifunctor
  16. Root
  17. PredefinedHelper
  18. DivergenceHelper
  19. AnyRef
  20. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Type Members

  1. final type Canceler = F[Any, Nothing, Unit]
  2. type Divergence = Nondivergent
    Definition Classes
    DivergenceHelper
  3. type IsPredefined = NotPredefined
    Definition Classes
    PredefinedHelper
  4. final type Just[+A] = F[Any, Nothing, A]
    Definition Classes
    IO3
  5. final type Or[+E, +A] = F[Any, E, A]
    Definition Classes
    IO3

Abstract Value Members

  1. abstract def async[E, A](register: ((Either[E, A]) => Unit) => Unit): F[Any, E, A]
  2. abstract def asyncCancelable[E, A](register: ((Either[E, A]) => Unit) => Canceler): F[Any, E, A]
  3. abstract def asyncF[R, E, A](register: ((Either[E, A]) => Unit) => F[R, E, Unit]): F[R, E, A]
  4. abstract def bracketCase[R, E, A, B](acquire: F[R, E, A])(release: (A, Exit[E, B]) => F[R, Nothing, Unit])(use: (A) => F[R, E, B]): F[R, E, B]
    Definition Classes
    Bracket3
  5. abstract def bracketExcept[R, E, A, B](acquire: (RestoreInterruption3[F]) => F[R, E, A])(release: (A, Exit[E, B]) => F[R, Nothing, Unit])(use: (A) => F[R, E, B]): F[R, E, B]

    Like bracketCase, but acquire can contain marked interruptible regions as in uninterruptibleExcept

    Like bracketCase, but acquire can contain marked interruptible regions as in uninterruptibleExcept

    Definition Classes
    Panic3
  6. abstract def catchAll[R, E, A, E2](r: F[R, E, A])(f: (E) => F[R, E2, A]): F[R, E2, A]
    Definition Classes
    Error3
  7. abstract def currentEC: F[Any, Nothing, ExecutionContext]
  8. abstract def fail[E](v: => E): F[Any, E, Nothing]
    Definition Classes
    ApplicativeError3
  9. abstract def flatMap[R, E, A, B](r: F[R, E, A])(f: (A) => F[R, E, B]): F[R, E, B]
    Definition Classes
    Monad3
  10. abstract def fromFuture[A](mkFuture: (ExecutionContext) => Future[A]): F[Any, Throwable, A]
  11. abstract def fromFutureJava[A](javaFuture: => CompletionStage[A]): F[Any, Throwable, A]
  12. abstract def onEC[R, E, A](ec: ExecutionContext)(f: F[R, E, A]): F[R, E, A]
  13. abstract def parTraverse[R, E, A, B](l: Iterable[A])(f: (A) => F[R, E, B]): F[R, E, List[B]]
    Definition Classes
    Parallel3
  14. abstract def parTraverseN[R, E, A, B](maxConcurrent: Int)(l: Iterable[A])(f: (A) => F[R, E, B]): F[R, E, List[B]]
    Definition Classes
    Parallel3
  15. abstract def parTraverseNCore[R, E, A, B](l: Iterable[A])(f: (A) => F[R, E, B]): F[R, E, List[B]]

    parTraverseN with maxConcurrent set to the number of cores, or 2 when on single-core processor

    parTraverseN with maxConcurrent set to the number of cores, or 2 when on single-core processor

    Definition Classes
    Parallel3
  16. abstract def pure[A](a: A): F[Any, Nothing, A]
    Definition Classes
    Applicative3
  17. abstract def race[R, E, A](r1: F[R, E, A], r2: F[R, E, A]): F[R, E, A]

    Race two actions, the winner is the first action to TERMINATE, whether by success or failure

    Race two actions, the winner is the first action to TERMINATE, whether by success or failure

    Definition Classes
    Concurrent3
  18. abstract def racePairUnsafe[R, E, A, B](fa: F[R, E, A], fb: F[R, E, B]): F[R, E, Either[(Exit[E, A], Fiber3[F, E, B]), (Fiber3[F, E, A], Exit[E, B])]]

    Race two actions, the winner is the first action to TERMINATE, whether by success or failure

    Race two actions, the winner is the first action to TERMINATE, whether by success or failure

    Unlike race, the loser is not interrupted after the winner has terminated - whether by success or failure.

    Definition Classes
    Concurrent3
  19. abstract def sandbox[R, E, A](r: F[R, E, A]): F[R, Failure[E], A]

    Definition Classes
    Panic3
    Note

    Will return either Exit.Error or Exit.Termination in the error channel. Exit.Interruption cannot be sandboxed. Use guaranteeOnInterrupt for cleanups on interruptions.

  20. abstract def sendInterruptToSelf: F[Any, Nothing, Unit]

    Signal interruption to this fiber.

    Signal interruption to this fiber.

    This is _NOT_ the same as

    F.halt(Exit.Interrupted(Trace.empty))

    The code above exits with Exit.Interrupted failure *unconditionally*, whereas sendInterruptToSelf will not exit when in an uninterruptible region. Example:

    F.uninterruptible {
      F.halt(Exit.Interrupted(Trace.empty)) *>
      F.sync(println("Hello!")) // interrupted above. Hello _not_ printed
    }

    But with sendInterruptToSelf:

    F.uninterruptible {
      F.sendInterruptToSelf *>
      F.sync(println("Hello!")) // Hello IS printed.
    } *> F.sync(println("Impossible")) // interrupted immediately after `uninterruptible` block ends. Impossible _not_ printed
    Definition Classes
    Panic3
    See also

  21. abstract def sync[A](effect: => A): F[Any, Nothing, A]

    Capture an _exception-safe_ side-effect such as memory mutation or randomness

    Capture an _exception-safe_ side-effect such as memory mutation or randomness

    Definition Classes
    IO3
    Example:
    1. import izumi.functional.bio.F
      
      val referentiallyTransparentArrayAllocation: F[Nothing, Array[Byte]] = {
        F.sync(new Array(256))
      }
    Note

    If you're not completely sure that a captured block can't throw, use syncThrowable

    ,

    sync means synchronous, that is, a blocking CPU effect, as opposed to a non-blocking asynchronous effect or a long blocking I/O effect (izumi.functional.bio.BlockingIO3#syncBlocking)

  22. abstract def syncThrowable[A](effect: => A): F[Any, Throwable, A]

    Capture a side-effectful block of code that can throw exceptions

    Capture a side-effectful block of code that can throw exceptions

    Definition Classes
    IO3
    Note

    sync means synchronous, that is, a blocking CPU effect, as opposed to a non-blocking asynchronous effect or a long blocking I/O effect (izumi.functional.bio.BlockingIO3#syncBlocking)

  23. abstract def terminate(v: => Throwable): F[Any, Nothing, Nothing]
    Definition Classes
    Panic3
  24. abstract def uninterruptibleExcept[R, E, A](r: (RestoreInterruption3[F]) => F[R, E, A]): F[R, E, A]

    Designate the effect uninterruptible, with exception of regions in it that are specifically marked to restore previous interruptibility status using the provided RestoreInterruption function

    Designate the effect uninterruptible, with exception of regions in it that are specifically marked to restore previous interruptibility status using the provided RestoreInterruption function

    Definition Classes
    Panic3
    Example:
    1. F.uninterruptibleExcept {
        restoreInterruption =>
          val workLoop = {
            importantWorkThatMustNotBeInterrupted() *>
            log.info("Taking a break for a second, you can interrupt me while I wait!") *>
            restoreInterruption.apply {
              F.sleep(1.second)
               .guaranteeOnInterrupt(_ => log.info("Got interrupted!"))
            } *>
            log.info("No interruptions, going back to work!") *>
            workLoop
          }
      
          workLoop
      }
    Note

    Interruptibility status will be restored to what it was in the outer region, so if the outer region was also uninterruptible, the provided RestoreInterruption will have no effect. e.g. the expression F.uninterruptible { F.uninterruptibleExcept { restore => restore(F.sleep(1.second)) } is fully uninterruptible throughout

  25. abstract def yieldNow: F[Any, Nothing, Unit]
    Definition Classes
    Concurrent3
  26. abstract def zipWithPar[R, E, A, B, C](fa: F[R, E, A], fb: F[R, E, B])(f: (A, B) => C): F[R, E, C]

    Returns an effect that executes both effects, in parallel, combining their results with the specified f function.

    Returns an effect that executes both effects, in parallel, combining their results with the specified f function. If either side fails, then the other side will be interrupted.

    Definition Classes
    Parallel3

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. def *>[R, E, A, B](f: F[R, E, A], next: => F[R, E, B]): F[R, E, B]

    execute two operations in order, return result of second operation

    execute two operations in order, return result of second operation

    Definition Classes
    Monad3Applicative3
  4. def <*[R, E, A, B](f: F[R, E, A], next: => F[R, E, B]): F[R, E, A]

    execute two operations in order, same as *>, but return result of first operation

    execute two operations in order, same as *>, but return result of first operation

    Definition Classes
    Monad3Applicative3
  5. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  6. def InnerF: Panic3[F]
    Definition Classes
    Async3ApplicativeError3Bifunctor3Concurrent3Parallel3
  7. final def apply[A](effect: => A): F[Any, Throwable, A]
    Definition Classes
    IO3
    Annotations
    @inline()
  8. def as[R, E, A, B](r: F[R, E, A])(v: => B): F[R, E, B]
    Definition Classes
    Functor3
  9. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  10. def attempt[R, E, A](r: F[R, E, A]): F[R, Nothing, Either[E, A]]
    Definition Classes
    Error3
  11. def bimap[R, E, A, E2, B](r: F[R, E, A])(f: (E) => E2, g: (A) => B): F[R, E2, B]
    Definition Classes
    Error3Bifunctor3
  12. def bracket[R, E, A, B](acquire: F[R, E, A])(release: (A) => F[R, Nothing, Unit])(use: (A) => F[R, E, B]): F[R, E, B]
    Definition Classes
    Bracket3
  13. final def bracketOnFailure[R, E, A, B](acquire: F[R, E, A])(cleanupOnFailure: (A, Failure[E]) => F[R, Nothing, Unit])(use: (A) => F[R, E, B]): F[R, E, B]

    Run release action only on a failure – _any failure_, INCLUDING interruption.

    Run release action only on a failure – _any failure_, INCLUDING interruption. Do not run release action if use finished successfully.

    Definition Classes
    Bracket3
  14. def catchSome[R, E, A, E1 >: E](r: F[R, E, A])(f: PartialFunction[E, F[R, E1, A]]): F[R, E1, A]
    Definition Classes
    Error3
  15. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  16. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  17. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  18. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  19. def flatten[R, E, A](r: F[R, E, F[R, E, A]]): F[R, E, A]
    Definition Classes
    Monad3
  20. def flip[R, E, A](r: F[R, E, A]): F[R, A, E]
    Definition Classes
    Error3
  21. final def forever[R, E, A](r: F[R, E, A]): F[R, E, Nothing]
    Definition Classes
    Applicative3
    Annotations
    @inline()
  22. def fromEither[E, A](effect: => Either[E, A]): F[Any, E, A]
    Definition Classes
    IO3ApplicativeError3
  23. final def fromFuture[A](mkFuture: => Future[A]): F[Any, Throwable, A]
    Annotations
    @inline()
  24. def fromOption[E, A](errorOnNone: => E)(effect: => Option[A]): F[Any, E, A]
    Definition Classes
    IO3ApplicativeError3
  25. def fromOption[R, E, A](errorOnNone: => E, r: F[R, E, Option[A]]): F[R, E, A]

    Extracts the optional value or fails with the errorOnNone error

    Extracts the optional value or fails with the errorOnNone error

    Definition Classes
    Error3
  26. def fromOptionF[R, E, A](fallbackOnNone: => F[R, E, A], r: F[R, E, Option[A]]): F[R, E, A]

    Extracts the optional value, or executes the fallbackOnNone effect

    Extracts the optional value, or executes the fallbackOnNone effect

    Definition Classes
    Monad3
  27. def fromOptionOr[R, E, A](valueOnNone: => A, r: F[R, E, Option[A]]): F[R, E, A]

    Extracts the optional value, or returns the given valueOnNone value

    Extracts the optional value, or returns the given valueOnNone value

    Definition Classes
    Functor3
  28. def fromTry[A](effect: => Try[A]): F[Any, Throwable, A]
    Definition Classes
    IO3ApplicativeError3
  29. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  30. def guarantee[R, E, A](f: F[R, E, A], cleanup: F[R, Nothing, Unit]): F[R, E, A]
    Definition Classes
    Bracket3Guarantee3
  31. def guaranteeCase[R, E, A](f: F[R, E, A], cleanup: (Exit[E, A]) => F[R, Nothing, Unit]): F[R, E, A]
    Definition Classes
    Bracket3
  32. final def guaranteeExceptOnInterrupt[R, E, A](f: F[R, E, A], cleanupOnNonInterruption: (Either[Termination, Either[Error[E], Success[A]]]) => F[R, Nothing, Unit]): F[R, E, A]

    Run cleanup on both _success_ and _failure_, if the failure IS NOT an interruption.

    Run cleanup on both _success_ and _failure_, if the failure IS NOT an interruption.

    Definition Classes
    Bracket3
  33. final def guaranteeOnFailure[R, E, A](f: F[R, E, A], cleanupOnFailure: (Failure[E]) => F[R, Nothing, Unit]): F[R, E, A]

    Run cleanup only on a failure – _any failure_, INCLUDING interruption.

    Run cleanup only on a failure – _any failure_, INCLUDING interruption. Do not run cleanup if use finished successfully.

    Definition Classes
    Bracket3
  34. final def guaranteeOnInterrupt[R, E, A](f: F[R, E, A], cleanupOnInterruption: (Interruption) => F[R, Nothing, Unit]): F[R, E, A]

    Run cleanup only on interruption.

    Run cleanup only on interruption. Do not run cleanup if use finished successfully.

    Definition Classes
    Bracket3
  35. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  36. final def ifThenElse[R, E, E1, A](cond: F[R, E, Boolean])(ifTrue: => F[R, E1, A], ifFalse: => F[R, E1, A])(implicit ev: <:<[E, E1]): F[R, E1, A]
    Definition Classes
    Monad3
    Annotations
    @inline()
  37. final def ifThenElse[R, E, A](cond: Boolean)(ifTrue: => F[R, E, A], ifFalse: => F[R, E, A]): F[R, E, A]
    Definition Classes
    Applicative3
    Annotations
    @inline()
  38. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  39. def iterateUntil[R, E, A](r: F[R, E, A])(p: (A) => Boolean): F[R, E, A]

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

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

    Definition Classes
    Monad3
  40. def iterateUntilF[R, E, A](init: A)(f: (A) => F[R, E, A])(p: (A) => Boolean): F[R, E, A]

    Apply an effectful function iteratively until its result satisfies the given predicate and return that result.

    Apply an effectful function iteratively until its result satisfies the given predicate and return that result.

    Definition Classes
    Monad3
  41. def iterateWhile[R, E, A](r: F[R, E, A])(p: (A) => Boolean): F[R, E, A]

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

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

    Definition Classes
    Monad3
  42. def iterateWhileF[R, E, A](init: A)(f: (A) => F[R, E, A])(p: (A) => Boolean): F[R, E, A]

    Apply an effectful function iteratively until its result fails to satisfy the given predicate and return that result.

    Apply an effectful function iteratively until its result fails to satisfy the given predicate and return that result.

    Definition Classes
    Monad3
  43. def leftFlatMap[R, E, A, E2](r: F[R, E, A])(f: (E) => F[R, Nothing, E2]): F[R, E2, A]
    Definition Classes
    Error3
  44. def leftMap[R, E, A, E2](r: F[R, E, A])(f: (E) => E2): F[R, E2, A]
    Definition Classes
    Bifunctor3
  45. def leftMap2[R, E, A, E2, E3](firstOp: F[R, E, A], secondOp: => F[R, E2, A])(f: (E, E2) => E3): F[R, E3, A]

    map errors from two operations into a new error if both fail

    map errors from two operations into a new error if both fail

    Definition Classes
    Error3ApplicativeError3
  46. def map[R, E, A, B](r: F[R, E, A])(f: (A) => B): F[R, E, B]
    Definition Classes
    Monad3Functor3
  47. def map2[R, E, A, B, C](r1: F[R, E, A], r2: => F[R, E, B])(f: (A, B) => C): F[R, E, C]

    execute two operations in order, map their results

    execute two operations in order, map their results

    Definition Classes
    Monad3Applicative3
  48. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  49. def never: F[Any, Nothing, Nothing]
    Definition Classes
    Async3Concurrent3
  50. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  51. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  52. def orElse[R, E, A, E2](r: F[R, E, A], f: => F[R, E2, A]): F[R, E2, A]

    execute second operation only if the first one fails

    execute second operation only if the first one fails

    Definition Classes
    Error3ApplicativeError3
  53. final def orTerminate[R, A](r: F[R, Throwable, A]): F[R, Nothing, A]
    Definition Classes
    Panic3
    Annotations
    @inline()
  54. def parTraverseNCore_[R, E, A, B](l: Iterable[A])(f: (A) => F[R, E, B]): F[R, E, Unit]
    Definition Classes
    Parallel3
  55. def parTraverseN_[R, E, A, B](maxConcurrent: Int)(l: Iterable[A])(f: (A) => F[R, E, B]): F[R, E, Unit]
    Definition Classes
    Parallel3
  56. def parTraverse_[R, E, A, B](l: Iterable[A])(f: (A) => F[R, E, B]): F[R, E, Unit]
    Definition Classes
    Parallel3
  57. def redeem[R, E, A, E2, B](r: F[R, E, A])(err: (E) => F[R, E2, B], succ: (A) => F[R, E2, B]): F[R, E2, B]
    Definition Classes
    Error3
  58. def redeemPure[R, E, A, B](r: F[R, E, A])(err: (E) => B, succ: (A) => B): F[R, Nothing, B]
    Definition Classes
    Error3
  59. def retryUntil[R, E, A](r: F[R, E, A])(f: (E) => Boolean): F[R, E, A]

    Retries this effect until its error satisfies the specified predicate.

    Retries this effect until its error satisfies the specified predicate.

    Definition Classes
    Error3
  60. def retryUntilF[R, R1 <: R, E, A](r: F[R, E, A])(f: (E) => F[R1, Nothing, Boolean]): F[R1, E, A]

    Retries this effect until its error satisfies the specified effectful predicate.

    Retries this effect until its error satisfies the specified effectful predicate.

    Definition Classes
    Error3
  61. def retryWhile[R, E, A](r: F[R, E, A])(f: (E) => Boolean): F[R, E, A]

    Retries this effect while its error satisfies the specified predicate.

    Retries this effect while its error satisfies the specified predicate.

    Definition Classes
    Error3
  62. def retryWhileF[R, R1 <: R, E, A](r: F[R, E, A])(f: (E) => F[R1, Nothing, Boolean]): F[R1, E, A]

    Retries this effect while its error satisfies the specified effectful predicate.

    Retries this effect while its error satisfies the specified effectful predicate.

    Definition Classes
    Error3
  63. final def sandboxExit[R, E, A](r: F[R, E, A]): F[R, Nothing, Exit[E, A]]

    Definition Classes
    Panic3
    Annotations
    @inline()
    Note

    Will return either Exit.Error or Exit.Termination. Exit.Interruption cannot be sandboxed. Use guaranteeOnInterrupt for cleanups on interruptions.

  64. def sequence[R, E, A](l: Iterable[F[R, E, A]]): F[R, E, List[A]]
    Definition Classes
    Applicative3
  65. def sequence_[R, E](l: Iterable[F[R, E, Unit]]): F[R, E, Unit]
    Definition Classes
    Applicative3
  66. def suspend[R, A](effect: => F[R, Throwable, A]): F[R, Throwable, A]
    Definition Classes
    IO3
  67. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  68. def tailRecM[R, E, A, B](a: A)(f: (A) => F[R, E, Either[A, B]]): F[R, E, B]
    Definition Classes
    Monad3
  69. def tap[R, E, A](r: F[R, E, A], f: (A) => F[R, E, Unit]): F[R, E, A]
    Definition Classes
    Monad3
  70. def tapBoth[R, E, A, E1 >: E](r: F[R, E, A])(err: (E) => F[R, E1, Unit], succ: (A) => F[R, E1, Unit]): F[R, E1, A]
    Definition Classes
    Error3
  71. def tapError[R, E, A, E1 >: E](r: F[R, E, A])(f: (E) => F[R, E1, Unit]): F[R, E1, A]
    Definition Classes
    Error3
  72. def toString(): String
    Definition Classes
    AnyRef → Any
  73. final def traverse[R, E, A, B](o: Option[A])(f: (A) => F[R, E, B]): F[R, E, Option[B]]
    Definition Classes
    Applicative3
    Annotations
    @inline()
  74. def traverse[R, E, A, B](l: Iterable[A])(f: (A) => F[R, E, B]): F[R, E, List[B]]
    Definition Classes
    Applicative3
  75. def traverse_[R, E, A](l: Iterable[A])(f: (A) => F[R, E, Unit]): F[R, E, Unit]
    Definition Classes
    Applicative3
  76. def uninterruptible[R, E, A](r: F[R, E, A]): F[R, E, A]
    Definition Classes
    Panic3
  77. def unit: F[Any, Nothing, Unit]
    Definition Classes
    Applicative3
  78. final def unless[R, E, E1](cond: F[R, E, Boolean])(ifFalse: => F[R, E1, Unit])(implicit ev: <:<[E, E1]): F[R, E1, Unit]
    Definition Classes
    Monad3
    Annotations
    @inline()
  79. final def unless[R, E](cond: Boolean)(ifFalse: => F[R, E, Unit]): F[R, E, Unit]
    Definition Classes
    Applicative3
    Annotations
    @inline()
  80. def void[R, E, A](r: F[R, E, A]): F[R, E, Unit]
    Definition Classes
    Functor3
  81. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  82. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  83. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  84. final def when[R, E, E1](cond: F[R, E, Boolean])(ifTrue: => F[R, E1, Unit])(implicit ev: <:<[E, E1]): F[R, E1, Unit]
    Definition Classes
    Monad3
    Annotations
    @inline()
  85. final def when[R, E](cond: Boolean)(ifTrue: => F[R, E, Unit]): F[R, E, Unit]
    Definition Classes
    Applicative3
    Annotations
    @inline()
  86. final def widen[R, E, A, A1](r: F[R, E, A])(implicit ev: <:<[A, A1]): F[R, E, A1]
    Definition Classes
    Functor3
    Annotations
    @inline()
  87. final def widenBoth[R, E, A, E1, A1](r: F[R, E, A])(implicit ev: <:<[E, E1], ev2: <:<[A, A1]): F[R, E1, A1]
    Definition Classes
    Bifunctor3
    Annotations
    @inline()
  88. final def widenError[R, E, A, E1](r: F[R, E, A])(implicit ev: <:<[E, E1]): F[R, E1, A]
    Definition Classes
    Bifunctor3
    Annotations
    @inline()
  89. final def withFilter[R, E, A](r: F[R, E, A])(predicate: (A) => Boolean)(implicit filter: WithFilter[E], pos: SourceFilePositionMaterializer): F[R, E, A]

    for-comprehensions sugar:

    for-comprehensions sugar:

    for {
      (1, 2) <- F.pure((2, 1))
    } yield ()

    Use widenError to for pattern matching with non-Throwable errors:

    val f = for {
      (1, 2) <- F.pure((2, 1)).widenError[Option[Unit]]
    } yield ()
    // f: F[Option[Unit], Unit] = F.fail(Some(())
    Definition Classes
    Error3
    Annotations
    @inline()
  90. def zipPar[R, E, A, B](fa: F[R, E, A], fb: F[R, E, B]): F[R, E, (A, B)]

    Returns an effect that executes both effects, in parallel, combining their results into a tuple.

    Returns an effect that executes both effects, in parallel, combining their results into a tuple. If either side fails, then the other side will be interrupted.

    Definition Classes
    Parallel3
  91. def zipParLeft[R, E, A, B](fa: F[R, E, A], fb: F[R, E, B]): F[R, E, A]

    Returns an effect that executes both effects, in parallel, the left effect result is returned.

    Returns an effect that executes both effects, in parallel, the left effect result is returned. If either side fails, then the other side will be interrupted.

    Definition Classes
    Parallel3
  92. def zipParRight[R, E, A, B](fa: F[R, E, A], fb: F[R, E, B]): F[R, E, B]

    Returns an effect that executes both effects, in parallel, the right effect result is returned.

    Returns an effect that executes both effects, in parallel, the right effect result is returned. If either side fails, then the other side will be interrupted.

    Definition Classes
    Parallel3

Inherited from IO3[F]

Inherited from Panic3[F]

Inherited from PanicSyntax

Inherited from Bracket3[F]

Inherited from Error3[F]

Inherited from Monad3[F]

Inherited from ApplicativeError3[F]

Inherited from Bifunctor3[F]

Inherited from Guarantee3[F]

Inherited from Applicative3[F]

Inherited from Functor3[F]

Inherited from Concurrent3[F]

Inherited from Parallel3[F]

Inherited from RootBifunctor[F]

Inherited from Root

Inherited from PredefinedHelper

Inherited from DivergenceHelper

Inherited from AnyRef

Inherited from Any

Ungrouped