Cabal-2.2.0.0: A framework for packaging Haskell software

Safe HaskellNone
LanguageHaskell2010

Distribution.Types.InstalledPackageInfo

Synopsis

Documentation

data InstalledPackageInfo #

Instances

Eq InstalledPackageInfo # 
Read InstalledPackageInfo # 
Show InstalledPackageInfo # 
Generic InstalledPackageInfo # 
Binary InstalledPackageInfo # 
NFData InstalledPackageInfo # 

Methods

rnf :: InstalledPackageInfo -> () #

IsNode InstalledPackageInfo # 
PackageInstalled InstalledPackageInfo # 
HasUnitId InstalledPackageInfo # 
HasMungedPackageId InstalledPackageInfo # 
Package InstalledPackageInfo # 
Semigroup (PackageIndex InstalledPackageInfo) # 
Monoid (PackageIndex InstalledPackageInfo) # 
type Rep InstalledPackageInfo # 
type Rep InstalledPackageInfo = D1 * (MetaData "InstalledPackageInfo" "Distribution.Types.InstalledPackageInfo" "Cabal-2.2.0.0-KtVb5LuYqFjKrhxFyS8D9H" False) (C1 * (MetaCons "InstalledPackageInfo" PrefixI True) ((:*:) * ((:*:) * ((:*:) * ((:*:) * ((:*:) * (S1 * (MetaSel (Just Symbol "sourcePackageId") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * PackageId)) (S1 * (MetaSel (Just Symbol "sourceLibName") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * (Maybe UnqualComponentName)))) ((:*:) * (S1 * (MetaSel (Just Symbol "installedComponentId_") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * ComponentId)) ((:*:) * (S1 * (MetaSel (Just Symbol "installedUnitId") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * UnitId)) (S1 * (MetaSel (Just Symbol "instantiatedWith") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * [(ModuleName, OpenModule)]))))) ((:*:) * ((:*:) * (S1 * (MetaSel (Just Symbol "compatPackageKey") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * String)) (S1 * (MetaSel (Just Symbol "license") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * (Either License License)))) ((:*:) * (S1 * (MetaSel (Just Symbol "copyright") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * String)) ((:*:) * (S1 * (MetaSel (Just Symbol "maintainer") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * String)) (S1 * (MetaSel (Just Symbol "author") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * String)))))) ((:*:) * ((:*:) * ((:*:) * (S1 * (MetaSel (Just Symbol "stability") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * String)) (S1 * (MetaSel (Just Symbol "homepage") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * String))) ((:*:) * (S1 * (MetaSel (Just Symbol "pkgUrl") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * String)) ((:*:) * (S1 * (MetaSel (Just Symbol "synopsis") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * String)) (S1 * (MetaSel (Just Symbol "description") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * String))))) ((:*:) * ((:*:) * (S1 * (MetaSel (Just Symbol "category") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * String)) (S1 * (MetaSel (Just Symbol "abiHash") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * AbiHash))) ((:*:) * (S1 * (MetaSel (Just Symbol "indefinite") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * Bool)) ((:*:) * (S1 * (MetaSel (Just Symbol "exposed") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * Bool)) (S1 * (MetaSel (Just Symbol "exposedModules") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * [ExposedModule]))))))) ((:*:) * ((:*:) * ((:*:) * ((:*:) * (S1 * (MetaSel (Just Symbol "hiddenModules") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * [ModuleName])) (S1 * (MetaSel (Just Symbol "trusted") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * Bool))) ((:*:) * (S1 * (MetaSel (Just Symbol "importDirs") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * [FilePath])) ((:*:) * (S1 * (MetaSel (Just Symbol "libraryDirs") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * [FilePath])) (S1 * (MetaSel (Just Symbol "libraryDynDirs") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * [FilePath]))))) ((:*:) * ((:*:) * (S1 * (MetaSel (Just Symbol "dataDir") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * FilePath)) (S1 * (MetaSel (Just Symbol "hsLibraries") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * [String]))) ((:*:) * (S1 * (MetaSel (Just Symbol "extraLibraries") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * [String])) ((:*:) * (S1 * (MetaSel (Just Symbol "extraGHCiLibraries") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * [String])) (S1 * (MetaSel (Just Symbol "includeDirs") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * [FilePath])))))) ((:*:) * ((:*:) * ((:*:) * (S1 * (MetaSel (Just Symbol "includes") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * [String])) (S1 * (MetaSel (Just Symbol "depends") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * [UnitId]))) ((:*:) * (S1 * (MetaSel (Just Symbol "abiDepends") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * [AbiDependency])) ((:*:) * (S1 * (MetaSel (Just Symbol "ccOptions") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * [String])) (S1 * (MetaSel (Just Symbol "ldOptions") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * [String]))))) ((:*:) * ((:*:) * (S1 * (MetaSel (Just Symbol "frameworkDirs") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * [FilePath])) (S1 * (MetaSel (Just Symbol "frameworks") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * [String]))) ((:*:) * (S1 * (MetaSel (Just Symbol "haddockInterfaces") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * [FilePath])) ((:*:) * (S1 * (MetaSel (Just Symbol "haddockHTMLs") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * [FilePath])) (S1 * (MetaSel (Just Symbol "pkgRoot") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * (Maybe FilePath))))))))))
type Key InstalledPackageInfo # 

mungedPackageName :: InstalledPackageInfo -> MungedPackageName #

Returns the munged package name, which we write into name for compatibility with old versions of GHC.

data AbiDependency #

An ABI dependency is a dependency on a library which also records the ABI hash (abiHash) of the library it depends on.

The primary utility of this is to enable an extra sanity when GHC loads libraries: it can check if the dependency has a matching ABI and if not, refuse to load this library. This information is critical if we are shadowing libraries; differences in the ABI hash let us know what packages get shadowed by the new version of a package.

Constructors

AbiDependency 

data ExposedModule #

Instances

Eq ExposedModule # 
Read ExposedModule # 
Show ExposedModule # 
Generic ExposedModule # 

Associated Types

type Rep ExposedModule :: * -> * #

Binary ExposedModule # 
NFData ExposedModule # 

Methods

rnf :: ExposedModule -> () #

Pretty ExposedModule # 

Methods

pretty :: ExposedModule -> Doc #

Parsec ExposedModule # 
Text ExposedModule # 
type Rep ExposedModule # 
type Rep ExposedModule = D1 * (MetaData "ExposedModule" "Distribution.Types.ExposedModule" "Cabal-2.2.0.0-KtVb5LuYqFjKrhxFyS8D9H" False) (C1 * (MetaCons "ExposedModule" PrefixI True) ((:*:) * (S1 * (MetaSel (Just Symbol "exposedName") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * ModuleName)) (S1 * (MetaSel (Just Symbol "exposedReexport") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * (Maybe OpenModule)))))