UNPKG

node-mirror

Version:

node.js + CodeMirror = Great IDE and Admin Tool

1,664 lines (1,511 loc) 145 kB
(function(){var __modFun = function(__require, promiseland){ __modFun = undefined; if (promiseland._hasModule({ hashStr: "2267d37fbbc2ecb90d64c30ce93f2df0" })){ return promiseland._getModule("2267d37fbbc2ecb90d64c30ce93f2df0"); }; var PL$20/*RegExp*/;try{PL$20/*RegExp*/ = RegExp;}catch(e){}; var PL$24/*Error*/;try{PL$24/*Error*/ = Error;}catch(e){}; var PL$32/*String*/;try{PL$32/*String*/ = String;}catch(e){}; var PL$56/*code**/;try{PL$56/*code**/ = code*;}catch(e){}; var PL$71/*parseInt*/;try{PL$71/*parseInt*/ = parseInt;}catch(e){}; var PL$74/*parseFloat*/;try{PL$74/*parseFloat*/ = parseFloat;}catch(e){}; var PL$158/*Array*/;try{PL$158/*Array*/ = Array;}catch(e){}; var PL$187/*Object*/;try{PL$187/*Object*/ = Object;}catch(e){}; var PL$1 = (function(){ "use strict"; function PL$21/*assert*/(PL$22/*condition*/, PL$23/*message*/){ ; if(! PL$22/*condition*/){ throw new PL$24/*Error*/(("ASSERT: " + PL$23/*message*/)); }; ;}; function PL$25/*isDecimalDigit*/(PL$26/*ch*/){ ; return ((PL$26/*ch*/ >= 48) && (PL$26/*ch*/ <= 57)); ;}; function PL$27/*isHexDigit*/(PL$26/*ch*/){ ; return ("0123456789abcdefABCDEF"["indexOf"](PL$26/*ch*/) >= 0); ;}; function PL$28/*isOctalDigit*/(PL$26/*ch*/){ ; return ("01234567"["indexOf"](PL$26/*ch*/) >= 0); ;}; function PL$29/*isWhiteSpace*/(PL$26/*ch*/){ ; return ((((((PL$26/*ch*/ === 32) || (PL$26/*ch*/ === 9)) || (PL$26/*ch*/ === 11)) || (PL$26/*ch*/ === 12)) || (PL$26/*ch*/ === 160)) || ((PL$26/*ch*/ >= 5760) && ([ 5760, 6158, 8192, 8193, 8194, 8195, 8196, 8197, 8198, 8199, 8200, 8201, 8202, 8239, 8287, 12288, 65279 ]["indexOf"](PL$26/*ch*/) >= 0))); ;}; function PL$30/*isLineTerminator*/(PL$26/*ch*/){ ; return ((((PL$26/*ch*/ === 10) || (PL$26/*ch*/ === 13)) || (PL$26/*ch*/ === 8232)) || (PL$26/*ch*/ === 8233)); ;}; function PL$31/*isIdentifierStart*/(PL$26/*ch*/){ ; return ((((((PL$26/*ch*/ === 36) || (PL$26/*ch*/ === 95)) || ((PL$26/*ch*/ >= 65) && (PL$26/*ch*/ <= 90))) || ((PL$26/*ch*/ >= 97) && (PL$26/*ch*/ <= 122))) || (PL$26/*ch*/ === 92)) || ((PL$26/*ch*/ >= 128) && PL$10/*Regex*/["NonAsciiIdentifierStart"]["test"](PL$32/*String*/["fromCharCode"](PL$26/*ch*/)))); ;}; function PL$33/*isIdentifierPart*/(PL$26/*ch*/){ ; return (((((((PL$26/*ch*/ === 36) || (PL$26/*ch*/ === 95)) || ((PL$26/*ch*/ >= 65) && (PL$26/*ch*/ <= 90))) || ((PL$26/*ch*/ >= 97) && (PL$26/*ch*/ <= 122))) || ((PL$26/*ch*/ >= 48) && (PL$26/*ch*/ <= 57))) || (PL$26/*ch*/ === 92)) || ((PL$26/*ch*/ >= 128) && PL$10/*Regex*/["NonAsciiIdentifierPart"]["test"](PL$32/*String*/["fromCharCode"](PL$26/*ch*/)))); ;}; function PL$34/*isFutureReservedWord*/(PL$35/*id*/){ ; switch (PL$35/*id*/){ case "class": case "enum": case "export": case "extends": case "import": case "super": return true; default: return false; }; ;}; function PL$36/*isStrictModeReservedWord*/(PL$35/*id*/){ ; switch (PL$35/*id*/){ case "implements": case "interface": case "package": case "private": case "protected": case "public": case "static": case "yield": case "let": return true; default: return false; }; ;}; function PL$37/*isRestrictedWord*/(PL$35/*id*/){ ; return ((PL$35/*id*/ === "eval") || (PL$35/*id*/ === "arguments")); ;}; function PL$38/*isKeyword*/(PL$35/*id*/){ ; if((PL$12/*strict*/ && PL$36/*isStrictModeReservedWord*/(PL$35/*id*/))){ return true; }; switch (PL$35/*id*/["length"]){ case 2: return (((PL$35/*id*/ === "if") || (PL$35/*id*/ === "in")) || (PL$35/*id*/ === "do")); case 3: return (((((PL$35/*id*/ === "var") || (PL$35/*id*/ === "for")) || (PL$35/*id*/ === "new")) || (PL$35/*id*/ === "try")) || (PL$35/*id*/ === "let")); case 4: return ((((((PL$35/*id*/ === "this") || (PL$35/*id*/ === "else")) || (PL$35/*id*/ === "case")) || (PL$35/*id*/ === "void")) || (PL$35/*id*/ === "with")) || (PL$35/*id*/ === "enum")); case 5: return ((((((((PL$35/*id*/ === "while") || (PL$35/*id*/ === "break")) || (PL$35/*id*/ === "catch")) || (PL$35/*id*/ === "throw")) || (PL$35/*id*/ === "const")) || (PL$35/*id*/ === "yield")) || (PL$35/*id*/ === "class")) || (PL$35/*id*/ === "super")); case 6: return ((((((PL$35/*id*/ === "return") || (PL$35/*id*/ === "typeof")) || (PL$35/*id*/ === "delete")) || (PL$35/*id*/ === "switch")) || (PL$35/*id*/ === "export")) || (PL$35/*id*/ === "import")); case 7: return (((PL$35/*id*/ === "default") || (PL$35/*id*/ === "finally")) || (PL$35/*id*/ === "extends")); case 8: return (((PL$35/*id*/ === "function") || (PL$35/*id*/ === "continue")) || (PL$35/*id*/ === "debugger")); case 10: return (PL$35/*id*/ === "instanceof"); default: return false; }; ;}; function PL$39/*addComment*/(PL$40/*type*/, PL$41/*value*/, PL$42/*start*/, PL$43/*end*/, PL$44/*loc*/){ ; var PL$45/*comment*/; ; PL$21/*assert*/((typeof PL$42/*start*/ === "number"), "Comment must have valid position"); if((PL$18/*state*/["lastCommentStart"] >= PL$42/*start*/)){ return; }; PL$18/*state*/["lastCommentStart"] = PL$42/*start*/; PL$45/*comment*/ = { "type": PL$40/*type*/, "value": PL$41/*value*/ }; if(PL$19/*extra*/["range"]){ PL$45/*comment*/["range"] = [ PL$42/*start*/, PL$43/*end*/ ]; }; if(PL$19/*extra*/["loc"]){ PL$45/*comment*/["loc"] = PL$44/*loc*/; }; PL$19/*extra*/["comments"]["push"](PL$45/*comment*/); if(PL$19/*extra*/["attachComment"]){ PL$19/*extra*/["leadingComments"]["push"](PL$45/*comment*/); PL$19/*extra*/["trailingComments"]["push"](PL$45/*comment*/); }; ;}; function PL$46/*skipSingleLineComment*/(PL$47/*offset*/){ ; var PL$42/*start*/; ; var PL$44/*loc*/; ; var PL$26/*ch*/; ; var PL$45/*comment*/; ; PL$42/*start*/ = (PL$13/*index*/ - PL$47/*offset*/); PL$44/*loc*/ = { "start": { "line": PL$14/*lineNumber*/, "column": ((PL$13/*index*/ - PL$15/*lineStart*/) - PL$47/*offset*/) } }; while((PL$13/*index*/ < PL$16/*length*/)){ { PL$26/*ch*/ = PL$11/*source*/["charCodeAt"](PL$13/*index*/); ++PL$13/*index*/; if(PL$30/*isLineTerminator*/(PL$26/*ch*/)){ if(PL$19/*extra*/["comments"]){ PL$45/*comment*/ = PL$11/*source*/["slice"]((PL$42/*start*/ + PL$47/*offset*/), (PL$13/*index*/ - 1)); PL$44/*loc*/["end"] = { "line": PL$14/*lineNumber*/, "column": ((PL$13/*index*/ - PL$15/*lineStart*/) - 1) }; PL$39/*addComment*/("Line", PL$45/*comment*/, PL$42/*start*/, (PL$13/*index*/ - 1), PL$44/*loc*/); }; if(((PL$26/*ch*/ === 13) && (PL$11/*source*/["charCodeAt"](PL$13/*index*/) === 10))){ ++PL$13/*index*/; }; ++PL$14/*lineNumber*/; PL$15/*lineStart*/ = PL$13/*index*/; return; };}}; if(PL$19/*extra*/["comments"]){ PL$45/*comment*/ = PL$11/*source*/["slice"]((PL$42/*start*/ + PL$47/*offset*/), PL$13/*index*/); PL$44/*loc*/["end"] = { "line": PL$14/*lineNumber*/, "column": (PL$13/*index*/ - PL$15/*lineStart*/) }; PL$39/*addComment*/("Line", PL$45/*comment*/, PL$42/*start*/, PL$13/*index*/, PL$44/*loc*/); }; ;}; function PL$48/*skipMultiLineComment*/(){ ; var PL$42/*start*/; ; var PL$44/*loc*/; ; var PL$26/*ch*/; ; var PL$45/*comment*/; ; if(PL$19/*extra*/["comments"]){ PL$42/*start*/ = (PL$13/*index*/ - 2); PL$44/*loc*/ = { "start": { "line": PL$14/*lineNumber*/, "column": ((PL$13/*index*/ - PL$15/*lineStart*/) - 2) } }; }; while((PL$13/*index*/ < PL$16/*length*/)){ { PL$26/*ch*/ = PL$11/*source*/["charCodeAt"](PL$13/*index*/); if(PL$30/*isLineTerminator*/(PL$26/*ch*/)){ if(((PL$26/*ch*/ === 13) && (PL$11/*source*/["charCodeAt"]((PL$13/*index*/ + 1)) === 10))){ ++PL$13/*index*/; }; ++PL$14/*lineNumber*/; ++PL$13/*index*/; PL$15/*lineStart*/ = PL$13/*index*/; if((PL$13/*index*/ >= PL$16/*length*/)){ PL$49/*throwError*/({ }, PL$9/*Messages*/["UnexpectedToken"], "ILLEGAL"); }; }else{ if((PL$26/*ch*/ === 42)){ if((PL$11/*source*/["charCodeAt"]((PL$13/*index*/ + 1)) === 47)){ ++PL$13/*index*/; ++PL$13/*index*/; if(PL$19/*extra*/["comments"]){ PL$45/*comment*/ = PL$11/*source*/["slice"]((PL$42/*start*/ + 2), (PL$13/*index*/ - 2)); PL$44/*loc*/["end"] = { "line": PL$14/*lineNumber*/, "column": (PL$13/*index*/ - PL$15/*lineStart*/) }; PL$39/*addComment*/("Block", PL$45/*comment*/, PL$42/*start*/, PL$13/*index*/, PL$44/*loc*/); }; return; }; ++PL$13/*index*/; }else{ ++PL$13/*index*/; }; };}}; PL$49/*throwError*/({ }, PL$9/*Messages*/["UnexpectedToken"], "ILLEGAL"); ;}; function PL$50/*skipComment*/(){ ; var PL$26/*ch*/; ; var PL$42/*start*/; ; PL$42/*start*/ = (PL$13/*index*/ === 0); while((PL$13/*index*/ < PL$16/*length*/)){ { PL$26/*ch*/ = PL$11/*source*/["charCodeAt"](PL$13/*index*/); if(PL$29/*isWhiteSpace*/(PL$26/*ch*/)){ ++PL$13/*index*/; }else{ if(PL$30/*isLineTerminator*/(PL$26/*ch*/)){ ++PL$13/*index*/; if(((PL$26/*ch*/ === 13) && (PL$11/*source*/["charCodeAt"](PL$13/*index*/) === 10))){ ++PL$13/*index*/; }; ++PL$14/*lineNumber*/; PL$15/*lineStart*/ = PL$13/*index*/; PL$42/*start*/ = true; }else{ if((PL$26/*ch*/ === 47)){ PL$26/*ch*/ = PL$11/*source*/["charCodeAt"]((PL$13/*index*/ + 1)); if((PL$26/*ch*/ === 47)){ ++PL$13/*index*/; ++PL$13/*index*/; PL$46/*skipSingleLineComment*/(2); PL$42/*start*/ = true; }else{ if((PL$26/*ch*/ === 42)){ ++PL$13/*index*/; ++PL$13/*index*/; PL$48/*skipMultiLineComment*/(); }else{ break;; }; }; }else{ if((PL$42/*start*/ && (PL$26/*ch*/ === 45))){ if(((PL$11/*source*/["charCodeAt"]((PL$13/*index*/ + 1)) === 45) && (PL$11/*source*/["charCodeAt"]((PL$13/*index*/ + 2)) === 62))){ PL$13/*index*/ += 3; PL$46/*skipSingleLineComment*/(3); }else{ break;; }; }else{ if((PL$26/*ch*/ === 60)){ if((PL$11/*source*/["slice"]((PL$13/*index*/ + 1), (PL$13/*index*/ + 4)) === "!--")){ ++PL$13/*index*/; ++PL$13/*index*/; ++PL$13/*index*/; ++PL$13/*index*/; PL$46/*skipSingleLineComment*/(4); }else{ break;; }; }else{ break;; }; }; }; }; };}}; ;}; function PL$51/*scanHexEscape*/(PL$52/*prefix*/){ ; var PL$53/*i*/; ; var PL$54/*len*/; ; var PL$26/*ch*/; ; var PL$55/*code*/ = 0; ; PL$54/*len*/ = ((PL$52/*prefix*/ === "u") ? 4 : 2); for(PL$53/*i*/ = 0;(PL$53/*i*/ < PL$54/*len*/);++PL$53/*i*/){{ if(((PL$13/*index*/ < PL$16/*length*/) && PL$27/*isHexDigit*/(PL$11/*source*/[PL$13/*index*/]))){ PL$26/*ch*/ = PL$11/*source*/[PL$13/*index*/++]; PL$55/*code*/ = ((PL$56/*code**/ * 16) + "0123456789abcdef"["indexOf"](PL$26/*ch*/["toLowerCase"]())); }else{ return ""; };}}; return PL$32/*String*/["fromCharCode"](PL$55/*code*/); ;}; function PL$57/*scanUnicodeCodePointEscape*/(){ ; var PL$26/*ch*/; ; var PL$55/*code*/; ; var PL$58/*cu1*/; ; var PL$59/*cu2*/; ; PL$26/*ch*/ = PL$11/*source*/[PL$13/*index*/]; PL$55/*code*/ = 0; if((PL$26/*ch*/ === "}")){ PL$49/*throwError*/({ }, PL$9/*Messages*/["UnexpectedToken"], "ILLEGAL"); }; while((PL$13/*index*/ < PL$16/*length*/)){ { PL$26/*ch*/ = PL$11/*source*/[PL$13/*index*/++]; if(! PL$27/*isHexDigit*/(PL$26/*ch*/)){ break;; }; PL$55/*code*/ = ((PL$56/*code**/ * 16) + "0123456789abcdef"["indexOf"](PL$26/*ch*/["toLowerCase"]()));}}; if(((PL$55/*code*/ > 1114111) || (PL$26/*ch*/ !== "}"))){ PL$49/*throwError*/({ }, PL$9/*Messages*/["UnexpectedToken"], "ILLEGAL"); }; if((PL$55/*code*/ <= 65535)){ return PL$32/*String*/["fromCharCode"](PL$55/*code*/); }; PL$58/*cu1*/ = (((PL$55/*code*/ - 65536) >> 10) + 55296); PL$59/*cu2*/ = (((PL$55/*code*/ - 65536) & 1023) + 56320); return PL$32/*String*/["fromCharCode"](PL$58/*cu1*/, PL$59/*cu2*/); ;}; function PL$60/*getEscapedIdentifier*/(){ ; var PL$26/*ch*/; ; var PL$35/*id*/; ; PL$26/*ch*/ = PL$11/*source*/["charCodeAt"](PL$13/*index*/++); PL$35/*id*/ = PL$32/*String*/["fromCharCode"](PL$26/*ch*/); if((PL$26/*ch*/ === 92)){ if((PL$11/*source*/["charCodeAt"](PL$13/*index*/) !== 117)){ PL$49/*throwError*/({ }, PL$9/*Messages*/["UnexpectedToken"], "ILLEGAL"); }; ++PL$13/*index*/; PL$26/*ch*/ = PL$51/*scanHexEscape*/("u"); if(((! PL$26/*ch*/ || (PL$26/*ch*/ === "\\")) || ! PL$31/*isIdentifierStart*/(PL$26/*ch*/["charCodeAt"](0)))){ PL$49/*throwError*/({ }, PL$9/*Messages*/["UnexpectedToken"], "ILLEGAL"); }; PL$35/*id*/ = PL$26/*ch*/; }; while((PL$13/*index*/ < PL$16/*length*/)){ { PL$26/*ch*/ = PL$11/*source*/["charCodeAt"](PL$13/*index*/); if(! PL$33/*isIdentifierPart*/(PL$26/*ch*/)){ break;; }; ++PL$13/*index*/; PL$35/*id*/ += PL$32/*String*/["fromCharCode"](PL$26/*ch*/); if((PL$26/*ch*/ === 92)){ PL$35/*id*/ = PL$35/*id*/["substr"](0, (PL$35/*id*/["length"] - 1)); if((PL$11/*source*/["charCodeAt"](PL$13/*index*/) !== 117)){ PL$49/*throwError*/({ }, PL$9/*Messages*/["UnexpectedToken"], "ILLEGAL"); }; ++PL$13/*index*/; PL$26/*ch*/ = PL$51/*scanHexEscape*/("u"); if(((! PL$26/*ch*/ || (PL$26/*ch*/ === "\\")) || ! PL$33/*isIdentifierPart*/(PL$26/*ch*/["charCodeAt"](0)))){ PL$49/*throwError*/({ }, PL$9/*Messages*/["UnexpectedToken"], "ILLEGAL"); }; PL$35/*id*/ += PL$26/*ch*/; };}}; return PL$35/*id*/; ;}; function PL$61/*getIdentifier*/(){ ; var PL$42/*start*/; ; var PL$26/*ch*/; ; PL$42/*start*/ = PL$13/*index*/++; while((PL$13/*index*/ < PL$16/*length*/)){ { PL$26/*ch*/ = PL$11/*source*/["charCodeAt"](PL$13/*index*/); if((PL$26/*ch*/ === 92)){ PL$13/*index*/ = PL$42/*start*/; return PL$60/*getEscapedIdentifier*/(); }; if(PL$33/*isIdentifierPart*/(PL$26/*ch*/)){ ++PL$13/*index*/; }else{ break;; };}}; return PL$11/*source*/["slice"](PL$42/*start*/, PL$13/*index*/); ;}; function PL$62/*scanIdentifier*/(){ ; var PL$42/*start*/; ; var PL$35/*id*/; ; var PL$40/*type*/; ; PL$42/*start*/ = PL$13/*index*/; PL$35/*id*/ = ((PL$11/*source*/["charCodeAt"](PL$13/*index*/) === 92) ? PL$60/*getEscapedIdentifier*/() : PL$61/*getIdentifier*/()); if((PL$35/*id*/["length"] === 1)){ PL$40/*type*/ = PL$3/*Token*/["Identifier"]; }else{ if(PL$38/*isKeyword*/(PL$35/*id*/)){ PL$40/*type*/ = PL$3/*Token*/["Keyword"]; }else{ if((PL$35/*id*/ === "null")){ PL$40/*type*/ = PL$3/*Token*/["NullLiteral"]; }else{ if(((PL$35/*id*/ === "true") || (PL$35/*id*/ === "false"))){ PL$40/*type*/ = PL$3/*Token*/["BooleanLiteral"]; }else{ PL$40/*type*/ = PL$3/*Token*/["Identifier"]; }; }; }; }; return { "type": PL$40/*type*/, "value": PL$35/*id*/, "lineNumber": PL$14/*lineNumber*/, "lineStart": PL$15/*lineStart*/, "start": PL$42/*start*/, "end": PL$13/*index*/ }; ;}; function PL$63/*scanPunctuator*/(){ ; var PL$42/*start*/ = PL$13/*index*/; ; var PL$55/*code*/ = PL$11/*source*/["charCodeAt"](PL$13/*index*/); ; var PL$64/*code2*/; ; var PL$65/*ch1*/ = PL$11/*source*/[PL$13/*index*/]; ; var PL$66/*ch2*/; ; var PL$67/*ch3*/; ; var PL$68/*ch4*/; ; switch (PL$55/*code*/){ case 46: case 40: case 41: case 59: case 44: case 123: case 125: case 91: case 93: case 58: case 63: case 126: ++PL$13/*index*/; if(PL$19/*extra*/["tokenize"]){ if((PL$55/*code*/ === 40)){ PL$19/*extra*/["openParenToken"] = PL$19/*extra*/["tokens"]["length"]; }else{ if((PL$55/*code*/ === 123)){ PL$19/*extra*/["openCurlyToken"] = PL$19/*extra*/["tokens"]["length"]; }; }; }; return { "type": PL$3/*Token*/["Punctuator"], "value": PL$32/*String*/["fromCharCode"](PL$55/*code*/), "lineNumber": PL$14/*lineNumber*/, "lineStart": PL$15/*lineStart*/, "start": PL$42/*start*/, "end": PL$13/*index*/ }; default: PL$64/*code2*/ = PL$11/*source*/["charCodeAt"]((PL$13/*index*/ + 1)); if((PL$64/*code2*/ === 61)){ switch (PL$55/*code*/){ case 43: case 45: case 47: case 60: case 62: case 94: case 124: case 37: case 38: case 42: PL$13/*index*/ += 2; return { "type": PL$3/*Token*/["Punctuator"], "value": (PL$32/*String*/["fromCharCode"](PL$55/*code*/) + PL$32/*String*/["fromCharCode"](PL$64/*code2*/)), "lineNumber": PL$14/*lineNumber*/, "lineStart": PL$15/*lineStart*/, "start": PL$42/*start*/, "end": PL$13/*index*/ }; case 33: case 61: PL$13/*index*/ += 2; if((PL$11/*source*/["charCodeAt"](PL$13/*index*/) === 61)){ ++PL$13/*index*/; }; return { "type": PL$3/*Token*/["Punctuator"], "value": PL$11/*source*/["slice"](PL$42/*start*/, PL$13/*index*/), "lineNumber": PL$14/*lineNumber*/, "lineStart": PL$15/*lineStart*/, "start": PL$42/*start*/, "end": PL$13/*index*/ }; }; }; }; PL$68/*ch4*/ = PL$11/*source*/["substr"](PL$13/*index*/, 4); if((PL$68/*ch4*/ === ">>>=")){ PL$13/*index*/ += 4; return { "type": PL$3/*Token*/["Punctuator"], "value": PL$68/*ch4*/, "lineNumber": PL$14/*lineNumber*/, "lineStart": PL$15/*lineStart*/, "start": PL$42/*start*/, "end": PL$13/*index*/ }; }; PL$67/*ch3*/ = PL$68/*ch4*/["substr"](0, 3); if((((PL$67/*ch3*/ === ">>>") || (PL$67/*ch3*/ === "<<=")) || (PL$67/*ch3*/ === ">>="))){ PL$13/*index*/ += 3; return { "type": PL$3/*Token*/["Punctuator"], "value": PL$67/*ch3*/, "lineNumber": PL$14/*lineNumber*/, "lineStart": PL$15/*lineStart*/, "start": PL$42/*start*/, "end": PL$13/*index*/ }; }; PL$66/*ch2*/ = PL$67/*ch3*/["substr"](0, 2); if((((PL$65/*ch1*/ === PL$66/*ch2*/[1]) && ("+-<>&|"["indexOf"](PL$65/*ch1*/) >= 0)) || (PL$66/*ch2*/ === "=>"))){ PL$13/*index*/ += 2; return { "type": PL$3/*Token*/["Punctuator"], "value": PL$66/*ch2*/, "lineNumber": PL$14/*lineNumber*/, "lineStart": PL$15/*lineStart*/, "start": PL$42/*start*/, "end": PL$13/*index*/ }; }; if(("<>=!+-*%&|^/"["indexOf"](PL$65/*ch1*/) >= 0)){ ++PL$13/*index*/; return { "type": PL$3/*Token*/["Punctuator"], "value": PL$65/*ch1*/, "lineNumber": PL$14/*lineNumber*/, "lineStart": PL$15/*lineStart*/, "start": PL$42/*start*/, "end": PL$13/*index*/ }; }; PL$49/*throwError*/({ }, PL$9/*Messages*/["UnexpectedToken"], "ILLEGAL"); ;}; function PL$69/*scanHexLiteral*/(PL$42/*start*/){ ; var PL$70/*number*/ = ""; ; while((PL$13/*index*/ < PL$16/*length*/)){ { if(! PL$27/*isHexDigit*/(PL$11/*source*/[PL$13/*index*/])){ break;; }; PL$70/*number*/ += PL$11/*source*/[PL$13/*index*/++];}}; if((PL$70/*number*/["length"] === 0)){ PL$49/*throwError*/({ }, PL$9/*Messages*/["UnexpectedToken"], "ILLEGAL"); }; if(PL$31/*isIdentifierStart*/(PL$11/*source*/["charCodeAt"](PL$13/*index*/))){ PL$49/*throwError*/({ }, PL$9/*Messages*/["UnexpectedToken"], "ILLEGAL"); }; return { "type": PL$3/*Token*/["NumericLiteral"], "value": PL$71/*parseInt*/(("0x" + PL$70/*number*/), 16), "lineNumber": PL$14/*lineNumber*/, "lineStart": PL$15/*lineStart*/, "start": PL$42/*start*/, "end": PL$13/*index*/ }; ;}; function PL$72/*scanOctalLiteral*/(PL$42/*start*/){ ; var PL$70/*number*/ = ("0" + PL$11/*source*/[PL$13/*index*/++]); ; while((PL$13/*index*/ < PL$16/*length*/)){ { if(! PL$28/*isOctalDigit*/(PL$11/*source*/[PL$13/*index*/])){ break;; }; PL$70/*number*/ += PL$11/*source*/[PL$13/*index*/++];}}; if((PL$31/*isIdentifierStart*/(PL$11/*source*/["charCodeAt"](PL$13/*index*/)) || PL$25/*isDecimalDigit*/(PL$11/*source*/["charCodeAt"](PL$13/*index*/)))){ PL$49/*throwError*/({ }, PL$9/*Messages*/["UnexpectedToken"], "ILLEGAL"); }; return { "type": PL$3/*Token*/["NumericLiteral"], "value": PL$71/*parseInt*/(PL$70/*number*/, 8), "octal": true, "lineNumber": PL$14/*lineNumber*/, "lineStart": PL$15/*lineStart*/, "start": PL$42/*start*/, "end": PL$13/*index*/ }; ;}; function PL$73/*scanNumericLiteral*/(){ ; var PL$70/*number*/; ; var PL$42/*start*/; ; var PL$26/*ch*/; ; PL$26/*ch*/ = PL$11/*source*/[PL$13/*index*/]; PL$21/*assert*/((PL$25/*isDecimalDigit*/(PL$26/*ch*/["charCodeAt"](0)) || (PL$26/*ch*/ === ".")), "Numeric literal must start with a decimal digit or a decimal point"); PL$42/*start*/ = PL$13/*index*/; PL$70/*number*/ = ""; if((PL$26/*ch*/ !== ".")){ PL$70/*number*/ = PL$11/*source*/[PL$13/*index*/++]; PL$26/*ch*/ = PL$11/*source*/[PL$13/*index*/]; if((PL$70/*number*/ === "0")){ if(((PL$26/*ch*/ === "x") || (PL$26/*ch*/ === "X"))){ ++PL$13/*index*/; return PL$69/*scanHexLiteral*/(PL$42/*start*/); }; if(PL$28/*isOctalDigit*/(PL$26/*ch*/)){ return PL$72/*scanOctalLiteral*/(PL$42/*start*/); }; if((PL$26/*ch*/ && PL$25/*isDecimalDigit*/(PL$26/*ch*/["charCodeAt"](0)))){ PL$49/*throwError*/({ }, PL$9/*Messages*/["UnexpectedToken"], "ILLEGAL"); }; }; while(PL$25/*isDecimalDigit*/(PL$11/*source*/["charCodeAt"](PL$13/*index*/))){ { PL$70/*number*/ += PL$11/*source*/[PL$13/*index*/++];}}; PL$26/*ch*/ = PL$11/*source*/[PL$13/*index*/]; }; if((PL$26/*ch*/ === ".")){ PL$70/*number*/ += PL$11/*source*/[PL$13/*index*/++]; while(PL$25/*isDecimalDigit*/(PL$11/*source*/["charCodeAt"](PL$13/*index*/))){ { PL$70/*number*/ += PL$11/*source*/[PL$13/*index*/++];}}; PL$26/*ch*/ = PL$11/*source*/[PL$13/*index*/]; }; if(((PL$26/*ch*/ === "e") || (PL$26/*ch*/ === "E"))){ PL$70/*number*/ += PL$11/*source*/[PL$13/*index*/++]; PL$26/*ch*/ = PL$11/*source*/[PL$13/*index*/]; if(((PL$26/*ch*/ === "+") || (PL$26/*ch*/ === "-"))){ PL$70/*number*/ += PL$11/*source*/[PL$13/*index*/++]; }; if(PL$25/*isDecimalDigit*/(PL$11/*source*/["charCodeAt"](PL$13/*index*/))){ while(PL$25/*isDecimalDigit*/(PL$11/*source*/["charCodeAt"](PL$13/*index*/))){ { PL$70/*number*/ += PL$11/*source*/[PL$13/*index*/++];}}; }else{ PL$49/*throwError*/({ }, PL$9/*Messages*/["UnexpectedToken"], "ILLEGAL"); }; }; if(PL$31/*isIdentifierStart*/(PL$11/*source*/["charCodeAt"](PL$13/*index*/))){ PL$49/*throwError*/({ }, PL$9/*Messages*/["UnexpectedToken"], "ILLEGAL"); }; return { "type": PL$3/*Token*/["NumericLiteral"], "value": PL$74/*parseFloat*/(PL$70/*number*/), "lineNumber": PL$14/*lineNumber*/, "lineStart": PL$15/*lineStart*/, "start": PL$42/*start*/, "end": PL$13/*index*/ }; ;}; function PL$75/*scanStringLiteral*/(){ ; var PL$76/*str*/ = ""; ; var PL$77/*quote*/; ; var PL$42/*start*/; ; var PL$26/*ch*/; ; var PL$55/*code*/; ; var PL$78/*unescaped*/; ; var PL$79/*restore*/; ; var PL$80/*octal*/ = false; ; var PL$81/*startLineNumber*/; ; var PL$82/*startLineStart*/; ; PL$81/*startLineNumber*/ = PL$14/*lineNumber*/; PL$82/*startLineStart*/ = PL$15/*lineStart*/; PL$77/*quote*/ = PL$11/*source*/[PL$13/*index*/]; PL$21/*assert*/(((PL$77/*quote*/ === "'") || (PL$77/*quote*/ === "\"")), "String literal must starts with a quote"); PL$42/*start*/ = PL$13/*index*/; ++PL$13/*index*/; while((PL$13/*index*/ < PL$16/*length*/)){ { PL$26/*ch*/ = PL$11/*source*/[PL$13/*index*/++]; if((PL$26/*ch*/ === PL$77/*quote*/)){ PL$77/*quote*/ = ""; break;; }else{ if((PL$26/*ch*/ === "\\")){ PL$26/*ch*/ = PL$11/*source*/[PL$13/*index*/++]; if((! PL$26/*ch*/ || ! PL$30/*isLineTerminator*/(PL$26/*ch*/["charCodeAt"](0)))){ switch (PL$26/*ch*/){ case "u": case "x": if((PL$11/*source*/[PL$13/*index*/] === "{")){ ++PL$13/*index*/; PL$76/*str*/ += PL$57/*scanUnicodeCodePointEscape*/(); }else{ PL$79/*restore*/ = PL$13/*index*/; PL$78/*unescaped*/ = PL$51/*scanHexEscape*/(PL$26/*ch*/); if(PL$78/*unescaped*/){ PL$76/*str*/ += PL$78/*unescaped*/; }else{ PL$13/*index*/ = PL$79/*restore*/; PL$76/*str*/ += PL$26/*ch*/; }; }; break;; case "n": PL$76/*str*/ += "\n"; break;; case "r": PL$76/*str*/ += "\r"; break;; case "t": PL$76/*str*/ += " "; break;; case "b": PL$76/*str*/ += ""; break;; case "f": PL$76/*str*/ += " "; break;; case "v": PL$76/*str*/ += " "; break;; default: if(PL$28/*isOctalDigit*/(PL$26/*ch*/)){ PL$55/*code*/ = "01234567"["indexOf"](PL$26/*ch*/); if((PL$55/*code*/ !== 0)){ PL$80/*octal*/ = true; }; if(((PL$13/*index*/ < PL$16/*length*/) && PL$28/*isOctalDigit*/(PL$11/*source*/[PL$13/*index*/]))){ PL$80/*octal*/ = true; PL$55/*code*/ = ((PL$56/*code**/ * 8) + "01234567"["indexOf"](PL$11/*source*/[PL$13/*index*/++])); if(((("0123"["indexOf"](PL$26/*ch*/) >= 0) && (PL$13/*index*/ < PL$16/*length*/)) && PL$28/*isOctalDigit*/(PL$11/*source*/[PL$13/*index*/]))){ PL$55/*code*/ = ((PL$56/*code**/ * 8) + "01234567"["indexOf"](PL$11/*source*/[PL$13/*index*/++])); }; }; PL$76/*str*/ += PL$32/*String*/["fromCharCode"](PL$55/*code*/); }else{ PL$76/*str*/ += PL$26/*ch*/; }; break;; }; }else{ ++PL$14/*lineNumber*/; if(((PL$26/*ch*/ === "\r") && (PL$11/*source*/[PL$13/*index*/] === "\n"))){ ++PL$13/*index*/; }; PL$15/*lineStart*/ = PL$13/*index*/; }; }else{ if(PL$30/*isLineTerminator*/(PL$26/*ch*/["charCodeAt"](0))){ break;; }else{ PL$76/*str*/ += PL$26/*ch*/; }; }; };}}; if((PL$77/*quote*/ !== "")){ PL$49/*throwError*/({ }, PL$9/*Messages*/["UnexpectedToken"], "ILLEGAL"); }; return { "type": PL$3/*Token*/["StringLiteral"], "value": PL$76/*str*/, "octal": PL$80/*octal*/, "startLineNumber": PL$81/*startLineNumber*/, "startLineStart": PL$82/*startLineStart*/, "lineNumber": PL$14/*lineNumber*/, "lineStart": PL$15/*lineStart*/, "start": PL$42/*start*/, "end": PL$13/*index*/ }; ;}; function PL$83/*testRegExp*/(PL$84/*pattern*/, PL$85/*flags*/){ ; var PL$86/*tmp*/ = PL$84/*pattern*/; ; var PL$41/*value*/; ; if((PL$85/*flags*/["indexOf"]("u") >= 0)){ PL$86/*tmp*/ = PL$86/*tmp*/["replace"](/\\u\{([0-9a-fA-F]+)\}/g, (function(PL$87/*$0*/, PL$88/*$1*/){ ; if((PL$71/*parseInt*/(PL$88/*$1*/, 16) <= 1114111)){ return "x"; }; PL$49/*throwError*/({ }, PL$9/*Messages*/["InvalidRegExp"]); ;}))["replace"](/[\uD800-\uDBFF][\uDC00-\uDFFF]/g, "x"); }; try { PL$41/*value*/ = new PL$20/*RegExp*/(PL$86/*tmp*/);}catch(PL$89/*e*/){ PL$49/*throwError*/({ }, PL$9/*Messages*/["InvalidRegExp"]);}; try { return new PL$20/*RegExp*/(PL$84/*pattern*/, PL$85/*flags*/);}catch(PL$90/*exception*/){ return null;}; ;}; function PL$91/*scanRegExpBody*/(){ ; var PL$26/*ch*/; ; var PL$76/*str*/; ; var PL$92/*classMarker*/; ; var PL$93/*terminated*/; ; var PL$94/*body*/; ; PL$26/*ch*/ = PL$11/*source*/[PL$13/*index*/]; PL$21/*assert*/((PL$26/*ch*/ === "/"), "Regular expression literal must start with a slash"); PL$76/*str*/ = PL$11/*source*/[PL$13/*index*/++]; PL$92/*classMarker*/ = false; PL$93/*terminated*/ = false; while((PL$13/*index*/ < PL$16/*length*/)){ { PL$26/*ch*/ = PL$11/*source*/[PL$13/*index*/++]; PL$76/*str*/ += PL$26/*ch*/; if((PL$26/*ch*/ === "\\")){ PL$26/*ch*/ = PL$11/*source*/[PL$13/*index*/++]; if(PL$30/*isLineTerminator*/(PL$26/*ch*/["charCodeAt"](0))){ PL$49/*throwError*/({ }, PL$9/*Messages*/["UnterminatedRegExp"]); }; PL$76/*str*/ += PL$26/*ch*/; }else{ if(PL$30/*isLineTerminator*/(PL$26/*ch*/["charCodeAt"](0))){ PL$49/*throwError*/({ }, PL$9/*Messages*/["UnterminatedRegExp"]); }else{ if(PL$92/*classMarker*/){ if((PL$26/*ch*/ === "]")){ PL$92/*classMarker*/ = false; }; }else{ if((PL$26/*ch*/ === "/")){ PL$93/*terminated*/ = true; break;; }else{ if((PL$26/*ch*/ === "[")){ PL$92/*classMarker*/ = true; }; }; }; }; };}}; if(! PL$93/*terminated*/){ PL$49/*throwError*/({ }, PL$9/*Messages*/["UnterminatedRegExp"]); }; PL$94/*body*/ = PL$76/*str*/["substr"](1, (PL$76/*str*/["length"] - 2)); return { "value": PL$94/*body*/, "literal": PL$76/*str*/ }; ;}; function PL$95/*scanRegExpFlags*/(){ ; var PL$26/*ch*/; ; var PL$76/*str*/; ; var PL$85/*flags*/; ; var PL$79/*restore*/; ; PL$76/*str*/ = ""; PL$85/*flags*/ = ""; while((PL$13/*index*/ < PL$16/*length*/)){ { PL$26/*ch*/ = PL$11/*source*/[PL$13/*index*/]; if(! PL$33/*isIdentifierPart*/(PL$26/*ch*/["charCodeAt"](0))){ break;; }; ++PL$13/*index*/; if(((PL$26/*ch*/ === "\\") && (PL$13/*index*/ < PL$16/*length*/))){ PL$26/*ch*/ = PL$11/*source*/[PL$13/*index*/]; if((PL$26/*ch*/ === "u")){ ++PL$13/*index*/; PL$79/*restore*/ = PL$13/*index*/; PL$26/*ch*/ = PL$51/*scanHexEscape*/("u"); if(PL$26/*ch*/){ PL$85/*flags*/ += PL$26/*ch*/; for(PL$76/*str*/ += "\\u";(PL$79/*restore*/ < PL$13/*index*/);++PL$79/*restore*/){{ PL$76/*str*/ += PL$11/*source*/[PL$79/*restore*/];}}; }else{ PL$13/*index*/ = PL$79/*restore*/; PL$85/*flags*/ += "u"; PL$76/*str*/ += "\\u"; }; PL$96/*throwErrorTolerant*/({ }, PL$9/*Messages*/["UnexpectedToken"], "ILLEGAL"); }else{ PL$76/*str*/ += "\\"; PL$96/*throwErrorTolerant*/({ }, PL$9/*Messages*/["UnexpectedToken"], "ILLEGAL"); }; }else{ PL$85/*flags*/ += PL$26/*ch*/; PL$76/*str*/ += PL$26/*ch*/; };}}; return { "value": PL$85/*flags*/, "literal": PL$76/*str*/ }; ;}; function PL$97/*scanRegExp*/(){ ; var PL$42/*start*/; ; var PL$94/*body*/; ; var PL$85/*flags*/; ; var PL$41/*value*/; ; PL$17/*lookahead*/ = null; PL$50/*skipComment*/(); PL$42/*start*/ = PL$13/*index*/; PL$94/*body*/ = PL$91/*scanRegExpBody*/(); PL$85/*flags*/ = PL$95/*scanRegExpFlags*/(); PL$41/*value*/ = PL$83/*testRegExp*/(PL$94/*body*/["value"], PL$85/*flags*/["value"]); if(PL$19/*extra*/["tokenize"]){ return { "type": PL$3/*Token*/["RegularExpression"], "value": PL$41/*value*/, "regex": { "pattern": PL$94/*body*/["value"], "flags": PL$85/*flags*/["value"] }, "lineNumber": PL$14/*lineNumber*/, "lineStart": PL$15/*lineStart*/, "start": PL$42/*start*/, "end": PL$13/*index*/ }; }; return { "literal": (PL$94/*body*/["literal"] + PL$85/*flags*/["literal"]), "value": PL$41/*value*/, "regex": { "pattern": PL$94/*body*/["value"], "flags": PL$85/*flags*/["value"] }, "start": PL$42/*start*/, "end": PL$13/*index*/ }; ;}; function PL$98/*collectRegex*/(){ ; var PL$99/*pos*/; ; var PL$44/*loc*/; ; var PL$100/*regex*/; ; var PL$101/*token*/; ; PL$50/*skipComment*/(); PL$99/*pos*/ = PL$13/*index*/; PL$44/*loc*/ = { "start": { "line": PL$14/*lineNumber*/, "column": (PL$13/*index*/ - PL$15/*lineStart*/) } }; PL$100/*regex*/ = PL$97/*scanRegExp*/(); PL$44/*loc*/["end"] = { "line": PL$14/*lineNumber*/, "column": (PL$13/*index*/ - PL$15/*lineStart*/) }; if(! PL$19/*extra*/["tokenize"]){ if((PL$19/*extra*/["tokens"]["length"] > 0)){ PL$101/*token*/ = PL$19/*extra*/["tokens"][(PL$19/*extra*/["tokens"]["length"] - 1)]; if(((PL$101/*token*/["range"][0] === PL$99/*pos*/) && (PL$101/*token*/["type"] === "Punctuator"))){ if(((PL$101/*token*/["value"] === "/") || (PL$101/*token*/["value"] === "/="))){ PL$19/*extra*/["tokens"]["pop"](); }; }; }; PL$19/*extra*/["tokens"]["push"]({ "type": "RegularExpression", "value": PL$100/*regex*/["literal"], "regex": PL$100/*regex*/["regex"], "range": [ PL$99/*pos*/, PL$13/*index*/ ], "loc": PL$44/*loc*/ }); }; return PL$100/*regex*/; ;}; function PL$102/*isIdentifierName*/(PL$101/*token*/){ ; return ((((PL$101/*token*/["type"] === PL$3/*Token*/["Identifier"]) || (PL$101/*token*/["type"] === PL$3/*Token*/["Keyword"])) || (PL$101/*token*/["type"] === PL$3/*Token*/["BooleanLiteral"])) || (PL$101/*token*/["type"] === PL$3/*Token*/["NullLiteral"])); ;}; function PL$103/*advanceSlash*/(){ ; var PL$104/*prevToken*/; ; var PL$105/*checkToken*/; ; PL$104/*prevToken*/ = PL$19/*extra*/["tokens"][(PL$19/*extra*/["tokens"]["length"] - 1)]; if(! PL$104/*prevToken*/){ return PL$98/*collectRegex*/(); }; if((PL$104/*prevToken*/["type"] === "Punctuator")){ if((PL$104/*prevToken*/["value"] === "]")){ return PL$63/*scanPunctuator*/(); }; if((PL$104/*prevToken*/["value"] === ")")){ PL$105/*checkToken*/ = PL$19/*extra*/["tokens"][(PL$19/*extra*/["openParenToken"] - 1)]; if(((PL$105/*checkToken*/ && (PL$105/*checkToken*/["type"] === "Keyword")) && ((((PL$105/*checkToken*/["value"] === "if") || (PL$105/*checkToken*/["value"] === "while")) || (PL$105/*checkToken*/["value"] === "for")) || (PL$105/*checkToken*/["value"] === "with")))){ return PL$98/*collectRegex*/(); }; return PL$63/*scanPunctuator*/(); }; if((PL$104/*prevToken*/["value"] === "}")){ if((PL$19/*extra*/["tokens"][(PL$19/*extra*/["openCurlyToken"] - 3)] && (PL$19/*extra*/["tokens"][(PL$19/*extra*/["openCurlyToken"] - 3)]["type"] === "Keyword"))){ PL$105/*checkToken*/ = PL$19/*extra*/["tokens"][(PL$19/*extra*/["openCurlyToken"] - 4)]; if(! PL$105/*checkToken*/){ return PL$63/*scanPunctuator*/(); }; }else{ if((PL$19/*extra*/["tokens"][(PL$19/*extra*/["openCurlyToken"] - 4)] && (PL$19/*extra*/["tokens"][(PL$19/*extra*/["openCurlyToken"] - 4)]["type"] === "Keyword"))){ PL$105/*checkToken*/ = PL$19/*extra*/["tokens"][(PL$19/*extra*/["openCurlyToken"] - 5)]; if(! PL$105/*checkToken*/){ return PL$98/*collectRegex*/(); }; }else{ return PL$63/*scanPunctuator*/(); }; }; if((PL$5/*FnExprTokens*/["indexOf"](PL$105/*checkToken*/["value"]) >= 0)){ return PL$63/*scanPunctuator*/(); }; return PL$98/*collectRegex*/(); }; return PL$98/*collectRegex*/(); }; if((PL$104/*prevToken*/["type"] === "Keyword")){ return PL$98/*collectRegex*/(); }; return PL$63/*scanPunctuator*/(); ;}; function PL$106/*advance*/(){ ; var PL$26/*ch*/; ; PL$50/*skipComment*/(); if((PL$13/*index*/ >= PL$16/*length*/)){ return { "type": PL$3/*Token*/["EOF"], "lineNumber": PL$14/*lineNumber*/, "lineStart": PL$15/*lineStart*/, "start": PL$13/*index*/, "end": PL$13/*index*/ }; }; PL$26/*ch*/ = PL$11/*source*/["charCodeAt"](PL$13/*index*/); if(PL$31/*isIdentifierStart*/(PL$26/*ch*/)){ return PL$62/*scanIdentifier*/(); }; if((((PL$26/*ch*/ === 40) || (PL$26/*ch*/ === 41)) || (PL$26/*ch*/ === 59))){ return PL$63/*scanPunctuator*/(); }; if(((PL$26/*ch*/ === 39) || (PL$26/*ch*/ === 34))){ return PL$75/*scanStringLiteral*/(); }; if((PL$26/*ch*/ === 46)){ if(PL$25/*isDecimalDigit*/(PL$11/*source*/["charCodeAt"]((PL$13/*index*/ + 1)))){ return PL$73/*scanNumericLiteral*/(); }; return PL$63/*scanPunctuator*/(); }; if(PL$25/*isDecimalDigit*/(PL$26/*ch*/)){ return PL$73/*scanNumericLiteral*/(); }; if((PL$19/*extra*/["tokenize"] && (PL$26/*ch*/ === 47))){ return PL$103/*advanceSlash*/(); }; return PL$63/*scanPunctuator*/(); ;}; function PL$107/*collectToken*/(){ ; var PL$44/*loc*/; ; var PL$101/*token*/; ; var PL$41/*value*/; ; var PL$108/*entry*/; ; PL$50/*skipComment*/(); PL$44/*loc*/ = { "start": { "line": PL$14/*lineNumber*/, "column": (PL$13/*index*/ - PL$15/*lineStart*/) } }; PL$101/*token*/ = PL$106/*advance*/(); PL$44/*loc*/["end"] = { "line": PL$14/*lineNumber*/, "column": (PL$13/*index*/ - PL$15/*lineStart*/) }; if((PL$101/*token*/["type"] !== PL$3/*Token*/["EOF"])){ PL$41/*value*/ = PL$11/*source*/["slice"](PL$101/*token*/["start"], PL$101/*token*/["end"]); PL$108/*entry*/ = { "type": PL$4/*TokenName*/[PL$101/*token*/["type"]], "value": PL$41/*value*/, "range": [ PL$101/*token*/["start"], PL$101/*token*/["end"] ], "loc": PL$44/*loc*/ }; if(PL$101/*token*/["regex"]){ PL$108/*entry*/["regex"] = { "pattern": PL$101/*token*/["regex"]["pattern"], "flags": PL$101/*token*/["regex"]["flags"] }; }; PL$19/*extra*/["tokens"]["push"](PL$108/*entry*/); }; return PL$101/*token*/; ;}; function PL$109/*lex*/(){ ; var PL$101/*token*/; ; PL$101/*token*/ = PL$17/*lookahead*/; PL$13/*index*/ = PL$101/*token*/["end"]; PL$14/*lineNumber*/ = PL$101/*token*/["lineNumber"]; PL$15/*lineStart*/ = PL$101/*token*/["lineStart"]; PL$17/*lookahead*/ = ((typeof PL$19/*extra*/["tokens"] !== "undefined") ? PL$107/*collectToken*/() : PL$106/*advance*/()); PL$13/*index*/ = PL$101/*token*/["end"]; PL$14/*lineNumber*/ = PL$101/*token*/["lineNumber"]; PL$15/*lineStart*/ = PL$101/*token*/["lineStart"]; return PL$101/*token*/; ;}; function PL$110/*peek*/(){ ; var PL$99/*pos*/; ; var PL$111/*line*/; ; var PL$42/*start*/; ; PL$99/*pos*/ = PL$13/*index*/; PL$111/*line*/ = PL$14/*lineNumber*/; PL$42/*start*/ = PL$15/*lineStart*/; PL$17/*lookahead*/ = ((typeof PL$19/*extra*/["tokens"] !== "undefined") ? PL$107/*collectToken*/() : PL$106/*advance*/()); PL$13/*index*/ = PL$99/*pos*/; PL$14/*lineNumber*/ = PL$111/*line*/; PL$15/*lineStart*/ = PL$42/*start*/; ;}; function PL$112/*Position*/(){ ; this["line"] = PL$14/*lineNumber*/; this["column"] = (PL$13/*index*/ - PL$15/*lineStart*/); ;}; function PL$113/*SourceLocation*/(){ ; this["start"] = new PL$112/*Position*/(); this["end"] = null; ;}; function PL$114/*WrappingSourceLocation*/(PL$115/*startToken*/){ ; if((PL$115/*startToken*/["type"] === PL$3/*Token*/["StringLiteral"])){ this["start"] = { "line": PL$115/*startToken*/["startLineNumber"], "column": (PL$115/*startToken*/["start"] - PL$115/*startToken*/["startLineStart"]) }; }else{ this["start"] = { "line": PL$115/*startToken*/["lineNumber"], "column": (PL$115/*startToken*/["start"] - PL$115/*startToken*/["lineStart"]) }; }; this["end"] = null; ;}; function PL$116/*Node*/(){ ; PL$13/*index*/ = PL$17/*lookahead*/["start"]; if((PL$17/*lookahead*/["type"] === PL$3/*Token*/["StringLiteral"])){ PL$14/*lineNumber*/ = PL$17/*lookahead*/["startLineNumber"]; PL$15/*lineStart*/ = PL$17/*lookahead*/["startLineStart"]; }else{ PL$14/*lineNumber*/ = PL$17/*lookahead*/["lineNumber"]; PL$15/*lineStart*/ = PL$17/*lookahead*/["lineStart"]; }; if(PL$19/*extra*/["range"]){ this["range"] = [ PL$13/*index*/, 0 ]; }; if(PL$19/*extra*/["loc"]){ this["loc"] = new PL$113/*SourceLocation*/(); }; ;}; function PL$117/*WrappingNode*/(PL$115/*startToken*/){ ; if(PL$19/*extra*/["range"]){ this["range"] = [ PL$115/*startToken*/["start"], 0 ]; }; if(PL$19/*extra*/["loc"]){ this["loc"] = new PL$114/*WrappingSourceLocation*/(PL$115/*startToken*/); }; ;}; function PL$154/*peekLineTerminator*/(){ ; var PL$99/*pos*/; ; var PL$111/*line*/; ; var PL$42/*start*/; ; var PL$155/*found*/; ; PL$99/*pos*/ = PL$13/*index*/; PL$111/*line*/ = PL$14/*lineNumber*/; PL$42/*start*/ = PL$15/*lineStart*/; PL$50/*skipComment*/(); PL$155/*found*/ = (PL$14/*lineNumber*/ !== PL$111/*line*/); PL$13/*index*/ = PL$99/*pos*/; PL$14/*lineNumber*/ = PL$111/*line*/; PL$15/*lineStart*/ = PL$42/*start*/; return PL$155/*found*/; ;}; function PL$49/*throwError*/(PL$101/*token*/, PL$156/*messageFormat*/){ var PL$159/*arguments*/ = arguments; ; var PL$157/*error*/; ; var PL$131/*args*/ = PL$158/*Array*/["prototype"]["slice"]["call"](PL$159/*arguments*/, 2); ; var PL$160/*msg*/ = PL$156/*messageFormat*/["replace"](/%(\d)/g, (function(PL$161/*whole*/, PL$13/*index*/){ ; PL$21/*assert*/((PL$13/*index*/ < PL$131/*args*/["length"]), "Message reference must be in range"); return PL$131/*args*/[PL$13/*index*/]; ;})); ; if((typeof PL$101/*token*/["lineNumber"] === "number")){ PL$157/*error*/ = new PL$24/*Error*/(((("Line " + PL$101/*token*/["lineNumber"]) + ": ") + PL$160/*msg*/)); PL$157/*error*/["index"] = PL$101/*token*/["start"]; PL$157/*error*/["lineNumber"] = PL$101/*token*/["lineNumber"]; PL$157/*error*/["column"] = ((PL$101/*token*/["start"] - PL$15/*lineStart*/) + 1); }else{ PL$157/*error*/ = new PL$24/*Error*/(((("Line " + PL$14/*lineNumber*/) + ": ") + PL$160/*msg*/)); PL$157/*error*/["index"] = PL$13/*index*/; PL$157/*error*/["lineNumber"] = PL$14/*lineNumber*/; PL$157/*error*/["column"] = ((PL$13/*index*/ - PL$15/*lineStart*/) + 1); }; PL$157/*error*/["description"] = PL$160/*msg*/; throw PL$157/*error*/; ;}; function PL$96/*throwErrorTolerant*/(){ var PL$159/*arguments*/ = arguments; ; try { PL$49/*throwError*/["apply"](null, PL$159/*arguments*/);}catch(PL$89/*e*/){ if(PL$19/*extra*/["errors"]){ PL$19/*extra*/["errors"]["push"](PL$89/*e*/); }else{ throw PL$89/*e*/; };}; ;}; function PL$162/*throwUnexpected*/(PL$101/*token*/){ ; if((PL$101/*token*/["type"] === PL$3/*Token*/["EOF"])){ PL$49/*throwError*/(PL$101/*token*/, PL$9/*Messages*/["UnexpectedEOS"]); }; if((PL$101/*token*/["type"] === PL$3/*Token*/["NumericLiteral"])){ PL$49/*throwError*/(PL$101/*token*/, PL$9/*Messages*/["UnexpectedNumber"]); }; if((PL$101/*token*/["type"] === PL$3/*Token*/["StringLiteral"])){ PL$49/*throwError*/(PL$101/*token*/, PL$9/*Messages*/["UnexpectedString"]); }; if((PL$101/*token*/["type"] === PL$3/*Token*/["Identifier"])){ PL$49/*throwError*/(PL$101/*token*/, PL$9/*Messages*/["UnexpectedIdentifier"]); }; if((PL$101/*token*/["type"] === PL$3/*Token*/["Keyword"])){ if(PL$34/*isFutureReservedWord*/(PL$101/*token*/["value"])){ PL$49/*throwError*/(PL$101/*token*/, PL$9/*Messages*/["UnexpectedReserved"]); }else{ if((PL$12/*strict*/ && PL$36/*isStrictModeReservedWord*/(PL$101/*token*/["value"]))){ PL$96/*throwErrorTolerant*/(PL$101/*token*/, PL$9/*Messages*/["StrictReservedWord"]); return; }; }; PL$49/*throwError*/(PL$101/*token*/, PL$9/*Messages*/["UnexpectedToken"], PL$101/*token*/["value"]); }; PL$49/*throwError*/(PL$101/*token*/, PL$9/*Messages*/["UnexpectedToken"], PL$101/*token*/["value"]); ;}; function PL$163/*expect*/(PL$41/*value*/){ ; var PL$101/*token*/ = PL$109/*lex*/(); ; if(((PL$101/*token*/["type"] !== PL$3/*Token*/["Punctuator"]) || (PL$101/*token*/["value"] !== PL$41/*value*/))){ PL$162/*throwUnexpected*/(PL$101/*token*/); }; ;}; function PL$164/*expectTolerant*/(PL$41/*value*/){ ; if(PL$19/*extra*/["errors"]){ var PL$101/*token*/ = PL$17/*lookahead*/; ; if(((PL$101/*token*/["type"] !== PL$3/*Token*/["Punctuator"]) && (PL$101/*token*/["value"] !== PL$41/*value*/))){ PL$96/*throwErrorTolerant*/(PL$101/*token*/, PL$9/*Messages*/["UnexpectedToken"], PL$101/*token*/["value"]); }else{ PL$109/*lex*/(); }; }else{ PL$163/*expect*/(PL$41/*value*/); }; ;}; function PL$165/*expectKeyword*/(PL$166/*keyword*/){ ; var PL$101/*token*/ = PL$109/*lex*/(); ; if(((PL$101/*token*/["type"] !== PL$3/*Token*/["Keyword"]) || (PL$101/*token*/["value"] !== PL$166/*keyword*/))){ PL$162/*throwUnexpected*/(PL$101/*token*/); }; ;}; function PL$167/*match*/(PL$41/*value*/){ ; return ((PL$17/*lookahead*/["type"] === PL$3/*Token*/["Punctuator"]) && (PL$17/*lookahead*/["value"] === PL$41/*value*/)); ;}; function PL$168/*matchKeyword*/(PL$166/*keyword*/){ ; return ((PL$17/*lookahead*/["type"] === PL$3/*Token*/["Keyword"]) && (PL$17/*lookahead*/["value"] === PL$166/*keyword*/)); ;}; function PL$169/*matchAssign*/(){ ; var PL$170/*op*/; ; if((PL$17/*lookahead*/["type"] !== PL$3/*Token*/["Punctuator"])){ return false; }; PL$170/*op*/ = PL$17/*lookahead*/["value"]; return ((((((((((((PL$170/*op*/ === "=") || (PL$170/*op*/ === "*=")) || (PL$170/*op*/ === "/=")) || (PL$170/*op*/ === "%=")) || (PL$170/*op*/ === "+=")) || (PL$170/*op*/ === "-=")) || (PL$170/*op*/ === "<<=")) || (PL$170/*op*/ === ">>=")) || (PL$170/*op*/ === ">>>=")) || (PL$170/*op*/ === "&=")) || (PL$170/*op*/ === "^=")) || (PL$170/*op*/ === "|=")); ;}; function PL$171/*consumeSemicolon*/(){ ; var PL$111/*line*/; ; if(((PL$11/*source*/["charCodeAt"](PL$13/*index*/) === 59) || PL$167/*match*/(";"))){ PL$109/*lex*/(); return; }; PL$111/*line*/ = PL$14/*lineNumber*/; PL$50/*skipComment*/(); if((PL$14/*lineNumber*/ !== PL$111/*line*/)){ return; }; if(((PL$17/*lookahead*/["type"] !== PL$3/*Token*/["EOF"]) && ! PL$167/*match*/("}"))){ PL$162/*throwUnexpected*/(PL$17/*lookahead*/); }; ;}; function PL$172/*isLeftHandSide*/(PL$173/*expr*/){ ; return ((PL$173/*expr*/["type"] === PL$6/*Syntax*/["Identifier"]) || (PL$173/*expr*/["type"] === PL$6/*Syntax*/["MemberExpression"])); ;}; function PL$174/*parseArrayInitialiser*/(){ ; var PL$122/*elements*/ = [ ]; ; var PL$175/*node*/ = new PL$116/*Node*/(); ; PL$163/*expect*/("["); while(! PL$167/*match*/("]")){ { if(PL$167/*match*/(",")){ PL$109/*lex*/(); PL$122/*elements*/["push"](null); }else{ PL$122/*elements*/["push"](PL$176/*parseAssignmentExpression*/()); if(! PL$167/*match*/("]")){ PL$163/*expect*/(","); }; };}}; PL$109/*lex*/(); return PL$175/*node*/["finishArrayExpression"](PL$122/*elements*/); ;}; function PL$177/*parsePropertyFunction*/(PL$132/*param*/, PL$178/*first*/){ ; var PL$179/*previousStrict*/; ; var PL$94/*body*/; ; var PL$175/*node*/ = new PL$116/*Node*/(); ; PL$179/*previousStrict*/ = PL$12/*strict*/; PL$94/*body*/ = PL$180/*parseFunctionSourceElements*/(); if(((PL$178/*first*/ && PL$12/*strict*/) && PL$37/*isRestrictedWord*/(PL$132/*param*/[0]["name"]))){ PL$96/*throwErrorTolerant*/(PL$178/*first*/, PL$9/*Messages*/["StrictParamName"]); }; PL$12/*strict*/ = PL$179/*previousStrict*/; return PL$175/*node*/["finishFunctionExpression"](null, PL$132/*param*/, [ ], PL$94/*body*/); ;}; function PL$181/*parseObjectPropertyKey*/(){ ; var PL$101/*token*/; ; var PL$175/*node*/ = new PL$116/*Node*/(); ; PL$101/*token*/ = PL$109/*lex*/(); if(((PL$101/*token*/["type"] === PL$3/*Token*/["StringLiteral"]) || (PL$101/*token*/["type"] === PL$3/*Token*/["NumericLiteral"]))){ if((PL$12/*strict*/ && PL$101/*token*/["octal"])){ PL$96/*throwErrorTolerant*/(PL$101/*token*/, PL$9/*Messages*/["StrictOctalLiteral"]); }; return PL$175/*node*/["finishLiteral"](PL$101/*token*/); }; return PL$175/*node*/["finishIdentifier"](PL$101/*token*/["value"]); ;}; function PL$182/*parseObjectProperty*/(){ ; var PL$101/*token*/; ; var PL$145/*key*/;