|
|
|
|
Synopsis |
|
|
|
Documentation |
|
flushFinderCaches :: HscEnv -> IO () |
|
data FindResult |
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
| PackageHidden PackageId | For an explicit source import, the package containing the module is
not exposed.
| ModuleHidden PackageId | For an explicit source import, the package containing the module is
exposed, but the module itself is hidden.
| NotFound [FilePath] (Maybe PackageId) | The module was not found, the specified places were searched
| NotFoundInPackage PackageId | The module was not found in this package
|
|
|
|
findImportedModule :: HscEnv -> ModuleName -> Maybe FastString -> IO FindResult |
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 FindResult |
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 FindResult |
Search for a module in the home package only.
|
|
mkHomeModLocation :: DynFlags -> ModuleName -> FilePath -> IO ModLocation |
|
mkHomeModLocation2 :: DynFlags -> ModuleName -> FilePath -> String -> IO ModLocation |
|
mkHiOnlyModLocation :: DynFlags -> Suffix -> FilePath -> String -> IO ModLocation |
|
addHomeModuleToFinder :: HscEnv -> ModuleName -> ModLocation -> IO Module |
|
uncacheModule :: HscEnv -> ModuleName -> IO () |
|
mkStubPaths :: DynFlags -> ModuleName -> ModLocation -> (FilePath, FilePath, FilePath) |
|
findObjectLinkableMaybe :: Module -> ModLocation -> IO (Maybe Linkable) |
|
findObjectLinkable :: Module -> FilePath -> ClockTime -> IO Linkable |
|
cannotFindModule :: DynFlags -> ModuleName -> FindResult -> SDoc |
|
cannotFindInterface :: DynFlags -> ModuleName -> FindResult -> SDoc |
|
Produced by Haddock version 2.3.0 |