trait Stagnation[-I, +O, +E] extends Evolution[I, O, E]
An h8io.stages.Evolution that always returns itself as the next stage.
Mixing in Stagnation fixes evolve to unconditionally return this, regardless of the h8io.stages.Status
passed in, and makes dispose a no-op. The stage is therefore stateless with respect to evolution: every pipeline
run produces the same continuation.
Appropriate for stages that hold no external resources and whose behavior does not depend on the outcome of previous
runs. See SAMStage and StaticStage for concrete mixins built on top of Stagnation.
- I
the input type (contravariant)
- O
the output type (covariant)
- E
the error type (covariant)
- Self Type
- Stagnation[I, O, E] with Stage[I, O, E]
- Source
- Stagnation.scala
- Alphabetic
- By Inheritance
- Stagnation
- Evolution
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
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 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
- Stagnation → Evolution
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final 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
- Stagnation → Evolution
- 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 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()
- 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)