úÎ%"#ï     BA module to construct indentation aware parsers. Many programming Flanguage have indentation based syntax rules e.g. python and Haskell. 9This module exports combinators to create such parsers. CThe input source can be thought of as a list of tokens. Abstractly Eeach token occurs at a line and a column and has a width. The column Gnumber of a token measures is indentation. If t1 and t2 are two tokens Athen we say that indentation of t1 is more than t2 if the column 7number of occurrence of t1 is greater than that of t2. GCurrently this module supports two kind of indentation based syntactic "structures which we now describe: Block A block of indentation c is a sequence of tokens with indentation at least c-. Examples for a block is a where clause of !Haskell with no explicit braces.  Line fold A line fold starting at line l and indentation c is a &sequence of tokens that start at line l and possibly continue to <subsequent lines as long as the indentation is greater than c. Such a sequence of lines need to be folded to a single line. An example Bis MIME headers. Line folding based binding separation is used in Haskell as well.   f a p  parses  a  followed by any number of  p  = that can wrap onto subsequent indented lines, combined by  f  Like ', but throws away initial parse result Like ', but throws away initial parse result BParses one or more times, continuing in subsequent indented lines   f a p  parses  a " followed by an indented block of  p   and combines them with  f  6Parses a block of lines at the same indentation level 1Run the result of an indentation sensitive parse =Parses many occurances of p without using more than one line 8Parses many occurances of p, indenting if over one line Parses two arguments for  f ) possibly wrapping onto subsequent lines Parses three arguments for  f ) possibly wrapping onto subsequent lines Parses four arguments for  f ) possibly wrapping onto subsequent lines Parses four arguments for  f ) possibly wrapping onto subsequent lines  is to foldLine as  is to   is like  , but doesn')t apply the function to the parsed value          indents-0.2.0Text.Parsec.Indent IndentParserT withLineFold withLineFold' withBlock'lineFold withBlockblock runIndentmanyLine manyIndentfoldLine foldLine3 foldLine4 foldLine5<+/><-/>indentedsameOrIndentedsamewithPos checkIndentbase Control.MonadapliftM2