TypeId

zio.blocks.typeid.TypeId
See theTypeId companion trait

Attributes

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

Members list

Type members

Classlikes

object Alias

Attributes

Source
TypeId.scala
Supertypes
class Object
trait Matchable
class Any
Self type
Alias.type
object Enum

Attributes

Source
TypeId.scala
Supertypes
class Object
trait Matchable
class Any
Self type
Enum.type
object Nominal

Attributes

Source
TypeId.scala
Supertypes
class Object
trait Matchable
class Any
Self type
Nominal.type
object Opaque

Attributes

Source
TypeId.scala
Supertypes
class Object
trait Matchable
class Any
Self type
Opaque.type
object Sealed

Attributes

Source
TypeId.scala
Supertypes
class Object
trait Matchable
class Any
Self type
Sealed.type

Types

Attributes

Source
TypeId.scala
type Unknown <: AnyKind

Attributes

Source
TypeId.scala

Value members

Concrete methods

def alias[A <: AnyKind](name: String, owner: Owner, typeParams: List[TypeParam] = ..., aliased: TypeRepr, typeArgs: List[TypeRepr] = ..., annotations: List[Annotation] = ...): TypeId[A]

Attributes

Source
TypeId.scala
def applied[A <: AnyKind](typeConstructor: TypeId[_ <: AnyKind], args: TypeRepr*): TypeId[A]

Creates an applied type from a type constructor and type arguments. For example: applied(TypeId.list, TypeRepr.Ref(TypeId.int)) creates List[Int]

Creates an applied type from a type constructor and type arguments. For example: applied(TypeId.list, TypeRepr.Ref(TypeId.int)) creates List[Int]

Attributes

Source
TypeId.scala
def nominal[A <: AnyKind](name: String, owner: Owner, kind: TypeDefKind): TypeId[A]

Attributes

Source
TypeId.scala
def nominal[A <: AnyKind](name: String, owner: Owner, typeParams: List[TypeParam] = ..., typeArgs: List[TypeRepr] = ..., defKind: TypeDefKind = ..., selfType: Option[TypeRepr] = ..., annotations: List[Annotation] = ...): TypeId[A]

Attributes

Source
TypeId.scala
def normalize(id: TypeId[_ <: AnyKind]): TypeId[_ <: AnyKind]

Attributes

Source
TypeId.scala
inline def of[A <: AnyKind]: TypeId[A]

Attributes

Source
TypeId.scala
def opaque[A <: AnyKind](name: String, owner: Owner, typeParams: List[TypeParam] = ..., representation: TypeRepr, typeArgs: List[TypeRepr] = ..., publicBounds: TypeBounds = ..., annotations: List[Annotation] = ...): TypeId[A]

Attributes

Source
TypeId.scala
def structuralHash(id: TypeId[_ <: AnyKind]): Int

Attributes

Source
TypeId.scala
def structurallyEqual(a: TypeId[_ <: AnyKind], b: TypeId[_ <: AnyKind]): Boolean

Attributes

Source
TypeId.scala
def unapplied(id: TypeId[_ <: AnyKind]): TypeId[_ <: AnyKind]

Returns the type constructor by stripping all type arguments.

Returns the type constructor by stripping all type arguments.

For example, TypeId.unapplied(TypeId.of[List[Int]]) returns a TypeId equivalent to TypeId.of[List] (the unapplied type constructor).

This is useful for TypeRegistry lookups where Seq/Map bindings are stored by their type constructor rather than applied types.

Value parameters

id

The TypeId to unapply

Attributes

Returns

A TypeId with empty typeArgs representing the type constructor

Source
TypeId.scala

Givens

Givens

given iarray: TypeId[IArray]

Attributes

Source
TypeId.scala

Inherited givens

inline given derived: [A <: AnyKind] => TypeId[A]

Derives a TypeId for any type or type constructor.

Derives a TypeId for any type or type constructor.

This given has lower priority than predefined instances in TypeIdInstances, so for types like Int, String, etc., the predefined instances will be used instead of macro derivation.

Attributes

Inherited from:
TypeIdLowPriority
Source
TypeIdLowPriority.scala

Implicits

Inherited implicits

implicit val array: TypeId[Array[_]]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val arraySeq: TypeId[ArraySeq[_]]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val bigDecimal: TypeId[BigDecimal]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val bigInt: TypeId[BigInt]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val boolean: TypeId[Boolean]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val byte: TypeId[Byte]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val char: TypeId[Char]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val chunk: TypeId[Chunk[_]]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val chunkMap: TypeId[ChunkMap[_, _]]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val comparable: TypeId[Comparable[_]]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val currency: TypeId[Currency]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val dayOfWeek: TypeId[DayOfWeek]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val double: TypeId[Double]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val duration: TypeId[Duration]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val either: TypeId[Either[_, _]]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val float: TypeId[Float]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val indexedSeq: TypeId[IndexedSeq[_]]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val instant: TypeId[Instant]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val int: TypeId[Int]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val list: TypeId[List[_]]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val localDate: TypeId[LocalDate]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val localTime: TypeId[LocalTime]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val long: TypeId[Long]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val map: TypeId[Map[_, _]]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val month: TypeId[Month]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val monthDay: TypeId[MonthDay]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val none: TypeId[None.type]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val offsetTime: TypeId[OffsetTime]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val option: TypeId[Option[_]]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val period: TypeId[Period]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val seq: TypeId[Seq[_]]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val set: TypeId[Set[_]]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val short: TypeId[Short]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val some: TypeId[Some[_]]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val string: TypeId[String]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val unit: TypeId[Unit]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val uuid: TypeId[UUID]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val vector: TypeId[Vector[_]]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val year: TypeId[Year]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val yearMonth: TypeId[YearMonth]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val zoneId: TypeId[ZoneId]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala
implicit val zoneOffset: TypeId[ZoneOffset]

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala

Attributes

Inherited from:
TypeIdInstances
Source
TypeIdInstances.scala