Предположим, у меня есть такая структура данных:
case class B(bx: Int)
case class A(ax: Int, bs: Seq[B])
Я пишу функцию A => Seq[(Int, Option[Int])]
следующим образом:
def foo(a: A): Seq[(Int, Option[Int])] =
if (a.bs.isEmpty) Seq((a.ax, None)) else a.bs.map(b => (a.ax, Some(b.bx)))
Кажется, работает, но я нене нравится ветвление.Как бы вы улучшили foo
?