Como usar switch / case (correspondência simples de padrões) no Scala?
Eu me vi preso a uma coisa muito trivial: -]
Eu tenho um enum:
object Eny extends Enumeration {
type Eny = Value
val FOO, BAR, WOOZLE, DOOZLE = Value
}
Em um código, tenho que convertê-lo condicionalmente em um número (a correspondência varianr-number difere no contexto). Eu escrevo:
val en = BAR
val num = en match {
case FOO => 4
case BAR => 5
case WOOZLE => 6
case DOOZLE => 7
}
E isso me dá um erro de compilador "código inacessível" para cada ramificação, mas qualquer que seja o primeiro ("case FOO => 4" nesse caso). O que estou fazendo errado?