object Example:
val rightNow: zio.Task[java.util.Date] =
for
<- zio.ZIO.attempt(new java.util.Date())
now <- zio.ZIO.attempt(println(now))
_ yield now
val inABit: zio.ZIO[Any, Throwable, java.util.Date] =
import zio.durationInt
.delay(1.second) rightNow
object Main extends zio.ZIOAppDefault:
override def run: zio.ZIO[Any, Throwable, java.util.Date] =
.inABit Example
This file is literate Scala, and can be run using Codedown:
$ curl https://earldouglas.com/scala/zio/delay.md |
codedown scala |
scala-cli -q --scala 3.1.3 --dep dev.zio::zio:2.0.0 _.scala
Sun Nov 25 02:47:37 MST 2018