prettyclass-1.0.0.0: Pretty printing class similar to Show.
Safe HaskellSafe
LanguageHaskell98

Text.PrettyPrint.HughesPJClass

Description

Pretty printing class, simlar to Show but nicer looking. Note that the precedence level is a Rational so there is an unlimited number of levels. Based on Text.PrettyPrint.HughesPJ, which is re-exported.

Synopsis

Documentation

class Pretty a where Source #

Pretty printing class. The precedence level is used in a similar way as in the Show class. Minimal complete definition is either pPrintPrec or pPrint.

Minimal complete definition

Nothing

Methods

pPrintPrec :: PrettyLevel -> Rational -> a -> Doc Source #

pPrint :: a -> Doc Source #

pPrintList :: PrettyLevel -> [a] -> Doc Source #

Instances

Instances details
Pretty Bool Source # 
Instance details

Defined in Text.PrettyPrint.HughesPJClass

Methods

pPrintPrec :: PrettyLevel -> Rational -> Bool -> Doc Source #

pPrint :: Bool -> Doc Source #

pPrintList :: PrettyLevel -> [Bool] -> Doc Source #

Pretty Char Source # 
Instance details

Defined in Text.PrettyPrint.HughesPJClass

Methods

pPrintPrec :: PrettyLevel -> Rational -> Char -> Doc Source #

pPrint :: Char -> Doc Source #

pPrintList :: PrettyLevel -> [Char] -> Doc Source #

Pretty Double Source # 
Instance details

Defined in Text.PrettyPrint.HughesPJClass

Methods

pPrintPrec :: PrettyLevel -> Rational -> Double -> Doc Source #

pPrint :: Double -> Doc Source #

pPrintList :: PrettyLevel -> [Double] -> Doc Source #

Pretty Float Source # 
Instance details

Defined in Text.PrettyPrint.HughesPJClass

Methods

pPrintPrec :: PrettyLevel -> Rational -> Float -> Doc Source #

pPrint :: Float -> Doc Source #

pPrintList :: PrettyLevel -> [Float] -> Doc Source #

Pretty Int Source # 
Instance details

Defined in Text.PrettyPrint.HughesPJClass

Methods

pPrintPrec :: PrettyLevel -> Rational -> Int -> Doc Source #

pPrint :: Int -> Doc Source #

pPrintList :: PrettyLevel -> [Int] -> Doc Source #

Pretty Integer Source # 
Instance details

Defined in Text.PrettyPrint.HughesPJClass

Methods

pPrintPrec :: PrettyLevel -> Rational -> Integer -> Doc Source #

pPrint :: Integer -> Doc Source #

pPrintList :: PrettyLevel -> [Integer] -> Doc Source #

Pretty Ordering Source # 
Instance details

Defined in Text.PrettyPrint.HughesPJClass

Methods

pPrintPrec :: PrettyLevel -> Rational -> Ordering -> Doc Source #

pPrint :: Ordering -> Doc Source #

pPrintList :: PrettyLevel -> [Ordering] -> Doc Source #

Pretty () Source # 
Instance details

Defined in Text.PrettyPrint.HughesPJClass

Methods

pPrintPrec :: PrettyLevel -> Rational -> () -> Doc Source #

pPrint :: () -> Doc Source #

pPrintList :: PrettyLevel -> [()] -> Doc Source #

Pretty a => Pretty [a] Source # 
Instance details

Defined in Text.PrettyPrint.HughesPJClass

Methods

pPrintPrec :: PrettyLevel -> Rational -> [a] -> Doc Source #

pPrint :: [a] -> Doc Source #

pPrintList :: PrettyLevel -> [[a]] -> Doc Source #

Pretty a => Pretty (Maybe a) Source # 
Instance details

Defined in Text.PrettyPrint.HughesPJClass

Methods

pPrintPrec :: PrettyLevel -> Rational -> Maybe a -> Doc Source #

pPrint :: Maybe a -> Doc Source #

pPrintList :: PrettyLevel -> [Maybe a] -> Doc Source #

(Pretty a, Pretty b) => Pretty (Either a b) Source # 
Instance details

Defined in Text.PrettyPrint.HughesPJClass

Methods

pPrintPrec :: PrettyLevel -> Rational -> Either a b -> Doc Source #

pPrint :: Either a b -> Doc Source #

pPrintList :: PrettyLevel -> [Either a b] -> Doc Source #

