Copyright | Duncan Coutts 2008 |
---|---|
License | BSD3 |
Maintainer | cabal-devel@haskell.org |
Portability | portable |
Safe Haskell | None |
Language | Haskell2010 |
Data type for Haskell module names.
Synopsis
- newtype ModuleName = ModuleName ShortTextLst
- fromString :: IsString a => String -> a
- fromComponents :: [String] -> ModuleName
- components :: ModuleName -> [String]
- toFilePath :: ModuleName -> FilePath
- main :: ModuleName
- validModuleComponent :: String -> Bool
Documentation
newtype ModuleName Source #
A valid Haskell module name.
ModuleName ShortTextLst |
Instances
fromString :: IsString a => String -> a Source #
fromComponents :: [String] -> ModuleName Source #
Construct a ModuleName
from valid module components, i.e. parts
separated by dots.
components :: ModuleName -> [String] Source #
The individual components of a hierarchical module name. For example
components (fromString "A.B.C") = ["A", "B", "C"]
toFilePath :: ModuleName -> FilePath Source #
Convert a module name to a file path, but without any file extension. For example:
toFilePath (fromString "A.B.C") = "A/B/C"
main :: ModuleName Source #
The module name Main
.
Internal
validModuleComponent :: String -> Bool Source #