TypeIdMacros

zio.blocks.typeid.TypeIdMacros
object TypeIdMacros

Attributes

Source
TypeIdMacros.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type

Members list

Type members

Classlikes

object given_ToExpr_Annotation extends ToExpr[Annotation]

Attributes

Source
TypeIdMacros.scala
Supertypes
trait ToExpr[Annotation]
class Object
trait Matchable
class Any
Self type
object given_ToExpr_AnnotationArg extends ToExpr[AnnotationArg]

Attributes

Source
TypeIdMacros.scala
Supertypes
trait ToExpr[AnnotationArg]
class Object
trait Matchable
class Any
Self type
object given_ToExpr_EnumCaseParam extends ToExpr[EnumCaseParam]

Attributes

Source
TypeIdMacros.scala
Supertypes
trait ToExpr[EnumCaseParam]
class Object
trait Matchable
class Any
Self type
object given_ToExpr_Kind extends ToExpr[Kind]

Attributes

Source
TypeIdMacros.scala
Supertypes
trait ToExpr[Kind]
class Object
trait Matchable
class Any
Self type
object given_ToExpr_Member extends ToExpr[Member]

Attributes

Source
TypeIdMacros.scala
Supertypes
trait ToExpr[Member]
class Object
trait Matchable
class Any
Self type
object given_ToExpr_Owner extends ToExpr[Owner]

Attributes

Source
TypeIdMacros.scala
Supertypes
trait ToExpr[Owner]
class Object
trait Matchable
class Any
Self type
object given_ToExpr_Param extends ToExpr[Param]

Attributes

Source
TypeIdMacros.scala
Supertypes
trait ToExpr[Param]
class Object
trait Matchable
class Any
Self type
object given_ToExpr_TermPath extends ToExpr[TermPath]

Attributes

Source
TypeIdMacros.scala
Supertypes
trait ToExpr[TermPath]
class Object
trait Matchable
class Any
Self type
object given_ToExpr_TupleElement extends ToExpr[TupleElement]

Attributes

Source
TypeIdMacros.scala
Supertypes
trait ToExpr[TupleElement]
class Object
trait Matchable
class Any
Self type
object given_ToExpr_TypeBounds extends ToExpr[TypeBounds]

Attributes

Source
TypeIdMacros.scala
Supertypes
trait ToExpr[TypeBounds]
class Object
trait Matchable
class Any
Self type
object given_ToExpr_TypeDefKind extends ToExpr[TypeDefKind]

Attributes

Source
TypeIdMacros.scala
Supertypes
trait ToExpr[TypeDefKind]
class Object
trait Matchable
class Any
Self type
object given_ToExpr_TypeParam extends ToExpr[TypeParam]

Attributes

Source
TypeIdMacros.scala
Supertypes
trait ToExpr[TypeParam]
class Object
trait Matchable
class Any
Self type
object given_ToExpr_Variance extends ToExpr[Variance]

Attributes

Source
TypeIdMacros.scala
Supertypes
trait ToExpr[Variance]
class Object
trait Matchable
class Any
Self type
object ownerSegmentToExpr extends ToExpr[Segment]

Attributes

Source
TypeIdMacros.scala
Supertypes
trait ToExpr[Segment]
class Object
trait Matchable
class Any
Self type
object termPathSegmentToExpr extends ToExpr[Segment]

Attributes

Source
TypeIdMacros.scala
Supertypes
trait ToExpr[Segment]
class Object
trait Matchable
class Any
Self type
object typeReprToExpr extends ToExpr[TypeRepr]

Attributes

Source
TypeIdMacros.scala
Supertypes
trait ToExpr[TypeRepr]
class Object
trait Matchable
class Any
Self type

Value members

Concrete methods

inline def derived[A <: AnyKind]: TypeId[A]

Derives a TypeId for any type or type constructor.

Derives a TypeId for any type or type constructor.

This macro first searches for an existing implicit TypeId instance. If found, it uses that instance. Otherwise, it derives a new one by extracting:

  • The type's simple name
  • The owner path (packages, enclosing objects/classes)
  • Type parameters (for type constructors)
  • Classification (nominal, alias, or opaque)

Attributes

Source
TypeIdMacros.scala
def derivedImpl[A <: AnyKind](using evidence$1: Type[A], Quotes): Expr[TypeId[A]]

Entry point for given TypeId.derived[A] - always derives directly, never searches at top level. Used as implicit/given for automatic derivation. The compiler already searched for implicits and chose derived.

Entry point for given TypeId.derived[A] - always derives directly, never searches at top level. Used as implicit/given for automatic derivation. The compiler already searched for implicits and chose derived.

Attributes

Source
TypeIdMacros.scala
def ofImpl[A <: AnyKind](using evidence$1: Type[A], Quotes): Expr[TypeId[A]]

Attributes

Source
TypeIdMacros.scala