Zipper

turbolift.io.Zipper
See theZipper companion object
sealed trait Zipper[+A, -U]

Effectful, parallelly composable result of fiber's execution.

Attributes

Companion
object
Graph
Supertypes
class Object
trait Matchable
class Any

Members list

Value members

Abstract methods

def get(using Any <:< U): A

Convert to pure value, provided the effect set is empty.

Convert to pure value, provided the effect set is empty.

Attributes

def getIO(using IO <:< U): Outcome[A]

Like get, provided the effect set is a singleton of IO.

Like get, provided the effect set is a singleton of IO.

Attributes

def outcome: Outcome[Unit]

Inspect the IO component of the result, detached from the rest of effects.

Inspect the IO component of the result, detached from the rest of effects.

Attributes

def run: Computation[A, U]

Convert back to computation.

Convert back to computation.

Attributes

def toOption: Option[A]

Try to convert to a single pure value.

Try to convert to a single pure value.

If the effect set includes nondeterminism (e.g. Choice), then at most one branch is taken.

Attributes

Concrete methods

final def &![B, U2 <: U](that: Zipper[B, U2]): Zipper[B, U2]
final def &<![B, U2 <: U](that: Zipper[B, U2]): Zipper[A, U2]
final def *![B, U2 <: U](that: Zipper[B, U2]): Zipper[(A, B), U2]
final def as[B](b: B): Zipper[B, U]
def handleIO: Outcome[Zipper[A, U]]
Extension method from Zipper

Eliminate IO from the effect set.

Eliminate IO from the effect set.

Attributes

final def map[B](f: A => B): Zipper[B, U]
final def zipPar[B, U2 <: U](that: Zipper[B, U2]): Zipper[(A, B), U2]
final def zipWithPar[B, C, U2 <: U](that: Zipper[B, U2])(f: (A, B) => C): Zipper[C, U2]