module Distribution.Types.Library.Lens ( Library , module Distribution.Types.Library.Lens ) where import Distribution.Compat.Lens import Distribution.Compat.Prelude import Prelude () import Distribution.ModuleName (ModuleName) import Distribution.Types.BuildInfo (BuildInfo) import Distribution.Types.Library (Library) import Distribution.Types.LibraryName (LibraryName) import Distribution.Types.LibraryVisibility (LibraryVisibility) import Distribution.Types.ModuleReexport (ModuleReexport) import qualified Distribution.Types.Library as T libName :: Lens' Library LibraryName libName :: Lens' Library LibraryName libName LibraryName -> f LibraryName f Library s = (LibraryName -> Library) -> f LibraryName -> f Library forall a b. (a -> b) -> f a -> f b forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b fmap (\LibraryName x -> Library s{T.libName = x}) (LibraryName -> f LibraryName f (Library -> LibraryName T.libName Library s)) {-# INLINE libName #-} exposedModules :: Lens' Library [ModuleName] exposedModules :: Lens' Library [ModuleName] exposedModules [ModuleName] -> f [ModuleName] f Library s = ([ModuleName] -> Library) -> f [ModuleName] -> f Library forall a b. (a -> b) -> f a -> f b forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b fmap (\[ModuleName] x -> Library s{T.exposedModules = x}) ([ModuleName] -> f [ModuleName] f (Library -> [ModuleName] T.exposedModules Library s)) {-# INLINE exposedModules #-} reexportedModules :: Lens' Library [ModuleReexport] reexportedModules :: Lens' Library [ModuleReexport] reexportedModules [ModuleReexport] -> f [ModuleReexport] f Library s = ([ModuleReexport] -> Library) -> f [ModuleReexport] -> f Library forall a b. (a -> b) -> f a -> f b forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b fmap (\[ModuleReexport] x -> Library s{T.reexportedModules = x}) ([ModuleReexport] -> f [ModuleReexport] f (Library -> [ModuleReexport] T.reexportedModules Library s)) {-# INLINE reexportedModules #-} signatures :: Lens' Library [ModuleName] signatures :: Lens' Library [ModuleName] signatures [ModuleName] -> f [ModuleName] f Library s = ([ModuleName] -> Library) -> f [ModuleName] -> f Library forall a b. (a -> b) -> f a -> f b forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b fmap (\[ModuleName] x -> Library s{T.signatures = x}) ([ModuleName] -> f [ModuleName] f (Library -> [ModuleName] T.signatures Library s)) {-# INLINE signatures #-} libExposed :: Lens' Library Bool libExposed :: Lens' Library Bool libExposed Bool -> f Bool f Library s = (Bool -> Library) -> f Bool -> f Library forall a b. (a -> b) -> f a -> f b forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b fmap (\Bool x -> Library s{T.libExposed = x}) (Bool -> f Bool f (Library -> Bool T.libExposed Library s)) {-# INLINE libExposed #-} libVisibility :: Lens' Library LibraryVisibility libVisibility :: Lens' Library LibraryVisibility libVisibility LibraryVisibility -> f LibraryVisibility f Library s = (LibraryVisibility -> Library) -> f LibraryVisibility -> f Library forall a b. (a -> b) -> f a -> f b forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b fmap (\LibraryVisibility x -> Library s{T.libVisibility = x}) (LibraryVisibility -> f LibraryVisibility f (Library -> LibraryVisibility T.libVisibility Library s)) {-# INLINE libVisibility #-} libBuildInfo :: Lens' Library BuildInfo libBuildInfo :: Lens' Library BuildInfo libBuildInfo BuildInfo -> f BuildInfo f Library s = (BuildInfo -> Library) -> f BuildInfo -> f Library forall a b. (a -> b) -> f a -> f b forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b fmap (\BuildInfo x -> Library s{T.libBuildInfo = x}) (BuildInfo -> f BuildInfo f (Library -> BuildInfo T.libBuildInfo Library s)) {-# INLINE libBuildInfo #-}