13 lines
455 B
Haskell
13 lines
455 B
Haskell
-- https://dev.to/piq9117/haskell-generating-lenses-for-third-party-libraries-1oik
|
|
module ThirdPartyLens where
|
|
import Language.Haskell.TH
|
|
import Control.Lens.Operators
|
|
import Control.Lens.TH
|
|
|
|
mkCustomLenses :: Name -> DecsQ
|
|
mkCustomLenses = makeLensesWith
|
|
$ lensRules
|
|
& lensField
|
|
.~ (\_ _ name -> [TopName ( mkName $ nameBase name ++ "L" )]) -- you can append whatever suits your code base here, I chose to append "L"
|
|
|