IO

object IO
class Object
trait Matchable
class Any
IO.type

Type members

Classlikes

final class BracketAcquire[E, A](acquire: IO[E, A]) extends AnyVal
final class BracketAcquire_[E](acquire: IO[E, Any]) extends AnyVal
class BracketRelease[E, A](acquire: IO[E, A], release: A => IO[Nothing, Any])
class BracketRelease_[E](acquire: IO[E, Any], release: IO[Nothing, Any])

Value members

Concrete methods

def absolve[E, A](v: IO[E, Either[E, A]]): IO[E, A]
See also:
def apply[A](a: => A): Task[A]
See also:
def bracket[E, A](acquire: IO[E, A]): BracketAcquire[E, A]
See also:

See bracket zio.ZIO

def bracket[E, A, B](acquire: IO[E, A], release: A => UIO[Any], use: A => IO[E, B]): IO[E, B]
See also:

See bracket zio.ZIO

def bracketExit[E, A](acquire: IO[E, A]): BracketExitAcquire[Any, E, A]
See also:

See bracketExit zio.ZIO

def bracketExit[E, A, B](acquire: IO[E, A], release: (A, Exit[E, B]) => UIO[Any], use: A => IO[E, B]): IO[E, B]
See also:

See bracketExit zio.ZIO

