camfort-0.900: CamFort - Cambridge Fortran infrastructure

Safe HaskellNone





class Default t where Source #

Minimal complete definition



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 a, Foldable t) => (t1 -> t3 -> (a, a1)) -> t (t1, t2, t3) -> (a, [a1]) 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

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

readParseSrcFile :: Filename -> IO (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.