Generic

oxygen.meta.K0.Generic
See theGeneric companion object
sealed trait Generic[A] extends Entity[Any, A]

Attributes

Companion
object
Graph
Supertypes
trait Entity[Any, A]
class Object
trait Matchable
class Any
Known subtypes
trait IdentityGeneric[A]
trait ProductGeneric[A]
trait CaseClassGeneric[A]
trait AnyValGeneric[A, B]
trait SumGeneric[A]
trait FlatGeneric[A]
trait EnumGeneric[A]
trait NestedGeneric[A]
Show all

Members list

Type members

Classlikes

class CacheVals

Attributes

Supertypes
class Object
trait Matchable
class Any

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
class MapChildren

Attributes

Supertypes
class Object
trait Matchable
class Any

Types

final type AType = A
final type AnyChild = Child[ChildBound]
type Child[B <: ChildBound] <: Child[ChildBound, B, A] { type SelfType = [A2 <: ChildBound] =>> Child[A2]; }
type ChildBound
type ChildFunction0[O[_ <: ChildBound]] = [b <: ChildBound] => (x$1: Quotes, x$2: Type[b]) ?=> Child[b] => O[b]
type ChildFunction1[I[_], O[_]] = [b <: ChildBound] => (x$1: Quotes, x$2: Type[b]) ?=> (Child[b], I[b]) => O[b]
type ChildFunction2[I1[_], I2[_], O[_]] = [b <: ChildBound] => (x$1: Quotes, x$2: Type[b]) ?=> (Child[b], I1[b], I2[b]) => O[b]
final type SelfBound = Any
override type SelfType[A2] <: Generic[A2]

Value members

Abstract methods

def children: Contiguous[AnyChild]

Concrete methods

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

Attributes

Definition Classes
final override def pos: Position

Attributes

Definition Classes
final def showTypeClassInstances[F[_] : Type](using evidence$1: Type[F], Quotes): Unit

Inherited methods

final def name: String

Attributes

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

Attributes

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

Attributes

Inherited from:
Entity
final def typedAs[TypeName]: 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

Inherited and Abstract fields

val label: String

Attributes

Inherited from:
Entity
val sym: Symbol

Attributes

Inherited from:
Entity
val typeRepr: TypeRepr

Attributes

Inherited from:
Entity

Givens

Inherited givens

given tpe: Type[A]

Attributes

Inherited from:
Entity