Safe Haskell | None |
---|---|
Language | Haskell98 |
- browsePackages :: [String] -> PackageDbStack -> GhcM [PackageConfig]
- browsePackagesDeps :: [String] -> PackageDbStack -> GhcM (Deps PackageConfig)
- listModules :: [String] -> PackageDbStack -> [ModulePackage] -> GhcM [ModuleLocation]
- browseModules :: [String] -> PackageDbStack -> [ModuleLocation] -> GhcM [InspectedModule]
- browseModules' :: [String] -> [ModuleLocation] -> GhcM [InspectedModule]
- readPackage :: PackageConfig -> ModulePackage
- readPackageConfig :: PackageConfig -> PackageConfig
- ghcModuleLocation :: PackageConfig -> Module -> Bool -> ModuleLocation
- packageConfigs :: GhcM [PackageConfig]
- packageDbModules :: GhcM [(PackageConfig, Module, Bool)]
- lookupModule_ :: DynFlags -> ModuleName -> [Module]
- modulesPackages :: [ModuleLocation] -> [ModulePackage]
- modulesPackagesGroups :: [ModuleLocation] -> [(ModulePackage, [ModuleLocation])]
- withEachPackage :: (ModulePackage -> [ModuleLocation] -> GhcM a) -> [ModuleLocation] -> GhcM [a]
- module Control.Monad.Except
List all packages
browsePackages :: [String] -> PackageDbStack -> GhcM [PackageConfig] Source #
Browse packages
browsePackagesDeps :: [String] -> PackageDbStack -> GhcM (Deps PackageConfig) Source #
Get packages with deps
Scan cabal modules
listModules :: [String] -> PackageDbStack -> [ModulePackage] -> GhcM [ModuleLocation] Source #
List modules from ghc, accepts ghc-opts, stack of package-db to get modules for and list of packages to explicitely expose them with '-package' flag, otherwise hidden packages won't be loaded
browseModules :: [String] -> PackageDbStack -> [ModuleLocation] -> GhcM [InspectedModule] Source #
Like browseModules
, but groups modules by package and inspects each package separately
Trying to fix error: when there are several same packages (of different version), only Module
from
one of them can be lookuped and therefore modules from different version packages won't be actually inspected
browseModules' :: [String] -> [ModuleLocation] -> GhcM [InspectedModule] Source #
Inspect installed modules, doesn't set session and package flags!
Helpers
ghcModuleLocation :: PackageConfig -> Module -> Bool -> ModuleLocation Source #
packageDbModules :: GhcM [(PackageConfig, Module, Bool)] Source #
lookupModule_ :: DynFlags -> ModuleName -> [Module] Source #
modulesPackages :: [ModuleLocation] -> [ModulePackage] Source #
Get modules packages
modulesPackagesGroups :: [ModuleLocation] -> [(ModulePackage, [ModuleLocation])] Source #
Group modules by packages
withEachPackage :: (ModulePackage -> [ModuleLocation] -> GhcM a) -> [ModuleLocation] -> GhcM [a] Source #
Run action for each package with prepared '-package' flags
module Control.Monad.Except