cmdargs-0.10.18: Command line argument processing

Safe HaskellNone
LanguageHaskell2010

System.Console.CmdArgs.Verbosity

Description

A module to deal with verbosity, how 'chatty' a program should be. This module defines the Verbosity data type, along with functions for manipulating a global verbosity value.

Synopsis

Documentation

data Verbosity Source #

The verbosity data type

Constructors

Quiet

Only output essential messages (typically errors)

Normal

Output normal messages (typically errors and warnings)

Loud

Output lots of messages (typically errors, warnings and status updates)

Instances

Bounded Verbosity Source # 
Enum Verbosity Source # 
Eq Verbosity Source # 
Data Verbosity Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Verbosity -> c Verbosity #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Verbosity #

toConstr :: Verbosity -> Constr #

dataTypeOf :: Verbosity -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c Verbosity) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Verbosity) #

gmapT :: (forall b. Data b => b -> b) -> Verbosity -> Verbosity #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Verbosity -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Verbosity -> r #

gmapQ :: (forall d. Data d => d -> u) -> Verbosity -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Verbosity -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Verbosity -> m Verbosity #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Verbosity -> m Verbosity #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Verbosity -> m Verbosity #

Ord Verbosity Source # 
Read Verbosity Source # 
Show Verbosity Source # 

setVerbosity :: Verbosity -> IO () Source #

Set the global verbosity.

getVerbosity :: IO Verbosity Source #

Get the global verbosity. Initially Normal before any calls to setVerbosity.

isNormal :: IO Bool Source #

Used to test if warnings should be output to the user. True if the verbosity is set to Normal or Loud (when --quiet is not specified).

isLoud :: IO Bool Source #

Used to test if status updates should be output to the user. True if the verbosity is set to Loud (when --verbose is specified).

whenNormal :: IO () -> IO () Source #

An action to perform if the verbosity is normal or higher, based on isNormal.

whenLoud :: IO () -> IO () Source #

An action to perform if the verbosity is loud, based on isLoud.