Case

oxygen.meta.K0.SumGeneric.Case
final case class Case[B <: A](idx: Int, generic: Gen[B]) extends Deferred[A, B, A]

Attributes

Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Deferred[A, B, A]
trait Child[A, B, A]
trait Entity[A, B]
class Object
trait Matchable
class Any
Show all

Members list

Type members

Types

override type SelfType[A2 <: A] = Case[A2]

Value members

Concrete methods

def caseExtractor: CaseExtractor[B, Expr[B]]
def caseExtractor(bindName: String => String): CaseExtractor[B, Expr[B]]
def caseExtractor(bindName: String): CaseExtractor[B, Expr[B]]
override def parentGeneric: SumGeneric[A]

Attributes

Definition Classes

Inherited methods

final override def annotations(using Quotes): AnnotationsTyped[B]

Attributes

Definition Classes
Inherited from:
Deferred
final def getExpr[F[_]](expressions: Expressions[F, A])(using Quotes): Expr[F[B]]

Attributes

Inherited from:
Child
final def name: String

Attributes

Inherited from:
Entity
final override def pos: Position

Attributes

Definition Classes
Inherited from:
Deferred
def productElementNames: Iterator[String]

Attributes

Inherited from:
Product
def productIterator: Iterator[Any]

Attributes

Inherited from:
Product
override def summonTypeClass[TC[_] : Type](using evidence$1: Type[TC], quotes: Quotes): Expr[TC[B]]

Attributes

Definition Classes
Inherited from:
Child
final def summonTypeClassOrDerive[TC[_] : Type](f: => Type[B] ?=> Expr[TC[B]])(using evidence$1: Type[TC], quotes: Quotes): Expr[TC[B]]

Attributes

Inherited from:
Entity
final def typedAs[TypeName <: A]: SelfType[TypeName]

Meant to be used in the following manner:

Meant to be used in the following manner:

Entity in this entity could be any of Generic, ProductGeneric, SumGeneric, Field, Case

val untyped: Entity[?] = ???

type A
val typed: Entity[A] = untyped.typedAs[A]

Entity in this case could be any of Generic, ProductGeneric, SumGeneric, Field, Case

Attributes

Inherited from:
Entity

Concrete fields

override val childType: String

Inherited fields

final override val label: String

Attributes

Inherited from:
Deferred
final override val sym: Symbol

Attributes

Inherited from:
Deferred
final override val typeRepr: TypeRepr

Attributes

Inherited from:
Deferred

Givens

Inherited givens

given tpe: Type[B]

Attributes

Inherited from:
Entity