úÎIÿG&      !"#$%Safe7;<=STFj&&" is the (*->*) kind equivalent of ''D marks nullary constructors, so that we don't put parens around them The class  is the equivalent of (BIt provides conversion of values to pretty printable Pretty.Doc's.Minimal complete definition:  or .Derived instances of  have the following propertiesThe result of ÿj is a syntactically correct Haskell expression containing only constants, given the fixity declarations in force at the point where the type is declared. It contains only the constructor names defined in the data type, parentheses, and spaces. When labelled constructor fields are used, braces, commas, field names, and equal signs are also used.?If the constructor is defined to be an infix operator, then 4 will produce infix applications of the constructor.hthe representation will be enclosed in parentheses if the precedence of the top-level constructor in x is less than d* (associativity is ignored). Thus, if d is 0; then the result is never surrounded in parentheses; if d is 11N it is always surrounded in parentheses, unless it is an atomic expression.8If the constructor is defined using record syntax, then p will produce the record-syntax form, with the fields given in the same order as the original declaration.#For example, given the declarations Cdata Tree a = Leaf a | Node (Tree a) (Tree a) deriving (Generic)The derived instance of  is equivalent to: ÿ’instance (Out a) => Out (Tree a) where docPrec d (Leaf m) = Pretty.sep $ wrapParens (d > appPrec) $ text "Leaf" : [nest (constrLen + parenLen) (docPrec (appPrec+1) m)] where appPrec = 10 constrLen = 5; parenLen = if(d > appPrec) then 1 else 0 docPrec d (Node u v) = Pretty.sep $ wrapParens (d > appPrec) $ text "Node" : nest (constrLen + parenLen) (docPrec (appPrec+1) u) : [nest (constrLen + parenLen) (docPrec (appPrec+1) v)] where appPrec = 10 constrLen = 5 parenLen = if(d > appPrec) then 1 else 0 is the equivalent of ).&Convert a value to a pretty printable . is the equivalent of *!This is a specialised variant of  , using precedence context zero. is the equivalent of +. The method ‰ is provided to allow the programmer to give a specialised way of showing lists of values. For example, this is used by the predefined  instance of the , type, where values of type -H should be shown in double quotes, rather than between square brackets..MUtility function used to wrap the passed value in parens if the bool is true.' is a fully customizable Pretty Printer=Every other pretty printer just gives some default values to  6Utility function that handles the text conversion for . transforms the text into -s and outputs it directly.6Utility function that handles the text conversion for .  just leaves the text as a -M which is usefull if you want to further process the pretty printed result.Customizable pretty printer Takes a user defined  as a parameter and uses % to obtain the result Equivalent to: fullPP outputStr "" "Semi-customizable pretty printer. Equivalent to: prettyStyle customStyleZWhere customStyle uses the specified line length, mode = PageMode and ribbonsPerLine = 1. %The default pretty printer returning -s Equivalent to prettyStyle defaultStyleGWhere defaultStyle = (mode=PageMode, lineLength=80, ribbonsPerLine=1.5) Customizable pretty printer.Takes a user defined  as a parameter and uses % to obtain the result Equivalent to: fullPP outputIO (putChar '\n') "Semi-customizable pretty printer. Equivalent to: ppStyle customStyleZWhere customStyle uses the specified line length, mode = PageMode and ribbonsPerLine = 1. The default Pretty Printer,Equivalent to: ppStyle defaultStyleGWhere defaultStyle = (mode=PageMode, lineLength=80, ribbonsPerLine=1.5)Athe operator precedence of the enclosing context (a number from 0 to 11(). Function application has precedence 10. the value to be converted to a -the resulting Doc*Function that handles the text conversion (eg: )The end element of the result ( eg: "" or putChar('\n') )The pretty printing  to useThe value to pretty printThe pretty printed result  /&'01234      !"#$%&'()*+,-./0102030456789:;<=>?@*GenericPretty-1.2.2-HC1Ygi1nAjaInXvdk5HEr0Text.PrettyPrint.GenericPrettyPrettyDocText.PrettyPrint.MyPrettyStylebase GHC.GenericsGenericOutdocPrecdocdocListfullPPoutputIO outputStr prettyStyle prettyLenprettyppStyleppLenpp $fGOut:*: $fGOut:+:$fGOutM1 $fGOutM10 $fGOutM11$fGOutU1 $fOut(,,,,,,) $fOut(,,,,,) $fOut(,,,,) $fOut(,,,) $fOut(,,)$fOut(,) $fOutEither $fOutMaybe $fOutBool$fOut[] $fOutRatio $fOutDouble $fOutFloat $fOutInteger$fOutInt $fOutChar$fOut()$fGOutK1out1 isNullaryGHC.ShowShow showsPrecshowshowListghc-prim GHC.TypesCharGHC.BaseString wrapParensGOutTypeRecPrefInf