SealedTraitDerivation

magnolia1.SealedTraitDerivation

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
trait Derivation[TypeClass]
trait AutoDerivation[TypeClass]

Members list

Type members

Types

type Typeclass[T]

Value members

Abstract methods

inline protected def deriveSubtype[s](m: Of[s]): Typeclass[s]

Concrete methods

inline protected def sealedTraitFromMirror[A](m: SumOf[A]): SealedTrait[Typeclass, A]
transparent inline protected def subtypesFromMirror[A, SubtypeTuple <: Tuple](m: SumOf[A], idx: Int, result: List[Subtype[Typeclass, A, _]]): List[Subtype[Typeclass, A, _]]

This method unrolls recursion by 16, 4, 1 steps to increase maximal size of SubtypeTuple tuple due to compiler limitation of maximal nested inlines.

This method unrolls recursion by 16, 4, 1 steps to increase maximal size of SubtypeTuple tuple due to compiler limitation of maximal nested inlines.

Attributes

inline protected def subtypesFromMirrorStep[A, s](m: SumOf[A], idx: Int): List[Subtype[Typeclass, A, _]]