HKDProductExtraTypes

perspective.derivation.HKDProductExtraTypes
See theHKDProductExtraTypes companion trait

Attributes

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

Members list

Value members

Concrete methods

def derivedImpl[A, ElemTypes <: Tuple, Labels <: Tuple](namesArr: IArray[String], namesSet: Set[String])(using m: ProductOf[A] { type MirroredElemTypes = ElemTypes; type MirroredElemLabels = Labels; }, typeLength: TypeLength[m.MirroredElemTypes]): HKDProductExtraTypes[A] { type TupleRep = ElemTypes; type Gen = [F[_]] =>> ProductK[F, this.TupleRep]; type Index = [_] =>> Finite[typeLength.Length]; type Names = TupleUnionLub[m.MirroredElemLabels, String, Nothing]; type ElemTop = TupleUnion[this.TupleRep, Nothing]; type FieldOf = [Name <: this.Names] =>> FieldOfImpl[Name, this.ElemTop, this.TupleRep, m.MirroredElemLabels]; }

Attributes

Source
hkdTypes.scala

Givens

Givens

transparent inline given derived[A](using m: ProductOf[A], typeLength: TypeLength[m.MirroredElemTypes]): HKDProductExtraTypes[A]

Attributes

Source
hkdTypes.scala