{-# LANGUAGE FlexibleContexts #-}
module Text.RSS.Lens.Rules where
import Language.Haskell.TH.Syntax
import Lens.Micro
import Lens.Micro.TH
rules :: LensRules
rules :: LensRules
rules = ASetter
LensRules
LensRules
(Name -> [Name] -> Name -> [DefName])
(Name -> [Name] -> Name -> [DefName])
-> (Name -> [Name] -> Name -> [DefName]) -> LensRules -> LensRules
forall s t a b. ASetter s t a b -> b -> s -> t
set ASetter
LensRules
LensRules
(Name -> [Name] -> Name -> [DefName])
(Name -> [Name] -> Name -> [DefName])
Lens' LensRules (Name -> [Name] -> Name -> [DefName])
lensField Name -> [Name] -> Name -> [DefName]
forall p p. p -> p -> Name -> [DefName]
f LensRules
lensRules where
f :: p -> p -> Name -> [DefName]
f p
_ p
_ Name
name = [Name -> DefName
TopName (Name -> DefName) -> Name -> DefName
forall a b. (a -> b) -> a -> b
$ String -> Name
mkName (Name -> String
nameBase Name
name String -> String -> String
forall a. Semigroup a => a -> a -> a
<> String
"L")]