úÎHÎBÕ=      !"#$%&'()*+,-./0123456789:;<"(c) The University of Glasgow 2001/BSD-style (see the file libraries/base/LICENSE)"David Terei <dave.terei@gmail.com>stableportableSafe<The TextDetails data typeOA TextDetails represents a fragment of text that will be output at some point.A single Char fragmentA whole String fragmentgUsed to represent a Fast String fragment but now deprecated and identical to the Str constructor.%The abstract type of documents. The =! instance is equivalent to using ;.Rendering mode.NormalWith zig-zag cuts%No indentation, infinitely long lines All on one line A rendering style. The rendering mode Length of line, in chars%Ratio of ribbon length to line lengthThe default style (1mode=PageMode, lineLength=100, ribbonsPerLine=1.5).A ';' characterA : characterA ',' characterA space characterA '=' characterA '(' characterA ')' characterA '[' characterA ']' characterA '{' characterA '}' character int n = text (show n) integer n = text (show n) float n = text (show n) double n = text (show n) rational n = text (show n) Wrap document in '...'!Wrap document in "...""Wrap document in (...)#Wrap document in [...]$Wrap document in {...}%List version of 4.&List version of 5.'List version of 2.( "hang d1 n d2 = sep [d1, nest n d2]) @punctuate p [d1, ... dn] = [d1 <> p, d2 <> p, ... dn-1 <> p, dn]*2The empty document, with no height and no width. * is the identity for 4, 5, 2 and 3), and anywhere in the argument list for 6, %, &, ', 9 etc.+Returns > if the document is empty,AA document of height and width 1, containing a literal character.-5A document of height 1 containing a literal string. - satisfies the following laws: - s 4 - t = - (s?t)- "" 4 x = x, if x non-empty8The side condition on the last law is necessary because - "" has height 1, while * has no height..'An obsolete function, now identical to -./Some text with any width. (text s = sizedText (length s) s)0YSome text, but without any width. Use for non-printing text such as a HTML or Latex tags1[Nest (or indent) a document by a given number of positions (which may also be negative). 1 satisfies the laws: 1 0 x = x 1 k (1 k' x) = 1 (k+k') x 1 k (x 4 y) = 1 k z 4 1 k y 1 k (x 2 y) = 1 k x 2 1 k y 1 k * = *x 4 1 k y = x 4 y, if x non-empty6The side condition on the last law is needed because * is a left identity for 4.2±Above, except that if the last line of the first argument stops at least one position before the first line of the second begins, these two lines are overlapped. For example: % text "hi" $$ nest 5 (text "there") lays out as  hi there rather than  hi there2 is associative, with identity *, and also satisfies(x 2 y) 4 z = x 2 (y 4 z), if y non-empty.3Above, with no overlapping. 3 is associative, with identity *.4 Beside. 4 is associative, with identity *.5;Beside, separated by space, unless one of the arguments is *. 5 is associative, with identity *.6Either & or '.7Either % or '.8"Paragraph fill" version of 6.9"Paragraph fill" version of 7.:8Render the document as a string using a specified style.;3Renders the document as a string using the default .< The general rendering interface.r@ABCDEFGH  !"#$%&'IJK()LMNOPQR*+,-./01STU23VWXY45Z[67\]^89_`abcdefghijk:;lm<Rendering mode Line lengthRibbons per lineWhat to do with textWhat to do at the end The documentResultnopqrst=  !"#$%&'()*+,-./0123456789:;<=,-./0"#$ !*45%&23'67891()+; :< _@ABCDEFGH   !"#$%&'IJK()LMNOPQR*+,-./01STU23VWXY45Z[67\]^89_`abcdefghijk:;lm<nopqrst2345"(c) The University of Glasgow 2001/BSD-style (see the file libraries/base/LICENSE)"David Terei <dave.terei@gmail.com>stableportableSafe=  !"#$%&'()*+,-./0123456789:;<=,-./0"#$ !*45%&23'67891()+; :< u       !"#$%&'()*+,-./0123456789:;<=>?@ABCD?EFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|prett_9vH3B0igyzR6ss7S7DDWUfText.PrettyPrintText.PrettyPrint.HughesPJ TextDetailsChrStrPStrDocModePageMode ZigZagModeLeftMode OneLineModeStylemode lineLengthribbonsPerLinestylesemicoloncommaspaceequalslparenrparenlbrackrbracklbracerbraceintintegerfloatdoublerationalquotes doubleQuotesparensbracketsbraceshcathsepvcathang punctuateemptyisEmptychartextptext sizedText zeroWidthTextnest$$$+$<><+>sepcatfsepfcat renderStylerender fullRenderbaseGHC.ShowShowghc-prim GHC.TypesTrueGHC.Base++RDocEmptyNilAbove TextBesideNestUnionNoDocBesideAbovebeside_'above_'reduceAB reduceDoc space_textnl_text nilAbove_ textBeside_nest_union_mkNestmkUnionabove_above aboveNest nilAboveNestbeside_beside nilBesidesepXsep1sepNBfillfill1fillNBfillNBE elideNestbestnicestnicest1fitsminnfirst nonEmptySetoneLinershowDoc string_txtdisplay cant_fail easy_displayindent $fShowDoc $fMonoidDoc $fIsStringDoc