    module Distribution.Types.InstalledPackageInfo.Lens
      ( InstalledPackageInfo
      , module Distribution.Types.InstalledPackageInfo.Lens
      ) where

    import Distribution.Compat.Lens
    import Distribution.Compat.Prelude
    import Prelude ()

    import Distribution.Backpack (OpenModule)
    import Distribution.License (License)
    import Distribution.ModuleName (ModuleName)
    import Distribution.Package (AbiHash, ComponentId, PackageIdentifier, UnitId)
    import Distribution.Types.InstalledPackageInfo (AbiDependency, ExposedModule, InstalledPackageInfo)
    import Distribution.Types.LibraryName (LibraryName)
    import Distribution.Types.LibraryVisibility (LibraryVisibility)
    import Distribution.Utils.ShortText (ShortText)

    import qualified Distribution.SPDX as SPDX
    import qualified Distribution.Types.InstalledPackageInfo as T

    sourcePackageId :: Lens' InstalledPackageInfo PackageIdentifier
    sourcePackageId :: Lens' InstalledPackageInfo PackageIdentifier
    sourcePackageId PackageIdentifier -> f PackageIdentifier
    f InstalledPackageInfo
    s = (PackageIdentifier -> InstalledPackageInfo)
    -> f PackageIdentifier -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\PackageIdentifier
    x -> InstalledPackageInfo
    s{T.sourcePackageId = x}) (PackageIdentifier -> f PackageIdentifier
    f (InstalledPackageInfo -> PackageIdentifier
    T.sourcePackageId InstalledPackageInfo
    s))
    {-# INLINE sourcePackageId #-}

    installedUnitId :: Lens' InstalledPackageInfo UnitId
    installedUnitId :: Lens' InstalledPackageInfo UnitId
    installedUnitId UnitId -> f UnitId
    f InstalledPackageInfo
    s = (UnitId -> InstalledPackageInfo)
    -> f UnitId -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\UnitId
    x -> InstalledPackageInfo
    s{T.installedUnitId = x}) (UnitId -> f UnitId
    f (InstalledPackageInfo -> UnitId
    T.installedUnitId InstalledPackageInfo
    s))
    {-# INLINE installedUnitId #-}

    installedComponentId_ :: Lens' InstalledPackageInfo ComponentId
    installedComponentId_ :: Lens' InstalledPackageInfo ComponentId
    installedComponentId_ ComponentId -> f ComponentId
    f InstalledPackageInfo
    s = (ComponentId -> InstalledPackageInfo)
    -> f ComponentId -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\ComponentId
    x -> InstalledPackageInfo
    s{T.installedComponentId_ = x}) (ComponentId -> f ComponentId
    f (InstalledPackageInfo -> ComponentId
    T.installedComponentId_ InstalledPackageInfo
    s))
    {-# INLINE installedComponentId_ #-}

    instantiatedWith :: Lens' InstalledPackageInfo [(ModuleName, OpenModule)]
    instantiatedWith :: Lens' InstalledPackageInfo [(ModuleName, OpenModule)]
    instantiatedWith [(ModuleName, OpenModule)] -> f [(ModuleName, OpenModule)]
    f InstalledPackageInfo
    s = ([(ModuleName, OpenModule)] -> InstalledPackageInfo)
    -> f [(ModuleName, OpenModule)] -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\[(ModuleName, OpenModule)]
    x -> InstalledPackageInfo
    s{T.instantiatedWith = x}) ([(ModuleName, OpenModule)] -> f [(ModuleName, OpenModule)]
    f (InstalledPackageInfo -> [(ModuleName, OpenModule)]
    T.instantiatedWith InstalledPackageInfo
    s))
    {-# INLINE instantiatedWith #-}

    sourceLibName :: Lens' InstalledPackageInfo LibraryName
    sourceLibName :: Lens' InstalledPackageInfo LibraryName
    sourceLibName LibraryName -> f LibraryName
    f InstalledPackageInfo
    s = (LibraryName -> InstalledPackageInfo)
    -> f LibraryName -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\LibraryName
    x -> InstalledPackageInfo
    s{T.sourceLibName = x}) (LibraryName -> f LibraryName
    f (InstalledPackageInfo -> LibraryName
    T.sourceLibName InstalledPackageInfo
    s))
    {-# INLINE sourceLibName #-}

    compatPackageKey :: Lens' InstalledPackageInfo String
    compatPackageKey :: Lens' InstalledPackageInfo String
    compatPackageKey String -> f String
    f InstalledPackageInfo
    s = (String -> InstalledPackageInfo)
    -> f String -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\String
    x -> InstalledPackageInfo
    s{T.compatPackageKey = x}) (String -> f String
    f (InstalledPackageInfo -> String
    T.compatPackageKey InstalledPackageInfo
    s))
    {-# INLINE compatPackageKey #-}

    license :: Lens' InstalledPackageInfo (Either SPDX.License License)
    license :: Lens' InstalledPackageInfo (Either License License)
    license Either License License -> f (Either License License)
    f InstalledPackageInfo
    s = (Either License License -> InstalledPackageInfo)
    -> f (Either License License) -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\Either License License
    x -> InstalledPackageInfo
    s{T.license = x}) (Either License License -> f (Either License License)
    f (InstalledPackageInfo -> Either License License
    T.license InstalledPackageInfo
    s))
    {-# INLINE license #-}

    copyright :: Lens' InstalledPackageInfo ShortText
    copyright :: Lens' InstalledPackageInfo ShortText
    copyright ShortText -> f ShortText
    f InstalledPackageInfo
    s = (ShortText -> InstalledPackageInfo)
    -> f ShortText -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\ShortText
    x -> InstalledPackageInfo
    s{T.copyright = x}) (ShortText -> f ShortText
    f (InstalledPackageInfo -> ShortText
    T.copyright InstalledPackageInfo
    s))
    {-# INLINE copyright #-}

    maintainer :: Lens' InstalledPackageInfo ShortText
    maintainer :: Lens' InstalledPackageInfo ShortText
    maintainer ShortText -> f ShortText
    f InstalledPackageInfo
    s = (ShortText -> InstalledPackageInfo)
    -> f ShortText -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\ShortText
    x -> InstalledPackageInfo
    s{T.maintainer = x}) (ShortText -> f ShortText
    f (InstalledPackageInfo -> ShortText
    T.maintainer InstalledPackageInfo
    s))
    {-# INLINE maintainer #-}

    author :: Lens' InstalledPackageInfo ShortText
    author :: Lens' InstalledPackageInfo ShortText
    author ShortText -> f ShortText
    f InstalledPackageInfo
    s = (ShortText -> InstalledPackageInfo)
    -> f ShortText -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\ShortText
    x -> InstalledPackageInfo
    s{T.author = x}) (ShortText -> f ShortText
    f (InstalledPackageInfo -> ShortText
    T.author InstalledPackageInfo
    s))
    {-# INLINE author #-}

    stability :: Lens' InstalledPackageInfo ShortText
    stability :: Lens' InstalledPackageInfo ShortText
    stability ShortText -> f ShortText
    f InstalledPackageInfo
    s = (ShortText -> InstalledPackageInfo)
    -> f ShortText -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\ShortText
    x -> InstalledPackageInfo
    s{T.stability = x}) (ShortText -> f ShortText
    f (InstalledPackageInfo -> ShortText
    T.stability InstalledPackageInfo
    s))
    {-# INLINE stability #-}

    homepage :: Lens' InstalledPackageInfo ShortText
    homepage :: Lens' InstalledPackageInfo ShortText
    homepage ShortText -> f ShortText
    f InstalledPackageInfo
    s = (ShortText -> InstalledPackageInfo)
    -> f ShortText -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\ShortText
    x -> InstalledPackageInfo
    s{T.homepage = x}) (ShortText -> f ShortText
    f (InstalledPackageInfo -> ShortText
    T.homepage InstalledPackageInfo
    s))
    {-# INLINE homepage #-}

    pkgUrl :: Lens' InstalledPackageInfo ShortText
    pkgUrl :: Lens' InstalledPackageInfo ShortText
    pkgUrl ShortText -> f ShortText
    f InstalledPackageInfo
    s = (ShortText -> InstalledPackageInfo)
    -> f ShortText -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\ShortText
    x -> InstalledPackageInfo
    s{T.pkgUrl = x}) (ShortText -> f ShortText
    f (InstalledPackageInfo -> ShortText
    T.pkgUrl InstalledPackageInfo
    s))
    {-# INLINE pkgUrl #-}

    synopsis :: Lens' InstalledPackageInfo ShortText
    synopsis :: Lens' InstalledPackageInfo ShortText
    synopsis ShortText -> f ShortText
    f InstalledPackageInfo
    s = (ShortText -> InstalledPackageInfo)
    -> f ShortText -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\ShortText
    x -> InstalledPackageInfo
    s{T.synopsis = x}) (ShortText -> f ShortText
    f (InstalledPackageInfo -> ShortText
    T.synopsis InstalledPackageInfo
    s))
    {-# INLINE synopsis #-}

    description :: Lens' InstalledPackageInfo ShortText
    description :: Lens' InstalledPackageInfo ShortText
    description ShortText -> f ShortText
    f InstalledPackageInfo
    s = (ShortText -> InstalledPackageInfo)
    -> f ShortText -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\ShortText
    x -> InstalledPackageInfo
    s{T.description = x}) (ShortText -> f ShortText
    f (InstalledPackageInfo -> ShortText
    T.description InstalledPackageInfo
    s))
    {-# INLINE description #-}

    category :: Lens' InstalledPackageInfo ShortText
    category :: Lens' InstalledPackageInfo ShortText
    category ShortText -> f ShortText
    f InstalledPackageInfo
    s = (ShortText -> InstalledPackageInfo)
    -> f ShortText -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\ShortText
    x -> InstalledPackageInfo
    s{T.category = x}) (ShortText -> f ShortText
    f (InstalledPackageInfo -> ShortText
    T.category InstalledPackageInfo
    s))
    {-# INLINE category #-}

    abiHash :: Lens' InstalledPackageInfo AbiHash
    abiHash :: Lens' InstalledPackageInfo AbiHash
    abiHash AbiHash -> f AbiHash
    f InstalledPackageInfo
    s = (AbiHash -> InstalledPackageInfo)
    -> f AbiHash -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\AbiHash
    x -> InstalledPackageInfo
    s{T.abiHash = x}) (AbiHash -> f AbiHash
    f (InstalledPackageInfo -> AbiHash
    T.abiHash InstalledPackageInfo
    s))
    {-# INLINE abiHash #-}

    indefinite :: Lens' InstalledPackageInfo Bool
    indefinite :: Lens' InstalledPackageInfo Bool
    indefinite Bool -> f Bool
    f InstalledPackageInfo
    s = (Bool -> InstalledPackageInfo) -> f Bool -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\Bool
    x -> InstalledPackageInfo
    s{T.indefinite = x}) (Bool -> f Bool
    f (InstalledPackageInfo -> Bool
    T.indefinite InstalledPackageInfo
    s))
    {-# INLINE indefinite #-}

    exposed :: Lens' InstalledPackageInfo Bool
    exposed :: Lens' InstalledPackageInfo Bool
    exposed Bool -> f Bool
    f InstalledPackageInfo
    s = (Bool -> InstalledPackageInfo) -> f Bool -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\Bool
    x -> InstalledPackageInfo
    s{T.exposed = x}) (Bool -> f Bool
    f (InstalledPackageInfo -> Bool
    T.exposed InstalledPackageInfo
    s))
    {-# INLINE exposed #-}

    exposedModules :: Lens' InstalledPackageInfo [ExposedModule]
    exposedModules :: Lens' InstalledPackageInfo [ExposedModule]
    exposedModules [ExposedModule] -> f [ExposedModule]
    f InstalledPackageInfo
    s = ([ExposedModule] -> InstalledPackageInfo)
    -> f [ExposedModule] -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\[ExposedModule]
    x -> InstalledPackageInfo
    s{T.exposedModules = x}) ([ExposedModule] -> f [ExposedModule]
    f (InstalledPackageInfo -> [ExposedModule]
    T.exposedModules InstalledPackageInfo
    s))
    {-# INLINE exposedModules #-}

    hiddenModules :: Lens' InstalledPackageInfo [ModuleName]
    hiddenModules :: Lens' InstalledPackageInfo [ModuleName]
    hiddenModules [ModuleName] -> f [ModuleName]
    f InstalledPackageInfo
    s = ([ModuleName] -> InstalledPackageInfo)
    -> f [ModuleName] -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\[ModuleName]
    x -> InstalledPackageInfo
    s{T.hiddenModules = x}) ([ModuleName] -> f [ModuleName]
    f (InstalledPackageInfo -> [ModuleName]
    T.hiddenModules InstalledPackageInfo
    s))
    {-# INLINE hiddenModules #-}

    trusted :: Lens' InstalledPackageInfo Bool
    trusted :: Lens' InstalledPackageInfo Bool
    trusted Bool -> f Bool
    f InstalledPackageInfo
    s = (Bool -> InstalledPackageInfo) -> f Bool -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\Bool
    x -> InstalledPackageInfo
    s{T.trusted = x}) (Bool -> f Bool
    f (InstalledPackageInfo -> Bool
    T.trusted InstalledPackageInfo
    s))
    {-# INLINE trusted #-}

    importDirs :: Lens' InstalledPackageInfo [FilePath]
    importDirs :: Lens' InstalledPackageInfo [String]
    importDirs [String] -> f [String]
    f InstalledPackageInfo
    s = ([String] -> InstalledPackageInfo)
    -> f [String] -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\[String]
    x -> InstalledPackageInfo
    s{T.importDirs = x}) ([String] -> f [String]
    f (InstalledPackageInfo -> [String]
    T.importDirs InstalledPackageInfo
    s))
    {-# INLINE importDirs #-}

    libraryDirs :: Lens' InstalledPackageInfo [FilePath]
    libraryDirs :: Lens' InstalledPackageInfo [String]
    libraryDirs [String] -> f [String]
    f InstalledPackageInfo
    s = ([String] -> InstalledPackageInfo)
    -> f [String] -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\[String]
    x -> InstalledPackageInfo
    s{T.libraryDirs = x}) ([String] -> f [String]
    f (InstalledPackageInfo -> [String]
    T.libraryDirs InstalledPackageInfo
    s))
    {-# INLINE libraryDirs #-}

    libraryDirsStatic :: Lens' InstalledPackageInfo [FilePath]
    libraryDirsStatic :: Lens' InstalledPackageInfo [String]
    libraryDirsStatic [String] -> f [String]
    f InstalledPackageInfo
    s = ([String] -> InstalledPackageInfo)
    -> f [String] -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\[String]
    x -> InstalledPackageInfo
    s{T.libraryDirsStatic = x}) ([String] -> f [String]
    f (InstalledPackageInfo -> [String]
    T.libraryDirsStatic InstalledPackageInfo
    s))
    {-# INLINE libraryDirsStatic #-}

    libraryDynDirs :: Lens' InstalledPackageInfo [FilePath]
    libraryDynDirs :: Lens' InstalledPackageInfo [String]
    libraryDynDirs [String] -> f [String]
    f InstalledPackageInfo
    s = ([String] -> InstalledPackageInfo)
    -> f [String] -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\[String]
    x -> InstalledPackageInfo
    s{T.libraryDynDirs = x}) ([String] -> f [String]
    f (InstalledPackageInfo -> [String]
    T.libraryDynDirs InstalledPackageInfo
    s))
    {-# INLINE libraryDynDirs #-}

    dataDir :: Lens' InstalledPackageInfo FilePath
    dataDir :: Lens' InstalledPackageInfo String
    dataDir String -> f String
    f InstalledPackageInfo
    s = (String -> InstalledPackageInfo)
    -> f String -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\String
    x -> InstalledPackageInfo
    s{T.dataDir = x}) (String -> f String
    f (InstalledPackageInfo -> String
    T.dataDir InstalledPackageInfo
    s))
    {-# INLINE dataDir #-}

    hsLibraries :: Lens' InstalledPackageInfo [String]
    hsLibraries :: Lens' InstalledPackageInfo [String]
    hsLibraries [String] -> f [String]
    f InstalledPackageInfo
    s = ([String] -> InstalledPackageInfo)
    -> f [String] -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\[String]
    x -> InstalledPackageInfo
    s{T.hsLibraries = x}) ([String] -> f [String]
    f (InstalledPackageInfo -> [String]
    T.hsLibraries InstalledPackageInfo
    s))
    {-# INLINE hsLibraries #-}

    extraLibraries :: Lens' InstalledPackageInfo [String]
    extraLibraries :: Lens' InstalledPackageInfo [String]
    extraLibraries [String] -> f [String]
    f InstalledPackageInfo
    s = ([String] -> InstalledPackageInfo)
    -> f [String] -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\[String]
    x -> InstalledPackageInfo
    s{T.extraLibraries = x}) ([String] -> f [String]
    f (InstalledPackageInfo -> [String]
    T.extraLibraries InstalledPackageInfo
    s))
    {-# INLINE extraLibraries #-}

    extraLibrariesStatic :: Lens' InstalledPackageInfo [String]
    extraLibrariesStatic :: Lens' InstalledPackageInfo [String]
    extraLibrariesStatic [String] -> f [String]
    f InstalledPackageInfo
    s = ([String] -> InstalledPackageInfo)
    -> f [String] -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\[String]
    x -> InstalledPackageInfo
    s{T.extraLibrariesStatic = x}) ([String] -> f [String]
    f (InstalledPackageInfo -> [String]
    T.extraLibrariesStatic InstalledPackageInfo
    s))
    {-# INLINE extraLibrariesStatic #-}

    extraGHCiLibraries :: Lens' InstalledPackageInfo [String]
    extraGHCiLibraries :: Lens' InstalledPackageInfo [String]
    extraGHCiLibraries [String] -> f [String]
    f InstalledPackageInfo
    s = ([String] -> InstalledPackageInfo)
    -> f [String] -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\[String]
    x -> InstalledPackageInfo
    s{T.extraGHCiLibraries = x}) ([String] -> f [String]
    f (InstalledPackageInfo -> [String]
    T.extraGHCiLibraries InstalledPackageInfo
    s))
    {-# INLINE extraGHCiLibraries #-}

    includeDirs :: Lens' InstalledPackageInfo [FilePath]
    includeDirs :: Lens' InstalledPackageInfo [String]
    includeDirs [String] -> f [String]
    f InstalledPackageInfo
    s = ([String] -> InstalledPackageInfo)
    -> f [String] -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\[String]
    x -> InstalledPackageInfo
    s{T.includeDirs = x}) ([String] -> f [String]
    f (InstalledPackageInfo -> [String]
    T.includeDirs InstalledPackageInfo
    s))
    {-# INLINE includeDirs #-}

    includes :: Lens' InstalledPackageInfo [String]
    includes :: Lens' InstalledPackageInfo [String]
    includes [String] -> f [String]
    f InstalledPackageInfo
    s = ([String] -> InstalledPackageInfo)
    -> f [String] -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\[String]
    x -> InstalledPackageInfo
    s{T.includes = x}) ([String] -> f [String]
    f (InstalledPackageInfo -> [String]
    T.includes InstalledPackageInfo
    s))
    {-# INLINE includes #-}

    depends :: Lens' InstalledPackageInfo [UnitId]
    depends :: Lens' InstalledPackageInfo [UnitId]
    depends [UnitId] -> f [UnitId]
    f InstalledPackageInfo
    s = ([UnitId] -> InstalledPackageInfo)
    -> f [UnitId] -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\[UnitId]
    x -> InstalledPackageInfo
    s{T.depends = x}) ([UnitId] -> f [UnitId]
    f (InstalledPackageInfo -> [UnitId]
    T.depends InstalledPackageInfo
    s))
    {-# INLINE depends #-}

    abiDepends :: Lens' InstalledPackageInfo [AbiDependency]
    abiDepends :: Lens' InstalledPackageInfo [AbiDependency]
    abiDepends [AbiDependency] -> f [AbiDependency]
    f InstalledPackageInfo
    s = ([AbiDependency] -> InstalledPackageInfo)
    -> f [AbiDependency] -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\[AbiDependency]
    x -> InstalledPackageInfo
    s{T.abiDepends = x}) ([AbiDependency] -> f [AbiDependency]
    f (InstalledPackageInfo -> [AbiDependency]
    T.abiDepends InstalledPackageInfo
    s))
    {-# INLINE abiDepends #-}

    ccOptions :: Lens' InstalledPackageInfo [String]
    ccOptions :: Lens' InstalledPackageInfo [String]
    ccOptions [String] -> f [String]
    f InstalledPackageInfo
    s = ([String] -> InstalledPackageInfo)
    -> f [String] -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\[String]
    x -> InstalledPackageInfo
    s{T.ccOptions = x}) ([String] -> f [String]
    f (InstalledPackageInfo -> [String]
    T.ccOptions InstalledPackageInfo
    s))
    {-# INLINE ccOptions #-}

    cxxOptions :: Lens' InstalledPackageInfo [String]
    cxxOptions :: Lens' InstalledPackageInfo [String]
    cxxOptions [String] -> f [String]
    f InstalledPackageInfo
    s = ([String] -> InstalledPackageInfo)
    -> f [String] -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\[String]
    x -> InstalledPackageInfo
    s{T.cxxOptions = x}) ([String] -> f [String]
    f (InstalledPackageInfo -> [String]
    T.cxxOptions InstalledPackageInfo
    s))
    {-# INLINE cxxOptions #-}

    ldOptions :: Lens' InstalledPackageInfo [String]
    ldOptions :: Lens' InstalledPackageInfo [String]
    ldOptions [String] -> f [String]
    f InstalledPackageInfo
    s = ([String] -> InstalledPackageInfo)
    -> f [String] -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\[String]
    x -> InstalledPackageInfo
    s{T.ldOptions = x}) ([String] -> f [String]
    f (InstalledPackageInfo -> [String]
    T.ldOptions InstalledPackageInfo
    s))
    {-# INLINE ldOptions #-}

    frameworkDirs :: Lens' InstalledPackageInfo [FilePath]
    frameworkDirs :: Lens' InstalledPackageInfo [String]
    frameworkDirs [String] -> f [String]
    f InstalledPackageInfo
    s = ([String] -> InstalledPackageInfo)
    -> f [String] -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\[String]
    x -> InstalledPackageInfo
    s{T.frameworkDirs = x}) ([String] -> f [String]
    f (InstalledPackageInfo -> [String]
    T.frameworkDirs InstalledPackageInfo
    s))
    {-# INLINE frameworkDirs #-}

    frameworks :: Lens' InstalledPackageInfo [String]
    frameworks :: Lens' InstalledPackageInfo [String]
    frameworks [String] -> f [String]
    f InstalledPackageInfo
    s = ([String] -> InstalledPackageInfo)
    -> f [String] -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\[String]
    x -> InstalledPackageInfo
    s{T.frameworks = x}) ([String] -> f [String]
    f (InstalledPackageInfo -> [String]
    T.frameworks InstalledPackageInfo
    s))
    {-# INLINE frameworks #-}

    haddockInterfaces :: Lens' InstalledPackageInfo [FilePath]
    haddockInterfaces :: Lens' InstalledPackageInfo [String]
    haddockInterfaces [String] -> f [String]
    f InstalledPackageInfo
    s = ([String] -> InstalledPackageInfo)
    -> f [String] -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\[String]
    x -> InstalledPackageInfo
    s{T.haddockInterfaces = x}) ([String] -> f [String]
    f (InstalledPackageInfo -> [String]
    T.haddockInterfaces InstalledPackageInfo
    s))
    {-# INLINE haddockInterfaces #-}

    haddockHTMLs :: Lens' InstalledPackageInfo [FilePath]
    haddockHTMLs :: Lens' InstalledPackageInfo [String]
    haddockHTMLs [String] -> f [String]
    f InstalledPackageInfo
    s = ([String] -> InstalledPackageInfo)
    -> f [String] -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\[String]
    x -> InstalledPackageInfo
    s{T.haddockHTMLs = x}) ([String] -> f [String]
    f (InstalledPackageInfo -> [String]
    T.haddockHTMLs InstalledPackageInfo
    s))
    {-# INLINE haddockHTMLs #-}

    pkgRoot :: Lens' InstalledPackageInfo (Maybe FilePath)
    pkgRoot :: Lens' InstalledPackageInfo (Maybe String)
    pkgRoot Maybe String -> f (Maybe String)
    f InstalledPackageInfo
    s = (Maybe String -> InstalledPackageInfo)
    -> f (Maybe String) -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\Maybe String
    x -> InstalledPackageInfo
    s{T.pkgRoot = x}) (Maybe String -> f (Maybe String)
    f (InstalledPackageInfo -> Maybe String
    T.pkgRoot InstalledPackageInfo
    s))
    {-# INLINE pkgRoot #-}

    libVisibility :: Lens' InstalledPackageInfo LibraryVisibility
    libVisibility :: Lens' InstalledPackageInfo LibraryVisibility
    libVisibility LibraryVisibility -> f LibraryVisibility
    f InstalledPackageInfo
    s = (LibraryVisibility -> InstalledPackageInfo)
    -> f LibraryVisibility -> f InstalledPackageInfo
    forall a b. (a -> b) -> f a -> f b
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\LibraryVisibility
    x -> InstalledPackageInfo
    s{T.libVisibility = x}) (LibraryVisibility -> f LibraryVisibility
    f (InstalledPackageInfo -> LibraryVisibility
    T.libVisibility InstalledPackageInfo
    s))
    {-# INLINE libVisibility #-}