<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <!--Rendered using the Haskell Html Library v0.2--> <HTML ><HEAD ><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8" ><TITLE >Printer</TITLE ><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css" ><SCRIPT SRC="haddock-util.js" TYPE="text/javascript" ></SCRIPT ><SCRIPT TYPE="text/javascript" >window.onload = function () {setSynopsis("mini_Printer.html")};</SCRIPT ></HEAD ><BODY ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="topbar" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title" >darcs-2.4.4: a distributed, interactive, smart revision control system</TD ><TD CLASS="topbut" ><A HREF="index.html" >Contents</A ></TD ><TD CLASS="topbut" ><A HREF="doc-index.html" >Index</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="modulebar" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD ><FONT SIZE="6" >Printer</FONT ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section1" >Synopsis</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3APrintable" >Printable</A > </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AS" >S</A > !<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APS" >PS</A > !<A HREF="/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5/Data-ByteString.html#t%3AByteString" >ByteString</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ABoth" >Both</A > !<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A > !<A HREF="/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5/Data-ByteString.html#t%3AByteString" >ByteString</A ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >newtype</SPAN > <A HREF="#t%3ADoc" >Doc</A > = <A HREF="#v%3ADoc" >Doc</A > {<TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="recfield" ><A HREF="#v%3AunDoc" >unDoc</A > :: St -> Document</TD ></TR ></TABLE >}</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A HREF="#t%3APrinters" >Printers</A > = <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/GHC-IO-Handle.html#t%3AHandle" >Handle</A > -> <A HREF="Printer.html#t%3APrinters%27" >Printers'</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3APrinters%27" >Printers'</A > = <A HREF="#v%3APrinters" >Printers</A > {<TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="recfield" ><A HREF="#v%3AcolorP" >colorP</A > :: !(<A HREF="Printer.html#t%3AColor" >Color</A > -> <A HREF="Printer.html#t%3APrinter" >Printer</A >)</TD ></TR ><TR ><TD CLASS="recfield" ><A HREF="#v%3AinvisibleP" >invisibleP</A > :: !<A HREF="Printer.html#t%3APrinter" >Printer</A ></TD ></TR ><TR ><TD CLASS="recfield" ><A HREF="#v%3AhiddenP" >hiddenP</A > :: !<A HREF="Printer.html#t%3APrinter" >Printer</A ></TD ></TR ><TR ><TD CLASS="recfield" ><A HREF="#v%3AuserchunkP" >userchunkP</A > :: !<A HREF="Printer.html#t%3APrinter" >Printer</A ></TD ></TR ><TR ><TD CLASS="recfield" ><A HREF="#v%3AdefP" >defP</A > :: !<A HREF="Printer.html#t%3APrinter" >Printer</A ></TD ></TR ><TR ><TD CLASS="recfield" ><A HREF="#v%3AlineColorT" >lineColorT</A > :: !(<A HREF="Printer.html#t%3AColor" >Color</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A >)</TD ></TR ><TR ><TD CLASS="recfield" ><A HREF="#v%3AlineColorS" >lineColorS</A > :: !([<A HREF="Printer.html#t%3APrintable" >Printable</A >] -> [<A HREF="Printer.html#t%3APrintable" >Printable</A >])</TD ></TR ></TABLE >}</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A HREF="#t%3APrinter" >Printer</A > = <A HREF="Printer.html#t%3APrintable" >Printable</A > -> St -> Document</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AColor" >Color</A > </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3ABlue" >Blue</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ARed" >Red</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AGreen" >Green</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ACyan" >Cyan</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AMagenta" >Magenta</A ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AhPutDoc" >hPutDoc</A > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/GHC-IO-Handle.html#t%3AHandle" >Handle</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/System-IO.html#t%3AIO" >IO</A > <A HREF="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29" >()</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AhPutDocLn" >hPutDocLn</A > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/GHC-IO-Handle.html#t%3AHandle" >Handle</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/System-IO.html#t%3AIO" >IO</A > <A HREF="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29" >()</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AputDoc" >putDoc</A > :: <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/System-IO.html#t%3AIO" >IO</A > <A HREF="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29" >()</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AputDocLn" >putDocLn</A > :: <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/System-IO.html#t%3AIO" >IO</A > <A HREF="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29" >()</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AhPutDocWith" >hPutDocWith</A > :: <A HREF="Printer.html#t%3APrinters" >Printers</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/GHC-IO-Handle.html#t%3AHandle" >Handle</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/System-IO.html#t%3AIO" >IO</A > <A HREF="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29" >()</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AhPutDocLnWith" >hPutDocLnWith</A > :: <A HREF="Printer.html#t%3APrinters" >Printers</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/GHC-IO-Handle.html#t%3AHandle" >Handle</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/System-IO.html#t%3AIO" >IO</A > <A HREF="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29" >()</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AputDocWith" >putDocWith</A > :: <A HREF="Printer.html#t%3APrinters" >Printers</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/System-IO.html#t%3AIO" >IO</A > <A HREF="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29" >()</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AputDocLnWith" >putDocLnWith</A > :: <A HREF="Printer.html#t%3APrinters" >Printers</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/System-IO.html#t%3AIO" >IO</A > <A HREF="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29" >()</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ArenderString" >renderString</A > :: <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ArenderStringWith" >renderStringWith</A > :: <A HREF="Printer.html#t%3APrinters%27" >Printers'</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ArenderPS" >renderPS</A > :: <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5/Data-ByteString.html#t%3AByteString" >ByteString</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ArenderPSWith" >renderPSWith</A > :: <A HREF="Printer.html#t%3APrinters%27" >Printers'</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5/Data-ByteString.html#t%3AByteString" >ByteString</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ArenderPSs" >renderPSs</A > :: <A HREF="Printer.html#t%3ADoc" >Doc</A > -> [<A HREF="/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5/Data-ByteString.html#t%3AByteString" >ByteString</A >]</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ArenderPSsWith" >renderPSsWith</A > :: <A HREF="Printer.html#t%3APrinters%27" >Printers'</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A > -> [<A HREF="/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5/Data-ByteString.html#t%3AByteString" >ByteString</A >]</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AlineColor" >lineColor</A > :: <A HREF="Printer.html#t%3AColor" >Color</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Aprefix" >prefix</A > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Ainsert_before_lastline" >insert_before_lastline</A > :: <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AcolorText" >colorText</A > :: <A HREF="Printer.html#t%3AColor" >Color</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AinvisibleText" >invisibleText</A > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AhiddenText" >hiddenText</A > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AhiddenPrefix" >hiddenPrefix</A > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Auserchunk" >userchunk</A > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Atext" >text</A > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Aprintable" >printable</A > :: <A HREF="Printer.html#t%3APrintable" >Printable</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Awrap_text" >wrap_text</A > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Int.html#t%3AInt" >Int</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AblueText" >blueText</A > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AredText" >redText</A > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AgreenText" >greenText</A > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AmagentaText" >magentaText</A > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AcyanText" >cyanText</A > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AunsafeText" >unsafeText</A > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AunsafeBoth" >unsafeBoth</A > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5/Data-ByteString.html#t%3AByteString" >ByteString</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AunsafeBothText" >unsafeBothText</A > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AunsafeChar" >unsafeChar</A > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AChar" >Char</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AinvisiblePS" >invisiblePS</A > :: <A HREF="/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5/Data-ByteString.html#t%3AByteString" >ByteString</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ApackedString" >packedString</A > :: <A HREF="/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5/Data-ByteString.html#t%3AByteString" >ByteString</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AunsafePackedString" >unsafePackedString</A > :: <A HREF="/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5/Data-ByteString.html#t%3AByteString" >ByteString</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AuserchunkPS" >userchunkPS</A > :: <A HREF="/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5/Data-ByteString.html#t%3AByteString" >ByteString</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AsimplePrinters" >simplePrinters</A > :: <A HREF="Printer.html#t%3APrinters" >Printers</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AinvisiblePrinter" >invisiblePrinter</A > :: <A HREF="Printer.html#t%3APrinter" >Printer</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AsimplePrinter" >simplePrinter</A > :: <A HREF="Printer.html#t%3APrinter" >Printer</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Adoc" >doc</A > :: ([<A HREF="Printer.html#t%3APrintable" >Printable</A >] -> [<A HREF="Printer.html#t%3APrintable" >Printable</A >]) -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Aempty" >empty</A > :: <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3A%3C%3E" >(<>)</A > :: <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3A%3C%3F%3E" >(<?>)</A > :: <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3A%3C%2B%3E" >(<+>)</A > :: <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3A%24%24" >($$)</A > :: <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Avcat" >vcat</A > :: [<A HREF="Printer.html#t%3ADoc" >Doc</A >] -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Avsep" >vsep</A > :: [<A HREF="Printer.html#t%3ADoc" >Doc</A >] -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Ahcat" >hcat</A > :: [<A HREF="Printer.html#t%3ADoc" >Doc</A >] -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Aminus" >minus</A > :: <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Anewline" >newline</A > :: <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Aplus" >plus</A > :: <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Aspace" >space</A > :: <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Abackslash" >backslash</A > :: <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Alparen" >lparen</A > :: <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Arparen" >rparen</A > :: <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Aparens" >parens</A > :: <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AerrorDoc" >errorDoc</A > :: <A HREF="Printer.html#t%3ADoc" >Doc</A > -> a</TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section1" >Documentation</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:Printable" ><A NAME="t%3APrintable" ></A ></A ><B >Printable</B > </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >A <TT ><A HREF="Printer.html#t%3APrintable" >Printable</A ></TT > is either a String, a packed string, or a chunk of text with both representations. </TD ></TR ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:S" ><A NAME="v%3AS" ></A ></A ><B >S</B > !<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PS" ><A NAME="v%3APS" ></A ></A ><B >PS</B > !<A HREF="/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5/Data-ByteString.html#t%3AByteString" >ByteString</A ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:Both" ><A NAME="v%3ABoth" ></A ></A ><B >Both</B > !<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A > !<A HREF="/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5/Data-ByteString.html#t%3AByteString" >ByteString</A ></TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >newtype</SPAN > <A NAME="t:Doc" ><A NAME="t%3ADoc" ></A ></A ><B >Doc</B > </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >a <TT ><A HREF="Printer.html#t%3ADoc" >Doc</A ></TT > is a bit of enriched text. <TT ><A HREF="Printer.html#t%3ADoc" >Doc</A ></TT >s get concatanated using <TT ><A HREF="Printer.html#v%3A%3C%3E" ><></A ></TT >, which is right-associative. </TD ></TR ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="5" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:Doc" ><A NAME="v%3ADoc" ></A ></A ><B >Doc</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="body" COLSPAN="2" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:unDoc" ><A NAME="v%3AunDoc" ></A ></A ><B >unDoc</B > :: St -> Document</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Doc')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:Doc" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Text-Show.html#t%3AShow" >Show</A > <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A NAME="t:Printers" ><A NAME="t%3APrinters" ></A ></A ><B >Printers</B > = <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/GHC-IO-Handle.html#t%3AHandle" >Handle</A > -> <A HREF="Printer.html#t%3APrinters%27" >Printers'</A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:Printers'" ><A NAME="t%3APrinters%27" ></A ></A ><B >Printers'</B > </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >A set of printers to print different types of text to a handle. </TD ></TR ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="5" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:Printers" ><A NAME="v%3APrinters" ></A ></A ><B >Printers</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="body" COLSPAN="2" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:colorP" ><A NAME="v%3AcolorP" ></A ></A ><B >colorP</B > :: !(<A HREF="Printer.html#t%3AColor" >Color</A > -> <A HREF="Printer.html#t%3APrinter" >Printer</A >)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:invisibleP" ><A NAME="v%3AinvisibleP" ></A ></A ><B >invisibleP</B > :: !<A HREF="Printer.html#t%3APrinter" >Printer</A ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:hiddenP" ><A NAME="v%3AhiddenP" ></A ></A ><B >hiddenP</B > :: !<A HREF="Printer.html#t%3APrinter" >Printer</A ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:userchunkP" ><A NAME="v%3AuserchunkP" ></A ></A ><B >userchunkP</B > :: !<A HREF="Printer.html#t%3APrinter" >Printer</A ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:defP" ><A NAME="v%3AdefP" ></A ></A ><B >defP</B > :: !<A HREF="Printer.html#t%3APrinter" >Printer</A ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:lineColorT" ><A NAME="v%3AlineColorT" ></A ></A ><B >lineColorT</B > :: !(<A HREF="Printer.html#t%3AColor" >Color</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A >)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:lineColorS" ><A NAME="v%3AlineColorS" ></A ></A ><B >lineColorS</B > :: !([<A HREF="Printer.html#t%3APrintable" >Printable</A >] -> [<A HREF="Printer.html#t%3APrintable" >Printable</A >])</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A NAME="t:Printer" ><A NAME="t%3APrinter" ></A ></A ><B >Printer</B > = <A HREF="Printer.html#t%3APrintable" >Printable</A > -> St -> Document</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:Color" ><A NAME="t%3AColor" ></A ></A ><B >Color</B > </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:Blue" ><A NAME="v%3ABlue" ></A ></A ><B >Blue</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:Red" ><A NAME="v%3ARed" ></A ></A ><B >Red</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:Green" ><A NAME="v%3AGreen" ></A ></A ><B >Green</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:Cyan" ><A NAME="v%3ACyan" ></A ></A ><B >Cyan</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:Magenta" ><A NAME="v%3AMagenta" ></A ></A ><B >Magenta</B ></TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:hPutDoc" ><A NAME="v%3AhPutDoc" ></A ></A ><B >hPutDoc</B > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/GHC-IO-Handle.html#t%3AHandle" >Handle</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/System-IO.html#t%3AIO" >IO</A > <A HREF="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29" >()</A ></TD ></TR ><TR ><TD CLASS="doc" >hputDoc puts a doc on the given handle using <TT ><A HREF="Printer.html#v%3AsimplePrinters" >simplePrinters</A ></TT > </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:hPutDocLn" ><A NAME="v%3AhPutDocLn" ></A ></A ><B >hPutDocLn</B > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/GHC-IO-Handle.html#t%3AHandle" >Handle</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/System-IO.html#t%3AIO" >IO</A > <A HREF="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29" >()</A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:putDoc" ><A NAME="v%3AputDoc" ></A ></A ><B >putDoc</B > :: <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/System-IO.html#t%3AIO" >IO</A > <A HREF="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29" >()</A ></TD ></TR ><TR ><TD CLASS="doc" ><TT ><A HREF="Printer.html#v%3AputDoc" >putDoc</A ></TT > puts a doc on stdout using the simple printer <TT ><A HREF="Printer.html#v%3AsimplePrinters" >simplePrinters</A ></TT >. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:putDocLn" ><A NAME="v%3AputDocLn" ></A ></A ><B >putDocLn</B > :: <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/System-IO.html#t%3AIO" >IO</A > <A HREF="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29" >()</A ></TD ></TR ><TR ><TD CLASS="doc" ><TT ><A HREF="Printer.html#v%3AputDocLn" >putDocLn</A ></TT > puts a doc, followed by a newline on stdout using <TT ><A HREF="Printer.html#v%3AsimplePrinters" >simplePrinters</A ></TT > </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:hPutDocWith" ><A NAME="v%3AhPutDocWith" ></A ></A ><B >hPutDocWith</B > :: <A HREF="Printer.html#t%3APrinters" >Printers</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/GHC-IO-Handle.html#t%3AHandle" >Handle</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/System-IO.html#t%3AIO" >IO</A > <A HREF="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29" >()</A ></TD ></TR ><TR ><TD CLASS="doc" >hputDocWith puts a doc on the given handle using the given printer. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:hPutDocLnWith" ><A NAME="v%3AhPutDocLnWith" ></A ></A ><B >hPutDocLnWith</B > :: <A HREF="Printer.html#t%3APrinters" >Printers</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/GHC-IO-Handle.html#t%3AHandle" >Handle</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/System-IO.html#t%3AIO" >IO</A > <A HREF="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29" >()</A ></TD ></TR ><TR ><TD CLASS="doc" >hputDocLnWith puts a doc, followed by a newline on the given handle using the given printer. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:putDocWith" ><A NAME="v%3AputDocWith" ></A ></A ><B >putDocWith</B > :: <A HREF="Printer.html#t%3APrinters" >Printers</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/System-IO.html#t%3AIO" >IO</A > <A HREF="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29" >()</A ></TD ></TR ><TR ><TD CLASS="doc" ><TT ><A HREF="Printer.html#v%3AputDocWith" >putDocWith</A ></TT > puts a doc on stdout using the given printer. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:putDocLnWith" ><A NAME="v%3AputDocLnWith" ></A ></A ><B >putDocLnWith</B > :: <A HREF="Printer.html#t%3APrinters" >Printers</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/System-IO.html#t%3AIO" >IO</A > <A HREF="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29" >()</A ></TD ></TR ><TR ><TD CLASS="doc" ><TT ><A HREF="Printer.html#v%3AputDocLnWith" >putDocLnWith</A ></TT > puts a doc, followed by a newline on stdout using the given printer. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:renderString" ><A NAME="v%3ArenderString" ></A ></A ><B >renderString</B > :: <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A ></TD ></TR ><TR ><TD CLASS="doc" >renders a <TT ><A HREF="Printer.html#t%3ADoc" >Doc</A ></TT > into a <TT ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A ></TT > with control codes for the special features of the doc. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:renderStringWith" ><A NAME="v%3ArenderStringWith" ></A ></A ><B >renderStringWith</B > :: <A HREF="Printer.html#t%3APrinters%27" >Printers'</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A ></TD ></TR ><TR ><TD CLASS="doc" >renders a <TT ><A HREF="Printer.html#t%3ADoc" >Doc</A ></TT > into a <TT ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A ></TT > using a given set of printers. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:renderPS" ><A NAME="v%3ArenderPS" ></A ></A ><B >renderPS</B > :: <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5/Data-ByteString.html#t%3AByteString" >ByteString</A ></TD ></TR ><TR ><TD CLASS="doc" >renders a <TT ><A HREF="Printer.html#t%3ADoc" >Doc</A ></TT > into <TT ><A HREF="/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5/Data-ByteString.html#t%3AByteString" >ByteString</A ></TT > with control codes for the special features of the Doc. See also readerString. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:renderPSWith" ><A NAME="v%3ArenderPSWith" ></A ></A ><B >renderPSWith</B > :: <A HREF="Printer.html#t%3APrinters%27" >Printers'</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5/Data-ByteString.html#t%3AByteString" >ByteString</A ></TD ></TR ><TR ><TD CLASS="doc" >renders a doc into a <TT ><A HREF="/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5/Data-ByteString.html#t%3AByteString" >ByteString</A ></TT > using a given set of printers. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:renderPSs" ><A NAME="v%3ArenderPSs" ></A ></A ><B >renderPSs</B > :: <A HREF="Printer.html#t%3ADoc" >Doc</A > -> [<A HREF="/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5/Data-ByteString.html#t%3AByteString" >ByteString</A >]</TD ></TR ><TR ><TD CLASS="doc" >renders a <TT ><A HREF="Printer.html#t%3ADoc" >Doc</A ></TT > into a list of PackedStrings, one for each line. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:renderPSsWith" ><A NAME="v%3ArenderPSsWith" ></A ></A ><B >renderPSsWith</B > :: <A HREF="Printer.html#t%3APrinters%27" >Printers'</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A > -> [<A HREF="/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5/Data-ByteString.html#t%3AByteString" >ByteString</A >]</TD ></TR ><TR ><TD CLASS="doc" >renders a <TT ><A HREF="Printer.html#t%3ADoc" >Doc</A ></TT > into a list of PackedStrings, one for each chunk of text that was added to the doc, using the given set of printers. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:lineColor" ><A NAME="v%3AlineColor" ></A ></A ><B >lineColor</B > :: <A HREF="Printer.html#t%3AColor" >Color</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:prefix" ><A NAME="v%3Aprefix" ></A ></A ><B >prefix</B > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:insert_before_lastline" ><A NAME="v%3Ainsert_before_lastline" ></A ></A ><B >insert_before_lastline</B > :: <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:colorText" ><A NAME="v%3AcolorText" ></A ></A ><B >colorText</B > :: <A HREF="Printer.html#t%3AColor" >Color</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="doc" ><TT ><A HREF="Printer.html#v%3AcolorText" >colorText</A ></TT > creates a <TT ><A HREF="Printer.html#t%3ADoc" >Doc</A ></TT > containing colored text from a <TT >String</TT > </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:invisibleText" ><A NAME="v%3AinvisibleText" ></A ></A ><B >invisibleText</B > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="doc" ><TT ><A HREF="Printer.html#v%3AinvisibleText" >invisibleText</A ></TT > creates a <TT ><A HREF="Printer.html#t%3ADoc" >Doc</A ></TT > containing invisible text from a <TT >String</TT > </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:hiddenText" ><A NAME="v%3AhiddenText" ></A ></A ><B >hiddenText</B > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="doc" ><TT ><A HREF="Printer.html#v%3AhiddenText" >hiddenText</A ></TT > creates a <TT ><A HREF="Printer.html#t%3ADoc" >Doc</A ></TT > containing hidden text from a <TT >String</TT > </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:hiddenPrefix" ><A NAME="v%3AhiddenPrefix" ></A ></A ><B >hiddenPrefix</B > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:userchunk" ><A NAME="v%3Auserchunk" ></A ></A ><B >userchunk</B > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="doc" ><TT ><A HREF="Printer.html#v%3Auserchunk" >userchunk</A ></TT > creates a <TT ><A HREF="Printer.html#t%3ADoc" >Doc</A ></TT > containing a user chunk from a <TT >String</TT > </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:text" ><A NAME="v%3Atext" ></A ></A ><B >text</B > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="doc" ><TT ><A HREF="Printer.html#v%3Atext" >text</A ></TT > creates a <TT ><A HREF="Printer.html#t%3ADoc" >Doc</A ></TT > from a <TT >String</TT >, using <TT ><A HREF="Printer.html#v%3Aprintable" >printable</A ></TT >. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:printable" ><A NAME="v%3Aprintable" ></A ></A ><B >printable</B > :: <A HREF="Printer.html#t%3APrintable" >Printable</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:wrap_text" ><A NAME="v%3Awrap_text" ></A ></A ><B >wrap_text</B > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Int.html#t%3AInt" >Int</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="doc" ><TT ><TT ><A HREF="Printer.html#v%3Awrap_text" >wrap_text</A ></TT > n s</TT > is a <TT ><A HREF="Printer.html#t%3ADoc" >Doc</A ></TT > representing <TT >s</TT > line-wrapped at n characters </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:blueText" ><A NAME="v%3AblueText" ></A ></A ><B >blueText</B > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:redText" ><A NAME="v%3AredText" ></A ></A ><B >redText</B > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="doc" ><TT ><A HREF="Printer.html#v%3AblueText" >blueText</A ></TT > creates a <TT ><A HREF="Printer.html#t%3ADoc" >Doc</A ></TT > containing blue text from a <TT >String</TT > </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:greenText" ><A NAME="v%3AgreenText" ></A ></A ><B >greenText</B > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:magentaText" ><A NAME="v%3AmagentaText" ></A ></A ><B >magentaText</B > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:cyanText" ><A NAME="v%3AcyanText" ></A ></A ><B >cyanText</B > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:unsafeText" ><A NAME="v%3AunsafeText" ></A ></A ><B >unsafeText</B > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="doc" ><TT ><A HREF="Printer.html#v%3AunsafeText" >unsafeText</A ></TT > creates a <TT ><A HREF="Printer.html#t%3ADoc" >Doc</A ></TT > from a <TT ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A ></TT >, using <TT ><A HREF="Printer.html#v%3AsimplePrinter" >simplePrinter</A ></TT > directly </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:unsafeBoth" ><A NAME="v%3AunsafeBoth" ></A ></A ><B >unsafeBoth</B > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5/Data-ByteString.html#t%3AByteString" >ByteString</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="doc" ><TT ><A HREF="Printer.html#v%3AunsafeBoth" >unsafeBoth</A ></TT > builds a Doc from a <TT ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A ></TT > and a <TT ><A HREF="/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5/Data-ByteString.html#t%3AByteString" >ByteString</A ></TT > representing the same text, but does not check that they do. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:unsafeBothText" ><A NAME="v%3AunsafeBothText" ></A ></A ><B >unsafeBothText</B > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="doc" ><TT ><A HREF="Printer.html#v%3AunsafeBothText" >unsafeBothText</A ></TT > builds a <TT ><A HREF="Printer.html#t%3ADoc" >Doc</A ></TT > from a <TT ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AString" >String</A ></TT >. The string is stored in the Doc as both a String and a <TT ><A HREF="/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5/Data-ByteString.html#t%3AByteString" >ByteString</A ></TT >. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:unsafeChar" ><A NAME="v%3AunsafeChar" ></A ></A ><B >unsafeChar</B > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.0/Data-Char.html#t%3AChar" >Char</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="doc" ><TT ><A HREF="Printer.html#v%3AunsafeChar" >unsafeChar</A ></TT > creates a Doc containing just one character. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:invisiblePS" ><A NAME="v%3AinvisiblePS" ></A ></A ><B >invisiblePS</B > :: <A HREF="/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5/Data-ByteString.html#t%3AByteString" >ByteString</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="doc" ><TT ><A HREF="Printer.html#v%3AinvisiblePS" >invisiblePS</A ></TT > creates a <TT ><A HREF="Printer.html#t%3ADoc" >Doc</A ></TT > with invisible text from a <TT ><A HREF="/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5/Data-ByteString.html#t%3AByteString" >ByteString</A ></TT > </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:packedString" ><A NAME="v%3ApackedString" ></A ></A ><B >packedString</B > :: <A HREF="/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5/Data-ByteString.html#t%3AByteString" >ByteString</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="doc" ><TT ><A HREF="Printer.html#v%3ApackedString" >packedString</A ></TT > builds a <TT ><A HREF="Printer.html#t%3ADoc" >Doc</A ></TT > from a <TT ><A HREF="/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5/Data-ByteString.html#t%3AByteString" >ByteString</A ></TT > using <TT ><A HREF="Printer.html#v%3Aprintable" >printable</A ></TT > </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:unsafePackedString" ><A NAME="v%3AunsafePackedString" ></A ></A ><B >unsafePackedString</B > :: <A HREF="/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5/Data-ByteString.html#t%3AByteString" >ByteString</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="doc" ><TT ><A HREF="Printer.html#v%3AunsafePackedString" >unsafePackedString</A ></TT > builds a <TT ><A HREF="Printer.html#t%3ADoc" >Doc</A ></TT > from a <TT ><A HREF="/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5/Data-ByteString.html#t%3AByteString" >ByteString</A ></TT > using <TT ><A HREF="Printer.html#v%3AsimplePrinter" >simplePrinter</A ></TT > </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:userchunkPS" ><A NAME="v%3AuserchunkPS" ></A ></A ><B >userchunkPS</B > :: <A HREF="/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5/Data-ByteString.html#t%3AByteString" >ByteString</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="doc" ><TT ><A HREF="Printer.html#v%3AuserchunkPS" >userchunkPS</A ></TT > creates a <TT ><A HREF="Printer.html#t%3ADoc" >Doc</A ></TT > representing a user chunk from a <TT ><A HREF="/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.5/Data-ByteString.html#t%3AByteString" >ByteString</A ></TT >. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:simplePrinters" ><A NAME="v%3AsimplePrinters" ></A ></A ><B >simplePrinters</B > :: <A HREF="Printer.html#t%3APrinters" >Printers</A ></TD ></TR ><TR ><TD CLASS="doc" ><TT ><A HREF="Printer.html#v%3AsimplePrinters" >simplePrinters</A ></TT > is a <TT ><A HREF="Printer.html#t%3APrinters" >Printers</A ></TT > which uses the set 'simplePriners\'' on any handle. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:invisiblePrinter" ><A NAME="v%3AinvisiblePrinter" ></A ></A ><B >invisiblePrinter</B > :: <A HREF="Printer.html#t%3APrinter" >Printer</A ></TD ></TR ><TR ><TD CLASS="doc" ><TT ><A HREF="Printer.html#v%3AinvisiblePrinter" >invisiblePrinter</A ></TT > is the <TT ><A HREF="Printer.html#t%3APrinter" >Printer</A ></TT > for hidden text. It just replaces the document with <TT ><A HREF="Printer.html#v%3Aempty" >empty</A ></TT >. It's useful to have a printer that doesn't actually do anything because this allows you to have tunable policies, for example, only printing some text if it's to the terminal, but not if it's to a file or vice-versa. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:simplePrinter" ><A NAME="v%3AsimplePrinter" ></A ></A ><B >simplePrinter</B > :: <A HREF="Printer.html#t%3APrinter" >Printer</A ></TD ></TR ><TR ><TD CLASS="doc" ><TT ><A HREF="Printer.html#v%3AsimplePrinter" >simplePrinter</A ></TT > is the simplest <TT ><A HREF="Printer.html#t%3APrinter" >Printer</A ></TT >: it just concatenates together the pieces of the <TT ><A HREF="Printer.html#t%3ADoc" >Doc</A ></TT > </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:doc" ><A NAME="v%3Adoc" ></A ></A ><B >doc</B > :: ([<A HREF="Printer.html#t%3APrintable" >Printable</A >] -> [<A HREF="Printer.html#t%3APrintable" >Printable</A >]) -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:empty" ><A NAME="v%3Aempty" ></A ></A ><B >empty</B > :: <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="doc" >The empty <TT ><A HREF="Printer.html#t%3ADoc" >Doc</A ></TT >. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:<>" ><A NAME="v%3A%3C%3E" ></A ></A ><B >(<>)</B > :: <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="doc" >'(<A HREF="" ></A >)' is the concatenation operator for <TT ><A HREF="Printer.html#t%3ADoc" >Doc</A ></TT >s </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:<?>" ><A NAME="v%3A%3C%3F%3E" ></A ></A ><B >(<?>)</B > :: <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="doc" ><TT >a <TT ><A HREF="Printer.html#v%3A%3C%3F%3E" ><?></A ></TT > b</TT > is <TT >a</TT > if it is not empty, else <TT >b</TT >. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:<+>" ><A NAME="v%3A%3C%2B%3E" ></A ></A ><B >(<+>)</B > :: <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="doc" ><TT >a <TT ><A HREF="Printer.html#v%3A%3C%2B%3E" ><+></A ></TT > b</TT > is <TT >a</TT > followed by a space, then <TT >b</TT >. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:$$" ><A NAME="v%3A%24%24" ></A ></A ><B >($$)</B > :: <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="doc" ><TT >a <TT ><A HREF="Printer.html#v%3A%24%24" >$$</A ></TT > b</TT > is <TT >a</TT > above <TT >b</TT >. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:vcat" ><A NAME="v%3Avcat" ></A ></A ><B >vcat</B > :: [<A HREF="Printer.html#t%3ADoc" >Doc</A >] -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="doc" ><TT ><A HREF="Printer.html#v%3Avcat" >vcat</A ></TT > piles vertically a list of <TT ><A HREF="Printer.html#t%3ADoc" >Doc</A ></TT >s. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:vsep" ><A NAME="v%3Avsep" ></A ></A ><B >vsep</B > :: [<A HREF="Printer.html#t%3ADoc" >Doc</A >] -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="doc" ><TT ><A HREF="Printer.html#v%3Avsep" >vsep</A ></TT > piles vertically a list of <TT ><A HREF="Printer.html#t%3ADoc" >Doc</A ></TT >s leaving a blank line between each. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:hcat" ><A NAME="v%3Ahcat" ></A ></A ><B >hcat</B > :: [<A HREF="Printer.html#t%3ADoc" >Doc</A >] -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="doc" ><TT ><A HREF="Printer.html#v%3Ahcat" >hcat</A ></TT > concatenates (horizontally) a list of <TT ><A HREF="Printer.html#t%3ADoc" >Doc</A ></TT >s </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:minus" ><A NAME="v%3Aminus" ></A ></A ><B >minus</B > :: <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:newline" ><A NAME="v%3Anewline" ></A ></A ><B >newline</B > :: <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="doc" >Minimal <TT ><A HREF="Printer.html#t%3ADoc" >Doc</A ></TT >s representing the common characters <TT ><A HREF="Printer.html#v%3Aspace" >space</A ></TT >, <TT ><A HREF="Printer.html#v%3Anewline" >newline</A ></TT > <TT ><A HREF="Printer.html#v%3Aminus" >minus</A ></TT >, <TT ><A HREF="Printer.html#v%3Aplus" >plus</A ></TT >, and <TT ><A HREF="Printer.html#v%3Abackslash" >backslash</A ></TT >. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:plus" ><A NAME="v%3Aplus" ></A ></A ><B >plus</B > :: <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:space" ><A NAME="v%3Aspace" ></A ></A ><B >space</B > :: <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:backslash" ><A NAME="v%3Abackslash" ></A ></A ><B >backslash</B > :: <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:lparen" ><A NAME="v%3Alparen" ></A ></A ><B >lparen</B > :: <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="doc" ><TT ><A HREF="Printer.html#v%3Alparen" >lparen</A ></TT > is the <TT ><A HREF="Printer.html#t%3ADoc" >Doc</A ></TT > that represents <TT >"("</TT > </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:rparen" ><A NAME="v%3Arparen" ></A ></A ><B >rparen</B > :: <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="doc" ><TT ><A HREF="Printer.html#v%3Arparen" >rparen</A ></TT > is the <TT ><A HREF="Printer.html#t%3ADoc" >Doc</A ></TT > that represents <TT >")"</TT > </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:parens" ><A NAME="v%3Aparens" ></A ></A ><B >parens</B > :: <A HREF="Printer.html#t%3ADoc" >Doc</A > -> <A HREF="Printer.html#t%3ADoc" >Doc</A ></TD ></TR ><TR ><TD CLASS="doc" ><TT ><TT ><A HREF="Printer.html#v%3Aparens" >parens</A ></TT > doc</TT > returns a <TT ><A HREF="Printer.html#t%3ADoc" >Doc</A ></TT > with the content of <TT >doc</TT > put within a pair of parenthesis. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="decl" ><A NAME="v:errorDoc" ><A NAME="v%3AerrorDoc" ></A ></A ><B >errorDoc</B > :: <A HREF="Printer.html#t%3ADoc" >Doc</A > -> a</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="botbar" >Produced by <A HREF="http://www.haskell.org/haddock/" >Haddock</A > version 2.6.0</TD ></TR ></TABLE ></BODY ></HTML >