MadeElem

made.MadeElem
See theMadeElem companion object
sealed trait MadeElem

Base type for elements within a Made.Elems tuple.

Each element in the Made.Elems tuple is a subtype of MadeElem, carrying the element's type, label, and annotation metadata. The concrete subtype depends on the mirror kind:

Attributes

See also
Example
import made.*
case class User(name: String, age: Int)
val mirror = Made.derived[User]
val (nameFld, ageFld) = mirror.elems
// nameFld: MadeFieldElem { type Type = String; type Label = "name" }
// ageFld:  MadeFieldElem { type Type = Int;    type Label = "age"  }
Companion
object
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes

Members list

Type members

Types

type Label <: String

The element's label (field name or subtype name, or the override provided by @name).

The element's label (field name or subtype name, or the override provided by @name).

Attributes

type Metadata <: Tuple

Annotation metadata on this element, represented as a Tuple of Meta @ann entries. When no MetaAnnotation annotations are present, Metadata = EmptyTuple. When annotations are present, Metadata becomes (Meta @Ann1, Meta @Ann2, ...). Query via hasAnnotation and getAnnotation.

Annotation metadata on this element, represented as a Tuple of Meta @ann entries. When no MetaAnnotation annotations are present, Metadata = EmptyTuple. When annotations are present, Metadata becomes (Meta @Ann1, Meta @Ann2, ...). Query via hasAnnotation and getAnnotation.

Attributes

type Type

The element's type (field type or subtype).

The element's type (field type or subtype).

Attributes

Givens

Givens

Path-dependent evidence that this element's Metadata is a tuple of Meta entries.

Path-dependent evidence that this element's Metadata is a tuple of Meta entries.

Attributes