Die Standardimplementierung makeLenses
erzeugt Linsen für alle Felder eines Datensatzes, die mit Unterstrich beginnen. Ich mag die Idee, aus vielen Gründen eine so unangenehme Benennungskonvention in meine Aufzeichnungen aufnehmen zu müssen, sehr. Ich möchte nur Linsen für alle Felder eines Datensatzes erzeugen und sie benennen, indem ich einfach ein Suffix "L" an die Feldnamen angehängt habe.Generieren von Linsen für eine "Linsen" -Bibliothek mit einem benutzerdefinierten Namensprozessor anstelle des standardmäßigen "Unterstrichs" -basierten
Mit einer fc-Etikett Bibliothek alles, was ich tun musste, um die
mkLabelsWith (++ "L") [''MyRecord]
war zu erreichen, aber die Linse Bibliothek hat eine viel mehr beteiligt Konfiguration mit rulesets und Sachen, die nicht so ist leicht zu verstehen. Ich frage nach einem bestimmten Rezept, um dasselbe zu erreichen.
Great! Vielen Dank! –
Beachten Sie, dass dies jetzt mit lens-4.4 gebrochen ist, das den Template-Haskell-Code geändert hat. –