Я намагаюся зробити EnumListFieldліфт / запису / Squeryl, аналогічно MappedEnumListв LiftMapper. Тип зберігання повинен бути Long / BIGINT. Я розумію, що якщо визначу:
def classOfPersistentField = classOf[Long]
Тоді Squeryl дізнається, що він повинен створити стовпець BIGINT. І я знаю, що він використовує setFromAny()для встановлення значення, передаючи Лонг. Я не отримую шматок:
Як він буде читати значення поля? Якщо він використовує valueBox, він отримає a Seq[Enum#Value], і він не знатиме, як перетворити це на Long.
Як я можу сказати Squeryl перетворити мій Seq[Enum#Value]на Long, або визначити "геттер", який повертає Long, і який не суперечить "нормальному" геттеру (им)?