Portability | GHC |
---|---|
Stability | experimental |
Maintainer | hans@hanshoglund.se |
Safe Haskell | None |
- type ModulePath = FilePath
- relativePath :: ModuleName -> FilePath
- absolutePaths :: [ModulePath] -> ModuleName -> [FilePath]
- stdModulePaths :: [ModulePath]
- withStdModulePaths :: [ModulePath] -> [ModulePath]
- loadModule :: [ModulePath] -> ModuleName -> IO [Module]
- loadDependencies :: [ModulePath] -> Module -> IO [Module]
Paths
type ModulePath = FilePathSource
Path where modules are stored.
relativePath :: ModuleName -> FilePathSource
Converts a module name to a relative path.
absolutePaths :: [ModulePath] -> ModuleName -> [FilePath]Source
Converts a module name to a list of absolute paths, in order of preference.
Standard paths
stdModulePaths :: [ModulePath]Source
Module paths, in order of preference.
withStdModulePaths :: [ModulePath] -> [ModulePath]Source
Append the standard paths to the given paths.
That is, the given paths take precedence over the standards.
Loading
loadModule :: [ModulePath] -> ModuleName -> IO [Module]Source
Load a module of the given name.
Dependencies of the loaded modules are loaded transitively. This function blocks if a recursive dependency is encountered.
loadDependencies :: [ModulePath] -> Module -> IO [Module]Source
Load the dependencies of the given module.
Dependencies of the loaded modules are loaded transitively. This function blocks if a recursive dependency is encountered.