h&O!L      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ Safe-Inferred#"%&'()*-/1256;= *lima>A class for prettyprinting data on multiple lines in haddocks.2It's not meant to be used outside of this library.limaA printing function2It's not meant to be used outside of this library.lima$A wrapper for prettyprinting stringslimaEscaped hash characterlimaHash character lima3Drop a prefix of a line with length of a given line lima(Check if a list starts with a given list lima&Check if a list ends with a given list lima.Drop leading spaces and drop at each end of a ? the number of characters as in the supplied prefix and suffix. lima*Drop spaces at the start and the end of a .lima?Strip the given value from the beginning and the end of a list.limaPad a  with a given number of spaceslimaShow the name of a constructor.lima StringlimaPrepend start of a TeX comment ('% ') to a .limaDrop start of a TeX comment from a .limaStart a TeX comment.limaStart a TeX comment plus a space.limaStart a Literate Haskell comment.limaStart a Literate Haskell comment plus a space.limaStart a Literate Haskell line of Haskell code.limaStart a Literate Haskell line of Haskell code plus a space.limaPrepend start of a TeX comment ('% ') to a .limaDrop start of a TeX comment from a . limaReplace "\#" with "#" in a  prefix.!limaReplace "#" with "\#" in a  prefix."limaOpen a Markdown comment.#limaClose a Markdown comment.$limaOpen a Markdown comment plus a space.%limaA space plus close a Markdown comment.&limaStrip comment markers from a .'limaCheck if a line is a Markdown comment.(limaOpen a Haskell multi-line comment.)limaOpen a Haskell! multi-line comment plus a space.*limaClose a Haskell multi-line comment.+limaA space plus close a Haskell multi-line comment.,lima.Drop leading spaces and drop at each end of a ? the number of characters as in the supplied prefix and suffix.-lima6Check if a line without leading zeros is a multi-line Haskell comment+  !"#$%&'()*+,-+  !"#$%&'()*+,- Safe-Inferred#"%&'()*-/1256;=K:1limaConfiguration of tag names.The default values of  Config User are all s.Inside the library functions,  Config User is converted to Config Internal.'The below examples show the names from Config Internal.pp (def :: Config User) Config { _disable = "LIMA_DISABLE", _enable = "LIMA_ENABLE", _indent = "LIMA_INDENT", _dedent = "LIMA_DEDENT",% _mdHaskellCodeStart = "```haskell", _mdHaskellCodeEnd = "```",) _texHaskellCodeStart = "\\begin{code}",% _texHaskellCodeEnd = "\\end{code}",. _texSingleLineCommentStart = "SINGLE_LINE ",- _lhsSingleLineCommentStart = "SINGLE_LINE "}&It's possible to override these names.pp ((def :: Config User) & disable ?~ "off" & enable ?~ "on" & indent ?~ "indent" & dedent ?~ "dedent") Config { _disable = "off", _enable = "on", _indent = "indent", _dedent = "dedent",% _mdHaskellCodeStart = "```haskell", _mdHaskellCodeEnd = "```",) _texHaskellCodeStart = "\\begin{code}",% _texHaskellCodeEnd = "\\end{code}",. _texSingleLineCommentStart = "SINGLE_LINE ",- _lhsSingleLineCommentStart = "SINGLE_LINE "}3limaMake parser ignore tags and just copy the following lines verbatim.Set indentation to 0.4limaStop parser from ignoring tags.5lima Set code indentation to a given .6limaSet code indentation to 0.7limaMark the start of a Haskell code block in Markdown.8limaMark the end of a Haskell code block in Markdown.9limaMark the start of a Haskell code block in TeX.:limaMark the end of a Haskell code block in TeX.;lima1Mark start of a comment that must be single-line.<lima0Mark start of a comment that must be single-line=limaCalculates the mode for data.>limaMarks data supplied by a user.?limaMarks data for internal usage.limaA kind of data markers.limaState of a parser.4Only one flag can be enabled when processing a line.Flags signify in what document block a converter is at the moment.Alima A list of Bs.Blima&Internal representation of a document.A printer processes A one by one.A B can have:Action - how this B affects the subsequent A.Target - a type of A that are affected by this B.Range - the nearest B until which this B affects the subsequent A.ClimaAction: set indentation to n.Target: F.Range: C, D, or E.DlimaAction: set indentation to 0.Target: F.Range: C, D, or E.Elima:A block that should be invisible when rendered outside of .hs.Action: set indentation to 0.Target: F.Range: C, D, or E.Flima.Lines copied verbatim while a parser was in a Haskell code block.Glima9Lines copied verbatim while a parser was in a text block.Hlima '. > a4 = 4 > a2 = 2  Inside a B#, code is shifted to the left. See e.8During printing, code is indented according to previous A.G ~ other lines.Example*pp $ lhsFromTokens def exampleNonTexTokens% LIMA_INDENT 3% LIMA_DISABLE% -- What's the answer? % LIMA_ENABLE% LIMA_INDENT 1% LIMA_INDENT 2- Intermediate results> a = const 3 > b = a 4 % LIMA_DEDENT> answer = b * 14% Hello from comments,% world!'% SINGLE_LINE Comment on a single line.Hello from text,world!rlimaConvert A to Literate Haskell code.Each B becomes a  in a list.These s are concatenated in q.slimaConvert A to Markdown code. Inverse of q.(lhsToTokens def $ lhsFromTokens def exampleNonTexTokens) == exampleNonTexTokensTruetlimaConvert A to Markdown code.RulesCertain Converter#assumptions assumptions must hold for inputs.These are the relations between document blocks and tokens when the default 1 values are used.C ~ '', where N is an .D ~ ''.E' ~ a multiline comment starting with ''. 0 I ~ a line starting with ''.  !--line -- H% ~ a multiline comment starting with  '  Consecutive Hs are merged into a single H.F) ~ possibly indented block starting with  '```haskell' and ending with '```'.  ```haskell a4 = 2 ``` G ~ other lines.Example)pp $ mdFromTokens def exampleNonTexTokens#   - Intermediate results ```haskell a = const 3 b = a 4 ``` ```haskellanswer = b * 14```"Hello from text,world!ulimaConvert A to Haskell code.Each B becomes a  in a list.These s are concatenated in t.vlimaConvert A to Markdown code. Inverse of t.(mdToTokens def $ mdFromTokens def exampleNonTexTokens) == exampleNonTexTokensTruewlimaConvert A to Haskell code.RulesCertain Converter#assumptions assumptions must hold for inputs. These are the relations between A& and document blocks when the default 1 values are used.C ~ '{- LIMA_INDENT N -}' where N is an .D ~ '{- LIMA_DEDENT -}'.E ~ '{- LIMA_DISABLE -}' and '{- LIMA_ENABLE -}' and lines between them. 0{- LIMA_DISABLE -} disabled {- LIMA_ENABLE -} G% ~ a multiline comment starting with '{-\n' and ending with '\n-}'.  {- line 1 -}  Consecutive Gs are merged into a single G.?ABGCDEFHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxy=>?123456789:;<]TUVSYX[Z\WNOPQRh^_BGCDEFHIJKLMA`acdewxqrtunoysvpijklmbfg Safe-Inferred$"%&'()*-/1256;=L   !"#$%&'()*+,-./0123456789::;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~9O#lima-0.2.1.0-5m2eBdS6vnUI99h1FTV8r7 ConverterConverter.Internal Paths_limabase Data.Function&1data-default-class-0.1.2.0-CQYBH38PFES4dDyailJWvdData.Default.Classdef)microlens-0.4.13.1-5Q580NbiDM6AM43K2os1L8 Lens.Micro?~ PrettyPrintppPretty escapedHashhashdropLen startsWithendsWith stripEnds stripSpaces stripListindentNconstructorName stripEmpties dropEmptiesisEnclosedWith countSpaceserrorEmptyCommentAtprependTexCommentdropTexComment texCommenttexCommentSpace lhsCommentlhsCommentSpace lhsHsCodelhsHsCodeSpaceprependLhsCommentdropLhsCommentlhsUnescapeHash lhsEscapeHash mdCommentOpenmdCommentClosemdCommentOpenSpacemdCommentCloseSpacestripMdComment isMdComment hsCommentOpenhsCommentOpenSpacehsCommentClosehsCommentCloseSpacestripHsComment isHsComment $fShowPretty$fPrettyPrintText$fPrettyPrint[]Config$sel:_disable:Config$sel:_enable:Config$sel:_indent:Config$sel:_dedent:Config$sel:_mdHaskellCodeStart:Config$sel:_mdHaskellCodeEnd:Config $sel:_texHaskellCodeStart:Config$sel:_texHaskellCodeEnd:Config&$sel:_texSingleLineCommentStart:Config&$sel:_lhsSingleLineCommentStart:ConfigModeUserInternal$fGenericConfigTokensTokenIndentDedentDisabled HaskellCodeTextCommentCommentSingleLine $sel:n:Indent$sel:manyLines:Indent$sel:someLines:Indent$sel:someLine:IndentFormatHsLhsMdTeXdedentdisableenableindentlhsSingleLineCommentStartmdHaskellCodeEndmdHaskellCodeStarttexHaskellCodeEndtexHaskellCodeStarttexSingleLineCommentStarttoConfigInternalshowFormatExtensionshowFormatNameselectFromTokensselectToTokensexampleNonTexTokens' mergeTokens stripTokensnormalizeTokensexampleNonTexTokensexampleTexTokens convertTo mkFromTokens mkToTokensparseLineToTokenerrorExpectedTokenerrorNotEnoughTokens texFromTokenstexFromTokens' texToTokens lhsFromTokenslhsFromTokens' lhsToTokens mdFromTokens mdFromTokens' mdToTokens hsFromTokens hsFromTokens' hsToTokens$fDefaultConfig$fPrettyPrintConfig$fDefaultState$fGenericState $fShowToken $fDataToken $fEqToken $fEqFormat$fDefaultConfig0 $fShowConfig $fEqConfig $fShowConfig0 text-1.2.5.0Data.Text.Internal GHC.MaybeNothingghc-prim GHC.TypesIntMode'StateversiongetDataFileName getBinDir getLibDir getDynLibDir getDataDir getLibexecDir getSysconfDir