Можно ли упростить следующую инструкцию match
, используя синтаксис @
?
foo match {
case f: Foo => y(f)
case f if forceY => y(f)
case _ => x
}
, где forceY
- это boolean
.
Я попробовал следующее, но получаю ошибки компиляции, и это выглядит как сомнительный синтаксис для интерпретатора. Возможно, это невозможно выразить?
foo match {
case f @(_: Foo | _ if forceY) => y(f)
case _ => x
}