| Copyright | Ian Lynagh 2007 |
|---|---|
| License | BSD3 |
| Maintainer | cabal-devel@haskell.org |
| Portability | portable |
| Safe Haskell | None |
| Language | Haskell2010 |
Distribution.Verbosity
Description
A Verbosity type with associated utilities.
There are 4 standard verbosity levels from silent, normal,
verbose up to deafening. This is used for deciding what logging
messages to print.
Verbosity also is equipped with some internal settings which can be
used to control at a fine granularity the verbosity of specific
settings (e.g., so that you can trace only particular things you
are interested in.) It's important to note that the instances
for Verbosity assume that this does not exist.
Synopsis
- data Verbosity = Verbosity {}
- data VerbosityHandles = VerbosityHandles {}
- defaultVerbosityHandles :: VerbosityHandles
- data VerbosityLevel
- verbosityLevel :: Verbosity -> VerbosityLevel
- verbosityChosenOutputHandle :: Verbosity -> Handle
- verbosityErrorHandle :: Verbosity -> Handle
- modifyVerbosityFlags :: (VerbosityFlags -> VerbosityFlags) -> Verbosity -> Verbosity
- mkVerbosity :: VerbosityHandles -> VerbosityFlags -> Verbosity
- setVerbosityHandles :: Maybe Handle -> Verbosity -> Verbosity
- data VerbosityFlags
- mkVerbosityFlags :: VerbosityLevel -> VerbosityFlags
- makeVerbose :: VerbosityFlags -> VerbosityFlags
- silent :: VerbosityFlags
- normal :: VerbosityFlags
- verbose :: VerbosityFlags
- deafening :: VerbosityFlags
- moreVerbose :: VerbosityFlags -> VerbosityFlags
- lessVerbose :: VerbosityFlags -> VerbosityFlags
- isVerboseQuiet :: VerbosityFlags -> Bool
- intToVerbosity :: Int -> Maybe VerbosityFlags
- flagToVerbosity :: ReadE VerbosityFlags
- showForCabal :: VerbosityFlags -> String
- showForGHC :: VerbosityFlags -> String
- verboseNoFlags :: VerbosityFlags -> VerbosityFlags
- verboseHasFlags :: VerbosityFlags -> Bool
- verboseCallSite :: VerbosityFlags -> VerbosityFlags
- verboseCallStack :: VerbosityFlags -> VerbosityFlags
- isVerboseCallSite :: VerbosityFlags -> Bool
- isVerboseCallStack :: VerbosityFlags -> Bool
- verboseMarkOutput :: VerbosityFlags -> VerbosityFlags
- isVerboseMarkOutput :: VerbosityFlags -> Bool
- verboseUnmarkOutput :: VerbosityFlags -> VerbosityFlags
- verboseNoWrap :: VerbosityFlags -> VerbosityFlags
- isVerboseNoWrap :: VerbosityFlags -> Bool
- verboseTimestamp :: VerbosityFlags -> VerbosityFlags
- isVerboseTimestamp :: VerbosityFlags -> Bool
- verboseNoTimestamp :: VerbosityFlags -> VerbosityFlags
- verboseStderr :: VerbosityFlags -> VerbosityFlags
- isVerboseStderr :: VerbosityFlags -> Bool
- verboseNoStderr :: VerbosityFlags -> VerbosityFlags
- verboseNoWarn :: VerbosityFlags -> VerbosityFlags
- isVerboseNoWarn :: VerbosityFlags -> Bool
Rich verbosity
Rich verbosity, used for the Cabal library interface.
Constructors
| Verbosity | |
Fields | |
Instances
data VerbosityHandles Source #
Handles to use for logging (e.g. log to stdout, or log to a file).
Constructors
| VerbosityHandles | |
Fields | |
Instances
| Structured VerbosityHandles Source # | |
Defined in Distribution.Verbosity Methods structure :: Proxy VerbosityHandles -> Structure # structureHash' :: Tagged VerbosityHandles MD5 | |
| NFData VerbosityHandles Source # | |
Defined in Distribution.Verbosity Methods rnf :: VerbosityHandles -> () # | |
data VerbosityLevel Source #
Instances
| Structured VerbosityLevel Source # | |||||
Defined in Distribution.Verbosity.Internal | |||||
| Binary VerbosityLevel Source # | |||||
Defined in Distribution.Verbosity.Internal Methods put :: VerbosityLevel -> Put # get :: Get VerbosityLevel # putList :: [VerbosityLevel] -> Put # | |||||
| NFData VerbosityLevel Source # | |||||
Defined in Distribution.Verbosity.Internal Methods rnf :: VerbosityLevel -> () # | |||||
| Bounded VerbosityLevel Source # | |||||
Defined in Distribution.Verbosity.Internal | |||||
| Enum VerbosityLevel Source # | |||||
Defined in Distribution.Verbosity.Internal Methods succ :: VerbosityLevel -> VerbosityLevel # pred :: VerbosityLevel -> VerbosityLevel # toEnum :: Int -> VerbosityLevel # fromEnum :: VerbosityLevel -> Int # enumFrom :: VerbosityLevel -> [VerbosityLevel] # enumFromThen :: VerbosityLevel -> VerbosityLevel -> [VerbosityLevel] # enumFromTo :: VerbosityLevel -> VerbosityLevel -> [VerbosityLevel] # enumFromThenTo :: VerbosityLevel -> VerbosityLevel -> VerbosityLevel -> [VerbosityLevel] # | |||||
| Generic VerbosityLevel Source # | |||||
Defined in Distribution.Verbosity.Internal Associated Types
Methods from :: VerbosityLevel -> Rep VerbosityLevel x # to :: Rep VerbosityLevel x -> VerbosityLevel # | |||||
| Read VerbosityLevel Source # | |||||
Defined in Distribution.Verbosity.Internal Methods readsPrec :: Int -> ReadS VerbosityLevel # readList :: ReadS [VerbosityLevel] # | |||||
| Show VerbosityLevel Source # | |||||
Defined in Distribution.Verbosity.Internal Methods showsPrec :: Int -> VerbosityLevel -> ShowS # show :: VerbosityLevel -> String # showList :: [VerbosityLevel] -> ShowS # | |||||
| Eq VerbosityLevel Source # | |||||
Defined in Distribution.Verbosity.Internal Methods (==) :: VerbosityLevel -> VerbosityLevel -> Bool # (/=) :: VerbosityLevel -> VerbosityLevel -> Bool # | |||||
| Ord VerbosityLevel Source # | |||||
Defined in Distribution.Verbosity.Internal Methods compare :: VerbosityLevel -> VerbosityLevel -> Ordering # (<) :: VerbosityLevel -> VerbosityLevel -> Bool # (<=) :: VerbosityLevel -> VerbosityLevel -> Bool # (>) :: VerbosityLevel -> VerbosityLevel -> Bool # (>=) :: VerbosityLevel -> VerbosityLevel -> Bool # max :: VerbosityLevel -> VerbosityLevel -> VerbosityLevel # min :: VerbosityLevel -> VerbosityLevel -> VerbosityLevel # | |||||
| type Rep VerbosityLevel Source # | |||||
Defined in Distribution.Verbosity.Internal type Rep VerbosityLevel = D1 ('MetaData "VerbosityLevel" "Distribution.Verbosity.Internal" "Cabal-3.18.1.0-inplace" 'False) ((C1 ('MetaCons "Silent" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Normal" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Verbose" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Deafening" 'PrefixI 'False) (U1 :: Type -> Type))) | |||||
verbosityChosenOutputHandle :: Verbosity -> Handle Source #
The handle used for normal output.
With the +stderr verbosity flag, this is the error handle.
verbosityErrorHandle :: Verbosity -> Handle Source #
The verbosity handle used for error output.
modifyVerbosityFlags :: (VerbosityFlags -> VerbosityFlags) -> Verbosity -> Verbosity Source #
Verbosity flags
data VerbosityFlags Source #
Verbosity information which can be passed by the CLI.
Instances
| Parsec VerbosityFlags Source # | Parser verbosity
Note: this parser will eat trailing spaces. | ||||
Defined in Distribution.Verbosity Methods parsec :: CabalParsing m => m VerbosityFlags # | |||||
| Pretty VerbosityFlags Source # | |||||
Defined in Distribution.Verbosity Methods pretty :: VerbosityFlags -> Doc # prettyVersioned :: CabalSpecVersion -> VerbosityFlags -> Doc # | |||||
| Structured VerbosityFlags Source # | |||||
Defined in Distribution.Verbosity | |||||
| Binary VerbosityFlags Source # | |||||
Defined in Distribution.Verbosity Methods put :: VerbosityFlags -> Put # get :: Get VerbosityFlags # putList :: [VerbosityFlags] -> Put # | |||||
| NFData VerbosityFlags Source # | |||||
Defined in Distribution.Verbosity Methods rnf :: VerbosityFlags -> () # | |||||
| Generic VerbosityFlags Source # | |||||
Defined in Distribution.Verbosity Associated Types
Methods from :: VerbosityFlags -> Rep VerbosityFlags x # to :: Rep VerbosityFlags x -> VerbosityFlags # | |||||
| Read VerbosityFlags Source # | |||||
Defined in Distribution.Verbosity Methods readsPrec :: Int -> ReadS VerbosityFlags # readList :: ReadS [VerbosityFlags] # | |||||
| Show VerbosityFlags Source # | |||||
Defined in Distribution.Verbosity Methods showsPrec :: Int -> VerbosityFlags -> ShowS # show :: VerbosityFlags -> String # showList :: [VerbosityFlags] -> ShowS # | |||||
| Eq VerbosityFlags Source # | |||||
Defined in Distribution.Verbosity Methods (==) :: VerbosityFlags -> VerbosityFlags -> Bool # (/=) :: VerbosityFlags -> VerbosityFlags -> Bool # | |||||
| type Rep VerbosityFlags Source # | |||||
Defined in Distribution.Verbosity type Rep VerbosityFlags = D1 ('MetaData "VerbosityFlags" "Distribution.Verbosity" "Cabal-3.18.1.0-inplace" 'False) (C1 ('MetaCons "VerbosityFlags" 'PrefixI 'True) (S1 ('MetaSel ('Just "vLevel") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 VerbosityLevel) :*: (S1 ('MetaSel ('Just "vFlags") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Set VerbosityFlag)) :*: S1 ('MetaSel ('Just "vQuiet") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool)))) | |||||
silent :: VerbosityFlags Source #
In silent mode, we should not print anything unless an error occurs.
normal :: VerbosityFlags Source #
Print stuff we want to see by default.
verbose :: VerbosityFlags Source #
Be more verbose about what's going on.
deafening :: VerbosityFlags Source #
Not only are we verbose ourselves (perhaps even noisier than when
being verbose), but we tell everything we run to be verbose too.
moreVerbose :: VerbosityFlags -> VerbosityFlags Source #
Increase verbosity level, but stay silent if we are.
lessVerbose :: VerbosityFlags -> VerbosityFlags Source #
Decrease verbosity level, but stay deafening if we are.
isVerboseQuiet :: VerbosityFlags -> Bool Source #
Test if we had called lessVerbose on the verbosity.
intToVerbosity :: Int -> Maybe VerbosityFlags Source #
showForCabal :: VerbosityFlags -> String Source #
showForGHC :: VerbosityFlags -> String Source #
verboseNoFlags :: VerbosityFlags -> VerbosityFlags Source #
Turn off all flags.
verboseHasFlags :: VerbosityFlags -> Bool Source #
Call stacks
verboseCallSite :: VerbosityFlags -> VerbosityFlags Source #
Turn on verbose call-site printing when we log.
verboseCallStack :: VerbosityFlags -> VerbosityFlags Source #
Turn on verbose call-stack printing when we log.
isVerboseCallSite :: VerbosityFlags -> Bool Source #
Test if we should output call sites when we log.
isVerboseCallStack :: VerbosityFlags -> Bool Source #
Test if we should output call stacks when we log.
Output markers
verboseMarkOutput :: VerbosityFlags -> VerbosityFlags Source #
Turn on -----BEGIN CABAL OUTPUT----- markers for output
from Cabal (as opposed to GHC, or system dependent).
isVerboseMarkOutput :: VerbosityFlags -> Bool Source #
Test if we should output markers.
verboseUnmarkOutput :: VerbosityFlags -> VerbosityFlags Source #
Turn off marking; useful for suppressing nondeterministic output.
Line wrapping
verboseNoWrap :: VerbosityFlags -> VerbosityFlags Source #
Disable line-wrapping for log messages.
isVerboseNoWrap :: VerbosityFlags -> Bool Source #
Test if line-wrapping is disabled for log messages.
Time stamps
verboseTimestamp :: VerbosityFlags -> VerbosityFlags Source #
Turn on timestamps for log messages.
isVerboseTimestamp :: VerbosityFlags -> Bool Source #
Test if we should output timestamps when we log.
verboseNoTimestamp :: VerbosityFlags -> VerbosityFlags Source #
Turn off timestamps for log messages.
Stderr
verboseStderr :: VerbosityFlags -> VerbosityFlags Source #
Switch logging to stderr.
Since: 3.4.0.0
isVerboseStderr :: VerbosityFlags -> Bool Source #
Test if we should output to stderr when we log.
Since: 3.4.0.0
verboseNoStderr :: VerbosityFlags -> VerbosityFlags Source #
Switch logging to stdout.
Since: 3.4.0.0
No warnings
verboseNoWarn :: VerbosityFlags -> VerbosityFlags Source #
Turn off warnings for log messages.
isVerboseNoWarn :: VerbosityFlags -> Bool Source #
Test if we should output warnings when we log.