Trait/Object

zio.stream

ZChannel

Related Docs: object ZChannel | package stream

Permalink

sealed trait ZChannel[-Env, -InErr, -InElem, -InDone, +OutErr, +OutElem, +OutDone] extends AnyRef

A ZChannel[Env, InErr, InElem, InDone, OutErr, OutElem, OutDone] is a nexus of I/O operations, which supports both reading and writing. A channel may read values of type InElem or process upstream failures of type InErr, while it may write values of type OutElem. When the channel finishes, it yields a value of type OutDone. A channel may fail with a value of type OutErr.

Channels are the foundation of ZIO Streams: both streams and sinks are built on channels. Most users shouldn't have to use channels directly, as streams and sinks are much more convenient and cover all common use cases. However, when adding new stream and sink operators, or doing something highly specialized, it may be useful to use channels directly.

Channels compose in a variety of ways:

Self Type
ZChannel[Env, InErr, InElem, InDone, OutErr, OutElem, OutDone]
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ZChannel
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

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 *>[Env1 <: Env, InErr1 <: InErr, InElem1 <: InElem, InDone1 <: InDone, OutErr1 >: OutErr, OutElem1 >: OutElem, OutDone2](that: ⇒ ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem1, OutDone2])(implicit trace: Trace): ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem1, OutDone2]

    Permalink

    Returns a new channel that is the sequential composition of this channel and the specified channel.

    Returns a new channel that is the sequential composition of this channel and the specified channel. The returned channel terminates with the terminal value of the other channel.

    This is a symbol operator for ZChannel#zipRight.

  4. final def <*[Env1 <: Env, InErr1 <: InErr, InElem1 <: InElem, InDone1 <: InDone, OutErr1 >: OutErr, OutElem1 >: OutElem, OutDone2](that: ⇒ ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem1, OutDone2])(implicit trace: Trace): ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem1, OutDone]

    Permalink

    Returns a new channel that is the sequential composition of this channel and the specified channel.

    Returns a new channel that is the sequential composition of this channel and the specified channel. The returned channel terminates with the terminal value of this channel.

    This is a symbol operator for ZChannel#zipLeft.

  5. final def <*>[Env1 <: Env, InErr1 <: InErr, InElem1 <: InElem, InDone1 <: InDone, OutErr1 >: OutErr, OutElem1 >: OutElem, OutDone2](that: ⇒ ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem1, OutDone2])(implicit zippable: Zippable[OutDone, OutDone2], trace: Trace): ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem1, Out]

    Permalink

    Returns a new channel that is the sequential composition of this channel and the specified channel.

    Returns a new channel that is the sequential composition of this channel and the specified channel. The returned channel terminates with a tuple of the terminal values of both channels.

    This is a symbol operator for ZChannel#zip.

  6. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  7. final def >>>[Env1 <: Env, OutErr2, OutElem2, OutDone2](that: ⇒ ZChannel[Env1, OutErr, OutElem, OutDone, OutErr2, OutElem2, OutDone2])(implicit trace: Trace): ZChannel[Env1, InErr, InElem, InDone, OutErr2, OutElem2, OutDone2]

    Permalink

    Returns a new channel that pipes the output of this channel into the specified channel.

    Returns a new channel that pipes the output of this channel into the specified channel. The returned channel has the input type of this channel, and the output type of the specified channel, terminating with the value of the specified channel.

    This is a symbolic operator for ZChannel#pipeTo.

  8. final def as[OutDone2](z2: ⇒ OutDone2)(implicit trace: Trace): ZChannel[Env, InErr, InElem, InDone, OutErr, OutElem, OutDone2]

    Permalink

    Returns a new channel that is the same as this one, except the terminal value of the channel is the specified constant value.

    Returns a new channel that is the same as this one, except the terminal value of the channel is the specified constant value.

    This method produces the same result as mapping this channel to the specified constant value.

  9. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  10. final def catchAll[Env1 <: Env, InErr1 <: InErr, InElem1 <: InElem, InDone1 <: InDone, OutErr2, OutElem1 >: OutElem, OutDone1 >: OutDone](f: (OutErr) ⇒ ZChannel[Env1, InErr1, InElem1, InDone1, OutErr2, OutElem1, OutDone1])(implicit trace: Trace): ZChannel[Env1, InErr1, InElem1, InDone1, OutErr2, OutElem1, OutDone1]

    Permalink

    Returns a new channel that is the same as this one, except if this channel errors for any typed error, then the returned channel will switch over to using the fallback channel returned by the specified error handler.

  11. final def catchAllCause[Env1 <: Env, InErr1 <: InErr, InElem1 <: InElem, InDone1 <: InDone, OutErr2, OutElem1 >: OutElem, OutDone1 >: OutDone](f: (Cause[OutErr]) ⇒ ZChannel[Env1, InErr1, InElem1, InDone1, OutErr2, OutElem1, OutDone1])(implicit trace: Trace): ZChannel[Env1, InErr1, InElem1, InDone1, OutErr2, OutElem1, OutDone1]

    Permalink

    Returns a new channel that is the same as this one, except if this channel errors for any cause at all, then the returned channel will switch over to using the fallback channel returned by the specified error handler.

  12. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  13. final def collect[OutElem2](f: PartialFunction[OutElem, OutElem2])(implicit trace: Trace): ZChannel[Env, InErr, InElem, InDone, OutErr, OutElem2, OutDone]

    Permalink

    Returns a new channel, which is the same as this one, except its outputs are filtered and transformed by the specified partial function.

  14. final def collectElements(implicit trace: Trace): ZChannel[Env, InErr, InElem, InDone, OutErr, Nothing, (Chunk[OutElem], OutDone)]

    Permalink

    Returns a new channel, which is the same as this one, except that all the outputs are collected and bundled into a tuple together with the terminal value of this channel.

    Returns a new channel, which is the same as this one, except that all the outputs are collected and bundled into a tuple together with the terminal value of this channel.

    As the channel returned from this channel collects all of this channel's output into an in- memory chunk, it is not safe to call this method on channels that output a large or unbounded number of values.

  15. final def concatMap[Env1 <: Env, InErr1 <: InErr, InElem1 <: InElem, InDone1 <: InDone, OutErr1 >: OutErr, OutElem2](f: (OutElem) ⇒ ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem2, Any])(implicit trace: Trace): ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem2, Any]

    Permalink

    Returns a new channel whose outputs are fed to the specified factory function, which creates new channels in response.

    Returns a new channel whose outputs are fed to the specified factory function, which creates new channels in response. These new channels are sequentially concatenated together, and all their outputs appear as outputs of the newly returned channel.

  16. final def concatMapWith[Env1 <: Env, InErr1 <: InErr, InElem1 <: InElem, InDone1 <: InDone, OutErr1 >: OutErr, OutElem2, OutDone2, OutDone3](f: (OutElem) ⇒ ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem2, OutDone2])(g: (OutDone2, OutDone2) ⇒ OutDone2, h: (OutDone2, OutDone) ⇒ OutDone3)(implicit trace: Trace): ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem2, OutDone3]

    Permalink

    Returns a new channel whose outputs are fed to the specified factory function, which creates new channels in response.

    Returns a new channel whose outputs are fed to the specified factory function, which creates new channels in response. These new channels are sequentially concatenated together, and all their outputs appear as outputs of the newly returned channel. The provided merging function is used to merge the terminal values of all channels into the single terminal value of the returned channel.

  17. final def concatOut[Env1 <: Env, InErr1 <: InErr, InElem1 <: InElem, InDone1 <: InDone, OutErr1 >: OutErr, OutElem2](implicit ev: <:<[OutElem, ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem2, Any]], trace: Trace): ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem2, Any]

    Permalink

    Returns a new channel, which is the concatenation of all the channels that are written out by this channel.

    Returns a new channel, which is the concatenation of all the channels that are written out by this channel. This method may only be called on channels that output other channels.

  18. final def contramap[InDone0](f: (InDone0) ⇒ InDone)(implicit trace: Trace): ZChannel[Env, InErr, InElem, InDone0, OutErr, OutElem, OutDone]

    Permalink

    Returns a new channel which is the same as this one but applies the given function to the input channel's done value.

  19. final def contramapError[InErr0](f: (InErr0) ⇒ InErr)(implicit trace: Trace): ZChannel[Env, InErr0, InElem, InDone, OutErr, OutElem, OutDone]

    Permalink

    Returns a new channel which is the same as this one but applies the given function to the input channel's error value.

  20. final def contramapErrorZIO[InErr0, Env1 <: Env](f: (InErr0) ⇒ ZIO[Env1, InErr, InDone])(implicit trace: Trace): ZChannel[Env1, InErr0, InElem, InDone, OutErr, OutElem, OutDone]

    Permalink

    Returns a new channel which is the same as this one but applies the given ZIO function to the input channel's error value.

  21. final def contramapIn[InElem0](f: (InElem0) ⇒ InElem)(implicit trace: Trace): ZChannel[Env, InErr, InElem0, InDone, OutErr, OutElem, OutDone]

    Permalink

    Returns a new channel which is the same as this one but applies the given function to the input channel's output elements

  22. final def contramapInZIO[InElem0, Env1 <: Env](f: (InElem0) ⇒ ZIO[Env1, InErr, InElem])(implicit trace: Trace): ZChannel[Env1, InErr, InElem0, InDone, OutErr, OutElem, OutDone]

    Permalink

    Returns a new channel which is the same as this one but applies the given ZIO function to the input channel's output elements

  23. final def contramapZIO[InDone0, Env1 <: Env](f: (InDone0) ⇒ ZIO[Env1, InErr, InDone])(implicit trace: Trace): ZChannel[Env1, InErr, InElem, InDone0, OutErr, OutElem, OutDone]

    Permalink

    Returns a new channel which is the same as this one but applies the given ZIO function to the input channel's done value.

  24. final def drain(implicit trace: Trace): ZChannel[Env, InErr, InElem, InDone, OutErr, Nothing, OutDone]

    Permalink

    Returns a new channel which reads all the elements from upstream's output channel and ignores them, then terminates with the upstream result value.

  25. final def emitCollect(implicit trace: Trace): ZChannel[Env, InErr, InElem, InDone, OutErr, (Chunk[OutElem], OutDone), Unit]

    Permalink

    Returns a new channel that collects the output and terminal value of this channel, which it then writes as output of the returned channel.

  26. final def ensuring[Env1 <: Env](finalizer: ⇒ URIO[Env1, Any])(implicit trace: Trace): ZChannel[Env1, InErr, InElem, InDone, OutErr, OutElem, OutDone]

    Permalink

    Returns a new channel with an attached finalizer.

    Returns a new channel with an attached finalizer. The finalizer is guaranteed to be executed so long as the channel begins execution (and regardless of whether or not it completes).

  27. final def ensuringWith[Env1 <: Env](finalizer: (Exit[OutErr, OutDone]) ⇒ URIO[Env1, Any])(implicit trace: Trace): ZChannel[Env1, InErr, InElem, InDone, OutErr, OutElem, OutDone]

    Permalink

    Returns a new channel with an attached finalizer.

    Returns a new channel with an attached finalizer. The finalizer is guaranteed to be executed so long as the channel begins execution (and regardless of whether or not it completes).

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

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

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

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  31. final def flatMap[Env1 <: Env, InErr1 <: InErr, InElem1 <: InElem, InDone1 <: InDone, OutErr1 >: OutErr, OutElem1 >: OutElem, OutDone2](f: (OutDone) ⇒ ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem1, OutDone2])(implicit trace: Trace): ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem1, OutDone2]

    Permalink

    Returns a new channel, which sequentially combines this channel, together with the provided factory function, which creates a second channel based on the terminal value of this channel.

    Returns a new channel, which sequentially combines this channel, together with the provided factory function, which creates a second channel based on the terminal value of this channel. The result is a channel that will first perform the functions of this channel, before performing the functions of the created channel (including yielding its terminal value).

  32. final def flatten[Env1 <: Env, InErr1 <: InErr, InElem1 <: InElem, InDone1 <: InDone, OutErr1 >: OutErr, OutElem1 >: OutElem, OutDone2](implicit ev: <:<[OutDone, ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem1, OutDone2]], trace: Trace): ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem1, OutDone2]

    Permalink

    Returns a new channel, which flattens the terminal value of this channel.

    Returns a new channel, which flattens the terminal value of this channel. This function may only be called if the terminal value of this channel is another channel of compatible types.

  33. final def foldCauseChannel[Env1 <: Env, InErr1 <: InErr, InElem1 <: InElem, InDone1 <: InDone, OutErr1, OutElem1 >: OutElem, OutDone1](onErr: (Cause[OutErr]) ⇒ ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem1, OutDone1], onSucc: (OutDone) ⇒ ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem1, OutDone1])(implicit trace: Trace): ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem1, OutDone1]

    Permalink

    Folds over the result of this channel including any cause of termination

  34. final def foldChannel[Env1 <: Env, InErr1 <: InErr, InElem1 <: InElem, InDone1 <: InDone, OutErr1, OutElem1 >: OutElem, OutDone1](onErr: (OutErr) ⇒ ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem1, OutDone1], onSucc: (OutDone) ⇒ ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem1, OutDone1])(implicit trace: Trace): ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem1, OutDone1]

    Permalink

    Folds over the result of this channel

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  37. final def interruptWhen[OutErr1 >: OutErr, OutDone1 >: OutDone](promise: Promise[OutErr1, OutDone1])(implicit trace: Trace): ZChannel[Env, InErr, InElem, InDone, OutErr1, OutElem, OutDone1]

    Permalink

    Returns a new channel, which is the same as this one, except it will be interrupted when the specified promise is completed.

    Returns a new channel, which is the same as this one, except it will be interrupted when the specified promise is completed. If the promise is completed before the underlying channel is done, then the returned channel will yield the value of the promise. Otherwise, if the underlying channel finishes first, then the returned channel will yield the value of the underlying channel.

  38. final def interruptWhen[Env1 <: Env, OutErr1 >: OutErr, OutDone1 >: OutDone](io: ZIO[Env1, OutErr1, OutDone1])(implicit trace: Trace): ZChannel[Env1, InErr, InElem, InDone, OutErr1, OutElem, OutDone1]

    Permalink

    Returns a new channel, which is the same as this one, except it will be interrupted when the specified effect completes.

    Returns a new channel, which is the same as this one, except it will be interrupted when the specified effect completes. If the effect completes successfully before the underlying channel is done, then the returned channel will yield the success value of the effect as its terminal value. On the other hand, if the underlying channel finishes first, then the returned channel will yield the success value of the underlying channel as its terminal value.

  39. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  40. final def map[OutDone2](f: (OutDone) ⇒ OutDone2)(implicit trace: Trace): ZChannel[Env, InErr, InElem, InDone, OutErr, OutElem, OutDone2]

    Permalink

    Returns a new channel, which is the same as this one, except the terminal value of the returned channel is created by applying the specified function to the terminal value of this channel.

  41. final def mapError[OutErr2](f: (OutErr) ⇒ OutErr2)(implicit trace: Trace): ZChannel[Env, InErr, InElem, InDone, OutErr2, OutElem, OutDone]

    Permalink

    Returns a new channel, which is the same as this one, except the failure value of the returned channel is created by applying the specified function to the failure value of this channel.

  42. final def mapErrorCause[OutErr2](f: (Cause[OutErr]) ⇒ Cause[OutErr2])(implicit trace: Trace): ZChannel[Env, InErr, InElem, InDone, OutErr2, OutElem, OutDone]

    Permalink

    A more powerful version of mapError which also surfaces the Cause of the channel failure

  43. final def mapOut[OutElem2](f: (OutElem) ⇒ OutElem2)(implicit trace: Trace): ZChannel[Env, InErr, InElem, InDone, OutErr, OutElem2, OutDone]

    Permalink

    Creates a channel that is like this channel but the given function gets applied to each emitted output element

  44. final def mapOutZIO[Env1 <: Env, OutErr1 >: OutErr, OutElem2](f: (OutElem) ⇒ ZIO[Env1, OutErr1, OutElem2])(implicit trace: Trace): ZChannel[Env1, InErr, InElem, InDone, OutErr1, OutElem2, OutDone]

    Permalink

    Creates a channel that is like this channel but the given ZIO function gets applied to each emitted output element

  45. final def mapOutZIOPar[Env1 <: Env, OutErr1 >: OutErr, OutElem2](n: Int)(f: (OutElem) ⇒ ZIO[Env1, OutErr1, OutElem2])(implicit trace: Trace): ZChannel[Env1, InErr, InElem, InDone, OutErr1, OutElem2, OutDone]

    Permalink

    Creates a channel that is like this channel but the given ZIO function gets applied to each emitted output element, taking n elements at once and mapping them in parallel

  46. final def mapZIO[Env1 <: Env, OutErr1 >: OutErr, OutDone2](f: (OutDone) ⇒ ZIO[Env1, OutErr1, OutDone2])(implicit trace: Trace): ZChannel[Env1, InErr, InElem, InDone, OutErr1, OutElem, OutDone2]

    Permalink

    Returns a new channel, which is the same as this one, except the terminal value of the returned channel is created by applying the specified effectful function to the terminal value of this channel.

  47. final def mergeMap[Env1 <: Env, InErr1 <: InErr, InElem1 <: InElem, InDone1 <: InDone, OutErr1 >: OutErr, OutElem2](n: ⇒ Int, bufferSize: ⇒ Int = 16, mergeStrategy: ⇒ MergeStrategy = ZChannel.MergeStrategy.BackPressure)(f: (OutElem) ⇒ ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem2, Any])(implicit trace: Trace): ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem2, Any]

    Permalink

    Returns a new channel which creates a new channel for each emitted element and merges some of them together.

    Returns a new channel which creates a new channel for each emitted element and merges some of them together. Different merge strategies control what happens if there are more than the given maximum number of channels gets created. See ZChannel.mergeAll.

    n

    The maximum number of channels to merge

    bufferSize

    Number of elements that can be buffered from upstream for the merging

    mergeStrategy

    Merge strategy, either back pressure or sliding.

    f

    The function that creates a new channel from each emitted element

  48. final def mergeOut[Env1 <: Env, InErr1 <: InErr, InElem1 <: InElem, InDone1 <: InDone, OutErr1 >: OutErr, OutElem2](n: ⇒ Int)(implicit ev: <:<[OutElem, ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem2, Any]], trace: Trace): ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem2, Any]

    Permalink

    Returns a new channel which merges a number of channels emitted by this channel using the back pressuring merge strategy.

    Returns a new channel which merges a number of channels emitted by this channel using the back pressuring merge strategy. See ZChannel.mergeAll

  49. final def mergeOutWith[Env1 <: Env, InErr1 <: InErr, InElem1 <: InElem, InDone1 <: InDone, OutErr1 >: OutErr, OutElem2, OutDone1 >: OutDone](n: ⇒ Int)(f: (OutDone1, OutDone1) ⇒ OutDone1)(implicit ev: <:<[OutElem, ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem2, OutDone1]], trace: Trace): ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem2, OutDone1]

    Permalink

    Returns a new channel which merges a number of channels emitted by this channel using the back pressuring merge strategy and uses a given function to merge each completed subchannel's result value.

    Returns a new channel which merges a number of channels emitted by this channel using the back pressuring merge strategy and uses a given function to merge each completed subchannel's result value. See ZChannel.mergeAll

  50. final def mergeWith[Env1 <: Env, InErr1 <: InErr, InElem1 <: InElem, InDone1 <: InDone, OutErr2, OutErr3, OutElem1 >: OutElem, OutDone2, OutDone3](that: ZChannel[Env1, InErr1, InElem1, InDone1, OutErr2, OutElem1, OutDone2])(leftDone: (Exit[OutErr, OutDone]) ⇒ MergeDecision[Env1, OutErr2, OutDone2, OutErr3, OutDone3], rightDone: (Exit[OutErr2, OutDone2]) ⇒ MergeDecision[Env1, OutErr, OutDone, OutErr3, OutDone3])(implicit trace: Trace): ZChannel[Env1, InErr1, InElem1, InDone1, OutErr3, OutElem1, OutDone3]

    Permalink

    Returns a new channel, which is the merge of this channel and the specified channel, where the behavior of the returned channel on left or right early termination is decided by the specified leftDone and rightDone merge decisions.

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

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

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

    Permalink
    Definition Classes
    AnyRef
  54. final def orDie(implicit ev: <:<[OutErr, Throwable], trace: Trace): ZChannel[Env, InErr, InElem, InDone, Nothing, OutElem, OutDone]

    Permalink

    Translates channel failure into death of the fiber, making all failures unchecked and not a part of the type of the channel.

  55. final def orDieWith(f: (OutErr) ⇒ Throwable)(implicit trace: Trace): ZChannel[Env, InErr, InElem, InDone, Nothing, OutElem, OutDone]

    Permalink

    Keeps none of the errors, and terminates the fiber with them, using the specified function to convert the OutErr into a Throwable.

  56. final def orElse[Env1 <: Env, InErr1 <: InErr, InElem1 <: InElem, InDone1 <: InDone, OutErr2, OutElem1 >: OutElem, OutDone1 >: OutDone](that: ⇒ ZChannel[Env1, InErr1, InElem1, InDone1, OutErr2, OutElem1, OutDone1])(implicit trace: Trace): ZChannel[Env1, InErr1, InElem1, InDone1, OutErr2, OutElem1, OutDone1]

    Permalink

    Returns a new channel that will perform the operations of this one, until failure, and then it will switch over to the operations of the specified fallback channel.

  57. final def pipeTo[Env1 <: Env, OutErr2, OutElem2, OutDone2](that: ⇒ ZChannel[Env1, OutErr, OutElem, OutDone, OutErr2, OutElem2, OutDone2])(implicit trace: Trace): ZChannel[Env1, InErr, InElem, InDone, OutErr2, OutElem2, OutDone2]

    Permalink

    Returns a new channel that pipes the output of this channel into the specified channel.

    Returns a new channel that pipes the output of this channel into the specified channel. The returned channel has the input type of this channel, and the output type of the specified channel, terminating with the value of the specified channel.

    Same as the symbolic operator >>>

  58. final def pipeToOrFail[Env1 <: Env, OutErr1 >: OutErr, OutElem2, OutDone2](that: ⇒ ZChannel[Env1, Nothing, OutElem, OutDone, OutErr1, OutElem2, OutDone2])(implicit trace: Trace): ZChannel[Env1, InErr, InElem, InDone, OutErr1, OutElem2, OutDone2]

    Permalink

    Returns a new channel that pipes the output of this channel into the specified channel and preserves this channel's failures without providing them to the other channel for observation.

  59. final def provideEnvironment(env: ⇒ ZEnvironment[Env])(implicit trace: Trace): ZChannel[Any, InErr, InElem, InDone, OutErr, OutElem, OutDone]

    Permalink

    Provides the channel with its required environment, which eliminates its dependency on Env.

  60. final def provideLayer[OutErr1 >: OutErr, Env0](layer: ⇒ ZLayer[Env0, OutErr1, Env])(implicit trace: Trace): ZChannel[Env0, InErr, InElem, InDone, OutErr1, OutElem, OutDone]

    Permalink

    Provides a layer to the channel, which translates it to another level.

  61. final def provideSomeEnvironment[Env0](f: (ZEnvironment[Env0]) ⇒ ZEnvironment[Env])(implicit trace: Trace): ZChannel[Env0, InErr, InElem, InDone, OutErr, OutElem, OutDone]

    Permalink

    Transforms the environment being provided to the channel with the specified function.

  62. final def provideSomeLayer[Env0]: ProvideSomeLayer[Env0, Env, InErr, InElem, InDone, OutErr, OutElem, OutDone]

    Permalink

    Splits the environment into two parts, providing one part using the specified layer and leaving the remainder Env0.

  63. final def repeated(implicit trace: Trace): ZChannel[Env, InErr, InElem, InDone, OutErr, OutElem, Nothing]

    Permalink

    Creates a channel which repeatedly runs this channel

  64. final def run(implicit ev1: <:<[Any, InElem], ev2: <:<[OutElem, Nothing], trace: Trace): ZIO[Env, OutErr, OutDone]

    Permalink

    Run the channel until it finishes with a done value or fails with an error.

    Run the channel until it finishes with a done value or fails with an error. The channel must not read any input or write any output.

  65. final def runCollect(implicit ev1: <:<[Any, InElem], trace: Trace): ZIO[Env, OutErr, (Chunk[OutElem], OutDone)]

    Permalink

    Run the channel until it finishes with a done value or fails with an error and collects its emitted output elements.

    Run the channel until it finishes with a done value or fails with an error and collects its emitted output elements.

    The channel must not read any input.

  66. final def runDrain(implicit ev1: <:<[Any, InElem], trace: Trace): ZIO[Env, OutErr, OutDone]

    Permalink

    Run the channel until it finishes with a done value or fails with an error and ignores its emitted output elements.

    Run the channel until it finishes with a done value or fails with an error and ignores its emitted output elements.

    The channel must not read any input.

  67. final def runScoped(implicit ev1: <:<[Any, InElem], ev2: <:<[OutElem, Nothing], trace: Trace): ZIO[Env with Scope, OutErr, OutDone]

    Permalink

    Run the channel until it finishes with a done value or fails with an error.

    Run the channel until it finishes with a done value or fails with an error. The channel must not read any input or write any output.

    Closing the channel, which includes execution of all the finalizers attached to the channel will be added to the current scope as a finalizer.

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

    Permalink
    Definition Classes
    AnyRef
  69. final def toPipeline[In, Out](implicit In: <:<[Chunk[In], InElem], Out: <:<[OutElem, Chunk[Out]], InDone: <:<[Any, InDone], trace: Trace): ZPipeline[Env, OutErr, In, Out]

    Permalink

    Converts this channel to a ZPipeline

  70. final def toPull(implicit trace: Trace): ZIO[Env with Scope, Nothing, ZIO[Env, OutErr, Either[OutDone, OutElem]]]

    Permalink

    Returns in a scope a ZIO effect that can be used to repeatedly pull elements from the channel.

    Returns in a scope a ZIO effect that can be used to repeatedly pull elements from the channel. The pull effect fails with the channel's failure in case the channel fails, or returns either the channel's done value or an emitted element.

  71. final def toSink[In, Out](implicit In: <:<[Chunk[In], InElem], Out: <:<[OutElem, Chunk[Out]], InDone: <:<[Any, InDone], trace: Trace): ZSink[Env, OutErr, In, Out, OutDone]

    Permalink

    Converts this channel to a ZSink

  72. final def toStream[Out](implicit Out: <:<[OutElem, Chunk[Out]], InErr: <:<[Any, InErr], InElem: <:<[Any, InElem], InDone: <:<[Any, InDone], trace: Trace): ZStream[Env, OutErr, Out]

    Permalink

    Converts this channel to a ZStream

  73. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  74. final def unit(implicit trace: Trace): ZChannel[Env, InErr, InElem, InDone, OutErr, OutElem, Unit]

    Permalink

    Creates a new channel which is like this channel but returns with the unit value when succeeds

  75. final def updateService[Service]: UpdateService[Env, InErr, InElem, InDone, OutErr, OutElem, OutDone, Service]

    Permalink

    Updates a service in the environment of this channel.

  76. final def updateServiceAt[Service]: UpdateServiceAt[Env, InErr, InElem, InDone, OutErr, OutElem, OutDone, Service]

    Permalink

    Updates a service at the specified key in the environment of this channel.

  77. final def wait(): Unit

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  80. final def zip[Env1 <: Env, InErr1 <: InErr, InElem1 <: InElem, InDone1 <: InDone, OutErr1 >: OutErr, OutElem1 >: OutElem, OutDone2](that: ⇒ ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem1, OutDone2])(implicit zippable: Zippable[OutDone, OutDone2], trace: Trace): ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem1, Out]

    Permalink

    Creates a new channel which first runs this channel and if it succeeds runs the other channel and finally finishes with the zipped done value of both channels

  81. final def zipLeft[Env1 <: Env, InErr1 <: InErr, InElem1 <: InElem, InDone1 <: InDone, OutErr1 >: OutErr, OutElem1 >: OutElem, OutDone2](that: ⇒ ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem1, OutDone2])(implicit trace: Trace): ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem1, OutDone]

    Permalink

    Creates a new channel which first runs this channel and if it succeeds runs the other channel and finally finishes with the done value of the first channel

  82. final def zipPar[Env1 <: Env, InErr1 <: InErr, InElem1 <: InElem, InDone1 <: InDone, OutErr1 >: OutErr, OutElem1 >: OutElem, OutDone2](that: ⇒ ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem1, OutDone2])(implicit zippable: Zippable[OutDone, OutDone2], trace: Trace): ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem1, Out]

    Permalink

    Creates a new channel which runs in parallel this and the other channel and when both succeeds finishes with a tuple of both channel's done value

  83. final def zipParLeft[Env1 <: Env, InErr1 <: InErr, InElem1 <: InElem, InDone1 <: InDone, OutErr1 >: OutErr, OutElem1 >: OutElem, OutDone2](that: ⇒ ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem1, OutDone2])(implicit trace: Trace): ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem1, OutDone]

    Permalink

    Creates a new channel which runs in parallel this and the other channel and when both succeeds finishes with the first one's done value

  84. def zipParRight[Env1 <: Env, InErr1 <: InErr, InElem1 <: InElem, InDone1 <: InDone, OutErr1 >: OutErr, OutElem1 >: OutElem, OutDone2](that: ⇒ ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem1, OutDone2])(implicit trace: Trace): ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem1, OutDone2]

    Permalink

    Creates a new channel which runs in parallel this and the other channel and when both succeeds finishes with the second one's done value

  85. final def zipRight[Env1 <: Env, InErr1 <: InErr, InElem1 <: InElem, InDone1 <: InDone, OutErr1 >: OutErr, OutElem1 >: OutElem, OutDone2](that: ⇒ ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem1, OutDone2])(implicit trace: Trace): ZChannel[Env1, InErr1, InElem1, InDone1, OutErr1, OutElem1, OutDone2]

    Permalink

    Creates a new channel which first runs this channel and if it succeeds runs the other channel and finally finishes with the done value of the second channel

Deprecated Value Members

  1. final def never(implicit trace: Trace): ZChannel[Any, Any, Any, Any, Nothing, Nothing, Nothing]

    Permalink

    Returns a channel that never completes

    Returns a channel that never completes

    Annotations
    @deprecated
    Deprecated

    (Since version 3.0.0) use ZChannel.never

Inherited from AnyRef

Inherited from Any

Ungrouped