Unions

case class Unions[R, A](first: Union[R, A], rest: Vector[Union[R, Any]])

A non-empty list of Unions.

It is only partially typed, we just keep track of the type of the first object

Companion:
object
Source:
Unions.scala
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any

Type members

Types

type X = A

Value members

Concrete methods

def append[B](others: Unions[R, B]): Unions[R, A]
def continueWith[B](continuation: Continuation[R, Vector[Any], B]): Continuation[R, A, B]

create a continuation which will apply the 'map' function if the first effect of this Unions object is interpreted

create a continuation which will apply the 'map' function if the first effect of this Unions object is interpreted

Source:
Unions.scala
def extract[M[_]](implicit m: MemberInOut[M, R]): CollectedUnions[M, R, R]

collect all the M effects and create a continuation for other effects in the same stack

collect all the M effects and create a continuation for other effects in the same stack

Source:
Unions.scala
def into[S](f: UnionInto[R, S]): Unions[S, A]
def project[M[_], U](implicit m: Aux[M, R, U]): CollectedUnions[M, R, U]

collect all the M effects and create a continuation for other effects in a stack containing no more M effects

collect all the M effects and create a continuation for other effects in a stack containing no more M effects

Source:
Unions.scala
def size: Int
def transform[M[_]](nat: FunctionK[M, M])(implicit m: MemberInOut[M, R]): Unions[R, A]
def transformInto[M[_], N[_], U, S](nat: FunctionK[M, N])(implicit m: Aux[M, R, U], n: Aux[N, S, U]): Unions[S, A]
def unions: Vector[Union[R, Any]]

Inherited methods

Inherited from:
Product