def checkInterruptible[E, A](f: InterruptStatus => IO[E, A]): IO[E, A]
def checkTraced[E, A](f: TracingStatus => IO[E, A]): IO[E, A]
See also:
def collect[E, A, B, Collection <: (Iterable)](in: Collection[A])(f: A => IO[Option[E], B])(implicit bf: BuildFrom[Collection[A], B, Collection[B]]): IO[E, Collection[B]]
See also:
def collectAll[E, A, Collection <: (Iterable)](in: Collection[IO[E, A]])(implicit bf: BuildFrom[Collection[IO[E, A]], A, Collection[A]]): IO[E, Collection[A]]
See also:
def collectAll[E, A](in: Set[IO[E, A]]): IO[E, Set[A]]
See also:
def collectAll[E, A : ClassTag](in: Array[IO[E, A]]): IO[E, Array[A]]
See also:
def collectAll[E, A](in: NonEmptyChunk[IO[E, A]]): IO[E, NonEmptyChunk[A]]
See also:
def collectAllPar[E, A, Collection <: (Iterable)](as: Collection[IO[E, A]])(implicit bf: BuildFrom[Collection[IO[E, A]], A, Collection[A]]): IO[E, Collection[A]]
See also:
def collectAllPar[E, A](as: Set[IO[E, A]]): IO[E, Set[A]]
See also:
def collectAllPar[E, A : ClassTag](as: Array[IO[E, A]]): IO[E, Array[A]]
See also:
def collectAllPar[E, A](as: NonEmptyChunk[IO[E, A]]): IO[E, NonEmptyChunk[A]]
See also:
def collectAllParN[E, A, Collection <: (Iterable)](n: Int)(as: Collection[IO[E, A]])(implicit bf: BuildFrom[Collection[IO[E, A]], A, Collection[A]]): IO[E, Collection[A]]
def collectAllParN_[E, A](n: Int)(as: Iterable[IO[E, A]]): IO[E, Unit]
def collectAllPar_[E, A](in: Iterable[IO[E, A]]): IO[E, Unit]
See also:
def collectAllSuccesses[E, A, Collection <: (Iterable)](in: Collection[IO[E, A]])(implicit bf: BuildFrom[Collection[IO[E, A]], A, Collection[A]]): UIO[Collection[A]]
def collectAllSuccessesPar[E, A, Collection <: (Iterable)](as: Collection[IO[E, A]])(implicit bf: BuildFrom[Collection[IO[E, A]], A, Collection[A]]): UIO[Collection[A]]
def collectAllSuccessesParN[E, A, Collection <: (Iterable)](n: Int)(as: Collection[IO[E, A]])(implicit bf: BuildFrom[Collection[IO[E, A]], A, Collection[A]]): UIO[Collection[A]]
def collectAllWith[E, A, B, Collection <: (Iterable)](in: Collection[IO[E, A]])(f: PartialFunction[A, B])(implicit bf: BuildFrom[Collection[IO[E, A]], B, Collection[B]]): IO[E, Collection[B]]
def collectAllWithPar[E, A, B, Collection <: (Iterable)](as: Collection[IO[E, A]])(f: PartialFunction[A, B])(implicit bf: BuildFrom[Collection[IO[E, A]], B, Collection[B]]): IO[E, Collection[B]]
def collectAllWithParN[E, A, B, Collection <: (Iterable)](n: Int)(as: Collection[IO[E, A]])(f: PartialFunction[A, B])(implicit bf: BuildFrom[Collection[IO[E, A]], B, Collection[B]]): IO[E, Collection[B]]
def collectAll_[E, A](in: Iterable[IO[E, A]]): IO[E, Unit]
See also:
def collectFirst[E, A, B](as: Iterable[A])(f: A => IO[E, Option[B]]): IO[E, Option[B]]
See also:
def collectPar[E, A, B, Collection <: (Iterable)](in: Collection[A])(f: A => IO[Option[E], B])(implicit bf: BuildFrom[Collection[A], B, Collection[B]]): IO[E, Collection[B]]
See also:
def collectParN[E, A, B, Collection <: (Iterable)](n: Int)(in: Collection[A])(f: A => IO[Option[E], B])(implicit bf: BuildFrom[Collection[A], B, Collection[B]]): IO[E, Collection[B]]
See also:
def cond[E, A](predicate: Boolean, result: => A, error: => E): IO[E, A]
See also:
def debug(value: Any): UIO[Unit]
See also:
def descriptorWith[E, A](f: Descriptor => IO[E, A]): IO[E, A]
def die(t: => Throwable): UIO[Nothing]
See also:
def dieMessage(message: => String): UIO[Nothing]
See also:
def done[E, A](r: => Exit[E, A]): IO[E, A]
See also:
def effect[A](effect: => A): Task[A]
See also:
def effectAsync[E, A](register: IO[E, A] => Unit => Any, blockingOn: List[Id]): IO[E, A]
See also:
def effectAsyncInterrupt[E, A](register: IO[E, A] => Unit => Either[Canceler[Any], IO[E, A]], blockingOn: List[Id]): IO[E, A]
def effectAsyncM[E, A](register: IO[E, A] => Unit => IO[E, Any]): IO[E, A]
See also:
def effectAsyncMaybe[E, A](register: IO[E, A] => Unit => Option[IO[E, A]], blockingOn: List[Id]): IO[E, A]
def effectSuspend[A](io: => IO[Throwable, A]): IO[Throwable, A]
def effectSuspendTotal[E, A](io: => IO[E, A]): IO[E, A]
def effectSuspendTotalWith[E, A](p: (Platform, Id) => IO[E, A]): IO[E, A]
def effectTotal[A](effect: => A): UIO[A]
See also:
def exists[E, A](as: Iterable[A])(f: A => IO[E, Boolean]): IO[E, Boolean]
See also:
def fail[E](error: => E): IO[E, Nothing]
See also:
def filter[E, A, Collection <: (Iterable)](as: Collection[A])(f: A => IO[E, Boolean])(implicit bf: BuildFrom[Collection[A], A, Collection[A]]): IO[E, Collection[A]]
See also:

