- getCorrespondingModuleDataFile :: FilePath -> Shaker IO FilePath
- writeModuleData :: ModuleData -> Shaker IO ()
- parseAllModuleData :: Shaker IO [ModuleData]
- parseModuleData :: FilePath -> Shaker IO (Maybe ModuleData)
- parseModuleDataIfExist :: FilePath -> Shaker IO (Maybe ModuleData)
- convertModuleDataToFullCompileInput :: Shaker IO [CompileInput]
- groupByValidTargets :: [ModuleData] -> [[ModuleData]]
- getNonMainCompileInput :: Shaker IO CompileInput
- fillModuleData :: ShakerInput -> IO ShakerInput
- constructModuleData :: HsModule -> ModuleData
- hsModuleDataHasTest :: ModuleData -> Bool
- filterModulesWithPattern :: [ModuleData] -> String -> [ModuleData]
- filterFunctionsWithPatterns :: [ModuleData] -> [String] -> [ModuleData]
- filterFunctionsWithPatterns' :: ModuleData -> [String] -> ModuleData
- removeNonTestModules :: [ModuleData] -> [ModuleData]
Read and write module data
getCorrespondingModuleDataFile :: FilePath -> Shaker IO FilePathSource
Get the corresponding mdata file from the given source file
writeModuleData :: ModuleData -> Shaker IO ()Source
Write given moduleData in dist directory
parseAllModuleData :: Shaker IO [ModuleData]Source
Parse module data from all haskell sources.
parseModuleData :: FilePath -> Shaker IO (Maybe ModuleData)Source
Read Module data from the given haskell source. It tries to read serialized information beforehand.
parseModuleDataIfExist :: FilePath -> Shaker IO (Maybe ModuleData)Source
Read Module data from the serialized data. It returns Nothing if the serialized data is absent or out-of-date.
Module data util methods
groupByValidTargets :: [ModuleData] -> [[ModuleData]]Source
filterModulesWithPattern :: [ModuleData] -> String -> [ModuleData]Source
Include only module matching the given pattern
filterFunctionsWithPatterns :: [ModuleData] -> [String] -> [ModuleData]Source
removeNonTestModules :: [ModuleData] -> [ModuleData]Source