| Copyright | Duncan Coutts 2009, 2013 |
|---|---|
| Maintainer | cabal-devel@haskell.org |
| Portability | portable |
| Safe Haskell | None |
| Language | Haskell98 |
Distribution.Simple.Program.HcPkg
Contents
Description
This module provides an library interface to the hc-pkg program.
Currently only GHC, GHCJS and LHC have hc-pkg programs.
- data HcPkgInfo = HcPkgInfo {}
- init :: HcPkgInfo -> Verbosity -> FilePath -> IO ()
- invoke :: HcPkgInfo -> Verbosity -> PackageDBStack -> [String] -> IO ()
- register :: HcPkgInfo -> Verbosity -> PackageDBStack -> Either FilePath InstalledPackageInfo -> IO ()
- reregister :: HcPkgInfo -> Verbosity -> PackageDBStack -> Either FilePath InstalledPackageInfo -> IO ()
- unregister :: HcPkgInfo -> Verbosity -> PackageDB -> PackageId -> IO ()
- expose :: HcPkgInfo -> Verbosity -> PackageDB -> PackageId -> IO ()
- hide :: HcPkgInfo -> Verbosity -> PackageDB -> PackageId -> IO ()
- dump :: HcPkgInfo -> Verbosity -> PackageDB -> IO [InstalledPackageInfo]
- list :: HcPkgInfo -> Verbosity -> PackageDB -> IO [PackageId]
- initInvocation :: HcPkgInfo -> Verbosity -> FilePath -> ProgramInvocation
- registerInvocation :: HcPkgInfo -> Verbosity -> PackageDBStack -> Either FilePath InstalledPackageInfo -> ProgramInvocation
- reregisterInvocation :: HcPkgInfo -> Verbosity -> PackageDBStack -> Either FilePath InstalledPackageInfo -> ProgramInvocation
- unregisterInvocation :: HcPkgInfo -> Verbosity -> PackageDB -> PackageId -> ProgramInvocation
- exposeInvocation :: HcPkgInfo -> Verbosity -> PackageDB -> PackageId -> ProgramInvocation
- hideInvocation :: HcPkgInfo -> Verbosity -> PackageDB -> PackageId -> ProgramInvocation
- dumpInvocation :: HcPkgInfo -> Verbosity -> PackageDB -> ProgramInvocation
- listInvocation :: HcPkgInfo -> Verbosity -> PackageDB -> ProgramInvocation
Documentation
Information about the features and capabilities of an hc-pkg
program.
Constructors
| HcPkgInfo | |
Fields
| |
init :: HcPkgInfo -> Verbosity -> FilePath -> IO () Source
Call hc-pkg to initialise a package database at the location {path}.
hc-pkg init {path}invoke :: HcPkgInfo -> Verbosity -> PackageDBStack -> [String] -> IO () Source
Run hc-pkg using a given package DB stack, directly forwarding the
provided command-line arguments to it.
register :: HcPkgInfo -> Verbosity -> PackageDBStack -> Either FilePath InstalledPackageInfo -> IO () Source
Call hc-pkg to register a package.
hc-pkg register {filename | -} [--user | --global | --package-db]reregister :: HcPkgInfo -> Verbosity -> PackageDBStack -> Either FilePath InstalledPackageInfo -> IO () Source
Call hc-pkg to re-register a package.
hc-pkg register {filename | -} [--user | --global | --package-db]unregister :: HcPkgInfo -> Verbosity -> PackageDB -> PackageId -> IO () Source
Call hc-pkg to unregister a package
hc-pkg unregister [pkgid] [--user | --global | --package-db]
expose :: HcPkgInfo -> Verbosity -> PackageDB -> PackageId -> IO () Source
Call hc-pkg to expose a package.
hc-pkg expose [pkgid] [--user | --global | --package-db]
hide :: HcPkgInfo -> Verbosity -> PackageDB -> PackageId -> IO () Source
Call hc-pkg to hide a package.
hc-pkg hide [pkgid] [--user | --global | --package-db]
dump :: HcPkgInfo -> Verbosity -> PackageDB -> IO [InstalledPackageInfo] Source
Call hc-pkg to get all the details of all the packages in the given
package database.
list :: HcPkgInfo -> Verbosity -> PackageDB -> IO [PackageId] Source
Call hc-pkg to get the source package Id of all the packages in the
given package database.
This is much less information than with dump, but also rather quicker.
Note in particular that it does not include the InstalledPackageId, just
the source PackageId which is not necessarily unique in any package db.
Program invocations
initInvocation :: HcPkgInfo -> Verbosity -> FilePath -> ProgramInvocation Source
registerInvocation :: HcPkgInfo -> Verbosity -> PackageDBStack -> Either FilePath InstalledPackageInfo -> ProgramInvocation Source
reregisterInvocation :: HcPkgInfo -> Verbosity -> PackageDBStack -> Either FilePath InstalledPackageInfo -> ProgramInvocation Source
unregisterInvocation :: HcPkgInfo -> Verbosity -> PackageDB -> PackageId -> ProgramInvocation Source
exposeInvocation :: HcPkgInfo -> Verbosity -> PackageDB -> PackageId -> ProgramInvocation Source
hideInvocation :: HcPkgInfo -> Verbosity -> PackageDB -> PackageId -> ProgramInvocation Source
dumpInvocation :: HcPkgInfo -> Verbosity -> PackageDB -> ProgramInvocation Source
listInvocation :: HcPkgInfo -> Verbosity -> PackageDB -> ProgramInvocation Source