| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
DriverPhases
Synopsis
- data HscSource
- isHsBootOrSig :: HscSource -> Bool
- isHsigFile :: HscSource -> Bool
- hscSourceString :: HscSource -> String
- data Phase
- happensBefore :: DynFlags -> Phase -> Phase -> Bool
- eqPhase :: Phase -> Phase -> Bool
- anyHsc :: Phase
- isStopLn :: Phase -> Bool
- startPhase :: String -> Phase
- phaseInputExt :: Phase -> String
- isHaskellishSuffix :: String -> Bool
- isHaskellSrcSuffix :: String -> Bool
- isBackpackishSuffix :: String -> Bool
- isObjectSuffix :: Platform -> String -> Bool
- isCishSuffix :: String -> Bool
- isDynLibSuffix :: Platform -> String -> Bool
- isHaskellUserSrcSuffix :: String -> Bool
- isHaskellSigSuffix :: String -> Bool
- isSourceSuffix :: String -> Bool
- isHaskellishTarget :: (String, Maybe Phase) -> Bool
- isHaskellishFilename :: FilePath -> Bool
- isHaskellSrcFilename :: FilePath -> Bool
- isHaskellSigFilename :: FilePath -> Bool
- isObjectFilename :: Platform -> FilePath -> Bool
- isCishFilename :: FilePath -> Bool
- isDynLibFilename :: Platform -> FilePath -> Bool
- isHaskellUserSrcFilename :: FilePath -> Bool
- isSourceFilename :: FilePath -> Bool
Documentation
Constructors
| HsSrcFile | |
| HsBootFile | |
| HsigFile |
Instances
| Eq HscSource Source # | |
| Ord HscSource Source # | |
| Show HscSource Source # | |
| Binary HscSource Source # | |
isHsBootOrSig :: HscSource -> Bool Source #
isHsigFile :: HscSource -> Bool Source #
hscSourceString :: HscSource -> String Source #
Constructors
| Unlit HscSource | |
| Cpp HscSource | |
| HsPp HscSource | |
| Hsc HscSource | |
| Ccxx | |
| Cc | |
| Cobjc | |
| Cobjcxx | |
| HCc | |
| Splitter | |
| SplitAs | |
| As Bool | |
| LlvmOpt | |
| LlvmLlc | |
| LlvmMangle | |
| CmmCpp | |
| Cmm | |
| MergeForeign | |
| StopLn |
startPhase :: String -> Phase Source #
phaseInputExt :: Phase -> String Source #
isHaskellishSuffix :: String -> Bool Source #
isHaskellSrcSuffix :: String -> Bool Source #
isBackpackishSuffix :: String -> Bool Source #
isCishSuffix :: String -> Bool Source #
isHaskellUserSrcSuffix :: String -> Bool Source #
isHaskellSigSuffix :: String -> Bool Source #
isSourceSuffix :: String -> Bool Source #
isHaskellishTarget :: (String, Maybe Phase) -> Bool Source #
When we are given files (modified by -x arguments) we need to determine if they are Haskellish or not to figure out how we should try to compile it. The rules are:
- If no -x flag was specified, we check to see if the file looks like a module name, has no extension, or has a Haskell source extension.
- If an -x flag was specified, we just make sure the specified suffix is a Haskell one.
isHaskellishFilename :: FilePath -> Bool Source #
isHaskellSrcFilename :: FilePath -> Bool Source #
isHaskellSigFilename :: FilePath -> Bool Source #
isCishFilename :: FilePath -> Bool Source #
isSourceFilename :: FilePath -> Bool Source #