hsdev-0.1.8.1: Haskell development library and tool with support of autocompletion, symbol info, go to declaration, find references etc.

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