final case class ConstEvolution[-I, +O, +E](stage: Stage[I, O, E], _dispose: () => Unit) extends Evolution[I, O, E] with Product with Serializable
An Evolution that returns the same constant Stage regardless of the status.
Used by StageOps.toEvolution to lift a stateless stage into an evolution.
- I
the input type (contravariant)
- O
the output type (covariant)
- E
the error type (covariant)
- stage
the stage returned by every branch
- Source
- ConstEvolution.scala
- Alphabetic
- By Inheritance
- ConstEvolution
- Serializable
- Product
- Equals
- Evolution
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
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
- val _dispose: () => Unit
- 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 compose[_O, _E >: E](that: Evolution[O, _O, _E]): Evolution[I, _O, _E]
Composes this evolution with another, creating a new evolution whose continuation for any status is the sequential composition of the corresponding continuations of both evolutions.
Composes this evolution with another, creating a new evolution whose continuation for any status is the sequential composition of the corresponding continuations of both evolutions.
Specifically:
composed(s) == self(s) ~> that(s)
Used internally when merging evolutions during Yield composition inside Stage.AndThen.
- _O
the output type of the resulting stages
- _E
the combined error type
- that
the downstream evolution to compose with
- returns
a new evolution representing
selffollowed bythat
- Definition Classes
- Evolution
- Annotations
- @inline()
- def dispose(): Unit
Releases all resources held by the Stage that produced this evolution.
Releases all resources held by the Stage that produced this evolution.
After this call the producing stage must be considered permanently unusable — it must not be applied or skipped again. This is the exclusive cleanup point for resources owned by the producing stage.
Called when the producing stage is permanently shut down:
- by Stage.execute after the pipeline has produced its terminal Outcome, so the continuation is released immediately rather than carried forward;
- when
applythrows aThrowable, since the stage can no longer be used and all its resources must still be released.
Implementations that hold no external resources may leave this as a no-op.
- Definition Classes
- ConstEvolution → Evolution
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def evolve(status: Status[_]): Stage[I, O, E]
Returns the next Stage based on the given
status.Returns the next Stage based on the given
status.May release resources that are specific to this evolution instance and will not be reused by subsequent generations (i.e. resources not needed by the returned stage or its own evolution).
- status
the status that determines the continuation stage
- Definition Classes
- ConstEvolution → Evolution
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @IntrinsicCandidate() @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def map[_I, _O, _E](f: (Stage[I, O, E]) => Stage[_I, _O, _E]): Evolution[_I, _O, _E]
Transforms every continuation of this evolution by applying
fto the stage it returns.Transforms every continuation of this evolution by applying
fto the stage it returns.This is the public API for adapting an
Evolutionto a different stage type without exposing internal composition details.- _I
the input type of the resulting stages
- _O
the output type of the resulting stages
- _E
the error type of the resulting stages
- f
a function that transforms each continuation stage
- returns
a new evolution with all continuations mapped by
f
- Definition Classes
- Evolution
- Annotations
- @inline()
- 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()
- def productElementNames: Iterator[String]
- Definition Classes
- Product
- val stage: Stage[I, O, E]
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- 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)