sealed trait Yield[-I, +O, +E] extends AnyRef
What a Stage returns for one input: an optional output, the Status of that run, and the Evolution that picks the stage handling the next one.
Yield is the internal value flowing from stage to stage, not the answer the pipeline gives to the outside world —
that is h8io.stages.base.Outcome in the lib module, produced once someone terminates the pipeline.
There are two variants, Yield.Some and Yield.None, according to whether an output was produced. Match on them when the two cases are handled differently, on Yield itself when they are not.
- I
the input type of the stages held by the evolution (contravariant)
- O
the output type (covariant)
- E
the error type (covariant)
- Alphabetic
- By Inheritance
- Yield
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Abstract Value Members
- abstract val evolution: Evolution[I, O, E]
The continuation: which stage handles the next input, given status.
- abstract def map[_I, _O, _E](mapOut: (O) => _O, mapStatus: (Status[E]) => Status[_E], mapEvolution: (Evolution[I, O, E]) => Evolution[_I, _O, _E]): Yield[_I, _O, _E]
Transforms all three components at once.
Transforms all three components at once.
mapOutis not called on a Yield.None, which has no output to transform, but is still required so that the result type is the same for both variants. - abstract def outOption: Option[O]
The output as an
Option— for when only its presence matters.The output as an
Option— for when only its presence matters. Prefer matching on Yield.Some / Yield.None when the status or the evolution is needed too. - abstract val status: Status[E]
The status of the run that produced this yield.
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @IntrinsicCandidate() @native()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def evolve(): Stage[I, O, E]
The stage that handles the next input: the continuation this yield's own status selects.
The stage that handles the next input: the continuation this yield's own status selects.
Going through the evolution directly is the exception, not the rule — the status a yield carries is the one its continuation must be chosen by, and this method is what pairs them.
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @IntrinsicCandidate() @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @IntrinsicCandidate() @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @IntrinsicCandidate() @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @IntrinsicCandidate() @native()
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated
(Since version 9)