sam
03/20/2019, 9:27 PMsam
03/20/2019, 9:28 PMsam
03/20/2019, 9:28 PMraulraja
03/20/2019, 9:30 PMsam
03/20/2019, 9:32 PMsam
03/20/2019, 9:32 PMsam
03/20/2019, 9:33 PMsam
03/20/2019, 9:33 PMraulraja
03/20/2019, 9:33 PMA
sam
03/20/2019, 9:33 PMsam
03/20/2019, 9:33 PMsam
03/20/2019, 9:34 PMclass ForGen private constructor() { companion object }
typealias GenOf<A> = Kind<ForGen, A>
fun <A> GenOf<A>.fix() = this as Gen<A>
sam
03/20/2019, 9:40 PMsam
03/20/2019, 9:40 PM@extension
interface GenFx : Fx<ForGen> {
override fun monad(): Monad<ForGen> = Gen.monad()
}
raulraja
03/20/2019, 9:44 PMfun Gen.Companion.fx(): Fx<ForGen> = object : GenFx { }
raulraja
03/20/2019, 9:45 PM@extension
would have generated otherwise in the same packageraulraja
03/20/2019, 10:06 PMraulraja
03/20/2019, 10:07 PMJannis
03/20/2019, 10:08 PMraulraja
03/20/2019, 10:09 PMraulraja
03/20/2019, 10:09 PMJannis
03/20/2019, 10:11 PMraulraja
03/20/2019, 10:13 PMJannis
03/20/2019, 10:16 PMsam
03/20/2019, 10:35 PMsam
03/20/2019, 10:35 PMGen
to be used by JS as well, and @extension is on some of the gen stuffraulraja
03/20/2019, 10:37 PMraulraja
03/20/2019, 10:37 PMraulraja
03/20/2019, 10:38 PMraulraja
03/20/2019, 10:38 PM