Haskell - iso по новому типу - PullRequest
       48

Haskell - iso по новому типу

5 голосов
/ 07 февраля 2020

Если у меня есть newtype

newtype Foo = Foo Int

, есть ли автоматический c способ получить Iso' Foo Int?

Я видел, что мог бы использовать makeLenses ''Foo, но Я не знаю, как называется сгенерированный iso.

Ответы [ 2 ]

5 голосов
/ 07 февраля 2020
0 голосов
/ 12 февраля 2020

Если вы назовете метод доступа: newtype Foo = Foo {_unFoo :: Int}, а затем выполните makeLenses '' Foo, он сгенерирует нужный Iso под именем "unFoo"

Обратите внимание, что метод доступа должен начинаться с подчеркивания для него генерировать изо.

...