* lexeme p first applies parser p and than the    parser, returning the value of p. Every lexical ! token (lexeme) is defined using lexeme, this way every parse 9 starts at a point without white space. Parsers that use lexeme are  called lexeme parsers in this document. The only point where the   parser should be D called explicitly is the start of the main parser in order to skip  any leading white space. ! mainParser = do{ whiteSpace 1 ; ds <- many (lexeme digit)  ; eof ' ; return (sum ds)  } oneOf cs6 succeeds if the current character is in the supplied  list of characters cs). Returns the parsed character. See also  .  vowel = oneOf "aeiou" .Parses a letter or digit (a character between '0' and '9').  Returns the parsed character. EParses a letter (an upper case or lower case character). Returns the  parsed character. /Parses a digit. Returns the parsed character. 8Parses a hexadecimal digit (a digit or a letter between 'a' and  'f' or 'A' and 'F'"). Returns the parsed character.    /Settings for parsing of a javascript document. !5Placeholder in the structure, no actual settings yet "#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWX/Defaults settings: settings not currently used YZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~? !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWX? ! !"5WVUTSRQPONMLKJIHGFEDCBA@?>=<;:9876543210/.-,+*)('&%$##$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWX2      !"#$%&'(()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`     #abcdefghijklmnopqrstuvwxyz{|}~| hjsmin-0.0.6 Text.JasmineText.Jasmine.TokenText.Jasmine.ParseText.Jasmine.PrettyminifymminifyBbminify minifyFilerOplCharautoSemi autoSemi' identifieridentisReservedNamereserved whiteSpace simpleSpacecomment inCommentfslashasterisklinefeed identLetter identStart reservedNameshexdeclexemeoneOfattoparsec-0.8.3.0Data.Attoparsec.Char8satisfyalphaNumletter isAlphaNumbase GHC.UnicodeisAlphaJasmineSettingshjsminPlaceholderJSNodeJSWithJSWhile JSVariables JSVarDeclJSUnaryJSTryJSThrowJSSwitchJSStringLiteralJSStatementListJSSourceElementsTopJSSourceElementsJSReturnJSRegExJSPropertyNameandValue JSOperatorJSObjectLiteralJSMemberSquare JSMemberDot JSLiteral JSLabelledJSIfElseJSIf JSIdentifier JSHexIntegerJSFunctionExpressionJSFunctionBody JSFunction JSForVarInJSForVarJSForInJSFor JSFinallyJSExpressionTernaryJSExpressionPostfixJSExpressionParenJSExpressionBinary JSExpressionJSEmpty JSElision JSElementList JSElement JSDoWhile JSDefault JSDecimal JSContinueJSCatchJSCaseJSCallExpressionJSBreakJSBlockJSArrayLiteral JSArgumentsdefaultJasmineSettingseof stringLiteraldecimalLiteralhexIntegerLiteralregex firstchar escapeseq otherchar identPartregExpliteral nullLiteralbooleanLiteralnumericLiteralregularExpressionLiteralprimaryExpression arrayLiteral objectLiteralpropertyNameandValueListpropertyNameandValue propertyNamememberExpressionmemberExpression' newExpressioncallExpressionlparenrparencomma arguments argumentListleftHandSideExpressionpostfixExpressionunaryExpressionmultiplicativeExpressionadditiveExpressionshiftExpressionrelationalExpressionequalityExpressionbitwiseExpressionbitwiseAndExpressionbitwiseXOrExpressionbitwiseOrExpressionlogicalAndExpressionlogicalOrExpressionconditionalExpressionassignmentExpressionassignmentStartassignmentOperatorrOp' expressionflattenExpression statementstatementBlockstatementBlock'block statementListvariableStatementvariableDeclarationListvariableDeclaration initializeremptyStatement ifStatementifElseStatement statementSemiiterationStatementoptionalExpressioncontinueStatementbreakStatementreturnStatement withStatementswitchStatement caseBlock caseClauses caseClause defaultClauselabelledStatementthrowStatement tryStatementcatchfinallyfunctionDeclarationfunctionExpressionformalParameterList functionBodyprogramsourceElementssourceElementsTop sourceElementflattenmainreadJsreadJsmdoParse parseString parseProgramp' _showFile parseFile<><+>hcatemptytextchar punctuaterenderJSrJS commaList commaListListtoDoc spaceOrBlockfixTopfixSourceElementsmyFix fixLiteralsfixSemis fixSemis'fixBlock fixBlock' spaceNeeded_case0_case1_case4_case5_case6_case7_case8_case9_case10_case11_case12_case13_case14_case15_case16_case17_case18_case19_case20_case21_case22_case23_case24_case25_case26_case27_case28_minify'parse'lbToStrstrToLb