Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Synopsis
- run :: MonadWalk m => FilePath -> ([Field [Comment a]], cs) -> m ([Field [Comment a]], cs)
- field :: MonadWalk m => FilePath -> Field [Comment a] -> m (Field [Comment a])
- relevantFieldNames :: Set FieldName
- stripAnyExtension :: Set String -> FilePath -> Maybe String
- extensions :: Set String
- toModuleName :: [FilePath] -> FilePath -> Maybe ModuleName
- hoistMaybe :: Applicative f => Maybe a -> MaybeT f a
Documentation
run :: MonadWalk m => FilePath -> ([Field [Comment a]], cs) -> m ([Field [Comment a]], cs) Source #
High level wrapper around field
that makes this action easier to compose
with other actions.
field :: MonadWalk m => FilePath -> Field [Comment a] -> m (Field [Comment a]) Source #
Evaluates pragmas within the given field. Or, if the field is a section, evaluates pragmas recursively within the fields of the section.
If modules are discovered for a field, that fields lines are completely replaced. If anything goes wrong while discovering modules, the original field is returned.
relevantFieldNames :: Set FieldName Source #
These are the names of the fields that can have this action applied to them.
stripAnyExtension :: Set String -> FilePath -> Maybe String Source #
Attempts to strip any of the given extensions from the file path. If any
of them succeed, the result is returned. Otherwise Nothing
is returned.
extensions :: Set String Source #
The set of extensions that should be discovered by this pragma. Any file with one of these extensions will be discovered.
https://cabal.readthedocs.io/en/3.10/cabal-package.html#modules-and-preprocessors
toModuleName :: [FilePath] -> FilePath -> Maybe ModuleName Source #
Attempts to convert a file path (without an extension) into a module name by making it relative to one of the given directories.
hoistMaybe :: Applicative f => Maybe a -> MaybeT f a Source #
This was added in transformers-0.6.0.0
. See
https://hub.darcs.net/ross/transformers/issue/49.