Unions

case class Unions[R, A](first: Union[R, A], rest: List[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

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: Arrs[R, List[Any], B]): Arrs[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

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

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

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

Inherited methods

def productElementNames: Iterator[String]
Inherited from:
Product
def productIterator: Iterator[Any]
Inherited from:
Product