Предположим, что у меня есть перечисление:
object WeekDay extends Enumeration {
type WeekDay = Value
val Mon, Tue, Wed, Thu, Fri, Sat, Sun = Value
}
Я хотел бы иметь возможность конвертировать String в значение WeekDay, и это нормально:
scala> WeekDay.withName("Tue")
res10: WeekDay.Value = Tue
Но если я передаю некоторое "неизвестное" значение, я получаю исключение:
scala> WeekDay.withName("Ou")
java.util.NoSuchElementException: None.get
at scala.None$.get(Option.scala:322)
at scala.None$.get(Option.scala:320)
at scala.Enumeration.withName(Enumeration.scala:124)
... 32 elided
Есть ли элегантный способ безопасного преобразования String в значение Enumeration?