Скажем, у вас есть куча методов:
def foo() : Try[Seq[String]]
def bar(s:String) : Try[String]
и вы хотите сделать следующее:
for {
list <- foo
item <- list
result <- bar(item)
} yield result
конечно, это не скомпилируется, поскольку Seq не может использоваться с Try в этом контексте.
У кого-нибудь есть хорошее решение, как написать это чистое, не разбивая его на отдельные два для?
Я столкнулся с этой проблемой синтаксиса в течение трети времени и подумал, что настало время спросить об этом.