hsdev-0.3.1.3: Haskell development library

Safe HaskellNone
LanguageHaskell98

HsDev.Scan

Contents

Synopsis

Enumerate functions

type CompileFlag = String Source #

Compile flags

type ModuleToScan = (ModuleLocation, [CompileFlag], Maybe Text) 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)

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

Enum rescannable (i.e. already scanned) file

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

Enum file dependent

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] -> Path -> m Project Source #

Scan project file

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

Scan additional info and modify scanned module

upToDate :: SessionMonad m => ModuleLocation -> [String] -> Inspection -> m Bool Source #

Is inspected module up to date?

changedModules :: SessionMonad m => Map ModuleLocation Inspection -> [String] -> [ModuleToScan] -> m [ModuleToScan] Source #

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

getFileContents :: SessionMonad m => Path -> m (Maybe (POSIXTime, Text)) Source #

Returns file contents if it was set and still actual

Reexportss