Copyright | Copyright (c) 2012-2017 David Sorokin <david.sorokin@gmail.com> |
---|---|
License | BSD3 |
Maintainer | David Sorokin <david.sorokin@gmail.com> |
Stability | experimental |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
Tested with: GHC 8.0.1
It defines the Exp
monad that allows providing computation with
an ability to resolve file paths.
Synopsis
- data ExperimentWriter a
- runExperimentWriter :: ExperimentWriter a -> IO a
- data ExperimentFilePath
- experimentFilePath :: ExperimentFilePath
- resolveFilePath :: FilePath -> ExperimentFilePath -> ExperimentWriter FilePath
- expandFilePath :: ExperimentFilePath -> Map String String -> ExperimentFilePath
- mapFilePath :: (FilePath -> FilePath) -> ExperimentFilePath -> ExperimentFilePath
Documentation
data ExperimentWriter a Source #
Defines an IO
derived computation whithin which we can resolve the unique file paths.
Instances
runExperimentWriter :: ExperimentWriter a -> IO a Source #
Run the ExperimentWriter
computation.
data ExperimentFilePath Source #
Specifies the file name, unique or writable, which can be appended with extension if required.
WritableFilePath FilePath | The file which is overwritten in case if it existed before. |
UniqueFilePath FilePath | The file which is always unique, when an automatically generated suffix is added to the name in case of need. |
experimentFilePath :: ExperimentFilePath Source #
The default experiment file path.
resolveFilePath :: FilePath -> ExperimentFilePath -> ExperimentWriter FilePath Source #
Resolve the file path relative to the specified directory passed in the first argument and taking into account a possible requirement to have an unique file name.
expandFilePath :: ExperimentFilePath -> Map String String -> ExperimentFilePath Source #
Expand the file path using the specified table of substitutions.
mapFilePath :: (FilePath -> FilePath) -> ExperimentFilePath -> ExperimentFilePath Source #
Transform the file path using the specified function.