camfort-0.902: CamFort - Cambridge Fortran infrastructure

Safe HaskellNone
LanguageHaskell2010

Camfort.Input

Contents

Synopsis

Documentation

class Default t where Source #

Minimal complete definition

defaultValue

Methods

defaultValue :: t Source #

getOption :: forall t opt. (Data opt, Data t, Default opt) => [t] -> opt Source #

Builders for analysers and refactorings

doAnalysisSummary :: (Monoid s, Show' s) => (Filename -> ProgramFile A -> (s, ProgramFile A)) -> FileOrDir -> [Filename] -> Maybe FileOrDir -> IO () Source #

Performs an analysis provided by its first parameter which generates information s, which is then combined together (via a monoid)

callAndSummarise :: (Monoid a1, Foldable t1) => (t3 -> t2 -> (a1, a)) -> t1 (t3, t, t2) -> (a1, [a]) Source #

doAnalysisReport :: ([(Filename, ProgramFile A)] -> r) -> (r -> IO out) -> FileOrDir -> [Filename] -> IO out Source #

Performs an analysis which reports to the user, but does not output any files

doAnalysisReportWithModFiles :: ([(Filename, ProgramFile A)] -> r) -> (r -> IO out) -> FileOrDir -> [Filename] -> ModFiles -> IO out Source #

doRefactor :: ([(Filename, ProgramFile A)] -> (String, [(Filename, ProgramFile A)])) -> FileOrDir -> [Filename] -> FileOrDir -> IO String Source #

Performs a refactoring provided by its first parameter, on the directory of the second, excluding files listed by third, output to the directory specified by the fourth parameter

Source directory and file handling

Source directory and file handling

mapMaybeM :: Monad m => (a -> m (Maybe b)) -> [a] -> m [b] Source #

readParseSrcFile :: Filename -> IO (Maybe (Filename, SourceText, ProgramFile A)) Source #

Read a specific file, and parse it

isFortran :: [Char] -> Bool Source #

predicate on which fileextensions are Fortran files

fileExt :: [Char] -> [Char] Source #

extract a filename's extension

flexReadFile :: String -> IO ByteString Source #

Read file using ByteString library and deal with any weird characters.