MadeFieldElem

made.MadeFieldElem
See theMadeFieldElem companion object
sealed trait MadeFieldElem extends MadeElem

Element representing a constructor parameter in a product type mirror.

Each entry in Made.Product.Elems tuple is a MadeFieldElem, providing the field's type, label, metadata, and default value.

Attributes

See also
Companion
object
Graph
Supertypes
trait MadeElem
class Object
trait Matchable
class Any
Known subtypes

Members list

Type members

Types

type OuterType

The type that declares this field (the outer/owning type).

The type that declares this field (the outer/owning type).

Attributes

Inherited and Abstract 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

Inherited from:
MadeElem
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

Inherited from:
MadeElem
type Type

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

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

Attributes

Inherited from:
MadeElem

Value members

Abstract methods

def apply(outer: OuterType): Type

Reads this field's value from an instance of the declaring type.

Reads this field's value from an instance of the declaring type.

Attributes

Resolves a default value for this field using the following priority chain (first match wins):

Resolves a default value for this field using the following priority chain (first match wins):

  1. @whenAbsent(value) - explicit default from annotation (highest priority)
  2. @optionalParam - uses Default[T] for option-like types
  3. Constructor default - the Scala-level default parameter value
  4. None - no default available

Attributes

Returns

the default value if available, None otherwise

Givens

Inherited 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

Inherited from:
MadeElem