Copyright | (c) 2005 Martin Engelke 2007 Sebastian Fischer 2011 - 2016 Björn Peemöller |
---|---|
License | BSD-3-clause |
Maintainer | bjp@informatik.uni-kiel.de |
Stability | experimental |
Portability | portable |
Safe Haskell | None |
Language | Haskell2010 |
CompilerOpts
Description
This module defines data structures holding options for the compilation of Curry programs, and utility functions for printing help information as well as parsing the command line arguments.
- data Options = Options {
- optMode :: CymakeMode
- optVerbosity :: Verbosity
- optForce :: Bool
- optLibraryPaths :: [FilePath]
- optImportPaths :: [FilePath]
- optHtmlDir :: Maybe FilePath
- optUseSubdir :: Bool
- optInterface :: Bool
- optPrepOpts :: PrepOpts
- optWarnOpts :: WarnOpts
- optTargetTypes :: [TargetType]
- optExtensions :: [KnownExtension]
- optDebugOpts :: DebugOpts
- data PrepOpts = PrepOpts {}
- data WarnOpts = WarnOpts {
- wnWarn :: Bool
- wnWarnFlags :: [WarnFlag]
- wnWarnAsError :: Bool
- data DebugOpts = DebugOpts {}
- data CymakeMode
- data Verbosity
- data TargetType
- data WarnFlag
- data KnownExtension :: *
- data DumpLevel
- dumpLevel :: [(DumpLevel, String, String)]
- defaultOptions :: Options
- defaultPrepOpts :: PrepOpts
- defaultWarnOpts :: WarnOpts
- defaultDebugOpts :: DebugOpts
- getCompilerOpts :: IO (String, Options, [String], [String])
- updateOpts :: Options -> [String] -> (Options, [String], [String])
- usage :: String -> String
Documentation
Compiler options
Constructors
Options | |
Fields
|
Preprocessor options
Constructors
PrepOpts | |
Warning options
Constructors
WarnOpts | |
Fields
|
Debug options
Constructors
DebugOpts | |
data CymakeMode Source #
Modus operandi of the program
Constructors
ModeHelp | Show help information and exit |
ModeVersion | Show version and exit |
ModeNumericVersion | Show numeric version, suitable for later processing |
ModeMake | Compile with dependencies |
Instances
Verbosity level
Constructors
VerbQuiet | be quiet |
VerbStatus | show status of compilation |
data TargetType Source #
Type of the target file
Constructors
Tokens | Source code tokens |
Parsed | Parsed source code |
FlatCurry | FlatCurry |
ExtendedFlatCurry | Extended FlatCurry |
AbstractCurry | AbstractCurry |
UntypedAbstractCurry | Untyped AbstractCurry |
Html | HTML documentation |
Instances
Warnings flags
Constructors
WarnMultipleImports | Warn for multiple imports |
WarnDisjoinedRules | Warn for disjoined function rules |
WarnUnusedGlobalBindings | Warn for unused global bindings |
WarnUnusedBindings | Warn for unused local bindings |
WarnNameShadowing | Warn for name shadowing |
WarnOverlapping | Warn for overlapping rules/alternatives |
WarnIncompletePatterns | Warn for incomplete pattern matching |
WarnMissingSignatures | Warn for missing type signatures |
data KnownExtension :: * #
Known language extensions of Curry.
Constructors
AnonFreeVars | anonymous free variables |
FunctionalPatterns | functional patterns |
NegativeLiterals | negative literals |
NoImplicitPrelude | no implicit import of the prelude |
Dump level
Constructors
DumpParsed | dump source code after parsing |
DumpKindChecked | dump source code after kind checking |
DumpSyntaxChecked | dump source code after syntax checking |
DumpPrecChecked | dump source code after precedence checking |
DumpTypeChecked | dump source code after type checking |
DumpExportChecked | dump source code after export checking |
DumpQualified | dump source after qualification |
DumpDesugared | dump source after desugaring |
DumpSimplified | dump source after simplification |
DumpLifted | dump source after lambda-lifting |
DumpTranslated | dump IL code after translation |
DumpCaseCompleted | dump IL code after case completion |
DumpFlatCurry | dump FlatCurry code (pretty-printed) |
defaultOptions :: Options Source #
Default compiler options
defaultPrepOpts :: PrepOpts Source #
Default preprocessor options
defaultWarnOpts :: WarnOpts Source #
Default warning options
defaultDebugOpts :: DebugOpts Source #
Default dump options