[[zio.ZIO.filter[R,E,A,Collection*]]

def filter[E, A](as: Set[A])(f: A => IO[E, Boolean]): IO[E, Set[A]]
See also:
def filterNot[E, A, Collection <: (Iterable)](as: Collection[A])(f: A => IO[E, Boolean])(implicit bf: BuildFrom[Collection[A], A, Collection[A]]): IO[E, Collection[A]]
See also:

[[zio.ZIO.filterNot[R,E,A,Collection*]]

def filterNot[E, A](as: Set[A])(f: A => IO[E, Boolean]): IO[E, Set[A]]
See also:
def filterNotPar[E, A, Collection <: (Iterable)](as: Collection[A])(f: A => IO[E, Boolean])(implicit bf: BuildFrom[Collection[A], A, Collection[A]]): IO[E, Collection[A]]
See also:

[[zio.ZIO.filterNotPar[R,E,A,Collection*]]

def filterNotPar[E, A](as: Set[A])(f: A => IO[E, Boolean]): IO[E, Set[A]]
def filterPar[E, A, Collection <: (Iterable)](as: Collection[A])(f: A => IO[E, Boolean])(implicit bf: BuildFrom[Collection[A], A, Collection[A]]): IO[E, Collection[A]]
See also:

[[zio.ZIO.filterPar[R,E,A,Collection*]]

def filterPar[E, A](as: Set[A])(f: A => IO[E, Boolean]): IO[E, Set[A]]
See also:
def firstSuccessOf[E, A](io: IO[E, A], rest: Iterable[IO[E, A]]): IO[E, A]
def flatten[E, A](io: IO[E, IO[E, A]]): IO[E, A]
See also:
def foldLeft[E, S, A](in: Iterable[A])(zero: S)(f: (S, A) => IO[E, S]): IO[E, S]
See also:
def foldRight[E, S, A](in: Iterable[A])(zero: S)(f: (A, S) => IO[E, S]): IO[E, S]
See also:
def forall[E, A](as: Iterable[A])(f: A => IO[E, Boolean]): IO[E, Boolean]
See also:
def foreach[E, A, B, Collection <: (Iterable)](in: Collection[A])(f: A => IO[E, B])(implicit bf: BuildFrom[Collection[A], B, Collection[B]]): IO[E, Collection[B]]
See also:
def foreach[E, A, B](in: Set[A])(f: A => IO[E, B]): IO[E, Set[B]]
See also:
def foreach[E, A, B : ClassTag](in: Array[A])(f: A => IO[E, B]): IO[E, Array[B]]
See also:
def foreach[E, Key, Key2, Value, Value2](map: Map[Key, Value])(f: (Key, Value) => IO[E, (Key2, Value2)]): IO[E, Map[Key2, Value2]]
See also:
def foreach[E, A, B](in: Option[A])(f: A => IO[E, B]): IO[E, Option[B]]
See also:
def foreach[E, A, B](in: NonEmptyChunk[A])(f: A => IO[E, B]): IO[E, NonEmptyChunk[B]]
See also:
final def foreachExec[E, A, B, Collection <: (Iterable)](as: Collection[A])(exec: ExecutionStrategy)(f: A => IO[E, B])(implicit bf: BuildFrom[Collection[A], B, Collection[B]]): IO[E, Collection[B]]
See also:
def foreachPar[E, A, B, Collection <: (Iterable)](as: Collection[A])(fn: A => IO[E, B])(implicit bf: BuildFrom[Collection[A], B, Collection[B]]): IO[E, Collection[B]]
See also:
def foreachPar[E, A, B](as: Set[A])(fn: A => IO[E, B]): IO[E, Set[B]]
See also:
def foreachPar[E, A, B : ClassTag](as: Array[A])(fn: A => IO[E, B]): IO[E, Array[B]]
See also:
def foreachPar[E, Key, Key2, Value, Value2](map: Map[Key, Value])(f: (Key, Value) => IO[E, (Key2, Value2)]): IO[E, Map[Key2, Value2]]
See also:
def foreachPar[E, A, B](as: NonEmptyChunk[A])(fn: A => IO[E, B]): IO[E, NonEmptyChunk[B]]
See also:
def foreachParN[E, A, B, Collection <: (Iterable)](n: Int)(as: Collection[A])(fn: A => IO[E, B])(implicit bf: BuildFrom[Collection[A], B, Collection[B]]): IO[E, Collection[B]]
See also:
def foreachParN_[E, A, B](n: Int)(as: Iterable[A])(f: A => IO[E, Any]): IO[E, Unit]
See also:
def foreachPar_[E, A, B](as: Iterable[A])(f: A => IO[E, Any]): IO[E, Unit]
See also:
def foreach_[E, A](as: Iterable[A])(f: A => IO[E, Any]): IO[E, Unit]
See also:
def forkAll[E, A, Collection <: (Iterable)](as: Collection[IO[E, A]])(implicit bf: BuildFrom[Collection[IO[E, A]], A, Collection[A]]): UIO[Fiber[E, Collection[A]]]
See also:
def forkAll_[E, A](as: Iterable[IO[E, A]]): UIO[Unit]
See also:
def fromEither[E, A](v: => Either[E, A]): IO[E, A]
See also:
def fromFiber[E, A](fiber: => Fiber[E, A]): IO[E, A]
See also:
def fromFiberM[E, A](fiber: IO[E, Fiber[E, A]]): IO[E, A]
See also:
def fromFunction[A](f: Any => A): IO[Nothing, A]
def fromFunctionFuture[A](f: Any => Future[A]): Task[A]
def fromFunctionM[E, A](f: Any => IO[E, A]): IO[E, A]
def fromFuture[A](make: ExecutionContext => Future[A]): Task[A]
See also:
def fromOption[A](v: => Option[A]): IO[Option[Nothing], A]
See also:
def fromTry[A](value: => Try[A]): Task[A]
See also:
def getOrFailUnit[A](v: => Option[A]): IO[Unit, A]
See also:
def halt[E](cause: => Cause[E]): IO[E, Nothing]
See also:
def haltWith[E](function: () => ZTrace => Cause[E]): IO[E, Nothing]
See also:
def identity: IO[Nothing, Any]
def ifM[E](b: IO[E, Boolean]): IfM[Any, E]
See also:
def interruptAs(fiberId: => Id): UIO[Nothing]
See also:
def interruptible[E, A](io: IO[E, A]): IO[E, A]
See also:
def interruptibleMask[E, A](k: InterruptStatusRestore => IO[E, A]): IO[E, A]
def iterate[E, S](initial: S)(cont: S => Boolean)(body: S => IO[E, S]): IO[E, S]
See also:
def left[E, A](a: => A): IO[E, Either[A, Nothing]]
See also:
def lock[E, A](executor: => Executor)(io: IO[E, A]): IO[E, A]
See also:
def loop[E, A, S](initial: S)(cont: S => Boolean, inc: S => S)(body: S => IO[E, A]): IO[E, List[A]]
See also:
def loop_[E, S](initial: S)(cont: S => Boolean, inc: S => S)(body: S => IO[E, Any]): IO[E, Unit]
See also:
def mapN[E, A, B, C](io1: IO[E, A], io2: IO[E, B])(f: (A, B) => C): IO[E, C]
See also:
def mapN[E, A, B, C, D](io1: IO[E, A], io2: IO[E, B], io3: IO[E, C])(f: (A, B, C) => D): IO[E, D]
See also:
def mapN[E, A, B, C, D, F](io1: IO[E, A], io2: IO[E, B], io3: IO[E, C], io4: IO[E, D])(f: (A, B, C, D) => F): IO[E, F]
See also:
def mapParN[E, A, B, C](io1: IO[E, A], io2: IO[E, B])(f: (A, B) => C): IO[E, C]
See also:
def mapParN[E, A, B, C, D](io1: IO[E, A], io2: IO[E, B], io3: IO[E, C])(f: (A, B, C) => D): IO[E, D]
See also:
def mapParN[E, A, B, C, D, F](io1: IO[E, A], io2: IO[E, B], io3: IO[E, C], io4: IO[E, D])(f: (A, B, C, D) => F): IO[E, F]
See also:
def memoize[E, A, B](f: A => IO[E, B]): UIO[A => IO[E, B]]
See also:
def mergeAll[E, A, B](in: Iterable[IO[E, A]])(zero: B)(f: (B, A) => B): IO[E, B]
See also:
def mergeAllPar[E, A, B](in: Iterable[IO[E, A]])(zero: B)(f: (B, A) => B): IO[E, B]
See also:
def noneOrFail[E](o: Option[E]): IO[E, Unit]
See also:
def noneOrFailWith[E, O](o: Option[O])(f: O => E): IO[E, Unit]
def not[E](effect: IO[E, Boolean]): IO[E, Boolean]
See also:
def partition[E, A, B](in: Iterable[A])(f: A => IO[E, B])(implicit ev: CanFail[E]): UIO[(Iterable[E], Iterable[B])]
See also:
def partitionPar[E, A, B](in: Iterable[A])(f: A => IO[E, B])(implicit ev: CanFail[E]): UIO[(Iterable[E], Iterable[B])]
See also:
def partitionParN[E, A, B](n: Int)(in: Iterable[A])(f: A => IO[E, B])(implicit ev: CanFail[E]): UIO[(Iterable[E], Iterable[B])]
See also:
def raceAll[E, A](io: IO[E, A], ios: Iterable[IO[E, A]]): IO[E, A]
See also:
def reduceAll[E, A](a: IO[E, A], as: Iterable[IO[E, A]])(f: (A, A) => A): IO[E, A]
See also:
def reduceAllPar[E, A](a: IO[E, A], as: Iterable[IO[E, A]])(f: (A, A) => A): IO[E, A]
See also:
def replicate[E, A](n: Int)(effect: IO[E, A]): Iterable[IO[E, A]]
See also:
def replicateM[E, A](n: Int)(effect: IO[E, A]): IO[E, Iterable[A]]
See also:
def replicateM_[E, A](n: Int)(effect: IO[E, A]): IO[E, Unit]
See also:
def require[E, A](error: => E): IO[E, Option[A]] => IO[E, A]
See also:
def reserve[E, A, B](reservation: IO[E, Reservation[Any, E, A]])(use: A => IO[E, B]): IO[E, B]
See also:
def right[E, B](b: => B): IO[E, Either[Nothing, B]]
See also:
def runtime: UIO[Runtime[Any]]
See also:
def some[E, A](a: => A): IO[E, Option[A]]
See also:
def succeed[A](a: => A): UIO[A]
See also:
See also:
def traced[E, A](zio: IO[E, A]): IO[E, A]
See also:
def uninterruptible[E, A](io: IO[E, A]): IO[E, A]
def unless[E](b: => Boolean)(zio: => IO[E, Any]): IO[E, Unit]
See also:
def unlessM[E](b: IO[E, Boolean]): UnlessM[Any, E]
See also:
def unsandbox[E, A](v: IO[Cause[E], A]): IO[E, A]
See also:
def untraced[E, A](zio: IO[E, A]): IO[E, A]
See also:
def validate[E, A, B, Collection <: (Iterable)](in: Collection[A])(f: A => IO[E, B])(implicit bf: BuildFrom[Collection[A], B, Collection[B]], ev: CanFail[E]): IO[::[E], Collection[B]]
See also:
def validate[E, A, B](in: NonEmptyChunk[A])(f: A => IO[E, B])(implicit ev: CanFail[E]): IO[::[E], NonEmptyChunk[B]]
See also:
def validateFirst[E, A, B, Collection <: (Iterable)](in: Collection[A])(f: A => IO[E, B])(implicit bf: BuildFrom[Collection[A], E, Collection[E]], ev: CanFail[E]): IO[Collection[E], B]
See also:
def validateFirstPar[E, A, B, Collection <: (Iterable)](in: Collection[A])(f: A => IO[E, B])(implicit bf: BuildFrom[Collection[A], E, Collection[E]], ev: CanFail[E]): IO[Collection[E], B]
def validatePar[E, A, B, Collection <: (Iterable)](in: Collection[A])(f: A => IO[E, B])(implicit bf: BuildFrom[Collection[A], B, Collection[B]], ev: CanFail[E]): IO[::[E], Collection[B]]
See also:
def validatePar[E, A, B](in: NonEmptyChunk[A])(f: A => IO[E, B])(implicit ev: CanFail[E]): IO[::[E], NonEmptyChunk[B]]
See also:
def validatePar_[E, A](in: Iterable[A])(f: A => IO[E, Any])(implicit ev: CanFail[E]): IO[::[E], Unit]
See also:
def validate_[E, A](in: Iterable[A])(f: A => IO[E, Any])(implicit ev: CanFail[E]): IO[::[E], Unit]
See also:
def when[E](b: => Boolean)(io: => IO[E, Any]): IO[E, Unit]
See also:
def whenCase[E, A](a: => A)(pf: PartialFunction[A, IO[E, Any]]): IO[E, Unit]
See also:
def whenCaseM[E, A](a: IO[E, A])(pf: PartialFunction[A, IO[E, Any]]): IO[E, Unit]
See also:
def whenM[E](b: IO[E, Boolean]): WhenM[Any, E]
See also:

Concrete fields

val fiberId: UIO[Id]
See also:
val interrupt: UIO[Nothing]
See also:
val never: UIO[Nothing]
See also:
val none: UIO[Option[Nothing]]
See also:
val unit: UIO[Unit]
See also:
See also: