Je suis en écriture scala un sérialiseur qui enregistre un objet (ou un modèle) dans la base de données (pour le moteur de l'application), et j'ai besoin de traiter certains champs comme des cas spéciaux. Par exemple, si le champ est de type Array [Byte], je l'enregistre en tant que blob. Et j'ai besoin de traiter les Énumérations comme des cas spéciaux aussi, mais je ne peux pas savoir comment savoir si un type est une énumération.Scala: Comment savoir si une classe est une énumération; isInstanceOf [Enumeration] ne fonctionne pas
Par exemple:
object UserType extends Enumeration {
val Anonym, Registered, Admin, Super = Value
}
var value = UserType.Admin
value.isInstanceOf[Enumeration] // this returns false
Ni je peux faire value.isInstanceOf[Enumeration.Value]
puisque la valeur est privée ... de toute façon je pense que ce serait faux revenir aussi.
Une idée?
Merci!