SumGeneric

oxygen.meta.K0.SumGeneric
See theSumGeneric companion trait
object SumGeneric

Attributes

Companion
trait
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
SumGeneric.type

Members list

Type members

Classlikes

trait EnumGeneric[A] extends FlatGeneric[A]

Attributes

Supertypes
trait FlatGeneric[A]
trait SumGeneric[A]
trait Generic[A]
trait Entity[A]
class Object
trait Matchable
class Any
Show all
trait FlatGeneric[A] extends SumGeneric[A]

Attributes

Supertypes
trait SumGeneric[A]
trait Generic[A]
trait Entity[A]
class Object
trait Matchable
class Any
Show all
Known subtypes
trait EnumGeneric[A]
trait NestedGeneric[A] extends SumGeneric[A]

Attributes

Supertypes
trait SumGeneric[A]
trait Generic[A]
trait Entity[A]
class Object
trait Matchable
class Any
Show all

How should ordinals be assigned?

How should ordinals be assigned?

enum MyEnum {
 case A
 case C
 case B
}

SourcePosition: A, C, B Lexicographical: A, B, C

Attributes

Supertypes
trait Enum
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

How to handle sealed trait hierarchies.

How to handle sealed trait hierarchies.

sealed trait Root

sealed trait Child1 extends Root
case object A extends Child1
case object B extends Child1

sealed trait Child2 extends Root
case object D extends Child2
case object C extends Child2

Unroll: SumGeneric(Root)(ProductGeneric(A), ProductGeneric(B), ProductGeneric(C), ProductGeneric(D)) Nested: SumGeneric(Root)(SumGeneric(Child1)(ProductGeneric(A), ProductGeneric(B)), SumGeneric(Child2)(ProductGeneric(C), ProductGeneric(D)))

Attributes

Supertypes
trait Enum
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Value members

Concrete methods

def apply[A](using g: SumGeneric[A]): SumGeneric[A]
def of[A : Type](using evidence$1: Type[A], Quotes): SumGeneric[A]
def of[A : Type](config: Config)(using evidence$1: Type[A], Quotes): SumGeneric[A]