CaseSet

object CaseSet
Companion:
class
trait Sum
trait Mirror
class Object
trait Matchable
class Any
CaseSet.type

Type members

Classlikes

sealed trait :+:[A, +T <: CaseSet] extends CaseSet
final case class Cons[A, +T <: Aux[Z], Z](head: Case[Z, A], tail: T) extends A :+: T
final case class Empty[Z]() extends CaseSet
Companion:
object
object Empty
Companion:
class

Types

type Aux[EnumType0] = CaseSet { type EnumType = EnumType0; }

Inherited types

type MirroredElemLabels <: Tuple

The names of the product elements

The names of the product elements

Inherited from:
Mirror
type MirroredLabel <: String

The name of the type

The name of the type

Inherited from:
Mirror

Value members

Concrete methods

def apply[Z](c: Case[Z, _]*): CaseSet
def caseOf[A : Schema, Z >: A](id: String)(unsafeDeconstruct: Z => A)(construct: A => Z)(isCase: Z => Boolean): Cons[A, Empty[Z], Z]

Concrete fields

val :+:: Cons.type