-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/

-- | Drop-in compatibility package to migrate from »ansi-wl-pprint« to »prettyprinter«.
--   
--   See README.md
@package prettyprinter-compat-ansi-wl-pprint
@version 1.0.2

-- | Deprecated: Compatibility module for users of ansi-wl-pprint - use
--   Prettyprinter instead
module Text.PrettyPrint.ANSI.Leijen
type Doc = Doc AnsiStyle
putDoc :: Doc -> IO ()
hPutDoc :: Handle -> Doc -> IO ()
empty :: Doc
char :: Char -> Doc
text :: String -> Doc

-- | An associative operation.
--   
--   
Examples
--   
--   
--   >>> [1,2,3] <> [4,5,6]
--   [1,2,3,4,5,6]
--   
--   
--   
--   >>> Just [1, 2, 3] <> Just [4, 5, 6]
--   Just [1,2,3,4,5,6]
--   
--   
--   
--   >>> putStr "Hello, " <> putStrLn "World!"
--   Hello, World!
--   
(<>) :: Semigroup a => a -> a -> a
infixr 6 <>
nest :: Int -> Doc -> Doc
line :: Doc
linebreak :: Doc
group :: Doc -> Doc
softline :: Doc
softbreak :: Doc
hardline :: Doc
flatAlt :: Doc -> Doc -> Doc
renderSmart :: Float -> Int -> Doc -> SimpleDoc
align :: Doc -> Doc
hang :: Int -> Doc -> Doc
indent :: Int -> Doc -> Doc
encloseSep :: Doc -> Doc -> Doc -> [Doc] -> Doc
list :: [Doc] -> Doc
tupled :: [Doc] -> Doc
semiBraces :: [Doc] -> Doc
(<+>) :: Doc -> Doc -> Doc
(<$>) :: Doc -> Doc -> Doc
(</>) :: Doc -> Doc -> Doc
(<$$>) :: Doc -> Doc -> Doc
(<//>) :: Doc -> Doc -> Doc
hsep :: [Doc] -> Doc
vsep :: [Doc] -> Doc
fillSep :: [Doc] -> Doc
sep :: [Doc] -> Doc
hcat :: [Doc] -> Doc
vcat :: [Doc] -> Doc
fillCat :: [Doc] -> Doc
cat :: [Doc] -> Doc
punctuate :: Doc -> [Doc] -> [Doc]
fill :: Int -> Doc -> Doc
fillBreak :: Int -> Doc -> Doc
enclose :: Doc -> Doc -> Doc -> Doc
squotes :: Doc -> Doc
dquotes :: Doc -> Doc
parens :: Doc -> Doc
angles :: Doc -> Doc
braces :: Doc -> Doc
brackets :: Doc -> Doc
lparen :: Doc
rparen :: Doc
langle :: Doc
rangle :: Doc
lbrace :: Doc
rbrace :: Doc
lbracket :: Doc
rbracket :: Doc
squote :: Doc
dquote :: Doc
semi :: Doc
colon :: Doc
comma :: Doc
space :: Doc
dot :: Doc
backslash :: Doc
equals :: Doc
black :: Doc -> Doc
red :: Doc -> Doc
green :: Doc -> Doc
yellow :: Doc -> Doc
blue :: Doc -> Doc
magenta :: Doc -> Doc
cyan :: Doc -> Doc
white :: Doc -> Doc
dullblack :: Doc -> Doc
dullred :: Doc -> Doc
dullgreen :: Doc -> Doc
dullyellow :: Doc -> Doc
dullblue :: Doc -> Doc
dullmagenta :: Doc -> Doc
dullcyan :: Doc -> Doc
dullwhite :: Doc -> Doc
onblack :: Doc -> Doc
onred :: Doc -> Doc
ongreen :: Doc -> Doc
onyellow :: Doc -> Doc
onblue :: Doc -> Doc
onmagenta :: Doc -> Doc
oncyan :: Doc -> Doc
onwhite :: Doc -> Doc
ondullblack :: Doc -> Doc
ondullred :: Doc -> Doc
ondullgreen :: Doc -> Doc
ondullyellow :: Doc -> Doc
ondullblue :: Doc -> Doc
ondullmagenta :: Doc -> Doc
ondullcyan :: Doc -> Doc
ondullwhite :: Doc -> Doc
bold :: Doc -> Doc
debold :: Doc -> Doc
underline :: Doc -> Doc
deunderline :: Doc -> Doc
plain :: Doc -> Doc
string :: String -> Doc
int :: Int -> Doc
integer :: Integer -> Doc
float :: Float -> Doc
double :: Double -> Doc
rational :: Rational -> Doc

-- | Overloaded conversion to Doc.
--   
--   Laws:
--   
--   
--   
- output should be pretty. :-)
--   
class Pretty a

-- | 
--   >>> pretty 1 <+> pretty "hello" <+> pretty 1.234
--   1 hello 1.234
--   
pretty :: Pretty a => a -> Doc ann
($dmpretty) :: (Pretty a, Show a) => a -> Doc ann

-- | prettyList is only used to define the instance
--   Pretty a => Pretty [a]. In normal circumstances
--   only the pretty function is used.
--   
--   
--   >>> prettyList [1, 23, 456]
--   [1, 23, 456]
--   
prettyList :: Pretty a => [a] -> Doc ann
type SimpleDoc = SimpleDocStream AnsiStyle
renderPretty :: Float -> Int -> Doc -> SimpleDoc
renderCompact :: Doc -> SimpleDoc
displayS :: SimpleDoc -> ShowS
displayIO :: Handle -> SimpleDoc -> IO ()
bool :: Bool -> Doc
column :: (Int -> Doc) -> Doc
columns :: (Maybe Int -> Doc) -> Doc
nesting :: (Int -> Doc) -> Doc
width :: Doc -> (Int -> Doc) -> Doc
