Это работает:
object Gender extends Enumeration {
val male = new Gender
val female = new Gender
class Sneaky extends Val(nextId, null)
}
class Gender extends Gender.Sneaky
> println(Gender.values)
Gender.ValueSet(male, female)
Однако мне не очень приятно от этого. Я думаю, что было бы лучше либо
сделать псевдоним типа (если вы можете в этой области):
object Gender extends Enumeration {
...
}
type Gender = Gender.Value
Или import
тип перед использованием:
object Gender extends Enumeration {
val male, female = Value
type Gender = Value
}
import Gender._
val x: Value = male
(или, если можете, используйте классы падежей).