hsdev-0.2.5.1: Haskell development library

Safe HaskellNone
LanguageHaskell98

HsDev.Scan

Contents

Synopsis

Enumerate functions

type CompileFlag = String Source #

Compile flags

type ModuleToScan = (ModuleLocation, [CompileFlag], Maybe String) Source #

Module with flags ready to scan

type ProjectToScan = (Project, [ModuleToScan]) Source #

Project ready to scan

type PackageDbToScan = PackageDbStack Source #

Package-db sandbox to scan (top of stack)

enumProject :: CommandMonad m => Project -> m ScanContents Source #

Enum project sources

enumDirectory :: CommandMonad m => FilePath -> m ScanContents Source #

Enum directory modules

Scan

scanProjectFile :: CommandMonad m => [String] -> FilePath -> m Project Source #

Scan project file

scanModify :: CommandMonad m => ([String] -> PackageDbStack -> Module -> m Module) -> InspectedModule -> m InspectedModule Source #

Scan additional info and modify scanned module

upToDate :: [String] -> InspectedModule -> IO Bool Source #

Is inspected module up to date?

rescanModule :: CommandMonad m => [(String, String)] -> [String] -> InspectedModule -> m (Maybe InspectedModule) Source #

Rescan inspected module

changedModule :: Database -> [String] -> ModuleLocation -> IO Bool Source #

Is module new or recently changed

changedModules :: Database -> [String] -> [ModuleToScan] -> IO [ModuleToScan] Source #

Returns new (to scan) and changed (to rescan) modules

Reexportss