ghc-7.0.3: The GHC API

Finder

Synopsis

Documentation

data FindResult Source

The result of searching for an imported module.

Constructors

Found ModLocation Module

The module was found

NoPackage PackageId

The requested package was not found

FoundMultiple [PackageId]

_Error_: both in multiple packages

NotFound [FilePath] (Maybe PackageId) [PackageId] [PackageId]

The module was not found, including either * the specified places were searched * the package that this module should have been in * list of packages in which the module was hidden, * list of hidden packages containing this module

NotFoundInPackage PackageId

The module was not found in this package

findImportedModule :: HscEnv -> ModuleName -> Maybe FastString -> IO FindResultSource

Locate a module that was imported by the user. We have the module's name, and possibly a package name. Without a package name, this function will use the search path and the known exposed packages to find the module, if a package is specified then only that package is searched for the module.

findExactModule :: HscEnv -> Module -> IO FindResultSource

Locate a specific Module. The purpose of this function is to create a ModLocation for a given Module, that is to find out where the files associated with this module live. It is used when reading the interface for a module mentioned by another interface, for example (a system import).

findHomeModule :: HscEnv -> ModuleName -> IO FindResultSource

Search for a module in the home package only.