Oℕ
Size: a a a
Oℕ
Oℕ
NG
D
D
ᛒ
K
io
после retry
val io: IO[Throwable, Unit] = ???превращается в
io.retry(Schedule.duration(10.seconds))
IO[Any, Unit]
и он теперь не знает, что с моим Any
делать, а всё из-за товарищаdef duration(duration: Duration): Schedule[Clock, Any, Duration] =DIstage прав?
elapsed.untilOutput(_ >= duration)
zio.Schedule#duration
козёл? io: IO[Throwable, Unit]
и Скала пишет ошибку что там Any,
то там и правда Any
и надо делать refineOrDie
или паттерн-матчить/заворачивать в BIOBadBranch
в catchAll
или еще как-то избавлятся от не-Throwable ошибкиSB
SB
trait Read[A] {
def read(s: String): Option[A]
}
object Read {
def apply[A](implicit A: Read[A]): Read[A] = A
implicit val stringRead: Read[String] =
new Read[String] { def read(s: String): Option[String] = Some(s) }
implicit val intRead: Read[Int] =
new Read[Int] {
def read(s: String): Option[Int] =
if (s.matches("-?[0-9]+")) Some(s.toInt)
else None
}
}
λ
λ
SB
String -> Maybe[a]
- анонимной функции в общем случае. они эквиваленты, конечно, но все же - еще меньше букаф можно? или так не принято и повсюду трейты?PM
String -> Maybe[a]
- анонимной функции в общем случае. они эквиваленты, конечно, но все же - еще меньше букаф можно? или так не принято и повсюду трейты?NV
String -> Maybe[a]
- анонимной функции в общем случае. они эквиваленты, конечно, но все же - еще меньше букаф можно? или так не принято и повсюду трейты?λ
String -> Maybe[a]
- анонимной функции в общем случае. они эквиваленты, конечно, но все же - еще меньше букаф можно? или так не принято и повсюду трейты?SB
Stirng -> Maybe a
и вот и спрашиваю, можно ли на Скале как-то спуститься на уровень функции здесь без потери в компактности?SB
λ
SB