Scala Monocle - не удается найти идентификатор метода в E
Определение класса выглядит так:
abstract class EntityWithIdHelper[E <: { def id: Int }] {
def idLens: Lens[E, Int] = GenLens[E](_.id)
...
Как избежать этой проблемы - Cannot find method id in E
? Есть ли обходной путь?
1 ответ
Вы не можете создать Lens
за id
потому что Lens
требуется геттер и сеттер, и здесь у вас есть только геттер.
Также, если вы хотите использовать GenLens[E]
, E
должен быть кейс-класс.