Die flatMap-Methode des Success wird wie folgt implementiert:
def flatMap[U](f: T => Try[U]): Try[U] =
try f(value)
catch {
case NonFatal(e) => Failure(e)
}
Ich verstehe irgendwie, was diese Methode macht, sie hilft uns, eine Menge an Code zum Fangen von Fehlern zu vermeiden.
Aber inwiefern ähnelt sie dem regulären flatMap?
Ein regulärer flatMap nimmt eine Sequenz von Sequenzen und fügt alle Elemente in eine große "flache" Sequenz ein.
Aber die flatMap-Methode von Try flattet eigentlich nichts.
Also, wie versteht man die flatMap-Methode von Try?