Object/Trait

zio

ZIO

Related Docs: trait ZIO | package zio

Permalink

object ZIO extends ZIOCompanionPlatformSpecific with Serializable

Linear Supertypes
Serializable, Serializable, ZIOCompanionPlatformSpecific, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ZIO
  2. Serializable
  3. Serializable
  4. ZIOCompanionPlatformSpecific
  5. AnyRef
  6. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. final class AccessMPartiallyApplied[R] extends AnyVal

    Permalink
  2. final class AccessPartiallyApplied[R] extends AnyVal

    Permalink
  3. final class BracketAcquire[-R, +E, +A] extends AnyVal

    Permalink
  4. final class BracketAcquire_[-R, +E] extends AnyVal

    Permalink
  5. final class BracketExitAcquire[-R, +E, +A] extends AnyVal

    Permalink
  6. final class BracketExitRelease[-R, +E, E1, +A, B] extends AnyRef

    Permalink
  7. final class BracketRelease[-R, +E, +A] extends AnyRef

    Permalink
  8. final class BracketReleaseFn[R, E, A, B] extends ZIOFn2[A, Exit[E, B], URIO[R, Any]]

    Permalink
  9. final class BracketRelease_[-R, +E] extends AnyRef

    Permalink
  10. abstract class CanFilter[+E] extends AnyRef

    Permalink
    Annotations
    @implicitNotFound( ... )
  11. final class ConstFn[A, B] extends ZIOFn1[A, B]

    Permalink
  12. final class ConstZIOFn[R, E, A, B] extends ZIOFn1[A, ZIO[R, E, B]]

    Permalink
  13. final class FoldCauseMFailureFn[R, E, E2, A] extends ZIOFn1[Cause[E], ZIO[R, E2, A]]

    Permalink
  14. final class FoldCauseMFailureTraceFn[R, E, E2, A] extends ZIOFn1[Cause[E], ZIO[R, E2, A]]

    Permalink
  15. final class ForkScopeRestore extends AnyVal

    Permalink
  16. final class Grafter extends AnyVal

    Permalink
  17. final class IfM[R, E] extends AnyVal

    Permalink
  18. final class InterruptStatusRestore extends AnyVal

    Permalink
  19. final class MapErrorCauseFn[R, E, E2, A] extends ZIOFn1[Cause[E], ZIO[R, E2, Nothing]]

    Permalink
  20. final class MapErrorFn[R, E, E2, A] extends ZIOFn1[Cause[E], ZIO[R, E2, Nothing]]

    Permalink
  21. final class MapFn[R, E, A, B] extends ZIOFn1[A, ZIO[R, E, B]]

    Permalink
  22. final class ProvideSomeLayer[R0 <: Has[_], -R, +E, +A] extends AnyVal

    Permalink
  23. final class ServiceWithPartiallyApplied[Service] extends AnyVal

    Permalink
  24. final class SucceedFn[R, E, A] extends ZIOFn1[A, ZIO[R, E, A]]

    Permalink
  25. final class TapCauseRefailFn[R, E, E1 >: E, A] extends ZIOFn1[Cause[E], ZIO[R, E1, Nothing]]

    Permalink
  26. final class TapErrorRefailFn[R, E, E1 >: E, A] extends ZIOFn1[Cause[E], ZIO[R, E1, Nothing]]

    Permalink
  27. final class TapErrorTraceRefailFn[R, E, E1 >: E, A] extends ZIOFn1[Cause[E], ZIO[R, E1, Nothing]]

    Permalink
  28. final class TapFn[R, E, A] extends ZIOFn1[A, ZIO[R, E, A]]

    Permalink
  29. final class TimeoutTo[-R, +E, +A, +B] extends AnyRef

    Permalink
  30. final class UnlessM[R, E] extends AnyVal

    Permalink
  31. final class UpdateService[-R, +E, +A, M] extends AnyVal

    Permalink
  32. final class WhenM[R, E] extends AnyVal

    Permalink
  33. implicit final class ZIOAutoCloseableOps[R, E, A <: AutoCloseable] extends AnyVal

    Permalink
  34. implicit final class ZIOWithFilterOps[R, E, A] extends AnyVal

    Permalink
  35. implicit final class ZioRefineToOrDieOps[R, E <: Throwable, A] extends AnyVal

    Permalink
  36. final class ZipLeftFn[R, E, A, B] extends ZIOFn1[B, ZIO[R, E, B]]

    Permalink
  37. final class ZipRightFn[R, E, A, B] extends ZIOFn1[A, ZIO[R, E, B]]

    Permalink

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. object CanFilter

    Permalink
  5. def absolve[R, E, A](v: ZIO[R, E, Either[E, A]]): ZIO[R, E, A]

    Permalink

    Submerges the error case of an Either into the ZIO.

    Submerges the error case of an Either into the ZIO. The inverse operation of IO.either.

  6. def access[R]: AccessPartiallyApplied[R]

    Permalink

    Accesses the environment of the effect.

    Accesses the environment of the effect.

    val portNumber = effect.access(_.config.portNumber)
  7. def accessM[R]: AccessMPartiallyApplied[R]

    Permalink

    Effectfully accesses the environment of the effect.

  8. def allowInterrupt: UIO[Unit]

    Permalink

    Makes an explicit check to see if the fiber has been interrupted, and if so, performs self-interruption

  9. def apply[A](a: ⇒ A): Task[A]

    Permalink
  10. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  11. def bracket[R, E, A, B](acquire: ZIO[R, E, A], release: (A) ⇒ URIO[R, Any], use: (A) ⇒ ZIO[R, E, B]): ZIO[R, E, B]

    Permalink

    Uncurried version.

    Uncurried version. Doesn't offer curried syntax and have worse type-inference characteristics, but guarantees no extra allocations of intermediate zio.ZIO.BracketAcquire and zio.ZIO.BracketRelease objects.

  12. def bracket[R, E, A](acquire: ZIO[R, E, A]): BracketAcquire[R, E, A]

    Permalink

    When this effect represents acquisition of a resource (for example, opening a file, launching a thread, etc.), bracket can be used to ensure the acquisition is not interrupted and the resource is always released.

    When this effect represents acquisition of a resource (for example, opening a file, launching a thread, etc.), bracket can be used to ensure the acquisition is not interrupted and the resource is always released.

    The function does two things:

    1. Ensures this effect, which acquires the resource, will not be interrupted. Of course, acquisition may fail for internal reasons (an uncaught exception). 2. Ensures the release effect will not be interrupted, and will be executed so long as this effect successfully acquires the resource.

    In between acquisition and release of the resource, the use effect is executed.

    If the release effect fails, then the entire effect will fail even if the use effect succeeds. If this fail-fast behavior is not desired, errors produced by the release effect can be caught and ignored.

    openFile("data.json").bracket(closeFile) { file =>
      for {
        header <- readHeader(file)
        ...
      } yield result
    }
  13. def bracketExit[R, E, A, B](acquire: ZIO[R, E, A], release: (A, Exit[E, B]) ⇒ URIO[R, Any], use: (A) ⇒ ZIO[R, E, B]): ZIO[R, E, B]

    Permalink

    Uncurried version.

    Uncurried version. Doesn't offer curried syntax and has worse type-inference characteristics, but guarantees no extra allocations of intermediate zio.ZIO.BracketExitAcquire and zio.ZIO.BracketExitRelease objects.

  14. def bracketExit[R, E, A](acquire: ZIO[R, E, A]): BracketExitAcquire[R, E, A]

    Permalink

    Acquires a resource, uses the resource, and then releases the resource.

    Acquires a resource, uses the resource, and then releases the resource. Neither the acquisition nor the release will be interrupted, and the resource is guaranteed to be released, so long as the acquire effect succeeds. If use fails, then after release, the returned effect will fail with the same error.

  15. def checkInterruptible[R, E, A](f: (zio.InterruptStatus) ⇒ ZIO[R, E, A]): ZIO[R, E, A]

    Permalink

    Checks the interrupt status, and produces the effect returned by the specified callback.

  16. def checkTraced[R, E, A](f: (zio.TracingStatus) ⇒ ZIO[R, E, A]): ZIO[R, E, A]

    Permalink

    Checks the ZIO Tracing status, and produces the effect returned by the specified callback.

  17. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  18. def collect[R, E, A, B, Collection[+Element] <: Iterable[Element]](in: Collection[A])(f: (A) ⇒ ZIO[R, Option[E], B])(implicit bf: zio.BuildFrom[Collection[A], B, Collection[B]]): ZIO[R, E, Collection[B]]

    Permalink

    Evaluate each effect in the structure from left to right, collecting the the successful values and discarding the empty cases.

    Evaluate each effect in the structure from left to right, collecting the the successful values and discarding the empty cases. For a parallel version, see collectPar.

  19. def collectAll[R, E, A](in: NonEmptyChunk[ZIO[R, E, A]]): ZIO[R, E, NonEmptyChunk[A]]

    Permalink

    Evaluate each effect in the structure from left to right, and collect the results.

    Evaluate each effect in the structure from left to right, and collect the results. For a parallel version, see collectAllPar.

  20. def collectAll[R, E, A](in: Option[ZIO[R, E, A]]): ZIO[R, E, Option[A]]

    Permalink

    Evaluate effect if present, and return its result as Option[A].

  21. def collectAll[R, E, A](in: Array[ZIO[R, E, A]])(implicit arg0: ClassTag[A]): ZIO[R, E, Array[A]]

    Permalink

    Evaluate each effect in the structure from left to right, and collect the results.

    Evaluate each effect in the structure from left to right, and collect the results. For a parallel version, see collectAllPar.

  22. def collectAll[R, E, A](in: Set[ZIO[R, E, A]]): ZIO[R, E, Set[A]]

    Permalink

    Evaluate each effect in the structure from left to right, and collect the results.

    Evaluate each effect in the structure from left to right, and collect the results. For a parallel version, see collectAllPar.

  23. def collectAll[R, E, A, Collection[+Element] <: Iterable[Element]](in: Collection[ZIO[R, E, A]])(implicit bf: zio.BuildFrom[Collection[ZIO[R, E, A]], A, Collection[A]]): ZIO[R, E, Collection[A]]

    Permalink

    Evaluate each effect in the structure from left to right, and collect the results.

    Evaluate each effect in the structure from left to right, and collect the results. For a parallel version, see collectAllPar.

  24. def collectAllPar[R, E, A](as: NonEmptyChunk[ZIO[R, E, A]]): ZIO[R, E, NonEmptyChunk[A]]

    Permalink

    Evaluate each effect in the structure in parallel, and collect the results.

    Evaluate each effect in the structure in parallel, and collect the results. For a sequential version, see collectAll.

  25. def collectAllPar[R, E, A](as: Array[ZIO[R, E, A]])(implicit arg0: ClassTag[A]): ZIO[R, E, Array[A]]

    Permalink

    Evaluate each effect in the structure in parallel, and collect the results.

    Evaluate each effect in the structure in parallel, and collect the results. For a sequential version, see collectAll.

  26. def collectAllPar[R, E, A](as: Set[ZIO[R, E, A]]): ZIO[R, E, Set[A]]

    Permalink

    Evaluate each effect in the structure in parallel, and collect the results.

    Evaluate each effect in the structure in parallel, and collect the results. For a sequential version, see collectAll.

  27. def collectAllPar[R, E, A, Collection[+Element] <: Iterable[Element]](as: Collection[ZIO[R, E, A]])(implicit bf: zio.BuildFrom[Collection[ZIO[R, E, A]], A, Collection[A]]): ZIO[R, E, Collection[A]]

    Permalink

    Evaluate each effect in the structure in parallel, and collect the results.

    Evaluate each effect in the structure in parallel, and collect the results. For a sequential version, see collectAll.

  28. def collectAllParN[R, E, A, Collection[+Element] <: Iterable[Element]](n: Int)(as: Collection[ZIO[R, E, A]])(implicit bf: zio.BuildFrom[Collection[ZIO[R, E, A]], A, Collection[A]]): ZIO[R, E, Collection[A]]

    Permalink

    Evaluate each effect in the structure in parallel, and collect the results.

    Evaluate each effect in the structure in parallel, and collect the results. For a sequential version, see collectAll.

    Unlike collectAllPar, this method will use at most n fibers.

  29. def collectAllParN_[R, E, A](n: Int)(as: Iterable[ZIO[R, E, A]]): ZIO[R, E, Unit]

    Permalink

    Evaluate each effect in the structure in parallel, and discard the results.

    Evaluate each effect in the structure in parallel, and discard the results. For a sequential version, see collectAll_.

    Unlike collectAllPar_, this method will use at most n fibers.

  30. def collectAllPar_[R, E, A](as: Iterable[ZIO[R, E, A]]): ZIO[R, E, Unit]

    Permalink

    Evaluate each effect in the structure in parallel, and discard the results.

    Evaluate each effect in the structure in parallel, and discard the results. For a sequential version, see collectAll_.

  31. def collectAllSuccesses[R, E, A, Collection[+Element] <: Iterable[Element]](in: Collection[ZIO[R, E, A]])(implicit bf: zio.BuildFrom[Collection[ZIO[R, E, A]], A, Collection[A]]): URIO[R, Collection[A]]

    Permalink

    Evaluate and run each effect in the structure and collect discarding failed ones.

  32. def collectAllSuccessesPar[R, E, A, Collection[+Element] <: Iterable[Element]](in: Collection[ZIO[R, E, A]])(implicit bf: zio.BuildFrom[Collection[ZIO[R, E, A]], A, Collection[A]]): URIO[R, Collection[A]]

    Permalink

    Evaluate and run each effect in the structure in parallel, and collect discarding failed ones.

  33. def collectAllSuccessesParN[R, E, A, Collection[+Element] <: Iterable[Element]](n: Int)(in: Collection[ZIO[R, E, A]])(implicit bf: zio.BuildFrom[Collection[ZIO[R, E, A]], A, Collection[A]]): URIO[R, Collection[A]]

    Permalink

    Evaluate and run each effect in the structure in parallel, and collect discarding failed ones.

    Evaluate and run each effect in the structure in parallel, and collect discarding failed ones.

    Unlike collectAllSuccessesPar, this method will use at most up to n fibers.

  34. def collectAllWith[R, E, A, B, Collection[+Element] <: Iterable[Element]](in: Collection[ZIO[R, E, A]])(f: PartialFunction[A, B])(implicit bf: zio.BuildFrom[Collection[ZIO[R, E, A]], B, Collection[B]]): ZIO[R, E, Collection[B]]

    Permalink

    Evaluate each effect in the structure with collectAll, and collect the results with given partial function.

  35. def collectAllWithPar[R, E, A, U, Collection[+Element] <: Iterable[Element]](in: Collection[ZIO[R, E, A]])(f: PartialFunction[A, U])(implicit bf: zio.BuildFrom[Collection[ZIO[R, E, A]], U, Collection[U]]): ZIO[R, E, Collection[U]]

    Permalink

    Evaluate each effect in the structure with collectAllPar, and collect the results with given partial function.

  36. def collectAllWithParN[R, E, A, B, Collection[+Element] <: Iterable[Element]](n: Int)(in: Collection[ZIO[R, E, A]])(f: PartialFunction[A, B])(implicit bf: zio.BuildFrom[Collection[ZIO[R, E, A]], B, Collection[B]]): ZIO[R, E, Collection[B]]

    Permalink

    Evaluate each effect in the structure with collectAllPar, and collect the results with given partial function.

    Evaluate each effect in the structure with collectAllPar, and collect the results with given partial function.

    Unlike collectAllWithPar, this method will use at most up to n fibers.

  37. def collectAll_[R, E, A](in: Iterable[ZIO[R, E, A]]): ZIO[R, E, Unit]

    Permalink

    Evaluate each effect in the structure from left to right, and discard the results.

    Evaluate each effect in the structure from left to right, and discard the results. For a parallel version, see collectAllPar_.

  38. def collectFirst[R, E, A, B](as: Iterable[A])(f: (A) ⇒ ZIO[R, E, Option[B]]): ZIO[R, E, Option[B]]

    Permalink

    Collects the first element of the Iterable[A] for which the effectual function f returns Some.

  39. def collectPar[R, E, A, B, Collection[+Element] <: Iterable[Element]](in: Collection[A])(f: (A) ⇒ ZIO[R, Option[E], B])(implicit bf: zio.BuildFrom[Collection[A], B, Collection[B]]): ZIO[R, E, Collection[B]]

    Permalink

    Evaluate each effect in the structure in parallel, collecting the the successful values and discarding the empty cases.

  40. def collectParN[R, E, A, B, Collection[+Element] <: Iterable[Element]](n: Int)(in: Collection[A])(f: (A) ⇒ ZIO[R, Option[E], B])(implicit bf: zio.BuildFrom[Collection[A], B, Collection[B]]): ZIO[R, E, Collection[B]]

    Permalink

    Evaluate each effect in the structure in parallel, collecting the the successful values and discarding the empty cases.

    Evaluate each effect in the structure in parallel, collecting the the successful values and discarding the empty cases.

    Unlike collectPar, this method will use at most up to n fibers.

  41. def cond[E, A](predicate: Boolean, result: ⇒ A, error: ⇒ E): IO[E, A]

    Permalink

    Similar to Either.cond, evaluate the predicate, return the given A as success if predicate returns true, and the given E as error otherwise

    Similar to Either.cond, evaluate the predicate, return the given A as success if predicate returns true, and the given E as error otherwise

    For effectful conditionals, see ZIO.ifM

  42. def debug(message: String): UIO[Unit]

    Permalink

    Prints the specified message to the console for debugging purposes.

  43. def descriptor: UIO[Fiber.Descriptor]

    Permalink

    Returns information about the current fiber, such as its identity.

  44. def descriptorWith[R, E, A](f: (Fiber.Descriptor) ⇒ ZIO[R, E, A]): ZIO[R, E, A]

    Permalink

    Constructs an effect based on information about the current fiber, such as its identity.

  45. def die(t: ⇒ Throwable): UIO[Nothing]

    Permalink

    Returns an effect that dies with the specified Throwable.

    Returns an effect that dies with the specified Throwable. This method can be used for terminating a fiber because a defect has been detected in the code.

  46. def dieMessage(message: ⇒ String): UIO[Nothing]

    Permalink

    Returns an effect that dies with a java.lang.RuntimeException having the specified text message.

    Returns an effect that dies with a java.lang.RuntimeException having the specified text message. This method can be used for terminating a fiber because a defect has been detected in the code.

  47. def done[E, A](r: ⇒ Exit[E, A]): IO[E, A]

    Permalink

    Returns an effect from a zio.Exit value.

  48. def effect[A](effect: ⇒ A): Task[A]

    Permalink

    Imports a synchronous side-effect into a pure ZIO value, translating any thrown exceptions into typed failed effects creating with ZIO.fail.

    Imports a synchronous side-effect into a pure ZIO value, translating any thrown exceptions into typed failed effects creating with ZIO.fail.

    def putStrLn(line: String): Task[Unit] = Task.effect(println(line))
  49. def effectAsync[R, E, A](register: ((ZIO[R, E, A]) ⇒ Unit) ⇒ Any, blockingOn: List[Id] = Nil): ZIO[R, E, A]

    Permalink

    Imports an asynchronous side-effect into a pure ZIO value.

    Imports an asynchronous side-effect into a pure ZIO value. See effectAsyncMaybe for the more expressive variant of this function that can return a value synchronously.

    The callback function ZIO[R, E, A] => Any must be called at most once.

    The list of fibers, that may complete the async callback, is used to provide better diagnostics.

  50. def effectAsyncInterrupt[R, E, A](register: ((ZIO[R, E, A]) ⇒ Unit) ⇒ Either[Canceler[R], ZIO[R, E, A]], blockingOn: List[Id] = Nil): ZIO[R, E, A]

    Permalink

    Imports an asynchronous side-effect into a ZIO effect.

    Imports an asynchronous side-effect into a ZIO effect. The side-effect has the option of returning the value synchronously, which is useful in cases where it cannot be determined if the effect is synchronous or asynchronous until the side-effect is actually executed. The effect also has the option of returning a canceler, which will be used by the runtime to cancel the asynchronous effect if the fiber executing the effect is interrupted.

    If the register function returns a value synchronously, then the callback function ZIO[R, E, A] => Any must not be called. Otherwise the callback function must be called at most once.

    The list of fibers, that may complete the async callback, is used to provide better diagnostics.

  51. def effectAsyncM[R, E, A](register: ((ZIO[R, E, A]) ⇒ Unit) ⇒ ZIO[R, E, Any]): ZIO[R, E, A]

    Permalink

    Imports an asynchronous effect into a pure ZIO value.

    Imports an asynchronous effect into a pure ZIO value. This formulation is necessary when the effect is itself expressed in terms of ZIO.

  52. def effectAsyncMaybe[R, E, A](register: ((ZIO[R, E, A]) ⇒ Unit) ⇒ Option[ZIO[R, E, A]], blockingOn: List[Id] = Nil): ZIO[R, E, A]

    Permalink

    Imports an asynchronous effect into a pure ZIO value, possibly returning the value synchronously.

    Imports an asynchronous effect into a pure ZIO value, possibly returning the value synchronously.

    If the register function returns a value synchronously, then the callback function ZIO[R, E, A] => Any must not be called. Otherwise the callback function must be called at most once.

    The list of fibers, that may complete the async callback, is used to provide better diagnostics.

  53. def effectSuspend[R, A](rio: ⇒ RIO[R, A]): RIO[R, A]

    Permalink

    Returns a lazily constructed effect, whose construction may itself require effects.

    Returns a lazily constructed effect, whose construction may itself require effects. When no environment is required (i.e., when R == Any) it is conceptually equivalent to flatten(effect(io)).

  54. def effectSuspendTotal[R, E, A](zio: ⇒ ZIO[R, E, A]): ZIO[R, E, A]

    Permalink

    Returns a lazily constructed effect, whose construction may itself require effects.

    Returns a lazily constructed effect, whose construction may itself require effects. The effect must not throw any exceptions. When no environment is required (i.e., when R == Any) it is conceptually equivalent to flatten(effectTotal(zio)). If you wonder if the effect throws exceptions, do not use this method, use Task.effectSuspend or ZIO.effectSuspend.

  55. def effectSuspendTotalWith[R, E, A](f: (Platform, Id) ⇒ ZIO[R, E, A]): ZIO[R, E, A]

    Permalink

    Returns a lazily constructed effect, whose construction may itself require effects.

    Returns a lazily constructed effect, whose construction may itself require effects. The effect must not throw any exceptions. When no environment is required (i.e., when R == Any) it is conceptually equivalent to flatten(effectTotal(zio)). If you wonder if the effect throws exceptions, do not use this method, use Task.effectSuspend or ZIO.effectSuspend.

  56. def effectSuspendWith[R, A](f: (Platform, Id) ⇒ RIO[R, A]): RIO[R, A]

    Permalink

    Returns a lazily constructed effect, whose construction may itself require effects.

    Returns a lazily constructed effect, whose construction may itself require effects. When no environment is required (i.e., when R == Any) it is conceptually equivalent to flatten(effect(io)).

  57. def effectTotal[A](effect: ⇒ A): UIO[A]

    Permalink

    Imports a total synchronous effect into a pure ZIO value.

    Imports a total synchronous effect into a pure ZIO value. The effect must not throw any exceptions. If you wonder if the effect throws exceptions, then do not use this method, use Task.effect, IO.effect, or ZIO.effect.

    val nanoTime: UIO[Long] = IO.effectTotal(System.nanoTime())
  58. def environment[R]: URIO[R, R]

    Permalink

    Accesses the whole environment of the effect.

  59. final def eq(arg0: AnyRef): Boolean

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

    Permalink
    Definition Classes
    AnyRef → Any
  61. def executor: UIO[Executor]

    Permalink

    Retrieves the executor for this effect.

  62. def exists[R, E, A](as: Iterable[A])(f: (A) ⇒ ZIO[R, E, Boolean]): ZIO[R, E, Boolean]

    Permalink

    Determines whether any element of the Iterable[A] satisfies the effectual predicate f.

  63. def fail[E](error: ⇒ E): IO[E, Nothing]

    Permalink

    Returns an effect that models failure with the specified error.

    Returns an effect that models failure with the specified error. The moral equivalent of throw for pure code.

  64. val fiberId: UIO[Id]

    Permalink

    Returns the Fiber.Id of the fiber executing the effect that calls this method.

  65. def filter[R, E, A](as: Set[A])(f: (A) ⇒ ZIO[R, E, Boolean]): ZIO[R, E, Set[A]]

    Permalink

    Filters the Set[A] using the specified effectual predicate.

  66. def filter[R, E, A, Collection[+Element] <: Iterable[Element]](as: Collection[A])(f: (A) ⇒ ZIO[R, E, Boolean])(implicit bf: zio.BuildFrom[Collection[A], A, Collection[A]]): ZIO[R, E, Collection[A]]

    Permalink

    Filters the collection using the specified effectual predicate.

  67. def filterNot[R, E, A](as: Set[A])(f: (A) ⇒ ZIO[R, E, Boolean]): ZIO[R, E, Set[A]]

    Permalink

    Filters the Set[A] using the specified effectual predicate, removing all elements that satisfy the predicate.

  68. def filterNot[R, E, A, Collection[+Element] <: Iterable[Element]](as: Collection[A])(f: (A) ⇒ ZIO[R, E, Boolean])(implicit bf: zio.BuildFrom[Collection[A], A, Collection[A]]): ZIO[R, E, Collection[A]]

    Permalink

    Filters the collection using the specified effectual predicate, removing all elements that satisfy the predicate.

  69. def filterNotPar[R, E, A](as: Set[A])(f: (A) ⇒ ZIO[R, E, Boolean]): ZIO[R, E, Set[A]]

    Permalink

    Filters the Set[A] in parallel using the specified effectual predicate, removing all elements that satisfy the predicate.

    Filters the Set[A] in parallel using the specified effectual predicate, removing all elements that satisfy the predicate. See filterNot[R,E,A](as:Set* for a sequential version of it.

  70. def filterNotPar[R, E, A, Collection[+Element] <: Iterable[Element]](as: Collection[A])(f: (A) ⇒ ZIO[R, E, Boolean])(implicit bf: zio.BuildFrom[Collection[A], A, Collection[A]]): ZIO[R, E, Collection[A]]

    Permalink

    Filters the collection in parallel using the specified effectual predicate, removing all elements that satisfy the predicate.

    Filters the collection in parallel using the specified effectual predicate, removing all elements that satisfy the predicate. See filterNot[R,E,A,Collection* for a sequential version of it.

  71. def filterPar[R, E, A](as: Set[A])(f: (A) ⇒ ZIO[R, E, Boolean]): ZIO[R, E, Set[A]]

    Permalink

    Filters the Set[A] in parallel using the specified effectual predicate.

    Filters the Set[A] in parallel using the specified effectual predicate. See filter[R,E,A,Collection* for a sequential version of it.

  72. def filterPar[R, E, A, Collection[+Element] <: Iterable[Element]](as: Collection[A])(f: (A) ⇒ ZIO[R, E, Boolean])(implicit bf: zio.BuildFrom[Collection[A], A, Collection[A]]): ZIO[R, E, Collection[A]]

    Permalink

    Filters the collection in parallel using the specified effectual predicate.

    Filters the collection in parallel using the specified effectual predicate. See filter[R,E,A,Collection* for a sequential version of it.

  73. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  74. def first[A]: ZIO[(A, Any), Nothing, A]

    Permalink

    Returns an effectful function that extracts out the first element of a tuple.

  75. def firstSuccessOf[R, R1 <: R, E, A](zio: ZIO[R, E, A], rest: Iterable[ZIO[R1, E, A]]): ZIO[R1, E, A]

    Permalink

    Returns an effect that runs the first effect and in case of failure, runs each of the specified effects in order until one of them succeeds.

  76. def flatten[R, E, A](zio: ZIO[R, E, ZIO[R, E, A]]): ZIO[R, E, A]

    Permalink

    Returns an effect that first executes the outer effect, and then executes the inner effect, returning the value from the inner effect, and effectively flattening a nested effect.

  77. def foldLeft[R, E, S, A](in: Iterable[A])(zero: S)(f: (S, A) ⇒ ZIO[R, E, S]): ZIO[R, E, S]

    Permalink

    Folds an Iterable[A] using an effectual function f, working sequentially from left to right.

  78. def foldRight[R, E, S, A](in: Iterable[A])(zero: S)(f: (A, S) ⇒ ZIO[R, E, S]): ZIO[R, E, S]

    Permalink

    Folds an Iterable[A] using an effectual function f, working sequentially from right to left.

  79. def forall[R, E, A](as: Iterable[A])(f: (A) ⇒ ZIO[R, E, Boolean]): ZIO[R, E, Boolean]

    Permalink

    Determines whether all elements of the Iterable[A] satisfy the effectual predicate f.

  80. final def foreach[R, E, A, B](in: NonEmptyChunk[A])(f: (A) ⇒ ZIO[R, E, B]): ZIO[R, E, NonEmptyChunk[B]]

    Permalink

    Applies the function f to each element of the NonEmptyChunk[A] and returns the results in a new NonEmptyChunk[B].

    Applies the function f to each element of the NonEmptyChunk[A] and returns the results in a new NonEmptyChunk[B].

    For a parallel version of this method, see foreachPar. If you do not need the results, see foreach_ for a more efficient implementation.

  81. final def foreach[R, E, A, B](in: Option[A])(f: (A) ⇒ ZIO[R, E, B]): ZIO[R, E, Option[B]]

    Permalink

    Applies the function f if the argument is non-empty and returns the results in a new Option[B].

  82. def foreach[R, E, Key, Key2, Value, Value2](map: Map[Key, Value])(f: (Key, Value) ⇒ ZIO[R, E, (Key2, Value2)]): ZIO[R, E, Map[Key2, Value2]]

    Permalink

    Applies the function f to each element of the Map[Key, Value] and returns the results in a new Map[Key2, Value2].

    Applies the function f to each element of the Map[Key, Value] and returns the results in a new Map[Key2, Value2].

    For a parallel version of this method, see foreachPar. If you do not need the results, see foreach_ for a more efficient implementation.

  83. final def foreach[R, E, A, B](in: Array[A])(f: (A) ⇒ ZIO[R, E, B])(implicit arg0: ClassTag[B]): ZIO[R, E, Array[B]]

    Permalink

    Applies the function f to each element of the Array[A] and returns the results in a new Array[B].

    Applies the function f to each element of the Array[A] and returns the results in a new Array[B].

    For a parallel version of this method, see foreachPar. If you do not need the results, see foreach_ for a more efficient implementation.

  84. final def foreach[R, E, A, B](in: Set[A])(f: (A) ⇒ ZIO[R, E, B]): ZIO[R, E, Set[B]]

    Permalink

    Applies the function f to each element of the Set[A] and returns the results in a new Set[B].

    Applies the function f to each element of the Set[A] and returns the results in a new Set[B].

    For a parallel version of this method, see foreachPar. If you do not need the results, see foreach_ for a more efficient implementation.

  85. def foreach[R, E, A, B, Collection[+Element] <: Iterable[Element]](in: Collection[A])(f: (A) ⇒ ZIO[R, E, B])(implicit bf: zio.BuildFrom[Collection[A], B, Collection[B]]): ZIO[R, E, Collection[B]]

    Permalink

    Applies the function f to each element of the Collection[A] and returns the results in a new Collection[B].

    Applies the function f to each element of the Collection[A] and returns the results in a new Collection[B].

    For a parallel version of this method, see foreachPar. If you do not need the results, see foreach_ for a more efficient implementation.

  86. final def foreachExec[R, E, A, B, Collection[+Element] <: Iterable[Element]](as: Collection[A])(exec: ExecutionStrategy)(f: (A) ⇒ ZIO[R, E, B])(implicit bf: zio.BuildFrom[Collection[A], B, Collection[B]]): ZIO[R, E, Collection[B]]

    Permalink

    Applies the function f to each element of the Collection[A] and returns the result in a new Collection[B] using the specified execution strategy.

  87. final def foreachPar[R, E, A, B](as: NonEmptyChunk[A])(fn: (A) ⇒ ZIO[R, E, B]): ZIO[R, E, NonEmptyChunk[B]]

    Permalink

    Applies the function f to each element of the NonEmptyChunk[A] in parallel, and returns the results in a new NonEmptyChunk[B].

    Applies the function f to each element of the NonEmptyChunk[A] in parallel, and returns the results in a new NonEmptyChunk[B].

    For a sequential version of this method, see foreach.

  88. def foreachPar[R, E, Key, Key2, Value, Value2](map: Map[Key, Value])(f: (Key, Value) ⇒ ZIO[R, E, (Key2, Value2)]): ZIO[R, E, Map[Key2, Value2]]

    Permalink

    Applies the function f to each element of the Map[Key, Value] in parallel and returns the results in a new Map[Key2, Value2].

    Applies the function f to each element of the Map[Key, Value] in parallel and returns the results in a new Map[Key2, Value2].

    For a sequential version of this method, see foreach.

  89. final def foreachPar[R, E, A, B](as: Array[A])(f: (A) ⇒ ZIO[R, E, B])(implicit arg0: ClassTag[B]): ZIO[R, E, Array[B]]

    Permalink

    Applies the function f to each element of the Array[A] in parallel, and returns the results in a new Array[B].

    Applies the function f to each element of the Array[A] in parallel, and returns the results in a new Array[B].

    For a sequential version of this method, see foreach.

  90. final def foreachPar[R, E, A, B](as: Set[A])(fn: (A) ⇒ ZIO[R, E, B]): ZIO[R, E, Set[B]]

    Permalink

    Applies the function f to each element of the Set[A] in parallel, and returns the results in a new Set[B].

    Applies the function f to each element of the Set[A] in parallel, and returns the results in a new Set[B].

    For a sequential version of this method, see foreach.

  91. def foreachPar[R, E, A, B, Collection[+Element] <: Iterable[Element]](as: Collection[A])(f: (A) ⇒ ZIO[R, E, B])(implicit bf: zio.BuildFrom[Collection[A], B, Collection[B]]): ZIO[R, E, Collection[B]]

    Permalink

    Applies the function f to each element of the Collection[A] in parallel, and returns the results in a new Collection[B].

    Applies the function f to each element of the Collection[A] in parallel, and returns the results in a new Collection[B].

    For a sequential version of this method, see foreach.

  92. def foreachParN[R, E, A, B, Collection[+Element] <: Iterable[Element]](n: Int)(as: Collection[A])(fn: (A) ⇒ ZIO[R, E, B])(implicit bf: zio.BuildFrom[Collection[A], B, Collection[B]]): ZIO[R, E, Collection[B]]

    Permalink

    Applies the function f to each element of the Collection[A] in parallel, and returns the results in a new Collection[B].

    Applies the function f to each element of the Collection[A] in parallel, and returns the results in a new Collection[B].

    Unlike foreachPar, this method will use at most up to n fibers.

  93. def foreachParN_[R, E, A](n: Int)(as: Iterable[A])(f: (A) ⇒ ZIO[R, E, Any]): ZIO[R, E, Unit]

    Permalink

    Applies the function f to each element of the Iterable[A] and runs produced effects in parallel, discarding the results.

    Applies the function f to each element of the Iterable[A] and runs produced effects in parallel, discarding the results.

    Unlike foreachPar_, this method will use at most up to n fibers.

  94. def foreachPar_[R, E, A](as: Iterable[A])(f: (A) ⇒ ZIO[R, E, Any]): ZIO[R, E, Unit]

    Permalink

    Applies the function f to each element of the Iterable[A] and runs produced effects in parallel, discarding the results.

    Applies the function f to each element of the Iterable[A] and runs produced effects in parallel, discarding the results.

    For a sequential version of this method, see foreach_.

    Optimized to avoid keeping full tree of effects, so that method could be able to handle large input sequences. Behaves almost like this code:

    as.foldLeft(ZIO.unit) { (acc, a) => acc.zipParLeft(f(a)) }

    Additionally, interrupts all effects on any failure.

  95. def foreach_[R, E, A](as: Iterable[A])(f: (A) ⇒ ZIO[R, E, Any]): ZIO[R, E, Unit]

    Permalink

    Applies the function f to each element of the Iterable[A] and runs produced effects sequentially.

    Applies the function f to each element of the Iterable[A] and runs produced effects sequentially.

    Equivalent to foreach(as)(f).unit, but without the cost of building the list of results.

  96. def forkAll[R, E, A, Collection[+Element] <: Iterable[Element]](as: Collection[ZIO[R, E, A]])(implicit bf: zio.BuildFrom[Collection[ZIO[R, E, A]], A, Collection[A]]): URIO[R, Fiber[E, Collection[A]]]

    Permalink

    Returns an effect that forks all of the specified values, and returns a composite fiber that produces a list of their results, in order.

  97. def forkAll_[R, E, A](as: Iterable[ZIO[R, E, A]]): URIO[R, Unit]

    Permalink

    Returns an effect that forks all of the specified values, and returns a composite fiber that produces unit.

    Returns an effect that forks all of the specified values, and returns a composite fiber that produces unit. This version is faster than forkAll in cases where the results of the forked fibers are not needed.

  98. def forkScope: UIO[ZScope[Exit[Any, Any]]]

    Permalink

    Retrieves the scope that will be used to supervise forked effects.

  99. def forkScopeMask[R, E, A](newScope: ZScope[Exit[Any, Any]])(f: (ForkScopeRestore) ⇒ ZIO[R, E, A]): ZIO[R, E, A]

    Permalink

    Captures the fork scope, before overriding it with the specified new scope, passing a function that allows restoring the fork scope to what it was originally.

  100. def forkScopeWith[R, E, A](f: (ZScope[Exit[Any, Any]]) ⇒ ZIO[R, E, A]): ZIO[R, E, A]

    Permalink

    Retrieves the scope that will be used to supervise forked effects.

  101. def fromEither[E, A](v: ⇒ Either[E, A]): IO[E, A]

    Permalink

    Lifts an Either into a ZIO value.

  102. def fromFiber[E, A](fiber: ⇒ Fiber[E, A]): IO[E, A]

    Permalink

    Creates a ZIO value that represents the exit value of the specified fiber.

  103. def fromFiberM[E, A](fiber: IO[E, Fiber[E, A]]): IO[E, A]

    Permalink

    Creates a ZIO value that represents the exit value of the specified fiber.

  104. def fromFunction[R, A](f: (R) ⇒ A): URIO[R, A]

    Permalink

    Lifts a function R => A into a URIO[R, A].

  105. def fromFunctionFuture[R, A](f: (R) ⇒ Future[A]): RIO[R, A]

    Permalink

    Lifts a function returning Future into an effect that requires the input to the function.

  106. def fromFunctionM[R, E, A](f: (R) ⇒ IO[E, A]): ZIO[R, E, A]

    Permalink

    Lifts an effectful function whose effect requires no environment into an effect that requires the input to the function.

  107. def fromFuture[A](make: (ExecutionContext) ⇒ Future[A]): Task[A]

    Permalink

    Imports a function that creates a scala.concurrent.Future from an scala.concurrent.ExecutionContext into a ZIO.

  108. def fromFutureInterrupt[A](make: (ExecutionContext) ⇒ Future[A]): Task[A]

    Permalink

    Imports a function that creates a scala.concurrent.Future from an scala.concurrent.ExecutionContext into a ZIO.

    Imports a function that creates a scala.concurrent.Future from an scala.concurrent.ExecutionContext into a ZIO. The provided ExecutionContext will interrupt the Future between asynchronous operations such as map and flatMap if this effect is interrupted. Note that no attempt will be made to interrupt a Future blocking on a synchronous operation and that the Future must be created using the provided ExecutionContext.

  109. def fromOption[A](v: ⇒ Option[A]): IO[Option[Nothing], A]

    Permalink

    Lifts an Option into a ZIO but preserves the error as an option in the error channel, making it easier to compose in some scenarios.

  110. def fromPromiseJS[A](promise: ⇒ scala.scalajs.js.Promise[A]): Task[A]

    Permalink

    Imports a Scala.js promise into a ZIO.

    Imports a Scala.js promise into a ZIO.

    Definition Classes
    ZIOCompanionPlatformSpecific
  111. def fromPromiseScala[A](promise: scala.concurrent.Promise[A]): Task[A]

    Permalink

    Imports a scala.concurrent.Promise we generate a future from promise, and we pass to [fromFuture] to transform into Task[A]

  112. def fromTry[A](value: ⇒ Try[A]): Task[A]

    Permalink

    Lifts a Try into a ZIO.

  113. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  114. final def getOrFail[A](v: ⇒ Option[A]): Task[A]

    Permalink

    Lifts an Option into a ZIO, if the option is not defined it fails with NoSuchElementException.

  115. final def getOrFailUnit[A](v: ⇒ Option[A]): IO[Unit, A]

    Permalink

    Lifts an Option into a IO, if the option is not defined it fails with Unit.

  116. final def getOrFailWith[E, A](e: ⇒ E)(v: ⇒ Option[A]): IO[E, A]

    Permalink

    Lifts an Option into a ZIO.

    Lifts an Option into a ZIO. If the option is not defined, fail with the e value.

  117. def halt[E](cause: ⇒ Cause[E]): IO[E, Nothing]

    Permalink

    Returns an effect that models failure with the specified Cause.

  118. def haltWith[E](function: (() ⇒ ZTrace) ⇒ Cause[E]): IO[E, Nothing]

    Permalink

    Returns an effect that models failure with the specified Cause.

    Returns an effect that models failure with the specified Cause.

    This version takes in a lazily-evaluated trace that can be attached to the Cause via Cause.Traced.

  119. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  120. def identity[R]: URIO[R, R]

    Permalink

    Returns the identity effectful function, which performs no effects

  121. def ifM[R, E](b: ZIO[R, E, Boolean]): IfM[R, E]

    Permalink

    Runs onTrue if the result of b is true and onFalse otherwise.

  122. val infinity: URIO[Clock, Nothing]

    Permalink

    Like never, but fibers that running this effect won't be garbage collected unless interrupted.

  123. val interrupt: UIO[Nothing]

    Permalink

    Returns an effect that is interrupted as if by the fiber calling this method.

  124. def interruptAs(fiberId: ⇒ Id): UIO[Nothing]

    Permalink

    Returns an effect that is interrupted as if by the specified fiber.

  125. def interruptible[R, E, A](zio: ZIO[R, E, A]): ZIO[R, E, A]

    Permalink

    Prefix form of ZIO#interruptible.

  126. def interruptibleMask[R, E, A](k: (InterruptStatusRestore) ⇒ ZIO[R, E, A]): ZIO[R, E, A]

    Permalink

    Makes the effect interruptible, but passes it a restore function that can be used to restore the inherited interruptibility from whatever region the effect is composed into.

  127. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  128. def iterate[R, E, S](initial: S)(cont: (S) ⇒ Boolean)(body: (S) ⇒ ZIO[R, E, S]): ZIO[R, E, S]

    Permalink

    Iterates with the specified effectual function.

    Iterates with the specified effectual function. The moral equivalent of:

    var s = initial
    
    while (cont(s)) {
      s = body(s)
    }
    
    s
  129. def left[A](a: ⇒ A): UIO[Either[A, Nothing]]

    Permalink

    Returns an effect with the value on the left part.

  130. def lock[R, E, A](executor: ⇒ Executor)(zio: ZIO[R, E, A]): ZIO[R, E, A]

    Permalink

    Returns an effect that will execute the specified effect fully on the provided executor, before returning to the default executor.

    Returns an effect that will execute the specified effect fully on the provided executor, before returning to the default executor. See ZIO!.lock.

  131. def loop[R, E, A, S](initial: S)(cont: (S) ⇒ Boolean, inc: (S) ⇒ S)(body: (S) ⇒ ZIO[R, E, A]): ZIO[R, E, List[A]]

    Permalink

    Loops with the specified effectual function, collecting the results into a list.

    Loops with the specified effectual function, collecting the results into a list. The moral equivalent of:

    var s  = initial
    var as = List.empty[A]
    
    while (cont(s)) {
      as = body(s) :: as
      s  = inc(s)
    }
    
    as.reverse
  132. def loop_[R, E, S](initial: S)(cont: (S) ⇒ Boolean, inc: (S) ⇒ S)(body: (S) ⇒ ZIO[R, E, Any]): ZIO[R, E, Unit]

    Permalink

    Loops with the specified effectual function purely for its effects.

    Loops with the specified effectual function purely for its effects. The moral equivalent of:

    var s = initial
    
    while (cont(s)) {
      body(s)
      s = inc(s)
    }
  133. def mapN[R, E, A, B, C, D, F](zio1: ZIO[R, E, A], zio2: ZIO[R, E, B], zio3: ZIO[R, E, C], zio4: ZIO[R, E, D])(f: (A, B, C, D) ⇒ F): ZIO[R, E, F]

    Permalink

    Sequentially zips the specified effects using the specified combiner function.

  134. def mapN[R, E, A, B, C, D](zio1: ZIO[R, E, A], zio2: ZIO[R, E, B], zio3: ZIO[R, E, C])(f: (A, B, C) ⇒ D): ZIO[R, E, D]

    Permalink

    Sequentially zips the specified effects using the specified combiner function.

  135. def mapN[R, E, A, B, C](zio1: ZIO[R, E, A], zio2: ZIO[R, E, B])(f: (A, B) ⇒ C): ZIO[R, E, C]

    Permalink

    Sequentially zips the specified effects using the specified combiner function.

  136. def mapParN[R, E, A, B, C, D, F](zio1: ZIO[R, E, A], zio2: ZIO[R, E, B], zio3: ZIO[R, E, C], zio4: ZIO[R, E, D])(f: (A, B, C, D) ⇒ F): ZIO[R, E, F]

    Permalink

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

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

  137. def mapParN[R, E, A, B, C, D](zio1: ZIO[R, E, A], zio2: ZIO[R, E, B], zio3: ZIO[R, E, C])(f: (A, B, C) ⇒ D): ZIO[R, E, D]

    Permalink

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

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

  138. def mapParN[R, E, A, B, C](zio1: ZIO[R, E, A], zio2: ZIO[R, E, B])(f: (A, B) ⇒ C): ZIO[R, E, C]

    Permalink

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

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

  139. def memoize[R, E, A, B](f: (A) ⇒ ZIO[R, E, B]): UIO[(A) ⇒ ZIO[R, E, B]]

    Permalink

    Returns a memoized version of the specified effectual function.

  140. def mergeAll[R, E, A, B](in: Iterable[ZIO[R, E, A]])(zero: B)(f: (B, A) ⇒ B): ZIO[R, E, B]

    Permalink

    Merges an Iterable[IO] to a single IO, working sequentially.

  141. def mergeAllPar[R, E, A, B](in: Iterable[ZIO[R, E, A]])(zero: B)(f: (B, A) ⇒ B): ZIO[R, E, B]

    Permalink

    Merges an Iterable[IO] to a single IO, working in parallel.

    Merges an Iterable[IO] to a single IO, working in parallel.

    Due to the parallel nature of this combinator, f must be both: - commutative: f(a, b) == f(b, a) - associative: f(a, f(b, c)) == f(f(a, b), c)

    It's unsafe to execute side effects inside f, as f may be executed more than once for some of in elements during effect execution.

  142. def mergeAllParN[R, E, A, B](n: Int)(in: Iterable[ZIO[R, E, A]])(zero: B)(f: (B, A) ⇒ B): ZIO[R, E, B]

    Permalink

    Merges an Iterable[IO] to a single IO, working in with up to n fibers in parallel.

    Merges an Iterable[IO] to a single IO, working in with up to n fibers in parallel.

    Due to the parallel nature of this combinator, f must be both: - commutative: f(a, b) == f(b, a) - associative: f(a, f(b, c)) == f(f(a, b), c)

    It's unsafe to execute side effects inside f, as f may be executed more than once for some of in elements during effect execution.

  143. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  144. val never: UIO[Nothing]

    Permalink

    Returns a effect that will never produce anything.

    Returns a effect that will never produce anything. The moral equivalent of while(true) {}, only without the wasted CPU cycles. Fibers that suspended running this effect are automatically garbage collected on the JVM, because they cannot be reactivated.

  145. val none: UIO[Option[Nothing]]

    Permalink

    Returns an effect with the empty value.

  146. def noneOrFail[E](o: Option[E]): IO[E, Unit]

    Permalink

    Lifts an Option into a IO.

    Lifts an Option into a IO. If the option is empty it succeeds with Unit. If the option is defined it fails with the content.

  147. def noneOrFailWith[E, O](o: Option[O])(f: (O) ⇒ E): IO[E, Unit]

    Permalink

    Lifts an Option into a IO.

    Lifts an Option into a IO. If the option is empty it succeeds with Unit. If the option is defined it fails with an error adapted with f.

  148. def not[R, E](effect: ZIO[R, E, Boolean]): ZIO[R, E, Boolean]

    Permalink

    Returns a new effect where boolean value of this effect is negated.

  149. final def notify(): Unit

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

    Permalink
    Definition Classes
    AnyRef
  151. def partition[R, E, A, B](in: Iterable[A])(f: (A) ⇒ ZIO[R, E, B])(implicit ev: CanFail[E]): ZIO[R, Nothing, (Iterable[E], Iterable[B])]

    Permalink

    Feeds elements of type A to a function f that returns an effect.

    Feeds elements of type A to a function f that returns an effect. Collects all successes and failures in a tupled fashion.

  152. def partitionPar[R, E, A, B](in: Iterable[A])(f: (A) ⇒ ZIO[R, E, B])(implicit ev: CanFail[E]): ZIO[R, Nothing, (Iterable[E], Iterable[B])]

    Permalink

    Feeds elements of type A to a function f that returns an effect.

    Feeds elements of type A to a function f that returns an effect. Collects all successes and failures in parallel and returns the result as a tuple.

  153. def partitionParN[R, E, A, B](n: Int)(in: Iterable[A])(f: (A) ⇒ ZIO[R, E, B])(implicit ev: CanFail[E]): ZIO[R, Nothing, (Iterable[E], Iterable[B])]

    Permalink

    Feeds elements of type A to a function f that returns an effect.

    Feeds elements of type A to a function f that returns an effect. Collects all successes and failures in parallel and returns the result as a tuple.

    Unlike partitionPar, this method will use at most up to n fibers.

  154. def provide[R, E, A](r: ⇒ R): (ZIO[R, E, A]) ⇒ IO[E, A]

    Permalink

    Given an environment R, returns a function that can supply the environment to programs that require it, removing their need for any specific environment.

    Given an environment R, returns a function that can supply the environment to programs that require it, removing their need for any specific environment.

    This is similar to dependency injection, and the provide function can be thought of as inject.

  155. def raceAll[R, R1 <: R, E, A](zio: ZIO[R, E, A], ios: Iterable[ZIO[R1, E, A]]): ZIO[R1, E, A]

    Permalink

    Races an IO[E, A] against zero or more other effects.

    Races an IO[E, A] against zero or more other effects. Yields either the first success or the last failure.

  156. def reduceAll[R, R1 <: R, E, A](a: ZIO[R, E, A], as: Iterable[ZIO[R1, E, A]])(f: (A, A) ⇒ A): ZIO[R1, E, A]

    Permalink

    Reduces an Iterable[IO] to a single IO, working sequentially.

  157. def reduceAllPar[R, R1 <: R, E, A](a: ZIO[R, E, A], as: Iterable[ZIO[R1, E, A]])(f: (A, A) ⇒ A): ZIO[R1, E, A]

    Permalink

    Reduces an Iterable[IO] to a single IO, working in parallel.

  158. def reduceAllParN[R, R1 <: R, E, A](n: Int)(a: ZIO[R, E, A], as: Iterable[ZIO[R1, E, A]])(f: (A, A) ⇒ A): ZIO[R1, E, A]

    Permalink

    Reduces an Iterable[IO] to a single IO, working in up to n fibers in parallel.

  159. def replicate[R, E, A](n: Int)(effect: ZIO[R, E, A]): Iterable[ZIO[R, E, A]]

    Permalink

    Replicates the given effect n times.

    Replicates the given effect n times. If 0 or negative numbers are given, an empty Iterable will be returned. This method is more efficient than using List.fill or similar methods, because the returned Iterable consumes only a small amount of heap regardless of n.

  160. def replicateM[R, E, A](n: Int)(effect: ZIO[R, E, A]): ZIO[R, E, Iterable[A]]

    Permalink

    Performs this effect the specified number of times and collects the results.

  161. def replicateM_[R, E, A](n: Int)(effect: ZIO[R, E, A]): ZIO[R, E, Unit]

    Permalink

    Performs this effect the specified number of times, discarding the results.

  162. def require[R, E, A](error: ⇒ E): (ZIO[R, E, Option[A]]) ⇒ ZIO[R, E, A]

    Permalink

    Requires that the given ZIO[R, E, Option[A]] contain a value.

    Requires that the given ZIO[R, E, Option[A]] contain a value. If there is no value, then the specified error will be raised.

  163. def reserve[R, E, A, B](reservation: ZIO[R, E, Reservation[R, E, A]])(use: (A) ⇒ ZIO[R, E, B]): ZIO[R, E, B]

    Permalink

    Acquires a resource, uses the resource, and then releases the resource.

    Acquires a resource, uses the resource, and then releases the resource. However, unlike bracket, the separation of these phases allows the acquisition to be interruptible.

    Useful for concurrent data structures and other cases where the 'deallocator' can tell if the allocation succeeded or not just by inspecting internal / external state.

  164. def right[B](b: ⇒ B): UIO[Either[Nothing, B]]

    Permalink

    Returns an effect with the value on the right part.

  165. def runtime[R]: URIO[R, Runtime[R]]

    Permalink

    Returns an effect that accesses the runtime, which can be used to (unsafely) execute tasks.

    Returns an effect that accesses the runtime, which can be used to (unsafely) execute tasks. This is useful for integration with legacy code that must call back into ZIO code.

  166. def scopeWith[R, E, A](f: (ZScope[Exit[Any, Any]]) ⇒ ZIO[R, E, A]): ZIO[R, E, A]

    Permalink

    Passes the fiber's scope to the specified function, which creates an effect that will be returned from this method.

  167. def second[A]: URIO[(Any, A), A]

    Permalink

    Returns an effectful function that extracts out the second element of a tuple.

  168. def service[A](implicit arg0: zio.Tag[A]): URIO[Has[A], A]

    Permalink

    Accesses the specified service in the environment of the effect.

  169. def serviceWith[Service]: ServiceWithPartiallyApplied[Service]

    Permalink

    Effectfully accesses the specified service in the environment of the effect.

    Effectfully accesses the specified service in the environment of the effect.

    Especially useful for creating "accessor" methods on Services' companion objects.

    def foo(int: Int) = ZIO.serviceWith[Foo](_.foo(int))
  170. def services[A, B, C, D](implicit arg0: zio.Tag[A], arg1: zio.Tag[B], arg2: zio.Tag[C], arg3: zio.Tag[D]): URIO[Has[A] with Has[B] with Has[C] with Has[D], (A, B, C, D)]

    Permalink

    Accesses the specified services in the environment of the effect.

  171. def services[A, B, C](implicit arg0: zio.Tag[A], arg1: zio.Tag[B], arg2: zio.Tag[C]): URIO[Has[A] with Has[B] with Has[C], (A, B, C)]

    Permalink

    Accesses the specified services in the environment of the effect.

  172. def services[A, B](implicit arg0: zio.Tag[A], arg1: zio.Tag[B]): URIO[Has[A] with Has[B], (A, B)]

    Permalink

    Accesses the specified services in the environment of the effect.

  173. def shift(executor: Executor): UIO[Unit]

    Permalink

    Returns an effect that shifts execution to the specified executor.

    Returns an effect that shifts execution to the specified executor. This is useful to specify a default executor that effects sequenced after this one will be run on if they are not shifted somewhere else. It can also be used to implement higher level operators to manage where an effect is run such as ZIO!.lock and ZIO!.on.

  174. def sleep(duration: ⇒ Duration): URIO[Clock, Unit]

    Permalink

    Returns an effect that suspends for the specified duration.

    Returns an effect that suspends for the specified duration. This method is asynchronous, and does not actually block the fiber executing the effect.

  175. def some[A](a: ⇒ A): UIO[Option[A]]

    Permalink

    Returns an effect with the optional value.

  176. def succeed[A](a: ⇒ A): UIO[A]

    Permalink

    Returns an effect that models success with the specified value.

  177. def swap[A, B]: URIO[(A, B), (B, A)]

    Permalink

    Returns an effectful function that merely swaps the elements in a Tuple2.

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  180. def trace: UIO[ZTrace]

    Permalink

    Capture ZIO trace at the current point

  181. def traced[R, E, A](zio: ZIO[R, E, A]): ZIO[R, E, A]

    Permalink

    Prefix form of ZIO#traced.

  182. def transplant[R, E, A](f: (Grafter) ⇒ ZIO[R, E, A]): ZIO[R, E, A]

    Permalink

    Transplants specified effects so that when those effects fork other effects, the forked effects will be governed by the scope of the fiber that executes this effect.

    Transplants specified effects so that when those effects fork other effects, the forked effects will be governed by the scope of the fiber that executes this effect.

    This can be used to "graft" deep grandchildren onto a higher-level scope, effectively extending their lifespans into the parent scope.

  183. def tupled[R, E, A, B, C, D](zio1: ZIO[R, E, A], zio2: ZIO[R, E, B], zio3: ZIO[R, E, C], zio4: ZIO[R, E, D]): ZIO[R, E, (A, B, C, D)]

    Permalink

    Sequentially zips the specified effects.

    Sequentially zips the specified effects. Specialized version of mapN.

  184. def tupled[R, E, A, B, C](zio1: ZIO[R, E, A], zio2: ZIO[R, E, B], zio3: ZIO[R, E, C]): ZIO[R, E, (A, B, C)]

    Permalink

    Sequentially zips the specified effects.

    Sequentially zips the specified effects. Specialized version of mapN.

  185. def tupled[R, E, A, B](zio1: ZIO[R, E, A], zio2: ZIO[R, E, B]): ZIO[R, E, (A, B)]

    Permalink

    Sequentially zips the specified effects.

    Sequentially zips the specified effects. Specialized version of mapN.

  186. def tupledPar[R, E, A, B, C, D](zio1: ZIO[R, E, A], zio2: ZIO[R, E, B], zio3: ZIO[R, E, C], zio4: ZIO[R, E, D]): ZIO[R, E, (A, B, C, D)]

    Permalink

    Zips the specified effects in parallel.

    Zips the specified effects in parallel. Specialized version of mapParN.

  187. def tupledPar[R, E, A, B, C](zio1: ZIO[R, E, A], zio2: ZIO[R, E, B], zio3: ZIO[R, E, C]): ZIO[R, E, (A, B, C)]

    Permalink

    Zips the specified effects in parallel.

    Zips the specified effects in parallel. Specialized version of mapParN.

  188. def tupledPar[R, E, A, B](zio1: ZIO[R, E, A], zio2: ZIO[R, E, B]): ZIO[R, E, (A, B)]

    Permalink

    Zips the specified effects in parallel.

    Zips the specified effects in parallel. Specialized version of mapParN.

  189. def uninterruptible[R, E, A](zio: ZIO[R, E, A]): ZIO[R, E, A]

    Permalink

    Prefix form of ZIO#uninterruptible.

  190. def uninterruptibleMask[R, E, A](k: (InterruptStatusRestore) ⇒ ZIO[R, E, A]): ZIO[R, E, A]

    Permalink

    Makes the effect uninterruptible, but passes it a restore function that can be used to restore the inherited interruptibility from whatever region the effect is composed into.

  191. val unit: UIO[Unit]

    Permalink

    An effect that succeeds with a unit value.

  192. def unless[R, E](b: ⇒ Boolean)(zio: ⇒ ZIO[R, E, Any]): ZIO[R, E, Unit]

    Permalink

    The moral equivalent of if (!p) exp

  193. def unlessM[R, E](b: ZIO[R, E, Boolean]): UnlessM[R, E]

    Permalink

    The moral equivalent of if (!p) exp when p has side-effects

  194. def unsandbox[R, E, A](v: ZIO[R, Cause[E], A]): ZIO[R, E, A]

    Permalink

    The inverse operation IO.sandboxed

    The inverse operation IO.sandboxed

    Terminates with exceptions on the Left side of the Either error, if it exists. Otherwise extracts the contained IO[E, A]

  195. def untraced[R, E, A](zio: ZIO[R, E, A]): ZIO[R, E, A]

    Permalink

    Prefix form of ZIO#untraced.

  196. def validate[R, E, A, B](in: NonEmptyChunk[A])(f: (A) ⇒ ZIO[R, E, B])(implicit ev: CanFail[E]): ZIO[R, ::[E], NonEmptyChunk[B]]

    Permalink

    Feeds elements of type A to f and accumulates all errors in error channel or successes in success channel.

    Feeds elements of type A to f and accumulates all errors in error channel or successes in success channel.

    This combinator is lossy meaning that if there are errors all successes will be lost. To retain all information please use partition.

  197. def validate[R, E, A, B, Collection[+Element] <: Iterable[Element]](in: Collection[A])(f: (A) ⇒ ZIO[R, E, B])(implicit bf: zio.BuildFrom[Collection[A], B, Collection[B]], ev: CanFail[E]): ZIO[R, ::[E], Collection[B]]

    Permalink

    Feeds elements of type A to f and accumulates all errors in error channel or successes in success channel.

    Feeds elements of type A to f and accumulates all errors in error channel or successes in success channel.

    This combinator is lossy meaning that if there are errors all successes will be lost. To retain all information please use partition.

  198. def validateFirst[R, E, A, B, Collection[+Element] <: Iterable[Element]](in: Collection[A])(f: (A) ⇒ ZIO[R, E, B])(implicit bf: zio.BuildFrom[Collection[A], E, Collection[E]], ev: CanFail[E]): ZIO[R, Collection[E], B]

    Permalink

    Feeds elements of type A to f until it succeeds.

    Feeds elements of type A to f until it succeeds. Returns first success or the accumulation of all errors.

  199. def validateFirstPar[R, E, A, B, Collection[+Element] <: Iterable[Element]](in: Collection[A])(f: (A) ⇒ ZIO[R, E, B])(implicit bf: zio.BuildFrom[Collection[A], E, Collection[E]], ev: CanFail[E]): ZIO[R, Collection[E], B]

    Permalink

    Feeds elements of type A to f, in parallel, until it succeeds.

    Feeds elements of type A to f, in parallel, until it succeeds. Returns first success or the accumulation of all errors.

    In case of success all other running fibers are terminated.

  200. def validatePar[R, E, A, B](in: NonEmptyChunk[A])(f: (A) ⇒ ZIO[R, E, B])(implicit ev: CanFail[E]): ZIO[R, ::[E], NonEmptyChunk[B]]

    Permalink

    Feeds elements of type A to f and accumulates, in parallel, all errors in error channel or successes in success channel.

    Feeds elements of type A to f and accumulates, in parallel, all errors in error channel or successes in success channel.

    This combinator is lossy meaning that if there are errors all successes will be lost. To retain all information please use partitionPar.

  201. def validatePar[R, E, A, B, Collection[+Element] <: Iterable[Element]](in: Collection[A])(f: (A) ⇒ ZIO[R, E, B])(implicit bf: zio.BuildFrom[Collection[A], B, Collection[B]], ev: CanFail[E]): ZIO[R, ::[E], Collection[B]]

    Permalink

    Feeds elements of type A to f and accumulates, in parallel, all errors in error channel or successes in success channel.

    Feeds elements of type A to f and accumulates, in parallel, all errors in error channel or successes in success channel.

    This combinator is lossy meaning that if there are errors all successes will be lost. To retain all information please use partitionPar.

  202. def validatePar_[R, E, A](in: Iterable[A])(f: (A) ⇒ ZIO[R, E, Any])(implicit ev: CanFail[E]): ZIO[R, ::[E], Unit]

    Permalink

    Feeds elements of type A to f in parallel and accumulates all errors, discarding the successes.

  203. def validate_[R, E, A](in: Iterable[A])(f: (A) ⇒ ZIO[R, E, Any])(implicit ev: CanFail[E]): ZIO[R, ::[E], Unit]

    Permalink

    Feeds elements of type A to f and accumulates all errors, discarding the successes.

  204. final def wait(): Unit

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  207. def when[R, E](b: ⇒ Boolean)(zio: ⇒ ZIO[R, E, Any]): ZIO[R, E, Unit]

    Permalink

    The moral equivalent of if (p) exp

  208. def whenCase[R, E, A](a: ⇒ A)(pf: PartialFunction[A, ZIO[R, E, Any]]): ZIO[R, E, Unit]

    Permalink

    Runs an effect when the supplied PartialFunction matches for the given value, otherwise does nothing.

  209. def whenCaseM[R, E, A](a: ZIO[R, E, A])(pf: PartialFunction[A, ZIO[R, E, Any]]): ZIO[R, E, Unit]

    Permalink

    Runs an effect when the supplied PartialFunction matches for the given effectful value, otherwise does nothing.

  210. def whenM[R, E](b: ZIO[R, E, Boolean]): WhenM[R, E]

    Permalink

    The moral equivalent of if (p) exp when p has side-effects

  211. def withChildren[R, E, A](get: (UIO[Chunk[Fiber.Runtime[Any, Any]]]) ⇒ ZIO[R, E, A]): ZIO[R, E, A]

    Permalink

    Locally installs a supervisor and an effect that succeeds with all the children that have been forked in the returned effect.

  212. val yieldNow: UIO[Unit]

    Permalink

    Returns an effect that yields to the runtime system, starting on a fresh stack.

    Returns an effect that yields to the runtime system, starting on a fresh stack. Manual use of this method can improve fairness, at the cost of overhead.

Inherited from Serializable

Inherited from Serializable

Inherited from ZIOCompanionPlatformSpecific

Inherited from AnyRef

Inherited from Any

Ungrouped