{-# LANGUAGE TemplateHaskell #-}
module Lens.Family.TH (
makeLenses
, makeLensesBy
, makeLensesFor
, makeTraversals
, mkLenses
, mkLensesBy
, mkLensesFor
) where
import Language.Haskell.TH
import Lens.Family.THCore
makeLenses :: Name -> Q [Dec]
makeLenses :: Name -> Q [Dec]
makeLenses = (String -> Maybe String) -> Name -> Q [Dec]
makeLensesBy String -> Maybe String
defaultNameTransform
{-# DEPRECATED mkLenses "Use makeLenses instead." #-}
mkLenses :: Name -> Q [Dec]
mkLenses :: Name -> Q [Dec]
mkLenses = Name -> Q [Dec]
makeLenses
makeLensesBy :: (String -> Maybe String) -> Name -> Q [Dec]
makeLensesBy :: (String -> Maybe String) -> Name -> Q [Dec]
makeLensesBy = (Name -> LensTypeInfo -> ConstructorFieldInfo -> Q [Dec])
-> (String -> Maybe String) -> Name -> Q [Dec]
deriveLenses Name -> LensTypeInfo -> ConstructorFieldInfo -> Q [Dec]
deriveLensSig
{-# DEPRECATED mkLensesBy "Use makeLensesBy instead." #-}
mkLensesBy :: (String -> Maybe String) -> Name -> Q [Dec]
mkLensesBy :: (String -> Maybe String) -> Name -> Q [Dec]
mkLensesBy = (String -> Maybe String) -> Name -> Q [Dec]
makeLensesBy
makeLensesFor :: [(String, String)] -> Name -> Q [Dec]
makeLensesFor :: [(String, String)] -> Name -> Q [Dec]
makeLensesFor [(String, String)]
fields = (String -> Maybe String) -> Name -> Q [Dec]
makeLensesBy (String -> [(String, String)] -> Maybe String
forall a b. Eq a => a -> [(a, b)] -> Maybe b
`lookup` [(String, String)]
fields)
{-# DEPRECATED mkLensesFor "Use makeLensesFor instead." #-}
mkLensesFor :: [(String, String)] -> Name -> Q [Dec]
mkLensesFor :: [(String, String)] -> Name -> Q [Dec]
mkLensesFor = [(String, String)] -> Name -> Q [Dec]
makeLensesFor
deriveLensSig :: Name -> LensTypeInfo -> ConstructorFieldInfo -> Q [Dec]
deriveLensSig :: Name -> LensTypeInfo -> ConstructorFieldInfo -> Q [Dec]
deriveLensSig Name
_ LensTypeInfo
_ ConstructorFieldInfo
_ = [Dec] -> Q [Dec]
forall a. a -> Q a
forall (m :: * -> *) a. Monad m => a -> m a
return []