Существует пара методов <-:
и :->
, определенных на MAB[M[_,_], A, B]
, которые отображают на левой и правой стороне любого M[A, B]
, пока существует Bifunctor[M]
. Validation
оказывается бифунктором, так что вы можете сделать это:
((_:NumberFormatException).toString) <-: "123".parseInt
Вывод типа Scala обычно происходит слева направо, поэтому на самом деле он короче:
"123".parseInt.<-:(_.toString)
И требует меньше комментариев.