MacroMirror

quotidian.MacroMirror
See theMacroMirror companion object
sealed trait MacroMirror[Q <: Quotes, A]

Attributes

Companion
object
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class Product[Q, A]
class Singleton[Q, A]
class Sum[Q, A]
Self type
MacroMirror[Q, A]

Members list

Value members

Abstract methods

def elemLabels: List[String]
def elemTypeReprs: List[quotes.reflect.TypeRepr]
def label: String
def monoType: quotes.reflect.TypeRepr

Concrete methods

def deriveArray[F[_] : Type](deriveFallback: [t] => () => (Type[t]) ?=> Expr[F[t]])(implicit evidence$1: Type[F], Quotes): Expr[Array[F[Any]]]

Returns an Expr[Array[F[_]]], first trying to summon an instance of F[_] for each element type, and then falling back to deriving an instance of F[_] for each element type.

Returns an Expr[Array[F[_]]], first trying to summon an instance of F[_] for each element type, and then falling back to deriving an instance of F[_] for each element type.

val instances = ${ mirror.deriveArray[Eq]([t] => () => deriveEq[t]) }

Attributes

def elemForSymbol(symbol: quotes.reflect.Symbol): Option[MirrorElem[quotes.type, A, _]]
def elemTypes: List[Type[_ <: AnyKind]]
def elems: List[MirrorElem[quotes.type, A, _]]
def elemsWithTypes: List[(MirrorElem[quotes.type, A, _], Type[_ <: AnyKind])]
def summonAll[F[_] : Type]: List[Expr[F[Any]]]
def summonAllArray[F[_] : Type](implicit evidence$1: Type[F], Quotes): Expr[Array[F[Any]]]
override def toString: String

Returns a string representation of the object.

Returns a string representation of the object.

The default representation is platform dependent.

Attributes

Returns

a string representation of the object.

Definition Classes
Any

Abstract fields

val asType: Type[A]
val quotes: Q

Givens

Givens

given given_Q: Q