Kj?>      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~Safe< hreserved words  Safe $Y9import and export binds * as identifier A, ... {x,...}[-,+*)('&%$#"! .QPNMLKJIHGFEDCA@?>=<;:9876543210/OBRTSUXWVY\[Z]ba`_^cdegfhimlkj[ijklmhefgdc]^_`abYZ[\UVWXRST./0123456789:;<=>?@ABCDEFGHIJKLMNOPQ !"#$%&'()*+,- !"#$%&'()*+,-.#/0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abefgijklmSafe<vwxvwxSafe<;MyIdentifier name.z%Parse identifier (no reserved words).{@Parse numeric literal. Here we don't distinguish between kinds.|Parse boolean literal.}this identifier~null identifierParse string literal.Parse template strings.!Parse regular expression literal.1Parse elision (aka ',' without a value on array).(Parse many items on a array declaration.Parse array literal.key and/or value property pair.BParse object literal. objectLiteral :: P.ParsecT s u m ExpressionParse parenthesis expression.(Check for spread operation before parse p.$Parse used by function declarations.Parse function declaration!Prase arrow function declaration.CParse any kind of funcion declaration (function or arrow function).3Parse property method of a class or object literal.#Parse a static property of a class. Parse a getter or setter method."Check for a async property method."Parse a class property definition.Parse a class declaration. Dot member.Array like accessor.Function call.newParse member expression.Parse literals.Parse primary expressions.bCheck for maybe semi. TODO: There are some rules for expression termination...need to check that.Parse a empty expression.*Parse rules for left hand side expression.Parse expressions.Parse single line comment.Parse multiline comment.!Parse comment like an expression.,Parse expressions excluding emptyExpression.&Convert a expression into a statement.Parse import namespace clauses.Parse import bind clauses.Parse default clauses.0Parse import clauses excluding namespace clause.Parse all import clauses.Parse import file statement.Parse import statement.Parse import statements.Parse export statements.Parse continue statement.Parse break statement.Parse block statement.Parse if statement."Parse catch part of try statement.$Parse finally part of try statement.Parse try statement.Parse throw statement.Parse return statement.Parse variable statement.#Parse case clause switch statement.#Parse case clause switch statement.Parse switch statement.Parse debugger statement.Parse breakable statement. TODO: this parser can be improved to parse vaild javascript code by passing to the break statement to subsequent statements.Parse while statement.parse do-while statement.Parse for statement.2Parse iteration statements (for, white, do/while).Parse with statement.Parse labelled statement.Parse statements.Parse all statements allowed to be on top level. This helps to not allow import and export expressions in any other part of the code.parserParse a script with a filename.1Parse a script from a file. Just for convinience.]yz{|}~]yz{|}~Safe?      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~(language-js-0.2.0-1eFdnZP7F1t75H9qoWMxxsLanguage.JS.CommonLanguage.JS.TypesLanguage.JS.OperatorsLanguage.JS.ParserPaths_language_jsparensbracesanglesbracketssemicommadotcolondotSepcommaSepsemiSep commaSep1semiSep1 whiteSpace whiteSpaces betweenSpaceslexemekeywordB reservedWords StatementSExp SImportFileSImportSRExportSExportSExportDefaultSCSF SVariableSWhileSDoWhileSForSLabel SDebugger SContinueSBreakSBlockSIfSSwitchSCaseSThrowSTrySCatchSFinallySReturnSWith ExpressionLThisLNullLILNLSLTSLBRegExp UnaryUpdateUnarySpreadElisionLALOLP Condition Assignment OperationFunctionArrowClass ClassPropertyPropertyMethod ClassStaticClassGetMethodClassSetMethodAsyncDotAccFCallNewCommaEmptyCommentMultilineCommentTemplateStringTString TExpressionBindExpressionBindVar BindPatternBindRest ImportClause Namespace DefaultName BindNamesForStyleForInForInVForOfForOfV ForRegular StatementOpt ExpressionOpt SwitchCaseCase DefaultCaseIsPrefixObjectPropertyOPIOPKVOPOPM$fShowStatement$fShowExpression$fShowTemplateString$fShowBindExpression$fShowObjectProperty$fShowImportClause$fShowForStyle$fShowSwitchCaseopNotFollowedBytableoperationExpressionidentifierName identifiernumericLiteralbooleanLiteral thisIdent nullIdent stringLiteraltemplateString regexLiteralelision arrayItems arrayLiteral objectBinds objectLiteralparensExpression checkSpreadformalParameterfunctionDeclarationarrowFunctionDeclarationfunctionExpressionpropertyMethodDefclassStaticDefclassGetSetMethodDefasyncMethodDefclassPropertyDefclassDeclaration dotMemberaccessor functionCallnewIdentmemberExpressionliteralsprimaryExpression maybeSemiemptyExpressionleftHandSideExpression expressionscommentmultilineCommentcommentExpressionexpressionNonEmpty toStatementimportNamespaceClauseimportBindClauseimportDefaultNameClauseimportManyClauses importClausesimportFileStatementimportStatementimportStatementsreexportStatementexportDefaultStatementexportStatementexportStatementscontinueStatementbreakStatementblockStatementblockOrStatements ifStatement catchBlock finallyBlock tryStatementthrowStatementreturnStatementbindVarbindPatternDecl bindSpreadbindExpressionconstVariableStatementnotConstVariableStatementvariableStatement caseClausecaseDeclarationswitchStatementdebuggerStatementbreakableStatementwhileStatementdoWhileStatement forInVStyle forOfVStyle forInStyle forOfStyleforRegularStyleforStyle forStatementiterationStatement withStatementlabelledStatement statementstopLevelStatementsparseJsparse parseFromFileversion getBinDir getLibDir getDynLibDir getDataDir getLibexecDir getSysconfDirgetDataFileName