@creationix/rex 0.3.1 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -0
- package/package.json +9 -6
- package/rex-cli.js +1334 -1190
- package/rex-cli.ts +268 -27
- package/rex-repl.js +1048 -1135
- package/rex-repl.ts +392 -103
- package/rex.js +290 -954
- package/rex.ohm +48 -21
- package/rex.ohm-bundle.cjs +1 -1
- package/rex.ohm-bundle.d.ts +27 -8
- package/rex.ohm-bundle.js +1 -1
- package/rex.ts +388 -218
- package/rexc-interpreter.ts +386 -88
- package/rx-cli.js +2836 -0
- package/rx-cli.ts +298 -0
package/rex.ohm-bundle.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';const {makeRecipe}=require('ohm-js');const result=makeRecipe(["grammar",{"source":"Rex {\n space += comment\n\n Program\n = Expr*\n\n Expr\n = AssignExpr\n\n AssignExpr\n = Place AssignOp AssignExpr -- assign\n | ExistenceExpr -- value\n\n ExistenceExpr\n = ExistenceExpr AndKw BitExpr -- and\n | ExistenceExpr OrKw BitExpr -- or\n | BitExpr -- value\n\n BitExpr\n = BitExpr \"&\" CompareExpr -- and\n | BitExpr \"^\" CompareExpr -- xor\n | BitExpr \"|\" CompareExpr -- or\n | CompareExpr -- value\n\n CompareExpr\n = AddExpr CompareOp AddExpr -- binary\n | AddExpr -- value\n\n AddExpr\n = AddExpr \"+\" MulExpr -- add\n | AddExpr \"-\" MulExpr -- sub\n | MulExpr -- value\n\n MulExpr\n = MulExpr \"*\" UnaryExpr -- mul\n | MulExpr \"/\" UnaryExpr -- div\n | MulExpr \"%\" UnaryExpr -- mod\n | UnaryExpr -- value\n\n UnaryExpr\n = \"-\" ~digit ~infTok UnaryExpr -- neg\n | \"~\" UnaryExpr -- not\n | DeleteKw Place -- delete\n | PostfixExpr -- value\n\n PostfixExpr\n = PrimaryExpr PostfixTail* -- chain\n\n PostfixTail\n = \".\" navKey -- navStatic\n | \".(\" Expr \")\" -- navDynamic\n | \"(\" \")\" -- callEmpty\n | \"(\" Elements<Expr> \")\" -- call\n\n PrimaryExpr\n = ConditionalExpr\n | DoExpr\n | ForExpr\n | WhileExpr\n | BreakKw -- break\n | ContinueKw -- continue\n | Array\n | Object\n | String\n | Number\n | StringKw -- stringPred\n | NumberKw -- numberPred\n | ObjectKw -- objectPred\n | ArrayKw -- arrayPred\n | BooleanKw -- booleanPred\n | TrueKw -- true\n | FalseKw -- false\n | NullKw -- null\n | UndefinedKw -- undefined\n | SelfExpr -- self\n | identifier -- identifier\n | \"(\" Expr \")\" -- group\n\n SelfExpr\n = SelfKw \"@\" Number -- depth\n | SelfKw -- plain\n\n Place\n = PlaceBase PlaceTail*\n\n PlaceBase\n = identifier\n | SelfKw\n\n PlaceTail\n = \".\" navKey -- navStatic\n | \".(\" Expr \")\" -- navDynamic\n\n ConditionalExpr\n = ConditionalHead Expr DoKw Block ConditionalElse? EndKw\n\n ConditionalHead\n = WhenKw\n | UnlessKw\n\n ConditionalElse\n = ElseKw ConditionalHead Expr DoKw Block ConditionalElse? -- elseChain\n | ElseKw Block -- else\n\n ForExpr\n = ForKw BindingExpr DoKw Block EndKw\n\n WhileExpr\n = WhileKw Expr DoKw Block EndKw\n\n DoExpr\n = DoKw Block EndKw\n\n BindingExpr\n = IterBinding\n | Expr\n\n Block\n = Expr*\n\n Array\n = \"[\" \"]\" -- empty\n | \"[\" BindingExpr \";\" Expr \"]\" -- comprehension\n | \"[\" Elements<Expr> \"]\" -- values\n\n Object\n = \"{\" \"}\" -- empty\n | \"{\" BindingExpr \";\" ObjKey \":\" Expr \"}\" -- comprehension\n | \"{\" Elements<Pair> \"}\" -- pairs\n\n IterBinding\n = identifier \",\" identifier \"in\" Expr -- keyValueIn\n | identifier \"in\" Expr -- valueIn\n | identifier \"of\" Expr -- keyOf\n\n Pair\n = ObjKey \":\" Expr\n\n ObjKey\n = keyName -- bare\n | Number -- number\n | String -- string\n | \"(\" Expr \")\" -- computed\n\n navKey\n = keyName\n | digit+\n\n keyName\n = nameHead nameTail*\n\n CompareOp\n = \"==\"\n | \"!=\"\n | \">=\"\n | \">\"\n | \"<=\"\n | \"<\"\n\n AssignOp\n = \"=\"\n | \"+=\"\n | \"-=\"\n | \"*=\"\n | \"/=\"\n | \"%=\"\n | \"&=\"\n | \"|=\"\n | \"^=\"\n\n Elements<item>\n = item (\",\"? item)* \",\"?\n\n identifier\n = ~reserved nameHead nameTail*\n\n nameHead\n = letter\n | \"_\"\n\n nameTail\n = letter\n | digit\n | \"_\"\n | \"-\"\n\n reserved\n = trueTok\n | falseTok\n | nullTok\n | undefinedTok\n | nanTok\n | infTok\n | selfTok\n | whenTok\n | unlessTok\n | forTok\n | whileTok\n | inTok\n | ofTok\n | doTok\n | elseTok\n | endTok\n | breakTok\n | continueTok\n | andTok\n | orTok\n | deleteTok\n | stringTok\n | numberTok\n | objectTok\n | arrayTok\n | booleanTok\n\n TrueKw\n = trueTok\n\n FalseKw\n = falseTok\n\n NullKw\n = nullTok\n\n UndefinedKw\n = undefinedTok\n\n SelfKw\n = selfTok\n\n WhenKw\n = whenTok\n\n UnlessKw\n = unlessTok\n\n WhileKw\n = whileTok\n\n ForKw\n = forTok\n\n DoKw\n = doTok\n\n ElseKw\n = elseTok\n\n EndKw\n = endTok\n\n BreakKw\n = breakTok\n\n ContinueKw\n = continueTok\n\n AndKw\n = andTok\n\n OrKw\n = orTok\n\n DeleteKw\n = deleteTok\n\n StringKw\n = stringTok\n\n NumberKw\n = numberTok\n\n ObjectKw\n = objectTok\n\n ArrayKw\n = arrayTok\n\n BooleanKw\n = booleanTok\n\n trueTok\n = \"true\" ~nameTail\n\n falseTok\n = \"false\" ~nameTail\n\n nullTok\n = \"null\" ~nameTail\n\n undefinedTok\n = \"undefined\" ~nameTail\n\n nanTok\n = \"nan\" ~nameTail\n\n infTok\n = \"inf\" ~nameTail\n\n selfTok\n = \"self\" ~nameTail\n\n whenTok\n = \"when\" ~nameTail\n\n unlessTok\n = \"unless\" ~nameTail\n\n whileTok\n = \"while\" ~nameTail\n\n forTok\n = \"for\" ~nameTail\n\n inTok\n = \"in\" ~nameTail\n\n ofTok\n = \"of\" ~nameTail\n\n doTok\n = \"do\" ~nameTail\n\n elseTok\n = \"else\" ~nameTail\n\n endTok\n = \"end\" ~nameTail\n\n breakTok\n = \"break\" ~nameTail\n\n continueTok\n = \"continue\" ~nameTail\n\n andTok\n = \"and\" ~nameTail\n\n orTok\n = \"or\" ~nameTail\n\n deleteTok\n = \"delete\" ~nameTail\n\n stringTok\n = \"string\" ~nameTail\n\n numberTok\n = \"number\" ~nameTail\n\n objectTok\n = \"object\" ~nameTail\n\n arrayTok\n = \"array\" ~nameTail\n\n booleanTok\n = \"boolean\" ~nameTail\n\n String\n = DQuotedString\n | SQuotedString\n\n DQuotedString\n = \"\\\"\" dStringChar* \"\\\"\"\n\n dStringChar\n = ~(\"\\\"\" | \"\\\\\") any\n | escape\n\n SQuotedString\n = \"'\" sStringChar* \"'\"\n\n sStringChar\n = ~(\"'\" | \"\\\\\") any\n | escape\n\n escape\n = \"\\\\\" (escapeChar | hexEscape | unicodeEscape)\n\n escapeChar\n = \"\\\"\" | \"'\" | \"\\\\\" | \"/\" | \"b\" | \"f\" | \"n\" | \"r\" | \"t\" | \"0\"\n\n hexEscape\n = \"x\" hex hex\n\n unicodeEscape\n = \"u\" hex hex hex hex\n\n hex\n = digit\n | \"A\"..\"F\"\n | \"a\"..\"f\"\n\n Number\n = hexNumber\n | binaryNumber\n | infLiteral\n | nanLiteral\n | decimalNumber\n\n infLiteral\n = \"-\"? infTok\n\n nanLiteral\n = nanTok\n\n hexNumber\n = \"-\"? \"0x\" hex+\n\n binaryNumber\n = \"-\"? \"0b\" bit+\n\n decimalNumber\n = \"-\"? decimalInteger (\".\" digit+)? exponent?\n\n decimalInteger\n = nonZeroDigit digit* -- nonZero\n | \"0\" -- zero\n\n bit\n = \"0\" | \"1\"\n\n exponent\n = (\"e\" | \"E\") (\"+\" | \"-\")? digit+\n\n nonZeroDigit\n = \"1\"..\"9\"\n\n comment\n = lineComment\n | blockComment\n\n lineComment\n = \"//\" (~\"\\n\" any)* \"\\n\"?\n\n blockComment\n = \"/*\" (~\"*/\" any)* \"*/\"\n}"},"Rex",null,"Program",{"space":["extend",{"sourceInterval":[8,24]},null,[],["app",{"sourceInterval":[17,24]},"comment",[]]],"Program":["define",{"sourceInterval":[28,47]},null,[],["star",{"sourceInterval":[42,47]},["app",{"sourceInterval":[42,46]},"Expr",[]]]],"Expr":["define",{"sourceInterval":[51,72]},null,[],["app",{"sourceInterval":[62,72]},"AssignExpr",[]]],"AssignExpr_assign":["define",{"sourceInterval":[93,133]},null,[],["seq",{"sourceInterval":[93,118]},["app",{"sourceInterval":[93,98]},"Place",[]],["app",{"sourceInterval":[99,107]},"AssignOp",[]],["app",{"sourceInterval":[108,118]},"AssignExpr",[]]]],"AssignExpr_value":["define",{"sourceInterval":[140,179]},null,[],["app",{"sourceInterval":[140,153]},"ExistenceExpr",[]]],"AssignExpr":["define",{"sourceInterval":[76,179]},null,[],["alt",{"sourceInterval":[93,179]},["app",{"sourceInterval":[93,118]},"AssignExpr_assign",[]],["app",{"sourceInterval":[140,153]},"AssignExpr_value",[]]]],"ExistenceExpr_and":["define",{"sourceInterval":[203,240]},null,[],["seq",{"sourceInterval":[203,230]},["app",{"sourceInterval":[203,216]},"ExistenceExpr",[]],["app",{"sourceInterval":[217,222]},"AndKw",[]],["app",{"sourceInterval":[223,230]},"BitExpr",[]]]],"ExistenceExpr_or":["define",{"sourceInterval":[247,283]},null,[],["seq",{"sourceInterval":[247,273]},["app",{"sourceInterval":[247,260]},"ExistenceExpr",[]],["app",{"sourceInterval":[261,265]},"OrKw",[]],["app",{"sourceInterval":[266,273]},"BitExpr",[]]]],"ExistenceExpr_value":["define",{"sourceInterval":[290,329]},null,[],["app",{"sourceInterval":[290,297]},"BitExpr",[]]],"ExistenceExpr":["define",{"sourceInterval":[183,329]},null,[],["alt",{"sourceInterval":[203,329]},["app",{"sourceInterval":[203,230]},"ExistenceExpr_and",[]],["app",{"sourceInterval":[247,273]},"ExistenceExpr_or",[]],["app",{"sourceInterval":[290,297]},"ExistenceExpr_value",[]]]],"BitExpr_and":["define",{"sourceInterval":[347,384]},null,[],["seq",{"sourceInterval":[347,370]},["app",{"sourceInterval":[347,354]},"BitExpr",[]],["terminal",{"sourceInterval":[355,358]},"&"],["app",{"sourceInterval":[359,370]},"CompareExpr",[]]]],"BitExpr_xor":["define",{"sourceInterval":[391,428]},null,[],["seq",{"sourceInterval":[391,414]},["app",{"sourceInterval":[391,398]},"BitExpr",[]],["terminal",{"sourceInterval":[399,402]},"^"],["app",{"sourceInterval":[403,414]},"CompareExpr",[]]]],"BitExpr_or":["define",{"sourceInterval":[435,471]},null,[],["seq",{"sourceInterval":[435,458]},["app",{"sourceInterval":[435,442]},"BitExpr",[]],["terminal",{"sourceInterval":[443,446]},"|"],["app",{"sourceInterval":[447,458]},"CompareExpr",[]]]],"BitExpr_value":["define",{"sourceInterval":[478,517]},null,[],["app",{"sourceInterval":[478,489]},"CompareExpr",[]]],"BitExpr":["define",{"sourceInterval":[333,517]},null,[],["alt",{"sourceInterval":[347,517]},["app",{"sourceInterval":[347,370]},"BitExpr_and",[]],["app",{"sourceInterval":[391,414]},"BitExpr_xor",[]],["app",{"sourceInterval":[435,458]},"BitExpr_or",[]],["app",{"sourceInterval":[478,489]},"BitExpr_value",[]]]],"CompareExpr_binary":["define",{"sourceInterval":[539,579]},null,[],["seq",{"sourceInterval":[539,564]},["app",{"sourceInterval":[539,546]},"AddExpr",[]],["app",{"sourceInterval":[547,556]},"CompareOp",[]],["app",{"sourceInterval":[557,564]},"AddExpr",[]]]],"CompareExpr_value":["define",{"sourceInterval":[586,625]},null,[],["app",{"sourceInterval":[586,593]},"AddExpr",[]]],"CompareExpr":["define",{"sourceInterval":[521,625]},null,[],["alt",{"sourceInterval":[539,625]},["app",{"sourceInterval":[539,564]},"CompareExpr_binary",[]],["app",{"sourceInterval":[586,593]},"CompareExpr_value",[]]]],"AddExpr_add":["define",{"sourceInterval":[643,680]},null,[],["seq",{"sourceInterval":[643,662]},["app",{"sourceInterval":[643,650]},"AddExpr",[]],["terminal",{"sourceInterval":[651,654]},"+"],["app",{"sourceInterval":[655,662]},"MulExpr",[]]]],"AddExpr_sub":["define",{"sourceInterval":[687,724]},null,[],["seq",{"sourceInterval":[687,706]},["app",{"sourceInterval":[687,694]},"AddExpr",[]],["terminal",{"sourceInterval":[695,698]},"-"],["app",{"sourceInterval":[699,706]},"MulExpr",[]]]],"AddExpr_value":["define",{"sourceInterval":[731,770]},null,[],["app",{"sourceInterval":[731,738]},"MulExpr",[]]],"AddExpr":["define",{"sourceInterval":[629,770]},null,[],["alt",{"sourceInterval":[643,770]},["app",{"sourceInterval":[643,662]},"AddExpr_add",[]],["app",{"sourceInterval":[687,706]},"AddExpr_sub",[]],["app",{"sourceInterval":[731,738]},"AddExpr_value",[]]]],"MulExpr_mul":["define",{"sourceInterval":[788,825]},null,[],["seq",{"sourceInterval":[788,809]},["app",{"sourceInterval":[788,795]},"MulExpr",[]],["terminal",{"sourceInterval":[796,799]},"*"],["app",{"sourceInterval":[800,809]},"UnaryExpr",[]]]],"MulExpr_div":["define",{"sourceInterval":[832,869]},null,[],["seq",{"sourceInterval":[832,853]},["app",{"sourceInterval":[832,839]},"MulExpr",[]],["terminal",{"sourceInterval":[840,843]},"/"],["app",{"sourceInterval":[844,853]},"UnaryExpr",[]]]],"MulExpr_mod":["define",{"sourceInterval":[876,913]},null,[],["seq",{"sourceInterval":[876,897]},["app",{"sourceInterval":[876,883]},"MulExpr",[]],["terminal",{"sourceInterval":[884,887]},"%"],["app",{"sourceInterval":[888,897]},"UnaryExpr",[]]]],"MulExpr_value":["define",{"sourceInterval":[920,959]},null,[],["app",{"sourceInterval":[920,929]},"UnaryExpr",[]]],"MulExpr":["define",{"sourceInterval":[774,959]},null,[],["alt",{"sourceInterval":[788,959]},["app",{"sourceInterval":[788,809]},"MulExpr_mul",[]],["app",{"sourceInterval":[832,853]},"MulExpr_div",[]],["app",{"sourceInterval":[876,897]},"MulExpr_mod",[]],["app",{"sourceInterval":[920,929]},"MulExpr_value",[]]]],"UnaryExpr_neg":["define",{"sourceInterval":[979,1017]},null,[],["seq",{"sourceInterval":[979,1007]},["terminal",{"sourceInterval":[979,982]},"-"],["not",{"sourceInterval":[983,989]},["app",{"sourceInterval":[984,989]},"digit",[]]],["not",{"sourceInterval":[990,997]},["app",{"sourceInterval":[991,997]},"infTok",[]]],["app",{"sourceInterval":[998,1007]},"UnaryExpr",[]]]],"UnaryExpr_not":["define",{"sourceInterval":[1024,1061]},null,[],["seq",{"sourceInterval":[1024,1037]},["terminal",{"sourceInterval":[1024,1027]},"~"],["app",{"sourceInterval":[1028,1037]},"UnaryExpr",[]]]],"UnaryExpr_delete":["define",{"sourceInterval":[1068,1108]},null,[],["seq",{"sourceInterval":[1068,1082]},["app",{"sourceInterval":[1068,1076]},"DeleteKw",[]],["app",{"sourceInterval":[1077,1082]},"Place",[]]]],"UnaryExpr_value":["define",{"sourceInterval":[1115,1154]},null,[],["app",{"sourceInterval":[1115,1126]},"PostfixExpr",[]]],"UnaryExpr":["define",{"sourceInterval":[963,1154]},null,[],["alt",{"sourceInterval":[979,1154]},["app",{"sourceInterval":[979,1007]},"UnaryExpr_neg",[]],["app",{"sourceInterval":[1024,1037]},"UnaryExpr_not",[]],["app",{"sourceInterval":[1068,1082]},"UnaryExpr_delete",[]],["app",{"sourceInterval":[1115,1126]},"UnaryExpr_value",[]]]],"PostfixExpr_chain":["define",{"sourceInterval":[1176,1215]},null,[],["seq",{"sourceInterval":[1176,1200]},["app",{"sourceInterval":[1176,1187]},"PrimaryExpr",[]],["star",{"sourceInterval":[1188,1200]},["app",{"sourceInterval":[1188,1199]},"PostfixTail",[]]]]],"PostfixExpr":["define",{"sourceInterval":[1158,1215]},null,[],["app",{"sourceInterval":[1176,1215]},"PostfixExpr_chain",[]]],"PostfixTail_navStatic":["define",{"sourceInterval":[1237,1280]},null,[],["seq",{"sourceInterval":[1237,1247]},["terminal",{"sourceInterval":[1237,1240]},"."],["app",{"sourceInterval":[1241,1247]},"navKey",[]]]],"PostfixTail_navDynamic":["define",{"sourceInterval":[1287,1330]},null,[],["seq",{"sourceInterval":[1287,1300]},["terminal",{"sourceInterval":[1287,1291]},".("],["app",{"sourceInterval":[1292,1296]},"Expr",[]],["terminal",{"sourceInterval":[1297,1300]},")"]]],"PostfixTail_callEmpty":["define",{"sourceInterval":[1337,1378]},null,[],["seq",{"sourceInterval":[1337,1344]},["terminal",{"sourceInterval":[1337,1340]},"("],["terminal",{"sourceInterval":[1341,1344]},")"]]],"PostfixTail_call":["define",{"sourceInterval":[1385,1422]},null,[],["seq",{"sourceInterval":[1385,1407]},["terminal",{"sourceInterval":[1385,1388]},"("],["app",{"sourceInterval":[1389,1403]},"Elements",[["app",{"sourceInterval":[1398,1402]},"Expr",[]]]],["terminal",{"sourceInterval":[1404,1407]},")"]]],"PostfixTail":["define",{"sourceInterval":[1219,1422]},null,[],["alt",{"sourceInterval":[1237,1422]},["app",{"sourceInterval":[1237,1247]},"PostfixTail_navStatic",[]],["app",{"sourceInterval":[1287,1300]},"PostfixTail_navDynamic",[]],["app",{"sourceInterval":[1337,1344]},"PostfixTail_callEmpty",[]],["app",{"sourceInterval":[1385,1407]},"PostfixTail_call",[]]]],"PrimaryExpr_break":["define",{"sourceInterval":[1509,1548]},null,[],["app",{"sourceInterval":[1509,1516]},"BreakKw",[]]],"PrimaryExpr_continue":["define",{"sourceInterval":[1555,1597]},null,[],["app",{"sourceInterval":[1555,1565]},"ContinueKw",[]]],"PrimaryExpr_stringPred":["define",{"sourceInterval":[1655,1699]},null,[],["app",{"sourceInterval":[1655,1663]},"StringKw",[]]],"PrimaryExpr_numberPred":["define",{"sourceInterval":[1706,1750]},null,[],["app",{"sourceInterval":[1706,1714]},"NumberKw",[]]],"PrimaryExpr_objectPred":["define",{"sourceInterval":[1757,1801]},null,[],["app",{"sourceInterval":[1757,1765]},"ObjectKw",[]]],"PrimaryExpr_arrayPred":["define",{"sourceInterval":[1808,1851]},null,[],["app",{"sourceInterval":[1808,1815]},"ArrayKw",[]]],"PrimaryExpr_booleanPred":["define",{"sourceInterval":[1858,1903]},null,[],["app",{"sourceInterval":[1858,1867]},"BooleanKw",[]]],"PrimaryExpr_true":["define",{"sourceInterval":[1910,1948]},null,[],["app",{"sourceInterval":[1910,1916]},"TrueKw",[]]],"PrimaryExpr_false":["define",{"sourceInterval":[1955,1994]},null,[],["app",{"sourceInterval":[1955,1962]},"FalseKw",[]]],"PrimaryExpr_null":["define",{"sourceInterval":[2001,2039]},null,[],["app",{"sourceInterval":[2001,2007]},"NullKw",[]]],"PrimaryExpr_undefined":["define",{"sourceInterval":[2046,2089]},null,[],["app",{"sourceInterval":[2046,2057]},"UndefinedKw",[]]],"PrimaryExpr_self":["define",{"sourceInterval":[2096,2134]},null,[],["app",{"sourceInterval":[2096,2104]},"SelfExpr",[]]],"PrimaryExpr_identifier":["define",{"sourceInterval":[2141,2185]},null,[],["app",{"sourceInterval":[2141,2151]},"identifier",[]]],"PrimaryExpr_group":["define",{"sourceInterval":[2192,2230]},null,[],["seq",{"sourceInterval":[2192,2204]},["terminal",{"sourceInterval":[2192,2195]},"("],["app",{"sourceInterval":[2196,2200]},"Expr",[]],["terminal",{"sourceInterval":[2201,2204]},")"]]],"PrimaryExpr":["define",{"sourceInterval":[1426,2230]},null,[],["alt",{"sourceInterval":[1444,2230]},["app",{"sourceInterval":[1444,1459]},"ConditionalExpr",[]],["app",{"sourceInterval":[1466,1472]},"DoExpr",[]],["app",{"sourceInterval":[1479,1486]},"ForExpr",[]],["app",{"sourceInterval":[1493,1502]},"WhileExpr",[]],["app",{"sourceInterval":[1509,1516]},"PrimaryExpr_break",[]],["app",{"sourceInterval":[1555,1565]},"PrimaryExpr_continue",[]],["app",{"sourceInterval":[1604,1609]},"Array",[]],["app",{"sourceInterval":[1616,1622]},"Object",[]],["app",{"sourceInterval":[1629,1635]},"String",[]],["app",{"sourceInterval":[1642,1648]},"Number",[]],["app",{"sourceInterval":[1655,1663]},"PrimaryExpr_stringPred",[]],["app",{"sourceInterval":[1706,1714]},"PrimaryExpr_numberPred",[]],["app",{"sourceInterval":[1757,1765]},"PrimaryExpr_objectPred",[]],["app",{"sourceInterval":[1808,1815]},"PrimaryExpr_arrayPred",[]],["app",{"sourceInterval":[1858,1867]},"PrimaryExpr_booleanPred",[]],["app",{"sourceInterval":[1910,1916]},"PrimaryExpr_true",[]],["app",{"sourceInterval":[1955,1962]},"PrimaryExpr_false",[]],["app",{"sourceInterval":[2001,2007]},"PrimaryExpr_null",[]],["app",{"sourceInterval":[2046,2057]},"PrimaryExpr_undefined",[]],["app",{"sourceInterval":[2096,2104]},"PrimaryExpr_self",[]],["app",{"sourceInterval":[2141,2151]},"PrimaryExpr_identifier",[]],["app",{"sourceInterval":[2192,2204]},"PrimaryExpr_group",[]]]],"SelfExpr_depth":["define",{"sourceInterval":[2249,2287]},null,[],["seq",{"sourceInterval":[2249,2266]},["app",{"sourceInterval":[2249,2255]},"SelfKw",[]],["terminal",{"sourceInterval":[2256,2259]},"@"],["app",{"sourceInterval":[2260,2266]},"Number",[]]]],"SelfExpr_plain":["define",{"sourceInterval":[2294,2333]},null,[],["app",{"sourceInterval":[2294,2300]},"SelfKw",[]]],"SelfExpr":["define",{"sourceInterval":[2234,2333]},null,[],["alt",{"sourceInterval":[2249,2333]},["app",{"sourceInterval":[2249,2266]},"SelfExpr_depth",[]],["app",{"sourceInterval":[2294,2300]},"SelfExpr_plain",[]]]],"Place":["define",{"sourceInterval":[2337,2369]},null,[],["seq",{"sourceInterval":[2349,2369]},["app",{"sourceInterval":[2349,2358]},"PlaceBase",[]],["star",{"sourceInterval":[2359,2369]},["app",{"sourceInterval":[2359,2368]},"PlaceTail",[]]]]],"PlaceBase":["define",{"sourceInterval":[2373,2412]},null,[],["alt",{"sourceInterval":[2389,2412]},["app",{"sourceInterval":[2389,2399]},"identifier",[]],["app",{"sourceInterval":[2406,2412]},"SelfKw",[]]]],"PlaceTail_navStatic":["define",{"sourceInterval":[2432,2475]},null,[],["seq",{"sourceInterval":[2432,2442]},["terminal",{"sourceInterval":[2432,2435]},"."],["app",{"sourceInterval":[2436,2442]},"navKey",[]]]],"PlaceTail_navDynamic":["define",{"sourceInterval":[2482,2525]},null,[],["seq",{"sourceInterval":[2482,2495]},["terminal",{"sourceInterval":[2482,2486]},".("],["app",{"sourceInterval":[2487,2491]},"Expr",[]],["terminal",{"sourceInterval":[2492,2495]},")"]]],"PlaceTail":["define",{"sourceInterval":[2416,2525]},null,[],["alt",{"sourceInterval":[2432,2525]},["app",{"sourceInterval":[2432,2442]},"PlaceTail_navStatic",[]],["app",{"sourceInterval":[2482,2495]},"PlaceTail_navDynamic",[]]]],"ConditionalExpr":["define",{"sourceInterval":[2529,2605]},null,[],["seq",{"sourceInterval":[2551,2605]},["app",{"sourceInterval":[2551,2566]},"ConditionalHead",[]],["app",{"sourceInterval":[2567,2571]},"Expr",[]],["app",{"sourceInterval":[2572,2576]},"DoKw",[]],["app",{"sourceInterval":[2577,2582]},"Block",[]],["opt",{"sourceInterval":[2583,2599]},["app",{"sourceInterval":[2583,2598]},"ConditionalElse",[]]],["app",{"sourceInterval":[2600,2605]},"EndKw",[]]]],"ConditionalHead":["define",{"sourceInterval":[2609,2652]},null,[],["alt",{"sourceInterval":[2631,2652]},["app",{"sourceInterval":[2631,2637]},"WhenKw",[]],["app",{"sourceInterval":[2644,2652]},"UnlessKw",[]]]],"ConditionalElse_elseChain":["define",{"sourceInterval":[2678,2747]},null,[],["seq",{"sourceInterval":[2678,2733]},["app",{"sourceInterval":[2678,2684]},"ElseKw",[]],["app",{"sourceInterval":[2685,2700]},"ConditionalHead",[]],["app",{"sourceInterval":[2701,2705]},"Expr",[]],["app",{"sourceInterval":[2706,2710]},"DoKw",[]],["app",{"sourceInterval":[2711,2716]},"Block",[]],["opt",{"sourceInterval":[2717,2733]},["app",{"sourceInterval":[2717,2732]},"ConditionalElse",[]]]]],"ConditionalElse_else":["define",{"sourceInterval":[2754,2820]},null,[],["seq",{"sourceInterval":[2754,2766]},["app",{"sourceInterval":[2754,2760]},"ElseKw",[]],["app",{"sourceInterval":[2761,2766]},"Block",[]]]],"ConditionalElse":["define",{"sourceInterval":[2656,2820]},null,[],["alt",{"sourceInterval":[2678,2820]},["app",{"sourceInterval":[2678,2733]},"ConditionalElse_elseChain",[]],["app",{"sourceInterval":[2754,2766]},"ConditionalElse_else",[]]]],"ForExpr":["define",{"sourceInterval":[2824,2872]},null,[],["seq",{"sourceInterval":[2838,2872]},["app",{"sourceInterval":[2838,2843]},"ForKw",[]],["app",{"sourceInterval":[2844,2855]},"BindingExpr",[]],["app",{"sourceInterval":[2856,2860]},"DoKw",[]],["app",{"sourceInterval":[2861,2866]},"Block",[]],["app",{"sourceInterval":[2867,2872]},"EndKw",[]]]],"WhileExpr":["define",{"sourceInterval":[2876,2921]},null,[],["seq",{"sourceInterval":[2892,2921]},["app",{"sourceInterval":[2892,2899]},"WhileKw",[]],["app",{"sourceInterval":[2900,2904]},"Expr",[]],["app",{"sourceInterval":[2905,2909]},"DoKw",[]],["app",{"sourceInterval":[2910,2915]},"Block",[]],["app",{"sourceInterval":[2916,2921]},"EndKw",[]]]],"DoExpr":["define",{"sourceInterval":[2925,2954]},null,[],["seq",{"sourceInterval":[2938,2954]},["app",{"sourceInterval":[2938,2942]},"DoKw",[]],["app",{"sourceInterval":[2943,2948]},"Block",[]],["app",{"sourceInterval":[2949,2954]},"EndKw",[]]]],"BindingExpr":["define",{"sourceInterval":[2958,2998]},null,[],["alt",{"sourceInterval":[2976,2998]},["app",{"sourceInterval":[2976,2987]},"IterBinding",[]],["app",{"sourceInterval":[2994,2998]},"Expr",[]]]],"Block":["define",{"sourceInterval":[3002,3019]},null,[],["star",{"sourceInterval":[3014,3019]},["app",{"sourceInterval":[3014,3018]},"Expr",[]]]],"Array_empty":["define",{"sourceInterval":[3035,3082]},null,[],["seq",{"sourceInterval":[3035,3042]},["terminal",{"sourceInterval":[3035,3038]},"["],["terminal",{"sourceInterval":[3039,3042]},"]"]]],"Array_comprehension":["define",{"sourceInterval":[3089,3143]},null,[],["seq",{"sourceInterval":[3089,3117]},["terminal",{"sourceInterval":[3089,3092]},"["],["app",{"sourceInterval":[3093,3104]},"BindingExpr",[]],["terminal",{"sourceInterval":[3105,3108]},";"],["app",{"sourceInterval":[3109,3113]},"Expr",[]],["terminal",{"sourceInterval":[3114,3117]},"]"]]],"Array_values":["define",{"sourceInterval":[3150,3198]},null,[],["seq",{"sourceInterval":[3150,3172]},["terminal",{"sourceInterval":[3150,3153]},"["],["app",{"sourceInterval":[3154,3168]},"Elements",[["app",{"sourceInterval":[3163,3167]},"Expr",[]]]],["terminal",{"sourceInterval":[3169,3172]},"]"]]],"Array":["define",{"sourceInterval":[3023,3198]},null,[],["alt",{"sourceInterval":[3035,3198]},["app",{"sourceInterval":[3035,3042]},"Array_empty",[]],["app",{"sourceInterval":[3089,3117]},"Array_comprehension",[]],["app",{"sourceInterval":[3150,3172]},"Array_values",[]]]],"Object_empty":["define",{"sourceInterval":[3215,3263]},null,[],["seq",{"sourceInterval":[3215,3222]},["terminal",{"sourceInterval":[3215,3218]},"{"],["terminal",{"sourceInterval":[3219,3222]},"}"]]],"Object_comprehension":["define",{"sourceInterval":[3270,3326]},null,[],["seq",{"sourceInterval":[3270,3309]},["terminal",{"sourceInterval":[3270,3273]},"{"],["app",{"sourceInterval":[3274,3285]},"BindingExpr",[]],["terminal",{"sourceInterval":[3286,3289]},";"],["app",{"sourceInterval":[3290,3296]},"ObjKey",[]],["terminal",{"sourceInterval":[3297,3300]},":"],["app",{"sourceInterval":[3301,3305]},"Expr",[]],["terminal",{"sourceInterval":[3306,3309]},"}"]]],"Object_pairs":["define",{"sourceInterval":[3333,3380]},null,[],["seq",{"sourceInterval":[3333,3355]},["terminal",{"sourceInterval":[3333,3336]},"{"],["app",{"sourceInterval":[3337,3351]},"Elements",[["app",{"sourceInterval":[3346,3350]},"Pair",[]]]],["terminal",{"sourceInterval":[3352,3355]},"}"]]],"Object":["define",{"sourceInterval":[3202,3380]},null,[],["alt",{"sourceInterval":[3215,3380]},["app",{"sourceInterval":[3215,3222]},"Object_empty",[]],["app",{"sourceInterval":[3270,3309]},"Object_comprehension",[]],["app",{"sourceInterval":[3333,3355]},"Object_pairs",[]]]],"IterBinding_keyValueIn":["define",{"sourceInterval":[3402,3453]},null,[],["seq",{"sourceInterval":[3402,3437]},["app",{"sourceInterval":[3402,3412]},"identifier",[]],["terminal",{"sourceInterval":[3413,3416]},","],["app",{"sourceInterval":[3417,3427]},"identifier",[]],["terminal",{"sourceInterval":[3428,3432]},"in"],["app",{"sourceInterval":[3433,3437]},"Expr",[]]]],"IterBinding_valueIn":["define",{"sourceInterval":[3460,3508]},null,[],["seq",{"sourceInterval":[3460,3480]},["app",{"sourceInterval":[3460,3470]},"identifier",[]],["terminal",{"sourceInterval":[3471,3475]},"in"],["app",{"sourceInterval":[3476,3480]},"Expr",[]]]],"IterBinding_keyOf":["define",{"sourceInterval":[3515,3561]},null,[],["seq",{"sourceInterval":[3515,3535]},["app",{"sourceInterval":[3515,3525]},"identifier",[]],["terminal",{"sourceInterval":[3526,3530]},"of"],["app",{"sourceInterval":[3531,3535]},"Expr",[]]]],"IterBinding":["define",{"sourceInterval":[3384,3561]},null,[],["alt",{"sourceInterval":[3402,3561]},["app",{"sourceInterval":[3402,3437]},"IterBinding_keyValueIn",[]],["app",{"sourceInterval":[3460,3480]},"IterBinding_valueIn",[]],["app",{"sourceInterval":[3515,3535]},"IterBinding_keyOf",[]]]],"Pair":["define",{"sourceInterval":[3565,3591]},null,[],["seq",{"sourceInterval":[3576,3591]},["app",{"sourceInterval":[3576,3582]},"ObjKey",[]],["terminal",{"sourceInterval":[3583,3586]},":"],["app",{"sourceInterval":[3587,3591]},"Expr",[]]]],"ObjKey_bare":["define",{"sourceInterval":[3608,3646]},null,[],["app",{"sourceInterval":[3608,3615]},"keyName",[]]],"ObjKey_number":["define",{"sourceInterval":[3653,3693]},null,[],["app",{"sourceInterval":[3653,3659]},"Number",[]]],"ObjKey_string":["define",{"sourceInterval":[3700,3740]},null,[],["app",{"sourceInterval":[3700,3706]},"String",[]]],"ObjKey_computed":["define",{"sourceInterval":[3747,3788]},null,[],["seq",{"sourceInterval":[3747,3759]},["terminal",{"sourceInterval":[3747,3750]},"("],["app",{"sourceInterval":[3751,3755]},"Expr",[]],["terminal",{"sourceInterval":[3756,3759]},")"]]],"ObjKey":["define",{"sourceInterval":[3595,3788]},null,[],["alt",{"sourceInterval":[3608,3788]},["app",{"sourceInterval":[3608,3615]},"ObjKey_bare",[]],["app",{"sourceInterval":[3653,3659]},"ObjKey_number",[]],["app",{"sourceInterval":[3700,3706]},"ObjKey_string",[]],["app",{"sourceInterval":[3747,3759]},"ObjKey_computed",[]]]],"navKey":["define",{"sourceInterval":[3792,3825]},null,[],["alt",{"sourceInterval":[3805,3825]},["app",{"sourceInterval":[3805,3812]},"keyName",[]],["plus",{"sourceInterval":[3819,3825]},["app",{"sourceInterval":[3819,3824]},"digit",[]]]]],"keyName":["define",{"sourceInterval":[3829,3861]},null,[],["seq",{"sourceInterval":[3843,3861]},["app",{"sourceInterval":[3843,3851]},"nameHead",[]],["star",{"sourceInterval":[3852,3861]},["app",{"sourceInterval":[3852,3860]},"nameTail",[]]]]],"CompareOp":["define",{"sourceInterval":[3865,3938]},null,[],["alt",{"sourceInterval":[3881,3938]},["terminal",{"sourceInterval":[3881,3885]},"=="],["terminal",{"sourceInterval":[3892,3896]},"!="],["terminal",{"sourceInterval":[3903,3907]},">="],["terminal",{"sourceInterval":[3914,3917]},">"],["terminal",{"sourceInterval":[3924,3928]},"<="],["terminal",{"sourceInterval":[3935,3938]},"<"]]],"AssignOp":["define",{"sourceInterval":[3942,4048]},null,[],["alt",{"sourceInterval":[3957,4048]},["terminal",{"sourceInterval":[3957,3960]},"="],["terminal",{"sourceInterval":[3967,3971]},"+="],["terminal",{"sourceInterval":[3978,3982]},"-="],["terminal",{"sourceInterval":[3989,3993]},"*="],["terminal",{"sourceInterval":[4000,4004]},"/="],["terminal",{"sourceInterval":[4011,4015]},"%="],["terminal",{"sourceInterval":[4022,4026]},"&="],["terminal",{"sourceInterval":[4033,4037]},"|="],["terminal",{"sourceInterval":[4044,4048]},"^="]]],"Elements":["define",{"sourceInterval":[4052,4095]},null,["item"],["seq",{"sourceInterval":[4073,4095]},["param",{"sourceInterval":[4073,4077]},0],["star",{"sourceInterval":[4078,4090]},["seq",{"sourceInterval":[4079,4088]},["opt",{"sourceInterval":[4079,4083]},["terminal",{"sourceInterval":[4079,4082]},","]],["param",{"sourceInterval":[4084,4088]},0]]],["opt",{"sourceInterval":[4091,4095]},["terminal",{"sourceInterval":[4091,4094]},","]]]],"identifier":["define",{"sourceInterval":[4099,4144]},null,[],["seq",{"sourceInterval":[4116,4144]},["not",{"sourceInterval":[4116,4125]},["app",{"sourceInterval":[4117,4125]},"reserved",[]]],["app",{"sourceInterval":[4126,4134]},"nameHead",[]],["star",{"sourceInterval":[4135,4144]},["app",{"sourceInterval":[4135,4143]},"nameTail",[]]]]],"nameHead":["define",{"sourceInterval":[4148,4179]},null,[],["alt",{"sourceInterval":[4163,4179]},["app",{"sourceInterval":[4163,4169]},"letter",[]],["terminal",{"sourceInterval":[4176,4179]},"_"]]],"nameTail":["define",{"sourceInterval":[4183,4236]},null,[],["alt",{"sourceInterval":[4198,4236]},["app",{"sourceInterval":[4198,4204]},"letter",[]],["app",{"sourceInterval":[4211,4216]},"digit",[]],["terminal",{"sourceInterval":[4223,4226]},"_"],["terminal",{"sourceInterval":[4233,4236]},"-"]]],"reserved":["define",{"sourceInterval":[4240,4625]},null,[],["alt",{"sourceInterval":[4255,4625]},["app",{"sourceInterval":[4255,4262]},"trueTok",[]],["app",{"sourceInterval":[4269,4277]},"falseTok",[]],["app",{"sourceInterval":[4284,4291]},"nullTok",[]],["app",{"sourceInterval":[4298,4310]},"undefinedTok",[]],["app",{"sourceInterval":[4317,4323]},"nanTok",[]],["app",{"sourceInterval":[4330,4336]},"infTok",[]],["app",{"sourceInterval":[4343,4350]},"selfTok",[]],["app",{"sourceInterval":[4357,4364]},"whenTok",[]],["app",{"sourceInterval":[4371,4380]},"unlessTok",[]],["app",{"sourceInterval":[4387,4393]},"forTok",[]],["app",{"sourceInterval":[4400,4408]},"whileTok",[]],["app",{"sourceInterval":[4415,4420]},"inTok",[]],["app",{"sourceInterval":[4427,4432]},"ofTok",[]],["app",{"sourceInterval":[4439,4444]},"doTok",[]],["app",{"sourceInterval":[4451,4458]},"elseTok",[]],["app",{"sourceInterval":[4465,4471]},"endTok",[]],["app",{"sourceInterval":[4478,4486]},"breakTok",[]],["app",{"sourceInterval":[4493,4504]},"continueTok",[]],["app",{"sourceInterval":[4511,4517]},"andTok",[]],["app",{"sourceInterval":[4524,4529]},"orTok",[]],["app",{"sourceInterval":[4536,4545]},"deleteTok",[]],["app",{"sourceInterval":[4552,4561]},"stringTok",[]],["app",{"sourceInterval":[4568,4577]},"numberTok",[]],["app",{"sourceInterval":[4584,4593]},"objectTok",[]],["app",{"sourceInterval":[4600,4608]},"arrayTok",[]],["app",{"sourceInterval":[4615,4625]},"booleanTok",[]]]],"TrueKw":["define",{"sourceInterval":[4629,4649]},null,[],["app",{"sourceInterval":[4642,4649]},"trueTok",[]]],"FalseKw":["define",{"sourceInterval":[4653,4675]},null,[],["app",{"sourceInterval":[4667,4675]},"falseTok",[]]],"NullKw":["define",{"sourceInterval":[4679,4699]},null,[],["app",{"sourceInterval":[4692,4699]},"nullTok",[]]],"UndefinedKw":["define",{"sourceInterval":[4703,4733]},null,[],["app",{"sourceInterval":[4721,4733]},"undefinedTok",[]]],"SelfKw":["define",{"sourceInterval":[4737,4757]},null,[],["app",{"sourceInterval":[4750,4757]},"selfTok",[]]],"WhenKw":["define",{"sourceInterval":[4761,4781]},null,[],["app",{"sourceInterval":[4774,4781]},"whenTok",[]]],"UnlessKw":["define",{"sourceInterval":[4785,4809]},null,[],["app",{"sourceInterval":[4800,4809]},"unlessTok",[]]],"WhileKw":["define",{"sourceInterval":[4813,4835]},null,[],["app",{"sourceInterval":[4827,4835]},"whileTok",[]]],"ForKw":["define",{"sourceInterval":[4839,4857]},null,[],["app",{"sourceInterval":[4851,4857]},"forTok",[]]],"DoKw":["define",{"sourceInterval":[4861,4877]},null,[],["app",{"sourceInterval":[4872,4877]},"doTok",[]]],"ElseKw":["define",{"sourceInterval":[4881,4901]},null,[],["app",{"sourceInterval":[4894,4901]},"elseTok",[]]],"EndKw":["define",{"sourceInterval":[4905,4923]},null,[],["app",{"sourceInterval":[4917,4923]},"endTok",[]]],"BreakKw":["define",{"sourceInterval":[4927,4949]},null,[],["app",{"sourceInterval":[4941,4949]},"breakTok",[]]],"ContinueKw":["define",{"sourceInterval":[4953,4981]},null,[],["app",{"sourceInterval":[4970,4981]},"continueTok",[]]],"AndKw":["define",{"sourceInterval":[4985,5003]},null,[],["app",{"sourceInterval":[4997,5003]},"andTok",[]]],"OrKw":["define",{"sourceInterval":[5007,5023]},null,[],["app",{"sourceInterval":[5018,5023]},"orTok",[]]],"DeleteKw":["define",{"sourceInterval":[5027,5051]},null,[],["app",{"sourceInterval":[5042,5051]},"deleteTok",[]]],"StringKw":["define",{"sourceInterval":[5055,5079]},null,[],["app",{"sourceInterval":[5070,5079]},"stringTok",[]]],"NumberKw":["define",{"sourceInterval":[5083,5107]},null,[],["app",{"sourceInterval":[5098,5107]},"numberTok",[]]],"ObjectKw":["define",{"sourceInterval":[5111,5135]},null,[],["app",{"sourceInterval":[5126,5135]},"objectTok",[]]],"ArrayKw":["define",{"sourceInterval":[5139,5161]},null,[],["app",{"sourceInterval":[5153,5161]},"arrayTok",[]]],"BooleanKw":["define",{"sourceInterval":[5165,5191]},null,[],["app",{"sourceInterval":[5181,5191]},"booleanTok",[]]],"trueTok":["define",{"sourceInterval":[5195,5225]},null,[],["seq",{"sourceInterval":[5209,5225]},["terminal",{"sourceInterval":[5209,5215]},"true"],["not",{"sourceInterval":[5216,5225]},["app",{"sourceInterval":[5217,5225]},"nameTail",[]]]]],"falseTok":["define",{"sourceInterval":[5229,5261]},null,[],["seq",{"sourceInterval":[5244,5261]},["terminal",{"sourceInterval":[5244,5251]},"false"],["not",{"sourceInterval":[5252,5261]},["app",{"sourceInterval":[5253,5261]},"nameTail",[]]]]],"nullTok":["define",{"sourceInterval":[5265,5295]},null,[],["seq",{"sourceInterval":[5279,5295]},["terminal",{"sourceInterval":[5279,5285]},"null"],["not",{"sourceInterval":[5286,5295]},["app",{"sourceInterval":[5287,5295]},"nameTail",[]]]]],"undefinedTok":["define",{"sourceInterval":[5299,5339]},null,[],["seq",{"sourceInterval":[5318,5339]},["terminal",{"sourceInterval":[5318,5329]},"undefined"],["not",{"sourceInterval":[5330,5339]},["app",{"sourceInterval":[5331,5339]},"nameTail",[]]]]],"nanTok":["define",{"sourceInterval":[5343,5371]},null,[],["seq",{"sourceInterval":[5356,5371]},["terminal",{"sourceInterval":[5356,5361]},"nan"],["not",{"sourceInterval":[5362,5371]},["app",{"sourceInterval":[5363,5371]},"nameTail",[]]]]],"infTok":["define",{"sourceInterval":[5375,5403]},null,[],["seq",{"sourceInterval":[5388,5403]},["terminal",{"sourceInterval":[5388,5393]},"inf"],["not",{"sourceInterval":[5394,5403]},["app",{"sourceInterval":[5395,5403]},"nameTail",[]]]]],"selfTok":["define",{"sourceInterval":[5407,5437]},null,[],["seq",{"sourceInterval":[5421,5437]},["terminal",{"sourceInterval":[5421,5427]},"self"],["not",{"sourceInterval":[5428,5437]},["app",{"sourceInterval":[5429,5437]},"nameTail",[]]]]],"whenTok":["define",{"sourceInterval":[5441,5471]},null,[],["seq",{"sourceInterval":[5455,5471]},["terminal",{"sourceInterval":[5455,5461]},"when"],["not",{"sourceInterval":[5462,5471]},["app",{"sourceInterval":[5463,5471]},"nameTail",[]]]]],"unlessTok":["define",{"sourceInterval":[5475,5509]},null,[],["seq",{"sourceInterval":[5491,5509]},["terminal",{"sourceInterval":[5491,5499]},"unless"],["not",{"sourceInterval":[5500,5509]},["app",{"sourceInterval":[5501,5509]},"nameTail",[]]]]],"whileTok":["define",{"sourceInterval":[5513,5545]},null,[],["seq",{"sourceInterval":[5528,5545]},["terminal",{"sourceInterval":[5528,5535]},"while"],["not",{"sourceInterval":[5536,5545]},["app",{"sourceInterval":[5537,5545]},"nameTail",[]]]]],"forTok":["define",{"sourceInterval":[5549,5577]},null,[],["seq",{"sourceInterval":[5562,5577]},["terminal",{"sourceInterval":[5562,5567]},"for"],["not",{"sourceInterval":[5568,5577]},["app",{"sourceInterval":[5569,5577]},"nameTail",[]]]]],"inTok":["define",{"sourceInterval":[5581,5607]},null,[],["seq",{"sourceInterval":[5593,5607]},["terminal",{"sourceInterval":[5593,5597]},"in"],["not",{"sourceInterval":[5598,5607]},["app",{"sourceInterval":[5599,5607]},"nameTail",[]]]]],"ofTok":["define",{"sourceInterval":[5611,5637]},null,[],["seq",{"sourceInterval":[5623,5637]},["terminal",{"sourceInterval":[5623,5627]},"of"],["not",{"sourceInterval":[5628,5637]},["app",{"sourceInterval":[5629,5637]},"nameTail",[]]]]],"doTok":["define",{"sourceInterval":[5641,5667]},null,[],["seq",{"sourceInterval":[5653,5667]},["terminal",{"sourceInterval":[5653,5657]},"do"],["not",{"sourceInterval":[5658,5667]},["app",{"sourceInterval":[5659,5667]},"nameTail",[]]]]],"elseTok":["define",{"sourceInterval":[5671,5701]},null,[],["seq",{"sourceInterval":[5685,5701]},["terminal",{"sourceInterval":[5685,5691]},"else"],["not",{"sourceInterval":[5692,5701]},["app",{"sourceInterval":[5693,5701]},"nameTail",[]]]]],"endTok":["define",{"sourceInterval":[5705,5733]},null,[],["seq",{"sourceInterval":[5718,5733]},["terminal",{"sourceInterval":[5718,5723]},"end"],["not",{"sourceInterval":[5724,5733]},["app",{"sourceInterval":[5725,5733]},"nameTail",[]]]]],"breakTok":["define",{"sourceInterval":[5737,5769]},null,[],["seq",{"sourceInterval":[5752,5769]},["terminal",{"sourceInterval":[5752,5759]},"break"],["not",{"sourceInterval":[5760,5769]},["app",{"sourceInterval":[5761,5769]},"nameTail",[]]]]],"continueTok":["define",{"sourceInterval":[5773,5811]},null,[],["seq",{"sourceInterval":[5791,5811]},["terminal",{"sourceInterval":[5791,5801]},"continue"],["not",{"sourceInterval":[5802,5811]},["app",{"sourceInterval":[5803,5811]},"nameTail",[]]]]],"andTok":["define",{"sourceInterval":[5815,5843]},null,[],["seq",{"sourceInterval":[5828,5843]},["terminal",{"sourceInterval":[5828,5833]},"and"],["not",{"sourceInterval":[5834,5843]},["app",{"sourceInterval":[5835,5843]},"nameTail",[]]]]],"orTok":["define",{"sourceInterval":[5847,5873]},null,[],["seq",{"sourceInterval":[5859,5873]},["terminal",{"sourceInterval":[5859,5863]},"or"],["not",{"sourceInterval":[5864,5873]},["app",{"sourceInterval":[5865,5873]},"nameTail",[]]]]],"deleteTok":["define",{"sourceInterval":[5877,5911]},null,[],["seq",{"sourceInterval":[5893,5911]},["terminal",{"sourceInterval":[5893,5901]},"delete"],["not",{"sourceInterval":[5902,5911]},["app",{"sourceInterval":[5903,5911]},"nameTail",[]]]]],"stringTok":["define",{"sourceInterval":[5915,5949]},null,[],["seq",{"sourceInterval":[5931,5949]},["terminal",{"sourceInterval":[5931,5939]},"string"],["not",{"sourceInterval":[5940,5949]},["app",{"sourceInterval":[5941,5949]},"nameTail",[]]]]],"numberTok":["define",{"sourceInterval":[5953,5987]},null,[],["seq",{"sourceInterval":[5969,5987]},["terminal",{"sourceInterval":[5969,5977]},"number"],["not",{"sourceInterval":[5978,5987]},["app",{"sourceInterval":[5979,5987]},"nameTail",[]]]]],"objectTok":["define",{"sourceInterval":[5991,6025]},null,[],["seq",{"sourceInterval":[6007,6025]},["terminal",{"sourceInterval":[6007,6015]},"object"],["not",{"sourceInterval":[6016,6025]},["app",{"sourceInterval":[6017,6025]},"nameTail",[]]]]],"arrayTok":["define",{"sourceInterval":[6029,6061]},null,[],["seq",{"sourceInterval":[6044,6061]},["terminal",{"sourceInterval":[6044,6051]},"array"],["not",{"sourceInterval":[6052,6061]},["app",{"sourceInterval":[6053,6061]},"nameTail",[]]]]],"booleanTok":["define",{"sourceInterval":[6065,6101]},null,[],["seq",{"sourceInterval":[6082,6101]},["terminal",{"sourceInterval":[6082,6091]},"boolean"],["not",{"sourceInterval":[6092,6101]},["app",{"sourceInterval":[6093,6101]},"nameTail",[]]]]],"String":["define",{"sourceInterval":[6105,6151]},null,[],["alt",{"sourceInterval":[6118,6151]},["app",{"sourceInterval":[6118,6131]},"DQuotedString",[]],["app",{"sourceInterval":[6138,6151]},"SQuotedString",[]]]],"DQuotedString":["define",{"sourceInterval":[6155,6197]},null,[],["seq",{"sourceInterval":[6175,6197]},["terminal",{"sourceInterval":[6175,6179]},"\""],["star",{"sourceInterval":[6180,6192]},["app",{"sourceInterval":[6180,6191]},"dStringChar",[]]],["terminal",{"sourceInterval":[6193,6197]},"\""]]],"dStringChar":["define",{"sourceInterval":[6201,6250]},null,[],["alt",{"sourceInterval":[6219,6250]},["seq",{"sourceInterval":[6219,6237]},["not",{"sourceInterval":[6219,6233]},["alt",{"sourceInterval":[6221,6232]},["terminal",{"sourceInterval":[6221,6225]},"\""],["terminal",{"sourceInterval":[6228,6232]},"\\"]]],["app",{"sourceInterval":[6234,6237]},"any",[]]],["app",{"sourceInterval":[6244,6250]},"escape",[]]]],"SQuotedString":["define",{"sourceInterval":[6254,6294]},null,[],["seq",{"sourceInterval":[6274,6294]},["terminal",{"sourceInterval":[6274,6277]},"'"],["star",{"sourceInterval":[6278,6290]},["app",{"sourceInterval":[6278,6289]},"sStringChar",[]]],["terminal",{"sourceInterval":[6291,6294]},"'"]]],"sStringChar":["define",{"sourceInterval":[6298,6346]},null,[],["alt",{"sourceInterval":[6316,6346]},["seq",{"sourceInterval":[6316,6333]},["not",{"sourceInterval":[6316,6329]},["alt",{"sourceInterval":[6318,6328]},["terminal",{"sourceInterval":[6318,6321]},"'"],["terminal",{"sourceInterval":[6324,6328]},"\\"]]],["app",{"sourceInterval":[6330,6333]},"any",[]]],["app",{"sourceInterval":[6340,6346]},"escape",[]]]],"escape":["define",{"sourceInterval":[6350,6408]},null,[],["seq",{"sourceInterval":[6363,6408]},["terminal",{"sourceInterval":[6363,6367]},"\\"],["alt",{"sourceInterval":[6369,6407]},["app",{"sourceInterval":[6369,6379]},"escapeChar",[]],["app",{"sourceInterval":[6382,6391]},"hexEscape",[]],["app",{"sourceInterval":[6394,6407]},"unicodeEscape",[]]]]],"escapeChar":["define",{"sourceInterval":[6412,6488]},null,[],["alt",{"sourceInterval":[6429,6488]},["terminal",{"sourceInterval":[6429,6433]},"\""],["terminal",{"sourceInterval":[6436,6439]},"'"],["terminal",{"sourceInterval":[6442,6446]},"\\"],["terminal",{"sourceInterval":[6449,6452]},"/"],["terminal",{"sourceInterval":[6455,6458]},"b"],["terminal",{"sourceInterval":[6461,6464]},"f"],["terminal",{"sourceInterval":[6467,6470]},"n"],["terminal",{"sourceInterval":[6473,6476]},"r"],["terminal",{"sourceInterval":[6479,6482]},"t"],["terminal",{"sourceInterval":[6485,6488]},"0"]]],"hexEscape":["define",{"sourceInterval":[6492,6519]},null,[],["seq",{"sourceInterval":[6508,6519]},["terminal",{"sourceInterval":[6508,6511]},"x"],["app",{"sourceInterval":[6512,6515]},"hex",[]],["app",{"sourceInterval":[6516,6519]},"hex",[]]]],"unicodeEscape":["define",{"sourceInterval":[6523,6562]},null,[],["seq",{"sourceInterval":[6543,6562]},["terminal",{"sourceInterval":[6543,6546]},"u"],["app",{"sourceInterval":[6547,6550]},"hex",[]],["app",{"sourceInterval":[6551,6554]},"hex",[]],["app",{"sourceInterval":[6555,6558]},"hex",[]],["app",{"sourceInterval":[6559,6562]},"hex",[]]]],"hex":["define",{"sourceInterval":[6566,6611]},null,[],["alt",{"sourceInterval":[6576,6611]},["app",{"sourceInterval":[6576,6581]},"digit",[]],["range",{"sourceInterval":[6588,6596]},"A","F"],["range",{"sourceInterval":[6603,6611]},"a","f"]]],"Number":["define",{"sourceInterval":[6615,6710]},null,[],["alt",{"sourceInterval":[6628,6710]},["app",{"sourceInterval":[6628,6637]},"hexNumber",[]],["app",{"sourceInterval":[6644,6656]},"binaryNumber",[]],["app",{"sourceInterval":[6663,6673]},"infLiteral",[]],["app",{"sourceInterval":[6680,6690]},"nanLiteral",[]],["app",{"sourceInterval":[6697,6710]},"decimalNumber",[]]]],"infLiteral":["define",{"sourceInterval":[6714,6742]},null,[],["seq",{"sourceInterval":[6731,6742]},["opt",{"sourceInterval":[6731,6735]},["terminal",{"sourceInterval":[6731,6734]},"-"]],["app",{"sourceInterval":[6736,6742]},"infTok",[]]]],"nanLiteral":["define",{"sourceInterval":[6746,6769]},null,[],["app",{"sourceInterval":[6763,6769]},"nanTok",[]]],"hexNumber":["define",{"sourceInterval":[6773,6803]},null,[],["seq",{"sourceInterval":[6789,6803]},["opt",{"sourceInterval":[6789,6793]},["terminal",{"sourceInterval":[6789,6792]},"-"]],["terminal",{"sourceInterval":[6794,6798]},"0x"],["plus",{"sourceInterval":[6799,6803]},["app",{"sourceInterval":[6799,6802]},"hex",[]]]]],"binaryNumber":["define",{"sourceInterval":[6807,6840]},null,[],["seq",{"sourceInterval":[6826,6840]},["opt",{"sourceInterval":[6826,6830]},["terminal",{"sourceInterval":[6826,6829]},"-"]],["terminal",{"sourceInterval":[6831,6835]},"0b"],["plus",{"sourceInterval":[6836,6840]},["app",{"sourceInterval":[6836,6839]},"bit",[]]]]],"decimalNumber":["define",{"sourceInterval":[6844,6907]},null,[],["seq",{"sourceInterval":[6864,6907]},["opt",{"sourceInterval":[6864,6868]},["terminal",{"sourceInterval":[6864,6867]},"-"]],["app",{"sourceInterval":[6869,6883]},"decimalInteger",[]],["opt",{"sourceInterval":[6884,6897]},["seq",{"sourceInterval":[6885,6895]},["terminal",{"sourceInterval":[6885,6888]},"."],["plus",{"sourceInterval":[6889,6895]},["app",{"sourceInterval":[6889,6894]},"digit",[]]]]],["opt",{"sourceInterval":[6898,6907]},["app",{"sourceInterval":[6898,6906]},"exponent",[]]]]],"decimalInteger_nonZero":["define",{"sourceInterval":[6932,6963]},null,[],["seq",{"sourceInterval":[6932,6951]},["app",{"sourceInterval":[6932,6944]},"nonZeroDigit",[]],["star",{"sourceInterval":[6945,6951]},["app",{"sourceInterval":[6945,6950]},"digit",[]]]]],"decimalInteger_zero":["define",{"sourceInterval":[6970,6998]},null,[],["terminal",{"sourceInterval":[6970,6973]},"0"]],"decimalInteger":["define",{"sourceInterval":[6911,6998]},null,[],["alt",{"sourceInterval":[6932,6998]},["app",{"sourceInterval":[6932,6951]},"decimalInteger_nonZero",[]],["app",{"sourceInterval":[6970,6973]},"decimalInteger_zero",[]]]],"bit":["define",{"sourceInterval":[7002,7021]},null,[],["alt",{"sourceInterval":[7012,7021]},["terminal",{"sourceInterval":[7012,7015]},"0"],["terminal",{"sourceInterval":[7018,7021]},"1"]]],"exponent":["define",{"sourceInterval":[7025,7071]},null,[],["seq",{"sourceInterval":[7040,7071]},["alt",{"sourceInterval":[7041,7050]},["terminal",{"sourceInterval":[7041,7044]},"e"],["terminal",{"sourceInterval":[7047,7050]},"E"]],["opt",{"sourceInterval":[7052,7064]},["alt",{"sourceInterval":[7053,7062]},["terminal",{"sourceInterval":[7053,7056]},"+"],["terminal",{"sourceInterval":[7059,7062]},"-"]]],["plus",{"sourceInterval":[7065,7071]},["app",{"sourceInterval":[7065,7070]},"digit",[]]]]],"nonZeroDigit":["define",{"sourceInterval":[7075,7102]},null,[],["range",{"sourceInterval":[7094,7102]},"1","9"]],"comment":["define",{"sourceInterval":[7106,7150]},null,[],["alt",{"sourceInterval":[7120,7150]},["app",{"sourceInterval":[7120,7131]},"lineComment",[]],["app",{"sourceInterval":[7138,7150]},"blockComment",[]]]],"lineComment":["define",{"sourceInterval":[7154,7195]},null,[],["seq",{"sourceInterval":[7172,7195]},["terminal",{"sourceInterval":[7172,7176]},"//"],["star",{"sourceInterval":[7177,7189]},["seq",{"sourceInterval":[7178,7187]},["not",{"sourceInterval":[7178,7183]},["terminal",{"sourceInterval":[7179,7183]},"\n"]],["app",{"sourceInterval":[7184,7187]},"any",[]]]],["opt",{"sourceInterval":[7190,7195]},["terminal",{"sourceInterval":[7190,7194]},"\n"]]]],"blockComment":["define",{"sourceInterval":[7199,7240]},null,[],["seq",{"sourceInterval":[7218,7240]},["terminal",{"sourceInterval":[7218,7222]},"/*"],["star",{"sourceInterval":[7223,7235]},["seq",{"sourceInterval":[7224,7233]},["not",{"sourceInterval":[7224,7229]},["terminal",{"sourceInterval":[7225,7229]},"*/"]],["app",{"sourceInterval":[7230,7233]},"any",[]]]],["terminal",{"sourceInterval":[7236,7240]},"*/"]]]}]);module.exports=result;
|
|
1
|
+
'use strict';const {makeRecipe}=require('ohm-js');const result=makeRecipe(["grammar",{"source":"Rex {\n space += comment\n\n Program\n = Expr*\n\n Expr\n = AssignExpr\n\n AssignExpr\n = Place AssignOp AssignExpr -- assign\n | ExistenceExpr -- value\n\n ExistenceExpr\n = ExistenceExpr AndKw BitExpr -- and\n | ExistenceExpr OrKw BitExpr -- or\n | ExistenceExpr NorKw BitExpr -- nor\n | BitExpr -- value\n\n BitExpr\n = BitExpr \"&\" CompareExpr -- and\n | BitExpr \"^\" CompareExpr -- xor\n | BitExpr \"|\" CompareExpr -- or\n | CompareExpr -- value\n\n CompareExpr\n = RangeExpr CompareOp RangeExpr -- binary\n | RangeExpr -- value\n\n RangeExpr\n = AddExpr \"..\" AddExpr -- range\n | AddExpr -- value\n\n AddExpr\n = AddExpr \"+\" MulExpr -- add\n | AddExpr \"-\" MulExpr -- sub\n | MulExpr -- value\n\n MulExpr\n = MulExpr \"*\" UnaryExpr -- mul\n | MulExpr \"/\" UnaryExpr -- div\n | MulExpr \"%\" UnaryExpr -- mod\n | UnaryExpr -- value\n\n UnaryExpr\n = \"-\" ~digit ~infTok UnaryExpr -- neg\n | \"~\" UnaryExpr -- not\n | NotKw UnaryExpr -- logicalNot\n | DeleteKw Place -- delete\n | PostfixExpr -- value\n\n PostfixExpr\n = PrimaryExpr PostfixTail* -- chain\n\n PostfixTail\n = \".\" navKey -- navStatic\n | \".(\" Expr \")\" -- navDynamic\n | \"(\" \")\" -- callEmpty\n | \"(\" Elements<Expr> \")\" -- call\n\n PrimaryExpr\n = ConditionalExpr\n | ForExpr\n | WhileExpr\n | BreakKw -- break\n | ContinueKw -- continue\n | Array\n | Object\n | String\n | Number\n | StringKw -- stringPred\n | NumberKw -- numberPred\n | ObjectKw -- objectPred\n | ArrayKw -- arrayPred\n | BooleanKw -- booleanPred\n | TrueKw -- true\n | FalseKw -- false\n | NullKw -- null\n | UndefinedKw -- undefined\n | SelfExpr -- self\n | identifier -- identifier\n | \"(\" Expr \")\" -- group\n\n SelfExpr\n = SelfKw \"@\" Number -- depth\n | SelfKw -- plain\n\n Place\n = PlaceBase PlaceTail*\n\n PlaceBase\n = identifier\n | SelfKw\n\n PlaceTail\n = \".\" navKey -- navStatic\n | \".(\" Expr \")\" -- navDynamic\n\n ConditionalExpr\n = ConditionalHead Expr DoKw Block ConditionalElse? EndKw\n\n ConditionalHead\n = WhenKw\n | UnlessKw\n\n ConditionalElse\n = ElseKw ConditionalHead Expr DoKw Block ConditionalElse? -- elseChain\n | ElseKw Block -- else\n\n ForExpr\n = ForKw IterBinding DoKw Block EndKw\n\n WhileExpr\n = WhileKw Expr DoKw Block EndKw\n\n IterBinding\n = identifier \",\" identifier inTok Expr -- keyValueIn\n | identifier inTok Expr -- valueIn\n | identifier ofTok Expr -- keyOf\n | inTok Expr -- bareIn\n | ofTok Expr -- bareOf\n\n IterBindingComprehension\n = identifier \",\" identifier inTok Expr -- keyValueIn\n | identifier inTok Expr -- valueIn\n | identifier ofTok Expr -- keyOf\n\n Block\n = Expr*\n\n Array\n = \"[\" \"]\" -- empty\n | \"[\" Expr ForKw IterBindingComprehension \"]\" -- forComprehension\n | \"[\" Expr WhileKw Expr \"]\" -- whileComprehension\n | \"[\" Expr inTok Expr \"]\" -- inComprehension\n | \"[\" Expr ofTok Expr \"]\" -- ofComprehension\n | \"[\" Elements<Expr> \"]\" -- values\n\n Object\n = \"{\" \"}\" -- empty\n | \"{\" ObjKey \":\" Expr ForKw IterBindingComprehension \"}\" -- forComprehension\n | \"{\" ObjKey \":\" Expr WhileKw Expr \"}\" -- whileComprehension\n | \"{\" ObjKey \":\" Expr inTok Expr \"}\" -- inComprehension\n | \"{\" ObjKey \":\" Expr ofTok Expr \"}\" -- ofComprehension\n | \"{\" Elements<Pair> \"}\" -- pairs\n\n Pair\n = ObjKey \":\" Expr\n\n ObjKey\n = keyName -- bare\n | Number -- number\n | String -- string\n | \"(\" Expr \")\" -- computed\n\n navKey\n = keyName\n | digit+\n\n keyName\n = nameHead nameTail*\n\n CompareOp\n = \"==\"\n | \"!=\"\n | \">=\"\n | \">\"\n | \"<=\"\n | \"<\"\n\n AssignOp\n = \":=\"\n | \"=\"\n | \"+=\"\n | \"-=\"\n | \"*=\"\n | \"/=\"\n | \"%=\"\n | \"&=\"\n | \"|=\"\n | \"^=\"\n\n Elements<item>\n = item (\",\"? item)* \",\"?\n\n identifier\n = ~reserved nameHead nameTail*\n\n nameHead\n = letter\n | \"_\"\n\n nameTail\n = letter\n | digit\n | \"_\"\n | \"-\"\n\n reserved\n = trueTok\n | falseTok\n | nullTok\n | undefinedTok\n | nanTok\n | infTok\n | selfTok\n | whenTok\n | unlessTok\n | forTok\n | whileTok\n | inTok\n | ofTok\n | doTok\n | elseTok\n | endTok\n | breakTok\n | continueTok\n | andTok\n | orTok\n | norTok\n | notTok\n | deleteTok\n | stringTok\n | numberTok\n | objectTok\n | arrayTok\n | booleanTok\n\n TrueKw\n = trueTok\n\n FalseKw\n = falseTok\n\n NullKw\n = nullTok\n\n UndefinedKw\n = undefinedTok\n\n SelfKw\n = selfTok\n\n WhenKw\n = whenTok\n\n UnlessKw\n = unlessTok\n\n WhileKw\n = whileTok\n\n ForKw\n = forTok\n\n DoKw\n = doTok\n\n ElseKw\n = elseTok\n\n EndKw\n = endTok\n\n BreakKw\n = breakTok\n\n ContinueKw\n = continueTok\n\n AndKw\n = andTok\n\n OrKw\n = orTok\n\n NorKw\n = norTok\n\n NotKw\n = notTok\n\n DeleteKw\n = deleteTok\n\n StringKw\n = stringTok\n\n NumberKw\n = numberTok\n\n ObjectKw\n = objectTok\n\n ArrayKw\n = arrayTok\n\n BooleanKw\n = booleanTok\n\n\n trueTok\n = \"true\" ~nameTail\n\n falseTok\n = \"false\" ~nameTail\n\n nullTok\n = \"null\" ~nameTail\n\n undefinedTok\n = \"undefined\" ~nameTail\n\n nanTok\n = \"nan\" ~nameTail\n\n infTok\n = \"inf\" ~nameTail\n\n selfTok\n = \"self\" ~nameTail\n\n whenTok\n = \"when\" ~nameTail\n\n unlessTok\n = \"unless\" ~nameTail\n\n whileTok\n = \"while\" ~nameTail\n\n forTok\n = \"for\" ~nameTail\n\n inTok\n = \"in\" ~nameTail\n\n ofTok\n = \"of\" ~nameTail\n\n doTok\n = \"do\" ~nameTail\n\n elseTok\n = \"else\" ~nameTail\n\n endTok\n = \"end\" ~nameTail\n\n breakTok\n = \"break\" ~nameTail\n\n continueTok\n = \"continue\" ~nameTail\n\n andTok\n = \"and\" ~nameTail\n\n orTok\n = \"or\" ~nameTail\n\n norTok\n = \"nor\" ~nameTail\n\n notTok\n = \"not\" ~nameTail\n\n deleteTok\n = \"delete\" ~nameTail\n\n stringTok\n = \"string\" ~nameTail\n\n numberTok\n = \"number\" ~nameTail\n\n objectTok\n = \"object\" ~nameTail\n\n arrayTok\n = \"array\" ~nameTail\n\n booleanTok\n = \"boolean\" ~nameTail\n\n\n String\n = DQuotedString\n | SQuotedString\n\n DQuotedString\n = \"\\\"\" dStringChar* \"\\\"\"\n\n dStringChar\n = ~(\"\\\"\" | \"\\\\\") any\n | escape\n\n SQuotedString\n = \"'\" sStringChar* \"'\"\n\n sStringChar\n = ~(\"'\" | \"\\\\\") any\n | escape\n\n escape\n = \"\\\\\" (escapeChar | hexEscape | unicodeEscape)\n\n escapeChar\n = \"\\\"\" | \"'\" | \"\\\\\" | \"/\" | \"b\" | \"f\" | \"n\" | \"r\" | \"t\" | \"0\"\n\n hexEscape\n = \"x\" hex hex\n\n unicodeEscape\n = \"u\" hex hex hex hex\n\n hex\n = digit\n | \"A\"..\"F\"\n | \"a\"..\"f\"\n\n Number\n = hexNumber\n | binaryNumber\n | infLiteral\n | nanLiteral\n | decimalNumber\n\n infLiteral\n = \"-\"? infTok\n\n nanLiteral\n = nanTok\n\n hexNumber\n = \"-\"? \"0x\" hex+\n\n binaryNumber\n = \"-\"? \"0b\" bit+\n\n decimalNumber\n = \"-\"? decimalInteger (\".\" digit+)? exponent?\n\n decimalInteger\n = nonZeroDigit digit* -- nonZero\n | \"0\" -- zero\n\n bit\n = \"0\" | \"1\"\n\n exponent\n = (\"e\" | \"E\") (\"+\" | \"-\")? digit+\n\n nonZeroDigit\n = \"1\"..\"9\"\n\n comment\n = lineComment\n | blockComment\n\n lineComment\n = \"//\" (~\"\\n\" any)* \"\\n\"?\n\n blockComment\n = \"/*\" (~\"*/\" any)* \"*/\"\n}"},"Rex",null,"Program",{"space":["extend",{"sourceInterval":[8,24]},null,[],["app",{"sourceInterval":[17,24]},"comment",[]]],"Program":["define",{"sourceInterval":[28,47]},null,[],["star",{"sourceInterval":[42,47]},["app",{"sourceInterval":[42,46]},"Expr",[]]]],"Expr":["define",{"sourceInterval":[51,72]},null,[],["app",{"sourceInterval":[62,72]},"AssignExpr",[]]],"AssignExpr_assign":["define",{"sourceInterval":[93,133]},null,[],["seq",{"sourceInterval":[93,118]},["app",{"sourceInterval":[93,98]},"Place",[]],["app",{"sourceInterval":[99,107]},"AssignOp",[]],["app",{"sourceInterval":[108,118]},"AssignExpr",[]]]],"AssignExpr_value":["define",{"sourceInterval":[140,179]},null,[],["app",{"sourceInterval":[140,153]},"ExistenceExpr",[]]],"AssignExpr":["define",{"sourceInterval":[76,179]},null,[],["alt",{"sourceInterval":[93,179]},["app",{"sourceInterval":[93,118]},"AssignExpr_assign",[]],["app",{"sourceInterval":[140,153]},"AssignExpr_value",[]]]],"ExistenceExpr_and":["define",{"sourceInterval":[203,240]},null,[],["seq",{"sourceInterval":[203,230]},["app",{"sourceInterval":[203,216]},"ExistenceExpr",[]],["app",{"sourceInterval":[217,222]},"AndKw",[]],["app",{"sourceInterval":[223,230]},"BitExpr",[]]]],"ExistenceExpr_or":["define",{"sourceInterval":[247,283]},null,[],["seq",{"sourceInterval":[247,273]},["app",{"sourceInterval":[247,260]},"ExistenceExpr",[]],["app",{"sourceInterval":[261,265]},"OrKw",[]],["app",{"sourceInterval":[266,273]},"BitExpr",[]]]],"ExistenceExpr_nor":["define",{"sourceInterval":[290,327]},null,[],["seq",{"sourceInterval":[290,317]},["app",{"sourceInterval":[290,303]},"ExistenceExpr",[]],["app",{"sourceInterval":[304,309]},"NorKw",[]],["app",{"sourceInterval":[310,317]},"BitExpr",[]]]],"ExistenceExpr_value":["define",{"sourceInterval":[334,373]},null,[],["app",{"sourceInterval":[334,341]},"BitExpr",[]]],"ExistenceExpr":["define",{"sourceInterval":[183,373]},null,[],["alt",{"sourceInterval":[203,373]},["app",{"sourceInterval":[203,230]},"ExistenceExpr_and",[]],["app",{"sourceInterval":[247,273]},"ExistenceExpr_or",[]],["app",{"sourceInterval":[290,317]},"ExistenceExpr_nor",[]],["app",{"sourceInterval":[334,341]},"ExistenceExpr_value",[]]]],"BitExpr_and":["define",{"sourceInterval":[391,428]},null,[],["seq",{"sourceInterval":[391,414]},["app",{"sourceInterval":[391,398]},"BitExpr",[]],["terminal",{"sourceInterval":[399,402]},"&"],["app",{"sourceInterval":[403,414]},"CompareExpr",[]]]],"BitExpr_xor":["define",{"sourceInterval":[435,472]},null,[],["seq",{"sourceInterval":[435,458]},["app",{"sourceInterval":[435,442]},"BitExpr",[]],["terminal",{"sourceInterval":[443,446]},"^"],["app",{"sourceInterval":[447,458]},"CompareExpr",[]]]],"BitExpr_or":["define",{"sourceInterval":[479,515]},null,[],["seq",{"sourceInterval":[479,502]},["app",{"sourceInterval":[479,486]},"BitExpr",[]],["terminal",{"sourceInterval":[487,490]},"|"],["app",{"sourceInterval":[491,502]},"CompareExpr",[]]]],"BitExpr_value":["define",{"sourceInterval":[522,561]},null,[],["app",{"sourceInterval":[522,533]},"CompareExpr",[]]],"BitExpr":["define",{"sourceInterval":[377,561]},null,[],["alt",{"sourceInterval":[391,561]},["app",{"sourceInterval":[391,414]},"BitExpr_and",[]],["app",{"sourceInterval":[435,458]},"BitExpr_xor",[]],["app",{"sourceInterval":[479,502]},"BitExpr_or",[]],["app",{"sourceInterval":[522,533]},"BitExpr_value",[]]]],"CompareExpr_binary":["define",{"sourceInterval":[583,623]},null,[],["seq",{"sourceInterval":[583,612]},["app",{"sourceInterval":[583,592]},"RangeExpr",[]],["app",{"sourceInterval":[593,602]},"CompareOp",[]],["app",{"sourceInterval":[603,612]},"RangeExpr",[]]]],"CompareExpr_value":["define",{"sourceInterval":[630,669]},null,[],["app",{"sourceInterval":[630,639]},"RangeExpr",[]]],"CompareExpr":["define",{"sourceInterval":[565,669]},null,[],["alt",{"sourceInterval":[583,669]},["app",{"sourceInterval":[583,612]},"CompareExpr_binary",[]],["app",{"sourceInterval":[630,639]},"CompareExpr_value",[]]]],"RangeExpr_range":["define",{"sourceInterval":[689,728]},null,[],["seq",{"sourceInterval":[689,709]},["app",{"sourceInterval":[689,696]},"AddExpr",[]],["terminal",{"sourceInterval":[697,701]},".."],["app",{"sourceInterval":[702,709]},"AddExpr",[]]]],"RangeExpr_value":["define",{"sourceInterval":[735,774]},null,[],["app",{"sourceInterval":[735,742]},"AddExpr",[]]],"RangeExpr":["define",{"sourceInterval":[673,774]},null,[],["alt",{"sourceInterval":[689,774]},["app",{"sourceInterval":[689,709]},"RangeExpr_range",[]],["app",{"sourceInterval":[735,742]},"RangeExpr_value",[]]]],"AddExpr_add":["define",{"sourceInterval":[792,829]},null,[],["seq",{"sourceInterval":[792,811]},["app",{"sourceInterval":[792,799]},"AddExpr",[]],["terminal",{"sourceInterval":[800,803]},"+"],["app",{"sourceInterval":[804,811]},"MulExpr",[]]]],"AddExpr_sub":["define",{"sourceInterval":[836,873]},null,[],["seq",{"sourceInterval":[836,855]},["app",{"sourceInterval":[836,843]},"AddExpr",[]],["terminal",{"sourceInterval":[844,847]},"-"],["app",{"sourceInterval":[848,855]},"MulExpr",[]]]],"AddExpr_value":["define",{"sourceInterval":[880,919]},null,[],["app",{"sourceInterval":[880,887]},"MulExpr",[]]],"AddExpr":["define",{"sourceInterval":[778,919]},null,[],["alt",{"sourceInterval":[792,919]},["app",{"sourceInterval":[792,811]},"AddExpr_add",[]],["app",{"sourceInterval":[836,855]},"AddExpr_sub",[]],["app",{"sourceInterval":[880,887]},"AddExpr_value",[]]]],"MulExpr_mul":["define",{"sourceInterval":[937,974]},null,[],["seq",{"sourceInterval":[937,958]},["app",{"sourceInterval":[937,944]},"MulExpr",[]],["terminal",{"sourceInterval":[945,948]},"*"],["app",{"sourceInterval":[949,958]},"UnaryExpr",[]]]],"MulExpr_div":["define",{"sourceInterval":[981,1018]},null,[],["seq",{"sourceInterval":[981,1002]},["app",{"sourceInterval":[981,988]},"MulExpr",[]],["terminal",{"sourceInterval":[989,992]},"/"],["app",{"sourceInterval":[993,1002]},"UnaryExpr",[]]]],"MulExpr_mod":["define",{"sourceInterval":[1025,1062]},null,[],["seq",{"sourceInterval":[1025,1046]},["app",{"sourceInterval":[1025,1032]},"MulExpr",[]],["terminal",{"sourceInterval":[1033,1036]},"%"],["app",{"sourceInterval":[1037,1046]},"UnaryExpr",[]]]],"MulExpr_value":["define",{"sourceInterval":[1069,1108]},null,[],["app",{"sourceInterval":[1069,1078]},"UnaryExpr",[]]],"MulExpr":["define",{"sourceInterval":[923,1108]},null,[],["alt",{"sourceInterval":[937,1108]},["app",{"sourceInterval":[937,958]},"MulExpr_mul",[]],["app",{"sourceInterval":[981,1002]},"MulExpr_div",[]],["app",{"sourceInterval":[1025,1046]},"MulExpr_mod",[]],["app",{"sourceInterval":[1069,1078]},"MulExpr_value",[]]]],"UnaryExpr_neg":["define",{"sourceInterval":[1128,1166]},null,[],["seq",{"sourceInterval":[1128,1156]},["terminal",{"sourceInterval":[1128,1131]},"-"],["not",{"sourceInterval":[1132,1138]},["app",{"sourceInterval":[1133,1138]},"digit",[]]],["not",{"sourceInterval":[1139,1146]},["app",{"sourceInterval":[1140,1146]},"infTok",[]]],["app",{"sourceInterval":[1147,1156]},"UnaryExpr",[]]]],"UnaryExpr_not":["define",{"sourceInterval":[1173,1210]},null,[],["seq",{"sourceInterval":[1173,1186]},["terminal",{"sourceInterval":[1173,1176]},"~"],["app",{"sourceInterval":[1177,1186]},"UnaryExpr",[]]]],"UnaryExpr_logicalNot":["define",{"sourceInterval":[1217,1261]},null,[],["seq",{"sourceInterval":[1217,1232]},["app",{"sourceInterval":[1217,1222]},"NotKw",[]],["app",{"sourceInterval":[1223,1232]},"UnaryExpr",[]]]],"UnaryExpr_delete":["define",{"sourceInterval":[1268,1308]},null,[],["seq",{"sourceInterval":[1268,1282]},["app",{"sourceInterval":[1268,1276]},"DeleteKw",[]],["app",{"sourceInterval":[1277,1282]},"Place",[]]]],"UnaryExpr_value":["define",{"sourceInterval":[1315,1354]},null,[],["app",{"sourceInterval":[1315,1326]},"PostfixExpr",[]]],"UnaryExpr":["define",{"sourceInterval":[1112,1354]},null,[],["alt",{"sourceInterval":[1128,1354]},["app",{"sourceInterval":[1128,1156]},"UnaryExpr_neg",[]],["app",{"sourceInterval":[1173,1186]},"UnaryExpr_not",[]],["app",{"sourceInterval":[1217,1232]},"UnaryExpr_logicalNot",[]],["app",{"sourceInterval":[1268,1282]},"UnaryExpr_delete",[]],["app",{"sourceInterval":[1315,1326]},"UnaryExpr_value",[]]]],"PostfixExpr_chain":["define",{"sourceInterval":[1376,1415]},null,[],["seq",{"sourceInterval":[1376,1400]},["app",{"sourceInterval":[1376,1387]},"PrimaryExpr",[]],["star",{"sourceInterval":[1388,1400]},["app",{"sourceInterval":[1388,1399]},"PostfixTail",[]]]]],"PostfixExpr":["define",{"sourceInterval":[1358,1415]},null,[],["app",{"sourceInterval":[1376,1415]},"PostfixExpr_chain",[]]],"PostfixTail_navStatic":["define",{"sourceInterval":[1437,1480]},null,[],["seq",{"sourceInterval":[1437,1447]},["terminal",{"sourceInterval":[1437,1440]},"."],["app",{"sourceInterval":[1441,1447]},"navKey",[]]]],"PostfixTail_navDynamic":["define",{"sourceInterval":[1487,1530]},null,[],["seq",{"sourceInterval":[1487,1500]},["terminal",{"sourceInterval":[1487,1491]},".("],["app",{"sourceInterval":[1492,1496]},"Expr",[]],["terminal",{"sourceInterval":[1497,1500]},")"]]],"PostfixTail_callEmpty":["define",{"sourceInterval":[1537,1578]},null,[],["seq",{"sourceInterval":[1537,1544]},["terminal",{"sourceInterval":[1537,1540]},"("],["terminal",{"sourceInterval":[1541,1544]},")"]]],"PostfixTail_call":["define",{"sourceInterval":[1585,1622]},null,[],["seq",{"sourceInterval":[1585,1607]},["terminal",{"sourceInterval":[1585,1588]},"("],["app",{"sourceInterval":[1589,1603]},"Elements",[["app",{"sourceInterval":[1598,1602]},"Expr",[]]]],["terminal",{"sourceInterval":[1604,1607]},")"]]],"PostfixTail":["define",{"sourceInterval":[1419,1622]},null,[],["alt",{"sourceInterval":[1437,1622]},["app",{"sourceInterval":[1437,1447]},"PostfixTail_navStatic",[]],["app",{"sourceInterval":[1487,1500]},"PostfixTail_navDynamic",[]],["app",{"sourceInterval":[1537,1544]},"PostfixTail_callEmpty",[]],["app",{"sourceInterval":[1585,1607]},"PostfixTail_call",[]]]],"PrimaryExpr_break":["define",{"sourceInterval":[1696,1735]},null,[],["app",{"sourceInterval":[1696,1703]},"BreakKw",[]]],"PrimaryExpr_continue":["define",{"sourceInterval":[1742,1784]},null,[],["app",{"sourceInterval":[1742,1752]},"ContinueKw",[]]],"PrimaryExpr_stringPred":["define",{"sourceInterval":[1842,1886]},null,[],["app",{"sourceInterval":[1842,1850]},"StringKw",[]]],"PrimaryExpr_numberPred":["define",{"sourceInterval":[1893,1937]},null,[],["app",{"sourceInterval":[1893,1901]},"NumberKw",[]]],"PrimaryExpr_objectPred":["define",{"sourceInterval":[1944,1988]},null,[],["app",{"sourceInterval":[1944,1952]},"ObjectKw",[]]],"PrimaryExpr_arrayPred":["define",{"sourceInterval":[1995,2038]},null,[],["app",{"sourceInterval":[1995,2002]},"ArrayKw",[]]],"PrimaryExpr_booleanPred":["define",{"sourceInterval":[2045,2090]},null,[],["app",{"sourceInterval":[2045,2054]},"BooleanKw",[]]],"PrimaryExpr_true":["define",{"sourceInterval":[2097,2135]},null,[],["app",{"sourceInterval":[2097,2103]},"TrueKw",[]]],"PrimaryExpr_false":["define",{"sourceInterval":[2142,2181]},null,[],["app",{"sourceInterval":[2142,2149]},"FalseKw",[]]],"PrimaryExpr_null":["define",{"sourceInterval":[2188,2226]},null,[],["app",{"sourceInterval":[2188,2194]},"NullKw",[]]],"PrimaryExpr_undefined":["define",{"sourceInterval":[2233,2276]},null,[],["app",{"sourceInterval":[2233,2244]},"UndefinedKw",[]]],"PrimaryExpr_self":["define",{"sourceInterval":[2283,2321]},null,[],["app",{"sourceInterval":[2283,2291]},"SelfExpr",[]]],"PrimaryExpr_identifier":["define",{"sourceInterval":[2328,2372]},null,[],["app",{"sourceInterval":[2328,2338]},"identifier",[]]],"PrimaryExpr_group":["define",{"sourceInterval":[2379,2417]},null,[],["seq",{"sourceInterval":[2379,2391]},["terminal",{"sourceInterval":[2379,2382]},"("],["app",{"sourceInterval":[2383,2387]},"Expr",[]],["terminal",{"sourceInterval":[2388,2391]},")"]]],"PrimaryExpr":["define",{"sourceInterval":[1626,2417]},null,[],["alt",{"sourceInterval":[1644,2417]},["app",{"sourceInterval":[1644,1659]},"ConditionalExpr",[]],["app",{"sourceInterval":[1666,1673]},"ForExpr",[]],["app",{"sourceInterval":[1680,1689]},"WhileExpr",[]],["app",{"sourceInterval":[1696,1703]},"PrimaryExpr_break",[]],["app",{"sourceInterval":[1742,1752]},"PrimaryExpr_continue",[]],["app",{"sourceInterval":[1791,1796]},"Array",[]],["app",{"sourceInterval":[1803,1809]},"Object",[]],["app",{"sourceInterval":[1816,1822]},"String",[]],["app",{"sourceInterval":[1829,1835]},"Number",[]],["app",{"sourceInterval":[1842,1850]},"PrimaryExpr_stringPred",[]],["app",{"sourceInterval":[1893,1901]},"PrimaryExpr_numberPred",[]],["app",{"sourceInterval":[1944,1952]},"PrimaryExpr_objectPred",[]],["app",{"sourceInterval":[1995,2002]},"PrimaryExpr_arrayPred",[]],["app",{"sourceInterval":[2045,2054]},"PrimaryExpr_booleanPred",[]],["app",{"sourceInterval":[2097,2103]},"PrimaryExpr_true",[]],["app",{"sourceInterval":[2142,2149]},"PrimaryExpr_false",[]],["app",{"sourceInterval":[2188,2194]},"PrimaryExpr_null",[]],["app",{"sourceInterval":[2233,2244]},"PrimaryExpr_undefined",[]],["app",{"sourceInterval":[2283,2291]},"PrimaryExpr_self",[]],["app",{"sourceInterval":[2328,2338]},"PrimaryExpr_identifier",[]],["app",{"sourceInterval":[2379,2391]},"PrimaryExpr_group",[]]]],"SelfExpr_depth":["define",{"sourceInterval":[2436,2474]},null,[],["seq",{"sourceInterval":[2436,2453]},["app",{"sourceInterval":[2436,2442]},"SelfKw",[]],["terminal",{"sourceInterval":[2443,2446]},"@"],["app",{"sourceInterval":[2447,2453]},"Number",[]]]],"SelfExpr_plain":["define",{"sourceInterval":[2481,2520]},null,[],["app",{"sourceInterval":[2481,2487]},"SelfKw",[]]],"SelfExpr":["define",{"sourceInterval":[2421,2520]},null,[],["alt",{"sourceInterval":[2436,2520]},["app",{"sourceInterval":[2436,2453]},"SelfExpr_depth",[]],["app",{"sourceInterval":[2481,2487]},"SelfExpr_plain",[]]]],"Place":["define",{"sourceInterval":[2524,2556]},null,[],["seq",{"sourceInterval":[2536,2556]},["app",{"sourceInterval":[2536,2545]},"PlaceBase",[]],["star",{"sourceInterval":[2546,2556]},["app",{"sourceInterval":[2546,2555]},"PlaceTail",[]]]]],"PlaceBase":["define",{"sourceInterval":[2560,2599]},null,[],["alt",{"sourceInterval":[2576,2599]},["app",{"sourceInterval":[2576,2586]},"identifier",[]],["app",{"sourceInterval":[2593,2599]},"SelfKw",[]]]],"PlaceTail_navStatic":["define",{"sourceInterval":[2619,2662]},null,[],["seq",{"sourceInterval":[2619,2629]},["terminal",{"sourceInterval":[2619,2622]},"."],["app",{"sourceInterval":[2623,2629]},"navKey",[]]]],"PlaceTail_navDynamic":["define",{"sourceInterval":[2669,2712]},null,[],["seq",{"sourceInterval":[2669,2682]},["terminal",{"sourceInterval":[2669,2673]},".("],["app",{"sourceInterval":[2674,2678]},"Expr",[]],["terminal",{"sourceInterval":[2679,2682]},")"]]],"PlaceTail":["define",{"sourceInterval":[2603,2712]},null,[],["alt",{"sourceInterval":[2619,2712]},["app",{"sourceInterval":[2619,2629]},"PlaceTail_navStatic",[]],["app",{"sourceInterval":[2669,2682]},"PlaceTail_navDynamic",[]]]],"ConditionalExpr":["define",{"sourceInterval":[2716,2792]},null,[],["seq",{"sourceInterval":[2738,2792]},["app",{"sourceInterval":[2738,2753]},"ConditionalHead",[]],["app",{"sourceInterval":[2754,2758]},"Expr",[]],["app",{"sourceInterval":[2759,2763]},"DoKw",[]],["app",{"sourceInterval":[2764,2769]},"Block",[]],["opt",{"sourceInterval":[2770,2786]},["app",{"sourceInterval":[2770,2785]},"ConditionalElse",[]]],["app",{"sourceInterval":[2787,2792]},"EndKw",[]]]],"ConditionalHead":["define",{"sourceInterval":[2796,2839]},null,[],["alt",{"sourceInterval":[2818,2839]},["app",{"sourceInterval":[2818,2824]},"WhenKw",[]],["app",{"sourceInterval":[2831,2839]},"UnlessKw",[]]]],"ConditionalElse_elseChain":["define",{"sourceInterval":[2865,2934]},null,[],["seq",{"sourceInterval":[2865,2920]},["app",{"sourceInterval":[2865,2871]},"ElseKw",[]],["app",{"sourceInterval":[2872,2887]},"ConditionalHead",[]],["app",{"sourceInterval":[2888,2892]},"Expr",[]],["app",{"sourceInterval":[2893,2897]},"DoKw",[]],["app",{"sourceInterval":[2898,2903]},"Block",[]],["opt",{"sourceInterval":[2904,2920]},["app",{"sourceInterval":[2904,2919]},"ConditionalElse",[]]]]],"ConditionalElse_else":["define",{"sourceInterval":[2941,3007]},null,[],["seq",{"sourceInterval":[2941,2953]},["app",{"sourceInterval":[2941,2947]},"ElseKw",[]],["app",{"sourceInterval":[2948,2953]},"Block",[]]]],"ConditionalElse":["define",{"sourceInterval":[2843,3007]},null,[],["alt",{"sourceInterval":[2865,3007]},["app",{"sourceInterval":[2865,2920]},"ConditionalElse_elseChain",[]],["app",{"sourceInterval":[2941,2953]},"ConditionalElse_else",[]]]],"ForExpr":["define",{"sourceInterval":[3011,3059]},null,[],["seq",{"sourceInterval":[3025,3059]},["app",{"sourceInterval":[3025,3030]},"ForKw",[]],["app",{"sourceInterval":[3031,3042]},"IterBinding",[]],["app",{"sourceInterval":[3043,3047]},"DoKw",[]],["app",{"sourceInterval":[3048,3053]},"Block",[]],["app",{"sourceInterval":[3054,3059]},"EndKw",[]]]],"WhileExpr":["define",{"sourceInterval":[3063,3108]},null,[],["seq",{"sourceInterval":[3079,3108]},["app",{"sourceInterval":[3079,3086]},"WhileKw",[]],["app",{"sourceInterval":[3087,3091]},"Expr",[]],["app",{"sourceInterval":[3092,3096]},"DoKw",[]],["app",{"sourceInterval":[3097,3102]},"Block",[]],["app",{"sourceInterval":[3103,3108]},"EndKw",[]]]],"IterBinding_keyValueIn":["define",{"sourceInterval":[3130,3182]},null,[],["seq",{"sourceInterval":[3130,3166]},["app",{"sourceInterval":[3130,3140]},"identifier",[]],["terminal",{"sourceInterval":[3141,3144]},","],["app",{"sourceInterval":[3145,3155]},"identifier",[]],["app",{"sourceInterval":[3156,3161]},"inTok",[]],["app",{"sourceInterval":[3162,3166]},"Expr",[]]]],"IterBinding_valueIn":["define",{"sourceInterval":[3189,3238]},null,[],["seq",{"sourceInterval":[3189,3210]},["app",{"sourceInterval":[3189,3199]},"identifier",[]],["app",{"sourceInterval":[3200,3205]},"inTok",[]],["app",{"sourceInterval":[3206,3210]},"Expr",[]]]],"IterBinding_keyOf":["define",{"sourceInterval":[3245,3292]},null,[],["seq",{"sourceInterval":[3245,3266]},["app",{"sourceInterval":[3245,3255]},"identifier",[]],["app",{"sourceInterval":[3256,3261]},"ofTok",[]],["app",{"sourceInterval":[3262,3266]},"Expr",[]]]],"IterBinding_bareIn":["define",{"sourceInterval":[3299,3347]},null,[],["seq",{"sourceInterval":[3299,3309]},["app",{"sourceInterval":[3299,3304]},"inTok",[]],["app",{"sourceInterval":[3305,3309]},"Expr",[]]]],"IterBinding_bareOf":["define",{"sourceInterval":[3354,3402]},null,[],["seq",{"sourceInterval":[3354,3364]},["app",{"sourceInterval":[3354,3359]},"ofTok",[]],["app",{"sourceInterval":[3360,3364]},"Expr",[]]]],"IterBinding":["define",{"sourceInterval":[3112,3402]},null,[],["alt",{"sourceInterval":[3130,3402]},["app",{"sourceInterval":[3130,3166]},"IterBinding_keyValueIn",[]],["app",{"sourceInterval":[3189,3210]},"IterBinding_valueIn",[]],["app",{"sourceInterval":[3245,3266]},"IterBinding_keyOf",[]],["app",{"sourceInterval":[3299,3309]},"IterBinding_bareIn",[]],["app",{"sourceInterval":[3354,3364]},"IterBinding_bareOf",[]]]],"IterBindingComprehension_keyValueIn":["define",{"sourceInterval":[3437,3489]},null,[],["seq",{"sourceInterval":[3437,3473]},["app",{"sourceInterval":[3437,3447]},"identifier",[]],["terminal",{"sourceInterval":[3448,3451]},","],["app",{"sourceInterval":[3452,3462]},"identifier",[]],["app",{"sourceInterval":[3463,3468]},"inTok",[]],["app",{"sourceInterval":[3469,3473]},"Expr",[]]]],"IterBindingComprehension_valueIn":["define",{"sourceInterval":[3496,3545]},null,[],["seq",{"sourceInterval":[3496,3517]},["app",{"sourceInterval":[3496,3506]},"identifier",[]],["app",{"sourceInterval":[3507,3512]},"inTok",[]],["app",{"sourceInterval":[3513,3517]},"Expr",[]]]],"IterBindingComprehension_keyOf":["define",{"sourceInterval":[3552,3599]},null,[],["seq",{"sourceInterval":[3552,3573]},["app",{"sourceInterval":[3552,3562]},"identifier",[]],["app",{"sourceInterval":[3563,3568]},"ofTok",[]],["app",{"sourceInterval":[3569,3573]},"Expr",[]]]],"IterBindingComprehension":["define",{"sourceInterval":[3406,3599]},null,[],["alt",{"sourceInterval":[3437,3599]},["app",{"sourceInterval":[3437,3473]},"IterBindingComprehension_keyValueIn",[]],["app",{"sourceInterval":[3496,3517]},"IterBindingComprehension_valueIn",[]],["app",{"sourceInterval":[3552,3573]},"IterBindingComprehension_keyOf",[]]]],"Block":["define",{"sourceInterval":[3603,3620]},null,[],["star",{"sourceInterval":[3615,3620]},["app",{"sourceInterval":[3615,3619]},"Expr",[]]]],"Array_empty":["define",{"sourceInterval":[3636,3697]},null,[],["seq",{"sourceInterval":[3636,3643]},["terminal",{"sourceInterval":[3636,3639]},"["],["terminal",{"sourceInterval":[3640,3643]},"]"]]],"Array_forComprehension":["define",{"sourceInterval":[3704,3776]},null,[],["seq",{"sourceInterval":[3704,3747]},["terminal",{"sourceInterval":[3704,3707]},"["],["app",{"sourceInterval":[3708,3712]},"Expr",[]],["app",{"sourceInterval":[3713,3718]},"ForKw",[]],["app",{"sourceInterval":[3719,3743]},"IterBindingComprehension",[]],["terminal",{"sourceInterval":[3744,3747]},"]"]]],"Array_whileComprehension":["define",{"sourceInterval":[3783,3857]},null,[],["seq",{"sourceInterval":[3783,3808]},["terminal",{"sourceInterval":[3783,3786]},"["],["app",{"sourceInterval":[3787,3791]},"Expr",[]],["app",{"sourceInterval":[3792,3799]},"WhileKw",[]],["app",{"sourceInterval":[3800,3804]},"Expr",[]],["terminal",{"sourceInterval":[3805,3808]},"]"]]],"Array_inComprehension":["define",{"sourceInterval":[3864,3935]},null,[],["seq",{"sourceInterval":[3864,3887]},["terminal",{"sourceInterval":[3864,3867]},"["],["app",{"sourceInterval":[3868,3872]},"Expr",[]],["app",{"sourceInterval":[3873,3878]},"inTok",[]],["app",{"sourceInterval":[3879,3883]},"Expr",[]],["terminal",{"sourceInterval":[3884,3887]},"]"]]],"Array_ofComprehension":["define",{"sourceInterval":[3942,4013]},null,[],["seq",{"sourceInterval":[3942,3965]},["terminal",{"sourceInterval":[3942,3945]},"["],["app",{"sourceInterval":[3946,3950]},"Expr",[]],["app",{"sourceInterval":[3951,3956]},"ofTok",[]],["app",{"sourceInterval":[3957,3961]},"Expr",[]],["terminal",{"sourceInterval":[3962,3965]},"]"]]],"Array_values":["define",{"sourceInterval":[4020,4082]},null,[],["seq",{"sourceInterval":[4020,4042]},["terminal",{"sourceInterval":[4020,4023]},"["],["app",{"sourceInterval":[4024,4038]},"Elements",[["app",{"sourceInterval":[4033,4037]},"Expr",[]]]],["terminal",{"sourceInterval":[4039,4042]},"]"]]],"Array":["define",{"sourceInterval":[3624,4082]},null,[],["alt",{"sourceInterval":[3636,4082]},["app",{"sourceInterval":[3636,3643]},"Array_empty",[]],["app",{"sourceInterval":[3704,3747]},"Array_forComprehension",[]],["app",{"sourceInterval":[3783,3808]},"Array_whileComprehension",[]],["app",{"sourceInterval":[3864,3887]},"Array_inComprehension",[]],["app",{"sourceInterval":[3942,3965]},"Array_ofComprehension",[]],["app",{"sourceInterval":[4020,4042]},"Array_values",[]]]],"Object_empty":["define",{"sourceInterval":[4099,4160]},null,[],["seq",{"sourceInterval":[4099,4106]},["terminal",{"sourceInterval":[4099,4102]},"{"],["terminal",{"sourceInterval":[4103,4106]},"}"]]],"Object_forComprehension":["define",{"sourceInterval":[4167,4241]},null,[],["seq",{"sourceInterval":[4167,4221]},["terminal",{"sourceInterval":[4167,4170]},"{"],["app",{"sourceInterval":[4171,4177]},"ObjKey",[]],["terminal",{"sourceInterval":[4178,4181]},":"],["app",{"sourceInterval":[4182,4186]},"Expr",[]],["app",{"sourceInterval":[4187,4192]},"ForKw",[]],["app",{"sourceInterval":[4193,4217]},"IterBindingComprehension",[]],["terminal",{"sourceInterval":[4218,4221]},"}"]]],"Object_whileComprehension":["define",{"sourceInterval":[4248,4322]},null,[],["seq",{"sourceInterval":[4248,4284]},["terminal",{"sourceInterval":[4248,4251]},"{"],["app",{"sourceInterval":[4252,4258]},"ObjKey",[]],["terminal",{"sourceInterval":[4259,4262]},":"],["app",{"sourceInterval":[4263,4267]},"Expr",[]],["app",{"sourceInterval":[4268,4275]},"WhileKw",[]],["app",{"sourceInterval":[4276,4280]},"Expr",[]],["terminal",{"sourceInterval":[4281,4284]},"}"]]],"Object_inComprehension":["define",{"sourceInterval":[4329,4400]},null,[],["seq",{"sourceInterval":[4329,4363]},["terminal",{"sourceInterval":[4329,4332]},"{"],["app",{"sourceInterval":[4333,4339]},"ObjKey",[]],["terminal",{"sourceInterval":[4340,4343]},":"],["app",{"sourceInterval":[4344,4348]},"Expr",[]],["app",{"sourceInterval":[4349,4354]},"inTok",[]],["app",{"sourceInterval":[4355,4359]},"Expr",[]],["terminal",{"sourceInterval":[4360,4363]},"}"]]],"Object_ofComprehension":["define",{"sourceInterval":[4407,4478]},null,[],["seq",{"sourceInterval":[4407,4441]},["terminal",{"sourceInterval":[4407,4410]},"{"],["app",{"sourceInterval":[4411,4417]},"ObjKey",[]],["terminal",{"sourceInterval":[4418,4421]},":"],["app",{"sourceInterval":[4422,4426]},"Expr",[]],["app",{"sourceInterval":[4427,4432]},"ofTok",[]],["app",{"sourceInterval":[4433,4437]},"Expr",[]],["terminal",{"sourceInterval":[4438,4441]},"}"]]],"Object_pairs":["define",{"sourceInterval":[4485,4546]},null,[],["seq",{"sourceInterval":[4485,4507]},["terminal",{"sourceInterval":[4485,4488]},"{"],["app",{"sourceInterval":[4489,4503]},"Elements",[["app",{"sourceInterval":[4498,4502]},"Pair",[]]]],["terminal",{"sourceInterval":[4504,4507]},"}"]]],"Object":["define",{"sourceInterval":[4086,4546]},null,[],["alt",{"sourceInterval":[4099,4546]},["app",{"sourceInterval":[4099,4106]},"Object_empty",[]],["app",{"sourceInterval":[4167,4221]},"Object_forComprehension",[]],["app",{"sourceInterval":[4248,4284]},"Object_whileComprehension",[]],["app",{"sourceInterval":[4329,4363]},"Object_inComprehension",[]],["app",{"sourceInterval":[4407,4441]},"Object_ofComprehension",[]],["app",{"sourceInterval":[4485,4507]},"Object_pairs",[]]]],"Pair":["define",{"sourceInterval":[4550,4576]},null,[],["seq",{"sourceInterval":[4561,4576]},["app",{"sourceInterval":[4561,4567]},"ObjKey",[]],["terminal",{"sourceInterval":[4568,4571]},":"],["app",{"sourceInterval":[4572,4576]},"Expr",[]]]],"ObjKey_bare":["define",{"sourceInterval":[4593,4631]},null,[],["app",{"sourceInterval":[4593,4600]},"keyName",[]]],"ObjKey_number":["define",{"sourceInterval":[4638,4678]},null,[],["app",{"sourceInterval":[4638,4644]},"Number",[]]],"ObjKey_string":["define",{"sourceInterval":[4685,4725]},null,[],["app",{"sourceInterval":[4685,4691]},"String",[]]],"ObjKey_computed":["define",{"sourceInterval":[4732,4773]},null,[],["seq",{"sourceInterval":[4732,4744]},["terminal",{"sourceInterval":[4732,4735]},"("],["app",{"sourceInterval":[4736,4740]},"Expr",[]],["terminal",{"sourceInterval":[4741,4744]},")"]]],"ObjKey":["define",{"sourceInterval":[4580,4773]},null,[],["alt",{"sourceInterval":[4593,4773]},["app",{"sourceInterval":[4593,4600]},"ObjKey_bare",[]],["app",{"sourceInterval":[4638,4644]},"ObjKey_number",[]],["app",{"sourceInterval":[4685,4691]},"ObjKey_string",[]],["app",{"sourceInterval":[4732,4744]},"ObjKey_computed",[]]]],"navKey":["define",{"sourceInterval":[4777,4810]},null,[],["alt",{"sourceInterval":[4790,4810]},["app",{"sourceInterval":[4790,4797]},"keyName",[]],["plus",{"sourceInterval":[4804,4810]},["app",{"sourceInterval":[4804,4809]},"digit",[]]]]],"keyName":["define",{"sourceInterval":[4814,4846]},null,[],["seq",{"sourceInterval":[4828,4846]},["app",{"sourceInterval":[4828,4836]},"nameHead",[]],["star",{"sourceInterval":[4837,4846]},["app",{"sourceInterval":[4837,4845]},"nameTail",[]]]]],"CompareOp":["define",{"sourceInterval":[4850,4923]},null,[],["alt",{"sourceInterval":[4866,4923]},["terminal",{"sourceInterval":[4866,4870]},"=="],["terminal",{"sourceInterval":[4877,4881]},"!="],["terminal",{"sourceInterval":[4888,4892]},">="],["terminal",{"sourceInterval":[4899,4902]},">"],["terminal",{"sourceInterval":[4909,4913]},"<="],["terminal",{"sourceInterval":[4920,4923]},"<"]]],"AssignOp":["define",{"sourceInterval":[4927,5044]},null,[],["alt",{"sourceInterval":[4942,5044]},["terminal",{"sourceInterval":[4942,4946]},":="],["terminal",{"sourceInterval":[4953,4956]},"="],["terminal",{"sourceInterval":[4963,4967]},"+="],["terminal",{"sourceInterval":[4974,4978]},"-="],["terminal",{"sourceInterval":[4985,4989]},"*="],["terminal",{"sourceInterval":[4996,5000]},"/="],["terminal",{"sourceInterval":[5007,5011]},"%="],["terminal",{"sourceInterval":[5018,5022]},"&="],["terminal",{"sourceInterval":[5029,5033]},"|="],["terminal",{"sourceInterval":[5040,5044]},"^="]]],"Elements":["define",{"sourceInterval":[5048,5091]},null,["item"],["seq",{"sourceInterval":[5069,5091]},["param",{"sourceInterval":[5069,5073]},0],["star",{"sourceInterval":[5074,5086]},["seq",{"sourceInterval":[5075,5084]},["opt",{"sourceInterval":[5075,5079]},["terminal",{"sourceInterval":[5075,5078]},","]],["param",{"sourceInterval":[5080,5084]},0]]],["opt",{"sourceInterval":[5087,5091]},["terminal",{"sourceInterval":[5087,5090]},","]]]],"identifier":["define",{"sourceInterval":[5095,5140]},null,[],["seq",{"sourceInterval":[5112,5140]},["not",{"sourceInterval":[5112,5121]},["app",{"sourceInterval":[5113,5121]},"reserved",[]]],["app",{"sourceInterval":[5122,5130]},"nameHead",[]],["star",{"sourceInterval":[5131,5140]},["app",{"sourceInterval":[5131,5139]},"nameTail",[]]]]],"nameHead":["define",{"sourceInterval":[5144,5175]},null,[],["alt",{"sourceInterval":[5159,5175]},["app",{"sourceInterval":[5159,5165]},"letter",[]],["terminal",{"sourceInterval":[5172,5175]},"_"]]],"nameTail":["define",{"sourceInterval":[5179,5232]},null,[],["alt",{"sourceInterval":[5194,5232]},["app",{"sourceInterval":[5194,5200]},"letter",[]],["app",{"sourceInterval":[5207,5212]},"digit",[]],["terminal",{"sourceInterval":[5219,5222]},"_"],["terminal",{"sourceInterval":[5229,5232]},"-"]]],"reserved":["define",{"sourceInterval":[5236,5647]},null,[],["alt",{"sourceInterval":[5251,5647]},["app",{"sourceInterval":[5251,5258]},"trueTok",[]],["app",{"sourceInterval":[5265,5273]},"falseTok",[]],["app",{"sourceInterval":[5280,5287]},"nullTok",[]],["app",{"sourceInterval":[5294,5306]},"undefinedTok",[]],["app",{"sourceInterval":[5313,5319]},"nanTok",[]],["app",{"sourceInterval":[5326,5332]},"infTok",[]],["app",{"sourceInterval":[5339,5346]},"selfTok",[]],["app",{"sourceInterval":[5353,5360]},"whenTok",[]],["app",{"sourceInterval":[5367,5376]},"unlessTok",[]],["app",{"sourceInterval":[5383,5389]},"forTok",[]],["app",{"sourceInterval":[5396,5404]},"whileTok",[]],["app",{"sourceInterval":[5411,5416]},"inTok",[]],["app",{"sourceInterval":[5423,5428]},"ofTok",[]],["app",{"sourceInterval":[5435,5440]},"doTok",[]],["app",{"sourceInterval":[5447,5454]},"elseTok",[]],["app",{"sourceInterval":[5461,5467]},"endTok",[]],["app",{"sourceInterval":[5474,5482]},"breakTok",[]],["app",{"sourceInterval":[5489,5500]},"continueTok",[]],["app",{"sourceInterval":[5507,5513]},"andTok",[]],["app",{"sourceInterval":[5520,5525]},"orTok",[]],["app",{"sourceInterval":[5532,5538]},"norTok",[]],["app",{"sourceInterval":[5545,5551]},"notTok",[]],["app",{"sourceInterval":[5558,5567]},"deleteTok",[]],["app",{"sourceInterval":[5574,5583]},"stringTok",[]],["app",{"sourceInterval":[5590,5599]},"numberTok",[]],["app",{"sourceInterval":[5606,5615]},"objectTok",[]],["app",{"sourceInterval":[5622,5630]},"arrayTok",[]],["app",{"sourceInterval":[5637,5647]},"booleanTok",[]]]],"TrueKw":["define",{"sourceInterval":[5651,5671]},null,[],["app",{"sourceInterval":[5664,5671]},"trueTok",[]]],"FalseKw":["define",{"sourceInterval":[5675,5697]},null,[],["app",{"sourceInterval":[5689,5697]},"falseTok",[]]],"NullKw":["define",{"sourceInterval":[5701,5721]},null,[],["app",{"sourceInterval":[5714,5721]},"nullTok",[]]],"UndefinedKw":["define",{"sourceInterval":[5725,5755]},null,[],["app",{"sourceInterval":[5743,5755]},"undefinedTok",[]]],"SelfKw":["define",{"sourceInterval":[5759,5779]},null,[],["app",{"sourceInterval":[5772,5779]},"selfTok",[]]],"WhenKw":["define",{"sourceInterval":[5783,5803]},null,[],["app",{"sourceInterval":[5796,5803]},"whenTok",[]]],"UnlessKw":["define",{"sourceInterval":[5807,5831]},null,[],["app",{"sourceInterval":[5822,5831]},"unlessTok",[]]],"WhileKw":["define",{"sourceInterval":[5835,5857]},null,[],["app",{"sourceInterval":[5849,5857]},"whileTok",[]]],"ForKw":["define",{"sourceInterval":[5861,5879]},null,[],["app",{"sourceInterval":[5873,5879]},"forTok",[]]],"DoKw":["define",{"sourceInterval":[5883,5899]},null,[],["app",{"sourceInterval":[5894,5899]},"doTok",[]]],"ElseKw":["define",{"sourceInterval":[5903,5923]},null,[],["app",{"sourceInterval":[5916,5923]},"elseTok",[]]],"EndKw":["define",{"sourceInterval":[5927,5945]},null,[],["app",{"sourceInterval":[5939,5945]},"endTok",[]]],"BreakKw":["define",{"sourceInterval":[5949,5971]},null,[],["app",{"sourceInterval":[5963,5971]},"breakTok",[]]],"ContinueKw":["define",{"sourceInterval":[5975,6003]},null,[],["app",{"sourceInterval":[5992,6003]},"continueTok",[]]],"AndKw":["define",{"sourceInterval":[6007,6025]},null,[],["app",{"sourceInterval":[6019,6025]},"andTok",[]]],"OrKw":["define",{"sourceInterval":[6029,6045]},null,[],["app",{"sourceInterval":[6040,6045]},"orTok",[]]],"NorKw":["define",{"sourceInterval":[6049,6067]},null,[],["app",{"sourceInterval":[6061,6067]},"norTok",[]]],"NotKw":["define",{"sourceInterval":[6071,6089]},null,[],["app",{"sourceInterval":[6083,6089]},"notTok",[]]],"DeleteKw":["define",{"sourceInterval":[6093,6117]},null,[],["app",{"sourceInterval":[6108,6117]},"deleteTok",[]]],"StringKw":["define",{"sourceInterval":[6121,6145]},null,[],["app",{"sourceInterval":[6136,6145]},"stringTok",[]]],"NumberKw":["define",{"sourceInterval":[6149,6173]},null,[],["app",{"sourceInterval":[6164,6173]},"numberTok",[]]],"ObjectKw":["define",{"sourceInterval":[6177,6201]},null,[],["app",{"sourceInterval":[6192,6201]},"objectTok",[]]],"ArrayKw":["define",{"sourceInterval":[6205,6227]},null,[],["app",{"sourceInterval":[6219,6227]},"arrayTok",[]]],"BooleanKw":["define",{"sourceInterval":[6231,6257]},null,[],["app",{"sourceInterval":[6247,6257]},"booleanTok",[]]],"trueTok":["define",{"sourceInterval":[6262,6292]},null,[],["seq",{"sourceInterval":[6276,6292]},["terminal",{"sourceInterval":[6276,6282]},"true"],["not",{"sourceInterval":[6283,6292]},["app",{"sourceInterval":[6284,6292]},"nameTail",[]]]]],"falseTok":["define",{"sourceInterval":[6296,6328]},null,[],["seq",{"sourceInterval":[6311,6328]},["terminal",{"sourceInterval":[6311,6318]},"false"],["not",{"sourceInterval":[6319,6328]},["app",{"sourceInterval":[6320,6328]},"nameTail",[]]]]],"nullTok":["define",{"sourceInterval":[6332,6362]},null,[],["seq",{"sourceInterval":[6346,6362]},["terminal",{"sourceInterval":[6346,6352]},"null"],["not",{"sourceInterval":[6353,6362]},["app",{"sourceInterval":[6354,6362]},"nameTail",[]]]]],"undefinedTok":["define",{"sourceInterval":[6366,6406]},null,[],["seq",{"sourceInterval":[6385,6406]},["terminal",{"sourceInterval":[6385,6396]},"undefined"],["not",{"sourceInterval":[6397,6406]},["app",{"sourceInterval":[6398,6406]},"nameTail",[]]]]],"nanTok":["define",{"sourceInterval":[6410,6438]},null,[],["seq",{"sourceInterval":[6423,6438]},["terminal",{"sourceInterval":[6423,6428]},"nan"],["not",{"sourceInterval":[6429,6438]},["app",{"sourceInterval":[6430,6438]},"nameTail",[]]]]],"infTok":["define",{"sourceInterval":[6442,6470]},null,[],["seq",{"sourceInterval":[6455,6470]},["terminal",{"sourceInterval":[6455,6460]},"inf"],["not",{"sourceInterval":[6461,6470]},["app",{"sourceInterval":[6462,6470]},"nameTail",[]]]]],"selfTok":["define",{"sourceInterval":[6474,6504]},null,[],["seq",{"sourceInterval":[6488,6504]},["terminal",{"sourceInterval":[6488,6494]},"self"],["not",{"sourceInterval":[6495,6504]},["app",{"sourceInterval":[6496,6504]},"nameTail",[]]]]],"whenTok":["define",{"sourceInterval":[6508,6538]},null,[],["seq",{"sourceInterval":[6522,6538]},["terminal",{"sourceInterval":[6522,6528]},"when"],["not",{"sourceInterval":[6529,6538]},["app",{"sourceInterval":[6530,6538]},"nameTail",[]]]]],"unlessTok":["define",{"sourceInterval":[6542,6576]},null,[],["seq",{"sourceInterval":[6558,6576]},["terminal",{"sourceInterval":[6558,6566]},"unless"],["not",{"sourceInterval":[6567,6576]},["app",{"sourceInterval":[6568,6576]},"nameTail",[]]]]],"whileTok":["define",{"sourceInterval":[6580,6612]},null,[],["seq",{"sourceInterval":[6595,6612]},["terminal",{"sourceInterval":[6595,6602]},"while"],["not",{"sourceInterval":[6603,6612]},["app",{"sourceInterval":[6604,6612]},"nameTail",[]]]]],"forTok":["define",{"sourceInterval":[6616,6644]},null,[],["seq",{"sourceInterval":[6629,6644]},["terminal",{"sourceInterval":[6629,6634]},"for"],["not",{"sourceInterval":[6635,6644]},["app",{"sourceInterval":[6636,6644]},"nameTail",[]]]]],"inTok":["define",{"sourceInterval":[6648,6674]},null,[],["seq",{"sourceInterval":[6660,6674]},["terminal",{"sourceInterval":[6660,6664]},"in"],["not",{"sourceInterval":[6665,6674]},["app",{"sourceInterval":[6666,6674]},"nameTail",[]]]]],"ofTok":["define",{"sourceInterval":[6678,6704]},null,[],["seq",{"sourceInterval":[6690,6704]},["terminal",{"sourceInterval":[6690,6694]},"of"],["not",{"sourceInterval":[6695,6704]},["app",{"sourceInterval":[6696,6704]},"nameTail",[]]]]],"doTok":["define",{"sourceInterval":[6708,6734]},null,[],["seq",{"sourceInterval":[6720,6734]},["terminal",{"sourceInterval":[6720,6724]},"do"],["not",{"sourceInterval":[6725,6734]},["app",{"sourceInterval":[6726,6734]},"nameTail",[]]]]],"elseTok":["define",{"sourceInterval":[6738,6768]},null,[],["seq",{"sourceInterval":[6752,6768]},["terminal",{"sourceInterval":[6752,6758]},"else"],["not",{"sourceInterval":[6759,6768]},["app",{"sourceInterval":[6760,6768]},"nameTail",[]]]]],"endTok":["define",{"sourceInterval":[6772,6800]},null,[],["seq",{"sourceInterval":[6785,6800]},["terminal",{"sourceInterval":[6785,6790]},"end"],["not",{"sourceInterval":[6791,6800]},["app",{"sourceInterval":[6792,6800]},"nameTail",[]]]]],"breakTok":["define",{"sourceInterval":[6804,6836]},null,[],["seq",{"sourceInterval":[6819,6836]},["terminal",{"sourceInterval":[6819,6826]},"break"],["not",{"sourceInterval":[6827,6836]},["app",{"sourceInterval":[6828,6836]},"nameTail",[]]]]],"continueTok":["define",{"sourceInterval":[6840,6878]},null,[],["seq",{"sourceInterval":[6858,6878]},["terminal",{"sourceInterval":[6858,6868]},"continue"],["not",{"sourceInterval":[6869,6878]},["app",{"sourceInterval":[6870,6878]},"nameTail",[]]]]],"andTok":["define",{"sourceInterval":[6882,6910]},null,[],["seq",{"sourceInterval":[6895,6910]},["terminal",{"sourceInterval":[6895,6900]},"and"],["not",{"sourceInterval":[6901,6910]},["app",{"sourceInterval":[6902,6910]},"nameTail",[]]]]],"orTok":["define",{"sourceInterval":[6914,6940]},null,[],["seq",{"sourceInterval":[6926,6940]},["terminal",{"sourceInterval":[6926,6930]},"or"],["not",{"sourceInterval":[6931,6940]},["app",{"sourceInterval":[6932,6940]},"nameTail",[]]]]],"norTok":["define",{"sourceInterval":[6944,6972]},null,[],["seq",{"sourceInterval":[6957,6972]},["terminal",{"sourceInterval":[6957,6962]},"nor"],["not",{"sourceInterval":[6963,6972]},["app",{"sourceInterval":[6964,6972]},"nameTail",[]]]]],"notTok":["define",{"sourceInterval":[6976,7004]},null,[],["seq",{"sourceInterval":[6989,7004]},["terminal",{"sourceInterval":[6989,6994]},"not"],["not",{"sourceInterval":[6995,7004]},["app",{"sourceInterval":[6996,7004]},"nameTail",[]]]]],"deleteTok":["define",{"sourceInterval":[7008,7042]},null,[],["seq",{"sourceInterval":[7024,7042]},["terminal",{"sourceInterval":[7024,7032]},"delete"],["not",{"sourceInterval":[7033,7042]},["app",{"sourceInterval":[7034,7042]},"nameTail",[]]]]],"stringTok":["define",{"sourceInterval":[7046,7080]},null,[],["seq",{"sourceInterval":[7062,7080]},["terminal",{"sourceInterval":[7062,7070]},"string"],["not",{"sourceInterval":[7071,7080]},["app",{"sourceInterval":[7072,7080]},"nameTail",[]]]]],"numberTok":["define",{"sourceInterval":[7084,7118]},null,[],["seq",{"sourceInterval":[7100,7118]},["terminal",{"sourceInterval":[7100,7108]},"number"],["not",{"sourceInterval":[7109,7118]},["app",{"sourceInterval":[7110,7118]},"nameTail",[]]]]],"objectTok":["define",{"sourceInterval":[7122,7156]},null,[],["seq",{"sourceInterval":[7138,7156]},["terminal",{"sourceInterval":[7138,7146]},"object"],["not",{"sourceInterval":[7147,7156]},["app",{"sourceInterval":[7148,7156]},"nameTail",[]]]]],"arrayTok":["define",{"sourceInterval":[7160,7192]},null,[],["seq",{"sourceInterval":[7175,7192]},["terminal",{"sourceInterval":[7175,7182]},"array"],["not",{"sourceInterval":[7183,7192]},["app",{"sourceInterval":[7184,7192]},"nameTail",[]]]]],"booleanTok":["define",{"sourceInterval":[7196,7232]},null,[],["seq",{"sourceInterval":[7213,7232]},["terminal",{"sourceInterval":[7213,7222]},"boolean"],["not",{"sourceInterval":[7223,7232]},["app",{"sourceInterval":[7224,7232]},"nameTail",[]]]]],"String":["define",{"sourceInterval":[7237,7283]},null,[],["alt",{"sourceInterval":[7250,7283]},["app",{"sourceInterval":[7250,7263]},"DQuotedString",[]],["app",{"sourceInterval":[7270,7283]},"SQuotedString",[]]]],"DQuotedString":["define",{"sourceInterval":[7287,7329]},null,[],["seq",{"sourceInterval":[7307,7329]},["terminal",{"sourceInterval":[7307,7311]},"\""],["star",{"sourceInterval":[7312,7324]},["app",{"sourceInterval":[7312,7323]},"dStringChar",[]]],["terminal",{"sourceInterval":[7325,7329]},"\""]]],"dStringChar":["define",{"sourceInterval":[7333,7382]},null,[],["alt",{"sourceInterval":[7351,7382]},["seq",{"sourceInterval":[7351,7369]},["not",{"sourceInterval":[7351,7365]},["alt",{"sourceInterval":[7353,7364]},["terminal",{"sourceInterval":[7353,7357]},"\""],["terminal",{"sourceInterval":[7360,7364]},"\\"]]],["app",{"sourceInterval":[7366,7369]},"any",[]]],["app",{"sourceInterval":[7376,7382]},"escape",[]]]],"SQuotedString":["define",{"sourceInterval":[7386,7426]},null,[],["seq",{"sourceInterval":[7406,7426]},["terminal",{"sourceInterval":[7406,7409]},"'"],["star",{"sourceInterval":[7410,7422]},["app",{"sourceInterval":[7410,7421]},"sStringChar",[]]],["terminal",{"sourceInterval":[7423,7426]},"'"]]],"sStringChar":["define",{"sourceInterval":[7430,7478]},null,[],["alt",{"sourceInterval":[7448,7478]},["seq",{"sourceInterval":[7448,7465]},["not",{"sourceInterval":[7448,7461]},["alt",{"sourceInterval":[7450,7460]},["terminal",{"sourceInterval":[7450,7453]},"'"],["terminal",{"sourceInterval":[7456,7460]},"\\"]]],["app",{"sourceInterval":[7462,7465]},"any",[]]],["app",{"sourceInterval":[7472,7478]},"escape",[]]]],"escape":["define",{"sourceInterval":[7482,7540]},null,[],["seq",{"sourceInterval":[7495,7540]},["terminal",{"sourceInterval":[7495,7499]},"\\"],["alt",{"sourceInterval":[7501,7539]},["app",{"sourceInterval":[7501,7511]},"escapeChar",[]],["app",{"sourceInterval":[7514,7523]},"hexEscape",[]],["app",{"sourceInterval":[7526,7539]},"unicodeEscape",[]]]]],"escapeChar":["define",{"sourceInterval":[7544,7620]},null,[],["alt",{"sourceInterval":[7561,7620]},["terminal",{"sourceInterval":[7561,7565]},"\""],["terminal",{"sourceInterval":[7568,7571]},"'"],["terminal",{"sourceInterval":[7574,7578]},"\\"],["terminal",{"sourceInterval":[7581,7584]},"/"],["terminal",{"sourceInterval":[7587,7590]},"b"],["terminal",{"sourceInterval":[7593,7596]},"f"],["terminal",{"sourceInterval":[7599,7602]},"n"],["terminal",{"sourceInterval":[7605,7608]},"r"],["terminal",{"sourceInterval":[7611,7614]},"t"],["terminal",{"sourceInterval":[7617,7620]},"0"]]],"hexEscape":["define",{"sourceInterval":[7624,7651]},null,[],["seq",{"sourceInterval":[7640,7651]},["terminal",{"sourceInterval":[7640,7643]},"x"],["app",{"sourceInterval":[7644,7647]},"hex",[]],["app",{"sourceInterval":[7648,7651]},"hex",[]]]],"unicodeEscape":["define",{"sourceInterval":[7655,7694]},null,[],["seq",{"sourceInterval":[7675,7694]},["terminal",{"sourceInterval":[7675,7678]},"u"],["app",{"sourceInterval":[7679,7682]},"hex",[]],["app",{"sourceInterval":[7683,7686]},"hex",[]],["app",{"sourceInterval":[7687,7690]},"hex",[]],["app",{"sourceInterval":[7691,7694]},"hex",[]]]],"hex":["define",{"sourceInterval":[7698,7743]},null,[],["alt",{"sourceInterval":[7708,7743]},["app",{"sourceInterval":[7708,7713]},"digit",[]],["range",{"sourceInterval":[7720,7728]},"A","F"],["range",{"sourceInterval":[7735,7743]},"a","f"]]],"Number":["define",{"sourceInterval":[7747,7842]},null,[],["alt",{"sourceInterval":[7760,7842]},["app",{"sourceInterval":[7760,7769]},"hexNumber",[]],["app",{"sourceInterval":[7776,7788]},"binaryNumber",[]],["app",{"sourceInterval":[7795,7805]},"infLiteral",[]],["app",{"sourceInterval":[7812,7822]},"nanLiteral",[]],["app",{"sourceInterval":[7829,7842]},"decimalNumber",[]]]],"infLiteral":["define",{"sourceInterval":[7846,7874]},null,[],["seq",{"sourceInterval":[7863,7874]},["opt",{"sourceInterval":[7863,7867]},["terminal",{"sourceInterval":[7863,7866]},"-"]],["app",{"sourceInterval":[7868,7874]},"infTok",[]]]],"nanLiteral":["define",{"sourceInterval":[7878,7901]},null,[],["app",{"sourceInterval":[7895,7901]},"nanTok",[]]],"hexNumber":["define",{"sourceInterval":[7905,7935]},null,[],["seq",{"sourceInterval":[7921,7935]},["opt",{"sourceInterval":[7921,7925]},["terminal",{"sourceInterval":[7921,7924]},"-"]],["terminal",{"sourceInterval":[7926,7930]},"0x"],["plus",{"sourceInterval":[7931,7935]},["app",{"sourceInterval":[7931,7934]},"hex",[]]]]],"binaryNumber":["define",{"sourceInterval":[7939,7972]},null,[],["seq",{"sourceInterval":[7958,7972]},["opt",{"sourceInterval":[7958,7962]},["terminal",{"sourceInterval":[7958,7961]},"-"]],["terminal",{"sourceInterval":[7963,7967]},"0b"],["plus",{"sourceInterval":[7968,7972]},["app",{"sourceInterval":[7968,7971]},"bit",[]]]]],"decimalNumber":["define",{"sourceInterval":[7976,8039]},null,[],["seq",{"sourceInterval":[7996,8039]},["opt",{"sourceInterval":[7996,8000]},["terminal",{"sourceInterval":[7996,7999]},"-"]],["app",{"sourceInterval":[8001,8015]},"decimalInteger",[]],["opt",{"sourceInterval":[8016,8029]},["seq",{"sourceInterval":[8017,8027]},["terminal",{"sourceInterval":[8017,8020]},"."],["plus",{"sourceInterval":[8021,8027]},["app",{"sourceInterval":[8021,8026]},"digit",[]]]]],["opt",{"sourceInterval":[8030,8039]},["app",{"sourceInterval":[8030,8038]},"exponent",[]]]]],"decimalInteger_nonZero":["define",{"sourceInterval":[8064,8095]},null,[],["seq",{"sourceInterval":[8064,8083]},["app",{"sourceInterval":[8064,8076]},"nonZeroDigit",[]],["star",{"sourceInterval":[8077,8083]},["app",{"sourceInterval":[8077,8082]},"digit",[]]]]],"decimalInteger_zero":["define",{"sourceInterval":[8102,8130]},null,[],["terminal",{"sourceInterval":[8102,8105]},"0"]],"decimalInteger":["define",{"sourceInterval":[8043,8130]},null,[],["alt",{"sourceInterval":[8064,8130]},["app",{"sourceInterval":[8064,8083]},"decimalInteger_nonZero",[]],["app",{"sourceInterval":[8102,8105]},"decimalInteger_zero",[]]]],"bit":["define",{"sourceInterval":[8134,8153]},null,[],["alt",{"sourceInterval":[8144,8153]},["terminal",{"sourceInterval":[8144,8147]},"0"],["terminal",{"sourceInterval":[8150,8153]},"1"]]],"exponent":["define",{"sourceInterval":[8157,8203]},null,[],["seq",{"sourceInterval":[8172,8203]},["alt",{"sourceInterval":[8173,8182]},["terminal",{"sourceInterval":[8173,8176]},"e"],["terminal",{"sourceInterval":[8179,8182]},"E"]],["opt",{"sourceInterval":[8184,8196]},["alt",{"sourceInterval":[8185,8194]},["terminal",{"sourceInterval":[8185,8188]},"+"],["terminal",{"sourceInterval":[8191,8194]},"-"]]],["plus",{"sourceInterval":[8197,8203]},["app",{"sourceInterval":[8197,8202]},"digit",[]]]]],"nonZeroDigit":["define",{"sourceInterval":[8207,8234]},null,[],["range",{"sourceInterval":[8226,8234]},"1","9"]],"comment":["define",{"sourceInterval":[8238,8282]},null,[],["alt",{"sourceInterval":[8252,8282]},["app",{"sourceInterval":[8252,8263]},"lineComment",[]],["app",{"sourceInterval":[8270,8282]},"blockComment",[]]]],"lineComment":["define",{"sourceInterval":[8286,8327]},null,[],["seq",{"sourceInterval":[8304,8327]},["terminal",{"sourceInterval":[8304,8308]},"//"],["star",{"sourceInterval":[8309,8321]},["seq",{"sourceInterval":[8310,8319]},["not",{"sourceInterval":[8310,8315]},["terminal",{"sourceInterval":[8311,8315]},"\n"]],["app",{"sourceInterval":[8316,8319]},"any",[]]]],["opt",{"sourceInterval":[8322,8327]},["terminal",{"sourceInterval":[8322,8326]},"\n"]]]],"blockComment":["define",{"sourceInterval":[8331,8372]},null,[],["seq",{"sourceInterval":[8350,8372]},["terminal",{"sourceInterval":[8350,8354]},"/*"],["star",{"sourceInterval":[8355,8367]},["seq",{"sourceInterval":[8356,8365]},["not",{"sourceInterval":[8356,8361]},["terminal",{"sourceInterval":[8357,8361]},"*/"]],["app",{"sourceInterval":[8362,8365]},"any",[]]]],["terminal",{"sourceInterval":[8368,8372]},"*/"]]]}]);module.exports=result;
|