hsdev-0.3.0.0: Haskell development library

Safe HaskellNone
LanguageHaskell98

HsDev.Inspect

Synopsis

Documentation

data Preloaded Source #

Preloaded module with contents and extensions

Constructors

Preloaded 

Instances

NFData Preloaded Source # 

Methods

rnf :: Preloaded -> () #

preload :: Text -> [(String, String)] -> [String] -> ModuleLocation -> Maybe Text -> IO Preloaded Source #

Preload module - load head and imports to get actual extensions and dependencies

analyzeResolve :: AnalyzeEnv -> Module -> Module Source #

Resolve module importsexportsscope

analyzePreloaded :: AnalyzeEnv -> Preloaded -> Either String Module Source #

Inspect preloaded module

inspectDocs :: [String] -> Module -> GhcM Module Source #

Extract file docs and set them to module declarations

inspectDocsGhc :: [String] -> Module -> GhcM Module Source #

Like inspectDocs, but in Ghc monad

sourceInspection :: Path -> Maybe Text -> [String] -> IO Inspection Source #

Source inspection data, differs whether there are contents provided

fileInspection :: Path -> [String] -> IO Inspection Source #

File inspection data

fileContentsInspection :: [String] -> IO Inspection Source #

File contents inspection data

fileContentsInspection_ :: [String] -> POSIXTime -> Inspection Source #

File contents inspection data

installedInspection :: [String] -> IO Inspection Source #

Installed module inspection data, just opts

moduleInspection :: ModuleLocation -> [String] -> IO Inspection Source #

Inspection by module location

projectDirs :: Project -> IO [Extensions Path] Source #

Enumerate project dirs

projectSources :: Project -> IO [Extensions Path] Source #

Enumerate project source files

getDefines :: IO [(String, String)] Source #

Get actual defines