net.scalax.simple.adt.ApplyFactory.scala Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of simple-adt_sjs1_2.12 Show documentation
Show all versions of simple-adt_sjs1_2.12 Show documentation
Simple, and scalable. Use it to subvert the author's imagination.
The newest version!
package net.scalax.simple.adt
package temp
trait ApplyFactory[N1[_] <: RuntimeNat, N2 <: RuntimeNat] {
type NatModelType = ADTData[N2, ADTPassedFunction.type]
type NatModelTypeFunction[D] = N1[D]
def apply[D](d: D)(implicit v: ADTData[NatModelTypeFunction[D], ADTPassedFunction.type with ADTTypeParameterFetch.type]): NatModelType
def typeOnly[D](implicit
v: ADTData[NatModelTypeFunction[D], ADTPassedFunction.type with ADTTypeParameterFetch.type]
): ADTData[NatModelTypeFunction[D], ADTPassedFunction.type with ADTTypeParameterFetch.type] = v
}