(Pretty a, Pretty b) => Pretty (a, b) Source # 
Instance details

Defined in Text.PrettyPrint.HughesPJClass

Methods

pPrintPrec :: PrettyLevel -> Rational -> (a, b) -> Doc Source #

pPrint :: (a, b) -> Doc Source #

pPrintList :: PrettyLevel -> [(a, b)] -> Doc Source #

(Pretty a, Pretty b, Pretty c) => Pretty (a, b, c) Source # 
Instance details

Defined in Text.PrettyPrint.HughesPJClass

Methods

pPrintPrec :: PrettyLevel -> Rational -> (a, b, c) -> Doc Source #

pPrint :: (a, b, c) -> Doc Source #

pPrintList :: PrettyLevel -> [(a, b, c)] -> Doc Source #

(Pretty a, Pretty b, Pretty c, Pretty d) => Pretty (a, b, c, d) Source # 
Instance details

Defined in Text.PrettyPrint.HughesPJClass

Methods

pPrintPrec :: PrettyLevel -> Rational -> (a, b, c, d) -> Doc Source #

pPrint :: (a, b, c, d) -> Doc Source #

pPrintList :: PrettyLevel -> [(a, b, c, d)] -> Doc Source #

(Pretty a, Pretty b, Pretty c, Pretty d, Pretty e) => Pretty (a, b, c, d, e) Source # 
Instance details

Defined in Text.PrettyPrint.HughesPJClass

Methods

pPrintPrec :: PrettyLevel -> Rational -> (a, b, c, d, e) -> Doc Source #

pPrint :: (a, b, c, d, e) -> Doc Source #

pPrintList :: PrettyLevel -> [(a, b, c, d, e)] -> Doc Source #

(Pretty a, Pretty b, Pretty c, Pretty d, Pretty e, Pretty f) => Pretty (a, b, c, d, e, f) Source # 
Instance details

Defined in Text.PrettyPrint.HughesPJClass

Methods

pPrintPrec :: PrettyLevel -> Rational -> (a, b, c, d, e, f) -> Doc Source #

pPrint :: (a, b, c, d, e, f) -> Doc Source #

pPrintList :: PrettyLevel -> [(a, b, c, d, e, f)] -> Doc Source #

(Pretty a, Pretty b, Pretty c, Pretty d, Pretty e, Pretty f, Pretty g) => Pretty (a, b, c, d, e, f, g) Source # 
Instance details

Defined in Text.PrettyPrint.HughesPJClass

Methods

pPrintPrec :: PrettyLevel -> Rational -> (a, b, c, d, e, f, g) -> Doc Source #

pPrint :: (a, b, c, d, e, f, g) -> Doc Source #

pPrintList :: PrettyLevel -> [(a, b, c, d, e, f, g)] -> Doc Source #

(Pretty a, Pretty b, Pretty c, Pretty d, Pretty e, Pretty f, Pretty g, Pretty h) => Pretty (a, b, c, d, e, f, g, h) Source # 
Instance details

Defined in Text.PrettyPrint.HughesPJClass

Methods

pPrintPrec :: PrettyLevel -> Rational -> (a, b, c, d, e, f, g, h) -> Doc Source #

pPrint :: (a, b, c, d, e, f, g, h) -> Doc Source #

pPrintList :: PrettyLevel -> [(a, b, c, d, e, f, g, h)] -> Doc Source #

newtype PrettyLevel Source #

Level of detail in the pretty printed output. Level 0 is the least detail.

Constructors

PrettyLevel Int 

Instances

Instances details
Eq PrettyLevel Source # 
Instance details

Defined in Text.PrettyPrint.HughesPJClass

Methods

(==) :: PrettyLevel -> PrettyLevel -> Bool

(/=) :: PrettyLevel -> PrettyLevel -> Bool

Ord PrettyLevel Source # 
Instance details

Defined in Text.PrettyPrint.HughesPJClass

Show PrettyLevel Source # 
Instance details

Defined in Text.PrettyPrint.HughesPJClass

Methods

showsPrec :: Int -> PrettyLevel -> ShowS

show :: PrettyLevel -> String

showList :: [PrettyLevel] -> ShowS

prettyShow :: Pretty a => a -> String Source #

Pretty print a value with the prettyNormal level.

prettyParen :: Bool -> Doc -> Doc Source #

Parenthesize an value if the boolean is true.