Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- type Parser = Parsec Void String
- padded :: Parser a -> Parser a
- quoted :: Parser a -> Parser a
- ptoken :: String -> Parser String
- operator :: Parser String
- symbolChars :: Parser String
- symbol' :: Parser String
- symbol :: Parser String
- pkgName :: Parser String
- oneImport :: Parser ModuleName
- parseFileImports :: FilePath -> IO (Either String (Set ModuleName))
- getUsedDependencies :: Map ModuleName (Set DependencyName) -> Set ModuleName -> Set DependencyName
- getCompilableUsedDependencies :: (MonadIO m, MonadLogger m) => Map ModuleName (Set DependencyName) -> Compilable -> m (Set DependencyName)
Documentation
parseFileImports :: FilePath -> IO (Either String (Set ModuleName)) Source #
Parse a Haskell source file's imports.
getUsedDependencies :: Map ModuleName (Set DependencyName) -> Set ModuleName -> Set DependencyName Source #
Get the dependencies used by a list of modules imported by a Haskell source file.
getCompilableUsedDependencies :: (MonadIO m, MonadLogger m) => Map ModuleName (Set DependencyName) -> Compilable -> m (Set DependencyName) Source #
Get the dependencies used by a thing to compile by (1) parsing each source file's imports, (2) getting the dependencies each of those files use, and (3) smooshing all the dependencies together to return.