ghc-8.2.1: The GHC API

Safe HaskellNone
LanguageHaskell2010

CmdLineParser

Description

Command-line parser

This is an abstract command-line parser used by DynFlags.

(c) The University of Glasgow 2005

Synopsis

Documentation

data OptKind m Source #

Constructors

NoArg (EwM m ()) 
HasArg (String -> EwM m ()) 
SepArg (String -> EwM m ()) 
Prefix (String -> EwM m ()) 
OptPrefix (String -> EwM m ()) 
OptIntSuffix (Maybe Int -> EwM m ()) 
IntSuffix (Int -> EwM m ()) 
FloatSuffix (Float -> EwM m ()) 
PassFlag (String -> EwM m ()) 
AnySuffix (String -> EwM m ()) 
PrefixPred (String -> Bool) (String -> EwM m ()) 
AnySuffixPred (String -> Bool) (String -> EwM m ()) 

data GhcFlagMode Source #

GHC flag modes describing when a flag has an effect.

Constructors

OnlyGhc

The flag only affects the non-interactive GHC

OnlyGhci

The flag only affects the interactive GHC

AllModes

The flag affects multiple ghc modes

HiddenFlag

This flag should not be seen in cli completion

newtype CmdLineP s a Source #

Constructors

CmdLineP 

Fields

Instances

Monad (CmdLineP s) Source # 

Methods

(>>=) :: CmdLineP s a -> (a -> CmdLineP s b) -> CmdLineP s b #

(>>) :: CmdLineP s a -> CmdLineP s b -> CmdLineP s b #

return :: a -> CmdLineP s a #

fail :: String -> CmdLineP s a #

Functor (CmdLineP s) Source # 

Methods

fmap :: (a -> b) -> CmdLineP s a -> CmdLineP s b #

(<$) :: a -> CmdLineP s b -> CmdLineP s a #

Applicative (CmdLineP s) Source # 

Methods

pure :: a -> CmdLineP s a #

(<*>) :: CmdLineP s (a -> b) -> CmdLineP s a -> CmdLineP s b #

liftA2 :: (a -> b -> c) -> CmdLineP s a -> CmdLineP s b -> CmdLineP s c #

(*>) :: CmdLineP s a -> CmdLineP s b -> CmdLineP s b #

(<*) :: CmdLineP s a -> CmdLineP s b -> CmdLineP s a #

data Flag m Source #

Constructors

Flag 

data EwM m a Source #

Instances

Monad m => Monad (EwM m) Source # 

Methods

(>>=) :: EwM m a -> (a -> EwM m b) -> EwM m b #

(>>) :: EwM m a -> EwM m b -> EwM m b #

return :: a -> EwM m a #

fail :: String -> EwM m a #

Monad m => Functor (EwM m) Source # 

Methods

fmap :: (a -> b) -> EwM m a -> EwM m b #

(<$) :: a -> EwM m b -> EwM m a #

Monad m => Applicative (EwM m) Source # 

Methods

pure :: a -> EwM m a #

(<*>) :: EwM m (a -> b) -> EwM m a -> EwM m b #

liftA2 :: (a -> b -> c) -> EwM m a -> EwM m b -> EwM m c #

(*>) :: EwM m a -> EwM m b -> EwM m b #

(<*) :: EwM m a -> EwM m b -> EwM m a #

runEwM :: EwM m a -> m (Errs, Warns, a) Source #

addErr :: Monad m => String -> EwM m () Source #

addWarn :: Monad m => String -> EwM m () Source #

liftEwM :: Monad m => m a -> EwM m a Source #

deprecate :: Monad m => String -> EwM m () Source #