-- 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


-- | <i>Deprecated: Compatibility module for users of ansi-wl-pprint - use
--   <a>Prettyprinter</a> instead</i>
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.
--   
--   <h4><b>Examples</b></h4>
--   
--   <pre>
--   &gt;&gt;&gt; [1,2,3] &lt;&gt; [4,5,6]
--   [1,2,3,4,5,6]
--   </pre>
--   
--   <pre>
--   &gt;&gt;&gt; Just [1, 2, 3] &lt;&gt; Just [4, 5, 6]
--   Just [1,2,3,4,5,6]
--   </pre>
--   
--   <pre>
--   &gt;&gt;&gt; putStr "Hello, " &lt;&gt; putStrLn "World!"
--   Hello, World!
--   </pre>
(<>) :: 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 <a>Doc</a>.
--   
--   Laws:
--   
--   <ol>
--   <li>output should be pretty. :-)</li>
--   </ol>
class Pretty a

-- | <pre>
--   &gt;&gt;&gt; pretty 1 &lt;+&gt; pretty "hello" &lt;+&gt; pretty 1.234
--   1 hello 1.234
--   </pre>
pretty :: Pretty a => a -> Doc ann
($dmpretty) :: (Pretty a, Show a) => a -> Doc ann

-- | <tt><a>prettyList</a></tt> is only used to define the <tt>instance
--   <a>Pretty</a> a =&gt; <a>Pretty</a> [a]</tt>. In normal circumstances
--   only the <tt><a>pretty</a></tt> function is used.
--   
--   <pre>
--   &gt;&gt;&gt; prettyList [1, 23, 456]
--   [1, 23, 456]
--   </pre>
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
