-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Simple enum that encodes application verbosity. -- -- Simple enum that encodes application verbosity with various useful -- instances. @package verbosity @version 0.2.2.0 -- | Simple enum that encodes application Verbosity. module Data.Verbosity -- | Ordering: -- --
-- Silent < Normal < Verbose < Annoying ---- -- Bounds: -- --
-- minBound = Silent; maxBound = Annoying ---- -- Enum: -- --
-- map fromEnum [Silent .. Annoying] = [0, 1, 2, 3] --data Verbosity -- | Don't print any messages. Silent :: Verbosity -- | Print only important messages. (default) Normal :: Verbosity -- | Print anything that comes in to mind. Verbose :: Verbosity -- | Print debugging/tracing information. Annoying :: Verbosity -- | Increment verbosity level. Return Nothing if trying to icrement -- beyond maxBound. increment :: Verbosity -> Maybe Verbosity -- | Variant of increment that doesn't fail when maxBound is -- reached. It is defined as: -- --
-- increment' v = fromMaybe v (increment v) --increment' :: Verbosity -> Verbosity -- | Safe version of toEnum specialized to Verbosity. fromInt :: Int -> Maybe Verbosity -- | Generic Verbosity parsing function. -- -- Use case-insensitive package to make this function case -- insensitive: -- --
-- ghci> import Data.Verbosity as Verbosity -- ghci> import qualified Data.CaseInsensitive as CI (mk) -- ghci> Verbosity.parse (CI.mk "silent") -- Just Silent --parse :: (Eq string, IsString string) => string -> Maybe Verbosity instance Data.Data.Data Data.Verbosity.Verbosity instance GHC.Generics.Generic Data.Verbosity.Verbosity instance GHC.Show.Show Data.Verbosity.Verbosity instance GHC.Read.Read Data.Verbosity.Verbosity instance GHC.Classes.Ord Data.Verbosity.Verbosity instance GHC.Classes.Eq Data.Verbosity.Verbosity instance GHC.Enum.Enum Data.Verbosity.Verbosity instance GHC.Enum.Bounded Data.Verbosity.Verbosity instance Data.Default.Class.Default Data.Verbosity.Verbosity instance Data.Binary.Class.Binary Data.Verbosity.Verbosity instance Control.DeepSeq.NFData Data.Verbosity.Verbosity -- | Type class for accessing Verbosity. module Data.Verbosity.Class class HasVerbosity s -- | Lens for accessing Verbosity. verbosity :: (HasVerbosity s, Functor f) => (Verbosity -> f Verbosity) -> s -> f s -- | Specialization of verbosity lens in to getter function. getVerbosity :: HasVerbosity s => s -> Verbosity -- | Specialization of verbosity lens in to setter function. setVerbosity :: HasVerbosity s => Verbosity -> s -> s instance Data.Verbosity.Class.HasVerbosity Data.Verbosity.Verbosity