diff --git a/docs/ast/source/interp/arithm.js.json b/docs/ast/source/interp/arithm.js.json index 612173c..fcbc72f 100644 --- a/docs/ast/source/interp/arithm.js.json +++ b/docs/ast/source/interp/arithm.js.json @@ -1,7 +1,7 @@ { "type": "File", "start": 0, - "end": 1071, + "end": 1061, "loc": { "start": { "line": 1, @@ -15,7 +15,7 @@ "program": { "type": "Program", "start": 0, - "end": 1071, + "end": 1061, "loc": { "start": { "line": 1, @@ -29,9 +29,9 @@ "sourceType": "module", "body": [ { - "type": "VariableDeclaration", + "type": "ImportDeclaration", "start": 0, - "end": 53, + "end": 48, "loc": { "start": { "line": 1, @@ -39,158 +39,85 @@ }, "end": { "line": 1, - "column": 53 + "column": 48 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 6, - "end": 52, + "type": "ImportSpecifier", + "start": 9, + "end": 21, "loc": { "start": { "line": 1, - "column": 6 + "column": 9 }, "end": { "line": 1, - "column": 52 + "column": 21 } }, - "id": { - "type": "ObjectPattern", - "start": 6, - "end": 22, + "imported": { + "type": "Identifier", + "start": 9, + "end": 21, "loc": { "start": { "line": 1, - "column": 6 + "column": 9 }, "end": { "line": 1, - "column": 22 - } + "column": 21 + }, + "identifierName": "SpecialForms" }, - "properties": [ - { - "type": "ObjectProperty", - "start": 8, - "end": 20, - "loc": { - "start": { - "line": 1, - "column": 8 - }, - "end": { - "line": 1, - "column": 20 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 8, - "end": 20, - "loc": { - "start": { - "line": 1, - "column": 8 - }, - "end": { - "line": 1, - "column": 20 - }, - "identifierName": "SpecialForms" - }, - "name": "SpecialForms" - }, - "value": { - "type": "Identifier", - "start": 8, - "end": 20, - "loc": { - "start": { - "line": 1, - "column": 8 - }, - "end": { - "line": 1, - "column": 20 - }, - "identifierName": "SpecialForms" - }, - "name": "SpecialForms" - }, - "extra": { - "shorthand": true - } - } - ] + "name": "SpecialForms" }, - "init": { - "type": "CallExpression", - "start": 25, - "end": 52, + "local": { + "type": "Identifier", + "start": 9, + "end": 21, "loc": { "start": { "line": 1, - "column": 25 + "column": 9 }, "end": { "line": 1, - "column": 52 - } - }, - "callee": { - "type": "Identifier", - "start": 25, - "end": 32, - "loc": { - "start": { - "line": 1, - "column": 25 - }, - "end": { - "line": 1, - "column": 32 - }, - "identifierName": "require" + "column": 21 }, - "name": "require" + "identifierName": "SpecialForms" }, - "arguments": [ - { - "type": "StringLiteral", - "start": 33, - "end": 51, - "loc": { - "start": { - "line": 1, - "column": 33 - }, - "end": { - "line": 1, - "column": 51 - } - }, - "extra": { - "rawValue": "./environment.js", - "raw": "\"./environment.js\"" - }, - "value": "./environment.js" - } - ] + "name": "SpecialForms" } } ], - "kind": "const" + "source": { + "type": "StringLiteral", + "start": 29, + "end": 47, + "loc": { + "start": { + "line": 1, + "column": 29 + }, + "end": { + "line": 1, + "column": 47 + } + }, + "extra": { + "rawValue": "./environment.js", + "raw": "\"./environment.js\"" + }, + "value": "./environment.js" + } }, { - "type": "VariableDeclaration", - "start": 55, - "end": 93, + "type": "ImportDeclaration", + "start": 50, + "end": 83, "loc": { "start": { "line": 3, @@ -198,158 +125,85 @@ }, "end": { "line": 3, - "column": 38 + "column": 33 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 61, - "end": 92, + "type": "ImportSpecifier", + "start": 59, + "end": 64, "loc": { "start": { "line": 3, - "column": 6 + "column": 9 }, "end": { "line": 3, - "column": 37 + "column": 14 } }, - "id": { - "type": "ObjectPattern", - "start": 61, - "end": 70, + "imported": { + "type": "Identifier", + "start": 59, + "end": 64, "loc": { "start": { "line": 3, - "column": 6 + "column": 9 }, "end": { "line": 3, - "column": 15 - } + "column": 14 + }, + "identifierName": "Value" }, - "properties": [ - { - "type": "ObjectProperty", - "start": 63, - "end": 68, - "loc": { - "start": { - "line": 3, - "column": 8 - }, - "end": { - "line": 3, - "column": 13 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 63, - "end": 68, - "loc": { - "start": { - "line": 3, - "column": 8 - }, - "end": { - "line": 3, - "column": 13 - }, - "identifierName": "Value" - }, - "name": "Value" - }, - "value": { - "type": "Identifier", - "start": 63, - "end": 68, - "loc": { - "start": { - "line": 3, - "column": 8 - }, - "end": { - "line": 3, - "column": 13 - }, - "identifierName": "Value" - }, - "name": "Value" - }, - "extra": { - "shorthand": true - } - } - ] + "name": "Value" }, - "init": { - "type": "CallExpression", - "start": 73, - "end": 92, + "local": { + "type": "Identifier", + "start": 59, + "end": 64, "loc": { "start": { "line": 3, - "column": 18 + "column": 9 }, "end": { "line": 3, - "column": 37 - } - }, - "callee": { - "type": "Identifier", - "start": 73, - "end": 80, - "loc": { - "start": { - "line": 3, - "column": 18 - }, - "end": { - "line": 3, - "column": 25 - }, - "identifierName": "require" + "column": 14 }, - "name": "require" + "identifierName": "Value" }, - "arguments": [ - { - "type": "StringLiteral", - "start": 81, - "end": 91, - "loc": { - "start": { - "line": 3, - "column": 26 - }, - "end": { - "line": 3, - "column": 36 - } - }, - "extra": { - "rawValue": "./ast.js", - "raw": "\"./ast.js\"" - }, - "value": "./ast.js" - } - ] + "name": "Value" } } ], - "kind": "const" + "source": { + "type": "StringLiteral", + "start": 72, + "end": 82, + "loc": { + "start": { + "line": 3, + "column": 22 + }, + "end": { + "line": 3, + "column": 32 + } + }, + "extra": { + "rawValue": "./ast.js", + "raw": "\"./ast.js\"" + }, + "value": "./ast.js" + } }, { "type": "ExpressionStatement", - "start": 95, - "end": 254, + "start": 85, + "end": 244, "loc": { "start": { "line": 5, @@ -362,8 +216,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 95, - "end": 253, + "start": 85, + "end": 243, "loc": { "start": { "line": 5, @@ -377,8 +231,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 95, - "end": 113, + "start": 85, + "end": 103, "loc": { "start": { "line": 5, @@ -391,8 +245,8 @@ }, "object": { "type": "Identifier", - "start": 95, - "end": 107, + "start": 85, + "end": 97, "loc": { "start": { "line": 5, @@ -408,8 +262,8 @@ }, "property": { "type": "StringLiteral", - "start": 108, - "end": 112, + "start": 98, + "end": 102, "loc": { "start": { "line": 5, @@ -430,8 +284,8 @@ }, "right": { "type": "ArrowFunctionExpression", - "start": 116, - "end": 253, + "start": 106, + "end": 243, "loc": { "start": { "line": 5, @@ -449,8 +303,8 @@ "params": [ { "type": "Identifier", - "start": 117, - "end": 121, + "start": 107, + "end": 111, "loc": { "start": { "line": 5, @@ -466,8 +320,8 @@ }, { "type": "Identifier", - "start": 123, - "end": 126, + "start": 113, + "end": 116, "loc": { "start": { "line": 5, @@ -484,8 +338,8 @@ ], "body": { "type": "BlockStatement", - "start": 131, - "end": 253, + "start": 121, + "end": 243, "loc": { "start": { "line": 5, @@ -499,8 +353,8 @@ "body": [ { "type": "IfStatement", - "start": 135, - "end": 207, + "start": 125, + "end": 197, "loc": { "start": { "line": 6, @@ -513,8 +367,8 @@ }, "test": { "type": "BinaryExpression", - "start": 139, - "end": 156, + "start": 129, + "end": 146, "loc": { "start": { "line": 6, @@ -527,8 +381,8 @@ }, "left": { "type": "MemberExpression", - "start": 139, - "end": 150, + "start": 129, + "end": 140, "loc": { "start": { "line": 6, @@ -541,8 +395,8 @@ }, "object": { "type": "Identifier", - "start": 139, - "end": 143, + "start": 129, + "end": 133, "loc": { "start": { "line": 6, @@ -558,8 +412,8 @@ }, "property": { "type": "Identifier", - "start": 144, - "end": 150, + "start": 134, + "end": 140, "loc": { "start": { "line": 6, @@ -578,8 +432,8 @@ "operator": "!==", "right": { "type": "NumericLiteral", - "start": 155, - "end": 156, + "start": 145, + "end": 146, "loc": { "start": { "line": 6, @@ -599,8 +453,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 158, - "end": 207, + "start": 148, + "end": 197, "loc": { "start": { "line": 6, @@ -614,8 +468,8 @@ "body": [ { "type": "ThrowStatement", - "start": 164, - "end": 203, + "start": 154, + "end": 193, "loc": { "start": { "line": 7, @@ -628,8 +482,8 @@ }, "argument": { "type": "NewExpression", - "start": 170, - "end": 202, + "start": 160, + "end": 192, "loc": { "start": { "line": 7, @@ -642,8 +496,8 @@ }, "callee": { "type": "Identifier", - "start": 174, - "end": 185, + "start": 164, + "end": 175, "loc": { "start": { "line": 7, @@ -660,8 +514,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 186, - "end": 201, + "start": 176, + "end": 191, "loc": { "start": { "line": 7, @@ -688,8 +542,8 @@ }, { "type": "ReturnStatement", - "start": 211, - "end": 251, + "start": 201, + "end": 241, "loc": { "start": { "line": 10, @@ -702,8 +556,8 @@ }, "argument": { "type": "CallExpression", - "start": 218, - "end": 250, + "start": 208, + "end": 240, "loc": { "start": { "line": 10, @@ -716,8 +570,8 @@ }, "callee": { "type": "Identifier", - "start": 218, - "end": 233, + "start": 208, + "end": 223, "loc": { "start": { "line": 10, @@ -734,8 +588,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 234, - "end": 241, + "start": 224, + "end": 231, "loc": { "start": { "line": 10, @@ -748,8 +602,8 @@ }, "object": { "type": "Identifier", - "start": 234, - "end": 238, + "start": 224, + "end": 228, "loc": { "start": { "line": 10, @@ -765,8 +619,8 @@ }, "property": { "type": "NumericLiteral", - "start": 239, - "end": 240, + "start": 229, + "end": 230, "loc": { "start": { "line": 10, @@ -787,8 +641,8 @@ }, { "type": "Identifier", - "start": 243, - "end": 246, + "start": 233, + "end": 236, "loc": { "start": { "line": 10, @@ -804,8 +658,8 @@ }, { "type": "NumericLiteral", - "start": 248, - "end": 249, + "start": 238, + "end": 239, "loc": { "start": { "line": 10, @@ -833,8 +687,8 @@ }, { "type": "ExpressionStatement", - "start": 256, - "end": 416, + "start": 246, + "end": 406, "loc": { "start": { "line": 13, @@ -847,8 +701,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 256, - "end": 415, + "start": 246, + "end": 405, "loc": { "start": { "line": 13, @@ -862,8 +716,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 256, - "end": 274, + "start": 246, + "end": 264, "loc": { "start": { "line": 13, @@ -876,8 +730,8 @@ }, "object": { "type": "Identifier", - "start": 256, - "end": 268, + "start": 246, + "end": 258, "loc": { "start": { "line": 13, @@ -893,8 +747,8 @@ }, "property": { "type": "StringLiteral", - "start": 269, - "end": 273, + "start": 259, + "end": 263, "loc": { "start": { "line": 13, @@ -915,8 +769,8 @@ }, "right": { "type": "ArrowFunctionExpression", - "start": 277, - "end": 415, + "start": 267, + "end": 405, "loc": { "start": { "line": 13, @@ -934,8 +788,8 @@ "params": [ { "type": "Identifier", - "start": 278, - "end": 282, + "start": 268, + "end": 272, "loc": { "start": { "line": 13, @@ -951,8 +805,8 @@ }, { "type": "Identifier", - "start": 284, - "end": 287, + "start": 274, + "end": 277, "loc": { "start": { "line": 13, @@ -969,8 +823,8 @@ ], "body": { "type": "BlockStatement", - "start": 292, - "end": 415, + "start": 282, + "end": 405, "loc": { "start": { "line": 13, @@ -984,8 +838,8 @@ "body": [ { "type": "IfStatement", - "start": 296, - "end": 368, + "start": 286, + "end": 358, "loc": { "start": { "line": 14, @@ -998,8 +852,8 @@ }, "test": { "type": "BinaryExpression", - "start": 300, - "end": 317, + "start": 290, + "end": 307, "loc": { "start": { "line": 14, @@ -1012,8 +866,8 @@ }, "left": { "type": "MemberExpression", - "start": 300, - "end": 311, + "start": 290, + "end": 301, "loc": { "start": { "line": 14, @@ -1026,8 +880,8 @@ }, "object": { "type": "Identifier", - "start": 300, - "end": 304, + "start": 290, + "end": 294, "loc": { "start": { "line": 14, @@ -1043,8 +897,8 @@ }, "property": { "type": "Identifier", - "start": 305, - "end": 311, + "start": 295, + "end": 301, "loc": { "start": { "line": 14, @@ -1063,8 +917,8 @@ "operator": "!==", "right": { "type": "NumericLiteral", - "start": 316, - "end": 317, + "start": 306, + "end": 307, "loc": { "start": { "line": 14, @@ -1084,8 +938,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 319, - "end": 368, + "start": 309, + "end": 358, "loc": { "start": { "line": 14, @@ -1099,8 +953,8 @@ "body": [ { "type": "ThrowStatement", - "start": 325, - "end": 364, + "start": 315, + "end": 354, "loc": { "start": { "line": 15, @@ -1113,8 +967,8 @@ }, "argument": { "type": "NewExpression", - "start": 331, - "end": 363, + "start": 321, + "end": 353, "loc": { "start": { "line": 15, @@ -1127,8 +981,8 @@ }, "callee": { "type": "Identifier", - "start": 335, - "end": 346, + "start": 325, + "end": 336, "loc": { "start": { "line": 15, @@ -1145,8 +999,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 347, - "end": 362, + "start": 337, + "end": 352, "loc": { "start": { "line": 15, @@ -1173,8 +1027,8 @@ }, { "type": "ReturnStatement", - "start": 372, - "end": 413, + "start": 362, + "end": 403, "loc": { "start": { "line": 18, @@ -1187,8 +1041,8 @@ }, "argument": { "type": "CallExpression", - "start": 379, - "end": 412, + "start": 369, + "end": 402, "loc": { "start": { "line": 18, @@ -1201,8 +1055,8 @@ }, "callee": { "type": "Identifier", - "start": 379, - "end": 394, + "start": 369, + "end": 384, "loc": { "start": { "line": 18, @@ -1219,8 +1073,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 395, - "end": 402, + "start": 385, + "end": 392, "loc": { "start": { "line": 18, @@ -1233,8 +1087,8 @@ }, "object": { "type": "Identifier", - "start": 395, - "end": 399, + "start": 385, + "end": 389, "loc": { "start": { "line": 18, @@ -1250,8 +1104,8 @@ }, "property": { "type": "NumericLiteral", - "start": 400, - "end": 401, + "start": 390, + "end": 391, "loc": { "start": { "line": 18, @@ -1272,8 +1126,8 @@ }, { "type": "Identifier", - "start": 404, - "end": 407, + "start": 394, + "end": 397, "loc": { "start": { "line": 18, @@ -1289,8 +1143,8 @@ }, { "type": "UnaryExpression", - "start": 409, - "end": 411, + "start": 399, + "end": 401, "loc": { "start": { "line": 18, @@ -1305,8 +1159,8 @@ "prefix": true, "argument": { "type": "NumericLiteral", - "start": 410, - "end": 411, + "start": 400, + "end": 401, "loc": { "start": { "line": 18, @@ -1338,8 +1192,8 @@ }, { "type": "ExpressionStatement", - "start": 418, - "end": 617, + "start": 408, + "end": 607, "loc": { "start": { "line": 21, @@ -1352,8 +1206,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 418, - "end": 616, + "start": 408, + "end": 606, "loc": { "start": { "line": 21, @@ -1367,8 +1221,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 418, - "end": 436, + "start": 408, + "end": 426, "loc": { "start": { "line": 21, @@ -1381,8 +1235,8 @@ }, "object": { "type": "Identifier", - "start": 418, - "end": 430, + "start": 408, + "end": 420, "loc": { "start": { "line": 21, @@ -1398,8 +1252,8 @@ }, "property": { "type": "StringLiteral", - "start": 431, - "end": 435, + "start": 421, + "end": 425, "loc": { "start": { "line": 21, @@ -1420,8 +1274,8 @@ }, "right": { "type": "ArrowFunctionExpression", - "start": 439, - "end": 616, + "start": 429, + "end": 606, "loc": { "start": { "line": 21, @@ -1439,8 +1293,8 @@ "params": [ { "type": "Identifier", - "start": 440, - "end": 444, + "start": 430, + "end": 434, "loc": { "start": { "line": 21, @@ -1456,8 +1310,8 @@ }, { "type": "Identifier", - "start": 446, - "end": 449, + "start": 436, + "end": 439, "loc": { "start": { "line": 21, @@ -1474,8 +1328,8 @@ ], "body": { "type": "BlockStatement", - "start": 454, - "end": 616, + "start": 444, + "end": 606, "loc": { "start": { "line": 21, @@ -1489,8 +1343,8 @@ "body": [ { "type": "IfStatement", - "start": 458, - "end": 530, + "start": 448, + "end": 520, "loc": { "start": { "line": 22, @@ -1503,8 +1357,8 @@ }, "test": { "type": "BinaryExpression", - "start": 462, - "end": 479, + "start": 452, + "end": 469, "loc": { "start": { "line": 22, @@ -1517,8 +1371,8 @@ }, "left": { "type": "MemberExpression", - "start": 462, - "end": 473, + "start": 452, + "end": 463, "loc": { "start": { "line": 22, @@ -1531,8 +1385,8 @@ }, "object": { "type": "Identifier", - "start": 462, - "end": 466, + "start": 452, + "end": 456, "loc": { "start": { "line": 22, @@ -1548,8 +1402,8 @@ }, "property": { "type": "Identifier", - "start": 467, - "end": 473, + "start": 457, + "end": 463, "loc": { "start": { "line": 22, @@ -1568,8 +1422,8 @@ "operator": "!==", "right": { "type": "NumericLiteral", - "start": 478, - "end": 479, + "start": 468, + "end": 469, "loc": { "start": { "line": 22, @@ -1589,8 +1443,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 481, - "end": 530, + "start": 471, + "end": 520, "loc": { "start": { "line": 22, @@ -1604,8 +1458,8 @@ "body": [ { "type": "ThrowStatement", - "start": 487, - "end": 526, + "start": 477, + "end": 516, "loc": { "start": { "line": 23, @@ -1618,8 +1472,8 @@ }, "argument": { "type": "NewExpression", - "start": 493, - "end": 525, + "start": 483, + "end": 515, "loc": { "start": { "line": 23, @@ -1632,8 +1486,8 @@ }, "callee": { "type": "Identifier", - "start": 497, - "end": 508, + "start": 487, + "end": 498, "loc": { "start": { "line": 23, @@ -1650,8 +1504,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 509, - "end": 524, + "start": 499, + "end": 514, "loc": { "start": { "line": 23, @@ -1678,8 +1532,8 @@ }, { "type": "VariableDeclaration", - "start": 534, - "end": 568, + "start": 524, + "end": 558, "loc": { "start": { "line": 26, @@ -1693,8 +1547,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 540, - "end": 567, + "start": 530, + "end": 557, "loc": { "start": { "line": 26, @@ -1707,8 +1561,8 @@ }, "id": { "type": "Identifier", - "start": 540, - "end": 543, + "start": 530, + "end": 533, "loc": { "start": { "line": 26, @@ -1724,8 +1578,8 @@ }, "init": { "type": "CallExpression", - "start": 546, - "end": 567, + "start": 536, + "end": 557, "loc": { "start": { "line": 26, @@ -1738,8 +1592,8 @@ }, "callee": { "type": "MemberExpression", - "start": 546, - "end": 562, + "start": 536, + "end": 552, "loc": { "start": { "line": 26, @@ -1752,8 +1606,8 @@ }, "object": { "type": "MemberExpression", - "start": 546, - "end": 553, + "start": 536, + "end": 543, "loc": { "start": { "line": 26, @@ -1766,8 +1620,8 @@ }, "object": { "type": "Identifier", - "start": 546, - "end": 550, + "start": 536, + "end": 540, "loc": { "start": { "line": 26, @@ -1783,8 +1637,8 @@ }, "property": { "type": "NumericLiteral", - "start": 551, - "end": 552, + "start": 541, + "end": 542, "loc": { "start": { "line": 26, @@ -1805,8 +1659,8 @@ }, "property": { "type": "Identifier", - "start": 554, - "end": 562, + "start": 544, + "end": 552, "loc": { "start": { "line": 26, @@ -1825,8 +1679,8 @@ "arguments": [ { "type": "Identifier", - "start": 563, - "end": 566, + "start": 553, + "end": 556, "loc": { "start": { "line": 26, @@ -1848,8 +1702,8 @@ }, { "type": "ReturnStatement", - "start": 572, - "end": 614, + "start": 562, + "end": 604, "loc": { "start": { "line": 28, @@ -1862,8 +1716,8 @@ }, "argument": { "type": "CallExpression", - "start": 579, - "end": 613, + "start": 569, + "end": 603, "loc": { "start": { "line": 28, @@ -1876,8 +1730,8 @@ }, "callee": { "type": "Identifier", - "start": 579, - "end": 594, + "start": 569, + "end": 584, "loc": { "start": { "line": 28, @@ -1894,8 +1748,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 595, - "end": 602, + "start": 585, + "end": 592, "loc": { "start": { "line": 28, @@ -1908,8 +1762,8 @@ }, "object": { "type": "Identifier", - "start": 595, - "end": 599, + "start": 585, + "end": 589, "loc": { "start": { "line": 28, @@ -1925,8 +1779,8 @@ }, "property": { "type": "NumericLiteral", - "start": 600, - "end": 601, + "start": 590, + "end": 591, "loc": { "start": { "line": 28, @@ -1947,8 +1801,8 @@ }, { "type": "Identifier", - "start": 604, - "end": 607, + "start": 594, + "end": 597, "loc": { "start": { "line": 28, @@ -1964,8 +1818,8 @@ }, { "type": "Identifier", - "start": 609, - "end": 612, + "start": 599, + "end": 602, "loc": { "start": { "line": 28, @@ -1990,8 +1844,8 @@ }, { "type": "ExpressionStatement", - "start": 619, - "end": 819, + "start": 609, + "end": 809, "loc": { "start": { "line": 31, @@ -2004,8 +1858,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 619, - "end": 818, + "start": 609, + "end": 808, "loc": { "start": { "line": 31, @@ -2019,8 +1873,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 619, - "end": 637, + "start": 609, + "end": 627, "loc": { "start": { "line": 31, @@ -2033,8 +1887,8 @@ }, "object": { "type": "Identifier", - "start": 619, - "end": 631, + "start": 609, + "end": 621, "loc": { "start": { "line": 31, @@ -2050,8 +1904,8 @@ }, "property": { "type": "StringLiteral", - "start": 632, - "end": 636, + "start": 622, + "end": 626, "loc": { "start": { "line": 31, @@ -2072,8 +1926,8 @@ }, "right": { "type": "ArrowFunctionExpression", - "start": 640, - "end": 818, + "start": 630, + "end": 808, "loc": { "start": { "line": 31, @@ -2091,8 +1945,8 @@ "params": [ { "type": "Identifier", - "start": 641, - "end": 645, + "start": 631, + "end": 635, "loc": { "start": { "line": 31, @@ -2108,8 +1962,8 @@ }, { "type": "Identifier", - "start": 647, - "end": 650, + "start": 637, + "end": 640, "loc": { "start": { "line": 31, @@ -2126,8 +1980,8 @@ ], "body": { "type": "BlockStatement", - "start": 655, - "end": 818, + "start": 645, + "end": 808, "loc": { "start": { "line": 31, @@ -2141,8 +1995,8 @@ "body": [ { "type": "IfStatement", - "start": 659, - "end": 731, + "start": 649, + "end": 721, "loc": { "start": { "line": 32, @@ -2155,8 +2009,8 @@ }, "test": { "type": "BinaryExpression", - "start": 663, - "end": 680, + "start": 653, + "end": 670, "loc": { "start": { "line": 32, @@ -2169,8 +2023,8 @@ }, "left": { "type": "MemberExpression", - "start": 663, - "end": 674, + "start": 653, + "end": 664, "loc": { "start": { "line": 32, @@ -2183,8 +2037,8 @@ }, "object": { "type": "Identifier", - "start": 663, - "end": 667, + "start": 653, + "end": 657, "loc": { "start": { "line": 32, @@ -2200,8 +2054,8 @@ }, "property": { "type": "Identifier", - "start": 668, - "end": 674, + "start": 658, + "end": 664, "loc": { "start": { "line": 32, @@ -2220,8 +2074,8 @@ "operator": "!==", "right": { "type": "NumericLiteral", - "start": 679, - "end": 680, + "start": 669, + "end": 670, "loc": { "start": { "line": 32, @@ -2241,8 +2095,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 682, - "end": 731, + "start": 672, + "end": 721, "loc": { "start": { "line": 32, @@ -2256,8 +2110,8 @@ "body": [ { "type": "ThrowStatement", - "start": 688, - "end": 727, + "start": 678, + "end": 717, "loc": { "start": { "line": 33, @@ -2270,8 +2124,8 @@ }, "argument": { "type": "NewExpression", - "start": 694, - "end": 726, + "start": 684, + "end": 716, "loc": { "start": { "line": 33, @@ -2284,8 +2138,8 @@ }, "callee": { "type": "Identifier", - "start": 698, - "end": 709, + "start": 688, + "end": 699, "loc": { "start": { "line": 33, @@ -2302,8 +2156,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 710, - "end": 725, + "start": 700, + "end": 715, "loc": { "start": { "line": 33, @@ -2330,8 +2184,8 @@ }, { "type": "VariableDeclaration", - "start": 735, - "end": 769, + "start": 725, + "end": 759, "loc": { "start": { "line": 36, @@ -2345,8 +2199,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 741, - "end": 768, + "start": 731, + "end": 758, "loc": { "start": { "line": 36, @@ -2359,8 +2213,8 @@ }, "id": { "type": "Identifier", - "start": 741, - "end": 744, + "start": 731, + "end": 734, "loc": { "start": { "line": 36, @@ -2376,8 +2230,8 @@ }, "init": { "type": "CallExpression", - "start": 747, - "end": 768, + "start": 737, + "end": 758, "loc": { "start": { "line": 36, @@ -2390,8 +2244,8 @@ }, "callee": { "type": "MemberExpression", - "start": 747, - "end": 763, + "start": 737, + "end": 753, "loc": { "start": { "line": 36, @@ -2404,8 +2258,8 @@ }, "object": { "type": "MemberExpression", - "start": 747, - "end": 754, + "start": 737, + "end": 744, "loc": { "start": { "line": 36, @@ -2418,8 +2272,8 @@ }, "object": { "type": "Identifier", - "start": 747, - "end": 751, + "start": 737, + "end": 741, "loc": { "start": { "line": 36, @@ -2435,8 +2289,8 @@ }, "property": { "type": "NumericLiteral", - "start": 752, - "end": 753, + "start": 742, + "end": 743, "loc": { "start": { "line": 36, @@ -2457,8 +2311,8 @@ }, "property": { "type": "Identifier", - "start": 755, - "end": 763, + "start": 745, + "end": 753, "loc": { "start": { "line": 36, @@ -2477,8 +2331,8 @@ "arguments": [ { "type": "Identifier", - "start": 764, - "end": 767, + "start": 754, + "end": 757, "loc": { "start": { "line": 36, @@ -2500,8 +2354,8 @@ }, { "type": "ReturnStatement", - "start": 773, - "end": 816, + "start": 763, + "end": 806, "loc": { "start": { "line": 38, @@ -2514,8 +2368,8 @@ }, "argument": { "type": "CallExpression", - "start": 780, - "end": 815, + "start": 770, + "end": 805, "loc": { "start": { "line": 38, @@ -2528,8 +2382,8 @@ }, "callee": { "type": "Identifier", - "start": 780, - "end": 795, + "start": 770, + "end": 785, "loc": { "start": { "line": 38, @@ -2546,8 +2400,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 796, - "end": 803, + "start": 786, + "end": 793, "loc": { "start": { "line": 38, @@ -2560,8 +2414,8 @@ }, "object": { "type": "Identifier", - "start": 796, - "end": 800, + "start": 786, + "end": 790, "loc": { "start": { "line": 38, @@ -2577,8 +2431,8 @@ }, "property": { "type": "NumericLiteral", - "start": 801, - "end": 802, + "start": 791, + "end": 792, "loc": { "start": { "line": 38, @@ -2599,8 +2453,8 @@ }, { "type": "Identifier", - "start": 805, - "end": 808, + "start": 795, + "end": 798, "loc": { "start": { "line": 38, @@ -2616,8 +2470,8 @@ }, { "type": "UnaryExpression", - "start": 810, - "end": 814, + "start": 800, + "end": 804, "loc": { "start": { "line": 38, @@ -2632,8 +2486,8 @@ "prefix": true, "argument": { "type": "Identifier", - "start": 811, - "end": 814, + "start": 801, + "end": 804, "loc": { "start": { "line": 38, @@ -2662,8 +2516,8 @@ }, { "type": "VariableDeclaration", - "start": 821, - "end": 1070, + "start": 811, + "end": 1060, "loc": { "start": { "line": 41, @@ -2677,8 +2531,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 827, - "end": 1069, + "start": 817, + "end": 1059, "loc": { "start": { "line": 41, @@ -2691,8 +2545,8 @@ }, "id": { "type": "Identifier", - "start": 827, - "end": 842, + "start": 817, + "end": 832, "loc": { "start": { "line": 41, @@ -2708,8 +2562,8 @@ }, "init": { "type": "ArrowFunctionExpression", - "start": 845, - "end": 1069, + "start": 835, + "end": 1059, "loc": { "start": { "line": 41, @@ -2722,8 +2576,8 @@ }, "id": { "type": "Identifier", - "start": 827, - "end": 842, + "start": 817, + "end": 832, "loc": { "start": { "line": 41, @@ -2743,8 +2597,8 @@ "params": [ { "type": "Identifier", - "start": 846, - "end": 854, + "start": 836, + "end": 844, "loc": { "start": { "line": 41, @@ -2760,8 +2614,8 @@ }, { "type": "Identifier", - "start": 856, - "end": 859, + "start": 846, + "end": 849, "loc": { "start": { "line": 41, @@ -2777,8 +2631,8 @@ }, { "type": "Identifier", - "start": 861, - "end": 864, + "start": 851, + "end": 854, "loc": { "start": { "line": 41, @@ -2795,8 +2649,8 @@ ], "body": { "type": "BlockStatement", - "start": 869, - "end": 1069, + "start": 859, + "end": 1059, "loc": { "start": { "line": 41, @@ -2810,8 +2664,8 @@ "body": [ { "type": "VariableDeclaration", - "start": 873, - "end": 913, + "start": 863, + "end": 903, "loc": { "start": { "line": 42, @@ -2825,8 +2679,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 879, - "end": 912, + "start": 869, + "end": 902, "loc": { "start": { "line": 42, @@ -2839,8 +2693,8 @@ }, "id": { "type": "Identifier", - "start": 879, - "end": 887, + "start": 869, + "end": 877, "loc": { "start": { "line": 42, @@ -2856,8 +2710,8 @@ }, "init": { "type": "CallExpression", - "start": 890, - "end": 912, + "start": 880, + "end": 902, "loc": { "start": { "line": 42, @@ -2870,8 +2724,8 @@ }, "callee": { "type": "MemberExpression", - "start": 890, - "end": 907, + "start": 880, + "end": 897, "loc": { "start": { "line": 42, @@ -2884,8 +2738,8 @@ }, "object": { "type": "Identifier", - "start": 890, - "end": 898, + "start": 880, + "end": 888, "loc": { "start": { "line": 42, @@ -2901,8 +2755,8 @@ }, "property": { "type": "Identifier", - "start": 899, - "end": 907, + "start": 889, + "end": 897, "loc": { "start": { "line": 42, @@ -2921,8 +2775,8 @@ "arguments": [ { "type": "Identifier", - "start": 908, - "end": 911, + "start": 898, + "end": 901, "loc": { "start": { "line": 42, @@ -2944,8 +2798,8 @@ }, { "type": "VariableDeclaration", - "start": 917, - "end": 972, + "start": 907, + "end": 962, "loc": { "start": { "line": 44, @@ -2959,8 +2813,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 923, - "end": 971, + "start": 913, + "end": 961, "loc": { "start": { "line": 44, @@ -2973,8 +2827,8 @@ }, "id": { "type": "Identifier", - "start": 923, - "end": 928, + "start": 913, + "end": 918, "loc": { "start": { "line": 44, @@ -2990,8 +2844,8 @@ }, "init": { "type": "ObjectExpression", - "start": 931, - "end": 971, + "start": 921, + "end": 961, "loc": { "start": { "line": 44, @@ -3005,8 +2859,8 @@ "properties": [ { "type": "ObjectProperty", - "start": 933, - "end": 946, + "start": 923, + "end": 936, "loc": { "start": { "line": 44, @@ -3022,8 +2876,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 933, - "end": 937, + "start": 923, + "end": 927, "loc": { "start": { "line": 44, @@ -3039,8 +2893,8 @@ }, "value": { "type": "StringLiteral", - "start": 939, - "end": 946, + "start": 929, + "end": 936, "loc": { "start": { "line": 44, @@ -3060,8 +2914,8 @@ }, { "type": "ObjectProperty", - "start": 948, - "end": 969, + "start": 938, + "end": 959, "loc": { "start": { "line": 44, @@ -3077,8 +2931,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 948, - "end": 953, + "start": 938, + "end": 943, "loc": { "start": { "line": 44, @@ -3094,8 +2948,8 @@ }, "value": { "type": "BinaryExpression", - "start": 955, - "end": 969, + "start": 945, + "end": 959, "loc": { "start": { "line": 44, @@ -3108,8 +2962,8 @@ }, "left": { "type": "Identifier", - "start": 955, - "end": 963, + "start": 945, + "end": 953, "loc": { "start": { "line": 44, @@ -3126,8 +2980,8 @@ "operator": "+", "right": { "type": "Identifier", - "start": 966, - "end": 969, + "start": 956, + "end": 959, "loc": { "start": { "line": 44, @@ -3151,8 +3005,8 @@ }, { "type": "VariableDeclaration", - "start": 975, - "end": 1009, + "start": 965, + "end": 999, "loc": { "start": { "line": 45, @@ -3166,8 +3020,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 981, - "end": 1008, + "start": 971, + "end": 998, "loc": { "start": { "line": 45, @@ -3180,8 +3034,8 @@ }, "id": { "type": "Identifier", - "start": 981, - "end": 989, + "start": 971, + "end": 979, "loc": { "start": { "line": 45, @@ -3197,8 +3051,8 @@ }, "init": { "type": "NewExpression", - "start": 992, - "end": 1008, + "start": 982, + "end": 998, "loc": { "start": { "line": 45, @@ -3211,8 +3065,8 @@ }, "callee": { "type": "Identifier", - "start": 996, - "end": 1001, + "start": 986, + "end": 991, "loc": { "start": { "line": 45, @@ -3229,8 +3083,8 @@ "arguments": [ { "type": "Identifier", - "start": 1002, - "end": 1007, + "start": 992, + "end": 997, "loc": { "start": { "line": 45, @@ -3252,8 +3106,8 @@ }, { "type": "ReturnStatement", - "start": 1013, - "end": 1067, + "start": 1003, + "end": 1057, "loc": { "start": { "line": 47, @@ -3266,8 +3120,8 @@ }, "argument": { "type": "CallExpression", - "start": 1020, - "end": 1066, + "start": 1010, + "end": 1056, "loc": { "start": { "line": 47, @@ -3280,8 +3134,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1020, - "end": 1039, + "start": 1010, + "end": 1029, "loc": { "start": { "line": 47, @@ -3294,8 +3148,8 @@ }, "object": { "type": "Identifier", - "start": 1020, - "end": 1032, + "start": 1010, + "end": 1022, "loc": { "start": { "line": 47, @@ -3311,8 +3165,8 @@ }, "property": { "type": "StringLiteral", - "start": 1033, - "end": 1038, + "start": 1023, + "end": 1028, "loc": { "start": { "line": 47, @@ -3334,8 +3188,8 @@ "arguments": [ { "type": "ArrayExpression", - "start": 1040, - "end": 1060, + "start": 1030, + "end": 1050, "loc": { "start": { "line": 47, @@ -3349,8 +3203,8 @@ "elements": [ { "type": "Identifier", - "start": 1041, - "end": 1049, + "start": 1031, + "end": 1039, "loc": { "start": { "line": 47, @@ -3366,8 +3220,8 @@ }, { "type": "Identifier", - "start": 1051, - "end": 1059, + "start": 1041, + "end": 1049, "loc": { "start": { "line": 47, @@ -3385,8 +3239,8 @@ }, { "type": "Identifier", - "start": 1062, - "end": 1065, + "start": 1052, + "end": 1055, "loc": { "start": { "line": 47, @@ -3418,10 +3272,10 @@ "tokens": [ { "type": { - "label": "const", - "keyword": "const", + "label": "import", + "keyword": "import", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -3430,9 +3284,9 @@ "binop": null, "updateContext": null }, - "value": "const", + "value": "import", "start": 0, - "end": 5, + "end": 6, "loc": { "start": { "line": 1, @@ -3440,7 +3294,7 @@ }, "end": { "line": 1, - "column": 5 + "column": 6 } } }, @@ -3456,16 +3310,16 @@ "postfix": false, "binop": null }, - "start": 6, - "end": 7, + "start": 7, + "end": 8, "loc": { "start": { "line": 1, - "column": 6 + "column": 7 }, "end": { "line": 1, - "column": 7 + "column": 8 } } }, @@ -3482,16 +3336,16 @@ "binop": null }, "value": "SpecialForms", - "start": 8, - "end": 20, + "start": 9, + "end": 21, "loc": { "start": { "line": 1, - "column": 8 + "column": 9 }, "end": { "line": 1, - "column": 20 + "column": 21 } } }, @@ -3507,43 +3361,16 @@ "postfix": false, "binop": null }, - "start": 21, - "end": 22, + "start": 22, + "end": 23, "loc": { "start": { - "line": 1, - "column": 21 - }, - "end": { "line": 1, "column": 22 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 23, - "end": 24, - "loc": { - "start": { - "line": 1, - "column": 23 }, "end": { "line": 1, - "column": 24 + "column": 23 } } }, @@ -3559,42 +3386,17 @@ "postfix": false, "binop": null }, - "value": "require", - "start": 25, - "end": 32, - "loc": { - "start": { - "line": 1, - "column": 25 - }, - "end": { - "line": 1, - "column": 32 - } - } - }, - { - "type": { - "label": "(", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 32, - "end": 33, + "value": "from", + "start": 24, + "end": 28, "loc": { "start": { "line": 1, - "column": 32 + "column": 24 }, "end": { "line": 1, - "column": 33 + "column": 28 } } }, @@ -3612,41 +3414,16 @@ "updateContext": null }, "value": "./environment.js", - "start": 33, - "end": 51, - "loc": { - "start": { - "line": 1, - "column": 33 - }, - "end": { - "line": 1, - "column": 51 - } - } - }, - { - "type": { - "label": ")", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 51, - "end": 52, + "start": 29, + "end": 47, "loc": { "start": { "line": 1, - "column": 51 + "column": 29 }, "end": { "line": 1, - "column": 52 + "column": 47 } } }, @@ -3663,25 +3440,25 @@ "binop": null, "updateContext": null }, - "start": 52, - "end": 53, + "start": 47, + "end": 48, "loc": { "start": { "line": 1, - "column": 52 + "column": 47 }, "end": { "line": 1, - "column": 53 + "column": 48 } } }, { "type": { - "label": "const", - "keyword": "const", + "label": "import", + "keyword": "import", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -3690,9 +3467,9 @@ "binop": null, "updateContext": null }, - "value": "const", - "start": 55, - "end": 60, + "value": "import", + "start": 50, + "end": 56, "loc": { "start": { "line": 3, @@ -3700,7 +3477,7 @@ }, "end": { "line": 3, - "column": 5 + "column": 6 } } }, @@ -3716,16 +3493,16 @@ "postfix": false, "binop": null }, - "start": 61, - "end": 62, + "start": 57, + "end": 58, "loc": { "start": { "line": 3, - "column": 6 + "column": 7 }, "end": { "line": 3, - "column": 7 + "column": 8 } } }, @@ -3742,16 +3519,16 @@ "binop": null }, "value": "Value", - "start": 63, - "end": 68, + "start": 59, + "end": 64, "loc": { "start": { "line": 3, - "column": 8 + "column": 9 }, "end": { "line": 3, - "column": 13 + "column": 14 } } }, @@ -3767,43 +3544,16 @@ "postfix": false, "binop": null }, - "start": 69, - "end": 70, + "start": 65, + "end": 66, "loc": { "start": { - "line": 3, - "column": 14 - }, - "end": { "line": 3, "column": 15 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 71, - "end": 72, - "loc": { - "start": { - "line": 3, - "column": 16 }, "end": { "line": 3, - "column": 17 + "column": 16 } } }, @@ -3819,42 +3569,17 @@ "postfix": false, "binop": null }, - "value": "require", - "start": 73, - "end": 80, - "loc": { - "start": { - "line": 3, - "column": 18 - }, - "end": { - "line": 3, - "column": 25 - } - } - }, - { - "type": { - "label": "(", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 80, - "end": 81, + "value": "from", + "start": 67, + "end": 71, "loc": { "start": { "line": 3, - "column": 25 + "column": 17 }, "end": { "line": 3, - "column": 26 + "column": 21 } } }, @@ -3872,41 +3597,16 @@ "updateContext": null }, "value": "./ast.js", - "start": 81, - "end": 91, - "loc": { - "start": { - "line": 3, - "column": 26 - }, - "end": { - "line": 3, - "column": 36 - } - } - }, - { - "type": { - "label": ")", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 91, - "end": 92, + "start": 72, + "end": 82, "loc": { "start": { "line": 3, - "column": 36 + "column": 22 }, "end": { "line": 3, - "column": 37 + "column": 32 } } }, @@ -3923,16 +3623,16 @@ "binop": null, "updateContext": null }, - "start": 92, - "end": 93, + "start": 82, + "end": 83, "loc": { "start": { "line": 3, - "column": 37 + "column": 32 }, "end": { "line": 3, - "column": 38 + "column": 33 } } }, @@ -3949,8 +3649,8 @@ "binop": null }, "value": "SpecialForms", - "start": 95, - "end": 107, + "start": 85, + "end": 97, "loc": { "start": { "line": 5, @@ -3975,8 +3675,8 @@ "binop": null, "updateContext": null }, - "start": 107, - "end": 108, + "start": 97, + "end": 98, "loc": { "start": { "line": 5, @@ -4002,8 +3702,8 @@ "updateContext": null }, "value": "++", - "start": 108, - "end": 112, + "start": 98, + "end": 102, "loc": { "start": { "line": 5, @@ -4028,8 +3728,8 @@ "binop": null, "updateContext": null }, - "start": 112, - "end": 113, + "start": 102, + "end": 103, "loc": { "start": { "line": 5, @@ -4055,8 +3755,8 @@ "updateContext": null }, "value": "=", - "start": 114, - "end": 115, + "start": 104, + "end": 105, "loc": { "start": { "line": 5, @@ -4080,8 +3780,8 @@ "postfix": false, "binop": null }, - "start": 116, - "end": 117, + "start": 106, + "end": 107, "loc": { "start": { "line": 5, @@ -4106,8 +3806,8 @@ "binop": null }, "value": "args", - "start": 117, - "end": 121, + "start": 107, + "end": 111, "loc": { "start": { "line": 5, @@ -4132,8 +3832,8 @@ "binop": null, "updateContext": null }, - "start": 121, - "end": 122, + "start": 111, + "end": 112, "loc": { "start": { "line": 5, @@ -4158,8 +3858,8 @@ "binop": null }, "value": "env", - "start": 123, - "end": 126, + "start": 113, + "end": 116, "loc": { "start": { "line": 5, @@ -4183,8 +3883,8 @@ "postfix": false, "binop": null }, - "start": 126, - "end": 127, + "start": 116, + "end": 117, "loc": { "start": { "line": 5, @@ -4209,8 +3909,8 @@ "binop": null, "updateContext": null }, - "start": 128, - "end": 130, + "start": 118, + "end": 120, "loc": { "start": { "line": 5, @@ -4234,8 +3934,8 @@ "postfix": false, "binop": null }, - "start": 131, - "end": 132, + "start": 121, + "end": 122, "loc": { "start": { "line": 5, @@ -4262,8 +3962,8 @@ "updateContext": null }, "value": "if", - "start": 135, - "end": 137, + "start": 125, + "end": 127, "loc": { "start": { "line": 6, @@ -4287,8 +3987,8 @@ "postfix": false, "binop": null }, - "start": 138, - "end": 139, + "start": 128, + "end": 129, "loc": { "start": { "line": 6, @@ -4313,8 +4013,8 @@ "binop": null }, "value": "args", - "start": 139, - "end": 143, + "start": 129, + "end": 133, "loc": { "start": { "line": 6, @@ -4339,8 +4039,8 @@ "binop": null, "updateContext": null }, - "start": 143, - "end": 144, + "start": 133, + "end": 134, "loc": { "start": { "line": 6, @@ -4365,8 +4065,8 @@ "binop": null }, "value": "length", - "start": 144, - "end": 150, + "start": 134, + "end": 140, "loc": { "start": { "line": 6, @@ -4392,8 +4092,8 @@ "updateContext": null }, "value": "!==", - "start": 151, - "end": 154, + "start": 141, + "end": 144, "loc": { "start": { "line": 6, @@ -4419,8 +4119,8 @@ "updateContext": null }, "value": 1, - "start": 155, - "end": 156, + "start": 145, + "end": 146, "loc": { "start": { "line": 6, @@ -4444,8 +4144,8 @@ "postfix": false, "binop": null }, - "start": 156, - "end": 157, + "start": 146, + "end": 147, "loc": { "start": { "line": 6, @@ -4469,8 +4169,8 @@ "postfix": false, "binop": null }, - "start": 158, - "end": 159, + "start": 148, + "end": 149, "loc": { "start": { "line": 6, @@ -4497,8 +4197,8 @@ "updateContext": null }, "value": "throw", - "start": 164, - "end": 169, + "start": 154, + "end": 159, "loc": { "start": { "line": 7, @@ -4525,8 +4225,8 @@ "updateContext": null }, "value": "new", - "start": 170, - "end": 173, + "start": 160, + "end": 163, "loc": { "start": { "line": 7, @@ -4551,8 +4251,8 @@ "binop": null }, "value": "SyntaxError", - "start": 174, - "end": 185, + "start": 164, + "end": 175, "loc": { "start": { "line": 7, @@ -4576,8 +4276,8 @@ "postfix": false, "binop": null }, - "start": 185, - "end": 186, + "start": 175, + "end": 176, "loc": { "start": { "line": 7, @@ -4603,8 +4303,8 @@ "updateContext": null }, "value": "Bad use of ++", - "start": 186, - "end": 201, + "start": 176, + "end": 191, "loc": { "start": { "line": 7, @@ -4628,8 +4328,8 @@ "postfix": false, "binop": null }, - "start": 201, - "end": 202, + "start": 191, + "end": 192, "loc": { "start": { "line": 7, @@ -4654,8 +4354,8 @@ "binop": null, "updateContext": null }, - "start": 202, - "end": 203, + "start": 192, + "end": 193, "loc": { "start": { "line": 7, @@ -4679,8 +4379,8 @@ "postfix": false, "binop": null }, - "start": 206, - "end": 207, + "start": 196, + "end": 197, "loc": { "start": { "line": 8, @@ -4707,8 +4407,8 @@ "updateContext": null }, "value": "return", - "start": 211, - "end": 217, + "start": 201, + "end": 207, "loc": { "start": { "line": 10, @@ -4733,8 +4433,8 @@ "binop": null }, "value": "incrementHelper", - "start": 218, - "end": 233, + "start": 208, + "end": 223, "loc": { "start": { "line": 10, @@ -4758,8 +4458,8 @@ "postfix": false, "binop": null }, - "start": 233, - "end": 234, + "start": 223, + "end": 224, "loc": { "start": { "line": 10, @@ -4784,8 +4484,8 @@ "binop": null }, "value": "args", - "start": 234, - "end": 238, + "start": 224, + "end": 228, "loc": { "start": { "line": 10, @@ -4810,8 +4510,8 @@ "binop": null, "updateContext": null }, - "start": 238, - "end": 239, + "start": 228, + "end": 229, "loc": { "start": { "line": 10, @@ -4837,8 +4537,8 @@ "updateContext": null }, "value": 0, - "start": 239, - "end": 240, + "start": 229, + "end": 230, "loc": { "start": { "line": 10, @@ -4863,8 +4563,8 @@ "binop": null, "updateContext": null }, - "start": 240, - "end": 241, + "start": 230, + "end": 231, "loc": { "start": { "line": 10, @@ -4889,8 +4589,8 @@ "binop": null, "updateContext": null }, - "start": 241, - "end": 242, + "start": 231, + "end": 232, "loc": { "start": { "line": 10, @@ -4915,8 +4615,8 @@ "binop": null }, "value": "env", - "start": 243, - "end": 246, + "start": 233, + "end": 236, "loc": { "start": { "line": 10, @@ -4941,8 +4641,8 @@ "binop": null, "updateContext": null }, - "start": 246, - "end": 247, + "start": 236, + "end": 237, "loc": { "start": { "line": 10, @@ -4968,8 +4668,8 @@ "updateContext": null }, "value": 1, - "start": 248, - "end": 249, + "start": 238, + "end": 239, "loc": { "start": { "line": 10, @@ -4993,8 +4693,8 @@ "postfix": false, "binop": null }, - "start": 249, - "end": 250, + "start": 239, + "end": 240, "loc": { "start": { "line": 10, @@ -5019,8 +4719,8 @@ "binop": null, "updateContext": null }, - "start": 250, - "end": 251, + "start": 240, + "end": 241, "loc": { "start": { "line": 10, @@ -5044,8 +4744,8 @@ "postfix": false, "binop": null }, - "start": 252, - "end": 253, + "start": 242, + "end": 243, "loc": { "start": { "line": 11, @@ -5070,8 +4770,8 @@ "binop": null, "updateContext": null }, - "start": 253, - "end": 254, + "start": 243, + "end": 244, "loc": { "start": { "line": 11, @@ -5096,8 +4796,8 @@ "binop": null }, "value": "SpecialForms", - "start": 256, - "end": 268, + "start": 246, + "end": 258, "loc": { "start": { "line": 13, @@ -5122,8 +4822,8 @@ "binop": null, "updateContext": null }, - "start": 268, - "end": 269, + "start": 258, + "end": 259, "loc": { "start": { "line": 13, @@ -5149,8 +4849,8 @@ "updateContext": null }, "value": "--", - "start": 269, - "end": 273, + "start": 259, + "end": 263, "loc": { "start": { "line": 13, @@ -5175,8 +4875,8 @@ "binop": null, "updateContext": null }, - "start": 273, - "end": 274, + "start": 263, + "end": 264, "loc": { "start": { "line": 13, @@ -5202,8 +4902,8 @@ "updateContext": null }, "value": "=", - "start": 275, - "end": 276, + "start": 265, + "end": 266, "loc": { "start": { "line": 13, @@ -5227,8 +4927,8 @@ "postfix": false, "binop": null }, - "start": 277, - "end": 278, + "start": 267, + "end": 268, "loc": { "start": { "line": 13, @@ -5253,8 +4953,8 @@ "binop": null }, "value": "args", - "start": 278, - "end": 282, + "start": 268, + "end": 272, "loc": { "start": { "line": 13, @@ -5279,8 +4979,8 @@ "binop": null, "updateContext": null }, - "start": 282, - "end": 283, + "start": 272, + "end": 273, "loc": { "start": { "line": 13, @@ -5305,8 +5005,8 @@ "binop": null }, "value": "env", - "start": 284, - "end": 287, + "start": 274, + "end": 277, "loc": { "start": { "line": 13, @@ -5330,8 +5030,8 @@ "postfix": false, "binop": null }, - "start": 287, - "end": 288, + "start": 277, + "end": 278, "loc": { "start": { "line": 13, @@ -5356,8 +5056,8 @@ "binop": null, "updateContext": null }, - "start": 289, - "end": 291, + "start": 279, + "end": 281, "loc": { "start": { "line": 13, @@ -5381,8 +5081,8 @@ "postfix": false, "binop": null }, - "start": 292, - "end": 293, + "start": 282, + "end": 283, "loc": { "start": { "line": 13, @@ -5409,8 +5109,8 @@ "updateContext": null }, "value": "if", - "start": 296, - "end": 298, + "start": 286, + "end": 288, "loc": { "start": { "line": 14, @@ -5434,8 +5134,8 @@ "postfix": false, "binop": null }, - "start": 299, - "end": 300, + "start": 289, + "end": 290, "loc": { "start": { "line": 14, @@ -5460,8 +5160,8 @@ "binop": null }, "value": "args", - "start": 300, - "end": 304, + "start": 290, + "end": 294, "loc": { "start": { "line": 14, @@ -5486,8 +5186,8 @@ "binop": null, "updateContext": null }, - "start": 304, - "end": 305, + "start": 294, + "end": 295, "loc": { "start": { "line": 14, @@ -5512,8 +5212,8 @@ "binop": null }, "value": "length", - "start": 305, - "end": 311, + "start": 295, + "end": 301, "loc": { "start": { "line": 14, @@ -5539,8 +5239,8 @@ "updateContext": null }, "value": "!==", - "start": 312, - "end": 315, + "start": 302, + "end": 305, "loc": { "start": { "line": 14, @@ -5566,8 +5266,8 @@ "updateContext": null }, "value": 1, - "start": 316, - "end": 317, + "start": 306, + "end": 307, "loc": { "start": { "line": 14, @@ -5591,8 +5291,8 @@ "postfix": false, "binop": null }, - "start": 317, - "end": 318, + "start": 307, + "end": 308, "loc": { "start": { "line": 14, @@ -5616,8 +5316,8 @@ "postfix": false, "binop": null }, - "start": 319, - "end": 320, + "start": 309, + "end": 310, "loc": { "start": { "line": 14, @@ -5644,8 +5344,8 @@ "updateContext": null }, "value": "throw", - "start": 325, - "end": 330, + "start": 315, + "end": 320, "loc": { "start": { "line": 15, @@ -5672,8 +5372,8 @@ "updateContext": null }, "value": "new", - "start": 331, - "end": 334, + "start": 321, + "end": 324, "loc": { "start": { "line": 15, @@ -5698,8 +5398,8 @@ "binop": null }, "value": "SyntaxError", - "start": 335, - "end": 346, + "start": 325, + "end": 336, "loc": { "start": { "line": 15, @@ -5723,8 +5423,8 @@ "postfix": false, "binop": null }, - "start": 346, - "end": 347, + "start": 336, + "end": 337, "loc": { "start": { "line": 15, @@ -5750,8 +5450,8 @@ "updateContext": null }, "value": "Bad use of --", - "start": 347, - "end": 362, + "start": 337, + "end": 352, "loc": { "start": { "line": 15, @@ -5775,8 +5475,8 @@ "postfix": false, "binop": null }, - "start": 362, - "end": 363, + "start": 352, + "end": 353, "loc": { "start": { "line": 15, @@ -5801,8 +5501,8 @@ "binop": null, "updateContext": null }, - "start": 363, - "end": 364, + "start": 353, + "end": 354, "loc": { "start": { "line": 15, @@ -5826,8 +5526,8 @@ "postfix": false, "binop": null }, - "start": 367, - "end": 368, + "start": 357, + "end": 358, "loc": { "start": { "line": 16, @@ -5854,8 +5554,8 @@ "updateContext": null }, "value": "return", - "start": 372, - "end": 378, + "start": 362, + "end": 368, "loc": { "start": { "line": 18, @@ -5880,8 +5580,8 @@ "binop": null }, "value": "incrementHelper", - "start": 379, - "end": 394, + "start": 369, + "end": 384, "loc": { "start": { "line": 18, @@ -5905,8 +5605,8 @@ "postfix": false, "binop": null }, - "start": 394, - "end": 395, + "start": 384, + "end": 385, "loc": { "start": { "line": 18, @@ -5931,8 +5631,8 @@ "binop": null }, "value": "args", - "start": 395, - "end": 399, + "start": 385, + "end": 389, "loc": { "start": { "line": 18, @@ -5957,8 +5657,8 @@ "binop": null, "updateContext": null }, - "start": 399, - "end": 400, + "start": 389, + "end": 390, "loc": { "start": { "line": 18, @@ -5984,8 +5684,8 @@ "updateContext": null }, "value": 0, - "start": 400, - "end": 401, + "start": 390, + "end": 391, "loc": { "start": { "line": 18, @@ -6010,8 +5710,8 @@ "binop": null, "updateContext": null }, - "start": 401, - "end": 402, + "start": 391, + "end": 392, "loc": { "start": { "line": 18, @@ -6036,8 +5736,8 @@ "binop": null, "updateContext": null }, - "start": 402, - "end": 403, + "start": 392, + "end": 393, "loc": { "start": { "line": 18, @@ -6062,8 +5762,8 @@ "binop": null }, "value": "env", - "start": 404, - "end": 407, + "start": 394, + "end": 397, "loc": { "start": { "line": 18, @@ -6088,8 +5788,8 @@ "binop": null, "updateContext": null }, - "start": 407, - "end": 408, + "start": 397, + "end": 398, "loc": { "start": { "line": 18, @@ -6115,8 +5815,8 @@ "updateContext": null }, "value": "-", - "start": 409, - "end": 410, + "start": 399, + "end": 400, "loc": { "start": { "line": 18, @@ -6142,8 +5842,8 @@ "updateContext": null }, "value": 1, - "start": 410, - "end": 411, + "start": 400, + "end": 401, "loc": { "start": { "line": 18, @@ -6167,8 +5867,8 @@ "postfix": false, "binop": null }, - "start": 411, - "end": 412, + "start": 401, + "end": 402, "loc": { "start": { "line": 18, @@ -6193,8 +5893,8 @@ "binop": null, "updateContext": null }, - "start": 412, - "end": 413, + "start": 402, + "end": 403, "loc": { "start": { "line": 18, @@ -6218,8 +5918,8 @@ "postfix": false, "binop": null }, - "start": 414, - "end": 415, + "start": 404, + "end": 405, "loc": { "start": { "line": 19, @@ -6244,8 +5944,8 @@ "binop": null, "updateContext": null }, - "start": 415, - "end": 416, + "start": 405, + "end": 406, "loc": { "start": { "line": 19, @@ -6270,8 +5970,8 @@ "binop": null }, "value": "SpecialForms", - "start": 418, - "end": 430, + "start": 408, + "end": 420, "loc": { "start": { "line": 21, @@ -6296,8 +5996,8 @@ "binop": null, "updateContext": null }, - "start": 430, - "end": 431, + "start": 420, + "end": 421, "loc": { "start": { "line": 21, @@ -6323,8 +6023,8 @@ "updateContext": null }, "value": "+=", - "start": 431, - "end": 435, + "start": 421, + "end": 425, "loc": { "start": { "line": 21, @@ -6349,8 +6049,8 @@ "binop": null, "updateContext": null }, - "start": 435, - "end": 436, + "start": 425, + "end": 426, "loc": { "start": { "line": 21, @@ -6376,8 +6076,8 @@ "updateContext": null }, "value": "=", - "start": 437, - "end": 438, + "start": 427, + "end": 428, "loc": { "start": { "line": 21, @@ -6401,8 +6101,8 @@ "postfix": false, "binop": null }, - "start": 439, - "end": 440, + "start": 429, + "end": 430, "loc": { "start": { "line": 21, @@ -6427,8 +6127,8 @@ "binop": null }, "value": "args", - "start": 440, - "end": 444, + "start": 430, + "end": 434, "loc": { "start": { "line": 21, @@ -6453,8 +6153,8 @@ "binop": null, "updateContext": null }, - "start": 444, - "end": 445, + "start": 434, + "end": 435, "loc": { "start": { "line": 21, @@ -6479,8 +6179,8 @@ "binop": null }, "value": "env", - "start": 446, - "end": 449, + "start": 436, + "end": 439, "loc": { "start": { "line": 21, @@ -6504,8 +6204,8 @@ "postfix": false, "binop": null }, - "start": 449, - "end": 450, + "start": 439, + "end": 440, "loc": { "start": { "line": 21, @@ -6530,8 +6230,8 @@ "binop": null, "updateContext": null }, - "start": 451, - "end": 453, + "start": 441, + "end": 443, "loc": { "start": { "line": 21, @@ -6555,8 +6255,8 @@ "postfix": false, "binop": null }, - "start": 454, - "end": 455, + "start": 444, + "end": 445, "loc": { "start": { "line": 21, @@ -6583,8 +6283,8 @@ "updateContext": null }, "value": "if", - "start": 458, - "end": 460, + "start": 448, + "end": 450, "loc": { "start": { "line": 22, @@ -6608,8 +6308,8 @@ "postfix": false, "binop": null }, - "start": 461, - "end": 462, + "start": 451, + "end": 452, "loc": { "start": { "line": 22, @@ -6634,8 +6334,8 @@ "binop": null }, "value": "args", - "start": 462, - "end": 466, + "start": 452, + "end": 456, "loc": { "start": { "line": 22, @@ -6660,8 +6360,8 @@ "binop": null, "updateContext": null }, - "start": 466, - "end": 467, + "start": 456, + "end": 457, "loc": { "start": { "line": 22, @@ -6686,8 +6386,8 @@ "binop": null }, "value": "length", - "start": 467, - "end": 473, + "start": 457, + "end": 463, "loc": { "start": { "line": 22, @@ -6713,8 +6413,8 @@ "updateContext": null }, "value": "!==", - "start": 474, - "end": 477, + "start": 464, + "end": 467, "loc": { "start": { "line": 22, @@ -6740,8 +6440,8 @@ "updateContext": null }, "value": 2, - "start": 478, - "end": 479, + "start": 468, + "end": 469, "loc": { "start": { "line": 22, @@ -6765,8 +6465,8 @@ "postfix": false, "binop": null }, - "start": 479, - "end": 480, + "start": 469, + "end": 470, "loc": { "start": { "line": 22, @@ -6790,8 +6490,8 @@ "postfix": false, "binop": null }, - "start": 481, - "end": 482, + "start": 471, + "end": 472, "loc": { "start": { "line": 22, @@ -6818,8 +6518,8 @@ "updateContext": null }, "value": "throw", - "start": 487, - "end": 492, + "start": 477, + "end": 482, "loc": { "start": { "line": 23, @@ -6846,8 +6546,8 @@ "updateContext": null }, "value": "new", - "start": 493, - "end": 496, + "start": 483, + "end": 486, "loc": { "start": { "line": 23, @@ -6872,8 +6572,8 @@ "binop": null }, "value": "SyntaxError", - "start": 497, - "end": 508, + "start": 487, + "end": 498, "loc": { "start": { "line": 23, @@ -6897,8 +6597,8 @@ "postfix": false, "binop": null }, - "start": 508, - "end": 509, + "start": 498, + "end": 499, "loc": { "start": { "line": 23, @@ -6924,8 +6624,8 @@ "updateContext": null }, "value": "Bad use of +=", - "start": 509, - "end": 524, + "start": 499, + "end": 514, "loc": { "start": { "line": 23, @@ -6949,8 +6649,8 @@ "postfix": false, "binop": null }, - "start": 524, - "end": 525, + "start": 514, + "end": 515, "loc": { "start": { "line": 23, @@ -6975,8 +6675,8 @@ "binop": null, "updateContext": null }, - "start": 525, - "end": 526, + "start": 515, + "end": 516, "loc": { "start": { "line": 23, @@ -7000,8 +6700,8 @@ "postfix": false, "binop": null }, - "start": 529, - "end": 530, + "start": 519, + "end": 520, "loc": { "start": { "line": 24, @@ -7028,8 +6728,8 @@ "updateContext": null }, "value": "const", - "start": 534, - "end": 539, + "start": 524, + "end": 529, "loc": { "start": { "line": 26, @@ -7054,8 +6754,8 @@ "binop": null }, "value": "inc", - "start": 540, - "end": 543, + "start": 530, + "end": 533, "loc": { "start": { "line": 26, @@ -7081,8 +6781,8 @@ "updateContext": null }, "value": "=", - "start": 544, - "end": 545, + "start": 534, + "end": 535, "loc": { "start": { "line": 26, @@ -7107,8 +6807,8 @@ "binop": null }, "value": "args", - "start": 546, - "end": 550, + "start": 536, + "end": 540, "loc": { "start": { "line": 26, @@ -7133,8 +6833,8 @@ "binop": null, "updateContext": null }, - "start": 550, - "end": 551, + "start": 540, + "end": 541, "loc": { "start": { "line": 26, @@ -7160,8 +6860,8 @@ "updateContext": null }, "value": 1, - "start": 551, - "end": 552, + "start": 541, + "end": 542, "loc": { "start": { "line": 26, @@ -7186,8 +6886,8 @@ "binop": null, "updateContext": null }, - "start": 552, - "end": 553, + "start": 542, + "end": 543, "loc": { "start": { "line": 26, @@ -7212,8 +6912,8 @@ "binop": null, "updateContext": null }, - "start": 553, - "end": 554, + "start": 543, + "end": 544, "loc": { "start": { "line": 26, @@ -7238,8 +6938,8 @@ "binop": null }, "value": "evaluate", - "start": 554, - "end": 562, + "start": 544, + "end": 552, "loc": { "start": { "line": 26, @@ -7263,8 +6963,8 @@ "postfix": false, "binop": null }, - "start": 562, - "end": 563, + "start": 552, + "end": 553, "loc": { "start": { "line": 26, @@ -7289,8 +6989,8 @@ "binop": null }, "value": "env", - "start": 563, - "end": 566, + "start": 553, + "end": 556, "loc": { "start": { "line": 26, @@ -7314,8 +7014,8 @@ "postfix": false, "binop": null }, - "start": 566, - "end": 567, + "start": 556, + "end": 557, "loc": { "start": { "line": 26, @@ -7340,8 +7040,8 @@ "binop": null, "updateContext": null }, - "start": 567, - "end": 568, + "start": 557, + "end": 558, "loc": { "start": { "line": 26, @@ -7368,8 +7068,8 @@ "updateContext": null }, "value": "return", - "start": 572, - "end": 578, + "start": 562, + "end": 568, "loc": { "start": { "line": 28, @@ -7394,8 +7094,8 @@ "binop": null }, "value": "incrementHelper", - "start": 579, - "end": 594, + "start": 569, + "end": 584, "loc": { "start": { "line": 28, @@ -7419,8 +7119,8 @@ "postfix": false, "binop": null }, - "start": 594, - "end": 595, + "start": 584, + "end": 585, "loc": { "start": { "line": 28, @@ -7445,8 +7145,8 @@ "binop": null }, "value": "args", - "start": 595, - "end": 599, + "start": 585, + "end": 589, "loc": { "start": { "line": 28, @@ -7471,8 +7171,8 @@ "binop": null, "updateContext": null }, - "start": 599, - "end": 600, + "start": 589, + "end": 590, "loc": { "start": { "line": 28, @@ -7498,8 +7198,8 @@ "updateContext": null }, "value": 0, - "start": 600, - "end": 601, + "start": 590, + "end": 591, "loc": { "start": { "line": 28, @@ -7524,8 +7224,8 @@ "binop": null, "updateContext": null }, - "start": 601, - "end": 602, + "start": 591, + "end": 592, "loc": { "start": { "line": 28, @@ -7550,8 +7250,8 @@ "binop": null, "updateContext": null }, - "start": 602, - "end": 603, + "start": 592, + "end": 593, "loc": { "start": { "line": 28, @@ -7576,8 +7276,8 @@ "binop": null }, "value": "env", - "start": 604, - "end": 607, + "start": 594, + "end": 597, "loc": { "start": { "line": 28, @@ -7602,8 +7302,8 @@ "binop": null, "updateContext": null }, - "start": 607, - "end": 608, + "start": 597, + "end": 598, "loc": { "start": { "line": 28, @@ -7628,8 +7328,8 @@ "binop": null }, "value": "inc", - "start": 609, - "end": 612, + "start": 599, + "end": 602, "loc": { "start": { "line": 28, @@ -7653,8 +7353,8 @@ "postfix": false, "binop": null }, - "start": 612, - "end": 613, + "start": 602, + "end": 603, "loc": { "start": { "line": 28, @@ -7679,8 +7379,8 @@ "binop": null, "updateContext": null }, - "start": 613, - "end": 614, + "start": 603, + "end": 604, "loc": { "start": { "line": 28, @@ -7704,8 +7404,8 @@ "postfix": false, "binop": null }, - "start": 615, - "end": 616, + "start": 605, + "end": 606, "loc": { "start": { "line": 29, @@ -7730,8 +7430,8 @@ "binop": null, "updateContext": null }, - "start": 616, - "end": 617, + "start": 606, + "end": 607, "loc": { "start": { "line": 29, @@ -7756,8 +7456,8 @@ "binop": null }, "value": "SpecialForms", - "start": 619, - "end": 631, + "start": 609, + "end": 621, "loc": { "start": { "line": 31, @@ -7782,8 +7482,8 @@ "binop": null, "updateContext": null }, - "start": 631, - "end": 632, + "start": 621, + "end": 622, "loc": { "start": { "line": 31, @@ -7809,8 +7509,8 @@ "updateContext": null }, "value": "-=", - "start": 632, - "end": 636, + "start": 622, + "end": 626, "loc": { "start": { "line": 31, @@ -7835,8 +7535,8 @@ "binop": null, "updateContext": null }, - "start": 636, - "end": 637, + "start": 626, + "end": 627, "loc": { "start": { "line": 31, @@ -7862,8 +7562,8 @@ "updateContext": null }, "value": "=", - "start": 638, - "end": 639, + "start": 628, + "end": 629, "loc": { "start": { "line": 31, @@ -7887,8 +7587,8 @@ "postfix": false, "binop": null }, - "start": 640, - "end": 641, + "start": 630, + "end": 631, "loc": { "start": { "line": 31, @@ -7913,8 +7613,8 @@ "binop": null }, "value": "args", - "start": 641, - "end": 645, + "start": 631, + "end": 635, "loc": { "start": { "line": 31, @@ -7939,8 +7639,8 @@ "binop": null, "updateContext": null }, - "start": 645, - "end": 646, + "start": 635, + "end": 636, "loc": { "start": { "line": 31, @@ -7965,8 +7665,8 @@ "binop": null }, "value": "env", - "start": 647, - "end": 650, + "start": 637, + "end": 640, "loc": { "start": { "line": 31, @@ -7990,8 +7690,8 @@ "postfix": false, "binop": null }, - "start": 650, - "end": 651, + "start": 640, + "end": 641, "loc": { "start": { "line": 31, @@ -8016,8 +7716,8 @@ "binop": null, "updateContext": null }, - "start": 652, - "end": 654, + "start": 642, + "end": 644, "loc": { "start": { "line": 31, @@ -8041,8 +7741,8 @@ "postfix": false, "binop": null }, - "start": 655, - "end": 656, + "start": 645, + "end": 646, "loc": { "start": { "line": 31, @@ -8069,8 +7769,8 @@ "updateContext": null }, "value": "if", - "start": 659, - "end": 661, + "start": 649, + "end": 651, "loc": { "start": { "line": 32, @@ -8094,8 +7794,8 @@ "postfix": false, "binop": null }, - "start": 662, - "end": 663, + "start": 652, + "end": 653, "loc": { "start": { "line": 32, @@ -8120,8 +7820,8 @@ "binop": null }, "value": "args", - "start": 663, - "end": 667, + "start": 653, + "end": 657, "loc": { "start": { "line": 32, @@ -8146,8 +7846,8 @@ "binop": null, "updateContext": null }, - "start": 667, - "end": 668, + "start": 657, + "end": 658, "loc": { "start": { "line": 32, @@ -8172,8 +7872,8 @@ "binop": null }, "value": "length", - "start": 668, - "end": 674, + "start": 658, + "end": 664, "loc": { "start": { "line": 32, @@ -8199,8 +7899,8 @@ "updateContext": null }, "value": "!==", - "start": 675, - "end": 678, + "start": 665, + "end": 668, "loc": { "start": { "line": 32, @@ -8226,8 +7926,8 @@ "updateContext": null }, "value": 2, - "start": 679, - "end": 680, + "start": 669, + "end": 670, "loc": { "start": { "line": 32, @@ -8251,8 +7951,8 @@ "postfix": false, "binop": null }, - "start": 680, - "end": 681, + "start": 670, + "end": 671, "loc": { "start": { "line": 32, @@ -8276,8 +7976,8 @@ "postfix": false, "binop": null }, - "start": 682, - "end": 683, + "start": 672, + "end": 673, "loc": { "start": { "line": 32, @@ -8304,8 +8004,8 @@ "updateContext": null }, "value": "throw", - "start": 688, - "end": 693, + "start": 678, + "end": 683, "loc": { "start": { "line": 33, @@ -8332,8 +8032,8 @@ "updateContext": null }, "value": "new", - "start": 694, - "end": 697, + "start": 684, + "end": 687, "loc": { "start": { "line": 33, @@ -8358,8 +8058,8 @@ "binop": null }, "value": "SyntaxError", - "start": 698, - "end": 709, + "start": 688, + "end": 699, "loc": { "start": { "line": 33, @@ -8383,8 +8083,8 @@ "postfix": false, "binop": null }, - "start": 709, - "end": 710, + "start": 699, + "end": 700, "loc": { "start": { "line": 33, @@ -8410,8 +8110,8 @@ "updateContext": null }, "value": "Bad use of -=", - "start": 710, - "end": 725, + "start": 700, + "end": 715, "loc": { "start": { "line": 33, @@ -8435,8 +8135,8 @@ "postfix": false, "binop": null }, - "start": 725, - "end": 726, + "start": 715, + "end": 716, "loc": { "start": { "line": 33, @@ -8461,8 +8161,8 @@ "binop": null, "updateContext": null }, - "start": 726, - "end": 727, + "start": 716, + "end": 717, "loc": { "start": { "line": 33, @@ -8486,8 +8186,8 @@ "postfix": false, "binop": null }, - "start": 730, - "end": 731, + "start": 720, + "end": 721, "loc": { "start": { "line": 34, @@ -8514,8 +8214,8 @@ "updateContext": null }, "value": "const", - "start": 735, - "end": 740, + "start": 725, + "end": 730, "loc": { "start": { "line": 36, @@ -8540,8 +8240,8 @@ "binop": null }, "value": "inc", - "start": 741, - "end": 744, + "start": 731, + "end": 734, "loc": { "start": { "line": 36, @@ -8567,8 +8267,8 @@ "updateContext": null }, "value": "=", - "start": 745, - "end": 746, + "start": 735, + "end": 736, "loc": { "start": { "line": 36, @@ -8593,8 +8293,8 @@ "binop": null }, "value": "args", - "start": 747, - "end": 751, + "start": 737, + "end": 741, "loc": { "start": { "line": 36, @@ -8619,8 +8319,8 @@ "binop": null, "updateContext": null }, - "start": 751, - "end": 752, + "start": 741, + "end": 742, "loc": { "start": { "line": 36, @@ -8646,8 +8346,8 @@ "updateContext": null }, "value": 1, - "start": 752, - "end": 753, + "start": 742, + "end": 743, "loc": { "start": { "line": 36, @@ -8672,8 +8372,8 @@ "binop": null, "updateContext": null }, - "start": 753, - "end": 754, + "start": 743, + "end": 744, "loc": { "start": { "line": 36, @@ -8698,8 +8398,8 @@ "binop": null, "updateContext": null }, - "start": 754, - "end": 755, + "start": 744, + "end": 745, "loc": { "start": { "line": 36, @@ -8724,8 +8424,8 @@ "binop": null }, "value": "evaluate", - "start": 755, - "end": 763, + "start": 745, + "end": 753, "loc": { "start": { "line": 36, @@ -8749,8 +8449,8 @@ "postfix": false, "binop": null }, - "start": 763, - "end": 764, + "start": 753, + "end": 754, "loc": { "start": { "line": 36, @@ -8775,8 +8475,8 @@ "binop": null }, "value": "env", - "start": 764, - "end": 767, + "start": 754, + "end": 757, "loc": { "start": { "line": 36, @@ -8800,8 +8500,8 @@ "postfix": false, "binop": null }, - "start": 767, - "end": 768, + "start": 757, + "end": 758, "loc": { "start": { "line": 36, @@ -8826,8 +8526,8 @@ "binop": null, "updateContext": null }, - "start": 768, - "end": 769, + "start": 758, + "end": 759, "loc": { "start": { "line": 36, @@ -8854,8 +8554,8 @@ "updateContext": null }, "value": "return", - "start": 773, - "end": 779, + "start": 763, + "end": 769, "loc": { "start": { "line": 38, @@ -8880,8 +8580,8 @@ "binop": null }, "value": "incrementHelper", - "start": 780, - "end": 795, + "start": 770, + "end": 785, "loc": { "start": { "line": 38, @@ -8905,8 +8605,8 @@ "postfix": false, "binop": null }, - "start": 795, - "end": 796, + "start": 785, + "end": 786, "loc": { "start": { "line": 38, @@ -8931,8 +8631,8 @@ "binop": null }, "value": "args", - "start": 796, - "end": 800, + "start": 786, + "end": 790, "loc": { "start": { "line": 38, @@ -8957,8 +8657,8 @@ "binop": null, "updateContext": null }, - "start": 800, - "end": 801, + "start": 790, + "end": 791, "loc": { "start": { "line": 38, @@ -8984,8 +8684,8 @@ "updateContext": null }, "value": 0, - "start": 801, - "end": 802, + "start": 791, + "end": 792, "loc": { "start": { "line": 38, @@ -9010,8 +8710,8 @@ "binop": null, "updateContext": null }, - "start": 802, - "end": 803, + "start": 792, + "end": 793, "loc": { "start": { "line": 38, @@ -9036,8 +8736,8 @@ "binop": null, "updateContext": null }, - "start": 803, - "end": 804, + "start": 793, + "end": 794, "loc": { "start": { "line": 38, @@ -9062,8 +8762,8 @@ "binop": null }, "value": "env", - "start": 805, - "end": 808, + "start": 795, + "end": 798, "loc": { "start": { "line": 38, @@ -9088,8 +8788,8 @@ "binop": null, "updateContext": null }, - "start": 808, - "end": 809, + "start": 798, + "end": 799, "loc": { "start": { "line": 38, @@ -9115,8 +8815,8 @@ "updateContext": null }, "value": "-", - "start": 810, - "end": 811, + "start": 800, + "end": 801, "loc": { "start": { "line": 38, @@ -9141,8 +8841,8 @@ "binop": null }, "value": "inc", - "start": 811, - "end": 814, + "start": 801, + "end": 804, "loc": { "start": { "line": 38, @@ -9166,8 +8866,8 @@ "postfix": false, "binop": null }, - "start": 814, - "end": 815, + "start": 804, + "end": 805, "loc": { "start": { "line": 38, @@ -9192,8 +8892,8 @@ "binop": null, "updateContext": null }, - "start": 815, - "end": 816, + "start": 805, + "end": 806, "loc": { "start": { "line": 38, @@ -9217,8 +8917,8 @@ "postfix": false, "binop": null }, - "start": 817, - "end": 818, + "start": 807, + "end": 808, "loc": { "start": { "line": 39, @@ -9243,8 +8943,8 @@ "binop": null, "updateContext": null }, - "start": 818, - "end": 819, + "start": 808, + "end": 809, "loc": { "start": { "line": 39, @@ -9271,8 +8971,8 @@ "updateContext": null }, "value": "const", - "start": 821, - "end": 826, + "start": 811, + "end": 816, "loc": { "start": { "line": 41, @@ -9297,8 +8997,8 @@ "binop": null }, "value": "incrementHelper", - "start": 827, - "end": 842, + "start": 817, + "end": 832, "loc": { "start": { "line": 41, @@ -9324,8 +9024,8 @@ "updateContext": null }, "value": "=", - "start": 843, - "end": 844, + "start": 833, + "end": 834, "loc": { "start": { "line": 41, @@ -9349,8 +9049,8 @@ "postfix": false, "binop": null }, - "start": 845, - "end": 846, + "start": 835, + "end": 836, "loc": { "start": { "line": 41, @@ -9375,8 +9075,8 @@ "binop": null }, "value": "variable", - "start": 846, - "end": 854, + "start": 836, + "end": 844, "loc": { "start": { "line": 41, @@ -9401,8 +9101,8 @@ "binop": null, "updateContext": null }, - "start": 854, - "end": 855, + "start": 844, + "end": 845, "loc": { "start": { "line": 41, @@ -9427,8 +9127,8 @@ "binop": null }, "value": "env", - "start": 856, - "end": 859, + "start": 846, + "end": 849, "loc": { "start": { "line": 41, @@ -9453,8 +9153,8 @@ "binop": null, "updateContext": null }, - "start": 859, - "end": 860, + "start": 849, + "end": 850, "loc": { "start": { "line": 41, @@ -9479,8 +9179,8 @@ "binop": null }, "value": "inc", - "start": 861, - "end": 864, + "start": 851, + "end": 854, "loc": { "start": { "line": 41, @@ -9504,8 +9204,8 @@ "postfix": false, "binop": null }, - "start": 864, - "end": 865, + "start": 854, + "end": 855, "loc": { "start": { "line": 41, @@ -9530,8 +9230,8 @@ "binop": null, "updateContext": null }, - "start": 866, - "end": 868, + "start": 856, + "end": 858, "loc": { "start": { "line": 41, @@ -9555,8 +9255,8 @@ "postfix": false, "binop": null }, - "start": 869, - "end": 870, + "start": 859, + "end": 860, "loc": { "start": { "line": 41, @@ -9583,8 +9283,8 @@ "updateContext": null }, "value": "const", - "start": 873, - "end": 878, + "start": 863, + "end": 868, "loc": { "start": { "line": 42, @@ -9609,8 +9309,8 @@ "binop": null }, "value": "varValue", - "start": 879, - "end": 887, + "start": 869, + "end": 877, "loc": { "start": { "line": 42, @@ -9636,8 +9336,8 @@ "updateContext": null }, "value": "=", - "start": 888, - "end": 889, + "start": 878, + "end": 879, "loc": { "start": { "line": 42, @@ -9662,8 +9362,8 @@ "binop": null }, "value": "variable", - "start": 890, - "end": 898, + "start": 880, + "end": 888, "loc": { "start": { "line": 42, @@ -9688,8 +9388,8 @@ "binop": null, "updateContext": null }, - "start": 898, - "end": 899, + "start": 888, + "end": 889, "loc": { "start": { "line": 42, @@ -9714,8 +9414,8 @@ "binop": null }, "value": "evaluate", - "start": 899, - "end": 907, + "start": 889, + "end": 897, "loc": { "start": { "line": 42, @@ -9739,8 +9439,8 @@ "postfix": false, "binop": null }, - "start": 907, - "end": 908, + "start": 897, + "end": 898, "loc": { "start": { "line": 42, @@ -9765,8 +9465,8 @@ "binop": null }, "value": "env", - "start": 908, - "end": 911, + "start": 898, + "end": 901, "loc": { "start": { "line": 42, @@ -9790,8 +9490,8 @@ "postfix": false, "binop": null }, - "start": 911, - "end": 912, + "start": 901, + "end": 902, "loc": { "start": { "line": 42, @@ -9816,8 +9516,8 @@ "binop": null, "updateContext": null }, - "start": 912, - "end": 913, + "start": 902, + "end": 903, "loc": { "start": { "line": 42, @@ -9844,8 +9544,8 @@ "updateContext": null }, "value": "const", - "start": 917, - "end": 922, + "start": 907, + "end": 912, "loc": { "start": { "line": 44, @@ -9870,8 +9570,8 @@ "binop": null }, "value": "token", - "start": 923, - "end": 928, + "start": 913, + "end": 918, "loc": { "start": { "line": 44, @@ -9897,8 +9597,8 @@ "updateContext": null }, "value": "=", - "start": 929, - "end": 930, + "start": 919, + "end": 920, "loc": { "start": { "line": 44, @@ -9922,8 +9622,8 @@ "postfix": false, "binop": null }, - "start": 931, - "end": 932, + "start": 921, + "end": 922, "loc": { "start": { "line": 44, @@ -9948,8 +9648,8 @@ "binop": null }, "value": "type", - "start": 933, - "end": 937, + "start": 923, + "end": 927, "loc": { "start": { "line": 44, @@ -9974,8 +9674,8 @@ "binop": null, "updateContext": null }, - "start": 937, - "end": 938, + "start": 927, + "end": 928, "loc": { "start": { "line": 44, @@ -10001,8 +9701,8 @@ "updateContext": null }, "value": "value", - "start": 939, - "end": 946, + "start": 929, + "end": 936, "loc": { "start": { "line": 44, @@ -10027,8 +9727,8 @@ "binop": null, "updateContext": null }, - "start": 946, - "end": 947, + "start": 936, + "end": 937, "loc": { "start": { "line": 44, @@ -10053,8 +9753,8 @@ "binop": null }, "value": "value", - "start": 948, - "end": 953, + "start": 938, + "end": 943, "loc": { "start": { "line": 44, @@ -10079,8 +9779,8 @@ "binop": null, "updateContext": null }, - "start": 953, - "end": 954, + "start": 943, + "end": 944, "loc": { "start": { "line": 44, @@ -10105,8 +9805,8 @@ "binop": null }, "value": "varValue", - "start": 955, - "end": 963, + "start": 945, + "end": 953, "loc": { "start": { "line": 44, @@ -10132,8 +9832,8 @@ "updateContext": null }, "value": "+", - "start": 964, - "end": 965, + "start": 954, + "end": 955, "loc": { "start": { "line": 44, @@ -10158,8 +9858,8 @@ "binop": null }, "value": "inc", - "start": 966, - "end": 969, + "start": 956, + "end": 959, "loc": { "start": { "line": 44, @@ -10183,8 +9883,8 @@ "postfix": false, "binop": null }, - "start": 970, - "end": 971, + "start": 960, + "end": 961, "loc": { "start": { "line": 44, @@ -10209,8 +9909,8 @@ "binop": null, "updateContext": null }, - "start": 971, - "end": 972, + "start": 961, + "end": 962, "loc": { "start": { "line": 44, @@ -10237,8 +9937,8 @@ "updateContext": null }, "value": "const", - "start": 975, - "end": 980, + "start": 965, + "end": 970, "loc": { "start": { "line": 45, @@ -10263,8 +9963,8 @@ "binop": null }, "value": "newValue", - "start": 981, - "end": 989, + "start": 971, + "end": 979, "loc": { "start": { "line": 45, @@ -10290,8 +9990,8 @@ "updateContext": null }, "value": "=", - "start": 990, - "end": 991, + "start": 980, + "end": 981, "loc": { "start": { "line": 45, @@ -10318,8 +10018,8 @@ "updateContext": null }, "value": "new", - "start": 992, - "end": 995, + "start": 982, + "end": 985, "loc": { "start": { "line": 45, @@ -10344,8 +10044,8 @@ "binop": null }, "value": "Value", - "start": 996, - "end": 1001, + "start": 986, + "end": 991, "loc": { "start": { "line": 45, @@ -10369,8 +10069,8 @@ "postfix": false, "binop": null }, - "start": 1001, - "end": 1002, + "start": 991, + "end": 992, "loc": { "start": { "line": 45, @@ -10395,8 +10095,8 @@ "binop": null }, "value": "token", - "start": 1002, - "end": 1007, + "start": 992, + "end": 997, "loc": { "start": { "line": 45, @@ -10420,8 +10120,8 @@ "postfix": false, "binop": null }, - "start": 1007, - "end": 1008, + "start": 997, + "end": 998, "loc": { "start": { "line": 45, @@ -10446,8 +10146,8 @@ "binop": null, "updateContext": null }, - "start": 1008, - "end": 1009, + "start": 998, + "end": 999, "loc": { "start": { "line": 45, @@ -10474,8 +10174,8 @@ "updateContext": null }, "value": "return", - "start": 1013, - "end": 1019, + "start": 1003, + "end": 1009, "loc": { "start": { "line": 47, @@ -10500,8 +10200,8 @@ "binop": null }, "value": "SpecialForms", - "start": 1020, - "end": 1032, + "start": 1010, + "end": 1022, "loc": { "start": { "line": 47, @@ -10526,8 +10226,8 @@ "binop": null, "updateContext": null }, - "start": 1032, - "end": 1033, + "start": 1022, + "end": 1023, "loc": { "start": { "line": 47, @@ -10553,8 +10253,8 @@ "updateContext": null }, "value": "set", - "start": 1033, - "end": 1038, + "start": 1023, + "end": 1028, "loc": { "start": { "line": 47, @@ -10579,8 +10279,8 @@ "binop": null, "updateContext": null }, - "start": 1038, - "end": 1039, + "start": 1028, + "end": 1029, "loc": { "start": { "line": 47, @@ -10604,8 +10304,8 @@ "postfix": false, "binop": null }, - "start": 1039, - "end": 1040, + "start": 1029, + "end": 1030, "loc": { "start": { "line": 47, @@ -10630,8 +10330,8 @@ "binop": null, "updateContext": null }, - "start": 1040, - "end": 1041, + "start": 1030, + "end": 1031, "loc": { "start": { "line": 47, @@ -10656,8 +10356,8 @@ "binop": null }, "value": "variable", - "start": 1041, - "end": 1049, + "start": 1031, + "end": 1039, "loc": { "start": { "line": 47, @@ -10682,8 +10382,8 @@ "binop": null, "updateContext": null }, - "start": 1049, - "end": 1050, + "start": 1039, + "end": 1040, "loc": { "start": { "line": 47, @@ -10708,8 +10408,8 @@ "binop": null }, "value": "newValue", - "start": 1051, - "end": 1059, + "start": 1041, + "end": 1049, "loc": { "start": { "line": 47, @@ -10734,8 +10434,8 @@ "binop": null, "updateContext": null }, - "start": 1059, - "end": 1060, + "start": 1049, + "end": 1050, "loc": { "start": { "line": 47, @@ -10760,8 +10460,8 @@ "binop": null, "updateContext": null }, - "start": 1060, - "end": 1061, + "start": 1050, + "end": 1051, "loc": { "start": { "line": 47, @@ -10786,8 +10486,8 @@ "binop": null }, "value": "env", - "start": 1062, - "end": 1065, + "start": 1052, + "end": 1055, "loc": { "start": { "line": 47, @@ -10811,8 +10511,8 @@ "postfix": false, "binop": null }, - "start": 1065, - "end": 1066, + "start": 1055, + "end": 1056, "loc": { "start": { "line": 47, @@ -10837,8 +10537,8 @@ "binop": null, "updateContext": null }, - "start": 1066, - "end": 1067, + "start": 1056, + "end": 1057, "loc": { "start": { "line": 47, @@ -10862,8 +10562,8 @@ "postfix": false, "binop": null }, - "start": 1068, - "end": 1069, + "start": 1058, + "end": 1059, "loc": { "start": { "line": 48, @@ -10888,8 +10588,8 @@ "binop": null, "updateContext": null }, - "start": 1069, - "end": 1070, + "start": 1059, + "end": 1060, "loc": { "start": { "line": 48, @@ -10914,8 +10614,8 @@ "binop": null, "updateContext": null }, - "start": 1071, - "end": 1071, + "start": 1061, + "end": 1061, "loc": { "start": { "line": 49, diff --git a/docs/ast/source/interp/ast.js.json b/docs/ast/source/interp/ast.js.json index d6f6741..84a75d5 100644 --- a/docs/ast/source/interp/ast.js.json +++ b/docs/ast/source/interp/ast.js.json @@ -1,37 +1,37 @@ { "type": "File", "start": 0, - "end": 2915, + "end": 2888, "loc": { "start": { "line": 1, "column": 0 }, "end": { - "line": 127, + "line": 125, "column": 0 } }, "program": { "type": "Program", "start": 0, - "end": 2915, + "end": 2888, "loc": { "start": { "line": 1, "column": 0 }, "end": { - "line": 127, + "line": 125, "column": 0 } }, "sourceType": "module", "body": [ { - "type": "VariableDeclaration", + "type": "ImportDeclaration", "start": 19, - "end": 54, + "end": 49, "loc": { "start": { "line": 2, @@ -39,100 +39,65 @@ }, "end": { "line": 2, - "column": 35 + "column": 30 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 25, - "end": 53, + "type": "ImportDefaultSpecifier", + "start": 26, + "end": 33, "loc": { "start": { "line": 2, - "column": 6 + "column": 7 }, "end": { "line": 2, - "column": 34 + "column": 14 } }, - "id": { + "local": { "type": "Identifier", - "start": 25, - "end": 32, + "start": 26, + "end": 33, "loc": { "start": { "line": 2, - "column": 6 + "column": 7 }, "end": { "line": 2, - "column": 13 + "column": 14 }, "identifierName": "xRegExp" }, "name": "xRegExp", "leadingComments": null }, - "init": { - "type": "CallExpression", - "start": 35, - "end": 53, - "loc": { - "start": { - "line": 2, - "column": 16 - }, - "end": { - "line": 2, - "column": 34 - } - }, - "callee": { - "type": "Identifier", - "start": 35, - "end": 42, - "loc": { - "start": { - "line": 2, - "column": 16 - }, - "end": { - "line": 2, - "column": 23 - }, - "identifierName": "require" - }, - "name": "require" - }, - "arguments": [ - { - "type": "StringLiteral", - "start": 43, - "end": 52, - "loc": { - "start": { - "line": 2, - "column": 24 - }, - "end": { - "line": 2, - "column": 33 - } - }, - "extra": { - "rawValue": "xregexp", - "raw": "\"xregexp\"" - }, - "value": "xregexp" - } - ] - }, "leadingComments": null } ], - "kind": "const", + "source": { + "type": "StringLiteral", + "start": 39, + "end": 48, + "loc": { + "start": { + "line": 2, + "column": 20 + }, + "end": { + "line": 2, + "column": 29 + } + }, + "extra": { + "rawValue": "xregexp", + "raw": "\"xregexp\"" + }, + "value": "xregexp" + }, "leadingComments": [ { "type": "CommentLine", @@ -153,9 +118,9 @@ ] }, { - "type": "VariableDeclaration", - "start": 55, - "end": 92, + "type": "ImportDeclaration", + "start": 50, + "end": 82, "loc": { "start": { "line": 3, @@ -163,103 +128,68 @@ }, "end": { "line": 3, - "column": 37 + "column": 32 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 61, - "end": 91, + "type": "ImportDefaultSpecifier", + "start": 57, + "end": 62, "loc": { "start": { "line": 3, - "column": 6 + "column": 7 }, "end": { "line": 3, - "column": 36 + "column": 12 } }, - "id": { + "local": { "type": "Identifier", - "start": 61, - "end": 66, + "start": 57, + "end": 62, "loc": { "start": { "line": 3, - "column": 6 + "column": 7 }, "end": { "line": 3, - "column": 11 + "column": 12 }, "identifierName": "utils" }, "name": "utils" - }, - "init": { - "type": "CallExpression", - "start": 69, - "end": 91, - "loc": { - "start": { - "line": 3, - "column": 14 - }, - "end": { - "line": 3, - "column": 36 - } - }, - "callee": { - "type": "Identifier", - "start": 69, - "end": 76, - "loc": { - "start": { - "line": 3, - "column": 14 - }, - "end": { - "line": 3, - "column": 21 - }, - "identifierName": "require" - }, - "name": "require" - }, - "arguments": [ - { - "type": "StringLiteral", - "start": 77, - "end": 90, - "loc": { - "start": { - "line": 3, - "column": 22 - }, - "end": { - "line": 3, - "column": 35 - } - }, - "extra": { - "rawValue": "../utils.js", - "raw": "\"../utils.js\"" - }, - "value": "../utils.js" - } - ] } } ], - "kind": "const" + "source": { + "type": "StringLiteral", + "start": 68, + "end": 81, + "loc": { + "start": { + "line": 3, + "column": 18 + }, + "end": { + "line": 3, + "column": 31 + } + }, + "extra": { + "rawValue": "../utils.js", + "raw": "\"../utils.js\"" + }, + "value": "../utils.js" + } }, { - "type": "VariableDeclaration", - "start": 94, - "end": 147, + "type": "ImportDeclaration", + "start": 84, + "end": 132, "loc": { "start": { "line": 5, @@ -267,158 +197,85 @@ }, "end": { "line": 5, - "column": 53 + "column": 48 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 100, - "end": 146, + "type": "ImportSpecifier", + "start": 93, + "end": 105, "loc": { "start": { "line": 5, - "column": 6 + "column": 9 }, "end": { "line": 5, - "column": 52 + "column": 21 } }, - "id": { - "type": "ObjectPattern", - "start": 100, - "end": 116, + "imported": { + "type": "Identifier", + "start": 93, + "end": 105, "loc": { "start": { "line": 5, - "column": 6 + "column": 9 }, "end": { "line": 5, - "column": 22 - } + "column": 21 + }, + "identifierName": "SpecialForms" }, - "properties": [ - { - "type": "ObjectProperty", - "start": 102, - "end": 114, - "loc": { - "start": { - "line": 5, - "column": 8 - }, - "end": { - "line": 5, - "column": 20 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 102, - "end": 114, - "loc": { - "start": { - "line": 5, - "column": 8 - }, - "end": { - "line": 5, - "column": 20 - }, - "identifierName": "SpecialForms" - }, - "name": "SpecialForms" - }, - "value": { - "type": "Identifier", - "start": 102, - "end": 114, - "loc": { - "start": { - "line": 5, - "column": 8 - }, - "end": { - "line": 5, - "column": 20 - }, - "identifierName": "SpecialForms" - }, - "name": "SpecialForms" - }, - "extra": { - "shorthand": true - } - } - ] + "name": "SpecialForms" }, - "init": { - "type": "CallExpression", - "start": 119, - "end": 146, + "local": { + "type": "Identifier", + "start": 93, + "end": 105, "loc": { "start": { "line": 5, - "column": 25 + "column": 9 }, "end": { "line": 5, - "column": 52 - } - }, - "callee": { - "type": "Identifier", - "start": 119, - "end": 126, - "loc": { - "start": { - "line": 5, - "column": 25 - }, - "end": { - "line": 5, - "column": 32 - }, - "identifierName": "require" + "column": 21 }, - "name": "require" + "identifierName": "SpecialForms" }, - "arguments": [ - { - "type": "StringLiteral", - "start": 127, - "end": 145, - "loc": { - "start": { - "line": 5, - "column": 33 - }, - "end": { - "line": 5, - "column": 51 - } - }, - "extra": { - "rawValue": "./environment.js", - "raw": "\"./environment.js\"" - }, - "value": "./environment.js" - } - ] + "name": "SpecialForms" } } ], - "kind": "const" + "source": { + "type": "StringLiteral", + "start": 113, + "end": 131, + "loc": { + "start": { + "line": 5, + "column": 29 + }, + "end": { + "line": 5, + "column": 47 + } + }, + "extra": { + "rawValue": "./environment.js", + "raw": "\"./environment.js\"" + }, + "value": "./environment.js" + } }, { - "type": "ClassDeclaration", - "start": 149, - "end": 289, + "type": "Identifier", + "start": 134, + "end": 274, "loc": { "start": { "line": 7, @@ -431,8 +288,8 @@ }, "id": { "type": "Identifier", - "start": 155, - "end": 160, + "start": 140, + "end": 145, "loc": { "start": { "line": 7, @@ -449,8 +306,8 @@ "superClass": null, "body": { "type": "ClassBody", - "start": 161, - "end": 289, + "start": 146, + "end": 274, "loc": { "start": { "line": 7, @@ -464,8 +321,8 @@ "body": [ { "type": "ClassMethod", - "start": 165, - "end": 244, + "start": 150, + "end": 229, "loc": { "start": { "line": 8, @@ -480,8 +337,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 165, - "end": 176, + "start": 150, + "end": 161, "loc": { "start": { "line": 8, @@ -503,8 +360,8 @@ "params": [ { "type": "Identifier", - "start": 177, - "end": 182, + "start": 162, + "end": 167, "loc": { "start": { "line": 8, @@ -521,8 +378,8 @@ ], "body": { "type": "BlockStatement", - "start": 184, - "end": 244, + "start": 169, + "end": 229, "loc": { "start": { "line": 8, @@ -536,8 +393,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 190, - "end": 210, + "start": 175, + "end": 195, "loc": { "start": { "line": 9, @@ -550,8 +407,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 190, - "end": 209, + "start": 175, + "end": 194, "loc": { "start": { "line": 9, @@ -565,8 +422,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 190, - "end": 199, + "start": 175, + "end": 184, "loc": { "start": { "line": 9, @@ -579,8 +436,8 @@ }, "object": { "type": "ThisExpression", - "start": 190, - "end": 194, + "start": 175, + "end": 179, "loc": { "start": { "line": 9, @@ -594,8 +451,8 @@ }, "property": { "type": "Identifier", - "start": 195, - "end": 199, + "start": 180, + "end": 184, "loc": { "start": { "line": 9, @@ -613,8 +470,8 @@ }, "right": { "type": "StringLiteral", - "start": 202, - "end": 209, + "start": 187, + "end": 194, "loc": { "start": { "line": 9, @@ -635,8 +492,8 @@ }, { "type": "ExpressionStatement", - "start": 215, - "end": 240, + "start": 200, + "end": 225, "loc": { "start": { "line": 10, @@ -649,8 +506,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 215, - "end": 239, + "start": 200, + "end": 224, "loc": { "start": { "line": 10, @@ -664,8 +521,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 215, - "end": 225, + "start": 200, + "end": 210, "loc": { "start": { "line": 10, @@ -678,8 +535,8 @@ }, "object": { "type": "ThisExpression", - "start": 215, - "end": 219, + "start": 200, + "end": 204, "loc": { "start": { "line": 10, @@ -693,8 +550,8 @@ }, "property": { "type": "Identifier", - "start": 220, - "end": 225, + "start": 205, + "end": 210, "loc": { "start": { "line": 10, @@ -712,8 +569,8 @@ }, "right": { "type": "MemberExpression", - "start": 228, - "end": 239, + "start": 213, + "end": 224, "loc": { "start": { "line": 10, @@ -726,8 +583,8 @@ }, "object": { "type": "Identifier", - "start": 228, - "end": 233, + "start": 213, + "end": 218, "loc": { "start": { "line": 10, @@ -743,8 +600,8 @@ }, "property": { "type": "Identifier", - "start": 234, - "end": 239, + "start": 219, + "end": 224, "loc": { "start": { "line": 10, @@ -768,8 +625,8 @@ }, { "type": "ClassMethod", - "start": 248, - "end": 287, + "start": 233, + "end": 272, "loc": { "start": { "line": 13, @@ -784,8 +641,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 248, - "end": 256, + "start": 233, + "end": 241, "loc": { "start": { "line": 13, @@ -807,8 +664,8 @@ "params": [], "body": { "type": "BlockStatement", - "start": 259, - "end": 287, + "start": 244, + "end": 272, "loc": { "start": { "line": 13, @@ -822,8 +679,8 @@ "body": [ { "type": "ReturnStatement", - "start": 265, - "end": 283, + "start": 250, + "end": 268, "loc": { "start": { "line": 14, @@ -836,8 +693,8 @@ }, "argument": { "type": "MemberExpression", - "start": 272, - "end": 282, + "start": 257, + "end": 267, "loc": { "start": { "line": 14, @@ -850,8 +707,8 @@ }, "object": { "type": "ThisExpression", - "start": 272, - "end": 276, + "start": 257, + "end": 261, "loc": { "start": { "line": 14, @@ -865,8 +722,8 @@ }, "property": { "type": "Identifier", - "start": 277, - "end": 282, + "start": 262, + "end": 267, "loc": { "start": { "line": 14, @@ -888,12 +745,15 @@ } } ] - } + }, + "name": "_", + "leadingComments": [], + "trailingComments": [] }, { - "type": "ClassDeclaration", - "start": 291, - "end": 847, + "type": "Identifier", + "start": 276, + "end": 832, "loc": { "start": { "line": 18, @@ -906,8 +766,8 @@ }, "id": { "type": "Identifier", - "start": 297, - "end": 301, + "start": 282, + "end": 286, "loc": { "start": { "line": 18, @@ -924,8 +784,8 @@ "superClass": null, "body": { "type": "ClassBody", - "start": 302, - "end": 847, + "start": 287, + "end": 832, "loc": { "start": { "line": 18, @@ -939,8 +799,8 @@ "body": [ { "type": "ClassMethod", - "start": 306, - "end": 383, + "start": 291, + "end": 368, "loc": { "start": { "line": 19, @@ -955,8 +815,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 306, - "end": 317, + "start": 291, + "end": 302, "loc": { "start": { "line": 19, @@ -978,8 +838,8 @@ "params": [ { "type": "Identifier", - "start": 318, - "end": 323, + "start": 303, + "end": 308, "loc": { "start": { "line": 19, @@ -996,8 +856,8 @@ ], "body": { "type": "BlockStatement", - "start": 325, - "end": 383, + "start": 310, + "end": 368, "loc": { "start": { "line": 19, @@ -1011,8 +871,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 331, - "end": 350, + "start": 316, + "end": 335, "loc": { "start": { "line": 20, @@ -1025,8 +885,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 331, - "end": 349, + "start": 316, + "end": 334, "loc": { "start": { "line": 20, @@ -1040,8 +900,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 331, - "end": 340, + "start": 316, + "end": 325, "loc": { "start": { "line": 20, @@ -1054,8 +914,8 @@ }, "object": { "type": "ThisExpression", - "start": 331, - "end": 335, + "start": 316, + "end": 320, "loc": { "start": { "line": 20, @@ -1069,8 +929,8 @@ }, "property": { "type": "Identifier", - "start": 336, - "end": 340, + "start": 321, + "end": 325, "loc": { "start": { "line": 20, @@ -1088,8 +948,8 @@ }, "right": { "type": "StringLiteral", - "start": 343, - "end": 349, + "start": 328, + "end": 334, "loc": { "start": { "line": 20, @@ -1110,8 +970,8 @@ }, { "type": "ExpressionStatement", - "start": 355, - "end": 379, + "start": 340, + "end": 364, "loc": { "start": { "line": 21, @@ -1124,8 +984,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 355, - "end": 378, + "start": 340, + "end": 363, "loc": { "start": { "line": 21, @@ -1139,8 +999,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 355, - "end": 364, + "start": 340, + "end": 349, "loc": { "start": { "line": 21, @@ -1153,8 +1013,8 @@ }, "object": { "type": "ThisExpression", - "start": 355, - "end": 359, + "start": 340, + "end": 344, "loc": { "start": { "line": 21, @@ -1168,8 +1028,8 @@ }, "property": { "type": "Identifier", - "start": 360, - "end": 364, + "start": 345, + "end": 349, "loc": { "start": { "line": 21, @@ -1187,8 +1047,8 @@ }, "right": { "type": "MemberExpression", - "start": 367, - "end": 378, + "start": 352, + "end": 363, "loc": { "start": { "line": 21, @@ -1201,8 +1061,8 @@ }, "object": { "type": "Identifier", - "start": 367, - "end": 372, + "start": 352, + "end": 357, "loc": { "start": { "line": 21, @@ -1218,8 +1078,8 @@ }, "property": { "type": "Identifier", - "start": 373, - "end": 378, + "start": 358, + "end": 363, "loc": { "start": { "line": 21, @@ -1243,8 +1103,8 @@ }, { "type": "ClassMethod", - "start": 387, - "end": 845, + "start": 372, + "end": 830, "loc": { "start": { "line": 24, @@ -1259,8 +1119,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 387, - "end": 395, + "start": 372, + "end": 380, "loc": { "start": { "line": 24, @@ -1282,8 +1142,8 @@ "params": [ { "type": "Identifier", - "start": 396, - "end": 399, + "start": 381, + "end": 384, "loc": { "start": { "line": 24, @@ -1300,8 +1160,8 @@ ], "body": { "type": "BlockStatement", - "start": 401, - "end": 845, + "start": 386, + "end": 830, "loc": { "start": { "line": 24, @@ -1315,8 +1175,8 @@ "body": [ { "type": "IfStatement", - "start": 423, - "end": 841, + "start": 408, + "end": 826, "loc": { "start": { "line": 26, @@ -1329,8 +1189,8 @@ }, "test": { "type": "BinaryExpression", - "start": 427, - "end": 443, + "start": 412, + "end": 428, "loc": { "start": { "line": 26, @@ -1343,8 +1203,8 @@ }, "left": { "type": "MemberExpression", - "start": 427, - "end": 436, + "start": 412, + "end": 421, "loc": { "start": { "line": 26, @@ -1357,8 +1217,8 @@ }, "object": { "type": "ThisExpression", - "start": 427, - "end": 431, + "start": 412, + "end": 416, "loc": { "start": { "line": 26, @@ -1373,8 +1233,8 @@ }, "property": { "type": "Identifier", - "start": 432, - "end": 436, + "start": 417, + "end": 421, "loc": { "start": { "line": 26, @@ -1394,8 +1254,8 @@ "operator": "in", "right": { "type": "Identifier", - "start": 440, - "end": 443, + "start": 425, + "end": 428, "loc": { "start": { "line": 26, @@ -1413,8 +1273,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 445, - "end": 515, + "start": 430, + "end": 500, "loc": { "start": { "line": 26, @@ -1428,8 +1288,8 @@ "body": [ { "type": "ReturnStatement", - "start": 453, - "end": 475, + "start": 438, + "end": 460, "loc": { "start": { "line": 27, @@ -1442,8 +1302,8 @@ }, "argument": { "type": "MemberExpression", - "start": 460, - "end": 474, + "start": 445, + "end": 459, "loc": { "start": { "line": 27, @@ -1456,8 +1316,8 @@ }, "object": { "type": "Identifier", - "start": 460, - "end": 463, + "start": 445, + "end": 448, "loc": { "start": { "line": 27, @@ -1473,8 +1333,8 @@ }, "property": { "type": "MemberExpression", - "start": 464, - "end": 473, + "start": 449, + "end": 458, "loc": { "start": { "line": 27, @@ -1487,8 +1347,8 @@ }, "object": { "type": "ThisExpression", - "start": 464, - "end": 468, + "start": 449, + "end": 453, "loc": { "start": { "line": 27, @@ -1502,8 +1362,8 @@ }, "property": { "type": "Identifier", - "start": 469, - "end": 473, + "start": 454, + "end": 458, "loc": { "start": { "line": 27, @@ -1525,8 +1385,8 @@ { "type": "CommentLine", "value": " Variable in const scope", - "start": 483, - "end": 509, + "start": 468, + "end": 494, "loc": { "start": { "line": 29, @@ -1545,8 +1405,8 @@ }, "alternate": { "type": "IfStatement", - "start": 521, - "end": 841, + "start": 506, + "end": 826, "loc": { "start": { "line": 30, @@ -1559,8 +1419,8 @@ }, "test": { "type": "BinaryExpression", - "start": 525, - "end": 554, + "start": 510, + "end": 539, "loc": { "start": { "line": 30, @@ -1573,8 +1433,8 @@ }, "left": { "type": "MemberExpression", - "start": 525, - "end": 534, + "start": 510, + "end": 519, "loc": { "start": { "line": 30, @@ -1587,8 +1447,8 @@ }, "object": { "type": "ThisExpression", - "start": 525, - "end": 529, + "start": 510, + "end": 514, "loc": { "start": { "line": 30, @@ -1602,8 +1462,8 @@ }, "property": { "type": "Identifier", - "start": 530, - "end": 534, + "start": 515, + "end": 519, "loc": { "start": { "line": 30, @@ -1622,8 +1482,8 @@ "operator": "in", "right": { "type": "MemberExpression", - "start": 538, - "end": 554, + "start": 523, + "end": 539, "loc": { "start": { "line": 30, @@ -1636,8 +1496,8 @@ }, "object": { "type": "Identifier", - "start": 538, - "end": 541, + "start": 523, + "end": 526, "loc": { "start": { "line": 30, @@ -1653,8 +1513,8 @@ }, "property": { "type": "StringLiteral", - "start": 542, - "end": 553, + "start": 527, + "end": 538, "loc": { "start": { "line": 30, @@ -1676,8 +1536,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 556, - "end": 663, + "start": 541, + "end": 648, "loc": { "start": { "line": 30, @@ -1691,8 +1551,8 @@ "body": [ { "type": "ReturnStatement", - "start": 564, - "end": 599, + "start": 549, + "end": 584, "loc": { "start": { "line": 31, @@ -1705,8 +1565,8 @@ }, "argument": { "type": "MemberExpression", - "start": 571, - "end": 598, + "start": 556, + "end": 583, "loc": { "start": { "line": 31, @@ -1719,8 +1579,8 @@ }, "object": { "type": "MemberExpression", - "start": 571, - "end": 587, + "start": 556, + "end": 572, "loc": { "start": { "line": 31, @@ -1733,8 +1593,8 @@ }, "object": { "type": "Identifier", - "start": 571, - "end": 574, + "start": 556, + "end": 559, "loc": { "start": { "line": 31, @@ -1750,8 +1610,8 @@ }, "property": { "type": "StringLiteral", - "start": 575, - "end": 586, + "start": 560, + "end": 571, "loc": { "start": { "line": 31, @@ -1772,8 +1632,8 @@ }, "property": { "type": "MemberExpression", - "start": 588, - "end": 597, + "start": 573, + "end": 582, "loc": { "start": { "line": 31, @@ -1786,8 +1646,8 @@ }, "object": { "type": "ThisExpression", - "start": 588, - "end": 592, + "start": 573, + "end": 577, "loc": { "start": { "line": 31, @@ -1801,8 +1661,8 @@ }, "property": { "type": "Identifier", - "start": 593, - "end": 597, + "start": 578, + "end": 582, "loc": { "start": { "line": 31, @@ -1824,8 +1684,8 @@ { "type": "CommentLine", "value": " Object variable referenced without using 'this'", - "start": 607, - "end": 657, + "start": 592, + "end": 642, "loc": { "start": { "line": 33, @@ -1844,8 +1704,8 @@ }, "alternate": { "type": "IfStatement", - "start": 669, - "end": 841, + "start": 654, + "end": 826, "loc": { "start": { "line": 34, @@ -1858,8 +1718,8 @@ }, "test": { "type": "LogicalExpression", - "start": 673, - "end": 714, + "start": 658, + "end": 699, "loc": { "start": { "line": 34, @@ -1872,8 +1732,8 @@ }, "left": { "type": "BinaryExpression", - "start": 673, - "end": 686, + "start": 658, + "end": 671, "loc": { "start": { "line": 34, @@ -1886,8 +1746,8 @@ }, "left": { "type": "StringLiteral", - "start": 673, - "end": 679, + "start": 658, + "end": 664, "loc": { "start": { "line": 34, @@ -1907,8 +1767,8 @@ "operator": "in", "right": { "type": "Identifier", - "start": 683, - "end": 686, + "start": 668, + "end": 671, "loc": { "start": { "line": 34, @@ -1926,8 +1786,8 @@ "operator": "&&", "right": { "type": "BinaryExpression", - "start": 690, - "end": 714, + "start": 675, + "end": 699, "loc": { "start": { "line": 34, @@ -1940,8 +1800,8 @@ }, "left": { "type": "MemberExpression", - "start": 690, - "end": 699, + "start": 675, + "end": 684, "loc": { "start": { "line": 34, @@ -1954,8 +1814,8 @@ }, "object": { "type": "ThisExpression", - "start": 690, - "end": 694, + "start": 675, + "end": 679, "loc": { "start": { "line": 34, @@ -1969,8 +1829,8 @@ }, "property": { "type": "Identifier", - "start": 695, - "end": 699, + "start": 680, + "end": 684, "loc": { "start": { "line": 34, @@ -1989,8 +1849,8 @@ "operator": "in", "right": { "type": "MemberExpression", - "start": 703, - "end": 714, + "start": 688, + "end": 699, "loc": { "start": { "line": 34, @@ -2003,8 +1863,8 @@ }, "object": { "type": "Identifier", - "start": 703, - "end": 706, + "start": 688, + "end": 691, "loc": { "start": { "line": 34, @@ -2020,8 +1880,8 @@ }, "property": { "type": "StringLiteral", - "start": 707, - "end": 713, + "start": 692, + "end": 698, "loc": { "start": { "line": 34, @@ -2044,8 +1904,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 716, - "end": 760, + "start": 701, + "end": 745, "loc": { "start": { "line": 34, @@ -2059,8 +1919,8 @@ "body": [ { "type": "ReturnStatement", - "start": 724, - "end": 754, + "start": 709, + "end": 739, "loc": { "start": { "line": 35, @@ -2073,8 +1933,8 @@ }, "argument": { "type": "MemberExpression", - "start": 731, - "end": 753, + "start": 716, + "end": 738, "loc": { "start": { "line": 35, @@ -2087,8 +1947,8 @@ }, "object": { "type": "MemberExpression", - "start": 731, - "end": 742, + "start": 716, + "end": 727, "loc": { "start": { "line": 35, @@ -2101,8 +1961,8 @@ }, "object": { "type": "Identifier", - "start": 731, - "end": 734, + "start": 716, + "end": 719, "loc": { "start": { "line": 35, @@ -2118,8 +1978,8 @@ }, "property": { "type": "StringLiteral", - "start": 735, - "end": 741, + "start": 720, + "end": 726, "loc": { "start": { "line": 35, @@ -2140,8 +2000,8 @@ }, "property": { "type": "MemberExpression", - "start": 743, - "end": 752, + "start": 728, + "end": 737, "loc": { "start": { "line": 35, @@ -2154,8 +2014,8 @@ }, "object": { "type": "ThisExpression", - "start": 743, - "end": 747, + "start": 728, + "end": 732, "loc": { "start": { "line": 35, @@ -2169,8 +2029,8 @@ }, "property": { "type": "Identifier", - "start": 748, - "end": 752, + "start": 733, + "end": 737, "loc": { "start": { "line": 35, @@ -2194,8 +2054,8 @@ }, "alternate": { "type": "BlockStatement", - "start": 766, - "end": 841, + "start": 751, + "end": 826, "loc": { "start": { "line": 36, @@ -2209,8 +2069,8 @@ "body": [ { "type": "ThrowStatement", - "start": 774, - "end": 835, + "start": 759, + "end": 820, "loc": { "start": { "line": 37, @@ -2223,8 +2083,8 @@ }, "argument": { "type": "NewExpression", - "start": 780, - "end": 834, + "start": 765, + "end": 819, "loc": { "start": { "line": 37, @@ -2237,8 +2097,8 @@ }, "callee": { "type": "Identifier", - "start": 784, - "end": 798, + "start": 769, + "end": 783, "loc": { "start": { "line": 37, @@ -2255,8 +2115,8 @@ "arguments": [ { "type": "TemplateLiteral", - "start": 799, - "end": 833, + "start": 784, + "end": 818, "loc": { "start": { "line": 37, @@ -2270,8 +2130,8 @@ "expressions": [ { "type": "MemberExpression", - "start": 822, - "end": 831, + "start": 807, + "end": 816, "loc": { "start": { "line": 37, @@ -2284,8 +2144,8 @@ }, "object": { "type": "ThisExpression", - "start": 822, - "end": 826, + "start": 807, + "end": 811, "loc": { "start": { "line": 37, @@ -2299,8 +2159,8 @@ }, "property": { "type": "Identifier", - "start": 827, - "end": 831, + "start": 812, + "end": 816, "loc": { "start": { "line": 37, @@ -2320,8 +2180,8 @@ "quasis": [ { "type": "TemplateElement", - "start": 800, - "end": 820, + "start": 785, + "end": 805, "loc": { "start": { "line": 37, @@ -2340,8 +2200,8 @@ }, { "type": "TemplateElement", - "start": 832, - "end": 832, + "start": 817, + "end": 817, "loc": { "start": { "line": 37, @@ -2372,8 +2232,8 @@ { "type": "CommentLine", "value": " Variable", - "start": 407, - "end": 418, + "start": 392, + "end": 403, "loc": { "start": { "line": 25, @@ -2392,12 +2252,15 @@ } } ] - } + }, + "name": "_", + "leadingComments": [], + "trailingComments": [] }, { - "type": "ClassDeclaration", - "start": 849, - "end": 2662, + "type": "Identifier", + "start": 834, + "end": 2647, "loc": { "start": { "line": 42, @@ -2410,8 +2273,8 @@ }, "id": { "type": "Identifier", - "start": 855, - "end": 860, + "start": 840, + "end": 845, "loc": { "start": { "line": 42, @@ -2428,8 +2291,8 @@ "superClass": null, "body": { "type": "ClassBody", - "start": 861, - "end": 2662, + "start": 846, + "end": 2647, "loc": { "start": { "line": 42, @@ -2443,8 +2306,8 @@ "body": [ { "type": "ClassMethod", - "start": 865, - "end": 959, + "start": 850, + "end": 944, "loc": { "start": { "line": 43, @@ -2459,8 +2322,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 865, - "end": 876, + "start": 850, + "end": 861, "loc": { "start": { "line": 43, @@ -2482,8 +2345,8 @@ "params": [ { "type": "Identifier", - "start": 877, - "end": 881, + "start": 862, + "end": 866, "loc": { "start": { "line": 43, @@ -2500,8 +2363,8 @@ ], "body": { "type": "BlockStatement", - "start": 883, - "end": 959, + "start": 868, + "end": 944, "loc": { "start": { "line": 43, @@ -2515,8 +2378,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 889, - "end": 909, + "start": 874, + "end": 894, "loc": { "start": { "line": 44, @@ -2529,8 +2392,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 889, - "end": 908, + "start": 874, + "end": 893, "loc": { "start": { "line": 44, @@ -2544,8 +2407,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 889, - "end": 898, + "start": 874, + "end": 883, "loc": { "start": { "line": 44, @@ -2558,8 +2421,8 @@ }, "object": { "type": "ThisExpression", - "start": 889, - "end": 893, + "start": 874, + "end": 878, "loc": { "start": { "line": 44, @@ -2573,8 +2436,8 @@ }, "property": { "type": "Identifier", - "start": 894, - "end": 898, + "start": 879, + "end": 883, "loc": { "start": { "line": 44, @@ -2592,8 +2455,8 @@ }, "right": { "type": "StringLiteral", - "start": 901, - "end": 908, + "start": 886, + "end": 893, "loc": { "start": { "line": 44, @@ -2614,8 +2477,8 @@ }, { "type": "ExpressionStatement", - "start": 914, - "end": 935, + "start": 899, + "end": 920, "loc": { "start": { "line": 45, @@ -2628,8 +2491,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 914, - "end": 934, + "start": 899, + "end": 919, "loc": { "start": { "line": 45, @@ -2643,8 +2506,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 914, - "end": 927, + "start": 899, + "end": 912, "loc": { "start": { "line": 45, @@ -2657,8 +2520,8 @@ }, "object": { "type": "ThisExpression", - "start": 914, - "end": 918, + "start": 899, + "end": 903, "loc": { "start": { "line": 45, @@ -2672,8 +2535,8 @@ }, "property": { "type": "Identifier", - "start": 919, - "end": 927, + "start": 904, + "end": 912, "loc": { "start": { "line": 45, @@ -2691,8 +2554,8 @@ }, "right": { "type": "Identifier", - "start": 930, - "end": 934, + "start": 915, + "end": 919, "loc": { "start": { "line": 45, @@ -2710,8 +2573,8 @@ }, { "type": "ExpressionStatement", - "start": 940, - "end": 955, + "start": 925, + "end": 940, "loc": { "start": { "line": 46, @@ -2724,8 +2587,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 940, - "end": 954, + "start": 925, + "end": 939, "loc": { "start": { "line": 46, @@ -2739,8 +2602,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 940, - "end": 949, + "start": 925, + "end": 934, "loc": { "start": { "line": 46, @@ -2753,8 +2616,8 @@ }, "object": { "type": "ThisExpression", - "start": 940, - "end": 944, + "start": 925, + "end": 929, "loc": { "start": { "line": 46, @@ -2768,8 +2631,8 @@ }, "property": { "type": "Identifier", - "start": 945, - "end": 949, + "start": 930, + "end": 934, "loc": { "start": { "line": 46, @@ -2787,8 +2650,8 @@ }, "right": { "type": "ArrayExpression", - "start": 952, - "end": 954, + "start": 937, + "end": 939, "loc": { "start": { "line": 46, @@ -2809,8 +2672,8 @@ }, { "type": "ClassMethod", - "start": 963, - "end": 2660, + "start": 948, + "end": 2645, "loc": { "start": { "line": 49, @@ -2825,8 +2688,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 963, - "end": 971, + "start": 948, + "end": 956, "loc": { "start": { "line": 49, @@ -2848,8 +2711,8 @@ "params": [ { "type": "Identifier", - "start": 972, - "end": 975, + "start": 957, + "end": 960, "loc": { "start": { "line": 49, @@ -2866,8 +2729,8 @@ ], "body": { "type": "BlockStatement", - "start": 977, - "end": 2660, + "start": 962, + "end": 2645, "loc": { "start": { "line": 49, @@ -2881,8 +2744,8 @@ "body": [ { "type": "IfStatement", - "start": 1026, - "end": 1169, + "start": 1011, + "end": 1154, "loc": { "start": { "line": 51, @@ -2895,8 +2758,8 @@ }, "test": { "type": "LogicalExpression", - "start": 1030, - "end": 1097, + "start": 1015, + "end": 1082, "loc": { "start": { "line": 51, @@ -2909,8 +2772,8 @@ }, "left": { "type": "BinaryExpression", - "start": 1030, - "end": 1059, + "start": 1015, + "end": 1044, "loc": { "start": { "line": 51, @@ -2923,8 +2786,8 @@ }, "left": { "type": "MemberExpression", - "start": 1030, - "end": 1048, + "start": 1015, + "end": 1033, "loc": { "start": { "line": 51, @@ -2937,8 +2800,8 @@ }, "object": { "type": "MemberExpression", - "start": 1030, - "end": 1043, + "start": 1015, + "end": 1028, "loc": { "start": { "line": 51, @@ -2951,8 +2814,8 @@ }, "object": { "type": "ThisExpression", - "start": 1030, - "end": 1034, + "start": 1015, + "end": 1019, "loc": { "start": { "line": 51, @@ -2967,8 +2830,8 @@ }, "property": { "type": "Identifier", - "start": 1035, - "end": 1043, + "start": 1020, + "end": 1028, "loc": { "start": { "line": 51, @@ -2987,8 +2850,8 @@ }, "property": { "type": "Identifier", - "start": 1044, - "end": 1048, + "start": 1029, + "end": 1033, "loc": { "start": { "line": 51, @@ -3008,8 +2871,8 @@ "operator": "===", "right": { "type": "StringLiteral", - "start": 1053, - "end": 1059, + "start": 1038, + "end": 1044, "loc": { "start": { "line": 51, @@ -3031,8 +2894,8 @@ "operator": "&&", "right": { "type": "BinaryExpression", - "start": 1063, - "end": 1097, + "start": 1048, + "end": 1082, "loc": { "start": { "line": 51, @@ -3045,8 +2908,8 @@ }, "left": { "type": "MemberExpression", - "start": 1063, - "end": 1081, + "start": 1048, + "end": 1066, "loc": { "start": { "line": 51, @@ -3059,8 +2922,8 @@ }, "object": { "type": "MemberExpression", - "start": 1063, - "end": 1076, + "start": 1048, + "end": 1061, "loc": { "start": { "line": 51, @@ -3073,8 +2936,8 @@ }, "object": { "type": "ThisExpression", - "start": 1063, - "end": 1067, + "start": 1048, + "end": 1052, "loc": { "start": { "line": 51, @@ -3088,8 +2951,8 @@ }, "property": { "type": "Identifier", - "start": 1068, - "end": 1076, + "start": 1053, + "end": 1061, "loc": { "start": { "line": 51, @@ -3107,8 +2970,8 @@ }, "property": { "type": "Identifier", - "start": 1077, - "end": 1081, + "start": 1062, + "end": 1066, "loc": { "start": { "line": 51, @@ -3127,8 +2990,8 @@ "operator": "in", "right": { "type": "Identifier", - "start": 1085, - "end": 1097, + "start": 1070, + "end": 1082, "loc": { "start": { "line": 51, @@ -3147,8 +3010,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 1099, - "end": 1169, + "start": 1084, + "end": 1154, "loc": { "start": { "line": 51, @@ -3162,8 +3025,8 @@ "body": [ { "type": "ReturnStatement", - "start": 1107, - "end": 1163, + "start": 1092, + "end": 1148, "loc": { "start": { "line": 52, @@ -3176,8 +3039,8 @@ }, "argument": { "type": "CallExpression", - "start": 1114, - "end": 1162, + "start": 1099, + "end": 1147, "loc": { "start": { "line": 52, @@ -3190,8 +3053,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1114, - "end": 1146, + "start": 1099, + "end": 1131, "loc": { "start": { "line": 52, @@ -3204,8 +3067,8 @@ }, "object": { "type": "Identifier", - "start": 1114, - "end": 1126, + "start": 1099, + "end": 1111, "loc": { "start": { "line": 52, @@ -3221,8 +3084,8 @@ }, "property": { "type": "MemberExpression", - "start": 1127, - "end": 1145, + "start": 1112, + "end": 1130, "loc": { "start": { "line": 52, @@ -3235,8 +3098,8 @@ }, "object": { "type": "MemberExpression", - "start": 1127, - "end": 1140, + "start": 1112, + "end": 1125, "loc": { "start": { "line": 52, @@ -3249,8 +3112,8 @@ }, "object": { "type": "ThisExpression", - "start": 1127, - "end": 1131, + "start": 1112, + "end": 1116, "loc": { "start": { "line": 52, @@ -3264,8 +3127,8 @@ }, "property": { "type": "Identifier", - "start": 1132, - "end": 1140, + "start": 1117, + "end": 1125, "loc": { "start": { "line": 52, @@ -3283,8 +3146,8 @@ }, "property": { "type": "Identifier", - "start": 1141, - "end": 1145, + "start": 1126, + "end": 1130, "loc": { "start": { "line": 52, @@ -3305,8 +3168,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 1147, - "end": 1156, + "start": 1132, + "end": 1141, "loc": { "start": { "line": 52, @@ -3319,8 +3182,8 @@ }, "object": { "type": "ThisExpression", - "start": 1147, - "end": 1151, + "start": 1132, + "end": 1136, "loc": { "start": { "line": 52, @@ -3334,8 +3197,8 @@ }, "property": { "type": "Identifier", - "start": 1152, - "end": 1156, + "start": 1137, + "end": 1141, "loc": { "start": { "line": 52, @@ -3353,8 +3216,8 @@ }, { "type": "Identifier", - "start": 1158, - "end": 1161, + "start": 1143, + "end": 1146, "loc": { "start": { "line": 52, @@ -3380,8 +3243,8 @@ { "type": "CommentLine", "value": " Check if its a specialForm function", - "start": 983, - "end": 1021, + "start": 968, + "end": 1006, "loc": { "start": { "line": 50, @@ -3398,8 +3261,8 @@ { "type": "CommentLine", "value": " Evaluated operator", - "start": 1175, - "end": 1196, + "start": 1160, + "end": 1181, "loc": { "start": { "line": 55, @@ -3415,8 +3278,8 @@ }, { "type": "VariableDeclaration", - "start": 1201, - "end": 1238, + "start": 1186, + "end": 1223, "loc": { "start": { "line": 56, @@ -3430,8 +3293,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 1205, - "end": 1237, + "start": 1190, + "end": 1222, "loc": { "start": { "line": 56, @@ -3444,8 +3307,8 @@ }, "id": { "type": "Identifier", - "start": 1205, - "end": 1207, + "start": 1190, + "end": 1192, "loc": { "start": { "line": 56, @@ -3462,8 +3325,8 @@ }, "init": { "type": "CallExpression", - "start": 1210, - "end": 1237, + "start": 1195, + "end": 1222, "loc": { "start": { "line": 56, @@ -3476,8 +3339,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1210, - "end": 1232, + "start": 1195, + "end": 1217, "loc": { "start": { "line": 56, @@ -3490,8 +3353,8 @@ }, "object": { "type": "MemberExpression", - "start": 1210, - "end": 1223, + "start": 1195, + "end": 1208, "loc": { "start": { "line": 56, @@ -3504,8 +3367,8 @@ }, "object": { "type": "ThisExpression", - "start": 1210, - "end": 1214, + "start": 1195, + "end": 1199, "loc": { "start": { "line": 56, @@ -3519,8 +3382,8 @@ }, "property": { "type": "Identifier", - "start": 1215, - "end": 1223, + "start": 1200, + "end": 1208, "loc": { "start": { "line": 56, @@ -3538,8 +3401,8 @@ }, "property": { "type": "Identifier", - "start": 1224, - "end": 1232, + "start": 1209, + "end": 1217, "loc": { "start": { "line": 56, @@ -3558,8 +3421,8 @@ "arguments": [ { "type": "Identifier", - "start": 1233, - "end": 1236, + "start": 1218, + "end": 1221, "loc": { "start": { "line": 56, @@ -3583,8 +3446,8 @@ { "type": "CommentLine", "value": " Evaluated operator", - "start": 1175, - "end": 1196, + "start": 1160, + "end": 1181, "loc": { "start": { "line": 55, @@ -3601,8 +3464,8 @@ { "type": "CommentLine", "value": " Evaluated arguments", - "start": 1243, - "end": 1265, + "start": 1228, + "end": 1250, "loc": { "start": { "line": 57, @@ -3618,8 +3481,8 @@ }, { "type": "VariableDeclaration", - "start": 1270, - "end": 1323, + "start": 1255, + "end": 1308, "loc": { "start": { "line": 58, @@ -3633,8 +3496,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 1274, - "end": 1322, + "start": 1259, + "end": 1307, "loc": { "start": { "line": 58, @@ -3647,8 +3510,8 @@ }, "id": { "type": "Identifier", - "start": 1274, - "end": 1280, + "start": 1259, + "end": 1265, "loc": { "start": { "line": 58, @@ -3665,8 +3528,8 @@ }, "init": { "type": "CallExpression", - "start": 1283, - "end": 1322, + "start": 1268, + "end": 1307, "loc": { "start": { "line": 58, @@ -3679,8 +3542,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1283, - "end": 1296, + "start": 1268, + "end": 1281, "loc": { "start": { "line": 58, @@ -3693,8 +3556,8 @@ }, "object": { "type": "MemberExpression", - "start": 1283, - "end": 1292, + "start": 1268, + "end": 1277, "loc": { "start": { "line": 58, @@ -3707,8 +3570,8 @@ }, "object": { "type": "ThisExpression", - "start": 1283, - "end": 1287, + "start": 1268, + "end": 1272, "loc": { "start": { "line": 58, @@ -3722,8 +3585,8 @@ }, "property": { "type": "Identifier", - "start": 1288, - "end": 1292, + "start": 1273, + "end": 1277, "loc": { "start": { "line": 58, @@ -3741,8 +3604,8 @@ }, "property": { "type": "Identifier", - "start": 1293, - "end": 1296, + "start": 1278, + "end": 1281, "loc": { "start": { "line": 58, @@ -3761,8 +3624,8 @@ "arguments": [ { "type": "ArrowFunctionExpression", - "start": 1297, - "end": 1321, + "start": 1282, + "end": 1306, "loc": { "start": { "line": 58, @@ -3780,8 +3643,8 @@ "params": [ { "type": "Identifier", - "start": 1297, - "end": 1300, + "start": 1282, + "end": 1285, "loc": { "start": { "line": 58, @@ -3798,8 +3661,8 @@ ], "body": { "type": "CallExpression", - "start": 1304, - "end": 1321, + "start": 1289, + "end": 1306, "loc": { "start": { "line": 58, @@ -3812,8 +3675,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1304, - "end": 1316, + "start": 1289, + "end": 1301, "loc": { "start": { "line": 58, @@ -3826,8 +3689,8 @@ }, "object": { "type": "Identifier", - "start": 1304, - "end": 1307, + "start": 1289, + "end": 1292, "loc": { "start": { "line": 58, @@ -3843,8 +3706,8 @@ }, "property": { "type": "Identifier", - "start": 1308, - "end": 1316, + "start": 1293, + "end": 1301, "loc": { "start": { "line": 58, @@ -3863,8 +3726,8 @@ "arguments": [ { "type": "Identifier", - "start": 1317, - "end": 1320, + "start": 1302, + "end": 1305, "loc": { "start": { "line": 58, @@ -3891,8 +3754,8 @@ { "type": "CommentLine", "value": " Evaluated arguments", - "start": 1243, - "end": 1265, + "start": 1228, + "end": 1250, "loc": { "start": { "line": 57, @@ -3908,8 +3771,8 @@ }, { "type": "IfStatement", - "start": 1329, - "end": 1417, + "start": 1314, + "end": 1402, "loc": { "start": { "line": 60, @@ -3922,8 +3785,8 @@ }, "test": { "type": "BinaryExpression", - "start": 1333, - "end": 1357, + "start": 1318, + "end": 1342, "loc": { "start": { "line": 60, @@ -3936,8 +3799,8 @@ }, "left": { "type": "UnaryExpression", - "start": 1333, - "end": 1342, + "start": 1318, + "end": 1327, "loc": { "start": { "line": 60, @@ -3952,8 +3815,8 @@ "prefix": true, "argument": { "type": "Identifier", - "start": 1340, - "end": 1342, + "start": 1325, + "end": 1327, "loc": { "start": { "line": 60, @@ -3974,8 +3837,8 @@ "operator": "===", "right": { "type": "StringLiteral", - "start": 1347, - "end": 1357, + "start": 1332, + "end": 1342, "loc": { "start": { "line": 60, @@ -3995,8 +3858,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 1359, - "end": 1417, + "start": 1344, + "end": 1402, "loc": { "start": { "line": 60, @@ -4010,8 +3873,8 @@ "body": [ { "type": "ReturnStatement", - "start": 1390, - "end": 1411, + "start": 1375, + "end": 1396, "loc": { "start": { "line": 62, @@ -4024,8 +3887,8 @@ }, "argument": { "type": "CallExpression", - "start": 1397, - "end": 1410, + "start": 1382, + "end": 1395, "loc": { "start": { "line": 62, @@ -4038,8 +3901,8 @@ }, "callee": { "type": "Identifier", - "start": 1397, - "end": 1399, + "start": 1382, + "end": 1384, "loc": { "start": { "line": 62, @@ -4057,8 +3920,8 @@ "arguments": [ { "type": "SpreadElement", - "start": 1400, - "end": 1409, + "start": 1385, + "end": 1394, "loc": { "start": { "line": 62, @@ -4071,8 +3934,8 @@ }, "argument": { "type": "Identifier", - "start": 1403, - "end": 1409, + "start": 1388, + "end": 1394, "loc": { "start": { "line": 62, @@ -4094,8 +3957,8 @@ { "type": "CommentLine", "value": " Is a function", - "start": 1367, - "end": 1383, + "start": 1352, + "end": 1368, "loc": { "start": { "line": 61, @@ -4116,8 +3979,8 @@ }, { "type": "IfStatement", - "start": 1423, - "end": 2588, + "start": 1408, + "end": 2573, "loc": { "start": { "line": 65, @@ -4130,8 +3993,8 @@ }, "test": { "type": "BinaryExpression", - "start": 1427, - "end": 1452, + "start": 1412, + "end": 1437, "loc": { "start": { "line": 65, @@ -4144,8 +4007,8 @@ }, "left": { "type": "UnaryExpression", - "start": 1427, - "end": 1436, + "start": 1412, + "end": 1421, "loc": { "start": { "line": 65, @@ -4160,8 +4023,8 @@ "prefix": true, "argument": { "type": "Identifier", - "start": 1434, - "end": 1436, + "start": 1419, + "end": 1421, "loc": { "start": { "line": 65, @@ -4182,8 +4045,8 @@ "operator": "!==", "right": { "type": "StringLiteral", - "start": 1441, - "end": 1452, + "start": 1426, + "end": 1437, "loc": { "start": { "line": 65, @@ -4203,8 +4066,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 1454, - "end": 2588, + "start": 1439, + "end": 2573, "loc": { "start": { "line": 65, @@ -4218,8 +4081,8 @@ "body": [ { "type": "VariableDeclaration", - "start": 1511, - "end": 1532, + "start": 1496, + "end": 1517, "loc": { "start": { "line": 67, @@ -4233,8 +4096,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 1515, - "end": 1531, + "start": 1500, + "end": 1516, "loc": { "start": { "line": 67, @@ -4247,8 +4110,8 @@ }, "id": { "type": "Identifier", - "start": 1515, - "end": 1519, + "start": 1500, + "end": 1504, "loc": { "start": { "line": 67, @@ -4265,8 +4128,8 @@ }, "init": { "type": "MemberExpression", - "start": 1522, - "end": 1531, + "start": 1507, + "end": 1516, "loc": { "start": { "line": 67, @@ -4279,8 +4142,8 @@ }, "object": { "type": "Identifier", - "start": 1522, - "end": 1528, + "start": 1507, + "end": 1513, "loc": { "start": { "line": 67, @@ -4296,8 +4159,8 @@ }, "property": { "type": "NumericLiteral", - "start": 1529, - "end": 1530, + "start": 1514, + "end": 1515, "loc": { "start": { "line": 67, @@ -4324,8 +4187,8 @@ { "type": "CommentLine", "value": " Is an object, number, string or boolean", - "start": 1462, - "end": 1504, + "start": 1447, + "end": 1489, "loc": { "start": { "line": 66, @@ -4341,8 +4204,8 @@ }, { "type": "VariableDeclaration", - "start": 1539, - "end": 1572, + "start": 1524, + "end": 1557, "loc": { "start": { "line": 68, @@ -4356,8 +4219,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 1543, - "end": 1571, + "start": 1528, + "end": 1556, "loc": { "start": { "line": 68, @@ -4370,8 +4233,8 @@ }, "id": { "type": "Identifier", - "start": 1543, - "end": 1553, + "start": 1528, + "end": 1538, "loc": { "start": { "line": 68, @@ -4387,8 +4250,8 @@ }, "init": { "type": "CallExpression", - "start": 1556, - "end": 1571, + "start": 1541, + "end": 1556, "loc": { "start": { "line": 68, @@ -4401,8 +4264,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1556, - "end": 1568, + "start": 1541, + "end": 1553, "loc": { "start": { "line": 68, @@ -4415,8 +4278,8 @@ }, "object": { "type": "Identifier", - "start": 1556, - "end": 1562, + "start": 1541, + "end": 1547, "loc": { "start": { "line": 68, @@ -4432,8 +4295,8 @@ }, "property": { "type": "Identifier", - "start": 1563, - "end": 1568, + "start": 1548, + "end": 1553, "loc": { "start": { "line": 68, @@ -4452,8 +4315,8 @@ "arguments": [ { "type": "NumericLiteral", - "start": 1569, - "end": 1570, + "start": 1554, + "end": 1555, "loc": { "start": { "line": 68, @@ -4479,8 +4342,8 @@ { "type": "CommentLine", "value": " Check if the name of the method/property is defined on the object", - "start": 1580, - "end": 1648, + "start": 1565, + "end": 1633, "loc": { "start": { "line": 70, @@ -4496,8 +4359,8 @@ }, { "type": "IfStatement", - "start": 1655, - "end": 2582, + "start": 1640, + "end": 2567, "loc": { "start": { "line": 71, @@ -4510,8 +4373,8 @@ }, "test": { "type": "BinaryExpression", - "start": 1659, - "end": 1690, + "start": 1644, + "end": 1675, "loc": { "start": { "line": 71, @@ -4524,8 +4387,8 @@ }, "left": { "type": "UnaryExpression", - "start": 1659, - "end": 1674, + "start": 1644, + "end": 1659, "loc": { "start": { "line": 71, @@ -4540,8 +4403,8 @@ "prefix": true, "argument": { "type": "MemberExpression", - "start": 1666, - "end": 1674, + "start": 1651, + "end": 1659, "loc": { "start": { "line": 71, @@ -4554,8 +4417,8 @@ }, "object": { "type": "Identifier", - "start": 1666, - "end": 1668, + "start": 1651, + "end": 1653, "loc": { "start": { "line": 71, @@ -4572,8 +4435,8 @@ }, "property": { "type": "Identifier", - "start": 1669, - "end": 1673, + "start": 1654, + "end": 1658, "loc": { "start": { "line": 71, @@ -4598,8 +4461,8 @@ "operator": "!==", "right": { "type": "StringLiteral", - "start": 1679, - "end": 1690, + "start": 1664, + "end": 1675, "loc": { "start": { "line": 71, @@ -4620,8 +4483,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 1692, - "end": 1977, + "start": 1677, + "end": 1962, "loc": { "start": { "line": 71, @@ -4635,8 +4498,8 @@ "body": [ { "type": "IfStatement", - "start": 1733, - "end": 1899, + "start": 1718, + "end": 1884, "loc": { "start": { "line": 73, @@ -4649,8 +4512,8 @@ }, "test": { "type": "BinaryExpression", - "start": 1737, - "end": 1767, + "start": 1722, + "end": 1752, "loc": { "start": { "line": 73, @@ -4663,8 +4526,8 @@ }, "left": { "type": "UnaryExpression", - "start": 1737, - "end": 1752, + "start": 1722, + "end": 1737, "loc": { "start": { "line": 73, @@ -4679,8 +4542,8 @@ "prefix": true, "argument": { "type": "MemberExpression", - "start": 1744, - "end": 1752, + "start": 1729, + "end": 1737, "loc": { "start": { "line": 73, @@ -4693,8 +4556,8 @@ }, "object": { "type": "Identifier", - "start": 1744, - "end": 1746, + "start": 1729, + "end": 1731, "loc": { "start": { "line": 73, @@ -4711,8 +4574,8 @@ }, "property": { "type": "Identifier", - "start": 1747, - "end": 1751, + "start": 1732, + "end": 1736, "loc": { "start": { "line": 73, @@ -4737,8 +4600,8 @@ "operator": "===", "right": { "type": "StringLiteral", - "start": 1757, - "end": 1767, + "start": 1742, + "end": 1752, "loc": { "start": { "line": 73, @@ -4759,8 +4622,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 1769, - "end": 1855, + "start": 1754, + "end": 1840, "loc": { "start": { "line": 73, @@ -4774,8 +4637,8 @@ "body": [ { "type": "ReturnStatement", - "start": 1781, - "end": 1812, + "start": 1766, + "end": 1797, "loc": { "start": { "line": 74, @@ -4788,8 +4651,8 @@ }, "argument": { "type": "CallExpression", - "start": 1788, - "end": 1811, + "start": 1773, + "end": 1796, "loc": { "start": { "line": 74, @@ -4802,8 +4665,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1788, - "end": 1796, + "start": 1773, + "end": 1781, "loc": { "start": { "line": 74, @@ -4816,8 +4679,8 @@ }, "object": { "type": "Identifier", - "start": 1788, - "end": 1790, + "start": 1773, + "end": 1775, "loc": { "start": { "line": 74, @@ -4833,8 +4696,8 @@ }, "property": { "type": "Identifier", - "start": 1791, - "end": 1795, + "start": 1776, + "end": 1780, "loc": { "start": { "line": 74, @@ -4853,8 +4716,8 @@ "arguments": [ { "type": "SpreadElement", - "start": 1797, - "end": 1810, + "start": 1782, + "end": 1795, "loc": { "start": { "line": 74, @@ -4867,8 +4730,8 @@ }, "argument": { "type": "Identifier", - "start": 1800, - "end": 1810, + "start": 1785, + "end": 1795, "loc": { "start": { "line": 74, @@ -4889,8 +4752,8 @@ { "type": "CommentLine", "value": " Return as property", - "start": 1824, - "end": 1845, + "start": 1809, + "end": 1830, "loc": { "start": { "line": 76, @@ -4909,8 +4772,8 @@ }, "alternate": { "type": "BlockStatement", - "start": 1861, - "end": 1899, + "start": 1846, + "end": 1884, "loc": { "start": { "line": 77, @@ -4924,8 +4787,8 @@ "body": [ { "type": "ReturnStatement", - "start": 1873, - "end": 1889, + "start": 1858, + "end": 1874, "loc": { "start": { "line": 78, @@ -4938,8 +4801,8 @@ }, "argument": { "type": "MemberExpression", - "start": 1880, - "end": 1888, + "start": 1865, + "end": 1873, "loc": { "start": { "line": 78, @@ -4952,8 +4815,8 @@ }, "object": { "type": "Identifier", - "start": 1880, - "end": 1882, + "start": 1865, + "end": 1867, "loc": { "start": { "line": 78, @@ -4969,8 +4832,8 @@ }, "property": { "type": "Identifier", - "start": 1883, - "end": 1887, + "start": 1868, + "end": 1872, "loc": { "start": { "line": 78, @@ -4995,8 +4858,8 @@ { "type": "CommentLine", "value": " Execute as function", - "start": 1702, - "end": 1724, + "start": 1687, + "end": 1709, "loc": { "start": { "line": 72, @@ -5013,8 +4876,8 @@ { "type": "CommentLine", "value": " If the name of the method is not defined on the object...", - "start": 1909, - "end": 1969, + "start": 1894, + "end": 1954, "loc": { "start": { "line": 81, @@ -5033,8 +4896,8 @@ }, "alternate": { "type": "BlockStatement", - "start": 1983, - "end": 2582, + "start": 1968, + "end": 2567, "loc": { "start": { "line": 82, @@ -5048,8 +4911,8 @@ "body": [ { "type": "IfStatement", - "start": 2033, - "end": 2231, + "start": 2018, + "end": 2216, "loc": { "start": { "line": 84, @@ -5062,8 +4925,8 @@ }, "test": { "type": "BinaryExpression", - "start": 2037, - "end": 2054, + "start": 2022, + "end": 2039, "loc": { "start": { "line": 84, @@ -5076,8 +4939,8 @@ }, "left": { "type": "Identifier", - "start": 2037, - "end": 2039, + "start": 2022, + "end": 2024, "loc": { "start": { "line": 84, @@ -5095,8 +4958,8 @@ "operator": "instanceof", "right": { "type": "Identifier", - "start": 2051, - "end": 2054, + "start": 2036, + "end": 2039, "loc": { "start": { "line": 84, @@ -5114,8 +4977,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 2056, - "end": 2231, + "start": 2041, + "end": 2216, "loc": { "start": { "line": 84, @@ -5129,8 +4992,8 @@ "body": [ { "type": "IfStatement", - "start": 2068, - "end": 2221, + "start": 2053, + "end": 2206, "loc": { "start": { "line": 85, @@ -5143,8 +5006,8 @@ }, "test": { "type": "BinaryExpression", - "start": 2072, - "end": 2106, + "start": 2057, + "end": 2091, "loc": { "start": { "line": 85, @@ -5157,8 +5020,8 @@ }, "left": { "type": "UnaryExpression", - "start": 2072, - "end": 2091, + "start": 2057, + "end": 2076, "loc": { "start": { "line": 85, @@ -5173,8 +5036,8 @@ "prefix": true, "argument": { "type": "CallExpression", - "start": 2079, - "end": 2091, + "start": 2064, + "end": 2076, "loc": { "start": { "line": 85, @@ -5187,8 +5050,8 @@ }, "callee": { "type": "MemberExpression", - "start": 2079, - "end": 2085, + "start": 2064, + "end": 2070, "loc": { "start": { "line": 85, @@ -5201,8 +5064,8 @@ }, "object": { "type": "Identifier", - "start": 2079, - "end": 2081, + "start": 2064, + "end": 2066, "loc": { "start": { "line": 85, @@ -5218,8 +5081,8 @@ }, "property": { "type": "Identifier", - "start": 2082, - "end": 2085, + "start": 2067, + "end": 2070, "loc": { "start": { "line": 85, @@ -5238,8 +5101,8 @@ "arguments": [ { "type": "Identifier", - "start": 2086, - "end": 2090, + "start": 2071, + "end": 2075, "loc": { "start": { "line": 85, @@ -5262,8 +5125,8 @@ "operator": "===", "right": { "type": "StringLiteral", - "start": 2096, - "end": 2106, + "start": 2081, + "end": 2091, "loc": { "start": { "line": 85, @@ -5283,8 +5146,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 2108, - "end": 2169, + "start": 2093, + "end": 2154, "loc": { "start": { "line": 85, @@ -5298,8 +5161,8 @@ "body": [ { "type": "ReturnStatement", - "start": 2122, - "end": 2157, + "start": 2107, + "end": 2142, "loc": { "start": { "line": 86, @@ -5312,8 +5175,8 @@ }, "argument": { "type": "CallExpression", - "start": 2129, - "end": 2156, + "start": 2114, + "end": 2141, "loc": { "start": { "line": 86, @@ -5326,8 +5189,8 @@ }, "callee": { "type": "CallExpression", - "start": 2129, - "end": 2141, + "start": 2114, + "end": 2126, "loc": { "start": { "line": 86, @@ -5340,8 +5203,8 @@ }, "callee": { "type": "MemberExpression", - "start": 2129, - "end": 2135, + "start": 2114, + "end": 2120, "loc": { "start": { "line": 86, @@ -5354,8 +5217,8 @@ }, "object": { "type": "Identifier", - "start": 2129, - "end": 2131, + "start": 2114, + "end": 2116, "loc": { "start": { "line": 86, @@ -5371,8 +5234,8 @@ }, "property": { "type": "Identifier", - "start": 2132, - "end": 2135, + "start": 2117, + "end": 2120, "loc": { "start": { "line": 86, @@ -5391,8 +5254,8 @@ "arguments": [ { "type": "Identifier", - "start": 2136, - "end": 2140, + "start": 2121, + "end": 2125, "loc": { "start": { "line": 86, @@ -5411,8 +5274,8 @@ "arguments": [ { "type": "SpreadElement", - "start": 2142, - "end": 2155, + "start": 2127, + "end": 2140, "loc": { "start": { "line": 86, @@ -5425,8 +5288,8 @@ }, "argument": { "type": "Identifier", - "start": 2145, - "end": 2155, + "start": 2130, + "end": 2140, "loc": { "start": { "line": 86, @@ -5449,8 +5312,8 @@ }, "alternate": { "type": "BlockStatement", - "start": 2175, - "end": 2221, + "start": 2160, + "end": 2206, "loc": { "start": { "line": 87, @@ -5464,8 +5327,8 @@ "body": [ { "type": "ReturnStatement", - "start": 2189, - "end": 2209, + "start": 2174, + "end": 2194, "loc": { "start": { "line": 88, @@ -5478,8 +5341,8 @@ }, "argument": { "type": "CallExpression", - "start": 2196, - "end": 2208, + "start": 2181, + "end": 2193, "loc": { "start": { "line": 88, @@ -5492,8 +5355,8 @@ }, "callee": { "type": "MemberExpression", - "start": 2196, - "end": 2202, + "start": 2181, + "end": 2187, "loc": { "start": { "line": 88, @@ -5506,8 +5369,8 @@ }, "object": { "type": "Identifier", - "start": 2196, - "end": 2198, + "start": 2181, + "end": 2183, "loc": { "start": { "line": 88, @@ -5523,8 +5386,8 @@ }, "property": { "type": "Identifier", - "start": 2199, - "end": 2202, + "start": 2184, + "end": 2187, "loc": { "start": { "line": 88, @@ -5543,8 +5406,8 @@ "arguments": [ { "type": "Identifier", - "start": 2203, - "end": 2207, + "start": 2188, + "end": 2192, "loc": { "start": { "line": 88, @@ -5574,8 +5437,8 @@ { "type": "CommentLine", "value": " Check if its a Map property.", - "start": 1993, - "end": 2024, + "start": 1978, + "end": 2009, "loc": { "start": { "line": 83, @@ -5592,8 +5455,8 @@ { "type": "CommentLine", "value": " Try to call the 'missing' method", - "start": 2241, - "end": 2276, + "start": 2226, + "end": 2261, "loc": { "start": { "line": 92, @@ -5609,8 +5472,8 @@ }, { "type": "IfStatement", - "start": 2285, - "end": 2574, + "start": 2270, + "end": 2559, "loc": { "start": { "line": 93, @@ -5623,8 +5486,8 @@ }, "test": { "type": "BinaryExpression", - "start": 2289, - "end": 2328, + "start": 2274, + "end": 2313, "loc": { "start": { "line": 93, @@ -5637,8 +5500,8 @@ }, "left": { "type": "UnaryExpression", - "start": 2289, - "end": 2313, + "start": 2274, + "end": 2298, "loc": { "start": { "line": 93, @@ -5653,8 +5516,8 @@ "prefix": true, "argument": { "type": "MemberExpression", - "start": 2296, - "end": 2313, + "start": 2281, + "end": 2298, "loc": { "start": { "line": 93, @@ -5667,8 +5530,8 @@ }, "object": { "type": "Identifier", - "start": 2296, - "end": 2298, + "start": 2281, + "end": 2283, "loc": { "start": { "line": 93, @@ -5685,8 +5548,8 @@ }, "property": { "type": "StringLiteral", - "start": 2299, - "end": 2312, + "start": 2284, + "end": 2297, "loc": { "start": { "line": 93, @@ -5714,8 +5577,8 @@ "operator": "===", "right": { "type": "StringLiteral", - "start": 2318, - "end": 2328, + "start": 2303, + "end": 2313, "loc": { "start": { "line": 93, @@ -5736,8 +5599,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 2330, - "end": 2443, + "start": 2315, + "end": 2428, "loc": { "start": { "line": 93, @@ -5751,8 +5614,8 @@ "body": [ { "type": "ReturnStatement", - "start": 2342, - "end": 2382, + "start": 2327, + "end": 2367, "loc": { "start": { "line": 94, @@ -5765,8 +5628,8 @@ }, "argument": { "type": "CallExpression", - "start": 2349, - "end": 2381, + "start": 2334, + "end": 2366, "loc": { "start": { "line": 94, @@ -5779,8 +5642,8 @@ }, "callee": { "type": "MemberExpression", - "start": 2349, - "end": 2366, + "start": 2334, + "end": 2351, "loc": { "start": { "line": 94, @@ -5793,8 +5656,8 @@ }, "object": { "type": "Identifier", - "start": 2349, - "end": 2351, + "start": 2334, + "end": 2336, "loc": { "start": { "line": 94, @@ -5810,8 +5673,8 @@ }, "property": { "type": "StringLiteral", - "start": 2352, - "end": 2365, + "start": 2337, + "end": 2350, "loc": { "start": { "line": 94, @@ -5833,8 +5696,8 @@ "arguments": [ { "type": "SpreadElement", - "start": 2367, - "end": 2380, + "start": 2352, + "end": 2365, "loc": { "start": { "line": 94, @@ -5847,8 +5710,8 @@ }, "argument": { "type": "Identifier", - "start": 2370, - "end": 2380, + "start": 2355, + "end": 2365, "loc": { "start": { "line": 94, @@ -5869,8 +5732,8 @@ { "type": "CommentLine", "value": " As a last resort, throw an Exception", - "start": 2394, - "end": 2433, + "start": 2379, + "end": 2418, "loc": { "start": { "line": 96, @@ -5889,8 +5752,8 @@ }, "alternate": { "type": "BlockStatement", - "start": 2449, - "end": 2574, + "start": 2434, + "end": 2559, "loc": { "start": { "line": 97, @@ -5904,8 +5767,8 @@ "body": [ { "type": "ThrowStatement", - "start": 2461, - "end": 2564, + "start": 2446, + "end": 2549, "loc": { "start": { "line": 98, @@ -5918,8 +5781,8 @@ }, "argument": { "type": "NewExpression", - "start": 2467, - "end": 2563, + "start": 2452, + "end": 2548, "loc": { "start": { "line": 98, @@ -5932,8 +5795,8 @@ }, "callee": { "type": "Identifier", - "start": 2471, - "end": 2482, + "start": 2456, + "end": 2467, "loc": { "start": { "line": 98, @@ -5950,8 +5813,8 @@ "arguments": [ { "type": "TemplateLiteral", - "start": 2483, - "end": 2562, + "start": 2468, + "end": 2547, "loc": { "start": { "line": 98, @@ -5965,8 +5828,8 @@ "expressions": [ { "type": "Identifier", - "start": 2498, - "end": 2502, + "start": 2483, + "end": 2487, "loc": { "start": { "line": 98, @@ -5982,8 +5845,8 @@ }, { "type": "CallExpression", - "start": 2546, - "end": 2559, + "start": 2531, + "end": 2544, "loc": { "start": { "line": 99, @@ -5996,8 +5859,8 @@ }, "callee": { "type": "MemberExpression", - "start": 2546, - "end": 2555, + "start": 2531, + "end": 2540, "loc": { "start": { "line": 99, @@ -6010,8 +5873,8 @@ }, "object": { "type": "Identifier", - "start": 2546, - "end": 2551, + "start": 2531, + "end": 2536, "loc": { "start": { "line": 99, @@ -6027,8 +5890,8 @@ }, "property": { "type": "Identifier", - "start": 2552, - "end": 2555, + "start": 2537, + "end": 2540, "loc": { "start": { "line": 99, @@ -6047,8 +5910,8 @@ "arguments": [ { "type": "Identifier", - "start": 2556, - "end": 2558, + "start": 2541, + "end": 2543, "loc": { "start": { "line": 99, @@ -6068,8 +5931,8 @@ "quasis": [ { "type": "TemplateElement", - "start": 2484, - "end": 2496, + "start": 2469, + "end": 2481, "loc": { "start": { "line": 98, @@ -6088,8 +5951,8 @@ }, { "type": "TemplateElement", - "start": 2503, - "end": 2544, + "start": 2488, + "end": 2529, "loc": { "start": { "line": 98, @@ -6108,8 +5971,8 @@ }, { "type": "TemplateElement", - "start": 2560, - "end": 2561, + "start": 2545, + "end": 2546, "loc": { "start": { "line": 99, @@ -6138,8 +6001,8 @@ { "type": "CommentLine", "value": " Try to call the 'missing' method", - "start": 2241, - "end": 2276, + "start": 2226, + "end": 2261, "loc": { "start": { "line": 92, @@ -6160,8 +6023,8 @@ { "type": "CommentLine", "value": " Check if the name of the method/property is defined on the object", - "start": 1580, - "end": 1648, + "start": 1565, + "end": 1633, "loc": { "start": { "line": 70, @@ -6182,8 +6045,8 @@ }, { "type": "ThrowStatement", - "start": 2594, - "end": 2656, + "start": 2579, + "end": 2641, "loc": { "start": { "line": 104, @@ -6196,8 +6059,8 @@ }, "argument": { "type": "NewExpression", - "start": 2600, - "end": 2655, + "start": 2585, + "end": 2640, "loc": { "start": { "line": 104, @@ -6210,8 +6073,8 @@ }, "callee": { "type": "Identifier", - "start": 2604, - "end": 2613, + "start": 2589, + "end": 2598, "loc": { "start": { "line": 104, @@ -6228,8 +6091,8 @@ "arguments": [ { "type": "TemplateLiteral", - "start": 2614, - "end": 2654, + "start": 2599, + "end": 2639, "loc": { "start": { "line": 104, @@ -6244,8 +6107,8 @@ "quasis": [ { "type": "TemplateElement", - "start": 2615, - "end": 2653, + "start": 2600, + "end": 2638, "loc": { "start": { "line": 104, @@ -6272,12 +6135,15 @@ } } ] - } + }, + "name": "_", + "leadingComments": [], + "trailingComments": [] }, { - "type": "ClassDeclaration", - "start": 2664, - "end": 2857, + "type": "Identifier", + "start": 2649, + "end": 2842, "loc": { "start": { "line": 108, @@ -6290,8 +6156,8 @@ }, "id": { "type": "Identifier", - "start": 2670, - "end": 2675, + "start": 2655, + "end": 2660, "loc": { "start": { "line": 108, @@ -6308,8 +6174,8 @@ "superClass": null, "body": { "type": "ClassBody", - "start": 2676, - "end": 2857, + "start": 2661, + "end": 2842, "loc": { "start": { "line": 108, @@ -6323,8 +6189,8 @@ "body": [ { "type": "ClassMethod", - "start": 2680, - "end": 2788, + "start": 2665, + "end": 2773, "loc": { "start": { "line": 109, @@ -6339,8 +6205,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 2680, - "end": 2691, + "start": 2665, + "end": 2676, "loc": { "start": { "line": 109, @@ -6362,8 +6228,8 @@ "params": [ { "type": "Identifier", - "start": 2692, - "end": 2697, + "start": 2677, + "end": 2682, "loc": { "start": { "line": 109, @@ -6380,8 +6246,8 @@ ], "body": { "type": "BlockStatement", - "start": 2699, - "end": 2788, + "start": 2684, + "end": 2773, "loc": { "start": { "line": 109, @@ -6395,8 +6261,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 2705, - "end": 2725, + "start": 2690, + "end": 2710, "loc": { "start": { "line": 110, @@ -6409,8 +6275,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 2705, - "end": 2724, + "start": 2690, + "end": 2709, "loc": { "start": { "line": 110, @@ -6424,8 +6290,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 2705, - "end": 2714, + "start": 2690, + "end": 2699, "loc": { "start": { "line": 110, @@ -6438,8 +6304,8 @@ }, "object": { "type": "ThisExpression", - "start": 2705, - "end": 2709, + "start": 2690, + "end": 2694, "loc": { "start": { "line": 110, @@ -6453,8 +6319,8 @@ }, "property": { "type": "Identifier", - "start": 2710, - "end": 2714, + "start": 2695, + "end": 2699, "loc": { "start": { "line": 110, @@ -6472,8 +6338,8 @@ }, "right": { "type": "StringLiteral", - "start": 2717, - "end": 2724, + "start": 2702, + "end": 2709, "loc": { "start": { "line": 110, @@ -6494,8 +6360,8 @@ }, { "type": "ExpressionStatement", - "start": 2731, - "end": 2754, + "start": 2716, + "end": 2739, "loc": { "start": { "line": 112, @@ -6508,8 +6374,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 2731, - "end": 2753, + "start": 2716, + "end": 2738, "loc": { "start": { "line": 112, @@ -6523,8 +6389,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 2731, - "end": 2740, + "start": 2716, + "end": 2725, "loc": { "start": { "line": 112, @@ -6537,8 +6403,8 @@ }, "object": { "type": "ThisExpression", - "start": 2731, - "end": 2735, + "start": 2716, + "end": 2720, "loc": { "start": { "line": 112, @@ -6552,8 +6418,8 @@ }, "property": { "type": "Identifier", - "start": 2736, - "end": 2740, + "start": 2721, + "end": 2725, "loc": { "start": { "line": 112, @@ -6571,8 +6437,8 @@ }, "right": { "type": "MemberExpression", - "start": 2743, - "end": 2753, + "start": 2728, + "end": 2738, "loc": { "start": { "line": 112, @@ -6585,8 +6451,8 @@ }, "object": { "type": "Identifier", - "start": 2743, - "end": 2748, + "start": 2728, + "end": 2733, "loc": { "start": { "line": 112, @@ -6602,8 +6468,8 @@ }, "property": { "type": "Identifier", - "start": 2749, - "end": 2753, + "start": 2734, + "end": 2738, "loc": { "start": { "line": 112, @@ -6623,8 +6489,8 @@ }, { "type": "ExpressionStatement", - "start": 2759, - "end": 2784, + "start": 2744, + "end": 2769, "loc": { "start": { "line": 113, @@ -6637,8 +6503,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 2759, - "end": 2783, + "start": 2744, + "end": 2768, "loc": { "start": { "line": 113, @@ -6652,8 +6518,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 2759, - "end": 2769, + "start": 2744, + "end": 2754, "loc": { "start": { "line": 113, @@ -6666,8 +6532,8 @@ }, "object": { "type": "ThisExpression", - "start": 2759, - "end": 2763, + "start": 2744, + "end": 2748, "loc": { "start": { "line": 113, @@ -6681,8 +6547,8 @@ }, "property": { "type": "Identifier", - "start": 2764, - "end": 2769, + "start": 2749, + "end": 2754, "loc": { "start": { "line": 113, @@ -6700,8 +6566,8 @@ }, "right": { "type": "MemberExpression", - "start": 2772, - "end": 2783, + "start": 2757, + "end": 2768, "loc": { "start": { "line": 113, @@ -6714,8 +6580,8 @@ }, "object": { "type": "Identifier", - "start": 2772, - "end": 2777, + "start": 2757, + "end": 2762, "loc": { "start": { "line": 113, @@ -6731,8 +6597,8 @@ }, "property": { "type": "Identifier", - "start": 2778, - "end": 2783, + "start": 2763, + "end": 2768, "loc": { "start": { "line": 113, @@ -6756,8 +6622,8 @@ }, { "type": "ClassMethod", - "start": 2792, - "end": 2855, + "start": 2777, + "end": 2840, "loc": { "start": { "line": 116, @@ -6772,8 +6638,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 2792, - "end": 2800, + "start": 2777, + "end": 2785, "loc": { "start": { "line": 116, @@ -6795,8 +6661,8 @@ "params": [], "body": { "type": "BlockStatement", - "start": 2803, - "end": 2855, + "start": 2788, + "end": 2840, "loc": { "start": { "line": 116, @@ -6810,8 +6676,8 @@ "body": [ { "type": "ReturnStatement", - "start": 2809, - "end": 2851, + "start": 2794, + "end": 2836, "loc": { "start": { "line": 117, @@ -6824,8 +6690,8 @@ }, "argument": { "type": "NewExpression", - "start": 2816, - "end": 2850, + "start": 2801, + "end": 2835, "loc": { "start": { "line": 117, @@ -6838,8 +6704,8 @@ }, "callee": { "type": "Identifier", - "start": 2820, - "end": 2827, + "start": 2805, + "end": 2812, "loc": { "start": { "line": 117, @@ -6856,8 +6722,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 2828, - "end": 2837, + "start": 2813, + "end": 2822, "loc": { "start": { "line": 117, @@ -6870,8 +6736,8 @@ }, "object": { "type": "ThisExpression", - "start": 2828, - "end": 2832, + "start": 2813, + "end": 2817, "loc": { "start": { "line": 117, @@ -6885,8 +6751,8 @@ }, "property": { "type": "Identifier", - "start": 2833, - "end": 2837, + "start": 2818, + "end": 2822, "loc": { "start": { "line": 117, @@ -6904,8 +6770,8 @@ }, { "type": "MemberExpression", - "start": 2839, - "end": 2849, + "start": 2824, + "end": 2834, "loc": { "start": { "line": 117, @@ -6918,8 +6784,8 @@ }, "object": { "type": "ThisExpression", - "start": 2839, - "end": 2843, + "start": 2824, + "end": 2828, "loc": { "start": { "line": 117, @@ -6933,8 +6799,8 @@ }, "property": { "type": "Identifier", - "start": 2844, - "end": 2849, + "start": 2829, + "end": 2834, "loc": { "start": { "line": 117, @@ -6958,325 +6824,6854 @@ } } ] - } + }, + "name": "_", + "leadingComments": [], + "trailingComments": [] }, { - "type": "ExpressionStatement", - "start": 2859, - "end": 2914, + "type": "ExportNamedDeclaration", + "start": 2844, + "end": 2887, "loc": { "start": { "line": 121, "column": 0 }, "end": { - "line": 126, - "column": 2 + "line": 124, + "column": 10 } }, - "expression": { - "type": "AssignmentExpression", - "start": 2859, - "end": 2913, - "loc": { - "start": { - "line": 121, - "column": 0 - }, - "end": { - "line": 126, - "column": 1 - } - }, - "operator": "=", - "left": { - "type": "MemberExpression", - "start": 2859, - "end": 2873, + "declaration": null, + "specifiers": [ + { + "type": "ExportSpecifier", + "start": 2853, + "end": 2858, "loc": { "start": { "line": 121, - "column": 0 + "column": 9 }, "end": { "line": 121, "column": 14 } }, - "object": { + "local": { "type": "Identifier", - "start": 2859, - "end": 2865, + "start": 2853, + "end": 2858, "loc": { "start": { "line": 121, - "column": 0 + "column": 9 }, "end": { "line": 121, - "column": 6 + "column": 14 }, - "identifierName": "module" + "identifierName": "Value" }, - "name": "module" + "name": "Value" }, - "property": { + "exported": { "type": "Identifier", - "start": 2866, - "end": 2873, + "start": 2853, + "end": 2858, "loc": { "start": { "line": 121, - "column": 7 + "column": 9 }, "end": { "line": 121, "column": 14 }, - "identifierName": "exports" + "identifierName": "Value" }, - "name": "exports" - }, - "computed": false + "name": "Value" + } }, - "right": { - "type": "ObjectExpression", - "start": 2876, - "end": 2913, + { + "type": "ExportSpecifier", + "start": 2862, + "end": 2866, "loc": { "start": { - "line": 121, - "column": 17 + "line": 122, + "column": 2 }, "end": { - "line": 126, - "column": 1 + "line": 122, + "column": 6 } }, - "properties": [ - { - "type": "ObjectProperty", - "start": 2880, - "end": 2885, - "loc": { - "start": { - "line": 122, - "column": 2 - }, - "end": { - "line": 122, - "column": 7 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 2880, - "end": 2885, - "loc": { - "start": { - "line": 122, - "column": 2 - }, - "end": { - "line": 122, - "column": 7 - }, - "identifierName": "Value" - }, - "name": "Value" + "local": { + "type": "Identifier", + "start": 2862, + "end": 2866, + "loc": { + "start": { + "line": 122, + "column": 2 }, - "value": { - "type": "Identifier", - "start": 2880, - "end": 2885, - "loc": { - "start": { - "line": 122, - "column": 2 - }, - "end": { - "line": 122, - "column": 7 - }, - "identifierName": "Value" - }, - "name": "Value" + "end": { + "line": 122, + "column": 6 }, - "extra": { - "shorthand": true - } + "identifierName": "Word" }, - { - "type": "ObjectProperty", - "start": 2889, - "end": 2893, - "loc": { - "start": { - "line": 123, - "column": 2 - }, - "end": { - "line": 123, - "column": 6 - } + "name": "Word" + }, + "exported": { + "type": "Identifier", + "start": 2862, + "end": 2866, + "loc": { + "start": { + "line": 122, + "column": 2 }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 2889, - "end": 2893, - "loc": { - "start": { - "line": 123, - "column": 2 - }, - "end": { - "line": 123, - "column": 6 - }, - "identifierName": "Word" - }, - "name": "Word" + "end": { + "line": 122, + "column": 6 }, - "value": { - "type": "Identifier", - "start": 2889, - "end": 2893, - "loc": { - "start": { - "line": 123, - "column": 2 - }, - "end": { - "line": 123, - "column": 6 - }, - "identifierName": "Word" - }, - "name": "Word" + "identifierName": "Word" + }, + "name": "Word" + } + }, + { + "type": "ExportSpecifier", + "start": 2870, + "end": 2875, + "loc": { + "start": { + "line": 123, + "column": 2 + }, + "end": { + "line": 123, + "column": 7 + } + }, + "local": { + "type": "Identifier", + "start": 2870, + "end": 2875, + "loc": { + "start": { + "line": 123, + "column": 2 }, - "extra": { - "shorthand": true - } + "end": { + "line": 123, + "column": 7 + }, + "identifierName": "Apply" }, - { - "type": "ObjectProperty", - "start": 2897, - "end": 2902, - "loc": { - "start": { - "line": 124, - "column": 2 - }, - "end": { - "line": 124, - "column": 7 - } + "name": "Apply" + }, + "exported": { + "type": "Identifier", + "start": 2870, + "end": 2875, + "loc": { + "start": { + "line": 123, + "column": 2 }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 2897, - "end": 2902, - "loc": { - "start": { - "line": 124, - "column": 2 - }, - "end": { - "line": 124, - "column": 7 - }, - "identifierName": "Apply" - }, - "name": "Apply" + "end": { + "line": 123, + "column": 7 }, - "value": { - "type": "Identifier", - "start": 2897, - "end": 2902, - "loc": { - "start": { - "line": 124, - "column": 2 - }, - "end": { - "line": 124, - "column": 7 - }, - "identifierName": "Apply" - }, - "name": "Apply" + "identifierName": "Apply" + }, + "name": "Apply" + } + }, + { + "type": "ExportSpecifier", + "start": 2879, + "end": 2884, + "loc": { + "start": { + "line": 124, + "column": 2 + }, + "end": { + "line": 124, + "column": 7 + } + }, + "local": { + "type": "Identifier", + "start": 2879, + "end": 2884, + "loc": { + "start": { + "line": 124, + "column": 2 }, - "extra": { - "shorthand": true - } + "end": { + "line": 124, + "column": 7 + }, + "identifierName": "Regex" + }, + "name": "Regex" + }, + "exported": { + "type": "Identifier", + "start": 2879, + "end": 2884, + "loc": { + "start": { + "line": 124, + "column": 2 + }, + "end": { + "line": 124, + "column": 7 + }, + "identifierName": "Regex" + }, + "name": "Regex" + } + } + ], + "source": null + }, + { + "type": "ExportNamedDeclaration", + "start": 2844, + "end": 2887, + "loc": { + "start": { + "line": 121, + "column": 0 + }, + "end": { + "line": 124, + "column": 10 + } + }, + "declaration": { + "type": "ClassDeclaration", + "start": 134, + "end": 274, + "loc": { + "start": { + "line": 7, + "column": 0 + }, + "end": { + "line": 16, + "column": 1 + } + }, + "id": { + "type": "Identifier", + "start": 140, + "end": 145, + "loc": { + "start": { + "line": 7, + "column": 6 + }, + "end": { + "line": 7, + "column": 11 + }, + "identifierName": "Value" + }, + "name": "Value" + }, + "superClass": null, + "body": { + "type": "ClassBody", + "start": 146, + "end": 274, + "loc": { + "start": { + "line": 7, + "column": 12 }, + "end": { + "line": 16, + "column": 1 + } + }, + "body": [ { - "type": "ObjectProperty", - "start": 2906, - "end": 2911, + "type": "ClassMethod", + "start": 150, + "end": 229, "loc": { "start": { - "line": 125, + "line": 8, "column": 2 }, "end": { - "line": 125, - "column": 7 + "line": 11, + "column": 3 } }, - "method": false, - "shorthand": true, + "static": false, "computed": false, "key": { "type": "Identifier", - "start": 2906, - "end": 2911, + "start": 150, + "end": 161, "loc": { "start": { - "line": 125, + "line": 8, "column": 2 }, "end": { - "line": 125, - "column": 7 + "line": 8, + "column": 13 }, - "identifierName": "Regex" + "identifierName": "constructor" }, - "name": "Regex" + "name": "constructor" }, - "value": { - "type": "Identifier", - "start": 2906, - "end": 2911, + "kind": "constructor", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 162, + "end": 167, + "loc": { + "start": { + "line": 8, + "column": 14 + }, + "end": { + "line": 8, + "column": 19 + }, + "identifierName": "token" + }, + "name": "token" + } + ], + "body": { + "type": "BlockStatement", + "start": 169, + "end": 229, "loc": { "start": { - "line": 125, - "column": 2 + "line": 8, + "column": 21 }, "end": { - "line": 125, - "column": 7 - }, - "identifierName": "Regex" + "line": 11, + "column": 3 + } }, - "name": "Regex" - }, - "extra": { - "shorthand": true + "body": [ + { + "type": "ExpressionStatement", + "start": 175, + "end": 195, + "loc": { + "start": { + "line": 9, + "column": 4 + }, + "end": { + "line": 9, + "column": 24 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 175, + "end": 194, + "loc": { + "start": { + "line": 9, + "column": 4 + }, + "end": { + "line": 9, + "column": 23 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 175, + "end": 184, + "loc": { + "start": { + "line": 9, + "column": 4 + }, + "end": { + "line": 9, + "column": 13 + } + }, + "object": { + "type": "ThisExpression", + "start": 175, + "end": 179, + "loc": { + "start": { + "line": 9, + "column": 4 + }, + "end": { + "line": 9, + "column": 8 + } + } + }, + "property": { + "type": "Identifier", + "start": 180, + "end": 184, + "loc": { + "start": { + "line": 9, + "column": 9 + }, + "end": { + "line": 9, + "column": 13 + }, + "identifierName": "type" + }, + "name": "type" + }, + "computed": false + }, + "right": { + "type": "StringLiteral", + "start": 187, + "end": 194, + "loc": { + "start": { + "line": 9, + "column": 16 + }, + "end": { + "line": 9, + "column": 23 + } + }, + "extra": { + "rawValue": "value", + "raw": "\"value\"" + }, + "value": "value" + } + } + }, + { + "type": "ExpressionStatement", + "start": 200, + "end": 225, + "loc": { + "start": { + "line": 10, + "column": 4 + }, + "end": { + "line": 10, + "column": 29 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 200, + "end": 224, + "loc": { + "start": { + "line": 10, + "column": 4 + }, + "end": { + "line": 10, + "column": 28 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 200, + "end": 210, + "loc": { + "start": { + "line": 10, + "column": 4 + }, + "end": { + "line": 10, + "column": 14 + } + }, + "object": { + "type": "ThisExpression", + "start": 200, + "end": 204, + "loc": { + "start": { + "line": 10, + "column": 4 + }, + "end": { + "line": 10, + "column": 8 + } + } + }, + "property": { + "type": "Identifier", + "start": 205, + "end": 210, + "loc": { + "start": { + "line": 10, + "column": 9 + }, + "end": { + "line": 10, + "column": 14 + }, + "identifierName": "value" + }, + "name": "value" + }, + "computed": false + }, + "right": { + "type": "MemberExpression", + "start": 213, + "end": 224, + "loc": { + "start": { + "line": 10, + "column": 17 + }, + "end": { + "line": 10, + "column": 28 + } + }, + "object": { + "type": "Identifier", + "start": 213, + "end": 218, + "loc": { + "start": { + "line": 10, + "column": 17 + }, + "end": { + "line": 10, + "column": 22 + }, + "identifierName": "token" + }, + "name": "token" + }, + "property": { + "type": "Identifier", + "start": 219, + "end": 224, + "loc": { + "start": { + "line": 10, + "column": 23 + }, + "end": { + "line": 10, + "column": 28 + }, + "identifierName": "value" + }, + "name": "value" + }, + "computed": false + } + } + } + ], + "directives": [] + } + }, + { + "type": "ClassMethod", + "start": 233, + "end": 272, + "loc": { + "start": { + "line": 13, + "column": 2 + }, + "end": { + "line": 15, + "column": 3 + } + }, + "static": false, + "computed": false, + "key": { + "type": "Identifier", + "start": 233, + "end": 241, + "loc": { + "start": { + "line": 13, + "column": 2 + }, + "end": { + "line": 13, + "column": 10 + }, + "identifierName": "evaluate" + }, + "name": "evaluate" + }, + "kind": "method", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [], + "body": { + "type": "BlockStatement", + "start": 244, + "end": 272, + "loc": { + "start": { + "line": 13, + "column": 13 + }, + "end": { + "line": 15, + "column": 3 + } + }, + "body": [ + { + "type": "ReturnStatement", + "start": 250, + "end": 268, + "loc": { + "start": { + "line": 14, + "column": 4 + }, + "end": { + "line": 14, + "column": 22 + } + }, + "argument": { + "type": "MemberExpression", + "start": 257, + "end": 267, + "loc": { + "start": { + "line": 14, + "column": 11 + }, + "end": { + "line": 14, + "column": 21 + } + }, + "object": { + "type": "ThisExpression", + "start": 257, + "end": 261, + "loc": { + "start": { + "line": 14, + "column": 11 + }, + "end": { + "line": 14, + "column": 15 + } + } + }, + "property": { + "type": "Identifier", + "start": 262, + "end": 267, + "loc": { + "start": { + "line": 14, + "column": 16 + }, + "end": { + "line": 14, + "column": 21 + }, + "identifierName": "value" + }, + "name": "value" + }, + "computed": false + } + } + ], + "directives": [] + } + } + ] + }, + "__PseudoExport__": false, + "leadingComments": [], + "trailingComments": [] + }, + "specifiers": null, + "source": null, + "leadingComments": null + }, + { + "type": "ExportNamedDeclaration", + "start": 2844, + "end": 2887, + "loc": { + "start": { + "line": 121, + "column": 0 + }, + "end": { + "line": 124, + "column": 10 + } + }, + "declaration": { + "type": "ClassDeclaration", + "start": 276, + "end": 832, + "loc": { + "start": { + "line": 18, + "column": 0 + }, + "end": { + "line": 40, + "column": 1 + } + }, + "id": { + "type": "Identifier", + "start": 282, + "end": 286, + "loc": { + "start": { + "line": 18, + "column": 6 + }, + "end": { + "line": 18, + "column": 10 + }, + "identifierName": "Word" + }, + "name": "Word" + }, + "superClass": null, + "body": { + "type": "ClassBody", + "start": 287, + "end": 832, + "loc": { + "start": { + "line": 18, + "column": 11 + }, + "end": { + "line": 40, + "column": 1 + } + }, + "body": [ + { + "type": "ClassMethod", + "start": 291, + "end": 368, + "loc": { + "start": { + "line": 19, + "column": 2 + }, + "end": { + "line": 22, + "column": 3 + } + }, + "static": false, + "computed": false, + "key": { + "type": "Identifier", + "start": 291, + "end": 302, + "loc": { + "start": { + "line": 19, + "column": 2 + }, + "end": { + "line": 19, + "column": 13 + }, + "identifierName": "constructor" + }, + "name": "constructor" + }, + "kind": "constructor", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 303, + "end": 308, + "loc": { + "start": { + "line": 19, + "column": 14 + }, + "end": { + "line": 19, + "column": 19 + }, + "identifierName": "token" + }, + "name": "token" + } + ], + "body": { + "type": "BlockStatement", + "start": 310, + "end": 368, + "loc": { + "start": { + "line": 19, + "column": 21 + }, + "end": { + "line": 22, + "column": 3 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 316, + "end": 335, + "loc": { + "start": { + "line": 20, + "column": 4 + }, + "end": { + "line": 20, + "column": 23 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 316, + "end": 334, + "loc": { + "start": { + "line": 20, + "column": 4 + }, + "end": { + "line": 20, + "column": 22 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 316, + "end": 325, + "loc": { + "start": { + "line": 20, + "column": 4 + }, + "end": { + "line": 20, + "column": 13 + } + }, + "object": { + "type": "ThisExpression", + "start": 316, + "end": 320, + "loc": { + "start": { + "line": 20, + "column": 4 + }, + "end": { + "line": 20, + "column": 8 + } + } + }, + "property": { + "type": "Identifier", + "start": 321, + "end": 325, + "loc": { + "start": { + "line": 20, + "column": 9 + }, + "end": { + "line": 20, + "column": 13 + }, + "identifierName": "type" + }, + "name": "type" + }, + "computed": false + }, + "right": { + "type": "StringLiteral", + "start": 328, + "end": 334, + "loc": { + "start": { + "line": 20, + "column": 16 + }, + "end": { + "line": 20, + "column": 22 + } + }, + "extra": { + "rawValue": "word", + "raw": "\"word\"" + }, + "value": "word" + } + } + }, + { + "type": "ExpressionStatement", + "start": 340, + "end": 364, + "loc": { + "start": { + "line": 21, + "column": 4 + }, + "end": { + "line": 21, + "column": 28 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 340, + "end": 363, + "loc": { + "start": { + "line": 21, + "column": 4 + }, + "end": { + "line": 21, + "column": 27 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 340, + "end": 349, + "loc": { + "start": { + "line": 21, + "column": 4 + }, + "end": { + "line": 21, + "column": 13 + } + }, + "object": { + "type": "ThisExpression", + "start": 340, + "end": 344, + "loc": { + "start": { + "line": 21, + "column": 4 + }, + "end": { + "line": 21, + "column": 8 + } + } + }, + "property": { + "type": "Identifier", + "start": 345, + "end": 349, + "loc": { + "start": { + "line": 21, + "column": 9 + }, + "end": { + "line": 21, + "column": 13 + }, + "identifierName": "name" + }, + "name": "name" + }, + "computed": false + }, + "right": { + "type": "MemberExpression", + "start": 352, + "end": 363, + "loc": { + "start": { + "line": 21, + "column": 16 + }, + "end": { + "line": 21, + "column": 27 + } + }, + "object": { + "type": "Identifier", + "start": 352, + "end": 357, + "loc": { + "start": { + "line": 21, + "column": 16 + }, + "end": { + "line": 21, + "column": 21 + }, + "identifierName": "token" + }, + "name": "token" + }, + "property": { + "type": "Identifier", + "start": 358, + "end": 363, + "loc": { + "start": { + "line": 21, + "column": 22 + }, + "end": { + "line": 21, + "column": 27 + }, + "identifierName": "value" + }, + "name": "value" + }, + "computed": false + } + } + } + ], + "directives": [] + } + }, + { + "type": "ClassMethod", + "start": 372, + "end": 830, + "loc": { + "start": { + "line": 24, + "column": 2 + }, + "end": { + "line": 39, + "column": 3 + } + }, + "static": false, + "computed": false, + "key": { + "type": "Identifier", + "start": 372, + "end": 380, + "loc": { + "start": { + "line": 24, + "column": 2 + }, + "end": { + "line": 24, + "column": 10 + }, + "identifierName": "evaluate" + }, + "name": "evaluate" + }, + "kind": "method", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 381, + "end": 384, + "loc": { + "start": { + "line": 24, + "column": 11 + }, + "end": { + "line": 24, + "column": 14 + }, + "identifierName": "env" + }, + "name": "env" + } + ], + "body": { + "type": "BlockStatement", + "start": 386, + "end": 830, + "loc": { + "start": { + "line": 24, + "column": 16 + }, + "end": { + "line": 39, + "column": 3 + } + }, + "body": [ + { + "type": "IfStatement", + "start": 408, + "end": 826, + "loc": { + "start": { + "line": 26, + "column": 4 + }, + "end": { + "line": 38, + "column": 5 + } + }, + "test": { + "type": "BinaryExpression", + "start": 412, + "end": 428, + "loc": { + "start": { + "line": 26, + "column": 8 + }, + "end": { + "line": 26, + "column": 24 + } + }, + "left": { + "type": "MemberExpression", + "start": 412, + "end": 421, + "loc": { + "start": { + "line": 26, + "column": 8 + }, + "end": { + "line": 26, + "column": 17 + } + }, + "object": { + "type": "ThisExpression", + "start": 412, + "end": 416, + "loc": { + "start": { + "line": 26, + "column": 8 + }, + "end": { + "line": 26, + "column": 12 + } + }, + "leadingComments": null + }, + "property": { + "type": "Identifier", + "start": 417, + "end": 421, + "loc": { + "start": { + "line": 26, + "column": 13 + }, + "end": { + "line": 26, + "column": 17 + }, + "identifierName": "name" + }, + "name": "name" + }, + "computed": false, + "leadingComments": null + }, + "operator": "in", + "right": { + "type": "Identifier", + "start": 425, + "end": 428, + "loc": { + "start": { + "line": 26, + "column": 21 + }, + "end": { + "line": 26, + "column": 24 + }, + "identifierName": "env" + }, + "name": "env" + }, + "leadingComments": null + }, + "consequent": { + "type": "BlockStatement", + "start": 430, + "end": 500, + "loc": { + "start": { + "line": 26, + "column": 26 + }, + "end": { + "line": 30, + "column": 5 + } + }, + "body": [ + { + "type": "ReturnStatement", + "start": 438, + "end": 460, + "loc": { + "start": { + "line": 27, + "column": 6 + }, + "end": { + "line": 27, + "column": 28 + } + }, + "argument": { + "type": "MemberExpression", + "start": 445, + "end": 459, + "loc": { + "start": { + "line": 27, + "column": 13 + }, + "end": { + "line": 27, + "column": 27 + } + }, + "object": { + "type": "Identifier", + "start": 445, + "end": 448, + "loc": { + "start": { + "line": 27, + "column": 13 + }, + "end": { + "line": 27, + "column": 16 + }, + "identifierName": "env" + }, + "name": "env" + }, + "property": { + "type": "MemberExpression", + "start": 449, + "end": 458, + "loc": { + "start": { + "line": 27, + "column": 17 + }, + "end": { + "line": 27, + "column": 26 + } + }, + "object": { + "type": "ThisExpression", + "start": 449, + "end": 453, + "loc": { + "start": { + "line": 27, + "column": 17 + }, + "end": { + "line": 27, + "column": 21 + } + } + }, + "property": { + "type": "Identifier", + "start": 454, + "end": 458, + "loc": { + "start": { + "line": 27, + "column": 22 + }, + "end": { + "line": 27, + "column": 26 + }, + "identifierName": "name" + }, + "name": "name" + }, + "computed": false + }, + "computed": true + }, + "trailingComments": [ + { + "type": "CommentLine", + "value": " Variable in const scope", + "start": 468, + "end": 494, + "loc": { + "start": { + "line": 29, + "column": 6 + }, + "end": { + "line": 29, + "column": 32 + } + } + } + ] + } + ], + "directives": [] + }, + "alternate": { + "type": "IfStatement", + "start": 506, + "end": 826, + "loc": { + "start": { + "line": 30, + "column": 11 + }, + "end": { + "line": 38, + "column": 5 + } + }, + "test": { + "type": "BinaryExpression", + "start": 510, + "end": 539, + "loc": { + "start": { + "line": 30, + "column": 15 + }, + "end": { + "line": 30, + "column": 44 + } + }, + "left": { + "type": "MemberExpression", + "start": 510, + "end": 519, + "loc": { + "start": { + "line": 30, + "column": 15 + }, + "end": { + "line": 30, + "column": 24 + } + }, + "object": { + "type": "ThisExpression", + "start": 510, + "end": 514, + "loc": { + "start": { + "line": 30, + "column": 15 + }, + "end": { + "line": 30, + "column": 19 + } + } + }, + "property": { + "type": "Identifier", + "start": 515, + "end": 519, + "loc": { + "start": { + "line": 30, + "column": 20 + }, + "end": { + "line": 30, + "column": 24 + }, + "identifierName": "name" + }, + "name": "name" + }, + "computed": false + }, + "operator": "in", + "right": { + "type": "MemberExpression", + "start": 523, + "end": 539, + "loc": { + "start": { + "line": 30, + "column": 28 + }, + "end": { + "line": 30, + "column": 44 + } + }, + "object": { + "type": "Identifier", + "start": 523, + "end": 526, + "loc": { + "start": { + "line": 30, + "column": 28 + }, + "end": { + "line": 30, + "column": 31 + }, + "identifierName": "env" + }, + "name": "env" + }, + "property": { + "type": "StringLiteral", + "start": 527, + "end": 538, + "loc": { + "start": { + "line": 30, + "column": 32 + }, + "end": { + "line": 30, + "column": 43 + } + }, + "extra": { + "rawValue": "__const__", + "raw": "\"__const__\"" + }, + "value": "__const__" + }, + "computed": true + } + }, + "consequent": { + "type": "BlockStatement", + "start": 541, + "end": 648, + "loc": { + "start": { + "line": 30, + "column": 46 + }, + "end": { + "line": 34, + "column": 5 + } + }, + "body": [ + { + "type": "ReturnStatement", + "start": 549, + "end": 584, + "loc": { + "start": { + "line": 31, + "column": 6 + }, + "end": { + "line": 31, + "column": 41 + } + }, + "argument": { + "type": "MemberExpression", + "start": 556, + "end": 583, + "loc": { + "start": { + "line": 31, + "column": 13 + }, + "end": { + "line": 31, + "column": 40 + } + }, + "object": { + "type": "MemberExpression", + "start": 556, + "end": 572, + "loc": { + "start": { + "line": 31, + "column": 13 + }, + "end": { + "line": 31, + "column": 29 + } + }, + "object": { + "type": "Identifier", + "start": 556, + "end": 559, + "loc": { + "start": { + "line": 31, + "column": 13 + }, + "end": { + "line": 31, + "column": 16 + }, + "identifierName": "env" + }, + "name": "env" + }, + "property": { + "type": "StringLiteral", + "start": 560, + "end": 571, + "loc": { + "start": { + "line": 31, + "column": 17 + }, + "end": { + "line": 31, + "column": 28 + } + }, + "extra": { + "rawValue": "__const__", + "raw": "\"__const__\"" + }, + "value": "__const__" + }, + "computed": true + }, + "property": { + "type": "MemberExpression", + "start": 573, + "end": 582, + "loc": { + "start": { + "line": 31, + "column": 30 + }, + "end": { + "line": 31, + "column": 39 + } + }, + "object": { + "type": "ThisExpression", + "start": 573, + "end": 577, + "loc": { + "start": { + "line": 31, + "column": 30 + }, + "end": { + "line": 31, + "column": 34 + } + } + }, + "property": { + "type": "Identifier", + "start": 578, + "end": 582, + "loc": { + "start": { + "line": 31, + "column": 35 + }, + "end": { + "line": 31, + "column": 39 + }, + "identifierName": "name" + }, + "name": "name" + }, + "computed": false + }, + "computed": true + }, + "trailingComments": [ + { + "type": "CommentLine", + "value": " Object variable referenced without using 'this'", + "start": 592, + "end": 642, + "loc": { + "start": { + "line": 33, + "column": 6 + }, + "end": { + "line": 33, + "column": 56 + } + } + } + ] + } + ], + "directives": [] + }, + "alternate": { + "type": "IfStatement", + "start": 654, + "end": 826, + "loc": { + "start": { + "line": 34, + "column": 11 + }, + "end": { + "line": 38, + "column": 5 + } + }, + "test": { + "type": "LogicalExpression", + "start": 658, + "end": 699, + "loc": { + "start": { + "line": 34, + "column": 15 + }, + "end": { + "line": 34, + "column": 56 + } + }, + "left": { + "type": "BinaryExpression", + "start": 658, + "end": 671, + "loc": { + "start": { + "line": 34, + "column": 15 + }, + "end": { + "line": 34, + "column": 28 + } + }, + "left": { + "type": "StringLiteral", + "start": 658, + "end": 664, + "loc": { + "start": { + "line": 34, + "column": 15 + }, + "end": { + "line": 34, + "column": 21 + } + }, + "extra": { + "rawValue": "this", + "raw": "\"this\"" + }, + "value": "this" + }, + "operator": "in", + "right": { + "type": "Identifier", + "start": 668, + "end": 671, + "loc": { + "start": { + "line": 34, + "column": 25 + }, + "end": { + "line": 34, + "column": 28 + }, + "identifierName": "env" + }, + "name": "env" + } + }, + "operator": "&&", + "right": { + "type": "BinaryExpression", + "start": 675, + "end": 699, + "loc": { + "start": { + "line": 34, + "column": 32 + }, + "end": { + "line": 34, + "column": 56 + } + }, + "left": { + "type": "MemberExpression", + "start": 675, + "end": 684, + "loc": { + "start": { + "line": 34, + "column": 32 + }, + "end": { + "line": 34, + "column": 41 + } + }, + "object": { + "type": "ThisExpression", + "start": 675, + "end": 679, + "loc": { + "start": { + "line": 34, + "column": 32 + }, + "end": { + "line": 34, + "column": 36 + } + } + }, + "property": { + "type": "Identifier", + "start": 680, + "end": 684, + "loc": { + "start": { + "line": 34, + "column": 37 + }, + "end": { + "line": 34, + "column": 41 + }, + "identifierName": "name" + }, + "name": "name" + }, + "computed": false + }, + "operator": "in", + "right": { + "type": "MemberExpression", + "start": 688, + "end": 699, + "loc": { + "start": { + "line": 34, + "column": 45 + }, + "end": { + "line": 34, + "column": 56 + } + }, + "object": { + "type": "Identifier", + "start": 688, + "end": 691, + "loc": { + "start": { + "line": 34, + "column": 45 + }, + "end": { + "line": 34, + "column": 48 + }, + "identifierName": "env" + }, + "name": "env" + }, + "property": { + "type": "StringLiteral", + "start": 692, + "end": 698, + "loc": { + "start": { + "line": 34, + "column": 49 + }, + "end": { + "line": 34, + "column": 55 + } + }, + "extra": { + "rawValue": "this", + "raw": "\"this\"" + }, + "value": "this" + }, + "computed": true + } + } + }, + "consequent": { + "type": "BlockStatement", + "start": 701, + "end": 745, + "loc": { + "start": { + "line": 34, + "column": 58 + }, + "end": { + "line": 36, + "column": 5 + } + }, + "body": [ + { + "type": "ReturnStatement", + "start": 709, + "end": 739, + "loc": { + "start": { + "line": 35, + "column": 6 + }, + "end": { + "line": 35, + "column": 36 + } + }, + "argument": { + "type": "MemberExpression", + "start": 716, + "end": 738, + "loc": { + "start": { + "line": 35, + "column": 13 + }, + "end": { + "line": 35, + "column": 35 + } + }, + "object": { + "type": "MemberExpression", + "start": 716, + "end": 727, + "loc": { + "start": { + "line": 35, + "column": 13 + }, + "end": { + "line": 35, + "column": 24 + } + }, + "object": { + "type": "Identifier", + "start": 716, + "end": 719, + "loc": { + "start": { + "line": 35, + "column": 13 + }, + "end": { + "line": 35, + "column": 16 + }, + "identifierName": "env" + }, + "name": "env" + }, + "property": { + "type": "StringLiteral", + "start": 720, + "end": 726, + "loc": { + "start": { + "line": 35, + "column": 17 + }, + "end": { + "line": 35, + "column": 23 + } + }, + "extra": { + "rawValue": "this", + "raw": "\"this\"" + }, + "value": "this" + }, + "computed": true + }, + "property": { + "type": "MemberExpression", + "start": 728, + "end": 737, + "loc": { + "start": { + "line": 35, + "column": 25 + }, + "end": { + "line": 35, + "column": 34 + } + }, + "object": { + "type": "ThisExpression", + "start": 728, + "end": 732, + "loc": { + "start": { + "line": 35, + "column": 25 + }, + "end": { + "line": 35, + "column": 29 + } + } + }, + "property": { + "type": "Identifier", + "start": 733, + "end": 737, + "loc": { + "start": { + "line": 35, + "column": 30 + }, + "end": { + "line": 35, + "column": 34 + }, + "identifierName": "name" + }, + "name": "name" + }, + "computed": false + }, + "computed": true + } + } + ], + "directives": [] + }, + "alternate": { + "type": "BlockStatement", + "start": 751, + "end": 826, + "loc": { + "start": { + "line": 36, + "column": 11 + }, + "end": { + "line": 38, + "column": 5 + } + }, + "body": [ + { + "type": "ThrowStatement", + "start": 759, + "end": 820, + "loc": { + "start": { + "line": 37, + "column": 6 + }, + "end": { + "line": 37, + "column": 67 + } + }, + "argument": { + "type": "NewExpression", + "start": 765, + "end": 819, + "loc": { + "start": { + "line": 37, + "column": 12 + }, + "end": { + "line": 37, + "column": 66 + } + }, + "callee": { + "type": "Identifier", + "start": 769, + "end": 783, + "loc": { + "start": { + "line": 37, + "column": 16 + }, + "end": { + "line": 37, + "column": 30 + }, + "identifierName": "ReferenceError" + }, + "name": "ReferenceError" + }, + "arguments": [ + { + "type": "TemplateLiteral", + "start": 784, + "end": 818, + "loc": { + "start": { + "line": 37, + "column": 31 + }, + "end": { + "line": 37, + "column": 65 + } + }, + "expressions": [ + { + "type": "MemberExpression", + "start": 807, + "end": 816, + "loc": { + "start": { + "line": 37, + "column": 54 + }, + "end": { + "line": 37, + "column": 63 + } + }, + "object": { + "type": "ThisExpression", + "start": 807, + "end": 811, + "loc": { + "start": { + "line": 37, + "column": 54 + }, + "end": { + "line": 37, + "column": 58 + } + } + }, + "property": { + "type": "Identifier", + "start": 812, + "end": 816, + "loc": { + "start": { + "line": 37, + "column": 59 + }, + "end": { + "line": 37, + "column": 63 + }, + "identifierName": "name" + }, + "name": "name" + }, + "computed": false + } + ], + "quasis": [ + { + "type": "TemplateElement", + "start": 785, + "end": 805, + "loc": { + "start": { + "line": 37, + "column": 32 + }, + "end": { + "line": 37, + "column": 52 + } + }, + "value": { + "raw": "Undefined variable: ", + "cooked": "Undefined variable: " + }, + "tail": false + }, + { + "type": "TemplateElement", + "start": 817, + "end": 817, + "loc": { + "start": { + "line": 37, + "column": 64 + }, + "end": { + "line": 37, + "column": 64 + } + }, + "value": { + "raw": "", + "cooked": "" + }, + "tail": true + } + ] + } + ] + } + } + ], + "directives": [] + } + } + }, + "leadingComments": [ + { + "type": "CommentLine", + "value": " Variable", + "start": 392, + "end": 403, + "loc": { + "start": { + "line": 25, + "column": 4 + }, + "end": { + "line": 25, + "column": 15 + } + } + } + ] + } + ], + "directives": [] + } + } + ] + }, + "__PseudoExport__": false, + "leadingComments": [], + "trailingComments": [] + }, + "specifiers": null, + "source": null, + "leadingComments": null + }, + { + "type": "ExportNamedDeclaration", + "start": 2844, + "end": 2887, + "loc": { + "start": { + "line": 121, + "column": 0 + }, + "end": { + "line": 124, + "column": 10 + } + }, + "declaration": { + "type": "ClassDeclaration", + "start": 834, + "end": 2647, + "loc": { + "start": { + "line": 42, + "column": 0 + }, + "end": { + "line": 106, + "column": 1 + } + }, + "id": { + "type": "Identifier", + "start": 840, + "end": 845, + "loc": { + "start": { + "line": 42, + "column": 6 + }, + "end": { + "line": 42, + "column": 11 + }, + "identifierName": "Apply" + }, + "name": "Apply" + }, + "superClass": null, + "body": { + "type": "ClassBody", + "start": 846, + "end": 2647, + "loc": { + "start": { + "line": 42, + "column": 12 + }, + "end": { + "line": 106, + "column": 1 + } + }, + "body": [ + { + "type": "ClassMethod", + "start": 850, + "end": 944, + "loc": { + "start": { + "line": 43, + "column": 2 + }, + "end": { + "line": 47, + "column": 3 + } + }, + "static": false, + "computed": false, + "key": { + "type": "Identifier", + "start": 850, + "end": 861, + "loc": { + "start": { + "line": 43, + "column": 2 + }, + "end": { + "line": 43, + "column": 13 + }, + "identifierName": "constructor" + }, + "name": "constructor" + }, + "kind": "constructor", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 862, + "end": 866, + "loc": { + "start": { + "line": 43, + "column": 14 + }, + "end": { + "line": 43, + "column": 18 + }, + "identifierName": "expr" + }, + "name": "expr" + } + ], + "body": { + "type": "BlockStatement", + "start": 868, + "end": 944, + "loc": { + "start": { + "line": 43, + "column": 20 + }, + "end": { + "line": 47, + "column": 3 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 874, + "end": 894, + "loc": { + "start": { + "line": 44, + "column": 4 + }, + "end": { + "line": 44, + "column": 24 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 874, + "end": 893, + "loc": { + "start": { + "line": 44, + "column": 4 + }, + "end": { + "line": 44, + "column": 23 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 874, + "end": 883, + "loc": { + "start": { + "line": 44, + "column": 4 + }, + "end": { + "line": 44, + "column": 13 + } + }, + "object": { + "type": "ThisExpression", + "start": 874, + "end": 878, + "loc": { + "start": { + "line": 44, + "column": 4 + }, + "end": { + "line": 44, + "column": 8 + } + } + }, + "property": { + "type": "Identifier", + "start": 879, + "end": 883, + "loc": { + "start": { + "line": 44, + "column": 9 + }, + "end": { + "line": 44, + "column": 13 + }, + "identifierName": "type" + }, + "name": "type" + }, + "computed": false + }, + "right": { + "type": "StringLiteral", + "start": 886, + "end": 893, + "loc": { + "start": { + "line": 44, + "column": 16 + }, + "end": { + "line": 44, + "column": 23 + } + }, + "extra": { + "rawValue": "apply", + "raw": "\"apply\"" + }, + "value": "apply" + } + } + }, + { + "type": "ExpressionStatement", + "start": 899, + "end": 920, + "loc": { + "start": { + "line": 45, + "column": 4 + }, + "end": { + "line": 45, + "column": 25 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 899, + "end": 919, + "loc": { + "start": { + "line": 45, + "column": 4 + }, + "end": { + "line": 45, + "column": 24 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 899, + "end": 912, + "loc": { + "start": { + "line": 45, + "column": 4 + }, + "end": { + "line": 45, + "column": 17 + } + }, + "object": { + "type": "ThisExpression", + "start": 899, + "end": 903, + "loc": { + "start": { + "line": 45, + "column": 4 + }, + "end": { + "line": 45, + "column": 8 + } + } + }, + "property": { + "type": "Identifier", + "start": 904, + "end": 912, + "loc": { + "start": { + "line": 45, + "column": 9 + }, + "end": { + "line": 45, + "column": 17 + }, + "identifierName": "operator" + }, + "name": "operator" + }, + "computed": false + }, + "right": { + "type": "Identifier", + "start": 915, + "end": 919, + "loc": { + "start": { + "line": 45, + "column": 20 + }, + "end": { + "line": 45, + "column": 24 + }, + "identifierName": "expr" + }, + "name": "expr" + } + } + }, + { + "type": "ExpressionStatement", + "start": 925, + "end": 940, + "loc": { + "start": { + "line": 46, + "column": 4 + }, + "end": { + "line": 46, + "column": 19 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 925, + "end": 939, + "loc": { + "start": { + "line": 46, + "column": 4 + }, + "end": { + "line": 46, + "column": 18 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 925, + "end": 934, + "loc": { + "start": { + "line": 46, + "column": 4 + }, + "end": { + "line": 46, + "column": 13 + } + }, + "object": { + "type": "ThisExpression", + "start": 925, + "end": 929, + "loc": { + "start": { + "line": 46, + "column": 4 + }, + "end": { + "line": 46, + "column": 8 + } + } + }, + "property": { + "type": "Identifier", + "start": 930, + "end": 934, + "loc": { + "start": { + "line": 46, + "column": 9 + }, + "end": { + "line": 46, + "column": 13 + }, + "identifierName": "args" + }, + "name": "args" + }, + "computed": false + }, + "right": { + "type": "ArrayExpression", + "start": 937, + "end": 939, + "loc": { + "start": { + "line": 46, + "column": 16 + }, + "end": { + "line": 46, + "column": 18 + } + }, + "elements": [] + } + } + } + ], + "directives": [] + } + }, + { + "type": "ClassMethod", + "start": 948, + "end": 2645, + "loc": { + "start": { + "line": 49, + "column": 2 + }, + "end": { + "line": 105, + "column": 3 + } + }, + "static": false, + "computed": false, + "key": { + "type": "Identifier", + "start": 948, + "end": 956, + "loc": { + "start": { + "line": 49, + "column": 2 + }, + "end": { + "line": 49, + "column": 10 + }, + "identifierName": "evaluate" + }, + "name": "evaluate" + }, + "kind": "method", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 957, + "end": 960, + "loc": { + "start": { + "line": 49, + "column": 11 + }, + "end": { + "line": 49, + "column": 14 + }, + "identifierName": "env" + }, + "name": "env" + } + ], + "body": { + "type": "BlockStatement", + "start": 962, + "end": 2645, + "loc": { + "start": { + "line": 49, + "column": 16 + }, + "end": { + "line": 105, + "column": 3 + } + }, + "body": [ + { + "type": "IfStatement", + "start": 1011, + "end": 1154, + "loc": { + "start": { + "line": 51, + "column": 4 + }, + "end": { + "line": 53, + "column": 5 + } + }, + "test": { + "type": "LogicalExpression", + "start": 1015, + "end": 1082, + "loc": { + "start": { + "line": 51, + "column": 8 + }, + "end": { + "line": 51, + "column": 75 + } + }, + "left": { + "type": "BinaryExpression", + "start": 1015, + "end": 1044, + "loc": { + "start": { + "line": 51, + "column": 8 + }, + "end": { + "line": 51, + "column": 37 + } + }, + "left": { + "type": "MemberExpression", + "start": 1015, + "end": 1033, + "loc": { + "start": { + "line": 51, + "column": 8 + }, + "end": { + "line": 51, + "column": 26 + } + }, + "object": { + "type": "MemberExpression", + "start": 1015, + "end": 1028, + "loc": { + "start": { + "line": 51, + "column": 8 + }, + "end": { + "line": 51, + "column": 21 + } + }, + "object": { + "type": "ThisExpression", + "start": 1015, + "end": 1019, + "loc": { + "start": { + "line": 51, + "column": 8 + }, + "end": { + "line": 51, + "column": 12 + } + }, + "leadingComments": null + }, + "property": { + "type": "Identifier", + "start": 1020, + "end": 1028, + "loc": { + "start": { + "line": 51, + "column": 13 + }, + "end": { + "line": 51, + "column": 21 + }, + "identifierName": "operator" + }, + "name": "operator" + }, + "computed": false, + "leadingComments": null + }, + "property": { + "type": "Identifier", + "start": 1029, + "end": 1033, + "loc": { + "start": { + "line": 51, + "column": 22 + }, + "end": { + "line": 51, + "column": 26 + }, + "identifierName": "type" + }, + "name": "type" + }, + "computed": false, + "leadingComments": null + }, + "operator": "===", + "right": { + "type": "StringLiteral", + "start": 1038, + "end": 1044, + "loc": { + "start": { + "line": 51, + "column": 31 + }, + "end": { + "line": 51, + "column": 37 + } + }, + "extra": { + "rawValue": "word", + "raw": "\"word\"" + }, + "value": "word" + }, + "leadingComments": null + }, + "operator": "&&", + "right": { + "type": "BinaryExpression", + "start": 1048, + "end": 1082, + "loc": { + "start": { + "line": 51, + "column": 41 + }, + "end": { + "line": 51, + "column": 75 + } + }, + "left": { + "type": "MemberExpression", + "start": 1048, + "end": 1066, + "loc": { + "start": { + "line": 51, + "column": 41 + }, + "end": { + "line": 51, + "column": 59 + } + }, + "object": { + "type": "MemberExpression", + "start": 1048, + "end": 1061, + "loc": { + "start": { + "line": 51, + "column": 41 + }, + "end": { + "line": 51, + "column": 54 + } + }, + "object": { + "type": "ThisExpression", + "start": 1048, + "end": 1052, + "loc": { + "start": { + "line": 51, + "column": 41 + }, + "end": { + "line": 51, + "column": 45 + } + } + }, + "property": { + "type": "Identifier", + "start": 1053, + "end": 1061, + "loc": { + "start": { + "line": 51, + "column": 46 + }, + "end": { + "line": 51, + "column": 54 + }, + "identifierName": "operator" + }, + "name": "operator" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 1062, + "end": 1066, + "loc": { + "start": { + "line": 51, + "column": 55 + }, + "end": { + "line": 51, + "column": 59 + }, + "identifierName": "name" + }, + "name": "name" + }, + "computed": false + }, + "operator": "in", + "right": { + "type": "Identifier", + "start": 1070, + "end": 1082, + "loc": { + "start": { + "line": 51, + "column": 63 + }, + "end": { + "line": 51, + "column": 75 + }, + "identifierName": "SpecialForms" + }, + "name": "SpecialForms" + } + }, + "leadingComments": null + }, + "consequent": { + "type": "BlockStatement", + "start": 1084, + "end": 1154, + "loc": { + "start": { + "line": 51, + "column": 77 + }, + "end": { + "line": 53, + "column": 5 + } + }, + "body": [ + { + "type": "ReturnStatement", + "start": 1092, + "end": 1148, + "loc": { + "start": { + "line": 52, + "column": 6 + }, + "end": { + "line": 52, + "column": 62 + } + }, + "argument": { + "type": "CallExpression", + "start": 1099, + "end": 1147, + "loc": { + "start": { + "line": 52, + "column": 13 + }, + "end": { + "line": 52, + "column": 61 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1099, + "end": 1131, + "loc": { + "start": { + "line": 52, + "column": 13 + }, + "end": { + "line": 52, + "column": 45 + } + }, + "object": { + "type": "Identifier", + "start": 1099, + "end": 1111, + "loc": { + "start": { + "line": 52, + "column": 13 + }, + "end": { + "line": 52, + "column": 25 + }, + "identifierName": "SpecialForms" + }, + "name": "SpecialForms" + }, + "property": { + "type": "MemberExpression", + "start": 1112, + "end": 1130, + "loc": { + "start": { + "line": 52, + "column": 26 + }, + "end": { + "line": 52, + "column": 44 + } + }, + "object": { + "type": "MemberExpression", + "start": 1112, + "end": 1125, + "loc": { + "start": { + "line": 52, + "column": 26 + }, + "end": { + "line": 52, + "column": 39 + } + }, + "object": { + "type": "ThisExpression", + "start": 1112, + "end": 1116, + "loc": { + "start": { + "line": 52, + "column": 26 + }, + "end": { + "line": 52, + "column": 30 + } + } + }, + "property": { + "type": "Identifier", + "start": 1117, + "end": 1125, + "loc": { + "start": { + "line": 52, + "column": 31 + }, + "end": { + "line": 52, + "column": 39 + }, + "identifierName": "operator" + }, + "name": "operator" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 1126, + "end": 1130, + "loc": { + "start": { + "line": 52, + "column": 40 + }, + "end": { + "line": 52, + "column": 44 + }, + "identifierName": "name" + }, + "name": "name" + }, + "computed": false + }, + "computed": true + }, + "arguments": [ + { + "type": "MemberExpression", + "start": 1132, + "end": 1141, + "loc": { + "start": { + "line": 52, + "column": 46 + }, + "end": { + "line": 52, + "column": 55 + } + }, + "object": { + "type": "ThisExpression", + "start": 1132, + "end": 1136, + "loc": { + "start": { + "line": 52, + "column": 46 + }, + "end": { + "line": 52, + "column": 50 + } + } + }, + "property": { + "type": "Identifier", + "start": 1137, + "end": 1141, + "loc": { + "start": { + "line": 52, + "column": 51 + }, + "end": { + "line": 52, + "column": 55 + }, + "identifierName": "args" + }, + "name": "args" + }, + "computed": false + }, + { + "type": "Identifier", + "start": 1143, + "end": 1146, + "loc": { + "start": { + "line": 52, + "column": 57 + }, + "end": { + "line": 52, + "column": 60 + }, + "identifierName": "env" + }, + "name": "env" + } + ] + } + } + ], + "directives": [], + "trailingComments": null + }, + "alternate": null, + "leadingComments": [ + { + "type": "CommentLine", + "value": " Check if its a specialForm function", + "start": 968, + "end": 1006, + "loc": { + "start": { + "line": 50, + "column": 4 + }, + "end": { + "line": 50, + "column": 42 + } + } + } + ], + "trailingComments": [ + { + "type": "CommentLine", + "value": " Evaluated operator", + "start": 1160, + "end": 1181, + "loc": { + "start": { + "line": 55, + "column": 4 + }, + "end": { + "line": 55, + "column": 25 + } + } + } + ] + }, + { + "type": "VariableDeclaration", + "start": 1186, + "end": 1223, + "loc": { + "start": { + "line": 56, + "column": 4 + }, + "end": { + "line": 56, + "column": 41 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 1190, + "end": 1222, + "loc": { + "start": { + "line": 56, + "column": 8 + }, + "end": { + "line": 56, + "column": 40 + } + }, + "id": { + "type": "Identifier", + "start": 1190, + "end": 1192, + "loc": { + "start": { + "line": 56, + "column": 8 + }, + "end": { + "line": 56, + "column": 10 + }, + "identifierName": "op" + }, + "name": "op", + "leadingComments": null + }, + "init": { + "type": "CallExpression", + "start": 1195, + "end": 1222, + "loc": { + "start": { + "line": 56, + "column": 13 + }, + "end": { + "line": 56, + "column": 40 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1195, + "end": 1217, + "loc": { + "start": { + "line": 56, + "column": 13 + }, + "end": { + "line": 56, + "column": 35 + } + }, + "object": { + "type": "MemberExpression", + "start": 1195, + "end": 1208, + "loc": { + "start": { + "line": 56, + "column": 13 + }, + "end": { + "line": 56, + "column": 26 + } + }, + "object": { + "type": "ThisExpression", + "start": 1195, + "end": 1199, + "loc": { + "start": { + "line": 56, + "column": 13 + }, + "end": { + "line": 56, + "column": 17 + } + } + }, + "property": { + "type": "Identifier", + "start": 1200, + "end": 1208, + "loc": { + "start": { + "line": 56, + "column": 18 + }, + "end": { + "line": 56, + "column": 26 + }, + "identifierName": "operator" + }, + "name": "operator" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 1209, + "end": 1217, + "loc": { + "start": { + "line": 56, + "column": 27 + }, + "end": { + "line": 56, + "column": 35 + }, + "identifierName": "evaluate" + }, + "name": "evaluate" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 1218, + "end": 1221, + "loc": { + "start": { + "line": 56, + "column": 36 + }, + "end": { + "line": 56, + "column": 39 + }, + "identifierName": "env" + }, + "name": "env" + } + ] + }, + "leadingComments": null + } + ], + "kind": "let", + "leadingComments": [ + { + "type": "CommentLine", + "value": " Evaluated operator", + "start": 1160, + "end": 1181, + "loc": { + "start": { + "line": 55, + "column": 4 + }, + "end": { + "line": 55, + "column": 25 + } + } + } + ], + "trailingComments": [ + { + "type": "CommentLine", + "value": " Evaluated arguments", + "start": 1228, + "end": 1250, + "loc": { + "start": { + "line": 57, + "column": 4 + }, + "end": { + "line": 57, + "column": 26 + } + } + } + ] + }, + { + "type": "VariableDeclaration", + "start": 1255, + "end": 1308, + "loc": { + "start": { + "line": 58, + "column": 4 + }, + "end": { + "line": 58, + "column": 57 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 1259, + "end": 1307, + "loc": { + "start": { + "line": 58, + "column": 8 + }, + "end": { + "line": 58, + "column": 56 + } + }, + "id": { + "type": "Identifier", + "start": 1259, + "end": 1265, + "loc": { + "start": { + "line": 58, + "column": 8 + }, + "end": { + "line": 58, + "column": 14 + }, + "identifierName": "evArgs" + }, + "name": "evArgs", + "leadingComments": null + }, + "init": { + "type": "CallExpression", + "start": 1268, + "end": 1307, + "loc": { + "start": { + "line": 58, + "column": 17 + }, + "end": { + "line": 58, + "column": 56 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1268, + "end": 1281, + "loc": { + "start": { + "line": 58, + "column": 17 + }, + "end": { + "line": 58, + "column": 30 + } + }, + "object": { + "type": "MemberExpression", + "start": 1268, + "end": 1277, + "loc": { + "start": { + "line": 58, + "column": 17 + }, + "end": { + "line": 58, + "column": 26 + } + }, + "object": { + "type": "ThisExpression", + "start": 1268, + "end": 1272, + "loc": { + "start": { + "line": 58, + "column": 17 + }, + "end": { + "line": 58, + "column": 21 + } + } + }, + "property": { + "type": "Identifier", + "start": 1273, + "end": 1277, + "loc": { + "start": { + "line": 58, + "column": 22 + }, + "end": { + "line": 58, + "column": 26 + }, + "identifierName": "args" + }, + "name": "args" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 1278, + "end": 1281, + "loc": { + "start": { + "line": 58, + "column": 27 + }, + "end": { + "line": 58, + "column": 30 + }, + "identifierName": "map" + }, + "name": "map" + }, + "computed": false + }, + "arguments": [ + { + "type": "ArrowFunctionExpression", + "start": 1282, + "end": 1306, + "loc": { + "start": { + "line": 58, + "column": 31 + }, + "end": { + "line": 58, + "column": 55 + } + }, + "id": null, + "generator": false, + "expression": true, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 1282, + "end": 1285, + "loc": { + "start": { + "line": 58, + "column": 31 + }, + "end": { + "line": 58, + "column": 34 + }, + "identifierName": "arg" + }, + "name": "arg" + } + ], + "body": { + "type": "CallExpression", + "start": 1289, + "end": 1306, + "loc": { + "start": { + "line": 58, + "column": 38 + }, + "end": { + "line": 58, + "column": 55 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1289, + "end": 1301, + "loc": { + "start": { + "line": 58, + "column": 38 + }, + "end": { + "line": 58, + "column": 50 + } + }, + "object": { + "type": "Identifier", + "start": 1289, + "end": 1292, + "loc": { + "start": { + "line": 58, + "column": 38 + }, + "end": { + "line": 58, + "column": 41 + }, + "identifierName": "arg" + }, + "name": "arg" + }, + "property": { + "type": "Identifier", + "start": 1293, + "end": 1301, + "loc": { + "start": { + "line": 58, + "column": 42 + }, + "end": { + "line": 58, + "column": 50 + }, + "identifierName": "evaluate" + }, + "name": "evaluate" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 1302, + "end": 1305, + "loc": { + "start": { + "line": 58, + "column": 51 + }, + "end": { + "line": 58, + "column": 54 + }, + "identifierName": "env" + }, + "name": "env" + } + ] + } + } + ] + }, + "leadingComments": null + } + ], + "kind": "let", + "leadingComments": [ + { + "type": "CommentLine", + "value": " Evaluated arguments", + "start": 1228, + "end": 1250, + "loc": { + "start": { + "line": 57, + "column": 4 + }, + "end": { + "line": 57, + "column": 26 + } + } + } + ] + }, + { + "type": "IfStatement", + "start": 1314, + "end": 1402, + "loc": { + "start": { + "line": 60, + "column": 4 + }, + "end": { + "line": 63, + "column": 5 + } + }, + "test": { + "type": "BinaryExpression", + "start": 1318, + "end": 1342, + "loc": { + "start": { + "line": 60, + "column": 8 + }, + "end": { + "line": 60, + "column": 32 + } + }, + "left": { + "type": "UnaryExpression", + "start": 1318, + "end": 1327, + "loc": { + "start": { + "line": 60, + "column": 8 + }, + "end": { + "line": 60, + "column": 17 + } + }, + "operator": "typeof", + "prefix": true, + "argument": { + "type": "Identifier", + "start": 1325, + "end": 1327, + "loc": { + "start": { + "line": 60, + "column": 15 + }, + "end": { + "line": 60, + "column": 17 + }, + "identifierName": "op" + }, + "name": "op" + }, + "extra": { + "parenthesizedArgument": false + } + }, + "operator": "===", + "right": { + "type": "StringLiteral", + "start": 1332, + "end": 1342, + "loc": { + "start": { + "line": 60, + "column": 22 + }, + "end": { + "line": 60, + "column": 32 + } + }, + "extra": { + "rawValue": "function", + "raw": "\"function\"" + }, + "value": "function" + } + }, + "consequent": { + "type": "BlockStatement", + "start": 1344, + "end": 1402, + "loc": { + "start": { + "line": 60, + "column": 34 + }, + "end": { + "line": 63, + "column": 5 + } + }, + "body": [ + { + "type": "ReturnStatement", + "start": 1375, + "end": 1396, + "loc": { + "start": { + "line": 62, + "column": 6 + }, + "end": { + "line": 62, + "column": 27 + } + }, + "argument": { + "type": "CallExpression", + "start": 1382, + "end": 1395, + "loc": { + "start": { + "line": 62, + "column": 13 + }, + "end": { + "line": 62, + "column": 26 + } + }, + "callee": { + "type": "Identifier", + "start": 1382, + "end": 1384, + "loc": { + "start": { + "line": 62, + "column": 13 + }, + "end": { + "line": 62, + "column": 15 + }, + "identifierName": "op" + }, + "name": "op", + "leadingComments": null + }, + "arguments": [ + { + "type": "SpreadElement", + "start": 1385, + "end": 1394, + "loc": { + "start": { + "line": 62, + "column": 16 + }, + "end": { + "line": 62, + "column": 25 + } + }, + "argument": { + "type": "Identifier", + "start": 1388, + "end": 1394, + "loc": { + "start": { + "line": 62, + "column": 19 + }, + "end": { + "line": 62, + "column": 25 + }, + "identifierName": "evArgs" + }, + "name": "evArgs" + } + } + ], + "leadingComments": null + }, + "leadingComments": [ + { + "type": "CommentLine", + "value": " Is a function", + "start": 1352, + "end": 1368, + "loc": { + "start": { + "line": 61, + "column": 6 + }, + "end": { + "line": 61, + "column": 22 + } + } + } + ] + } + ], + "directives": [] + }, + "alternate": null + }, + { + "type": "IfStatement", + "start": 1408, + "end": 2573, + "loc": { + "start": { + "line": 65, + "column": 4 + }, + "end": { + "line": 102, + "column": 5 + } + }, + "test": { + "type": "BinaryExpression", + "start": 1412, + "end": 1437, + "loc": { + "start": { + "line": 65, + "column": 8 + }, + "end": { + "line": 65, + "column": 33 + } + }, + "left": { + "type": "UnaryExpression", + "start": 1412, + "end": 1421, + "loc": { + "start": { + "line": 65, + "column": 8 + }, + "end": { + "line": 65, + "column": 17 + } + }, + "operator": "typeof", + "prefix": true, + "argument": { + "type": "Identifier", + "start": 1419, + "end": 1421, + "loc": { + "start": { + "line": 65, + "column": 15 + }, + "end": { + "line": 65, + "column": 17 + }, + "identifierName": "op" + }, + "name": "op" + }, + "extra": { + "parenthesizedArgument": false + } + }, + "operator": "!==", + "right": { + "type": "StringLiteral", + "start": 1426, + "end": 1437, + "loc": { + "start": { + "line": 65, + "column": 22 + }, + "end": { + "line": 65, + "column": 33 + } + }, + "extra": { + "rawValue": "undefined", + "raw": "\"undefined\"" + }, + "value": "undefined" + } + }, + "consequent": { + "type": "BlockStatement", + "start": 1439, + "end": 2573, + "loc": { + "start": { + "line": 65, + "column": 35 + }, + "end": { + "line": 102, + "column": 5 + } + }, + "body": [ + { + "type": "VariableDeclaration", + "start": 1496, + "end": 1517, + "loc": { + "start": { + "line": 67, + "column": 6 + }, + "end": { + "line": 67, + "column": 27 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 1500, + "end": 1516, + "loc": { + "start": { + "line": 67, + "column": 10 + }, + "end": { + "line": 67, + "column": 26 + } + }, + "id": { + "type": "Identifier", + "start": 1500, + "end": 1504, + "loc": { + "start": { + "line": 67, + "column": 10 + }, + "end": { + "line": 67, + "column": 14 + }, + "identifierName": "name" + }, + "name": "name", + "leadingComments": null + }, + "init": { + "type": "MemberExpression", + "start": 1507, + "end": 1516, + "loc": { + "start": { + "line": 67, + "column": 17 + }, + "end": { + "line": 67, + "column": 26 + } + }, + "object": { + "type": "Identifier", + "start": 1507, + "end": 1513, + "loc": { + "start": { + "line": 67, + "column": 17 + }, + "end": { + "line": 67, + "column": 23 + }, + "identifierName": "evArgs" + }, + "name": "evArgs" + }, + "property": { + "type": "NumericLiteral", + "start": 1514, + "end": 1515, + "loc": { + "start": { + "line": 67, + "column": 24 + }, + "end": { + "line": 67, + "column": 25 + } + }, + "extra": { + "rawValue": 0, + "raw": "0" + }, + "value": 0 + }, + "computed": true + }, + "leadingComments": null + } + ], + "kind": "let", + "leadingComments": [ + { + "type": "CommentLine", + "value": " Is an object, number, string or boolean", + "start": 1447, + "end": 1489, + "loc": { + "start": { + "line": 66, + "column": 6 + }, + "end": { + "line": 66, + "column": 48 + } + } + } + ] + }, + { + "type": "VariableDeclaration", + "start": 1524, + "end": 1557, + "loc": { + "start": { + "line": 68, + "column": 6 + }, + "end": { + "line": 68, + "column": 39 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 1528, + "end": 1556, + "loc": { + "start": { + "line": 68, + "column": 10 + }, + "end": { + "line": 68, + "column": 38 + } + }, + "id": { + "type": "Identifier", + "start": 1528, + "end": 1538, + "loc": { + "start": { + "line": 68, + "column": 10 + }, + "end": { + "line": 68, + "column": 20 + }, + "identifierName": "methodArgs" + }, + "name": "methodArgs" + }, + "init": { + "type": "CallExpression", + "start": 1541, + "end": 1556, + "loc": { + "start": { + "line": 68, + "column": 23 + }, + "end": { + "line": 68, + "column": 38 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1541, + "end": 1553, + "loc": { + "start": { + "line": 68, + "column": 23 + }, + "end": { + "line": 68, + "column": 35 + } + }, + "object": { + "type": "Identifier", + "start": 1541, + "end": 1547, + "loc": { + "start": { + "line": 68, + "column": 23 + }, + "end": { + "line": 68, + "column": 29 + }, + "identifierName": "evArgs" + }, + "name": "evArgs" + }, + "property": { + "type": "Identifier", + "start": 1548, + "end": 1553, + "loc": { + "start": { + "line": 68, + "column": 30 + }, + "end": { + "line": 68, + "column": 35 + }, + "identifierName": "slice" + }, + "name": "slice" + }, + "computed": false + }, + "arguments": [ + { + "type": "NumericLiteral", + "start": 1554, + "end": 1555, + "loc": { + "start": { + "line": 68, + "column": 36 + }, + "end": { + "line": 68, + "column": 37 + } + }, + "extra": { + "rawValue": 1, + "raw": "1" + }, + "value": 1 + } + ] + } + } + ], + "kind": "let", + "trailingComments": [ + { + "type": "CommentLine", + "value": " Check if the name of the method/property is defined on the object", + "start": 1565, + "end": 1633, + "loc": { + "start": { + "line": 70, + "column": 6 + }, + "end": { + "line": 70, + "column": 74 + } + } + } + ] + }, + { + "type": "IfStatement", + "start": 1640, + "end": 2567, + "loc": { + "start": { + "line": 71, + "column": 6 + }, + "end": { + "line": 101, + "column": 7 + } + }, + "test": { + "type": "BinaryExpression", + "start": 1644, + "end": 1675, + "loc": { + "start": { + "line": 71, + "column": 10 + }, + "end": { + "line": 71, + "column": 41 + } + }, + "left": { + "type": "UnaryExpression", + "start": 1644, + "end": 1659, + "loc": { + "start": { + "line": 71, + "column": 10 + }, + "end": { + "line": 71, + "column": 25 + } + }, + "operator": "typeof", + "prefix": true, + "argument": { + "type": "MemberExpression", + "start": 1651, + "end": 1659, + "loc": { + "start": { + "line": 71, + "column": 17 + }, + "end": { + "line": 71, + "column": 25 + } + }, + "object": { + "type": "Identifier", + "start": 1651, + "end": 1653, + "loc": { + "start": { + "line": 71, + "column": 17 + }, + "end": { + "line": 71, + "column": 19 + }, + "identifierName": "op" + }, + "name": "op", + "leadingComments": null + }, + "property": { + "type": "Identifier", + "start": 1654, + "end": 1658, + "loc": { + "start": { + "line": 71, + "column": 20 + }, + "end": { + "line": 71, + "column": 24 + }, + "identifierName": "name" + }, + "name": "name" + }, + "computed": true, + "leadingComments": null + }, + "extra": { + "parenthesizedArgument": false + }, + "leadingComments": null + }, + "operator": "!==", + "right": { + "type": "StringLiteral", + "start": 1664, + "end": 1675, + "loc": { + "start": { + "line": 71, + "column": 30 + }, + "end": { + "line": 71, + "column": 41 + } + }, + "extra": { + "rawValue": "undefined", + "raw": "\"undefined\"" + }, + "value": "undefined" + }, + "leadingComments": null + }, + "consequent": { + "type": "BlockStatement", + "start": 1677, + "end": 1962, + "loc": { + "start": { + "line": 71, + "column": 43 + }, + "end": { + "line": 82, + "column": 7 + } + }, + "body": [ + { + "type": "IfStatement", + "start": 1718, + "end": 1884, + "loc": { + "start": { + "line": 73, + "column": 8 + }, + "end": { + "line": 79, + "column": 9 + } + }, + "test": { + "type": "BinaryExpression", + "start": 1722, + "end": 1752, + "loc": { + "start": { + "line": 73, + "column": 12 + }, + "end": { + "line": 73, + "column": 42 + } + }, + "left": { + "type": "UnaryExpression", + "start": 1722, + "end": 1737, + "loc": { + "start": { + "line": 73, + "column": 12 + }, + "end": { + "line": 73, + "column": 27 + } + }, + "operator": "typeof", + "prefix": true, + "argument": { + "type": "MemberExpression", + "start": 1729, + "end": 1737, + "loc": { + "start": { + "line": 73, + "column": 19 + }, + "end": { + "line": 73, + "column": 27 + } + }, + "object": { + "type": "Identifier", + "start": 1729, + "end": 1731, + "loc": { + "start": { + "line": 73, + "column": 19 + }, + "end": { + "line": 73, + "column": 21 + }, + "identifierName": "op" + }, + "name": "op", + "leadingComments": null + }, + "property": { + "type": "Identifier", + "start": 1732, + "end": 1736, + "loc": { + "start": { + "line": 73, + "column": 22 + }, + "end": { + "line": 73, + "column": 26 + }, + "identifierName": "name" + }, + "name": "name" + }, + "computed": true, + "leadingComments": null + }, + "extra": { + "parenthesizedArgument": false + }, + "leadingComments": null + }, + "operator": "===", + "right": { + "type": "StringLiteral", + "start": 1742, + "end": 1752, + "loc": { + "start": { + "line": 73, + "column": 32 + }, + "end": { + "line": 73, + "column": 42 + } + }, + "extra": { + "rawValue": "function", + "raw": "\"function\"" + }, + "value": "function" + }, + "leadingComments": null + }, + "consequent": { + "type": "BlockStatement", + "start": 1754, + "end": 1840, + "loc": { + "start": { + "line": 73, + "column": 44 + }, + "end": { + "line": 77, + "column": 9 + } + }, + "body": [ + { + "type": "ReturnStatement", + "start": 1766, + "end": 1797, + "loc": { + "start": { + "line": 74, + "column": 10 + }, + "end": { + "line": 74, + "column": 41 + } + }, + "argument": { + "type": "CallExpression", + "start": 1773, + "end": 1796, + "loc": { + "start": { + "line": 74, + "column": 17 + }, + "end": { + "line": 74, + "column": 40 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1773, + "end": 1781, + "loc": { + "start": { + "line": 74, + "column": 17 + }, + "end": { + "line": 74, + "column": 25 + } + }, + "object": { + "type": "Identifier", + "start": 1773, + "end": 1775, + "loc": { + "start": { + "line": 74, + "column": 17 + }, + "end": { + "line": 74, + "column": 19 + }, + "identifierName": "op" + }, + "name": "op" + }, + "property": { + "type": "Identifier", + "start": 1776, + "end": 1780, + "loc": { + "start": { + "line": 74, + "column": 20 + }, + "end": { + "line": 74, + "column": 24 + }, + "identifierName": "name" + }, + "name": "name" + }, + "computed": true + }, + "arguments": [ + { + "type": "SpreadElement", + "start": 1782, + "end": 1795, + "loc": { + "start": { + "line": 74, + "column": 26 + }, + "end": { + "line": 74, + "column": 39 + } + }, + "argument": { + "type": "Identifier", + "start": 1785, + "end": 1795, + "loc": { + "start": { + "line": 74, + "column": 29 + }, + "end": { + "line": 74, + "column": 39 + }, + "identifierName": "methodArgs" + }, + "name": "methodArgs" + } + } + ] + }, + "trailingComments": [ + { + "type": "CommentLine", + "value": " Return as property", + "start": 1809, + "end": 1830, + "loc": { + "start": { + "line": 76, + "column": 10 + }, + "end": { + "line": 76, + "column": 31 + } + } + } + ] + } + ], + "directives": [] + }, + "alternate": { + "type": "BlockStatement", + "start": 1846, + "end": 1884, + "loc": { + "start": { + "line": 77, + "column": 15 + }, + "end": { + "line": 79, + "column": 9 + } + }, + "body": [ + { + "type": "ReturnStatement", + "start": 1858, + "end": 1874, + "loc": { + "start": { + "line": 78, + "column": 10 + }, + "end": { + "line": 78, + "column": 26 + } + }, + "argument": { + "type": "MemberExpression", + "start": 1865, + "end": 1873, + "loc": { + "start": { + "line": 78, + "column": 17 + }, + "end": { + "line": 78, + "column": 25 + } + }, + "object": { + "type": "Identifier", + "start": 1865, + "end": 1867, + "loc": { + "start": { + "line": 78, + "column": 17 + }, + "end": { + "line": 78, + "column": 19 + }, + "identifierName": "op" + }, + "name": "op" + }, + "property": { + "type": "Identifier", + "start": 1868, + "end": 1872, + "loc": { + "start": { + "line": 78, + "column": 20 + }, + "end": { + "line": 78, + "column": 24 + }, + "identifierName": "name" + }, + "name": "name" + }, + "computed": true + } + } + ], + "directives": [], + "trailingComments": null + }, + "leadingComments": [ + { + "type": "CommentLine", + "value": " Execute as function", + "start": 1687, + "end": 1709, + "loc": { + "start": { + "line": 72, + "column": 8 + }, + "end": { + "line": 72, + "column": 30 + } + } + } + ], + "trailingComments": [ + { + "type": "CommentLine", + "value": " If the name of the method is not defined on the object...", + "start": 1894, + "end": 1954, + "loc": { + "start": { + "line": 81, + "column": 8 + }, + "end": { + "line": 81, + "column": 68 + } + } + } + ] + } + ], + "directives": [] + }, + "alternate": { + "type": "BlockStatement", + "start": 1968, + "end": 2567, + "loc": { + "start": { + "line": 82, + "column": 13 + }, + "end": { + "line": 101, + "column": 7 + } + }, + "body": [ + { + "type": "IfStatement", + "start": 2018, + "end": 2216, + "loc": { + "start": { + "line": 84, + "column": 8 + }, + "end": { + "line": 90, + "column": 9 + } + }, + "test": { + "type": "BinaryExpression", + "start": 2022, + "end": 2039, + "loc": { + "start": { + "line": 84, + "column": 12 + }, + "end": { + "line": 84, + "column": 29 + } + }, + "left": { + "type": "Identifier", + "start": 2022, + "end": 2024, + "loc": { + "start": { + "line": 84, + "column": 12 + }, + "end": { + "line": 84, + "column": 14 + }, + "identifierName": "op" + }, + "name": "op", + "leadingComments": null + }, + "operator": "instanceof", + "right": { + "type": "Identifier", + "start": 2036, + "end": 2039, + "loc": { + "start": { + "line": 84, + "column": 26 + }, + "end": { + "line": 84, + "column": 29 + }, + "identifierName": "Map" + }, + "name": "Map" + }, + "leadingComments": null + }, + "consequent": { + "type": "BlockStatement", + "start": 2041, + "end": 2216, + "loc": { + "start": { + "line": 84, + "column": 31 + }, + "end": { + "line": 90, + "column": 9 + } + }, + "body": [ + { + "type": "IfStatement", + "start": 2053, + "end": 2206, + "loc": { + "start": { + "line": 85, + "column": 10 + }, + "end": { + "line": 89, + "column": 11 + } + }, + "test": { + "type": "BinaryExpression", + "start": 2057, + "end": 2091, + "loc": { + "start": { + "line": 85, + "column": 14 + }, + "end": { + "line": 85, + "column": 48 + } + }, + "left": { + "type": "UnaryExpression", + "start": 2057, + "end": 2076, + "loc": { + "start": { + "line": 85, + "column": 14 + }, + "end": { + "line": 85, + "column": 33 + } + }, + "operator": "typeof", + "prefix": true, + "argument": { + "type": "CallExpression", + "start": 2064, + "end": 2076, + "loc": { + "start": { + "line": 85, + "column": 21 + }, + "end": { + "line": 85, + "column": 33 + } + }, + "callee": { + "type": "MemberExpression", + "start": 2064, + "end": 2070, + "loc": { + "start": { + "line": 85, + "column": 21 + }, + "end": { + "line": 85, + "column": 27 + } + }, + "object": { + "type": "Identifier", + "start": 2064, + "end": 2066, + "loc": { + "start": { + "line": 85, + "column": 21 + }, + "end": { + "line": 85, + "column": 23 + }, + "identifierName": "op" + }, + "name": "op" + }, + "property": { + "type": "Identifier", + "start": 2067, + "end": 2070, + "loc": { + "start": { + "line": 85, + "column": 24 + }, + "end": { + "line": 85, + "column": 27 + }, + "identifierName": "get" + }, + "name": "get" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 2071, + "end": 2075, + "loc": { + "start": { + "line": 85, + "column": 28 + }, + "end": { + "line": 85, + "column": 32 + }, + "identifierName": "name" + }, + "name": "name" + } + ] + }, + "extra": { + "parenthesizedArgument": false + } + }, + "operator": "===", + "right": { + "type": "StringLiteral", + "start": 2081, + "end": 2091, + "loc": { + "start": { + "line": 85, + "column": 38 + }, + "end": { + "line": 85, + "column": 48 + } + }, + "extra": { + "rawValue": "function", + "raw": "\"function\"" + }, + "value": "function" + } + }, + "consequent": { + "type": "BlockStatement", + "start": 2093, + "end": 2154, + "loc": { + "start": { + "line": 85, + "column": 50 + }, + "end": { + "line": 87, + "column": 11 + } + }, + "body": [ + { + "type": "ReturnStatement", + "start": 2107, + "end": 2142, + "loc": { + "start": { + "line": 86, + "column": 12 + }, + "end": { + "line": 86, + "column": 47 + } + }, + "argument": { + "type": "CallExpression", + "start": 2114, + "end": 2141, + "loc": { + "start": { + "line": 86, + "column": 19 + }, + "end": { + "line": 86, + "column": 46 + } + }, + "callee": { + "type": "CallExpression", + "start": 2114, + "end": 2126, + "loc": { + "start": { + "line": 86, + "column": 19 + }, + "end": { + "line": 86, + "column": 31 + } + }, + "callee": { + "type": "MemberExpression", + "start": 2114, + "end": 2120, + "loc": { + "start": { + "line": 86, + "column": 19 + }, + "end": { + "line": 86, + "column": 25 + } + }, + "object": { + "type": "Identifier", + "start": 2114, + "end": 2116, + "loc": { + "start": { + "line": 86, + "column": 19 + }, + "end": { + "line": 86, + "column": 21 + }, + "identifierName": "op" + }, + "name": "op" + }, + "property": { + "type": "Identifier", + "start": 2117, + "end": 2120, + "loc": { + "start": { + "line": 86, + "column": 22 + }, + "end": { + "line": 86, + "column": 25 + }, + "identifierName": "get" + }, + "name": "get" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 2121, + "end": 2125, + "loc": { + "start": { + "line": 86, + "column": 26 + }, + "end": { + "line": 86, + "column": 30 + }, + "identifierName": "name" + }, + "name": "name" + } + ] + }, + "arguments": [ + { + "type": "SpreadElement", + "start": 2127, + "end": 2140, + "loc": { + "start": { + "line": 86, + "column": 32 + }, + "end": { + "line": 86, + "column": 45 + } + }, + "argument": { + "type": "Identifier", + "start": 2130, + "end": 2140, + "loc": { + "start": { + "line": 86, + "column": 35 + }, + "end": { + "line": 86, + "column": 45 + }, + "identifierName": "methodArgs" + }, + "name": "methodArgs" + } + } + ] + } + } + ], + "directives": [] + }, + "alternate": { + "type": "BlockStatement", + "start": 2160, + "end": 2206, + "loc": { + "start": { + "line": 87, + "column": 17 + }, + "end": { + "line": 89, + "column": 11 + } + }, + "body": [ + { + "type": "ReturnStatement", + "start": 2174, + "end": 2194, + "loc": { + "start": { + "line": 88, + "column": 12 + }, + "end": { + "line": 88, + "column": 32 + } + }, + "argument": { + "type": "CallExpression", + "start": 2181, + "end": 2193, + "loc": { + "start": { + "line": 88, + "column": 19 + }, + "end": { + "line": 88, + "column": 31 + } + }, + "callee": { + "type": "MemberExpression", + "start": 2181, + "end": 2187, + "loc": { + "start": { + "line": 88, + "column": 19 + }, + "end": { + "line": 88, + "column": 25 + } + }, + "object": { + "type": "Identifier", + "start": 2181, + "end": 2183, + "loc": { + "start": { + "line": 88, + "column": 19 + }, + "end": { + "line": 88, + "column": 21 + }, + "identifierName": "op" + }, + "name": "op" + }, + "property": { + "type": "Identifier", + "start": 2184, + "end": 2187, + "loc": { + "start": { + "line": 88, + "column": 22 + }, + "end": { + "line": 88, + "column": 25 + }, + "identifierName": "get" + }, + "name": "get" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 2188, + "end": 2192, + "loc": { + "start": { + "line": 88, + "column": 26 + }, + "end": { + "line": 88, + "column": 30 + }, + "identifierName": "name" + }, + "name": "name" + } + ] + } + } + ], + "directives": [] + } + } + ], + "directives": [], + "trailingComments": null + }, + "alternate": null, + "leadingComments": [ + { + "type": "CommentLine", + "value": " Check if its a Map property.", + "start": 1978, + "end": 2009, + "loc": { + "start": { + "line": 83, + "column": 8 + }, + "end": { + "line": 83, + "column": 39 + } + } + } + ], + "trailingComments": [ + { + "type": "CommentLine", + "value": " Try to call the 'missing' method", + "start": 2226, + "end": 2261, + "loc": { + "start": { + "line": 92, + "column": 8 + }, + "end": { + "line": 92, + "column": 43 + } + } + } + ] + }, + { + "type": "IfStatement", + "start": 2270, + "end": 2559, + "loc": { + "start": { + "line": 93, + "column": 8 + }, + "end": { + "line": 100, + "column": 9 + } + }, + "test": { + "type": "BinaryExpression", + "start": 2274, + "end": 2313, + "loc": { + "start": { + "line": 93, + "column": 12 + }, + "end": { + "line": 93, + "column": 51 + } + }, + "left": { + "type": "UnaryExpression", + "start": 2274, + "end": 2298, + "loc": { + "start": { + "line": 93, + "column": 12 + }, + "end": { + "line": 93, + "column": 36 + } + }, + "operator": "typeof", + "prefix": true, + "argument": { + "type": "MemberExpression", + "start": 2281, + "end": 2298, + "loc": { + "start": { + "line": 93, + "column": 19 + }, + "end": { + "line": 93, + "column": 36 + } + }, + "object": { + "type": "Identifier", + "start": 2281, + "end": 2283, + "loc": { + "start": { + "line": 93, + "column": 19 + }, + "end": { + "line": 93, + "column": 21 + }, + "identifierName": "op" + }, + "name": "op", + "leadingComments": null + }, + "property": { + "type": "StringLiteral", + "start": 2284, + "end": 2297, + "loc": { + "start": { + "line": 93, + "column": 22 + }, + "end": { + "line": 93, + "column": 35 + } + }, + "extra": { + "rawValue": "__missing__", + "raw": "\"__missing__\"" + }, + "value": "__missing__" + }, + "computed": true, + "leadingComments": null + }, + "extra": { + "parenthesizedArgument": false + }, + "leadingComments": null + }, + "operator": "===", + "right": { + "type": "StringLiteral", + "start": 2303, + "end": 2313, + "loc": { + "start": { + "line": 93, + "column": 41 + }, + "end": { + "line": 93, + "column": 51 + } + }, + "extra": { + "rawValue": "function", + "raw": "\"function\"" + }, + "value": "function" + }, + "leadingComments": null + }, + "consequent": { + "type": "BlockStatement", + "start": 2315, + "end": 2428, + "loc": { + "start": { + "line": 93, + "column": 53 + }, + "end": { + "line": 97, + "column": 9 + } + }, + "body": [ + { + "type": "ReturnStatement", + "start": 2327, + "end": 2367, + "loc": { + "start": { + "line": 94, + "column": 10 + }, + "end": { + "line": 94, + "column": 50 + } + }, + "argument": { + "type": "CallExpression", + "start": 2334, + "end": 2366, + "loc": { + "start": { + "line": 94, + "column": 17 + }, + "end": { + "line": 94, + "column": 49 + } + }, + "callee": { + "type": "MemberExpression", + "start": 2334, + "end": 2351, + "loc": { + "start": { + "line": 94, + "column": 17 + }, + "end": { + "line": 94, + "column": 34 + } + }, + "object": { + "type": "Identifier", + "start": 2334, + "end": 2336, + "loc": { + "start": { + "line": 94, + "column": 17 + }, + "end": { + "line": 94, + "column": 19 + }, + "identifierName": "op" + }, + "name": "op" + }, + "property": { + "type": "StringLiteral", + "start": 2337, + "end": 2350, + "loc": { + "start": { + "line": 94, + "column": 20 + }, + "end": { + "line": 94, + "column": 33 + } + }, + "extra": { + "rawValue": "__missing__", + "raw": "\"__missing__\"" + }, + "value": "__missing__" + }, + "computed": true + }, + "arguments": [ + { + "type": "SpreadElement", + "start": 2352, + "end": 2365, + "loc": { + "start": { + "line": 94, + "column": 35 + }, + "end": { + "line": 94, + "column": 48 + } + }, + "argument": { + "type": "Identifier", + "start": 2355, + "end": 2365, + "loc": { + "start": { + "line": 94, + "column": 38 + }, + "end": { + "line": 94, + "column": 48 + }, + "identifierName": "methodArgs" + }, + "name": "methodArgs" + } + } + ] + }, + "trailingComments": [ + { + "type": "CommentLine", + "value": " As a last resort, throw an Exception", + "start": 2379, + "end": 2418, + "loc": { + "start": { + "line": 96, + "column": 10 + }, + "end": { + "line": 96, + "column": 49 + } + } + } + ] + } + ], + "directives": [] + }, + "alternate": { + "type": "BlockStatement", + "start": 2434, + "end": 2559, + "loc": { + "start": { + "line": 97, + "column": 15 + }, + "end": { + "line": 100, + "column": 9 + } + }, + "body": [ + { + "type": "ThrowStatement", + "start": 2446, + "end": 2549, + "loc": { + "start": { + "line": 98, + "column": 10 + }, + "end": { + "line": 99, + "column": 38 + } + }, + "argument": { + "type": "NewExpression", + "start": 2452, + "end": 2548, + "loc": { + "start": { + "line": 98, + "column": 16 + }, + "end": { + "line": 99, + "column": 37 + } + }, + "callee": { + "type": "Identifier", + "start": 2456, + "end": 2467, + "loc": { + "start": { + "line": 98, + "column": 20 + }, + "end": { + "line": 98, + "column": 31 + }, + "identifierName": "SyntaxError" + }, + "name": "SyntaxError" + }, + "arguments": [ + { + "type": "TemplateLiteral", + "start": 2468, + "end": 2547, + "loc": { + "start": { + "line": 98, + "column": 32 + }, + "end": { + "line": 99, + "column": 36 + } + }, + "expressions": [ + { + "type": "Identifier", + "start": 2483, + "end": 2487, + "loc": { + "start": { + "line": 98, + "column": 47 + }, + "end": { + "line": 98, + "column": 51 + }, + "identifierName": "name" + }, + "name": "name" + }, + { + "type": "CallExpression", + "start": 2531, + "end": 2544, + "loc": { + "start": { + "line": 99, + "column": 20 + }, + "end": { + "line": 99, + "column": 33 + } + }, + "callee": { + "type": "MemberExpression", + "start": 2531, + "end": 2540, + "loc": { + "start": { + "line": 99, + "column": 20 + }, + "end": { + "line": 99, + "column": 29 + } + }, + "object": { + "type": "Identifier", + "start": 2531, + "end": 2536, + "loc": { + "start": { + "line": 99, + "column": 20 + }, + "end": { + "line": 99, + "column": 25 + }, + "identifierName": "utils" + }, + "name": "utils" + }, + "property": { + "type": "Identifier", + "start": 2537, + "end": 2540, + "loc": { + "start": { + "line": 99, + "column": 26 + }, + "end": { + "line": 99, + "column": 29 + }, + "identifierName": "ins" + }, + "name": "ins" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 2541, + "end": 2543, + "loc": { + "start": { + "line": 99, + "column": 30 + }, + "end": { + "line": 99, + "column": 32 + }, + "identifierName": "op" + }, + "name": "op" + } + ] + } + ], + "quasis": [ + { + "type": "TemplateElement", + "start": 2469, + "end": 2481, + "loc": { + "start": { + "line": 98, + "column": 33 + }, + "end": { + "line": 98, + "column": 45 + } + }, + "value": { + "raw": "The method '", + "cooked": "The method '" + }, + "tail": false + }, + { + "type": "TemplateElement", + "start": 2488, + "end": 2529, + "loc": { + "start": { + "line": 98, + "column": 52 + }, + "end": { + "line": 99, + "column": 18 + } + }, + "value": { + "raw": "' was not found on the\n object '", + "cooked": "' was not found on the\n object '" + }, + "tail": false + }, + { + "type": "TemplateElement", + "start": 2545, + "end": 2546, + "loc": { + "start": { + "line": 99, + "column": 34 + }, + "end": { + "line": 99, + "column": 35 + } + }, + "value": { + "raw": "'", + "cooked": "'" + }, + "tail": true + } + ] + } + ] + } + } + ], + "directives": [] + }, + "leadingComments": [ + { + "type": "CommentLine", + "value": " Try to call the 'missing' method", + "start": 2226, + "end": 2261, + "loc": { + "start": { + "line": 92, + "column": 8 + }, + "end": { + "line": 92, + "column": 43 + } + } + } + ] + } + ], + "directives": [] + }, + "leadingComments": [ + { + "type": "CommentLine", + "value": " Check if the name of the method/property is defined on the object", + "start": 1565, + "end": 1633, + "loc": { + "start": { + "line": 70, + "column": 6 + }, + "end": { + "line": 70, + "column": 74 + } + } + } + ] + } + ], + "directives": [] + }, + "alternate": null + }, + { + "type": "ThrowStatement", + "start": 2579, + "end": 2641, + "loc": { + "start": { + "line": 104, + "column": 4 + }, + "end": { + "line": 104, + "column": 66 + } + }, + "argument": { + "type": "NewExpression", + "start": 2585, + "end": 2640, + "loc": { + "start": { + "line": 104, + "column": 10 + }, + "end": { + "line": 104, + "column": 65 + } + }, + "callee": { + "type": "Identifier", + "start": 2589, + "end": 2598, + "loc": { + "start": { + "line": 104, + "column": 14 + }, + "end": { + "line": 104, + "column": 23 + }, + "identifierName": "TypeError" + }, + "name": "TypeError" + }, + "arguments": [ + { + "type": "TemplateLiteral", + "start": 2599, + "end": 2639, + "loc": { + "start": { + "line": 104, + "column": 24 + }, + "end": { + "line": 104, + "column": 64 + } + }, + "expressions": [], + "quasis": [ + { + "type": "TemplateElement", + "start": 2600, + "end": 2638, + "loc": { + "start": { + "line": 104, + "column": 25 + }, + "end": { + "line": 104, + "column": 63 + } + }, + "value": { + "raw": "Could not resolve the apply expression", + "cooked": "Could not resolve the apply expression" + }, + "tail": true + } + ] + } + ] + } + } + ], + "directives": [] + } + } + ] + }, + "__PseudoExport__": false, + "leadingComments": [], + "trailingComments": [] + }, + "specifiers": null, + "source": null, + "leadingComments": null + }, + { + "type": "ExportNamedDeclaration", + "start": 2844, + "end": 2887, + "loc": { + "start": { + "line": 121, + "column": 0 + }, + "end": { + "line": 124, + "column": 10 + } + }, + "declaration": { + "type": "ClassDeclaration", + "start": 2649, + "end": 2842, + "loc": { + "start": { + "line": 108, + "column": 0 + }, + "end": { + "line": 119, + "column": 1 + } + }, + "id": { + "type": "Identifier", + "start": 2655, + "end": 2660, + "loc": { + "start": { + "line": 108, + "column": 6 + }, + "end": { + "line": 108, + "column": 11 + }, + "identifierName": "Regex" + }, + "name": "Regex" + }, + "superClass": null, + "body": { + "type": "ClassBody", + "start": 2661, + "end": 2842, + "loc": { + "start": { + "line": 108, + "column": 12 + }, + "end": { + "line": 119, + "column": 1 + } + }, + "body": [ + { + "type": "ClassMethod", + "start": 2665, + "end": 2773, + "loc": { + "start": { + "line": 109, + "column": 2 + }, + "end": { + "line": 114, + "column": 3 + } + }, + "static": false, + "computed": false, + "key": { + "type": "Identifier", + "start": 2665, + "end": 2676, + "loc": { + "start": { + "line": 109, + "column": 2 + }, + "end": { + "line": 109, + "column": 13 + }, + "identifierName": "constructor" + }, + "name": "constructor" + }, + "kind": "constructor", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 2677, + "end": 2682, + "loc": { + "start": { + "line": 109, + "column": 14 + }, + "end": { + "line": 109, + "column": 19 + }, + "identifierName": "token" + }, + "name": "token" + } + ], + "body": { + "type": "BlockStatement", + "start": 2684, + "end": 2773, + "loc": { + "start": { + "line": 109, + "column": 21 + }, + "end": { + "line": 114, + "column": 3 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 2690, + "end": 2710, + "loc": { + "start": { + "line": 110, + "column": 4 + }, + "end": { + "line": 110, + "column": 24 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 2690, + "end": 2709, + "loc": { + "start": { + "line": 110, + "column": 4 + }, + "end": { + "line": 110, + "column": 23 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 2690, + "end": 2699, + "loc": { + "start": { + "line": 110, + "column": 4 + }, + "end": { + "line": 110, + "column": 13 + } + }, + "object": { + "type": "ThisExpression", + "start": 2690, + "end": 2694, + "loc": { + "start": { + "line": 110, + "column": 4 + }, + "end": { + "line": 110, + "column": 8 + } + } + }, + "property": { + "type": "Identifier", + "start": 2695, + "end": 2699, + "loc": { + "start": { + "line": 110, + "column": 9 + }, + "end": { + "line": 110, + "column": 13 + }, + "identifierName": "type" + }, + "name": "type" + }, + "computed": false + }, + "right": { + "type": "StringLiteral", + "start": 2702, + "end": 2709, + "loc": { + "start": { + "line": 110, + "column": 16 + }, + "end": { + "line": 110, + "column": 23 + } + }, + "extra": { + "rawValue": "regex", + "raw": "\"regex\"" + }, + "value": "regex" + } + } + }, + { + "type": "ExpressionStatement", + "start": 2716, + "end": 2739, + "loc": { + "start": { + "line": 112, + "column": 4 + }, + "end": { + "line": 112, + "column": 27 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 2716, + "end": 2738, + "loc": { + "start": { + "line": 112, + "column": 4 + }, + "end": { + "line": 112, + "column": 26 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 2716, + "end": 2725, + "loc": { + "start": { + "line": 112, + "column": 4 + }, + "end": { + "line": 112, + "column": 13 + } + }, + "object": { + "type": "ThisExpression", + "start": 2716, + "end": 2720, + "loc": { + "start": { + "line": 112, + "column": 4 + }, + "end": { + "line": 112, + "column": 8 + } + } + }, + "property": { + "type": "Identifier", + "start": 2721, + "end": 2725, + "loc": { + "start": { + "line": 112, + "column": 9 + }, + "end": { + "line": 112, + "column": 13 + }, + "identifierName": "body" + }, + "name": "body" + }, + "computed": false + }, + "right": { + "type": "MemberExpression", + "start": 2728, + "end": 2738, + "loc": { + "start": { + "line": 112, + "column": 16 + }, + "end": { + "line": 112, + "column": 26 + } + }, + "object": { + "type": "Identifier", + "start": 2728, + "end": 2733, + "loc": { + "start": { + "line": 112, + "column": 16 + }, + "end": { + "line": 112, + "column": 21 + }, + "identifierName": "token" + }, + "name": "token" + }, + "property": { + "type": "Identifier", + "start": 2734, + "end": 2738, + "loc": { + "start": { + "line": 112, + "column": 22 + }, + "end": { + "line": 112, + "column": 26 + }, + "identifierName": "body" + }, + "name": "body" + }, + "computed": false + } + } + }, + { + "type": "ExpressionStatement", + "start": 2744, + "end": 2769, + "loc": { + "start": { + "line": 113, + "column": 4 + }, + "end": { + "line": 113, + "column": 29 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 2744, + "end": 2768, + "loc": { + "start": { + "line": 113, + "column": 4 + }, + "end": { + "line": 113, + "column": 28 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 2744, + "end": 2754, + "loc": { + "start": { + "line": 113, + "column": 4 + }, + "end": { + "line": 113, + "column": 14 + } + }, + "object": { + "type": "ThisExpression", + "start": 2744, + "end": 2748, + "loc": { + "start": { + "line": 113, + "column": 4 + }, + "end": { + "line": 113, + "column": 8 + } + } + }, + "property": { + "type": "Identifier", + "start": 2749, + "end": 2754, + "loc": { + "start": { + "line": 113, + "column": 9 + }, + "end": { + "line": 113, + "column": 14 + }, + "identifierName": "flags" + }, + "name": "flags" + }, + "computed": false + }, + "right": { + "type": "MemberExpression", + "start": 2757, + "end": 2768, + "loc": { + "start": { + "line": 113, + "column": 17 + }, + "end": { + "line": 113, + "column": 28 + } + }, + "object": { + "type": "Identifier", + "start": 2757, + "end": 2762, + "loc": { + "start": { + "line": 113, + "column": 17 + }, + "end": { + "line": 113, + "column": 22 + }, + "identifierName": "token" + }, + "name": "token" + }, + "property": { + "type": "Identifier", + "start": 2763, + "end": 2768, + "loc": { + "start": { + "line": 113, + "column": 23 + }, + "end": { + "line": 113, + "column": 28 + }, + "identifierName": "flags" + }, + "name": "flags" + }, + "computed": false + } + } + } + ], + "directives": [] + } + }, + { + "type": "ClassMethod", + "start": 2777, + "end": 2840, + "loc": { + "start": { + "line": 116, + "column": 2 + }, + "end": { + "line": 118, + "column": 3 + } + }, + "static": false, + "computed": false, + "key": { + "type": "Identifier", + "start": 2777, + "end": 2785, + "loc": { + "start": { + "line": 116, + "column": 2 + }, + "end": { + "line": 116, + "column": 10 + }, + "identifierName": "evaluate" + }, + "name": "evaluate" + }, + "kind": "method", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [], + "body": { + "type": "BlockStatement", + "start": 2788, + "end": 2840, + "loc": { + "start": { + "line": 116, + "column": 13 + }, + "end": { + "line": 118, + "column": 3 + } + }, + "body": [ + { + "type": "ReturnStatement", + "start": 2794, + "end": 2836, + "loc": { + "start": { + "line": 117, + "column": 4 + }, + "end": { + "line": 117, + "column": 46 + } + }, + "argument": { + "type": "NewExpression", + "start": 2801, + "end": 2835, + "loc": { + "start": { + "line": 117, + "column": 11 + }, + "end": { + "line": 117, + "column": 45 + } + }, + "callee": { + "type": "Identifier", + "start": 2805, + "end": 2812, + "loc": { + "start": { + "line": 117, + "column": 15 + }, + "end": { + "line": 117, + "column": 22 + }, + "identifierName": "xRegExp" + }, + "name": "xRegExp" + }, + "arguments": [ + { + "type": "MemberExpression", + "start": 2813, + "end": 2822, + "loc": { + "start": { + "line": 117, + "column": 23 + }, + "end": { + "line": 117, + "column": 32 + } + }, + "object": { + "type": "ThisExpression", + "start": 2813, + "end": 2817, + "loc": { + "start": { + "line": 117, + "column": 23 + }, + "end": { + "line": 117, + "column": 27 + } + } + }, + "property": { + "type": "Identifier", + "start": 2818, + "end": 2822, + "loc": { + "start": { + "line": 117, + "column": 28 + }, + "end": { + "line": 117, + "column": 32 + }, + "identifierName": "body" + }, + "name": "body" + }, + "computed": false + }, + { + "type": "MemberExpression", + "start": 2824, + "end": 2834, + "loc": { + "start": { + "line": 117, + "column": 34 + }, + "end": { + "line": 117, + "column": 44 + } + }, + "object": { + "type": "ThisExpression", + "start": 2824, + "end": 2828, + "loc": { + "start": { + "line": 117, + "column": 34 + }, + "end": { + "line": 117, + "column": 38 + } + } + }, + "property": { + "type": "Identifier", + "start": 2829, + "end": 2834, + "loc": { + "start": { + "line": 117, + "column": 39 + }, + "end": { + "line": 117, + "column": 44 + }, + "identifierName": "flags" + }, + "name": "flags" + }, + "computed": false + } + ] + } + } + ], + "directives": [] } } ] - } - } + }, + "__PseudoExport__": false, + "leadingComments": [], + "trailingComments": [] + }, + "specifiers": null, + "source": null, + "leadingComments": null } ], "directives": [] @@ -7301,8 +13696,8 @@ { "type": "CommentLine", "value": " Variable", - "start": 407, - "end": 418, + "start": 392, + "end": 403, "loc": { "start": { "line": 25, @@ -7317,8 +13712,8 @@ { "type": "CommentLine", "value": " Variable in const scope", - "start": 483, - "end": 509, + "start": 468, + "end": 494, "loc": { "start": { "line": 29, @@ -7333,8 +13728,8 @@ { "type": "CommentLine", "value": " Object variable referenced without using 'this'", - "start": 607, - "end": 657, + "start": 592, + "end": 642, "loc": { "start": { "line": 33, @@ -7349,8 +13744,8 @@ { "type": "CommentLine", "value": " Check if its a specialForm function", - "start": 983, - "end": 1021, + "start": 968, + "end": 1006, "loc": { "start": { "line": 50, @@ -7365,8 +13760,8 @@ { "type": "CommentLine", "value": " Evaluated operator", - "start": 1175, - "end": 1196, + "start": 1160, + "end": 1181, "loc": { "start": { "line": 55, @@ -7381,8 +13776,8 @@ { "type": "CommentLine", "value": " Evaluated arguments", - "start": 1243, - "end": 1265, + "start": 1228, + "end": 1250, "loc": { "start": { "line": 57, @@ -7397,8 +13792,8 @@ { "type": "CommentLine", "value": " Is a function", - "start": 1367, - "end": 1383, + "start": 1352, + "end": 1368, "loc": { "start": { "line": 61, @@ -7413,8 +13808,8 @@ { "type": "CommentLine", "value": " Is an object, number, string or boolean", - "start": 1462, - "end": 1504, + "start": 1447, + "end": 1489, "loc": { "start": { "line": 66, @@ -7429,8 +13824,8 @@ { "type": "CommentLine", "value": " Check if the name of the method/property is defined on the object", - "start": 1580, - "end": 1648, + "start": 1565, + "end": 1633, "loc": { "start": { "line": 70, @@ -7445,8 +13840,8 @@ { "type": "CommentLine", "value": " Execute as function", - "start": 1702, - "end": 1724, + "start": 1687, + "end": 1709, "loc": { "start": { "line": 72, @@ -7461,8 +13856,8 @@ { "type": "CommentLine", "value": " Return as property", - "start": 1824, - "end": 1845, + "start": 1809, + "end": 1830, "loc": { "start": { "line": 76, @@ -7477,8 +13872,8 @@ { "type": "CommentLine", "value": " If the name of the method is not defined on the object...", - "start": 1909, - "end": 1969, + "start": 1894, + "end": 1954, "loc": { "start": { "line": 81, @@ -7493,8 +13888,8 @@ { "type": "CommentLine", "value": " Check if its a Map property.", - "start": 1993, - "end": 2024, + "start": 1978, + "end": 2009, "loc": { "start": { "line": 83, @@ -7509,8 +13904,8 @@ { "type": "CommentLine", "value": " Try to call the 'missing' method", - "start": 2241, - "end": 2276, + "start": 2226, + "end": 2261, "loc": { "start": { "line": 92, @@ -7525,8 +13920,8 @@ { "type": "CommentLine", "value": " As a last resort, throw an Exception", - "start": 2394, - "end": 2433, + "start": 2379, + "end": 2418, "loc": { "start": { "line": 96, @@ -7558,10 +13953,10 @@ }, { "type": { - "label": "const", - "keyword": "const", + "label": "import", + "keyword": "import", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -7570,9 +13965,9 @@ "binop": null, "updateContext": null }, - "value": "const", + "value": "import", "start": 19, - "end": 24, + "end": 25, "loc": { "start": { "line": 2, @@ -7580,7 +13975,7 @@ }, "end": { "line": 2, - "column": 5 + "column": 6 } } }, @@ -7597,43 +13992,16 @@ "binop": null }, "value": "xRegExp", - "start": 25, - "end": 32, + "start": 26, + "end": 33, "loc": { "start": { "line": 2, - "column": 6 + "column": 7 }, "end": { - "line": 2, - "column": 13 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 33, - "end": 34, - "loc": { - "start": { "line": 2, "column": 14 - }, - "end": { - "line": 2, - "column": 15 } } }, @@ -7649,154 +14017,23 @@ "postfix": false, "binop": null }, - "value": "require", - "start": 35, - "end": 42, - "loc": { - "start": { - "line": 2, - "column": 16 - }, - "end": { - "line": 2, - "column": 23 - } - } - }, - { - "type": { - "label": "(", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 42, - "end": 43, - "loc": { - "start": { - "line": 2, - "column": 23 - }, - "end": { - "line": 2, - "column": 24 - } - } - }, - { - "type": { - "label": "string", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "xregexp", - "start": 43, - "end": 52, - "loc": { - "start": { - "line": 2, - "column": 24 - }, - "end": { - "line": 2, - "column": 33 - } - } - }, - { - "type": { - "label": ")", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 52, - "end": 53, - "loc": { - "start": { - "line": 2, - "column": 33 - }, - "end": { - "line": 2, - "column": 34 - } - } - }, - { - "type": { - "label": ";", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "start": 53, - "end": 54, + "value": "from", + "start": 34, + "end": 38, "loc": { "start": { "line": 2, - "column": 34 - }, - "end": { - "line": 2, - "column": 35 - } - } - }, - { - "type": { - "label": "const", - "keyword": "const", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "const", - "start": 55, - "end": 60, - "loc": { - "start": { - "line": 3, - "column": 0 + "column": 15 }, "end": { - "line": 3, - "column": 5 + "line": 2, + "column": 19 } } }, { "type": { - "label": "name", + "label": "string", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, @@ -7804,52 +14041,53 @@ "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "value": "utils", - "start": 61, - "end": 66, + "value": "xregexp", + "start": 39, + "end": 48, "loc": { "start": { - "line": 3, - "column": 6 + "line": 2, + "column": 20 }, "end": { - "line": 3, - "column": 11 + "line": 2, + "column": 29 } } }, { "type": { - "label": "=", + "label": ";", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, - "isAssign": true, + "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, - "value": "=", - "start": 67, - "end": 68, + "start": 48, + "end": 49, "loc": { "start": { - "line": 3, - "column": 12 + "line": 2, + "column": 29 }, "end": { - "line": 3, - "column": 13 + "line": 2, + "column": 30 } } }, { "type": { - "label": "name", + "label": "import", + "keyword": "import", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, @@ -7857,26 +14095,27 @@ "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "value": "require", - "start": 69, - "end": 76, + "value": "import", + "start": 50, + "end": 56, "loc": { "start": { "line": 3, - "column": 14 + "column": 0 }, "end": { "line": 3, - "column": 21 + "column": 6 } } }, { "type": { - "label": "(", - "beforeExpr": true, + "label": "name", + "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, @@ -7885,22 +14124,23 @@ "postfix": false, "binop": null }, - "start": 76, - "end": 77, + "value": "utils", + "start": 57, + "end": 62, "loc": { "start": { "line": 3, - "column": 21 + "column": 7 }, "end": { "line": 3, - "column": 22 + "column": 12 } } }, { "type": { - "label": "string", + "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, @@ -7908,45 +14148,46 @@ "isAssign": false, "prefix": false, "postfix": false, - "binop": null, - "updateContext": null + "binop": null }, - "value": "../utils.js", - "start": 77, - "end": 90, + "value": "from", + "start": 63, + "end": 67, "loc": { "start": { "line": 3, - "column": 22 + "column": 13 }, "end": { "line": 3, - "column": 35 + "column": 17 } } }, { "type": { - "label": ")", + "label": "string", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "start": 90, - "end": 91, + "value": "../utils.js", + "start": 68, + "end": 81, "loc": { "start": { "line": 3, - "column": 35 + "column": 18 }, "end": { "line": 3, - "column": 36 + "column": 31 } } }, @@ -7963,25 +14204,25 @@ "binop": null, "updateContext": null }, - "start": 91, - "end": 92, + "start": 81, + "end": 82, "loc": { "start": { "line": 3, - "column": 36 + "column": 31 }, "end": { "line": 3, - "column": 37 + "column": 32 } } }, { "type": { - "label": "const", - "keyword": "const", + "label": "import", + "keyword": "import", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -7990,9 +14231,9 @@ "binop": null, "updateContext": null }, - "value": "const", - "start": 94, - "end": 99, + "value": "import", + "start": 84, + "end": 90, "loc": { "start": { "line": 5, @@ -8000,7 +14241,7 @@ }, "end": { "line": 5, - "column": 5 + "column": 6 } } }, @@ -8016,16 +14257,16 @@ "postfix": false, "binop": null }, - "start": 100, - "end": 101, + "start": 91, + "end": 92, "loc": { "start": { "line": 5, - "column": 6 + "column": 7 }, "end": { "line": 5, - "column": 7 + "column": 8 } } }, @@ -8042,16 +14283,16 @@ "binop": null }, "value": "SpecialForms", - "start": 102, - "end": 114, + "start": 93, + "end": 105, "loc": { "start": { "line": 5, - "column": 8 + "column": 9 }, "end": { "line": 5, - "column": 20 + "column": 21 } } }, @@ -8067,43 +14308,16 @@ "postfix": false, "binop": null }, - "start": 115, - "end": 116, + "start": 106, + "end": 107, "loc": { "start": { - "line": 5, - "column": 21 - }, - "end": { "line": 5, "column": 22 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 117, - "end": 118, - "loc": { - "start": { - "line": 5, - "column": 23 }, "end": { "line": 5, - "column": 24 + "column": 23 } } }, @@ -8119,42 +14333,17 @@ "postfix": false, "binop": null }, - "value": "require", - "start": 119, - "end": 126, - "loc": { - "start": { - "line": 5, - "column": 25 - }, - "end": { - "line": 5, - "column": 32 - } - } - }, - { - "type": { - "label": "(", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 126, - "end": 127, + "value": "from", + "start": 108, + "end": 112, "loc": { "start": { "line": 5, - "column": 32 + "column": 24 }, "end": { "line": 5, - "column": 33 + "column": 28 } } }, @@ -8172,41 +14361,16 @@ "updateContext": null }, "value": "./environment.js", - "start": 127, - "end": 145, - "loc": { - "start": { - "line": 5, - "column": 33 - }, - "end": { - "line": 5, - "column": 51 - } - } - }, - { - "type": { - "label": ")", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 145, - "end": 146, + "start": 113, + "end": 131, "loc": { "start": { "line": 5, - "column": 51 + "column": 29 }, "end": { "line": 5, - "column": 52 + "column": 47 } } }, @@ -8223,16 +14387,16 @@ "binop": null, "updateContext": null }, - "start": 146, - "end": 147, + "start": 131, + "end": 132, "loc": { "start": { "line": 5, - "column": 52 + "column": 47 }, "end": { "line": 5, - "column": 53 + "column": 48 } } }, @@ -8251,8 +14415,8 @@ "updateContext": null }, "value": "class", - "start": 149, - "end": 154, + "start": 134, + "end": 139, "loc": { "start": { "line": 7, @@ -8277,8 +14441,8 @@ "binop": null }, "value": "Value", - "start": 155, - "end": 160, + "start": 140, + "end": 145, "loc": { "start": { "line": 7, @@ -8302,8 +14466,8 @@ "postfix": false, "binop": null }, - "start": 161, - "end": 162, + "start": 146, + "end": 147, "loc": { "start": { "line": 7, @@ -8328,8 +14492,8 @@ "binop": null }, "value": "constructor", - "start": 165, - "end": 176, + "start": 150, + "end": 161, "loc": { "start": { "line": 8, @@ -8353,8 +14517,8 @@ "postfix": false, "binop": null }, - "start": 176, - "end": 177, + "start": 161, + "end": 162, "loc": { "start": { "line": 8, @@ -8379,8 +14543,8 @@ "binop": null }, "value": "token", - "start": 177, - "end": 182, + "start": 162, + "end": 167, "loc": { "start": { "line": 8, @@ -8404,8 +14568,8 @@ "postfix": false, "binop": null }, - "start": 182, - "end": 183, + "start": 167, + "end": 168, "loc": { "start": { "line": 8, @@ -8429,8 +14593,8 @@ "postfix": false, "binop": null }, - "start": 184, - "end": 185, + "start": 169, + "end": 170, "loc": { "start": { "line": 8, @@ -8457,8 +14621,8 @@ "updateContext": null }, "value": "this", - "start": 190, - "end": 194, + "start": 175, + "end": 179, "loc": { "start": { "line": 9, @@ -8483,8 +14647,8 @@ "binop": null, "updateContext": null }, - "start": 194, - "end": 195, + "start": 179, + "end": 180, "loc": { "start": { "line": 9, @@ -8509,8 +14673,8 @@ "binop": null }, "value": "type", - "start": 195, - "end": 199, + "start": 180, + "end": 184, "loc": { "start": { "line": 9, @@ -8536,8 +14700,8 @@ "updateContext": null }, "value": "=", - "start": 200, - "end": 201, + "start": 185, + "end": 186, "loc": { "start": { "line": 9, @@ -8563,8 +14727,8 @@ "updateContext": null }, "value": "value", - "start": 202, - "end": 209, + "start": 187, + "end": 194, "loc": { "start": { "line": 9, @@ -8589,8 +14753,8 @@ "binop": null, "updateContext": null }, - "start": 209, - "end": 210, + "start": 194, + "end": 195, "loc": { "start": { "line": 9, @@ -8617,8 +14781,8 @@ "updateContext": null }, "value": "this", - "start": 215, - "end": 219, + "start": 200, + "end": 204, "loc": { "start": { "line": 10, @@ -8643,8 +14807,8 @@ "binop": null, "updateContext": null }, - "start": 219, - "end": 220, + "start": 204, + "end": 205, "loc": { "start": { "line": 10, @@ -8669,8 +14833,8 @@ "binop": null }, "value": "value", - "start": 220, - "end": 225, + "start": 205, + "end": 210, "loc": { "start": { "line": 10, @@ -8696,8 +14860,8 @@ "updateContext": null }, "value": "=", - "start": 226, - "end": 227, + "start": 211, + "end": 212, "loc": { "start": { "line": 10, @@ -8722,8 +14886,8 @@ "binop": null }, "value": "token", - "start": 228, - "end": 233, + "start": 213, + "end": 218, "loc": { "start": { "line": 10, @@ -8748,8 +14912,8 @@ "binop": null, "updateContext": null }, - "start": 233, - "end": 234, + "start": 218, + "end": 219, "loc": { "start": { "line": 10, @@ -8774,8 +14938,8 @@ "binop": null }, "value": "value", - "start": 234, - "end": 239, + "start": 219, + "end": 224, "loc": { "start": { "line": 10, @@ -8800,8 +14964,8 @@ "binop": null, "updateContext": null }, - "start": 239, - "end": 240, + "start": 224, + "end": 225, "loc": { "start": { "line": 10, @@ -8825,8 +14989,8 @@ "postfix": false, "binop": null }, - "start": 243, - "end": 244, + "start": 228, + "end": 229, "loc": { "start": { "line": 11, @@ -8851,8 +15015,8 @@ "binop": null }, "value": "evaluate", - "start": 248, - "end": 256, + "start": 233, + "end": 241, "loc": { "start": { "line": 13, @@ -8876,8 +15040,8 @@ "postfix": false, "binop": null }, - "start": 256, - "end": 257, + "start": 241, + "end": 242, "loc": { "start": { "line": 13, @@ -8901,8 +15065,8 @@ "postfix": false, "binop": null }, - "start": 257, - "end": 258, + "start": 242, + "end": 243, "loc": { "start": { "line": 13, @@ -8926,8 +15090,8 @@ "postfix": false, "binop": null }, - "start": 259, - "end": 260, + "start": 244, + "end": 245, "loc": { "start": { "line": 13, @@ -8954,8 +15118,8 @@ "updateContext": null }, "value": "return", - "start": 265, - "end": 271, + "start": 250, + "end": 256, "loc": { "start": { "line": 14, @@ -8982,8 +15146,8 @@ "updateContext": null }, "value": "this", - "start": 272, - "end": 276, + "start": 257, + "end": 261, "loc": { "start": { "line": 14, @@ -9008,8 +15172,8 @@ "binop": null, "updateContext": null }, - "start": 276, - "end": 277, + "start": 261, + "end": 262, "loc": { "start": { "line": 14, @@ -9034,8 +15198,8 @@ "binop": null }, "value": "value", - "start": 277, - "end": 282, + "start": 262, + "end": 267, "loc": { "start": { "line": 14, @@ -9060,8 +15224,8 @@ "binop": null, "updateContext": null }, - "start": 282, - "end": 283, + "start": 267, + "end": 268, "loc": { "start": { "line": 14, @@ -9085,8 +15249,8 @@ "postfix": false, "binop": null }, - "start": 286, - "end": 287, + "start": 271, + "end": 272, "loc": { "start": { "line": 15, @@ -9110,8 +15274,8 @@ "postfix": false, "binop": null }, - "start": 288, - "end": 289, + "start": 273, + "end": 274, "loc": { "start": { "line": 16, @@ -9138,8 +15302,8 @@ "updateContext": null }, "value": "class", - "start": 291, - "end": 296, + "start": 276, + "end": 281, "loc": { "start": { "line": 18, @@ -9164,8 +15328,8 @@ "binop": null }, "value": "Word", - "start": 297, - "end": 301, + "start": 282, + "end": 286, "loc": { "start": { "line": 18, @@ -9189,8 +15353,8 @@ "postfix": false, "binop": null }, - "start": 302, - "end": 303, + "start": 287, + "end": 288, "loc": { "start": { "line": 18, @@ -9215,8 +15379,8 @@ "binop": null }, "value": "constructor", - "start": 306, - "end": 317, + "start": 291, + "end": 302, "loc": { "start": { "line": 19, @@ -9240,8 +15404,8 @@ "postfix": false, "binop": null }, - "start": 317, - "end": 318, + "start": 302, + "end": 303, "loc": { "start": { "line": 19, @@ -9266,8 +15430,8 @@ "binop": null }, "value": "token", - "start": 318, - "end": 323, + "start": 303, + "end": 308, "loc": { "start": { "line": 19, @@ -9291,8 +15455,8 @@ "postfix": false, "binop": null }, - "start": 323, - "end": 324, + "start": 308, + "end": 309, "loc": { "start": { "line": 19, @@ -9316,8 +15480,8 @@ "postfix": false, "binop": null }, - "start": 325, - "end": 326, + "start": 310, + "end": 311, "loc": { "start": { "line": 19, @@ -9344,8 +15508,8 @@ "updateContext": null }, "value": "this", - "start": 331, - "end": 335, + "start": 316, + "end": 320, "loc": { "start": { "line": 20, @@ -9370,8 +15534,8 @@ "binop": null, "updateContext": null }, - "start": 335, - "end": 336, + "start": 320, + "end": 321, "loc": { "start": { "line": 20, @@ -9396,8 +15560,8 @@ "binop": null }, "value": "type", - "start": 336, - "end": 340, + "start": 321, + "end": 325, "loc": { "start": { "line": 20, @@ -9423,8 +15587,8 @@ "updateContext": null }, "value": "=", - "start": 341, - "end": 342, + "start": 326, + "end": 327, "loc": { "start": { "line": 20, @@ -9450,8 +15614,8 @@ "updateContext": null }, "value": "word", - "start": 343, - "end": 349, + "start": 328, + "end": 334, "loc": { "start": { "line": 20, @@ -9476,8 +15640,8 @@ "binop": null, "updateContext": null }, - "start": 349, - "end": 350, + "start": 334, + "end": 335, "loc": { "start": { "line": 20, @@ -9504,8 +15668,8 @@ "updateContext": null }, "value": "this", - "start": 355, - "end": 359, + "start": 340, + "end": 344, "loc": { "start": { "line": 21, @@ -9530,8 +15694,8 @@ "binop": null, "updateContext": null }, - "start": 359, - "end": 360, + "start": 344, + "end": 345, "loc": { "start": { "line": 21, @@ -9556,8 +15720,8 @@ "binop": null }, "value": "name", - "start": 360, - "end": 364, + "start": 345, + "end": 349, "loc": { "start": { "line": 21, @@ -9583,8 +15747,8 @@ "updateContext": null }, "value": "=", - "start": 365, - "end": 366, + "start": 350, + "end": 351, "loc": { "start": { "line": 21, @@ -9609,8 +15773,8 @@ "binop": null }, "value": "token", - "start": 367, - "end": 372, + "start": 352, + "end": 357, "loc": { "start": { "line": 21, @@ -9635,8 +15799,8 @@ "binop": null, "updateContext": null }, - "start": 372, - "end": 373, + "start": 357, + "end": 358, "loc": { "start": { "line": 21, @@ -9661,8 +15825,8 @@ "binop": null }, "value": "value", - "start": 373, - "end": 378, + "start": 358, + "end": 363, "loc": { "start": { "line": 21, @@ -9687,8 +15851,8 @@ "binop": null, "updateContext": null }, - "start": 378, - "end": 379, + "start": 363, + "end": 364, "loc": { "start": { "line": 21, @@ -9712,8 +15876,8 @@ "postfix": false, "binop": null }, - "start": 382, - "end": 383, + "start": 367, + "end": 368, "loc": { "start": { "line": 22, @@ -9738,8 +15902,8 @@ "binop": null }, "value": "evaluate", - "start": 387, - "end": 395, + "start": 372, + "end": 380, "loc": { "start": { "line": 24, @@ -9763,8 +15927,8 @@ "postfix": false, "binop": null }, - "start": 395, - "end": 396, + "start": 380, + "end": 381, "loc": { "start": { "line": 24, @@ -9789,8 +15953,8 @@ "binop": null }, "value": "env", - "start": 396, - "end": 399, + "start": 381, + "end": 384, "loc": { "start": { "line": 24, @@ -9814,8 +15978,8 @@ "postfix": false, "binop": null }, - "start": 399, - "end": 400, + "start": 384, + "end": 385, "loc": { "start": { "line": 24, @@ -9839,8 +16003,8 @@ "postfix": false, "binop": null }, - "start": 401, - "end": 402, + "start": 386, + "end": 387, "loc": { "start": { "line": 24, @@ -9855,8 +16019,8 @@ { "type": "CommentLine", "value": " Variable", - "start": 407, - "end": 418, + "start": 392, + "end": 403, "loc": { "start": { "line": 25, @@ -9883,8 +16047,8 @@ "updateContext": null }, "value": "if", - "start": 423, - "end": 425, + "start": 408, + "end": 410, "loc": { "start": { "line": 26, @@ -9908,8 +16072,8 @@ "postfix": false, "binop": null }, - "start": 426, - "end": 427, + "start": 411, + "end": 412, "loc": { "start": { "line": 26, @@ -9936,8 +16100,8 @@ "updateContext": null }, "value": "this", - "start": 427, - "end": 431, + "start": 412, + "end": 416, "loc": { "start": { "line": 26, @@ -9962,8 +16126,8 @@ "binop": null, "updateContext": null }, - "start": 431, - "end": 432, + "start": 416, + "end": 417, "loc": { "start": { "line": 26, @@ -9988,8 +16152,8 @@ "binop": null }, "value": "name", - "start": 432, - "end": 436, + "start": 417, + "end": 421, "loc": { "start": { "line": 26, @@ -10016,8 +16180,8 @@ "updateContext": null }, "value": "in", - "start": 437, - "end": 439, + "start": 422, + "end": 424, "loc": { "start": { "line": 26, @@ -10042,8 +16206,8 @@ "binop": null }, "value": "env", - "start": 440, - "end": 443, + "start": 425, + "end": 428, "loc": { "start": { "line": 26, @@ -10067,8 +16231,8 @@ "postfix": false, "binop": null }, - "start": 443, - "end": 444, + "start": 428, + "end": 429, "loc": { "start": { "line": 26, @@ -10092,8 +16256,8 @@ "postfix": false, "binop": null }, - "start": 445, - "end": 446, + "start": 430, + "end": 431, "loc": { "start": { "line": 26, @@ -10120,8 +16284,8 @@ "updateContext": null }, "value": "return", - "start": 453, - "end": 459, + "start": 438, + "end": 444, "loc": { "start": { "line": 27, @@ -10146,8 +16310,8 @@ "binop": null }, "value": "env", - "start": 460, - "end": 463, + "start": 445, + "end": 448, "loc": { "start": { "line": 27, @@ -10172,8 +16336,8 @@ "binop": null, "updateContext": null }, - "start": 463, - "end": 464, + "start": 448, + "end": 449, "loc": { "start": { "line": 27, @@ -10200,8 +16364,8 @@ "updateContext": null }, "value": "this", - "start": 464, - "end": 468, + "start": 449, + "end": 453, "loc": { "start": { "line": 27, @@ -10226,8 +16390,8 @@ "binop": null, "updateContext": null }, - "start": 468, - "end": 469, + "start": 453, + "end": 454, "loc": { "start": { "line": 27, @@ -10252,8 +16416,8 @@ "binop": null }, "value": "name", - "start": 469, - "end": 473, + "start": 454, + "end": 458, "loc": { "start": { "line": 27, @@ -10278,8 +16442,8 @@ "binop": null, "updateContext": null }, - "start": 473, - "end": 474, + "start": 458, + "end": 459, "loc": { "start": { "line": 27, @@ -10304,8 +16468,8 @@ "binop": null, "updateContext": null }, - "start": 474, - "end": 475, + "start": 459, + "end": 460, "loc": { "start": { "line": 27, @@ -10320,8 +16484,8 @@ { "type": "CommentLine", "value": " Variable in const scope", - "start": 483, - "end": 509, + "start": 468, + "end": 494, "loc": { "start": { "line": 29, @@ -10345,8 +16509,8 @@ "postfix": false, "binop": null }, - "start": 514, - "end": 515, + "start": 499, + "end": 500, "loc": { "start": { "line": 30, @@ -10373,8 +16537,8 @@ "updateContext": null }, "value": "else", - "start": 516, - "end": 520, + "start": 501, + "end": 505, "loc": { "start": { "line": 30, @@ -10401,8 +16565,8 @@ "updateContext": null }, "value": "if", - "start": 521, - "end": 523, + "start": 506, + "end": 508, "loc": { "start": { "line": 30, @@ -10426,8 +16590,8 @@ "postfix": false, "binop": null }, - "start": 524, - "end": 525, + "start": 509, + "end": 510, "loc": { "start": { "line": 30, @@ -10454,8 +16618,8 @@ "updateContext": null }, "value": "this", - "start": 525, - "end": 529, + "start": 510, + "end": 514, "loc": { "start": { "line": 30, @@ -10480,8 +16644,8 @@ "binop": null, "updateContext": null }, - "start": 529, - "end": 530, + "start": 514, + "end": 515, "loc": { "start": { "line": 30, @@ -10506,8 +16670,8 @@ "binop": null }, "value": "name", - "start": 530, - "end": 534, + "start": 515, + "end": 519, "loc": { "start": { "line": 30, @@ -10534,8 +16698,8 @@ "updateContext": null }, "value": "in", - "start": 535, - "end": 537, + "start": 520, + "end": 522, "loc": { "start": { "line": 30, @@ -10560,8 +16724,8 @@ "binop": null }, "value": "env", - "start": 538, - "end": 541, + "start": 523, + "end": 526, "loc": { "start": { "line": 30, @@ -10586,8 +16750,8 @@ "binop": null, "updateContext": null }, - "start": 541, - "end": 542, + "start": 526, + "end": 527, "loc": { "start": { "line": 30, @@ -10613,8 +16777,8 @@ "updateContext": null }, "value": "__const__", - "start": 542, - "end": 553, + "start": 527, + "end": 538, "loc": { "start": { "line": 30, @@ -10639,8 +16803,8 @@ "binop": null, "updateContext": null }, - "start": 553, - "end": 554, + "start": 538, + "end": 539, "loc": { "start": { "line": 30, @@ -10664,8 +16828,8 @@ "postfix": false, "binop": null }, - "start": 554, - "end": 555, + "start": 539, + "end": 540, "loc": { "start": { "line": 30, @@ -10689,8 +16853,8 @@ "postfix": false, "binop": null }, - "start": 556, - "end": 557, + "start": 541, + "end": 542, "loc": { "start": { "line": 30, @@ -10717,8 +16881,8 @@ "updateContext": null }, "value": "return", - "start": 564, - "end": 570, + "start": 549, + "end": 555, "loc": { "start": { "line": 31, @@ -10743,8 +16907,8 @@ "binop": null }, "value": "env", - "start": 571, - "end": 574, + "start": 556, + "end": 559, "loc": { "start": { "line": 31, @@ -10769,8 +16933,8 @@ "binop": null, "updateContext": null }, - "start": 574, - "end": 575, + "start": 559, + "end": 560, "loc": { "start": { "line": 31, @@ -10796,8 +16960,8 @@ "updateContext": null }, "value": "__const__", - "start": 575, - "end": 586, + "start": 560, + "end": 571, "loc": { "start": { "line": 31, @@ -10822,8 +16986,8 @@ "binop": null, "updateContext": null }, - "start": 586, - "end": 587, + "start": 571, + "end": 572, "loc": { "start": { "line": 31, @@ -10848,8 +17012,8 @@ "binop": null, "updateContext": null }, - "start": 587, - "end": 588, + "start": 572, + "end": 573, "loc": { "start": { "line": 31, @@ -10876,8 +17040,8 @@ "updateContext": null }, "value": "this", - "start": 588, - "end": 592, + "start": 573, + "end": 577, "loc": { "start": { "line": 31, @@ -10902,8 +17066,8 @@ "binop": null, "updateContext": null }, - "start": 592, - "end": 593, + "start": 577, + "end": 578, "loc": { "start": { "line": 31, @@ -10928,8 +17092,8 @@ "binop": null }, "value": "name", - "start": 593, - "end": 597, + "start": 578, + "end": 582, "loc": { "start": { "line": 31, @@ -10954,8 +17118,8 @@ "binop": null, "updateContext": null }, - "start": 597, - "end": 598, + "start": 582, + "end": 583, "loc": { "start": { "line": 31, @@ -10980,8 +17144,8 @@ "binop": null, "updateContext": null }, - "start": 598, - "end": 599, + "start": 583, + "end": 584, "loc": { "start": { "line": 31, @@ -10996,8 +17160,8 @@ { "type": "CommentLine", "value": " Object variable referenced without using 'this'", - "start": 607, - "end": 657, + "start": 592, + "end": 642, "loc": { "start": { "line": 33, @@ -11021,8 +17185,8 @@ "postfix": false, "binop": null }, - "start": 662, - "end": 663, + "start": 647, + "end": 648, "loc": { "start": { "line": 34, @@ -11049,8 +17213,8 @@ "updateContext": null }, "value": "else", - "start": 664, - "end": 668, + "start": 649, + "end": 653, "loc": { "start": { "line": 34, @@ -11077,8 +17241,8 @@ "updateContext": null }, "value": "if", - "start": 669, - "end": 671, + "start": 654, + "end": 656, "loc": { "start": { "line": 34, @@ -11102,8 +17266,8 @@ "postfix": false, "binop": null }, - "start": 672, - "end": 673, + "start": 657, + "end": 658, "loc": { "start": { "line": 34, @@ -11129,8 +17293,8 @@ "updateContext": null }, "value": "this", - "start": 673, - "end": 679, + "start": 658, + "end": 664, "loc": { "start": { "line": 34, @@ -11157,8 +17321,8 @@ "updateContext": null }, "value": "in", - "start": 680, - "end": 682, + "start": 665, + "end": 667, "loc": { "start": { "line": 34, @@ -11183,8 +17347,8 @@ "binop": null }, "value": "env", - "start": 683, - "end": 686, + "start": 668, + "end": 671, "loc": { "start": { "line": 34, @@ -11210,8 +17374,8 @@ "updateContext": null }, "value": "&&", - "start": 687, - "end": 689, + "start": 672, + "end": 674, "loc": { "start": { "line": 34, @@ -11238,8 +17402,8 @@ "updateContext": null }, "value": "this", - "start": 690, - "end": 694, + "start": 675, + "end": 679, "loc": { "start": { "line": 34, @@ -11264,8 +17428,8 @@ "binop": null, "updateContext": null }, - "start": 694, - "end": 695, + "start": 679, + "end": 680, "loc": { "start": { "line": 34, @@ -11290,8 +17454,8 @@ "binop": null }, "value": "name", - "start": 695, - "end": 699, + "start": 680, + "end": 684, "loc": { "start": { "line": 34, @@ -11318,8 +17482,8 @@ "updateContext": null }, "value": "in", - "start": 700, - "end": 702, + "start": 685, + "end": 687, "loc": { "start": { "line": 34, @@ -11344,8 +17508,8 @@ "binop": null }, "value": "env", - "start": 703, - "end": 706, + "start": 688, + "end": 691, "loc": { "start": { "line": 34, @@ -11370,8 +17534,8 @@ "binop": null, "updateContext": null }, - "start": 706, - "end": 707, + "start": 691, + "end": 692, "loc": { "start": { "line": 34, @@ -11397,8 +17561,8 @@ "updateContext": null }, "value": "this", - "start": 707, - "end": 713, + "start": 692, + "end": 698, "loc": { "start": { "line": 34, @@ -11423,8 +17587,8 @@ "binop": null, "updateContext": null }, - "start": 713, - "end": 714, + "start": 698, + "end": 699, "loc": { "start": { "line": 34, @@ -11448,8 +17612,8 @@ "postfix": false, "binop": null }, - "start": 714, - "end": 715, + "start": 699, + "end": 700, "loc": { "start": { "line": 34, @@ -11473,8 +17637,8 @@ "postfix": false, "binop": null }, - "start": 716, - "end": 717, + "start": 701, + "end": 702, "loc": { "start": { "line": 34, @@ -11501,8 +17665,8 @@ "updateContext": null }, "value": "return", - "start": 724, - "end": 730, + "start": 709, + "end": 715, "loc": { "start": { "line": 35, @@ -11527,8 +17691,8 @@ "binop": null }, "value": "env", - "start": 731, - "end": 734, + "start": 716, + "end": 719, "loc": { "start": { "line": 35, @@ -11553,8 +17717,8 @@ "binop": null, "updateContext": null }, - "start": 734, - "end": 735, + "start": 719, + "end": 720, "loc": { "start": { "line": 35, @@ -11580,8 +17744,8 @@ "updateContext": null }, "value": "this", - "start": 735, - "end": 741, + "start": 720, + "end": 726, "loc": { "start": { "line": 35, @@ -11606,8 +17770,8 @@ "binop": null, "updateContext": null }, - "start": 741, - "end": 742, + "start": 726, + "end": 727, "loc": { "start": { "line": 35, @@ -11632,8 +17796,8 @@ "binop": null, "updateContext": null }, - "start": 742, - "end": 743, + "start": 727, + "end": 728, "loc": { "start": { "line": 35, @@ -11660,8 +17824,8 @@ "updateContext": null }, "value": "this", - "start": 743, - "end": 747, + "start": 728, + "end": 732, "loc": { "start": { "line": 35, @@ -11686,8 +17850,8 @@ "binop": null, "updateContext": null }, - "start": 747, - "end": 748, + "start": 732, + "end": 733, "loc": { "start": { "line": 35, @@ -11712,8 +17876,8 @@ "binop": null }, "value": "name", - "start": 748, - "end": 752, + "start": 733, + "end": 737, "loc": { "start": { "line": 35, @@ -11738,8 +17902,8 @@ "binop": null, "updateContext": null }, - "start": 752, - "end": 753, + "start": 737, + "end": 738, "loc": { "start": { "line": 35, @@ -11764,8 +17928,8 @@ "binop": null, "updateContext": null }, - "start": 753, - "end": 754, + "start": 738, + "end": 739, "loc": { "start": { "line": 35, @@ -11789,8 +17953,8 @@ "postfix": false, "binop": null }, - "start": 759, - "end": 760, + "start": 744, + "end": 745, "loc": { "start": { "line": 36, @@ -11817,8 +17981,8 @@ "updateContext": null }, "value": "else", - "start": 761, - "end": 765, + "start": 746, + "end": 750, "loc": { "start": { "line": 36, @@ -11842,8 +18006,8 @@ "postfix": false, "binop": null }, - "start": 766, - "end": 767, + "start": 751, + "end": 752, "loc": { "start": { "line": 36, @@ -11870,8 +18034,8 @@ "updateContext": null }, "value": "throw", - "start": 774, - "end": 779, + "start": 759, + "end": 764, "loc": { "start": { "line": 37, @@ -11898,8 +18062,8 @@ "updateContext": null }, "value": "new", - "start": 780, - "end": 783, + "start": 765, + "end": 768, "loc": { "start": { "line": 37, @@ -11924,8 +18088,8 @@ "binop": null }, "value": "ReferenceError", - "start": 784, - "end": 798, + "start": 769, + "end": 783, "loc": { "start": { "line": 37, @@ -11949,8 +18113,8 @@ "postfix": false, "binop": null }, - "start": 798, - "end": 799, + "start": 783, + "end": 784, "loc": { "start": { "line": 37, @@ -11974,8 +18138,8 @@ "postfix": false, "binop": null }, - "start": 799, - "end": 800, + "start": 784, + "end": 785, "loc": { "start": { "line": 37, @@ -12001,8 +18165,8 @@ "updateContext": null }, "value": "Undefined variable: ", - "start": 800, - "end": 820, + "start": 785, + "end": 805, "loc": { "start": { "line": 37, @@ -12026,8 +18190,8 @@ "postfix": false, "binop": null }, - "start": 820, - "end": 822, + "start": 805, + "end": 807, "loc": { "start": { "line": 37, @@ -12054,8 +18218,8 @@ "updateContext": null }, "value": "this", - "start": 822, - "end": 826, + "start": 807, + "end": 811, "loc": { "start": { "line": 37, @@ -12080,8 +18244,8 @@ "binop": null, "updateContext": null }, - "start": 826, - "end": 827, + "start": 811, + "end": 812, "loc": { "start": { "line": 37, @@ -12106,8 +18270,8 @@ "binop": null }, "value": "name", - "start": 827, - "end": 831, + "start": 812, + "end": 816, "loc": { "start": { "line": 37, @@ -12131,8 +18295,8 @@ "postfix": false, "binop": null }, - "start": 831, - "end": 832, + "start": 816, + "end": 817, "loc": { "start": { "line": 37, @@ -12158,8 +18322,8 @@ "updateContext": null }, "value": "", - "start": 832, - "end": 832, + "start": 817, + "end": 817, "loc": { "start": { "line": 37, @@ -12183,8 +18347,8 @@ "postfix": false, "binop": null }, - "start": 832, - "end": 833, + "start": 817, + "end": 818, "loc": { "start": { "line": 37, @@ -12208,8 +18372,8 @@ "postfix": false, "binop": null }, - "start": 833, - "end": 834, + "start": 818, + "end": 819, "loc": { "start": { "line": 37, @@ -12234,8 +18398,8 @@ "binop": null, "updateContext": null }, - "start": 834, - "end": 835, + "start": 819, + "end": 820, "loc": { "start": { "line": 37, @@ -12259,8 +18423,8 @@ "postfix": false, "binop": null }, - "start": 840, - "end": 841, + "start": 825, + "end": 826, "loc": { "start": { "line": 38, @@ -12284,8 +18448,8 @@ "postfix": false, "binop": null }, - "start": 844, - "end": 845, + "start": 829, + "end": 830, "loc": { "start": { "line": 39, @@ -12309,8 +18473,8 @@ "postfix": false, "binop": null }, - "start": 846, - "end": 847, + "start": 831, + "end": 832, "loc": { "start": { "line": 40, @@ -12337,8 +18501,8 @@ "updateContext": null }, "value": "class", - "start": 849, - "end": 854, + "start": 834, + "end": 839, "loc": { "start": { "line": 42, @@ -12363,8 +18527,8 @@ "binop": null }, "value": "Apply", - "start": 855, - "end": 860, + "start": 840, + "end": 845, "loc": { "start": { "line": 42, @@ -12388,8 +18552,8 @@ "postfix": false, "binop": null }, - "start": 861, - "end": 862, + "start": 846, + "end": 847, "loc": { "start": { "line": 42, @@ -12414,8 +18578,8 @@ "binop": null }, "value": "constructor", - "start": 865, - "end": 876, + "start": 850, + "end": 861, "loc": { "start": { "line": 43, @@ -12439,8 +18603,8 @@ "postfix": false, "binop": null }, - "start": 876, - "end": 877, + "start": 861, + "end": 862, "loc": { "start": { "line": 43, @@ -12465,8 +18629,8 @@ "binop": null }, "value": "expr", - "start": 877, - "end": 881, + "start": 862, + "end": 866, "loc": { "start": { "line": 43, @@ -12490,8 +18654,8 @@ "postfix": false, "binop": null }, - "start": 881, - "end": 882, + "start": 866, + "end": 867, "loc": { "start": { "line": 43, @@ -12515,8 +18679,8 @@ "postfix": false, "binop": null }, - "start": 883, - "end": 884, + "start": 868, + "end": 869, "loc": { "start": { "line": 43, @@ -12543,8 +18707,8 @@ "updateContext": null }, "value": "this", - "start": 889, - "end": 893, + "start": 874, + "end": 878, "loc": { "start": { "line": 44, @@ -12569,8 +18733,8 @@ "binop": null, "updateContext": null }, - "start": 893, - "end": 894, + "start": 878, + "end": 879, "loc": { "start": { "line": 44, @@ -12595,8 +18759,8 @@ "binop": null }, "value": "type", - "start": 894, - "end": 898, + "start": 879, + "end": 883, "loc": { "start": { "line": 44, @@ -12622,8 +18786,8 @@ "updateContext": null }, "value": "=", - "start": 899, - "end": 900, + "start": 884, + "end": 885, "loc": { "start": { "line": 44, @@ -12649,8 +18813,8 @@ "updateContext": null }, "value": "apply", - "start": 901, - "end": 908, + "start": 886, + "end": 893, "loc": { "start": { "line": 44, @@ -12675,8 +18839,8 @@ "binop": null, "updateContext": null }, - "start": 908, - "end": 909, + "start": 893, + "end": 894, "loc": { "start": { "line": 44, @@ -12703,8 +18867,8 @@ "updateContext": null }, "value": "this", - "start": 914, - "end": 918, + "start": 899, + "end": 903, "loc": { "start": { "line": 45, @@ -12729,8 +18893,8 @@ "binop": null, "updateContext": null }, - "start": 918, - "end": 919, + "start": 903, + "end": 904, "loc": { "start": { "line": 45, @@ -12755,8 +18919,8 @@ "binop": null }, "value": "operator", - "start": 919, - "end": 927, + "start": 904, + "end": 912, "loc": { "start": { "line": 45, @@ -12782,8 +18946,8 @@ "updateContext": null }, "value": "=", - "start": 928, - "end": 929, + "start": 913, + "end": 914, "loc": { "start": { "line": 45, @@ -12808,8 +18972,8 @@ "binop": null }, "value": "expr", - "start": 930, - "end": 934, + "start": 915, + "end": 919, "loc": { "start": { "line": 45, @@ -12834,8 +18998,8 @@ "binop": null, "updateContext": null }, - "start": 934, - "end": 935, + "start": 919, + "end": 920, "loc": { "start": { "line": 45, @@ -12862,8 +19026,8 @@ "updateContext": null }, "value": "this", - "start": 940, - "end": 944, + "start": 925, + "end": 929, "loc": { "start": { "line": 46, @@ -12888,8 +19052,8 @@ "binop": null, "updateContext": null }, - "start": 944, - "end": 945, + "start": 929, + "end": 930, "loc": { "start": { "line": 46, @@ -12914,8 +19078,8 @@ "binop": null }, "value": "args", - "start": 945, - "end": 949, + "start": 930, + "end": 934, "loc": { "start": { "line": 46, @@ -12941,8 +19105,8 @@ "updateContext": null }, "value": "=", - "start": 950, - "end": 951, + "start": 935, + "end": 936, "loc": { "start": { "line": 46, @@ -12967,8 +19131,8 @@ "binop": null, "updateContext": null }, - "start": 952, - "end": 953, + "start": 937, + "end": 938, "loc": { "start": { "line": 46, @@ -12993,8 +19157,8 @@ "binop": null, "updateContext": null }, - "start": 953, - "end": 954, + "start": 938, + "end": 939, "loc": { "start": { "line": 46, @@ -13019,8 +19183,8 @@ "binop": null, "updateContext": null }, - "start": 954, - "end": 955, + "start": 939, + "end": 940, "loc": { "start": { "line": 46, @@ -13044,8 +19208,8 @@ "postfix": false, "binop": null }, - "start": 958, - "end": 959, + "start": 943, + "end": 944, "loc": { "start": { "line": 47, @@ -13070,8 +19234,8 @@ "binop": null }, "value": "evaluate", - "start": 963, - "end": 971, + "start": 948, + "end": 956, "loc": { "start": { "line": 49, @@ -13095,8 +19259,8 @@ "postfix": false, "binop": null }, - "start": 971, - "end": 972, + "start": 956, + "end": 957, "loc": { "start": { "line": 49, @@ -13121,8 +19285,8 @@ "binop": null }, "value": "env", - "start": 972, - "end": 975, + "start": 957, + "end": 960, "loc": { "start": { "line": 49, @@ -13146,8 +19310,8 @@ "postfix": false, "binop": null }, - "start": 975, - "end": 976, + "start": 960, + "end": 961, "loc": { "start": { "line": 49, @@ -13171,8 +19335,8 @@ "postfix": false, "binop": null }, - "start": 977, - "end": 978, + "start": 962, + "end": 963, "loc": { "start": { "line": 49, @@ -13187,8 +19351,8 @@ { "type": "CommentLine", "value": " Check if its a specialForm function", - "start": 983, - "end": 1021, + "start": 968, + "end": 1006, "loc": { "start": { "line": 50, @@ -13215,8 +19379,8 @@ "updateContext": null }, "value": "if", - "start": 1026, - "end": 1028, + "start": 1011, + "end": 1013, "loc": { "start": { "line": 51, @@ -13240,8 +19404,8 @@ "postfix": false, "binop": null }, - "start": 1029, - "end": 1030, + "start": 1014, + "end": 1015, "loc": { "start": { "line": 51, @@ -13268,8 +19432,8 @@ "updateContext": null }, "value": "this", - "start": 1030, - "end": 1034, + "start": 1015, + "end": 1019, "loc": { "start": { "line": 51, @@ -13294,8 +19458,8 @@ "binop": null, "updateContext": null }, - "start": 1034, - "end": 1035, + "start": 1019, + "end": 1020, "loc": { "start": { "line": 51, @@ -13320,8 +19484,8 @@ "binop": null }, "value": "operator", - "start": 1035, - "end": 1043, + "start": 1020, + "end": 1028, "loc": { "start": { "line": 51, @@ -13346,8 +19510,8 @@ "binop": null, "updateContext": null }, - "start": 1043, - "end": 1044, + "start": 1028, + "end": 1029, "loc": { "start": { "line": 51, @@ -13372,8 +19536,8 @@ "binop": null }, "value": "type", - "start": 1044, - "end": 1048, + "start": 1029, + "end": 1033, "loc": { "start": { "line": 51, @@ -13399,8 +19563,8 @@ "updateContext": null }, "value": "===", - "start": 1049, - "end": 1052, + "start": 1034, + "end": 1037, "loc": { "start": { "line": 51, @@ -13426,8 +19590,8 @@ "updateContext": null }, "value": "word", - "start": 1053, - "end": 1059, + "start": 1038, + "end": 1044, "loc": { "start": { "line": 51, @@ -13453,8 +19617,8 @@ "updateContext": null }, "value": "&&", - "start": 1060, - "end": 1062, + "start": 1045, + "end": 1047, "loc": { "start": { "line": 51, @@ -13481,8 +19645,8 @@ "updateContext": null }, "value": "this", - "start": 1063, - "end": 1067, + "start": 1048, + "end": 1052, "loc": { "start": { "line": 51, @@ -13507,8 +19671,8 @@ "binop": null, "updateContext": null }, - "start": 1067, - "end": 1068, + "start": 1052, + "end": 1053, "loc": { "start": { "line": 51, @@ -13533,8 +19697,8 @@ "binop": null }, "value": "operator", - "start": 1068, - "end": 1076, + "start": 1053, + "end": 1061, "loc": { "start": { "line": 51, @@ -13559,8 +19723,8 @@ "binop": null, "updateContext": null }, - "start": 1076, - "end": 1077, + "start": 1061, + "end": 1062, "loc": { "start": { "line": 51, @@ -13585,8 +19749,8 @@ "binop": null }, "value": "name", - "start": 1077, - "end": 1081, + "start": 1062, + "end": 1066, "loc": { "start": { "line": 51, @@ -13613,8 +19777,8 @@ "updateContext": null }, "value": "in", - "start": 1082, - "end": 1084, + "start": 1067, + "end": 1069, "loc": { "start": { "line": 51, @@ -13639,8 +19803,8 @@ "binop": null }, "value": "SpecialForms", - "start": 1085, - "end": 1097, + "start": 1070, + "end": 1082, "loc": { "start": { "line": 51, @@ -13664,8 +19828,8 @@ "postfix": false, "binop": null }, - "start": 1097, - "end": 1098, + "start": 1082, + "end": 1083, "loc": { "start": { "line": 51, @@ -13689,8 +19853,8 @@ "postfix": false, "binop": null }, - "start": 1099, - "end": 1100, + "start": 1084, + "end": 1085, "loc": { "start": { "line": 51, @@ -13717,8 +19881,8 @@ "updateContext": null }, "value": "return", - "start": 1107, - "end": 1113, + "start": 1092, + "end": 1098, "loc": { "start": { "line": 52, @@ -13743,8 +19907,8 @@ "binop": null }, "value": "SpecialForms", - "start": 1114, - "end": 1126, + "start": 1099, + "end": 1111, "loc": { "start": { "line": 52, @@ -13769,8 +19933,8 @@ "binop": null, "updateContext": null }, - "start": 1126, - "end": 1127, + "start": 1111, + "end": 1112, "loc": { "start": { "line": 52, @@ -13797,8 +19961,8 @@ "updateContext": null }, "value": "this", - "start": 1127, - "end": 1131, + "start": 1112, + "end": 1116, "loc": { "start": { "line": 52, @@ -13823,8 +19987,8 @@ "binop": null, "updateContext": null }, - "start": 1131, - "end": 1132, + "start": 1116, + "end": 1117, "loc": { "start": { "line": 52, @@ -13849,8 +20013,8 @@ "binop": null }, "value": "operator", - "start": 1132, - "end": 1140, + "start": 1117, + "end": 1125, "loc": { "start": { "line": 52, @@ -13875,8 +20039,8 @@ "binop": null, "updateContext": null }, - "start": 1140, - "end": 1141, + "start": 1125, + "end": 1126, "loc": { "start": { "line": 52, @@ -13901,8 +20065,8 @@ "binop": null }, "value": "name", - "start": 1141, - "end": 1145, + "start": 1126, + "end": 1130, "loc": { "start": { "line": 52, @@ -13927,8 +20091,8 @@ "binop": null, "updateContext": null }, - "start": 1145, - "end": 1146, + "start": 1130, + "end": 1131, "loc": { "start": { "line": 52, @@ -13952,8 +20116,8 @@ "postfix": false, "binop": null }, - "start": 1146, - "end": 1147, + "start": 1131, + "end": 1132, "loc": { "start": { "line": 52, @@ -13980,8 +20144,8 @@ "updateContext": null }, "value": "this", - "start": 1147, - "end": 1151, + "start": 1132, + "end": 1136, "loc": { "start": { "line": 52, @@ -14006,8 +20170,8 @@ "binop": null, "updateContext": null }, - "start": 1151, - "end": 1152, + "start": 1136, + "end": 1137, "loc": { "start": { "line": 52, @@ -14032,8 +20196,8 @@ "binop": null }, "value": "args", - "start": 1152, - "end": 1156, + "start": 1137, + "end": 1141, "loc": { "start": { "line": 52, @@ -14058,8 +20222,8 @@ "binop": null, "updateContext": null }, - "start": 1156, - "end": 1157, + "start": 1141, + "end": 1142, "loc": { "start": { "line": 52, @@ -14084,8 +20248,8 @@ "binop": null }, "value": "env", - "start": 1158, - "end": 1161, + "start": 1143, + "end": 1146, "loc": { "start": { "line": 52, @@ -14109,8 +20273,8 @@ "postfix": false, "binop": null }, - "start": 1161, - "end": 1162, + "start": 1146, + "end": 1147, "loc": { "start": { "line": 52, @@ -14135,8 +20299,8 @@ "binop": null, "updateContext": null }, - "start": 1162, - "end": 1163, + "start": 1147, + "end": 1148, "loc": { "start": { "line": 52, @@ -14160,8 +20324,8 @@ "postfix": false, "binop": null }, - "start": 1168, - "end": 1169, + "start": 1153, + "end": 1154, "loc": { "start": { "line": 53, @@ -14176,8 +20340,8 @@ { "type": "CommentLine", "value": " Evaluated operator", - "start": 1175, - "end": 1196, + "start": 1160, + "end": 1181, "loc": { "start": { "line": 55, @@ -14204,8 +20368,8 @@ "updateContext": null }, "value": "let", - "start": 1201, - "end": 1204, + "start": 1186, + "end": 1189, "loc": { "start": { "line": 56, @@ -14230,8 +20394,8 @@ "binop": null }, "value": "op", - "start": 1205, - "end": 1207, + "start": 1190, + "end": 1192, "loc": { "start": { "line": 56, @@ -14257,8 +20421,8 @@ "updateContext": null }, "value": "=", - "start": 1208, - "end": 1209, + "start": 1193, + "end": 1194, "loc": { "start": { "line": 56, @@ -14285,8 +20449,8 @@ "updateContext": null }, "value": "this", - "start": 1210, - "end": 1214, + "start": 1195, + "end": 1199, "loc": { "start": { "line": 56, @@ -14311,8 +20475,8 @@ "binop": null, "updateContext": null }, - "start": 1214, - "end": 1215, + "start": 1199, + "end": 1200, "loc": { "start": { "line": 56, @@ -14337,8 +20501,8 @@ "binop": null }, "value": "operator", - "start": 1215, - "end": 1223, + "start": 1200, + "end": 1208, "loc": { "start": { "line": 56, @@ -14363,8 +20527,8 @@ "binop": null, "updateContext": null }, - "start": 1223, - "end": 1224, + "start": 1208, + "end": 1209, "loc": { "start": { "line": 56, @@ -14389,8 +20553,8 @@ "binop": null }, "value": "evaluate", - "start": 1224, - "end": 1232, + "start": 1209, + "end": 1217, "loc": { "start": { "line": 56, @@ -14414,8 +20578,8 @@ "postfix": false, "binop": null }, - "start": 1232, - "end": 1233, + "start": 1217, + "end": 1218, "loc": { "start": { "line": 56, @@ -14440,8 +20604,8 @@ "binop": null }, "value": "env", - "start": 1233, - "end": 1236, + "start": 1218, + "end": 1221, "loc": { "start": { "line": 56, @@ -14465,8 +20629,8 @@ "postfix": false, "binop": null }, - "start": 1236, - "end": 1237, + "start": 1221, + "end": 1222, "loc": { "start": { "line": 56, @@ -14491,8 +20655,8 @@ "binop": null, "updateContext": null }, - "start": 1237, - "end": 1238, + "start": 1222, + "end": 1223, "loc": { "start": { "line": 56, @@ -14507,8 +20671,8 @@ { "type": "CommentLine", "value": " Evaluated arguments", - "start": 1243, - "end": 1265, + "start": 1228, + "end": 1250, "loc": { "start": { "line": 57, @@ -14535,8 +20699,8 @@ "updateContext": null }, "value": "let", - "start": 1270, - "end": 1273, + "start": 1255, + "end": 1258, "loc": { "start": { "line": 58, @@ -14561,8 +20725,8 @@ "binop": null }, "value": "evArgs", - "start": 1274, - "end": 1280, + "start": 1259, + "end": 1265, "loc": { "start": { "line": 58, @@ -14588,8 +20752,8 @@ "updateContext": null }, "value": "=", - "start": 1281, - "end": 1282, + "start": 1266, + "end": 1267, "loc": { "start": { "line": 58, @@ -14616,8 +20780,8 @@ "updateContext": null }, "value": "this", - "start": 1283, - "end": 1287, + "start": 1268, + "end": 1272, "loc": { "start": { "line": 58, @@ -14642,8 +20806,8 @@ "binop": null, "updateContext": null }, - "start": 1287, - "end": 1288, + "start": 1272, + "end": 1273, "loc": { "start": { "line": 58, @@ -14668,8 +20832,8 @@ "binop": null }, "value": "args", - "start": 1288, - "end": 1292, + "start": 1273, + "end": 1277, "loc": { "start": { "line": 58, @@ -14694,8 +20858,8 @@ "binop": null, "updateContext": null }, - "start": 1292, - "end": 1293, + "start": 1277, + "end": 1278, "loc": { "start": { "line": 58, @@ -14720,8 +20884,8 @@ "binop": null }, "value": "map", - "start": 1293, - "end": 1296, + "start": 1278, + "end": 1281, "loc": { "start": { "line": 58, @@ -14745,8 +20909,8 @@ "postfix": false, "binop": null }, - "start": 1296, - "end": 1297, + "start": 1281, + "end": 1282, "loc": { "start": { "line": 58, @@ -14771,8 +20935,8 @@ "binop": null }, "value": "arg", - "start": 1297, - "end": 1300, + "start": 1282, + "end": 1285, "loc": { "start": { "line": 58, @@ -14797,8 +20961,8 @@ "binop": null, "updateContext": null }, - "start": 1301, - "end": 1303, + "start": 1286, + "end": 1288, "loc": { "start": { "line": 58, @@ -14823,8 +20987,8 @@ "binop": null }, "value": "arg", - "start": 1304, - "end": 1307, + "start": 1289, + "end": 1292, "loc": { "start": { "line": 58, @@ -14849,8 +21013,8 @@ "binop": null, "updateContext": null }, - "start": 1307, - "end": 1308, + "start": 1292, + "end": 1293, "loc": { "start": { "line": 58, @@ -14875,8 +21039,8 @@ "binop": null }, "value": "evaluate", - "start": 1308, - "end": 1316, + "start": 1293, + "end": 1301, "loc": { "start": { "line": 58, @@ -14900,8 +21064,8 @@ "postfix": false, "binop": null }, - "start": 1316, - "end": 1317, + "start": 1301, + "end": 1302, "loc": { "start": { "line": 58, @@ -14926,8 +21090,8 @@ "binop": null }, "value": "env", - "start": 1317, - "end": 1320, + "start": 1302, + "end": 1305, "loc": { "start": { "line": 58, @@ -14951,8 +21115,8 @@ "postfix": false, "binop": null }, - "start": 1320, - "end": 1321, + "start": 1305, + "end": 1306, "loc": { "start": { "line": 58, @@ -14976,8 +21140,8 @@ "postfix": false, "binop": null }, - "start": 1321, - "end": 1322, + "start": 1306, + "end": 1307, "loc": { "start": { "line": 58, @@ -15002,8 +21166,8 @@ "binop": null, "updateContext": null }, - "start": 1322, - "end": 1323, + "start": 1307, + "end": 1308, "loc": { "start": { "line": 58, @@ -15030,8 +21194,8 @@ "updateContext": null }, "value": "if", - "start": 1329, - "end": 1331, + "start": 1314, + "end": 1316, "loc": { "start": { "line": 60, @@ -15055,8 +21219,8 @@ "postfix": false, "binop": null }, - "start": 1332, - "end": 1333, + "start": 1317, + "end": 1318, "loc": { "start": { "line": 60, @@ -15083,8 +21247,8 @@ "updateContext": null }, "value": "typeof", - "start": 1333, - "end": 1339, + "start": 1318, + "end": 1324, "loc": { "start": { "line": 60, @@ -15109,8 +21273,8 @@ "binop": null }, "value": "op", - "start": 1340, - "end": 1342, + "start": 1325, + "end": 1327, "loc": { "start": { "line": 60, @@ -15136,8 +21300,8 @@ "updateContext": null }, "value": "===", - "start": 1343, - "end": 1346, + "start": 1328, + "end": 1331, "loc": { "start": { "line": 60, @@ -15163,8 +21327,8 @@ "updateContext": null }, "value": "function", - "start": 1347, - "end": 1357, + "start": 1332, + "end": 1342, "loc": { "start": { "line": 60, @@ -15188,8 +21352,8 @@ "postfix": false, "binop": null }, - "start": 1357, - "end": 1358, + "start": 1342, + "end": 1343, "loc": { "start": { "line": 60, @@ -15213,8 +21377,8 @@ "postfix": false, "binop": null }, - "start": 1359, - "end": 1360, + "start": 1344, + "end": 1345, "loc": { "start": { "line": 60, @@ -15229,8 +21393,8 @@ { "type": "CommentLine", "value": " Is a function", - "start": 1367, - "end": 1383, + "start": 1352, + "end": 1368, "loc": { "start": { "line": 61, @@ -15257,8 +21421,8 @@ "updateContext": null }, "value": "return", - "start": 1390, - "end": 1396, + "start": 1375, + "end": 1381, "loc": { "start": { "line": 62, @@ -15283,8 +21447,8 @@ "binop": null }, "value": "op", - "start": 1397, - "end": 1399, + "start": 1382, + "end": 1384, "loc": { "start": { "line": 62, @@ -15308,8 +21472,8 @@ "postfix": false, "binop": null }, - "start": 1399, - "end": 1400, + "start": 1384, + "end": 1385, "loc": { "start": { "line": 62, @@ -15334,8 +21498,8 @@ "binop": null, "updateContext": null }, - "start": 1400, - "end": 1403, + "start": 1385, + "end": 1388, "loc": { "start": { "line": 62, @@ -15360,8 +21524,8 @@ "binop": null }, "value": "evArgs", - "start": 1403, - "end": 1409, + "start": 1388, + "end": 1394, "loc": { "start": { "line": 62, @@ -15385,8 +21549,8 @@ "postfix": false, "binop": null }, - "start": 1409, - "end": 1410, + "start": 1394, + "end": 1395, "loc": { "start": { "line": 62, @@ -15411,8 +21575,8 @@ "binop": null, "updateContext": null }, - "start": 1410, - "end": 1411, + "start": 1395, + "end": 1396, "loc": { "start": { "line": 62, @@ -15436,8 +21600,8 @@ "postfix": false, "binop": null }, - "start": 1416, - "end": 1417, + "start": 1401, + "end": 1402, "loc": { "start": { "line": 63, @@ -15464,8 +21628,8 @@ "updateContext": null }, "value": "if", - "start": 1423, - "end": 1425, + "start": 1408, + "end": 1410, "loc": { "start": { "line": 65, @@ -15489,8 +21653,8 @@ "postfix": false, "binop": null }, - "start": 1426, - "end": 1427, + "start": 1411, + "end": 1412, "loc": { "start": { "line": 65, @@ -15517,8 +21681,8 @@ "updateContext": null }, "value": "typeof", - "start": 1427, - "end": 1433, + "start": 1412, + "end": 1418, "loc": { "start": { "line": 65, @@ -15543,8 +21707,8 @@ "binop": null }, "value": "op", - "start": 1434, - "end": 1436, + "start": 1419, + "end": 1421, "loc": { "start": { "line": 65, @@ -15570,8 +21734,8 @@ "updateContext": null }, "value": "!==", - "start": 1437, - "end": 1440, + "start": 1422, + "end": 1425, "loc": { "start": { "line": 65, @@ -15597,8 +21761,8 @@ "updateContext": null }, "value": "undefined", - "start": 1441, - "end": 1452, + "start": 1426, + "end": 1437, "loc": { "start": { "line": 65, @@ -15622,8 +21786,8 @@ "postfix": false, "binop": null }, - "start": 1452, - "end": 1453, + "start": 1437, + "end": 1438, "loc": { "start": { "line": 65, @@ -15647,8 +21811,8 @@ "postfix": false, "binop": null }, - "start": 1454, - "end": 1455, + "start": 1439, + "end": 1440, "loc": { "start": { "line": 65, @@ -15663,8 +21827,8 @@ { "type": "CommentLine", "value": " Is an object, number, string or boolean", - "start": 1462, - "end": 1504, + "start": 1447, + "end": 1489, "loc": { "start": { "line": 66, @@ -15691,8 +21855,8 @@ "updateContext": null }, "value": "let", - "start": 1511, - "end": 1514, + "start": 1496, + "end": 1499, "loc": { "start": { "line": 67, @@ -15717,8 +21881,8 @@ "binop": null }, "value": "name", - "start": 1515, - "end": 1519, + "start": 1500, + "end": 1504, "loc": { "start": { "line": 67, @@ -15744,8 +21908,8 @@ "updateContext": null }, "value": "=", - "start": 1520, - "end": 1521, + "start": 1505, + "end": 1506, "loc": { "start": { "line": 67, @@ -15770,8 +21934,8 @@ "binop": null }, "value": "evArgs", - "start": 1522, - "end": 1528, + "start": 1507, + "end": 1513, "loc": { "start": { "line": 67, @@ -15796,8 +21960,8 @@ "binop": null, "updateContext": null }, - "start": 1528, - "end": 1529, + "start": 1513, + "end": 1514, "loc": { "start": { "line": 67, @@ -15823,8 +21987,8 @@ "updateContext": null }, "value": 0, - "start": 1529, - "end": 1530, + "start": 1514, + "end": 1515, "loc": { "start": { "line": 67, @@ -15849,8 +22013,8 @@ "binop": null, "updateContext": null }, - "start": 1530, - "end": 1531, + "start": 1515, + "end": 1516, "loc": { "start": { "line": 67, @@ -15875,8 +22039,8 @@ "binop": null, "updateContext": null }, - "start": 1531, - "end": 1532, + "start": 1516, + "end": 1517, "loc": { "start": { "line": 67, @@ -15903,8 +22067,8 @@ "updateContext": null }, "value": "let", - "start": 1539, - "end": 1542, + "start": 1524, + "end": 1527, "loc": { "start": { "line": 68, @@ -15929,8 +22093,8 @@ "binop": null }, "value": "methodArgs", - "start": 1543, - "end": 1553, + "start": 1528, + "end": 1538, "loc": { "start": { "line": 68, @@ -15956,8 +22120,8 @@ "updateContext": null }, "value": "=", - "start": 1554, - "end": 1555, + "start": 1539, + "end": 1540, "loc": { "start": { "line": 68, @@ -15982,8 +22146,8 @@ "binop": null }, "value": "evArgs", - "start": 1556, - "end": 1562, + "start": 1541, + "end": 1547, "loc": { "start": { "line": 68, @@ -16008,8 +22172,8 @@ "binop": null, "updateContext": null }, - "start": 1562, - "end": 1563, + "start": 1547, + "end": 1548, "loc": { "start": { "line": 68, @@ -16034,8 +22198,8 @@ "binop": null }, "value": "slice", - "start": 1563, - "end": 1568, + "start": 1548, + "end": 1553, "loc": { "start": { "line": 68, @@ -16059,8 +22223,8 @@ "postfix": false, "binop": null }, - "start": 1568, - "end": 1569, + "start": 1553, + "end": 1554, "loc": { "start": { "line": 68, @@ -16086,8 +22250,8 @@ "updateContext": null }, "value": 1, - "start": 1569, - "end": 1570, + "start": 1554, + "end": 1555, "loc": { "start": { "line": 68, @@ -16111,8 +22275,8 @@ "postfix": false, "binop": null }, - "start": 1570, - "end": 1571, + "start": 1555, + "end": 1556, "loc": { "start": { "line": 68, @@ -16137,8 +22301,8 @@ "binop": null, "updateContext": null }, - "start": 1571, - "end": 1572, + "start": 1556, + "end": 1557, "loc": { "start": { "line": 68, @@ -16153,8 +22317,8 @@ { "type": "CommentLine", "value": " Check if the name of the method/property is defined on the object", - "start": 1580, - "end": 1648, + "start": 1565, + "end": 1633, "loc": { "start": { "line": 70, @@ -16181,8 +22345,8 @@ "updateContext": null }, "value": "if", - "start": 1655, - "end": 1657, + "start": 1640, + "end": 1642, "loc": { "start": { "line": 71, @@ -16206,8 +22370,8 @@ "postfix": false, "binop": null }, - "start": 1658, - "end": 1659, + "start": 1643, + "end": 1644, "loc": { "start": { "line": 71, @@ -16234,8 +22398,8 @@ "updateContext": null }, "value": "typeof", - "start": 1659, - "end": 1665, + "start": 1644, + "end": 1650, "loc": { "start": { "line": 71, @@ -16260,8 +22424,8 @@ "binop": null }, "value": "op", - "start": 1666, - "end": 1668, + "start": 1651, + "end": 1653, "loc": { "start": { "line": 71, @@ -16286,8 +22450,8 @@ "binop": null, "updateContext": null }, - "start": 1668, - "end": 1669, + "start": 1653, + "end": 1654, "loc": { "start": { "line": 71, @@ -16312,8 +22476,8 @@ "binop": null }, "value": "name", - "start": 1669, - "end": 1673, + "start": 1654, + "end": 1658, "loc": { "start": { "line": 71, @@ -16338,8 +22502,8 @@ "binop": null, "updateContext": null }, - "start": 1673, - "end": 1674, + "start": 1658, + "end": 1659, "loc": { "start": { "line": 71, @@ -16365,8 +22529,8 @@ "updateContext": null }, "value": "!==", - "start": 1675, - "end": 1678, + "start": 1660, + "end": 1663, "loc": { "start": { "line": 71, @@ -16392,8 +22556,8 @@ "updateContext": null }, "value": "undefined", - "start": 1679, - "end": 1690, + "start": 1664, + "end": 1675, "loc": { "start": { "line": 71, @@ -16417,8 +22581,8 @@ "postfix": false, "binop": null }, - "start": 1690, - "end": 1691, + "start": 1675, + "end": 1676, "loc": { "start": { "line": 71, @@ -16442,8 +22606,8 @@ "postfix": false, "binop": null }, - "start": 1692, - "end": 1693, + "start": 1677, + "end": 1678, "loc": { "start": { "line": 71, @@ -16458,8 +22622,8 @@ { "type": "CommentLine", "value": " Execute as function", - "start": 1702, - "end": 1724, + "start": 1687, + "end": 1709, "loc": { "start": { "line": 72, @@ -16486,8 +22650,8 @@ "updateContext": null }, "value": "if", - "start": 1733, - "end": 1735, + "start": 1718, + "end": 1720, "loc": { "start": { "line": 73, @@ -16511,8 +22675,8 @@ "postfix": false, "binop": null }, - "start": 1736, - "end": 1737, + "start": 1721, + "end": 1722, "loc": { "start": { "line": 73, @@ -16539,8 +22703,8 @@ "updateContext": null }, "value": "typeof", - "start": 1737, - "end": 1743, + "start": 1722, + "end": 1728, "loc": { "start": { "line": 73, @@ -16565,8 +22729,8 @@ "binop": null }, "value": "op", - "start": 1744, - "end": 1746, + "start": 1729, + "end": 1731, "loc": { "start": { "line": 73, @@ -16591,8 +22755,8 @@ "binop": null, "updateContext": null }, - "start": 1746, - "end": 1747, + "start": 1731, + "end": 1732, "loc": { "start": { "line": 73, @@ -16617,8 +22781,8 @@ "binop": null }, "value": "name", - "start": 1747, - "end": 1751, + "start": 1732, + "end": 1736, "loc": { "start": { "line": 73, @@ -16643,8 +22807,8 @@ "binop": null, "updateContext": null }, - "start": 1751, - "end": 1752, + "start": 1736, + "end": 1737, "loc": { "start": { "line": 73, @@ -16670,8 +22834,8 @@ "updateContext": null }, "value": "===", - "start": 1753, - "end": 1756, + "start": 1738, + "end": 1741, "loc": { "start": { "line": 73, @@ -16697,8 +22861,8 @@ "updateContext": null }, "value": "function", - "start": 1757, - "end": 1767, + "start": 1742, + "end": 1752, "loc": { "start": { "line": 73, @@ -16722,8 +22886,8 @@ "postfix": false, "binop": null }, - "start": 1767, - "end": 1768, + "start": 1752, + "end": 1753, "loc": { "start": { "line": 73, @@ -16747,8 +22911,8 @@ "postfix": false, "binop": null }, - "start": 1769, - "end": 1770, + "start": 1754, + "end": 1755, "loc": { "start": { "line": 73, @@ -16775,8 +22939,8 @@ "updateContext": null }, "value": "return", - "start": 1781, - "end": 1787, + "start": 1766, + "end": 1772, "loc": { "start": { "line": 74, @@ -16801,8 +22965,8 @@ "binop": null }, "value": "op", - "start": 1788, - "end": 1790, + "start": 1773, + "end": 1775, "loc": { "start": { "line": 74, @@ -16827,8 +22991,8 @@ "binop": null, "updateContext": null }, - "start": 1790, - "end": 1791, + "start": 1775, + "end": 1776, "loc": { "start": { "line": 74, @@ -16853,8 +23017,8 @@ "binop": null }, "value": "name", - "start": 1791, - "end": 1795, + "start": 1776, + "end": 1780, "loc": { "start": { "line": 74, @@ -16879,8 +23043,8 @@ "binop": null, "updateContext": null }, - "start": 1795, - "end": 1796, + "start": 1780, + "end": 1781, "loc": { "start": { "line": 74, @@ -16904,8 +23068,8 @@ "postfix": false, "binop": null }, - "start": 1796, - "end": 1797, + "start": 1781, + "end": 1782, "loc": { "start": { "line": 74, @@ -16930,8 +23094,8 @@ "binop": null, "updateContext": null }, - "start": 1797, - "end": 1800, + "start": 1782, + "end": 1785, "loc": { "start": { "line": 74, @@ -16956,8 +23120,8 @@ "binop": null }, "value": "methodArgs", - "start": 1800, - "end": 1810, + "start": 1785, + "end": 1795, "loc": { "start": { "line": 74, @@ -16981,8 +23145,8 @@ "postfix": false, "binop": null }, - "start": 1810, - "end": 1811, + "start": 1795, + "end": 1796, "loc": { "start": { "line": 74, @@ -17007,8 +23171,8 @@ "binop": null, "updateContext": null }, - "start": 1811, - "end": 1812, + "start": 1796, + "end": 1797, "loc": { "start": { "line": 74, @@ -17023,8 +23187,8 @@ { "type": "CommentLine", "value": " Return as property", - "start": 1824, - "end": 1845, + "start": 1809, + "end": 1830, "loc": { "start": { "line": 76, @@ -17048,8 +23212,8 @@ "postfix": false, "binop": null }, - "start": 1854, - "end": 1855, + "start": 1839, + "end": 1840, "loc": { "start": { "line": 77, @@ -17076,8 +23240,8 @@ "updateContext": null }, "value": "else", - "start": 1856, - "end": 1860, + "start": 1841, + "end": 1845, "loc": { "start": { "line": 77, @@ -17101,8 +23265,8 @@ "postfix": false, "binop": null }, - "start": 1861, - "end": 1862, + "start": 1846, + "end": 1847, "loc": { "start": { "line": 77, @@ -17129,8 +23293,8 @@ "updateContext": null }, "value": "return", - "start": 1873, - "end": 1879, + "start": 1858, + "end": 1864, "loc": { "start": { "line": 78, @@ -17155,8 +23319,8 @@ "binop": null }, "value": "op", - "start": 1880, - "end": 1882, + "start": 1865, + "end": 1867, "loc": { "start": { "line": 78, @@ -17181,8 +23345,8 @@ "binop": null, "updateContext": null }, - "start": 1882, - "end": 1883, + "start": 1867, + "end": 1868, "loc": { "start": { "line": 78, @@ -17207,8 +23371,8 @@ "binop": null }, "value": "name", - "start": 1883, - "end": 1887, + "start": 1868, + "end": 1872, "loc": { "start": { "line": 78, @@ -17233,8 +23397,8 @@ "binop": null, "updateContext": null }, - "start": 1887, - "end": 1888, + "start": 1872, + "end": 1873, "loc": { "start": { "line": 78, @@ -17259,8 +23423,8 @@ "binop": null, "updateContext": null }, - "start": 1888, - "end": 1889, + "start": 1873, + "end": 1874, "loc": { "start": { "line": 78, @@ -17284,8 +23448,8 @@ "postfix": false, "binop": null }, - "start": 1898, - "end": 1899, + "start": 1883, + "end": 1884, "loc": { "start": { "line": 79, @@ -17300,8 +23464,8 @@ { "type": "CommentLine", "value": " If the name of the method is not defined on the object...", - "start": 1909, - "end": 1969, + "start": 1894, + "end": 1954, "loc": { "start": { "line": 81, @@ -17325,8 +23489,8 @@ "postfix": false, "binop": null }, - "start": 1976, - "end": 1977, + "start": 1961, + "end": 1962, "loc": { "start": { "line": 82, @@ -17353,8 +23517,8 @@ "updateContext": null }, "value": "else", - "start": 1978, - "end": 1982, + "start": 1963, + "end": 1967, "loc": { "start": { "line": 82, @@ -17378,8 +23542,8 @@ "postfix": false, "binop": null }, - "start": 1983, - "end": 1984, + "start": 1968, + "end": 1969, "loc": { "start": { "line": 82, @@ -17394,8 +23558,8 @@ { "type": "CommentLine", "value": " Check if its a Map property.", - "start": 1993, - "end": 2024, + "start": 1978, + "end": 2009, "loc": { "start": { "line": 83, @@ -17422,8 +23586,8 @@ "updateContext": null }, "value": "if", - "start": 2033, - "end": 2035, + "start": 2018, + "end": 2020, "loc": { "start": { "line": 84, @@ -17447,8 +23611,8 @@ "postfix": false, "binop": null }, - "start": 2036, - "end": 2037, + "start": 2021, + "end": 2022, "loc": { "start": { "line": 84, @@ -17473,8 +23637,8 @@ "binop": null }, "value": "op", - "start": 2037, - "end": 2039, + "start": 2022, + "end": 2024, "loc": { "start": { "line": 84, @@ -17501,8 +23665,8 @@ "updateContext": null }, "value": "instanceof", - "start": 2040, - "end": 2050, + "start": 2025, + "end": 2035, "loc": { "start": { "line": 84, @@ -17527,8 +23691,8 @@ "binop": null }, "value": "Map", - "start": 2051, - "end": 2054, + "start": 2036, + "end": 2039, "loc": { "start": { "line": 84, @@ -17552,8 +23716,8 @@ "postfix": false, "binop": null }, - "start": 2054, - "end": 2055, + "start": 2039, + "end": 2040, "loc": { "start": { "line": 84, @@ -17577,8 +23741,8 @@ "postfix": false, "binop": null }, - "start": 2056, - "end": 2057, + "start": 2041, + "end": 2042, "loc": { "start": { "line": 84, @@ -17605,8 +23769,8 @@ "updateContext": null }, "value": "if", - "start": 2068, - "end": 2070, + "start": 2053, + "end": 2055, "loc": { "start": { "line": 85, @@ -17630,8 +23794,8 @@ "postfix": false, "binop": null }, - "start": 2071, - "end": 2072, + "start": 2056, + "end": 2057, "loc": { "start": { "line": 85, @@ -17658,8 +23822,8 @@ "updateContext": null }, "value": "typeof", - "start": 2072, - "end": 2078, + "start": 2057, + "end": 2063, "loc": { "start": { "line": 85, @@ -17684,8 +23848,8 @@ "binop": null }, "value": "op", - "start": 2079, - "end": 2081, + "start": 2064, + "end": 2066, "loc": { "start": { "line": 85, @@ -17710,8 +23874,8 @@ "binop": null, "updateContext": null }, - "start": 2081, - "end": 2082, + "start": 2066, + "end": 2067, "loc": { "start": { "line": 85, @@ -17736,8 +23900,8 @@ "binop": null }, "value": "get", - "start": 2082, - "end": 2085, + "start": 2067, + "end": 2070, "loc": { "start": { "line": 85, @@ -17761,8 +23925,8 @@ "postfix": false, "binop": null }, - "start": 2085, - "end": 2086, + "start": 2070, + "end": 2071, "loc": { "start": { "line": 85, @@ -17787,8 +23951,8 @@ "binop": null }, "value": "name", - "start": 2086, - "end": 2090, + "start": 2071, + "end": 2075, "loc": { "start": { "line": 85, @@ -17812,8 +23976,8 @@ "postfix": false, "binop": null }, - "start": 2090, - "end": 2091, + "start": 2075, + "end": 2076, "loc": { "start": { "line": 85, @@ -17839,8 +24003,8 @@ "updateContext": null }, "value": "===", - "start": 2092, - "end": 2095, + "start": 2077, + "end": 2080, "loc": { "start": { "line": 85, @@ -17866,8 +24030,8 @@ "updateContext": null }, "value": "function", - "start": 2096, - "end": 2106, + "start": 2081, + "end": 2091, "loc": { "start": { "line": 85, @@ -17891,8 +24055,8 @@ "postfix": false, "binop": null }, - "start": 2106, - "end": 2107, + "start": 2091, + "end": 2092, "loc": { "start": { "line": 85, @@ -17916,8 +24080,8 @@ "postfix": false, "binop": null }, - "start": 2108, - "end": 2109, + "start": 2093, + "end": 2094, "loc": { "start": { "line": 85, @@ -17944,8 +24108,8 @@ "updateContext": null }, "value": "return", - "start": 2122, - "end": 2128, + "start": 2107, + "end": 2113, "loc": { "start": { "line": 86, @@ -17970,8 +24134,8 @@ "binop": null }, "value": "op", - "start": 2129, - "end": 2131, + "start": 2114, + "end": 2116, "loc": { "start": { "line": 86, @@ -17996,8 +24160,8 @@ "binop": null, "updateContext": null }, - "start": 2131, - "end": 2132, + "start": 2116, + "end": 2117, "loc": { "start": { "line": 86, @@ -18022,8 +24186,8 @@ "binop": null }, "value": "get", - "start": 2132, - "end": 2135, + "start": 2117, + "end": 2120, "loc": { "start": { "line": 86, @@ -18047,8 +24211,8 @@ "postfix": false, "binop": null }, - "start": 2135, - "end": 2136, + "start": 2120, + "end": 2121, "loc": { "start": { "line": 86, @@ -18073,8 +24237,8 @@ "binop": null }, "value": "name", - "start": 2136, - "end": 2140, + "start": 2121, + "end": 2125, "loc": { "start": { "line": 86, @@ -18098,8 +24262,8 @@ "postfix": false, "binop": null }, - "start": 2140, - "end": 2141, + "start": 2125, + "end": 2126, "loc": { "start": { "line": 86, @@ -18122,9 +24286,9 @@ "prefix": false, "postfix": false, "binop": null - }, - "start": 2141, - "end": 2142, + }, + "start": 2126, + "end": 2127, "loc": { "start": { "line": 86, @@ -18149,8 +24313,8 @@ "binop": null, "updateContext": null }, - "start": 2142, - "end": 2145, + "start": 2127, + "end": 2130, "loc": { "start": { "line": 86, @@ -18175,8 +24339,8 @@ "binop": null }, "value": "methodArgs", - "start": 2145, - "end": 2155, + "start": 2130, + "end": 2140, "loc": { "start": { "line": 86, @@ -18200,8 +24364,8 @@ "postfix": false, "binop": null }, - "start": 2155, - "end": 2156, + "start": 2140, + "end": 2141, "loc": { "start": { "line": 86, @@ -18226,8 +24390,8 @@ "binop": null, "updateContext": null }, - "start": 2156, - "end": 2157, + "start": 2141, + "end": 2142, "loc": { "start": { "line": 86, @@ -18251,8 +24415,8 @@ "postfix": false, "binop": null }, - "start": 2168, - "end": 2169, + "start": 2153, + "end": 2154, "loc": { "start": { "line": 87, @@ -18279,8 +24443,8 @@ "updateContext": null }, "value": "else", - "start": 2170, - "end": 2174, + "start": 2155, + "end": 2159, "loc": { "start": { "line": 87, @@ -18304,8 +24468,8 @@ "postfix": false, "binop": null }, - "start": 2175, - "end": 2176, + "start": 2160, + "end": 2161, "loc": { "start": { "line": 87, @@ -18332,8 +24496,8 @@ "updateContext": null }, "value": "return", - "start": 2189, - "end": 2195, + "start": 2174, + "end": 2180, "loc": { "start": { "line": 88, @@ -18358,8 +24522,8 @@ "binop": null }, "value": "op", - "start": 2196, - "end": 2198, + "start": 2181, + "end": 2183, "loc": { "start": { "line": 88, @@ -18384,8 +24548,8 @@ "binop": null, "updateContext": null }, - "start": 2198, - "end": 2199, + "start": 2183, + "end": 2184, "loc": { "start": { "line": 88, @@ -18410,8 +24574,8 @@ "binop": null }, "value": "get", - "start": 2199, - "end": 2202, + "start": 2184, + "end": 2187, "loc": { "start": { "line": 88, @@ -18435,8 +24599,8 @@ "postfix": false, "binop": null }, - "start": 2202, - "end": 2203, + "start": 2187, + "end": 2188, "loc": { "start": { "line": 88, @@ -18461,8 +24625,8 @@ "binop": null }, "value": "name", - "start": 2203, - "end": 2207, + "start": 2188, + "end": 2192, "loc": { "start": { "line": 88, @@ -18486,8 +24650,8 @@ "postfix": false, "binop": null }, - "start": 2207, - "end": 2208, + "start": 2192, + "end": 2193, "loc": { "start": { "line": 88, @@ -18512,8 +24676,8 @@ "binop": null, "updateContext": null }, - "start": 2208, - "end": 2209, + "start": 2193, + "end": 2194, "loc": { "start": { "line": 88, @@ -18537,8 +24701,8 @@ "postfix": false, "binop": null }, - "start": 2220, - "end": 2221, + "start": 2205, + "end": 2206, "loc": { "start": { "line": 89, @@ -18562,8 +24726,8 @@ "postfix": false, "binop": null }, - "start": 2230, - "end": 2231, + "start": 2215, + "end": 2216, "loc": { "start": { "line": 90, @@ -18578,8 +24742,8 @@ { "type": "CommentLine", "value": " Try to call the 'missing' method", - "start": 2241, - "end": 2276, + "start": 2226, + "end": 2261, "loc": { "start": { "line": 92, @@ -18606,8 +24770,8 @@ "updateContext": null }, "value": "if", - "start": 2285, - "end": 2287, + "start": 2270, + "end": 2272, "loc": { "start": { "line": 93, @@ -18631,8 +24795,8 @@ "postfix": false, "binop": null }, - "start": 2288, - "end": 2289, + "start": 2273, + "end": 2274, "loc": { "start": { "line": 93, @@ -18659,8 +24823,8 @@ "updateContext": null }, "value": "typeof", - "start": 2289, - "end": 2295, + "start": 2274, + "end": 2280, "loc": { "start": { "line": 93, @@ -18685,8 +24849,8 @@ "binop": null }, "value": "op", - "start": 2296, - "end": 2298, + "start": 2281, + "end": 2283, "loc": { "start": { "line": 93, @@ -18711,8 +24875,8 @@ "binop": null, "updateContext": null }, - "start": 2298, - "end": 2299, + "start": 2283, + "end": 2284, "loc": { "start": { "line": 93, @@ -18738,8 +24902,8 @@ "updateContext": null }, "value": "__missing__", - "start": 2299, - "end": 2312, + "start": 2284, + "end": 2297, "loc": { "start": { "line": 93, @@ -18764,8 +24928,8 @@ "binop": null, "updateContext": null }, - "start": 2312, - "end": 2313, + "start": 2297, + "end": 2298, "loc": { "start": { "line": 93, @@ -18791,8 +24955,8 @@ "updateContext": null }, "value": "===", - "start": 2314, - "end": 2317, + "start": 2299, + "end": 2302, "loc": { "start": { "line": 93, @@ -18818,8 +24982,8 @@ "updateContext": null }, "value": "function", - "start": 2318, - "end": 2328, + "start": 2303, + "end": 2313, "loc": { "start": { "line": 93, @@ -18843,8 +25007,8 @@ "postfix": false, "binop": null }, - "start": 2328, - "end": 2329, + "start": 2313, + "end": 2314, "loc": { "start": { "line": 93, @@ -18868,8 +25032,8 @@ "postfix": false, "binop": null }, - "start": 2330, - "end": 2331, + "start": 2315, + "end": 2316, "loc": { "start": { "line": 93, @@ -18896,8 +25060,8 @@ "updateContext": null }, "value": "return", - "start": 2342, - "end": 2348, + "start": 2327, + "end": 2333, "loc": { "start": { "line": 94, @@ -18922,8 +25086,8 @@ "binop": null }, "value": "op", - "start": 2349, - "end": 2351, + "start": 2334, + "end": 2336, "loc": { "start": { "line": 94, @@ -18948,8 +25112,8 @@ "binop": null, "updateContext": null }, - "start": 2351, - "end": 2352, + "start": 2336, + "end": 2337, "loc": { "start": { "line": 94, @@ -18975,8 +25139,8 @@ "updateContext": null }, "value": "__missing__", - "start": 2352, - "end": 2365, + "start": 2337, + "end": 2350, "loc": { "start": { "line": 94, @@ -19001,8 +25165,8 @@ "binop": null, "updateContext": null }, - "start": 2365, - "end": 2366, + "start": 2350, + "end": 2351, "loc": { "start": { "line": 94, @@ -19026,8 +25190,8 @@ "postfix": false, "binop": null }, - "start": 2366, - "end": 2367, + "start": 2351, + "end": 2352, "loc": { "start": { "line": 94, @@ -19052,8 +25216,8 @@ "binop": null, "updateContext": null }, - "start": 2367, - "end": 2370, + "start": 2352, + "end": 2355, "loc": { "start": { "line": 94, @@ -19078,8 +25242,8 @@ "binop": null }, "value": "methodArgs", - "start": 2370, - "end": 2380, + "start": 2355, + "end": 2365, "loc": { "start": { "line": 94, @@ -19103,8 +25267,8 @@ "postfix": false, "binop": null }, - "start": 2380, - "end": 2381, + "start": 2365, + "end": 2366, "loc": { "start": { "line": 94, @@ -19129,8 +25293,8 @@ "binop": null, "updateContext": null }, - "start": 2381, - "end": 2382, + "start": 2366, + "end": 2367, "loc": { "start": { "line": 94, @@ -19145,8 +25309,8 @@ { "type": "CommentLine", "value": " As a last resort, throw an Exception", - "start": 2394, - "end": 2433, + "start": 2379, + "end": 2418, "loc": { "start": { "line": 96, @@ -19170,8 +25334,8 @@ "postfix": false, "binop": null }, - "start": 2442, - "end": 2443, + "start": 2427, + "end": 2428, "loc": { "start": { "line": 97, @@ -19198,8 +25362,8 @@ "updateContext": null }, "value": "else", - "start": 2444, - "end": 2448, + "start": 2429, + "end": 2433, "loc": { "start": { "line": 97, @@ -19223,8 +25387,8 @@ "postfix": false, "binop": null }, - "start": 2449, - "end": 2450, + "start": 2434, + "end": 2435, "loc": { "start": { "line": 97, @@ -19251,8 +25415,8 @@ "updateContext": null }, "value": "throw", - "start": 2461, - "end": 2466, + "start": 2446, + "end": 2451, "loc": { "start": { "line": 98, @@ -19279,8 +25443,8 @@ "updateContext": null }, "value": "new", - "start": 2467, - "end": 2470, + "start": 2452, + "end": 2455, "loc": { "start": { "line": 98, @@ -19305,8 +25469,8 @@ "binop": null }, "value": "SyntaxError", - "start": 2471, - "end": 2482, + "start": 2456, + "end": 2467, "loc": { "start": { "line": 98, @@ -19330,8 +25494,8 @@ "postfix": false, "binop": null }, - "start": 2482, - "end": 2483, + "start": 2467, + "end": 2468, "loc": { "start": { "line": 98, @@ -19355,8 +25519,8 @@ "postfix": false, "binop": null }, - "start": 2483, - "end": 2484, + "start": 2468, + "end": 2469, "loc": { "start": { "line": 98, @@ -19382,8 +25546,8 @@ "updateContext": null }, "value": "The method '", - "start": 2484, - "end": 2496, + "start": 2469, + "end": 2481, "loc": { "start": { "line": 98, @@ -19407,8 +25571,8 @@ "postfix": false, "binop": null }, - "start": 2496, - "end": 2498, + "start": 2481, + "end": 2483, "loc": { "start": { "line": 98, @@ -19433,8 +25597,8 @@ "binop": null }, "value": "name", - "start": 2498, - "end": 2502, + "start": 2483, + "end": 2487, "loc": { "start": { "line": 98, @@ -19458,8 +25622,8 @@ "postfix": false, "binop": null }, - "start": 2502, - "end": 2503, + "start": 2487, + "end": 2488, "loc": { "start": { "line": 98, @@ -19485,8 +25649,8 @@ "updateContext": null }, "value": "' was not found on the\n object '", - "start": 2503, - "end": 2544, + "start": 2488, + "end": 2529, "loc": { "start": { "line": 98, @@ -19510,8 +25674,8 @@ "postfix": false, "binop": null }, - "start": 2544, - "end": 2546, + "start": 2529, + "end": 2531, "loc": { "start": { "line": 99, @@ -19536,8 +25700,8 @@ "binop": null }, "value": "utils", - "start": 2546, - "end": 2551, + "start": 2531, + "end": 2536, "loc": { "start": { "line": 99, @@ -19562,8 +25726,8 @@ "binop": null, "updateContext": null }, - "start": 2551, - "end": 2552, + "start": 2536, + "end": 2537, "loc": { "start": { "line": 99, @@ -19588,8 +25752,8 @@ "binop": null }, "value": "ins", - "start": 2552, - "end": 2555, + "start": 2537, + "end": 2540, "loc": { "start": { "line": 99, @@ -19613,8 +25777,8 @@ "postfix": false, "binop": null }, - "start": 2555, - "end": 2556, + "start": 2540, + "end": 2541, "loc": { "start": { "line": 99, @@ -19639,8 +25803,8 @@ "binop": null }, "value": "op", - "start": 2556, - "end": 2558, + "start": 2541, + "end": 2543, "loc": { "start": { "line": 99, @@ -19664,8 +25828,8 @@ "postfix": false, "binop": null }, - "start": 2558, - "end": 2559, + "start": 2543, + "end": 2544, "loc": { "start": { "line": 99, @@ -19689,8 +25853,8 @@ "postfix": false, "binop": null }, - "start": 2559, - "end": 2560, + "start": 2544, + "end": 2545, "loc": { "start": { "line": 99, @@ -19716,8 +25880,8 @@ "updateContext": null }, "value": "'", - "start": 2560, - "end": 2561, + "start": 2545, + "end": 2546, "loc": { "start": { "line": 99, @@ -19741,8 +25905,8 @@ "postfix": false, "binop": null }, - "start": 2561, - "end": 2562, + "start": 2546, + "end": 2547, "loc": { "start": { "line": 99, @@ -19766,8 +25930,8 @@ "postfix": false, "binop": null }, - "start": 2562, - "end": 2563, + "start": 2547, + "end": 2548, "loc": { "start": { "line": 99, @@ -19792,8 +25956,8 @@ "binop": null, "updateContext": null }, - "start": 2563, - "end": 2564, + "start": 2548, + "end": 2549, "loc": { "start": { "line": 99, @@ -19817,8 +25981,8 @@ "postfix": false, "binop": null }, - "start": 2573, - "end": 2574, + "start": 2558, + "end": 2559, "loc": { "start": { "line": 100, @@ -19842,8 +26006,8 @@ "postfix": false, "binop": null }, - "start": 2581, - "end": 2582, + "start": 2566, + "end": 2567, "loc": { "start": { "line": 101, @@ -19867,8 +26031,8 @@ "postfix": false, "binop": null }, - "start": 2587, - "end": 2588, + "start": 2572, + "end": 2573, "loc": { "start": { "line": 102, @@ -19895,8 +26059,8 @@ "updateContext": null }, "value": "throw", - "start": 2594, - "end": 2599, + "start": 2579, + "end": 2584, "loc": { "start": { "line": 104, @@ -19923,8 +26087,8 @@ "updateContext": null }, "value": "new", - "start": 2600, - "end": 2603, + "start": 2585, + "end": 2588, "loc": { "start": { "line": 104, @@ -19949,8 +26113,8 @@ "binop": null }, "value": "TypeError", - "start": 2604, - "end": 2613, + "start": 2589, + "end": 2598, "loc": { "start": { "line": 104, @@ -19974,8 +26138,8 @@ "postfix": false, "binop": null }, - "start": 2613, - "end": 2614, + "start": 2598, + "end": 2599, "loc": { "start": { "line": 104, @@ -19999,8 +26163,8 @@ "postfix": false, "binop": null }, - "start": 2614, - "end": 2615, + "start": 2599, + "end": 2600, "loc": { "start": { "line": 104, @@ -20026,8 +26190,8 @@ "updateContext": null }, "value": "Could not resolve the apply expression", - "start": 2615, - "end": 2653, + "start": 2600, + "end": 2638, "loc": { "start": { "line": 104, @@ -20051,8 +26215,8 @@ "postfix": false, "binop": null }, - "start": 2653, - "end": 2654, + "start": 2638, + "end": 2639, "loc": { "start": { "line": 104, @@ -20076,8 +26240,8 @@ "postfix": false, "binop": null }, - "start": 2654, - "end": 2655, + "start": 2639, + "end": 2640, "loc": { "start": { "line": 104, @@ -20102,8 +26266,8 @@ "binop": null, "updateContext": null }, - "start": 2655, - "end": 2656, + "start": 2640, + "end": 2641, "loc": { "start": { "line": 104, @@ -20127,8 +26291,8 @@ "postfix": false, "binop": null }, - "start": 2659, - "end": 2660, + "start": 2644, + "end": 2645, "loc": { "start": { "line": 105, @@ -20152,8 +26316,8 @@ "postfix": false, "binop": null }, - "start": 2661, - "end": 2662, + "start": 2646, + "end": 2647, "loc": { "start": { "line": 106, @@ -20180,8 +26344,8 @@ "updateContext": null }, "value": "class", - "start": 2664, - "end": 2669, + "start": 2649, + "end": 2654, "loc": { "start": { "line": 108, @@ -20206,8 +26370,8 @@ "binop": null }, "value": "Regex", - "start": 2670, - "end": 2675, + "start": 2655, + "end": 2660, "loc": { "start": { "line": 108, @@ -20231,8 +26395,8 @@ "postfix": false, "binop": null }, - "start": 2676, - "end": 2677, + "start": 2661, + "end": 2662, "loc": { "start": { "line": 108, @@ -20257,8 +26421,8 @@ "binop": null }, "value": "constructor", - "start": 2680, - "end": 2691, + "start": 2665, + "end": 2676, "loc": { "start": { "line": 109, @@ -20282,8 +26446,8 @@ "postfix": false, "binop": null }, - "start": 2691, - "end": 2692, + "start": 2676, + "end": 2677, "loc": { "start": { "line": 109, @@ -20308,8 +26472,8 @@ "binop": null }, "value": "token", - "start": 2692, - "end": 2697, + "start": 2677, + "end": 2682, "loc": { "start": { "line": 109, @@ -20333,8 +26497,8 @@ "postfix": false, "binop": null }, - "start": 2697, - "end": 2698, + "start": 2682, + "end": 2683, "loc": { "start": { "line": 109, @@ -20358,8 +26522,8 @@ "postfix": false, "binop": null }, - "start": 2699, - "end": 2700, + "start": 2684, + "end": 2685, "loc": { "start": { "line": 109, @@ -20386,8 +26550,8 @@ "updateContext": null }, "value": "this", - "start": 2705, - "end": 2709, + "start": 2690, + "end": 2694, "loc": { "start": { "line": 110, @@ -20412,8 +26576,8 @@ "binop": null, "updateContext": null }, - "start": 2709, - "end": 2710, + "start": 2694, + "end": 2695, "loc": { "start": { "line": 110, @@ -20438,8 +26602,8 @@ "binop": null }, "value": "type", - "start": 2710, - "end": 2714, + "start": 2695, + "end": 2699, "loc": { "start": { "line": 110, @@ -20465,8 +26629,8 @@ "updateContext": null }, "value": "=", - "start": 2715, - "end": 2716, + "start": 2700, + "end": 2701, "loc": { "start": { "line": 110, @@ -20492,8 +26656,8 @@ "updateContext": null }, "value": "regex", - "start": 2717, - "end": 2724, + "start": 2702, + "end": 2709, "loc": { "start": { "line": 110, @@ -20518,8 +26682,8 @@ "binop": null, "updateContext": null }, - "start": 2724, - "end": 2725, + "start": 2709, + "end": 2710, "loc": { "start": { "line": 110, @@ -20546,8 +26710,8 @@ "updateContext": null }, "value": "this", - "start": 2731, - "end": 2735, + "start": 2716, + "end": 2720, "loc": { "start": { "line": 112, @@ -20572,8 +26736,8 @@ "binop": null, "updateContext": null }, - "start": 2735, - "end": 2736, + "start": 2720, + "end": 2721, "loc": { "start": { "line": 112, @@ -20598,8 +26762,8 @@ "binop": null }, "value": "body", - "start": 2736, - "end": 2740, + "start": 2721, + "end": 2725, "loc": { "start": { "line": 112, @@ -20625,8 +26789,8 @@ "updateContext": null }, "value": "=", - "start": 2741, - "end": 2742, + "start": 2726, + "end": 2727, "loc": { "start": { "line": 112, @@ -20651,8 +26815,8 @@ "binop": null }, "value": "token", - "start": 2743, - "end": 2748, + "start": 2728, + "end": 2733, "loc": { "start": { "line": 112, @@ -20677,8 +26841,8 @@ "binop": null, "updateContext": null }, - "start": 2748, - "end": 2749, + "start": 2733, + "end": 2734, "loc": { "start": { "line": 112, @@ -20703,8 +26867,8 @@ "binop": null }, "value": "body", - "start": 2749, - "end": 2753, + "start": 2734, + "end": 2738, "loc": { "start": { "line": 112, @@ -20729,8 +26893,8 @@ "binop": null, "updateContext": null }, - "start": 2753, - "end": 2754, + "start": 2738, + "end": 2739, "loc": { "start": { "line": 112, @@ -20757,8 +26921,8 @@ "updateContext": null }, "value": "this", - "start": 2759, - "end": 2763, + "start": 2744, + "end": 2748, "loc": { "start": { "line": 113, @@ -20783,8 +26947,8 @@ "binop": null, "updateContext": null }, - "start": 2763, - "end": 2764, + "start": 2748, + "end": 2749, "loc": { "start": { "line": 113, @@ -20809,8 +26973,8 @@ "binop": null }, "value": "flags", - "start": 2764, - "end": 2769, + "start": 2749, + "end": 2754, "loc": { "start": { "line": 113, @@ -20836,8 +27000,8 @@ "updateContext": null }, "value": "=", - "start": 2770, - "end": 2771, + "start": 2755, + "end": 2756, "loc": { "start": { "line": 113, @@ -20862,8 +27026,8 @@ "binop": null }, "value": "token", - "start": 2772, - "end": 2777, + "start": 2757, + "end": 2762, "loc": { "start": { "line": 113, @@ -20888,8 +27052,8 @@ "binop": null, "updateContext": null }, - "start": 2777, - "end": 2778, + "start": 2762, + "end": 2763, "loc": { "start": { "line": 113, @@ -20914,8 +27078,8 @@ "binop": null }, "value": "flags", - "start": 2778, - "end": 2783, + "start": 2763, + "end": 2768, "loc": { "start": { "line": 113, @@ -20940,8 +27104,8 @@ "binop": null, "updateContext": null }, - "start": 2783, - "end": 2784, + "start": 2768, + "end": 2769, "loc": { "start": { "line": 113, @@ -20965,8 +27129,8 @@ "postfix": false, "binop": null }, - "start": 2787, - "end": 2788, + "start": 2772, + "end": 2773, "loc": { "start": { "line": 114, @@ -20991,8 +27155,8 @@ "binop": null }, "value": "evaluate", - "start": 2792, - "end": 2800, + "start": 2777, + "end": 2785, "loc": { "start": { "line": 116, @@ -21016,8 +27180,8 @@ "postfix": false, "binop": null }, - "start": 2800, - "end": 2801, + "start": 2785, + "end": 2786, "loc": { "start": { "line": 116, @@ -21041,8 +27205,8 @@ "postfix": false, "binop": null }, - "start": 2801, - "end": 2802, + "start": 2786, + "end": 2787, "loc": { "start": { "line": 116, @@ -21066,8 +27230,8 @@ "postfix": false, "binop": null }, - "start": 2803, - "end": 2804, + "start": 2788, + "end": 2789, "loc": { "start": { "line": 116, @@ -21094,8 +27258,8 @@ "updateContext": null }, "value": "return", - "start": 2809, - "end": 2815, + "start": 2794, + "end": 2800, "loc": { "start": { "line": 117, @@ -21122,8 +27286,8 @@ "updateContext": null }, "value": "new", - "start": 2816, - "end": 2819, + "start": 2801, + "end": 2804, "loc": { "start": { "line": 117, @@ -21148,8 +27312,8 @@ "binop": null }, "value": "xRegExp", - "start": 2820, - "end": 2827, + "start": 2805, + "end": 2812, "loc": { "start": { "line": 117, @@ -21173,8 +27337,8 @@ "postfix": false, "binop": null }, - "start": 2827, - "end": 2828, + "start": 2812, + "end": 2813, "loc": { "start": { "line": 117, @@ -21201,8 +27365,8 @@ "updateContext": null }, "value": "this", - "start": 2828, - "end": 2832, + "start": 2813, + "end": 2817, "loc": { "start": { "line": 117, @@ -21227,8 +27391,8 @@ "binop": null, "updateContext": null }, - "start": 2832, - "end": 2833, + "start": 2817, + "end": 2818, "loc": { "start": { "line": 117, @@ -21253,8 +27417,8 @@ "binop": null }, "value": "body", - "start": 2833, - "end": 2837, + "start": 2818, + "end": 2822, "loc": { "start": { "line": 117, @@ -21279,8 +27443,8 @@ "binop": null, "updateContext": null }, - "start": 2837, - "end": 2838, + "start": 2822, + "end": 2823, "loc": { "start": { "line": 117, @@ -21307,8 +27471,8 @@ "updateContext": null }, "value": "this", - "start": 2839, - "end": 2843, + "start": 2824, + "end": 2828, "loc": { "start": { "line": 117, @@ -21333,8 +27497,8 @@ "binop": null, "updateContext": null }, - "start": 2843, - "end": 2844, + "start": 2828, + "end": 2829, "loc": { "start": { "line": 117, @@ -21359,8 +27523,8 @@ "binop": null }, "value": "flags", - "start": 2844, - "end": 2849, + "start": 2829, + "end": 2834, "loc": { "start": { "line": 117, @@ -21384,8 +27548,8 @@ "postfix": false, "binop": null }, - "start": 2849, - "end": 2850, + "start": 2834, + "end": 2835, "loc": { "start": { "line": 117, @@ -21410,8 +27574,8 @@ "binop": null, "updateContext": null }, - "start": 2850, - "end": 2851, + "start": 2835, + "end": 2836, "loc": { "start": { "line": 117, @@ -21435,8 +27599,8 @@ "postfix": false, "binop": null }, - "start": 2854, - "end": 2855, + "start": 2839, + "end": 2840, "loc": { "start": { "line": 118, @@ -21460,8 +27624,8 @@ "postfix": false, "binop": null }, - "start": 2856, - "end": 2857, + "start": 2841, + "end": 2842, "loc": { "start": { "line": 119, @@ -21475,33 +27639,8 @@ }, { "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "module", - "start": 2859, - "end": 2865, - "loc": { - "start": { - "line": 121, - "column": 0 - }, - "end": { - "line": 121, - "column": 6 - } - } - }, - { - "type": { - "label": ".", + "label": "export", + "keyword": "export", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, @@ -21512,69 +27651,17 @@ "binop": null, "updateContext": null }, - "start": 2865, - "end": 2866, - "loc": { - "start": { - "line": 121, - "column": 6 - }, - "end": { - "line": 121, - "column": 7 - } - } - }, - { - "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "exports", - "start": 2866, - "end": 2873, - "loc": { - "start": { - "line": 121, - "column": 7 - }, - "end": { - "line": 121, - "column": 14 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 2874, - "end": 2875, + "value": "export", + "start": 2844, + "end": 2850, "loc": { "start": { "line": 121, - "column": 15 + "column": 0 }, "end": { "line": 121, - "column": 16 + "column": 6 } } }, @@ -21590,16 +27677,16 @@ "postfix": false, "binop": null }, - "start": 2876, - "end": 2877, + "start": 2851, + "end": 2852, "loc": { "start": { "line": 121, - "column": 17 + "column": 7 }, "end": { "line": 121, - "column": 18 + "column": 8 } } }, @@ -21616,16 +27703,16 @@ "binop": null }, "value": "Value", - "start": 2880, - "end": 2885, + "start": 2853, + "end": 2858, "loc": { "start": { - "line": 122, - "column": 2 + "line": 121, + "column": 9 }, "end": { - "line": 122, - "column": 7 + "line": 121, + "column": 14 } } }, @@ -21642,16 +27729,16 @@ "binop": null, "updateContext": null }, - "start": 2885, - "end": 2886, + "start": 2858, + "end": 2859, "loc": { "start": { - "line": 122, - "column": 7 + "line": 121, + "column": 14 }, "end": { - "line": 122, - "column": 8 + "line": 121, + "column": 15 } } }, @@ -21668,15 +27755,15 @@ "binop": null }, "value": "Word", - "start": 2889, - "end": 2893, + "start": 2862, + "end": 2866, "loc": { "start": { - "line": 123, + "line": 122, "column": 2 }, "end": { - "line": 123, + "line": 122, "column": 6 } } @@ -21694,15 +27781,15 @@ "binop": null, "updateContext": null }, - "start": 2893, - "end": 2894, + "start": 2866, + "end": 2867, "loc": { "start": { - "line": 123, + "line": 122, "column": 6 }, "end": { - "line": 123, + "line": 122, "column": 7 } } @@ -21720,15 +27807,15 @@ "binop": null }, "value": "Apply", - "start": 2897, - "end": 2902, + "start": 2870, + "end": 2875, "loc": { "start": { - "line": 124, + "line": 123, "column": 2 }, "end": { - "line": 124, + "line": 123, "column": 7 } } @@ -21746,15 +27833,15 @@ "binop": null, "updateContext": null }, - "start": 2902, - "end": 2903, + "start": 2875, + "end": 2876, "loc": { "start": { - "line": 124, + "line": 123, "column": 7 }, "end": { - "line": 124, + "line": 123, "column": 8 } } @@ -21772,15 +27859,15 @@ "binop": null }, "value": "Regex", - "start": 2906, - "end": 2911, + "start": 2879, + "end": 2884, "loc": { "start": { - "line": 125, + "line": 124, "column": 2 }, "end": { - "line": 125, + "line": 124, "column": 7 } } @@ -21797,16 +27884,16 @@ "postfix": false, "binop": null }, - "start": 2912, - "end": 2913, + "start": 2885, + "end": 2886, "loc": { "start": { - "line": 126, - "column": 0 + "line": 124, + "column": 8 }, "end": { - "line": 126, - "column": 1 + "line": 124, + "column": 9 } } }, @@ -21823,16 +27910,16 @@ "binop": null, "updateContext": null }, - "start": 2913, - "end": 2914, + "start": 2886, + "end": 2887, "loc": { "start": { - "line": 126, - "column": 1 + "line": 124, + "column": 9 }, "end": { - "line": 126, - "column": 2 + "line": 124, + "column": 10 } } }, @@ -21849,15 +27936,15 @@ "binop": null, "updateContext": null }, - "start": 2915, - "end": 2915, + "start": 2888, + "end": 2888, "loc": { "start": { - "line": 127, + "line": 125, "column": 0 }, "end": { - "line": 127, + "line": 125, "column": 0 } } diff --git a/docs/ast/source/interp/eggvm.js.json b/docs/ast/source/interp/eggvm.js.json index cea32d4..2c0e28c 100644 --- a/docs/ast/source/interp/eggvm.js.json +++ b/docs/ast/source/interp/eggvm.js.json @@ -1,37 +1,37 @@ { "type": "File", "start": 0, - "end": 1157, + "end": 1119, "loc": { "start": { "line": 1, "column": 0 }, "end": { - "line": 55, + "line": 53, "column": 0 } }, "program": { "type": "Program", "start": 0, - "end": 1157, + "end": 1119, "loc": { "start": { "line": 1, "column": 0 }, "end": { - "line": 55, + "line": 53, "column": 0 } }, "sourceType": "module", "body": [ { - "type": "ExpressionStatement", + "type": "ImportDeclaration", "start": 56, - "end": 88, + "end": 86, "loc": { "start": { "line": 2, @@ -39,63 +39,29 @@ }, "end": { "line": 2, - "column": 32 + "column": 30 } }, - "expression": { - "type": "CallExpression", - "start": 56, - "end": 87, + "specifiers": [], + "source": { + "type": "StringLiteral", + "start": 63, + "end": 85, "loc": { "start": { "line": 2, - "column": 0 + "column": 7 }, "end": { "line": 2, - "column": 31 + "column": 29 } }, - "callee": { - "type": "Identifier", - "start": 56, - "end": 63, - "loc": { - "start": { - "line": 2, - "column": 0 - }, - "end": { - "line": 2, - "column": 7 - }, - "identifierName": "require" - }, - "name": "require", - "leadingComments": null + "extra": { + "rawValue": "./monkey-patching.js", + "raw": "\"./monkey-patching.js\"" }, - "arguments": [ - { - "type": "StringLiteral", - "start": 64, - "end": 86, - "loc": { - "start": { - "line": 2, - "column": 8 - }, - "end": { - "line": 2, - "column": 30 - } - }, - "extra": { - "rawValue": "./monkey-patching.js", - "raw": "\"./monkey-patching.js\"" - }, - "value": "./monkey-patching.js" - } - ], + "value": "./monkey-patching.js", "leadingComments": null }, "leadingComments": [ @@ -118,9 +84,9 @@ ] }, { - "type": "ExpressionStatement", - "start": 89, - "end": 113, + "type": "ImportDeclaration", + "start": 87, + "end": 109, "loc": { "start": { "line": 3, @@ -128,68 +94,35 @@ }, "end": { "line": 3, - "column": 24 + "column": 22 } }, - "expression": { - "type": "CallExpression", - "start": 89, - "end": 112, + "specifiers": [], + "source": { + "type": "StringLiteral", + "start": 94, + "end": 108, "loc": { "start": { "line": 3, - "column": 0 + "column": 7 }, "end": { "line": 3, - "column": 23 + "column": 21 } }, - "callee": { - "type": "Identifier", - "start": 89, - "end": 96, - "loc": { - "start": { - "line": 3, - "column": 0 - }, - "end": { - "line": 3, - "column": 7 - }, - "identifierName": "require" - }, - "name": "require" + "extra": { + "rawValue": "./require.js", + "raw": "\"./require.js\"" }, - "arguments": [ - { - "type": "StringLiteral", - "start": 97, - "end": 111, - "loc": { - "start": { - "line": 3, - "column": 8 - }, - "end": { - "line": 3, - "column": 22 - } - }, - "extra": { - "rawValue": "./require.js", - "raw": "\"./require.js\"" - }, - "value": "./require.js" - } - ] + "value": "./require.js" } }, { - "type": "ExpressionStatement", - "start": 114, - "end": 137, + "type": "ImportDeclaration", + "start": 110, + "end": 131, "loc": { "start": { "line": 4, @@ -197,68 +130,35 @@ }, "end": { "line": 4, - "column": 23 + "column": 21 } }, - "expression": { - "type": "CallExpression", - "start": 114, - "end": 136, + "specifiers": [], + "source": { + "type": "StringLiteral", + "start": 117, + "end": 130, "loc": { "start": { "line": 4, - "column": 0 + "column": 7 }, "end": { "line": 4, - "column": 22 + "column": 20 } }, - "callee": { - "type": "Identifier", - "start": 114, - "end": 121, - "loc": { - "start": { - "line": 4, - "column": 0 - }, - "end": { - "line": 4, - "column": 7 - }, - "identifierName": "require" - }, - "name": "require" + "extra": { + "rawValue": "./arithm.js", + "raw": "\"./arithm.js\"" }, - "arguments": [ - { - "type": "StringLiteral", - "start": 122, - "end": 135, - "loc": { - "start": { - "line": 4, - "column": 8 - }, - "end": { - "line": 4, - "column": 21 - } - }, - "extra": { - "rawValue": "./arithm.js", - "raw": "\"./arithm.js\"" - }, - "value": "./arithm.js" - } - ] + "value": "./arithm.js" } }, { - "type": "VariableDeclaration", - "start": 139, - "end": 164, + "type": "ImportDeclaration", + "start": 133, + "end": 153, "loc": { "start": { "line": 6, @@ -266,103 +166,68 @@ }, "end": { "line": 6, - "column": 25 + "column": 20 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 145, - "end": 163, + "type": "ImportDefaultSpecifier", + "start": 140, + "end": 142, "loc": { "start": { "line": 6, - "column": 6 + "column": 7 }, "end": { "line": 6, - "column": 24 + "column": 9 } }, - "id": { + "local": { "type": "Identifier", - "start": 145, - "end": 147, + "start": 140, + "end": 142, "loc": { "start": { "line": 6, - "column": 6 + "column": 7 }, "end": { "line": 6, - "column": 8 + "column": 9 }, "identifierName": "fs" }, "name": "fs" - }, - "init": { - "type": "CallExpression", - "start": 150, - "end": 163, - "loc": { - "start": { - "line": 6, - "column": 11 - }, - "end": { - "line": 6, - "column": 24 - } - }, - "callee": { - "type": "Identifier", - "start": 150, - "end": 157, - "loc": { - "start": { - "line": 6, - "column": 11 - }, - "end": { - "line": 6, - "column": 18 - }, - "identifierName": "require" - }, - "name": "require" - }, - "arguments": [ - { - "type": "StringLiteral", - "start": 158, - "end": 162, - "loc": { - "start": { - "line": 6, - "column": 19 - }, - "end": { - "line": 6, - "column": 23 - } - }, - "extra": { - "rawValue": "fs", - "raw": "\"fs\"" - }, - "value": "fs" - } - ] } } ], - "kind": "const" + "source": { + "type": "StringLiteral", + "start": 148, + "end": 152, + "loc": { + "start": { + "line": 6, + "column": 15 + }, + "end": { + "line": 6, + "column": 19 + } + }, + "extra": { + "rawValue": "fs", + "raw": "\"fs\"" + }, + "value": "fs" + } }, { - "type": "VariableDeclaration", - "start": 166, - "end": 215, + "type": "ImportDeclaration", + "start": 155, + "end": 199, "loc": { "start": { "line": 8, @@ -370,158 +235,85 @@ }, "end": { "line": 8, - "column": 49 + "column": 44 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 172, - "end": 214, + "type": "ImportSpecifier", + "start": 164, + "end": 170, "loc": { "start": { "line": 8, - "column": 6 + "column": 9 }, "end": { "line": 8, - "column": 48 + "column": 15 } }, - "id": { - "type": "ObjectPattern", - "start": 172, - "end": 182, + "imported": { + "type": "Identifier", + "start": 164, + "end": 170, "loc": { "start": { "line": 8, - "column": 6 + "column": 9 }, "end": { "line": 8, - "column": 16 - } + "column": 15 + }, + "identifierName": "Parser" }, - "properties": [ - { - "type": "ObjectProperty", - "start": 174, - "end": 180, - "loc": { - "start": { - "line": 8, - "column": 8 - }, - "end": { - "line": 8, - "column": 14 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 174, - "end": 180, - "loc": { - "start": { - "line": 8, - "column": 8 - }, - "end": { - "line": 8, - "column": 14 - }, - "identifierName": "Parser" - }, - "name": "Parser" - }, - "value": { - "type": "Identifier", - "start": 174, - "end": 180, - "loc": { - "start": { - "line": 8, - "column": 8 - }, - "end": { - "line": 8, - "column": 14 - }, - "identifierName": "Parser" - }, - "name": "Parser" - }, - "extra": { - "shorthand": true - } - } - ] + "name": "Parser" }, - "init": { - "type": "CallExpression", - "start": 185, - "end": 214, + "local": { + "type": "Identifier", + "start": 164, + "end": 170, "loc": { "start": { "line": 8, - "column": 19 + "column": 9 }, "end": { "line": 8, - "column": 48 - } - }, - "callee": { - "type": "Identifier", - "start": 185, - "end": 192, - "loc": { - "start": { - "line": 8, - "column": 19 - }, - "end": { - "line": 8, - "column": 26 - }, - "identifierName": "require" + "column": 15 }, - "name": "require" + "identifierName": "Parser" }, - "arguments": [ - { - "type": "StringLiteral", - "start": 193, - "end": 213, - "loc": { - "start": { - "line": 8, - "column": 27 - }, - "end": { - "line": 8, - "column": 47 - } - }, - "extra": { - "rawValue": "../parser/parse.js", - "raw": "\"../parser/parse.js\"" - }, - "value": "../parser/parse.js" - } - ] + "name": "Parser" } } ], - "kind": "const" + "source": { + "type": "StringLiteral", + "start": 178, + "end": 198, + "loc": { + "start": { + "line": 8, + "column": 23 + }, + "end": { + "line": 8, + "column": 43 + } + }, + "extra": { + "rawValue": "../parser/parse.js", + "raw": "\"../parser/parse.js\"" + }, + "value": "../parser/parse.js" + } }, { - "type": "VariableDeclaration", - "start": 216, - "end": 263, + "type": "ImportDeclaration", + "start": 200, + "end": 242, "loc": { "start": { "line": 9, @@ -529,158 +321,85 @@ }, "end": { "line": 9, - "column": 47 + "column": 42 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 222, - "end": 262, + "type": "ImportSpecifier", + "start": 209, + "end": 215, "loc": { "start": { "line": 9, - "column": 6 + "column": 9 }, "end": { "line": 9, - "column": 46 + "column": 15 } }, - "id": { - "type": "ObjectPattern", - "start": 222, - "end": 232, + "imported": { + "type": "Identifier", + "start": 209, + "end": 215, "loc": { "start": { "line": 9, - "column": 6 + "column": 9 }, "end": { "line": 9, - "column": 16 - } + "column": 15 + }, + "identifierName": "TopEnv" }, - "properties": [ - { - "type": "ObjectProperty", - "start": 224, - "end": 230, - "loc": { - "start": { - "line": 9, - "column": 8 - }, - "end": { - "line": 9, - "column": 14 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 224, - "end": 230, - "loc": { - "start": { - "line": 9, - "column": 8 - }, - "end": { - "line": 9, - "column": 14 - }, - "identifierName": "TopEnv" - }, - "name": "TopEnv" - }, - "value": { - "type": "Identifier", - "start": 224, - "end": 230, - "loc": { - "start": { - "line": 9, - "column": 8 - }, - "end": { - "line": 9, - "column": 14 - }, - "identifierName": "TopEnv" - }, - "name": "TopEnv" - }, - "extra": { - "shorthand": true - } - } - ] + "name": "TopEnv" }, - "init": { - "type": "CallExpression", - "start": 235, - "end": 262, + "local": { + "type": "Identifier", + "start": 209, + "end": 215, "loc": { "start": { "line": 9, - "column": 19 + "column": 9 }, "end": { "line": 9, - "column": 46 - } - }, - "callee": { - "type": "Identifier", - "start": 235, - "end": 242, - "loc": { - "start": { - "line": 9, - "column": 19 - }, - "end": { - "line": 9, - "column": 26 - }, - "identifierName": "require" + "column": 15 }, - "name": "require" + "identifierName": "TopEnv" }, - "arguments": [ - { - "type": "StringLiteral", - "start": 243, - "end": 261, - "loc": { - "start": { - "line": 9, - "column": 27 - }, - "end": { - "line": 9, - "column": 45 - } - }, - "extra": { - "rawValue": "./environment.js", - "raw": "\"./environment.js\"" - }, - "value": "./environment.js" - } - ] + "name": "TopEnv" } } ], - "kind": "const" + "source": { + "type": "StringLiteral", + "start": 223, + "end": 241, + "loc": { + "start": { + "line": 9, + "column": 23 + }, + "end": { + "line": 9, + "column": 41 + } + }, + "extra": { + "rawValue": "./environment.js", + "raw": "\"./environment.js\"" + }, + "value": "./environment.js" + } }, { - "type": "VariableDeclaration", - "start": 264, - "end": 318, + "type": "ImportDeclaration", + "start": 243, + "end": 292, "loc": { "start": { "line": 10, @@ -688,158 +407,85 @@ }, "end": { "line": 10, - "column": 54 + "column": 49 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 270, - "end": 317, + "type": "ImportSpecifier", + "start": 252, + "end": 260, "loc": { "start": { "line": 10, - "column": 6 + "column": 9 }, "end": { "line": 10, - "column": 53 + "column": 17 } }, - "id": { - "type": "ObjectPattern", - "start": 270, - "end": 282, + "imported": { + "type": "Identifier", + "start": 252, + "end": 260, "loc": { "start": { "line": 10, - "column": 6 + "column": 9 }, "end": { "line": 10, - "column": 18 - } + "column": 17 + }, + "identifierName": "json2AST" }, - "properties": [ - { - "type": "ObjectProperty", - "start": 272, - "end": 280, - "loc": { - "start": { - "line": 10, - "column": 8 - }, - "end": { - "line": 10, - "column": 16 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 272, - "end": 280, - "loc": { - "start": { - "line": 10, - "column": 8 - }, - "end": { - "line": 10, - "column": 16 - }, - "identifierName": "json2AST" - }, - "name": "json2AST" - }, - "value": { - "type": "Identifier", - "start": 272, - "end": 280, - "loc": { - "start": { - "line": 10, - "column": 8 - }, - "end": { - "line": 10, - "column": 16 - }, - "identifierName": "json2AST" - }, - "name": "json2AST" - }, - "extra": { - "shorthand": true - } - } - ] + "name": "json2AST" }, - "init": { - "type": "CallExpression", - "start": 285, - "end": 317, + "local": { + "type": "Identifier", + "start": 252, + "end": 260, "loc": { "start": { "line": 10, - "column": 21 + "column": 9 }, "end": { "line": 10, - "column": 53 - } - }, - "callee": { - "type": "Identifier", - "start": 285, - "end": 292, - "loc": { - "start": { - "line": 10, - "column": 21 - }, - "end": { - "line": 10, - "column": 28 - }, - "identifierName": "require" + "column": 17 }, - "name": "require" + "identifierName": "json2AST" }, - "arguments": [ - { - "type": "StringLiteral", - "start": 293, - "end": 316, - "loc": { - "start": { - "line": 10, - "column": 29 - }, - "end": { - "line": 10, - "column": 52 - } - }, - "extra": { - "rawValue": "../parser/json2AST.js", - "raw": "\"../parser/json2AST.js\"" - }, - "value": "../parser/json2AST.js" - } - ] + "name": "json2AST" } } ], - "kind": "const" + "source": { + "type": "StringLiteral", + "start": 268, + "end": 291, + "loc": { + "start": { + "line": 10, + "column": 25 + }, + "end": { + "line": 10, + "column": 48 + } + }, + "extra": { + "rawValue": "../parser/json2AST.js", + "raw": "\"../parser/json2AST.js\"" + }, + "value": "../parser/json2AST.js" + } }, { - "type": "ClassDeclaration", - "start": 320, - "end": 1125, + "type": "Identifier", + "start": 294, + "end": 1099, "loc": { "start": { "line": 12, @@ -852,8 +498,8 @@ }, "id": { "type": "Identifier", - "start": 326, - "end": 331, + "start": 300, + "end": 305, "loc": { "start": { "line": 12, @@ -870,8 +516,8 @@ "superClass": null, "body": { "type": "ClassBody", - "start": 332, - "end": 1125, + "start": 306, + "end": 1099, "loc": { "start": { "line": 12, @@ -885,8 +531,8 @@ "body": [ { "type": "ClassMethod", - "start": 336, - "end": 431, + "start": 310, + "end": 405, "loc": { "start": { "line": 13, @@ -901,8 +547,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 343, - "end": 346, + "start": 317, + "end": 320, "loc": { "start": { "line": 13, @@ -924,8 +570,8 @@ "params": [ { "type": "Identifier", - "start": 347, - "end": 354, + "start": 321, + "end": 328, "loc": { "start": { "line": 13, @@ -942,8 +588,8 @@ ], "body": { "type": "BlockStatement", - "start": 356, - "end": 431, + "start": 330, + "end": 405, "loc": { "start": { "line": 13, @@ -957,8 +603,8 @@ "body": [ { "type": "VariableDeclaration", - "start": 362, - "end": 397, + "start": 336, + "end": 371, "loc": { "start": { "line": 14, @@ -972,8 +618,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 368, - "end": 396, + "start": 342, + "end": 370, "loc": { "start": { "line": 14, @@ -986,8 +632,8 @@ }, "id": { "type": "Identifier", - "start": 368, - "end": 372, + "start": 342, + "end": 346, "loc": { "start": { "line": 14, @@ -1003,8 +649,8 @@ }, "init": { "type": "CallExpression", - "start": 375, - "end": 396, + "start": 349, + "end": 370, "loc": { "start": { "line": 14, @@ -1017,8 +663,8 @@ }, "callee": { "type": "MemberExpression", - "start": 375, - "end": 387, + "start": 349, + "end": 361, "loc": { "start": { "line": 14, @@ -1031,8 +677,8 @@ }, "object": { "type": "Identifier", - "start": 375, - "end": 381, + "start": 349, + "end": 355, "loc": { "start": { "line": 14, @@ -1048,8 +694,8 @@ }, "property": { "type": "Identifier", - "start": 382, - "end": 387, + "start": 356, + "end": 361, "loc": { "start": { "line": 14, @@ -1068,8 +714,8 @@ "arguments": [ { "type": "Identifier", - "start": 388, - "end": 395, + "start": 362, + "end": 369, "loc": { "start": { "line": 14, @@ -1091,8 +737,8 @@ }, { "type": "ReturnStatement", - "start": 403, - "end": 427, + "start": 377, + "end": 401, "loc": { "start": { "line": 16, @@ -1105,8 +751,8 @@ }, "argument": { "type": "CallExpression", - "start": 410, - "end": 426, + "start": 384, + "end": 400, "loc": { "start": { "line": 16, @@ -1119,8 +765,8 @@ }, "callee": { "type": "MemberExpression", - "start": 410, - "end": 420, + "start": 384, + "end": 394, "loc": { "start": { "line": 16, @@ -1133,8 +779,8 @@ }, "object": { "type": "Identifier", - "start": 410, - "end": 415, + "start": 384, + "end": 389, "loc": { "start": { "line": 16, @@ -1150,8 +796,8 @@ }, "property": { "type": "Identifier", - "start": 416, - "end": 420, + "start": 390, + "end": 394, "loc": { "start": { "line": 16, @@ -1170,8 +816,8 @@ "arguments": [ { "type": "Identifier", - "start": 421, - "end": 425, + "start": 395, + "end": 399, "loc": { "start": { "line": 16, @@ -1194,8 +840,8 @@ }, { "type": "ClassMethod", - "start": 435, - "end": 548, + "start": 409, + "end": 522, "loc": { "start": { "line": 19, @@ -1210,8 +856,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 442, - "end": 453, + "start": 416, + "end": 427, "loc": { "start": { "line": 19, @@ -1233,8 +879,8 @@ "params": [ { "type": "Identifier", - "start": 454, - "end": 458, + "start": 428, + "end": 432, "loc": { "start": { "line": 19, @@ -1251,8 +897,8 @@ ], "body": { "type": "BlockStatement", - "start": 460, - "end": 548, + "start": 434, + "end": 522, "loc": { "start": { "line": 19, @@ -1266,8 +912,8 @@ "body": [ { "type": "VariableDeclaration", - "start": 466, - "end": 512, + "start": 440, + "end": 486, "loc": { "start": { "line": 20, @@ -1281,8 +927,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 472, - "end": 511, + "start": 446, + "end": 485, "loc": { "start": { "line": 20, @@ -1295,8 +941,8 @@ }, "id": { "type": "Identifier", - "start": 472, - "end": 479, + "start": 446, + "end": 453, "loc": { "start": { "line": 20, @@ -1312,8 +958,8 @@ }, "init": { "type": "CallExpression", - "start": 482, - "end": 511, + "start": 456, + "end": 485, "loc": { "start": { "line": 20, @@ -1326,8 +972,8 @@ }, "callee": { "type": "MemberExpression", - "start": 482, - "end": 497, + "start": 456, + "end": 471, "loc": { "start": { "line": 20, @@ -1340,8 +986,8 @@ }, "object": { "type": "Identifier", - "start": 482, - "end": 484, + "start": 456, + "end": 458, "loc": { "start": { "line": 20, @@ -1357,8 +1003,8 @@ }, "property": { "type": "Identifier", - "start": 485, - "end": 497, + "start": 459, + "end": 471, "loc": { "start": { "line": 20, @@ -1377,8 +1023,8 @@ "arguments": [ { "type": "Identifier", - "start": 498, - "end": 502, + "start": 472, + "end": 476, "loc": { "start": { "line": 20, @@ -1394,8 +1040,8 @@ }, { "type": "StringLiteral", - "start": 504, - "end": 510, + "start": 478, + "end": 484, "loc": { "start": { "line": 20, @@ -1420,8 +1066,8 @@ }, { "type": "ReturnStatement", - "start": 518, - "end": 544, + "start": 492, + "end": 518, "loc": { "start": { "line": 22, @@ -1434,8 +1080,8 @@ }, "argument": { "type": "CallExpression", - "start": 525, - "end": 543, + "start": 499, + "end": 517, "loc": { "start": { "line": 22, @@ -1448,8 +1094,8 @@ }, "callee": { "type": "MemberExpression", - "start": 525, - "end": 534, + "start": 499, + "end": 508, "loc": { "start": { "line": 22, @@ -1462,8 +1108,8 @@ }, "object": { "type": "Identifier", - "start": 525, - "end": 530, + "start": 499, + "end": 504, "loc": { "start": { "line": 22, @@ -1479,8 +1125,8 @@ }, "property": { "type": "Identifier", - "start": 531, - "end": 534, + "start": 505, + "end": 508, "loc": { "start": { "line": 22, @@ -1499,8 +1145,8 @@ "arguments": [ { "type": "Identifier", - "start": 535, - "end": 542, + "start": 509, + "end": 516, "loc": { "start": { "line": 22, @@ -1523,8 +1169,8 @@ }, { "type": "ClassMethod", - "start": 552, - "end": 724, + "start": 526, + "end": 698, "loc": { "start": { "line": 25, @@ -1539,8 +1185,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 559, - "end": 569, + "start": 533, + "end": 543, "loc": { "start": { "line": 25, @@ -1562,8 +1208,8 @@ "params": [ { "type": "Identifier", - "start": 570, - "end": 574, + "start": 544, + "end": 548, "loc": { "start": { "line": 25, @@ -1580,8 +1226,8 @@ ], "body": { "type": "BlockStatement", - "start": 576, - "end": 724, + "start": 550, + "end": 698, "loc": { "start": { "line": 25, @@ -1595,8 +1241,8 @@ "body": [ { "type": "VariableDeclaration", - "start": 582, - "end": 620, + "start": 556, + "end": 594, "loc": { "start": { "line": 26, @@ -1610,8 +1256,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 588, - "end": 619, + "start": 562, + "end": 593, "loc": { "start": { "line": 26, @@ -1624,8 +1270,8 @@ }, "id": { "type": "Identifier", - "start": 588, - "end": 595, + "start": 562, + "end": 569, "loc": { "start": { "line": 26, @@ -1641,8 +1287,8 @@ }, "init": { "type": "CallExpression", - "start": 598, - "end": 619, + "start": 572, + "end": 593, "loc": { "start": { "line": 26, @@ -1655,8 +1301,8 @@ }, "callee": { "type": "MemberExpression", - "start": 598, - "end": 613, + "start": 572, + "end": 587, "loc": { "start": { "line": 26, @@ -1669,8 +1315,8 @@ }, "object": { "type": "Identifier", - "start": 598, - "end": 600, + "start": 572, + "end": 574, "loc": { "start": { "line": 26, @@ -1686,8 +1332,8 @@ }, "property": { "type": "Identifier", - "start": 601, - "end": 613, + "start": 575, + "end": 587, "loc": { "start": { "line": 26, @@ -1706,8 +1352,8 @@ "arguments": [ { "type": "Identifier", - "start": 614, - "end": 618, + "start": 588, + "end": 592, "loc": { "start": { "line": 26, @@ -1729,8 +1375,8 @@ }, { "type": "VariableDeclaration", - "start": 625, - "end": 656, + "start": 599, + "end": 630, "loc": { "start": { "line": 27, @@ -1744,8 +1390,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 629, - "end": 655, + "start": 603, + "end": 629, "loc": { "start": { "line": 27, @@ -1758,8 +1404,8 @@ }, "id": { "type": "Identifier", - "start": 629, - "end": 633, + "start": 603, + "end": 607, "loc": { "start": { "line": 27, @@ -1775,8 +1421,8 @@ }, "init": { "type": "CallExpression", - "start": 636, - "end": 655, + "start": 610, + "end": 629, "loc": { "start": { "line": 27, @@ -1789,8 +1435,8 @@ }, "callee": { "type": "MemberExpression", - "start": 636, - "end": 646, + "start": 610, + "end": 620, "loc": { "start": { "line": 27, @@ -1803,8 +1449,8 @@ }, "object": { "type": "Identifier", - "start": 636, - "end": 640, + "start": 610, + "end": 614, "loc": { "start": { "line": 27, @@ -1820,8 +1466,8 @@ }, "property": { "type": "Identifier", - "start": 641, - "end": 646, + "start": 615, + "end": 620, "loc": { "start": { "line": 27, @@ -1840,8 +1486,8 @@ "arguments": [ { "type": "Identifier", - "start": 647, - "end": 654, + "start": 621, + "end": 628, "loc": { "start": { "line": 27, @@ -1863,8 +1509,8 @@ }, { "type": "VariableDeclaration", - "start": 662, - "end": 690, + "start": 636, + "end": 664, "loc": { "start": { "line": 29, @@ -1878,8 +1524,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 668, - "end": 689, + "start": 642, + "end": 663, "loc": { "start": { "line": 29, @@ -1892,8 +1538,8 @@ }, "id": { "type": "Identifier", - "start": 668, - "end": 672, + "start": 642, + "end": 646, "loc": { "start": { "line": 29, @@ -1909,8 +1555,8 @@ }, "init": { "type": "CallExpression", - "start": 675, - "end": 689, + "start": 649, + "end": 663, "loc": { "start": { "line": 29, @@ -1923,8 +1569,8 @@ }, "callee": { "type": "Identifier", - "start": 675, - "end": 683, + "start": 649, + "end": 657, "loc": { "start": { "line": 29, @@ -1941,8 +1587,8 @@ "arguments": [ { "type": "Identifier", - "start": 684, - "end": 688, + "start": 658, + "end": 662, "loc": { "start": { "line": 29, @@ -1964,8 +1610,8 @@ }, { "type": "ReturnStatement", - "start": 696, - "end": 720, + "start": 670, + "end": 694, "loc": { "start": { "line": 31, @@ -1978,8 +1624,8 @@ }, "argument": { "type": "CallExpression", - "start": 703, - "end": 719, + "start": 677, + "end": 693, "loc": { "start": { "line": 31, @@ -1992,8 +1638,8 @@ }, "callee": { "type": "MemberExpression", - "start": 703, - "end": 713, + "start": 677, + "end": 687, "loc": { "start": { "line": 31, @@ -2006,8 +1652,8 @@ }, "object": { "type": "Identifier", - "start": 703, - "end": 708, + "start": 677, + "end": 682, "loc": { "start": { "line": 31, @@ -2023,8 +1669,8 @@ }, "property": { "type": "Identifier", - "start": 709, - "end": 713, + "start": 683, + "end": 687, "loc": { "start": { "line": 31, @@ -2043,8 +1689,8 @@ "arguments": [ { "type": "Identifier", - "start": 714, - "end": 718, + "start": 688, + "end": 692, "loc": { "start": { "line": 31, @@ -2067,8 +1713,8 @@ }, { "type": "ClassMethod", - "start": 728, - "end": 958, + "start": 702, + "end": 932, "loc": { "start": { "line": 34, @@ -2083,8 +1729,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 735, - "end": 739, + "start": 709, + "end": 713, "loc": { "start": { "line": 34, @@ -2106,8 +1752,8 @@ "params": [ { "type": "Identifier", - "start": 740, - "end": 744, + "start": 714, + "end": 718, "loc": { "start": { "line": 34, @@ -2123,8 +1769,8 @@ }, { "type": "Identifier", - "start": 746, - "end": 749, + "start": 720, + "end": 723, "loc": { "start": { "line": 34, @@ -2141,8 +1787,8 @@ ], "body": { "type": "BlockStatement", - "start": 751, - "end": 958, + "start": 725, + "end": 932, "loc": { "start": { "line": 34, @@ -2156,8 +1802,8 @@ "body": [ { "type": "IfStatement", - "start": 818, - "end": 899, + "start": 792, + "end": 873, "loc": { "start": { "line": 36, @@ -2170,8 +1816,8 @@ }, "test": { "type": "LogicalExpression", - "start": 822, - "end": 855, + "start": 796, + "end": 829, "loc": { "start": { "line": 36, @@ -2184,8 +1830,8 @@ }, "left": { "type": "BinaryExpression", - "start": 822, - "end": 839, + "start": 796, + "end": 813, "loc": { "start": { "line": 36, @@ -2198,8 +1844,8 @@ }, "left": { "type": "Identifier", - "start": 822, - "end": 825, + "start": 796, + "end": 799, "loc": { "start": { "line": 36, @@ -2217,8 +1863,8 @@ "operator": "===", "right": { "type": "Identifier", - "start": 830, - "end": 839, + "start": 804, + "end": 813, "loc": { "start": { "line": 36, @@ -2237,8 +1883,8 @@ "operator": "||", "right": { "type": "BinaryExpression", - "start": 843, - "end": 855, + "start": 817, + "end": 829, "loc": { "start": { "line": 36, @@ -2251,8 +1897,8 @@ }, "left": { "type": "Identifier", - "start": 843, - "end": 846, + "start": 817, + "end": 820, "loc": { "start": { "line": 36, @@ -2269,8 +1915,8 @@ "operator": "===", "right": { "type": "NullLiteral", - "start": 851, - "end": 855, + "start": 825, + "end": 829, "loc": { "start": { "line": 36, @@ -2287,8 +1933,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 857, - "end": 899, + "start": 831, + "end": 873, "loc": { "start": { "line": 36, @@ -2302,8 +1948,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 865, - "end": 893, + "start": 839, + "end": 867, "loc": { "start": { "line": 37, @@ -2316,8 +1962,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 865, - "end": 892, + "start": 839, + "end": 866, "loc": { "start": { "line": 37, @@ -2331,8 +1977,8 @@ "operator": "=", "left": { "type": "Identifier", - "start": 865, - "end": 868, + "start": 839, + "end": 842, "loc": { "start": { "line": 37, @@ -2348,8 +1994,8 @@ }, "right": { "type": "CallExpression", - "start": 871, - "end": 892, + "start": 845, + "end": 866, "loc": { "start": { "line": 37, @@ -2362,8 +2008,8 @@ }, "callee": { "type": "MemberExpression", - "start": 871, - "end": 884, + "start": 845, + "end": 858, "loc": { "start": { "line": 37, @@ -2376,8 +2022,8 @@ }, "object": { "type": "Identifier", - "start": 871, - "end": 877, + "start": 845, + "end": 851, "loc": { "start": { "line": 37, @@ -2393,8 +2039,8 @@ }, "property": { "type": "Identifier", - "start": 878, - "end": 884, + "start": 852, + "end": 858, "loc": { "start": { "line": 37, @@ -2413,8 +2059,8 @@ "arguments": [ { "type": "Identifier", - "start": 885, - "end": 891, + "start": 859, + "end": 865, "loc": { "start": { "line": 37, @@ -2440,8 +2086,8 @@ { "type": "CommentLine", "value": " Create a new env if not already defined on parameters", - "start": 757, - "end": 813, + "start": 731, + "end": 787, "loc": { "start": { "line": 35, @@ -2457,8 +2103,8 @@ }, { "type": "ReturnStatement", - "start": 905, - "end": 954, + "start": 879, + "end": 928, "loc": { "start": { "line": 40, @@ -2471,8 +2117,8 @@ }, "argument": { "type": "ConditionalExpression", - "start": 912, - "end": 953, + "start": 886, + "end": 927, "loc": { "start": { "line": 40, @@ -2485,8 +2131,8 @@ }, "test": { "type": "BinaryExpression", - "start": 912, - "end": 925, + "start": 886, + "end": 899, "loc": { "start": { "line": 40, @@ -2499,8 +2145,8 @@ }, "left": { "type": "Identifier", - "start": 912, - "end": 916, + "start": 886, + "end": 890, "loc": { "start": { "line": 40, @@ -2517,8 +2163,8 @@ "operator": "!==", "right": { "type": "NullLiteral", - "start": 921, - "end": 925, + "start": 895, + "end": 899, "loc": { "start": { "line": 40, @@ -2533,8 +2179,8 @@ }, "consequent": { "type": "CallExpression", - "start": 928, - "end": 946, + "start": 902, + "end": 920, "loc": { "start": { "line": 40, @@ -2547,8 +2193,8 @@ }, "callee": { "type": "MemberExpression", - "start": 928, - "end": 941, + "start": 902, + "end": 915, "loc": { "start": { "line": 40, @@ -2561,8 +2207,8 @@ }, "object": { "type": "Identifier", - "start": 928, - "end": 932, + "start": 902, + "end": 906, "loc": { "start": { "line": 40, @@ -2578,8 +2224,8 @@ }, "property": { "type": "Identifier", - "start": 933, - "end": 941, + "start": 907, + "end": 915, "loc": { "start": { "line": 40, @@ -2598,8 +2244,8 @@ "arguments": [ { "type": "Identifier", - "start": 942, - "end": 945, + "start": 916, + "end": 919, "loc": { "start": { "line": 40, @@ -2617,8 +2263,8 @@ }, "alternate": { "type": "NullLiteral", - "start": 949, - "end": 953, + "start": 923, + "end": 927, "loc": { "start": { "line": 40, @@ -2638,8 +2284,8 @@ }, { "type": "ClassMethod", - "start": 962, - "end": 1123, + "start": 936, + "end": 1097, "loc": { "start": { "line": 43, @@ -2654,8 +2300,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 969, - "end": 983, + "start": 943, + "end": 957, "loc": { "start": { "line": 43, @@ -2677,8 +2323,8 @@ "params": [ { "type": "Identifier", - "start": 984, - "end": 988, + "start": 958, + "end": 962, "loc": { "start": { "line": 43, @@ -2695,8 +2341,8 @@ ], "body": { "type": "BlockStatement", - "start": 990, - "end": 1123, + "start": 964, + "end": 1097, "loc": { "start": { "line": 43, @@ -2710,8 +2356,8 @@ "body": [ { "type": "VariableDeclaration", - "start": 996, - "end": 1030, + "start": 970, + "end": 1004, "loc": { "start": { "line": 44, @@ -2725,8 +2371,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 1002, - "end": 1029, + "start": 976, + "end": 1003, "loc": { "start": { "line": 44, @@ -2739,8 +2385,8 @@ }, "id": { "type": "Identifier", - "start": 1002, - "end": 1005, + "start": 976, + "end": 979, "loc": { "start": { "line": 44, @@ -2756,8 +2402,8 @@ }, "init": { "type": "CallExpression", - "start": 1008, - "end": 1029, + "start": 982, + "end": 1003, "loc": { "start": { "line": 44, @@ -2770,8 +2416,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1008, - "end": 1021, + "start": 982, + "end": 995, "loc": { "start": { "line": 44, @@ -2784,8 +2430,8 @@ }, "object": { "type": "Identifier", - "start": 1008, - "end": 1014, + "start": 982, + "end": 988, "loc": { "start": { "line": 44, @@ -2801,8 +2447,8 @@ }, "property": { "type": "Identifier", - "start": 1015, - "end": 1021, + "start": 989, + "end": 995, "loc": { "start": { "line": 44, @@ -2821,8 +2467,8 @@ "arguments": [ { "type": "Identifier", - "start": 1022, - "end": 1028, + "start": 996, + "end": 1002, "loc": { "start": { "line": 44, @@ -2844,8 +2490,8 @@ }, { "type": "VariableDeclaration", - "start": 1035, - "end": 1075, + "start": 1009, + "end": 1049, "loc": { "start": { "line": 45, @@ -2859,8 +2505,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 1041, - "end": 1074, + "start": 1015, + "end": 1048, "loc": { "start": { "line": 45, @@ -2873,8 +2519,8 @@ }, "id": { "type": "Identifier", - "start": 1041, - "end": 1045, + "start": 1015, + "end": 1019, "loc": { "start": { "line": 45, @@ -2890,8 +2536,8 @@ }, "init": { "type": "CallExpression", - "start": 1048, - "end": 1074, + "start": 1022, + "end": 1048, "loc": { "start": { "line": 45, @@ -2904,8 +2550,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1048, - "end": 1068, + "start": 1022, + "end": 1042, "loc": { "start": { "line": 45, @@ -2918,8 +2564,8 @@ }, "object": { "type": "Identifier", - "start": 1048, - "end": 1054, + "start": 1022, + "end": 1028, "loc": { "start": { "line": 45, @@ -2935,8 +2581,8 @@ }, "property": { "type": "Identifier", - "start": 1055, - "end": 1068, + "start": 1029, + "end": 1042, "loc": { "start": { "line": 45, @@ -2955,8 +2601,8 @@ "arguments": [ { "type": "Identifier", - "start": 1069, - "end": 1073, + "start": 1043, + "end": 1047, "loc": { "start": { "line": 45, @@ -2978,8 +2624,8 @@ }, { "type": "ExpressionStatement", - "start": 1080, - "end": 1102, + "start": 1054, + "end": 1076, "loc": { "start": { "line": 46, @@ -2992,8 +2638,8 @@ }, "expression": { "type": "CallExpression", - "start": 1080, - "end": 1101, + "start": 1054, + "end": 1075, "loc": { "start": { "line": 46, @@ -3006,8 +2652,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1080, - "end": 1090, + "start": 1054, + "end": 1064, "loc": { "start": { "line": 46, @@ -3020,8 +2666,8 @@ }, "object": { "type": "Identifier", - "start": 1080, - "end": 1085, + "start": 1054, + "end": 1059, "loc": { "start": { "line": 46, @@ -3037,8 +2683,8 @@ }, "property": { "type": "Identifier", - "start": 1086, - "end": 1090, + "start": 1060, + "end": 1064, "loc": { "start": { "line": 46, @@ -3057,8 +2703,8 @@ "arguments": [ { "type": "Identifier", - "start": 1091, - "end": 1095, + "start": 1065, + "end": 1069, "loc": { "start": { "line": 46, @@ -3074,8 +2720,8 @@ }, { "type": "Identifier", - "start": 1097, - "end": 1100, + "start": 1071, + "end": 1074, "loc": { "start": { "line": 46, @@ -3094,8 +2740,8 @@ }, { "type": "ReturnStatement", - "start": 1108, - "end": 1119, + "start": 1082, + "end": 1093, "loc": { "start": { "line": 48, @@ -3108,8 +2754,8 @@ }, "argument": { "type": "Identifier", - "start": 1115, - "end": 1118, + "start": 1089, + "end": 1092, "loc": { "start": { "line": 48, @@ -3129,452 +2775,2455 @@ } } ] - } + }, + "name": "_", + "leadingComments": [], + "trailingComments": [] }, { - "type": "ExpressionStatement", - "start": 1127, - "end": 1156, + "type": "ExportNamedDeclaration", + "start": 1101, + "end": 1118, "loc": { "start": { "line": 52, "column": 0 }, "end": { - "line": 54, - "column": 2 + "line": 52, + "column": 17 } }, - "expression": { - "type": "AssignmentExpression", - "start": 1127, - "end": 1155, - "loc": { - "start": { - "line": 52, - "column": 0 - }, - "end": { - "line": 54, - "column": 1 - } - }, - "operator": "=", - "left": { - "type": "MemberExpression", - "start": 1127, - "end": 1141, + "declaration": null, + "specifiers": [ + { + "type": "ExportSpecifier", + "start": 1110, + "end": 1115, "loc": { "start": { "line": 52, - "column": 0 + "column": 9 }, "end": { "line": 52, "column": 14 } }, - "object": { + "local": { "type": "Identifier", - "start": 1127, - "end": 1133, + "start": 1110, + "end": 1115, "loc": { "start": { "line": 52, - "column": 0 + "column": 9 }, "end": { "line": 52, - "column": 6 + "column": 14 }, - "identifierName": "module" + "identifierName": "Eggvm" }, - "name": "module" + "name": "Eggvm" }, - "property": { + "exported": { "type": "Identifier", - "start": 1134, - "end": 1141, + "start": 1110, + "end": 1115, "loc": { "start": { "line": 52, - "column": 7 + "column": 9 }, "end": { "line": 52, "column": 14 }, - "identifierName": "exports" + "identifierName": "Eggvm" + }, + "name": "Eggvm" + } + } + ], + "source": null + }, + { + "type": "ExportNamedDeclaration", + "start": 1101, + "end": 1118, + "loc": { + "start": { + "line": 52, + "column": 0 + }, + "end": { + "line": 52, + "column": 17 + } + }, + "declaration": { + "type": "ClassDeclaration", + "start": 294, + "end": 1099, + "loc": { + "start": { + "line": 12, + "column": 0 + }, + "end": { + "line": 50, + "column": 1 + } + }, + "id": { + "type": "Identifier", + "start": 300, + "end": 305, + "loc": { + "start": { + "line": 12, + "column": 6 }, - "name": "exports" + "end": { + "line": 12, + "column": 11 + }, + "identifierName": "Eggvm" }, - "computed": false + "name": "Eggvm" }, - "right": { - "type": "ObjectExpression", - "start": 1144, - "end": 1155, + "superClass": null, + "body": { + "type": "ClassBody", + "start": 306, + "end": 1099, "loc": { "start": { - "line": 52, - "column": 17 + "line": 12, + "column": 12 }, "end": { - "line": 54, + "line": 50, "column": 1 } }, - "properties": [ + "body": [ { - "type": "ObjectProperty", - "start": 1148, - "end": 1153, + "type": "ClassMethod", + "start": 310, + "end": 405, "loc": { "start": { - "line": 53, + "line": 13, "column": 2 }, "end": { - "line": 53, - "column": 7 + "line": 17, + "column": 3 } }, - "method": false, - "shorthand": true, + "static": true, "computed": false, "key": { "type": "Identifier", - "start": 1148, - "end": 1153, + "start": 317, + "end": 320, "loc": { "start": { - "line": 53, - "column": 2 + "line": 13, + "column": 9 }, "end": { - "line": 53, - "column": 7 + "line": 13, + "column": 12 }, - "identifierName": "Eggvm" + "identifierName": "run" }, - "name": "Eggvm" + "name": "run" }, - "value": { - "type": "Identifier", - "start": 1148, - "end": 1153, + "kind": "method", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 321, + "end": 328, + "loc": { + "start": { + "line": 13, + "column": 13 + }, + "end": { + "line": 13, + "column": 20 + }, + "identifierName": "program" + }, + "name": "program" + } + ], + "body": { + "type": "BlockStatement", + "start": 330, + "end": 405, "loc": { "start": { - "line": 53, - "column": 2 + "line": 13, + "column": 22 }, "end": { - "line": 53, - "column": 7 - }, - "identifierName": "Eggvm" + "line": 17, + "column": 3 + } }, - "name": "Eggvm" - }, - "extra": { - "shorthand": true + "body": [ + { + "type": "VariableDeclaration", + "start": 336, + "end": 371, + "loc": { + "start": { + "line": 14, + "column": 4 + }, + "end": { + "line": 14, + "column": 39 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 342, + "end": 370, + "loc": { + "start": { + "line": 14, + "column": 10 + }, + "end": { + "line": 14, + "column": 38 + } + }, + "id": { + "type": "Identifier", + "start": 342, + "end": 346, + "loc": { + "start": { + "line": 14, + "column": 10 + }, + "end": { + "line": 14, + "column": 14 + }, + "identifierName": "tree" + }, + "name": "tree" + }, + "init": { + "type": "CallExpression", + "start": 349, + "end": 370, + "loc": { + "start": { + "line": 14, + "column": 17 + }, + "end": { + "line": 14, + "column": 38 + } + }, + "callee": { + "type": "MemberExpression", + "start": 349, + "end": 361, + "loc": { + "start": { + "line": 14, + "column": 17 + }, + "end": { + "line": 14, + "column": 29 + } + }, + "object": { + "type": "Identifier", + "start": 349, + "end": 355, + "loc": { + "start": { + "line": 14, + "column": 17 + }, + "end": { + "line": 14, + "column": 23 + }, + "identifierName": "Parser" + }, + "name": "Parser" + }, + "property": { + "type": "Identifier", + "start": 356, + "end": 361, + "loc": { + "start": { + "line": 14, + "column": 24 + }, + "end": { + "line": 14, + "column": 29 + }, + "identifierName": "parse" + }, + "name": "parse" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 362, + "end": 369, + "loc": { + "start": { + "line": 14, + "column": 30 + }, + "end": { + "line": 14, + "column": 37 + }, + "identifierName": "program" + }, + "name": "program" + } + ] + } + } + ], + "kind": "const" + }, + { + "type": "ReturnStatement", + "start": 377, + "end": 401, + "loc": { + "start": { + "line": 16, + "column": 4 + }, + "end": { + "line": 16, + "column": 28 + } + }, + "argument": { + "type": "CallExpression", + "start": 384, + "end": 400, + "loc": { + "start": { + "line": 16, + "column": 11 + }, + "end": { + "line": 16, + "column": 27 + } + }, + "callee": { + "type": "MemberExpression", + "start": 384, + "end": 394, + "loc": { + "start": { + "line": 16, + "column": 11 + }, + "end": { + "line": 16, + "column": 21 + } + }, + "object": { + "type": "Identifier", + "start": 384, + "end": 389, + "loc": { + "start": { + "line": 16, + "column": 11 + }, + "end": { + "line": 16, + "column": 16 + }, + "identifierName": "Eggvm" + }, + "name": "Eggvm" + }, + "property": { + "type": "Identifier", + "start": 390, + "end": 394, + "loc": { + "start": { + "line": 16, + "column": 17 + }, + "end": { + "line": 16, + "column": 21 + }, + "identifierName": "eval" + }, + "name": "eval" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 395, + "end": 399, + "loc": { + "start": { + "line": 16, + "column": 22 + }, + "end": { + "line": 16, + "column": 26 + }, + "identifierName": "tree" + }, + "name": "tree" + } + ] + } + } + ], + "directives": [] } - } - ] - } - } - } - ], - "directives": [] - }, - "comments": [ - { - "type": "CommentLine", - "value": " Add monkey-patching functions and extended functions", - "start": 0, - "end": 55, - "loc": { - "start": { - "line": 1, - "column": 0 - }, - "end": { - "line": 1, - "column": 55 - } - } - }, - { - "type": "CommentLine", - "value": " Create a new env if not already defined on parameters", - "start": 757, - "end": 813, - "loc": { - "start": { - "line": 35, - "column": 4 - }, - "end": { - "line": 35, - "column": 60 - } - } - } - ], - "tokens": [ - { - "type": "CommentLine", - "value": " Add monkey-patching functions and extended functions", - "start": 0, - "end": 55, - "loc": { - "start": { - "line": 1, - "column": 0 - }, - "end": { - "line": 1, - "column": 55 - } - } - }, - { - "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "require", - "start": 56, - "end": 63, - "loc": { - "start": { - "line": 2, - "column": 0 - }, - "end": { - "line": 2, - "column": 7 - } - } - }, - { - "type": { - "label": "(", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 63, - "end": 64, - "loc": { - "start": { - "line": 2, - "column": 7 - }, - "end": { - "line": 2, - "column": 8 - } - } - }, - { - "type": { - "label": "string", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "./monkey-patching.js", - "start": 64, - "end": 86, - "loc": { - "start": { - "line": 2, - "column": 8 - }, - "end": { - "line": 2, - "column": 30 - } - } - }, - { - "type": { - "label": ")", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 86, - "end": 87, - "loc": { - "start": { - "line": 2, - "column": 30 - }, - "end": { - "line": 2, - "column": 31 - } - } - }, - { - "type": { - "label": ";", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "start": 87, - "end": 88, - "loc": { - "start": { - "line": 2, - "column": 31 + }, + { + "type": "ClassMethod", + "start": 409, + "end": 522, + "loc": { + "start": { + "line": 19, + "column": 2 + }, + "end": { + "line": 23, + "column": 3 + } + }, + "static": true, + "computed": false, + "key": { + "type": "Identifier", + "start": 416, + "end": 427, + "loc": { + "start": { + "line": 19, + "column": 9 + }, + "end": { + "line": 19, + "column": 20 + }, + "identifierName": "runFromFile" + }, + "name": "runFromFile" + }, + "kind": "method", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 428, + "end": 432, + "loc": { + "start": { + "line": 19, + "column": 21 + }, + "end": { + "line": 19, + "column": 25 + }, + "identifierName": "file" + }, + "name": "file" + } + ], + "body": { + "type": "BlockStatement", + "start": 434, + "end": 522, + "loc": { + "start": { + "line": 19, + "column": 27 + }, + "end": { + "line": 23, + "column": 3 + } + }, + "body": [ + { + "type": "VariableDeclaration", + "start": 440, + "end": 486, + "loc": { + "start": { + "line": 20, + "column": 4 + }, + "end": { + "line": 20, + "column": 50 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 446, + "end": 485, + "loc": { + "start": { + "line": 20, + "column": 10 + }, + "end": { + "line": 20, + "column": 49 + } + }, + "id": { + "type": "Identifier", + "start": 446, + "end": 453, + "loc": { + "start": { + "line": 20, + "column": 10 + }, + "end": { + "line": 20, + "column": 17 + }, + "identifierName": "program" + }, + "name": "program" + }, + "init": { + "type": "CallExpression", + "start": 456, + "end": 485, + "loc": { + "start": { + "line": 20, + "column": 20 + }, + "end": { + "line": 20, + "column": 49 + } + }, + "callee": { + "type": "MemberExpression", + "start": 456, + "end": 471, + "loc": { + "start": { + "line": 20, + "column": 20 + }, + "end": { + "line": 20, + "column": 35 + } + }, + "object": { + "type": "Identifier", + "start": 456, + "end": 458, + "loc": { + "start": { + "line": 20, + "column": 20 + }, + "end": { + "line": 20, + "column": 22 + }, + "identifierName": "fs" + }, + "name": "fs" + }, + "property": { + "type": "Identifier", + "start": 459, + "end": 471, + "loc": { + "start": { + "line": 20, + "column": 23 + }, + "end": { + "line": 20, + "column": 35 + }, + "identifierName": "readFileSync" + }, + "name": "readFileSync" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 472, + "end": 476, + "loc": { + "start": { + "line": 20, + "column": 36 + }, + "end": { + "line": 20, + "column": 40 + }, + "identifierName": "file" + }, + "name": "file" + }, + { + "type": "StringLiteral", + "start": 478, + "end": 484, + "loc": { + "start": { + "line": 20, + "column": 42 + }, + "end": { + "line": 20, + "column": 48 + } + }, + "extra": { + "rawValue": "utf8", + "raw": "\"utf8\"" + }, + "value": "utf8" + } + ] + } + } + ], + "kind": "const" + }, + { + "type": "ReturnStatement", + "start": 492, + "end": 518, + "loc": { + "start": { + "line": 22, + "column": 4 + }, + "end": { + "line": 22, + "column": 30 + } + }, + "argument": { + "type": "CallExpression", + "start": 499, + "end": 517, + "loc": { + "start": { + "line": 22, + "column": 11 + }, + "end": { + "line": 22, + "column": 29 + } + }, + "callee": { + "type": "MemberExpression", + "start": 499, + "end": 508, + "loc": { + "start": { + "line": 22, + "column": 11 + }, + "end": { + "line": 22, + "column": 20 + } + }, + "object": { + "type": "Identifier", + "start": 499, + "end": 504, + "loc": { + "start": { + "line": 22, + "column": 11 + }, + "end": { + "line": 22, + "column": 16 + }, + "identifierName": "Eggvm" + }, + "name": "Eggvm" + }, + "property": { + "type": "Identifier", + "start": 505, + "end": 508, + "loc": { + "start": { + "line": 22, + "column": 17 + }, + "end": { + "line": 22, + "column": 20 + }, + "identifierName": "run" + }, + "name": "run" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 509, + "end": 516, + "loc": { + "start": { + "line": 22, + "column": 21 + }, + "end": { + "line": 22, + "column": 28 + }, + "identifierName": "program" + }, + "name": "program" + } + ] + } + } + ], + "directives": [] + } + }, + { + "type": "ClassMethod", + "start": 526, + "end": 698, + "loc": { + "start": { + "line": 25, + "column": 2 + }, + "end": { + "line": 32, + "column": 3 + } + }, + "static": true, + "computed": false, + "key": { + "type": "Identifier", + "start": 533, + "end": 543, + "loc": { + "start": { + "line": 25, + "column": 9 + }, + "end": { + "line": 25, + "column": 19 + }, + "identifierName": "runFromEVM" + }, + "name": "runFromEVM" + }, + "kind": "method", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 544, + "end": 548, + "loc": { + "start": { + "line": 25, + "column": 20 + }, + "end": { + "line": 25, + "column": 24 + }, + "identifierName": "file" + }, + "name": "file" + } + ], + "body": { + "type": "BlockStatement", + "start": 550, + "end": 698, + "loc": { + "start": { + "line": 25, + "column": 26 + }, + "end": { + "line": 32, + "column": 3 + } + }, + "body": [ + { + "type": "VariableDeclaration", + "start": 556, + "end": 594, + "loc": { + "start": { + "line": 26, + "column": 4 + }, + "end": { + "line": 26, + "column": 42 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 562, + "end": 593, + "loc": { + "start": { + "line": 26, + "column": 10 + }, + "end": { + "line": 26, + "column": 41 + } + }, + "id": { + "type": "Identifier", + "start": 562, + "end": 569, + "loc": { + "start": { + "line": 26, + "column": 10 + }, + "end": { + "line": 26, + "column": 17 + }, + "identifierName": "rawData" + }, + "name": "rawData" + }, + "init": { + "type": "CallExpression", + "start": 572, + "end": 593, + "loc": { + "start": { + "line": 26, + "column": 20 + }, + "end": { + "line": 26, + "column": 41 + } + }, + "callee": { + "type": "MemberExpression", + "start": 572, + "end": 587, + "loc": { + "start": { + "line": 26, + "column": 20 + }, + "end": { + "line": 26, + "column": 35 + } + }, + "object": { + "type": "Identifier", + "start": 572, + "end": 574, + "loc": { + "start": { + "line": 26, + "column": 20 + }, + "end": { + "line": 26, + "column": 22 + }, + "identifierName": "fs" + }, + "name": "fs" + }, + "property": { + "type": "Identifier", + "start": 575, + "end": 587, + "loc": { + "start": { + "line": 26, + "column": 23 + }, + "end": { + "line": 26, + "column": 35 + }, + "identifierName": "readFileSync" + }, + "name": "readFileSync" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 588, + "end": 592, + "loc": { + "start": { + "line": 26, + "column": 36 + }, + "end": { + "line": 26, + "column": 40 + }, + "identifierName": "file" + }, + "name": "file" + } + ] + } + } + ], + "kind": "const" + }, + { + "type": "VariableDeclaration", + "start": 599, + "end": 630, + "loc": { + "start": { + "line": 27, + "column": 4 + }, + "end": { + "line": 27, + "column": 35 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 603, + "end": 629, + "loc": { + "start": { + "line": 27, + "column": 8 + }, + "end": { + "line": 27, + "column": 34 + } + }, + "id": { + "type": "Identifier", + "start": 603, + "end": 607, + "loc": { + "start": { + "line": 27, + "column": 8 + }, + "end": { + "line": 27, + "column": 12 + }, + "identifierName": "json" + }, + "name": "json" + }, + "init": { + "type": "CallExpression", + "start": 610, + "end": 629, + "loc": { + "start": { + "line": 27, + "column": 15 + }, + "end": { + "line": 27, + "column": 34 + } + }, + "callee": { + "type": "MemberExpression", + "start": 610, + "end": 620, + "loc": { + "start": { + "line": 27, + "column": 15 + }, + "end": { + "line": 27, + "column": 25 + } + }, + "object": { + "type": "Identifier", + "start": 610, + "end": 614, + "loc": { + "start": { + "line": 27, + "column": 15 + }, + "end": { + "line": 27, + "column": 19 + }, + "identifierName": "JSON" + }, + "name": "JSON" + }, + "property": { + "type": "Identifier", + "start": 615, + "end": 620, + "loc": { + "start": { + "line": 27, + "column": 20 + }, + "end": { + "line": 27, + "column": 25 + }, + "identifierName": "parse" + }, + "name": "parse" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 621, + "end": 628, + "loc": { + "start": { + "line": 27, + "column": 26 + }, + "end": { + "line": 27, + "column": 33 + }, + "identifierName": "rawData" + }, + "name": "rawData" + } + ] + } + } + ], + "kind": "let" + }, + { + "type": "VariableDeclaration", + "start": 636, + "end": 664, + "loc": { + "start": { + "line": 29, + "column": 4 + }, + "end": { + "line": 29, + "column": 32 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 642, + "end": 663, + "loc": { + "start": { + "line": 29, + "column": 10 + }, + "end": { + "line": 29, + "column": 31 + } + }, + "id": { + "type": "Identifier", + "start": 642, + "end": 646, + "loc": { + "start": { + "line": 29, + "column": 10 + }, + "end": { + "line": 29, + "column": 14 + }, + "identifierName": "tree" + }, + "name": "tree" + }, + "init": { + "type": "CallExpression", + "start": 649, + "end": 663, + "loc": { + "start": { + "line": 29, + "column": 17 + }, + "end": { + "line": 29, + "column": 31 + } + }, + "callee": { + "type": "Identifier", + "start": 649, + "end": 657, + "loc": { + "start": { + "line": 29, + "column": 17 + }, + "end": { + "line": 29, + "column": 25 + }, + "identifierName": "json2AST" + }, + "name": "json2AST" + }, + "arguments": [ + { + "type": "Identifier", + "start": 658, + "end": 662, + "loc": { + "start": { + "line": 29, + "column": 26 + }, + "end": { + "line": 29, + "column": 30 + }, + "identifierName": "json" + }, + "name": "json" + } + ] + } + } + ], + "kind": "const" + }, + { + "type": "ReturnStatement", + "start": 670, + "end": 694, + "loc": { + "start": { + "line": 31, + "column": 4 + }, + "end": { + "line": 31, + "column": 28 + } + }, + "argument": { + "type": "CallExpression", + "start": 677, + "end": 693, + "loc": { + "start": { + "line": 31, + "column": 11 + }, + "end": { + "line": 31, + "column": 27 + } + }, + "callee": { + "type": "MemberExpression", + "start": 677, + "end": 687, + "loc": { + "start": { + "line": 31, + "column": 11 + }, + "end": { + "line": 31, + "column": 21 + } + }, + "object": { + "type": "Identifier", + "start": 677, + "end": 682, + "loc": { + "start": { + "line": 31, + "column": 11 + }, + "end": { + "line": 31, + "column": 16 + }, + "identifierName": "Eggvm" + }, + "name": "Eggvm" + }, + "property": { + "type": "Identifier", + "start": 683, + "end": 687, + "loc": { + "start": { + "line": 31, + "column": 17 + }, + "end": { + "line": 31, + "column": 21 + }, + "identifierName": "eval" + }, + "name": "eval" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 688, + "end": 692, + "loc": { + "start": { + "line": 31, + "column": 22 + }, + "end": { + "line": 31, + "column": 26 + }, + "identifierName": "tree" + }, + "name": "tree" + } + ] + } + } + ], + "directives": [] + } + }, + { + "type": "ClassMethod", + "start": 702, + "end": 932, + "loc": { + "start": { + "line": 34, + "column": 2 + }, + "end": { + "line": 41, + "column": 3 + } + }, + "static": true, + "computed": false, + "key": { + "type": "Identifier", + "start": 709, + "end": 713, + "loc": { + "start": { + "line": 34, + "column": 9 + }, + "end": { + "line": 34, + "column": 13 + }, + "identifierName": "eval" + }, + "name": "eval" + }, + "kind": "method", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 714, + "end": 718, + "loc": { + "start": { + "line": 34, + "column": 14 + }, + "end": { + "line": 34, + "column": 18 + }, + "identifierName": "tree" + }, + "name": "tree" + }, + { + "type": "Identifier", + "start": 720, + "end": 723, + "loc": { + "start": { + "line": 34, + "column": 20 + }, + "end": { + "line": 34, + "column": 23 + }, + "identifierName": "env" + }, + "name": "env" + } + ], + "body": { + "type": "BlockStatement", + "start": 725, + "end": 932, + "loc": { + "start": { + "line": 34, + "column": 25 + }, + "end": { + "line": 41, + "column": 3 + } + }, + "body": [ + { + "type": "IfStatement", + "start": 792, + "end": 873, + "loc": { + "start": { + "line": 36, + "column": 4 + }, + "end": { + "line": 38, + "column": 5 + } + }, + "test": { + "type": "LogicalExpression", + "start": 796, + "end": 829, + "loc": { + "start": { + "line": 36, + "column": 8 + }, + "end": { + "line": 36, + "column": 41 + } + }, + "left": { + "type": "BinaryExpression", + "start": 796, + "end": 813, + "loc": { + "start": { + "line": 36, + "column": 8 + }, + "end": { + "line": 36, + "column": 25 + } + }, + "left": { + "type": "Identifier", + "start": 796, + "end": 799, + "loc": { + "start": { + "line": 36, + "column": 8 + }, + "end": { + "line": 36, + "column": 11 + }, + "identifierName": "env" + }, + "name": "env", + "leadingComments": null + }, + "operator": "===", + "right": { + "type": "Identifier", + "start": 804, + "end": 813, + "loc": { + "start": { + "line": 36, + "column": 16 + }, + "end": { + "line": 36, + "column": 25 + }, + "identifierName": "undefined" + }, + "name": "undefined" + }, + "leadingComments": null + }, + "operator": "||", + "right": { + "type": "BinaryExpression", + "start": 817, + "end": 829, + "loc": { + "start": { + "line": 36, + "column": 29 + }, + "end": { + "line": 36, + "column": 41 + } + }, + "left": { + "type": "Identifier", + "start": 817, + "end": 820, + "loc": { + "start": { + "line": 36, + "column": 29 + }, + "end": { + "line": 36, + "column": 32 + }, + "identifierName": "env" + }, + "name": "env" + }, + "operator": "===", + "right": { + "type": "NullLiteral", + "start": 825, + "end": 829, + "loc": { + "start": { + "line": 36, + "column": 37 + }, + "end": { + "line": 36, + "column": 41 + } + } + } + }, + "leadingComments": null + }, + "consequent": { + "type": "BlockStatement", + "start": 831, + "end": 873, + "loc": { + "start": { + "line": 36, + "column": 43 + }, + "end": { + "line": 38, + "column": 5 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 839, + "end": 867, + "loc": { + "start": { + "line": 37, + "column": 6 + }, + "end": { + "line": 37, + "column": 34 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 839, + "end": 866, + "loc": { + "start": { + "line": 37, + "column": 6 + }, + "end": { + "line": 37, + "column": 33 + } + }, + "operator": "=", + "left": { + "type": "Identifier", + "start": 839, + "end": 842, + "loc": { + "start": { + "line": 37, + "column": 6 + }, + "end": { + "line": 37, + "column": 9 + }, + "identifierName": "env" + }, + "name": "env" + }, + "right": { + "type": "CallExpression", + "start": 845, + "end": 866, + "loc": { + "start": { + "line": 37, + "column": 12 + }, + "end": { + "line": 37, + "column": 33 + } + }, + "callee": { + "type": "MemberExpression", + "start": 845, + "end": 858, + "loc": { + "start": { + "line": 37, + "column": 12 + }, + "end": { + "line": 37, + "column": 25 + } + }, + "object": { + "type": "Identifier", + "start": 845, + "end": 851, + "loc": { + "start": { + "line": 37, + "column": 12 + }, + "end": { + "line": 37, + "column": 18 + }, + "identifierName": "Object" + }, + "name": "Object" + }, + "property": { + "type": "Identifier", + "start": 852, + "end": 858, + "loc": { + "start": { + "line": 37, + "column": 19 + }, + "end": { + "line": 37, + "column": 25 + }, + "identifierName": "create" + }, + "name": "create" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 859, + "end": 865, + "loc": { + "start": { + "line": 37, + "column": 26 + }, + "end": { + "line": 37, + "column": 32 + }, + "identifierName": "TopEnv" + }, + "name": "TopEnv" + } + ] + } + } + } + ], + "directives": [] + }, + "alternate": null, + "leadingComments": [ + { + "type": "CommentLine", + "value": " Create a new env if not already defined on parameters", + "start": 731, + "end": 787, + "loc": { + "start": { + "line": 35, + "column": 4 + }, + "end": { + "line": 35, + "column": 60 + } + } + } + ] + }, + { + "type": "ReturnStatement", + "start": 879, + "end": 928, + "loc": { + "start": { + "line": 40, + "column": 4 + }, + "end": { + "line": 40, + "column": 53 + } + }, + "argument": { + "type": "ConditionalExpression", + "start": 886, + "end": 927, + "loc": { + "start": { + "line": 40, + "column": 11 + }, + "end": { + "line": 40, + "column": 52 + } + }, + "test": { + "type": "BinaryExpression", + "start": 886, + "end": 899, + "loc": { + "start": { + "line": 40, + "column": 11 + }, + "end": { + "line": 40, + "column": 24 + } + }, + "left": { + "type": "Identifier", + "start": 886, + "end": 890, + "loc": { + "start": { + "line": 40, + "column": 11 + }, + "end": { + "line": 40, + "column": 15 + }, + "identifierName": "tree" + }, + "name": "tree" + }, + "operator": "!==", + "right": { + "type": "NullLiteral", + "start": 895, + "end": 899, + "loc": { + "start": { + "line": 40, + "column": 20 + }, + "end": { + "line": 40, + "column": 24 + } + } + } + }, + "consequent": { + "type": "CallExpression", + "start": 902, + "end": 920, + "loc": { + "start": { + "line": 40, + "column": 27 + }, + "end": { + "line": 40, + "column": 45 + } + }, + "callee": { + "type": "MemberExpression", + "start": 902, + "end": 915, + "loc": { + "start": { + "line": 40, + "column": 27 + }, + "end": { + "line": 40, + "column": 40 + } + }, + "object": { + "type": "Identifier", + "start": 902, + "end": 906, + "loc": { + "start": { + "line": 40, + "column": 27 + }, + "end": { + "line": 40, + "column": 31 + }, + "identifierName": "tree" + }, + "name": "tree" + }, + "property": { + "type": "Identifier", + "start": 907, + "end": 915, + "loc": { + "start": { + "line": 40, + "column": 32 + }, + "end": { + "line": 40, + "column": 40 + }, + "identifierName": "evaluate" + }, + "name": "evaluate" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 916, + "end": 919, + "loc": { + "start": { + "line": 40, + "column": 41 + }, + "end": { + "line": 40, + "column": 44 + }, + "identifierName": "env" + }, + "name": "env" + } + ] + }, + "alternate": { + "type": "NullLiteral", + "start": 923, + "end": 927, + "loc": { + "start": { + "line": 40, + "column": 48 + }, + "end": { + "line": 40, + "column": 52 + } + } + } + } + } + ], + "directives": [] + } + }, + { + "type": "ClassMethod", + "start": 936, + "end": 1097, + "loc": { + "start": { + "line": 43, + "column": 2 + }, + "end": { + "line": 49, + "column": 3 + } + }, + "static": true, + "computed": false, + "key": { + "type": "Identifier", + "start": 943, + "end": 957, + "loc": { + "start": { + "line": 43, + "column": 9 + }, + "end": { + "line": 43, + "column": 23 + }, + "identifierName": "getEnvFromFile" + }, + "name": "getEnvFromFile" + }, + "kind": "method", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 958, + "end": 962, + "loc": { + "start": { + "line": 43, + "column": 24 + }, + "end": { + "line": 43, + "column": 28 + }, + "identifierName": "file" + }, + "name": "file" + } + ], + "body": { + "type": "BlockStatement", + "start": 964, + "end": 1097, + "loc": { + "start": { + "line": 43, + "column": 30 + }, + "end": { + "line": 49, + "column": 3 + } + }, + "body": [ + { + "type": "VariableDeclaration", + "start": 970, + "end": 1004, + "loc": { + "start": { + "line": 44, + "column": 4 + }, + "end": { + "line": 44, + "column": 38 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 976, + "end": 1003, + "loc": { + "start": { + "line": 44, + "column": 10 + }, + "end": { + "line": 44, + "column": 37 + } + }, + "id": { + "type": "Identifier", + "start": 976, + "end": 979, + "loc": { + "start": { + "line": 44, + "column": 10 + }, + "end": { + "line": 44, + "column": 13 + }, + "identifierName": "env" + }, + "name": "env" + }, + "init": { + "type": "CallExpression", + "start": 982, + "end": 1003, + "loc": { + "start": { + "line": 44, + "column": 16 + }, + "end": { + "line": 44, + "column": 37 + } + }, + "callee": { + "type": "MemberExpression", + "start": 982, + "end": 995, + "loc": { + "start": { + "line": 44, + "column": 16 + }, + "end": { + "line": 44, + "column": 29 + } + }, + "object": { + "type": "Identifier", + "start": 982, + "end": 988, + "loc": { + "start": { + "line": 44, + "column": 16 + }, + "end": { + "line": 44, + "column": 22 + }, + "identifierName": "Object" + }, + "name": "Object" + }, + "property": { + "type": "Identifier", + "start": 989, + "end": 995, + "loc": { + "start": { + "line": 44, + "column": 23 + }, + "end": { + "line": 44, + "column": 29 + }, + "identifierName": "create" + }, + "name": "create" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 996, + "end": 1002, + "loc": { + "start": { + "line": 44, + "column": 30 + }, + "end": { + "line": 44, + "column": 36 + }, + "identifierName": "TopEnv" + }, + "name": "TopEnv" + } + ] + } + } + ], + "kind": "const" + }, + { + "type": "VariableDeclaration", + "start": 1009, + "end": 1049, + "loc": { + "start": { + "line": 45, + "column": 4 + }, + "end": { + "line": 45, + "column": 44 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 1015, + "end": 1048, + "loc": { + "start": { + "line": 45, + "column": 10 + }, + "end": { + "line": 45, + "column": 43 + } + }, + "id": { + "type": "Identifier", + "start": 1015, + "end": 1019, + "loc": { + "start": { + "line": 45, + "column": 10 + }, + "end": { + "line": 45, + "column": 14 + }, + "identifierName": "tree" + }, + "name": "tree" + }, + "init": { + "type": "CallExpression", + "start": 1022, + "end": 1048, + "loc": { + "start": { + "line": 45, + "column": 17 + }, + "end": { + "line": 45, + "column": 43 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1022, + "end": 1042, + "loc": { + "start": { + "line": 45, + "column": 17 + }, + "end": { + "line": 45, + "column": 37 + } + }, + "object": { + "type": "Identifier", + "start": 1022, + "end": 1028, + "loc": { + "start": { + "line": 45, + "column": 17 + }, + "end": { + "line": 45, + "column": 23 + }, + "identifierName": "Parser" + }, + "name": "Parser" + }, + "property": { + "type": "Identifier", + "start": 1029, + "end": 1042, + "loc": { + "start": { + "line": 45, + "column": 24 + }, + "end": { + "line": 45, + "column": 37 + }, + "identifierName": "parseFromFile" + }, + "name": "parseFromFile" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 1043, + "end": 1047, + "loc": { + "start": { + "line": 45, + "column": 38 + }, + "end": { + "line": 45, + "column": 42 + }, + "identifierName": "file" + }, + "name": "file" + } + ] + } + } + ], + "kind": "const" + }, + { + "type": "ExpressionStatement", + "start": 1054, + "end": 1076, + "loc": { + "start": { + "line": 46, + "column": 4 + }, + "end": { + "line": 46, + "column": 26 + } + }, + "expression": { + "type": "CallExpression", + "start": 1054, + "end": 1075, + "loc": { + "start": { + "line": 46, + "column": 4 + }, + "end": { + "line": 46, + "column": 25 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1054, + "end": 1064, + "loc": { + "start": { + "line": 46, + "column": 4 + }, + "end": { + "line": 46, + "column": 14 + } + }, + "object": { + "type": "Identifier", + "start": 1054, + "end": 1059, + "loc": { + "start": { + "line": 46, + "column": 4 + }, + "end": { + "line": 46, + "column": 9 + }, + "identifierName": "Eggvm" + }, + "name": "Eggvm" + }, + "property": { + "type": "Identifier", + "start": 1060, + "end": 1064, + "loc": { + "start": { + "line": 46, + "column": 10 + }, + "end": { + "line": 46, + "column": 14 + }, + "identifierName": "eval" + }, + "name": "eval" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 1065, + "end": 1069, + "loc": { + "start": { + "line": 46, + "column": 15 + }, + "end": { + "line": 46, + "column": 19 + }, + "identifierName": "tree" + }, + "name": "tree" + }, + { + "type": "Identifier", + "start": 1071, + "end": 1074, + "loc": { + "start": { + "line": 46, + "column": 21 + }, + "end": { + "line": 46, + "column": 24 + }, + "identifierName": "env" + }, + "name": "env" + } + ] + } + }, + { + "type": "ReturnStatement", + "start": 1082, + "end": 1093, + "loc": { + "start": { + "line": 48, + "column": 4 + }, + "end": { + "line": 48, + "column": 15 + } + }, + "argument": { + "type": "Identifier", + "start": 1089, + "end": 1092, + "loc": { + "start": { + "line": 48, + "column": 11 + }, + "end": { + "line": 48, + "column": 14 + }, + "identifierName": "env" + }, + "name": "env" + } + } + ], + "directives": [] + } + } + ] + }, + "__PseudoExport__": false, + "leadingComments": [], + "trailingComments": [] }, - "end": { - "line": 2, - "column": 32 - } + "specifiers": null, + "source": null, + "leadingComments": null } - }, + ], + "directives": [] + }, + "comments": [ { - "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "require", - "start": 89, - "end": 96, + "type": "CommentLine", + "value": " Add monkey-patching functions and extended functions", + "start": 0, + "end": 55, "loc": { "start": { - "line": 3, + "line": 1, "column": 0 }, "end": { - "line": 3, - "column": 7 + "line": 1, + "column": 55 } } }, { - "type": { - "label": "(", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 96, - "end": 97, + "type": "CommentLine", + "value": " Create a new env if not already defined on parameters", + "start": 731, + "end": 787, "loc": { "start": { - "line": 3, - "column": 7 + "line": 35, + "column": 4 }, "end": { - "line": 3, - "column": 8 + "line": 35, + "column": 60 } } - }, + } + ], + "tokens": [ { - "type": { - "label": "string", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "./require.js", - "start": 97, - "end": 111, + "type": "CommentLine", + "value": " Add monkey-patching functions and extended functions", + "start": 0, + "end": 55, "loc": { "start": { - "line": 3, - "column": 8 + "line": 1, + "column": 0 }, "end": { - "line": 3, - "column": 22 + "line": 1, + "column": 55 } } }, { "type": { - "label": ")", + "label": "import", + "keyword": "import", "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 111, - "end": 112, - "loc": { - "start": { - "line": 3, - "column": 22 - }, - "end": { - "line": 3, - "column": 23 - } - } - }, - { - "type": { - "label": ";", - "beforeExpr": true, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -3583,67 +5232,17 @@ "binop": null, "updateContext": null }, - "start": 112, - "end": 113, - "loc": { - "start": { - "line": 3, - "column": 23 - }, - "end": { - "line": 3, - "column": 24 - } - } - }, - { - "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "require", - "start": 114, - "end": 121, + "value": "import", + "start": 56, + "end": 62, "loc": { "start": { - "line": 4, + "line": 2, "column": 0 }, "end": { - "line": 4, - "column": 7 - } - } - }, - { - "type": { - "label": "(", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 121, - "end": 122, - "loc": { - "start": { - "line": 4, - "column": 7 - }, - "end": { - "line": 4, - "column": 8 + "line": 2, + "column": 6 } } }, @@ -3660,155 +5259,77 @@ "binop": null, "updateContext": null }, - "value": "./arithm.js", - "start": 122, - "end": 135, - "loc": { - "start": { - "line": 4, - "column": 8 - }, - "end": { - "line": 4, - "column": 21 - } - } - }, - { - "type": { - "label": ")", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 135, - "end": 136, - "loc": { - "start": { - "line": 4, - "column": 21 - }, - "end": { - "line": 4, - "column": 22 - } - } - }, - { - "type": { - "label": ";", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "start": 136, - "end": 137, - "loc": { - "start": { - "line": 4, - "column": 22 - }, - "end": { - "line": 4, - "column": 23 - } - } - }, - { - "type": { - "label": "const", - "keyword": "const", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "const", - "start": 139, - "end": 144, + "value": "./monkey-patching.js", + "start": 63, + "end": 85, "loc": { "start": { - "line": 6, - "column": 0 + "line": 2, + "column": 7 }, - "end": { - "line": 6, - "column": 5 + "end": { + "line": 2, + "column": 29 } } }, { "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, + "label": ";", + "beforeExpr": true, + "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "value": "fs", - "start": 145, - "end": 147, + "start": 85, + "end": 86, "loc": { "start": { - "line": 6, - "column": 6 + "line": 2, + "column": 29 }, "end": { - "line": 6, - "column": 8 + "line": 2, + "column": 30 } } }, { "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, + "label": "import", + "keyword": "import", + "beforeExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, - "isAssign": true, + "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, - "value": "=", - "start": 148, - "end": 149, + "value": "import", + "start": 87, + "end": 93, "loc": { "start": { - "line": 6, - "column": 9 + "line": 3, + "column": 0 }, "end": { - "line": 6, - "column": 10 + "line": 3, + "column": 6 } } }, { "type": { - "label": "name", + "label": "string", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, @@ -3816,50 +5337,53 @@ "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "value": "require", - "start": 150, - "end": 157, + "value": "./require.js", + "start": 94, + "end": 108, "loc": { "start": { - "line": 6, - "column": 11 + "line": 3, + "column": 7 }, "end": { - "line": 6, - "column": 18 + "line": 3, + "column": 21 } } }, { "type": { - "label": "(", + "label": ";", "beforeExpr": true, - "startsExpr": true, + "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "start": 157, - "end": 158, + "start": 108, + "end": 109, "loc": { "start": { - "line": 6, - "column": 18 + "line": 3, + "column": 21 }, "end": { - "line": 6, - "column": 19 + "line": 3, + "column": 22 } } }, { "type": { - "label": "string", + "label": "import", + "keyword": "import", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, @@ -3870,42 +5394,44 @@ "binop": null, "updateContext": null }, - "value": "fs", - "start": 158, - "end": 162, + "value": "import", + "start": 110, + "end": 116, "loc": { "start": { - "line": 6, - "column": 19 + "line": 4, + "column": 0 }, "end": { - "line": 6, - "column": 23 + "line": 4, + "column": 6 } } }, { "type": { - "label": ")", + "label": "string", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "start": 162, - "end": 163, + "value": "./arithm.js", + "start": 117, + "end": 130, "loc": { "start": { - "line": 6, - "column": 23 + "line": 4, + "column": 7 }, "end": { - "line": 6, - "column": 24 + "line": 4, + "column": 20 } } }, @@ -3922,25 +5448,25 @@ "binop": null, "updateContext": null }, - "start": 163, - "end": 164, + "start": 130, + "end": 131, "loc": { "start": { - "line": 6, - "column": 24 + "line": 4, + "column": 20 }, "end": { - "line": 6, - "column": 25 + "line": 4, + "column": 21 } } }, { "type": { - "label": "const", - "keyword": "const", + "label": "import", + "keyword": "import", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -3949,24 +5475,24 @@ "binop": null, "updateContext": null }, - "value": "const", - "start": 166, - "end": 171, + "value": "import", + "start": 133, + "end": 139, "loc": { "start": { - "line": 8, + "line": 6, "column": 0 }, "end": { - "line": 8, - "column": 5 + "line": 6, + "column": 6 } } }, { "type": { - "label": "{", - "beforeExpr": true, + "label": "name", + "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, @@ -3975,16 +5501,17 @@ "postfix": false, "binop": null }, - "start": 172, - "end": 173, + "value": "fs", + "start": 140, + "end": 142, "loc": { "start": { - "line": 8, - "column": 6 + "line": 6, + "column": 7 }, "end": { - "line": 8, - "column": 7 + "line": 6, + "column": 9 } } }, @@ -4000,75 +5527,77 @@ "postfix": false, "binop": null }, - "value": "Parser", - "start": 174, - "end": 180, + "value": "from", + "start": 143, + "end": 147, "loc": { "start": { - "line": 8, - "column": 8 + "line": 6, + "column": 10 }, "end": { - "line": 8, + "line": 6, "column": 14 } } }, { "type": { - "label": "}", + "label": "string", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "start": 181, - "end": 182, + "value": "fs", + "start": 148, + "end": 152, "loc": { "start": { - "line": 8, + "line": 6, "column": 15 }, "end": { - "line": 8, - "column": 16 + "line": 6, + "column": 19 } } }, { "type": { - "label": "=", + "label": ";", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, - "isAssign": true, + "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, - "value": "=", - "start": 183, - "end": 184, + "start": 152, + "end": 153, "loc": { "start": { - "line": 8, - "column": 17 + "line": 6, + "column": 19 }, "end": { - "line": 8, - "column": 18 + "line": 6, + "column": 20 } } }, { "type": { - "label": "name", + "label": "import", + "keyword": "import", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, @@ -4076,25 +5605,26 @@ "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "value": "require", - "start": 185, - "end": 192, + "value": "import", + "start": 155, + "end": 161, "loc": { "start": { "line": 8, - "column": 19 + "column": 0 }, "end": { "line": 8, - "column": 26 + "column": 6 } } }, { "type": { - "label": "(", + "label": "{", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, @@ -4104,22 +5634,22 @@ "postfix": false, "binop": null }, - "start": 192, - "end": 193, + "start": 162, + "end": 163, "loc": { "start": { "line": 8, - "column": 26 + "column": 7 }, "end": { "line": 8, - "column": 27 + "column": 8 } } }, { "type": { - "label": "string", + "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, @@ -4127,26 +5657,25 @@ "isAssign": false, "prefix": false, "postfix": false, - "binop": null, - "updateContext": null + "binop": null }, - "value": "../parser/parse.js", - "start": 193, - "end": 213, + "value": "Parser", + "start": 164, + "end": 170, "loc": { "start": { "line": 8, - "column": 27 + "column": 9 }, "end": { "line": 8, - "column": 47 + "column": 15 } } }, { "type": { - "label": ")", + "label": "}", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, @@ -4156,51 +5685,50 @@ "postfix": false, "binop": null }, - "start": 213, - "end": 214, + "start": 171, + "end": 172, "loc": { "start": { "line": 8, - "column": 47 + "column": 16 }, "end": { "line": 8, - "column": 48 + "column": 17 } } }, { "type": { - "label": ";", - "beforeExpr": true, - "startsExpr": false, + "label": "name", + "beforeExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null, - "updateContext": null + "binop": null }, - "start": 214, - "end": 215, + "value": "from", + "start": 173, + "end": 177, "loc": { "start": { "line": 8, - "column": 48 + "column": 18 }, "end": { "line": 8, - "column": 49 + "column": 22 } } }, { "type": { - "label": "const", - "keyword": "const", + "label": "string", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -4209,120 +5737,96 @@ "binop": null, "updateContext": null }, - "value": "const", - "start": 216, - "end": 221, - "loc": { - "start": { - "line": 9, - "column": 0 - }, - "end": { - "line": 9, - "column": 5 - } - } - }, - { - "type": { - "label": "{", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 222, - "end": 223, + "value": "../parser/parse.js", + "start": 178, + "end": 198, "loc": { "start": { - "line": 9, - "column": 6 + "line": 8, + "column": 23 }, "end": { - "line": 9, - "column": 7 + "line": 8, + "column": 43 } } }, { "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, + "label": ";", + "beforeExpr": true, + "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "value": "TopEnv", - "start": 224, - "end": 230, + "start": 198, + "end": 199, "loc": { "start": { - "line": 9, - "column": 8 + "line": 8, + "column": 43 }, "end": { - "line": 9, - "column": 14 + "line": 8, + "column": 44 } } }, { "type": { - "label": "}", + "label": "import", + "keyword": "import", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "start": 231, - "end": 232, + "value": "import", + "start": 200, + "end": 206, "loc": { "start": { "line": 9, - "column": 15 + "column": 0 }, "end": { "line": 9, - "column": 16 + "column": 6 } } }, { "type": { - "label": "=", + "label": "{", "beforeExpr": true, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, - "isAssign": true, + "isAssign": false, "prefix": false, "postfix": false, - "binop": null, - "updateContext": null + "binop": null }, - "value": "=", - "start": 233, - "end": 234, + "start": 207, + "end": 208, "loc": { "start": { "line": 9, - "column": 17 + "column": 7 }, "end": { "line": 9, - "column": 18 + "column": 8 } } }, @@ -4338,25 +5842,25 @@ "postfix": false, "binop": null }, - "value": "require", - "start": 235, - "end": 242, + "value": "TopEnv", + "start": 209, + "end": 215, "loc": { "start": { "line": 9, - "column": 19 + "column": 9 }, "end": { "line": 9, - "column": 26 + "column": 15 } } }, { "type": { - "label": "(", - "beforeExpr": true, - "startsExpr": true, + "label": "}", + "beforeExpr": false, + "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -4364,22 +5868,22 @@ "postfix": false, "binop": null }, - "start": 242, - "end": 243, + "start": 216, + "end": 217, "loc": { "start": { "line": 9, - "column": 26 + "column": 16 }, "end": { "line": 9, - "column": 27 + "column": 17 } } }, { "type": { - "label": "string", + "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, @@ -4387,45 +5891,46 @@ "isAssign": false, "prefix": false, "postfix": false, - "binop": null, - "updateContext": null + "binop": null }, - "value": "./environment.js", - "start": 243, - "end": 261, + "value": "from", + "start": 218, + "end": 222, "loc": { "start": { "line": 9, - "column": 27 + "column": 18 }, "end": { "line": 9, - "column": 45 + "column": 22 } } }, { "type": { - "label": ")", + "label": "string", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "start": 261, - "end": 262, + "value": "./environment.js", + "start": 223, + "end": 241, "loc": { "start": { "line": 9, - "column": 45 + "column": 23 }, "end": { "line": 9, - "column": 46 + "column": 41 } } }, @@ -4442,25 +5947,25 @@ "binop": null, "updateContext": null }, - "start": 262, - "end": 263, + "start": 241, + "end": 242, "loc": { "start": { "line": 9, - "column": 46 + "column": 41 }, "end": { "line": 9, - "column": 47 + "column": 42 } } }, { "type": { - "label": "const", - "keyword": "const", + "label": "import", + "keyword": "import", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -4469,9 +5974,9 @@ "binop": null, "updateContext": null }, - "value": "const", - "start": 264, - "end": 269, + "value": "import", + "start": 243, + "end": 249, "loc": { "start": { "line": 10, @@ -4479,7 +5984,7 @@ }, "end": { "line": 10, - "column": 5 + "column": 6 } } }, @@ -4495,16 +6000,16 @@ "postfix": false, "binop": null }, - "start": 270, - "end": 271, + "start": 250, + "end": 251, "loc": { "start": { "line": 10, - "column": 6 + "column": 7 }, "end": { "line": 10, - "column": 7 + "column": 8 } } }, @@ -4521,16 +6026,16 @@ "binop": null }, "value": "json2AST", - "start": 272, - "end": 280, + "start": 252, + "end": 260, "loc": { "start": { "line": 10, - "column": 8 + "column": 9 }, "end": { "line": 10, - "column": 16 + "column": 17 } } }, @@ -4546,43 +6051,16 @@ "postfix": false, "binop": null }, - "start": 281, - "end": 282, + "start": 261, + "end": 262, "loc": { "start": { - "line": 10, - "column": 17 - }, - "end": { "line": 10, "column": 18 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 283, - "end": 284, - "loc": { - "start": { - "line": 10, - "column": 19 }, "end": { "line": 10, - "column": 20 + "column": 19 } } }, @@ -4598,42 +6076,17 @@ "postfix": false, "binop": null }, - "value": "require", - "start": 285, - "end": 292, - "loc": { - "start": { - "line": 10, - "column": 21 - }, - "end": { - "line": 10, - "column": 28 - } - } - }, - { - "type": { - "label": "(", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 292, - "end": 293, + "value": "from", + "start": 263, + "end": 267, "loc": { "start": { "line": 10, - "column": 28 + "column": 20 }, "end": { "line": 10, - "column": 29 + "column": 24 } } }, @@ -4651,41 +6104,16 @@ "updateContext": null }, "value": "../parser/json2AST.js", - "start": 293, - "end": 316, + "start": 268, + "end": 291, "loc": { "start": { "line": 10, - "column": 29 - }, - "end": { - "line": 10, - "column": 52 - } - } - }, - { - "type": { - "label": ")", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 316, - "end": 317, - "loc": { - "start": { - "line": 10, - "column": 52 + "column": 25 }, "end": { "line": 10, - "column": 53 + "column": 48 } } }, @@ -4702,16 +6130,16 @@ "binop": null, "updateContext": null }, - "start": 317, - "end": 318, + "start": 291, + "end": 292, "loc": { "start": { "line": 10, - "column": 53 + "column": 48 }, "end": { "line": 10, - "column": 54 + "column": 49 } } }, @@ -4730,8 +6158,8 @@ "updateContext": null }, "value": "class", - "start": 320, - "end": 325, + "start": 294, + "end": 299, "loc": { "start": { "line": 12, @@ -4756,8 +6184,8 @@ "binop": null }, "value": "Eggvm", - "start": 326, - "end": 331, + "start": 300, + "end": 305, "loc": { "start": { "line": 12, @@ -4781,8 +6209,8 @@ "postfix": false, "binop": null }, - "start": 332, - "end": 333, + "start": 306, + "end": 307, "loc": { "start": { "line": 12, @@ -4807,8 +6235,8 @@ "binop": null }, "value": "static", - "start": 336, - "end": 342, + "start": 310, + "end": 316, "loc": { "start": { "line": 13, @@ -4833,8 +6261,8 @@ "binop": null }, "value": "run", - "start": 343, - "end": 346, + "start": 317, + "end": 320, "loc": { "start": { "line": 13, @@ -4858,8 +6286,8 @@ "postfix": false, "binop": null }, - "start": 346, - "end": 347, + "start": 320, + "end": 321, "loc": { "start": { "line": 13, @@ -4884,8 +6312,8 @@ "binop": null }, "value": "program", - "start": 347, - "end": 354, + "start": 321, + "end": 328, "loc": { "start": { "line": 13, @@ -4909,8 +6337,8 @@ "postfix": false, "binop": null }, - "start": 354, - "end": 355, + "start": 328, + "end": 329, "loc": { "start": { "line": 13, @@ -4934,8 +6362,8 @@ "postfix": false, "binop": null }, - "start": 356, - "end": 357, + "start": 330, + "end": 331, "loc": { "start": { "line": 13, @@ -4962,8 +6390,8 @@ "updateContext": null }, "value": "const", - "start": 362, - "end": 367, + "start": 336, + "end": 341, "loc": { "start": { "line": 14, @@ -4988,8 +6416,8 @@ "binop": null }, "value": "tree", - "start": 368, - "end": 372, + "start": 342, + "end": 346, "loc": { "start": { "line": 14, @@ -5015,8 +6443,8 @@ "updateContext": null }, "value": "=", - "start": 373, - "end": 374, + "start": 347, + "end": 348, "loc": { "start": { "line": 14, @@ -5041,8 +6469,8 @@ "binop": null }, "value": "Parser", - "start": 375, - "end": 381, + "start": 349, + "end": 355, "loc": { "start": { "line": 14, @@ -5067,8 +6495,8 @@ "binop": null, "updateContext": null }, - "start": 381, - "end": 382, + "start": 355, + "end": 356, "loc": { "start": { "line": 14, @@ -5093,8 +6521,8 @@ "binop": null }, "value": "parse", - "start": 382, - "end": 387, + "start": 356, + "end": 361, "loc": { "start": { "line": 14, @@ -5118,8 +6546,8 @@ "postfix": false, "binop": null }, - "start": 387, - "end": 388, + "start": 361, + "end": 362, "loc": { "start": { "line": 14, @@ -5144,8 +6572,8 @@ "binop": null }, "value": "program", - "start": 388, - "end": 395, + "start": 362, + "end": 369, "loc": { "start": { "line": 14, @@ -5169,8 +6597,8 @@ "postfix": false, "binop": null }, - "start": 395, - "end": 396, + "start": 369, + "end": 370, "loc": { "start": { "line": 14, @@ -5195,8 +6623,8 @@ "binop": null, "updateContext": null }, - "start": 396, - "end": 397, + "start": 370, + "end": 371, "loc": { "start": { "line": 14, @@ -5223,8 +6651,8 @@ "updateContext": null }, "value": "return", - "start": 403, - "end": 409, + "start": 377, + "end": 383, "loc": { "start": { "line": 16, @@ -5249,8 +6677,8 @@ "binop": null }, "value": "Eggvm", - "start": 410, - "end": 415, + "start": 384, + "end": 389, "loc": { "start": { "line": 16, @@ -5275,8 +6703,8 @@ "binop": null, "updateContext": null }, - "start": 415, - "end": 416, + "start": 389, + "end": 390, "loc": { "start": { "line": 16, @@ -5301,8 +6729,8 @@ "binop": null }, "value": "eval", - "start": 416, - "end": 420, + "start": 390, + "end": 394, "loc": { "start": { "line": 16, @@ -5326,8 +6754,8 @@ "postfix": false, "binop": null }, - "start": 420, - "end": 421, + "start": 394, + "end": 395, "loc": { "start": { "line": 16, @@ -5352,8 +6780,8 @@ "binop": null }, "value": "tree", - "start": 421, - "end": 425, + "start": 395, + "end": 399, "loc": { "start": { "line": 16, @@ -5377,8 +6805,8 @@ "postfix": false, "binop": null }, - "start": 425, - "end": 426, + "start": 399, + "end": 400, "loc": { "start": { "line": 16, @@ -5403,8 +6831,8 @@ "binop": null, "updateContext": null }, - "start": 426, - "end": 427, + "start": 400, + "end": 401, "loc": { "start": { "line": 16, @@ -5428,8 +6856,8 @@ "postfix": false, "binop": null }, - "start": 430, - "end": 431, + "start": 404, + "end": 405, "loc": { "start": { "line": 17, @@ -5454,8 +6882,8 @@ "binop": null }, "value": "static", - "start": 435, - "end": 441, + "start": 409, + "end": 415, "loc": { "start": { "line": 19, @@ -5480,8 +6908,8 @@ "binop": null }, "value": "runFromFile", - "start": 442, - "end": 453, + "start": 416, + "end": 427, "loc": { "start": { "line": 19, @@ -5505,8 +6933,8 @@ "postfix": false, "binop": null }, - "start": 453, - "end": 454, + "start": 427, + "end": 428, "loc": { "start": { "line": 19, @@ -5531,8 +6959,8 @@ "binop": null }, "value": "file", - "start": 454, - "end": 458, + "start": 428, + "end": 432, "loc": { "start": { "line": 19, @@ -5556,8 +6984,8 @@ "postfix": false, "binop": null }, - "start": 458, - "end": 459, + "start": 432, + "end": 433, "loc": { "start": { "line": 19, @@ -5581,8 +7009,8 @@ "postfix": false, "binop": null }, - "start": 460, - "end": 461, + "start": 434, + "end": 435, "loc": { "start": { "line": 19, @@ -5609,8 +7037,8 @@ "updateContext": null }, "value": "const", - "start": 466, - "end": 471, + "start": 440, + "end": 445, "loc": { "start": { "line": 20, @@ -5635,8 +7063,8 @@ "binop": null }, "value": "program", - "start": 472, - "end": 479, + "start": 446, + "end": 453, "loc": { "start": { "line": 20, @@ -5662,8 +7090,8 @@ "updateContext": null }, "value": "=", - "start": 480, - "end": 481, + "start": 454, + "end": 455, "loc": { "start": { "line": 20, @@ -5688,8 +7116,8 @@ "binop": null }, "value": "fs", - "start": 482, - "end": 484, + "start": 456, + "end": 458, "loc": { "start": { "line": 20, @@ -5714,8 +7142,8 @@ "binop": null, "updateContext": null }, - "start": 484, - "end": 485, + "start": 458, + "end": 459, "loc": { "start": { "line": 20, @@ -5740,8 +7168,8 @@ "binop": null }, "value": "readFileSync", - "start": 485, - "end": 497, + "start": 459, + "end": 471, "loc": { "start": { "line": 20, @@ -5765,8 +7193,8 @@ "postfix": false, "binop": null }, - "start": 497, - "end": 498, + "start": 471, + "end": 472, "loc": { "start": { "line": 20, @@ -5791,8 +7219,8 @@ "binop": null }, "value": "file", - "start": 498, - "end": 502, + "start": 472, + "end": 476, "loc": { "start": { "line": 20, @@ -5817,8 +7245,8 @@ "binop": null, "updateContext": null }, - "start": 502, - "end": 503, + "start": 476, + "end": 477, "loc": { "start": { "line": 20, @@ -5844,8 +7272,8 @@ "updateContext": null }, "value": "utf8", - "start": 504, - "end": 510, + "start": 478, + "end": 484, "loc": { "start": { "line": 20, @@ -5869,8 +7297,8 @@ "postfix": false, "binop": null }, - "start": 510, - "end": 511, + "start": 484, + "end": 485, "loc": { "start": { "line": 20, @@ -5895,8 +7323,8 @@ "binop": null, "updateContext": null }, - "start": 511, - "end": 512, + "start": 485, + "end": 486, "loc": { "start": { "line": 20, @@ -5923,8 +7351,8 @@ "updateContext": null }, "value": "return", - "start": 518, - "end": 524, + "start": 492, + "end": 498, "loc": { "start": { "line": 22, @@ -5949,8 +7377,8 @@ "binop": null }, "value": "Eggvm", - "start": 525, - "end": 530, + "start": 499, + "end": 504, "loc": { "start": { "line": 22, @@ -5975,8 +7403,8 @@ "binop": null, "updateContext": null }, - "start": 530, - "end": 531, + "start": 504, + "end": 505, "loc": { "start": { "line": 22, @@ -6001,8 +7429,8 @@ "binop": null }, "value": "run", - "start": 531, - "end": 534, + "start": 505, + "end": 508, "loc": { "start": { "line": 22, @@ -6026,8 +7454,8 @@ "postfix": false, "binop": null }, - "start": 534, - "end": 535, + "start": 508, + "end": 509, "loc": { "start": { "line": 22, @@ -6052,8 +7480,8 @@ "binop": null }, "value": "program", - "start": 535, - "end": 542, + "start": 509, + "end": 516, "loc": { "start": { "line": 22, @@ -6077,8 +7505,8 @@ "postfix": false, "binop": null }, - "start": 542, - "end": 543, + "start": 516, + "end": 517, "loc": { "start": { "line": 22, @@ -6103,8 +7531,8 @@ "binop": null, "updateContext": null }, - "start": 543, - "end": 544, + "start": 517, + "end": 518, "loc": { "start": { "line": 22, @@ -6128,8 +7556,8 @@ "postfix": false, "binop": null }, - "start": 547, - "end": 548, + "start": 521, + "end": 522, "loc": { "start": { "line": 23, @@ -6154,8 +7582,8 @@ "binop": null }, "value": "static", - "start": 552, - "end": 558, + "start": 526, + "end": 532, "loc": { "start": { "line": 25, @@ -6180,8 +7608,8 @@ "binop": null }, "value": "runFromEVM", - "start": 559, - "end": 569, + "start": 533, + "end": 543, "loc": { "start": { "line": 25, @@ -6205,8 +7633,8 @@ "postfix": false, "binop": null }, - "start": 569, - "end": 570, + "start": 543, + "end": 544, "loc": { "start": { "line": 25, @@ -6231,8 +7659,8 @@ "binop": null }, "value": "file", - "start": 570, - "end": 574, + "start": 544, + "end": 548, "loc": { "start": { "line": 25, @@ -6256,8 +7684,8 @@ "postfix": false, "binop": null }, - "start": 574, - "end": 575, + "start": 548, + "end": 549, "loc": { "start": { "line": 25, @@ -6281,8 +7709,8 @@ "postfix": false, "binop": null }, - "start": 576, - "end": 577, + "start": 550, + "end": 551, "loc": { "start": { "line": 25, @@ -6309,8 +7737,8 @@ "updateContext": null }, "value": "const", - "start": 582, - "end": 587, + "start": 556, + "end": 561, "loc": { "start": { "line": 26, @@ -6335,8 +7763,8 @@ "binop": null }, "value": "rawData", - "start": 588, - "end": 595, + "start": 562, + "end": 569, "loc": { "start": { "line": 26, @@ -6362,8 +7790,8 @@ "updateContext": null }, "value": "=", - "start": 596, - "end": 597, + "start": 570, + "end": 571, "loc": { "start": { "line": 26, @@ -6388,8 +7816,8 @@ "binop": null }, "value": "fs", - "start": 598, - "end": 600, + "start": 572, + "end": 574, "loc": { "start": { "line": 26, @@ -6414,8 +7842,8 @@ "binop": null, "updateContext": null }, - "start": 600, - "end": 601, + "start": 574, + "end": 575, "loc": { "start": { "line": 26, @@ -6440,8 +7868,8 @@ "binop": null }, "value": "readFileSync", - "start": 601, - "end": 613, + "start": 575, + "end": 587, "loc": { "start": { "line": 26, @@ -6465,8 +7893,8 @@ "postfix": false, "binop": null }, - "start": 613, - "end": 614, + "start": 587, + "end": 588, "loc": { "start": { "line": 26, @@ -6491,8 +7919,8 @@ "binop": null }, "value": "file", - "start": 614, - "end": 618, + "start": 588, + "end": 592, "loc": { "start": { "line": 26, @@ -6516,8 +7944,8 @@ "postfix": false, "binop": null }, - "start": 618, - "end": 619, + "start": 592, + "end": 593, "loc": { "start": { "line": 26, @@ -6542,8 +7970,8 @@ "binop": null, "updateContext": null }, - "start": 619, - "end": 620, + "start": 593, + "end": 594, "loc": { "start": { "line": 26, @@ -6570,8 +7998,8 @@ "updateContext": null }, "value": "let", - "start": 625, - "end": 628, + "start": 599, + "end": 602, "loc": { "start": { "line": 27, @@ -6596,8 +8024,8 @@ "binop": null }, "value": "json", - "start": 629, - "end": 633, + "start": 603, + "end": 607, "loc": { "start": { "line": 27, @@ -6623,8 +8051,8 @@ "updateContext": null }, "value": "=", - "start": 634, - "end": 635, + "start": 608, + "end": 609, "loc": { "start": { "line": 27, @@ -6649,8 +8077,8 @@ "binop": null }, "value": "JSON", - "start": 636, - "end": 640, + "start": 610, + "end": 614, "loc": { "start": { "line": 27, @@ -6675,8 +8103,8 @@ "binop": null, "updateContext": null }, - "start": 640, - "end": 641, + "start": 614, + "end": 615, "loc": { "start": { "line": 27, @@ -6701,8 +8129,8 @@ "binop": null }, "value": "parse", - "start": 641, - "end": 646, + "start": 615, + "end": 620, "loc": { "start": { "line": 27, @@ -6726,8 +8154,8 @@ "postfix": false, "binop": null }, - "start": 646, - "end": 647, + "start": 620, + "end": 621, "loc": { "start": { "line": 27, @@ -6752,8 +8180,8 @@ "binop": null }, "value": "rawData", - "start": 647, - "end": 654, + "start": 621, + "end": 628, "loc": { "start": { "line": 27, @@ -6777,8 +8205,8 @@ "postfix": false, "binop": null }, - "start": 654, - "end": 655, + "start": 628, + "end": 629, "loc": { "start": { "line": 27, @@ -6803,8 +8231,8 @@ "binop": null, "updateContext": null }, - "start": 655, - "end": 656, + "start": 629, + "end": 630, "loc": { "start": { "line": 27, @@ -6831,8 +8259,8 @@ "updateContext": null }, "value": "const", - "start": 662, - "end": 667, + "start": 636, + "end": 641, "loc": { "start": { "line": 29, @@ -6857,8 +8285,8 @@ "binop": null }, "value": "tree", - "start": 668, - "end": 672, + "start": 642, + "end": 646, "loc": { "start": { "line": 29, @@ -6884,8 +8312,8 @@ "updateContext": null }, "value": "=", - "start": 673, - "end": 674, + "start": 647, + "end": 648, "loc": { "start": { "line": 29, @@ -6910,8 +8338,8 @@ "binop": null }, "value": "json2AST", - "start": 675, - "end": 683, + "start": 649, + "end": 657, "loc": { "start": { "line": 29, @@ -6935,8 +8363,8 @@ "postfix": false, "binop": null }, - "start": 683, - "end": 684, + "start": 657, + "end": 658, "loc": { "start": { "line": 29, @@ -6961,8 +8389,8 @@ "binop": null }, "value": "json", - "start": 684, - "end": 688, + "start": 658, + "end": 662, "loc": { "start": { "line": 29, @@ -6986,8 +8414,8 @@ "postfix": false, "binop": null }, - "start": 688, - "end": 689, + "start": 662, + "end": 663, "loc": { "start": { "line": 29, @@ -7012,8 +8440,8 @@ "binop": null, "updateContext": null }, - "start": 689, - "end": 690, + "start": 663, + "end": 664, "loc": { "start": { "line": 29, @@ -7040,8 +8468,8 @@ "updateContext": null }, "value": "return", - "start": 696, - "end": 702, + "start": 670, + "end": 676, "loc": { "start": { "line": 31, @@ -7066,8 +8494,8 @@ "binop": null }, "value": "Eggvm", - "start": 703, - "end": 708, + "start": 677, + "end": 682, "loc": { "start": { "line": 31, @@ -7092,8 +8520,8 @@ "binop": null, "updateContext": null }, - "start": 708, - "end": 709, + "start": 682, + "end": 683, "loc": { "start": { "line": 31, @@ -7118,8 +8546,8 @@ "binop": null }, "value": "eval", - "start": 709, - "end": 713, + "start": 683, + "end": 687, "loc": { "start": { "line": 31, @@ -7143,8 +8571,8 @@ "postfix": false, "binop": null }, - "start": 713, - "end": 714, + "start": 687, + "end": 688, "loc": { "start": { "line": 31, @@ -7169,8 +8597,8 @@ "binop": null }, "value": "tree", - "start": 714, - "end": 718, + "start": 688, + "end": 692, "loc": { "start": { "line": 31, @@ -7194,8 +8622,8 @@ "postfix": false, "binop": null }, - "start": 718, - "end": 719, + "start": 692, + "end": 693, "loc": { "start": { "line": 31, @@ -7220,8 +8648,8 @@ "binop": null, "updateContext": null }, - "start": 719, - "end": 720, + "start": 693, + "end": 694, "loc": { "start": { "line": 31, @@ -7245,8 +8673,8 @@ "postfix": false, "binop": null }, - "start": 723, - "end": 724, + "start": 697, + "end": 698, "loc": { "start": { "line": 32, @@ -7271,8 +8699,8 @@ "binop": null }, "value": "static", - "start": 728, - "end": 734, + "start": 702, + "end": 708, "loc": { "start": { "line": 34, @@ -7297,8 +8725,8 @@ "binop": null }, "value": "eval", - "start": 735, - "end": 739, + "start": 709, + "end": 713, "loc": { "start": { "line": 34, @@ -7322,8 +8750,8 @@ "postfix": false, "binop": null }, - "start": 739, - "end": 740, + "start": 713, + "end": 714, "loc": { "start": { "line": 34, @@ -7348,8 +8776,8 @@ "binop": null }, "value": "tree", - "start": 740, - "end": 744, + "start": 714, + "end": 718, "loc": { "start": { "line": 34, @@ -7374,8 +8802,8 @@ "binop": null, "updateContext": null }, - "start": 744, - "end": 745, + "start": 718, + "end": 719, "loc": { "start": { "line": 34, @@ -7400,8 +8828,8 @@ "binop": null }, "value": "env", - "start": 746, - "end": 749, + "start": 720, + "end": 723, "loc": { "start": { "line": 34, @@ -7425,8 +8853,8 @@ "postfix": false, "binop": null }, - "start": 749, - "end": 750, + "start": 723, + "end": 724, "loc": { "start": { "line": 34, @@ -7450,8 +8878,8 @@ "postfix": false, "binop": null }, - "start": 751, - "end": 752, + "start": 725, + "end": 726, "loc": { "start": { "line": 34, @@ -7466,8 +8894,8 @@ { "type": "CommentLine", "value": " Create a new env if not already defined on parameters", - "start": 757, - "end": 813, + "start": 731, + "end": 787, "loc": { "start": { "line": 35, @@ -7494,8 +8922,8 @@ "updateContext": null }, "value": "if", - "start": 818, - "end": 820, + "start": 792, + "end": 794, "loc": { "start": { "line": 36, @@ -7519,8 +8947,8 @@ "postfix": false, "binop": null }, - "start": 821, - "end": 822, + "start": 795, + "end": 796, "loc": { "start": { "line": 36, @@ -7545,8 +8973,8 @@ "binop": null }, "value": "env", - "start": 822, - "end": 825, + "start": 796, + "end": 799, "loc": { "start": { "line": 36, @@ -7572,8 +9000,8 @@ "updateContext": null }, "value": "===", - "start": 826, - "end": 829, + "start": 800, + "end": 803, "loc": { "start": { "line": 36, @@ -7598,8 +9026,8 @@ "binop": null }, "value": "undefined", - "start": 830, - "end": 839, + "start": 804, + "end": 813, "loc": { "start": { "line": 36, @@ -7625,8 +9053,8 @@ "updateContext": null }, "value": "||", - "start": 840, - "end": 842, + "start": 814, + "end": 816, "loc": { "start": { "line": 36, @@ -7651,8 +9079,8 @@ "binop": null }, "value": "env", - "start": 843, - "end": 846, + "start": 817, + "end": 820, "loc": { "start": { "line": 36, @@ -7678,8 +9106,8 @@ "updateContext": null }, "value": "===", - "start": 847, - "end": 850, + "start": 821, + "end": 824, "loc": { "start": { "line": 36, @@ -7706,8 +9134,8 @@ "updateContext": null }, "value": "null", - "start": 851, - "end": 855, + "start": 825, + "end": 829, "loc": { "start": { "line": 36, @@ -7731,8 +9159,8 @@ "postfix": false, "binop": null }, - "start": 855, - "end": 856, + "start": 829, + "end": 830, "loc": { "start": { "line": 36, @@ -7756,8 +9184,8 @@ "postfix": false, "binop": null }, - "start": 857, - "end": 858, + "start": 831, + "end": 832, "loc": { "start": { "line": 36, @@ -7782,8 +9210,8 @@ "binop": null }, "value": "env", - "start": 865, - "end": 868, + "start": 839, + "end": 842, "loc": { "start": { "line": 37, @@ -7809,8 +9237,8 @@ "updateContext": null }, "value": "=", - "start": 869, - "end": 870, + "start": 843, + "end": 844, "loc": { "start": { "line": 37, @@ -7835,8 +9263,8 @@ "binop": null }, "value": "Object", - "start": 871, - "end": 877, + "start": 845, + "end": 851, "loc": { "start": { "line": 37, @@ -7861,8 +9289,8 @@ "binop": null, "updateContext": null }, - "start": 877, - "end": 878, + "start": 851, + "end": 852, "loc": { "start": { "line": 37, @@ -7887,8 +9315,8 @@ "binop": null }, "value": "create", - "start": 878, - "end": 884, + "start": 852, + "end": 858, "loc": { "start": { "line": 37, @@ -7912,8 +9340,8 @@ "postfix": false, "binop": null }, - "start": 884, - "end": 885, + "start": 858, + "end": 859, "loc": { "start": { "line": 37, @@ -7938,8 +9366,8 @@ "binop": null }, "value": "TopEnv", - "start": 885, - "end": 891, + "start": 859, + "end": 865, "loc": { "start": { "line": 37, @@ -7963,8 +9391,8 @@ "postfix": false, "binop": null }, - "start": 891, - "end": 892, + "start": 865, + "end": 866, "loc": { "start": { "line": 37, @@ -7989,8 +9417,8 @@ "binop": null, "updateContext": null }, - "start": 892, - "end": 893, + "start": 866, + "end": 867, "loc": { "start": { "line": 37, @@ -8014,8 +9442,8 @@ "postfix": false, "binop": null }, - "start": 898, - "end": 899, + "start": 872, + "end": 873, "loc": { "start": { "line": 38, @@ -8042,8 +9470,8 @@ "updateContext": null }, "value": "return", - "start": 905, - "end": 911, + "start": 879, + "end": 885, "loc": { "start": { "line": 40, @@ -8068,8 +9496,8 @@ "binop": null }, "value": "tree", - "start": 912, - "end": 916, + "start": 886, + "end": 890, "loc": { "start": { "line": 40, @@ -8095,8 +9523,8 @@ "updateContext": null }, "value": "!==", - "start": 917, - "end": 920, + "start": 891, + "end": 894, "loc": { "start": { "line": 40, @@ -8123,8 +9551,8 @@ "updateContext": null }, "value": "null", - "start": 921, - "end": 925, + "start": 895, + "end": 899, "loc": { "start": { "line": 40, @@ -8149,8 +9577,8 @@ "binop": null, "updateContext": null }, - "start": 926, - "end": 927, + "start": 900, + "end": 901, "loc": { "start": { "line": 40, @@ -8175,8 +9603,8 @@ "binop": null }, "value": "tree", - "start": 928, - "end": 932, + "start": 902, + "end": 906, "loc": { "start": { "line": 40, @@ -8201,8 +9629,8 @@ "binop": null, "updateContext": null }, - "start": 932, - "end": 933, + "start": 906, + "end": 907, "loc": { "start": { "line": 40, @@ -8227,8 +9655,8 @@ "binop": null }, "value": "evaluate", - "start": 933, - "end": 941, + "start": 907, + "end": 915, "loc": { "start": { "line": 40, @@ -8252,8 +9680,8 @@ "postfix": false, "binop": null }, - "start": 941, - "end": 942, + "start": 915, + "end": 916, "loc": { "start": { "line": 40, @@ -8278,8 +9706,8 @@ "binop": null }, "value": "env", - "start": 942, - "end": 945, + "start": 916, + "end": 919, "loc": { "start": { "line": 40, @@ -8303,8 +9731,8 @@ "postfix": false, "binop": null }, - "start": 945, - "end": 946, + "start": 919, + "end": 920, "loc": { "start": { "line": 40, @@ -8329,8 +9757,8 @@ "binop": null, "updateContext": null }, - "start": 947, - "end": 948, + "start": 921, + "end": 922, "loc": { "start": { "line": 40, @@ -8357,8 +9785,8 @@ "updateContext": null }, "value": "null", - "start": 949, - "end": 953, + "start": 923, + "end": 927, "loc": { "start": { "line": 40, @@ -8383,8 +9811,8 @@ "binop": null, "updateContext": null }, - "start": 953, - "end": 954, + "start": 927, + "end": 928, "loc": { "start": { "line": 40, @@ -8408,8 +9836,8 @@ "postfix": false, "binop": null }, - "start": 957, - "end": 958, + "start": 931, + "end": 932, "loc": { "start": { "line": 41, @@ -8434,8 +9862,8 @@ "binop": null }, "value": "static", - "start": 962, - "end": 968, + "start": 936, + "end": 942, "loc": { "start": { "line": 43, @@ -8460,8 +9888,8 @@ "binop": null }, "value": "getEnvFromFile", - "start": 969, - "end": 983, + "start": 943, + "end": 957, "loc": { "start": { "line": 43, @@ -8485,8 +9913,8 @@ "postfix": false, "binop": null }, - "start": 983, - "end": 984, + "start": 957, + "end": 958, "loc": { "start": { "line": 43, @@ -8511,8 +9939,8 @@ "binop": null }, "value": "file", - "start": 984, - "end": 988, + "start": 958, + "end": 962, "loc": { "start": { "line": 43, @@ -8536,8 +9964,8 @@ "postfix": false, "binop": null }, - "start": 988, - "end": 989, + "start": 962, + "end": 963, "loc": { "start": { "line": 43, @@ -8561,8 +9989,8 @@ "postfix": false, "binop": null }, - "start": 990, - "end": 991, + "start": 964, + "end": 965, "loc": { "start": { "line": 43, @@ -8589,8 +10017,8 @@ "updateContext": null }, "value": "const", - "start": 996, - "end": 1001, + "start": 970, + "end": 975, "loc": { "start": { "line": 44, @@ -8615,8 +10043,8 @@ "binop": null }, "value": "env", - "start": 1002, - "end": 1005, + "start": 976, + "end": 979, "loc": { "start": { "line": 44, @@ -8642,8 +10070,8 @@ "updateContext": null }, "value": "=", - "start": 1006, - "end": 1007, + "start": 980, + "end": 981, "loc": { "start": { "line": 44, @@ -8668,8 +10096,8 @@ "binop": null }, "value": "Object", - "start": 1008, - "end": 1014, + "start": 982, + "end": 988, "loc": { "start": { "line": 44, @@ -8694,8 +10122,8 @@ "binop": null, "updateContext": null }, - "start": 1014, - "end": 1015, + "start": 988, + "end": 989, "loc": { "start": { "line": 44, @@ -8720,8 +10148,8 @@ "binop": null }, "value": "create", - "start": 1015, - "end": 1021, + "start": 989, + "end": 995, "loc": { "start": { "line": 44, @@ -8745,8 +10173,8 @@ "postfix": false, "binop": null }, - "start": 1021, - "end": 1022, + "start": 995, + "end": 996, "loc": { "start": { "line": 44, @@ -8771,8 +10199,8 @@ "binop": null }, "value": "TopEnv", - "start": 1022, - "end": 1028, + "start": 996, + "end": 1002, "loc": { "start": { "line": 44, @@ -8796,8 +10224,8 @@ "postfix": false, "binop": null }, - "start": 1028, - "end": 1029, + "start": 1002, + "end": 1003, "loc": { "start": { "line": 44, @@ -8822,8 +10250,8 @@ "binop": null, "updateContext": null }, - "start": 1029, - "end": 1030, + "start": 1003, + "end": 1004, "loc": { "start": { "line": 44, @@ -8850,8 +10278,8 @@ "updateContext": null }, "value": "const", - "start": 1035, - "end": 1040, + "start": 1009, + "end": 1014, "loc": { "start": { "line": 45, @@ -8876,8 +10304,8 @@ "binop": null }, "value": "tree", - "start": 1041, - "end": 1045, + "start": 1015, + "end": 1019, "loc": { "start": { "line": 45, @@ -8903,8 +10331,8 @@ "updateContext": null }, "value": "=", - "start": 1046, - "end": 1047, + "start": 1020, + "end": 1021, "loc": { "start": { "line": 45, @@ -8929,8 +10357,8 @@ "binop": null }, "value": "Parser", - "start": 1048, - "end": 1054, + "start": 1022, + "end": 1028, "loc": { "start": { "line": 45, @@ -8955,8 +10383,8 @@ "binop": null, "updateContext": null }, - "start": 1054, - "end": 1055, + "start": 1028, + "end": 1029, "loc": { "start": { "line": 45, @@ -8981,8 +10409,8 @@ "binop": null }, "value": "parseFromFile", - "start": 1055, - "end": 1068, + "start": 1029, + "end": 1042, "loc": { "start": { "line": 45, @@ -9006,8 +10434,8 @@ "postfix": false, "binop": null }, - "start": 1068, - "end": 1069, + "start": 1042, + "end": 1043, "loc": { "start": { "line": 45, @@ -9032,8 +10460,8 @@ "binop": null }, "value": "file", - "start": 1069, - "end": 1073, + "start": 1043, + "end": 1047, "loc": { "start": { "line": 45, @@ -9057,8 +10485,8 @@ "postfix": false, "binop": null }, - "start": 1073, - "end": 1074, + "start": 1047, + "end": 1048, "loc": { "start": { "line": 45, @@ -9083,8 +10511,8 @@ "binop": null, "updateContext": null }, - "start": 1074, - "end": 1075, + "start": 1048, + "end": 1049, "loc": { "start": { "line": 45, @@ -9109,8 +10537,8 @@ "binop": null }, "value": "Eggvm", - "start": 1080, - "end": 1085, + "start": 1054, + "end": 1059, "loc": { "start": { "line": 46, @@ -9135,8 +10563,8 @@ "binop": null, "updateContext": null }, - "start": 1085, - "end": 1086, + "start": 1059, + "end": 1060, "loc": { "start": { "line": 46, @@ -9161,8 +10589,8 @@ "binop": null }, "value": "eval", - "start": 1086, - "end": 1090, + "start": 1060, + "end": 1064, "loc": { "start": { "line": 46, @@ -9186,8 +10614,8 @@ "postfix": false, "binop": null }, - "start": 1090, - "end": 1091, + "start": 1064, + "end": 1065, "loc": { "start": { "line": 46, @@ -9212,8 +10640,8 @@ "binop": null }, "value": "tree", - "start": 1091, - "end": 1095, + "start": 1065, + "end": 1069, "loc": { "start": { "line": 46, @@ -9238,8 +10666,8 @@ "binop": null, "updateContext": null }, - "start": 1095, - "end": 1096, + "start": 1069, + "end": 1070, "loc": { "start": { "line": 46, @@ -9264,8 +10692,8 @@ "binop": null }, "value": "env", - "start": 1097, - "end": 1100, + "start": 1071, + "end": 1074, "loc": { "start": { "line": 46, @@ -9289,8 +10717,8 @@ "postfix": false, "binop": null }, - "start": 1100, - "end": 1101, + "start": 1074, + "end": 1075, "loc": { "start": { "line": 46, @@ -9315,8 +10743,8 @@ "binop": null, "updateContext": null }, - "start": 1101, - "end": 1102, + "start": 1075, + "end": 1076, "loc": { "start": { "line": 46, @@ -9343,8 +10771,8 @@ "updateContext": null }, "value": "return", - "start": 1108, - "end": 1114, + "start": 1082, + "end": 1088, "loc": { "start": { "line": 48, @@ -9369,8 +10797,8 @@ "binop": null }, "value": "env", - "start": 1115, - "end": 1118, + "start": 1089, + "end": 1092, "loc": { "start": { "line": 48, @@ -9395,8 +10823,8 @@ "binop": null, "updateContext": null }, - "start": 1118, - "end": 1119, + "start": 1092, + "end": 1093, "loc": { "start": { "line": 48, @@ -9420,8 +10848,8 @@ "postfix": false, "binop": null }, - "start": 1122, - "end": 1123, + "start": 1096, + "end": 1097, "loc": { "start": { "line": 49, @@ -9445,8 +10873,8 @@ "postfix": false, "binop": null }, - "start": 1124, - "end": 1125, + "start": 1098, + "end": 1099, "loc": { "start": { "line": 50, @@ -9460,33 +10888,8 @@ }, { "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "module", - "start": 1127, - "end": 1133, - "loc": { - "start": { - "line": 52, - "column": 0 - }, - "end": { - "line": 52, - "column": 6 - } - } - }, - { - "type": { - "label": ".", + "label": "export", + "keyword": "export", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, @@ -9497,69 +10900,17 @@ "binop": null, "updateContext": null }, - "start": 1133, - "end": 1134, - "loc": { - "start": { - "line": 52, - "column": 6 - }, - "end": { - "line": 52, - "column": 7 - } - } - }, - { - "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "exports", - "start": 1134, - "end": 1141, - "loc": { - "start": { - "line": 52, - "column": 7 - }, - "end": { - "line": 52, - "column": 14 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 1142, - "end": 1143, + "value": "export", + "start": 1101, + "end": 1107, "loc": { "start": { "line": 52, - "column": 15 + "column": 0 }, "end": { "line": 52, - "column": 16 + "column": 6 } } }, @@ -9575,16 +10926,16 @@ "postfix": false, "binop": null }, - "start": 1144, - "end": 1145, + "start": 1108, + "end": 1109, "loc": { "start": { "line": 52, - "column": 17 + "column": 7 }, "end": { "line": 52, - "column": 18 + "column": 8 } } }, @@ -9601,16 +10952,16 @@ "binop": null }, "value": "Eggvm", - "start": 1148, - "end": 1153, + "start": 1110, + "end": 1115, "loc": { "start": { - "line": 53, - "column": 2 + "line": 52, + "column": 9 }, "end": { - "line": 53, - "column": 7 + "line": 52, + "column": 14 } } }, @@ -9626,16 +10977,16 @@ "postfix": false, "binop": null }, - "start": 1154, - "end": 1155, + "start": 1116, + "end": 1117, "loc": { "start": { - "line": 54, - "column": 0 + "line": 52, + "column": 15 }, "end": { - "line": 54, - "column": 1 + "line": 52, + "column": 16 } } }, @@ -9652,16 +11003,16 @@ "binop": null, "updateContext": null }, - "start": 1155, - "end": 1156, + "start": 1117, + "end": 1118, "loc": { "start": { - "line": 54, - "column": 1 + "line": 52, + "column": 16 }, "end": { - "line": 54, - "column": 2 + "line": 52, + "column": 17 } } }, @@ -9678,15 +11029,15 @@ "binop": null, "updateContext": null }, - "start": 1157, - "end": 1157, + "start": 1119, + "end": 1119, "loc": { "start": { - "line": 55, + "line": 53, "column": 0 }, "end": { - "line": 55, + "line": 53, "column": 0 } } diff --git a/docs/ast/source/interp/environment.js.json b/docs/ast/source/interp/environment.js.json index 15b9e89..4e04846 100644 --- a/docs/ast/source/interp/environment.js.json +++ b/docs/ast/source/interp/environment.js.json @@ -1,37 +1,37 @@ { "type": "File", "start": 0, - "end": 107, + "end": 90, "loc": { "start": { "line": 1, "column": 0 }, "end": { - "line": 7, + "line": 5, "column": 0 } }, "program": { "type": "Program", "start": 0, - "end": 107, + "end": 90, "loc": { "start": { "line": 1, "column": 0 }, "end": { - "line": 7, + "line": 5, "column": 0 } }, "sourceType": "module", "body": [ { - "type": "VariableDeclaration", + "type": "ImportDeclaration", "start": 0, - "end": 58, + "end": 53, "loc": { "start": { "line": 1, @@ -39,416 +39,246 @@ }, "end": { "line": 1, - "column": 58 + "column": 53 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 6, - "end": 57, + "type": "ImportSpecifier", + "start": 9, + "end": 21, "loc": { "start": { "line": 1, - "column": 6 + "column": 9 }, "end": { "line": 1, - "column": 57 + "column": 21 } }, - "id": { - "type": "ObjectPattern", - "start": 6, - "end": 30, + "imported": { + "type": "Identifier", + "start": 9, + "end": 21, "loc": { "start": { "line": 1, - "column": 6 + "column": 9 }, "end": { "line": 1, - "column": 30 - } + "column": 21 + }, + "identifierName": "SpecialForms" }, - "properties": [ - { - "type": "ObjectProperty", - "start": 8, - "end": 20, - "loc": { - "start": { - "line": 1, - "column": 8 - }, - "end": { - "line": 1, - "column": 20 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 8, - "end": 20, - "loc": { - "start": { - "line": 1, - "column": 8 - }, - "end": { - "line": 1, - "column": 20 - }, - "identifierName": "SpecialForms" - }, - "name": "SpecialForms" - }, - "value": { - "type": "Identifier", - "start": 8, - "end": 20, - "loc": { - "start": { - "line": 1, - "column": 8 - }, - "end": { - "line": 1, - "column": 20 - }, - "identifierName": "SpecialForms" - }, - "name": "SpecialForms" - }, - "extra": { - "shorthand": true - } + "name": "SpecialForms" + }, + "local": { + "type": "Identifier", + "start": 9, + "end": 21, + "loc": { + "start": { + "line": 1, + "column": 9 + }, + "end": { + "line": 1, + "column": 21 }, - { - "type": "ObjectProperty", - "start": 22, - "end": 28, - "loc": { - "start": { - "line": 1, - "column": 22 - }, - "end": { - "line": 1, - "column": 28 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 22, - "end": 28, - "loc": { - "start": { - "line": 1, - "column": 22 - }, - "end": { - "line": 1, - "column": 28 - }, - "identifierName": "TopEnv" - }, - "name": "TopEnv" - }, - "value": { - "type": "Identifier", - "start": 22, - "end": 28, - "loc": { - "start": { - "line": 1, - "column": 22 - }, - "end": { - "line": 1, - "column": 28 - }, - "identifierName": "TopEnv" - }, - "name": "TopEnv" - }, - "extra": { - "shorthand": true - } - } - ] + "identifierName": "SpecialForms" + }, + "name": "SpecialForms" + } + }, + { + "type": "ImportSpecifier", + "start": 23, + "end": 29, + "loc": { + "start": { + "line": 1, + "column": 23 + }, + "end": { + "line": 1, + "column": 29 + } }, - "init": { - "type": "CallExpression", - "start": 33, - "end": 57, + "imported": { + "type": "Identifier", + "start": 23, + "end": 29, "loc": { "start": { "line": 1, - "column": 33 + "column": 23 }, "end": { "line": 1, - "column": 57 - } + "column": 29 + }, + "identifierName": "TopEnv" }, - "callee": { - "type": "Identifier", - "start": 33, - "end": 40, - "loc": { - "start": { - "line": 1, - "column": 33 - }, - "end": { - "line": 1, - "column": 40 - }, - "identifierName": "require" + "name": "TopEnv" + }, + "local": { + "type": "Identifier", + "start": 23, + "end": 29, + "loc": { + "start": { + "line": 1, + "column": 23 + }, + "end": { + "line": 1, + "column": 29 }, - "name": "require" + "identifierName": "TopEnv" }, - "arguments": [ - { - "type": "StringLiteral", - "start": 41, - "end": 56, - "loc": { - "start": { - "line": 1, - "column": 41 - }, - "end": { - "line": 1, - "column": 56 - } - }, - "extra": { - "rawValue": "./registry.js", - "raw": "\"./registry.js\"" - }, - "value": "./registry.js" - } - ] + "name": "TopEnv" } } ], - "kind": "const" + "source": { + "type": "StringLiteral", + "start": 37, + "end": 52, + "loc": { + "start": { + "line": 1, + "column": 37 + }, + "end": { + "line": 1, + "column": 52 + } + }, + "extra": { + "rawValue": "./registry.js", + "raw": "\"./registry.js\"" + }, + "value": "./registry.js" + } }, { - "type": "ExpressionStatement", - "start": 60, - "end": 106, + "type": "ExportNamedDeclaration", + "start": 55, + "end": 89, "loc": { "start": { "line": 3, "column": 0 }, "end": { - "line": 6, - "column": 2 + "line": 4, + "column": 11 } }, - "expression": { - "type": "AssignmentExpression", - "start": 60, - "end": 105, - "loc": { - "start": { - "line": 3, - "column": 0 - }, - "end": { - "line": 6, - "column": 1 - } - }, - "operator": "=", - "left": { - "type": "MemberExpression", - "start": 60, - "end": 74, + "declaration": null, + "specifiers": [ + { + "type": "ExportSpecifier", + "start": 64, + "end": 76, "loc": { "start": { "line": 3, - "column": 0 + "column": 9 }, "end": { "line": 3, - "column": 14 + "column": 21 } }, - "object": { + "local": { "type": "Identifier", - "start": 60, - "end": 66, + "start": 64, + "end": 76, "loc": { "start": { "line": 3, - "column": 0 + "column": 9 }, "end": { "line": 3, - "column": 6 + "column": 21 }, - "identifierName": "module" + "identifierName": "SpecialForms" }, - "name": "module" + "name": "SpecialForms" }, - "property": { + "exported": { "type": "Identifier", - "start": 67, - "end": 74, + "start": 64, + "end": 76, "loc": { "start": { "line": 3, - "column": 7 + "column": 9 }, "end": { "line": 3, - "column": 14 + "column": 21 }, - "identifierName": "exports" + "identifierName": "SpecialForms" }, - "name": "exports" - }, - "computed": false + "name": "SpecialForms" + } }, - "right": { - "type": "ObjectExpression", - "start": 77, - "end": 105, + { + "type": "ExportSpecifier", + "start": 80, + "end": 86, "loc": { "start": { - "line": 3, - "column": 17 + "line": 4, + "column": 2 }, "end": { - "line": 6, - "column": 1 + "line": 4, + "column": 8 } }, - "properties": [ - { - "type": "ObjectProperty", - "start": 81, - "end": 93, - "loc": { - "start": { - "line": 4, - "column": 2 - }, - "end": { - "line": 4, - "column": 14 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 81, - "end": 93, - "loc": { - "start": { - "line": 4, - "column": 2 - }, - "end": { - "line": 4, - "column": 14 - }, - "identifierName": "SpecialForms" - }, - "name": "SpecialForms" + "local": { + "type": "Identifier", + "start": 80, + "end": 86, + "loc": { + "start": { + "line": 4, + "column": 2 }, - "value": { - "type": "Identifier", - "start": 81, - "end": 93, - "loc": { - "start": { - "line": 4, - "column": 2 - }, - "end": { - "line": 4, - "column": 14 - }, - "identifierName": "SpecialForms" - }, - "name": "SpecialForms" + "end": { + "line": 4, + "column": 8 }, - "extra": { - "shorthand": true - } + "identifierName": "TopEnv" }, - { - "type": "ObjectProperty", - "start": 97, - "end": 103, - "loc": { - "start": { - "line": 5, - "column": 2 - }, - "end": { - "line": 5, - "column": 8 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 97, - "end": 103, - "loc": { - "start": { - "line": 5, - "column": 2 - }, - "end": { - "line": 5, - "column": 8 - }, - "identifierName": "TopEnv" - }, - "name": "TopEnv" + "name": "TopEnv" + }, + "exported": { + "type": "Identifier", + "start": 80, + "end": 86, + "loc": { + "start": { + "line": 4, + "column": 2 }, - "value": { - "type": "Identifier", - "start": 97, - "end": 103, - "loc": { - "start": { - "line": 5, - "column": 2 - }, - "end": { - "line": 5, - "column": 8 - }, - "identifierName": "TopEnv" - }, - "name": "TopEnv" + "end": { + "line": 4, + "column": 8 }, - "extra": { - "shorthand": true - } - } - ] + "identifierName": "TopEnv" + }, + "name": "TopEnv" + } } - } + ], + "source": null } ], "directives": [] @@ -457,10 +287,10 @@ "tokens": [ { "type": { - "label": "const", - "keyword": "const", + "label": "import", + "keyword": "import", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -469,9 +299,9 @@ "binop": null, "updateContext": null }, - "value": "const", + "value": "import", "start": 0, - "end": 5, + "end": 6, "loc": { "start": { "line": 1, @@ -479,7 +309,7 @@ }, "end": { "line": 1, - "column": 5 + "column": 6 } } }, @@ -495,16 +325,16 @@ "postfix": false, "binop": null }, - "start": 6, - "end": 7, + "start": 7, + "end": 8, "loc": { "start": { "line": 1, - "column": 6 + "column": 7 }, "end": { "line": 1, - "column": 7 + "column": 8 } } }, @@ -521,16 +351,16 @@ "binop": null }, "value": "SpecialForms", - "start": 8, - "end": 20, + "start": 9, + "end": 21, "loc": { "start": { "line": 1, - "column": 8 + "column": 9 }, "end": { "line": 1, - "column": 20 + "column": 21 } } }, @@ -547,16 +377,16 @@ "binop": null, "updateContext": null }, - "start": 20, - "end": 21, + "start": 21, + "end": 22, "loc": { "start": { "line": 1, - "column": 20 + "column": 21 }, "end": { "line": 1, - "column": 21 + "column": 22 } } }, @@ -573,16 +403,16 @@ "binop": null }, "value": "TopEnv", - "start": 22, - "end": 28, + "start": 23, + "end": 29, "loc": { "start": { "line": 1, - "column": 22 + "column": 23 }, "end": { "line": 1, - "column": 28 + "column": 29 } } }, @@ -598,43 +428,16 @@ "postfix": false, "binop": null }, - "start": 29, - "end": 30, + "start": 30, + "end": 31, "loc": { "start": { - "line": 1, - "column": 29 - }, - "end": { "line": 1, "column": 30 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 31, - "end": 32, - "loc": { - "start": { - "line": 1, - "column": 31 }, "end": { "line": 1, - "column": 32 + "column": 31 } } }, @@ -650,42 +453,17 @@ "postfix": false, "binop": null }, - "value": "require", - "start": 33, - "end": 40, - "loc": { - "start": { - "line": 1, - "column": 33 - }, - "end": { - "line": 1, - "column": 40 - } - } - }, - { - "type": { - "label": "(", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 40, - "end": 41, + "value": "from", + "start": 32, + "end": 36, "loc": { "start": { "line": 1, - "column": 40 + "column": 32 }, "end": { "line": 1, - "column": 41 + "column": 36 } } }, @@ -703,41 +481,16 @@ "updateContext": null }, "value": "./registry.js", - "start": 41, - "end": 56, + "start": 37, + "end": 52, "loc": { "start": { "line": 1, - "column": 41 + "column": 37 }, "end": { "line": 1, - "column": 56 - } - } - }, - { - "type": { - "label": ")", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 56, - "end": 57, - "loc": { - "start": { - "line": 1, - "column": 56 - }, - "end": { - "line": 1, - "column": 57 + "column": 52 } } }, @@ -754,48 +507,23 @@ "binop": null, "updateContext": null }, - "start": 57, - "end": 58, + "start": 52, + "end": 53, "loc": { "start": { "line": 1, - "column": 57 + "column": 52 }, "end": { "line": 1, - "column": 58 + "column": 53 } } }, { "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "module", - "start": 60, - "end": 66, - "loc": { - "start": { - "line": 3, - "column": 0 - }, - "end": { - "line": 3, - "column": 6 - } - } - }, - { - "type": { - "label": ".", + "label": "export", + "keyword": "export", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, @@ -806,69 +534,17 @@ "binop": null, "updateContext": null }, - "start": 66, - "end": 67, - "loc": { - "start": { - "line": 3, - "column": 6 - }, - "end": { - "line": 3, - "column": 7 - } - } - }, - { - "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "exports", - "start": 67, - "end": 74, - "loc": { - "start": { - "line": 3, - "column": 7 - }, - "end": { - "line": 3, - "column": 14 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 75, - "end": 76, + "value": "export", + "start": 55, + "end": 61, "loc": { "start": { "line": 3, - "column": 15 + "column": 0 }, "end": { "line": 3, - "column": 16 + "column": 6 } } }, @@ -884,16 +560,16 @@ "postfix": false, "binop": null }, - "start": 77, - "end": 78, + "start": 62, + "end": 63, "loc": { "start": { "line": 3, - "column": 17 + "column": 7 }, "end": { "line": 3, - "column": 18 + "column": 8 } } }, @@ -910,16 +586,16 @@ "binop": null }, "value": "SpecialForms", - "start": 81, - "end": 93, + "start": 64, + "end": 76, "loc": { "start": { - "line": 4, - "column": 2 + "line": 3, + "column": 9 }, "end": { - "line": 4, - "column": 14 + "line": 3, + "column": 21 } } }, @@ -936,16 +612,16 @@ "binop": null, "updateContext": null }, - "start": 93, - "end": 94, + "start": 76, + "end": 77, "loc": { "start": { - "line": 4, - "column": 14 + "line": 3, + "column": 21 }, "end": { - "line": 4, - "column": 15 + "line": 3, + "column": 22 } } }, @@ -962,15 +638,15 @@ "binop": null }, "value": "TopEnv", - "start": 97, - "end": 103, + "start": 80, + "end": 86, "loc": { "start": { - "line": 5, + "line": 4, "column": 2 }, "end": { - "line": 5, + "line": 4, "column": 8 } } @@ -987,16 +663,16 @@ "postfix": false, "binop": null }, - "start": 104, - "end": 105, + "start": 87, + "end": 88, "loc": { "start": { - "line": 6, - "column": 0 + "line": 4, + "column": 9 }, "end": { - "line": 6, - "column": 1 + "line": 4, + "column": 10 } } }, @@ -1013,16 +689,16 @@ "binop": null, "updateContext": null }, - "start": 105, - "end": 106, + "start": 88, + "end": 89, "loc": { "start": { - "line": 6, - "column": 1 + "line": 4, + "column": 10 }, "end": { - "line": 6, - "column": 2 + "line": 4, + "column": 11 } } }, @@ -1039,15 +715,15 @@ "binop": null, "updateContext": null }, - "start": 107, - "end": 107, + "start": 90, + "end": 90, "loc": { "start": { - "line": 7, + "line": 5, "column": 0 }, "end": { - "line": 7, + "line": 5, "column": 0 } } diff --git a/docs/ast/source/interp/index.js.json b/docs/ast/source/interp/index.js.json index fc2494c..44b3f6f 100644 --- a/docs/ast/source/interp/index.js.json +++ b/docs/ast/source/interp/index.js.json @@ -1,37 +1,37 @@ { "type": "File", "start": 0, - "end": 166, + "end": 144, "loc": { "start": { "line": 1, "column": 0 }, "end": { - "line": 11, + "line": 9, "column": 0 } }, "program": { "type": "Program", "start": 0, - "end": 166, + "end": 144, "loc": { "start": { "line": 1, "column": 0 }, "end": { - "line": 11, + "line": 9, "column": 0 } }, "sourceType": "module", "body": [ { - "type": "VariableDeclaration", + "type": "ImportDeclaration", "start": 0, - "end": 40, + "end": 35, "loc": { "start": { "line": 1, @@ -39,158 +39,85 @@ }, "end": { "line": 1, - "column": 40 + "column": 35 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 6, - "end": 39, + "type": "ImportSpecifier", + "start": 9, + "end": 14, "loc": { "start": { "line": 1, - "column": 6 + "column": 9 }, "end": { "line": 1, - "column": 39 + "column": 14 } }, - "id": { - "type": "ObjectPattern", - "start": 6, - "end": 15, + "imported": { + "type": "Identifier", + "start": 9, + "end": 14, "loc": { "start": { "line": 1, - "column": 6 + "column": 9 }, "end": { "line": 1, - "column": 15 - } + "column": 14 + }, + "identifierName": "Eggvm" }, - "properties": [ - { - "type": "ObjectProperty", - "start": 8, - "end": 13, - "loc": { - "start": { - "line": 1, - "column": 8 - }, - "end": { - "line": 1, - "column": 13 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 8, - "end": 13, - "loc": { - "start": { - "line": 1, - "column": 8 - }, - "end": { - "line": 1, - "column": 13 - }, - "identifierName": "Eggvm" - }, - "name": "Eggvm" - }, - "value": { - "type": "Identifier", - "start": 8, - "end": 13, - "loc": { - "start": { - "line": 1, - "column": 8 - }, - "end": { - "line": 1, - "column": 13 - }, - "identifierName": "Eggvm" - }, - "name": "Eggvm" - }, - "extra": { - "shorthand": true - } - } - ] + "name": "Eggvm" }, - "init": { - "type": "CallExpression", - "start": 18, - "end": 39, + "local": { + "type": "Identifier", + "start": 9, + "end": 14, "loc": { "start": { "line": 1, - "column": 18 + "column": 9 }, "end": { "line": 1, - "column": 39 - } - }, - "callee": { - "type": "Identifier", - "start": 18, - "end": 25, - "loc": { - "start": { - "line": 1, - "column": 18 - }, - "end": { - "line": 1, - "column": 25 - }, - "identifierName": "require" + "column": 14 }, - "name": "require" + "identifierName": "Eggvm" }, - "arguments": [ - { - "type": "StringLiteral", - "start": 26, - "end": 38, - "loc": { - "start": { - "line": 1, - "column": 26 - }, - "end": { - "line": 1, - "column": 38 - } - }, - "extra": { - "rawValue": "./eggvm.js", - "raw": "\"./eggvm.js\"" - }, - "value": "./eggvm.js" - } - ] + "name": "Eggvm" } } ], - "kind": "const" + "source": { + "type": "StringLiteral", + "start": 22, + "end": 34, + "loc": { + "start": { + "line": 1, + "column": 22 + }, + "end": { + "line": 1, + "column": 34 + } + }, + "extra": { + "rawValue": "./eggvm.js", + "raw": "\"./eggvm.js\"" + }, + "value": "./eggvm.js" + } }, { - "type": "VariableDeclaration", - "start": 41, - "end": 99, + "type": "ImportDeclaration", + "start": 36, + "end": 89, "loc": { "start": { "line": 2, @@ -198,691 +125,491 @@ }, "end": { "line": 2, - "column": 58 + "column": 53 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 47, - "end": 98, + "type": "ImportSpecifier", + "start": 45, + "end": 50, "loc": { "start": { "line": 2, - "column": 6 + "column": 9 }, "end": { "line": 2, - "column": 57 + "column": 14 } }, - "id": { - "type": "ObjectPattern", - "start": 47, - "end": 76, + "imported": { + "type": "Identifier", + "start": 45, + "end": 50, "loc": { "start": { "line": 2, - "column": 6 + "column": 9 + }, + "end": { + "line": 2, + "column": 14 + }, + "identifierName": "Value" + }, + "name": "Value" + }, + "local": { + "type": "Identifier", + "start": 45, + "end": 50, + "loc": { + "start": { + "line": 2, + "column": 9 + }, + "end": { + "line": 2, + "column": 14 + }, + "identifierName": "Value" + }, + "name": "Value" + } + }, + { + "type": "ImportSpecifier", + "start": 52, + "end": 56, + "loc": { + "start": { + "line": 2, + "column": 16 + }, + "end": { + "line": 2, + "column": 20 + } + }, + "imported": { + "type": "Identifier", + "start": 52, + "end": 56, + "loc": { + "start": { + "line": 2, + "column": 16 }, "end": { "line": 2, - "column": 35 - } + "column": 20 + }, + "identifierName": "Word" }, - "properties": [ - { - "type": "ObjectProperty", - "start": 49, - "end": 54, - "loc": { - "start": { - "line": 2, - "column": 8 - }, - "end": { - "line": 2, - "column": 13 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 49, - "end": 54, - "loc": { - "start": { - "line": 2, - "column": 8 - }, - "end": { - "line": 2, - "column": 13 - }, - "identifierName": "Value" - }, - "name": "Value" - }, - "value": { - "type": "Identifier", - "start": 49, - "end": 54, - "loc": { - "start": { - "line": 2, - "column": 8 - }, - "end": { - "line": 2, - "column": 13 - }, - "identifierName": "Value" - }, - "name": "Value" - }, - "extra": { - "shorthand": true - } + "name": "Word" + }, + "local": { + "type": "Identifier", + "start": 52, + "end": 56, + "loc": { + "start": { + "line": 2, + "column": 16 + }, + "end": { + "line": 2, + "column": 20 + }, + "identifierName": "Word" + }, + "name": "Word" + } + }, + { + "type": "ImportSpecifier", + "start": 58, + "end": 63, + "loc": { + "start": { + "line": 2, + "column": 22 + }, + "end": { + "line": 2, + "column": 27 + } + }, + "imported": { + "type": "Identifier", + "start": 58, + "end": 63, + "loc": { + "start": { + "line": 2, + "column": 22 }, - { - "type": "ObjectProperty", - "start": 56, - "end": 60, - "loc": { - "start": { - "line": 2, - "column": 15 - }, - "end": { - "line": 2, - "column": 19 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 56, - "end": 60, - "loc": { - "start": { - "line": 2, - "column": 15 - }, - "end": { - "line": 2, - "column": 19 - }, - "identifierName": "Word" - }, - "name": "Word" - }, - "value": { - "type": "Identifier", - "start": 56, - "end": 60, - "loc": { - "start": { - "line": 2, - "column": 15 - }, - "end": { - "line": 2, - "column": 19 - }, - "identifierName": "Word" - }, - "name": "Word" - }, - "extra": { - "shorthand": true - } + "end": { + "line": 2, + "column": 27 }, - { - "type": "ObjectProperty", - "start": 62, - "end": 67, - "loc": { - "start": { - "line": 2, - "column": 21 - }, - "end": { - "line": 2, - "column": 26 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 62, - "end": 67, - "loc": { - "start": { - "line": 2, - "column": 21 - }, - "end": { - "line": 2, - "column": 26 - }, - "identifierName": "Apply" - }, - "name": "Apply" - }, - "value": { - "type": "Identifier", - "start": 62, - "end": 67, - "loc": { - "start": { - "line": 2, - "column": 21 - }, - "end": { - "line": 2, - "column": 26 - }, - "identifierName": "Apply" - }, - "name": "Apply" - }, - "extra": { - "shorthand": true - } + "identifierName": "Apply" + }, + "name": "Apply" + }, + "local": { + "type": "Identifier", + "start": 58, + "end": 63, + "loc": { + "start": { + "line": 2, + "column": 22 }, - { - "type": "ObjectProperty", - "start": 69, - "end": 74, - "loc": { - "start": { - "line": 2, - "column": 28 - }, - "end": { - "line": 2, - "column": 33 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 69, - "end": 74, - "loc": { - "start": { - "line": 2, - "column": 28 - }, - "end": { - "line": 2, - "column": 33 - }, - "identifierName": "Regex" - }, - "name": "Regex" - }, - "value": { - "type": "Identifier", - "start": 69, - "end": 74, - "loc": { - "start": { - "line": 2, - "column": 28 - }, - "end": { - "line": 2, - "column": 33 - }, - "identifierName": "Regex" - }, - "name": "Regex" - }, - "extra": { - "shorthand": true - } - } - ] + "end": { + "line": 2, + "column": 27 + }, + "identifierName": "Apply" + }, + "name": "Apply" + } + }, + { + "type": "ImportSpecifier", + "start": 65, + "end": 70, + "loc": { + "start": { + "line": 2, + "column": 29 + }, + "end": { + "line": 2, + "column": 34 + } }, - "init": { - "type": "CallExpression", - "start": 79, - "end": 98, + "imported": { + "type": "Identifier", + "start": 65, + "end": 70, "loc": { "start": { "line": 2, - "column": 38 + "column": 29 }, "end": { "line": 2, - "column": 57 - } + "column": 34 + }, + "identifierName": "Regex" }, - "callee": { - "type": "Identifier", - "start": 79, - "end": 86, - "loc": { - "start": { - "line": 2, - "column": 38 - }, - "end": { - "line": 2, - "column": 45 - }, - "identifierName": "require" + "name": "Regex" + }, + "local": { + "type": "Identifier", + "start": 65, + "end": 70, + "loc": { + "start": { + "line": 2, + "column": 29 + }, + "end": { + "line": 2, + "column": 34 }, - "name": "require" + "identifierName": "Regex" }, - "arguments": [ - { - "type": "StringLiteral", - "start": 87, - "end": 97, - "loc": { - "start": { - "line": 2, - "column": 46 - }, - "end": { - "line": 2, - "column": 56 - } - }, - "extra": { - "rawValue": "./ast.js", - "raw": "\"./ast.js\"" - }, - "value": "./ast.js" - } - ] + "name": "Regex" } } ], - "kind": "const" + "source": { + "type": "StringLiteral", + "start": 78, + "end": 88, + "loc": { + "start": { + "line": 2, + "column": 42 + }, + "end": { + "line": 2, + "column": 52 + } + }, + "extra": { + "rawValue": "./ast.js", + "raw": "\"./ast.js\"" + }, + "value": "./ast.js" + } }, { - "type": "ExpressionStatement", - "start": 101, - "end": 165, + "type": "ExportNamedDeclaration", + "start": 91, + "end": 143, "loc": { "start": { "line": 4, "column": 0 }, "end": { - "line": 10, - "column": 2 + "line": 8, + "column": 10 } }, - "expression": { - "type": "AssignmentExpression", - "start": 101, - "end": 164, - "loc": { - "start": { - "line": 4, - "column": 0 - }, - "end": { - "line": 10, - "column": 1 - } - }, - "operator": "=", - "left": { - "type": "MemberExpression", - "start": 101, - "end": 115, + "declaration": null, + "specifiers": [ + { + "type": "ExportSpecifier", + "start": 100, + "end": 105, "loc": { "start": { "line": 4, - "column": 0 + "column": 9 }, "end": { "line": 4, "column": 14 } }, - "object": { + "local": { "type": "Identifier", - "start": 101, - "end": 107, + "start": 100, + "end": 105, "loc": { "start": { "line": 4, - "column": 0 + "column": 9 }, "end": { "line": 4, - "column": 6 + "column": 14 }, - "identifierName": "module" + "identifierName": "Eggvm" }, - "name": "module" + "name": "Eggvm" }, - "property": { + "exported": { "type": "Identifier", - "start": 108, - "end": 115, + "start": 100, + "end": 105, "loc": { "start": { "line": 4, - "column": 7 + "column": 9 }, "end": { "line": 4, "column": 14 }, - "identifierName": "exports" + "identifierName": "Eggvm" }, - "name": "exports" - }, - "computed": false + "name": "Eggvm" + } }, - "right": { - "type": "ObjectExpression", - "start": 118, - "end": 164, + { + "type": "ExportSpecifier", + "start": 109, + "end": 114, "loc": { "start": { - "line": 4, - "column": 17 + "line": 5, + "column": 2 }, "end": { - "line": 10, - "column": 1 + "line": 5, + "column": 7 } }, - "properties": [ - { - "type": "ObjectProperty", - "start": 122, - "end": 127, - "loc": { - "start": { - "line": 5, - "column": 2 - }, - "end": { - "line": 5, - "column": 7 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 122, - "end": 127, - "loc": { - "start": { - "line": 5, - "column": 2 - }, - "end": { - "line": 5, - "column": 7 - }, - "identifierName": "Eggvm" - }, - "name": "Eggvm" + "local": { + "type": "Identifier", + "start": 109, + "end": 114, + "loc": { + "start": { + "line": 5, + "column": 2 }, - "value": { - "type": "Identifier", - "start": 122, - "end": 127, - "loc": { - "start": { - "line": 5, - "column": 2 - }, - "end": { - "line": 5, - "column": 7 - }, - "identifierName": "Eggvm" - }, - "name": "Eggvm" + "end": { + "line": 5, + "column": 7 }, - "extra": { - "shorthand": true - } + "identifierName": "Value" }, - { - "type": "ObjectProperty", - "start": 131, - "end": 136, - "loc": { - "start": { - "line": 6, - "column": 2 - }, - "end": { - "line": 6, - "column": 7 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 131, - "end": 136, - "loc": { - "start": { - "line": 6, - "column": 2 - }, - "end": { - "line": 6, - "column": 7 - }, - "identifierName": "Value" - }, - "name": "Value" + "name": "Value" + }, + "exported": { + "type": "Identifier", + "start": 109, + "end": 114, + "loc": { + "start": { + "line": 5, + "column": 2 }, - "value": { - "type": "Identifier", - "start": 131, - "end": 136, - "loc": { - "start": { - "line": 6, - "column": 2 - }, - "end": { - "line": 6, - "column": 7 - }, - "identifierName": "Value" - }, - "name": "Value" + "end": { + "line": 5, + "column": 7 }, - "extra": { - "shorthand": true - } + "identifierName": "Value" }, - { - "type": "ObjectProperty", - "start": 140, - "end": 144, - "loc": { - "start": { - "line": 7, - "column": 2 - }, - "end": { - "line": 7, - "column": 6 - } + "name": "Value" + } + }, + { + "type": "ExportSpecifier", + "start": 118, + "end": 122, + "loc": { + "start": { + "line": 6, + "column": 2 + }, + "end": { + "line": 6, + "column": 6 + } + }, + "local": { + "type": "Identifier", + "start": 118, + "end": 122, + "loc": { + "start": { + "line": 6, + "column": 2 }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 140, - "end": 144, - "loc": { - "start": { - "line": 7, - "column": 2 - }, - "end": { - "line": 7, - "column": 6 - }, - "identifierName": "Word" - }, - "name": "Word" + "end": { + "line": 6, + "column": 6 }, - "value": { - "type": "Identifier", - "start": 140, - "end": 144, - "loc": { - "start": { - "line": 7, - "column": 2 - }, - "end": { - "line": 7, - "column": 6 - }, - "identifierName": "Word" - }, - "name": "Word" + "identifierName": "Word" + }, + "name": "Word" + }, + "exported": { + "type": "Identifier", + "start": 118, + "end": 122, + "loc": { + "start": { + "line": 6, + "column": 2 }, - "extra": { - "shorthand": true - } + "end": { + "line": 6, + "column": 6 + }, + "identifierName": "Word" + }, + "name": "Word" + } + }, + { + "type": "ExportSpecifier", + "start": 126, + "end": 131, + "loc": { + "start": { + "line": 7, + "column": 2 }, - { - "type": "ObjectProperty", - "start": 148, - "end": 153, - "loc": { - "start": { - "line": 8, - "column": 2 - }, - "end": { - "line": 8, - "column": 7 - } + "end": { + "line": 7, + "column": 7 + } + }, + "local": { + "type": "Identifier", + "start": 126, + "end": 131, + "loc": { + "start": { + "line": 7, + "column": 2 + }, + "end": { + "line": 7, + "column": 7 }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 148, - "end": 153, - "loc": { - "start": { - "line": 8, - "column": 2 - }, - "end": { - "line": 8, - "column": 7 - }, - "identifierName": "Apply" - }, - "name": "Apply" + "identifierName": "Apply" + }, + "name": "Apply" + }, + "exported": { + "type": "Identifier", + "start": 126, + "end": 131, + "loc": { + "start": { + "line": 7, + "column": 2 }, - "value": { - "type": "Identifier", - "start": 148, - "end": 153, - "loc": { - "start": { - "line": 8, - "column": 2 - }, - "end": { - "line": 8, - "column": 7 - }, - "identifierName": "Apply" - }, - "name": "Apply" + "end": { + "line": 7, + "column": 7 }, - "extra": { - "shorthand": true - } + "identifierName": "Apply" }, - { - "type": "ObjectProperty", - "start": 157, - "end": 162, - "loc": { - "start": { - "line": 9, - "column": 2 - }, - "end": { - "line": 9, - "column": 7 - } + "name": "Apply" + } + }, + { + "type": "ExportSpecifier", + "start": 135, + "end": 140, + "loc": { + "start": { + "line": 8, + "column": 2 + }, + "end": { + "line": 8, + "column": 7 + } + }, + "local": { + "type": "Identifier", + "start": 135, + "end": 140, + "loc": { + "start": { + "line": 8, + "column": 2 }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 157, - "end": 162, - "loc": { - "start": { - "line": 9, - "column": 2 - }, - "end": { - "line": 9, - "column": 7 - }, - "identifierName": "Regex" - }, - "name": "Regex" + "end": { + "line": 8, + "column": 7 }, - "value": { - "type": "Identifier", - "start": 157, - "end": 162, - "loc": { - "start": { - "line": 9, - "column": 2 - }, - "end": { - "line": 9, - "column": 7 - }, - "identifierName": "Regex" - }, - "name": "Regex" + "identifierName": "Regex" + }, + "name": "Regex" + }, + "exported": { + "type": "Identifier", + "start": 135, + "end": 140, + "loc": { + "start": { + "line": 8, + "column": 2 }, - "extra": { - "shorthand": true - } - } - ] + "end": { + "line": 8, + "column": 7 + }, + "identifierName": "Regex" + }, + "name": "Regex" + } } - } + ], + "source": null } ], "directives": [] @@ -891,10 +618,10 @@ "tokens": [ { "type": { - "label": "const", - "keyword": "const", + "label": "import", + "keyword": "import", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -903,9 +630,9 @@ "binop": null, "updateContext": null }, - "value": "const", + "value": "import", "start": 0, - "end": 5, + "end": 6, "loc": { "start": { "line": 1, @@ -913,7 +640,7 @@ }, "end": { "line": 1, - "column": 5 + "column": 6 } } }, @@ -929,16 +656,16 @@ "postfix": false, "binop": null }, - "start": 6, - "end": 7, + "start": 7, + "end": 8, "loc": { "start": { "line": 1, - "column": 6 + "column": 7 }, "end": { "line": 1, - "column": 7 + "column": 8 } } }, @@ -955,102 +682,24 @@ "binop": null }, "value": "Eggvm", - "start": 8, - "end": 13, + "start": 9, + "end": 14, "loc": { "start": { "line": 1, - "column": 8 + "column": 9 }, "end": { - "line": 1, - "column": 13 - } - } - }, - { - "type": { - "label": "}", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 14, - "end": 15, - "loc": { - "start": { "line": 1, "column": 14 - }, - "end": { - "line": 1, - "column": 15 } } }, { "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 16, - "end": 17, - "loc": { - "start": { - "line": 1, - "column": 16 - }, - "end": { - "line": 1, - "column": 17 - } - } - }, - { - "type": { - "label": "name", + "label": "}", "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "require", - "start": 18, - "end": 25, - "loc": { - "start": { - "line": 1, - "column": 18 - }, - "end": { - "line": 1, - "column": 25 - } - } - }, - { - "type": { - "label": "(", - "beforeExpr": true, - "startsExpr": true, + "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -1058,22 +707,22 @@ "postfix": false, "binop": null }, - "start": 25, - "end": 26, + "start": 15, + "end": 16, "loc": { "start": { "line": 1, - "column": 25 + "column": 15 }, "end": { "line": 1, - "column": 26 + "column": 16 } } }, { "type": { - "label": "string", + "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, @@ -1081,45 +730,46 @@ "isAssign": false, "prefix": false, "postfix": false, - "binop": null, - "updateContext": null + "binop": null }, - "value": "./eggvm.js", - "start": 26, - "end": 38, + "value": "from", + "start": 17, + "end": 21, "loc": { "start": { "line": 1, - "column": 26 + "column": 17 }, "end": { "line": 1, - "column": 38 + "column": 21 } } }, { "type": { - "label": ")", + "label": "string", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "start": 38, - "end": 39, + "value": "./eggvm.js", + "start": 22, + "end": 34, "loc": { "start": { "line": 1, - "column": 38 + "column": 22 }, "end": { "line": 1, - "column": 39 + "column": 34 } } }, @@ -1136,25 +786,25 @@ "binop": null, "updateContext": null }, - "start": 39, - "end": 40, + "start": 34, + "end": 35, "loc": { "start": { "line": 1, - "column": 39 + "column": 34 }, "end": { "line": 1, - "column": 40 + "column": 35 } } }, { "type": { - "label": "const", - "keyword": "const", + "label": "import", + "keyword": "import", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -1163,9 +813,9 @@ "binop": null, "updateContext": null }, - "value": "const", - "start": 41, - "end": 46, + "value": "import", + "start": 36, + "end": 42, "loc": { "start": { "line": 2, @@ -1173,7 +823,7 @@ }, "end": { "line": 2, - "column": 5 + "column": 6 } } }, @@ -1189,16 +839,16 @@ "postfix": false, "binop": null }, - "start": 47, - "end": 48, + "start": 43, + "end": 44, "loc": { "start": { "line": 2, - "column": 6 + "column": 7 }, "end": { "line": 2, - "column": 7 + "column": 8 } } }, @@ -1215,16 +865,16 @@ "binop": null }, "value": "Value", - "start": 49, - "end": 54, + "start": 45, + "end": 50, "loc": { "start": { "line": 2, - "column": 8 + "column": 9 }, "end": { "line": 2, - "column": 13 + "column": 14 } } }, @@ -1241,16 +891,16 @@ "binop": null, "updateContext": null }, - "start": 54, - "end": 55, + "start": 50, + "end": 51, "loc": { "start": { "line": 2, - "column": 13 + "column": 14 }, "end": { "line": 2, - "column": 14 + "column": 15 } } }, @@ -1267,16 +917,16 @@ "binop": null }, "value": "Word", - "start": 56, - "end": 60, + "start": 52, + "end": 56, "loc": { "start": { "line": 2, - "column": 15 + "column": 16 }, "end": { "line": 2, - "column": 19 + "column": 20 } } }, @@ -1293,16 +943,16 @@ "binop": null, "updateContext": null }, - "start": 60, - "end": 61, + "start": 56, + "end": 57, "loc": { "start": { "line": 2, - "column": 19 + "column": 20 }, "end": { "line": 2, - "column": 20 + "column": 21 } } }, @@ -1319,16 +969,16 @@ "binop": null }, "value": "Apply", - "start": 62, - "end": 67, + "start": 58, + "end": 63, "loc": { "start": { "line": 2, - "column": 21 + "column": 22 }, "end": { "line": 2, - "column": 26 + "column": 27 } } }, @@ -1345,16 +995,16 @@ "binop": null, "updateContext": null }, - "start": 67, - "end": 68, + "start": 63, + "end": 64, "loc": { "start": { "line": 2, - "column": 26 + "column": 27 }, "end": { "line": 2, - "column": 27 + "column": 28 } } }, @@ -1371,16 +1021,16 @@ "binop": null }, "value": "Regex", - "start": 69, - "end": 74, + "start": 65, + "end": 70, "loc": { "start": { "line": 2, - "column": 28 + "column": 29 }, "end": { "line": 2, - "column": 33 + "column": 34 } } }, @@ -1396,43 +1046,16 @@ "postfix": false, "binop": null }, - "start": 75, - "end": 76, + "start": 71, + "end": 72, "loc": { "start": { - "line": 2, - "column": 34 - }, - "end": { "line": 2, "column": 35 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 77, - "end": 78, - "loc": { - "start": { - "line": 2, - "column": 36 }, "end": { "line": 2, - "column": 37 + "column": 36 } } }, @@ -1448,42 +1071,17 @@ "postfix": false, "binop": null }, - "value": "require", - "start": 79, - "end": 86, - "loc": { - "start": { - "line": 2, - "column": 38 - }, - "end": { - "line": 2, - "column": 45 - } - } - }, - { - "type": { - "label": "(", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 86, - "end": 87, + "value": "from", + "start": 73, + "end": 77, "loc": { "start": { "line": 2, - "column": 45 + "column": 37 }, "end": { "line": 2, - "column": 46 + "column": 41 } } }, @@ -1501,41 +1099,16 @@ "updateContext": null }, "value": "./ast.js", - "start": 87, - "end": 97, - "loc": { - "start": { - "line": 2, - "column": 46 - }, - "end": { - "line": 2, - "column": 56 - } - } - }, - { - "type": { - "label": ")", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 97, - "end": 98, + "start": 78, + "end": 88, "loc": { "start": { "line": 2, - "column": 56 + "column": 42 }, "end": { "line": 2, - "column": 57 + "column": 52 } } }, @@ -1552,34 +1125,36 @@ "binop": null, "updateContext": null }, - "start": 98, - "end": 99, + "start": 88, + "end": 89, "loc": { "start": { "line": 2, - "column": 57 + "column": 52 }, "end": { "line": 2, - "column": 58 + "column": 53 } } }, { "type": { - "label": "name", + "label": "export", + "keyword": "export", "beforeExpr": false, - "startsExpr": true, + "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "value": "module", - "start": 101, - "end": 107, + "value": "export", + "start": 91, + "end": 97, "loc": { "start": { "line": 4, @@ -1593,27 +1168,26 @@ }, { "type": { - "label": ".", - "beforeExpr": false, - "startsExpr": false, + "label": "{", + "beforeExpr": true, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null, - "updateContext": null + "binop": null }, - "start": 107, - "end": 108, + "start": 98, + "end": 99, "loc": { "start": { "line": 4, - "column": 6 + "column": 7 }, "end": { "line": 4, - "column": 7 + "column": 8 } } }, @@ -1629,13 +1203,13 @@ "postfix": false, "binop": null }, - "value": "exports", - "start": 108, - "end": 115, + "value": "Eggvm", + "start": 100, + "end": 105, "loc": { "start": { "line": 4, - "column": 7 + "column": 9 }, "end": { "line": 4, @@ -1645,53 +1219,27 @@ }, { "type": { - "label": "=", + "label": ",", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, - "isAssign": true, + "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, - "value": "=", - "start": 116, - "end": 117, - "loc": { - "start": { - "line": 4, - "column": 15 - }, - "end": { - "line": 4, - "column": 16 - } - } - }, - { - "type": { - "label": "{", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 118, - "end": 119, + "start": 105, + "end": 106, "loc": { "start": { "line": 4, - "column": 17 + "column": 14 }, "end": { "line": 4, - "column": 18 + "column": 15 } } }, @@ -1707,9 +1255,9 @@ "postfix": false, "binop": null }, - "value": "Eggvm", - "start": 122, - "end": 127, + "value": "Value", + "start": 109, + "end": 114, "loc": { "start": { "line": 5, @@ -1734,8 +1282,8 @@ "binop": null, "updateContext": null }, - "start": 127, - "end": 128, + "start": 114, + "end": 115, "loc": { "start": { "line": 5, @@ -1759,9 +1307,9 @@ "postfix": false, "binop": null }, - "value": "Value", - "start": 131, - "end": 136, + "value": "Word", + "start": 118, + "end": 122, "loc": { "start": { "line": 6, @@ -1769,58 +1317,6 @@ }, "end": { "line": 6, - "column": 7 - } - } - }, - { - "type": { - "label": ",", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "start": 136, - "end": 137, - "loc": { - "start": { - "line": 6, - "column": 7 - }, - "end": { - "line": 6, - "column": 8 - } - } - }, - { - "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "Word", - "start": 140, - "end": 144, - "loc": { - "start": { - "line": 7, - "column": 2 - }, - "end": { - "line": 7, "column": 6 } } @@ -1838,15 +1334,15 @@ "binop": null, "updateContext": null }, - "start": 144, - "end": 145, + "start": 122, + "end": 123, "loc": { "start": { - "line": 7, + "line": 6, "column": 6 }, "end": { - "line": 7, + "line": 6, "column": 7 } } @@ -1864,15 +1360,15 @@ "binop": null }, "value": "Apply", - "start": 148, - "end": 153, + "start": 126, + "end": 131, "loc": { "start": { - "line": 8, + "line": 7, "column": 2 }, "end": { - "line": 8, + "line": 7, "column": 7 } } @@ -1890,15 +1386,15 @@ "binop": null, "updateContext": null }, - "start": 153, - "end": 154, + "start": 131, + "end": 132, "loc": { "start": { - "line": 8, + "line": 7, "column": 7 }, "end": { - "line": 8, + "line": 7, "column": 8 } } @@ -1916,15 +1412,15 @@ "binop": null }, "value": "Regex", - "start": 157, - "end": 162, + "start": 135, + "end": 140, "loc": { "start": { - "line": 9, + "line": 8, "column": 2 }, "end": { - "line": 9, + "line": 8, "column": 7 } } @@ -1941,16 +1437,16 @@ "postfix": false, "binop": null }, - "start": 163, - "end": 164, + "start": 141, + "end": 142, "loc": { "start": { - "line": 10, - "column": 0 + "line": 8, + "column": 8 }, "end": { - "line": 10, - "column": 1 + "line": 8, + "column": 9 } } }, @@ -1967,16 +1463,16 @@ "binop": null, "updateContext": null }, - "start": 164, - "end": 165, + "start": 142, + "end": 143, "loc": { "start": { - "line": 10, - "column": 1 + "line": 8, + "column": 9 }, "end": { - "line": 10, - "column": 2 + "line": 8, + "column": 10 } } }, @@ -1993,15 +1489,15 @@ "binop": null, "updateContext": null }, - "start": 166, - "end": 166, + "start": 144, + "end": 144, "loc": { "start": { - "line": 11, + "line": 9, "column": 0 }, "end": { - "line": 11, + "line": 9, "column": 0 } } diff --git a/docs/ast/source/interp/monkey-patching.js.json b/docs/ast/source/interp/monkey-patching.js.json index eb31ebe..e214bf4 100644 --- a/docs/ast/source/interp/monkey-patching.js.json +++ b/docs/ast/source/interp/monkey-patching.js.json @@ -1,7 +1,7 @@ { "type": "File", "start": 0, - "end": 1303, + "end": 1298, "loc": { "start": { "line": 1, @@ -15,7 +15,7 @@ "program": { "type": "Program", "start": 0, - "end": 1303, + "end": 1298, "loc": { "start": { "line": 1, @@ -29,9 +29,9 @@ "sourceType": "module", "body": [ { - "type": "VariableDeclaration", + "type": "ImportDeclaration", "start": 8, - "end": 45, + "end": 40, "loc": { "start": { "line": 2, @@ -39,100 +39,65 @@ }, "end": { "line": 2, - "column": 37 + "column": 32 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 14, - "end": 44, + "type": "ImportDefaultSpecifier", + "start": 15, + "end": 20, "loc": { "start": { "line": 2, - "column": 6 + "column": 7 }, "end": { "line": 2, - "column": 36 + "column": 12 } }, - "id": { + "local": { "type": "Identifier", - "start": 14, - "end": 19, + "start": 15, + "end": 20, "loc": { "start": { "line": 2, - "column": 6 + "column": 7 }, "end": { "line": 2, - "column": 11 + "column": 12 }, "identifierName": "utils" }, "name": "utils", "leadingComments": null }, - "init": { - "type": "CallExpression", - "start": 22, - "end": 44, - "loc": { - "start": { - "line": 2, - "column": 14 - }, - "end": { - "line": 2, - "column": 36 - } - }, - "callee": { - "type": "Identifier", - "start": 22, - "end": 29, - "loc": { - "start": { - "line": 2, - "column": 14 - }, - "end": { - "line": 2, - "column": 21 - }, - "identifierName": "require" - }, - "name": "require" - }, - "arguments": [ - { - "type": "StringLiteral", - "start": 30, - "end": 43, - "loc": { - "start": { - "line": 2, - "column": 22 - }, - "end": { - "line": 2, - "column": 35 - } - }, - "extra": { - "rawValue": "../utils.js", - "raw": "\"../utils.js\"" - }, - "value": "../utils.js" - } - ] - }, "leadingComments": null } ], - "kind": "const", + "source": { + "type": "StringLiteral", + "start": 26, + "end": 39, + "loc": { + "start": { + "line": 2, + "column": 18 + }, + "end": { + "line": 2, + "column": 31 + } + }, + "extra": { + "rawValue": "../utils.js", + "raw": "\"../utils.js\"" + }, + "value": "../utils.js" + }, "leadingComments": [ { "type": "CommentLine", @@ -154,8 +119,8 @@ }, { "type": "ExpressionStatement", - "start": 47, - "end": 533, + "start": 42, + "end": 528, "loc": { "start": { "line": 4, @@ -168,8 +133,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 47, - "end": 532, + "start": 42, + "end": 527, "loc": { "start": { "line": 4, @@ -183,8 +148,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 47, - "end": 67, + "start": 42, + "end": 62, "loc": { "start": { "line": 4, @@ -197,8 +162,8 @@ }, "object": { "type": "MemberExpression", - "start": 47, - "end": 63, + "start": 42, + "end": 58, "loc": { "start": { "line": 4, @@ -211,8 +176,8 @@ }, "object": { "type": "Identifier", - "start": 47, - "end": 53, + "start": 42, + "end": 48, "loc": { "start": { "line": 4, @@ -228,8 +193,8 @@ }, "property": { "type": "Identifier", - "start": 54, - "end": 63, + "start": 49, + "end": 58, "loc": { "start": { "line": 4, @@ -247,8 +212,8 @@ }, "property": { "type": "Identifier", - "start": 64, - "end": 67, + "start": 59, + "end": 62, "loc": { "start": { "line": 4, @@ -266,8 +231,8 @@ }, "right": { "type": "FunctionExpression", - "start": 70, - "end": 532, + "start": 65, + "end": 527, "loc": { "start": { "line": 4, @@ -280,8 +245,8 @@ }, "id": { "type": "Identifier", - "start": 64, - "end": 67, + "start": 59, + "end": 62, "loc": { "start": { "line": 4, @@ -301,8 +266,8 @@ "params": [ { "type": "RestElement", - "start": 79, - "end": 89, + "start": 74, + "end": 84, "loc": { "start": { "line": 4, @@ -315,8 +280,8 @@ }, "argument": { "type": "Identifier", - "start": 82, - "end": 89, + "start": 77, + "end": 84, "loc": { "start": { "line": 4, @@ -334,8 +299,8 @@ ], "body": { "type": "BlockStatement", - "start": 91, - "end": 532, + "start": 86, + "end": 527, "loc": { "start": { "line": 4, @@ -349,8 +314,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 95, - "end": 137, + "start": 90, + "end": 132, "loc": { "start": { "line": 5, @@ -363,8 +328,8 @@ }, "expression": { "type": "CallExpression", - "start": 95, - "end": 136, + "start": 90, + "end": 131, "loc": { "start": { "line": 5, @@ -377,8 +342,8 @@ }, "callee": { "type": "MemberExpression", - "start": 95, - "end": 114, + "start": 90, + "end": 109, "loc": { "start": { "line": 5, @@ -391,8 +356,8 @@ }, "object": { "type": "Identifier", - "start": 95, - "end": 100, + "start": 90, + "end": 95, "loc": { "start": { "line": 5, @@ -408,8 +373,8 @@ }, "property": { "type": "Identifier", - "start": 101, - "end": 114, + "start": 96, + "end": 109, "loc": { "start": { "line": 5, @@ -428,8 +393,8 @@ "arguments": [ { "type": "ThisExpression", - "start": 115, - "end": 119, + "start": 110, + "end": 114, "loc": { "start": { "line": 5, @@ -443,8 +408,8 @@ }, { "type": "MemberExpression", - "start": 121, - "end": 135, + "start": 116, + "end": 130, "loc": { "start": { "line": 5, @@ -457,8 +422,8 @@ }, "object": { "type": "Identifier", - "start": 121, - "end": 128, + "start": 116, + "end": 123, "loc": { "start": { "line": 5, @@ -474,8 +439,8 @@ }, "property": { "type": "Identifier", - "start": 129, - "end": 135, + "start": 124, + "end": 130, "loc": { "start": { "line": 5, @@ -497,8 +462,8 @@ { "type": "CommentLine", "value": " Get index", - "start": 141, - "end": 153, + "start": 136, + "end": 148, "loc": { "start": { "line": 7, @@ -514,8 +479,8 @@ }, { "type": "VariableDeclaration", - "start": 156, - "end": 179, + "start": 151, + "end": 174, "loc": { "start": { "line": 8, @@ -529,8 +494,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 160, - "end": 178, + "start": 155, + "end": 173, "loc": { "start": { "line": 8, @@ -543,8 +508,8 @@ }, "id": { "type": "Identifier", - "start": 160, - "end": 165, + "start": 155, + "end": 160, "loc": { "start": { "line": 8, @@ -561,8 +526,8 @@ }, "init": { "type": "MemberExpression", - "start": 168, - "end": 178, + "start": 163, + "end": 173, "loc": { "start": { "line": 8, @@ -575,8 +540,8 @@ }, "object": { "type": "Identifier", - "start": 168, - "end": 175, + "start": 163, + "end": 170, "loc": { "start": { "line": 8, @@ -592,8 +557,8 @@ }, "property": { "type": "NumericLiteral", - "start": 176, - "end": 177, + "start": 171, + "end": 172, "loc": { "start": { "line": 8, @@ -620,8 +585,8 @@ { "type": "CommentLine", "value": " Get index", - "start": 141, - "end": 153, + "start": 136, + "end": 148, "loc": { "start": { "line": 7, @@ -637,8 +602,8 @@ }, { "type": "IfStatement", - "start": 182, - "end": 272, + "start": 177, + "end": 267, "loc": { "start": { "line": 9, @@ -651,8 +616,8 @@ }, "test": { "type": "BinaryExpression", - "start": 186, - "end": 207, + "start": 181, + "end": 202, "loc": { "start": { "line": 9, @@ -665,8 +630,8 @@ }, "left": { "type": "ThisExpression", - "start": 186, - "end": 190, + "start": 181, + "end": 185, "loc": { "start": { "line": 9, @@ -681,8 +646,8 @@ "operator": "instanceof", "right": { "type": "Identifier", - "start": 202, - "end": 207, + "start": 197, + "end": 202, "loc": { "start": { "line": 9, @@ -699,8 +664,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 209, - "end": 272, + "start": 204, + "end": 267, "loc": { "start": { "line": 9, @@ -714,8 +679,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 215, - "end": 268, + "start": 210, + "end": 263, "loc": { "start": { "line": 10, @@ -728,8 +693,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 215, - "end": 267, + "start": 210, + "end": 262, "loc": { "start": { "line": 10, @@ -743,8 +708,8 @@ "operator": "=", "left": { "type": "Identifier", - "start": 215, - "end": 220, + "start": 210, + "end": 215, "loc": { "start": { "line": 10, @@ -760,8 +725,8 @@ }, "right": { "type": "CallExpression", - "start": 223, - "end": 267, + "start": 218, + "end": 262, "loc": { "start": { "line": 10, @@ -774,8 +739,8 @@ }, "callee": { "type": "MemberExpression", - "start": 223, - "end": 242, + "start": 218, + "end": 237, "loc": { "start": { "line": 10, @@ -788,8 +753,8 @@ }, "object": { "type": "Identifier", - "start": 223, - "end": 228, + "start": 218, + "end": 223, "loc": { "start": { "line": 10, @@ -805,8 +770,8 @@ }, "property": { "type": "Identifier", - "start": 229, - "end": 242, + "start": 224, + "end": 237, "loc": { "start": { "line": 10, @@ -825,8 +790,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 243, - "end": 254, + "start": 238, + "end": 249, "loc": { "start": { "line": 10, @@ -839,8 +804,8 @@ }, "object": { "type": "ThisExpression", - "start": 243, - "end": 247, + "start": 238, + "end": 242, "loc": { "start": { "line": 10, @@ -854,8 +819,8 @@ }, "property": { "type": "Identifier", - "start": 248, - "end": 254, + "start": 243, + "end": 249, "loc": { "start": { "line": 10, @@ -873,8 +838,8 @@ }, { "type": "MemberExpression", - "start": 256, - "end": 266, + "start": 251, + "end": 261, "loc": { "start": { "line": 10, @@ -887,8 +852,8 @@ }, "object": { "type": "Identifier", - "start": 256, - "end": 263, + "start": 251, + "end": 258, "loc": { "start": { "line": 10, @@ -904,8 +869,8 @@ }, "property": { "type": "NumericLiteral", - "start": 264, - "end": 265, + "start": 259, + "end": 260, "loc": { "start": { "line": 10, @@ -937,8 +902,8 @@ { "type": "CommentLine", "value": " Get value", - "start": 276, - "end": 288, + "start": 271, + "end": 283, "loc": { "start": { "line": 13, @@ -954,8 +919,8 @@ }, { "type": "VariableDeclaration", - "start": 291, - "end": 301, + "start": 286, + "end": 296, "loc": { "start": { "line": 14, @@ -969,8 +934,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 295, - "end": 300, + "start": 290, + "end": 295, "loc": { "start": { "line": 14, @@ -983,8 +948,8 @@ }, "id": { "type": "Identifier", - "start": 295, - "end": 300, + "start": 290, + "end": 295, "loc": { "start": { "line": 14, @@ -1008,8 +973,8 @@ { "type": "CommentLine", "value": " Get value", - "start": 276, - "end": 288, + "start": 271, + "end": 283, "loc": { "start": { "line": 13, @@ -1025,8 +990,8 @@ }, { "type": "IfStatement", - "start": 304, - "end": 399, + "start": 299, + "end": 394, "loc": { "start": { "line": 15, @@ -1039,8 +1004,8 @@ }, "test": { "type": "BinaryExpression", - "start": 308, - "end": 327, + "start": 303, + "end": 322, "loc": { "start": { "line": 15, @@ -1053,8 +1018,8 @@ }, "left": { "type": "ThisExpression", - "start": 308, - "end": 312, + "start": 303, + "end": 307, "loc": { "start": { "line": 15, @@ -1069,8 +1034,8 @@ "operator": "instanceof", "right": { "type": "Identifier", - "start": 324, - "end": 327, + "start": 319, + "end": 322, "loc": { "start": { "line": 15, @@ -1087,8 +1052,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 329, - "end": 363, + "start": 324, + "end": 358, "loc": { "start": { "line": 15, @@ -1102,8 +1067,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 335, - "end": 359, + "start": 330, + "end": 354, "loc": { "start": { "line": 16, @@ -1116,8 +1081,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 335, - "end": 358, + "start": 330, + "end": 353, "loc": { "start": { "line": 16, @@ -1131,8 +1096,8 @@ "operator": "=", "left": { "type": "Identifier", - "start": 335, - "end": 340, + "start": 330, + "end": 335, "loc": { "start": { "line": 16, @@ -1148,8 +1113,8 @@ }, "right": { "type": "CallExpression", - "start": 343, - "end": 358, + "start": 338, + "end": 353, "loc": { "start": { "line": 16, @@ -1162,8 +1127,8 @@ }, "callee": { "type": "MemberExpression", - "start": 343, - "end": 351, + "start": 338, + "end": 346, "loc": { "start": { "line": 16, @@ -1176,8 +1141,8 @@ }, "object": { "type": "ThisExpression", - "start": 343, - "end": 347, + "start": 338, + "end": 342, "loc": { "start": { "line": 16, @@ -1191,8 +1156,8 @@ }, "property": { "type": "Identifier", - "start": 348, - "end": 351, + "start": 343, + "end": 346, "loc": { "start": { "line": 16, @@ -1211,8 +1176,8 @@ "arguments": [ { "type": "Identifier", - "start": 352, - "end": 357, + "start": 347, + "end": 352, "loc": { "start": { "line": 16, @@ -1235,8 +1200,8 @@ }, "alternate": { "type": "BlockStatement", - "start": 369, - "end": 399, + "start": 364, + "end": 394, "loc": { "start": { "line": 17, @@ -1250,8 +1215,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 375, - "end": 395, + "start": 370, + "end": 390, "loc": { "start": { "line": 18, @@ -1264,8 +1229,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 375, - "end": 394, + "start": 370, + "end": 389, "loc": { "start": { "line": 18, @@ -1279,8 +1244,8 @@ "operator": "=", "left": { "type": "Identifier", - "start": 375, - "end": 380, + "start": 370, + "end": 375, "loc": { "start": { "line": 18, @@ -1296,8 +1261,8 @@ }, "right": { "type": "MemberExpression", - "start": 383, - "end": 394, + "start": 378, + "end": 389, "loc": { "start": { "line": 18, @@ -1310,8 +1275,8 @@ }, "object": { "type": "ThisExpression", - "start": 383, - "end": 387, + "start": 378, + "end": 382, "loc": { "start": { "line": 18, @@ -1325,8 +1290,8 @@ }, "property": { "type": "Identifier", - "start": 388, - "end": 393, + "start": 383, + "end": 388, "loc": { "start": { "line": 18, @@ -1352,8 +1317,8 @@ { "type": "CommentLine", "value": " Return value or keep recursion", - "start": 403, - "end": 436, + "start": 398, + "end": 431, "loc": { "start": { "line": 21, @@ -1369,8 +1334,8 @@ }, { "type": "IfStatement", - "start": 439, - "end": 488, + "start": 434, + "end": 483, "loc": { "start": { "line": 22, @@ -1383,8 +1348,8 @@ }, "test": { "type": "BinaryExpression", - "start": 443, - "end": 463, + "start": 438, + "end": 458, "loc": { "start": { "line": 22, @@ -1397,8 +1362,8 @@ }, "left": { "type": "MemberExpression", - "start": 443, - "end": 457, + "start": 438, + "end": 452, "loc": { "start": { "line": 22, @@ -1411,8 +1376,8 @@ }, "object": { "type": "Identifier", - "start": 443, - "end": 450, + "start": 438, + "end": 445, "loc": { "start": { "line": 22, @@ -1429,8 +1394,8 @@ }, "property": { "type": "Identifier", - "start": 451, - "end": 457, + "start": 446, + "end": 452, "loc": { "start": { "line": 22, @@ -1450,8 +1415,8 @@ "operator": "===", "right": { "type": "NumericLiteral", - "start": 462, - "end": 463, + "start": 457, + "end": 458, "loc": { "start": { "line": 22, @@ -1472,8 +1437,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 465, - "end": 488, + "start": 460, + "end": 483, "loc": { "start": { "line": 22, @@ -1487,8 +1452,8 @@ "body": [ { "type": "ReturnStatement", - "start": 471, - "end": 484, + "start": 466, + "end": 479, "loc": { "start": { "line": 23, @@ -1501,8 +1466,8 @@ }, "argument": { "type": "Identifier", - "start": 478, - "end": 483, + "start": 473, + "end": 478, "loc": { "start": { "line": 23, @@ -1525,8 +1490,8 @@ { "type": "CommentLine", "value": " Return value or keep recursion", - "start": 403, - "end": 436, + "start": 398, + "end": 431, "loc": { "start": { "line": 21, @@ -1542,8 +1507,8 @@ }, { "type": "ReturnStatement", - "start": 492, - "end": 530, + "start": 487, + "end": 525, "loc": { "start": { "line": 26, @@ -1556,8 +1521,8 @@ }, "argument": { "type": "CallExpression", - "start": 499, - "end": 529, + "start": 494, + "end": 524, "loc": { "start": { "line": 26, @@ -1570,8 +1535,8 @@ }, "callee": { "type": "MemberExpression", - "start": 499, - "end": 508, + "start": 494, + "end": 503, "loc": { "start": { "line": 26, @@ -1584,8 +1549,8 @@ }, "object": { "type": "Identifier", - "start": 499, - "end": 504, + "start": 494, + "end": 499, "loc": { "start": { "line": 26, @@ -1601,8 +1566,8 @@ }, "property": { "type": "Identifier", - "start": 505, - "end": 508, + "start": 500, + "end": 503, "loc": { "start": { "line": 26, @@ -1621,8 +1586,8 @@ "arguments": [ { "type": "SpreadElement", - "start": 509, - "end": 528, + "start": 504, + "end": 523, "loc": { "start": { "line": 26, @@ -1635,8 +1600,8 @@ }, "argument": { "type": "CallExpression", - "start": 512, - "end": 528, + "start": 507, + "end": 523, "loc": { "start": { "line": 26, @@ -1649,8 +1614,8 @@ }, "callee": { "type": "MemberExpression", - "start": 512, - "end": 525, + "start": 507, + "end": 520, "loc": { "start": { "line": 26, @@ -1663,8 +1628,8 @@ }, "object": { "type": "Identifier", - "start": 512, - "end": 519, + "start": 507, + "end": 514, "loc": { "start": { "line": 26, @@ -1680,8 +1645,8 @@ }, "property": { "type": "Identifier", - "start": 520, - "end": 525, + "start": 515, + "end": 520, "loc": { "start": { "line": 26, @@ -1700,8 +1665,8 @@ "arguments": [ { "type": "NumericLiteral", - "start": 526, - "end": 527, + "start": 521, + "end": 522, "loc": { "start": { "line": 26, @@ -1733,8 +1698,8 @@ { "type": "CommentLine", "value": " SETELEM", - "start": 535, - "end": 545, + "start": 530, + "end": 540, "loc": { "start": { "line": 29, @@ -1750,8 +1715,8 @@ }, { "type": "ExpressionStatement", - "start": 547, - "end": 1070, + "start": 542, + "end": 1065, "loc": { "start": { "line": 31, @@ -1764,8 +1729,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 547, - "end": 1069, + "start": 542, + "end": 1064, "loc": { "start": { "line": 31, @@ -1779,8 +1744,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 547, - "end": 571, + "start": 542, + "end": 566, "loc": { "start": { "line": 31, @@ -1793,8 +1758,8 @@ }, "object": { "type": "MemberExpression", - "start": 547, - "end": 563, + "start": 542, + "end": 558, "loc": { "start": { "line": 31, @@ -1807,8 +1772,8 @@ }, "object": { "type": "Identifier", - "start": 547, - "end": 553, + "start": 542, + "end": 548, "loc": { "start": { "line": 31, @@ -1825,8 +1790,8 @@ }, "property": { "type": "Identifier", - "start": 554, - "end": 563, + "start": 549, + "end": 558, "loc": { "start": { "line": 31, @@ -1845,8 +1810,8 @@ }, "property": { "type": "Identifier", - "start": 564, - "end": 571, + "start": 559, + "end": 566, "loc": { "start": { "line": 31, @@ -1865,8 +1830,8 @@ }, "right": { "type": "FunctionExpression", - "start": 574, - "end": 1069, + "start": 569, + "end": 1064, "loc": { "start": { "line": 31, @@ -1879,8 +1844,8 @@ }, "id": { "type": "Identifier", - "start": 564, - "end": 571, + "start": 559, + "end": 566, "loc": { "start": { "line": 31, @@ -1900,8 +1865,8 @@ "params": [ { "type": "Identifier", - "start": 583, - "end": 588, + "start": 578, + "end": 583, "loc": { "start": { "line": 31, @@ -1917,8 +1882,8 @@ }, { "type": "RestElement", - "start": 590, - "end": 600, + "start": 585, + "end": 595, "loc": { "start": { "line": 31, @@ -1931,8 +1896,8 @@ }, "argument": { "type": "Identifier", - "start": 593, - "end": 600, + "start": 588, + "end": 595, "loc": { "start": { "line": 31, @@ -1950,8 +1915,8 @@ ], "body": { "type": "BlockStatement", - "start": 602, - "end": 1069, + "start": 597, + "end": 1064, "loc": { "start": { "line": 31, @@ -1965,8 +1930,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 606, - "end": 648, + "start": 601, + "end": 643, "loc": { "start": { "line": 32, @@ -1979,8 +1944,8 @@ }, "expression": { "type": "CallExpression", - "start": 606, - "end": 647, + "start": 601, + "end": 642, "loc": { "start": { "line": 32, @@ -1993,8 +1958,8 @@ }, "callee": { "type": "MemberExpression", - "start": 606, - "end": 625, + "start": 601, + "end": 620, "loc": { "start": { "line": 32, @@ -2007,8 +1972,8 @@ }, "object": { "type": "Identifier", - "start": 606, - "end": 611, + "start": 601, + "end": 606, "loc": { "start": { "line": 32, @@ -2024,8 +1989,8 @@ }, "property": { "type": "Identifier", - "start": 612, - "end": 625, + "start": 607, + "end": 620, "loc": { "start": { "line": 32, @@ -2044,8 +2009,8 @@ "arguments": [ { "type": "ThisExpression", - "start": 626, - "end": 630, + "start": 621, + "end": 625, "loc": { "start": { "line": 32, @@ -2059,8 +2024,8 @@ }, { "type": "MemberExpression", - "start": 632, - "end": 646, + "start": 627, + "end": 641, "loc": { "start": { "line": 32, @@ -2073,8 +2038,8 @@ }, "object": { "type": "Identifier", - "start": 632, - "end": 639, + "start": 627, + "end": 634, "loc": { "start": { "line": 32, @@ -2090,8 +2055,8 @@ }, "property": { "type": "Identifier", - "start": 640, - "end": 646, + "start": 635, + "end": 641, "loc": { "start": { "line": 32, @@ -2113,8 +2078,8 @@ { "type": "CommentLine", "value": " Get index", - "start": 652, - "end": 664, + "start": 647, + "end": 659, "loc": { "start": { "line": 34, @@ -2130,8 +2095,8 @@ }, { "type": "VariableDeclaration", - "start": 667, - "end": 690, + "start": 662, + "end": 685, "loc": { "start": { "line": 35, @@ -2145,8 +2110,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 671, - "end": 689, + "start": 666, + "end": 684, "loc": { "start": { "line": 35, @@ -2159,8 +2124,8 @@ }, "id": { "type": "Identifier", - "start": 671, - "end": 676, + "start": 666, + "end": 671, "loc": { "start": { "line": 35, @@ -2177,8 +2142,8 @@ }, "init": { "type": "MemberExpression", - "start": 679, - "end": 689, + "start": 674, + "end": 684, "loc": { "start": { "line": 35, @@ -2191,8 +2156,8 @@ }, "object": { "type": "Identifier", - "start": 679, - "end": 686, + "start": 674, + "end": 681, "loc": { "start": { "line": 35, @@ -2208,8 +2173,8 @@ }, "property": { "type": "NumericLiteral", - "start": 687, - "end": 688, + "start": 682, + "end": 683, "loc": { "start": { "line": 35, @@ -2236,8 +2201,8 @@ { "type": "CommentLine", "value": " Get index", - "start": 652, - "end": 664, + "start": 647, + "end": 659, "loc": { "start": { "line": 34, @@ -2253,8 +2218,8 @@ }, { "type": "IfStatement", - "start": 693, - "end": 783, + "start": 688, + "end": 778, "loc": { "start": { "line": 36, @@ -2267,8 +2232,8 @@ }, "test": { "type": "BinaryExpression", - "start": 697, - "end": 718, + "start": 692, + "end": 713, "loc": { "start": { "line": 36, @@ -2281,8 +2246,8 @@ }, "left": { "type": "ThisExpression", - "start": 697, - "end": 701, + "start": 692, + "end": 696, "loc": { "start": { "line": 36, @@ -2297,8 +2262,8 @@ "operator": "instanceof", "right": { "type": "Identifier", - "start": 713, - "end": 718, + "start": 708, + "end": 713, "loc": { "start": { "line": 36, @@ -2315,8 +2280,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 720, - "end": 783, + "start": 715, + "end": 778, "loc": { "start": { "line": 36, @@ -2330,8 +2295,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 726, - "end": 779, + "start": 721, + "end": 774, "loc": { "start": { "line": 37, @@ -2344,8 +2309,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 726, - "end": 778, + "start": 721, + "end": 773, "loc": { "start": { "line": 37, @@ -2359,8 +2324,8 @@ "operator": "=", "left": { "type": "Identifier", - "start": 726, - "end": 731, + "start": 721, + "end": 726, "loc": { "start": { "line": 37, @@ -2376,8 +2341,8 @@ }, "right": { "type": "CallExpression", - "start": 734, - "end": 778, + "start": 729, + "end": 773, "loc": { "start": { "line": 37, @@ -2390,8 +2355,8 @@ }, "callee": { "type": "MemberExpression", - "start": 734, - "end": 753, + "start": 729, + "end": 748, "loc": { "start": { "line": 37, @@ -2404,8 +2369,8 @@ }, "object": { "type": "Identifier", - "start": 734, - "end": 739, + "start": 729, + "end": 734, "loc": { "start": { "line": 37, @@ -2421,8 +2386,8 @@ }, "property": { "type": "Identifier", - "start": 740, - "end": 753, + "start": 735, + "end": 748, "loc": { "start": { "line": 37, @@ -2441,8 +2406,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 754, - "end": 765, + "start": 749, + "end": 760, "loc": { "start": { "line": 37, @@ -2455,8 +2420,8 @@ }, "object": { "type": "ThisExpression", - "start": 754, - "end": 758, + "start": 749, + "end": 753, "loc": { "start": { "line": 37, @@ -2470,8 +2435,8 @@ }, "property": { "type": "Identifier", - "start": 759, - "end": 765, + "start": 754, + "end": 760, "loc": { "start": { "line": 37, @@ -2489,8 +2454,8 @@ }, { "type": "MemberExpression", - "start": 767, - "end": 777, + "start": 762, + "end": 772, "loc": { "start": { "line": 37, @@ -2503,8 +2468,8 @@ }, "object": { "type": "Identifier", - "start": 767, - "end": 774, + "start": 762, + "end": 769, "loc": { "start": { "line": 37, @@ -2520,8 +2485,8 @@ }, "property": { "type": "NumericLiteral", - "start": 775, - "end": 776, + "start": 770, + "end": 771, "loc": { "start": { "line": 37, @@ -2553,8 +2518,8 @@ { "type": "CommentLine", "value": " Set value or continue the recursion", - "start": 787, - "end": 825, + "start": 782, + "end": 820, "loc": { "start": { "line": 40, @@ -2570,8 +2535,8 @@ }, { "type": "IfStatement", - "start": 828, - "end": 985, + "start": 823, + "end": 980, "loc": { "start": { "line": 41, @@ -2584,8 +2549,8 @@ }, "test": { "type": "BinaryExpression", - "start": 832, - "end": 852, + "start": 827, + "end": 847, "loc": { "start": { "line": 41, @@ -2598,8 +2563,8 @@ }, "left": { "type": "MemberExpression", - "start": 832, - "end": 846, + "start": 827, + "end": 841, "loc": { "start": { "line": 41, @@ -2612,8 +2577,8 @@ }, "object": { "type": "Identifier", - "start": 832, - "end": 839, + "start": 827, + "end": 834, "loc": { "start": { "line": 41, @@ -2630,8 +2595,8 @@ }, "property": { "type": "Identifier", - "start": 840, - "end": 846, + "start": 835, + "end": 841, "loc": { "start": { "line": 41, @@ -2651,8 +2616,8 @@ "operator": "===", "right": { "type": "NumericLiteral", - "start": 851, - "end": 852, + "start": 846, + "end": 847, "loc": { "start": { "line": 41, @@ -2673,8 +2638,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 854, - "end": 985, + "start": 849, + "end": 980, "loc": { "start": { "line": 41, @@ -2688,8 +2653,8 @@ "body": [ { "type": "IfStatement", - "start": 860, - "end": 962, + "start": 855, + "end": 957, "loc": { "start": { "line": 42, @@ -2702,8 +2667,8 @@ }, "test": { "type": "BinaryExpression", - "start": 864, - "end": 883, + "start": 859, + "end": 878, "loc": { "start": { "line": 42, @@ -2716,8 +2681,8 @@ }, "left": { "type": "ThisExpression", - "start": 864, - "end": 868, + "start": 859, + "end": 863, "loc": { "start": { "line": 42, @@ -2732,8 +2697,8 @@ "operator": "instanceof", "right": { "type": "Identifier", - "start": 880, - "end": 883, + "start": 875, + "end": 878, "loc": { "start": { "line": 42, @@ -2750,8 +2715,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 885, - "end": 922, + "start": 880, + "end": 917, "loc": { "start": { "line": 42, @@ -2765,8 +2730,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 893, - "end": 916, + "start": 888, + "end": 911, "loc": { "start": { "line": 43, @@ -2779,8 +2744,8 @@ }, "expression": { "type": "CallExpression", - "start": 893, - "end": 915, + "start": 888, + "end": 910, "loc": { "start": { "line": 43, @@ -2793,8 +2758,8 @@ }, "callee": { "type": "MemberExpression", - "start": 893, - "end": 901, + "start": 888, + "end": 896, "loc": { "start": { "line": 43, @@ -2807,8 +2772,8 @@ }, "object": { "type": "ThisExpression", - "start": 893, - "end": 897, + "start": 888, + "end": 892, "loc": { "start": { "line": 43, @@ -2822,8 +2787,8 @@ }, "property": { "type": "Identifier", - "start": 898, - "end": 901, + "start": 893, + "end": 896, "loc": { "start": { "line": 43, @@ -2842,8 +2807,8 @@ "arguments": [ { "type": "Identifier", - "start": 902, - "end": 907, + "start": 897, + "end": 902, "loc": { "start": { "line": 43, @@ -2859,8 +2824,8 @@ }, { "type": "Identifier", - "start": 909, - "end": 914, + "start": 904, + "end": 909, "loc": { "start": { "line": 43, @@ -2882,8 +2847,8 @@ }, "alternate": { "type": "BlockStatement", - "start": 928, - "end": 962, + "start": 923, + "end": 957, "loc": { "start": { "line": 44, @@ -2897,8 +2862,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 936, - "end": 956, + "start": 931, + "end": 951, "loc": { "start": { "line": 45, @@ -2911,8 +2876,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 936, - "end": 955, + "start": 931, + "end": 950, "loc": { "start": { "line": 45, @@ -2926,8 +2891,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 936, - "end": 947, + "start": 931, + "end": 942, "loc": { "start": { "line": 45, @@ -2940,8 +2905,8 @@ }, "object": { "type": "ThisExpression", - "start": 936, - "end": 940, + "start": 931, + "end": 935, "loc": { "start": { "line": 45, @@ -2955,8 +2920,8 @@ }, "property": { "type": "Identifier", - "start": 941, - "end": 946, + "start": 936, + "end": 941, "loc": { "start": { "line": 45, @@ -2974,8 +2939,8 @@ }, "right": { "type": "Identifier", - "start": 950, - "end": 955, + "start": 945, + "end": 950, "loc": { "start": { "line": 45, @@ -2997,8 +2962,8 @@ }, { "type": "ReturnStatement", - "start": 968, - "end": 981, + "start": 963, + "end": 976, "loc": { "start": { "line": 48, @@ -3011,8 +2976,8 @@ }, "argument": { "type": "Identifier", - "start": 975, - "end": 980, + "start": 970, + "end": 975, "loc": { "start": { "line": 48, @@ -3035,8 +3000,8 @@ { "type": "CommentLine", "value": " Set value or continue the recursion", - "start": 787, - "end": 825, + "start": 782, + "end": 820, "loc": { "start": { "line": 40, @@ -3052,8 +3017,8 @@ }, { "type": "VariableDeclaration", - "start": 989, - "end": 1017, + "start": 984, + "end": 1012, "loc": { "start": { "line": 51, @@ -3067,8 +3032,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 995, - "end": 1016, + "start": 990, + "end": 1011, "loc": { "start": { "line": 51, @@ -3081,8 +3046,8 @@ }, "id": { "type": "Identifier", - "start": 995, - "end": 998, + "start": 990, + "end": 993, "loc": { "start": { "line": 51, @@ -3098,8 +3063,8 @@ }, "init": { "type": "CallExpression", - "start": 1001, - "end": 1016, + "start": 996, + "end": 1011, "loc": { "start": { "line": 51, @@ -3112,8 +3077,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1001, - "end": 1009, + "start": 996, + "end": 1004, "loc": { "start": { "line": 51, @@ -3126,8 +3091,8 @@ }, "object": { "type": "ThisExpression", - "start": 1001, - "end": 1005, + "start": 996, + "end": 1000, "loc": { "start": { "line": 51, @@ -3141,8 +3106,8 @@ }, "property": { "type": "Identifier", - "start": 1006, - "end": 1009, + "start": 1001, + "end": 1004, "loc": { "start": { "line": 51, @@ -3161,8 +3126,8 @@ "arguments": [ { "type": "Identifier", - "start": 1010, - "end": 1015, + "start": 1005, + "end": 1010, "loc": { "start": { "line": 51, @@ -3184,8 +3149,8 @@ }, { "type": "ReturnStatement", - "start": 1020, - "end": 1067, + "start": 1015, + "end": 1062, "loc": { "start": { "line": 52, @@ -3198,8 +3163,8 @@ }, "argument": { "type": "CallExpression", - "start": 1027, - "end": 1066, + "start": 1022, + "end": 1061, "loc": { "start": { "line": 52, @@ -3212,8 +3177,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1027, - "end": 1038, + "start": 1022, + "end": 1033, "loc": { "start": { "line": 52, @@ -3226,8 +3191,8 @@ }, "object": { "type": "Identifier", - "start": 1027, - "end": 1030, + "start": 1022, + "end": 1025, "loc": { "start": { "line": 52, @@ -3243,8 +3208,8 @@ }, "property": { "type": "Identifier", - "start": 1031, - "end": 1038, + "start": 1026, + "end": 1033, "loc": { "start": { "line": 52, @@ -3263,8 +3228,8 @@ "arguments": [ { "type": "Identifier", - "start": 1039, - "end": 1044, + "start": 1034, + "end": 1039, "loc": { "start": { "line": 52, @@ -3280,8 +3245,8 @@ }, { "type": "SpreadElement", - "start": 1046, - "end": 1065, + "start": 1041, + "end": 1060, "loc": { "start": { "line": 52, @@ -3294,8 +3259,8 @@ }, "argument": { "type": "CallExpression", - "start": 1049, - "end": 1065, + "start": 1044, + "end": 1060, "loc": { "start": { "line": 52, @@ -3308,8 +3273,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1049, - "end": 1062, + "start": 1044, + "end": 1057, "loc": { "start": { "line": 52, @@ -3322,8 +3287,8 @@ }, "object": { "type": "Identifier", - "start": 1049, - "end": 1056, + "start": 1044, + "end": 1051, "loc": { "start": { "line": 52, @@ -3339,8 +3304,8 @@ }, "property": { "type": "Identifier", - "start": 1057, - "end": 1062, + "start": 1052, + "end": 1057, "loc": { "start": { "line": 52, @@ -3359,8 +3324,8 @@ "arguments": [ { "type": "NumericLiteral", - "start": 1063, - "end": 1064, + "start": 1058, + "end": 1059, "loc": { "start": { "line": 52, @@ -3393,8 +3358,8 @@ { "type": "CommentLine", "value": " SETELEM", - "start": 535, - "end": 545, + "start": 530, + "end": 540, "loc": { "start": { "line": 29, @@ -3411,8 +3376,8 @@ { "type": "CommentLine", "value": " NUMBER", - "start": 1072, - "end": 1081, + "start": 1067, + "end": 1076, "loc": { "start": { "line": 55, @@ -3428,8 +3393,8 @@ }, { "type": "ExpressionStatement", - "start": 1083, - "end": 1244, + "start": 1078, + "end": 1239, "loc": { "start": { "line": 57, @@ -3442,8 +3407,8 @@ }, "expression": { "type": "CallExpression", - "start": 1083, - "end": 1243, + "start": 1078, + "end": 1238, "loc": { "start": { "line": 57, @@ -3456,8 +3421,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1083, - "end": 1111, + "start": 1078, + "end": 1106, "loc": { "start": { "line": 57, @@ -3470,8 +3435,8 @@ }, "object": { "type": "ArrayExpression", - "start": 1083, - "end": 1103, + "start": 1078, + "end": 1098, "loc": { "start": { "line": 57, @@ -3485,8 +3450,8 @@ "elements": [ { "type": "StringLiteral", - "start": 1084, - "end": 1087, + "start": 1079, + "end": 1082, "loc": { "start": { "line": 57, @@ -3506,8 +3471,8 @@ }, { "type": "StringLiteral", - "start": 1089, - "end": 1092, + "start": 1084, + "end": 1087, "loc": { "start": { "line": 57, @@ -3526,8 +3491,8 @@ }, { "type": "StringLiteral", - "start": 1094, - "end": 1097, + "start": 1089, + "end": 1092, "loc": { "start": { "line": 57, @@ -3546,8 +3511,8 @@ }, { "type": "StringLiteral", - "start": 1099, - "end": 1102, + "start": 1094, + "end": 1097, "loc": { "start": { "line": 57, @@ -3569,8 +3534,8 @@ }, "property": { "type": "Identifier", - "start": 1104, - "end": 1111, + "start": 1099, + "end": 1106, "loc": { "start": { "line": 57, @@ -3590,8 +3555,8 @@ "arguments": [ { "type": "ArrowFunctionExpression", - "start": 1112, - "end": 1242, + "start": 1107, + "end": 1237, "loc": { "start": { "line": 57, @@ -3609,8 +3574,8 @@ "params": [ { "type": "Identifier", - "start": 1112, - "end": 1114, + "start": 1107, + "end": 1109, "loc": { "start": { "line": 57, @@ -3627,8 +3592,8 @@ ], "body": { "type": "BlockStatement", - "start": 1118, - "end": 1242, + "start": 1113, + "end": 1237, "loc": { "start": { "line": 57, @@ -3642,8 +3607,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 1122, - "end": 1240, + "start": 1117, + "end": 1235, "loc": { "start": { "line": 58, @@ -3656,8 +3621,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 1122, - "end": 1239, + "start": 1117, + "end": 1234, "loc": { "start": { "line": 58, @@ -3671,8 +3636,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 1122, - "end": 1142, + "start": 1117, + "end": 1137, "loc": { "start": { "line": 58, @@ -3685,8 +3650,8 @@ }, "object": { "type": "MemberExpression", - "start": 1122, - "end": 1138, + "start": 1117, + "end": 1133, "loc": { "start": { "line": 58, @@ -3699,8 +3664,8 @@ }, "object": { "type": "Identifier", - "start": 1122, - "end": 1128, + "start": 1117, + "end": 1123, "loc": { "start": { "line": 58, @@ -3716,8 +3681,8 @@ }, "property": { "type": "Identifier", - "start": 1129, - "end": 1138, + "start": 1124, + "end": 1133, "loc": { "start": { "line": 58, @@ -3735,8 +3700,8 @@ }, "property": { "type": "Identifier", - "start": 1139, - "end": 1141, + "start": 1134, + "end": 1136, "loc": { "start": { "line": 58, @@ -3754,8 +3719,8 @@ }, "right": { "type": "NewExpression", - "start": 1145, - "end": 1239, + "start": 1140, + "end": 1234, "loc": { "start": { "line": 58, @@ -3768,8 +3733,8 @@ }, "callee": { "type": "Identifier", - "start": 1149, - "end": 1157, + "start": 1144, + "end": 1152, "loc": { "start": { "line": 58, @@ -3786,8 +3751,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 1163, - "end": 1174, + "start": 1158, + "end": 1169, "loc": { "start": { "line": 59, @@ -3806,8 +3771,8 @@ }, { "type": "TemplateLiteral", - "start": 1180, - "end": 1235, + "start": 1175, + "end": 1230, "loc": { "start": { "line": 60, @@ -3821,8 +3786,8 @@ "expressions": [ { "type": "Identifier", - "start": 1227, - "end": 1229, + "start": 1222, + "end": 1224, "loc": { "start": { "line": 60, @@ -3840,8 +3805,8 @@ "quasis": [ { "type": "TemplateElement", - "start": 1181, - "end": 1225, + "start": 1176, + "end": 1220, "loc": { "start": { "line": 60, @@ -3860,8 +3825,8 @@ }, { "type": "TemplateElement", - "start": 1230, - "end": 1234, + "start": 1225, + "end": 1229, "loc": { "start": { "line": 60, @@ -3895,8 +3860,8 @@ { "type": "CommentLine", "value": " NUMBER", - "start": 1072, - "end": 1081, + "start": 1067, + "end": 1076, "loc": { "start": { "line": 55, @@ -3912,8 +3877,8 @@ }, { "type": "ExpressionStatement", - "start": 1246, - "end": 1302, + "start": 1241, + "end": 1297, "loc": { "start": { "line": 64, @@ -3926,8 +3891,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 1246, - "end": 1301, + "start": 1241, + "end": 1296, "loc": { "start": { "line": 64, @@ -3941,8 +3906,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 1246, - "end": 1277, + "start": 1241, + "end": 1272, "loc": { "start": { "line": 64, @@ -3955,8 +3920,8 @@ }, "object": { "type": "MemberExpression", - "start": 1246, - "end": 1262, + "start": 1241, + "end": 1257, "loc": { "start": { "line": 64, @@ -3969,8 +3934,8 @@ }, "object": { "type": "Identifier", - "start": 1246, - "end": 1252, + "start": 1241, + "end": 1247, "loc": { "start": { "line": 64, @@ -3986,8 +3951,8 @@ }, "property": { "type": "Identifier", - "start": 1253, - "end": 1262, + "start": 1248, + "end": 1257, "loc": { "start": { "line": 64, @@ -4005,8 +3970,8 @@ }, "property": { "type": "StringLiteral", - "start": 1263, - "end": 1276, + "start": 1258, + "end": 1271, "loc": { "start": { "line": 64, @@ -4027,8 +3992,8 @@ }, "right": { "type": "MemberExpression", - "start": 1280, - "end": 1301, + "start": 1275, + "end": 1296, "loc": { "start": { "line": 64, @@ -4041,8 +4006,8 @@ }, "object": { "type": "MemberExpression", - "start": 1280, - "end": 1296, + "start": 1275, + "end": 1291, "loc": { "start": { "line": 64, @@ -4055,8 +4020,8 @@ }, "object": { "type": "Identifier", - "start": 1280, - "end": 1286, + "start": 1275, + "end": 1281, "loc": { "start": { "line": 64, @@ -4072,8 +4037,8 @@ }, "property": { "type": "Identifier", - "start": 1287, - "end": 1296, + "start": 1282, + "end": 1291, "loc": { "start": { "line": 64, @@ -4091,8 +4056,8 @@ }, "property": { "type": "StringLiteral", - "start": 1297, - "end": 1300, + "start": 1292, + "end": 1295, "loc": { "start": { "line": 64, @@ -4136,8 +4101,8 @@ { "type": "CommentLine", "value": " Get index", - "start": 141, - "end": 153, + "start": 136, + "end": 148, "loc": { "start": { "line": 7, @@ -4152,8 +4117,8 @@ { "type": "CommentLine", "value": " Get value", - "start": 276, - "end": 288, + "start": 271, + "end": 283, "loc": { "start": { "line": 13, @@ -4168,8 +4133,8 @@ { "type": "CommentLine", "value": " Return value or keep recursion", - "start": 403, - "end": 436, + "start": 398, + "end": 431, "loc": { "start": { "line": 21, @@ -4184,8 +4149,8 @@ { "type": "CommentLine", "value": " SETELEM", - "start": 535, - "end": 545, + "start": 530, + "end": 540, "loc": { "start": { "line": 29, @@ -4200,8 +4165,8 @@ { "type": "CommentLine", "value": " Get index", - "start": 652, - "end": 664, + "start": 647, + "end": 659, "loc": { "start": { "line": 34, @@ -4216,8 +4181,8 @@ { "type": "CommentLine", "value": " Set value or continue the recursion", - "start": 787, - "end": 825, + "start": 782, + "end": 820, "loc": { "start": { "line": 40, @@ -4232,8 +4197,8 @@ { "type": "CommentLine", "value": " NUMBER", - "start": 1072, - "end": 1081, + "start": 1067, + "end": 1076, "loc": { "start": { "line": 55, @@ -4265,10 +4230,10 @@ }, { "type": { - "label": "const", - "keyword": "const", + "label": "import", + "keyword": "import", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -4277,9 +4242,9 @@ "binop": null, "updateContext": null }, - "value": "const", + "value": "import", "start": 8, - "end": 13, + "end": 14, "loc": { "start": { "line": 2, @@ -4287,7 +4252,7 @@ }, "end": { "line": 2, - "column": 5 + "column": 6 } } }, @@ -4304,43 +4269,16 @@ "binop": null }, "value": "utils", - "start": 14, - "end": 19, + "start": 15, + "end": 20, "loc": { "start": { "line": 2, - "column": 6 + "column": 7 }, "end": { - "line": 2, - "column": 11 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 20, - "end": 21, - "loc": { - "start": { "line": 2, "column": 12 - }, - "end": { - "line": 2, - "column": 13 } } }, @@ -4356,42 +4294,17 @@ "postfix": false, "binop": null }, - "value": "require", - "start": 22, - "end": 29, - "loc": { - "start": { - "line": 2, - "column": 14 - }, - "end": { - "line": 2, - "column": 21 - } - } - }, - { - "type": { - "label": "(", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 29, - "end": 30, + "value": "from", + "start": 21, + "end": 25, "loc": { "start": { "line": 2, - "column": 21 + "column": 13 }, "end": { "line": 2, - "column": 22 + "column": 17 } } }, @@ -4409,41 +4322,16 @@ "updateContext": null }, "value": "../utils.js", - "start": 30, - "end": 43, + "start": 26, + "end": 39, "loc": { "start": { "line": 2, - "column": 22 - }, - "end": { - "line": 2, - "column": 35 - } - } - }, - { - "type": { - "label": ")", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 43, - "end": 44, - "loc": { - "start": { - "line": 2, - "column": 35 + "column": 18 }, "end": { "line": 2, - "column": 36 + "column": 31 } } }, @@ -4460,16 +4348,16 @@ "binop": null, "updateContext": null }, - "start": 44, - "end": 45, + "start": 39, + "end": 40, "loc": { "start": { "line": 2, - "column": 36 + "column": 31 }, "end": { "line": 2, - "column": 37 + "column": 32 } } }, @@ -4486,8 +4374,8 @@ "binop": null }, "value": "Object", - "start": 47, - "end": 53, + "start": 42, + "end": 48, "loc": { "start": { "line": 4, @@ -4512,8 +4400,8 @@ "binop": null, "updateContext": null }, - "start": 53, - "end": 54, + "start": 48, + "end": 49, "loc": { "start": { "line": 4, @@ -4538,8 +4426,8 @@ "binop": null }, "value": "prototype", - "start": 54, - "end": 63, + "start": 49, + "end": 58, "loc": { "start": { "line": 4, @@ -4564,8 +4452,8 @@ "binop": null, "updateContext": null }, - "start": 63, - "end": 64, + "start": 58, + "end": 59, "loc": { "start": { "line": 4, @@ -4590,8 +4478,8 @@ "binop": null }, "value": "sub", - "start": 64, - "end": 67, + "start": 59, + "end": 62, "loc": { "start": { "line": 4, @@ -4617,8 +4505,8 @@ "updateContext": null }, "value": "=", - "start": 68, - "end": 69, + "start": 63, + "end": 64, "loc": { "start": { "line": 4, @@ -4644,8 +4532,8 @@ "binop": null }, "value": "function", - "start": 70, - "end": 78, + "start": 65, + "end": 73, "loc": { "start": { "line": 4, @@ -4669,8 +4557,8 @@ "postfix": false, "binop": null }, - "start": 78, - "end": 79, + "start": 73, + "end": 74, "loc": { "start": { "line": 4, @@ -4695,8 +4583,8 @@ "binop": null, "updateContext": null }, - "start": 79, - "end": 82, + "start": 74, + "end": 77, "loc": { "start": { "line": 4, @@ -4721,8 +4609,8 @@ "binop": null }, "value": "indices", - "start": 82, - "end": 89, + "start": 77, + "end": 84, "loc": { "start": { "line": 4, @@ -4746,8 +4634,8 @@ "postfix": false, "binop": null }, - "start": 89, - "end": 90, + "start": 84, + "end": 85, "loc": { "start": { "line": 4, @@ -4771,8 +4659,8 @@ "postfix": false, "binop": null }, - "start": 91, - "end": 92, + "start": 86, + "end": 87, "loc": { "start": { "line": 4, @@ -4797,8 +4685,8 @@ "binop": null }, "value": "utils", - "start": 95, - "end": 100, + "start": 90, + "end": 95, "loc": { "start": { "line": 5, @@ -4823,8 +4711,8 @@ "binop": null, "updateContext": null }, - "start": 100, - "end": 101, + "start": 95, + "end": 96, "loc": { "start": { "line": 5, @@ -4849,8 +4737,8 @@ "binop": null }, "value": "checkIterable", - "start": 101, - "end": 114, + "start": 96, + "end": 109, "loc": { "start": { "line": 5, @@ -4874,8 +4762,8 @@ "postfix": false, "binop": null }, - "start": 114, - "end": 115, + "start": 109, + "end": 110, "loc": { "start": { "line": 5, @@ -4902,8 +4790,8 @@ "updateContext": null }, "value": "this", - "start": 115, - "end": 119, + "start": 110, + "end": 114, "loc": { "start": { "line": 5, @@ -4928,8 +4816,8 @@ "binop": null, "updateContext": null }, - "start": 119, - "end": 120, + "start": 114, + "end": 115, "loc": { "start": { "line": 5, @@ -4954,8 +4842,8 @@ "binop": null }, "value": "indices", - "start": 121, - "end": 128, + "start": 116, + "end": 123, "loc": { "start": { "line": 5, @@ -4980,8 +4868,8 @@ "binop": null, "updateContext": null }, - "start": 128, - "end": 129, + "start": 123, + "end": 124, "loc": { "start": { "line": 5, @@ -5006,8 +4894,8 @@ "binop": null }, "value": "length", - "start": 129, - "end": 135, + "start": 124, + "end": 130, "loc": { "start": { "line": 5, @@ -5031,8 +4919,8 @@ "postfix": false, "binop": null }, - "start": 135, - "end": 136, + "start": 130, + "end": 131, "loc": { "start": { "line": 5, @@ -5057,8 +4945,8 @@ "binop": null, "updateContext": null }, - "start": 136, - "end": 137, + "start": 131, + "end": 132, "loc": { "start": { "line": 5, @@ -5073,8 +4961,8 @@ { "type": "CommentLine", "value": " Get index", - "start": 141, - "end": 153, + "start": 136, + "end": 148, "loc": { "start": { "line": 7, @@ -5101,8 +4989,8 @@ "updateContext": null }, "value": "let", - "start": 156, - "end": 159, + "start": 151, + "end": 154, "loc": { "start": { "line": 8, @@ -5127,8 +5015,8 @@ "binop": null }, "value": "index", - "start": 160, - "end": 165, + "start": 155, + "end": 160, "loc": { "start": { "line": 8, @@ -5154,8 +5042,8 @@ "updateContext": null }, "value": "=", - "start": 166, - "end": 167, + "start": 161, + "end": 162, "loc": { "start": { "line": 8, @@ -5180,8 +5068,8 @@ "binop": null }, "value": "indices", - "start": 168, - "end": 175, + "start": 163, + "end": 170, "loc": { "start": { "line": 8, @@ -5206,8 +5094,8 @@ "binop": null, "updateContext": null }, - "start": 175, - "end": 176, + "start": 170, + "end": 171, "loc": { "start": { "line": 8, @@ -5233,8 +5121,8 @@ "updateContext": null }, "value": 0, - "start": 176, - "end": 177, + "start": 171, + "end": 172, "loc": { "start": { "line": 8, @@ -5259,8 +5147,8 @@ "binop": null, "updateContext": null }, - "start": 177, - "end": 178, + "start": 172, + "end": 173, "loc": { "start": { "line": 8, @@ -5285,8 +5173,8 @@ "binop": null, "updateContext": null }, - "start": 178, - "end": 179, + "start": 173, + "end": 174, "loc": { "start": { "line": 8, @@ -5313,8 +5201,8 @@ "updateContext": null }, "value": "if", - "start": 182, - "end": 184, + "start": 177, + "end": 179, "loc": { "start": { "line": 9, @@ -5338,8 +5226,8 @@ "postfix": false, "binop": null }, - "start": 185, - "end": 186, + "start": 180, + "end": 181, "loc": { "start": { "line": 9, @@ -5366,8 +5254,8 @@ "updateContext": null }, "value": "this", - "start": 186, - "end": 190, + "start": 181, + "end": 185, "loc": { "start": { "line": 9, @@ -5394,8 +5282,8 @@ "updateContext": null }, "value": "instanceof", - "start": 191, - "end": 201, + "start": 186, + "end": 196, "loc": { "start": { "line": 9, @@ -5420,8 +5308,8 @@ "binop": null }, "value": "Array", - "start": 202, - "end": 207, + "start": 197, + "end": 202, "loc": { "start": { "line": 9, @@ -5445,8 +5333,8 @@ "postfix": false, "binop": null }, - "start": 207, - "end": 208, + "start": 202, + "end": 203, "loc": { "start": { "line": 9, @@ -5470,8 +5358,8 @@ "postfix": false, "binop": null }, - "start": 209, - "end": 210, + "start": 204, + "end": 205, "loc": { "start": { "line": 9, @@ -5496,8 +5384,8 @@ "binop": null }, "value": "index", - "start": 215, - "end": 220, + "start": 210, + "end": 215, "loc": { "start": { "line": 10, @@ -5523,8 +5411,8 @@ "updateContext": null }, "value": "=", - "start": 221, - "end": 222, + "start": 216, + "end": 217, "loc": { "start": { "line": 10, @@ -5549,8 +5437,8 @@ "binop": null }, "value": "utils", - "start": 223, - "end": 228, + "start": 218, + "end": 223, "loc": { "start": { "line": 10, @@ -5575,8 +5463,8 @@ "binop": null, "updateContext": null }, - "start": 228, - "end": 229, + "start": 223, + "end": 224, "loc": { "start": { "line": 10, @@ -5601,8 +5489,8 @@ "binop": null }, "value": "getValidIndex", - "start": 229, - "end": 242, + "start": 224, + "end": 237, "loc": { "start": { "line": 10, @@ -5626,8 +5514,8 @@ "postfix": false, "binop": null }, - "start": 242, - "end": 243, + "start": 237, + "end": 238, "loc": { "start": { "line": 10, @@ -5654,8 +5542,8 @@ "updateContext": null }, "value": "this", - "start": 243, - "end": 247, + "start": 238, + "end": 242, "loc": { "start": { "line": 10, @@ -5680,8 +5568,8 @@ "binop": null, "updateContext": null }, - "start": 247, - "end": 248, + "start": 242, + "end": 243, "loc": { "start": { "line": 10, @@ -5706,8 +5594,8 @@ "binop": null }, "value": "length", - "start": 248, - "end": 254, + "start": 243, + "end": 249, "loc": { "start": { "line": 10, @@ -5732,8 +5620,8 @@ "binop": null, "updateContext": null }, - "start": 254, - "end": 255, + "start": 249, + "end": 250, "loc": { "start": { "line": 10, @@ -5758,8 +5646,8 @@ "binop": null }, "value": "indices", - "start": 256, - "end": 263, + "start": 251, + "end": 258, "loc": { "start": { "line": 10, @@ -5784,8 +5672,8 @@ "binop": null, "updateContext": null }, - "start": 263, - "end": 264, + "start": 258, + "end": 259, "loc": { "start": { "line": 10, @@ -5811,8 +5699,8 @@ "updateContext": null }, "value": 0, - "start": 264, - "end": 265, + "start": 259, + "end": 260, "loc": { "start": { "line": 10, @@ -5837,8 +5725,8 @@ "binop": null, "updateContext": null }, - "start": 265, - "end": 266, + "start": 260, + "end": 261, "loc": { "start": { "line": 10, @@ -5862,8 +5750,8 @@ "postfix": false, "binop": null }, - "start": 266, - "end": 267, + "start": 261, + "end": 262, "loc": { "start": { "line": 10, @@ -5888,8 +5776,8 @@ "binop": null, "updateContext": null }, - "start": 267, - "end": 268, + "start": 262, + "end": 263, "loc": { "start": { "line": 10, @@ -5913,8 +5801,8 @@ "postfix": false, "binop": null }, - "start": 271, - "end": 272, + "start": 266, + "end": 267, "loc": { "start": { "line": 11, @@ -5929,8 +5817,8 @@ { "type": "CommentLine", "value": " Get value", - "start": 276, - "end": 288, + "start": 271, + "end": 283, "loc": { "start": { "line": 13, @@ -5957,8 +5845,8 @@ "updateContext": null }, "value": "let", - "start": 291, - "end": 294, + "start": 286, + "end": 289, "loc": { "start": { "line": 14, @@ -5983,8 +5871,8 @@ "binop": null }, "value": "value", - "start": 295, - "end": 300, + "start": 290, + "end": 295, "loc": { "start": { "line": 14, @@ -6009,8 +5897,8 @@ "binop": null, "updateContext": null }, - "start": 300, - "end": 301, + "start": 295, + "end": 296, "loc": { "start": { "line": 14, @@ -6037,8 +5925,8 @@ "updateContext": null }, "value": "if", - "start": 304, - "end": 306, + "start": 299, + "end": 301, "loc": { "start": { "line": 15, @@ -6062,8 +5950,8 @@ "postfix": false, "binop": null }, - "start": 307, - "end": 308, + "start": 302, + "end": 303, "loc": { "start": { "line": 15, @@ -6090,8 +5978,8 @@ "updateContext": null }, "value": "this", - "start": 308, - "end": 312, + "start": 303, + "end": 307, "loc": { "start": { "line": 15, @@ -6118,8 +6006,8 @@ "updateContext": null }, "value": "instanceof", - "start": 313, - "end": 323, + "start": 308, + "end": 318, "loc": { "start": { "line": 15, @@ -6144,8 +6032,8 @@ "binop": null }, "value": "Map", - "start": 324, - "end": 327, + "start": 319, + "end": 322, "loc": { "start": { "line": 15, @@ -6169,8 +6057,8 @@ "postfix": false, "binop": null }, - "start": 327, - "end": 328, + "start": 322, + "end": 323, "loc": { "start": { "line": 15, @@ -6194,8 +6082,8 @@ "postfix": false, "binop": null }, - "start": 329, - "end": 330, + "start": 324, + "end": 325, "loc": { "start": { "line": 15, @@ -6220,8 +6108,8 @@ "binop": null }, "value": "value", - "start": 335, - "end": 340, + "start": 330, + "end": 335, "loc": { "start": { "line": 16, @@ -6247,8 +6135,8 @@ "updateContext": null }, "value": "=", - "start": 341, - "end": 342, + "start": 336, + "end": 337, "loc": { "start": { "line": 16, @@ -6275,8 +6163,8 @@ "updateContext": null }, "value": "this", - "start": 343, - "end": 347, + "start": 338, + "end": 342, "loc": { "start": { "line": 16, @@ -6301,8 +6189,8 @@ "binop": null, "updateContext": null }, - "start": 347, - "end": 348, + "start": 342, + "end": 343, "loc": { "start": { "line": 16, @@ -6327,8 +6215,8 @@ "binop": null }, "value": "get", - "start": 348, - "end": 351, + "start": 343, + "end": 346, "loc": { "start": { "line": 16, @@ -6352,8 +6240,8 @@ "postfix": false, "binop": null }, - "start": 351, - "end": 352, + "start": 346, + "end": 347, "loc": { "start": { "line": 16, @@ -6378,8 +6266,8 @@ "binop": null }, "value": "index", - "start": 352, - "end": 357, + "start": 347, + "end": 352, "loc": { "start": { "line": 16, @@ -6403,8 +6291,8 @@ "postfix": false, "binop": null }, - "start": 357, - "end": 358, + "start": 352, + "end": 353, "loc": { "start": { "line": 16, @@ -6429,8 +6317,8 @@ "binop": null, "updateContext": null }, - "start": 358, - "end": 359, + "start": 353, + "end": 354, "loc": { "start": { "line": 16, @@ -6454,8 +6342,8 @@ "postfix": false, "binop": null }, - "start": 362, - "end": 363, + "start": 357, + "end": 358, "loc": { "start": { "line": 17, @@ -6482,8 +6370,8 @@ "updateContext": null }, "value": "else", - "start": 364, - "end": 368, + "start": 359, + "end": 363, "loc": { "start": { "line": 17, @@ -6507,8 +6395,8 @@ "postfix": false, "binop": null }, - "start": 369, - "end": 370, + "start": 364, + "end": 365, "loc": { "start": { "line": 17, @@ -6533,8 +6421,8 @@ "binop": null }, "value": "value", - "start": 375, - "end": 380, + "start": 370, + "end": 375, "loc": { "start": { "line": 18, @@ -6560,8 +6448,8 @@ "updateContext": null }, "value": "=", - "start": 381, - "end": 382, + "start": 376, + "end": 377, "loc": { "start": { "line": 18, @@ -6588,8 +6476,8 @@ "updateContext": null }, "value": "this", - "start": 383, - "end": 387, + "start": 378, + "end": 382, "loc": { "start": { "line": 18, @@ -6614,8 +6502,8 @@ "binop": null, "updateContext": null }, - "start": 387, - "end": 388, + "start": 382, + "end": 383, "loc": { "start": { "line": 18, @@ -6640,8 +6528,8 @@ "binop": null }, "value": "index", - "start": 388, - "end": 393, + "start": 383, + "end": 388, "loc": { "start": { "line": 18, @@ -6666,8 +6554,8 @@ "binop": null, "updateContext": null }, - "start": 393, - "end": 394, + "start": 388, + "end": 389, "loc": { "start": { "line": 18, @@ -6692,8 +6580,8 @@ "binop": null, "updateContext": null }, - "start": 394, - "end": 395, + "start": 389, + "end": 390, "loc": { "start": { "line": 18, @@ -6717,8 +6605,8 @@ "postfix": false, "binop": null }, - "start": 398, - "end": 399, + "start": 393, + "end": 394, "loc": { "start": { "line": 19, @@ -6733,8 +6621,8 @@ { "type": "CommentLine", "value": " Return value or keep recursion", - "start": 403, - "end": 436, + "start": 398, + "end": 431, "loc": { "start": { "line": 21, @@ -6761,8 +6649,8 @@ "updateContext": null }, "value": "if", - "start": 439, - "end": 441, + "start": 434, + "end": 436, "loc": { "start": { "line": 22, @@ -6786,8 +6674,8 @@ "postfix": false, "binop": null }, - "start": 442, - "end": 443, + "start": 437, + "end": 438, "loc": { "start": { "line": 22, @@ -6812,8 +6700,8 @@ "binop": null }, "value": "indices", - "start": 443, - "end": 450, + "start": 438, + "end": 445, "loc": { "start": { "line": 22, @@ -6838,8 +6726,8 @@ "binop": null, "updateContext": null }, - "start": 450, - "end": 451, + "start": 445, + "end": 446, "loc": { "start": { "line": 22, @@ -6864,8 +6752,8 @@ "binop": null }, "value": "length", - "start": 451, - "end": 457, + "start": 446, + "end": 452, "loc": { "start": { "line": 22, @@ -6891,8 +6779,8 @@ "updateContext": null }, "value": "===", - "start": 458, - "end": 461, + "start": 453, + "end": 456, "loc": { "start": { "line": 22, @@ -6918,8 +6806,8 @@ "updateContext": null }, "value": 1, - "start": 462, - "end": 463, + "start": 457, + "end": 458, "loc": { "start": { "line": 22, @@ -6943,8 +6831,8 @@ "postfix": false, "binop": null }, - "start": 463, - "end": 464, + "start": 458, + "end": 459, "loc": { "start": { "line": 22, @@ -6968,8 +6856,8 @@ "postfix": false, "binop": null }, - "start": 465, - "end": 466, + "start": 460, + "end": 461, "loc": { "start": { "line": 22, @@ -6996,8 +6884,8 @@ "updateContext": null }, "value": "return", - "start": 471, - "end": 477, + "start": 466, + "end": 472, "loc": { "start": { "line": 23, @@ -7022,8 +6910,8 @@ "binop": null }, "value": "value", - "start": 478, - "end": 483, + "start": 473, + "end": 478, "loc": { "start": { "line": 23, @@ -7048,8 +6936,8 @@ "binop": null, "updateContext": null }, - "start": 483, - "end": 484, + "start": 478, + "end": 479, "loc": { "start": { "line": 23, @@ -7073,8 +6961,8 @@ "postfix": false, "binop": null }, - "start": 487, - "end": 488, + "start": 482, + "end": 483, "loc": { "start": { "line": 24, @@ -7101,8 +6989,8 @@ "updateContext": null }, "value": "return", - "start": 492, - "end": 498, + "start": 487, + "end": 493, "loc": { "start": { "line": 26, @@ -7127,8 +7015,8 @@ "binop": null }, "value": "value", - "start": 499, - "end": 504, + "start": 494, + "end": 499, "loc": { "start": { "line": 26, @@ -7153,8 +7041,8 @@ "binop": null, "updateContext": null }, - "start": 504, - "end": 505, + "start": 499, + "end": 500, "loc": { "start": { "line": 26, @@ -7179,8 +7067,8 @@ "binop": null }, "value": "sub", - "start": 505, - "end": 508, + "start": 500, + "end": 503, "loc": { "start": { "line": 26, @@ -7204,8 +7092,8 @@ "postfix": false, "binop": null }, - "start": 508, - "end": 509, + "start": 503, + "end": 504, "loc": { "start": { "line": 26, @@ -7230,8 +7118,8 @@ "binop": null, "updateContext": null }, - "start": 509, - "end": 512, + "start": 504, + "end": 507, "loc": { "start": { "line": 26, @@ -7256,8 +7144,8 @@ "binop": null }, "value": "indices", - "start": 512, - "end": 519, + "start": 507, + "end": 514, "loc": { "start": { "line": 26, @@ -7282,8 +7170,8 @@ "binop": null, "updateContext": null }, - "start": 519, - "end": 520, + "start": 514, + "end": 515, "loc": { "start": { "line": 26, @@ -7308,8 +7196,8 @@ "binop": null }, "value": "slice", - "start": 520, - "end": 525, + "start": 515, + "end": 520, "loc": { "start": { "line": 26, @@ -7333,8 +7221,8 @@ "postfix": false, "binop": null }, - "start": 525, - "end": 526, + "start": 520, + "end": 521, "loc": { "start": { "line": 26, @@ -7360,8 +7248,8 @@ "updateContext": null }, "value": 1, - "start": 526, - "end": 527, + "start": 521, + "end": 522, "loc": { "start": { "line": 26, @@ -7385,8 +7273,8 @@ "postfix": false, "binop": null }, - "start": 527, - "end": 528, + "start": 522, + "end": 523, "loc": { "start": { "line": 26, @@ -7410,8 +7298,8 @@ "postfix": false, "binop": null }, - "start": 528, - "end": 529, + "start": 523, + "end": 524, "loc": { "start": { "line": 26, @@ -7436,8 +7324,8 @@ "binop": null, "updateContext": null }, - "start": 529, - "end": 530, + "start": 524, + "end": 525, "loc": { "start": { "line": 26, @@ -7461,8 +7349,8 @@ "postfix": false, "binop": null }, - "start": 531, - "end": 532, + "start": 526, + "end": 527, "loc": { "start": { "line": 27, @@ -7487,8 +7375,8 @@ "binop": null, "updateContext": null }, - "start": 532, - "end": 533, + "start": 527, + "end": 528, "loc": { "start": { "line": 27, @@ -7503,8 +7391,8 @@ { "type": "CommentLine", "value": " SETELEM", - "start": 535, - "end": 545, + "start": 530, + "end": 540, "loc": { "start": { "line": 29, @@ -7529,8 +7417,8 @@ "binop": null }, "value": "Object", - "start": 547, - "end": 553, + "start": 542, + "end": 548, "loc": { "start": { "line": 31, @@ -7555,8 +7443,8 @@ "binop": null, "updateContext": null }, - "start": 553, - "end": 554, + "start": 548, + "end": 549, "loc": { "start": { "line": 31, @@ -7581,8 +7469,8 @@ "binop": null }, "value": "prototype", - "start": 554, - "end": 563, + "start": 549, + "end": 558, "loc": { "start": { "line": 31, @@ -7607,8 +7495,8 @@ "binop": null, "updateContext": null }, - "start": 563, - "end": 564, + "start": 558, + "end": 559, "loc": { "start": { "line": 31, @@ -7633,8 +7521,8 @@ "binop": null }, "value": "setelem", - "start": 564, - "end": 571, + "start": 559, + "end": 566, "loc": { "start": { "line": 31, @@ -7660,8 +7548,8 @@ "updateContext": null }, "value": "=", - "start": 572, - "end": 573, + "start": 567, + "end": 568, "loc": { "start": { "line": 31, @@ -7687,8 +7575,8 @@ "binop": null }, "value": "function", - "start": 574, - "end": 582, + "start": 569, + "end": 577, "loc": { "start": { "line": 31, @@ -7712,8 +7600,8 @@ "postfix": false, "binop": null }, - "start": 582, - "end": 583, + "start": 577, + "end": 578, "loc": { "start": { "line": 31, @@ -7738,8 +7626,8 @@ "binop": null }, "value": "value", - "start": 583, - "end": 588, + "start": 578, + "end": 583, "loc": { "start": { "line": 31, @@ -7764,8 +7652,8 @@ "binop": null, "updateContext": null }, - "start": 588, - "end": 589, + "start": 583, + "end": 584, "loc": { "start": { "line": 31, @@ -7790,8 +7678,8 @@ "binop": null, "updateContext": null }, - "start": 590, - "end": 593, + "start": 585, + "end": 588, "loc": { "start": { "line": 31, @@ -7816,8 +7704,8 @@ "binop": null }, "value": "indices", - "start": 593, - "end": 600, + "start": 588, + "end": 595, "loc": { "start": { "line": 31, @@ -7841,8 +7729,8 @@ "postfix": false, "binop": null }, - "start": 600, - "end": 601, + "start": 595, + "end": 596, "loc": { "start": { "line": 31, @@ -7866,8 +7754,8 @@ "postfix": false, "binop": null }, - "start": 602, - "end": 603, + "start": 597, + "end": 598, "loc": { "start": { "line": 31, @@ -7892,8 +7780,8 @@ "binop": null }, "value": "utils", - "start": 606, - "end": 611, + "start": 601, + "end": 606, "loc": { "start": { "line": 32, @@ -7918,8 +7806,8 @@ "binop": null, "updateContext": null }, - "start": 611, - "end": 612, + "start": 606, + "end": 607, "loc": { "start": { "line": 32, @@ -7944,8 +7832,8 @@ "binop": null }, "value": "checkIterable", - "start": 612, - "end": 625, + "start": 607, + "end": 620, "loc": { "start": { "line": 32, @@ -7969,8 +7857,8 @@ "postfix": false, "binop": null }, - "start": 625, - "end": 626, + "start": 620, + "end": 621, "loc": { "start": { "line": 32, @@ -7997,8 +7885,8 @@ "updateContext": null }, "value": "this", - "start": 626, - "end": 630, + "start": 621, + "end": 625, "loc": { "start": { "line": 32, @@ -8023,8 +7911,8 @@ "binop": null, "updateContext": null }, - "start": 630, - "end": 631, + "start": 625, + "end": 626, "loc": { "start": { "line": 32, @@ -8049,8 +7937,8 @@ "binop": null }, "value": "indices", - "start": 632, - "end": 639, + "start": 627, + "end": 634, "loc": { "start": { "line": 32, @@ -8075,8 +7963,8 @@ "binop": null, "updateContext": null }, - "start": 639, - "end": 640, + "start": 634, + "end": 635, "loc": { "start": { "line": 32, @@ -8101,8 +7989,8 @@ "binop": null }, "value": "length", - "start": 640, - "end": 646, + "start": 635, + "end": 641, "loc": { "start": { "line": 32, @@ -8126,8 +8014,8 @@ "postfix": false, "binop": null }, - "start": 646, - "end": 647, + "start": 641, + "end": 642, "loc": { "start": { "line": 32, @@ -8152,8 +8040,8 @@ "binop": null, "updateContext": null }, - "start": 647, - "end": 648, + "start": 642, + "end": 643, "loc": { "start": { "line": 32, @@ -8168,8 +8056,8 @@ { "type": "CommentLine", "value": " Get index", - "start": 652, - "end": 664, + "start": 647, + "end": 659, "loc": { "start": { "line": 34, @@ -8196,8 +8084,8 @@ "updateContext": null }, "value": "let", - "start": 667, - "end": 670, + "start": 662, + "end": 665, "loc": { "start": { "line": 35, @@ -8222,8 +8110,8 @@ "binop": null }, "value": "index", - "start": 671, - "end": 676, + "start": 666, + "end": 671, "loc": { "start": { "line": 35, @@ -8249,8 +8137,8 @@ "updateContext": null }, "value": "=", - "start": 677, - "end": 678, + "start": 672, + "end": 673, "loc": { "start": { "line": 35, @@ -8275,8 +8163,8 @@ "binop": null }, "value": "indices", - "start": 679, - "end": 686, + "start": 674, + "end": 681, "loc": { "start": { "line": 35, @@ -8301,8 +8189,8 @@ "binop": null, "updateContext": null }, - "start": 686, - "end": 687, + "start": 681, + "end": 682, "loc": { "start": { "line": 35, @@ -8328,8 +8216,8 @@ "updateContext": null }, "value": 0, - "start": 687, - "end": 688, + "start": 682, + "end": 683, "loc": { "start": { "line": 35, @@ -8354,8 +8242,8 @@ "binop": null, "updateContext": null }, - "start": 688, - "end": 689, + "start": 683, + "end": 684, "loc": { "start": { "line": 35, @@ -8380,8 +8268,8 @@ "binop": null, "updateContext": null }, - "start": 689, - "end": 690, + "start": 684, + "end": 685, "loc": { "start": { "line": 35, @@ -8408,8 +8296,8 @@ "updateContext": null }, "value": "if", - "start": 693, - "end": 695, + "start": 688, + "end": 690, "loc": { "start": { "line": 36, @@ -8433,8 +8321,8 @@ "postfix": false, "binop": null }, - "start": 696, - "end": 697, + "start": 691, + "end": 692, "loc": { "start": { "line": 36, @@ -8461,8 +8349,8 @@ "updateContext": null }, "value": "this", - "start": 697, - "end": 701, + "start": 692, + "end": 696, "loc": { "start": { "line": 36, @@ -8489,8 +8377,8 @@ "updateContext": null }, "value": "instanceof", - "start": 702, - "end": 712, + "start": 697, + "end": 707, "loc": { "start": { "line": 36, @@ -8515,8 +8403,8 @@ "binop": null }, "value": "Array", - "start": 713, - "end": 718, + "start": 708, + "end": 713, "loc": { "start": { "line": 36, @@ -8540,8 +8428,8 @@ "postfix": false, "binop": null }, - "start": 718, - "end": 719, + "start": 713, + "end": 714, "loc": { "start": { "line": 36, @@ -8565,8 +8453,8 @@ "postfix": false, "binop": null }, - "start": 720, - "end": 721, + "start": 715, + "end": 716, "loc": { "start": { "line": 36, @@ -8591,8 +8479,8 @@ "binop": null }, "value": "index", - "start": 726, - "end": 731, + "start": 721, + "end": 726, "loc": { "start": { "line": 37, @@ -8618,8 +8506,8 @@ "updateContext": null }, "value": "=", - "start": 732, - "end": 733, + "start": 727, + "end": 728, "loc": { "start": { "line": 37, @@ -8644,8 +8532,8 @@ "binop": null }, "value": "utils", - "start": 734, - "end": 739, + "start": 729, + "end": 734, "loc": { "start": { "line": 37, @@ -8670,8 +8558,8 @@ "binop": null, "updateContext": null }, - "start": 739, - "end": 740, + "start": 734, + "end": 735, "loc": { "start": { "line": 37, @@ -8696,8 +8584,8 @@ "binop": null }, "value": "getValidIndex", - "start": 740, - "end": 753, + "start": 735, + "end": 748, "loc": { "start": { "line": 37, @@ -8721,8 +8609,8 @@ "postfix": false, "binop": null }, - "start": 753, - "end": 754, + "start": 748, + "end": 749, "loc": { "start": { "line": 37, @@ -8749,8 +8637,8 @@ "updateContext": null }, "value": "this", - "start": 754, - "end": 758, + "start": 749, + "end": 753, "loc": { "start": { "line": 37, @@ -8775,8 +8663,8 @@ "binop": null, "updateContext": null }, - "start": 758, - "end": 759, + "start": 753, + "end": 754, "loc": { "start": { "line": 37, @@ -8801,8 +8689,8 @@ "binop": null }, "value": "length", - "start": 759, - "end": 765, + "start": 754, + "end": 760, "loc": { "start": { "line": 37, @@ -8827,8 +8715,8 @@ "binop": null, "updateContext": null }, - "start": 765, - "end": 766, + "start": 760, + "end": 761, "loc": { "start": { "line": 37, @@ -8853,8 +8741,8 @@ "binop": null }, "value": "indices", - "start": 767, - "end": 774, + "start": 762, + "end": 769, "loc": { "start": { "line": 37, @@ -8879,8 +8767,8 @@ "binop": null, "updateContext": null }, - "start": 774, - "end": 775, + "start": 769, + "end": 770, "loc": { "start": { "line": 37, @@ -8906,8 +8794,8 @@ "updateContext": null }, "value": 0, - "start": 775, - "end": 776, + "start": 770, + "end": 771, "loc": { "start": { "line": 37, @@ -8932,8 +8820,8 @@ "binop": null, "updateContext": null }, - "start": 776, - "end": 777, + "start": 771, + "end": 772, "loc": { "start": { "line": 37, @@ -8957,8 +8845,8 @@ "postfix": false, "binop": null }, - "start": 777, - "end": 778, + "start": 772, + "end": 773, "loc": { "start": { "line": 37, @@ -8983,8 +8871,8 @@ "binop": null, "updateContext": null }, - "start": 778, - "end": 779, + "start": 773, + "end": 774, "loc": { "start": { "line": 37, @@ -9008,8 +8896,8 @@ "postfix": false, "binop": null }, - "start": 782, - "end": 783, + "start": 777, + "end": 778, "loc": { "start": { "line": 38, @@ -9024,8 +8912,8 @@ { "type": "CommentLine", "value": " Set value or continue the recursion", - "start": 787, - "end": 825, + "start": 782, + "end": 820, "loc": { "start": { "line": 40, @@ -9052,8 +8940,8 @@ "updateContext": null }, "value": "if", - "start": 828, - "end": 830, + "start": 823, + "end": 825, "loc": { "start": { "line": 41, @@ -9077,8 +8965,8 @@ "postfix": false, "binop": null }, - "start": 831, - "end": 832, + "start": 826, + "end": 827, "loc": { "start": { "line": 41, @@ -9103,8 +8991,8 @@ "binop": null }, "value": "indices", - "start": 832, - "end": 839, + "start": 827, + "end": 834, "loc": { "start": { "line": 41, @@ -9129,8 +9017,8 @@ "binop": null, "updateContext": null }, - "start": 839, - "end": 840, + "start": 834, + "end": 835, "loc": { "start": { "line": 41, @@ -9155,8 +9043,8 @@ "binop": null }, "value": "length", - "start": 840, - "end": 846, + "start": 835, + "end": 841, "loc": { "start": { "line": 41, @@ -9182,8 +9070,8 @@ "updateContext": null }, "value": "===", - "start": 847, - "end": 850, + "start": 842, + "end": 845, "loc": { "start": { "line": 41, @@ -9209,8 +9097,8 @@ "updateContext": null }, "value": 1, - "start": 851, - "end": 852, + "start": 846, + "end": 847, "loc": { "start": { "line": 41, @@ -9234,8 +9122,8 @@ "postfix": false, "binop": null }, - "start": 852, - "end": 853, + "start": 847, + "end": 848, "loc": { "start": { "line": 41, @@ -9259,8 +9147,8 @@ "postfix": false, "binop": null }, - "start": 854, - "end": 855, + "start": 849, + "end": 850, "loc": { "start": { "line": 41, @@ -9287,8 +9175,8 @@ "updateContext": null }, "value": "if", - "start": 860, - "end": 862, + "start": 855, + "end": 857, "loc": { "start": { "line": 42, @@ -9312,8 +9200,8 @@ "postfix": false, "binop": null }, - "start": 863, - "end": 864, + "start": 858, + "end": 859, "loc": { "start": { "line": 42, @@ -9340,8 +9228,8 @@ "updateContext": null }, "value": "this", - "start": 864, - "end": 868, + "start": 859, + "end": 863, "loc": { "start": { "line": 42, @@ -9368,8 +9256,8 @@ "updateContext": null }, "value": "instanceof", - "start": 869, - "end": 879, + "start": 864, + "end": 874, "loc": { "start": { "line": 42, @@ -9394,8 +9282,8 @@ "binop": null }, "value": "Map", - "start": 880, - "end": 883, + "start": 875, + "end": 878, "loc": { "start": { "line": 42, @@ -9419,8 +9307,8 @@ "postfix": false, "binop": null }, - "start": 883, - "end": 884, + "start": 878, + "end": 879, "loc": { "start": { "line": 42, @@ -9444,8 +9332,8 @@ "postfix": false, "binop": null }, - "start": 885, - "end": 886, + "start": 880, + "end": 881, "loc": { "start": { "line": 42, @@ -9472,8 +9360,8 @@ "updateContext": null }, "value": "this", - "start": 893, - "end": 897, + "start": 888, + "end": 892, "loc": { "start": { "line": 43, @@ -9498,8 +9386,8 @@ "binop": null, "updateContext": null }, - "start": 897, - "end": 898, + "start": 892, + "end": 893, "loc": { "start": { "line": 43, @@ -9524,8 +9412,8 @@ "binop": null }, "value": "set", - "start": 898, - "end": 901, + "start": 893, + "end": 896, "loc": { "start": { "line": 43, @@ -9549,8 +9437,8 @@ "postfix": false, "binop": null }, - "start": 901, - "end": 902, + "start": 896, + "end": 897, "loc": { "start": { "line": 43, @@ -9575,8 +9463,8 @@ "binop": null }, "value": "index", - "start": 902, - "end": 907, + "start": 897, + "end": 902, "loc": { "start": { "line": 43, @@ -9601,8 +9489,8 @@ "binop": null, "updateContext": null }, - "start": 907, - "end": 908, + "start": 902, + "end": 903, "loc": { "start": { "line": 43, @@ -9627,8 +9515,8 @@ "binop": null }, "value": "value", - "start": 909, - "end": 914, + "start": 904, + "end": 909, "loc": { "start": { "line": 43, @@ -9652,8 +9540,8 @@ "postfix": false, "binop": null }, - "start": 914, - "end": 915, + "start": 909, + "end": 910, "loc": { "start": { "line": 43, @@ -9678,8 +9566,8 @@ "binop": null, "updateContext": null }, - "start": 915, - "end": 916, + "start": 910, + "end": 911, "loc": { "start": { "line": 43, @@ -9703,8 +9591,8 @@ "postfix": false, "binop": null }, - "start": 921, - "end": 922, + "start": 916, + "end": 917, "loc": { "start": { "line": 44, @@ -9731,8 +9619,8 @@ "updateContext": null }, "value": "else", - "start": 923, - "end": 927, + "start": 918, + "end": 922, "loc": { "start": { "line": 44, @@ -9756,8 +9644,8 @@ "postfix": false, "binop": null }, - "start": 928, - "end": 929, + "start": 923, + "end": 924, "loc": { "start": { "line": 44, @@ -9784,8 +9672,8 @@ "updateContext": null }, "value": "this", - "start": 936, - "end": 940, + "start": 931, + "end": 935, "loc": { "start": { "line": 45, @@ -9810,8 +9698,8 @@ "binop": null, "updateContext": null }, - "start": 940, - "end": 941, + "start": 935, + "end": 936, "loc": { "start": { "line": 45, @@ -9836,8 +9724,8 @@ "binop": null }, "value": "index", - "start": 941, - "end": 946, + "start": 936, + "end": 941, "loc": { "start": { "line": 45, @@ -9862,8 +9750,8 @@ "binop": null, "updateContext": null }, - "start": 946, - "end": 947, + "start": 941, + "end": 942, "loc": { "start": { "line": 45, @@ -9889,8 +9777,8 @@ "updateContext": null }, "value": "=", - "start": 948, - "end": 949, + "start": 943, + "end": 944, "loc": { "start": { "line": 45, @@ -9915,8 +9803,8 @@ "binop": null }, "value": "value", - "start": 950, - "end": 955, + "start": 945, + "end": 950, "loc": { "start": { "line": 45, @@ -9941,8 +9829,8 @@ "binop": null, "updateContext": null }, - "start": 955, - "end": 956, + "start": 950, + "end": 951, "loc": { "start": { "line": 45, @@ -9966,8 +9854,8 @@ "postfix": false, "binop": null }, - "start": 961, - "end": 962, + "start": 956, + "end": 957, "loc": { "start": { "line": 46, @@ -9994,8 +9882,8 @@ "updateContext": null }, "value": "return", - "start": 968, - "end": 974, + "start": 963, + "end": 969, "loc": { "start": { "line": 48, @@ -10020,8 +9908,8 @@ "binop": null }, "value": "value", - "start": 975, - "end": 980, + "start": 970, + "end": 975, "loc": { "start": { "line": 48, @@ -10046,8 +9934,8 @@ "binop": null, "updateContext": null }, - "start": 980, - "end": 981, + "start": 975, + "end": 976, "loc": { "start": { "line": 48, @@ -10071,8 +9959,8 @@ "postfix": false, "binop": null }, - "start": 984, - "end": 985, + "start": 979, + "end": 980, "loc": { "start": { "line": 49, @@ -10099,8 +9987,8 @@ "updateContext": null }, "value": "const", - "start": 989, - "end": 994, + "start": 984, + "end": 989, "loc": { "start": { "line": 51, @@ -10125,8 +10013,8 @@ "binop": null }, "value": "obj", - "start": 995, - "end": 998, + "start": 990, + "end": 993, "loc": { "start": { "line": 51, @@ -10152,8 +10040,8 @@ "updateContext": null }, "value": "=", - "start": 999, - "end": 1000, + "start": 994, + "end": 995, "loc": { "start": { "line": 51, @@ -10180,8 +10068,8 @@ "updateContext": null }, "value": "this", - "start": 1001, - "end": 1005, + "start": 996, + "end": 1000, "loc": { "start": { "line": 51, @@ -10206,8 +10094,8 @@ "binop": null, "updateContext": null }, - "start": 1005, - "end": 1006, + "start": 1000, + "end": 1001, "loc": { "start": { "line": 51, @@ -10232,8 +10120,8 @@ "binop": null }, "value": "sub", - "start": 1006, - "end": 1009, + "start": 1001, + "end": 1004, "loc": { "start": { "line": 51, @@ -10257,8 +10145,8 @@ "postfix": false, "binop": null }, - "start": 1009, - "end": 1010, + "start": 1004, + "end": 1005, "loc": { "start": { "line": 51, @@ -10283,8 +10171,8 @@ "binop": null }, "value": "index", - "start": 1010, - "end": 1015, + "start": 1005, + "end": 1010, "loc": { "start": { "line": 51, @@ -10308,8 +10196,8 @@ "postfix": false, "binop": null }, - "start": 1015, - "end": 1016, + "start": 1010, + "end": 1011, "loc": { "start": { "line": 51, @@ -10334,8 +10222,8 @@ "binop": null, "updateContext": null }, - "start": 1016, - "end": 1017, + "start": 1011, + "end": 1012, "loc": { "start": { "line": 51, @@ -10362,8 +10250,8 @@ "updateContext": null }, "value": "return", - "start": 1020, - "end": 1026, + "start": 1015, + "end": 1021, "loc": { "start": { "line": 52, @@ -10388,8 +10276,8 @@ "binop": null }, "value": "obj", - "start": 1027, - "end": 1030, + "start": 1022, + "end": 1025, "loc": { "start": { "line": 52, @@ -10414,8 +10302,8 @@ "binop": null, "updateContext": null }, - "start": 1030, - "end": 1031, + "start": 1025, + "end": 1026, "loc": { "start": { "line": 52, @@ -10440,8 +10328,8 @@ "binop": null }, "value": "setelem", - "start": 1031, - "end": 1038, + "start": 1026, + "end": 1033, "loc": { "start": { "line": 52, @@ -10465,8 +10353,8 @@ "postfix": false, "binop": null }, - "start": 1038, - "end": 1039, + "start": 1033, + "end": 1034, "loc": { "start": { "line": 52, @@ -10491,8 +10379,8 @@ "binop": null }, "value": "value", - "start": 1039, - "end": 1044, + "start": 1034, + "end": 1039, "loc": { "start": { "line": 52, @@ -10517,8 +10405,8 @@ "binop": null, "updateContext": null }, - "start": 1044, - "end": 1045, + "start": 1039, + "end": 1040, "loc": { "start": { "line": 52, @@ -10543,8 +10431,8 @@ "binop": null, "updateContext": null }, - "start": 1046, - "end": 1049, + "start": 1041, + "end": 1044, "loc": { "start": { "line": 52, @@ -10569,8 +10457,8 @@ "binop": null }, "value": "indices", - "start": 1049, - "end": 1056, + "start": 1044, + "end": 1051, "loc": { "start": { "line": 52, @@ -10595,8 +10483,8 @@ "binop": null, "updateContext": null }, - "start": 1056, - "end": 1057, + "start": 1051, + "end": 1052, "loc": { "start": { "line": 52, @@ -10621,8 +10509,8 @@ "binop": null }, "value": "slice", - "start": 1057, - "end": 1062, + "start": 1052, + "end": 1057, "loc": { "start": { "line": 52, @@ -10646,8 +10534,8 @@ "postfix": false, "binop": null }, - "start": 1062, - "end": 1063, + "start": 1057, + "end": 1058, "loc": { "start": { "line": 52, @@ -10673,8 +10561,8 @@ "updateContext": null }, "value": 1, - "start": 1063, - "end": 1064, + "start": 1058, + "end": 1059, "loc": { "start": { "line": 52, @@ -10698,8 +10586,8 @@ "postfix": false, "binop": null }, - "start": 1064, - "end": 1065, + "start": 1059, + "end": 1060, "loc": { "start": { "line": 52, @@ -10723,8 +10611,8 @@ "postfix": false, "binop": null }, - "start": 1065, - "end": 1066, + "start": 1060, + "end": 1061, "loc": { "start": { "line": 52, @@ -10749,8 +10637,8 @@ "binop": null, "updateContext": null }, - "start": 1066, - "end": 1067, + "start": 1061, + "end": 1062, "loc": { "start": { "line": 52, @@ -10774,8 +10662,8 @@ "postfix": false, "binop": null }, - "start": 1068, - "end": 1069, + "start": 1063, + "end": 1064, "loc": { "start": { "line": 53, @@ -10800,8 +10688,8 @@ "binop": null, "updateContext": null }, - "start": 1069, - "end": 1070, + "start": 1064, + "end": 1065, "loc": { "start": { "line": 53, @@ -10816,8 +10704,8 @@ { "type": "CommentLine", "value": " NUMBER", - "start": 1072, - "end": 1081, + "start": 1067, + "end": 1076, "loc": { "start": { "line": 55, @@ -10842,8 +10730,8 @@ "binop": null, "updateContext": null }, - "start": 1083, - "end": 1084, + "start": 1078, + "end": 1079, "loc": { "start": { "line": 57, @@ -10869,8 +10757,8 @@ "updateContext": null }, "value": "+", - "start": 1084, - "end": 1087, + "start": 1079, + "end": 1082, "loc": { "start": { "line": 57, @@ -10895,8 +10783,8 @@ "binop": null, "updateContext": null }, - "start": 1087, - "end": 1088, + "start": 1082, + "end": 1083, "loc": { "start": { "line": 57, @@ -10922,8 +10810,8 @@ "updateContext": null }, "value": "-", - "start": 1089, - "end": 1092, + "start": 1084, + "end": 1087, "loc": { "start": { "line": 57, @@ -10948,8 +10836,8 @@ "binop": null, "updateContext": null }, - "start": 1092, - "end": 1093, + "start": 1087, + "end": 1088, "loc": { "start": { "line": 57, @@ -10975,8 +10863,8 @@ "updateContext": null }, "value": "*", - "start": 1094, - "end": 1097, + "start": 1089, + "end": 1092, "loc": { "start": { "line": 57, @@ -11001,8 +10889,8 @@ "binop": null, "updateContext": null }, - "start": 1097, - "end": 1098, + "start": 1092, + "end": 1093, "loc": { "start": { "line": 57, @@ -11028,8 +10916,8 @@ "updateContext": null }, "value": "/", - "start": 1099, - "end": 1102, + "start": 1094, + "end": 1097, "loc": { "start": { "line": 57, @@ -11054,8 +10942,8 @@ "binop": null, "updateContext": null }, - "start": 1102, - "end": 1103, + "start": 1097, + "end": 1098, "loc": { "start": { "line": 57, @@ -11080,8 +10968,8 @@ "binop": null, "updateContext": null }, - "start": 1103, - "end": 1104, + "start": 1098, + "end": 1099, "loc": { "start": { "line": 57, @@ -11106,8 +10994,8 @@ "binop": null }, "value": "forEach", - "start": 1104, - "end": 1111, + "start": 1099, + "end": 1106, "loc": { "start": { "line": 57, @@ -11131,8 +11019,8 @@ "postfix": false, "binop": null }, - "start": 1111, - "end": 1112, + "start": 1106, + "end": 1107, "loc": { "start": { "line": 57, @@ -11157,8 +11045,8 @@ "binop": null }, "value": "op", - "start": 1112, - "end": 1114, + "start": 1107, + "end": 1109, "loc": { "start": { "line": 57, @@ -11183,8 +11071,8 @@ "binop": null, "updateContext": null }, - "start": 1115, - "end": 1117, + "start": 1110, + "end": 1112, "loc": { "start": { "line": 57, @@ -11208,8 +11096,8 @@ "postfix": false, "binop": null }, - "start": 1118, - "end": 1119, + "start": 1113, + "end": 1114, "loc": { "start": { "line": 57, @@ -11234,8 +11122,8 @@ "binop": null }, "value": "Number", - "start": 1122, - "end": 1128, + "start": 1117, + "end": 1123, "loc": { "start": { "line": 58, @@ -11260,8 +11148,8 @@ "binop": null, "updateContext": null }, - "start": 1128, - "end": 1129, + "start": 1123, + "end": 1124, "loc": { "start": { "line": 58, @@ -11286,8 +11174,8 @@ "binop": null }, "value": "prototype", - "start": 1129, - "end": 1138, + "start": 1124, + "end": 1133, "loc": { "start": { "line": 58, @@ -11312,8 +11200,8 @@ "binop": null, "updateContext": null }, - "start": 1138, - "end": 1139, + "start": 1133, + "end": 1134, "loc": { "start": { "line": 58, @@ -11338,8 +11226,8 @@ "binop": null }, "value": "op", - "start": 1139, - "end": 1141, + "start": 1134, + "end": 1136, "loc": { "start": { "line": 58, @@ -11364,8 +11252,8 @@ "binop": null, "updateContext": null }, - "start": 1141, - "end": 1142, + "start": 1136, + "end": 1137, "loc": { "start": { "line": 58, @@ -11391,8 +11279,8 @@ "updateContext": null }, "value": "=", - "start": 1143, - "end": 1144, + "start": 1138, + "end": 1139, "loc": { "start": { "line": 58, @@ -11419,8 +11307,8 @@ "updateContext": null }, "value": "new", - "start": 1145, - "end": 1148, + "start": 1140, + "end": 1143, "loc": { "start": { "line": 58, @@ -11445,8 +11333,8 @@ "binop": null }, "value": "Function", - "start": 1149, - "end": 1157, + "start": 1144, + "end": 1152, "loc": { "start": { "line": 58, @@ -11470,8 +11358,8 @@ "postfix": false, "binop": null }, - "start": 1157, - "end": 1158, + "start": 1152, + "end": 1153, "loc": { "start": { "line": 58, @@ -11497,8 +11385,8 @@ "updateContext": null }, "value": "...values", - "start": 1163, - "end": 1174, + "start": 1158, + "end": 1169, "loc": { "start": { "line": 59, @@ -11523,8 +11411,8 @@ "binop": null, "updateContext": null }, - "start": 1174, - "end": 1175, + "start": 1169, + "end": 1170, "loc": { "start": { "line": 59, @@ -11548,8 +11436,8 @@ "postfix": false, "binop": null }, - "start": 1180, - "end": 1181, + "start": 1175, + "end": 1176, "loc": { "start": { "line": 60, @@ -11575,8 +11463,8 @@ "updateContext": null }, "value": "return [this, ...values].reduce((a, b) => a ", - "start": 1181, - "end": 1225, + "start": 1176, + "end": 1220, "loc": { "start": { "line": 60, @@ -11600,8 +11488,8 @@ "postfix": false, "binop": null }, - "start": 1225, - "end": 1227, + "start": 1220, + "end": 1222, "loc": { "start": { "line": 60, @@ -11626,8 +11514,8 @@ "binop": null }, "value": "op", - "start": 1227, - "end": 1229, + "start": 1222, + "end": 1224, "loc": { "start": { "line": 60, @@ -11651,8 +11539,8 @@ "postfix": false, "binop": null }, - "start": 1229, - "end": 1230, + "start": 1224, + "end": 1225, "loc": { "start": { "line": 60, @@ -11678,8 +11566,8 @@ "updateContext": null }, "value": " b);", - "start": 1230, - "end": 1234, + "start": 1225, + "end": 1229, "loc": { "start": { "line": 60, @@ -11703,8 +11591,8 @@ "postfix": false, "binop": null }, - "start": 1234, - "end": 1235, + "start": 1229, + "end": 1230, "loc": { "start": { "line": 60, @@ -11728,8 +11616,8 @@ "postfix": false, "binop": null }, - "start": 1238, - "end": 1239, + "start": 1233, + "end": 1234, "loc": { "start": { "line": 61, @@ -11754,8 +11642,8 @@ "binop": null, "updateContext": null }, - "start": 1239, - "end": 1240, + "start": 1234, + "end": 1235, "loc": { "start": { "line": 61, @@ -11779,8 +11667,8 @@ "postfix": false, "binop": null }, - "start": 1241, - "end": 1242, + "start": 1236, + "end": 1237, "loc": { "start": { "line": 62, @@ -11804,8 +11692,8 @@ "postfix": false, "binop": null }, - "start": 1242, - "end": 1243, + "start": 1237, + "end": 1238, "loc": { "start": { "line": 62, @@ -11830,8 +11718,8 @@ "binop": null, "updateContext": null }, - "start": 1243, - "end": 1244, + "start": 1238, + "end": 1239, "loc": { "start": { "line": 62, @@ -11856,8 +11744,8 @@ "binop": null }, "value": "Number", - "start": 1246, - "end": 1252, + "start": 1241, + "end": 1247, "loc": { "start": { "line": 64, @@ -11882,8 +11770,8 @@ "binop": null, "updateContext": null }, - "start": 1252, - "end": 1253, + "start": 1247, + "end": 1248, "loc": { "start": { "line": 64, @@ -11908,8 +11796,8 @@ "binop": null }, "value": "prototype", - "start": 1253, - "end": 1262, + "start": 1248, + "end": 1257, "loc": { "start": { "line": 64, @@ -11934,8 +11822,8 @@ "binop": null, "updateContext": null }, - "start": 1262, - "end": 1263, + "start": 1257, + "end": 1258, "loc": { "start": { "line": 64, @@ -11961,8 +11849,8 @@ "updateContext": null }, "value": "__missing__", - "start": 1263, - "end": 1276, + "start": 1258, + "end": 1271, "loc": { "start": { "line": 64, @@ -11987,8 +11875,8 @@ "binop": null, "updateContext": null }, - "start": 1276, - "end": 1277, + "start": 1271, + "end": 1272, "loc": { "start": { "line": 64, @@ -12014,8 +11902,8 @@ "updateContext": null }, "value": "=", - "start": 1278, - "end": 1279, + "start": 1273, + "end": 1274, "loc": { "start": { "line": 64, @@ -12040,8 +11928,8 @@ "binop": null }, "value": "Number", - "start": 1280, - "end": 1286, + "start": 1275, + "end": 1281, "loc": { "start": { "line": 64, @@ -12066,8 +11954,8 @@ "binop": null, "updateContext": null }, - "start": 1286, - "end": 1287, + "start": 1281, + "end": 1282, "loc": { "start": { "line": 64, @@ -12092,8 +11980,8 @@ "binop": null }, "value": "prototype", - "start": 1287, - "end": 1296, + "start": 1282, + "end": 1291, "loc": { "start": { "line": 64, @@ -12118,8 +12006,8 @@ "binop": null, "updateContext": null }, - "start": 1296, - "end": 1297, + "start": 1291, + "end": 1292, "loc": { "start": { "line": 64, @@ -12145,8 +12033,8 @@ "updateContext": null }, "value": "+", - "start": 1297, - "end": 1300, + "start": 1292, + "end": 1295, "loc": { "start": { "line": 64, @@ -12171,8 +12059,8 @@ "binop": null, "updateContext": null }, - "start": 1300, - "end": 1301, + "start": 1295, + "end": 1296, "loc": { "start": { "line": 64, @@ -12197,8 +12085,8 @@ "binop": null, "updateContext": null }, - "start": 1301, - "end": 1302, + "start": 1296, + "end": 1297, "loc": { "start": { "line": 64, @@ -12223,8 +12111,8 @@ "binop": null, "updateContext": null }, - "start": 1303, - "end": 1303, + "start": 1298, + "end": 1298, "loc": { "start": { "line": 65, diff --git a/docs/ast/source/interp/registry.js.json b/docs/ast/source/interp/registry.js.json index 6d24194..f40eaaa 100644 --- a/docs/ast/source/interp/registry.js.json +++ b/docs/ast/source/interp/registry.js.json @@ -1,37 +1,37 @@ { "type": "File", "start": 0, - "end": 6849, + "end": 6827, "loc": { "start": { "line": 1, "column": 0 }, "end": { - "line": 310, + "line": 308, "column": 0 } }, "program": { "type": "Program", "start": 0, - "end": 6849, + "end": 6827, "loc": { "start": { "line": 1, "column": 0 }, "end": { - "line": 310, + "line": 308, "column": 0 } }, "sourceType": "module", "body": [ { - "type": "VariableDeclaration", + "type": "ImportDeclaration", "start": 0, - "end": 35, + "end": 30, "loc": { "start": { "line": 1, @@ -39,103 +39,68 @@ }, "end": { "line": 1, - "column": 35 + "column": 30 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 6, - "end": 34, + "type": "ImportDefaultSpecifier", + "start": 7, + "end": 14, "loc": { "start": { "line": 1, - "column": 6 + "column": 7 }, "end": { "line": 1, - "column": 34 + "column": 14 } }, - "id": { + "local": { "type": "Identifier", - "start": 6, - "end": 13, + "start": 7, + "end": 14, "loc": { "start": { "line": 1, - "column": 6 + "column": 7 }, "end": { "line": 1, - "column": 13 + "column": 14 }, "identifierName": "xRegExp" }, "name": "xRegExp" - }, - "init": { - "type": "CallExpression", - "start": 16, - "end": 34, - "loc": { - "start": { - "line": 1, - "column": 16 - }, - "end": { - "line": 1, - "column": 34 - } - }, - "callee": { - "type": "Identifier", - "start": 16, - "end": 23, - "loc": { - "start": { - "line": 1, - "column": 16 - }, - "end": { - "line": 1, - "column": 23 - }, - "identifierName": "require" - }, - "name": "require" - }, - "arguments": [ - { - "type": "StringLiteral", - "start": 24, - "end": 33, - "loc": { - "start": { - "line": 1, - "column": 24 - }, - "end": { - "line": 1, - "column": 33 - } - }, - "extra": { - "rawValue": "xregexp", - "raw": "\"xregexp\"" - }, - "value": "xregexp" - } - ] } } ], - "kind": "const" + "source": { + "type": "StringLiteral", + "start": 20, + "end": 29, + "loc": { + "start": { + "line": 1, + "column": 20 + }, + "end": { + "line": 1, + "column": 29 + } + }, + "extra": { + "rawValue": "xregexp", + "raw": "\"xregexp\"" + }, + "value": "xregexp" + } }, { - "type": "VariableDeclaration", - "start": 37, - "end": 74, + "type": "ImportDeclaration", + "start": 32, + "end": 64, "loc": { "start": { "line": 3, @@ -143,104 +108,69 @@ }, "end": { "line": 3, - "column": 37 + "column": 32 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 43, - "end": 73, + "type": "ImportDefaultSpecifier", + "start": 39, + "end": 44, "loc": { "start": { "line": 3, - "column": 6 + "column": 7 }, "end": { "line": 3, - "column": 36 + "column": 12 } }, - "id": { + "local": { "type": "Identifier", - "start": 43, - "end": 48, + "start": 39, + "end": 44, "loc": { "start": { "line": 3, - "column": 6 + "column": 7 }, "end": { "line": 3, - "column": 11 + "column": 12 }, "identifierName": "utils" }, "name": "utils" - }, - "init": { - "type": "CallExpression", - "start": 51, - "end": 73, - "loc": { - "start": { - "line": 3, - "column": 14 - }, - "end": { - "line": 3, - "column": 36 - } - }, - "callee": { - "type": "Identifier", - "start": 51, - "end": 58, - "loc": { - "start": { - "line": 3, - "column": 14 - }, - "end": { - "line": 3, - "column": 21 - }, - "identifierName": "require" - }, - "name": "require" - }, - "arguments": [ - { - "type": "StringLiteral", - "start": 59, - "end": 72, - "loc": { - "start": { - "line": 3, - "column": 22 - }, - "end": { - "line": 3, - "column": 35 - } - }, - "extra": { - "rawValue": "../utils.js", - "raw": "\"../utils.js\"" - }, - "value": "../utils.js" - } - ] } } ], - "kind": "const", + "source": { + "type": "StringLiteral", + "start": 50, + "end": 63, + "loc": { + "start": { + "line": 3, + "column": 18 + }, + "end": { + "line": 3, + "column": 31 + } + }, + "extra": { + "rawValue": "../utils.js", + "raw": "\"../utils.js\"" + }, + "value": "../utils.js" + }, "trailingComments": [ { "type": "CommentLine", "value": " specialForms and topEnv maps", - "start": 76, - "end": 107, + "start": 66, + "end": 97, "loc": { "start": { "line": 5, @@ -255,9 +185,9 @@ ] }, { - "type": "VariableDeclaration", - "start": 108, - "end": 149, + "type": "Identifier", + "start": 98, + "end": 139, "loc": { "start": { "line": 6, @@ -271,8 +201,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 114, - "end": 148, + "start": 104, + "end": 138, "loc": { "start": { "line": 6, @@ -285,8 +215,8 @@ }, "id": { "type": "Identifier", - "start": 114, - "end": 126, + "start": 104, + "end": 116, "loc": { "start": { "line": 6, @@ -303,8 +233,8 @@ }, "init": { "type": "CallExpression", - "start": 129, - "end": 148, + "start": 119, + "end": 138, "loc": { "start": { "line": 6, @@ -317,8 +247,8 @@ }, "callee": { "type": "MemberExpression", - "start": 129, - "end": 142, + "start": 119, + "end": 132, "loc": { "start": { "line": 6, @@ -331,8 +261,8 @@ }, "object": { "type": "Identifier", - "start": 129, - "end": 135, + "start": 119, + "end": 125, "loc": { "start": { "line": 6, @@ -348,8 +278,8 @@ }, "property": { "type": "Identifier", - "start": 136, - "end": 142, + "start": 126, + "end": 132, "loc": { "start": { "line": 6, @@ -368,8 +298,8 @@ "arguments": [ { "type": "NullLiteral", - "start": 143, - "end": 147, + "start": 133, + "end": 137, "loc": { "start": { "line": 6, @@ -387,29 +317,14 @@ } ], "kind": "const", - "leadingComments": [ - { - "type": "CommentLine", - "value": " specialForms and topEnv maps", - "start": 76, - "end": 107, - "loc": { - "start": { - "line": 5, - "column": 0 - }, - "end": { - "line": 5, - "column": 31 - } - } - } - ] + "leadingComments": [], + "name": "_", + "trailingComments": [] }, { - "type": "VariableDeclaration", - "start": 150, - "end": 185, + "type": "Identifier", + "start": 140, + "end": 175, "loc": { "start": { "line": 7, @@ -423,8 +338,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 156, - "end": 184, + "start": 146, + "end": 174, "loc": { "start": { "line": 7, @@ -437,8 +352,8 @@ }, "id": { "type": "Identifier", - "start": 156, - "end": 162, + "start": 146, + "end": 152, "loc": { "start": { "line": 7, @@ -454,8 +369,8 @@ }, "init": { "type": "CallExpression", - "start": 165, - "end": 184, + "start": 155, + "end": 174, "loc": { "start": { "line": 7, @@ -468,8 +383,8 @@ }, "callee": { "type": "MemberExpression", - "start": 165, - "end": 178, + "start": 155, + "end": 168, "loc": { "start": { "line": 7, @@ -482,8 +397,8 @@ }, "object": { "type": "Identifier", - "start": 165, - "end": 171, + "start": 155, + "end": 161, "loc": { "start": { "line": 7, @@ -499,8 +414,8 @@ }, "property": { "type": "Identifier", - "start": 172, - "end": 178, + "start": 162, + "end": 168, "loc": { "start": { "line": 7, @@ -519,8 +434,8 @@ "arguments": [ { "type": "NullLiteral", - "start": 179, - "end": 183, + "start": 169, + "end": 173, "loc": { "start": { "line": 7, @@ -536,12 +451,15 @@ } } ], - "kind": "const" + "kind": "const", + "name": "_", + "leadingComments": [], + "trailingComments": [] }, { "type": "ExpressionStatement", - "start": 187, - "end": 444, + "start": 177, + "end": 434, "loc": { "start": { "line": 9, @@ -554,8 +472,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 187, - "end": 443, + "start": 177, + "end": 433, "loc": { "start": { "line": 9, @@ -569,8 +487,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 187, - "end": 205, + "start": 177, + "end": 195, "loc": { "start": { "line": 9, @@ -583,8 +501,8 @@ }, "object": { "type": "Identifier", - "start": 187, - "end": 199, + "start": 177, + "end": 189, "loc": { "start": { "line": 9, @@ -600,8 +518,8 @@ }, "property": { "type": "StringLiteral", - "start": 200, - "end": 204, + "start": 190, + "end": 194, "loc": { "start": { "line": 9, @@ -622,8 +540,8 @@ }, "right": { "type": "ArrowFunctionExpression", - "start": 208, - "end": 443, + "start": 198, + "end": 433, "loc": { "start": { "line": 9, @@ -641,8 +559,8 @@ "params": [ { "type": "Identifier", - "start": 209, - "end": 213, + "start": 199, + "end": 203, "loc": { "start": { "line": 9, @@ -658,8 +576,8 @@ }, { "type": "Identifier", - "start": 215, - "end": 218, + "start": 205, + "end": 208, "loc": { "start": { "line": 9, @@ -676,8 +594,8 @@ ], "body": { "type": "BlockStatement", - "start": 223, - "end": 443, + "start": 213, + "end": 433, "loc": { "start": { "line": 9, @@ -691,8 +609,8 @@ "body": [ { "type": "IfStatement", - "start": 227, - "end": 317, + "start": 217, + "end": 307, "loc": { "start": { "line": 10, @@ -705,8 +623,8 @@ }, "test": { "type": "BinaryExpression", - "start": 231, - "end": 248, + "start": 221, + "end": 238, "loc": { "start": { "line": 10, @@ -719,8 +637,8 @@ }, "left": { "type": "MemberExpression", - "start": 231, - "end": 242, + "start": 221, + "end": 232, "loc": { "start": { "line": 10, @@ -733,8 +651,8 @@ }, "object": { "type": "Identifier", - "start": 231, - "end": 235, + "start": 221, + "end": 225, "loc": { "start": { "line": 10, @@ -750,8 +668,8 @@ }, "property": { "type": "Identifier", - "start": 236, - "end": 242, + "start": 226, + "end": 232, "loc": { "start": { "line": 10, @@ -770,8 +688,8 @@ "operator": "!==", "right": { "type": "NumericLiteral", - "start": 247, - "end": 248, + "start": 237, + "end": 238, "loc": { "start": { "line": 10, @@ -791,8 +709,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 250, - "end": 317, + "start": 240, + "end": 307, "loc": { "start": { "line": 10, @@ -806,8 +724,8 @@ "body": [ { "type": "ThrowStatement", - "start": 256, - "end": 313, + "start": 246, + "end": 303, "loc": { "start": { "line": 11, @@ -820,8 +738,8 @@ }, "argument": { "type": "NewExpression", - "start": 262, - "end": 312, + "start": 252, + "end": 302, "loc": { "start": { "line": 11, @@ -834,8 +752,8 @@ }, "callee": { "type": "Identifier", - "start": 266, - "end": 277, + "start": 256, + "end": 267, "loc": { "start": { "line": 11, @@ -852,8 +770,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 278, - "end": 311, + "start": 268, + "end": 301, "loc": { "start": { "line": 11, @@ -880,8 +798,8 @@ }, { "type": "IfStatement", - "start": 321, - "end": 441, + "start": 311, + "end": 431, "loc": { "start": { "line": 14, @@ -894,8 +812,8 @@ }, "test": { "type": "BinaryExpression", - "start": 325, - "end": 355, + "start": 315, + "end": 345, "loc": { "start": { "line": 14, @@ -908,8 +826,8 @@ }, "left": { "type": "CallExpression", - "start": 325, - "end": 346, + "start": 315, + "end": 336, "loc": { "start": { "line": 14, @@ -922,8 +840,8 @@ }, "callee": { "type": "MemberExpression", - "start": 325, - "end": 341, + "start": 315, + "end": 331, "loc": { "start": { "line": 14, @@ -936,8 +854,8 @@ }, "object": { "type": "MemberExpression", - "start": 325, - "end": 332, + "start": 315, + "end": 322, "loc": { "start": { "line": 14, @@ -950,8 +868,8 @@ }, "object": { "type": "Identifier", - "start": 325, - "end": 329, + "start": 315, + "end": 319, "loc": { "start": { "line": 14, @@ -967,8 +885,8 @@ }, "property": { "type": "NumericLiteral", - "start": 330, - "end": 331, + "start": 320, + "end": 321, "loc": { "start": { "line": 14, @@ -989,8 +907,8 @@ }, "property": { "type": "Identifier", - "start": 333, - "end": 341, + "start": 323, + "end": 331, "loc": { "start": { "line": 14, @@ -1009,8 +927,8 @@ "arguments": [ { "type": "Identifier", - "start": 342, - "end": 345, + "start": 332, + "end": 335, "loc": { "start": { "line": 14, @@ -1029,8 +947,8 @@ "operator": "===", "right": { "type": "BooleanLiteral", - "start": 351, - "end": 355, + "start": 341, + "end": 345, "loc": { "start": { "line": 14, @@ -1046,8 +964,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 357, - "end": 396, + "start": 347, + "end": 386, "loc": { "start": { "line": 14, @@ -1061,8 +979,8 @@ "body": [ { "type": "ReturnStatement", - "start": 363, - "end": 392, + "start": 353, + "end": 382, "loc": { "start": { "line": 15, @@ -1075,8 +993,8 @@ }, "argument": { "type": "CallExpression", - "start": 370, - "end": 391, + "start": 360, + "end": 381, "loc": { "start": { "line": 15, @@ -1089,8 +1007,8 @@ }, "callee": { "type": "MemberExpression", - "start": 370, - "end": 386, + "start": 360, + "end": 376, "loc": { "start": { "line": 15, @@ -1103,8 +1021,8 @@ }, "object": { "type": "MemberExpression", - "start": 370, - "end": 377, + "start": 360, + "end": 367, "loc": { "start": { "line": 15, @@ -1117,8 +1035,8 @@ }, "object": { "type": "Identifier", - "start": 370, - "end": 374, + "start": 360, + "end": 364, "loc": { "start": { "line": 15, @@ -1134,8 +1052,8 @@ }, "property": { "type": "NumericLiteral", - "start": 375, - "end": 376, + "start": 365, + "end": 366, "loc": { "start": { "line": 15, @@ -1156,8 +1074,8 @@ }, "property": { "type": "Identifier", - "start": 378, - "end": 386, + "start": 368, + "end": 376, "loc": { "start": { "line": 15, @@ -1176,8 +1094,8 @@ "arguments": [ { "type": "Identifier", - "start": 387, - "end": 390, + "start": 377, + "end": 380, "loc": { "start": { "line": 15, @@ -1199,8 +1117,8 @@ }, "alternate": { "type": "BlockStatement", - "start": 402, - "end": 441, + "start": 392, + "end": 431, "loc": { "start": { "line": 16, @@ -1214,8 +1132,8 @@ "body": [ { "type": "ReturnStatement", - "start": 408, - "end": 437, + "start": 398, + "end": 427, "loc": { "start": { "line": 17, @@ -1228,8 +1146,8 @@ }, "argument": { "type": "CallExpression", - "start": 415, - "end": 436, + "start": 405, + "end": 426, "loc": { "start": { "line": 17, @@ -1242,8 +1160,8 @@ }, "callee": { "type": "MemberExpression", - "start": 415, - "end": 431, + "start": 405, + "end": 421, "loc": { "start": { "line": 17, @@ -1256,8 +1174,8 @@ }, "object": { "type": "MemberExpression", - "start": 415, - "end": 422, + "start": 405, + "end": 412, "loc": { "start": { "line": 17, @@ -1270,8 +1188,8 @@ }, "object": { "type": "Identifier", - "start": 415, - "end": 419, + "start": 405, + "end": 409, "loc": { "start": { "line": 17, @@ -1287,8 +1205,8 @@ }, "property": { "type": "NumericLiteral", - "start": 420, - "end": 421, + "start": 410, + "end": 411, "loc": { "start": { "line": 17, @@ -1309,8 +1227,8 @@ }, "property": { "type": "Identifier", - "start": 423, - "end": 431, + "start": 413, + "end": 421, "loc": { "start": { "line": 17, @@ -1329,8 +1247,8 @@ "arguments": [ { "type": "Identifier", - "start": 432, - "end": 435, + "start": 422, + "end": 425, "loc": { "start": { "line": 17, @@ -1359,8 +1277,8 @@ }, { "type": "ExpressionStatement", - "start": 446, - "end": 756, + "start": 436, + "end": 746, "loc": { "start": { "line": 21, @@ -1373,8 +1291,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 446, - "end": 755, + "start": 436, + "end": 745, "loc": { "start": { "line": 21, @@ -1388,8 +1306,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 446, - "end": 467, + "start": 436, + "end": 457, "loc": { "start": { "line": 21, @@ -1402,8 +1320,8 @@ }, "object": { "type": "Identifier", - "start": 446, - "end": 458, + "start": 436, + "end": 448, "loc": { "start": { "line": 21, @@ -1419,8 +1337,8 @@ }, "property": { "type": "StringLiteral", - "start": 459, - "end": 466, + "start": 449, + "end": 456, "loc": { "start": { "line": 21, @@ -1441,8 +1359,8 @@ }, "right": { "type": "ArrowFunctionExpression", - "start": 470, - "end": 755, + "start": 460, + "end": 745, "loc": { "start": { "line": 21, @@ -1460,8 +1378,8 @@ "params": [ { "type": "Identifier", - "start": 471, - "end": 475, + "start": 461, + "end": 465, "loc": { "start": { "line": 21, @@ -1477,8 +1395,8 @@ }, { "type": "Identifier", - "start": 477, - "end": 480, + "start": 467, + "end": 470, "loc": { "start": { "line": 21, @@ -1495,8 +1413,8 @@ ], "body": { "type": "BlockStatement", - "start": 485, - "end": 755, + "start": 475, + "end": 745, "loc": { "start": { "line": 21, @@ -1510,8 +1428,8 @@ "body": [ { "type": "IfStatement", - "start": 489, - "end": 582, + "start": 479, + "end": 572, "loc": { "start": { "line": 22, @@ -1524,8 +1442,8 @@ }, "test": { "type": "BinaryExpression", - "start": 493, - "end": 510, + "start": 483, + "end": 500, "loc": { "start": { "line": 22, @@ -1538,8 +1456,8 @@ }, "left": { "type": "MemberExpression", - "start": 493, - "end": 504, + "start": 483, + "end": 494, "loc": { "start": { "line": 22, @@ -1552,8 +1470,8 @@ }, "object": { "type": "Identifier", - "start": 493, - "end": 497, + "start": 483, + "end": 487, "loc": { "start": { "line": 22, @@ -1569,8 +1487,8 @@ }, "property": { "type": "Identifier", - "start": 498, - "end": 504, + "start": 488, + "end": 494, "loc": { "start": { "line": 22, @@ -1589,8 +1507,8 @@ "operator": "!==", "right": { "type": "NumericLiteral", - "start": 509, - "end": 510, + "start": 499, + "end": 500, "loc": { "start": { "line": 22, @@ -1610,8 +1528,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 512, - "end": 582, + "start": 502, + "end": 572, "loc": { "start": { "line": 22, @@ -1625,8 +1543,8 @@ "body": [ { "type": "ThrowStatement", - "start": 518, - "end": 578, + "start": 508, + "end": 568, "loc": { "start": { "line": 23, @@ -1639,8 +1557,8 @@ }, "argument": { "type": "NewExpression", - "start": 524, - "end": 577, + "start": 514, + "end": 567, "loc": { "start": { "line": 23, @@ -1653,8 +1571,8 @@ }, "callee": { "type": "Identifier", - "start": 528, - "end": 539, + "start": 518, + "end": 529, "loc": { "start": { "line": 23, @@ -1671,8 +1589,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 540, - "end": 576, + "start": 530, + "end": 566, "loc": { "start": { "line": 23, @@ -1699,8 +1617,8 @@ }, { "type": "WhileStatement", - "start": 586, - "end": 657, + "start": 576, + "end": 647, "loc": { "start": { "line": 26, @@ -1713,8 +1631,8 @@ }, "test": { "type": "BinaryExpression", - "start": 593, - "end": 623, + "start": 583, + "end": 613, "loc": { "start": { "line": 26, @@ -1727,8 +1645,8 @@ }, "left": { "type": "CallExpression", - "start": 593, - "end": 614, + "start": 583, + "end": 604, "loc": { "start": { "line": 26, @@ -1741,8 +1659,8 @@ }, "callee": { "type": "MemberExpression", - "start": 593, - "end": 609, + "start": 583, + "end": 599, "loc": { "start": { "line": 26, @@ -1755,8 +1673,8 @@ }, "object": { "type": "MemberExpression", - "start": 593, - "end": 600, + "start": 583, + "end": 590, "loc": { "start": { "line": 26, @@ -1769,8 +1687,8 @@ }, "object": { "type": "Identifier", - "start": 593, - "end": 597, + "start": 583, + "end": 587, "loc": { "start": { "line": 26, @@ -1786,8 +1704,8 @@ }, "property": { "type": "NumericLiteral", - "start": 598, - "end": 599, + "start": 588, + "end": 589, "loc": { "start": { "line": 26, @@ -1808,8 +1726,8 @@ }, "property": { "type": "Identifier", - "start": 601, - "end": 609, + "start": 591, + "end": 599, "loc": { "start": { "line": 26, @@ -1828,8 +1746,8 @@ "arguments": [ { "type": "Identifier", - "start": 610, - "end": 613, + "start": 600, + "end": 603, "loc": { "start": { "line": 26, @@ -1848,8 +1766,8 @@ "operator": "===", "right": { "type": "BooleanLiteral", - "start": 619, - "end": 623, + "start": 609, + "end": 613, "loc": { "start": { "line": 26, @@ -1865,8 +1783,8 @@ }, "body": { "type": "BlockStatement", - "start": 625, - "end": 657, + "start": 615, + "end": 647, "loc": { "start": { "line": 26, @@ -1880,8 +1798,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 631, - "end": 653, + "start": 621, + "end": 643, "loc": { "start": { "line": 27, @@ -1894,8 +1812,8 @@ }, "expression": { "type": "CallExpression", - "start": 631, - "end": 652, + "start": 621, + "end": 642, "loc": { "start": { "line": 27, @@ -1908,8 +1826,8 @@ }, "callee": { "type": "MemberExpression", - "start": 631, - "end": 647, + "start": 621, + "end": 637, "loc": { "start": { "line": 27, @@ -1922,8 +1840,8 @@ }, "object": { "type": "MemberExpression", - "start": 631, - "end": 638, + "start": 621, + "end": 628, "loc": { "start": { "line": 27, @@ -1936,8 +1854,8 @@ }, "object": { "type": "Identifier", - "start": 631, - "end": 635, + "start": 621, + "end": 625, "loc": { "start": { "line": 27, @@ -1953,8 +1871,8 @@ }, "property": { "type": "NumericLiteral", - "start": 636, - "end": 637, + "start": 626, + "end": 627, "loc": { "start": { "line": 27, @@ -1975,8 +1893,8 @@ }, "property": { "type": "Identifier", - "start": 639, - "end": 647, + "start": 629, + "end": 637, "loc": { "start": { "line": 27, @@ -1995,8 +1913,8 @@ "arguments": [ { "type": "Identifier", - "start": 648, - "end": 651, + "start": 638, + "end": 641, "loc": { "start": { "line": 27, @@ -2021,8 +1939,8 @@ { "type": "CommentLine", "value": " Egg has no undefined so we return false when there's no meaningful result", - "start": 661, - "end": 737, + "start": 651, + "end": 727, "loc": { "start": { "line": 30, @@ -2038,8 +1956,8 @@ }, { "type": "ReturnStatement", - "start": 740, - "end": 753, + "start": 730, + "end": 743, "loc": { "start": { "line": 31, @@ -2052,8 +1970,8 @@ }, "argument": { "type": "BooleanLiteral", - "start": 747, - "end": 752, + "start": 737, + "end": 742, "loc": { "start": { "line": 31, @@ -2071,8 +1989,8 @@ { "type": "CommentLine", "value": " Egg has no undefined so we return false when there's no meaningful result", - "start": 661, - "end": 737, + "start": 651, + "end": 727, "loc": { "start": { "line": 30, @@ -2094,8 +2012,8 @@ }, { "type": "ExpressionStatement", - "start": 758, - "end": 1175, + "start": 748, + "end": 1165, "loc": { "start": { "line": 34, @@ -2108,8 +2026,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 758, - "end": 1174, + "start": 748, + "end": 1164, "loc": { "start": { "line": 34, @@ -2123,8 +2041,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 758, - "end": 777, + "start": 748, + "end": 767, "loc": { "start": { "line": 34, @@ -2137,8 +2055,8 @@ }, "object": { "type": "Identifier", - "start": 758, - "end": 770, + "start": 748, + "end": 760, "loc": { "start": { "line": 34, @@ -2154,8 +2072,8 @@ }, "property": { "type": "StringLiteral", - "start": 771, - "end": 776, + "start": 761, + "end": 766, "loc": { "start": { "line": 34, @@ -2176,8 +2094,8 @@ }, "right": { "type": "ArrowFunctionExpression", - "start": 780, - "end": 1174, + "start": 770, + "end": 1164, "loc": { "start": { "line": 34, @@ -2195,8 +2113,8 @@ "params": [ { "type": "Identifier", - "start": 781, - "end": 785, + "start": 771, + "end": 775, "loc": { "start": { "line": 34, @@ -2212,8 +2130,8 @@ }, { "type": "Identifier", - "start": 787, - "end": 790, + "start": 777, + "end": 780, "loc": { "start": { "line": 34, @@ -2230,8 +2148,8 @@ ], "body": { "type": "BlockStatement", - "start": 795, - "end": 1174, + "start": 785, + "end": 1164, "loc": { "start": { "line": 34, @@ -2245,8 +2163,8 @@ "body": [ { "type": "IfStatement", - "start": 799, - "end": 890, + "start": 789, + "end": 880, "loc": { "start": { "line": 35, @@ -2259,8 +2177,8 @@ }, "test": { "type": "BinaryExpression", - "start": 803, - "end": 820, + "start": 793, + "end": 810, "loc": { "start": { "line": 35, @@ -2273,8 +2191,8 @@ }, "left": { "type": "MemberExpression", - "start": 803, - "end": 814, + "start": 793, + "end": 804, "loc": { "start": { "line": 35, @@ -2287,8 +2205,8 @@ }, "object": { "type": "Identifier", - "start": 803, - "end": 807, + "start": 793, + "end": 797, "loc": { "start": { "line": 35, @@ -2304,8 +2222,8 @@ }, "property": { "type": "Identifier", - "start": 808, - "end": 814, + "start": 798, + "end": 804, "loc": { "start": { "line": 35, @@ -2324,8 +2242,8 @@ "operator": "!==", "right": { "type": "NumericLiteral", - "start": 819, - "end": 820, + "start": 809, + "end": 810, "loc": { "start": { "line": 35, @@ -2345,8 +2263,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 822, - "end": 890, + "start": 812, + "end": 880, "loc": { "start": { "line": 35, @@ -2360,8 +2278,8 @@ "body": [ { "type": "ThrowStatement", - "start": 828, - "end": 886, + "start": 818, + "end": 876, "loc": { "start": { "line": 36, @@ -2374,8 +2292,8 @@ }, "argument": { "type": "NewExpression", - "start": 834, - "end": 885, + "start": 824, + "end": 875, "loc": { "start": { "line": 36, @@ -2388,8 +2306,8 @@ }, "callee": { "type": "Identifier", - "start": 838, - "end": 849, + "start": 828, + "end": 839, "loc": { "start": { "line": 36, @@ -2406,8 +2324,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 850, - "end": 884, + "start": 840, + "end": 874, "loc": { "start": { "line": 36, @@ -2434,8 +2352,8 @@ }, { "type": "VariableDeclaration", - "start": 894, - "end": 928, + "start": 884, + "end": 918, "loc": { "start": { "line": 39, @@ -2449,8 +2367,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 900, - "end": 927, + "start": 890, + "end": 917, "loc": { "start": { "line": 39, @@ -2463,8 +2381,8 @@ }, "id": { "type": "Identifier", - "start": 900, - "end": 906, + "start": 890, + "end": 896, "loc": { "start": { "line": 39, @@ -2480,8 +2398,8 @@ }, "init": { "type": "CallExpression", - "start": 909, - "end": 927, + "start": 899, + "end": 917, "loc": { "start": { "line": 39, @@ -2494,8 +2412,8 @@ }, "callee": { "type": "MemberExpression", - "start": 909, - "end": 922, + "start": 899, + "end": 912, "loc": { "start": { "line": 39, @@ -2508,8 +2426,8 @@ }, "object": { "type": "Identifier", - "start": 909, - "end": 915, + "start": 899, + "end": 905, "loc": { "start": { "line": 39, @@ -2525,8 +2443,8 @@ }, "property": { "type": "Identifier", - "start": 916, - "end": 922, + "start": 906, + "end": 912, "loc": { "start": { "line": 39, @@ -2545,8 +2463,8 @@ "arguments": [ { "type": "Identifier", - "start": 923, - "end": 926, + "start": 913, + "end": 916, "loc": { "start": { "line": 39, @@ -2568,8 +2486,8 @@ }, { "type": "ExpressionStatement", - "start": 931, - "end": 956, + "start": 921, + "end": 946, "loc": { "start": { "line": 40, @@ -2582,8 +2500,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 931, - "end": 955, + "start": 921, + "end": 945, "loc": { "start": { "line": 40, @@ -2597,8 +2515,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 931, - "end": 950, + "start": 921, + "end": 940, "loc": { "start": { "line": 40, @@ -2611,8 +2529,8 @@ }, "object": { "type": "Identifier", - "start": 931, - "end": 937, + "start": 921, + "end": 927, "loc": { "start": { "line": 40, @@ -2628,8 +2546,8 @@ }, "property": { "type": "StringLiteral", - "start": 938, - "end": 949, + "start": 928, + "end": 939, "loc": { "start": { "line": 40, @@ -2650,8 +2568,8 @@ }, "right": { "type": "ObjectExpression", - "start": 953, - "end": 955, + "start": 943, + "end": 945, "loc": { "start": { "line": 40, @@ -2669,8 +2587,8 @@ { "type": "CommentLine", "value": " Variable", - "start": 960, - "end": 971, + "start": 950, + "end": 961, "loc": { "start": { "line": 42, @@ -2686,8 +2604,8 @@ }, { "type": "ExpressionStatement", - "start": 974, - "end": 999, + "start": 964, + "end": 989, "loc": { "start": { "line": 43, @@ -2700,8 +2618,8 @@ }, "expression": { "type": "CallExpression", - "start": 974, - "end": 998, + "start": 964, + "end": 988, "loc": { "start": { "line": 43, @@ -2714,8 +2632,8 @@ }, "callee": { "type": "MemberExpression", - "start": 974, - "end": 990, + "start": 964, + "end": 980, "loc": { "start": { "line": 43, @@ -2728,8 +2646,8 @@ }, "object": { "type": "MemberExpression", - "start": 974, - "end": 981, + "start": 964, + "end": 971, "loc": { "start": { "line": 43, @@ -2742,8 +2660,8 @@ }, "object": { "type": "Identifier", - "start": 974, - "end": 978, + "start": 964, + "end": 968, "loc": { "start": { "line": 43, @@ -2760,8 +2678,8 @@ }, "property": { "type": "NumericLiteral", - "start": 979, - "end": 980, + "start": 969, + "end": 970, "loc": { "start": { "line": 43, @@ -2783,8 +2701,8 @@ }, "property": { "type": "Identifier", - "start": 982, - "end": 990, + "start": 972, + "end": 980, "loc": { "start": { "line": 43, @@ -2804,8 +2722,8 @@ "arguments": [ { "type": "Identifier", - "start": 991, - "end": 997, + "start": 981, + "end": 987, "loc": { "start": { "line": 43, @@ -2826,8 +2744,8 @@ { "type": "CommentLine", "value": " Variable", - "start": 960, - "end": 971, + "start": 950, + "end": 961, "loc": { "start": { "line": 42, @@ -2844,8 +2762,8 @@ { "type": "CommentLine", "value": " Condition", - "start": 1003, - "end": 1015, + "start": 993, + "end": 1005, "loc": { "start": { "line": 45, @@ -2861,8 +2779,8 @@ }, { "type": "WhileStatement", - "start": 1018, - "end": 1155, + "start": 1008, + "end": 1145, "loc": { "start": { "line": 46, @@ -2875,8 +2793,8 @@ }, "test": { "type": "BinaryExpression", - "start": 1025, - "end": 1058, + "start": 1015, + "end": 1048, "loc": { "start": { "line": 46, @@ -2889,8 +2807,8 @@ }, "left": { "type": "CallExpression", - "start": 1025, - "end": 1049, + "start": 1015, + "end": 1039, "loc": { "start": { "line": 46, @@ -2903,8 +2821,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1025, - "end": 1041, + "start": 1015, + "end": 1031, "loc": { "start": { "line": 46, @@ -2917,8 +2835,8 @@ }, "object": { "type": "MemberExpression", - "start": 1025, - "end": 1032, + "start": 1015, + "end": 1022, "loc": { "start": { "line": 46, @@ -2931,8 +2849,8 @@ }, "object": { "type": "Identifier", - "start": 1025, - "end": 1029, + "start": 1015, + "end": 1019, "loc": { "start": { "line": 46, @@ -2949,8 +2867,8 @@ }, "property": { "type": "NumericLiteral", - "start": 1030, - "end": 1031, + "start": 1020, + "end": 1021, "loc": { "start": { "line": 46, @@ -2972,8 +2890,8 @@ }, "property": { "type": "Identifier", - "start": 1033, - "end": 1041, + "start": 1023, + "end": 1031, "loc": { "start": { "line": 46, @@ -2993,8 +2911,8 @@ "arguments": [ { "type": "Identifier", - "start": 1042, - "end": 1048, + "start": 1032, + "end": 1038, "loc": { "start": { "line": 46, @@ -3014,8 +2932,8 @@ "operator": "===", "right": { "type": "BooleanLiteral", - "start": 1054, - "end": 1058, + "start": 1044, + "end": 1048, "loc": { "start": { "line": 46, @@ -3032,8 +2950,8 @@ }, "body": { "type": "BlockStatement", - "start": 1060, - "end": 1155, + "start": 1050, + "end": 1145, "loc": { "start": { "line": 46, @@ -3047,8 +2965,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 1078, - "end": 1103, + "start": 1068, + "end": 1093, "loc": { "start": { "line": 48, @@ -3061,8 +2979,8 @@ }, "expression": { "type": "CallExpression", - "start": 1078, - "end": 1102, + "start": 1068, + "end": 1092, "loc": { "start": { "line": 48, @@ -3075,8 +2993,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1078, - "end": 1094, + "start": 1068, + "end": 1084, "loc": { "start": { "line": 48, @@ -3089,8 +3007,8 @@ }, "object": { "type": "MemberExpression", - "start": 1078, - "end": 1085, + "start": 1068, + "end": 1075, "loc": { "start": { "line": 48, @@ -3103,8 +3021,8 @@ }, "object": { "type": "Identifier", - "start": 1078, - "end": 1082, + "start": 1068, + "end": 1072, "loc": { "start": { "line": 48, @@ -3121,8 +3039,8 @@ }, "property": { "type": "NumericLiteral", - "start": 1083, - "end": 1084, + "start": 1073, + "end": 1074, "loc": { "start": { "line": 48, @@ -3144,8 +3062,8 @@ }, "property": { "type": "Identifier", - "start": 1086, - "end": 1094, + "start": 1076, + "end": 1084, "loc": { "start": { "line": 48, @@ -3165,8 +3083,8 @@ "arguments": [ { "type": "Identifier", - "start": 1095, - "end": 1101, + "start": 1085, + "end": 1091, "loc": { "start": { "line": 48, @@ -3187,8 +3105,8 @@ { "type": "CommentLine", "value": " Body", - "start": 1066, - "end": 1073, + "start": 1056, + "end": 1063, "loc": { "start": { "line": 47, @@ -3205,8 +3123,8 @@ { "type": "CommentLine", "value": " Increment", - "start": 1109, - "end": 1121, + "start": 1099, + "end": 1111, "loc": { "start": { "line": 50, @@ -3222,8 +3140,8 @@ }, { "type": "ExpressionStatement", - "start": 1126, - "end": 1151, + "start": 1116, + "end": 1141, "loc": { "start": { "line": 51, @@ -3236,8 +3154,8 @@ }, "expression": { "type": "CallExpression", - "start": 1126, - "end": 1150, + "start": 1116, + "end": 1140, "loc": { "start": { "line": 51, @@ -3250,8 +3168,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1126, - "end": 1142, + "start": 1116, + "end": 1132, "loc": { "start": { "line": 51, @@ -3264,8 +3182,8 @@ }, "object": { "type": "MemberExpression", - "start": 1126, - "end": 1133, + "start": 1116, + "end": 1123, "loc": { "start": { "line": 51, @@ -3278,8 +3196,8 @@ }, "object": { "type": "Identifier", - "start": 1126, - "end": 1130, + "start": 1116, + "end": 1120, "loc": { "start": { "line": 51, @@ -3296,8 +3214,8 @@ }, "property": { "type": "NumericLiteral", - "start": 1131, - "end": 1132, + "start": 1121, + "end": 1122, "loc": { "start": { "line": 51, @@ -3319,8 +3237,8 @@ }, "property": { "type": "Identifier", - "start": 1134, - "end": 1142, + "start": 1124, + "end": 1132, "loc": { "start": { "line": 51, @@ -3340,8 +3258,8 @@ "arguments": [ { "type": "Identifier", - "start": 1143, - "end": 1149, + "start": 1133, + "end": 1139, "loc": { "start": { "line": 51, @@ -3362,8 +3280,8 @@ { "type": "CommentLine", "value": " Increment", - "start": 1109, - "end": 1121, + "start": 1099, + "end": 1111, "loc": { "start": { "line": 50, @@ -3384,8 +3302,8 @@ { "type": "CommentLine", "value": " Condition", - "start": 1003, - "end": 1015, + "start": 993, + "end": 1005, "loc": { "start": { "line": 45, @@ -3401,8 +3319,8 @@ }, { "type": "ReturnStatement", - "start": 1159, - "end": 1172, + "start": 1149, + "end": 1162, "loc": { "start": { "line": 54, @@ -3415,8 +3333,8 @@ }, "argument": { "type": "BooleanLiteral", - "start": 1166, - "end": 1171, + "start": 1156, + "end": 1161, "loc": { "start": { "line": 54, @@ -3438,8 +3356,8 @@ }, { "type": "ExpressionStatement", - "start": 1177, - "end": 1646, + "start": 1167, + "end": 1636, "loc": { "start": { "line": 57, @@ -3452,8 +3370,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 1177, - "end": 1645, + "start": 1167, + "end": 1635, "loc": { "start": { "line": 57, @@ -3467,8 +3385,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 1177, - "end": 1200, + "start": 1167, + "end": 1190, "loc": { "start": { "line": 57, @@ -3481,8 +3399,8 @@ }, "object": { "type": "Identifier", - "start": 1177, - "end": 1189, + "start": 1167, + "end": 1179, "loc": { "start": { "line": 57, @@ -3498,8 +3416,8 @@ }, "property": { "type": "StringLiteral", - "start": 1190, - "end": 1199, + "start": 1180, + "end": 1189, "loc": { "start": { "line": 57, @@ -3520,8 +3438,8 @@ }, "right": { "type": "ArrowFunctionExpression", - "start": 1203, - "end": 1645, + "start": 1193, + "end": 1635, "loc": { "start": { "line": 57, @@ -3539,8 +3457,8 @@ "params": [ { "type": "Identifier", - "start": 1204, - "end": 1208, + "start": 1194, + "end": 1198, "loc": { "start": { "line": 57, @@ -3556,8 +3474,8 @@ }, { "type": "Identifier", - "start": 1210, - "end": 1213, + "start": 1200, + "end": 1203, "loc": { "start": { "line": 57, @@ -3574,8 +3492,8 @@ ], "body": { "type": "BlockStatement", - "start": 1218, - "end": 1645, + "start": 1208, + "end": 1635, "loc": { "start": { "line": 57, @@ -3589,8 +3507,8 @@ "body": [ { "type": "IfStatement", - "start": 1222, - "end": 1317, + "start": 1212, + "end": 1307, "loc": { "start": { "line": 58, @@ -3603,8 +3521,8 @@ }, "test": { "type": "BinaryExpression", - "start": 1226, - "end": 1243, + "start": 1216, + "end": 1233, "loc": { "start": { "line": 58, @@ -3617,8 +3535,8 @@ }, "left": { "type": "MemberExpression", - "start": 1226, - "end": 1237, + "start": 1216, + "end": 1227, "loc": { "start": { "line": 58, @@ -3631,8 +3549,8 @@ }, "object": { "type": "Identifier", - "start": 1226, - "end": 1230, + "start": 1216, + "end": 1220, "loc": { "start": { "line": 58, @@ -3648,8 +3566,8 @@ }, "property": { "type": "Identifier", - "start": 1231, - "end": 1237, + "start": 1221, + "end": 1227, "loc": { "start": { "line": 58, @@ -3668,8 +3586,8 @@ "operator": "!==", "right": { "type": "NumericLiteral", - "start": 1242, - "end": 1243, + "start": 1232, + "end": 1233, "loc": { "start": { "line": 58, @@ -3689,8 +3607,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 1245, - "end": 1317, + "start": 1235, + "end": 1307, "loc": { "start": { "line": 58, @@ -3704,8 +3622,8 @@ "body": [ { "type": "ThrowStatement", - "start": 1251, - "end": 1313, + "start": 1241, + "end": 1303, "loc": { "start": { "line": 59, @@ -3718,8 +3636,8 @@ }, "argument": { "type": "NewExpression", - "start": 1257, - "end": 1312, + "start": 1247, + "end": 1302, "loc": { "start": { "line": 59, @@ -3732,8 +3650,8 @@ }, "callee": { "type": "Identifier", - "start": 1261, - "end": 1272, + "start": 1251, + "end": 1262, "loc": { "start": { "line": 59, @@ -3750,8 +3668,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 1273, - "end": 1311, + "start": 1263, + "end": 1301, "loc": { "start": { "line": 59, @@ -3778,8 +3696,8 @@ }, { "type": "IfStatement", - "start": 1321, - "end": 1436, + "start": 1311, + "end": 1426, "loc": { "start": { "line": 62, @@ -3792,8 +3710,8 @@ }, "test": { "type": "BinaryExpression", - "start": 1325, - "end": 1348, + "start": 1315, + "end": 1338, "loc": { "start": { "line": 62, @@ -3806,8 +3724,8 @@ }, "left": { "type": "MemberExpression", - "start": 1325, - "end": 1337, + "start": 1315, + "end": 1327, "loc": { "start": { "line": 62, @@ -3820,8 +3738,8 @@ }, "object": { "type": "MemberExpression", - "start": 1325, - "end": 1332, + "start": 1315, + "end": 1322, "loc": { "start": { "line": 62, @@ -3834,8 +3752,8 @@ }, "object": { "type": "Identifier", - "start": 1325, - "end": 1329, + "start": 1315, + "end": 1319, "loc": { "start": { "line": 62, @@ -3851,8 +3769,8 @@ }, "property": { "type": "NumericLiteral", - "start": 1330, - "end": 1331, + "start": 1320, + "end": 1321, "loc": { "start": { "line": 62, @@ -3873,8 +3791,8 @@ }, "property": { "type": "Identifier", - "start": 1333, - "end": 1337, + "start": 1323, + "end": 1327, "loc": { "start": { "line": 62, @@ -3893,8 +3811,8 @@ "operator": "!==", "right": { "type": "StringLiteral", - "start": 1342, - "end": 1348, + "start": 1332, + "end": 1338, "loc": { "start": { "line": 62, @@ -3914,8 +3832,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 1350, - "end": 1436, + "start": 1340, + "end": 1426, "loc": { "start": { "line": 62, @@ -3929,8 +3847,8 @@ "body": [ { "type": "ThrowStatement", - "start": 1356, - "end": 1432, + "start": 1346, + "end": 1422, "loc": { "start": { "line": 63, @@ -3943,8 +3861,8 @@ }, "argument": { "type": "NewExpression", - "start": 1362, - "end": 1431, + "start": 1352, + "end": 1421, "loc": { "start": { "line": 63, @@ -3957,8 +3875,8 @@ }, "callee": { "type": "Identifier", - "start": 1366, - "end": 1377, + "start": 1356, + "end": 1367, "loc": { "start": { "line": 63, @@ -3975,8 +3893,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 1378, - "end": 1430, + "start": 1368, + "end": 1420, "loc": { "start": { "line": 63, @@ -4003,8 +3921,8 @@ }, { "type": "VariableDeclaration", - "start": 1440, - "end": 1476, + "start": 1430, + "end": 1466, "loc": { "start": { "line": 66, @@ -4018,8 +3936,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 1446, - "end": 1475, + "start": 1436, + "end": 1465, "loc": { "start": { "line": 66, @@ -4032,8 +3950,8 @@ }, "id": { "type": "Identifier", - "start": 1446, - "end": 1454, + "start": 1436, + "end": 1444, "loc": { "start": { "line": 66, @@ -4049,8 +3967,8 @@ }, "init": { "type": "CallExpression", - "start": 1457, - "end": 1475, + "start": 1447, + "end": 1465, "loc": { "start": { "line": 66, @@ -4063,8 +3981,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1457, - "end": 1470, + "start": 1447, + "end": 1460, "loc": { "start": { "line": 66, @@ -4077,8 +3995,8 @@ }, "object": { "type": "Identifier", - "start": 1457, - "end": 1463, + "start": 1447, + "end": 1453, "loc": { "start": { "line": 66, @@ -4094,8 +4012,8 @@ }, "property": { "type": "Identifier", - "start": 1464, - "end": 1470, + "start": 1454, + "end": 1460, "loc": { "start": { "line": 66, @@ -4114,8 +4032,8 @@ "arguments": [ { "type": "Identifier", - "start": 1471, - "end": 1474, + "start": 1461, + "end": 1464, "loc": { "start": { "line": 66, @@ -4137,8 +4055,8 @@ }, { "type": "VariableDeclaration", - "start": 1480, - "end": 1524, + "start": 1470, + "end": 1514, "loc": { "start": { "line": 68, @@ -4152,8 +4070,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 1486, - "end": 1523, + "start": 1476, + "end": 1513, "loc": { "start": { "line": 68, @@ -4166,8 +4084,8 @@ }, "id": { "type": "Identifier", - "start": 1486, - "end": 1494, + "start": 1476, + "end": 1484, "loc": { "start": { "line": 68, @@ -4183,8 +4101,8 @@ }, "init": { "type": "CallExpression", - "start": 1497, - "end": 1523, + "start": 1487, + "end": 1513, "loc": { "start": { "line": 68, @@ -4197,8 +4115,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1497, - "end": 1513, + "start": 1487, + "end": 1503, "loc": { "start": { "line": 68, @@ -4211,8 +4129,8 @@ }, "object": { "type": "MemberExpression", - "start": 1497, - "end": 1504, + "start": 1487, + "end": 1494, "loc": { "start": { "line": 68, @@ -4225,8 +4143,8 @@ }, "object": { "type": "Identifier", - "start": 1497, - "end": 1501, + "start": 1487, + "end": 1491, "loc": { "start": { "line": 68, @@ -4242,8 +4160,8 @@ }, "property": { "type": "NumericLiteral", - "start": 1502, - "end": 1503, + "start": 1492, + "end": 1493, "loc": { "start": { "line": 68, @@ -4264,8 +4182,8 @@ }, "property": { "type": "Identifier", - "start": 1505, - "end": 1513, + "start": 1495, + "end": 1503, "loc": { "start": { "line": 68, @@ -4284,8 +4202,8 @@ "arguments": [ { "type": "Identifier", - "start": 1514, - "end": 1522, + "start": 1504, + "end": 1512, "loc": { "start": { "line": 68, @@ -4307,8 +4225,8 @@ }, { "type": "ForOfStatement", - "start": 1527, - "end": 1626, + "start": 1517, + "end": 1616, "loc": { "start": { "line": 69, @@ -4321,8 +4239,8 @@ }, "left": { "type": "VariableDeclaration", - "start": 1532, - "end": 1541, + "start": 1522, + "end": 1531, "loc": { "start": { "line": 69, @@ -4336,8 +4254,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 1538, - "end": 1541, + "start": 1528, + "end": 1531, "loc": { "start": { "line": 69, @@ -4350,8 +4268,8 @@ }, "id": { "type": "Identifier", - "start": 1538, - "end": 1541, + "start": 1528, + "end": 1531, "loc": { "start": { "line": 69, @@ -4372,8 +4290,8 @@ }, "right": { "type": "Identifier", - "start": 1545, - "end": 1553, + "start": 1535, + "end": 1543, "loc": { "start": { "line": 69, @@ -4389,8 +4307,8 @@ }, "body": { "type": "BlockStatement", - "start": 1555, - "end": 1626, + "start": 1545, + "end": 1616, "loc": { "start": { "line": 69, @@ -4404,8 +4322,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 1561, - "end": 1590, + "start": 1551, + "end": 1580, "loc": { "start": { "line": 70, @@ -4418,8 +4336,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 1561, - "end": 1589, + "start": 1551, + "end": 1579, "loc": { "start": { "line": 70, @@ -4433,8 +4351,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 1561, - "end": 1583, + "start": 1551, + "end": 1573, "loc": { "start": { "line": 70, @@ -4447,8 +4365,8 @@ }, "object": { "type": "Identifier", - "start": 1561, - "end": 1569, + "start": 1551, + "end": 1559, "loc": { "start": { "line": 70, @@ -4464,8 +4382,8 @@ }, "property": { "type": "MemberExpression", - "start": 1570, - "end": 1582, + "start": 1560, + "end": 1572, "loc": { "start": { "line": 70, @@ -4478,8 +4396,8 @@ }, "object": { "type": "MemberExpression", - "start": 1570, - "end": 1577, + "start": 1560, + "end": 1567, "loc": { "start": { "line": 70, @@ -4492,8 +4410,8 @@ }, "object": { "type": "Identifier", - "start": 1570, - "end": 1574, + "start": 1560, + "end": 1564, "loc": { "start": { "line": 70, @@ -4509,8 +4427,8 @@ }, "property": { "type": "NumericLiteral", - "start": 1575, - "end": 1576, + "start": 1565, + "end": 1566, "loc": { "start": { "line": 70, @@ -4531,8 +4449,8 @@ }, "property": { "type": "Identifier", - "start": 1578, - "end": 1582, + "start": 1568, + "end": 1572, "loc": { "start": { "line": 70, @@ -4552,8 +4470,8 @@ }, "right": { "type": "Identifier", - "start": 1586, - "end": 1589, + "start": 1576, + "end": 1579, "loc": { "start": { "line": 70, @@ -4571,8 +4489,8 @@ }, { "type": "ExpressionStatement", - "start": 1595, - "end": 1622, + "start": 1585, + "end": 1612, "loc": { "start": { "line": 71, @@ -4585,8 +4503,8 @@ }, "expression": { "type": "CallExpression", - "start": 1595, - "end": 1621, + "start": 1585, + "end": 1611, "loc": { "start": { "line": 71, @@ -4599,8 +4517,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1595, - "end": 1611, + "start": 1585, + "end": 1601, "loc": { "start": { "line": 71, @@ -4613,8 +4531,8 @@ }, "object": { "type": "MemberExpression", - "start": 1595, - "end": 1602, + "start": 1585, + "end": 1592, "loc": { "start": { "line": 71, @@ -4627,8 +4545,8 @@ }, "object": { "type": "Identifier", - "start": 1595, - "end": 1599, + "start": 1585, + "end": 1589, "loc": { "start": { "line": 71, @@ -4644,8 +4562,8 @@ }, "property": { "type": "NumericLiteral", - "start": 1600, - "end": 1601, + "start": 1590, + "end": 1591, "loc": { "start": { "line": 71, @@ -4666,8 +4584,8 @@ }, "property": { "type": "Identifier", - "start": 1603, - "end": 1611, + "start": 1593, + "end": 1601, "loc": { "start": { "line": 71, @@ -4686,8 +4604,8 @@ "arguments": [ { "type": "Identifier", - "start": 1612, - "end": 1620, + "start": 1602, + "end": 1610, "loc": { "start": { "line": 71, @@ -4710,8 +4628,8 @@ }, { "type": "ReturnStatement", - "start": 1630, - "end": 1643, + "start": 1620, + "end": 1633, "loc": { "start": { "line": 74, @@ -4724,8 +4642,8 @@ }, "argument": { "type": "BooleanLiteral", - "start": 1637, - "end": 1642, + "start": 1627, + "end": 1632, "loc": { "start": { "line": 74, @@ -4747,8 +4665,8 @@ }, { "type": "ExpressionStatement", - "start": 1648, - "end": 1788, + "start": 1638, + "end": 1778, "loc": { "start": { "line": 77, @@ -4761,8 +4679,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 1648, - "end": 1787, + "start": 1638, + "end": 1777, "loc": { "start": { "line": 77, @@ -4776,8 +4694,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 1648, - "end": 1666, + "start": 1638, + "end": 1656, "loc": { "start": { "line": 77, @@ -4790,8 +4708,8 @@ }, "object": { "type": "Identifier", - "start": 1648, - "end": 1660, + "start": 1638, + "end": 1650, "loc": { "start": { "line": 77, @@ -4807,8 +4725,8 @@ }, "property": { "type": "StringLiteral", - "start": 1661, - "end": 1665, + "start": 1651, + "end": 1655, "loc": { "start": { "line": 77, @@ -4829,8 +4747,8 @@ }, "right": { "type": "ArrowFunctionExpression", - "start": 1669, - "end": 1787, + "start": 1659, + "end": 1777, "loc": { "start": { "line": 77, @@ -4848,8 +4766,8 @@ "params": [ { "type": "Identifier", - "start": 1670, - "end": 1674, + "start": 1660, + "end": 1664, "loc": { "start": { "line": 77, @@ -4865,8 +4783,8 @@ }, { "type": "Identifier", - "start": 1676, - "end": 1679, + "start": 1666, + "end": 1669, "loc": { "start": { "line": 77, @@ -4883,8 +4801,8 @@ ], "body": { "type": "BlockStatement", - "start": 1684, - "end": 1787, + "start": 1674, + "end": 1777, "loc": { "start": { "line": 77, @@ -4898,8 +4816,8 @@ "body": [ { "type": "VariableDeclaration", - "start": 1688, - "end": 1706, + "start": 1678, + "end": 1696, "loc": { "start": { "line": 78, @@ -4913,8 +4831,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 1692, - "end": 1705, + "start": 1682, + "end": 1695, "loc": { "start": { "line": 78, @@ -4927,8 +4845,8 @@ }, "id": { "type": "Identifier", - "start": 1692, - "end": 1697, + "start": 1682, + "end": 1687, "loc": { "start": { "line": 78, @@ -4944,8 +4862,8 @@ }, "init": { "type": "BooleanLiteral", - "start": 1700, - "end": 1705, + "start": 1690, + "end": 1695, "loc": { "start": { "line": 78, @@ -4964,8 +4882,8 @@ }, { "type": "ExpressionStatement", - "start": 1710, - "end": 1768, + "start": 1700, + "end": 1758, "loc": { "start": { "line": 80, @@ -4978,8 +4896,8 @@ }, "expression": { "type": "CallExpression", - "start": 1710, - "end": 1767, + "start": 1700, + "end": 1757, "loc": { "start": { "line": 80, @@ -4992,8 +4910,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1710, - "end": 1722, + "start": 1700, + "end": 1712, "loc": { "start": { "line": 80, @@ -5006,8 +4924,8 @@ }, "object": { "type": "Identifier", - "start": 1710, - "end": 1714, + "start": 1700, + "end": 1704, "loc": { "start": { "line": 80, @@ -5023,8 +4941,8 @@ }, "property": { "type": "Identifier", - "start": 1715, - "end": 1722, + "start": 1705, + "end": 1712, "loc": { "start": { "line": 80, @@ -5043,8 +4961,8 @@ "arguments": [ { "type": "ArrowFunctionExpression", - "start": 1723, - "end": 1766, + "start": 1713, + "end": 1756, "loc": { "start": { "line": 80, @@ -5062,8 +4980,8 @@ "params": [ { "type": "Identifier", - "start": 1723, - "end": 1726, + "start": 1713, + "end": 1716, "loc": { "start": { "line": 80, @@ -5080,8 +4998,8 @@ ], "body": { "type": "BlockStatement", - "start": 1730, - "end": 1766, + "start": 1720, + "end": 1756, "loc": { "start": { "line": 80, @@ -5095,8 +5013,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 1736, - "end": 1762, + "start": 1726, + "end": 1752, "loc": { "start": { "line": 81, @@ -5109,8 +5027,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 1736, - "end": 1761, + "start": 1726, + "end": 1751, "loc": { "start": { "line": 81, @@ -5124,8 +5042,8 @@ "operator": "=", "left": { "type": "Identifier", - "start": 1736, - "end": 1741, + "start": 1726, + "end": 1731, "loc": { "start": { "line": 81, @@ -5141,8 +5059,8 @@ }, "right": { "type": "CallExpression", - "start": 1744, - "end": 1761, + "start": 1734, + "end": 1751, "loc": { "start": { "line": 81, @@ -5155,8 +5073,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1744, - "end": 1756, + "start": 1734, + "end": 1746, "loc": { "start": { "line": 81, @@ -5169,8 +5087,8 @@ }, "object": { "type": "Identifier", - "start": 1744, - "end": 1747, + "start": 1734, + "end": 1737, "loc": { "start": { "line": 81, @@ -5186,8 +5104,8 @@ }, "property": { "type": "Identifier", - "start": 1748, - "end": 1756, + "start": 1738, + "end": 1746, "loc": { "start": { "line": 81, @@ -5206,8 +5124,8 @@ "arguments": [ { "type": "Identifier", - "start": 1757, - "end": 1760, + "start": 1747, + "end": 1750, "loc": { "start": { "line": 81, @@ -5234,8 +5152,8 @@ }, { "type": "ReturnStatement", - "start": 1772, - "end": 1785, + "start": 1762, + "end": 1775, "loc": { "start": { "line": 84, @@ -5248,8 +5166,8 @@ }, "argument": { "type": "Identifier", - "start": 1779, - "end": 1784, + "start": 1769, + "end": 1774, "loc": { "start": { "line": 84, @@ -5272,8 +5190,8 @@ }, { "type": "ExpressionStatement", - "start": 1790, - "end": 2218, + "start": 1780, + "end": 2208, "loc": { "start": { "line": 87, @@ -5286,8 +5204,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 1790, - "end": 2217, + "start": 1780, + "end": 2207, "loc": { "start": { "line": 87, @@ -5301,8 +5219,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 1790, - "end": 1809, + "start": 1780, + "end": 1799, "loc": { "start": { "line": 87, @@ -5315,8 +5233,8 @@ }, "object": { "type": "Identifier", - "start": 1790, - "end": 1802, + "start": 1780, + "end": 1792, "loc": { "start": { "line": 87, @@ -5332,8 +5250,8 @@ }, "property": { "type": "StringLiteral", - "start": 1803, - "end": 1808, + "start": 1793, + "end": 1798, "loc": { "start": { "line": 87, @@ -5354,8 +5272,8 @@ }, "right": { "type": "AssignmentExpression", - "start": 1812, - "end": 2217, + "start": 1802, + "end": 2207, "loc": { "start": { "line": 87, @@ -5369,8 +5287,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 1812, - "end": 1834, + "start": 1802, + "end": 1824, "loc": { "start": { "line": 87, @@ -5383,8 +5301,8 @@ }, "object": { "type": "Identifier", - "start": 1812, - "end": 1824, + "start": 1802, + "end": 1814, "loc": { "start": { "line": 87, @@ -5400,8 +5318,8 @@ }, "property": { "type": "StringLiteral", - "start": 1825, - "end": 1833, + "start": 1815, + "end": 1823, "loc": { "start": { "line": 87, @@ -5422,8 +5340,8 @@ }, "right": { "type": "AssignmentExpression", - "start": 1837, - "end": 2217, + "start": 1827, + "end": 2207, "loc": { "start": { "line": 87, @@ -5437,8 +5355,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 1837, - "end": 1855, + "start": 1827, + "end": 1845, "loc": { "start": { "line": 87, @@ -5451,8 +5369,8 @@ }, "object": { "type": "Identifier", - "start": 1837, - "end": 1849, + "start": 1827, + "end": 1839, "loc": { "start": { "line": 87, @@ -5468,8 +5386,8 @@ }, "property": { "type": "StringLiteral", - "start": 1850, - "end": 1854, + "start": 1840, + "end": 1844, "loc": { "start": { "line": 87, @@ -5490,8 +5408,8 @@ }, "right": { "type": "ArrowFunctionExpression", - "start": 1858, - "end": 2217, + "start": 1848, + "end": 2207, "loc": { "start": { "line": 87, @@ -5509,8 +5427,8 @@ "params": [ { "type": "Identifier", - "start": 1859, - "end": 1863, + "start": 1849, + "end": 1853, "loc": { "start": { "line": 87, @@ -5526,8 +5444,8 @@ }, { "type": "Identifier", - "start": 1865, - "end": 1868, + "start": 1855, + "end": 1858, "loc": { "start": { "line": 87, @@ -5544,8 +5462,8 @@ ], "body": { "type": "BlockStatement", - "start": 1873, - "end": 2217, + "start": 1863, + "end": 2207, "loc": { "start": { "line": 87, @@ -5559,8 +5477,8 @@ "body": [ { "type": "IfStatement", - "start": 1877, - "end": 1980, + "start": 1867, + "end": 1970, "loc": { "start": { "line": 88, @@ -5573,8 +5491,8 @@ }, "test": { "type": "LogicalExpression", - "start": 1881, - "end": 1925, + "start": 1871, + "end": 1915, "loc": { "start": { "line": 88, @@ -5587,8 +5505,8 @@ }, "left": { "type": "BinaryExpression", - "start": 1881, - "end": 1898, + "start": 1871, + "end": 1888, "loc": { "start": { "line": 88, @@ -5601,8 +5519,8 @@ }, "left": { "type": "MemberExpression", - "start": 1881, - "end": 1892, + "start": 1871, + "end": 1882, "loc": { "start": { "line": 88, @@ -5615,8 +5533,8 @@ }, "object": { "type": "Identifier", - "start": 1881, - "end": 1885, + "start": 1871, + "end": 1875, "loc": { "start": { "line": 88, @@ -5632,8 +5550,8 @@ }, "property": { "type": "Identifier", - "start": 1886, - "end": 1892, + "start": 1876, + "end": 1882, "loc": { "start": { "line": 88, @@ -5652,8 +5570,8 @@ "operator": "!==", "right": { "type": "NumericLiteral", - "start": 1897, - "end": 1898, + "start": 1887, + "end": 1888, "loc": { "start": { "line": 88, @@ -5674,8 +5592,8 @@ "operator": "||", "right": { "type": "BinaryExpression", - "start": 1902, - "end": 1925, + "start": 1892, + "end": 1915, "loc": { "start": { "line": 88, @@ -5688,8 +5606,8 @@ }, "left": { "type": "MemberExpression", - "start": 1902, - "end": 1914, + "start": 1892, + "end": 1904, "loc": { "start": { "line": 88, @@ -5702,8 +5620,8 @@ }, "object": { "type": "MemberExpression", - "start": 1902, - "end": 1909, + "start": 1892, + "end": 1899, "loc": { "start": { "line": 88, @@ -5716,8 +5634,8 @@ }, "object": { "type": "Identifier", - "start": 1902, - "end": 1906, + "start": 1892, + "end": 1896, "loc": { "start": { "line": 88, @@ -5733,8 +5651,8 @@ }, "property": { "type": "NumericLiteral", - "start": 1907, - "end": 1908, + "start": 1897, + "end": 1898, "loc": { "start": { "line": 88, @@ -5755,8 +5673,8 @@ }, "property": { "type": "Identifier", - "start": 1910, - "end": 1914, + "start": 1900, + "end": 1904, "loc": { "start": { "line": 88, @@ -5775,8 +5693,8 @@ "operator": "!==", "right": { "type": "StringLiteral", - "start": 1919, - "end": 1925, + "start": 1909, + "end": 1915, "loc": { "start": { "line": 88, @@ -5797,8 +5715,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 1927, - "end": 1980, + "start": 1917, + "end": 1970, "loc": { "start": { "line": 88, @@ -5812,8 +5730,8 @@ "body": [ { "type": "ThrowStatement", - "start": 1933, - "end": 1976, + "start": 1923, + "end": 1966, "loc": { "start": { "line": 89, @@ -5826,8 +5744,8 @@ }, "argument": { "type": "NewExpression", - "start": 1939, - "end": 1975, + "start": 1929, + "end": 1965, "loc": { "start": { "line": 89, @@ -5840,8 +5758,8 @@ }, "callee": { "type": "Identifier", - "start": 1943, - "end": 1954, + "start": 1933, + "end": 1944, "loc": { "start": { "line": 89, @@ -5858,8 +5776,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 1955, - "end": 1974, + "start": 1945, + "end": 1964, "loc": { "start": { "line": 89, @@ -5886,8 +5804,8 @@ }, { "type": "VariableDeclaration", - "start": 1984, - "end": 2018, + "start": 1974, + "end": 2008, "loc": { "start": { "line": 92, @@ -5901,8 +5819,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 1988, - "end": 2017, + "start": 1978, + "end": 2007, "loc": { "start": { "line": 92, @@ -5915,8 +5833,8 @@ }, "id": { "type": "Identifier", - "start": 1988, - "end": 1993, + "start": 1978, + "end": 1983, "loc": { "start": { "line": 92, @@ -5932,8 +5850,8 @@ }, "init": { "type": "CallExpression", - "start": 1996, - "end": 2017, + "start": 1986, + "end": 2007, "loc": { "start": { "line": 92, @@ -5946,8 +5864,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1996, - "end": 2012, + "start": 1986, + "end": 2002, "loc": { "start": { "line": 92, @@ -5960,8 +5878,8 @@ }, "object": { "type": "MemberExpression", - "start": 1996, - "end": 2003, + "start": 1986, + "end": 1993, "loc": { "start": { "line": 92, @@ -5974,8 +5892,8 @@ }, "object": { "type": "Identifier", - "start": 1996, - "end": 2000, + "start": 1986, + "end": 1990, "loc": { "start": { "line": 92, @@ -5991,8 +5909,8 @@ }, "property": { "type": "NumericLiteral", - "start": 2001, - "end": 2002, + "start": 1991, + "end": 1992, "loc": { "start": { "line": 92, @@ -6013,8 +5931,8 @@ }, "property": { "type": "Identifier", - "start": 2004, - "end": 2012, + "start": 1994, + "end": 2002, "loc": { "start": { "line": 92, @@ -6033,8 +5951,8 @@ "arguments": [ { "type": "Identifier", - "start": 2013, - "end": 2016, + "start": 2003, + "end": 2006, "loc": { "start": { "line": 92, @@ -6056,8 +5974,8 @@ }, { "type": "VariableDeclaration", - "start": 2022, - "end": 2049, + "start": 2012, + "end": 2039, "loc": { "start": { "line": 94, @@ -6071,8 +5989,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 2026, - "end": 2048, + "start": 2016, + "end": 2038, "loc": { "start": { "line": 94, @@ -6085,8 +6003,8 @@ }, "id": { "type": "Identifier", - "start": 2026, - "end": 2033, + "start": 2016, + "end": 2023, "loc": { "start": { "line": 94, @@ -6102,8 +6020,8 @@ }, "init": { "type": "MemberExpression", - "start": 2036, - "end": 2048, + "start": 2026, + "end": 2038, "loc": { "start": { "line": 94, @@ -6116,8 +6034,8 @@ }, "object": { "type": "MemberExpression", - "start": 2036, - "end": 2043, + "start": 2026, + "end": 2033, "loc": { "start": { "line": 94, @@ -6130,8 +6048,8 @@ }, "object": { "type": "Identifier", - "start": 2036, - "end": 2040, + "start": 2026, + "end": 2030, "loc": { "start": { "line": 94, @@ -6147,8 +6065,8 @@ }, "property": { "type": "NumericLiteral", - "start": 2041, - "end": 2042, + "start": 2031, + "end": 2032, "loc": { "start": { "line": 94, @@ -6169,8 +6087,8 @@ }, "property": { "type": "Identifier", - "start": 2044, - "end": 2048, + "start": 2034, + "end": 2038, "loc": { "start": { "line": 94, @@ -6192,8 +6110,8 @@ }, { "type": "IfStatement", - "start": 2053, - "end": 2174, + "start": 2043, + "end": 2164, "loc": { "start": { "line": 96, @@ -6206,8 +6124,8 @@ }, "test": { "type": "BinaryExpression", - "start": 2057, - "end": 2084, + "start": 2047, + "end": 2074, "loc": { "start": { "line": 96, @@ -6220,8 +6138,8 @@ }, "left": { "type": "Identifier", - "start": 2057, - "end": 2064, + "start": 2047, + "end": 2054, "loc": { "start": { "line": 96, @@ -6238,8 +6156,8 @@ "operator": "in", "right": { "type": "MemberExpression", - "start": 2068, - "end": 2084, + "start": 2058, + "end": 2074, "loc": { "start": { "line": 96, @@ -6252,8 +6170,8 @@ }, "object": { "type": "Identifier", - "start": 2068, - "end": 2071, + "start": 2058, + "end": 2061, "loc": { "start": { "line": 96, @@ -6269,8 +6187,8 @@ }, "property": { "type": "StringLiteral", - "start": 2072, - "end": 2083, + "start": 2062, + "end": 2073, "loc": { "start": { "line": 96, @@ -6292,8 +6210,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 2086, - "end": 2174, + "start": 2076, + "end": 2164, "loc": { "start": { "line": 96, @@ -6307,8 +6225,8 @@ "body": [ { "type": "ThrowStatement", - "start": 2092, - "end": 2170, + "start": 2082, + "end": 2160, "loc": { "start": { "line": 97, @@ -6321,8 +6239,8 @@ }, "argument": { "type": "NewExpression", - "start": 2098, - "end": 2169, + "start": 2088, + "end": 2159, "loc": { "start": { "line": 97, @@ -6335,8 +6253,8 @@ }, "callee": { "type": "Identifier", - "start": 2102, - "end": 2116, + "start": 2092, + "end": 2106, "loc": { "start": { "line": 97, @@ -6353,8 +6271,8 @@ "arguments": [ { "type": "TemplateLiteral", - "start": 2117, - "end": 2168, + "start": 2107, + "end": 2158, "loc": { "start": { "line": 97, @@ -6368,8 +6286,8 @@ "expressions": [ { "type": "MemberExpression", - "start": 2154, - "end": 2166, + "start": 2144, + "end": 2156, "loc": { "start": { "line": 97, @@ -6382,8 +6300,8 @@ }, "object": { "type": "MemberExpression", - "start": 2154, - "end": 2161, + "start": 2144, + "end": 2151, "loc": { "start": { "line": 97, @@ -6396,8 +6314,8 @@ }, "object": { "type": "Identifier", - "start": 2154, - "end": 2158, + "start": 2144, + "end": 2148, "loc": { "start": { "line": 97, @@ -6413,8 +6331,8 @@ }, "property": { "type": "NumericLiteral", - "start": 2159, - "end": 2160, + "start": 2149, + "end": 2150, "loc": { "start": { "line": 97, @@ -6435,8 +6353,8 @@ }, "property": { "type": "Identifier", - "start": 2162, - "end": 2166, + "start": 2152, + "end": 2156, "loc": { "start": { "line": 97, @@ -6456,8 +6374,8 @@ "quasis": [ { "type": "TemplateElement", - "start": 2118, - "end": 2152, + "start": 2108, + "end": 2142, "loc": { "start": { "line": 97, @@ -6476,8 +6394,8 @@ }, { "type": "TemplateElement", - "start": 2167, - "end": 2167, + "start": 2157, + "end": 2157, "loc": { "start": { "line": 97, @@ -6506,8 +6424,8 @@ }, { "type": "ExpressionStatement", - "start": 2178, - "end": 2199, + "start": 2168, + "end": 2189, "loc": { "start": { "line": 100, @@ -6520,8 +6438,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 2178, - "end": 2198, + "start": 2168, + "end": 2188, "loc": { "start": { "line": 100, @@ -6535,8 +6453,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 2178, - "end": 2190, + "start": 2168, + "end": 2180, "loc": { "start": { "line": 100, @@ -6549,8 +6467,8 @@ }, "object": { "type": "Identifier", - "start": 2178, - "end": 2181, + "start": 2168, + "end": 2171, "loc": { "start": { "line": 100, @@ -6566,8 +6484,8 @@ }, "property": { "type": "Identifier", - "start": 2182, - "end": 2189, + "start": 2172, + "end": 2179, "loc": { "start": { "line": 100, @@ -6585,8 +6503,8 @@ }, "right": { "type": "Identifier", - "start": 2193, - "end": 2198, + "start": 2183, + "end": 2188, "loc": { "start": { "line": 100, @@ -6604,8 +6522,8 @@ }, { "type": "ReturnStatement", - "start": 2202, - "end": 2215, + "start": 2192, + "end": 2205, "loc": { "start": { "line": 101, @@ -6618,8 +6536,8 @@ }, "argument": { "type": "Identifier", - "start": 2209, - "end": 2214, + "start": 2199, + "end": 2204, "loc": { "start": { "line": 101, @@ -6644,8 +6562,8 @@ }, { "type": "ExpressionStatement", - "start": 2220, - "end": 2950, + "start": 2210, + "end": 2940, "loc": { "start": { "line": 104, @@ -6658,8 +6576,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 2220, - "end": 2949, + "start": 2210, + "end": 2939, "loc": { "start": { "line": 104, @@ -6673,8 +6591,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 2220, - "end": 2239, + "start": 2210, + "end": 2229, "loc": { "start": { "line": 104, @@ -6687,8 +6605,8 @@ }, "object": { "type": "Identifier", - "start": 2220, - "end": 2232, + "start": 2210, + "end": 2222, "loc": { "start": { "line": 104, @@ -6704,8 +6622,8 @@ }, "property": { "type": "StringLiteral", - "start": 2233, - "end": 2238, + "start": 2223, + "end": 2228, "loc": { "start": { "line": 104, @@ -6726,8 +6644,8 @@ }, "right": { "type": "AssignmentExpression", - "start": 2242, - "end": 2949, + "start": 2232, + "end": 2939, "loc": { "start": { "line": 104, @@ -6741,8 +6659,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 2242, - "end": 2260, + "start": 2232, + "end": 2250, "loc": { "start": { "line": 104, @@ -6755,8 +6673,8 @@ }, "object": { "type": "Identifier", - "start": 2242, - "end": 2254, + "start": 2232, + "end": 2244, "loc": { "start": { "line": 104, @@ -6772,8 +6690,8 @@ }, "property": { "type": "StringLiteral", - "start": 2255, - "end": 2259, + "start": 2245, + "end": 2249, "loc": { "start": { "line": 104, @@ -6794,8 +6712,8 @@ }, "right": { "type": "ArrowFunctionExpression", - "start": 2263, - "end": 2949, + "start": 2253, + "end": 2939, "loc": { "start": { "line": 104, @@ -6813,8 +6731,8 @@ "params": [ { "type": "Identifier", - "start": 2264, - "end": 2268, + "start": 2254, + "end": 2258, "loc": { "start": { "line": 104, @@ -6830,8 +6748,8 @@ }, { "type": "Identifier", - "start": 2270, - "end": 2273, + "start": 2260, + "end": 2263, "loc": { "start": { "line": 104, @@ -6848,8 +6766,8 @@ ], "body": { "type": "BlockStatement", - "start": 2278, - "end": 2949, + "start": 2268, + "end": 2939, "loc": { "start": { "line": 104, @@ -6863,8 +6781,8 @@ "body": [ { "type": "IfStatement", - "start": 2282, - "end": 2358, + "start": 2272, + "end": 2348, "loc": { "start": { "line": 105, @@ -6877,8 +6795,8 @@ }, "test": { "type": "UnaryExpression", - "start": 2286, - "end": 2298, + "start": 2276, + "end": 2288, "loc": { "start": { "line": 105, @@ -6893,8 +6811,8 @@ "prefix": true, "argument": { "type": "MemberExpression", - "start": 2287, - "end": 2298, + "start": 2277, + "end": 2288, "loc": { "start": { "line": 105, @@ -6907,8 +6825,8 @@ }, "object": { "type": "Identifier", - "start": 2287, - "end": 2291, + "start": 2277, + "end": 2281, "loc": { "start": { "line": 105, @@ -6924,8 +6842,8 @@ }, "property": { "type": "Identifier", - "start": 2292, - "end": 2298, + "start": 2282, + "end": 2288, "loc": { "start": { "line": 105, @@ -6947,8 +6865,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 2300, - "end": 2358, + "start": 2290, + "end": 2348, "loc": { "start": { "line": 105, @@ -6962,8 +6880,8 @@ "body": [ { "type": "ThrowStatement", - "start": 2306, - "end": 2354, + "start": 2296, + "end": 2344, "loc": { "start": { "line": 106, @@ -6976,8 +6894,8 @@ }, "argument": { "type": "NewExpression", - "start": 2312, - "end": 2353, + "start": 2302, + "end": 2343, "loc": { "start": { "line": 106, @@ -6990,8 +6908,8 @@ }, "callee": { "type": "Identifier", - "start": 2316, - "end": 2327, + "start": 2306, + "end": 2317, "loc": { "start": { "line": 106, @@ -7008,8 +6926,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 2328, - "end": 2352, + "start": 2318, + "end": 2342, "loc": { "start": { "line": 106, @@ -7036,8 +6954,8 @@ }, { "type": "FunctionDeclaration", - "start": 2362, - "end": 2504, + "start": 2352, + "end": 2494, "loc": { "start": { "line": 109, @@ -7050,8 +6968,8 @@ }, "id": { "type": "Identifier", - "start": 2371, - "end": 2375, + "start": 2361, + "end": 2365, "loc": { "start": { "line": 109, @@ -7071,8 +6989,8 @@ "params": [ { "type": "Identifier", - "start": 2376, - "end": 2380, + "start": 2366, + "end": 2370, "loc": { "start": { "line": 109, @@ -7089,8 +7007,8 @@ ], "body": { "type": "BlockStatement", - "start": 2382, - "end": 2504, + "start": 2372, + "end": 2494, "loc": { "start": { "line": 109, @@ -7104,8 +7022,8 @@ "body": [ { "type": "IfStatement", - "start": 2388, - "end": 2477, + "start": 2378, + "end": 2467, "loc": { "start": { "line": 110, @@ -7118,8 +7036,8 @@ }, "test": { "type": "BinaryExpression", - "start": 2392, - "end": 2412, + "start": 2382, + "end": 2402, "loc": { "start": { "line": 110, @@ -7132,8 +7050,8 @@ }, "left": { "type": "MemberExpression", - "start": 2392, - "end": 2401, + "start": 2382, + "end": 2391, "loc": { "start": { "line": 110, @@ -7146,8 +7064,8 @@ }, "object": { "type": "Identifier", - "start": 2392, - "end": 2396, + "start": 2382, + "end": 2386, "loc": { "start": { "line": 110, @@ -7163,8 +7081,8 @@ }, "property": { "type": "Identifier", - "start": 2397, - "end": 2401, + "start": 2387, + "end": 2391, "loc": { "start": { "line": 110, @@ -7183,8 +7101,8 @@ "operator": "!==", "right": { "type": "StringLiteral", - "start": 2406, - "end": 2412, + "start": 2396, + "end": 2402, "loc": { "start": { "line": 110, @@ -7204,8 +7122,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 2414, - "end": 2477, + "start": 2404, + "end": 2467, "loc": { "start": { "line": 110, @@ -7219,8 +7137,8 @@ "body": [ { "type": "ThrowStatement", - "start": 2422, - "end": 2471, + "start": 2412, + "end": 2461, "loc": { "start": { "line": 111, @@ -7233,8 +7151,8 @@ }, "argument": { "type": "NewExpression", - "start": 2428, - "end": 2470, + "start": 2418, + "end": 2460, "loc": { "start": { "line": 111, @@ -7247,8 +7165,8 @@ }, "callee": { "type": "Identifier", - "start": 2432, - "end": 2443, + "start": 2422, + "end": 2433, "loc": { "start": { "line": 111, @@ -7265,8 +7183,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 2444, - "end": 2469, + "start": 2434, + "end": 2459, "loc": { "start": { "line": 111, @@ -7293,8 +7211,8 @@ }, { "type": "ReturnStatement", - "start": 2483, - "end": 2500, + "start": 2473, + "end": 2490, "loc": { "start": { "line": 114, @@ -7307,8 +7225,8 @@ }, "argument": { "type": "MemberExpression", - "start": 2490, - "end": 2499, + "start": 2480, + "end": 2489, "loc": { "start": { "line": 114, @@ -7321,8 +7239,8 @@ }, "object": { "type": "Identifier", - "start": 2490, - "end": 2494, + "start": 2480, + "end": 2484, "loc": { "start": { "line": 114, @@ -7338,8 +7256,8 @@ }, "property": { "type": "Identifier", - "start": 2495, - "end": 2499, + "start": 2485, + "end": 2489, "loc": { "start": { "line": 114, @@ -7362,8 +7280,8 @@ }, { "type": "VariableDeclaration", - "start": 2508, - "end": 2564, + "start": 2498, + "end": 2554, "loc": { "start": { "line": 117, @@ -7377,8 +7295,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 2512, - "end": 2563, + "start": 2502, + "end": 2553, "loc": { "start": { "line": 117, @@ -7391,8 +7309,8 @@ }, "id": { "type": "Identifier", - "start": 2512, - "end": 2520, + "start": 2502, + "end": 2510, "loc": { "start": { "line": 117, @@ -7408,8 +7326,8 @@ }, "init": { "type": "CallExpression", - "start": 2523, - "end": 2563, + "start": 2513, + "end": 2553, "loc": { "start": { "line": 117, @@ -7422,8 +7340,8 @@ }, "callee": { "type": "MemberExpression", - "start": 2523, - "end": 2557, + "start": 2513, + "end": 2547, "loc": { "start": { "line": 117, @@ -7436,8 +7354,8 @@ }, "object": { "type": "CallExpression", - "start": 2523, - "end": 2553, + "start": 2513, + "end": 2543, "loc": { "start": { "line": 117, @@ -7450,8 +7368,8 @@ }, "callee": { "type": "MemberExpression", - "start": 2523, - "end": 2533, + "start": 2513, + "end": 2523, "loc": { "start": { "line": 117, @@ -7464,8 +7382,8 @@ }, "object": { "type": "Identifier", - "start": 2523, - "end": 2527, + "start": 2513, + "end": 2517, "loc": { "start": { "line": 117, @@ -7481,8 +7399,8 @@ }, "property": { "type": "Identifier", - "start": 2528, - "end": 2533, + "start": 2518, + "end": 2523, "loc": { "start": { "line": 117, @@ -7501,8 +7419,8 @@ "arguments": [ { "type": "NumericLiteral", - "start": 2534, - "end": 2535, + "start": 2524, + "end": 2525, "loc": { "start": { "line": 117, @@ -7521,8 +7439,8 @@ }, { "type": "BinaryExpression", - "start": 2537, - "end": 2552, + "start": 2527, + "end": 2542, "loc": { "start": { "line": 117, @@ -7535,8 +7453,8 @@ }, "left": { "type": "MemberExpression", - "start": 2537, - "end": 2548, + "start": 2527, + "end": 2538, "loc": { "start": { "line": 117, @@ -7549,8 +7467,8 @@ }, "object": { "type": "Identifier", - "start": 2537, - "end": 2541, + "start": 2527, + "end": 2531, "loc": { "start": { "line": 117, @@ -7566,8 +7484,8 @@ }, "property": { "type": "Identifier", - "start": 2542, - "end": 2548, + "start": 2532, + "end": 2538, "loc": { "start": { "line": 117, @@ -7586,8 +7504,8 @@ "operator": "-", "right": { "type": "NumericLiteral", - "start": 2551, - "end": 2552, + "start": 2541, + "end": 2542, "loc": { "start": { "line": 117, @@ -7609,8 +7527,8 @@ }, "property": { "type": "Identifier", - "start": 2554, - "end": 2557, + "start": 2544, + "end": 2547, "loc": { "start": { "line": 117, @@ -7629,8 +7547,8 @@ "arguments": [ { "type": "Identifier", - "start": 2558, - "end": 2562, + "start": 2548, + "end": 2552, "loc": { "start": { "line": 117, @@ -7652,8 +7570,8 @@ }, { "type": "VariableDeclaration", - "start": 2567, - "end": 2600, + "start": 2557, + "end": 2590, "loc": { "start": { "line": 118, @@ -7667,8 +7585,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 2571, - "end": 2599, + "start": 2561, + "end": 2589, "loc": { "start": { "line": 118, @@ -7681,8 +7599,8 @@ }, "id": { "type": "Identifier", - "start": 2571, - "end": 2575, + "start": 2561, + "end": 2565, "loc": { "start": { "line": 118, @@ -7698,8 +7616,8 @@ }, "init": { "type": "MemberExpression", - "start": 2578, - "end": 2599, + "start": 2568, + "end": 2589, "loc": { "start": { "line": 118, @@ -7712,8 +7630,8 @@ }, "object": { "type": "Identifier", - "start": 2578, - "end": 2582, + "start": 2568, + "end": 2572, "loc": { "start": { "line": 118, @@ -7729,8 +7647,8 @@ }, "property": { "type": "BinaryExpression", - "start": 2583, - "end": 2598, + "start": 2573, + "end": 2588, "loc": { "start": { "line": 118, @@ -7743,8 +7661,8 @@ }, "left": { "type": "MemberExpression", - "start": 2583, - "end": 2594, + "start": 2573, + "end": 2584, "loc": { "start": { "line": 118, @@ -7757,8 +7675,8 @@ }, "object": { "type": "Identifier", - "start": 2583, - "end": 2587, + "start": 2573, + "end": 2577, "loc": { "start": { "line": 118, @@ -7774,8 +7692,8 @@ }, "property": { "type": "Identifier", - "start": 2588, - "end": 2594, + "start": 2578, + "end": 2584, "loc": { "start": { "line": 118, @@ -7794,8 +7712,8 @@ "operator": "-", "right": { "type": "NumericLiteral", - "start": 2597, - "end": 2598, + "start": 2587, + "end": 2588, "loc": { "start": { "line": 118, @@ -7821,8 +7739,8 @@ }, { "type": "ReturnStatement", - "start": 2604, - "end": 2947, + "start": 2594, + "end": 2937, "loc": { "start": { "line": 120, @@ -7835,8 +7753,8 @@ }, "argument": { "type": "FunctionExpression", - "start": 2611, - "end": 2946, + "start": 2601, + "end": 2936, "loc": { "start": { "line": 120, @@ -7854,8 +7772,8 @@ "params": [], "body": { "type": "BlockStatement", - "start": 2622, - "end": 2946, + "start": 2612, + "end": 2936, "loc": { "start": { "line": 120, @@ -7869,8 +7787,8 @@ "body": [ { "type": "IfStatement", - "start": 2628, - "end": 2733, + "start": 2618, + "end": 2723, "loc": { "start": { "line": 121, @@ -7883,8 +7801,8 @@ }, "test": { "type": "BinaryExpression", - "start": 2632, - "end": 2668, + "start": 2622, + "end": 2658, "loc": { "start": { "line": 121, @@ -7897,8 +7815,8 @@ }, "left": { "type": "MemberExpression", - "start": 2632, - "end": 2648, + "start": 2622, + "end": 2638, "loc": { "start": { "line": 121, @@ -7911,8 +7829,8 @@ }, "object": { "type": "Identifier", - "start": 2632, - "end": 2641, + "start": 2622, + "end": 2631, "loc": { "start": { "line": 121, @@ -7928,8 +7846,8 @@ }, "property": { "type": "Identifier", - "start": 2642, - "end": 2648, + "start": 2632, + "end": 2638, "loc": { "start": { "line": 121, @@ -7948,8 +7866,8 @@ "operator": "!==", "right": { "type": "MemberExpression", - "start": 2653, - "end": 2668, + "start": 2643, + "end": 2658, "loc": { "start": { "line": 121, @@ -7962,8 +7880,8 @@ }, "object": { "type": "Identifier", - "start": 2653, - "end": 2661, + "start": 2643, + "end": 2651, "loc": { "start": { "line": 121, @@ -7979,8 +7897,8 @@ }, "property": { "type": "Identifier", - "start": 2662, - "end": 2668, + "start": 2652, + "end": 2658, "loc": { "start": { "line": 121, @@ -7999,8 +7917,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 2670, - "end": 2733, + "start": 2660, + "end": 2723, "loc": { "start": { "line": 121, @@ -8014,8 +7932,8 @@ "body": [ { "type": "ThrowStatement", - "start": 2678, - "end": 2727, + "start": 2668, + "end": 2717, "loc": { "start": { "line": 122, @@ -8028,8 +7946,8 @@ }, "argument": { "type": "NewExpression", - "start": 2684, - "end": 2726, + "start": 2674, + "end": 2716, "loc": { "start": { "line": 122, @@ -8042,8 +7960,8 @@ }, "callee": { "type": "Identifier", - "start": 2688, - "end": 2697, + "start": 2678, + "end": 2687, "loc": { "start": { "line": 122, @@ -8060,8 +7978,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 2698, - "end": 2725, + "start": 2688, + "end": 2715, "loc": { "start": { "line": 122, @@ -8088,8 +8006,8 @@ }, { "type": "VariableDeclaration", - "start": 2739, - "end": 2773, + "start": 2729, + "end": 2763, "loc": { "start": { "line": 125, @@ -8103,8 +8021,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 2743, - "end": 2772, + "start": 2733, + "end": 2762, "loc": { "start": { "line": 125, @@ -8117,8 +8035,8 @@ }, "id": { "type": "Identifier", - "start": 2743, - "end": 2751, + "start": 2733, + "end": 2741, "loc": { "start": { "line": 125, @@ -8134,8 +8052,8 @@ }, "init": { "type": "CallExpression", - "start": 2754, - "end": 2772, + "start": 2744, + "end": 2762, "loc": { "start": { "line": 125, @@ -8148,8 +8066,8 @@ }, "callee": { "type": "MemberExpression", - "start": 2754, - "end": 2767, + "start": 2744, + "end": 2757, "loc": { "start": { "line": 125, @@ -8162,8 +8080,8 @@ }, "object": { "type": "Identifier", - "start": 2754, - "end": 2760, + "start": 2744, + "end": 2750, "loc": { "start": { "line": 125, @@ -8179,8 +8097,8 @@ }, "property": { "type": "Identifier", - "start": 2761, - "end": 2767, + "start": 2751, + "end": 2757, "loc": { "start": { "line": 125, @@ -8199,8 +8117,8 @@ "arguments": [ { "type": "Identifier", - "start": 2768, - "end": 2771, + "start": 2758, + "end": 2761, "loc": { "start": { "line": 125, @@ -8222,8 +8140,8 @@ }, { "type": "ExpressionStatement", - "start": 2778, - "end": 2805, + "start": 2768, + "end": 2795, "loc": { "start": { "line": 126, @@ -8236,8 +8154,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 2778, - "end": 2804, + "start": 2768, + "end": 2794, "loc": { "start": { "line": 126, @@ -8251,8 +8169,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 2778, - "end": 2799, + "start": 2768, + "end": 2789, "loc": { "start": { "line": 126, @@ -8265,8 +8183,8 @@ }, "object": { "type": "Identifier", - "start": 2778, - "end": 2786, + "start": 2768, + "end": 2776, "loc": { "start": { "line": 126, @@ -8282,8 +8200,8 @@ }, "property": { "type": "StringLiteral", - "start": 2787, - "end": 2798, + "start": 2777, + "end": 2788, "loc": { "start": { "line": 126, @@ -8304,8 +8222,8 @@ }, "right": { "type": "ObjectExpression", - "start": 2802, - "end": 2804, + "start": 2792, + "end": 2794, "loc": { "start": { "line": 126, @@ -8322,8 +8240,8 @@ }, { "type": "ForStatement", - "start": 2811, - "end": 2905, + "start": 2801, + "end": 2895, "loc": { "start": { "line": 128, @@ -8336,8 +8254,8 @@ }, "init": { "type": "VariableDeclaration", - "start": 2816, - "end": 2825, + "start": 2806, + "end": 2815, "loc": { "start": { "line": 128, @@ -8351,8 +8269,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 2820, - "end": 2825, + "start": 2810, + "end": 2815, "loc": { "start": { "line": 128, @@ -8365,8 +8283,8 @@ }, "id": { "type": "Identifier", - "start": 2820, - "end": 2821, + "start": 2810, + "end": 2811, "loc": { "start": { "line": 128, @@ -8382,8 +8300,8 @@ }, "init": { "type": "NumericLiteral", - "start": 2824, - "end": 2825, + "start": 2814, + "end": 2815, "loc": { "start": { "line": 128, @@ -8406,8 +8324,8 @@ }, "test": { "type": "BinaryExpression", - "start": 2827, - "end": 2847, + "start": 2817, + "end": 2837, "loc": { "start": { "line": 128, @@ -8420,8 +8338,8 @@ }, "left": { "type": "Identifier", - "start": 2827, - "end": 2828, + "start": 2817, + "end": 2818, "loc": { "start": { "line": 128, @@ -8438,8 +8356,8 @@ "operator": "<", "right": { "type": "MemberExpression", - "start": 2831, - "end": 2847, + "start": 2821, + "end": 2837, "loc": { "start": { "line": 128, @@ -8452,8 +8370,8 @@ }, "object": { "type": "Identifier", - "start": 2831, - "end": 2840, + "start": 2821, + "end": 2830, "loc": { "start": { "line": 128, @@ -8469,8 +8387,8 @@ }, "property": { "type": "Identifier", - "start": 2841, - "end": 2847, + "start": 2831, + "end": 2837, "loc": { "start": { "line": 128, @@ -8489,8 +8407,8 @@ }, "update": { "type": "UpdateExpression", - "start": 2849, - "end": 2852, + "start": 2839, + "end": 2842, "loc": { "start": { "line": 128, @@ -8505,8 +8423,8 @@ "prefix": false, "argument": { "type": "Identifier", - "start": 2849, - "end": 2850, + "start": 2839, + "end": 2840, "loc": { "start": { "line": 128, @@ -8523,8 +8441,8 @@ }, "body": { "type": "BlockStatement", - "start": 2854, - "end": 2905, + "start": 2844, + "end": 2895, "loc": { "start": { "line": 128, @@ -8538,8 +8456,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 2862, - "end": 2899, + "start": 2852, + "end": 2889, "loc": { "start": { "line": 129, @@ -8552,8 +8470,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 2862, - "end": 2898, + "start": 2852, + "end": 2888, "loc": { "start": { "line": 129, @@ -8567,8 +8485,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 2862, - "end": 2883, + "start": 2852, + "end": 2873, "loc": { "start": { "line": 129, @@ -8581,8 +8499,8 @@ }, "object": { "type": "Identifier", - "start": 2862, - "end": 2870, + "start": 2852, + "end": 2860, "loc": { "start": { "line": 129, @@ -8598,8 +8516,8 @@ }, "property": { "type": "MemberExpression", - "start": 2871, - "end": 2882, + "start": 2861, + "end": 2872, "loc": { "start": { "line": 129, @@ -8612,8 +8530,8 @@ }, "object": { "type": "Identifier", - "start": 2871, - "end": 2879, + "start": 2861, + "end": 2869, "loc": { "start": { "line": 129, @@ -8629,8 +8547,8 @@ }, "property": { "type": "Identifier", - "start": 2880, - "end": 2881, + "start": 2870, + "end": 2871, "loc": { "start": { "line": 129, @@ -8650,8 +8568,8 @@ }, "right": { "type": "MemberExpression", - "start": 2886, - "end": 2898, + "start": 2876, + "end": 2888, "loc": { "start": { "line": 129, @@ -8664,8 +8582,8 @@ }, "object": { "type": "Identifier", - "start": 2886, - "end": 2895, + "start": 2876, + "end": 2885, "loc": { "start": { "line": 129, @@ -8681,8 +8599,8 @@ }, "property": { "type": "Identifier", - "start": 2896, - "end": 2897, + "start": 2886, + "end": 2887, "loc": { "start": { "line": 129, @@ -8706,8 +8624,8 @@ }, { "type": "ReturnStatement", - "start": 2911, - "end": 2942, + "start": 2901, + "end": 2932, "loc": { "start": { "line": 132, @@ -8720,8 +8638,8 @@ }, "argument": { "type": "CallExpression", - "start": 2918, - "end": 2941, + "start": 2908, + "end": 2931, "loc": { "start": { "line": 132, @@ -8734,8 +8652,8 @@ }, "callee": { "type": "MemberExpression", - "start": 2918, - "end": 2931, + "start": 2908, + "end": 2921, "loc": { "start": { "line": 132, @@ -8748,8 +8666,8 @@ }, "object": { "type": "Identifier", - "start": 2918, - "end": 2922, + "start": 2908, + "end": 2912, "loc": { "start": { "line": 132, @@ -8765,8 +8683,8 @@ }, "property": { "type": "Identifier", - "start": 2923, - "end": 2931, + "start": 2913, + "end": 2921, "loc": { "start": { "line": 132, @@ -8785,8 +8703,8 @@ "arguments": [ { "type": "Identifier", - "start": 2932, - "end": 2940, + "start": 2922, + "end": 2930, "loc": { "start": { "line": 132, @@ -8817,8 +8735,8 @@ }, { "type": "ExpressionStatement", - "start": 2952, - "end": 4143, + "start": 2942, + "end": 4133, "loc": { "start": { "line": 136, @@ -8831,8 +8749,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 2952, - "end": 4142, + "start": 2942, + "end": 4132, "loc": { "start": { "line": 136, @@ -8846,8 +8764,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 2952, - "end": 2971, + "start": 2942, + "end": 2961, "loc": { "start": { "line": 136, @@ -8860,8 +8778,8 @@ }, "object": { "type": "Identifier", - "start": 2952, - "end": 2964, + "start": 2942, + "end": 2954, "loc": { "start": { "line": 136, @@ -8877,8 +8795,8 @@ }, "property": { "type": "StringLiteral", - "start": 2965, - "end": 2970, + "start": 2955, + "end": 2960, "loc": { "start": { "line": 136, @@ -8899,8 +8817,8 @@ }, "right": { "type": "AssignmentExpression", - "start": 2974, - "end": 4142, + "start": 2964, + "end": 4132, "loc": { "start": { "line": 136, @@ -8914,8 +8832,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 2974, - "end": 2991, + "start": 2964, + "end": 2981, "loc": { "start": { "line": 136, @@ -8928,8 +8846,8 @@ }, "object": { "type": "Identifier", - "start": 2974, - "end": 2986, + "start": 2964, + "end": 2976, "loc": { "start": { "line": 136, @@ -8945,8 +8863,8 @@ }, "property": { "type": "StringLiteral", - "start": 2987, - "end": 2990, + "start": 2977, + "end": 2980, "loc": { "start": { "line": 136, @@ -8967,8 +8885,8 @@ }, "right": { "type": "ArrowFunctionExpression", - "start": 2994, - "end": 4142, + "start": 2984, + "end": 4132, "loc": { "start": { "line": 136, @@ -8986,8 +8904,8 @@ "params": [ { "type": "Identifier", - "start": 2995, - "end": 2999, + "start": 2985, + "end": 2989, "loc": { "start": { "line": 136, @@ -9003,8 +8921,8 @@ }, { "type": "Identifier", - "start": 3001, - "end": 3004, + "start": 2991, + "end": 2994, "loc": { "start": { "line": 136, @@ -9021,8 +8939,8 @@ ], "body": { "type": "BlockStatement", - "start": 3009, - "end": 4142, + "start": 2999, + "end": 4132, "loc": { "start": { "line": 136, @@ -9036,8 +8954,8 @@ "body": [ { "type": "IfStatement", - "start": 3013, - "end": 3092, + "start": 3003, + "end": 3082, "loc": { "start": { "line": 137, @@ -9050,8 +8968,8 @@ }, "test": { "type": "BinaryExpression", - "start": 3017, - "end": 3040, + "start": 3007, + "end": 3030, "loc": { "start": { "line": 137, @@ -9064,8 +8982,8 @@ }, "left": { "type": "MemberExpression", - "start": 3017, - "end": 3029, + "start": 3007, + "end": 3019, "loc": { "start": { "line": 137, @@ -9078,8 +8996,8 @@ }, "object": { "type": "MemberExpression", - "start": 3017, - "end": 3024, + "start": 3007, + "end": 3014, "loc": { "start": { "line": 137, @@ -9092,8 +9010,8 @@ }, "object": { "type": "Identifier", - "start": 3017, - "end": 3021, + "start": 3007, + "end": 3011, "loc": { "start": { "line": 137, @@ -9109,8 +9027,8 @@ }, "property": { "type": "NumericLiteral", - "start": 3022, - "end": 3023, + "start": 3012, + "end": 3013, "loc": { "start": { "line": 137, @@ -9131,8 +9049,8 @@ }, "property": { "type": "Identifier", - "start": 3025, - "end": 3029, + "start": 3015, + "end": 3019, "loc": { "start": { "line": 137, @@ -9151,8 +9069,8 @@ "operator": "!==", "right": { "type": "StringLiteral", - "start": 3034, - "end": 3040, + "start": 3024, + "end": 3030, "loc": { "start": { "line": 137, @@ -9172,8 +9090,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 3042, - "end": 3092, + "start": 3032, + "end": 3082, "loc": { "start": { "line": 137, @@ -9187,8 +9105,8 @@ "body": [ { "type": "ThrowStatement", - "start": 3048, - "end": 3088, + "start": 3038, + "end": 3078, "loc": { "start": { "line": 138, @@ -9201,8 +9119,8 @@ }, "argument": { "type": "NewExpression", - "start": 3054, - "end": 3087, + "start": 3044, + "end": 3077, "loc": { "start": { "line": 138, @@ -9215,8 +9133,8 @@ }, "callee": { "type": "Identifier", - "start": 3058, - "end": 3069, + "start": 3048, + "end": 3059, "loc": { "start": { "line": 138, @@ -9233,8 +9151,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 3070, - "end": 3086, + "start": 3060, + "end": 3076, "loc": { "start": { "line": 138, @@ -9261,8 +9179,8 @@ }, { "type": "VariableDeclaration", - "start": 3096, - "end": 3123, + "start": 3086, + "end": 3113, "loc": { "start": { "line": 141, @@ -9276,8 +9194,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 3100, - "end": 3122, + "start": 3090, + "end": 3112, "loc": { "start": { "line": 141, @@ -9290,8 +9208,8 @@ }, "id": { "type": "Identifier", - "start": 3100, - "end": 3107, + "start": 3090, + "end": 3097, "loc": { "start": { "line": 141, @@ -9307,8 +9225,8 @@ }, "init": { "type": "MemberExpression", - "start": 3110, - "end": 3122, + "start": 3100, + "end": 3112, "loc": { "start": { "line": 141, @@ -9321,8 +9239,8 @@ }, "object": { "type": "MemberExpression", - "start": 3110, - "end": 3117, + "start": 3100, + "end": 3107, "loc": { "start": { "line": 141, @@ -9335,8 +9253,8 @@ }, "object": { "type": "Identifier", - "start": 3110, - "end": 3114, + "start": 3100, + "end": 3104, "loc": { "start": { "line": 141, @@ -9352,8 +9270,8 @@ }, "property": { "type": "NumericLiteral", - "start": 3115, - "end": 3116, + "start": 3105, + "end": 3106, "loc": { "start": { "line": 141, @@ -9374,8 +9292,8 @@ }, "property": { "type": "Identifier", - "start": 3118, - "end": 3122, + "start": 3108, + "end": 3112, "loc": { "start": { "line": 141, @@ -9397,8 +9315,8 @@ }, { "type": "VariableDeclaration", - "start": 3127, - "end": 3189, + "start": 3117, + "end": 3179, "loc": { "start": { "line": 143, @@ -9412,8 +9330,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 3131, - "end": 3188, + "start": 3121, + "end": 3178, "loc": { "start": { "line": 143, @@ -9426,8 +9344,8 @@ }, "id": { "type": "Identifier", - "start": 3131, - "end": 3138, + "start": 3121, + "end": 3128, "loc": { "start": { "line": 143, @@ -9443,8 +9361,8 @@ }, "init": { "type": "CallExpression", - "start": 3141, - "end": 3188, + "start": 3131, + "end": 3178, "loc": { "start": { "line": 143, @@ -9457,8 +9375,8 @@ }, "callee": { "type": "MemberExpression", - "start": 3141, - "end": 3162, + "start": 3131, + "end": 3152, "loc": { "start": { "line": 143, @@ -9471,8 +9389,8 @@ }, "object": { "type": "CallExpression", - "start": 3141, - "end": 3158, + "start": 3131, + "end": 3148, "loc": { "start": { "line": 143, @@ -9485,8 +9403,8 @@ }, "callee": { "type": "MemberExpression", - "start": 3141, - "end": 3151, + "start": 3131, + "end": 3141, "loc": { "start": { "line": 143, @@ -9499,8 +9417,8 @@ }, "object": { "type": "Identifier", - "start": 3141, - "end": 3145, + "start": 3131, + "end": 3135, "loc": { "start": { "line": 143, @@ -9516,8 +9434,8 @@ }, "property": { "type": "Identifier", - "start": 3146, - "end": 3151, + "start": 3136, + "end": 3141, "loc": { "start": { "line": 143, @@ -9536,8 +9454,8 @@ "arguments": [ { "type": "NumericLiteral", - "start": 3152, - "end": 3153, + "start": 3142, + "end": 3143, "loc": { "start": { "line": 143, @@ -9556,8 +9474,8 @@ }, { "type": "UnaryExpression", - "start": 3155, - "end": 3157, + "start": 3145, + "end": 3147, "loc": { "start": { "line": 143, @@ -9572,8 +9490,8 @@ "prefix": true, "argument": { "type": "NumericLiteral", - "start": 3156, - "end": 3157, + "start": 3146, + "end": 3147, "loc": { "start": { "line": 143, @@ -9598,8 +9516,8 @@ }, "property": { "type": "Identifier", - "start": 3159, - "end": 3162, + "start": 3149, + "end": 3152, "loc": { "start": { "line": 143, @@ -9618,8 +9536,8 @@ "arguments": [ { "type": "ArrowFunctionExpression", - "start": 3163, - "end": 3187, + "start": 3153, + "end": 3177, "loc": { "start": { "line": 143, @@ -9637,8 +9555,8 @@ "params": [ { "type": "Identifier", - "start": 3163, - "end": 3166, + "start": 3153, + "end": 3156, "loc": { "start": { "line": 143, @@ -9655,8 +9573,8 @@ ], "body": { "type": "CallExpression", - "start": 3170, - "end": 3187, + "start": 3160, + "end": 3177, "loc": { "start": { "line": 143, @@ -9669,8 +9587,8 @@ }, "callee": { "type": "MemberExpression", - "start": 3170, - "end": 3182, + "start": 3160, + "end": 3172, "loc": { "start": { "line": 143, @@ -9683,8 +9601,8 @@ }, "object": { "type": "Identifier", - "start": 3170, - "end": 3173, + "start": 3160, + "end": 3163, "loc": { "start": { "line": 143, @@ -9700,8 +9618,8 @@ }, "property": { "type": "Identifier", - "start": 3174, - "end": 3182, + "start": 3164, + "end": 3172, "loc": { "start": { "line": 143, @@ -9720,8 +9638,8 @@ "arguments": [ { "type": "Identifier", - "start": 3183, - "end": 3186, + "start": 3173, + "end": 3176, "loc": { "start": { "line": 143, @@ -9746,8 +9664,8 @@ }, { "type": "VariableDeclaration", - "start": 3193, - "end": 3241, + "start": 3183, + "end": 3231, "loc": { "start": { "line": 145, @@ -9761,8 +9679,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 3197, - "end": 3240, + "start": 3187, + "end": 3230, "loc": { "start": { "line": 145, @@ -9775,8 +9693,8 @@ }, "id": { "type": "Identifier", - "start": 3197, - "end": 3202, + "start": 3187, + "end": 3192, "loc": { "start": { "line": 145, @@ -9792,8 +9710,8 @@ }, "init": { "type": "CallExpression", - "start": 3205, - "end": 3240, + "start": 3195, + "end": 3230, "loc": { "start": { "line": 145, @@ -9806,8 +9724,8 @@ }, "callee": { "type": "MemberExpression", - "start": 3205, - "end": 3235, + "start": 3195, + "end": 3225, "loc": { "start": { "line": 145, @@ -9820,8 +9738,8 @@ }, "object": { "type": "MemberExpression", - "start": 3205, - "end": 3226, + "start": 3195, + "end": 3216, "loc": { "start": { "line": 145, @@ -9834,8 +9752,8 @@ }, "object": { "type": "Identifier", - "start": 3205, - "end": 3209, + "start": 3195, + "end": 3199, "loc": { "start": { "line": 145, @@ -9851,8 +9769,8 @@ }, "property": { "type": "BinaryExpression", - "start": 3210, - "end": 3225, + "start": 3200, + "end": 3215, "loc": { "start": { "line": 145, @@ -9865,8 +9783,8 @@ }, "left": { "type": "MemberExpression", - "start": 3210, - "end": 3221, + "start": 3200, + "end": 3211, "loc": { "start": { "line": 145, @@ -9879,8 +9797,8 @@ }, "object": { "type": "Identifier", - "start": 3210, - "end": 3214, + "start": 3200, + "end": 3204, "loc": { "start": { "line": 145, @@ -9896,8 +9814,8 @@ }, "property": { "type": "Identifier", - "start": 3215, - "end": 3221, + "start": 3205, + "end": 3211, "loc": { "start": { "line": 145, @@ -9916,8 +9834,8 @@ "operator": "-", "right": { "type": "NumericLiteral", - "start": 3224, - "end": 3225, + "start": 3214, + "end": 3215, "loc": { "start": { "line": 145, @@ -9939,8 +9857,8 @@ }, "property": { "type": "Identifier", - "start": 3227, - "end": 3235, + "start": 3217, + "end": 3225, "loc": { "start": { "line": 145, @@ -9959,8 +9877,8 @@ "arguments": [ { "type": "Identifier", - "start": 3236, - "end": 3239, + "start": 3226, + "end": 3229, "loc": { "start": { "line": 145, @@ -9982,8 +9900,8 @@ }, { "type": "ForStatement", - "start": 3245, - "end": 4060, + "start": 3235, + "end": 4050, "loc": { "start": { "line": 147, @@ -9996,8 +9914,8 @@ }, "init": { "type": "VariableDeclaration", - "start": 3250, - "end": 3265, + "start": 3240, + "end": 3255, "loc": { "start": { "line": 147, @@ -10011,8 +9929,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 3254, - "end": 3265, + "start": 3244, + "end": 3255, "loc": { "start": { "line": 147, @@ -10025,8 +9943,8 @@ }, "id": { "type": "Identifier", - "start": 3254, - "end": 3259, + "start": 3244, + "end": 3249, "loc": { "start": { "line": 147, @@ -10042,8 +9960,8 @@ }, "init": { "type": "Identifier", - "start": 3262, - "end": 3265, + "start": 3252, + "end": 3255, "loc": { "start": { "line": 147, @@ -10063,8 +9981,8 @@ }, "test": { "type": "Identifier", - "start": 3267, - "end": 3272, + "start": 3257, + "end": 3262, "loc": { "start": { "line": 147, @@ -10080,8 +9998,8 @@ }, "update": { "type": "AssignmentExpression", - "start": 3274, - "end": 3310, + "start": 3264, + "end": 3300, "loc": { "start": { "line": 147, @@ -10095,8 +10013,8 @@ "operator": "=", "left": { "type": "Identifier", - "start": 3274, - "end": 3279, + "start": 3264, + "end": 3269, "loc": { "start": { "line": 147, @@ -10112,8 +10030,8 @@ }, "right": { "type": "CallExpression", - "start": 3282, - "end": 3310, + "start": 3272, + "end": 3300, "loc": { "start": { "line": 147, @@ -10126,8 +10044,8 @@ }, "callee": { "type": "MemberExpression", - "start": 3282, - "end": 3303, + "start": 3272, + "end": 3293, "loc": { "start": { "line": 147, @@ -10140,8 +10058,8 @@ }, "object": { "type": "Identifier", - "start": 3282, - "end": 3288, + "start": 3272, + "end": 3278, "loc": { "start": { "line": 147, @@ -10157,8 +10075,8 @@ }, "property": { "type": "Identifier", - "start": 3289, - "end": 3303, + "start": 3279, + "end": 3293, "loc": { "start": { "line": 147, @@ -10177,8 +10095,8 @@ "arguments": [ { "type": "Identifier", - "start": 3304, - "end": 3309, + "start": 3294, + "end": 3299, "loc": { "start": { "line": 147, @@ -10197,8 +10115,8 @@ }, "body": { "type": "BlockStatement", - "start": 3312, - "end": 4060, + "start": 3302, + "end": 4050, "loc": { "start": { "line": 147, @@ -10212,8 +10130,8 @@ "body": [ { "type": "IfStatement", - "start": 3318, - "end": 3445, + "start": 3308, + "end": 3435, "loc": { "start": { "line": 148, @@ -10226,8 +10144,8 @@ }, "test": { "type": "BinaryExpression", - "start": 3322, - "end": 3351, + "start": 3312, + "end": 3341, "loc": { "start": { "line": 148, @@ -10240,8 +10158,8 @@ }, "left": { "type": "Identifier", - "start": 3322, - "end": 3329, + "start": 3312, + "end": 3319, "loc": { "start": { "line": 148, @@ -10258,8 +10176,8 @@ "operator": "in", "right": { "type": "MemberExpression", - "start": 3333, - "end": 3351, + "start": 3323, + "end": 3341, "loc": { "start": { "line": 148, @@ -10272,8 +10190,8 @@ }, "object": { "type": "Identifier", - "start": 3333, - "end": 3338, + "start": 3323, + "end": 3328, "loc": { "start": { "line": 148, @@ -10289,8 +10207,8 @@ }, "property": { "type": "StringLiteral", - "start": 3339, - "end": 3350, + "start": 3329, + "end": 3340, "loc": { "start": { "line": 148, @@ -10312,8 +10230,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 3353, - "end": 3445, + "start": 3343, + "end": 3435, "loc": { "start": { "line": 148, @@ -10327,8 +10245,8 @@ "body": [ { "type": "ThrowStatement", - "start": 3361, - "end": 3439, + "start": 3351, + "end": 3429, "loc": { "start": { "line": 149, @@ -10341,8 +10259,8 @@ }, "argument": { "type": "NewExpression", - "start": 3367, - "end": 3438, + "start": 3357, + "end": 3428, "loc": { "start": { "line": 149, @@ -10355,8 +10273,8 @@ }, "callee": { "type": "Identifier", - "start": 3371, - "end": 3385, + "start": 3361, + "end": 3375, "loc": { "start": { "line": 149, @@ -10373,8 +10291,8 @@ "arguments": [ { "type": "TemplateLiteral", - "start": 3386, - "end": 3437, + "start": 3376, + "end": 3427, "loc": { "start": { "line": 149, @@ -10388,8 +10306,8 @@ "expressions": [ { "type": "MemberExpression", - "start": 3423, - "end": 3435, + "start": 3413, + "end": 3425, "loc": { "start": { "line": 149, @@ -10402,8 +10320,8 @@ }, "object": { "type": "MemberExpression", - "start": 3423, - "end": 3430, + "start": 3413, + "end": 3420, "loc": { "start": { "line": 149, @@ -10416,8 +10334,8 @@ }, "object": { "type": "Identifier", - "start": 3423, - "end": 3427, + "start": 3413, + "end": 3417, "loc": { "start": { "line": 149, @@ -10433,8 +10351,8 @@ }, "property": { "type": "NumericLiteral", - "start": 3428, - "end": 3429, + "start": 3418, + "end": 3419, "loc": { "start": { "line": 149, @@ -10455,8 +10373,8 @@ }, "property": { "type": "Identifier", - "start": 3431, - "end": 3435, + "start": 3421, + "end": 3425, "loc": { "start": { "line": 149, @@ -10476,8 +10394,8 @@ "quasis": [ { "type": "TemplateElement", - "start": 3387, - "end": 3421, + "start": 3377, + "end": 3411, "loc": { "start": { "line": 149, @@ -10496,8 +10414,8 @@ }, { "type": "TemplateElement", - "start": 3436, - "end": 3436, + "start": 3426, + "end": 3426, "loc": { "start": { "line": 149, @@ -10528,8 +10446,8 @@ { "type": "CommentLine", "value": " TODO: Reduce code duplication", - "start": 3451, - "end": 3483, + "start": 3441, + "end": 3473, "loc": { "start": { "line": 152, @@ -10545,8 +10463,8 @@ }, { "type": "IfStatement", - "start": 3488, - "end": 3824, + "start": 3478, + "end": 3814, "loc": { "start": { "line": 153, @@ -10559,8 +10477,8 @@ }, "test": { "type": "BinaryExpression", - "start": 3492, - "end": 3507, + "start": 3482, + "end": 3497, "loc": { "start": { "line": 153, @@ -10573,8 +10491,8 @@ }, "left": { "type": "StringLiteral", - "start": 3492, - "end": 3498, + "start": 3482, + "end": 3488, "loc": { "start": { "line": 153, @@ -10595,8 +10513,8 @@ "operator": "in", "right": { "type": "Identifier", - "start": 3502, - "end": 3507, + "start": 3492, + "end": 3497, "loc": { "start": { "line": 153, @@ -10614,8 +10532,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 3509, - "end": 3824, + "start": 3499, + "end": 3814, "loc": { "start": { "line": 153, @@ -10629,8 +10547,8 @@ "body": [ { "type": "IfStatement", - "start": 3554, - "end": 3818, + "start": 3544, + "end": 3808, "loc": { "start": { "line": 156, @@ -10643,8 +10561,8 @@ }, "test": { "type": "CallExpression", - "start": 3558, - "end": 3618, + "start": 3548, + "end": 3608, "loc": { "start": { "line": 156, @@ -10657,8 +10575,8 @@ }, "callee": { "type": "MemberExpression", - "start": 3558, - "end": 3594, + "start": 3548, + "end": 3584, "loc": { "start": { "line": 156, @@ -10671,8 +10589,8 @@ }, "object": { "type": "MemberExpression", - "start": 3558, - "end": 3589, + "start": 3548, + "end": 3579, "loc": { "start": { "line": 156, @@ -10685,8 +10603,8 @@ }, "object": { "type": "MemberExpression", - "start": 3558, - "end": 3574, + "start": 3548, + "end": 3564, "loc": { "start": { "line": 156, @@ -10699,8 +10617,8 @@ }, "object": { "type": "Identifier", - "start": 3558, - "end": 3564, + "start": 3548, + "end": 3554, "loc": { "start": { "line": 156, @@ -10717,8 +10635,8 @@ }, "property": { "type": "Identifier", - "start": 3565, - "end": 3574, + "start": 3555, + "end": 3564, "loc": { "start": { "line": 156, @@ -10737,8 +10655,8 @@ }, "property": { "type": "Identifier", - "start": 3575, - "end": 3589, + "start": 3565, + "end": 3579, "loc": { "start": { "line": 156, @@ -10757,8 +10675,8 @@ }, "property": { "type": "Identifier", - "start": 3590, - "end": 3594, + "start": 3580, + "end": 3584, "loc": { "start": { "line": 156, @@ -10778,8 +10696,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 3595, - "end": 3608, + "start": 3585, + "end": 3598, "loc": { "start": { "line": 156, @@ -10792,8 +10710,8 @@ }, "object": { "type": "Identifier", - "start": 3595, - "end": 3600, + "start": 3585, + "end": 3590, "loc": { "start": { "line": 156, @@ -10809,8 +10727,8 @@ }, "property": { "type": "StringLiteral", - "start": 3601, - "end": 3607, + "start": 3591, + "end": 3597, "loc": { "start": { "line": 156, @@ -10831,8 +10749,8 @@ }, { "type": "Identifier", - "start": 3610, - "end": 3617, + "start": 3600, + "end": 3607, "loc": { "start": { "line": 156, @@ -10851,8 +10769,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 3620, - "end": 3818, + "start": 3610, + "end": 3808, "loc": { "start": { "line": 156, @@ -10866,8 +10784,8 @@ "body": [ { "type": "IfStatement", - "start": 3630, - "end": 3787, + "start": 3620, + "end": 3777, "loc": { "start": { "line": 157, @@ -10880,8 +10798,8 @@ }, "test": { "type": "BinaryExpression", - "start": 3634, - "end": 3654, + "start": 3624, + "end": 3644, "loc": { "start": { "line": 157, @@ -10894,8 +10812,8 @@ }, "left": { "type": "MemberExpression", - "start": 3634, - "end": 3648, + "start": 3624, + "end": 3638, "loc": { "start": { "line": 157, @@ -10908,8 +10826,8 @@ }, "object": { "type": "Identifier", - "start": 3634, - "end": 3641, + "start": 3624, + "end": 3631, "loc": { "start": { "line": 157, @@ -10925,8 +10843,8 @@ }, "property": { "type": "Identifier", - "start": 3642, - "end": 3648, + "start": 3632, + "end": 3638, "loc": { "start": { "line": 157, @@ -10945,8 +10863,8 @@ "operator": "===", "right": { "type": "NumericLiteral", - "start": 3653, - "end": 3654, + "start": 3643, + "end": 3644, "loc": { "start": { "line": 157, @@ -10966,8 +10884,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 3656, - "end": 3709, + "start": 3646, + "end": 3699, "loc": { "start": { "line": 157, @@ -10981,8 +10899,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 3668, - "end": 3699, + "start": 3658, + "end": 3689, "loc": { "start": { "line": 158, @@ -10995,8 +10913,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 3668, - "end": 3698, + "start": 3658, + "end": 3688, "loc": { "start": { "line": 158, @@ -11010,8 +10928,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 3668, - "end": 3690, + "start": 3658, + "end": 3680, "loc": { "start": { "line": 158, @@ -11024,8 +10942,8 @@ }, "object": { "type": "MemberExpression", - "start": 3668, - "end": 3681, + "start": 3658, + "end": 3671, "loc": { "start": { "line": 158, @@ -11038,8 +10956,8 @@ }, "object": { "type": "Identifier", - "start": 3668, - "end": 3673, + "start": 3658, + "end": 3663, "loc": { "start": { "line": 158, @@ -11055,8 +10973,8 @@ }, "property": { "type": "StringLiteral", - "start": 3674, - "end": 3680, + "start": 3664, + "end": 3670, "loc": { "start": { "line": 158, @@ -11077,8 +10995,8 @@ }, "property": { "type": "Identifier", - "start": 3682, - "end": 3689, + "start": 3672, + "end": 3679, "loc": { "start": { "line": 158, @@ -11096,8 +11014,8 @@ }, "right": { "type": "Identifier", - "start": 3693, - "end": 3698, + "start": 3683, + "end": 3688, "loc": { "start": { "line": 158, @@ -11118,8 +11036,8 @@ }, "alternate": { "type": "BlockStatement", - "start": 3715, - "end": 3787, + "start": 3705, + "end": 3777, "loc": { "start": { "line": 159, @@ -11133,8 +11051,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 3727, - "end": 3777, + "start": 3717, + "end": 3767, "loc": { "start": { "line": 160, @@ -11147,8 +11065,8 @@ }, "expression": { "type": "CallExpression", - "start": 3727, - "end": 3776, + "start": 3717, + "end": 3766, "loc": { "start": { "line": 160, @@ -11161,8 +11079,8 @@ }, "callee": { "type": "MemberExpression", - "start": 3727, - "end": 3757, + "start": 3717, + "end": 3747, "loc": { "start": { "line": 160, @@ -11175,8 +11093,8 @@ }, "object": { "type": "MemberExpression", - "start": 3727, - "end": 3749, + "start": 3717, + "end": 3739, "loc": { "start": { "line": 160, @@ -11189,8 +11107,8 @@ }, "object": { "type": "MemberExpression", - "start": 3727, - "end": 3740, + "start": 3717, + "end": 3730, "loc": { "start": { "line": 160, @@ -11203,8 +11121,8 @@ }, "object": { "type": "Identifier", - "start": 3727, - "end": 3732, + "start": 3717, + "end": 3722, "loc": { "start": { "line": 160, @@ -11220,8 +11138,8 @@ }, "property": { "type": "StringLiteral", - "start": 3733, - "end": 3739, + "start": 3723, + "end": 3729, "loc": { "start": { "line": 160, @@ -11242,8 +11160,8 @@ }, "property": { "type": "Identifier", - "start": 3741, - "end": 3748, + "start": 3731, + "end": 3738, "loc": { "start": { "line": 160, @@ -11261,8 +11179,8 @@ }, "property": { "type": "Identifier", - "start": 3750, - "end": 3757, + "start": 3740, + "end": 3747, "loc": { "start": { "line": 160, @@ -11281,8 +11199,8 @@ "arguments": [ { "type": "Identifier", - "start": 3758, - "end": 3763, + "start": 3748, + "end": 3753, "loc": { "start": { "line": 160, @@ -11298,8 +11216,8 @@ }, { "type": "SpreadElement", - "start": 3765, - "end": 3775, + "start": 3755, + "end": 3765, "loc": { "start": { "line": 160, @@ -11312,8 +11230,8 @@ }, "argument": { "type": "Identifier", - "start": 3768, - "end": 3775, + "start": 3758, + "end": 3765, "loc": { "start": { "line": 160, @@ -11337,8 +11255,8 @@ }, { "type": "ReturnStatement", - "start": 3797, - "end": 3810, + "start": 3787, + "end": 3800, "loc": { "start": { "line": 163, @@ -11351,8 +11269,8 @@ }, "argument": { "type": "Identifier", - "start": 3804, - "end": 3809, + "start": 3794, + "end": 3799, "loc": { "start": { "line": 163, @@ -11375,8 +11293,8 @@ { "type": "CommentLine", "value": " TODO: use hasOwnProperty ?", - "start": 3517, - "end": 3546, + "start": 3507, + "end": 3536, "loc": { "start": { "line": 154, @@ -11398,8 +11316,8 @@ { "type": "CommentLine", "value": " TODO: Reduce code duplication", - "start": 3451, - "end": 3483, + "start": 3441, + "end": 3473, "loc": { "start": { "line": 152, @@ -11415,8 +11333,8 @@ }, { "type": "IfStatement", - "start": 3830, - "end": 4056, + "start": 3820, + "end": 4046, "loc": { "start": { "line": 167, @@ -11429,8 +11347,8 @@ }, "test": { "type": "CallExpression", - "start": 3834, - "end": 3886, + "start": 3824, + "end": 3876, "loc": { "start": { "line": 167, @@ -11443,8 +11361,8 @@ }, "callee": { "type": "MemberExpression", - "start": 3834, - "end": 3870, + "start": 3824, + "end": 3860, "loc": { "start": { "line": 167, @@ -11457,8 +11375,8 @@ }, "object": { "type": "MemberExpression", - "start": 3834, - "end": 3865, + "start": 3824, + "end": 3855, "loc": { "start": { "line": 167, @@ -11471,8 +11389,8 @@ }, "object": { "type": "MemberExpression", - "start": 3834, - "end": 3850, + "start": 3824, + "end": 3840, "loc": { "start": { "line": 167, @@ -11485,8 +11403,8 @@ }, "object": { "type": "Identifier", - "start": 3834, - "end": 3840, + "start": 3824, + "end": 3830, "loc": { "start": { "line": 167, @@ -11502,8 +11420,8 @@ }, "property": { "type": "Identifier", - "start": 3841, - "end": 3850, + "start": 3831, + "end": 3840, "loc": { "start": { "line": 167, @@ -11521,8 +11439,8 @@ }, "property": { "type": "Identifier", - "start": 3851, - "end": 3865, + "start": 3841, + "end": 3855, "loc": { "start": { "line": 167, @@ -11540,8 +11458,8 @@ }, "property": { "type": "Identifier", - "start": 3866, - "end": 3870, + "start": 3856, + "end": 3860, "loc": { "start": { "line": 167, @@ -11560,8 +11478,8 @@ "arguments": [ { "type": "Identifier", - "start": 3871, - "end": 3876, + "start": 3861, + "end": 3866, "loc": { "start": { "line": 167, @@ -11577,8 +11495,8 @@ }, { "type": "Identifier", - "start": 3878, - "end": 3885, + "start": 3868, + "end": 3875, "loc": { "start": { "line": 167, @@ -11596,8 +11514,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 3888, - "end": 4056, + "start": 3878, + "end": 4046, "loc": { "start": { "line": 167, @@ -11611,8 +11529,8 @@ "body": [ { "type": "IfStatement", - "start": 3896, - "end": 4029, + "start": 3886, + "end": 4019, "loc": { "start": { "line": 168, @@ -11625,8 +11543,8 @@ }, "test": { "type": "BinaryExpression", - "start": 3900, - "end": 3920, + "start": 3890, + "end": 3910, "loc": { "start": { "line": 168, @@ -11639,8 +11557,8 @@ }, "left": { "type": "MemberExpression", - "start": 3900, - "end": 3914, + "start": 3890, + "end": 3904, "loc": { "start": { "line": 168, @@ -11653,8 +11571,8 @@ }, "object": { "type": "Identifier", - "start": 3900, - "end": 3907, + "start": 3890, + "end": 3897, "loc": { "start": { "line": 168, @@ -11670,8 +11588,8 @@ }, "property": { "type": "Identifier", - "start": 3908, - "end": 3914, + "start": 3898, + "end": 3904, "loc": { "start": { "line": 168, @@ -11690,8 +11608,8 @@ "operator": "===", "right": { "type": "NumericLiteral", - "start": 3919, - "end": 3920, + "start": 3909, + "end": 3910, "loc": { "start": { "line": 168, @@ -11711,8 +11629,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 3922, - "end": 3963, + "start": 3912, + "end": 3953, "loc": { "start": { "line": 168, @@ -11726,8 +11644,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 3932, - "end": 3955, + "start": 3922, + "end": 3945, "loc": { "start": { "line": 169, @@ -11740,8 +11658,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 3932, - "end": 3954, + "start": 3922, + "end": 3944, "loc": { "start": { "line": 169, @@ -11755,8 +11673,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 3932, - "end": 3946, + "start": 3922, + "end": 3936, "loc": { "start": { "line": 169, @@ -11769,8 +11687,8 @@ }, "object": { "type": "Identifier", - "start": 3932, - "end": 3937, + "start": 3922, + "end": 3927, "loc": { "start": { "line": 169, @@ -11786,8 +11704,8 @@ }, "property": { "type": "Identifier", - "start": 3938, - "end": 3945, + "start": 3928, + "end": 3935, "loc": { "start": { "line": 169, @@ -11805,8 +11723,8 @@ }, "right": { "type": "Identifier", - "start": 3949, - "end": 3954, + "start": 3939, + "end": 3944, "loc": { "start": { "line": 169, @@ -11827,8 +11745,8 @@ }, "alternate": { "type": "BlockStatement", - "start": 3969, - "end": 4029, + "start": 3959, + "end": 4019, "loc": { "start": { "line": 170, @@ -11842,8 +11760,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 3979, - "end": 4021, + "start": 3969, + "end": 4011, "loc": { "start": { "line": 171, @@ -11856,8 +11774,8 @@ }, "expression": { "type": "CallExpression", - "start": 3979, - "end": 4020, + "start": 3969, + "end": 4010, "loc": { "start": { "line": 171, @@ -11870,8 +11788,8 @@ }, "callee": { "type": "MemberExpression", - "start": 3979, - "end": 4001, + "start": 3969, + "end": 3991, "loc": { "start": { "line": 171, @@ -11884,8 +11802,8 @@ }, "object": { "type": "MemberExpression", - "start": 3979, - "end": 3993, + "start": 3969, + "end": 3983, "loc": { "start": { "line": 171, @@ -11898,8 +11816,8 @@ }, "object": { "type": "Identifier", - "start": 3979, - "end": 3984, + "start": 3969, + "end": 3974, "loc": { "start": { "line": 171, @@ -11915,8 +11833,8 @@ }, "property": { "type": "Identifier", - "start": 3985, - "end": 3992, + "start": 3975, + "end": 3982, "loc": { "start": { "line": 171, @@ -11934,8 +11852,8 @@ }, "property": { "type": "Identifier", - "start": 3994, - "end": 4001, + "start": 3984, + "end": 3991, "loc": { "start": { "line": 171, @@ -11954,8 +11872,8 @@ "arguments": [ { "type": "Identifier", - "start": 4002, - "end": 4007, + "start": 3992, + "end": 3997, "loc": { "start": { "line": 171, @@ -11971,8 +11889,8 @@ }, { "type": "SpreadElement", - "start": 4009, - "end": 4019, + "start": 3999, + "end": 4009, "loc": { "start": { "line": 171, @@ -11985,8 +11903,8 @@ }, "argument": { "type": "Identifier", - "start": 4012, - "end": 4019, + "start": 4002, + "end": 4009, "loc": { "start": { "line": 171, @@ -12010,8 +11928,8 @@ }, { "type": "ReturnStatement", - "start": 4037, - "end": 4050, + "start": 4027, + "end": 4040, "loc": { "start": { "line": 174, @@ -12024,8 +11942,8 @@ }, "argument": { "type": "Identifier", - "start": 4044, - "end": 4049, + "start": 4034, + "end": 4039, "loc": { "start": { "line": 174, @@ -12051,8 +11969,8 @@ }, { "type": "ThrowStatement", - "start": 4064, - "end": 4140, + "start": 4054, + "end": 4130, "loc": { "start": { "line": 178, @@ -12065,8 +11983,8 @@ }, "argument": { "type": "NewExpression", - "start": 4070, - "end": 4139, + "start": 4060, + "end": 4129, "loc": { "start": { "line": 178, @@ -12079,8 +11997,8 @@ }, "callee": { "type": "Identifier", - "start": 4074, - "end": 4088, + "start": 4064, + "end": 4078, "loc": { "start": { "line": 178, @@ -12097,8 +12015,8 @@ "arguments": [ { "type": "TemplateLiteral", - "start": 4089, - "end": 4138, + "start": 4079, + "end": 4128, "loc": { "start": { "line": 178, @@ -12112,8 +12030,8 @@ "expressions": [ { "type": "Identifier", - "start": 4129, - "end": 4136, + "start": 4119, + "end": 4126, "loc": { "start": { "line": 178, @@ -12131,8 +12049,8 @@ "quasis": [ { "type": "TemplateElement", - "start": 4090, - "end": 4127, + "start": 4080, + "end": 4117, "loc": { "start": { "line": 178, @@ -12151,8 +12069,8 @@ }, { "type": "TemplateElement", - "start": 4137, - "end": 4137, + "start": 4127, + "end": 4127, "loc": { "start": { "line": 178, @@ -12183,8 +12101,8 @@ }, { "type": "ExpressionStatement", - "start": 4145, - "end": 4702, + "start": 4135, + "end": 4692, "loc": { "start": { "line": 181, @@ -12197,8 +12115,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 4145, - "end": 4701, + "start": 4135, + "end": 4691, "loc": { "start": { "line": 181, @@ -12212,8 +12130,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 4145, - "end": 4167, + "start": 4135, + "end": 4157, "loc": { "start": { "line": 181, @@ -12226,8 +12144,8 @@ }, "object": { "type": "Identifier", - "start": 4145, - "end": 4157, + "start": 4135, + "end": 4147, "loc": { "start": { "line": 181, @@ -12243,8 +12161,8 @@ }, "property": { "type": "StringLiteral", - "start": 4158, - "end": 4166, + "start": 4148, + "end": 4156, "loc": { "start": { "line": 181, @@ -12265,8 +12183,8 @@ }, "right": { "type": "ArrowFunctionExpression", - "start": 4170, - "end": 4701, + "start": 4160, + "end": 4691, "loc": { "start": { "line": 181, @@ -12284,8 +12202,8 @@ "params": [ { "type": "Identifier", - "start": 4171, - "end": 4175, + "start": 4161, + "end": 4165, "loc": { "start": { "line": 181, @@ -12301,8 +12219,8 @@ }, { "type": "Identifier", - "start": 4177, - "end": 4180, + "start": 4167, + "end": 4170, "loc": { "start": { "line": 181, @@ -12319,8 +12237,8 @@ ], "body": { "type": "BlockStatement", - "start": 4185, - "end": 4701, + "start": 4175, + "end": 4691, "loc": { "start": { "line": 181, @@ -12334,8 +12252,8 @@ "body": [ { "type": "VariableDeclaration", - "start": 4230, - "end": 4248, + "start": 4220, + "end": 4238, "loc": { "start": { "line": 183, @@ -12349,8 +12267,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 4236, - "end": 4247, + "start": 4226, + "end": 4237, "loc": { "start": { "line": 183, @@ -12363,8 +12281,8 @@ }, "id": { "type": "Identifier", - "start": 4236, - "end": 4242, + "start": 4226, + "end": 4232, "loc": { "start": { "line": 183, @@ -12381,8 +12299,8 @@ }, "init": { "type": "ObjectExpression", - "start": 4245, - "end": 4247, + "start": 4235, + "end": 4237, "loc": { "start": { "line": 183, @@ -12403,8 +12321,8 @@ { "type": "CommentLine", "value": " Create a new object and a new scope", - "start": 4189, - "end": 4227, + "start": 4179, + "end": 4217, "loc": { "start": { "line": 182, @@ -12420,8 +12338,8 @@ }, { "type": "VariableDeclaration", - "start": 4251, - "end": 4288, + "start": 4241, + "end": 4278, "loc": { "start": { "line": 184, @@ -12435,8 +12353,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 4257, - "end": 4287, + "start": 4247, + "end": 4277, "loc": { "start": { "line": 184, @@ -12449,8 +12367,8 @@ }, "id": { "type": "Identifier", - "start": 4257, - "end": 4266, + "start": 4247, + "end": 4256, "loc": { "start": { "line": 184, @@ -12466,8 +12384,8 @@ }, "init": { "type": "CallExpression", - "start": 4269, - "end": 4287, + "start": 4259, + "end": 4277, "loc": { "start": { "line": 184, @@ -12480,8 +12398,8 @@ }, "callee": { "type": "MemberExpression", - "start": 4269, - "end": 4282, + "start": 4259, + "end": 4272, "loc": { "start": { "line": 184, @@ -12494,8 +12412,8 @@ }, "object": { "type": "Identifier", - "start": 4269, - "end": 4275, + "start": 4259, + "end": 4265, "loc": { "start": { "line": 184, @@ -12511,8 +12429,8 @@ }, "property": { "type": "Identifier", - "start": 4276, - "end": 4282, + "start": 4266, + "end": 4272, "loc": { "start": { "line": 184, @@ -12531,8 +12449,8 @@ "arguments": [ { "type": "Identifier", - "start": 4283, - "end": 4286, + "start": 4273, + "end": 4276, "loc": { "start": { "line": 184, @@ -12554,8 +12472,8 @@ }, { "type": "ExpressionStatement", - "start": 4291, - "end": 4319, + "start": 4281, + "end": 4309, "loc": { "start": { "line": 185, @@ -12568,8 +12486,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 4291, - "end": 4318, + "start": 4281, + "end": 4308, "loc": { "start": { "line": 185, @@ -12583,8 +12501,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 4291, - "end": 4313, + "start": 4281, + "end": 4303, "loc": { "start": { "line": 185, @@ -12597,8 +12515,8 @@ }, "object": { "type": "Identifier", - "start": 4291, - "end": 4300, + "start": 4281, + "end": 4290, "loc": { "start": { "line": 185, @@ -12614,8 +12532,8 @@ }, "property": { "type": "StringLiteral", - "start": 4301, - "end": 4312, + "start": 4291, + "end": 4302, "loc": { "start": { "line": 185, @@ -12636,8 +12554,8 @@ }, "right": { "type": "ObjectExpression", - "start": 4316, - "end": 4318, + "start": 4306, + "end": 4308, "loc": { "start": { "line": 185, @@ -12655,8 +12573,8 @@ { "type": "CommentLine", "value": " Add the variable 'this' as a reference to the current object", - "start": 4323, - "end": 4386, + "start": 4313, + "end": 4376, "loc": { "start": { "line": 187, @@ -12672,8 +12590,8 @@ }, { "type": "ExpressionStatement", - "start": 4389, - "end": 4416, + "start": 4379, + "end": 4406, "loc": { "start": { "line": 188, @@ -12686,8 +12604,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 4389, - "end": 4415, + "start": 4379, + "end": 4405, "loc": { "start": { "line": 188, @@ -12701,8 +12619,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 4389, - "end": 4406, + "start": 4379, + "end": 4396, "loc": { "start": { "line": 188, @@ -12715,8 +12633,8 @@ }, "object": { "type": "Identifier", - "start": 4389, - "end": 4398, + "start": 4379, + "end": 4388, "loc": { "start": { "line": 188, @@ -12733,8 +12651,8 @@ }, "property": { "type": "StringLiteral", - "start": 4399, - "end": 4405, + "start": 4389, + "end": 4395, "loc": { "start": { "line": 188, @@ -12756,8 +12674,8 @@ }, "right": { "type": "Identifier", - "start": 4409, - "end": 4415, + "start": 4399, + "end": 4405, "loc": { "start": { "line": 188, @@ -12777,8 +12695,8 @@ { "type": "CommentLine", "value": " Add the variable 'this' as a reference to the current object", - "start": 4323, - "end": 4386, + "start": 4313, + "end": 4376, "loc": { "start": { "line": 187, @@ -12795,8 +12713,8 @@ { "type": "CommentLine", "value": " Evaluate the arguments and add the methods/properties to the object", - "start": 4420, - "end": 4490, + "start": 4410, + "end": 4480, "loc": { "start": { "line": 190, @@ -12812,8 +12730,8 @@ }, { "type": "VariableDeclaration", - "start": 4493, - "end": 4549, + "start": 4483, + "end": 4539, "loc": { "start": { "line": 191, @@ -12827,8 +12745,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 4499, - "end": 4548, + "start": 4489, + "end": 4538, "loc": { "start": { "line": 191, @@ -12841,8 +12759,8 @@ }, "id": { "type": "Identifier", - "start": 4499, - "end": 4505, + "start": 4489, + "end": 4495, "loc": { "start": { "line": 191, @@ -12859,8 +12777,8 @@ }, "init": { "type": "CallExpression", - "start": 4508, - "end": 4548, + "start": 4498, + "end": 4538, "loc": { "start": { "line": 191, @@ -12873,8 +12791,8 @@ }, "callee": { "type": "MemberExpression", - "start": 4508, - "end": 4516, + "start": 4498, + "end": 4506, "loc": { "start": { "line": 191, @@ -12887,8 +12805,8 @@ }, "object": { "type": "Identifier", - "start": 4508, - "end": 4512, + "start": 4498, + "end": 4502, "loc": { "start": { "line": 191, @@ -12904,8 +12822,8 @@ }, "property": { "type": "Identifier", - "start": 4513, - "end": 4516, + "start": 4503, + "end": 4506, "loc": { "start": { "line": 191, @@ -12924,8 +12842,8 @@ "arguments": [ { "type": "ArrowFunctionExpression", - "start": 4517, - "end": 4547, + "start": 4507, + "end": 4537, "loc": { "start": { "line": 191, @@ -12943,8 +12861,8 @@ "params": [ { "type": "Identifier", - "start": 4517, - "end": 4520, + "start": 4507, + "end": 4510, "loc": { "start": { "line": 191, @@ -12961,8 +12879,8 @@ ], "body": { "type": "CallExpression", - "start": 4524, - "end": 4547, + "start": 4514, + "end": 4537, "loc": { "start": { "line": 191, @@ -12975,8 +12893,8 @@ }, "callee": { "type": "MemberExpression", - "start": 4524, - "end": 4536, + "start": 4514, + "end": 4526, "loc": { "start": { "line": 191, @@ -12989,8 +12907,8 @@ }, "object": { "type": "Identifier", - "start": 4524, - "end": 4527, + "start": 4514, + "end": 4517, "loc": { "start": { "line": 191, @@ -13006,8 +12924,8 @@ }, "property": { "type": "Identifier", - "start": 4528, - "end": 4536, + "start": 4518, + "end": 4526, "loc": { "start": { "line": 191, @@ -13026,8 +12944,8 @@ "arguments": [ { "type": "Identifier", - "start": 4537, - "end": 4546, + "start": 4527, + "end": 4536, "loc": { "start": { "line": 191, @@ -13054,8 +12972,8 @@ { "type": "CommentLine", "value": " Evaluate the arguments and add the methods/properties to the object", - "start": 4420, - "end": 4490, + "start": 4410, + "end": 4480, "loc": { "start": { "line": 190, @@ -13071,8 +12989,8 @@ }, { "type": "ForOfStatement", - "start": 4553, - "end": 4681, + "start": 4543, + "end": 4671, "loc": { "start": { "line": 193, @@ -13085,8 +13003,8 @@ }, "left": { "type": "VariableDeclaration", - "start": 4558, - "end": 4568, + "start": 4548, + "end": 4558, "loc": { "start": { "line": 193, @@ -13100,8 +13018,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 4564, - "end": 4568, + "start": 4554, + "end": 4558, "loc": { "start": { "line": 193, @@ -13114,8 +13032,8 @@ }, "id": { "type": "Identifier", - "start": 4564, - "end": 4568, + "start": 4554, + "end": 4558, "loc": { "start": { "line": 193, @@ -13136,8 +13054,8 @@ }, "right": { "type": "CallExpression", - "start": 4572, - "end": 4594, + "start": 4562, + "end": 4584, "loc": { "start": { "line": 193, @@ -13150,8 +13068,8 @@ }, "callee": { "type": "MemberExpression", - "start": 4572, - "end": 4583, + "start": 4562, + "end": 4573, "loc": { "start": { "line": 193, @@ -13164,8 +13082,8 @@ }, "object": { "type": "Identifier", - "start": 4572, - "end": 4577, + "start": 4562, + "end": 4567, "loc": { "start": { "line": 193, @@ -13181,8 +13099,8 @@ }, "property": { "type": "Identifier", - "start": 4578, - "end": 4583, + "start": 4568, + "end": 4573, "loc": { "start": { "line": 193, @@ -13201,8 +13119,8 @@ "arguments": [ { "type": "Identifier", - "start": 4584, - "end": 4590, + "start": 4574, + "end": 4580, "loc": { "start": { "line": 193, @@ -13218,8 +13136,8 @@ }, { "type": "NumericLiteral", - "start": 4592, - "end": 4593, + "start": 4582, + "end": 4583, "loc": { "start": { "line": 193, @@ -13240,8 +13158,8 @@ }, "body": { "type": "BlockStatement", - "start": 4596, - "end": 4681, + "start": 4586, + "end": 4671, "loc": { "start": { "line": 193, @@ -13255,8 +13173,8 @@ "body": [ { "type": "VariableDeclaration", - "start": 4602, - "end": 4623, + "start": 4592, + "end": 4613, "loc": { "start": { "line": 194, @@ -13270,8 +13188,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 4608, - "end": 4622, + "start": 4598, + "end": 4612, "loc": { "start": { "line": 194, @@ -13284,8 +13202,8 @@ }, "id": { "type": "Identifier", - "start": 4608, - "end": 4612, + "start": 4598, + "end": 4602, "loc": { "start": { "line": 194, @@ -13301,8 +13219,8 @@ }, "init": { "type": "MemberExpression", - "start": 4615, - "end": 4622, + "start": 4605, + "end": 4612, "loc": { "start": { "line": 194, @@ -13315,8 +13233,8 @@ }, "object": { "type": "Identifier", - "start": 4615, - "end": 4619, + "start": 4605, + "end": 4609, "loc": { "start": { "line": 194, @@ -13332,8 +13250,8 @@ }, "property": { "type": "NumericLiteral", - "start": 4620, - "end": 4621, + "start": 4610, + "end": 4611, "loc": { "start": { "line": 194, @@ -13358,8 +13276,8 @@ }, { "type": "VariableDeclaration", - "start": 4628, - "end": 4650, + "start": 4618, + "end": 4640, "loc": { "start": { "line": 195, @@ -13373,8 +13291,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 4634, - "end": 4649, + "start": 4624, + "end": 4639, "loc": { "start": { "line": 195, @@ -13387,8 +13305,8 @@ }, "id": { "type": "Identifier", - "start": 4634, - "end": 4639, + "start": 4624, + "end": 4629, "loc": { "start": { "line": 195, @@ -13404,8 +13322,8 @@ }, "init": { "type": "MemberExpression", - "start": 4642, - "end": 4649, + "start": 4632, + "end": 4639, "loc": { "start": { "line": 195, @@ -13418,8 +13336,8 @@ }, "object": { "type": "Identifier", - "start": 4642, - "end": 4646, + "start": 4632, + "end": 4636, "loc": { "start": { "line": 195, @@ -13435,8 +13353,8 @@ }, "property": { "type": "NumericLiteral", - "start": 4647, - "end": 4648, + "start": 4637, + "end": 4638, "loc": { "start": { "line": 195, @@ -13461,8 +13379,8 @@ }, { "type": "ExpressionStatement", - "start": 4656, - "end": 4677, + "start": 4646, + "end": 4667, "loc": { "start": { "line": 197, @@ -13475,8 +13393,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 4656, - "end": 4676, + "start": 4646, + "end": 4666, "loc": { "start": { "line": 197, @@ -13490,8 +13408,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 4656, - "end": 4668, + "start": 4646, + "end": 4658, "loc": { "start": { "line": 197, @@ -13504,8 +13422,8 @@ }, "object": { "type": "Identifier", - "start": 4656, - "end": 4662, + "start": 4646, + "end": 4652, "loc": { "start": { "line": 197, @@ -13521,8 +13439,8 @@ }, "property": { "type": "Identifier", - "start": 4663, - "end": 4667, + "start": 4653, + "end": 4657, "loc": { "start": { "line": 197, @@ -13540,8 +13458,8 @@ }, "right": { "type": "Identifier", - "start": 4671, - "end": 4676, + "start": 4661, + "end": 4666, "loc": { "start": { "line": 197, @@ -13563,8 +13481,8 @@ }, { "type": "ReturnStatement", - "start": 4685, - "end": 4699, + "start": 4675, + "end": 4689, "loc": { "start": { "line": 200, @@ -13577,8 +13495,8 @@ }, "argument": { "type": "Identifier", - "start": 4692, - "end": 4698, + "start": 4682, + "end": 4688, "loc": { "start": { "line": 200, @@ -13601,8 +13519,8 @@ }, { "type": "ExpressionStatement", - "start": 4704, - "end": 4935, + "start": 4694, + "end": 4925, "loc": { "start": { "line": 203, @@ -13615,8 +13533,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 4704, - "end": 4934, + "start": 4694, + "end": 4924, "loc": { "start": { "line": 203, @@ -13630,8 +13548,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 4704, - "end": 4725, + "start": 4694, + "end": 4715, "loc": { "start": { "line": 203, @@ -13644,8 +13562,8 @@ }, "object": { "type": "Identifier", - "start": 4704, - "end": 4716, + "start": 4694, + "end": 4706, "loc": { "start": { "line": 203, @@ -13661,8 +13579,8 @@ }, "property": { "type": "StringLiteral", - "start": 4717, - "end": 4724, + "start": 4707, + "end": 4714, "loc": { "start": { "line": 203, @@ -13683,8 +13601,8 @@ }, "right": { "type": "ArrowFunctionExpression", - "start": 4728, - "end": 4934, + "start": 4718, + "end": 4924, "loc": { "start": { "line": 203, @@ -13702,8 +13620,8 @@ "params": [ { "type": "Identifier", - "start": 4729, - "end": 4733, + "start": 4719, + "end": 4723, "loc": { "start": { "line": 203, @@ -13719,8 +13637,8 @@ }, { "type": "Identifier", - "start": 4735, - "end": 4738, + "start": 4725, + "end": 4728, "loc": { "start": { "line": 203, @@ -13737,8 +13655,8 @@ ], "body": { "type": "BlockStatement", - "start": 4743, - "end": 4934, + "start": 4733, + "end": 4924, "loc": { "start": { "line": 203, @@ -13752,8 +13670,8 @@ "body": [ { "type": "IfStatement", - "start": 4747, - "end": 4835, + "start": 4737, + "end": 4825, "loc": { "start": { "line": 204, @@ -13766,8 +13684,8 @@ }, "test": { "type": "BinaryExpression", - "start": 4751, - "end": 4774, + "start": 4741, + "end": 4764, "loc": { "start": { "line": 204, @@ -13780,8 +13698,8 @@ }, "left": { "type": "MemberExpression", - "start": 4751, - "end": 4763, + "start": 4741, + "end": 4753, "loc": { "start": { "line": 204, @@ -13794,8 +13712,8 @@ }, "object": { "type": "MemberExpression", - "start": 4751, - "end": 4758, + "start": 4741, + "end": 4748, "loc": { "start": { "line": 204, @@ -13808,8 +13726,8 @@ }, "object": { "type": "Identifier", - "start": 4751, - "end": 4755, + "start": 4741, + "end": 4745, "loc": { "start": { "line": 204, @@ -13825,8 +13743,8 @@ }, "property": { "type": "NumericLiteral", - "start": 4756, - "end": 4757, + "start": 4746, + "end": 4747, "loc": { "start": { "line": 204, @@ -13847,8 +13765,8 @@ }, "property": { "type": "Identifier", - "start": 4759, - "end": 4763, + "start": 4749, + "end": 4753, "loc": { "start": { "line": 204, @@ -13867,8 +13785,8 @@ "operator": "!==", "right": { "type": "StringLiteral", - "start": 4768, - "end": 4774, + "start": 4758, + "end": 4764, "loc": { "start": { "line": 204, @@ -13888,8 +13806,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 4776, - "end": 4835, + "start": 4766, + "end": 4825, "loc": { "start": { "line": 204, @@ -13903,8 +13821,8 @@ "body": [ { "type": "ThrowStatement", - "start": 4782, - "end": 4831, + "start": 4772, + "end": 4821, "loc": { "start": { "line": 205, @@ -13917,8 +13835,8 @@ }, "argument": { "type": "NewExpression", - "start": 4788, - "end": 4830, + "start": 4778, + "end": 4820, "loc": { "start": { "line": 205, @@ -13931,8 +13849,8 @@ }, "callee": { "type": "Identifier", - "start": 4792, - "end": 4803, + "start": 4782, + "end": 4793, "loc": { "start": { "line": 205, @@ -13949,8 +13867,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 4804, - "end": 4829, + "start": 4794, + "end": 4819, "loc": { "start": { "line": 205, @@ -13977,8 +13895,8 @@ }, { "type": "VariableDeclaration", - "start": 4839, - "end": 4873, + "start": 4829, + "end": 4863, "loc": { "start": { "line": 208, @@ -13992,8 +13910,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 4843, - "end": 4872, + "start": 4833, + "end": 4862, "loc": { "start": { "line": 208, @@ -14006,8 +13924,8 @@ }, "id": { "type": "Identifier", - "start": 4843, - "end": 4848, + "start": 4833, + "end": 4838, "loc": { "start": { "line": 208, @@ -14023,8 +13941,8 @@ }, "init": { "type": "CallExpression", - "start": 4851, - "end": 4872, + "start": 4841, + "end": 4862, "loc": { "start": { "line": 208, @@ -14037,8 +13955,8 @@ }, "callee": { "type": "MemberExpression", - "start": 4851, - "end": 4867, + "start": 4841, + "end": 4857, "loc": { "start": { "line": 208, @@ -14051,8 +13969,8 @@ }, "object": { "type": "MemberExpression", - "start": 4851, - "end": 4858, + "start": 4841, + "end": 4848, "loc": { "start": { "line": 208, @@ -14065,8 +13983,8 @@ }, "object": { "type": "Identifier", - "start": 4851, - "end": 4855, + "start": 4841, + "end": 4845, "loc": { "start": { "line": 208, @@ -14082,8 +14000,8 @@ }, "property": { "type": "NumericLiteral", - "start": 4856, - "end": 4857, + "start": 4846, + "end": 4847, "loc": { "start": { "line": 208, @@ -14104,8 +14022,8 @@ }, "property": { "type": "Identifier", - "start": 4859, - "end": 4867, + "start": 4849, + "end": 4857, "loc": { "start": { "line": 208, @@ -14124,8 +14042,8 @@ "arguments": [ { "type": "Identifier", - "start": 4868, - "end": 4871, + "start": 4858, + "end": 4861, "loc": { "start": { "line": 208, @@ -14147,8 +14065,8 @@ }, { "type": "ExpressionStatement", - "start": 4876, - "end": 4915, + "start": 4866, + "end": 4905, "loc": { "start": { "line": 209, @@ -14161,8 +14079,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 4876, - "end": 4914, + "start": 4866, + "end": 4904, "loc": { "start": { "line": 209, @@ -14176,8 +14094,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 4876, - "end": 4906, + "start": 4866, + "end": 4896, "loc": { "start": { "line": 209, @@ -14190,8 +14108,8 @@ }, "object": { "type": "MemberExpression", - "start": 4876, - "end": 4892, + "start": 4866, + "end": 4882, "loc": { "start": { "line": 209, @@ -14204,8 +14122,8 @@ }, "object": { "type": "Identifier", - "start": 4876, - "end": 4879, + "start": 4866, + "end": 4869, "loc": { "start": { "line": 209, @@ -14221,8 +14139,8 @@ }, "property": { "type": "StringLiteral", - "start": 4880, - "end": 4891, + "start": 4870, + "end": 4881, "loc": { "start": { "line": 209, @@ -14243,8 +14161,8 @@ }, "property": { "type": "MemberExpression", - "start": 4893, - "end": 4905, + "start": 4883, + "end": 4895, "loc": { "start": { "line": 209, @@ -14257,8 +14175,8 @@ }, "object": { "type": "MemberExpression", - "start": 4893, - "end": 4900, + "start": 4883, + "end": 4890, "loc": { "start": { "line": 209, @@ -14271,8 +14189,8 @@ }, "object": { "type": "Identifier", - "start": 4893, - "end": 4897, + "start": 4883, + "end": 4887, "loc": { "start": { "line": 209, @@ -14288,8 +14206,8 @@ }, "property": { "type": "NumericLiteral", - "start": 4898, - "end": 4899, + "start": 4888, + "end": 4889, "loc": { "start": { "line": 209, @@ -14310,8 +14228,8 @@ }, "property": { "type": "Identifier", - "start": 4901, - "end": 4905, + "start": 4891, + "end": 4895, "loc": { "start": { "line": 209, @@ -14331,8 +14249,8 @@ }, "right": { "type": "Identifier", - "start": 4909, - "end": 4914, + "start": 4899, + "end": 4904, "loc": { "start": { "line": 209, @@ -14350,8 +14268,8 @@ }, { "type": "ReturnStatement", - "start": 4919, - "end": 4932, + "start": 4909, + "end": 4922, "loc": { "start": { "line": 211, @@ -14364,8 +14282,8 @@ }, "argument": { "type": "Identifier", - "start": 4926, - "end": 4931, + "start": 4916, + "end": 4921, "loc": { "start": { "line": 211, @@ -14388,8 +14306,8 @@ }, { "type": "ExpressionStatement", - "start": 4937, - "end": 5369, + "start": 4927, + "end": 5359, "loc": { "start": { "line": 214, @@ -14402,8 +14320,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 4937, - "end": 5368, + "start": 4927, + "end": 5358, "loc": { "start": { "line": 214, @@ -14417,8 +14335,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 4937, - "end": 4956, + "start": 4927, + "end": 4946, "loc": { "start": { "line": 214, @@ -14431,8 +14349,8 @@ }, "object": { "type": "Identifier", - "start": 4937, - "end": 4949, + "start": 4927, + "end": 4939, "loc": { "start": { "line": 214, @@ -14448,8 +14366,8 @@ }, "property": { "type": "StringLiteral", - "start": 4950, - "end": 4955, + "start": 4940, + "end": 4945, "loc": { "start": { "line": 214, @@ -14470,8 +14388,8 @@ }, "right": { "type": "ArrowFunctionExpression", - "start": 4959, - "end": 5368, + "start": 4949, + "end": 5358, "loc": { "start": { "line": 214, @@ -14489,8 +14407,8 @@ "params": [ { "type": "Identifier", - "start": 4960, - "end": 4964, + "start": 4950, + "end": 4954, "loc": { "start": { "line": 214, @@ -14506,8 +14424,8 @@ }, { "type": "Identifier", - "start": 4966, - "end": 4969, + "start": 4956, + "end": 4959, "loc": { "start": { "line": 214, @@ -14524,8 +14442,8 @@ ], "body": { "type": "BlockStatement", - "start": 4974, - "end": 5368, + "start": 4964, + "end": 5358, "loc": { "start": { "line": 214, @@ -14539,8 +14457,8 @@ "body": [ { "type": "IfStatement", - "start": 4978, - "end": 5061, + "start": 4968, + "end": 5051, "loc": { "start": { "line": 215, @@ -14553,8 +14471,8 @@ }, "test": { "type": "BinaryExpression", - "start": 4982, - "end": 4997, + "start": 4972, + "end": 4987, "loc": { "start": { "line": 215, @@ -14567,8 +14485,8 @@ }, "left": { "type": "MemberExpression", - "start": 4982, - "end": 4993, + "start": 4972, + "end": 4983, "loc": { "start": { "line": 215, @@ -14581,8 +14499,8 @@ }, "object": { "type": "Identifier", - "start": 4982, - "end": 4986, + "start": 4972, + "end": 4976, "loc": { "start": { "line": 215, @@ -14598,8 +14516,8 @@ }, "property": { "type": "Identifier", - "start": 4987, - "end": 4993, + "start": 4977, + "end": 4983, "loc": { "start": { "line": 215, @@ -14618,8 +14536,8 @@ "operator": "<", "right": { "type": "NumericLiteral", - "start": 4996, - "end": 4997, + "start": 4986, + "end": 4987, "loc": { "start": { "line": 215, @@ -14639,8 +14557,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 4999, - "end": 5061, + "start": 4989, + "end": 5051, "loc": { "start": { "line": 215, @@ -14654,8 +14572,8 @@ "body": [ { "type": "ThrowStatement", - "start": 5005, - "end": 5057, + "start": 4995, + "end": 5047, "loc": { "start": { "line": 216, @@ -14668,8 +14586,8 @@ }, "argument": { "type": "NewExpression", - "start": 5011, - "end": 5056, + "start": 5001, + "end": 5046, "loc": { "start": { "line": 216, @@ -14682,8 +14600,8 @@ }, "callee": { "type": "Identifier", - "start": 5015, - "end": 5026, + "start": 5005, + "end": 5016, "loc": { "start": { "line": 216, @@ -14700,8 +14618,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 5027, - "end": 5055, + "start": 5017, + "end": 5045, "loc": { "start": { "line": 216, @@ -14728,8 +14646,8 @@ }, { "type": "VariableDeclaration", - "start": 5065, - "end": 5086, + "start": 5055, + "end": 5076, "loc": { "start": { "line": 219, @@ -14743,8 +14661,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 5071, - "end": 5085, + "start": 5061, + "end": 5075, "loc": { "start": { "line": 219, @@ -14757,8 +14675,8 @@ }, "id": { "type": "Identifier", - "start": 5071, - "end": 5075, + "start": 5061, + "end": 5065, "loc": { "start": { "line": 219, @@ -14774,8 +14692,8 @@ }, "init": { "type": "MemberExpression", - "start": 5078, - "end": 5085, + "start": 5068, + "end": 5075, "loc": { "start": { "line": 219, @@ -14788,8 +14706,8 @@ }, "object": { "type": "Identifier", - "start": 5078, - "end": 5082, + "start": 5068, + "end": 5072, "loc": { "start": { "line": 219, @@ -14805,8 +14723,8 @@ }, "property": { "type": "NumericLiteral", - "start": 5083, - "end": 5084, + "start": 5073, + "end": 5074, "loc": { "start": { "line": 219, @@ -14831,8 +14749,8 @@ }, { "type": "VariableDeclaration", - "start": 5089, - "end": 5116, + "start": 5079, + "end": 5106, "loc": { "start": { "line": 220, @@ -14846,8 +14764,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 5095, - "end": 5115, + "start": 5085, + "end": 5105, "loc": { "start": { "line": 220, @@ -14860,8 +14778,8 @@ }, "id": { "type": "Identifier", - "start": 5095, - "end": 5105, + "start": 5085, + "end": 5095, "loc": { "start": { "line": 220, @@ -14877,8 +14795,8 @@ }, "init": { "type": "MemberExpression", - "start": 5108, - "end": 5115, + "start": 5098, + "end": 5105, "loc": { "start": { "line": 220, @@ -14891,8 +14809,8 @@ }, "object": { "type": "Identifier", - "start": 5108, - "end": 5112, + "start": 5098, + "end": 5102, "loc": { "start": { "line": 220, @@ -14908,8 +14826,8 @@ }, "property": { "type": "NumericLiteral", - "start": 5113, - "end": 5114, + "start": 5103, + "end": 5104, "loc": { "start": { "line": 220, @@ -14934,8 +14852,8 @@ }, { "type": "TryStatement", - "start": 5120, - "end": 5349, + "start": 5110, + "end": 5339, "loc": { "start": { "line": 222, @@ -14948,8 +14866,8 @@ }, "block": { "type": "BlockStatement", - "start": 5124, - "end": 5153, + "start": 5114, + "end": 5143, "loc": { "start": { "line": 222, @@ -14963,8 +14881,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 5130, - "end": 5149, + "start": 5120, + "end": 5139, "loc": { "start": { "line": 223, @@ -14977,8 +14895,8 @@ }, "expression": { "type": "CallExpression", - "start": 5130, - "end": 5148, + "start": 5120, + "end": 5138, "loc": { "start": { "line": 223, @@ -14991,8 +14909,8 @@ }, "callee": { "type": "MemberExpression", - "start": 5130, - "end": 5143, + "start": 5120, + "end": 5133, "loc": { "start": { "line": 223, @@ -15005,8 +14923,8 @@ }, "object": { "type": "Identifier", - "start": 5130, - "end": 5134, + "start": 5120, + "end": 5124, "loc": { "start": { "line": 223, @@ -15022,8 +14940,8 @@ }, "property": { "type": "Identifier", - "start": 5135, - "end": 5143, + "start": 5125, + "end": 5133, "loc": { "start": { "line": 223, @@ -15042,8 +14960,8 @@ "arguments": [ { "type": "Identifier", - "start": 5144, - "end": 5147, + "start": 5134, + "end": 5137, "loc": { "start": { "line": 223, @@ -15065,8 +14983,8 @@ }, "handler": { "type": "CatchClause", - "start": 5154, - "end": 5229, + "start": 5144, + "end": 5219, "loc": { "start": { "line": 224, @@ -15079,8 +14997,8 @@ }, "param": { "type": "Identifier", - "start": 5161, - "end": 5164, + "start": 5151, + "end": 5154, "loc": { "start": { "line": 224, @@ -15096,8 +15014,8 @@ }, "body": { "type": "BlockStatement", - "start": 5166, - "end": 5229, + "start": 5156, + "end": 5219, "loc": { "start": { "line": 224, @@ -15111,8 +15029,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 5172, - "end": 5195, + "start": 5162, + "end": 5185, "loc": { "start": { "line": 225, @@ -15125,8 +15043,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 5172, - "end": 5194, + "start": 5162, + "end": 5184, "loc": { "start": { "line": 225, @@ -15140,8 +15058,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 5172, - "end": 5188, + "start": 5162, + "end": 5178, "loc": { "start": { "line": 225, @@ -15154,8 +15072,8 @@ }, "object": { "type": "Identifier", - "start": 5172, - "end": 5175, + "start": 5162, + "end": 5165, "loc": { "start": { "line": 225, @@ -15171,8 +15089,8 @@ }, "property": { "type": "StringLiteral", - "start": 5176, - "end": 5187, + "start": 5166, + "end": 5177, "loc": { "start": { "line": 225, @@ -15193,8 +15111,8 @@ }, "right": { "type": "Identifier", - "start": 5191, - "end": 5194, + "start": 5181, + "end": 5184, "loc": { "start": { "line": 225, @@ -15212,8 +15130,8 @@ }, { "type": "ExpressionStatement", - "start": 5200, - "end": 5225, + "start": 5190, + "end": 5215, "loc": { "start": { "line": 226, @@ -15226,8 +15144,8 @@ }, "expression": { "type": "CallExpression", - "start": 5200, - "end": 5224, + "start": 5190, + "end": 5214, "loc": { "start": { "line": 226, @@ -15240,8 +15158,8 @@ }, "callee": { "type": "MemberExpression", - "start": 5200, - "end": 5219, + "start": 5190, + "end": 5209, "loc": { "start": { "line": 226, @@ -15254,8 +15172,8 @@ }, "object": { "type": "Identifier", - "start": 5200, - "end": 5210, + "start": 5190, + "end": 5200, "loc": { "start": { "line": 226, @@ -15271,8 +15189,8 @@ }, "property": { "type": "Identifier", - "start": 5211, - "end": 5219, + "start": 5201, + "end": 5209, "loc": { "start": { "line": 226, @@ -15291,8 +15209,8 @@ "arguments": [ { "type": "Identifier", - "start": 5220, - "end": 5223, + "start": 5210, + "end": 5213, "loc": { "start": { "line": 226, @@ -15316,8 +15234,8 @@ "guardedHandlers": [], "finalizer": { "type": "BlockStatement", - "start": 5238, - "end": 5349, + "start": 5228, + "end": 5339, "loc": { "start": { "line": 227, @@ -15331,8 +15249,8 @@ "body": [ { "type": "IfStatement", - "start": 5244, - "end": 5345, + "start": 5234, + "end": 5335, "loc": { "start": { "line": 228, @@ -15345,8 +15263,8 @@ }, "test": { "type": "BinaryExpression", - "start": 5248, - "end": 5265, + "start": 5238, + "end": 5255, "loc": { "start": { "line": 228, @@ -15359,8 +15277,8 @@ }, "left": { "type": "MemberExpression", - "start": 5248, - "end": 5259, + "start": 5238, + "end": 5249, "loc": { "start": { "line": 228, @@ -15373,8 +15291,8 @@ }, "object": { "type": "Identifier", - "start": 5248, - "end": 5252, + "start": 5238, + "end": 5242, "loc": { "start": { "line": 228, @@ -15390,8 +15308,8 @@ }, "property": { "type": "Identifier", - "start": 5253, - "end": 5259, + "start": 5243, + "end": 5249, "loc": { "start": { "line": 228, @@ -15410,8 +15328,8 @@ "operator": "===", "right": { "type": "NumericLiteral", - "start": 5264, - "end": 5265, + "start": 5254, + "end": 5255, "loc": { "start": { "line": 228, @@ -15431,8 +15349,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 5267, - "end": 5345, + "start": 5257, + "end": 5335, "loc": { "start": { "line": 228, @@ -15446,8 +15364,8 @@ "body": [ { "type": "VariableDeclaration", - "start": 5275, - "end": 5304, + "start": 5265, + "end": 5294, "loc": { "start": { "line": 229, @@ -15461,8 +15379,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 5281, - "end": 5303, + "start": 5271, + "end": 5293, "loc": { "start": { "line": 229, @@ -15475,8 +15393,8 @@ }, "id": { "type": "Identifier", - "start": 5281, - "end": 5293, + "start": 5271, + "end": 5283, "loc": { "start": { "line": 229, @@ -15492,8 +15410,8 @@ }, "init": { "type": "MemberExpression", - "start": 5296, - "end": 5303, + "start": 5286, + "end": 5293, "loc": { "start": { "line": 229, @@ -15506,8 +15424,8 @@ }, "object": { "type": "Identifier", - "start": 5296, - "end": 5300, + "start": 5286, + "end": 5290, "loc": { "start": { "line": 229, @@ -15523,8 +15441,8 @@ }, "property": { "type": "NumericLiteral", - "start": 5301, - "end": 5302, + "start": 5291, + "end": 5292, "loc": { "start": { "line": 229, @@ -15549,8 +15467,8 @@ }, { "type": "ExpressionStatement", - "start": 5312, - "end": 5339, + "start": 5302, + "end": 5329, "loc": { "start": { "line": 231, @@ -15563,8 +15481,8 @@ }, "expression": { "type": "CallExpression", - "start": 5312, - "end": 5338, + "start": 5302, + "end": 5328, "loc": { "start": { "line": 231, @@ -15577,8 +15495,8 @@ }, "callee": { "type": "MemberExpression", - "start": 5312, - "end": 5333, + "start": 5302, + "end": 5323, "loc": { "start": { "line": 231, @@ -15591,8 +15509,8 @@ }, "object": { "type": "Identifier", - "start": 5312, - "end": 5324, + "start": 5302, + "end": 5314, "loc": { "start": { "line": 231, @@ -15608,8 +15526,8 @@ }, "property": { "type": "Identifier", - "start": 5325, - "end": 5333, + "start": 5315, + "end": 5323, "loc": { "start": { "line": 231, @@ -15628,8 +15546,8 @@ "arguments": [ { "type": "Identifier", - "start": 5334, - "end": 5337, + "start": 5324, + "end": 5327, "loc": { "start": { "line": 231, @@ -15657,8 +15575,8 @@ }, { "type": "ReturnStatement", - "start": 5353, - "end": 5366, + "start": 5343, + "end": 5356, "loc": { "start": { "line": 235, @@ -15671,8 +15589,8 @@ }, "argument": { "type": "BooleanLiteral", - "start": 5360, - "end": 5365, + "start": 5350, + "end": 5355, "loc": { "start": { "line": 235, @@ -15695,8 +15613,8 @@ { "type": "CommentLine", "value": " TODO: Continue implementing class?", - "start": 5371, - "end": 5408, + "start": 5361, + "end": 5398, "loc": { "start": { "line": 238, @@ -15711,8 +15629,8 @@ { "type": "CommentLine", "value": "", - "start": 5409, - "end": 5411, + "start": 5399, + "end": 5401, "loc": { "start": { "line": 239, @@ -15727,8 +15645,8 @@ { "type": "CommentLine", "value": " SpecialForms['class'] = (args, env) => {", - "start": 5412, - "end": 5455, + "start": 5402, + "end": 5445, "loc": { "start": { "line": 240, @@ -15743,8 +15661,8 @@ { "type": "CommentLine", "value": " // const evArgs = args.map((arg) => evaluate(arg, env));", - "start": 5456, - "end": 5517, + "start": 5446, + "end": 5507, "loc": { "start": { "line": 241, @@ -15759,8 +15677,8 @@ { "type": "CommentLine", "value": "", - "start": 5518, - "end": 5520, + "start": 5508, + "end": 5510, "loc": { "start": { "line": 242, @@ -15775,8 +15693,8 @@ { "type": "CommentLine", "value": " const newClass = function(x, y) {", - "start": 5521, - "end": 5559, + "start": 5511, + "end": 5549, "loc": { "start": { "line": 243, @@ -15791,8 +15709,8 @@ { "type": "CommentLine", "value": " this.x = x;", - "start": 5560, - "end": 5578, + "start": 5550, + "end": 5568, "loc": { "start": { "line": 244, @@ -15807,8 +15725,8 @@ { "type": "CommentLine", "value": " this.y = y;", - "start": 5579, - "end": 5597, + "start": 5569, + "end": 5587, "loc": { "start": { "line": 245, @@ -15823,8 +15741,8 @@ { "type": "CommentLine", "value": " }", - "start": 5598, - "end": 5604, + "start": 5588, + "end": 5594, "loc": { "start": { "line": 246, @@ -15839,8 +15757,8 @@ { "type": "CommentLine", "value": "", - "start": 5605, - "end": 5607, + "start": 5595, + "end": 5597, "loc": { "start": { "line": 247, @@ -15855,8 +15773,8 @@ { "type": "CommentLine", "value": " return newClass;", - "start": 5608, - "end": 5629, + "start": 5598, + "end": 5619, "loc": { "start": { "line": 248, @@ -15871,8 +15789,8 @@ { "type": "CommentLine", "value": " }", - "start": 5630, - "end": 5634, + "start": 5620, + "end": 5624, "loc": { "start": { "line": 249, @@ -15888,8 +15806,8 @@ }, { "type": "ExpressionStatement", - "start": 5636, - "end": 5780, + "start": 5626, + "end": 5770, "loc": { "start": { "line": 251, @@ -15902,8 +15820,8 @@ }, "expression": { "type": "CallExpression", - "start": 5636, - "end": 5779, + "start": 5626, + "end": 5769, "loc": { "start": { "line": 251, @@ -15916,8 +15834,8 @@ }, "callee": { "type": "MemberExpression", - "start": 5636, - "end": 5710, + "start": 5626, + "end": 5700, "loc": { "start": { "line": 251, @@ -15930,8 +15848,8 @@ }, "object": { "type": "ArrayExpression", - "start": 5636, - "end": 5702, + "start": 5626, + "end": 5692, "loc": { "start": { "line": 251, @@ -15945,8 +15863,8 @@ "elements": [ { "type": "StringLiteral", - "start": 5637, - "end": 5640, + "start": 5627, + "end": 5630, "loc": { "start": { "line": 251, @@ -15966,8 +15884,8 @@ }, { "type": "StringLiteral", - "start": 5642, - "end": 5645, + "start": 5632, + "end": 5635, "loc": { "start": { "line": 251, @@ -15986,8 +15904,8 @@ }, { "type": "StringLiteral", - "start": 5647, - "end": 5650, + "start": 5637, + "end": 5640, "loc": { "start": { "line": 251, @@ -16006,8 +15924,8 @@ }, { "type": "StringLiteral", - "start": 5652, - "end": 5655, + "start": 5642, + "end": 5645, "loc": { "start": { "line": 251, @@ -16026,8 +15944,8 @@ }, { "type": "StringLiteral", - "start": 5657, - "end": 5661, + "start": 5647, + "end": 5651, "loc": { "start": { "line": 251, @@ -16046,8 +15964,8 @@ }, { "type": "StringLiteral", - "start": 5663, - "end": 5667, + "start": 5653, + "end": 5657, "loc": { "start": { "line": 251, @@ -16066,8 +15984,8 @@ }, { "type": "StringLiteral", - "start": 5669, - "end": 5672, + "start": 5659, + "end": 5662, "loc": { "start": { "line": 251, @@ -16086,8 +16004,8 @@ }, { "type": "StringLiteral", - "start": 5674, - "end": 5677, + "start": 5664, + "end": 5667, "loc": { "start": { "line": 251, @@ -16106,8 +16024,8 @@ }, { "type": "StringLiteral", - "start": 5679, - "end": 5683, + "start": 5669, + "end": 5673, "loc": { "start": { "line": 251, @@ -16126,8 +16044,8 @@ }, { "type": "StringLiteral", - "start": 5685, - "end": 5689, + "start": 5675, + "end": 5679, "loc": { "start": { "line": 251, @@ -16146,8 +16064,8 @@ }, { "type": "StringLiteral", - "start": 5691, - "end": 5695, + "start": 5681, + "end": 5685, "loc": { "start": { "line": 251, @@ -16166,8 +16084,8 @@ }, { "type": "StringLiteral", - "start": 5697, - "end": 5701, + "start": 5687, + "end": 5691, "loc": { "start": { "line": 251, @@ -16189,8 +16107,8 @@ }, "property": { "type": "Identifier", - "start": 5703, - "end": 5710, + "start": 5693, + "end": 5700, "loc": { "start": { "line": 251, @@ -16210,8 +16128,8 @@ "arguments": [ { "type": "ArrowFunctionExpression", - "start": 5711, - "end": 5778, + "start": 5701, + "end": 5768, "loc": { "start": { "line": 251, @@ -16229,8 +16147,8 @@ "params": [ { "type": "Identifier", - "start": 5711, - "end": 5713, + "start": 5701, + "end": 5703, "loc": { "start": { "line": 251, @@ -16247,8 +16165,8 @@ ], "body": { "type": "BlockStatement", - "start": 5717, - "end": 5778, + "start": 5707, + "end": 5768, "loc": { "start": { "line": 251, @@ -16262,8 +16180,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 5721, - "end": 5776, + "start": 5711, + "end": 5766, "loc": { "start": { "line": 252, @@ -16276,8 +16194,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 5721, - "end": 5775, + "start": 5711, + "end": 5765, "loc": { "start": { "line": 252, @@ -16291,8 +16209,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 5721, - "end": 5731, + "start": 5711, + "end": 5721, "loc": { "start": { "line": 252, @@ -16305,8 +16223,8 @@ }, "object": { "type": "Identifier", - "start": 5721, - "end": 5727, + "start": 5711, + "end": 5717, "loc": { "start": { "line": 252, @@ -16322,8 +16240,8 @@ }, "property": { "type": "Identifier", - "start": 5728, - "end": 5730, + "start": 5718, + "end": 5720, "loc": { "start": { "line": 252, @@ -16341,8 +16259,8 @@ }, "right": { "type": "NewExpression", - "start": 5734, - "end": 5775, + "start": 5724, + "end": 5765, "loc": { "start": { "line": 252, @@ -16355,8 +16273,8 @@ }, "callee": { "type": "Identifier", - "start": 5738, - "end": 5746, + "start": 5728, + "end": 5736, "loc": { "start": { "line": 252, @@ -16373,8 +16291,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 5747, - "end": 5753, + "start": 5737, + "end": 5743, "loc": { "start": { "line": 252, @@ -16393,8 +16311,8 @@ }, { "type": "TemplateLiteral", - "start": 5755, - "end": 5774, + "start": 5745, + "end": 5764, "loc": { "start": { "line": 252, @@ -16408,8 +16326,8 @@ "expressions": [ { "type": "Identifier", - "start": 5767, - "end": 5769, + "start": 5757, + "end": 5759, "loc": { "start": { "line": 252, @@ -16427,8 +16345,8 @@ "quasis": [ { "type": "TemplateElement", - "start": 5756, - "end": 5765, + "start": 5746, + "end": 5755, "loc": { "start": { "line": 252, @@ -16447,8 +16365,8 @@ }, { "type": "TemplateElement", - "start": 5770, - "end": 5773, + "start": 5760, + "end": 5763, "loc": { "start": { "line": 252, @@ -16482,8 +16400,8 @@ { "type": "CommentLine", "value": " TODO: Continue implementing class?", - "start": 5371, - "end": 5408, + "start": 5361, + "end": 5398, "loc": { "start": { "line": 238, @@ -16498,8 +16416,8 @@ { "type": "CommentLine", "value": "", - "start": 5409, - "end": 5411, + "start": 5399, + "end": 5401, "loc": { "start": { "line": 239, @@ -16514,8 +16432,8 @@ { "type": "CommentLine", "value": " SpecialForms['class'] = (args, env) => {", - "start": 5412, - "end": 5455, + "start": 5402, + "end": 5445, "loc": { "start": { "line": 240, @@ -16530,8 +16448,8 @@ { "type": "CommentLine", "value": " // const evArgs = args.map((arg) => evaluate(arg, env));", - "start": 5456, - "end": 5517, + "start": 5446, + "end": 5507, "loc": { "start": { "line": 241, @@ -16546,8 +16464,8 @@ { "type": "CommentLine", "value": "", - "start": 5518, - "end": 5520, + "start": 5508, + "end": 5510, "loc": { "start": { "line": 242, @@ -16562,8 +16480,8 @@ { "type": "CommentLine", "value": " const newClass = function(x, y) {", - "start": 5521, - "end": 5559, + "start": 5511, + "end": 5549, "loc": { "start": { "line": 243, @@ -16578,8 +16496,8 @@ { "type": "CommentLine", "value": " this.x = x;", - "start": 5560, - "end": 5578, + "start": 5550, + "end": 5568, "loc": { "start": { "line": 244, @@ -16594,8 +16512,8 @@ { "type": "CommentLine", "value": " this.y = y;", - "start": 5579, - "end": 5597, + "start": 5569, + "end": 5587, "loc": { "start": { "line": 245, @@ -16610,8 +16528,8 @@ { "type": "CommentLine", "value": " }", - "start": 5598, - "end": 5604, + "start": 5588, + "end": 5594, "loc": { "start": { "line": 246, @@ -16626,8 +16544,8 @@ { "type": "CommentLine", "value": "", - "start": 5605, - "end": 5607, + "start": 5595, + "end": 5597, "loc": { "start": { "line": 247, @@ -16642,8 +16560,8 @@ { "type": "CommentLine", "value": " return newClass;", - "start": 5608, - "end": 5629, + "start": 5598, + "end": 5619, "loc": { "start": { "line": 248, @@ -16658,8 +16576,8 @@ { "type": "CommentLine", "value": " }", - "start": 5630, - "end": 5634, + "start": 5620, + "end": 5624, "loc": { "start": { "line": 249, @@ -16675,8 +16593,8 @@ }, { "type": "ExpressionStatement", - "start": 5782, - "end": 5804, + "start": 5772, + "end": 5794, "loc": { "start": { "line": 255, @@ -16689,8 +16607,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 5782, - "end": 5803, + "start": 5772, + "end": 5793, "loc": { "start": { "line": 255, @@ -16704,8 +16622,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 5782, - "end": 5796, + "start": 5772, + "end": 5786, "loc": { "start": { "line": 255, @@ -16718,8 +16636,8 @@ }, "object": { "type": "Identifier", - "start": 5782, - "end": 5788, + "start": 5772, + "end": 5778, "loc": { "start": { "line": 255, @@ -16735,8 +16653,8 @@ }, "property": { "type": "StringLiteral", - "start": 5789, - "end": 5795, + "start": 5779, + "end": 5785, "loc": { "start": { "line": 255, @@ -16757,8 +16675,8 @@ }, "right": { "type": "BooleanLiteral", - "start": 5799, - "end": 5803, + "start": 5789, + "end": 5793, "loc": { "start": { "line": 255, @@ -16775,8 +16693,8 @@ }, { "type": "ExpressionStatement", - "start": 5805, - "end": 5829, + "start": 5795, + "end": 5819, "loc": { "start": { "line": 256, @@ -16789,8 +16707,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 5805, - "end": 5828, + "start": 5795, + "end": 5818, "loc": { "start": { "line": 256, @@ -16804,8 +16722,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 5805, - "end": 5820, + "start": 5795, + "end": 5810, "loc": { "start": { "line": 256, @@ -16818,8 +16736,8 @@ }, "object": { "type": "Identifier", - "start": 5805, - "end": 5811, + "start": 5795, + "end": 5801, "loc": { "start": { "line": 256, @@ -16835,8 +16753,8 @@ }, "property": { "type": "StringLiteral", - "start": 5812, - "end": 5819, + "start": 5802, + "end": 5809, "loc": { "start": { "line": 256, @@ -16857,8 +16775,8 @@ }, "right": { "type": "BooleanLiteral", - "start": 5823, - "end": 5828, + "start": 5813, + "end": 5818, "loc": { "start": { "line": 256, @@ -16875,8 +16793,8 @@ }, { "type": "ExpressionStatement", - "start": 5830, - "end": 5852, + "start": 5820, + "end": 5842, "loc": { "start": { "line": 257, @@ -16889,8 +16807,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 5830, - "end": 5851, + "start": 5820, + "end": 5841, "loc": { "start": { "line": 257, @@ -16904,8 +16822,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 5830, - "end": 5844, + "start": 5820, + "end": 5834, "loc": { "start": { "line": 257, @@ -16918,8 +16836,8 @@ }, "object": { "type": "Identifier", - "start": 5830, - "end": 5836, + "start": 5820, + "end": 5826, "loc": { "start": { "line": 257, @@ -16935,8 +16853,8 @@ }, "property": { "type": "StringLiteral", - "start": 5837, - "end": 5843, + "start": 5827, + "end": 5833, "loc": { "start": { "line": 257, @@ -16957,8 +16875,8 @@ }, "right": { "type": "NullLiteral", - "start": 5847, - "end": 5851, + "start": 5837, + "end": 5841, "loc": { "start": { "line": 257, @@ -16974,8 +16892,8 @@ }, { "type": "ExpressionStatement", - "start": 5854, - "end": 5879, + "start": 5844, + "end": 5869, "loc": { "start": { "line": 259, @@ -16988,8 +16906,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 5854, - "end": 5878, + "start": 5844, + "end": 5868, "loc": { "start": { "line": 259, @@ -17003,8 +16921,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 5854, - "end": 5873, + "start": 5844, + "end": 5863, "loc": { "start": { "line": 259, @@ -17017,8 +16935,8 @@ }, "object": { "type": "Identifier", - "start": 5854, - "end": 5860, + "start": 5844, + "end": 5850, "loc": { "start": { "line": 259, @@ -17034,8 +16952,8 @@ }, "property": { "type": "StringLiteral", - "start": 5861, - "end": 5872, + "start": 5851, + "end": 5862, "loc": { "start": { "line": 259, @@ -17056,8 +16974,8 @@ }, "right": { "type": "ObjectExpression", - "start": 5876, - "end": 5878, + "start": 5866, + "end": 5868, "loc": { "start": { "line": 259, @@ -17074,8 +16992,8 @@ }, { "type": "ExpressionStatement", - "start": 5881, - "end": 5950, + "start": 5871, + "end": 5940, "loc": { "start": { "line": 261, @@ -17088,8 +17006,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 5881, - "end": 5949, + "start": 5871, + "end": 5939, "loc": { "start": { "line": 261, @@ -17103,8 +17021,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 5881, - "end": 5896, + "start": 5871, + "end": 5886, "loc": { "start": { "line": 261, @@ -17117,8 +17035,8 @@ }, "object": { "type": "Identifier", - "start": 5881, - "end": 5887, + "start": 5871, + "end": 5877, "loc": { "start": { "line": 261, @@ -17134,8 +17052,8 @@ }, "property": { "type": "StringLiteral", - "start": 5888, - "end": 5895, + "start": 5878, + "end": 5885, "loc": { "start": { "line": 261, @@ -17156,8 +17074,8 @@ }, "right": { "type": "ArrowFunctionExpression", - "start": 5899, - "end": 5949, + "start": 5889, + "end": 5939, "loc": { "start": { "line": 261, @@ -17175,8 +17093,8 @@ "params": [ { "type": "Identifier", - "start": 5899, - "end": 5904, + "start": 5889, + "end": 5894, "loc": { "start": { "line": 261, @@ -17193,8 +17111,8 @@ ], "body": { "type": "BlockStatement", - "start": 5908, - "end": 5949, + "start": 5898, + "end": 5939, "loc": { "start": { "line": 261, @@ -17208,8 +17126,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 5912, - "end": 5931, + "start": 5902, + "end": 5921, "loc": { "start": { "line": 262, @@ -17222,8 +17140,8 @@ }, "expression": { "type": "CallExpression", - "start": 5912, - "end": 5930, + "start": 5902, + "end": 5920, "loc": { "start": { "line": 262, @@ -17236,8 +17154,8 @@ }, "callee": { "type": "MemberExpression", - "start": 5912, - "end": 5923, + "start": 5902, + "end": 5913, "loc": { "start": { "line": 262, @@ -17250,8 +17168,8 @@ }, "object": { "type": "Identifier", - "start": 5912, - "end": 5919, + "start": 5902, + "end": 5909, "loc": { "start": { "line": 262, @@ -17267,8 +17185,8 @@ }, "property": { "type": "Identifier", - "start": 5920, - "end": 5923, + "start": 5910, + "end": 5913, "loc": { "start": { "line": 262, @@ -17287,8 +17205,8 @@ "arguments": [ { "type": "Identifier", - "start": 5924, - "end": 5929, + "start": 5914, + "end": 5919, "loc": { "start": { "line": 262, @@ -17307,8 +17225,8 @@ }, { "type": "ReturnStatement", - "start": 5934, - "end": 5947, + "start": 5924, + "end": 5937, "loc": { "start": { "line": 263, @@ -17321,8 +17239,8 @@ }, "argument": { "type": "Identifier", - "start": 5941, - "end": 5946, + "start": 5931, + "end": 5936, "loc": { "start": { "line": 263, @@ -17345,8 +17263,8 @@ }, { "type": "ExpressionStatement", - "start": 5952, - "end": 6018, + "start": 5942, + "end": 6008, "loc": { "start": { "line": 266, @@ -17359,8 +17277,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 5952, - "end": 6017, + "start": 5942, + "end": 6007, "loc": { "start": { "line": 266, @@ -17374,8 +17292,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 5952, - "end": 5965, + "start": 5942, + "end": 5955, "loc": { "start": { "line": 266, @@ -17388,8 +17306,8 @@ }, "object": { "type": "Identifier", - "start": 5952, - "end": 5958, + "start": 5942, + "end": 5948, "loc": { "start": { "line": 266, @@ -17405,8 +17323,8 @@ }, "property": { "type": "StringLiteral", - "start": 5959, - "end": 5964, + "start": 5949, + "end": 5954, "loc": { "start": { "line": 266, @@ -17427,8 +17345,8 @@ }, "right": { "type": "AssignmentExpression", - "start": 5968, - "end": 6017, + "start": 5958, + "end": 6007, "loc": { "start": { "line": 266, @@ -17442,8 +17360,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 5968, - "end": 5983, + "start": 5958, + "end": 5973, "loc": { "start": { "line": 266, @@ -17456,8 +17374,8 @@ }, "object": { "type": "Identifier", - "start": 5968, - "end": 5974, + "start": 5958, + "end": 5964, "loc": { "start": { "line": 266, @@ -17473,8 +17391,8 @@ }, "property": { "type": "StringLiteral", - "start": 5975, - "end": 5982, + "start": 5965, + "end": 5972, "loc": { "start": { "line": 266, @@ -17495,8 +17413,8 @@ }, "right": { "type": "ArrowFunctionExpression", - "start": 5986, - "end": 6017, + "start": 5976, + "end": 6007, "loc": { "start": { "line": 266, @@ -17514,8 +17432,8 @@ "params": [ { "type": "RestElement", - "start": 5987, - "end": 5994, + "start": 5977, + "end": 5984, "loc": { "start": { "line": 266, @@ -17528,8 +17446,8 @@ }, "argument": { "type": "Identifier", - "start": 5990, - "end": 5994, + "start": 5980, + "end": 5984, "loc": { "start": { "line": 266, @@ -17547,8 +17465,8 @@ ], "body": { "type": "BlockStatement", - "start": 5999, - "end": 6017, + "start": 5989, + "end": 6007, "loc": { "start": { "line": 266, @@ -17562,8 +17480,8 @@ "body": [ { "type": "ReturnStatement", - "start": 6003, - "end": 6015, + "start": 5993, + "end": 6005, "loc": { "start": { "line": 267, @@ -17576,8 +17494,8 @@ }, "argument": { "type": "Identifier", - "start": 6010, - "end": 6014, + "start": 6000, + "end": 6004, "loc": { "start": { "line": 267, @@ -17601,8 +17519,8 @@ }, { "type": "ExpressionStatement", - "start": 6020, - "end": 6110, + "start": 6010, + "end": 6100, "loc": { "start": { "line": 270, @@ -17615,8 +17533,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 6020, - "end": 6109, + "start": 6010, + "end": 6099, "loc": { "start": { "line": 270, @@ -17630,8 +17548,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 6020, - "end": 6033, + "start": 6010, + "end": 6023, "loc": { "start": { "line": 270, @@ -17644,8 +17562,8 @@ }, "object": { "type": "Identifier", - "start": 6020, - "end": 6026, + "start": 6010, + "end": 6016, "loc": { "start": { "line": 270, @@ -17661,8 +17579,8 @@ }, "property": { "type": "StringLiteral", - "start": 6027, - "end": 6032, + "start": 6017, + "end": 6022, "loc": { "start": { "line": 270, @@ -17683,8 +17601,8 @@ }, "right": { "type": "AssignmentExpression", - "start": 6036, - "end": 6109, + "start": 6026, + "end": 6099, "loc": { "start": { "line": 270, @@ -17698,8 +17616,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 6036, - "end": 6050, + "start": 6026, + "end": 6040, "loc": { "start": { "line": 270, @@ -17712,8 +17630,8 @@ }, "object": { "type": "Identifier", - "start": 6036, - "end": 6042, + "start": 6026, + "end": 6032, "loc": { "start": { "line": 270, @@ -17729,8 +17647,8 @@ }, "property": { "type": "StringLiteral", - "start": 6043, - "end": 6049, + "start": 6033, + "end": 6039, "loc": { "start": { "line": 270, @@ -17751,8 +17669,8 @@ }, "right": { "type": "ArrowFunctionExpression", - "start": 6053, - "end": 6109, + "start": 6043, + "end": 6099, "loc": { "start": { "line": 270, @@ -17770,8 +17688,8 @@ "params": [ { "type": "RestElement", - "start": 6054, - "end": 6061, + "start": 6044, + "end": 6051, "loc": { "start": { "line": 270, @@ -17784,8 +17702,8 @@ }, "argument": { "type": "Identifier", - "start": 6057, - "end": 6061, + "start": 6047, + "end": 6051, "loc": { "start": { "line": 270, @@ -17803,8 +17721,8 @@ ], "body": { "type": "BlockStatement", - "start": 6066, - "end": 6109, + "start": 6056, + "end": 6099, "loc": { "start": { "line": 270, @@ -17818,8 +17736,8 @@ "body": [ { "type": "ReturnStatement", - "start": 6070, - "end": 6107, + "start": 6060, + "end": 6097, "loc": { "start": { "line": 271, @@ -17832,8 +17750,8 @@ }, "argument": { "type": "NewExpression", - "start": 6077, - "end": 6106, + "start": 6067, + "end": 6096, "loc": { "start": { "line": 271, @@ -17846,8 +17764,8 @@ }, "callee": { "type": "Identifier", - "start": 6081, - "end": 6084, + "start": 6071, + "end": 6074, "loc": { "start": { "line": 271, @@ -17864,8 +17782,8 @@ "arguments": [ { "type": "CallExpression", - "start": 6085, - "end": 6105, + "start": 6075, + "end": 6095, "loc": { "start": { "line": 271, @@ -17878,8 +17796,8 @@ }, "callee": { "type": "MemberExpression", - "start": 6085, - "end": 6096, + "start": 6075, + "end": 6086, "loc": { "start": { "line": 271, @@ -17892,8 +17810,8 @@ }, "object": { "type": "Identifier", - "start": 6085, - "end": 6090, + "start": 6075, + "end": 6080, "loc": { "start": { "line": 271, @@ -17909,8 +17827,8 @@ }, "property": { "type": "Identifier", - "start": 6091, - "end": 6096, + "start": 6081, + "end": 6086, "loc": { "start": { "line": 271, @@ -17929,8 +17847,8 @@ "arguments": [ { "type": "Identifier", - "start": 6097, - "end": 6101, + "start": 6087, + "end": 6091, "loc": { "start": { "line": 271, @@ -17946,8 +17864,8 @@ }, { "type": "NumericLiteral", - "start": 6103, - "end": 6104, + "start": 6093, + "end": 6094, "loc": { "start": { "line": 271, @@ -17978,8 +17896,8 @@ }, { "type": "ExpressionStatement", - "start": 6112, - "end": 6223, + "start": 6102, + "end": 6213, "loc": { "start": { "line": 274, @@ -17992,8 +17910,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 6112, - "end": 6222, + "start": 6102, + "end": 6212, "loc": { "start": { "line": 274, @@ -18007,8 +17925,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 6112, - "end": 6124, + "start": 6102, + "end": 6114, "loc": { "start": { "line": 274, @@ -18021,8 +17939,8 @@ }, "object": { "type": "Identifier", - "start": 6112, - "end": 6118, + "start": 6102, + "end": 6108, "loc": { "start": { "line": 274, @@ -18038,8 +17956,8 @@ }, "property": { "type": "StringLiteral", - "start": 6119, - "end": 6123, + "start": 6109, + "end": 6113, "loc": { "start": { "line": 274, @@ -18060,8 +17978,8 @@ }, "right": { "type": "AssignmentExpression", - "start": 6127, - "end": 6222, + "start": 6117, + "end": 6212, "loc": { "start": { "line": 274, @@ -18075,8 +17993,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 6127, - "end": 6139, + "start": 6117, + "end": 6129, "loc": { "start": { "line": 274, @@ -18089,8 +18007,8 @@ }, "object": { "type": "Identifier", - "start": 6127, - "end": 6133, + "start": 6117, + "end": 6123, "loc": { "start": { "line": 274, @@ -18106,8 +18024,8 @@ }, "property": { "type": "StringLiteral", - "start": 6134, - "end": 6138, + "start": 6124, + "end": 6128, "loc": { "start": { "line": 274, @@ -18128,8 +18046,8 @@ }, "right": { "type": "AssignmentExpression", - "start": 6142, - "end": 6222, + "start": 6132, + "end": 6212, "loc": { "start": { "line": 274, @@ -18143,8 +18061,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 6142, - "end": 6159, + "start": 6132, + "end": 6149, "loc": { "start": { "line": 274, @@ -18157,8 +18075,8 @@ }, "object": { "type": "Identifier", - "start": 6142, - "end": 6148, + "start": 6132, + "end": 6138, "loc": { "start": { "line": 274, @@ -18174,8 +18092,8 @@ }, "property": { "type": "StringLiteral", - "start": 6149, - "end": 6158, + "start": 6139, + "end": 6148, "loc": { "start": { "line": 274, @@ -18196,8 +18114,8 @@ }, "right": { "type": "ArrowFunctionExpression", - "start": 6162, - "end": 6222, + "start": 6152, + "end": 6212, "loc": { "start": { "line": 274, @@ -18215,8 +18133,8 @@ "params": [ { "type": "Identifier", - "start": 6163, - "end": 6169, + "start": 6153, + "end": 6159, "loc": { "start": { "line": 274, @@ -18232,8 +18150,8 @@ }, { "type": "RestElement", - "start": 6171, - "end": 6181, + "start": 6161, + "end": 6171, "loc": { "start": { "line": 274, @@ -18246,8 +18164,8 @@ }, "argument": { "type": "Identifier", - "start": 6174, - "end": 6181, + "start": 6164, + "end": 6171, "loc": { "start": { "line": 274, @@ -18265,8 +18183,8 @@ ], "body": { "type": "BlockStatement", - "start": 6186, - "end": 6222, + "start": 6176, + "end": 6212, "loc": { "start": { "line": 274, @@ -18280,8 +18198,8 @@ "body": [ { "type": "ReturnStatement", - "start": 6190, - "end": 6220, + "start": 6180, + "end": 6210, "loc": { "start": { "line": 275, @@ -18294,8 +18212,8 @@ }, "argument": { "type": "CallExpression", - "start": 6197, - "end": 6219, + "start": 6187, + "end": 6209, "loc": { "start": { "line": 275, @@ -18308,8 +18226,8 @@ }, "callee": { "type": "MemberExpression", - "start": 6197, - "end": 6207, + "start": 6187, + "end": 6197, "loc": { "start": { "line": 275, @@ -18322,8 +18240,8 @@ }, "object": { "type": "Identifier", - "start": 6197, - "end": 6203, + "start": 6187, + "end": 6193, "loc": { "start": { "line": 275, @@ -18339,8 +18257,8 @@ }, "property": { "type": "Identifier", - "start": 6204, - "end": 6207, + "start": 6194, + "end": 6197, "loc": { "start": { "line": 275, @@ -18359,8 +18277,8 @@ "arguments": [ { "type": "SpreadElement", - "start": 6208, - "end": 6218, + "start": 6198, + "end": 6208, "loc": { "start": { "line": 275, @@ -18373,8 +18291,8 @@ }, "argument": { "type": "Identifier", - "start": 6211, - "end": 6218, + "start": 6201, + "end": 6208, "loc": { "start": { "line": 275, @@ -18402,8 +18320,8 @@ }, { "type": "ExpressionStatement", - "start": 6225, - "end": 6280, + "start": 6215, + "end": 6270, "loc": { "start": { "line": 278, @@ -18416,8 +18334,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 6225, - "end": 6279, + "start": 6215, + "end": 6269, "loc": { "start": { "line": 278, @@ -18431,8 +18349,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 6225, - "end": 6241, + "start": 6215, + "end": 6231, "loc": { "start": { "line": 278, @@ -18445,8 +18363,8 @@ }, "object": { "type": "Identifier", - "start": 6225, - "end": 6231, + "start": 6215, + "end": 6221, "loc": { "start": { "line": 278, @@ -18462,8 +18380,8 @@ }, "property": { "type": "StringLiteral", - "start": 6232, - "end": 6240, + "start": 6222, + "end": 6230, "loc": { "start": { "line": 278, @@ -18484,8 +18402,8 @@ }, "right": { "type": "ArrowFunctionExpression", - "start": 6244, - "end": 6279, + "start": 6234, + "end": 6269, "loc": { "start": { "line": 278, @@ -18503,8 +18421,8 @@ "params": [ { "type": "Identifier", - "start": 6244, - "end": 6249, + "start": 6234, + "end": 6239, "loc": { "start": { "line": 278, @@ -18521,8 +18439,8 @@ ], "body": { "type": "BlockStatement", - "start": 6253, - "end": 6279, + "start": 6243, + "end": 6269, "loc": { "start": { "line": 278, @@ -18536,8 +18454,8 @@ "body": [ { "type": "ReturnStatement", - "start": 6257, - "end": 6277, + "start": 6247, + "end": 6267, "loc": { "start": { "line": 279, @@ -18550,8 +18468,8 @@ }, "argument": { "type": "MemberExpression", - "start": 6264, - "end": 6276, + "start": 6254, + "end": 6266, "loc": { "start": { "line": 279, @@ -18564,8 +18482,8 @@ }, "object": { "type": "Identifier", - "start": 6264, - "end": 6269, + "start": 6254, + "end": 6259, "loc": { "start": { "line": 279, @@ -18581,8 +18499,8 @@ }, "property": { "type": "Identifier", - "start": 6270, - "end": 6276, + "start": 6260, + "end": 6266, "loc": { "start": { "line": 279, @@ -18607,8 +18525,8 @@ }, { "type": "ExpressionStatement", - "start": 6282, - "end": 6361, + "start": 6272, + "end": 6351, "loc": { "start": { "line": 282, @@ -18621,8 +18539,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 6282, - "end": 6360, + "start": 6272, + "end": 6350, "loc": { "start": { "line": 282, @@ -18636,8 +18554,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 6282, - "end": 6298, + "start": 6272, + "end": 6288, "loc": { "start": { "line": 282, @@ -18650,8 +18568,8 @@ }, "object": { "type": "Identifier", - "start": 6282, - "end": 6288, + "start": 6272, + "end": 6278, "loc": { "start": { "line": 282, @@ -18667,8 +18585,8 @@ }, "property": { "type": "StringLiteral", - "start": 6289, - "end": 6297, + "start": 6279, + "end": 6287, "loc": { "start": { "line": 282, @@ -18689,8 +18607,8 @@ }, "right": { "type": "ArrowFunctionExpression", - "start": 6301, - "end": 6360, + "start": 6291, + "end": 6350, "loc": { "start": { "line": 282, @@ -18708,8 +18626,8 @@ "params": [ { "type": "Identifier", - "start": 6302, - "end": 6308, + "start": 6292, + "end": 6298, "loc": { "start": { "line": 282, @@ -18725,8 +18643,8 @@ }, { "type": "RestElement", - "start": 6310, - "end": 6317, + "start": 6300, + "end": 6307, "loc": { "start": { "line": 282, @@ -18739,8 +18657,8 @@ }, "argument": { "type": "Identifier", - "start": 6313, - "end": 6317, + "start": 6303, + "end": 6307, "loc": { "start": { "line": 282, @@ -18758,8 +18676,8 @@ ], "body": { "type": "BlockStatement", - "start": 6322, - "end": 6360, + "start": 6312, + "end": 6350, "loc": { "start": { "line": 282, @@ -18773,8 +18691,8 @@ "body": [ { "type": "ReturnStatement", - "start": 6326, - "end": 6358, + "start": 6316, + "end": 6348, "loc": { "start": { "line": 283, @@ -18787,8 +18705,8 @@ }, "argument": { "type": "CallExpression", - "start": 6333, - "end": 6357, + "start": 6323, + "end": 6347, "loc": { "start": { "line": 283, @@ -18801,8 +18719,8 @@ }, "callee": { "type": "MemberExpression", - "start": 6333, - "end": 6348, + "start": 6323, + "end": 6338, "loc": { "start": { "line": 283, @@ -18815,8 +18733,8 @@ }, "object": { "type": "Identifier", - "start": 6333, - "end": 6340, + "start": 6323, + "end": 6330, "loc": { "start": { "line": 283, @@ -18832,8 +18750,8 @@ }, "property": { "type": "Identifier", - "start": 6341, - "end": 6347, + "start": 6331, + "end": 6337, "loc": { "start": { "line": 283, @@ -18852,8 +18770,8 @@ "arguments": [ { "type": "SpreadElement", - "start": 6349, - "end": 6356, + "start": 6339, + "end": 6346, "loc": { "start": { "line": 283, @@ -18866,8 +18784,8 @@ }, "argument": { "type": "Identifier", - "start": 6352, - "end": 6356, + "start": 6342, + "end": 6346, "loc": { "start": { "line": 283, @@ -18893,8 +18811,8 @@ }, { "type": "ExpressionStatement", - "start": 6363, - "end": 6427, + "start": 6353, + "end": 6417, "loc": { "start": { "line": 286, @@ -18907,8 +18825,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 6363, - "end": 6426, + "start": 6353, + "end": 6416, "loc": { "start": { "line": 286, @@ -18922,8 +18840,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 6363, - "end": 6378, + "start": 6353, + "end": 6368, "loc": { "start": { "line": 286, @@ -18936,8 +18854,8 @@ }, "object": { "type": "Identifier", - "start": 6363, - "end": 6369, + "start": 6353, + "end": 6359, "loc": { "start": { "line": 286, @@ -18953,8 +18871,8 @@ }, "property": { "type": "StringLiteral", - "start": 6370, - "end": 6377, + "start": 6360, + "end": 6367, "loc": { "start": { "line": 286, @@ -18975,8 +18893,8 @@ }, "right": { "type": "ArrowFunctionExpression", - "start": 6381, - "end": 6426, + "start": 6371, + "end": 6416, "loc": { "start": { "line": 286, @@ -18994,8 +18912,8 @@ "params": [ { "type": "Identifier", - "start": 6381, - "end": 6387, + "start": 6371, + "end": 6377, "loc": { "start": { "line": 286, @@ -19012,8 +18930,8 @@ ], "body": { "type": "BlockStatement", - "start": 6391, - "end": 6426, + "start": 6381, + "end": 6416, "loc": { "start": { "line": 286, @@ -19027,8 +18945,8 @@ "body": [ { "type": "ReturnStatement", - "start": 6395, - "end": 6424, + "start": 6385, + "end": 6414, "loc": { "start": { "line": 287, @@ -19041,8 +18959,8 @@ }, "argument": { "type": "CallExpression", - "start": 6402, - "end": 6423, + "start": 6392, + "end": 6413, "loc": { "start": { "line": 287, @@ -19055,8 +18973,8 @@ }, "callee": { "type": "MemberExpression", - "start": 6402, - "end": 6415, + "start": 6392, + "end": 6405, "loc": { "start": { "line": 287, @@ -19069,8 +18987,8 @@ }, "object": { "type": "Identifier", - "start": 6402, - "end": 6408, + "start": 6392, + "end": 6398, "loc": { "start": { "line": 287, @@ -19086,8 +19004,8 @@ }, "property": { "type": "Identifier", - "start": 6409, - "end": 6415, + "start": 6399, + "end": 6405, "loc": { "start": { "line": 287, @@ -19106,8 +19024,8 @@ "arguments": [ { "type": "Identifier", - "start": 6416, - "end": 6422, + "start": 6406, + "end": 6412, "loc": { "start": { "line": 287, @@ -19132,8 +19050,8 @@ }, { "type": "ExpressionStatement", - "start": 6429, - "end": 6471, + "start": 6419, + "end": 6461, "loc": { "start": { "line": 290, @@ -19146,8 +19064,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 6429, - "end": 6470, + "start": 6419, + "end": 6460, "loc": { "start": { "line": 290, @@ -19161,8 +19079,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 6429, - "end": 6444, + "start": 6419, + "end": 6434, "loc": { "start": { "line": 290, @@ -19175,8 +19093,8 @@ }, "object": { "type": "Identifier", - "start": 6429, - "end": 6435, + "start": 6419, + "end": 6425, "loc": { "start": { "line": 290, @@ -19192,8 +19110,8 @@ }, "property": { "type": "StringLiteral", - "start": 6436, - "end": 6443, + "start": 6426, + "end": 6433, "loc": { "start": { "line": 290, @@ -19214,8 +19132,8 @@ }, "right": { "type": "ArrowFunctionExpression", - "start": 6447, - "end": 6470, + "start": 6437, + "end": 6460, "loc": { "start": { "line": 290, @@ -19233,8 +19151,8 @@ "params": [ { "type": "Identifier", - "start": 6447, - "end": 6450, + "start": 6437, + "end": 6440, "loc": { "start": { "line": 290, @@ -19251,8 +19169,8 @@ ], "body": { "type": "BlockStatement", - "start": 6454, - "end": 6470, + "start": 6444, + "end": 6460, "loc": { "start": { "line": 290, @@ -19266,8 +19184,8 @@ "body": [ { "type": "ThrowStatement", - "start": 6458, - "end": 6468, + "start": 6448, + "end": 6458, "loc": { "start": { "line": 291, @@ -19280,8 +19198,8 @@ }, "argument": { "type": "Identifier", - "start": 6464, - "end": 6467, + "start": 6454, + "end": 6457, "loc": { "start": { "line": 291, @@ -19305,8 +19223,8 @@ { "type": "CommentLine", "value": " WIP: Continue implementing class?", - "start": 6473, - "end": 6509, + "start": 6463, + "end": 6499, "loc": { "start": { "line": 294, @@ -19321,8 +19239,8 @@ { "type": "CommentLine", "value": " TopEnv['new'] = (...args) => {", - "start": 6510, - "end": 6543, + "start": 6500, + "end": 6533, "loc": { "start": { "line": 295, @@ -19337,8 +19255,8 @@ { "type": "CommentLine", "value": " const className = args[0];", - "start": 6544, - "end": 6575, + "start": 6534, + "end": 6565, "loc": { "start": { "line": 296, @@ -19353,8 +19271,8 @@ { "type": "CommentLine", "value": "", - "start": 6576, - "end": 6578, + "start": 6566, + "end": 6568, "loc": { "start": { "line": 297, @@ -19369,8 +19287,8 @@ { "type": "CommentLine", "value": " // TODO: Check for more exceptions", - "start": 6579, - "end": 6618, + "start": 6569, + "end": 6608, "loc": { "start": { "line": 298, @@ -19385,8 +19303,8 @@ { "type": "CommentLine", "value": " if(typeof className !== \"function\") {", - "start": 6619, - "end": 6661, + "start": 6609, + "end": 6651, "loc": { "start": { "line": 299, @@ -19401,8 +19319,8 @@ { "type": "CommentLine", "value": " throw new SyntaxError(`${className} must be a class with a constructor.`)", - "start": 6662, - "end": 6742, + "start": 6652, + "end": 6732, "loc": { "start": { "line": 300, @@ -19417,8 +19335,8 @@ { "type": "CommentLine", "value": " }", - "start": 6743, - "end": 6749, + "start": 6733, + "end": 6739, "loc": { "start": { "line": 301, @@ -19433,8 +19351,8 @@ { "type": "CommentLine", "value": "", - "start": 6750, - "end": 6752, + "start": 6740, + "end": 6742, "loc": { "start": { "line": 302, @@ -19449,8 +19367,8 @@ { "type": "CommentLine", "value": " return new className(...args.slice(1));", - "start": 6753, - "end": 6797, + "start": 6743, + "end": 6787, "loc": { "start": { "line": 303, @@ -19465,8 +19383,8 @@ { "type": "CommentLine", "value": "", - "start": 6798, - "end": 6800, + "start": 6788, + "end": 6790, "loc": { "start": { "line": 304, @@ -19481,221 +19399,129 @@ ] }, { - "type": "ExpressionStatement", - "start": 6802, - "end": 6848, + "type": "ExportNamedDeclaration", + "start": 6792, + "end": 6826, "loc": { "start": { "line": 306, "column": 0 }, "end": { - "line": 309, - "column": 2 + "line": 307, + "column": 11 } }, - "expression": { - "type": "AssignmentExpression", - "start": 6802, - "end": 6847, - "loc": { - "start": { - "line": 306, - "column": 0 - }, - "end": { - "line": 309, - "column": 1 - } - }, - "operator": "=", - "left": { - "type": "MemberExpression", - "start": 6802, - "end": 6816, + "declaration": null, + "specifiers": [ + { + "type": "ExportSpecifier", + "start": 6801, + "end": 6813, "loc": { "start": { "line": 306, - "column": 0 + "column": 9 }, "end": { "line": 306, - "column": 14 + "column": 21 } }, - "object": { + "local": { "type": "Identifier", - "start": 6802, - "end": 6808, + "start": 6801, + "end": 6813, "loc": { "start": { "line": 306, - "column": 0 + "column": 9 }, "end": { "line": 306, - "column": 6 + "column": 21 }, - "identifierName": "module" + "identifierName": "SpecialForms" }, - "name": "module", + "name": "SpecialForms", "leadingComments": null }, - "property": { + "exported": { "type": "Identifier", - "start": 6809, - "end": 6816, + "start": 6801, + "end": 6813, "loc": { "start": { "line": 306, - "column": 7 + "column": 9 }, "end": { "line": 306, - "column": 14 + "column": 21 }, - "identifierName": "exports" + "identifierName": "SpecialForms" }, - "name": "exports" + "name": "SpecialForms" }, - "computed": false, "leadingComments": null }, - "right": { - "type": "ObjectExpression", - "start": 6819, - "end": 6847, + { + "type": "ExportSpecifier", + "start": 6817, + "end": 6823, "loc": { "start": { - "line": 306, - "column": 17 + "line": 307, + "column": 2 }, "end": { - "line": 309, - "column": 1 + "line": 307, + "column": 8 } }, - "properties": [ - { - "type": "ObjectProperty", - "start": 6823, - "end": 6835, - "loc": { - "start": { - "line": 307, - "column": 2 - }, - "end": { - "line": 307, - "column": 14 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 6823, - "end": 6835, - "loc": { - "start": { - "line": 307, - "column": 2 - }, - "end": { - "line": 307, - "column": 14 - }, - "identifierName": "SpecialForms" - }, - "name": "SpecialForms" + "local": { + "type": "Identifier", + "start": 6817, + "end": 6823, + "loc": { + "start": { + "line": 307, + "column": 2 }, - "value": { - "type": "Identifier", - "start": 6823, - "end": 6835, - "loc": { - "start": { - "line": 307, - "column": 2 - }, - "end": { - "line": 307, - "column": 14 - }, - "identifierName": "SpecialForms" - }, - "name": "SpecialForms" + "end": { + "line": 307, + "column": 8 }, - "extra": { - "shorthand": true - } + "identifierName": "TopEnv" }, - { - "type": "ObjectProperty", - "start": 6839, - "end": 6845, - "loc": { - "start": { - "line": 308, - "column": 2 - }, - "end": { - "line": 308, - "column": 8 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 6839, - "end": 6845, - "loc": { - "start": { - "line": 308, - "column": 2 - }, - "end": { - "line": 308, - "column": 8 - }, - "identifierName": "TopEnv" - }, - "name": "TopEnv" + "name": "TopEnv" + }, + "exported": { + "type": "Identifier", + "start": 6817, + "end": 6823, + "loc": { + "start": { + "line": 307, + "column": 2 }, - "value": { - "type": "Identifier", - "start": 6839, - "end": 6845, - "loc": { - "start": { - "line": 308, - "column": 2 - }, - "end": { - "line": 308, - "column": 8 - }, - "identifierName": "TopEnv" - }, - "name": "TopEnv" + "end": { + "line": 307, + "column": 8 }, - "extra": { - "shorthand": true - } - } - ] - }, - "leadingComments": null - }, + "identifierName": "TopEnv" + }, + "name": "TopEnv" + } + } + ], + "source": null, "leadingComments": [ { "type": "CommentLine", "value": " WIP: Continue implementing class?", - "start": 6473, - "end": 6509, + "start": 6463, + "end": 6499, "loc": { "start": { "line": 294, @@ -19710,8 +19536,8 @@ { "type": "CommentLine", "value": " TopEnv['new'] = (...args) => {", - "start": 6510, - "end": 6543, + "start": 6500, + "end": 6533, "loc": { "start": { "line": 295, @@ -19726,8 +19552,8 @@ { "type": "CommentLine", "value": " const className = args[0];", - "start": 6544, - "end": 6575, + "start": 6534, + "end": 6565, "loc": { "start": { "line": 296, @@ -19742,8 +19568,8 @@ { "type": "CommentLine", "value": "", - "start": 6576, - "end": 6578, + "start": 6566, + "end": 6568, "loc": { "start": { "line": 297, @@ -19758,8 +19584,8 @@ { "type": "CommentLine", "value": " // TODO: Check for more exceptions", - "start": 6579, - "end": 6618, + "start": 6569, + "end": 6608, "loc": { "start": { "line": 298, @@ -19774,8 +19600,8 @@ { "type": "CommentLine", "value": " if(typeof className !== \"function\") {", - "start": 6619, - "end": 6661, + "start": 6609, + "end": 6651, "loc": { "start": { "line": 299, @@ -19790,8 +19616,8 @@ { "type": "CommentLine", "value": " throw new SyntaxError(`${className} must be a class with a constructor.`)", - "start": 6662, - "end": 6742, + "start": 6652, + "end": 6732, "loc": { "start": { "line": 300, @@ -19806,8 +19632,8 @@ { "type": "CommentLine", "value": " }", - "start": 6743, - "end": 6749, + "start": 6733, + "end": 6739, "loc": { "start": { "line": 301, @@ -19822,8 +19648,8 @@ { "type": "CommentLine", "value": "", - "start": 6750, - "end": 6752, + "start": 6740, + "end": 6742, "loc": { "start": { "line": 302, @@ -19838,8 +19664,8 @@ { "type": "CommentLine", "value": " return new className(...args.slice(1));", - "start": 6753, - "end": 6797, + "start": 6743, + "end": 6787, "loc": { "start": { "line": 303, @@ -19854,8 +19680,8 @@ { "type": "CommentLine", "value": "", - "start": 6798, - "end": 6800, + "start": 6788, + "end": 6790, "loc": { "start": { "line": 304, @@ -19868,6 +19694,329 @@ } } ] + }, + { + "type": "ExportNamedDeclaration", + "start": 6792, + "end": 6826, + "loc": { + "start": { + "line": 306, + "column": 0 + }, + "end": { + "line": 307, + "column": 11 + } + }, + "declaration": { + "type": "VariableDeclaration", + "start": 98, + "end": 139, + "loc": { + "start": { + "line": 6, + "column": 0 + }, + "end": { + "line": 6, + "column": 41 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 104, + "end": 138, + "loc": { + "start": { + "line": 6, + "column": 6 + }, + "end": { + "line": 6, + "column": 40 + } + }, + "id": { + "type": "Identifier", + "start": 104, + "end": 116, + "loc": { + "start": { + "line": 6, + "column": 6 + }, + "end": { + "line": 6, + "column": 18 + }, + "identifierName": "SpecialForms" + }, + "name": "SpecialForms", + "leadingComments": null + }, + "init": { + "type": "CallExpression", + "start": 119, + "end": 138, + "loc": { + "start": { + "line": 6, + "column": 21 + }, + "end": { + "line": 6, + "column": 40 + } + }, + "callee": { + "type": "MemberExpression", + "start": 119, + "end": 132, + "loc": { + "start": { + "line": 6, + "column": 21 + }, + "end": { + "line": 6, + "column": 34 + } + }, + "object": { + "type": "Identifier", + "start": 119, + "end": 125, + "loc": { + "start": { + "line": 6, + "column": 21 + }, + "end": { + "line": 6, + "column": 27 + }, + "identifierName": "Object" + }, + "name": "Object" + }, + "property": { + "type": "Identifier", + "start": 126, + "end": 132, + "loc": { + "start": { + "line": 6, + "column": 28 + }, + "end": { + "line": 6, + "column": 34 + }, + "identifierName": "create" + }, + "name": "create" + }, + "computed": false + }, + "arguments": [ + { + "type": "NullLiteral", + "start": 133, + "end": 137, + "loc": { + "start": { + "line": 6, + "column": 35 + }, + "end": { + "line": 6, + "column": 39 + } + } + } + ] + }, + "leadingComments": null + } + ], + "kind": "const", + "leadingComments": [ + { + "type": "CommentLine", + "value": " specialForms and topEnv maps", + "start": 66, + "end": 97, + "loc": { + "start": { + "line": 5, + "column": 0 + }, + "end": { + "line": 5, + "column": 31 + } + } + } + ], + "trailingComments": [] + }, + "specifiers": null, + "source": null, + "leadingComments": null + }, + { + "type": "ExportNamedDeclaration", + "start": 6792, + "end": 6826, + "loc": { + "start": { + "line": 306, + "column": 0 + }, + "end": { + "line": 307, + "column": 11 + } + }, + "declaration": { + "type": "VariableDeclaration", + "start": 140, + "end": 175, + "loc": { + "start": { + "line": 7, + "column": 0 + }, + "end": { + "line": 7, + "column": 35 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 146, + "end": 174, + "loc": { + "start": { + "line": 7, + "column": 6 + }, + "end": { + "line": 7, + "column": 34 + } + }, + "id": { + "type": "Identifier", + "start": 146, + "end": 152, + "loc": { + "start": { + "line": 7, + "column": 6 + }, + "end": { + "line": 7, + "column": 12 + }, + "identifierName": "TopEnv" + }, + "name": "TopEnv" + }, + "init": { + "type": "CallExpression", + "start": 155, + "end": 174, + "loc": { + "start": { + "line": 7, + "column": 15 + }, + "end": { + "line": 7, + "column": 34 + } + }, + "callee": { + "type": "MemberExpression", + "start": 155, + "end": 168, + "loc": { + "start": { + "line": 7, + "column": 15 + }, + "end": { + "line": 7, + "column": 28 + } + }, + "object": { + "type": "Identifier", + "start": 155, + "end": 161, + "loc": { + "start": { + "line": 7, + "column": 15 + }, + "end": { + "line": 7, + "column": 21 + }, + "identifierName": "Object" + }, + "name": "Object" + }, + "property": { + "type": "Identifier", + "start": 162, + "end": 168, + "loc": { + "start": { + "line": 7, + "column": 22 + }, + "end": { + "line": 7, + "column": 28 + }, + "identifierName": "create" + }, + "name": "create" + }, + "computed": false + }, + "arguments": [ + { + "type": "NullLiteral", + "start": 169, + "end": 173, + "loc": { + "start": { + "line": 7, + "column": 29 + }, + "end": { + "line": 7, + "column": 33 + } + } + } + ] + } + } + ], + "kind": "const", + "leadingComments": [], + "trailingComments": [] + }, + "specifiers": null, + "source": null, + "leadingComments": null } ], "directives": [] @@ -19876,8 +20025,8 @@ { "type": "CommentLine", "value": " specialForms and topEnv maps", - "start": 76, - "end": 107, + "start": 66, + "end": 97, "loc": { "start": { "line": 5, @@ -19892,8 +20041,8 @@ { "type": "CommentLine", "value": " Egg has no undefined so we return false when there's no meaningful result", - "start": 661, - "end": 737, + "start": 651, + "end": 727, "loc": { "start": { "line": 30, @@ -19908,8 +20057,8 @@ { "type": "CommentLine", "value": " Variable", - "start": 960, - "end": 971, + "start": 950, + "end": 961, "loc": { "start": { "line": 42, @@ -19924,8 +20073,8 @@ { "type": "CommentLine", "value": " Condition", - "start": 1003, - "end": 1015, + "start": 993, + "end": 1005, "loc": { "start": { "line": 45, @@ -19940,8 +20089,8 @@ { "type": "CommentLine", "value": " Body", - "start": 1066, - "end": 1073, + "start": 1056, + "end": 1063, "loc": { "start": { "line": 47, @@ -19956,8 +20105,8 @@ { "type": "CommentLine", "value": " Increment", - "start": 1109, - "end": 1121, + "start": 1099, + "end": 1111, "loc": { "start": { "line": 50, @@ -19972,8 +20121,8 @@ { "type": "CommentLine", "value": " TODO: Reduce code duplication", - "start": 3451, - "end": 3483, + "start": 3441, + "end": 3473, "loc": { "start": { "line": 152, @@ -19988,8 +20137,8 @@ { "type": "CommentLine", "value": " TODO: use hasOwnProperty ?", - "start": 3517, - "end": 3546, + "start": 3507, + "end": 3536, "loc": { "start": { "line": 154, @@ -20004,8 +20153,8 @@ { "type": "CommentLine", "value": " Create a new object and a new scope", - "start": 4189, - "end": 4227, + "start": 4179, + "end": 4217, "loc": { "start": { "line": 182, @@ -20020,8 +20169,8 @@ { "type": "CommentLine", "value": " Add the variable 'this' as a reference to the current object", - "start": 4323, - "end": 4386, + "start": 4313, + "end": 4376, "loc": { "start": { "line": 187, @@ -20036,8 +20185,8 @@ { "type": "CommentLine", "value": " Evaluate the arguments and add the methods/properties to the object", - "start": 4420, - "end": 4490, + "start": 4410, + "end": 4480, "loc": { "start": { "line": 190, @@ -20052,8 +20201,8 @@ { "type": "CommentLine", "value": " TODO: Continue implementing class?", - "start": 5371, - "end": 5408, + "start": 5361, + "end": 5398, "loc": { "start": { "line": 238, @@ -20068,8 +20217,8 @@ { "type": "CommentLine", "value": "", - "start": 5409, - "end": 5411, + "start": 5399, + "end": 5401, "loc": { "start": { "line": 239, @@ -20084,8 +20233,8 @@ { "type": "CommentLine", "value": " SpecialForms['class'] = (args, env) => {", - "start": 5412, - "end": 5455, + "start": 5402, + "end": 5445, "loc": { "start": { "line": 240, @@ -20100,8 +20249,8 @@ { "type": "CommentLine", "value": " // const evArgs = args.map((arg) => evaluate(arg, env));", - "start": 5456, - "end": 5517, + "start": 5446, + "end": 5507, "loc": { "start": { "line": 241, @@ -20116,8 +20265,8 @@ { "type": "CommentLine", "value": "", - "start": 5518, - "end": 5520, + "start": 5508, + "end": 5510, "loc": { "start": { "line": 242, @@ -20132,8 +20281,8 @@ { "type": "CommentLine", "value": " const newClass = function(x, y) {", - "start": 5521, - "end": 5559, + "start": 5511, + "end": 5549, "loc": { "start": { "line": 243, @@ -20148,8 +20297,8 @@ { "type": "CommentLine", "value": " this.x = x;", - "start": 5560, - "end": 5578, + "start": 5550, + "end": 5568, "loc": { "start": { "line": 244, @@ -20164,8 +20313,8 @@ { "type": "CommentLine", "value": " this.y = y;", - "start": 5579, - "end": 5597, + "start": 5569, + "end": 5587, "loc": { "start": { "line": 245, @@ -20180,8 +20329,8 @@ { "type": "CommentLine", "value": " }", - "start": 5598, - "end": 5604, + "start": 5588, + "end": 5594, "loc": { "start": { "line": 246, @@ -20196,8 +20345,8 @@ { "type": "CommentLine", "value": "", - "start": 5605, - "end": 5607, + "start": 5595, + "end": 5597, "loc": { "start": { "line": 247, @@ -20212,8 +20361,8 @@ { "type": "CommentLine", "value": " return newClass;", - "start": 5608, - "end": 5629, + "start": 5598, + "end": 5619, "loc": { "start": { "line": 248, @@ -20228,8 +20377,8 @@ { "type": "CommentLine", "value": " }", - "start": 5630, - "end": 5634, + "start": 5620, + "end": 5624, "loc": { "start": { "line": 249, @@ -20244,8 +20393,8 @@ { "type": "CommentLine", "value": " WIP: Continue implementing class?", - "start": 6473, - "end": 6509, + "start": 6463, + "end": 6499, "loc": { "start": { "line": 294, @@ -20260,8 +20409,8 @@ { "type": "CommentLine", "value": " TopEnv['new'] = (...args) => {", - "start": 6510, - "end": 6543, + "start": 6500, + "end": 6533, "loc": { "start": { "line": 295, @@ -20276,8 +20425,8 @@ { "type": "CommentLine", "value": " const className = args[0];", - "start": 6544, - "end": 6575, + "start": 6534, + "end": 6565, "loc": { "start": { "line": 296, @@ -20292,8 +20441,8 @@ { "type": "CommentLine", "value": "", - "start": 6576, - "end": 6578, + "start": 6566, + "end": 6568, "loc": { "start": { "line": 297, @@ -20308,8 +20457,8 @@ { "type": "CommentLine", "value": " // TODO: Check for more exceptions", - "start": 6579, - "end": 6618, + "start": 6569, + "end": 6608, "loc": { "start": { "line": 298, @@ -20324,8 +20473,8 @@ { "type": "CommentLine", "value": " if(typeof className !== \"function\") {", - "start": 6619, - "end": 6661, + "start": 6609, + "end": 6651, "loc": { "start": { "line": 299, @@ -20340,8 +20489,8 @@ { "type": "CommentLine", "value": " throw new SyntaxError(`${className} must be a class with a constructor.`)", - "start": 6662, - "end": 6742, + "start": 6652, + "end": 6732, "loc": { "start": { "line": 300, @@ -20356,8 +20505,8 @@ { "type": "CommentLine", "value": " }", - "start": 6743, - "end": 6749, + "start": 6733, + "end": 6739, "loc": { "start": { "line": 301, @@ -20372,8 +20521,8 @@ { "type": "CommentLine", "value": "", - "start": 6750, - "end": 6752, + "start": 6740, + "end": 6742, "loc": { "start": { "line": 302, @@ -20388,8 +20537,8 @@ { "type": "CommentLine", "value": " return new className(...args.slice(1));", - "start": 6753, - "end": 6797, + "start": 6743, + "end": 6787, "loc": { "start": { "line": 303, @@ -20404,8 +20553,8 @@ { "type": "CommentLine", "value": "", - "start": 6798, - "end": 6800, + "start": 6788, + "end": 6790, "loc": { "start": { "line": 304, @@ -20421,10 +20570,10 @@ "tokens": [ { "type": { - "label": "const", - "keyword": "const", + "label": "import", + "keyword": "import", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -20433,9 +20582,9 @@ "binop": null, "updateContext": null }, - "value": "const", + "value": "import", "start": 0, - "end": 5, + "end": 6, "loc": { "start": { "line": 1, @@ -20443,7 +20592,7 @@ }, "end": { "line": 1, - "column": 5 + "column": 6 } } }, @@ -20460,43 +20609,16 @@ "binop": null }, "value": "xRegExp", - "start": 6, - "end": 13, + "start": 7, + "end": 14, "loc": { "start": { "line": 1, - "column": 6 + "column": 7 }, "end": { - "line": 1, - "column": 13 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 14, - "end": 15, - "loc": { - "start": { "line": 1, "column": 14 - }, - "end": { - "line": 1, - "column": 15 } } }, @@ -20512,42 +20634,17 @@ "postfix": false, "binop": null }, - "value": "require", - "start": 16, - "end": 23, - "loc": { - "start": { - "line": 1, - "column": 16 - }, - "end": { - "line": 1, - "column": 23 - } - } - }, - { - "type": { - "label": "(", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 23, - "end": 24, + "value": "from", + "start": 15, + "end": 19, "loc": { "start": { "line": 1, - "column": 23 + "column": 15 }, "end": { "line": 1, - "column": 24 + "column": 19 } } }, @@ -20565,41 +20662,16 @@ "updateContext": null }, "value": "xregexp", - "start": 24, - "end": 33, + "start": 20, + "end": 29, "loc": { "start": { "line": 1, - "column": 24 - }, - "end": { - "line": 1, - "column": 33 - } - } - }, - { - "type": { - "label": ")", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 33, - "end": 34, - "loc": { - "start": { - "line": 1, - "column": 33 + "column": 20 }, "end": { "line": 1, - "column": 34 + "column": 29 } } }, @@ -20616,25 +20688,25 @@ "binop": null, "updateContext": null }, - "start": 34, - "end": 35, + "start": 29, + "end": 30, "loc": { "start": { "line": 1, - "column": 34 + "column": 29 }, "end": { "line": 1, - "column": 35 + "column": 30 } } }, { "type": { - "label": "const", - "keyword": "const", + "label": "import", + "keyword": "import", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -20643,9 +20715,9 @@ "binop": null, "updateContext": null }, - "value": "const", - "start": 37, - "end": 42, + "value": "import", + "start": 32, + "end": 38, "loc": { "start": { "line": 3, @@ -20653,7 +20725,7 @@ }, "end": { "line": 3, - "column": 5 + "column": 6 } } }, @@ -20670,43 +20742,16 @@ "binop": null }, "value": "utils", - "start": 43, - "end": 48, + "start": 39, + "end": 44, "loc": { "start": { "line": 3, - "column": 6 + "column": 7 }, "end": { - "line": 3, - "column": 11 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 49, - "end": 50, - "loc": { - "start": { "line": 3, "column": 12 - }, - "end": { - "line": 3, - "column": 13 } } }, @@ -20722,42 +20767,17 @@ "postfix": false, "binop": null }, - "value": "require", - "start": 51, - "end": 58, - "loc": { - "start": { - "line": 3, - "column": 14 - }, - "end": { - "line": 3, - "column": 21 - } - } - }, - { - "type": { - "label": "(", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 58, - "end": 59, + "value": "from", + "start": 45, + "end": 49, "loc": { "start": { "line": 3, - "column": 21 + "column": 13 }, "end": { "line": 3, - "column": 22 + "column": 17 } } }, @@ -20775,41 +20795,16 @@ "updateContext": null }, "value": "../utils.js", - "start": 59, - "end": 72, - "loc": { - "start": { - "line": 3, - "column": 22 - }, - "end": { - "line": 3, - "column": 35 - } - } - }, - { - "type": { - "label": ")", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 72, - "end": 73, + "start": 50, + "end": 63, "loc": { "start": { "line": 3, - "column": 35 + "column": 18 }, "end": { "line": 3, - "column": 36 + "column": 31 } } }, @@ -20826,24 +20821,24 @@ "binop": null, "updateContext": null }, - "start": 73, - "end": 74, + "start": 63, + "end": 64, "loc": { "start": { "line": 3, - "column": 36 + "column": 31 }, "end": { "line": 3, - "column": 37 + "column": 32 } } }, { "type": "CommentLine", "value": " specialForms and topEnv maps", - "start": 76, - "end": 107, + "start": 66, + "end": 97, "loc": { "start": { "line": 5, @@ -20870,8 +20865,8 @@ "updateContext": null }, "value": "const", - "start": 108, - "end": 113, + "start": 98, + "end": 103, "loc": { "start": { "line": 6, @@ -20896,8 +20891,8 @@ "binop": null }, "value": "SpecialForms", - "start": 114, - "end": 126, + "start": 104, + "end": 116, "loc": { "start": { "line": 6, @@ -20923,8 +20918,8 @@ "updateContext": null }, "value": "=", - "start": 127, - "end": 128, + "start": 117, + "end": 118, "loc": { "start": { "line": 6, @@ -20949,8 +20944,8 @@ "binop": null }, "value": "Object", - "start": 129, - "end": 135, + "start": 119, + "end": 125, "loc": { "start": { "line": 6, @@ -20975,8 +20970,8 @@ "binop": null, "updateContext": null }, - "start": 135, - "end": 136, + "start": 125, + "end": 126, "loc": { "start": { "line": 6, @@ -21001,8 +20996,8 @@ "binop": null }, "value": "create", - "start": 136, - "end": 142, + "start": 126, + "end": 132, "loc": { "start": { "line": 6, @@ -21026,8 +21021,8 @@ "postfix": false, "binop": null }, - "start": 142, - "end": 143, + "start": 132, + "end": 133, "loc": { "start": { "line": 6, @@ -21054,8 +21049,8 @@ "updateContext": null }, "value": "null", - "start": 143, - "end": 147, + "start": 133, + "end": 137, "loc": { "start": { "line": 6, @@ -21079,8 +21074,8 @@ "postfix": false, "binop": null }, - "start": 147, - "end": 148, + "start": 137, + "end": 138, "loc": { "start": { "line": 6, @@ -21105,8 +21100,8 @@ "binop": null, "updateContext": null }, - "start": 148, - "end": 149, + "start": 138, + "end": 139, "loc": { "start": { "line": 6, @@ -21133,8 +21128,8 @@ "updateContext": null }, "value": "const", - "start": 150, - "end": 155, + "start": 140, + "end": 145, "loc": { "start": { "line": 7, @@ -21159,8 +21154,8 @@ "binop": null }, "value": "TopEnv", - "start": 156, - "end": 162, + "start": 146, + "end": 152, "loc": { "start": { "line": 7, @@ -21186,8 +21181,8 @@ "updateContext": null }, "value": "=", - "start": 163, - "end": 164, + "start": 153, + "end": 154, "loc": { "start": { "line": 7, @@ -21212,8 +21207,8 @@ "binop": null }, "value": "Object", - "start": 165, - "end": 171, + "start": 155, + "end": 161, "loc": { "start": { "line": 7, @@ -21238,8 +21233,8 @@ "binop": null, "updateContext": null }, - "start": 171, - "end": 172, + "start": 161, + "end": 162, "loc": { "start": { "line": 7, @@ -21264,8 +21259,8 @@ "binop": null }, "value": "create", - "start": 172, - "end": 178, + "start": 162, + "end": 168, "loc": { "start": { "line": 7, @@ -21289,8 +21284,8 @@ "postfix": false, "binop": null }, - "start": 178, - "end": 179, + "start": 168, + "end": 169, "loc": { "start": { "line": 7, @@ -21317,8 +21312,8 @@ "updateContext": null }, "value": "null", - "start": 179, - "end": 183, + "start": 169, + "end": 173, "loc": { "start": { "line": 7, @@ -21342,8 +21337,8 @@ "postfix": false, "binop": null }, - "start": 183, - "end": 184, + "start": 173, + "end": 174, "loc": { "start": { "line": 7, @@ -21368,8 +21363,8 @@ "binop": null, "updateContext": null }, - "start": 184, - "end": 185, + "start": 174, + "end": 175, "loc": { "start": { "line": 7, @@ -21394,8 +21389,8 @@ "binop": null }, "value": "SpecialForms", - "start": 187, - "end": 199, + "start": 177, + "end": 189, "loc": { "start": { "line": 9, @@ -21420,8 +21415,8 @@ "binop": null, "updateContext": null }, - "start": 199, - "end": 200, + "start": 189, + "end": 190, "loc": { "start": { "line": 9, @@ -21447,8 +21442,8 @@ "updateContext": null }, "value": "if", - "start": 200, - "end": 204, + "start": 190, + "end": 194, "loc": { "start": { "line": 9, @@ -21473,8 +21468,8 @@ "binop": null, "updateContext": null }, - "start": 204, - "end": 205, + "start": 194, + "end": 195, "loc": { "start": { "line": 9, @@ -21500,8 +21495,8 @@ "updateContext": null }, "value": "=", - "start": 206, - "end": 207, + "start": 196, + "end": 197, "loc": { "start": { "line": 9, @@ -21525,8 +21520,8 @@ "postfix": false, "binop": null }, - "start": 208, - "end": 209, + "start": 198, + "end": 199, "loc": { "start": { "line": 9, @@ -21551,8 +21546,8 @@ "binop": null }, "value": "args", - "start": 209, - "end": 213, + "start": 199, + "end": 203, "loc": { "start": { "line": 9, @@ -21577,8 +21572,8 @@ "binop": null, "updateContext": null }, - "start": 213, - "end": 214, + "start": 203, + "end": 204, "loc": { "start": { "line": 9, @@ -21603,8 +21598,8 @@ "binop": null }, "value": "env", - "start": 215, - "end": 218, + "start": 205, + "end": 208, "loc": { "start": { "line": 9, @@ -21628,8 +21623,8 @@ "postfix": false, "binop": null }, - "start": 218, - "end": 219, + "start": 208, + "end": 209, "loc": { "start": { "line": 9, @@ -21654,8 +21649,8 @@ "binop": null, "updateContext": null }, - "start": 220, - "end": 222, + "start": 210, + "end": 212, "loc": { "start": { "line": 9, @@ -21679,8 +21674,8 @@ "postfix": false, "binop": null }, - "start": 223, - "end": 224, + "start": 213, + "end": 214, "loc": { "start": { "line": 9, @@ -21707,8 +21702,8 @@ "updateContext": null }, "value": "if", - "start": 227, - "end": 229, + "start": 217, + "end": 219, "loc": { "start": { "line": 10, @@ -21732,8 +21727,8 @@ "postfix": false, "binop": null }, - "start": 230, - "end": 231, + "start": 220, + "end": 221, "loc": { "start": { "line": 10, @@ -21758,8 +21753,8 @@ "binop": null }, "value": "args", - "start": 231, - "end": 235, + "start": 221, + "end": 225, "loc": { "start": { "line": 10, @@ -21784,8 +21779,8 @@ "binop": null, "updateContext": null }, - "start": 235, - "end": 236, + "start": 225, + "end": 226, "loc": { "start": { "line": 10, @@ -21810,8 +21805,8 @@ "binop": null }, "value": "length", - "start": 236, - "end": 242, + "start": 226, + "end": 232, "loc": { "start": { "line": 10, @@ -21837,8 +21832,8 @@ "updateContext": null }, "value": "!==", - "start": 243, - "end": 246, + "start": 233, + "end": 236, "loc": { "start": { "line": 10, @@ -21864,8 +21859,8 @@ "updateContext": null }, "value": 3, - "start": 247, - "end": 248, + "start": 237, + "end": 238, "loc": { "start": { "line": 10, @@ -21889,8 +21884,8 @@ "postfix": false, "binop": null }, - "start": 248, - "end": 249, + "start": 238, + "end": 239, "loc": { "start": { "line": 10, @@ -21914,8 +21909,8 @@ "postfix": false, "binop": null }, - "start": 250, - "end": 251, + "start": 240, + "end": 241, "loc": { "start": { "line": 10, @@ -21942,8 +21937,8 @@ "updateContext": null }, "value": "throw", - "start": 256, - "end": 261, + "start": 246, + "end": 251, "loc": { "start": { "line": 11, @@ -21970,8 +21965,8 @@ "updateContext": null }, "value": "new", - "start": 262, - "end": 265, + "start": 252, + "end": 255, "loc": { "start": { "line": 11, @@ -21996,8 +21991,8 @@ "binop": null }, "value": "SyntaxError", - "start": 266, - "end": 277, + "start": 256, + "end": 267, "loc": { "start": { "line": 11, @@ -22021,8 +22016,8 @@ "postfix": false, "binop": null }, - "start": 277, - "end": 278, + "start": 267, + "end": 268, "loc": { "start": { "line": 11, @@ -22048,8 +22043,8 @@ "updateContext": null }, "value": "Bad number of args passed to if", - "start": 278, - "end": 311, + "start": 268, + "end": 301, "loc": { "start": { "line": 11, @@ -22073,8 +22068,8 @@ "postfix": false, "binop": null }, - "start": 311, - "end": 312, + "start": 301, + "end": 302, "loc": { "start": { "line": 11, @@ -22099,8 +22094,8 @@ "binop": null, "updateContext": null }, - "start": 312, - "end": 313, + "start": 302, + "end": 303, "loc": { "start": { "line": 11, @@ -22124,8 +22119,8 @@ "postfix": false, "binop": null }, - "start": 316, - "end": 317, + "start": 306, + "end": 307, "loc": { "start": { "line": 12, @@ -22152,8 +22147,8 @@ "updateContext": null }, "value": "if", - "start": 321, - "end": 323, + "start": 311, + "end": 313, "loc": { "start": { "line": 14, @@ -22177,8 +22172,8 @@ "postfix": false, "binop": null }, - "start": 324, - "end": 325, + "start": 314, + "end": 315, "loc": { "start": { "line": 14, @@ -22203,8 +22198,8 @@ "binop": null }, "value": "args", - "start": 325, - "end": 329, + "start": 315, + "end": 319, "loc": { "start": { "line": 14, @@ -22229,8 +22224,8 @@ "binop": null, "updateContext": null }, - "start": 329, - "end": 330, + "start": 319, + "end": 320, "loc": { "start": { "line": 14, @@ -22256,8 +22251,8 @@ "updateContext": null }, "value": 0, - "start": 330, - "end": 331, + "start": 320, + "end": 321, "loc": { "start": { "line": 14, @@ -22282,8 +22277,8 @@ "binop": null, "updateContext": null }, - "start": 331, - "end": 332, + "start": 321, + "end": 322, "loc": { "start": { "line": 14, @@ -22308,8 +22303,8 @@ "binop": null, "updateContext": null }, - "start": 332, - "end": 333, + "start": 322, + "end": 323, "loc": { "start": { "line": 14, @@ -22334,8 +22329,8 @@ "binop": null }, "value": "evaluate", - "start": 333, - "end": 341, + "start": 323, + "end": 331, "loc": { "start": { "line": 14, @@ -22359,8 +22354,8 @@ "postfix": false, "binop": null }, - "start": 341, - "end": 342, + "start": 331, + "end": 332, "loc": { "start": { "line": 14, @@ -22385,8 +22380,8 @@ "binop": null }, "value": "env", - "start": 342, - "end": 345, + "start": 332, + "end": 335, "loc": { "start": { "line": 14, @@ -22410,8 +22405,8 @@ "postfix": false, "binop": null }, - "start": 345, - "end": 346, + "start": 335, + "end": 336, "loc": { "start": { "line": 14, @@ -22437,8 +22432,8 @@ "updateContext": null }, "value": "===", - "start": 347, - "end": 350, + "start": 337, + "end": 340, "loc": { "start": { "line": 14, @@ -22465,8 +22460,8 @@ "updateContext": null }, "value": "true", - "start": 351, - "end": 355, + "start": 341, + "end": 345, "loc": { "start": { "line": 14, @@ -22490,8 +22485,8 @@ "postfix": false, "binop": null }, - "start": 355, - "end": 356, + "start": 345, + "end": 346, "loc": { "start": { "line": 14, @@ -22515,8 +22510,8 @@ "postfix": false, "binop": null }, - "start": 357, - "end": 358, + "start": 347, + "end": 348, "loc": { "start": { "line": 14, @@ -22543,8 +22538,8 @@ "updateContext": null }, "value": "return", - "start": 363, - "end": 369, + "start": 353, + "end": 359, "loc": { "start": { "line": 15, @@ -22569,8 +22564,8 @@ "binop": null }, "value": "args", - "start": 370, - "end": 374, + "start": 360, + "end": 364, "loc": { "start": { "line": 15, @@ -22595,8 +22590,8 @@ "binop": null, "updateContext": null }, - "start": 374, - "end": 375, + "start": 364, + "end": 365, "loc": { "start": { "line": 15, @@ -22622,8 +22617,8 @@ "updateContext": null }, "value": 1, - "start": 375, - "end": 376, + "start": 365, + "end": 366, "loc": { "start": { "line": 15, @@ -22648,8 +22643,8 @@ "binop": null, "updateContext": null }, - "start": 376, - "end": 377, + "start": 366, + "end": 367, "loc": { "start": { "line": 15, @@ -22674,8 +22669,8 @@ "binop": null, "updateContext": null }, - "start": 377, - "end": 378, + "start": 367, + "end": 368, "loc": { "start": { "line": 15, @@ -22700,8 +22695,8 @@ "binop": null }, "value": "evaluate", - "start": 378, - "end": 386, + "start": 368, + "end": 376, "loc": { "start": { "line": 15, @@ -22725,8 +22720,8 @@ "postfix": false, "binop": null }, - "start": 386, - "end": 387, + "start": 376, + "end": 377, "loc": { "start": { "line": 15, @@ -22751,8 +22746,8 @@ "binop": null }, "value": "env", - "start": 387, - "end": 390, + "start": 377, + "end": 380, "loc": { "start": { "line": 15, @@ -22776,8 +22771,8 @@ "postfix": false, "binop": null }, - "start": 390, - "end": 391, + "start": 380, + "end": 381, "loc": { "start": { "line": 15, @@ -22802,8 +22797,8 @@ "binop": null, "updateContext": null }, - "start": 391, - "end": 392, + "start": 381, + "end": 382, "loc": { "start": { "line": 15, @@ -22827,8 +22822,8 @@ "postfix": false, "binop": null }, - "start": 395, - "end": 396, + "start": 385, + "end": 386, "loc": { "start": { "line": 16, @@ -22855,8 +22850,8 @@ "updateContext": null }, "value": "else", - "start": 397, - "end": 401, + "start": 387, + "end": 391, "loc": { "start": { "line": 16, @@ -22880,8 +22875,8 @@ "postfix": false, "binop": null }, - "start": 402, - "end": 403, + "start": 392, + "end": 393, "loc": { "start": { "line": 16, @@ -22908,8 +22903,8 @@ "updateContext": null }, "value": "return", - "start": 408, - "end": 414, + "start": 398, + "end": 404, "loc": { "start": { "line": 17, @@ -22934,8 +22929,8 @@ "binop": null }, "value": "args", - "start": 415, - "end": 419, + "start": 405, + "end": 409, "loc": { "start": { "line": 17, @@ -22960,8 +22955,8 @@ "binop": null, "updateContext": null }, - "start": 419, - "end": 420, + "start": 409, + "end": 410, "loc": { "start": { "line": 17, @@ -22987,8 +22982,8 @@ "updateContext": null }, "value": 2, - "start": 420, - "end": 421, + "start": 410, + "end": 411, "loc": { "start": { "line": 17, @@ -23013,8 +23008,8 @@ "binop": null, "updateContext": null }, - "start": 421, - "end": 422, + "start": 411, + "end": 412, "loc": { "start": { "line": 17, @@ -23039,8 +23034,8 @@ "binop": null, "updateContext": null }, - "start": 422, - "end": 423, + "start": 412, + "end": 413, "loc": { "start": { "line": 17, @@ -23065,8 +23060,8 @@ "binop": null }, "value": "evaluate", - "start": 423, - "end": 431, + "start": 413, + "end": 421, "loc": { "start": { "line": 17, @@ -23090,8 +23085,8 @@ "postfix": false, "binop": null }, - "start": 431, - "end": 432, + "start": 421, + "end": 422, "loc": { "start": { "line": 17, @@ -23116,8 +23111,8 @@ "binop": null }, "value": "env", - "start": 432, - "end": 435, + "start": 422, + "end": 425, "loc": { "start": { "line": 17, @@ -23141,8 +23136,8 @@ "postfix": false, "binop": null }, - "start": 435, - "end": 436, + "start": 425, + "end": 426, "loc": { "start": { "line": 17, @@ -23167,8 +23162,8 @@ "binop": null, "updateContext": null }, - "start": 436, - "end": 437, + "start": 426, + "end": 427, "loc": { "start": { "line": 17, @@ -23192,8 +23187,8 @@ "postfix": false, "binop": null }, - "start": 440, - "end": 441, + "start": 430, + "end": 431, "loc": { "start": { "line": 18, @@ -23217,8 +23212,8 @@ "postfix": false, "binop": null }, - "start": 442, - "end": 443, + "start": 432, + "end": 433, "loc": { "start": { "line": 19, @@ -23243,8 +23238,8 @@ "binop": null, "updateContext": null }, - "start": 443, - "end": 444, + "start": 433, + "end": 434, "loc": { "start": { "line": 19, @@ -23269,8 +23264,8 @@ "binop": null }, "value": "SpecialForms", - "start": 446, - "end": 458, + "start": 436, + "end": 448, "loc": { "start": { "line": 21, @@ -23295,8 +23290,8 @@ "binop": null, "updateContext": null }, - "start": 458, - "end": 459, + "start": 448, + "end": 449, "loc": { "start": { "line": 21, @@ -23322,8 +23317,8 @@ "updateContext": null }, "value": "while", - "start": 459, - "end": 466, + "start": 449, + "end": 456, "loc": { "start": { "line": 21, @@ -23348,8 +23343,8 @@ "binop": null, "updateContext": null }, - "start": 466, - "end": 467, + "start": 456, + "end": 457, "loc": { "start": { "line": 21, @@ -23375,8 +23370,8 @@ "updateContext": null }, "value": "=", - "start": 468, - "end": 469, + "start": 458, + "end": 459, "loc": { "start": { "line": 21, @@ -23400,8 +23395,8 @@ "postfix": false, "binop": null }, - "start": 470, - "end": 471, + "start": 460, + "end": 461, "loc": { "start": { "line": 21, @@ -23426,8 +23421,8 @@ "binop": null }, "value": "args", - "start": 471, - "end": 475, + "start": 461, + "end": 465, "loc": { "start": { "line": 21, @@ -23452,8 +23447,8 @@ "binop": null, "updateContext": null }, - "start": 475, - "end": 476, + "start": 465, + "end": 466, "loc": { "start": { "line": 21, @@ -23478,8 +23473,8 @@ "binop": null }, "value": "env", - "start": 477, - "end": 480, + "start": 467, + "end": 470, "loc": { "start": { "line": 21, @@ -23503,8 +23498,8 @@ "postfix": false, "binop": null }, - "start": 480, - "end": 481, + "start": 470, + "end": 471, "loc": { "start": { "line": 21, @@ -23529,8 +23524,8 @@ "binop": null, "updateContext": null }, - "start": 482, - "end": 484, + "start": 472, + "end": 474, "loc": { "start": { "line": 21, @@ -23554,8 +23549,8 @@ "postfix": false, "binop": null }, - "start": 485, - "end": 486, + "start": 475, + "end": 476, "loc": { "start": { "line": 21, @@ -23582,8 +23577,8 @@ "updateContext": null }, "value": "if", - "start": 489, - "end": 491, + "start": 479, + "end": 481, "loc": { "start": { "line": 22, @@ -23607,8 +23602,8 @@ "postfix": false, "binop": null }, - "start": 492, - "end": 493, + "start": 482, + "end": 483, "loc": { "start": { "line": 22, @@ -23633,8 +23628,8 @@ "binop": null }, "value": "args", - "start": 493, - "end": 497, + "start": 483, + "end": 487, "loc": { "start": { "line": 22, @@ -23659,8 +23654,8 @@ "binop": null, "updateContext": null }, - "start": 497, - "end": 498, + "start": 487, + "end": 488, "loc": { "start": { "line": 22, @@ -23685,8 +23680,8 @@ "binop": null }, "value": "length", - "start": 498, - "end": 504, + "start": 488, + "end": 494, "loc": { "start": { "line": 22, @@ -23712,8 +23707,8 @@ "updateContext": null }, "value": "!==", - "start": 505, - "end": 508, + "start": 495, + "end": 498, "loc": { "start": { "line": 22, @@ -23739,8 +23734,8 @@ "updateContext": null }, "value": 2, - "start": 509, - "end": 510, + "start": 499, + "end": 500, "loc": { "start": { "line": 22, @@ -23764,8 +23759,8 @@ "postfix": false, "binop": null }, - "start": 510, - "end": 511, + "start": 500, + "end": 501, "loc": { "start": { "line": 22, @@ -23789,8 +23784,8 @@ "postfix": false, "binop": null }, - "start": 512, - "end": 513, + "start": 502, + "end": 503, "loc": { "start": { "line": 22, @@ -23817,8 +23812,8 @@ "updateContext": null }, "value": "throw", - "start": 518, - "end": 523, + "start": 508, + "end": 513, "loc": { "start": { "line": 23, @@ -23845,8 +23840,8 @@ "updateContext": null }, "value": "new", - "start": 524, - "end": 527, + "start": 514, + "end": 517, "loc": { "start": { "line": 23, @@ -23871,8 +23866,8 @@ "binop": null }, "value": "SyntaxError", - "start": 528, - "end": 539, + "start": 518, + "end": 529, "loc": { "start": { "line": 23, @@ -23896,8 +23891,8 @@ "postfix": false, "binop": null }, - "start": 539, - "end": 540, + "start": 529, + "end": 530, "loc": { "start": { "line": 23, @@ -23923,8 +23918,8 @@ "updateContext": null }, "value": "Bad number of args passed to while", - "start": 540, - "end": 576, + "start": 530, + "end": 566, "loc": { "start": { "line": 23, @@ -23948,8 +23943,8 @@ "postfix": false, "binop": null }, - "start": 576, - "end": 577, + "start": 566, + "end": 567, "loc": { "start": { "line": 23, @@ -23974,8 +23969,8 @@ "binop": null, "updateContext": null }, - "start": 577, - "end": 578, + "start": 567, + "end": 568, "loc": { "start": { "line": 23, @@ -23999,8 +23994,8 @@ "postfix": false, "binop": null }, - "start": 581, - "end": 582, + "start": 571, + "end": 572, "loc": { "start": { "line": 24, @@ -24027,8 +24022,8 @@ "updateContext": null }, "value": "while", - "start": 586, - "end": 591, + "start": 576, + "end": 581, "loc": { "start": { "line": 26, @@ -24052,8 +24047,8 @@ "postfix": false, "binop": null }, - "start": 592, - "end": 593, + "start": 582, + "end": 583, "loc": { "start": { "line": 26, @@ -24078,8 +24073,8 @@ "binop": null }, "value": "args", - "start": 593, - "end": 597, + "start": 583, + "end": 587, "loc": { "start": { "line": 26, @@ -24104,8 +24099,8 @@ "binop": null, "updateContext": null }, - "start": 597, - "end": 598, + "start": 587, + "end": 588, "loc": { "start": { "line": 26, @@ -24131,8 +24126,8 @@ "updateContext": null }, "value": 0, - "start": 598, - "end": 599, + "start": 588, + "end": 589, "loc": { "start": { "line": 26, @@ -24157,8 +24152,8 @@ "binop": null, "updateContext": null }, - "start": 599, - "end": 600, + "start": 589, + "end": 590, "loc": { "start": { "line": 26, @@ -24183,8 +24178,8 @@ "binop": null, "updateContext": null }, - "start": 600, - "end": 601, + "start": 590, + "end": 591, "loc": { "start": { "line": 26, @@ -24209,8 +24204,8 @@ "binop": null }, "value": "evaluate", - "start": 601, - "end": 609, + "start": 591, + "end": 599, "loc": { "start": { "line": 26, @@ -24234,8 +24229,8 @@ "postfix": false, "binop": null }, - "start": 609, - "end": 610, + "start": 599, + "end": 600, "loc": { "start": { "line": 26, @@ -24260,8 +24255,8 @@ "binop": null }, "value": "env", - "start": 610, - "end": 613, + "start": 600, + "end": 603, "loc": { "start": { "line": 26, @@ -24285,8 +24280,8 @@ "postfix": false, "binop": null }, - "start": 613, - "end": 614, + "start": 603, + "end": 604, "loc": { "start": { "line": 26, @@ -24312,8 +24307,8 @@ "updateContext": null }, "value": "===", - "start": 615, - "end": 618, + "start": 605, + "end": 608, "loc": { "start": { "line": 26, @@ -24340,8 +24335,8 @@ "updateContext": null }, "value": "true", - "start": 619, - "end": 623, + "start": 609, + "end": 613, "loc": { "start": { "line": 26, @@ -24365,8 +24360,8 @@ "postfix": false, "binop": null }, - "start": 623, - "end": 624, + "start": 613, + "end": 614, "loc": { "start": { "line": 26, @@ -24390,8 +24385,8 @@ "postfix": false, "binop": null }, - "start": 625, - "end": 626, + "start": 615, + "end": 616, "loc": { "start": { "line": 26, @@ -24416,8 +24411,8 @@ "binop": null }, "value": "args", - "start": 631, - "end": 635, + "start": 621, + "end": 625, "loc": { "start": { "line": 27, @@ -24442,8 +24437,8 @@ "binop": null, "updateContext": null }, - "start": 635, - "end": 636, + "start": 625, + "end": 626, "loc": { "start": { "line": 27, @@ -24469,8 +24464,8 @@ "updateContext": null }, "value": 1, - "start": 636, - "end": 637, + "start": 626, + "end": 627, "loc": { "start": { "line": 27, @@ -24495,8 +24490,8 @@ "binop": null, "updateContext": null }, - "start": 637, - "end": 638, + "start": 627, + "end": 628, "loc": { "start": { "line": 27, @@ -24521,8 +24516,8 @@ "binop": null, "updateContext": null }, - "start": 638, - "end": 639, + "start": 628, + "end": 629, "loc": { "start": { "line": 27, @@ -24547,8 +24542,8 @@ "binop": null }, "value": "evaluate", - "start": 639, - "end": 647, + "start": 629, + "end": 637, "loc": { "start": { "line": 27, @@ -24572,8 +24567,8 @@ "postfix": false, "binop": null }, - "start": 647, - "end": 648, + "start": 637, + "end": 638, "loc": { "start": { "line": 27, @@ -24598,8 +24593,8 @@ "binop": null }, "value": "env", - "start": 648, - "end": 651, + "start": 638, + "end": 641, "loc": { "start": { "line": 27, @@ -24623,8 +24618,8 @@ "postfix": false, "binop": null }, - "start": 651, - "end": 652, + "start": 641, + "end": 642, "loc": { "start": { "line": 27, @@ -24649,8 +24644,8 @@ "binop": null, "updateContext": null }, - "start": 652, - "end": 653, + "start": 642, + "end": 643, "loc": { "start": { "line": 27, @@ -24674,8 +24669,8 @@ "postfix": false, "binop": null }, - "start": 656, - "end": 657, + "start": 646, + "end": 647, "loc": { "start": { "line": 28, @@ -24690,8 +24685,8 @@ { "type": "CommentLine", "value": " Egg has no undefined so we return false when there's no meaningful result", - "start": 661, - "end": 737, + "start": 651, + "end": 727, "loc": { "start": { "line": 30, @@ -24718,8 +24713,8 @@ "updateContext": null }, "value": "return", - "start": 740, - "end": 746, + "start": 730, + "end": 736, "loc": { "start": { "line": 31, @@ -24746,8 +24741,8 @@ "updateContext": null }, "value": "false", - "start": 747, - "end": 752, + "start": 737, + "end": 742, "loc": { "start": { "line": 31, @@ -24772,8 +24767,8 @@ "binop": null, "updateContext": null }, - "start": 752, - "end": 753, + "start": 742, + "end": 743, "loc": { "start": { "line": 31, @@ -24797,8 +24792,8 @@ "postfix": false, "binop": null }, - "start": 754, - "end": 755, + "start": 744, + "end": 745, "loc": { "start": { "line": 32, @@ -24823,8 +24818,8 @@ "binop": null, "updateContext": null }, - "start": 755, - "end": 756, + "start": 745, + "end": 746, "loc": { "start": { "line": 32, @@ -24849,8 +24844,8 @@ "binop": null }, "value": "SpecialForms", - "start": 758, - "end": 770, + "start": 748, + "end": 760, "loc": { "start": { "line": 34, @@ -24875,8 +24870,8 @@ "binop": null, "updateContext": null }, - "start": 770, - "end": 771, + "start": 760, + "end": 761, "loc": { "start": { "line": 34, @@ -24902,8 +24897,8 @@ "updateContext": null }, "value": "for", - "start": 771, - "end": 776, + "start": 761, + "end": 766, "loc": { "start": { "line": 34, @@ -24928,8 +24923,8 @@ "binop": null, "updateContext": null }, - "start": 776, - "end": 777, + "start": 766, + "end": 767, "loc": { "start": { "line": 34, @@ -24955,8 +24950,8 @@ "updateContext": null }, "value": "=", - "start": 778, - "end": 779, + "start": 768, + "end": 769, "loc": { "start": { "line": 34, @@ -24980,8 +24975,8 @@ "postfix": false, "binop": null }, - "start": 780, - "end": 781, + "start": 770, + "end": 771, "loc": { "start": { "line": 34, @@ -25006,8 +25001,8 @@ "binop": null }, "value": "args", - "start": 781, - "end": 785, + "start": 771, + "end": 775, "loc": { "start": { "line": 34, @@ -25032,8 +25027,8 @@ "binop": null, "updateContext": null }, - "start": 785, - "end": 786, + "start": 775, + "end": 776, "loc": { "start": { "line": 34, @@ -25058,8 +25053,8 @@ "binop": null }, "value": "env", - "start": 787, - "end": 790, + "start": 777, + "end": 780, "loc": { "start": { "line": 34, @@ -25083,8 +25078,8 @@ "postfix": false, "binop": null }, - "start": 790, - "end": 791, + "start": 780, + "end": 781, "loc": { "start": { "line": 34, @@ -25109,8 +25104,8 @@ "binop": null, "updateContext": null }, - "start": 792, - "end": 794, + "start": 782, + "end": 784, "loc": { "start": { "line": 34, @@ -25134,8 +25129,8 @@ "postfix": false, "binop": null }, - "start": 795, - "end": 796, + "start": 785, + "end": 786, "loc": { "start": { "line": 34, @@ -25162,8 +25157,8 @@ "updateContext": null }, "value": "if", - "start": 799, - "end": 801, + "start": 789, + "end": 791, "loc": { "start": { "line": 35, @@ -25187,8 +25182,8 @@ "postfix": false, "binop": null }, - "start": 802, - "end": 803, + "start": 792, + "end": 793, "loc": { "start": { "line": 35, @@ -25213,8 +25208,8 @@ "binop": null }, "value": "args", - "start": 803, - "end": 807, + "start": 793, + "end": 797, "loc": { "start": { "line": 35, @@ -25239,8 +25234,8 @@ "binop": null, "updateContext": null }, - "start": 807, - "end": 808, + "start": 797, + "end": 798, "loc": { "start": { "line": 35, @@ -25265,8 +25260,8 @@ "binop": null }, "value": "length", - "start": 808, - "end": 814, + "start": 798, + "end": 804, "loc": { "start": { "line": 35, @@ -25292,8 +25287,8 @@ "updateContext": null }, "value": "!==", - "start": 815, - "end": 818, + "start": 805, + "end": 808, "loc": { "start": { "line": 35, @@ -25319,8 +25314,8 @@ "updateContext": null }, "value": 4, - "start": 819, - "end": 820, + "start": 809, + "end": 810, "loc": { "start": { "line": 35, @@ -25344,8 +25339,8 @@ "postfix": false, "binop": null }, - "start": 820, - "end": 821, + "start": 810, + "end": 811, "loc": { "start": { "line": 35, @@ -25369,8 +25364,8 @@ "postfix": false, "binop": null }, - "start": 822, - "end": 823, + "start": 812, + "end": 813, "loc": { "start": { "line": 35, @@ -25397,8 +25392,8 @@ "updateContext": null }, "value": "throw", - "start": 828, - "end": 833, + "start": 818, + "end": 823, "loc": { "start": { "line": 36, @@ -25425,8 +25420,8 @@ "updateContext": null }, "value": "new", - "start": 834, - "end": 837, + "start": 824, + "end": 827, "loc": { "start": { "line": 36, @@ -25451,8 +25446,8 @@ "binop": null }, "value": "SyntaxError", - "start": 838, - "end": 849, + "start": 828, + "end": 839, "loc": { "start": { "line": 36, @@ -25476,8 +25471,8 @@ "postfix": false, "binop": null }, - "start": 849, - "end": 850, + "start": 839, + "end": 840, "loc": { "start": { "line": 36, @@ -25503,8 +25498,8 @@ "updateContext": null }, "value": "Bad number of args passed to for", - "start": 850, - "end": 884, + "start": 840, + "end": 874, "loc": { "start": { "line": 36, @@ -25528,8 +25523,8 @@ "postfix": false, "binop": null }, - "start": 884, - "end": 885, + "start": 874, + "end": 875, "loc": { "start": { "line": 36, @@ -25554,8 +25549,8 @@ "binop": null, "updateContext": null }, - "start": 885, - "end": 886, + "start": 875, + "end": 876, "loc": { "start": { "line": 36, @@ -25579,8 +25574,8 @@ "postfix": false, "binop": null }, - "start": 889, - "end": 890, + "start": 879, + "end": 880, "loc": { "start": { "line": 37, @@ -25607,8 +25602,8 @@ "updateContext": null }, "value": "const", - "start": 894, - "end": 899, + "start": 884, + "end": 889, "loc": { "start": { "line": 39, @@ -25633,8 +25628,8 @@ "binop": null }, "value": "forEnv", - "start": 900, - "end": 906, + "start": 890, + "end": 896, "loc": { "start": { "line": 39, @@ -25660,8 +25655,8 @@ "updateContext": null }, "value": "=", - "start": 907, - "end": 908, + "start": 897, + "end": 898, "loc": { "start": { "line": 39, @@ -25686,8 +25681,8 @@ "binop": null }, "value": "Object", - "start": 909, - "end": 915, + "start": 899, + "end": 905, "loc": { "start": { "line": 39, @@ -25712,8 +25707,8 @@ "binop": null, "updateContext": null }, - "start": 915, - "end": 916, + "start": 905, + "end": 906, "loc": { "start": { "line": 39, @@ -25738,8 +25733,8 @@ "binop": null }, "value": "create", - "start": 916, - "end": 922, + "start": 906, + "end": 912, "loc": { "start": { "line": 39, @@ -25763,8 +25758,8 @@ "postfix": false, "binop": null }, - "start": 922, - "end": 923, + "start": 912, + "end": 913, "loc": { "start": { "line": 39, @@ -25789,8 +25784,8 @@ "binop": null }, "value": "env", - "start": 923, - "end": 926, + "start": 913, + "end": 916, "loc": { "start": { "line": 39, @@ -25814,8 +25809,8 @@ "postfix": false, "binop": null }, - "start": 926, - "end": 927, + "start": 916, + "end": 917, "loc": { "start": { "line": 39, @@ -25840,8 +25835,8 @@ "binop": null, "updateContext": null }, - "start": 927, - "end": 928, + "start": 917, + "end": 918, "loc": { "start": { "line": 39, @@ -25866,8 +25861,8 @@ "binop": null }, "value": "forEnv", - "start": 931, - "end": 937, + "start": 921, + "end": 927, "loc": { "start": { "line": 40, @@ -25892,8 +25887,8 @@ "binop": null, "updateContext": null }, - "start": 937, - "end": 938, + "start": 927, + "end": 928, "loc": { "start": { "line": 40, @@ -25919,8 +25914,8 @@ "updateContext": null }, "value": "__const__", - "start": 938, - "end": 949, + "start": 928, + "end": 939, "loc": { "start": { "line": 40, @@ -25945,8 +25940,8 @@ "binop": null, "updateContext": null }, - "start": 949, - "end": 950, + "start": 939, + "end": 940, "loc": { "start": { "line": 40, @@ -25972,8 +25967,8 @@ "updateContext": null }, "value": "=", - "start": 951, - "end": 952, + "start": 941, + "end": 942, "loc": { "start": { "line": 40, @@ -25997,8 +25992,8 @@ "postfix": false, "binop": null }, - "start": 953, - "end": 954, + "start": 943, + "end": 944, "loc": { "start": { "line": 40, @@ -26022,8 +26017,8 @@ "postfix": false, "binop": null }, - "start": 954, - "end": 955, + "start": 944, + "end": 945, "loc": { "start": { "line": 40, @@ -26048,8 +26043,8 @@ "binop": null, "updateContext": null }, - "start": 955, - "end": 956, + "start": 945, + "end": 946, "loc": { "start": { "line": 40, @@ -26064,8 +26059,8 @@ { "type": "CommentLine", "value": " Variable", - "start": 960, - "end": 971, + "start": 950, + "end": 961, "loc": { "start": { "line": 42, @@ -26090,8 +26085,8 @@ "binop": null }, "value": "args", - "start": 974, - "end": 978, + "start": 964, + "end": 968, "loc": { "start": { "line": 43, @@ -26116,8 +26111,8 @@ "binop": null, "updateContext": null }, - "start": 978, - "end": 979, + "start": 968, + "end": 969, "loc": { "start": { "line": 43, @@ -26143,8 +26138,8 @@ "updateContext": null }, "value": 0, - "start": 979, - "end": 980, + "start": 969, + "end": 970, "loc": { "start": { "line": 43, @@ -26169,8 +26164,8 @@ "binop": null, "updateContext": null }, - "start": 980, - "end": 981, + "start": 970, + "end": 971, "loc": { "start": { "line": 43, @@ -26195,8 +26190,8 @@ "binop": null, "updateContext": null }, - "start": 981, - "end": 982, + "start": 971, + "end": 972, "loc": { "start": { "line": 43, @@ -26221,8 +26216,8 @@ "binop": null }, "value": "evaluate", - "start": 982, - "end": 990, + "start": 972, + "end": 980, "loc": { "start": { "line": 43, @@ -26246,8 +26241,8 @@ "postfix": false, "binop": null }, - "start": 990, - "end": 991, + "start": 980, + "end": 981, "loc": { "start": { "line": 43, @@ -26272,8 +26267,8 @@ "binop": null }, "value": "forEnv", - "start": 991, - "end": 997, + "start": 981, + "end": 987, "loc": { "start": { "line": 43, @@ -26297,8 +26292,8 @@ "postfix": false, "binop": null }, - "start": 997, - "end": 998, + "start": 987, + "end": 988, "loc": { "start": { "line": 43, @@ -26323,8 +26318,8 @@ "binop": null, "updateContext": null }, - "start": 998, - "end": 999, + "start": 988, + "end": 989, "loc": { "start": { "line": 43, @@ -26339,8 +26334,8 @@ { "type": "CommentLine", "value": " Condition", - "start": 1003, - "end": 1015, + "start": 993, + "end": 1005, "loc": { "start": { "line": 45, @@ -26367,8 +26362,8 @@ "updateContext": null }, "value": "while", - "start": 1018, - "end": 1023, + "start": 1008, + "end": 1013, "loc": { "start": { "line": 46, @@ -26392,8 +26387,8 @@ "postfix": false, "binop": null }, - "start": 1024, - "end": 1025, + "start": 1014, + "end": 1015, "loc": { "start": { "line": 46, @@ -26418,8 +26413,8 @@ "binop": null }, "value": "args", - "start": 1025, - "end": 1029, + "start": 1015, + "end": 1019, "loc": { "start": { "line": 46, @@ -26444,8 +26439,8 @@ "binop": null, "updateContext": null }, - "start": 1029, - "end": 1030, + "start": 1019, + "end": 1020, "loc": { "start": { "line": 46, @@ -26471,8 +26466,8 @@ "updateContext": null }, "value": 1, - "start": 1030, - "end": 1031, + "start": 1020, + "end": 1021, "loc": { "start": { "line": 46, @@ -26497,8 +26492,8 @@ "binop": null, "updateContext": null }, - "start": 1031, - "end": 1032, + "start": 1021, + "end": 1022, "loc": { "start": { "line": 46, @@ -26523,8 +26518,8 @@ "binop": null, "updateContext": null }, - "start": 1032, - "end": 1033, + "start": 1022, + "end": 1023, "loc": { "start": { "line": 46, @@ -26549,8 +26544,8 @@ "binop": null }, "value": "evaluate", - "start": 1033, - "end": 1041, + "start": 1023, + "end": 1031, "loc": { "start": { "line": 46, @@ -26574,8 +26569,8 @@ "postfix": false, "binop": null }, - "start": 1041, - "end": 1042, + "start": 1031, + "end": 1032, "loc": { "start": { "line": 46, @@ -26600,8 +26595,8 @@ "binop": null }, "value": "forEnv", - "start": 1042, - "end": 1048, + "start": 1032, + "end": 1038, "loc": { "start": { "line": 46, @@ -26625,8 +26620,8 @@ "postfix": false, "binop": null }, - "start": 1048, - "end": 1049, + "start": 1038, + "end": 1039, "loc": { "start": { "line": 46, @@ -26652,8 +26647,8 @@ "updateContext": null }, "value": "===", - "start": 1050, - "end": 1053, + "start": 1040, + "end": 1043, "loc": { "start": { "line": 46, @@ -26680,8 +26675,8 @@ "updateContext": null }, "value": "true", - "start": 1054, - "end": 1058, + "start": 1044, + "end": 1048, "loc": { "start": { "line": 46, @@ -26705,8 +26700,8 @@ "postfix": false, "binop": null }, - "start": 1058, - "end": 1059, + "start": 1048, + "end": 1049, "loc": { "start": { "line": 46, @@ -26730,8 +26725,8 @@ "postfix": false, "binop": null }, - "start": 1060, - "end": 1061, + "start": 1050, + "end": 1051, "loc": { "start": { "line": 46, @@ -26746,8 +26741,8 @@ { "type": "CommentLine", "value": " Body", - "start": 1066, - "end": 1073, + "start": 1056, + "end": 1063, "loc": { "start": { "line": 47, @@ -26772,8 +26767,8 @@ "binop": null }, "value": "args", - "start": 1078, - "end": 1082, + "start": 1068, + "end": 1072, "loc": { "start": { "line": 48, @@ -26798,8 +26793,8 @@ "binop": null, "updateContext": null }, - "start": 1082, - "end": 1083, + "start": 1072, + "end": 1073, "loc": { "start": { "line": 48, @@ -26825,8 +26820,8 @@ "updateContext": null }, "value": 3, - "start": 1083, - "end": 1084, + "start": 1073, + "end": 1074, "loc": { "start": { "line": 48, @@ -26851,8 +26846,8 @@ "binop": null, "updateContext": null }, - "start": 1084, - "end": 1085, + "start": 1074, + "end": 1075, "loc": { "start": { "line": 48, @@ -26877,8 +26872,8 @@ "binop": null, "updateContext": null }, - "start": 1085, - "end": 1086, + "start": 1075, + "end": 1076, "loc": { "start": { "line": 48, @@ -26903,8 +26898,8 @@ "binop": null }, "value": "evaluate", - "start": 1086, - "end": 1094, + "start": 1076, + "end": 1084, "loc": { "start": { "line": 48, @@ -26928,8 +26923,8 @@ "postfix": false, "binop": null }, - "start": 1094, - "end": 1095, + "start": 1084, + "end": 1085, "loc": { "start": { "line": 48, @@ -26954,8 +26949,8 @@ "binop": null }, "value": "forEnv", - "start": 1095, - "end": 1101, + "start": 1085, + "end": 1091, "loc": { "start": { "line": 48, @@ -26979,8 +26974,8 @@ "postfix": false, "binop": null }, - "start": 1101, - "end": 1102, + "start": 1091, + "end": 1092, "loc": { "start": { "line": 48, @@ -27005,8 +27000,8 @@ "binop": null, "updateContext": null }, - "start": 1102, - "end": 1103, + "start": 1092, + "end": 1093, "loc": { "start": { "line": 48, @@ -27021,8 +27016,8 @@ { "type": "CommentLine", "value": " Increment", - "start": 1109, - "end": 1121, + "start": 1099, + "end": 1111, "loc": { "start": { "line": 50, @@ -27047,8 +27042,8 @@ "binop": null }, "value": "args", - "start": 1126, - "end": 1130, + "start": 1116, + "end": 1120, "loc": { "start": { "line": 51, @@ -27073,8 +27068,8 @@ "binop": null, "updateContext": null }, - "start": 1130, - "end": 1131, + "start": 1120, + "end": 1121, "loc": { "start": { "line": 51, @@ -27100,8 +27095,8 @@ "updateContext": null }, "value": 2, - "start": 1131, - "end": 1132, + "start": 1121, + "end": 1122, "loc": { "start": { "line": 51, @@ -27126,8 +27121,8 @@ "binop": null, "updateContext": null }, - "start": 1132, - "end": 1133, + "start": 1122, + "end": 1123, "loc": { "start": { "line": 51, @@ -27152,8 +27147,8 @@ "binop": null, "updateContext": null }, - "start": 1133, - "end": 1134, + "start": 1123, + "end": 1124, "loc": { "start": { "line": 51, @@ -27178,8 +27173,8 @@ "binop": null }, "value": "evaluate", - "start": 1134, - "end": 1142, + "start": 1124, + "end": 1132, "loc": { "start": { "line": 51, @@ -27203,8 +27198,8 @@ "postfix": false, "binop": null }, - "start": 1142, - "end": 1143, + "start": 1132, + "end": 1133, "loc": { "start": { "line": 51, @@ -27229,8 +27224,8 @@ "binop": null }, "value": "forEnv", - "start": 1143, - "end": 1149, + "start": 1133, + "end": 1139, "loc": { "start": { "line": 51, @@ -27254,8 +27249,8 @@ "postfix": false, "binop": null }, - "start": 1149, - "end": 1150, + "start": 1139, + "end": 1140, "loc": { "start": { "line": 51, @@ -27280,8 +27275,8 @@ "binop": null, "updateContext": null }, - "start": 1150, - "end": 1151, + "start": 1140, + "end": 1141, "loc": { "start": { "line": 51, @@ -27305,8 +27300,8 @@ "postfix": false, "binop": null }, - "start": 1154, - "end": 1155, + "start": 1144, + "end": 1145, "loc": { "start": { "line": 52, @@ -27333,8 +27328,8 @@ "updateContext": null }, "value": "return", - "start": 1159, - "end": 1165, + "start": 1149, + "end": 1155, "loc": { "start": { "line": 54, @@ -27361,8 +27356,8 @@ "updateContext": null }, "value": "false", - "start": 1166, - "end": 1171, + "start": 1156, + "end": 1161, "loc": { "start": { "line": 54, @@ -27387,8 +27382,8 @@ "binop": null, "updateContext": null }, - "start": 1171, - "end": 1172, + "start": 1161, + "end": 1162, "loc": { "start": { "line": 54, @@ -27412,8 +27407,8 @@ "postfix": false, "binop": null }, - "start": 1173, - "end": 1174, + "start": 1163, + "end": 1164, "loc": { "start": { "line": 55, @@ -27438,8 +27433,8 @@ "binop": null, "updateContext": null }, - "start": 1174, - "end": 1175, + "start": 1164, + "end": 1165, "loc": { "start": { "line": 55, @@ -27464,8 +27459,8 @@ "binop": null }, "value": "SpecialForms", - "start": 1177, - "end": 1189, + "start": 1167, + "end": 1179, "loc": { "start": { "line": 57, @@ -27490,8 +27485,8 @@ "binop": null, "updateContext": null }, - "start": 1189, - "end": 1190, + "start": 1179, + "end": 1180, "loc": { "start": { "line": 57, @@ -27517,8 +27512,8 @@ "updateContext": null }, "value": "foreach", - "start": 1190, - "end": 1199, + "start": 1180, + "end": 1189, "loc": { "start": { "line": 57, @@ -27543,8 +27538,8 @@ "binop": null, "updateContext": null }, - "start": 1199, - "end": 1200, + "start": 1189, + "end": 1190, "loc": { "start": { "line": 57, @@ -27570,8 +27565,8 @@ "updateContext": null }, "value": "=", - "start": 1201, - "end": 1202, + "start": 1191, + "end": 1192, "loc": { "start": { "line": 57, @@ -27595,8 +27590,8 @@ "postfix": false, "binop": null }, - "start": 1203, - "end": 1204, + "start": 1193, + "end": 1194, "loc": { "start": { "line": 57, @@ -27621,8 +27616,8 @@ "binop": null }, "value": "args", - "start": 1204, - "end": 1208, + "start": 1194, + "end": 1198, "loc": { "start": { "line": 57, @@ -27647,8 +27642,8 @@ "binop": null, "updateContext": null }, - "start": 1208, - "end": 1209, + "start": 1198, + "end": 1199, "loc": { "start": { "line": 57, @@ -27673,8 +27668,8 @@ "binop": null }, "value": "env", - "start": 1210, - "end": 1213, + "start": 1200, + "end": 1203, "loc": { "start": { "line": 57, @@ -27698,8 +27693,8 @@ "postfix": false, "binop": null }, - "start": 1213, - "end": 1214, + "start": 1203, + "end": 1204, "loc": { "start": { "line": 57, @@ -27724,8 +27719,8 @@ "binop": null, "updateContext": null }, - "start": 1215, - "end": 1217, + "start": 1205, + "end": 1207, "loc": { "start": { "line": 57, @@ -27749,8 +27744,8 @@ "postfix": false, "binop": null }, - "start": 1218, - "end": 1219, + "start": 1208, + "end": 1209, "loc": { "start": { "line": 57, @@ -27777,8 +27772,8 @@ "updateContext": null }, "value": "if", - "start": 1222, - "end": 1224, + "start": 1212, + "end": 1214, "loc": { "start": { "line": 58, @@ -27802,8 +27797,8 @@ "postfix": false, "binop": null }, - "start": 1225, - "end": 1226, + "start": 1215, + "end": 1216, "loc": { "start": { "line": 58, @@ -27828,8 +27823,8 @@ "binop": null }, "value": "args", - "start": 1226, - "end": 1230, + "start": 1216, + "end": 1220, "loc": { "start": { "line": 58, @@ -27854,8 +27849,8 @@ "binop": null, "updateContext": null }, - "start": 1230, - "end": 1231, + "start": 1220, + "end": 1221, "loc": { "start": { "line": 58, @@ -27880,8 +27875,8 @@ "binop": null }, "value": "length", - "start": 1231, - "end": 1237, + "start": 1221, + "end": 1227, "loc": { "start": { "line": 58, @@ -27907,8 +27902,8 @@ "updateContext": null }, "value": "!==", - "start": 1238, - "end": 1241, + "start": 1228, + "end": 1231, "loc": { "start": { "line": 58, @@ -27934,8 +27929,8 @@ "updateContext": null }, "value": 3, - "start": 1242, - "end": 1243, + "start": 1232, + "end": 1233, "loc": { "start": { "line": 58, @@ -27959,8 +27954,8 @@ "postfix": false, "binop": null }, - "start": 1243, - "end": 1244, + "start": 1233, + "end": 1234, "loc": { "start": { "line": 58, @@ -27984,8 +27979,8 @@ "postfix": false, "binop": null }, - "start": 1245, - "end": 1246, + "start": 1235, + "end": 1236, "loc": { "start": { "line": 58, @@ -28012,8 +28007,8 @@ "updateContext": null }, "value": "throw", - "start": 1251, - "end": 1256, + "start": 1241, + "end": 1246, "loc": { "start": { "line": 59, @@ -28040,8 +28035,8 @@ "updateContext": null }, "value": "new", - "start": 1257, - "end": 1260, + "start": 1247, + "end": 1250, "loc": { "start": { "line": 59, @@ -28066,8 +28061,8 @@ "binop": null }, "value": "SyntaxError", - "start": 1261, - "end": 1272, + "start": 1251, + "end": 1262, "loc": { "start": { "line": 59, @@ -28091,8 +28086,8 @@ "postfix": false, "binop": null }, - "start": 1272, - "end": 1273, + "start": 1262, + "end": 1263, "loc": { "start": { "line": 59, @@ -28118,8 +28113,8 @@ "updateContext": null }, "value": "Bad number of args passed to foreach", - "start": 1273, - "end": 1311, + "start": 1263, + "end": 1301, "loc": { "start": { "line": 59, @@ -28143,8 +28138,8 @@ "postfix": false, "binop": null }, - "start": 1311, - "end": 1312, + "start": 1301, + "end": 1302, "loc": { "start": { "line": 59, @@ -28169,8 +28164,8 @@ "binop": null, "updateContext": null }, - "start": 1312, - "end": 1313, + "start": 1302, + "end": 1303, "loc": { "start": { "line": 59, @@ -28194,8 +28189,8 @@ "postfix": false, "binop": null }, - "start": 1316, - "end": 1317, + "start": 1306, + "end": 1307, "loc": { "start": { "line": 60, @@ -28222,8 +28217,8 @@ "updateContext": null }, "value": "if", - "start": 1321, - "end": 1323, + "start": 1311, + "end": 1313, "loc": { "start": { "line": 62, @@ -28247,8 +28242,8 @@ "postfix": false, "binop": null }, - "start": 1324, - "end": 1325, + "start": 1314, + "end": 1315, "loc": { "start": { "line": 62, @@ -28273,8 +28268,8 @@ "binop": null }, "value": "args", - "start": 1325, - "end": 1329, + "start": 1315, + "end": 1319, "loc": { "start": { "line": 62, @@ -28299,8 +28294,8 @@ "binop": null, "updateContext": null }, - "start": 1329, - "end": 1330, + "start": 1319, + "end": 1320, "loc": { "start": { "line": 62, @@ -28326,8 +28321,8 @@ "updateContext": null }, "value": 0, - "start": 1330, - "end": 1331, + "start": 1320, + "end": 1321, "loc": { "start": { "line": 62, @@ -28352,8 +28347,8 @@ "binop": null, "updateContext": null }, - "start": 1331, - "end": 1332, + "start": 1321, + "end": 1322, "loc": { "start": { "line": 62, @@ -28378,8 +28373,8 @@ "binop": null, "updateContext": null }, - "start": 1332, - "end": 1333, + "start": 1322, + "end": 1323, "loc": { "start": { "line": 62, @@ -28404,8 +28399,8 @@ "binop": null }, "value": "type", - "start": 1333, - "end": 1337, + "start": 1323, + "end": 1327, "loc": { "start": { "line": 62, @@ -28431,8 +28426,8 @@ "updateContext": null }, "value": "!==", - "start": 1338, - "end": 1341, + "start": 1328, + "end": 1331, "loc": { "start": { "line": 62, @@ -28458,8 +28453,8 @@ "updateContext": null }, "value": "word", - "start": 1342, - "end": 1348, + "start": 1332, + "end": 1338, "loc": { "start": { "line": 62, @@ -28483,8 +28478,8 @@ "postfix": false, "binop": null }, - "start": 1348, - "end": 1349, + "start": 1338, + "end": 1339, "loc": { "start": { "line": 62, @@ -28508,8 +28503,8 @@ "postfix": false, "binop": null }, - "start": 1350, - "end": 1351, + "start": 1340, + "end": 1341, "loc": { "start": { "line": 62, @@ -28536,8 +28531,8 @@ "updateContext": null }, "value": "throw", - "start": 1356, - "end": 1361, + "start": 1346, + "end": 1351, "loc": { "start": { "line": 63, @@ -28564,8 +28559,8 @@ "updateContext": null }, "value": "new", - "start": 1362, - "end": 1365, + "start": 1352, + "end": 1355, "loc": { "start": { "line": 63, @@ -28590,8 +28585,8 @@ "binop": null }, "value": "SyntaxError", - "start": 1366, - "end": 1377, + "start": 1356, + "end": 1367, "loc": { "start": { "line": 63, @@ -28615,8 +28610,8 @@ "postfix": false, "binop": null }, - "start": 1377, - "end": 1378, + "start": 1367, + "end": 1368, "loc": { "start": { "line": 63, @@ -28642,8 +28637,8 @@ "updateContext": null }, "value": "The first argument to foreach must be a valid word", - "start": 1378, - "end": 1430, + "start": 1368, + "end": 1420, "loc": { "start": { "line": 63, @@ -28667,8 +28662,8 @@ "postfix": false, "binop": null }, - "start": 1430, - "end": 1431, + "start": 1420, + "end": 1421, "loc": { "start": { "line": 63, @@ -28693,8 +28688,8 @@ "binop": null, "updateContext": null }, - "start": 1431, - "end": 1432, + "start": 1421, + "end": 1422, "loc": { "start": { "line": 63, @@ -28718,8 +28713,8 @@ "postfix": false, "binop": null }, - "start": 1435, - "end": 1436, + "start": 1425, + "end": 1426, "loc": { "start": { "line": 64, @@ -28746,8 +28741,8 @@ "updateContext": null }, "value": "const", - "start": 1440, - "end": 1445, + "start": 1430, + "end": 1435, "loc": { "start": { "line": 66, @@ -28772,8 +28767,8 @@ "binop": null }, "value": "localEnv", - "start": 1446, - "end": 1454, + "start": 1436, + "end": 1444, "loc": { "start": { "line": 66, @@ -28799,8 +28794,8 @@ "updateContext": null }, "value": "=", - "start": 1455, - "end": 1456, + "start": 1445, + "end": 1446, "loc": { "start": { "line": 66, @@ -28825,8 +28820,8 @@ "binop": null }, "value": "Object", - "start": 1457, - "end": 1463, + "start": 1447, + "end": 1453, "loc": { "start": { "line": 66, @@ -28851,8 +28846,8 @@ "binop": null, "updateContext": null }, - "start": 1463, - "end": 1464, + "start": 1453, + "end": 1454, "loc": { "start": { "line": 66, @@ -28877,8 +28872,8 @@ "binop": null }, "value": "create", - "start": 1464, - "end": 1470, + "start": 1454, + "end": 1460, "loc": { "start": { "line": 66, @@ -28902,8 +28897,8 @@ "postfix": false, "binop": null }, - "start": 1470, - "end": 1471, + "start": 1460, + "end": 1461, "loc": { "start": { "line": 66, @@ -28928,8 +28923,8 @@ "binop": null }, "value": "env", - "start": 1471, - "end": 1474, + "start": 1461, + "end": 1464, "loc": { "start": { "line": 66, @@ -28953,8 +28948,8 @@ "postfix": false, "binop": null }, - "start": 1474, - "end": 1475, + "start": 1464, + "end": 1465, "loc": { "start": { "line": 66, @@ -28979,8 +28974,8 @@ "binop": null, "updateContext": null }, - "start": 1475, - "end": 1476, + "start": 1465, + "end": 1466, "loc": { "start": { "line": 66, @@ -29007,8 +29002,8 @@ "updateContext": null }, "value": "const", - "start": 1480, - "end": 1485, + "start": 1470, + "end": 1475, "loc": { "start": { "line": 68, @@ -29033,8 +29028,8 @@ "binop": null }, "value": "iterable", - "start": 1486, - "end": 1494, + "start": 1476, + "end": 1484, "loc": { "start": { "line": 68, @@ -29060,8 +29055,8 @@ "updateContext": null }, "value": "=", - "start": 1495, - "end": 1496, + "start": 1485, + "end": 1486, "loc": { "start": { "line": 68, @@ -29086,8 +29081,8 @@ "binop": null }, "value": "args", - "start": 1497, - "end": 1501, + "start": 1487, + "end": 1491, "loc": { "start": { "line": 68, @@ -29112,8 +29107,8 @@ "binop": null, "updateContext": null }, - "start": 1501, - "end": 1502, + "start": 1491, + "end": 1492, "loc": { "start": { "line": 68, @@ -29139,8 +29134,8 @@ "updateContext": null }, "value": 1, - "start": 1502, - "end": 1503, + "start": 1492, + "end": 1493, "loc": { "start": { "line": 68, @@ -29165,8 +29160,8 @@ "binop": null, "updateContext": null }, - "start": 1503, - "end": 1504, + "start": 1493, + "end": 1494, "loc": { "start": { "line": 68, @@ -29191,8 +29186,8 @@ "binop": null, "updateContext": null }, - "start": 1504, - "end": 1505, + "start": 1494, + "end": 1495, "loc": { "start": { "line": 68, @@ -29217,8 +29212,8 @@ "binop": null }, "value": "evaluate", - "start": 1505, - "end": 1513, + "start": 1495, + "end": 1503, "loc": { "start": { "line": 68, @@ -29242,8 +29237,8 @@ "postfix": false, "binop": null }, - "start": 1513, - "end": 1514, + "start": 1503, + "end": 1504, "loc": { "start": { "line": 68, @@ -29268,8 +29263,8 @@ "binop": null }, "value": "localEnv", - "start": 1514, - "end": 1522, + "start": 1504, + "end": 1512, "loc": { "start": { "line": 68, @@ -29293,8 +29288,8 @@ "postfix": false, "binop": null }, - "start": 1522, - "end": 1523, + "start": 1512, + "end": 1513, "loc": { "start": { "line": 68, @@ -29319,8 +29314,8 @@ "binop": null, "updateContext": null }, - "start": 1523, - "end": 1524, + "start": 1513, + "end": 1514, "loc": { "start": { "line": 68, @@ -29347,8 +29342,8 @@ "updateContext": null }, "value": "for", - "start": 1527, - "end": 1530, + "start": 1517, + "end": 1520, "loc": { "start": { "line": 69, @@ -29372,8 +29367,8 @@ "postfix": false, "binop": null }, - "start": 1531, - "end": 1532, + "start": 1521, + "end": 1522, "loc": { "start": { "line": 69, @@ -29400,8 +29395,8 @@ "updateContext": null }, "value": "const", - "start": 1532, - "end": 1537, + "start": 1522, + "end": 1527, "loc": { "start": { "line": 69, @@ -29426,8 +29421,8 @@ "binop": null }, "value": "val", - "start": 1538, - "end": 1541, + "start": 1528, + "end": 1531, "loc": { "start": { "line": 69, @@ -29452,8 +29447,8 @@ "binop": null }, "value": "of", - "start": 1542, - "end": 1544, + "start": 1532, + "end": 1534, "loc": { "start": { "line": 69, @@ -29478,8 +29473,8 @@ "binop": null }, "value": "iterable", - "start": 1545, - "end": 1553, + "start": 1535, + "end": 1543, "loc": { "start": { "line": 69, @@ -29503,8 +29498,8 @@ "postfix": false, "binop": null }, - "start": 1553, - "end": 1554, + "start": 1543, + "end": 1544, "loc": { "start": { "line": 69, @@ -29528,8 +29523,8 @@ "postfix": false, "binop": null }, - "start": 1555, - "end": 1556, + "start": 1545, + "end": 1546, "loc": { "start": { "line": 69, @@ -29554,8 +29549,8 @@ "binop": null }, "value": "localEnv", - "start": 1561, - "end": 1569, + "start": 1551, + "end": 1559, "loc": { "start": { "line": 70, @@ -29580,8 +29575,8 @@ "binop": null, "updateContext": null }, - "start": 1569, - "end": 1570, + "start": 1559, + "end": 1560, "loc": { "start": { "line": 70, @@ -29606,8 +29601,8 @@ "binop": null }, "value": "args", - "start": 1570, - "end": 1574, + "start": 1560, + "end": 1564, "loc": { "start": { "line": 70, @@ -29632,8 +29627,8 @@ "binop": null, "updateContext": null }, - "start": 1574, - "end": 1575, + "start": 1564, + "end": 1565, "loc": { "start": { "line": 70, @@ -29659,8 +29654,8 @@ "updateContext": null }, "value": 0, - "start": 1575, - "end": 1576, + "start": 1565, + "end": 1566, "loc": { "start": { "line": 70, @@ -29685,8 +29680,8 @@ "binop": null, "updateContext": null }, - "start": 1576, - "end": 1577, + "start": 1566, + "end": 1567, "loc": { "start": { "line": 70, @@ -29711,8 +29706,8 @@ "binop": null, "updateContext": null }, - "start": 1577, - "end": 1578, + "start": 1567, + "end": 1568, "loc": { "start": { "line": 70, @@ -29737,8 +29732,8 @@ "binop": null }, "value": "name", - "start": 1578, - "end": 1582, + "start": 1568, + "end": 1572, "loc": { "start": { "line": 70, @@ -29763,8 +29758,8 @@ "binop": null, "updateContext": null }, - "start": 1582, - "end": 1583, + "start": 1572, + "end": 1573, "loc": { "start": { "line": 70, @@ -29790,8 +29785,8 @@ "updateContext": null }, "value": "=", - "start": 1584, - "end": 1585, + "start": 1574, + "end": 1575, "loc": { "start": { "line": 70, @@ -29816,8 +29811,8 @@ "binop": null }, "value": "val", - "start": 1586, - "end": 1589, + "start": 1576, + "end": 1579, "loc": { "start": { "line": 70, @@ -29842,8 +29837,8 @@ "binop": null, "updateContext": null }, - "start": 1589, - "end": 1590, + "start": 1579, + "end": 1580, "loc": { "start": { "line": 70, @@ -29868,8 +29863,8 @@ "binop": null }, "value": "args", - "start": 1595, - "end": 1599, + "start": 1585, + "end": 1589, "loc": { "start": { "line": 71, @@ -29894,8 +29889,8 @@ "binop": null, "updateContext": null }, - "start": 1599, - "end": 1600, + "start": 1589, + "end": 1590, "loc": { "start": { "line": 71, @@ -29921,8 +29916,8 @@ "updateContext": null }, "value": 2, - "start": 1600, - "end": 1601, + "start": 1590, + "end": 1591, "loc": { "start": { "line": 71, @@ -29947,8 +29942,8 @@ "binop": null, "updateContext": null }, - "start": 1601, - "end": 1602, + "start": 1591, + "end": 1592, "loc": { "start": { "line": 71, @@ -29973,8 +29968,8 @@ "binop": null, "updateContext": null }, - "start": 1602, - "end": 1603, + "start": 1592, + "end": 1593, "loc": { "start": { "line": 71, @@ -29999,8 +29994,8 @@ "binop": null }, "value": "evaluate", - "start": 1603, - "end": 1611, + "start": 1593, + "end": 1601, "loc": { "start": { "line": 71, @@ -30024,8 +30019,8 @@ "postfix": false, "binop": null }, - "start": 1611, - "end": 1612, + "start": 1601, + "end": 1602, "loc": { "start": { "line": 71, @@ -30050,8 +30045,8 @@ "binop": null }, "value": "localEnv", - "start": 1612, - "end": 1620, + "start": 1602, + "end": 1610, "loc": { "start": { "line": 71, @@ -30075,8 +30070,8 @@ "postfix": false, "binop": null }, - "start": 1620, - "end": 1621, + "start": 1610, + "end": 1611, "loc": { "start": { "line": 71, @@ -30101,8 +30096,8 @@ "binop": null, "updateContext": null }, - "start": 1621, - "end": 1622, + "start": 1611, + "end": 1612, "loc": { "start": { "line": 71, @@ -30126,8 +30121,8 @@ "postfix": false, "binop": null }, - "start": 1625, - "end": 1626, + "start": 1615, + "end": 1616, "loc": { "start": { "line": 72, @@ -30154,8 +30149,8 @@ "updateContext": null }, "value": "return", - "start": 1630, - "end": 1636, + "start": 1620, + "end": 1626, "loc": { "start": { "line": 74, @@ -30182,8 +30177,8 @@ "updateContext": null }, "value": "false", - "start": 1637, - "end": 1642, + "start": 1627, + "end": 1632, "loc": { "start": { "line": 74, @@ -30208,8 +30203,8 @@ "binop": null, "updateContext": null }, - "start": 1642, - "end": 1643, + "start": 1632, + "end": 1633, "loc": { "start": { "line": 74, @@ -30233,8 +30228,8 @@ "postfix": false, "binop": null }, - "start": 1644, - "end": 1645, + "start": 1634, + "end": 1635, "loc": { "start": { "line": 75, @@ -30259,8 +30254,8 @@ "binop": null, "updateContext": null }, - "start": 1645, - "end": 1646, + "start": 1635, + "end": 1636, "loc": { "start": { "line": 75, @@ -30285,8 +30280,8 @@ "binop": null }, "value": "SpecialForms", - "start": 1648, - "end": 1660, + "start": 1638, + "end": 1650, "loc": { "start": { "line": 77, @@ -30311,8 +30306,8 @@ "binop": null, "updateContext": null }, - "start": 1660, - "end": 1661, + "start": 1650, + "end": 1651, "loc": { "start": { "line": 77, @@ -30338,8 +30333,8 @@ "updateContext": null }, "value": "do", - "start": 1661, - "end": 1665, + "start": 1651, + "end": 1655, "loc": { "start": { "line": 77, @@ -30364,8 +30359,8 @@ "binop": null, "updateContext": null }, - "start": 1665, - "end": 1666, + "start": 1655, + "end": 1656, "loc": { "start": { "line": 77, @@ -30391,8 +30386,8 @@ "updateContext": null }, "value": "=", - "start": 1667, - "end": 1668, + "start": 1657, + "end": 1658, "loc": { "start": { "line": 77, @@ -30416,8 +30411,8 @@ "postfix": false, "binop": null }, - "start": 1669, - "end": 1670, + "start": 1659, + "end": 1660, "loc": { "start": { "line": 77, @@ -30442,8 +30437,8 @@ "binop": null }, "value": "args", - "start": 1670, - "end": 1674, + "start": 1660, + "end": 1664, "loc": { "start": { "line": 77, @@ -30468,8 +30463,8 @@ "binop": null, "updateContext": null }, - "start": 1674, - "end": 1675, + "start": 1664, + "end": 1665, "loc": { "start": { "line": 77, @@ -30494,8 +30489,8 @@ "binop": null }, "value": "env", - "start": 1676, - "end": 1679, + "start": 1666, + "end": 1669, "loc": { "start": { "line": 77, @@ -30519,8 +30514,8 @@ "postfix": false, "binop": null }, - "start": 1679, - "end": 1680, + "start": 1669, + "end": 1670, "loc": { "start": { "line": 77, @@ -30545,8 +30540,8 @@ "binop": null, "updateContext": null }, - "start": 1681, - "end": 1683, + "start": 1671, + "end": 1673, "loc": { "start": { "line": 77, @@ -30570,8 +30565,8 @@ "postfix": false, "binop": null }, - "start": 1684, - "end": 1685, + "start": 1674, + "end": 1675, "loc": { "start": { "line": 77, @@ -30598,8 +30593,8 @@ "updateContext": null }, "value": "let", - "start": 1688, - "end": 1691, + "start": 1678, + "end": 1681, "loc": { "start": { "line": 78, @@ -30624,8 +30619,8 @@ "binop": null }, "value": "value", - "start": 1692, - "end": 1697, + "start": 1682, + "end": 1687, "loc": { "start": { "line": 78, @@ -30651,8 +30646,8 @@ "updateContext": null }, "value": "=", - "start": 1698, - "end": 1699, + "start": 1688, + "end": 1689, "loc": { "start": { "line": 78, @@ -30679,8 +30674,8 @@ "updateContext": null }, "value": "false", - "start": 1700, - "end": 1705, + "start": 1690, + "end": 1695, "loc": { "start": { "line": 78, @@ -30705,8 +30700,8 @@ "binop": null, "updateContext": null }, - "start": 1705, - "end": 1706, + "start": 1695, + "end": 1696, "loc": { "start": { "line": 78, @@ -30731,8 +30726,8 @@ "binop": null }, "value": "args", - "start": 1710, - "end": 1714, + "start": 1700, + "end": 1704, "loc": { "start": { "line": 80, @@ -30757,8 +30752,8 @@ "binop": null, "updateContext": null }, - "start": 1714, - "end": 1715, + "start": 1704, + "end": 1705, "loc": { "start": { "line": 80, @@ -30783,8 +30778,8 @@ "binop": null }, "value": "forEach", - "start": 1715, - "end": 1722, + "start": 1705, + "end": 1712, "loc": { "start": { "line": 80, @@ -30808,8 +30803,8 @@ "postfix": false, "binop": null }, - "start": 1722, - "end": 1723, + "start": 1712, + "end": 1713, "loc": { "start": { "line": 80, @@ -30834,8 +30829,8 @@ "binop": null }, "value": "arg", - "start": 1723, - "end": 1726, + "start": 1713, + "end": 1716, "loc": { "start": { "line": 80, @@ -30860,8 +30855,8 @@ "binop": null, "updateContext": null }, - "start": 1727, - "end": 1729, + "start": 1717, + "end": 1719, "loc": { "start": { "line": 80, @@ -30885,8 +30880,8 @@ "postfix": false, "binop": null }, - "start": 1730, - "end": 1731, + "start": 1720, + "end": 1721, "loc": { "start": { "line": 80, @@ -30911,8 +30906,8 @@ "binop": null }, "value": "value", - "start": 1736, - "end": 1741, + "start": 1726, + "end": 1731, "loc": { "start": { "line": 81, @@ -30938,8 +30933,8 @@ "updateContext": null }, "value": "=", - "start": 1742, - "end": 1743, + "start": 1732, + "end": 1733, "loc": { "start": { "line": 81, @@ -30964,8 +30959,8 @@ "binop": null }, "value": "arg", - "start": 1744, - "end": 1747, + "start": 1734, + "end": 1737, "loc": { "start": { "line": 81, @@ -30990,8 +30985,8 @@ "binop": null, "updateContext": null }, - "start": 1747, - "end": 1748, + "start": 1737, + "end": 1738, "loc": { "start": { "line": 81, @@ -31016,8 +31011,8 @@ "binop": null }, "value": "evaluate", - "start": 1748, - "end": 1756, + "start": 1738, + "end": 1746, "loc": { "start": { "line": 81, @@ -31041,8 +31036,8 @@ "postfix": false, "binop": null }, - "start": 1756, - "end": 1757, + "start": 1746, + "end": 1747, "loc": { "start": { "line": 81, @@ -31067,8 +31062,8 @@ "binop": null }, "value": "env", - "start": 1757, - "end": 1760, + "start": 1747, + "end": 1750, "loc": { "start": { "line": 81, @@ -31092,8 +31087,8 @@ "postfix": false, "binop": null }, - "start": 1760, - "end": 1761, + "start": 1750, + "end": 1751, "loc": { "start": { "line": 81, @@ -31118,8 +31113,8 @@ "binop": null, "updateContext": null }, - "start": 1761, - "end": 1762, + "start": 1751, + "end": 1752, "loc": { "start": { "line": 81, @@ -31143,8 +31138,8 @@ "postfix": false, "binop": null }, - "start": 1765, - "end": 1766, + "start": 1755, + "end": 1756, "loc": { "start": { "line": 82, @@ -31168,8 +31163,8 @@ "postfix": false, "binop": null }, - "start": 1766, - "end": 1767, + "start": 1756, + "end": 1757, "loc": { "start": { "line": 82, @@ -31194,8 +31189,8 @@ "binop": null, "updateContext": null }, - "start": 1767, - "end": 1768, + "start": 1757, + "end": 1758, "loc": { "start": { "line": 82, @@ -31222,8 +31217,8 @@ "updateContext": null }, "value": "return", - "start": 1772, - "end": 1778, + "start": 1762, + "end": 1768, "loc": { "start": { "line": 84, @@ -31248,8 +31243,8 @@ "binop": null }, "value": "value", - "start": 1779, - "end": 1784, + "start": 1769, + "end": 1774, "loc": { "start": { "line": 84, @@ -31274,8 +31269,8 @@ "binop": null, "updateContext": null }, - "start": 1784, - "end": 1785, + "start": 1774, + "end": 1775, "loc": { "start": { "line": 84, @@ -31299,8 +31294,8 @@ "postfix": false, "binop": null }, - "start": 1786, - "end": 1787, + "start": 1776, + "end": 1777, "loc": { "start": { "line": 85, @@ -31325,8 +31320,8 @@ "binop": null, "updateContext": null }, - "start": 1787, - "end": 1788, + "start": 1777, + "end": 1778, "loc": { "start": { "line": 85, @@ -31351,8 +31346,8 @@ "binop": null }, "value": "SpecialForms", - "start": 1790, - "end": 1802, + "start": 1780, + "end": 1792, "loc": { "start": { "line": 87, @@ -31377,8 +31372,8 @@ "binop": null, "updateContext": null }, - "start": 1802, - "end": 1803, + "start": 1792, + "end": 1793, "loc": { "start": { "line": 87, @@ -31404,8 +31399,8 @@ "updateContext": null }, "value": "def", - "start": 1803, - "end": 1808, + "start": 1793, + "end": 1798, "loc": { "start": { "line": 87, @@ -31430,8 +31425,8 @@ "binop": null, "updateContext": null }, - "start": 1808, - "end": 1809, + "start": 1798, + "end": 1799, "loc": { "start": { "line": 87, @@ -31457,8 +31452,8 @@ "updateContext": null }, "value": "=", - "start": 1810, - "end": 1811, + "start": 1800, + "end": 1801, "loc": { "start": { "line": 87, @@ -31483,8 +31478,8 @@ "binop": null }, "value": "SpecialForms", - "start": 1812, - "end": 1824, + "start": 1802, + "end": 1814, "loc": { "start": { "line": 87, @@ -31509,8 +31504,8 @@ "binop": null, "updateContext": null }, - "start": 1824, - "end": 1825, + "start": 1814, + "end": 1815, "loc": { "start": { "line": 87, @@ -31536,8 +31531,8 @@ "updateContext": null }, "value": "define", - "start": 1825, - "end": 1833, + "start": 1815, + "end": 1823, "loc": { "start": { "line": 87, @@ -31562,8 +31557,8 @@ "binop": null, "updateContext": null }, - "start": 1833, - "end": 1834, + "start": 1823, + "end": 1824, "loc": { "start": { "line": 87, @@ -31589,8 +31584,8 @@ "updateContext": null }, "value": "=", - "start": 1835, - "end": 1836, + "start": 1825, + "end": 1826, "loc": { "start": { "line": 87, @@ -31615,8 +31610,8 @@ "binop": null }, "value": "SpecialForms", - "start": 1837, - "end": 1849, + "start": 1827, + "end": 1839, "loc": { "start": { "line": 87, @@ -31641,8 +31636,8 @@ "binop": null, "updateContext": null }, - "start": 1849, - "end": 1850, + "start": 1839, + "end": 1840, "loc": { "start": { "line": 87, @@ -31668,8 +31663,8 @@ "updateContext": null }, "value": ":=", - "start": 1850, - "end": 1854, + "start": 1840, + "end": 1844, "loc": { "start": { "line": 87, @@ -31694,8 +31689,8 @@ "binop": null, "updateContext": null }, - "start": 1854, - "end": 1855, + "start": 1844, + "end": 1845, "loc": { "start": { "line": 87, @@ -31721,8 +31716,8 @@ "updateContext": null }, "value": "=", - "start": 1856, - "end": 1857, + "start": 1846, + "end": 1847, "loc": { "start": { "line": 87, @@ -31746,8 +31741,8 @@ "postfix": false, "binop": null }, - "start": 1858, - "end": 1859, + "start": 1848, + "end": 1849, "loc": { "start": { "line": 87, @@ -31772,8 +31767,8 @@ "binop": null }, "value": "args", - "start": 1859, - "end": 1863, + "start": 1849, + "end": 1853, "loc": { "start": { "line": 87, @@ -31798,8 +31793,8 @@ "binop": null, "updateContext": null }, - "start": 1863, - "end": 1864, + "start": 1853, + "end": 1854, "loc": { "start": { "line": 87, @@ -31824,8 +31819,8 @@ "binop": null }, "value": "env", - "start": 1865, - "end": 1868, + "start": 1855, + "end": 1858, "loc": { "start": { "line": 87, @@ -31849,8 +31844,8 @@ "postfix": false, "binop": null }, - "start": 1868, - "end": 1869, + "start": 1858, + "end": 1859, "loc": { "start": { "line": 87, @@ -31875,8 +31870,8 @@ "binop": null, "updateContext": null }, - "start": 1870, - "end": 1872, + "start": 1860, + "end": 1862, "loc": { "start": { "line": 87, @@ -31900,8 +31895,8 @@ "postfix": false, "binop": null }, - "start": 1873, - "end": 1874, + "start": 1863, + "end": 1864, "loc": { "start": { "line": 87, @@ -31928,8 +31923,8 @@ "updateContext": null }, "value": "if", - "start": 1877, - "end": 1879, + "start": 1867, + "end": 1869, "loc": { "start": { "line": 88, @@ -31953,8 +31948,8 @@ "postfix": false, "binop": null }, - "start": 1880, - "end": 1881, + "start": 1870, + "end": 1871, "loc": { "start": { "line": 88, @@ -31979,8 +31974,8 @@ "binop": null }, "value": "args", - "start": 1881, - "end": 1885, + "start": 1871, + "end": 1875, "loc": { "start": { "line": 88, @@ -32005,8 +32000,8 @@ "binop": null, "updateContext": null }, - "start": 1885, - "end": 1886, + "start": 1875, + "end": 1876, "loc": { "start": { "line": 88, @@ -32031,8 +32026,8 @@ "binop": null }, "value": "length", - "start": 1886, - "end": 1892, + "start": 1876, + "end": 1882, "loc": { "start": { "line": 88, @@ -32058,8 +32053,8 @@ "updateContext": null }, "value": "!==", - "start": 1893, - "end": 1896, + "start": 1883, + "end": 1886, "loc": { "start": { "line": 88, @@ -32085,8 +32080,8 @@ "updateContext": null }, "value": 2, - "start": 1897, - "end": 1898, + "start": 1887, + "end": 1888, "loc": { "start": { "line": 88, @@ -32112,8 +32107,8 @@ "updateContext": null }, "value": "||", - "start": 1899, - "end": 1901, + "start": 1889, + "end": 1891, "loc": { "start": { "line": 88, @@ -32138,8 +32133,8 @@ "binop": null }, "value": "args", - "start": 1902, - "end": 1906, + "start": 1892, + "end": 1896, "loc": { "start": { "line": 88, @@ -32164,8 +32159,8 @@ "binop": null, "updateContext": null }, - "start": 1906, - "end": 1907, + "start": 1896, + "end": 1897, "loc": { "start": { "line": 88, @@ -32191,8 +32186,8 @@ "updateContext": null }, "value": 0, - "start": 1907, - "end": 1908, + "start": 1897, + "end": 1898, "loc": { "start": { "line": 88, @@ -32217,8 +32212,8 @@ "binop": null, "updateContext": null }, - "start": 1908, - "end": 1909, + "start": 1898, + "end": 1899, "loc": { "start": { "line": 88, @@ -32243,8 +32238,8 @@ "binop": null, "updateContext": null }, - "start": 1909, - "end": 1910, + "start": 1899, + "end": 1900, "loc": { "start": { "line": 88, @@ -32269,8 +32264,8 @@ "binop": null }, "value": "type", - "start": 1910, - "end": 1914, + "start": 1900, + "end": 1904, "loc": { "start": { "line": 88, @@ -32296,8 +32291,8 @@ "updateContext": null }, "value": "!==", - "start": 1915, - "end": 1918, + "start": 1905, + "end": 1908, "loc": { "start": { "line": 88, @@ -32323,8 +32318,8 @@ "updateContext": null }, "value": "word", - "start": 1919, - "end": 1925, + "start": 1909, + "end": 1915, "loc": { "start": { "line": 88, @@ -32348,8 +32343,8 @@ "postfix": false, "binop": null }, - "start": 1925, - "end": 1926, + "start": 1915, + "end": 1916, "loc": { "start": { "line": 88, @@ -32373,8 +32368,8 @@ "postfix": false, "binop": null }, - "start": 1927, - "end": 1928, + "start": 1917, + "end": 1918, "loc": { "start": { "line": 88, @@ -32401,8 +32396,8 @@ "updateContext": null }, "value": "throw", - "start": 1933, - "end": 1938, + "start": 1923, + "end": 1928, "loc": { "start": { "line": 89, @@ -32429,8 +32424,8 @@ "updateContext": null }, "value": "new", - "start": 1939, - "end": 1942, + "start": 1929, + "end": 1932, "loc": { "start": { "line": 89, @@ -32455,8 +32450,8 @@ "binop": null }, "value": "SyntaxError", - "start": 1943, - "end": 1954, + "start": 1933, + "end": 1944, "loc": { "start": { "line": 89, @@ -32480,8 +32475,8 @@ "postfix": false, "binop": null }, - "start": 1954, - "end": 1955, + "start": 1944, + "end": 1945, "loc": { "start": { "line": 89, @@ -32507,8 +32502,8 @@ "updateContext": null }, "value": "Bad use of define", - "start": 1955, - "end": 1974, + "start": 1945, + "end": 1964, "loc": { "start": { "line": 89, @@ -32532,8 +32527,8 @@ "postfix": false, "binop": null }, - "start": 1974, - "end": 1975, + "start": 1964, + "end": 1965, "loc": { "start": { "line": 89, @@ -32558,8 +32553,8 @@ "binop": null, "updateContext": null }, - "start": 1975, - "end": 1976, + "start": 1965, + "end": 1966, "loc": { "start": { "line": 89, @@ -32583,8 +32578,8 @@ "postfix": false, "binop": null }, - "start": 1979, - "end": 1980, + "start": 1969, + "end": 1970, "loc": { "start": { "line": 90, @@ -32611,8 +32606,8 @@ "updateContext": null }, "value": "let", - "start": 1984, - "end": 1987, + "start": 1974, + "end": 1977, "loc": { "start": { "line": 92, @@ -32637,8 +32632,8 @@ "binop": null }, "value": "value", - "start": 1988, - "end": 1993, + "start": 1978, + "end": 1983, "loc": { "start": { "line": 92, @@ -32664,8 +32659,8 @@ "updateContext": null }, "value": "=", - "start": 1994, - "end": 1995, + "start": 1984, + "end": 1985, "loc": { "start": { "line": 92, @@ -32690,8 +32685,8 @@ "binop": null }, "value": "args", - "start": 1996, - "end": 2000, + "start": 1986, + "end": 1990, "loc": { "start": { "line": 92, @@ -32716,8 +32711,8 @@ "binop": null, "updateContext": null }, - "start": 2000, - "end": 2001, + "start": 1990, + "end": 1991, "loc": { "start": { "line": 92, @@ -32743,8 +32738,8 @@ "updateContext": null }, "value": 1, - "start": 2001, - "end": 2002, + "start": 1991, + "end": 1992, "loc": { "start": { "line": 92, @@ -32769,8 +32764,8 @@ "binop": null, "updateContext": null }, - "start": 2002, - "end": 2003, + "start": 1992, + "end": 1993, "loc": { "start": { "line": 92, @@ -32795,8 +32790,8 @@ "binop": null, "updateContext": null }, - "start": 2003, - "end": 2004, + "start": 1993, + "end": 1994, "loc": { "start": { "line": 92, @@ -32821,8 +32816,8 @@ "binop": null }, "value": "evaluate", - "start": 2004, - "end": 2012, + "start": 1994, + "end": 2002, "loc": { "start": { "line": 92, @@ -32846,8 +32841,8 @@ "postfix": false, "binop": null }, - "start": 2012, - "end": 2013, + "start": 2002, + "end": 2003, "loc": { "start": { "line": 92, @@ -32872,8 +32867,8 @@ "binop": null }, "value": "env", - "start": 2013, - "end": 2016, + "start": 2003, + "end": 2006, "loc": { "start": { "line": 92, @@ -32897,8 +32892,8 @@ "postfix": false, "binop": null }, - "start": 2016, - "end": 2017, + "start": 2006, + "end": 2007, "loc": { "start": { "line": 92, @@ -32923,8 +32918,8 @@ "binop": null, "updateContext": null }, - "start": 2017, - "end": 2018, + "start": 2007, + "end": 2008, "loc": { "start": { "line": 92, @@ -32951,8 +32946,8 @@ "updateContext": null }, "value": "let", - "start": 2022, - "end": 2025, + "start": 2012, + "end": 2015, "loc": { "start": { "line": 94, @@ -32977,8 +32972,8 @@ "binop": null }, "value": "valName", - "start": 2026, - "end": 2033, + "start": 2016, + "end": 2023, "loc": { "start": { "line": 94, @@ -33004,8 +32999,8 @@ "updateContext": null }, "value": "=", - "start": 2034, - "end": 2035, + "start": 2024, + "end": 2025, "loc": { "start": { "line": 94, @@ -33030,8 +33025,8 @@ "binop": null }, "value": "args", - "start": 2036, - "end": 2040, + "start": 2026, + "end": 2030, "loc": { "start": { "line": 94, @@ -33056,8 +33051,8 @@ "binop": null, "updateContext": null }, - "start": 2040, - "end": 2041, + "start": 2030, + "end": 2031, "loc": { "start": { "line": 94, @@ -33083,8 +33078,8 @@ "updateContext": null }, "value": 0, - "start": 2041, - "end": 2042, + "start": 2031, + "end": 2032, "loc": { "start": { "line": 94, @@ -33109,8 +33104,8 @@ "binop": null, "updateContext": null }, - "start": 2042, - "end": 2043, + "start": 2032, + "end": 2033, "loc": { "start": { "line": 94, @@ -33135,8 +33130,8 @@ "binop": null, "updateContext": null }, - "start": 2043, - "end": 2044, + "start": 2033, + "end": 2034, "loc": { "start": { "line": 94, @@ -33161,8 +33156,8 @@ "binop": null }, "value": "name", - "start": 2044, - "end": 2048, + "start": 2034, + "end": 2038, "loc": { "start": { "line": 94, @@ -33187,8 +33182,8 @@ "binop": null, "updateContext": null }, - "start": 2048, - "end": 2049, + "start": 2038, + "end": 2039, "loc": { "start": { "line": 94, @@ -33215,8 +33210,8 @@ "updateContext": null }, "value": "if", - "start": 2053, - "end": 2055, + "start": 2043, + "end": 2045, "loc": { "start": { "line": 96, @@ -33240,8 +33235,8 @@ "postfix": false, "binop": null }, - "start": 2056, - "end": 2057, + "start": 2046, + "end": 2047, "loc": { "start": { "line": 96, @@ -33266,8 +33261,8 @@ "binop": null }, "value": "valName", - "start": 2057, - "end": 2064, + "start": 2047, + "end": 2054, "loc": { "start": { "line": 96, @@ -33294,8 +33289,8 @@ "updateContext": null }, "value": "in", - "start": 2065, - "end": 2067, + "start": 2055, + "end": 2057, "loc": { "start": { "line": 96, @@ -33320,8 +33315,8 @@ "binop": null }, "value": "env", - "start": 2068, - "end": 2071, + "start": 2058, + "end": 2061, "loc": { "start": { "line": 96, @@ -33346,8 +33341,8 @@ "binop": null, "updateContext": null }, - "start": 2071, - "end": 2072, + "start": 2061, + "end": 2062, "loc": { "start": { "line": 96, @@ -33373,8 +33368,8 @@ "updateContext": null }, "value": "__const__", - "start": 2072, - "end": 2083, + "start": 2062, + "end": 2073, "loc": { "start": { "line": 96, @@ -33399,8 +33394,8 @@ "binop": null, "updateContext": null }, - "start": 2083, - "end": 2084, + "start": 2073, + "end": 2074, "loc": { "start": { "line": 96, @@ -33424,8 +33419,8 @@ "postfix": false, "binop": null }, - "start": 2084, - "end": 2085, + "start": 2074, + "end": 2075, "loc": { "start": { "line": 96, @@ -33449,8 +33444,8 @@ "postfix": false, "binop": null }, - "start": 2086, - "end": 2087, + "start": 2076, + "end": 2077, "loc": { "start": { "line": 96, @@ -33477,8 +33472,8 @@ "updateContext": null }, "value": "throw", - "start": 2092, - "end": 2097, + "start": 2082, + "end": 2087, "loc": { "start": { "line": 97, @@ -33505,8 +33500,8 @@ "updateContext": null }, "value": "new", - "start": 2098, - "end": 2101, + "start": 2088, + "end": 2091, "loc": { "start": { "line": 97, @@ -33531,8 +33526,8 @@ "binop": null }, "value": "ReferenceError", - "start": 2102, - "end": 2116, + "start": 2092, + "end": 2106, "loc": { "start": { "line": 97, @@ -33556,8 +33551,8 @@ "postfix": false, "binop": null }, - "start": 2116, - "end": 2117, + "start": 2106, + "end": 2107, "loc": { "start": { "line": 97, @@ -33581,8 +33576,8 @@ "postfix": false, "binop": null }, - "start": 2117, - "end": 2118, + "start": 2107, + "end": 2108, "loc": { "start": { "line": 97, @@ -33608,8 +33603,8 @@ "updateContext": null }, "value": "Trying to change 'const' variable ", - "start": 2118, - "end": 2152, + "start": 2108, + "end": 2142, "loc": { "start": { "line": 97, @@ -33633,8 +33628,8 @@ "postfix": false, "binop": null }, - "start": 2152, - "end": 2154, + "start": 2142, + "end": 2144, "loc": { "start": { "line": 97, @@ -33659,8 +33654,8 @@ "binop": null }, "value": "args", - "start": 2154, - "end": 2158, + "start": 2144, + "end": 2148, "loc": { "start": { "line": 97, @@ -33685,8 +33680,8 @@ "binop": null, "updateContext": null }, - "start": 2158, - "end": 2159, + "start": 2148, + "end": 2149, "loc": { "start": { "line": 97, @@ -33712,8 +33707,8 @@ "updateContext": null }, "value": 0, - "start": 2159, - "end": 2160, + "start": 2149, + "end": 2150, "loc": { "start": { "line": 97, @@ -33738,8 +33733,8 @@ "binop": null, "updateContext": null }, - "start": 2160, - "end": 2161, + "start": 2150, + "end": 2151, "loc": { "start": { "line": 97, @@ -33764,8 +33759,8 @@ "binop": null, "updateContext": null }, - "start": 2161, - "end": 2162, + "start": 2151, + "end": 2152, "loc": { "start": { "line": 97, @@ -33790,8 +33785,8 @@ "binop": null }, "value": "name", - "start": 2162, - "end": 2166, + "start": 2152, + "end": 2156, "loc": { "start": { "line": 97, @@ -33815,8 +33810,8 @@ "postfix": false, "binop": null }, - "start": 2166, - "end": 2167, + "start": 2156, + "end": 2157, "loc": { "start": { "line": 97, @@ -33842,8 +33837,8 @@ "updateContext": null }, "value": "", - "start": 2167, - "end": 2167, + "start": 2157, + "end": 2157, "loc": { "start": { "line": 97, @@ -33867,8 +33862,8 @@ "postfix": false, "binop": null }, - "start": 2167, - "end": 2168, + "start": 2157, + "end": 2158, "loc": { "start": { "line": 97, @@ -33892,8 +33887,8 @@ "postfix": false, "binop": null }, - "start": 2168, - "end": 2169, + "start": 2158, + "end": 2159, "loc": { "start": { "line": 97, @@ -33918,8 +33913,8 @@ "binop": null, "updateContext": null }, - "start": 2169, - "end": 2170, + "start": 2159, + "end": 2160, "loc": { "start": { "line": 97, @@ -33943,8 +33938,8 @@ "postfix": false, "binop": null }, - "start": 2173, - "end": 2174, + "start": 2163, + "end": 2164, "loc": { "start": { "line": 98, @@ -33969,8 +33964,8 @@ "binop": null }, "value": "env", - "start": 2178, - "end": 2181, + "start": 2168, + "end": 2171, "loc": { "start": { "line": 100, @@ -33995,8 +33990,8 @@ "binop": null, "updateContext": null }, - "start": 2181, - "end": 2182, + "start": 2171, + "end": 2172, "loc": { "start": { "line": 100, @@ -34021,8 +34016,8 @@ "binop": null }, "value": "valName", - "start": 2182, - "end": 2189, + "start": 2172, + "end": 2179, "loc": { "start": { "line": 100, @@ -34047,8 +34042,8 @@ "binop": null, "updateContext": null }, - "start": 2189, - "end": 2190, + "start": 2179, + "end": 2180, "loc": { "start": { "line": 100, @@ -34074,8 +34069,8 @@ "updateContext": null }, "value": "=", - "start": 2191, - "end": 2192, + "start": 2181, + "end": 2182, "loc": { "start": { "line": 100, @@ -34100,8 +34095,8 @@ "binop": null }, "value": "value", - "start": 2193, - "end": 2198, + "start": 2183, + "end": 2188, "loc": { "start": { "line": 100, @@ -34126,8 +34121,8 @@ "binop": null, "updateContext": null }, - "start": 2198, - "end": 2199, + "start": 2188, + "end": 2189, "loc": { "start": { "line": 100, @@ -34154,8 +34149,8 @@ "updateContext": null }, "value": "return", - "start": 2202, - "end": 2208, + "start": 2192, + "end": 2198, "loc": { "start": { "line": 101, @@ -34180,8 +34175,8 @@ "binop": null }, "value": "value", - "start": 2209, - "end": 2214, + "start": 2199, + "end": 2204, "loc": { "start": { "line": 101, @@ -34206,8 +34201,8 @@ "binop": null, "updateContext": null }, - "start": 2214, - "end": 2215, + "start": 2204, + "end": 2205, "loc": { "start": { "line": 101, @@ -34231,8 +34226,8 @@ "postfix": false, "binop": null }, - "start": 2216, - "end": 2217, + "start": 2206, + "end": 2207, "loc": { "start": { "line": 102, @@ -34257,8 +34252,8 @@ "binop": null, "updateContext": null }, - "start": 2217, - "end": 2218, + "start": 2207, + "end": 2208, "loc": { "start": { "line": 102, @@ -34283,8 +34278,8 @@ "binop": null }, "value": "SpecialForms", - "start": 2220, - "end": 2232, + "start": 2210, + "end": 2222, "loc": { "start": { "line": 104, @@ -34309,8 +34304,8 @@ "binop": null, "updateContext": null }, - "start": 2232, - "end": 2233, + "start": 2222, + "end": 2223, "loc": { "start": { "line": 104, @@ -34336,8 +34331,8 @@ "updateContext": null }, "value": "fun", - "start": 2233, - "end": 2238, + "start": 2223, + "end": 2228, "loc": { "start": { "line": 104, @@ -34362,8 +34357,8 @@ "binop": null, "updateContext": null }, - "start": 2238, - "end": 2239, + "start": 2228, + "end": 2229, "loc": { "start": { "line": 104, @@ -34389,8 +34384,8 @@ "updateContext": null }, "value": "=", - "start": 2240, - "end": 2241, + "start": 2230, + "end": 2231, "loc": { "start": { "line": 104, @@ -34415,8 +34410,8 @@ "binop": null }, "value": "SpecialForms", - "start": 2242, - "end": 2254, + "start": 2232, + "end": 2244, "loc": { "start": { "line": 104, @@ -34441,8 +34436,8 @@ "binop": null, "updateContext": null }, - "start": 2254, - "end": 2255, + "start": 2244, + "end": 2245, "loc": { "start": { "line": 104, @@ -34468,8 +34463,8 @@ "updateContext": null }, "value": "->", - "start": 2255, - "end": 2259, + "start": 2245, + "end": 2249, "loc": { "start": { "line": 104, @@ -34494,8 +34489,8 @@ "binop": null, "updateContext": null }, - "start": 2259, - "end": 2260, + "start": 2249, + "end": 2250, "loc": { "start": { "line": 104, @@ -34521,8 +34516,8 @@ "updateContext": null }, "value": "=", - "start": 2261, - "end": 2262, + "start": 2251, + "end": 2252, "loc": { "start": { "line": 104, @@ -34546,8 +34541,8 @@ "postfix": false, "binop": null }, - "start": 2263, - "end": 2264, + "start": 2253, + "end": 2254, "loc": { "start": { "line": 104, @@ -34572,8 +34567,8 @@ "binop": null }, "value": "args", - "start": 2264, - "end": 2268, + "start": 2254, + "end": 2258, "loc": { "start": { "line": 104, @@ -34598,8 +34593,8 @@ "binop": null, "updateContext": null }, - "start": 2268, - "end": 2269, + "start": 2258, + "end": 2259, "loc": { "start": { "line": 104, @@ -34624,8 +34619,8 @@ "binop": null }, "value": "env", - "start": 2270, - "end": 2273, + "start": 2260, + "end": 2263, "loc": { "start": { "line": 104, @@ -34649,8 +34644,8 @@ "postfix": false, "binop": null }, - "start": 2273, - "end": 2274, + "start": 2263, + "end": 2264, "loc": { "start": { "line": 104, @@ -34675,8 +34670,8 @@ "binop": null, "updateContext": null }, - "start": 2275, - "end": 2277, + "start": 2265, + "end": 2267, "loc": { "start": { "line": 104, @@ -34700,8 +34695,8 @@ "postfix": false, "binop": null }, - "start": 2278, - "end": 2279, + "start": 2268, + "end": 2269, "loc": { "start": { "line": 104, @@ -34728,8 +34723,8 @@ "updateContext": null }, "value": "if", - "start": 2282, - "end": 2284, + "start": 2272, + "end": 2274, "loc": { "start": { "line": 105, @@ -34753,8 +34748,8 @@ "postfix": false, "binop": null }, - "start": 2285, - "end": 2286, + "start": 2275, + "end": 2276, "loc": { "start": { "line": 105, @@ -34780,8 +34775,8 @@ "updateContext": null }, "value": "!", - "start": 2286, - "end": 2287, + "start": 2276, + "end": 2277, "loc": { "start": { "line": 105, @@ -34806,8 +34801,8 @@ "binop": null }, "value": "args", - "start": 2287, - "end": 2291, + "start": 2277, + "end": 2281, "loc": { "start": { "line": 105, @@ -34832,8 +34827,8 @@ "binop": null, "updateContext": null }, - "start": 2291, - "end": 2292, + "start": 2281, + "end": 2282, "loc": { "start": { "line": 105, @@ -34858,8 +34853,8 @@ "binop": null }, "value": "length", - "start": 2292, - "end": 2298, + "start": 2282, + "end": 2288, "loc": { "start": { "line": 105, @@ -34883,8 +34878,8 @@ "postfix": false, "binop": null }, - "start": 2298, - "end": 2299, + "start": 2288, + "end": 2289, "loc": { "start": { "line": 105, @@ -34908,8 +34903,8 @@ "postfix": false, "binop": null }, - "start": 2300, - "end": 2301, + "start": 2290, + "end": 2291, "loc": { "start": { "line": 105, @@ -34936,8 +34931,8 @@ "updateContext": null }, "value": "throw", - "start": 2306, - "end": 2311, + "start": 2296, + "end": 2301, "loc": { "start": { "line": 106, @@ -34964,8 +34959,8 @@ "updateContext": null }, "value": "new", - "start": 2312, - "end": 2315, + "start": 2302, + "end": 2305, "loc": { "start": { "line": 106, @@ -34990,8 +34985,8 @@ "binop": null }, "value": "SyntaxError", - "start": 2316, - "end": 2327, + "start": 2306, + "end": 2317, "loc": { "start": { "line": 106, @@ -35015,8 +35010,8 @@ "postfix": false, "binop": null }, - "start": 2327, - "end": 2328, + "start": 2317, + "end": 2318, "loc": { "start": { "line": 106, @@ -35042,8 +35037,8 @@ "updateContext": null }, "value": "Functions need a body.", - "start": 2328, - "end": 2352, + "start": 2318, + "end": 2342, "loc": { "start": { "line": 106, @@ -35067,8 +35062,8 @@ "postfix": false, "binop": null }, - "start": 2352, - "end": 2353, + "start": 2342, + "end": 2343, "loc": { "start": { "line": 106, @@ -35093,8 +35088,8 @@ "binop": null, "updateContext": null }, - "start": 2353, - "end": 2354, + "start": 2343, + "end": 2344, "loc": { "start": { "line": 106, @@ -35118,8 +35113,8 @@ "postfix": false, "binop": null }, - "start": 2357, - "end": 2358, + "start": 2347, + "end": 2348, "loc": { "start": { "line": 107, @@ -35145,8 +35140,8 @@ "binop": null }, "value": "function", - "start": 2362, - "end": 2370, + "start": 2352, + "end": 2360, "loc": { "start": { "line": 109, @@ -35171,8 +35166,8 @@ "binop": null }, "value": "name", - "start": 2371, - "end": 2375, + "start": 2361, + "end": 2365, "loc": { "start": { "line": 109, @@ -35196,8 +35191,8 @@ "postfix": false, "binop": null }, - "start": 2375, - "end": 2376, + "start": 2365, + "end": 2366, "loc": { "start": { "line": 109, @@ -35222,8 +35217,8 @@ "binop": null }, "value": "expr", - "start": 2376, - "end": 2380, + "start": 2366, + "end": 2370, "loc": { "start": { "line": 109, @@ -35247,8 +35242,8 @@ "postfix": false, "binop": null }, - "start": 2380, - "end": 2381, + "start": 2370, + "end": 2371, "loc": { "start": { "line": 109, @@ -35272,8 +35267,8 @@ "postfix": false, "binop": null }, - "start": 2382, - "end": 2383, + "start": 2372, + "end": 2373, "loc": { "start": { "line": 109, @@ -35300,8 +35295,8 @@ "updateContext": null }, "value": "if", - "start": 2388, - "end": 2390, + "start": 2378, + "end": 2380, "loc": { "start": { "line": 110, @@ -35325,8 +35320,8 @@ "postfix": false, "binop": null }, - "start": 2391, - "end": 2392, + "start": 2381, + "end": 2382, "loc": { "start": { "line": 110, @@ -35351,8 +35346,8 @@ "binop": null }, "value": "expr", - "start": 2392, - "end": 2396, + "start": 2382, + "end": 2386, "loc": { "start": { "line": 110, @@ -35377,8 +35372,8 @@ "binop": null, "updateContext": null }, - "start": 2396, - "end": 2397, + "start": 2386, + "end": 2387, "loc": { "start": { "line": 110, @@ -35403,8 +35398,8 @@ "binop": null }, "value": "type", - "start": 2397, - "end": 2401, + "start": 2387, + "end": 2391, "loc": { "start": { "line": 110, @@ -35430,8 +35425,8 @@ "updateContext": null }, "value": "!==", - "start": 2402, - "end": 2405, + "start": 2392, + "end": 2395, "loc": { "start": { "line": 110, @@ -35457,8 +35452,8 @@ "updateContext": null }, "value": "word", - "start": 2406, - "end": 2412, + "start": 2396, + "end": 2402, "loc": { "start": { "line": 110, @@ -35482,8 +35477,8 @@ "postfix": false, "binop": null }, - "start": 2412, - "end": 2413, + "start": 2402, + "end": 2403, "loc": { "start": { "line": 110, @@ -35507,8 +35502,8 @@ "postfix": false, "binop": null }, - "start": 2414, - "end": 2415, + "start": 2404, + "end": 2405, "loc": { "start": { "line": 110, @@ -35535,8 +35530,8 @@ "updateContext": null }, "value": "throw", - "start": 2422, - "end": 2427, + "start": 2412, + "end": 2417, "loc": { "start": { "line": 111, @@ -35563,8 +35558,8 @@ "updateContext": null }, "value": "new", - "start": 2428, - "end": 2431, + "start": 2418, + "end": 2421, "loc": { "start": { "line": 111, @@ -35589,8 +35584,8 @@ "binop": null }, "value": "SyntaxError", - "start": 2432, - "end": 2443, + "start": 2422, + "end": 2433, "loc": { "start": { "line": 111, @@ -35614,8 +35609,8 @@ "postfix": false, "binop": null }, - "start": 2443, - "end": 2444, + "start": 2433, + "end": 2434, "loc": { "start": { "line": 111, @@ -35641,8 +35636,8 @@ "updateContext": null }, "value": "Arg names must be words", - "start": 2444, - "end": 2469, + "start": 2434, + "end": 2459, "loc": { "start": { "line": 111, @@ -35666,8 +35661,8 @@ "postfix": false, "binop": null }, - "start": 2469, - "end": 2470, + "start": 2459, + "end": 2460, "loc": { "start": { "line": 111, @@ -35692,8 +35687,8 @@ "binop": null, "updateContext": null }, - "start": 2470, - "end": 2471, + "start": 2460, + "end": 2461, "loc": { "start": { "line": 111, @@ -35717,8 +35712,8 @@ "postfix": false, "binop": null }, - "start": 2476, - "end": 2477, + "start": 2466, + "end": 2467, "loc": { "start": { "line": 112, @@ -35745,8 +35740,8 @@ "updateContext": null }, "value": "return", - "start": 2483, - "end": 2489, + "start": 2473, + "end": 2479, "loc": { "start": { "line": 114, @@ -35771,8 +35766,8 @@ "binop": null }, "value": "expr", - "start": 2490, - "end": 2494, + "start": 2480, + "end": 2484, "loc": { "start": { "line": 114, @@ -35797,8 +35792,8 @@ "binop": null, "updateContext": null }, - "start": 2494, - "end": 2495, + "start": 2484, + "end": 2485, "loc": { "start": { "line": 114, @@ -35823,8 +35818,8 @@ "binop": null }, "value": "name", - "start": 2495, - "end": 2499, + "start": 2485, + "end": 2489, "loc": { "start": { "line": 114, @@ -35849,8 +35844,8 @@ "binop": null, "updateContext": null }, - "start": 2499, - "end": 2500, + "start": 2489, + "end": 2490, "loc": { "start": { "line": 114, @@ -35874,8 +35869,8 @@ "postfix": false, "binop": null }, - "start": 2503, - "end": 2504, + "start": 2493, + "end": 2494, "loc": { "start": { "line": 115, @@ -35902,8 +35897,8 @@ "updateContext": null }, "value": "let", - "start": 2508, - "end": 2511, + "start": 2498, + "end": 2501, "loc": { "start": { "line": 117, @@ -35928,8 +35923,8 @@ "binop": null }, "value": "argNames", - "start": 2512, - "end": 2520, + "start": 2502, + "end": 2510, "loc": { "start": { "line": 117, @@ -35955,8 +35950,8 @@ "updateContext": null }, "value": "=", - "start": 2521, - "end": 2522, + "start": 2511, + "end": 2512, "loc": { "start": { "line": 117, @@ -35981,8 +35976,8 @@ "binop": null }, "value": "args", - "start": 2523, - "end": 2527, + "start": 2513, + "end": 2517, "loc": { "start": { "line": 117, @@ -36007,8 +36002,8 @@ "binop": null, "updateContext": null }, - "start": 2527, - "end": 2528, + "start": 2517, + "end": 2518, "loc": { "start": { "line": 117, @@ -36033,8 +36028,8 @@ "binop": null }, "value": "slice", - "start": 2528, - "end": 2533, + "start": 2518, + "end": 2523, "loc": { "start": { "line": 117, @@ -36058,8 +36053,8 @@ "postfix": false, "binop": null }, - "start": 2533, - "end": 2534, + "start": 2523, + "end": 2524, "loc": { "start": { "line": 117, @@ -36085,8 +36080,8 @@ "updateContext": null }, "value": 0, - "start": 2534, - "end": 2535, + "start": 2524, + "end": 2525, "loc": { "start": { "line": 117, @@ -36111,8 +36106,8 @@ "binop": null, "updateContext": null }, - "start": 2535, - "end": 2536, + "start": 2525, + "end": 2526, "loc": { "start": { "line": 117, @@ -36137,8 +36132,8 @@ "binop": null }, "value": "args", - "start": 2537, - "end": 2541, + "start": 2527, + "end": 2531, "loc": { "start": { "line": 117, @@ -36163,8 +36158,8 @@ "binop": null, "updateContext": null }, - "start": 2541, - "end": 2542, + "start": 2531, + "end": 2532, "loc": { "start": { "line": 117, @@ -36189,8 +36184,8 @@ "binop": null }, "value": "length", - "start": 2542, - "end": 2548, + "start": 2532, + "end": 2538, "loc": { "start": { "line": 117, @@ -36216,8 +36211,8 @@ "updateContext": null }, "value": "-", - "start": 2549, - "end": 2550, + "start": 2539, + "end": 2540, "loc": { "start": { "line": 117, @@ -36243,8 +36238,8 @@ "updateContext": null }, "value": 1, - "start": 2551, - "end": 2552, + "start": 2541, + "end": 2542, "loc": { "start": { "line": 117, @@ -36268,8 +36263,8 @@ "postfix": false, "binop": null }, - "start": 2552, - "end": 2553, + "start": 2542, + "end": 2543, "loc": { "start": { "line": 117, @@ -36294,8 +36289,8 @@ "binop": null, "updateContext": null }, - "start": 2553, - "end": 2554, + "start": 2543, + "end": 2544, "loc": { "start": { "line": 117, @@ -36320,8 +36315,8 @@ "binop": null }, "value": "map", - "start": 2554, - "end": 2557, + "start": 2544, + "end": 2547, "loc": { "start": { "line": 117, @@ -36345,8 +36340,8 @@ "postfix": false, "binop": null }, - "start": 2557, - "end": 2558, + "start": 2547, + "end": 2548, "loc": { "start": { "line": 117, @@ -36371,8 +36366,8 @@ "binop": null }, "value": "name", - "start": 2558, - "end": 2562, + "start": 2548, + "end": 2552, "loc": { "start": { "line": 117, @@ -36396,8 +36391,8 @@ "postfix": false, "binop": null }, - "start": 2562, - "end": 2563, + "start": 2552, + "end": 2553, "loc": { "start": { "line": 117, @@ -36422,8 +36417,8 @@ "binop": null, "updateContext": null }, - "start": 2563, - "end": 2564, + "start": 2553, + "end": 2554, "loc": { "start": { "line": 117, @@ -36450,8 +36445,8 @@ "updateContext": null }, "value": "let", - "start": 2567, - "end": 2570, + "start": 2557, + "end": 2560, "loc": { "start": { "line": 118, @@ -36476,8 +36471,8 @@ "binop": null }, "value": "body", - "start": 2571, - "end": 2575, + "start": 2561, + "end": 2565, "loc": { "start": { "line": 118, @@ -36503,8 +36498,8 @@ "updateContext": null }, "value": "=", - "start": 2576, - "end": 2577, + "start": 2566, + "end": 2567, "loc": { "start": { "line": 118, @@ -36529,8 +36524,8 @@ "binop": null }, "value": "args", - "start": 2578, - "end": 2582, + "start": 2568, + "end": 2572, "loc": { "start": { "line": 118, @@ -36555,8 +36550,8 @@ "binop": null, "updateContext": null }, - "start": 2582, - "end": 2583, + "start": 2572, + "end": 2573, "loc": { "start": { "line": 118, @@ -36581,8 +36576,8 @@ "binop": null }, "value": "args", - "start": 2583, - "end": 2587, + "start": 2573, + "end": 2577, "loc": { "start": { "line": 118, @@ -36607,8 +36602,8 @@ "binop": null, "updateContext": null }, - "start": 2587, - "end": 2588, + "start": 2577, + "end": 2578, "loc": { "start": { "line": 118, @@ -36633,8 +36628,8 @@ "binop": null }, "value": "length", - "start": 2588, - "end": 2594, + "start": 2578, + "end": 2584, "loc": { "start": { "line": 118, @@ -36660,8 +36655,8 @@ "updateContext": null }, "value": "-", - "start": 2595, - "end": 2596, + "start": 2585, + "end": 2586, "loc": { "start": { "line": 118, @@ -36687,8 +36682,8 @@ "updateContext": null }, "value": 1, - "start": 2597, - "end": 2598, + "start": 2587, + "end": 2588, "loc": { "start": { "line": 118, @@ -36713,8 +36708,8 @@ "binop": null, "updateContext": null }, - "start": 2598, - "end": 2599, + "start": 2588, + "end": 2589, "loc": { "start": { "line": 118, @@ -36739,8 +36734,8 @@ "binop": null, "updateContext": null }, - "start": 2599, - "end": 2600, + "start": 2589, + "end": 2590, "loc": { "start": { "line": 118, @@ -36767,8 +36762,8 @@ "updateContext": null }, "value": "return", - "start": 2604, - "end": 2610, + "start": 2594, + "end": 2600, "loc": { "start": { "line": 120, @@ -36794,8 +36789,8 @@ "binop": null }, "value": "function", - "start": 2611, - "end": 2619, + "start": 2601, + "end": 2609, "loc": { "start": { "line": 120, @@ -36819,8 +36814,8 @@ "postfix": false, "binop": null }, - "start": 2619, - "end": 2620, + "start": 2609, + "end": 2610, "loc": { "start": { "line": 120, @@ -36844,8 +36839,8 @@ "postfix": false, "binop": null }, - "start": 2620, - "end": 2621, + "start": 2610, + "end": 2611, "loc": { "start": { "line": 120, @@ -36869,8 +36864,8 @@ "postfix": false, "binop": null }, - "start": 2622, - "end": 2623, + "start": 2612, + "end": 2613, "loc": { "start": { "line": 120, @@ -36897,8 +36892,8 @@ "updateContext": null }, "value": "if", - "start": 2628, - "end": 2630, + "start": 2618, + "end": 2620, "loc": { "start": { "line": 121, @@ -36922,8 +36917,8 @@ "postfix": false, "binop": null }, - "start": 2631, - "end": 2632, + "start": 2621, + "end": 2622, "loc": { "start": { "line": 121, @@ -36948,8 +36943,8 @@ "binop": null }, "value": "arguments", - "start": 2632, - "end": 2641, + "start": 2622, + "end": 2631, "loc": { "start": { "line": 121, @@ -36974,8 +36969,8 @@ "binop": null, "updateContext": null }, - "start": 2641, - "end": 2642, + "start": 2631, + "end": 2632, "loc": { "start": { "line": 121, @@ -37000,8 +36995,8 @@ "binop": null }, "value": "length", - "start": 2642, - "end": 2648, + "start": 2632, + "end": 2638, "loc": { "start": { "line": 121, @@ -37027,8 +37022,8 @@ "updateContext": null }, "value": "!==", - "start": 2649, - "end": 2652, + "start": 2639, + "end": 2642, "loc": { "start": { "line": 121, @@ -37053,8 +37048,8 @@ "binop": null }, "value": "argNames", - "start": 2653, - "end": 2661, + "start": 2643, + "end": 2651, "loc": { "start": { "line": 121, @@ -37079,8 +37074,8 @@ "binop": null, "updateContext": null }, - "start": 2661, - "end": 2662, + "start": 2651, + "end": 2652, "loc": { "start": { "line": 121, @@ -37105,8 +37100,8 @@ "binop": null }, "value": "length", - "start": 2662, - "end": 2668, + "start": 2652, + "end": 2658, "loc": { "start": { "line": 121, @@ -37130,8 +37125,8 @@ "postfix": false, "binop": null }, - "start": 2668, - "end": 2669, + "start": 2658, + "end": 2659, "loc": { "start": { "line": 121, @@ -37155,8 +37150,8 @@ "postfix": false, "binop": null }, - "start": 2670, - "end": 2671, + "start": 2660, + "end": 2661, "loc": { "start": { "line": 121, @@ -37183,8 +37178,8 @@ "updateContext": null }, "value": "throw", - "start": 2678, - "end": 2683, + "start": 2668, + "end": 2673, "loc": { "start": { "line": 122, @@ -37211,8 +37206,8 @@ "updateContext": null }, "value": "new", - "start": 2684, - "end": 2687, + "start": 2674, + "end": 2677, "loc": { "start": { "line": 122, @@ -37237,8 +37232,8 @@ "binop": null }, "value": "TypeError", - "start": 2688, - "end": 2697, + "start": 2678, + "end": 2687, "loc": { "start": { "line": 122, @@ -37262,8 +37257,8 @@ "postfix": false, "binop": null }, - "start": 2697, - "end": 2698, + "start": 2687, + "end": 2688, "loc": { "start": { "line": 122, @@ -37289,8 +37284,8 @@ "updateContext": null }, "value": "Wrong number of arguments", - "start": 2698, - "end": 2725, + "start": 2688, + "end": 2715, "loc": { "start": { "line": 122, @@ -37314,8 +37309,8 @@ "postfix": false, "binop": null }, - "start": 2725, - "end": 2726, + "start": 2715, + "end": 2716, "loc": { "start": { "line": 122, @@ -37340,8 +37335,8 @@ "binop": null, "updateContext": null }, - "start": 2726, - "end": 2727, + "start": 2716, + "end": 2717, "loc": { "start": { "line": 122, @@ -37365,8 +37360,8 @@ "postfix": false, "binop": null }, - "start": 2732, - "end": 2733, + "start": 2722, + "end": 2723, "loc": { "start": { "line": 123, @@ -37393,8 +37388,8 @@ "updateContext": null }, "value": "let", - "start": 2739, - "end": 2742, + "start": 2729, + "end": 2732, "loc": { "start": { "line": 125, @@ -37419,8 +37414,8 @@ "binop": null }, "value": "localEnv", - "start": 2743, - "end": 2751, + "start": 2733, + "end": 2741, "loc": { "start": { "line": 125, @@ -37446,8 +37441,8 @@ "updateContext": null }, "value": "=", - "start": 2752, - "end": 2753, + "start": 2742, + "end": 2743, "loc": { "start": { "line": 125, @@ -37472,8 +37467,8 @@ "binop": null }, "value": "Object", - "start": 2754, - "end": 2760, + "start": 2744, + "end": 2750, "loc": { "start": { "line": 125, @@ -37498,8 +37493,8 @@ "binop": null, "updateContext": null }, - "start": 2760, - "end": 2761, + "start": 2750, + "end": 2751, "loc": { "start": { "line": 125, @@ -37524,8 +37519,8 @@ "binop": null }, "value": "create", - "start": 2761, - "end": 2767, + "start": 2751, + "end": 2757, "loc": { "start": { "line": 125, @@ -37549,8 +37544,8 @@ "postfix": false, "binop": null }, - "start": 2767, - "end": 2768, + "start": 2757, + "end": 2758, "loc": { "start": { "line": 125, @@ -37575,8 +37570,8 @@ "binop": null }, "value": "env", - "start": 2768, - "end": 2771, + "start": 2758, + "end": 2761, "loc": { "start": { "line": 125, @@ -37600,8 +37595,8 @@ "postfix": false, "binop": null }, - "start": 2771, - "end": 2772, + "start": 2761, + "end": 2762, "loc": { "start": { "line": 125, @@ -37626,8 +37621,8 @@ "binop": null, "updateContext": null }, - "start": 2772, - "end": 2773, + "start": 2762, + "end": 2763, "loc": { "start": { "line": 125, @@ -37652,8 +37647,8 @@ "binop": null }, "value": "localEnv", - "start": 2778, - "end": 2786, + "start": 2768, + "end": 2776, "loc": { "start": { "line": 126, @@ -37678,8 +37673,8 @@ "binop": null, "updateContext": null }, - "start": 2786, - "end": 2787, + "start": 2776, + "end": 2777, "loc": { "start": { "line": 126, @@ -37705,8 +37700,8 @@ "updateContext": null }, "value": "__const__", - "start": 2787, - "end": 2798, + "start": 2777, + "end": 2788, "loc": { "start": { "line": 126, @@ -37731,8 +37726,8 @@ "binop": null, "updateContext": null }, - "start": 2798, - "end": 2799, + "start": 2788, + "end": 2789, "loc": { "start": { "line": 126, @@ -37758,8 +37753,8 @@ "updateContext": null }, "value": "=", - "start": 2800, - "end": 2801, + "start": 2790, + "end": 2791, "loc": { "start": { "line": 126, @@ -37783,8 +37778,8 @@ "postfix": false, "binop": null }, - "start": 2802, - "end": 2803, + "start": 2792, + "end": 2793, "loc": { "start": { "line": 126, @@ -37808,8 +37803,8 @@ "postfix": false, "binop": null }, - "start": 2803, - "end": 2804, + "start": 2793, + "end": 2794, "loc": { "start": { "line": 126, @@ -37834,8 +37829,8 @@ "binop": null, "updateContext": null }, - "start": 2804, - "end": 2805, + "start": 2794, + "end": 2795, "loc": { "start": { "line": 126, @@ -37862,8 +37857,8 @@ "updateContext": null }, "value": "for", - "start": 2811, - "end": 2814, + "start": 2801, + "end": 2804, "loc": { "start": { "line": 128, @@ -37887,8 +37882,8 @@ "postfix": false, "binop": null }, - "start": 2815, - "end": 2816, + "start": 2805, + "end": 2806, "loc": { "start": { "line": 128, @@ -37915,8 +37910,8 @@ "updateContext": null }, "value": "let", - "start": 2816, - "end": 2819, + "start": 2806, + "end": 2809, "loc": { "start": { "line": 128, @@ -37941,8 +37936,8 @@ "binop": null }, "value": "i", - "start": 2820, - "end": 2821, + "start": 2810, + "end": 2811, "loc": { "start": { "line": 128, @@ -37968,8 +37963,8 @@ "updateContext": null }, "value": "=", - "start": 2822, - "end": 2823, + "start": 2812, + "end": 2813, "loc": { "start": { "line": 128, @@ -37995,8 +37990,8 @@ "updateContext": null }, "value": 0, - "start": 2824, - "end": 2825, + "start": 2814, + "end": 2815, "loc": { "start": { "line": 128, @@ -38021,8 +38016,8 @@ "binop": null, "updateContext": null }, - "start": 2825, - "end": 2826, + "start": 2815, + "end": 2816, "loc": { "start": { "line": 128, @@ -38047,8 +38042,8 @@ "binop": null }, "value": "i", - "start": 2827, - "end": 2828, + "start": 2817, + "end": 2818, "loc": { "start": { "line": 128, @@ -38074,8 +38069,8 @@ "updateContext": null }, "value": "<", - "start": 2829, - "end": 2830, + "start": 2819, + "end": 2820, "loc": { "start": { "line": 128, @@ -38100,8 +38095,8 @@ "binop": null }, "value": "arguments", - "start": 2831, - "end": 2840, + "start": 2821, + "end": 2830, "loc": { "start": { "line": 128, @@ -38126,8 +38121,8 @@ "binop": null, "updateContext": null }, - "start": 2840, - "end": 2841, + "start": 2830, + "end": 2831, "loc": { "start": { "line": 128, @@ -38152,8 +38147,8 @@ "binop": null }, "value": "length", - "start": 2841, - "end": 2847, + "start": 2831, + "end": 2837, "loc": { "start": { "line": 128, @@ -38178,8 +38173,8 @@ "binop": null, "updateContext": null }, - "start": 2847, - "end": 2848, + "start": 2837, + "end": 2838, "loc": { "start": { "line": 128, @@ -38204,8 +38199,8 @@ "binop": null }, "value": "i", - "start": 2849, - "end": 2850, + "start": 2839, + "end": 2840, "loc": { "start": { "line": 128, @@ -38230,8 +38225,8 @@ "binop": null }, "value": "++", - "start": 2850, - "end": 2852, + "start": 2840, + "end": 2842, "loc": { "start": { "line": 128, @@ -38255,8 +38250,8 @@ "postfix": false, "binop": null }, - "start": 2852, - "end": 2853, + "start": 2842, + "end": 2843, "loc": { "start": { "line": 128, @@ -38280,8 +38275,8 @@ "postfix": false, "binop": null }, - "start": 2854, - "end": 2855, + "start": 2844, + "end": 2845, "loc": { "start": { "line": 128, @@ -38306,8 +38301,8 @@ "binop": null }, "value": "localEnv", - "start": 2862, - "end": 2870, + "start": 2852, + "end": 2860, "loc": { "start": { "line": 129, @@ -38332,8 +38327,8 @@ "binop": null, "updateContext": null }, - "start": 2870, - "end": 2871, + "start": 2860, + "end": 2861, "loc": { "start": { "line": 129, @@ -38358,8 +38353,8 @@ "binop": null }, "value": "argNames", - "start": 2871, - "end": 2879, + "start": 2861, + "end": 2869, "loc": { "start": { "line": 129, @@ -38384,8 +38379,8 @@ "binop": null, "updateContext": null }, - "start": 2879, - "end": 2880, + "start": 2869, + "end": 2870, "loc": { "start": { "line": 129, @@ -38410,8 +38405,8 @@ "binop": null }, "value": "i", - "start": 2880, - "end": 2881, + "start": 2870, + "end": 2871, "loc": { "start": { "line": 129, @@ -38436,8 +38431,8 @@ "binop": null, "updateContext": null }, - "start": 2881, - "end": 2882, + "start": 2871, + "end": 2872, "loc": { "start": { "line": 129, @@ -38462,8 +38457,8 @@ "binop": null, "updateContext": null }, - "start": 2882, - "end": 2883, + "start": 2872, + "end": 2873, "loc": { "start": { "line": 129, @@ -38489,8 +38484,8 @@ "updateContext": null }, "value": "=", - "start": 2884, - "end": 2885, + "start": 2874, + "end": 2875, "loc": { "start": { "line": 129, @@ -38515,8 +38510,8 @@ "binop": null }, "value": "arguments", - "start": 2886, - "end": 2895, + "start": 2876, + "end": 2885, "loc": { "start": { "line": 129, @@ -38541,8 +38536,8 @@ "binop": null, "updateContext": null }, - "start": 2895, - "end": 2896, + "start": 2885, + "end": 2886, "loc": { "start": { "line": 129, @@ -38567,8 +38562,8 @@ "binop": null }, "value": "i", - "start": 2896, - "end": 2897, + "start": 2886, + "end": 2887, "loc": { "start": { "line": 129, @@ -38593,8 +38588,8 @@ "binop": null, "updateContext": null }, - "start": 2897, - "end": 2898, + "start": 2887, + "end": 2888, "loc": { "start": { "line": 129, @@ -38619,8 +38614,8 @@ "binop": null, "updateContext": null }, - "start": 2898, - "end": 2899, + "start": 2888, + "end": 2889, "loc": { "start": { "line": 129, @@ -38644,8 +38639,8 @@ "postfix": false, "binop": null }, - "start": 2904, - "end": 2905, + "start": 2894, + "end": 2895, "loc": { "start": { "line": 130, @@ -38672,8 +38667,8 @@ "updateContext": null }, "value": "return", - "start": 2911, - "end": 2917, + "start": 2901, + "end": 2907, "loc": { "start": { "line": 132, @@ -38698,8 +38693,8 @@ "binop": null }, "value": "body", - "start": 2918, - "end": 2922, + "start": 2908, + "end": 2912, "loc": { "start": { "line": 132, @@ -38724,8 +38719,8 @@ "binop": null, "updateContext": null }, - "start": 2922, - "end": 2923, + "start": 2912, + "end": 2913, "loc": { "start": { "line": 132, @@ -38750,8 +38745,8 @@ "binop": null }, "value": "evaluate", - "start": 2923, - "end": 2931, + "start": 2913, + "end": 2921, "loc": { "start": { "line": 132, @@ -38775,8 +38770,8 @@ "postfix": false, "binop": null }, - "start": 2931, - "end": 2932, + "start": 2921, + "end": 2922, "loc": { "start": { "line": 132, @@ -38801,8 +38796,8 @@ "binop": null }, "value": "localEnv", - "start": 2932, - "end": 2940, + "start": 2922, + "end": 2930, "loc": { "start": { "line": 132, @@ -38826,8 +38821,8 @@ "postfix": false, "binop": null }, - "start": 2940, - "end": 2941, + "start": 2930, + "end": 2931, "loc": { "start": { "line": 132, @@ -38852,8 +38847,8 @@ "binop": null, "updateContext": null }, - "start": 2941, - "end": 2942, + "start": 2931, + "end": 2932, "loc": { "start": { "line": 132, @@ -38877,8 +38872,8 @@ "postfix": false, "binop": null }, - "start": 2945, - "end": 2946, + "start": 2935, + "end": 2936, "loc": { "start": { "line": 133, @@ -38903,8 +38898,8 @@ "binop": null, "updateContext": null }, - "start": 2946, - "end": 2947, + "start": 2936, + "end": 2937, "loc": { "start": { "line": 133, @@ -38928,8 +38923,8 @@ "postfix": false, "binop": null }, - "start": 2948, - "end": 2949, + "start": 2938, + "end": 2939, "loc": { "start": { "line": 134, @@ -38954,8 +38949,8 @@ "binop": null, "updateContext": null }, - "start": 2949, - "end": 2950, + "start": 2939, + "end": 2940, "loc": { "start": { "line": 134, @@ -38980,8 +38975,8 @@ "binop": null }, "value": "SpecialForms", - "start": 2952, - "end": 2964, + "start": 2942, + "end": 2954, "loc": { "start": { "line": 136, @@ -39006,8 +39001,8 @@ "binop": null, "updateContext": null }, - "start": 2964, - "end": 2965, + "start": 2954, + "end": 2955, "loc": { "start": { "line": 136, @@ -39033,8 +39028,8 @@ "updateContext": null }, "value": "set", - "start": 2965, - "end": 2970, + "start": 2955, + "end": 2960, "loc": { "start": { "line": 136, @@ -39059,8 +39054,8 @@ "binop": null, "updateContext": null }, - "start": 2970, - "end": 2971, + "start": 2960, + "end": 2961, "loc": { "start": { "line": 136, @@ -39086,8 +39081,8 @@ "updateContext": null }, "value": "=", - "start": 2972, - "end": 2973, + "start": 2962, + "end": 2963, "loc": { "start": { "line": 136, @@ -39112,8 +39107,8 @@ "binop": null }, "value": "SpecialForms", - "start": 2974, - "end": 2986, + "start": 2964, + "end": 2976, "loc": { "start": { "line": 136, @@ -39138,8 +39133,8 @@ "binop": null, "updateContext": null }, - "start": 2986, - "end": 2987, + "start": 2976, + "end": 2977, "loc": { "start": { "line": 136, @@ -39165,8 +39160,8 @@ "updateContext": null }, "value": "=", - "start": 2987, - "end": 2990, + "start": 2977, + "end": 2980, "loc": { "start": { "line": 136, @@ -39191,8 +39186,8 @@ "binop": null, "updateContext": null }, - "start": 2990, - "end": 2991, + "start": 2980, + "end": 2981, "loc": { "start": { "line": 136, @@ -39218,8 +39213,8 @@ "updateContext": null }, "value": "=", - "start": 2992, - "end": 2993, + "start": 2982, + "end": 2983, "loc": { "start": { "line": 136, @@ -39243,8 +39238,8 @@ "postfix": false, "binop": null }, - "start": 2994, - "end": 2995, + "start": 2984, + "end": 2985, "loc": { "start": { "line": 136, @@ -39269,8 +39264,8 @@ "binop": null }, "value": "args", - "start": 2995, - "end": 2999, + "start": 2985, + "end": 2989, "loc": { "start": { "line": 136, @@ -39295,8 +39290,8 @@ "binop": null, "updateContext": null }, - "start": 2999, - "end": 3000, + "start": 2989, + "end": 2990, "loc": { "start": { "line": 136, @@ -39321,8 +39316,8 @@ "binop": null }, "value": "env", - "start": 3001, - "end": 3004, + "start": 2991, + "end": 2994, "loc": { "start": { "line": 136, @@ -39346,8 +39341,8 @@ "postfix": false, "binop": null }, - "start": 3004, - "end": 3005, + "start": 2994, + "end": 2995, "loc": { "start": { "line": 136, @@ -39372,8 +39367,8 @@ "binop": null, "updateContext": null }, - "start": 3006, - "end": 3008, + "start": 2996, + "end": 2998, "loc": { "start": { "line": 136, @@ -39397,8 +39392,8 @@ "postfix": false, "binop": null }, - "start": 3009, - "end": 3010, + "start": 2999, + "end": 3000, "loc": { "start": { "line": 136, @@ -39425,8 +39420,8 @@ "updateContext": null }, "value": "if", - "start": 3013, - "end": 3015, + "start": 3003, + "end": 3005, "loc": { "start": { "line": 137, @@ -39450,8 +39445,8 @@ "postfix": false, "binop": null }, - "start": 3016, - "end": 3017, + "start": 3006, + "end": 3007, "loc": { "start": { "line": 137, @@ -39476,8 +39471,8 @@ "binop": null }, "value": "args", - "start": 3017, - "end": 3021, + "start": 3007, + "end": 3011, "loc": { "start": { "line": 137, @@ -39502,8 +39497,8 @@ "binop": null, "updateContext": null }, - "start": 3021, - "end": 3022, + "start": 3011, + "end": 3012, "loc": { "start": { "line": 137, @@ -39529,8 +39524,8 @@ "updateContext": null }, "value": 0, - "start": 3022, - "end": 3023, + "start": 3012, + "end": 3013, "loc": { "start": { "line": 137, @@ -39555,8 +39550,8 @@ "binop": null, "updateContext": null }, - "start": 3023, - "end": 3024, + "start": 3013, + "end": 3014, "loc": { "start": { "line": 137, @@ -39581,8 +39576,8 @@ "binop": null, "updateContext": null }, - "start": 3024, - "end": 3025, + "start": 3014, + "end": 3015, "loc": { "start": { "line": 137, @@ -39607,8 +39602,8 @@ "binop": null }, "value": "type", - "start": 3025, - "end": 3029, + "start": 3015, + "end": 3019, "loc": { "start": { "line": 137, @@ -39634,8 +39629,8 @@ "updateContext": null }, "value": "!==", - "start": 3030, - "end": 3033, + "start": 3020, + "end": 3023, "loc": { "start": { "line": 137, @@ -39661,8 +39656,8 @@ "updateContext": null }, "value": "word", - "start": 3034, - "end": 3040, + "start": 3024, + "end": 3030, "loc": { "start": { "line": 137, @@ -39686,8 +39681,8 @@ "postfix": false, "binop": null }, - "start": 3040, - "end": 3041, + "start": 3030, + "end": 3031, "loc": { "start": { "line": 137, @@ -39711,8 +39706,8 @@ "postfix": false, "binop": null }, - "start": 3042, - "end": 3043, + "start": 3032, + "end": 3033, "loc": { "start": { "line": 137, @@ -39739,8 +39734,8 @@ "updateContext": null }, "value": "throw", - "start": 3048, - "end": 3053, + "start": 3038, + "end": 3043, "loc": { "start": { "line": 138, @@ -39767,8 +39762,8 @@ "updateContext": null }, "value": "new", - "start": 3054, - "end": 3057, + "start": 3044, + "end": 3047, "loc": { "start": { "line": 138, @@ -39793,8 +39788,8 @@ "binop": null }, "value": "SyntaxError", - "start": 3058, - "end": 3069, + "start": 3048, + "end": 3059, "loc": { "start": { "line": 138, @@ -39818,8 +39813,8 @@ "postfix": false, "binop": null }, - "start": 3069, - "end": 3070, + "start": 3059, + "end": 3060, "loc": { "start": { "line": 138, @@ -39845,8 +39840,8 @@ "updateContext": null }, "value": "Bad use of set", - "start": 3070, - "end": 3086, + "start": 3060, + "end": 3076, "loc": { "start": { "line": 138, @@ -39870,8 +39865,8 @@ "postfix": false, "binop": null }, - "start": 3086, - "end": 3087, + "start": 3076, + "end": 3077, "loc": { "start": { "line": 138, @@ -39896,8 +39891,8 @@ "binop": null, "updateContext": null }, - "start": 3087, - "end": 3088, + "start": 3077, + "end": 3078, "loc": { "start": { "line": 138, @@ -39921,8 +39916,8 @@ "postfix": false, "binop": null }, - "start": 3091, - "end": 3092, + "start": 3081, + "end": 3082, "loc": { "start": { "line": 139, @@ -39949,8 +39944,8 @@ "updateContext": null }, "value": "let", - "start": 3096, - "end": 3099, + "start": 3086, + "end": 3089, "loc": { "start": { "line": 141, @@ -39975,8 +39970,8 @@ "binop": null }, "value": "valName", - "start": 3100, - "end": 3107, + "start": 3090, + "end": 3097, "loc": { "start": { "line": 141, @@ -40002,8 +39997,8 @@ "updateContext": null }, "value": "=", - "start": 3108, - "end": 3109, + "start": 3098, + "end": 3099, "loc": { "start": { "line": 141, @@ -40028,8 +40023,8 @@ "binop": null }, "value": "args", - "start": 3110, - "end": 3114, + "start": 3100, + "end": 3104, "loc": { "start": { "line": 141, @@ -40054,8 +40049,8 @@ "binop": null, "updateContext": null }, - "start": 3114, - "end": 3115, + "start": 3104, + "end": 3105, "loc": { "start": { "line": 141, @@ -40081,8 +40076,8 @@ "updateContext": null }, "value": 0, - "start": 3115, - "end": 3116, + "start": 3105, + "end": 3106, "loc": { "start": { "line": 141, @@ -40107,8 +40102,8 @@ "binop": null, "updateContext": null }, - "start": 3116, - "end": 3117, + "start": 3106, + "end": 3107, "loc": { "start": { "line": 141, @@ -40133,8 +40128,8 @@ "binop": null, "updateContext": null }, - "start": 3117, - "end": 3118, + "start": 3107, + "end": 3108, "loc": { "start": { "line": 141, @@ -40159,8 +40154,8 @@ "binop": null }, "value": "name", - "start": 3118, - "end": 3122, + "start": 3108, + "end": 3112, "loc": { "start": { "line": 141, @@ -40185,8 +40180,8 @@ "binop": null, "updateContext": null }, - "start": 3122, - "end": 3123, + "start": 3112, + "end": 3113, "loc": { "start": { "line": 141, @@ -40213,8 +40208,8 @@ "updateContext": null }, "value": "let", - "start": 3127, - "end": 3130, + "start": 3117, + "end": 3120, "loc": { "start": { "line": 143, @@ -40239,8 +40234,8 @@ "binop": null }, "value": "indices", - "start": 3131, - "end": 3138, + "start": 3121, + "end": 3128, "loc": { "start": { "line": 143, @@ -40266,8 +40261,8 @@ "updateContext": null }, "value": "=", - "start": 3139, - "end": 3140, + "start": 3129, + "end": 3130, "loc": { "start": { "line": 143, @@ -40292,8 +40287,8 @@ "binop": null }, "value": "args", - "start": 3141, - "end": 3145, + "start": 3131, + "end": 3135, "loc": { "start": { "line": 143, @@ -40318,8 +40313,8 @@ "binop": null, "updateContext": null }, - "start": 3145, - "end": 3146, + "start": 3135, + "end": 3136, "loc": { "start": { "line": 143, @@ -40344,8 +40339,8 @@ "binop": null }, "value": "slice", - "start": 3146, - "end": 3151, + "start": 3136, + "end": 3141, "loc": { "start": { "line": 143, @@ -40369,8 +40364,8 @@ "postfix": false, "binop": null }, - "start": 3151, - "end": 3152, + "start": 3141, + "end": 3142, "loc": { "start": { "line": 143, @@ -40396,8 +40391,8 @@ "updateContext": null }, "value": 1, - "start": 3152, - "end": 3153, + "start": 3142, + "end": 3143, "loc": { "start": { "line": 143, @@ -40422,8 +40417,8 @@ "binop": null, "updateContext": null }, - "start": 3153, - "end": 3154, + "start": 3143, + "end": 3144, "loc": { "start": { "line": 143, @@ -40449,8 +40444,8 @@ "updateContext": null }, "value": "-", - "start": 3155, - "end": 3156, + "start": 3145, + "end": 3146, "loc": { "start": { "line": 143, @@ -40476,8 +40471,8 @@ "updateContext": null }, "value": 1, - "start": 3156, - "end": 3157, + "start": 3146, + "end": 3147, "loc": { "start": { "line": 143, @@ -40501,8 +40496,8 @@ "postfix": false, "binop": null }, - "start": 3157, - "end": 3158, + "start": 3147, + "end": 3148, "loc": { "start": { "line": 143, @@ -40527,8 +40522,8 @@ "binop": null, "updateContext": null }, - "start": 3158, - "end": 3159, + "start": 3148, + "end": 3149, "loc": { "start": { "line": 143, @@ -40553,8 +40548,8 @@ "binop": null }, "value": "map", - "start": 3159, - "end": 3162, + "start": 3149, + "end": 3152, "loc": { "start": { "line": 143, @@ -40578,8 +40573,8 @@ "postfix": false, "binop": null }, - "start": 3162, - "end": 3163, + "start": 3152, + "end": 3153, "loc": { "start": { "line": 143, @@ -40604,8 +40599,8 @@ "binop": null }, "value": "arg", - "start": 3163, - "end": 3166, + "start": 3153, + "end": 3156, "loc": { "start": { "line": 143, @@ -40630,8 +40625,8 @@ "binop": null, "updateContext": null }, - "start": 3167, - "end": 3169, + "start": 3157, + "end": 3159, "loc": { "start": { "line": 143, @@ -40656,8 +40651,8 @@ "binop": null }, "value": "arg", - "start": 3170, - "end": 3173, + "start": 3160, + "end": 3163, "loc": { "start": { "line": 143, @@ -40682,8 +40677,8 @@ "binop": null, "updateContext": null }, - "start": 3173, - "end": 3174, + "start": 3163, + "end": 3164, "loc": { "start": { "line": 143, @@ -40708,8 +40703,8 @@ "binop": null }, "value": "evaluate", - "start": 3174, - "end": 3182, + "start": 3164, + "end": 3172, "loc": { "start": { "line": 143, @@ -40733,8 +40728,8 @@ "postfix": false, "binop": null }, - "start": 3182, - "end": 3183, + "start": 3172, + "end": 3173, "loc": { "start": { "line": 143, @@ -40759,8 +40754,8 @@ "binop": null }, "value": "env", - "start": 3183, - "end": 3186, + "start": 3173, + "end": 3176, "loc": { "start": { "line": 143, @@ -40784,8 +40779,8 @@ "postfix": false, "binop": null }, - "start": 3186, - "end": 3187, + "start": 3176, + "end": 3177, "loc": { "start": { "line": 143, @@ -40809,8 +40804,8 @@ "postfix": false, "binop": null }, - "start": 3187, - "end": 3188, + "start": 3177, + "end": 3178, "loc": { "start": { "line": 143, @@ -40835,8 +40830,8 @@ "binop": null, "updateContext": null }, - "start": 3188, - "end": 3189, + "start": 3178, + "end": 3179, "loc": { "start": { "line": 143, @@ -40863,8 +40858,8 @@ "updateContext": null }, "value": "let", - "start": 3193, - "end": 3196, + "start": 3183, + "end": 3186, "loc": { "start": { "line": 145, @@ -40889,8 +40884,8 @@ "binop": null }, "value": "value", - "start": 3197, - "end": 3202, + "start": 3187, + "end": 3192, "loc": { "start": { "line": 145, @@ -40916,8 +40911,8 @@ "updateContext": null }, "value": "=", - "start": 3203, - "end": 3204, + "start": 3193, + "end": 3194, "loc": { "start": { "line": 145, @@ -40942,8 +40937,8 @@ "binop": null }, "value": "args", - "start": 3205, - "end": 3209, + "start": 3195, + "end": 3199, "loc": { "start": { "line": 145, @@ -40968,8 +40963,8 @@ "binop": null, "updateContext": null }, - "start": 3209, - "end": 3210, + "start": 3199, + "end": 3200, "loc": { "start": { "line": 145, @@ -40994,8 +40989,8 @@ "binop": null }, "value": "args", - "start": 3210, - "end": 3214, + "start": 3200, + "end": 3204, "loc": { "start": { "line": 145, @@ -41020,8 +41015,8 @@ "binop": null, "updateContext": null }, - "start": 3214, - "end": 3215, + "start": 3204, + "end": 3205, "loc": { "start": { "line": 145, @@ -41046,8 +41041,8 @@ "binop": null }, "value": "length", - "start": 3215, - "end": 3221, + "start": 3205, + "end": 3211, "loc": { "start": { "line": 145, @@ -41073,8 +41068,8 @@ "updateContext": null }, "value": "-", - "start": 3222, - "end": 3223, + "start": 3212, + "end": 3213, "loc": { "start": { "line": 145, @@ -41100,8 +41095,8 @@ "updateContext": null }, "value": 1, - "start": 3224, - "end": 3225, + "start": 3214, + "end": 3215, "loc": { "start": { "line": 145, @@ -41126,8 +41121,8 @@ "binop": null, "updateContext": null }, - "start": 3225, - "end": 3226, + "start": 3215, + "end": 3216, "loc": { "start": { "line": 145, @@ -41152,8 +41147,8 @@ "binop": null, "updateContext": null }, - "start": 3226, - "end": 3227, + "start": 3216, + "end": 3217, "loc": { "start": { "line": 145, @@ -41178,8 +41173,8 @@ "binop": null }, "value": "evaluate", - "start": 3227, - "end": 3235, + "start": 3217, + "end": 3225, "loc": { "start": { "line": 145, @@ -41203,8 +41198,8 @@ "postfix": false, "binop": null }, - "start": 3235, - "end": 3236, + "start": 3225, + "end": 3226, "loc": { "start": { "line": 145, @@ -41229,8 +41224,8 @@ "binop": null }, "value": "env", - "start": 3236, - "end": 3239, + "start": 3226, + "end": 3229, "loc": { "start": { "line": 145, @@ -41254,8 +41249,8 @@ "postfix": false, "binop": null }, - "start": 3239, - "end": 3240, + "start": 3229, + "end": 3230, "loc": { "start": { "line": 145, @@ -41280,8 +41275,8 @@ "binop": null, "updateContext": null }, - "start": 3240, - "end": 3241, + "start": 3230, + "end": 3231, "loc": { "start": { "line": 145, @@ -41308,8 +41303,8 @@ "updateContext": null }, "value": "for", - "start": 3245, - "end": 3248, + "start": 3235, + "end": 3238, "loc": { "start": { "line": 147, @@ -41333,8 +41328,8 @@ "postfix": false, "binop": null }, - "start": 3249, - "end": 3250, + "start": 3239, + "end": 3240, "loc": { "start": { "line": 147, @@ -41361,8 +41356,8 @@ "updateContext": null }, "value": "let", - "start": 3250, - "end": 3253, + "start": 3240, + "end": 3243, "loc": { "start": { "line": 147, @@ -41387,8 +41382,8 @@ "binop": null }, "value": "scope", - "start": 3254, - "end": 3259, + "start": 3244, + "end": 3249, "loc": { "start": { "line": 147, @@ -41414,8 +41409,8 @@ "updateContext": null }, "value": "=", - "start": 3260, - "end": 3261, + "start": 3250, + "end": 3251, "loc": { "start": { "line": 147, @@ -41440,8 +41435,8 @@ "binop": null }, "value": "env", - "start": 3262, - "end": 3265, + "start": 3252, + "end": 3255, "loc": { "start": { "line": 147, @@ -41466,8 +41461,8 @@ "binop": null, "updateContext": null }, - "start": 3265, - "end": 3266, + "start": 3255, + "end": 3256, "loc": { "start": { "line": 147, @@ -41492,8 +41487,8 @@ "binop": null }, "value": "scope", - "start": 3267, - "end": 3272, + "start": 3257, + "end": 3262, "loc": { "start": { "line": 147, @@ -41518,8 +41513,8 @@ "binop": null, "updateContext": null }, - "start": 3272, - "end": 3273, + "start": 3262, + "end": 3263, "loc": { "start": { "line": 147, @@ -41544,8 +41539,8 @@ "binop": null }, "value": "scope", - "start": 3274, - "end": 3279, + "start": 3264, + "end": 3269, "loc": { "start": { "line": 147, @@ -41571,8 +41566,8 @@ "updateContext": null }, "value": "=", - "start": 3280, - "end": 3281, + "start": 3270, + "end": 3271, "loc": { "start": { "line": 147, @@ -41597,8 +41592,8 @@ "binop": null }, "value": "Object", - "start": 3282, - "end": 3288, + "start": 3272, + "end": 3278, "loc": { "start": { "line": 147, @@ -41623,8 +41618,8 @@ "binop": null, "updateContext": null }, - "start": 3288, - "end": 3289, + "start": 3278, + "end": 3279, "loc": { "start": { "line": 147, @@ -41649,8 +41644,8 @@ "binop": null }, "value": "getPrototypeOf", - "start": 3289, - "end": 3303, + "start": 3279, + "end": 3293, "loc": { "start": { "line": 147, @@ -41674,8 +41669,8 @@ "postfix": false, "binop": null }, - "start": 3303, - "end": 3304, + "start": 3293, + "end": 3294, "loc": { "start": { "line": 147, @@ -41700,8 +41695,8 @@ "binop": null }, "value": "scope", - "start": 3304, - "end": 3309, + "start": 3294, + "end": 3299, "loc": { "start": { "line": 147, @@ -41725,8 +41720,8 @@ "postfix": false, "binop": null }, - "start": 3309, - "end": 3310, + "start": 3299, + "end": 3300, "loc": { "start": { "line": 147, @@ -41750,8 +41745,8 @@ "postfix": false, "binop": null }, - "start": 3310, - "end": 3311, + "start": 3300, + "end": 3301, "loc": { "start": { "line": 147, @@ -41775,8 +41770,8 @@ "postfix": false, "binop": null }, - "start": 3312, - "end": 3313, + "start": 3302, + "end": 3303, "loc": { "start": { "line": 147, @@ -41803,8 +41798,8 @@ "updateContext": null }, "value": "if", - "start": 3318, - "end": 3320, + "start": 3308, + "end": 3310, "loc": { "start": { "line": 148, @@ -41828,8 +41823,8 @@ "postfix": false, "binop": null }, - "start": 3321, - "end": 3322, + "start": 3311, + "end": 3312, "loc": { "start": { "line": 148, @@ -41854,8 +41849,8 @@ "binop": null }, "value": "valName", - "start": 3322, - "end": 3329, + "start": 3312, + "end": 3319, "loc": { "start": { "line": 148, @@ -41882,8 +41877,8 @@ "updateContext": null }, "value": "in", - "start": 3330, - "end": 3332, + "start": 3320, + "end": 3322, "loc": { "start": { "line": 148, @@ -41908,8 +41903,8 @@ "binop": null }, "value": "scope", - "start": 3333, - "end": 3338, + "start": 3323, + "end": 3328, "loc": { "start": { "line": 148, @@ -41934,8 +41929,8 @@ "binop": null, "updateContext": null }, - "start": 3338, - "end": 3339, + "start": 3328, + "end": 3329, "loc": { "start": { "line": 148, @@ -41961,8 +41956,8 @@ "updateContext": null }, "value": "__const__", - "start": 3339, - "end": 3350, + "start": 3329, + "end": 3340, "loc": { "start": { "line": 148, @@ -41987,8 +41982,8 @@ "binop": null, "updateContext": null }, - "start": 3350, - "end": 3351, + "start": 3340, + "end": 3341, "loc": { "start": { "line": 148, @@ -42012,8 +42007,8 @@ "postfix": false, "binop": null }, - "start": 3351, - "end": 3352, + "start": 3341, + "end": 3342, "loc": { "start": { "line": 148, @@ -42037,8 +42032,8 @@ "postfix": false, "binop": null }, - "start": 3353, - "end": 3354, + "start": 3343, + "end": 3344, "loc": { "start": { "line": 148, @@ -42065,8 +42060,8 @@ "updateContext": null }, "value": "throw", - "start": 3361, - "end": 3366, + "start": 3351, + "end": 3356, "loc": { "start": { "line": 149, @@ -42093,8 +42088,8 @@ "updateContext": null }, "value": "new", - "start": 3367, - "end": 3370, + "start": 3357, + "end": 3360, "loc": { "start": { "line": 149, @@ -42119,8 +42114,8 @@ "binop": null }, "value": "ReferenceError", - "start": 3371, - "end": 3385, + "start": 3361, + "end": 3375, "loc": { "start": { "line": 149, @@ -42144,8 +42139,8 @@ "postfix": false, "binop": null }, - "start": 3385, - "end": 3386, + "start": 3375, + "end": 3376, "loc": { "start": { "line": 149, @@ -42169,8 +42164,8 @@ "postfix": false, "binop": null }, - "start": 3386, - "end": 3387, + "start": 3376, + "end": 3377, "loc": { "start": { "line": 149, @@ -42196,8 +42191,8 @@ "updateContext": null }, "value": "Trying to change 'const' variable ", - "start": 3387, - "end": 3421, + "start": 3377, + "end": 3411, "loc": { "start": { "line": 149, @@ -42221,8 +42216,8 @@ "postfix": false, "binop": null }, - "start": 3421, - "end": 3423, + "start": 3411, + "end": 3413, "loc": { "start": { "line": 149, @@ -42247,8 +42242,8 @@ "binop": null }, "value": "args", - "start": 3423, - "end": 3427, + "start": 3413, + "end": 3417, "loc": { "start": { "line": 149, @@ -42273,8 +42268,8 @@ "binop": null, "updateContext": null }, - "start": 3427, - "end": 3428, + "start": 3417, + "end": 3418, "loc": { "start": { "line": 149, @@ -42300,8 +42295,8 @@ "updateContext": null }, "value": 0, - "start": 3428, - "end": 3429, + "start": 3418, + "end": 3419, "loc": { "start": { "line": 149, @@ -42326,8 +42321,8 @@ "binop": null, "updateContext": null }, - "start": 3429, - "end": 3430, + "start": 3419, + "end": 3420, "loc": { "start": { "line": 149, @@ -42352,8 +42347,8 @@ "binop": null, "updateContext": null }, - "start": 3430, - "end": 3431, + "start": 3420, + "end": 3421, "loc": { "start": { "line": 149, @@ -42378,8 +42373,8 @@ "binop": null }, "value": "name", - "start": 3431, - "end": 3435, + "start": 3421, + "end": 3425, "loc": { "start": { "line": 149, @@ -42403,8 +42398,8 @@ "postfix": false, "binop": null }, - "start": 3435, - "end": 3436, + "start": 3425, + "end": 3426, "loc": { "start": { "line": 149, @@ -42430,8 +42425,8 @@ "updateContext": null }, "value": "", - "start": 3436, - "end": 3436, + "start": 3426, + "end": 3426, "loc": { "start": { "line": 149, @@ -42455,8 +42450,8 @@ "postfix": false, "binop": null }, - "start": 3436, - "end": 3437, + "start": 3426, + "end": 3427, "loc": { "start": { "line": 149, @@ -42480,8 +42475,8 @@ "postfix": false, "binop": null }, - "start": 3437, - "end": 3438, + "start": 3427, + "end": 3428, "loc": { "start": { "line": 149, @@ -42506,8 +42501,8 @@ "binop": null, "updateContext": null }, - "start": 3438, - "end": 3439, + "start": 3428, + "end": 3429, "loc": { "start": { "line": 149, @@ -42531,8 +42526,8 @@ "postfix": false, "binop": null }, - "start": 3444, - "end": 3445, + "start": 3434, + "end": 3435, "loc": { "start": { "line": 150, @@ -42547,8 +42542,8 @@ { "type": "CommentLine", "value": " TODO: Reduce code duplication", - "start": 3451, - "end": 3483, + "start": 3441, + "end": 3473, "loc": { "start": { "line": 152, @@ -42575,8 +42570,8 @@ "updateContext": null }, "value": "if", - "start": 3488, - "end": 3490, + "start": 3478, + "end": 3480, "loc": { "start": { "line": 153, @@ -42600,8 +42595,8 @@ "postfix": false, "binop": null }, - "start": 3491, - "end": 3492, + "start": 3481, + "end": 3482, "loc": { "start": { "line": 153, @@ -42627,8 +42622,8 @@ "updateContext": null }, "value": "this", - "start": 3492, - "end": 3498, + "start": 3482, + "end": 3488, "loc": { "start": { "line": 153, @@ -42655,8 +42650,8 @@ "updateContext": null }, "value": "in", - "start": 3499, - "end": 3501, + "start": 3489, + "end": 3491, "loc": { "start": { "line": 153, @@ -42681,8 +42676,8 @@ "binop": null }, "value": "scope", - "start": 3502, - "end": 3507, + "start": 3492, + "end": 3497, "loc": { "start": { "line": 153, @@ -42706,8 +42701,8 @@ "postfix": false, "binop": null }, - "start": 3507, - "end": 3508, + "start": 3497, + "end": 3498, "loc": { "start": { "line": 153, @@ -42731,8 +42726,8 @@ "postfix": false, "binop": null }, - "start": 3509, - "end": 3510, + "start": 3499, + "end": 3500, "loc": { "start": { "line": 153, @@ -42747,8 +42742,8 @@ { "type": "CommentLine", "value": " TODO: use hasOwnProperty ?", - "start": 3517, - "end": 3546, + "start": 3507, + "end": 3536, "loc": { "start": { "line": 154, @@ -42775,8 +42770,8 @@ "updateContext": null }, "value": "if", - "start": 3554, - "end": 3556, + "start": 3544, + "end": 3546, "loc": { "start": { "line": 156, @@ -42800,8 +42795,8 @@ "postfix": false, "binop": null }, - "start": 3557, - "end": 3558, + "start": 3547, + "end": 3548, "loc": { "start": { "line": 156, @@ -42826,8 +42821,8 @@ "binop": null }, "value": "Object", - "start": 3558, - "end": 3564, + "start": 3548, + "end": 3554, "loc": { "start": { "line": 156, @@ -42852,8 +42847,8 @@ "binop": null, "updateContext": null }, - "start": 3564, - "end": 3565, + "start": 3554, + "end": 3555, "loc": { "start": { "line": 156, @@ -42878,8 +42873,8 @@ "binop": null }, "value": "prototype", - "start": 3565, - "end": 3574, + "start": 3555, + "end": 3564, "loc": { "start": { "line": 156, @@ -42904,8 +42899,8 @@ "binop": null, "updateContext": null }, - "start": 3574, - "end": 3575, + "start": 3564, + "end": 3565, "loc": { "start": { "line": 156, @@ -42930,8 +42925,8 @@ "binop": null }, "value": "hasOwnProperty", - "start": 3575, - "end": 3589, + "start": 3565, + "end": 3579, "loc": { "start": { "line": 156, @@ -42956,8 +42951,8 @@ "binop": null, "updateContext": null }, - "start": 3589, - "end": 3590, + "start": 3579, + "end": 3580, "loc": { "start": { "line": 156, @@ -42982,8 +42977,8 @@ "binop": null }, "value": "call", - "start": 3590, - "end": 3594, + "start": 3580, + "end": 3584, "loc": { "start": { "line": 156, @@ -43007,8 +43002,8 @@ "postfix": false, "binop": null }, - "start": 3594, - "end": 3595, + "start": 3584, + "end": 3585, "loc": { "start": { "line": 156, @@ -43033,8 +43028,8 @@ "binop": null }, "value": "scope", - "start": 3595, - "end": 3600, + "start": 3585, + "end": 3590, "loc": { "start": { "line": 156, @@ -43059,8 +43054,8 @@ "binop": null, "updateContext": null }, - "start": 3600, - "end": 3601, + "start": 3590, + "end": 3591, "loc": { "start": { "line": 156, @@ -43086,8 +43081,8 @@ "updateContext": null }, "value": "this", - "start": 3601, - "end": 3607, + "start": 3591, + "end": 3597, "loc": { "start": { "line": 156, @@ -43112,8 +43107,8 @@ "binop": null, "updateContext": null }, - "start": 3607, - "end": 3608, + "start": 3597, + "end": 3598, "loc": { "start": { "line": 156, @@ -43138,8 +43133,8 @@ "binop": null, "updateContext": null }, - "start": 3608, - "end": 3609, + "start": 3598, + "end": 3599, "loc": { "start": { "line": 156, @@ -43164,8 +43159,8 @@ "binop": null }, "value": "valName", - "start": 3610, - "end": 3617, + "start": 3600, + "end": 3607, "loc": { "start": { "line": 156, @@ -43189,8 +43184,8 @@ "postfix": false, "binop": null }, - "start": 3617, - "end": 3618, + "start": 3607, + "end": 3608, "loc": { "start": { "line": 156, @@ -43214,8 +43209,8 @@ "postfix": false, "binop": null }, - "start": 3618, - "end": 3619, + "start": 3608, + "end": 3609, "loc": { "start": { "line": 156, @@ -43239,8 +43234,8 @@ "postfix": false, "binop": null }, - "start": 3620, - "end": 3621, + "start": 3610, + "end": 3611, "loc": { "start": { "line": 156, @@ -43267,8 +43262,8 @@ "updateContext": null }, "value": "if", - "start": 3630, - "end": 3632, + "start": 3620, + "end": 3622, "loc": { "start": { "line": 157, @@ -43292,8 +43287,8 @@ "postfix": false, "binop": null }, - "start": 3633, - "end": 3634, + "start": 3623, + "end": 3624, "loc": { "start": { "line": 157, @@ -43318,8 +43313,8 @@ "binop": null }, "value": "indices", - "start": 3634, - "end": 3641, + "start": 3624, + "end": 3631, "loc": { "start": { "line": 157, @@ -43344,8 +43339,8 @@ "binop": null, "updateContext": null }, - "start": 3641, - "end": 3642, + "start": 3631, + "end": 3632, "loc": { "start": { "line": 157, @@ -43370,8 +43365,8 @@ "binop": null }, "value": "length", - "start": 3642, - "end": 3648, + "start": 3632, + "end": 3638, "loc": { "start": { "line": 157, @@ -43397,8 +43392,8 @@ "updateContext": null }, "value": "===", - "start": 3649, - "end": 3652, + "start": 3639, + "end": 3642, "loc": { "start": { "line": 157, @@ -43424,8 +43419,8 @@ "updateContext": null }, "value": 0, - "start": 3653, - "end": 3654, + "start": 3643, + "end": 3644, "loc": { "start": { "line": 157, @@ -43449,8 +43444,8 @@ "postfix": false, "binop": null }, - "start": 3654, - "end": 3655, + "start": 3644, + "end": 3645, "loc": { "start": { "line": 157, @@ -43474,8 +43469,8 @@ "postfix": false, "binop": null }, - "start": 3656, - "end": 3657, + "start": 3646, + "end": 3647, "loc": { "start": { "line": 157, @@ -43500,8 +43495,8 @@ "binop": null }, "value": "scope", - "start": 3668, - "end": 3673, + "start": 3658, + "end": 3663, "loc": { "start": { "line": 158, @@ -43526,8 +43521,8 @@ "binop": null, "updateContext": null }, - "start": 3673, - "end": 3674, + "start": 3663, + "end": 3664, "loc": { "start": { "line": 158, @@ -43553,8 +43548,8 @@ "updateContext": null }, "value": "this", - "start": 3674, - "end": 3680, + "start": 3664, + "end": 3670, "loc": { "start": { "line": 158, @@ -43579,8 +43574,8 @@ "binop": null, "updateContext": null }, - "start": 3680, - "end": 3681, + "start": 3670, + "end": 3671, "loc": { "start": { "line": 158, @@ -43605,8 +43600,8 @@ "binop": null, "updateContext": null }, - "start": 3681, - "end": 3682, + "start": 3671, + "end": 3672, "loc": { "start": { "line": 158, @@ -43631,8 +43626,8 @@ "binop": null }, "value": "valName", - "start": 3682, - "end": 3689, + "start": 3672, + "end": 3679, "loc": { "start": { "line": 158, @@ -43657,8 +43652,8 @@ "binop": null, "updateContext": null }, - "start": 3689, - "end": 3690, + "start": 3679, + "end": 3680, "loc": { "start": { "line": 158, @@ -43684,8 +43679,8 @@ "updateContext": null }, "value": "=", - "start": 3691, - "end": 3692, + "start": 3681, + "end": 3682, "loc": { "start": { "line": 158, @@ -43710,8 +43705,8 @@ "binop": null }, "value": "value", - "start": 3693, - "end": 3698, + "start": 3683, + "end": 3688, "loc": { "start": { "line": 158, @@ -43736,8 +43731,8 @@ "binop": null, "updateContext": null }, - "start": 3698, - "end": 3699, + "start": 3688, + "end": 3689, "loc": { "start": { "line": 158, @@ -43761,8 +43756,8 @@ "postfix": false, "binop": null }, - "start": 3708, - "end": 3709, + "start": 3698, + "end": 3699, "loc": { "start": { "line": 159, @@ -43789,8 +43784,8 @@ "updateContext": null }, "value": "else", - "start": 3710, - "end": 3714, + "start": 3700, + "end": 3704, "loc": { "start": { "line": 159, @@ -43814,8 +43809,8 @@ "postfix": false, "binop": null }, - "start": 3715, - "end": 3716, + "start": 3705, + "end": 3706, "loc": { "start": { "line": 159, @@ -43840,8 +43835,8 @@ "binop": null }, "value": "scope", - "start": 3727, - "end": 3732, + "start": 3717, + "end": 3722, "loc": { "start": { "line": 160, @@ -43866,8 +43861,8 @@ "binop": null, "updateContext": null }, - "start": 3732, - "end": 3733, + "start": 3722, + "end": 3723, "loc": { "start": { "line": 160, @@ -43893,8 +43888,8 @@ "updateContext": null }, "value": "this", - "start": 3733, - "end": 3739, + "start": 3723, + "end": 3729, "loc": { "start": { "line": 160, @@ -43919,8 +43914,8 @@ "binop": null, "updateContext": null }, - "start": 3739, - "end": 3740, + "start": 3729, + "end": 3730, "loc": { "start": { "line": 160, @@ -43945,8 +43940,8 @@ "binop": null, "updateContext": null }, - "start": 3740, - "end": 3741, + "start": 3730, + "end": 3731, "loc": { "start": { "line": 160, @@ -43971,8 +43966,8 @@ "binop": null }, "value": "valName", - "start": 3741, - "end": 3748, + "start": 3731, + "end": 3738, "loc": { "start": { "line": 160, @@ -43997,8 +43992,8 @@ "binop": null, "updateContext": null }, - "start": 3748, - "end": 3749, + "start": 3738, + "end": 3739, "loc": { "start": { "line": 160, @@ -44023,8 +44018,8 @@ "binop": null, "updateContext": null }, - "start": 3749, - "end": 3750, + "start": 3739, + "end": 3740, "loc": { "start": { "line": 160, @@ -44049,8 +44044,8 @@ "binop": null }, "value": "setelem", - "start": 3750, - "end": 3757, + "start": 3740, + "end": 3747, "loc": { "start": { "line": 160, @@ -44074,8 +44069,8 @@ "postfix": false, "binop": null }, - "start": 3757, - "end": 3758, + "start": 3747, + "end": 3748, "loc": { "start": { "line": 160, @@ -44100,8 +44095,8 @@ "binop": null }, "value": "value", - "start": 3758, - "end": 3763, + "start": 3748, + "end": 3753, "loc": { "start": { "line": 160, @@ -44126,8 +44121,8 @@ "binop": null, "updateContext": null }, - "start": 3763, - "end": 3764, + "start": 3753, + "end": 3754, "loc": { "start": { "line": 160, @@ -44152,8 +44147,8 @@ "binop": null, "updateContext": null }, - "start": 3765, - "end": 3768, + "start": 3755, + "end": 3758, "loc": { "start": { "line": 160, @@ -44178,8 +44173,8 @@ "binop": null }, "value": "indices", - "start": 3768, - "end": 3775, + "start": 3758, + "end": 3765, "loc": { "start": { "line": 160, @@ -44203,8 +44198,8 @@ "postfix": false, "binop": null }, - "start": 3775, - "end": 3776, + "start": 3765, + "end": 3766, "loc": { "start": { "line": 160, @@ -44229,8 +44224,8 @@ "binop": null, "updateContext": null }, - "start": 3776, - "end": 3777, + "start": 3766, + "end": 3767, "loc": { "start": { "line": 160, @@ -44254,8 +44249,8 @@ "postfix": false, "binop": null }, - "start": 3786, - "end": 3787, + "start": 3776, + "end": 3777, "loc": { "start": { "line": 161, @@ -44282,8 +44277,8 @@ "updateContext": null }, "value": "return", - "start": 3797, - "end": 3803, + "start": 3787, + "end": 3793, "loc": { "start": { "line": 163, @@ -44308,8 +44303,8 @@ "binop": null }, "value": "value", - "start": 3804, - "end": 3809, + "start": 3794, + "end": 3799, "loc": { "start": { "line": 163, @@ -44334,8 +44329,8 @@ "binop": null, "updateContext": null }, - "start": 3809, - "end": 3810, + "start": 3799, + "end": 3800, "loc": { "start": { "line": 163, @@ -44359,8 +44354,8 @@ "postfix": false, "binop": null }, - "start": 3817, - "end": 3818, + "start": 3807, + "end": 3808, "loc": { "start": { "line": 164, @@ -44384,8 +44379,8 @@ "postfix": false, "binop": null }, - "start": 3823, - "end": 3824, + "start": 3813, + "end": 3814, "loc": { "start": { "line": 165, @@ -44412,8 +44407,8 @@ "updateContext": null }, "value": "if", - "start": 3830, - "end": 3832, + "start": 3820, + "end": 3822, "loc": { "start": { "line": 167, @@ -44437,8 +44432,8 @@ "postfix": false, "binop": null }, - "start": 3833, - "end": 3834, + "start": 3823, + "end": 3824, "loc": { "start": { "line": 167, @@ -44463,8 +44458,8 @@ "binop": null }, "value": "Object", - "start": 3834, - "end": 3840, + "start": 3824, + "end": 3830, "loc": { "start": { "line": 167, @@ -44489,8 +44484,8 @@ "binop": null, "updateContext": null }, - "start": 3840, - "end": 3841, + "start": 3830, + "end": 3831, "loc": { "start": { "line": 167, @@ -44515,8 +44510,8 @@ "binop": null }, "value": "prototype", - "start": 3841, - "end": 3850, + "start": 3831, + "end": 3840, "loc": { "start": { "line": 167, @@ -44541,8 +44536,8 @@ "binop": null, "updateContext": null }, - "start": 3850, - "end": 3851, + "start": 3840, + "end": 3841, "loc": { "start": { "line": 167, @@ -44567,8 +44562,8 @@ "binop": null }, "value": "hasOwnProperty", - "start": 3851, - "end": 3865, + "start": 3841, + "end": 3855, "loc": { "start": { "line": 167, @@ -44593,8 +44588,8 @@ "binop": null, "updateContext": null }, - "start": 3865, - "end": 3866, + "start": 3855, + "end": 3856, "loc": { "start": { "line": 167, @@ -44619,8 +44614,8 @@ "binop": null }, "value": "call", - "start": 3866, - "end": 3870, + "start": 3856, + "end": 3860, "loc": { "start": { "line": 167, @@ -44644,8 +44639,8 @@ "postfix": false, "binop": null }, - "start": 3870, - "end": 3871, + "start": 3860, + "end": 3861, "loc": { "start": { "line": 167, @@ -44670,8 +44665,8 @@ "binop": null }, "value": "scope", - "start": 3871, - "end": 3876, + "start": 3861, + "end": 3866, "loc": { "start": { "line": 167, @@ -44696,8 +44691,8 @@ "binop": null, "updateContext": null }, - "start": 3876, - "end": 3877, + "start": 3866, + "end": 3867, "loc": { "start": { "line": 167, @@ -44722,8 +44717,8 @@ "binop": null }, "value": "valName", - "start": 3878, - "end": 3885, + "start": 3868, + "end": 3875, "loc": { "start": { "line": 167, @@ -44747,8 +44742,8 @@ "postfix": false, "binop": null }, - "start": 3885, - "end": 3886, + "start": 3875, + "end": 3876, "loc": { "start": { "line": 167, @@ -44772,8 +44767,8 @@ "postfix": false, "binop": null }, - "start": 3886, - "end": 3887, + "start": 3876, + "end": 3877, "loc": { "start": { "line": 167, @@ -44797,8 +44792,8 @@ "postfix": false, "binop": null }, - "start": 3888, - "end": 3889, + "start": 3878, + "end": 3879, "loc": { "start": { "line": 167, @@ -44825,8 +44820,8 @@ "updateContext": null }, "value": "if", - "start": 3896, - "end": 3898, + "start": 3886, + "end": 3888, "loc": { "start": { "line": 168, @@ -44850,8 +44845,8 @@ "postfix": false, "binop": null }, - "start": 3899, - "end": 3900, + "start": 3889, + "end": 3890, "loc": { "start": { "line": 168, @@ -44876,8 +44871,8 @@ "binop": null }, "value": "indices", - "start": 3900, - "end": 3907, + "start": 3890, + "end": 3897, "loc": { "start": { "line": 168, @@ -44902,8 +44897,8 @@ "binop": null, "updateContext": null }, - "start": 3907, - "end": 3908, + "start": 3897, + "end": 3898, "loc": { "start": { "line": 168, @@ -44928,8 +44923,8 @@ "binop": null }, "value": "length", - "start": 3908, - "end": 3914, + "start": 3898, + "end": 3904, "loc": { "start": { "line": 168, @@ -44955,8 +44950,8 @@ "updateContext": null }, "value": "===", - "start": 3915, - "end": 3918, + "start": 3905, + "end": 3908, "loc": { "start": { "line": 168, @@ -44982,8 +44977,8 @@ "updateContext": null }, "value": 0, - "start": 3919, - "end": 3920, + "start": 3909, + "end": 3910, "loc": { "start": { "line": 168, @@ -45007,8 +45002,8 @@ "postfix": false, "binop": null }, - "start": 3920, - "end": 3921, + "start": 3910, + "end": 3911, "loc": { "start": { "line": 168, @@ -45032,8 +45027,8 @@ "postfix": false, "binop": null }, - "start": 3922, - "end": 3923, + "start": 3912, + "end": 3913, "loc": { "start": { "line": 168, @@ -45058,8 +45053,8 @@ "binop": null }, "value": "scope", - "start": 3932, - "end": 3937, + "start": 3922, + "end": 3927, "loc": { "start": { "line": 169, @@ -45084,8 +45079,8 @@ "binop": null, "updateContext": null }, - "start": 3937, - "end": 3938, + "start": 3927, + "end": 3928, "loc": { "start": { "line": 169, @@ -45110,8 +45105,8 @@ "binop": null }, "value": "valName", - "start": 3938, - "end": 3945, + "start": 3928, + "end": 3935, "loc": { "start": { "line": 169, @@ -45136,8 +45131,8 @@ "binop": null, "updateContext": null }, - "start": 3945, - "end": 3946, + "start": 3935, + "end": 3936, "loc": { "start": { "line": 169, @@ -45163,8 +45158,8 @@ "updateContext": null }, "value": "=", - "start": 3947, - "end": 3948, + "start": 3937, + "end": 3938, "loc": { "start": { "line": 169, @@ -45189,8 +45184,8 @@ "binop": null }, "value": "value", - "start": 3949, - "end": 3954, + "start": 3939, + "end": 3944, "loc": { "start": { "line": 169, @@ -45215,8 +45210,8 @@ "binop": null, "updateContext": null }, - "start": 3954, - "end": 3955, + "start": 3944, + "end": 3945, "loc": { "start": { "line": 169, @@ -45240,8 +45235,8 @@ "postfix": false, "binop": null }, - "start": 3962, - "end": 3963, + "start": 3952, + "end": 3953, "loc": { "start": { "line": 170, @@ -45268,8 +45263,8 @@ "updateContext": null }, "value": "else", - "start": 3964, - "end": 3968, + "start": 3954, + "end": 3958, "loc": { "start": { "line": 170, @@ -45293,8 +45288,8 @@ "postfix": false, "binop": null }, - "start": 3969, - "end": 3970, + "start": 3959, + "end": 3960, "loc": { "start": { "line": 170, @@ -45319,8 +45314,8 @@ "binop": null }, "value": "scope", - "start": 3979, - "end": 3984, + "start": 3969, + "end": 3974, "loc": { "start": { "line": 171, @@ -45345,8 +45340,8 @@ "binop": null, "updateContext": null }, - "start": 3984, - "end": 3985, + "start": 3974, + "end": 3975, "loc": { "start": { "line": 171, @@ -45371,8 +45366,8 @@ "binop": null }, "value": "valName", - "start": 3985, - "end": 3992, + "start": 3975, + "end": 3982, "loc": { "start": { "line": 171, @@ -45397,8 +45392,8 @@ "binop": null, "updateContext": null }, - "start": 3992, - "end": 3993, + "start": 3982, + "end": 3983, "loc": { "start": { "line": 171, @@ -45423,8 +45418,8 @@ "binop": null, "updateContext": null }, - "start": 3993, - "end": 3994, + "start": 3983, + "end": 3984, "loc": { "start": { "line": 171, @@ -45449,8 +45444,8 @@ "binop": null }, "value": "setelem", - "start": 3994, - "end": 4001, + "start": 3984, + "end": 3991, "loc": { "start": { "line": 171, @@ -45474,8 +45469,8 @@ "postfix": false, "binop": null }, - "start": 4001, - "end": 4002, + "start": 3991, + "end": 3992, "loc": { "start": { "line": 171, @@ -45500,8 +45495,8 @@ "binop": null }, "value": "value", - "start": 4002, - "end": 4007, + "start": 3992, + "end": 3997, "loc": { "start": { "line": 171, @@ -45526,8 +45521,8 @@ "binop": null, "updateContext": null }, - "start": 4007, - "end": 4008, + "start": 3997, + "end": 3998, "loc": { "start": { "line": 171, @@ -45552,8 +45547,8 @@ "binop": null, "updateContext": null }, - "start": 4009, - "end": 4012, + "start": 3999, + "end": 4002, "loc": { "start": { "line": 171, @@ -45578,8 +45573,8 @@ "binop": null }, "value": "indices", - "start": 4012, - "end": 4019, + "start": 4002, + "end": 4009, "loc": { "start": { "line": 171, @@ -45603,8 +45598,8 @@ "postfix": false, "binop": null }, - "start": 4019, - "end": 4020, + "start": 4009, + "end": 4010, "loc": { "start": { "line": 171, @@ -45629,8 +45624,8 @@ "binop": null, "updateContext": null }, - "start": 4020, - "end": 4021, + "start": 4010, + "end": 4011, "loc": { "start": { "line": 171, @@ -45654,8 +45649,8 @@ "postfix": false, "binop": null }, - "start": 4028, - "end": 4029, + "start": 4018, + "end": 4019, "loc": { "start": { "line": 172, @@ -45682,8 +45677,8 @@ "updateContext": null }, "value": "return", - "start": 4037, - "end": 4043, + "start": 4027, + "end": 4033, "loc": { "start": { "line": 174, @@ -45708,8 +45703,8 @@ "binop": null }, "value": "value", - "start": 4044, - "end": 4049, + "start": 4034, + "end": 4039, "loc": { "start": { "line": 174, @@ -45734,8 +45729,8 @@ "binop": null, "updateContext": null }, - "start": 4049, - "end": 4050, + "start": 4039, + "end": 4040, "loc": { "start": { "line": 174, @@ -45759,8 +45754,8 @@ "postfix": false, "binop": null }, - "start": 4055, - "end": 4056, + "start": 4045, + "end": 4046, "loc": { "start": { "line": 175, @@ -45784,8 +45779,8 @@ "postfix": false, "binop": null }, - "start": 4059, - "end": 4060, + "start": 4049, + "end": 4050, "loc": { "start": { "line": 176, @@ -45812,8 +45807,8 @@ "updateContext": null }, "value": "throw", - "start": 4064, - "end": 4069, + "start": 4054, + "end": 4059, "loc": { "start": { "line": 178, @@ -45840,8 +45835,8 @@ "updateContext": null }, "value": "new", - "start": 4070, - "end": 4073, + "start": 4060, + "end": 4063, "loc": { "start": { "line": 178, @@ -45866,8 +45861,8 @@ "binop": null }, "value": "ReferenceError", - "start": 4074, - "end": 4088, + "start": 4064, + "end": 4078, "loc": { "start": { "line": 178, @@ -45891,8 +45886,8 @@ "postfix": false, "binop": null }, - "start": 4088, - "end": 4089, + "start": 4078, + "end": 4079, "loc": { "start": { "line": 178, @@ -45916,8 +45911,8 @@ "postfix": false, "binop": null }, - "start": 4089, - "end": 4090, + "start": 4079, + "end": 4080, "loc": { "start": { "line": 178, @@ -45943,8 +45938,8 @@ "updateContext": null }, "value": "Tried setting an undefined variable: ", - "start": 4090, - "end": 4127, + "start": 4080, + "end": 4117, "loc": { "start": { "line": 178, @@ -45968,8 +45963,8 @@ "postfix": false, "binop": null }, - "start": 4127, - "end": 4129, + "start": 4117, + "end": 4119, "loc": { "start": { "line": 178, @@ -45994,8 +45989,8 @@ "binop": null }, "value": "valName", - "start": 4129, - "end": 4136, + "start": 4119, + "end": 4126, "loc": { "start": { "line": 178, @@ -46019,8 +46014,8 @@ "postfix": false, "binop": null }, - "start": 4136, - "end": 4137, + "start": 4126, + "end": 4127, "loc": { "start": { "line": 178, @@ -46046,8 +46041,8 @@ "updateContext": null }, "value": "", - "start": 4137, - "end": 4137, + "start": 4127, + "end": 4127, "loc": { "start": { "line": 178, @@ -46071,8 +46066,8 @@ "postfix": false, "binop": null }, - "start": 4137, - "end": 4138, + "start": 4127, + "end": 4128, "loc": { "start": { "line": 178, @@ -46096,8 +46091,8 @@ "postfix": false, "binop": null }, - "start": 4138, - "end": 4139, + "start": 4128, + "end": 4129, "loc": { "start": { "line": 178, @@ -46122,8 +46117,8 @@ "binop": null, "updateContext": null }, - "start": 4139, - "end": 4140, + "start": 4129, + "end": 4130, "loc": { "start": { "line": 178, @@ -46147,8 +46142,8 @@ "postfix": false, "binop": null }, - "start": 4141, - "end": 4142, + "start": 4131, + "end": 4132, "loc": { "start": { "line": 179, @@ -46173,8 +46168,8 @@ "binop": null, "updateContext": null }, - "start": 4142, - "end": 4143, + "start": 4132, + "end": 4133, "loc": { "start": { "line": 179, @@ -46199,8 +46194,8 @@ "binop": null }, "value": "SpecialForms", - "start": 4145, - "end": 4157, + "start": 4135, + "end": 4147, "loc": { "start": { "line": 181, @@ -46225,8 +46220,8 @@ "binop": null, "updateContext": null }, - "start": 4157, - "end": 4158, + "start": 4147, + "end": 4148, "loc": { "start": { "line": 181, @@ -46252,8 +46247,8 @@ "updateContext": null }, "value": "object", - "start": 4158, - "end": 4166, + "start": 4148, + "end": 4156, "loc": { "start": { "line": 181, @@ -46278,8 +46273,8 @@ "binop": null, "updateContext": null }, - "start": 4166, - "end": 4167, + "start": 4156, + "end": 4157, "loc": { "start": { "line": 181, @@ -46305,8 +46300,8 @@ "updateContext": null }, "value": "=", - "start": 4168, - "end": 4169, + "start": 4158, + "end": 4159, "loc": { "start": { "line": 181, @@ -46330,8 +46325,8 @@ "postfix": false, "binop": null }, - "start": 4170, - "end": 4171, + "start": 4160, + "end": 4161, "loc": { "start": { "line": 181, @@ -46356,8 +46351,8 @@ "binop": null }, "value": "args", - "start": 4171, - "end": 4175, + "start": 4161, + "end": 4165, "loc": { "start": { "line": 181, @@ -46382,8 +46377,8 @@ "binop": null, "updateContext": null }, - "start": 4175, - "end": 4176, + "start": 4165, + "end": 4166, "loc": { "start": { "line": 181, @@ -46408,8 +46403,8 @@ "binop": null }, "value": "env", - "start": 4177, - "end": 4180, + "start": 4167, + "end": 4170, "loc": { "start": { "line": 181, @@ -46433,8 +46428,8 @@ "postfix": false, "binop": null }, - "start": 4180, - "end": 4181, + "start": 4170, + "end": 4171, "loc": { "start": { "line": 181, @@ -46459,8 +46454,8 @@ "binop": null, "updateContext": null }, - "start": 4182, - "end": 4184, + "start": 4172, + "end": 4174, "loc": { "start": { "line": 181, @@ -46484,8 +46479,8 @@ "postfix": false, "binop": null }, - "start": 4185, - "end": 4186, + "start": 4175, + "end": 4176, "loc": { "start": { "line": 181, @@ -46500,8 +46495,8 @@ { "type": "CommentLine", "value": " Create a new object and a new scope", - "start": 4189, - "end": 4227, + "start": 4179, + "end": 4217, "loc": { "start": { "line": 182, @@ -46528,8 +46523,8 @@ "updateContext": null }, "value": "const", - "start": 4230, - "end": 4235, + "start": 4220, + "end": 4225, "loc": { "start": { "line": 183, @@ -46554,8 +46549,8 @@ "binop": null }, "value": "object", - "start": 4236, - "end": 4242, + "start": 4226, + "end": 4232, "loc": { "start": { "line": 183, @@ -46581,8 +46576,8 @@ "updateContext": null }, "value": "=", - "start": 4243, - "end": 4244, + "start": 4233, + "end": 4234, "loc": { "start": { "line": 183, @@ -46606,8 +46601,8 @@ "postfix": false, "binop": null }, - "start": 4245, - "end": 4246, + "start": 4235, + "end": 4236, "loc": { "start": { "line": 183, @@ -46631,8 +46626,8 @@ "postfix": false, "binop": null }, - "start": 4246, - "end": 4247, + "start": 4236, + "end": 4237, "loc": { "start": { "line": 183, @@ -46657,8 +46652,8 @@ "binop": null, "updateContext": null }, - "start": 4247, - "end": 4248, + "start": 4237, + "end": 4238, "loc": { "start": { "line": 183, @@ -46685,8 +46680,8 @@ "updateContext": null }, "value": "const", - "start": 4251, - "end": 4256, + "start": 4241, + "end": 4246, "loc": { "start": { "line": 184, @@ -46711,8 +46706,8 @@ "binop": null }, "value": "objectEnv", - "start": 4257, - "end": 4266, + "start": 4247, + "end": 4256, "loc": { "start": { "line": 184, @@ -46738,8 +46733,8 @@ "updateContext": null }, "value": "=", - "start": 4267, - "end": 4268, + "start": 4257, + "end": 4258, "loc": { "start": { "line": 184, @@ -46764,8 +46759,8 @@ "binop": null }, "value": "Object", - "start": 4269, - "end": 4275, + "start": 4259, + "end": 4265, "loc": { "start": { "line": 184, @@ -46790,8 +46785,8 @@ "binop": null, "updateContext": null }, - "start": 4275, - "end": 4276, + "start": 4265, + "end": 4266, "loc": { "start": { "line": 184, @@ -46816,8 +46811,8 @@ "binop": null }, "value": "create", - "start": 4276, - "end": 4282, + "start": 4266, + "end": 4272, "loc": { "start": { "line": 184, @@ -46841,8 +46836,8 @@ "postfix": false, "binop": null }, - "start": 4282, - "end": 4283, + "start": 4272, + "end": 4273, "loc": { "start": { "line": 184, @@ -46867,8 +46862,8 @@ "binop": null }, "value": "env", - "start": 4283, - "end": 4286, + "start": 4273, + "end": 4276, "loc": { "start": { "line": 184, @@ -46892,8 +46887,8 @@ "postfix": false, "binop": null }, - "start": 4286, - "end": 4287, + "start": 4276, + "end": 4277, "loc": { "start": { "line": 184, @@ -46918,8 +46913,8 @@ "binop": null, "updateContext": null }, - "start": 4287, - "end": 4288, + "start": 4277, + "end": 4278, "loc": { "start": { "line": 184, @@ -46944,8 +46939,8 @@ "binop": null }, "value": "objectEnv", - "start": 4291, - "end": 4300, + "start": 4281, + "end": 4290, "loc": { "start": { "line": 185, @@ -46970,8 +46965,8 @@ "binop": null, "updateContext": null }, - "start": 4300, - "end": 4301, + "start": 4290, + "end": 4291, "loc": { "start": { "line": 185, @@ -46997,8 +46992,8 @@ "updateContext": null }, "value": "__const__", - "start": 4301, - "end": 4312, + "start": 4291, + "end": 4302, "loc": { "start": { "line": 185, @@ -47023,8 +47018,8 @@ "binop": null, "updateContext": null }, - "start": 4312, - "end": 4313, + "start": 4302, + "end": 4303, "loc": { "start": { "line": 185, @@ -47050,8 +47045,8 @@ "updateContext": null }, "value": "=", - "start": 4314, - "end": 4315, + "start": 4304, + "end": 4305, "loc": { "start": { "line": 185, @@ -47075,8 +47070,8 @@ "postfix": false, "binop": null }, - "start": 4316, - "end": 4317, + "start": 4306, + "end": 4307, "loc": { "start": { "line": 185, @@ -47100,8 +47095,8 @@ "postfix": false, "binop": null }, - "start": 4317, - "end": 4318, + "start": 4307, + "end": 4308, "loc": { "start": { "line": 185, @@ -47126,8 +47121,8 @@ "binop": null, "updateContext": null }, - "start": 4318, - "end": 4319, + "start": 4308, + "end": 4309, "loc": { "start": { "line": 185, @@ -47142,8 +47137,8 @@ { "type": "CommentLine", "value": " Add the variable 'this' as a reference to the current object", - "start": 4323, - "end": 4386, + "start": 4313, + "end": 4376, "loc": { "start": { "line": 187, @@ -47168,8 +47163,8 @@ "binop": null }, "value": "objectEnv", - "start": 4389, - "end": 4398, + "start": 4379, + "end": 4388, "loc": { "start": { "line": 188, @@ -47194,8 +47189,8 @@ "binop": null, "updateContext": null }, - "start": 4398, - "end": 4399, + "start": 4388, + "end": 4389, "loc": { "start": { "line": 188, @@ -47221,8 +47216,8 @@ "updateContext": null }, "value": "this", - "start": 4399, - "end": 4405, + "start": 4389, + "end": 4395, "loc": { "start": { "line": 188, @@ -47247,8 +47242,8 @@ "binop": null, "updateContext": null }, - "start": 4405, - "end": 4406, + "start": 4395, + "end": 4396, "loc": { "start": { "line": 188, @@ -47274,8 +47269,8 @@ "updateContext": null }, "value": "=", - "start": 4407, - "end": 4408, + "start": 4397, + "end": 4398, "loc": { "start": { "line": 188, @@ -47300,8 +47295,8 @@ "binop": null }, "value": "object", - "start": 4409, - "end": 4415, + "start": 4399, + "end": 4405, "loc": { "start": { "line": 188, @@ -47326,8 +47321,8 @@ "binop": null, "updateContext": null }, - "start": 4415, - "end": 4416, + "start": 4405, + "end": 4406, "loc": { "start": { "line": 188, @@ -47342,8 +47337,8 @@ { "type": "CommentLine", "value": " Evaluate the arguments and add the methods/properties to the object", - "start": 4420, - "end": 4490, + "start": 4410, + "end": 4480, "loc": { "start": { "line": 190, @@ -47370,8 +47365,8 @@ "updateContext": null }, "value": "const", - "start": 4493, - "end": 4498, + "start": 4483, + "end": 4488, "loc": { "start": { "line": 191, @@ -47396,8 +47391,8 @@ "binop": null }, "value": "evArgs", - "start": 4499, - "end": 4505, + "start": 4489, + "end": 4495, "loc": { "start": { "line": 191, @@ -47423,8 +47418,8 @@ "updateContext": null }, "value": "=", - "start": 4506, - "end": 4507, + "start": 4496, + "end": 4497, "loc": { "start": { "line": 191, @@ -47449,8 +47444,8 @@ "binop": null }, "value": "args", - "start": 4508, - "end": 4512, + "start": 4498, + "end": 4502, "loc": { "start": { "line": 191, @@ -47475,8 +47470,8 @@ "binop": null, "updateContext": null }, - "start": 4512, - "end": 4513, + "start": 4502, + "end": 4503, "loc": { "start": { "line": 191, @@ -47501,8 +47496,8 @@ "binop": null }, "value": "map", - "start": 4513, - "end": 4516, + "start": 4503, + "end": 4506, "loc": { "start": { "line": 191, @@ -47526,8 +47521,8 @@ "postfix": false, "binop": null }, - "start": 4516, - "end": 4517, + "start": 4506, + "end": 4507, "loc": { "start": { "line": 191, @@ -47552,8 +47547,8 @@ "binop": null }, "value": "arg", - "start": 4517, - "end": 4520, + "start": 4507, + "end": 4510, "loc": { "start": { "line": 191, @@ -47578,8 +47573,8 @@ "binop": null, "updateContext": null }, - "start": 4521, - "end": 4523, + "start": 4511, + "end": 4513, "loc": { "start": { "line": 191, @@ -47604,8 +47599,8 @@ "binop": null }, "value": "arg", - "start": 4524, - "end": 4527, + "start": 4514, + "end": 4517, "loc": { "start": { "line": 191, @@ -47630,8 +47625,8 @@ "binop": null, "updateContext": null }, - "start": 4527, - "end": 4528, + "start": 4517, + "end": 4518, "loc": { "start": { "line": 191, @@ -47656,8 +47651,8 @@ "binop": null }, "value": "evaluate", - "start": 4528, - "end": 4536, + "start": 4518, + "end": 4526, "loc": { "start": { "line": 191, @@ -47681,8 +47676,8 @@ "postfix": false, "binop": null }, - "start": 4536, - "end": 4537, + "start": 4526, + "end": 4527, "loc": { "start": { "line": 191, @@ -47707,8 +47702,8 @@ "binop": null }, "value": "objectEnv", - "start": 4537, - "end": 4546, + "start": 4527, + "end": 4536, "loc": { "start": { "line": 191, @@ -47732,8 +47727,8 @@ "postfix": false, "binop": null }, - "start": 4546, - "end": 4547, + "start": 4536, + "end": 4537, "loc": { "start": { "line": 191, @@ -47757,8 +47752,8 @@ "postfix": false, "binop": null }, - "start": 4547, - "end": 4548, + "start": 4537, + "end": 4538, "loc": { "start": { "line": 191, @@ -47783,8 +47778,8 @@ "binop": null, "updateContext": null }, - "start": 4548, - "end": 4549, + "start": 4538, + "end": 4539, "loc": { "start": { "line": 191, @@ -47811,8 +47806,8 @@ "updateContext": null }, "value": "for", - "start": 4553, - "end": 4556, + "start": 4543, + "end": 4546, "loc": { "start": { "line": 193, @@ -47836,8 +47831,8 @@ "postfix": false, "binop": null }, - "start": 4557, - "end": 4558, + "start": 4547, + "end": 4548, "loc": { "start": { "line": 193, @@ -47864,8 +47859,8 @@ "updateContext": null }, "value": "const", - "start": 4558, - "end": 4563, + "start": 4548, + "end": 4553, "loc": { "start": { "line": 193, @@ -47890,8 +47885,8 @@ "binop": null }, "value": "pair", - "start": 4564, - "end": 4568, + "start": 4554, + "end": 4558, "loc": { "start": { "line": 193, @@ -47916,8 +47911,8 @@ "binop": null }, "value": "of", - "start": 4569, - "end": 4571, + "start": 4559, + "end": 4561, "loc": { "start": { "line": 193, @@ -47942,8 +47937,8 @@ "binop": null }, "value": "utils", - "start": 4572, - "end": 4577, + "start": 4562, + "end": 4567, "loc": { "start": { "line": 193, @@ -47968,8 +47963,8 @@ "binop": null, "updateContext": null }, - "start": 4577, - "end": 4578, + "start": 4567, + "end": 4568, "loc": { "start": { "line": 193, @@ -47994,8 +47989,8 @@ "binop": null }, "value": "chunk", - "start": 4578, - "end": 4583, + "start": 4568, + "end": 4573, "loc": { "start": { "line": 193, @@ -48019,8 +48014,8 @@ "postfix": false, "binop": null }, - "start": 4583, - "end": 4584, + "start": 4573, + "end": 4574, "loc": { "start": { "line": 193, @@ -48045,8 +48040,8 @@ "binop": null }, "value": "evArgs", - "start": 4584, - "end": 4590, + "start": 4574, + "end": 4580, "loc": { "start": { "line": 193, @@ -48071,8 +48066,8 @@ "binop": null, "updateContext": null }, - "start": 4590, - "end": 4591, + "start": 4580, + "end": 4581, "loc": { "start": { "line": 193, @@ -48098,8 +48093,8 @@ "updateContext": null }, "value": 2, - "start": 4592, - "end": 4593, + "start": 4582, + "end": 4583, "loc": { "start": { "line": 193, @@ -48123,8 +48118,8 @@ "postfix": false, "binop": null }, - "start": 4593, - "end": 4594, + "start": 4583, + "end": 4584, "loc": { "start": { "line": 193, @@ -48148,8 +48143,8 @@ "postfix": false, "binop": null }, - "start": 4594, - "end": 4595, + "start": 4584, + "end": 4585, "loc": { "start": { "line": 193, @@ -48173,8 +48168,8 @@ "postfix": false, "binop": null }, - "start": 4596, - "end": 4597, + "start": 4586, + "end": 4587, "loc": { "start": { "line": 193, @@ -48201,8 +48196,8 @@ "updateContext": null }, "value": "const", - "start": 4602, - "end": 4607, + "start": 4592, + "end": 4597, "loc": { "start": { "line": 194, @@ -48227,8 +48222,8 @@ "binop": null }, "value": "name", - "start": 4608, - "end": 4612, + "start": 4598, + "end": 4602, "loc": { "start": { "line": 194, @@ -48254,8 +48249,8 @@ "updateContext": null }, "value": "=", - "start": 4613, - "end": 4614, + "start": 4603, + "end": 4604, "loc": { "start": { "line": 194, @@ -48280,8 +48275,8 @@ "binop": null }, "value": "pair", - "start": 4615, - "end": 4619, + "start": 4605, + "end": 4609, "loc": { "start": { "line": 194, @@ -48306,8 +48301,8 @@ "binop": null, "updateContext": null }, - "start": 4619, - "end": 4620, + "start": 4609, + "end": 4610, "loc": { "start": { "line": 194, @@ -48333,8 +48328,8 @@ "updateContext": null }, "value": 0, - "start": 4620, - "end": 4621, + "start": 4610, + "end": 4611, "loc": { "start": { "line": 194, @@ -48359,8 +48354,8 @@ "binop": null, "updateContext": null }, - "start": 4621, - "end": 4622, + "start": 4611, + "end": 4612, "loc": { "start": { "line": 194, @@ -48385,8 +48380,8 @@ "binop": null, "updateContext": null }, - "start": 4622, - "end": 4623, + "start": 4612, + "end": 4613, "loc": { "start": { "line": 194, @@ -48413,8 +48408,8 @@ "updateContext": null }, "value": "const", - "start": 4628, - "end": 4633, + "start": 4618, + "end": 4623, "loc": { "start": { "line": 195, @@ -48439,8 +48434,8 @@ "binop": null }, "value": "value", - "start": 4634, - "end": 4639, + "start": 4624, + "end": 4629, "loc": { "start": { "line": 195, @@ -48466,8 +48461,8 @@ "updateContext": null }, "value": "=", - "start": 4640, - "end": 4641, + "start": 4630, + "end": 4631, "loc": { "start": { "line": 195, @@ -48492,8 +48487,8 @@ "binop": null }, "value": "pair", - "start": 4642, - "end": 4646, + "start": 4632, + "end": 4636, "loc": { "start": { "line": 195, @@ -48518,8 +48513,8 @@ "binop": null, "updateContext": null }, - "start": 4646, - "end": 4647, + "start": 4636, + "end": 4637, "loc": { "start": { "line": 195, @@ -48545,8 +48540,8 @@ "updateContext": null }, "value": 1, - "start": 4647, - "end": 4648, + "start": 4637, + "end": 4638, "loc": { "start": { "line": 195, @@ -48571,8 +48566,8 @@ "binop": null, "updateContext": null }, - "start": 4648, - "end": 4649, + "start": 4638, + "end": 4639, "loc": { "start": { "line": 195, @@ -48597,8 +48592,8 @@ "binop": null, "updateContext": null }, - "start": 4649, - "end": 4650, + "start": 4639, + "end": 4640, "loc": { "start": { "line": 195, @@ -48623,8 +48618,8 @@ "binop": null }, "value": "object", - "start": 4656, - "end": 4662, + "start": 4646, + "end": 4652, "loc": { "start": { "line": 197, @@ -48649,8 +48644,8 @@ "binop": null, "updateContext": null }, - "start": 4662, - "end": 4663, + "start": 4652, + "end": 4653, "loc": { "start": { "line": 197, @@ -48675,8 +48670,8 @@ "binop": null }, "value": "name", - "start": 4663, - "end": 4667, + "start": 4653, + "end": 4657, "loc": { "start": { "line": 197, @@ -48701,8 +48696,8 @@ "binop": null, "updateContext": null }, - "start": 4667, - "end": 4668, + "start": 4657, + "end": 4658, "loc": { "start": { "line": 197, @@ -48728,8 +48723,8 @@ "updateContext": null }, "value": "=", - "start": 4669, - "end": 4670, + "start": 4659, + "end": 4660, "loc": { "start": { "line": 197, @@ -48754,8 +48749,8 @@ "binop": null }, "value": "value", - "start": 4671, - "end": 4676, + "start": 4661, + "end": 4666, "loc": { "start": { "line": 197, @@ -48780,8 +48775,8 @@ "binop": null, "updateContext": null }, - "start": 4676, - "end": 4677, + "start": 4666, + "end": 4667, "loc": { "start": { "line": 197, @@ -48805,8 +48800,8 @@ "postfix": false, "binop": null }, - "start": 4680, - "end": 4681, + "start": 4670, + "end": 4671, "loc": { "start": { "line": 198, @@ -48833,8 +48828,8 @@ "updateContext": null }, "value": "return", - "start": 4685, - "end": 4691, + "start": 4675, + "end": 4681, "loc": { "start": { "line": 200, @@ -48859,8 +48854,8 @@ "binop": null }, "value": "object", - "start": 4692, - "end": 4698, + "start": 4682, + "end": 4688, "loc": { "start": { "line": 200, @@ -48885,8 +48880,8 @@ "binop": null, "updateContext": null }, - "start": 4698, - "end": 4699, + "start": 4688, + "end": 4689, "loc": { "start": { "line": 200, @@ -48910,8 +48905,8 @@ "postfix": false, "binop": null }, - "start": 4700, - "end": 4701, + "start": 4690, + "end": 4691, "loc": { "start": { "line": 201, @@ -48936,8 +48931,8 @@ "binop": null, "updateContext": null }, - "start": 4701, - "end": 4702, + "start": 4691, + "end": 4692, "loc": { "start": { "line": 201, @@ -48962,8 +48957,8 @@ "binop": null }, "value": "SpecialForms", - "start": 4704, - "end": 4716, + "start": 4694, + "end": 4706, "loc": { "start": { "line": 203, @@ -48988,8 +48983,8 @@ "binop": null, "updateContext": null }, - "start": 4716, - "end": 4717, + "start": 4706, + "end": 4707, "loc": { "start": { "line": 203, @@ -49015,8 +49010,8 @@ "updateContext": null }, "value": "const", - "start": 4717, - "end": 4724, + "start": 4707, + "end": 4714, "loc": { "start": { "line": 203, @@ -49041,8 +49036,8 @@ "binop": null, "updateContext": null }, - "start": 4724, - "end": 4725, + "start": 4714, + "end": 4715, "loc": { "start": { "line": 203, @@ -49068,8 +49063,8 @@ "updateContext": null }, "value": "=", - "start": 4726, - "end": 4727, + "start": 4716, + "end": 4717, "loc": { "start": { "line": 203, @@ -49093,8 +49088,8 @@ "postfix": false, "binop": null }, - "start": 4728, - "end": 4729, + "start": 4718, + "end": 4719, "loc": { "start": { "line": 203, @@ -49119,8 +49114,8 @@ "binop": null }, "value": "args", - "start": 4729, - "end": 4733, + "start": 4719, + "end": 4723, "loc": { "start": { "line": 203, @@ -49145,8 +49140,8 @@ "binop": null, "updateContext": null }, - "start": 4733, - "end": 4734, + "start": 4723, + "end": 4724, "loc": { "start": { "line": 203, @@ -49171,8 +49166,8 @@ "binop": null }, "value": "env", - "start": 4735, - "end": 4738, + "start": 4725, + "end": 4728, "loc": { "start": { "line": 203, @@ -49196,8 +49191,8 @@ "postfix": false, "binop": null }, - "start": 4738, - "end": 4739, + "start": 4728, + "end": 4729, "loc": { "start": { "line": 203, @@ -49222,8 +49217,8 @@ "binop": null, "updateContext": null }, - "start": 4740, - "end": 4742, + "start": 4730, + "end": 4732, "loc": { "start": { "line": 203, @@ -49247,8 +49242,8 @@ "postfix": false, "binop": null }, - "start": 4743, - "end": 4744, + "start": 4733, + "end": 4734, "loc": { "start": { "line": 203, @@ -49275,8 +49270,8 @@ "updateContext": null }, "value": "if", - "start": 4747, - "end": 4749, + "start": 4737, + "end": 4739, "loc": { "start": { "line": 204, @@ -49300,8 +49295,8 @@ "postfix": false, "binop": null }, - "start": 4750, - "end": 4751, + "start": 4740, + "end": 4741, "loc": { "start": { "line": 204, @@ -49326,8 +49321,8 @@ "binop": null }, "value": "args", - "start": 4751, - "end": 4755, + "start": 4741, + "end": 4745, "loc": { "start": { "line": 204, @@ -49352,8 +49347,8 @@ "binop": null, "updateContext": null }, - "start": 4755, - "end": 4756, + "start": 4745, + "end": 4746, "loc": { "start": { "line": 204, @@ -49379,8 +49374,8 @@ "updateContext": null }, "value": 0, - "start": 4756, - "end": 4757, + "start": 4746, + "end": 4747, "loc": { "start": { "line": 204, @@ -49405,8 +49400,8 @@ "binop": null, "updateContext": null }, - "start": 4757, - "end": 4758, + "start": 4747, + "end": 4748, "loc": { "start": { "line": 204, @@ -49431,8 +49426,8 @@ "binop": null, "updateContext": null }, - "start": 4758, - "end": 4759, + "start": 4748, + "end": 4749, "loc": { "start": { "line": 204, @@ -49457,8 +49452,8 @@ "binop": null }, "value": "type", - "start": 4759, - "end": 4763, + "start": 4749, + "end": 4753, "loc": { "start": { "line": 204, @@ -49484,8 +49479,8 @@ "updateContext": null }, "value": "!==", - "start": 4764, - "end": 4767, + "start": 4754, + "end": 4757, "loc": { "start": { "line": 204, @@ -49511,8 +49506,8 @@ "updateContext": null }, "value": "word", - "start": 4768, - "end": 4774, + "start": 4758, + "end": 4764, "loc": { "start": { "line": 204, @@ -49536,8 +49531,8 @@ "postfix": false, "binop": null }, - "start": 4774, - "end": 4775, + "start": 4764, + "end": 4765, "loc": { "start": { "line": 204, @@ -49561,8 +49556,8 @@ "postfix": false, "binop": null }, - "start": 4776, - "end": 4777, + "start": 4766, + "end": 4767, "loc": { "start": { "line": 204, @@ -49589,8 +49584,8 @@ "updateContext": null }, "value": "throw", - "start": 4782, - "end": 4787, + "start": 4772, + "end": 4777, "loc": { "start": { "line": 205, @@ -49617,8 +49612,8 @@ "updateContext": null }, "value": "new", - "start": 4788, - "end": 4791, + "start": 4778, + "end": 4781, "loc": { "start": { "line": 205, @@ -49643,8 +49638,8 @@ "binop": null }, "value": "SyntaxError", - "start": 4792, - "end": 4803, + "start": 4782, + "end": 4793, "loc": { "start": { "line": 205, @@ -49668,8 +49663,8 @@ "postfix": false, "binop": null }, - "start": 4803, - "end": 4804, + "start": 4793, + "end": 4794, "loc": { "start": { "line": 205, @@ -49695,8 +49690,8 @@ "updateContext": null }, "value": "Bad number of arguments", - "start": 4804, - "end": 4829, + "start": 4794, + "end": 4819, "loc": { "start": { "line": 205, @@ -49720,8 +49715,8 @@ "postfix": false, "binop": null }, - "start": 4829, - "end": 4830, + "start": 4819, + "end": 4820, "loc": { "start": { "line": 205, @@ -49746,8 +49741,8 @@ "binop": null, "updateContext": null }, - "start": 4830, - "end": 4831, + "start": 4820, + "end": 4821, "loc": { "start": { "line": 205, @@ -49771,8 +49766,8 @@ "postfix": false, "binop": null }, - "start": 4834, - "end": 4835, + "start": 4824, + "end": 4825, "loc": { "start": { "line": 206, @@ -49799,8 +49794,8 @@ "updateContext": null }, "value": "let", - "start": 4839, - "end": 4842, + "start": 4829, + "end": 4832, "loc": { "start": { "line": 208, @@ -49825,8 +49820,8 @@ "binop": null }, "value": "value", - "start": 4843, - "end": 4848, + "start": 4833, + "end": 4838, "loc": { "start": { "line": 208, @@ -49852,8 +49847,8 @@ "updateContext": null }, "value": "=", - "start": 4849, - "end": 4850, + "start": 4839, + "end": 4840, "loc": { "start": { "line": 208, @@ -49878,8 +49873,8 @@ "binop": null }, "value": "args", - "start": 4851, - "end": 4855, + "start": 4841, + "end": 4845, "loc": { "start": { "line": 208, @@ -49904,8 +49899,8 @@ "binop": null, "updateContext": null }, - "start": 4855, - "end": 4856, + "start": 4845, + "end": 4846, "loc": { "start": { "line": 208, @@ -49931,8 +49926,8 @@ "updateContext": null }, "value": 1, - "start": 4856, - "end": 4857, + "start": 4846, + "end": 4847, "loc": { "start": { "line": 208, @@ -49957,8 +49952,8 @@ "binop": null, "updateContext": null }, - "start": 4857, - "end": 4858, + "start": 4847, + "end": 4848, "loc": { "start": { "line": 208, @@ -49983,8 +49978,8 @@ "binop": null, "updateContext": null }, - "start": 4858, - "end": 4859, + "start": 4848, + "end": 4849, "loc": { "start": { "line": 208, @@ -50009,8 +50004,8 @@ "binop": null }, "value": "evaluate", - "start": 4859, - "end": 4867, + "start": 4849, + "end": 4857, "loc": { "start": { "line": 208, @@ -50034,8 +50029,8 @@ "postfix": false, "binop": null }, - "start": 4867, - "end": 4868, + "start": 4857, + "end": 4858, "loc": { "start": { "line": 208, @@ -50060,8 +50055,8 @@ "binop": null }, "value": "env", - "start": 4868, - "end": 4871, + "start": 4858, + "end": 4861, "loc": { "start": { "line": 208, @@ -50085,8 +50080,8 @@ "postfix": false, "binop": null }, - "start": 4871, - "end": 4872, + "start": 4861, + "end": 4862, "loc": { "start": { "line": 208, @@ -50111,8 +50106,8 @@ "binop": null, "updateContext": null }, - "start": 4872, - "end": 4873, + "start": 4862, + "end": 4863, "loc": { "start": { "line": 208, @@ -50137,8 +50132,8 @@ "binop": null }, "value": "env", - "start": 4876, - "end": 4879, + "start": 4866, + "end": 4869, "loc": { "start": { "line": 209, @@ -50163,8 +50158,8 @@ "binop": null, "updateContext": null }, - "start": 4879, - "end": 4880, + "start": 4869, + "end": 4870, "loc": { "start": { "line": 209, @@ -50190,8 +50185,8 @@ "updateContext": null }, "value": "__const__", - "start": 4880, - "end": 4891, + "start": 4870, + "end": 4881, "loc": { "start": { "line": 209, @@ -50216,8 +50211,8 @@ "binop": null, "updateContext": null }, - "start": 4891, - "end": 4892, + "start": 4881, + "end": 4882, "loc": { "start": { "line": 209, @@ -50242,8 +50237,8 @@ "binop": null, "updateContext": null }, - "start": 4892, - "end": 4893, + "start": 4882, + "end": 4883, "loc": { "start": { "line": 209, @@ -50268,8 +50263,8 @@ "binop": null }, "value": "args", - "start": 4893, - "end": 4897, + "start": 4883, + "end": 4887, "loc": { "start": { "line": 209, @@ -50294,8 +50289,8 @@ "binop": null, "updateContext": null }, - "start": 4897, - "end": 4898, + "start": 4887, + "end": 4888, "loc": { "start": { "line": 209, @@ -50321,8 +50316,8 @@ "updateContext": null }, "value": 0, - "start": 4898, - "end": 4899, + "start": 4888, + "end": 4889, "loc": { "start": { "line": 209, @@ -50347,8 +50342,8 @@ "binop": null, "updateContext": null }, - "start": 4899, - "end": 4900, + "start": 4889, + "end": 4890, "loc": { "start": { "line": 209, @@ -50373,8 +50368,8 @@ "binop": null, "updateContext": null }, - "start": 4900, - "end": 4901, + "start": 4890, + "end": 4891, "loc": { "start": { "line": 209, @@ -50399,8 +50394,8 @@ "binop": null }, "value": "name", - "start": 4901, - "end": 4905, + "start": 4891, + "end": 4895, "loc": { "start": { "line": 209, @@ -50425,8 +50420,8 @@ "binop": null, "updateContext": null }, - "start": 4905, - "end": 4906, + "start": 4895, + "end": 4896, "loc": { "start": { "line": 209, @@ -50452,8 +50447,8 @@ "updateContext": null }, "value": "=", - "start": 4907, - "end": 4908, + "start": 4897, + "end": 4898, "loc": { "start": { "line": 209, @@ -50478,8 +50473,8 @@ "binop": null }, "value": "value", - "start": 4909, - "end": 4914, + "start": 4899, + "end": 4904, "loc": { "start": { "line": 209, @@ -50504,8 +50499,8 @@ "binop": null, "updateContext": null }, - "start": 4914, - "end": 4915, + "start": 4904, + "end": 4905, "loc": { "start": { "line": 209, @@ -50532,8 +50527,8 @@ "updateContext": null }, "value": "return", - "start": 4919, - "end": 4925, + "start": 4909, + "end": 4915, "loc": { "start": { "line": 211, @@ -50558,8 +50553,8 @@ "binop": null }, "value": "value", - "start": 4926, - "end": 4931, + "start": 4916, + "end": 4921, "loc": { "start": { "line": 211, @@ -50584,8 +50579,8 @@ "binop": null, "updateContext": null }, - "start": 4931, - "end": 4932, + "start": 4921, + "end": 4922, "loc": { "start": { "line": 211, @@ -50609,8 +50604,8 @@ "postfix": false, "binop": null }, - "start": 4933, - "end": 4934, + "start": 4923, + "end": 4924, "loc": { "start": { "line": 212, @@ -50635,8 +50630,8 @@ "binop": null, "updateContext": null }, - "start": 4934, - "end": 4935, + "start": 4924, + "end": 4925, "loc": { "start": { "line": 212, @@ -50661,8 +50656,8 @@ "binop": null }, "value": "SpecialForms", - "start": 4937, - "end": 4949, + "start": 4927, + "end": 4939, "loc": { "start": { "line": 214, @@ -50687,8 +50682,8 @@ "binop": null, "updateContext": null }, - "start": 4949, - "end": 4950, + "start": 4939, + "end": 4940, "loc": { "start": { "line": 214, @@ -50714,8 +50709,8 @@ "updateContext": null }, "value": "try", - "start": 4950, - "end": 4955, + "start": 4940, + "end": 4945, "loc": { "start": { "line": 214, @@ -50740,8 +50735,8 @@ "binop": null, "updateContext": null }, - "start": 4955, - "end": 4956, + "start": 4945, + "end": 4946, "loc": { "start": { "line": 214, @@ -50767,8 +50762,8 @@ "updateContext": null }, "value": "=", - "start": 4957, - "end": 4958, + "start": 4947, + "end": 4948, "loc": { "start": { "line": 214, @@ -50792,8 +50787,8 @@ "postfix": false, "binop": null }, - "start": 4959, - "end": 4960, + "start": 4949, + "end": 4950, "loc": { "start": { "line": 214, @@ -50818,8 +50813,8 @@ "binop": null }, "value": "args", - "start": 4960, - "end": 4964, + "start": 4950, + "end": 4954, "loc": { "start": { "line": 214, @@ -50844,8 +50839,8 @@ "binop": null, "updateContext": null }, - "start": 4964, - "end": 4965, + "start": 4954, + "end": 4955, "loc": { "start": { "line": 214, @@ -50870,8 +50865,8 @@ "binop": null }, "value": "env", - "start": 4966, - "end": 4969, + "start": 4956, + "end": 4959, "loc": { "start": { "line": 214, @@ -50895,8 +50890,8 @@ "postfix": false, "binop": null }, - "start": 4969, - "end": 4970, + "start": 4959, + "end": 4960, "loc": { "start": { "line": 214, @@ -50921,8 +50916,8 @@ "binop": null, "updateContext": null }, - "start": 4971, - "end": 4973, + "start": 4961, + "end": 4963, "loc": { "start": { "line": 214, @@ -50946,8 +50941,8 @@ "postfix": false, "binop": null }, - "start": 4974, - "end": 4975, + "start": 4964, + "end": 4965, "loc": { "start": { "line": 214, @@ -50974,8 +50969,8 @@ "updateContext": null }, "value": "if", - "start": 4978, - "end": 4980, + "start": 4968, + "end": 4970, "loc": { "start": { "line": 215, @@ -50999,8 +50994,8 @@ "postfix": false, "binop": null }, - "start": 4981, - "end": 4982, + "start": 4971, + "end": 4972, "loc": { "start": { "line": 215, @@ -51025,8 +51020,8 @@ "binop": null }, "value": "args", - "start": 4982, - "end": 4986, + "start": 4972, + "end": 4976, "loc": { "start": { "line": 215, @@ -51051,8 +51046,8 @@ "binop": null, "updateContext": null }, - "start": 4986, - "end": 4987, + "start": 4976, + "end": 4977, "loc": { "start": { "line": 215, @@ -51077,8 +51072,8 @@ "binop": null }, "value": "length", - "start": 4987, - "end": 4993, + "start": 4977, + "end": 4983, "loc": { "start": { "line": 215, @@ -51104,8 +51099,8 @@ "updateContext": null }, "value": "<", - "start": 4994, - "end": 4995, + "start": 4984, + "end": 4985, "loc": { "start": { "line": 215, @@ -51131,8 +51126,8 @@ "updateContext": null }, "value": 2, - "start": 4996, - "end": 4997, + "start": 4986, + "end": 4987, "loc": { "start": { "line": 215, @@ -51156,8 +51151,8 @@ "postfix": false, "binop": null }, - "start": 4997, - "end": 4998, + "start": 4987, + "end": 4988, "loc": { "start": { "line": 215, @@ -51181,8 +51176,8 @@ "postfix": false, "binop": null }, - "start": 4999, - "end": 5000, + "start": 4989, + "end": 4990, "loc": { "start": { "line": 215, @@ -51209,8 +51204,8 @@ "updateContext": null }, "value": "throw", - "start": 5005, - "end": 5010, + "start": 4995, + "end": 5000, "loc": { "start": { "line": 216, @@ -51237,8 +51232,8 @@ "updateContext": null }, "value": "new", - "start": 5011, - "end": 5014, + "start": 5001, + "end": 5004, "loc": { "start": { "line": 216, @@ -51263,8 +51258,8 @@ "binop": null }, "value": "SyntaxError", - "start": 5015, - "end": 5026, + "start": 5005, + "end": 5016, "loc": { "start": { "line": 216, @@ -51288,8 +51283,8 @@ "postfix": false, "binop": null }, - "start": 5026, - "end": 5027, + "start": 5016, + "end": 5017, "loc": { "start": { "line": 216, @@ -51315,8 +51310,8 @@ "updateContext": null }, "value": "Bad use of try-catch block", - "start": 5027, - "end": 5055, + "start": 5017, + "end": 5045, "loc": { "start": { "line": 216, @@ -51340,8 +51335,8 @@ "postfix": false, "binop": null }, - "start": 5055, - "end": 5056, + "start": 5045, + "end": 5046, "loc": { "start": { "line": 216, @@ -51366,8 +51361,8 @@ "binop": null, "updateContext": null }, - "start": 5056, - "end": 5057, + "start": 5046, + "end": 5047, "loc": { "start": { "line": 216, @@ -51391,8 +51386,8 @@ "postfix": false, "binop": null }, - "start": 5060, - "end": 5061, + "start": 5050, + "end": 5051, "loc": { "start": { "line": 217, @@ -51419,8 +51414,8 @@ "updateContext": null }, "value": "const", - "start": 5065, - "end": 5070, + "start": 5055, + "end": 5060, "loc": { "start": { "line": 219, @@ -51445,8 +51440,8 @@ "binop": null }, "value": "body", - "start": 5071, - "end": 5075, + "start": 5061, + "end": 5065, "loc": { "start": { "line": 219, @@ -51472,8 +51467,8 @@ "updateContext": null }, "value": "=", - "start": 5076, - "end": 5077, + "start": 5066, + "end": 5067, "loc": { "start": { "line": 219, @@ -51498,8 +51493,8 @@ "binop": null }, "value": "args", - "start": 5078, - "end": 5082, + "start": 5068, + "end": 5072, "loc": { "start": { "line": 219, @@ -51524,8 +51519,8 @@ "binop": null, "updateContext": null }, - "start": 5082, - "end": 5083, + "start": 5072, + "end": 5073, "loc": { "start": { "line": 219, @@ -51551,8 +51546,8 @@ "updateContext": null }, "value": 0, - "start": 5083, - "end": 5084, + "start": 5073, + "end": 5074, "loc": { "start": { "line": 219, @@ -51577,8 +51572,8 @@ "binop": null, "updateContext": null }, - "start": 5084, - "end": 5085, + "start": 5074, + "end": 5075, "loc": { "start": { "line": 219, @@ -51603,8 +51598,8 @@ "binop": null, "updateContext": null }, - "start": 5085, - "end": 5086, + "start": 5075, + "end": 5076, "loc": { "start": { "line": 219, @@ -51631,8 +51626,8 @@ "updateContext": null }, "value": "const", - "start": 5089, - "end": 5094, + "start": 5079, + "end": 5084, "loc": { "start": { "line": 220, @@ -51657,8 +51652,8 @@ "binop": null }, "value": "catch_body", - "start": 5095, - "end": 5105, + "start": 5085, + "end": 5095, "loc": { "start": { "line": 220, @@ -51684,8 +51679,8 @@ "updateContext": null }, "value": "=", - "start": 5106, - "end": 5107, + "start": 5096, + "end": 5097, "loc": { "start": { "line": 220, @@ -51710,8 +51705,8 @@ "binop": null }, "value": "args", - "start": 5108, - "end": 5112, + "start": 5098, + "end": 5102, "loc": { "start": { "line": 220, @@ -51736,8 +51731,8 @@ "binop": null, "updateContext": null }, - "start": 5112, - "end": 5113, + "start": 5102, + "end": 5103, "loc": { "start": { "line": 220, @@ -51763,8 +51758,8 @@ "updateContext": null }, "value": 1, - "start": 5113, - "end": 5114, + "start": 5103, + "end": 5104, "loc": { "start": { "line": 220, @@ -51789,8 +51784,8 @@ "binop": null, "updateContext": null }, - "start": 5114, - "end": 5115, + "start": 5104, + "end": 5105, "loc": { "start": { "line": 220, @@ -51815,8 +51810,8 @@ "binop": null, "updateContext": null }, - "start": 5115, - "end": 5116, + "start": 5105, + "end": 5106, "loc": { "start": { "line": 220, @@ -51843,8 +51838,8 @@ "updateContext": null }, "value": "try", - "start": 5120, - "end": 5123, + "start": 5110, + "end": 5113, "loc": { "start": { "line": 222, @@ -51868,8 +51863,8 @@ "postfix": false, "binop": null }, - "start": 5124, - "end": 5125, + "start": 5114, + "end": 5115, "loc": { "start": { "line": 222, @@ -51894,8 +51889,8 @@ "binop": null }, "value": "body", - "start": 5130, - "end": 5134, + "start": 5120, + "end": 5124, "loc": { "start": { "line": 223, @@ -51920,8 +51915,8 @@ "binop": null, "updateContext": null }, - "start": 5134, - "end": 5135, + "start": 5124, + "end": 5125, "loc": { "start": { "line": 223, @@ -51946,8 +51941,8 @@ "binop": null }, "value": "evaluate", - "start": 5135, - "end": 5143, + "start": 5125, + "end": 5133, "loc": { "start": { "line": 223, @@ -51971,8 +51966,8 @@ "postfix": false, "binop": null }, - "start": 5143, - "end": 5144, + "start": 5133, + "end": 5134, "loc": { "start": { "line": 223, @@ -51997,8 +51992,8 @@ "binop": null }, "value": "env", - "start": 5144, - "end": 5147, + "start": 5134, + "end": 5137, "loc": { "start": { "line": 223, @@ -52022,8 +52017,8 @@ "postfix": false, "binop": null }, - "start": 5147, - "end": 5148, + "start": 5137, + "end": 5138, "loc": { "start": { "line": 223, @@ -52048,8 +52043,8 @@ "binop": null, "updateContext": null }, - "start": 5148, - "end": 5149, + "start": 5138, + "end": 5139, "loc": { "start": { "line": 223, @@ -52073,8 +52068,8 @@ "postfix": false, "binop": null }, - "start": 5152, - "end": 5153, + "start": 5142, + "end": 5143, "loc": { "start": { "line": 224, @@ -52101,8 +52096,8 @@ "updateContext": null }, "value": "catch", - "start": 5154, - "end": 5159, + "start": 5144, + "end": 5149, "loc": { "start": { "line": 224, @@ -52126,8 +52121,8 @@ "postfix": false, "binop": null }, - "start": 5160, - "end": 5161, + "start": 5150, + "end": 5151, "loc": { "start": { "line": 224, @@ -52152,8 +52147,8 @@ "binop": null }, "value": "err", - "start": 5161, - "end": 5164, + "start": 5151, + "end": 5154, "loc": { "start": { "line": 224, @@ -52177,8 +52172,8 @@ "postfix": false, "binop": null }, - "start": 5164, - "end": 5165, + "start": 5154, + "end": 5155, "loc": { "start": { "line": 224, @@ -52202,8 +52197,8 @@ "postfix": false, "binop": null }, - "start": 5166, - "end": 5167, + "start": 5156, + "end": 5157, "loc": { "start": { "line": 224, @@ -52228,8 +52223,8 @@ "binop": null }, "value": "env", - "start": 5172, - "end": 5175, + "start": 5162, + "end": 5165, "loc": { "start": { "line": 225, @@ -52254,8 +52249,8 @@ "binop": null, "updateContext": null }, - "start": 5175, - "end": 5176, + "start": 5165, + "end": 5166, "loc": { "start": { "line": 225, @@ -52281,8 +52276,8 @@ "updateContext": null }, "value": "__error__", - "start": 5176, - "end": 5187, + "start": 5166, + "end": 5177, "loc": { "start": { "line": 225, @@ -52307,8 +52302,8 @@ "binop": null, "updateContext": null }, - "start": 5187, - "end": 5188, + "start": 5177, + "end": 5178, "loc": { "start": { "line": 225, @@ -52334,8 +52329,8 @@ "updateContext": null }, "value": "=", - "start": 5189, - "end": 5190, + "start": 5179, + "end": 5180, "loc": { "start": { "line": 225, @@ -52360,8 +52355,8 @@ "binop": null }, "value": "err", - "start": 5191, - "end": 5194, + "start": 5181, + "end": 5184, "loc": { "start": { "line": 225, @@ -52386,8 +52381,8 @@ "binop": null, "updateContext": null }, - "start": 5194, - "end": 5195, + "start": 5184, + "end": 5185, "loc": { "start": { "line": 225, @@ -52412,8 +52407,8 @@ "binop": null }, "value": "catch_body", - "start": 5200, - "end": 5210, + "start": 5190, + "end": 5200, "loc": { "start": { "line": 226, @@ -52438,8 +52433,8 @@ "binop": null, "updateContext": null }, - "start": 5210, - "end": 5211, + "start": 5200, + "end": 5201, "loc": { "start": { "line": 226, @@ -52464,8 +52459,8 @@ "binop": null }, "value": "evaluate", - "start": 5211, - "end": 5219, + "start": 5201, + "end": 5209, "loc": { "start": { "line": 226, @@ -52489,8 +52484,8 @@ "postfix": false, "binop": null }, - "start": 5219, - "end": 5220, + "start": 5209, + "end": 5210, "loc": { "start": { "line": 226, @@ -52515,8 +52510,8 @@ "binop": null }, "value": "env", - "start": 5220, - "end": 5223, + "start": 5210, + "end": 5213, "loc": { "start": { "line": 226, @@ -52540,8 +52535,8 @@ "postfix": false, "binop": null }, - "start": 5223, - "end": 5224, + "start": 5213, + "end": 5214, "loc": { "start": { "line": 226, @@ -52566,8 +52561,8 @@ "binop": null, "updateContext": null }, - "start": 5224, - "end": 5225, + "start": 5214, + "end": 5215, "loc": { "start": { "line": 226, @@ -52591,8 +52586,8 @@ "postfix": false, "binop": null }, - "start": 5228, - "end": 5229, + "start": 5218, + "end": 5219, "loc": { "start": { "line": 227, @@ -52619,8 +52614,8 @@ "updateContext": null }, "value": "finally", - "start": 5230, - "end": 5237, + "start": 5220, + "end": 5227, "loc": { "start": { "line": 227, @@ -52644,8 +52639,8 @@ "postfix": false, "binop": null }, - "start": 5238, - "end": 5239, + "start": 5228, + "end": 5229, "loc": { "start": { "line": 227, @@ -52672,8 +52667,8 @@ "updateContext": null }, "value": "if", - "start": 5244, - "end": 5246, + "start": 5234, + "end": 5236, "loc": { "start": { "line": 228, @@ -52697,8 +52692,8 @@ "postfix": false, "binop": null }, - "start": 5247, - "end": 5248, + "start": 5237, + "end": 5238, "loc": { "start": { "line": 228, @@ -52723,8 +52718,8 @@ "binop": null }, "value": "args", - "start": 5248, - "end": 5252, + "start": 5238, + "end": 5242, "loc": { "start": { "line": 228, @@ -52749,8 +52744,8 @@ "binop": null, "updateContext": null }, - "start": 5252, - "end": 5253, + "start": 5242, + "end": 5243, "loc": { "start": { "line": 228, @@ -52775,8 +52770,8 @@ "binop": null }, "value": "length", - "start": 5253, - "end": 5259, + "start": 5243, + "end": 5249, "loc": { "start": { "line": 228, @@ -52802,8 +52797,8 @@ "updateContext": null }, "value": "===", - "start": 5260, - "end": 5263, + "start": 5250, + "end": 5253, "loc": { "start": { "line": 228, @@ -52829,8 +52824,8 @@ "updateContext": null }, "value": 3, - "start": 5264, - "end": 5265, + "start": 5254, + "end": 5255, "loc": { "start": { "line": 228, @@ -52854,8 +52849,8 @@ "postfix": false, "binop": null }, - "start": 5265, - "end": 5266, + "start": 5255, + "end": 5256, "loc": { "start": { "line": 228, @@ -52879,8 +52874,8 @@ "postfix": false, "binop": null }, - "start": 5267, - "end": 5268, + "start": 5257, + "end": 5258, "loc": { "start": { "line": 228, @@ -52907,8 +52902,8 @@ "updateContext": null }, "value": "const", - "start": 5275, - "end": 5280, + "start": 5265, + "end": 5270, "loc": { "start": { "line": 229, @@ -52933,8 +52928,8 @@ "binop": null }, "value": "finally_body", - "start": 5281, - "end": 5293, + "start": 5271, + "end": 5283, "loc": { "start": { "line": 229, @@ -52960,8 +52955,8 @@ "updateContext": null }, "value": "=", - "start": 5294, - "end": 5295, + "start": 5284, + "end": 5285, "loc": { "start": { "line": 229, @@ -52986,8 +52981,8 @@ "binop": null }, "value": "args", - "start": 5296, - "end": 5300, + "start": 5286, + "end": 5290, "loc": { "start": { "line": 229, @@ -53012,8 +53007,8 @@ "binop": null, "updateContext": null }, - "start": 5300, - "end": 5301, + "start": 5290, + "end": 5291, "loc": { "start": { "line": 229, @@ -53039,8 +53034,8 @@ "updateContext": null }, "value": 2, - "start": 5301, - "end": 5302, + "start": 5291, + "end": 5292, "loc": { "start": { "line": 229, @@ -53065,8 +53060,8 @@ "binop": null, "updateContext": null }, - "start": 5302, - "end": 5303, + "start": 5292, + "end": 5293, "loc": { "start": { "line": 229, @@ -53091,8 +53086,8 @@ "binop": null, "updateContext": null }, - "start": 5303, - "end": 5304, + "start": 5293, + "end": 5294, "loc": { "start": { "line": 229, @@ -53117,8 +53112,8 @@ "binop": null }, "value": "finally_body", - "start": 5312, - "end": 5324, + "start": 5302, + "end": 5314, "loc": { "start": { "line": 231, @@ -53143,8 +53138,8 @@ "binop": null, "updateContext": null }, - "start": 5324, - "end": 5325, + "start": 5314, + "end": 5315, "loc": { "start": { "line": 231, @@ -53169,8 +53164,8 @@ "binop": null }, "value": "evaluate", - "start": 5325, - "end": 5333, + "start": 5315, + "end": 5323, "loc": { "start": { "line": 231, @@ -53194,8 +53189,8 @@ "postfix": false, "binop": null }, - "start": 5333, - "end": 5334, + "start": 5323, + "end": 5324, "loc": { "start": { "line": 231, @@ -53220,8 +53215,8 @@ "binop": null }, "value": "env", - "start": 5334, - "end": 5337, + "start": 5324, + "end": 5327, "loc": { "start": { "line": 231, @@ -53245,8 +53240,8 @@ "postfix": false, "binop": null }, - "start": 5337, - "end": 5338, + "start": 5327, + "end": 5328, "loc": { "start": { "line": 231, @@ -53271,8 +53266,8 @@ "binop": null, "updateContext": null }, - "start": 5338, - "end": 5339, + "start": 5328, + "end": 5329, "loc": { "start": { "line": 231, @@ -53296,8 +53291,8 @@ "postfix": false, "binop": null }, - "start": 5344, - "end": 5345, + "start": 5334, + "end": 5335, "loc": { "start": { "line": 232, @@ -53321,8 +53316,8 @@ "postfix": false, "binop": null }, - "start": 5348, - "end": 5349, + "start": 5338, + "end": 5339, "loc": { "start": { "line": 233, @@ -53349,8 +53344,8 @@ "updateContext": null }, "value": "return", - "start": 5353, - "end": 5359, + "start": 5343, + "end": 5349, "loc": { "start": { "line": 235, @@ -53377,8 +53372,8 @@ "updateContext": null }, "value": "false", - "start": 5360, - "end": 5365, + "start": 5350, + "end": 5355, "loc": { "start": { "line": 235, @@ -53403,8 +53398,8 @@ "binop": null, "updateContext": null }, - "start": 5365, - "end": 5366, + "start": 5355, + "end": 5356, "loc": { "start": { "line": 235, @@ -53428,8 +53423,8 @@ "postfix": false, "binop": null }, - "start": 5367, - "end": 5368, + "start": 5357, + "end": 5358, "loc": { "start": { "line": 236, @@ -53454,8 +53449,8 @@ "binop": null, "updateContext": null }, - "start": 5368, - "end": 5369, + "start": 5358, + "end": 5359, "loc": { "start": { "line": 236, @@ -53470,8 +53465,8 @@ { "type": "CommentLine", "value": " TODO: Continue implementing class?", - "start": 5371, - "end": 5408, + "start": 5361, + "end": 5398, "loc": { "start": { "line": 238, @@ -53486,8 +53481,8 @@ { "type": "CommentLine", "value": "", - "start": 5409, - "end": 5411, + "start": 5399, + "end": 5401, "loc": { "start": { "line": 239, @@ -53502,8 +53497,8 @@ { "type": "CommentLine", "value": " SpecialForms['class'] = (args, env) => {", - "start": 5412, - "end": 5455, + "start": 5402, + "end": 5445, "loc": { "start": { "line": 240, @@ -53518,8 +53513,8 @@ { "type": "CommentLine", "value": " // const evArgs = args.map((arg) => evaluate(arg, env));", - "start": 5456, - "end": 5517, + "start": 5446, + "end": 5507, "loc": { "start": { "line": 241, @@ -53534,8 +53529,8 @@ { "type": "CommentLine", "value": "", - "start": 5518, - "end": 5520, + "start": 5508, + "end": 5510, "loc": { "start": { "line": 242, @@ -53550,8 +53545,8 @@ { "type": "CommentLine", "value": " const newClass = function(x, y) {", - "start": 5521, - "end": 5559, + "start": 5511, + "end": 5549, "loc": { "start": { "line": 243, @@ -53566,8 +53561,8 @@ { "type": "CommentLine", "value": " this.x = x;", - "start": 5560, - "end": 5578, + "start": 5550, + "end": 5568, "loc": { "start": { "line": 244, @@ -53582,8 +53577,8 @@ { "type": "CommentLine", "value": " this.y = y;", - "start": 5579, - "end": 5597, + "start": 5569, + "end": 5587, "loc": { "start": { "line": 245, @@ -53598,8 +53593,8 @@ { "type": "CommentLine", "value": " }", - "start": 5598, - "end": 5604, + "start": 5588, + "end": 5594, "loc": { "start": { "line": 246, @@ -53614,8 +53609,8 @@ { "type": "CommentLine", "value": "", - "start": 5605, - "end": 5607, + "start": 5595, + "end": 5597, "loc": { "start": { "line": 247, @@ -53630,8 +53625,8 @@ { "type": "CommentLine", "value": " return newClass;", - "start": 5608, - "end": 5629, + "start": 5598, + "end": 5619, "loc": { "start": { "line": 248, @@ -53646,8 +53641,8 @@ { "type": "CommentLine", "value": " }", - "start": 5630, - "end": 5634, + "start": 5620, + "end": 5624, "loc": { "start": { "line": 249, @@ -53672,8 +53667,8 @@ "binop": null, "updateContext": null }, - "start": 5636, - "end": 5637, + "start": 5626, + "end": 5627, "loc": { "start": { "line": 251, @@ -53699,8 +53694,8 @@ "updateContext": null }, "value": "+", - "start": 5637, - "end": 5640, + "start": 5627, + "end": 5630, "loc": { "start": { "line": 251, @@ -53725,8 +53720,8 @@ "binop": null, "updateContext": null }, - "start": 5640, - "end": 5641, + "start": 5630, + "end": 5631, "loc": { "start": { "line": 251, @@ -53752,8 +53747,8 @@ "updateContext": null }, "value": "-", - "start": 5642, - "end": 5645, + "start": 5632, + "end": 5635, "loc": { "start": { "line": 251, @@ -53778,8 +53773,8 @@ "binop": null, "updateContext": null }, - "start": 5645, - "end": 5646, + "start": 5635, + "end": 5636, "loc": { "start": { "line": 251, @@ -53805,8 +53800,8 @@ "updateContext": null }, "value": "*", - "start": 5647, - "end": 5650, + "start": 5637, + "end": 5640, "loc": { "start": { "line": 251, @@ -53831,8 +53826,8 @@ "binop": null, "updateContext": null }, - "start": 5650, - "end": 5651, + "start": 5640, + "end": 5641, "loc": { "start": { "line": 251, @@ -53858,8 +53853,8 @@ "updateContext": null }, "value": "/", - "start": 5652, - "end": 5655, + "start": 5642, + "end": 5645, "loc": { "start": { "line": 251, @@ -53884,8 +53879,8 @@ "binop": null, "updateContext": null }, - "start": 5655, - "end": 5656, + "start": 5645, + "end": 5646, "loc": { "start": { "line": 251, @@ -53911,8 +53906,8 @@ "updateContext": null }, "value": "==", - "start": 5657, - "end": 5661, + "start": 5647, + "end": 5651, "loc": { "start": { "line": 251, @@ -53937,8 +53932,8 @@ "binop": null, "updateContext": null }, - "start": 5661, - "end": 5662, + "start": 5651, + "end": 5652, "loc": { "start": { "line": 251, @@ -53964,8 +53959,8 @@ "updateContext": null }, "value": "!=", - "start": 5663, - "end": 5667, + "start": 5653, + "end": 5657, "loc": { "start": { "line": 251, @@ -53990,8 +53985,8 @@ "binop": null, "updateContext": null }, - "start": 5667, - "end": 5668, + "start": 5657, + "end": 5658, "loc": { "start": { "line": 251, @@ -54017,8 +54012,8 @@ "updateContext": null }, "value": "<", - "start": 5669, - "end": 5672, + "start": 5659, + "end": 5662, "loc": { "start": { "line": 251, @@ -54043,8 +54038,8 @@ "binop": null, "updateContext": null }, - "start": 5672, - "end": 5673, + "start": 5662, + "end": 5663, "loc": { "start": { "line": 251, @@ -54070,8 +54065,8 @@ "updateContext": null }, "value": ">", - "start": 5674, - "end": 5677, + "start": 5664, + "end": 5667, "loc": { "start": { "line": 251, @@ -54096,8 +54091,8 @@ "binop": null, "updateContext": null }, - "start": 5677, - "end": 5678, + "start": 5667, + "end": 5668, "loc": { "start": { "line": 251, @@ -54123,8 +54118,8 @@ "updateContext": null }, "value": ">=", - "start": 5679, - "end": 5683, + "start": 5669, + "end": 5673, "loc": { "start": { "line": 251, @@ -54149,8 +54144,8 @@ "binop": null, "updateContext": null }, - "start": 5683, - "end": 5684, + "start": 5673, + "end": 5674, "loc": { "start": { "line": 251, @@ -54176,8 +54171,8 @@ "updateContext": null }, "value": "<=", - "start": 5685, - "end": 5689, + "start": 5675, + "end": 5679, "loc": { "start": { "line": 251, @@ -54202,8 +54197,8 @@ "binop": null, "updateContext": null }, - "start": 5689, - "end": 5690, + "start": 5679, + "end": 5680, "loc": { "start": { "line": 251, @@ -54229,8 +54224,8 @@ "updateContext": null }, "value": "&&", - "start": 5691, - "end": 5695, + "start": 5681, + "end": 5685, "loc": { "start": { "line": 251, @@ -54255,8 +54250,8 @@ "binop": null, "updateContext": null }, - "start": 5695, - "end": 5696, + "start": 5685, + "end": 5686, "loc": { "start": { "line": 251, @@ -54282,8 +54277,8 @@ "updateContext": null }, "value": "||", - "start": 5697, - "end": 5701, + "start": 5687, + "end": 5691, "loc": { "start": { "line": 251, @@ -54308,8 +54303,8 @@ "binop": null, "updateContext": null }, - "start": 5701, - "end": 5702, + "start": 5691, + "end": 5692, "loc": { "start": { "line": 251, @@ -54334,8 +54329,8 @@ "binop": null, "updateContext": null }, - "start": 5702, - "end": 5703, + "start": 5692, + "end": 5693, "loc": { "start": { "line": 251, @@ -54360,8 +54355,8 @@ "binop": null }, "value": "forEach", - "start": 5703, - "end": 5710, + "start": 5693, + "end": 5700, "loc": { "start": { "line": 251, @@ -54385,8 +54380,8 @@ "postfix": false, "binop": null }, - "start": 5710, - "end": 5711, + "start": 5700, + "end": 5701, "loc": { "start": { "line": 251, @@ -54411,8 +54406,8 @@ "binop": null }, "value": "op", - "start": 5711, - "end": 5713, + "start": 5701, + "end": 5703, "loc": { "start": { "line": 251, @@ -54437,8 +54432,8 @@ "binop": null, "updateContext": null }, - "start": 5714, - "end": 5716, + "start": 5704, + "end": 5706, "loc": { "start": { "line": 251, @@ -54462,8 +54457,8 @@ "postfix": false, "binop": null }, - "start": 5717, - "end": 5718, + "start": 5707, + "end": 5708, "loc": { "start": { "line": 251, @@ -54488,8 +54483,8 @@ "binop": null }, "value": "TopEnv", - "start": 5721, - "end": 5727, + "start": 5711, + "end": 5717, "loc": { "start": { "line": 252, @@ -54514,8 +54509,8 @@ "binop": null, "updateContext": null }, - "start": 5727, - "end": 5728, + "start": 5717, + "end": 5718, "loc": { "start": { "line": 252, @@ -54540,8 +54535,8 @@ "binop": null }, "value": "op", - "start": 5728, - "end": 5730, + "start": 5718, + "end": 5720, "loc": { "start": { "line": 252, @@ -54566,8 +54561,8 @@ "binop": null, "updateContext": null }, - "start": 5730, - "end": 5731, + "start": 5720, + "end": 5721, "loc": { "start": { "line": 252, @@ -54593,8 +54588,8 @@ "updateContext": null }, "value": "=", - "start": 5732, - "end": 5733, + "start": 5722, + "end": 5723, "loc": { "start": { "line": 252, @@ -54621,8 +54616,8 @@ "updateContext": null }, "value": "new", - "start": 5734, - "end": 5737, + "start": 5724, + "end": 5727, "loc": { "start": { "line": 252, @@ -54647,8 +54642,8 @@ "binop": null }, "value": "Function", - "start": 5738, - "end": 5746, + "start": 5728, + "end": 5736, "loc": { "start": { "line": 252, @@ -54672,8 +54667,8 @@ "postfix": false, "binop": null }, - "start": 5746, - "end": 5747, + "start": 5736, + "end": 5737, "loc": { "start": { "line": 252, @@ -54699,8 +54694,8 @@ "updateContext": null }, "value": "a, b", - "start": 5747, - "end": 5753, + "start": 5737, + "end": 5743, "loc": { "start": { "line": 252, @@ -54725,8 +54720,8 @@ "binop": null, "updateContext": null }, - "start": 5753, - "end": 5754, + "start": 5743, + "end": 5744, "loc": { "start": { "line": 252, @@ -54750,8 +54745,8 @@ "postfix": false, "binop": null }, - "start": 5755, - "end": 5756, + "start": 5745, + "end": 5746, "loc": { "start": { "line": 252, @@ -54777,8 +54772,8 @@ "updateContext": null }, "value": "return a ", - "start": 5756, - "end": 5765, + "start": 5746, + "end": 5755, "loc": { "start": { "line": 252, @@ -54802,8 +54797,8 @@ "postfix": false, "binop": null }, - "start": 5765, - "end": 5767, + "start": 5755, + "end": 5757, "loc": { "start": { "line": 252, @@ -54828,8 +54823,8 @@ "binop": null }, "value": "op", - "start": 5767, - "end": 5769, + "start": 5757, + "end": 5759, "loc": { "start": { "line": 252, @@ -54853,8 +54848,8 @@ "postfix": false, "binop": null }, - "start": 5769, - "end": 5770, + "start": 5759, + "end": 5760, "loc": { "start": { "line": 252, @@ -54880,8 +54875,8 @@ "updateContext": null }, "value": " b;", - "start": 5770, - "end": 5773, + "start": 5760, + "end": 5763, "loc": { "start": { "line": 252, @@ -54905,8 +54900,8 @@ "postfix": false, "binop": null }, - "start": 5773, - "end": 5774, + "start": 5763, + "end": 5764, "loc": { "start": { "line": 252, @@ -54930,8 +54925,8 @@ "postfix": false, "binop": null }, - "start": 5774, - "end": 5775, + "start": 5764, + "end": 5765, "loc": { "start": { "line": 252, @@ -54956,8 +54951,8 @@ "binop": null, "updateContext": null }, - "start": 5775, - "end": 5776, + "start": 5765, + "end": 5766, "loc": { "start": { "line": 252, @@ -54981,8 +54976,8 @@ "postfix": false, "binop": null }, - "start": 5777, - "end": 5778, + "start": 5767, + "end": 5768, "loc": { "start": { "line": 253, @@ -55006,8 +55001,8 @@ "postfix": false, "binop": null }, - "start": 5778, - "end": 5779, + "start": 5768, + "end": 5769, "loc": { "start": { "line": 253, @@ -55032,8 +55027,8 @@ "binop": null, "updateContext": null }, - "start": 5779, - "end": 5780, + "start": 5769, + "end": 5770, "loc": { "start": { "line": 253, @@ -55058,8 +55053,8 @@ "binop": null }, "value": "TopEnv", - "start": 5782, - "end": 5788, + "start": 5772, + "end": 5778, "loc": { "start": { "line": 255, @@ -55084,8 +55079,8 @@ "binop": null, "updateContext": null }, - "start": 5788, - "end": 5789, + "start": 5778, + "end": 5779, "loc": { "start": { "line": 255, @@ -55111,8 +55106,8 @@ "updateContext": null }, "value": "true", - "start": 5789, - "end": 5795, + "start": 5779, + "end": 5785, "loc": { "start": { "line": 255, @@ -55137,8 +55132,8 @@ "binop": null, "updateContext": null }, - "start": 5795, - "end": 5796, + "start": 5785, + "end": 5786, "loc": { "start": { "line": 255, @@ -55164,8 +55159,8 @@ "updateContext": null }, "value": "=", - "start": 5797, - "end": 5798, + "start": 5787, + "end": 5788, "loc": { "start": { "line": 255, @@ -55192,8 +55187,8 @@ "updateContext": null }, "value": "true", - "start": 5799, - "end": 5803, + "start": 5789, + "end": 5793, "loc": { "start": { "line": 255, @@ -55218,8 +55213,8 @@ "binop": null, "updateContext": null }, - "start": 5803, - "end": 5804, + "start": 5793, + "end": 5794, "loc": { "start": { "line": 255, @@ -55244,8 +55239,8 @@ "binop": null }, "value": "TopEnv", - "start": 5805, - "end": 5811, + "start": 5795, + "end": 5801, "loc": { "start": { "line": 256, @@ -55270,8 +55265,8 @@ "binop": null, "updateContext": null }, - "start": 5811, - "end": 5812, + "start": 5801, + "end": 5802, "loc": { "start": { "line": 256, @@ -55297,8 +55292,8 @@ "updateContext": null }, "value": "false", - "start": 5812, - "end": 5819, + "start": 5802, + "end": 5809, "loc": { "start": { "line": 256, @@ -55323,8 +55318,8 @@ "binop": null, "updateContext": null }, - "start": 5819, - "end": 5820, + "start": 5809, + "end": 5810, "loc": { "start": { "line": 256, @@ -55350,8 +55345,8 @@ "updateContext": null }, "value": "=", - "start": 5821, - "end": 5822, + "start": 5811, + "end": 5812, "loc": { "start": { "line": 256, @@ -55378,8 +55373,8 @@ "updateContext": null }, "value": "false", - "start": 5823, - "end": 5828, + "start": 5813, + "end": 5818, "loc": { "start": { "line": 256, @@ -55404,8 +55399,8 @@ "binop": null, "updateContext": null }, - "start": 5828, - "end": 5829, + "start": 5818, + "end": 5819, "loc": { "start": { "line": 256, @@ -55430,8 +55425,8 @@ "binop": null }, "value": "TopEnv", - "start": 5830, - "end": 5836, + "start": 5820, + "end": 5826, "loc": { "start": { "line": 257, @@ -55456,8 +55451,8 @@ "binop": null, "updateContext": null }, - "start": 5836, - "end": 5837, + "start": 5826, + "end": 5827, "loc": { "start": { "line": 257, @@ -55483,8 +55478,8 @@ "updateContext": null }, "value": "null", - "start": 5837, - "end": 5843, + "start": 5827, + "end": 5833, "loc": { "start": { "line": 257, @@ -55509,8 +55504,8 @@ "binop": null, "updateContext": null }, - "start": 5843, - "end": 5844, + "start": 5833, + "end": 5834, "loc": { "start": { "line": 257, @@ -55536,8 +55531,8 @@ "updateContext": null }, "value": "=", - "start": 5845, - "end": 5846, + "start": 5835, + "end": 5836, "loc": { "start": { "line": 257, @@ -55564,8 +55559,8 @@ "updateContext": null }, "value": "null", - "start": 5847, - "end": 5851, + "start": 5837, + "end": 5841, "loc": { "start": { "line": 257, @@ -55590,8 +55585,8 @@ "binop": null, "updateContext": null }, - "start": 5851, - "end": 5852, + "start": 5841, + "end": 5842, "loc": { "start": { "line": 257, @@ -55616,8 +55611,8 @@ "binop": null }, "value": "TopEnv", - "start": 5854, - "end": 5860, + "start": 5844, + "end": 5850, "loc": { "start": { "line": 259, @@ -55642,8 +55637,8 @@ "binop": null, "updateContext": null }, - "start": 5860, - "end": 5861, + "start": 5850, + "end": 5851, "loc": { "start": { "line": 259, @@ -55669,8 +55664,8 @@ "updateContext": null }, "value": "__const__", - "start": 5861, - "end": 5872, + "start": 5851, + "end": 5862, "loc": { "start": { "line": 259, @@ -55695,8 +55690,8 @@ "binop": null, "updateContext": null }, - "start": 5872, - "end": 5873, + "start": 5862, + "end": 5863, "loc": { "start": { "line": 259, @@ -55722,8 +55717,8 @@ "updateContext": null }, "value": "=", - "start": 5874, - "end": 5875, + "start": 5864, + "end": 5865, "loc": { "start": { "line": 259, @@ -55747,8 +55742,8 @@ "postfix": false, "binop": null }, - "start": 5876, - "end": 5877, + "start": 5866, + "end": 5867, "loc": { "start": { "line": 259, @@ -55772,8 +55767,8 @@ "postfix": false, "binop": null }, - "start": 5877, - "end": 5878, + "start": 5867, + "end": 5868, "loc": { "start": { "line": 259, @@ -55798,8 +55793,8 @@ "binop": null, "updateContext": null }, - "start": 5878, - "end": 5879, + "start": 5868, + "end": 5869, "loc": { "start": { "line": 259, @@ -55824,8 +55819,8 @@ "binop": null }, "value": "TopEnv", - "start": 5881, - "end": 5887, + "start": 5871, + "end": 5877, "loc": { "start": { "line": 261, @@ -55850,8 +55845,8 @@ "binop": null, "updateContext": null }, - "start": 5887, - "end": 5888, + "start": 5877, + "end": 5878, "loc": { "start": { "line": 261, @@ -55877,8 +55872,8 @@ "updateContext": null }, "value": "print", - "start": 5888, - "end": 5895, + "start": 5878, + "end": 5885, "loc": { "start": { "line": 261, @@ -55903,8 +55898,8 @@ "binop": null, "updateContext": null }, - "start": 5895, - "end": 5896, + "start": 5885, + "end": 5886, "loc": { "start": { "line": 261, @@ -55930,8 +55925,8 @@ "updateContext": null }, "value": "=", - "start": 5897, - "end": 5898, + "start": 5887, + "end": 5888, "loc": { "start": { "line": 261, @@ -55956,8 +55951,8 @@ "binop": null }, "value": "value", - "start": 5899, - "end": 5904, + "start": 5889, + "end": 5894, "loc": { "start": { "line": 261, @@ -55982,8 +55977,8 @@ "binop": null, "updateContext": null }, - "start": 5905, - "end": 5907, + "start": 5895, + "end": 5897, "loc": { "start": { "line": 261, @@ -56007,8 +56002,8 @@ "postfix": false, "binop": null }, - "start": 5908, - "end": 5909, + "start": 5898, + "end": 5899, "loc": { "start": { "line": 261, @@ -56033,8 +56028,8 @@ "binop": null }, "value": "console", - "start": 5912, - "end": 5919, + "start": 5902, + "end": 5909, "loc": { "start": { "line": 262, @@ -56059,8 +56054,8 @@ "binop": null, "updateContext": null }, - "start": 5919, - "end": 5920, + "start": 5909, + "end": 5910, "loc": { "start": { "line": 262, @@ -56085,8 +56080,8 @@ "binop": null }, "value": "log", - "start": 5920, - "end": 5923, + "start": 5910, + "end": 5913, "loc": { "start": { "line": 262, @@ -56110,8 +56105,8 @@ "postfix": false, "binop": null }, - "start": 5923, - "end": 5924, + "start": 5913, + "end": 5914, "loc": { "start": { "line": 262, @@ -56136,8 +56131,8 @@ "binop": null }, "value": "value", - "start": 5924, - "end": 5929, + "start": 5914, + "end": 5919, "loc": { "start": { "line": 262, @@ -56161,8 +56156,8 @@ "postfix": false, "binop": null }, - "start": 5929, - "end": 5930, + "start": 5919, + "end": 5920, "loc": { "start": { "line": 262, @@ -56187,8 +56182,8 @@ "binop": null, "updateContext": null }, - "start": 5930, - "end": 5931, + "start": 5920, + "end": 5921, "loc": { "start": { "line": 262, @@ -56215,8 +56210,8 @@ "updateContext": null }, "value": "return", - "start": 5934, - "end": 5940, + "start": 5924, + "end": 5930, "loc": { "start": { "line": 263, @@ -56241,8 +56236,8 @@ "binop": null }, "value": "value", - "start": 5941, - "end": 5946, + "start": 5931, + "end": 5936, "loc": { "start": { "line": 263, @@ -56267,8 +56262,8 @@ "binop": null, "updateContext": null }, - "start": 5946, - "end": 5947, + "start": 5936, + "end": 5937, "loc": { "start": { "line": 263, @@ -56292,8 +56287,8 @@ "postfix": false, "binop": null }, - "start": 5948, - "end": 5949, + "start": 5938, + "end": 5939, "loc": { "start": { "line": 264, @@ -56318,8 +56313,8 @@ "binop": null, "updateContext": null }, - "start": 5949, - "end": 5950, + "start": 5939, + "end": 5940, "loc": { "start": { "line": 264, @@ -56344,8 +56339,8 @@ "binop": null }, "value": "TopEnv", - "start": 5952, - "end": 5958, + "start": 5942, + "end": 5948, "loc": { "start": { "line": 266, @@ -56370,8 +56365,8 @@ "binop": null, "updateContext": null }, - "start": 5958, - "end": 5959, + "start": 5948, + "end": 5949, "loc": { "start": { "line": 266, @@ -56397,8 +56392,8 @@ "updateContext": null }, "value": "arr", - "start": 5959, - "end": 5964, + "start": 5949, + "end": 5954, "loc": { "start": { "line": 266, @@ -56423,8 +56418,8 @@ "binop": null, "updateContext": null }, - "start": 5964, - "end": 5965, + "start": 5954, + "end": 5955, "loc": { "start": { "line": 266, @@ -56450,8 +56445,8 @@ "updateContext": null }, "value": "=", - "start": 5966, - "end": 5967, + "start": 5956, + "end": 5957, "loc": { "start": { "line": 266, @@ -56476,8 +56471,8 @@ "binop": null }, "value": "TopEnv", - "start": 5968, - "end": 5974, + "start": 5958, + "end": 5964, "loc": { "start": { "line": 266, @@ -56502,8 +56497,8 @@ "binop": null, "updateContext": null }, - "start": 5974, - "end": 5975, + "start": 5964, + "end": 5965, "loc": { "start": { "line": 266, @@ -56529,8 +56524,8 @@ "updateContext": null }, "value": "array", - "start": 5975, - "end": 5982, + "start": 5965, + "end": 5972, "loc": { "start": { "line": 266, @@ -56555,8 +56550,8 @@ "binop": null, "updateContext": null }, - "start": 5982, - "end": 5983, + "start": 5972, + "end": 5973, "loc": { "start": { "line": 266, @@ -56582,8 +56577,8 @@ "updateContext": null }, "value": "=", - "start": 5984, - "end": 5985, + "start": 5974, + "end": 5975, "loc": { "start": { "line": 266, @@ -56607,8 +56602,8 @@ "postfix": false, "binop": null }, - "start": 5986, - "end": 5987, + "start": 5976, + "end": 5977, "loc": { "start": { "line": 266, @@ -56633,8 +56628,8 @@ "binop": null, "updateContext": null }, - "start": 5987, - "end": 5990, + "start": 5977, + "end": 5980, "loc": { "start": { "line": 266, @@ -56659,8 +56654,8 @@ "binop": null }, "value": "args", - "start": 5990, - "end": 5994, + "start": 5980, + "end": 5984, "loc": { "start": { "line": 266, @@ -56684,8 +56679,8 @@ "postfix": false, "binop": null }, - "start": 5994, - "end": 5995, + "start": 5984, + "end": 5985, "loc": { "start": { "line": 266, @@ -56710,8 +56705,8 @@ "binop": null, "updateContext": null }, - "start": 5996, - "end": 5998, + "start": 5986, + "end": 5988, "loc": { "start": { "line": 266, @@ -56735,8 +56730,8 @@ "postfix": false, "binop": null }, - "start": 5999, - "end": 6000, + "start": 5989, + "end": 5990, "loc": { "start": { "line": 266, @@ -56763,8 +56758,8 @@ "updateContext": null }, "value": "return", - "start": 6003, - "end": 6009, + "start": 5993, + "end": 5999, "loc": { "start": { "line": 267, @@ -56789,8 +56784,8 @@ "binop": null }, "value": "args", - "start": 6010, - "end": 6014, + "start": 6000, + "end": 6004, "loc": { "start": { "line": 267, @@ -56815,8 +56810,8 @@ "binop": null, "updateContext": null }, - "start": 6014, - "end": 6015, + "start": 6004, + "end": 6005, "loc": { "start": { "line": 267, @@ -56840,8 +56835,8 @@ "postfix": false, "binop": null }, - "start": 6016, - "end": 6017, + "start": 6006, + "end": 6007, "loc": { "start": { "line": 268, @@ -56866,8 +56861,8 @@ "binop": null, "updateContext": null }, - "start": 6017, - "end": 6018, + "start": 6007, + "end": 6008, "loc": { "start": { "line": 268, @@ -56892,8 +56887,8 @@ "binop": null }, "value": "TopEnv", - "start": 6020, - "end": 6026, + "start": 6010, + "end": 6016, "loc": { "start": { "line": 270, @@ -56918,8 +56913,8 @@ "binop": null, "updateContext": null }, - "start": 6026, - "end": 6027, + "start": 6016, + "end": 6017, "loc": { "start": { "line": 270, @@ -56945,8 +56940,8 @@ "updateContext": null }, "value": "map", - "start": 6027, - "end": 6032, + "start": 6017, + "end": 6022, "loc": { "start": { "line": 270, @@ -56971,8 +56966,8 @@ "binop": null, "updateContext": null }, - "start": 6032, - "end": 6033, + "start": 6022, + "end": 6023, "loc": { "start": { "line": 270, @@ -56998,8 +56993,8 @@ "updateContext": null }, "value": "=", - "start": 6034, - "end": 6035, + "start": 6024, + "end": 6025, "loc": { "start": { "line": 270, @@ -57024,8 +57019,8 @@ "binop": null }, "value": "TopEnv", - "start": 6036, - "end": 6042, + "start": 6026, + "end": 6032, "loc": { "start": { "line": 270, @@ -57050,8 +57045,8 @@ "binop": null, "updateContext": null }, - "start": 6042, - "end": 6043, + "start": 6032, + "end": 6033, "loc": { "start": { "line": 270, @@ -57077,8 +57072,8 @@ "updateContext": null }, "value": "dict", - "start": 6043, - "end": 6049, + "start": 6033, + "end": 6039, "loc": { "start": { "line": 270, @@ -57103,8 +57098,8 @@ "binop": null, "updateContext": null }, - "start": 6049, - "end": 6050, + "start": 6039, + "end": 6040, "loc": { "start": { "line": 270, @@ -57130,8 +57125,8 @@ "updateContext": null }, "value": "=", - "start": 6051, - "end": 6052, + "start": 6041, + "end": 6042, "loc": { "start": { "line": 270, @@ -57155,8 +57150,8 @@ "postfix": false, "binop": null }, - "start": 6053, - "end": 6054, + "start": 6043, + "end": 6044, "loc": { "start": { "line": 270, @@ -57181,8 +57176,8 @@ "binop": null, "updateContext": null }, - "start": 6054, - "end": 6057, + "start": 6044, + "end": 6047, "loc": { "start": { "line": 270, @@ -57207,8 +57202,8 @@ "binop": null }, "value": "args", - "start": 6057, - "end": 6061, + "start": 6047, + "end": 6051, "loc": { "start": { "line": 270, @@ -57232,8 +57227,8 @@ "postfix": false, "binop": null }, - "start": 6061, - "end": 6062, + "start": 6051, + "end": 6052, "loc": { "start": { "line": 270, @@ -57258,8 +57253,8 @@ "binop": null, "updateContext": null }, - "start": 6063, - "end": 6065, + "start": 6053, + "end": 6055, "loc": { "start": { "line": 270, @@ -57283,8 +57278,8 @@ "postfix": false, "binop": null }, - "start": 6066, - "end": 6067, + "start": 6056, + "end": 6057, "loc": { "start": { "line": 270, @@ -57311,8 +57306,8 @@ "updateContext": null }, "value": "return", - "start": 6070, - "end": 6076, + "start": 6060, + "end": 6066, "loc": { "start": { "line": 271, @@ -57339,8 +57334,8 @@ "updateContext": null }, "value": "new", - "start": 6077, - "end": 6080, + "start": 6067, + "end": 6070, "loc": { "start": { "line": 271, @@ -57365,8 +57360,8 @@ "binop": null }, "value": "Map", - "start": 6081, - "end": 6084, + "start": 6071, + "end": 6074, "loc": { "start": { "line": 271, @@ -57390,8 +57385,8 @@ "postfix": false, "binop": null }, - "start": 6084, - "end": 6085, + "start": 6074, + "end": 6075, "loc": { "start": { "line": 271, @@ -57416,8 +57411,8 @@ "binop": null }, "value": "utils", - "start": 6085, - "end": 6090, + "start": 6075, + "end": 6080, "loc": { "start": { "line": 271, @@ -57442,8 +57437,8 @@ "binop": null, "updateContext": null }, - "start": 6090, - "end": 6091, + "start": 6080, + "end": 6081, "loc": { "start": { "line": 271, @@ -57468,8 +57463,8 @@ "binop": null }, "value": "chunk", - "start": 6091, - "end": 6096, + "start": 6081, + "end": 6086, "loc": { "start": { "line": 271, @@ -57493,8 +57488,8 @@ "postfix": false, "binop": null }, - "start": 6096, - "end": 6097, + "start": 6086, + "end": 6087, "loc": { "start": { "line": 271, @@ -57519,8 +57514,8 @@ "binop": null }, "value": "args", - "start": 6097, - "end": 6101, + "start": 6087, + "end": 6091, "loc": { "start": { "line": 271, @@ -57545,8 +57540,8 @@ "binop": null, "updateContext": null }, - "start": 6101, - "end": 6102, + "start": 6091, + "end": 6092, "loc": { "start": { "line": 271, @@ -57572,8 +57567,8 @@ "updateContext": null }, "value": 2, - "start": 6103, - "end": 6104, + "start": 6093, + "end": 6094, "loc": { "start": { "line": 271, @@ -57597,8 +57592,8 @@ "postfix": false, "binop": null }, - "start": 6104, - "end": 6105, + "start": 6094, + "end": 6095, "loc": { "start": { "line": 271, @@ -57622,8 +57617,8 @@ "postfix": false, "binop": null }, - "start": 6105, - "end": 6106, + "start": 6095, + "end": 6096, "loc": { "start": { "line": 271, @@ -57648,8 +57643,8 @@ "binop": null, "updateContext": null }, - "start": 6106, - "end": 6107, + "start": 6096, + "end": 6097, "loc": { "start": { "line": 271, @@ -57673,8 +57668,8 @@ "postfix": false, "binop": null }, - "start": 6108, - "end": 6109, + "start": 6098, + "end": 6099, "loc": { "start": { "line": 272, @@ -57699,8 +57694,8 @@ "binop": null, "updateContext": null }, - "start": 6109, - "end": 6110, + "start": 6099, + "end": 6100, "loc": { "start": { "line": 272, @@ -57725,8 +57720,8 @@ "binop": null }, "value": "TopEnv", - "start": 6112, - "end": 6118, + "start": 6102, + "end": 6108, "loc": { "start": { "line": 274, @@ -57751,8 +57746,8 @@ "binop": null, "updateContext": null }, - "start": 6118, - "end": 6119, + "start": 6108, + "end": 6109, "loc": { "start": { "line": 274, @@ -57778,8 +57773,8 @@ "updateContext": null }, "value": "<-", - "start": 6119, - "end": 6123, + "start": 6109, + "end": 6113, "loc": { "start": { "line": 274, @@ -57804,8 +57799,8 @@ "binop": null, "updateContext": null }, - "start": 6123, - "end": 6124, + "start": 6113, + "end": 6114, "loc": { "start": { "line": 274, @@ -57831,8 +57826,8 @@ "updateContext": null }, "value": "=", - "start": 6125, - "end": 6126, + "start": 6115, + "end": 6116, "loc": { "start": { "line": 274, @@ -57857,8 +57852,8 @@ "binop": null }, "value": "TopEnv", - "start": 6127, - "end": 6133, + "start": 6117, + "end": 6123, "loc": { "start": { "line": 274, @@ -57883,8 +57878,8 @@ "binop": null, "updateContext": null }, - "start": 6133, - "end": 6134, + "start": 6123, + "end": 6124, "loc": { "start": { "line": 274, @@ -57910,8 +57905,8 @@ "updateContext": null }, "value": "[]", - "start": 6134, - "end": 6138, + "start": 6124, + "end": 6128, "loc": { "start": { "line": 274, @@ -57936,8 +57931,8 @@ "binop": null, "updateContext": null }, - "start": 6138, - "end": 6139, + "start": 6128, + "end": 6129, "loc": { "start": { "line": 274, @@ -57963,8 +57958,8 @@ "updateContext": null }, "value": "=", - "start": 6140, - "end": 6141, + "start": 6130, + "end": 6131, "loc": { "start": { "line": 274, @@ -57989,8 +57984,8 @@ "binop": null }, "value": "TopEnv", - "start": 6142, - "end": 6148, + "start": 6132, + "end": 6138, "loc": { "start": { "line": 274, @@ -58015,8 +58010,8 @@ "binop": null, "updateContext": null }, - "start": 6148, - "end": 6149, + "start": 6138, + "end": 6139, "loc": { "start": { "line": 274, @@ -58042,8 +58037,8 @@ "updateContext": null }, "value": "element", - "start": 6149, - "end": 6158, + "start": 6139, + "end": 6148, "loc": { "start": { "line": 274, @@ -58068,8 +58063,8 @@ "binop": null, "updateContext": null }, - "start": 6158, - "end": 6159, + "start": 6148, + "end": 6149, "loc": { "start": { "line": 274, @@ -58095,8 +58090,8 @@ "updateContext": null }, "value": "=", - "start": 6160, - "end": 6161, + "start": 6150, + "end": 6151, "loc": { "start": { "line": 274, @@ -58120,8 +58115,8 @@ "postfix": false, "binop": null }, - "start": 6162, - "end": 6163, + "start": 6152, + "end": 6153, "loc": { "start": { "line": 274, @@ -58146,8 +58141,8 @@ "binop": null }, "value": "object", - "start": 6163, - "end": 6169, + "start": 6153, + "end": 6159, "loc": { "start": { "line": 274, @@ -58172,8 +58167,8 @@ "binop": null, "updateContext": null }, - "start": 6169, - "end": 6170, + "start": 6159, + "end": 6160, "loc": { "start": { "line": 274, @@ -58198,8 +58193,8 @@ "binop": null, "updateContext": null }, - "start": 6171, - "end": 6174, + "start": 6161, + "end": 6164, "loc": { "start": { "line": 274, @@ -58224,8 +58219,8 @@ "binop": null }, "value": "indices", - "start": 6174, - "end": 6181, + "start": 6164, + "end": 6171, "loc": { "start": { "line": 274, @@ -58249,8 +58244,8 @@ "postfix": false, "binop": null }, - "start": 6181, - "end": 6182, + "start": 6171, + "end": 6172, "loc": { "start": { "line": 274, @@ -58275,8 +58270,8 @@ "binop": null, "updateContext": null }, - "start": 6183, - "end": 6185, + "start": 6173, + "end": 6175, "loc": { "start": { "line": 274, @@ -58300,8 +58295,8 @@ "postfix": false, "binop": null }, - "start": 6186, - "end": 6187, + "start": 6176, + "end": 6177, "loc": { "start": { "line": 274, @@ -58328,8 +58323,8 @@ "updateContext": null }, "value": "return", - "start": 6190, - "end": 6196, + "start": 6180, + "end": 6186, "loc": { "start": { "line": 275, @@ -58354,8 +58349,8 @@ "binop": null }, "value": "object", - "start": 6197, - "end": 6203, + "start": 6187, + "end": 6193, "loc": { "start": { "line": 275, @@ -58380,8 +58375,8 @@ "binop": null, "updateContext": null }, - "start": 6203, - "end": 6204, + "start": 6193, + "end": 6194, "loc": { "start": { "line": 275, @@ -58406,8 +58401,8 @@ "binop": null }, "value": "sub", - "start": 6204, - "end": 6207, + "start": 6194, + "end": 6197, "loc": { "start": { "line": 275, @@ -58431,8 +58426,8 @@ "postfix": false, "binop": null }, - "start": 6207, - "end": 6208, + "start": 6197, + "end": 6198, "loc": { "start": { "line": 275, @@ -58457,8 +58452,8 @@ "binop": null, "updateContext": null }, - "start": 6208, - "end": 6211, + "start": 6198, + "end": 6201, "loc": { "start": { "line": 275, @@ -58483,8 +58478,8 @@ "binop": null }, "value": "indices", - "start": 6211, - "end": 6218, + "start": 6201, + "end": 6208, "loc": { "start": { "line": 275, @@ -58508,8 +58503,8 @@ "postfix": false, "binop": null }, - "start": 6218, - "end": 6219, + "start": 6208, + "end": 6209, "loc": { "start": { "line": 275, @@ -58534,8 +58529,8 @@ "binop": null, "updateContext": null }, - "start": 6219, - "end": 6220, + "start": 6209, + "end": 6210, "loc": { "start": { "line": 275, @@ -58559,8 +58554,8 @@ "postfix": false, "binop": null }, - "start": 6221, - "end": 6222, + "start": 6211, + "end": 6212, "loc": { "start": { "line": 276, @@ -58585,8 +58580,8 @@ "binop": null, "updateContext": null }, - "start": 6222, - "end": 6223, + "start": 6212, + "end": 6213, "loc": { "start": { "line": 276, @@ -58611,8 +58606,8 @@ "binop": null }, "value": "TopEnv", - "start": 6225, - "end": 6231, + "start": 6215, + "end": 6221, "loc": { "start": { "line": 278, @@ -58637,8 +58632,8 @@ "binop": null, "updateContext": null }, - "start": 6231, - "end": 6232, + "start": 6221, + "end": 6222, "loc": { "start": { "line": 278, @@ -58664,8 +58659,8 @@ "updateContext": null }, "value": "length", - "start": 6232, - "end": 6240, + "start": 6222, + "end": 6230, "loc": { "start": { "line": 278, @@ -58690,8 +58685,8 @@ "binop": null, "updateContext": null }, - "start": 6240, - "end": 6241, + "start": 6230, + "end": 6231, "loc": { "start": { "line": 278, @@ -58717,8 +58712,8 @@ "updateContext": null }, "value": "=", - "start": 6242, - "end": 6243, + "start": 6232, + "end": 6233, "loc": { "start": { "line": 278, @@ -58743,8 +58738,8 @@ "binop": null }, "value": "array", - "start": 6244, - "end": 6249, + "start": 6234, + "end": 6239, "loc": { "start": { "line": 278, @@ -58769,8 +58764,8 @@ "binop": null, "updateContext": null }, - "start": 6250, - "end": 6252, + "start": 6240, + "end": 6242, "loc": { "start": { "line": 278, @@ -58794,8 +58789,8 @@ "postfix": false, "binop": null }, - "start": 6253, - "end": 6254, + "start": 6243, + "end": 6244, "loc": { "start": { "line": 278, @@ -58822,8 +58817,8 @@ "updateContext": null }, "value": "return", - "start": 6257, - "end": 6263, + "start": 6247, + "end": 6253, "loc": { "start": { "line": 279, @@ -58848,8 +58843,8 @@ "binop": null }, "value": "array", - "start": 6264, - "end": 6269, + "start": 6254, + "end": 6259, "loc": { "start": { "line": 279, @@ -58874,8 +58869,8 @@ "binop": null, "updateContext": null }, - "start": 6269, - "end": 6270, + "start": 6259, + "end": 6260, "loc": { "start": { "line": 279, @@ -58900,8 +58895,8 @@ "binop": null }, "value": "length", - "start": 6270, - "end": 6276, + "start": 6260, + "end": 6266, "loc": { "start": { "line": 279, @@ -58926,8 +58921,8 @@ "binop": null, "updateContext": null }, - "start": 6276, - "end": 6277, + "start": 6266, + "end": 6267, "loc": { "start": { "line": 279, @@ -58951,8 +58946,8 @@ "postfix": false, "binop": null }, - "start": 6278, - "end": 6279, + "start": 6268, + "end": 6269, "loc": { "start": { "line": 280, @@ -58977,8 +58972,8 @@ "binop": null, "updateContext": null }, - "start": 6279, - "end": 6280, + "start": 6269, + "end": 6270, "loc": { "start": { "line": 280, @@ -59003,8 +58998,8 @@ "binop": null }, "value": "TopEnv", - "start": 6282, - "end": 6288, + "start": 6272, + "end": 6278, "loc": { "start": { "line": 282, @@ -59029,8 +59024,8 @@ "binop": null, "updateContext": null }, - "start": 6288, - "end": 6289, + "start": 6278, + "end": 6279, "loc": { "start": { "line": 282, @@ -59056,8 +59051,8 @@ "updateContext": null }, "value": "RegExp", - "start": 6289, - "end": 6297, + "start": 6279, + "end": 6287, "loc": { "start": { "line": 282, @@ -59082,8 +59077,8 @@ "binop": null, "updateContext": null }, - "start": 6297, - "end": 6298, + "start": 6287, + "end": 6288, "loc": { "start": { "line": 282, @@ -59109,8 +59104,8 @@ "updateContext": null }, "value": "=", - "start": 6299, - "end": 6300, + "start": 6289, + "end": 6290, "loc": { "start": { "line": 282, @@ -59134,8 +59129,8 @@ "postfix": false, "binop": null }, - "start": 6301, - "end": 6302, + "start": 6291, + "end": 6292, "loc": { "start": { "line": 282, @@ -59160,8 +59155,8 @@ "binop": null }, "value": "method", - "start": 6302, - "end": 6308, + "start": 6292, + "end": 6298, "loc": { "start": { "line": 282, @@ -59186,8 +59181,8 @@ "binop": null, "updateContext": null }, - "start": 6308, - "end": 6309, + "start": 6298, + "end": 6299, "loc": { "start": { "line": 282, @@ -59212,8 +59207,8 @@ "binop": null, "updateContext": null }, - "start": 6310, - "end": 6313, + "start": 6300, + "end": 6303, "loc": { "start": { "line": 282, @@ -59238,8 +59233,8 @@ "binop": null }, "value": "args", - "start": 6313, - "end": 6317, + "start": 6303, + "end": 6307, "loc": { "start": { "line": 282, @@ -59263,8 +59258,8 @@ "postfix": false, "binop": null }, - "start": 6317, - "end": 6318, + "start": 6307, + "end": 6308, "loc": { "start": { "line": 282, @@ -59289,8 +59284,8 @@ "binop": null, "updateContext": null }, - "start": 6319, - "end": 6321, + "start": 6309, + "end": 6311, "loc": { "start": { "line": 282, @@ -59314,8 +59309,8 @@ "postfix": false, "binop": null }, - "start": 6322, - "end": 6323, + "start": 6312, + "end": 6313, "loc": { "start": { "line": 282, @@ -59342,8 +59337,8 @@ "updateContext": null }, "value": "return", - "start": 6326, - "end": 6332, + "start": 6316, + "end": 6322, "loc": { "start": { "line": 283, @@ -59368,8 +59363,8 @@ "binop": null }, "value": "xRegExp", - "start": 6333, - "end": 6340, + "start": 6323, + "end": 6330, "loc": { "start": { "line": 283, @@ -59394,8 +59389,8 @@ "binop": null, "updateContext": null }, - "start": 6340, - "end": 6341, + "start": 6330, + "end": 6331, "loc": { "start": { "line": 283, @@ -59420,8 +59415,8 @@ "binop": null }, "value": "method", - "start": 6341, - "end": 6347, + "start": 6331, + "end": 6337, "loc": { "start": { "line": 283, @@ -59446,8 +59441,8 @@ "binop": null, "updateContext": null }, - "start": 6347, - "end": 6348, + "start": 6337, + "end": 6338, "loc": { "start": { "line": 283, @@ -59471,8 +59466,8 @@ "postfix": false, "binop": null }, - "start": 6348, - "end": 6349, + "start": 6338, + "end": 6339, "loc": { "start": { "line": 283, @@ -59497,8 +59492,8 @@ "binop": null, "updateContext": null }, - "start": 6349, - "end": 6352, + "start": 6339, + "end": 6342, "loc": { "start": { "line": 283, @@ -59523,8 +59518,8 @@ "binop": null }, "value": "args", - "start": 6352, - "end": 6356, + "start": 6342, + "end": 6346, "loc": { "start": { "line": 283, @@ -59548,8 +59543,8 @@ "postfix": false, "binop": null }, - "start": 6356, - "end": 6357, + "start": 6346, + "end": 6347, "loc": { "start": { "line": 283, @@ -59574,8 +59569,8 @@ "binop": null, "updateContext": null }, - "start": 6357, - "end": 6358, + "start": 6347, + "end": 6348, "loc": { "start": { "line": 283, @@ -59599,8 +59594,8 @@ "postfix": false, "binop": null }, - "start": 6359, - "end": 6360, + "start": 6349, + "end": 6350, "loc": { "start": { "line": 284, @@ -59625,8 +59620,8 @@ "binop": null, "updateContext": null }, - "start": 6360, - "end": 6361, + "start": 6350, + "end": 6351, "loc": { "start": { "line": 284, @@ -59651,8 +59646,8 @@ "binop": null }, "value": "TopEnv", - "start": 6363, - "end": 6369, + "start": 6353, + "end": 6359, "loc": { "start": { "line": 286, @@ -59677,8 +59672,8 @@ "binop": null, "updateContext": null }, - "start": 6369, - "end": 6370, + "start": 6359, + "end": 6360, "loc": { "start": { "line": 286, @@ -59704,8 +59699,8 @@ "updateContext": null }, "value": "child", - "start": 6370, - "end": 6377, + "start": 6360, + "end": 6367, "loc": { "start": { "line": 286, @@ -59730,8 +59725,8 @@ "binop": null, "updateContext": null }, - "start": 6377, - "end": 6378, + "start": 6367, + "end": 6368, "loc": { "start": { "line": 286, @@ -59757,8 +59752,8 @@ "updateContext": null }, "value": "=", - "start": 6379, - "end": 6380, + "start": 6369, + "end": 6370, "loc": { "start": { "line": 286, @@ -59783,8 +59778,8 @@ "binop": null }, "value": "parent", - "start": 6381, - "end": 6387, + "start": 6371, + "end": 6377, "loc": { "start": { "line": 286, @@ -59809,8 +59804,8 @@ "binop": null, "updateContext": null }, - "start": 6388, - "end": 6390, + "start": 6378, + "end": 6380, "loc": { "start": { "line": 286, @@ -59834,8 +59829,8 @@ "postfix": false, "binop": null }, - "start": 6391, - "end": 6392, + "start": 6381, + "end": 6382, "loc": { "start": { "line": 286, @@ -59862,8 +59857,8 @@ "updateContext": null }, "value": "return", - "start": 6395, - "end": 6401, + "start": 6385, + "end": 6391, "loc": { "start": { "line": 287, @@ -59888,8 +59883,8 @@ "binop": null }, "value": "Object", - "start": 6402, - "end": 6408, + "start": 6392, + "end": 6398, "loc": { "start": { "line": 287, @@ -59914,8 +59909,8 @@ "binop": null, "updateContext": null }, - "start": 6408, - "end": 6409, + "start": 6398, + "end": 6399, "loc": { "start": { "line": 287, @@ -59940,8 +59935,8 @@ "binop": null }, "value": "create", - "start": 6409, - "end": 6415, + "start": 6399, + "end": 6405, "loc": { "start": { "line": 287, @@ -59965,8 +59960,8 @@ "postfix": false, "binop": null }, - "start": 6415, - "end": 6416, + "start": 6405, + "end": 6406, "loc": { "start": { "line": 287, @@ -59991,8 +59986,8 @@ "binop": null }, "value": "parent", - "start": 6416, - "end": 6422, + "start": 6406, + "end": 6412, "loc": { "start": { "line": 287, @@ -60016,8 +60011,8 @@ "postfix": false, "binop": null }, - "start": 6422, - "end": 6423, + "start": 6412, + "end": 6413, "loc": { "start": { "line": 287, @@ -60042,8 +60037,8 @@ "binop": null, "updateContext": null }, - "start": 6423, - "end": 6424, + "start": 6413, + "end": 6414, "loc": { "start": { "line": 287, @@ -60067,8 +60062,8 @@ "postfix": false, "binop": null }, - "start": 6425, - "end": 6426, + "start": 6415, + "end": 6416, "loc": { "start": { "line": 288, @@ -60093,8 +60088,8 @@ "binop": null, "updateContext": null }, - "start": 6426, - "end": 6427, + "start": 6416, + "end": 6417, "loc": { "start": { "line": 288, @@ -60119,8 +60114,8 @@ "binop": null }, "value": "TopEnv", - "start": 6429, - "end": 6435, + "start": 6419, + "end": 6425, "loc": { "start": { "line": 290, @@ -60145,8 +60140,8 @@ "binop": null, "updateContext": null }, - "start": 6435, - "end": 6436, + "start": 6425, + "end": 6426, "loc": { "start": { "line": 290, @@ -60172,8 +60167,8 @@ "updateContext": null }, "value": "throw", - "start": 6436, - "end": 6443, + "start": 6426, + "end": 6433, "loc": { "start": { "line": 290, @@ -60198,8 +60193,8 @@ "binop": null, "updateContext": null }, - "start": 6443, - "end": 6444, + "start": 6433, + "end": 6434, "loc": { "start": { "line": 290, @@ -60225,8 +60220,8 @@ "updateContext": null }, "value": "=", - "start": 6445, - "end": 6446, + "start": 6435, + "end": 6436, "loc": { "start": { "line": 290, @@ -60251,8 +60246,8 @@ "binop": null }, "value": "obj", - "start": 6447, - "end": 6450, + "start": 6437, + "end": 6440, "loc": { "start": { "line": 290, @@ -60277,8 +60272,8 @@ "binop": null, "updateContext": null }, - "start": 6451, - "end": 6453, + "start": 6441, + "end": 6443, "loc": { "start": { "line": 290, @@ -60302,8 +60297,8 @@ "postfix": false, "binop": null }, - "start": 6454, - "end": 6455, + "start": 6444, + "end": 6445, "loc": { "start": { "line": 290, @@ -60330,8 +60325,8 @@ "updateContext": null }, "value": "throw", - "start": 6458, - "end": 6463, + "start": 6448, + "end": 6453, "loc": { "start": { "line": 291, @@ -60356,8 +60351,8 @@ "binop": null }, "value": "obj", - "start": 6464, - "end": 6467, + "start": 6454, + "end": 6457, "loc": { "start": { "line": 291, @@ -60382,8 +60377,8 @@ "binop": null, "updateContext": null }, - "start": 6467, - "end": 6468, + "start": 6457, + "end": 6458, "loc": { "start": { "line": 291, @@ -60407,8 +60402,8 @@ "postfix": false, "binop": null }, - "start": 6469, - "end": 6470, + "start": 6459, + "end": 6460, "loc": { "start": { "line": 292, @@ -60433,8 +60428,8 @@ "binop": null, "updateContext": null }, - "start": 6470, - "end": 6471, + "start": 6460, + "end": 6461, "loc": { "start": { "line": 292, @@ -60449,8 +60444,8 @@ { "type": "CommentLine", "value": " WIP: Continue implementing class?", - "start": 6473, - "end": 6509, + "start": 6463, + "end": 6499, "loc": { "start": { "line": 294, @@ -60465,8 +60460,8 @@ { "type": "CommentLine", "value": " TopEnv['new'] = (...args) => {", - "start": 6510, - "end": 6543, + "start": 6500, + "end": 6533, "loc": { "start": { "line": 295, @@ -60481,8 +60476,8 @@ { "type": "CommentLine", "value": " const className = args[0];", - "start": 6544, - "end": 6575, + "start": 6534, + "end": 6565, "loc": { "start": { "line": 296, @@ -60497,8 +60492,8 @@ { "type": "CommentLine", "value": "", - "start": 6576, - "end": 6578, + "start": 6566, + "end": 6568, "loc": { "start": { "line": 297, @@ -60513,8 +60508,8 @@ { "type": "CommentLine", "value": " // TODO: Check for more exceptions", - "start": 6579, - "end": 6618, + "start": 6569, + "end": 6608, "loc": { "start": { "line": 298, @@ -60529,8 +60524,8 @@ { "type": "CommentLine", "value": " if(typeof className !== \"function\") {", - "start": 6619, - "end": 6661, + "start": 6609, + "end": 6651, "loc": { "start": { "line": 299, @@ -60545,8 +60540,8 @@ { "type": "CommentLine", "value": " throw new SyntaxError(`${className} must be a class with a constructor.`)", - "start": 6662, - "end": 6742, + "start": 6652, + "end": 6732, "loc": { "start": { "line": 300, @@ -60561,8 +60556,8 @@ { "type": "CommentLine", "value": " }", - "start": 6743, - "end": 6749, + "start": 6733, + "end": 6739, "loc": { "start": { "line": 301, @@ -60577,8 +60572,8 @@ { "type": "CommentLine", "value": "", - "start": 6750, - "end": 6752, + "start": 6740, + "end": 6742, "loc": { "start": { "line": 302, @@ -60593,8 +60588,8 @@ { "type": "CommentLine", "value": " return new className(...args.slice(1));", - "start": 6753, - "end": 6797, + "start": 6743, + "end": 6787, "loc": { "start": { "line": 303, @@ -60609,8 +60604,8 @@ { "type": "CommentLine", "value": "", - "start": 6798, - "end": 6800, + "start": 6788, + "end": 6790, "loc": { "start": { "line": 304, @@ -60624,33 +60619,8 @@ }, { "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "module", - "start": 6802, - "end": 6808, - "loc": { - "start": { - "line": 306, - "column": 0 - }, - "end": { - "line": 306, - "column": 6 - } - } - }, - { - "type": { - "label": ".", + "label": "export", + "keyword": "export", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, @@ -60661,69 +60631,17 @@ "binop": null, "updateContext": null }, - "start": 6808, - "end": 6809, - "loc": { - "start": { - "line": 306, - "column": 6 - }, - "end": { - "line": 306, - "column": 7 - } - } - }, - { - "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "exports", - "start": 6809, - "end": 6816, - "loc": { - "start": { - "line": 306, - "column": 7 - }, - "end": { - "line": 306, - "column": 14 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 6817, - "end": 6818, + "value": "export", + "start": 6792, + "end": 6798, "loc": { "start": { "line": 306, - "column": 15 + "column": 0 }, "end": { "line": 306, - "column": 16 + "column": 6 } } }, @@ -60739,16 +60657,16 @@ "postfix": false, "binop": null }, - "start": 6819, - "end": 6820, + "start": 6799, + "end": 6800, "loc": { "start": { "line": 306, - "column": 17 + "column": 7 }, "end": { "line": 306, - "column": 18 + "column": 8 } } }, @@ -60765,16 +60683,16 @@ "binop": null }, "value": "SpecialForms", - "start": 6823, - "end": 6835, + "start": 6801, + "end": 6813, "loc": { "start": { - "line": 307, - "column": 2 + "line": 306, + "column": 9 }, "end": { - "line": 307, - "column": 14 + "line": 306, + "column": 21 } } }, @@ -60791,16 +60709,16 @@ "binop": null, "updateContext": null }, - "start": 6835, - "end": 6836, + "start": 6813, + "end": 6814, "loc": { "start": { - "line": 307, - "column": 14 + "line": 306, + "column": 21 }, "end": { - "line": 307, - "column": 15 + "line": 306, + "column": 22 } } }, @@ -60817,15 +60735,15 @@ "binop": null }, "value": "TopEnv", - "start": 6839, - "end": 6845, + "start": 6817, + "end": 6823, "loc": { "start": { - "line": 308, + "line": 307, "column": 2 }, "end": { - "line": 308, + "line": 307, "column": 8 } } @@ -60842,16 +60760,16 @@ "postfix": false, "binop": null }, - "start": 6846, - "end": 6847, + "start": 6824, + "end": 6825, "loc": { "start": { - "line": 309, - "column": 0 + "line": 307, + "column": 9 }, "end": { - "line": 309, - "column": 1 + "line": 307, + "column": 10 } } }, @@ -60868,16 +60786,16 @@ "binop": null, "updateContext": null }, - "start": 6847, - "end": 6848, + "start": 6825, + "end": 6826, "loc": { "start": { - "line": 309, - "column": 1 + "line": 307, + "column": 10 }, "end": { - "line": 309, - "column": 2 + "line": 307, + "column": 11 } } }, @@ -60894,15 +60812,15 @@ "binop": null, "updateContext": null }, - "start": 6849, - "end": 6849, + "start": 6827, + "end": 6827, "loc": { "start": { - "line": 310, + "line": 308, "column": 0 }, "end": { - "line": 310, + "line": 308, "column": 0 } } diff --git a/docs/ast/source/interp/require.js.json b/docs/ast/source/interp/require.js.json index 5c5f3fd..002807b 100644 --- a/docs/ast/source/interp/require.js.json +++ b/docs/ast/source/interp/require.js.json @@ -1,7 +1,7 @@ { "type": "File", "start": 0, - "end": 523, + "end": 513, "loc": { "start": { "line": 1, @@ -15,7 +15,7 @@ "program": { "type": "Program", "start": 0, - "end": 523, + "end": 513, "loc": { "start": { "line": 1, @@ -29,9 +29,9 @@ "sourceType": "module", "body": [ { - "type": "VariableDeclaration", + "type": "ImportDeclaration", "start": 0, - "end": 47, + "end": 42, "loc": { "start": { "line": 1, @@ -39,158 +39,85 @@ }, "end": { "line": 1, - "column": 47 + "column": 42 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 6, - "end": 46, + "type": "ImportSpecifier", + "start": 9, + "end": 15, "loc": { "start": { "line": 1, - "column": 6 + "column": 9 }, "end": { "line": 1, - "column": 46 + "column": 15 } }, - "id": { - "type": "ObjectPattern", - "start": 6, - "end": 16, + "imported": { + "type": "Identifier", + "start": 9, + "end": 15, "loc": { "start": { "line": 1, - "column": 6 + "column": 9 }, "end": { "line": 1, - "column": 16 - } + "column": 15 + }, + "identifierName": "TopEnv" }, - "properties": [ - { - "type": "ObjectProperty", - "start": 8, - "end": 14, - "loc": { - "start": { - "line": 1, - "column": 8 - }, - "end": { - "line": 1, - "column": 14 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 8, - "end": 14, - "loc": { - "start": { - "line": 1, - "column": 8 - }, - "end": { - "line": 1, - "column": 14 - }, - "identifierName": "TopEnv" - }, - "name": "TopEnv" - }, - "value": { - "type": "Identifier", - "start": 8, - "end": 14, - "loc": { - "start": { - "line": 1, - "column": 8 - }, - "end": { - "line": 1, - "column": 14 - }, - "identifierName": "TopEnv" - }, - "name": "TopEnv" - }, - "extra": { - "shorthand": true - } - } - ] + "name": "TopEnv" }, - "init": { - "type": "CallExpression", - "start": 19, - "end": 46, + "local": { + "type": "Identifier", + "start": 9, + "end": 15, "loc": { "start": { "line": 1, - "column": 19 + "column": 9 }, "end": { "line": 1, - "column": 46 - } - }, - "callee": { - "type": "Identifier", - "start": 19, - "end": 26, - "loc": { - "start": { - "line": 1, - "column": 19 - }, - "end": { - "line": 1, - "column": 26 - }, - "identifierName": "require" + "column": 15 }, - "name": "require" + "identifierName": "TopEnv" }, - "arguments": [ - { - "type": "StringLiteral", - "start": 27, - "end": 45, - "loc": { - "start": { - "line": 1, - "column": 27 - }, - "end": { - "line": 1, - "column": 45 - } - }, - "extra": { - "rawValue": "./environment.js", - "raw": "\"./environment.js\"" - }, - "value": "./environment.js" - } - ] + "name": "TopEnv" } } ], - "kind": "const" + "source": { + "type": "StringLiteral", + "start": 23, + "end": 41, + "loc": { + "start": { + "line": 1, + "column": 23 + }, + "end": { + "line": 1, + "column": 41 + } + }, + "extra": { + "rawValue": "./environment.js", + "raw": "\"./environment.js\"" + }, + "value": "./environment.js" + } }, { - "type": "VariableDeclaration", - "start": 48, - "end": 97, + "type": "ImportDeclaration", + "start": 43, + "end": 87, "loc": { "start": { "line": 2, @@ -198,158 +125,85 @@ }, "end": { "line": 2, - "column": 49 + "column": 44 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 54, - "end": 96, + "type": "ImportSpecifier", + "start": 52, + "end": 58, "loc": { "start": { "line": 2, - "column": 6 + "column": 9 }, "end": { "line": 2, - "column": 48 + "column": 15 } }, - "id": { - "type": "ObjectPattern", - "start": 54, - "end": 64, + "imported": { + "type": "Identifier", + "start": 52, + "end": 58, "loc": { "start": { "line": 2, - "column": 6 + "column": 9 }, "end": { "line": 2, - "column": 16 - } + "column": 15 + }, + "identifierName": "Parser" }, - "properties": [ - { - "type": "ObjectProperty", - "start": 56, - "end": 62, - "loc": { - "start": { - "line": 2, - "column": 8 - }, - "end": { - "line": 2, - "column": 14 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 56, - "end": 62, - "loc": { - "start": { - "line": 2, - "column": 8 - }, - "end": { - "line": 2, - "column": 14 - }, - "identifierName": "Parser" - }, - "name": "Parser" - }, - "value": { - "type": "Identifier", - "start": 56, - "end": 62, - "loc": { - "start": { - "line": 2, - "column": 8 - }, - "end": { - "line": 2, - "column": 14 - }, - "identifierName": "Parser" - }, - "name": "Parser" - }, - "extra": { - "shorthand": true - } - } - ] + "name": "Parser" }, - "init": { - "type": "CallExpression", - "start": 67, - "end": 96, + "local": { + "type": "Identifier", + "start": 52, + "end": 58, "loc": { "start": { "line": 2, - "column": 19 + "column": 9 }, "end": { "line": 2, - "column": 48 - } - }, - "callee": { - "type": "Identifier", - "start": 67, - "end": 74, - "loc": { - "start": { - "line": 2, - "column": 19 - }, - "end": { - "line": 2, - "column": 26 - }, - "identifierName": "require" + "column": 15 }, - "name": "require" + "identifierName": "Parser" }, - "arguments": [ - { - "type": "StringLiteral", - "start": 75, - "end": 95, - "loc": { - "start": { - "line": 2, - "column": 27 - }, - "end": { - "line": 2, - "column": 47 - } - }, - "extra": { - "rawValue": "../parser/parse.js", - "raw": "\"../parser/parse.js\"" - }, - "value": "../parser/parse.js" - } - ] + "name": "Parser" } } ], - "kind": "const" + "source": { + "type": "StringLiteral", + "start": 66, + "end": 86, + "loc": { + "start": { + "line": 2, + "column": 23 + }, + "end": { + "line": 2, + "column": 43 + } + }, + "extra": { + "rawValue": "../parser/parse.js", + "raw": "\"../parser/parse.js\"" + }, + "value": "../parser/parse.js" + } }, { "type": "ExpressionStatement", - "start": 99, - "end": 438, + "start": 89, + "end": 428, "loc": { "start": { "line": 4, @@ -362,8 +216,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 99, - "end": 437, + "start": 89, + "end": 427, "loc": { "start": { "line": 4, @@ -377,8 +231,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 99, - "end": 116, + "start": 89, + "end": 106, "loc": { "start": { "line": 4, @@ -391,8 +245,8 @@ }, "object": { "type": "Identifier", - "start": 99, - "end": 105, + "start": 89, + "end": 95, "loc": { "start": { "line": 4, @@ -408,8 +262,8 @@ }, "property": { "type": "StringLiteral", - "start": 106, - "end": 115, + "start": 96, + "end": 105, "loc": { "start": { "line": 4, @@ -430,8 +284,8 @@ }, "right": { "type": "ArrowFunctionExpression", - "start": 119, - "end": 437, + "start": 109, + "end": 427, "loc": { "start": { "line": 4, @@ -449,8 +303,8 @@ "params": [ { "type": "Identifier", - "start": 119, - "end": 123, + "start": 109, + "end": 113, "loc": { "start": { "line": 4, @@ -467,8 +321,8 @@ ], "body": { "type": "BlockStatement", - "start": 127, - "end": 437, + "start": 117, + "end": 427, "loc": { "start": { "line": 4, @@ -482,8 +336,8 @@ "body": [ { "type": "IfStatement", - "start": 131, - "end": 386, + "start": 121, + "end": 376, "loc": { "start": { "line": 5, @@ -496,8 +350,8 @@ }, "test": { "type": "UnaryExpression", - "start": 135, - "end": 169, + "start": 125, + "end": 159, "loc": { "start": { "line": 5, @@ -512,8 +366,8 @@ "prefix": true, "argument": { "type": "BinaryExpression", - "start": 137, - "end": 168, + "start": 127, + "end": 158, "loc": { "start": { "line": 5, @@ -526,8 +380,8 @@ }, "left": { "type": "Identifier", - "start": 137, - "end": 141, + "start": 127, + "end": 131, "loc": { "start": { "line": 5, @@ -544,8 +398,8 @@ "operator": "in", "right": { "type": "MemberExpression", - "start": 145, - "end": 168, + "start": 135, + "end": 158, "loc": { "start": { "line": 5, @@ -558,8 +412,8 @@ }, "object": { "type": "MemberExpression", - "start": 145, - "end": 162, + "start": 135, + "end": 152, "loc": { "start": { "line": 5, @@ -572,8 +426,8 @@ }, "object": { "type": "Identifier", - "start": 145, - "end": 151, + "start": 135, + "end": 141, "loc": { "start": { "line": 5, @@ -589,8 +443,8 @@ }, "property": { "type": "StringLiteral", - "start": 152, - "end": 161, + "start": 142, + "end": 151, "loc": { "start": { "line": 5, @@ -611,8 +465,8 @@ }, "property": { "type": "Identifier", - "start": 163, - "end": 168, + "start": 153, + "end": 158, "loc": { "start": { "line": 5, @@ -630,7 +484,7 @@ }, "extra": { "parenthesized": true, - "parenStart": 136 + "parenStart": 126 } }, "extra": { @@ -639,8 +493,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 171, - "end": 386, + "start": 161, + "end": 376, "loc": { "start": { "line": 5, @@ -654,8 +508,8 @@ "body": [ { "type": "VariableDeclaration", - "start": 177, - "end": 217, + "start": 167, + "end": 207, "loc": { "start": { "line": 6, @@ -669,8 +523,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 183, - "end": 216, + "start": 173, + "end": 206, "loc": { "start": { "line": 6, @@ -683,8 +537,8 @@ }, "id": { "type": "Identifier", - "start": 183, - "end": 187, + "start": 173, + "end": 177, "loc": { "start": { "line": 6, @@ -700,8 +554,8 @@ }, "init": { "type": "CallExpression", - "start": 190, - "end": 216, + "start": 180, + "end": 206, "loc": { "start": { "line": 6, @@ -714,8 +568,8 @@ }, "callee": { "type": "MemberExpression", - "start": 190, - "end": 210, + "start": 180, + "end": 200, "loc": { "start": { "line": 6, @@ -728,8 +582,8 @@ }, "object": { "type": "Identifier", - "start": 190, - "end": 196, + "start": 180, + "end": 186, "loc": { "start": { "line": 6, @@ -745,8 +599,8 @@ }, "property": { "type": "Identifier", - "start": 197, - "end": 210, + "start": 187, + "end": 200, "loc": { "start": { "line": 6, @@ -765,8 +619,8 @@ "arguments": [ { "type": "Identifier", - "start": 211, - "end": 215, + "start": 201, + "end": 205, "loc": { "start": { "line": 6, @@ -788,8 +642,8 @@ }, { "type": "VariableDeclaration", - "start": 222, - "end": 256, + "start": 212, + "end": 246, "loc": { "start": { "line": 7, @@ -803,8 +657,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 228, - "end": 255, + "start": 218, + "end": 245, "loc": { "start": { "line": 7, @@ -817,8 +671,8 @@ }, "id": { "type": "Identifier", - "start": 228, - "end": 231, + "start": 218, + "end": 221, "loc": { "start": { "line": 7, @@ -834,8 +688,8 @@ }, "init": { "type": "CallExpression", - "start": 234, - "end": 255, + "start": 224, + "end": 245, "loc": { "start": { "line": 7, @@ -848,8 +702,8 @@ }, "callee": { "type": "MemberExpression", - "start": 234, - "end": 247, + "start": 224, + "end": 237, "loc": { "start": { "line": 7, @@ -862,8 +716,8 @@ }, "object": { "type": "Identifier", - "start": 234, - "end": 240, + "start": 224, + "end": 230, "loc": { "start": { "line": 7, @@ -879,8 +733,8 @@ }, "property": { "type": "Identifier", - "start": 241, - "end": 247, + "start": 231, + "end": 237, "loc": { "start": { "line": 7, @@ -899,8 +753,8 @@ "arguments": [ { "type": "Identifier", - "start": 248, - "end": 254, + "start": 238, + "end": 244, "loc": { "start": { "line": 7, @@ -922,8 +776,8 @@ }, { "type": "ExpressionStatement", - "start": 262, - "end": 281, + "start": 252, + "end": 271, "loc": { "start": { "line": 9, @@ -936,8 +790,8 @@ }, "expression": { "type": "CallExpression", - "start": 262, - "end": 280, + "start": 252, + "end": 270, "loc": { "start": { "line": 9, @@ -950,8 +804,8 @@ }, "callee": { "type": "MemberExpression", - "start": 262, - "end": 275, + "start": 252, + "end": 265, "loc": { "start": { "line": 9, @@ -964,8 +818,8 @@ }, "object": { "type": "Identifier", - "start": 262, - "end": 266, + "start": 252, + "end": 256, "loc": { "start": { "line": 9, @@ -981,8 +835,8 @@ }, "property": { "type": "Identifier", - "start": 267, - "end": 275, + "start": 257, + "end": 265, "loc": { "start": { "line": 9, @@ -1001,8 +855,8 @@ "arguments": [ { "type": "Identifier", - "start": 276, - "end": 279, + "start": 266, + "end": 269, "loc": { "start": { "line": 9, @@ -1021,8 +875,8 @@ }, { "type": "VariableDeclaration", - "start": 287, - "end": 337, + "start": 277, + "end": 327, "loc": { "start": { "line": 11, @@ -1036,8 +890,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 293, - "end": 336, + "start": 283, + "end": 326, "loc": { "start": { "line": 11, @@ -1050,8 +904,8 @@ }, "id": { "type": "Identifier", - "start": 293, - "end": 299, + "start": 283, + "end": 289, "loc": { "start": { "line": 11, @@ -1067,8 +921,8 @@ }, "init": { "type": "ObjectExpression", - "start": 302, - "end": 336, + "start": 292, + "end": 326, "loc": { "start": { "line": 11, @@ -1082,8 +936,8 @@ "properties": [ { "type": "ObjectProperty", - "start": 304, - "end": 334, + "start": 294, + "end": 324, "loc": { "start": { "line": 11, @@ -1099,8 +953,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 304, - "end": 311, + "start": 294, + "end": 301, "loc": { "start": { "line": 11, @@ -1116,8 +970,8 @@ }, "value": { "type": "MemberExpression", - "start": 313, - "end": 334, + "start": 303, + "end": 324, "loc": { "start": { "line": 11, @@ -1130,8 +984,8 @@ }, "object": { "type": "MemberExpression", - "start": 313, - "end": 326, + "start": 303, + "end": 316, "loc": { "start": { "line": 11, @@ -1144,8 +998,8 @@ }, "object": { "type": "Identifier", - "start": 313, - "end": 316, + "start": 303, + "end": 306, "loc": { "start": { "line": 11, @@ -1161,8 +1015,8 @@ }, "property": { "type": "StringLiteral", - "start": 317, - "end": 325, + "start": 307, + "end": 315, "loc": { "start": { "line": 11, @@ -1183,8 +1037,8 @@ }, "property": { "type": "Identifier", - "start": 327, - "end": 334, + "start": 317, + "end": 324, "loc": { "start": { "line": 11, @@ -1209,8 +1063,8 @@ }, { "type": "ExpressionStatement", - "start": 343, - "end": 382, + "start": 333, + "end": 372, "loc": { "start": { "line": 13, @@ -1223,8 +1077,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 343, - "end": 381, + "start": 333, + "end": 371, "loc": { "start": { "line": 13, @@ -1238,8 +1092,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 343, - "end": 372, + "start": 333, + "end": 362, "loc": { "start": { "line": 13, @@ -1252,8 +1106,8 @@ }, "object": { "type": "MemberExpression", - "start": 343, - "end": 366, + "start": 333, + "end": 356, "loc": { "start": { "line": 13, @@ -1266,8 +1120,8 @@ }, "object": { "type": "MemberExpression", - "start": 343, - "end": 360, + "start": 333, + "end": 350, "loc": { "start": { "line": 13, @@ -1280,8 +1134,8 @@ }, "object": { "type": "Identifier", - "start": 343, - "end": 349, + "start": 333, + "end": 339, "loc": { "start": { "line": 13, @@ -1297,8 +1151,8 @@ }, "property": { "type": "StringLiteral", - "start": 350, - "end": 359, + "start": 340, + "end": 349, "loc": { "start": { "line": 13, @@ -1319,8 +1173,8 @@ }, "property": { "type": "Identifier", - "start": 361, - "end": 366, + "start": 351, + "end": 356, "loc": { "start": { "line": 13, @@ -1338,8 +1192,8 @@ }, "property": { "type": "Identifier", - "start": 367, - "end": 371, + "start": 357, + "end": 361, "loc": { "start": { "line": 13, @@ -1357,8 +1211,8 @@ }, "right": { "type": "Identifier", - "start": 375, - "end": 381, + "start": 365, + "end": 371, "loc": { "start": { "line": 13, @@ -1381,8 +1235,8 @@ }, { "type": "ReturnStatement", - "start": 390, - "end": 435, + "start": 380, + "end": 425, "loc": { "start": { "line": 16, @@ -1395,8 +1249,8 @@ }, "argument": { "type": "MemberExpression", - "start": 397, - "end": 434, + "start": 387, + "end": 424, "loc": { "start": { "line": 16, @@ -1409,8 +1263,8 @@ }, "object": { "type": "MemberExpression", - "start": 397, - "end": 426, + "start": 387, + "end": 416, "loc": { "start": { "line": 16, @@ -1423,8 +1277,8 @@ }, "object": { "type": "MemberExpression", - "start": 397, - "end": 420, + "start": 387, + "end": 410, "loc": { "start": { "line": 16, @@ -1437,8 +1291,8 @@ }, "object": { "type": "MemberExpression", - "start": 397, - "end": 414, + "start": 387, + "end": 404, "loc": { "start": { "line": 16, @@ -1451,8 +1305,8 @@ }, "object": { "type": "Identifier", - "start": 397, - "end": 403, + "start": 387, + "end": 393, "loc": { "start": { "line": 16, @@ -1468,8 +1322,8 @@ }, "property": { "type": "StringLiteral", - "start": 404, - "end": 413, + "start": 394, + "end": 403, "loc": { "start": { "line": 16, @@ -1490,8 +1344,8 @@ }, "property": { "type": "Identifier", - "start": 415, - "end": 420, + "start": 405, + "end": 410, "loc": { "start": { "line": 16, @@ -1509,8 +1363,8 @@ }, "property": { "type": "Identifier", - "start": 421, - "end": 425, + "start": 411, + "end": 415, "loc": { "start": { "line": 16, @@ -1528,8 +1382,8 @@ }, "property": { "type": "Identifier", - "start": 427, - "end": 434, + "start": 417, + "end": 424, "loc": { "start": { "line": 16, @@ -1554,8 +1408,8 @@ }, { "type": "ExpressionStatement", - "start": 440, - "end": 486, + "start": 430, + "end": 476, "loc": { "start": { "line": 19, @@ -1568,8 +1422,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 440, - "end": 485, + "start": 430, + "end": 475, "loc": { "start": { "line": 19, @@ -1583,8 +1437,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 440, - "end": 463, + "start": 430, + "end": 453, "loc": { "start": { "line": 19, @@ -1597,8 +1451,8 @@ }, "object": { "type": "MemberExpression", - "start": 440, - "end": 457, + "start": 430, + "end": 447, "loc": { "start": { "line": 19, @@ -1611,8 +1465,8 @@ }, "object": { "type": "Identifier", - "start": 440, - "end": 446, + "start": 430, + "end": 436, "loc": { "start": { "line": 19, @@ -1628,8 +1482,8 @@ }, "property": { "type": "StringLiteral", - "start": 447, - "end": 456, + "start": 437, + "end": 446, "loc": { "start": { "line": 19, @@ -1650,8 +1504,8 @@ }, "property": { "type": "Identifier", - "start": 458, - "end": 463, + "start": 448, + "end": 453, "loc": { "start": { "line": 19, @@ -1669,8 +1523,8 @@ }, "right": { "type": "CallExpression", - "start": 466, - "end": 485, + "start": 456, + "end": 475, "loc": { "start": { "line": 19, @@ -1683,8 +1537,8 @@ }, "callee": { "type": "MemberExpression", - "start": 466, - "end": 479, + "start": 456, + "end": 469, "loc": { "start": { "line": 19, @@ -1697,8 +1551,8 @@ }, "object": { "type": "Identifier", - "start": 466, - "end": 472, + "start": 456, + "end": 462, "loc": { "start": { "line": 19, @@ -1714,8 +1568,8 @@ }, "property": { "type": "Identifier", - "start": 473, - "end": 479, + "start": 463, + "end": 469, "loc": { "start": { "line": 19, @@ -1734,8 +1588,8 @@ "arguments": [ { "type": "NullLiteral", - "start": 480, - "end": 484, + "start": 470, + "end": 474, "loc": { "start": { "line": 19, @@ -1753,8 +1607,8 @@ }, { "type": "ExpressionStatement", - "start": 487, - "end": 522, + "start": 477, + "end": 512, "loc": { "start": { "line": 20, @@ -1767,8 +1621,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 487, - "end": 521, + "start": 477, + "end": 511, "loc": { "start": { "line": 20, @@ -1782,8 +1636,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 487, - "end": 503, + "start": 477, + "end": 493, "loc": { "start": { "line": 20, @@ -1796,8 +1650,8 @@ }, "object": { "type": "Identifier", - "start": 487, - "end": 493, + "start": 477, + "end": 483, "loc": { "start": { "line": 20, @@ -1813,8 +1667,8 @@ }, "property": { "type": "StringLiteral", - "start": 494, - "end": 502, + "start": 484, + "end": 492, "loc": { "start": { "line": 20, @@ -1835,8 +1689,8 @@ }, "right": { "type": "ObjectExpression", - "start": 506, - "end": 521, + "start": 496, + "end": 511, "loc": { "start": { "line": 20, @@ -1850,8 +1704,8 @@ "properties": [ { "type": "ObjectProperty", - "start": 508, - "end": 519, + "start": 498, + "end": 509, "loc": { "start": { "line": 20, @@ -1867,8 +1721,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 508, - "end": 515, + "start": 498, + "end": 505, "loc": { "start": { "line": 20, @@ -1884,8 +1738,8 @@ }, "value": { "type": "ObjectExpression", - "start": 517, - "end": 519, + "start": 507, + "end": 509, "loc": { "start": { "line": 20, @@ -1910,10 +1764,10 @@ "tokens": [ { "type": { - "label": "const", - "keyword": "const", + "label": "import", + "keyword": "import", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -1922,9 +1776,9 @@ "binop": null, "updateContext": null }, - "value": "const", + "value": "import", "start": 0, - "end": 5, + "end": 6, "loc": { "start": { "line": 1, @@ -1932,7 +1786,7 @@ }, "end": { "line": 1, - "column": 5 + "column": 6 } } }, @@ -1948,16 +1802,16 @@ "postfix": false, "binop": null }, - "start": 6, - "end": 7, + "start": 7, + "end": 8, "loc": { "start": { "line": 1, - "column": 6 + "column": 7 }, "end": { "line": 1, - "column": 7 + "column": 8 } } }, @@ -1974,16 +1828,16 @@ "binop": null }, "value": "TopEnv", - "start": 8, - "end": 14, + "start": 9, + "end": 15, "loc": { "start": { "line": 1, - "column": 8 + "column": 9 }, "end": { "line": 1, - "column": 14 + "column": 15 } } }, @@ -1999,43 +1853,16 @@ "postfix": false, "binop": null }, - "start": 15, - "end": 16, + "start": 16, + "end": 17, "loc": { "start": { - "line": 1, - "column": 15 - }, - "end": { "line": 1, "column": 16 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 17, - "end": 18, - "loc": { - "start": { - "line": 1, - "column": 17 }, "end": { "line": 1, - "column": 18 + "column": 17 } } }, @@ -2051,42 +1878,17 @@ "postfix": false, "binop": null }, - "value": "require", - "start": 19, - "end": 26, - "loc": { - "start": { - "line": 1, - "column": 19 - }, - "end": { - "line": 1, - "column": 26 - } - } - }, - { - "type": { - "label": "(", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 26, - "end": 27, + "value": "from", + "start": 18, + "end": 22, "loc": { "start": { "line": 1, - "column": 26 + "column": 18 }, "end": { "line": 1, - "column": 27 + "column": 22 } } }, @@ -2104,41 +1906,16 @@ "updateContext": null }, "value": "./environment.js", - "start": 27, - "end": 45, - "loc": { - "start": { - "line": 1, - "column": 27 - }, - "end": { - "line": 1, - "column": 45 - } - } - }, - { - "type": { - "label": ")", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 45, - "end": 46, + "start": 23, + "end": 41, "loc": { "start": { "line": 1, - "column": 45 + "column": 23 }, "end": { "line": 1, - "column": 46 + "column": 41 } } }, @@ -2155,25 +1932,25 @@ "binop": null, "updateContext": null }, - "start": 46, - "end": 47, + "start": 41, + "end": 42, "loc": { "start": { "line": 1, - "column": 46 + "column": 41 }, "end": { "line": 1, - "column": 47 + "column": 42 } } }, { "type": { - "label": "const", - "keyword": "const", + "label": "import", + "keyword": "import", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -2182,9 +1959,9 @@ "binop": null, "updateContext": null }, - "value": "const", - "start": 48, - "end": 53, + "value": "import", + "start": 43, + "end": 49, "loc": { "start": { "line": 2, @@ -2192,7 +1969,7 @@ }, "end": { "line": 2, - "column": 5 + "column": 6 } } }, @@ -2208,16 +1985,16 @@ "postfix": false, "binop": null }, - "start": 54, - "end": 55, + "start": 50, + "end": 51, "loc": { "start": { "line": 2, - "column": 6 + "column": 7 }, "end": { "line": 2, - "column": 7 + "column": 8 } } }, @@ -2234,16 +2011,16 @@ "binop": null }, "value": "Parser", - "start": 56, - "end": 62, + "start": 52, + "end": 58, "loc": { "start": { "line": 2, - "column": 8 + "column": 9 }, "end": { "line": 2, - "column": 14 + "column": 15 } } }, @@ -2259,43 +2036,16 @@ "postfix": false, "binop": null }, - "start": 63, - "end": 64, + "start": 59, + "end": 60, "loc": { "start": { - "line": 2, - "column": 15 - }, - "end": { "line": 2, "column": 16 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 65, - "end": 66, - "loc": { - "start": { - "line": 2, - "column": 17 }, "end": { "line": 2, - "column": 18 + "column": 17 } } }, @@ -2311,42 +2061,17 @@ "postfix": false, "binop": null }, - "value": "require", - "start": 67, - "end": 74, - "loc": { - "start": { - "line": 2, - "column": 19 - }, - "end": { - "line": 2, - "column": 26 - } - } - }, - { - "type": { - "label": "(", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 74, - "end": 75, + "value": "from", + "start": 61, + "end": 65, "loc": { "start": { "line": 2, - "column": 26 + "column": 18 }, "end": { "line": 2, - "column": 27 + "column": 22 } } }, @@ -2364,41 +2089,16 @@ "updateContext": null }, "value": "../parser/parse.js", - "start": 75, - "end": 95, - "loc": { - "start": { - "line": 2, - "column": 27 - }, - "end": { - "line": 2, - "column": 47 - } - } - }, - { - "type": { - "label": ")", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 95, - "end": 96, + "start": 66, + "end": 86, "loc": { "start": { "line": 2, - "column": 47 + "column": 23 }, "end": { "line": 2, - "column": 48 + "column": 43 } } }, @@ -2415,16 +2115,16 @@ "binop": null, "updateContext": null }, - "start": 96, - "end": 97, + "start": 86, + "end": 87, "loc": { "start": { "line": 2, - "column": 48 + "column": 43 }, "end": { "line": 2, - "column": 49 + "column": 44 } } }, @@ -2441,8 +2141,8 @@ "binop": null }, "value": "TopEnv", - "start": 99, - "end": 105, + "start": 89, + "end": 95, "loc": { "start": { "line": 4, @@ -2467,8 +2167,8 @@ "binop": null, "updateContext": null }, - "start": 105, - "end": 106, + "start": 95, + "end": 96, "loc": { "start": { "line": 4, @@ -2494,8 +2194,8 @@ "updateContext": null }, "value": "require", - "start": 106, - "end": 115, + "start": 96, + "end": 105, "loc": { "start": { "line": 4, @@ -2520,8 +2220,8 @@ "binop": null, "updateContext": null }, - "start": 115, - "end": 116, + "start": 105, + "end": 106, "loc": { "start": { "line": 4, @@ -2547,8 +2247,8 @@ "updateContext": null }, "value": "=", - "start": 117, - "end": 118, + "start": 107, + "end": 108, "loc": { "start": { "line": 4, @@ -2573,8 +2273,8 @@ "binop": null }, "value": "file", - "start": 119, - "end": 123, + "start": 109, + "end": 113, "loc": { "start": { "line": 4, @@ -2599,8 +2299,8 @@ "binop": null, "updateContext": null }, - "start": 124, - "end": 126, + "start": 114, + "end": 116, "loc": { "start": { "line": 4, @@ -2624,8 +2324,8 @@ "postfix": false, "binop": null }, - "start": 127, - "end": 128, + "start": 117, + "end": 118, "loc": { "start": { "line": 4, @@ -2652,8 +2352,8 @@ "updateContext": null }, "value": "if", - "start": 131, - "end": 133, + "start": 121, + "end": 123, "loc": { "start": { "line": 5, @@ -2677,8 +2377,8 @@ "postfix": false, "binop": null }, - "start": 134, - "end": 135, + "start": 124, + "end": 125, "loc": { "start": { "line": 5, @@ -2704,8 +2404,8 @@ "updateContext": null }, "value": "!", - "start": 135, - "end": 136, + "start": 125, + "end": 126, "loc": { "start": { "line": 5, @@ -2729,8 +2429,8 @@ "postfix": false, "binop": null }, - "start": 136, - "end": 137, + "start": 126, + "end": 127, "loc": { "start": { "line": 5, @@ -2755,8 +2455,8 @@ "binop": null }, "value": "file", - "start": 137, - "end": 141, + "start": 127, + "end": 131, "loc": { "start": { "line": 5, @@ -2783,8 +2483,8 @@ "updateContext": null }, "value": "in", - "start": 142, - "end": 144, + "start": 132, + "end": 134, "loc": { "start": { "line": 5, @@ -2809,8 +2509,8 @@ "binop": null }, "value": "TopEnv", - "start": 145, - "end": 151, + "start": 135, + "end": 141, "loc": { "start": { "line": 5, @@ -2835,8 +2535,8 @@ "binop": null, "updateContext": null }, - "start": 151, - "end": 152, + "start": 141, + "end": 142, "loc": { "start": { "line": 5, @@ -2862,8 +2562,8 @@ "updateContext": null }, "value": "require", - "start": 152, - "end": 161, + "start": 142, + "end": 151, "loc": { "start": { "line": 5, @@ -2888,8 +2588,8 @@ "binop": null, "updateContext": null }, - "start": 161, - "end": 162, + "start": 151, + "end": 152, "loc": { "start": { "line": 5, @@ -2914,8 +2614,8 @@ "binop": null, "updateContext": null }, - "start": 162, - "end": 163, + "start": 152, + "end": 153, "loc": { "start": { "line": 5, @@ -2940,8 +2640,8 @@ "binop": null }, "value": "cache", - "start": 163, - "end": 168, + "start": 153, + "end": 158, "loc": { "start": { "line": 5, @@ -2965,8 +2665,8 @@ "postfix": false, "binop": null }, - "start": 168, - "end": 169, + "start": 158, + "end": 159, "loc": { "start": { "line": 5, @@ -2990,8 +2690,8 @@ "postfix": false, "binop": null }, - "start": 169, - "end": 170, + "start": 159, + "end": 160, "loc": { "start": { "line": 5, @@ -3015,8 +2715,8 @@ "postfix": false, "binop": null }, - "start": 171, - "end": 172, + "start": 161, + "end": 162, "loc": { "start": { "line": 5, @@ -3043,8 +2743,8 @@ "updateContext": null }, "value": "const", - "start": 177, - "end": 182, + "start": 167, + "end": 172, "loc": { "start": { "line": 6, @@ -3069,8 +2769,8 @@ "binop": null }, "value": "tree", - "start": 183, - "end": 187, + "start": 173, + "end": 177, "loc": { "start": { "line": 6, @@ -3096,8 +2796,8 @@ "updateContext": null }, "value": "=", - "start": 188, - "end": 189, + "start": 178, + "end": 179, "loc": { "start": { "line": 6, @@ -3122,8 +2822,8 @@ "binop": null }, "value": "Parser", - "start": 190, - "end": 196, + "start": 180, + "end": 186, "loc": { "start": { "line": 6, @@ -3148,8 +2848,8 @@ "binop": null, "updateContext": null }, - "start": 196, - "end": 197, + "start": 186, + "end": 187, "loc": { "start": { "line": 6, @@ -3174,8 +2874,8 @@ "binop": null }, "value": "parseFromFile", - "start": 197, - "end": 210, + "start": 187, + "end": 200, "loc": { "start": { "line": 6, @@ -3199,8 +2899,8 @@ "postfix": false, "binop": null }, - "start": 210, - "end": 211, + "start": 200, + "end": 201, "loc": { "start": { "line": 6, @@ -3225,8 +2925,8 @@ "binop": null }, "value": "file", - "start": 211, - "end": 215, + "start": 201, + "end": 205, "loc": { "start": { "line": 6, @@ -3250,8 +2950,8 @@ "postfix": false, "binop": null }, - "start": 215, - "end": 216, + "start": 205, + "end": 206, "loc": { "start": { "line": 6, @@ -3276,8 +2976,8 @@ "binop": null, "updateContext": null }, - "start": 216, - "end": 217, + "start": 206, + "end": 207, "loc": { "start": { "line": 6, @@ -3304,8 +3004,8 @@ "updateContext": null }, "value": "const", - "start": 222, - "end": 227, + "start": 212, + "end": 217, "loc": { "start": { "line": 7, @@ -3330,8 +3030,8 @@ "binop": null }, "value": "env", - "start": 228, - "end": 231, + "start": 218, + "end": 221, "loc": { "start": { "line": 7, @@ -3357,8 +3057,8 @@ "updateContext": null }, "value": "=", - "start": 232, - "end": 233, + "start": 222, + "end": 223, "loc": { "start": { "line": 7, @@ -3383,8 +3083,8 @@ "binop": null }, "value": "Object", - "start": 234, - "end": 240, + "start": 224, + "end": 230, "loc": { "start": { "line": 7, @@ -3409,8 +3109,8 @@ "binop": null, "updateContext": null }, - "start": 240, - "end": 241, + "start": 230, + "end": 231, "loc": { "start": { "line": 7, @@ -3435,8 +3135,8 @@ "binop": null }, "value": "create", - "start": 241, - "end": 247, + "start": 231, + "end": 237, "loc": { "start": { "line": 7, @@ -3460,8 +3160,8 @@ "postfix": false, "binop": null }, - "start": 247, - "end": 248, + "start": 237, + "end": 238, "loc": { "start": { "line": 7, @@ -3486,8 +3186,8 @@ "binop": null }, "value": "TopEnv", - "start": 248, - "end": 254, + "start": 238, + "end": 244, "loc": { "start": { "line": 7, @@ -3511,8 +3211,8 @@ "postfix": false, "binop": null }, - "start": 254, - "end": 255, + "start": 244, + "end": 245, "loc": { "start": { "line": 7, @@ -3537,8 +3237,8 @@ "binop": null, "updateContext": null }, - "start": 255, - "end": 256, + "start": 245, + "end": 246, "loc": { "start": { "line": 7, @@ -3563,8 +3263,8 @@ "binop": null }, "value": "tree", - "start": 262, - "end": 266, + "start": 252, + "end": 256, "loc": { "start": { "line": 9, @@ -3589,8 +3289,8 @@ "binop": null, "updateContext": null }, - "start": 266, - "end": 267, + "start": 256, + "end": 257, "loc": { "start": { "line": 9, @@ -3615,8 +3315,8 @@ "binop": null }, "value": "evaluate", - "start": 267, - "end": 275, + "start": 257, + "end": 265, "loc": { "start": { "line": 9, @@ -3640,8 +3340,8 @@ "postfix": false, "binop": null }, - "start": 275, - "end": 276, + "start": 265, + "end": 266, "loc": { "start": { "line": 9, @@ -3666,8 +3366,8 @@ "binop": null }, "value": "env", - "start": 276, - "end": 279, + "start": 266, + "end": 269, "loc": { "start": { "line": 9, @@ -3691,8 +3391,8 @@ "postfix": false, "binop": null }, - "start": 279, - "end": 280, + "start": 269, + "end": 270, "loc": { "start": { "line": 9, @@ -3717,8 +3417,8 @@ "binop": null, "updateContext": null }, - "start": 280, - "end": 281, + "start": 270, + "end": 271, "loc": { "start": { "line": 9, @@ -3745,8 +3445,8 @@ "updateContext": null }, "value": "const", - "start": 287, - "end": 292, + "start": 277, + "end": 282, "loc": { "start": { "line": 11, @@ -3771,8 +3471,8 @@ "binop": null }, "value": "module", - "start": 293, - "end": 299, + "start": 283, + "end": 289, "loc": { "start": { "line": 11, @@ -3798,8 +3498,8 @@ "updateContext": null }, "value": "=", - "start": 300, - "end": 301, + "start": 290, + "end": 291, "loc": { "start": { "line": 11, @@ -3823,8 +3523,8 @@ "postfix": false, "binop": null }, - "start": 302, - "end": 303, + "start": 292, + "end": 293, "loc": { "start": { "line": 11, @@ -3849,8 +3549,8 @@ "binop": null }, "value": "exports", - "start": 304, - "end": 311, + "start": 294, + "end": 301, "loc": { "start": { "line": 11, @@ -3875,8 +3575,8 @@ "binop": null, "updateContext": null }, - "start": 311, - "end": 312, + "start": 301, + "end": 302, "loc": { "start": { "line": 11, @@ -3901,8 +3601,8 @@ "binop": null }, "value": "env", - "start": 313, - "end": 316, + "start": 303, + "end": 306, "loc": { "start": { "line": 11, @@ -3927,8 +3627,8 @@ "binop": null, "updateContext": null }, - "start": 316, - "end": 317, + "start": 306, + "end": 307, "loc": { "start": { "line": 11, @@ -3954,8 +3654,8 @@ "updateContext": null }, "value": "module", - "start": 317, - "end": 325, + "start": 307, + "end": 315, "loc": { "start": { "line": 11, @@ -3980,8 +3680,8 @@ "binop": null, "updateContext": null }, - "start": 325, - "end": 326, + "start": 315, + "end": 316, "loc": { "start": { "line": 11, @@ -4006,8 +3706,8 @@ "binop": null, "updateContext": null }, - "start": 326, - "end": 327, + "start": 316, + "end": 317, "loc": { "start": { "line": 11, @@ -4032,8 +3732,8 @@ "binop": null }, "value": "exports", - "start": 327, - "end": 334, + "start": 317, + "end": 324, "loc": { "start": { "line": 11, @@ -4057,8 +3757,8 @@ "postfix": false, "binop": null }, - "start": 335, - "end": 336, + "start": 325, + "end": 326, "loc": { "start": { "line": 11, @@ -4083,8 +3783,8 @@ "binop": null, "updateContext": null }, - "start": 336, - "end": 337, + "start": 326, + "end": 327, "loc": { "start": { "line": 11, @@ -4109,8 +3809,8 @@ "binop": null }, "value": "TopEnv", - "start": 343, - "end": 349, + "start": 333, + "end": 339, "loc": { "start": { "line": 13, @@ -4135,8 +3835,8 @@ "binop": null, "updateContext": null }, - "start": 349, - "end": 350, + "start": 339, + "end": 340, "loc": { "start": { "line": 13, @@ -4162,8 +3862,8 @@ "updateContext": null }, "value": "require", - "start": 350, - "end": 359, + "start": 340, + "end": 349, "loc": { "start": { "line": 13, @@ -4188,8 +3888,8 @@ "binop": null, "updateContext": null }, - "start": 359, - "end": 360, + "start": 349, + "end": 350, "loc": { "start": { "line": 13, @@ -4214,8 +3914,8 @@ "binop": null, "updateContext": null }, - "start": 360, - "end": 361, + "start": 350, + "end": 351, "loc": { "start": { "line": 13, @@ -4240,8 +3940,8 @@ "binop": null }, "value": "cache", - "start": 361, - "end": 366, + "start": 351, + "end": 356, "loc": { "start": { "line": 13, @@ -4266,8 +3966,8 @@ "binop": null, "updateContext": null }, - "start": 366, - "end": 367, + "start": 356, + "end": 357, "loc": { "start": { "line": 13, @@ -4292,8 +3992,8 @@ "binop": null }, "value": "file", - "start": 367, - "end": 371, + "start": 357, + "end": 361, "loc": { "start": { "line": 13, @@ -4318,8 +4018,8 @@ "binop": null, "updateContext": null }, - "start": 371, - "end": 372, + "start": 361, + "end": 362, "loc": { "start": { "line": 13, @@ -4345,8 +4045,8 @@ "updateContext": null }, "value": "=", - "start": 373, - "end": 374, + "start": 363, + "end": 364, "loc": { "start": { "line": 13, @@ -4371,8 +4071,8 @@ "binop": null }, "value": "module", - "start": 375, - "end": 381, + "start": 365, + "end": 371, "loc": { "start": { "line": 13, @@ -4397,8 +4097,8 @@ "binop": null, "updateContext": null }, - "start": 381, - "end": 382, + "start": 371, + "end": 372, "loc": { "start": { "line": 13, @@ -4422,8 +4122,8 @@ "postfix": false, "binop": null }, - "start": 385, - "end": 386, + "start": 375, + "end": 376, "loc": { "start": { "line": 14, @@ -4450,8 +4150,8 @@ "updateContext": null }, "value": "return", - "start": 390, - "end": 396, + "start": 380, + "end": 386, "loc": { "start": { "line": 16, @@ -4476,8 +4176,8 @@ "binop": null }, "value": "TopEnv", - "start": 397, - "end": 403, + "start": 387, + "end": 393, "loc": { "start": { "line": 16, @@ -4502,8 +4202,8 @@ "binop": null, "updateContext": null }, - "start": 403, - "end": 404, + "start": 393, + "end": 394, "loc": { "start": { "line": 16, @@ -4529,8 +4229,8 @@ "updateContext": null }, "value": "require", - "start": 404, - "end": 413, + "start": 394, + "end": 403, "loc": { "start": { "line": 16, @@ -4555,8 +4255,8 @@ "binop": null, "updateContext": null }, - "start": 413, - "end": 414, + "start": 403, + "end": 404, "loc": { "start": { "line": 16, @@ -4581,8 +4281,8 @@ "binop": null, "updateContext": null }, - "start": 414, - "end": 415, + "start": 404, + "end": 405, "loc": { "start": { "line": 16, @@ -4607,8 +4307,8 @@ "binop": null }, "value": "cache", - "start": 415, - "end": 420, + "start": 405, + "end": 410, "loc": { "start": { "line": 16, @@ -4633,8 +4333,8 @@ "binop": null, "updateContext": null }, - "start": 420, - "end": 421, + "start": 410, + "end": 411, "loc": { "start": { "line": 16, @@ -4659,8 +4359,8 @@ "binop": null }, "value": "file", - "start": 421, - "end": 425, + "start": 411, + "end": 415, "loc": { "start": { "line": 16, @@ -4685,8 +4385,8 @@ "binop": null, "updateContext": null }, - "start": 425, - "end": 426, + "start": 415, + "end": 416, "loc": { "start": { "line": 16, @@ -4711,8 +4411,8 @@ "binop": null, "updateContext": null }, - "start": 426, - "end": 427, + "start": 416, + "end": 417, "loc": { "start": { "line": 16, @@ -4737,8 +4437,8 @@ "binop": null }, "value": "exports", - "start": 427, - "end": 434, + "start": 417, + "end": 424, "loc": { "start": { "line": 16, @@ -4763,8 +4463,8 @@ "binop": null, "updateContext": null }, - "start": 434, - "end": 435, + "start": 424, + "end": 425, "loc": { "start": { "line": 16, @@ -4788,8 +4488,8 @@ "postfix": false, "binop": null }, - "start": 436, - "end": 437, + "start": 426, + "end": 427, "loc": { "start": { "line": 17, @@ -4814,8 +4514,8 @@ "binop": null, "updateContext": null }, - "start": 437, - "end": 438, + "start": 427, + "end": 428, "loc": { "start": { "line": 17, @@ -4840,8 +4540,8 @@ "binop": null }, "value": "TopEnv", - "start": 440, - "end": 446, + "start": 430, + "end": 436, "loc": { "start": { "line": 19, @@ -4866,8 +4566,8 @@ "binop": null, "updateContext": null }, - "start": 446, - "end": 447, + "start": 436, + "end": 437, "loc": { "start": { "line": 19, @@ -4893,8 +4593,8 @@ "updateContext": null }, "value": "require", - "start": 447, - "end": 456, + "start": 437, + "end": 446, "loc": { "start": { "line": 19, @@ -4919,8 +4619,8 @@ "binop": null, "updateContext": null }, - "start": 456, - "end": 457, + "start": 446, + "end": 447, "loc": { "start": { "line": 19, @@ -4945,8 +4645,8 @@ "binop": null, "updateContext": null }, - "start": 457, - "end": 458, + "start": 447, + "end": 448, "loc": { "start": { "line": 19, @@ -4971,8 +4671,8 @@ "binop": null }, "value": "cache", - "start": 458, - "end": 463, + "start": 448, + "end": 453, "loc": { "start": { "line": 19, @@ -4998,8 +4698,8 @@ "updateContext": null }, "value": "=", - "start": 464, - "end": 465, + "start": 454, + "end": 455, "loc": { "start": { "line": 19, @@ -5024,8 +4724,8 @@ "binop": null }, "value": "Object", - "start": 466, - "end": 472, + "start": 456, + "end": 462, "loc": { "start": { "line": 19, @@ -5050,8 +4750,8 @@ "binop": null, "updateContext": null }, - "start": 472, - "end": 473, + "start": 462, + "end": 463, "loc": { "start": { "line": 19, @@ -5076,8 +4776,8 @@ "binop": null }, "value": "create", - "start": 473, - "end": 479, + "start": 463, + "end": 469, "loc": { "start": { "line": 19, @@ -5101,8 +4801,8 @@ "postfix": false, "binop": null }, - "start": 479, - "end": 480, + "start": 469, + "end": 470, "loc": { "start": { "line": 19, @@ -5129,8 +4829,8 @@ "updateContext": null }, "value": "null", - "start": 480, - "end": 484, + "start": 470, + "end": 474, "loc": { "start": { "line": 19, @@ -5154,8 +4854,8 @@ "postfix": false, "binop": null }, - "start": 484, - "end": 485, + "start": 474, + "end": 475, "loc": { "start": { "line": 19, @@ -5180,8 +4880,8 @@ "binop": null, "updateContext": null }, - "start": 485, - "end": 486, + "start": 475, + "end": 476, "loc": { "start": { "line": 19, @@ -5206,8 +4906,8 @@ "binop": null }, "value": "TopEnv", - "start": 487, - "end": 493, + "start": 477, + "end": 483, "loc": { "start": { "line": 20, @@ -5232,8 +4932,8 @@ "binop": null, "updateContext": null }, - "start": 493, - "end": 494, + "start": 483, + "end": 484, "loc": { "start": { "line": 20, @@ -5259,8 +4959,8 @@ "updateContext": null }, "value": "module", - "start": 494, - "end": 502, + "start": 484, + "end": 492, "loc": { "start": { "line": 20, @@ -5285,8 +4985,8 @@ "binop": null, "updateContext": null }, - "start": 502, - "end": 503, + "start": 492, + "end": 493, "loc": { "start": { "line": 20, @@ -5312,8 +5012,8 @@ "updateContext": null }, "value": "=", - "start": 504, - "end": 505, + "start": 494, + "end": 495, "loc": { "start": { "line": 20, @@ -5337,8 +5037,8 @@ "postfix": false, "binop": null }, - "start": 506, - "end": 507, + "start": 496, + "end": 497, "loc": { "start": { "line": 20, @@ -5363,8 +5063,8 @@ "binop": null }, "value": "exports", - "start": 508, - "end": 515, + "start": 498, + "end": 505, "loc": { "start": { "line": 20, @@ -5389,8 +5089,8 @@ "binop": null, "updateContext": null }, - "start": 515, - "end": 516, + "start": 505, + "end": 506, "loc": { "start": { "line": 20, @@ -5414,8 +5114,8 @@ "postfix": false, "binop": null }, - "start": 517, - "end": 518, + "start": 507, + "end": 508, "loc": { "start": { "line": 20, @@ -5439,8 +5139,8 @@ "postfix": false, "binop": null }, - "start": 518, - "end": 519, + "start": 508, + "end": 509, "loc": { "start": { "line": 20, @@ -5464,8 +5164,8 @@ "postfix": false, "binop": null }, - "start": 520, - "end": 521, + "start": 510, + "end": 511, "loc": { "start": { "line": 20, @@ -5490,8 +5190,8 @@ "binop": null, "updateContext": null }, - "start": 521, - "end": 522, + "start": 511, + "end": 512, "loc": { "start": { "line": 20, @@ -5516,8 +5216,8 @@ "binop": null, "updateContext": null }, - "start": 523, - "end": 523, + "start": 513, + "end": 513, "loc": { "start": { "line": 21, diff --git a/docs/ast/source/parser/index.js.json b/docs/ast/source/parser/index.js.json index d06fbf2..54058f9 100644 --- a/docs/ast/source/parser/index.js.json +++ b/docs/ast/source/parser/index.js.json @@ -1,37 +1,37 @@ { "type": "File", "start": 0, - "end": 248, + "end": 216, "loc": { "start": { "line": 1, "column": 0 }, "end": { - "line": 12, + "line": 10, "column": 0 } }, "program": { "type": "Program", "start": 0, - "end": 248, + "end": 216, "loc": { "start": { "line": 1, "column": 0 }, "end": { - "line": 12, + "line": 10, "column": 0 } }, "sourceType": "module", "body": [ { - "type": "VariableDeclaration", + "type": "ImportDeclaration", "start": 0, - "end": 40, + "end": 35, "loc": { "start": { "line": 1, @@ -39,158 +39,85 @@ }, "end": { "line": 1, - "column": 40 + "column": 35 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 6, - "end": 39, + "type": "ImportSpecifier", + "start": 9, + "end": 14, "loc": { "start": { "line": 1, - "column": 6 + "column": 9 }, "end": { "line": 1, - "column": 39 + "column": 14 } }, - "id": { - "type": "ObjectPattern", - "start": 6, - "end": 15, + "imported": { + "type": "Identifier", + "start": 9, + "end": 14, "loc": { "start": { "line": 1, - "column": 6 + "column": 9 }, "end": { "line": 1, - "column": 15 - } + "column": 14 + }, + "identifierName": "Lexer" }, - "properties": [ - { - "type": "ObjectProperty", - "start": 8, - "end": 13, - "loc": { - "start": { - "line": 1, - "column": 8 - }, - "end": { - "line": 1, - "column": 13 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 8, - "end": 13, - "loc": { - "start": { - "line": 1, - "column": 8 - }, - "end": { - "line": 1, - "column": 13 - }, - "identifierName": "Lexer" - }, - "name": "Lexer" - }, - "value": { - "type": "Identifier", - "start": 8, - "end": 13, - "loc": { - "start": { - "line": 1, - "column": 8 - }, - "end": { - "line": 1, - "column": 13 - }, - "identifierName": "Lexer" - }, - "name": "Lexer" - }, - "extra": { - "shorthand": true - } - } - ] + "name": "Lexer" }, - "init": { - "type": "CallExpression", - "start": 18, - "end": 39, + "local": { + "type": "Identifier", + "start": 9, + "end": 14, "loc": { "start": { "line": 1, - "column": 18 + "column": 9 }, "end": { "line": 1, - "column": 39 - } - }, - "callee": { - "type": "Identifier", - "start": 18, - "end": 25, - "loc": { - "start": { - "line": 1, - "column": 18 - }, - "end": { - "line": 1, - "column": 25 - }, - "identifierName": "require" + "column": 14 }, - "name": "require" + "identifierName": "Lexer" }, - "arguments": [ - { - "type": "StringLiteral", - "start": 26, - "end": 38, - "loc": { - "start": { - "line": 1, - "column": 26 - }, - "end": { - "line": 1, - "column": 38 - } - }, - "extra": { - "rawValue": "./lexer.js", - "raw": "\"./lexer.js\"" - }, - "value": "./lexer.js" - } - ] + "name": "Lexer" } } ], - "kind": "const" + "source": { + "type": "StringLiteral", + "start": 22, + "end": 34, + "loc": { + "start": { + "line": 1, + "column": 22 + }, + "end": { + "line": 1, + "column": 34 + } + }, + "extra": { + "rawValue": "./lexer.js", + "raw": "\"./lexer.js\"" + }, + "value": "./lexer.js" + } }, { - "type": "VariableDeclaration", - "start": 41, - "end": 82, + "type": "ImportDeclaration", + "start": 36, + "end": 72, "loc": { "start": { "line": 2, @@ -198,158 +125,85 @@ }, "end": { "line": 2, - "column": 41 + "column": 36 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 47, - "end": 81, + "type": "ImportSpecifier", + "start": 45, + "end": 51, "loc": { "start": { "line": 2, - "column": 6 + "column": 9 }, "end": { "line": 2, - "column": 40 + "column": 15 } }, - "id": { - "type": "ObjectPattern", - "start": 47, - "end": 57, + "imported": { + "type": "Identifier", + "start": 45, + "end": 51, "loc": { "start": { "line": 2, - "column": 6 + "column": 9 }, "end": { "line": 2, - "column": 16 - } + "column": 15 + }, + "identifierName": "Parser" }, - "properties": [ - { - "type": "ObjectProperty", - "start": 49, - "end": 55, - "loc": { - "start": { - "line": 2, - "column": 8 - }, - "end": { - "line": 2, - "column": 14 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 49, - "end": 55, - "loc": { - "start": { - "line": 2, - "column": 8 - }, - "end": { - "line": 2, - "column": 14 - }, - "identifierName": "Parser" - }, - "name": "Parser" - }, - "value": { - "type": "Identifier", - "start": 49, - "end": 55, - "loc": { - "start": { - "line": 2, - "column": 8 - }, - "end": { - "line": 2, - "column": 14 - }, - "identifierName": "Parser" - }, - "name": "Parser" - }, - "extra": { - "shorthand": true - } - } - ] + "name": "Parser" }, - "init": { - "type": "CallExpression", - "start": 60, - "end": 81, + "local": { + "type": "Identifier", + "start": 45, + "end": 51, "loc": { "start": { "line": 2, - "column": 19 + "column": 9 }, "end": { "line": 2, - "column": 40 - } - }, - "callee": { - "type": "Identifier", - "start": 60, - "end": 67, - "loc": { - "start": { - "line": 2, - "column": 19 - }, - "end": { - "line": 2, - "column": 26 - }, - "identifierName": "require" + "column": 15 }, - "name": "require" + "identifierName": "Parser" }, - "arguments": [ - { - "type": "StringLiteral", - "start": 68, - "end": 80, - "loc": { - "start": { - "line": 2, - "column": 27 - }, - "end": { - "line": 2, - "column": 39 - } - }, - "extra": { - "rawValue": "./parse.js", - "raw": "\"./parse.js\"" - }, - "value": "./parse.js" - } - ] + "name": "Parser" } } ], - "kind": "const" + "source": { + "type": "StringLiteral", + "start": 59, + "end": 71, + "loc": { + "start": { + "line": 2, + "column": 23 + }, + "end": { + "line": 2, + "column": 35 + } + }, + "extra": { + "rawValue": "./parse.js", + "raw": "\"./parse.js\"" + }, + "value": "./parse.js" + } }, { - "type": "VariableDeclaration", - "start": 83, - "end": 133, + "type": "ImportDeclaration", + "start": 73, + "end": 118, "loc": { "start": { "line": 3, @@ -357,158 +211,85 @@ }, "end": { "line": 3, - "column": 50 + "column": 45 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 89, - "end": 132, + "type": "ImportSpecifier", + "start": 82, + "end": 92, "loc": { "start": { "line": 3, - "column": 6 + "column": 9 }, "end": { "line": 3, - "column": 49 + "column": 19 } }, - "id": { - "type": "ObjectPattern", - "start": 89, - "end": 103, + "imported": { + "type": "Identifier", + "start": 82, + "end": 92, "loc": { "start": { "line": 3, - "column": 6 + "column": 9 }, "end": { "line": 3, - "column": 20 - } + "column": 19 + }, + "identifierName": "TokenRegex" }, - "properties": [ - { - "type": "ObjectProperty", - "start": 91, - "end": 101, - "loc": { - "start": { - "line": 3, - "column": 8 - }, - "end": { - "line": 3, - "column": 18 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 91, - "end": 101, - "loc": { - "start": { - "line": 3, - "column": 8 - }, - "end": { - "line": 3, - "column": 18 - }, - "identifierName": "TokenRegex" - }, - "name": "TokenRegex" - }, - "value": { - "type": "Identifier", - "start": 91, - "end": 101, - "loc": { - "start": { - "line": 3, - "column": 8 - }, - "end": { - "line": 3, - "column": 18 - }, - "identifierName": "TokenRegex" - }, - "name": "TokenRegex" - }, - "extra": { - "shorthand": true - } - } - ] + "name": "TokenRegex" }, - "init": { - "type": "CallExpression", - "start": 106, - "end": 132, + "local": { + "type": "Identifier", + "start": 82, + "end": 92, "loc": { "start": { "line": 3, - "column": 23 + "column": 9 }, "end": { "line": 3, - "column": 49 - } - }, - "callee": { - "type": "Identifier", - "start": 106, - "end": 113, - "loc": { - "start": { - "line": 3, - "column": 23 - }, - "end": { - "line": 3, - "column": 30 - }, - "identifierName": "require" + "column": 19 }, - "name": "require" + "identifierName": "TokenRegex" }, - "arguments": [ - { - "type": "StringLiteral", - "start": 114, - "end": 131, - "loc": { - "start": { - "line": 3, - "column": 31 - }, - "end": { - "line": 3, - "column": 48 - } - }, - "extra": { - "rawValue": "./tokenRegex.js", - "raw": "\"./tokenRegex.js\"" - }, - "value": "./tokenRegex.js" - } - ] + "name": "TokenRegex" } } ], - "kind": "const" + "source": { + "type": "StringLiteral", + "start": 100, + "end": 117, + "loc": { + "start": { + "line": 3, + "column": 27 + }, + "end": { + "line": 3, + "column": 44 + } + }, + "extra": { + "rawValue": "./tokenRegex.js", + "raw": "\"./tokenRegex.js\"" + }, + "value": "./tokenRegex.js" + } }, { - "type": "VariableDeclaration", - "start": 134, - "end": 180, + "type": "ImportDeclaration", + "start": 119, + "end": 160, "loc": { "start": { "line": 4, @@ -516,471 +297,295 @@ }, "end": { "line": 4, - "column": 46 + "column": 41 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 140, - "end": 179, + "type": "ImportSpecifier", + "start": 128, + "end": 136, "loc": { "start": { "line": 4, - "column": 6 + "column": 9 }, "end": { "line": 4, - "column": 45 + "column": 17 } }, - "id": { - "type": "ObjectPattern", - "start": 140, - "end": 152, + "imported": { + "type": "Identifier", + "start": 128, + "end": 136, "loc": { "start": { "line": 4, - "column": 6 + "column": 9 }, "end": { "line": 4, - "column": 18 - } + "column": 17 + }, + "identifierName": "json2AST" }, - "properties": [ - { - "type": "ObjectProperty", - "start": 142, - "end": 150, - "loc": { - "start": { - "line": 4, - "column": 8 - }, - "end": { - "line": 4, - "column": 16 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 142, - "end": 150, - "loc": { - "start": { - "line": 4, - "column": 8 - }, - "end": { - "line": 4, - "column": 16 - }, - "identifierName": "json2AST" - }, - "name": "json2AST" - }, - "value": { - "type": "Identifier", - "start": 142, - "end": 150, - "loc": { - "start": { - "line": 4, - "column": 8 - }, - "end": { - "line": 4, - "column": 16 - }, - "identifierName": "json2AST" - }, - "name": "json2AST" - }, - "extra": { - "shorthand": true - } - } - ] + "name": "json2AST" }, - "init": { - "type": "CallExpression", - "start": 155, - "end": 179, + "local": { + "type": "Identifier", + "start": 128, + "end": 136, "loc": { "start": { "line": 4, - "column": 21 + "column": 9 }, "end": { "line": 4, - "column": 45 - } - }, - "callee": { - "type": "Identifier", - "start": 155, - "end": 162, - "loc": { - "start": { - "line": 4, - "column": 21 - }, - "end": { - "line": 4, - "column": 28 - }, - "identifierName": "require" + "column": 17 }, - "name": "require" + "identifierName": "json2AST" }, - "arguments": [ - { - "type": "StringLiteral", - "start": 163, - "end": 178, - "loc": { - "start": { - "line": 4, - "column": 29 - }, - "end": { - "line": 4, - "column": 44 - } - }, - "extra": { - "rawValue": "./json2AST.js", - "raw": "\"./json2AST.js\"" - }, - "value": "./json2AST.js" - } - ] + "name": "json2AST" } } ], - "kind": "const" + "source": { + "type": "StringLiteral", + "start": 144, + "end": 159, + "loc": { + "start": { + "line": 4, + "column": 25 + }, + "end": { + "line": 4, + "column": 40 + } + }, + "extra": { + "rawValue": "./json2AST.js", + "raw": "\"./json2AST.js\"" + }, + "value": "./json2AST.js" + } }, { - "type": "ExpressionStatement", - "start": 182, - "end": 247, + "type": "ExportNamedDeclaration", + "start": 162, + "end": 215, "loc": { "start": { "line": 6, "column": 0 }, "end": { - "line": 11, - "column": 2 + "line": 9, + "column": 13 } }, - "expression": { - "type": "AssignmentExpression", - "start": 182, - "end": 246, - "loc": { - "start": { - "line": 6, - "column": 0 - }, - "end": { - "line": 11, - "column": 1 - } - }, - "operator": "=", - "left": { - "type": "MemberExpression", - "start": 182, - "end": 196, + "declaration": null, + "specifiers": [ + { + "type": "ExportSpecifier", + "start": 171, + "end": 176, "loc": { "start": { "line": 6, - "column": 0 + "column": 9 }, "end": { "line": 6, "column": 14 } }, - "object": { + "local": { "type": "Identifier", - "start": 182, - "end": 188, + "start": 171, + "end": 176, "loc": { "start": { "line": 6, - "column": 0 + "column": 9 }, "end": { "line": 6, - "column": 6 + "column": 14 }, - "identifierName": "module" + "identifierName": "Lexer" }, - "name": "module" + "name": "Lexer" }, - "property": { + "exported": { "type": "Identifier", - "start": 189, - "end": 196, + "start": 171, + "end": 176, "loc": { "start": { "line": 6, - "column": 7 + "column": 9 }, "end": { "line": 6, "column": 14 }, - "identifierName": "exports" + "identifierName": "Lexer" }, - "name": "exports" - }, - "computed": false + "name": "Lexer" + } }, - "right": { - "type": "ObjectExpression", - "start": 199, - "end": 246, + { + "type": "ExportSpecifier", + "start": 180, + "end": 186, "loc": { "start": { - "line": 6, - "column": 17 + "line": 7, + "column": 2 }, "end": { - "line": 11, - "column": 1 + "line": 7, + "column": 8 } }, - "properties": [ - { - "type": "ObjectProperty", - "start": 203, - "end": 208, - "loc": { - "start": { - "line": 7, - "column": 2 - }, - "end": { - "line": 7, - "column": 7 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 203, - "end": 208, - "loc": { - "start": { - "line": 7, - "column": 2 - }, - "end": { - "line": 7, - "column": 7 - }, - "identifierName": "Lexer" - }, - "name": "Lexer" + "local": { + "type": "Identifier", + "start": 180, + "end": 186, + "loc": { + "start": { + "line": 7, + "column": 2 }, - "value": { - "type": "Identifier", - "start": 203, - "end": 208, - "loc": { - "start": { - "line": 7, - "column": 2 - }, - "end": { - "line": 7, - "column": 7 - }, - "identifierName": "Lexer" - }, - "name": "Lexer" + "end": { + "line": 7, + "column": 8 }, - "extra": { - "shorthand": true - } + "identifierName": "Parser" }, - { - "type": "ObjectProperty", - "start": 212, - "end": 218, - "loc": { - "start": { - "line": 8, - "column": 2 - }, - "end": { - "line": 8, - "column": 8 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 212, - "end": 218, - "loc": { - "start": { - "line": 8, - "column": 2 - }, - "end": { - "line": 8, - "column": 8 - }, - "identifierName": "Parser" - }, - "name": "Parser" + "name": "Parser" + }, + "exported": { + "type": "Identifier", + "start": 180, + "end": 186, + "loc": { + "start": { + "line": 7, + "column": 2 }, - "value": { - "type": "Identifier", - "start": 212, - "end": 218, - "loc": { - "start": { - "line": 8, - "column": 2 - }, - "end": { - "line": 8, - "column": 8 - }, - "identifierName": "Parser" - }, - "name": "Parser" + "end": { + "line": 7, + "column": 8 }, - "extra": { - "shorthand": true - } + "identifierName": "Parser" + }, + "name": "Parser" + } + }, + { + "type": "ExportSpecifier", + "start": 190, + "end": 200, + "loc": { + "start": { + "line": 8, + "column": 2 }, - { - "type": "ObjectProperty", - "start": 222, - "end": 232, - "loc": { - "start": { - "line": 9, - "column": 2 - }, - "end": { - "line": 9, - "column": 12 - } + "end": { + "line": 8, + "column": 12 + } + }, + "local": { + "type": "Identifier", + "start": 190, + "end": 200, + "loc": { + "start": { + "line": 8, + "column": 2 }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 222, - "end": 232, - "loc": { - "start": { - "line": 9, - "column": 2 - }, - "end": { - "line": 9, - "column": 12 - }, - "identifierName": "TokenRegex" - }, - "name": "TokenRegex" + "end": { + "line": 8, + "column": 12 }, - "value": { - "type": "Identifier", - "start": 222, - "end": 232, - "loc": { - "start": { - "line": 9, - "column": 2 - }, - "end": { - "line": 9, - "column": 12 - }, - "identifierName": "TokenRegex" - }, - "name": "TokenRegex" + "identifierName": "TokenRegex" + }, + "name": "TokenRegex" + }, + "exported": { + "type": "Identifier", + "start": 190, + "end": 200, + "loc": { + "start": { + "line": 8, + "column": 2 }, - "extra": { - "shorthand": true - } + "end": { + "line": 8, + "column": 12 + }, + "identifierName": "TokenRegex" + }, + "name": "TokenRegex" + } + }, + { + "type": "ExportSpecifier", + "start": 204, + "end": 212, + "loc": { + "start": { + "line": 9, + "column": 2 }, - { - "type": "ObjectProperty", - "start": 236, - "end": 244, - "loc": { - "start": { - "line": 10, - "column": 2 - }, - "end": { - "line": 10, - "column": 10 - } + "end": { + "line": 9, + "column": 10 + } + }, + "local": { + "type": "Identifier", + "start": 204, + "end": 212, + "loc": { + "start": { + "line": 9, + "column": 2 }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 236, - "end": 244, - "loc": { - "start": { - "line": 10, - "column": 2 - }, - "end": { - "line": 10, - "column": 10 - }, - "identifierName": "json2AST" - }, - "name": "json2AST" + "end": { + "line": 9, + "column": 10 }, - "value": { - "type": "Identifier", - "start": 236, - "end": 244, - "loc": { - "start": { - "line": 10, - "column": 2 - }, - "end": { - "line": 10, - "column": 10 - }, - "identifierName": "json2AST" - }, - "name": "json2AST" + "identifierName": "json2AST" + }, + "name": "json2AST" + }, + "exported": { + "type": "Identifier", + "start": 204, + "end": 212, + "loc": { + "start": { + "line": 9, + "column": 2 }, - "extra": { - "shorthand": true - } - } - ] + "end": { + "line": 9, + "column": 10 + }, + "identifierName": "json2AST" + }, + "name": "json2AST" + } } - } + ], + "source": null } ], "directives": [] @@ -989,10 +594,10 @@ "tokens": [ { "type": { - "label": "const", - "keyword": "const", + "label": "import", + "keyword": "import", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -1001,9 +606,9 @@ "binop": null, "updateContext": null }, - "value": "const", + "value": "import", "start": 0, - "end": 5, + "end": 6, "loc": { "start": { "line": 1, @@ -1011,7 +616,7 @@ }, "end": { "line": 1, - "column": 5 + "column": 6 } } }, @@ -1027,16 +632,16 @@ "postfix": false, "binop": null }, - "start": 6, - "end": 7, + "start": 7, + "end": 8, "loc": { "start": { "line": 1, - "column": 6 + "column": 7 }, "end": { "line": 1, - "column": 7 + "column": 8 } } }, @@ -1053,16 +658,16 @@ "binop": null }, "value": "Lexer", - "start": 8, - "end": 13, + "start": 9, + "end": 14, "loc": { "start": { "line": 1, - "column": 8 + "column": 9 }, "end": { "line": 1, - "column": 13 + "column": 14 } } }, @@ -1078,43 +683,16 @@ "postfix": false, "binop": null }, - "start": 14, - "end": 15, + "start": 15, + "end": 16, "loc": { "start": { - "line": 1, - "column": 14 - }, - "end": { "line": 1, "column": 15 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 16, - "end": 17, - "loc": { - "start": { - "line": 1, - "column": 16 }, "end": { "line": 1, - "column": 17 + "column": 16 } } }, @@ -1130,42 +708,17 @@ "postfix": false, "binop": null }, - "value": "require", - "start": 18, - "end": 25, + "value": "from", + "start": 17, + "end": 21, "loc": { "start": { "line": 1, - "column": 18 - }, - "end": { - "line": 1, - "column": 25 - } - } - }, - { - "type": { - "label": "(", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 25, - "end": 26, - "loc": { - "start": { - "line": 1, - "column": 25 + "column": 17 }, "end": { "line": 1, - "column": 26 + "column": 21 } } }, @@ -1183,41 +736,16 @@ "updateContext": null }, "value": "./lexer.js", - "start": 26, - "end": 38, + "start": 22, + "end": 34, "loc": { "start": { "line": 1, - "column": 26 - }, - "end": { - "line": 1, - "column": 38 - } - } - }, - { - "type": { - "label": ")", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 38, - "end": 39, - "loc": { - "start": { - "line": 1, - "column": 38 + "column": 22 }, "end": { "line": 1, - "column": 39 + "column": 34 } } }, @@ -1234,25 +762,25 @@ "binop": null, "updateContext": null }, - "start": 39, - "end": 40, + "start": 34, + "end": 35, "loc": { "start": { "line": 1, - "column": 39 + "column": 34 }, "end": { "line": 1, - "column": 40 + "column": 35 } } }, { "type": { - "label": "const", - "keyword": "const", + "label": "import", + "keyword": "import", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -1261,9 +789,9 @@ "binop": null, "updateContext": null }, - "value": "const", - "start": 41, - "end": 46, + "value": "import", + "start": 36, + "end": 42, "loc": { "start": { "line": 2, @@ -1271,7 +799,7 @@ }, "end": { "line": 2, - "column": 5 + "column": 6 } } }, @@ -1287,16 +815,16 @@ "postfix": false, "binop": null }, - "start": 47, - "end": 48, + "start": 43, + "end": 44, "loc": { "start": { "line": 2, - "column": 6 + "column": 7 }, "end": { "line": 2, - "column": 7 + "column": 8 } } }, @@ -1313,16 +841,16 @@ "binop": null }, "value": "Parser", - "start": 49, - "end": 55, + "start": 45, + "end": 51, "loc": { "start": { "line": 2, - "column": 8 + "column": 9 }, "end": { "line": 2, - "column": 14 + "column": 15 } } }, @@ -1338,303 +866,16 @@ "postfix": false, "binop": null }, - "start": 56, - "end": 57, + "start": 52, + "end": 53, "loc": { "start": { - "line": 2, - "column": 15 - }, - "end": { "line": 2, "column": 16 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 58, - "end": 59, - "loc": { - "start": { - "line": 2, - "column": 17 - }, - "end": { - "line": 2, - "column": 18 - } - } - }, - { - "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "require", - "start": 60, - "end": 67, - "loc": { - "start": { - "line": 2, - "column": 19 - }, - "end": { - "line": 2, - "column": 26 - } - } - }, - { - "type": { - "label": "(", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 67, - "end": 68, - "loc": { - "start": { - "line": 2, - "column": 26 - }, - "end": { - "line": 2, - "column": 27 - } - } - }, - { - "type": { - "label": "string", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "./parse.js", - "start": 68, - "end": 80, - "loc": { - "start": { - "line": 2, - "column": 27 - }, - "end": { - "line": 2, - "column": 39 - } - } - }, - { - "type": { - "label": ")", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 80, - "end": 81, - "loc": { - "start": { - "line": 2, - "column": 39 - }, - "end": { - "line": 2, - "column": 40 - } - } - }, - { - "type": { - "label": ";", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "start": 81, - "end": 82, - "loc": { - "start": { - "line": 2, - "column": 40 }, "end": { "line": 2, - "column": 41 - } - } - }, - { - "type": { - "label": "const", - "keyword": "const", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "const", - "start": 83, - "end": 88, - "loc": { - "start": { - "line": 3, - "column": 0 - }, - "end": { - "line": 3, - "column": 5 - } - } - }, - { - "type": { - "label": "{", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 89, - "end": 90, - "loc": { - "start": { - "line": 3, - "column": 6 - }, - "end": { - "line": 3, - "column": 7 - } - } - }, - { - "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "TokenRegex", - "start": 91, - "end": 101, - "loc": { - "start": { - "line": 3, - "column": 8 - }, - "end": { - "line": 3, - "column": 18 - } - } - }, - { - "type": { - "label": "}", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 102, - "end": 103, - "loc": { - "start": { - "line": 3, - "column": 19 - }, - "end": { - "line": 3, - "column": 20 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 104, - "end": 105, - "loc": { - "start": { - "line": 3, - "column": 21 - }, - "end": { - "line": 3, - "column": 22 + "column": 17 } } }, @@ -1650,50 +891,52 @@ "postfix": false, "binop": null }, - "value": "require", - "start": 106, - "end": 113, + "value": "from", + "start": 54, + "end": 58, "loc": { "start": { - "line": 3, - "column": 23 + "line": 2, + "column": 18 }, "end": { - "line": 3, - "column": 30 + "line": 2, + "column": 22 } } }, { "type": { - "label": "(", - "beforeExpr": true, + "label": "string", + "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "start": 113, - "end": 114, + "value": "./parse.js", + "start": 59, + "end": 71, "loc": { "start": { - "line": 3, - "column": 30 + "line": 2, + "column": 23 }, "end": { - "line": 3, - "column": 31 + "line": 2, + "column": 35 } } }, { "type": { - "label": "string", - "beforeExpr": false, - "startsExpr": true, + "label": ";", + "beforeExpr": true, + "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -1702,104 +945,103 @@ "binop": null, "updateContext": null }, - "value": "./tokenRegex.js", - "start": 114, - "end": 131, + "start": 71, + "end": 72, "loc": { "start": { - "line": 3, - "column": 31 + "line": 2, + "column": 35 }, "end": { - "line": 3, - "column": 48 + "line": 2, + "column": 36 } } }, { "type": { - "label": ")", + "label": "import", + "keyword": "import", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "start": 131, - "end": 132, + "value": "import", + "start": 73, + "end": 79, "loc": { "start": { "line": 3, - "column": 48 + "column": 0 }, "end": { "line": 3, - "column": 49 + "column": 6 } } }, { "type": { - "label": ";", + "label": "{", "beforeExpr": true, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null, - "updateContext": null + "binop": null }, - "start": 132, - "end": 133, + "start": 80, + "end": 81, "loc": { "start": { "line": 3, - "column": 49 + "column": 7 }, "end": { "line": 3, - "column": 50 + "column": 8 } } }, { "type": { - "label": "const", - "keyword": "const", + "label": "name", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null, - "updateContext": null + "binop": null }, - "value": "const", - "start": 134, - "end": 139, + "value": "TokenRegex", + "start": 82, + "end": 92, "loc": { "start": { - "line": 4, - "column": 0 + "line": 3, + "column": 9 }, "end": { - "line": 4, - "column": 5 + "line": 3, + "column": 19 } } }, { "type": { - "label": "{", - "beforeExpr": true, - "startsExpr": true, + "label": "}", + "beforeExpr": false, + "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -1807,16 +1049,16 @@ "postfix": false, "binop": null }, - "start": 140, - "end": 141, + "start": 93, + "end": 94, "loc": { "start": { - "line": 4, - "column": 6 + "line": 3, + "column": 20 }, "end": { - "line": 4, - "column": 7 + "line": 3, + "column": 21 } } }, @@ -1832,75 +1074,77 @@ "postfix": false, "binop": null }, - "value": "json2AST", - "start": 142, - "end": 150, + "value": "from", + "start": 95, + "end": 99, "loc": { "start": { - "line": 4, - "column": 8 + "line": 3, + "column": 22 }, "end": { - "line": 4, - "column": 16 + "line": 3, + "column": 26 } } }, { "type": { - "label": "}", + "label": "string", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "start": 151, - "end": 152, + "value": "./tokenRegex.js", + "start": 100, + "end": 117, "loc": { "start": { - "line": 4, - "column": 17 + "line": 3, + "column": 27 }, "end": { - "line": 4, - "column": 18 + "line": 3, + "column": 44 } } }, { "type": { - "label": "=", + "label": ";", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, - "isAssign": true, + "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, - "value": "=", - "start": 153, - "end": 154, + "start": 117, + "end": 118, "loc": { "start": { - "line": 4, - "column": 19 + "line": 3, + "column": 44 }, "end": { - "line": 4, - "column": 20 + "line": 3, + "column": 45 } } }, { "type": { - "label": "name", + "label": "import", + "keyword": "import", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, @@ -1908,25 +1152,26 @@ "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "value": "require", - "start": 155, - "end": 162, + "value": "import", + "start": 119, + "end": 125, "loc": { "start": { "line": 4, - "column": 21 + "column": 0 }, "end": { "line": 4, - "column": 28 + "column": 6 } } }, { "type": { - "label": "(", + "label": "{", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, @@ -1936,22 +1181,22 @@ "postfix": false, "binop": null }, - "start": 162, - "end": 163, + "start": 126, + "end": 127, "loc": { "start": { "line": 4, - "column": 28 + "column": 7 }, "end": { "line": 4, - "column": 29 + "column": 8 } } }, { "type": { - "label": "string", + "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, @@ -1959,26 +1204,25 @@ "isAssign": false, "prefix": false, "postfix": false, - "binop": null, - "updateContext": null + "binop": null }, - "value": "./json2AST.js", - "start": 163, - "end": 178, + "value": "json2AST", + "start": 128, + "end": 136, "loc": { "start": { "line": 4, - "column": 29 + "column": 9 }, "end": { "line": 4, - "column": 44 + "column": 17 } } }, { "type": { - "label": ")", + "label": "}", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, @@ -1988,48 +1232,48 @@ "postfix": false, "binop": null }, - "start": 178, - "end": 179, + "start": 137, + "end": 138, "loc": { "start": { "line": 4, - "column": 44 + "column": 18 }, "end": { "line": 4, - "column": 45 + "column": 19 } } }, { "type": { - "label": ";", - "beforeExpr": true, - "startsExpr": false, + "label": "name", + "beforeExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null, - "updateContext": null + "binop": null }, - "start": 179, - "end": 180, + "value": "from", + "start": 139, + "end": 143, "loc": { "start": { "line": 4, - "column": 45 + "column": 20 }, "end": { "line": 4, - "column": 46 + "column": 24 } } }, { "type": { - "label": "name", + "label": "string", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, @@ -2037,26 +1281,27 @@ "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "value": "module", - "start": 182, - "end": 188, + "value": "./json2AST.js", + "start": 144, + "end": 159, "loc": { "start": { - "line": 6, - "column": 0 + "line": 4, + "column": 25 }, "end": { - "line": 6, - "column": 6 + "line": 4, + "column": 40 } } }, { "type": { - "label": ".", - "beforeExpr": false, + "label": ";", + "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, @@ -2066,69 +1311,44 @@ "binop": null, "updateContext": null }, - "start": 188, - "end": 189, + "start": 159, + "end": 160, "loc": { "start": { - "line": 6, - "column": 6 + "line": 4, + "column": 40 }, "end": { - "line": 6, - "column": 7 + "line": 4, + "column": 41 } } }, { "type": { - "label": "name", + "label": "export", + "keyword": "export", "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "exports", - "start": 189, - "end": 196, - "loc": { - "start": { - "line": 6, - "column": 7 - }, - "end": { - "line": 6, - "column": 14 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, - "isAssign": true, + "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, - "value": "=", - "start": 197, - "end": 198, + "value": "export", + "start": 162, + "end": 168, "loc": { "start": { "line": 6, - "column": 15 + "column": 0 }, "end": { "line": 6, - "column": 16 + "column": 6 } } }, @@ -2144,16 +1364,16 @@ "postfix": false, "binop": null }, - "start": 199, - "end": 200, + "start": 169, + "end": 170, "loc": { "start": { "line": 6, - "column": 17 + "column": 7 }, "end": { "line": 6, - "column": 18 + "column": 8 } } }, @@ -2170,16 +1390,16 @@ "binop": null }, "value": "Lexer", - "start": 203, - "end": 208, + "start": 171, + "end": 176, "loc": { "start": { - "line": 7, - "column": 2 + "line": 6, + "column": 9 }, "end": { - "line": 7, - "column": 7 + "line": 6, + "column": 14 } } }, @@ -2196,16 +1416,16 @@ "binop": null, "updateContext": null }, - "start": 208, - "end": 209, + "start": 176, + "end": 177, "loc": { "start": { - "line": 7, - "column": 7 + "line": 6, + "column": 14 }, "end": { - "line": 7, - "column": 8 + "line": 6, + "column": 15 } } }, @@ -2222,15 +1442,15 @@ "binop": null }, "value": "Parser", - "start": 212, - "end": 218, + "start": 180, + "end": 186, "loc": { "start": { - "line": 8, + "line": 7, "column": 2 }, "end": { - "line": 8, + "line": 7, "column": 8 } } @@ -2248,15 +1468,15 @@ "binop": null, "updateContext": null }, - "start": 218, - "end": 219, + "start": 186, + "end": 187, "loc": { "start": { - "line": 8, + "line": 7, "column": 8 }, "end": { - "line": 8, + "line": 7, "column": 9 } } @@ -2274,15 +1494,15 @@ "binop": null }, "value": "TokenRegex", - "start": 222, - "end": 232, + "start": 190, + "end": 200, "loc": { "start": { - "line": 9, + "line": 8, "column": 2 }, "end": { - "line": 9, + "line": 8, "column": 12 } } @@ -2300,15 +1520,15 @@ "binop": null, "updateContext": null }, - "start": 232, - "end": 233, + "start": 200, + "end": 201, "loc": { "start": { - "line": 9, + "line": 8, "column": 12 }, "end": { - "line": 9, + "line": 8, "column": 13 } } @@ -2326,15 +1546,15 @@ "binop": null }, "value": "json2AST", - "start": 236, - "end": 244, + "start": 204, + "end": 212, "loc": { "start": { - "line": 10, + "line": 9, "column": 2 }, "end": { - "line": 10, + "line": 9, "column": 10 } } @@ -2351,16 +1571,16 @@ "postfix": false, "binop": null }, - "start": 245, - "end": 246, + "start": 213, + "end": 214, "loc": { "start": { - "line": 11, - "column": 0 + "line": 9, + "column": 11 }, "end": { - "line": 11, - "column": 1 + "line": 9, + "column": 12 } } }, @@ -2377,16 +1597,16 @@ "binop": null, "updateContext": null }, - "start": 246, - "end": 247, + "start": 214, + "end": 215, "loc": { "start": { - "line": 11, - "column": 1 + "line": 9, + "column": 12 }, "end": { - "line": 11, - "column": 2 + "line": 9, + "column": 13 } } }, @@ -2403,15 +1623,15 @@ "binop": null, "updateContext": null }, - "start": 248, - "end": 248, + "start": 216, + "end": 216, "loc": { "start": { - "line": 12, + "line": 10, "column": 0 }, "end": { - "line": 12, + "line": 10, "column": 0 } } diff --git a/docs/ast/source/parser/json2AST.js.json b/docs/ast/source/parser/json2AST.js.json index 08a6658..865f997 100644 --- a/docs/ast/source/parser/json2AST.js.json +++ b/docs/ast/source/parser/json2AST.js.json @@ -1,37 +1,37 @@ { "type": "File", "start": 0, - "end": 710, + "end": 688, "loc": { "start": { "line": 1, "column": 0 }, "end": { - "line": 30, + "line": 28, "column": 0 } }, "program": { "type": "Program", "start": 0, - "end": 710, + "end": 688, "loc": { "start": { "line": 1, "column": 0 }, "end": { - "line": 30, + "line": 28, "column": 0 } }, "sourceType": "module", "body": [ { - "type": "VariableDeclaration", + "type": "ImportDeclaration", "start": 0, - "end": 66, + "end": 61, "loc": { "start": { "line": 1, @@ -39,508 +39,366 @@ }, "end": { "line": 1, - "column": 66 + "column": 61 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 6, - "end": 65, + "type": "ImportSpecifier", + "start": 9, + "end": 14, "loc": { "start": { "line": 1, - "column": 6 + "column": 9 }, "end": { "line": 1, - "column": 65 + "column": 14 } }, - "id": { - "type": "ObjectPattern", - "start": 6, - "end": 35, + "imported": { + "type": "Identifier", + "start": 9, + "end": 14, "loc": { "start": { "line": 1, - "column": 6 + "column": 9 }, "end": { "line": 1, - "column": 35 - } - }, - "properties": [ - { - "type": "ObjectProperty", - "start": 8, - "end": 13, - "loc": { - "start": { - "line": 1, - "column": 8 - }, - "end": { - "line": 1, - "column": 13 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 8, - "end": 13, - "loc": { - "start": { - "line": 1, - "column": 8 - }, - "end": { - "line": 1, - "column": 13 - }, - "identifierName": "Value" - }, - "name": "Value" - }, - "value": { - "type": "Identifier", - "start": 8, - "end": 13, - "loc": { - "start": { - "line": 1, - "column": 8 - }, - "end": { - "line": 1, - "column": 13 - }, - "identifierName": "Value" - }, - "name": "Value" - }, - "extra": { - "shorthand": true - } + "column": 14 }, - { - "type": "ObjectProperty", - "start": 15, - "end": 19, - "loc": { - "start": { - "line": 1, - "column": 15 - }, - "end": { - "line": 1, - "column": 19 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 15, - "end": 19, - "loc": { - "start": { - "line": 1, - "column": 15 - }, - "end": { - "line": 1, - "column": 19 - }, - "identifierName": "Word" - }, - "name": "Word" - }, - "value": { - "type": "Identifier", - "start": 15, - "end": 19, - "loc": { - "start": { - "line": 1, - "column": 15 - }, - "end": { - "line": 1, - "column": 19 - }, - "identifierName": "Word" - }, - "name": "Word" - }, - "extra": { - "shorthand": true - } + "identifierName": "Value" + }, + "name": "Value" + }, + "local": { + "type": "Identifier", + "start": 9, + "end": 14, + "loc": { + "start": { + "line": 1, + "column": 9 }, - { - "type": "ObjectProperty", - "start": 21, - "end": 26, - "loc": { - "start": { - "line": 1, - "column": 21 - }, - "end": { - "line": 1, - "column": 26 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 21, - "end": 26, - "loc": { - "start": { - "line": 1, - "column": 21 - }, - "end": { - "line": 1, - "column": 26 - }, - "identifierName": "Apply" - }, - "name": "Apply" - }, - "value": { - "type": "Identifier", - "start": 21, - "end": 26, - "loc": { - "start": { - "line": 1, - "column": 21 - }, - "end": { - "line": 1, - "column": 26 - }, - "identifierName": "Apply" - }, - "name": "Apply" - }, - "extra": { - "shorthand": true - } + "end": { + "line": 1, + "column": 14 }, - { - "type": "ObjectProperty", - "start": 28, - "end": 33, - "loc": { - "start": { - "line": 1, - "column": 28 - }, - "end": { - "line": 1, - "column": 33 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 28, - "end": 33, - "loc": { - "start": { - "line": 1, - "column": 28 - }, - "end": { - "line": 1, - "column": 33 - }, - "identifierName": "Regex" - }, - "name": "Regex" - }, - "value": { - "type": "Identifier", - "start": 28, - "end": 33, - "loc": { - "start": { - "line": 1, - "column": 28 - }, - "end": { - "line": 1, - "column": 33 - }, - "identifierName": "Regex" - }, - "name": "Regex" - }, - "extra": { - "shorthand": true - } - } - ] + "identifierName": "Value" + }, + "name": "Value" + } + }, + { + "type": "ImportSpecifier", + "start": 16, + "end": 20, + "loc": { + "start": { + "line": 1, + "column": 16 + }, + "end": { + "line": 1, + "column": 20 + } }, - "init": { - "type": "CallExpression", - "start": 38, - "end": 65, + "imported": { + "type": "Identifier", + "start": 16, + "end": 20, "loc": { "start": { "line": 1, - "column": 38 + "column": 16 }, "end": { "line": 1, - "column": 65 - } + "column": 20 + }, + "identifierName": "Word" }, - "callee": { - "type": "Identifier", - "start": 38, - "end": 45, - "loc": { - "start": { - "line": 1, - "column": 38 - }, - "end": { - "line": 1, - "column": 45 - }, - "identifierName": "require" + "name": "Word" + }, + "local": { + "type": "Identifier", + "start": 16, + "end": 20, + "loc": { + "start": { + "line": 1, + "column": 16 + }, + "end": { + "line": 1, + "column": 20 }, - "name": "require" + "identifierName": "Word" }, - "arguments": [ - { - "type": "StringLiteral", - "start": 46, - "end": 64, - "loc": { - "start": { - "line": 1, - "column": 46 - }, - "end": { - "line": 1, - "column": 64 - } - }, - "extra": { - "rawValue": "../interp/ast.js", - "raw": "\"../interp/ast.js\"" - }, - "value": "../interp/ast.js" - } - ] + "name": "Word" } - } - ], - "kind": "const" - }, - { - "type": "VariableDeclaration", - "start": 67, - "end": 104, - "loc": { - "start": { - "line": 2, - "column": 0 }, - "end": { - "line": 2, - "column": 37 - } - }, - "declarations": [ { - "type": "VariableDeclarator", - "start": 73, - "end": 103, + "type": "ImportSpecifier", + "start": 22, + "end": 27, "loc": { "start": { - "line": 2, - "column": 6 + "line": 1, + "column": 22 }, "end": { - "line": 2, - "column": 36 + "line": 1, + "column": 27 } }, - "id": { + "imported": { "type": "Identifier", - "start": 73, - "end": 78, + "start": 22, + "end": 27, "loc": { "start": { - "line": 2, - "column": 6 + "line": 1, + "column": 22 }, "end": { - "line": 2, - "column": 11 + "line": 1, + "column": 27 }, - "identifierName": "utils" + "identifierName": "Apply" }, - "name": "utils" + "name": "Apply" }, - "init": { - "type": "CallExpression", - "start": 81, - "end": 103, + "local": { + "type": "Identifier", + "start": 22, + "end": 27, "loc": { "start": { - "line": 2, - "column": 14 + "line": 1, + "column": 22 }, "end": { - "line": 2, - "column": 36 - } - }, - "callee": { - "type": "Identifier", - "start": 81, - "end": 88, - "loc": { - "start": { - "line": 2, - "column": 14 - }, - "end": { - "line": 2, - "column": 21 - }, - "identifierName": "require" + "line": 1, + "column": 27 }, - "name": "require" + "identifierName": "Apply" }, - "arguments": [ - { - "type": "StringLiteral", - "start": 89, - "end": 102, - "loc": { - "start": { - "line": 2, - "column": 22 - }, - "end": { - "line": 2, - "column": 35 - } - }, - "extra": { - "rawValue": "../utils.js", - "raw": "\"../utils.js\"" - }, - "value": "../utils.js" - } - ] + "name": "Apply" } - } - ], - "kind": "const" - }, - { - "type": "VariableDeclaration", - "start": 106, - "end": 675, - "loc": { - "start": { - "line": 4, - "column": 0 }, - "end": { - "line": 25, - "column": 2 - } - }, - "declarations": [ { - "type": "VariableDeclarator", - "start": 112, - "end": 674, + "type": "ImportSpecifier", + "start": 29, + "end": 34, "loc": { "start": { - "line": 4, - "column": 6 + "line": 1, + "column": 29 }, "end": { - "line": 25, - "column": 1 + "line": 1, + "column": 34 } }, - "id": { + "imported": { "type": "Identifier", - "start": 112, - "end": 120, + "start": 29, + "end": 34, "loc": { "start": { - "line": 4, - "column": 6 + "line": 1, + "column": 29 }, "end": { - "line": 4, - "column": 14 + "line": 1, + "column": 34 }, - "identifierName": "json2AST" + "identifierName": "Regex" }, - "name": "json2AST" + "name": "Regex" }, - "init": { - "type": "ArrowFunctionExpression", - "start": 123, - "end": 674, + "local": { + "type": "Identifier", + "start": 29, + "end": 34, "loc": { "start": { - "line": 4, - "column": 17 + "line": 1, + "column": 29 }, "end": { - "line": 25, - "column": 1 - } + "line": 1, + "column": 34 + }, + "identifierName": "Regex" }, - "id": { - "type": "Identifier", - "start": 112, - "end": 120, - "loc": { - "start": { - "line": 4, - "column": 6 - }, - "end": { - "line": 4, - "column": 14 - }, - "identifierName": "json2AST" + "name": "Regex" + } + } + ], + "source": { + "type": "StringLiteral", + "start": 42, + "end": 60, + "loc": { + "start": { + "line": 1, + "column": 42 + }, + "end": { + "line": 1, + "column": 60 + } + }, + "extra": { + "rawValue": "../interp/ast.js", + "raw": "\"../interp/ast.js\"" + }, + "value": "../interp/ast.js" + } + }, + { + "type": "ImportDeclaration", + "start": 62, + "end": 94, + "loc": { + "start": { + "line": 2, + "column": 0 + }, + "end": { + "line": 2, + "column": 32 + } + }, + "specifiers": [ + { + "type": "ImportDefaultSpecifier", + "start": 69, + "end": 74, + "loc": { + "start": { + "line": 2, + "column": 7 + }, + "end": { + "line": 2, + "column": 12 + } + }, + "local": { + "type": "Identifier", + "start": 69, + "end": 74, + "loc": { + "start": { + "line": 2, + "column": 7 }, - "name": "json2AST" + "end": { + "line": 2, + "column": 12 + }, + "identifierName": "utils" + }, + "name": "utils" + } + } + ], + "source": { + "type": "StringLiteral", + "start": 80, + "end": 93, + "loc": { + "start": { + "line": 2, + "column": 18 + }, + "end": { + "line": 2, + "column": 31 + } + }, + "extra": { + "rawValue": "../utils.js", + "raw": "\"../utils.js\"" + }, + "value": "../utils.js" + } + }, + { + "type": "Identifier", + "start": 96, + "end": 665, + "loc": { + "start": { + "line": 4, + "column": 0 + }, + "end": { + "line": 25, + "column": 2 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 102, + "end": 664, + "loc": { + "start": { + "line": 4, + "column": 6 + }, + "end": { + "line": 25, + "column": 1 + } + }, + "id": { + "type": "Identifier", + "start": 102, + "end": 110, + "loc": { + "start": { + "line": 4, + "column": 6 + }, + "end": { + "line": 4, + "column": 14 + }, + "identifierName": "json2AST" + }, + "name": "json2AST" + }, + "init": { + "type": "ArrowFunctionExpression", + "start": 113, + "end": 664, + "loc": { + "start": { + "line": 4, + "column": 17 + }, + "end": { + "line": 25, + "column": 1 + } }, + "id": null, "generator": false, "expression": false, "async": false, "params": [ { "type": "Identifier", - "start": 123, - "end": 127, + "start": 113, + "end": 117, "loc": { "start": { "line": 4, @@ -557,8 +415,8 @@ ], "body": { "type": "BlockStatement", - "start": 131, - "end": 674, + "start": 121, + "end": 664, "loc": { "start": { "line": 4, @@ -572,8 +430,8 @@ "body": [ { "type": "VariableDeclaration", - "start": 135, - "end": 150, + "start": 125, + "end": 140, "loc": { "start": { "line": 5, @@ -587,8 +445,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 139, - "end": 149, + "start": 129, + "end": 139, "loc": { "start": { "line": 5, @@ -601,8 +459,8 @@ }, "id": { "type": "Identifier", - "start": 139, - "end": 142, + "start": 129, + "end": 132, "loc": { "start": { "line": 5, @@ -618,8 +476,8 @@ }, "init": { "type": "NullLiteral", - "start": 145, - "end": 149, + "start": 135, + "end": 139, "loc": { "start": { "line": 5, @@ -637,8 +495,8 @@ }, { "type": "IfStatement", - "start": 154, - "end": 657, + "start": 144, + "end": 647, "loc": { "start": { "line": 7, @@ -651,8 +509,8 @@ }, "test": { "type": "BinaryExpression", - "start": 158, - "end": 178, + "start": 148, + "end": 168, "loc": { "start": { "line": 7, @@ -665,8 +523,8 @@ }, "left": { "type": "MemberExpression", - "start": 158, - "end": 167, + "start": 148, + "end": 157, "loc": { "start": { "line": 7, @@ -679,8 +537,8 @@ }, "object": { "type": "Identifier", - "start": 158, - "end": 162, + "start": 148, + "end": 152, "loc": { "start": { "line": 7, @@ -696,8 +554,8 @@ }, "property": { "type": "Identifier", - "start": 163, - "end": 167, + "start": 153, + "end": 157, "loc": { "start": { "line": 7, @@ -716,8 +574,8 @@ "operator": "==", "right": { "type": "StringLiteral", - "start": 171, - "end": 178, + "start": 161, + "end": 168, "loc": { "start": { "line": 7, @@ -737,8 +595,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 180, - "end": 308, + "start": 170, + "end": 298, "loc": { "start": { "line": 7, @@ -752,8 +610,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 186, - "end": 208, + "start": 176, + "end": 198, "loc": { "start": { "line": 8, @@ -766,8 +624,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 186, - "end": 207, + "start": 176, + "end": 197, "loc": { "start": { "line": 8, @@ -781,8 +639,8 @@ "operator": "=", "left": { "type": "Identifier", - "start": 186, - "end": 189, + "start": 176, + "end": 179, "loc": { "start": { "line": 8, @@ -798,8 +656,8 @@ }, "right": { "type": "NewExpression", - "start": 192, - "end": 207, + "start": 182, + "end": 197, "loc": { "start": { "line": 8, @@ -812,8 +670,8 @@ }, "callee": { "type": "Identifier", - "start": 196, - "end": 201, + "start": 186, + "end": 191, "loc": { "start": { "line": 8, @@ -830,8 +688,8 @@ "arguments": [ { "type": "Identifier", - "start": 202, - "end": 206, + "start": 192, + "end": 196, "loc": { "start": { "line": 8, @@ -851,8 +709,8 @@ }, { "type": "ExpressionStatement", - "start": 213, - "end": 252, + "start": 203, + "end": 242, "loc": { "start": { "line": 9, @@ -865,8 +723,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 213, - "end": 251, + "start": 203, + "end": 241, "loc": { "start": { "line": 9, @@ -880,8 +738,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 213, - "end": 225, + "start": 203, + "end": 215, "loc": { "start": { "line": 9, @@ -894,8 +752,8 @@ }, "object": { "type": "Identifier", - "start": 213, - "end": 216, + "start": 203, + "end": 206, "loc": { "start": { "line": 9, @@ -911,8 +769,8 @@ }, "property": { "type": "Identifier", - "start": 217, - "end": 225, + "start": 207, + "end": 215, "loc": { "start": { "line": 9, @@ -930,8 +788,8 @@ }, "right": { "type": "CallExpression", - "start": 228, - "end": 251, + "start": 218, + "end": 241, "loc": { "start": { "line": 9, @@ -944,8 +802,8 @@ }, "callee": { "type": "Identifier", - "start": 228, - "end": 236, + "start": 218, + "end": 226, "loc": { "start": { "line": 9, @@ -962,8 +820,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 237, - "end": 250, + "start": 227, + "end": 240, "loc": { "start": { "line": 9, @@ -976,8 +834,8 @@ }, "object": { "type": "Identifier", - "start": 237, - "end": 241, + "start": 227, + "end": 231, "loc": { "start": { "line": 9, @@ -993,8 +851,8 @@ }, "property": { "type": "Identifier", - "start": 242, - "end": 250, + "start": 232, + "end": 240, "loc": { "start": { "line": 9, @@ -1016,8 +874,8 @@ }, { "type": "ExpressionStatement", - "start": 257, - "end": 304, + "start": 247, + "end": 294, "loc": { "start": { "line": 10, @@ -1030,8 +888,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 257, - "end": 303, + "start": 247, + "end": 293, "loc": { "start": { "line": 10, @@ -1045,8 +903,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 257, - "end": 265, + "start": 247, + "end": 255, "loc": { "start": { "line": 10, @@ -1059,8 +917,8 @@ }, "object": { "type": "Identifier", - "start": 257, - "end": 260, + "start": 247, + "end": 250, "loc": { "start": { "line": 10, @@ -1076,8 +934,8 @@ }, "property": { "type": "Identifier", - "start": 261, - "end": 265, + "start": 251, + "end": 255, "loc": { "start": { "line": 10, @@ -1095,8 +953,8 @@ }, "right": { "type": "CallExpression", - "start": 268, - "end": 303, + "start": 258, + "end": 293, "loc": { "start": { "line": 10, @@ -1109,8 +967,8 @@ }, "callee": { "type": "MemberExpression", - "start": 268, - "end": 281, + "start": 258, + "end": 271, "loc": { "start": { "line": 10, @@ -1123,8 +981,8 @@ }, "object": { "type": "MemberExpression", - "start": 268, - "end": 277, + "start": 258, + "end": 267, "loc": { "start": { "line": 10, @@ -1137,8 +995,8 @@ }, "object": { "type": "Identifier", - "start": 268, - "end": 272, + "start": 258, + "end": 262, "loc": { "start": { "line": 10, @@ -1154,8 +1012,8 @@ }, "property": { "type": "Identifier", - "start": 273, - "end": 277, + "start": 263, + "end": 267, "loc": { "start": { "line": 10, @@ -1173,8 +1031,8 @@ }, "property": { "type": "Identifier", - "start": 278, - "end": 281, + "start": 268, + "end": 271, "loc": { "start": { "line": 10, @@ -1193,8 +1051,8 @@ "arguments": [ { "type": "ArrowFunctionExpression", - "start": 282, - "end": 302, + "start": 272, + "end": 292, "loc": { "start": { "line": 10, @@ -1212,8 +1070,8 @@ "params": [ { "type": "Identifier", - "start": 282, - "end": 285, + "start": 272, + "end": 275, "loc": { "start": { "line": 10, @@ -1230,8 +1088,8 @@ ], "body": { "type": "CallExpression", - "start": 289, - "end": 302, + "start": 279, + "end": 292, "loc": { "start": { "line": 10, @@ -1244,8 +1102,8 @@ }, "callee": { "type": "Identifier", - "start": 289, - "end": 297, + "start": 279, + "end": 287, "loc": { "start": { "line": 10, @@ -1262,8 +1120,8 @@ "arguments": [ { "type": "Identifier", - "start": 298, - "end": 301, + "start": 288, + "end": 291, "loc": { "start": { "line": 10, @@ -1289,8 +1147,8 @@ }, "alternate": { "type": "IfStatement", - "start": 314, - "end": 657, + "start": 304, + "end": 647, "loc": { "start": { "line": 11, @@ -1303,8 +1161,8 @@ }, "test": { "type": "BinaryExpression", - "start": 318, - "end": 337, + "start": 308, + "end": 327, "loc": { "start": { "line": 11, @@ -1317,8 +1175,8 @@ }, "left": { "type": "MemberExpression", - "start": 318, - "end": 327, + "start": 308, + "end": 317, "loc": { "start": { "line": 11, @@ -1331,8 +1189,8 @@ }, "object": { "type": "Identifier", - "start": 318, - "end": 322, + "start": 308, + "end": 312, "loc": { "start": { "line": 11, @@ -1348,8 +1206,8 @@ }, "property": { "type": "Identifier", - "start": 323, - "end": 327, + "start": 313, + "end": 317, "loc": { "start": { "line": 11, @@ -1368,8 +1226,8 @@ "operator": "==", "right": { "type": "StringLiteral", - "start": 331, - "end": 337, + "start": 321, + "end": 327, "loc": { "start": { "line": 11, @@ -1389,8 +1247,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 339, - "end": 396, + "start": 329, + "end": 386, "loc": { "start": { "line": 11, @@ -1404,8 +1262,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 345, - "end": 366, + "start": 335, + "end": 356, "loc": { "start": { "line": 12, @@ -1418,8 +1276,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 345, - "end": 365, + "start": 335, + "end": 355, "loc": { "start": { "line": 12, @@ -1433,8 +1291,8 @@ "operator": "=", "left": { "type": "Identifier", - "start": 345, - "end": 348, + "start": 335, + "end": 338, "loc": { "start": { "line": 12, @@ -1450,8 +1308,8 @@ }, "right": { "type": "NewExpression", - "start": 351, - "end": 365, + "start": 341, + "end": 355, "loc": { "start": { "line": 12, @@ -1464,8 +1322,8 @@ }, "callee": { "type": "Identifier", - "start": 355, - "end": 359, + "start": 345, + "end": 349, "loc": { "start": { "line": 12, @@ -1482,8 +1340,8 @@ "arguments": [ { "type": "Identifier", - "start": 360, - "end": 364, + "start": 350, + "end": 354, "loc": { "start": { "line": 12, @@ -1503,8 +1361,8 @@ }, { "type": "ExpressionStatement", - "start": 371, - "end": 392, + "start": 361, + "end": 382, "loc": { "start": { "line": 13, @@ -1517,8 +1375,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 371, - "end": 391, + "start": 361, + "end": 381, "loc": { "start": { "line": 13, @@ -1532,8 +1390,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 371, - "end": 379, + "start": 361, + "end": 369, "loc": { "start": { "line": 13, @@ -1546,8 +1404,8 @@ }, "object": { "type": "Identifier", - "start": 371, - "end": 374, + "start": 361, + "end": 364, "loc": { "start": { "line": 13, @@ -1563,8 +1421,8 @@ }, "property": { "type": "Identifier", - "start": 375, - "end": 379, + "start": 365, + "end": 369, "loc": { "start": { "line": 13, @@ -1582,8 +1440,8 @@ }, "right": { "type": "MemberExpression", - "start": 382, - "end": 391, + "start": 372, + "end": 381, "loc": { "start": { "line": 13, @@ -1596,8 +1454,8 @@ }, "object": { "type": "Identifier", - "start": 382, - "end": 386, + "start": 372, + "end": 376, "loc": { "start": { "line": 13, @@ -1613,8 +1471,8 @@ }, "property": { "type": "Identifier", - "start": 387, - "end": 391, + "start": 377, + "end": 381, "loc": { "start": { "line": 13, @@ -1637,8 +1495,8 @@ }, "alternate": { "type": "IfStatement", - "start": 402, - "end": 657, + "start": 392, + "end": 647, "loc": { "start": { "line": 14, @@ -1651,8 +1509,8 @@ }, "test": { "type": "BinaryExpression", - "start": 406, - "end": 426, + "start": 396, + "end": 416, "loc": { "start": { "line": 14, @@ -1665,8 +1523,8 @@ }, "left": { "type": "MemberExpression", - "start": 406, - "end": 415, + "start": 396, + "end": 405, "loc": { "start": { "line": 14, @@ -1679,8 +1537,8 @@ }, "object": { "type": "Identifier", - "start": 406, - "end": 410, + "start": 396, + "end": 400, "loc": { "start": { "line": 14, @@ -1696,8 +1554,8 @@ }, "property": { "type": "Identifier", - "start": 411, - "end": 415, + "start": 401, + "end": 405, "loc": { "start": { "line": 14, @@ -1716,8 +1574,8 @@ "operator": "==", "right": { "type": "StringLiteral", - "start": 419, - "end": 426, + "start": 409, + "end": 416, "loc": { "start": { "line": 14, @@ -1737,8 +1595,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 428, - "end": 460, + "start": 418, + "end": 450, "loc": { "start": { "line": 14, @@ -1752,8 +1610,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 434, - "end": 456, + "start": 424, + "end": 446, "loc": { "start": { "line": 15, @@ -1766,8 +1624,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 434, - "end": 455, + "start": 424, + "end": 445, "loc": { "start": { "line": 15, @@ -1781,8 +1639,8 @@ "operator": "=", "left": { "type": "Identifier", - "start": 434, - "end": 437, + "start": 424, + "end": 427, "loc": { "start": { "line": 15, @@ -1798,8 +1656,8 @@ }, "right": { "type": "NewExpression", - "start": 440, - "end": 455, + "start": 430, + "end": 445, "loc": { "start": { "line": 15, @@ -1812,8 +1670,8 @@ }, "callee": { "type": "Identifier", - "start": 444, - "end": 449, + "start": 434, + "end": 439, "loc": { "start": { "line": 15, @@ -1830,8 +1688,8 @@ "arguments": [ { "type": "Identifier", - "start": 450, - "end": 454, + "start": 440, + "end": 444, "loc": { "start": { "line": 15, @@ -1854,8 +1712,8 @@ }, "alternate": { "type": "IfStatement", - "start": 466, - "end": 657, + "start": 456, + "end": 647, "loc": { "start": { "line": 16, @@ -1868,8 +1726,8 @@ }, "test": { "type": "BinaryExpression", - "start": 470, - "end": 490, + "start": 460, + "end": 480, "loc": { "start": { "line": 16, @@ -1882,8 +1740,8 @@ }, "left": { "type": "MemberExpression", - "start": 470, - "end": 479, + "start": 460, + "end": 469, "loc": { "start": { "line": 16, @@ -1896,8 +1754,8 @@ }, "object": { "type": "Identifier", - "start": 470, - "end": 474, + "start": 460, + "end": 464, "loc": { "start": { "line": 16, @@ -1913,8 +1771,8 @@ }, "property": { "type": "Identifier", - "start": 475, - "end": 479, + "start": 465, + "end": 469, "loc": { "start": { "line": 16, @@ -1933,8 +1791,8 @@ "operator": "==", "right": { "type": "StringLiteral", - "start": 483, - "end": 490, + "start": 473, + "end": 480, "loc": { "start": { "line": 16, @@ -1954,8 +1812,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 492, - "end": 578, + "start": 482, + "end": 568, "loc": { "start": { "line": 16, @@ -1969,8 +1827,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 498, - "end": 520, + "start": 488, + "end": 510, "loc": { "start": { "line": 17, @@ -1983,8 +1841,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 498, - "end": 519, + "start": 488, + "end": 509, "loc": { "start": { "line": 17, @@ -1998,8 +1856,8 @@ "operator": "=", "left": { "type": "Identifier", - "start": 498, - "end": 501, + "start": 488, + "end": 491, "loc": { "start": { "line": 17, @@ -2015,8 +1873,8 @@ }, "right": { "type": "NewExpression", - "start": 504, - "end": 519, + "start": 494, + "end": 509, "loc": { "start": { "line": 17, @@ -2029,8 +1887,8 @@ }, "callee": { "type": "Identifier", - "start": 508, - "end": 513, + "start": 498, + "end": 503, "loc": { "start": { "line": 17, @@ -2047,8 +1905,8 @@ "arguments": [ { "type": "Identifier", - "start": 514, - "end": 518, + "start": 504, + "end": 508, "loc": { "start": { "line": 17, @@ -2068,8 +1926,8 @@ }, { "type": "ExpressionStatement", - "start": 525, - "end": 546, + "start": 515, + "end": 536, "loc": { "start": { "line": 18, @@ -2082,8 +1940,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 525, - "end": 545, + "start": 515, + "end": 535, "loc": { "start": { "line": 18, @@ -2097,8 +1955,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 525, - "end": 533, + "start": 515, + "end": 523, "loc": { "start": { "line": 18, @@ -2111,8 +1969,8 @@ }, "object": { "type": "Identifier", - "start": 525, - "end": 528, + "start": 515, + "end": 518, "loc": { "start": { "line": 18, @@ -2128,8 +1986,8 @@ }, "property": { "type": "Identifier", - "start": 529, - "end": 533, + "start": 519, + "end": 523, "loc": { "start": { "line": 18, @@ -2147,8 +2005,8 @@ }, "right": { "type": "MemberExpression", - "start": 536, - "end": 545, + "start": 526, + "end": 535, "loc": { "start": { "line": 18, @@ -2161,8 +2019,8 @@ }, "object": { "type": "Identifier", - "start": 536, - "end": 540, + "start": 526, + "end": 530, "loc": { "start": { "line": 18, @@ -2178,8 +2036,8 @@ }, "property": { "type": "Identifier", - "start": 541, - "end": 545, + "start": 531, + "end": 535, "loc": { "start": { "line": 18, @@ -2199,8 +2057,8 @@ }, { "type": "ExpressionStatement", - "start": 551, - "end": 574, + "start": 541, + "end": 564, "loc": { "start": { "line": 19, @@ -2213,8 +2071,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 551, - "end": 573, + "start": 541, + "end": 563, "loc": { "start": { "line": 19, @@ -2228,8 +2086,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 551, - "end": 560, + "start": 541, + "end": 550, "loc": { "start": { "line": 19, @@ -2242,8 +2100,8 @@ }, "object": { "type": "Identifier", - "start": 551, - "end": 554, + "start": 541, + "end": 544, "loc": { "start": { "line": 19, @@ -2259,8 +2117,8 @@ }, "property": { "type": "Identifier", - "start": 555, - "end": 560, + "start": 545, + "end": 550, "loc": { "start": { "line": 19, @@ -2278,8 +2136,8 @@ }, "right": { "type": "MemberExpression", - "start": 563, - "end": 573, + "start": 553, + "end": 563, "loc": { "start": { "line": 19, @@ -2292,8 +2150,8 @@ }, "object": { "type": "Identifier", - "start": 563, - "end": 567, + "start": 553, + "end": 557, "loc": { "start": { "line": 19, @@ -2309,8 +2167,8 @@ }, "property": { "type": "Identifier", - "start": 568, - "end": 573, + "start": 558, + "end": 563, "loc": { "start": { "line": 19, @@ -2333,8 +2191,8 @@ }, "alternate": { "type": "BlockStatement", - "start": 584, - "end": 657, + "start": 574, + "end": 647, "loc": { "start": { "line": 20, @@ -2348,8 +2206,8 @@ "body": [ { "type": "ThrowStatement", - "start": 590, - "end": 653, + "start": 580, + "end": 643, "loc": { "start": { "line": 21, @@ -2362,8 +2220,8 @@ }, "argument": { "type": "NewExpression", - "start": 596, - "end": 652, + "start": 586, + "end": 642, "loc": { "start": { "line": 21, @@ -2376,8 +2234,8 @@ }, "callee": { "type": "Identifier", - "start": 600, - "end": 611, + "start": 590, + "end": 601, "loc": { "start": { "line": 21, @@ -2394,8 +2252,8 @@ "arguments": [ { "type": "TemplateLiteral", - "start": 612, - "end": 651, + "start": 602, + "end": 641, "loc": { "start": { "line": 21, @@ -2409,8 +2267,8 @@ "expressions": [ { "type": "CallExpression", - "start": 634, - "end": 649, + "start": 624, + "end": 639, "loc": { "start": { "line": 21, @@ -2423,8 +2281,8 @@ }, "callee": { "type": "MemberExpression", - "start": 634, - "end": 643, + "start": 624, + "end": 633, "loc": { "start": { "line": 21, @@ -2437,8 +2295,8 @@ }, "object": { "type": "Identifier", - "start": 634, - "end": 639, + "start": 624, + "end": 629, "loc": { "start": { "line": 21, @@ -2454,8 +2312,8 @@ }, "property": { "type": "Identifier", - "start": 640, - "end": 643, + "start": 630, + "end": 633, "loc": { "start": { "line": 21, @@ -2474,8 +2332,8 @@ "arguments": [ { "type": "Identifier", - "start": 644, - "end": 648, + "start": 634, + "end": 638, "loc": { "start": { "line": 21, @@ -2495,8 +2353,8 @@ "quasis": [ { "type": "TemplateElement", - "start": 613, - "end": 632, + "start": 603, + "end": 622, "loc": { "start": { "line": 21, @@ -2515,8 +2373,8 @@ }, { "type": "TemplateElement", - "start": 650, - "end": 650, + "start": 640, + "end": 640, "loc": { "start": { "line": 21, @@ -2547,8 +2405,8 @@ }, { "type": "ReturnStatement", - "start": 661, - "end": 672, + "start": 651, + "end": 662, "loc": { "start": { "line": 24, @@ -2561,8 +2419,8 @@ }, "argument": { "type": "Identifier", - "start": 668, - "end": 671, + "start": 658, + "end": 661, "loc": { "start": { "line": 24, @@ -2583,222 +2441,2237 @@ } } ], - "kind": "const" + "kind": "const", + "name": "_", + "leadingComments": [], + "trailingComments": [] }, { - "type": "ExpressionStatement", - "start": 677, - "end": 709, + "type": "ExportNamedDeclaration", + "start": 667, + "end": 687, "loc": { "start": { "line": 27, "column": 0 }, "end": { - "line": 29, - "column": 2 + "line": 27, + "column": 20 } }, - "expression": { - "type": "AssignmentExpression", - "start": 677, - "end": 708, - "loc": { - "start": { - "line": 27, - "column": 0 - }, - "end": { - "line": 29, - "column": 1 - } - }, - "operator": "=", - "left": { - "type": "MemberExpression", - "start": 677, - "end": 691, + "declaration": null, + "specifiers": [ + { + "type": "ExportSpecifier", + "start": 676, + "end": 684, "loc": { "start": { "line": 27, - "column": 0 + "column": 9 }, "end": { "line": 27, - "column": 14 + "column": 17 } }, - "object": { + "local": { "type": "Identifier", - "start": 677, - "end": 683, + "start": 676, + "end": 684, "loc": { "start": { "line": 27, - "column": 0 + "column": 9 }, "end": { "line": 27, - "column": 6 + "column": 17 }, - "identifierName": "module" + "identifierName": "json2AST" }, - "name": "module" + "name": "json2AST" }, - "property": { + "exported": { "type": "Identifier", - "start": 684, - "end": 691, + "start": 676, + "end": 684, "loc": { "start": { "line": 27, - "column": 7 + "column": 9 }, "end": { "line": 27, - "column": 14 + "column": 17 }, - "identifierName": "exports" + "identifierName": "json2AST" }, - "name": "exports" + "name": "json2AST" + } + } + ], + "source": null + }, + { + "type": "ExportNamedDeclaration", + "start": 667, + "end": 687, + "loc": { + "start": { + "line": 27, + "column": 0 + }, + "end": { + "line": 27, + "column": 20 + } + }, + "declaration": { + "type": "VariableDeclaration", + "start": 96, + "end": 665, + "loc": { + "start": { + "line": 4, + "column": 0 }, - "computed": false + "end": { + "line": 25, + "column": 2 + } }, - "right": { - "type": "ObjectExpression", - "start": 694, - "end": 708, - "loc": { - "start": { - "line": 27, - "column": 17 + "declarations": [ + { + "type": "VariableDeclarator", + "start": 102, + "end": 664, + "loc": { + "start": { + "line": 4, + "column": 6 + }, + "end": { + "line": 25, + "column": 1 + } }, - "end": { - "line": 29, - "column": 1 - } - }, - "properties": [ - { - "type": "ObjectProperty", - "start": 698, - "end": 706, + "id": { + "type": "Identifier", + "start": 102, + "end": 110, + "loc": { + "start": { + "line": 4, + "column": 6 + }, + "end": { + "line": 4, + "column": 14 + }, + "identifierName": "json2AST" + }, + "name": "json2AST" + }, + "init": { + "type": "ArrowFunctionExpression", + "start": 113, + "end": 664, "loc": { "start": { - "line": 28, - "column": 2 + "line": 4, + "column": 17 }, "end": { - "line": 28, - "column": 10 + "line": 25, + "column": 1 } }, - "method": false, - "shorthand": true, - "computed": false, - "key": { + "id": { "type": "Identifier", - "start": 698, - "end": 706, + "start": 102, + "end": 110, "loc": { "start": { - "line": 28, - "column": 2 + "line": 4, + "column": 6 }, "end": { - "line": 28, - "column": 10 + "line": 4, + "column": 14 }, "identifierName": "json2AST" }, "name": "json2AST" }, - "value": { - "type": "Identifier", - "start": 698, - "end": 706, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 113, + "end": 117, + "loc": { + "start": { + "line": 4, + "column": 17 + }, + "end": { + "line": 4, + "column": 21 + }, + "identifierName": "tree" + }, + "name": "tree" + } + ], + "body": { + "type": "BlockStatement", + "start": 121, + "end": 664, "loc": { "start": { - "line": 28, - "column": 2 + "line": 4, + "column": 25 }, "end": { - "line": 28, - "column": 10 - }, - "identifierName": "json2AST" + "line": 25, + "column": 1 + } }, - "name": "json2AST" - }, - "extra": { - "shorthand": true - } - } - ] - } - } - } - ], - "directives": [] - }, - "comments": [], - "tokens": [ - { - "type": { - "label": "const", - "keyword": "const", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "const", - "start": 0, - "end": 5, - "loc": { - "start": { - "line": 1, - "column": 0 - }, - "end": { - "line": 1, - "column": 5 - } - } - }, - { - "type": { - "label": "{", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 6, - "end": 7, - "loc": { - "start": { - "line": 1, - "column": 6 + "body": [ + { + "type": "VariableDeclaration", + "start": 125, + "end": 140, + "loc": { + "start": { + "line": 5, + "column": 2 + }, + "end": { + "line": 5, + "column": 17 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 129, + "end": 139, + "loc": { + "start": { + "line": 5, + "column": 6 + }, + "end": { + "line": 5, + "column": 16 + } + }, + "id": { + "type": "Identifier", + "start": 129, + "end": 132, + "loc": { + "start": { + "line": 5, + "column": 6 + }, + "end": { + "line": 5, + "column": 9 + }, + "identifierName": "obj" + }, + "name": "obj" + }, + "init": { + "type": "NullLiteral", + "start": 135, + "end": 139, + "loc": { + "start": { + "line": 5, + "column": 12 + }, + "end": { + "line": 5, + "column": 16 + } + } + } + } + ], + "kind": "let" + }, + { + "type": "IfStatement", + "start": 144, + "end": 647, + "loc": { + "start": { + "line": 7, + "column": 2 + }, + "end": { + "line": 22, + "column": 3 + } + }, + "test": { + "type": "BinaryExpression", + "start": 148, + "end": 168, + "loc": { + "start": { + "line": 7, + "column": 6 + }, + "end": { + "line": 7, + "column": 26 + } + }, + "left": { + "type": "MemberExpression", + "start": 148, + "end": 157, + "loc": { + "start": { + "line": 7, + "column": 6 + }, + "end": { + "line": 7, + "column": 15 + } + }, + "object": { + "type": "Identifier", + "start": 148, + "end": 152, + "loc": { + "start": { + "line": 7, + "column": 6 + }, + "end": { + "line": 7, + "column": 10 + }, + "identifierName": "tree" + }, + "name": "tree" + }, + "property": { + "type": "Identifier", + "start": 153, + "end": 157, + "loc": { + "start": { + "line": 7, + "column": 11 + }, + "end": { + "line": 7, + "column": 15 + }, + "identifierName": "type" + }, + "name": "type" + }, + "computed": false + }, + "operator": "==", + "right": { + "type": "StringLiteral", + "start": 161, + "end": 168, + "loc": { + "start": { + "line": 7, + "column": 19 + }, + "end": { + "line": 7, + "column": 26 + } + }, + "extra": { + "rawValue": "apply", + "raw": "\"apply\"" + }, + "value": "apply" + } + }, + "consequent": { + "type": "BlockStatement", + "start": 170, + "end": 298, + "loc": { + "start": { + "line": 7, + "column": 28 + }, + "end": { + "line": 11, + "column": 3 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 176, + "end": 198, + "loc": { + "start": { + "line": 8, + "column": 4 + }, + "end": { + "line": 8, + "column": 26 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 176, + "end": 197, + "loc": { + "start": { + "line": 8, + "column": 4 + }, + "end": { + "line": 8, + "column": 25 + } + }, + "operator": "=", + "left": { + "type": "Identifier", + "start": 176, + "end": 179, + "loc": { + "start": { + "line": 8, + "column": 4 + }, + "end": { + "line": 8, + "column": 7 + }, + "identifierName": "obj" + }, + "name": "obj" + }, + "right": { + "type": "NewExpression", + "start": 182, + "end": 197, + "loc": { + "start": { + "line": 8, + "column": 10 + }, + "end": { + "line": 8, + "column": 25 + } + }, + "callee": { + "type": "Identifier", + "start": 186, + "end": 191, + "loc": { + "start": { + "line": 8, + "column": 14 + }, + "end": { + "line": 8, + "column": 19 + }, + "identifierName": "Apply" + }, + "name": "Apply" + }, + "arguments": [ + { + "type": "Identifier", + "start": 192, + "end": 196, + "loc": { + "start": { + "line": 8, + "column": 20 + }, + "end": { + "line": 8, + "column": 24 + }, + "identifierName": "tree" + }, + "name": "tree" + } + ] + } + } + }, + { + "type": "ExpressionStatement", + "start": 203, + "end": 242, + "loc": { + "start": { + "line": 9, + "column": 4 + }, + "end": { + "line": 9, + "column": 43 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 203, + "end": 241, + "loc": { + "start": { + "line": 9, + "column": 4 + }, + "end": { + "line": 9, + "column": 42 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 203, + "end": 215, + "loc": { + "start": { + "line": 9, + "column": 4 + }, + "end": { + "line": 9, + "column": 16 + } + }, + "object": { + "type": "Identifier", + "start": 203, + "end": 206, + "loc": { + "start": { + "line": 9, + "column": 4 + }, + "end": { + "line": 9, + "column": 7 + }, + "identifierName": "obj" + }, + "name": "obj" + }, + "property": { + "type": "Identifier", + "start": 207, + "end": 215, + "loc": { + "start": { + "line": 9, + "column": 8 + }, + "end": { + "line": 9, + "column": 16 + }, + "identifierName": "operator" + }, + "name": "operator" + }, + "computed": false + }, + "right": { + "type": "CallExpression", + "start": 218, + "end": 241, + "loc": { + "start": { + "line": 9, + "column": 19 + }, + "end": { + "line": 9, + "column": 42 + } + }, + "callee": { + "type": "Identifier", + "start": 218, + "end": 226, + "loc": { + "start": { + "line": 9, + "column": 19 + }, + "end": { + "line": 9, + "column": 27 + }, + "identifierName": "json2AST" + }, + "name": "json2AST" + }, + "arguments": [ + { + "type": "MemberExpression", + "start": 227, + "end": 240, + "loc": { + "start": { + "line": 9, + "column": 28 + }, + "end": { + "line": 9, + "column": 41 + } + }, + "object": { + "type": "Identifier", + "start": 227, + "end": 231, + "loc": { + "start": { + "line": 9, + "column": 28 + }, + "end": { + "line": 9, + "column": 32 + }, + "identifierName": "tree" + }, + "name": "tree" + }, + "property": { + "type": "Identifier", + "start": 232, + "end": 240, + "loc": { + "start": { + "line": 9, + "column": 33 + }, + "end": { + "line": 9, + "column": 41 + }, + "identifierName": "operator" + }, + "name": "operator" + }, + "computed": false + } + ] + } + } + }, + { + "type": "ExpressionStatement", + "start": 247, + "end": 294, + "loc": { + "start": { + "line": 10, + "column": 4 + }, + "end": { + "line": 10, + "column": 51 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 247, + "end": 293, + "loc": { + "start": { + "line": 10, + "column": 4 + }, + "end": { + "line": 10, + "column": 50 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 247, + "end": 255, + "loc": { + "start": { + "line": 10, + "column": 4 + }, + "end": { + "line": 10, + "column": 12 + } + }, + "object": { + "type": "Identifier", + "start": 247, + "end": 250, + "loc": { + "start": { + "line": 10, + "column": 4 + }, + "end": { + "line": 10, + "column": 7 + }, + "identifierName": "obj" + }, + "name": "obj" + }, + "property": { + "type": "Identifier", + "start": 251, + "end": 255, + "loc": { + "start": { + "line": 10, + "column": 8 + }, + "end": { + "line": 10, + "column": 12 + }, + "identifierName": "args" + }, + "name": "args" + }, + "computed": false + }, + "right": { + "type": "CallExpression", + "start": 258, + "end": 293, + "loc": { + "start": { + "line": 10, + "column": 15 + }, + "end": { + "line": 10, + "column": 50 + } + }, + "callee": { + "type": "MemberExpression", + "start": 258, + "end": 271, + "loc": { + "start": { + "line": 10, + "column": 15 + }, + "end": { + "line": 10, + "column": 28 + } + }, + "object": { + "type": "MemberExpression", + "start": 258, + "end": 267, + "loc": { + "start": { + "line": 10, + "column": 15 + }, + "end": { + "line": 10, + "column": 24 + } + }, + "object": { + "type": "Identifier", + "start": 258, + "end": 262, + "loc": { + "start": { + "line": 10, + "column": 15 + }, + "end": { + "line": 10, + "column": 19 + }, + "identifierName": "tree" + }, + "name": "tree" + }, + "property": { + "type": "Identifier", + "start": 263, + "end": 267, + "loc": { + "start": { + "line": 10, + "column": 20 + }, + "end": { + "line": 10, + "column": 24 + }, + "identifierName": "args" + }, + "name": "args" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 268, + "end": 271, + "loc": { + "start": { + "line": 10, + "column": 25 + }, + "end": { + "line": 10, + "column": 28 + }, + "identifierName": "map" + }, + "name": "map" + }, + "computed": false + }, + "arguments": [ + { + "type": "ArrowFunctionExpression", + "start": 272, + "end": 292, + "loc": { + "start": { + "line": 10, + "column": 29 + }, + "end": { + "line": 10, + "column": 49 + } + }, + "id": null, + "generator": false, + "expression": true, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 272, + "end": 275, + "loc": { + "start": { + "line": 10, + "column": 29 + }, + "end": { + "line": 10, + "column": 32 + }, + "identifierName": "arg" + }, + "name": "arg" + } + ], + "body": { + "type": "CallExpression", + "start": 279, + "end": 292, + "loc": { + "start": { + "line": 10, + "column": 36 + }, + "end": { + "line": 10, + "column": 49 + } + }, + "callee": { + "type": "Identifier", + "start": 279, + "end": 287, + "loc": { + "start": { + "line": 10, + "column": 36 + }, + "end": { + "line": 10, + "column": 44 + }, + "identifierName": "json2AST" + }, + "name": "json2AST" + }, + "arguments": [ + { + "type": "Identifier", + "start": 288, + "end": 291, + "loc": { + "start": { + "line": 10, + "column": 45 + }, + "end": { + "line": 10, + "column": 48 + }, + "identifierName": "arg" + }, + "name": "arg" + } + ] + } + } + ] + } + } + } + ], + "directives": [] + }, + "alternate": { + "type": "IfStatement", + "start": 304, + "end": 647, + "loc": { + "start": { + "line": 11, + "column": 9 + }, + "end": { + "line": 22, + "column": 3 + } + }, + "test": { + "type": "BinaryExpression", + "start": 308, + "end": 327, + "loc": { + "start": { + "line": 11, + "column": 13 + }, + "end": { + "line": 11, + "column": 32 + } + }, + "left": { + "type": "MemberExpression", + "start": 308, + "end": 317, + "loc": { + "start": { + "line": 11, + "column": 13 + }, + "end": { + "line": 11, + "column": 22 + } + }, + "object": { + "type": "Identifier", + "start": 308, + "end": 312, + "loc": { + "start": { + "line": 11, + "column": 13 + }, + "end": { + "line": 11, + "column": 17 + }, + "identifierName": "tree" + }, + "name": "tree" + }, + "property": { + "type": "Identifier", + "start": 313, + "end": 317, + "loc": { + "start": { + "line": 11, + "column": 18 + }, + "end": { + "line": 11, + "column": 22 + }, + "identifierName": "type" + }, + "name": "type" + }, + "computed": false + }, + "operator": "==", + "right": { + "type": "StringLiteral", + "start": 321, + "end": 327, + "loc": { + "start": { + "line": 11, + "column": 26 + }, + "end": { + "line": 11, + "column": 32 + } + }, + "extra": { + "rawValue": "word", + "raw": "\"word\"" + }, + "value": "word" + } + }, + "consequent": { + "type": "BlockStatement", + "start": 329, + "end": 386, + "loc": { + "start": { + "line": 11, + "column": 34 + }, + "end": { + "line": 14, + "column": 3 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 335, + "end": 356, + "loc": { + "start": { + "line": 12, + "column": 4 + }, + "end": { + "line": 12, + "column": 25 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 335, + "end": 355, + "loc": { + "start": { + "line": 12, + "column": 4 + }, + "end": { + "line": 12, + "column": 24 + } + }, + "operator": "=", + "left": { + "type": "Identifier", + "start": 335, + "end": 338, + "loc": { + "start": { + "line": 12, + "column": 4 + }, + "end": { + "line": 12, + "column": 7 + }, + "identifierName": "obj" + }, + "name": "obj" + }, + "right": { + "type": "NewExpression", + "start": 341, + "end": 355, + "loc": { + "start": { + "line": 12, + "column": 10 + }, + "end": { + "line": 12, + "column": 24 + } + }, + "callee": { + "type": "Identifier", + "start": 345, + "end": 349, + "loc": { + "start": { + "line": 12, + "column": 14 + }, + "end": { + "line": 12, + "column": 18 + }, + "identifierName": "Word" + }, + "name": "Word" + }, + "arguments": [ + { + "type": "Identifier", + "start": 350, + "end": 354, + "loc": { + "start": { + "line": 12, + "column": 19 + }, + "end": { + "line": 12, + "column": 23 + }, + "identifierName": "tree" + }, + "name": "tree" + } + ] + } + } + }, + { + "type": "ExpressionStatement", + "start": 361, + "end": 382, + "loc": { + "start": { + "line": 13, + "column": 4 + }, + "end": { + "line": 13, + "column": 25 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 361, + "end": 381, + "loc": { + "start": { + "line": 13, + "column": 4 + }, + "end": { + "line": 13, + "column": 24 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 361, + "end": 369, + "loc": { + "start": { + "line": 13, + "column": 4 + }, + "end": { + "line": 13, + "column": 12 + } + }, + "object": { + "type": "Identifier", + "start": 361, + "end": 364, + "loc": { + "start": { + "line": 13, + "column": 4 + }, + "end": { + "line": 13, + "column": 7 + }, + "identifierName": "obj" + }, + "name": "obj" + }, + "property": { + "type": "Identifier", + "start": 365, + "end": 369, + "loc": { + "start": { + "line": 13, + "column": 8 + }, + "end": { + "line": 13, + "column": 12 + }, + "identifierName": "name" + }, + "name": "name" + }, + "computed": false + }, + "right": { + "type": "MemberExpression", + "start": 372, + "end": 381, + "loc": { + "start": { + "line": 13, + "column": 15 + }, + "end": { + "line": 13, + "column": 24 + } + }, + "object": { + "type": "Identifier", + "start": 372, + "end": 376, + "loc": { + "start": { + "line": 13, + "column": 15 + }, + "end": { + "line": 13, + "column": 19 + }, + "identifierName": "tree" + }, + "name": "tree" + }, + "property": { + "type": "Identifier", + "start": 377, + "end": 381, + "loc": { + "start": { + "line": 13, + "column": 20 + }, + "end": { + "line": 13, + "column": 24 + }, + "identifierName": "name" + }, + "name": "name" + }, + "computed": false + } + } + } + ], + "directives": [] + }, + "alternate": { + "type": "IfStatement", + "start": 392, + "end": 647, + "loc": { + "start": { + "line": 14, + "column": 9 + }, + "end": { + "line": 22, + "column": 3 + } + }, + "test": { + "type": "BinaryExpression", + "start": 396, + "end": 416, + "loc": { + "start": { + "line": 14, + "column": 13 + }, + "end": { + "line": 14, + "column": 33 + } + }, + "left": { + "type": "MemberExpression", + "start": 396, + "end": 405, + "loc": { + "start": { + "line": 14, + "column": 13 + }, + "end": { + "line": 14, + "column": 22 + } + }, + "object": { + "type": "Identifier", + "start": 396, + "end": 400, + "loc": { + "start": { + "line": 14, + "column": 13 + }, + "end": { + "line": 14, + "column": 17 + }, + "identifierName": "tree" + }, + "name": "tree" + }, + "property": { + "type": "Identifier", + "start": 401, + "end": 405, + "loc": { + "start": { + "line": 14, + "column": 18 + }, + "end": { + "line": 14, + "column": 22 + }, + "identifierName": "type" + }, + "name": "type" + }, + "computed": false + }, + "operator": "==", + "right": { + "type": "StringLiteral", + "start": 409, + "end": 416, + "loc": { + "start": { + "line": 14, + "column": 26 + }, + "end": { + "line": 14, + "column": 33 + } + }, + "extra": { + "rawValue": "value", + "raw": "\"value\"" + }, + "value": "value" + } + }, + "consequent": { + "type": "BlockStatement", + "start": 418, + "end": 450, + "loc": { + "start": { + "line": 14, + "column": 35 + }, + "end": { + "line": 16, + "column": 3 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 424, + "end": 446, + "loc": { + "start": { + "line": 15, + "column": 4 + }, + "end": { + "line": 15, + "column": 26 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 424, + "end": 445, + "loc": { + "start": { + "line": 15, + "column": 4 + }, + "end": { + "line": 15, + "column": 25 + } + }, + "operator": "=", + "left": { + "type": "Identifier", + "start": 424, + "end": 427, + "loc": { + "start": { + "line": 15, + "column": 4 + }, + "end": { + "line": 15, + "column": 7 + }, + "identifierName": "obj" + }, + "name": "obj" + }, + "right": { + "type": "NewExpression", + "start": 430, + "end": 445, + "loc": { + "start": { + "line": 15, + "column": 10 + }, + "end": { + "line": 15, + "column": 25 + } + }, + "callee": { + "type": "Identifier", + "start": 434, + "end": 439, + "loc": { + "start": { + "line": 15, + "column": 14 + }, + "end": { + "line": 15, + "column": 19 + }, + "identifierName": "Value" + }, + "name": "Value" + }, + "arguments": [ + { + "type": "Identifier", + "start": 440, + "end": 444, + "loc": { + "start": { + "line": 15, + "column": 20 + }, + "end": { + "line": 15, + "column": 24 + }, + "identifierName": "tree" + }, + "name": "tree" + } + ] + } + } + } + ], + "directives": [] + }, + "alternate": { + "type": "IfStatement", + "start": 456, + "end": 647, + "loc": { + "start": { + "line": 16, + "column": 9 + }, + "end": { + "line": 22, + "column": 3 + } + }, + "test": { + "type": "BinaryExpression", + "start": 460, + "end": 480, + "loc": { + "start": { + "line": 16, + "column": 13 + }, + "end": { + "line": 16, + "column": 33 + } + }, + "left": { + "type": "MemberExpression", + "start": 460, + "end": 469, + "loc": { + "start": { + "line": 16, + "column": 13 + }, + "end": { + "line": 16, + "column": 22 + } + }, + "object": { + "type": "Identifier", + "start": 460, + "end": 464, + "loc": { + "start": { + "line": 16, + "column": 13 + }, + "end": { + "line": 16, + "column": 17 + }, + "identifierName": "tree" + }, + "name": "tree" + }, + "property": { + "type": "Identifier", + "start": 465, + "end": 469, + "loc": { + "start": { + "line": 16, + "column": 18 + }, + "end": { + "line": 16, + "column": 22 + }, + "identifierName": "type" + }, + "name": "type" + }, + "computed": false + }, + "operator": "==", + "right": { + "type": "StringLiteral", + "start": 473, + "end": 480, + "loc": { + "start": { + "line": 16, + "column": 26 + }, + "end": { + "line": 16, + "column": 33 + } + }, + "extra": { + "rawValue": "regex", + "raw": "\"regex\"" + }, + "value": "regex" + } + }, + "consequent": { + "type": "BlockStatement", + "start": 482, + "end": 568, + "loc": { + "start": { + "line": 16, + "column": 35 + }, + "end": { + "line": 20, + "column": 3 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 488, + "end": 510, + "loc": { + "start": { + "line": 17, + "column": 4 + }, + "end": { + "line": 17, + "column": 26 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 488, + "end": 509, + "loc": { + "start": { + "line": 17, + "column": 4 + }, + "end": { + "line": 17, + "column": 25 + } + }, + "operator": "=", + "left": { + "type": "Identifier", + "start": 488, + "end": 491, + "loc": { + "start": { + "line": 17, + "column": 4 + }, + "end": { + "line": 17, + "column": 7 + }, + "identifierName": "obj" + }, + "name": "obj" + }, + "right": { + "type": "NewExpression", + "start": 494, + "end": 509, + "loc": { + "start": { + "line": 17, + "column": 10 + }, + "end": { + "line": 17, + "column": 25 + } + }, + "callee": { + "type": "Identifier", + "start": 498, + "end": 503, + "loc": { + "start": { + "line": 17, + "column": 14 + }, + "end": { + "line": 17, + "column": 19 + }, + "identifierName": "Regex" + }, + "name": "Regex" + }, + "arguments": [ + { + "type": "Identifier", + "start": 504, + "end": 508, + "loc": { + "start": { + "line": 17, + "column": 20 + }, + "end": { + "line": 17, + "column": 24 + }, + "identifierName": "tree" + }, + "name": "tree" + } + ] + } + } + }, + { + "type": "ExpressionStatement", + "start": 515, + "end": 536, + "loc": { + "start": { + "line": 18, + "column": 4 + }, + "end": { + "line": 18, + "column": 25 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 515, + "end": 535, + "loc": { + "start": { + "line": 18, + "column": 4 + }, + "end": { + "line": 18, + "column": 24 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 515, + "end": 523, + "loc": { + "start": { + "line": 18, + "column": 4 + }, + "end": { + "line": 18, + "column": 12 + } + }, + "object": { + "type": "Identifier", + "start": 515, + "end": 518, + "loc": { + "start": { + "line": 18, + "column": 4 + }, + "end": { + "line": 18, + "column": 7 + }, + "identifierName": "obj" + }, + "name": "obj" + }, + "property": { + "type": "Identifier", + "start": 519, + "end": 523, + "loc": { + "start": { + "line": 18, + "column": 8 + }, + "end": { + "line": 18, + "column": 12 + }, + "identifierName": "body" + }, + "name": "body" + }, + "computed": false + }, + "right": { + "type": "MemberExpression", + "start": 526, + "end": 535, + "loc": { + "start": { + "line": 18, + "column": 15 + }, + "end": { + "line": 18, + "column": 24 + } + }, + "object": { + "type": "Identifier", + "start": 526, + "end": 530, + "loc": { + "start": { + "line": 18, + "column": 15 + }, + "end": { + "line": 18, + "column": 19 + }, + "identifierName": "tree" + }, + "name": "tree" + }, + "property": { + "type": "Identifier", + "start": 531, + "end": 535, + "loc": { + "start": { + "line": 18, + "column": 20 + }, + "end": { + "line": 18, + "column": 24 + }, + "identifierName": "body" + }, + "name": "body" + }, + "computed": false + } + } + }, + { + "type": "ExpressionStatement", + "start": 541, + "end": 564, + "loc": { + "start": { + "line": 19, + "column": 4 + }, + "end": { + "line": 19, + "column": 27 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 541, + "end": 563, + "loc": { + "start": { + "line": 19, + "column": 4 + }, + "end": { + "line": 19, + "column": 26 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 541, + "end": 550, + "loc": { + "start": { + "line": 19, + "column": 4 + }, + "end": { + "line": 19, + "column": 13 + } + }, + "object": { + "type": "Identifier", + "start": 541, + "end": 544, + "loc": { + "start": { + "line": 19, + "column": 4 + }, + "end": { + "line": 19, + "column": 7 + }, + "identifierName": "obj" + }, + "name": "obj" + }, + "property": { + "type": "Identifier", + "start": 545, + "end": 550, + "loc": { + "start": { + "line": 19, + "column": 8 + }, + "end": { + "line": 19, + "column": 13 + }, + "identifierName": "flags" + }, + "name": "flags" + }, + "computed": false + }, + "right": { + "type": "MemberExpression", + "start": 553, + "end": 563, + "loc": { + "start": { + "line": 19, + "column": 16 + }, + "end": { + "line": 19, + "column": 26 + } + }, + "object": { + "type": "Identifier", + "start": 553, + "end": 557, + "loc": { + "start": { + "line": 19, + "column": 16 + }, + "end": { + "line": 19, + "column": 20 + }, + "identifierName": "tree" + }, + "name": "tree" + }, + "property": { + "type": "Identifier", + "start": 558, + "end": 563, + "loc": { + "start": { + "line": 19, + "column": 21 + }, + "end": { + "line": 19, + "column": 26 + }, + "identifierName": "flags" + }, + "name": "flags" + }, + "computed": false + } + } + } + ], + "directives": [] + }, + "alternate": { + "type": "BlockStatement", + "start": 574, + "end": 647, + "loc": { + "start": { + "line": 20, + "column": 9 + }, + "end": { + "line": 22, + "column": 3 + } + }, + "body": [ + { + "type": "ThrowStatement", + "start": 580, + "end": 643, + "loc": { + "start": { + "line": 21, + "column": 4 + }, + "end": { + "line": 21, + "column": 67 + } + }, + "argument": { + "type": "NewExpression", + "start": 586, + "end": 642, + "loc": { + "start": { + "line": 21, + "column": 10 + }, + "end": { + "line": 21, + "column": 66 + } + }, + "callee": { + "type": "Identifier", + "start": 590, + "end": 601, + "loc": { + "start": { + "line": 21, + "column": 14 + }, + "end": { + "line": 21, + "column": 25 + }, + "identifierName": "SyntaxError" + }, + "name": "SyntaxError" + }, + "arguments": [ + { + "type": "TemplateLiteral", + "start": 602, + "end": 641, + "loc": { + "start": { + "line": 21, + "column": 26 + }, + "end": { + "line": 21, + "column": 65 + } + }, + "expressions": [ + { + "type": "CallExpression", + "start": 624, + "end": 639, + "loc": { + "start": { + "line": 21, + "column": 48 + }, + "end": { + "line": 21, + "column": 63 + } + }, + "callee": { + "type": "MemberExpression", + "start": 624, + "end": 633, + "loc": { + "start": { + "line": 21, + "column": 48 + }, + "end": { + "line": 21, + "column": 57 + } + }, + "object": { + "type": "Identifier", + "start": 624, + "end": 629, + "loc": { + "start": { + "line": 21, + "column": 48 + }, + "end": { + "line": 21, + "column": 53 + }, + "identifierName": "utils" + }, + "name": "utils" + }, + "property": { + "type": "Identifier", + "start": 630, + "end": 633, + "loc": { + "start": { + "line": 21, + "column": 54 + }, + "end": { + "line": 21, + "column": 57 + }, + "identifierName": "ins" + }, + "name": "ins" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 634, + "end": 638, + "loc": { + "start": { + "line": 21, + "column": 58 + }, + "end": { + "line": 21, + "column": 62 + }, + "identifierName": "tree" + }, + "name": "tree" + } + ] + } + ], + "quasis": [ + { + "type": "TemplateElement", + "start": 603, + "end": 622, + "loc": { + "start": { + "line": 21, + "column": 27 + }, + "end": { + "line": 21, + "column": 46 + } + }, + "value": { + "raw": "Unrecognized token ", + "cooked": "Unrecognized token " + }, + "tail": false + }, + { + "type": "TemplateElement", + "start": 640, + "end": 640, + "loc": { + "start": { + "line": 21, + "column": 64 + }, + "end": { + "line": 21, + "column": 64 + } + }, + "value": { + "raw": "", + "cooked": "" + }, + "tail": true + } + ] + } + ] + } + } + ], + "directives": [] + } + } + } + } + }, + { + "type": "ReturnStatement", + "start": 651, + "end": 662, + "loc": { + "start": { + "line": 24, + "column": 2 + }, + "end": { + "line": 24, + "column": 13 + } + }, + "argument": { + "type": "Identifier", + "start": 658, + "end": 661, + "loc": { + "start": { + "line": 24, + "column": 9 + }, + "end": { + "line": 24, + "column": 12 + }, + "identifierName": "obj" + }, + "name": "obj" + } + } + ], + "directives": [] + } + } + } + ], + "kind": "const", + "leadingComments": [], + "trailingComments": [] }, - "end": { - "line": 1, - "column": 7 - } + "specifiers": null, + "source": null, + "leadingComments": null } - }, + ], + "directives": [] + }, + "comments": [], + "tokens": [ { "type": { - "label": "name", + "label": "import", + "keyword": "import", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, @@ -2806,52 +4679,27 @@ "isAssign": false, "prefix": false, "postfix": false, - "binop": null - }, - "value": "Value", - "start": 8, - "end": 13, - "loc": { - "start": { - "line": 1, - "column": 8 - }, - "end": { - "line": 1, - "column": 13 - } - } - }, - { - "type": { - "label": ",", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, "binop": null, "updateContext": null }, - "start": 13, - "end": 14, + "value": "import", + "start": 0, + "end": 6, "loc": { "start": { "line": 1, - "column": 13 + "column": 0 }, "end": { "line": 1, - "column": 14 + "column": 6 } } }, { "type": { - "label": "name", - "beforeExpr": false, + "label": "{", + "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, @@ -2860,43 +4708,16 @@ "postfix": false, "binop": null }, - "value": "Word", - "start": 15, - "end": 19, - "loc": { - "start": { - "line": 1, - "column": 15 - }, - "end": { - "line": 1, - "column": 19 - } - } - }, - { - "type": { - "label": ",", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "start": 19, - "end": 20, + "start": 7, + "end": 8, "loc": { "start": { "line": 1, - "column": 19 + "column": 7 }, "end": { "line": 1, - "column": 20 + "column": 8 } } }, @@ -2904,85 +4725,59 @@ "type": { "label": "name", "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "Apply", - "start": 21, - "end": 26, - "loc": { - "start": { - "line": 1, - "column": 21 - }, - "end": { - "line": 1, - "column": 26 - } - } - }, - { - "type": { - "label": ",", - "beforeExpr": true, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null, - "updateContext": null + "binop": null }, - "start": 26, - "end": 27, + "value": "Value", + "start": 9, + "end": 14, "loc": { "start": { "line": 1, - "column": 26 + "column": 9 }, "end": { "line": 1, - "column": 27 + "column": 14 } } }, { "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, + "label": ",", + "beforeExpr": true, + "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "value": "Regex", - "start": 28, - "end": 33, + "start": 14, + "end": 15, "loc": { "start": { "line": 1, - "column": 28 + "column": 14 }, "end": { "line": 1, - "column": 33 + "column": 15 } } }, { "type": { - "label": "}", + "label": "name", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -2990,43 +4785,43 @@ "postfix": false, "binop": null }, - "start": 34, - "end": 35, + "value": "Word", + "start": 16, + "end": 20, "loc": { "start": { "line": 1, - "column": 34 + "column": 16 }, "end": { "line": 1, - "column": 35 + "column": 20 } } }, { "type": { - "label": "=", + "label": ",", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, - "isAssign": true, + "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, - "value": "=", - "start": 36, - "end": 37, + "start": 20, + "end": 21, "loc": { "start": { "line": 1, - "column": 36 + "column": 20 }, "end": { "line": 1, - "column": 37 + "column": 21 } } }, @@ -3042,48 +4837,49 @@ "postfix": false, "binop": null }, - "value": "require", - "start": 38, - "end": 45, + "value": "Apply", + "start": 22, + "end": 27, "loc": { "start": { "line": 1, - "column": 38 + "column": 22 }, "end": { "line": 1, - "column": 45 + "column": 27 } } }, { "type": { - "label": "(", + "label": ",", "beforeExpr": true, - "startsExpr": true, + "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "start": 45, - "end": 46, + "start": 27, + "end": 28, "loc": { "start": { "line": 1, - "column": 45 + "column": 27 }, "end": { "line": 1, - "column": 46 + "column": 28 } } }, { "type": { - "label": "string", + "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, @@ -3091,26 +4887,25 @@ "isAssign": false, "prefix": false, "postfix": false, - "binop": null, - "updateContext": null + "binop": null }, - "value": "../interp/ast.js", - "start": 46, - "end": 64, + "value": "Regex", + "start": 29, + "end": 34, "loc": { "start": { "line": 1, - "column": 46 + "column": 29 }, "end": { "line": 1, - "column": 64 + "column": 34 } } }, { "type": { - "label": ")", + "label": "}", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, @@ -3120,51 +4915,50 @@ "postfix": false, "binop": null }, - "start": 64, - "end": 65, + "start": 35, + "end": 36, "loc": { "start": { "line": 1, - "column": 64 + "column": 35 }, "end": { "line": 1, - "column": 65 + "column": 36 } } }, { "type": { - "label": ";", - "beforeExpr": true, - "startsExpr": false, + "label": "name", + "beforeExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null, - "updateContext": null + "binop": null }, - "start": 65, - "end": 66, + "value": "from", + "start": 37, + "end": 41, "loc": { "start": { "line": 1, - "column": 65 + "column": 37 }, "end": { "line": 1, - "column": 66 + "column": 41 } } }, { "type": { - "label": "const", - "keyword": "const", + "label": "string", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -3173,70 +4967,71 @@ "binop": null, "updateContext": null }, - "value": "const", - "start": 67, - "end": 72, + "value": "../interp/ast.js", + "start": 42, + "end": 60, "loc": { "start": { - "line": 2, - "column": 0 + "line": 1, + "column": 42 }, "end": { - "line": 2, - "column": 5 + "line": 1, + "column": 60 } } }, { "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, + "label": ";", + "beforeExpr": true, + "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "value": "utils", - "start": 73, - "end": 78, + "start": 60, + "end": 61, "loc": { "start": { - "line": 2, - "column": 6 + "line": 1, + "column": 60 }, "end": { - "line": 2, - "column": 11 + "line": 1, + "column": 61 } } }, { "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, + "label": "import", + "keyword": "import", + "beforeExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, - "isAssign": true, + "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, - "value": "=", - "start": 79, - "end": 80, + "value": "import", + "start": 62, + "end": 68, "loc": { "start": { "line": 2, - "column": 12 + "column": 0 }, "end": { "line": 2, - "column": 13 + "column": 6 } } }, @@ -3252,24 +5047,24 @@ "postfix": false, "binop": null }, - "value": "require", - "start": 81, - "end": 88, + "value": "utils", + "start": 69, + "end": 74, "loc": { "start": { "line": 2, - "column": 14 + "column": 7 }, "end": { "line": 2, - "column": 21 + "column": 12 } } }, { "type": { - "label": "(", - "beforeExpr": true, + "label": "name", + "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, @@ -3278,16 +5073,17 @@ "postfix": false, "binop": null }, - "start": 88, - "end": 89, + "value": "from", + "start": 75, + "end": 79, "loc": { "start": { "line": 2, - "column": 21 + "column": 13 }, "end": { "line": 2, - "column": 22 + "column": 17 } } }, @@ -3305,41 +5101,16 @@ "updateContext": null }, "value": "../utils.js", - "start": 89, - "end": 102, - "loc": { - "start": { - "line": 2, - "column": 22 - }, - "end": { - "line": 2, - "column": 35 - } - } - }, - { - "type": { - "label": ")", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 102, - "end": 103, + "start": 80, + "end": 93, "loc": { "start": { "line": 2, - "column": 35 + "column": 18 }, "end": { "line": 2, - "column": 36 + "column": 31 } } }, @@ -3356,16 +5127,16 @@ "binop": null, "updateContext": null }, - "start": 103, - "end": 104, + "start": 93, + "end": 94, "loc": { "start": { "line": 2, - "column": 36 + "column": 31 }, "end": { "line": 2, - "column": 37 + "column": 32 } } }, @@ -3384,8 +5155,8 @@ "updateContext": null }, "value": "const", - "start": 106, - "end": 111, + "start": 96, + "end": 101, "loc": { "start": { "line": 4, @@ -3410,8 +5181,8 @@ "binop": null }, "value": "json2AST", - "start": 112, - "end": 120, + "start": 102, + "end": 110, "loc": { "start": { "line": 4, @@ -3437,8 +5208,8 @@ "updateContext": null }, "value": "=", - "start": 121, - "end": 122, + "start": 111, + "end": 112, "loc": { "start": { "line": 4, @@ -3463,8 +5234,8 @@ "binop": null }, "value": "tree", - "start": 123, - "end": 127, + "start": 113, + "end": 117, "loc": { "start": { "line": 4, @@ -3489,8 +5260,8 @@ "binop": null, "updateContext": null }, - "start": 128, - "end": 130, + "start": 118, + "end": 120, "loc": { "start": { "line": 4, @@ -3514,8 +5285,8 @@ "postfix": false, "binop": null }, - "start": 131, - "end": 132, + "start": 121, + "end": 122, "loc": { "start": { "line": 4, @@ -3542,8 +5313,8 @@ "updateContext": null }, "value": "let", - "start": 135, - "end": 138, + "start": 125, + "end": 128, "loc": { "start": { "line": 5, @@ -3568,8 +5339,8 @@ "binop": null }, "value": "obj", - "start": 139, - "end": 142, + "start": 129, + "end": 132, "loc": { "start": { "line": 5, @@ -3595,8 +5366,8 @@ "updateContext": null }, "value": "=", - "start": 143, - "end": 144, + "start": 133, + "end": 134, "loc": { "start": { "line": 5, @@ -3623,8 +5394,8 @@ "updateContext": null }, "value": "null", - "start": 145, - "end": 149, + "start": 135, + "end": 139, "loc": { "start": { "line": 5, @@ -3649,8 +5420,8 @@ "binop": null, "updateContext": null }, - "start": 149, - "end": 150, + "start": 139, + "end": 140, "loc": { "start": { "line": 5, @@ -3677,8 +5448,8 @@ "updateContext": null }, "value": "if", - "start": 154, - "end": 156, + "start": 144, + "end": 146, "loc": { "start": { "line": 7, @@ -3702,8 +5473,8 @@ "postfix": false, "binop": null }, - "start": 157, - "end": 158, + "start": 147, + "end": 148, "loc": { "start": { "line": 7, @@ -3728,8 +5499,8 @@ "binop": null }, "value": "tree", - "start": 158, - "end": 162, + "start": 148, + "end": 152, "loc": { "start": { "line": 7, @@ -3754,8 +5525,8 @@ "binop": null, "updateContext": null }, - "start": 162, - "end": 163, + "start": 152, + "end": 153, "loc": { "start": { "line": 7, @@ -3780,8 +5551,8 @@ "binop": null }, "value": "type", - "start": 163, - "end": 167, + "start": 153, + "end": 157, "loc": { "start": { "line": 7, @@ -3807,8 +5578,8 @@ "updateContext": null }, "value": "==", - "start": 168, - "end": 170, + "start": 158, + "end": 160, "loc": { "start": { "line": 7, @@ -3834,8 +5605,8 @@ "updateContext": null }, "value": "apply", - "start": 171, - "end": 178, + "start": 161, + "end": 168, "loc": { "start": { "line": 7, @@ -3859,8 +5630,8 @@ "postfix": false, "binop": null }, - "start": 178, - "end": 179, + "start": 168, + "end": 169, "loc": { "start": { "line": 7, @@ -3884,8 +5655,8 @@ "postfix": false, "binop": null }, - "start": 180, - "end": 181, + "start": 170, + "end": 171, "loc": { "start": { "line": 7, @@ -3910,8 +5681,8 @@ "binop": null }, "value": "obj", - "start": 186, - "end": 189, + "start": 176, + "end": 179, "loc": { "start": { "line": 8, @@ -3937,8 +5708,8 @@ "updateContext": null }, "value": "=", - "start": 190, - "end": 191, + "start": 180, + "end": 181, "loc": { "start": { "line": 8, @@ -3965,8 +5736,8 @@ "updateContext": null }, "value": "new", - "start": 192, - "end": 195, + "start": 182, + "end": 185, "loc": { "start": { "line": 8, @@ -3991,8 +5762,8 @@ "binop": null }, "value": "Apply", - "start": 196, - "end": 201, + "start": 186, + "end": 191, "loc": { "start": { "line": 8, @@ -4016,8 +5787,8 @@ "postfix": false, "binop": null }, - "start": 201, - "end": 202, + "start": 191, + "end": 192, "loc": { "start": { "line": 8, @@ -4042,8 +5813,8 @@ "binop": null }, "value": "tree", - "start": 202, - "end": 206, + "start": 192, + "end": 196, "loc": { "start": { "line": 8, @@ -4067,8 +5838,8 @@ "postfix": false, "binop": null }, - "start": 206, - "end": 207, + "start": 196, + "end": 197, "loc": { "start": { "line": 8, @@ -4093,8 +5864,8 @@ "binop": null, "updateContext": null }, - "start": 207, - "end": 208, + "start": 197, + "end": 198, "loc": { "start": { "line": 8, @@ -4119,8 +5890,8 @@ "binop": null }, "value": "obj", - "start": 213, - "end": 216, + "start": 203, + "end": 206, "loc": { "start": { "line": 9, @@ -4145,8 +5916,8 @@ "binop": null, "updateContext": null }, - "start": 216, - "end": 217, + "start": 206, + "end": 207, "loc": { "start": { "line": 9, @@ -4171,8 +5942,8 @@ "binop": null }, "value": "operator", - "start": 217, - "end": 225, + "start": 207, + "end": 215, "loc": { "start": { "line": 9, @@ -4198,8 +5969,8 @@ "updateContext": null }, "value": "=", - "start": 226, - "end": 227, + "start": 216, + "end": 217, "loc": { "start": { "line": 9, @@ -4224,8 +5995,8 @@ "binop": null }, "value": "json2AST", - "start": 228, - "end": 236, + "start": 218, + "end": 226, "loc": { "start": { "line": 9, @@ -4249,8 +6020,8 @@ "postfix": false, "binop": null }, - "start": 236, - "end": 237, + "start": 226, + "end": 227, "loc": { "start": { "line": 9, @@ -4275,8 +6046,8 @@ "binop": null }, "value": "tree", - "start": 237, - "end": 241, + "start": 227, + "end": 231, "loc": { "start": { "line": 9, @@ -4301,8 +6072,8 @@ "binop": null, "updateContext": null }, - "start": 241, - "end": 242, + "start": 231, + "end": 232, "loc": { "start": { "line": 9, @@ -4327,8 +6098,8 @@ "binop": null }, "value": "operator", - "start": 242, - "end": 250, + "start": 232, + "end": 240, "loc": { "start": { "line": 9, @@ -4352,8 +6123,8 @@ "postfix": false, "binop": null }, - "start": 250, - "end": 251, + "start": 240, + "end": 241, "loc": { "start": { "line": 9, @@ -4378,8 +6149,8 @@ "binop": null, "updateContext": null }, - "start": 251, - "end": 252, + "start": 241, + "end": 242, "loc": { "start": { "line": 9, @@ -4404,8 +6175,8 @@ "binop": null }, "value": "obj", - "start": 257, - "end": 260, + "start": 247, + "end": 250, "loc": { "start": { "line": 10, @@ -4430,8 +6201,8 @@ "binop": null, "updateContext": null }, - "start": 260, - "end": 261, + "start": 250, + "end": 251, "loc": { "start": { "line": 10, @@ -4456,8 +6227,8 @@ "binop": null }, "value": "args", - "start": 261, - "end": 265, + "start": 251, + "end": 255, "loc": { "start": { "line": 10, @@ -4483,8 +6254,8 @@ "updateContext": null }, "value": "=", - "start": 266, - "end": 267, + "start": 256, + "end": 257, "loc": { "start": { "line": 10, @@ -4509,8 +6280,8 @@ "binop": null }, "value": "tree", - "start": 268, - "end": 272, + "start": 258, + "end": 262, "loc": { "start": { "line": 10, @@ -4535,8 +6306,8 @@ "binop": null, "updateContext": null }, - "start": 272, - "end": 273, + "start": 262, + "end": 263, "loc": { "start": { "line": 10, @@ -4561,8 +6332,8 @@ "binop": null }, "value": "args", - "start": 273, - "end": 277, + "start": 263, + "end": 267, "loc": { "start": { "line": 10, @@ -4587,8 +6358,8 @@ "binop": null, "updateContext": null }, - "start": 277, - "end": 278, + "start": 267, + "end": 268, "loc": { "start": { "line": 10, @@ -4613,8 +6384,8 @@ "binop": null }, "value": "map", - "start": 278, - "end": 281, + "start": 268, + "end": 271, "loc": { "start": { "line": 10, @@ -4638,8 +6409,8 @@ "postfix": false, "binop": null }, - "start": 281, - "end": 282, + "start": 271, + "end": 272, "loc": { "start": { "line": 10, @@ -4664,8 +6435,8 @@ "binop": null }, "value": "arg", - "start": 282, - "end": 285, + "start": 272, + "end": 275, "loc": { "start": { "line": 10, @@ -4690,8 +6461,8 @@ "binop": null, "updateContext": null }, - "start": 286, - "end": 288, + "start": 276, + "end": 278, "loc": { "start": { "line": 10, @@ -4716,8 +6487,8 @@ "binop": null }, "value": "json2AST", - "start": 289, - "end": 297, + "start": 279, + "end": 287, "loc": { "start": { "line": 10, @@ -4741,8 +6512,8 @@ "postfix": false, "binop": null }, - "start": 297, - "end": 298, + "start": 287, + "end": 288, "loc": { "start": { "line": 10, @@ -4767,8 +6538,8 @@ "binop": null }, "value": "arg", - "start": 298, - "end": 301, + "start": 288, + "end": 291, "loc": { "start": { "line": 10, @@ -4792,8 +6563,8 @@ "postfix": false, "binop": null }, - "start": 301, - "end": 302, + "start": 291, + "end": 292, "loc": { "start": { "line": 10, @@ -4817,8 +6588,8 @@ "postfix": false, "binop": null }, - "start": 302, - "end": 303, + "start": 292, + "end": 293, "loc": { "start": { "line": 10, @@ -4843,8 +6614,8 @@ "binop": null, "updateContext": null }, - "start": 303, - "end": 304, + "start": 293, + "end": 294, "loc": { "start": { "line": 10, @@ -4868,8 +6639,8 @@ "postfix": false, "binop": null }, - "start": 307, - "end": 308, + "start": 297, + "end": 298, "loc": { "start": { "line": 11, @@ -4896,8 +6667,8 @@ "updateContext": null }, "value": "else", - "start": 309, - "end": 313, + "start": 299, + "end": 303, "loc": { "start": { "line": 11, @@ -4924,8 +6695,8 @@ "updateContext": null }, "value": "if", - "start": 314, - "end": 316, + "start": 304, + "end": 306, "loc": { "start": { "line": 11, @@ -4949,8 +6720,8 @@ "postfix": false, "binop": null }, - "start": 317, - "end": 318, + "start": 307, + "end": 308, "loc": { "start": { "line": 11, @@ -4975,8 +6746,8 @@ "binop": null }, "value": "tree", - "start": 318, - "end": 322, + "start": 308, + "end": 312, "loc": { "start": { "line": 11, @@ -5001,8 +6772,8 @@ "binop": null, "updateContext": null }, - "start": 322, - "end": 323, + "start": 312, + "end": 313, "loc": { "start": { "line": 11, @@ -5027,8 +6798,8 @@ "binop": null }, "value": "type", - "start": 323, - "end": 327, + "start": 313, + "end": 317, "loc": { "start": { "line": 11, @@ -5054,8 +6825,8 @@ "updateContext": null }, "value": "==", - "start": 328, - "end": 330, + "start": 318, + "end": 320, "loc": { "start": { "line": 11, @@ -5081,8 +6852,8 @@ "updateContext": null }, "value": "word", - "start": 331, - "end": 337, + "start": 321, + "end": 327, "loc": { "start": { "line": 11, @@ -5106,8 +6877,8 @@ "postfix": false, "binop": null }, - "start": 337, - "end": 338, + "start": 327, + "end": 328, "loc": { "start": { "line": 11, @@ -5131,8 +6902,8 @@ "postfix": false, "binop": null }, - "start": 339, - "end": 340, + "start": 329, + "end": 330, "loc": { "start": { "line": 11, @@ -5157,8 +6928,8 @@ "binop": null }, "value": "obj", - "start": 345, - "end": 348, + "start": 335, + "end": 338, "loc": { "start": { "line": 12, @@ -5184,8 +6955,8 @@ "updateContext": null }, "value": "=", - "start": 349, - "end": 350, + "start": 339, + "end": 340, "loc": { "start": { "line": 12, @@ -5212,8 +6983,8 @@ "updateContext": null }, "value": "new", - "start": 351, - "end": 354, + "start": 341, + "end": 344, "loc": { "start": { "line": 12, @@ -5238,8 +7009,8 @@ "binop": null }, "value": "Word", - "start": 355, - "end": 359, + "start": 345, + "end": 349, "loc": { "start": { "line": 12, @@ -5263,8 +7034,8 @@ "postfix": false, "binop": null }, - "start": 359, - "end": 360, + "start": 349, + "end": 350, "loc": { "start": { "line": 12, @@ -5289,8 +7060,8 @@ "binop": null }, "value": "tree", - "start": 360, - "end": 364, + "start": 350, + "end": 354, "loc": { "start": { "line": 12, @@ -5314,8 +7085,8 @@ "postfix": false, "binop": null }, - "start": 364, - "end": 365, + "start": 354, + "end": 355, "loc": { "start": { "line": 12, @@ -5340,8 +7111,8 @@ "binop": null, "updateContext": null }, - "start": 365, - "end": 366, + "start": 355, + "end": 356, "loc": { "start": { "line": 12, @@ -5366,8 +7137,8 @@ "binop": null }, "value": "obj", - "start": 371, - "end": 374, + "start": 361, + "end": 364, "loc": { "start": { "line": 13, @@ -5392,8 +7163,8 @@ "binop": null, "updateContext": null }, - "start": 374, - "end": 375, + "start": 364, + "end": 365, "loc": { "start": { "line": 13, @@ -5418,8 +7189,8 @@ "binop": null }, "value": "name", - "start": 375, - "end": 379, + "start": 365, + "end": 369, "loc": { "start": { "line": 13, @@ -5445,8 +7216,8 @@ "updateContext": null }, "value": "=", - "start": 380, - "end": 381, + "start": 370, + "end": 371, "loc": { "start": { "line": 13, @@ -5471,8 +7242,8 @@ "binop": null }, "value": "tree", - "start": 382, - "end": 386, + "start": 372, + "end": 376, "loc": { "start": { "line": 13, @@ -5497,8 +7268,8 @@ "binop": null, "updateContext": null }, - "start": 386, - "end": 387, + "start": 376, + "end": 377, "loc": { "start": { "line": 13, @@ -5523,8 +7294,8 @@ "binop": null }, "value": "name", - "start": 387, - "end": 391, + "start": 377, + "end": 381, "loc": { "start": { "line": 13, @@ -5549,8 +7320,8 @@ "binop": null, "updateContext": null }, - "start": 391, - "end": 392, + "start": 381, + "end": 382, "loc": { "start": { "line": 13, @@ -5574,8 +7345,8 @@ "postfix": false, "binop": null }, - "start": 395, - "end": 396, + "start": 385, + "end": 386, "loc": { "start": { "line": 14, @@ -5602,8 +7373,8 @@ "updateContext": null }, "value": "else", - "start": 397, - "end": 401, + "start": 387, + "end": 391, "loc": { "start": { "line": 14, @@ -5630,8 +7401,8 @@ "updateContext": null }, "value": "if", - "start": 402, - "end": 404, + "start": 392, + "end": 394, "loc": { "start": { "line": 14, @@ -5655,8 +7426,8 @@ "postfix": false, "binop": null }, - "start": 405, - "end": 406, + "start": 395, + "end": 396, "loc": { "start": { "line": 14, @@ -5681,8 +7452,8 @@ "binop": null }, "value": "tree", - "start": 406, - "end": 410, + "start": 396, + "end": 400, "loc": { "start": { "line": 14, @@ -5707,8 +7478,8 @@ "binop": null, "updateContext": null }, - "start": 410, - "end": 411, + "start": 400, + "end": 401, "loc": { "start": { "line": 14, @@ -5733,8 +7504,8 @@ "binop": null }, "value": "type", - "start": 411, - "end": 415, + "start": 401, + "end": 405, "loc": { "start": { "line": 14, @@ -5760,8 +7531,8 @@ "updateContext": null }, "value": "==", - "start": 416, - "end": 418, + "start": 406, + "end": 408, "loc": { "start": { "line": 14, @@ -5787,8 +7558,8 @@ "updateContext": null }, "value": "value", - "start": 419, - "end": 426, + "start": 409, + "end": 416, "loc": { "start": { "line": 14, @@ -5812,8 +7583,8 @@ "postfix": false, "binop": null }, - "start": 426, - "end": 427, + "start": 416, + "end": 417, "loc": { "start": { "line": 14, @@ -5837,8 +7608,8 @@ "postfix": false, "binop": null }, - "start": 428, - "end": 429, + "start": 418, + "end": 419, "loc": { "start": { "line": 14, @@ -5863,8 +7634,8 @@ "binop": null }, "value": "obj", - "start": 434, - "end": 437, + "start": 424, + "end": 427, "loc": { "start": { "line": 15, @@ -5890,8 +7661,8 @@ "updateContext": null }, "value": "=", - "start": 438, - "end": 439, + "start": 428, + "end": 429, "loc": { "start": { "line": 15, @@ -5918,8 +7689,8 @@ "updateContext": null }, "value": "new", - "start": 440, - "end": 443, + "start": 430, + "end": 433, "loc": { "start": { "line": 15, @@ -5944,8 +7715,8 @@ "binop": null }, "value": "Value", - "start": 444, - "end": 449, + "start": 434, + "end": 439, "loc": { "start": { "line": 15, @@ -5969,8 +7740,8 @@ "postfix": false, "binop": null }, - "start": 449, - "end": 450, + "start": 439, + "end": 440, "loc": { "start": { "line": 15, @@ -5995,8 +7766,8 @@ "binop": null }, "value": "tree", - "start": 450, - "end": 454, + "start": 440, + "end": 444, "loc": { "start": { "line": 15, @@ -6020,8 +7791,8 @@ "postfix": false, "binop": null }, - "start": 454, - "end": 455, + "start": 444, + "end": 445, "loc": { "start": { "line": 15, @@ -6046,8 +7817,8 @@ "binop": null, "updateContext": null }, - "start": 455, - "end": 456, + "start": 445, + "end": 446, "loc": { "start": { "line": 15, @@ -6071,8 +7842,8 @@ "postfix": false, "binop": null }, - "start": 459, - "end": 460, + "start": 449, + "end": 450, "loc": { "start": { "line": 16, @@ -6099,8 +7870,8 @@ "updateContext": null }, "value": "else", - "start": 461, - "end": 465, + "start": 451, + "end": 455, "loc": { "start": { "line": 16, @@ -6127,8 +7898,8 @@ "updateContext": null }, "value": "if", - "start": 466, - "end": 468, + "start": 456, + "end": 458, "loc": { "start": { "line": 16, @@ -6152,8 +7923,8 @@ "postfix": false, "binop": null }, - "start": 469, - "end": 470, + "start": 459, + "end": 460, "loc": { "start": { "line": 16, @@ -6178,8 +7949,8 @@ "binop": null }, "value": "tree", - "start": 470, - "end": 474, + "start": 460, + "end": 464, "loc": { "start": { "line": 16, @@ -6204,8 +7975,8 @@ "binop": null, "updateContext": null }, - "start": 474, - "end": 475, + "start": 464, + "end": 465, "loc": { "start": { "line": 16, @@ -6230,8 +8001,8 @@ "binop": null }, "value": "type", - "start": 475, - "end": 479, + "start": 465, + "end": 469, "loc": { "start": { "line": 16, @@ -6257,8 +8028,8 @@ "updateContext": null }, "value": "==", - "start": 480, - "end": 482, + "start": 470, + "end": 472, "loc": { "start": { "line": 16, @@ -6284,8 +8055,8 @@ "updateContext": null }, "value": "regex", - "start": 483, - "end": 490, + "start": 473, + "end": 480, "loc": { "start": { "line": 16, @@ -6309,8 +8080,8 @@ "postfix": false, "binop": null }, - "start": 490, - "end": 491, + "start": 480, + "end": 481, "loc": { "start": { "line": 16, @@ -6334,8 +8105,8 @@ "postfix": false, "binop": null }, - "start": 492, - "end": 493, + "start": 482, + "end": 483, "loc": { "start": { "line": 16, @@ -6360,8 +8131,8 @@ "binop": null }, "value": "obj", - "start": 498, - "end": 501, + "start": 488, + "end": 491, "loc": { "start": { "line": 17, @@ -6387,8 +8158,8 @@ "updateContext": null }, "value": "=", - "start": 502, - "end": 503, + "start": 492, + "end": 493, "loc": { "start": { "line": 17, @@ -6415,8 +8186,8 @@ "updateContext": null }, "value": "new", - "start": 504, - "end": 507, + "start": 494, + "end": 497, "loc": { "start": { "line": 17, @@ -6441,8 +8212,8 @@ "binop": null }, "value": "Regex", - "start": 508, - "end": 513, + "start": 498, + "end": 503, "loc": { "start": { "line": 17, @@ -6466,8 +8237,8 @@ "postfix": false, "binop": null }, - "start": 513, - "end": 514, + "start": 503, + "end": 504, "loc": { "start": { "line": 17, @@ -6492,8 +8263,8 @@ "binop": null }, "value": "tree", - "start": 514, - "end": 518, + "start": 504, + "end": 508, "loc": { "start": { "line": 17, @@ -6517,8 +8288,8 @@ "postfix": false, "binop": null }, - "start": 518, - "end": 519, + "start": 508, + "end": 509, "loc": { "start": { "line": 17, @@ -6543,8 +8314,8 @@ "binop": null, "updateContext": null }, - "start": 519, - "end": 520, + "start": 509, + "end": 510, "loc": { "start": { "line": 17, @@ -6569,8 +8340,8 @@ "binop": null }, "value": "obj", - "start": 525, - "end": 528, + "start": 515, + "end": 518, "loc": { "start": { "line": 18, @@ -6595,8 +8366,8 @@ "binop": null, "updateContext": null }, - "start": 528, - "end": 529, + "start": 518, + "end": 519, "loc": { "start": { "line": 18, @@ -6621,8 +8392,8 @@ "binop": null }, "value": "body", - "start": 529, - "end": 533, + "start": 519, + "end": 523, "loc": { "start": { "line": 18, @@ -6648,8 +8419,8 @@ "updateContext": null }, "value": "=", - "start": 534, - "end": 535, + "start": 524, + "end": 525, "loc": { "start": { "line": 18, @@ -6674,8 +8445,8 @@ "binop": null }, "value": "tree", - "start": 536, - "end": 540, + "start": 526, + "end": 530, "loc": { "start": { "line": 18, @@ -6700,8 +8471,8 @@ "binop": null, "updateContext": null }, - "start": 540, - "end": 541, + "start": 530, + "end": 531, "loc": { "start": { "line": 18, @@ -6726,8 +8497,8 @@ "binop": null }, "value": "body", - "start": 541, - "end": 545, + "start": 531, + "end": 535, "loc": { "start": { "line": 18, @@ -6752,8 +8523,8 @@ "binop": null, "updateContext": null }, - "start": 545, - "end": 546, + "start": 535, + "end": 536, "loc": { "start": { "line": 18, @@ -6778,8 +8549,8 @@ "binop": null }, "value": "obj", - "start": 551, - "end": 554, + "start": 541, + "end": 544, "loc": { "start": { "line": 19, @@ -6804,8 +8575,8 @@ "binop": null, "updateContext": null }, - "start": 554, - "end": 555, + "start": 544, + "end": 545, "loc": { "start": { "line": 19, @@ -6830,8 +8601,8 @@ "binop": null }, "value": "flags", - "start": 555, - "end": 560, + "start": 545, + "end": 550, "loc": { "start": { "line": 19, @@ -6857,8 +8628,8 @@ "updateContext": null }, "value": "=", - "start": 561, - "end": 562, + "start": 551, + "end": 552, "loc": { "start": { "line": 19, @@ -6883,8 +8654,8 @@ "binop": null }, "value": "tree", - "start": 563, - "end": 567, + "start": 553, + "end": 557, "loc": { "start": { "line": 19, @@ -6909,8 +8680,8 @@ "binop": null, "updateContext": null }, - "start": 567, - "end": 568, + "start": 557, + "end": 558, "loc": { "start": { "line": 19, @@ -6935,8 +8706,8 @@ "binop": null }, "value": "flags", - "start": 568, - "end": 573, + "start": 558, + "end": 563, "loc": { "start": { "line": 19, @@ -6961,8 +8732,8 @@ "binop": null, "updateContext": null }, - "start": 573, - "end": 574, + "start": 563, + "end": 564, "loc": { "start": { "line": 19, @@ -6986,8 +8757,8 @@ "postfix": false, "binop": null }, - "start": 577, - "end": 578, + "start": 567, + "end": 568, "loc": { "start": { "line": 20, @@ -7014,8 +8785,8 @@ "updateContext": null }, "value": "else", - "start": 579, - "end": 583, + "start": 569, + "end": 573, "loc": { "start": { "line": 20, @@ -7039,8 +8810,8 @@ "postfix": false, "binop": null }, - "start": 584, - "end": 585, + "start": 574, + "end": 575, "loc": { "start": { "line": 20, @@ -7067,8 +8838,8 @@ "updateContext": null }, "value": "throw", - "start": 590, - "end": 595, + "start": 580, + "end": 585, "loc": { "start": { "line": 21, @@ -7095,8 +8866,8 @@ "updateContext": null }, "value": "new", - "start": 596, - "end": 599, + "start": 586, + "end": 589, "loc": { "start": { "line": 21, @@ -7121,8 +8892,8 @@ "binop": null }, "value": "SyntaxError", - "start": 600, - "end": 611, + "start": 590, + "end": 601, "loc": { "start": { "line": 21, @@ -7146,8 +8917,8 @@ "postfix": false, "binop": null }, - "start": 611, - "end": 612, + "start": 601, + "end": 602, "loc": { "start": { "line": 21, @@ -7171,8 +8942,8 @@ "postfix": false, "binop": null }, - "start": 612, - "end": 613, + "start": 602, + "end": 603, "loc": { "start": { "line": 21, @@ -7198,8 +8969,8 @@ "updateContext": null }, "value": "Unrecognized token ", - "start": 613, - "end": 632, + "start": 603, + "end": 622, "loc": { "start": { "line": 21, @@ -7223,8 +8994,8 @@ "postfix": false, "binop": null }, - "start": 632, - "end": 634, + "start": 622, + "end": 624, "loc": { "start": { "line": 21, @@ -7249,8 +9020,8 @@ "binop": null }, "value": "utils", - "start": 634, - "end": 639, + "start": 624, + "end": 629, "loc": { "start": { "line": 21, @@ -7275,8 +9046,8 @@ "binop": null, "updateContext": null }, - "start": 639, - "end": 640, + "start": 629, + "end": 630, "loc": { "start": { "line": 21, @@ -7301,8 +9072,8 @@ "binop": null }, "value": "ins", - "start": 640, - "end": 643, + "start": 630, + "end": 633, "loc": { "start": { "line": 21, @@ -7326,8 +9097,8 @@ "postfix": false, "binop": null }, - "start": 643, - "end": 644, + "start": 633, + "end": 634, "loc": { "start": { "line": 21, @@ -7352,8 +9123,8 @@ "binop": null }, "value": "tree", - "start": 644, - "end": 648, + "start": 634, + "end": 638, "loc": { "start": { "line": 21, @@ -7377,8 +9148,8 @@ "postfix": false, "binop": null }, - "start": 648, - "end": 649, + "start": 638, + "end": 639, "loc": { "start": { "line": 21, @@ -7402,8 +9173,8 @@ "postfix": false, "binop": null }, - "start": 649, - "end": 650, + "start": 639, + "end": 640, "loc": { "start": { "line": 21, @@ -7429,8 +9200,8 @@ "updateContext": null }, "value": "", - "start": 650, - "end": 650, + "start": 640, + "end": 640, "loc": { "start": { "line": 21, @@ -7454,8 +9225,8 @@ "postfix": false, "binop": null }, - "start": 650, - "end": 651, + "start": 640, + "end": 641, "loc": { "start": { "line": 21, @@ -7479,8 +9250,8 @@ "postfix": false, "binop": null }, - "start": 651, - "end": 652, + "start": 641, + "end": 642, "loc": { "start": { "line": 21, @@ -7505,8 +9276,8 @@ "binop": null, "updateContext": null }, - "start": 652, - "end": 653, + "start": 642, + "end": 643, "loc": { "start": { "line": 21, @@ -7530,8 +9301,8 @@ "postfix": false, "binop": null }, - "start": 656, - "end": 657, + "start": 646, + "end": 647, "loc": { "start": { "line": 22, @@ -7558,8 +9329,8 @@ "updateContext": null }, "value": "return", - "start": 661, - "end": 667, + "start": 651, + "end": 657, "loc": { "start": { "line": 24, @@ -7584,8 +9355,8 @@ "binop": null }, "value": "obj", - "start": 668, - "end": 671, + "start": 658, + "end": 661, "loc": { "start": { "line": 24, @@ -7610,8 +9381,8 @@ "binop": null, "updateContext": null }, - "start": 671, - "end": 672, + "start": 661, + "end": 662, "loc": { "start": { "line": 24, @@ -7635,8 +9406,8 @@ "postfix": false, "binop": null }, - "start": 673, - "end": 674, + "start": 663, + "end": 664, "loc": { "start": { "line": 25, @@ -7661,8 +9432,8 @@ "binop": null, "updateContext": null }, - "start": 674, - "end": 675, + "start": 664, + "end": 665, "loc": { "start": { "line": 25, @@ -7676,33 +9447,8 @@ }, { "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "module", - "start": 677, - "end": 683, - "loc": { - "start": { - "line": 27, - "column": 0 - }, - "end": { - "line": 27, - "column": 6 - } - } - }, - { - "type": { - "label": ".", + "label": "export", + "keyword": "export", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, @@ -7713,69 +9459,17 @@ "binop": null, "updateContext": null }, - "start": 683, - "end": 684, - "loc": { - "start": { - "line": 27, - "column": 6 - }, - "end": { - "line": 27, - "column": 7 - } - } - }, - { - "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "exports", - "start": 684, - "end": 691, - "loc": { - "start": { - "line": 27, - "column": 7 - }, - "end": { - "line": 27, - "column": 14 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 692, - "end": 693, + "value": "export", + "start": 667, + "end": 673, "loc": { "start": { "line": 27, - "column": 15 + "column": 0 }, "end": { "line": 27, - "column": 16 + "column": 6 } } }, @@ -7791,16 +9485,16 @@ "postfix": false, "binop": null }, - "start": 694, - "end": 695, + "start": 674, + "end": 675, "loc": { "start": { "line": 27, - "column": 17 + "column": 7 }, "end": { "line": 27, - "column": 18 + "column": 8 } } }, @@ -7817,16 +9511,16 @@ "binop": null }, "value": "json2AST", - "start": 698, - "end": 706, + "start": 676, + "end": 684, "loc": { "start": { - "line": 28, - "column": 2 + "line": 27, + "column": 9 }, "end": { - "line": 28, - "column": 10 + "line": 27, + "column": 17 } } }, @@ -7842,16 +9536,16 @@ "postfix": false, "binop": null }, - "start": 707, - "end": 708, + "start": 685, + "end": 686, "loc": { "start": { - "line": 29, - "column": 0 + "line": 27, + "column": 18 }, "end": { - "line": 29, - "column": 1 + "line": 27, + "column": 19 } } }, @@ -7868,16 +9562,16 @@ "binop": null, "updateContext": null }, - "start": 708, - "end": 709, + "start": 686, + "end": 687, "loc": { "start": { - "line": 29, - "column": 1 + "line": 27, + "column": 19 }, "end": { - "line": 29, - "column": 2 + "line": 27, + "column": 20 } } }, @@ -7894,15 +9588,15 @@ "binop": null, "updateContext": null }, - "start": 710, - "end": 710, + "start": 688, + "end": 688, "loc": { "start": { - "line": 30, + "line": 28, "column": 0 }, "end": { - "line": 30, + "line": 28, "column": 0 } } diff --git a/docs/ast/source/parser/lexer.js.json b/docs/ast/source/parser/lexer.js.json index 58202dc..4ecbb56 100644 --- a/docs/ast/source/parser/lexer.js.json +++ b/docs/ast/source/parser/lexer.js.json @@ -1,37 +1,37 @@ { "type": "File", "start": 0, - "end": 3528, + "end": 3506, "loc": { "start": { "line": 1, "column": 0 }, "end": { - "line": 167, + "line": 165, "column": 0 } }, "program": { "type": "Program", "start": 0, - "end": 3528, + "end": 3506, "loc": { "start": { "line": 1, "column": 0 }, "end": { - "line": 167, + "line": 165, "column": 0 } }, "sourceType": "module", "body": [ { - "type": "VariableDeclaration", + "type": "ImportDeclaration", "start": 0, - "end": 46, + "end": 41, "loc": { "start": { "line": 1, @@ -39,103 +39,68 @@ }, "end": { "line": 1, - "column": 46 + "column": 41 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 6, - "end": 45, + "type": "ImportDefaultSpecifier", + "start": 7, + "end": 17, "loc": { "start": { "line": 1, - "column": 6 + "column": 7 }, "end": { "line": 1, - "column": 45 + "column": 17 } }, - "id": { + "local": { "type": "Identifier", - "start": 6, - "end": 16, + "start": 7, + "end": 17, "loc": { "start": { "line": 1, - "column": 6 + "column": 7 }, "end": { "line": 1, - "column": 16 + "column": 17 }, "identifierName": "tokenRegex" }, "name": "tokenRegex" - }, - "init": { - "type": "CallExpression", - "start": 19, - "end": 45, - "loc": { - "start": { - "line": 1, - "column": 19 - }, - "end": { - "line": 1, - "column": 45 - } - }, - "callee": { - "type": "Identifier", - "start": 19, - "end": 26, - "loc": { - "start": { - "line": 1, - "column": 19 - }, - "end": { - "line": 1, - "column": 26 - }, - "identifierName": "require" - }, - "name": "require" - }, - "arguments": [ - { - "type": "StringLiteral", - "start": 27, - "end": 44, - "loc": { - "start": { - "line": 1, - "column": 27 - }, - "end": { - "line": 1, - "column": 44 - } - }, - "extra": { - "rawValue": "./tokenRegex.js", - "raw": "\"./tokenRegex.js\"" - }, - "value": "./tokenRegex.js" - } - ] } } ], - "kind": "const" + "source": { + "type": "StringLiteral", + "start": 23, + "end": 40, + "loc": { + "start": { + "line": 1, + "column": 23 + }, + "end": { + "line": 1, + "column": 40 + } + }, + "extra": { + "rawValue": "./tokenRegex.js", + "raw": "\"./tokenRegex.js\"" + }, + "value": "./tokenRegex.js" + } }, { - "type": "VariableDeclaration", - "start": 47, - "end": 72, + "type": "ImportDeclaration", + "start": 42, + "end": 62, "loc": { "start": { "line": 2, @@ -143,103 +108,68 @@ }, "end": { "line": 2, - "column": 25 + "column": 20 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 53, - "end": 71, + "type": "ImportDefaultSpecifier", + "start": 49, + "end": 51, "loc": { "start": { "line": 2, - "column": 6 + "column": 7 }, "end": { "line": 2, - "column": 24 + "column": 9 } }, - "id": { + "local": { "type": "Identifier", - "start": 53, - "end": 55, + "start": 49, + "end": 51, "loc": { "start": { "line": 2, - "column": 6 + "column": 7 }, "end": { "line": 2, - "column": 8 + "column": 9 }, "identifierName": "fs" }, "name": "fs" - }, - "init": { - "type": "CallExpression", - "start": 58, - "end": 71, - "loc": { - "start": { - "line": 2, - "column": 11 - }, - "end": { - "line": 2, - "column": 24 - } - }, - "callee": { - "type": "Identifier", - "start": 58, - "end": 65, - "loc": { - "start": { - "line": 2, - "column": 11 - }, - "end": { - "line": 2, - "column": 18 - }, - "identifierName": "require" - }, - "name": "require" - }, - "arguments": [ - { - "type": "StringLiteral", - "start": 66, - "end": 70, - "loc": { - "start": { - "line": 2, - "column": 19 - }, - "end": { - "line": 2, - "column": 23 - } - }, - "extra": { - "rawValue": "fs", - "raw": "\"fs\"" - }, - "value": "fs" - } - ] } } ], - "kind": "const" + "source": { + "type": "StringLiteral", + "start": 57, + "end": 61, + "loc": { + "start": { + "line": 2, + "column": 15 + }, + "end": { + "line": 2, + "column": 19 + } + }, + "extra": { + "rawValue": "fs", + "raw": "\"fs\"" + }, + "value": "fs" + } }, { - "type": "ClassDeclaration", - "start": 74, - "end": 3270, + "type": "Identifier", + "start": 64, + "end": 3260, "loc": { "start": { "line": 4, @@ -252,8 +182,8 @@ }, "id": { "type": "Identifier", - "start": 80, - "end": 85, + "start": 70, + "end": 75, "loc": { "start": { "line": 4, @@ -270,8 +200,8 @@ "superClass": null, "body": { "type": "ClassBody", - "start": 86, - "end": 3270, + "start": 76, + "end": 3260, "loc": { "start": { "line": 4, @@ -285,8 +215,8 @@ "body": [ { "type": "ClassMethod", - "start": 90, - "end": 152, + "start": 80, + "end": 142, "loc": { "start": { "line": 5, @@ -301,8 +231,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 90, - "end": 101, + "start": 80, + "end": 91, "loc": { "start": { "line": 5, @@ -324,8 +254,8 @@ "params": [], "body": { "type": "BlockStatement", - "start": 104, - "end": 152, + "start": 94, + "end": 142, "loc": { "start": { "line": 5, @@ -339,8 +269,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 110, - "end": 129, + "start": 100, + "end": 119, "loc": { "start": { "line": 6, @@ -353,8 +283,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 110, - "end": 128, + "start": 100, + "end": 118, "loc": { "start": { "line": 6, @@ -368,8 +298,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 110, - "end": 124, + "start": 100, + "end": 114, "loc": { "start": { "line": 6, @@ -382,8 +312,8 @@ }, "object": { "type": "ThisExpression", - "start": 110, - "end": 114, + "start": 100, + "end": 104, "loc": { "start": { "line": 6, @@ -397,8 +327,8 @@ }, "property": { "type": "Identifier", - "start": 115, - "end": 124, + "start": 105, + "end": 114, "loc": { "start": { "line": 6, @@ -416,8 +346,8 @@ }, "right": { "type": "NumericLiteral", - "start": 127, - "end": 128, + "start": 117, + "end": 118, "loc": { "start": { "line": 6, @@ -438,8 +368,8 @@ }, { "type": "ExpressionStatement", - "start": 134, - "end": 148, + "start": 124, + "end": 138, "loc": { "start": { "line": 7, @@ -452,8 +382,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 134, - "end": 147, + "start": 124, + "end": 137, "loc": { "start": { "line": 7, @@ -467,8 +397,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 134, - "end": 143, + "start": 124, + "end": 133, "loc": { "start": { "line": 7, @@ -481,8 +411,8 @@ }, "object": { "type": "ThisExpression", - "start": 134, - "end": 138, + "start": 124, + "end": 128, "loc": { "start": { "line": 7, @@ -496,8 +426,8 @@ }, "property": { "type": "Identifier", - "start": 139, - "end": 143, + "start": 129, + "end": 133, "loc": { "start": { "line": 7, @@ -515,8 +445,8 @@ }, "right": { "type": "NumericLiteral", - "start": 146, - "end": 147, + "start": 136, + "end": 137, "loc": { "start": { "line": 7, @@ -541,8 +471,8 @@ }, { "type": "ClassMethod", - "start": 156, - "end": 271, + "start": 146, + "end": 261, "loc": { "start": { "line": 10, @@ -557,8 +487,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 156, - "end": 166, + "start": 146, + "end": 156, "loc": { "start": { "line": 10, @@ -580,8 +510,8 @@ "params": [ { "type": "Identifier", - "start": 167, - "end": 174, + "start": 157, + "end": 164, "loc": { "start": { "line": 10, @@ -598,8 +528,8 @@ ], "body": { "type": "BlockStatement", - "start": 176, - "end": 271, + "start": 166, + "end": 261, "loc": { "start": { "line": 10, @@ -613,8 +543,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 182, - "end": 205, + "start": 172, + "end": 195, "loc": { "start": { "line": 11, @@ -627,8 +557,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 182, - "end": 204, + "start": 172, + "end": 194, "loc": { "start": { "line": 11, @@ -642,8 +572,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 182, - "end": 194, + "start": 172, + "end": 184, "loc": { "start": { "line": 11, @@ -656,8 +586,8 @@ }, "object": { "type": "ThisExpression", - "start": 182, - "end": 186, + "start": 172, + "end": 176, "loc": { "start": { "line": 11, @@ -671,8 +601,8 @@ }, "property": { "type": "Identifier", - "start": 187, - "end": 194, + "start": 177, + "end": 184, "loc": { "start": { "line": 11, @@ -690,8 +620,8 @@ }, "right": { "type": "Identifier", - "start": 197, - "end": 204, + "start": 187, + "end": 194, "loc": { "start": { "line": 11, @@ -709,8 +639,8 @@ }, { "type": "ExpressionStatement", - "start": 211, - "end": 230, + "start": 201, + "end": 220, "loc": { "start": { "line": 13, @@ -723,8 +653,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 211, - "end": 229, + "start": 201, + "end": 219, "loc": { "start": { "line": 13, @@ -738,8 +668,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 211, - "end": 225, + "start": 201, + "end": 215, "loc": { "start": { "line": 13, @@ -752,8 +682,8 @@ }, "object": { "type": "ThisExpression", - "start": 211, - "end": 215, + "start": 201, + "end": 205, "loc": { "start": { "line": 13, @@ -767,8 +697,8 @@ }, "property": { "type": "Identifier", - "start": 216, - "end": 225, + "start": 206, + "end": 215, "loc": { "start": { "line": 13, @@ -786,8 +716,8 @@ }, "right": { "type": "NumericLiteral", - "start": 228, - "end": 229, + "start": 218, + "end": 219, "loc": { "start": { "line": 13, @@ -808,8 +738,8 @@ }, { "type": "ExpressionStatement", - "start": 235, - "end": 249, + "start": 225, + "end": 239, "loc": { "start": { "line": 14, @@ -822,8 +752,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 235, - "end": 248, + "start": 225, + "end": 238, "loc": { "start": { "line": 14, @@ -837,8 +767,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 235, - "end": 244, + "start": 225, + "end": 234, "loc": { "start": { "line": 14, @@ -851,8 +781,8 @@ }, "object": { "type": "ThisExpression", - "start": 235, - "end": 239, + "start": 225, + "end": 229, "loc": { "start": { "line": 14, @@ -866,8 +796,8 @@ }, "property": { "type": "Identifier", - "start": 240, - "end": 244, + "start": 230, + "end": 234, "loc": { "start": { "line": 14, @@ -885,8 +815,8 @@ }, "right": { "type": "NumericLiteral", - "start": 247, - "end": 248, + "start": 237, + "end": 238, "loc": { "start": { "line": 14, @@ -907,8 +837,8 @@ }, { "type": "ReturnStatement", - "start": 255, - "end": 267, + "start": 245, + "end": 257, "loc": { "start": { "line": 16, @@ -921,8 +851,8 @@ }, "argument": { "type": "ThisExpression", - "start": 262, - "end": 266, + "start": 252, + "end": 256, "loc": { "start": { "line": 16, @@ -941,8 +871,8 @@ }, { "type": "ClassMethod", - "start": 275, - "end": 359, + "start": 265, + "end": 349, "loc": { "start": { "line": 19, @@ -957,8 +887,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 275, - "end": 283, + "start": 265, + "end": 273, "loc": { "start": { "line": 19, @@ -980,8 +910,8 @@ "params": [ { "type": "Identifier", - "start": 284, - "end": 291, + "start": 274, + "end": 281, "loc": { "start": { "line": 19, @@ -998,8 +928,8 @@ ], "body": { "type": "BlockStatement", - "start": 293, - "end": 359, + "start": 283, + "end": 349, "loc": { "start": { "line": 19, @@ -1013,8 +943,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 299, - "end": 324, + "start": 289, + "end": 314, "loc": { "start": { "line": 20, @@ -1027,8 +957,8 @@ }, "expression": { "type": "CallExpression", - "start": 299, - "end": 323, + "start": 289, + "end": 313, "loc": { "start": { "line": 20, @@ -1041,8 +971,8 @@ }, "callee": { "type": "MemberExpression", - "start": 299, - "end": 314, + "start": 289, + "end": 304, "loc": { "start": { "line": 20, @@ -1055,8 +985,8 @@ }, "object": { "type": "ThisExpression", - "start": 299, - "end": 303, + "start": 289, + "end": 293, "loc": { "start": { "line": 20, @@ -1070,8 +1000,8 @@ }, "property": { "type": "Identifier", - "start": 304, - "end": 314, + "start": 294, + "end": 304, "loc": { "start": { "line": 20, @@ -1090,8 +1020,8 @@ "arguments": [ { "type": "Identifier", - "start": 315, - "end": 322, + "start": 305, + "end": 312, "loc": { "start": { "line": 20, @@ -1110,8 +1040,8 @@ }, { "type": "ReturnStatement", - "start": 330, - "end": 355, + "start": 320, + "end": 345, "loc": { "start": { "line": 22, @@ -1124,8 +1054,8 @@ }, "argument": { "type": "CallExpression", - "start": 337, - "end": 354, + "start": 327, + "end": 344, "loc": { "start": { "line": 22, @@ -1138,8 +1068,8 @@ }, "callee": { "type": "MemberExpression", - "start": 337, - "end": 352, + "start": 327, + "end": 342, "loc": { "start": { "line": 22, @@ -1152,8 +1082,8 @@ }, "object": { "type": "ThisExpression", - "start": 337, - "end": 341, + "start": 327, + "end": 331, "loc": { "start": { "line": 22, @@ -1167,8 +1097,8 @@ }, "property": { "type": "Identifier", - "start": 342, - "end": 352, + "start": 332, + "end": 342, "loc": { "start": { "line": 22, @@ -1193,8 +1123,8 @@ }, { "type": "ClassMethod", - "start": 363, - "end": 435, + "start": 353, + "end": 425, "loc": { "start": { "line": 25, @@ -1209,8 +1139,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 370, - "end": 378, + "start": 360, + "end": 368, "loc": { "start": { "line": 25, @@ -1232,8 +1162,8 @@ "params": [ { "type": "Identifier", - "start": 379, - "end": 386, + "start": 369, + "end": 376, "loc": { "start": { "line": 25, @@ -1250,8 +1180,8 @@ ], "body": { "type": "BlockStatement", - "start": 388, - "end": 435, + "start": 378, + "end": 425, "loc": { "start": { "line": 25, @@ -1265,8 +1195,8 @@ "body": [ { "type": "ReturnStatement", - "start": 394, - "end": 431, + "start": 384, + "end": 421, "loc": { "start": { "line": 26, @@ -1279,8 +1209,8 @@ }, "argument": { "type": "CallExpression", - "start": 401, - "end": 430, + "start": 391, + "end": 420, "loc": { "start": { "line": 26, @@ -1293,8 +1223,8 @@ }, "callee": { "type": "MemberExpression", - "start": 401, - "end": 421, + "start": 391, + "end": 411, "loc": { "start": { "line": 26, @@ -1307,8 +1237,8 @@ }, "object": { "type": "NewExpression", - "start": 401, - "end": 412, + "start": 391, + "end": 402, "loc": { "start": { "line": 26, @@ -1321,8 +1251,8 @@ }, "callee": { "type": "Identifier", - "start": 405, - "end": 410, + "start": 395, + "end": 400, "loc": { "start": { "line": 26, @@ -1340,8 +1270,8 @@ }, "property": { "type": "Identifier", - "start": 413, - "end": 421, + "start": 403, + "end": 411, "loc": { "start": { "line": 26, @@ -1360,8 +1290,8 @@ "arguments": [ { "type": "Identifier", - "start": 422, - "end": 429, + "start": 412, + "end": 419, "loc": { "start": { "line": 26, @@ -1384,8 +1314,8 @@ }, { "type": "ClassMethod", - "start": 439, - "end": 554, + "start": 429, + "end": 544, "loc": { "start": { "line": 29, @@ -1400,8 +1330,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 439, - "end": 455, + "start": 429, + "end": 445, "loc": { "start": { "line": 29, @@ -1423,8 +1353,8 @@ "params": [ { "type": "Identifier", - "start": 456, - "end": 460, + "start": 446, + "end": 450, "loc": { "start": { "line": 29, @@ -1441,8 +1371,8 @@ ], "body": { "type": "BlockStatement", - "start": 462, - "end": 554, + "start": 452, + "end": 544, "loc": { "start": { "line": 29, @@ -1456,8 +1386,8 @@ "body": [ { "type": "VariableDeclaration", - "start": 468, - "end": 514, + "start": 458, + "end": 504, "loc": { "start": { "line": 30, @@ -1471,8 +1401,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 474, - "end": 513, + "start": 464, + "end": 503, "loc": { "start": { "line": 30, @@ -1485,8 +1415,8 @@ }, "id": { "type": "Identifier", - "start": 474, - "end": 481, + "start": 464, + "end": 471, "loc": { "start": { "line": 30, @@ -1502,8 +1432,8 @@ }, "init": { "type": "CallExpression", - "start": 484, - "end": 513, + "start": 474, + "end": 503, "loc": { "start": { "line": 30, @@ -1516,8 +1446,8 @@ }, "callee": { "type": "MemberExpression", - "start": 484, - "end": 499, + "start": 474, + "end": 489, "loc": { "start": { "line": 30, @@ -1530,8 +1460,8 @@ }, "object": { "type": "Identifier", - "start": 484, - "end": 486, + "start": 474, + "end": 476, "loc": { "start": { "line": 30, @@ -1547,8 +1477,8 @@ }, "property": { "type": "Identifier", - "start": 487, - "end": 499, + "start": 477, + "end": 489, "loc": { "start": { "line": 30, @@ -1567,8 +1497,8 @@ "arguments": [ { "type": "Identifier", - "start": 500, - "end": 504, + "start": 490, + "end": 494, "loc": { "start": { "line": 30, @@ -1584,8 +1514,8 @@ }, { "type": "StringLiteral", - "start": 506, - "end": 512, + "start": 496, + "end": 502, "loc": { "start": { "line": 30, @@ -1610,8 +1540,8 @@ }, { "type": "ReturnStatement", - "start": 520, - "end": 550, + "start": 510, + "end": 540, "loc": { "start": { "line": 32, @@ -1624,8 +1554,8 @@ }, "argument": { "type": "CallExpression", - "start": 527, - "end": 549, + "start": 517, + "end": 539, "loc": { "start": { "line": 32, @@ -1638,8 +1568,8 @@ }, "callee": { "type": "MemberExpression", - "start": 527, - "end": 540, + "start": 517, + "end": 530, "loc": { "start": { "line": 32, @@ -1652,8 +1582,8 @@ }, "object": { "type": "ThisExpression", - "start": 527, - "end": 531, + "start": 517, + "end": 521, "loc": { "start": { "line": 32, @@ -1667,8 +1597,8 @@ }, "property": { "type": "Identifier", - "start": 532, - "end": 540, + "start": 522, + "end": 530, "loc": { "start": { "line": 32, @@ -1687,8 +1617,8 @@ "arguments": [ { "type": "Identifier", - "start": 541, - "end": 548, + "start": 531, + "end": 538, "loc": { "start": { "line": 32, @@ -1711,8 +1641,8 @@ }, { "type": "ClassMethod", - "start": 558, - "end": 640, + "start": 548, + "end": 630, "loc": { "start": { "line": 35, @@ -1727,8 +1657,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 565, - "end": 581, + "start": 555, + "end": 571, "loc": { "start": { "line": 35, @@ -1750,8 +1680,8 @@ "params": [ { "type": "Identifier", - "start": 582, - "end": 586, + "start": 572, + "end": 576, "loc": { "start": { "line": 35, @@ -1768,8 +1698,8 @@ ], "body": { "type": "BlockStatement", - "start": 588, - "end": 640, + "start": 578, + "end": 630, "loc": { "start": { "line": 35, @@ -1783,8 +1713,8 @@ "body": [ { "type": "ReturnStatement", - "start": 594, - "end": 636, + "start": 584, + "end": 626, "loc": { "start": { "line": 36, @@ -1797,8 +1727,8 @@ }, "argument": { "type": "CallExpression", - "start": 601, - "end": 635, + "start": 591, + "end": 625, "loc": { "start": { "line": 36, @@ -1811,8 +1741,8 @@ }, "callee": { "type": "MemberExpression", - "start": 601, - "end": 629, + "start": 591, + "end": 619, "loc": { "start": { "line": 36, @@ -1825,8 +1755,8 @@ }, "object": { "type": "NewExpression", - "start": 601, - "end": 612, + "start": 591, + "end": 602, "loc": { "start": { "line": 36, @@ -1839,8 +1769,8 @@ }, "callee": { "type": "Identifier", - "start": 605, - "end": 610, + "start": 595, + "end": 600, "loc": { "start": { "line": 36, @@ -1858,8 +1788,8 @@ }, "property": { "type": "Identifier", - "start": 613, - "end": 629, + "start": 603, + "end": 619, "loc": { "start": { "line": 36, @@ -1878,8 +1808,8 @@ "arguments": [ { "type": "Identifier", - "start": 630, - "end": 634, + "start": 620, + "end": 624, "loc": { "start": { "line": 36, @@ -1902,8 +1832,8 @@ }, { "type": "ClassMethod", - "start": 644, - "end": 701, + "start": 634, + "end": 691, "loc": { "start": { "line": 39, @@ -1918,8 +1848,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 651, - "end": 660, + "start": 641, + "end": 650, "loc": { "start": { "line": 39, @@ -1941,8 +1871,8 @@ "params": [ { "type": "Identifier", - "start": 661, - "end": 667, + "start": 651, + "end": 657, "loc": { "start": { "line": 39, @@ -1959,8 +1889,8 @@ ], "body": { "type": "BlockStatement", - "start": 669, - "end": 701, + "start": 659, + "end": 691, "loc": { "start": { "line": 39, @@ -1974,8 +1904,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 675, - "end": 697, + "start": 665, + "end": 687, "loc": { "start": { "line": 40, @@ -1988,8 +1918,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 675, - "end": 696, + "start": 665, + "end": 686, "loc": { "start": { "line": 40, @@ -2003,8 +1933,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 675, - "end": 687, + "start": 665, + "end": 677, "loc": { "start": { "line": 40, @@ -2017,8 +1947,8 @@ }, "object": { "type": "Identifier", - "start": 675, - "end": 680, + "start": 665, + "end": 670, "loc": { "start": { "line": 40, @@ -2034,8 +1964,8 @@ }, "property": { "type": "Identifier", - "start": 681, - "end": 687, + "start": 671, + "end": 677, "loc": { "start": { "line": 40, @@ -2053,8 +1983,8 @@ }, "right": { "type": "Identifier", - "start": 690, - "end": 696, + "start": 680, + "end": 686, "loc": { "start": { "line": 40, @@ -2076,8 +2006,8 @@ }, { "type": "ClassMethod", - "start": 705, - "end": 995, + "start": 695, + "end": 985, "loc": { "start": { "line": 43, @@ -2092,8 +2022,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 705, - "end": 718, + "start": 695, + "end": 708, "loc": { "start": { "line": 43, @@ -2115,8 +2045,8 @@ "params": [ { "type": "Identifier", - "start": 719, - "end": 726, + "start": 709, + "end": 716, "loc": { "start": { "line": 43, @@ -2133,8 +2063,8 @@ ], "body": { "type": "BlockStatement", - "start": 728, - "end": 995, + "start": 718, + "end": 985, "loc": { "start": { "line": 43, @@ -2148,8 +2078,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 734, - "end": 759, + "start": 724, + "end": 749, "loc": { "start": { "line": 44, @@ -2162,8 +2092,8 @@ }, "expression": { "type": "CallExpression", - "start": 734, - "end": 758, + "start": 724, + "end": 748, "loc": { "start": { "line": 44, @@ -2176,8 +2106,8 @@ }, "callee": { "type": "MemberExpression", - "start": 734, - "end": 749, + "start": 724, + "end": 739, "loc": { "start": { "line": 44, @@ -2190,8 +2120,8 @@ }, "object": { "type": "ThisExpression", - "start": 734, - "end": 738, + "start": 724, + "end": 728, "loc": { "start": { "line": 44, @@ -2205,8 +2135,8 @@ }, "property": { "type": "Identifier", - "start": 739, - "end": 749, + "start": 729, + "end": 739, "loc": { "start": { "line": 44, @@ -2225,8 +2155,8 @@ "arguments": [ { "type": "Identifier", - "start": 750, - "end": 757, + "start": 740, + "end": 747, "loc": { "start": { "line": 44, @@ -2245,8 +2175,8 @@ }, { "type": "VariableDeclaration", - "start": 765, - "end": 779, + "start": 755, + "end": 769, "loc": { "start": { "line": 46, @@ -2260,8 +2190,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 769, - "end": 778, + "start": 759, + "end": 768, "loc": { "start": { "line": 46, @@ -2274,8 +2204,8 @@ }, "id": { "type": "Identifier", - "start": 769, - "end": 774, + "start": 759, + "end": 764, "loc": { "start": { "line": 46, @@ -2291,8 +2221,8 @@ }, "init": { "type": "NumericLiteral", - "start": 777, - "end": 778, + "start": 767, + "end": 768, "loc": { "start": { "line": 46, @@ -2315,8 +2245,8 @@ }, { "type": "VariableDeclaration", - "start": 784, - "end": 817, + "start": 774, + "end": 807, "loc": { "start": { "line": 47, @@ -2330,8 +2260,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 790, - "end": 816, + "start": 780, + "end": 806, "loc": { "start": { "line": 47, @@ -2344,8 +2274,8 @@ }, "id": { "type": "Identifier", - "start": 790, - "end": 796, + "start": 780, + "end": 786, "loc": { "start": { "line": 47, @@ -2361,8 +2291,8 @@ }, "init": { "type": "CallExpression", - "start": 799, - "end": 816, + "start": 789, + "end": 806, "loc": { "start": { "line": 47, @@ -2375,8 +2305,8 @@ }, "callee": { "type": "MemberExpression", - "start": 799, - "end": 814, + "start": 789, + "end": 804, "loc": { "start": { "line": 47, @@ -2389,8 +2319,8 @@ }, "object": { "type": "ThisExpression", - "start": 799, - "end": 803, + "start": 789, + "end": 793, "loc": { "start": { "line": 47, @@ -2404,8 +2334,8 @@ }, "property": { "type": "Identifier", - "start": 804, - "end": 814, + "start": 794, + "end": 804, "loc": { "start": { "line": 47, @@ -2429,8 +2359,8 @@ }, { "type": "ForOfStatement", - "start": 822, - "end": 972, + "start": 812, + "end": 962, "loc": { "start": { "line": 48, @@ -2443,8 +2373,8 @@ }, "left": { "type": "VariableDeclaration", - "start": 827, - "end": 838, + "start": 817, + "end": 828, "loc": { "start": { "line": 48, @@ -2458,8 +2388,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 833, - "end": 838, + "start": 823, + "end": 828, "loc": { "start": { "line": 48, @@ -2472,8 +2402,8 @@ }, "id": { "type": "Identifier", - "start": 833, - "end": 838, + "start": 823, + "end": 828, "loc": { "start": { "line": 48, @@ -2494,8 +2424,8 @@ }, "right": { "type": "Identifier", - "start": 842, - "end": 848, + "start": 832, + "end": 838, "loc": { "start": { "line": 48, @@ -2511,8 +2441,8 @@ }, "body": { "type": "BlockStatement", - "start": 850, - "end": 972, + "start": 840, + "end": 962, "loc": { "start": { "line": 48, @@ -2526,8 +2456,8 @@ "body": [ { "type": "IfStatement", - "start": 858, - "end": 966, + "start": 848, + "end": 956, "loc": { "start": { "line": 49, @@ -2540,8 +2470,8 @@ }, "test": { "type": "BinaryExpression", - "start": 862, - "end": 881, + "start": 852, + "end": 871, "loc": { "start": { "line": 49, @@ -2554,8 +2484,8 @@ }, "left": { "type": "MemberExpression", - "start": 862, - "end": 872, + "start": 852, + "end": 862, "loc": { "start": { "line": 49, @@ -2568,8 +2498,8 @@ }, "object": { "type": "Identifier", - "start": 862, - "end": 867, + "start": 852, + "end": 857, "loc": { "start": { "line": 49, @@ -2585,8 +2515,8 @@ }, "property": { "type": "Identifier", - "start": 868, - "end": 872, + "start": 858, + "end": 862, "loc": { "start": { "line": 49, @@ -2605,8 +2535,8 @@ "operator": "===", "right": { "type": "StringLiteral", - "start": 877, - "end": 881, + "start": 867, + "end": 871, "loc": { "start": { "line": 49, @@ -2626,8 +2556,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 883, - "end": 909, + "start": 873, + "end": 899, "loc": { "start": { "line": 49, @@ -2641,8 +2571,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 893, - "end": 901, + "start": 883, + "end": 891, "loc": { "start": { "line": 50, @@ -2655,8 +2585,8 @@ }, "expression": { "type": "UpdateExpression", - "start": 893, - "end": 900, + "start": 883, + "end": 890, "loc": { "start": { "line": 50, @@ -2671,8 +2601,8 @@ "prefix": true, "argument": { "type": "Identifier", - "start": 895, - "end": 900, + "start": 885, + "end": 890, "loc": { "start": { "line": 50, @@ -2696,8 +2626,8 @@ }, "alternate": { "type": "IfStatement", - "start": 915, - "end": 966, + "start": 905, + "end": 956, "loc": { "start": { "line": 51, @@ -2710,8 +2640,8 @@ }, "test": { "type": "BinaryExpression", - "start": 919, - "end": 938, + "start": 909, + "end": 928, "loc": { "start": { "line": 51, @@ -2724,8 +2654,8 @@ }, "left": { "type": "MemberExpression", - "start": 919, - "end": 929, + "start": 909, + "end": 919, "loc": { "start": { "line": 51, @@ -2738,8 +2668,8 @@ }, "object": { "type": "Identifier", - "start": 919, - "end": 924, + "start": 909, + "end": 914, "loc": { "start": { "line": 51, @@ -2755,8 +2685,8 @@ }, "property": { "type": "Identifier", - "start": 925, - "end": 929, + "start": 915, + "end": 919, "loc": { "start": { "line": 51, @@ -2775,8 +2705,8 @@ "operator": "===", "right": { "type": "StringLiteral", - "start": 934, - "end": 938, + "start": 924, + "end": 928, "loc": { "start": { "line": 51, @@ -2796,8 +2726,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 940, - "end": 966, + "start": 930, + "end": 956, "loc": { "start": { "line": 51, @@ -2811,8 +2741,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 950, - "end": 958, + "start": 940, + "end": 948, "loc": { "start": { "line": 52, @@ -2825,8 +2755,8 @@ }, "expression": { "type": "UpdateExpression", - "start": 950, - "end": 957, + "start": 940, + "end": 947, "loc": { "start": { "line": 52, @@ -2841,8 +2771,8 @@ "prefix": true, "argument": { "type": "Identifier", - "start": 952, - "end": 957, + "start": 942, + "end": 947, "loc": { "start": { "line": 52, @@ -2873,8 +2803,8 @@ }, { "type": "ReturnStatement", - "start": 978, - "end": 991, + "start": 968, + "end": 981, "loc": { "start": { "line": 56, @@ -2887,8 +2817,8 @@ }, "argument": { "type": "Identifier", - "start": 985, - "end": 990, + "start": 975, + "end": 980, "loc": { "start": { "line": 56, @@ -2909,8 +2839,8 @@ }, { "type": "ClassMethod", - "start": 999, - "end": 1241, + "start": 989, + "end": 1231, "loc": { "start": { "line": 59, @@ -2925,8 +2855,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 999, - "end": 1009, + "start": 989, + "end": 999, "loc": { "start": { "line": 59, @@ -2948,8 +2878,8 @@ "params": [], "body": { "type": "BlockStatement", - "start": 1012, - "end": 1241, + "start": 1002, + "end": 1231, "loc": { "start": { "line": 59, @@ -2963,8 +2893,8 @@ "body": [ { "type": "VariableDeclaration", - "start": 1018, - "end": 1036, + "start": 1008, + "end": 1026, "loc": { "start": { "line": 60, @@ -2978,8 +2908,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 1024, - "end": 1035, + "start": 1014, + "end": 1025, "loc": { "start": { "line": 60, @@ -2992,8 +2922,8 @@ }, "id": { "type": "Identifier", - "start": 1024, - "end": 1030, + "start": 1014, + "end": 1020, "loc": { "start": { "line": 60, @@ -3009,8 +2939,8 @@ }, "init": { "type": "ArrayExpression", - "start": 1033, - "end": 1035, + "start": 1023, + "end": 1025, "loc": { "start": { "line": 60, @@ -3029,8 +2959,8 @@ }, { "type": "VariableDeclaration", - "start": 1042, - "end": 1078, + "start": 1032, + "end": 1068, "loc": { "start": { "line": 62, @@ -3044,8 +2974,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 1046, - "end": 1077, + "start": 1036, + "end": 1067, "loc": { "start": { "line": 62, @@ -3058,8 +2988,8 @@ }, "id": { "type": "Identifier", - "start": 1046, - "end": 1058, + "start": 1036, + "end": 1048, "loc": { "start": { "line": 62, @@ -3075,8 +3005,8 @@ }, "init": { "type": "CallExpression", - "start": 1061, - "end": 1077, + "start": 1051, + "end": 1067, "loc": { "start": { "line": 62, @@ -3089,8 +3019,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1061, - "end": 1075, + "start": 1051, + "end": 1065, "loc": { "start": { "line": 62, @@ -3103,8 +3033,8 @@ }, "object": { "type": "ThisExpression", - "start": 1061, - "end": 1065, + "start": 1051, + "end": 1055, "loc": { "start": { "line": 62, @@ -3118,8 +3048,8 @@ }, "property": { "type": "Identifier", - "start": 1066, - "end": 1075, + "start": 1056, + "end": 1065, "loc": { "start": { "line": 62, @@ -3143,8 +3073,8 @@ }, { "type": "WhileStatement", - "start": 1083, - "end": 1193, + "start": 1073, + "end": 1183, "loc": { "start": { "line": 63, @@ -3157,8 +3087,8 @@ }, "test": { "type": "BinaryExpression", - "start": 1090, - "end": 1111, + "start": 1080, + "end": 1101, "loc": { "start": { "line": 63, @@ -3171,8 +3101,8 @@ }, "left": { "type": "Identifier", - "start": 1090, - "end": 1102, + "start": 1080, + "end": 1092, "loc": { "start": { "line": 63, @@ -3189,8 +3119,8 @@ "operator": "!==", "right": { "type": "NullLiteral", - "start": 1107, - "end": 1111, + "start": 1097, + "end": 1101, "loc": { "start": { "line": 63, @@ -3205,8 +3135,8 @@ }, "body": { "type": "BlockStatement", - "start": 1113, - "end": 1193, + "start": 1103, + "end": 1183, "loc": { "start": { "line": 63, @@ -3220,8 +3150,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 1121, - "end": 1147, + "start": 1111, + "end": 1137, "loc": { "start": { "line": 64, @@ -3234,8 +3164,8 @@ }, "expression": { "type": "CallExpression", - "start": 1121, - "end": 1146, + "start": 1111, + "end": 1136, "loc": { "start": { "line": 64, @@ -3248,8 +3178,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1121, - "end": 1132, + "start": 1111, + "end": 1122, "loc": { "start": { "line": 64, @@ -3262,8 +3192,8 @@ }, "object": { "type": "Identifier", - "start": 1121, - "end": 1127, + "start": 1111, + "end": 1117, "loc": { "start": { "line": 64, @@ -3279,8 +3209,8 @@ }, "property": { "type": "Identifier", - "start": 1128, - "end": 1132, + "start": 1118, + "end": 1122, "loc": { "start": { "line": 64, @@ -3299,8 +3229,8 @@ "arguments": [ { "type": "Identifier", - "start": 1133, - "end": 1145, + "start": 1123, + "end": 1135, "loc": { "start": { "line": 64, @@ -3319,8 +3249,8 @@ }, { "type": "ExpressionStatement", - "start": 1155, - "end": 1187, + "start": 1145, + "end": 1177, "loc": { "start": { "line": 66, @@ -3333,8 +3263,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 1155, - "end": 1186, + "start": 1145, + "end": 1176, "loc": { "start": { "line": 66, @@ -3348,8 +3278,8 @@ "operator": "=", "left": { "type": "Identifier", - "start": 1155, - "end": 1167, + "start": 1145, + "end": 1157, "loc": { "start": { "line": 66, @@ -3365,8 +3295,8 @@ }, "right": { "type": "CallExpression", - "start": 1170, - "end": 1186, + "start": 1160, + "end": 1176, "loc": { "start": { "line": 66, @@ -3379,8 +3309,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1170, - "end": 1184, + "start": 1160, + "end": 1174, "loc": { "start": { "line": 66, @@ -3393,8 +3323,8 @@ }, "object": { "type": "ThisExpression", - "start": 1170, - "end": 1174, + "start": 1160, + "end": 1164, "loc": { "start": { "line": 66, @@ -3408,8 +3338,8 @@ }, "property": { "type": "Identifier", - "start": 1175, - "end": 1184, + "start": 1165, + "end": 1174, "loc": { "start": { "line": 66, @@ -3435,8 +3365,8 @@ }, { "type": "ReturnStatement", - "start": 1199, - "end": 1237, + "start": 1189, + "end": 1227, "loc": { "start": { "line": 69, @@ -3449,8 +3379,8 @@ }, "argument": { "type": "CallExpression", - "start": 1206, - "end": 1236, + "start": 1196, + "end": 1226, "loc": { "start": { "line": 69, @@ -3463,8 +3393,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1206, - "end": 1228, + "start": 1196, + "end": 1218, "loc": { "start": { "line": 69, @@ -3477,8 +3407,8 @@ }, "object": { "type": "ThisExpression", - "start": 1206, - "end": 1210, + "start": 1196, + "end": 1200, "loc": { "start": { "line": 69, @@ -3492,8 +3422,8 @@ }, "property": { "type": "Identifier", - "start": 1211, - "end": 1228, + "start": 1201, + "end": 1218, "loc": { "start": { "line": 69, @@ -3512,8 +3442,8 @@ "arguments": [ { "type": "Identifier", - "start": 1229, - "end": 1235, + "start": 1219, + "end": 1225, "loc": { "start": { "line": 69, @@ -3536,8 +3466,8 @@ }, { "type": "ClassMethod", - "start": 1245, - "end": 2141, + "start": 1235, + "end": 2131, "loc": { "start": { "line": 72, @@ -3552,8 +3482,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 1245, - "end": 1254, + "start": 1235, + "end": 1244, "loc": { "start": { "line": 72, @@ -3575,8 +3505,8 @@ "params": [], "body": { "type": "BlockStatement", - "start": 1257, - "end": 2141, + "start": 1247, + "end": 2131, "loc": { "start": { "line": 72, @@ -3590,8 +3520,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 1321, - "end": 1348, + "start": 1311, + "end": 1338, "loc": { "start": { "line": 74, @@ -3604,8 +3534,8 @@ }, "expression": { "type": "CallExpression", - "start": 1321, - "end": 1347, + "start": 1311, + "end": 1337, "loc": { "start": { "line": 74, @@ -3618,8 +3548,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1321, - "end": 1345, + "start": 1311, + "end": 1335, "loc": { "start": { "line": 74, @@ -3632,8 +3562,8 @@ }, "object": { "type": "ThisExpression", - "start": 1321, - "end": 1325, + "start": 1311, + "end": 1315, "loc": { "start": { "line": 74, @@ -3648,8 +3578,8 @@ }, "property": { "type": "Identifier", - "start": 1326, - "end": 1345, + "start": 1316, + "end": 1335, "loc": { "start": { "line": 74, @@ -3673,8 +3603,8 @@ { "type": "CommentLine", "value": " Update lastIndex property for each expression used", - "start": 1263, - "end": 1316, + "start": 1253, + "end": 1306, "loc": { "start": { "line": 73, @@ -3691,8 +3621,8 @@ { "type": "CommentLine", "value": " Match and ignore whitespaces and newlines", - "start": 1354, - "end": 1398, + "start": 1344, + "end": 1388, "loc": { "start": { "line": 76, @@ -3708,8 +3638,8 @@ }, { "type": "VariableDeclaration", - "start": 1403, - "end": 1453, + "start": 1393, + "end": 1443, "loc": { "start": { "line": 77, @@ -3723,8 +3653,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 1407, - "end": 1452, + "start": 1397, + "end": 1442, "loc": { "start": { "line": 77, @@ -3737,8 +3667,8 @@ }, "id": { "type": "Identifier", - "start": 1407, - "end": 1418, + "start": 1397, + "end": 1408, "loc": { "start": { "line": 77, @@ -3755,8 +3685,8 @@ }, "init": { "type": "CallExpression", - "start": 1421, - "end": 1452, + "start": 1411, + "end": 1442, "loc": { "start": { "line": 77, @@ -3769,8 +3699,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1421, - "end": 1438, + "start": 1411, + "end": 1428, "loc": { "start": { "line": 77, @@ -3783,8 +3713,8 @@ }, "object": { "type": "MemberExpression", - "start": 1421, - "end": 1433, + "start": 1411, + "end": 1423, "loc": { "start": { "line": 77, @@ -3797,8 +3727,8 @@ }, "object": { "type": "Identifier", - "start": 1421, - "end": 1426, + "start": 1411, + "end": 1416, "loc": { "start": { "line": 77, @@ -3814,8 +3744,8 @@ }, "property": { "type": "Identifier", - "start": 1427, - "end": 1433, + "start": 1417, + "end": 1423, "loc": { "start": { "line": 77, @@ -3833,8 +3763,8 @@ }, "property": { "type": "Identifier", - "start": 1434, - "end": 1438, + "start": 1424, + "end": 1428, "loc": { "start": { "line": 77, @@ -3853,8 +3783,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 1439, - "end": 1451, + "start": 1429, + "end": 1441, "loc": { "start": { "line": 77, @@ -3867,8 +3797,8 @@ }, "object": { "type": "ThisExpression", - "start": 1439, - "end": 1443, + "start": 1429, + "end": 1433, "loc": { "start": { "line": 77, @@ -3882,8 +3812,8 @@ }, "property": { "type": "Identifier", - "start": 1444, - "end": 1451, + "start": 1434, + "end": 1441, "loc": { "start": { "line": 77, @@ -3909,8 +3839,8 @@ { "type": "CommentLine", "value": " Match and ignore whitespaces and newlines", - "start": 1354, - "end": 1398, + "start": 1344, + "end": 1388, "loc": { "start": { "line": 76, @@ -3926,8 +3856,8 @@ }, { "type": "IfStatement", - "start": 1458, - "end": 1650, + "start": 1448, + "end": 1640, "loc": { "start": { "line": 78, @@ -3940,8 +3870,8 @@ }, "test": { "type": "BinaryExpression", - "start": 1462, - "end": 1482, + "start": 1452, + "end": 1472, "loc": { "start": { "line": 78, @@ -3954,8 +3884,8 @@ }, "left": { "type": "Identifier", - "start": 1462, - "end": 1473, + "start": 1452, + "end": 1463, "loc": { "start": { "line": 78, @@ -3972,8 +3902,8 @@ "operator": "!==", "right": { "type": "NullLiteral", - "start": 1478, - "end": 1482, + "start": 1468, + "end": 1472, "loc": { "start": { "line": 78, @@ -3988,8 +3918,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 1484, - "end": 1650, + "start": 1474, + "end": 1640, "loc": { "start": { "line": 78, @@ -4003,8 +3933,8 @@ "body": [ { "type": "IfStatement", - "start": 1492, - "end": 1565, + "start": 1482, + "end": 1555, "loc": { "start": { "line": 79, @@ -4017,8 +3947,8 @@ }, "test": { "type": "CallExpression", - "start": 1496, - "end": 1533, + "start": 1486, + "end": 1523, "loc": { "start": { "line": 79, @@ -4031,8 +3961,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1496, - "end": 1514, + "start": 1486, + "end": 1504, "loc": { "start": { "line": 79, @@ -4045,8 +3975,8 @@ }, "object": { "type": "MemberExpression", - "start": 1496, - "end": 1509, + "start": 1486, + "end": 1499, "loc": { "start": { "line": 79, @@ -4059,8 +3989,8 @@ }, "object": { "type": "Identifier", - "start": 1496, - "end": 1501, + "start": 1486, + "end": 1491, "loc": { "start": { "line": 79, @@ -4076,8 +4006,8 @@ }, "property": { "type": "Identifier", - "start": 1502, - "end": 1509, + "start": 1492, + "end": 1499, "loc": { "start": { "line": 79, @@ -4095,8 +4025,8 @@ }, "property": { "type": "Identifier", - "start": 1510, - "end": 1514, + "start": 1500, + "end": 1504, "loc": { "start": { "line": 79, @@ -4115,8 +4045,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 1515, - "end": 1532, + "start": 1505, + "end": 1522, "loc": { "start": { "line": 79, @@ -4129,8 +4059,8 @@ }, "object": { "type": "Identifier", - "start": 1515, - "end": 1526, + "start": 1505, + "end": 1516, "loc": { "start": { "line": 79, @@ -4146,8 +4076,8 @@ }, "property": { "type": "Identifier", - "start": 1527, - "end": 1532, + "start": 1517, + "end": 1522, "loc": { "start": { "line": 79, @@ -4167,8 +4097,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 1535, - "end": 1565, + "start": 1525, + "end": 1555, "loc": { "start": { "line": 79, @@ -4182,8 +4112,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 1545, - "end": 1557, + "start": 1535, + "end": 1547, "loc": { "start": { "line": 80, @@ -4196,8 +4126,8 @@ }, "expression": { "type": "UpdateExpression", - "start": 1545, - "end": 1556, + "start": 1535, + "end": 1546, "loc": { "start": { "line": 80, @@ -4212,8 +4142,8 @@ "prefix": true, "argument": { "type": "MemberExpression", - "start": 1547, - "end": 1556, + "start": 1537, + "end": 1546, "loc": { "start": { "line": 80, @@ -4226,8 +4156,8 @@ }, "object": { "type": "ThisExpression", - "start": 1547, - "end": 1551, + "start": 1537, + "end": 1541, "loc": { "start": { "line": 80, @@ -4241,8 +4171,8 @@ }, "property": { "type": "Identifier", - "start": 1552, - "end": 1556, + "start": 1542, + "end": 1546, "loc": { "start": { "line": 80, @@ -4270,8 +4200,8 @@ }, { "type": "ExpressionStatement", - "start": 1572, - "end": 1612, + "start": 1562, + "end": 1602, "loc": { "start": { "line": 82, @@ -4284,8 +4214,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 1572, - "end": 1611, + "start": 1562, + "end": 1601, "loc": { "start": { "line": 82, @@ -4299,8 +4229,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 1572, - "end": 1586, + "start": 1562, + "end": 1576, "loc": { "start": { "line": 82, @@ -4313,8 +4243,8 @@ }, "object": { "type": "ThisExpression", - "start": 1572, - "end": 1576, + "start": 1562, + "end": 1566, "loc": { "start": { "line": 82, @@ -4328,8 +4258,8 @@ }, "property": { "type": "Identifier", - "start": 1577, - "end": 1586, + "start": 1567, + "end": 1576, "loc": { "start": { "line": 82, @@ -4347,8 +4277,8 @@ }, "right": { "type": "MemberExpression", - "start": 1589, - "end": 1611, + "start": 1579, + "end": 1601, "loc": { "start": { "line": 82, @@ -4361,8 +4291,8 @@ }, "object": { "type": "MemberExpression", - "start": 1589, - "end": 1601, + "start": 1579, + "end": 1591, "loc": { "start": { "line": 82, @@ -4375,8 +4305,8 @@ }, "object": { "type": "Identifier", - "start": 1589, - "end": 1594, + "start": 1579, + "end": 1584, "loc": { "start": { "line": 82, @@ -4392,8 +4322,8 @@ }, "property": { "type": "Identifier", - "start": 1595, - "end": 1601, + "start": 1585, + "end": 1591, "loc": { "start": { "line": 82, @@ -4411,8 +4341,8 @@ }, "property": { "type": "Identifier", - "start": 1602, - "end": 1611, + "start": 1592, + "end": 1601, "loc": { "start": { "line": 82, @@ -4432,8 +4362,8 @@ }, { "type": "ReturnStatement", - "start": 1620, - "end": 1644, + "start": 1610, + "end": 1634, "loc": { "start": { "line": 84, @@ -4446,8 +4376,8 @@ }, "argument": { "type": "CallExpression", - "start": 1627, - "end": 1643, + "start": 1617, + "end": 1633, "loc": { "start": { "line": 84, @@ -4460,8 +4390,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1627, - "end": 1641, + "start": 1617, + "end": 1631, "loc": { "start": { "line": 84, @@ -4474,8 +4404,8 @@ }, "object": { "type": "ThisExpression", - "start": 1627, - "end": 1631, + "start": 1617, + "end": 1621, "loc": { "start": { "line": 84, @@ -4489,8 +4419,8 @@ }, "property": { "type": "Identifier", - "start": 1632, - "end": 1641, + "start": 1622, + "end": 1631, "loc": { "start": { "line": 84, @@ -4518,8 +4448,8 @@ { "type": "CommentLine", "value": " Iterate through each regex", - "start": 1656, - "end": 1685, + "start": 1646, + "end": 1675, "loc": { "start": { "line": 87, @@ -4535,8 +4465,8 @@ }, { "type": "VariableDeclaration", - "start": 1690, - "end": 1707, + "start": 1680, + "end": 1697, "loc": { "start": { "line": 88, @@ -4550,8 +4480,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 1694, - "end": 1706, + "start": 1684, + "end": 1696, "loc": { "start": { "line": 88, @@ -4564,8 +4494,8 @@ }, "id": { "type": "Identifier", - "start": 1694, - "end": 1699, + "start": 1684, + "end": 1689, "loc": { "start": { "line": 88, @@ -4582,8 +4512,8 @@ }, "init": { "type": "NullLiteral", - "start": 1702, - "end": 1706, + "start": 1692, + "end": 1696, "loc": { "start": { "line": 88, @@ -4603,8 +4533,8 @@ { "type": "CommentLine", "value": " Iterate through each regex", - "start": 1656, - "end": 1685, + "start": 1646, + "end": 1675, "loc": { "start": { "line": 87, @@ -4620,8 +4550,8 @@ }, { "type": "ForStatement", - "start": 1712, - "end": 2055, + "start": 1702, + "end": 2045, "loc": { "start": { "line": 89, @@ -4634,8 +4564,8 @@ }, "init": { "type": "VariableDeclaration", - "start": 1717, - "end": 1726, + "start": 1707, + "end": 1716, "loc": { "start": { "line": 89, @@ -4649,8 +4579,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 1721, - "end": 1726, + "start": 1711, + "end": 1716, "loc": { "start": { "line": 89, @@ -4663,8 +4593,8 @@ }, "id": { "type": "Identifier", - "start": 1721, - "end": 1722, + "start": 1711, + "end": 1712, "loc": { "start": { "line": 89, @@ -4680,8 +4610,8 @@ }, "init": { "type": "NumericLiteral", - "start": 1725, - "end": 1726, + "start": 1715, + "end": 1716, "loc": { "start": { "line": 89, @@ -4704,8 +4634,8 @@ }, "test": { "type": "BinaryExpression", - "start": 1728, - "end": 1751, + "start": 1718, + "end": 1741, "loc": { "start": { "line": 89, @@ -4718,8 +4648,8 @@ }, "left": { "type": "Identifier", - "start": 1728, - "end": 1729, + "start": 1718, + "end": 1719, "loc": { "start": { "line": 89, @@ -4736,8 +4666,8 @@ "operator": "<", "right": { "type": "MemberExpression", - "start": 1732, - "end": 1751, + "start": 1722, + "end": 1741, "loc": { "start": { "line": 89, @@ -4750,8 +4680,8 @@ }, "object": { "type": "MemberExpression", - "start": 1732, - "end": 1744, + "start": 1722, + "end": 1734, "loc": { "start": { "line": 89, @@ -4764,8 +4694,8 @@ }, "object": { "type": "Identifier", - "start": 1732, - "end": 1737, + "start": 1722, + "end": 1727, "loc": { "start": { "line": 89, @@ -4781,8 +4711,8 @@ }, "property": { "type": "Identifier", - "start": 1738, - "end": 1744, + "start": 1728, + "end": 1734, "loc": { "start": { "line": 89, @@ -4800,8 +4730,8 @@ }, "property": { "type": "Identifier", - "start": 1745, - "end": 1751, + "start": 1735, + "end": 1741, "loc": { "start": { "line": 89, @@ -4820,8 +4750,8 @@ }, "update": { "type": "UpdateExpression", - "start": 1753, - "end": 1756, + "start": 1743, + "end": 1746, "loc": { "start": { "line": 89, @@ -4836,8 +4766,8 @@ "prefix": true, "argument": { "type": "Identifier", - "start": 1755, - "end": 1756, + "start": 1745, + "end": 1746, "loc": { "start": { "line": 89, @@ -4857,8 +4787,8 @@ }, "body": { "type": "BlockStatement", - "start": 1758, - "end": 2055, + "start": 1748, + "end": 2045, "loc": { "start": { "line": 89, @@ -4872,8 +4802,8 @@ "body": [ { "type": "VariableDeclaration", - "start": 1766, - "end": 1813, + "start": 1756, + "end": 1803, "loc": { "start": { "line": 90, @@ -4887,8 +4817,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 1770, - "end": 1812, + "start": 1760, + "end": 1802, "loc": { "start": { "line": 90, @@ -4901,8 +4831,8 @@ }, "id": { "type": "Identifier", - "start": 1770, - "end": 1775, + "start": 1760, + "end": 1765, "loc": { "start": { "line": 90, @@ -4918,8 +4848,8 @@ }, "init": { "type": "CallExpression", - "start": 1778, - "end": 1812, + "start": 1768, + "end": 1802, "loc": { "start": { "line": 90, @@ -4932,8 +4862,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1778, - "end": 1798, + "start": 1768, + "end": 1788, "loc": { "start": { "line": 90, @@ -4946,8 +4876,8 @@ }, "object": { "type": "MemberExpression", - "start": 1778, - "end": 1793, + "start": 1768, + "end": 1783, "loc": { "start": { "line": 90, @@ -4960,8 +4890,8 @@ }, "object": { "type": "MemberExpression", - "start": 1778, - "end": 1790, + "start": 1768, + "end": 1780, "loc": { "start": { "line": 90, @@ -4974,8 +4904,8 @@ }, "object": { "type": "Identifier", - "start": 1778, - "end": 1783, + "start": 1768, + "end": 1773, "loc": { "start": { "line": 90, @@ -4991,8 +4921,8 @@ }, "property": { "type": "Identifier", - "start": 1784, - "end": 1790, + "start": 1774, + "end": 1780, "loc": { "start": { "line": 90, @@ -5010,8 +4940,8 @@ }, "property": { "type": "Identifier", - "start": 1791, - "end": 1792, + "start": 1781, + "end": 1782, "loc": { "start": { "line": 90, @@ -5029,8 +4959,8 @@ }, "property": { "type": "Identifier", - "start": 1794, - "end": 1798, + "start": 1784, + "end": 1788, "loc": { "start": { "line": 90, @@ -5049,8 +4979,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 1799, - "end": 1811, + "start": 1789, + "end": 1801, "loc": { "start": { "line": 90, @@ -5063,8 +4993,8 @@ }, "object": { "type": "ThisExpression", - "start": 1799, - "end": 1803, + "start": 1789, + "end": 1793, "loc": { "start": { "line": 90, @@ -5078,8 +5008,8 @@ }, "property": { "type": "Identifier", - "start": 1804, - "end": 1811, + "start": 1794, + "end": 1801, "loc": { "start": { "line": 90, @@ -5104,8 +5034,8 @@ { "type": "CommentLine", "value": " When matching a expression, add the current line and set the token", - "start": 1821, - "end": 1890, + "start": 1811, + "end": 1880, "loc": { "start": { "line": 92, @@ -5121,8 +5051,8 @@ }, { "type": "IfStatement", - "start": 1897, - "end": 2049, + "start": 1887, + "end": 2039, "loc": { "start": { "line": 93, @@ -5135,8 +5065,8 @@ }, "test": { "type": "BinaryExpression", - "start": 1901, - "end": 1915, + "start": 1891, + "end": 1905, "loc": { "start": { "line": 93, @@ -5149,8 +5079,8 @@ }, "left": { "type": "Identifier", - "start": 1901, - "end": 1906, + "start": 1891, + "end": 1896, "loc": { "start": { "line": 93, @@ -5168,8 +5098,8 @@ "operator": "!==", "right": { "type": "NullLiteral", - "start": 1911, - "end": 1915, + "start": 1901, + "end": 1905, "loc": { "start": { "line": 93, @@ -5185,8 +5115,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 1917, - "end": 2049, + "start": 1907, + "end": 2039, "loc": { "start": { "line": 93, @@ -5200,8 +5130,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 1927, - "end": 1950, + "start": 1917, + "end": 1940, "loc": { "start": { "line": 94, @@ -5214,8 +5144,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 1927, - "end": 1949, + "start": 1917, + "end": 1939, "loc": { "start": { "line": 94, @@ -5229,8 +5159,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 1927, - "end": 1937, + "start": 1917, + "end": 1927, "loc": { "start": { "line": 94, @@ -5243,8 +5173,8 @@ }, "object": { "type": "Identifier", - "start": 1927, - "end": 1932, + "start": 1917, + "end": 1922, "loc": { "start": { "line": 94, @@ -5260,8 +5190,8 @@ }, "property": { "type": "Identifier", - "start": 1933, - "end": 1937, + "start": 1923, + "end": 1927, "loc": { "start": { "line": 94, @@ -5279,8 +5209,8 @@ }, "right": { "type": "MemberExpression", - "start": 1940, - "end": 1949, + "start": 1930, + "end": 1939, "loc": { "start": { "line": 94, @@ -5293,8 +5223,8 @@ }, "object": { "type": "ThisExpression", - "start": 1940, - "end": 1944, + "start": 1930, + "end": 1934, "loc": { "start": { "line": 94, @@ -5308,8 +5238,8 @@ }, "property": { "type": "Identifier", - "start": 1945, - "end": 1949, + "start": 1935, + "end": 1939, "loc": { "start": { "line": 94, @@ -5329,8 +5259,8 @@ }, { "type": "ExpressionStatement", - "start": 1959, - "end": 2002, + "start": 1949, + "end": 1992, "loc": { "start": { "line": 95, @@ -5343,8 +5273,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 1959, - "end": 2001, + "start": 1949, + "end": 1991, "loc": { "start": { "line": 95, @@ -5358,8 +5288,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 1959, - "end": 1973, + "start": 1949, + "end": 1963, "loc": { "start": { "line": 95, @@ -5372,8 +5302,8 @@ }, "object": { "type": "ThisExpression", - "start": 1959, - "end": 1963, + "start": 1949, + "end": 1953, "loc": { "start": { "line": 95, @@ -5387,8 +5317,8 @@ }, "property": { "type": "Identifier", - "start": 1964, - "end": 1973, + "start": 1954, + "end": 1963, "loc": { "start": { "line": 95, @@ -5406,8 +5336,8 @@ }, "right": { "type": "MemberExpression", - "start": 1976, - "end": 2001, + "start": 1966, + "end": 1991, "loc": { "start": { "line": 95, @@ -5420,8 +5350,8 @@ }, "object": { "type": "MemberExpression", - "start": 1976, - "end": 1991, + "start": 1966, + "end": 1981, "loc": { "start": { "line": 95, @@ -5434,8 +5364,8 @@ }, "object": { "type": "MemberExpression", - "start": 1976, - "end": 1988, + "start": 1966, + "end": 1978, "loc": { "start": { "line": 95, @@ -5448,8 +5378,8 @@ }, "object": { "type": "Identifier", - "start": 1976, - "end": 1981, + "start": 1966, + "end": 1971, "loc": { "start": { "line": 95, @@ -5465,8 +5395,8 @@ }, "property": { "type": "Identifier", - "start": 1982, - "end": 1988, + "start": 1972, + "end": 1978, "loc": { "start": { "line": 95, @@ -5484,8 +5414,8 @@ }, "property": { "type": "Identifier", - "start": 1989, - "end": 1990, + "start": 1979, + "end": 1980, "loc": { "start": { "line": 95, @@ -5503,8 +5433,8 @@ }, "property": { "type": "Identifier", - "start": 1992, - "end": 2001, + "start": 1982, + "end": 1991, "loc": { "start": { "line": 95, @@ -5524,8 +5454,8 @@ }, { "type": "ExpressionStatement", - "start": 2012, - "end": 2026, + "start": 2002, + "end": 2016, "loc": { "start": { "line": 97, @@ -5538,8 +5468,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 2012, - "end": 2025, + "start": 2002, + "end": 2015, "loc": { "start": { "line": 97, @@ -5553,8 +5483,8 @@ "operator": "=", "left": { "type": "Identifier", - "start": 2012, - "end": 2017, + "start": 2002, + "end": 2007, "loc": { "start": { "line": 97, @@ -5570,8 +5500,8 @@ }, "right": { "type": "Identifier", - "start": 2020, - "end": 2025, + "start": 2010, + "end": 2015, "loc": { "start": { "line": 97, @@ -5589,8 +5519,8 @@ }, { "type": "BreakStatement", - "start": 2035, - "end": 2041, + "start": 2025, + "end": 2031, "loc": { "start": { "line": 98, @@ -5611,8 +5541,8 @@ { "type": "CommentLine", "value": " When matching a expression, add the current line and set the token", - "start": 1821, - "end": 1890, + "start": 1811, + "end": 1880, "loc": { "start": { "line": 92, @@ -5634,8 +5564,8 @@ { "type": "CommentLine", "value": " Return the matched token, or null if anything was found", - "start": 2061, - "end": 2119, + "start": 2051, + "end": 2109, "loc": { "start": { "line": 102, @@ -5651,8 +5581,8 @@ }, { "type": "ReturnStatement", - "start": 2124, - "end": 2137, + "start": 2114, + "end": 2127, "loc": { "start": { "line": 103, @@ -5665,8 +5595,8 @@ }, "argument": { "type": "Identifier", - "start": 2131, - "end": 2136, + "start": 2121, + "end": 2126, "loc": { "start": { "line": 103, @@ -5685,8 +5615,8 @@ { "type": "CommentLine", "value": " Return the matched token, or null if anything was found", - "start": 2061, - "end": 2119, + "start": 2051, + "end": 2109, "loc": { "start": { "line": 102, @@ -5706,8 +5636,8 @@ }, { "type": "ClassMethod", - "start": 2145, - "end": 3064, + "start": 2135, + "end": 3054, "loc": { "start": { "line": 106, @@ -5722,8 +5652,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 2145, - "end": 2162, + "start": 2135, + "end": 2152, "loc": { "start": { "line": 106, @@ -5745,8 +5675,8 @@ "params": [ { "type": "Identifier", - "start": 2163, - "end": 2169, + "start": 2153, + "end": 2159, "loc": { "start": { "line": 106, @@ -5763,8 +5693,8 @@ ], "body": { "type": "BlockStatement", - "start": 2171, - "end": 3064, + "start": 2161, + "end": 3054, "loc": { "start": { "line": 106, @@ -5778,8 +5708,8 @@ "body": [ { "type": "ForStatement", - "start": 2177, - "end": 3040, + "start": 2167, + "end": 3030, "loc": { "start": { "line": 107, @@ -5792,8 +5722,8 @@ }, "init": { "type": "VariableDeclaration", - "start": 2182, - "end": 2191, + "start": 2172, + "end": 2181, "loc": { "start": { "line": 107, @@ -5807,8 +5737,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 2186, - "end": 2191, + "start": 2176, + "end": 2181, "loc": { "start": { "line": 107, @@ -5821,8 +5751,8 @@ }, "id": { "type": "Identifier", - "start": 2186, - "end": 2187, + "start": 2176, + "end": 2177, "loc": { "start": { "line": 107, @@ -5838,8 +5768,8 @@ }, "init": { "type": "NumericLiteral", - "start": 2190, - "end": 2191, + "start": 2180, + "end": 2181, "loc": { "start": { "line": 107, @@ -5862,8 +5792,8 @@ }, "test": { "type": "BinaryExpression", - "start": 2193, - "end": 2210, + "start": 2183, + "end": 2200, "loc": { "start": { "line": 107, @@ -5876,8 +5806,8 @@ }, "left": { "type": "Identifier", - "start": 2193, - "end": 2194, + "start": 2183, + "end": 2184, "loc": { "start": { "line": 107, @@ -5894,8 +5824,8 @@ "operator": "<", "right": { "type": "MemberExpression", - "start": 2197, - "end": 2210, + "start": 2187, + "end": 2200, "loc": { "start": { "line": 107, @@ -5908,8 +5838,8 @@ }, "object": { "type": "Identifier", - "start": 2197, - "end": 2203, + "start": 2187, + "end": 2193, "loc": { "start": { "line": 107, @@ -5925,8 +5855,8 @@ }, "property": { "type": "Identifier", - "start": 2204, - "end": 2210, + "start": 2194, + "end": 2200, "loc": { "start": { "line": 107, @@ -5945,8 +5875,8 @@ }, "update": { "type": "UpdateExpression", - "start": 2212, - "end": 2215, + "start": 2202, + "end": 2205, "loc": { "start": { "line": 107, @@ -5961,8 +5891,8 @@ "prefix": true, "argument": { "type": "Identifier", - "start": 2214, - "end": 2215, + "start": 2204, + "end": 2205, "loc": { "start": { "line": 107, @@ -5982,8 +5912,8 @@ }, "body": { "type": "BlockStatement", - "start": 2217, - "end": 3040, + "start": 2207, + "end": 3030, "loc": { "start": { "line": 107, @@ -5997,8 +5927,8 @@ "body": [ { "type": "IfStatement", - "start": 2245, - "end": 2425, + "start": 2235, + "end": 2415, "loc": { "start": { "line": 109, @@ -6011,8 +5941,8 @@ }, "test": { "type": "BinaryExpression", - "start": 2249, - "end": 2274, + "start": 2239, + "end": 2264, "loc": { "start": { "line": 109, @@ -6025,8 +5955,8 @@ }, "left": { "type": "MemberExpression", - "start": 2249, - "end": 2263, + "start": 2239, + "end": 2253, "loc": { "start": { "line": 109, @@ -6039,8 +5969,8 @@ }, "object": { "type": "MemberExpression", - "start": 2249, - "end": 2258, + "start": 2239, + "end": 2248, "loc": { "start": { "line": 109, @@ -6053,8 +5983,8 @@ }, "object": { "type": "Identifier", - "start": 2249, - "end": 2255, + "start": 2239, + "end": 2245, "loc": { "start": { "line": 109, @@ -6071,8 +6001,8 @@ }, "property": { "type": "Identifier", - "start": 2256, - "end": 2257, + "start": 2246, + "end": 2247, "loc": { "start": { "line": 109, @@ -6091,8 +6021,8 @@ }, "property": { "type": "Identifier", - "start": 2259, - "end": 2263, + "start": 2249, + "end": 2253, "loc": { "start": { "line": 109, @@ -6112,8 +6042,8 @@ "operator": "===", "right": { "type": "StringLiteral", - "start": 2268, - "end": 2274, + "start": 2258, + "end": 2264, "loc": { "start": { "line": 109, @@ -6134,8 +6064,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 2276, - "end": 2425, + "start": 2266, + "end": 2415, "loc": { "start": { "line": 109, @@ -6149,8 +6079,8 @@ "body": [ { "type": "VariableDeclaration", - "start": 2286, - "end": 2318, + "start": 2276, + "end": 2308, "loc": { "start": { "line": 110, @@ -6164,8 +6094,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 2292, - "end": 2317, + "start": 2282, + "end": 2307, "loc": { "start": { "line": 110, @@ -6178,8 +6108,8 @@ }, "id": { "type": "Identifier", - "start": 2292, - "end": 2301, + "start": 2282, + "end": 2291, "loc": { "start": { "line": 110, @@ -6195,8 +6125,8 @@ }, "init": { "type": "MemberExpression", - "start": 2304, - "end": 2317, + "start": 2294, + "end": 2307, "loc": { "start": { "line": 110, @@ -6209,8 +6139,8 @@ }, "object": { "type": "Identifier", - "start": 2304, - "end": 2310, + "start": 2294, + "end": 2300, "loc": { "start": { "line": 110, @@ -6226,8 +6156,8 @@ }, "property": { "type": "BinaryExpression", - "start": 2311, - "end": 2316, + "start": 2301, + "end": 2306, "loc": { "start": { "line": 110, @@ -6240,8 +6170,8 @@ }, "left": { "type": "Identifier", - "start": 2311, - "end": 2312, + "start": 2301, + "end": 2302, "loc": { "start": { "line": 110, @@ -6258,8 +6188,8 @@ "operator": "+", "right": { "type": "NumericLiteral", - "start": 2315, - "end": 2316, + "start": 2305, + "end": 2306, "loc": { "start": { "line": 110, @@ -6285,8 +6215,8 @@ }, { "type": "IfStatement", - "start": 2327, - "end": 2417, + "start": 2317, + "end": 2407, "loc": { "start": { "line": 111, @@ -6299,8 +6229,8 @@ }, "test": { "type": "LogicalExpression", - "start": 2331, - "end": 2367, + "start": 2321, + "end": 2357, "loc": { "start": { "line": 111, @@ -6313,8 +6243,8 @@ }, "left": { "type": "Identifier", - "start": 2331, - "end": 2340, + "start": 2321, + "end": 2330, "loc": { "start": { "line": 111, @@ -6331,8 +6261,8 @@ "operator": "&&", "right": { "type": "BinaryExpression", - "start": 2344, - "end": 2367, + "start": 2334, + "end": 2357, "loc": { "start": { "line": 111, @@ -6345,8 +6275,8 @@ }, "left": { "type": "MemberExpression", - "start": 2344, - "end": 2359, + "start": 2334, + "end": 2349, "loc": { "start": { "line": 111, @@ -6359,8 +6289,8 @@ }, "object": { "type": "Identifier", - "start": 2344, - "end": 2353, + "start": 2334, + "end": 2343, "loc": { "start": { "line": 111, @@ -6376,8 +6306,8 @@ }, "property": { "type": "Identifier", - "start": 2354, - "end": 2359, + "start": 2344, + "end": 2349, "loc": { "start": { "line": 111, @@ -6396,8 +6326,8 @@ "operator": "===", "right": { "type": "StringLiteral", - "start": 2364, - "end": 2367, + "start": 2354, + "end": 2357, "loc": { "start": { "line": 111, @@ -6418,8 +6348,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 2369, - "end": 2417, + "start": 2359, + "end": 2407, "loc": { "start": { "line": 111, @@ -6433,8 +6363,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 2381, - "end": 2407, + "start": 2371, + "end": 2397, "loc": { "start": { "line": 112, @@ -6447,8 +6377,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 2381, - "end": 2406, + "start": 2371, + "end": 2396, "loc": { "start": { "line": 112, @@ -6462,8 +6392,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 2381, - "end": 2395, + "start": 2371, + "end": 2385, "loc": { "start": { "line": 112, @@ -6476,8 +6406,8 @@ }, "object": { "type": "MemberExpression", - "start": 2381, - "end": 2390, + "start": 2371, + "end": 2380, "loc": { "start": { "line": 112, @@ -6490,8 +6420,8 @@ }, "object": { "type": "Identifier", - "start": 2381, - "end": 2387, + "start": 2371, + "end": 2377, "loc": { "start": { "line": 112, @@ -6507,8 +6437,8 @@ }, "property": { "type": "Identifier", - "start": 2388, - "end": 2389, + "start": 2378, + "end": 2379, "loc": { "start": { "line": 112, @@ -6526,8 +6456,8 @@ }, "property": { "type": "Identifier", - "start": 2391, - "end": 2395, + "start": 2381, + "end": 2385, "loc": { "start": { "line": 112, @@ -6545,8 +6475,8 @@ }, "right": { "type": "StringLiteral", - "start": 2398, - "end": 2406, + "start": 2388, + "end": 2396, "loc": { "start": { "line": 112, @@ -6579,8 +6509,8 @@ { "type": "CommentLine", "value": " x: => \"x\",", - "start": 2225, - "end": 2238, + "start": 2215, + "end": 2228, "loc": { "start": { "line": 108, @@ -6597,8 +6527,8 @@ { "type": "CommentLine", "value": " Replace dots with parentehsis", - "start": 2433, - "end": 2465, + "start": 2423, + "end": 2455, "loc": { "start": { "line": 116, @@ -6613,8 +6543,8 @@ { "type": "CommentLine", "value": " a.b => a(\"b\")", - "start": 2472, - "end": 2493, + "start": 2462, + "end": 2483, "loc": { "start": { "line": 117, @@ -6629,8 +6559,8 @@ { "type": "CommentLine", "value": " a.b.c => a(\"b\")(\"c\")", - "start": 2500, - "end": 2526, + "start": 2490, + "end": 2516, "loc": { "start": { "line": 118, @@ -6645,8 +6575,8 @@ { "type": "CommentLine", "value": " a.b(c, d) => a(\"b\", c, d)", - "start": 2533, - "end": 2563, + "start": 2523, + "end": 2553, "loc": { "start": { "line": 119, @@ -6662,8 +6592,8 @@ }, { "type": "IfStatement", - "start": 2570, - "end": 3034, + "start": 2560, + "end": 3024, "loc": { "start": { "line": 120, @@ -6676,8 +6606,8 @@ }, "test": { "type": "LogicalExpression", - "start": 2574, - "end": 2624, + "start": 2564, + "end": 2614, "loc": { "start": { "line": 120, @@ -6690,8 +6620,8 @@ }, "left": { "type": "BinaryExpression", - "start": 2574, - "end": 2597, + "start": 2564, + "end": 2587, "loc": { "start": { "line": 120, @@ -6704,8 +6634,8 @@ }, "left": { "type": "MemberExpression", - "start": 2574, - "end": 2588, + "start": 2564, + "end": 2578, "loc": { "start": { "line": 120, @@ -6718,8 +6648,8 @@ }, "object": { "type": "MemberExpression", - "start": 2574, - "end": 2583, + "start": 2564, + "end": 2573, "loc": { "start": { "line": 120, @@ -6732,8 +6662,8 @@ }, "object": { "type": "Identifier", - "start": 2574, - "end": 2580, + "start": 2564, + "end": 2570, "loc": { "start": { "line": 120, @@ -6750,8 +6680,8 @@ }, "property": { "type": "Identifier", - "start": 2581, - "end": 2582, + "start": 2571, + "end": 2572, "loc": { "start": { "line": 120, @@ -6770,8 +6700,8 @@ }, "property": { "type": "Identifier", - "start": 2584, - "end": 2588, + "start": 2574, + "end": 2578, "loc": { "start": { "line": 120, @@ -6791,8 +6721,8 @@ "operator": "===", "right": { "type": "StringLiteral", - "start": 2593, - "end": 2597, + "start": 2583, + "end": 2587, "loc": { "start": { "line": 120, @@ -6814,8 +6744,8 @@ "operator": "&&", "right": { "type": "BinaryExpression", - "start": 2601, - "end": 2624, + "start": 2591, + "end": 2614, "loc": { "start": { "line": 120, @@ -6828,8 +6758,8 @@ }, "left": { "type": "MemberExpression", - "start": 2601, - "end": 2616, + "start": 2591, + "end": 2606, "loc": { "start": { "line": 120, @@ -6842,8 +6772,8 @@ }, "object": { "type": "MemberExpression", - "start": 2601, - "end": 2610, + "start": 2591, + "end": 2600, "loc": { "start": { "line": 120, @@ -6856,8 +6786,8 @@ }, "object": { "type": "Identifier", - "start": 2601, - "end": 2607, + "start": 2591, + "end": 2597, "loc": { "start": { "line": 120, @@ -6873,8 +6803,8 @@ }, "property": { "type": "Identifier", - "start": 2608, - "end": 2609, + "start": 2598, + "end": 2599, "loc": { "start": { "line": 120, @@ -6892,8 +6822,8 @@ }, "property": { "type": "Identifier", - "start": 2611, - "end": 2616, + "start": 2601, + "end": 2606, "loc": { "start": { "line": 120, @@ -6912,8 +6842,8 @@ "operator": "===", "right": { "type": "StringLiteral", - "start": 2621, - "end": 2624, + "start": 2611, + "end": 2614, "loc": { "start": { "line": 120, @@ -6935,8 +6865,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 2626, - "end": 3034, + "start": 2616, + "end": 3024, "loc": { "start": { "line": 120, @@ -6950,8 +6880,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 2636, - "end": 2658, + "start": 2626, + "end": 2648, "loc": { "start": { "line": 121, @@ -6964,8 +6894,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 2636, - "end": 2657, + "start": 2626, + "end": 2647, "loc": { "start": { "line": 121, @@ -6979,8 +6909,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 2636, - "end": 2651, + "start": 2626, + "end": 2641, "loc": { "start": { "line": 121, @@ -6993,8 +6923,8 @@ }, "object": { "type": "MemberExpression", - "start": 2636, - "end": 2645, + "start": 2626, + "end": 2635, "loc": { "start": { "line": 121, @@ -7007,8 +6937,8 @@ }, "object": { "type": "Identifier", - "start": 2636, - "end": 2642, + "start": 2626, + "end": 2632, "loc": { "start": { "line": 121, @@ -7024,8 +6954,8 @@ }, "property": { "type": "Identifier", - "start": 2643, - "end": 2644, + "start": 2633, + "end": 2634, "loc": { "start": { "line": 121, @@ -7043,8 +6973,8 @@ }, "property": { "type": "Identifier", - "start": 2646, - "end": 2651, + "start": 2636, + "end": 2641, "loc": { "start": { "line": 121, @@ -7062,8 +6992,8 @@ }, "right": { "type": "StringLiteral", - "start": 2654, - "end": 2657, + "start": 2644, + "end": 2647, "loc": { "start": { "line": 121, @@ -7084,8 +7014,8 @@ }, { "type": "VariableDeclaration", - "start": 2668, - "end": 2695, + "start": 2658, + "end": 2685, "loc": { "start": { "line": 123, @@ -7099,8 +7029,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 2674, - "end": 2694, + "start": 2664, + "end": 2684, "loc": { "start": { "line": 123, @@ -7113,8 +7043,8 @@ }, "id": { "type": "Identifier", - "start": 2674, - "end": 2678, + "start": 2664, + "end": 2668, "loc": { "start": { "line": 123, @@ -7130,8 +7060,8 @@ }, "init": { "type": "MemberExpression", - "start": 2681, - "end": 2694, + "start": 2671, + "end": 2684, "loc": { "start": { "line": 123, @@ -7144,8 +7074,8 @@ }, "object": { "type": "Identifier", - "start": 2681, - "end": 2687, + "start": 2671, + "end": 2677, "loc": { "start": { "line": 123, @@ -7161,8 +7091,8 @@ }, "property": { "type": "BinaryExpression", - "start": 2688, - "end": 2693, + "start": 2678, + "end": 2683, "loc": { "start": { "line": 123, @@ -7175,8 +7105,8 @@ }, "left": { "type": "Identifier", - "start": 2688, - "end": 2689, + "start": 2678, + "end": 2679, "loc": { "start": { "line": 123, @@ -7193,8 +7123,8 @@ "operator": "+", "right": { "type": "NumericLiteral", - "start": 2692, - "end": 2693, + "start": 2682, + "end": 2683, "loc": { "start": { "line": 123, @@ -7220,8 +7150,8 @@ }, { "type": "VariableDeclaration", - "start": 2704, - "end": 2730, + "start": 2694, + "end": 2720, "loc": { "start": { "line": 124, @@ -7235,8 +7165,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 2710, - "end": 2729, + "start": 2700, + "end": 2719, "loc": { "start": { "line": 124, @@ -7249,8 +7179,8 @@ }, "id": { "type": "Identifier", - "start": 2710, - "end": 2713, + "start": 2700, + "end": 2703, "loc": { "start": { "line": 124, @@ -7266,8 +7196,8 @@ }, "init": { "type": "MemberExpression", - "start": 2716, - "end": 2729, + "start": 2706, + "end": 2719, "loc": { "start": { "line": 124, @@ -7280,8 +7210,8 @@ }, "object": { "type": "Identifier", - "start": 2716, - "end": 2722, + "start": 2706, + "end": 2712, "loc": { "start": { "line": 124, @@ -7297,8 +7227,8 @@ }, "property": { "type": "BinaryExpression", - "start": 2723, - "end": 2728, + "start": 2713, + "end": 2718, "loc": { "start": { "line": 124, @@ -7311,8 +7241,8 @@ }, "left": { "type": "Identifier", - "start": 2723, - "end": 2724, + "start": 2713, + "end": 2714, "loc": { "start": { "line": 124, @@ -7329,8 +7259,8 @@ "operator": "+", "right": { "type": "NumericLiteral", - "start": 2727, - "end": 2728, + "start": 2717, + "end": 2718, "loc": { "start": { "line": 124, @@ -7356,8 +7286,8 @@ }, { "type": "IfStatement", - "start": 2740, - "end": 2817, + "start": 2730, + "end": 2807, "loc": { "start": { "line": 126, @@ -7370,8 +7300,8 @@ }, "test": { "type": "LogicalExpression", - "start": 2744, - "end": 2772, + "start": 2734, + "end": 2762, "loc": { "start": { "line": 126, @@ -7384,8 +7314,8 @@ }, "left": { "type": "Identifier", - "start": 2744, - "end": 2748, + "start": 2734, + "end": 2738, "loc": { "start": { "line": 126, @@ -7402,8 +7332,8 @@ "operator": "&&", "right": { "type": "BinaryExpression", - "start": 2752, - "end": 2772, + "start": 2742, + "end": 2762, "loc": { "start": { "line": 126, @@ -7416,8 +7346,8 @@ }, "left": { "type": "MemberExpression", - "start": 2752, - "end": 2761, + "start": 2742, + "end": 2751, "loc": { "start": { "line": 126, @@ -7430,8 +7360,8 @@ }, "object": { "type": "Identifier", - "start": 2752, - "end": 2756, + "start": 2742, + "end": 2746, "loc": { "start": { "line": 126, @@ -7447,8 +7377,8 @@ }, "property": { "type": "Identifier", - "start": 2757, - "end": 2761, + "start": 2747, + "end": 2751, "loc": { "start": { "line": 126, @@ -7467,8 +7397,8 @@ "operator": "===", "right": { "type": "StringLiteral", - "start": 2766, - "end": 2772, + "start": 2756, + "end": 2762, "loc": { "start": { "line": 126, @@ -7489,8 +7419,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 2774, - "end": 2817, + "start": 2764, + "end": 2807, "loc": { "start": { "line": 126, @@ -7504,8 +7434,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 2786, - "end": 2807, + "start": 2776, + "end": 2797, "loc": { "start": { "line": 127, @@ -7518,8 +7448,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 2786, - "end": 2806, + "start": 2776, + "end": 2796, "loc": { "start": { "line": 127, @@ -7533,8 +7463,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 2786, - "end": 2795, + "start": 2776, + "end": 2785, "loc": { "start": { "line": 127, @@ -7547,8 +7477,8 @@ }, "object": { "type": "Identifier", - "start": 2786, - "end": 2790, + "start": 2776, + "end": 2780, "loc": { "start": { "line": 127, @@ -7564,8 +7494,8 @@ }, "property": { "type": "Identifier", - "start": 2791, - "end": 2795, + "start": 2781, + "end": 2785, "loc": { "start": { "line": 127, @@ -7583,8 +7513,8 @@ }, "right": { "type": "StringLiteral", - "start": 2798, - "end": 2806, + "start": 2788, + "end": 2796, "loc": { "start": { "line": 127, @@ -7610,8 +7540,8 @@ }, { "type": "IfStatement", - "start": 2827, - "end": 3026, + "start": 2817, + "end": 3016, "loc": { "start": { "line": 130, @@ -7624,8 +7554,8 @@ }, "test": { "type": "LogicalExpression", - "start": 2831, - "end": 2876, + "start": 2821, + "end": 2866, "loc": { "start": { "line": 130, @@ -7638,8 +7568,8 @@ }, "left": { "type": "LogicalExpression", - "start": 2831, - "end": 2855, + "start": 2821, + "end": 2845, "loc": { "start": { "line": 130, @@ -7652,8 +7582,8 @@ }, "left": { "type": "Identifier", - "start": 2831, - "end": 2834, + "start": 2821, + "end": 2824, "loc": { "start": { "line": 130, @@ -7670,8 +7600,8 @@ "operator": "&&", "right": { "type": "BinaryExpression", - "start": 2838, - "end": 2855, + "start": 2828, + "end": 2845, "loc": { "start": { "line": 130, @@ -7684,8 +7614,8 @@ }, "left": { "type": "MemberExpression", - "start": 2838, - "end": 2846, + "start": 2828, + "end": 2836, "loc": { "start": { "line": 130, @@ -7698,8 +7628,8 @@ }, "object": { "type": "Identifier", - "start": 2838, - "end": 2841, + "start": 2828, + "end": 2831, "loc": { "start": { "line": 130, @@ -7715,8 +7645,8 @@ }, "property": { "type": "Identifier", - "start": 2842, - "end": 2846, + "start": 2832, + "end": 2836, "loc": { "start": { "line": 130, @@ -7735,8 +7665,8 @@ "operator": "===", "right": { "type": "StringLiteral", - "start": 2851, - "end": 2855, + "start": 2841, + "end": 2845, "loc": { "start": { "line": 130, @@ -7758,8 +7688,8 @@ "operator": "&&", "right": { "type": "BinaryExpression", - "start": 2859, - "end": 2876, + "start": 2849, + "end": 2866, "loc": { "start": { "line": 130, @@ -7772,8 +7702,8 @@ }, "left": { "type": "MemberExpression", - "start": 2859, - "end": 2868, + "start": 2849, + "end": 2858, "loc": { "start": { "line": 130, @@ -7786,8 +7716,8 @@ }, "object": { "type": "Identifier", - "start": 2859, - "end": 2862, + "start": 2849, + "end": 2852, "loc": { "start": { "line": 130, @@ -7803,8 +7733,8 @@ }, "property": { "type": "Identifier", - "start": 2863, - "end": 2868, + "start": 2853, + "end": 2858, "loc": { "start": { "line": 130, @@ -7823,8 +7753,8 @@ "operator": "!==", "right": { "type": "StringLiteral", - "start": 2873, - "end": 2876, + "start": 2863, + "end": 2866, "loc": { "start": { "line": 130, @@ -7845,8 +7775,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 2878, - "end": 2946, + "start": 2868, + "end": 2936, "loc": { "start": { "line": 130, @@ -7860,8 +7790,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 2890, - "end": 2909, + "start": 2880, + "end": 2899, "loc": { "start": { "line": 131, @@ -7874,8 +7804,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 2890, - "end": 2908, + "start": 2880, + "end": 2898, "loc": { "start": { "line": 131, @@ -7889,8 +7819,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 2890, - "end": 2898, + "start": 2880, + "end": 2888, "loc": { "start": { "line": 131, @@ -7903,8 +7833,8 @@ }, "object": { "type": "Identifier", - "start": 2890, - "end": 2893, + "start": 2880, + "end": 2883, "loc": { "start": { "line": 131, @@ -7920,8 +7850,8 @@ }, "property": { "type": "Identifier", - "start": 2894, - "end": 2898, + "start": 2884, + "end": 2888, "loc": { "start": { "line": 131, @@ -7939,8 +7869,8 @@ }, "right": { "type": "StringLiteral", - "start": 2901, - "end": 2908, + "start": 2891, + "end": 2898, "loc": { "start": { "line": 131, @@ -7961,8 +7891,8 @@ }, { "type": "ExpressionStatement", - "start": 2920, - "end": 2936, + "start": 2910, + "end": 2926, "loc": { "start": { "line": 132, @@ -7975,8 +7905,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 2920, - "end": 2935, + "start": 2910, + "end": 2925, "loc": { "start": { "line": 132, @@ -7990,8 +7920,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 2920, - "end": 2929, + "start": 2910, + "end": 2919, "loc": { "start": { "line": 132, @@ -8004,8 +7934,8 @@ }, "object": { "type": "Identifier", - "start": 2920, - "end": 2923, + "start": 2910, + "end": 2913, "loc": { "start": { "line": 132, @@ -8021,8 +7951,8 @@ }, "property": { "type": "Identifier", - "start": 2924, - "end": 2929, + "start": 2914, + "end": 2919, "loc": { "start": { "line": 132, @@ -8040,8 +7970,8 @@ }, "right": { "type": "StringLiteral", - "start": 2932, - "end": 2935, + "start": 2922, + "end": 2925, "loc": { "start": { "line": 132, @@ -8065,8 +7995,8 @@ }, "alternate": { "type": "BlockStatement", - "start": 2952, - "end": 3026, + "start": 2942, + "end": 3016, "loc": { "start": { "line": 133, @@ -8080,8 +8010,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 2964, - "end": 3016, + "start": 2954, + "end": 3006, "loc": { "start": { "line": 134, @@ -8094,8 +8024,8 @@ }, "expression": { "type": "CallExpression", - "start": 2964, - "end": 3015, + "start": 2954, + "end": 3005, "loc": { "start": { "line": 134, @@ -8108,8 +8038,8 @@ }, "callee": { "type": "MemberExpression", - "start": 2964, - "end": 2977, + "start": 2954, + "end": 2967, "loc": { "start": { "line": 134, @@ -8122,8 +8052,8 @@ }, "object": { "type": "Identifier", - "start": 2964, - "end": 2970, + "start": 2954, + "end": 2960, "loc": { "start": { "line": 134, @@ -8139,8 +8069,8 @@ }, "property": { "type": "Identifier", - "start": 2971, - "end": 2977, + "start": 2961, + "end": 2967, "loc": { "start": { "line": 134, @@ -8159,8 +8089,8 @@ "arguments": [ { "type": "BinaryExpression", - "start": 2978, - "end": 2983, + "start": 2968, + "end": 2973, "loc": { "start": { "line": 134, @@ -8173,8 +8103,8 @@ }, "left": { "type": "Identifier", - "start": 2978, - "end": 2979, + "start": 2968, + "end": 2969, "loc": { "start": { "line": 134, @@ -8191,8 +8121,8 @@ "operator": "+", "right": { "type": "NumericLiteral", - "start": 2982, - "end": 2983, + "start": 2972, + "end": 2973, "loc": { "start": { "line": 134, @@ -8212,8 +8142,8 @@ }, { "type": "NumericLiteral", - "start": 2985, - "end": 2986, + "start": 2975, + "end": 2976, "loc": { "start": { "line": 134, @@ -8232,8 +8162,8 @@ }, { "type": "ObjectExpression", - "start": 2988, - "end": 3014, + "start": 2978, + "end": 3004, "loc": { "start": { "line": 134, @@ -8247,8 +8177,8 @@ "properties": [ { "type": "ObjectProperty", - "start": 2990, - "end": 3000, + "start": 2980, + "end": 2990, "loc": { "start": { "line": 134, @@ -8264,8 +8194,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 2990, - "end": 2994, + "start": 2980, + "end": 2984, "loc": { "start": { "line": 134, @@ -8281,8 +8211,8 @@ }, "value": { "type": "StringLiteral", - "start": 2996, - "end": 3000, + "start": 2986, + "end": 2990, "loc": { "start": { "line": 134, @@ -8302,8 +8232,8 @@ }, { "type": "ObjectProperty", - "start": 3002, - "end": 3012, + "start": 2992, + "end": 3002, "loc": { "start": { "line": 134, @@ -8319,8 +8249,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 3002, - "end": 3007, + "start": 2992, + "end": 2997, "loc": { "start": { "line": 134, @@ -8336,8 +8266,8 @@ }, "value": { "type": "StringLiteral", - "start": 3009, - "end": 3012, + "start": 2999, + "end": 3002, "loc": { "start": { "line": 134, @@ -8372,8 +8302,8 @@ { "type": "CommentLine", "value": " Replace dots with parentehsis", - "start": 2433, - "end": 2465, + "start": 2423, + "end": 2455, "loc": { "start": { "line": 116, @@ -8388,8 +8318,8 @@ { "type": "CommentLine", "value": " a.b => a(\"b\")", - "start": 2472, - "end": 2493, + "start": 2462, + "end": 2483, "loc": { "start": { "line": 117, @@ -8404,8 +8334,8 @@ { "type": "CommentLine", "value": " a.b.c => a(\"b\")(\"c\")", - "start": 2500, - "end": 2526, + "start": 2490, + "end": 2516, "loc": { "start": { "line": 118, @@ -8420,8 +8350,8 @@ { "type": "CommentLine", "value": " a.b(c, d) => a(\"b\", c, d)", - "start": 2533, - "end": 2563, + "start": 2523, + "end": 2553, "loc": { "start": { "line": 119, @@ -8441,8 +8371,8 @@ }, { "type": "ReturnStatement", - "start": 3046, - "end": 3060, + "start": 3036, + "end": 3050, "loc": { "start": { "line": 139, @@ -8455,8 +8385,8 @@ }, "argument": { "type": "Identifier", - "start": 3053, - "end": 3059, + "start": 3043, + "end": 3049, "loc": { "start": { "line": 139, @@ -8477,8 +8407,8 @@ }, { "type": "ClassMethod", - "start": 3068, - "end": 3268, + "start": 3058, + "end": 3258, "loc": { "start": { "line": 142, @@ -8493,8 +8423,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 3068, - "end": 3087, + "start": 3058, + "end": 3077, "loc": { "start": { "line": 142, @@ -8516,8 +8446,8 @@ "params": [], "body": { "type": "BlockStatement", - "start": 3090, - "end": 3268, + "start": 3080, + "end": 3258, "loc": { "start": { "line": 142, @@ -8531,8 +8461,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 3096, - "end": 3173, + "start": 3086, + "end": 3163, "loc": { "start": { "line": 143, @@ -8545,8 +8475,8 @@ }, "expression": { "type": "CallExpression", - "start": 3096, - "end": 3172, + "start": 3086, + "end": 3162, "loc": { "start": { "line": 143, @@ -8559,8 +8489,8 @@ }, "callee": { "type": "MemberExpression", - "start": 3096, - "end": 3116, + "start": 3086, + "end": 3106, "loc": { "start": { "line": 143, @@ -8573,8 +8503,8 @@ }, "object": { "type": "MemberExpression", - "start": 3096, - "end": 3108, + "start": 3086, + "end": 3098, "loc": { "start": { "line": 143, @@ -8587,8 +8517,8 @@ }, "object": { "type": "Identifier", - "start": 3096, - "end": 3101, + "start": 3086, + "end": 3091, "loc": { "start": { "line": 143, @@ -8604,8 +8534,8 @@ }, "property": { "type": "Identifier", - "start": 3102, - "end": 3108, + "start": 3092, + "end": 3098, "loc": { "start": { "line": 143, @@ -8623,8 +8553,8 @@ }, "property": { "type": "Identifier", - "start": 3109, - "end": 3116, + "start": 3099, + "end": 3106, "loc": { "start": { "line": 143, @@ -8643,8 +8573,8 @@ "arguments": [ { "type": "ArrowFunctionExpression", - "start": 3117, - "end": 3171, + "start": 3107, + "end": 3161, "loc": { "start": { "line": 143, @@ -8662,8 +8592,8 @@ "params": [ { "type": "Identifier", - "start": 3117, - "end": 3121, + "start": 3107, + "end": 3111, "loc": { "start": { "line": 143, @@ -8680,8 +8610,8 @@ ], "body": { "type": "BlockStatement", - "start": 3125, - "end": 3171, + "start": 3115, + "end": 3161, "loc": { "start": { "line": 143, @@ -8695,8 +8625,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 3133, - "end": 3165, + "start": 3123, + "end": 3155, "loc": { "start": { "line": 144, @@ -8709,8 +8639,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 3133, - "end": 3164, + "start": 3123, + "end": 3154, "loc": { "start": { "line": 144, @@ -8724,8 +8654,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 3133, - "end": 3147, + "start": 3123, + "end": 3137, "loc": { "start": { "line": 144, @@ -8738,8 +8668,8 @@ }, "object": { "type": "Identifier", - "start": 3133, - "end": 3137, + "start": 3123, + "end": 3127, "loc": { "start": { "line": 144, @@ -8755,8 +8685,8 @@ }, "property": { "type": "Identifier", - "start": 3138, - "end": 3147, + "start": 3128, + "end": 3137, "loc": { "start": { "line": 144, @@ -8774,8 +8704,8 @@ }, "right": { "type": "MemberExpression", - "start": 3150, - "end": 3164, + "start": 3140, + "end": 3154, "loc": { "start": { "line": 144, @@ -8788,8 +8718,8 @@ }, "object": { "type": "ThisExpression", - "start": 3150, - "end": 3154, + "start": 3140, + "end": 3144, "loc": { "start": { "line": 144, @@ -8803,8 +8733,8 @@ }, "property": { "type": "Identifier", - "start": 3155, - "end": 3164, + "start": 3145, + "end": 3154, "loc": { "start": { "line": 144, @@ -8831,8 +8761,8 @@ }, { "type": "ExpressionStatement", - "start": 3178, - "end": 3218, + "start": 3168, + "end": 3208, "loc": { "start": { "line": 146, @@ -8845,8 +8775,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 3178, - "end": 3217, + "start": 3168, + "end": 3207, "loc": { "start": { "line": 146, @@ -8860,8 +8790,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 3178, - "end": 3200, + "start": 3168, + "end": 3190, "loc": { "start": { "line": 146, @@ -8874,8 +8804,8 @@ }, "object": { "type": "MemberExpression", - "start": 3178, - "end": 3190, + "start": 3168, + "end": 3180, "loc": { "start": { "line": 146, @@ -8888,8 +8818,8 @@ }, "object": { "type": "Identifier", - "start": 3178, - "end": 3183, + "start": 3168, + "end": 3173, "loc": { "start": { "line": 146, @@ -8905,8 +8835,8 @@ }, "property": { "type": "Identifier", - "start": 3184, - "end": 3190, + "start": 3174, + "end": 3180, "loc": { "start": { "line": 146, @@ -8924,8 +8854,8 @@ }, "property": { "type": "Identifier", - "start": 3191, - "end": 3200, + "start": 3181, + "end": 3190, "loc": { "start": { "line": 146, @@ -8943,8 +8873,8 @@ }, "right": { "type": "MemberExpression", - "start": 3203, - "end": 3217, + "start": 3193, + "end": 3207, "loc": { "start": { "line": 146, @@ -8957,8 +8887,8 @@ }, "object": { "type": "ThisExpression", - "start": 3203, - "end": 3207, + "start": 3193, + "end": 3197, "loc": { "start": { "line": 146, @@ -8972,8 +8902,8 @@ }, "property": { "type": "Identifier", - "start": 3208, - "end": 3217, + "start": 3198, + "end": 3207, "loc": { "start": { "line": 146, @@ -8993,8 +8923,8 @@ }, { "type": "ExpressionStatement", - "start": 3223, - "end": 3264, + "start": 3213, + "end": 3254, "loc": { "start": { "line": 147, @@ -9007,8 +8937,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 3223, - "end": 3263, + "start": 3213, + "end": 3253, "loc": { "start": { "line": 147, @@ -9022,8 +8952,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 3223, - "end": 3246, + "start": 3213, + "end": 3236, "loc": { "start": { "line": 147, @@ -9036,8 +8966,8 @@ }, "object": { "type": "MemberExpression", - "start": 3223, - "end": 3236, + "start": 3213, + "end": 3226, "loc": { "start": { "line": 147, @@ -9050,8 +8980,8 @@ }, "object": { "type": "Identifier", - "start": 3223, - "end": 3228, + "start": 3213, + "end": 3218, "loc": { "start": { "line": 147, @@ -9067,8 +8997,8 @@ }, "property": { "type": "Identifier", - "start": 3229, - "end": 3236, + "start": 3219, + "end": 3226, "loc": { "start": { "line": 147, @@ -9086,8 +9016,8 @@ }, "property": { "type": "Identifier", - "start": 3237, - "end": 3246, + "start": 3227, + "end": 3236, "loc": { "start": { "line": 147, @@ -9105,8 +9035,8 @@ }, "right": { "type": "MemberExpression", - "start": 3249, - "end": 3263, + "start": 3239, + "end": 3253, "loc": { "start": { "line": 147, @@ -9119,8 +9049,8 @@ }, "object": { "type": "ThisExpression", - "start": 3249, - "end": 3253, + "start": 3239, + "end": 3243, "loc": { "start": { "line": 147, @@ -9134,8 +9064,8 @@ }, "property": { "type": "Identifier", - "start": 3254, - "end": 3263, + "start": 3244, + "end": 3253, "loc": { "start": { "line": 147, @@ -9158,12 +9088,15 @@ } } ] - } + }, + "name": "_", + "leadingComments": [], + "trailingComments": [] }, { "type": "ExpressionStatement", - "start": 3272, - "end": 3425, + "start": 3262, + "end": 3415, "loc": { "start": { "line": 151, @@ -9176,8 +9109,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 3272, - "end": 3424, + "start": 3262, + "end": 3414, "loc": { "start": { "line": 151, @@ -9191,8 +9124,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 3272, - "end": 3284, + "start": 3262, + "end": 3274, "loc": { "start": { "line": 151, @@ -9205,8 +9138,8 @@ }, "object": { "type": "Identifier", - "start": 3272, - "end": 3277, + "start": 3262, + "end": 3267, "loc": { "start": { "line": 151, @@ -9222,8 +9155,8 @@ }, "property": { "type": "Identifier", - "start": 3278, - "end": 3284, + "start": 3268, + "end": 3274, "loc": { "start": { "line": 151, @@ -9241,8 +9174,8 @@ }, "right": { "type": "ArrayExpression", - "start": 3287, - "end": 3424, + "start": 3277, + "end": 3414, "loc": { "start": { "line": 151, @@ -9256,8 +9189,8 @@ "elements": [ { "type": "MemberExpression", - "start": 3291, - "end": 3308, + "start": 3281, + "end": 3298, "loc": { "start": { "line": 152, @@ -9270,8 +9203,8 @@ }, "object": { "type": "Identifier", - "start": 3291, - "end": 3301, + "start": 3281, + "end": 3291, "loc": { "start": { "line": 152, @@ -9287,8 +9220,8 @@ }, "property": { "type": "Identifier", - "start": 3302, - "end": 3308, + "start": 3292, + "end": 3298, "loc": { "start": { "line": 152, @@ -9306,8 +9239,8 @@ }, { "type": "MemberExpression", - "start": 3312, - "end": 3329, + "start": 3302, + "end": 3319, "loc": { "start": { "line": 153, @@ -9320,8 +9253,8 @@ }, "object": { "type": "Identifier", - "start": 3312, - "end": 3322, + "start": 3302, + "end": 3312, "loc": { "start": { "line": 153, @@ -9337,8 +9270,8 @@ }, "property": { "type": "Identifier", - "start": 3323, - "end": 3329, + "start": 3313, + "end": 3319, "loc": { "start": { "line": 153, @@ -9356,8 +9289,8 @@ }, { "type": "MemberExpression", - "start": 3333, - "end": 3349, + "start": 3323, + "end": 3339, "loc": { "start": { "line": 154, @@ -9370,8 +9303,8 @@ }, "object": { "type": "Identifier", - "start": 3333, - "end": 3343, + "start": 3323, + "end": 3333, "loc": { "start": { "line": 154, @@ -9387,8 +9320,8 @@ }, "property": { "type": "Identifier", - "start": 3344, - "end": 3349, + "start": 3334, + "end": 3339, "loc": { "start": { "line": 154, @@ -9406,8 +9339,8 @@ }, { "type": "MemberExpression", - "start": 3353, - "end": 3368, + "start": 3343, + "end": 3358, "loc": { "start": { "line": 155, @@ -9420,8 +9353,8 @@ }, "object": { "type": "Identifier", - "start": 3353, - "end": 3363, + "start": 3343, + "end": 3353, "loc": { "start": { "line": 155, @@ -9437,8 +9370,8 @@ }, "property": { "type": "Identifier", - "start": 3364, - "end": 3368, + "start": 3354, + "end": 3358, "loc": { "start": { "line": 155, @@ -9456,8 +9389,8 @@ }, { "type": "MemberExpression", - "start": 3372, - "end": 3385, + "start": 3362, + "end": 3375, "loc": { "start": { "line": 156, @@ -9470,8 +9403,8 @@ }, "object": { "type": "Identifier", - "start": 3372, - "end": 3382, + "start": 3362, + "end": 3372, "loc": { "start": { "line": 156, @@ -9487,8 +9420,8 @@ }, "property": { "type": "Identifier", - "start": 3383, - "end": 3385, + "start": 3373, + "end": 3375, "loc": { "start": { "line": 156, @@ -9506,8 +9439,8 @@ }, { "type": "MemberExpression", - "start": 3389, - "end": 3402, + "start": 3379, + "end": 3392, "loc": { "start": { "line": 157, @@ -9520,8 +9453,8 @@ }, "object": { "type": "Identifier", - "start": 3389, - "end": 3399, + "start": 3379, + "end": 3389, "loc": { "start": { "line": 157, @@ -9537,8 +9470,8 @@ }, "property": { "type": "Identifier", - "start": 3400, - "end": 3402, + "start": 3390, + "end": 3392, "loc": { "start": { "line": 157, @@ -9556,8 +9489,8 @@ }, { "type": "MemberExpression", - "start": 3406, - "end": 3422, + "start": 3396, + "end": 3412, "loc": { "start": { "line": 158, @@ -9570,8 +9503,8 @@ }, "object": { "type": "Identifier", - "start": 3406, - "end": 3416, + "start": 3396, + "end": 3406, "loc": { "start": { "line": 158, @@ -9587,8 +9520,8 @@ }, "property": { "type": "Identifier", - "start": 3417, - "end": 3422, + "start": 3407, + "end": 3412, "loc": { "start": { "line": 158, @@ -9610,8 +9543,8 @@ }, { "type": "ExpressionStatement", - "start": 3427, - "end": 3460, + "start": 3417, + "end": 3450, "loc": { "start": { "line": 161, @@ -9624,8 +9557,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 3427, - "end": 3459, + "start": 3417, + "end": 3449, "loc": { "start": { "line": 161, @@ -9639,8 +9572,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 3427, - "end": 3439, + "start": 3417, + "end": 3429, "loc": { "start": { "line": 161, @@ -9653,8 +9586,8 @@ }, "object": { "type": "Identifier", - "start": 3427, - "end": 3432, + "start": 3417, + "end": 3422, "loc": { "start": { "line": 161, @@ -9670,8 +9603,8 @@ }, "property": { "type": "Identifier", - "start": 3433, - "end": 3439, + "start": 3423, + "end": 3429, "loc": { "start": { "line": 161, @@ -9689,8 +9622,8 @@ }, "right": { "type": "MemberExpression", - "start": 3442, - "end": 3459, + "start": 3432, + "end": 3449, "loc": { "start": { "line": 161, @@ -9703,8 +9636,8 @@ }, "object": { "type": "Identifier", - "start": 3442, - "end": 3452, + "start": 3432, + "end": 3442, "loc": { "start": { "line": 161, @@ -9720,8 +9653,8 @@ }, "property": { "type": "Identifier", - "start": 3453, - "end": 3459, + "start": 3443, + "end": 3449, "loc": { "start": { "line": 161, @@ -9741,8 +9674,8 @@ }, { "type": "ExpressionStatement", - "start": 3461, - "end": 3496, + "start": 3451, + "end": 3486, "loc": { "start": { "line": 162, @@ -9755,8 +9688,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 3461, - "end": 3495, + "start": 3451, + "end": 3485, "loc": { "start": { "line": 162, @@ -9770,8 +9703,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 3461, - "end": 3474, + "start": 3451, + "end": 3464, "loc": { "start": { "line": 162, @@ -9784,8 +9717,8 @@ }, "object": { "type": "Identifier", - "start": 3461, - "end": 3466, + "start": 3451, + "end": 3456, "loc": { "start": { "line": 162, @@ -9801,8 +9734,8 @@ }, "property": { "type": "Identifier", - "start": 3467, - "end": 3474, + "start": 3457, + "end": 3464, "loc": { "start": { "line": 162, @@ -9820,8 +9753,8 @@ }, "right": { "type": "MemberExpression", - "start": 3477, - "end": 3495, + "start": 3467, + "end": 3485, "loc": { "start": { "line": 162, @@ -9834,8 +9767,8 @@ }, "object": { "type": "Identifier", - "start": 3477, - "end": 3487, + "start": 3467, + "end": 3477, "loc": { "start": { "line": 162, @@ -9851,8 +9784,8 @@ }, "property": { "type": "Identifier", - "start": 3488, - "end": 3495, + "start": 3478, + "end": 3485, "loc": { "start": { "line": 162, @@ -9871,173 +9804,9033 @@ } }, { - "type": "ExpressionStatement", - "start": 3498, - "end": 3527, + "type": "ExportNamedDeclaration", + "start": 3488, + "end": 3505, "loc": { "start": { "line": 164, "column": 0 }, "end": { - "line": 166, - "column": 2 + "line": 164, + "column": 17 } }, - "expression": { - "type": "AssignmentExpression", - "start": 3498, - "end": 3526, - "loc": { - "start": { - "line": 164, - "column": 0 - }, - "end": { - "line": 166, - "column": 1 - } - }, - "operator": "=", - "left": { - "type": "MemberExpression", - "start": 3498, - "end": 3512, + "declaration": null, + "specifiers": [ + { + "type": "ExportSpecifier", + "start": 3497, + "end": 3502, "loc": { "start": { "line": 164, - "column": 0 + "column": 9 }, "end": { "line": 164, "column": 14 } }, - "object": { + "local": { "type": "Identifier", - "start": 3498, - "end": 3504, + "start": 3497, + "end": 3502, "loc": { "start": { "line": 164, - "column": 0 + "column": 9 }, "end": { "line": 164, - "column": 6 + "column": 14 }, - "identifierName": "module" + "identifierName": "Lexer" }, - "name": "module" + "name": "Lexer" }, - "property": { + "exported": { "type": "Identifier", - "start": 3505, - "end": 3512, + "start": 3497, + "end": 3502, "loc": { "start": { "line": 164, - "column": 7 + "column": 9 }, "end": { "line": 164, "column": 14 }, - "identifierName": "exports" + "identifierName": "Lexer" + }, + "name": "Lexer" + } + } + ], + "source": null + }, + { + "type": "ExportNamedDeclaration", + "start": 3488, + "end": 3505, + "loc": { + "start": { + "line": 164, + "column": 0 + }, + "end": { + "line": 164, + "column": 17 + } + }, + "declaration": { + "type": "ClassDeclaration", + "start": 64, + "end": 3260, + "loc": { + "start": { + "line": 4, + "column": 0 + }, + "end": { + "line": 149, + "column": 1 + } + }, + "id": { + "type": "Identifier", + "start": 70, + "end": 75, + "loc": { + "start": { + "line": 4, + "column": 6 + }, + "end": { + "line": 4, + "column": 11 }, - "name": "exports" + "identifierName": "Lexer" }, - "computed": false + "name": "Lexer" }, - "right": { - "type": "ObjectExpression", - "start": 3515, - "end": 3526, + "superClass": null, + "body": { + "type": "ClassBody", + "start": 76, + "end": 3260, "loc": { "start": { - "line": 164, - "column": 17 + "line": 4, + "column": 12 }, "end": { - "line": 166, + "line": 149, "column": 1 } }, - "properties": [ + "body": [ { - "type": "ObjectProperty", - "start": 3519, - "end": 3524, + "type": "ClassMethod", + "start": 80, + "end": 142, "loc": { "start": { - "line": 165, + "line": 5, "column": 2 }, "end": { - "line": 165, - "column": 7 + "line": 8, + "column": 3 } }, - "method": false, - "shorthand": true, + "static": false, "computed": false, "key": { "type": "Identifier", - "start": 3519, - "end": 3524, + "start": 80, + "end": 91, "loc": { "start": { - "line": 165, + "line": 5, "column": 2 }, "end": { - "line": 165, - "column": 7 + "line": 5, + "column": 13 }, - "identifierName": "Lexer" + "identifierName": "constructor" }, - "name": "Lexer" + "name": "constructor" }, - "value": { - "type": "Identifier", - "start": 3519, - "end": 3524, + "kind": "constructor", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [], + "body": { + "type": "BlockStatement", + "start": 94, + "end": 142, "loc": { "start": { - "line": 165, - "column": 2 + "line": 5, + "column": 16 }, "end": { - "line": 165, - "column": 7 - }, - "identifierName": "Lexer" + "line": 8, + "column": 3 + } }, - "name": "Lexer" - }, - "extra": { - "shorthand": true - } - } - ] - } - } - } - ], - "directives": [] - }, - "comments": [ - { - "type": "CommentLine", - "value": " Update lastIndex property for each expression used", - "start": 1263, - "end": 1316, - "loc": { - "start": { - "line": 73, - "column": 4 - }, - "end": { + "body": [ + { + "type": "ExpressionStatement", + "start": 100, + "end": 119, + "loc": { + "start": { + "line": 6, + "column": 4 + }, + "end": { + "line": 6, + "column": 23 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 100, + "end": 118, + "loc": { + "start": { + "line": 6, + "column": 4 + }, + "end": { + "line": 6, + "column": 22 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 100, + "end": 114, + "loc": { + "start": { + "line": 6, + "column": 4 + }, + "end": { + "line": 6, + "column": 18 + } + }, + "object": { + "type": "ThisExpression", + "start": 100, + "end": 104, + "loc": { + "start": { + "line": 6, + "column": 4 + }, + "end": { + "line": 6, + "column": 8 + } + } + }, + "property": { + "type": "Identifier", + "start": 105, + "end": 114, + "loc": { + "start": { + "line": 6, + "column": 9 + }, + "end": { + "line": 6, + "column": 18 + }, + "identifierName": "lastIndex" + }, + "name": "lastIndex" + }, + "computed": false + }, + "right": { + "type": "NumericLiteral", + "start": 117, + "end": 118, + "loc": { + "start": { + "line": 6, + "column": 21 + }, + "end": { + "line": 6, + "column": 22 + } + }, + "extra": { + "rawValue": 0, + "raw": "0" + }, + "value": 0 + } + } + }, + { + "type": "ExpressionStatement", + "start": 124, + "end": 138, + "loc": { + "start": { + "line": 7, + "column": 4 + }, + "end": { + "line": 7, + "column": 18 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 124, + "end": 137, + "loc": { + "start": { + "line": 7, + "column": 4 + }, + "end": { + "line": 7, + "column": 17 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 124, + "end": 133, + "loc": { + "start": { + "line": 7, + "column": 4 + }, + "end": { + "line": 7, + "column": 13 + } + }, + "object": { + "type": "ThisExpression", + "start": 124, + "end": 128, + "loc": { + "start": { + "line": 7, + "column": 4 + }, + "end": { + "line": 7, + "column": 8 + } + } + }, + "property": { + "type": "Identifier", + "start": 129, + "end": 133, + "loc": { + "start": { + "line": 7, + "column": 9 + }, + "end": { + "line": 7, + "column": 13 + }, + "identifierName": "line" + }, + "name": "line" + }, + "computed": false + }, + "right": { + "type": "NumericLiteral", + "start": 136, + "end": 137, + "loc": { + "start": { + "line": 7, + "column": 16 + }, + "end": { + "line": 7, + "column": 17 + } + }, + "extra": { + "rawValue": 1, + "raw": "1" + }, + "value": 1 + } + } + } + ], + "directives": [] + } + }, + { + "type": "ClassMethod", + "start": 146, + "end": 261, + "loc": { + "start": { + "line": 10, + "column": 2 + }, + "end": { + "line": 17, + "column": 3 + } + }, + "static": false, + "computed": false, + "key": { + "type": "Identifier", + "start": 146, + "end": 156, + "loc": { + "start": { + "line": 10, + "column": 2 + }, + "end": { + "line": 10, + "column": 12 + }, + "identifierName": "setProgram" + }, + "name": "setProgram" + }, + "kind": "method", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 157, + "end": 164, + "loc": { + "start": { + "line": 10, + "column": 13 + }, + "end": { + "line": 10, + "column": 20 + }, + "identifierName": "program" + }, + "name": "program" + } + ], + "body": { + "type": "BlockStatement", + "start": 166, + "end": 261, + "loc": { + "start": { + "line": 10, + "column": 22 + }, + "end": { + "line": 17, + "column": 3 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 172, + "end": 195, + "loc": { + "start": { + "line": 11, + "column": 4 + }, + "end": { + "line": 11, + "column": 27 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 172, + "end": 194, + "loc": { + "start": { + "line": 11, + "column": 4 + }, + "end": { + "line": 11, + "column": 26 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 172, + "end": 184, + "loc": { + "start": { + "line": 11, + "column": 4 + }, + "end": { + "line": 11, + "column": 16 + } + }, + "object": { + "type": "ThisExpression", + "start": 172, + "end": 176, + "loc": { + "start": { + "line": 11, + "column": 4 + }, + "end": { + "line": 11, + "column": 8 + } + } + }, + "property": { + "type": "Identifier", + "start": 177, + "end": 184, + "loc": { + "start": { + "line": 11, + "column": 9 + }, + "end": { + "line": 11, + "column": 16 + }, + "identifierName": "program" + }, + "name": "program" + }, + "computed": false + }, + "right": { + "type": "Identifier", + "start": 187, + "end": 194, + "loc": { + "start": { + "line": 11, + "column": 19 + }, + "end": { + "line": 11, + "column": 26 + }, + "identifierName": "program" + }, + "name": "program" + } + } + }, + { + "type": "ExpressionStatement", + "start": 201, + "end": 220, + "loc": { + "start": { + "line": 13, + "column": 4 + }, + "end": { + "line": 13, + "column": 23 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 201, + "end": 219, + "loc": { + "start": { + "line": 13, + "column": 4 + }, + "end": { + "line": 13, + "column": 22 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 201, + "end": 215, + "loc": { + "start": { + "line": 13, + "column": 4 + }, + "end": { + "line": 13, + "column": 18 + } + }, + "object": { + "type": "ThisExpression", + "start": 201, + "end": 205, + "loc": { + "start": { + "line": 13, + "column": 4 + }, + "end": { + "line": 13, + "column": 8 + } + } + }, + "property": { + "type": "Identifier", + "start": 206, + "end": 215, + "loc": { + "start": { + "line": 13, + "column": 9 + }, + "end": { + "line": 13, + "column": 18 + }, + "identifierName": "lastIndex" + }, + "name": "lastIndex" + }, + "computed": false + }, + "right": { + "type": "NumericLiteral", + "start": 218, + "end": 219, + "loc": { + "start": { + "line": 13, + "column": 21 + }, + "end": { + "line": 13, + "column": 22 + } + }, + "extra": { + "rawValue": 0, + "raw": "0" + }, + "value": 0 + } + } + }, + { + "type": "ExpressionStatement", + "start": 225, + "end": 239, + "loc": { + "start": { + "line": 14, + "column": 4 + }, + "end": { + "line": 14, + "column": 18 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 225, + "end": 238, + "loc": { + "start": { + "line": 14, + "column": 4 + }, + "end": { + "line": 14, + "column": 17 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 225, + "end": 234, + "loc": { + "start": { + "line": 14, + "column": 4 + }, + "end": { + "line": 14, + "column": 13 + } + }, + "object": { + "type": "ThisExpression", + "start": 225, + "end": 229, + "loc": { + "start": { + "line": 14, + "column": 4 + }, + "end": { + "line": 14, + "column": 8 + } + } + }, + "property": { + "type": "Identifier", + "start": 230, + "end": 234, + "loc": { + "start": { + "line": 14, + "column": 9 + }, + "end": { + "line": 14, + "column": 13 + }, + "identifierName": "line" + }, + "name": "line" + }, + "computed": false + }, + "right": { + "type": "NumericLiteral", + "start": 237, + "end": 238, + "loc": { + "start": { + "line": 14, + "column": 16 + }, + "end": { + "line": 14, + "column": 17 + } + }, + "extra": { + "rawValue": 1, + "raw": "1" + }, + "value": 1 + } + } + }, + { + "type": "ReturnStatement", + "start": 245, + "end": 257, + "loc": { + "start": { + "line": 16, + "column": 4 + }, + "end": { + "line": 16, + "column": 16 + } + }, + "argument": { + "type": "ThisExpression", + "start": 252, + "end": 256, + "loc": { + "start": { + "line": 16, + "column": 11 + }, + "end": { + "line": 16, + "column": 15 + } + } + } + } + ], + "directives": [] + } + }, + { + "type": "ClassMethod", + "start": 265, + "end": 349, + "loc": { + "start": { + "line": 19, + "column": 2 + }, + "end": { + "line": 23, + "column": 3 + } + }, + "static": false, + "computed": false, + "key": { + "type": "Identifier", + "start": 265, + "end": 273, + "loc": { + "start": { + "line": 19, + "column": 2 + }, + "end": { + "line": 19, + "column": 10 + }, + "identifierName": "tokenize" + }, + "name": "tokenize" + }, + "kind": "method", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 274, + "end": 281, + "loc": { + "start": { + "line": 19, + "column": 11 + }, + "end": { + "line": 19, + "column": 18 + }, + "identifierName": "program" + }, + "name": "program" + } + ], + "body": { + "type": "BlockStatement", + "start": 283, + "end": 349, + "loc": { + "start": { + "line": 19, + "column": 20 + }, + "end": { + "line": 23, + "column": 3 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 289, + "end": 314, + "loc": { + "start": { + "line": 20, + "column": 4 + }, + "end": { + "line": 20, + "column": 29 + } + }, + "expression": { + "type": "CallExpression", + "start": 289, + "end": 313, + "loc": { + "start": { + "line": 20, + "column": 4 + }, + "end": { + "line": 20, + "column": 28 + } + }, + "callee": { + "type": "MemberExpression", + "start": 289, + "end": 304, + "loc": { + "start": { + "line": 20, + "column": 4 + }, + "end": { + "line": 20, + "column": 19 + } + }, + "object": { + "type": "ThisExpression", + "start": 289, + "end": 293, + "loc": { + "start": { + "line": 20, + "column": 4 + }, + "end": { + "line": 20, + "column": 8 + } + } + }, + "property": { + "type": "Identifier", + "start": 294, + "end": 304, + "loc": { + "start": { + "line": 20, + "column": 9 + }, + "end": { + "line": 20, + "column": 19 + }, + "identifierName": "setProgram" + }, + "name": "setProgram" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 305, + "end": 312, + "loc": { + "start": { + "line": 20, + "column": 20 + }, + "end": { + "line": 20, + "column": 27 + }, + "identifierName": "program" + }, + "name": "program" + } + ] + } + }, + { + "type": "ReturnStatement", + "start": 320, + "end": 345, + "loc": { + "start": { + "line": 22, + "column": 4 + }, + "end": { + "line": 22, + "column": 29 + } + }, + "argument": { + "type": "CallExpression", + "start": 327, + "end": 344, + "loc": { + "start": { + "line": 22, + "column": 11 + }, + "end": { + "line": 22, + "column": 28 + } + }, + "callee": { + "type": "MemberExpression", + "start": 327, + "end": 342, + "loc": { + "start": { + "line": 22, + "column": 11 + }, + "end": { + "line": 22, + "column": 26 + } + }, + "object": { + "type": "ThisExpression", + "start": 327, + "end": 331, + "loc": { + "start": { + "line": 22, + "column": 11 + }, + "end": { + "line": 22, + "column": 15 + } + } + }, + "property": { + "type": "Identifier", + "start": 332, + "end": 342, + "loc": { + "start": { + "line": 22, + "column": 16 + }, + "end": { + "line": 22, + "column": 26 + }, + "identifierName": "_getTokens" + }, + "name": "_getTokens" + }, + "computed": false + }, + "arguments": [] + } + } + ], + "directives": [] + } + }, + { + "type": "ClassMethod", + "start": 353, + "end": 425, + "loc": { + "start": { + "line": 25, + "column": 2 + }, + "end": { + "line": 27, + "column": 3 + } + }, + "static": true, + "computed": false, + "key": { + "type": "Identifier", + "start": 360, + "end": 368, + "loc": { + "start": { + "line": 25, + "column": 9 + }, + "end": { + "line": 25, + "column": 17 + }, + "identifierName": "tokenize" + }, + "name": "tokenize" + }, + "kind": "method", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 369, + "end": 376, + "loc": { + "start": { + "line": 25, + "column": 18 + }, + "end": { + "line": 25, + "column": 25 + }, + "identifierName": "program" + }, + "name": "program" + } + ], + "body": { + "type": "BlockStatement", + "start": 378, + "end": 425, + "loc": { + "start": { + "line": 25, + "column": 27 + }, + "end": { + "line": 27, + "column": 3 + } + }, + "body": [ + { + "type": "ReturnStatement", + "start": 384, + "end": 421, + "loc": { + "start": { + "line": 26, + "column": 4 + }, + "end": { + "line": 26, + "column": 41 + } + }, + "argument": { + "type": "CallExpression", + "start": 391, + "end": 420, + "loc": { + "start": { + "line": 26, + "column": 11 + }, + "end": { + "line": 26, + "column": 40 + } + }, + "callee": { + "type": "MemberExpression", + "start": 391, + "end": 411, + "loc": { + "start": { + "line": 26, + "column": 11 + }, + "end": { + "line": 26, + "column": 31 + } + }, + "object": { + "type": "NewExpression", + "start": 391, + "end": 402, + "loc": { + "start": { + "line": 26, + "column": 11 + }, + "end": { + "line": 26, + "column": 22 + } + }, + "callee": { + "type": "Identifier", + "start": 395, + "end": 400, + "loc": { + "start": { + "line": 26, + "column": 15 + }, + "end": { + "line": 26, + "column": 20 + }, + "identifierName": "Lexer" + }, + "name": "Lexer" + }, + "arguments": [] + }, + "property": { + "type": "Identifier", + "start": 403, + "end": 411, + "loc": { + "start": { + "line": 26, + "column": 23 + }, + "end": { + "line": 26, + "column": 31 + }, + "identifierName": "tokenize" + }, + "name": "tokenize" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 412, + "end": 419, + "loc": { + "start": { + "line": 26, + "column": 32 + }, + "end": { + "line": 26, + "column": 39 + }, + "identifierName": "program" + }, + "name": "program" + } + ] + } + } + ], + "directives": [] + } + }, + { + "type": "ClassMethod", + "start": 429, + "end": 544, + "loc": { + "start": { + "line": 29, + "column": 2 + }, + "end": { + "line": 33, + "column": 3 + } + }, + "static": false, + "computed": false, + "key": { + "type": "Identifier", + "start": 429, + "end": 445, + "loc": { + "start": { + "line": 29, + "column": 2 + }, + "end": { + "line": 29, + "column": 18 + }, + "identifierName": "tokenizeFromFile" + }, + "name": "tokenizeFromFile" + }, + "kind": "method", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 446, + "end": 450, + "loc": { + "start": { + "line": 29, + "column": 19 + }, + "end": { + "line": 29, + "column": 23 + }, + "identifierName": "file" + }, + "name": "file" + } + ], + "body": { + "type": "BlockStatement", + "start": 452, + "end": 544, + "loc": { + "start": { + "line": 29, + "column": 25 + }, + "end": { + "line": 33, + "column": 3 + } + }, + "body": [ + { + "type": "VariableDeclaration", + "start": 458, + "end": 504, + "loc": { + "start": { + "line": 30, + "column": 4 + }, + "end": { + "line": 30, + "column": 50 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 464, + "end": 503, + "loc": { + "start": { + "line": 30, + "column": 10 + }, + "end": { + "line": 30, + "column": 49 + } + }, + "id": { + "type": "Identifier", + "start": 464, + "end": 471, + "loc": { + "start": { + "line": 30, + "column": 10 + }, + "end": { + "line": 30, + "column": 17 + }, + "identifierName": "program" + }, + "name": "program" + }, + "init": { + "type": "CallExpression", + "start": 474, + "end": 503, + "loc": { + "start": { + "line": 30, + "column": 20 + }, + "end": { + "line": 30, + "column": 49 + } + }, + "callee": { + "type": "MemberExpression", + "start": 474, + "end": 489, + "loc": { + "start": { + "line": 30, + "column": 20 + }, + "end": { + "line": 30, + "column": 35 + } + }, + "object": { + "type": "Identifier", + "start": 474, + "end": 476, + "loc": { + "start": { + "line": 30, + "column": 20 + }, + "end": { + "line": 30, + "column": 22 + }, + "identifierName": "fs" + }, + "name": "fs" + }, + "property": { + "type": "Identifier", + "start": 477, + "end": 489, + "loc": { + "start": { + "line": 30, + "column": 23 + }, + "end": { + "line": 30, + "column": 35 + }, + "identifierName": "readFileSync" + }, + "name": "readFileSync" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 490, + "end": 494, + "loc": { + "start": { + "line": 30, + "column": 36 + }, + "end": { + "line": 30, + "column": 40 + }, + "identifierName": "file" + }, + "name": "file" + }, + { + "type": "StringLiteral", + "start": 496, + "end": 502, + "loc": { + "start": { + "line": 30, + "column": 42 + }, + "end": { + "line": 30, + "column": 48 + } + }, + "extra": { + "rawValue": "utf8", + "raw": "\"utf8\"" + }, + "value": "utf8" + } + ] + } + } + ], + "kind": "const" + }, + { + "type": "ReturnStatement", + "start": 510, + "end": 540, + "loc": { + "start": { + "line": 32, + "column": 4 + }, + "end": { + "line": 32, + "column": 34 + } + }, + "argument": { + "type": "CallExpression", + "start": 517, + "end": 539, + "loc": { + "start": { + "line": 32, + "column": 11 + }, + "end": { + "line": 32, + "column": 33 + } + }, + "callee": { + "type": "MemberExpression", + "start": 517, + "end": 530, + "loc": { + "start": { + "line": 32, + "column": 11 + }, + "end": { + "line": 32, + "column": 24 + } + }, + "object": { + "type": "ThisExpression", + "start": 517, + "end": 521, + "loc": { + "start": { + "line": 32, + "column": 11 + }, + "end": { + "line": 32, + "column": 15 + } + } + }, + "property": { + "type": "Identifier", + "start": 522, + "end": 530, + "loc": { + "start": { + "line": 32, + "column": 16 + }, + "end": { + "line": 32, + "column": 24 + }, + "identifierName": "tokenize" + }, + "name": "tokenize" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 531, + "end": 538, + "loc": { + "start": { + "line": 32, + "column": 25 + }, + "end": { + "line": 32, + "column": 32 + }, + "identifierName": "program" + }, + "name": "program" + } + ] + } + } + ], + "directives": [] + } + }, + { + "type": "ClassMethod", + "start": 548, + "end": 630, + "loc": { + "start": { + "line": 35, + "column": 2 + }, + "end": { + "line": 37, + "column": 3 + } + }, + "static": true, + "computed": false, + "key": { + "type": "Identifier", + "start": 555, + "end": 571, + "loc": { + "start": { + "line": 35, + "column": 9 + }, + "end": { + "line": 35, + "column": 25 + }, + "identifierName": "tokenizeFromFile" + }, + "name": "tokenizeFromFile" + }, + "kind": "method", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 572, + "end": 576, + "loc": { + "start": { + "line": 35, + "column": 26 + }, + "end": { + "line": 35, + "column": 30 + }, + "identifierName": "file" + }, + "name": "file" + } + ], + "body": { + "type": "BlockStatement", + "start": 578, + "end": 630, + "loc": { + "start": { + "line": 35, + "column": 32 + }, + "end": { + "line": 37, + "column": 3 + } + }, + "body": [ + { + "type": "ReturnStatement", + "start": 584, + "end": 626, + "loc": { + "start": { + "line": 36, + "column": 4 + }, + "end": { + "line": 36, + "column": 46 + } + }, + "argument": { + "type": "CallExpression", + "start": 591, + "end": 625, + "loc": { + "start": { + "line": 36, + "column": 11 + }, + "end": { + "line": 36, + "column": 45 + } + }, + "callee": { + "type": "MemberExpression", + "start": 591, + "end": 619, + "loc": { + "start": { + "line": 36, + "column": 11 + }, + "end": { + "line": 36, + "column": 39 + } + }, + "object": { + "type": "NewExpression", + "start": 591, + "end": 602, + "loc": { + "start": { + "line": 36, + "column": 11 + }, + "end": { + "line": 36, + "column": 22 + } + }, + "callee": { + "type": "Identifier", + "start": 595, + "end": 600, + "loc": { + "start": { + "line": 36, + "column": 15 + }, + "end": { + "line": 36, + "column": 20 + }, + "identifierName": "Lexer" + }, + "name": "Lexer" + }, + "arguments": [] + }, + "property": { + "type": "Identifier", + "start": 603, + "end": 619, + "loc": { + "start": { + "line": 36, + "column": 23 + }, + "end": { + "line": 36, + "column": 39 + }, + "identifierName": "tokenizeFromFile" + }, + "name": "tokenizeFromFile" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 620, + "end": 624, + "loc": { + "start": { + "line": 36, + "column": 40 + }, + "end": { + "line": 36, + "column": 44 + }, + "identifierName": "file" + }, + "name": "file" + } + ] + } + } + ], + "directives": [] + } + }, + { + "type": "ClassMethod", + "start": 634, + "end": 691, + "loc": { + "start": { + "line": 39, + "column": 2 + }, + "end": { + "line": 41, + "column": 3 + } + }, + "static": true, + "computed": false, + "key": { + "type": "Identifier", + "start": 641, + "end": 650, + "loc": { + "start": { + "line": 39, + "column": 9 + }, + "end": { + "line": 39, + "column": 18 + }, + "identifierName": "setTokens" + }, + "name": "setTokens" + }, + "kind": "method", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 651, + "end": 657, + "loc": { + "start": { + "line": 39, + "column": 19 + }, + "end": { + "line": 39, + "column": 25 + }, + "identifierName": "tokens" + }, + "name": "tokens" + } + ], + "body": { + "type": "BlockStatement", + "start": 659, + "end": 691, + "loc": { + "start": { + "line": 39, + "column": 27 + }, + "end": { + "line": 41, + "column": 3 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 665, + "end": 687, + "loc": { + "start": { + "line": 40, + "column": 4 + }, + "end": { + "line": 40, + "column": 26 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 665, + "end": 686, + "loc": { + "start": { + "line": 40, + "column": 4 + }, + "end": { + "line": 40, + "column": 25 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 665, + "end": 677, + "loc": { + "start": { + "line": 40, + "column": 4 + }, + "end": { + "line": 40, + "column": 16 + } + }, + "object": { + "type": "Identifier", + "start": 665, + "end": 670, + "loc": { + "start": { + "line": 40, + "column": 4 + }, + "end": { + "line": 40, + "column": 9 + }, + "identifierName": "Lexer" + }, + "name": "Lexer" + }, + "property": { + "type": "Identifier", + "start": 671, + "end": 677, + "loc": { + "start": { + "line": 40, + "column": 10 + }, + "end": { + "line": 40, + "column": 16 + }, + "identifierName": "TOKENS" + }, + "name": "TOKENS" + }, + "computed": false + }, + "right": { + "type": "Identifier", + "start": 680, + "end": 686, + "loc": { + "start": { + "line": 40, + "column": 19 + }, + "end": { + "line": 40, + "column": 25 + }, + "identifierName": "tokens" + }, + "name": "tokens" + } + } + } + ], + "directives": [] + } + }, + { + "type": "ClassMethod", + "start": 695, + "end": 985, + "loc": { + "start": { + "line": 43, + "column": 2 + }, + "end": { + "line": 57, + "column": 3 + } + }, + "static": false, + "computed": false, + "key": { + "type": "Identifier", + "start": 695, + "end": 708, + "loc": { + "start": { + "line": 43, + "column": 2 + }, + "end": { + "line": 43, + "column": 15 + }, + "identifierName": "getParBalance" + }, + "name": "getParBalance" + }, + "kind": "method", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 709, + "end": 716, + "loc": { + "start": { + "line": 43, + "column": 16 + }, + "end": { + "line": 43, + "column": 23 + }, + "identifierName": "program" + }, + "name": "program" + } + ], + "body": { + "type": "BlockStatement", + "start": 718, + "end": 985, + "loc": { + "start": { + "line": 43, + "column": 25 + }, + "end": { + "line": 57, + "column": 3 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 724, + "end": 749, + "loc": { + "start": { + "line": 44, + "column": 4 + }, + "end": { + "line": 44, + "column": 29 + } + }, + "expression": { + "type": "CallExpression", + "start": 724, + "end": 748, + "loc": { + "start": { + "line": 44, + "column": 4 + }, + "end": { + "line": 44, + "column": 28 + } + }, + "callee": { + "type": "MemberExpression", + "start": 724, + "end": 739, + "loc": { + "start": { + "line": 44, + "column": 4 + }, + "end": { + "line": 44, + "column": 19 + } + }, + "object": { + "type": "ThisExpression", + "start": 724, + "end": 728, + "loc": { + "start": { + "line": 44, + "column": 4 + }, + "end": { + "line": 44, + "column": 8 + } + } + }, + "property": { + "type": "Identifier", + "start": 729, + "end": 739, + "loc": { + "start": { + "line": 44, + "column": 9 + }, + "end": { + "line": 44, + "column": 19 + }, + "identifierName": "setProgram" + }, + "name": "setProgram" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 740, + "end": 747, + "loc": { + "start": { + "line": 44, + "column": 20 + }, + "end": { + "line": 44, + "column": 27 + }, + "identifierName": "program" + }, + "name": "program" + } + ] + } + }, + { + "type": "VariableDeclaration", + "start": 755, + "end": 769, + "loc": { + "start": { + "line": 46, + "column": 4 + }, + "end": { + "line": 46, + "column": 18 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 759, + "end": 768, + "loc": { + "start": { + "line": 46, + "column": 8 + }, + "end": { + "line": 46, + "column": 17 + } + }, + "id": { + "type": "Identifier", + "start": 759, + "end": 764, + "loc": { + "start": { + "line": 46, + "column": 8 + }, + "end": { + "line": 46, + "column": 13 + }, + "identifierName": "stack" + }, + "name": "stack" + }, + "init": { + "type": "NumericLiteral", + "start": 767, + "end": 768, + "loc": { + "start": { + "line": 46, + "column": 16 + }, + "end": { + "line": 46, + "column": 17 + } + }, + "extra": { + "rawValue": 0, + "raw": "0" + }, + "value": 0 + } + } + ], + "kind": "let" + }, + { + "type": "VariableDeclaration", + "start": 774, + "end": 807, + "loc": { + "start": { + "line": 47, + "column": 4 + }, + "end": { + "line": 47, + "column": 37 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 780, + "end": 806, + "loc": { + "start": { + "line": 47, + "column": 10 + }, + "end": { + "line": 47, + "column": 36 + } + }, + "id": { + "type": "Identifier", + "start": 780, + "end": 786, + "loc": { + "start": { + "line": 47, + "column": 10 + }, + "end": { + "line": 47, + "column": 16 + }, + "identifierName": "tokens" + }, + "name": "tokens" + }, + "init": { + "type": "CallExpression", + "start": 789, + "end": 806, + "loc": { + "start": { + "line": 47, + "column": 19 + }, + "end": { + "line": 47, + "column": 36 + } + }, + "callee": { + "type": "MemberExpression", + "start": 789, + "end": 804, + "loc": { + "start": { + "line": 47, + "column": 19 + }, + "end": { + "line": 47, + "column": 34 + } + }, + "object": { + "type": "ThisExpression", + "start": 789, + "end": 793, + "loc": { + "start": { + "line": 47, + "column": 19 + }, + "end": { + "line": 47, + "column": 23 + } + } + }, + "property": { + "type": "Identifier", + "start": 794, + "end": 804, + "loc": { + "start": { + "line": 47, + "column": 24 + }, + "end": { + "line": 47, + "column": 34 + }, + "identifierName": "_getTokens" + }, + "name": "_getTokens" + }, + "computed": false + }, + "arguments": [] + } + } + ], + "kind": "const" + }, + { + "type": "ForOfStatement", + "start": 812, + "end": 962, + "loc": { + "start": { + "line": 48, + "column": 4 + }, + "end": { + "line": 54, + "column": 5 + } + }, + "left": { + "type": "VariableDeclaration", + "start": 817, + "end": 828, + "loc": { + "start": { + "line": 48, + "column": 9 + }, + "end": { + "line": 48, + "column": 20 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 823, + "end": 828, + "loc": { + "start": { + "line": 48, + "column": 15 + }, + "end": { + "line": 48, + "column": 20 + } + }, + "id": { + "type": "Identifier", + "start": 823, + "end": 828, + "loc": { + "start": { + "line": 48, + "column": 15 + }, + "end": { + "line": 48, + "column": 20 + }, + "identifierName": "token" + }, + "name": "token" + }, + "init": null + } + ], + "kind": "const" + }, + "right": { + "type": "Identifier", + "start": 832, + "end": 838, + "loc": { + "start": { + "line": 48, + "column": 24 + }, + "end": { + "line": 48, + "column": 30 + }, + "identifierName": "tokens" + }, + "name": "tokens" + }, + "body": { + "type": "BlockStatement", + "start": 840, + "end": 962, + "loc": { + "start": { + "line": 48, + "column": 32 + }, + "end": { + "line": 54, + "column": 5 + } + }, + "body": [ + { + "type": "IfStatement", + "start": 848, + "end": 956, + "loc": { + "start": { + "line": 49, + "column": 6 + }, + "end": { + "line": 53, + "column": 7 + } + }, + "test": { + "type": "BinaryExpression", + "start": 852, + "end": 871, + "loc": { + "start": { + "line": 49, + "column": 10 + }, + "end": { + "line": 49, + "column": 29 + } + }, + "left": { + "type": "MemberExpression", + "start": 852, + "end": 862, + "loc": { + "start": { + "line": 49, + "column": 10 + }, + "end": { + "line": 49, + "column": 20 + } + }, + "object": { + "type": "Identifier", + "start": 852, + "end": 857, + "loc": { + "start": { + "line": 49, + "column": 10 + }, + "end": { + "line": 49, + "column": 15 + }, + "identifierName": "token" + }, + "name": "token" + }, + "property": { + "type": "Identifier", + "start": 858, + "end": 862, + "loc": { + "start": { + "line": 49, + "column": 16 + }, + "end": { + "line": 49, + "column": 20 + }, + "identifierName": "type" + }, + "name": "type" + }, + "computed": false + }, + "operator": "===", + "right": { + "type": "StringLiteral", + "start": 867, + "end": 871, + "loc": { + "start": { + "line": 49, + "column": 25 + }, + "end": { + "line": 49, + "column": 29 + } + }, + "extra": { + "rawValue": "LP", + "raw": "\"LP\"" + }, + "value": "LP" + } + }, + "consequent": { + "type": "BlockStatement", + "start": 873, + "end": 899, + "loc": { + "start": { + "line": 49, + "column": 31 + }, + "end": { + "line": 51, + "column": 7 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 883, + "end": 891, + "loc": { + "start": { + "line": 50, + "column": 8 + }, + "end": { + "line": 50, + "column": 16 + } + }, + "expression": { + "type": "UpdateExpression", + "start": 883, + "end": 890, + "loc": { + "start": { + "line": 50, + "column": 8 + }, + "end": { + "line": 50, + "column": 15 + } + }, + "operator": "++", + "prefix": true, + "argument": { + "type": "Identifier", + "start": 885, + "end": 890, + "loc": { + "start": { + "line": 50, + "column": 10 + }, + "end": { + "line": 50, + "column": 15 + }, + "identifierName": "stack" + }, + "name": "stack" + }, + "extra": { + "parenthesizedArgument": false + } + } + } + ], + "directives": [] + }, + "alternate": { + "type": "IfStatement", + "start": 905, + "end": 956, + "loc": { + "start": { + "line": 51, + "column": 13 + }, + "end": { + "line": 53, + "column": 7 + } + }, + "test": { + "type": "BinaryExpression", + "start": 909, + "end": 928, + "loc": { + "start": { + "line": 51, + "column": 17 + }, + "end": { + "line": 51, + "column": 36 + } + }, + "left": { + "type": "MemberExpression", + "start": 909, + "end": 919, + "loc": { + "start": { + "line": 51, + "column": 17 + }, + "end": { + "line": 51, + "column": 27 + } + }, + "object": { + "type": "Identifier", + "start": 909, + "end": 914, + "loc": { + "start": { + "line": 51, + "column": 17 + }, + "end": { + "line": 51, + "column": 22 + }, + "identifierName": "token" + }, + "name": "token" + }, + "property": { + "type": "Identifier", + "start": 915, + "end": 919, + "loc": { + "start": { + "line": 51, + "column": 23 + }, + "end": { + "line": 51, + "column": 27 + }, + "identifierName": "type" + }, + "name": "type" + }, + "computed": false + }, + "operator": "===", + "right": { + "type": "StringLiteral", + "start": 924, + "end": 928, + "loc": { + "start": { + "line": 51, + "column": 32 + }, + "end": { + "line": 51, + "column": 36 + } + }, + "extra": { + "rawValue": "RP", + "raw": "\"RP\"" + }, + "value": "RP" + } + }, + "consequent": { + "type": "BlockStatement", + "start": 930, + "end": 956, + "loc": { + "start": { + "line": 51, + "column": 38 + }, + "end": { + "line": 53, + "column": 7 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 940, + "end": 948, + "loc": { + "start": { + "line": 52, + "column": 8 + }, + "end": { + "line": 52, + "column": 16 + } + }, + "expression": { + "type": "UpdateExpression", + "start": 940, + "end": 947, + "loc": { + "start": { + "line": 52, + "column": 8 + }, + "end": { + "line": 52, + "column": 15 + } + }, + "operator": "--", + "prefix": true, + "argument": { + "type": "Identifier", + "start": 942, + "end": 947, + "loc": { + "start": { + "line": 52, + "column": 10 + }, + "end": { + "line": 52, + "column": 15 + }, + "identifierName": "stack" + }, + "name": "stack" + }, + "extra": { + "parenthesizedArgument": false + } + } + } + ], + "directives": [] + }, + "alternate": null + } + } + ], + "directives": [] + } + }, + { + "type": "ReturnStatement", + "start": 968, + "end": 981, + "loc": { + "start": { + "line": 56, + "column": 4 + }, + "end": { + "line": 56, + "column": 17 + } + }, + "argument": { + "type": "Identifier", + "start": 975, + "end": 980, + "loc": { + "start": { + "line": 56, + "column": 11 + }, + "end": { + "line": 56, + "column": 16 + }, + "identifierName": "stack" + }, + "name": "stack" + } + } + ], + "directives": [] + } + }, + { + "type": "ClassMethod", + "start": 989, + "end": 1231, + "loc": { + "start": { + "line": 59, + "column": 2 + }, + "end": { + "line": 70, + "column": 3 + } + }, + "static": false, + "computed": false, + "key": { + "type": "Identifier", + "start": 989, + "end": 999, + "loc": { + "start": { + "line": 59, + "column": 2 + }, + "end": { + "line": 59, + "column": 12 + }, + "identifierName": "_getTokens" + }, + "name": "_getTokens" + }, + "kind": "method", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [], + "body": { + "type": "BlockStatement", + "start": 1002, + "end": 1231, + "loc": { + "start": { + "line": 59, + "column": 15 + }, + "end": { + "line": 70, + "column": 3 + } + }, + "body": [ + { + "type": "VariableDeclaration", + "start": 1008, + "end": 1026, + "loc": { + "start": { + "line": 60, + "column": 4 + }, + "end": { + "line": 60, + "column": 22 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 1014, + "end": 1025, + "loc": { + "start": { + "line": 60, + "column": 10 + }, + "end": { + "line": 60, + "column": 21 + } + }, + "id": { + "type": "Identifier", + "start": 1014, + "end": 1020, + "loc": { + "start": { + "line": 60, + "column": 10 + }, + "end": { + "line": 60, + "column": 16 + }, + "identifierName": "tokens" + }, + "name": "tokens" + }, + "init": { + "type": "ArrayExpression", + "start": 1023, + "end": 1025, + "loc": { + "start": { + "line": 60, + "column": 19 + }, + "end": { + "line": 60, + "column": 21 + } + }, + "elements": [] + } + } + ], + "kind": "const" + }, + { + "type": "VariableDeclaration", + "start": 1032, + "end": 1068, + "loc": { + "start": { + "line": 62, + "column": 4 + }, + "end": { + "line": 62, + "column": 40 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 1036, + "end": 1067, + "loc": { + "start": { + "line": 62, + "column": 8 + }, + "end": { + "line": 62, + "column": 39 + } + }, + "id": { + "type": "Identifier", + "start": 1036, + "end": 1048, + "loc": { + "start": { + "line": 62, + "column": 8 + }, + "end": { + "line": 62, + "column": 20 + }, + "identifierName": "currentToken" + }, + "name": "currentToken" + }, + "init": { + "type": "CallExpression", + "start": 1051, + "end": 1067, + "loc": { + "start": { + "line": 62, + "column": 23 + }, + "end": { + "line": 62, + "column": 39 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1051, + "end": 1065, + "loc": { + "start": { + "line": 62, + "column": 23 + }, + "end": { + "line": 62, + "column": 37 + } + }, + "object": { + "type": "ThisExpression", + "start": 1051, + "end": 1055, + "loc": { + "start": { + "line": 62, + "column": 23 + }, + "end": { + "line": 62, + "column": 27 + } + } + }, + "property": { + "type": "Identifier", + "start": 1056, + "end": 1065, + "loc": { + "start": { + "line": 62, + "column": 28 + }, + "end": { + "line": 62, + "column": 37 + }, + "identifierName": "_getToken" + }, + "name": "_getToken" + }, + "computed": false + }, + "arguments": [] + } + } + ], + "kind": "let" + }, + { + "type": "WhileStatement", + "start": 1073, + "end": 1183, + "loc": { + "start": { + "line": 63, + "column": 4 + }, + "end": { + "line": 67, + "column": 5 + } + }, + "test": { + "type": "BinaryExpression", + "start": 1080, + "end": 1101, + "loc": { + "start": { + "line": 63, + "column": 11 + }, + "end": { + "line": 63, + "column": 32 + } + }, + "left": { + "type": "Identifier", + "start": 1080, + "end": 1092, + "loc": { + "start": { + "line": 63, + "column": 11 + }, + "end": { + "line": 63, + "column": 23 + }, + "identifierName": "currentToken" + }, + "name": "currentToken" + }, + "operator": "!==", + "right": { + "type": "NullLiteral", + "start": 1097, + "end": 1101, + "loc": { + "start": { + "line": 63, + "column": 28 + }, + "end": { + "line": 63, + "column": 32 + } + } + } + }, + "body": { + "type": "BlockStatement", + "start": 1103, + "end": 1183, + "loc": { + "start": { + "line": 63, + "column": 34 + }, + "end": { + "line": 67, + "column": 5 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 1111, + "end": 1137, + "loc": { + "start": { + "line": 64, + "column": 6 + }, + "end": { + "line": 64, + "column": 32 + } + }, + "expression": { + "type": "CallExpression", + "start": 1111, + "end": 1136, + "loc": { + "start": { + "line": 64, + "column": 6 + }, + "end": { + "line": 64, + "column": 31 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1111, + "end": 1122, + "loc": { + "start": { + "line": 64, + "column": 6 + }, + "end": { + "line": 64, + "column": 17 + } + }, + "object": { + "type": "Identifier", + "start": 1111, + "end": 1117, + "loc": { + "start": { + "line": 64, + "column": 6 + }, + "end": { + "line": 64, + "column": 12 + }, + "identifierName": "tokens" + }, + "name": "tokens" + }, + "property": { + "type": "Identifier", + "start": 1118, + "end": 1122, + "loc": { + "start": { + "line": 64, + "column": 13 + }, + "end": { + "line": 64, + "column": 17 + }, + "identifierName": "push" + }, + "name": "push" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 1123, + "end": 1135, + "loc": { + "start": { + "line": 64, + "column": 18 + }, + "end": { + "line": 64, + "column": 30 + }, + "identifierName": "currentToken" + }, + "name": "currentToken" + } + ] + } + }, + { + "type": "ExpressionStatement", + "start": 1145, + "end": 1177, + "loc": { + "start": { + "line": 66, + "column": 6 + }, + "end": { + "line": 66, + "column": 38 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 1145, + "end": 1176, + "loc": { + "start": { + "line": 66, + "column": 6 + }, + "end": { + "line": 66, + "column": 37 + } + }, + "operator": "=", + "left": { + "type": "Identifier", + "start": 1145, + "end": 1157, + "loc": { + "start": { + "line": 66, + "column": 6 + }, + "end": { + "line": 66, + "column": 18 + }, + "identifierName": "currentToken" + }, + "name": "currentToken" + }, + "right": { + "type": "CallExpression", + "start": 1160, + "end": 1176, + "loc": { + "start": { + "line": 66, + "column": 21 + }, + "end": { + "line": 66, + "column": 37 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1160, + "end": 1174, + "loc": { + "start": { + "line": 66, + "column": 21 + }, + "end": { + "line": 66, + "column": 35 + } + }, + "object": { + "type": "ThisExpression", + "start": 1160, + "end": 1164, + "loc": { + "start": { + "line": 66, + "column": 21 + }, + "end": { + "line": 66, + "column": 25 + } + } + }, + "property": { + "type": "Identifier", + "start": 1165, + "end": 1174, + "loc": { + "start": { + "line": 66, + "column": 26 + }, + "end": { + "line": 66, + "column": 35 + }, + "identifierName": "_getToken" + }, + "name": "_getToken" + }, + "computed": false + }, + "arguments": [] + } + } + } + ], + "directives": [] + } + }, + { + "type": "ReturnStatement", + "start": 1189, + "end": 1227, + "loc": { + "start": { + "line": 69, + "column": 4 + }, + "end": { + "line": 69, + "column": 42 + } + }, + "argument": { + "type": "CallExpression", + "start": 1196, + "end": 1226, + "loc": { + "start": { + "line": 69, + "column": 11 + }, + "end": { + "line": 69, + "column": 41 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1196, + "end": 1218, + "loc": { + "start": { + "line": 69, + "column": 11 + }, + "end": { + "line": 69, + "column": 33 + } + }, + "object": { + "type": "ThisExpression", + "start": 1196, + "end": 1200, + "loc": { + "start": { + "line": 69, + "column": 11 + }, + "end": { + "line": 69, + "column": 15 + } + } + }, + "property": { + "type": "Identifier", + "start": 1201, + "end": 1218, + "loc": { + "start": { + "line": 69, + "column": 16 + }, + "end": { + "line": 69, + "column": 33 + }, + "identifierName": "__transformTokens" + }, + "name": "__transformTokens" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 1219, + "end": 1225, + "loc": { + "start": { + "line": 69, + "column": 34 + }, + "end": { + "line": 69, + "column": 40 + }, + "identifierName": "tokens" + }, + "name": "tokens" + } + ] + } + } + ], + "directives": [] + } + }, + { + "type": "ClassMethod", + "start": 1235, + "end": 2131, + "loc": { + "start": { + "line": 72, + "column": 2 + }, + "end": { + "line": 104, + "column": 3 + } + }, + "static": false, + "computed": false, + "key": { + "type": "Identifier", + "start": 1235, + "end": 1244, + "loc": { + "start": { + "line": 72, + "column": 2 + }, + "end": { + "line": 72, + "column": 11 + }, + "identifierName": "_getToken" + }, + "name": "_getToken" + }, + "kind": "method", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [], + "body": { + "type": "BlockStatement", + "start": 1247, + "end": 2131, + "loc": { + "start": { + "line": 72, + "column": 14 + }, + "end": { + "line": 104, + "column": 3 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 1311, + "end": 1338, + "loc": { + "start": { + "line": 74, + "column": 4 + }, + "end": { + "line": 74, + "column": 31 + } + }, + "expression": { + "type": "CallExpression", + "start": 1311, + "end": 1337, + "loc": { + "start": { + "line": 74, + "column": 4 + }, + "end": { + "line": 74, + "column": 30 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1311, + "end": 1335, + "loc": { + "start": { + "line": 74, + "column": 4 + }, + "end": { + "line": 74, + "column": 28 + } + }, + "object": { + "type": "ThisExpression", + "start": 1311, + "end": 1315, + "loc": { + "start": { + "line": 74, + "column": 4 + }, + "end": { + "line": 74, + "column": 8 + } + }, + "leadingComments": null + }, + "property": { + "type": "Identifier", + "start": 1316, + "end": 1335, + "loc": { + "start": { + "line": 74, + "column": 9 + }, + "end": { + "line": 74, + "column": 28 + }, + "identifierName": "__updateLastIndices" + }, + "name": "__updateLastIndices" + }, + "computed": false, + "leadingComments": null + }, + "arguments": [], + "leadingComments": null + }, + "leadingComments": [ + { + "type": "CommentLine", + "value": " Update lastIndex property for each expression used", + "start": 1253, + "end": 1306, + "loc": { + "start": { + "line": 73, + "column": 4 + }, + "end": { + "line": 73, + "column": 57 + } + } + } + ], + "trailingComments": [ + { + "type": "CommentLine", + "value": " Match and ignore whitespaces and newlines", + "start": 1344, + "end": 1388, + "loc": { + "start": { + "line": 76, + "column": 4 + }, + "end": { + "line": 76, + "column": 48 + } + } + } + ] + }, + { + "type": "VariableDeclaration", + "start": 1393, + "end": 1443, + "loc": { + "start": { + "line": 77, + "column": 4 + }, + "end": { + "line": 77, + "column": 54 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 1397, + "end": 1442, + "loc": { + "start": { + "line": 77, + "column": 8 + }, + "end": { + "line": 77, + "column": 53 + } + }, + "id": { + "type": "Identifier", + "start": 1397, + "end": 1408, + "loc": { + "start": { + "line": 77, + "column": 8 + }, + "end": { + "line": 77, + "column": 19 + }, + "identifierName": "whitespaces" + }, + "name": "whitespaces", + "leadingComments": null + }, + "init": { + "type": "CallExpression", + "start": 1411, + "end": 1442, + "loc": { + "start": { + "line": 77, + "column": 22 + }, + "end": { + "line": 77, + "column": 53 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1411, + "end": 1428, + "loc": { + "start": { + "line": 77, + "column": 22 + }, + "end": { + "line": 77, + "column": 39 + } + }, + "object": { + "type": "MemberExpression", + "start": 1411, + "end": 1423, + "loc": { + "start": { + "line": 77, + "column": 22 + }, + "end": { + "line": 77, + "column": 34 + } + }, + "object": { + "type": "Identifier", + "start": 1411, + "end": 1416, + "loc": { + "start": { + "line": 77, + "column": 22 + }, + "end": { + "line": 77, + "column": 27 + }, + "identifierName": "Lexer" + }, + "name": "Lexer" + }, + "property": { + "type": "Identifier", + "start": 1417, + "end": 1423, + "loc": { + "start": { + "line": 77, + "column": 28 + }, + "end": { + "line": 77, + "column": 34 + }, + "identifierName": "WHITES" + }, + "name": "WHITES" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 1424, + "end": 1428, + "loc": { + "start": { + "line": 77, + "column": 35 + }, + "end": { + "line": 77, + "column": 39 + }, + "identifierName": "exec" + }, + "name": "exec" + }, + "computed": false + }, + "arguments": [ + { + "type": "MemberExpression", + "start": 1429, + "end": 1441, + "loc": { + "start": { + "line": 77, + "column": 40 + }, + "end": { + "line": 77, + "column": 52 + } + }, + "object": { + "type": "ThisExpression", + "start": 1429, + "end": 1433, + "loc": { + "start": { + "line": 77, + "column": 40 + }, + "end": { + "line": 77, + "column": 44 + } + } + }, + "property": { + "type": "Identifier", + "start": 1434, + "end": 1441, + "loc": { + "start": { + "line": 77, + "column": 45 + }, + "end": { + "line": 77, + "column": 52 + }, + "identifierName": "program" + }, + "name": "program" + }, + "computed": false + } + ] + }, + "leadingComments": null + } + ], + "kind": "let", + "leadingComments": [ + { + "type": "CommentLine", + "value": " Match and ignore whitespaces and newlines", + "start": 1344, + "end": 1388, + "loc": { + "start": { + "line": 76, + "column": 4 + }, + "end": { + "line": 76, + "column": 48 + } + } + } + ] + }, + { + "type": "IfStatement", + "start": 1448, + "end": 1640, + "loc": { + "start": { + "line": 78, + "column": 4 + }, + "end": { + "line": 85, + "column": 5 + } + }, + "test": { + "type": "BinaryExpression", + "start": 1452, + "end": 1472, + "loc": { + "start": { + "line": 78, + "column": 8 + }, + "end": { + "line": 78, + "column": 28 + } + }, + "left": { + "type": "Identifier", + "start": 1452, + "end": 1463, + "loc": { + "start": { + "line": 78, + "column": 8 + }, + "end": { + "line": 78, + "column": 19 + }, + "identifierName": "whitespaces" + }, + "name": "whitespaces" + }, + "operator": "!==", + "right": { + "type": "NullLiteral", + "start": 1468, + "end": 1472, + "loc": { + "start": { + "line": 78, + "column": 24 + }, + "end": { + "line": 78, + "column": 28 + } + } + } + }, + "consequent": { + "type": "BlockStatement", + "start": 1474, + "end": 1640, + "loc": { + "start": { + "line": 78, + "column": 30 + }, + "end": { + "line": 85, + "column": 5 + } + }, + "body": [ + { + "type": "IfStatement", + "start": 1482, + "end": 1555, + "loc": { + "start": { + "line": 79, + "column": 6 + }, + "end": { + "line": 81, + "column": 7 + } + }, + "test": { + "type": "CallExpression", + "start": 1486, + "end": 1523, + "loc": { + "start": { + "line": 79, + "column": 10 + }, + "end": { + "line": 79, + "column": 47 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1486, + "end": 1504, + "loc": { + "start": { + "line": 79, + "column": 10 + }, + "end": { + "line": 79, + "column": 28 + } + }, + "object": { + "type": "MemberExpression", + "start": 1486, + "end": 1499, + "loc": { + "start": { + "line": 79, + "column": 10 + }, + "end": { + "line": 79, + "column": 23 + } + }, + "object": { + "type": "Identifier", + "start": 1486, + "end": 1491, + "loc": { + "start": { + "line": 79, + "column": 10 + }, + "end": { + "line": 79, + "column": 15 + }, + "identifierName": "Lexer" + }, + "name": "Lexer" + }, + "property": { + "type": "Identifier", + "start": 1492, + "end": 1499, + "loc": { + "start": { + "line": 79, + "column": 16 + }, + "end": { + "line": 79, + "column": 23 + }, + "identifierName": "NEWLINE" + }, + "name": "NEWLINE" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 1500, + "end": 1504, + "loc": { + "start": { + "line": 79, + "column": 24 + }, + "end": { + "line": 79, + "column": 28 + }, + "identifierName": "exec" + }, + "name": "exec" + }, + "computed": false + }, + "arguments": [ + { + "type": "MemberExpression", + "start": 1505, + "end": 1522, + "loc": { + "start": { + "line": 79, + "column": 29 + }, + "end": { + "line": 79, + "column": 46 + } + }, + "object": { + "type": "Identifier", + "start": 1505, + "end": 1516, + "loc": { + "start": { + "line": 79, + "column": 29 + }, + "end": { + "line": 79, + "column": 40 + }, + "identifierName": "whitespaces" + }, + "name": "whitespaces" + }, + "property": { + "type": "Identifier", + "start": 1517, + "end": 1522, + "loc": { + "start": { + "line": 79, + "column": 41 + }, + "end": { + "line": 79, + "column": 46 + }, + "identifierName": "value" + }, + "name": "value" + }, + "computed": false + } + ] + }, + "consequent": { + "type": "BlockStatement", + "start": 1525, + "end": 1555, + "loc": { + "start": { + "line": 79, + "column": 49 + }, + "end": { + "line": 81, + "column": 7 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 1535, + "end": 1547, + "loc": { + "start": { + "line": 80, + "column": 8 + }, + "end": { + "line": 80, + "column": 20 + } + }, + "expression": { + "type": "UpdateExpression", + "start": 1535, + "end": 1546, + "loc": { + "start": { + "line": 80, + "column": 8 + }, + "end": { + "line": 80, + "column": 19 + } + }, + "operator": "++", + "prefix": true, + "argument": { + "type": "MemberExpression", + "start": 1537, + "end": 1546, + "loc": { + "start": { + "line": 80, + "column": 10 + }, + "end": { + "line": 80, + "column": 19 + } + }, + "object": { + "type": "ThisExpression", + "start": 1537, + "end": 1541, + "loc": { + "start": { + "line": 80, + "column": 10 + }, + "end": { + "line": 80, + "column": 14 + } + } + }, + "property": { + "type": "Identifier", + "start": 1542, + "end": 1546, + "loc": { + "start": { + "line": 80, + "column": 15 + }, + "end": { + "line": 80, + "column": 19 + }, + "identifierName": "line" + }, + "name": "line" + }, + "computed": false + }, + "extra": { + "parenthesizedArgument": false + } + } + } + ], + "directives": [] + }, + "alternate": null + }, + { + "type": "ExpressionStatement", + "start": 1562, + "end": 1602, + "loc": { + "start": { + "line": 82, + "column": 6 + }, + "end": { + "line": 82, + "column": 46 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 1562, + "end": 1601, + "loc": { + "start": { + "line": 82, + "column": 6 + }, + "end": { + "line": 82, + "column": 45 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 1562, + "end": 1576, + "loc": { + "start": { + "line": 82, + "column": 6 + }, + "end": { + "line": 82, + "column": 20 + } + }, + "object": { + "type": "ThisExpression", + "start": 1562, + "end": 1566, + "loc": { + "start": { + "line": 82, + "column": 6 + }, + "end": { + "line": 82, + "column": 10 + } + } + }, + "property": { + "type": "Identifier", + "start": 1567, + "end": 1576, + "loc": { + "start": { + "line": 82, + "column": 11 + }, + "end": { + "line": 82, + "column": 20 + }, + "identifierName": "lastIndex" + }, + "name": "lastIndex" + }, + "computed": false + }, + "right": { + "type": "MemberExpression", + "start": 1579, + "end": 1601, + "loc": { + "start": { + "line": 82, + "column": 23 + }, + "end": { + "line": 82, + "column": 45 + } + }, + "object": { + "type": "MemberExpression", + "start": 1579, + "end": 1591, + "loc": { + "start": { + "line": 82, + "column": 23 + }, + "end": { + "line": 82, + "column": 35 + } + }, + "object": { + "type": "Identifier", + "start": 1579, + "end": 1584, + "loc": { + "start": { + "line": 82, + "column": 23 + }, + "end": { + "line": 82, + "column": 28 + }, + "identifierName": "Lexer" + }, + "name": "Lexer" + }, + "property": { + "type": "Identifier", + "start": 1585, + "end": 1591, + "loc": { + "start": { + "line": 82, + "column": 29 + }, + "end": { + "line": 82, + "column": 35 + }, + "identifierName": "WHITES" + }, + "name": "WHITES" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 1592, + "end": 1601, + "loc": { + "start": { + "line": 82, + "column": 36 + }, + "end": { + "line": 82, + "column": 45 + }, + "identifierName": "lastIndex" + }, + "name": "lastIndex" + }, + "computed": false + } + } + }, + { + "type": "ReturnStatement", + "start": 1610, + "end": 1634, + "loc": { + "start": { + "line": 84, + "column": 6 + }, + "end": { + "line": 84, + "column": 30 + } + }, + "argument": { + "type": "CallExpression", + "start": 1617, + "end": 1633, + "loc": { + "start": { + "line": 84, + "column": 13 + }, + "end": { + "line": 84, + "column": 29 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1617, + "end": 1631, + "loc": { + "start": { + "line": 84, + "column": 13 + }, + "end": { + "line": 84, + "column": 27 + } + }, + "object": { + "type": "ThisExpression", + "start": 1617, + "end": 1621, + "loc": { + "start": { + "line": 84, + "column": 13 + }, + "end": { + "line": 84, + "column": 17 + } + } + }, + "property": { + "type": "Identifier", + "start": 1622, + "end": 1631, + "loc": { + "start": { + "line": 84, + "column": 18 + }, + "end": { + "line": 84, + "column": 27 + }, + "identifierName": "_getToken" + }, + "name": "_getToken" + }, + "computed": false + }, + "arguments": [] + } + } + ], + "directives": [], + "trailingComments": null + }, + "alternate": null, + "trailingComments": [ + { + "type": "CommentLine", + "value": " Iterate through each regex", + "start": 1646, + "end": 1675, + "loc": { + "start": { + "line": 87, + "column": 4 + }, + "end": { + "line": 87, + "column": 33 + } + } + } + ] + }, + { + "type": "VariableDeclaration", + "start": 1680, + "end": 1697, + "loc": { + "start": { + "line": 88, + "column": 4 + }, + "end": { + "line": 88, + "column": 21 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 1684, + "end": 1696, + "loc": { + "start": { + "line": 88, + "column": 8 + }, + "end": { + "line": 88, + "column": 20 + } + }, + "id": { + "type": "Identifier", + "start": 1684, + "end": 1689, + "loc": { + "start": { + "line": 88, + "column": 8 + }, + "end": { + "line": 88, + "column": 13 + }, + "identifierName": "token" + }, + "name": "token", + "leadingComments": null + }, + "init": { + "type": "NullLiteral", + "start": 1692, + "end": 1696, + "loc": { + "start": { + "line": 88, + "column": 16 + }, + "end": { + "line": 88, + "column": 20 + } + } + }, + "leadingComments": null + } + ], + "kind": "let", + "leadingComments": [ + { + "type": "CommentLine", + "value": " Iterate through each regex", + "start": 1646, + "end": 1675, + "loc": { + "start": { + "line": 87, + "column": 4 + }, + "end": { + "line": 87, + "column": 33 + } + } + } + ] + }, + { + "type": "ForStatement", + "start": 1702, + "end": 2045, + "loc": { + "start": { + "line": 89, + "column": 4 + }, + "end": { + "line": 100, + "column": 5 + } + }, + "init": { + "type": "VariableDeclaration", + "start": 1707, + "end": 1716, + "loc": { + "start": { + "line": 89, + "column": 9 + }, + "end": { + "line": 89, + "column": 18 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 1711, + "end": 1716, + "loc": { + "start": { + "line": 89, + "column": 13 + }, + "end": { + "line": 89, + "column": 18 + } + }, + "id": { + "type": "Identifier", + "start": 1711, + "end": 1712, + "loc": { + "start": { + "line": 89, + "column": 13 + }, + "end": { + "line": 89, + "column": 14 + }, + "identifierName": "i" + }, + "name": "i" + }, + "init": { + "type": "NumericLiteral", + "start": 1715, + "end": 1716, + "loc": { + "start": { + "line": 89, + "column": 17 + }, + "end": { + "line": 89, + "column": 18 + } + }, + "extra": { + "rawValue": 0, + "raw": "0" + }, + "value": 0 + } + } + ], + "kind": "let" + }, + "test": { + "type": "BinaryExpression", + "start": 1718, + "end": 1741, + "loc": { + "start": { + "line": 89, + "column": 20 + }, + "end": { + "line": 89, + "column": 43 + } + }, + "left": { + "type": "Identifier", + "start": 1718, + "end": 1719, + "loc": { + "start": { + "line": 89, + "column": 20 + }, + "end": { + "line": 89, + "column": 21 + }, + "identifierName": "i" + }, + "name": "i" + }, + "operator": "<", + "right": { + "type": "MemberExpression", + "start": 1722, + "end": 1741, + "loc": { + "start": { + "line": 89, + "column": 24 + }, + "end": { + "line": 89, + "column": 43 + } + }, + "object": { + "type": "MemberExpression", + "start": 1722, + "end": 1734, + "loc": { + "start": { + "line": 89, + "column": 24 + }, + "end": { + "line": 89, + "column": 36 + } + }, + "object": { + "type": "Identifier", + "start": 1722, + "end": 1727, + "loc": { + "start": { + "line": 89, + "column": 24 + }, + "end": { + "line": 89, + "column": 29 + }, + "identifierName": "Lexer" + }, + "name": "Lexer" + }, + "property": { + "type": "Identifier", + "start": 1728, + "end": 1734, + "loc": { + "start": { + "line": 89, + "column": 30 + }, + "end": { + "line": 89, + "column": 36 + }, + "identifierName": "TOKENS" + }, + "name": "TOKENS" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 1735, + "end": 1741, + "loc": { + "start": { + "line": 89, + "column": 37 + }, + "end": { + "line": 89, + "column": 43 + }, + "identifierName": "length" + }, + "name": "length" + }, + "computed": false + } + }, + "update": { + "type": "UpdateExpression", + "start": 1743, + "end": 1746, + "loc": { + "start": { + "line": 89, + "column": 45 + }, + "end": { + "line": 89, + "column": 48 + } + }, + "operator": "++", + "prefix": true, + "argument": { + "type": "Identifier", + "start": 1745, + "end": 1746, + "loc": { + "start": { + "line": 89, + "column": 47 + }, + "end": { + "line": 89, + "column": 48 + }, + "identifierName": "i" + }, + "name": "i" + }, + "extra": { + "parenthesizedArgument": false + } + }, + "body": { + "type": "BlockStatement", + "start": 1748, + "end": 2045, + "loc": { + "start": { + "line": 89, + "column": 50 + }, + "end": { + "line": 100, + "column": 5 + } + }, + "body": [ + { + "type": "VariableDeclaration", + "start": 1756, + "end": 1803, + "loc": { + "start": { + "line": 90, + "column": 6 + }, + "end": { + "line": 90, + "column": 53 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 1760, + "end": 1802, + "loc": { + "start": { + "line": 90, + "column": 10 + }, + "end": { + "line": 90, + "column": 52 + } + }, + "id": { + "type": "Identifier", + "start": 1760, + "end": 1765, + "loc": { + "start": { + "line": 90, + "column": 10 + }, + "end": { + "line": 90, + "column": 15 + }, + "identifierName": "match" + }, + "name": "match" + }, + "init": { + "type": "CallExpression", + "start": 1768, + "end": 1802, + "loc": { + "start": { + "line": 90, + "column": 18 + }, + "end": { + "line": 90, + "column": 52 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1768, + "end": 1788, + "loc": { + "start": { + "line": 90, + "column": 18 + }, + "end": { + "line": 90, + "column": 38 + } + }, + "object": { + "type": "MemberExpression", + "start": 1768, + "end": 1783, + "loc": { + "start": { + "line": 90, + "column": 18 + }, + "end": { + "line": 90, + "column": 33 + } + }, + "object": { + "type": "MemberExpression", + "start": 1768, + "end": 1780, + "loc": { + "start": { + "line": 90, + "column": 18 + }, + "end": { + "line": 90, + "column": 30 + } + }, + "object": { + "type": "Identifier", + "start": 1768, + "end": 1773, + "loc": { + "start": { + "line": 90, + "column": 18 + }, + "end": { + "line": 90, + "column": 23 + }, + "identifierName": "Lexer" + }, + "name": "Lexer" + }, + "property": { + "type": "Identifier", + "start": 1774, + "end": 1780, + "loc": { + "start": { + "line": 90, + "column": 24 + }, + "end": { + "line": 90, + "column": 30 + }, + "identifierName": "TOKENS" + }, + "name": "TOKENS" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 1781, + "end": 1782, + "loc": { + "start": { + "line": 90, + "column": 31 + }, + "end": { + "line": 90, + "column": 32 + }, + "identifierName": "i" + }, + "name": "i" + }, + "computed": true + }, + "property": { + "type": "Identifier", + "start": 1784, + "end": 1788, + "loc": { + "start": { + "line": 90, + "column": 34 + }, + "end": { + "line": 90, + "column": 38 + }, + "identifierName": "exec" + }, + "name": "exec" + }, + "computed": false + }, + "arguments": [ + { + "type": "MemberExpression", + "start": 1789, + "end": 1801, + "loc": { + "start": { + "line": 90, + "column": 39 + }, + "end": { + "line": 90, + "column": 51 + } + }, + "object": { + "type": "ThisExpression", + "start": 1789, + "end": 1793, + "loc": { + "start": { + "line": 90, + "column": 39 + }, + "end": { + "line": 90, + "column": 43 + } + } + }, + "property": { + "type": "Identifier", + "start": 1794, + "end": 1801, + "loc": { + "start": { + "line": 90, + "column": 44 + }, + "end": { + "line": 90, + "column": 51 + }, + "identifierName": "program" + }, + "name": "program" + }, + "computed": false + } + ] + } + } + ], + "kind": "let", + "trailingComments": [ + { + "type": "CommentLine", + "value": " When matching a expression, add the current line and set the token", + "start": 1811, + "end": 1880, + "loc": { + "start": { + "line": 92, + "column": 6 + }, + "end": { + "line": 92, + "column": 75 + } + } + } + ] + }, + { + "type": "IfStatement", + "start": 1887, + "end": 2039, + "loc": { + "start": { + "line": 93, + "column": 6 + }, + "end": { + "line": 99, + "column": 7 + } + }, + "test": { + "type": "BinaryExpression", + "start": 1891, + "end": 1905, + "loc": { + "start": { + "line": 93, + "column": 10 + }, + "end": { + "line": 93, + "column": 24 + } + }, + "left": { + "type": "Identifier", + "start": 1891, + "end": 1896, + "loc": { + "start": { + "line": 93, + "column": 10 + }, + "end": { + "line": 93, + "column": 15 + }, + "identifierName": "match" + }, + "name": "match", + "leadingComments": null + }, + "operator": "!==", + "right": { + "type": "NullLiteral", + "start": 1901, + "end": 1905, + "loc": { + "start": { + "line": 93, + "column": 20 + }, + "end": { + "line": 93, + "column": 24 + } + } + }, + "leadingComments": null + }, + "consequent": { + "type": "BlockStatement", + "start": 1907, + "end": 2039, + "loc": { + "start": { + "line": 93, + "column": 26 + }, + "end": { + "line": 99, + "column": 7 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 1917, + "end": 1940, + "loc": { + "start": { + "line": 94, + "column": 8 + }, + "end": { + "line": 94, + "column": 31 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 1917, + "end": 1939, + "loc": { + "start": { + "line": 94, + "column": 8 + }, + "end": { + "line": 94, + "column": 30 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 1917, + "end": 1927, + "loc": { + "start": { + "line": 94, + "column": 8 + }, + "end": { + "line": 94, + "column": 18 + } + }, + "object": { + "type": "Identifier", + "start": 1917, + "end": 1922, + "loc": { + "start": { + "line": 94, + "column": 8 + }, + "end": { + "line": 94, + "column": 13 + }, + "identifierName": "match" + }, + "name": "match" + }, + "property": { + "type": "Identifier", + "start": 1923, + "end": 1927, + "loc": { + "start": { + "line": 94, + "column": 14 + }, + "end": { + "line": 94, + "column": 18 + }, + "identifierName": "line" + }, + "name": "line" + }, + "computed": false + }, + "right": { + "type": "MemberExpression", + "start": 1930, + "end": 1939, + "loc": { + "start": { + "line": 94, + "column": 21 + }, + "end": { + "line": 94, + "column": 30 + } + }, + "object": { + "type": "ThisExpression", + "start": 1930, + "end": 1934, + "loc": { + "start": { + "line": 94, + "column": 21 + }, + "end": { + "line": 94, + "column": 25 + } + } + }, + "property": { + "type": "Identifier", + "start": 1935, + "end": 1939, + "loc": { + "start": { + "line": 94, + "column": 26 + }, + "end": { + "line": 94, + "column": 30 + }, + "identifierName": "line" + }, + "name": "line" + }, + "computed": false + } + } + }, + { + "type": "ExpressionStatement", + "start": 1949, + "end": 1992, + "loc": { + "start": { + "line": 95, + "column": 8 + }, + "end": { + "line": 95, + "column": 51 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 1949, + "end": 1991, + "loc": { + "start": { + "line": 95, + "column": 8 + }, + "end": { + "line": 95, + "column": 50 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 1949, + "end": 1963, + "loc": { + "start": { + "line": 95, + "column": 8 + }, + "end": { + "line": 95, + "column": 22 + } + }, + "object": { + "type": "ThisExpression", + "start": 1949, + "end": 1953, + "loc": { + "start": { + "line": 95, + "column": 8 + }, + "end": { + "line": 95, + "column": 12 + } + } + }, + "property": { + "type": "Identifier", + "start": 1954, + "end": 1963, + "loc": { + "start": { + "line": 95, + "column": 13 + }, + "end": { + "line": 95, + "column": 22 + }, + "identifierName": "lastIndex" + }, + "name": "lastIndex" + }, + "computed": false + }, + "right": { + "type": "MemberExpression", + "start": 1966, + "end": 1991, + "loc": { + "start": { + "line": 95, + "column": 25 + }, + "end": { + "line": 95, + "column": 50 + } + }, + "object": { + "type": "MemberExpression", + "start": 1966, + "end": 1981, + "loc": { + "start": { + "line": 95, + "column": 25 + }, + "end": { + "line": 95, + "column": 40 + } + }, + "object": { + "type": "MemberExpression", + "start": 1966, + "end": 1978, + "loc": { + "start": { + "line": 95, + "column": 25 + }, + "end": { + "line": 95, + "column": 37 + } + }, + "object": { + "type": "Identifier", + "start": 1966, + "end": 1971, + "loc": { + "start": { + "line": 95, + "column": 25 + }, + "end": { + "line": 95, + "column": 30 + }, + "identifierName": "Lexer" + }, + "name": "Lexer" + }, + "property": { + "type": "Identifier", + "start": 1972, + "end": 1978, + "loc": { + "start": { + "line": 95, + "column": 31 + }, + "end": { + "line": 95, + "column": 37 + }, + "identifierName": "TOKENS" + }, + "name": "TOKENS" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 1979, + "end": 1980, + "loc": { + "start": { + "line": 95, + "column": 38 + }, + "end": { + "line": 95, + "column": 39 + }, + "identifierName": "i" + }, + "name": "i" + }, + "computed": true + }, + "property": { + "type": "Identifier", + "start": 1982, + "end": 1991, + "loc": { + "start": { + "line": 95, + "column": 41 + }, + "end": { + "line": 95, + "column": 50 + }, + "identifierName": "lastIndex" + }, + "name": "lastIndex" + }, + "computed": false + } + } + }, + { + "type": "ExpressionStatement", + "start": 2002, + "end": 2016, + "loc": { + "start": { + "line": 97, + "column": 8 + }, + "end": { + "line": 97, + "column": 22 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 2002, + "end": 2015, + "loc": { + "start": { + "line": 97, + "column": 8 + }, + "end": { + "line": 97, + "column": 21 + } + }, + "operator": "=", + "left": { + "type": "Identifier", + "start": 2002, + "end": 2007, + "loc": { + "start": { + "line": 97, + "column": 8 + }, + "end": { + "line": 97, + "column": 13 + }, + "identifierName": "token" + }, + "name": "token" + }, + "right": { + "type": "Identifier", + "start": 2010, + "end": 2015, + "loc": { + "start": { + "line": 97, + "column": 16 + }, + "end": { + "line": 97, + "column": 21 + }, + "identifierName": "match" + }, + "name": "match" + } + } + }, + { + "type": "BreakStatement", + "start": 2025, + "end": 2031, + "loc": { + "start": { + "line": 98, + "column": 8 + }, + "end": { + "line": 98, + "column": 14 + } + }, + "label": null + } + ], + "directives": [] + }, + "alternate": null, + "leadingComments": [ + { + "type": "CommentLine", + "value": " When matching a expression, add the current line and set the token", + "start": 1811, + "end": 1880, + "loc": { + "start": { + "line": 92, + "column": 6 + }, + "end": { + "line": 92, + "column": 75 + } + } + } + ] + } + ], + "directives": [], + "trailingComments": null + }, + "trailingComments": [ + { + "type": "CommentLine", + "value": " Return the matched token, or null if anything was found", + "start": 2051, + "end": 2109, + "loc": { + "start": { + "line": 102, + "column": 4 + }, + "end": { + "line": 102, + "column": 62 + } + } + } + ] + }, + { + "type": "ReturnStatement", + "start": 2114, + "end": 2127, + "loc": { + "start": { + "line": 103, + "column": 4 + }, + "end": { + "line": 103, + "column": 17 + } + }, + "argument": { + "type": "Identifier", + "start": 2121, + "end": 2126, + "loc": { + "start": { + "line": 103, + "column": 11 + }, + "end": { + "line": 103, + "column": 16 + }, + "identifierName": "token" + }, + "name": "token", + "leadingComments": null + }, + "leadingComments": [ + { + "type": "CommentLine", + "value": " Return the matched token, or null if anything was found", + "start": 2051, + "end": 2109, + "loc": { + "start": { + "line": 102, + "column": 4 + }, + "end": { + "line": 102, + "column": 62 + } + } + } + ] + } + ], + "directives": [] + } + }, + { + "type": "ClassMethod", + "start": 2135, + "end": 3054, + "loc": { + "start": { + "line": 106, + "column": 2 + }, + "end": { + "line": 140, + "column": 3 + } + }, + "static": false, + "computed": false, + "key": { + "type": "Identifier", + "start": 2135, + "end": 2152, + "loc": { + "start": { + "line": 106, + "column": 2 + }, + "end": { + "line": 106, + "column": 19 + }, + "identifierName": "__transformTokens" + }, + "name": "__transformTokens" + }, + "kind": "method", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 2153, + "end": 2159, + "loc": { + "start": { + "line": 106, + "column": 20 + }, + "end": { + "line": 106, + "column": 26 + }, + "identifierName": "tokens" + }, + "name": "tokens" + } + ], + "body": { + "type": "BlockStatement", + "start": 2161, + "end": 3054, + "loc": { + "start": { + "line": 106, + "column": 28 + }, + "end": { + "line": 140, + "column": 3 + } + }, + "body": [ + { + "type": "ForStatement", + "start": 2167, + "end": 3030, + "loc": { + "start": { + "line": 107, + "column": 4 + }, + "end": { + "line": 137, + "column": 5 + } + }, + "init": { + "type": "VariableDeclaration", + "start": 2172, + "end": 2181, + "loc": { + "start": { + "line": 107, + "column": 9 + }, + "end": { + "line": 107, + "column": 18 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 2176, + "end": 2181, + "loc": { + "start": { + "line": 107, + "column": 13 + }, + "end": { + "line": 107, + "column": 18 + } + }, + "id": { + "type": "Identifier", + "start": 2176, + "end": 2177, + "loc": { + "start": { + "line": 107, + "column": 13 + }, + "end": { + "line": 107, + "column": 14 + }, + "identifierName": "i" + }, + "name": "i" + }, + "init": { + "type": "NumericLiteral", + "start": 2180, + "end": 2181, + "loc": { + "start": { + "line": 107, + "column": 17 + }, + "end": { + "line": 107, + "column": 18 + } + }, + "extra": { + "rawValue": 0, + "raw": "0" + }, + "value": 0 + } + } + ], + "kind": "let" + }, + "test": { + "type": "BinaryExpression", + "start": 2183, + "end": 2200, + "loc": { + "start": { + "line": 107, + "column": 20 + }, + "end": { + "line": 107, + "column": 37 + } + }, + "left": { + "type": "Identifier", + "start": 2183, + "end": 2184, + "loc": { + "start": { + "line": 107, + "column": 20 + }, + "end": { + "line": 107, + "column": 21 + }, + "identifierName": "i" + }, + "name": "i" + }, + "operator": "<", + "right": { + "type": "MemberExpression", + "start": 2187, + "end": 2200, + "loc": { + "start": { + "line": 107, + "column": 24 + }, + "end": { + "line": 107, + "column": 37 + } + }, + "object": { + "type": "Identifier", + "start": 2187, + "end": 2193, + "loc": { + "start": { + "line": 107, + "column": 24 + }, + "end": { + "line": 107, + "column": 30 + }, + "identifierName": "tokens" + }, + "name": "tokens" + }, + "property": { + "type": "Identifier", + "start": 2194, + "end": 2200, + "loc": { + "start": { + "line": 107, + "column": 31 + }, + "end": { + "line": 107, + "column": 37 + }, + "identifierName": "length" + }, + "name": "length" + }, + "computed": false + } + }, + "update": { + "type": "UpdateExpression", + "start": 2202, + "end": 2205, + "loc": { + "start": { + "line": 107, + "column": 39 + }, + "end": { + "line": 107, + "column": 42 + } + }, + "operator": "++", + "prefix": true, + "argument": { + "type": "Identifier", + "start": 2204, + "end": 2205, + "loc": { + "start": { + "line": 107, + "column": 41 + }, + "end": { + "line": 107, + "column": 42 + }, + "identifierName": "i" + }, + "name": "i" + }, + "extra": { + "parenthesizedArgument": false + } + }, + "body": { + "type": "BlockStatement", + "start": 2207, + "end": 3030, + "loc": { + "start": { + "line": 107, + "column": 44 + }, + "end": { + "line": 137, + "column": 5 + } + }, + "body": [ + { + "type": "IfStatement", + "start": 2235, + "end": 2415, + "loc": { + "start": { + "line": 109, + "column": 6 + }, + "end": { + "line": 114, + "column": 7 + } + }, + "test": { + "type": "BinaryExpression", + "start": 2239, + "end": 2264, + "loc": { + "start": { + "line": 109, + "column": 10 + }, + "end": { + "line": 109, + "column": 35 + } + }, + "left": { + "type": "MemberExpression", + "start": 2239, + "end": 2253, + "loc": { + "start": { + "line": 109, + "column": 10 + }, + "end": { + "line": 109, + "column": 24 + } + }, + "object": { + "type": "MemberExpression", + "start": 2239, + "end": 2248, + "loc": { + "start": { + "line": 109, + "column": 10 + }, + "end": { + "line": 109, + "column": 19 + } + }, + "object": { + "type": "Identifier", + "start": 2239, + "end": 2245, + "loc": { + "start": { + "line": 109, + "column": 10 + }, + "end": { + "line": 109, + "column": 16 + }, + "identifierName": "tokens" + }, + "name": "tokens", + "leadingComments": null + }, + "property": { + "type": "Identifier", + "start": 2246, + "end": 2247, + "loc": { + "start": { + "line": 109, + "column": 17 + }, + "end": { + "line": 109, + "column": 18 + }, + "identifierName": "i" + }, + "name": "i" + }, + "computed": true, + "leadingComments": null + }, + "property": { + "type": "Identifier", + "start": 2249, + "end": 2253, + "loc": { + "start": { + "line": 109, + "column": 20 + }, + "end": { + "line": 109, + "column": 24 + }, + "identifierName": "type" + }, + "name": "type" + }, + "computed": false, + "leadingComments": null + }, + "operator": "===", + "right": { + "type": "StringLiteral", + "start": 2258, + "end": 2264, + "loc": { + "start": { + "line": 109, + "column": 29 + }, + "end": { + "line": 109, + "column": 35 + } + }, + "extra": { + "rawValue": "WORD", + "raw": "\"WORD\"" + }, + "value": "WORD" + }, + "leadingComments": null + }, + "consequent": { + "type": "BlockStatement", + "start": 2266, + "end": 2415, + "loc": { + "start": { + "line": 109, + "column": 37 + }, + "end": { + "line": 114, + "column": 7 + } + }, + "body": [ + { + "type": "VariableDeclaration", + "start": 2276, + "end": 2308, + "loc": { + "start": { + "line": 110, + "column": 8 + }, + "end": { + "line": 110, + "column": 40 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 2282, + "end": 2307, + "loc": { + "start": { + "line": 110, + "column": 14 + }, + "end": { + "line": 110, + "column": 39 + } + }, + "id": { + "type": "Identifier", + "start": 2282, + "end": 2291, + "loc": { + "start": { + "line": 110, + "column": 14 + }, + "end": { + "line": 110, + "column": 23 + }, + "identifierName": "nextToken" + }, + "name": "nextToken" + }, + "init": { + "type": "MemberExpression", + "start": 2294, + "end": 2307, + "loc": { + "start": { + "line": 110, + "column": 26 + }, + "end": { + "line": 110, + "column": 39 + } + }, + "object": { + "type": "Identifier", + "start": 2294, + "end": 2300, + "loc": { + "start": { + "line": 110, + "column": 26 + }, + "end": { + "line": 110, + "column": 32 + }, + "identifierName": "tokens" + }, + "name": "tokens" + }, + "property": { + "type": "BinaryExpression", + "start": 2301, + "end": 2306, + "loc": { + "start": { + "line": 110, + "column": 33 + }, + "end": { + "line": 110, + "column": 38 + } + }, + "left": { + "type": "Identifier", + "start": 2301, + "end": 2302, + "loc": { + "start": { + "line": 110, + "column": 33 + }, + "end": { + "line": 110, + "column": 34 + }, + "identifierName": "i" + }, + "name": "i" + }, + "operator": "+", + "right": { + "type": "NumericLiteral", + "start": 2305, + "end": 2306, + "loc": { + "start": { + "line": 110, + "column": 37 + }, + "end": { + "line": 110, + "column": 38 + } + }, + "extra": { + "rawValue": 1, + "raw": "1" + }, + "value": 1 + } + }, + "computed": true + } + } + ], + "kind": "const" + }, + { + "type": "IfStatement", + "start": 2317, + "end": 2407, + "loc": { + "start": { + "line": 111, + "column": 8 + }, + "end": { + "line": 113, + "column": 9 + } + }, + "test": { + "type": "LogicalExpression", + "start": 2321, + "end": 2357, + "loc": { + "start": { + "line": 111, + "column": 12 + }, + "end": { + "line": 111, + "column": 48 + } + }, + "left": { + "type": "Identifier", + "start": 2321, + "end": 2330, + "loc": { + "start": { + "line": 111, + "column": 12 + }, + "end": { + "line": 111, + "column": 21 + }, + "identifierName": "nextToken" + }, + "name": "nextToken" + }, + "operator": "&&", + "right": { + "type": "BinaryExpression", + "start": 2334, + "end": 2357, + "loc": { + "start": { + "line": 111, + "column": 25 + }, + "end": { + "line": 111, + "column": 48 + } + }, + "left": { + "type": "MemberExpression", + "start": 2334, + "end": 2349, + "loc": { + "start": { + "line": 111, + "column": 25 + }, + "end": { + "line": 111, + "column": 40 + } + }, + "object": { + "type": "Identifier", + "start": 2334, + "end": 2343, + "loc": { + "start": { + "line": 111, + "column": 25 + }, + "end": { + "line": 111, + "column": 34 + }, + "identifierName": "nextToken" + }, + "name": "nextToken" + }, + "property": { + "type": "Identifier", + "start": 2344, + "end": 2349, + "loc": { + "start": { + "line": 111, + "column": 35 + }, + "end": { + "line": 111, + "column": 40 + }, + "identifierName": "value" + }, + "name": "value" + }, + "computed": false + }, + "operator": "===", + "right": { + "type": "StringLiteral", + "start": 2354, + "end": 2357, + "loc": { + "start": { + "line": 111, + "column": 45 + }, + "end": { + "line": 111, + "column": 48 + } + }, + "extra": { + "rawValue": ":", + "raw": "\":\"" + }, + "value": ":" + } + } + }, + "consequent": { + "type": "BlockStatement", + "start": 2359, + "end": 2407, + "loc": { + "start": { + "line": 111, + "column": 50 + }, + "end": { + "line": 113, + "column": 9 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 2371, + "end": 2397, + "loc": { + "start": { + "line": 112, + "column": 10 + }, + "end": { + "line": 112, + "column": 36 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 2371, + "end": 2396, + "loc": { + "start": { + "line": 112, + "column": 10 + }, + "end": { + "line": 112, + "column": 35 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 2371, + "end": 2385, + "loc": { + "start": { + "line": 112, + "column": 10 + }, + "end": { + "line": 112, + "column": 24 + } + }, + "object": { + "type": "MemberExpression", + "start": 2371, + "end": 2380, + "loc": { + "start": { + "line": 112, + "column": 10 + }, + "end": { + "line": 112, + "column": 19 + } + }, + "object": { + "type": "Identifier", + "start": 2371, + "end": 2377, + "loc": { + "start": { + "line": 112, + "column": 10 + }, + "end": { + "line": 112, + "column": 16 + }, + "identifierName": "tokens" + }, + "name": "tokens" + }, + "property": { + "type": "Identifier", + "start": 2378, + "end": 2379, + "loc": { + "start": { + "line": 112, + "column": 17 + }, + "end": { + "line": 112, + "column": 18 + }, + "identifierName": "i" + }, + "name": "i" + }, + "computed": true + }, + "property": { + "type": "Identifier", + "start": 2381, + "end": 2385, + "loc": { + "start": { + "line": 112, + "column": 20 + }, + "end": { + "line": 112, + "column": 24 + }, + "identifierName": "type" + }, + "name": "type" + }, + "computed": false + }, + "right": { + "type": "StringLiteral", + "start": 2388, + "end": 2396, + "loc": { + "start": { + "line": 112, + "column": 27 + }, + "end": { + "line": 112, + "column": 35 + } + }, + "extra": { + "rawValue": "STRING", + "raw": "\"STRING\"" + }, + "value": "STRING" + } + } + } + ], + "directives": [] + }, + "alternate": null + } + ], + "directives": [], + "trailingComments": null + }, + "alternate": null, + "leadingComments": [ + { + "type": "CommentLine", + "value": " x: => \"x\",", + "start": 2215, + "end": 2228, + "loc": { + "start": { + "line": 108, + "column": 6 + }, + "end": { + "line": 108, + "column": 19 + } + } + } + ], + "trailingComments": [ + { + "type": "CommentLine", + "value": " Replace dots with parentehsis", + "start": 2423, + "end": 2455, + "loc": { + "start": { + "line": 116, + "column": 6 + }, + "end": { + "line": 116, + "column": 38 + } + } + }, + { + "type": "CommentLine", + "value": " a.b => a(\"b\")", + "start": 2462, + "end": 2483, + "loc": { + "start": { + "line": 117, + "column": 6 + }, + "end": { + "line": 117, + "column": 27 + } + } + }, + { + "type": "CommentLine", + "value": " a.b.c => a(\"b\")(\"c\")", + "start": 2490, + "end": 2516, + "loc": { + "start": { + "line": 118, + "column": 6 + }, + "end": { + "line": 118, + "column": 32 + } + } + }, + { + "type": "CommentLine", + "value": " a.b(c, d) => a(\"b\", c, d)", + "start": 2523, + "end": 2553, + "loc": { + "start": { + "line": 119, + "column": 6 + }, + "end": { + "line": 119, + "column": 36 + } + } + } + ] + }, + { + "type": "IfStatement", + "start": 2560, + "end": 3024, + "loc": { + "start": { + "line": 120, + "column": 6 + }, + "end": { + "line": 136, + "column": 7 + } + }, + "test": { + "type": "LogicalExpression", + "start": 2564, + "end": 2614, + "loc": { + "start": { + "line": 120, + "column": 10 + }, + "end": { + "line": 120, + "column": 60 + } + }, + "left": { + "type": "BinaryExpression", + "start": 2564, + "end": 2587, + "loc": { + "start": { + "line": 120, + "column": 10 + }, + "end": { + "line": 120, + "column": 33 + } + }, + "left": { + "type": "MemberExpression", + "start": 2564, + "end": 2578, + "loc": { + "start": { + "line": 120, + "column": 10 + }, + "end": { + "line": 120, + "column": 24 + } + }, + "object": { + "type": "MemberExpression", + "start": 2564, + "end": 2573, + "loc": { + "start": { + "line": 120, + "column": 10 + }, + "end": { + "line": 120, + "column": 19 + } + }, + "object": { + "type": "Identifier", + "start": 2564, + "end": 2570, + "loc": { + "start": { + "line": 120, + "column": 10 + }, + "end": { + "line": 120, + "column": 16 + }, + "identifierName": "tokens" + }, + "name": "tokens", + "leadingComments": null + }, + "property": { + "type": "Identifier", + "start": 2571, + "end": 2572, + "loc": { + "start": { + "line": 120, + "column": 17 + }, + "end": { + "line": 120, + "column": 18 + }, + "identifierName": "i" + }, + "name": "i" + }, + "computed": true, + "leadingComments": null + }, + "property": { + "type": "Identifier", + "start": 2574, + "end": 2578, + "loc": { + "start": { + "line": 120, + "column": 20 + }, + "end": { + "line": 120, + "column": 24 + }, + "identifierName": "type" + }, + "name": "type" + }, + "computed": false, + "leadingComments": null + }, + "operator": "===", + "right": { + "type": "StringLiteral", + "start": 2583, + "end": 2587, + "loc": { + "start": { + "line": 120, + "column": 29 + }, + "end": { + "line": 120, + "column": 33 + } + }, + "extra": { + "rawValue": "LP", + "raw": "\"LP\"" + }, + "value": "LP" + }, + "leadingComments": null + }, + "operator": "&&", + "right": { + "type": "BinaryExpression", + "start": 2591, + "end": 2614, + "loc": { + "start": { + "line": 120, + "column": 37 + }, + "end": { + "line": 120, + "column": 60 + } + }, + "left": { + "type": "MemberExpression", + "start": 2591, + "end": 2606, + "loc": { + "start": { + "line": 120, + "column": 37 + }, + "end": { + "line": 120, + "column": 52 + } + }, + "object": { + "type": "MemberExpression", + "start": 2591, + "end": 2600, + "loc": { + "start": { + "line": 120, + "column": 37 + }, + "end": { + "line": 120, + "column": 46 + } + }, + "object": { + "type": "Identifier", + "start": 2591, + "end": 2597, + "loc": { + "start": { + "line": 120, + "column": 37 + }, + "end": { + "line": 120, + "column": 43 + }, + "identifierName": "tokens" + }, + "name": "tokens" + }, + "property": { + "type": "Identifier", + "start": 2598, + "end": 2599, + "loc": { + "start": { + "line": 120, + "column": 44 + }, + "end": { + "line": 120, + "column": 45 + }, + "identifierName": "i" + }, + "name": "i" + }, + "computed": true + }, + "property": { + "type": "Identifier", + "start": 2601, + "end": 2606, + "loc": { + "start": { + "line": 120, + "column": 47 + }, + "end": { + "line": 120, + "column": 52 + }, + "identifierName": "value" + }, + "name": "value" + }, + "computed": false + }, + "operator": "===", + "right": { + "type": "StringLiteral", + "start": 2611, + "end": 2614, + "loc": { + "start": { + "line": 120, + "column": 57 + }, + "end": { + "line": 120, + "column": 60 + } + }, + "extra": { + "rawValue": ".", + "raw": "\".\"" + }, + "value": "." + } + }, + "leadingComments": null + }, + "consequent": { + "type": "BlockStatement", + "start": 2616, + "end": 3024, + "loc": { + "start": { + "line": 120, + "column": 62 + }, + "end": { + "line": 136, + "column": 7 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 2626, + "end": 2648, + "loc": { + "start": { + "line": 121, + "column": 8 + }, + "end": { + "line": 121, + "column": 30 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 2626, + "end": 2647, + "loc": { + "start": { + "line": 121, + "column": 8 + }, + "end": { + "line": 121, + "column": 29 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 2626, + "end": 2641, + "loc": { + "start": { + "line": 121, + "column": 8 + }, + "end": { + "line": 121, + "column": 23 + } + }, + "object": { + "type": "MemberExpression", + "start": 2626, + "end": 2635, + "loc": { + "start": { + "line": 121, + "column": 8 + }, + "end": { + "line": 121, + "column": 17 + } + }, + "object": { + "type": "Identifier", + "start": 2626, + "end": 2632, + "loc": { + "start": { + "line": 121, + "column": 8 + }, + "end": { + "line": 121, + "column": 14 + }, + "identifierName": "tokens" + }, + "name": "tokens" + }, + "property": { + "type": "Identifier", + "start": 2633, + "end": 2634, + "loc": { + "start": { + "line": 121, + "column": 15 + }, + "end": { + "line": 121, + "column": 16 + }, + "identifierName": "i" + }, + "name": "i" + }, + "computed": true + }, + "property": { + "type": "Identifier", + "start": 2636, + "end": 2641, + "loc": { + "start": { + "line": 121, + "column": 18 + }, + "end": { + "line": 121, + "column": 23 + }, + "identifierName": "value" + }, + "name": "value" + }, + "computed": false + }, + "right": { + "type": "StringLiteral", + "start": 2644, + "end": 2647, + "loc": { + "start": { + "line": 121, + "column": 26 + }, + "end": { + "line": 121, + "column": 29 + } + }, + "extra": { + "rawValue": "(", + "raw": "\"(\"" + }, + "value": "(" + } + } + }, + { + "type": "VariableDeclaration", + "start": 2658, + "end": 2685, + "loc": { + "start": { + "line": 123, + "column": 8 + }, + "end": { + "line": 123, + "column": 35 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 2664, + "end": 2684, + "loc": { + "start": { + "line": 123, + "column": 14 + }, + "end": { + "line": 123, + "column": 34 + } + }, + "id": { + "type": "Identifier", + "start": 2664, + "end": 2668, + "loc": { + "start": { + "line": 123, + "column": 14 + }, + "end": { + "line": 123, + "column": 18 + }, + "identifierName": "expr" + }, + "name": "expr" + }, + "init": { + "type": "MemberExpression", + "start": 2671, + "end": 2684, + "loc": { + "start": { + "line": 123, + "column": 21 + }, + "end": { + "line": 123, + "column": 34 + } + }, + "object": { + "type": "Identifier", + "start": 2671, + "end": 2677, + "loc": { + "start": { + "line": 123, + "column": 21 + }, + "end": { + "line": 123, + "column": 27 + }, + "identifierName": "tokens" + }, + "name": "tokens" + }, + "property": { + "type": "BinaryExpression", + "start": 2678, + "end": 2683, + "loc": { + "start": { + "line": 123, + "column": 28 + }, + "end": { + "line": 123, + "column": 33 + } + }, + "left": { + "type": "Identifier", + "start": 2678, + "end": 2679, + "loc": { + "start": { + "line": 123, + "column": 28 + }, + "end": { + "line": 123, + "column": 29 + }, + "identifierName": "i" + }, + "name": "i" + }, + "operator": "+", + "right": { + "type": "NumericLiteral", + "start": 2682, + "end": 2683, + "loc": { + "start": { + "line": 123, + "column": 32 + }, + "end": { + "line": 123, + "column": 33 + } + }, + "extra": { + "rawValue": 1, + "raw": "1" + }, + "value": 1 + } + }, + "computed": true + } + } + ], + "kind": "const" + }, + { + "type": "VariableDeclaration", + "start": 2694, + "end": 2720, + "loc": { + "start": { + "line": 124, + "column": 8 + }, + "end": { + "line": 124, + "column": 34 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 2700, + "end": 2719, + "loc": { + "start": { + "line": 124, + "column": 14 + }, + "end": { + "line": 124, + "column": 33 + } + }, + "id": { + "type": "Identifier", + "start": 2700, + "end": 2703, + "loc": { + "start": { + "line": 124, + "column": 14 + }, + "end": { + "line": 124, + "column": 17 + }, + "identifierName": "arg" + }, + "name": "arg" + }, + "init": { + "type": "MemberExpression", + "start": 2706, + "end": 2719, + "loc": { + "start": { + "line": 124, + "column": 20 + }, + "end": { + "line": 124, + "column": 33 + } + }, + "object": { + "type": "Identifier", + "start": 2706, + "end": 2712, + "loc": { + "start": { + "line": 124, + "column": 20 + }, + "end": { + "line": 124, + "column": 26 + }, + "identifierName": "tokens" + }, + "name": "tokens" + }, + "property": { + "type": "BinaryExpression", + "start": 2713, + "end": 2718, + "loc": { + "start": { + "line": 124, + "column": 27 + }, + "end": { + "line": 124, + "column": 32 + } + }, + "left": { + "type": "Identifier", + "start": 2713, + "end": 2714, + "loc": { + "start": { + "line": 124, + "column": 27 + }, + "end": { + "line": 124, + "column": 28 + }, + "identifierName": "i" + }, + "name": "i" + }, + "operator": "+", + "right": { + "type": "NumericLiteral", + "start": 2717, + "end": 2718, + "loc": { + "start": { + "line": 124, + "column": 31 + }, + "end": { + "line": 124, + "column": 32 + } + }, + "extra": { + "rawValue": 2, + "raw": "2" + }, + "value": 2 + } + }, + "computed": true + } + } + ], + "kind": "const" + }, + { + "type": "IfStatement", + "start": 2730, + "end": 2807, + "loc": { + "start": { + "line": 126, + "column": 8 + }, + "end": { + "line": 128, + "column": 9 + } + }, + "test": { + "type": "LogicalExpression", + "start": 2734, + "end": 2762, + "loc": { + "start": { + "line": 126, + "column": 12 + }, + "end": { + "line": 126, + "column": 40 + } + }, + "left": { + "type": "Identifier", + "start": 2734, + "end": 2738, + "loc": { + "start": { + "line": 126, + "column": 12 + }, + "end": { + "line": 126, + "column": 16 + }, + "identifierName": "expr" + }, + "name": "expr" + }, + "operator": "&&", + "right": { + "type": "BinaryExpression", + "start": 2742, + "end": 2762, + "loc": { + "start": { + "line": 126, + "column": 20 + }, + "end": { + "line": 126, + "column": 40 + } + }, + "left": { + "type": "MemberExpression", + "start": 2742, + "end": 2751, + "loc": { + "start": { + "line": 126, + "column": 20 + }, + "end": { + "line": 126, + "column": 29 + } + }, + "object": { + "type": "Identifier", + "start": 2742, + "end": 2746, + "loc": { + "start": { + "line": 126, + "column": 20 + }, + "end": { + "line": 126, + "column": 24 + }, + "identifierName": "expr" + }, + "name": "expr" + }, + "property": { + "type": "Identifier", + "start": 2747, + "end": 2751, + "loc": { + "start": { + "line": 126, + "column": 25 + }, + "end": { + "line": 126, + "column": 29 + }, + "identifierName": "type" + }, + "name": "type" + }, + "computed": false + }, + "operator": "===", + "right": { + "type": "StringLiteral", + "start": 2756, + "end": 2762, + "loc": { + "start": { + "line": 126, + "column": 34 + }, + "end": { + "line": 126, + "column": 40 + } + }, + "extra": { + "rawValue": "WORD", + "raw": "\"WORD\"" + }, + "value": "WORD" + } + } + }, + "consequent": { + "type": "BlockStatement", + "start": 2764, + "end": 2807, + "loc": { + "start": { + "line": 126, + "column": 42 + }, + "end": { + "line": 128, + "column": 9 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 2776, + "end": 2797, + "loc": { + "start": { + "line": 127, + "column": 10 + }, + "end": { + "line": 127, + "column": 31 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 2776, + "end": 2796, + "loc": { + "start": { + "line": 127, + "column": 10 + }, + "end": { + "line": 127, + "column": 30 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 2776, + "end": 2785, + "loc": { + "start": { + "line": 127, + "column": 10 + }, + "end": { + "line": 127, + "column": 19 + } + }, + "object": { + "type": "Identifier", + "start": 2776, + "end": 2780, + "loc": { + "start": { + "line": 127, + "column": 10 + }, + "end": { + "line": 127, + "column": 14 + }, + "identifierName": "expr" + }, + "name": "expr" + }, + "property": { + "type": "Identifier", + "start": 2781, + "end": 2785, + "loc": { + "start": { + "line": 127, + "column": 15 + }, + "end": { + "line": 127, + "column": 19 + }, + "identifierName": "type" + }, + "name": "type" + }, + "computed": false + }, + "right": { + "type": "StringLiteral", + "start": 2788, + "end": 2796, + "loc": { + "start": { + "line": 127, + "column": 22 + }, + "end": { + "line": 127, + "column": 30 + } + }, + "extra": { + "rawValue": "STRING", + "raw": "\"STRING\"" + }, + "value": "STRING" + } + } + } + ], + "directives": [] + }, + "alternate": null + }, + { + "type": "IfStatement", + "start": 2817, + "end": 3016, + "loc": { + "start": { + "line": 130, + "column": 8 + }, + "end": { + "line": 135, + "column": 9 + } + }, + "test": { + "type": "LogicalExpression", + "start": 2821, + "end": 2866, + "loc": { + "start": { + "line": 130, + "column": 12 + }, + "end": { + "line": 130, + "column": 57 + } + }, + "left": { + "type": "LogicalExpression", + "start": 2821, + "end": 2845, + "loc": { + "start": { + "line": 130, + "column": 12 + }, + "end": { + "line": 130, + "column": 36 + } + }, + "left": { + "type": "Identifier", + "start": 2821, + "end": 2824, + "loc": { + "start": { + "line": 130, + "column": 12 + }, + "end": { + "line": 130, + "column": 15 + }, + "identifierName": "arg" + }, + "name": "arg" + }, + "operator": "&&", + "right": { + "type": "BinaryExpression", + "start": 2828, + "end": 2845, + "loc": { + "start": { + "line": 130, + "column": 19 + }, + "end": { + "line": 130, + "column": 36 + } + }, + "left": { + "type": "MemberExpression", + "start": 2828, + "end": 2836, + "loc": { + "start": { + "line": 130, + "column": 19 + }, + "end": { + "line": 130, + "column": 27 + } + }, + "object": { + "type": "Identifier", + "start": 2828, + "end": 2831, + "loc": { + "start": { + "line": 130, + "column": 19 + }, + "end": { + "line": 130, + "column": 22 + }, + "identifierName": "arg" + }, + "name": "arg" + }, + "property": { + "type": "Identifier", + "start": 2832, + "end": 2836, + "loc": { + "start": { + "line": 130, + "column": 23 + }, + "end": { + "line": 130, + "column": 27 + }, + "identifierName": "type" + }, + "name": "type" + }, + "computed": false + }, + "operator": "===", + "right": { + "type": "StringLiteral", + "start": 2841, + "end": 2845, + "loc": { + "start": { + "line": 130, + "column": 32 + }, + "end": { + "line": 130, + "column": 36 + } + }, + "extra": { + "rawValue": "LP", + "raw": "\"LP\"" + }, + "value": "LP" + } + } + }, + "operator": "&&", + "right": { + "type": "BinaryExpression", + "start": 2849, + "end": 2866, + "loc": { + "start": { + "line": 130, + "column": 40 + }, + "end": { + "line": 130, + "column": 57 + } + }, + "left": { + "type": "MemberExpression", + "start": 2849, + "end": 2858, + "loc": { + "start": { + "line": 130, + "column": 40 + }, + "end": { + "line": 130, + "column": 49 + } + }, + "object": { + "type": "Identifier", + "start": 2849, + "end": 2852, + "loc": { + "start": { + "line": 130, + "column": 40 + }, + "end": { + "line": 130, + "column": 43 + }, + "identifierName": "arg" + }, + "name": "arg" + }, + "property": { + "type": "Identifier", + "start": 2853, + "end": 2858, + "loc": { + "start": { + "line": 130, + "column": 44 + }, + "end": { + "line": 130, + "column": 49 + }, + "identifierName": "value" + }, + "name": "value" + }, + "computed": false + }, + "operator": "!==", + "right": { + "type": "StringLiteral", + "start": 2863, + "end": 2866, + "loc": { + "start": { + "line": 130, + "column": 54 + }, + "end": { + "line": 130, + "column": 57 + } + }, + "extra": { + "rawValue": ".", + "raw": "\".\"" + }, + "value": "." + } + } + }, + "consequent": { + "type": "BlockStatement", + "start": 2868, + "end": 2936, + "loc": { + "start": { + "line": 130, + "column": 59 + }, + "end": { + "line": 133, + "column": 9 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 2880, + "end": 2899, + "loc": { + "start": { + "line": 131, + "column": 10 + }, + "end": { + "line": 131, + "column": 29 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 2880, + "end": 2898, + "loc": { + "start": { + "line": 131, + "column": 10 + }, + "end": { + "line": 131, + "column": 28 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 2880, + "end": 2888, + "loc": { + "start": { + "line": 131, + "column": 10 + }, + "end": { + "line": 131, + "column": 18 + } + }, + "object": { + "type": "Identifier", + "start": 2880, + "end": 2883, + "loc": { + "start": { + "line": 131, + "column": 10 + }, + "end": { + "line": 131, + "column": 13 + }, + "identifierName": "arg" + }, + "name": "arg" + }, + "property": { + "type": "Identifier", + "start": 2884, + "end": 2888, + "loc": { + "start": { + "line": 131, + "column": 14 + }, + "end": { + "line": 131, + "column": 18 + }, + "identifierName": "type" + }, + "name": "type" + }, + "computed": false + }, + "right": { + "type": "StringLiteral", + "start": 2891, + "end": 2898, + "loc": { + "start": { + "line": 131, + "column": 21 + }, + "end": { + "line": 131, + "column": 28 + } + }, + "extra": { + "rawValue": "COMMA", + "raw": "\"COMMA\"" + }, + "value": "COMMA" + } + } + }, + { + "type": "ExpressionStatement", + "start": 2910, + "end": 2926, + "loc": { + "start": { + "line": 132, + "column": 10 + }, + "end": { + "line": 132, + "column": 26 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 2910, + "end": 2925, + "loc": { + "start": { + "line": 132, + "column": 10 + }, + "end": { + "line": 132, + "column": 25 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 2910, + "end": 2919, + "loc": { + "start": { + "line": 132, + "column": 10 + }, + "end": { + "line": 132, + "column": 19 + } + }, + "object": { + "type": "Identifier", + "start": 2910, + "end": 2913, + "loc": { + "start": { + "line": 132, + "column": 10 + }, + "end": { + "line": 132, + "column": 13 + }, + "identifierName": "arg" + }, + "name": "arg" + }, + "property": { + "type": "Identifier", + "start": 2914, + "end": 2919, + "loc": { + "start": { + "line": 132, + "column": 14 + }, + "end": { + "line": 132, + "column": 19 + }, + "identifierName": "value" + }, + "name": "value" + }, + "computed": false + }, + "right": { + "type": "StringLiteral", + "start": 2922, + "end": 2925, + "loc": { + "start": { + "line": 132, + "column": 22 + }, + "end": { + "line": 132, + "column": 25 + } + }, + "extra": { + "rawValue": ",", + "raw": "\",\"" + }, + "value": "," + } + } + } + ], + "directives": [] + }, + "alternate": { + "type": "BlockStatement", + "start": 2942, + "end": 3016, + "loc": { + "start": { + "line": 133, + "column": 15 + }, + "end": { + "line": 135, + "column": 9 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 2954, + "end": 3006, + "loc": { + "start": { + "line": 134, + "column": 10 + }, + "end": { + "line": 134, + "column": 62 + } + }, + "expression": { + "type": "CallExpression", + "start": 2954, + "end": 3005, + "loc": { + "start": { + "line": 134, + "column": 10 + }, + "end": { + "line": 134, + "column": 61 + } + }, + "callee": { + "type": "MemberExpression", + "start": 2954, + "end": 2967, + "loc": { + "start": { + "line": 134, + "column": 10 + }, + "end": { + "line": 134, + "column": 23 + } + }, + "object": { + "type": "Identifier", + "start": 2954, + "end": 2960, + "loc": { + "start": { + "line": 134, + "column": 10 + }, + "end": { + "line": 134, + "column": 16 + }, + "identifierName": "tokens" + }, + "name": "tokens" + }, + "property": { + "type": "Identifier", + "start": 2961, + "end": 2967, + "loc": { + "start": { + "line": 134, + "column": 17 + }, + "end": { + "line": 134, + "column": 23 + }, + "identifierName": "splice" + }, + "name": "splice" + }, + "computed": false + }, + "arguments": [ + { + "type": "BinaryExpression", + "start": 2968, + "end": 2973, + "loc": { + "start": { + "line": 134, + "column": 24 + }, + "end": { + "line": 134, + "column": 29 + } + }, + "left": { + "type": "Identifier", + "start": 2968, + "end": 2969, + "loc": { + "start": { + "line": 134, + "column": 24 + }, + "end": { + "line": 134, + "column": 25 + }, + "identifierName": "i" + }, + "name": "i" + }, + "operator": "+", + "right": { + "type": "NumericLiteral", + "start": 2972, + "end": 2973, + "loc": { + "start": { + "line": 134, + "column": 28 + }, + "end": { + "line": 134, + "column": 29 + } + }, + "extra": { + "rawValue": 2, + "raw": "2" + }, + "value": 2 + } + }, + { + "type": "NumericLiteral", + "start": 2975, + "end": 2976, + "loc": { + "start": { + "line": 134, + "column": 31 + }, + "end": { + "line": 134, + "column": 32 + } + }, + "extra": { + "rawValue": 0, + "raw": "0" + }, + "value": 0 + }, + { + "type": "ObjectExpression", + "start": 2978, + "end": 3004, + "loc": { + "start": { + "line": 134, + "column": 34 + }, + "end": { + "line": 134, + "column": 60 + } + }, + "properties": [ + { + "type": "ObjectProperty", + "start": 2980, + "end": 2990, + "loc": { + "start": { + "line": 134, + "column": 36 + }, + "end": { + "line": 134, + "column": 46 + } + }, + "method": false, + "shorthand": false, + "computed": false, + "key": { + "type": "Identifier", + "start": 2980, + "end": 2984, + "loc": { + "start": { + "line": 134, + "column": 36 + }, + "end": { + "line": 134, + "column": 40 + }, + "identifierName": "type" + }, + "name": "type" + }, + "value": { + "type": "StringLiteral", + "start": 2986, + "end": 2990, + "loc": { + "start": { + "line": 134, + "column": 42 + }, + "end": { + "line": 134, + "column": 46 + } + }, + "extra": { + "rawValue": "RP", + "raw": "\"RP\"" + }, + "value": "RP" + } + }, + { + "type": "ObjectProperty", + "start": 2992, + "end": 3002, + "loc": { + "start": { + "line": 134, + "column": 48 + }, + "end": { + "line": 134, + "column": 58 + } + }, + "method": false, + "shorthand": false, + "computed": false, + "key": { + "type": "Identifier", + "start": 2992, + "end": 2997, + "loc": { + "start": { + "line": 134, + "column": 48 + }, + "end": { + "line": 134, + "column": 53 + }, + "identifierName": "value" + }, + "name": "value" + }, + "value": { + "type": "StringLiteral", + "start": 2999, + "end": 3002, + "loc": { + "start": { + "line": 134, + "column": 55 + }, + "end": { + "line": 134, + "column": 58 + } + }, + "extra": { + "rawValue": ")", + "raw": "\")\"" + }, + "value": ")" + } + } + ] + } + ] + } + } + ], + "directives": [] + } + } + ], + "directives": [] + }, + "alternate": null, + "leadingComments": [ + { + "type": "CommentLine", + "value": " Replace dots with parentehsis", + "start": 2423, + "end": 2455, + "loc": { + "start": { + "line": 116, + "column": 6 + }, + "end": { + "line": 116, + "column": 38 + } + } + }, + { + "type": "CommentLine", + "value": " a.b => a(\"b\")", + "start": 2462, + "end": 2483, + "loc": { + "start": { + "line": 117, + "column": 6 + }, + "end": { + "line": 117, + "column": 27 + } + } + }, + { + "type": "CommentLine", + "value": " a.b.c => a(\"b\")(\"c\")", + "start": 2490, + "end": 2516, + "loc": { + "start": { + "line": 118, + "column": 6 + }, + "end": { + "line": 118, + "column": 32 + } + } + }, + { + "type": "CommentLine", + "value": " a.b(c, d) => a(\"b\", c, d)", + "start": 2523, + "end": 2553, + "loc": { + "start": { + "line": 119, + "column": 6 + }, + "end": { + "line": 119, + "column": 36 + } + } + } + ] + } + ], + "directives": [] + } + }, + { + "type": "ReturnStatement", + "start": 3036, + "end": 3050, + "loc": { + "start": { + "line": 139, + "column": 4 + }, + "end": { + "line": 139, + "column": 18 + } + }, + "argument": { + "type": "Identifier", + "start": 3043, + "end": 3049, + "loc": { + "start": { + "line": 139, + "column": 11 + }, + "end": { + "line": 139, + "column": 17 + }, + "identifierName": "tokens" + }, + "name": "tokens" + } + } + ], + "directives": [] + } + }, + { + "type": "ClassMethod", + "start": 3058, + "end": 3258, + "loc": { + "start": { + "line": 142, + "column": 2 + }, + "end": { + "line": 148, + "column": 3 + } + }, + "static": false, + "computed": false, + "key": { + "type": "Identifier", + "start": 3058, + "end": 3077, + "loc": { + "start": { + "line": 142, + "column": 2 + }, + "end": { + "line": 142, + "column": 21 + }, + "identifierName": "__updateLastIndices" + }, + "name": "__updateLastIndices" + }, + "kind": "method", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [], + "body": { + "type": "BlockStatement", + "start": 3080, + "end": 3258, + "loc": { + "start": { + "line": 142, + "column": 24 + }, + "end": { + "line": 148, + "column": 3 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 3086, + "end": 3163, + "loc": { + "start": { + "line": 143, + "column": 4 + }, + "end": { + "line": 145, + "column": 7 + } + }, + "expression": { + "type": "CallExpression", + "start": 3086, + "end": 3162, + "loc": { + "start": { + "line": 143, + "column": 4 + }, + "end": { + "line": 145, + "column": 6 + } + }, + "callee": { + "type": "MemberExpression", + "start": 3086, + "end": 3106, + "loc": { + "start": { + "line": 143, + "column": 4 + }, + "end": { + "line": 143, + "column": 24 + } + }, + "object": { + "type": "MemberExpression", + "start": 3086, + "end": 3098, + "loc": { + "start": { + "line": 143, + "column": 4 + }, + "end": { + "line": 143, + "column": 16 + } + }, + "object": { + "type": "Identifier", + "start": 3086, + "end": 3091, + "loc": { + "start": { + "line": 143, + "column": 4 + }, + "end": { + "line": 143, + "column": 9 + }, + "identifierName": "Lexer" + }, + "name": "Lexer" + }, + "property": { + "type": "Identifier", + "start": 3092, + "end": 3098, + "loc": { + "start": { + "line": 143, + "column": 10 + }, + "end": { + "line": 143, + "column": 16 + }, + "identifierName": "TOKENS" + }, + "name": "TOKENS" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 3099, + "end": 3106, + "loc": { + "start": { + "line": 143, + "column": 17 + }, + "end": { + "line": 143, + "column": 24 + }, + "identifierName": "forEach" + }, + "name": "forEach" + }, + "computed": false + }, + "arguments": [ + { + "type": "ArrowFunctionExpression", + "start": 3107, + "end": 3161, + "loc": { + "start": { + "line": 143, + "column": 25 + }, + "end": { + "line": 145, + "column": 5 + } + }, + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 3107, + "end": 3111, + "loc": { + "start": { + "line": 143, + "column": 25 + }, + "end": { + "line": 143, + "column": 29 + }, + "identifierName": "expr" + }, + "name": "expr" + } + ], + "body": { + "type": "BlockStatement", + "start": 3115, + "end": 3161, + "loc": { + "start": { + "line": 143, + "column": 33 + }, + "end": { + "line": 145, + "column": 5 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 3123, + "end": 3155, + "loc": { + "start": { + "line": 144, + "column": 6 + }, + "end": { + "line": 144, + "column": 38 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 3123, + "end": 3154, + "loc": { + "start": { + "line": 144, + "column": 6 + }, + "end": { + "line": 144, + "column": 37 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 3123, + "end": 3137, + "loc": { + "start": { + "line": 144, + "column": 6 + }, + "end": { + "line": 144, + "column": 20 + } + }, + "object": { + "type": "Identifier", + "start": 3123, + "end": 3127, + "loc": { + "start": { + "line": 144, + "column": 6 + }, + "end": { + "line": 144, + "column": 10 + }, + "identifierName": "expr" + }, + "name": "expr" + }, + "property": { + "type": "Identifier", + "start": 3128, + "end": 3137, + "loc": { + "start": { + "line": 144, + "column": 11 + }, + "end": { + "line": 144, + "column": 20 + }, + "identifierName": "lastIndex" + }, + "name": "lastIndex" + }, + "computed": false + }, + "right": { + "type": "MemberExpression", + "start": 3140, + "end": 3154, + "loc": { + "start": { + "line": 144, + "column": 23 + }, + "end": { + "line": 144, + "column": 37 + } + }, + "object": { + "type": "ThisExpression", + "start": 3140, + "end": 3144, + "loc": { + "start": { + "line": 144, + "column": 23 + }, + "end": { + "line": 144, + "column": 27 + } + } + }, + "property": { + "type": "Identifier", + "start": 3145, + "end": 3154, + "loc": { + "start": { + "line": 144, + "column": 28 + }, + "end": { + "line": 144, + "column": 37 + }, + "identifierName": "lastIndex" + }, + "name": "lastIndex" + }, + "computed": false + } + } + } + ], + "directives": [] + } + } + ] + } + }, + { + "type": "ExpressionStatement", + "start": 3168, + "end": 3208, + "loc": { + "start": { + "line": 146, + "column": 4 + }, + "end": { + "line": 146, + "column": 44 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 3168, + "end": 3207, + "loc": { + "start": { + "line": 146, + "column": 4 + }, + "end": { + "line": 146, + "column": 43 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 3168, + "end": 3190, + "loc": { + "start": { + "line": 146, + "column": 4 + }, + "end": { + "line": 146, + "column": 26 + } + }, + "object": { + "type": "MemberExpression", + "start": 3168, + "end": 3180, + "loc": { + "start": { + "line": 146, + "column": 4 + }, + "end": { + "line": 146, + "column": 16 + } + }, + "object": { + "type": "Identifier", + "start": 3168, + "end": 3173, + "loc": { + "start": { + "line": 146, + "column": 4 + }, + "end": { + "line": 146, + "column": 9 + }, + "identifierName": "Lexer" + }, + "name": "Lexer" + }, + "property": { + "type": "Identifier", + "start": 3174, + "end": 3180, + "loc": { + "start": { + "line": 146, + "column": 10 + }, + "end": { + "line": 146, + "column": 16 + }, + "identifierName": "WHITES" + }, + "name": "WHITES" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 3181, + "end": 3190, + "loc": { + "start": { + "line": 146, + "column": 17 + }, + "end": { + "line": 146, + "column": 26 + }, + "identifierName": "lastIndex" + }, + "name": "lastIndex" + }, + "computed": false + }, + "right": { + "type": "MemberExpression", + "start": 3193, + "end": 3207, + "loc": { + "start": { + "line": 146, + "column": 29 + }, + "end": { + "line": 146, + "column": 43 + } + }, + "object": { + "type": "ThisExpression", + "start": 3193, + "end": 3197, + "loc": { + "start": { + "line": 146, + "column": 29 + }, + "end": { + "line": 146, + "column": 33 + } + } + }, + "property": { + "type": "Identifier", + "start": 3198, + "end": 3207, + "loc": { + "start": { + "line": 146, + "column": 34 + }, + "end": { + "line": 146, + "column": 43 + }, + "identifierName": "lastIndex" + }, + "name": "lastIndex" + }, + "computed": false + } + } + }, + { + "type": "ExpressionStatement", + "start": 3213, + "end": 3254, + "loc": { + "start": { + "line": 147, + "column": 4 + }, + "end": { + "line": 147, + "column": 45 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 3213, + "end": 3253, + "loc": { + "start": { + "line": 147, + "column": 4 + }, + "end": { + "line": 147, + "column": 44 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 3213, + "end": 3236, + "loc": { + "start": { + "line": 147, + "column": 4 + }, + "end": { + "line": 147, + "column": 27 + } + }, + "object": { + "type": "MemberExpression", + "start": 3213, + "end": 3226, + "loc": { + "start": { + "line": 147, + "column": 4 + }, + "end": { + "line": 147, + "column": 17 + } + }, + "object": { + "type": "Identifier", + "start": 3213, + "end": 3218, + "loc": { + "start": { + "line": 147, + "column": 4 + }, + "end": { + "line": 147, + "column": 9 + }, + "identifierName": "Lexer" + }, + "name": "Lexer" + }, + "property": { + "type": "Identifier", + "start": 3219, + "end": 3226, + "loc": { + "start": { + "line": 147, + "column": 10 + }, + "end": { + "line": 147, + "column": 17 + }, + "identifierName": "NEWLINE" + }, + "name": "NEWLINE" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 3227, + "end": 3236, + "loc": { + "start": { + "line": 147, + "column": 18 + }, + "end": { + "line": 147, + "column": 27 + }, + "identifierName": "lastIndex" + }, + "name": "lastIndex" + }, + "computed": false + }, + "right": { + "type": "MemberExpression", + "start": 3239, + "end": 3253, + "loc": { + "start": { + "line": 147, + "column": 30 + }, + "end": { + "line": 147, + "column": 44 + } + }, + "object": { + "type": "ThisExpression", + "start": 3239, + "end": 3243, + "loc": { + "start": { + "line": 147, + "column": 30 + }, + "end": { + "line": 147, + "column": 34 + } + } + }, + "property": { + "type": "Identifier", + "start": 3244, + "end": 3253, + "loc": { + "start": { + "line": 147, + "column": 35 + }, + "end": { + "line": 147, + "column": 44 + }, + "identifierName": "lastIndex" + }, + "name": "lastIndex" + }, + "computed": false + } + } + } + ], + "directives": [] + } + } + ] + }, + "__PseudoExport__": false, + "leadingComments": [], + "trailingComments": [] + }, + "specifiers": null, + "source": null, + "leadingComments": null + } + ], + "directives": [] + }, + "comments": [ + { + "type": "CommentLine", + "value": " Update lastIndex property for each expression used", + "start": 1253, + "end": 1306, + "loc": { + "start": { + "line": 73, + "column": 4 + }, + "end": { "line": 73, "column": 57 } @@ -10046,8 +18839,8 @@ { "type": "CommentLine", "value": " Match and ignore whitespaces and newlines", - "start": 1354, - "end": 1398, + "start": 1344, + "end": 1388, "loc": { "start": { "line": 76, @@ -10062,8 +18855,8 @@ { "type": "CommentLine", "value": " Iterate through each regex", - "start": 1656, - "end": 1685, + "start": 1646, + "end": 1675, "loc": { "start": { "line": 87, @@ -10078,8 +18871,8 @@ { "type": "CommentLine", "value": " When matching a expression, add the current line and set the token", - "start": 1821, - "end": 1890, + "start": 1811, + "end": 1880, "loc": { "start": { "line": 92, @@ -10094,8 +18887,8 @@ { "type": "CommentLine", "value": " Return the matched token, or null if anything was found", - "start": 2061, - "end": 2119, + "start": 2051, + "end": 2109, "loc": { "start": { "line": 102, @@ -10110,8 +18903,8 @@ { "type": "CommentLine", "value": " x: => \"x\",", - "start": 2225, - "end": 2238, + "start": 2215, + "end": 2228, "loc": { "start": { "line": 108, @@ -10126,8 +18919,8 @@ { "type": "CommentLine", "value": " Replace dots with parentehsis", - "start": 2433, - "end": 2465, + "start": 2423, + "end": 2455, "loc": { "start": { "line": 116, @@ -10142,8 +18935,8 @@ { "type": "CommentLine", "value": " a.b => a(\"b\")", - "start": 2472, - "end": 2493, + "start": 2462, + "end": 2483, "loc": { "start": { "line": 117, @@ -10158,8 +18951,8 @@ { "type": "CommentLine", "value": " a.b.c => a(\"b\")(\"c\")", - "start": 2500, - "end": 2526, + "start": 2490, + "end": 2516, "loc": { "start": { "line": 118, @@ -10174,8 +18967,8 @@ { "type": "CommentLine", "value": " a.b(c, d) => a(\"b\", c, d)", - "start": 2533, - "end": 2563, + "start": 2523, + "end": 2553, "loc": { "start": { "line": 119, @@ -10191,10 +18984,10 @@ "tokens": [ { "type": { - "label": "const", - "keyword": "const", + "label": "import", + "keyword": "import", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -10203,9 +18996,9 @@ "binop": null, "updateContext": null }, - "value": "const", + "value": "import", "start": 0, - "end": 5, + "end": 6, "loc": { "start": { "line": 1, @@ -10213,7 +19006,7 @@ }, "end": { "line": 1, - "column": 5 + "column": 6 } } }, @@ -10230,43 +19023,16 @@ "binop": null }, "value": "tokenRegex", - "start": 6, - "end": 16, + "start": 7, + "end": 17, "loc": { "start": { "line": 1, - "column": 6 + "column": 7 }, "end": { - "line": 1, - "column": 16 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 17, - "end": 18, - "loc": { - "start": { "line": 1, "column": 17 - }, - "end": { - "line": 1, - "column": 18 } } }, @@ -10282,42 +19048,17 @@ "postfix": false, "binop": null }, - "value": "require", - "start": 19, - "end": 26, - "loc": { - "start": { - "line": 1, - "column": 19 - }, - "end": { - "line": 1, - "column": 26 - } - } - }, - { - "type": { - "label": "(", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 26, - "end": 27, + "value": "from", + "start": 18, + "end": 22, "loc": { "start": { "line": 1, - "column": 26 + "column": 18 }, "end": { "line": 1, - "column": 27 + "column": 22 } } }, @@ -10335,41 +19076,16 @@ "updateContext": null }, "value": "./tokenRegex.js", - "start": 27, - "end": 44, - "loc": { - "start": { - "line": 1, - "column": 27 - }, - "end": { - "line": 1, - "column": 44 - } - } - }, - { - "type": { - "label": ")", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 44, - "end": 45, + "start": 23, + "end": 40, "loc": { "start": { "line": 1, - "column": 44 + "column": 23 }, "end": { "line": 1, - "column": 45 + "column": 40 } } }, @@ -10386,25 +19102,25 @@ "binop": null, "updateContext": null }, - "start": 45, - "end": 46, + "start": 40, + "end": 41, "loc": { "start": { "line": 1, - "column": 45 + "column": 40 }, "end": { "line": 1, - "column": 46 + "column": 41 } } }, { "type": { - "label": "const", - "keyword": "const", + "label": "import", + "keyword": "import", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -10413,9 +19129,9 @@ "binop": null, "updateContext": null }, - "value": "const", - "start": 47, - "end": 52, + "value": "import", + "start": 42, + "end": 48, "loc": { "start": { "line": 2, @@ -10423,7 +19139,7 @@ }, "end": { "line": 2, - "column": 5 + "column": 6 } } }, @@ -10440,43 +19156,16 @@ "binop": null }, "value": "fs", - "start": 53, - "end": 55, + "start": 49, + "end": 51, "loc": { "start": { "line": 2, - "column": 6 + "column": 7 }, "end": { - "line": 2, - "column": 8 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 56, - "end": 57, - "loc": { - "start": { "line": 2, "column": 9 - }, - "end": { - "line": 2, - "column": 10 } } }, @@ -10492,42 +19181,17 @@ "postfix": false, "binop": null }, - "value": "require", - "start": 58, - "end": 65, - "loc": { - "start": { - "line": 2, - "column": 11 - }, - "end": { - "line": 2, - "column": 18 - } - } - }, - { - "type": { - "label": "(", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 65, - "end": 66, + "value": "from", + "start": 52, + "end": 56, "loc": { "start": { "line": 2, - "column": 18 + "column": 10 }, "end": { "line": 2, - "column": 19 + "column": 14 } } }, @@ -10545,41 +19209,16 @@ "updateContext": null }, "value": "fs", - "start": 66, - "end": 70, - "loc": { - "start": { - "line": 2, - "column": 19 - }, - "end": { - "line": 2, - "column": 23 - } - } - }, - { - "type": { - "label": ")", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 70, - "end": 71, + "start": 57, + "end": 61, "loc": { "start": { "line": 2, - "column": 23 + "column": 15 }, "end": { "line": 2, - "column": 24 + "column": 19 } } }, @@ -10596,16 +19235,16 @@ "binop": null, "updateContext": null }, - "start": 71, - "end": 72, + "start": 61, + "end": 62, "loc": { "start": { "line": 2, - "column": 24 + "column": 19 }, "end": { "line": 2, - "column": 25 + "column": 20 } } }, @@ -10624,8 +19263,8 @@ "updateContext": null }, "value": "class", - "start": 74, - "end": 79, + "start": 64, + "end": 69, "loc": { "start": { "line": 4, @@ -10650,8 +19289,8 @@ "binop": null }, "value": "Lexer", - "start": 80, - "end": 85, + "start": 70, + "end": 75, "loc": { "start": { "line": 4, @@ -10675,8 +19314,8 @@ "postfix": false, "binop": null }, - "start": 86, - "end": 87, + "start": 76, + "end": 77, "loc": { "start": { "line": 4, @@ -10701,8 +19340,8 @@ "binop": null }, "value": "constructor", - "start": 90, - "end": 101, + "start": 80, + "end": 91, "loc": { "start": { "line": 5, @@ -10726,8 +19365,8 @@ "postfix": false, "binop": null }, - "start": 101, - "end": 102, + "start": 91, + "end": 92, "loc": { "start": { "line": 5, @@ -10751,8 +19390,8 @@ "postfix": false, "binop": null }, - "start": 102, - "end": 103, + "start": 92, + "end": 93, "loc": { "start": { "line": 5, @@ -10776,8 +19415,8 @@ "postfix": false, "binop": null }, - "start": 104, - "end": 105, + "start": 94, + "end": 95, "loc": { "start": { "line": 5, @@ -10804,8 +19443,8 @@ "updateContext": null }, "value": "this", - "start": 110, - "end": 114, + "start": 100, + "end": 104, "loc": { "start": { "line": 6, @@ -10830,8 +19469,8 @@ "binop": null, "updateContext": null }, - "start": 114, - "end": 115, + "start": 104, + "end": 105, "loc": { "start": { "line": 6, @@ -10856,8 +19495,8 @@ "binop": null }, "value": "lastIndex", - "start": 115, - "end": 124, + "start": 105, + "end": 114, "loc": { "start": { "line": 6, @@ -10883,8 +19522,8 @@ "updateContext": null }, "value": "=", - "start": 125, - "end": 126, + "start": 115, + "end": 116, "loc": { "start": { "line": 6, @@ -10910,8 +19549,8 @@ "updateContext": null }, "value": 0, - "start": 127, - "end": 128, + "start": 117, + "end": 118, "loc": { "start": { "line": 6, @@ -10936,8 +19575,8 @@ "binop": null, "updateContext": null }, - "start": 128, - "end": 129, + "start": 118, + "end": 119, "loc": { "start": { "line": 6, @@ -10964,8 +19603,8 @@ "updateContext": null }, "value": "this", - "start": 134, - "end": 138, + "start": 124, + "end": 128, "loc": { "start": { "line": 7, @@ -10990,8 +19629,8 @@ "binop": null, "updateContext": null }, - "start": 138, - "end": 139, + "start": 128, + "end": 129, "loc": { "start": { "line": 7, @@ -11016,8 +19655,8 @@ "binop": null }, "value": "line", - "start": 139, - "end": 143, + "start": 129, + "end": 133, "loc": { "start": { "line": 7, @@ -11043,8 +19682,8 @@ "updateContext": null }, "value": "=", - "start": 144, - "end": 145, + "start": 134, + "end": 135, "loc": { "start": { "line": 7, @@ -11070,8 +19709,8 @@ "updateContext": null }, "value": 1, - "start": 146, - "end": 147, + "start": 136, + "end": 137, "loc": { "start": { "line": 7, @@ -11096,8 +19735,8 @@ "binop": null, "updateContext": null }, - "start": 147, - "end": 148, + "start": 137, + "end": 138, "loc": { "start": { "line": 7, @@ -11121,8 +19760,8 @@ "postfix": false, "binop": null }, - "start": 151, - "end": 152, + "start": 141, + "end": 142, "loc": { "start": { "line": 8, @@ -11147,8 +19786,8 @@ "binop": null }, "value": "setProgram", - "start": 156, - "end": 166, + "start": 146, + "end": 156, "loc": { "start": { "line": 10, @@ -11172,8 +19811,8 @@ "postfix": false, "binop": null }, - "start": 166, - "end": 167, + "start": 156, + "end": 157, "loc": { "start": { "line": 10, @@ -11198,8 +19837,8 @@ "binop": null }, "value": "program", - "start": 167, - "end": 174, + "start": 157, + "end": 164, "loc": { "start": { "line": 10, @@ -11223,8 +19862,8 @@ "postfix": false, "binop": null }, - "start": 174, - "end": 175, + "start": 164, + "end": 165, "loc": { "start": { "line": 10, @@ -11248,8 +19887,8 @@ "postfix": false, "binop": null }, - "start": 176, - "end": 177, + "start": 166, + "end": 167, "loc": { "start": { "line": 10, @@ -11276,8 +19915,8 @@ "updateContext": null }, "value": "this", - "start": 182, - "end": 186, + "start": 172, + "end": 176, "loc": { "start": { "line": 11, @@ -11302,8 +19941,8 @@ "binop": null, "updateContext": null }, - "start": 186, - "end": 187, + "start": 176, + "end": 177, "loc": { "start": { "line": 11, @@ -11328,8 +19967,8 @@ "binop": null }, "value": "program", - "start": 187, - "end": 194, + "start": 177, + "end": 184, "loc": { "start": { "line": 11, @@ -11355,8 +19994,8 @@ "updateContext": null }, "value": "=", - "start": 195, - "end": 196, + "start": 185, + "end": 186, "loc": { "start": { "line": 11, @@ -11381,8 +20020,8 @@ "binop": null }, "value": "program", - "start": 197, - "end": 204, + "start": 187, + "end": 194, "loc": { "start": { "line": 11, @@ -11407,8 +20046,8 @@ "binop": null, "updateContext": null }, - "start": 204, - "end": 205, + "start": 194, + "end": 195, "loc": { "start": { "line": 11, @@ -11435,8 +20074,8 @@ "updateContext": null }, "value": "this", - "start": 211, - "end": 215, + "start": 201, + "end": 205, "loc": { "start": { "line": 13, @@ -11461,8 +20100,8 @@ "binop": null, "updateContext": null }, - "start": 215, - "end": 216, + "start": 205, + "end": 206, "loc": { "start": { "line": 13, @@ -11487,8 +20126,8 @@ "binop": null }, "value": "lastIndex", - "start": 216, - "end": 225, + "start": 206, + "end": 215, "loc": { "start": { "line": 13, @@ -11514,8 +20153,8 @@ "updateContext": null }, "value": "=", - "start": 226, - "end": 227, + "start": 216, + "end": 217, "loc": { "start": { "line": 13, @@ -11541,8 +20180,8 @@ "updateContext": null }, "value": 0, - "start": 228, - "end": 229, + "start": 218, + "end": 219, "loc": { "start": { "line": 13, @@ -11567,8 +20206,8 @@ "binop": null, "updateContext": null }, - "start": 229, - "end": 230, + "start": 219, + "end": 220, "loc": { "start": { "line": 13, @@ -11595,8 +20234,8 @@ "updateContext": null }, "value": "this", - "start": 235, - "end": 239, + "start": 225, + "end": 229, "loc": { "start": { "line": 14, @@ -11621,8 +20260,8 @@ "binop": null, "updateContext": null }, - "start": 239, - "end": 240, + "start": 229, + "end": 230, "loc": { "start": { "line": 14, @@ -11647,8 +20286,8 @@ "binop": null }, "value": "line", - "start": 240, - "end": 244, + "start": 230, + "end": 234, "loc": { "start": { "line": 14, @@ -11674,8 +20313,8 @@ "updateContext": null }, "value": "=", - "start": 245, - "end": 246, + "start": 235, + "end": 236, "loc": { "start": { "line": 14, @@ -11701,8 +20340,8 @@ "updateContext": null }, "value": 1, - "start": 247, - "end": 248, + "start": 237, + "end": 238, "loc": { "start": { "line": 14, @@ -11727,8 +20366,8 @@ "binop": null, "updateContext": null }, - "start": 248, - "end": 249, + "start": 238, + "end": 239, "loc": { "start": { "line": 14, @@ -11755,8 +20394,8 @@ "updateContext": null }, "value": "return", - "start": 255, - "end": 261, + "start": 245, + "end": 251, "loc": { "start": { "line": 16, @@ -11783,8 +20422,8 @@ "updateContext": null }, "value": "this", - "start": 262, - "end": 266, + "start": 252, + "end": 256, "loc": { "start": { "line": 16, @@ -11809,8 +20448,8 @@ "binop": null, "updateContext": null }, - "start": 266, - "end": 267, + "start": 256, + "end": 257, "loc": { "start": { "line": 16, @@ -11834,8 +20473,8 @@ "postfix": false, "binop": null }, - "start": 270, - "end": 271, + "start": 260, + "end": 261, "loc": { "start": { "line": 17, @@ -11860,8 +20499,8 @@ "binop": null }, "value": "tokenize", - "start": 275, - "end": 283, + "start": 265, + "end": 273, "loc": { "start": { "line": 19, @@ -11885,8 +20524,8 @@ "postfix": false, "binop": null }, - "start": 283, - "end": 284, + "start": 273, + "end": 274, "loc": { "start": { "line": 19, @@ -11911,8 +20550,8 @@ "binop": null }, "value": "program", - "start": 284, - "end": 291, + "start": 274, + "end": 281, "loc": { "start": { "line": 19, @@ -11936,8 +20575,8 @@ "postfix": false, "binop": null }, - "start": 291, - "end": 292, + "start": 281, + "end": 282, "loc": { "start": { "line": 19, @@ -11961,8 +20600,8 @@ "postfix": false, "binop": null }, - "start": 293, - "end": 294, + "start": 283, + "end": 284, "loc": { "start": { "line": 19, @@ -11989,8 +20628,8 @@ "updateContext": null }, "value": "this", - "start": 299, - "end": 303, + "start": 289, + "end": 293, "loc": { "start": { "line": 20, @@ -12015,8 +20654,8 @@ "binop": null, "updateContext": null }, - "start": 303, - "end": 304, + "start": 293, + "end": 294, "loc": { "start": { "line": 20, @@ -12041,8 +20680,8 @@ "binop": null }, "value": "setProgram", - "start": 304, - "end": 314, + "start": 294, + "end": 304, "loc": { "start": { "line": 20, @@ -12066,8 +20705,8 @@ "postfix": false, "binop": null }, - "start": 314, - "end": 315, + "start": 304, + "end": 305, "loc": { "start": { "line": 20, @@ -12092,8 +20731,8 @@ "binop": null }, "value": "program", - "start": 315, - "end": 322, + "start": 305, + "end": 312, "loc": { "start": { "line": 20, @@ -12117,8 +20756,8 @@ "postfix": false, "binop": null }, - "start": 322, - "end": 323, + "start": 312, + "end": 313, "loc": { "start": { "line": 20, @@ -12143,8 +20782,8 @@ "binop": null, "updateContext": null }, - "start": 323, - "end": 324, + "start": 313, + "end": 314, "loc": { "start": { "line": 20, @@ -12171,8 +20810,8 @@ "updateContext": null }, "value": "return", - "start": 330, - "end": 336, + "start": 320, + "end": 326, "loc": { "start": { "line": 22, @@ -12199,8 +20838,8 @@ "updateContext": null }, "value": "this", - "start": 337, - "end": 341, + "start": 327, + "end": 331, "loc": { "start": { "line": 22, @@ -12225,8 +20864,8 @@ "binop": null, "updateContext": null }, - "start": 341, - "end": 342, + "start": 331, + "end": 332, "loc": { "start": { "line": 22, @@ -12251,8 +20890,8 @@ "binop": null }, "value": "_getTokens", - "start": 342, - "end": 352, + "start": 332, + "end": 342, "loc": { "start": { "line": 22, @@ -12276,8 +20915,8 @@ "postfix": false, "binop": null }, - "start": 352, - "end": 353, + "start": 342, + "end": 343, "loc": { "start": { "line": 22, @@ -12301,8 +20940,8 @@ "postfix": false, "binop": null }, - "start": 353, - "end": 354, + "start": 343, + "end": 344, "loc": { "start": { "line": 22, @@ -12327,8 +20966,8 @@ "binop": null, "updateContext": null }, - "start": 354, - "end": 355, + "start": 344, + "end": 345, "loc": { "start": { "line": 22, @@ -12352,8 +20991,8 @@ "postfix": false, "binop": null }, - "start": 358, - "end": 359, + "start": 348, + "end": 349, "loc": { "start": { "line": 23, @@ -12378,8 +21017,8 @@ "binop": null }, "value": "static", - "start": 363, - "end": 369, + "start": 353, + "end": 359, "loc": { "start": { "line": 25, @@ -12404,8 +21043,8 @@ "binop": null }, "value": "tokenize", - "start": 370, - "end": 378, + "start": 360, + "end": 368, "loc": { "start": { "line": 25, @@ -12429,8 +21068,8 @@ "postfix": false, "binop": null }, - "start": 378, - "end": 379, + "start": 368, + "end": 369, "loc": { "start": { "line": 25, @@ -12455,8 +21094,8 @@ "binop": null }, "value": "program", - "start": 379, - "end": 386, + "start": 369, + "end": 376, "loc": { "start": { "line": 25, @@ -12480,8 +21119,8 @@ "postfix": false, "binop": null }, - "start": 386, - "end": 387, + "start": 376, + "end": 377, "loc": { "start": { "line": 25, @@ -12505,8 +21144,8 @@ "postfix": false, "binop": null }, - "start": 388, - "end": 389, + "start": 378, + "end": 379, "loc": { "start": { "line": 25, @@ -12533,8 +21172,8 @@ "updateContext": null }, "value": "return", - "start": 394, - "end": 400, + "start": 384, + "end": 390, "loc": { "start": { "line": 26, @@ -12561,8 +21200,8 @@ "updateContext": null }, "value": "new", - "start": 401, - "end": 404, + "start": 391, + "end": 394, "loc": { "start": { "line": 26, @@ -12587,8 +21226,8 @@ "binop": null }, "value": "Lexer", - "start": 405, - "end": 410, + "start": 395, + "end": 400, "loc": { "start": { "line": 26, @@ -12612,8 +21251,8 @@ "postfix": false, "binop": null }, - "start": 410, - "end": 411, + "start": 400, + "end": 401, "loc": { "start": { "line": 26, @@ -12637,8 +21276,8 @@ "postfix": false, "binop": null }, - "start": 411, - "end": 412, + "start": 401, + "end": 402, "loc": { "start": { "line": 26, @@ -12663,8 +21302,8 @@ "binop": null, "updateContext": null }, - "start": 412, - "end": 413, + "start": 402, + "end": 403, "loc": { "start": { "line": 26, @@ -12689,8 +21328,8 @@ "binop": null }, "value": "tokenize", - "start": 413, - "end": 421, + "start": 403, + "end": 411, "loc": { "start": { "line": 26, @@ -12714,8 +21353,8 @@ "postfix": false, "binop": null }, - "start": 421, - "end": 422, + "start": 411, + "end": 412, "loc": { "start": { "line": 26, @@ -12740,8 +21379,8 @@ "binop": null }, "value": "program", - "start": 422, - "end": 429, + "start": 412, + "end": 419, "loc": { "start": { "line": 26, @@ -12765,8 +21404,8 @@ "postfix": false, "binop": null }, - "start": 429, - "end": 430, + "start": 419, + "end": 420, "loc": { "start": { "line": 26, @@ -12791,8 +21430,8 @@ "binop": null, "updateContext": null }, - "start": 430, - "end": 431, + "start": 420, + "end": 421, "loc": { "start": { "line": 26, @@ -12816,8 +21455,8 @@ "postfix": false, "binop": null }, - "start": 434, - "end": 435, + "start": 424, + "end": 425, "loc": { "start": { "line": 27, @@ -12842,8 +21481,8 @@ "binop": null }, "value": "tokenizeFromFile", - "start": 439, - "end": 455, + "start": 429, + "end": 445, "loc": { "start": { "line": 29, @@ -12867,8 +21506,8 @@ "postfix": false, "binop": null }, - "start": 455, - "end": 456, + "start": 445, + "end": 446, "loc": { "start": { "line": 29, @@ -12893,8 +21532,8 @@ "binop": null }, "value": "file", - "start": 456, - "end": 460, + "start": 446, + "end": 450, "loc": { "start": { "line": 29, @@ -12918,8 +21557,8 @@ "postfix": false, "binop": null }, - "start": 460, - "end": 461, + "start": 450, + "end": 451, "loc": { "start": { "line": 29, @@ -12943,8 +21582,8 @@ "postfix": false, "binop": null }, - "start": 462, - "end": 463, + "start": 452, + "end": 453, "loc": { "start": { "line": 29, @@ -12971,8 +21610,8 @@ "updateContext": null }, "value": "const", - "start": 468, - "end": 473, + "start": 458, + "end": 463, "loc": { "start": { "line": 30, @@ -12997,8 +21636,8 @@ "binop": null }, "value": "program", - "start": 474, - "end": 481, + "start": 464, + "end": 471, "loc": { "start": { "line": 30, @@ -13024,8 +21663,8 @@ "updateContext": null }, "value": "=", - "start": 482, - "end": 483, + "start": 472, + "end": 473, "loc": { "start": { "line": 30, @@ -13050,8 +21689,8 @@ "binop": null }, "value": "fs", - "start": 484, - "end": 486, + "start": 474, + "end": 476, "loc": { "start": { "line": 30, @@ -13076,8 +21715,8 @@ "binop": null, "updateContext": null }, - "start": 486, - "end": 487, + "start": 476, + "end": 477, "loc": { "start": { "line": 30, @@ -13102,8 +21741,8 @@ "binop": null }, "value": "readFileSync", - "start": 487, - "end": 499, + "start": 477, + "end": 489, "loc": { "start": { "line": 30, @@ -13127,8 +21766,8 @@ "postfix": false, "binop": null }, - "start": 499, - "end": 500, + "start": 489, + "end": 490, "loc": { "start": { "line": 30, @@ -13153,8 +21792,8 @@ "binop": null }, "value": "file", - "start": 500, - "end": 504, + "start": 490, + "end": 494, "loc": { "start": { "line": 30, @@ -13179,8 +21818,8 @@ "binop": null, "updateContext": null }, - "start": 504, - "end": 505, + "start": 494, + "end": 495, "loc": { "start": { "line": 30, @@ -13206,8 +21845,8 @@ "updateContext": null }, "value": "utf8", - "start": 506, - "end": 512, + "start": 496, + "end": 502, "loc": { "start": { "line": 30, @@ -13231,8 +21870,8 @@ "postfix": false, "binop": null }, - "start": 512, - "end": 513, + "start": 502, + "end": 503, "loc": { "start": { "line": 30, @@ -13257,8 +21896,8 @@ "binop": null, "updateContext": null }, - "start": 513, - "end": 514, + "start": 503, + "end": 504, "loc": { "start": { "line": 30, @@ -13285,8 +21924,8 @@ "updateContext": null }, "value": "return", - "start": 520, - "end": 526, + "start": 510, + "end": 516, "loc": { "start": { "line": 32, @@ -13313,8 +21952,8 @@ "updateContext": null }, "value": "this", - "start": 527, - "end": 531, + "start": 517, + "end": 521, "loc": { "start": { "line": 32, @@ -13339,8 +21978,8 @@ "binop": null, "updateContext": null }, - "start": 531, - "end": 532, + "start": 521, + "end": 522, "loc": { "start": { "line": 32, @@ -13365,8 +22004,8 @@ "binop": null }, "value": "tokenize", - "start": 532, - "end": 540, + "start": 522, + "end": 530, "loc": { "start": { "line": 32, @@ -13390,8 +22029,8 @@ "postfix": false, "binop": null }, - "start": 540, - "end": 541, + "start": 530, + "end": 531, "loc": { "start": { "line": 32, @@ -13416,8 +22055,8 @@ "binop": null }, "value": "program", - "start": 541, - "end": 548, + "start": 531, + "end": 538, "loc": { "start": { "line": 32, @@ -13441,8 +22080,8 @@ "postfix": false, "binop": null }, - "start": 548, - "end": 549, + "start": 538, + "end": 539, "loc": { "start": { "line": 32, @@ -13467,8 +22106,8 @@ "binop": null, "updateContext": null }, - "start": 549, - "end": 550, + "start": 539, + "end": 540, "loc": { "start": { "line": 32, @@ -13492,8 +22131,8 @@ "postfix": false, "binop": null }, - "start": 553, - "end": 554, + "start": 543, + "end": 544, "loc": { "start": { "line": 33, @@ -13518,8 +22157,8 @@ "binop": null }, "value": "static", - "start": 558, - "end": 564, + "start": 548, + "end": 554, "loc": { "start": { "line": 35, @@ -13544,8 +22183,8 @@ "binop": null }, "value": "tokenizeFromFile", - "start": 565, - "end": 581, + "start": 555, + "end": 571, "loc": { "start": { "line": 35, @@ -13569,8 +22208,8 @@ "postfix": false, "binop": null }, - "start": 581, - "end": 582, + "start": 571, + "end": 572, "loc": { "start": { "line": 35, @@ -13595,8 +22234,8 @@ "binop": null }, "value": "file", - "start": 582, - "end": 586, + "start": 572, + "end": 576, "loc": { "start": { "line": 35, @@ -13620,8 +22259,8 @@ "postfix": false, "binop": null }, - "start": 586, - "end": 587, + "start": 576, + "end": 577, "loc": { "start": { "line": 35, @@ -13645,8 +22284,8 @@ "postfix": false, "binop": null }, - "start": 588, - "end": 589, + "start": 578, + "end": 579, "loc": { "start": { "line": 35, @@ -13673,8 +22312,8 @@ "updateContext": null }, "value": "return", - "start": 594, - "end": 600, + "start": 584, + "end": 590, "loc": { "start": { "line": 36, @@ -13701,8 +22340,8 @@ "updateContext": null }, "value": "new", - "start": 601, - "end": 604, + "start": 591, + "end": 594, "loc": { "start": { "line": 36, @@ -13727,8 +22366,8 @@ "binop": null }, "value": "Lexer", - "start": 605, - "end": 610, + "start": 595, + "end": 600, "loc": { "start": { "line": 36, @@ -13752,8 +22391,8 @@ "postfix": false, "binop": null }, - "start": 610, - "end": 611, + "start": 600, + "end": 601, "loc": { "start": { "line": 36, @@ -13777,8 +22416,8 @@ "postfix": false, "binop": null }, - "start": 611, - "end": 612, + "start": 601, + "end": 602, "loc": { "start": { "line": 36, @@ -13803,8 +22442,8 @@ "binop": null, "updateContext": null }, - "start": 612, - "end": 613, + "start": 602, + "end": 603, "loc": { "start": { "line": 36, @@ -13829,8 +22468,8 @@ "binop": null }, "value": "tokenizeFromFile", - "start": 613, - "end": 629, + "start": 603, + "end": 619, "loc": { "start": { "line": 36, @@ -13854,8 +22493,8 @@ "postfix": false, "binop": null }, - "start": 629, - "end": 630, + "start": 619, + "end": 620, "loc": { "start": { "line": 36, @@ -13880,8 +22519,8 @@ "binop": null }, "value": "file", - "start": 630, - "end": 634, + "start": 620, + "end": 624, "loc": { "start": { "line": 36, @@ -13905,8 +22544,8 @@ "postfix": false, "binop": null }, - "start": 634, - "end": 635, + "start": 624, + "end": 625, "loc": { "start": { "line": 36, @@ -13931,8 +22570,8 @@ "binop": null, "updateContext": null }, - "start": 635, - "end": 636, + "start": 625, + "end": 626, "loc": { "start": { "line": 36, @@ -13956,8 +22595,8 @@ "postfix": false, "binop": null }, - "start": 639, - "end": 640, + "start": 629, + "end": 630, "loc": { "start": { "line": 37, @@ -13982,8 +22621,8 @@ "binop": null }, "value": "static", - "start": 644, - "end": 650, + "start": 634, + "end": 640, "loc": { "start": { "line": 39, @@ -14008,8 +22647,8 @@ "binop": null }, "value": "setTokens", - "start": 651, - "end": 660, + "start": 641, + "end": 650, "loc": { "start": { "line": 39, @@ -14033,8 +22672,8 @@ "postfix": false, "binop": null }, - "start": 660, - "end": 661, + "start": 650, + "end": 651, "loc": { "start": { "line": 39, @@ -14059,8 +22698,8 @@ "binop": null }, "value": "tokens", - "start": 661, - "end": 667, + "start": 651, + "end": 657, "loc": { "start": { "line": 39, @@ -14084,8 +22723,8 @@ "postfix": false, "binop": null }, - "start": 667, - "end": 668, + "start": 657, + "end": 658, "loc": { "start": { "line": 39, @@ -14109,8 +22748,8 @@ "postfix": false, "binop": null }, - "start": 669, - "end": 670, + "start": 659, + "end": 660, "loc": { "start": { "line": 39, @@ -14135,8 +22774,8 @@ "binop": null }, "value": "Lexer", - "start": 675, - "end": 680, + "start": 665, + "end": 670, "loc": { "start": { "line": 40, @@ -14161,8 +22800,8 @@ "binop": null, "updateContext": null }, - "start": 680, - "end": 681, + "start": 670, + "end": 671, "loc": { "start": { "line": 40, @@ -14187,8 +22826,8 @@ "binop": null }, "value": "TOKENS", - "start": 681, - "end": 687, + "start": 671, + "end": 677, "loc": { "start": { "line": 40, @@ -14214,8 +22853,8 @@ "updateContext": null }, "value": "=", - "start": 688, - "end": 689, + "start": 678, + "end": 679, "loc": { "start": { "line": 40, @@ -14240,8 +22879,8 @@ "binop": null }, "value": "tokens", - "start": 690, - "end": 696, + "start": 680, + "end": 686, "loc": { "start": { "line": 40, @@ -14266,8 +22905,8 @@ "binop": null, "updateContext": null }, - "start": 696, - "end": 697, + "start": 686, + "end": 687, "loc": { "start": { "line": 40, @@ -14291,8 +22930,8 @@ "postfix": false, "binop": null }, - "start": 700, - "end": 701, + "start": 690, + "end": 691, "loc": { "start": { "line": 41, @@ -14317,8 +22956,8 @@ "binop": null }, "value": "getParBalance", - "start": 705, - "end": 718, + "start": 695, + "end": 708, "loc": { "start": { "line": 43, @@ -14342,8 +22981,8 @@ "postfix": false, "binop": null }, - "start": 718, - "end": 719, + "start": 708, + "end": 709, "loc": { "start": { "line": 43, @@ -14368,8 +23007,8 @@ "binop": null }, "value": "program", - "start": 719, - "end": 726, + "start": 709, + "end": 716, "loc": { "start": { "line": 43, @@ -14393,8 +23032,8 @@ "postfix": false, "binop": null }, - "start": 726, - "end": 727, + "start": 716, + "end": 717, "loc": { "start": { "line": 43, @@ -14418,8 +23057,8 @@ "postfix": false, "binop": null }, - "start": 728, - "end": 729, + "start": 718, + "end": 719, "loc": { "start": { "line": 43, @@ -14446,8 +23085,8 @@ "updateContext": null }, "value": "this", - "start": 734, - "end": 738, + "start": 724, + "end": 728, "loc": { "start": { "line": 44, @@ -14472,8 +23111,8 @@ "binop": null, "updateContext": null }, - "start": 738, - "end": 739, + "start": 728, + "end": 729, "loc": { "start": { "line": 44, @@ -14498,8 +23137,8 @@ "binop": null }, "value": "setProgram", - "start": 739, - "end": 749, + "start": 729, + "end": 739, "loc": { "start": { "line": 44, @@ -14523,8 +23162,8 @@ "postfix": false, "binop": null }, - "start": 749, - "end": 750, + "start": 739, + "end": 740, "loc": { "start": { "line": 44, @@ -14549,8 +23188,8 @@ "binop": null }, "value": "program", - "start": 750, - "end": 757, + "start": 740, + "end": 747, "loc": { "start": { "line": 44, @@ -14574,8 +23213,8 @@ "postfix": false, "binop": null }, - "start": 757, - "end": 758, + "start": 747, + "end": 748, "loc": { "start": { "line": 44, @@ -14600,8 +23239,8 @@ "binop": null, "updateContext": null }, - "start": 758, - "end": 759, + "start": 748, + "end": 749, "loc": { "start": { "line": 44, @@ -14628,8 +23267,8 @@ "updateContext": null }, "value": "let", - "start": 765, - "end": 768, + "start": 755, + "end": 758, "loc": { "start": { "line": 46, @@ -14654,8 +23293,8 @@ "binop": null }, "value": "stack", - "start": 769, - "end": 774, + "start": 759, + "end": 764, "loc": { "start": { "line": 46, @@ -14681,8 +23320,8 @@ "updateContext": null }, "value": "=", - "start": 775, - "end": 776, + "start": 765, + "end": 766, "loc": { "start": { "line": 46, @@ -14708,8 +23347,8 @@ "updateContext": null }, "value": 0, - "start": 777, - "end": 778, + "start": 767, + "end": 768, "loc": { "start": { "line": 46, @@ -14734,8 +23373,8 @@ "binop": null, "updateContext": null }, - "start": 778, - "end": 779, + "start": 768, + "end": 769, "loc": { "start": { "line": 46, @@ -14762,8 +23401,8 @@ "updateContext": null }, "value": "const", - "start": 784, - "end": 789, + "start": 774, + "end": 779, "loc": { "start": { "line": 47, @@ -14788,8 +23427,8 @@ "binop": null }, "value": "tokens", - "start": 790, - "end": 796, + "start": 780, + "end": 786, "loc": { "start": { "line": 47, @@ -14815,8 +23454,8 @@ "updateContext": null }, "value": "=", - "start": 797, - "end": 798, + "start": 787, + "end": 788, "loc": { "start": { "line": 47, @@ -14843,8 +23482,8 @@ "updateContext": null }, "value": "this", - "start": 799, - "end": 803, + "start": 789, + "end": 793, "loc": { "start": { "line": 47, @@ -14869,8 +23508,8 @@ "binop": null, "updateContext": null }, - "start": 803, - "end": 804, + "start": 793, + "end": 794, "loc": { "start": { "line": 47, @@ -14895,8 +23534,8 @@ "binop": null }, "value": "_getTokens", - "start": 804, - "end": 814, + "start": 794, + "end": 804, "loc": { "start": { "line": 47, @@ -14920,8 +23559,8 @@ "postfix": false, "binop": null }, - "start": 814, - "end": 815, + "start": 804, + "end": 805, "loc": { "start": { "line": 47, @@ -14945,8 +23584,8 @@ "postfix": false, "binop": null }, - "start": 815, - "end": 816, + "start": 805, + "end": 806, "loc": { "start": { "line": 47, @@ -14971,8 +23610,8 @@ "binop": null, "updateContext": null }, - "start": 816, - "end": 817, + "start": 806, + "end": 807, "loc": { "start": { "line": 47, @@ -14999,8 +23638,8 @@ "updateContext": null }, "value": "for", - "start": 822, - "end": 825, + "start": 812, + "end": 815, "loc": { "start": { "line": 48, @@ -15024,8 +23663,8 @@ "postfix": false, "binop": null }, - "start": 826, - "end": 827, + "start": 816, + "end": 817, "loc": { "start": { "line": 48, @@ -15052,8 +23691,8 @@ "updateContext": null }, "value": "const", - "start": 827, - "end": 832, + "start": 817, + "end": 822, "loc": { "start": { "line": 48, @@ -15078,8 +23717,8 @@ "binop": null }, "value": "token", - "start": 833, - "end": 838, + "start": 823, + "end": 828, "loc": { "start": { "line": 48, @@ -15104,8 +23743,8 @@ "binop": null }, "value": "of", - "start": 839, - "end": 841, + "start": 829, + "end": 831, "loc": { "start": { "line": 48, @@ -15130,8 +23769,8 @@ "binop": null }, "value": "tokens", - "start": 842, - "end": 848, + "start": 832, + "end": 838, "loc": { "start": { "line": 48, @@ -15155,8 +23794,8 @@ "postfix": false, "binop": null }, - "start": 848, - "end": 849, + "start": 838, + "end": 839, "loc": { "start": { "line": 48, @@ -15180,8 +23819,8 @@ "postfix": false, "binop": null }, - "start": 850, - "end": 851, + "start": 840, + "end": 841, "loc": { "start": { "line": 48, @@ -15208,8 +23847,8 @@ "updateContext": null }, "value": "if", - "start": 858, - "end": 860, + "start": 848, + "end": 850, "loc": { "start": { "line": 49, @@ -15233,8 +23872,8 @@ "postfix": false, "binop": null }, - "start": 861, - "end": 862, + "start": 851, + "end": 852, "loc": { "start": { "line": 49, @@ -15259,8 +23898,8 @@ "binop": null }, "value": "token", - "start": 862, - "end": 867, + "start": 852, + "end": 857, "loc": { "start": { "line": 49, @@ -15285,8 +23924,8 @@ "binop": null, "updateContext": null }, - "start": 867, - "end": 868, + "start": 857, + "end": 858, "loc": { "start": { "line": 49, @@ -15311,8 +23950,8 @@ "binop": null }, "value": "type", - "start": 868, - "end": 872, + "start": 858, + "end": 862, "loc": { "start": { "line": 49, @@ -15338,8 +23977,8 @@ "updateContext": null }, "value": "===", - "start": 873, - "end": 876, + "start": 863, + "end": 866, "loc": { "start": { "line": 49, @@ -15365,8 +24004,8 @@ "updateContext": null }, "value": "LP", - "start": 877, - "end": 881, + "start": 867, + "end": 871, "loc": { "start": { "line": 49, @@ -15390,8 +24029,8 @@ "postfix": false, "binop": null }, - "start": 881, - "end": 882, + "start": 871, + "end": 872, "loc": { "start": { "line": 49, @@ -15415,8 +24054,8 @@ "postfix": false, "binop": null }, - "start": 883, - "end": 884, + "start": 873, + "end": 874, "loc": { "start": { "line": 49, @@ -15441,8 +24080,8 @@ "binop": null }, "value": "++", - "start": 893, - "end": 895, + "start": 883, + "end": 885, "loc": { "start": { "line": 50, @@ -15467,8 +24106,8 @@ "binop": null }, "value": "stack", - "start": 895, - "end": 900, + "start": 885, + "end": 890, "loc": { "start": { "line": 50, @@ -15493,8 +24132,8 @@ "binop": null, "updateContext": null }, - "start": 900, - "end": 901, + "start": 890, + "end": 891, "loc": { "start": { "line": 50, @@ -15518,8 +24157,8 @@ "postfix": false, "binop": null }, - "start": 908, - "end": 909, + "start": 898, + "end": 899, "loc": { "start": { "line": 51, @@ -15546,8 +24185,8 @@ "updateContext": null }, "value": "else", - "start": 910, - "end": 914, + "start": 900, + "end": 904, "loc": { "start": { "line": 51, @@ -15574,8 +24213,8 @@ "updateContext": null }, "value": "if", - "start": 915, - "end": 917, + "start": 905, + "end": 907, "loc": { "start": { "line": 51, @@ -15599,8 +24238,8 @@ "postfix": false, "binop": null }, - "start": 918, - "end": 919, + "start": 908, + "end": 909, "loc": { "start": { "line": 51, @@ -15625,8 +24264,8 @@ "binop": null }, "value": "token", - "start": 919, - "end": 924, + "start": 909, + "end": 914, "loc": { "start": { "line": 51, @@ -15651,8 +24290,8 @@ "binop": null, "updateContext": null }, - "start": 924, - "end": 925, + "start": 914, + "end": 915, "loc": { "start": { "line": 51, @@ -15677,8 +24316,8 @@ "binop": null }, "value": "type", - "start": 925, - "end": 929, + "start": 915, + "end": 919, "loc": { "start": { "line": 51, @@ -15704,8 +24343,8 @@ "updateContext": null }, "value": "===", - "start": 930, - "end": 933, + "start": 920, + "end": 923, "loc": { "start": { "line": 51, @@ -15731,8 +24370,8 @@ "updateContext": null }, "value": "RP", - "start": 934, - "end": 938, + "start": 924, + "end": 928, "loc": { "start": { "line": 51, @@ -15756,8 +24395,8 @@ "postfix": false, "binop": null }, - "start": 938, - "end": 939, + "start": 928, + "end": 929, "loc": { "start": { "line": 51, @@ -15781,8 +24420,8 @@ "postfix": false, "binop": null }, - "start": 940, - "end": 941, + "start": 930, + "end": 931, "loc": { "start": { "line": 51, @@ -15807,8 +24446,8 @@ "binop": null }, "value": "--", - "start": 950, - "end": 952, + "start": 940, + "end": 942, "loc": { "start": { "line": 52, @@ -15833,8 +24472,8 @@ "binop": null }, "value": "stack", - "start": 952, - "end": 957, + "start": 942, + "end": 947, "loc": { "start": { "line": 52, @@ -15859,8 +24498,8 @@ "binop": null, "updateContext": null }, - "start": 957, - "end": 958, + "start": 947, + "end": 948, "loc": { "start": { "line": 52, @@ -15884,8 +24523,8 @@ "postfix": false, "binop": null }, - "start": 965, - "end": 966, + "start": 955, + "end": 956, "loc": { "start": { "line": 53, @@ -15909,8 +24548,8 @@ "postfix": false, "binop": null }, - "start": 971, - "end": 972, + "start": 961, + "end": 962, "loc": { "start": { "line": 54, @@ -15937,8 +24576,8 @@ "updateContext": null }, "value": "return", - "start": 978, - "end": 984, + "start": 968, + "end": 974, "loc": { "start": { "line": 56, @@ -15963,8 +24602,8 @@ "binop": null }, "value": "stack", - "start": 985, - "end": 990, + "start": 975, + "end": 980, "loc": { "start": { "line": 56, @@ -15989,8 +24628,8 @@ "binop": null, "updateContext": null }, - "start": 990, - "end": 991, + "start": 980, + "end": 981, "loc": { "start": { "line": 56, @@ -16014,8 +24653,8 @@ "postfix": false, "binop": null }, - "start": 994, - "end": 995, + "start": 984, + "end": 985, "loc": { "start": { "line": 57, @@ -16040,8 +24679,8 @@ "binop": null }, "value": "_getTokens", - "start": 999, - "end": 1009, + "start": 989, + "end": 999, "loc": { "start": { "line": 59, @@ -16065,8 +24704,8 @@ "postfix": false, "binop": null }, - "start": 1009, - "end": 1010, + "start": 999, + "end": 1000, "loc": { "start": { "line": 59, @@ -16090,8 +24729,8 @@ "postfix": false, "binop": null }, - "start": 1010, - "end": 1011, + "start": 1000, + "end": 1001, "loc": { "start": { "line": 59, @@ -16115,8 +24754,8 @@ "postfix": false, "binop": null }, - "start": 1012, - "end": 1013, + "start": 1002, + "end": 1003, "loc": { "start": { "line": 59, @@ -16143,8 +24782,8 @@ "updateContext": null }, "value": "const", - "start": 1018, - "end": 1023, + "start": 1008, + "end": 1013, "loc": { "start": { "line": 60, @@ -16169,8 +24808,8 @@ "binop": null }, "value": "tokens", - "start": 1024, - "end": 1030, + "start": 1014, + "end": 1020, "loc": { "start": { "line": 60, @@ -16196,8 +24835,8 @@ "updateContext": null }, "value": "=", - "start": 1031, - "end": 1032, + "start": 1021, + "end": 1022, "loc": { "start": { "line": 60, @@ -16222,8 +24861,8 @@ "binop": null, "updateContext": null }, - "start": 1033, - "end": 1034, + "start": 1023, + "end": 1024, "loc": { "start": { "line": 60, @@ -16248,8 +24887,8 @@ "binop": null, "updateContext": null }, - "start": 1034, - "end": 1035, + "start": 1024, + "end": 1025, "loc": { "start": { "line": 60, @@ -16274,8 +24913,8 @@ "binop": null, "updateContext": null }, - "start": 1035, - "end": 1036, + "start": 1025, + "end": 1026, "loc": { "start": { "line": 60, @@ -16302,8 +24941,8 @@ "updateContext": null }, "value": "let", - "start": 1042, - "end": 1045, + "start": 1032, + "end": 1035, "loc": { "start": { "line": 62, @@ -16328,8 +24967,8 @@ "binop": null }, "value": "currentToken", - "start": 1046, - "end": 1058, + "start": 1036, + "end": 1048, "loc": { "start": { "line": 62, @@ -16355,8 +24994,8 @@ "updateContext": null }, "value": "=", - "start": 1059, - "end": 1060, + "start": 1049, + "end": 1050, "loc": { "start": { "line": 62, @@ -16383,8 +25022,8 @@ "updateContext": null }, "value": "this", - "start": 1061, - "end": 1065, + "start": 1051, + "end": 1055, "loc": { "start": { "line": 62, @@ -16409,8 +25048,8 @@ "binop": null, "updateContext": null }, - "start": 1065, - "end": 1066, + "start": 1055, + "end": 1056, "loc": { "start": { "line": 62, @@ -16435,8 +25074,8 @@ "binop": null }, "value": "_getToken", - "start": 1066, - "end": 1075, + "start": 1056, + "end": 1065, "loc": { "start": { "line": 62, @@ -16460,8 +25099,8 @@ "postfix": false, "binop": null }, - "start": 1075, - "end": 1076, + "start": 1065, + "end": 1066, "loc": { "start": { "line": 62, @@ -16485,8 +25124,8 @@ "postfix": false, "binop": null }, - "start": 1076, - "end": 1077, + "start": 1066, + "end": 1067, "loc": { "start": { "line": 62, @@ -16511,8 +25150,8 @@ "binop": null, "updateContext": null }, - "start": 1077, - "end": 1078, + "start": 1067, + "end": 1068, "loc": { "start": { "line": 62, @@ -16539,8 +25178,8 @@ "updateContext": null }, "value": "while", - "start": 1083, - "end": 1088, + "start": 1073, + "end": 1078, "loc": { "start": { "line": 63, @@ -16564,8 +25203,8 @@ "postfix": false, "binop": null }, - "start": 1089, - "end": 1090, + "start": 1079, + "end": 1080, "loc": { "start": { "line": 63, @@ -16590,8 +25229,8 @@ "binop": null }, "value": "currentToken", - "start": 1090, - "end": 1102, + "start": 1080, + "end": 1092, "loc": { "start": { "line": 63, @@ -16617,8 +25256,8 @@ "updateContext": null }, "value": "!==", - "start": 1103, - "end": 1106, + "start": 1093, + "end": 1096, "loc": { "start": { "line": 63, @@ -16645,8 +25284,8 @@ "updateContext": null }, "value": "null", - "start": 1107, - "end": 1111, + "start": 1097, + "end": 1101, "loc": { "start": { "line": 63, @@ -16670,8 +25309,8 @@ "postfix": false, "binop": null }, - "start": 1111, - "end": 1112, + "start": 1101, + "end": 1102, "loc": { "start": { "line": 63, @@ -16695,8 +25334,8 @@ "postfix": false, "binop": null }, - "start": 1113, - "end": 1114, + "start": 1103, + "end": 1104, "loc": { "start": { "line": 63, @@ -16721,8 +25360,8 @@ "binop": null }, "value": "tokens", - "start": 1121, - "end": 1127, + "start": 1111, + "end": 1117, "loc": { "start": { "line": 64, @@ -16747,8 +25386,8 @@ "binop": null, "updateContext": null }, - "start": 1127, - "end": 1128, + "start": 1117, + "end": 1118, "loc": { "start": { "line": 64, @@ -16773,8 +25412,8 @@ "binop": null }, "value": "push", - "start": 1128, - "end": 1132, + "start": 1118, + "end": 1122, "loc": { "start": { "line": 64, @@ -16798,8 +25437,8 @@ "postfix": false, "binop": null }, - "start": 1132, - "end": 1133, + "start": 1122, + "end": 1123, "loc": { "start": { "line": 64, @@ -16824,8 +25463,8 @@ "binop": null }, "value": "currentToken", - "start": 1133, - "end": 1145, + "start": 1123, + "end": 1135, "loc": { "start": { "line": 64, @@ -16849,8 +25488,8 @@ "postfix": false, "binop": null }, - "start": 1145, - "end": 1146, + "start": 1135, + "end": 1136, "loc": { "start": { "line": 64, @@ -16875,8 +25514,8 @@ "binop": null, "updateContext": null }, - "start": 1146, - "end": 1147, + "start": 1136, + "end": 1137, "loc": { "start": { "line": 64, @@ -16901,8 +25540,8 @@ "binop": null }, "value": "currentToken", - "start": 1155, - "end": 1167, + "start": 1145, + "end": 1157, "loc": { "start": { "line": 66, @@ -16928,8 +25567,8 @@ "updateContext": null }, "value": "=", - "start": 1168, - "end": 1169, + "start": 1158, + "end": 1159, "loc": { "start": { "line": 66, @@ -16956,8 +25595,8 @@ "updateContext": null }, "value": "this", - "start": 1170, - "end": 1174, + "start": 1160, + "end": 1164, "loc": { "start": { "line": 66, @@ -16982,8 +25621,8 @@ "binop": null, "updateContext": null }, - "start": 1174, - "end": 1175, + "start": 1164, + "end": 1165, "loc": { "start": { "line": 66, @@ -17008,8 +25647,8 @@ "binop": null }, "value": "_getToken", - "start": 1175, - "end": 1184, + "start": 1165, + "end": 1174, "loc": { "start": { "line": 66, @@ -17033,8 +25672,8 @@ "postfix": false, "binop": null }, - "start": 1184, - "end": 1185, + "start": 1174, + "end": 1175, "loc": { "start": { "line": 66, @@ -17058,8 +25697,8 @@ "postfix": false, "binop": null }, - "start": 1185, - "end": 1186, + "start": 1175, + "end": 1176, "loc": { "start": { "line": 66, @@ -17084,8 +25723,8 @@ "binop": null, "updateContext": null }, - "start": 1186, - "end": 1187, + "start": 1176, + "end": 1177, "loc": { "start": { "line": 66, @@ -17109,8 +25748,8 @@ "postfix": false, "binop": null }, - "start": 1192, - "end": 1193, + "start": 1182, + "end": 1183, "loc": { "start": { "line": 67, @@ -17137,8 +25776,8 @@ "updateContext": null }, "value": "return", - "start": 1199, - "end": 1205, + "start": 1189, + "end": 1195, "loc": { "start": { "line": 69, @@ -17165,8 +25804,8 @@ "updateContext": null }, "value": "this", - "start": 1206, - "end": 1210, + "start": 1196, + "end": 1200, "loc": { "start": { "line": 69, @@ -17191,8 +25830,8 @@ "binop": null, "updateContext": null }, - "start": 1210, - "end": 1211, + "start": 1200, + "end": 1201, "loc": { "start": { "line": 69, @@ -17217,8 +25856,8 @@ "binop": null }, "value": "__transformTokens", - "start": 1211, - "end": 1228, + "start": 1201, + "end": 1218, "loc": { "start": { "line": 69, @@ -17242,8 +25881,8 @@ "postfix": false, "binop": null }, - "start": 1228, - "end": 1229, + "start": 1218, + "end": 1219, "loc": { "start": { "line": 69, @@ -17268,8 +25907,8 @@ "binop": null }, "value": "tokens", - "start": 1229, - "end": 1235, + "start": 1219, + "end": 1225, "loc": { "start": { "line": 69, @@ -17293,8 +25932,8 @@ "postfix": false, "binop": null }, - "start": 1235, - "end": 1236, + "start": 1225, + "end": 1226, "loc": { "start": { "line": 69, @@ -17319,8 +25958,8 @@ "binop": null, "updateContext": null }, - "start": 1236, - "end": 1237, + "start": 1226, + "end": 1227, "loc": { "start": { "line": 69, @@ -17344,8 +25983,8 @@ "postfix": false, "binop": null }, - "start": 1240, - "end": 1241, + "start": 1230, + "end": 1231, "loc": { "start": { "line": 70, @@ -17370,8 +26009,8 @@ "binop": null }, "value": "_getToken", - "start": 1245, - "end": 1254, + "start": 1235, + "end": 1244, "loc": { "start": { "line": 72, @@ -17395,8 +26034,8 @@ "postfix": false, "binop": null }, - "start": 1254, - "end": 1255, + "start": 1244, + "end": 1245, "loc": { "start": { "line": 72, @@ -17420,8 +26059,8 @@ "postfix": false, "binop": null }, - "start": 1255, - "end": 1256, + "start": 1245, + "end": 1246, "loc": { "start": { "line": 72, @@ -17445,8 +26084,8 @@ "postfix": false, "binop": null }, - "start": 1257, - "end": 1258, + "start": 1247, + "end": 1248, "loc": { "start": { "line": 72, @@ -17461,8 +26100,8 @@ { "type": "CommentLine", "value": " Update lastIndex property for each expression used", - "start": 1263, - "end": 1316, + "start": 1253, + "end": 1306, "loc": { "start": { "line": 73, @@ -17489,8 +26128,8 @@ "updateContext": null }, "value": "this", - "start": 1321, - "end": 1325, + "start": 1311, + "end": 1315, "loc": { "start": { "line": 74, @@ -17515,8 +26154,8 @@ "binop": null, "updateContext": null }, - "start": 1325, - "end": 1326, + "start": 1315, + "end": 1316, "loc": { "start": { "line": 74, @@ -17541,8 +26180,8 @@ "binop": null }, "value": "__updateLastIndices", - "start": 1326, - "end": 1345, + "start": 1316, + "end": 1335, "loc": { "start": { "line": 74, @@ -17566,8 +26205,8 @@ "postfix": false, "binop": null }, - "start": 1345, - "end": 1346, + "start": 1335, + "end": 1336, "loc": { "start": { "line": 74, @@ -17591,8 +26230,8 @@ "postfix": false, "binop": null }, - "start": 1346, - "end": 1347, + "start": 1336, + "end": 1337, "loc": { "start": { "line": 74, @@ -17617,8 +26256,8 @@ "binop": null, "updateContext": null }, - "start": 1347, - "end": 1348, + "start": 1337, + "end": 1338, "loc": { "start": { "line": 74, @@ -17633,8 +26272,8 @@ { "type": "CommentLine", "value": " Match and ignore whitespaces and newlines", - "start": 1354, - "end": 1398, + "start": 1344, + "end": 1388, "loc": { "start": { "line": 76, @@ -17661,8 +26300,8 @@ "updateContext": null }, "value": "let", - "start": 1403, - "end": 1406, + "start": 1393, + "end": 1396, "loc": { "start": { "line": 77, @@ -17687,8 +26326,8 @@ "binop": null }, "value": "whitespaces", - "start": 1407, - "end": 1418, + "start": 1397, + "end": 1408, "loc": { "start": { "line": 77, @@ -17714,8 +26353,8 @@ "updateContext": null }, "value": "=", - "start": 1419, - "end": 1420, + "start": 1409, + "end": 1410, "loc": { "start": { "line": 77, @@ -17740,8 +26379,8 @@ "binop": null }, "value": "Lexer", - "start": 1421, - "end": 1426, + "start": 1411, + "end": 1416, "loc": { "start": { "line": 77, @@ -17766,8 +26405,8 @@ "binop": null, "updateContext": null }, - "start": 1426, - "end": 1427, + "start": 1416, + "end": 1417, "loc": { "start": { "line": 77, @@ -17792,8 +26431,8 @@ "binop": null }, "value": "WHITES", - "start": 1427, - "end": 1433, + "start": 1417, + "end": 1423, "loc": { "start": { "line": 77, @@ -17818,8 +26457,8 @@ "binop": null, "updateContext": null }, - "start": 1433, - "end": 1434, + "start": 1423, + "end": 1424, "loc": { "start": { "line": 77, @@ -17844,8 +26483,8 @@ "binop": null }, "value": "exec", - "start": 1434, - "end": 1438, + "start": 1424, + "end": 1428, "loc": { "start": { "line": 77, @@ -17869,8 +26508,8 @@ "postfix": false, "binop": null }, - "start": 1438, - "end": 1439, + "start": 1428, + "end": 1429, "loc": { "start": { "line": 77, @@ -17897,8 +26536,8 @@ "updateContext": null }, "value": "this", - "start": 1439, - "end": 1443, + "start": 1429, + "end": 1433, "loc": { "start": { "line": 77, @@ -17923,8 +26562,8 @@ "binop": null, "updateContext": null }, - "start": 1443, - "end": 1444, + "start": 1433, + "end": 1434, "loc": { "start": { "line": 77, @@ -17949,8 +26588,8 @@ "binop": null }, "value": "program", - "start": 1444, - "end": 1451, + "start": 1434, + "end": 1441, "loc": { "start": { "line": 77, @@ -17974,8 +26613,8 @@ "postfix": false, "binop": null }, - "start": 1451, - "end": 1452, + "start": 1441, + "end": 1442, "loc": { "start": { "line": 77, @@ -18000,8 +26639,8 @@ "binop": null, "updateContext": null }, - "start": 1452, - "end": 1453, + "start": 1442, + "end": 1443, "loc": { "start": { "line": 77, @@ -18028,8 +26667,8 @@ "updateContext": null }, "value": "if", - "start": 1458, - "end": 1460, + "start": 1448, + "end": 1450, "loc": { "start": { "line": 78, @@ -18053,8 +26692,8 @@ "postfix": false, "binop": null }, - "start": 1461, - "end": 1462, + "start": 1451, + "end": 1452, "loc": { "start": { "line": 78, @@ -18079,8 +26718,8 @@ "binop": null }, "value": "whitespaces", - "start": 1462, - "end": 1473, + "start": 1452, + "end": 1463, "loc": { "start": { "line": 78, @@ -18106,8 +26745,8 @@ "updateContext": null }, "value": "!==", - "start": 1474, - "end": 1477, + "start": 1464, + "end": 1467, "loc": { "start": { "line": 78, @@ -18134,8 +26773,8 @@ "updateContext": null }, "value": "null", - "start": 1478, - "end": 1482, + "start": 1468, + "end": 1472, "loc": { "start": { "line": 78, @@ -18159,8 +26798,8 @@ "postfix": false, "binop": null }, - "start": 1482, - "end": 1483, + "start": 1472, + "end": 1473, "loc": { "start": { "line": 78, @@ -18184,8 +26823,8 @@ "postfix": false, "binop": null }, - "start": 1484, - "end": 1485, + "start": 1474, + "end": 1475, "loc": { "start": { "line": 78, @@ -18212,8 +26851,8 @@ "updateContext": null }, "value": "if", - "start": 1492, - "end": 1494, + "start": 1482, + "end": 1484, "loc": { "start": { "line": 79, @@ -18237,8 +26876,8 @@ "postfix": false, "binop": null }, - "start": 1495, - "end": 1496, + "start": 1485, + "end": 1486, "loc": { "start": { "line": 79, @@ -18263,8 +26902,8 @@ "binop": null }, "value": "Lexer", - "start": 1496, - "end": 1501, + "start": 1486, + "end": 1491, "loc": { "start": { "line": 79, @@ -18289,8 +26928,8 @@ "binop": null, "updateContext": null }, - "start": 1501, - "end": 1502, + "start": 1491, + "end": 1492, "loc": { "start": { "line": 79, @@ -18315,8 +26954,8 @@ "binop": null }, "value": "NEWLINE", - "start": 1502, - "end": 1509, + "start": 1492, + "end": 1499, "loc": { "start": { "line": 79, @@ -18341,8 +26980,8 @@ "binop": null, "updateContext": null }, - "start": 1509, - "end": 1510, + "start": 1499, + "end": 1500, "loc": { "start": { "line": 79, @@ -18367,8 +27006,8 @@ "binop": null }, "value": "exec", - "start": 1510, - "end": 1514, + "start": 1500, + "end": 1504, "loc": { "start": { "line": 79, @@ -18392,8 +27031,8 @@ "postfix": false, "binop": null }, - "start": 1514, - "end": 1515, + "start": 1504, + "end": 1505, "loc": { "start": { "line": 79, @@ -18418,8 +27057,8 @@ "binop": null }, "value": "whitespaces", - "start": 1515, - "end": 1526, + "start": 1505, + "end": 1516, "loc": { "start": { "line": 79, @@ -18444,8 +27083,8 @@ "binop": null, "updateContext": null }, - "start": 1526, - "end": 1527, + "start": 1516, + "end": 1517, "loc": { "start": { "line": 79, @@ -18470,8 +27109,8 @@ "binop": null }, "value": "value", - "start": 1527, - "end": 1532, + "start": 1517, + "end": 1522, "loc": { "start": { "line": 79, @@ -18495,8 +27134,8 @@ "postfix": false, "binop": null }, - "start": 1532, - "end": 1533, + "start": 1522, + "end": 1523, "loc": { "start": { "line": 79, @@ -18520,8 +27159,8 @@ "postfix": false, "binop": null }, - "start": 1533, - "end": 1534, + "start": 1523, + "end": 1524, "loc": { "start": { "line": 79, @@ -18545,8 +27184,8 @@ "postfix": false, "binop": null }, - "start": 1535, - "end": 1536, + "start": 1525, + "end": 1526, "loc": { "start": { "line": 79, @@ -18571,8 +27210,8 @@ "binop": null }, "value": "++", - "start": 1545, - "end": 1547, + "start": 1535, + "end": 1537, "loc": { "start": { "line": 80, @@ -18599,8 +27238,8 @@ "updateContext": null }, "value": "this", - "start": 1547, - "end": 1551, + "start": 1537, + "end": 1541, "loc": { "start": { "line": 80, @@ -18625,8 +27264,8 @@ "binop": null, "updateContext": null }, - "start": 1551, - "end": 1552, + "start": 1541, + "end": 1542, "loc": { "start": { "line": 80, @@ -18651,8 +27290,8 @@ "binop": null }, "value": "line", - "start": 1552, - "end": 1556, + "start": 1542, + "end": 1546, "loc": { "start": { "line": 80, @@ -18677,8 +27316,8 @@ "binop": null, "updateContext": null }, - "start": 1556, - "end": 1557, + "start": 1546, + "end": 1547, "loc": { "start": { "line": 80, @@ -18702,8 +27341,8 @@ "postfix": false, "binop": null }, - "start": 1564, - "end": 1565, + "start": 1554, + "end": 1555, "loc": { "start": { "line": 81, @@ -18730,8 +27369,8 @@ "updateContext": null }, "value": "this", - "start": 1572, - "end": 1576, + "start": 1562, + "end": 1566, "loc": { "start": { "line": 82, @@ -18756,8 +27395,8 @@ "binop": null, "updateContext": null }, - "start": 1576, - "end": 1577, + "start": 1566, + "end": 1567, "loc": { "start": { "line": 82, @@ -18782,8 +27421,8 @@ "binop": null }, "value": "lastIndex", - "start": 1577, - "end": 1586, + "start": 1567, + "end": 1576, "loc": { "start": { "line": 82, @@ -18809,8 +27448,8 @@ "updateContext": null }, "value": "=", - "start": 1587, - "end": 1588, + "start": 1577, + "end": 1578, "loc": { "start": { "line": 82, @@ -18835,8 +27474,8 @@ "binop": null }, "value": "Lexer", - "start": 1589, - "end": 1594, + "start": 1579, + "end": 1584, "loc": { "start": { "line": 82, @@ -18861,8 +27500,8 @@ "binop": null, "updateContext": null }, - "start": 1594, - "end": 1595, + "start": 1584, + "end": 1585, "loc": { "start": { "line": 82, @@ -18887,8 +27526,8 @@ "binop": null }, "value": "WHITES", - "start": 1595, - "end": 1601, + "start": 1585, + "end": 1591, "loc": { "start": { "line": 82, @@ -18913,8 +27552,8 @@ "binop": null, "updateContext": null }, - "start": 1601, - "end": 1602, + "start": 1591, + "end": 1592, "loc": { "start": { "line": 82, @@ -18939,8 +27578,8 @@ "binop": null }, "value": "lastIndex", - "start": 1602, - "end": 1611, + "start": 1592, + "end": 1601, "loc": { "start": { "line": 82, @@ -18965,8 +27604,8 @@ "binop": null, "updateContext": null }, - "start": 1611, - "end": 1612, + "start": 1601, + "end": 1602, "loc": { "start": { "line": 82, @@ -18993,8 +27632,8 @@ "updateContext": null }, "value": "return", - "start": 1620, - "end": 1626, + "start": 1610, + "end": 1616, "loc": { "start": { "line": 84, @@ -19021,8 +27660,8 @@ "updateContext": null }, "value": "this", - "start": 1627, - "end": 1631, + "start": 1617, + "end": 1621, "loc": { "start": { "line": 84, @@ -19047,8 +27686,8 @@ "binop": null, "updateContext": null }, - "start": 1631, - "end": 1632, + "start": 1621, + "end": 1622, "loc": { "start": { "line": 84, @@ -19073,8 +27712,8 @@ "binop": null }, "value": "_getToken", - "start": 1632, - "end": 1641, + "start": 1622, + "end": 1631, "loc": { "start": { "line": 84, @@ -19098,8 +27737,8 @@ "postfix": false, "binop": null }, - "start": 1641, - "end": 1642, + "start": 1631, + "end": 1632, "loc": { "start": { "line": 84, @@ -19123,8 +27762,8 @@ "postfix": false, "binop": null }, - "start": 1642, - "end": 1643, + "start": 1632, + "end": 1633, "loc": { "start": { "line": 84, @@ -19149,8 +27788,8 @@ "binop": null, "updateContext": null }, - "start": 1643, - "end": 1644, + "start": 1633, + "end": 1634, "loc": { "start": { "line": 84, @@ -19174,8 +27813,8 @@ "postfix": false, "binop": null }, - "start": 1649, - "end": 1650, + "start": 1639, + "end": 1640, "loc": { "start": { "line": 85, @@ -19190,8 +27829,8 @@ { "type": "CommentLine", "value": " Iterate through each regex", - "start": 1656, - "end": 1685, + "start": 1646, + "end": 1675, "loc": { "start": { "line": 87, @@ -19218,8 +27857,8 @@ "updateContext": null }, "value": "let", - "start": 1690, - "end": 1693, + "start": 1680, + "end": 1683, "loc": { "start": { "line": 88, @@ -19244,8 +27883,8 @@ "binop": null }, "value": "token", - "start": 1694, - "end": 1699, + "start": 1684, + "end": 1689, "loc": { "start": { "line": 88, @@ -19271,8 +27910,8 @@ "updateContext": null }, "value": "=", - "start": 1700, - "end": 1701, + "start": 1690, + "end": 1691, "loc": { "start": { "line": 88, @@ -19299,8 +27938,8 @@ "updateContext": null }, "value": "null", - "start": 1702, - "end": 1706, + "start": 1692, + "end": 1696, "loc": { "start": { "line": 88, @@ -19325,8 +27964,8 @@ "binop": null, "updateContext": null }, - "start": 1706, - "end": 1707, + "start": 1696, + "end": 1697, "loc": { "start": { "line": 88, @@ -19353,8 +27992,8 @@ "updateContext": null }, "value": "for", - "start": 1712, - "end": 1715, + "start": 1702, + "end": 1705, "loc": { "start": { "line": 89, @@ -19378,8 +28017,8 @@ "postfix": false, "binop": null }, - "start": 1716, - "end": 1717, + "start": 1706, + "end": 1707, "loc": { "start": { "line": 89, @@ -19406,8 +28045,8 @@ "updateContext": null }, "value": "let", - "start": 1717, - "end": 1720, + "start": 1707, + "end": 1710, "loc": { "start": { "line": 89, @@ -19432,8 +28071,8 @@ "binop": null }, "value": "i", - "start": 1721, - "end": 1722, + "start": 1711, + "end": 1712, "loc": { "start": { "line": 89, @@ -19459,8 +28098,8 @@ "updateContext": null }, "value": "=", - "start": 1723, - "end": 1724, + "start": 1713, + "end": 1714, "loc": { "start": { "line": 89, @@ -19486,8 +28125,8 @@ "updateContext": null }, "value": 0, - "start": 1725, - "end": 1726, + "start": 1715, + "end": 1716, "loc": { "start": { "line": 89, @@ -19512,8 +28151,8 @@ "binop": null, "updateContext": null }, - "start": 1726, - "end": 1727, + "start": 1716, + "end": 1717, "loc": { "start": { "line": 89, @@ -19538,8 +28177,8 @@ "binop": null }, "value": "i", - "start": 1728, - "end": 1729, + "start": 1718, + "end": 1719, "loc": { "start": { "line": 89, @@ -19565,8 +28204,8 @@ "updateContext": null }, "value": "<", - "start": 1730, - "end": 1731, + "start": 1720, + "end": 1721, "loc": { "start": { "line": 89, @@ -19591,8 +28230,8 @@ "binop": null }, "value": "Lexer", - "start": 1732, - "end": 1737, + "start": 1722, + "end": 1727, "loc": { "start": { "line": 89, @@ -19617,8 +28256,8 @@ "binop": null, "updateContext": null }, - "start": 1737, - "end": 1738, + "start": 1727, + "end": 1728, "loc": { "start": { "line": 89, @@ -19643,8 +28282,8 @@ "binop": null }, "value": "TOKENS", - "start": 1738, - "end": 1744, + "start": 1728, + "end": 1734, "loc": { "start": { "line": 89, @@ -19669,8 +28308,8 @@ "binop": null, "updateContext": null }, - "start": 1744, - "end": 1745, + "start": 1734, + "end": 1735, "loc": { "start": { "line": 89, @@ -19695,8 +28334,8 @@ "binop": null }, "value": "length", - "start": 1745, - "end": 1751, + "start": 1735, + "end": 1741, "loc": { "start": { "line": 89, @@ -19721,8 +28360,8 @@ "binop": null, "updateContext": null }, - "start": 1751, - "end": 1752, + "start": 1741, + "end": 1742, "loc": { "start": { "line": 89, @@ -19747,8 +28386,8 @@ "binop": null }, "value": "++", - "start": 1753, - "end": 1755, + "start": 1743, + "end": 1745, "loc": { "start": { "line": 89, @@ -19773,8 +28412,8 @@ "binop": null }, "value": "i", - "start": 1755, - "end": 1756, + "start": 1745, + "end": 1746, "loc": { "start": { "line": 89, @@ -19798,8 +28437,8 @@ "postfix": false, "binop": null }, - "start": 1756, - "end": 1757, + "start": 1746, + "end": 1747, "loc": { "start": { "line": 89, @@ -19823,8 +28462,8 @@ "postfix": false, "binop": null }, - "start": 1758, - "end": 1759, + "start": 1748, + "end": 1749, "loc": { "start": { "line": 89, @@ -19851,8 +28490,8 @@ "updateContext": null }, "value": "let", - "start": 1766, - "end": 1769, + "start": 1756, + "end": 1759, "loc": { "start": { "line": 90, @@ -19877,8 +28516,8 @@ "binop": null }, "value": "match", - "start": 1770, - "end": 1775, + "start": 1760, + "end": 1765, "loc": { "start": { "line": 90, @@ -19904,8 +28543,8 @@ "updateContext": null }, "value": "=", - "start": 1776, - "end": 1777, + "start": 1766, + "end": 1767, "loc": { "start": { "line": 90, @@ -19930,8 +28569,8 @@ "binop": null }, "value": "Lexer", - "start": 1778, - "end": 1783, + "start": 1768, + "end": 1773, "loc": { "start": { "line": 90, @@ -19956,8 +28595,8 @@ "binop": null, "updateContext": null }, - "start": 1783, - "end": 1784, + "start": 1773, + "end": 1774, "loc": { "start": { "line": 90, @@ -19982,8 +28621,8 @@ "binop": null }, "value": "TOKENS", - "start": 1784, - "end": 1790, + "start": 1774, + "end": 1780, "loc": { "start": { "line": 90, @@ -20008,8 +28647,8 @@ "binop": null, "updateContext": null }, - "start": 1790, - "end": 1791, + "start": 1780, + "end": 1781, "loc": { "start": { "line": 90, @@ -20034,8 +28673,8 @@ "binop": null }, "value": "i", - "start": 1791, - "end": 1792, + "start": 1781, + "end": 1782, "loc": { "start": { "line": 90, @@ -20060,8 +28699,8 @@ "binop": null, "updateContext": null }, - "start": 1792, - "end": 1793, + "start": 1782, + "end": 1783, "loc": { "start": { "line": 90, @@ -20086,8 +28725,8 @@ "binop": null, "updateContext": null }, - "start": 1793, - "end": 1794, + "start": 1783, + "end": 1784, "loc": { "start": { "line": 90, @@ -20112,8 +28751,8 @@ "binop": null }, "value": "exec", - "start": 1794, - "end": 1798, + "start": 1784, + "end": 1788, "loc": { "start": { "line": 90, @@ -20137,8 +28776,8 @@ "postfix": false, "binop": null }, - "start": 1798, - "end": 1799, + "start": 1788, + "end": 1789, "loc": { "start": { "line": 90, @@ -20165,8 +28804,8 @@ "updateContext": null }, "value": "this", - "start": 1799, - "end": 1803, + "start": 1789, + "end": 1793, "loc": { "start": { "line": 90, @@ -20191,8 +28830,8 @@ "binop": null, "updateContext": null }, - "start": 1803, - "end": 1804, + "start": 1793, + "end": 1794, "loc": { "start": { "line": 90, @@ -20217,8 +28856,8 @@ "binop": null }, "value": "program", - "start": 1804, - "end": 1811, + "start": 1794, + "end": 1801, "loc": { "start": { "line": 90, @@ -20242,8 +28881,8 @@ "postfix": false, "binop": null }, - "start": 1811, - "end": 1812, + "start": 1801, + "end": 1802, "loc": { "start": { "line": 90, @@ -20268,8 +28907,8 @@ "binop": null, "updateContext": null }, - "start": 1812, - "end": 1813, + "start": 1802, + "end": 1803, "loc": { "start": { "line": 90, @@ -20284,8 +28923,8 @@ { "type": "CommentLine", "value": " When matching a expression, add the current line and set the token", - "start": 1821, - "end": 1890, + "start": 1811, + "end": 1880, "loc": { "start": { "line": 92, @@ -20312,8 +28951,8 @@ "updateContext": null }, "value": "if", - "start": 1897, - "end": 1899, + "start": 1887, + "end": 1889, "loc": { "start": { "line": 93, @@ -20337,8 +28976,8 @@ "postfix": false, "binop": null }, - "start": 1900, - "end": 1901, + "start": 1890, + "end": 1891, "loc": { "start": { "line": 93, @@ -20363,8 +29002,8 @@ "binop": null }, "value": "match", - "start": 1901, - "end": 1906, + "start": 1891, + "end": 1896, "loc": { "start": { "line": 93, @@ -20390,8 +29029,8 @@ "updateContext": null }, "value": "!==", - "start": 1907, - "end": 1910, + "start": 1897, + "end": 1900, "loc": { "start": { "line": 93, @@ -20418,8 +29057,8 @@ "updateContext": null }, "value": "null", - "start": 1911, - "end": 1915, + "start": 1901, + "end": 1905, "loc": { "start": { "line": 93, @@ -20443,8 +29082,8 @@ "postfix": false, "binop": null }, - "start": 1915, - "end": 1916, + "start": 1905, + "end": 1906, "loc": { "start": { "line": 93, @@ -20468,8 +29107,8 @@ "postfix": false, "binop": null }, - "start": 1917, - "end": 1918, + "start": 1907, + "end": 1908, "loc": { "start": { "line": 93, @@ -20494,8 +29133,8 @@ "binop": null }, "value": "match", - "start": 1927, - "end": 1932, + "start": 1917, + "end": 1922, "loc": { "start": { "line": 94, @@ -20520,8 +29159,8 @@ "binop": null, "updateContext": null }, - "start": 1932, - "end": 1933, + "start": 1922, + "end": 1923, "loc": { "start": { "line": 94, @@ -20546,8 +29185,8 @@ "binop": null }, "value": "line", - "start": 1933, - "end": 1937, + "start": 1923, + "end": 1927, "loc": { "start": { "line": 94, @@ -20573,8 +29212,8 @@ "updateContext": null }, "value": "=", - "start": 1938, - "end": 1939, + "start": 1928, + "end": 1929, "loc": { "start": { "line": 94, @@ -20601,8 +29240,8 @@ "updateContext": null }, "value": "this", - "start": 1940, - "end": 1944, + "start": 1930, + "end": 1934, "loc": { "start": { "line": 94, @@ -20627,8 +29266,8 @@ "binop": null, "updateContext": null }, - "start": 1944, - "end": 1945, + "start": 1934, + "end": 1935, "loc": { "start": { "line": 94, @@ -20653,8 +29292,8 @@ "binop": null }, "value": "line", - "start": 1945, - "end": 1949, + "start": 1935, + "end": 1939, "loc": { "start": { "line": 94, @@ -20679,8 +29318,8 @@ "binop": null, "updateContext": null }, - "start": 1949, - "end": 1950, + "start": 1939, + "end": 1940, "loc": { "start": { "line": 94, @@ -20707,8 +29346,8 @@ "updateContext": null }, "value": "this", - "start": 1959, - "end": 1963, + "start": 1949, + "end": 1953, "loc": { "start": { "line": 95, @@ -20733,8 +29372,8 @@ "binop": null, "updateContext": null }, - "start": 1963, - "end": 1964, + "start": 1953, + "end": 1954, "loc": { "start": { "line": 95, @@ -20759,8 +29398,8 @@ "binop": null }, "value": "lastIndex", - "start": 1964, - "end": 1973, + "start": 1954, + "end": 1963, "loc": { "start": { "line": 95, @@ -20786,8 +29425,8 @@ "updateContext": null }, "value": "=", - "start": 1974, - "end": 1975, + "start": 1964, + "end": 1965, "loc": { "start": { "line": 95, @@ -20812,8 +29451,8 @@ "binop": null }, "value": "Lexer", - "start": 1976, - "end": 1981, + "start": 1966, + "end": 1971, "loc": { "start": { "line": 95, @@ -20838,8 +29477,8 @@ "binop": null, "updateContext": null }, - "start": 1981, - "end": 1982, + "start": 1971, + "end": 1972, "loc": { "start": { "line": 95, @@ -20864,8 +29503,8 @@ "binop": null }, "value": "TOKENS", - "start": 1982, - "end": 1988, + "start": 1972, + "end": 1978, "loc": { "start": { "line": 95, @@ -20890,8 +29529,8 @@ "binop": null, "updateContext": null }, - "start": 1988, - "end": 1989, + "start": 1978, + "end": 1979, "loc": { "start": { "line": 95, @@ -20916,8 +29555,8 @@ "binop": null }, "value": "i", - "start": 1989, - "end": 1990, + "start": 1979, + "end": 1980, "loc": { "start": { "line": 95, @@ -20942,8 +29581,8 @@ "binop": null, "updateContext": null }, - "start": 1990, - "end": 1991, + "start": 1980, + "end": 1981, "loc": { "start": { "line": 95, @@ -20968,8 +29607,8 @@ "binop": null, "updateContext": null }, - "start": 1991, - "end": 1992, + "start": 1981, + "end": 1982, "loc": { "start": { "line": 95, @@ -20994,8 +29633,8 @@ "binop": null }, "value": "lastIndex", - "start": 1992, - "end": 2001, + "start": 1982, + "end": 1991, "loc": { "start": { "line": 95, @@ -21020,8 +29659,8 @@ "binop": null, "updateContext": null }, - "start": 2001, - "end": 2002, + "start": 1991, + "end": 1992, "loc": { "start": { "line": 95, @@ -21046,8 +29685,8 @@ "binop": null }, "value": "token", - "start": 2012, - "end": 2017, + "start": 2002, + "end": 2007, "loc": { "start": { "line": 97, @@ -21073,8 +29712,8 @@ "updateContext": null }, "value": "=", - "start": 2018, - "end": 2019, + "start": 2008, + "end": 2009, "loc": { "start": { "line": 97, @@ -21099,8 +29738,8 @@ "binop": null }, "value": "match", - "start": 2020, - "end": 2025, + "start": 2010, + "end": 2015, "loc": { "start": { "line": 97, @@ -21125,8 +29764,8 @@ "binop": null, "updateContext": null }, - "start": 2025, - "end": 2026, + "start": 2015, + "end": 2016, "loc": { "start": { "line": 97, @@ -21153,8 +29792,8 @@ "updateContext": null }, "value": "break", - "start": 2035, - "end": 2040, + "start": 2025, + "end": 2030, "loc": { "start": { "line": 98, @@ -21179,8 +29818,8 @@ "binop": null, "updateContext": null }, - "start": 2040, - "end": 2041, + "start": 2030, + "end": 2031, "loc": { "start": { "line": 98, @@ -21204,8 +29843,8 @@ "postfix": false, "binop": null }, - "start": 2048, - "end": 2049, + "start": 2038, + "end": 2039, "loc": { "start": { "line": 99, @@ -21229,8 +29868,8 @@ "postfix": false, "binop": null }, - "start": 2054, - "end": 2055, + "start": 2044, + "end": 2045, "loc": { "start": { "line": 100, @@ -21245,8 +29884,8 @@ { "type": "CommentLine", "value": " Return the matched token, or null if anything was found", - "start": 2061, - "end": 2119, + "start": 2051, + "end": 2109, "loc": { "start": { "line": 102, @@ -21273,8 +29912,8 @@ "updateContext": null }, "value": "return", - "start": 2124, - "end": 2130, + "start": 2114, + "end": 2120, "loc": { "start": { "line": 103, @@ -21299,8 +29938,8 @@ "binop": null }, "value": "token", - "start": 2131, - "end": 2136, + "start": 2121, + "end": 2126, "loc": { "start": { "line": 103, @@ -21325,8 +29964,8 @@ "binop": null, "updateContext": null }, - "start": 2136, - "end": 2137, + "start": 2126, + "end": 2127, "loc": { "start": { "line": 103, @@ -21350,8 +29989,8 @@ "postfix": false, "binop": null }, - "start": 2140, - "end": 2141, + "start": 2130, + "end": 2131, "loc": { "start": { "line": 104, @@ -21376,8 +30015,8 @@ "binop": null }, "value": "__transformTokens", - "start": 2145, - "end": 2162, + "start": 2135, + "end": 2152, "loc": { "start": { "line": 106, @@ -21401,8 +30040,8 @@ "postfix": false, "binop": null }, - "start": 2162, - "end": 2163, + "start": 2152, + "end": 2153, "loc": { "start": { "line": 106, @@ -21427,8 +30066,8 @@ "binop": null }, "value": "tokens", - "start": 2163, - "end": 2169, + "start": 2153, + "end": 2159, "loc": { "start": { "line": 106, @@ -21452,8 +30091,8 @@ "postfix": false, "binop": null }, - "start": 2169, - "end": 2170, + "start": 2159, + "end": 2160, "loc": { "start": { "line": 106, @@ -21477,8 +30116,8 @@ "postfix": false, "binop": null }, - "start": 2171, - "end": 2172, + "start": 2161, + "end": 2162, "loc": { "start": { "line": 106, @@ -21505,8 +30144,8 @@ "updateContext": null }, "value": "for", - "start": 2177, - "end": 2180, + "start": 2167, + "end": 2170, "loc": { "start": { "line": 107, @@ -21530,8 +30169,8 @@ "postfix": false, "binop": null }, - "start": 2181, - "end": 2182, + "start": 2171, + "end": 2172, "loc": { "start": { "line": 107, @@ -21558,8 +30197,8 @@ "updateContext": null }, "value": "let", - "start": 2182, - "end": 2185, + "start": 2172, + "end": 2175, "loc": { "start": { "line": 107, @@ -21584,8 +30223,8 @@ "binop": null }, "value": "i", - "start": 2186, - "end": 2187, + "start": 2176, + "end": 2177, "loc": { "start": { "line": 107, @@ -21611,8 +30250,8 @@ "updateContext": null }, "value": "=", - "start": 2188, - "end": 2189, + "start": 2178, + "end": 2179, "loc": { "start": { "line": 107, @@ -21638,8 +30277,8 @@ "updateContext": null }, "value": 0, - "start": 2190, - "end": 2191, + "start": 2180, + "end": 2181, "loc": { "start": { "line": 107, @@ -21664,8 +30303,8 @@ "binop": null, "updateContext": null }, - "start": 2191, - "end": 2192, + "start": 2181, + "end": 2182, "loc": { "start": { "line": 107, @@ -21690,8 +30329,8 @@ "binop": null }, "value": "i", - "start": 2193, - "end": 2194, + "start": 2183, + "end": 2184, "loc": { "start": { "line": 107, @@ -21717,8 +30356,8 @@ "updateContext": null }, "value": "<", - "start": 2195, - "end": 2196, + "start": 2185, + "end": 2186, "loc": { "start": { "line": 107, @@ -21743,8 +30382,8 @@ "binop": null }, "value": "tokens", - "start": 2197, - "end": 2203, + "start": 2187, + "end": 2193, "loc": { "start": { "line": 107, @@ -21769,8 +30408,8 @@ "binop": null, "updateContext": null }, - "start": 2203, - "end": 2204, + "start": 2193, + "end": 2194, "loc": { "start": { "line": 107, @@ -21795,8 +30434,8 @@ "binop": null }, "value": "length", - "start": 2204, - "end": 2210, + "start": 2194, + "end": 2200, "loc": { "start": { "line": 107, @@ -21821,8 +30460,8 @@ "binop": null, "updateContext": null }, - "start": 2210, - "end": 2211, + "start": 2200, + "end": 2201, "loc": { "start": { "line": 107, @@ -21847,8 +30486,8 @@ "binop": null }, "value": "++", - "start": 2212, - "end": 2214, + "start": 2202, + "end": 2204, "loc": { "start": { "line": 107, @@ -21873,8 +30512,8 @@ "binop": null }, "value": "i", - "start": 2214, - "end": 2215, + "start": 2204, + "end": 2205, "loc": { "start": { "line": 107, @@ -21898,8 +30537,8 @@ "postfix": false, "binop": null }, - "start": 2215, - "end": 2216, + "start": 2205, + "end": 2206, "loc": { "start": { "line": 107, @@ -21923,8 +30562,8 @@ "postfix": false, "binop": null }, - "start": 2217, - "end": 2218, + "start": 2207, + "end": 2208, "loc": { "start": { "line": 107, @@ -21939,8 +30578,8 @@ { "type": "CommentLine", "value": " x: => \"x\",", - "start": 2225, - "end": 2238, + "start": 2215, + "end": 2228, "loc": { "start": { "line": 108, @@ -21967,8 +30606,8 @@ "updateContext": null }, "value": "if", - "start": 2245, - "end": 2247, + "start": 2235, + "end": 2237, "loc": { "start": { "line": 109, @@ -21992,8 +30631,8 @@ "postfix": false, "binop": null }, - "start": 2248, - "end": 2249, + "start": 2238, + "end": 2239, "loc": { "start": { "line": 109, @@ -22018,8 +30657,8 @@ "binop": null }, "value": "tokens", - "start": 2249, - "end": 2255, + "start": 2239, + "end": 2245, "loc": { "start": { "line": 109, @@ -22044,8 +30683,8 @@ "binop": null, "updateContext": null }, - "start": 2255, - "end": 2256, + "start": 2245, + "end": 2246, "loc": { "start": { "line": 109, @@ -22070,8 +30709,8 @@ "binop": null }, "value": "i", - "start": 2256, - "end": 2257, + "start": 2246, + "end": 2247, "loc": { "start": { "line": 109, @@ -22096,8 +30735,8 @@ "binop": null, "updateContext": null }, - "start": 2257, - "end": 2258, + "start": 2247, + "end": 2248, "loc": { "start": { "line": 109, @@ -22122,8 +30761,8 @@ "binop": null, "updateContext": null }, - "start": 2258, - "end": 2259, + "start": 2248, + "end": 2249, "loc": { "start": { "line": 109, @@ -22148,8 +30787,8 @@ "binop": null }, "value": "type", - "start": 2259, - "end": 2263, + "start": 2249, + "end": 2253, "loc": { "start": { "line": 109, @@ -22175,8 +30814,8 @@ "updateContext": null }, "value": "===", - "start": 2264, - "end": 2267, + "start": 2254, + "end": 2257, "loc": { "start": { "line": 109, @@ -22202,8 +30841,8 @@ "updateContext": null }, "value": "WORD", - "start": 2268, - "end": 2274, + "start": 2258, + "end": 2264, "loc": { "start": { "line": 109, @@ -22227,8 +30866,8 @@ "postfix": false, "binop": null }, - "start": 2274, - "end": 2275, + "start": 2264, + "end": 2265, "loc": { "start": { "line": 109, @@ -22252,8 +30891,8 @@ "postfix": false, "binop": null }, - "start": 2276, - "end": 2277, + "start": 2266, + "end": 2267, "loc": { "start": { "line": 109, @@ -22280,8 +30919,8 @@ "updateContext": null }, "value": "const", - "start": 2286, - "end": 2291, + "start": 2276, + "end": 2281, "loc": { "start": { "line": 110, @@ -22306,8 +30945,8 @@ "binop": null }, "value": "nextToken", - "start": 2292, - "end": 2301, + "start": 2282, + "end": 2291, "loc": { "start": { "line": 110, @@ -22333,8 +30972,8 @@ "updateContext": null }, "value": "=", - "start": 2302, - "end": 2303, + "start": 2292, + "end": 2293, "loc": { "start": { "line": 110, @@ -22359,8 +30998,8 @@ "binop": null }, "value": "tokens", - "start": 2304, - "end": 2310, + "start": 2294, + "end": 2300, "loc": { "start": { "line": 110, @@ -22385,8 +31024,8 @@ "binop": null, "updateContext": null }, - "start": 2310, - "end": 2311, + "start": 2300, + "end": 2301, "loc": { "start": { "line": 110, @@ -22411,8 +31050,8 @@ "binop": null }, "value": "i", - "start": 2311, - "end": 2312, + "start": 2301, + "end": 2302, "loc": { "start": { "line": 110, @@ -22438,8 +31077,8 @@ "updateContext": null }, "value": "+", - "start": 2313, - "end": 2314, + "start": 2303, + "end": 2304, "loc": { "start": { "line": 110, @@ -22465,8 +31104,8 @@ "updateContext": null }, "value": 1, - "start": 2315, - "end": 2316, + "start": 2305, + "end": 2306, "loc": { "start": { "line": 110, @@ -22491,8 +31130,8 @@ "binop": null, "updateContext": null }, - "start": 2316, - "end": 2317, + "start": 2306, + "end": 2307, "loc": { "start": { "line": 110, @@ -22517,8 +31156,8 @@ "binop": null, "updateContext": null }, - "start": 2317, - "end": 2318, + "start": 2307, + "end": 2308, "loc": { "start": { "line": 110, @@ -22545,8 +31184,8 @@ "updateContext": null }, "value": "if", - "start": 2327, - "end": 2329, + "start": 2317, + "end": 2319, "loc": { "start": { "line": 111, @@ -22570,8 +31209,8 @@ "postfix": false, "binop": null }, - "start": 2330, - "end": 2331, + "start": 2320, + "end": 2321, "loc": { "start": { "line": 111, @@ -22596,8 +31235,8 @@ "binop": null }, "value": "nextToken", - "start": 2331, - "end": 2340, + "start": 2321, + "end": 2330, "loc": { "start": { "line": 111, @@ -22623,8 +31262,8 @@ "updateContext": null }, "value": "&&", - "start": 2341, - "end": 2343, + "start": 2331, + "end": 2333, "loc": { "start": { "line": 111, @@ -22649,8 +31288,8 @@ "binop": null }, "value": "nextToken", - "start": 2344, - "end": 2353, + "start": 2334, + "end": 2343, "loc": { "start": { "line": 111, @@ -22675,8 +31314,8 @@ "binop": null, "updateContext": null }, - "start": 2353, - "end": 2354, + "start": 2343, + "end": 2344, "loc": { "start": { "line": 111, @@ -22701,8 +31340,8 @@ "binop": null }, "value": "value", - "start": 2354, - "end": 2359, + "start": 2344, + "end": 2349, "loc": { "start": { "line": 111, @@ -22728,8 +31367,8 @@ "updateContext": null }, "value": "===", - "start": 2360, - "end": 2363, + "start": 2350, + "end": 2353, "loc": { "start": { "line": 111, @@ -22755,8 +31394,8 @@ "updateContext": null }, "value": ":", - "start": 2364, - "end": 2367, + "start": 2354, + "end": 2357, "loc": { "start": { "line": 111, @@ -22780,8 +31419,8 @@ "postfix": false, "binop": null }, - "start": 2367, - "end": 2368, + "start": 2357, + "end": 2358, "loc": { "start": { "line": 111, @@ -22805,8 +31444,8 @@ "postfix": false, "binop": null }, - "start": 2369, - "end": 2370, + "start": 2359, + "end": 2360, "loc": { "start": { "line": 111, @@ -22831,8 +31470,8 @@ "binop": null }, "value": "tokens", - "start": 2381, - "end": 2387, + "start": 2371, + "end": 2377, "loc": { "start": { "line": 112, @@ -22857,8 +31496,8 @@ "binop": null, "updateContext": null }, - "start": 2387, - "end": 2388, + "start": 2377, + "end": 2378, "loc": { "start": { "line": 112, @@ -22883,8 +31522,8 @@ "binop": null }, "value": "i", - "start": 2388, - "end": 2389, + "start": 2378, + "end": 2379, "loc": { "start": { "line": 112, @@ -22909,8 +31548,8 @@ "binop": null, "updateContext": null }, - "start": 2389, - "end": 2390, + "start": 2379, + "end": 2380, "loc": { "start": { "line": 112, @@ -22935,8 +31574,8 @@ "binop": null, "updateContext": null }, - "start": 2390, - "end": 2391, + "start": 2380, + "end": 2381, "loc": { "start": { "line": 112, @@ -22961,8 +31600,8 @@ "binop": null }, "value": "type", - "start": 2391, - "end": 2395, + "start": 2381, + "end": 2385, "loc": { "start": { "line": 112, @@ -22988,8 +31627,8 @@ "updateContext": null }, "value": "=", - "start": 2396, - "end": 2397, + "start": 2386, + "end": 2387, "loc": { "start": { "line": 112, @@ -23015,8 +31654,8 @@ "updateContext": null }, "value": "STRING", - "start": 2398, - "end": 2406, + "start": 2388, + "end": 2396, "loc": { "start": { "line": 112, @@ -23041,8 +31680,8 @@ "binop": null, "updateContext": null }, - "start": 2406, - "end": 2407, + "start": 2396, + "end": 2397, "loc": { "start": { "line": 112, @@ -23066,8 +31705,8 @@ "postfix": false, "binop": null }, - "start": 2416, - "end": 2417, + "start": 2406, + "end": 2407, "loc": { "start": { "line": 113, @@ -23091,8 +31730,8 @@ "postfix": false, "binop": null }, - "start": 2424, - "end": 2425, + "start": 2414, + "end": 2415, "loc": { "start": { "line": 114, @@ -23107,8 +31746,8 @@ { "type": "CommentLine", "value": " Replace dots with parentehsis", - "start": 2433, - "end": 2465, + "start": 2423, + "end": 2455, "loc": { "start": { "line": 116, @@ -23123,8 +31762,8 @@ { "type": "CommentLine", "value": " a.b => a(\"b\")", - "start": 2472, - "end": 2493, + "start": 2462, + "end": 2483, "loc": { "start": { "line": 117, @@ -23139,8 +31778,8 @@ { "type": "CommentLine", "value": " a.b.c => a(\"b\")(\"c\")", - "start": 2500, - "end": 2526, + "start": 2490, + "end": 2516, "loc": { "start": { "line": 118, @@ -23155,8 +31794,8 @@ { "type": "CommentLine", "value": " a.b(c, d) => a(\"b\", c, d)", - "start": 2533, - "end": 2563, + "start": 2523, + "end": 2553, "loc": { "start": { "line": 119, @@ -23183,8 +31822,8 @@ "updateContext": null }, "value": "if", - "start": 2570, - "end": 2572, + "start": 2560, + "end": 2562, "loc": { "start": { "line": 120, @@ -23208,8 +31847,8 @@ "postfix": false, "binop": null }, - "start": 2573, - "end": 2574, + "start": 2563, + "end": 2564, "loc": { "start": { "line": 120, @@ -23234,8 +31873,8 @@ "binop": null }, "value": "tokens", - "start": 2574, - "end": 2580, + "start": 2564, + "end": 2570, "loc": { "start": { "line": 120, @@ -23260,8 +31899,8 @@ "binop": null, "updateContext": null }, - "start": 2580, - "end": 2581, + "start": 2570, + "end": 2571, "loc": { "start": { "line": 120, @@ -23286,8 +31925,8 @@ "binop": null }, "value": "i", - "start": 2581, - "end": 2582, + "start": 2571, + "end": 2572, "loc": { "start": { "line": 120, @@ -23312,8 +31951,8 @@ "binop": null, "updateContext": null }, - "start": 2582, - "end": 2583, + "start": 2572, + "end": 2573, "loc": { "start": { "line": 120, @@ -23338,8 +31977,8 @@ "binop": null, "updateContext": null }, - "start": 2583, - "end": 2584, + "start": 2573, + "end": 2574, "loc": { "start": { "line": 120, @@ -23364,8 +32003,8 @@ "binop": null }, "value": "type", - "start": 2584, - "end": 2588, + "start": 2574, + "end": 2578, "loc": { "start": { "line": 120, @@ -23391,8 +32030,8 @@ "updateContext": null }, "value": "===", - "start": 2589, - "end": 2592, + "start": 2579, + "end": 2582, "loc": { "start": { "line": 120, @@ -23418,8 +32057,8 @@ "updateContext": null }, "value": "LP", - "start": 2593, - "end": 2597, + "start": 2583, + "end": 2587, "loc": { "start": { "line": 120, @@ -23445,8 +32084,8 @@ "updateContext": null }, "value": "&&", - "start": 2598, - "end": 2600, + "start": 2588, + "end": 2590, "loc": { "start": { "line": 120, @@ -23471,8 +32110,8 @@ "binop": null }, "value": "tokens", - "start": 2601, - "end": 2607, + "start": 2591, + "end": 2597, "loc": { "start": { "line": 120, @@ -23497,8 +32136,8 @@ "binop": null, "updateContext": null }, - "start": 2607, - "end": 2608, + "start": 2597, + "end": 2598, "loc": { "start": { "line": 120, @@ -23523,8 +32162,8 @@ "binop": null }, "value": "i", - "start": 2608, - "end": 2609, + "start": 2598, + "end": 2599, "loc": { "start": { "line": 120, @@ -23549,8 +32188,8 @@ "binop": null, "updateContext": null }, - "start": 2609, - "end": 2610, + "start": 2599, + "end": 2600, "loc": { "start": { "line": 120, @@ -23575,8 +32214,8 @@ "binop": null, "updateContext": null }, - "start": 2610, - "end": 2611, + "start": 2600, + "end": 2601, "loc": { "start": { "line": 120, @@ -23601,8 +32240,8 @@ "binop": null }, "value": "value", - "start": 2611, - "end": 2616, + "start": 2601, + "end": 2606, "loc": { "start": { "line": 120, @@ -23628,8 +32267,8 @@ "updateContext": null }, "value": "===", - "start": 2617, - "end": 2620, + "start": 2607, + "end": 2610, "loc": { "start": { "line": 120, @@ -23655,8 +32294,8 @@ "updateContext": null }, "value": ".", - "start": 2621, - "end": 2624, + "start": 2611, + "end": 2614, "loc": { "start": { "line": 120, @@ -23680,8 +32319,8 @@ "postfix": false, "binop": null }, - "start": 2624, - "end": 2625, + "start": 2614, + "end": 2615, "loc": { "start": { "line": 120, @@ -23705,8 +32344,8 @@ "postfix": false, "binop": null }, - "start": 2626, - "end": 2627, + "start": 2616, + "end": 2617, "loc": { "start": { "line": 120, @@ -23731,8 +32370,8 @@ "binop": null }, "value": "tokens", - "start": 2636, - "end": 2642, + "start": 2626, + "end": 2632, "loc": { "start": { "line": 121, @@ -23757,8 +32396,8 @@ "binop": null, "updateContext": null }, - "start": 2642, - "end": 2643, + "start": 2632, + "end": 2633, "loc": { "start": { "line": 121, @@ -23783,8 +32422,8 @@ "binop": null }, "value": "i", - "start": 2643, - "end": 2644, + "start": 2633, + "end": 2634, "loc": { "start": { "line": 121, @@ -23809,8 +32448,8 @@ "binop": null, "updateContext": null }, - "start": 2644, - "end": 2645, + "start": 2634, + "end": 2635, "loc": { "start": { "line": 121, @@ -23835,8 +32474,8 @@ "binop": null, "updateContext": null }, - "start": 2645, - "end": 2646, + "start": 2635, + "end": 2636, "loc": { "start": { "line": 121, @@ -23861,8 +32500,8 @@ "binop": null }, "value": "value", - "start": 2646, - "end": 2651, + "start": 2636, + "end": 2641, "loc": { "start": { "line": 121, @@ -23888,8 +32527,8 @@ "updateContext": null }, "value": "=", - "start": 2652, - "end": 2653, + "start": 2642, + "end": 2643, "loc": { "start": { "line": 121, @@ -23915,8 +32554,8 @@ "updateContext": null }, "value": "(", - "start": 2654, - "end": 2657, + "start": 2644, + "end": 2647, "loc": { "start": { "line": 121, @@ -23941,8 +32580,8 @@ "binop": null, "updateContext": null }, - "start": 2657, - "end": 2658, + "start": 2647, + "end": 2648, "loc": { "start": { "line": 121, @@ -23969,8 +32608,8 @@ "updateContext": null }, "value": "const", - "start": 2668, - "end": 2673, + "start": 2658, + "end": 2663, "loc": { "start": { "line": 123, @@ -23995,8 +32634,8 @@ "binop": null }, "value": "expr", - "start": 2674, - "end": 2678, + "start": 2664, + "end": 2668, "loc": { "start": { "line": 123, @@ -24022,8 +32661,8 @@ "updateContext": null }, "value": "=", - "start": 2679, - "end": 2680, + "start": 2669, + "end": 2670, "loc": { "start": { "line": 123, @@ -24048,8 +32687,8 @@ "binop": null }, "value": "tokens", - "start": 2681, - "end": 2687, + "start": 2671, + "end": 2677, "loc": { "start": { "line": 123, @@ -24074,8 +32713,8 @@ "binop": null, "updateContext": null }, - "start": 2687, - "end": 2688, + "start": 2677, + "end": 2678, "loc": { "start": { "line": 123, @@ -24100,8 +32739,8 @@ "binop": null }, "value": "i", - "start": 2688, - "end": 2689, + "start": 2678, + "end": 2679, "loc": { "start": { "line": 123, @@ -24127,8 +32766,8 @@ "updateContext": null }, "value": "+", - "start": 2690, - "end": 2691, + "start": 2680, + "end": 2681, "loc": { "start": { "line": 123, @@ -24154,8 +32793,8 @@ "updateContext": null }, "value": 1, - "start": 2692, - "end": 2693, + "start": 2682, + "end": 2683, "loc": { "start": { "line": 123, @@ -24180,8 +32819,8 @@ "binop": null, "updateContext": null }, - "start": 2693, - "end": 2694, + "start": 2683, + "end": 2684, "loc": { "start": { "line": 123, @@ -24206,8 +32845,8 @@ "binop": null, "updateContext": null }, - "start": 2694, - "end": 2695, + "start": 2684, + "end": 2685, "loc": { "start": { "line": 123, @@ -24234,8 +32873,8 @@ "updateContext": null }, "value": "const", - "start": 2704, - "end": 2709, + "start": 2694, + "end": 2699, "loc": { "start": { "line": 124, @@ -24260,8 +32899,8 @@ "binop": null }, "value": "arg", - "start": 2710, - "end": 2713, + "start": 2700, + "end": 2703, "loc": { "start": { "line": 124, @@ -24287,8 +32926,8 @@ "updateContext": null }, "value": "=", - "start": 2714, - "end": 2715, + "start": 2704, + "end": 2705, "loc": { "start": { "line": 124, @@ -24313,8 +32952,8 @@ "binop": null }, "value": "tokens", - "start": 2716, - "end": 2722, + "start": 2706, + "end": 2712, "loc": { "start": { "line": 124, @@ -24339,8 +32978,8 @@ "binop": null, "updateContext": null }, - "start": 2722, - "end": 2723, + "start": 2712, + "end": 2713, "loc": { "start": { "line": 124, @@ -24365,8 +33004,8 @@ "binop": null }, "value": "i", - "start": 2723, - "end": 2724, + "start": 2713, + "end": 2714, "loc": { "start": { "line": 124, @@ -24392,8 +33031,8 @@ "updateContext": null }, "value": "+", - "start": 2725, - "end": 2726, + "start": 2715, + "end": 2716, "loc": { "start": { "line": 124, @@ -24419,8 +33058,8 @@ "updateContext": null }, "value": 2, - "start": 2727, - "end": 2728, + "start": 2717, + "end": 2718, "loc": { "start": { "line": 124, @@ -24445,8 +33084,8 @@ "binop": null, "updateContext": null }, - "start": 2728, - "end": 2729, + "start": 2718, + "end": 2719, "loc": { "start": { "line": 124, @@ -24471,8 +33110,8 @@ "binop": null, "updateContext": null }, - "start": 2729, - "end": 2730, + "start": 2719, + "end": 2720, "loc": { "start": { "line": 124, @@ -24499,8 +33138,8 @@ "updateContext": null }, "value": "if", - "start": 2740, - "end": 2742, + "start": 2730, + "end": 2732, "loc": { "start": { "line": 126, @@ -24524,8 +33163,8 @@ "postfix": false, "binop": null }, - "start": 2743, - "end": 2744, + "start": 2733, + "end": 2734, "loc": { "start": { "line": 126, @@ -24550,8 +33189,8 @@ "binop": null }, "value": "expr", - "start": 2744, - "end": 2748, + "start": 2734, + "end": 2738, "loc": { "start": { "line": 126, @@ -24577,8 +33216,8 @@ "updateContext": null }, "value": "&&", - "start": 2749, - "end": 2751, + "start": 2739, + "end": 2741, "loc": { "start": { "line": 126, @@ -24603,8 +33242,8 @@ "binop": null }, "value": "expr", - "start": 2752, - "end": 2756, + "start": 2742, + "end": 2746, "loc": { "start": { "line": 126, @@ -24629,8 +33268,8 @@ "binop": null, "updateContext": null }, - "start": 2756, - "end": 2757, + "start": 2746, + "end": 2747, "loc": { "start": { "line": 126, @@ -24655,8 +33294,8 @@ "binop": null }, "value": "type", - "start": 2757, - "end": 2761, + "start": 2747, + "end": 2751, "loc": { "start": { "line": 126, @@ -24682,8 +33321,8 @@ "updateContext": null }, "value": "===", - "start": 2762, - "end": 2765, + "start": 2752, + "end": 2755, "loc": { "start": { "line": 126, @@ -24709,8 +33348,8 @@ "updateContext": null }, "value": "WORD", - "start": 2766, - "end": 2772, + "start": 2756, + "end": 2762, "loc": { "start": { "line": 126, @@ -24734,8 +33373,8 @@ "postfix": false, "binop": null }, - "start": 2772, - "end": 2773, + "start": 2762, + "end": 2763, "loc": { "start": { "line": 126, @@ -24759,8 +33398,8 @@ "postfix": false, "binop": null }, - "start": 2774, - "end": 2775, + "start": 2764, + "end": 2765, "loc": { "start": { "line": 126, @@ -24785,8 +33424,8 @@ "binop": null }, "value": "expr", - "start": 2786, - "end": 2790, + "start": 2776, + "end": 2780, "loc": { "start": { "line": 127, @@ -24811,8 +33450,8 @@ "binop": null, "updateContext": null }, - "start": 2790, - "end": 2791, + "start": 2780, + "end": 2781, "loc": { "start": { "line": 127, @@ -24837,8 +33476,8 @@ "binop": null }, "value": "type", - "start": 2791, - "end": 2795, + "start": 2781, + "end": 2785, "loc": { "start": { "line": 127, @@ -24864,8 +33503,8 @@ "updateContext": null }, "value": "=", - "start": 2796, - "end": 2797, + "start": 2786, + "end": 2787, "loc": { "start": { "line": 127, @@ -24891,8 +33530,8 @@ "updateContext": null }, "value": "STRING", - "start": 2798, - "end": 2806, + "start": 2788, + "end": 2796, "loc": { "start": { "line": 127, @@ -24917,8 +33556,8 @@ "binop": null, "updateContext": null }, - "start": 2806, - "end": 2807, + "start": 2796, + "end": 2797, "loc": { "start": { "line": 127, @@ -24942,8 +33581,8 @@ "postfix": false, "binop": null }, - "start": 2816, - "end": 2817, + "start": 2806, + "end": 2807, "loc": { "start": { "line": 128, @@ -24970,8 +33609,8 @@ "updateContext": null }, "value": "if", - "start": 2827, - "end": 2829, + "start": 2817, + "end": 2819, "loc": { "start": { "line": 130, @@ -24995,8 +33634,8 @@ "postfix": false, "binop": null }, - "start": 2830, - "end": 2831, + "start": 2820, + "end": 2821, "loc": { "start": { "line": 130, @@ -25021,8 +33660,8 @@ "binop": null }, "value": "arg", - "start": 2831, - "end": 2834, + "start": 2821, + "end": 2824, "loc": { "start": { "line": 130, @@ -25048,8 +33687,8 @@ "updateContext": null }, "value": "&&", - "start": 2835, - "end": 2837, + "start": 2825, + "end": 2827, "loc": { "start": { "line": 130, @@ -25074,8 +33713,8 @@ "binop": null }, "value": "arg", - "start": 2838, - "end": 2841, + "start": 2828, + "end": 2831, "loc": { "start": { "line": 130, @@ -25100,8 +33739,8 @@ "binop": null, "updateContext": null }, - "start": 2841, - "end": 2842, + "start": 2831, + "end": 2832, "loc": { "start": { "line": 130, @@ -25126,8 +33765,8 @@ "binop": null }, "value": "type", - "start": 2842, - "end": 2846, + "start": 2832, + "end": 2836, "loc": { "start": { "line": 130, @@ -25153,8 +33792,8 @@ "updateContext": null }, "value": "===", - "start": 2847, - "end": 2850, + "start": 2837, + "end": 2840, "loc": { "start": { "line": 130, @@ -25180,8 +33819,8 @@ "updateContext": null }, "value": "LP", - "start": 2851, - "end": 2855, + "start": 2841, + "end": 2845, "loc": { "start": { "line": 130, @@ -25207,8 +33846,8 @@ "updateContext": null }, "value": "&&", - "start": 2856, - "end": 2858, + "start": 2846, + "end": 2848, "loc": { "start": { "line": 130, @@ -25233,8 +33872,8 @@ "binop": null }, "value": "arg", - "start": 2859, - "end": 2862, + "start": 2849, + "end": 2852, "loc": { "start": { "line": 130, @@ -25259,8 +33898,8 @@ "binop": null, "updateContext": null }, - "start": 2862, - "end": 2863, + "start": 2852, + "end": 2853, "loc": { "start": { "line": 130, @@ -25285,8 +33924,8 @@ "binop": null }, "value": "value", - "start": 2863, - "end": 2868, + "start": 2853, + "end": 2858, "loc": { "start": { "line": 130, @@ -25312,8 +33951,8 @@ "updateContext": null }, "value": "!==", - "start": 2869, - "end": 2872, + "start": 2859, + "end": 2862, "loc": { "start": { "line": 130, @@ -25339,8 +33978,8 @@ "updateContext": null }, "value": ".", - "start": 2873, - "end": 2876, + "start": 2863, + "end": 2866, "loc": { "start": { "line": 130, @@ -25364,8 +34003,8 @@ "postfix": false, "binop": null }, - "start": 2876, - "end": 2877, + "start": 2866, + "end": 2867, "loc": { "start": { "line": 130, @@ -25389,8 +34028,8 @@ "postfix": false, "binop": null }, - "start": 2878, - "end": 2879, + "start": 2868, + "end": 2869, "loc": { "start": { "line": 130, @@ -25415,8 +34054,8 @@ "binop": null }, "value": "arg", - "start": 2890, - "end": 2893, + "start": 2880, + "end": 2883, "loc": { "start": { "line": 131, @@ -25441,8 +34080,8 @@ "binop": null, "updateContext": null }, - "start": 2893, - "end": 2894, + "start": 2883, + "end": 2884, "loc": { "start": { "line": 131, @@ -25467,8 +34106,8 @@ "binop": null }, "value": "type", - "start": 2894, - "end": 2898, + "start": 2884, + "end": 2888, "loc": { "start": { "line": 131, @@ -25494,8 +34133,8 @@ "updateContext": null }, "value": "=", - "start": 2899, - "end": 2900, + "start": 2889, + "end": 2890, "loc": { "start": { "line": 131, @@ -25521,8 +34160,8 @@ "updateContext": null }, "value": "COMMA", - "start": 2901, - "end": 2908, + "start": 2891, + "end": 2898, "loc": { "start": { "line": 131, @@ -25547,8 +34186,8 @@ "binop": null, "updateContext": null }, - "start": 2908, - "end": 2909, + "start": 2898, + "end": 2899, "loc": { "start": { "line": 131, @@ -25573,8 +34212,8 @@ "binop": null }, "value": "arg", - "start": 2920, - "end": 2923, + "start": 2910, + "end": 2913, "loc": { "start": { "line": 132, @@ -25599,8 +34238,8 @@ "binop": null, "updateContext": null }, - "start": 2923, - "end": 2924, + "start": 2913, + "end": 2914, "loc": { "start": { "line": 132, @@ -25625,8 +34264,8 @@ "binop": null }, "value": "value", - "start": 2924, - "end": 2929, + "start": 2914, + "end": 2919, "loc": { "start": { "line": 132, @@ -25652,8 +34291,8 @@ "updateContext": null }, "value": "=", - "start": 2930, - "end": 2931, + "start": 2920, + "end": 2921, "loc": { "start": { "line": 132, @@ -25679,8 +34318,8 @@ "updateContext": null }, "value": ",", - "start": 2932, - "end": 2935, + "start": 2922, + "end": 2925, "loc": { "start": { "line": 132, @@ -25705,8 +34344,8 @@ "binop": null, "updateContext": null }, - "start": 2935, - "end": 2936, + "start": 2925, + "end": 2926, "loc": { "start": { "line": 132, @@ -25730,8 +34369,8 @@ "postfix": false, "binop": null }, - "start": 2945, - "end": 2946, + "start": 2935, + "end": 2936, "loc": { "start": { "line": 133, @@ -25758,8 +34397,8 @@ "updateContext": null }, "value": "else", - "start": 2947, - "end": 2951, + "start": 2937, + "end": 2941, "loc": { "start": { "line": 133, @@ -25783,8 +34422,8 @@ "postfix": false, "binop": null }, - "start": 2952, - "end": 2953, + "start": 2942, + "end": 2943, "loc": { "start": { "line": 133, @@ -25809,8 +34448,8 @@ "binop": null }, "value": "tokens", - "start": 2964, - "end": 2970, + "start": 2954, + "end": 2960, "loc": { "start": { "line": 134, @@ -25835,8 +34474,8 @@ "binop": null, "updateContext": null }, - "start": 2970, - "end": 2971, + "start": 2960, + "end": 2961, "loc": { "start": { "line": 134, @@ -25861,8 +34500,8 @@ "binop": null }, "value": "splice", - "start": 2971, - "end": 2977, + "start": 2961, + "end": 2967, "loc": { "start": { "line": 134, @@ -25886,8 +34525,8 @@ "postfix": false, "binop": null }, - "start": 2977, - "end": 2978, + "start": 2967, + "end": 2968, "loc": { "start": { "line": 134, @@ -25912,8 +34551,8 @@ "binop": null }, "value": "i", - "start": 2978, - "end": 2979, + "start": 2968, + "end": 2969, "loc": { "start": { "line": 134, @@ -25939,8 +34578,8 @@ "updateContext": null }, "value": "+", - "start": 2980, - "end": 2981, + "start": 2970, + "end": 2971, "loc": { "start": { "line": 134, @@ -25966,8 +34605,8 @@ "updateContext": null }, "value": 2, - "start": 2982, - "end": 2983, + "start": 2972, + "end": 2973, "loc": { "start": { "line": 134, @@ -25992,8 +34631,8 @@ "binop": null, "updateContext": null }, - "start": 2983, - "end": 2984, + "start": 2973, + "end": 2974, "loc": { "start": { "line": 134, @@ -26019,8 +34658,8 @@ "updateContext": null }, "value": 0, - "start": 2985, - "end": 2986, + "start": 2975, + "end": 2976, "loc": { "start": { "line": 134, @@ -26045,8 +34684,8 @@ "binop": null, "updateContext": null }, - "start": 2986, - "end": 2987, + "start": 2976, + "end": 2977, "loc": { "start": { "line": 134, @@ -26070,8 +34709,8 @@ "postfix": false, "binop": null }, - "start": 2988, - "end": 2989, + "start": 2978, + "end": 2979, "loc": { "start": { "line": 134, @@ -26096,8 +34735,8 @@ "binop": null }, "value": "type", - "start": 2990, - "end": 2994, + "start": 2980, + "end": 2984, "loc": { "start": { "line": 134, @@ -26122,8 +34761,8 @@ "binop": null, "updateContext": null }, - "start": 2994, - "end": 2995, + "start": 2984, + "end": 2985, "loc": { "start": { "line": 134, @@ -26149,8 +34788,8 @@ "updateContext": null }, "value": "RP", - "start": 2996, - "end": 3000, + "start": 2986, + "end": 2990, "loc": { "start": { "line": 134, @@ -26175,8 +34814,8 @@ "binop": null, "updateContext": null }, - "start": 3000, - "end": 3001, + "start": 2990, + "end": 2991, "loc": { "start": { "line": 134, @@ -26201,8 +34840,8 @@ "binop": null }, "value": "value", - "start": 3002, - "end": 3007, + "start": 2992, + "end": 2997, "loc": { "start": { "line": 134, @@ -26227,8 +34866,8 @@ "binop": null, "updateContext": null }, - "start": 3007, - "end": 3008, + "start": 2997, + "end": 2998, "loc": { "start": { "line": 134, @@ -26254,8 +34893,8 @@ "updateContext": null }, "value": ")", - "start": 3009, - "end": 3012, + "start": 2999, + "end": 3002, "loc": { "start": { "line": 134, @@ -26279,8 +34918,8 @@ "postfix": false, "binop": null }, - "start": 3013, - "end": 3014, + "start": 3003, + "end": 3004, "loc": { "start": { "line": 134, @@ -26304,8 +34943,8 @@ "postfix": false, "binop": null }, - "start": 3014, - "end": 3015, + "start": 3004, + "end": 3005, "loc": { "start": { "line": 134, @@ -26330,8 +34969,8 @@ "binop": null, "updateContext": null }, - "start": 3015, - "end": 3016, + "start": 3005, + "end": 3006, "loc": { "start": { "line": 134, @@ -26355,8 +34994,8 @@ "postfix": false, "binop": null }, - "start": 3025, - "end": 3026, + "start": 3015, + "end": 3016, "loc": { "start": { "line": 135, @@ -26380,8 +35019,8 @@ "postfix": false, "binop": null }, - "start": 3033, - "end": 3034, + "start": 3023, + "end": 3024, "loc": { "start": { "line": 136, @@ -26405,8 +35044,8 @@ "postfix": false, "binop": null }, - "start": 3039, - "end": 3040, + "start": 3029, + "end": 3030, "loc": { "start": { "line": 137, @@ -26433,8 +35072,8 @@ "updateContext": null }, "value": "return", - "start": 3046, - "end": 3052, + "start": 3036, + "end": 3042, "loc": { "start": { "line": 139, @@ -26459,8 +35098,8 @@ "binop": null }, "value": "tokens", - "start": 3053, - "end": 3059, + "start": 3043, + "end": 3049, "loc": { "start": { "line": 139, @@ -26485,8 +35124,8 @@ "binop": null, "updateContext": null }, - "start": 3059, - "end": 3060, + "start": 3049, + "end": 3050, "loc": { "start": { "line": 139, @@ -26510,8 +35149,8 @@ "postfix": false, "binop": null }, - "start": 3063, - "end": 3064, + "start": 3053, + "end": 3054, "loc": { "start": { "line": 140, @@ -26536,8 +35175,8 @@ "binop": null }, "value": "__updateLastIndices", - "start": 3068, - "end": 3087, + "start": 3058, + "end": 3077, "loc": { "start": { "line": 142, @@ -26561,8 +35200,8 @@ "postfix": false, "binop": null }, - "start": 3087, - "end": 3088, + "start": 3077, + "end": 3078, "loc": { "start": { "line": 142, @@ -26586,8 +35225,8 @@ "postfix": false, "binop": null }, - "start": 3088, - "end": 3089, + "start": 3078, + "end": 3079, "loc": { "start": { "line": 142, @@ -26611,8 +35250,8 @@ "postfix": false, "binop": null }, - "start": 3090, - "end": 3091, + "start": 3080, + "end": 3081, "loc": { "start": { "line": 142, @@ -26637,8 +35276,8 @@ "binop": null }, "value": "Lexer", - "start": 3096, - "end": 3101, + "start": 3086, + "end": 3091, "loc": { "start": { "line": 143, @@ -26663,8 +35302,8 @@ "binop": null, "updateContext": null }, - "start": 3101, - "end": 3102, + "start": 3091, + "end": 3092, "loc": { "start": { "line": 143, @@ -26689,8 +35328,8 @@ "binop": null }, "value": "TOKENS", - "start": 3102, - "end": 3108, + "start": 3092, + "end": 3098, "loc": { "start": { "line": 143, @@ -26715,8 +35354,8 @@ "binop": null, "updateContext": null }, - "start": 3108, - "end": 3109, + "start": 3098, + "end": 3099, "loc": { "start": { "line": 143, @@ -26741,8 +35380,8 @@ "binop": null }, "value": "forEach", - "start": 3109, - "end": 3116, + "start": 3099, + "end": 3106, "loc": { "start": { "line": 143, @@ -26766,8 +35405,8 @@ "postfix": false, "binop": null }, - "start": 3116, - "end": 3117, + "start": 3106, + "end": 3107, "loc": { "start": { "line": 143, @@ -26792,8 +35431,8 @@ "binop": null }, "value": "expr", - "start": 3117, - "end": 3121, + "start": 3107, + "end": 3111, "loc": { "start": { "line": 143, @@ -26818,8 +35457,8 @@ "binop": null, "updateContext": null }, - "start": 3122, - "end": 3124, + "start": 3112, + "end": 3114, "loc": { "start": { "line": 143, @@ -26843,8 +35482,8 @@ "postfix": false, "binop": null }, - "start": 3125, - "end": 3126, + "start": 3115, + "end": 3116, "loc": { "start": { "line": 143, @@ -26869,8 +35508,8 @@ "binop": null }, "value": "expr", - "start": 3133, - "end": 3137, + "start": 3123, + "end": 3127, "loc": { "start": { "line": 144, @@ -26895,8 +35534,8 @@ "binop": null, "updateContext": null }, - "start": 3137, - "end": 3138, + "start": 3127, + "end": 3128, "loc": { "start": { "line": 144, @@ -26921,8 +35560,8 @@ "binop": null }, "value": "lastIndex", - "start": 3138, - "end": 3147, + "start": 3128, + "end": 3137, "loc": { "start": { "line": 144, @@ -26948,8 +35587,8 @@ "updateContext": null }, "value": "=", - "start": 3148, - "end": 3149, + "start": 3138, + "end": 3139, "loc": { "start": { "line": 144, @@ -26976,8 +35615,8 @@ "updateContext": null }, "value": "this", - "start": 3150, - "end": 3154, + "start": 3140, + "end": 3144, "loc": { "start": { "line": 144, @@ -27002,8 +35641,8 @@ "binop": null, "updateContext": null }, - "start": 3154, - "end": 3155, + "start": 3144, + "end": 3145, "loc": { "start": { "line": 144, @@ -27028,8 +35667,8 @@ "binop": null }, "value": "lastIndex", - "start": 3155, - "end": 3164, + "start": 3145, + "end": 3154, "loc": { "start": { "line": 144, @@ -27054,8 +35693,8 @@ "binop": null, "updateContext": null }, - "start": 3164, - "end": 3165, + "start": 3154, + "end": 3155, "loc": { "start": { "line": 144, @@ -27079,8 +35718,8 @@ "postfix": false, "binop": null }, - "start": 3170, - "end": 3171, + "start": 3160, + "end": 3161, "loc": { "start": { "line": 145, @@ -27104,8 +35743,8 @@ "postfix": false, "binop": null }, - "start": 3171, - "end": 3172, + "start": 3161, + "end": 3162, "loc": { "start": { "line": 145, @@ -27130,8 +35769,8 @@ "binop": null, "updateContext": null }, - "start": 3172, - "end": 3173, + "start": 3162, + "end": 3163, "loc": { "start": { "line": 145, @@ -27156,8 +35795,8 @@ "binop": null }, "value": "Lexer", - "start": 3178, - "end": 3183, + "start": 3168, + "end": 3173, "loc": { "start": { "line": 146, @@ -27182,8 +35821,8 @@ "binop": null, "updateContext": null }, - "start": 3183, - "end": 3184, + "start": 3173, + "end": 3174, "loc": { "start": { "line": 146, @@ -27208,8 +35847,8 @@ "binop": null }, "value": "WHITES", - "start": 3184, - "end": 3190, + "start": 3174, + "end": 3180, "loc": { "start": { "line": 146, @@ -27234,8 +35873,8 @@ "binop": null, "updateContext": null }, - "start": 3190, - "end": 3191, + "start": 3180, + "end": 3181, "loc": { "start": { "line": 146, @@ -27260,8 +35899,8 @@ "binop": null }, "value": "lastIndex", - "start": 3191, - "end": 3200, + "start": 3181, + "end": 3190, "loc": { "start": { "line": 146, @@ -27287,8 +35926,8 @@ "updateContext": null }, "value": "=", - "start": 3201, - "end": 3202, + "start": 3191, + "end": 3192, "loc": { "start": { "line": 146, @@ -27315,8 +35954,8 @@ "updateContext": null }, "value": "this", - "start": 3203, - "end": 3207, + "start": 3193, + "end": 3197, "loc": { "start": { "line": 146, @@ -27341,8 +35980,8 @@ "binop": null, "updateContext": null }, - "start": 3207, - "end": 3208, + "start": 3197, + "end": 3198, "loc": { "start": { "line": 146, @@ -27367,8 +36006,8 @@ "binop": null }, "value": "lastIndex", - "start": 3208, - "end": 3217, + "start": 3198, + "end": 3207, "loc": { "start": { "line": 146, @@ -27393,8 +36032,8 @@ "binop": null, "updateContext": null }, - "start": 3217, - "end": 3218, + "start": 3207, + "end": 3208, "loc": { "start": { "line": 146, @@ -27419,8 +36058,8 @@ "binop": null }, "value": "Lexer", - "start": 3223, - "end": 3228, + "start": 3213, + "end": 3218, "loc": { "start": { "line": 147, @@ -27445,8 +36084,8 @@ "binop": null, "updateContext": null }, - "start": 3228, - "end": 3229, + "start": 3218, + "end": 3219, "loc": { "start": { "line": 147, @@ -27471,8 +36110,8 @@ "binop": null }, "value": "NEWLINE", - "start": 3229, - "end": 3236, + "start": 3219, + "end": 3226, "loc": { "start": { "line": 147, @@ -27497,8 +36136,8 @@ "binop": null, "updateContext": null }, - "start": 3236, - "end": 3237, + "start": 3226, + "end": 3227, "loc": { "start": { "line": 147, @@ -27523,8 +36162,8 @@ "binop": null }, "value": "lastIndex", - "start": 3237, - "end": 3246, + "start": 3227, + "end": 3236, "loc": { "start": { "line": 147, @@ -27550,8 +36189,8 @@ "updateContext": null }, "value": "=", - "start": 3247, - "end": 3248, + "start": 3237, + "end": 3238, "loc": { "start": { "line": 147, @@ -27578,8 +36217,8 @@ "updateContext": null }, "value": "this", - "start": 3249, - "end": 3253, + "start": 3239, + "end": 3243, "loc": { "start": { "line": 147, @@ -27604,8 +36243,8 @@ "binop": null, "updateContext": null }, - "start": 3253, - "end": 3254, + "start": 3243, + "end": 3244, "loc": { "start": { "line": 147, @@ -27630,8 +36269,8 @@ "binop": null }, "value": "lastIndex", - "start": 3254, - "end": 3263, + "start": 3244, + "end": 3253, "loc": { "start": { "line": 147, @@ -27656,8 +36295,8 @@ "binop": null, "updateContext": null }, - "start": 3263, - "end": 3264, + "start": 3253, + "end": 3254, "loc": { "start": { "line": 147, @@ -27681,8 +36320,8 @@ "postfix": false, "binop": null }, - "start": 3267, - "end": 3268, + "start": 3257, + "end": 3258, "loc": { "start": { "line": 148, @@ -27706,8 +36345,8 @@ "postfix": false, "binop": null }, - "start": 3269, - "end": 3270, + "start": 3259, + "end": 3260, "loc": { "start": { "line": 149, @@ -27732,8 +36371,8 @@ "binop": null }, "value": "Lexer", - "start": 3272, - "end": 3277, + "start": 3262, + "end": 3267, "loc": { "start": { "line": 151, @@ -27758,8 +36397,8 @@ "binop": null, "updateContext": null }, - "start": 3277, - "end": 3278, + "start": 3267, + "end": 3268, "loc": { "start": { "line": 151, @@ -27784,8 +36423,8 @@ "binop": null }, "value": "TOKENS", - "start": 3278, - "end": 3284, + "start": 3268, + "end": 3274, "loc": { "start": { "line": 151, @@ -27811,8 +36450,8 @@ "updateContext": null }, "value": "=", - "start": 3285, - "end": 3286, + "start": 3275, + "end": 3276, "loc": { "start": { "line": 151, @@ -27837,8 +36476,8 @@ "binop": null, "updateContext": null }, - "start": 3287, - "end": 3288, + "start": 3277, + "end": 3278, "loc": { "start": { "line": 151, @@ -27863,8 +36502,8 @@ "binop": null }, "value": "tokenRegex", - "start": 3291, - "end": 3301, + "start": 3281, + "end": 3291, "loc": { "start": { "line": 152, @@ -27889,8 +36528,8 @@ "binop": null, "updateContext": null }, - "start": 3301, - "end": 3302, + "start": 3291, + "end": 3292, "loc": { "start": { "line": 152, @@ -27915,8 +36554,8 @@ "binop": null }, "value": "NUMBER", - "start": 3302, - "end": 3308, + "start": 3292, + "end": 3298, "loc": { "start": { "line": 152, @@ -27941,8 +36580,8 @@ "binop": null, "updateContext": null }, - "start": 3308, - "end": 3309, + "start": 3298, + "end": 3299, "loc": { "start": { "line": 152, @@ -27967,8 +36606,8 @@ "binop": null }, "value": "tokenRegex", - "start": 3312, - "end": 3322, + "start": 3302, + "end": 3312, "loc": { "start": { "line": 153, @@ -27993,8 +36632,8 @@ "binop": null, "updateContext": null }, - "start": 3322, - "end": 3323, + "start": 3312, + "end": 3313, "loc": { "start": { "line": 153, @@ -28019,8 +36658,8 @@ "binop": null }, "value": "STRING", - "start": 3323, - "end": 3329, + "start": 3313, + "end": 3319, "loc": { "start": { "line": 153, @@ -28045,8 +36684,8 @@ "binop": null, "updateContext": null }, - "start": 3329, - "end": 3330, + "start": 3319, + "end": 3320, "loc": { "start": { "line": 153, @@ -28071,8 +36710,8 @@ "binop": null }, "value": "tokenRegex", - "start": 3333, - "end": 3343, + "start": 3323, + "end": 3333, "loc": { "start": { "line": 154, @@ -28097,8 +36736,8 @@ "binop": null, "updateContext": null }, - "start": 3343, - "end": 3344, + "start": 3333, + "end": 3334, "loc": { "start": { "line": 154, @@ -28123,8 +36762,8 @@ "binop": null }, "value": "REGEX", - "start": 3344, - "end": 3349, + "start": 3334, + "end": 3339, "loc": { "start": { "line": 154, @@ -28149,8 +36788,8 @@ "binop": null, "updateContext": null }, - "start": 3349, - "end": 3350, + "start": 3339, + "end": 3340, "loc": { "start": { "line": 154, @@ -28175,8 +36814,8 @@ "binop": null }, "value": "tokenRegex", - "start": 3353, - "end": 3363, + "start": 3343, + "end": 3353, "loc": { "start": { "line": 155, @@ -28201,8 +36840,8 @@ "binop": null, "updateContext": null }, - "start": 3363, - "end": 3364, + "start": 3353, + "end": 3354, "loc": { "start": { "line": 155, @@ -28227,8 +36866,8 @@ "binop": null }, "value": "WORD", - "start": 3364, - "end": 3368, + "start": 3354, + "end": 3358, "loc": { "start": { "line": 155, @@ -28253,8 +36892,8 @@ "binop": null, "updateContext": null }, - "start": 3368, - "end": 3369, + "start": 3358, + "end": 3359, "loc": { "start": { "line": 155, @@ -28279,8 +36918,8 @@ "binop": null }, "value": "tokenRegex", - "start": 3372, - "end": 3382, + "start": 3362, + "end": 3372, "loc": { "start": { "line": 156, @@ -28305,8 +36944,8 @@ "binop": null, "updateContext": null }, - "start": 3382, - "end": 3383, + "start": 3372, + "end": 3373, "loc": { "start": { "line": 156, @@ -28331,8 +36970,8 @@ "binop": null }, "value": "LP", - "start": 3383, - "end": 3385, + "start": 3373, + "end": 3375, "loc": { "start": { "line": 156, @@ -28357,8 +36996,8 @@ "binop": null, "updateContext": null }, - "start": 3385, - "end": 3386, + "start": 3375, + "end": 3376, "loc": { "start": { "line": 156, @@ -28383,8 +37022,8 @@ "binop": null }, "value": "tokenRegex", - "start": 3389, - "end": 3399, + "start": 3379, + "end": 3389, "loc": { "start": { "line": 157, @@ -28409,8 +37048,8 @@ "binop": null, "updateContext": null }, - "start": 3399, - "end": 3400, + "start": 3389, + "end": 3390, "loc": { "start": { "line": 157, @@ -28435,8 +37074,8 @@ "binop": null }, "value": "RP", - "start": 3400, - "end": 3402, + "start": 3390, + "end": 3392, "loc": { "start": { "line": 157, @@ -28461,8 +37100,8 @@ "binop": null, "updateContext": null }, - "start": 3402, - "end": 3403, + "start": 3392, + "end": 3393, "loc": { "start": { "line": 157, @@ -28487,8 +37126,8 @@ "binop": null }, "value": "tokenRegex", - "start": 3406, - "end": 3416, + "start": 3396, + "end": 3406, "loc": { "start": { "line": 158, @@ -28513,8 +37152,8 @@ "binop": null, "updateContext": null }, - "start": 3416, - "end": 3417, + "start": 3406, + "end": 3407, "loc": { "start": { "line": 158, @@ -28539,8 +37178,8 @@ "binop": null }, "value": "COMMA", - "start": 3417, - "end": 3422, + "start": 3407, + "end": 3412, "loc": { "start": { "line": 158, @@ -28565,8 +37204,8 @@ "binop": null, "updateContext": null }, - "start": 3423, - "end": 3424, + "start": 3413, + "end": 3414, "loc": { "start": { "line": 159, @@ -28591,8 +37230,8 @@ "binop": null, "updateContext": null }, - "start": 3424, - "end": 3425, + "start": 3414, + "end": 3415, "loc": { "start": { "line": 159, @@ -28617,8 +37256,8 @@ "binop": null }, "value": "Lexer", - "start": 3427, - "end": 3432, + "start": 3417, + "end": 3422, "loc": { "start": { "line": 161, @@ -28643,8 +37282,8 @@ "binop": null, "updateContext": null }, - "start": 3432, - "end": 3433, + "start": 3422, + "end": 3423, "loc": { "start": { "line": 161, @@ -28669,8 +37308,8 @@ "binop": null }, "value": "WHITES", - "start": 3433, - "end": 3439, + "start": 3423, + "end": 3429, "loc": { "start": { "line": 161, @@ -28696,8 +37335,8 @@ "updateContext": null }, "value": "=", - "start": 3440, - "end": 3441, + "start": 3430, + "end": 3431, "loc": { "start": { "line": 161, @@ -28722,8 +37361,8 @@ "binop": null }, "value": "tokenRegex", - "start": 3442, - "end": 3452, + "start": 3432, + "end": 3442, "loc": { "start": { "line": 161, @@ -28748,8 +37387,8 @@ "binop": null, "updateContext": null }, - "start": 3452, - "end": 3453, + "start": 3442, + "end": 3443, "loc": { "start": { "line": 161, @@ -28774,8 +37413,8 @@ "binop": null }, "value": "WHITES", - "start": 3453, - "end": 3459, + "start": 3443, + "end": 3449, "loc": { "start": { "line": 161, @@ -28800,8 +37439,8 @@ "binop": null, "updateContext": null }, - "start": 3459, - "end": 3460, + "start": 3449, + "end": 3450, "loc": { "start": { "line": 161, @@ -28826,8 +37465,8 @@ "binop": null }, "value": "Lexer", - "start": 3461, - "end": 3466, + "start": 3451, + "end": 3456, "loc": { "start": { "line": 162, @@ -28852,8 +37491,8 @@ "binop": null, "updateContext": null }, - "start": 3466, - "end": 3467, + "start": 3456, + "end": 3457, "loc": { "start": { "line": 162, @@ -28878,8 +37517,8 @@ "binop": null }, "value": "NEWLINE", - "start": 3467, - "end": 3474, + "start": 3457, + "end": 3464, "loc": { "start": { "line": 162, @@ -28905,8 +37544,8 @@ "updateContext": null }, "value": "=", - "start": 3475, - "end": 3476, + "start": 3465, + "end": 3466, "loc": { "start": { "line": 162, @@ -28931,8 +37570,8 @@ "binop": null }, "value": "tokenRegex", - "start": 3477, - "end": 3487, + "start": 3467, + "end": 3477, "loc": { "start": { "line": 162, @@ -28957,8 +37596,8 @@ "binop": null, "updateContext": null }, - "start": 3487, - "end": 3488, + "start": 3477, + "end": 3478, "loc": { "start": { "line": 162, @@ -28983,8 +37622,8 @@ "binop": null }, "value": "NEWLINE", - "start": 3488, - "end": 3495, + "start": 3478, + "end": 3485, "loc": { "start": { "line": 162, @@ -29009,8 +37648,8 @@ "binop": null, "updateContext": null }, - "start": 3495, - "end": 3496, + "start": 3485, + "end": 3486, "loc": { "start": { "line": 162, @@ -29024,33 +37663,8 @@ }, { "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "module", - "start": 3498, - "end": 3504, - "loc": { - "start": { - "line": 164, - "column": 0 - }, - "end": { - "line": 164, - "column": 6 - } - } - }, - { - "type": { - "label": ".", + "label": "export", + "keyword": "export", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, @@ -29061,69 +37675,17 @@ "binop": null, "updateContext": null }, - "start": 3504, - "end": 3505, - "loc": { - "start": { - "line": 164, - "column": 6 - }, - "end": { - "line": 164, - "column": 7 - } - } - }, - { - "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "exports", - "start": 3505, - "end": 3512, - "loc": { - "start": { - "line": 164, - "column": 7 - }, - "end": { - "line": 164, - "column": 14 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 3513, - "end": 3514, + "value": "export", + "start": 3488, + "end": 3494, "loc": { "start": { "line": 164, - "column": 15 + "column": 0 }, "end": { "line": 164, - "column": 16 + "column": 6 } } }, @@ -29139,16 +37701,16 @@ "postfix": false, "binop": null }, - "start": 3515, - "end": 3516, + "start": 3495, + "end": 3496, "loc": { "start": { "line": 164, - "column": 17 + "column": 7 }, "end": { "line": 164, - "column": 18 + "column": 8 } } }, @@ -29165,16 +37727,16 @@ "binop": null }, "value": "Lexer", - "start": 3519, - "end": 3524, + "start": 3497, + "end": 3502, "loc": { "start": { - "line": 165, - "column": 2 + "line": 164, + "column": 9 }, "end": { - "line": 165, - "column": 7 + "line": 164, + "column": 14 } } }, @@ -29190,16 +37752,16 @@ "postfix": false, "binop": null }, - "start": 3525, - "end": 3526, + "start": 3503, + "end": 3504, "loc": { "start": { - "line": 166, - "column": 0 + "line": 164, + "column": 15 }, "end": { - "line": 166, - "column": 1 + "line": 164, + "column": 16 } } }, @@ -29216,16 +37778,16 @@ "binop": null, "updateContext": null }, - "start": 3526, - "end": 3527, + "start": 3504, + "end": 3505, "loc": { "start": { - "line": 166, - "column": 1 + "line": 164, + "column": 16 }, "end": { - "line": 166, - "column": 2 + "line": 164, + "column": 17 } } }, @@ -29242,15 +37804,15 @@ "binop": null, "updateContext": null }, - "start": 3528, - "end": 3528, + "start": 3506, + "end": 3506, "loc": { "start": { - "line": 167, + "line": 165, "column": 0 }, "end": { - "line": 167, + "line": 165, "column": 0 } } diff --git a/docs/ast/source/parser/parse.js.json b/docs/ast/source/parser/parse.js.json index da45bf3..a1bca09 100644 --- a/docs/ast/source/parser/parse.js.json +++ b/docs/ast/source/parser/parse.js.json @@ -1,37 +1,37 @@ { "type": "File", "start": 0, - "end": 3198, + "end": 3259, "loc": { "start": { "line": 1, "column": 0 }, "end": { - "line": 134, + "line": 136, "column": 0 } }, "program": { "type": "Program", "start": 0, - "end": 3198, + "end": 3259, "loc": { "start": { "line": 1, "column": 0 }, "end": { - "line": 134, + "line": 136, "column": 0 } }, "sourceType": "module", "body": [ { - "type": "VariableDeclaration", + "type": "ImportDeclaration", "start": 0, - "end": 25, + "end": 20, "loc": { "start": { "line": 1, @@ -39,103 +39,68 @@ }, "end": { "line": 1, - "column": 25 + "column": 20 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 6, - "end": 24, + "type": "ImportDefaultSpecifier", + "start": 7, + "end": 9, "loc": { "start": { "line": 1, - "column": 6 + "column": 7 }, "end": { "line": 1, - "column": 24 + "column": 9 } }, - "id": { + "local": { "type": "Identifier", - "start": 6, - "end": 8, + "start": 7, + "end": 9, "loc": { "start": { "line": 1, - "column": 6 + "column": 7 }, "end": { "line": 1, - "column": 8 + "column": 9 }, "identifierName": "fs" }, "name": "fs" - }, - "init": { - "type": "CallExpression", - "start": 11, - "end": 24, - "loc": { - "start": { - "line": 1, - "column": 11 - }, - "end": { - "line": 1, - "column": 24 - } - }, - "callee": { - "type": "Identifier", - "start": 11, - "end": 18, - "loc": { - "start": { - "line": 1, - "column": 11 - }, - "end": { - "line": 1, - "column": 18 - }, - "identifierName": "require" - }, - "name": "require" - }, - "arguments": [ - { - "type": "StringLiteral", - "start": 19, - "end": 23, - "loc": { - "start": { - "line": 1, - "column": 19 - }, - "end": { - "line": 1, - "column": 23 - } - }, - "extra": { - "rawValue": "fs", - "raw": "\"fs\"" - }, - "value": "fs" - } - ] } } ], - "kind": "const" + "source": { + "type": "StringLiteral", + "start": 15, + "end": 19, + "loc": { + "start": { + "line": 1, + "column": 15 + }, + "end": { + "line": 1, + "column": 19 + } + }, + "extra": { + "rawValue": "fs", + "raw": "\"fs\"" + }, + "value": "fs" + } }, { - "type": "VariableDeclaration", - "start": 27, - "end": 67, + "type": "ImportDeclaration", + "start": 22, + "end": 57, "loc": { "start": { "line": 3, @@ -143,158 +108,85 @@ }, "end": { "line": 3, - "column": 40 + "column": 35 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 33, - "end": 66, + "type": "ImportSpecifier", + "start": 31, + "end": 36, "loc": { "start": { "line": 3, - "column": 6 + "column": 9 }, "end": { "line": 3, - "column": 39 + "column": 14 } }, - "id": { - "type": "ObjectPattern", - "start": 33, - "end": 42, + "imported": { + "type": "Identifier", + "start": 31, + "end": 36, "loc": { "start": { "line": 3, - "column": 6 + "column": 9 }, "end": { "line": 3, - "column": 15 - } + "column": 14 + }, + "identifierName": "Lexer" }, - "properties": [ - { - "type": "ObjectProperty", - "start": 35, - "end": 40, - "loc": { - "start": { - "line": 3, - "column": 8 - }, - "end": { - "line": 3, - "column": 13 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 35, - "end": 40, - "loc": { - "start": { - "line": 3, - "column": 8 - }, - "end": { - "line": 3, - "column": 13 - }, - "identifierName": "Lexer" - }, - "name": "Lexer" - }, - "value": { - "type": "Identifier", - "start": 35, - "end": 40, - "loc": { - "start": { - "line": 3, - "column": 8 - }, - "end": { - "line": 3, - "column": 13 - }, - "identifierName": "Lexer" - }, - "name": "Lexer" - }, - "extra": { - "shorthand": true - } - } - ] + "name": "Lexer" }, - "init": { - "type": "CallExpression", - "start": 45, - "end": 66, + "local": { + "type": "Identifier", + "start": 31, + "end": 36, "loc": { "start": { "line": 3, - "column": 18 + "column": 9 }, "end": { "line": 3, - "column": 39 - } - }, - "callee": { - "type": "Identifier", - "start": 45, - "end": 52, - "loc": { - "start": { - "line": 3, - "column": 18 - }, - "end": { - "line": 3, - "column": 25 - }, - "identifierName": "require" + "column": 14 }, - "name": "require" + "identifierName": "Lexer" }, - "arguments": [ - { - "type": "StringLiteral", - "start": 53, - "end": 65, - "loc": { - "start": { - "line": 3, - "column": 26 - }, - "end": { - "line": 3, - "column": 38 - } - }, - "extra": { - "rawValue": "./lexer.js", - "raw": "\"./lexer.js\"" - }, - "value": "./lexer.js" - } - ] + "name": "Lexer" } } ], - "kind": "const" + "source": { + "type": "StringLiteral", + "start": 44, + "end": 56, + "loc": { + "start": { + "line": 3, + "column": 22 + }, + "end": { + "line": 3, + "column": 34 + } + }, + "extra": { + "rawValue": "./lexer.js", + "raw": "\"./lexer.js\"" + }, + "value": "./lexer.js" + } }, { - "type": "VariableDeclaration", - "start": 68, - "end": 134, + "type": "ImportDeclaration", + "start": 58, + "end": 119, "loc": { "start": { "line": 4, @@ -302,331 +194,240 @@ }, "end": { "line": 4, - "column": 66 + "column": 61 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 74, - "end": 133, + "type": "ImportSpecifier", + "start": 67, + "end": 72, "loc": { "start": { "line": 4, - "column": 6 + "column": 9 }, "end": { "line": 4, - "column": 65 + "column": 14 } }, - "id": { - "type": "ObjectPattern", - "start": 74, - "end": 103, + "imported": { + "type": "Identifier", + "start": 67, + "end": 72, "loc": { "start": { "line": 4, - "column": 6 + "column": 9 }, "end": { "line": 4, - "column": 35 - } - }, - "properties": [ - { - "type": "ObjectProperty", - "start": 76, - "end": 81, - "loc": { - "start": { - "line": 4, - "column": 8 - }, - "end": { - "line": 4, - "column": 13 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 76, - "end": 81, - "loc": { - "start": { - "line": 4, - "column": 8 - }, - "end": { - "line": 4, - "column": 13 - }, - "identifierName": "Value" - }, - "name": "Value" - }, - "value": { - "type": "Identifier", - "start": 76, - "end": 81, - "loc": { - "start": { - "line": 4, - "column": 8 - }, - "end": { - "line": 4, - "column": 13 - }, - "identifierName": "Value" - }, - "name": "Value" - }, - "extra": { - "shorthand": true - } - }, - { - "type": "ObjectProperty", - "start": 83, - "end": 87, - "loc": { - "start": { - "line": 4, - "column": 15 - }, - "end": { - "line": 4, - "column": 19 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 83, - "end": 87, - "loc": { - "start": { - "line": 4, - "column": 15 - }, - "end": { - "line": 4, - "column": 19 - }, - "identifierName": "Word" - }, - "name": "Word" - }, - "value": { - "type": "Identifier", - "start": 83, - "end": 87, - "loc": { - "start": { - "line": 4, - "column": 15 - }, - "end": { - "line": 4, - "column": 19 - }, - "identifierName": "Word" - }, - "name": "Word" - }, - "extra": { - "shorthand": true - } - }, - { - "type": "ObjectProperty", - "start": 89, - "end": 94, - "loc": { - "start": { - "line": 4, - "column": 21 - }, - "end": { - "line": 4, - "column": 26 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 89, - "end": 94, - "loc": { - "start": { - "line": 4, - "column": 21 - }, - "end": { - "line": 4, - "column": 26 - }, - "identifierName": "Apply" - }, - "name": "Apply" - }, - "value": { - "type": "Identifier", - "start": 89, - "end": 94, - "loc": { - "start": { - "line": 4, - "column": 21 - }, - "end": { - "line": 4, - "column": 26 - }, - "identifierName": "Apply" - }, - "name": "Apply" - }, - "extra": { - "shorthand": true - } + "column": 14 }, - { - "type": "ObjectProperty", - "start": 96, - "end": 101, - "loc": { - "start": { - "line": 4, - "column": 28 - }, - "end": { - "line": 4, - "column": 33 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 96, - "end": 101, - "loc": { - "start": { - "line": 4, - "column": 28 - }, - "end": { - "line": 4, - "column": 33 - }, - "identifierName": "Regex" - }, - "name": "Regex" - }, - "value": { - "type": "Identifier", - "start": 96, - "end": 101, - "loc": { - "start": { - "line": 4, - "column": 28 - }, - "end": { - "line": 4, - "column": 33 - }, - "identifierName": "Regex" - }, - "name": "Regex" - }, - "extra": { - "shorthand": true - } - } - ] + "identifierName": "Value" + }, + "name": "Value" }, - "init": { - "type": "CallExpression", - "start": 106, - "end": 133, + "local": { + "type": "Identifier", + "start": 67, + "end": 72, "loc": { "start": { "line": 4, - "column": 38 + "column": 9 }, "end": { "line": 4, - "column": 65 - } - }, - "callee": { - "type": "Identifier", - "start": 106, - "end": 113, - "loc": { - "start": { - "line": 4, - "column": 38 - }, - "end": { - "line": 4, - "column": 45 - }, - "identifierName": "require" + "column": 14 }, - "name": "require" + "identifierName": "Value" }, - "arguments": [ - { - "type": "StringLiteral", - "start": 114, - "end": 132, - "loc": { - "start": { - "line": 4, - "column": 46 - }, - "end": { - "line": 4, - "column": 64 - } - }, - "extra": { - "rawValue": "../interp/ast.js", - "raw": "\"../interp/ast.js\"" - }, - "value": "../interp/ast.js" - } - ] + "name": "Value" } - } - ], - "kind": "const", + }, + { + "type": "ImportSpecifier", + "start": 74, + "end": 78, + "loc": { + "start": { + "line": 4, + "column": 16 + }, + "end": { + "line": 4, + "column": 20 + } + }, + "imported": { + "type": "Identifier", + "start": 74, + "end": 78, + "loc": { + "start": { + "line": 4, + "column": 16 + }, + "end": { + "line": 4, + "column": 20 + }, + "identifierName": "Word" + }, + "name": "Word" + }, + "local": { + "type": "Identifier", + "start": 74, + "end": 78, + "loc": { + "start": { + "line": 4, + "column": 16 + }, + "end": { + "line": 4, + "column": 20 + }, + "identifierName": "Word" + }, + "name": "Word" + } + }, + { + "type": "ImportSpecifier", + "start": 80, + "end": 85, + "loc": { + "start": { + "line": 4, + "column": 22 + }, + "end": { + "line": 4, + "column": 27 + } + }, + "imported": { + "type": "Identifier", + "start": 80, + "end": 85, + "loc": { + "start": { + "line": 4, + "column": 22 + }, + "end": { + "line": 4, + "column": 27 + }, + "identifierName": "Apply" + }, + "name": "Apply" + }, + "local": { + "type": "Identifier", + "start": 80, + "end": 85, + "loc": { + "start": { + "line": 4, + "column": 22 + }, + "end": { + "line": 4, + "column": 27 + }, + "identifierName": "Apply" + }, + "name": "Apply" + } + }, + { + "type": "ImportSpecifier", + "start": 87, + "end": 92, + "loc": { + "start": { + "line": 4, + "column": 29 + }, + "end": { + "line": 4, + "column": 34 + } + }, + "imported": { + "type": "Identifier", + "start": 87, + "end": 92, + "loc": { + "start": { + "line": 4, + "column": 29 + }, + "end": { + "line": 4, + "column": 34 + }, + "identifierName": "Regex" + }, + "name": "Regex" + }, + "local": { + "type": "Identifier", + "start": 87, + "end": 92, + "loc": { + "start": { + "line": 4, + "column": 29 + }, + "end": { + "line": 4, + "column": 34 + }, + "identifierName": "Regex" + }, + "name": "Regex" + } + } + ], + "source": { + "type": "StringLiteral", + "start": 100, + "end": 118, + "loc": { + "start": { + "line": 4, + "column": 42 + }, + "end": { + "line": 4, + "column": 60 + } + }, + "extra": { + "rawValue": "../interp/ast.js", + "raw": "\"../interp/ast.js\"" + }, + "value": "../interp/ast.js" + }, "trailingComments": [ { "type": "CommentBlock", - "value": "*\n * Parser class. Iterates through the given string, tokenizes it and returns a AST tree.\n ", - "start": 136, - "end": 232, + "value": "*\n * Parser class. Iterates through the given string, tokenizes it and returns a AST tree.\n * @access public\n ", + "start": 121, + "end": 235, "loc": { "start": { "line": 6, "column": 0 }, "end": { - "line": 8, + "line": 9, "column": 3 } } @@ -634,30 +435,30 @@ ] }, { - "type": "ClassDeclaration", - "start": 233, - "end": 3165, + "type": "Identifier", + "start": 236, + "end": 3238, "loc": { "start": { - "line": 9, + "line": 10, "column": 0 }, "end": { - "line": 129, + "line": 133, "column": 1 } }, "id": { "type": "Identifier", - "start": 239, - "end": 245, + "start": 242, + "end": 248, "loc": { "start": { - "line": 9, + "line": 10, "column": 6 }, "end": { - "line": 9, + "line": 10, "column": 12 }, "identifierName": "Parser" @@ -668,30 +469,30 @@ "superClass": null, "body": { "type": "ClassBody", - "start": 246, - "end": 3165, + "start": 249, + "end": 3238, "loc": { "start": { - "line": 9, + "line": 10, "column": 13 }, "end": { - "line": 129, + "line": 133, "column": 1 } }, "body": [ { "type": "ClassMethod", - "start": 250, - "end": 338, + "start": 323, + "end": 411, "loc": { "start": { - "line": 10, + "line": 14, "column": 2 }, "end": { - "line": 14, + "line": 18, "column": 3 } }, @@ -699,20 +500,21 @@ "computed": false, "key": { "type": "Identifier", - "start": 250, - "end": 261, + "start": 323, + "end": 334, "loc": { "start": { - "line": 10, + "line": 14, "column": 2 }, "end": { - "line": 10, + "line": 14, "column": 13 }, "identifierName": "constructor" }, - "name": "constructor" + "name": "constructor", + "leadingComments": null }, "kind": "constructor", "id": null, @@ -722,88 +524,88 @@ "params": [], "body": { "type": "BlockStatement", - "start": 264, - "end": 338, + "start": 337, + "end": 411, "loc": { "start": { - "line": 10, + "line": 14, "column": 16 }, "end": { - "line": 14, + "line": 18, "column": 3 } }, "body": [ { "type": "ExpressionStatement", - "start": 270, - "end": 285, + "start": 343, + "end": 358, "loc": { "start": { - "line": 11, + "line": 15, "column": 4 }, "end": { - "line": 11, + "line": 15, "column": 19 } }, "expression": { "type": "AssignmentExpression", - "start": 270, - "end": 284, + "start": 343, + "end": 357, "loc": { "start": { - "line": 11, + "line": 15, "column": 4 }, "end": { - "line": 11, + "line": 15, "column": 18 } }, "operator": "=", "left": { "type": "MemberExpression", - "start": 270, - "end": 280, + "start": 343, + "end": 353, "loc": { "start": { - "line": 11, + "line": 15, "column": 4 }, "end": { - "line": 11, + "line": 15, "column": 14 } }, "object": { "type": "ThisExpression", - "start": 270, - "end": 274, + "start": 343, + "end": 347, "loc": { "start": { - "line": 11, + "line": 15, "column": 4 }, "end": { - "line": 11, + "line": 15, "column": 8 } } }, "property": { "type": "Identifier", - "start": 275, - "end": 280, + "start": 348, + "end": 353, "loc": { "start": { - "line": 11, + "line": 15, "column": 9 }, "end": { - "line": 11, + "line": 15, "column": 14 }, "identifierName": "index" @@ -814,15 +616,15 @@ }, "right": { "type": "NumericLiteral", - "start": 283, - "end": 284, + "start": 356, + "end": 357, "loc": { "start": { - "line": 11, + "line": 15, "column": 17 }, "end": { - "line": 11, + "line": 15, "column": 18 } }, @@ -836,73 +638,73 @@ }, { "type": "ExpressionStatement", - "start": 290, - "end": 307, + "start": 363, + "end": 380, "loc": { "start": { - "line": 12, + "line": 16, "column": 4 }, "end": { - "line": 12, + "line": 16, "column": 21 } }, "expression": { "type": "AssignmentExpression", - "start": 290, - "end": 306, + "start": 363, + "end": 379, "loc": { "start": { - "line": 12, + "line": 16, "column": 4 }, "end": { - "line": 12, + "line": 16, "column": 20 } }, "operator": "=", "left": { "type": "MemberExpression", - "start": 290, - "end": 301, + "start": 363, + "end": 374, "loc": { "start": { - "line": 12, + "line": 16, "column": 4 }, "end": { - "line": 12, + "line": 16, "column": 15 } }, "object": { "type": "ThisExpression", - "start": 290, - "end": 294, + "start": 363, + "end": 367, "loc": { "start": { - "line": 12, + "line": 16, "column": 4 }, "end": { - "line": 12, + "line": 16, "column": 8 } } }, "property": { "type": "Identifier", - "start": 295, - "end": 301, + "start": 368, + "end": 374, "loc": { "start": { - "line": 12, + "line": 16, "column": 9 }, "end": { - "line": 12, + "line": 16, "column": 15 }, "identifierName": "tokens" @@ -913,15 +715,15 @@ }, "right": { "type": "ArrayExpression", - "start": 304, - "end": 306, + "start": 377, + "end": 379, "loc": { "start": { - "line": 12, + "line": 16, "column": 18 }, "end": { - "line": 12, + "line": 16, "column": 20 } }, @@ -931,73 +733,73 @@ }, { "type": "ExpressionStatement", - "start": 312, - "end": 334, + "start": 385, + "end": 407, "loc": { "start": { - "line": 13, + "line": 17, "column": 4 }, "end": { - "line": 13, + "line": 17, "column": 26 } }, "expression": { "type": "AssignmentExpression", - "start": 312, - "end": 333, + "start": 385, + "end": 406, "loc": { "start": { - "line": 13, + "line": 17, "column": 4 }, "end": { - "line": 13, + "line": 17, "column": 25 } }, "operator": "=", "left": { "type": "MemberExpression", - "start": 312, - "end": 326, + "start": 385, + "end": 399, "loc": { "start": { - "line": 13, + "line": 17, "column": 4 }, "end": { - "line": 13, + "line": 17, "column": 18 } }, "object": { "type": "ThisExpression", - "start": 312, - "end": 316, + "start": 385, + "end": 389, "loc": { "start": { - "line": 13, + "line": 17, "column": 4 }, "end": { - "line": 13, + "line": 17, "column": 8 } } }, "property": { "type": "Identifier", - "start": 317, - "end": 326, + "start": 390, + "end": 399, "loc": { "start": { - "line": 13, + "line": 17, "column": 9 }, "end": { - "line": 13, + "line": 17, "column": 18 }, "identifierName": "lookahead" @@ -1008,15 +810,15 @@ }, "right": { "type": "NullLiteral", - "start": 329, - "end": 333, + "start": 402, + "end": 406, "loc": { "start": { - "line": 13, + "line": 17, "column": 21 }, "end": { - "line": 13, + "line": 17, "column": 25 } } @@ -1025,19 +827,37 @@ } ], "directives": [] - } + }, + "leadingComments": [ + { + "type": "CommentBlock", + "value": "*\n * Attributes used by the parser, set to default values\n ", + "start": 253, + "end": 320, + "loc": { + "start": { + "line": 11, + "column": 2 + }, + "end": { + "line": 13, + "column": 5 + } + } + } + ] }, { "type": "ClassMethod", - "start": 342, - "end": 483, + "start": 415, + "end": 556, "loc": { "start": { - "line": 16, + "line": 20, "column": 2 }, "end": { - "line": 24, + "line": 28, "column": 3 } }, @@ -1045,15 +865,15 @@ "computed": false, "key": { "type": "Identifier", - "start": 342, - "end": 352, + "start": 415, + "end": 425, "loc": { "start": { - "line": 16, + "line": 20, "column": 2 }, "end": { - "line": 16, + "line": 20, "column": 12 }, "identifierName": "setProgram" @@ -1068,15 +888,15 @@ "params": [ { "type": "Identifier", - "start": 353, - "end": 360, + "start": 426, + "end": 433, "loc": { "start": { - "line": 16, + "line": 20, "column": 13 }, "end": { - "line": 16, + "line": 20, "column": 20 }, "identifierName": "program" @@ -1086,88 +906,88 @@ ], "body": { "type": "BlockStatement", - "start": 362, - "end": 483, + "start": 435, + "end": 556, "loc": { "start": { - "line": 16, + "line": 20, "column": 22 }, "end": { - "line": 24, + "line": 28, "column": 3 } }, "body": [ { "type": "ExpressionStatement", - "start": 368, - "end": 391, + "start": 441, + "end": 464, "loc": { "start": { - "line": 17, + "line": 21, "column": 4 }, "end": { - "line": 17, + "line": 21, "column": 27 } }, "expression": { "type": "AssignmentExpression", - "start": 368, - "end": 390, + "start": 441, + "end": 463, "loc": { "start": { - "line": 17, + "line": 21, "column": 4 }, "end": { - "line": 17, + "line": 21, "column": 26 } }, "operator": "=", "left": { "type": "MemberExpression", - "start": 368, - "end": 380, + "start": 441, + "end": 453, "loc": { "start": { - "line": 17, + "line": 21, "column": 4 }, "end": { - "line": 17, + "line": 21, "column": 16 } }, "object": { "type": "ThisExpression", - "start": 368, - "end": 372, + "start": 441, + "end": 445, "loc": { "start": { - "line": 17, + "line": 21, "column": 4 }, "end": { - "line": 17, + "line": 21, "column": 8 } } }, "property": { "type": "Identifier", - "start": 373, - "end": 380, + "start": 446, + "end": 453, "loc": { "start": { - "line": 17, + "line": 21, "column": 9 }, "end": { - "line": 17, + "line": 21, "column": 16 }, "identifierName": "program" @@ -1178,15 +998,15 @@ }, "right": { "type": "Identifier", - "start": 383, - "end": 390, + "start": 456, + "end": 463, "loc": { "start": { - "line": 17, + "line": 21, "column": 19 }, "end": { - "line": 17, + "line": 21, "column": 26 }, "identifierName": "program" @@ -1197,73 +1017,73 @@ }, { "type": "ExpressionStatement", - "start": 397, - "end": 412, + "start": 470, + "end": 485, "loc": { "start": { - "line": 19, + "line": 23, "column": 4 }, "end": { - "line": 19, + "line": 23, "column": 19 } }, "expression": { "type": "AssignmentExpression", - "start": 397, - "end": 411, + "start": 470, + "end": 484, "loc": { "start": { - "line": 19, + "line": 23, "column": 4 }, "end": { - "line": 19, + "line": 23, "column": 18 } }, "operator": "=", "left": { "type": "MemberExpression", - "start": 397, - "end": 407, + "start": 470, + "end": 480, "loc": { "start": { - "line": 19, + "line": 23, "column": 4 }, "end": { - "line": 19, + "line": 23, "column": 14 } }, "object": { "type": "ThisExpression", - "start": 397, - "end": 401, + "start": 470, + "end": 474, "loc": { "start": { - "line": 19, + "line": 23, "column": 4 }, "end": { - "line": 19, + "line": 23, "column": 8 } } }, "property": { "type": "Identifier", - "start": 402, - "end": 407, + "start": 475, + "end": 480, "loc": { "start": { - "line": 19, + "line": 23, "column": 9 }, "end": { - "line": 19, + "line": 23, "column": 14 }, "identifierName": "index" @@ -1274,15 +1094,15 @@ }, "right": { "type": "NumericLiteral", - "start": 410, - "end": 411, + "start": 483, + "end": 484, "loc": { "start": { - "line": 19, + "line": 23, "column": 17 }, "end": { - "line": 19, + "line": 23, "column": 18 } }, @@ -1296,73 +1116,73 @@ }, { "type": "ExpressionStatement", - "start": 417, - "end": 434, + "start": 490, + "end": 507, "loc": { "start": { - "line": 20, + "line": 24, "column": 4 }, "end": { - "line": 20, + "line": 24, "column": 21 } }, "expression": { "type": "AssignmentExpression", - "start": 417, - "end": 433, + "start": 490, + "end": 506, "loc": { "start": { - "line": 20, + "line": 24, "column": 4 }, "end": { - "line": 20, + "line": 24, "column": 20 } }, "operator": "=", "left": { "type": "MemberExpression", - "start": 417, - "end": 428, + "start": 490, + "end": 501, "loc": { "start": { - "line": 20, + "line": 24, "column": 4 }, "end": { - "line": 20, + "line": 24, "column": 15 } }, "object": { "type": "ThisExpression", - "start": 417, - "end": 421, + "start": 490, + "end": 494, "loc": { "start": { - "line": 20, + "line": 24, "column": 4 }, "end": { - "line": 20, + "line": 24, "column": 8 } } }, "property": { "type": "Identifier", - "start": 422, - "end": 428, + "start": 495, + "end": 501, "loc": { "start": { - "line": 20, + "line": 24, "column": 9 }, "end": { - "line": 20, + "line": 24, "column": 15 }, "identifierName": "tokens" @@ -1373,15 +1193,15 @@ }, "right": { "type": "ArrayExpression", - "start": 431, - "end": 433, + "start": 504, + "end": 506, "loc": { "start": { - "line": 20, + "line": 24, "column": 18 }, "end": { - "line": 20, + "line": 24, "column": 20 } }, @@ -1391,73 +1211,73 @@ }, { "type": "ExpressionStatement", - "start": 439, - "end": 461, + "start": 512, + "end": 534, "loc": { "start": { - "line": 21, + "line": 25, "column": 4 }, "end": { - "line": 21, + "line": 25, "column": 26 } }, "expression": { "type": "AssignmentExpression", - "start": 439, - "end": 460, + "start": 512, + "end": 533, "loc": { "start": { - "line": 21, + "line": 25, "column": 4 }, "end": { - "line": 21, + "line": 25, "column": 25 } }, "operator": "=", "left": { "type": "MemberExpression", - "start": 439, - "end": 453, + "start": 512, + "end": 526, "loc": { "start": { - "line": 21, + "line": 25, "column": 4 }, "end": { - "line": 21, + "line": 25, "column": 18 } }, "object": { "type": "ThisExpression", - "start": 439, - "end": 443, + "start": 512, + "end": 516, "loc": { "start": { - "line": 21, + "line": 25, "column": 4 }, "end": { - "line": 21, + "line": 25, "column": 8 } } }, "property": { "type": "Identifier", - "start": 444, - "end": 453, + "start": 517, + "end": 526, "loc": { "start": { - "line": 21, + "line": 25, "column": 9 }, "end": { - "line": 21, + "line": 25, "column": 18 }, "identifierName": "lookahead" @@ -1468,15 +1288,15 @@ }, "right": { "type": "NullLiteral", - "start": 456, - "end": 460, + "start": 529, + "end": 533, "loc": { "start": { - "line": 21, + "line": 25, "column": 21 }, "end": { - "line": 21, + "line": 25, "column": 25 } } @@ -1485,29 +1305,29 @@ }, { "type": "ReturnStatement", - "start": 467, - "end": 479, + "start": 540, + "end": 552, "loc": { "start": { - "line": 23, + "line": 27, "column": 4 }, "end": { - "line": 23, + "line": 27, "column": 16 } }, "argument": { "type": "ThisExpression", - "start": 474, - "end": 478, + "start": 547, + "end": 551, "loc": { "start": { - "line": 23, + "line": 27, "column": 11 }, "end": { - "line": 23, + "line": 27, "column": 15 } } @@ -1519,15 +1339,15 @@ }, { "type": "ClassMethod", - "start": 487, - "end": 931, + "start": 560, + "end": 1004, "loc": { "start": { - "line": 26, + "line": 30, "column": 2 }, "end": { - "line": 45, + "line": 49, "column": 3 } }, @@ -1535,15 +1355,15 @@ "computed": false, "key": { "type": "Identifier", - "start": 487, - "end": 492, + "start": 560, + "end": 565, "loc": { "start": { - "line": 26, + "line": 30, "column": 2 }, "end": { - "line": 26, + "line": 30, "column": 7 }, "identifierName": "parse" @@ -1558,15 +1378,15 @@ "params": [ { "type": "Identifier", - "start": 493, - "end": 500, + "start": 566, + "end": 573, "loc": { "start": { - "line": 26, + "line": 30, "column": 8 }, "end": { - "line": 26, + "line": 30, "column": 15 }, "identifierName": "program" @@ -1576,87 +1396,87 @@ ], "body": { "type": "BlockStatement", - "start": 502, - "end": 931, + "start": 575, + "end": 1004, "loc": { "start": { - "line": 26, + "line": 30, "column": 17 }, "end": { - "line": 45, + "line": 49, "column": 3 } }, "body": [ { "type": "ExpressionStatement", - "start": 508, - "end": 533, + "start": 581, + "end": 606, "loc": { "start": { - "line": 27, + "line": 31, "column": 4 }, "end": { - "line": 27, + "line": 31, "column": 29 } }, "expression": { "type": "CallExpression", - "start": 508, - "end": 532, + "start": 581, + "end": 605, "loc": { "start": { - "line": 27, + "line": 31, "column": 4 }, "end": { - "line": 27, + "line": 31, "column": 28 } }, "callee": { "type": "MemberExpression", - "start": 508, - "end": 523, + "start": 581, + "end": 596, "loc": { "start": { - "line": 27, + "line": 31, "column": 4 }, "end": { - "line": 27, + "line": 31, "column": 19 } }, "object": { "type": "ThisExpression", - "start": 508, - "end": 512, + "start": 581, + "end": 585, "loc": { "start": { - "line": 27, + "line": 31, "column": 4 }, "end": { - "line": 27, + "line": 31, "column": 8 } } }, "property": { "type": "Identifier", - "start": 513, - "end": 523, + "start": 586, + "end": 596, "loc": { "start": { - "line": 27, + "line": 31, "column": 9 }, "end": { - "line": 27, + "line": 31, "column": 19 }, "identifierName": "setProgram" @@ -1668,15 +1488,15 @@ "arguments": [ { "type": "Identifier", - "start": 524, - "end": 531, + "start": 597, + "end": 604, "loc": { "start": { - "line": 27, + "line": 31, "column": 20 }, "end": { - "line": 27, + "line": 31, "column": 27 }, "identifierName": "program" @@ -1689,15 +1509,15 @@ { "type": "CommentLine", "value": " Get array of tokens", - "start": 539, - "end": 561, + "start": 612, + "end": 634, "loc": { "start": { - "line": 29, + "line": 33, "column": 4 }, "end": { - "line": 29, + "line": 33, "column": 26 } } @@ -1706,58 +1526,58 @@ }, { "type": "ExpressionStatement", - "start": 566, - "end": 604, + "start": 639, + "end": 677, "loc": { "start": { - "line": 30, + "line": 34, "column": 4 }, "end": { - "line": 30, + "line": 34, "column": 42 } }, "expression": { "type": "AssignmentExpression", - "start": 566, - "end": 603, + "start": 639, + "end": 676, "loc": { "start": { - "line": 30, + "line": 34, "column": 4 }, "end": { - "line": 30, + "line": 34, "column": 41 } }, "operator": "=", "left": { "type": "MemberExpression", - "start": 566, - "end": 577, + "start": 639, + "end": 650, "loc": { "start": { - "line": 30, + "line": 34, "column": 4 }, "end": { - "line": 30, + "line": 34, "column": 15 } }, "object": { "type": "ThisExpression", - "start": 566, - "end": 570, + "start": 639, + "end": 643, "loc": { "start": { - "line": 30, + "line": 34, "column": 4 }, "end": { - "line": 30, + "line": 34, "column": 8 } }, @@ -1765,15 +1585,15 @@ }, "property": { "type": "Identifier", - "start": 571, - "end": 577, + "start": 644, + "end": 650, "loc": { "start": { - "line": 30, + "line": 34, "column": 9 }, "end": { - "line": 30, + "line": 34, "column": 15 }, "identifierName": "tokens" @@ -1785,43 +1605,43 @@ }, "right": { "type": "CallExpression", - "start": 580, - "end": 603, + "start": 653, + "end": 676, "loc": { "start": { - "line": 30, + "line": 34, "column": 18 }, "end": { - "line": 30, + "line": 34, "column": 41 } }, "callee": { "type": "MemberExpression", - "start": 580, - "end": 594, + "start": 653, + "end": 667, "loc": { "start": { - "line": 30, + "line": 34, "column": 18 }, "end": { - "line": 30, + "line": 34, "column": 32 } }, "object": { "type": "Identifier", - "start": 580, - "end": 585, + "start": 653, + "end": 658, "loc": { "start": { - "line": 30, + "line": 34, "column": 18 }, "end": { - "line": 30, + "line": 34, "column": 23 }, "identifierName": "Lexer" @@ -1830,15 +1650,15 @@ }, "property": { "type": "Identifier", - "start": 586, - "end": 594, + "start": 659, + "end": 667, "loc": { "start": { - "line": 30, + "line": 34, "column": 24 }, "end": { - "line": 30, + "line": 34, "column": 32 }, "identifierName": "tokenize" @@ -1850,15 +1670,15 @@ "arguments": [ { "type": "Identifier", - "start": 595, - "end": 602, + "start": 668, + "end": 675, "loc": { "start": { - "line": 30, + "line": 34, "column": 33 }, "end": { - "line": 30, + "line": 34, "column": 40 }, "identifierName": "program" @@ -1873,15 +1693,15 @@ { "type": "CommentLine", "value": " Get array of tokens", - "start": 539, - "end": 561, + "start": 612, + "end": 634, "loc": { "start": { - "line": 29, + "line": 33, "column": 4 }, "end": { - "line": 29, + "line": 33, "column": 26 } } @@ -1890,44 +1710,44 @@ }, { "type": "VariableDeclaration", - "start": 610, - "end": 626, + "start": 683, + "end": 699, "loc": { "start": { - "line": 32, + "line": 36, "column": 4 }, "end": { - "line": 32, + "line": 36, "column": 20 } }, "declarations": [ { "type": "VariableDeclarator", - "start": 614, - "end": 625, + "start": 687, + "end": 698, "loc": { "start": { - "line": 32, + "line": 36, "column": 8 }, "end": { - "line": 32, + "line": 36, "column": 19 } }, "id": { "type": "Identifier", - "start": 614, - "end": 618, + "start": 687, + "end": 691, "loc": { "start": { - "line": 32, + "line": 36, "column": 8 }, "end": { - "line": 32, + "line": 36, "column": 12 }, "identifierName": "tree" @@ -1936,15 +1756,15 @@ }, "init": { "type": "NullLiteral", - "start": 621, - "end": 625, + "start": 694, + "end": 698, "loc": { "start": { - "line": 32, + "line": 36, "column": 15 }, "end": { - "line": 32, + "line": 36, "column": 19 } } @@ -1956,15 +1776,15 @@ { "type": "CommentLine", "value": " Parse if the array is not empty", - "start": 632, - "end": 666, + "start": 705, + "end": 739, "loc": { "start": { - "line": 34, + "line": 38, "column": 4 }, "end": { - "line": 34, + "line": 38, "column": 38 } } @@ -1973,71 +1793,71 @@ }, { "type": "IfStatement", - "start": 671, - "end": 786, + "start": 744, + "end": 859, "loc": { "start": { - "line": 35, + "line": 39, "column": 4 }, "end": { - "line": 38, + "line": 42, "column": 5 } }, "test": { "type": "BinaryExpression", - "start": 675, - "end": 697, + "start": 748, + "end": 770, "loc": { "start": { - "line": 35, + "line": 39, "column": 8 }, "end": { - "line": 35, + "line": 39, "column": 30 } }, "left": { "type": "MemberExpression", - "start": 675, - "end": 693, + "start": 748, + "end": 766, "loc": { "start": { - "line": 35, + "line": 39, "column": 8 }, "end": { - "line": 35, + "line": 39, "column": 26 } }, "object": { "type": "MemberExpression", - "start": 675, - "end": 686, + "start": 748, + "end": 759, "loc": { "start": { - "line": 35, + "line": 39, "column": 8 }, "end": { - "line": 35, + "line": 39, "column": 19 } }, "object": { "type": "ThisExpression", - "start": 675, - "end": 679, + "start": 748, + "end": 752, "loc": { "start": { - "line": 35, + "line": 39, "column": 8 }, "end": { - "line": 35, + "line": 39, "column": 12 } }, @@ -2045,15 +1865,15 @@ }, "property": { "type": "Identifier", - "start": 680, - "end": 686, + "start": 753, + "end": 759, "loc": { "start": { - "line": 35, + "line": 39, "column": 13 }, "end": { - "line": 35, + "line": 39, "column": 19 }, "identifierName": "tokens" @@ -2065,15 +1885,15 @@ }, "property": { "type": "Identifier", - "start": 687, - "end": 693, + "start": 760, + "end": 766, "loc": { "start": { - "line": 35, + "line": 39, "column": 20 }, "end": { - "line": 35, + "line": 39, "column": 26 }, "identifierName": "length" @@ -2086,15 +1906,15 @@ "operator": ">", "right": { "type": "NumericLiteral", - "start": 696, - "end": 697, + "start": 769, + "end": 770, "loc": { "start": { - "line": 35, + "line": 39, "column": 29 }, "end": { - "line": 35, + "line": 39, "column": 30 } }, @@ -2108,88 +1928,88 @@ }, "consequent": { "type": "BlockStatement", - "start": 699, - "end": 786, + "start": 772, + "end": 859, "loc": { "start": { - "line": 35, + "line": 39, "column": 32 }, "end": { - "line": 38, + "line": 42, "column": 5 } }, "body": [ { "type": "ExpressionStatement", - "start": 707, - "end": 743, + "start": 780, + "end": 816, "loc": { "start": { - "line": 36, + "line": 40, "column": 6 }, "end": { - "line": 36, + "line": 40, "column": 42 } }, "expression": { "type": "AssignmentExpression", - "start": 707, - "end": 742, + "start": 780, + "end": 815, "loc": { "start": { - "line": 36, + "line": 40, "column": 6 }, "end": { - "line": 36, + "line": 40, "column": 41 } }, "operator": "=", "left": { "type": "MemberExpression", - "start": 707, - "end": 721, + "start": 780, + "end": 794, "loc": { "start": { - "line": 36, + "line": 40, "column": 6 }, "end": { - "line": 36, + "line": 40, "column": 20 } }, "object": { "type": "ThisExpression", - "start": 707, - "end": 711, + "start": 780, + "end": 784, "loc": { "start": { - "line": 36, + "line": 40, "column": 6 }, "end": { - "line": 36, + "line": 40, "column": 10 } } }, "property": { "type": "Identifier", - "start": 712, - "end": 721, + "start": 785, + "end": 794, "loc": { "start": { - "line": 36, + "line": 40, "column": 11 }, "end": { - "line": 36, + "line": 40, "column": 20 }, "identifierName": "lookahead" @@ -2200,58 +2020,58 @@ }, "right": { "type": "CallExpression", - "start": 724, - "end": 742, + "start": 797, + "end": 815, "loc": { "start": { - "line": 36, + "line": 40, "column": 23 }, "end": { - "line": 36, + "line": 40, "column": 41 } }, "callee": { "type": "MemberExpression", - "start": 724, - "end": 740, + "start": 797, + "end": 813, "loc": { "start": { - "line": 36, + "line": 40, "column": 23 }, "end": { - "line": 36, + "line": 40, "column": 39 } }, "object": { "type": "ThisExpression", - "start": 724, - "end": 728, + "start": 797, + "end": 801, "loc": { "start": { - "line": 36, + "line": 40, "column": 23 }, "end": { - "line": 36, + "line": 40, "column": 27 } } }, "property": { "type": "Identifier", - "start": 729, - "end": 740, + "start": 802, + "end": 813, "loc": { "start": { - "line": 36, + "line": 40, "column": 28 }, "end": { - "line": 36, + "line": 40, "column": 39 }, "identifierName": "__nextToken" @@ -2266,44 +2086,44 @@ }, { "type": "ExpressionStatement", - "start": 750, - "end": 780, + "start": 823, + "end": 853, "loc": { "start": { - "line": 37, + "line": 41, "column": 6 }, "end": { - "line": 37, + "line": 41, "column": 36 } }, "expression": { "type": "AssignmentExpression", - "start": 750, - "end": 779, + "start": 823, + "end": 852, "loc": { "start": { - "line": 37, + "line": 41, "column": 6 }, "end": { - "line": 37, + "line": 41, "column": 35 } }, "operator": "=", "left": { "type": "Identifier", - "start": 750, - "end": 754, + "start": 823, + "end": 827, "loc": { "start": { - "line": 37, + "line": 41, "column": 6 }, "end": { - "line": 37, + "line": 41, "column": 10 }, "identifierName": "tree" @@ -2312,58 +2132,58 @@ }, "right": { "type": "CallExpression", - "start": 757, - "end": 779, + "start": 830, + "end": 852, "loc": { "start": { - "line": 37, + "line": 41, "column": 13 }, "end": { - "line": 37, + "line": 41, "column": 35 } }, "callee": { "type": "MemberExpression", - "start": 757, - "end": 777, + "start": 830, + "end": 850, "loc": { "start": { - "line": 37, + "line": 41, "column": 13 }, "end": { - "line": 37, + "line": 41, "column": 33 } }, "object": { "type": "ThisExpression", - "start": 757, - "end": 761, + "start": 830, + "end": 834, "loc": { "start": { - "line": 37, + "line": 41, "column": 13 }, "end": { - "line": 37, + "line": 41, "column": 17 } } }, "property": { "type": "Identifier", - "start": 762, - "end": 777, + "start": 835, + "end": 850, "loc": { "start": { - "line": 37, + "line": 41, "column": 18 }, "end": { - "line": 37, + "line": 41, "column": 33 }, "identifierName": "parseExpression" @@ -2384,15 +2204,15 @@ { "type": "CommentLine", "value": " Parse if the array is not empty", - "start": 632, - "end": 666, + "start": 705, + "end": 739, "loc": { "start": { - "line": 34, + "line": 38, "column": 4 }, "end": { - "line": 34, + "line": 38, "column": 38 } } @@ -2401,72 +2221,72 @@ }, { "type": "IfStatement", - "start": 792, - "end": 909, + "start": 865, + "end": 982, "loc": { "start": { - "line": 40, + "line": 44, "column": 4 }, "end": { - "line": 42, + "line": 46, "column": 5 } }, "test": { "type": "BinaryExpression", - "start": 796, - "end": 819, + "start": 869, + "end": 892, "loc": { "start": { - "line": 40, + "line": 44, "column": 8 }, "end": { - "line": 40, + "line": 44, "column": 31 } }, "left": { "type": "MemberExpression", - "start": 796, - "end": 810, + "start": 869, + "end": 883, "loc": { "start": { - "line": 40, + "line": 44, "column": 8 }, "end": { - "line": 40, + "line": 44, "column": 22 } }, "object": { "type": "ThisExpression", - "start": 796, - "end": 800, + "start": 869, + "end": 873, "loc": { "start": { - "line": 40, + "line": 44, "column": 8 }, "end": { - "line": 40, + "line": 44, "column": 12 } } }, "property": { "type": "Identifier", - "start": 801, - "end": 810, + "start": 874, + "end": 883, "loc": { "start": { - "line": 40, + "line": 44, "column": 13 }, "end": { - "line": 40, + "line": 44, "column": 22 }, "identifierName": "lookahead" @@ -2478,15 +2298,15 @@ "operator": "!==", "right": { "type": "NullLiteral", - "start": 815, - "end": 819, + "start": 888, + "end": 892, "loc": { "start": { - "line": 40, + "line": 44, "column": 27 }, "end": { - "line": 40, + "line": 44, "column": 31 } } @@ -2494,87 +2314,87 @@ }, "consequent": { "type": "BlockStatement", - "start": 821, - "end": 909, + "start": 894, + "end": 982, "loc": { "start": { - "line": 40, + "line": 44, "column": 33 }, "end": { - "line": 42, + "line": 46, "column": 5 } }, "body": [ { "type": "ThrowStatement", - "start": 829, - "end": 903, + "start": 902, + "end": 976, "loc": { "start": { - "line": 41, + "line": 45, "column": 6 }, "end": { - "line": 41, + "line": 45, "column": 80 } }, "argument": { "type": "CallExpression", - "start": 835, - "end": 902, + "start": 908, + "end": 975, "loc": { "start": { - "line": 41, + "line": 45, "column": 12 }, "end": { - "line": 41, + "line": 45, "column": 79 } }, "callee": { "type": "MemberExpression", - "start": 835, - "end": 859, + "start": 908, + "end": 932, "loc": { "start": { - "line": 41, + "line": 45, "column": 12 }, "end": { - "line": 41, + "line": 45, "column": 36 } }, "object": { "type": "ThisExpression", - "start": 835, - "end": 839, + "start": 908, + "end": 912, "loc": { "start": { - "line": 41, + "line": 45, "column": 12 }, "end": { - "line": 41, + "line": 45, "column": 16 } } }, "property": { "type": "Identifier", - "start": 840, - "end": 859, + "start": 913, + "end": 932, "loc": { "start": { - "line": 41, + "line": 45, "column": 17 }, "end": { - "line": 41, + "line": 45, "column": 36 }, "identifierName": "__parserSyntaxError" @@ -2586,15 +2406,15 @@ "arguments": [ { "type": "StringLiteral", - "start": 860, - "end": 901, + "start": 933, + "end": 974, "loc": { "start": { - "line": 41, + "line": 45, "column": 37 }, "end": { - "line": 41, + "line": 45, "column": 78 } }, @@ -2614,29 +2434,29 @@ }, { "type": "ReturnStatement", - "start": 915, - "end": 927, + "start": 988, + "end": 1000, "loc": { "start": { - "line": 44, + "line": 48, "column": 4 }, "end": { - "line": 44, + "line": 48, "column": 16 } }, "argument": { "type": "Identifier", - "start": 922, - "end": 926, + "start": 995, + "end": 999, "loc": { "start": { - "line": 44, + "line": 48, "column": 11 }, "end": { - "line": 44, + "line": 48, "column": 15 }, "identifierName": "tree" @@ -2650,15 +2470,15 @@ }, { "type": "ClassMethod", - "start": 935, - "end": 1002, + "start": 1008, + "end": 1075, "loc": { "start": { - "line": 47, + "line": 51, "column": 2 }, "end": { - "line": 49, + "line": 53, "column": 3 } }, @@ -2666,15 +2486,15 @@ "computed": false, "key": { "type": "Identifier", - "start": 942, - "end": 947, + "start": 1015, + "end": 1020, "loc": { "start": { - "line": 47, + "line": 51, "column": 9 }, "end": { - "line": 47, + "line": 51, "column": 14 }, "identifierName": "parse" @@ -2689,15 +2509,15 @@ "params": [ { "type": "Identifier", - "start": 948, - "end": 955, + "start": 1021, + "end": 1028, "loc": { "start": { - "line": 47, + "line": 51, "column": 15 }, "end": { - "line": 47, + "line": 51, "column": 22 }, "identifierName": "program" @@ -2707,86 +2527,86 @@ ], "body": { "type": "BlockStatement", - "start": 957, - "end": 1002, + "start": 1030, + "end": 1075, "loc": { "start": { - "line": 47, + "line": 51, "column": 24 }, "end": { - "line": 49, + "line": 53, "column": 3 } }, "body": [ { "type": "ReturnStatement", - "start": 963, - "end": 998, + "start": 1036, + "end": 1071, "loc": { "start": { - "line": 48, + "line": 52, "column": 4 }, "end": { - "line": 48, + "line": 52, "column": 39 } }, "argument": { "type": "CallExpression", - "start": 970, - "end": 997, + "start": 1043, + "end": 1070, "loc": { "start": { - "line": 48, + "line": 52, "column": 11 }, "end": { - "line": 48, + "line": 52, "column": 38 } }, "callee": { "type": "MemberExpression", - "start": 970, - "end": 988, + "start": 1043, + "end": 1061, "loc": { "start": { - "line": 48, + "line": 52, "column": 11 }, "end": { - "line": 48, + "line": 52, "column": 29 } }, "object": { "type": "NewExpression", - "start": 970, - "end": 982, + "start": 1043, + "end": 1055, "loc": { "start": { - "line": 48, + "line": 52, "column": 11 }, "end": { - "line": 48, + "line": 52, "column": 23 } }, "callee": { "type": "Identifier", - "start": 974, - "end": 980, + "start": 1047, + "end": 1053, "loc": { "start": { - "line": 48, + "line": 52, "column": 15 }, "end": { - "line": 48, + "line": 52, "column": 21 }, "identifierName": "Parser" @@ -2797,15 +2617,15 @@ }, "property": { "type": "Identifier", - "start": 983, - "end": 988, + "start": 1056, + "end": 1061, "loc": { "start": { - "line": 48, + "line": 52, "column": 24 }, "end": { - "line": 48, + "line": 52, "column": 29 }, "identifierName": "parse" @@ -2817,15 +2637,15 @@ "arguments": [ { "type": "Identifier", - "start": 989, - "end": 996, + "start": 1062, + "end": 1069, "loc": { "start": { - "line": 48, + "line": 52, "column": 30 }, "end": { - "line": 48, + "line": 52, "column": 37 }, "identifierName": "program" @@ -2841,15 +2661,15 @@ }, { "type": "ClassMethod", - "start": 1006, - "end": 1115, + "start": 1079, + "end": 1188, "loc": { "start": { - "line": 51, + "line": 55, "column": 2 }, "end": { - "line": 55, + "line": 59, "column": 3 } }, @@ -2857,15 +2677,15 @@ "computed": false, "key": { "type": "Identifier", - "start": 1006, - "end": 1019, + "start": 1079, + "end": 1092, "loc": { "start": { - "line": 51, + "line": 55, "column": 2 }, "end": { - "line": 51, + "line": 55, "column": 15 }, "identifierName": "parseFromFile" @@ -2880,15 +2700,15 @@ "params": [ { "type": "Identifier", - "start": 1020, - "end": 1024, + "start": 1093, + "end": 1097, "loc": { "start": { - "line": 51, + "line": 55, "column": 16 }, "end": { - "line": 51, + "line": 55, "column": 20 }, "identifierName": "file" @@ -2898,59 +2718,59 @@ ], "body": { "type": "BlockStatement", - "start": 1026, - "end": 1115, + "start": 1099, + "end": 1188, "loc": { "start": { - "line": 51, + "line": 55, "column": 22 }, "end": { - "line": 55, + "line": 59, "column": 3 } }, "body": [ { "type": "VariableDeclaration", - "start": 1032, - "end": 1078, + "start": 1105, + "end": 1151, "loc": { "start": { - "line": 52, + "line": 56, "column": 4 }, "end": { - "line": 52, + "line": 56, "column": 50 } }, "declarations": [ { "type": "VariableDeclarator", - "start": 1038, - "end": 1077, + "start": 1111, + "end": 1150, "loc": { "start": { - "line": 52, + "line": 56, "column": 10 }, "end": { - "line": 52, + "line": 56, "column": 49 } }, "id": { "type": "Identifier", - "start": 1038, - "end": 1045, + "start": 1111, + "end": 1118, "loc": { "start": { - "line": 52, + "line": 56, "column": 10 }, "end": { - "line": 52, + "line": 56, "column": 17 }, "identifierName": "program" @@ -2959,43 +2779,43 @@ }, "init": { "type": "CallExpression", - "start": 1048, - "end": 1077, + "start": 1121, + "end": 1150, "loc": { "start": { - "line": 52, + "line": 56, "column": 20 }, "end": { - "line": 52, + "line": 56, "column": 49 } }, "callee": { "type": "MemberExpression", - "start": 1048, - "end": 1063, + "start": 1121, + "end": 1136, "loc": { "start": { - "line": 52, + "line": 56, "column": 20 }, "end": { - "line": 52, + "line": 56, "column": 35 } }, "object": { "type": "Identifier", - "start": 1048, - "end": 1050, + "start": 1121, + "end": 1123, "loc": { "start": { - "line": 52, + "line": 56, "column": 20 }, "end": { - "line": 52, + "line": 56, "column": 22 }, "identifierName": "fs" @@ -3004,15 +2824,15 @@ }, "property": { "type": "Identifier", - "start": 1051, - "end": 1063, + "start": 1124, + "end": 1136, "loc": { "start": { - "line": 52, + "line": 56, "column": 23 }, "end": { - "line": 52, + "line": 56, "column": 35 }, "identifierName": "readFileSync" @@ -3024,15 +2844,15 @@ "arguments": [ { "type": "Identifier", - "start": 1064, - "end": 1068, + "start": 1137, + "end": 1141, "loc": { "start": { - "line": 52, + "line": 56, "column": 36 }, "end": { - "line": 52, + "line": 56, "column": 40 }, "identifierName": "file" @@ -3041,15 +2861,15 @@ }, { "type": "StringLiteral", - "start": 1070, - "end": 1076, + "start": 1143, + "end": 1149, "loc": { "start": { - "line": 52, + "line": 56, "column": 42 }, "end": { - "line": 52, + "line": 56, "column": 48 } }, @@ -3067,72 +2887,72 @@ }, { "type": "ReturnStatement", - "start": 1084, - "end": 1111, + "start": 1157, + "end": 1184, "loc": { "start": { - "line": 54, + "line": 58, "column": 4 }, "end": { - "line": 54, + "line": 58, "column": 31 } }, "argument": { "type": "CallExpression", - "start": 1091, - "end": 1110, + "start": 1164, + "end": 1183, "loc": { "start": { - "line": 54, + "line": 58, "column": 11 }, "end": { - "line": 54, + "line": 58, "column": 30 } }, "callee": { "type": "MemberExpression", - "start": 1091, - "end": 1101, + "start": 1164, + "end": 1174, "loc": { "start": { - "line": 54, + "line": 58, "column": 11 }, "end": { - "line": 54, + "line": 58, "column": 21 } }, "object": { "type": "ThisExpression", - "start": 1091, - "end": 1095, + "start": 1164, + "end": 1168, "loc": { "start": { - "line": 54, + "line": 58, "column": 11 }, "end": { - "line": 54, + "line": 58, "column": 15 } } }, "property": { "type": "Identifier", - "start": 1096, - "end": 1101, + "start": 1169, + "end": 1174, "loc": { "start": { - "line": 54, + "line": 58, "column": 16 }, "end": { - "line": 54, + "line": 58, "column": 21 }, "identifierName": "parse" @@ -3144,15 +2964,15 @@ "arguments": [ { "type": "Identifier", - "start": 1102, - "end": 1109, + "start": 1175, + "end": 1182, "loc": { "start": { - "line": 54, + "line": 58, "column": 22 }, "end": { - "line": 54, + "line": 58, "column": 29 }, "identifierName": "program" @@ -3168,15 +2988,15 @@ }, { "type": "ClassMethod", - "start": 1119, - "end": 1196, + "start": 1192, + "end": 1269, "loc": { "start": { - "line": 57, + "line": 61, "column": 2 }, "end": { - "line": 59, + "line": 63, "column": 3 } }, @@ -3184,15 +3004,15 @@ "computed": false, "key": { "type": "Identifier", - "start": 1126, - "end": 1139, + "start": 1199, + "end": 1212, "loc": { "start": { - "line": 57, + "line": 61, "column": 9 }, "end": { - "line": 57, + "line": 61, "column": 22 }, "identifierName": "parseFromFile" @@ -3207,15 +3027,15 @@ "params": [ { "type": "Identifier", - "start": 1140, - "end": 1144, + "start": 1213, + "end": 1217, "loc": { "start": { - "line": 57, + "line": 61, "column": 23 }, "end": { - "line": 57, + "line": 61, "column": 27 }, "identifierName": "file" @@ -3225,86 +3045,86 @@ ], "body": { "type": "BlockStatement", - "start": 1146, - "end": 1196, + "start": 1219, + "end": 1269, "loc": { "start": { - "line": 57, + "line": 61, "column": 29 }, "end": { - "line": 59, + "line": 63, "column": 3 } }, "body": [ { "type": "ReturnStatement", - "start": 1152, - "end": 1192, + "start": 1225, + "end": 1265, "loc": { "start": { - "line": 58, + "line": 62, "column": 4 }, "end": { - "line": 58, + "line": 62, "column": 44 } }, "argument": { "type": "CallExpression", - "start": 1159, - "end": 1191, + "start": 1232, + "end": 1264, "loc": { "start": { - "line": 58, + "line": 62, "column": 11 }, "end": { - "line": 58, + "line": 62, "column": 43 } }, "callee": { "type": "MemberExpression", - "start": 1159, - "end": 1185, + "start": 1232, + "end": 1258, "loc": { "start": { - "line": 58, + "line": 62, "column": 11 }, "end": { - "line": 58, + "line": 62, "column": 37 } }, "object": { "type": "NewExpression", - "start": 1159, - "end": 1171, + "start": 1232, + "end": 1244, "loc": { "start": { - "line": 58, + "line": 62, "column": 11 }, "end": { - "line": 58, + "line": 62, "column": 23 } }, "callee": { "type": "Identifier", - "start": 1163, - "end": 1169, + "start": 1236, + "end": 1242, "loc": { "start": { - "line": 58, + "line": 62, "column": 15 }, "end": { - "line": 58, + "line": 62, "column": 21 }, "identifierName": "Parser" @@ -3315,15 +3135,15 @@ }, "property": { "type": "Identifier", - "start": 1172, - "end": 1185, + "start": 1245, + "end": 1258, "loc": { "start": { - "line": 58, + "line": 62, "column": 24 }, "end": { - "line": 58, + "line": 62, "column": 37 }, "identifierName": "parseFromFile" @@ -3335,15 +3155,15 @@ "arguments": [ { "type": "Identifier", - "start": 1186, - "end": 1190, + "start": 1259, + "end": 1263, "loc": { "start": { - "line": 58, + "line": 62, "column": 38 }, "end": { - "line": 58, + "line": 62, "column": 42 }, "identifierName": "file" @@ -3359,15 +3179,15 @@ }, { "type": "ClassMethod", - "start": 1200, - "end": 1870, + "start": 1273, + "end": 1943, "loc": { "start": { - "line": 61, + "line": 65, "column": 2 }, "end": { - "line": 78, + "line": 82, "column": 3 } }, @@ -3375,15 +3195,15 @@ "computed": false, "key": { "type": "Identifier", - "start": 1200, - "end": 1215, + "start": 1273, + "end": 1288, "loc": { "start": { - "line": 61, + "line": 65, "column": 2 }, "end": { - "line": 61, + "line": 65, "column": 17 }, "identifierName": "parseExpression" @@ -3398,59 +3218,59 @@ "params": [], "body": { "type": "BlockStatement", - "start": 1218, - "end": 1870, + "start": 1291, + "end": 1943, "loc": { "start": { - "line": 61, + "line": 65, "column": 20 }, "end": { - "line": 78, + "line": 82, "column": 3 } }, "body": [ { "type": "VariableDeclaration", - "start": 1224, - "end": 1233, + "start": 1297, + "end": 1306, "loc": { "start": { - "line": 62, + "line": 66, "column": 4 }, "end": { - "line": 62, + "line": 66, "column": 13 } }, "declarations": [ { "type": "VariableDeclarator", - "start": 1228, - "end": 1232, + "start": 1301, + "end": 1305, "loc": { "start": { - "line": 62, + "line": 66, "column": 8 }, "end": { - "line": 62, + "line": 66, "column": 12 } }, "id": { "type": "Identifier", - "start": 1228, - "end": 1232, + "start": 1301, + "end": 1305, "loc": { "start": { - "line": 62, + "line": 66, "column": 8 }, "end": { - "line": 62, + "line": 66, "column": 12 }, "identifierName": "expr" @@ -3464,86 +3284,86 @@ }, { "type": "IfStatement", - "start": 1238, - "end": 1831, + "start": 1311, + "end": 1904, "loc": { "start": { - "line": 63, + "line": 67, "column": 4 }, "end": { - "line": 75, + "line": 79, "column": 5 } }, "test": { "type": "BinaryExpression", - "start": 1242, - "end": 1274, + "start": 1315, + "end": 1347, "loc": { "start": { - "line": 63, + "line": 67, "column": 8 }, "end": { - "line": 63, + "line": 67, "column": 40 } }, "left": { "type": "MemberExpression", - "start": 1242, - "end": 1261, + "start": 1315, + "end": 1334, "loc": { "start": { - "line": 63, + "line": 67, "column": 8 }, "end": { - "line": 63, + "line": 67, "column": 27 } }, "object": { "type": "MemberExpression", - "start": 1242, - "end": 1256, + "start": 1315, + "end": 1329, "loc": { "start": { - "line": 63, + "line": 67, "column": 8 }, "end": { - "line": 63, + "line": 67, "column": 22 } }, "object": { "type": "ThisExpression", - "start": 1242, - "end": 1246, + "start": 1315, + "end": 1319, "loc": { "start": { - "line": 63, + "line": 67, "column": 8 }, "end": { - "line": 63, + "line": 67, "column": 12 } } }, "property": { "type": "Identifier", - "start": 1247, - "end": 1256, + "start": 1320, + "end": 1329, "loc": { "start": { - "line": 63, + "line": 67, "column": 13 }, "end": { - "line": 63, + "line": 67, "column": 22 }, "identifierName": "lookahead" @@ -3554,15 +3374,15 @@ }, "property": { "type": "Identifier", - "start": 1257, - "end": 1261, + "start": 1330, + "end": 1334, "loc": { "start": { - "line": 63, + "line": 67, "column": 23 }, "end": { - "line": 63, + "line": 67, "column": 27 }, "identifierName": "type" @@ -3574,15 +3394,15 @@ "operator": "===", "right": { "type": "StringLiteral", - "start": 1266, - "end": 1274, + "start": 1339, + "end": 1347, "loc": { "start": { - "line": 63, + "line": 67, "column": 32 }, "end": { - "line": 63, + "line": 67, "column": 40 } }, @@ -3595,59 +3415,59 @@ }, "consequent": { "type": "BlockStatement", - "start": 1276, - "end": 1323, + "start": 1349, + "end": 1396, "loc": { "start": { - "line": 63, + "line": 67, "column": 42 }, "end": { - "line": 65, + "line": 69, "column": 5 } }, "body": [ { "type": "ExpressionStatement", - "start": 1284, - "end": 1317, + "start": 1357, + "end": 1390, "loc": { "start": { - "line": 64, + "line": 68, "column": 6 }, "end": { - "line": 64, + "line": 68, "column": 39 } }, "expression": { "type": "AssignmentExpression", - "start": 1284, - "end": 1316, + "start": 1357, + "end": 1389, "loc": { "start": { - "line": 64, + "line": 68, "column": 6 }, "end": { - "line": 64, + "line": 68, "column": 38 } }, "operator": "=", "left": { "type": "Identifier", - "start": 1284, - "end": 1288, + "start": 1357, + "end": 1361, "loc": { "start": { - "line": 64, + "line": 68, "column": 6 }, "end": { - "line": 64, + "line": 68, "column": 10 }, "identifierName": "expr" @@ -3656,29 +3476,29 @@ }, "right": { "type": "NewExpression", - "start": 1291, - "end": 1316, + "start": 1364, + "end": 1389, "loc": { "start": { - "line": 64, + "line": 68, "column": 13 }, "end": { - "line": 64, + "line": 68, "column": 38 } }, "callee": { "type": "Identifier", - "start": 1295, - "end": 1300, + "start": 1368, + "end": 1373, "loc": { "start": { - "line": 64, + "line": 68, "column": 17 }, "end": { - "line": 64, + "line": 68, "column": 22 }, "identifierName": "Value" @@ -3688,44 +3508,44 @@ "arguments": [ { "type": "MemberExpression", - "start": 1301, - "end": 1315, + "start": 1374, + "end": 1388, "loc": { "start": { - "line": 64, + "line": 68, "column": 23 }, "end": { - "line": 64, + "line": 68, "column": 37 } }, "object": { "type": "ThisExpression", - "start": 1301, - "end": 1305, + "start": 1374, + "end": 1378, "loc": { "start": { - "line": 64, + "line": 68, "column": 23 }, "end": { - "line": 64, + "line": 68, "column": 27 } } }, "property": { "type": "Identifier", - "start": 1306, - "end": 1315, + "start": 1379, + "end": 1388, "loc": { "start": { - "line": 64, + "line": 68, "column": 28 }, "end": { - "line": 64, + "line": 68, "column": 37 }, "identifierName": "lookahead" @@ -3743,86 +3563,86 @@ }, "alternate": { "type": "IfStatement", - "start": 1329, - "end": 1831, + "start": 1402, + "end": 1904, "loc": { "start": { - "line": 65, + "line": 69, "column": 11 }, "end": { - "line": 75, + "line": 79, "column": 5 } }, "test": { "type": "BinaryExpression", - "start": 1333, - "end": 1365, + "start": 1406, + "end": 1438, "loc": { "start": { - "line": 65, + "line": 69, "column": 15 }, "end": { - "line": 65, + "line": 69, "column": 47 } }, "left": { "type": "MemberExpression", - "start": 1333, - "end": 1352, + "start": 1406, + "end": 1425, "loc": { "start": { - "line": 65, + "line": 69, "column": 15 }, "end": { - "line": 65, + "line": 69, "column": 34 } }, "object": { "type": "MemberExpression", - "start": 1333, - "end": 1347, + "start": 1406, + "end": 1420, "loc": { "start": { - "line": 65, + "line": 69, "column": 15 }, "end": { - "line": 65, + "line": 69, "column": 29 } }, "object": { "type": "ThisExpression", - "start": 1333, - "end": 1337, + "start": 1406, + "end": 1410, "loc": { "start": { - "line": 65, + "line": 69, "column": 15 }, "end": { - "line": 65, + "line": 69, "column": 19 } } }, "property": { "type": "Identifier", - "start": 1338, - "end": 1347, + "start": 1411, + "end": 1420, "loc": { "start": { - "line": 65, + "line": 69, "column": 20 }, "end": { - "line": 65, + "line": 69, "column": 29 }, "identifierName": "lookahead" @@ -3833,15 +3653,15 @@ }, "property": { "type": "Identifier", - "start": 1348, - "end": 1352, + "start": 1421, + "end": 1425, "loc": { "start": { - "line": 65, + "line": 69, "column": 30 }, "end": { - "line": 65, + "line": 69, "column": 34 }, "identifierName": "type" @@ -3853,15 +3673,15 @@ "operator": "===", "right": { "type": "StringLiteral", - "start": 1357, - "end": 1365, + "start": 1430, + "end": 1438, "loc": { "start": { - "line": 65, + "line": 69, "column": 39 }, "end": { - "line": 65, + "line": 69, "column": 47 } }, @@ -3874,102 +3694,102 @@ }, "consequent": { "type": "BlockStatement", - "start": 1367, - "end": 1473, + "start": 1440, + "end": 1546, "loc": { "start": { - "line": 65, + "line": 69, "column": 49 }, "end": { - "line": 68, + "line": 72, "column": 5 } }, "body": [ { "type": "ExpressionStatement", - "start": 1375, - "end": 1427, + "start": 1448, + "end": 1500, "loc": { "start": { - "line": 66, + "line": 70, "column": 6 }, "end": { - "line": 66, + "line": 70, "column": 58 } }, "expression": { "type": "AssignmentExpression", - "start": 1375, - "end": 1426, + "start": 1448, + "end": 1499, "loc": { "start": { - "line": 66, + "line": 70, "column": 6 }, "end": { - "line": 66, + "line": 70, "column": 57 } }, "operator": "=", "left": { "type": "MemberExpression", - "start": 1375, - "end": 1395, + "start": 1448, + "end": 1468, "loc": { "start": { - "line": 66, + "line": 70, "column": 6 }, "end": { - "line": 66, + "line": 70, "column": 26 } }, "object": { "type": "MemberExpression", - "start": 1375, - "end": 1389, + "start": 1448, + "end": 1462, "loc": { "start": { - "line": 66, + "line": 70, "column": 6 }, "end": { - "line": 66, + "line": 70, "column": 20 } }, "object": { "type": "ThisExpression", - "start": 1375, - "end": 1379, + "start": 1448, + "end": 1452, "loc": { "start": { - "line": 66, + "line": 70, "column": 6 }, "end": { - "line": 66, + "line": 70, "column": 10 } } }, "property": { "type": "Identifier", - "start": 1380, - "end": 1389, + "start": 1453, + "end": 1462, "loc": { "start": { - "line": 66, + "line": 70, "column": 11 }, "end": { - "line": 66, + "line": 70, "column": 20 }, "identifierName": "lookahead" @@ -3980,15 +3800,15 @@ }, "property": { "type": "Identifier", - "start": 1390, - "end": 1395, + "start": 1463, + "end": 1468, "loc": { "start": { - "line": 66, + "line": 70, "column": 21 }, "end": { - "line": 66, + "line": 70, "column": 26 }, "identifierName": "value" @@ -3999,29 +3819,29 @@ }, "right": { "type": "CallExpression", - "start": 1398, - "end": 1426, + "start": 1471, + "end": 1499, "loc": { "start": { - "line": 66, + "line": 70, "column": 29 }, "end": { - "line": 66, + "line": 70, "column": 57 } }, "callee": { "type": "Identifier", - "start": 1398, - "end": 1404, + "start": 1471, + "end": 1477, "loc": { "start": { - "line": 66, + "line": 70, "column": 29 }, "end": { - "line": 66, + "line": 70, "column": 35 }, "identifierName": "Number" @@ -4031,58 +3851,58 @@ "arguments": [ { "type": "MemberExpression", - "start": 1405, - "end": 1425, + "start": 1478, + "end": 1498, "loc": { "start": { - "line": 66, + "line": 70, "column": 36 }, "end": { - "line": 66, + "line": 70, "column": 56 } }, "object": { "type": "MemberExpression", - "start": 1405, - "end": 1419, + "start": 1478, + "end": 1492, "loc": { "start": { - "line": 66, + "line": 70, "column": 36 }, "end": { - "line": 66, + "line": 70, "column": 50 } }, "object": { "type": "ThisExpression", - "start": 1405, - "end": 1409, + "start": 1478, + "end": 1482, "loc": { "start": { - "line": 66, + "line": 70, "column": 36 }, "end": { - "line": 66, + "line": 70, "column": 40 } } }, "property": { "type": "Identifier", - "start": 1410, - "end": 1419, + "start": 1483, + "end": 1492, "loc": { "start": { - "line": 66, + "line": 70, "column": 41 }, "end": { - "line": 66, + "line": 70, "column": 50 }, "identifierName": "lookahead" @@ -4093,15 +3913,15 @@ }, "property": { "type": "Identifier", - "start": 1420, - "end": 1425, + "start": 1493, + "end": 1498, "loc": { "start": { - "line": 66, + "line": 70, "column": 51 }, "end": { - "line": 66, + "line": 70, "column": 56 }, "identifierName": "value" @@ -4116,44 +3936,44 @@ }, { "type": "ExpressionStatement", - "start": 1434, - "end": 1467, + "start": 1507, + "end": 1540, "loc": { "start": { - "line": 67, + "line": 71, "column": 6 }, "end": { - "line": 67, + "line": 71, "column": 39 } }, "expression": { "type": "AssignmentExpression", - "start": 1434, - "end": 1466, + "start": 1507, + "end": 1539, "loc": { "start": { - "line": 67, + "line": 71, "column": 6 }, "end": { - "line": 67, + "line": 71, "column": 38 } }, "operator": "=", "left": { "type": "Identifier", - "start": 1434, - "end": 1438, + "start": 1507, + "end": 1511, "loc": { "start": { - "line": 67, + "line": 71, "column": 6 }, "end": { - "line": 67, + "line": 71, "column": 10 }, "identifierName": "expr" @@ -4162,29 +3982,29 @@ }, "right": { "type": "NewExpression", - "start": 1441, - "end": 1466, + "start": 1514, + "end": 1539, "loc": { "start": { - "line": 67, + "line": 71, "column": 13 }, "end": { - "line": 67, + "line": 71, "column": 38 } }, "callee": { "type": "Identifier", - "start": 1445, - "end": 1450, + "start": 1518, + "end": 1523, "loc": { "start": { - "line": 67, + "line": 71, "column": 17 }, "end": { - "line": 67, + "line": 71, "column": 22 }, "identifierName": "Value" @@ -4194,44 +4014,44 @@ "arguments": [ { "type": "MemberExpression", - "start": 1451, - "end": 1465, + "start": 1524, + "end": 1538, "loc": { "start": { - "line": 67, + "line": 71, "column": 23 }, "end": { - "line": 67, + "line": 71, "column": 37 } }, "object": { "type": "ThisExpression", - "start": 1451, - "end": 1455, + "start": 1524, + "end": 1528, "loc": { "start": { - "line": 67, + "line": 71, "column": 23 }, "end": { - "line": 67, + "line": 71, "column": 27 } } }, "property": { "type": "Identifier", - "start": 1456, - "end": 1465, + "start": 1529, + "end": 1538, "loc": { "start": { - "line": 67, + "line": 71, "column": 28 }, "end": { - "line": 67, + "line": 71, "column": 37 }, "identifierName": "lookahead" @@ -4249,86 +4069,86 @@ }, "alternate": { "type": "IfStatement", - "start": 1479, - "end": 1831, + "start": 1552, + "end": 1904, "loc": { "start": { - "line": 68, + "line": 72, "column": 11 }, "end": { - "line": 75, + "line": 79, "column": 5 } }, "test": { "type": "BinaryExpression", - "start": 1483, - "end": 1514, + "start": 1556, + "end": 1587, "loc": { "start": { - "line": 68, + "line": 72, "column": 15 }, "end": { - "line": 68, + "line": 72, "column": 46 } }, "left": { "type": "MemberExpression", - "start": 1483, - "end": 1502, + "start": 1556, + "end": 1575, "loc": { "start": { - "line": 68, + "line": 72, "column": 15 }, "end": { - "line": 68, + "line": 72, "column": 34 } }, "object": { "type": "MemberExpression", - "start": 1483, - "end": 1497, + "start": 1556, + "end": 1570, "loc": { "start": { - "line": 68, + "line": 72, "column": 15 }, "end": { - "line": 68, + "line": 72, "column": 29 } }, "object": { "type": "ThisExpression", - "start": 1483, - "end": 1487, + "start": 1556, + "end": 1560, "loc": { "start": { - "line": 68, + "line": 72, "column": 15 }, "end": { - "line": 68, + "line": 72, "column": 19 } } }, "property": { "type": "Identifier", - "start": 1488, - "end": 1497, + "start": 1561, + "end": 1570, "loc": { "start": { - "line": 68, + "line": 72, "column": 20 }, "end": { - "line": 68, + "line": 72, "column": 29 }, "identifierName": "lookahead" @@ -4339,15 +4159,15 @@ }, "property": { "type": "Identifier", - "start": 1498, - "end": 1502, + "start": 1571, + "end": 1575, "loc": { "start": { - "line": 68, + "line": 72, "column": 30 }, "end": { - "line": 68, + "line": 72, "column": 34 }, "identifierName": "type" @@ -4359,15 +4179,15 @@ "operator": "===", "right": { "type": "StringLiteral", - "start": 1507, - "end": 1514, + "start": 1580, + "end": 1587, "loc": { "start": { - "line": 68, + "line": 72, "column": 39 }, "end": { - "line": 68, + "line": 72, "column": 46 } }, @@ -4380,59 +4200,59 @@ }, "consequent": { "type": "BlockStatement", - "start": 1516, - "end": 1640, + "start": 1589, + "end": 1713, "loc": { "start": { - "line": 68, + "line": 72, "column": 48 }, "end": { - "line": 71, + "line": 75, "column": 5 } }, "body": [ { "type": "VariableDeclaration", - "start": 1524, - "end": 1571, + "start": 1597, + "end": 1644, "loc": { "start": { - "line": 69, + "line": 73, "column": 6 }, "end": { - "line": 69, + "line": 73, "column": 53 } }, "declarations": [ { "type": "VariableDeclarator", - "start": 1530, - "end": 1570, + "start": 1603, + "end": 1643, "loc": { "start": { - "line": 69, + "line": 73, "column": 12 }, "end": { - "line": 69, + "line": 73, "column": 52 } }, "id": { "type": "Identifier", - "start": 1530, - "end": 1536, + "start": 1603, + "end": 1609, "loc": { "start": { - "line": 69, + "line": 73, "column": 12 }, "end": { - "line": 69, + "line": 73, "column": 18 }, "identifierName": "fields" @@ -4441,86 +4261,86 @@ }, "init": { "type": "CallExpression", - "start": 1539, - "end": 1570, + "start": 1612, + "end": 1643, "loc": { "start": { - "line": 69, + "line": 73, "column": 21 }, "end": { - "line": 69, + "line": 73, "column": 52 } }, "callee": { "type": "MemberExpression", - "start": 1539, - "end": 1565, + "start": 1612, + "end": 1638, "loc": { "start": { - "line": 69, + "line": 73, "column": 21 }, "end": { - "line": 69, + "line": 73, "column": 47 } }, "object": { "type": "MemberExpression", - "start": 1539, - "end": 1559, + "start": 1612, + "end": 1632, "loc": { "start": { - "line": 69, + "line": 73, "column": 21 }, "end": { - "line": 69, + "line": 73, "column": 41 } }, "object": { "type": "MemberExpression", - "start": 1539, - "end": 1553, + "start": 1612, + "end": 1626, "loc": { "start": { - "line": 69, + "line": 73, "column": 21 }, "end": { - "line": 69, + "line": 73, "column": 35 } }, "object": { "type": "ThisExpression", - "start": 1539, - "end": 1543, + "start": 1612, + "end": 1616, "loc": { "start": { - "line": 69, + "line": 73, "column": 21 }, "end": { - "line": 69, + "line": 73, "column": 25 } } }, "property": { "type": "Identifier", - "start": 1544, - "end": 1553, + "start": 1617, + "end": 1626, "loc": { "start": { - "line": 69, + "line": 73, "column": 26 }, "end": { - "line": 69, + "line": 73, "column": 35 }, "identifierName": "lookahead" @@ -4531,15 +4351,15 @@ }, "property": { "type": "Identifier", - "start": 1554, - "end": 1559, + "start": 1627, + "end": 1632, "loc": { "start": { - "line": 69, + "line": 73, "column": 36 }, "end": { - "line": 69, + "line": 73, "column": 41 }, "identifierName": "value" @@ -4550,15 +4370,15 @@ }, "property": { "type": "Identifier", - "start": 1560, - "end": 1565, + "start": 1633, + "end": 1638, "loc": { "start": { - "line": 69, + "line": 73, "column": 42 }, "end": { - "line": 69, + "line": 73, "column": 47 }, "identifierName": "split" @@ -4570,15 +4390,15 @@ "arguments": [ { "type": "StringLiteral", - "start": 1566, - "end": 1569, + "start": 1639, + "end": 1642, "loc": { "start": { - "line": 69, + "line": 73, "column": 48 }, "end": { - "line": 69, + "line": 73, "column": 51 } }, @@ -4596,44 +4416,44 @@ }, { "type": "ExpressionStatement", - "start": 1578, - "end": 1634, + "start": 1651, + "end": 1707, "loc": { "start": { - "line": 70, + "line": 74, "column": 6 }, "end": { - "line": 70, + "line": 74, "column": 62 } }, "expression": { "type": "AssignmentExpression", - "start": 1578, - "end": 1633, + "start": 1651, + "end": 1706, "loc": { "start": { - "line": 70, + "line": 74, "column": 6 }, "end": { - "line": 70, + "line": 74, "column": 61 } }, "operator": "=", "left": { "type": "Identifier", - "start": 1578, - "end": 1582, + "start": 1651, + "end": 1655, "loc": { "start": { - "line": 70, + "line": 74, "column": 6 }, "end": { - "line": 70, + "line": 74, "column": 10 }, "identifierName": "expr" @@ -4642,29 +4462,29 @@ }, "right": { "type": "NewExpression", - "start": 1585, - "end": 1633, + "start": 1658, + "end": 1706, "loc": { "start": { - "line": 70, + "line": 74, "column": 13 }, "end": { - "line": 70, + "line": 74, "column": 61 } }, "callee": { "type": "Identifier", - "start": 1589, - "end": 1594, + "start": 1662, + "end": 1667, "loc": { "start": { - "line": 70, + "line": 74, "column": 17 }, "end": { - "line": 70, + "line": 74, "column": 22 }, "identifierName": "Regex" @@ -4674,30 +4494,30 @@ "arguments": [ { "type": "ObjectExpression", - "start": 1595, - "end": 1632, + "start": 1668, + "end": 1705, "loc": { "start": { - "line": 70, + "line": 74, "column": 23 }, "end": { - "line": 70, + "line": 74, "column": 60 } }, "properties": [ { "type": "ObjectProperty", - "start": 1597, - "end": 1612, + "start": 1670, + "end": 1685, "loc": { "start": { - "line": 70, + "line": 74, "column": 25 }, "end": { - "line": 70, + "line": 74, "column": 40 } }, @@ -4706,15 +4526,15 @@ "computed": false, "key": { "type": "Identifier", - "start": 1597, - "end": 1601, + "start": 1670, + "end": 1674, "loc": { "start": { - "line": 70, + "line": 74, "column": 25 }, "end": { - "line": 70, + "line": 74, "column": 29 }, "identifierName": "body" @@ -4723,29 +4543,29 @@ }, "value": { "type": "MemberExpression", - "start": 1603, - "end": 1612, + "start": 1676, + "end": 1685, "loc": { "start": { - "line": 70, + "line": 74, "column": 31 }, "end": { - "line": 70, + "line": 74, "column": 40 } }, "object": { "type": "Identifier", - "start": 1603, - "end": 1609, + "start": 1676, + "end": 1682, "loc": { "start": { - "line": 70, + "line": 74, "column": 31 }, "end": { - "line": 70, + "line": 74, "column": 37 }, "identifierName": "fields" @@ -4754,15 +4574,15 @@ }, "property": { "type": "NumericLiteral", - "start": 1610, - "end": 1611, + "start": 1683, + "end": 1684, "loc": { "start": { - "line": 70, + "line": 74, "column": 38 }, "end": { - "line": 70, + "line": 74, "column": 39 } }, @@ -4777,15 +4597,15 @@ }, { "type": "ObjectProperty", - "start": 1614, - "end": 1630, + "start": 1687, + "end": 1703, "loc": { "start": { - "line": 70, + "line": 74, "column": 42 }, "end": { - "line": 70, + "line": 74, "column": 58 } }, @@ -4794,15 +4614,15 @@ "computed": false, "key": { "type": "Identifier", - "start": 1614, - "end": 1619, + "start": 1687, + "end": 1692, "loc": { "start": { - "line": 70, + "line": 74, "column": 42 }, "end": { - "line": 70, + "line": 74, "column": 47 }, "identifierName": "flags" @@ -4811,29 +4631,29 @@ }, "value": { "type": "MemberExpression", - "start": 1621, - "end": 1630, + "start": 1694, + "end": 1703, "loc": { "start": { - "line": 70, + "line": 74, "column": 49 }, "end": { - "line": 70, + "line": 74, "column": 58 } }, "object": { "type": "Identifier", - "start": 1621, - "end": 1627, + "start": 1694, + "end": 1700, "loc": { "start": { - "line": 70, + "line": 74, "column": 49 }, "end": { - "line": 70, + "line": 74, "column": 55 }, "identifierName": "fields" @@ -4842,15 +4662,15 @@ }, "property": { "type": "NumericLiteral", - "start": 1628, - "end": 1629, + "start": 1701, + "end": 1702, "loc": { "start": { - "line": 70, + "line": 74, "column": 56 }, "end": { - "line": 70, + "line": 74, "column": 57 } }, @@ -4874,86 +4694,86 @@ }, "alternate": { "type": "IfStatement", - "start": 1646, - "end": 1831, + "start": 1719, + "end": 1904, "loc": { "start": { - "line": 71, + "line": 75, "column": 11 }, "end": { - "line": 75, + "line": 79, "column": 5 } }, "test": { "type": "BinaryExpression", - "start": 1650, - "end": 1680, + "start": 1723, + "end": 1753, "loc": { "start": { - "line": 71, + "line": 75, "column": 15 }, "end": { - "line": 71, + "line": 75, "column": 45 } }, "left": { "type": "MemberExpression", - "start": 1650, - "end": 1669, + "start": 1723, + "end": 1742, "loc": { "start": { - "line": 71, + "line": 75, "column": 15 }, "end": { - "line": 71, + "line": 75, "column": 34 } }, "object": { "type": "MemberExpression", - "start": 1650, - "end": 1664, + "start": 1723, + "end": 1737, "loc": { "start": { - "line": 71, + "line": 75, "column": 15 }, "end": { - "line": 71, + "line": 75, "column": 29 } }, "object": { "type": "ThisExpression", - "start": 1650, - "end": 1654, + "start": 1723, + "end": 1727, "loc": { "start": { - "line": 71, + "line": 75, "column": 15 }, "end": { - "line": 71, + "line": 75, "column": 19 } } }, "property": { "type": "Identifier", - "start": 1655, - "end": 1664, + "start": 1728, + "end": 1737, "loc": { "start": { - "line": 71, + "line": 75, "column": 20 }, "end": { - "line": 71, + "line": 75, "column": 29 }, "identifierName": "lookahead" @@ -4964,15 +4784,15 @@ }, "property": { "type": "Identifier", - "start": 1665, - "end": 1669, + "start": 1738, + "end": 1742, "loc": { "start": { - "line": 71, + "line": 75, "column": 30 }, "end": { - "line": 71, + "line": 75, "column": 34 }, "identifierName": "type" @@ -4984,15 +4804,15 @@ "operator": "===", "right": { "type": "StringLiteral", - "start": 1674, - "end": 1680, + "start": 1747, + "end": 1753, "loc": { "start": { - "line": 71, + "line": 75, "column": 39 }, "end": { - "line": 71, + "line": 75, "column": 45 } }, @@ -5005,59 +4825,59 @@ }, "consequent": { "type": "BlockStatement", - "start": 1682, - "end": 1728, + "start": 1755, + "end": 1801, "loc": { "start": { - "line": 71, + "line": 75, "column": 47 }, "end": { - "line": 73, + "line": 77, "column": 5 } }, "body": [ { "type": "ExpressionStatement", - "start": 1690, - "end": 1722, + "start": 1763, + "end": 1795, "loc": { "start": { - "line": 72, + "line": 76, "column": 6 }, "end": { - "line": 72, + "line": 76, "column": 38 } }, "expression": { "type": "AssignmentExpression", - "start": 1690, - "end": 1721, + "start": 1763, + "end": 1794, "loc": { "start": { - "line": 72, + "line": 76, "column": 6 }, "end": { - "line": 72, + "line": 76, "column": 37 } }, "operator": "=", "left": { "type": "Identifier", - "start": 1690, - "end": 1694, + "start": 1763, + "end": 1767, "loc": { "start": { - "line": 72, + "line": 76, "column": 6 }, "end": { - "line": 72, + "line": 76, "column": 10 }, "identifierName": "expr" @@ -5066,29 +4886,29 @@ }, "right": { "type": "NewExpression", - "start": 1697, - "end": 1721, + "start": 1770, + "end": 1794, "loc": { "start": { - "line": 72, + "line": 76, "column": 13 }, "end": { - "line": 72, + "line": 76, "column": 37 } }, "callee": { "type": "Identifier", - "start": 1701, - "end": 1705, + "start": 1774, + "end": 1778, "loc": { "start": { - "line": 72, + "line": 76, "column": 17 }, "end": { - "line": 72, + "line": 76, "column": 21 }, "identifierName": "Word" @@ -5098,44 +4918,44 @@ "arguments": [ { "type": "MemberExpression", - "start": 1706, - "end": 1720, + "start": 1779, + "end": 1793, "loc": { "start": { - "line": 72, + "line": 76, "column": 22 }, "end": { - "line": 72, + "line": 76, "column": 36 } }, "object": { "type": "ThisExpression", - "start": 1706, - "end": 1710, + "start": 1779, + "end": 1783, "loc": { "start": { - "line": 72, + "line": 76, "column": 22 }, "end": { - "line": 72, + "line": 76, "column": 26 } } }, "property": { "type": "Identifier", - "start": 1711, - "end": 1720, + "start": 1784, + "end": 1793, "loc": { "start": { - "line": 72, + "line": 76, "column": 27 }, "end": { - "line": 72, + "line": 76, "column": 36 }, "identifierName": "lookahead" @@ -5153,87 +4973,87 @@ }, "alternate": { "type": "BlockStatement", - "start": 1734, - "end": 1831, + "start": 1807, + "end": 1904, "loc": { "start": { - "line": 73, + "line": 77, "column": 11 }, "end": { - "line": 75, + "line": 79, "column": 5 } }, "body": [ { "type": "ThrowStatement", - "start": 1742, - "end": 1825, + "start": 1815, + "end": 1898, "loc": { "start": { - "line": 74, + "line": 78, "column": 6 }, "end": { - "line": 74, + "line": 78, "column": 89 } }, "argument": { "type": "CallExpression", - "start": 1748, - "end": 1824, + "start": 1821, + "end": 1897, "loc": { "start": { - "line": 74, + "line": 78, "column": 12 }, "end": { - "line": 74, + "line": 78, "column": 88 } }, "callee": { "type": "MemberExpression", - "start": 1748, - "end": 1772, + "start": 1821, + "end": 1845, "loc": { "start": { - "line": 74, + "line": 78, "column": 12 }, "end": { - "line": 74, + "line": 78, "column": 36 } }, "object": { "type": "ThisExpression", - "start": 1748, - "end": 1752, + "start": 1821, + "end": 1825, "loc": { "start": { - "line": 74, + "line": 78, "column": 12 }, "end": { - "line": 74, + "line": 78, "column": 16 } } }, "property": { "type": "Identifier", - "start": 1753, - "end": 1772, + "start": 1826, + "end": 1845, "loc": { "start": { - "line": 74, + "line": 78, "column": 17 }, "end": { - "line": 74, + "line": 78, "column": 36 }, "identifierName": "__parserSyntaxError" @@ -5245,15 +5065,15 @@ "arguments": [ { "type": "StringLiteral", - "start": 1773, - "end": 1823, + "start": 1846, + "end": 1896, "loc": { "start": { - "line": 74, + "line": 78, "column": 37 }, "end": { - "line": 74, + "line": 78, "column": 87 } }, @@ -5275,72 +5095,72 @@ }, { "type": "ReturnStatement", - "start": 1837, - "end": 1866, + "start": 1910, + "end": 1939, "loc": { "start": { - "line": 77, + "line": 81, "column": 4 }, "end": { - "line": 77, + "line": 81, "column": 33 } }, "argument": { "type": "CallExpression", - "start": 1844, - "end": 1865, + "start": 1917, + "end": 1938, "loc": { "start": { - "line": 77, + "line": 81, "column": 11 }, "end": { - "line": 77, + "line": 81, "column": 32 } }, "callee": { "type": "MemberExpression", - "start": 1844, - "end": 1859, + "start": 1917, + "end": 1932, "loc": { "start": { - "line": 77, + "line": 81, "column": 11 }, "end": { - "line": 77, + "line": 81, "column": 26 } }, "object": { "type": "ThisExpression", - "start": 1844, - "end": 1848, + "start": 1917, + "end": 1921, "loc": { "start": { - "line": 77, + "line": 81, "column": 11 }, "end": { - "line": 77, + "line": 81, "column": 15 } } }, "property": { "type": "Identifier", - "start": 1849, - "end": 1859, + "start": 1922, + "end": 1932, "loc": { "start": { - "line": 77, + "line": 81, "column": 16 }, "end": { - "line": 77, + "line": 81, "column": 26 }, "identifierName": "parseApply" @@ -5352,15 +5172,15 @@ "arguments": [ { "type": "Identifier", - "start": 1860, - "end": 1864, + "start": 1933, + "end": 1937, "loc": { "start": { - "line": 77, + "line": 81, "column": 27 }, "end": { - "line": 77, + "line": 81, "column": 31 }, "identifierName": "expr" @@ -5376,15 +5196,15 @@ }, { "type": "ClassMethod", - "start": 1874, - "end": 2771, + "start": 1947, + "end": 2844, "loc": { "start": { - "line": 80, + "line": 84, "column": 2 }, "end": { - "line": 111, + "line": 115, "column": 3 } }, @@ -5392,15 +5212,15 @@ "computed": false, "key": { "type": "Identifier", - "start": 1874, - "end": 1884, + "start": 1947, + "end": 1957, "loc": { "start": { - "line": 80, + "line": 84, "column": 2 }, "end": { - "line": 80, + "line": 84, "column": 12 }, "identifierName": "parseApply" @@ -5415,15 +5235,15 @@ "params": [ { "type": "Identifier", - "start": 1885, - "end": 1889, + "start": 1958, + "end": 1962, "loc": { "start": { - "line": 80, + "line": 84, "column": 13 }, "end": { - "line": 80, + "line": 84, "column": 17 }, "identifierName": "expr" @@ -5433,73 +5253,73 @@ ], "body": { "type": "BlockStatement", - "start": 1891, - "end": 2771, + "start": 1964, + "end": 2844, "loc": { "start": { - "line": 80, + "line": 84, "column": 19 }, "end": { - "line": 111, + "line": 115, "column": 3 } }, "body": [ { "type": "ExpressionStatement", - "start": 1919, - "end": 1955, + "start": 1992, + "end": 2028, "loc": { "start": { - "line": 82, + "line": 86, "column": 4 }, "end": { - "line": 82, + "line": 86, "column": 40 } }, "expression": { "type": "AssignmentExpression", - "start": 1919, - "end": 1954, + "start": 1992, + "end": 2027, "loc": { "start": { - "line": 82, + "line": 86, "column": 4 }, "end": { - "line": 82, + "line": 86, "column": 39 } }, "operator": "=", "left": { "type": "MemberExpression", - "start": 1919, - "end": 1933, + "start": 1992, + "end": 2006, "loc": { "start": { - "line": 82, + "line": 86, "column": 4 }, "end": { - "line": 82, + "line": 86, "column": 18 } }, "object": { "type": "ThisExpression", - "start": 1919, - "end": 1923, + "start": 1992, + "end": 1996, "loc": { "start": { - "line": 82, + "line": 86, "column": 4 }, "end": { - "line": 82, + "line": 86, "column": 8 } }, @@ -5507,15 +5327,15 @@ }, "property": { "type": "Identifier", - "start": 1924, - "end": 1933, + "start": 1997, + "end": 2006, "loc": { "start": { - "line": 82, + "line": 86, "column": 9 }, "end": { - "line": 82, + "line": 86, "column": 18 }, "identifierName": "lookahead" @@ -5527,58 +5347,58 @@ }, "right": { "type": "CallExpression", - "start": 1936, - "end": 1954, + "start": 2009, + "end": 2027, "loc": { "start": { - "line": 82, + "line": 86, "column": 21 }, "end": { - "line": 82, + "line": 86, "column": 39 } }, "callee": { "type": "MemberExpression", - "start": 1936, - "end": 1952, + "start": 2009, + "end": 2025, "loc": { "start": { - "line": 82, + "line": 86, "column": 21 }, "end": { - "line": 82, + "line": 86, "column": 37 } }, "object": { "type": "ThisExpression", - "start": 1936, - "end": 1940, + "start": 2009, + "end": 2013, "loc": { "start": { - "line": 82, + "line": 86, "column": 21 }, "end": { - "line": 82, + "line": 86, "column": 25 } } }, "property": { "type": "Identifier", - "start": 1941, - "end": 1952, + "start": 2014, + "end": 2025, "loc": { "start": { - "line": 82, + "line": 86, "column": 26 }, "end": { - "line": 82, + "line": 86, "column": 37 }, "identifierName": "__nextToken" @@ -5595,15 +5415,15 @@ { "type": "CommentLine", "value": " Get next token", - "start": 1897, - "end": 1914, + "start": 1970, + "end": 1987, "loc": { "start": { - "line": 81, + "line": 85, "column": 4 }, "end": { - "line": 81, + "line": 85, "column": 21 } } @@ -5613,15 +5433,15 @@ { "type": "CommentLine", "value": " Return if apply is empty (not left parenthesis or null)", - "start": 1961, - "end": 2019, + "start": 2034, + "end": 2092, "loc": { "start": { - "line": 84, + "line": 88, "column": 4 }, "end": { - "line": 84, + "line": 88, "column": 62 } } @@ -5630,43 +5450,43 @@ }, { "type": "IfStatement", - "start": 2024, - "end": 2103, + "start": 2097, + "end": 2176, "loc": { "start": { - "line": 85, + "line": 89, "column": 4 }, "end": { - "line": 87, + "line": 91, "column": 5 } }, "test": { "type": "LogicalExpression", - "start": 2028, - "end": 2075, + "start": 2101, + "end": 2148, "loc": { "start": { - "line": 85, + "line": 89, "column": 8 }, "end": { - "line": 85, + "line": 89, "column": 55 } }, "left": { "type": "UnaryExpression", - "start": 2028, - "end": 2043, + "start": 2101, + "end": 2116, "loc": { "start": { - "line": 85, + "line": 89, "column": 8 }, "end": { - "line": 85, + "line": 89, "column": 23 } }, @@ -5674,29 +5494,29 @@ "prefix": true, "argument": { "type": "MemberExpression", - "start": 2029, - "end": 2043, + "start": 2102, + "end": 2116, "loc": { "start": { - "line": 85, + "line": 89, "column": 9 }, "end": { - "line": 85, + "line": 89, "column": 23 } }, "object": { "type": "ThisExpression", - "start": 2029, - "end": 2033, + "start": 2102, + "end": 2106, "loc": { "start": { - "line": 85, + "line": 89, "column": 9 }, "end": { - "line": 85, + "line": 89, "column": 13 } }, @@ -5704,15 +5524,15 @@ }, "property": { "type": "Identifier", - "start": 2034, - "end": 2043, + "start": 2107, + "end": 2116, "loc": { "start": { - "line": 85, + "line": 89, "column": 14 }, "end": { - "line": 85, + "line": 89, "column": 23 }, "identifierName": "lookahead" @@ -5730,72 +5550,72 @@ "operator": "||", "right": { "type": "BinaryExpression", - "start": 2047, - "end": 2075, + "start": 2120, + "end": 2148, "loc": { "start": { - "line": 85, + "line": 89, "column": 27 }, "end": { - "line": 85, + "line": 89, "column": 55 } }, "left": { "type": "MemberExpression", - "start": 2047, - "end": 2066, + "start": 2120, + "end": 2139, "loc": { "start": { - "line": 85, + "line": 89, "column": 27 }, "end": { - "line": 85, + "line": 89, "column": 46 } }, "object": { "type": "MemberExpression", - "start": 2047, - "end": 2061, + "start": 2120, + "end": 2134, "loc": { "start": { - "line": 85, + "line": 89, "column": 27 }, "end": { - "line": 85, + "line": 89, "column": 41 } }, "object": { "type": "ThisExpression", - "start": 2047, - "end": 2051, + "start": 2120, + "end": 2124, "loc": { "start": { - "line": 85, + "line": 89, "column": 27 }, "end": { - "line": 85, + "line": 89, "column": 31 } } }, "property": { "type": "Identifier", - "start": 2052, - "end": 2061, + "start": 2125, + "end": 2134, "loc": { "start": { - "line": 85, + "line": 89, "column": 32 }, "end": { - "line": 85, + "line": 89, "column": 41 }, "identifierName": "lookahead" @@ -5806,15 +5626,15 @@ }, "property": { "type": "Identifier", - "start": 2062, - "end": 2066, + "start": 2135, + "end": 2139, "loc": { "start": { - "line": 85, + "line": 89, "column": 42 }, "end": { - "line": 85, + "line": 89, "column": 46 }, "identifierName": "type" @@ -5826,15 +5646,15 @@ "operator": "!==", "right": { "type": "StringLiteral", - "start": 2071, - "end": 2075, + "start": 2144, + "end": 2148, "loc": { "start": { - "line": 85, + "line": 89, "column": 51 }, "end": { - "line": 85, + "line": 89, "column": 55 } }, @@ -5849,44 +5669,44 @@ }, "consequent": { "type": "BlockStatement", - "start": 2077, - "end": 2103, + "start": 2150, + "end": 2176, "loc": { "start": { - "line": 85, + "line": 89, "column": 57 }, "end": { - "line": 87, + "line": 91, "column": 5 } }, "body": [ { "type": "ReturnStatement", - "start": 2085, - "end": 2097, + "start": 2158, + "end": 2170, "loc": { "start": { - "line": 86, + "line": 90, "column": 6 }, "end": { - "line": 86, + "line": 90, "column": 18 } }, "argument": { "type": "Identifier", - "start": 2092, - "end": 2096, + "start": 2165, + "end": 2169, "loc": { "start": { - "line": 86, + "line": 90, "column": 13 }, "end": { - "line": 86, + "line": 90, "column": 17 }, "identifierName": "expr" @@ -5902,15 +5722,15 @@ { "type": "CommentLine", "value": " Return if apply is empty (not left parenthesis or null)", - "start": 1961, - "end": 2019, + "start": 2034, + "end": 2092, "loc": { "start": { - "line": 84, + "line": 88, "column": 4 }, "end": { - "line": 84, + "line": 88, "column": 62 } } @@ -5919,44 +5739,44 @@ }, { "type": "VariableDeclaration", - "start": 2109, - "end": 2136, + "start": 2182, + "end": 2209, "loc": { "start": { - "line": 89, + "line": 93, "column": 4 }, "end": { - "line": 89, + "line": 93, "column": 31 } }, "declarations": [ { "type": "VariableDeclarator", - "start": 2113, - "end": 2135, + "start": 2186, + "end": 2208, "loc": { "start": { - "line": 89, + "line": 93, "column": 8 }, "end": { - "line": 89, + "line": 93, "column": 30 } }, "id": { "type": "Identifier", - "start": 2113, - "end": 2117, + "start": 2186, + "end": 2190, "loc": { "start": { - "line": 89, + "line": 93, "column": 8 }, "end": { - "line": 89, + "line": 93, "column": 12 }, "identifierName": "tree" @@ -5965,29 +5785,29 @@ }, "init": { "type": "NewExpression", - "start": 2120, - "end": 2135, + "start": 2193, + "end": 2208, "loc": { "start": { - "line": 89, + "line": 93, "column": 15 }, "end": { - "line": 89, + "line": 93, "column": 30 } }, "callee": { "type": "Identifier", - "start": 2124, - "end": 2129, + "start": 2197, + "end": 2202, "loc": { "start": { - "line": 89, + "line": 93, "column": 19 }, "end": { - "line": 89, + "line": 93, "column": 24 }, "identifierName": "Apply" @@ -5997,15 +5817,15 @@ "arguments": [ { "type": "Identifier", - "start": 2130, - "end": 2134, + "start": 2203, + "end": 2207, "loc": { "start": { - "line": 89, + "line": 93, "column": 25 }, "end": { - "line": 89, + "line": 93, "column": 29 }, "identifierName": "expr" @@ -6020,73 +5840,73 @@ }, { "type": "ExpressionStatement", - "start": 2142, - "end": 2178, + "start": 2215, + "end": 2251, "loc": { "start": { - "line": 91, + "line": 95, "column": 4 }, "end": { - "line": 91, + "line": 95, "column": 40 } }, "expression": { "type": "AssignmentExpression", - "start": 2142, - "end": 2177, + "start": 2215, + "end": 2250, "loc": { "start": { - "line": 91, + "line": 95, "column": 4 }, "end": { - "line": 91, + "line": 95, "column": 39 } }, "operator": "=", "left": { "type": "MemberExpression", - "start": 2142, - "end": 2156, + "start": 2215, + "end": 2229, "loc": { "start": { - "line": 91, + "line": 95, "column": 4 }, "end": { - "line": 91, + "line": 95, "column": 18 } }, "object": { "type": "ThisExpression", - "start": 2142, - "end": 2146, + "start": 2215, + "end": 2219, "loc": { "start": { - "line": 91, + "line": 95, "column": 4 }, "end": { - "line": 91, + "line": 95, "column": 8 } } }, "property": { "type": "Identifier", - "start": 2147, - "end": 2156, + "start": 2220, + "end": 2229, "loc": { "start": { - "line": 91, + "line": 95, "column": 9 }, "end": { - "line": 91, + "line": 95, "column": 18 }, "identifierName": "lookahead" @@ -6097,58 +5917,58 @@ }, "right": { "type": "CallExpression", - "start": 2159, - "end": 2177, + "start": 2232, + "end": 2250, "loc": { "start": { - "line": 91, + "line": 95, "column": 21 }, "end": { - "line": 91, + "line": 95, "column": 39 } }, "callee": { "type": "MemberExpression", - "start": 2159, - "end": 2175, + "start": 2232, + "end": 2248, "loc": { "start": { - "line": 91, + "line": 95, "column": 21 }, "end": { - "line": 91, + "line": 95, "column": 37 } }, "object": { "type": "ThisExpression", - "start": 2159, - "end": 2163, + "start": 2232, + "end": 2236, "loc": { "start": { - "line": 91, + "line": 95, "column": 21 }, "end": { - "line": 91, + "line": 95, "column": 25 } } }, "property": { "type": "Identifier", - "start": 2164, - "end": 2175, + "start": 2237, + "end": 2248, "loc": { "start": { - "line": 91, + "line": 95, "column": 26 }, "end": { - "line": 91, + "line": 95, "column": 37 }, "identifierName": "__nextToken" @@ -6164,15 +5984,15 @@ { "type": "CommentLine", "value": " Parse all arguments inside the parenthesis", - "start": 2183, - "end": 2228, + "start": 2256, + "end": 2301, "loc": { "start": { - "line": 92, + "line": 96, "column": 4 }, "end": { - "line": 92, + "line": 96, "column": 49 } } @@ -6181,57 +6001,57 @@ }, { "type": "WhileStatement", - "start": 2233, - "end": 2732, + "start": 2306, + "end": 2805, "loc": { "start": { - "line": 93, + "line": 97, "column": 4 }, "end": { - "line": 108, + "line": 112, "column": 5 } }, "test": { "type": "LogicalExpression", - "start": 2240, - "end": 2286, + "start": 2313, + "end": 2359, "loc": { "start": { - "line": 93, + "line": 97, "column": 11 }, "end": { - "line": 93, + "line": 97, "column": 57 } }, "left": { "type": "MemberExpression", - "start": 2240, - "end": 2254, + "start": 2313, + "end": 2327, "loc": { "start": { - "line": 93, + "line": 97, "column": 11 }, "end": { - "line": 93, + "line": 97, "column": 25 } }, "object": { "type": "ThisExpression", - "start": 2240, - "end": 2244, + "start": 2313, + "end": 2317, "loc": { "start": { - "line": 93, + "line": 97, "column": 11 }, "end": { - "line": 93, + "line": 97, "column": 15 } }, @@ -6239,15 +6059,15 @@ }, "property": { "type": "Identifier", - "start": 2245, - "end": 2254, + "start": 2318, + "end": 2327, "loc": { "start": { - "line": 93, + "line": 97, "column": 16 }, "end": { - "line": 93, + "line": 97, "column": 25 }, "identifierName": "lookahead" @@ -6260,72 +6080,72 @@ "operator": "&&", "right": { "type": "BinaryExpression", - "start": 2258, - "end": 2286, + "start": 2331, + "end": 2359, "loc": { "start": { - "line": 93, + "line": 97, "column": 29 }, "end": { - "line": 93, + "line": 97, "column": 57 } }, "left": { "type": "MemberExpression", - "start": 2258, - "end": 2277, + "start": 2331, + "end": 2350, "loc": { "start": { - "line": 93, + "line": 97, "column": 29 }, "end": { - "line": 93, + "line": 97, "column": 48 } }, "object": { "type": "MemberExpression", - "start": 2258, - "end": 2272, + "start": 2331, + "end": 2345, "loc": { "start": { - "line": 93, + "line": 97, "column": 29 }, "end": { - "line": 93, + "line": 97, "column": 43 } }, "object": { "type": "ThisExpression", - "start": 2258, - "end": 2262, + "start": 2331, + "end": 2335, "loc": { "start": { - "line": 93, + "line": 97, "column": 29 }, "end": { - "line": 93, + "line": 97, "column": 33 } } }, "property": { "type": "Identifier", - "start": 2263, - "end": 2272, + "start": 2336, + "end": 2345, "loc": { "start": { - "line": 93, + "line": 97, "column": 34 }, "end": { - "line": 93, + "line": 97, "column": 43 }, "identifierName": "lookahead" @@ -6336,15 +6156,15 @@ }, "property": { "type": "Identifier", - "start": 2273, - "end": 2277, + "start": 2346, + "end": 2350, "loc": { "start": { - "line": 93, + "line": 97, "column": 44 }, "end": { - "line": 93, + "line": 97, "column": 48 }, "identifierName": "type" @@ -6356,15 +6176,15 @@ "operator": "!==", "right": { "type": "StringLiteral", - "start": 2282, - "end": 2286, + "start": 2355, + "end": 2359, "loc": { "start": { - "line": 93, + "line": 97, "column": 53 }, "end": { - "line": 93, + "line": 97, "column": 57 } }, @@ -6379,59 +6199,59 @@ }, "body": { "type": "BlockStatement", - "start": 2288, - "end": 2732, + "start": 2361, + "end": 2805, "loc": { "start": { - "line": 93, + "line": 97, "column": 59 }, "end": { - "line": 108, + "line": 112, "column": 5 } }, "body": [ { "type": "VariableDeclaration", - "start": 2296, - "end": 2329, + "start": 2369, + "end": 2402, "loc": { "start": { - "line": 94, + "line": 98, "column": 6 }, "end": { - "line": 94, + "line": 98, "column": 39 } }, "declarations": [ { "type": "VariableDeclarator", - "start": 2300, - "end": 2328, + "start": 2373, + "end": 2401, "loc": { "start": { - "line": 94, + "line": 98, "column": 10 }, "end": { - "line": 94, + "line": 98, "column": 38 } }, "id": { "type": "Identifier", - "start": 2300, - "end": 2303, + "start": 2373, + "end": 2376, "loc": { "start": { - "line": 94, + "line": 98, "column": 10 }, "end": { - "line": 94, + "line": 98, "column": 13 }, "identifierName": "arg" @@ -6440,58 +6260,58 @@ }, "init": { "type": "CallExpression", - "start": 2306, - "end": 2328, + "start": 2379, + "end": 2401, "loc": { "start": { - "line": 94, + "line": 98, "column": 16 }, "end": { - "line": 94, + "line": 98, "column": 38 } }, "callee": { "type": "MemberExpression", - "start": 2306, - "end": 2326, + "start": 2379, + "end": 2399, "loc": { "start": { - "line": 94, + "line": 98, "column": 16 }, "end": { - "line": 94, + "line": 98, "column": 36 } }, "object": { "type": "ThisExpression", - "start": 2306, - "end": 2310, + "start": 2379, + "end": 2383, "loc": { "start": { - "line": 94, + "line": 98, "column": 16 }, "end": { - "line": 94, + "line": 98, "column": 20 } } }, "property": { "type": "Identifier", - "start": 2311, - "end": 2326, + "start": 2384, + "end": 2399, "loc": { "start": { - "line": 94, + "line": 98, "column": 21 }, "end": { - "line": 94, + "line": 98, "column": 36 }, "identifierName": "parseExpression" @@ -6508,71 +6328,71 @@ }, { "type": "ExpressionStatement", - "start": 2336, - "end": 2356, + "start": 2409, + "end": 2429, "loc": { "start": { - "line": 95, + "line": 99, "column": 6 }, "end": { - "line": 95, + "line": 99, "column": 26 } }, "expression": { "type": "CallExpression", - "start": 2336, - "end": 2355, + "start": 2409, + "end": 2428, "loc": { "start": { - "line": 95, + "line": 99, "column": 6 }, "end": { - "line": 95, + "line": 99, "column": 25 } }, "callee": { "type": "MemberExpression", - "start": 2336, - "end": 2350, + "start": 2409, + "end": 2423, "loc": { "start": { - "line": 95, + "line": 99, "column": 6 }, "end": { - "line": 95, + "line": 99, "column": 20 } }, "object": { "type": "MemberExpression", - "start": 2336, - "end": 2345, + "start": 2409, + "end": 2418, "loc": { "start": { - "line": 95, + "line": 99, "column": 6 }, "end": { - "line": 95, + "line": 99, "column": 15 } }, "object": { "type": "Identifier", - "start": 2336, - "end": 2340, + "start": 2409, + "end": 2413, "loc": { "start": { - "line": 95, + "line": 99, "column": 6 }, "end": { - "line": 95, + "line": 99, "column": 10 }, "identifierName": "tree" @@ -6581,15 +6401,15 @@ }, "property": { "type": "Identifier", - "start": 2341, - "end": 2345, + "start": 2414, + "end": 2418, "loc": { "start": { - "line": 95, + "line": 99, "column": 11 }, "end": { - "line": 95, + "line": 99, "column": 15 }, "identifierName": "args" @@ -6600,15 +6420,15 @@ }, "property": { "type": "Identifier", - "start": 2346, - "end": 2350, + "start": 2419, + "end": 2423, "loc": { "start": { - "line": 95, + "line": 99, "column": 16 }, "end": { - "line": 95, + "line": 99, "column": 20 }, "identifierName": "push" @@ -6620,15 +6440,15 @@ "arguments": [ { "type": "Identifier", - "start": 2351, - "end": 2354, + "start": 2424, + "end": 2427, "loc": { "start": { - "line": 95, + "line": 99, "column": 21 }, "end": { - "line": 95, + "line": 99, "column": 24 }, "identifierName": "arg" @@ -6640,43 +6460,43 @@ }, { "type": "IfStatement", - "start": 2364, - "end": 2566, + "start": 2437, + "end": 2639, "loc": { "start": { - "line": 97, + "line": 101, "column": 6 }, "end": { - "line": 102, + "line": 106, "column": 7 } }, "test": { "type": "LogicalExpression", - "start": 2377, - "end": 2469, + "start": 2450, + "end": 2542, "loc": { "start": { - "line": 98, + "line": 102, "column": 8 }, "end": { - "line": 99, + "line": 103, "column": 73 } }, "left": { "type": "UnaryExpression", - "start": 2377, - "end": 2392, + "start": 2450, + "end": 2465, "loc": { "start": { - "line": 98, + "line": 102, "column": 8 }, "end": { - "line": 98, + "line": 102, "column": 23 } }, @@ -6684,44 +6504,44 @@ "prefix": true, "argument": { "type": "MemberExpression", - "start": 2378, - "end": 2392, + "start": 2451, + "end": 2465, "loc": { "start": { - "line": 98, + "line": 102, "column": 9 }, "end": { - "line": 98, + "line": 102, "column": 23 } }, "object": { "type": "ThisExpression", - "start": 2378, - "end": 2382, + "start": 2451, + "end": 2455, "loc": { "start": { - "line": 98, + "line": 102, "column": 9 }, "end": { - "line": 98, + "line": 102, "column": 13 } } }, "property": { "type": "Identifier", - "start": 2383, - "end": 2392, + "start": 2456, + "end": 2465, "loc": { "start": { - "line": 98, + "line": 102, "column": 14 }, "end": { - "line": 98, + "line": 102, "column": 23 }, "identifierName": "lookahead" @@ -6737,86 +6557,86 @@ "operator": "||", "right": { "type": "LogicalExpression", - "start": 2405, - "end": 2468, + "start": 2478, + "end": 2541, "loc": { "start": { - "line": 99, + "line": 103, "column": 9 }, "end": { - "line": 99, + "line": 103, "column": 72 } }, "left": { "type": "BinaryExpression", - "start": 2405, - "end": 2436, + "start": 2478, + "end": 2509, "loc": { "start": { - "line": 99, + "line": 103, "column": 9 }, "end": { - "line": 99, + "line": 103, "column": 40 } }, "left": { "type": "MemberExpression", - "start": 2405, - "end": 2424, + "start": 2478, + "end": 2497, "loc": { "start": { - "line": 99, + "line": 103, "column": 9 }, "end": { - "line": 99, + "line": 103, "column": 28 } }, "object": { "type": "MemberExpression", - "start": 2405, - "end": 2419, + "start": 2478, + "end": 2492, "loc": { "start": { - "line": 99, + "line": 103, "column": 9 }, "end": { - "line": 99, + "line": 103, "column": 23 } }, "object": { "type": "ThisExpression", - "start": 2405, - "end": 2409, + "start": 2478, + "end": 2482, "loc": { "start": { - "line": 99, + "line": 103, "column": 9 }, "end": { - "line": 99, + "line": 103, "column": 13 } } }, "property": { "type": "Identifier", - "start": 2410, - "end": 2419, + "start": 2483, + "end": 2492, "loc": { "start": { - "line": 99, + "line": 103, "column": 14 }, "end": { - "line": 99, + "line": 103, "column": 23 }, "identifierName": "lookahead" @@ -6827,15 +6647,15 @@ }, "property": { "type": "Identifier", - "start": 2420, - "end": 2424, + "start": 2493, + "end": 2497, "loc": { "start": { - "line": 99, + "line": 103, "column": 24 }, "end": { - "line": 99, + "line": 103, "column": 28 }, "identifierName": "type" @@ -6847,15 +6667,15 @@ "operator": "!==", "right": { "type": "StringLiteral", - "start": 2429, - "end": 2436, + "start": 2502, + "end": 2509, "loc": { "start": { - "line": 99, + "line": 103, "column": 33 }, "end": { - "line": 99, + "line": 103, "column": 40 } }, @@ -6869,72 +6689,72 @@ "operator": "&&", "right": { "type": "BinaryExpression", - "start": 2440, - "end": 2468, + "start": 2513, + "end": 2541, "loc": { "start": { - "line": 99, + "line": 103, "column": 44 }, "end": { - "line": 99, + "line": 103, "column": 72 } }, "left": { "type": "MemberExpression", - "start": 2440, - "end": 2459, + "start": 2513, + "end": 2532, "loc": { "start": { - "line": 99, + "line": 103, "column": 44 }, "end": { - "line": 99, + "line": 103, "column": 63 } }, "object": { "type": "MemberExpression", - "start": 2440, - "end": 2454, + "start": 2513, + "end": 2527, "loc": { "start": { - "line": 99, + "line": 103, "column": 44 }, "end": { - "line": 99, + "line": 103, "column": 58 } }, "object": { "type": "ThisExpression", - "start": 2440, - "end": 2444, + "start": 2513, + "end": 2517, "loc": { "start": { - "line": 99, + "line": 103, "column": 44 }, "end": { - "line": 99, + "line": 103, "column": 48 } } }, "property": { "type": "Identifier", - "start": 2445, - "end": 2454, + "start": 2518, + "end": 2527, "loc": { "start": { - "line": 99, + "line": 103, "column": 49 }, "end": { - "line": 99, + "line": 103, "column": 58 }, "identifierName": "lookahead" @@ -6945,15 +6765,15 @@ }, "property": { "type": "Identifier", - "start": 2455, - "end": 2459, + "start": 2528, + "end": 2532, "loc": { "start": { - "line": 99, + "line": 103, "column": 59 }, "end": { - "line": 99, + "line": 103, "column": 63 }, "identifierName": "type" @@ -6965,15 +6785,15 @@ "operator": "!==", "right": { "type": "StringLiteral", - "start": 2464, - "end": 2468, + "start": 2537, + "end": 2541, "loc": { "start": { - "line": 99, + "line": 103, "column": 68 }, "end": { - "line": 99, + "line": 103, "column": 72 } }, @@ -6986,93 +6806,93 @@ }, "extra": { "parenthesized": true, - "parenStart": 2404 + "parenStart": 2477 } } }, "consequent": { "type": "BlockStatement", - "start": 2478, - "end": 2566, + "start": 2551, + "end": 2639, "loc": { "start": { - "line": 100, + "line": 104, "column": 8 }, "end": { - "line": 102, + "line": 106, "column": 7 } }, "body": [ { "type": "ThrowStatement", - "start": 2488, - "end": 2558, + "start": 2561, + "end": 2631, "loc": { "start": { - "line": 101, + "line": 105, "column": 8 }, "end": { - "line": 101, + "line": 105, "column": 78 } }, "argument": { "type": "CallExpression", - "start": 2494, - "end": 2557, + "start": 2567, + "end": 2630, "loc": { "start": { - "line": 101, + "line": 105, "column": 14 }, "end": { - "line": 101, + "line": 105, "column": 77 } }, "callee": { "type": "MemberExpression", - "start": 2494, - "end": 2518, + "start": 2567, + "end": 2591, "loc": { "start": { - "line": 101, + "line": 105, "column": 14 }, "end": { - "line": 101, + "line": 105, "column": 38 } }, "object": { "type": "ThisExpression", - "start": 2494, - "end": 2498, + "start": 2567, + "end": 2571, "loc": { "start": { - "line": 101, + "line": 105, "column": 14 }, "end": { - "line": 101, + "line": 105, "column": 18 } } }, "property": { "type": "Identifier", - "start": 2499, - "end": 2518, + "start": 2572, + "end": 2591, "loc": { "start": { - "line": 101, + "line": 105, "column": 19 }, "end": { - "line": 101, + "line": 105, "column": 38 }, "identifierName": "__parserSyntaxError" @@ -7084,15 +6904,15 @@ "arguments": [ { "type": "TemplateLiteral", - "start": 2519, - "end": 2556, + "start": 2592, + "end": 2629, "loc": { "start": { - "line": 101, + "line": 105, "column": 39 }, "end": { - "line": 101, + "line": 105, "column": 76 } }, @@ -7100,15 +6920,15 @@ "quasis": [ { "type": "TemplateElement", - "start": 2520, - "end": 2555, + "start": 2593, + "end": 2628, "loc": { "start": { - "line": 101, + "line": 105, "column": 40 }, "end": { - "line": 101, + "line": 105, "column": 75 } }, @@ -7132,15 +6952,15 @@ { "type": "CommentLine", "value": " Don't consume RPs as argument tokens", - "start": 2574, - "end": 2613, + "start": 2647, + "end": 2686, "loc": { "start": { - "line": 104, + "line": 108, "column": 6 }, "end": { - "line": 104, + "line": 108, "column": 45 } } @@ -7149,57 +6969,57 @@ }, { "type": "IfStatement", - "start": 2620, - "end": 2726, + "start": 2693, + "end": 2799, "loc": { "start": { - "line": 105, + "line": 109, "column": 6 }, "end": { - "line": 107, + "line": 111, "column": 7 } }, "test": { "type": "LogicalExpression", - "start": 2624, - "end": 2670, + "start": 2697, + "end": 2743, "loc": { "start": { - "line": 105, + "line": 109, "column": 10 }, "end": { - "line": 105, + "line": 109, "column": 56 } }, "left": { "type": "MemberExpression", - "start": 2624, - "end": 2638, + "start": 2697, + "end": 2711, "loc": { "start": { - "line": 105, + "line": 109, "column": 10 }, "end": { - "line": 105, + "line": 109, "column": 24 } }, "object": { "type": "ThisExpression", - "start": 2624, - "end": 2628, + "start": 2697, + "end": 2701, "loc": { "start": { - "line": 105, + "line": 109, "column": 10 }, "end": { - "line": 105, + "line": 109, "column": 14 } }, @@ -7207,15 +7027,15 @@ }, "property": { "type": "Identifier", - "start": 2629, - "end": 2638, + "start": 2702, + "end": 2711, "loc": { "start": { - "line": 105, + "line": 109, "column": 15 }, "end": { - "line": 105, + "line": 109, "column": 24 }, "identifierName": "lookahead" @@ -7228,72 +7048,72 @@ "operator": "&&", "right": { "type": "BinaryExpression", - "start": 2642, - "end": 2670, + "start": 2715, + "end": 2743, "loc": { "start": { - "line": 105, + "line": 109, "column": 28 }, "end": { - "line": 105, + "line": 109, "column": 56 } }, "left": { "type": "MemberExpression", - "start": 2642, - "end": 2661, + "start": 2715, + "end": 2734, "loc": { "start": { - "line": 105, + "line": 109, "column": 28 }, "end": { - "line": 105, + "line": 109, "column": 47 } }, "object": { "type": "MemberExpression", - "start": 2642, - "end": 2656, + "start": 2715, + "end": 2729, "loc": { "start": { - "line": 105, + "line": 109, "column": 28 }, "end": { - "line": 105, + "line": 109, "column": 42 } }, "object": { "type": "ThisExpression", - "start": 2642, - "end": 2646, + "start": 2715, + "end": 2719, "loc": { "start": { - "line": 105, + "line": 109, "column": 28 }, "end": { - "line": 105, + "line": 109, "column": 32 } } }, "property": { "type": "Identifier", - "start": 2647, - "end": 2656, + "start": 2720, + "end": 2729, "loc": { "start": { - "line": 105, + "line": 109, "column": 33 }, "end": { - "line": 105, + "line": 109, "column": 42 }, "identifierName": "lookahead" @@ -7304,15 +7124,15 @@ }, "property": { "type": "Identifier", - "start": 2657, - "end": 2661, + "start": 2730, + "end": 2734, "loc": { "start": { - "line": 105, + "line": 109, "column": 43 }, "end": { - "line": 105, + "line": 109, "column": 47 }, "identifierName": "type" @@ -7324,15 +7144,15 @@ "operator": "!==", "right": { "type": "StringLiteral", - "start": 2666, - "end": 2670, + "start": 2739, + "end": 2743, "loc": { "start": { - "line": 105, + "line": 109, "column": 52 }, "end": { - "line": 105, + "line": 109, "column": 56 } }, @@ -7347,88 +7167,88 @@ }, "consequent": { "type": "BlockStatement", - "start": 2672, - "end": 2726, + "start": 2745, + "end": 2799, "loc": { "start": { - "line": 105, + "line": 109, "column": 58 }, "end": { - "line": 107, + "line": 111, "column": 7 } }, "body": [ { "type": "ExpressionStatement", - "start": 2682, - "end": 2718, + "start": 2755, + "end": 2791, "loc": { "start": { - "line": 106, + "line": 110, "column": 8 }, "end": { - "line": 106, + "line": 110, "column": 44 } }, "expression": { "type": "AssignmentExpression", - "start": 2682, - "end": 2717, + "start": 2755, + "end": 2790, "loc": { "start": { - "line": 106, + "line": 110, "column": 8 }, "end": { - "line": 106, + "line": 110, "column": 43 } }, "operator": "=", "left": { "type": "MemberExpression", - "start": 2682, - "end": 2696, + "start": 2755, + "end": 2769, "loc": { "start": { - "line": 106, + "line": 110, "column": 8 }, "end": { - "line": 106, + "line": 110, "column": 22 } }, "object": { "type": "ThisExpression", - "start": 2682, - "end": 2686, + "start": 2755, + "end": 2759, "loc": { "start": { - "line": 106, + "line": 110, "column": 8 }, "end": { - "line": 106, + "line": 110, "column": 12 } } }, "property": { "type": "Identifier", - "start": 2687, - "end": 2696, + "start": 2760, + "end": 2769, "loc": { "start": { - "line": 106, + "line": 110, "column": 13 }, "end": { - "line": 106, + "line": 110, "column": 22 }, "identifierName": "lookahead" @@ -7439,58 +7259,58 @@ }, "right": { "type": "CallExpression", - "start": 2699, - "end": 2717, + "start": 2772, + "end": 2790, "loc": { "start": { - "line": 106, + "line": 110, "column": 25 }, "end": { - "line": 106, + "line": 110, "column": 43 } }, "callee": { "type": "MemberExpression", - "start": 2699, - "end": 2715, + "start": 2772, + "end": 2788, "loc": { "start": { - "line": 106, + "line": 110, "column": 25 }, "end": { - "line": 106, + "line": 110, "column": 41 } }, "object": { "type": "ThisExpression", - "start": 2699, - "end": 2703, + "start": 2772, + "end": 2776, "loc": { "start": { - "line": 106, + "line": 110, "column": 25 }, "end": { - "line": 106, + "line": 110, "column": 29 } } }, "property": { "type": "Identifier", - "start": 2704, - "end": 2715, + "start": 2777, + "end": 2788, "loc": { "start": { - "line": 106, + "line": 110, "column": 30 }, "end": { - "line": 106, + "line": 110, "column": 41 }, "identifierName": "__nextToken" @@ -7511,15 +7331,15 @@ { "type": "CommentLine", "value": " Don't consume RPs as argument tokens", - "start": 2574, - "end": 2613, + "start": 2647, + "end": 2686, "loc": { "start": { - "line": 104, + "line": 108, "column": 6 }, "end": { - "line": 104, + "line": 108, "column": 45 } } @@ -7533,15 +7353,15 @@ { "type": "CommentLine", "value": " Parse all arguments inside the parenthesis", - "start": 2183, - "end": 2228, + "start": 2256, + "end": 2301, "loc": { "start": { - "line": 92, + "line": 96, "column": 4 }, "end": { - "line": 92, + "line": 96, "column": 49 } } @@ -7550,72 +7370,72 @@ }, { "type": "ReturnStatement", - "start": 2738, - "end": 2767, + "start": 2811, + "end": 2840, "loc": { "start": { - "line": 110, + "line": 114, "column": 4 }, "end": { - "line": 110, + "line": 114, "column": 33 } }, "argument": { "type": "CallExpression", - "start": 2745, - "end": 2766, + "start": 2818, + "end": 2839, "loc": { "start": { - "line": 110, + "line": 114, "column": 11 }, "end": { - "line": 110, + "line": 114, "column": 32 } }, "callee": { "type": "MemberExpression", - "start": 2745, - "end": 2760, + "start": 2818, + "end": 2833, "loc": { "start": { - "line": 110, + "line": 114, "column": 11 }, "end": { - "line": 110, + "line": 114, "column": 26 } }, "object": { "type": "ThisExpression", - "start": 2745, - "end": 2749, + "start": 2818, + "end": 2822, "loc": { "start": { - "line": 110, + "line": 114, "column": 11 }, "end": { - "line": 110, + "line": 114, "column": 15 } } }, "property": { "type": "Identifier", - "start": 2750, - "end": 2760, + "start": 2823, + "end": 2833, "loc": { "start": { - "line": 110, + "line": 114, "column": 16 }, "end": { - "line": 110, + "line": 114, "column": 26 }, "identifierName": "parseApply" @@ -7627,15 +7447,15 @@ "arguments": [ { "type": "Identifier", - "start": 2761, - "end": 2765, + "start": 2834, + "end": 2838, "loc": { "start": { - "line": 110, + "line": 114, "column": 27 }, "end": { - "line": 110, + "line": 114, "column": 31 }, "identifierName": "tree" @@ -7651,15 +7471,15 @@ }, { "type": "ClassMethod", - "start": 2775, - "end": 2887, + "start": 2848, + "end": 2960, "loc": { "start": { - "line": 113, + "line": 117, "column": 2 }, "end": { - "line": 117, + "line": 121, "column": 3 } }, @@ -7667,15 +7487,15 @@ "computed": false, "key": { "type": "Identifier", - "start": 2775, - "end": 2786, + "start": 2848, + "end": 2859, "loc": { "start": { - "line": 113, + "line": 117, "column": 2 }, "end": { - "line": 113, + "line": 117, "column": 13 }, "identifierName": "__nextToken" @@ -7690,59 +7510,59 @@ "params": [], "body": { "type": "BlockStatement", - "start": 2789, - "end": 2887, + "start": 2862, + "end": 2960, "loc": { "start": { - "line": 113, + "line": 117, "column": 16 }, "end": { - "line": 117, + "line": 121, "column": 3 } }, "body": [ { "type": "VariableDeclaration", - "start": 2795, - "end": 2835, + "start": 2868, + "end": 2908, "loc": { "start": { - "line": 114, + "line": 118, "column": 4 }, "end": { - "line": 114, + "line": 118, "column": 44 } }, "declarations": [ { "type": "VariableDeclarator", - "start": 2801, - "end": 2834, + "start": 2874, + "end": 2907, "loc": { "start": { - "line": 114, + "line": 118, "column": 10 }, "end": { - "line": 114, + "line": 118, "column": 43 } }, "id": { "type": "Identifier", - "start": 2801, - "end": 2806, + "start": 2874, + "end": 2879, "loc": { "start": { - "line": 114, + "line": 118, "column": 10 }, "end": { - "line": 114, + "line": 118, "column": 15 }, "identifierName": "token" @@ -7751,58 +7571,58 @@ }, "init": { "type": "MemberExpression", - "start": 2809, - "end": 2834, + "start": 2882, + "end": 2907, "loc": { "start": { - "line": 114, + "line": 118, "column": 18 }, "end": { - "line": 114, + "line": 118, "column": 43 } }, "object": { "type": "MemberExpression", - "start": 2809, - "end": 2820, + "start": 2882, + "end": 2893, "loc": { "start": { - "line": 114, + "line": 118, "column": 18 }, "end": { - "line": 114, + "line": 118, "column": 29 } }, "object": { "type": "ThisExpression", - "start": 2809, - "end": 2813, + "start": 2882, + "end": 2886, "loc": { "start": { - "line": 114, + "line": 118, "column": 18 }, "end": { - "line": 114, + "line": 118, "column": 22 } } }, "property": { "type": "Identifier", - "start": 2814, - "end": 2820, + "start": 2887, + "end": 2893, "loc": { "start": { - "line": 114, + "line": 118, "column": 23 }, "end": { - "line": 114, + "line": 118, "column": 29 }, "identifierName": "tokens" @@ -7813,15 +7633,15 @@ }, "property": { "type": "UpdateExpression", - "start": 2821, - "end": 2833, + "start": 2894, + "end": 2906, "loc": { "start": { - "line": 114, + "line": 118, "column": 30 }, "end": { - "line": 114, + "line": 118, "column": 42 } }, @@ -7829,44 +7649,44 @@ "prefix": false, "argument": { "type": "MemberExpression", - "start": 2821, - "end": 2831, + "start": 2894, + "end": 2904, "loc": { "start": { - "line": 114, + "line": 118, "column": 30 }, "end": { - "line": 114, + "line": 118, "column": 40 } }, "object": { "type": "ThisExpression", - "start": 2821, - "end": 2825, + "start": 2894, + "end": 2898, "loc": { "start": { - "line": 114, + "line": 118, "column": 30 }, "end": { - "line": 114, + "line": 118, "column": 34 } } }, "property": { "type": "Identifier", - "start": 2826, - "end": 2831, + "start": 2899, + "end": 2904, "loc": { "start": { - "line": 114, + "line": 118, "column": 35 }, "end": { - "line": 114, + "line": 118, "column": 40 }, "identifierName": "index" @@ -7884,57 +7704,57 @@ }, { "type": "ReturnStatement", - "start": 2841, - "end": 2883, + "start": 2914, + "end": 2956, "loc": { "start": { - "line": 116, + "line": 120, "column": 4 }, "end": { - "line": 116, + "line": 120, "column": 46 } }, "argument": { "type": "ConditionalExpression", - "start": 2848, - "end": 2882, + "start": 2921, + "end": 2955, "loc": { "start": { - "line": 116, + "line": 120, "column": 11 }, "end": { - "line": 116, + "line": 120, "column": 45 } }, "test": { "type": "BinaryExpression", - "start": 2848, - "end": 2867, + "start": 2921, + "end": 2940, "loc": { "start": { - "line": 116, + "line": 120, "column": 11 }, "end": { - "line": 116, + "line": 120, "column": 30 } }, "left": { "type": "Identifier", - "start": 2848, - "end": 2853, + "start": 2921, + "end": 2926, "loc": { "start": { - "line": 116, + "line": 120, "column": 11 }, "end": { - "line": 116, + "line": 120, "column": 16 }, "identifierName": "token" @@ -7944,15 +7764,15 @@ "operator": "!==", "right": { "type": "Identifier", - "start": 2858, - "end": 2867, + "start": 2931, + "end": 2940, "loc": { "start": { - "line": 116, + "line": 120, "column": 21 }, "end": { - "line": 116, + "line": 120, "column": 30 }, "identifierName": "undefined" @@ -7962,15 +7782,15 @@ }, "consequent": { "type": "Identifier", - "start": 2870, - "end": 2875, + "start": 2943, + "end": 2948, "loc": { "start": { - "line": 116, + "line": 120, "column": 33 }, "end": { - "line": 116, + "line": 120, "column": 38 }, "identifierName": "token" @@ -7979,15 +7799,15 @@ }, "alternate": { "type": "NullLiteral", - "start": 2878, - "end": 2882, + "start": 2951, + "end": 2955, "loc": { "start": { - "line": 116, + "line": 120, "column": 41 }, "end": { - "line": 116, + "line": 120, "column": 45 } } @@ -8000,15 +7820,15 @@ }, { "type": "ClassMethod", - "start": 2891, - "end": 3163, + "start": 2964, + "end": 3236, "loc": { "start": { - "line": 119, + "line": 123, "column": 2 }, "end": { - "line": 128, + "line": 132, "column": 3 } }, @@ -8016,15 +7836,15 @@ "computed": false, "key": { "type": "Identifier", - "start": 2891, - "end": 2910, + "start": 2964, + "end": 2983, "loc": { "start": { - "line": 119, + "line": 123, "column": 2 }, "end": { - "line": 119, + "line": 123, "column": 21 }, "identifierName": "__parserSyntaxError" @@ -8039,15 +7859,15 @@ "params": [ { "type": "Identifier", - "start": 2911, - "end": 2918, + "start": 2984, + "end": 2991, "loc": { "start": { - "line": 119, + "line": 123, "column": 22 }, "end": { - "line": 119, + "line": 123, "column": 29 }, "identifierName": "message" @@ -8057,59 +7877,59 @@ ], "body": { "type": "BlockStatement", - "start": 2920, - "end": 3163, + "start": 2993, + "end": 3236, "loc": { "start": { - "line": 119, + "line": 123, "column": 31 }, "end": { - "line": 128, + "line": 132, "column": 3 } }, "body": [ { "type": "VariableDeclaration", - "start": 2926, - "end": 2993, + "start": 2999, + "end": 3066, "loc": { "start": { - "line": 120, + "line": 124, "column": 4 }, "end": { - "line": 120, + "line": 124, "column": 71 } }, "declarations": [ { "type": "VariableDeclarator", - "start": 2930, - "end": 2992, + "start": 3003, + "end": 3065, "loc": { "start": { - "line": 120, + "line": 124, "column": 8 }, "end": { - "line": 120, + "line": 124, "column": 70 } }, "id": { "type": "Identifier", - "start": 2930, - "end": 2935, + "start": 3003, + "end": 3008, "loc": { "start": { - "line": 120, + "line": 124, "column": 8 }, "end": { - "line": 120, + "line": 124, "column": 13 }, "identifierName": "start" @@ -8118,58 +7938,58 @@ }, "init": { "type": "ConditionalExpression", - "start": 2938, - "end": 2992, + "start": 3011, + "end": 3065, "loc": { "start": { - "line": 120, + "line": 124, "column": 16 }, "end": { - "line": 120, + "line": 124, "column": 70 } }, "test": { "type": "MemberExpression", - "start": 2938, - "end": 2952, + "start": 3011, + "end": 3025, "loc": { "start": { - "line": 120, + "line": 124, "column": 16 }, "end": { - "line": 120, + "line": 124, "column": 30 } }, "object": { "type": "ThisExpression", - "start": 2938, - "end": 2942, + "start": 3011, + "end": 3015, "loc": { "start": { - "line": 120, + "line": 124, "column": 16 }, "end": { - "line": 120, + "line": 124, "column": 20 } } }, "property": { "type": "Identifier", - "start": 2943, - "end": 2952, + "start": 3016, + "end": 3025, "loc": { "start": { - "line": 120, + "line": 124, "column": 21 }, "end": { - "line": 120, + "line": 124, "column": 30 }, "identifierName": "lookahead" @@ -8180,58 +8000,58 @@ }, "consequent": { "type": "MemberExpression", - "start": 2955, - "end": 2975, + "start": 3028, + "end": 3048, "loc": { "start": { - "line": 120, + "line": 124, "column": 33 }, "end": { - "line": 120, + "line": 124, "column": 53 } }, "object": { "type": "MemberExpression", - "start": 2955, - "end": 2969, + "start": 3028, + "end": 3042, "loc": { "start": { - "line": 120, + "line": 124, "column": 33 }, "end": { - "line": 120, + "line": 124, "column": 47 } }, "object": { "type": "ThisExpression", - "start": 2955, - "end": 2959, + "start": 3028, + "end": 3032, "loc": { "start": { - "line": 120, + "line": 124, "column": 33 }, "end": { - "line": 120, + "line": 124, "column": 37 } } }, "property": { "type": "Identifier", - "start": 2960, - "end": 2969, + "start": 3033, + "end": 3042, "loc": { "start": { - "line": 120, + "line": 124, "column": 38 }, "end": { - "line": 120, + "line": 124, "column": 47 }, "identifierName": "lookahead" @@ -8242,15 +8062,15 @@ }, "property": { "type": "Identifier", - "start": 2970, - "end": 2975, + "start": 3043, + "end": 3048, "loc": { "start": { - "line": 120, + "line": 124, "column": 48 }, "end": { - "line": 120, + "line": 124, "column": 53 }, "identifierName": "start" @@ -8261,44 +8081,44 @@ }, "alternate": { "type": "MemberExpression", - "start": 2978, - "end": 2992, + "start": 3051, + "end": 3065, "loc": { "start": { - "line": 120, + "line": 124, "column": 56 }, "end": { - "line": 120, + "line": 124, "column": 70 } }, "object": { "type": "ThisExpression", - "start": 2978, - "end": 2982, + "start": 3051, + "end": 3055, "loc": { "start": { - "line": 120, + "line": 124, "column": 56 }, "end": { - "line": 120, + "line": 124, "column": 60 } } }, "property": { "type": "Identifier", - "start": 2983, - "end": 2992, + "start": 3056, + "end": 3065, "loc": { "start": { - "line": 120, + "line": 124, "column": 61 }, "end": { - "line": 120, + "line": 124, "column": 70 }, "identifierName": "lastIndex" @@ -8314,43 +8134,43 @@ }, { "type": "ReturnStatement", - "start": 2999, - "end": 3159, + "start": 3072, + "end": 3232, "loc": { "start": { - "line": 122, + "line": 126, "column": 4 }, "end": { - "line": 127, + "line": 131, "column": 6 } }, "argument": { "type": "NewExpression", - "start": 3006, - "end": 3158, + "start": 3079, + "end": 3231, "loc": { "start": { - "line": 122, + "line": 126, "column": 11 }, "end": { - "line": 127, + "line": 131, "column": 5 } }, "callee": { "type": "Identifier", - "start": 3010, - "end": 3021, + "start": 3083, + "end": 3094, "loc": { "start": { - "line": 122, + "line": 126, "column": 15 }, "end": { - "line": 122, + "line": 126, "column": 26 }, "identifierName": "SyntaxError" @@ -8360,59 +8180,59 @@ "arguments": [ { "type": "TemplateLiteral", - "start": 3029, - "end": 3152, + "start": 3102, + "end": 3225, "loc": { "start": { - "line": 123, + "line": 127, "column": 6 }, "end": { - "line": 126, + "line": 130, "column": 9 } }, "expressions": [ { "type": "MemberExpression", - "start": 3045, - "end": 3054, + "start": 3118, + "end": 3127, "loc": { "start": { - "line": 123, + "line": 127, "column": 22 }, "end": { - "line": 123, + "line": 127, "column": 31 } }, "object": { "type": "ThisExpression", - "start": 3045, - "end": 3049, + "start": 3118, + "end": 3122, "loc": { "start": { - "line": 123, + "line": 127, "column": 22 }, "end": { - "line": 123, + "line": 127, "column": 26 } } }, "property": { "type": "Identifier", - "start": 3050, - "end": 3054, + "start": 3123, + "end": 3127, "loc": { "start": { - "line": 123, + "line": 127, "column": 27 }, "end": { - "line": 123, + "line": 127, "column": 31 }, "identifierName": "line" @@ -8423,15 +8243,15 @@ }, { "type": "Identifier", - "start": 3063, - "end": 3068, + "start": 3136, + "end": 3141, "loc": { "start": { - "line": 123, + "line": 127, "column": 40 }, "end": { - "line": 123, + "line": 127, "column": 45 }, "identifierName": "start" @@ -8440,15 +8260,15 @@ }, { "type": "Identifier", - "start": 3073, - "end": 3080, + "start": 3146, + "end": 3153, "loc": { "start": { - "line": 123, + "line": 127, "column": 50 }, "end": { - "line": 123, + "line": 127, "column": 57 }, "identifierName": "message" @@ -8457,72 +8277,72 @@ }, { "type": "CallExpression", - "start": 3085, - "end": 3150, + "start": 3158, + "end": 3223, "loc": { "start": { - "line": 123, + "line": 127, "column": 62 }, "end": { - "line": 126, + "line": 130, "column": 7 } }, "callee": { "type": "MemberExpression", - "start": 3085, - "end": 3103, + "start": 3158, + "end": 3176, "loc": { "start": { - "line": 123, + "line": 127, "column": 62 }, "end": { - "line": 123, + "line": 127, "column": 80 } }, "object": { "type": "MemberExpression", - "start": 3085, - "end": 3097, + "start": 3158, + "end": 3170, "loc": { "start": { - "line": 123, + "line": 127, "column": 62 }, "end": { - "line": 123, + "line": 127, "column": 74 } }, "object": { "type": "ThisExpression", - "start": 3085, - "end": 3089, + "start": 3158, + "end": 3162, "loc": { "start": { - "line": 123, + "line": 127, "column": 62 }, "end": { - "line": 123, + "line": 127, "column": 66 } } }, "property": { "type": "Identifier", - "start": 3090, - "end": 3097, + "start": 3163, + "end": 3170, "loc": { "start": { - "line": 123, + "line": 127, "column": 67 }, "end": { - "line": 123, + "line": 127, "column": 74 }, "identifierName": "program" @@ -8533,15 +8353,15 @@ }, "property": { "type": "Identifier", - "start": 3098, - "end": 3103, + "start": 3171, + "end": 3176, "loc": { "start": { - "line": 123, + "line": 127, "column": 75 }, "end": { - "line": 123, + "line": 127, "column": 80 }, "identifierName": "slice" @@ -8553,29 +8373,29 @@ "arguments": [ { "type": "BinaryExpression", - "start": 3113, - "end": 3122, + "start": 3186, + "end": 3195, "loc": { "start": { - "line": 124, + "line": 128, "column": 8 }, "end": { - "line": 124, + "line": 128, "column": 17 } }, "left": { "type": "Identifier", - "start": 3113, - "end": 3118, + "start": 3186, + "end": 3191, "loc": { "start": { - "line": 124, + "line": 128, "column": 8 }, "end": { - "line": 124, + "line": 128, "column": 13 }, "identifierName": "start" @@ -8585,15 +8405,15 @@ "operator": "-", "right": { "type": "NumericLiteral", - "start": 3121, - "end": 3122, + "start": 3194, + "end": 3195, "loc": { "start": { - "line": 124, + "line": 128, "column": 16 }, "end": { - "line": 124, + "line": 128, "column": 17 } }, @@ -8606,29 +8426,29 @@ }, { "type": "BinaryExpression", - "start": 3132, - "end": 3142, + "start": 3205, + "end": 3215, "loc": { "start": { - "line": 125, + "line": 129, "column": 8 }, "end": { - "line": 125, + "line": 129, "column": 18 } }, "left": { "type": "Identifier", - "start": 3132, - "end": 3137, + "start": 3205, + "end": 3210, "loc": { "start": { - "line": 125, + "line": 129, "column": 8 }, "end": { - "line": 125, + "line": 129, "column": 13 }, "identifierName": "start" @@ -8638,15 +8458,15 @@ "operator": "+", "right": { "type": "NumericLiteral", - "start": 3140, - "end": 3142, + "start": 3213, + "end": 3215, "loc": { "start": { - "line": 125, + "line": 129, "column": 16 }, "end": { - "line": 125, + "line": 129, "column": 18 } }, @@ -8663,15 +8483,15 @@ "quasis": [ { "type": "TemplateElement", - "start": 3030, - "end": 3043, + "start": 3103, + "end": 3116, "loc": { "start": { - "line": 123, + "line": 127, "column": 7 }, "end": { - "line": 123, + "line": 127, "column": 20 } }, @@ -8683,15 +8503,15 @@ }, { "type": "TemplateElement", - "start": 3055, - "end": 3061, + "start": 3128, + "end": 3134, "loc": { "start": { - "line": 123, + "line": 127, "column": 32 }, "end": { - "line": 123, + "line": 127, "column": 38 } }, @@ -8703,15 +8523,15 @@ }, { "type": "TemplateElement", - "start": 3069, - "end": 3071, + "start": 3142, + "end": 3144, "loc": { "start": { - "line": 123, + "line": 127, "column": 46 }, "end": { - "line": 123, + "line": 127, "column": 48 } }, @@ -8723,15 +8543,15 @@ }, { "type": "TemplateElement", - "start": 3081, - "end": 3083, + "start": 3154, + "end": 3156, "loc": { "start": { - "line": 123, + "line": 127, "column": 58 }, "end": { - "line": 123, + "line": 127, "column": 60 } }, @@ -8743,15 +8563,15 @@ }, { "type": "TemplateElement", - "start": 3151, - "end": 3151, + "start": 3224, + "end": 3224, "loc": { "start": { - "line": 126, + "line": 130, "column": 8 }, "end": { - "line": 126, + "line": 130, "column": 8 } }, @@ -8772,46 +8592,99 @@ } ] }, - "leadingComments": [ + "leadingComments": [], + "name": "_", + "trailingComments": [] + }, + { + "type": "ExportNamedDeclaration", + "start": 3240, + "end": 3258, + "loc": { + "start": { + "line": 135, + "column": 0 + }, + "end": { + "line": 135, + "column": 18 + } + }, + "declaration": null, + "specifiers": [ { - "type": "CommentBlock", - "value": "*\n * Parser class. Iterates through the given string, tokenizes it and returns a AST tree.\n ", - "start": 136, - "end": 232, + "type": "ExportSpecifier", + "start": 3249, + "end": 3255, "loc": { "start": { - "line": 6, - "column": 0 + "line": 135, + "column": 9 }, "end": { - "line": 8, - "column": 3 + "line": 135, + "column": 15 } + }, + "local": { + "type": "Identifier", + "start": 3249, + "end": 3255, + "loc": { + "start": { + "line": 135, + "column": 9 + }, + "end": { + "line": 135, + "column": 15 + }, + "identifierName": "Parser" + }, + "name": "Parser" + }, + "exported": { + "type": "Identifier", + "start": 3249, + "end": 3255, + "loc": { + "start": { + "line": 135, + "column": 9 + }, + "end": { + "line": 135, + "column": 15 + }, + "identifierName": "Parser" + }, + "name": "Parser" } } - ] + ], + "source": null }, { - "type": "ExpressionStatement", - "start": 3167, - "end": 3197, + "type": "ExportNamedDeclaration", + "start": 3240, + "end": 3258, "loc": { "start": { - "line": 131, + "line": 135, "column": 0 }, "end": { - "line": 133, - "column": 2 + "line": 135, + "column": 18 } }, - "expression": { - "type": "AssignmentExpression", - "start": 3167, - "end": 3196, + "declaration": { + "type": "ClassDeclaration", + "start": 236, + "end": 3238, "loc": { "start": { - "line": 131, + "line": 10, "column": 0 }, "end": { @@ -8819,130 +8692,8174 @@ "column": 1 } }, - "operator": "=", - "left": { - "type": "MemberExpression", - "start": 3167, - "end": 3181, + "id": { + "type": "Identifier", + "start": 242, + "end": 248, "loc": { "start": { - "line": 131, - "column": 0 + "line": 10, + "column": 6 }, "end": { - "line": 131, - "column": 14 - } - }, - "object": { - "type": "Identifier", - "start": 3167, - "end": 3173, - "loc": { - "start": { - "line": 131, - "column": 0 - }, - "end": { - "line": 131, - "column": 6 - }, - "identifierName": "module" - }, - "name": "module" - }, - "property": { - "type": "Identifier", - "start": 3174, - "end": 3181, - "loc": { - "start": { - "line": 131, - "column": 7 - }, - "end": { - "line": 131, - "column": 14 - }, - "identifierName": "exports" + "line": 10, + "column": 12 }, - "name": "exports" + "identifierName": "Parser" }, - "computed": false + "name": "Parser", + "leadingComments": null }, - "right": { - "type": "ObjectExpression", - "start": 3184, - "end": 3196, + "superClass": null, + "body": { + "type": "ClassBody", + "start": 249, + "end": 3238, "loc": { "start": { - "line": 131, - "column": 17 + "line": 10, + "column": 13 }, "end": { "line": 133, "column": 1 } }, - "properties": [ + "body": [ { - "type": "ObjectProperty", - "start": 3188, - "end": 3194, + "type": "ClassMethod", + "start": 323, + "end": 411, "loc": { "start": { - "line": 132, + "line": 14, "column": 2 }, "end": { - "line": 132, - "column": 8 + "line": 18, + "column": 3 } }, - "method": false, - "shorthand": true, + "static": false, "computed": false, "key": { "type": "Identifier", - "start": 3188, - "end": 3194, + "start": 323, + "end": 334, "loc": { "start": { - "line": 132, + "line": 14, "column": 2 }, "end": { - "line": 132, - "column": 8 + "line": 14, + "column": 13 }, - "identifierName": "Parser" + "identifierName": "constructor" }, - "name": "Parser" + "name": "constructor", + "leadingComments": null }, - "value": { - "type": "Identifier", - "start": 3188, - "end": 3194, + "kind": "constructor", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [], + "body": { + "type": "BlockStatement", + "start": 337, + "end": 411, "loc": { "start": { - "line": 132, - "column": 2 + "line": 14, + "column": 16 }, "end": { - "line": 132, - "column": 8 - }, - "identifierName": "Parser" + "line": 18, + "column": 3 + } }, - "name": "Parser" - }, - "extra": { - "shorthand": true + "body": [ + { + "type": "ExpressionStatement", + "start": 343, + "end": 358, + "loc": { + "start": { + "line": 15, + "column": 4 + }, + "end": { + "line": 15, + "column": 19 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 343, + "end": 357, + "loc": { + "start": { + "line": 15, + "column": 4 + }, + "end": { + "line": 15, + "column": 18 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 343, + "end": 353, + "loc": { + "start": { + "line": 15, + "column": 4 + }, + "end": { + "line": 15, + "column": 14 + } + }, + "object": { + "type": "ThisExpression", + "start": 343, + "end": 347, + "loc": { + "start": { + "line": 15, + "column": 4 + }, + "end": { + "line": 15, + "column": 8 + } + } + }, + "property": { + "type": "Identifier", + "start": 348, + "end": 353, + "loc": { + "start": { + "line": 15, + "column": 9 + }, + "end": { + "line": 15, + "column": 14 + }, + "identifierName": "index" + }, + "name": "index" + }, + "computed": false + }, + "right": { + "type": "NumericLiteral", + "start": 356, + "end": 357, + "loc": { + "start": { + "line": 15, + "column": 17 + }, + "end": { + "line": 15, + "column": 18 + } + }, + "extra": { + "rawValue": 0, + "raw": "0" + }, + "value": 0 + } + } + }, + { + "type": "ExpressionStatement", + "start": 363, + "end": 380, + "loc": { + "start": { + "line": 16, + "column": 4 + }, + "end": { + "line": 16, + "column": 21 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 363, + "end": 379, + "loc": { + "start": { + "line": 16, + "column": 4 + }, + "end": { + "line": 16, + "column": 20 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 363, + "end": 374, + "loc": { + "start": { + "line": 16, + "column": 4 + }, + "end": { + "line": 16, + "column": 15 + } + }, + "object": { + "type": "ThisExpression", + "start": 363, + "end": 367, + "loc": { + "start": { + "line": 16, + "column": 4 + }, + "end": { + "line": 16, + "column": 8 + } + } + }, + "property": { + "type": "Identifier", + "start": 368, + "end": 374, + "loc": { + "start": { + "line": 16, + "column": 9 + }, + "end": { + "line": 16, + "column": 15 + }, + "identifierName": "tokens" + }, + "name": "tokens" + }, + "computed": false + }, + "right": { + "type": "ArrayExpression", + "start": 377, + "end": 379, + "loc": { + "start": { + "line": 16, + "column": 18 + }, + "end": { + "line": 16, + "column": 20 + } + }, + "elements": [] + } + } + }, + { + "type": "ExpressionStatement", + "start": 385, + "end": 407, + "loc": { + "start": { + "line": 17, + "column": 4 + }, + "end": { + "line": 17, + "column": 26 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 385, + "end": 406, + "loc": { + "start": { + "line": 17, + "column": 4 + }, + "end": { + "line": 17, + "column": 25 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 385, + "end": 399, + "loc": { + "start": { + "line": 17, + "column": 4 + }, + "end": { + "line": 17, + "column": 18 + } + }, + "object": { + "type": "ThisExpression", + "start": 385, + "end": 389, + "loc": { + "start": { + "line": 17, + "column": 4 + }, + "end": { + "line": 17, + "column": 8 + } + } + }, + "property": { + "type": "Identifier", + "start": 390, + "end": 399, + "loc": { + "start": { + "line": 17, + "column": 9 + }, + "end": { + "line": 17, + "column": 18 + }, + "identifierName": "lookahead" + }, + "name": "lookahead" + }, + "computed": false + }, + "right": { + "type": "NullLiteral", + "start": 402, + "end": 406, + "loc": { + "start": { + "line": 17, + "column": 21 + }, + "end": { + "line": 17, + "column": 25 + } + } + } + } + } + ], + "directives": [] + }, + "leadingComments": [ + { + "type": "CommentBlock", + "value": "*\n * Attributes used by the parser, set to default values\n ", + "start": 253, + "end": 320, + "loc": { + "start": { + "line": 11, + "column": 2 + }, + "end": { + "line": 13, + "column": 5 + } + } + } + ] + }, + { + "type": "ClassMethod", + "start": 415, + "end": 556, + "loc": { + "start": { + "line": 20, + "column": 2 + }, + "end": { + "line": 28, + "column": 3 + } + }, + "static": false, + "computed": false, + "key": { + "type": "Identifier", + "start": 415, + "end": 425, + "loc": { + "start": { + "line": 20, + "column": 2 + }, + "end": { + "line": 20, + "column": 12 + }, + "identifierName": "setProgram" + }, + "name": "setProgram" + }, + "kind": "method", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 426, + "end": 433, + "loc": { + "start": { + "line": 20, + "column": 13 + }, + "end": { + "line": 20, + "column": 20 + }, + "identifierName": "program" + }, + "name": "program" + } + ], + "body": { + "type": "BlockStatement", + "start": 435, + "end": 556, + "loc": { + "start": { + "line": 20, + "column": 22 + }, + "end": { + "line": 28, + "column": 3 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 441, + "end": 464, + "loc": { + "start": { + "line": 21, + "column": 4 + }, + "end": { + "line": 21, + "column": 27 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 441, + "end": 463, + "loc": { + "start": { + "line": 21, + "column": 4 + }, + "end": { + "line": 21, + "column": 26 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 441, + "end": 453, + "loc": { + "start": { + "line": 21, + "column": 4 + }, + "end": { + "line": 21, + "column": 16 + } + }, + "object": { + "type": "ThisExpression", + "start": 441, + "end": 445, + "loc": { + "start": { + "line": 21, + "column": 4 + }, + "end": { + "line": 21, + "column": 8 + } + } + }, + "property": { + "type": "Identifier", + "start": 446, + "end": 453, + "loc": { + "start": { + "line": 21, + "column": 9 + }, + "end": { + "line": 21, + "column": 16 + }, + "identifierName": "program" + }, + "name": "program" + }, + "computed": false + }, + "right": { + "type": "Identifier", + "start": 456, + "end": 463, + "loc": { + "start": { + "line": 21, + "column": 19 + }, + "end": { + "line": 21, + "column": 26 + }, + "identifierName": "program" + }, + "name": "program" + } + } + }, + { + "type": "ExpressionStatement", + "start": 470, + "end": 485, + "loc": { + "start": { + "line": 23, + "column": 4 + }, + "end": { + "line": 23, + "column": 19 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 470, + "end": 484, + "loc": { + "start": { + "line": 23, + "column": 4 + }, + "end": { + "line": 23, + "column": 18 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 470, + "end": 480, + "loc": { + "start": { + "line": 23, + "column": 4 + }, + "end": { + "line": 23, + "column": 14 + } + }, + "object": { + "type": "ThisExpression", + "start": 470, + "end": 474, + "loc": { + "start": { + "line": 23, + "column": 4 + }, + "end": { + "line": 23, + "column": 8 + } + } + }, + "property": { + "type": "Identifier", + "start": 475, + "end": 480, + "loc": { + "start": { + "line": 23, + "column": 9 + }, + "end": { + "line": 23, + "column": 14 + }, + "identifierName": "index" + }, + "name": "index" + }, + "computed": false + }, + "right": { + "type": "NumericLiteral", + "start": 483, + "end": 484, + "loc": { + "start": { + "line": 23, + "column": 17 + }, + "end": { + "line": 23, + "column": 18 + } + }, + "extra": { + "rawValue": 0, + "raw": "0" + }, + "value": 0 + } + } + }, + { + "type": "ExpressionStatement", + "start": 490, + "end": 507, + "loc": { + "start": { + "line": 24, + "column": 4 + }, + "end": { + "line": 24, + "column": 21 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 490, + "end": 506, + "loc": { + "start": { + "line": 24, + "column": 4 + }, + "end": { + "line": 24, + "column": 20 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 490, + "end": 501, + "loc": { + "start": { + "line": 24, + "column": 4 + }, + "end": { + "line": 24, + "column": 15 + } + }, + "object": { + "type": "ThisExpression", + "start": 490, + "end": 494, + "loc": { + "start": { + "line": 24, + "column": 4 + }, + "end": { + "line": 24, + "column": 8 + } + } + }, + "property": { + "type": "Identifier", + "start": 495, + "end": 501, + "loc": { + "start": { + "line": 24, + "column": 9 + }, + "end": { + "line": 24, + "column": 15 + }, + "identifierName": "tokens" + }, + "name": "tokens" + }, + "computed": false + }, + "right": { + "type": "ArrayExpression", + "start": 504, + "end": 506, + "loc": { + "start": { + "line": 24, + "column": 18 + }, + "end": { + "line": 24, + "column": 20 + } + }, + "elements": [] + } + } + }, + { + "type": "ExpressionStatement", + "start": 512, + "end": 534, + "loc": { + "start": { + "line": 25, + "column": 4 + }, + "end": { + "line": 25, + "column": 26 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 512, + "end": 533, + "loc": { + "start": { + "line": 25, + "column": 4 + }, + "end": { + "line": 25, + "column": 25 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 512, + "end": 526, + "loc": { + "start": { + "line": 25, + "column": 4 + }, + "end": { + "line": 25, + "column": 18 + } + }, + "object": { + "type": "ThisExpression", + "start": 512, + "end": 516, + "loc": { + "start": { + "line": 25, + "column": 4 + }, + "end": { + "line": 25, + "column": 8 + } + } + }, + "property": { + "type": "Identifier", + "start": 517, + "end": 526, + "loc": { + "start": { + "line": 25, + "column": 9 + }, + "end": { + "line": 25, + "column": 18 + }, + "identifierName": "lookahead" + }, + "name": "lookahead" + }, + "computed": false + }, + "right": { + "type": "NullLiteral", + "start": 529, + "end": 533, + "loc": { + "start": { + "line": 25, + "column": 21 + }, + "end": { + "line": 25, + "column": 25 + } + } + } + } + }, + { + "type": "ReturnStatement", + "start": 540, + "end": 552, + "loc": { + "start": { + "line": 27, + "column": 4 + }, + "end": { + "line": 27, + "column": 16 + } + }, + "argument": { + "type": "ThisExpression", + "start": 547, + "end": 551, + "loc": { + "start": { + "line": 27, + "column": 11 + }, + "end": { + "line": 27, + "column": 15 + } + } + } + } + ], + "directives": [] + } + }, + { + "type": "ClassMethod", + "start": 560, + "end": 1004, + "loc": { + "start": { + "line": 30, + "column": 2 + }, + "end": { + "line": 49, + "column": 3 + } + }, + "static": false, + "computed": false, + "key": { + "type": "Identifier", + "start": 560, + "end": 565, + "loc": { + "start": { + "line": 30, + "column": 2 + }, + "end": { + "line": 30, + "column": 7 + }, + "identifierName": "parse" + }, + "name": "parse" + }, + "kind": "method", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 566, + "end": 573, + "loc": { + "start": { + "line": 30, + "column": 8 + }, + "end": { + "line": 30, + "column": 15 + }, + "identifierName": "program" + }, + "name": "program" + } + ], + "body": { + "type": "BlockStatement", + "start": 575, + "end": 1004, + "loc": { + "start": { + "line": 30, + "column": 17 + }, + "end": { + "line": 49, + "column": 3 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 581, + "end": 606, + "loc": { + "start": { + "line": 31, + "column": 4 + }, + "end": { + "line": 31, + "column": 29 + } + }, + "expression": { + "type": "CallExpression", + "start": 581, + "end": 605, + "loc": { + "start": { + "line": 31, + "column": 4 + }, + "end": { + "line": 31, + "column": 28 + } + }, + "callee": { + "type": "MemberExpression", + "start": 581, + "end": 596, + "loc": { + "start": { + "line": 31, + "column": 4 + }, + "end": { + "line": 31, + "column": 19 + } + }, + "object": { + "type": "ThisExpression", + "start": 581, + "end": 585, + "loc": { + "start": { + "line": 31, + "column": 4 + }, + "end": { + "line": 31, + "column": 8 + } + } + }, + "property": { + "type": "Identifier", + "start": 586, + "end": 596, + "loc": { + "start": { + "line": 31, + "column": 9 + }, + "end": { + "line": 31, + "column": 19 + }, + "identifierName": "setProgram" + }, + "name": "setProgram" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 597, + "end": 604, + "loc": { + "start": { + "line": 31, + "column": 20 + }, + "end": { + "line": 31, + "column": 27 + }, + "identifierName": "program" + }, + "name": "program" + } + ] + }, + "trailingComments": [ + { + "type": "CommentLine", + "value": " Get array of tokens", + "start": 612, + "end": 634, + "loc": { + "start": { + "line": 33, + "column": 4 + }, + "end": { + "line": 33, + "column": 26 + } + } + } + ] + }, + { + "type": "ExpressionStatement", + "start": 639, + "end": 677, + "loc": { + "start": { + "line": 34, + "column": 4 + }, + "end": { + "line": 34, + "column": 42 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 639, + "end": 676, + "loc": { + "start": { + "line": 34, + "column": 4 + }, + "end": { + "line": 34, + "column": 41 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 639, + "end": 650, + "loc": { + "start": { + "line": 34, + "column": 4 + }, + "end": { + "line": 34, + "column": 15 + } + }, + "object": { + "type": "ThisExpression", + "start": 639, + "end": 643, + "loc": { + "start": { + "line": 34, + "column": 4 + }, + "end": { + "line": 34, + "column": 8 + } + }, + "leadingComments": null + }, + "property": { + "type": "Identifier", + "start": 644, + "end": 650, + "loc": { + "start": { + "line": 34, + "column": 9 + }, + "end": { + "line": 34, + "column": 15 + }, + "identifierName": "tokens" + }, + "name": "tokens" + }, + "computed": false, + "leadingComments": null + }, + "right": { + "type": "CallExpression", + "start": 653, + "end": 676, + "loc": { + "start": { + "line": 34, + "column": 18 + }, + "end": { + "line": 34, + "column": 41 + } + }, + "callee": { + "type": "MemberExpression", + "start": 653, + "end": 667, + "loc": { + "start": { + "line": 34, + "column": 18 + }, + "end": { + "line": 34, + "column": 32 + } + }, + "object": { + "type": "Identifier", + "start": 653, + "end": 658, + "loc": { + "start": { + "line": 34, + "column": 18 + }, + "end": { + "line": 34, + "column": 23 + }, + "identifierName": "Lexer" + }, + "name": "Lexer" + }, + "property": { + "type": "Identifier", + "start": 659, + "end": 667, + "loc": { + "start": { + "line": 34, + "column": 24 + }, + "end": { + "line": 34, + "column": 32 + }, + "identifierName": "tokenize" + }, + "name": "tokenize" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 668, + "end": 675, + "loc": { + "start": { + "line": 34, + "column": 33 + }, + "end": { + "line": 34, + "column": 40 + }, + "identifierName": "program" + }, + "name": "program" + } + ] + }, + "leadingComments": null + }, + "leadingComments": [ + { + "type": "CommentLine", + "value": " Get array of tokens", + "start": 612, + "end": 634, + "loc": { + "start": { + "line": 33, + "column": 4 + }, + "end": { + "line": 33, + "column": 26 + } + } + } + ] + }, + { + "type": "VariableDeclaration", + "start": 683, + "end": 699, + "loc": { + "start": { + "line": 36, + "column": 4 + }, + "end": { + "line": 36, + "column": 20 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 687, + "end": 698, + "loc": { + "start": { + "line": 36, + "column": 8 + }, + "end": { + "line": 36, + "column": 19 + } + }, + "id": { + "type": "Identifier", + "start": 687, + "end": 691, + "loc": { + "start": { + "line": 36, + "column": 8 + }, + "end": { + "line": 36, + "column": 12 + }, + "identifierName": "tree" + }, + "name": "tree" + }, + "init": { + "type": "NullLiteral", + "start": 694, + "end": 698, + "loc": { + "start": { + "line": 36, + "column": 15 + }, + "end": { + "line": 36, + "column": 19 + } + } + } + } + ], + "kind": "let", + "trailingComments": [ + { + "type": "CommentLine", + "value": " Parse if the array is not empty", + "start": 705, + "end": 739, + "loc": { + "start": { + "line": 38, + "column": 4 + }, + "end": { + "line": 38, + "column": 38 + } + } + } + ] + }, + { + "type": "IfStatement", + "start": 744, + "end": 859, + "loc": { + "start": { + "line": 39, + "column": 4 + }, + "end": { + "line": 42, + "column": 5 + } + }, + "test": { + "type": "BinaryExpression", + "start": 748, + "end": 770, + "loc": { + "start": { + "line": 39, + "column": 8 + }, + "end": { + "line": 39, + "column": 30 + } + }, + "left": { + "type": "MemberExpression", + "start": 748, + "end": 766, + "loc": { + "start": { + "line": 39, + "column": 8 + }, + "end": { + "line": 39, + "column": 26 + } + }, + "object": { + "type": "MemberExpression", + "start": 748, + "end": 759, + "loc": { + "start": { + "line": 39, + "column": 8 + }, + "end": { + "line": 39, + "column": 19 + } + }, + "object": { + "type": "ThisExpression", + "start": 748, + "end": 752, + "loc": { + "start": { + "line": 39, + "column": 8 + }, + "end": { + "line": 39, + "column": 12 + } + }, + "leadingComments": null + }, + "property": { + "type": "Identifier", + "start": 753, + "end": 759, + "loc": { + "start": { + "line": 39, + "column": 13 + }, + "end": { + "line": 39, + "column": 19 + }, + "identifierName": "tokens" + }, + "name": "tokens" + }, + "computed": false, + "leadingComments": null + }, + "property": { + "type": "Identifier", + "start": 760, + "end": 766, + "loc": { + "start": { + "line": 39, + "column": 20 + }, + "end": { + "line": 39, + "column": 26 + }, + "identifierName": "length" + }, + "name": "length" + }, + "computed": false, + "leadingComments": null + }, + "operator": ">", + "right": { + "type": "NumericLiteral", + "start": 769, + "end": 770, + "loc": { + "start": { + "line": 39, + "column": 29 + }, + "end": { + "line": 39, + "column": 30 + } + }, + "extra": { + "rawValue": 0, + "raw": "0" + }, + "value": 0 + }, + "leadingComments": null + }, + "consequent": { + "type": "BlockStatement", + "start": 772, + "end": 859, + "loc": { + "start": { + "line": 39, + "column": 32 + }, + "end": { + "line": 42, + "column": 5 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 780, + "end": 816, + "loc": { + "start": { + "line": 40, + "column": 6 + }, + "end": { + "line": 40, + "column": 42 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 780, + "end": 815, + "loc": { + "start": { + "line": 40, + "column": 6 + }, + "end": { + "line": 40, + "column": 41 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 780, + "end": 794, + "loc": { + "start": { + "line": 40, + "column": 6 + }, + "end": { + "line": 40, + "column": 20 + } + }, + "object": { + "type": "ThisExpression", + "start": 780, + "end": 784, + "loc": { + "start": { + "line": 40, + "column": 6 + }, + "end": { + "line": 40, + "column": 10 + } + } + }, + "property": { + "type": "Identifier", + "start": 785, + "end": 794, + "loc": { + "start": { + "line": 40, + "column": 11 + }, + "end": { + "line": 40, + "column": 20 + }, + "identifierName": "lookahead" + }, + "name": "lookahead" + }, + "computed": false + }, + "right": { + "type": "CallExpression", + "start": 797, + "end": 815, + "loc": { + "start": { + "line": 40, + "column": 23 + }, + "end": { + "line": 40, + "column": 41 + } + }, + "callee": { + "type": "MemberExpression", + "start": 797, + "end": 813, + "loc": { + "start": { + "line": 40, + "column": 23 + }, + "end": { + "line": 40, + "column": 39 + } + }, + "object": { + "type": "ThisExpression", + "start": 797, + "end": 801, + "loc": { + "start": { + "line": 40, + "column": 23 + }, + "end": { + "line": 40, + "column": 27 + } + } + }, + "property": { + "type": "Identifier", + "start": 802, + "end": 813, + "loc": { + "start": { + "line": 40, + "column": 28 + }, + "end": { + "line": 40, + "column": 39 + }, + "identifierName": "__nextToken" + }, + "name": "__nextToken" + }, + "computed": false + }, + "arguments": [] + } + } + }, + { + "type": "ExpressionStatement", + "start": 823, + "end": 853, + "loc": { + "start": { + "line": 41, + "column": 6 + }, + "end": { + "line": 41, + "column": 36 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 823, + "end": 852, + "loc": { + "start": { + "line": 41, + "column": 6 + }, + "end": { + "line": 41, + "column": 35 + } + }, + "operator": "=", + "left": { + "type": "Identifier", + "start": 823, + "end": 827, + "loc": { + "start": { + "line": 41, + "column": 6 + }, + "end": { + "line": 41, + "column": 10 + }, + "identifierName": "tree" + }, + "name": "tree" + }, + "right": { + "type": "CallExpression", + "start": 830, + "end": 852, + "loc": { + "start": { + "line": 41, + "column": 13 + }, + "end": { + "line": 41, + "column": 35 + } + }, + "callee": { + "type": "MemberExpression", + "start": 830, + "end": 850, + "loc": { + "start": { + "line": 41, + "column": 13 + }, + "end": { + "line": 41, + "column": 33 + } + }, + "object": { + "type": "ThisExpression", + "start": 830, + "end": 834, + "loc": { + "start": { + "line": 41, + "column": 13 + }, + "end": { + "line": 41, + "column": 17 + } + } + }, + "property": { + "type": "Identifier", + "start": 835, + "end": 850, + "loc": { + "start": { + "line": 41, + "column": 18 + }, + "end": { + "line": 41, + "column": 33 + }, + "identifierName": "parseExpression" + }, + "name": "parseExpression" + }, + "computed": false + }, + "arguments": [] + } + } + } + ], + "directives": [] + }, + "alternate": null, + "leadingComments": [ + { + "type": "CommentLine", + "value": " Parse if the array is not empty", + "start": 705, + "end": 739, + "loc": { + "start": { + "line": 38, + "column": 4 + }, + "end": { + "line": 38, + "column": 38 + } + } + } + ] + }, + { + "type": "IfStatement", + "start": 865, + "end": 982, + "loc": { + "start": { + "line": 44, + "column": 4 + }, + "end": { + "line": 46, + "column": 5 + } + }, + "test": { + "type": "BinaryExpression", + "start": 869, + "end": 892, + "loc": { + "start": { + "line": 44, + "column": 8 + }, + "end": { + "line": 44, + "column": 31 + } + }, + "left": { + "type": "MemberExpression", + "start": 869, + "end": 883, + "loc": { + "start": { + "line": 44, + "column": 8 + }, + "end": { + "line": 44, + "column": 22 + } + }, + "object": { + "type": "ThisExpression", + "start": 869, + "end": 873, + "loc": { + "start": { + "line": 44, + "column": 8 + }, + "end": { + "line": 44, + "column": 12 + } + } + }, + "property": { + "type": "Identifier", + "start": 874, + "end": 883, + "loc": { + "start": { + "line": 44, + "column": 13 + }, + "end": { + "line": 44, + "column": 22 + }, + "identifierName": "lookahead" + }, + "name": "lookahead" + }, + "computed": false + }, + "operator": "!==", + "right": { + "type": "NullLiteral", + "start": 888, + "end": 892, + "loc": { + "start": { + "line": 44, + "column": 27 + }, + "end": { + "line": 44, + "column": 31 + } + } + } + }, + "consequent": { + "type": "BlockStatement", + "start": 894, + "end": 982, + "loc": { + "start": { + "line": 44, + "column": 33 + }, + "end": { + "line": 46, + "column": 5 + } + }, + "body": [ + { + "type": "ThrowStatement", + "start": 902, + "end": 976, + "loc": { + "start": { + "line": 45, + "column": 6 + }, + "end": { + "line": 45, + "column": 80 + } + }, + "argument": { + "type": "CallExpression", + "start": 908, + "end": 975, + "loc": { + "start": { + "line": 45, + "column": 12 + }, + "end": { + "line": 45, + "column": 79 + } + }, + "callee": { + "type": "MemberExpression", + "start": 908, + "end": 932, + "loc": { + "start": { + "line": 45, + "column": 12 + }, + "end": { + "line": 45, + "column": 36 + } + }, + "object": { + "type": "ThisExpression", + "start": 908, + "end": 912, + "loc": { + "start": { + "line": 45, + "column": 12 + }, + "end": { + "line": 45, + "column": 16 + } + } + }, + "property": { + "type": "Identifier", + "start": 913, + "end": 932, + "loc": { + "start": { + "line": 45, + "column": 17 + }, + "end": { + "line": 45, + "column": 36 + }, + "identifierName": "__parserSyntaxError" + }, + "name": "__parserSyntaxError" + }, + "computed": false + }, + "arguments": [ + { + "type": "StringLiteral", + "start": 933, + "end": 974, + "loc": { + "start": { + "line": 45, + "column": 37 + }, + "end": { + "line": 45, + "column": 78 + } + }, + "extra": { + "rawValue": "Unexpected input after the end of file.", + "raw": "\"Unexpected input after the end of file.\"" + }, + "value": "Unexpected input after the end of file." + } + ] + } + } + ], + "directives": [] + }, + "alternate": null + }, + { + "type": "ReturnStatement", + "start": 988, + "end": 1000, + "loc": { + "start": { + "line": 48, + "column": 4 + }, + "end": { + "line": 48, + "column": 16 + } + }, + "argument": { + "type": "Identifier", + "start": 995, + "end": 999, + "loc": { + "start": { + "line": 48, + "column": 11 + }, + "end": { + "line": 48, + "column": 15 + }, + "identifierName": "tree" + }, + "name": "tree" + } + } + ], + "directives": [] + } + }, + { + "type": "ClassMethod", + "start": 1008, + "end": 1075, + "loc": { + "start": { + "line": 51, + "column": 2 + }, + "end": { + "line": 53, + "column": 3 + } + }, + "static": true, + "computed": false, + "key": { + "type": "Identifier", + "start": 1015, + "end": 1020, + "loc": { + "start": { + "line": 51, + "column": 9 + }, + "end": { + "line": 51, + "column": 14 + }, + "identifierName": "parse" + }, + "name": "parse" + }, + "kind": "method", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 1021, + "end": 1028, + "loc": { + "start": { + "line": 51, + "column": 15 + }, + "end": { + "line": 51, + "column": 22 + }, + "identifierName": "program" + }, + "name": "program" + } + ], + "body": { + "type": "BlockStatement", + "start": 1030, + "end": 1075, + "loc": { + "start": { + "line": 51, + "column": 24 + }, + "end": { + "line": 53, + "column": 3 + } + }, + "body": [ + { + "type": "ReturnStatement", + "start": 1036, + "end": 1071, + "loc": { + "start": { + "line": 52, + "column": 4 + }, + "end": { + "line": 52, + "column": 39 + } + }, + "argument": { + "type": "CallExpression", + "start": 1043, + "end": 1070, + "loc": { + "start": { + "line": 52, + "column": 11 + }, + "end": { + "line": 52, + "column": 38 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1043, + "end": 1061, + "loc": { + "start": { + "line": 52, + "column": 11 + }, + "end": { + "line": 52, + "column": 29 + } + }, + "object": { + "type": "NewExpression", + "start": 1043, + "end": 1055, + "loc": { + "start": { + "line": 52, + "column": 11 + }, + "end": { + "line": 52, + "column": 23 + } + }, + "callee": { + "type": "Identifier", + "start": 1047, + "end": 1053, + "loc": { + "start": { + "line": 52, + "column": 15 + }, + "end": { + "line": 52, + "column": 21 + }, + "identifierName": "Parser" + }, + "name": "Parser" + }, + "arguments": [] + }, + "property": { + "type": "Identifier", + "start": 1056, + "end": 1061, + "loc": { + "start": { + "line": 52, + "column": 24 + }, + "end": { + "line": 52, + "column": 29 + }, + "identifierName": "parse" + }, + "name": "parse" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 1062, + "end": 1069, + "loc": { + "start": { + "line": 52, + "column": 30 + }, + "end": { + "line": 52, + "column": 37 + }, + "identifierName": "program" + }, + "name": "program" + } + ] + } + } + ], + "directives": [] + } + }, + { + "type": "ClassMethod", + "start": 1079, + "end": 1188, + "loc": { + "start": { + "line": 55, + "column": 2 + }, + "end": { + "line": 59, + "column": 3 + } + }, + "static": false, + "computed": false, + "key": { + "type": "Identifier", + "start": 1079, + "end": 1092, + "loc": { + "start": { + "line": 55, + "column": 2 + }, + "end": { + "line": 55, + "column": 15 + }, + "identifierName": "parseFromFile" + }, + "name": "parseFromFile" + }, + "kind": "method", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 1093, + "end": 1097, + "loc": { + "start": { + "line": 55, + "column": 16 + }, + "end": { + "line": 55, + "column": 20 + }, + "identifierName": "file" + }, + "name": "file" + } + ], + "body": { + "type": "BlockStatement", + "start": 1099, + "end": 1188, + "loc": { + "start": { + "line": 55, + "column": 22 + }, + "end": { + "line": 59, + "column": 3 + } + }, + "body": [ + { + "type": "VariableDeclaration", + "start": 1105, + "end": 1151, + "loc": { + "start": { + "line": 56, + "column": 4 + }, + "end": { + "line": 56, + "column": 50 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 1111, + "end": 1150, + "loc": { + "start": { + "line": 56, + "column": 10 + }, + "end": { + "line": 56, + "column": 49 + } + }, + "id": { + "type": "Identifier", + "start": 1111, + "end": 1118, + "loc": { + "start": { + "line": 56, + "column": 10 + }, + "end": { + "line": 56, + "column": 17 + }, + "identifierName": "program" + }, + "name": "program" + }, + "init": { + "type": "CallExpression", + "start": 1121, + "end": 1150, + "loc": { + "start": { + "line": 56, + "column": 20 + }, + "end": { + "line": 56, + "column": 49 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1121, + "end": 1136, + "loc": { + "start": { + "line": 56, + "column": 20 + }, + "end": { + "line": 56, + "column": 35 + } + }, + "object": { + "type": "Identifier", + "start": 1121, + "end": 1123, + "loc": { + "start": { + "line": 56, + "column": 20 + }, + "end": { + "line": 56, + "column": 22 + }, + "identifierName": "fs" + }, + "name": "fs" + }, + "property": { + "type": "Identifier", + "start": 1124, + "end": 1136, + "loc": { + "start": { + "line": 56, + "column": 23 + }, + "end": { + "line": 56, + "column": 35 + }, + "identifierName": "readFileSync" + }, + "name": "readFileSync" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 1137, + "end": 1141, + "loc": { + "start": { + "line": 56, + "column": 36 + }, + "end": { + "line": 56, + "column": 40 + }, + "identifierName": "file" + }, + "name": "file" + }, + { + "type": "StringLiteral", + "start": 1143, + "end": 1149, + "loc": { + "start": { + "line": 56, + "column": 42 + }, + "end": { + "line": 56, + "column": 48 + } + }, + "extra": { + "rawValue": "utf8", + "raw": "\"utf8\"" + }, + "value": "utf8" + } + ] + } + } + ], + "kind": "const" + }, + { + "type": "ReturnStatement", + "start": 1157, + "end": 1184, + "loc": { + "start": { + "line": 58, + "column": 4 + }, + "end": { + "line": 58, + "column": 31 + } + }, + "argument": { + "type": "CallExpression", + "start": 1164, + "end": 1183, + "loc": { + "start": { + "line": 58, + "column": 11 + }, + "end": { + "line": 58, + "column": 30 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1164, + "end": 1174, + "loc": { + "start": { + "line": 58, + "column": 11 + }, + "end": { + "line": 58, + "column": 21 + } + }, + "object": { + "type": "ThisExpression", + "start": 1164, + "end": 1168, + "loc": { + "start": { + "line": 58, + "column": 11 + }, + "end": { + "line": 58, + "column": 15 + } + } + }, + "property": { + "type": "Identifier", + "start": 1169, + "end": 1174, + "loc": { + "start": { + "line": 58, + "column": 16 + }, + "end": { + "line": 58, + "column": 21 + }, + "identifierName": "parse" + }, + "name": "parse" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 1175, + "end": 1182, + "loc": { + "start": { + "line": 58, + "column": 22 + }, + "end": { + "line": 58, + "column": 29 + }, + "identifierName": "program" + }, + "name": "program" + } + ] + } + } + ], + "directives": [] + } + }, + { + "type": "ClassMethod", + "start": 1192, + "end": 1269, + "loc": { + "start": { + "line": 61, + "column": 2 + }, + "end": { + "line": 63, + "column": 3 + } + }, + "static": true, + "computed": false, + "key": { + "type": "Identifier", + "start": 1199, + "end": 1212, + "loc": { + "start": { + "line": 61, + "column": 9 + }, + "end": { + "line": 61, + "column": 22 + }, + "identifierName": "parseFromFile" + }, + "name": "parseFromFile" + }, + "kind": "method", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 1213, + "end": 1217, + "loc": { + "start": { + "line": 61, + "column": 23 + }, + "end": { + "line": 61, + "column": 27 + }, + "identifierName": "file" + }, + "name": "file" + } + ], + "body": { + "type": "BlockStatement", + "start": 1219, + "end": 1269, + "loc": { + "start": { + "line": 61, + "column": 29 + }, + "end": { + "line": 63, + "column": 3 + } + }, + "body": [ + { + "type": "ReturnStatement", + "start": 1225, + "end": 1265, + "loc": { + "start": { + "line": 62, + "column": 4 + }, + "end": { + "line": 62, + "column": 44 + } + }, + "argument": { + "type": "CallExpression", + "start": 1232, + "end": 1264, + "loc": { + "start": { + "line": 62, + "column": 11 + }, + "end": { + "line": 62, + "column": 43 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1232, + "end": 1258, + "loc": { + "start": { + "line": 62, + "column": 11 + }, + "end": { + "line": 62, + "column": 37 + } + }, + "object": { + "type": "NewExpression", + "start": 1232, + "end": 1244, + "loc": { + "start": { + "line": 62, + "column": 11 + }, + "end": { + "line": 62, + "column": 23 + } + }, + "callee": { + "type": "Identifier", + "start": 1236, + "end": 1242, + "loc": { + "start": { + "line": 62, + "column": 15 + }, + "end": { + "line": 62, + "column": 21 + }, + "identifierName": "Parser" + }, + "name": "Parser" + }, + "arguments": [] + }, + "property": { + "type": "Identifier", + "start": 1245, + "end": 1258, + "loc": { + "start": { + "line": 62, + "column": 24 + }, + "end": { + "line": 62, + "column": 37 + }, + "identifierName": "parseFromFile" + }, + "name": "parseFromFile" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 1259, + "end": 1263, + "loc": { + "start": { + "line": 62, + "column": 38 + }, + "end": { + "line": 62, + "column": 42 + }, + "identifierName": "file" + }, + "name": "file" + } + ] + } + } + ], + "directives": [] + } + }, + { + "type": "ClassMethod", + "start": 1273, + "end": 1943, + "loc": { + "start": { + "line": 65, + "column": 2 + }, + "end": { + "line": 82, + "column": 3 + } + }, + "static": false, + "computed": false, + "key": { + "type": "Identifier", + "start": 1273, + "end": 1288, + "loc": { + "start": { + "line": 65, + "column": 2 + }, + "end": { + "line": 65, + "column": 17 + }, + "identifierName": "parseExpression" + }, + "name": "parseExpression" + }, + "kind": "method", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [], + "body": { + "type": "BlockStatement", + "start": 1291, + "end": 1943, + "loc": { + "start": { + "line": 65, + "column": 20 + }, + "end": { + "line": 82, + "column": 3 + } + }, + "body": [ + { + "type": "VariableDeclaration", + "start": 1297, + "end": 1306, + "loc": { + "start": { + "line": 66, + "column": 4 + }, + "end": { + "line": 66, + "column": 13 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 1301, + "end": 1305, + "loc": { + "start": { + "line": 66, + "column": 8 + }, + "end": { + "line": 66, + "column": 12 + } + }, + "id": { + "type": "Identifier", + "start": 1301, + "end": 1305, + "loc": { + "start": { + "line": 66, + "column": 8 + }, + "end": { + "line": 66, + "column": 12 + }, + "identifierName": "expr" + }, + "name": "expr" + }, + "init": null + } + ], + "kind": "let" + }, + { + "type": "IfStatement", + "start": 1311, + "end": 1904, + "loc": { + "start": { + "line": 67, + "column": 4 + }, + "end": { + "line": 79, + "column": 5 + } + }, + "test": { + "type": "BinaryExpression", + "start": 1315, + "end": 1347, + "loc": { + "start": { + "line": 67, + "column": 8 + }, + "end": { + "line": 67, + "column": 40 + } + }, + "left": { + "type": "MemberExpression", + "start": 1315, + "end": 1334, + "loc": { + "start": { + "line": 67, + "column": 8 + }, + "end": { + "line": 67, + "column": 27 + } + }, + "object": { + "type": "MemberExpression", + "start": 1315, + "end": 1329, + "loc": { + "start": { + "line": 67, + "column": 8 + }, + "end": { + "line": 67, + "column": 22 + } + }, + "object": { + "type": "ThisExpression", + "start": 1315, + "end": 1319, + "loc": { + "start": { + "line": 67, + "column": 8 + }, + "end": { + "line": 67, + "column": 12 + } + } + }, + "property": { + "type": "Identifier", + "start": 1320, + "end": 1329, + "loc": { + "start": { + "line": 67, + "column": 13 + }, + "end": { + "line": 67, + "column": 22 + }, + "identifierName": "lookahead" + }, + "name": "lookahead" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 1330, + "end": 1334, + "loc": { + "start": { + "line": 67, + "column": 23 + }, + "end": { + "line": 67, + "column": 27 + }, + "identifierName": "type" + }, + "name": "type" + }, + "computed": false + }, + "operator": "===", + "right": { + "type": "StringLiteral", + "start": 1339, + "end": 1347, + "loc": { + "start": { + "line": 67, + "column": 32 + }, + "end": { + "line": 67, + "column": 40 + } + }, + "extra": { + "rawValue": "STRING", + "raw": "\"STRING\"" + }, + "value": "STRING" + } + }, + "consequent": { + "type": "BlockStatement", + "start": 1349, + "end": 1396, + "loc": { + "start": { + "line": 67, + "column": 42 + }, + "end": { + "line": 69, + "column": 5 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 1357, + "end": 1390, + "loc": { + "start": { + "line": 68, + "column": 6 + }, + "end": { + "line": 68, + "column": 39 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 1357, + "end": 1389, + "loc": { + "start": { + "line": 68, + "column": 6 + }, + "end": { + "line": 68, + "column": 38 + } + }, + "operator": "=", + "left": { + "type": "Identifier", + "start": 1357, + "end": 1361, + "loc": { + "start": { + "line": 68, + "column": 6 + }, + "end": { + "line": 68, + "column": 10 + }, + "identifierName": "expr" + }, + "name": "expr" + }, + "right": { + "type": "NewExpression", + "start": 1364, + "end": 1389, + "loc": { + "start": { + "line": 68, + "column": 13 + }, + "end": { + "line": 68, + "column": 38 + } + }, + "callee": { + "type": "Identifier", + "start": 1368, + "end": 1373, + "loc": { + "start": { + "line": 68, + "column": 17 + }, + "end": { + "line": 68, + "column": 22 + }, + "identifierName": "Value" + }, + "name": "Value" + }, + "arguments": [ + { + "type": "MemberExpression", + "start": 1374, + "end": 1388, + "loc": { + "start": { + "line": 68, + "column": 23 + }, + "end": { + "line": 68, + "column": 37 + } + }, + "object": { + "type": "ThisExpression", + "start": 1374, + "end": 1378, + "loc": { + "start": { + "line": 68, + "column": 23 + }, + "end": { + "line": 68, + "column": 27 + } + } + }, + "property": { + "type": "Identifier", + "start": 1379, + "end": 1388, + "loc": { + "start": { + "line": 68, + "column": 28 + }, + "end": { + "line": 68, + "column": 37 + }, + "identifierName": "lookahead" + }, + "name": "lookahead" + }, + "computed": false + } + ] + } + } + } + ], + "directives": [] + }, + "alternate": { + "type": "IfStatement", + "start": 1402, + "end": 1904, + "loc": { + "start": { + "line": 69, + "column": 11 + }, + "end": { + "line": 79, + "column": 5 + } + }, + "test": { + "type": "BinaryExpression", + "start": 1406, + "end": 1438, + "loc": { + "start": { + "line": 69, + "column": 15 + }, + "end": { + "line": 69, + "column": 47 + } + }, + "left": { + "type": "MemberExpression", + "start": 1406, + "end": 1425, + "loc": { + "start": { + "line": 69, + "column": 15 + }, + "end": { + "line": 69, + "column": 34 + } + }, + "object": { + "type": "MemberExpression", + "start": 1406, + "end": 1420, + "loc": { + "start": { + "line": 69, + "column": 15 + }, + "end": { + "line": 69, + "column": 29 + } + }, + "object": { + "type": "ThisExpression", + "start": 1406, + "end": 1410, + "loc": { + "start": { + "line": 69, + "column": 15 + }, + "end": { + "line": 69, + "column": 19 + } + } + }, + "property": { + "type": "Identifier", + "start": 1411, + "end": 1420, + "loc": { + "start": { + "line": 69, + "column": 20 + }, + "end": { + "line": 69, + "column": 29 + }, + "identifierName": "lookahead" + }, + "name": "lookahead" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 1421, + "end": 1425, + "loc": { + "start": { + "line": 69, + "column": 30 + }, + "end": { + "line": 69, + "column": 34 + }, + "identifierName": "type" + }, + "name": "type" + }, + "computed": false + }, + "operator": "===", + "right": { + "type": "StringLiteral", + "start": 1430, + "end": 1438, + "loc": { + "start": { + "line": 69, + "column": 39 + }, + "end": { + "line": 69, + "column": 47 + } + }, + "extra": { + "rawValue": "NUMBER", + "raw": "\"NUMBER\"" + }, + "value": "NUMBER" + } + }, + "consequent": { + "type": "BlockStatement", + "start": 1440, + "end": 1546, + "loc": { + "start": { + "line": 69, + "column": 49 + }, + "end": { + "line": 72, + "column": 5 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 1448, + "end": 1500, + "loc": { + "start": { + "line": 70, + "column": 6 + }, + "end": { + "line": 70, + "column": 58 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 1448, + "end": 1499, + "loc": { + "start": { + "line": 70, + "column": 6 + }, + "end": { + "line": 70, + "column": 57 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 1448, + "end": 1468, + "loc": { + "start": { + "line": 70, + "column": 6 + }, + "end": { + "line": 70, + "column": 26 + } + }, + "object": { + "type": "MemberExpression", + "start": 1448, + "end": 1462, + "loc": { + "start": { + "line": 70, + "column": 6 + }, + "end": { + "line": 70, + "column": 20 + } + }, + "object": { + "type": "ThisExpression", + "start": 1448, + "end": 1452, + "loc": { + "start": { + "line": 70, + "column": 6 + }, + "end": { + "line": 70, + "column": 10 + } + } + }, + "property": { + "type": "Identifier", + "start": 1453, + "end": 1462, + "loc": { + "start": { + "line": 70, + "column": 11 + }, + "end": { + "line": 70, + "column": 20 + }, + "identifierName": "lookahead" + }, + "name": "lookahead" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 1463, + "end": 1468, + "loc": { + "start": { + "line": 70, + "column": 21 + }, + "end": { + "line": 70, + "column": 26 + }, + "identifierName": "value" + }, + "name": "value" + }, + "computed": false + }, + "right": { + "type": "CallExpression", + "start": 1471, + "end": 1499, + "loc": { + "start": { + "line": 70, + "column": 29 + }, + "end": { + "line": 70, + "column": 57 + } + }, + "callee": { + "type": "Identifier", + "start": 1471, + "end": 1477, + "loc": { + "start": { + "line": 70, + "column": 29 + }, + "end": { + "line": 70, + "column": 35 + }, + "identifierName": "Number" + }, + "name": "Number" + }, + "arguments": [ + { + "type": "MemberExpression", + "start": 1478, + "end": 1498, + "loc": { + "start": { + "line": 70, + "column": 36 + }, + "end": { + "line": 70, + "column": 56 + } + }, + "object": { + "type": "MemberExpression", + "start": 1478, + "end": 1492, + "loc": { + "start": { + "line": 70, + "column": 36 + }, + "end": { + "line": 70, + "column": 50 + } + }, + "object": { + "type": "ThisExpression", + "start": 1478, + "end": 1482, + "loc": { + "start": { + "line": 70, + "column": 36 + }, + "end": { + "line": 70, + "column": 40 + } + } + }, + "property": { + "type": "Identifier", + "start": 1483, + "end": 1492, + "loc": { + "start": { + "line": 70, + "column": 41 + }, + "end": { + "line": 70, + "column": 50 + }, + "identifierName": "lookahead" + }, + "name": "lookahead" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 1493, + "end": 1498, + "loc": { + "start": { + "line": 70, + "column": 51 + }, + "end": { + "line": 70, + "column": 56 + }, + "identifierName": "value" + }, + "name": "value" + }, + "computed": false + } + ] + } + } + }, + { + "type": "ExpressionStatement", + "start": 1507, + "end": 1540, + "loc": { + "start": { + "line": 71, + "column": 6 + }, + "end": { + "line": 71, + "column": 39 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 1507, + "end": 1539, + "loc": { + "start": { + "line": 71, + "column": 6 + }, + "end": { + "line": 71, + "column": 38 + } + }, + "operator": "=", + "left": { + "type": "Identifier", + "start": 1507, + "end": 1511, + "loc": { + "start": { + "line": 71, + "column": 6 + }, + "end": { + "line": 71, + "column": 10 + }, + "identifierName": "expr" + }, + "name": "expr" + }, + "right": { + "type": "NewExpression", + "start": 1514, + "end": 1539, + "loc": { + "start": { + "line": 71, + "column": 13 + }, + "end": { + "line": 71, + "column": 38 + } + }, + "callee": { + "type": "Identifier", + "start": 1518, + "end": 1523, + "loc": { + "start": { + "line": 71, + "column": 17 + }, + "end": { + "line": 71, + "column": 22 + }, + "identifierName": "Value" + }, + "name": "Value" + }, + "arguments": [ + { + "type": "MemberExpression", + "start": 1524, + "end": 1538, + "loc": { + "start": { + "line": 71, + "column": 23 + }, + "end": { + "line": 71, + "column": 37 + } + }, + "object": { + "type": "ThisExpression", + "start": 1524, + "end": 1528, + "loc": { + "start": { + "line": 71, + "column": 23 + }, + "end": { + "line": 71, + "column": 27 + } + } + }, + "property": { + "type": "Identifier", + "start": 1529, + "end": 1538, + "loc": { + "start": { + "line": 71, + "column": 28 + }, + "end": { + "line": 71, + "column": 37 + }, + "identifierName": "lookahead" + }, + "name": "lookahead" + }, + "computed": false + } + ] + } + } + } + ], + "directives": [] + }, + "alternate": { + "type": "IfStatement", + "start": 1552, + "end": 1904, + "loc": { + "start": { + "line": 72, + "column": 11 + }, + "end": { + "line": 79, + "column": 5 + } + }, + "test": { + "type": "BinaryExpression", + "start": 1556, + "end": 1587, + "loc": { + "start": { + "line": 72, + "column": 15 + }, + "end": { + "line": 72, + "column": 46 + } + }, + "left": { + "type": "MemberExpression", + "start": 1556, + "end": 1575, + "loc": { + "start": { + "line": 72, + "column": 15 + }, + "end": { + "line": 72, + "column": 34 + } + }, + "object": { + "type": "MemberExpression", + "start": 1556, + "end": 1570, + "loc": { + "start": { + "line": 72, + "column": 15 + }, + "end": { + "line": 72, + "column": 29 + } + }, + "object": { + "type": "ThisExpression", + "start": 1556, + "end": 1560, + "loc": { + "start": { + "line": 72, + "column": 15 + }, + "end": { + "line": 72, + "column": 19 + } + } + }, + "property": { + "type": "Identifier", + "start": 1561, + "end": 1570, + "loc": { + "start": { + "line": 72, + "column": 20 + }, + "end": { + "line": 72, + "column": 29 + }, + "identifierName": "lookahead" + }, + "name": "lookahead" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 1571, + "end": 1575, + "loc": { + "start": { + "line": 72, + "column": 30 + }, + "end": { + "line": 72, + "column": 34 + }, + "identifierName": "type" + }, + "name": "type" + }, + "computed": false + }, + "operator": "===", + "right": { + "type": "StringLiteral", + "start": 1580, + "end": 1587, + "loc": { + "start": { + "line": 72, + "column": 39 + }, + "end": { + "line": 72, + "column": 46 + } + }, + "extra": { + "rawValue": "REGEX", + "raw": "\"REGEX\"" + }, + "value": "REGEX" + } + }, + "consequent": { + "type": "BlockStatement", + "start": 1589, + "end": 1713, + "loc": { + "start": { + "line": 72, + "column": 48 + }, + "end": { + "line": 75, + "column": 5 + } + }, + "body": [ + { + "type": "VariableDeclaration", + "start": 1597, + "end": 1644, + "loc": { + "start": { + "line": 73, + "column": 6 + }, + "end": { + "line": 73, + "column": 53 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 1603, + "end": 1643, + "loc": { + "start": { + "line": 73, + "column": 12 + }, + "end": { + "line": 73, + "column": 52 + } + }, + "id": { + "type": "Identifier", + "start": 1603, + "end": 1609, + "loc": { + "start": { + "line": 73, + "column": 12 + }, + "end": { + "line": 73, + "column": 18 + }, + "identifierName": "fields" + }, + "name": "fields" + }, + "init": { + "type": "CallExpression", + "start": 1612, + "end": 1643, + "loc": { + "start": { + "line": 73, + "column": 21 + }, + "end": { + "line": 73, + "column": 52 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1612, + "end": 1638, + "loc": { + "start": { + "line": 73, + "column": 21 + }, + "end": { + "line": 73, + "column": 47 + } + }, + "object": { + "type": "MemberExpression", + "start": 1612, + "end": 1632, + "loc": { + "start": { + "line": 73, + "column": 21 + }, + "end": { + "line": 73, + "column": 41 + } + }, + "object": { + "type": "MemberExpression", + "start": 1612, + "end": 1626, + "loc": { + "start": { + "line": 73, + "column": 21 + }, + "end": { + "line": 73, + "column": 35 + } + }, + "object": { + "type": "ThisExpression", + "start": 1612, + "end": 1616, + "loc": { + "start": { + "line": 73, + "column": 21 + }, + "end": { + "line": 73, + "column": 25 + } + } + }, + "property": { + "type": "Identifier", + "start": 1617, + "end": 1626, + "loc": { + "start": { + "line": 73, + "column": 26 + }, + "end": { + "line": 73, + "column": 35 + }, + "identifierName": "lookahead" + }, + "name": "lookahead" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 1627, + "end": 1632, + "loc": { + "start": { + "line": 73, + "column": 36 + }, + "end": { + "line": 73, + "column": 41 + }, + "identifierName": "value" + }, + "name": "value" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 1633, + "end": 1638, + "loc": { + "start": { + "line": 73, + "column": 42 + }, + "end": { + "line": 73, + "column": 47 + }, + "identifierName": "split" + }, + "name": "split" + }, + "computed": false + }, + "arguments": [ + { + "type": "StringLiteral", + "start": 1639, + "end": 1642, + "loc": { + "start": { + "line": 73, + "column": 48 + }, + "end": { + "line": 73, + "column": 51 + } + }, + "extra": { + "rawValue": "/", + "raw": "\"/\"" + }, + "value": "/" + } + ] + } + } + ], + "kind": "const" + }, + { + "type": "ExpressionStatement", + "start": 1651, + "end": 1707, + "loc": { + "start": { + "line": 74, + "column": 6 + }, + "end": { + "line": 74, + "column": 62 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 1651, + "end": 1706, + "loc": { + "start": { + "line": 74, + "column": 6 + }, + "end": { + "line": 74, + "column": 61 + } + }, + "operator": "=", + "left": { + "type": "Identifier", + "start": 1651, + "end": 1655, + "loc": { + "start": { + "line": 74, + "column": 6 + }, + "end": { + "line": 74, + "column": 10 + }, + "identifierName": "expr" + }, + "name": "expr" + }, + "right": { + "type": "NewExpression", + "start": 1658, + "end": 1706, + "loc": { + "start": { + "line": 74, + "column": 13 + }, + "end": { + "line": 74, + "column": 61 + } + }, + "callee": { + "type": "Identifier", + "start": 1662, + "end": 1667, + "loc": { + "start": { + "line": 74, + "column": 17 + }, + "end": { + "line": 74, + "column": 22 + }, + "identifierName": "Regex" + }, + "name": "Regex" + }, + "arguments": [ + { + "type": "ObjectExpression", + "start": 1668, + "end": 1705, + "loc": { + "start": { + "line": 74, + "column": 23 + }, + "end": { + "line": 74, + "column": 60 + } + }, + "properties": [ + { + "type": "ObjectProperty", + "start": 1670, + "end": 1685, + "loc": { + "start": { + "line": 74, + "column": 25 + }, + "end": { + "line": 74, + "column": 40 + } + }, + "method": false, + "shorthand": false, + "computed": false, + "key": { + "type": "Identifier", + "start": 1670, + "end": 1674, + "loc": { + "start": { + "line": 74, + "column": 25 + }, + "end": { + "line": 74, + "column": 29 + }, + "identifierName": "body" + }, + "name": "body" + }, + "value": { + "type": "MemberExpression", + "start": 1676, + "end": 1685, + "loc": { + "start": { + "line": 74, + "column": 31 + }, + "end": { + "line": 74, + "column": 40 + } + }, + "object": { + "type": "Identifier", + "start": 1676, + "end": 1682, + "loc": { + "start": { + "line": 74, + "column": 31 + }, + "end": { + "line": 74, + "column": 37 + }, + "identifierName": "fields" + }, + "name": "fields" + }, + "property": { + "type": "NumericLiteral", + "start": 1683, + "end": 1684, + "loc": { + "start": { + "line": 74, + "column": 38 + }, + "end": { + "line": 74, + "column": 39 + } + }, + "extra": { + "rawValue": 1, + "raw": "1" + }, + "value": 1 + }, + "computed": true + } + }, + { + "type": "ObjectProperty", + "start": 1687, + "end": 1703, + "loc": { + "start": { + "line": 74, + "column": 42 + }, + "end": { + "line": 74, + "column": 58 + } + }, + "method": false, + "shorthand": false, + "computed": false, + "key": { + "type": "Identifier", + "start": 1687, + "end": 1692, + "loc": { + "start": { + "line": 74, + "column": 42 + }, + "end": { + "line": 74, + "column": 47 + }, + "identifierName": "flags" + }, + "name": "flags" + }, + "value": { + "type": "MemberExpression", + "start": 1694, + "end": 1703, + "loc": { + "start": { + "line": 74, + "column": 49 + }, + "end": { + "line": 74, + "column": 58 + } + }, + "object": { + "type": "Identifier", + "start": 1694, + "end": 1700, + "loc": { + "start": { + "line": 74, + "column": 49 + }, + "end": { + "line": 74, + "column": 55 + }, + "identifierName": "fields" + }, + "name": "fields" + }, + "property": { + "type": "NumericLiteral", + "start": 1701, + "end": 1702, + "loc": { + "start": { + "line": 74, + "column": 56 + }, + "end": { + "line": 74, + "column": 57 + } + }, + "extra": { + "rawValue": 2, + "raw": "2" + }, + "value": 2 + }, + "computed": true + } + } + ] + } + ] + } + } + } + ], + "directives": [] + }, + "alternate": { + "type": "IfStatement", + "start": 1719, + "end": 1904, + "loc": { + "start": { + "line": 75, + "column": 11 + }, + "end": { + "line": 79, + "column": 5 + } + }, + "test": { + "type": "BinaryExpression", + "start": 1723, + "end": 1753, + "loc": { + "start": { + "line": 75, + "column": 15 + }, + "end": { + "line": 75, + "column": 45 + } + }, + "left": { + "type": "MemberExpression", + "start": 1723, + "end": 1742, + "loc": { + "start": { + "line": 75, + "column": 15 + }, + "end": { + "line": 75, + "column": 34 + } + }, + "object": { + "type": "MemberExpression", + "start": 1723, + "end": 1737, + "loc": { + "start": { + "line": 75, + "column": 15 + }, + "end": { + "line": 75, + "column": 29 + } + }, + "object": { + "type": "ThisExpression", + "start": 1723, + "end": 1727, + "loc": { + "start": { + "line": 75, + "column": 15 + }, + "end": { + "line": 75, + "column": 19 + } + } + }, + "property": { + "type": "Identifier", + "start": 1728, + "end": 1737, + "loc": { + "start": { + "line": 75, + "column": 20 + }, + "end": { + "line": 75, + "column": 29 + }, + "identifierName": "lookahead" + }, + "name": "lookahead" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 1738, + "end": 1742, + "loc": { + "start": { + "line": 75, + "column": 30 + }, + "end": { + "line": 75, + "column": 34 + }, + "identifierName": "type" + }, + "name": "type" + }, + "computed": false + }, + "operator": "===", + "right": { + "type": "StringLiteral", + "start": 1747, + "end": 1753, + "loc": { + "start": { + "line": 75, + "column": 39 + }, + "end": { + "line": 75, + "column": 45 + } + }, + "extra": { + "rawValue": "WORD", + "raw": "\"WORD\"" + }, + "value": "WORD" + } + }, + "consequent": { + "type": "BlockStatement", + "start": 1755, + "end": 1801, + "loc": { + "start": { + "line": 75, + "column": 47 + }, + "end": { + "line": 77, + "column": 5 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 1763, + "end": 1795, + "loc": { + "start": { + "line": 76, + "column": 6 + }, + "end": { + "line": 76, + "column": 38 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 1763, + "end": 1794, + "loc": { + "start": { + "line": 76, + "column": 6 + }, + "end": { + "line": 76, + "column": 37 + } + }, + "operator": "=", + "left": { + "type": "Identifier", + "start": 1763, + "end": 1767, + "loc": { + "start": { + "line": 76, + "column": 6 + }, + "end": { + "line": 76, + "column": 10 + }, + "identifierName": "expr" + }, + "name": "expr" + }, + "right": { + "type": "NewExpression", + "start": 1770, + "end": 1794, + "loc": { + "start": { + "line": 76, + "column": 13 + }, + "end": { + "line": 76, + "column": 37 + } + }, + "callee": { + "type": "Identifier", + "start": 1774, + "end": 1778, + "loc": { + "start": { + "line": 76, + "column": 17 + }, + "end": { + "line": 76, + "column": 21 + }, + "identifierName": "Word" + }, + "name": "Word" + }, + "arguments": [ + { + "type": "MemberExpression", + "start": 1779, + "end": 1793, + "loc": { + "start": { + "line": 76, + "column": 22 + }, + "end": { + "line": 76, + "column": 36 + } + }, + "object": { + "type": "ThisExpression", + "start": 1779, + "end": 1783, + "loc": { + "start": { + "line": 76, + "column": 22 + }, + "end": { + "line": 76, + "column": 26 + } + } + }, + "property": { + "type": "Identifier", + "start": 1784, + "end": 1793, + "loc": { + "start": { + "line": 76, + "column": 27 + }, + "end": { + "line": 76, + "column": 36 + }, + "identifierName": "lookahead" + }, + "name": "lookahead" + }, + "computed": false + } + ] + } + } + } + ], + "directives": [] + }, + "alternate": { + "type": "BlockStatement", + "start": 1807, + "end": 1904, + "loc": { + "start": { + "line": 77, + "column": 11 + }, + "end": { + "line": 79, + "column": 5 + } + }, + "body": [ + { + "type": "ThrowStatement", + "start": 1815, + "end": 1898, + "loc": { + "start": { + "line": 78, + "column": 6 + }, + "end": { + "line": 78, + "column": 89 + } + }, + "argument": { + "type": "CallExpression", + "start": 1821, + "end": 1897, + "loc": { + "start": { + "line": 78, + "column": 12 + }, + "end": { + "line": 78, + "column": 88 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1821, + "end": 1845, + "loc": { + "start": { + "line": 78, + "column": 12 + }, + "end": { + "line": 78, + "column": 36 + } + }, + "object": { + "type": "ThisExpression", + "start": 1821, + "end": 1825, + "loc": { + "start": { + "line": 78, + "column": 12 + }, + "end": { + "line": 78, + "column": 16 + } + } + }, + "property": { + "type": "Identifier", + "start": 1826, + "end": 1845, + "loc": { + "start": { + "line": 78, + "column": 17 + }, + "end": { + "line": 78, + "column": 36 + }, + "identifierName": "__parserSyntaxError" + }, + "name": "__parserSyntaxError" + }, + "computed": false + }, + "arguments": [ + { + "type": "StringLiteral", + "start": 1846, + "end": 1896, + "loc": { + "start": { + "line": 78, + "column": 37 + }, + "end": { + "line": 78, + "column": 87 + } + }, + "extra": { + "rawValue": "Unrecognized token while parsing the expression.", + "raw": "\"Unrecognized token while parsing the expression.\"" + }, + "value": "Unrecognized token while parsing the expression." + } + ] + } + } + ], + "directives": [] + } + } + } + } + }, + { + "type": "ReturnStatement", + "start": 1910, + "end": 1939, + "loc": { + "start": { + "line": 81, + "column": 4 + }, + "end": { + "line": 81, + "column": 33 + } + }, + "argument": { + "type": "CallExpression", + "start": 1917, + "end": 1938, + "loc": { + "start": { + "line": 81, + "column": 11 + }, + "end": { + "line": 81, + "column": 32 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1917, + "end": 1932, + "loc": { + "start": { + "line": 81, + "column": 11 + }, + "end": { + "line": 81, + "column": 26 + } + }, + "object": { + "type": "ThisExpression", + "start": 1917, + "end": 1921, + "loc": { + "start": { + "line": 81, + "column": 11 + }, + "end": { + "line": 81, + "column": 15 + } + } + }, + "property": { + "type": "Identifier", + "start": 1922, + "end": 1932, + "loc": { + "start": { + "line": 81, + "column": 16 + }, + "end": { + "line": 81, + "column": 26 + }, + "identifierName": "parseApply" + }, + "name": "parseApply" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 1933, + "end": 1937, + "loc": { + "start": { + "line": 81, + "column": 27 + }, + "end": { + "line": 81, + "column": 31 + }, + "identifierName": "expr" + }, + "name": "expr" + } + ] + } + } + ], + "directives": [] + } + }, + { + "type": "ClassMethod", + "start": 1947, + "end": 2844, + "loc": { + "start": { + "line": 84, + "column": 2 + }, + "end": { + "line": 115, + "column": 3 + } + }, + "static": false, + "computed": false, + "key": { + "type": "Identifier", + "start": 1947, + "end": 1957, + "loc": { + "start": { + "line": 84, + "column": 2 + }, + "end": { + "line": 84, + "column": 12 + }, + "identifierName": "parseApply" + }, + "name": "parseApply" + }, + "kind": "method", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 1958, + "end": 1962, + "loc": { + "start": { + "line": 84, + "column": 13 + }, + "end": { + "line": 84, + "column": 17 + }, + "identifierName": "expr" + }, + "name": "expr" + } + ], + "body": { + "type": "BlockStatement", + "start": 1964, + "end": 2844, + "loc": { + "start": { + "line": 84, + "column": 19 + }, + "end": { + "line": 115, + "column": 3 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 1992, + "end": 2028, + "loc": { + "start": { + "line": 86, + "column": 4 + }, + "end": { + "line": 86, + "column": 40 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 1992, + "end": 2027, + "loc": { + "start": { + "line": 86, + "column": 4 + }, + "end": { + "line": 86, + "column": 39 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 1992, + "end": 2006, + "loc": { + "start": { + "line": 86, + "column": 4 + }, + "end": { + "line": 86, + "column": 18 + } + }, + "object": { + "type": "ThisExpression", + "start": 1992, + "end": 1996, + "loc": { + "start": { + "line": 86, + "column": 4 + }, + "end": { + "line": 86, + "column": 8 + } + }, + "leadingComments": null + }, + "property": { + "type": "Identifier", + "start": 1997, + "end": 2006, + "loc": { + "start": { + "line": 86, + "column": 9 + }, + "end": { + "line": 86, + "column": 18 + }, + "identifierName": "lookahead" + }, + "name": "lookahead" + }, + "computed": false, + "leadingComments": null + }, + "right": { + "type": "CallExpression", + "start": 2009, + "end": 2027, + "loc": { + "start": { + "line": 86, + "column": 21 + }, + "end": { + "line": 86, + "column": 39 + } + }, + "callee": { + "type": "MemberExpression", + "start": 2009, + "end": 2025, + "loc": { + "start": { + "line": 86, + "column": 21 + }, + "end": { + "line": 86, + "column": 37 + } + }, + "object": { + "type": "ThisExpression", + "start": 2009, + "end": 2013, + "loc": { + "start": { + "line": 86, + "column": 21 + }, + "end": { + "line": 86, + "column": 25 + } + } + }, + "property": { + "type": "Identifier", + "start": 2014, + "end": 2025, + "loc": { + "start": { + "line": 86, + "column": 26 + }, + "end": { + "line": 86, + "column": 37 + }, + "identifierName": "__nextToken" + }, + "name": "__nextToken" + }, + "computed": false + }, + "arguments": [] + }, + "leadingComments": null + }, + "leadingComments": [ + { + "type": "CommentLine", + "value": " Get next token", + "start": 1970, + "end": 1987, + "loc": { + "start": { + "line": 85, + "column": 4 + }, + "end": { + "line": 85, + "column": 21 + } + } + } + ], + "trailingComments": [ + { + "type": "CommentLine", + "value": " Return if apply is empty (not left parenthesis or null)", + "start": 2034, + "end": 2092, + "loc": { + "start": { + "line": 88, + "column": 4 + }, + "end": { + "line": 88, + "column": 62 + } + } + } + ] + }, + { + "type": "IfStatement", + "start": 2097, + "end": 2176, + "loc": { + "start": { + "line": 89, + "column": 4 + }, + "end": { + "line": 91, + "column": 5 + } + }, + "test": { + "type": "LogicalExpression", + "start": 2101, + "end": 2148, + "loc": { + "start": { + "line": 89, + "column": 8 + }, + "end": { + "line": 89, + "column": 55 + } + }, + "left": { + "type": "UnaryExpression", + "start": 2101, + "end": 2116, + "loc": { + "start": { + "line": 89, + "column": 8 + }, + "end": { + "line": 89, + "column": 23 + } + }, + "operator": "!", + "prefix": true, + "argument": { + "type": "MemberExpression", + "start": 2102, + "end": 2116, + "loc": { + "start": { + "line": 89, + "column": 9 + }, + "end": { + "line": 89, + "column": 23 + } + }, + "object": { + "type": "ThisExpression", + "start": 2102, + "end": 2106, + "loc": { + "start": { + "line": 89, + "column": 9 + }, + "end": { + "line": 89, + "column": 13 + } + }, + "leadingComments": null + }, + "property": { + "type": "Identifier", + "start": 2107, + "end": 2116, + "loc": { + "start": { + "line": 89, + "column": 14 + }, + "end": { + "line": 89, + "column": 23 + }, + "identifierName": "lookahead" + }, + "name": "lookahead" + }, + "computed": false, + "leadingComments": null + }, + "extra": { + "parenthesizedArgument": false + }, + "leadingComments": null + }, + "operator": "||", + "right": { + "type": "BinaryExpression", + "start": 2120, + "end": 2148, + "loc": { + "start": { + "line": 89, + "column": 27 + }, + "end": { + "line": 89, + "column": 55 + } + }, + "left": { + "type": "MemberExpression", + "start": 2120, + "end": 2139, + "loc": { + "start": { + "line": 89, + "column": 27 + }, + "end": { + "line": 89, + "column": 46 + } + }, + "object": { + "type": "MemberExpression", + "start": 2120, + "end": 2134, + "loc": { + "start": { + "line": 89, + "column": 27 + }, + "end": { + "line": 89, + "column": 41 + } + }, + "object": { + "type": "ThisExpression", + "start": 2120, + "end": 2124, + "loc": { + "start": { + "line": 89, + "column": 27 + }, + "end": { + "line": 89, + "column": 31 + } + } + }, + "property": { + "type": "Identifier", + "start": 2125, + "end": 2134, + "loc": { + "start": { + "line": 89, + "column": 32 + }, + "end": { + "line": 89, + "column": 41 + }, + "identifierName": "lookahead" + }, + "name": "lookahead" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 2135, + "end": 2139, + "loc": { + "start": { + "line": 89, + "column": 42 + }, + "end": { + "line": 89, + "column": 46 + }, + "identifierName": "type" + }, + "name": "type" + }, + "computed": false + }, + "operator": "!==", + "right": { + "type": "StringLiteral", + "start": 2144, + "end": 2148, + "loc": { + "start": { + "line": 89, + "column": 51 + }, + "end": { + "line": 89, + "column": 55 + } + }, + "extra": { + "rawValue": "LP", + "raw": "\"LP\"" + }, + "value": "LP" + } + }, + "leadingComments": null + }, + "consequent": { + "type": "BlockStatement", + "start": 2150, + "end": 2176, + "loc": { + "start": { + "line": 89, + "column": 57 + }, + "end": { + "line": 91, + "column": 5 + } + }, + "body": [ + { + "type": "ReturnStatement", + "start": 2158, + "end": 2170, + "loc": { + "start": { + "line": 90, + "column": 6 + }, + "end": { + "line": 90, + "column": 18 + } + }, + "argument": { + "type": "Identifier", + "start": 2165, + "end": 2169, + "loc": { + "start": { + "line": 90, + "column": 13 + }, + "end": { + "line": 90, + "column": 17 + }, + "identifierName": "expr" + }, + "name": "expr" + } + } + ], + "directives": [] + }, + "alternate": null, + "leadingComments": [ + { + "type": "CommentLine", + "value": " Return if apply is empty (not left parenthesis or null)", + "start": 2034, + "end": 2092, + "loc": { + "start": { + "line": 88, + "column": 4 + }, + "end": { + "line": 88, + "column": 62 + } + } + } + ] + }, + { + "type": "VariableDeclaration", + "start": 2182, + "end": 2209, + "loc": { + "start": { + "line": 93, + "column": 4 + }, + "end": { + "line": 93, + "column": 31 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 2186, + "end": 2208, + "loc": { + "start": { + "line": 93, + "column": 8 + }, + "end": { + "line": 93, + "column": 30 + } + }, + "id": { + "type": "Identifier", + "start": 2186, + "end": 2190, + "loc": { + "start": { + "line": 93, + "column": 8 + }, + "end": { + "line": 93, + "column": 12 + }, + "identifierName": "tree" + }, + "name": "tree" + }, + "init": { + "type": "NewExpression", + "start": 2193, + "end": 2208, + "loc": { + "start": { + "line": 93, + "column": 15 + }, + "end": { + "line": 93, + "column": 30 + } + }, + "callee": { + "type": "Identifier", + "start": 2197, + "end": 2202, + "loc": { + "start": { + "line": 93, + "column": 19 + }, + "end": { + "line": 93, + "column": 24 + }, + "identifierName": "Apply" + }, + "name": "Apply" + }, + "arguments": [ + { + "type": "Identifier", + "start": 2203, + "end": 2207, + "loc": { + "start": { + "line": 93, + "column": 25 + }, + "end": { + "line": 93, + "column": 29 + }, + "identifierName": "expr" + }, + "name": "expr" + } + ] + } + } + ], + "kind": "let" + }, + { + "type": "ExpressionStatement", + "start": 2215, + "end": 2251, + "loc": { + "start": { + "line": 95, + "column": 4 + }, + "end": { + "line": 95, + "column": 40 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 2215, + "end": 2250, + "loc": { + "start": { + "line": 95, + "column": 4 + }, + "end": { + "line": 95, + "column": 39 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 2215, + "end": 2229, + "loc": { + "start": { + "line": 95, + "column": 4 + }, + "end": { + "line": 95, + "column": 18 + } + }, + "object": { + "type": "ThisExpression", + "start": 2215, + "end": 2219, + "loc": { + "start": { + "line": 95, + "column": 4 + }, + "end": { + "line": 95, + "column": 8 + } + } + }, + "property": { + "type": "Identifier", + "start": 2220, + "end": 2229, + "loc": { + "start": { + "line": 95, + "column": 9 + }, + "end": { + "line": 95, + "column": 18 + }, + "identifierName": "lookahead" + }, + "name": "lookahead" + }, + "computed": false + }, + "right": { + "type": "CallExpression", + "start": 2232, + "end": 2250, + "loc": { + "start": { + "line": 95, + "column": 21 + }, + "end": { + "line": 95, + "column": 39 + } + }, + "callee": { + "type": "MemberExpression", + "start": 2232, + "end": 2248, + "loc": { + "start": { + "line": 95, + "column": 21 + }, + "end": { + "line": 95, + "column": 37 + } + }, + "object": { + "type": "ThisExpression", + "start": 2232, + "end": 2236, + "loc": { + "start": { + "line": 95, + "column": 21 + }, + "end": { + "line": 95, + "column": 25 + } + } + }, + "property": { + "type": "Identifier", + "start": 2237, + "end": 2248, + "loc": { + "start": { + "line": 95, + "column": 26 + }, + "end": { + "line": 95, + "column": 37 + }, + "identifierName": "__nextToken" + }, + "name": "__nextToken" + }, + "computed": false + }, + "arguments": [] + } + }, + "trailingComments": [ + { + "type": "CommentLine", + "value": " Parse all arguments inside the parenthesis", + "start": 2256, + "end": 2301, + "loc": { + "start": { + "line": 96, + "column": 4 + }, + "end": { + "line": 96, + "column": 49 + } + } + } + ] + }, + { + "type": "WhileStatement", + "start": 2306, + "end": 2805, + "loc": { + "start": { + "line": 97, + "column": 4 + }, + "end": { + "line": 112, + "column": 5 + } + }, + "test": { + "type": "LogicalExpression", + "start": 2313, + "end": 2359, + "loc": { + "start": { + "line": 97, + "column": 11 + }, + "end": { + "line": 97, + "column": 57 + } + }, + "left": { + "type": "MemberExpression", + "start": 2313, + "end": 2327, + "loc": { + "start": { + "line": 97, + "column": 11 + }, + "end": { + "line": 97, + "column": 25 + } + }, + "object": { + "type": "ThisExpression", + "start": 2313, + "end": 2317, + "loc": { + "start": { + "line": 97, + "column": 11 + }, + "end": { + "line": 97, + "column": 15 + } + }, + "leadingComments": null + }, + "property": { + "type": "Identifier", + "start": 2318, + "end": 2327, + "loc": { + "start": { + "line": 97, + "column": 16 + }, + "end": { + "line": 97, + "column": 25 + }, + "identifierName": "lookahead" + }, + "name": "lookahead" + }, + "computed": false, + "leadingComments": null + }, + "operator": "&&", + "right": { + "type": "BinaryExpression", + "start": 2331, + "end": 2359, + "loc": { + "start": { + "line": 97, + "column": 29 + }, + "end": { + "line": 97, + "column": 57 + } + }, + "left": { + "type": "MemberExpression", + "start": 2331, + "end": 2350, + "loc": { + "start": { + "line": 97, + "column": 29 + }, + "end": { + "line": 97, + "column": 48 + } + }, + "object": { + "type": "MemberExpression", + "start": 2331, + "end": 2345, + "loc": { + "start": { + "line": 97, + "column": 29 + }, + "end": { + "line": 97, + "column": 43 + } + }, + "object": { + "type": "ThisExpression", + "start": 2331, + "end": 2335, + "loc": { + "start": { + "line": 97, + "column": 29 + }, + "end": { + "line": 97, + "column": 33 + } + } + }, + "property": { + "type": "Identifier", + "start": 2336, + "end": 2345, + "loc": { + "start": { + "line": 97, + "column": 34 + }, + "end": { + "line": 97, + "column": 43 + }, + "identifierName": "lookahead" + }, + "name": "lookahead" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 2346, + "end": 2350, + "loc": { + "start": { + "line": 97, + "column": 44 + }, + "end": { + "line": 97, + "column": 48 + }, + "identifierName": "type" + }, + "name": "type" + }, + "computed": false + }, + "operator": "!==", + "right": { + "type": "StringLiteral", + "start": 2355, + "end": 2359, + "loc": { + "start": { + "line": 97, + "column": 53 + }, + "end": { + "line": 97, + "column": 57 + } + }, + "extra": { + "rawValue": "RP", + "raw": "\"RP\"" + }, + "value": "RP" + } + }, + "leadingComments": null + }, + "body": { + "type": "BlockStatement", + "start": 2361, + "end": 2805, + "loc": { + "start": { + "line": 97, + "column": 59 + }, + "end": { + "line": 112, + "column": 5 + } + }, + "body": [ + { + "type": "VariableDeclaration", + "start": 2369, + "end": 2402, + "loc": { + "start": { + "line": 98, + "column": 6 + }, + "end": { + "line": 98, + "column": 39 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 2373, + "end": 2401, + "loc": { + "start": { + "line": 98, + "column": 10 + }, + "end": { + "line": 98, + "column": 38 + } + }, + "id": { + "type": "Identifier", + "start": 2373, + "end": 2376, + "loc": { + "start": { + "line": 98, + "column": 10 + }, + "end": { + "line": 98, + "column": 13 + }, + "identifierName": "arg" + }, + "name": "arg" + }, + "init": { + "type": "CallExpression", + "start": 2379, + "end": 2401, + "loc": { + "start": { + "line": 98, + "column": 16 + }, + "end": { + "line": 98, + "column": 38 + } + }, + "callee": { + "type": "MemberExpression", + "start": 2379, + "end": 2399, + "loc": { + "start": { + "line": 98, + "column": 16 + }, + "end": { + "line": 98, + "column": 36 + } + }, + "object": { + "type": "ThisExpression", + "start": 2379, + "end": 2383, + "loc": { + "start": { + "line": 98, + "column": 16 + }, + "end": { + "line": 98, + "column": 20 + } + } + }, + "property": { + "type": "Identifier", + "start": 2384, + "end": 2399, + "loc": { + "start": { + "line": 98, + "column": 21 + }, + "end": { + "line": 98, + "column": 36 + }, + "identifierName": "parseExpression" + }, + "name": "parseExpression" + }, + "computed": false + }, + "arguments": [] + } + } + ], + "kind": "let" + }, + { + "type": "ExpressionStatement", + "start": 2409, + "end": 2429, + "loc": { + "start": { + "line": 99, + "column": 6 + }, + "end": { + "line": 99, + "column": 26 + } + }, + "expression": { + "type": "CallExpression", + "start": 2409, + "end": 2428, + "loc": { + "start": { + "line": 99, + "column": 6 + }, + "end": { + "line": 99, + "column": 25 + } + }, + "callee": { + "type": "MemberExpression", + "start": 2409, + "end": 2423, + "loc": { + "start": { + "line": 99, + "column": 6 + }, + "end": { + "line": 99, + "column": 20 + } + }, + "object": { + "type": "MemberExpression", + "start": 2409, + "end": 2418, + "loc": { + "start": { + "line": 99, + "column": 6 + }, + "end": { + "line": 99, + "column": 15 + } + }, + "object": { + "type": "Identifier", + "start": 2409, + "end": 2413, + "loc": { + "start": { + "line": 99, + "column": 6 + }, + "end": { + "line": 99, + "column": 10 + }, + "identifierName": "tree" + }, + "name": "tree" + }, + "property": { + "type": "Identifier", + "start": 2414, + "end": 2418, + "loc": { + "start": { + "line": 99, + "column": 11 + }, + "end": { + "line": 99, + "column": 15 + }, + "identifierName": "args" + }, + "name": "args" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 2419, + "end": 2423, + "loc": { + "start": { + "line": 99, + "column": 16 + }, + "end": { + "line": 99, + "column": 20 + }, + "identifierName": "push" + }, + "name": "push" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 2424, + "end": 2427, + "loc": { + "start": { + "line": 99, + "column": 21 + }, + "end": { + "line": 99, + "column": 24 + }, + "identifierName": "arg" + }, + "name": "arg" + } + ] + } + }, + { + "type": "IfStatement", + "start": 2437, + "end": 2639, + "loc": { + "start": { + "line": 101, + "column": 6 + }, + "end": { + "line": 106, + "column": 7 + } + }, + "test": { + "type": "LogicalExpression", + "start": 2450, + "end": 2542, + "loc": { + "start": { + "line": 102, + "column": 8 + }, + "end": { + "line": 103, + "column": 73 + } + }, + "left": { + "type": "UnaryExpression", + "start": 2450, + "end": 2465, + "loc": { + "start": { + "line": 102, + "column": 8 + }, + "end": { + "line": 102, + "column": 23 + } + }, + "operator": "!", + "prefix": true, + "argument": { + "type": "MemberExpression", + "start": 2451, + "end": 2465, + "loc": { + "start": { + "line": 102, + "column": 9 + }, + "end": { + "line": 102, + "column": 23 + } + }, + "object": { + "type": "ThisExpression", + "start": 2451, + "end": 2455, + "loc": { + "start": { + "line": 102, + "column": 9 + }, + "end": { + "line": 102, + "column": 13 + } + } + }, + "property": { + "type": "Identifier", + "start": 2456, + "end": 2465, + "loc": { + "start": { + "line": 102, + "column": 14 + }, + "end": { + "line": 102, + "column": 23 + }, + "identifierName": "lookahead" + }, + "name": "lookahead" + }, + "computed": false + }, + "extra": { + "parenthesizedArgument": false + } + }, + "operator": "||", + "right": { + "type": "LogicalExpression", + "start": 2478, + "end": 2541, + "loc": { + "start": { + "line": 103, + "column": 9 + }, + "end": { + "line": 103, + "column": 72 + } + }, + "left": { + "type": "BinaryExpression", + "start": 2478, + "end": 2509, + "loc": { + "start": { + "line": 103, + "column": 9 + }, + "end": { + "line": 103, + "column": 40 + } + }, + "left": { + "type": "MemberExpression", + "start": 2478, + "end": 2497, + "loc": { + "start": { + "line": 103, + "column": 9 + }, + "end": { + "line": 103, + "column": 28 + } + }, + "object": { + "type": "MemberExpression", + "start": 2478, + "end": 2492, + "loc": { + "start": { + "line": 103, + "column": 9 + }, + "end": { + "line": 103, + "column": 23 + } + }, + "object": { + "type": "ThisExpression", + "start": 2478, + "end": 2482, + "loc": { + "start": { + "line": 103, + "column": 9 + }, + "end": { + "line": 103, + "column": 13 + } + } + }, + "property": { + "type": "Identifier", + "start": 2483, + "end": 2492, + "loc": { + "start": { + "line": 103, + "column": 14 + }, + "end": { + "line": 103, + "column": 23 + }, + "identifierName": "lookahead" + }, + "name": "lookahead" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 2493, + "end": 2497, + "loc": { + "start": { + "line": 103, + "column": 24 + }, + "end": { + "line": 103, + "column": 28 + }, + "identifierName": "type" + }, + "name": "type" + }, + "computed": false + }, + "operator": "!==", + "right": { + "type": "StringLiteral", + "start": 2502, + "end": 2509, + "loc": { + "start": { + "line": 103, + "column": 33 + }, + "end": { + "line": 103, + "column": 40 + } + }, + "extra": { + "rawValue": "COMMA", + "raw": "\"COMMA\"" + }, + "value": "COMMA" + } + }, + "operator": "&&", + "right": { + "type": "BinaryExpression", + "start": 2513, + "end": 2541, + "loc": { + "start": { + "line": 103, + "column": 44 + }, + "end": { + "line": 103, + "column": 72 + } + }, + "left": { + "type": "MemberExpression", + "start": 2513, + "end": 2532, + "loc": { + "start": { + "line": 103, + "column": 44 + }, + "end": { + "line": 103, + "column": 63 + } + }, + "object": { + "type": "MemberExpression", + "start": 2513, + "end": 2527, + "loc": { + "start": { + "line": 103, + "column": 44 + }, + "end": { + "line": 103, + "column": 58 + } + }, + "object": { + "type": "ThisExpression", + "start": 2513, + "end": 2517, + "loc": { + "start": { + "line": 103, + "column": 44 + }, + "end": { + "line": 103, + "column": 48 + } + } + }, + "property": { + "type": "Identifier", + "start": 2518, + "end": 2527, + "loc": { + "start": { + "line": 103, + "column": 49 + }, + "end": { + "line": 103, + "column": 58 + }, + "identifierName": "lookahead" + }, + "name": "lookahead" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 2528, + "end": 2532, + "loc": { + "start": { + "line": 103, + "column": 59 + }, + "end": { + "line": 103, + "column": 63 + }, + "identifierName": "type" + }, + "name": "type" + }, + "computed": false + }, + "operator": "!==", + "right": { + "type": "StringLiteral", + "start": 2537, + "end": 2541, + "loc": { + "start": { + "line": 103, + "column": 68 + }, + "end": { + "line": 103, + "column": 72 + } + }, + "extra": { + "rawValue": "RP", + "raw": "\"RP\"" + }, + "value": "RP" + } + }, + "extra": { + "parenthesized": true, + "parenStart": 2477 + } + } + }, + "consequent": { + "type": "BlockStatement", + "start": 2551, + "end": 2639, + "loc": { + "start": { + "line": 104, + "column": 8 + }, + "end": { + "line": 106, + "column": 7 + } + }, + "body": [ + { + "type": "ThrowStatement", + "start": 2561, + "end": 2631, + "loc": { + "start": { + "line": 105, + "column": 8 + }, + "end": { + "line": 105, + "column": 78 + } + }, + "argument": { + "type": "CallExpression", + "start": 2567, + "end": 2630, + "loc": { + "start": { + "line": 105, + "column": 14 + }, + "end": { + "line": 105, + "column": 77 + } + }, + "callee": { + "type": "MemberExpression", + "start": 2567, + "end": 2591, + "loc": { + "start": { + "line": 105, + "column": 14 + }, + "end": { + "line": 105, + "column": 38 + } + }, + "object": { + "type": "ThisExpression", + "start": 2567, + "end": 2571, + "loc": { + "start": { + "line": 105, + "column": 14 + }, + "end": { + "line": 105, + "column": 18 + } + } + }, + "property": { + "type": "Identifier", + "start": 2572, + "end": 2591, + "loc": { + "start": { + "line": 105, + "column": 19 + }, + "end": { + "line": 105, + "column": 38 + }, + "identifierName": "__parserSyntaxError" + }, + "name": "__parserSyntaxError" + }, + "computed": false + }, + "arguments": [ + { + "type": "TemplateLiteral", + "start": 2592, + "end": 2629, + "loc": { + "start": { + "line": 105, + "column": 39 + }, + "end": { + "line": 105, + "column": 76 + } + }, + "expressions": [], + "quasis": [ + { + "type": "TemplateElement", + "start": 2593, + "end": 2628, + "loc": { + "start": { + "line": 105, + "column": 40 + }, + "end": { + "line": 105, + "column": 75 + } + }, + "value": { + "raw": "Missing , or ) after the expression", + "cooked": "Missing , or ) after the expression" + }, + "tail": true + } + ] + } + ] + } + } + ], + "directives": [], + "trailingComments": null + }, + "alternate": null, + "trailingComments": [ + { + "type": "CommentLine", + "value": " Don't consume RPs as argument tokens", + "start": 2647, + "end": 2686, + "loc": { + "start": { + "line": 108, + "column": 6 + }, + "end": { + "line": 108, + "column": 45 + } + } + } + ] + }, + { + "type": "IfStatement", + "start": 2693, + "end": 2799, + "loc": { + "start": { + "line": 109, + "column": 6 + }, + "end": { + "line": 111, + "column": 7 + } + }, + "test": { + "type": "LogicalExpression", + "start": 2697, + "end": 2743, + "loc": { + "start": { + "line": 109, + "column": 10 + }, + "end": { + "line": 109, + "column": 56 + } + }, + "left": { + "type": "MemberExpression", + "start": 2697, + "end": 2711, + "loc": { + "start": { + "line": 109, + "column": 10 + }, + "end": { + "line": 109, + "column": 24 + } + }, + "object": { + "type": "ThisExpression", + "start": 2697, + "end": 2701, + "loc": { + "start": { + "line": 109, + "column": 10 + }, + "end": { + "line": 109, + "column": 14 + } + }, + "leadingComments": null + }, + "property": { + "type": "Identifier", + "start": 2702, + "end": 2711, + "loc": { + "start": { + "line": 109, + "column": 15 + }, + "end": { + "line": 109, + "column": 24 + }, + "identifierName": "lookahead" + }, + "name": "lookahead" + }, + "computed": false, + "leadingComments": null + }, + "operator": "&&", + "right": { + "type": "BinaryExpression", + "start": 2715, + "end": 2743, + "loc": { + "start": { + "line": 109, + "column": 28 + }, + "end": { + "line": 109, + "column": 56 + } + }, + "left": { + "type": "MemberExpression", + "start": 2715, + "end": 2734, + "loc": { + "start": { + "line": 109, + "column": 28 + }, + "end": { + "line": 109, + "column": 47 + } + }, + "object": { + "type": "MemberExpression", + "start": 2715, + "end": 2729, + "loc": { + "start": { + "line": 109, + "column": 28 + }, + "end": { + "line": 109, + "column": 42 + } + }, + "object": { + "type": "ThisExpression", + "start": 2715, + "end": 2719, + "loc": { + "start": { + "line": 109, + "column": 28 + }, + "end": { + "line": 109, + "column": 32 + } + } + }, + "property": { + "type": "Identifier", + "start": 2720, + "end": 2729, + "loc": { + "start": { + "line": 109, + "column": 33 + }, + "end": { + "line": 109, + "column": 42 + }, + "identifierName": "lookahead" + }, + "name": "lookahead" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 2730, + "end": 2734, + "loc": { + "start": { + "line": 109, + "column": 43 + }, + "end": { + "line": 109, + "column": 47 + }, + "identifierName": "type" + }, + "name": "type" + }, + "computed": false + }, + "operator": "!==", + "right": { + "type": "StringLiteral", + "start": 2739, + "end": 2743, + "loc": { + "start": { + "line": 109, + "column": 52 + }, + "end": { + "line": 109, + "column": 56 + } + }, + "extra": { + "rawValue": "RP", + "raw": "\"RP\"" + }, + "value": "RP" + } + }, + "leadingComments": null + }, + "consequent": { + "type": "BlockStatement", + "start": 2745, + "end": 2799, + "loc": { + "start": { + "line": 109, + "column": 58 + }, + "end": { + "line": 111, + "column": 7 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 2755, + "end": 2791, + "loc": { + "start": { + "line": 110, + "column": 8 + }, + "end": { + "line": 110, + "column": 44 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 2755, + "end": 2790, + "loc": { + "start": { + "line": 110, + "column": 8 + }, + "end": { + "line": 110, + "column": 43 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 2755, + "end": 2769, + "loc": { + "start": { + "line": 110, + "column": 8 + }, + "end": { + "line": 110, + "column": 22 + } + }, + "object": { + "type": "ThisExpression", + "start": 2755, + "end": 2759, + "loc": { + "start": { + "line": 110, + "column": 8 + }, + "end": { + "line": 110, + "column": 12 + } + } + }, + "property": { + "type": "Identifier", + "start": 2760, + "end": 2769, + "loc": { + "start": { + "line": 110, + "column": 13 + }, + "end": { + "line": 110, + "column": 22 + }, + "identifierName": "lookahead" + }, + "name": "lookahead" + }, + "computed": false + }, + "right": { + "type": "CallExpression", + "start": 2772, + "end": 2790, + "loc": { + "start": { + "line": 110, + "column": 25 + }, + "end": { + "line": 110, + "column": 43 + } + }, + "callee": { + "type": "MemberExpression", + "start": 2772, + "end": 2788, + "loc": { + "start": { + "line": 110, + "column": 25 + }, + "end": { + "line": 110, + "column": 41 + } + }, + "object": { + "type": "ThisExpression", + "start": 2772, + "end": 2776, + "loc": { + "start": { + "line": 110, + "column": 25 + }, + "end": { + "line": 110, + "column": 29 + } + } + }, + "property": { + "type": "Identifier", + "start": 2777, + "end": 2788, + "loc": { + "start": { + "line": 110, + "column": 30 + }, + "end": { + "line": 110, + "column": 41 + }, + "identifierName": "__nextToken" + }, + "name": "__nextToken" + }, + "computed": false + }, + "arguments": [] + } + } + } + ], + "directives": [] + }, + "alternate": null, + "leadingComments": [ + { + "type": "CommentLine", + "value": " Don't consume RPs as argument tokens", + "start": 2647, + "end": 2686, + "loc": { + "start": { + "line": 108, + "column": 6 + }, + "end": { + "line": 108, + "column": 45 + } + } + } + ] + } + ], + "directives": [] + }, + "leadingComments": [ + { + "type": "CommentLine", + "value": " Parse all arguments inside the parenthesis", + "start": 2256, + "end": 2301, + "loc": { + "start": { + "line": 96, + "column": 4 + }, + "end": { + "line": 96, + "column": 49 + } + } + } + ] + }, + { + "type": "ReturnStatement", + "start": 2811, + "end": 2840, + "loc": { + "start": { + "line": 114, + "column": 4 + }, + "end": { + "line": 114, + "column": 33 + } + }, + "argument": { + "type": "CallExpression", + "start": 2818, + "end": 2839, + "loc": { + "start": { + "line": 114, + "column": 11 + }, + "end": { + "line": 114, + "column": 32 + } + }, + "callee": { + "type": "MemberExpression", + "start": 2818, + "end": 2833, + "loc": { + "start": { + "line": 114, + "column": 11 + }, + "end": { + "line": 114, + "column": 26 + } + }, + "object": { + "type": "ThisExpression", + "start": 2818, + "end": 2822, + "loc": { + "start": { + "line": 114, + "column": 11 + }, + "end": { + "line": 114, + "column": 15 + } + } + }, + "property": { + "type": "Identifier", + "start": 2823, + "end": 2833, + "loc": { + "start": { + "line": 114, + "column": 16 + }, + "end": { + "line": 114, + "column": 26 + }, + "identifierName": "parseApply" + }, + "name": "parseApply" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 2834, + "end": 2838, + "loc": { + "start": { + "line": 114, + "column": 27 + }, + "end": { + "line": 114, + "column": 31 + }, + "identifierName": "tree" + }, + "name": "tree" + } + ] + } + } + ], + "directives": [] + } + }, + { + "type": "ClassMethod", + "start": 2848, + "end": 2960, + "loc": { + "start": { + "line": 117, + "column": 2 + }, + "end": { + "line": 121, + "column": 3 + } + }, + "static": false, + "computed": false, + "key": { + "type": "Identifier", + "start": 2848, + "end": 2859, + "loc": { + "start": { + "line": 117, + "column": 2 + }, + "end": { + "line": 117, + "column": 13 + }, + "identifierName": "__nextToken" + }, + "name": "__nextToken" + }, + "kind": "method", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [], + "body": { + "type": "BlockStatement", + "start": 2862, + "end": 2960, + "loc": { + "start": { + "line": 117, + "column": 16 + }, + "end": { + "line": 121, + "column": 3 + } + }, + "body": [ + { + "type": "VariableDeclaration", + "start": 2868, + "end": 2908, + "loc": { + "start": { + "line": 118, + "column": 4 + }, + "end": { + "line": 118, + "column": 44 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 2874, + "end": 2907, + "loc": { + "start": { + "line": 118, + "column": 10 + }, + "end": { + "line": 118, + "column": 43 + } + }, + "id": { + "type": "Identifier", + "start": 2874, + "end": 2879, + "loc": { + "start": { + "line": 118, + "column": 10 + }, + "end": { + "line": 118, + "column": 15 + }, + "identifierName": "token" + }, + "name": "token" + }, + "init": { + "type": "MemberExpression", + "start": 2882, + "end": 2907, + "loc": { + "start": { + "line": 118, + "column": 18 + }, + "end": { + "line": 118, + "column": 43 + } + }, + "object": { + "type": "MemberExpression", + "start": 2882, + "end": 2893, + "loc": { + "start": { + "line": 118, + "column": 18 + }, + "end": { + "line": 118, + "column": 29 + } + }, + "object": { + "type": "ThisExpression", + "start": 2882, + "end": 2886, + "loc": { + "start": { + "line": 118, + "column": 18 + }, + "end": { + "line": 118, + "column": 22 + } + } + }, + "property": { + "type": "Identifier", + "start": 2887, + "end": 2893, + "loc": { + "start": { + "line": 118, + "column": 23 + }, + "end": { + "line": 118, + "column": 29 + }, + "identifierName": "tokens" + }, + "name": "tokens" + }, + "computed": false + }, + "property": { + "type": "UpdateExpression", + "start": 2894, + "end": 2906, + "loc": { + "start": { + "line": 118, + "column": 30 + }, + "end": { + "line": 118, + "column": 42 + } + }, + "operator": "++", + "prefix": false, + "argument": { + "type": "MemberExpression", + "start": 2894, + "end": 2904, + "loc": { + "start": { + "line": 118, + "column": 30 + }, + "end": { + "line": 118, + "column": 40 + } + }, + "object": { + "type": "ThisExpression", + "start": 2894, + "end": 2898, + "loc": { + "start": { + "line": 118, + "column": 30 + }, + "end": { + "line": 118, + "column": 34 + } + } + }, + "property": { + "type": "Identifier", + "start": 2899, + "end": 2904, + "loc": { + "start": { + "line": 118, + "column": 35 + }, + "end": { + "line": 118, + "column": 40 + }, + "identifierName": "index" + }, + "name": "index" + }, + "computed": false + } + }, + "computed": true + } + } + ], + "kind": "const" + }, + { + "type": "ReturnStatement", + "start": 2914, + "end": 2956, + "loc": { + "start": { + "line": 120, + "column": 4 + }, + "end": { + "line": 120, + "column": 46 + } + }, + "argument": { + "type": "ConditionalExpression", + "start": 2921, + "end": 2955, + "loc": { + "start": { + "line": 120, + "column": 11 + }, + "end": { + "line": 120, + "column": 45 + } + }, + "test": { + "type": "BinaryExpression", + "start": 2921, + "end": 2940, + "loc": { + "start": { + "line": 120, + "column": 11 + }, + "end": { + "line": 120, + "column": 30 + } + }, + "left": { + "type": "Identifier", + "start": 2921, + "end": 2926, + "loc": { + "start": { + "line": 120, + "column": 11 + }, + "end": { + "line": 120, + "column": 16 + }, + "identifierName": "token" + }, + "name": "token" + }, + "operator": "!==", + "right": { + "type": "Identifier", + "start": 2931, + "end": 2940, + "loc": { + "start": { + "line": 120, + "column": 21 + }, + "end": { + "line": 120, + "column": 30 + }, + "identifierName": "undefined" + }, + "name": "undefined" + } + }, + "consequent": { + "type": "Identifier", + "start": 2943, + "end": 2948, + "loc": { + "start": { + "line": 120, + "column": 33 + }, + "end": { + "line": 120, + "column": 38 + }, + "identifierName": "token" + }, + "name": "token" + }, + "alternate": { + "type": "NullLiteral", + "start": 2951, + "end": 2955, + "loc": { + "start": { + "line": 120, + "column": 41 + }, + "end": { + "line": 120, + "column": 45 + } + } + } + } + } + ], + "directives": [] + } + }, + { + "type": "ClassMethod", + "start": 2964, + "end": 3236, + "loc": { + "start": { + "line": 123, + "column": 2 + }, + "end": { + "line": 132, + "column": 3 + } + }, + "static": false, + "computed": false, + "key": { + "type": "Identifier", + "start": 2964, + "end": 2983, + "loc": { + "start": { + "line": 123, + "column": 2 + }, + "end": { + "line": 123, + "column": 21 + }, + "identifierName": "__parserSyntaxError" + }, + "name": "__parserSyntaxError" + }, + "kind": "method", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 2984, + "end": 2991, + "loc": { + "start": { + "line": 123, + "column": 22 + }, + "end": { + "line": 123, + "column": 29 + }, + "identifierName": "message" + }, + "name": "message" + } + ], + "body": { + "type": "BlockStatement", + "start": 2993, + "end": 3236, + "loc": { + "start": { + "line": 123, + "column": 31 + }, + "end": { + "line": 132, + "column": 3 + } + }, + "body": [ + { + "type": "VariableDeclaration", + "start": 2999, + "end": 3066, + "loc": { + "start": { + "line": 124, + "column": 4 + }, + "end": { + "line": 124, + "column": 71 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 3003, + "end": 3065, + "loc": { + "start": { + "line": 124, + "column": 8 + }, + "end": { + "line": 124, + "column": 70 + } + }, + "id": { + "type": "Identifier", + "start": 3003, + "end": 3008, + "loc": { + "start": { + "line": 124, + "column": 8 + }, + "end": { + "line": 124, + "column": 13 + }, + "identifierName": "start" + }, + "name": "start" + }, + "init": { + "type": "ConditionalExpression", + "start": 3011, + "end": 3065, + "loc": { + "start": { + "line": 124, + "column": 16 + }, + "end": { + "line": 124, + "column": 70 + } + }, + "test": { + "type": "MemberExpression", + "start": 3011, + "end": 3025, + "loc": { + "start": { + "line": 124, + "column": 16 + }, + "end": { + "line": 124, + "column": 30 + } + }, + "object": { + "type": "ThisExpression", + "start": 3011, + "end": 3015, + "loc": { + "start": { + "line": 124, + "column": 16 + }, + "end": { + "line": 124, + "column": 20 + } + } + }, + "property": { + "type": "Identifier", + "start": 3016, + "end": 3025, + "loc": { + "start": { + "line": 124, + "column": 21 + }, + "end": { + "line": 124, + "column": 30 + }, + "identifierName": "lookahead" + }, + "name": "lookahead" + }, + "computed": false + }, + "consequent": { + "type": "MemberExpression", + "start": 3028, + "end": 3048, + "loc": { + "start": { + "line": 124, + "column": 33 + }, + "end": { + "line": 124, + "column": 53 + } + }, + "object": { + "type": "MemberExpression", + "start": 3028, + "end": 3042, + "loc": { + "start": { + "line": 124, + "column": 33 + }, + "end": { + "line": 124, + "column": 47 + } + }, + "object": { + "type": "ThisExpression", + "start": 3028, + "end": 3032, + "loc": { + "start": { + "line": 124, + "column": 33 + }, + "end": { + "line": 124, + "column": 37 + } + } + }, + "property": { + "type": "Identifier", + "start": 3033, + "end": 3042, + "loc": { + "start": { + "line": 124, + "column": 38 + }, + "end": { + "line": 124, + "column": 47 + }, + "identifierName": "lookahead" + }, + "name": "lookahead" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 3043, + "end": 3048, + "loc": { + "start": { + "line": 124, + "column": 48 + }, + "end": { + "line": 124, + "column": 53 + }, + "identifierName": "start" + }, + "name": "start" + }, + "computed": false + }, + "alternate": { + "type": "MemberExpression", + "start": 3051, + "end": 3065, + "loc": { + "start": { + "line": 124, + "column": 56 + }, + "end": { + "line": 124, + "column": 70 + } + }, + "object": { + "type": "ThisExpression", + "start": 3051, + "end": 3055, + "loc": { + "start": { + "line": 124, + "column": 56 + }, + "end": { + "line": 124, + "column": 60 + } + } + }, + "property": { + "type": "Identifier", + "start": 3056, + "end": 3065, + "loc": { + "start": { + "line": 124, + "column": 61 + }, + "end": { + "line": 124, + "column": 70 + }, + "identifierName": "lastIndex" + }, + "name": "lastIndex" + }, + "computed": false + } + } + } + ], + "kind": "let" + }, + { + "type": "ReturnStatement", + "start": 3072, + "end": 3232, + "loc": { + "start": { + "line": 126, + "column": 4 + }, + "end": { + "line": 131, + "column": 6 + } + }, + "argument": { + "type": "NewExpression", + "start": 3079, + "end": 3231, + "loc": { + "start": { + "line": 126, + "column": 11 + }, + "end": { + "line": 131, + "column": 5 + } + }, + "callee": { + "type": "Identifier", + "start": 3083, + "end": 3094, + "loc": { + "start": { + "line": 126, + "column": 15 + }, + "end": { + "line": 126, + "column": 26 + }, + "identifierName": "SyntaxError" + }, + "name": "SyntaxError" + }, + "arguments": [ + { + "type": "TemplateLiteral", + "start": 3102, + "end": 3225, + "loc": { + "start": { + "line": 127, + "column": 6 + }, + "end": { + "line": 130, + "column": 9 + } + }, + "expressions": [ + { + "type": "MemberExpression", + "start": 3118, + "end": 3127, + "loc": { + "start": { + "line": 127, + "column": 22 + }, + "end": { + "line": 127, + "column": 31 + } + }, + "object": { + "type": "ThisExpression", + "start": 3118, + "end": 3122, + "loc": { + "start": { + "line": 127, + "column": 22 + }, + "end": { + "line": 127, + "column": 26 + } + } + }, + "property": { + "type": "Identifier", + "start": 3123, + "end": 3127, + "loc": { + "start": { + "line": 127, + "column": 27 + }, + "end": { + "line": 127, + "column": 31 + }, + "identifierName": "line" + }, + "name": "line" + }, + "computed": false + }, + { + "type": "Identifier", + "start": 3136, + "end": 3141, + "loc": { + "start": { + "line": 127, + "column": 40 + }, + "end": { + "line": 127, + "column": 45 + }, + "identifierName": "start" + }, + "name": "start" + }, + { + "type": "Identifier", + "start": 3146, + "end": 3153, + "loc": { + "start": { + "line": 127, + "column": 50 + }, + "end": { + "line": 127, + "column": 57 + }, + "identifierName": "message" + }, + "name": "message" + }, + { + "type": "CallExpression", + "start": 3158, + "end": 3223, + "loc": { + "start": { + "line": 127, + "column": 62 + }, + "end": { + "line": 130, + "column": 7 + } + }, + "callee": { + "type": "MemberExpression", + "start": 3158, + "end": 3176, + "loc": { + "start": { + "line": 127, + "column": 62 + }, + "end": { + "line": 127, + "column": 80 + } + }, + "object": { + "type": "MemberExpression", + "start": 3158, + "end": 3170, + "loc": { + "start": { + "line": 127, + "column": 62 + }, + "end": { + "line": 127, + "column": 74 + } + }, + "object": { + "type": "ThisExpression", + "start": 3158, + "end": 3162, + "loc": { + "start": { + "line": 127, + "column": 62 + }, + "end": { + "line": 127, + "column": 66 + } + } + }, + "property": { + "type": "Identifier", + "start": 3163, + "end": 3170, + "loc": { + "start": { + "line": 127, + "column": 67 + }, + "end": { + "line": 127, + "column": 74 + }, + "identifierName": "program" + }, + "name": "program" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 3171, + "end": 3176, + "loc": { + "start": { + "line": 127, + "column": 75 + }, + "end": { + "line": 127, + "column": 80 + }, + "identifierName": "slice" + }, + "name": "slice" + }, + "computed": false + }, + "arguments": [ + { + "type": "BinaryExpression", + "start": 3186, + "end": 3195, + "loc": { + "start": { + "line": 128, + "column": 8 + }, + "end": { + "line": 128, + "column": 17 + } + }, + "left": { + "type": "Identifier", + "start": 3186, + "end": 3191, + "loc": { + "start": { + "line": 128, + "column": 8 + }, + "end": { + "line": 128, + "column": 13 + }, + "identifierName": "start" + }, + "name": "start" + }, + "operator": "-", + "right": { + "type": "NumericLiteral", + "start": 3194, + "end": 3195, + "loc": { + "start": { + "line": 128, + "column": 16 + }, + "end": { + "line": 128, + "column": 17 + } + }, + "extra": { + "rawValue": 1, + "raw": "1" + }, + "value": 1 + } + }, + { + "type": "BinaryExpression", + "start": 3205, + "end": 3215, + "loc": { + "start": { + "line": 129, + "column": 8 + }, + "end": { + "line": 129, + "column": 18 + } + }, + "left": { + "type": "Identifier", + "start": 3205, + "end": 3210, + "loc": { + "start": { + "line": 129, + "column": 8 + }, + "end": { + "line": 129, + "column": 13 + }, + "identifierName": "start" + }, + "name": "start" + }, + "operator": "+", + "right": { + "type": "NumericLiteral", + "start": 3213, + "end": 3215, + "loc": { + "start": { + "line": 129, + "column": 16 + }, + "end": { + "line": 129, + "column": 18 + } + }, + "extra": { + "rawValue": 10, + "raw": "10" + }, + "value": 10 + } + } + ] + } + ], + "quasis": [ + { + "type": "TemplateElement", + "start": 3103, + "end": 3116, + "loc": { + "start": { + "line": 127, + "column": 7 + }, + "end": { + "line": 127, + "column": 20 + } + }, + "value": { + "raw": "Parser::Line ", + "cooked": "Parser::Line " + }, + "tail": false + }, + { + "type": "TemplateElement", + "start": 3128, + "end": 3134, + "loc": { + "start": { + "line": 127, + "column": 32 + }, + "end": { + "line": 127, + "column": 38 + } + }, + "value": { + "raw": "::Col ", + "cooked": "::Col " + }, + "tail": false + }, + { + "type": "TemplateElement", + "start": 3142, + "end": 3144, + "loc": { + "start": { + "line": 127, + "column": 46 + }, + "end": { + "line": 127, + "column": 48 + } + }, + "value": { + "raw": "\\n", + "cooked": "\n" + }, + "tail": false + }, + { + "type": "TemplateElement", + "start": 3154, + "end": 3156, + "loc": { + "start": { + "line": 127, + "column": 58 + }, + "end": { + "line": 127, + "column": 60 + } + }, + "value": { + "raw": "\\n", + "cooked": "\n" + }, + "tail": false + }, + { + "type": "TemplateElement", + "start": 3224, + "end": 3224, + "loc": { + "start": { + "line": 130, + "column": 8 + }, + "end": { + "line": 130, + "column": 8 + } + }, + "value": { + "raw": "", + "cooked": "" + }, + "tail": true + } + ] + } + ] + } + } + ], + "directives": [] } } ] - } - } + }, + "leadingComments": [ + { + "type": "CommentBlock", + "value": "*\n * Parser class. Iterates through the given string, tokenizes it and returns a AST tree.\n * @access public\n ", + "start": 121, + "end": 235, + "loc": { + "start": { + "line": 6, + "column": 0 + }, + "end": { + "line": 9, + "column": 3 + } + } + } + ], + "__PseudoExport__": false, + "trailingComments": [] + }, + "specifiers": null, + "source": null, + "leadingComments": null } ], "directives": [] @@ -8950,32 +16867,48 @@ "comments": [ { "type": "CommentBlock", - "value": "*\n * Parser class. Iterates through the given string, tokenizes it and returns a AST tree.\n ", - "start": 136, - "end": 232, + "value": "*\n * Parser class. Iterates through the given string, tokenizes it and returns a AST tree.\n * @access public\n ", + "start": 121, + "end": 235, "loc": { "start": { "line": 6, "column": 0 }, "end": { - "line": 8, + "line": 9, "column": 3 } } }, + { + "type": "CommentBlock", + "value": "*\n * Attributes used by the parser, set to default values\n ", + "start": 253, + "end": 320, + "loc": { + "start": { + "line": 11, + "column": 2 + }, + "end": { + "line": 13, + "column": 5 + } + } + }, { "type": "CommentLine", "value": " Get array of tokens", - "start": 539, - "end": 561, + "start": 612, + "end": 634, "loc": { "start": { - "line": 29, + "line": 33, "column": 4 }, "end": { - "line": 29, + "line": 33, "column": 26 } } @@ -8983,15 +16916,15 @@ { "type": "CommentLine", "value": " Parse if the array is not empty", - "start": 632, - "end": 666, + "start": 705, + "end": 739, "loc": { "start": { - "line": 34, + "line": 38, "column": 4 }, "end": { - "line": 34, + "line": 38, "column": 38 } } @@ -8999,15 +16932,15 @@ { "type": "CommentLine", "value": " Get next token", - "start": 1897, - "end": 1914, + "start": 1970, + "end": 1987, "loc": { "start": { - "line": 81, + "line": 85, "column": 4 }, "end": { - "line": 81, + "line": 85, "column": 21 } } @@ -9015,15 +16948,15 @@ { "type": "CommentLine", "value": " Return if apply is empty (not left parenthesis or null)", - "start": 1961, - "end": 2019, + "start": 2034, + "end": 2092, "loc": { "start": { - "line": 84, + "line": 88, "column": 4 }, "end": { - "line": 84, + "line": 88, "column": 62 } } @@ -9031,15 +16964,15 @@ { "type": "CommentLine", "value": " Parse all arguments inside the parenthesis", - "start": 2183, - "end": 2228, + "start": 2256, + "end": 2301, "loc": { "start": { - "line": 92, + "line": 96, "column": 4 }, "end": { - "line": 92, + "line": 96, "column": 49 } } @@ -9047,15 +16980,15 @@ { "type": "CommentLine", "value": " Don't consume RPs as argument tokens", - "start": 2574, - "end": 2613, + "start": 2647, + "end": 2686, "loc": { "start": { - "line": 104, + "line": 108, "column": 6 }, "end": { - "line": 104, + "line": 108, "column": 45 } } @@ -9064,10 +16997,10 @@ "tokens": [ { "type": { - "label": "const", - "keyword": "const", + "label": "import", + "keyword": "import", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -9076,9 +17009,9 @@ "binop": null, "updateContext": null }, - "value": "const", + "value": "import", "start": 0, - "end": 5, + "end": 6, "loc": { "start": { "line": 1, @@ -9086,7 +17019,7 @@ }, "end": { "line": 1, - "column": 5 + "column": 6 } } }, @@ -9103,43 +17036,16 @@ "binop": null }, "value": "fs", - "start": 6, - "end": 8, + "start": 7, + "end": 9, "loc": { "start": { "line": 1, - "column": 6 + "column": 7 }, "end": { - "line": 1, - "column": 8 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 9, - "end": 10, - "loc": { - "start": { "line": 1, "column": 9 - }, - "end": { - "line": 1, - "column": 10 } } }, @@ -9155,42 +17061,17 @@ "postfix": false, "binop": null }, - "value": "require", - "start": 11, - "end": 18, - "loc": { - "start": { - "line": 1, - "column": 11 - }, - "end": { - "line": 1, - "column": 18 - } - } - }, - { - "type": { - "label": "(", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 18, - "end": 19, + "value": "from", + "start": 10, + "end": 14, "loc": { "start": { "line": 1, - "column": 18 + "column": 10 }, "end": { "line": 1, - "column": 19 + "column": 14 } } }, @@ -9208,41 +17089,16 @@ "updateContext": null }, "value": "fs", - "start": 19, - "end": 23, - "loc": { - "start": { - "line": 1, - "column": 19 - }, - "end": { - "line": 1, - "column": 23 - } - } - }, - { - "type": { - "label": ")", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 23, - "end": 24, + "start": 15, + "end": 19, "loc": { "start": { "line": 1, - "column": 23 + "column": 15 }, "end": { "line": 1, - "column": 24 + "column": 19 } } }, @@ -9259,25 +17115,25 @@ "binop": null, "updateContext": null }, - "start": 24, - "end": 25, + "start": 19, + "end": 20, "loc": { "start": { "line": 1, - "column": 24 + "column": 19 }, "end": { "line": 1, - "column": 25 + "column": 20 } } }, { "type": { - "label": "const", - "keyword": "const", + "label": "import", + "keyword": "import", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -9286,9 +17142,9 @@ "binop": null, "updateContext": null }, - "value": "const", - "start": 27, - "end": 32, + "value": "import", + "start": 22, + "end": 28, "loc": { "start": { "line": 3, @@ -9296,7 +17152,7 @@ }, "end": { "line": 3, - "column": 5 + "column": 6 } } }, @@ -9312,16 +17168,16 @@ "postfix": false, "binop": null }, - "start": 33, - "end": 34, + "start": 29, + "end": 30, "loc": { "start": { "line": 3, - "column": 6 + "column": 7 }, "end": { "line": 3, - "column": 7 + "column": 8 } } }, @@ -9338,102 +17194,24 @@ "binop": null }, "value": "Lexer", - "start": 35, - "end": 40, + "start": 31, + "end": 36, "loc": { "start": { "line": 3, - "column": 8 + "column": 9 }, "end": { - "line": 3, - "column": 13 - } - } - }, - { - "type": { - "label": "}", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 41, - "end": 42, - "loc": { - "start": { "line": 3, "column": 14 - }, - "end": { - "line": 3, - "column": 15 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 43, - "end": 44, - "loc": { - "start": { - "line": 3, - "column": 16 - }, - "end": { - "line": 3, - "column": 17 - } - } - }, - { - "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "require", - "start": 45, - "end": 52, - "loc": { - "start": { - "line": 3, - "column": 18 - }, - "end": { - "line": 3, - "column": 25 } } }, { - "type": { - "label": "(", - "beforeExpr": true, - "startsExpr": true, + "type": { + "label": "}", + "beforeExpr": false, + "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -9441,22 +17219,22 @@ "postfix": false, "binop": null }, - "start": 52, - "end": 53, + "start": 37, + "end": 38, "loc": { "start": { "line": 3, - "column": 25 + "column": 15 }, "end": { "line": 3, - "column": 26 + "column": 16 } } }, { "type": { - "label": "string", + "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, @@ -9464,45 +17242,46 @@ "isAssign": false, "prefix": false, "postfix": false, - "binop": null, - "updateContext": null + "binop": null }, - "value": "./lexer.js", - "start": 53, - "end": 65, + "value": "from", + "start": 39, + "end": 43, "loc": { "start": { "line": 3, - "column": 26 + "column": 17 }, "end": { "line": 3, - "column": 38 + "column": 21 } } }, { "type": { - "label": ")", + "label": "string", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "start": 65, - "end": 66, + "value": "./lexer.js", + "start": 44, + "end": 56, "loc": { "start": { "line": 3, - "column": 38 + "column": 22 }, "end": { "line": 3, - "column": 39 + "column": 34 } } }, @@ -9519,25 +17298,25 @@ "binop": null, "updateContext": null }, - "start": 66, - "end": 67, + "start": 56, + "end": 57, "loc": { "start": { "line": 3, - "column": 39 + "column": 34 }, "end": { "line": 3, - "column": 40 + "column": 35 } } }, { "type": { - "label": "const", - "keyword": "const", + "label": "import", + "keyword": "import", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -9546,9 +17325,9 @@ "binop": null, "updateContext": null }, - "value": "const", - "start": 68, - "end": 73, + "value": "import", + "start": 58, + "end": 64, "loc": { "start": { "line": 4, @@ -9556,7 +17335,7 @@ }, "end": { "line": 4, - "column": 5 + "column": 6 } } }, @@ -9572,16 +17351,16 @@ "postfix": false, "binop": null }, - "start": 74, - "end": 75, + "start": 65, + "end": 66, "loc": { "start": { "line": 4, - "column": 6 + "column": 7 }, "end": { "line": 4, - "column": 7 + "column": 8 } } }, @@ -9598,16 +17377,16 @@ "binop": null }, "value": "Value", - "start": 76, - "end": 81, + "start": 67, + "end": 72, "loc": { "start": { "line": 4, - "column": 8 + "column": 9 }, "end": { "line": 4, - "column": 13 + "column": 14 } } }, @@ -9624,16 +17403,16 @@ "binop": null, "updateContext": null }, - "start": 81, - "end": 82, + "start": 72, + "end": 73, "loc": { "start": { "line": 4, - "column": 13 + "column": 14 }, "end": { "line": 4, - "column": 14 + "column": 15 } } }, @@ -9650,16 +17429,16 @@ "binop": null }, "value": "Word", - "start": 83, - "end": 87, + "start": 74, + "end": 78, "loc": { "start": { "line": 4, - "column": 15 + "column": 16 }, "end": { "line": 4, - "column": 19 + "column": 20 } } }, @@ -9676,16 +17455,16 @@ "binop": null, "updateContext": null }, - "start": 87, - "end": 88, + "start": 78, + "end": 79, "loc": { "start": { "line": 4, - "column": 19 + "column": 20 }, "end": { "line": 4, - "column": 20 + "column": 21 } } }, @@ -9702,16 +17481,16 @@ "binop": null }, "value": "Apply", - "start": 89, - "end": 94, + "start": 80, + "end": 85, "loc": { "start": { "line": 4, - "column": 21 + "column": 22 }, "end": { "line": 4, - "column": 26 + "column": 27 } } }, @@ -9728,16 +17507,16 @@ "binop": null, "updateContext": null }, - "start": 94, - "end": 95, + "start": 85, + "end": 86, "loc": { "start": { "line": 4, - "column": 26 + "column": 27 }, "end": { "line": 4, - "column": 27 + "column": 28 } } }, @@ -9754,16 +17533,16 @@ "binop": null }, "value": "Regex", - "start": 96, - "end": 101, + "start": 87, + "end": 92, "loc": { "start": { "line": 4, - "column": 28 + "column": 29 }, "end": { "line": 4, - "column": 33 + "column": 34 } } }, @@ -9779,43 +17558,16 @@ "postfix": false, "binop": null }, - "start": 102, - "end": 103, + "start": 93, + "end": 94, "loc": { "start": { - "line": 4, - "column": 34 - }, - "end": { "line": 4, "column": 35 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 104, - "end": 105, - "loc": { - "start": { - "line": 4, - "column": 36 }, "end": { "line": 4, - "column": 37 + "column": 36 } } }, @@ -9831,42 +17583,17 @@ "postfix": false, "binop": null }, - "value": "require", - "start": 106, - "end": 113, - "loc": { - "start": { - "line": 4, - "column": 38 - }, - "end": { - "line": 4, - "column": 45 - } - } - }, - { - "type": { - "label": "(", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 113, - "end": 114, + "value": "from", + "start": 95, + "end": 99, "loc": { "start": { "line": 4, - "column": 45 + "column": 37 }, "end": { "line": 4, - "column": 46 + "column": 41 } } }, @@ -9884,41 +17611,16 @@ "updateContext": null }, "value": "../interp/ast.js", - "start": 114, - "end": 132, - "loc": { - "start": { - "line": 4, - "column": 46 - }, - "end": { - "line": 4, - "column": 64 - } - } - }, - { - "type": { - "label": ")", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 132, - "end": 133, + "start": 100, + "end": 118, "loc": { "start": { "line": 4, - "column": 64 + "column": 42 }, "end": { "line": 4, - "column": 65 + "column": 60 } } }, @@ -9935,31 +17637,31 @@ "binop": null, "updateContext": null }, - "start": 133, - "end": 134, + "start": 118, + "end": 119, "loc": { "start": { "line": 4, - "column": 65 + "column": 60 }, "end": { "line": 4, - "column": 66 + "column": 61 } } }, { "type": "CommentBlock", - "value": "*\n * Parser class. Iterates through the given string, tokenizes it and returns a AST tree.\n ", - "start": 136, - "end": 232, + "value": "*\n * Parser class. Iterates through the given string, tokenizes it and returns a AST tree.\n * @access public\n ", + "start": 121, + "end": 235, "loc": { "start": { "line": 6, "column": 0 }, "end": { - "line": 8, + "line": 9, "column": 3 } } @@ -9979,15 +17681,15 @@ "updateContext": null }, "value": "class", - "start": 233, - "end": 238, + "start": 236, + "end": 241, "loc": { "start": { - "line": 9, + "line": 10, "column": 0 }, "end": { - "line": 9, + "line": 10, "column": 5 } } @@ -10005,15 +17707,15 @@ "binop": null }, "value": "Parser", - "start": 239, - "end": 245, + "start": 242, + "end": 248, "loc": { "start": { - "line": 9, + "line": 10, "column": 6 }, "end": { - "line": 9, + "line": 10, "column": 12 } } @@ -10030,19 +17732,35 @@ "postfix": false, "binop": null }, - "start": 246, - "end": 247, + "start": 249, + "end": 250, "loc": { "start": { - "line": 9, + "line": 10, "column": 13 }, "end": { - "line": 9, + "line": 10, "column": 14 } } }, + { + "type": "CommentBlock", + "value": "*\n * Attributes used by the parser, set to default values\n ", + "start": 253, + "end": 320, + "loc": { + "start": { + "line": 11, + "column": 2 + }, + "end": { + "line": 13, + "column": 5 + } + } + }, { "type": { "label": "name", @@ -10056,15 +17774,15 @@ "binop": null }, "value": "constructor", - "start": 250, - "end": 261, + "start": 323, + "end": 334, "loc": { "start": { - "line": 10, + "line": 14, "column": 2 }, "end": { - "line": 10, + "line": 14, "column": 13 } } @@ -10081,15 +17799,15 @@ "postfix": false, "binop": null }, - "start": 261, - "end": 262, + "start": 334, + "end": 335, "loc": { "start": { - "line": 10, + "line": 14, "column": 13 }, "end": { - "line": 10, + "line": 14, "column": 14 } } @@ -10106,15 +17824,15 @@ "postfix": false, "binop": null }, - "start": 262, - "end": 263, + "start": 335, + "end": 336, "loc": { "start": { - "line": 10, + "line": 14, "column": 14 }, "end": { - "line": 10, + "line": 14, "column": 15 } } @@ -10131,15 +17849,15 @@ "postfix": false, "binop": null }, - "start": 264, - "end": 265, + "start": 337, + "end": 338, "loc": { "start": { - "line": 10, + "line": 14, "column": 16 }, "end": { - "line": 10, + "line": 14, "column": 17 } } @@ -10159,15 +17877,15 @@ "updateContext": null }, "value": "this", - "start": 270, - "end": 274, + "start": 343, + "end": 347, "loc": { "start": { - "line": 11, + "line": 15, "column": 4 }, "end": { - "line": 11, + "line": 15, "column": 8 } } @@ -10185,15 +17903,15 @@ "binop": null, "updateContext": null }, - "start": 274, - "end": 275, + "start": 347, + "end": 348, "loc": { "start": { - "line": 11, + "line": 15, "column": 8 }, "end": { - "line": 11, + "line": 15, "column": 9 } } @@ -10211,15 +17929,15 @@ "binop": null }, "value": "index", - "start": 275, - "end": 280, + "start": 348, + "end": 353, "loc": { "start": { - "line": 11, + "line": 15, "column": 9 }, "end": { - "line": 11, + "line": 15, "column": 14 } } @@ -10238,15 +17956,15 @@ "updateContext": null }, "value": "=", - "start": 281, - "end": 282, + "start": 354, + "end": 355, "loc": { "start": { - "line": 11, + "line": 15, "column": 15 }, "end": { - "line": 11, + "line": 15, "column": 16 } } @@ -10265,15 +17983,15 @@ "updateContext": null }, "value": 0, - "start": 283, - "end": 284, + "start": 356, + "end": 357, "loc": { "start": { - "line": 11, + "line": 15, "column": 17 }, "end": { - "line": 11, + "line": 15, "column": 18 } } @@ -10291,15 +18009,15 @@ "binop": null, "updateContext": null }, - "start": 284, - "end": 285, + "start": 357, + "end": 358, "loc": { "start": { - "line": 11, + "line": 15, "column": 18 }, "end": { - "line": 11, + "line": 15, "column": 19 } } @@ -10319,15 +18037,15 @@ "updateContext": null }, "value": "this", - "start": 290, - "end": 294, + "start": 363, + "end": 367, "loc": { "start": { - "line": 12, + "line": 16, "column": 4 }, "end": { - "line": 12, + "line": 16, "column": 8 } } @@ -10345,15 +18063,15 @@ "binop": null, "updateContext": null }, - "start": 294, - "end": 295, + "start": 367, + "end": 368, "loc": { "start": { - "line": 12, + "line": 16, "column": 8 }, "end": { - "line": 12, + "line": 16, "column": 9 } } @@ -10371,15 +18089,15 @@ "binop": null }, "value": "tokens", - "start": 295, - "end": 301, + "start": 368, + "end": 374, "loc": { "start": { - "line": 12, + "line": 16, "column": 9 }, "end": { - "line": 12, + "line": 16, "column": 15 } } @@ -10398,15 +18116,15 @@ "updateContext": null }, "value": "=", - "start": 302, - "end": 303, + "start": 375, + "end": 376, "loc": { "start": { - "line": 12, + "line": 16, "column": 16 }, "end": { - "line": 12, + "line": 16, "column": 17 } } @@ -10424,15 +18142,15 @@ "binop": null, "updateContext": null }, - "start": 304, - "end": 305, + "start": 377, + "end": 378, "loc": { "start": { - "line": 12, + "line": 16, "column": 18 }, "end": { - "line": 12, + "line": 16, "column": 19 } } @@ -10450,15 +18168,15 @@ "binop": null, "updateContext": null }, - "start": 305, - "end": 306, + "start": 378, + "end": 379, "loc": { "start": { - "line": 12, + "line": 16, "column": 19 }, "end": { - "line": 12, + "line": 16, "column": 20 } } @@ -10476,15 +18194,15 @@ "binop": null, "updateContext": null }, - "start": 306, - "end": 307, + "start": 379, + "end": 380, "loc": { "start": { - "line": 12, + "line": 16, "column": 20 }, "end": { - "line": 12, + "line": 16, "column": 21 } } @@ -10504,15 +18222,15 @@ "updateContext": null }, "value": "this", - "start": 312, - "end": 316, + "start": 385, + "end": 389, "loc": { "start": { - "line": 13, + "line": 17, "column": 4 }, "end": { - "line": 13, + "line": 17, "column": 8 } } @@ -10530,15 +18248,15 @@ "binop": null, "updateContext": null }, - "start": 316, - "end": 317, + "start": 389, + "end": 390, "loc": { "start": { - "line": 13, + "line": 17, "column": 8 }, "end": { - "line": 13, + "line": 17, "column": 9 } } @@ -10556,15 +18274,15 @@ "binop": null }, "value": "lookahead", - "start": 317, - "end": 326, + "start": 390, + "end": 399, "loc": { "start": { - "line": 13, + "line": 17, "column": 9 }, "end": { - "line": 13, + "line": 17, "column": 18 } } @@ -10583,15 +18301,15 @@ "updateContext": null }, "value": "=", - "start": 327, - "end": 328, + "start": 400, + "end": 401, "loc": { "start": { - "line": 13, + "line": 17, "column": 19 }, "end": { - "line": 13, + "line": 17, "column": 20 } } @@ -10611,15 +18329,15 @@ "updateContext": null }, "value": "null", - "start": 329, - "end": 333, + "start": 402, + "end": 406, "loc": { "start": { - "line": 13, + "line": 17, "column": 21 }, "end": { - "line": 13, + "line": 17, "column": 25 } } @@ -10637,15 +18355,15 @@ "binop": null, "updateContext": null }, - "start": 333, - "end": 334, + "start": 406, + "end": 407, "loc": { "start": { - "line": 13, + "line": 17, "column": 25 }, "end": { - "line": 13, + "line": 17, "column": 26 } } @@ -10662,15 +18380,15 @@ "postfix": false, "binop": null }, - "start": 337, - "end": 338, + "start": 410, + "end": 411, "loc": { "start": { - "line": 14, + "line": 18, "column": 2 }, "end": { - "line": 14, + "line": 18, "column": 3 } } @@ -10688,15 +18406,15 @@ "binop": null }, "value": "setProgram", - "start": 342, - "end": 352, + "start": 415, + "end": 425, "loc": { "start": { - "line": 16, + "line": 20, "column": 2 }, "end": { - "line": 16, + "line": 20, "column": 12 } } @@ -10713,15 +18431,15 @@ "postfix": false, "binop": null }, - "start": 352, - "end": 353, + "start": 425, + "end": 426, "loc": { "start": { - "line": 16, + "line": 20, "column": 12 }, "end": { - "line": 16, + "line": 20, "column": 13 } } @@ -10739,15 +18457,15 @@ "binop": null }, "value": "program", - "start": 353, - "end": 360, + "start": 426, + "end": 433, "loc": { "start": { - "line": 16, + "line": 20, "column": 13 }, "end": { - "line": 16, + "line": 20, "column": 20 } } @@ -10764,15 +18482,15 @@ "postfix": false, "binop": null }, - "start": 360, - "end": 361, + "start": 433, + "end": 434, "loc": { "start": { - "line": 16, + "line": 20, "column": 20 }, "end": { - "line": 16, + "line": 20, "column": 21 } } @@ -10789,15 +18507,15 @@ "postfix": false, "binop": null }, - "start": 362, - "end": 363, + "start": 435, + "end": 436, "loc": { "start": { - "line": 16, + "line": 20, "column": 22 }, "end": { - "line": 16, + "line": 20, "column": 23 } } @@ -10817,15 +18535,15 @@ "updateContext": null }, "value": "this", - "start": 368, - "end": 372, + "start": 441, + "end": 445, "loc": { "start": { - "line": 17, + "line": 21, "column": 4 }, "end": { - "line": 17, + "line": 21, "column": 8 } } @@ -10843,15 +18561,15 @@ "binop": null, "updateContext": null }, - "start": 372, - "end": 373, + "start": 445, + "end": 446, "loc": { "start": { - "line": 17, + "line": 21, "column": 8 }, "end": { - "line": 17, + "line": 21, "column": 9 } } @@ -10869,15 +18587,15 @@ "binop": null }, "value": "program", - "start": 373, - "end": 380, + "start": 446, + "end": 453, "loc": { "start": { - "line": 17, + "line": 21, "column": 9 }, "end": { - "line": 17, + "line": 21, "column": 16 } } @@ -10896,15 +18614,15 @@ "updateContext": null }, "value": "=", - "start": 381, - "end": 382, + "start": 454, + "end": 455, "loc": { "start": { - "line": 17, + "line": 21, "column": 17 }, "end": { - "line": 17, + "line": 21, "column": 18 } } @@ -10922,15 +18640,15 @@ "binop": null }, "value": "program", - "start": 383, - "end": 390, + "start": 456, + "end": 463, "loc": { "start": { - "line": 17, + "line": 21, "column": 19 }, "end": { - "line": 17, + "line": 21, "column": 26 } } @@ -10948,15 +18666,15 @@ "binop": null, "updateContext": null }, - "start": 390, - "end": 391, + "start": 463, + "end": 464, "loc": { "start": { - "line": 17, + "line": 21, "column": 26 }, "end": { - "line": 17, + "line": 21, "column": 27 } } @@ -10976,15 +18694,15 @@ "updateContext": null }, "value": "this", - "start": 397, - "end": 401, + "start": 470, + "end": 474, "loc": { "start": { - "line": 19, + "line": 23, "column": 4 }, "end": { - "line": 19, + "line": 23, "column": 8 } } @@ -11002,15 +18720,15 @@ "binop": null, "updateContext": null }, - "start": 401, - "end": 402, + "start": 474, + "end": 475, "loc": { "start": { - "line": 19, + "line": 23, "column": 8 }, "end": { - "line": 19, + "line": 23, "column": 9 } } @@ -11028,15 +18746,15 @@ "binop": null }, "value": "index", - "start": 402, - "end": 407, + "start": 475, + "end": 480, "loc": { "start": { - "line": 19, + "line": 23, "column": 9 }, "end": { - "line": 19, + "line": 23, "column": 14 } } @@ -11055,15 +18773,15 @@ "updateContext": null }, "value": "=", - "start": 408, - "end": 409, + "start": 481, + "end": 482, "loc": { "start": { - "line": 19, + "line": 23, "column": 15 }, "end": { - "line": 19, + "line": 23, "column": 16 } } @@ -11082,15 +18800,15 @@ "updateContext": null }, "value": 0, - "start": 410, - "end": 411, + "start": 483, + "end": 484, "loc": { "start": { - "line": 19, + "line": 23, "column": 17 }, "end": { - "line": 19, + "line": 23, "column": 18 } } @@ -11108,15 +18826,15 @@ "binop": null, "updateContext": null }, - "start": 411, - "end": 412, + "start": 484, + "end": 485, "loc": { "start": { - "line": 19, + "line": 23, "column": 18 }, "end": { - "line": 19, + "line": 23, "column": 19 } } @@ -11136,15 +18854,15 @@ "updateContext": null }, "value": "this", - "start": 417, - "end": 421, + "start": 490, + "end": 494, "loc": { "start": { - "line": 20, + "line": 24, "column": 4 }, "end": { - "line": 20, + "line": 24, "column": 8 } } @@ -11162,15 +18880,15 @@ "binop": null, "updateContext": null }, - "start": 421, - "end": 422, + "start": 494, + "end": 495, "loc": { "start": { - "line": 20, + "line": 24, "column": 8 }, "end": { - "line": 20, + "line": 24, "column": 9 } } @@ -11188,15 +18906,15 @@ "binop": null }, "value": "tokens", - "start": 422, - "end": 428, + "start": 495, + "end": 501, "loc": { "start": { - "line": 20, + "line": 24, "column": 9 }, "end": { - "line": 20, + "line": 24, "column": 15 } } @@ -11215,15 +18933,15 @@ "updateContext": null }, "value": "=", - "start": 429, - "end": 430, + "start": 502, + "end": 503, "loc": { "start": { - "line": 20, + "line": 24, "column": 16 }, "end": { - "line": 20, + "line": 24, "column": 17 } } @@ -11241,15 +18959,15 @@ "binop": null, "updateContext": null }, - "start": 431, - "end": 432, + "start": 504, + "end": 505, "loc": { "start": { - "line": 20, + "line": 24, "column": 18 }, "end": { - "line": 20, + "line": 24, "column": 19 } } @@ -11267,15 +18985,15 @@ "binop": null, "updateContext": null }, - "start": 432, - "end": 433, + "start": 505, + "end": 506, "loc": { "start": { - "line": 20, + "line": 24, "column": 19 }, "end": { - "line": 20, + "line": 24, "column": 20 } } @@ -11293,15 +19011,15 @@ "binop": null, "updateContext": null }, - "start": 433, - "end": 434, + "start": 506, + "end": 507, "loc": { "start": { - "line": 20, + "line": 24, "column": 20 }, "end": { - "line": 20, + "line": 24, "column": 21 } } @@ -11321,15 +19039,15 @@ "updateContext": null }, "value": "this", - "start": 439, - "end": 443, + "start": 512, + "end": 516, "loc": { "start": { - "line": 21, + "line": 25, "column": 4 }, "end": { - "line": 21, + "line": 25, "column": 8 } } @@ -11347,15 +19065,15 @@ "binop": null, "updateContext": null }, - "start": 443, - "end": 444, + "start": 516, + "end": 517, "loc": { "start": { - "line": 21, + "line": 25, "column": 8 }, "end": { - "line": 21, + "line": 25, "column": 9 } } @@ -11373,15 +19091,15 @@ "binop": null }, "value": "lookahead", - "start": 444, - "end": 453, + "start": 517, + "end": 526, "loc": { "start": { - "line": 21, + "line": 25, "column": 9 }, "end": { - "line": 21, + "line": 25, "column": 18 } } @@ -11400,15 +19118,15 @@ "updateContext": null }, "value": "=", - "start": 454, - "end": 455, + "start": 527, + "end": 528, "loc": { "start": { - "line": 21, + "line": 25, "column": 19 }, "end": { - "line": 21, + "line": 25, "column": 20 } } @@ -11428,15 +19146,15 @@ "updateContext": null }, "value": "null", - "start": 456, - "end": 460, + "start": 529, + "end": 533, "loc": { "start": { - "line": 21, + "line": 25, "column": 21 }, "end": { - "line": 21, + "line": 25, "column": 25 } } @@ -11454,15 +19172,15 @@ "binop": null, "updateContext": null }, - "start": 460, - "end": 461, + "start": 533, + "end": 534, "loc": { "start": { - "line": 21, + "line": 25, "column": 25 }, "end": { - "line": 21, + "line": 25, "column": 26 } } @@ -11482,15 +19200,15 @@ "updateContext": null }, "value": "return", - "start": 467, - "end": 473, + "start": 540, + "end": 546, "loc": { "start": { - "line": 23, + "line": 27, "column": 4 }, "end": { - "line": 23, + "line": 27, "column": 10 } } @@ -11510,15 +19228,15 @@ "updateContext": null }, "value": "this", - "start": 474, - "end": 478, + "start": 547, + "end": 551, "loc": { "start": { - "line": 23, + "line": 27, "column": 11 }, "end": { - "line": 23, + "line": 27, "column": 15 } } @@ -11536,15 +19254,15 @@ "binop": null, "updateContext": null }, - "start": 478, - "end": 479, + "start": 551, + "end": 552, "loc": { "start": { - "line": 23, + "line": 27, "column": 15 }, "end": { - "line": 23, + "line": 27, "column": 16 } } @@ -11561,15 +19279,15 @@ "postfix": false, "binop": null }, - "start": 482, - "end": 483, + "start": 555, + "end": 556, "loc": { "start": { - "line": 24, + "line": 28, "column": 2 }, "end": { - "line": 24, + "line": 28, "column": 3 } } @@ -11587,15 +19305,15 @@ "binop": null }, "value": "parse", - "start": 487, - "end": 492, + "start": 560, + "end": 565, "loc": { "start": { - "line": 26, + "line": 30, "column": 2 }, "end": { - "line": 26, + "line": 30, "column": 7 } } @@ -11612,15 +19330,15 @@ "postfix": false, "binop": null }, - "start": 492, - "end": 493, + "start": 565, + "end": 566, "loc": { "start": { - "line": 26, + "line": 30, "column": 7 }, "end": { - "line": 26, + "line": 30, "column": 8 } } @@ -11638,15 +19356,15 @@ "binop": null }, "value": "program", - "start": 493, - "end": 500, + "start": 566, + "end": 573, "loc": { "start": { - "line": 26, + "line": 30, "column": 8 }, "end": { - "line": 26, + "line": 30, "column": 15 } } @@ -11663,15 +19381,15 @@ "postfix": false, "binop": null }, - "start": 500, - "end": 501, + "start": 573, + "end": 574, "loc": { "start": { - "line": 26, + "line": 30, "column": 15 }, "end": { - "line": 26, + "line": 30, "column": 16 } } @@ -11688,15 +19406,15 @@ "postfix": false, "binop": null }, - "start": 502, - "end": 503, + "start": 575, + "end": 576, "loc": { "start": { - "line": 26, + "line": 30, "column": 17 }, "end": { - "line": 26, + "line": 30, "column": 18 } } @@ -11716,15 +19434,15 @@ "updateContext": null }, "value": "this", - "start": 508, - "end": 512, + "start": 581, + "end": 585, "loc": { "start": { - "line": 27, + "line": 31, "column": 4 }, "end": { - "line": 27, + "line": 31, "column": 8 } } @@ -11742,15 +19460,15 @@ "binop": null, "updateContext": null }, - "start": 512, - "end": 513, + "start": 585, + "end": 586, "loc": { "start": { - "line": 27, + "line": 31, "column": 8 }, "end": { - "line": 27, + "line": 31, "column": 9 } } @@ -11768,15 +19486,15 @@ "binop": null }, "value": "setProgram", - "start": 513, - "end": 523, + "start": 586, + "end": 596, "loc": { "start": { - "line": 27, + "line": 31, "column": 9 }, "end": { - "line": 27, + "line": 31, "column": 19 } } @@ -11793,15 +19511,15 @@ "postfix": false, "binop": null }, - "start": 523, - "end": 524, + "start": 596, + "end": 597, "loc": { "start": { - "line": 27, + "line": 31, "column": 19 }, "end": { - "line": 27, + "line": 31, "column": 20 } } @@ -11819,15 +19537,15 @@ "binop": null }, "value": "program", - "start": 524, - "end": 531, + "start": 597, + "end": 604, "loc": { "start": { - "line": 27, + "line": 31, "column": 20 }, "end": { - "line": 27, + "line": 31, "column": 27 } } @@ -11844,15 +19562,15 @@ "postfix": false, "binop": null }, - "start": 531, - "end": 532, + "start": 604, + "end": 605, "loc": { "start": { - "line": 27, + "line": 31, "column": 27 }, "end": { - "line": 27, + "line": 31, "column": 28 } } @@ -11870,15 +19588,15 @@ "binop": null, "updateContext": null }, - "start": 532, - "end": 533, + "start": 605, + "end": 606, "loc": { "start": { - "line": 27, + "line": 31, "column": 28 }, "end": { - "line": 27, + "line": 31, "column": 29 } } @@ -11886,15 +19604,15 @@ { "type": "CommentLine", "value": " Get array of tokens", - "start": 539, - "end": 561, + "start": 612, + "end": 634, "loc": { "start": { - "line": 29, + "line": 33, "column": 4 }, "end": { - "line": 29, + "line": 33, "column": 26 } } @@ -11914,15 +19632,15 @@ "updateContext": null }, "value": "this", - "start": 566, - "end": 570, + "start": 639, + "end": 643, "loc": { "start": { - "line": 30, + "line": 34, "column": 4 }, "end": { - "line": 30, + "line": 34, "column": 8 } } @@ -11940,15 +19658,15 @@ "binop": null, "updateContext": null }, - "start": 570, - "end": 571, + "start": 643, + "end": 644, "loc": { "start": { - "line": 30, + "line": 34, "column": 8 }, "end": { - "line": 30, + "line": 34, "column": 9 } } @@ -11966,15 +19684,15 @@ "binop": null }, "value": "tokens", - "start": 571, - "end": 577, + "start": 644, + "end": 650, "loc": { "start": { - "line": 30, + "line": 34, "column": 9 }, "end": { - "line": 30, + "line": 34, "column": 15 } } @@ -11993,15 +19711,15 @@ "updateContext": null }, "value": "=", - "start": 578, - "end": 579, + "start": 651, + "end": 652, "loc": { "start": { - "line": 30, + "line": 34, "column": 16 }, "end": { - "line": 30, + "line": 34, "column": 17 } } @@ -12019,15 +19737,15 @@ "binop": null }, "value": "Lexer", - "start": 580, - "end": 585, + "start": 653, + "end": 658, "loc": { "start": { - "line": 30, + "line": 34, "column": 18 }, "end": { - "line": 30, + "line": 34, "column": 23 } } @@ -12045,15 +19763,15 @@ "binop": null, "updateContext": null }, - "start": 585, - "end": 586, + "start": 658, + "end": 659, "loc": { "start": { - "line": 30, + "line": 34, "column": 23 }, "end": { - "line": 30, + "line": 34, "column": 24 } } @@ -12071,15 +19789,15 @@ "binop": null }, "value": "tokenize", - "start": 586, - "end": 594, + "start": 659, + "end": 667, "loc": { "start": { - "line": 30, + "line": 34, "column": 24 }, "end": { - "line": 30, + "line": 34, "column": 32 } } @@ -12096,15 +19814,15 @@ "postfix": false, "binop": null }, - "start": 594, - "end": 595, + "start": 667, + "end": 668, "loc": { "start": { - "line": 30, + "line": 34, "column": 32 }, "end": { - "line": 30, + "line": 34, "column": 33 } } @@ -12122,15 +19840,15 @@ "binop": null }, "value": "program", - "start": 595, - "end": 602, + "start": 668, + "end": 675, "loc": { "start": { - "line": 30, + "line": 34, "column": 33 }, "end": { - "line": 30, + "line": 34, "column": 40 } } @@ -12147,15 +19865,15 @@ "postfix": false, "binop": null }, - "start": 602, - "end": 603, + "start": 675, + "end": 676, "loc": { "start": { - "line": 30, + "line": 34, "column": 40 }, "end": { - "line": 30, + "line": 34, "column": 41 } } @@ -12173,15 +19891,15 @@ "binop": null, "updateContext": null }, - "start": 603, - "end": 604, + "start": 676, + "end": 677, "loc": { "start": { - "line": 30, + "line": 34, "column": 41 }, "end": { - "line": 30, + "line": 34, "column": 42 } } @@ -12201,15 +19919,15 @@ "updateContext": null }, "value": "let", - "start": 610, - "end": 613, + "start": 683, + "end": 686, "loc": { "start": { - "line": 32, + "line": 36, "column": 4 }, "end": { - "line": 32, + "line": 36, "column": 7 } } @@ -12227,15 +19945,15 @@ "binop": null }, "value": "tree", - "start": 614, - "end": 618, + "start": 687, + "end": 691, "loc": { "start": { - "line": 32, + "line": 36, "column": 8 }, "end": { - "line": 32, + "line": 36, "column": 12 } } @@ -12254,15 +19972,15 @@ "updateContext": null }, "value": "=", - "start": 619, - "end": 620, + "start": 692, + "end": 693, "loc": { "start": { - "line": 32, + "line": 36, "column": 13 }, "end": { - "line": 32, + "line": 36, "column": 14 } } @@ -12282,15 +20000,15 @@ "updateContext": null }, "value": "null", - "start": 621, - "end": 625, + "start": 694, + "end": 698, "loc": { "start": { - "line": 32, + "line": 36, "column": 15 }, "end": { - "line": 32, + "line": 36, "column": 19 } } @@ -12308,15 +20026,15 @@ "binop": null, "updateContext": null }, - "start": 625, - "end": 626, + "start": 698, + "end": 699, "loc": { "start": { - "line": 32, + "line": 36, "column": 19 }, "end": { - "line": 32, + "line": 36, "column": 20 } } @@ -12324,15 +20042,15 @@ { "type": "CommentLine", "value": " Parse if the array is not empty", - "start": 632, - "end": 666, + "start": 705, + "end": 739, "loc": { "start": { - "line": 34, + "line": 38, "column": 4 }, "end": { - "line": 34, + "line": 38, "column": 38 } } @@ -12352,15 +20070,15 @@ "updateContext": null }, "value": "if", - "start": 671, - "end": 673, + "start": 744, + "end": 746, "loc": { "start": { - "line": 35, + "line": 39, "column": 4 }, "end": { - "line": 35, + "line": 39, "column": 6 } } @@ -12377,15 +20095,15 @@ "postfix": false, "binop": null }, - "start": 674, - "end": 675, + "start": 747, + "end": 748, "loc": { "start": { - "line": 35, + "line": 39, "column": 7 }, "end": { - "line": 35, + "line": 39, "column": 8 } } @@ -12405,15 +20123,15 @@ "updateContext": null }, "value": "this", - "start": 675, - "end": 679, + "start": 748, + "end": 752, "loc": { "start": { - "line": 35, + "line": 39, "column": 8 }, "end": { - "line": 35, + "line": 39, "column": 12 } } @@ -12431,15 +20149,15 @@ "binop": null, "updateContext": null }, - "start": 679, - "end": 680, + "start": 752, + "end": 753, "loc": { "start": { - "line": 35, + "line": 39, "column": 12 }, "end": { - "line": 35, + "line": 39, "column": 13 } } @@ -12457,15 +20175,15 @@ "binop": null }, "value": "tokens", - "start": 680, - "end": 686, + "start": 753, + "end": 759, "loc": { "start": { - "line": 35, + "line": 39, "column": 13 }, "end": { - "line": 35, + "line": 39, "column": 19 } } @@ -12483,15 +20201,15 @@ "binop": null, "updateContext": null }, - "start": 686, - "end": 687, + "start": 759, + "end": 760, "loc": { "start": { - "line": 35, + "line": 39, "column": 19 }, "end": { - "line": 35, + "line": 39, "column": 20 } } @@ -12509,15 +20227,15 @@ "binop": null }, "value": "length", - "start": 687, - "end": 693, + "start": 760, + "end": 766, "loc": { "start": { - "line": 35, + "line": 39, "column": 20 }, "end": { - "line": 35, + "line": 39, "column": 26 } } @@ -12536,15 +20254,15 @@ "updateContext": null }, "value": ">", - "start": 694, - "end": 695, + "start": 767, + "end": 768, "loc": { "start": { - "line": 35, + "line": 39, "column": 27 }, "end": { - "line": 35, + "line": 39, "column": 28 } } @@ -12563,15 +20281,15 @@ "updateContext": null }, "value": 0, - "start": 696, - "end": 697, + "start": 769, + "end": 770, "loc": { "start": { - "line": 35, + "line": 39, "column": 29 }, "end": { - "line": 35, + "line": 39, "column": 30 } } @@ -12588,15 +20306,15 @@ "postfix": false, "binop": null }, - "start": 697, - "end": 698, + "start": 770, + "end": 771, "loc": { "start": { - "line": 35, + "line": 39, "column": 30 }, "end": { - "line": 35, + "line": 39, "column": 31 } } @@ -12613,15 +20331,15 @@ "postfix": false, "binop": null }, - "start": 699, - "end": 700, + "start": 772, + "end": 773, "loc": { "start": { - "line": 35, + "line": 39, "column": 32 }, "end": { - "line": 35, + "line": 39, "column": 33 } } @@ -12641,15 +20359,15 @@ "updateContext": null }, "value": "this", - "start": 707, - "end": 711, + "start": 780, + "end": 784, "loc": { "start": { - "line": 36, + "line": 40, "column": 6 }, "end": { - "line": 36, + "line": 40, "column": 10 } } @@ -12667,15 +20385,15 @@ "binop": null, "updateContext": null }, - "start": 711, - "end": 712, + "start": 784, + "end": 785, "loc": { "start": { - "line": 36, + "line": 40, "column": 10 }, "end": { - "line": 36, + "line": 40, "column": 11 } } @@ -12693,15 +20411,15 @@ "binop": null }, "value": "lookahead", - "start": 712, - "end": 721, + "start": 785, + "end": 794, "loc": { "start": { - "line": 36, + "line": 40, "column": 11 }, "end": { - "line": 36, + "line": 40, "column": 20 } } @@ -12720,15 +20438,15 @@ "updateContext": null }, "value": "=", - "start": 722, - "end": 723, + "start": 795, + "end": 796, "loc": { "start": { - "line": 36, + "line": 40, "column": 21 }, "end": { - "line": 36, + "line": 40, "column": 22 } } @@ -12748,15 +20466,15 @@ "updateContext": null }, "value": "this", - "start": 724, - "end": 728, + "start": 797, + "end": 801, "loc": { "start": { - "line": 36, + "line": 40, "column": 23 }, "end": { - "line": 36, + "line": 40, "column": 27 } } @@ -12774,15 +20492,15 @@ "binop": null, "updateContext": null }, - "start": 728, - "end": 729, + "start": 801, + "end": 802, "loc": { "start": { - "line": 36, + "line": 40, "column": 27 }, "end": { - "line": 36, + "line": 40, "column": 28 } } @@ -12800,15 +20518,15 @@ "binop": null }, "value": "__nextToken", - "start": 729, - "end": 740, + "start": 802, + "end": 813, "loc": { "start": { - "line": 36, + "line": 40, "column": 28 }, "end": { - "line": 36, + "line": 40, "column": 39 } } @@ -12825,15 +20543,15 @@ "postfix": false, "binop": null }, - "start": 740, - "end": 741, + "start": 813, + "end": 814, "loc": { "start": { - "line": 36, + "line": 40, "column": 39 }, "end": { - "line": 36, + "line": 40, "column": 40 } } @@ -12850,15 +20568,15 @@ "postfix": false, "binop": null }, - "start": 741, - "end": 742, + "start": 814, + "end": 815, "loc": { "start": { - "line": 36, + "line": 40, "column": 40 }, "end": { - "line": 36, + "line": 40, "column": 41 } } @@ -12876,15 +20594,15 @@ "binop": null, "updateContext": null }, - "start": 742, - "end": 743, + "start": 815, + "end": 816, "loc": { "start": { - "line": 36, + "line": 40, "column": 41 }, "end": { - "line": 36, + "line": 40, "column": 42 } } @@ -12902,15 +20620,15 @@ "binop": null }, "value": "tree", - "start": 750, - "end": 754, + "start": 823, + "end": 827, "loc": { "start": { - "line": 37, + "line": 41, "column": 6 }, "end": { - "line": 37, + "line": 41, "column": 10 } } @@ -12929,15 +20647,15 @@ "updateContext": null }, "value": "=", - "start": 755, - "end": 756, + "start": 828, + "end": 829, "loc": { "start": { - "line": 37, + "line": 41, "column": 11 }, "end": { - "line": 37, + "line": 41, "column": 12 } } @@ -12957,15 +20675,15 @@ "updateContext": null }, "value": "this", - "start": 757, - "end": 761, + "start": 830, + "end": 834, "loc": { "start": { - "line": 37, + "line": 41, "column": 13 }, "end": { - "line": 37, + "line": 41, "column": 17 } } @@ -12983,15 +20701,15 @@ "binop": null, "updateContext": null }, - "start": 761, - "end": 762, + "start": 834, + "end": 835, "loc": { "start": { - "line": 37, + "line": 41, "column": 17 }, "end": { - "line": 37, + "line": 41, "column": 18 } } @@ -13009,15 +20727,15 @@ "binop": null }, "value": "parseExpression", - "start": 762, - "end": 777, + "start": 835, + "end": 850, "loc": { "start": { - "line": 37, + "line": 41, "column": 18 }, "end": { - "line": 37, + "line": 41, "column": 33 } } @@ -13034,15 +20752,15 @@ "postfix": false, "binop": null }, - "start": 777, - "end": 778, + "start": 850, + "end": 851, "loc": { "start": { - "line": 37, + "line": 41, "column": 33 }, "end": { - "line": 37, + "line": 41, "column": 34 } } @@ -13059,15 +20777,15 @@ "postfix": false, "binop": null }, - "start": 778, - "end": 779, + "start": 851, + "end": 852, "loc": { "start": { - "line": 37, + "line": 41, "column": 34 }, "end": { - "line": 37, + "line": 41, "column": 35 } } @@ -13085,15 +20803,15 @@ "binop": null, "updateContext": null }, - "start": 779, - "end": 780, + "start": 852, + "end": 853, "loc": { "start": { - "line": 37, + "line": 41, "column": 35 }, "end": { - "line": 37, + "line": 41, "column": 36 } } @@ -13110,15 +20828,15 @@ "postfix": false, "binop": null }, - "start": 785, - "end": 786, + "start": 858, + "end": 859, "loc": { "start": { - "line": 38, + "line": 42, "column": 4 }, "end": { - "line": 38, + "line": 42, "column": 5 } } @@ -13138,15 +20856,15 @@ "updateContext": null }, "value": "if", - "start": 792, - "end": 794, + "start": 865, + "end": 867, "loc": { "start": { - "line": 40, + "line": 44, "column": 4 }, "end": { - "line": 40, + "line": 44, "column": 6 } } @@ -13163,15 +20881,15 @@ "postfix": false, "binop": null }, - "start": 795, - "end": 796, + "start": 868, + "end": 869, "loc": { "start": { - "line": 40, + "line": 44, "column": 7 }, "end": { - "line": 40, + "line": 44, "column": 8 } } @@ -13191,15 +20909,15 @@ "updateContext": null }, "value": "this", - "start": 796, - "end": 800, + "start": 869, + "end": 873, "loc": { "start": { - "line": 40, + "line": 44, "column": 8 }, "end": { - "line": 40, + "line": 44, "column": 12 } } @@ -13217,15 +20935,15 @@ "binop": null, "updateContext": null }, - "start": 800, - "end": 801, + "start": 873, + "end": 874, "loc": { "start": { - "line": 40, + "line": 44, "column": 12 }, "end": { - "line": 40, + "line": 44, "column": 13 } } @@ -13243,15 +20961,15 @@ "binop": null }, "value": "lookahead", - "start": 801, - "end": 810, + "start": 874, + "end": 883, "loc": { "start": { - "line": 40, + "line": 44, "column": 13 }, "end": { - "line": 40, + "line": 44, "column": 22 } } @@ -13270,15 +20988,15 @@ "updateContext": null }, "value": "!==", - "start": 811, - "end": 814, + "start": 884, + "end": 887, "loc": { "start": { - "line": 40, + "line": 44, "column": 23 }, "end": { - "line": 40, + "line": 44, "column": 26 } } @@ -13298,15 +21016,15 @@ "updateContext": null }, "value": "null", - "start": 815, - "end": 819, + "start": 888, + "end": 892, "loc": { "start": { - "line": 40, + "line": 44, "column": 27 }, "end": { - "line": 40, + "line": 44, "column": 31 } } @@ -13323,15 +21041,15 @@ "postfix": false, "binop": null }, - "start": 819, - "end": 820, + "start": 892, + "end": 893, "loc": { "start": { - "line": 40, + "line": 44, "column": 31 }, "end": { - "line": 40, + "line": 44, "column": 32 } } @@ -13348,15 +21066,15 @@ "postfix": false, "binop": null }, - "start": 821, - "end": 822, + "start": 894, + "end": 895, "loc": { "start": { - "line": 40, + "line": 44, "column": 33 }, "end": { - "line": 40, + "line": 44, "column": 34 } } @@ -13376,15 +21094,15 @@ "updateContext": null }, "value": "throw", - "start": 829, - "end": 834, + "start": 902, + "end": 907, "loc": { "start": { - "line": 41, + "line": 45, "column": 6 }, "end": { - "line": 41, + "line": 45, "column": 11 } } @@ -13404,15 +21122,15 @@ "updateContext": null }, "value": "this", - "start": 835, - "end": 839, + "start": 908, + "end": 912, "loc": { "start": { - "line": 41, + "line": 45, "column": 12 }, "end": { - "line": 41, + "line": 45, "column": 16 } } @@ -13430,15 +21148,15 @@ "binop": null, "updateContext": null }, - "start": 839, - "end": 840, + "start": 912, + "end": 913, "loc": { "start": { - "line": 41, + "line": 45, "column": 16 }, "end": { - "line": 41, + "line": 45, "column": 17 } } @@ -13456,15 +21174,15 @@ "binop": null }, "value": "__parserSyntaxError", - "start": 840, - "end": 859, + "start": 913, + "end": 932, "loc": { "start": { - "line": 41, + "line": 45, "column": 17 }, "end": { - "line": 41, + "line": 45, "column": 36 } } @@ -13481,15 +21199,15 @@ "postfix": false, "binop": null }, - "start": 859, - "end": 860, + "start": 932, + "end": 933, "loc": { "start": { - "line": 41, + "line": 45, "column": 36 }, "end": { - "line": 41, + "line": 45, "column": 37 } } @@ -13508,15 +21226,15 @@ "updateContext": null }, "value": "Unexpected input after the end of file.", - "start": 860, - "end": 901, + "start": 933, + "end": 974, "loc": { "start": { - "line": 41, + "line": 45, "column": 37 }, "end": { - "line": 41, + "line": 45, "column": 78 } } @@ -13533,15 +21251,15 @@ "postfix": false, "binop": null }, - "start": 901, - "end": 902, + "start": 974, + "end": 975, "loc": { "start": { - "line": 41, + "line": 45, "column": 78 }, "end": { - "line": 41, + "line": 45, "column": 79 } } @@ -13559,15 +21277,15 @@ "binop": null, "updateContext": null }, - "start": 902, - "end": 903, + "start": 975, + "end": 976, "loc": { "start": { - "line": 41, + "line": 45, "column": 79 }, "end": { - "line": 41, + "line": 45, "column": 80 } } @@ -13584,15 +21302,15 @@ "postfix": false, "binop": null }, - "start": 908, - "end": 909, + "start": 981, + "end": 982, "loc": { "start": { - "line": 42, + "line": 46, "column": 4 }, "end": { - "line": 42, + "line": 46, "column": 5 } } @@ -13612,15 +21330,15 @@ "updateContext": null }, "value": "return", - "start": 915, - "end": 921, + "start": 988, + "end": 994, "loc": { "start": { - "line": 44, + "line": 48, "column": 4 }, "end": { - "line": 44, + "line": 48, "column": 10 } } @@ -13638,15 +21356,15 @@ "binop": null }, "value": "tree", - "start": 922, - "end": 926, + "start": 995, + "end": 999, "loc": { "start": { - "line": 44, + "line": 48, "column": 11 }, "end": { - "line": 44, + "line": 48, "column": 15 } } @@ -13664,15 +21382,15 @@ "binop": null, "updateContext": null }, - "start": 926, - "end": 927, + "start": 999, + "end": 1000, "loc": { "start": { - "line": 44, + "line": 48, "column": 15 }, "end": { - "line": 44, + "line": 48, "column": 16 } } @@ -13689,15 +21407,15 @@ "postfix": false, "binop": null }, - "start": 930, - "end": 931, + "start": 1003, + "end": 1004, "loc": { "start": { - "line": 45, + "line": 49, "column": 2 }, "end": { - "line": 45, + "line": 49, "column": 3 } } @@ -13715,15 +21433,15 @@ "binop": null }, "value": "static", - "start": 935, - "end": 941, + "start": 1008, + "end": 1014, "loc": { "start": { - "line": 47, + "line": 51, "column": 2 }, "end": { - "line": 47, + "line": 51, "column": 8 } } @@ -13741,15 +21459,15 @@ "binop": null }, "value": "parse", - "start": 942, - "end": 947, + "start": 1015, + "end": 1020, "loc": { "start": { - "line": 47, + "line": 51, "column": 9 }, "end": { - "line": 47, + "line": 51, "column": 14 } } @@ -13766,15 +21484,15 @@ "postfix": false, "binop": null }, - "start": 947, - "end": 948, + "start": 1020, + "end": 1021, "loc": { "start": { - "line": 47, + "line": 51, "column": 14 }, "end": { - "line": 47, + "line": 51, "column": 15 } } @@ -13792,15 +21510,15 @@ "binop": null }, "value": "program", - "start": 948, - "end": 955, + "start": 1021, + "end": 1028, "loc": { "start": { - "line": 47, + "line": 51, "column": 15 }, "end": { - "line": 47, + "line": 51, "column": 22 } } @@ -13817,15 +21535,15 @@ "postfix": false, "binop": null }, - "start": 955, - "end": 956, + "start": 1028, + "end": 1029, "loc": { "start": { - "line": 47, + "line": 51, "column": 22 }, "end": { - "line": 47, + "line": 51, "column": 23 } } @@ -13842,15 +21560,15 @@ "postfix": false, "binop": null }, - "start": 957, - "end": 958, + "start": 1030, + "end": 1031, "loc": { "start": { - "line": 47, + "line": 51, "column": 24 }, "end": { - "line": 47, + "line": 51, "column": 25 } } @@ -13870,15 +21588,15 @@ "updateContext": null }, "value": "return", - "start": 963, - "end": 969, + "start": 1036, + "end": 1042, "loc": { "start": { - "line": 48, + "line": 52, "column": 4 }, "end": { - "line": 48, + "line": 52, "column": 10 } } @@ -13898,15 +21616,15 @@ "updateContext": null }, "value": "new", - "start": 970, - "end": 973, + "start": 1043, + "end": 1046, "loc": { "start": { - "line": 48, + "line": 52, "column": 11 }, "end": { - "line": 48, + "line": 52, "column": 14 } } @@ -13924,15 +21642,15 @@ "binop": null }, "value": "Parser", - "start": 974, - "end": 980, + "start": 1047, + "end": 1053, "loc": { "start": { - "line": 48, + "line": 52, "column": 15 }, "end": { - "line": 48, + "line": 52, "column": 21 } } @@ -13949,15 +21667,15 @@ "postfix": false, "binop": null }, - "start": 980, - "end": 981, + "start": 1053, + "end": 1054, "loc": { "start": { - "line": 48, + "line": 52, "column": 21 }, "end": { - "line": 48, + "line": 52, "column": 22 } } @@ -13974,15 +21692,15 @@ "postfix": false, "binop": null }, - "start": 981, - "end": 982, + "start": 1054, + "end": 1055, "loc": { "start": { - "line": 48, + "line": 52, "column": 22 }, "end": { - "line": 48, + "line": 52, "column": 23 } } @@ -14000,15 +21718,15 @@ "binop": null, "updateContext": null }, - "start": 982, - "end": 983, + "start": 1055, + "end": 1056, "loc": { "start": { - "line": 48, + "line": 52, "column": 23 }, "end": { - "line": 48, + "line": 52, "column": 24 } } @@ -14026,15 +21744,15 @@ "binop": null }, "value": "parse", - "start": 983, - "end": 988, + "start": 1056, + "end": 1061, "loc": { "start": { - "line": 48, + "line": 52, "column": 24 }, "end": { - "line": 48, + "line": 52, "column": 29 } } @@ -14051,15 +21769,15 @@ "postfix": false, "binop": null }, - "start": 988, - "end": 989, + "start": 1061, + "end": 1062, "loc": { "start": { - "line": 48, + "line": 52, "column": 29 }, "end": { - "line": 48, + "line": 52, "column": 30 } } @@ -14077,15 +21795,15 @@ "binop": null }, "value": "program", - "start": 989, - "end": 996, + "start": 1062, + "end": 1069, "loc": { "start": { - "line": 48, + "line": 52, "column": 30 }, "end": { - "line": 48, + "line": 52, "column": 37 } } @@ -14102,15 +21820,15 @@ "postfix": false, "binop": null }, - "start": 996, - "end": 997, + "start": 1069, + "end": 1070, "loc": { "start": { - "line": 48, + "line": 52, "column": 37 }, "end": { - "line": 48, + "line": 52, "column": 38 } } @@ -14128,15 +21846,15 @@ "binop": null, "updateContext": null }, - "start": 997, - "end": 998, + "start": 1070, + "end": 1071, "loc": { "start": { - "line": 48, + "line": 52, "column": 38 }, "end": { - "line": 48, + "line": 52, "column": 39 } } @@ -14153,15 +21871,15 @@ "postfix": false, "binop": null }, - "start": 1001, - "end": 1002, + "start": 1074, + "end": 1075, "loc": { "start": { - "line": 49, + "line": 53, "column": 2 }, "end": { - "line": 49, + "line": 53, "column": 3 } } @@ -14179,15 +21897,15 @@ "binop": null }, "value": "parseFromFile", - "start": 1006, - "end": 1019, + "start": 1079, + "end": 1092, "loc": { "start": { - "line": 51, + "line": 55, "column": 2 }, "end": { - "line": 51, + "line": 55, "column": 15 } } @@ -14204,15 +21922,15 @@ "postfix": false, "binop": null }, - "start": 1019, - "end": 1020, + "start": 1092, + "end": 1093, "loc": { "start": { - "line": 51, + "line": 55, "column": 15 }, "end": { - "line": 51, + "line": 55, "column": 16 } } @@ -14230,15 +21948,15 @@ "binop": null }, "value": "file", - "start": 1020, - "end": 1024, + "start": 1093, + "end": 1097, "loc": { "start": { - "line": 51, + "line": 55, "column": 16 }, "end": { - "line": 51, + "line": 55, "column": 20 } } @@ -14255,15 +21973,15 @@ "postfix": false, "binop": null }, - "start": 1024, - "end": 1025, + "start": 1097, + "end": 1098, "loc": { "start": { - "line": 51, + "line": 55, "column": 20 }, "end": { - "line": 51, + "line": 55, "column": 21 } } @@ -14280,15 +21998,15 @@ "postfix": false, "binop": null }, - "start": 1026, - "end": 1027, + "start": 1099, + "end": 1100, "loc": { "start": { - "line": 51, + "line": 55, "column": 22 }, "end": { - "line": 51, + "line": 55, "column": 23 } } @@ -14308,15 +22026,15 @@ "updateContext": null }, "value": "const", - "start": 1032, - "end": 1037, + "start": 1105, + "end": 1110, "loc": { "start": { - "line": 52, + "line": 56, "column": 4 }, "end": { - "line": 52, + "line": 56, "column": 9 } } @@ -14334,15 +22052,15 @@ "binop": null }, "value": "program", - "start": 1038, - "end": 1045, + "start": 1111, + "end": 1118, "loc": { "start": { - "line": 52, + "line": 56, "column": 10 }, "end": { - "line": 52, + "line": 56, "column": 17 } } @@ -14361,15 +22079,15 @@ "updateContext": null }, "value": "=", - "start": 1046, - "end": 1047, + "start": 1119, + "end": 1120, "loc": { "start": { - "line": 52, + "line": 56, "column": 18 }, "end": { - "line": 52, + "line": 56, "column": 19 } } @@ -14387,15 +22105,15 @@ "binop": null }, "value": "fs", - "start": 1048, - "end": 1050, + "start": 1121, + "end": 1123, "loc": { "start": { - "line": 52, + "line": 56, "column": 20 }, "end": { - "line": 52, + "line": 56, "column": 22 } } @@ -14413,15 +22131,15 @@ "binop": null, "updateContext": null }, - "start": 1050, - "end": 1051, + "start": 1123, + "end": 1124, "loc": { "start": { - "line": 52, + "line": 56, "column": 22 }, "end": { - "line": 52, + "line": 56, "column": 23 } } @@ -14439,15 +22157,15 @@ "binop": null }, "value": "readFileSync", - "start": 1051, - "end": 1063, + "start": 1124, + "end": 1136, "loc": { "start": { - "line": 52, + "line": 56, "column": 23 }, "end": { - "line": 52, + "line": 56, "column": 35 } } @@ -14464,15 +22182,15 @@ "postfix": false, "binop": null }, - "start": 1063, - "end": 1064, + "start": 1136, + "end": 1137, "loc": { "start": { - "line": 52, + "line": 56, "column": 35 }, "end": { - "line": 52, + "line": 56, "column": 36 } } @@ -14490,15 +22208,15 @@ "binop": null }, "value": "file", - "start": 1064, - "end": 1068, + "start": 1137, + "end": 1141, "loc": { "start": { - "line": 52, + "line": 56, "column": 36 }, "end": { - "line": 52, + "line": 56, "column": 40 } } @@ -14516,15 +22234,15 @@ "binop": null, "updateContext": null }, - "start": 1068, - "end": 1069, + "start": 1141, + "end": 1142, "loc": { "start": { - "line": 52, + "line": 56, "column": 40 }, "end": { - "line": 52, + "line": 56, "column": 41 } } @@ -14543,15 +22261,15 @@ "updateContext": null }, "value": "utf8", - "start": 1070, - "end": 1076, + "start": 1143, + "end": 1149, "loc": { "start": { - "line": 52, + "line": 56, "column": 42 }, "end": { - "line": 52, + "line": 56, "column": 48 } } @@ -14568,15 +22286,15 @@ "postfix": false, "binop": null }, - "start": 1076, - "end": 1077, + "start": 1149, + "end": 1150, "loc": { "start": { - "line": 52, + "line": 56, "column": 48 }, "end": { - "line": 52, + "line": 56, "column": 49 } } @@ -14594,15 +22312,15 @@ "binop": null, "updateContext": null }, - "start": 1077, - "end": 1078, + "start": 1150, + "end": 1151, "loc": { "start": { - "line": 52, + "line": 56, "column": 49 }, "end": { - "line": 52, + "line": 56, "column": 50 } } @@ -14622,15 +22340,15 @@ "updateContext": null }, "value": "return", - "start": 1084, - "end": 1090, + "start": 1157, + "end": 1163, "loc": { "start": { - "line": 54, + "line": 58, "column": 4 }, "end": { - "line": 54, + "line": 58, "column": 10 } } @@ -14650,15 +22368,15 @@ "updateContext": null }, "value": "this", - "start": 1091, - "end": 1095, + "start": 1164, + "end": 1168, "loc": { "start": { - "line": 54, + "line": 58, "column": 11 }, "end": { - "line": 54, + "line": 58, "column": 15 } } @@ -14676,15 +22394,15 @@ "binop": null, "updateContext": null }, - "start": 1095, - "end": 1096, + "start": 1168, + "end": 1169, "loc": { "start": { - "line": 54, + "line": 58, "column": 15 }, "end": { - "line": 54, + "line": 58, "column": 16 } } @@ -14702,15 +22420,15 @@ "binop": null }, "value": "parse", - "start": 1096, - "end": 1101, + "start": 1169, + "end": 1174, "loc": { "start": { - "line": 54, + "line": 58, "column": 16 }, "end": { - "line": 54, + "line": 58, "column": 21 } } @@ -14727,15 +22445,15 @@ "postfix": false, "binop": null }, - "start": 1101, - "end": 1102, + "start": 1174, + "end": 1175, "loc": { "start": { - "line": 54, + "line": 58, "column": 21 }, "end": { - "line": 54, + "line": 58, "column": 22 } } @@ -14753,15 +22471,15 @@ "binop": null }, "value": "program", - "start": 1102, - "end": 1109, + "start": 1175, + "end": 1182, "loc": { "start": { - "line": 54, + "line": 58, "column": 22 }, "end": { - "line": 54, + "line": 58, "column": 29 } } @@ -14778,15 +22496,15 @@ "postfix": false, "binop": null }, - "start": 1109, - "end": 1110, + "start": 1182, + "end": 1183, "loc": { "start": { - "line": 54, + "line": 58, "column": 29 }, "end": { - "line": 54, + "line": 58, "column": 30 } } @@ -14804,15 +22522,15 @@ "binop": null, "updateContext": null }, - "start": 1110, - "end": 1111, + "start": 1183, + "end": 1184, "loc": { "start": { - "line": 54, + "line": 58, "column": 30 }, "end": { - "line": 54, + "line": 58, "column": 31 } } @@ -14829,15 +22547,15 @@ "postfix": false, "binop": null }, - "start": 1114, - "end": 1115, + "start": 1187, + "end": 1188, "loc": { "start": { - "line": 55, + "line": 59, "column": 2 }, "end": { - "line": 55, + "line": 59, "column": 3 } } @@ -14855,15 +22573,15 @@ "binop": null }, "value": "static", - "start": 1119, - "end": 1125, + "start": 1192, + "end": 1198, "loc": { "start": { - "line": 57, + "line": 61, "column": 2 }, "end": { - "line": 57, + "line": 61, "column": 8 } } @@ -14881,15 +22599,15 @@ "binop": null }, "value": "parseFromFile", - "start": 1126, - "end": 1139, + "start": 1199, + "end": 1212, "loc": { "start": { - "line": 57, + "line": 61, "column": 9 }, "end": { - "line": 57, + "line": 61, "column": 22 } } @@ -14906,15 +22624,15 @@ "postfix": false, "binop": null }, - "start": 1139, - "end": 1140, + "start": 1212, + "end": 1213, "loc": { "start": { - "line": 57, + "line": 61, "column": 22 }, "end": { - "line": 57, + "line": 61, "column": 23 } } @@ -14932,15 +22650,15 @@ "binop": null }, "value": "file", - "start": 1140, - "end": 1144, + "start": 1213, + "end": 1217, "loc": { "start": { - "line": 57, + "line": 61, "column": 23 }, "end": { - "line": 57, + "line": 61, "column": 27 } } @@ -14957,15 +22675,15 @@ "postfix": false, "binop": null }, - "start": 1144, - "end": 1145, + "start": 1217, + "end": 1218, "loc": { "start": { - "line": 57, + "line": 61, "column": 27 }, "end": { - "line": 57, + "line": 61, "column": 28 } } @@ -14982,15 +22700,15 @@ "postfix": false, "binop": null }, - "start": 1146, - "end": 1147, + "start": 1219, + "end": 1220, "loc": { "start": { - "line": 57, + "line": 61, "column": 29 }, "end": { - "line": 57, + "line": 61, "column": 30 } } @@ -15010,15 +22728,15 @@ "updateContext": null }, "value": "return", - "start": 1152, - "end": 1158, + "start": 1225, + "end": 1231, "loc": { "start": { - "line": 58, + "line": 62, "column": 4 }, "end": { - "line": 58, + "line": 62, "column": 10 } } @@ -15038,15 +22756,15 @@ "updateContext": null }, "value": "new", - "start": 1159, - "end": 1162, + "start": 1232, + "end": 1235, "loc": { "start": { - "line": 58, + "line": 62, "column": 11 }, "end": { - "line": 58, + "line": 62, "column": 14 } } @@ -15064,15 +22782,15 @@ "binop": null }, "value": "Parser", - "start": 1163, - "end": 1169, + "start": 1236, + "end": 1242, "loc": { "start": { - "line": 58, + "line": 62, "column": 15 }, "end": { - "line": 58, + "line": 62, "column": 21 } } @@ -15089,15 +22807,15 @@ "postfix": false, "binop": null }, - "start": 1169, - "end": 1170, + "start": 1242, + "end": 1243, "loc": { "start": { - "line": 58, + "line": 62, "column": 21 }, "end": { - "line": 58, + "line": 62, "column": 22 } } @@ -15114,15 +22832,15 @@ "postfix": false, "binop": null }, - "start": 1170, - "end": 1171, + "start": 1243, + "end": 1244, "loc": { "start": { - "line": 58, + "line": 62, "column": 22 }, "end": { - "line": 58, + "line": 62, "column": 23 } } @@ -15140,15 +22858,15 @@ "binop": null, "updateContext": null }, - "start": 1171, - "end": 1172, + "start": 1244, + "end": 1245, "loc": { "start": { - "line": 58, + "line": 62, "column": 23 }, "end": { - "line": 58, + "line": 62, "column": 24 } } @@ -15166,15 +22884,15 @@ "binop": null }, "value": "parseFromFile", - "start": 1172, - "end": 1185, + "start": 1245, + "end": 1258, "loc": { "start": { - "line": 58, + "line": 62, "column": 24 }, "end": { - "line": 58, + "line": 62, "column": 37 } } @@ -15191,15 +22909,15 @@ "postfix": false, "binop": null }, - "start": 1185, - "end": 1186, + "start": 1258, + "end": 1259, "loc": { "start": { - "line": 58, + "line": 62, "column": 37 }, "end": { - "line": 58, + "line": 62, "column": 38 } } @@ -15217,15 +22935,15 @@ "binop": null }, "value": "file", - "start": 1186, - "end": 1190, + "start": 1259, + "end": 1263, "loc": { "start": { - "line": 58, + "line": 62, "column": 38 }, "end": { - "line": 58, + "line": 62, "column": 42 } } @@ -15242,15 +22960,15 @@ "postfix": false, "binop": null }, - "start": 1190, - "end": 1191, + "start": 1263, + "end": 1264, "loc": { "start": { - "line": 58, + "line": 62, "column": 42 }, "end": { - "line": 58, + "line": 62, "column": 43 } } @@ -15268,15 +22986,15 @@ "binop": null, "updateContext": null }, - "start": 1191, - "end": 1192, + "start": 1264, + "end": 1265, "loc": { "start": { - "line": 58, + "line": 62, "column": 43 }, "end": { - "line": 58, + "line": 62, "column": 44 } } @@ -15293,15 +23011,15 @@ "postfix": false, "binop": null }, - "start": 1195, - "end": 1196, + "start": 1268, + "end": 1269, "loc": { "start": { - "line": 59, + "line": 63, "column": 2 }, "end": { - "line": 59, + "line": 63, "column": 3 } } @@ -15319,15 +23037,15 @@ "binop": null }, "value": "parseExpression", - "start": 1200, - "end": 1215, + "start": 1273, + "end": 1288, "loc": { "start": { - "line": 61, + "line": 65, "column": 2 }, "end": { - "line": 61, + "line": 65, "column": 17 } } @@ -15344,15 +23062,15 @@ "postfix": false, "binop": null }, - "start": 1215, - "end": 1216, + "start": 1288, + "end": 1289, "loc": { "start": { - "line": 61, + "line": 65, "column": 17 }, "end": { - "line": 61, + "line": 65, "column": 18 } } @@ -15369,15 +23087,15 @@ "postfix": false, "binop": null }, - "start": 1216, - "end": 1217, + "start": 1289, + "end": 1290, "loc": { "start": { - "line": 61, + "line": 65, "column": 18 }, "end": { - "line": 61, + "line": 65, "column": 19 } } @@ -15394,15 +23112,15 @@ "postfix": false, "binop": null }, - "start": 1218, - "end": 1219, + "start": 1291, + "end": 1292, "loc": { "start": { - "line": 61, + "line": 65, "column": 20 }, "end": { - "line": 61, + "line": 65, "column": 21 } } @@ -15422,15 +23140,15 @@ "updateContext": null }, "value": "let", - "start": 1224, - "end": 1227, + "start": 1297, + "end": 1300, "loc": { "start": { - "line": 62, + "line": 66, "column": 4 }, "end": { - "line": 62, + "line": 66, "column": 7 } } @@ -15448,15 +23166,15 @@ "binop": null }, "value": "expr", - "start": 1228, - "end": 1232, + "start": 1301, + "end": 1305, "loc": { "start": { - "line": 62, + "line": 66, "column": 8 }, "end": { - "line": 62, + "line": 66, "column": 12 } } @@ -15474,15 +23192,15 @@ "binop": null, "updateContext": null }, - "start": 1232, - "end": 1233, + "start": 1305, + "end": 1306, "loc": { "start": { - "line": 62, + "line": 66, "column": 12 }, "end": { - "line": 62, + "line": 66, "column": 13 } } @@ -15502,15 +23220,15 @@ "updateContext": null }, "value": "if", - "start": 1238, - "end": 1240, + "start": 1311, + "end": 1313, "loc": { "start": { - "line": 63, + "line": 67, "column": 4 }, "end": { - "line": 63, + "line": 67, "column": 6 } } @@ -15527,15 +23245,15 @@ "postfix": false, "binop": null }, - "start": 1241, - "end": 1242, + "start": 1314, + "end": 1315, "loc": { "start": { - "line": 63, + "line": 67, "column": 7 }, "end": { - "line": 63, + "line": 67, "column": 8 } } @@ -15555,15 +23273,15 @@ "updateContext": null }, "value": "this", - "start": 1242, - "end": 1246, + "start": 1315, + "end": 1319, "loc": { "start": { - "line": 63, + "line": 67, "column": 8 }, "end": { - "line": 63, + "line": 67, "column": 12 } } @@ -15581,15 +23299,15 @@ "binop": null, "updateContext": null }, - "start": 1246, - "end": 1247, + "start": 1319, + "end": 1320, "loc": { "start": { - "line": 63, + "line": 67, "column": 12 }, "end": { - "line": 63, + "line": 67, "column": 13 } } @@ -15607,15 +23325,15 @@ "binop": null }, "value": "lookahead", - "start": 1247, - "end": 1256, + "start": 1320, + "end": 1329, "loc": { "start": { - "line": 63, + "line": 67, "column": 13 }, "end": { - "line": 63, + "line": 67, "column": 22 } } @@ -15633,15 +23351,15 @@ "binop": null, "updateContext": null }, - "start": 1256, - "end": 1257, + "start": 1329, + "end": 1330, "loc": { "start": { - "line": 63, + "line": 67, "column": 22 }, "end": { - "line": 63, + "line": 67, "column": 23 } } @@ -15659,15 +23377,15 @@ "binop": null }, "value": "type", - "start": 1257, - "end": 1261, + "start": 1330, + "end": 1334, "loc": { "start": { - "line": 63, + "line": 67, "column": 23 }, "end": { - "line": 63, + "line": 67, "column": 27 } } @@ -15686,15 +23404,15 @@ "updateContext": null }, "value": "===", - "start": 1262, - "end": 1265, + "start": 1335, + "end": 1338, "loc": { "start": { - "line": 63, + "line": 67, "column": 28 }, "end": { - "line": 63, + "line": 67, "column": 31 } } @@ -15713,15 +23431,15 @@ "updateContext": null }, "value": "STRING", - "start": 1266, - "end": 1274, + "start": 1339, + "end": 1347, "loc": { "start": { - "line": 63, + "line": 67, "column": 32 }, "end": { - "line": 63, + "line": 67, "column": 40 } } @@ -15738,15 +23456,15 @@ "postfix": false, "binop": null }, - "start": 1274, - "end": 1275, + "start": 1347, + "end": 1348, "loc": { "start": { - "line": 63, + "line": 67, "column": 40 }, "end": { - "line": 63, + "line": 67, "column": 41 } } @@ -15763,15 +23481,15 @@ "postfix": false, "binop": null }, - "start": 1276, - "end": 1277, + "start": 1349, + "end": 1350, "loc": { "start": { - "line": 63, + "line": 67, "column": 42 }, "end": { - "line": 63, + "line": 67, "column": 43 } } @@ -15789,15 +23507,15 @@ "binop": null }, "value": "expr", - "start": 1284, - "end": 1288, + "start": 1357, + "end": 1361, "loc": { "start": { - "line": 64, + "line": 68, "column": 6 }, "end": { - "line": 64, + "line": 68, "column": 10 } } @@ -15816,15 +23534,15 @@ "updateContext": null }, "value": "=", - "start": 1289, - "end": 1290, + "start": 1362, + "end": 1363, "loc": { "start": { - "line": 64, + "line": 68, "column": 11 }, "end": { - "line": 64, + "line": 68, "column": 12 } } @@ -15844,15 +23562,15 @@ "updateContext": null }, "value": "new", - "start": 1291, - "end": 1294, + "start": 1364, + "end": 1367, "loc": { "start": { - "line": 64, + "line": 68, "column": 13 }, "end": { - "line": 64, + "line": 68, "column": 16 } } @@ -15870,15 +23588,15 @@ "binop": null }, "value": "Value", - "start": 1295, - "end": 1300, + "start": 1368, + "end": 1373, "loc": { "start": { - "line": 64, + "line": 68, "column": 17 }, "end": { - "line": 64, + "line": 68, "column": 22 } } @@ -15895,15 +23613,15 @@ "postfix": false, "binop": null }, - "start": 1300, - "end": 1301, + "start": 1373, + "end": 1374, "loc": { "start": { - "line": 64, + "line": 68, "column": 22 }, "end": { - "line": 64, + "line": 68, "column": 23 } } @@ -15923,15 +23641,15 @@ "updateContext": null }, "value": "this", - "start": 1301, - "end": 1305, + "start": 1374, + "end": 1378, "loc": { "start": { - "line": 64, + "line": 68, "column": 23 }, "end": { - "line": 64, + "line": 68, "column": 27 } } @@ -15949,15 +23667,15 @@ "binop": null, "updateContext": null }, - "start": 1305, - "end": 1306, + "start": 1378, + "end": 1379, "loc": { "start": { - "line": 64, + "line": 68, "column": 27 }, "end": { - "line": 64, + "line": 68, "column": 28 } } @@ -15975,15 +23693,15 @@ "binop": null }, "value": "lookahead", - "start": 1306, - "end": 1315, + "start": 1379, + "end": 1388, "loc": { "start": { - "line": 64, + "line": 68, "column": 28 }, "end": { - "line": 64, + "line": 68, "column": 37 } } @@ -16000,15 +23718,15 @@ "postfix": false, "binop": null }, - "start": 1315, - "end": 1316, + "start": 1388, + "end": 1389, "loc": { "start": { - "line": 64, + "line": 68, "column": 37 }, "end": { - "line": 64, + "line": 68, "column": 38 } } @@ -16026,15 +23744,15 @@ "binop": null, "updateContext": null }, - "start": 1316, - "end": 1317, + "start": 1389, + "end": 1390, "loc": { "start": { - "line": 64, + "line": 68, "column": 38 }, "end": { - "line": 64, + "line": 68, "column": 39 } } @@ -16051,15 +23769,15 @@ "postfix": false, "binop": null }, - "start": 1322, - "end": 1323, + "start": 1395, + "end": 1396, "loc": { "start": { - "line": 65, + "line": 69, "column": 4 }, "end": { - "line": 65, + "line": 69, "column": 5 } } @@ -16079,15 +23797,15 @@ "updateContext": null }, "value": "else", - "start": 1324, - "end": 1328, + "start": 1397, + "end": 1401, "loc": { "start": { - "line": 65, + "line": 69, "column": 6 }, "end": { - "line": 65, + "line": 69, "column": 10 } } @@ -16107,15 +23825,15 @@ "updateContext": null }, "value": "if", - "start": 1329, - "end": 1331, + "start": 1402, + "end": 1404, "loc": { "start": { - "line": 65, + "line": 69, "column": 11 }, "end": { - "line": 65, + "line": 69, "column": 13 } } @@ -16132,15 +23850,15 @@ "postfix": false, "binop": null }, - "start": 1332, - "end": 1333, + "start": 1405, + "end": 1406, "loc": { "start": { - "line": 65, + "line": 69, "column": 14 }, "end": { - "line": 65, + "line": 69, "column": 15 } } @@ -16160,15 +23878,15 @@ "updateContext": null }, "value": "this", - "start": 1333, - "end": 1337, + "start": 1406, + "end": 1410, "loc": { "start": { - "line": 65, + "line": 69, "column": 15 }, "end": { - "line": 65, + "line": 69, "column": 19 } } @@ -16186,15 +23904,15 @@ "binop": null, "updateContext": null }, - "start": 1337, - "end": 1338, + "start": 1410, + "end": 1411, "loc": { "start": { - "line": 65, + "line": 69, "column": 19 }, "end": { - "line": 65, + "line": 69, "column": 20 } } @@ -16212,15 +23930,15 @@ "binop": null }, "value": "lookahead", - "start": 1338, - "end": 1347, + "start": 1411, + "end": 1420, "loc": { "start": { - "line": 65, + "line": 69, "column": 20 }, "end": { - "line": 65, + "line": 69, "column": 29 } } @@ -16238,15 +23956,15 @@ "binop": null, "updateContext": null }, - "start": 1347, - "end": 1348, + "start": 1420, + "end": 1421, "loc": { "start": { - "line": 65, + "line": 69, "column": 29 }, "end": { - "line": 65, + "line": 69, "column": 30 } } @@ -16264,15 +23982,15 @@ "binop": null }, "value": "type", - "start": 1348, - "end": 1352, + "start": 1421, + "end": 1425, "loc": { "start": { - "line": 65, + "line": 69, "column": 30 }, "end": { - "line": 65, + "line": 69, "column": 34 } } @@ -16291,15 +24009,15 @@ "updateContext": null }, "value": "===", - "start": 1353, - "end": 1356, + "start": 1426, + "end": 1429, "loc": { "start": { - "line": 65, + "line": 69, "column": 35 }, "end": { - "line": 65, + "line": 69, "column": 38 } } @@ -16318,15 +24036,15 @@ "updateContext": null }, "value": "NUMBER", - "start": 1357, - "end": 1365, + "start": 1430, + "end": 1438, "loc": { "start": { - "line": 65, + "line": 69, "column": 39 }, "end": { - "line": 65, + "line": 69, "column": 47 } } @@ -16343,15 +24061,15 @@ "postfix": false, "binop": null }, - "start": 1365, - "end": 1366, + "start": 1438, + "end": 1439, "loc": { "start": { - "line": 65, + "line": 69, "column": 47 }, "end": { - "line": 65, + "line": 69, "column": 48 } } @@ -16368,15 +24086,15 @@ "postfix": false, "binop": null }, - "start": 1367, - "end": 1368, + "start": 1440, + "end": 1441, "loc": { "start": { - "line": 65, + "line": 69, "column": 49 }, "end": { - "line": 65, + "line": 69, "column": 50 } } @@ -16396,15 +24114,15 @@ "updateContext": null }, "value": "this", - "start": 1375, - "end": 1379, + "start": 1448, + "end": 1452, "loc": { "start": { - "line": 66, + "line": 70, "column": 6 }, "end": { - "line": 66, + "line": 70, "column": 10 } } @@ -16422,15 +24140,15 @@ "binop": null, "updateContext": null }, - "start": 1379, - "end": 1380, + "start": 1452, + "end": 1453, "loc": { "start": { - "line": 66, + "line": 70, "column": 10 }, "end": { - "line": 66, + "line": 70, "column": 11 } } @@ -16448,15 +24166,15 @@ "binop": null }, "value": "lookahead", - "start": 1380, - "end": 1389, + "start": 1453, + "end": 1462, "loc": { "start": { - "line": 66, + "line": 70, "column": 11 }, "end": { - "line": 66, + "line": 70, "column": 20 } } @@ -16474,15 +24192,15 @@ "binop": null, "updateContext": null }, - "start": 1389, - "end": 1390, + "start": 1462, + "end": 1463, "loc": { "start": { - "line": 66, + "line": 70, "column": 20 }, "end": { - "line": 66, + "line": 70, "column": 21 } } @@ -16500,15 +24218,15 @@ "binop": null }, "value": "value", - "start": 1390, - "end": 1395, + "start": 1463, + "end": 1468, "loc": { "start": { - "line": 66, + "line": 70, "column": 21 }, "end": { - "line": 66, + "line": 70, "column": 26 } } @@ -16527,15 +24245,15 @@ "updateContext": null }, "value": "=", - "start": 1396, - "end": 1397, + "start": 1469, + "end": 1470, "loc": { "start": { - "line": 66, + "line": 70, "column": 27 }, "end": { - "line": 66, + "line": 70, "column": 28 } } @@ -16553,15 +24271,15 @@ "binop": null }, "value": "Number", - "start": 1398, - "end": 1404, + "start": 1471, + "end": 1477, "loc": { "start": { - "line": 66, + "line": 70, "column": 29 }, "end": { - "line": 66, + "line": 70, "column": 35 } } @@ -16578,15 +24296,15 @@ "postfix": false, "binop": null }, - "start": 1404, - "end": 1405, + "start": 1477, + "end": 1478, "loc": { "start": { - "line": 66, + "line": 70, "column": 35 }, "end": { - "line": 66, + "line": 70, "column": 36 } } @@ -16606,15 +24324,15 @@ "updateContext": null }, "value": "this", - "start": 1405, - "end": 1409, + "start": 1478, + "end": 1482, "loc": { "start": { - "line": 66, + "line": 70, "column": 36 }, "end": { - "line": 66, + "line": 70, "column": 40 } } @@ -16632,15 +24350,15 @@ "binop": null, "updateContext": null }, - "start": 1409, - "end": 1410, + "start": 1482, + "end": 1483, "loc": { "start": { - "line": 66, + "line": 70, "column": 40 }, "end": { - "line": 66, + "line": 70, "column": 41 } } @@ -16658,15 +24376,15 @@ "binop": null }, "value": "lookahead", - "start": 1410, - "end": 1419, + "start": 1483, + "end": 1492, "loc": { "start": { - "line": 66, + "line": 70, "column": 41 }, "end": { - "line": 66, + "line": 70, "column": 50 } } @@ -16684,15 +24402,15 @@ "binop": null, "updateContext": null }, - "start": 1419, - "end": 1420, + "start": 1492, + "end": 1493, "loc": { "start": { - "line": 66, + "line": 70, "column": 50 }, "end": { - "line": 66, + "line": 70, "column": 51 } } @@ -16710,15 +24428,15 @@ "binop": null }, "value": "value", - "start": 1420, - "end": 1425, + "start": 1493, + "end": 1498, "loc": { "start": { - "line": 66, + "line": 70, "column": 51 }, "end": { - "line": 66, + "line": 70, "column": 56 } } @@ -16735,15 +24453,15 @@ "postfix": false, "binop": null }, - "start": 1425, - "end": 1426, + "start": 1498, + "end": 1499, "loc": { "start": { - "line": 66, + "line": 70, "column": 56 }, "end": { - "line": 66, + "line": 70, "column": 57 } } @@ -16761,15 +24479,15 @@ "binop": null, "updateContext": null }, - "start": 1426, - "end": 1427, + "start": 1499, + "end": 1500, "loc": { "start": { - "line": 66, + "line": 70, "column": 57 }, "end": { - "line": 66, + "line": 70, "column": 58 } } @@ -16787,15 +24505,15 @@ "binop": null }, "value": "expr", - "start": 1434, - "end": 1438, + "start": 1507, + "end": 1511, "loc": { "start": { - "line": 67, + "line": 71, "column": 6 }, "end": { - "line": 67, + "line": 71, "column": 10 } } @@ -16814,15 +24532,15 @@ "updateContext": null }, "value": "=", - "start": 1439, - "end": 1440, + "start": 1512, + "end": 1513, "loc": { "start": { - "line": 67, + "line": 71, "column": 11 }, "end": { - "line": 67, + "line": 71, "column": 12 } } @@ -16842,15 +24560,15 @@ "updateContext": null }, "value": "new", - "start": 1441, - "end": 1444, + "start": 1514, + "end": 1517, "loc": { "start": { - "line": 67, + "line": 71, "column": 13 }, "end": { - "line": 67, + "line": 71, "column": 16 } } @@ -16868,15 +24586,15 @@ "binop": null }, "value": "Value", - "start": 1445, - "end": 1450, + "start": 1518, + "end": 1523, "loc": { "start": { - "line": 67, + "line": 71, "column": 17 }, "end": { - "line": 67, + "line": 71, "column": 22 } } @@ -16893,15 +24611,15 @@ "postfix": false, "binop": null }, - "start": 1450, - "end": 1451, + "start": 1523, + "end": 1524, "loc": { "start": { - "line": 67, + "line": 71, "column": 22 }, "end": { - "line": 67, + "line": 71, "column": 23 } } @@ -16921,15 +24639,15 @@ "updateContext": null }, "value": "this", - "start": 1451, - "end": 1455, + "start": 1524, + "end": 1528, "loc": { "start": { - "line": 67, + "line": 71, "column": 23 }, "end": { - "line": 67, + "line": 71, "column": 27 } } @@ -16947,15 +24665,15 @@ "binop": null, "updateContext": null }, - "start": 1455, - "end": 1456, + "start": 1528, + "end": 1529, "loc": { "start": { - "line": 67, + "line": 71, "column": 27 }, "end": { - "line": 67, + "line": 71, "column": 28 } } @@ -16973,15 +24691,15 @@ "binop": null }, "value": "lookahead", - "start": 1456, - "end": 1465, + "start": 1529, + "end": 1538, "loc": { "start": { - "line": 67, + "line": 71, "column": 28 }, "end": { - "line": 67, + "line": 71, "column": 37 } } @@ -16998,15 +24716,15 @@ "postfix": false, "binop": null }, - "start": 1465, - "end": 1466, + "start": 1538, + "end": 1539, "loc": { "start": { - "line": 67, + "line": 71, "column": 37 }, "end": { - "line": 67, + "line": 71, "column": 38 } } @@ -17024,15 +24742,15 @@ "binop": null, "updateContext": null }, - "start": 1466, - "end": 1467, + "start": 1539, + "end": 1540, "loc": { "start": { - "line": 67, + "line": 71, "column": 38 }, "end": { - "line": 67, + "line": 71, "column": 39 } } @@ -17049,15 +24767,15 @@ "postfix": false, "binop": null }, - "start": 1472, - "end": 1473, + "start": 1545, + "end": 1546, "loc": { "start": { - "line": 68, + "line": 72, "column": 4 }, "end": { - "line": 68, + "line": 72, "column": 5 } } @@ -17077,15 +24795,15 @@ "updateContext": null }, "value": "else", - "start": 1474, - "end": 1478, + "start": 1547, + "end": 1551, "loc": { "start": { - "line": 68, + "line": 72, "column": 6 }, "end": { - "line": 68, + "line": 72, "column": 10 } } @@ -17105,15 +24823,15 @@ "updateContext": null }, "value": "if", - "start": 1479, - "end": 1481, + "start": 1552, + "end": 1554, "loc": { "start": { - "line": 68, + "line": 72, "column": 11 }, "end": { - "line": 68, + "line": 72, "column": 13 } } @@ -17130,15 +24848,15 @@ "postfix": false, "binop": null }, - "start": 1482, - "end": 1483, + "start": 1555, + "end": 1556, "loc": { "start": { - "line": 68, + "line": 72, "column": 14 }, "end": { - "line": 68, + "line": 72, "column": 15 } } @@ -17158,15 +24876,15 @@ "updateContext": null }, "value": "this", - "start": 1483, - "end": 1487, + "start": 1556, + "end": 1560, "loc": { "start": { - "line": 68, + "line": 72, "column": 15 }, "end": { - "line": 68, + "line": 72, "column": 19 } } @@ -17184,15 +24902,15 @@ "binop": null, "updateContext": null }, - "start": 1487, - "end": 1488, + "start": 1560, + "end": 1561, "loc": { "start": { - "line": 68, + "line": 72, "column": 19 }, "end": { - "line": 68, + "line": 72, "column": 20 } } @@ -17210,15 +24928,15 @@ "binop": null }, "value": "lookahead", - "start": 1488, - "end": 1497, + "start": 1561, + "end": 1570, "loc": { "start": { - "line": 68, + "line": 72, "column": 20 }, "end": { - "line": 68, + "line": 72, "column": 29 } } @@ -17236,15 +24954,15 @@ "binop": null, "updateContext": null }, - "start": 1497, - "end": 1498, + "start": 1570, + "end": 1571, "loc": { "start": { - "line": 68, + "line": 72, "column": 29 }, "end": { - "line": 68, + "line": 72, "column": 30 } } @@ -17262,15 +24980,15 @@ "binop": null }, "value": "type", - "start": 1498, - "end": 1502, + "start": 1571, + "end": 1575, "loc": { "start": { - "line": 68, + "line": 72, "column": 30 }, "end": { - "line": 68, + "line": 72, "column": 34 } } @@ -17289,15 +25007,15 @@ "updateContext": null }, "value": "===", - "start": 1503, - "end": 1506, + "start": 1576, + "end": 1579, "loc": { "start": { - "line": 68, + "line": 72, "column": 35 }, "end": { - "line": 68, + "line": 72, "column": 38 } } @@ -17316,15 +25034,15 @@ "updateContext": null }, "value": "REGEX", - "start": 1507, - "end": 1514, + "start": 1580, + "end": 1587, "loc": { "start": { - "line": 68, + "line": 72, "column": 39 }, "end": { - "line": 68, + "line": 72, "column": 46 } } @@ -17341,15 +25059,15 @@ "postfix": false, "binop": null }, - "start": 1514, - "end": 1515, + "start": 1587, + "end": 1588, "loc": { "start": { - "line": 68, + "line": 72, "column": 46 }, "end": { - "line": 68, + "line": 72, "column": 47 } } @@ -17366,15 +25084,15 @@ "postfix": false, "binop": null }, - "start": 1516, - "end": 1517, + "start": 1589, + "end": 1590, "loc": { "start": { - "line": 68, + "line": 72, "column": 48 }, "end": { - "line": 68, + "line": 72, "column": 49 } } @@ -17394,15 +25112,15 @@ "updateContext": null }, "value": "const", - "start": 1524, - "end": 1529, + "start": 1597, + "end": 1602, "loc": { "start": { - "line": 69, + "line": 73, "column": 6 }, "end": { - "line": 69, + "line": 73, "column": 11 } } @@ -17420,15 +25138,15 @@ "binop": null }, "value": "fields", - "start": 1530, - "end": 1536, + "start": 1603, + "end": 1609, "loc": { "start": { - "line": 69, + "line": 73, "column": 12 }, "end": { - "line": 69, + "line": 73, "column": 18 } } @@ -17447,15 +25165,15 @@ "updateContext": null }, "value": "=", - "start": 1537, - "end": 1538, + "start": 1610, + "end": 1611, "loc": { "start": { - "line": 69, + "line": 73, "column": 19 }, "end": { - "line": 69, + "line": 73, "column": 20 } } @@ -17475,15 +25193,15 @@ "updateContext": null }, "value": "this", - "start": 1539, - "end": 1543, + "start": 1612, + "end": 1616, "loc": { "start": { - "line": 69, + "line": 73, "column": 21 }, "end": { - "line": 69, + "line": 73, "column": 25 } } @@ -17501,15 +25219,15 @@ "binop": null, "updateContext": null }, - "start": 1543, - "end": 1544, + "start": 1616, + "end": 1617, "loc": { "start": { - "line": 69, + "line": 73, "column": 25 }, "end": { - "line": 69, + "line": 73, "column": 26 } } @@ -17527,15 +25245,15 @@ "binop": null }, "value": "lookahead", - "start": 1544, - "end": 1553, + "start": 1617, + "end": 1626, "loc": { "start": { - "line": 69, + "line": 73, "column": 26 }, "end": { - "line": 69, + "line": 73, "column": 35 } } @@ -17553,15 +25271,15 @@ "binop": null, "updateContext": null }, - "start": 1553, - "end": 1554, + "start": 1626, + "end": 1627, "loc": { "start": { - "line": 69, + "line": 73, "column": 35 }, "end": { - "line": 69, + "line": 73, "column": 36 } } @@ -17579,15 +25297,15 @@ "binop": null }, "value": "value", - "start": 1554, - "end": 1559, + "start": 1627, + "end": 1632, "loc": { "start": { - "line": 69, + "line": 73, "column": 36 }, "end": { - "line": 69, + "line": 73, "column": 41 } } @@ -17605,15 +25323,15 @@ "binop": null, "updateContext": null }, - "start": 1559, - "end": 1560, + "start": 1632, + "end": 1633, "loc": { "start": { - "line": 69, + "line": 73, "column": 41 }, "end": { - "line": 69, + "line": 73, "column": 42 } } @@ -17631,15 +25349,15 @@ "binop": null }, "value": "split", - "start": 1560, - "end": 1565, + "start": 1633, + "end": 1638, "loc": { "start": { - "line": 69, + "line": 73, "column": 42 }, "end": { - "line": 69, + "line": 73, "column": 47 } } @@ -17656,15 +25374,15 @@ "postfix": false, "binop": null }, - "start": 1565, - "end": 1566, + "start": 1638, + "end": 1639, "loc": { "start": { - "line": 69, + "line": 73, "column": 47 }, "end": { - "line": 69, + "line": 73, "column": 48 } } @@ -17683,15 +25401,15 @@ "updateContext": null }, "value": "/", - "start": 1566, - "end": 1569, + "start": 1639, + "end": 1642, "loc": { "start": { - "line": 69, + "line": 73, "column": 48 }, "end": { - "line": 69, + "line": 73, "column": 51 } } @@ -17708,15 +25426,15 @@ "postfix": false, "binop": null }, - "start": 1569, - "end": 1570, + "start": 1642, + "end": 1643, "loc": { "start": { - "line": 69, + "line": 73, "column": 51 }, "end": { - "line": 69, + "line": 73, "column": 52 } } @@ -17734,15 +25452,15 @@ "binop": null, "updateContext": null }, - "start": 1570, - "end": 1571, + "start": 1643, + "end": 1644, "loc": { "start": { - "line": 69, + "line": 73, "column": 52 }, "end": { - "line": 69, + "line": 73, "column": 53 } } @@ -17760,15 +25478,15 @@ "binop": null }, "value": "expr", - "start": 1578, - "end": 1582, + "start": 1651, + "end": 1655, "loc": { "start": { - "line": 70, + "line": 74, "column": 6 }, "end": { - "line": 70, + "line": 74, "column": 10 } } @@ -17787,15 +25505,15 @@ "updateContext": null }, "value": "=", - "start": 1583, - "end": 1584, + "start": 1656, + "end": 1657, "loc": { "start": { - "line": 70, + "line": 74, "column": 11 }, "end": { - "line": 70, + "line": 74, "column": 12 } } @@ -17815,15 +25533,15 @@ "updateContext": null }, "value": "new", - "start": 1585, - "end": 1588, + "start": 1658, + "end": 1661, "loc": { "start": { - "line": 70, + "line": 74, "column": 13 }, "end": { - "line": 70, + "line": 74, "column": 16 } } @@ -17841,15 +25559,15 @@ "binop": null }, "value": "Regex", - "start": 1589, - "end": 1594, + "start": 1662, + "end": 1667, "loc": { "start": { - "line": 70, + "line": 74, "column": 17 }, "end": { - "line": 70, + "line": 74, "column": 22 } } @@ -17866,15 +25584,15 @@ "postfix": false, "binop": null }, - "start": 1594, - "end": 1595, + "start": 1667, + "end": 1668, "loc": { "start": { - "line": 70, + "line": 74, "column": 22 }, "end": { - "line": 70, + "line": 74, "column": 23 } } @@ -17891,15 +25609,15 @@ "postfix": false, "binop": null }, - "start": 1595, - "end": 1596, + "start": 1668, + "end": 1669, "loc": { "start": { - "line": 70, + "line": 74, "column": 23 }, "end": { - "line": 70, + "line": 74, "column": 24 } } @@ -17917,15 +25635,15 @@ "binop": null }, "value": "body", - "start": 1597, - "end": 1601, + "start": 1670, + "end": 1674, "loc": { "start": { - "line": 70, + "line": 74, "column": 25 }, "end": { - "line": 70, + "line": 74, "column": 29 } } @@ -17943,15 +25661,15 @@ "binop": null, "updateContext": null }, - "start": 1601, - "end": 1602, + "start": 1674, + "end": 1675, "loc": { "start": { - "line": 70, + "line": 74, "column": 29 }, "end": { - "line": 70, + "line": 74, "column": 30 } } @@ -17969,15 +25687,15 @@ "binop": null }, "value": "fields", - "start": 1603, - "end": 1609, + "start": 1676, + "end": 1682, "loc": { "start": { - "line": 70, + "line": 74, "column": 31 }, "end": { - "line": 70, + "line": 74, "column": 37 } } @@ -17995,15 +25713,15 @@ "binop": null, "updateContext": null }, - "start": 1609, - "end": 1610, + "start": 1682, + "end": 1683, "loc": { "start": { - "line": 70, + "line": 74, "column": 37 }, "end": { - "line": 70, + "line": 74, "column": 38 } } @@ -18022,15 +25740,15 @@ "updateContext": null }, "value": 1, - "start": 1610, - "end": 1611, + "start": 1683, + "end": 1684, "loc": { "start": { - "line": 70, + "line": 74, "column": 38 }, "end": { - "line": 70, + "line": 74, "column": 39 } } @@ -18048,15 +25766,15 @@ "binop": null, "updateContext": null }, - "start": 1611, - "end": 1612, + "start": 1684, + "end": 1685, "loc": { "start": { - "line": 70, + "line": 74, "column": 39 }, "end": { - "line": 70, + "line": 74, "column": 40 } } @@ -18074,15 +25792,15 @@ "binop": null, "updateContext": null }, - "start": 1612, - "end": 1613, + "start": 1685, + "end": 1686, "loc": { "start": { - "line": 70, + "line": 74, "column": 40 }, "end": { - "line": 70, + "line": 74, "column": 41 } } @@ -18100,15 +25818,15 @@ "binop": null }, "value": "flags", - "start": 1614, - "end": 1619, + "start": 1687, + "end": 1692, "loc": { "start": { - "line": 70, + "line": 74, "column": 42 }, "end": { - "line": 70, + "line": 74, "column": 47 } } @@ -18126,15 +25844,15 @@ "binop": null, "updateContext": null }, - "start": 1619, - "end": 1620, + "start": 1692, + "end": 1693, "loc": { "start": { - "line": 70, + "line": 74, "column": 47 }, "end": { - "line": 70, + "line": 74, "column": 48 } } @@ -18152,15 +25870,15 @@ "binop": null }, "value": "fields", - "start": 1621, - "end": 1627, + "start": 1694, + "end": 1700, "loc": { "start": { - "line": 70, + "line": 74, "column": 49 }, "end": { - "line": 70, + "line": 74, "column": 55 } } @@ -18178,15 +25896,15 @@ "binop": null, "updateContext": null }, - "start": 1627, - "end": 1628, + "start": 1700, + "end": 1701, "loc": { "start": { - "line": 70, + "line": 74, "column": 55 }, "end": { - "line": 70, + "line": 74, "column": 56 } } @@ -18205,15 +25923,15 @@ "updateContext": null }, "value": 2, - "start": 1628, - "end": 1629, + "start": 1701, + "end": 1702, "loc": { "start": { - "line": 70, + "line": 74, "column": 56 }, "end": { - "line": 70, + "line": 74, "column": 57 } } @@ -18231,15 +25949,15 @@ "binop": null, "updateContext": null }, - "start": 1629, - "end": 1630, + "start": 1702, + "end": 1703, "loc": { "start": { - "line": 70, + "line": 74, "column": 57 }, "end": { - "line": 70, + "line": 74, "column": 58 } } @@ -18256,15 +25974,15 @@ "postfix": false, "binop": null }, - "start": 1631, - "end": 1632, + "start": 1704, + "end": 1705, "loc": { "start": { - "line": 70, + "line": 74, "column": 59 }, "end": { - "line": 70, + "line": 74, "column": 60 } } @@ -18281,15 +25999,15 @@ "postfix": false, "binop": null }, - "start": 1632, - "end": 1633, + "start": 1705, + "end": 1706, "loc": { "start": { - "line": 70, + "line": 74, "column": 60 }, "end": { - "line": 70, + "line": 74, "column": 61 } } @@ -18307,15 +26025,15 @@ "binop": null, "updateContext": null }, - "start": 1633, - "end": 1634, + "start": 1706, + "end": 1707, "loc": { "start": { - "line": 70, + "line": 74, "column": 61 }, "end": { - "line": 70, + "line": 74, "column": 62 } } @@ -18332,15 +26050,15 @@ "postfix": false, "binop": null }, - "start": 1639, - "end": 1640, + "start": 1712, + "end": 1713, "loc": { "start": { - "line": 71, + "line": 75, "column": 4 }, "end": { - "line": 71, + "line": 75, "column": 5 } } @@ -18360,15 +26078,15 @@ "updateContext": null }, "value": "else", - "start": 1641, - "end": 1645, + "start": 1714, + "end": 1718, "loc": { "start": { - "line": 71, + "line": 75, "column": 6 }, "end": { - "line": 71, + "line": 75, "column": 10 } } @@ -18388,15 +26106,15 @@ "updateContext": null }, "value": "if", - "start": 1646, - "end": 1648, + "start": 1719, + "end": 1721, "loc": { "start": { - "line": 71, + "line": 75, "column": 11 }, "end": { - "line": 71, + "line": 75, "column": 13 } } @@ -18413,15 +26131,15 @@ "postfix": false, "binop": null }, - "start": 1649, - "end": 1650, + "start": 1722, + "end": 1723, "loc": { "start": { - "line": 71, + "line": 75, "column": 14 }, "end": { - "line": 71, + "line": 75, "column": 15 } } @@ -18441,15 +26159,15 @@ "updateContext": null }, "value": "this", - "start": 1650, - "end": 1654, + "start": 1723, + "end": 1727, "loc": { "start": { - "line": 71, + "line": 75, "column": 15 }, "end": { - "line": 71, + "line": 75, "column": 19 } } @@ -18467,15 +26185,15 @@ "binop": null, "updateContext": null }, - "start": 1654, - "end": 1655, + "start": 1727, + "end": 1728, "loc": { "start": { - "line": 71, + "line": 75, "column": 19 }, "end": { - "line": 71, + "line": 75, "column": 20 } } @@ -18493,15 +26211,15 @@ "binop": null }, "value": "lookahead", - "start": 1655, - "end": 1664, + "start": 1728, + "end": 1737, "loc": { "start": { - "line": 71, + "line": 75, "column": 20 }, "end": { - "line": 71, + "line": 75, "column": 29 } } @@ -18519,15 +26237,15 @@ "binop": null, "updateContext": null }, - "start": 1664, - "end": 1665, + "start": 1737, + "end": 1738, "loc": { "start": { - "line": 71, + "line": 75, "column": 29 }, "end": { - "line": 71, + "line": 75, "column": 30 } } @@ -18545,15 +26263,15 @@ "binop": null }, "value": "type", - "start": 1665, - "end": 1669, + "start": 1738, + "end": 1742, "loc": { "start": { - "line": 71, + "line": 75, "column": 30 }, "end": { - "line": 71, + "line": 75, "column": 34 } } @@ -18572,15 +26290,15 @@ "updateContext": null }, "value": "===", - "start": 1670, - "end": 1673, + "start": 1743, + "end": 1746, "loc": { "start": { - "line": 71, + "line": 75, "column": 35 }, "end": { - "line": 71, + "line": 75, "column": 38 } } @@ -18599,15 +26317,15 @@ "updateContext": null }, "value": "WORD", - "start": 1674, - "end": 1680, + "start": 1747, + "end": 1753, "loc": { "start": { - "line": 71, + "line": 75, "column": 39 }, "end": { - "line": 71, + "line": 75, "column": 45 } } @@ -18624,15 +26342,15 @@ "postfix": false, "binop": null }, - "start": 1680, - "end": 1681, + "start": 1753, + "end": 1754, "loc": { "start": { - "line": 71, + "line": 75, "column": 45 }, "end": { - "line": 71, + "line": 75, "column": 46 } } @@ -18649,15 +26367,15 @@ "postfix": false, "binop": null }, - "start": 1682, - "end": 1683, + "start": 1755, + "end": 1756, "loc": { "start": { - "line": 71, + "line": 75, "column": 47 }, "end": { - "line": 71, + "line": 75, "column": 48 } } @@ -18675,15 +26393,15 @@ "binop": null }, "value": "expr", - "start": 1690, - "end": 1694, + "start": 1763, + "end": 1767, "loc": { "start": { - "line": 72, + "line": 76, "column": 6 }, "end": { - "line": 72, + "line": 76, "column": 10 } } @@ -18702,15 +26420,15 @@ "updateContext": null }, "value": "=", - "start": 1695, - "end": 1696, + "start": 1768, + "end": 1769, "loc": { "start": { - "line": 72, + "line": 76, "column": 11 }, "end": { - "line": 72, + "line": 76, "column": 12 } } @@ -18730,15 +26448,15 @@ "updateContext": null }, "value": "new", - "start": 1697, - "end": 1700, + "start": 1770, + "end": 1773, "loc": { "start": { - "line": 72, + "line": 76, "column": 13 }, "end": { - "line": 72, + "line": 76, "column": 16 } } @@ -18756,15 +26474,15 @@ "binop": null }, "value": "Word", - "start": 1701, - "end": 1705, + "start": 1774, + "end": 1778, "loc": { "start": { - "line": 72, + "line": 76, "column": 17 }, "end": { - "line": 72, + "line": 76, "column": 21 } } @@ -18781,15 +26499,15 @@ "postfix": false, "binop": null }, - "start": 1705, - "end": 1706, + "start": 1778, + "end": 1779, "loc": { "start": { - "line": 72, + "line": 76, "column": 21 }, "end": { - "line": 72, + "line": 76, "column": 22 } } @@ -18809,15 +26527,15 @@ "updateContext": null }, "value": "this", - "start": 1706, - "end": 1710, + "start": 1779, + "end": 1783, "loc": { "start": { - "line": 72, + "line": 76, "column": 22 }, "end": { - "line": 72, + "line": 76, "column": 26 } } @@ -18835,15 +26553,15 @@ "binop": null, "updateContext": null }, - "start": 1710, - "end": 1711, + "start": 1783, + "end": 1784, "loc": { "start": { - "line": 72, + "line": 76, "column": 26 }, "end": { - "line": 72, + "line": 76, "column": 27 } } @@ -18861,15 +26579,15 @@ "binop": null }, "value": "lookahead", - "start": 1711, - "end": 1720, + "start": 1784, + "end": 1793, "loc": { "start": { - "line": 72, + "line": 76, "column": 27 }, "end": { - "line": 72, + "line": 76, "column": 36 } } @@ -18886,15 +26604,15 @@ "postfix": false, "binop": null }, - "start": 1720, - "end": 1721, + "start": 1793, + "end": 1794, "loc": { "start": { - "line": 72, + "line": 76, "column": 36 }, "end": { - "line": 72, + "line": 76, "column": 37 } } @@ -18912,15 +26630,15 @@ "binop": null, "updateContext": null }, - "start": 1721, - "end": 1722, + "start": 1794, + "end": 1795, "loc": { "start": { - "line": 72, + "line": 76, "column": 37 }, "end": { - "line": 72, + "line": 76, "column": 38 } } @@ -18937,15 +26655,15 @@ "postfix": false, "binop": null }, - "start": 1727, - "end": 1728, + "start": 1800, + "end": 1801, "loc": { "start": { - "line": 73, + "line": 77, "column": 4 }, "end": { - "line": 73, + "line": 77, "column": 5 } } @@ -18965,15 +26683,15 @@ "updateContext": null }, "value": "else", - "start": 1729, - "end": 1733, + "start": 1802, + "end": 1806, "loc": { "start": { - "line": 73, + "line": 77, "column": 6 }, "end": { - "line": 73, + "line": 77, "column": 10 } } @@ -18990,15 +26708,15 @@ "postfix": false, "binop": null }, - "start": 1734, - "end": 1735, + "start": 1807, + "end": 1808, "loc": { "start": { - "line": 73, + "line": 77, "column": 11 }, "end": { - "line": 73, + "line": 77, "column": 12 } } @@ -19018,15 +26736,15 @@ "updateContext": null }, "value": "throw", - "start": 1742, - "end": 1747, + "start": 1815, + "end": 1820, "loc": { "start": { - "line": 74, + "line": 78, "column": 6 }, "end": { - "line": 74, + "line": 78, "column": 11 } } @@ -19046,15 +26764,15 @@ "updateContext": null }, "value": "this", - "start": 1748, - "end": 1752, + "start": 1821, + "end": 1825, "loc": { "start": { - "line": 74, + "line": 78, "column": 12 }, "end": { - "line": 74, + "line": 78, "column": 16 } } @@ -19072,15 +26790,15 @@ "binop": null, "updateContext": null }, - "start": 1752, - "end": 1753, + "start": 1825, + "end": 1826, "loc": { "start": { - "line": 74, + "line": 78, "column": 16 }, "end": { - "line": 74, + "line": 78, "column": 17 } } @@ -19098,15 +26816,15 @@ "binop": null }, "value": "__parserSyntaxError", - "start": 1753, - "end": 1772, + "start": 1826, + "end": 1845, "loc": { "start": { - "line": 74, + "line": 78, "column": 17 }, "end": { - "line": 74, + "line": 78, "column": 36 } } @@ -19123,15 +26841,15 @@ "postfix": false, "binop": null }, - "start": 1772, - "end": 1773, + "start": 1845, + "end": 1846, "loc": { "start": { - "line": 74, + "line": 78, "column": 36 }, "end": { - "line": 74, + "line": 78, "column": 37 } } @@ -19150,15 +26868,15 @@ "updateContext": null }, "value": "Unrecognized token while parsing the expression.", - "start": 1773, - "end": 1823, + "start": 1846, + "end": 1896, "loc": { "start": { - "line": 74, + "line": 78, "column": 37 }, "end": { - "line": 74, + "line": 78, "column": 87 } } @@ -19175,15 +26893,15 @@ "postfix": false, "binop": null }, - "start": 1823, - "end": 1824, + "start": 1896, + "end": 1897, "loc": { "start": { - "line": 74, + "line": 78, "column": 87 }, "end": { - "line": 74, + "line": 78, "column": 88 } } @@ -19201,15 +26919,15 @@ "binop": null, "updateContext": null }, - "start": 1824, - "end": 1825, + "start": 1897, + "end": 1898, "loc": { "start": { - "line": 74, + "line": 78, "column": 88 }, "end": { - "line": 74, + "line": 78, "column": 89 } } @@ -19226,15 +26944,15 @@ "postfix": false, "binop": null }, - "start": 1830, - "end": 1831, + "start": 1903, + "end": 1904, "loc": { "start": { - "line": 75, + "line": 79, "column": 4 }, "end": { - "line": 75, + "line": 79, "column": 5 } } @@ -19254,15 +26972,15 @@ "updateContext": null }, "value": "return", - "start": 1837, - "end": 1843, + "start": 1910, + "end": 1916, "loc": { "start": { - "line": 77, + "line": 81, "column": 4 }, "end": { - "line": 77, + "line": 81, "column": 10 } } @@ -19282,15 +27000,15 @@ "updateContext": null }, "value": "this", - "start": 1844, - "end": 1848, + "start": 1917, + "end": 1921, "loc": { "start": { - "line": 77, + "line": 81, "column": 11 }, "end": { - "line": 77, + "line": 81, "column": 15 } } @@ -19308,15 +27026,15 @@ "binop": null, "updateContext": null }, - "start": 1848, - "end": 1849, + "start": 1921, + "end": 1922, "loc": { "start": { - "line": 77, + "line": 81, "column": 15 }, "end": { - "line": 77, + "line": 81, "column": 16 } } @@ -19334,15 +27052,15 @@ "binop": null }, "value": "parseApply", - "start": 1849, - "end": 1859, + "start": 1922, + "end": 1932, "loc": { "start": { - "line": 77, + "line": 81, "column": 16 }, "end": { - "line": 77, + "line": 81, "column": 26 } } @@ -19359,15 +27077,15 @@ "postfix": false, "binop": null }, - "start": 1859, - "end": 1860, + "start": 1932, + "end": 1933, "loc": { "start": { - "line": 77, + "line": 81, "column": 26 }, "end": { - "line": 77, + "line": 81, "column": 27 } } @@ -19385,15 +27103,15 @@ "binop": null }, "value": "expr", - "start": 1860, - "end": 1864, + "start": 1933, + "end": 1937, "loc": { "start": { - "line": 77, + "line": 81, "column": 27 }, "end": { - "line": 77, + "line": 81, "column": 31 } } @@ -19410,15 +27128,15 @@ "postfix": false, "binop": null }, - "start": 1864, - "end": 1865, + "start": 1937, + "end": 1938, "loc": { "start": { - "line": 77, + "line": 81, "column": 31 }, "end": { - "line": 77, + "line": 81, "column": 32 } } @@ -19436,15 +27154,15 @@ "binop": null, "updateContext": null }, - "start": 1865, - "end": 1866, + "start": 1938, + "end": 1939, "loc": { "start": { - "line": 77, + "line": 81, "column": 32 }, "end": { - "line": 77, + "line": 81, "column": 33 } } @@ -19461,15 +27179,15 @@ "postfix": false, "binop": null }, - "start": 1869, - "end": 1870, + "start": 1942, + "end": 1943, "loc": { "start": { - "line": 78, + "line": 82, "column": 2 }, "end": { - "line": 78, + "line": 82, "column": 3 } } @@ -19487,15 +27205,15 @@ "binop": null }, "value": "parseApply", - "start": 1874, - "end": 1884, + "start": 1947, + "end": 1957, "loc": { "start": { - "line": 80, + "line": 84, "column": 2 }, "end": { - "line": 80, + "line": 84, "column": 12 } } @@ -19512,15 +27230,15 @@ "postfix": false, "binop": null }, - "start": 1884, - "end": 1885, + "start": 1957, + "end": 1958, "loc": { "start": { - "line": 80, + "line": 84, "column": 12 }, "end": { - "line": 80, + "line": 84, "column": 13 } } @@ -19538,15 +27256,15 @@ "binop": null }, "value": "expr", - "start": 1885, - "end": 1889, + "start": 1958, + "end": 1962, "loc": { "start": { - "line": 80, + "line": 84, "column": 13 }, "end": { - "line": 80, + "line": 84, "column": 17 } } @@ -19563,15 +27281,15 @@ "postfix": false, "binop": null }, - "start": 1889, - "end": 1890, + "start": 1962, + "end": 1963, "loc": { "start": { - "line": 80, + "line": 84, "column": 17 }, "end": { - "line": 80, + "line": 84, "column": 18 } } @@ -19588,15 +27306,15 @@ "postfix": false, "binop": null }, - "start": 1891, - "end": 1892, + "start": 1964, + "end": 1965, "loc": { "start": { - "line": 80, + "line": 84, "column": 19 }, "end": { - "line": 80, + "line": 84, "column": 20 } } @@ -19604,15 +27322,15 @@ { "type": "CommentLine", "value": " Get next token", - "start": 1897, - "end": 1914, + "start": 1970, + "end": 1987, "loc": { "start": { - "line": 81, + "line": 85, "column": 4 }, "end": { - "line": 81, + "line": 85, "column": 21 } } @@ -19632,15 +27350,15 @@ "updateContext": null }, "value": "this", - "start": 1919, - "end": 1923, + "start": 1992, + "end": 1996, "loc": { "start": { - "line": 82, + "line": 86, "column": 4 }, "end": { - "line": 82, + "line": 86, "column": 8 } } @@ -19658,15 +27376,15 @@ "binop": null, "updateContext": null }, - "start": 1923, - "end": 1924, + "start": 1996, + "end": 1997, "loc": { "start": { - "line": 82, + "line": 86, "column": 8 }, "end": { - "line": 82, + "line": 86, "column": 9 } } @@ -19684,15 +27402,15 @@ "binop": null }, "value": "lookahead", - "start": 1924, - "end": 1933, + "start": 1997, + "end": 2006, "loc": { "start": { - "line": 82, + "line": 86, "column": 9 }, "end": { - "line": 82, + "line": 86, "column": 18 } } @@ -19711,15 +27429,15 @@ "updateContext": null }, "value": "=", - "start": 1934, - "end": 1935, + "start": 2007, + "end": 2008, "loc": { "start": { - "line": 82, + "line": 86, "column": 19 }, "end": { - "line": 82, + "line": 86, "column": 20 } } @@ -19739,15 +27457,15 @@ "updateContext": null }, "value": "this", - "start": 1936, - "end": 1940, + "start": 2009, + "end": 2013, "loc": { "start": { - "line": 82, + "line": 86, "column": 21 }, "end": { - "line": 82, + "line": 86, "column": 25 } } @@ -19765,15 +27483,15 @@ "binop": null, "updateContext": null }, - "start": 1940, - "end": 1941, + "start": 2013, + "end": 2014, "loc": { "start": { - "line": 82, + "line": 86, "column": 25 }, "end": { - "line": 82, + "line": 86, "column": 26 } } @@ -19791,15 +27509,15 @@ "binop": null }, "value": "__nextToken", - "start": 1941, - "end": 1952, + "start": 2014, + "end": 2025, "loc": { "start": { - "line": 82, + "line": 86, "column": 26 }, "end": { - "line": 82, + "line": 86, "column": 37 } } @@ -19816,15 +27534,15 @@ "postfix": false, "binop": null }, - "start": 1952, - "end": 1953, + "start": 2025, + "end": 2026, "loc": { "start": { - "line": 82, + "line": 86, "column": 37 }, "end": { - "line": 82, + "line": 86, "column": 38 } } @@ -19841,15 +27559,15 @@ "postfix": false, "binop": null }, - "start": 1953, - "end": 1954, + "start": 2026, + "end": 2027, "loc": { "start": { - "line": 82, + "line": 86, "column": 38 }, "end": { - "line": 82, + "line": 86, "column": 39 } } @@ -19867,15 +27585,15 @@ "binop": null, "updateContext": null }, - "start": 1954, - "end": 1955, + "start": 2027, + "end": 2028, "loc": { "start": { - "line": 82, + "line": 86, "column": 39 }, "end": { - "line": 82, + "line": 86, "column": 40 } } @@ -19883,15 +27601,15 @@ { "type": "CommentLine", "value": " Return if apply is empty (not left parenthesis or null)", - "start": 1961, - "end": 2019, + "start": 2034, + "end": 2092, "loc": { "start": { - "line": 84, + "line": 88, "column": 4 }, "end": { - "line": 84, + "line": 88, "column": 62 } } @@ -19911,15 +27629,15 @@ "updateContext": null }, "value": "if", - "start": 2024, - "end": 2026, + "start": 2097, + "end": 2099, "loc": { "start": { - "line": 85, + "line": 89, "column": 4 }, "end": { - "line": 85, + "line": 89, "column": 6 } } @@ -19936,15 +27654,15 @@ "postfix": false, "binop": null }, - "start": 2027, - "end": 2028, + "start": 2100, + "end": 2101, "loc": { "start": { - "line": 85, + "line": 89, "column": 7 }, "end": { - "line": 85, + "line": 89, "column": 8 } } @@ -19963,15 +27681,15 @@ "updateContext": null }, "value": "!", - "start": 2028, - "end": 2029, + "start": 2101, + "end": 2102, "loc": { "start": { - "line": 85, + "line": 89, "column": 8 }, "end": { - "line": 85, + "line": 89, "column": 9 } } @@ -19991,15 +27709,15 @@ "updateContext": null }, "value": "this", - "start": 2029, - "end": 2033, + "start": 2102, + "end": 2106, "loc": { "start": { - "line": 85, + "line": 89, "column": 9 }, "end": { - "line": 85, + "line": 89, "column": 13 } } @@ -20017,15 +27735,15 @@ "binop": null, "updateContext": null }, - "start": 2033, - "end": 2034, + "start": 2106, + "end": 2107, "loc": { "start": { - "line": 85, + "line": 89, "column": 13 }, "end": { - "line": 85, + "line": 89, "column": 14 } } @@ -20043,15 +27761,15 @@ "binop": null }, "value": "lookahead", - "start": 2034, - "end": 2043, + "start": 2107, + "end": 2116, "loc": { "start": { - "line": 85, + "line": 89, "column": 14 }, "end": { - "line": 85, + "line": 89, "column": 23 } } @@ -20070,15 +27788,15 @@ "updateContext": null }, "value": "||", - "start": 2044, - "end": 2046, + "start": 2117, + "end": 2119, "loc": { "start": { - "line": 85, + "line": 89, "column": 24 }, "end": { - "line": 85, + "line": 89, "column": 26 } } @@ -20098,15 +27816,15 @@ "updateContext": null }, "value": "this", - "start": 2047, - "end": 2051, + "start": 2120, + "end": 2124, "loc": { "start": { - "line": 85, + "line": 89, "column": 27 }, "end": { - "line": 85, + "line": 89, "column": 31 } } @@ -20124,15 +27842,15 @@ "binop": null, "updateContext": null }, - "start": 2051, - "end": 2052, + "start": 2124, + "end": 2125, "loc": { "start": { - "line": 85, + "line": 89, "column": 31 }, "end": { - "line": 85, + "line": 89, "column": 32 } } @@ -20150,15 +27868,15 @@ "binop": null }, "value": "lookahead", - "start": 2052, - "end": 2061, + "start": 2125, + "end": 2134, "loc": { "start": { - "line": 85, + "line": 89, "column": 32 }, "end": { - "line": 85, + "line": 89, "column": 41 } } @@ -20176,15 +27894,15 @@ "binop": null, "updateContext": null }, - "start": 2061, - "end": 2062, + "start": 2134, + "end": 2135, "loc": { "start": { - "line": 85, + "line": 89, "column": 41 }, "end": { - "line": 85, + "line": 89, "column": 42 } } @@ -20202,15 +27920,15 @@ "binop": null }, "value": "type", - "start": 2062, - "end": 2066, + "start": 2135, + "end": 2139, "loc": { "start": { - "line": 85, + "line": 89, "column": 42 }, "end": { - "line": 85, + "line": 89, "column": 46 } } @@ -20229,15 +27947,15 @@ "updateContext": null }, "value": "!==", - "start": 2067, - "end": 2070, + "start": 2140, + "end": 2143, "loc": { "start": { - "line": 85, + "line": 89, "column": 47 }, "end": { - "line": 85, + "line": 89, "column": 50 } } @@ -20256,15 +27974,15 @@ "updateContext": null }, "value": "LP", - "start": 2071, - "end": 2075, + "start": 2144, + "end": 2148, "loc": { "start": { - "line": 85, + "line": 89, "column": 51 }, "end": { - "line": 85, + "line": 89, "column": 55 } } @@ -20281,15 +27999,15 @@ "postfix": false, "binop": null }, - "start": 2075, - "end": 2076, + "start": 2148, + "end": 2149, "loc": { "start": { - "line": 85, + "line": 89, "column": 55 }, "end": { - "line": 85, + "line": 89, "column": 56 } } @@ -20306,15 +28024,15 @@ "postfix": false, "binop": null }, - "start": 2077, - "end": 2078, + "start": 2150, + "end": 2151, "loc": { "start": { - "line": 85, + "line": 89, "column": 57 }, "end": { - "line": 85, + "line": 89, "column": 58 } } @@ -20334,15 +28052,15 @@ "updateContext": null }, "value": "return", - "start": 2085, - "end": 2091, + "start": 2158, + "end": 2164, "loc": { "start": { - "line": 86, + "line": 90, "column": 6 }, "end": { - "line": 86, + "line": 90, "column": 12 } } @@ -20360,15 +28078,15 @@ "binop": null }, "value": "expr", - "start": 2092, - "end": 2096, + "start": 2165, + "end": 2169, "loc": { "start": { - "line": 86, + "line": 90, "column": 13 }, "end": { - "line": 86, + "line": 90, "column": 17 } } @@ -20386,15 +28104,15 @@ "binop": null, "updateContext": null }, - "start": 2096, - "end": 2097, + "start": 2169, + "end": 2170, "loc": { "start": { - "line": 86, + "line": 90, "column": 17 }, "end": { - "line": 86, + "line": 90, "column": 18 } } @@ -20411,15 +28129,15 @@ "postfix": false, "binop": null }, - "start": 2102, - "end": 2103, + "start": 2175, + "end": 2176, "loc": { "start": { - "line": 87, + "line": 91, "column": 4 }, "end": { - "line": 87, + "line": 91, "column": 5 } } @@ -20439,15 +28157,15 @@ "updateContext": null }, "value": "let", - "start": 2109, - "end": 2112, + "start": 2182, + "end": 2185, "loc": { "start": { - "line": 89, + "line": 93, "column": 4 }, "end": { - "line": 89, + "line": 93, "column": 7 } } @@ -20465,15 +28183,15 @@ "binop": null }, "value": "tree", - "start": 2113, - "end": 2117, + "start": 2186, + "end": 2190, "loc": { "start": { - "line": 89, + "line": 93, "column": 8 }, "end": { - "line": 89, + "line": 93, "column": 12 } } @@ -20492,15 +28210,15 @@ "updateContext": null }, "value": "=", - "start": 2118, - "end": 2119, + "start": 2191, + "end": 2192, "loc": { "start": { - "line": 89, + "line": 93, "column": 13 }, "end": { - "line": 89, + "line": 93, "column": 14 } } @@ -20520,15 +28238,15 @@ "updateContext": null }, "value": "new", - "start": 2120, - "end": 2123, + "start": 2193, + "end": 2196, "loc": { "start": { - "line": 89, + "line": 93, "column": 15 }, "end": { - "line": 89, + "line": 93, "column": 18 } } @@ -20546,15 +28264,15 @@ "binop": null }, "value": "Apply", - "start": 2124, - "end": 2129, + "start": 2197, + "end": 2202, "loc": { "start": { - "line": 89, + "line": 93, "column": 19 }, "end": { - "line": 89, + "line": 93, "column": 24 } } @@ -20571,15 +28289,15 @@ "postfix": false, "binop": null }, - "start": 2129, - "end": 2130, + "start": 2202, + "end": 2203, "loc": { "start": { - "line": 89, + "line": 93, "column": 24 }, "end": { - "line": 89, + "line": 93, "column": 25 } } @@ -20597,15 +28315,15 @@ "binop": null }, "value": "expr", - "start": 2130, - "end": 2134, + "start": 2203, + "end": 2207, "loc": { "start": { - "line": 89, + "line": 93, "column": 25 }, "end": { - "line": 89, + "line": 93, "column": 29 } } @@ -20622,15 +28340,15 @@ "postfix": false, "binop": null }, - "start": 2134, - "end": 2135, + "start": 2207, + "end": 2208, "loc": { "start": { - "line": 89, + "line": 93, "column": 29 }, "end": { - "line": 89, + "line": 93, "column": 30 } } @@ -20648,15 +28366,15 @@ "binop": null, "updateContext": null }, - "start": 2135, - "end": 2136, + "start": 2208, + "end": 2209, "loc": { "start": { - "line": 89, + "line": 93, "column": 30 }, "end": { - "line": 89, + "line": 93, "column": 31 } } @@ -20676,15 +28394,15 @@ "updateContext": null }, "value": "this", - "start": 2142, - "end": 2146, + "start": 2215, + "end": 2219, "loc": { "start": { - "line": 91, + "line": 95, "column": 4 }, "end": { - "line": 91, + "line": 95, "column": 8 } } @@ -20702,15 +28420,15 @@ "binop": null, "updateContext": null }, - "start": 2146, - "end": 2147, + "start": 2219, + "end": 2220, "loc": { "start": { - "line": 91, + "line": 95, "column": 8 }, "end": { - "line": 91, + "line": 95, "column": 9 } } @@ -20728,15 +28446,15 @@ "binop": null }, "value": "lookahead", - "start": 2147, - "end": 2156, + "start": 2220, + "end": 2229, "loc": { "start": { - "line": 91, + "line": 95, "column": 9 }, "end": { - "line": 91, + "line": 95, "column": 18 } } @@ -20755,15 +28473,15 @@ "updateContext": null }, "value": "=", - "start": 2157, - "end": 2158, + "start": 2230, + "end": 2231, "loc": { "start": { - "line": 91, + "line": 95, "column": 19 }, "end": { - "line": 91, + "line": 95, "column": 20 } } @@ -20783,15 +28501,15 @@ "updateContext": null }, "value": "this", - "start": 2159, - "end": 2163, + "start": 2232, + "end": 2236, "loc": { "start": { - "line": 91, + "line": 95, "column": 21 }, "end": { - "line": 91, + "line": 95, "column": 25 } } @@ -20809,15 +28527,15 @@ "binop": null, "updateContext": null }, - "start": 2163, - "end": 2164, + "start": 2236, + "end": 2237, "loc": { "start": { - "line": 91, + "line": 95, "column": 25 }, "end": { - "line": 91, + "line": 95, "column": 26 } } @@ -20835,15 +28553,15 @@ "binop": null }, "value": "__nextToken", - "start": 2164, - "end": 2175, + "start": 2237, + "end": 2248, "loc": { "start": { - "line": 91, + "line": 95, "column": 26 }, "end": { - "line": 91, + "line": 95, "column": 37 } } @@ -20860,15 +28578,15 @@ "postfix": false, "binop": null }, - "start": 2175, - "end": 2176, + "start": 2248, + "end": 2249, "loc": { "start": { - "line": 91, + "line": 95, "column": 37 }, "end": { - "line": 91, + "line": 95, "column": 38 } } @@ -20885,15 +28603,15 @@ "postfix": false, "binop": null }, - "start": 2176, - "end": 2177, + "start": 2249, + "end": 2250, "loc": { "start": { - "line": 91, + "line": 95, "column": 38 }, "end": { - "line": 91, + "line": 95, "column": 39 } } @@ -20911,15 +28629,15 @@ "binop": null, "updateContext": null }, - "start": 2177, - "end": 2178, + "start": 2250, + "end": 2251, "loc": { "start": { - "line": 91, + "line": 95, "column": 39 }, "end": { - "line": 91, + "line": 95, "column": 40 } } @@ -20927,15 +28645,15 @@ { "type": "CommentLine", "value": " Parse all arguments inside the parenthesis", - "start": 2183, - "end": 2228, + "start": 2256, + "end": 2301, "loc": { "start": { - "line": 92, + "line": 96, "column": 4 }, "end": { - "line": 92, + "line": 96, "column": 49 } } @@ -20955,15 +28673,15 @@ "updateContext": null }, "value": "while", - "start": 2233, - "end": 2238, + "start": 2306, + "end": 2311, "loc": { "start": { - "line": 93, + "line": 97, "column": 4 }, "end": { - "line": 93, + "line": 97, "column": 9 } } @@ -20980,15 +28698,15 @@ "postfix": false, "binop": null }, - "start": 2239, - "end": 2240, + "start": 2312, + "end": 2313, "loc": { "start": { - "line": 93, + "line": 97, "column": 10 }, "end": { - "line": 93, + "line": 97, "column": 11 } } @@ -21008,15 +28726,15 @@ "updateContext": null }, "value": "this", - "start": 2240, - "end": 2244, + "start": 2313, + "end": 2317, "loc": { "start": { - "line": 93, + "line": 97, "column": 11 }, "end": { - "line": 93, + "line": 97, "column": 15 } } @@ -21034,15 +28752,15 @@ "binop": null, "updateContext": null }, - "start": 2244, - "end": 2245, + "start": 2317, + "end": 2318, "loc": { "start": { - "line": 93, + "line": 97, "column": 15 }, "end": { - "line": 93, + "line": 97, "column": 16 } } @@ -21060,15 +28778,15 @@ "binop": null }, "value": "lookahead", - "start": 2245, - "end": 2254, + "start": 2318, + "end": 2327, "loc": { "start": { - "line": 93, + "line": 97, "column": 16 }, "end": { - "line": 93, + "line": 97, "column": 25 } } @@ -21087,15 +28805,15 @@ "updateContext": null }, "value": "&&", - "start": 2255, - "end": 2257, + "start": 2328, + "end": 2330, "loc": { "start": { - "line": 93, + "line": 97, "column": 26 }, "end": { - "line": 93, + "line": 97, "column": 28 } } @@ -21115,15 +28833,15 @@ "updateContext": null }, "value": "this", - "start": 2258, - "end": 2262, + "start": 2331, + "end": 2335, "loc": { "start": { - "line": 93, + "line": 97, "column": 29 }, "end": { - "line": 93, + "line": 97, "column": 33 } } @@ -21141,15 +28859,15 @@ "binop": null, "updateContext": null }, - "start": 2262, - "end": 2263, + "start": 2335, + "end": 2336, "loc": { "start": { - "line": 93, + "line": 97, "column": 33 }, "end": { - "line": 93, + "line": 97, "column": 34 } } @@ -21167,15 +28885,15 @@ "binop": null }, "value": "lookahead", - "start": 2263, - "end": 2272, + "start": 2336, + "end": 2345, "loc": { "start": { - "line": 93, + "line": 97, "column": 34 }, "end": { - "line": 93, + "line": 97, "column": 43 } } @@ -21193,15 +28911,15 @@ "binop": null, "updateContext": null }, - "start": 2272, - "end": 2273, + "start": 2345, + "end": 2346, "loc": { "start": { - "line": 93, + "line": 97, "column": 43 }, "end": { - "line": 93, + "line": 97, "column": 44 } } @@ -21219,15 +28937,15 @@ "binop": null }, "value": "type", - "start": 2273, - "end": 2277, + "start": 2346, + "end": 2350, "loc": { "start": { - "line": 93, + "line": 97, "column": 44 }, "end": { - "line": 93, + "line": 97, "column": 48 } } @@ -21246,15 +28964,15 @@ "updateContext": null }, "value": "!==", - "start": 2278, - "end": 2281, + "start": 2351, + "end": 2354, "loc": { "start": { - "line": 93, + "line": 97, "column": 49 }, "end": { - "line": 93, + "line": 97, "column": 52 } } @@ -21273,15 +28991,15 @@ "updateContext": null }, "value": "RP", - "start": 2282, - "end": 2286, + "start": 2355, + "end": 2359, "loc": { "start": { - "line": 93, + "line": 97, "column": 53 }, "end": { - "line": 93, + "line": 97, "column": 57 } } @@ -21298,15 +29016,15 @@ "postfix": false, "binop": null }, - "start": 2286, - "end": 2287, + "start": 2359, + "end": 2360, "loc": { "start": { - "line": 93, + "line": 97, "column": 57 }, "end": { - "line": 93, + "line": 97, "column": 58 } } @@ -21323,15 +29041,15 @@ "postfix": false, "binop": null }, - "start": 2288, - "end": 2289, + "start": 2361, + "end": 2362, "loc": { "start": { - "line": 93, + "line": 97, "column": 59 }, "end": { - "line": 93, + "line": 97, "column": 60 } } @@ -21351,15 +29069,15 @@ "updateContext": null }, "value": "let", - "start": 2296, - "end": 2299, + "start": 2369, + "end": 2372, "loc": { "start": { - "line": 94, + "line": 98, "column": 6 }, "end": { - "line": 94, + "line": 98, "column": 9 } } @@ -21377,15 +29095,15 @@ "binop": null }, "value": "arg", - "start": 2300, - "end": 2303, + "start": 2373, + "end": 2376, "loc": { "start": { - "line": 94, + "line": 98, "column": 10 }, "end": { - "line": 94, + "line": 98, "column": 13 } } @@ -21404,15 +29122,15 @@ "updateContext": null }, "value": "=", - "start": 2304, - "end": 2305, + "start": 2377, + "end": 2378, "loc": { "start": { - "line": 94, + "line": 98, "column": 14 }, "end": { - "line": 94, + "line": 98, "column": 15 } } @@ -21432,15 +29150,15 @@ "updateContext": null }, "value": "this", - "start": 2306, - "end": 2310, + "start": 2379, + "end": 2383, "loc": { "start": { - "line": 94, + "line": 98, "column": 16 }, "end": { - "line": 94, + "line": 98, "column": 20 } } @@ -21458,15 +29176,15 @@ "binop": null, "updateContext": null }, - "start": 2310, - "end": 2311, + "start": 2383, + "end": 2384, "loc": { "start": { - "line": 94, + "line": 98, "column": 20 }, "end": { - "line": 94, + "line": 98, "column": 21 } } @@ -21484,15 +29202,15 @@ "binop": null }, "value": "parseExpression", - "start": 2311, - "end": 2326, + "start": 2384, + "end": 2399, "loc": { "start": { - "line": 94, + "line": 98, "column": 21 }, "end": { - "line": 94, + "line": 98, "column": 36 } } @@ -21509,15 +29227,15 @@ "postfix": false, "binop": null }, - "start": 2326, - "end": 2327, + "start": 2399, + "end": 2400, "loc": { "start": { - "line": 94, + "line": 98, "column": 36 }, "end": { - "line": 94, + "line": 98, "column": 37 } } @@ -21534,15 +29252,15 @@ "postfix": false, "binop": null }, - "start": 2327, - "end": 2328, + "start": 2400, + "end": 2401, "loc": { "start": { - "line": 94, + "line": 98, "column": 37 }, "end": { - "line": 94, + "line": 98, "column": 38 } } @@ -21560,15 +29278,15 @@ "binop": null, "updateContext": null }, - "start": 2328, - "end": 2329, + "start": 2401, + "end": 2402, "loc": { "start": { - "line": 94, + "line": 98, "column": 38 }, "end": { - "line": 94, + "line": 98, "column": 39 } } @@ -21586,15 +29304,15 @@ "binop": null }, "value": "tree", - "start": 2336, - "end": 2340, + "start": 2409, + "end": 2413, "loc": { "start": { - "line": 95, + "line": 99, "column": 6 }, "end": { - "line": 95, + "line": 99, "column": 10 } } @@ -21612,15 +29330,15 @@ "binop": null, "updateContext": null }, - "start": 2340, - "end": 2341, + "start": 2413, + "end": 2414, "loc": { "start": { - "line": 95, + "line": 99, "column": 10 }, "end": { - "line": 95, + "line": 99, "column": 11 } } @@ -21638,15 +29356,15 @@ "binop": null }, "value": "args", - "start": 2341, - "end": 2345, + "start": 2414, + "end": 2418, "loc": { "start": { - "line": 95, + "line": 99, "column": 11 }, "end": { - "line": 95, + "line": 99, "column": 15 } } @@ -21664,15 +29382,15 @@ "binop": null, "updateContext": null }, - "start": 2345, - "end": 2346, + "start": 2418, + "end": 2419, "loc": { "start": { - "line": 95, + "line": 99, "column": 15 }, "end": { - "line": 95, + "line": 99, "column": 16 } } @@ -21690,15 +29408,15 @@ "binop": null }, "value": "push", - "start": 2346, - "end": 2350, + "start": 2419, + "end": 2423, "loc": { "start": { - "line": 95, + "line": 99, "column": 16 }, "end": { - "line": 95, + "line": 99, "column": 20 } } @@ -21715,15 +29433,15 @@ "postfix": false, "binop": null }, - "start": 2350, - "end": 2351, + "start": 2423, + "end": 2424, "loc": { "start": { - "line": 95, + "line": 99, "column": 20 }, "end": { - "line": 95, + "line": 99, "column": 21 } } @@ -21741,15 +29459,15 @@ "binop": null }, "value": "arg", - "start": 2351, - "end": 2354, + "start": 2424, + "end": 2427, "loc": { "start": { - "line": 95, + "line": 99, "column": 21 }, "end": { - "line": 95, + "line": 99, "column": 24 } } @@ -21766,15 +29484,15 @@ "postfix": false, "binop": null }, - "start": 2354, - "end": 2355, + "start": 2427, + "end": 2428, "loc": { "start": { - "line": 95, + "line": 99, "column": 24 }, "end": { - "line": 95, + "line": 99, "column": 25 } } @@ -21792,15 +29510,15 @@ "binop": null, "updateContext": null }, - "start": 2355, - "end": 2356, + "start": 2428, + "end": 2429, "loc": { "start": { - "line": 95, + "line": 99, "column": 25 }, "end": { - "line": 95, + "line": 99, "column": 26 } } @@ -21820,15 +29538,15 @@ "updateContext": null }, "value": "if", - "start": 2364, - "end": 2366, + "start": 2437, + "end": 2439, "loc": { "start": { - "line": 97, + "line": 101, "column": 6 }, "end": { - "line": 97, + "line": 101, "column": 8 } } @@ -21845,15 +29563,15 @@ "postfix": false, "binop": null }, - "start": 2367, - "end": 2368, + "start": 2440, + "end": 2441, "loc": { "start": { - "line": 97, + "line": 101, "column": 9 }, "end": { - "line": 97, + "line": 101, "column": 10 } } @@ -21872,15 +29590,15 @@ "updateContext": null }, "value": "!", - "start": 2377, - "end": 2378, + "start": 2450, + "end": 2451, "loc": { "start": { - "line": 98, + "line": 102, "column": 8 }, "end": { - "line": 98, + "line": 102, "column": 9 } } @@ -21900,15 +29618,15 @@ "updateContext": null }, "value": "this", - "start": 2378, - "end": 2382, + "start": 2451, + "end": 2455, "loc": { "start": { - "line": 98, + "line": 102, "column": 9 }, "end": { - "line": 98, + "line": 102, "column": 13 } } @@ -21926,15 +29644,15 @@ "binop": null, "updateContext": null }, - "start": 2382, - "end": 2383, + "start": 2455, + "end": 2456, "loc": { "start": { - "line": 98, + "line": 102, "column": 13 }, "end": { - "line": 98, + "line": 102, "column": 14 } } @@ -21952,15 +29670,15 @@ "binop": null }, "value": "lookahead", - "start": 2383, - "end": 2392, + "start": 2456, + "end": 2465, "loc": { "start": { - "line": 98, + "line": 102, "column": 14 }, "end": { - "line": 98, + "line": 102, "column": 23 } } @@ -21979,15 +29697,15 @@ "updateContext": null }, "value": "||", - "start": 2393, - "end": 2395, + "start": 2466, + "end": 2468, "loc": { "start": { - "line": 98, + "line": 102, "column": 24 }, "end": { - "line": 98, + "line": 102, "column": 26 } } @@ -22004,15 +29722,15 @@ "postfix": false, "binop": null }, - "start": 2404, - "end": 2405, + "start": 2477, + "end": 2478, "loc": { "start": { - "line": 99, + "line": 103, "column": 8 }, "end": { - "line": 99, + "line": 103, "column": 9 } } @@ -22032,15 +29750,15 @@ "updateContext": null }, "value": "this", - "start": 2405, - "end": 2409, + "start": 2478, + "end": 2482, "loc": { "start": { - "line": 99, + "line": 103, "column": 9 }, "end": { - "line": 99, + "line": 103, "column": 13 } } @@ -22058,15 +29776,15 @@ "binop": null, "updateContext": null }, - "start": 2409, - "end": 2410, + "start": 2482, + "end": 2483, "loc": { "start": { - "line": 99, + "line": 103, "column": 13 }, "end": { - "line": 99, + "line": 103, "column": 14 } } @@ -22084,15 +29802,15 @@ "binop": null }, "value": "lookahead", - "start": 2410, - "end": 2419, + "start": 2483, + "end": 2492, "loc": { "start": { - "line": 99, + "line": 103, "column": 14 }, "end": { - "line": 99, + "line": 103, "column": 23 } } @@ -22110,15 +29828,15 @@ "binop": null, "updateContext": null }, - "start": 2419, - "end": 2420, + "start": 2492, + "end": 2493, "loc": { "start": { - "line": 99, + "line": 103, "column": 23 }, "end": { - "line": 99, + "line": 103, "column": 24 } } @@ -22136,15 +29854,15 @@ "binop": null }, "value": "type", - "start": 2420, - "end": 2424, + "start": 2493, + "end": 2497, "loc": { "start": { - "line": 99, + "line": 103, "column": 24 }, "end": { - "line": 99, + "line": 103, "column": 28 } } @@ -22163,15 +29881,15 @@ "updateContext": null }, "value": "!==", - "start": 2425, - "end": 2428, + "start": 2498, + "end": 2501, "loc": { "start": { - "line": 99, + "line": 103, "column": 29 }, "end": { - "line": 99, + "line": 103, "column": 32 } } @@ -22190,15 +29908,15 @@ "updateContext": null }, "value": "COMMA", - "start": 2429, - "end": 2436, + "start": 2502, + "end": 2509, "loc": { "start": { - "line": 99, + "line": 103, "column": 33 }, "end": { - "line": 99, + "line": 103, "column": 40 } } @@ -22217,15 +29935,15 @@ "updateContext": null }, "value": "&&", - "start": 2437, - "end": 2439, + "start": 2510, + "end": 2512, "loc": { "start": { - "line": 99, + "line": 103, "column": 41 }, "end": { - "line": 99, + "line": 103, "column": 43 } } @@ -22245,15 +29963,15 @@ "updateContext": null }, "value": "this", - "start": 2440, - "end": 2444, + "start": 2513, + "end": 2517, "loc": { "start": { - "line": 99, + "line": 103, "column": 44 }, "end": { - "line": 99, + "line": 103, "column": 48 } } @@ -22271,15 +29989,15 @@ "binop": null, "updateContext": null }, - "start": 2444, - "end": 2445, + "start": 2517, + "end": 2518, "loc": { "start": { - "line": 99, + "line": 103, "column": 48 }, "end": { - "line": 99, + "line": 103, "column": 49 } } @@ -22297,15 +30015,15 @@ "binop": null }, "value": "lookahead", - "start": 2445, - "end": 2454, + "start": 2518, + "end": 2527, "loc": { "start": { - "line": 99, + "line": 103, "column": 49 }, "end": { - "line": 99, + "line": 103, "column": 58 } } @@ -22323,15 +30041,15 @@ "binop": null, "updateContext": null }, - "start": 2454, - "end": 2455, + "start": 2527, + "end": 2528, "loc": { "start": { - "line": 99, + "line": 103, "column": 58 }, "end": { - "line": 99, + "line": 103, "column": 59 } } @@ -22349,15 +30067,15 @@ "binop": null }, "value": "type", - "start": 2455, - "end": 2459, + "start": 2528, + "end": 2532, "loc": { "start": { - "line": 99, + "line": 103, "column": 59 }, "end": { - "line": 99, + "line": 103, "column": 63 } } @@ -22376,15 +30094,15 @@ "updateContext": null }, "value": "!==", - "start": 2460, - "end": 2463, + "start": 2533, + "end": 2536, "loc": { "start": { - "line": 99, + "line": 103, "column": 64 }, "end": { - "line": 99, + "line": 103, "column": 67 } } @@ -22403,15 +30121,15 @@ "updateContext": null }, "value": "RP", - "start": 2464, - "end": 2468, + "start": 2537, + "end": 2541, "loc": { "start": { - "line": 99, + "line": 103, "column": 68 }, "end": { - "line": 99, + "line": 103, "column": 72 } } @@ -22428,15 +30146,15 @@ "postfix": false, "binop": null }, - "start": 2468, - "end": 2469, + "start": 2541, + "end": 2542, "loc": { "start": { - "line": 99, + "line": 103, "column": 72 }, "end": { - "line": 99, + "line": 103, "column": 73 } } @@ -22453,15 +30171,15 @@ "postfix": false, "binop": null }, - "start": 2476, - "end": 2477, + "start": 2549, + "end": 2550, "loc": { "start": { - "line": 100, + "line": 104, "column": 6 }, "end": { - "line": 100, + "line": 104, "column": 7 } } @@ -22478,15 +30196,15 @@ "postfix": false, "binop": null }, - "start": 2478, - "end": 2479, + "start": 2551, + "end": 2552, "loc": { "start": { - "line": 100, + "line": 104, "column": 8 }, "end": { - "line": 100, + "line": 104, "column": 9 } } @@ -22506,15 +30224,15 @@ "updateContext": null }, "value": "throw", - "start": 2488, - "end": 2493, + "start": 2561, + "end": 2566, "loc": { "start": { - "line": 101, + "line": 105, "column": 8 }, "end": { - "line": 101, + "line": 105, "column": 13 } } @@ -22534,15 +30252,15 @@ "updateContext": null }, "value": "this", - "start": 2494, - "end": 2498, + "start": 2567, + "end": 2571, "loc": { "start": { - "line": 101, + "line": 105, "column": 14 }, "end": { - "line": 101, + "line": 105, "column": 18 } } @@ -22560,15 +30278,15 @@ "binop": null, "updateContext": null }, - "start": 2498, - "end": 2499, + "start": 2571, + "end": 2572, "loc": { "start": { - "line": 101, + "line": 105, "column": 18 }, "end": { - "line": 101, + "line": 105, "column": 19 } } @@ -22586,15 +30304,15 @@ "binop": null }, "value": "__parserSyntaxError", - "start": 2499, - "end": 2518, + "start": 2572, + "end": 2591, "loc": { "start": { - "line": 101, + "line": 105, "column": 19 }, "end": { - "line": 101, + "line": 105, "column": 38 } } @@ -22611,15 +30329,15 @@ "postfix": false, "binop": null }, - "start": 2518, - "end": 2519, + "start": 2591, + "end": 2592, "loc": { "start": { - "line": 101, + "line": 105, "column": 38 }, "end": { - "line": 101, + "line": 105, "column": 39 } } @@ -22636,15 +30354,15 @@ "postfix": false, "binop": null }, - "start": 2519, - "end": 2520, + "start": 2592, + "end": 2593, "loc": { "start": { - "line": 101, + "line": 105, "column": 39 }, "end": { - "line": 101, + "line": 105, "column": 40 } } @@ -22663,15 +30381,15 @@ "updateContext": null }, "value": "Missing , or ) after the expression", - "start": 2520, - "end": 2555, + "start": 2593, + "end": 2628, "loc": { "start": { - "line": 101, + "line": 105, "column": 40 }, "end": { - "line": 101, + "line": 105, "column": 75 } } @@ -22688,15 +30406,15 @@ "postfix": false, "binop": null }, - "start": 2555, - "end": 2556, + "start": 2628, + "end": 2629, "loc": { "start": { - "line": 101, + "line": 105, "column": 75 }, "end": { - "line": 101, + "line": 105, "column": 76 } } @@ -22713,15 +30431,15 @@ "postfix": false, "binop": null }, - "start": 2556, - "end": 2557, + "start": 2629, + "end": 2630, "loc": { "start": { - "line": 101, + "line": 105, "column": 76 }, "end": { - "line": 101, + "line": 105, "column": 77 } } @@ -22739,15 +30457,15 @@ "binop": null, "updateContext": null }, - "start": 2557, - "end": 2558, + "start": 2630, + "end": 2631, "loc": { "start": { - "line": 101, + "line": 105, "column": 77 }, "end": { - "line": 101, + "line": 105, "column": 78 } } @@ -22764,15 +30482,15 @@ "postfix": false, "binop": null }, - "start": 2565, - "end": 2566, + "start": 2638, + "end": 2639, "loc": { "start": { - "line": 102, + "line": 106, "column": 6 }, "end": { - "line": 102, + "line": 106, "column": 7 } } @@ -22780,15 +30498,15 @@ { "type": "CommentLine", "value": " Don't consume RPs as argument tokens", - "start": 2574, - "end": 2613, + "start": 2647, + "end": 2686, "loc": { "start": { - "line": 104, + "line": 108, "column": 6 }, "end": { - "line": 104, + "line": 108, "column": 45 } } @@ -22808,15 +30526,15 @@ "updateContext": null }, "value": "if", - "start": 2620, - "end": 2622, + "start": 2693, + "end": 2695, "loc": { "start": { - "line": 105, + "line": 109, "column": 6 }, "end": { - "line": 105, + "line": 109, "column": 8 } } @@ -22833,15 +30551,15 @@ "postfix": false, "binop": null }, - "start": 2623, - "end": 2624, + "start": 2696, + "end": 2697, "loc": { "start": { - "line": 105, + "line": 109, "column": 9 }, "end": { - "line": 105, + "line": 109, "column": 10 } } @@ -22861,15 +30579,15 @@ "updateContext": null }, "value": "this", - "start": 2624, - "end": 2628, + "start": 2697, + "end": 2701, "loc": { "start": { - "line": 105, + "line": 109, "column": 10 }, "end": { - "line": 105, + "line": 109, "column": 14 } } @@ -22887,15 +30605,15 @@ "binop": null, "updateContext": null }, - "start": 2628, - "end": 2629, + "start": 2701, + "end": 2702, "loc": { "start": { - "line": 105, + "line": 109, "column": 14 }, "end": { - "line": 105, + "line": 109, "column": 15 } } @@ -22913,15 +30631,15 @@ "binop": null }, "value": "lookahead", - "start": 2629, - "end": 2638, + "start": 2702, + "end": 2711, "loc": { "start": { - "line": 105, + "line": 109, "column": 15 }, "end": { - "line": 105, + "line": 109, "column": 24 } } @@ -22940,15 +30658,15 @@ "updateContext": null }, "value": "&&", - "start": 2639, - "end": 2641, + "start": 2712, + "end": 2714, "loc": { "start": { - "line": 105, + "line": 109, "column": 25 }, "end": { - "line": 105, + "line": 109, "column": 27 } } @@ -22968,15 +30686,15 @@ "updateContext": null }, "value": "this", - "start": 2642, - "end": 2646, + "start": 2715, + "end": 2719, "loc": { "start": { - "line": 105, + "line": 109, "column": 28 }, "end": { - "line": 105, + "line": 109, "column": 32 } } @@ -22994,15 +30712,15 @@ "binop": null, "updateContext": null }, - "start": 2646, - "end": 2647, + "start": 2719, + "end": 2720, "loc": { "start": { - "line": 105, + "line": 109, "column": 32 }, "end": { - "line": 105, + "line": 109, "column": 33 } } @@ -23020,15 +30738,15 @@ "binop": null }, "value": "lookahead", - "start": 2647, - "end": 2656, + "start": 2720, + "end": 2729, "loc": { "start": { - "line": 105, + "line": 109, "column": 33 }, "end": { - "line": 105, + "line": 109, "column": 42 } } @@ -23046,15 +30764,15 @@ "binop": null, "updateContext": null }, - "start": 2656, - "end": 2657, + "start": 2729, + "end": 2730, "loc": { "start": { - "line": 105, + "line": 109, "column": 42 }, "end": { - "line": 105, + "line": 109, "column": 43 } } @@ -23072,15 +30790,15 @@ "binop": null }, "value": "type", - "start": 2657, - "end": 2661, + "start": 2730, + "end": 2734, "loc": { "start": { - "line": 105, + "line": 109, "column": 43 }, "end": { - "line": 105, + "line": 109, "column": 47 } } @@ -23099,15 +30817,15 @@ "updateContext": null }, "value": "!==", - "start": 2662, - "end": 2665, + "start": 2735, + "end": 2738, "loc": { "start": { - "line": 105, + "line": 109, "column": 48 }, "end": { - "line": 105, + "line": 109, "column": 51 } } @@ -23126,15 +30844,15 @@ "updateContext": null }, "value": "RP", - "start": 2666, - "end": 2670, + "start": 2739, + "end": 2743, "loc": { "start": { - "line": 105, + "line": 109, "column": 52 }, "end": { - "line": 105, + "line": 109, "column": 56 } } @@ -23151,15 +30869,15 @@ "postfix": false, "binop": null }, - "start": 2670, - "end": 2671, + "start": 2743, + "end": 2744, "loc": { "start": { - "line": 105, + "line": 109, "column": 56 }, "end": { - "line": 105, + "line": 109, "column": 57 } } @@ -23176,15 +30894,15 @@ "postfix": false, "binop": null }, - "start": 2672, - "end": 2673, + "start": 2745, + "end": 2746, "loc": { "start": { - "line": 105, + "line": 109, "column": 58 }, "end": { - "line": 105, + "line": 109, "column": 59 } } @@ -23204,15 +30922,15 @@ "updateContext": null }, "value": "this", - "start": 2682, - "end": 2686, + "start": 2755, + "end": 2759, "loc": { "start": { - "line": 106, + "line": 110, "column": 8 }, "end": { - "line": 106, + "line": 110, "column": 12 } } @@ -23230,15 +30948,15 @@ "binop": null, "updateContext": null }, - "start": 2686, - "end": 2687, + "start": 2759, + "end": 2760, "loc": { "start": { - "line": 106, + "line": 110, "column": 12 }, "end": { - "line": 106, + "line": 110, "column": 13 } } @@ -23256,15 +30974,15 @@ "binop": null }, "value": "lookahead", - "start": 2687, - "end": 2696, + "start": 2760, + "end": 2769, "loc": { "start": { - "line": 106, + "line": 110, "column": 13 }, "end": { - "line": 106, + "line": 110, "column": 22 } } @@ -23283,15 +31001,15 @@ "updateContext": null }, "value": "=", - "start": 2697, - "end": 2698, + "start": 2770, + "end": 2771, "loc": { "start": { - "line": 106, + "line": 110, "column": 23 }, "end": { - "line": 106, + "line": 110, "column": 24 } } @@ -23311,15 +31029,15 @@ "updateContext": null }, "value": "this", - "start": 2699, - "end": 2703, + "start": 2772, + "end": 2776, "loc": { "start": { - "line": 106, + "line": 110, "column": 25 }, "end": { - "line": 106, + "line": 110, "column": 29 } } @@ -23337,15 +31055,15 @@ "binop": null, "updateContext": null }, - "start": 2703, - "end": 2704, + "start": 2776, + "end": 2777, "loc": { "start": { - "line": 106, + "line": 110, "column": 29 }, "end": { - "line": 106, + "line": 110, "column": 30 } } @@ -23363,15 +31081,15 @@ "binop": null }, "value": "__nextToken", - "start": 2704, - "end": 2715, + "start": 2777, + "end": 2788, "loc": { "start": { - "line": 106, + "line": 110, "column": 30 }, "end": { - "line": 106, + "line": 110, "column": 41 } } @@ -23388,15 +31106,15 @@ "postfix": false, "binop": null }, - "start": 2715, - "end": 2716, + "start": 2788, + "end": 2789, "loc": { "start": { - "line": 106, + "line": 110, "column": 41 }, "end": { - "line": 106, + "line": 110, "column": 42 } } @@ -23413,15 +31131,15 @@ "postfix": false, "binop": null }, - "start": 2716, - "end": 2717, + "start": 2789, + "end": 2790, "loc": { "start": { - "line": 106, + "line": 110, "column": 42 }, "end": { - "line": 106, + "line": 110, "column": 43 } } @@ -23439,15 +31157,15 @@ "binop": null, "updateContext": null }, - "start": 2717, - "end": 2718, + "start": 2790, + "end": 2791, "loc": { "start": { - "line": 106, + "line": 110, "column": 43 }, "end": { - "line": 106, + "line": 110, "column": 44 } } @@ -23464,15 +31182,15 @@ "postfix": false, "binop": null }, - "start": 2725, - "end": 2726, + "start": 2798, + "end": 2799, "loc": { "start": { - "line": 107, + "line": 111, "column": 6 }, "end": { - "line": 107, + "line": 111, "column": 7 } } @@ -23489,15 +31207,15 @@ "postfix": false, "binop": null }, - "start": 2731, - "end": 2732, + "start": 2804, + "end": 2805, "loc": { "start": { - "line": 108, + "line": 112, "column": 4 }, "end": { - "line": 108, + "line": 112, "column": 5 } } @@ -23517,15 +31235,15 @@ "updateContext": null }, "value": "return", - "start": 2738, - "end": 2744, + "start": 2811, + "end": 2817, "loc": { "start": { - "line": 110, + "line": 114, "column": 4 }, "end": { - "line": 110, + "line": 114, "column": 10 } } @@ -23545,15 +31263,15 @@ "updateContext": null }, "value": "this", - "start": 2745, - "end": 2749, + "start": 2818, + "end": 2822, "loc": { "start": { - "line": 110, + "line": 114, "column": 11 }, "end": { - "line": 110, + "line": 114, "column": 15 } } @@ -23571,15 +31289,15 @@ "binop": null, "updateContext": null }, - "start": 2749, - "end": 2750, + "start": 2822, + "end": 2823, "loc": { "start": { - "line": 110, + "line": 114, "column": 15 }, "end": { - "line": 110, + "line": 114, "column": 16 } } @@ -23597,15 +31315,15 @@ "binop": null }, "value": "parseApply", - "start": 2750, - "end": 2760, + "start": 2823, + "end": 2833, "loc": { "start": { - "line": 110, + "line": 114, "column": 16 }, "end": { - "line": 110, + "line": 114, "column": 26 } } @@ -23622,15 +31340,15 @@ "postfix": false, "binop": null }, - "start": 2760, - "end": 2761, + "start": 2833, + "end": 2834, "loc": { "start": { - "line": 110, + "line": 114, "column": 26 }, "end": { - "line": 110, + "line": 114, "column": 27 } } @@ -23648,15 +31366,15 @@ "binop": null }, "value": "tree", - "start": 2761, - "end": 2765, + "start": 2834, + "end": 2838, "loc": { "start": { - "line": 110, + "line": 114, "column": 27 }, "end": { - "line": 110, + "line": 114, "column": 31 } } @@ -23673,15 +31391,15 @@ "postfix": false, "binop": null }, - "start": 2765, - "end": 2766, + "start": 2838, + "end": 2839, "loc": { "start": { - "line": 110, + "line": 114, "column": 31 }, "end": { - "line": 110, + "line": 114, "column": 32 } } @@ -23699,15 +31417,15 @@ "binop": null, "updateContext": null }, - "start": 2766, - "end": 2767, + "start": 2839, + "end": 2840, "loc": { "start": { - "line": 110, + "line": 114, "column": 32 }, "end": { - "line": 110, + "line": 114, "column": 33 } } @@ -23724,15 +31442,15 @@ "postfix": false, "binop": null }, - "start": 2770, - "end": 2771, + "start": 2843, + "end": 2844, "loc": { "start": { - "line": 111, + "line": 115, "column": 2 }, "end": { - "line": 111, + "line": 115, "column": 3 } } @@ -23750,15 +31468,15 @@ "binop": null }, "value": "__nextToken", - "start": 2775, - "end": 2786, + "start": 2848, + "end": 2859, "loc": { "start": { - "line": 113, + "line": 117, "column": 2 }, "end": { - "line": 113, + "line": 117, "column": 13 } } @@ -23775,15 +31493,15 @@ "postfix": false, "binop": null }, - "start": 2786, - "end": 2787, + "start": 2859, + "end": 2860, "loc": { "start": { - "line": 113, + "line": 117, "column": 13 }, "end": { - "line": 113, + "line": 117, "column": 14 } } @@ -23800,15 +31518,15 @@ "postfix": false, "binop": null }, - "start": 2787, - "end": 2788, + "start": 2860, + "end": 2861, "loc": { "start": { - "line": 113, + "line": 117, "column": 14 }, "end": { - "line": 113, + "line": 117, "column": 15 } } @@ -23825,15 +31543,15 @@ "postfix": false, "binop": null }, - "start": 2789, - "end": 2790, + "start": 2862, + "end": 2863, "loc": { "start": { - "line": 113, + "line": 117, "column": 16 }, "end": { - "line": 113, + "line": 117, "column": 17 } } @@ -23853,15 +31571,15 @@ "updateContext": null }, "value": "const", - "start": 2795, - "end": 2800, + "start": 2868, + "end": 2873, "loc": { "start": { - "line": 114, + "line": 118, "column": 4 }, "end": { - "line": 114, + "line": 118, "column": 9 } } @@ -23879,15 +31597,15 @@ "binop": null }, "value": "token", - "start": 2801, - "end": 2806, + "start": 2874, + "end": 2879, "loc": { "start": { - "line": 114, + "line": 118, "column": 10 }, "end": { - "line": 114, + "line": 118, "column": 15 } } @@ -23906,15 +31624,15 @@ "updateContext": null }, "value": "=", - "start": 2807, - "end": 2808, + "start": 2880, + "end": 2881, "loc": { "start": { - "line": 114, + "line": 118, "column": 16 }, "end": { - "line": 114, + "line": 118, "column": 17 } } @@ -23934,15 +31652,15 @@ "updateContext": null }, "value": "this", - "start": 2809, - "end": 2813, + "start": 2882, + "end": 2886, "loc": { "start": { - "line": 114, + "line": 118, "column": 18 }, "end": { - "line": 114, + "line": 118, "column": 22 } } @@ -23960,15 +31678,15 @@ "binop": null, "updateContext": null }, - "start": 2813, - "end": 2814, + "start": 2886, + "end": 2887, "loc": { "start": { - "line": 114, + "line": 118, "column": 22 }, "end": { - "line": 114, + "line": 118, "column": 23 } } @@ -23986,15 +31704,15 @@ "binop": null }, "value": "tokens", - "start": 2814, - "end": 2820, + "start": 2887, + "end": 2893, "loc": { "start": { - "line": 114, + "line": 118, "column": 23 }, "end": { - "line": 114, + "line": 118, "column": 29 } } @@ -24012,15 +31730,15 @@ "binop": null, "updateContext": null }, - "start": 2820, - "end": 2821, + "start": 2893, + "end": 2894, "loc": { "start": { - "line": 114, + "line": 118, "column": 29 }, "end": { - "line": 114, + "line": 118, "column": 30 } } @@ -24040,15 +31758,15 @@ "updateContext": null }, "value": "this", - "start": 2821, - "end": 2825, + "start": 2894, + "end": 2898, "loc": { "start": { - "line": 114, + "line": 118, "column": 30 }, "end": { - "line": 114, + "line": 118, "column": 34 } } @@ -24066,15 +31784,15 @@ "binop": null, "updateContext": null }, - "start": 2825, - "end": 2826, + "start": 2898, + "end": 2899, "loc": { "start": { - "line": 114, + "line": 118, "column": 34 }, "end": { - "line": 114, + "line": 118, "column": 35 } } @@ -24092,15 +31810,15 @@ "binop": null }, "value": "index", - "start": 2826, - "end": 2831, + "start": 2899, + "end": 2904, "loc": { "start": { - "line": 114, + "line": 118, "column": 35 }, "end": { - "line": 114, + "line": 118, "column": 40 } } @@ -24118,15 +31836,15 @@ "binop": null }, "value": "++", - "start": 2831, - "end": 2833, + "start": 2904, + "end": 2906, "loc": { "start": { - "line": 114, + "line": 118, "column": 40 }, "end": { - "line": 114, + "line": 118, "column": 42 } } @@ -24144,15 +31862,15 @@ "binop": null, "updateContext": null }, - "start": 2833, - "end": 2834, + "start": 2906, + "end": 2907, "loc": { "start": { - "line": 114, + "line": 118, "column": 42 }, "end": { - "line": 114, + "line": 118, "column": 43 } } @@ -24170,15 +31888,15 @@ "binop": null, "updateContext": null }, - "start": 2834, - "end": 2835, + "start": 2907, + "end": 2908, "loc": { "start": { - "line": 114, + "line": 118, "column": 43 }, "end": { - "line": 114, + "line": 118, "column": 44 } } @@ -24198,15 +31916,15 @@ "updateContext": null }, "value": "return", - "start": 2841, - "end": 2847, + "start": 2914, + "end": 2920, "loc": { "start": { - "line": 116, + "line": 120, "column": 4 }, "end": { - "line": 116, + "line": 120, "column": 10 } } @@ -24224,15 +31942,15 @@ "binop": null }, "value": "token", - "start": 2848, - "end": 2853, + "start": 2921, + "end": 2926, "loc": { "start": { - "line": 116, + "line": 120, "column": 11 }, "end": { - "line": 116, + "line": 120, "column": 16 } } @@ -24251,15 +31969,15 @@ "updateContext": null }, "value": "!==", - "start": 2854, - "end": 2857, + "start": 2927, + "end": 2930, "loc": { "start": { - "line": 116, + "line": 120, "column": 17 }, "end": { - "line": 116, + "line": 120, "column": 20 } } @@ -24277,15 +31995,15 @@ "binop": null }, "value": "undefined", - "start": 2858, - "end": 2867, + "start": 2931, + "end": 2940, "loc": { "start": { - "line": 116, + "line": 120, "column": 21 }, "end": { - "line": 116, + "line": 120, "column": 30 } } @@ -24303,15 +32021,15 @@ "binop": null, "updateContext": null }, - "start": 2868, - "end": 2869, + "start": 2941, + "end": 2942, "loc": { "start": { - "line": 116, + "line": 120, "column": 31 }, "end": { - "line": 116, + "line": 120, "column": 32 } } @@ -24329,15 +32047,15 @@ "binop": null }, "value": "token", - "start": 2870, - "end": 2875, + "start": 2943, + "end": 2948, "loc": { "start": { - "line": 116, + "line": 120, "column": 33 }, "end": { - "line": 116, + "line": 120, "column": 38 } } @@ -24355,15 +32073,15 @@ "binop": null, "updateContext": null }, - "start": 2876, - "end": 2877, + "start": 2949, + "end": 2950, "loc": { "start": { - "line": 116, + "line": 120, "column": 39 }, "end": { - "line": 116, + "line": 120, "column": 40 } } @@ -24383,15 +32101,15 @@ "updateContext": null }, "value": "null", - "start": 2878, - "end": 2882, + "start": 2951, + "end": 2955, "loc": { "start": { - "line": 116, + "line": 120, "column": 41 }, "end": { - "line": 116, + "line": 120, "column": 45 } } @@ -24409,15 +32127,15 @@ "binop": null, "updateContext": null }, - "start": 2882, - "end": 2883, + "start": 2955, + "end": 2956, "loc": { "start": { - "line": 116, + "line": 120, "column": 45 }, "end": { - "line": 116, + "line": 120, "column": 46 } } @@ -24434,15 +32152,15 @@ "postfix": false, "binop": null }, - "start": 2886, - "end": 2887, + "start": 2959, + "end": 2960, "loc": { "start": { - "line": 117, + "line": 121, "column": 2 }, "end": { - "line": 117, + "line": 121, "column": 3 } } @@ -24460,15 +32178,15 @@ "binop": null }, "value": "__parserSyntaxError", - "start": 2891, - "end": 2910, + "start": 2964, + "end": 2983, "loc": { "start": { - "line": 119, + "line": 123, "column": 2 }, "end": { - "line": 119, + "line": 123, "column": 21 } } @@ -24485,15 +32203,15 @@ "postfix": false, "binop": null }, - "start": 2910, - "end": 2911, + "start": 2983, + "end": 2984, "loc": { "start": { - "line": 119, + "line": 123, "column": 21 }, "end": { - "line": 119, + "line": 123, "column": 22 } } @@ -24511,15 +32229,15 @@ "binop": null }, "value": "message", - "start": 2911, - "end": 2918, + "start": 2984, + "end": 2991, "loc": { "start": { - "line": 119, + "line": 123, "column": 22 }, "end": { - "line": 119, + "line": 123, "column": 29 } } @@ -24536,15 +32254,15 @@ "postfix": false, "binop": null }, - "start": 2918, - "end": 2919, + "start": 2991, + "end": 2992, "loc": { "start": { - "line": 119, + "line": 123, "column": 29 }, "end": { - "line": 119, + "line": 123, "column": 30 } } @@ -24561,15 +32279,15 @@ "postfix": false, "binop": null }, - "start": 2920, - "end": 2921, + "start": 2993, + "end": 2994, "loc": { "start": { - "line": 119, + "line": 123, "column": 31 }, "end": { - "line": 119, + "line": 123, "column": 32 } } @@ -24589,15 +32307,15 @@ "updateContext": null }, "value": "let", - "start": 2926, - "end": 2929, + "start": 2999, + "end": 3002, "loc": { "start": { - "line": 120, + "line": 124, "column": 4 }, "end": { - "line": 120, + "line": 124, "column": 7 } } @@ -24615,15 +32333,15 @@ "binop": null }, "value": "start", - "start": 2930, - "end": 2935, + "start": 3003, + "end": 3008, "loc": { "start": { - "line": 120, + "line": 124, "column": 8 }, "end": { - "line": 120, + "line": 124, "column": 13 } } @@ -24642,15 +32360,15 @@ "updateContext": null }, "value": "=", - "start": 2936, - "end": 2937, + "start": 3009, + "end": 3010, "loc": { "start": { - "line": 120, + "line": 124, "column": 14 }, "end": { - "line": 120, + "line": 124, "column": 15 } } @@ -24670,15 +32388,15 @@ "updateContext": null }, "value": "this", - "start": 2938, - "end": 2942, + "start": 3011, + "end": 3015, "loc": { "start": { - "line": 120, + "line": 124, "column": 16 }, "end": { - "line": 120, + "line": 124, "column": 20 } } @@ -24696,15 +32414,15 @@ "binop": null, "updateContext": null }, - "start": 2942, - "end": 2943, + "start": 3015, + "end": 3016, "loc": { "start": { - "line": 120, + "line": 124, "column": 20 }, "end": { - "line": 120, + "line": 124, "column": 21 } } @@ -24722,15 +32440,15 @@ "binop": null }, "value": "lookahead", - "start": 2943, - "end": 2952, + "start": 3016, + "end": 3025, "loc": { "start": { - "line": 120, + "line": 124, "column": 21 }, "end": { - "line": 120, + "line": 124, "column": 30 } } @@ -24748,15 +32466,15 @@ "binop": null, "updateContext": null }, - "start": 2953, - "end": 2954, + "start": 3026, + "end": 3027, "loc": { "start": { - "line": 120, + "line": 124, "column": 31 }, "end": { - "line": 120, + "line": 124, "column": 32 } } @@ -24776,15 +32494,15 @@ "updateContext": null }, "value": "this", - "start": 2955, - "end": 2959, + "start": 3028, + "end": 3032, "loc": { "start": { - "line": 120, + "line": 124, "column": 33 }, "end": { - "line": 120, + "line": 124, "column": 37 } } @@ -24802,15 +32520,15 @@ "binop": null, "updateContext": null }, - "start": 2959, - "end": 2960, + "start": 3032, + "end": 3033, "loc": { "start": { - "line": 120, + "line": 124, "column": 37 }, "end": { - "line": 120, + "line": 124, "column": 38 } } @@ -24828,15 +32546,15 @@ "binop": null }, "value": "lookahead", - "start": 2960, - "end": 2969, + "start": 3033, + "end": 3042, "loc": { "start": { - "line": 120, + "line": 124, "column": 38 }, "end": { - "line": 120, + "line": 124, "column": 47 } } @@ -24854,15 +32572,15 @@ "binop": null, "updateContext": null }, - "start": 2969, - "end": 2970, + "start": 3042, + "end": 3043, "loc": { "start": { - "line": 120, + "line": 124, "column": 47 }, "end": { - "line": 120, + "line": 124, "column": 48 } } @@ -24880,15 +32598,15 @@ "binop": null }, "value": "start", - "start": 2970, - "end": 2975, + "start": 3043, + "end": 3048, "loc": { "start": { - "line": 120, + "line": 124, "column": 48 }, "end": { - "line": 120, + "line": 124, "column": 53 } } @@ -24906,15 +32624,15 @@ "binop": null, "updateContext": null }, - "start": 2976, - "end": 2977, + "start": 3049, + "end": 3050, "loc": { "start": { - "line": 120, + "line": 124, "column": 54 }, "end": { - "line": 120, + "line": 124, "column": 55 } } @@ -24934,15 +32652,15 @@ "updateContext": null }, "value": "this", - "start": 2978, - "end": 2982, + "start": 3051, + "end": 3055, "loc": { "start": { - "line": 120, + "line": 124, "column": 56 }, "end": { - "line": 120, + "line": 124, "column": 60 } } @@ -24960,15 +32678,15 @@ "binop": null, "updateContext": null }, - "start": 2982, - "end": 2983, + "start": 3055, + "end": 3056, "loc": { "start": { - "line": 120, + "line": 124, "column": 60 }, "end": { - "line": 120, + "line": 124, "column": 61 } } @@ -24986,15 +32704,15 @@ "binop": null }, "value": "lastIndex", - "start": 2983, - "end": 2992, + "start": 3056, + "end": 3065, "loc": { "start": { - "line": 120, + "line": 124, "column": 61 }, "end": { - "line": 120, + "line": 124, "column": 70 } } @@ -25012,15 +32730,15 @@ "binop": null, "updateContext": null }, - "start": 2992, - "end": 2993, + "start": 3065, + "end": 3066, "loc": { "start": { - "line": 120, + "line": 124, "column": 70 }, "end": { - "line": 120, + "line": 124, "column": 71 } } @@ -25040,15 +32758,15 @@ "updateContext": null }, "value": "return", - "start": 2999, - "end": 3005, + "start": 3072, + "end": 3078, "loc": { "start": { - "line": 122, + "line": 126, "column": 4 }, "end": { - "line": 122, + "line": 126, "column": 10 } } @@ -25068,15 +32786,15 @@ "updateContext": null }, "value": "new", - "start": 3006, - "end": 3009, + "start": 3079, + "end": 3082, "loc": { "start": { - "line": 122, + "line": 126, "column": 11 }, "end": { - "line": 122, + "line": 126, "column": 14 } } @@ -25094,15 +32812,15 @@ "binop": null }, "value": "SyntaxError", - "start": 3010, - "end": 3021, + "start": 3083, + "end": 3094, "loc": { "start": { - "line": 122, + "line": 126, "column": 15 }, "end": { - "line": 122, + "line": 126, "column": 26 } } @@ -25119,15 +32837,15 @@ "postfix": false, "binop": null }, - "start": 3021, - "end": 3022, + "start": 3094, + "end": 3095, "loc": { "start": { - "line": 122, + "line": 126, "column": 26 }, "end": { - "line": 122, + "line": 126, "column": 27 } } @@ -25144,15 +32862,15 @@ "postfix": false, "binop": null }, - "start": 3029, - "end": 3030, + "start": 3102, + "end": 3103, "loc": { "start": { - "line": 123, + "line": 127, "column": 6 }, "end": { - "line": 123, + "line": 127, "column": 7 } } @@ -25171,15 +32889,15 @@ "updateContext": null }, "value": "Parser::Line ", - "start": 3030, - "end": 3043, + "start": 3103, + "end": 3116, "loc": { "start": { - "line": 123, + "line": 127, "column": 7 }, "end": { - "line": 123, + "line": 127, "column": 20 } } @@ -25196,15 +32914,15 @@ "postfix": false, "binop": null }, - "start": 3043, - "end": 3045, + "start": 3116, + "end": 3118, "loc": { "start": { - "line": 123, + "line": 127, "column": 20 }, "end": { - "line": 123, + "line": 127, "column": 22 } } @@ -25224,15 +32942,15 @@ "updateContext": null }, "value": "this", - "start": 3045, - "end": 3049, + "start": 3118, + "end": 3122, "loc": { "start": { - "line": 123, + "line": 127, "column": 22 }, "end": { - "line": 123, + "line": 127, "column": 26 } } @@ -25250,15 +32968,15 @@ "binop": null, "updateContext": null }, - "start": 3049, - "end": 3050, + "start": 3122, + "end": 3123, "loc": { "start": { - "line": 123, + "line": 127, "column": 26 }, "end": { - "line": 123, + "line": 127, "column": 27 } } @@ -25276,15 +32994,15 @@ "binop": null }, "value": "line", - "start": 3050, - "end": 3054, + "start": 3123, + "end": 3127, "loc": { "start": { - "line": 123, + "line": 127, "column": 27 }, "end": { - "line": 123, + "line": 127, "column": 31 } } @@ -25301,15 +33019,15 @@ "postfix": false, "binop": null }, - "start": 3054, - "end": 3055, + "start": 3127, + "end": 3128, "loc": { "start": { - "line": 123, + "line": 127, "column": 31 }, "end": { - "line": 123, + "line": 127, "column": 32 } } @@ -25328,15 +33046,15 @@ "updateContext": null }, "value": "::Col ", - "start": 3055, - "end": 3061, + "start": 3128, + "end": 3134, "loc": { "start": { - "line": 123, + "line": 127, "column": 32 }, "end": { - "line": 123, + "line": 127, "column": 38 } } @@ -25353,15 +33071,15 @@ "postfix": false, "binop": null }, - "start": 3061, - "end": 3063, + "start": 3134, + "end": 3136, "loc": { "start": { - "line": 123, + "line": 127, "column": 38 }, "end": { - "line": 123, + "line": 127, "column": 40 } } @@ -25379,15 +33097,15 @@ "binop": null }, "value": "start", - "start": 3063, - "end": 3068, + "start": 3136, + "end": 3141, "loc": { "start": { - "line": 123, + "line": 127, "column": 40 }, "end": { - "line": 123, + "line": 127, "column": 45 } } @@ -25404,15 +33122,15 @@ "postfix": false, "binop": null }, - "start": 3068, - "end": 3069, + "start": 3141, + "end": 3142, "loc": { "start": { - "line": 123, + "line": 127, "column": 45 }, "end": { - "line": 123, + "line": 127, "column": 46 } } @@ -25431,15 +33149,15 @@ "updateContext": null }, "value": "\n", - "start": 3069, - "end": 3071, + "start": 3142, + "end": 3144, "loc": { "start": { - "line": 123, + "line": 127, "column": 46 }, "end": { - "line": 123, + "line": 127, "column": 48 } } @@ -25456,15 +33174,15 @@ "postfix": false, "binop": null }, - "start": 3071, - "end": 3073, + "start": 3144, + "end": 3146, "loc": { "start": { - "line": 123, + "line": 127, "column": 48 }, "end": { - "line": 123, + "line": 127, "column": 50 } } @@ -25482,15 +33200,15 @@ "binop": null }, "value": "message", - "start": 3073, - "end": 3080, + "start": 3146, + "end": 3153, "loc": { "start": { - "line": 123, + "line": 127, "column": 50 }, "end": { - "line": 123, + "line": 127, "column": 57 } } @@ -25507,15 +33225,15 @@ "postfix": false, "binop": null }, - "start": 3080, - "end": 3081, + "start": 3153, + "end": 3154, "loc": { "start": { - "line": 123, + "line": 127, "column": 57 }, "end": { - "line": 123, + "line": 127, "column": 58 } } @@ -25534,15 +33252,15 @@ "updateContext": null }, "value": "\n", - "start": 3081, - "end": 3083, + "start": 3154, + "end": 3156, "loc": { "start": { - "line": 123, + "line": 127, "column": 58 }, "end": { - "line": 123, + "line": 127, "column": 60 } } @@ -25559,15 +33277,15 @@ "postfix": false, "binop": null }, - "start": 3083, - "end": 3085, + "start": 3156, + "end": 3158, "loc": { "start": { - "line": 123, + "line": 127, "column": 60 }, "end": { - "line": 123, + "line": 127, "column": 62 } } @@ -25587,15 +33305,15 @@ "updateContext": null }, "value": "this", - "start": 3085, - "end": 3089, + "start": 3158, + "end": 3162, "loc": { "start": { - "line": 123, + "line": 127, "column": 62 }, "end": { - "line": 123, + "line": 127, "column": 66 } } @@ -25613,15 +33331,15 @@ "binop": null, "updateContext": null }, - "start": 3089, - "end": 3090, + "start": 3162, + "end": 3163, "loc": { "start": { - "line": 123, + "line": 127, "column": 66 }, "end": { - "line": 123, + "line": 127, "column": 67 } } @@ -25639,15 +33357,15 @@ "binop": null }, "value": "program", - "start": 3090, - "end": 3097, + "start": 3163, + "end": 3170, "loc": { "start": { - "line": 123, + "line": 127, "column": 67 }, "end": { - "line": 123, + "line": 127, "column": 74 } } @@ -25665,15 +33383,15 @@ "binop": null, "updateContext": null }, - "start": 3097, - "end": 3098, + "start": 3170, + "end": 3171, "loc": { "start": { - "line": 123, + "line": 127, "column": 74 }, "end": { - "line": 123, + "line": 127, "column": 75 } } @@ -25691,15 +33409,15 @@ "binop": null }, "value": "slice", - "start": 3098, - "end": 3103, + "start": 3171, + "end": 3176, "loc": { "start": { - "line": 123, + "line": 127, "column": 75 }, "end": { - "line": 123, + "line": 127, "column": 80 } } @@ -25716,15 +33434,15 @@ "postfix": false, "binop": null }, - "start": 3103, - "end": 3104, + "start": 3176, + "end": 3177, "loc": { "start": { - "line": 123, + "line": 127, "column": 80 }, "end": { - "line": 123, + "line": 127, "column": 81 } } @@ -25742,15 +33460,15 @@ "binop": null }, "value": "start", - "start": 3113, - "end": 3118, + "start": 3186, + "end": 3191, "loc": { "start": { - "line": 124, + "line": 128, "column": 8 }, "end": { - "line": 124, + "line": 128, "column": 13 } } @@ -25769,15 +33487,15 @@ "updateContext": null }, "value": "-", - "start": 3119, - "end": 3120, + "start": 3192, + "end": 3193, "loc": { "start": { - "line": 124, + "line": 128, "column": 14 }, "end": { - "line": 124, + "line": 128, "column": 15 } } @@ -25796,15 +33514,15 @@ "updateContext": null }, "value": 1, - "start": 3121, - "end": 3122, + "start": 3194, + "end": 3195, "loc": { "start": { - "line": 124, + "line": 128, "column": 16 }, "end": { - "line": 124, + "line": 128, "column": 17 } } @@ -25822,15 +33540,15 @@ "binop": null, "updateContext": null }, - "start": 3122, - "end": 3123, + "start": 3195, + "end": 3196, "loc": { "start": { - "line": 124, + "line": 128, "column": 17 }, "end": { - "line": 124, + "line": 128, "column": 18 } } @@ -25848,15 +33566,15 @@ "binop": null }, "value": "start", - "start": 3132, - "end": 3137, + "start": 3205, + "end": 3210, "loc": { "start": { - "line": 125, + "line": 129, "column": 8 }, "end": { - "line": 125, + "line": 129, "column": 13 } } @@ -25875,15 +33593,15 @@ "updateContext": null }, "value": "+", - "start": 3138, - "end": 3139, + "start": 3211, + "end": 3212, "loc": { "start": { - "line": 125, + "line": 129, "column": 14 }, "end": { - "line": 125, + "line": 129, "column": 15 } } @@ -25902,15 +33620,15 @@ "updateContext": null }, "value": 10, - "start": 3140, - "end": 3142, + "start": 3213, + "end": 3215, "loc": { "start": { - "line": 125, + "line": 129, "column": 16 }, "end": { - "line": 125, + "line": 129, "column": 18 } } @@ -25927,15 +33645,15 @@ "postfix": false, "binop": null }, - "start": 3149, - "end": 3150, + "start": 3222, + "end": 3223, "loc": { "start": { - "line": 126, + "line": 130, "column": 6 }, "end": { - "line": 126, + "line": 130, "column": 7 } } @@ -25952,15 +33670,15 @@ "postfix": false, "binop": null }, - "start": 3150, - "end": 3151, + "start": 3223, + "end": 3224, "loc": { "start": { - "line": 126, + "line": 130, "column": 7 }, "end": { - "line": 126, + "line": 130, "column": 8 } } @@ -25979,15 +33697,15 @@ "updateContext": null }, "value": "", - "start": 3151, - "end": 3151, + "start": 3224, + "end": 3224, "loc": { "start": { - "line": 126, + "line": 130, "column": 8 }, "end": { - "line": 126, + "line": 130, "column": 8 } } @@ -26004,15 +33722,15 @@ "postfix": false, "binop": null }, - "start": 3151, - "end": 3152, + "start": 3224, + "end": 3225, "loc": { "start": { - "line": 126, + "line": 130, "column": 8 }, "end": { - "line": 126, + "line": 130, "column": 9 } } @@ -26029,15 +33747,15 @@ "postfix": false, "binop": null }, - "start": 3157, - "end": 3158, + "start": 3230, + "end": 3231, "loc": { "start": { - "line": 127, + "line": 131, "column": 4 }, "end": { - "line": 127, + "line": 131, "column": 5 } } @@ -26055,15 +33773,15 @@ "binop": null, "updateContext": null }, - "start": 3158, - "end": 3159, + "start": 3231, + "end": 3232, "loc": { "start": { - "line": 127, + "line": 131, "column": 5 }, "end": { - "line": 127, + "line": 131, "column": 6 } } @@ -26080,15 +33798,15 @@ "postfix": false, "binop": null }, - "start": 3162, - "end": 3163, + "start": 3235, + "end": 3236, "loc": { "start": { - "line": 128, + "line": 132, "column": 2 }, "end": { - "line": 128, + "line": 132, "column": 3 } } @@ -26105,48 +33823,23 @@ "postfix": false, "binop": null }, - "start": 3164, - "end": 3165, + "start": 3237, + "end": 3238, "loc": { "start": { - "line": 129, + "line": 133, "column": 0 }, "end": { - "line": 129, + "line": 133, "column": 1 } } }, { "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "module", - "start": 3167, - "end": 3173, - "loc": { - "start": { - "line": 131, - "column": 0 - }, - "end": { - "line": 131, - "column": 6 - } - } - }, - { - "type": { - "label": ".", + "label": "export", + "keyword": "export", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, @@ -26157,69 +33850,17 @@ "binop": null, "updateContext": null }, - "start": 3173, - "end": 3174, - "loc": { - "start": { - "line": 131, - "column": 6 - }, - "end": { - "line": 131, - "column": 7 - } - } - }, - { - "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "exports", - "start": 3174, - "end": 3181, - "loc": { - "start": { - "line": 131, - "column": 7 - }, - "end": { - "line": 131, - "column": 14 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 3182, - "end": 3183, + "value": "export", + "start": 3240, + "end": 3246, "loc": { "start": { - "line": 131, - "column": 15 + "line": 135, + "column": 0 }, "end": { - "line": 131, - "column": 16 + "line": 135, + "column": 6 } } }, @@ -26235,16 +33876,16 @@ "postfix": false, "binop": null }, - "start": 3184, - "end": 3185, + "start": 3247, + "end": 3248, "loc": { "start": { - "line": 131, - "column": 17 + "line": 135, + "column": 7 }, "end": { - "line": 131, - "column": 18 + "line": 135, + "column": 8 } } }, @@ -26261,16 +33902,16 @@ "binop": null }, "value": "Parser", - "start": 3188, - "end": 3194, + "start": 3249, + "end": 3255, "loc": { "start": { - "line": 132, - "column": 2 + "line": 135, + "column": 9 }, "end": { - "line": 132, - "column": 8 + "line": 135, + "column": 15 } } }, @@ -26286,16 +33927,16 @@ "postfix": false, "binop": null }, - "start": 3195, - "end": 3196, + "start": 3256, + "end": 3257, "loc": { "start": { - "line": 133, - "column": 0 + "line": 135, + "column": 16 }, "end": { - "line": 133, - "column": 1 + "line": 135, + "column": 17 } } }, @@ -26312,16 +33953,16 @@ "binop": null, "updateContext": null }, - "start": 3196, - "end": 3197, + "start": 3257, + "end": 3258, "loc": { "start": { - "line": 133, - "column": 1 + "line": 135, + "column": 17 }, "end": { - "line": 133, - "column": 2 + "line": 135, + "column": 18 } } }, @@ -26338,15 +33979,15 @@ "binop": null, "updateContext": null }, - "start": 3198, - "end": 3198, + "start": 3259, + "end": 3259, "loc": { "start": { - "line": 134, + "line": 136, "column": 0 }, "end": { - "line": 134, + "line": 136, "column": 0 } } diff --git a/docs/ast/source/parser/tokenRegex.js.json b/docs/ast/source/parser/tokenRegex.js.json index 5375055..ce2cbc8 100644 --- a/docs/ast/source/parser/tokenRegex.js.json +++ b/docs/ast/source/parser/tokenRegex.js.json @@ -1,37 +1,37 @@ { "type": "File", "start": 0, - "end": 2709, + "end": 2692, "loc": { "start": { "line": 1, "column": 0 }, "end": { - "line": 131, + "line": 129, "column": 0 } }, "program": { "type": "Program", "start": 0, - "end": 2709, + "end": 2692, "loc": { "start": { "line": 1, "column": 0 }, "end": { - "line": 131, + "line": 129, "column": 0 } }, "sourceType": "module", "body": [ { - "type": "VariableDeclaration", + "type": "ImportDeclaration", "start": 0, - "end": 35, + "end": 30, "loc": { "start": { "line": 1, @@ -39,103 +39,68 @@ }, "end": { "line": 1, - "column": 35 + "column": 30 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 6, - "end": 34, + "type": "ImportDefaultSpecifier", + "start": 7, + "end": 14, "loc": { "start": { "line": 1, - "column": 6 + "column": 7 }, "end": { "line": 1, - "column": 34 + "column": 14 } }, - "id": { + "local": { "type": "Identifier", - "start": 6, - "end": 13, + "start": 7, + "end": 14, "loc": { "start": { "line": 1, - "column": 6 + "column": 7 }, "end": { "line": 1, - "column": 13 + "column": 14 }, "identifierName": "xRegExp" }, "name": "xRegExp" - }, - "init": { - "type": "CallExpression", - "start": 16, - "end": 34, - "loc": { - "start": { - "line": 1, - "column": 16 - }, - "end": { - "line": 1, - "column": 34 - } - }, - "callee": { - "type": "Identifier", - "start": 16, - "end": 23, - "loc": { - "start": { - "line": 1, - "column": 16 - }, - "end": { - "line": 1, - "column": 23 - }, - "identifierName": "require" - }, - "name": "require" - }, - "arguments": [ - { - "type": "StringLiteral", - "start": 24, - "end": 33, - "loc": { - "start": { - "line": 1, - "column": 24 - }, - "end": { - "line": 1, - "column": 33 - } - }, - "extra": { - "rawValue": "xregexp", - "raw": "\"xregexp\"" - }, - "value": "xregexp" - } - ] } } ], - "kind": "const" + "source": { + "type": "StringLiteral", + "start": 20, + "end": 29, + "loc": { + "start": { + "line": 1, + "column": 20 + }, + "end": { + "line": 1, + "column": 29 + } + }, + "extra": { + "rawValue": "xregexp", + "raw": "\"xregexp\"" + }, + "value": "xregexp" + } }, { - "type": "ClassDeclaration", - "start": 37, - "end": 806, + "type": "Identifier", + "start": 32, + "end": 801, "loc": { "start": { "line": 3, @@ -148,8 +113,8 @@ }, "id": { "type": "Identifier", - "start": 43, - "end": 53, + "start": 38, + "end": 48, "loc": { "start": { "line": 3, @@ -166,8 +131,8 @@ "superClass": null, "body": { "type": "ClassBody", - "start": 54, - "end": 806, + "start": 49, + "end": 801, "loc": { "start": { "line": 3, @@ -181,8 +146,8 @@ "body": [ { "type": "ClassMethod", - "start": 58, - "end": 176, + "start": 53, + "end": 171, "loc": { "start": { "line": 4, @@ -197,8 +162,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 58, - "end": 69, + "start": 53, + "end": 64, "loc": { "start": { "line": 4, @@ -220,8 +185,8 @@ "params": [ { "type": "Identifier", - "start": 70, - "end": 74, + "start": 65, + "end": 69, "loc": { "start": { "line": 4, @@ -237,8 +202,8 @@ }, { "type": "Identifier", - "start": 76, - "end": 88, + "start": 71, + "end": 83, "loc": { "start": { "line": 4, @@ -254,8 +219,8 @@ }, { "type": "Identifier", - "start": 90, - "end": 95, + "start": 85, + "end": 90, "loc": { "start": { "line": 4, @@ -272,8 +237,8 @@ ], "body": { "type": "BlockStatement", - "start": 97, - "end": 176, + "start": 92, + "end": 171, "loc": { "start": { "line": 4, @@ -287,8 +252,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 103, - "end": 120, + "start": 98, + "end": 115, "loc": { "start": { "line": 5, @@ -301,8 +266,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 103, - "end": 119, + "start": 98, + "end": 114, "loc": { "start": { "line": 5, @@ -316,8 +281,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 103, - "end": 112, + "start": 98, + "end": 107, "loc": { "start": { "line": 5, @@ -330,8 +295,8 @@ }, "object": { "type": "ThisExpression", - "start": 103, - "end": 107, + "start": 98, + "end": 102, "loc": { "start": { "line": 5, @@ -345,8 +310,8 @@ }, "property": { "type": "Identifier", - "start": 108, - "end": 112, + "start": 103, + "end": 107, "loc": { "start": { "line": 5, @@ -364,8 +329,8 @@ }, "right": { "type": "Identifier", - "start": 115, - "end": 119, + "start": 110, + "end": 114, "loc": { "start": { "line": 5, @@ -383,8 +348,8 @@ }, { "type": "ExpressionStatement", - "start": 125, - "end": 172, + "start": 120, + "end": 167, "loc": { "start": { "line": 6, @@ -397,8 +362,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 125, - "end": 171, + "start": 120, + "end": 166, "loc": { "start": { "line": 6, @@ -412,8 +377,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 125, - "end": 140, + "start": 120, + "end": 135, "loc": { "start": { "line": 6, @@ -426,8 +391,8 @@ }, "object": { "type": "ThisExpression", - "start": 125, - "end": 129, + "start": 120, + "end": 124, "loc": { "start": { "line": 6, @@ -441,8 +406,8 @@ }, "property": { "type": "Identifier", - "start": 130, - "end": 140, + "start": 125, + "end": 135, "loc": { "start": { "line": 6, @@ -460,8 +425,8 @@ }, "right": { "type": "CallExpression", - "start": 143, - "end": 171, + "start": 138, + "end": 166, "loc": { "start": { "line": 6, @@ -474,8 +439,8 @@ }, "callee": { "type": "Identifier", - "start": 143, - "end": 150, + "start": 138, + "end": 145, "loc": { "start": { "line": 6, @@ -492,8 +457,8 @@ "arguments": [ { "type": "Identifier", - "start": 151, - "end": 163, + "start": 146, + "end": 158, "loc": { "start": { "line": 6, @@ -509,8 +474,8 @@ }, { "type": "Identifier", - "start": 165, - "end": 170, + "start": 160, + "end": 165, "loc": { "start": { "line": 6, @@ -534,8 +499,8 @@ }, { "type": "ClassMethod", - "start": 180, - "end": 239, + "start": 175, + "end": 234, "loc": { "start": { "line": 9, @@ -550,8 +515,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 184, - "end": 193, + "start": 179, + "end": 188, "loc": { "start": { "line": 9, @@ -573,8 +538,8 @@ "params": [], "body": { "type": "BlockStatement", - "start": 196, - "end": 239, + "start": 191, + "end": 234, "loc": { "start": { "line": 9, @@ -588,8 +553,8 @@ "body": [ { "type": "ReturnStatement", - "start": 202, - "end": 235, + "start": 197, + "end": 230, "loc": { "start": { "line": 10, @@ -602,8 +567,8 @@ }, "argument": { "type": "MemberExpression", - "start": 209, - "end": 234, + "start": 204, + "end": 229, "loc": { "start": { "line": 10, @@ -616,8 +581,8 @@ }, "object": { "type": "MemberExpression", - "start": 209, - "end": 224, + "start": 204, + "end": 219, "loc": { "start": { "line": 10, @@ -630,8 +595,8 @@ }, "object": { "type": "ThisExpression", - "start": 209, - "end": 213, + "start": 204, + "end": 208, "loc": { "start": { "line": 10, @@ -645,8 +610,8 @@ }, "property": { "type": "Identifier", - "start": 214, - "end": 224, + "start": 209, + "end": 219, "loc": { "start": { "line": 10, @@ -664,8 +629,8 @@ }, "property": { "type": "Identifier", - "start": 225, - "end": 234, + "start": 220, + "end": 229, "loc": { "start": { "line": 10, @@ -688,8 +653,8 @@ }, { "type": "ClassMethod", - "start": 243, - "end": 308, + "start": 238, + "end": 303, "loc": { "start": { "line": 13, @@ -704,8 +669,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 247, - "end": 256, + "start": 242, + "end": 251, "loc": { "start": { "line": 13, @@ -727,8 +692,8 @@ "params": [ { "type": "Identifier", - "start": 257, - "end": 262, + "start": 252, + "end": 257, "loc": { "start": { "line": 13, @@ -745,8 +710,8 @@ ], "body": { "type": "BlockStatement", - "start": 264, - "end": 308, + "start": 259, + "end": 303, "loc": { "start": { "line": 13, @@ -760,8 +725,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 270, - "end": 304, + "start": 265, + "end": 299, "loc": { "start": { "line": 14, @@ -774,8 +739,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 270, - "end": 303, + "start": 265, + "end": 298, "loc": { "start": { "line": 14, @@ -789,8 +754,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 270, - "end": 295, + "start": 265, + "end": 290, "loc": { "start": { "line": 14, @@ -803,8 +768,8 @@ }, "object": { "type": "MemberExpression", - "start": 270, - "end": 285, + "start": 265, + "end": 280, "loc": { "start": { "line": 14, @@ -817,8 +782,8 @@ }, "object": { "type": "ThisExpression", - "start": 270, - "end": 274, + "start": 265, + "end": 269, "loc": { "start": { "line": 14, @@ -832,8 +797,8 @@ }, "property": { "type": "Identifier", - "start": 275, - "end": 285, + "start": 270, + "end": 280, "loc": { "start": { "line": 14, @@ -851,8 +816,8 @@ }, "property": { "type": "Identifier", - "start": 286, - "end": 295, + "start": 281, + "end": 290, "loc": { "start": { "line": 14, @@ -870,8 +835,8 @@ }, "right": { "type": "Identifier", - "start": 298, - "end": 303, + "start": 293, + "end": 298, "loc": { "start": { "line": 14, @@ -893,8 +858,8 @@ }, { "type": "ClassMethod", - "start": 312, - "end": 367, + "start": 307, + "end": 362, "loc": { "start": { "line": 17, @@ -909,8 +874,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 312, - "end": 317, + "start": 307, + "end": 312, "loc": { "start": { "line": 17, @@ -932,8 +897,8 @@ "params": [], "body": { "type": "BlockStatement", - "start": 320, - "end": 367, + "start": 315, + "end": 362, "loc": { "start": { "line": 17, @@ -947,8 +912,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 326, - "end": 345, + "start": 321, + "end": 340, "loc": { "start": { "line": 18, @@ -961,8 +926,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 326, - "end": 344, + "start": 321, + "end": 339, "loc": { "start": { "line": 18, @@ -976,8 +941,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 326, - "end": 340, + "start": 321, + "end": 335, "loc": { "start": { "line": 18, @@ -990,8 +955,8 @@ }, "object": { "type": "ThisExpression", - "start": 326, - "end": 330, + "start": 321, + "end": 325, "loc": { "start": { "line": 18, @@ -1005,8 +970,8 @@ }, "property": { "type": "Identifier", - "start": 331, - "end": 340, + "start": 326, + "end": 335, "loc": { "start": { "line": 18, @@ -1024,8 +989,8 @@ }, "right": { "type": "NumericLiteral", - "start": 343, - "end": 344, + "start": 338, + "end": 339, "loc": { "start": { "line": 18, @@ -1046,8 +1011,8 @@ }, { "type": "ReturnStatement", - "start": 351, - "end": 363, + "start": 346, + "end": 358, "loc": { "start": { "line": 20, @@ -1060,8 +1025,8 @@ }, "argument": { "type": "ThisExpression", - "start": 358, - "end": 362, + "start": 353, + "end": 357, "loc": { "start": { "line": 20, @@ -1080,8 +1045,8 @@ }, { "type": "ClassMethod", - "start": 371, - "end": 643, + "start": 366, + "end": 638, "loc": { "start": { "line": 23, @@ -1096,8 +1061,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 371, - "end": 375, + "start": 366, + "end": 370, "loc": { "start": { "line": 23, @@ -1119,8 +1084,8 @@ "params": [ { "type": "Identifier", - "start": 376, - "end": 383, + "start": 371, + "end": 378, "loc": { "start": { "line": 23, @@ -1137,8 +1102,8 @@ ], "body": { "type": "BlockStatement", - "start": 385, - "end": 643, + "start": 380, + "end": 638, "loc": { "start": { "line": 23, @@ -1152,8 +1117,8 @@ "body": [ { "type": "VariableDeclaration", - "start": 391, - "end": 433, + "start": 386, + "end": 428, "loc": { "start": { "line": 24, @@ -1167,8 +1132,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 395, - "end": 432, + "start": 390, + "end": 427, "loc": { "start": { "line": 24, @@ -1181,8 +1146,8 @@ }, "id": { "type": "Identifier", - "start": 395, - "end": 400, + "start": 390, + "end": 395, "loc": { "start": { "line": 24, @@ -1198,8 +1163,8 @@ }, "init": { "type": "CallExpression", - "start": 403, - "end": 432, + "start": 398, + "end": 427, "loc": { "start": { "line": 24, @@ -1212,8 +1177,8 @@ }, "callee": { "type": "MemberExpression", - "start": 403, - "end": 423, + "start": 398, + "end": 418, "loc": { "start": { "line": 24, @@ -1226,8 +1191,8 @@ }, "object": { "type": "MemberExpression", - "start": 403, - "end": 418, + "start": 398, + "end": 413, "loc": { "start": { "line": 24, @@ -1240,8 +1205,8 @@ }, "object": { "type": "ThisExpression", - "start": 403, - "end": 407, + "start": 398, + "end": 402, "loc": { "start": { "line": 24, @@ -1255,8 +1220,8 @@ }, "property": { "type": "Identifier", - "start": 408, - "end": 418, + "start": 403, + "end": 413, "loc": { "start": { "line": 24, @@ -1274,8 +1239,8 @@ }, "property": { "type": "Identifier", - "start": 419, - "end": 423, + "start": 414, + "end": 418, "loc": { "start": { "line": 24, @@ -1294,8 +1259,8 @@ "arguments": [ { "type": "Identifier", - "start": 424, - "end": 431, + "start": 419, + "end": 426, "loc": { "start": { "line": 24, @@ -1317,8 +1282,8 @@ }, { "type": "IfStatement", - "start": 439, - "end": 621, + "start": 434, + "end": 616, "loc": { "start": { "line": 26, @@ -1331,8 +1296,8 @@ }, "test": { "type": "BinaryExpression", - "start": 443, - "end": 457, + "start": 438, + "end": 452, "loc": { "start": { "line": 26, @@ -1345,8 +1310,8 @@ }, "left": { "type": "Identifier", - "start": 443, - "end": 448, + "start": 438, + "end": 443, "loc": { "start": { "line": 26, @@ -1363,8 +1328,8 @@ "operator": "!==", "right": { "type": "NullLiteral", - "start": 453, - "end": 457, + "start": 448, + "end": 452, "loc": { "start": { "line": 26, @@ -1379,8 +1344,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 459, - "end": 621, + "start": 454, + "end": 616, "loc": { "start": { "line": 26, @@ -1394,8 +1359,8 @@ "body": [ { "type": "ReturnStatement", - "start": 467, - "end": 615, + "start": 462, + "end": 610, "loc": { "start": { "line": 27, @@ -1408,8 +1373,8 @@ }, "argument": { "type": "ObjectExpression", - "start": 474, - "end": 614, + "start": 469, + "end": 609, "loc": { "start": { "line": 27, @@ -1423,8 +1388,8 @@ "properties": [ { "type": "ObjectProperty", - "start": 484, - "end": 499, + "start": 479, + "end": 494, "loc": { "start": { "line": 28, @@ -1440,8 +1405,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 484, - "end": 488, + "start": 479, + "end": 483, "loc": { "start": { "line": 28, @@ -1457,8 +1422,8 @@ }, "value": { "type": "MemberExpression", - "start": 490, - "end": 499, + "start": 485, + "end": 494, "loc": { "start": { "line": 28, @@ -1471,8 +1436,8 @@ }, "object": { "type": "ThisExpression", - "start": 490, - "end": 494, + "start": 485, + "end": 489, "loc": { "start": { "line": 28, @@ -1486,8 +1451,8 @@ }, "property": { "type": "Identifier", - "start": 495, - "end": 499, + "start": 490, + "end": 494, "loc": { "start": { "line": 28, @@ -1506,8 +1471,8 @@ }, { "type": "ObjectProperty", - "start": 509, - "end": 524, + "start": 504, + "end": 519, "loc": { "start": { "line": 29, @@ -1523,8 +1488,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 509, - "end": 514, + "start": 504, + "end": 509, "loc": { "start": { "line": 29, @@ -1540,8 +1505,8 @@ }, "value": { "type": "MemberExpression", - "start": 516, - "end": 524, + "start": 511, + "end": 519, "loc": { "start": { "line": 29, @@ -1554,8 +1519,8 @@ }, "object": { "type": "Identifier", - "start": 516, - "end": 521, + "start": 511, + "end": 516, "loc": { "start": { "line": 29, @@ -1571,8 +1536,8 @@ }, "property": { "type": "NumericLiteral", - "start": 522, - "end": 523, + "start": 517, + "end": 518, "loc": { "start": { "line": 29, @@ -1594,8 +1559,8 @@ }, { "type": "ObjectProperty", - "start": 534, - "end": 577, + "start": 529, + "end": 572, "loc": { "start": { "line": 30, @@ -1611,8 +1576,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 534, - "end": 539, + "start": 529, + "end": 534, "loc": { "start": { "line": 30, @@ -1628,8 +1593,8 @@ }, "value": { "type": "BinaryExpression", - "start": 541, - "end": 577, + "start": 536, + "end": 572, "loc": { "start": { "line": 30, @@ -1642,8 +1607,8 @@ }, "left": { "type": "BinaryExpression", - "start": 541, - "end": 573, + "start": 536, + "end": 568, "loc": { "start": { "line": 30, @@ -1656,8 +1621,8 @@ }, "left": { "type": "MemberExpression", - "start": 541, - "end": 555, + "start": 536, + "end": 550, "loc": { "start": { "line": 30, @@ -1670,8 +1635,8 @@ }, "object": { "type": "ThisExpression", - "start": 541, - "end": 545, + "start": 536, + "end": 540, "loc": { "start": { "line": 30, @@ -1685,8 +1650,8 @@ }, "property": { "type": "Identifier", - "start": 546, - "end": 555, + "start": 541, + "end": 550, "loc": { "start": { "line": 30, @@ -1705,8 +1670,8 @@ "operator": "-", "right": { "type": "MemberExpression", - "start": 558, - "end": 573, + "start": 553, + "end": 568, "loc": { "start": { "line": 30, @@ -1719,8 +1684,8 @@ }, "object": { "type": "MemberExpression", - "start": 558, - "end": 566, + "start": 553, + "end": 561, "loc": { "start": { "line": 30, @@ -1733,8 +1698,8 @@ }, "object": { "type": "Identifier", - "start": 558, - "end": 563, + "start": 553, + "end": 558, "loc": { "start": { "line": 30, @@ -1750,8 +1715,8 @@ }, "property": { "type": "NumericLiteral", - "start": 564, - "end": 565, + "start": 559, + "end": 560, "loc": { "start": { "line": 30, @@ -1772,8 +1737,8 @@ }, "property": { "type": "Identifier", - "start": 567, - "end": 573, + "start": 562, + "end": 568, "loc": { "start": { "line": 30, @@ -1793,8 +1758,8 @@ "operator": "+", "right": { "type": "NumericLiteral", - "start": 576, - "end": 577, + "start": 571, + "end": 572, "loc": { "start": { "line": 30, @@ -1815,8 +1780,8 @@ }, { "type": "ObjectProperty", - "start": 587, - "end": 606, + "start": 582, + "end": 601, "loc": { "start": { "line": 31, @@ -1832,8 +1797,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 587, - "end": 590, + "start": 582, + "end": 585, "loc": { "start": { "line": 31, @@ -1849,8 +1814,8 @@ }, "value": { "type": "MemberExpression", - "start": 592, - "end": 606, + "start": 587, + "end": 601, "loc": { "start": { "line": 31, @@ -1863,8 +1828,8 @@ }, "object": { "type": "ThisExpression", - "start": 592, - "end": 596, + "start": 587, + "end": 591, "loc": { "start": { "line": 31, @@ -1878,8 +1843,8 @@ }, "property": { "type": "Identifier", - "start": 597, - "end": 606, + "start": 592, + "end": 601, "loc": { "start": { "line": 31, @@ -1906,8 +1871,8 @@ }, { "type": "ReturnStatement", - "start": 627, - "end": 639, + "start": 622, + "end": 634, "loc": { "start": { "line": 35, @@ -1920,8 +1885,8 @@ }, "argument": { "type": "NullLiteral", - "start": 634, - "end": 638, + "start": 629, + "end": 633, "loc": { "start": { "line": 35, @@ -1940,8 +1905,8 @@ }, { "type": "ClassMethod", - "start": 647, - "end": 804, + "start": 642, + "end": 799, "loc": { "start": { "line": 38, @@ -1956,8 +1921,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 647, - "end": 651, + "start": 642, + "end": 646, "loc": { "start": { "line": 38, @@ -1979,8 +1944,8 @@ "params": [ { "type": "Identifier", - "start": 652, - "end": 659, + "start": 647, + "end": 654, "loc": { "start": { "line": 38, @@ -1997,8 +1962,8 @@ ], "body": { "type": "BlockStatement", - "start": 661, - "end": 804, + "start": 656, + "end": 799, "loc": { "start": { "line": 38, @@ -2012,8 +1977,8 @@ "body": [ { "type": "VariableDeclaration", - "start": 667, - "end": 699, + "start": 662, + "end": 694, "loc": { "start": { "line": 39, @@ -2027,8 +1992,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 671, - "end": 698, + "start": 666, + "end": 693, "loc": { "start": { "line": 39, @@ -2041,8 +2006,8 @@ }, "id": { "type": "Identifier", - "start": 671, - "end": 681, + "start": 666, + "end": 676, "loc": { "start": { "line": 39, @@ -2058,8 +2023,8 @@ }, "init": { "type": "MemberExpression", - "start": 684, - "end": 698, + "start": 679, + "end": 693, "loc": { "start": { "line": 39, @@ -2072,8 +2037,8 @@ }, "object": { "type": "ThisExpression", - "start": 684, - "end": 688, + "start": 679, + "end": 683, "loc": { "start": { "line": 39, @@ -2087,8 +2052,8 @@ }, "property": { "type": "Identifier", - "start": 689, - "end": 698, + "start": 684, + "end": 693, "loc": { "start": { "line": 39, @@ -2110,8 +2075,8 @@ }, { "type": "VariableDeclaration", - "start": 704, - "end": 738, + "start": 699, + "end": 733, "loc": { "start": { "line": 40, @@ -2125,8 +2090,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 710, - "end": 737, + "start": 705, + "end": 732, "loc": { "start": { "line": 40, @@ -2139,8 +2104,8 @@ }, "id": { "type": "Identifier", - "start": 710, - "end": 716, + "start": 705, + "end": 711, "loc": { "start": { "line": 40, @@ -2156,8 +2121,8 @@ }, "init": { "type": "CallExpression", - "start": 719, - "end": 737, + "start": 714, + "end": 732, "loc": { "start": { "line": 40, @@ -2170,8 +2135,8 @@ }, "callee": { "type": "MemberExpression", - "start": 719, - "end": 728, + "start": 714, + "end": 723, "loc": { "start": { "line": 40, @@ -2184,8 +2149,8 @@ }, "object": { "type": "ThisExpression", - "start": 719, - "end": 723, + "start": 714, + "end": 718, "loc": { "start": { "line": 40, @@ -2199,8 +2164,8 @@ }, "property": { "type": "Identifier", - "start": 724, - "end": 728, + "start": 719, + "end": 723, "loc": { "start": { "line": 40, @@ -2219,8 +2184,8 @@ "arguments": [ { "type": "Identifier", - "start": 729, - "end": 736, + "start": 724, + "end": 731, "loc": { "start": { "line": 40, @@ -2242,8 +2207,8 @@ }, { "type": "ExpressionStatement", - "start": 743, - "end": 771, + "start": 738, + "end": 766, "loc": { "start": { "line": 41, @@ -2256,8 +2221,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 743, - "end": 770, + "start": 738, + "end": 765, "loc": { "start": { "line": 41, @@ -2271,8 +2236,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 743, - "end": 757, + "start": 738, + "end": 752, "loc": { "start": { "line": 41, @@ -2285,8 +2250,8 @@ }, "object": { "type": "ThisExpression", - "start": 743, - "end": 747, + "start": 738, + "end": 742, "loc": { "start": { "line": 41, @@ -2300,8 +2265,8 @@ }, "property": { "type": "Identifier", - "start": 748, - "end": 757, + "start": 743, + "end": 752, "loc": { "start": { "line": 41, @@ -2319,8 +2284,8 @@ }, "right": { "type": "Identifier", - "start": 760, - "end": 770, + "start": 755, + "end": 765, "loc": { "start": { "line": 41, @@ -2338,8 +2303,8 @@ }, { "type": "ReturnStatement", - "start": 777, - "end": 800, + "start": 772, + "end": 795, "loc": { "start": { "line": 43, @@ -2352,8 +2317,8 @@ }, "argument": { "type": "BinaryExpression", - "start": 784, - "end": 799, + "start": 779, + "end": 794, "loc": { "start": { "line": 43, @@ -2366,8 +2331,8 @@ }, "left": { "type": "Identifier", - "start": 784, - "end": 790, + "start": 779, + "end": 785, "loc": { "start": { "line": 43, @@ -2384,8 +2349,8 @@ "operator": "!==", "right": { "type": "NullLiteral", - "start": 795, - "end": 799, + "start": 790, + "end": 794, "loc": { "start": { "line": 43, @@ -2404,12 +2369,15 @@ } } ] - } + }, + "name": "_", + "leadingComments": [], + "trailingComments": [] }, { - "type": "VariableDeclaration", - "start": 808, - "end": 1058, + "type": "Identifier", + "start": 803, + "end": 1053, "loc": { "start": { "line": 47, @@ -2423,8 +2391,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 814, - "end": 1057, + "start": 809, + "end": 1052, "loc": { "start": { "line": 47, @@ -2437,8 +2405,8 @@ }, "id": { "type": "Identifier", - "start": 814, - "end": 820, + "start": 809, + "end": 815, "loc": { "start": { "line": 47, @@ -2454,8 +2422,8 @@ }, "init": { "type": "NewExpression", - "start": 823, - "end": 1057, + "start": 818, + "end": 1052, "loc": { "start": { "line": 47, @@ -2468,8 +2436,8 @@ }, "callee": { "type": "Identifier", - "start": 827, - "end": 837, + "start": 822, + "end": 832, "loc": { "start": { "line": 47, @@ -2486,8 +2454,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 841, - "end": 848, + "start": 836, + "end": 843, "loc": { "start": { "line": 48, @@ -2506,8 +2474,8 @@ }, { "type": "TemplateLiteral", - "start": 852, - "end": 1047, + "start": 847, + "end": 1042, "loc": { "start": { "line": 49, @@ -2522,8 +2490,8 @@ "quasis": [ { "type": "TemplateElement", - "start": 853, - "end": 1046, + "start": 848, + "end": 1041, "loc": { "start": { "line": 49, @@ -2544,8 +2512,8 @@ }, { "type": "TemplateLiteral", - "start": 1051, - "end": 1055, + "start": 1046, + "end": 1050, "loc": { "start": { "line": 53, @@ -2560,8 +2528,8 @@ "quasis": [ { "type": "TemplateElement", - "start": 1052, - "end": 1054, + "start": 1047, + "end": 1049, "loc": { "start": { "line": 53, @@ -2584,12 +2552,15 @@ } } ], - "kind": "const" + "kind": "const", + "name": "_", + "leadingComments": [], + "trailingComments": [] }, { - "type": "VariableDeclaration", - "start": 1060, - "end": 1256, + "type": "Identifier", + "start": 1055, + "end": 1251, "loc": { "start": { "line": 56, @@ -2603,8 +2574,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 1066, - "end": 1255, + "start": 1061, + "end": 1250, "loc": { "start": { "line": 56, @@ -2617,8 +2588,8 @@ }, "id": { "type": "Identifier", - "start": 1066, - "end": 1073, + "start": 1061, + "end": 1068, "loc": { "start": { "line": 56, @@ -2634,8 +2605,8 @@ }, "init": { "type": "NewExpression", - "start": 1076, - "end": 1255, + "start": 1071, + "end": 1250, "loc": { "start": { "line": 56, @@ -2648,8 +2619,8 @@ }, "callee": { "type": "Identifier", - "start": 1080, - "end": 1090, + "start": 1075, + "end": 1085, "loc": { "start": { "line": 56, @@ -2666,8 +2637,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 1094, - "end": 1103, + "start": 1089, + "end": 1098, "loc": { "start": { "line": 57, @@ -2686,8 +2657,8 @@ }, { "type": "TemplateLiteral", - "start": 1107, - "end": 1253, + "start": 1102, + "end": 1248, "loc": { "start": { "line": 58, @@ -2702,8 +2673,8 @@ "quasis": [ { "type": "TemplateElement", - "start": 1108, - "end": 1252, + "start": 1103, + "end": 1247, "loc": { "start": { "line": 58, @@ -2726,12 +2697,15 @@ } } ], - "kind": "const" + "kind": "const", + "name": "_", + "leadingComments": [], + "trailingComments": [] }, { - "type": "VariableDeclaration", - "start": 1258, - "end": 1545, + "type": "Identifier", + "start": 1253, + "end": 1540, "loc": { "start": { "line": 63, @@ -2745,8 +2719,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 1264, - "end": 1544, + "start": 1259, + "end": 1539, "loc": { "start": { "line": 63, @@ -2759,8 +2733,8 @@ }, "id": { "type": "Identifier", - "start": 1264, - "end": 1270, + "start": 1259, + "end": 1265, "loc": { "start": { "line": 63, @@ -2776,8 +2750,8 @@ }, "init": { "type": "NewExpression", - "start": 1273, - "end": 1544, + "start": 1268, + "end": 1539, "loc": { "start": { "line": 63, @@ -2790,8 +2764,8 @@ }, "callee": { "type": "Identifier", - "start": 1277, - "end": 1287, + "start": 1272, + "end": 1282, "loc": { "start": { "line": 63, @@ -2808,8 +2782,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 1291, - "end": 1299, + "start": 1286, + "end": 1294, "loc": { "start": { "line": 64, @@ -2828,8 +2802,8 @@ }, { "type": "TemplateLiteral", - "start": 1303, - "end": 1534, + "start": 1298, + "end": 1529, "loc": { "start": { "line": 65, @@ -2844,8 +2818,8 @@ "quasis": [ { "type": "TemplateElement", - "start": 1304, - "end": 1533, + "start": 1299, + "end": 1528, "loc": { "start": { "line": 65, @@ -2866,8 +2840,8 @@ }, { "type": "StringLiteral", - "start": 1538, - "end": 1542, + "start": 1533, + "end": 1537, "loc": { "start": { "line": 70, @@ -2888,12 +2862,15 @@ } } ], - "kind": "const" + "kind": "const", + "name": "_", + "leadingComments": [], + "trailingComments": [] }, { - "type": "VariableDeclaration", - "start": 1547, - "end": 1687, + "type": "Identifier", + "start": 1542, + "end": 1682, "loc": { "start": { "line": 73, @@ -2907,8 +2884,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 1553, - "end": 1686, + "start": 1548, + "end": 1681, "loc": { "start": { "line": 73, @@ -2921,8 +2898,8 @@ }, "id": { "type": "Identifier", - "start": 1553, - "end": 1559, + "start": 1548, + "end": 1554, "loc": { "start": { "line": 73, @@ -2938,8 +2915,8 @@ }, "init": { "type": "NewExpression", - "start": 1562, - "end": 1686, + "start": 1557, + "end": 1681, "loc": { "start": { "line": 73, @@ -2952,8 +2929,8 @@ }, "callee": { "type": "Identifier", - "start": 1566, - "end": 1576, + "start": 1561, + "end": 1571, "loc": { "start": { "line": 73, @@ -2970,8 +2947,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 1580, - "end": 1588, + "start": 1575, + "end": 1583, "loc": { "start": { "line": 74, @@ -2990,8 +2967,8 @@ }, { "type": "TemplateLiteral", - "start": 1592, - "end": 1676, + "start": 1587, + "end": 1671, "loc": { "start": { "line": 75, @@ -3006,8 +2983,8 @@ "quasis": [ { "type": "TemplateElement", - "start": 1593, - "end": 1675, + "start": 1588, + "end": 1670, "loc": { "start": { "line": 75, @@ -3028,8 +3005,8 @@ }, { "type": "StringLiteral", - "start": 1680, - "end": 1684, + "start": 1675, + "end": 1679, "loc": { "start": { "line": 77, @@ -3050,12 +3027,15 @@ } } ], - "kind": "const" + "kind": "const", + "name": "_", + "leadingComments": [], + "trailingComments": [] }, { - "type": "VariableDeclaration", - "start": 1689, - "end": 1984, + "type": "Identifier", + "start": 1684, + "end": 1979, "loc": { "start": { "line": 80, @@ -3069,8 +3049,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 1695, - "end": 1983, + "start": 1690, + "end": 1978, "loc": { "start": { "line": 80, @@ -3083,8 +3063,8 @@ }, "id": { "type": "Identifier", - "start": 1695, - "end": 1699, + "start": 1690, + "end": 1694, "loc": { "start": { "line": 80, @@ -3100,8 +3080,8 @@ }, "init": { "type": "NewExpression", - "start": 1702, - "end": 1983, + "start": 1697, + "end": 1978, "loc": { "start": { "line": 80, @@ -3114,8 +3094,8 @@ }, "callee": { "type": "Identifier", - "start": 1706, - "end": 1716, + "start": 1701, + "end": 1711, "loc": { "start": { "line": 80, @@ -3132,8 +3112,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 1720, - "end": 1726, + "start": 1715, + "end": 1721, "loc": { "start": { "line": 81, @@ -3152,8 +3132,8 @@ }, { "type": "TemplateLiteral", - "start": 1730, - "end": 1973, + "start": 1725, + "end": 1968, "loc": { "start": { "line": 82, @@ -3168,8 +3148,8 @@ "quasis": [ { "type": "TemplateElement", - "start": 1731, - "end": 1972, + "start": 1726, + "end": 1967, "loc": { "start": { "line": 82, @@ -3190,8 +3170,8 @@ }, { "type": "StringLiteral", - "start": 1977, - "end": 1981, + "start": 1972, + "end": 1976, "loc": { "start": { "line": 86, @@ -3212,12 +3192,15 @@ } } ], - "kind": "const" + "kind": "const", + "name": "_", + "leadingComments": [], + "trailingComments": [] }, { - "type": "VariableDeclaration", - "start": 1986, - "end": 2100, + "type": "Identifier", + "start": 1981, + "end": 2095, "loc": { "start": { "line": 89, @@ -3231,8 +3214,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 1992, - "end": 2099, + "start": 1987, + "end": 2094, "loc": { "start": { "line": 89, @@ -3245,8 +3228,8 @@ }, "id": { "type": "Identifier", - "start": 1992, - "end": 1994, + "start": 1987, + "end": 1989, "loc": { "start": { "line": 89, @@ -3262,8 +3245,8 @@ }, "init": { "type": "NewExpression", - "start": 1997, - "end": 2099, + "start": 1992, + "end": 2094, "loc": { "start": { "line": 89, @@ -3276,8 +3259,8 @@ }, "callee": { "type": "Identifier", - "start": 2001, - "end": 2011, + "start": 1996, + "end": 2006, "loc": { "start": { "line": 89, @@ -3294,8 +3277,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 2015, - "end": 2019, + "start": 2010, + "end": 2014, "loc": { "start": { "line": 90, @@ -3314,8 +3297,8 @@ }, { "type": "TemplateLiteral", - "start": 2023, - "end": 2089, + "start": 2018, + "end": 2084, "loc": { "start": { "line": 91, @@ -3330,8 +3313,8 @@ "quasis": [ { "type": "TemplateElement", - "start": 2024, - "end": 2088, + "start": 2019, + "end": 2083, "loc": { "start": { "line": 91, @@ -3352,8 +3335,8 @@ }, { "type": "StringLiteral", - "start": 2093, - "end": 2097, + "start": 2088, + "end": 2092, "loc": { "start": { "line": 93, @@ -3374,12 +3357,15 @@ } } ], - "kind": "const" + "kind": "const", + "name": "_", + "leadingComments": [], + "trailingComments": [] }, { - "type": "VariableDeclaration", - "start": 2102, - "end": 2215, + "type": "Identifier", + "start": 2097, + "end": 2210, "loc": { "start": { "line": 96, @@ -3393,8 +3379,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 2108, - "end": 2214, + "start": 2103, + "end": 2209, "loc": { "start": { "line": 96, @@ -3407,8 +3393,8 @@ }, "id": { "type": "Identifier", - "start": 2108, - "end": 2110, + "start": 2103, + "end": 2105, "loc": { "start": { "line": 96, @@ -3424,8 +3410,8 @@ }, "init": { "type": "NewExpression", - "start": 2113, - "end": 2214, + "start": 2108, + "end": 2209, "loc": { "start": { "line": 96, @@ -3438,8 +3424,8 @@ }, "callee": { "type": "Identifier", - "start": 2117, - "end": 2127, + "start": 2112, + "end": 2122, "loc": { "start": { "line": 96, @@ -3456,8 +3442,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 2131, - "end": 2135, + "start": 2126, + "end": 2130, "loc": { "start": { "line": 97, @@ -3476,8 +3462,8 @@ }, { "type": "TemplateLiteral", - "start": 2139, - "end": 2204, + "start": 2134, + "end": 2199, "loc": { "start": { "line": 98, @@ -3492,8 +3478,8 @@ "quasis": [ { "type": "TemplateElement", - "start": 2140, - "end": 2203, + "start": 2135, + "end": 2198, "loc": { "start": { "line": 98, @@ -3514,8 +3500,8 @@ }, { "type": "StringLiteral", - "start": 2208, - "end": 2212, + "start": 2203, + "end": 2207, "loc": { "start": { "line": 100, @@ -3536,12 +3522,15 @@ } } ], - "kind": "const" + "kind": "const", + "name": "_", + "leadingComments": [], + "trailingComments": [] }, { - "type": "VariableDeclaration", - "start": 2217, - "end": 2414, + "type": "Identifier", + "start": 2212, + "end": 2409, "loc": { "start": { "line": 103, @@ -3555,8 +3544,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 2223, - "end": 2413, + "start": 2218, + "end": 2408, "loc": { "start": { "line": 103, @@ -3569,8 +3558,8 @@ }, "id": { "type": "Identifier", - "start": 2223, - "end": 2228, + "start": 2218, + "end": 2223, "loc": { "start": { "line": 103, @@ -3586,8 +3575,8 @@ }, "init": { "type": "NewExpression", - "start": 2231, - "end": 2413, + "start": 2226, + "end": 2408, "loc": { "start": { "line": 103, @@ -3600,8 +3589,8 @@ }, "callee": { "type": "Identifier", - "start": 2235, - "end": 2245, + "start": 2230, + "end": 2240, "loc": { "start": { "line": 103, @@ -3618,8 +3607,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 2249, - "end": 2256, + "start": 2244, + "end": 2251, "loc": { "start": { "line": 104, @@ -3638,8 +3627,8 @@ }, { "type": "TemplateLiteral", - "start": 2260, - "end": 2403, + "start": 2255, + "end": 2398, "loc": { "start": { "line": 105, @@ -3654,8 +3643,8 @@ "quasis": [ { "type": "TemplateElement", - "start": 2261, - "end": 2402, + "start": 2256, + "end": 2397, "loc": { "start": { "line": 105, @@ -3676,8 +3665,8 @@ }, { "type": "StringLiteral", - "start": 2407, - "end": 2411, + "start": 2402, + "end": 2406, "loc": { "start": { "line": 108, @@ -3698,12 +3687,15 @@ } } ], - "kind": "const" + "kind": "const", + "name": "_", + "leadingComments": [], + "trailingComments": [] }, { - "type": "VariableDeclaration", - "start": 2416, - "end": 2593, + "type": "Identifier", + "start": 2411, + "end": 2588, "loc": { "start": { "line": 111, @@ -3717,8 +3709,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 2422, - "end": 2592, + "start": 2417, + "end": 2587, "loc": { "start": { "line": 111, @@ -3731,8 +3723,8 @@ }, "id": { "type": "Identifier", - "start": 2422, - "end": 2427, + "start": 2417, + "end": 2422, "loc": { "start": { "line": 111, @@ -3748,8 +3740,8 @@ }, "init": { "type": "NewExpression", - "start": 2430, - "end": 2592, + "start": 2425, + "end": 2587, "loc": { "start": { "line": 111, @@ -3762,8 +3754,8 @@ }, "callee": { "type": "Identifier", - "start": 2434, - "end": 2444, + "start": 2429, + "end": 2439, "loc": { "start": { "line": 111, @@ -3780,8 +3772,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 2448, - "end": 2455, + "start": 2443, + "end": 2450, "loc": { "start": { "line": 112, @@ -3800,8 +3792,8 @@ }, { "type": "TemplateLiteral", - "start": 2459, - "end": 2582, + "start": 2454, + "end": 2577, "loc": { "start": { "line": 113, @@ -3816,8 +3808,8 @@ "quasis": [ { "type": "TemplateElement", - "start": 2460, - "end": 2581, + "start": 2455, + "end": 2576, "loc": { "start": { "line": 113, @@ -3838,8 +3830,8 @@ }, { "type": "StringLiteral", - "start": 2586, - "end": 2590, + "start": 2581, + "end": 2585, "loc": { "start": { "line": 116, @@ -3860,655 +3852,4441 @@ } } ], - "kind": "const" + "kind": "const", + "name": "_", + "leadingComments": [], + "trailingComments": [] }, { - "type": "ExpressionStatement", - "start": 2595, - "end": 2708, + "type": "ExportNamedDeclaration", + "start": 2590, + "end": 2691, "loc": { "start": { "line": 119, "column": 0 }, "end": { - "line": 130, - "column": 2 + "line": 128, + "column": 15 } }, - "expression": { - "type": "AssignmentExpression", - "start": 2595, - "end": 2707, - "loc": { - "start": { - "line": 119, - "column": 0 - }, - "end": { - "line": 130, - "column": 1 - } - }, - "operator": "=", - "left": { - "type": "MemberExpression", - "start": 2595, - "end": 2609, + "declaration": null, + "specifiers": [ + { + "type": "ExportSpecifier", + "start": 2599, + "end": 2605, "loc": { "start": { "line": 119, - "column": 0 + "column": 9 }, "end": { "line": 119, - "column": 14 + "column": 15 } }, - "object": { + "local": { "type": "Identifier", - "start": 2595, - "end": 2601, + "start": 2599, + "end": 2605, "loc": { "start": { "line": 119, - "column": 0 + "column": 9 }, "end": { "line": 119, - "column": 6 + "column": 15 }, - "identifierName": "module" + "identifierName": "WHITES" }, - "name": "module" + "name": "WHITES" }, - "property": { + "exported": { "type": "Identifier", - "start": 2602, - "end": 2609, + "start": 2599, + "end": 2605, "loc": { "start": { "line": 119, - "column": 7 + "column": 9 }, "end": { "line": 119, - "column": 14 + "column": 15 }, - "identifierName": "exports" + "identifierName": "WHITES" }, - "name": "exports" - }, - "computed": false + "name": "WHITES" + } }, - "right": { - "type": "ObjectExpression", - "start": 2612, - "end": 2707, + { + "type": "ExportSpecifier", + "start": 2609, + "end": 2616, "loc": { "start": { - "line": 119, - "column": 17 + "line": 120, + "column": 2 }, "end": { - "line": 130, - "column": 1 + "line": 120, + "column": 9 } }, - "properties": [ - { - "type": "ObjectProperty", - "start": 2616, - "end": 2622, - "loc": { - "start": { - "line": 120, - "column": 2 - }, - "end": { - "line": 120, - "column": 8 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 2616, - "end": 2622, - "loc": { - "start": { - "line": 120, - "column": 2 - }, - "end": { - "line": 120, - "column": 8 - }, - "identifierName": "WHITES" - }, - "name": "WHITES" + "local": { + "type": "Identifier", + "start": 2609, + "end": 2616, + "loc": { + "start": { + "line": 120, + "column": 2 }, - "value": { - "type": "Identifier", - "start": 2616, - "end": 2622, - "loc": { - "start": { - "line": 120, - "column": 2 - }, - "end": { - "line": 120, - "column": 8 - }, - "identifierName": "WHITES" - }, - "name": "WHITES" + "end": { + "line": 120, + "column": 9 }, - "extra": { - "shorthand": true - } + "identifierName": "NEWLINE" }, - { - "type": "ObjectProperty", - "start": 2626, - "end": 2633, - "loc": { - "start": { - "line": 121, - "column": 2 - }, - "end": { - "line": 121, - "column": 9 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 2626, - "end": 2633, - "loc": { - "start": { - "line": 121, - "column": 2 - }, - "end": { - "line": 121, - "column": 9 - }, - "identifierName": "NEWLINE" - }, - "name": "NEWLINE" + "name": "NEWLINE" + }, + "exported": { + "type": "Identifier", + "start": 2609, + "end": 2616, + "loc": { + "start": { + "line": 120, + "column": 2 }, - "value": { - "type": "Identifier", - "start": 2626, - "end": 2633, - "loc": { - "start": { - "line": 121, - "column": 2 - }, - "end": { - "line": 121, - "column": 9 - }, - "identifierName": "NEWLINE" - }, - "name": "NEWLINE" + "end": { + "line": 120, + "column": 9 }, - "extra": { - "shorthand": true - } + "identifierName": "NEWLINE" }, - { - "type": "ObjectProperty", - "start": 2637, - "end": 2643, - "loc": { - "start": { - "line": 122, - "column": 2 - }, - "end": { - "line": 122, - "column": 8 - } + "name": "NEWLINE" + } + }, + { + "type": "ExportSpecifier", + "start": 2620, + "end": 2626, + "loc": { + "start": { + "line": 121, + "column": 2 + }, + "end": { + "line": 121, + "column": 8 + } + }, + "local": { + "type": "Identifier", + "start": 2620, + "end": 2626, + "loc": { + "start": { + "line": 121, + "column": 2 }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 2637, - "end": 2643, - "loc": { - "start": { - "line": 122, - "column": 2 - }, - "end": { - "line": 122, - "column": 8 - }, - "identifierName": "NUMBER" - }, - "name": "NUMBER" + "end": { + "line": 121, + "column": 8 }, - "value": { - "type": "Identifier", - "start": 2637, - "end": 2643, - "loc": { - "start": { - "line": 122, - "column": 2 - }, - "end": { - "line": 122, - "column": 8 - }, - "identifierName": "NUMBER" - }, - "name": "NUMBER" + "identifierName": "NUMBER" + }, + "name": "NUMBER" + }, + "exported": { + "type": "Identifier", + "start": 2620, + "end": 2626, + "loc": { + "start": { + "line": 121, + "column": 2 }, - "extra": { - "shorthand": true - } + "end": { + "line": 121, + "column": 8 + }, + "identifierName": "NUMBER" }, - { - "type": "ObjectProperty", - "start": 2647, - "end": 2653, - "loc": { + "name": "NUMBER" + } + }, + { + "type": "ExportSpecifier", + "start": 2630, + "end": 2636, + "loc": { + "start": { + "line": 122, + "column": 2 + }, + "end": { + "line": 122, + "column": 8 + } + }, + "local": { + "type": "Identifier", + "start": 2630, + "end": 2636, + "loc": { + "start": { + "line": 122, + "column": 2 + }, + "end": { + "line": 122, + "column": 8 + }, + "identifierName": "STRING" + }, + "name": "STRING" + }, + "exported": { + "type": "Identifier", + "start": 2630, + "end": 2636, + "loc": { + "start": { + "line": 122, + "column": 2 + }, + "end": { + "line": 122, + "column": 8 + }, + "identifierName": "STRING" + }, + "name": "STRING" + } + }, + { + "type": "ExportSpecifier", + "start": 2640, + "end": 2644, + "loc": { + "start": { + "line": 123, + "column": 2 + }, + "end": { + "line": 123, + "column": 6 + } + }, + "local": { + "type": "Identifier", + "start": 2640, + "end": 2644, + "loc": { + "start": { + "line": 123, + "column": 2 + }, + "end": { + "line": 123, + "column": 6 + }, + "identifierName": "WORD" + }, + "name": "WORD" + }, + "exported": { + "type": "Identifier", + "start": 2640, + "end": 2644, + "loc": { + "start": { + "line": 123, + "column": 2 + }, + "end": { + "line": 123, + "column": 6 + }, + "identifierName": "WORD" + }, + "name": "WORD" + } + }, + { + "type": "ExportSpecifier", + "start": 2648, + "end": 2650, + "loc": { + "start": { + "line": 124, + "column": 2 + }, + "end": { + "line": 124, + "column": 4 + } + }, + "local": { + "type": "Identifier", + "start": 2648, + "end": 2650, + "loc": { + "start": { + "line": 124, + "column": 2 + }, + "end": { + "line": 124, + "column": 4 + }, + "identifierName": "LP" + }, + "name": "LP" + }, + "exported": { + "type": "Identifier", + "start": 2648, + "end": 2650, + "loc": { + "start": { + "line": 124, + "column": 2 + }, + "end": { + "line": 124, + "column": 4 + }, + "identifierName": "LP" + }, + "name": "LP" + } + }, + { + "type": "ExportSpecifier", + "start": 2654, + "end": 2656, + "loc": { + "start": { + "line": 125, + "column": 2 + }, + "end": { + "line": 125, + "column": 4 + } + }, + "local": { + "type": "Identifier", + "start": 2654, + "end": 2656, + "loc": { + "start": { + "line": 125, + "column": 2 + }, + "end": { + "line": 125, + "column": 4 + }, + "identifierName": "RP" + }, + "name": "RP" + }, + "exported": { + "type": "Identifier", + "start": 2654, + "end": 2656, + "loc": { + "start": { + "line": 125, + "column": 2 + }, + "end": { + "line": 125, + "column": 4 + }, + "identifierName": "RP" + }, + "name": "RP" + } + }, + { + "type": "ExportSpecifier", + "start": 2660, + "end": 2665, + "loc": { + "start": { + "line": 126, + "column": 2 + }, + "end": { + "line": 126, + "column": 7 + } + }, + "local": { + "type": "Identifier", + "start": 2660, + "end": 2665, + "loc": { + "start": { + "line": 126, + "column": 2 + }, + "end": { + "line": 126, + "column": 7 + }, + "identifierName": "COMMA" + }, + "name": "COMMA" + }, + "exported": { + "type": "Identifier", + "start": 2660, + "end": 2665, + "loc": { + "start": { + "line": 126, + "column": 2 + }, + "end": { + "line": 126, + "column": 7 + }, + "identifierName": "COMMA" + }, + "name": "COMMA" + } + }, + { + "type": "ExportSpecifier", + "start": 2669, + "end": 2674, + "loc": { + "start": { + "line": 127, + "column": 2 + }, + "end": { + "line": 127, + "column": 7 + } + }, + "local": { + "type": "Identifier", + "start": 2669, + "end": 2674, + "loc": { + "start": { + "line": 127, + "column": 2 + }, + "end": { + "line": 127, + "column": 7 + }, + "identifierName": "REGEX" + }, + "name": "REGEX" + }, + "exported": { + "type": "Identifier", + "start": 2669, + "end": 2674, + "loc": { + "start": { + "line": 127, + "column": 2 + }, + "end": { + "line": 127, + "column": 7 + }, + "identifierName": "REGEX" + }, + "name": "REGEX" + } + }, + { + "type": "ExportSpecifier", + "start": 2678, + "end": 2688, + "loc": { + "start": { + "line": 128, + "column": 2 + }, + "end": { + "line": 128, + "column": 12 + } + }, + "local": { + "type": "Identifier", + "start": 2678, + "end": 2688, + "loc": { + "start": { + "line": 128, + "column": 2 + }, + "end": { + "line": 128, + "column": 12 + }, + "identifierName": "TokenRegex" + }, + "name": "TokenRegex" + }, + "exported": { + "type": "Identifier", + "start": 2678, + "end": 2688, + "loc": { + "start": { + "line": 128, + "column": 2 + }, + "end": { + "line": 128, + "column": 12 + }, + "identifierName": "TokenRegex" + }, + "name": "TokenRegex" + } + } + ], + "source": null + }, + { + "type": "ExportNamedDeclaration", + "start": 2590, + "end": 2691, + "loc": { + "start": { + "line": 119, + "column": 0 + }, + "end": { + "line": 128, + "column": 15 + } + }, + "declaration": { + "type": "VariableDeclaration", + "start": 803, + "end": 1053, + "loc": { + "start": { + "line": 47, + "column": 0 + }, + "end": { + "line": 54, + "column": 2 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 809, + "end": 1052, + "loc": { + "start": { + "line": 47, + "column": 6 + }, + "end": { + "line": 54, + "column": 1 + } + }, + "id": { + "type": "Identifier", + "start": 809, + "end": 815, + "loc": { + "start": { + "line": 47, + "column": 6 + }, + "end": { + "line": 47, + "column": 12 + }, + "identifierName": "WHITES" + }, + "name": "WHITES" + }, + "init": { + "type": "NewExpression", + "start": 818, + "end": 1052, + "loc": { + "start": { + "line": 47, + "column": 15 + }, + "end": { + "line": 54, + "column": 1 + } + }, + "callee": { + "type": "Identifier", + "start": 822, + "end": 832, + "loc": { + "start": { + "line": 47, + "column": 19 + }, + "end": { + "line": 47, + "column": 29 + }, + "identifierName": "TokenRegex" + }, + "name": "TokenRegex" + }, + "arguments": [ + { + "type": "StringLiteral", + "start": 836, + "end": 843, + "loc": { + "start": { + "line": 48, + "column": 2 + }, + "end": { + "line": 48, + "column": 9 + } + }, + "extra": { + "rawValue": "WHITE", + "raw": "\"WHITE\"" + }, + "value": "WHITE" + }, + { + "type": "TemplateLiteral", + "start": 847, + "end": 1042, + "loc": { + "start": { + "line": 49, + "column": 2 + }, + "end": { + "line": 52, + "column": 33 + } + }, + "expressions": [], + "quasis": [ + { + "type": "TemplateElement", + "start": 848, + "end": 1041, + "loc": { + "start": { + "line": 49, + "column": 3 + }, + "end": { + "line": 52, + "column": 32 + } + }, + "value": { + "raw": "(\\\\s+| # Spaces\n [#;].*| # Single-line comments\n \\\\/\\\\*[^]*?\\\\*\\\\/ # Multiline comments\n )", + "cooked": "(\\s+| # Spaces\n [#;].*| # Single-line comments\n \\/\\*[^]*?\\*\\/ # Multiline comments\n )" + }, + "tail": true + } + ] + }, + { + "type": "TemplateLiteral", + "start": 1046, + "end": 1050, + "loc": { + "start": { + "line": 53, + "column": 2 + }, + "end": { + "line": 53, + "column": 6 + } + }, + "expressions": [], + "quasis": [ + { + "type": "TemplateElement", + "start": 1047, + "end": 1049, + "loc": { + "start": { + "line": 53, + "column": 3 + }, + "end": { + "line": 53, + "column": 5 + } + }, + "value": { + "raw": "yx", + "cooked": "yx" + }, + "tail": true + } + ] + } + ] + } + } + ], + "kind": "const", + "leadingComments": [], + "trailingComments": [] + }, + "specifiers": null, + "source": null + }, + { + "type": "ExportNamedDeclaration", + "start": 2590, + "end": 2691, + "loc": { + "start": { + "line": 119, + "column": 0 + }, + "end": { + "line": 128, + "column": 15 + } + }, + "declaration": { + "type": "ClassDeclaration", + "start": 32, + "end": 801, + "loc": { + "start": { + "line": 3, + "column": 0 + }, + "end": { + "line": 45, + "column": 1 + } + }, + "id": { + "type": "Identifier", + "start": 38, + "end": 48, + "loc": { + "start": { + "line": 3, + "column": 6 + }, + "end": { + "line": 3, + "column": 16 + }, + "identifierName": "TokenRegex" + }, + "name": "TokenRegex" + }, + "superClass": null, + "body": { + "type": "ClassBody", + "start": 49, + "end": 801, + "loc": { + "start": { + "line": 3, + "column": 17 + }, + "end": { + "line": 45, + "column": 1 + } + }, + "body": [ + { + "type": "ClassMethod", + "start": 53, + "end": 171, + "loc": { + "start": { + "line": 4, + "column": 2 + }, + "end": { + "line": 7, + "column": 3 + } + }, + "static": false, + "computed": false, + "key": { + "type": "Identifier", + "start": 53, + "end": 64, + "loc": { + "start": { + "line": 4, + "column": 2 + }, + "end": { + "line": 4, + "column": 13 + }, + "identifierName": "constructor" + }, + "name": "constructor" + }, + "kind": "constructor", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 65, + "end": 69, + "loc": { + "start": { + "line": 4, + "column": 14 + }, + "end": { + "line": 4, + "column": 18 + }, + "identifierName": "name" + }, + "name": "name" + }, + { + "type": "Identifier", + "start": 71, + "end": 83, + "loc": { + "start": { + "line": 4, + "column": 20 + }, + "end": { + "line": 4, + "column": 32 + }, + "identifierName": "regexLiteral" + }, + "name": "regexLiteral" + }, + { + "type": "Identifier", + "start": 85, + "end": 90, + "loc": { + "start": { + "line": 4, + "column": 34 + }, + "end": { + "line": 4, + "column": 39 + }, + "identifierName": "flags" + }, + "name": "flags" + } + ], + "body": { + "type": "BlockStatement", + "start": 92, + "end": 171, + "loc": { + "start": { + "line": 4, + "column": 41 + }, + "end": { + "line": 7, + "column": 3 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 98, + "end": 115, + "loc": { + "start": { + "line": 5, + "column": 4 + }, + "end": { + "line": 5, + "column": 21 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 98, + "end": 114, + "loc": { + "start": { + "line": 5, + "column": 4 + }, + "end": { + "line": 5, + "column": 20 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 98, + "end": 107, + "loc": { + "start": { + "line": 5, + "column": 4 + }, + "end": { + "line": 5, + "column": 13 + } + }, + "object": { + "type": "ThisExpression", + "start": 98, + "end": 102, + "loc": { + "start": { + "line": 5, + "column": 4 + }, + "end": { + "line": 5, + "column": 8 + } + } + }, + "property": { + "type": "Identifier", + "start": 103, + "end": 107, + "loc": { + "start": { + "line": 5, + "column": 9 + }, + "end": { + "line": 5, + "column": 13 + }, + "identifierName": "name" + }, + "name": "name" + }, + "computed": false + }, + "right": { + "type": "Identifier", + "start": 110, + "end": 114, + "loc": { + "start": { + "line": 5, + "column": 16 + }, + "end": { + "line": 5, + "column": 20 + }, + "identifierName": "name" + }, + "name": "name" + } + } + }, + { + "type": "ExpressionStatement", + "start": 120, + "end": 167, + "loc": { + "start": { + "line": 6, + "column": 4 + }, + "end": { + "line": 6, + "column": 51 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 120, + "end": 166, + "loc": { + "start": { + "line": 6, + "column": 4 + }, + "end": { + "line": 6, + "column": 50 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 120, + "end": 135, + "loc": { + "start": { + "line": 6, + "column": 4 + }, + "end": { + "line": 6, + "column": 19 + } + }, + "object": { + "type": "ThisExpression", + "start": 120, + "end": 124, + "loc": { + "start": { + "line": 6, + "column": 4 + }, + "end": { + "line": 6, + "column": 8 + } + } + }, + "property": { + "type": "Identifier", + "start": 125, + "end": 135, + "loc": { + "start": { + "line": 6, + "column": 9 + }, + "end": { + "line": 6, + "column": 19 + }, + "identifierName": "expression" + }, + "name": "expression" + }, + "computed": false + }, + "right": { + "type": "CallExpression", + "start": 138, + "end": 166, + "loc": { + "start": { + "line": 6, + "column": 22 + }, + "end": { + "line": 6, + "column": 50 + } + }, + "callee": { + "type": "Identifier", + "start": 138, + "end": 145, + "loc": { + "start": { + "line": 6, + "column": 22 + }, + "end": { + "line": 6, + "column": 29 + }, + "identifierName": "xRegExp" + }, + "name": "xRegExp" + }, + "arguments": [ + { + "type": "Identifier", + "start": 146, + "end": 158, + "loc": { + "start": { + "line": 6, + "column": 30 + }, + "end": { + "line": 6, + "column": 42 + }, + "identifierName": "regexLiteral" + }, + "name": "regexLiteral" + }, + { + "type": "Identifier", + "start": 160, + "end": 165, + "loc": { + "start": { + "line": 6, + "column": 44 + }, + "end": { + "line": 6, + "column": 49 + }, + "identifierName": "flags" + }, + "name": "flags" + } + ] + } + } + } + ], + "directives": [] + } + }, + { + "type": "ClassMethod", + "start": 175, + "end": 234, + "loc": { + "start": { + "line": 9, + "column": 2 + }, + "end": { + "line": 11, + "column": 3 + } + }, + "static": false, + "computed": false, + "key": { + "type": "Identifier", + "start": 179, + "end": 188, + "loc": { + "start": { + "line": 9, + "column": 6 + }, + "end": { + "line": 9, + "column": 15 + }, + "identifierName": "lastIndex" + }, + "name": "lastIndex" + }, + "kind": "get", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [], + "body": { + "type": "BlockStatement", + "start": 191, + "end": 234, + "loc": { + "start": { + "line": 9, + "column": 18 + }, + "end": { + "line": 11, + "column": 3 + } + }, + "body": [ + { + "type": "ReturnStatement", + "start": 197, + "end": 230, + "loc": { + "start": { + "line": 10, + "column": 4 + }, + "end": { + "line": 10, + "column": 37 + } + }, + "argument": { + "type": "MemberExpression", + "start": 204, + "end": 229, + "loc": { + "start": { + "line": 10, + "column": 11 + }, + "end": { + "line": 10, + "column": 36 + } + }, + "object": { + "type": "MemberExpression", + "start": 204, + "end": 219, + "loc": { + "start": { + "line": 10, + "column": 11 + }, + "end": { + "line": 10, + "column": 26 + } + }, + "object": { + "type": "ThisExpression", + "start": 204, + "end": 208, + "loc": { + "start": { + "line": 10, + "column": 11 + }, + "end": { + "line": 10, + "column": 15 + } + } + }, + "property": { + "type": "Identifier", + "start": 209, + "end": 219, + "loc": { + "start": { + "line": 10, + "column": 16 + }, + "end": { + "line": 10, + "column": 26 + }, + "identifierName": "expression" + }, + "name": "expression" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 220, + "end": 229, + "loc": { + "start": { + "line": 10, + "column": 27 + }, + "end": { + "line": 10, + "column": 36 + }, + "identifierName": "lastIndex" + }, + "name": "lastIndex" + }, + "computed": false + } + } + ], + "directives": [] + } + }, + { + "type": "ClassMethod", + "start": 238, + "end": 303, + "loc": { + "start": { + "line": 13, + "column": 2 + }, + "end": { + "line": 15, + "column": 3 + } + }, + "static": false, + "computed": false, + "key": { + "type": "Identifier", + "start": 242, + "end": 251, + "loc": { + "start": { + "line": 13, + "column": 6 + }, + "end": { + "line": 13, + "column": 15 + }, + "identifierName": "lastIndex" + }, + "name": "lastIndex" + }, + "kind": "set", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 252, + "end": 257, + "loc": { + "start": { + "line": 13, + "column": 16 + }, + "end": { + "line": 13, + "column": 21 + }, + "identifierName": "index" + }, + "name": "index" + } + ], + "body": { + "type": "BlockStatement", + "start": 259, + "end": 303, + "loc": { + "start": { + "line": 13, + "column": 23 + }, + "end": { + "line": 15, + "column": 3 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 265, + "end": 299, + "loc": { + "start": { + "line": 14, + "column": 4 + }, + "end": { + "line": 14, + "column": 38 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 265, + "end": 298, + "loc": { + "start": { + "line": 14, + "column": 4 + }, + "end": { + "line": 14, + "column": 37 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 265, + "end": 290, + "loc": { + "start": { + "line": 14, + "column": 4 + }, + "end": { + "line": 14, + "column": 29 + } + }, + "object": { + "type": "MemberExpression", + "start": 265, + "end": 280, + "loc": { + "start": { + "line": 14, + "column": 4 + }, + "end": { + "line": 14, + "column": 19 + } + }, + "object": { + "type": "ThisExpression", + "start": 265, + "end": 269, + "loc": { + "start": { + "line": 14, + "column": 4 + }, + "end": { + "line": 14, + "column": 8 + } + } + }, + "property": { + "type": "Identifier", + "start": 270, + "end": 280, + "loc": { + "start": { + "line": 14, + "column": 9 + }, + "end": { + "line": 14, + "column": 19 + }, + "identifierName": "expression" + }, + "name": "expression" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 281, + "end": 290, + "loc": { + "start": { + "line": 14, + "column": 20 + }, + "end": { + "line": 14, + "column": 29 + }, + "identifierName": "lastIndex" + }, + "name": "lastIndex" + }, + "computed": false + }, + "right": { + "type": "Identifier", + "start": 293, + "end": 298, + "loc": { + "start": { + "line": 14, + "column": 32 + }, + "end": { + "line": 14, + "column": 37 + }, + "identifierName": "index" + }, + "name": "index" + } + } + } + ], + "directives": [] + } + }, + { + "type": "ClassMethod", + "start": 307, + "end": 362, + "loc": { + "start": { + "line": 17, + "column": 2 + }, + "end": { + "line": 21, + "column": 3 + } + }, + "static": false, + "computed": false, + "key": { + "type": "Identifier", + "start": 307, + "end": 312, + "loc": { + "start": { + "line": 17, + "column": 2 + }, + "end": { + "line": 17, + "column": 7 + }, + "identifierName": "reset" + }, + "name": "reset" + }, + "kind": "method", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [], + "body": { + "type": "BlockStatement", + "start": 315, + "end": 362, + "loc": { + "start": { + "line": 17, + "column": 10 + }, + "end": { + "line": 21, + "column": 3 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 321, + "end": 340, + "loc": { + "start": { + "line": 18, + "column": 4 + }, + "end": { + "line": 18, + "column": 23 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 321, + "end": 339, + "loc": { + "start": { + "line": 18, + "column": 4 + }, + "end": { + "line": 18, + "column": 22 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 321, + "end": 335, + "loc": { + "start": { + "line": 18, + "column": 4 + }, + "end": { + "line": 18, + "column": 18 + } + }, + "object": { + "type": "ThisExpression", + "start": 321, + "end": 325, + "loc": { + "start": { + "line": 18, + "column": 4 + }, + "end": { + "line": 18, + "column": 8 + } + } + }, + "property": { + "type": "Identifier", + "start": 326, + "end": 335, + "loc": { + "start": { + "line": 18, + "column": 9 + }, + "end": { + "line": 18, + "column": 18 + }, + "identifierName": "lastIndex" + }, + "name": "lastIndex" + }, + "computed": false + }, + "right": { + "type": "NumericLiteral", + "start": 338, + "end": 339, + "loc": { + "start": { + "line": 18, + "column": 21 + }, + "end": { + "line": 18, + "column": 22 + } + }, + "extra": { + "rawValue": 0, + "raw": "0" + }, + "value": 0 + } + } + }, + { + "type": "ReturnStatement", + "start": 346, + "end": 358, + "loc": { + "start": { + "line": 20, + "column": 4 + }, + "end": { + "line": 20, + "column": 16 + } + }, + "argument": { + "type": "ThisExpression", + "start": 353, + "end": 357, + "loc": { + "start": { + "line": 20, + "column": 11 + }, + "end": { + "line": 20, + "column": 15 + } + } + } + } + ], + "directives": [] + } + }, + { + "type": "ClassMethod", + "start": 366, + "end": 638, + "loc": { + "start": { + "line": 23, + "column": 2 + }, + "end": { + "line": 36, + "column": 3 + } + }, + "static": false, + "computed": false, + "key": { + "type": "Identifier", + "start": 366, + "end": 370, + "loc": { + "start": { + "line": 23, + "column": 2 + }, + "end": { + "line": 23, + "column": 6 + }, + "identifierName": "exec" + }, + "name": "exec" + }, + "kind": "method", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 371, + "end": 378, + "loc": { + "start": { + "line": 23, + "column": 7 + }, + "end": { + "line": 23, + "column": 14 + }, + "identifierName": "program" + }, + "name": "program" + } + ], + "body": { + "type": "BlockStatement", + "start": 380, + "end": 638, + "loc": { + "start": { + "line": 23, + "column": 16 + }, + "end": { + "line": 36, + "column": 3 + } + }, + "body": [ + { + "type": "VariableDeclaration", + "start": 386, + "end": 428, + "loc": { + "start": { + "line": 24, + "column": 4 + }, + "end": { + "line": 24, + "column": 46 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 390, + "end": 427, + "loc": { + "start": { + "line": 24, + "column": 8 + }, + "end": { + "line": 24, + "column": 45 + } + }, + "id": { + "type": "Identifier", + "start": 390, + "end": 395, + "loc": { + "start": { + "line": 24, + "column": 8 + }, + "end": { + "line": 24, + "column": 13 + }, + "identifierName": "match" + }, + "name": "match" + }, + "init": { + "type": "CallExpression", + "start": 398, + "end": 427, + "loc": { + "start": { + "line": 24, + "column": 16 + }, + "end": { + "line": 24, + "column": 45 + } + }, + "callee": { + "type": "MemberExpression", + "start": 398, + "end": 418, + "loc": { + "start": { + "line": 24, + "column": 16 + }, + "end": { + "line": 24, + "column": 36 + } + }, + "object": { + "type": "MemberExpression", + "start": 398, + "end": 413, + "loc": { + "start": { + "line": 24, + "column": 16 + }, + "end": { + "line": 24, + "column": 31 + } + }, + "object": { + "type": "ThisExpression", + "start": 398, + "end": 402, + "loc": { + "start": { + "line": 24, + "column": 16 + }, + "end": { + "line": 24, + "column": 20 + } + } + }, + "property": { + "type": "Identifier", + "start": 403, + "end": 413, + "loc": { + "start": { + "line": 24, + "column": 21 + }, + "end": { + "line": 24, + "column": 31 + }, + "identifierName": "expression" + }, + "name": "expression" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 414, + "end": 418, + "loc": { + "start": { + "line": 24, + "column": 32 + }, + "end": { + "line": 24, + "column": 36 + }, + "identifierName": "exec" + }, + "name": "exec" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 419, + "end": 426, + "loc": { + "start": { + "line": 24, + "column": 37 + }, + "end": { + "line": 24, + "column": 44 + }, + "identifierName": "program" + }, + "name": "program" + } + ] + } + } + ], + "kind": "let" + }, + { + "type": "IfStatement", + "start": 434, + "end": 616, + "loc": { + "start": { + "line": 26, + "column": 4 + }, + "end": { + "line": 33, + "column": 5 + } + }, + "test": { + "type": "BinaryExpression", + "start": 438, + "end": 452, + "loc": { + "start": { + "line": 26, + "column": 8 + }, + "end": { + "line": 26, + "column": 22 + } + }, + "left": { + "type": "Identifier", + "start": 438, + "end": 443, + "loc": { + "start": { + "line": 26, + "column": 8 + }, + "end": { + "line": 26, + "column": 13 + }, + "identifierName": "match" + }, + "name": "match" + }, + "operator": "!==", + "right": { + "type": "NullLiteral", + "start": 448, + "end": 452, + "loc": { + "start": { + "line": 26, + "column": 18 + }, + "end": { + "line": 26, + "column": 22 + } + } + } + }, + "consequent": { + "type": "BlockStatement", + "start": 454, + "end": 616, + "loc": { + "start": { + "line": 26, + "column": 24 + }, + "end": { + "line": 33, + "column": 5 + } + }, + "body": [ + { + "type": "ReturnStatement", + "start": 462, + "end": 610, + "loc": { + "start": { + "line": 27, + "column": 6 + }, + "end": { + "line": 32, + "column": 8 + } + }, + "argument": { + "type": "ObjectExpression", + "start": 469, + "end": 609, + "loc": { + "start": { + "line": 27, + "column": 13 + }, + "end": { + "line": 32, + "column": 7 + } + }, + "properties": [ + { + "type": "ObjectProperty", + "start": 479, + "end": 494, + "loc": { + "start": { + "line": 28, + "column": 8 + }, + "end": { + "line": 28, + "column": 23 + } + }, + "method": false, + "shorthand": false, + "computed": false, + "key": { + "type": "Identifier", + "start": 479, + "end": 483, + "loc": { + "start": { + "line": 28, + "column": 8 + }, + "end": { + "line": 28, + "column": 12 + }, + "identifierName": "type" + }, + "name": "type" + }, + "value": { + "type": "MemberExpression", + "start": 485, + "end": 494, + "loc": { + "start": { + "line": 28, + "column": 14 + }, + "end": { + "line": 28, + "column": 23 + } + }, + "object": { + "type": "ThisExpression", + "start": 485, + "end": 489, + "loc": { + "start": { + "line": 28, + "column": 14 + }, + "end": { + "line": 28, + "column": 18 + } + } + }, + "property": { + "type": "Identifier", + "start": 490, + "end": 494, + "loc": { + "start": { + "line": 28, + "column": 19 + }, + "end": { + "line": 28, + "column": 23 + }, + "identifierName": "name" + }, + "name": "name" + }, + "computed": false + } + }, + { + "type": "ObjectProperty", + "start": 504, + "end": 519, + "loc": { + "start": { + "line": 29, + "column": 8 + }, + "end": { + "line": 29, + "column": 23 + } + }, + "method": false, + "shorthand": false, + "computed": false, + "key": { + "type": "Identifier", + "start": 504, + "end": 509, + "loc": { + "start": { + "line": 29, + "column": 8 + }, + "end": { + "line": 29, + "column": 13 + }, + "identifierName": "value" + }, + "name": "value" + }, + "value": { + "type": "MemberExpression", + "start": 511, + "end": 519, + "loc": { + "start": { + "line": 29, + "column": 15 + }, + "end": { + "line": 29, + "column": 23 + } + }, + "object": { + "type": "Identifier", + "start": 511, + "end": 516, + "loc": { + "start": { + "line": 29, + "column": 15 + }, + "end": { + "line": 29, + "column": 20 + }, + "identifierName": "match" + }, + "name": "match" + }, + "property": { + "type": "NumericLiteral", + "start": 517, + "end": 518, + "loc": { + "start": { + "line": 29, + "column": 21 + }, + "end": { + "line": 29, + "column": 22 + } + }, + "extra": { + "rawValue": 1, + "raw": "1" + }, + "value": 1 + }, + "computed": true + } + }, + { + "type": "ObjectProperty", + "start": 529, + "end": 572, + "loc": { + "start": { + "line": 30, + "column": 8 + }, + "end": { + "line": 30, + "column": 51 + } + }, + "method": false, + "shorthand": false, + "computed": false, + "key": { + "type": "Identifier", + "start": 529, + "end": 534, + "loc": { + "start": { + "line": 30, + "column": 8 + }, + "end": { + "line": 30, + "column": 13 + }, + "identifierName": "start" + }, + "name": "start" + }, + "value": { + "type": "BinaryExpression", + "start": 536, + "end": 572, + "loc": { + "start": { + "line": 30, + "column": 15 + }, + "end": { + "line": 30, + "column": 51 + } + }, + "left": { + "type": "BinaryExpression", + "start": 536, + "end": 568, + "loc": { + "start": { + "line": 30, + "column": 15 + }, + "end": { + "line": 30, + "column": 47 + } + }, + "left": { + "type": "MemberExpression", + "start": 536, + "end": 550, + "loc": { + "start": { + "line": 30, + "column": 15 + }, + "end": { + "line": 30, + "column": 29 + } + }, + "object": { + "type": "ThisExpression", + "start": 536, + "end": 540, + "loc": { + "start": { + "line": 30, + "column": 15 + }, + "end": { + "line": 30, + "column": 19 + } + } + }, + "property": { + "type": "Identifier", + "start": 541, + "end": 550, + "loc": { + "start": { + "line": 30, + "column": 20 + }, + "end": { + "line": 30, + "column": 29 + }, + "identifierName": "lastIndex" + }, + "name": "lastIndex" + }, + "computed": false + }, + "operator": "-", + "right": { + "type": "MemberExpression", + "start": 553, + "end": 568, + "loc": { + "start": { + "line": 30, + "column": 32 + }, + "end": { + "line": 30, + "column": 47 + } + }, + "object": { + "type": "MemberExpression", + "start": 553, + "end": 561, + "loc": { + "start": { + "line": 30, + "column": 32 + }, + "end": { + "line": 30, + "column": 40 + } + }, + "object": { + "type": "Identifier", + "start": 553, + "end": 558, + "loc": { + "start": { + "line": 30, + "column": 32 + }, + "end": { + "line": 30, + "column": 37 + }, + "identifierName": "match" + }, + "name": "match" + }, + "property": { + "type": "NumericLiteral", + "start": 559, + "end": 560, + "loc": { + "start": { + "line": 30, + "column": 38 + }, + "end": { + "line": 30, + "column": 39 + } + }, + "extra": { + "rawValue": 1, + "raw": "1" + }, + "value": 1 + }, + "computed": true + }, + "property": { + "type": "Identifier", + "start": 562, + "end": 568, + "loc": { + "start": { + "line": 30, + "column": 41 + }, + "end": { + "line": 30, + "column": 47 + }, + "identifierName": "length" + }, + "name": "length" + }, + "computed": false + } + }, + "operator": "+", + "right": { + "type": "NumericLiteral", + "start": 571, + "end": 572, + "loc": { + "start": { + "line": 30, + "column": 50 + }, + "end": { + "line": 30, + "column": 51 + } + }, + "extra": { + "rawValue": 1, + "raw": "1" + }, + "value": 1 + } + } + }, + { + "type": "ObjectProperty", + "start": 582, + "end": 601, + "loc": { + "start": { + "line": 31, + "column": 8 + }, + "end": { + "line": 31, + "column": 27 + } + }, + "method": false, + "shorthand": false, + "computed": false, + "key": { + "type": "Identifier", + "start": 582, + "end": 585, + "loc": { + "start": { + "line": 31, + "column": 8 + }, + "end": { + "line": 31, + "column": 11 + }, + "identifierName": "end" + }, + "name": "end" + }, + "value": { + "type": "MemberExpression", + "start": 587, + "end": 601, + "loc": { + "start": { + "line": 31, + "column": 13 + }, + "end": { + "line": 31, + "column": 27 + } + }, + "object": { + "type": "ThisExpression", + "start": 587, + "end": 591, + "loc": { + "start": { + "line": 31, + "column": 13 + }, + "end": { + "line": 31, + "column": 17 + } + } + }, + "property": { + "type": "Identifier", + "start": 592, + "end": 601, + "loc": { + "start": { + "line": 31, + "column": 18 + }, + "end": { + "line": 31, + "column": 27 + }, + "identifierName": "lastIndex" + }, + "name": "lastIndex" + }, + "computed": false + } + } + ] + } + } + ], + "directives": [] + }, + "alternate": null + }, + { + "type": "ReturnStatement", + "start": 622, + "end": 634, + "loc": { + "start": { + "line": 35, + "column": 4 + }, + "end": { + "line": 35, + "column": 16 + } + }, + "argument": { + "type": "NullLiteral", + "start": 629, + "end": 633, + "loc": { + "start": { + "line": 35, + "column": 11 + }, + "end": { + "line": 35, + "column": 15 + } + } + } + } + ], + "directives": [] + } + }, + { + "type": "ClassMethod", + "start": 642, + "end": 799, + "loc": { + "start": { + "line": 38, + "column": 2 + }, + "end": { + "line": 44, + "column": 3 + } + }, + "static": false, + "computed": false, + "key": { + "type": "Identifier", + "start": 642, + "end": 646, + "loc": { + "start": { + "line": 38, + "column": 2 + }, + "end": { + "line": 38, + "column": 6 + }, + "identifierName": "test" + }, + "name": "test" + }, + "kind": "method", + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 647, + "end": 654, + "loc": { + "start": { + "line": 38, + "column": 7 + }, + "end": { + "line": 38, + "column": 14 + }, + "identifierName": "program" + }, + "name": "program" + } + ], + "body": { + "type": "BlockStatement", + "start": 656, + "end": 799, + "loc": { + "start": { + "line": 38, + "column": 16 + }, + "end": { + "line": 44, + "column": 3 + } + }, + "body": [ + { + "type": "VariableDeclaration", + "start": 662, + "end": 694, + "loc": { + "start": { + "line": 39, + "column": 4 + }, + "end": { + "line": 39, + "column": 36 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 666, + "end": 693, + "loc": { + "start": { + "line": 39, + "column": 8 + }, + "end": { + "line": 39, + "column": 35 + } + }, + "id": { + "type": "Identifier", + "start": 666, + "end": 676, + "loc": { + "start": { + "line": 39, + "column": 8 + }, + "end": { + "line": 39, + "column": 18 + }, + "identifierName": "savedIndex" + }, + "name": "savedIndex" + }, + "init": { + "type": "MemberExpression", + "start": 679, + "end": 693, + "loc": { + "start": { + "line": 39, + "column": 21 + }, + "end": { + "line": 39, + "column": 35 + } + }, + "object": { + "type": "ThisExpression", + "start": 679, + "end": 683, + "loc": { + "start": { + "line": 39, + "column": 21 + }, + "end": { + "line": 39, + "column": 25 + } + } + }, + "property": { + "type": "Identifier", + "start": 684, + "end": 693, + "loc": { + "start": { + "line": 39, + "column": 26 + }, + "end": { + "line": 39, + "column": 35 + }, + "identifierName": "lastIndex" + }, + "name": "lastIndex" + }, + "computed": false + } + } + ], + "kind": "let" + }, + { + "type": "VariableDeclaration", + "start": 699, + "end": 733, + "loc": { + "start": { + "line": 40, + "column": 4 + }, + "end": { + "line": 40, + "column": 38 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 705, + "end": 732, + "loc": { + "start": { + "line": 40, + "column": 10 + }, + "end": { + "line": 40, + "column": 37 + } + }, + "id": { + "type": "Identifier", + "start": 705, + "end": 711, + "loc": { + "start": { + "line": 40, + "column": 10 + }, + "end": { + "line": 40, + "column": 16 + }, + "identifierName": "result" + }, + "name": "result" + }, + "init": { + "type": "CallExpression", + "start": 714, + "end": 732, + "loc": { + "start": { + "line": 40, + "column": 19 + }, + "end": { + "line": 40, + "column": 37 + } + }, + "callee": { + "type": "MemberExpression", + "start": 714, + "end": 723, + "loc": { + "start": { + "line": 40, + "column": 19 + }, + "end": { + "line": 40, + "column": 28 + } + }, + "object": { + "type": "ThisExpression", + "start": 714, + "end": 718, + "loc": { + "start": { + "line": 40, + "column": 19 + }, + "end": { + "line": 40, + "column": 23 + } + } + }, + "property": { + "type": "Identifier", + "start": 719, + "end": 723, + "loc": { + "start": { + "line": 40, + "column": 24 + }, + "end": { + "line": 40, + "column": 28 + }, + "identifierName": "exec" + }, + "name": "exec" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 724, + "end": 731, + "loc": { + "start": { + "line": 40, + "column": 29 + }, + "end": { + "line": 40, + "column": 36 + }, + "identifierName": "program" + }, + "name": "program" + } + ] + } + } + ], + "kind": "const" + }, + { + "type": "ExpressionStatement", + "start": 738, + "end": 766, + "loc": { + "start": { + "line": 41, + "column": 4 + }, + "end": { + "line": 41, + "column": 32 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 738, + "end": 765, + "loc": { + "start": { + "line": 41, + "column": 4 + }, + "end": { + "line": 41, + "column": 31 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 738, + "end": 752, + "loc": { + "start": { + "line": 41, + "column": 4 + }, + "end": { + "line": 41, + "column": 18 + } + }, + "object": { + "type": "ThisExpression", + "start": 738, + "end": 742, + "loc": { + "start": { + "line": 41, + "column": 4 + }, + "end": { + "line": 41, + "column": 8 + } + } + }, + "property": { + "type": "Identifier", + "start": 743, + "end": 752, + "loc": { + "start": { + "line": 41, + "column": 9 + }, + "end": { + "line": 41, + "column": 18 + }, + "identifierName": "lastIndex" + }, + "name": "lastIndex" + }, + "computed": false + }, + "right": { + "type": "Identifier", + "start": 755, + "end": 765, + "loc": { + "start": { + "line": 41, + "column": 21 + }, + "end": { + "line": 41, + "column": 31 + }, + "identifierName": "savedIndex" + }, + "name": "savedIndex" + } + } + }, + { + "type": "ReturnStatement", + "start": 772, + "end": 795, + "loc": { + "start": { + "line": 43, + "column": 4 + }, + "end": { + "line": 43, + "column": 27 + } + }, + "argument": { + "type": "BinaryExpression", + "start": 779, + "end": 794, + "loc": { + "start": { + "line": 43, + "column": 11 + }, + "end": { + "line": 43, + "column": 26 + } + }, + "left": { + "type": "Identifier", + "start": 779, + "end": 785, + "loc": { + "start": { + "line": 43, + "column": 11 + }, + "end": { + "line": 43, + "column": 17 + }, + "identifierName": "result" + }, + "name": "result" + }, + "operator": "!==", + "right": { + "type": "NullLiteral", + "start": 790, + "end": 794, + "loc": { + "start": { + "line": 43, + "column": 22 + }, + "end": { + "line": 43, + "column": 26 + } + } + } + } + } + ], + "directives": [] + } + } + ] + }, + "__PseudoExport__": true, + "leadingComments": [], + "trailingComments": [] + }, + "specifiers": null, + "source": null, + "leadingComments": null + }, + { + "type": "ExportNamedDeclaration", + "start": 2590, + "end": 2691, + "loc": { + "start": { + "line": 119, + "column": 0 + }, + "end": { + "line": 128, + "column": 15 + } + }, + "declaration": { + "type": "VariableDeclaration", + "start": 1055, + "end": 1251, + "loc": { + "start": { + "line": 56, + "column": 0 + }, + "end": { + "line": 61, + "column": 2 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 1061, + "end": 1250, + "loc": { + "start": { + "line": 56, + "column": 6 + }, + "end": { + "line": 61, + "column": 1 + } + }, + "id": { + "type": "Identifier", + "start": 1061, + "end": 1068, + "loc": { + "start": { + "line": 56, + "column": 6 + }, + "end": { + "line": 56, + "column": 13 + }, + "identifierName": "NEWLINE" + }, + "name": "NEWLINE" + }, + "init": { + "type": "NewExpression", + "start": 1071, + "end": 1250, + "loc": { + "start": { + "line": 56, + "column": 16 + }, + "end": { + "line": 61, + "column": 1 + } + }, + "callee": { + "type": "Identifier", + "start": 1075, + "end": 1085, + "loc": { + "start": { + "line": 56, + "column": 20 + }, + "end": { + "line": 56, + "column": 30 + }, + "identifierName": "TokenRegex" + }, + "name": "TokenRegex" + }, + "arguments": [ + { + "type": "StringLiteral", + "start": 1089, + "end": 1098, + "loc": { + "start": { + "line": 57, + "column": 2 + }, + "end": { + "line": 57, + "column": 11 + } + }, + "extra": { + "rawValue": "NEWLINE", + "raw": "\"NEWLINE\"" + }, + "value": "NEWLINE" + }, + { + "type": "TemplateLiteral", + "start": 1102, + "end": 1248, + "loc": { + "start": { + "line": 58, + "column": 2 + }, + "end": { + "line": 60, + "column": 34 + } + }, + "expressions": [], + "quasis": [ + { + "type": "TemplateElement", + "start": 1103, + "end": 1247, + "loc": { + "start": { + "line": 58, + "column": 3 + }, + "end": { + "line": 60, + "column": 33 + } + }, + "value": { + "raw": "(\\\\r? # Carriage return (for compatibility)\n \\\\n # Newline char\n )", + "cooked": "(\\r? # Carriage return (for compatibility)\n \\n # Newline char\n )" + }, + "tail": true + } + ] + } + ] + } + } + ], + "kind": "const", + "leadingComments": [], + "trailingComments": [] + }, + "specifiers": null, + "source": null + }, + { + "type": "ExportNamedDeclaration", + "start": 2590, + "end": 2691, + "loc": { + "start": { + "line": 119, + "column": 0 + }, + "end": { + "line": 128, + "column": 15 + } + }, + "declaration": { + "type": "VariableDeclaration", + "start": 1253, + "end": 1540, + "loc": { + "start": { + "line": 63, + "column": 0 + }, + "end": { + "line": 71, + "column": 2 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 1259, + "end": 1539, + "loc": { + "start": { + "line": 63, + "column": 6 + }, + "end": { + "line": 71, + "column": 1 + } + }, + "id": { + "type": "Identifier", + "start": 1259, + "end": 1265, + "loc": { + "start": { + "line": 63, + "column": 6 + }, + "end": { + "line": 63, + "column": 12 + }, + "identifierName": "NUMBER" + }, + "name": "NUMBER" + }, + "init": { + "type": "NewExpression", + "start": 1268, + "end": 1539, + "loc": { + "start": { + "line": 63, + "column": 15 + }, + "end": { + "line": 71, + "column": 1 + } + }, + "callee": { + "type": "Identifier", + "start": 1272, + "end": 1282, + "loc": { + "start": { + "line": 63, + "column": 19 + }, + "end": { + "line": 63, + "column": 29 + }, + "identifierName": "TokenRegex" + }, + "name": "TokenRegex" + }, + "arguments": [ + { + "type": "StringLiteral", + "start": 1286, + "end": 1294, + "loc": { + "start": { + "line": 64, + "column": 2 + }, + "end": { + "line": 64, + "column": 10 + } + }, + "extra": { + "rawValue": "NUMBER", + "raw": "\"NUMBER\"" + }, + "value": "NUMBER" + }, + { + "type": "TemplateLiteral", + "start": 1298, + "end": 1529, + "loc": { + "start": { + "line": 65, + "column": 2 + }, + "end": { + "line": 69, + "column": 33 + } + }, + "expressions": [], + "quasis": [ + { + "type": "TemplateElement", + "start": 1299, + "end": 1528, + "loc": { + "start": { + "line": 65, + "column": 3 + }, + "end": { + "line": 69, + "column": 32 + } + }, + "value": { + "raw": "([-+]? # Sign\n \\\\d* # Digits\n \\\\.?\\\\d+ # Decimals\n (?:[eE][-+]?\\\\d+)? # Exp notatio\n )", + "cooked": "([-+]? # Sign\n \\d* # Digits\n \\.?\\d+ # Decimals\n (?:[eE][-+]?\\d+)? # Exp notatio\n )" + }, + "tail": true + } + ] + }, + { + "type": "StringLiteral", + "start": 1533, + "end": 1537, + "loc": { + "start": { + "line": 70, + "column": 2 + }, + "end": { + "line": 70, + "column": 6 + } + }, + "extra": { + "rawValue": "yx", + "raw": "\"yx\"" + }, + "value": "yx" + } + ] + } + } + ], + "kind": "const", + "leadingComments": [], + "trailingComments": [] + }, + "specifiers": null, + "source": null + }, + { + "type": "ExportNamedDeclaration", + "start": 2590, + "end": 2691, + "loc": { + "start": { + "line": 119, + "column": 0 + }, + "end": { + "line": 128, + "column": 15 + } + }, + "declaration": { + "type": "VariableDeclaration", + "start": 1542, + "end": 1682, + "loc": { + "start": { + "line": 73, + "column": 0 + }, + "end": { + "line": 78, + "column": 2 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 1548, + "end": 1681, + "loc": { + "start": { + "line": 73, + "column": 6 + }, + "end": { + "line": 78, + "column": 1 + } + }, + "id": { + "type": "Identifier", + "start": 1548, + "end": 1554, + "loc": { + "start": { + "line": 73, + "column": 6 + }, + "end": { + "line": 73, + "column": 12 + }, + "identifierName": "STRING" + }, + "name": "STRING" + }, + "init": { + "type": "NewExpression", + "start": 1557, + "end": 1681, + "loc": { + "start": { + "line": 73, + "column": 15 + }, + "end": { + "line": 78, + "column": 1 + } + }, + "callee": { + "type": "Identifier", + "start": 1561, + "end": 1571, + "loc": { + "start": { + "line": 73, + "column": 19 + }, + "end": { + "line": 73, + "column": 29 + }, + "identifierName": "TokenRegex" + }, + "name": "TokenRegex" + }, + "arguments": [ + { + "type": "StringLiteral", + "start": 1575, + "end": 1583, + "loc": { + "start": { + "line": 74, + "column": 2 + }, + "end": { + "line": 74, + "column": 10 + } + }, + "extra": { + "rawValue": "STRING", + "raw": "\"STRING\"" + }, + "value": "STRING" + }, + { + "type": "TemplateLiteral", + "start": 1587, + "end": 1671, + "loc": { + "start": { + "line": 75, + "column": 2 + }, + "end": { + "line": 76, + "column": 35 + } + }, + "expressions": [], + "quasis": [ + { + "type": "TemplateElement", + "start": 1588, + "end": 1670, + "loc": { + "start": { + "line": 75, + "column": 3 + }, + "end": { + "line": 76, + "column": 34 + } + }, + "value": { + "raw": "\"([^\"\\\\\\\\]* # Any character except 'escaped \"'\n )\"", + "cooked": "\"([^\"\\\\]* # Any character except 'escaped \"'\n )\"" + }, + "tail": true + } + ] + }, + { + "type": "StringLiteral", + "start": 1675, + "end": 1679, + "loc": { + "start": { + "line": 77, + "column": 2 + }, + "end": { + "line": 77, + "column": 6 + } + }, + "extra": { + "rawValue": "yx", + "raw": "\"yx\"" + }, + "value": "yx" + } + ] + } + } + ], + "kind": "const", + "leadingComments": [], + "trailingComments": [] + }, + "specifiers": null, + "source": null + }, + { + "type": "ExportNamedDeclaration", + "start": 2590, + "end": 2691, + "loc": { + "start": { + "line": 119, + "column": 0 + }, + "end": { + "line": 128, + "column": 15 + } + }, + "declaration": { + "type": "VariableDeclaration", + "start": 1684, + "end": 1979, + "loc": { + "start": { + "line": 80, + "column": 0 + }, + "end": { + "line": 87, + "column": 2 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 1690, + "end": 1978, + "loc": { + "start": { + "line": 80, + "column": 6 + }, + "end": { + "line": 87, + "column": 1 + } + }, + "id": { + "type": "Identifier", + "start": 1690, + "end": 1694, + "loc": { "start": { - "line": 123, - "column": 2 + "line": 80, + "column": 6 }, "end": { - "line": 123, - "column": 8 + "line": 80, + "column": 10 + }, + "identifierName": "WORD" + }, + "name": "WORD" + }, + "init": { + "type": "NewExpression", + "start": 1697, + "end": 1978, + "loc": { + "start": { + "line": 80, + "column": 13 + }, + "end": { + "line": 87, + "column": 1 } }, - "method": false, - "shorthand": true, - "computed": false, - "key": { + "callee": { "type": "Identifier", - "start": 2647, - "end": 2653, + "start": 1701, + "end": 1711, "loc": { "start": { - "line": 123, - "column": 2 + "line": 80, + "column": 17 }, "end": { - "line": 123, - "column": 8 + "line": 80, + "column": 27 }, - "identifierName": "STRING" + "identifierName": "TokenRegex" }, - "name": "STRING" + "name": "TokenRegex" }, - "value": { - "type": "Identifier", - "start": 2647, - "end": 2653, - "loc": { - "start": { - "line": 123, - "column": 2 + "arguments": [ + { + "type": "StringLiteral", + "start": 1715, + "end": 1721, + "loc": { + "start": { + "line": 81, + "column": 2 + }, + "end": { + "line": 81, + "column": 8 + } }, - "end": { - "line": 123, - "column": 8 + "extra": { + "rawValue": "WORD", + "raw": "\"WORD\"" + }, + "value": "WORD" + }, + { + "type": "TemplateLiteral", + "start": 1725, + "end": 1968, + "loc": { + "start": { + "line": 82, + "column": 2 + }, + "end": { + "line": 85, + "column": 32 + } }, - "identifierName": "STRING" + "expressions": [], + "quasis": [ + { + "type": "TemplateElement", + "start": 1726, + "end": 1967, + "loc": { + "start": { + "line": 82, + "column": 3 + }, + "end": { + "line": 85, + "column": 31 + } + }, + "value": { + "raw": "(\\\\[\\\\]| # [] is a reserved word for arrays\n :=| # := is a reserved word for 'define'\n [^\\\\s\\\\(\\\\)\\\\{\\\\}\\\\[\\\\]\\\\.,:\"]+ # Avoid some chars\n )", + "cooked": "(\\[\\]| # [] is a reserved word for arrays\n :=| # := is a reserved word for 'define'\n [^\\s\\(\\)\\{\\}\\[\\]\\.,:\"]+ # Avoid some chars\n )" + }, + "tail": true + } + ] }, - "name": "STRING" + { + "type": "StringLiteral", + "start": 1972, + "end": 1976, + "loc": { + "start": { + "line": 86, + "column": 2 + }, + "end": { + "line": 86, + "column": 6 + } + }, + "extra": { + "rawValue": "yx", + "raw": "\"yx\"" + }, + "value": "yx" + } + ] + } + } + ], + "kind": "const", + "leadingComments": [], + "trailingComments": [] + }, + "specifiers": null, + "source": null + }, + { + "type": "ExportNamedDeclaration", + "start": 2590, + "end": 2691, + "loc": { + "start": { + "line": 119, + "column": 0 + }, + "end": { + "line": 128, + "column": 15 + } + }, + "declaration": { + "type": "VariableDeclaration", + "start": 1981, + "end": 2095, + "loc": { + "start": { + "line": 89, + "column": 0 + }, + "end": { + "line": 94, + "column": 2 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 1987, + "end": 2094, + "loc": { + "start": { + "line": 89, + "column": 6 }, - "extra": { - "shorthand": true + "end": { + "line": 94, + "column": 1 } }, - { - "type": "ObjectProperty", - "start": 2657, - "end": 2661, + "id": { + "type": "Identifier", + "start": 1987, + "end": 1989, "loc": { "start": { - "line": 124, - "column": 2 + "line": 89, + "column": 6 }, "end": { - "line": 124, - "column": 6 + "line": 89, + "column": 8 + }, + "identifierName": "LP" + }, + "name": "LP" + }, + "init": { + "type": "NewExpression", + "start": 1992, + "end": 2094, + "loc": { + "start": { + "line": 89, + "column": 11 + }, + "end": { + "line": 94, + "column": 1 } }, - "method": false, - "shorthand": true, - "computed": false, - "key": { + "callee": { "type": "Identifier", - "start": 2657, - "end": 2661, + "start": 1996, + "end": 2006, "loc": { "start": { - "line": 124, - "column": 2 + "line": 89, + "column": 15 }, "end": { - "line": 124, - "column": 6 + "line": 89, + "column": 25 }, - "identifierName": "WORD" + "identifierName": "TokenRegex" }, - "name": "WORD" + "name": "TokenRegex" }, - "value": { - "type": "Identifier", - "start": 2657, - "end": 2661, - "loc": { - "start": { - "line": 124, - "column": 2 + "arguments": [ + { + "type": "StringLiteral", + "start": 2010, + "end": 2014, + "loc": { + "start": { + "line": 90, + "column": 2 + }, + "end": { + "line": 90, + "column": 6 + } }, - "end": { - "line": 124, - "column": 6 + "extra": { + "rawValue": "LP", + "raw": "\"LP\"" + }, + "value": "LP" + }, + { + "type": "TemplateLiteral", + "start": 2018, + "end": 2084, + "loc": { + "start": { + "line": 91, + "column": 2 + }, + "end": { + "line": 92, + "column": 29 + } + }, + "expressions": [], + "quasis": [ + { + "type": "TemplateElement", + "start": 2019, + "end": 2083, + "loc": { + "start": { + "line": 91, + "column": 3 + }, + "end": { + "line": 92, + "column": 28 + } + }, + "value": { + "raw": "([\\\\(\\\\{\\\\[\\\\.] # ({[ are synonyms\n )", + "cooked": "([\\(\\{\\[\\.] # ({[ are synonyms\n )" + }, + "tail": true + } + ] + }, + { + "type": "StringLiteral", + "start": 2088, + "end": 2092, + "loc": { + "start": { + "line": 93, + "column": 2 + }, + "end": { + "line": 93, + "column": 6 + } + }, + "extra": { + "rawValue": "yx", + "raw": "\"yx\"" }, - "identifierName": "WORD" + "value": "yx" + } + ] + } + } + ], + "kind": "const", + "leadingComments": [], + "trailingComments": [] + }, + "specifiers": null, + "source": null + }, + { + "type": "ExportNamedDeclaration", + "start": 2590, + "end": 2691, + "loc": { + "start": { + "line": 119, + "column": 0 + }, + "end": { + "line": 128, + "column": 15 + } + }, + "declaration": { + "type": "VariableDeclaration", + "start": 2097, + "end": 2210, + "loc": { + "start": { + "line": 96, + "column": 0 + }, + "end": { + "line": 101, + "column": 2 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 2103, + "end": 2209, + "loc": { + "start": { + "line": 96, + "column": 6 + }, + "end": { + "line": 101, + "column": 1 + } + }, + "id": { + "type": "Identifier", + "start": 2103, + "end": 2105, + "loc": { + "start": { + "line": 96, + "column": 6 + }, + "end": { + "line": 96, + "column": 8 }, - "name": "WORD" + "identifierName": "RP" }, - "extra": { - "shorthand": true - } + "name": "RP" }, - { - "type": "ObjectProperty", - "start": 2665, - "end": 2667, + "init": { + "type": "NewExpression", + "start": 2108, + "end": 2209, "loc": { "start": { - "line": 125, - "column": 2 + "line": 96, + "column": 11 }, "end": { - "line": 125, - "column": 4 + "line": 101, + "column": 1 } }, - "method": false, - "shorthand": true, - "computed": false, - "key": { + "callee": { "type": "Identifier", - "start": 2665, - "end": 2667, + "start": 2112, + "end": 2122, "loc": { "start": { - "line": 125, - "column": 2 + "line": 96, + "column": 15 }, "end": { - "line": 125, - "column": 4 + "line": 96, + "column": 25 }, - "identifierName": "LP" + "identifierName": "TokenRegex" }, - "name": "LP" + "name": "TokenRegex" }, - "value": { - "type": "Identifier", - "start": 2665, - "end": 2667, - "loc": { - "start": { - "line": 125, - "column": 2 + "arguments": [ + { + "type": "StringLiteral", + "start": 2126, + "end": 2130, + "loc": { + "start": { + "line": 97, + "column": 2 + }, + "end": { + "line": 97, + "column": 6 + } }, - "end": { - "line": 125, - "column": 4 + "extra": { + "rawValue": "RP", + "raw": "\"RP\"" + }, + "value": "RP" + }, + { + "type": "TemplateLiteral", + "start": 2134, + "end": 2199, + "loc": { + "start": { + "line": 98, + "column": 2 + }, + "end": { + "line": 99, + "column": 28 + } }, - "identifierName": "LP" + "expressions": [], + "quasis": [ + { + "type": "TemplateElement", + "start": 2135, + "end": 2198, + "loc": { + "start": { + "line": 98, + "column": 3 + }, + "end": { + "line": 99, + "column": 27 + } + }, + "value": { + "raw": "([\\\\)\\\\}\\\\]] # }}] are synonyms\n )", + "cooked": "([\\)\\}\\]] # }}] are synonyms\n )" + }, + "tail": true + } + ] }, - "name": "LP" + { + "type": "StringLiteral", + "start": 2203, + "end": 2207, + "loc": { + "start": { + "line": 100, + "column": 2 + }, + "end": { + "line": 100, + "column": 6 + } + }, + "extra": { + "rawValue": "yx", + "raw": "\"yx\"" + }, + "value": "yx" + } + ] + } + } + ], + "kind": "const", + "leadingComments": [], + "trailingComments": [] + }, + "specifiers": null, + "source": null + }, + { + "type": "ExportNamedDeclaration", + "start": 2590, + "end": 2691, + "loc": { + "start": { + "line": 119, + "column": 0 + }, + "end": { + "line": 128, + "column": 15 + } + }, + "declaration": { + "type": "VariableDeclaration", + "start": 2212, + "end": 2409, + "loc": { + "start": { + "line": 103, + "column": 0 + }, + "end": { + "line": 109, + "column": 2 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 2218, + "end": 2408, + "loc": { + "start": { + "line": 103, + "column": 6 }, - "extra": { - "shorthand": true + "end": { + "line": 109, + "column": 1 } }, - { - "type": "ObjectProperty", - "start": 2671, - "end": 2673, + "id": { + "type": "Identifier", + "start": 2218, + "end": 2223, "loc": { "start": { - "line": 126, - "column": 2 + "line": 103, + "column": 6 }, "end": { - "line": 126, - "column": 4 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 2671, - "end": 2673, - "loc": { - "start": { - "line": 126, - "column": 2 - }, - "end": { - "line": 126, - "column": 4 - }, - "identifierName": "RP" - }, - "name": "RP" - }, - "value": { - "type": "Identifier", - "start": 2671, - "end": 2673, - "loc": { - "start": { - "line": 126, - "column": 2 - }, - "end": { - "line": 126, - "column": 4 - }, - "identifierName": "RP" + "line": 103, + "column": 11 }, - "name": "RP" + "identifierName": "COMMA" }, - "extra": { - "shorthand": true - } + "name": "COMMA" }, - { - "type": "ObjectProperty", - "start": 2677, - "end": 2682, + "init": { + "type": "NewExpression", + "start": 2226, + "end": 2408, "loc": { "start": { - "line": 127, - "column": 2 + "line": 103, + "column": 14 }, "end": { - "line": 127, - "column": 7 + "line": 109, + "column": 1 } }, - "method": false, - "shorthand": true, - "computed": false, - "key": { + "callee": { "type": "Identifier", - "start": 2677, - "end": 2682, + "start": 2230, + "end": 2240, "loc": { "start": { - "line": 127, - "column": 2 + "line": 103, + "column": 18 }, "end": { - "line": 127, - "column": 7 + "line": 103, + "column": 28 }, - "identifierName": "COMMA" + "identifierName": "TokenRegex" }, - "name": "COMMA" + "name": "TokenRegex" }, - "value": { - "type": "Identifier", - "start": 2677, - "end": 2682, - "loc": { - "start": { - "line": 127, - "column": 2 + "arguments": [ + { + "type": "StringLiteral", + "start": 2244, + "end": 2251, + "loc": { + "start": { + "line": 104, + "column": 2 + }, + "end": { + "line": 104, + "column": 9 + } }, - "end": { - "line": 127, - "column": 7 + "extra": { + "rawValue": "COMMA", + "raw": "\"COMMA\"" + }, + "value": "COMMA" + }, + { + "type": "TemplateLiteral", + "start": 2255, + "end": 2398, + "loc": { + "start": { + "line": 105, + "column": 2 + }, + "end": { + "line": 107, + "column": 32 + } }, - "identifierName": "COMMA" + "expressions": [], + "quasis": [ + { + "type": "TemplateElement", + "start": 2256, + "end": 2397, + "loc": { + "start": { + "line": 105, + "column": 3 + }, + "end": { + "line": 107, + "column": 31 + } + }, + "value": { + "raw": "(,| # comma\n :(?!=) # a : that isn't followed by a = (:= is word)\n )", + "cooked": "(,| # comma\n :(?!=) # a : that isn't followed by a = (:= is word)\n )" + }, + "tail": true + } + ] }, - "name": "COMMA" + { + "type": "StringLiteral", + "start": 2402, + "end": 2406, + "loc": { + "start": { + "line": 108, + "column": 2 + }, + "end": { + "line": 108, + "column": 6 + } + }, + "extra": { + "rawValue": "yx", + "raw": "\"yx\"" + }, + "value": "yx" + } + ] + } + } + ], + "kind": "const", + "leadingComments": [], + "trailingComments": [] + }, + "specifiers": null, + "source": null + }, + { + "type": "ExportNamedDeclaration", + "start": 2590, + "end": 2691, + "loc": { + "start": { + "line": 119, + "column": 0 + }, + "end": { + "line": 128, + "column": 15 + } + }, + "declaration": { + "type": "VariableDeclaration", + "start": 2411, + "end": 2588, + "loc": { + "start": { + "line": 111, + "column": 0 + }, + "end": { + "line": 117, + "column": 2 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 2417, + "end": 2587, + "loc": { + "start": { + "line": 111, + "column": 6 }, - "extra": { - "shorthand": true + "end": { + "line": 117, + "column": 1 } }, - { - "type": "ObjectProperty", - "start": 2686, - "end": 2691, + "id": { + "type": "Identifier", + "start": 2417, + "end": 2422, "loc": { "start": { - "line": 128, - "column": 2 + "line": 111, + "column": 6 }, "end": { - "line": 128, - "column": 7 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 2686, - "end": 2691, - "loc": { - "start": { - "line": 128, - "column": 2 - }, - "end": { - "line": 128, - "column": 7 - }, - "identifierName": "REGEX" - }, - "name": "REGEX" - }, - "value": { - "type": "Identifier", - "start": 2686, - "end": 2691, - "loc": { - "start": { - "line": 128, - "column": 2 - }, - "end": { - "line": 128, - "column": 7 - }, - "identifierName": "REGEX" + "line": 111, + "column": 11 }, - "name": "REGEX" + "identifierName": "REGEX" }, - "extra": { - "shorthand": true - } + "name": "REGEX" }, - { - "type": "ObjectProperty", - "start": 2695, - "end": 2705, + "init": { + "type": "NewExpression", + "start": 2425, + "end": 2587, "loc": { "start": { - "line": 129, - "column": 2 + "line": 111, + "column": 14 }, "end": { - "line": 129, - "column": 12 + "line": 117, + "column": 1 } }, - "method": false, - "shorthand": true, - "computed": false, - "key": { + "callee": { "type": "Identifier", - "start": 2695, - "end": 2705, + "start": 2429, + "end": 2439, "loc": { "start": { - "line": 129, - "column": 2 + "line": 111, + "column": 18 }, "end": { - "line": 129, - "column": 12 + "line": 111, + "column": 28 }, "identifierName": "TokenRegex" }, "name": "TokenRegex" }, - "value": { - "type": "Identifier", - "start": 2695, - "end": 2705, - "loc": { - "start": { - "line": 129, - "column": 2 + "arguments": [ + { + "type": "StringLiteral", + "start": 2443, + "end": 2450, + "loc": { + "start": { + "line": 112, + "column": 2 + }, + "end": { + "line": 112, + "column": 9 + } + }, + "extra": { + "rawValue": "REGEX", + "raw": "\"REGEX\"" + }, + "value": "REGEX" + }, + { + "type": "TemplateLiteral", + "start": 2454, + "end": 2577, + "loc": { + "start": { + "line": 113, + "column": 2 + }, + "end": { + "line": 115, + "column": 32 + } + }, + "expressions": [], + "quasis": [ + { + "type": "TemplateElement", + "start": 2455, + "end": 2576, + "loc": { + "start": { + "line": 113, + "column": 3 + }, + "end": { + "line": 115, + "column": 31 + } + }, + "value": { + "raw": "(r/[^]*?/ # body of the regex\n [nsxAgimuy]* # flags\n )", + "cooked": "(r/[^]*?/ # body of the regex\n [nsxAgimuy]* # flags\n )" + }, + "tail": true + } + ] + }, + { + "type": "StringLiteral", + "start": 2581, + "end": 2585, + "loc": { + "start": { + "line": 116, + "column": 2 + }, + "end": { + "line": 116, + "column": 6 + } }, - "end": { - "line": 129, - "column": 12 + "extra": { + "rawValue": "yx", + "raw": "\"yx\"" }, - "identifierName": "TokenRegex" - }, - "name": "TokenRegex" - }, - "extra": { - "shorthand": true - } + "value": "yx" + } + ] } - ] - } - } + } + ], + "kind": "const", + "leadingComments": [], + "trailingComments": [] + }, + "specifiers": null, + "source": null } ], "directives": [] @@ -4517,10 +8295,10 @@ "tokens": [ { "type": { - "label": "const", - "keyword": "const", + "label": "import", + "keyword": "import", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -4529,9 +8307,9 @@ "binop": null, "updateContext": null }, - "value": "const", + "value": "import", "start": 0, - "end": 5, + "end": 6, "loc": { "start": { "line": 1, @@ -4539,7 +8317,7 @@ }, "end": { "line": 1, - "column": 5 + "column": 6 } } }, @@ -4556,43 +8334,16 @@ "binop": null }, "value": "xRegExp", - "start": 6, - "end": 13, + "start": 7, + "end": 14, "loc": { "start": { "line": 1, - "column": 6 + "column": 7 }, "end": { - "line": 1, - "column": 13 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 14, - "end": 15, - "loc": { - "start": { "line": 1, "column": 14 - }, - "end": { - "line": 1, - "column": 15 } } }, @@ -4608,42 +8359,17 @@ "postfix": false, "binop": null }, - "value": "require", - "start": 16, - "end": 23, - "loc": { - "start": { - "line": 1, - "column": 16 - }, - "end": { - "line": 1, - "column": 23 - } - } - }, - { - "type": { - "label": "(", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 23, - "end": 24, + "value": "from", + "start": 15, + "end": 19, "loc": { "start": { "line": 1, - "column": 23 + "column": 15 }, "end": { "line": 1, - "column": 24 + "column": 19 } } }, @@ -4661,41 +8387,16 @@ "updateContext": null }, "value": "xregexp", - "start": 24, - "end": 33, - "loc": { - "start": { - "line": 1, - "column": 24 - }, - "end": { - "line": 1, - "column": 33 - } - } - }, - { - "type": { - "label": ")", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 33, - "end": 34, + "start": 20, + "end": 29, "loc": { "start": { "line": 1, - "column": 33 + "column": 20 }, "end": { "line": 1, - "column": 34 + "column": 29 } } }, @@ -4712,16 +8413,16 @@ "binop": null, "updateContext": null }, - "start": 34, - "end": 35, + "start": 29, + "end": 30, "loc": { "start": { "line": 1, - "column": 34 + "column": 29 }, "end": { "line": 1, - "column": 35 + "column": 30 } } }, @@ -4740,8 +8441,8 @@ "updateContext": null }, "value": "class", - "start": 37, - "end": 42, + "start": 32, + "end": 37, "loc": { "start": { "line": 3, @@ -4766,8 +8467,8 @@ "binop": null }, "value": "TokenRegex", - "start": 43, - "end": 53, + "start": 38, + "end": 48, "loc": { "start": { "line": 3, @@ -4791,8 +8492,8 @@ "postfix": false, "binop": null }, - "start": 54, - "end": 55, + "start": 49, + "end": 50, "loc": { "start": { "line": 3, @@ -4817,8 +8518,8 @@ "binop": null }, "value": "constructor", - "start": 58, - "end": 69, + "start": 53, + "end": 64, "loc": { "start": { "line": 4, @@ -4842,8 +8543,8 @@ "postfix": false, "binop": null }, - "start": 69, - "end": 70, + "start": 64, + "end": 65, "loc": { "start": { "line": 4, @@ -4868,8 +8569,8 @@ "binop": null }, "value": "name", - "start": 70, - "end": 74, + "start": 65, + "end": 69, "loc": { "start": { "line": 4, @@ -4894,8 +8595,8 @@ "binop": null, "updateContext": null }, - "start": 74, - "end": 75, + "start": 69, + "end": 70, "loc": { "start": { "line": 4, @@ -4920,8 +8621,8 @@ "binop": null }, "value": "regexLiteral", - "start": 76, - "end": 88, + "start": 71, + "end": 83, "loc": { "start": { "line": 4, @@ -4946,8 +8647,8 @@ "binop": null, "updateContext": null }, - "start": 88, - "end": 89, + "start": 83, + "end": 84, "loc": { "start": { "line": 4, @@ -4972,8 +8673,8 @@ "binop": null }, "value": "flags", - "start": 90, - "end": 95, + "start": 85, + "end": 90, "loc": { "start": { "line": 4, @@ -4997,8 +8698,8 @@ "postfix": false, "binop": null }, - "start": 95, - "end": 96, + "start": 90, + "end": 91, "loc": { "start": { "line": 4, @@ -5022,8 +8723,8 @@ "postfix": false, "binop": null }, - "start": 97, - "end": 98, + "start": 92, + "end": 93, "loc": { "start": { "line": 4, @@ -5050,8 +8751,8 @@ "updateContext": null }, "value": "this", - "start": 103, - "end": 107, + "start": 98, + "end": 102, "loc": { "start": { "line": 5, @@ -5076,8 +8777,8 @@ "binop": null, "updateContext": null }, - "start": 107, - "end": 108, + "start": 102, + "end": 103, "loc": { "start": { "line": 5, @@ -5102,8 +8803,8 @@ "binop": null }, "value": "name", - "start": 108, - "end": 112, + "start": 103, + "end": 107, "loc": { "start": { "line": 5, @@ -5129,8 +8830,8 @@ "updateContext": null }, "value": "=", - "start": 113, - "end": 114, + "start": 108, + "end": 109, "loc": { "start": { "line": 5, @@ -5155,8 +8856,8 @@ "binop": null }, "value": "name", - "start": 115, - "end": 119, + "start": 110, + "end": 114, "loc": { "start": { "line": 5, @@ -5181,8 +8882,8 @@ "binop": null, "updateContext": null }, - "start": 119, - "end": 120, + "start": 114, + "end": 115, "loc": { "start": { "line": 5, @@ -5209,8 +8910,8 @@ "updateContext": null }, "value": "this", - "start": 125, - "end": 129, + "start": 120, + "end": 124, "loc": { "start": { "line": 6, @@ -5235,8 +8936,8 @@ "binop": null, "updateContext": null }, - "start": 129, - "end": 130, + "start": 124, + "end": 125, "loc": { "start": { "line": 6, @@ -5261,8 +8962,8 @@ "binop": null }, "value": "expression", - "start": 130, - "end": 140, + "start": 125, + "end": 135, "loc": { "start": { "line": 6, @@ -5288,8 +8989,8 @@ "updateContext": null }, "value": "=", - "start": 141, - "end": 142, + "start": 136, + "end": 137, "loc": { "start": { "line": 6, @@ -5314,8 +9015,8 @@ "binop": null }, "value": "xRegExp", - "start": 143, - "end": 150, + "start": 138, + "end": 145, "loc": { "start": { "line": 6, @@ -5339,8 +9040,8 @@ "postfix": false, "binop": null }, - "start": 150, - "end": 151, + "start": 145, + "end": 146, "loc": { "start": { "line": 6, @@ -5365,8 +9066,8 @@ "binop": null }, "value": "regexLiteral", - "start": 151, - "end": 163, + "start": 146, + "end": 158, "loc": { "start": { "line": 6, @@ -5391,8 +9092,8 @@ "binop": null, "updateContext": null }, - "start": 163, - "end": 164, + "start": 158, + "end": 159, "loc": { "start": { "line": 6, @@ -5417,8 +9118,8 @@ "binop": null }, "value": "flags", - "start": 165, - "end": 170, + "start": 160, + "end": 165, "loc": { "start": { "line": 6, @@ -5442,8 +9143,8 @@ "postfix": false, "binop": null }, - "start": 170, - "end": 171, + "start": 165, + "end": 166, "loc": { "start": { "line": 6, @@ -5468,8 +9169,8 @@ "binop": null, "updateContext": null }, - "start": 171, - "end": 172, + "start": 166, + "end": 167, "loc": { "start": { "line": 6, @@ -5493,8 +9194,8 @@ "postfix": false, "binop": null }, - "start": 175, - "end": 176, + "start": 170, + "end": 171, "loc": { "start": { "line": 7, @@ -5519,8 +9220,8 @@ "binop": null }, "value": "get", - "start": 180, - "end": 183, + "start": 175, + "end": 178, "loc": { "start": { "line": 9, @@ -5545,8 +9246,8 @@ "binop": null }, "value": "lastIndex", - "start": 184, - "end": 193, + "start": 179, + "end": 188, "loc": { "start": { "line": 9, @@ -5570,8 +9271,8 @@ "postfix": false, "binop": null }, - "start": 193, - "end": 194, + "start": 188, + "end": 189, "loc": { "start": { "line": 9, @@ -5595,8 +9296,8 @@ "postfix": false, "binop": null }, - "start": 194, - "end": 195, + "start": 189, + "end": 190, "loc": { "start": { "line": 9, @@ -5620,8 +9321,8 @@ "postfix": false, "binop": null }, - "start": 196, - "end": 197, + "start": 191, + "end": 192, "loc": { "start": { "line": 9, @@ -5648,8 +9349,8 @@ "updateContext": null }, "value": "return", - "start": 202, - "end": 208, + "start": 197, + "end": 203, "loc": { "start": { "line": 10, @@ -5676,8 +9377,8 @@ "updateContext": null }, "value": "this", - "start": 209, - "end": 213, + "start": 204, + "end": 208, "loc": { "start": { "line": 10, @@ -5702,8 +9403,8 @@ "binop": null, "updateContext": null }, - "start": 213, - "end": 214, + "start": 208, + "end": 209, "loc": { "start": { "line": 10, @@ -5728,8 +9429,8 @@ "binop": null }, "value": "expression", - "start": 214, - "end": 224, + "start": 209, + "end": 219, "loc": { "start": { "line": 10, @@ -5754,8 +9455,8 @@ "binop": null, "updateContext": null }, - "start": 224, - "end": 225, + "start": 219, + "end": 220, "loc": { "start": { "line": 10, @@ -5780,8 +9481,8 @@ "binop": null }, "value": "lastIndex", - "start": 225, - "end": 234, + "start": 220, + "end": 229, "loc": { "start": { "line": 10, @@ -5806,8 +9507,8 @@ "binop": null, "updateContext": null }, - "start": 234, - "end": 235, + "start": 229, + "end": 230, "loc": { "start": { "line": 10, @@ -5831,8 +9532,8 @@ "postfix": false, "binop": null }, - "start": 238, - "end": 239, + "start": 233, + "end": 234, "loc": { "start": { "line": 11, @@ -5857,8 +9558,8 @@ "binop": null }, "value": "set", - "start": 243, - "end": 246, + "start": 238, + "end": 241, "loc": { "start": { "line": 13, @@ -5883,8 +9584,8 @@ "binop": null }, "value": "lastIndex", - "start": 247, - "end": 256, + "start": 242, + "end": 251, "loc": { "start": { "line": 13, @@ -5908,8 +9609,8 @@ "postfix": false, "binop": null }, - "start": 256, - "end": 257, + "start": 251, + "end": 252, "loc": { "start": { "line": 13, @@ -5934,8 +9635,8 @@ "binop": null }, "value": "index", - "start": 257, - "end": 262, + "start": 252, + "end": 257, "loc": { "start": { "line": 13, @@ -5959,8 +9660,8 @@ "postfix": false, "binop": null }, - "start": 262, - "end": 263, + "start": 257, + "end": 258, "loc": { "start": { "line": 13, @@ -5984,8 +9685,8 @@ "postfix": false, "binop": null }, - "start": 264, - "end": 265, + "start": 259, + "end": 260, "loc": { "start": { "line": 13, @@ -6012,8 +9713,8 @@ "updateContext": null }, "value": "this", - "start": 270, - "end": 274, + "start": 265, + "end": 269, "loc": { "start": { "line": 14, @@ -6038,8 +9739,8 @@ "binop": null, "updateContext": null }, - "start": 274, - "end": 275, + "start": 269, + "end": 270, "loc": { "start": { "line": 14, @@ -6064,8 +9765,8 @@ "binop": null }, "value": "expression", - "start": 275, - "end": 285, + "start": 270, + "end": 280, "loc": { "start": { "line": 14, @@ -6090,8 +9791,8 @@ "binop": null, "updateContext": null }, - "start": 285, - "end": 286, + "start": 280, + "end": 281, "loc": { "start": { "line": 14, @@ -6116,8 +9817,8 @@ "binop": null }, "value": "lastIndex", - "start": 286, - "end": 295, + "start": 281, + "end": 290, "loc": { "start": { "line": 14, @@ -6143,8 +9844,8 @@ "updateContext": null }, "value": "=", - "start": 296, - "end": 297, + "start": 291, + "end": 292, "loc": { "start": { "line": 14, @@ -6169,8 +9870,8 @@ "binop": null }, "value": "index", - "start": 298, - "end": 303, + "start": 293, + "end": 298, "loc": { "start": { "line": 14, @@ -6195,8 +9896,8 @@ "binop": null, "updateContext": null }, - "start": 303, - "end": 304, + "start": 298, + "end": 299, "loc": { "start": { "line": 14, @@ -6220,8 +9921,8 @@ "postfix": false, "binop": null }, - "start": 307, - "end": 308, + "start": 302, + "end": 303, "loc": { "start": { "line": 15, @@ -6246,8 +9947,8 @@ "binop": null }, "value": "reset", - "start": 312, - "end": 317, + "start": 307, + "end": 312, "loc": { "start": { "line": 17, @@ -6271,8 +9972,8 @@ "postfix": false, "binop": null }, - "start": 317, - "end": 318, + "start": 312, + "end": 313, "loc": { "start": { "line": 17, @@ -6296,8 +9997,8 @@ "postfix": false, "binop": null }, - "start": 318, - "end": 319, + "start": 313, + "end": 314, "loc": { "start": { "line": 17, @@ -6321,8 +10022,8 @@ "postfix": false, "binop": null }, - "start": 320, - "end": 321, + "start": 315, + "end": 316, "loc": { "start": { "line": 17, @@ -6349,8 +10050,8 @@ "updateContext": null }, "value": "this", - "start": 326, - "end": 330, + "start": 321, + "end": 325, "loc": { "start": { "line": 18, @@ -6375,8 +10076,8 @@ "binop": null, "updateContext": null }, - "start": 330, - "end": 331, + "start": 325, + "end": 326, "loc": { "start": { "line": 18, @@ -6401,8 +10102,8 @@ "binop": null }, "value": "lastIndex", - "start": 331, - "end": 340, + "start": 326, + "end": 335, "loc": { "start": { "line": 18, @@ -6428,8 +10129,8 @@ "updateContext": null }, "value": "=", - "start": 341, - "end": 342, + "start": 336, + "end": 337, "loc": { "start": { "line": 18, @@ -6455,8 +10156,8 @@ "updateContext": null }, "value": 0, - "start": 343, - "end": 344, + "start": 338, + "end": 339, "loc": { "start": { "line": 18, @@ -6481,8 +10182,8 @@ "binop": null, "updateContext": null }, - "start": 344, - "end": 345, + "start": 339, + "end": 340, "loc": { "start": { "line": 18, @@ -6509,8 +10210,8 @@ "updateContext": null }, "value": "return", - "start": 351, - "end": 357, + "start": 346, + "end": 352, "loc": { "start": { "line": 20, @@ -6537,8 +10238,8 @@ "updateContext": null }, "value": "this", - "start": 358, - "end": 362, + "start": 353, + "end": 357, "loc": { "start": { "line": 20, @@ -6563,8 +10264,8 @@ "binop": null, "updateContext": null }, - "start": 362, - "end": 363, + "start": 357, + "end": 358, "loc": { "start": { "line": 20, @@ -6588,8 +10289,8 @@ "postfix": false, "binop": null }, - "start": 366, - "end": 367, + "start": 361, + "end": 362, "loc": { "start": { "line": 21, @@ -6614,8 +10315,8 @@ "binop": null }, "value": "exec", - "start": 371, - "end": 375, + "start": 366, + "end": 370, "loc": { "start": { "line": 23, @@ -6639,8 +10340,8 @@ "postfix": false, "binop": null }, - "start": 375, - "end": 376, + "start": 370, + "end": 371, "loc": { "start": { "line": 23, @@ -6665,8 +10366,8 @@ "binop": null }, "value": "program", - "start": 376, - "end": 383, + "start": 371, + "end": 378, "loc": { "start": { "line": 23, @@ -6690,8 +10391,8 @@ "postfix": false, "binop": null }, - "start": 383, - "end": 384, + "start": 378, + "end": 379, "loc": { "start": { "line": 23, @@ -6715,8 +10416,8 @@ "postfix": false, "binop": null }, - "start": 385, - "end": 386, + "start": 380, + "end": 381, "loc": { "start": { "line": 23, @@ -6743,8 +10444,8 @@ "updateContext": null }, "value": "let", - "start": 391, - "end": 394, + "start": 386, + "end": 389, "loc": { "start": { "line": 24, @@ -6769,8 +10470,8 @@ "binop": null }, "value": "match", - "start": 395, - "end": 400, + "start": 390, + "end": 395, "loc": { "start": { "line": 24, @@ -6796,8 +10497,8 @@ "updateContext": null }, "value": "=", - "start": 401, - "end": 402, + "start": 396, + "end": 397, "loc": { "start": { "line": 24, @@ -6824,8 +10525,8 @@ "updateContext": null }, "value": "this", - "start": 403, - "end": 407, + "start": 398, + "end": 402, "loc": { "start": { "line": 24, @@ -6850,8 +10551,8 @@ "binop": null, "updateContext": null }, - "start": 407, - "end": 408, + "start": 402, + "end": 403, "loc": { "start": { "line": 24, @@ -6876,8 +10577,8 @@ "binop": null }, "value": "expression", - "start": 408, - "end": 418, + "start": 403, + "end": 413, "loc": { "start": { "line": 24, @@ -6902,8 +10603,8 @@ "binop": null, "updateContext": null }, - "start": 418, - "end": 419, + "start": 413, + "end": 414, "loc": { "start": { "line": 24, @@ -6928,8 +10629,8 @@ "binop": null }, "value": "exec", - "start": 419, - "end": 423, + "start": 414, + "end": 418, "loc": { "start": { "line": 24, @@ -6953,8 +10654,8 @@ "postfix": false, "binop": null }, - "start": 423, - "end": 424, + "start": 418, + "end": 419, "loc": { "start": { "line": 24, @@ -6979,8 +10680,8 @@ "binop": null }, "value": "program", - "start": 424, - "end": 431, + "start": 419, + "end": 426, "loc": { "start": { "line": 24, @@ -7004,8 +10705,8 @@ "postfix": false, "binop": null }, - "start": 431, - "end": 432, + "start": 426, + "end": 427, "loc": { "start": { "line": 24, @@ -7030,8 +10731,8 @@ "binop": null, "updateContext": null }, - "start": 432, - "end": 433, + "start": 427, + "end": 428, "loc": { "start": { "line": 24, @@ -7058,8 +10759,8 @@ "updateContext": null }, "value": "if", - "start": 439, - "end": 441, + "start": 434, + "end": 436, "loc": { "start": { "line": 26, @@ -7083,8 +10784,8 @@ "postfix": false, "binop": null }, - "start": 442, - "end": 443, + "start": 437, + "end": 438, "loc": { "start": { "line": 26, @@ -7109,8 +10810,8 @@ "binop": null }, "value": "match", - "start": 443, - "end": 448, + "start": 438, + "end": 443, "loc": { "start": { "line": 26, @@ -7136,8 +10837,8 @@ "updateContext": null }, "value": "!==", - "start": 449, - "end": 452, + "start": 444, + "end": 447, "loc": { "start": { "line": 26, @@ -7164,8 +10865,8 @@ "updateContext": null }, "value": "null", - "start": 453, - "end": 457, + "start": 448, + "end": 452, "loc": { "start": { "line": 26, @@ -7189,8 +10890,8 @@ "postfix": false, "binop": null }, - "start": 457, - "end": 458, + "start": 452, + "end": 453, "loc": { "start": { "line": 26, @@ -7214,8 +10915,8 @@ "postfix": false, "binop": null }, - "start": 459, - "end": 460, + "start": 454, + "end": 455, "loc": { "start": { "line": 26, @@ -7242,8 +10943,8 @@ "updateContext": null }, "value": "return", - "start": 467, - "end": 473, + "start": 462, + "end": 468, "loc": { "start": { "line": 27, @@ -7267,8 +10968,8 @@ "postfix": false, "binop": null }, - "start": 474, - "end": 475, + "start": 469, + "end": 470, "loc": { "start": { "line": 27, @@ -7293,8 +10994,8 @@ "binop": null }, "value": "type", - "start": 484, - "end": 488, + "start": 479, + "end": 483, "loc": { "start": { "line": 28, @@ -7319,8 +11020,8 @@ "binop": null, "updateContext": null }, - "start": 488, - "end": 489, + "start": 483, + "end": 484, "loc": { "start": { "line": 28, @@ -7347,8 +11048,8 @@ "updateContext": null }, "value": "this", - "start": 490, - "end": 494, + "start": 485, + "end": 489, "loc": { "start": { "line": 28, @@ -7373,8 +11074,8 @@ "binop": null, "updateContext": null }, - "start": 494, - "end": 495, + "start": 489, + "end": 490, "loc": { "start": { "line": 28, @@ -7399,8 +11100,8 @@ "binop": null }, "value": "name", - "start": 495, - "end": 499, + "start": 490, + "end": 494, "loc": { "start": { "line": 28, @@ -7425,8 +11126,8 @@ "binop": null, "updateContext": null }, - "start": 499, - "end": 500, + "start": 494, + "end": 495, "loc": { "start": { "line": 28, @@ -7451,8 +11152,8 @@ "binop": null }, "value": "value", - "start": 509, - "end": 514, + "start": 504, + "end": 509, "loc": { "start": { "line": 29, @@ -7477,8 +11178,8 @@ "binop": null, "updateContext": null }, - "start": 514, - "end": 515, + "start": 509, + "end": 510, "loc": { "start": { "line": 29, @@ -7503,8 +11204,8 @@ "binop": null }, "value": "match", - "start": 516, - "end": 521, + "start": 511, + "end": 516, "loc": { "start": { "line": 29, @@ -7529,8 +11230,8 @@ "binop": null, "updateContext": null }, - "start": 521, - "end": 522, + "start": 516, + "end": 517, "loc": { "start": { "line": 29, @@ -7556,8 +11257,8 @@ "updateContext": null }, "value": 1, - "start": 522, - "end": 523, + "start": 517, + "end": 518, "loc": { "start": { "line": 29, @@ -7582,8 +11283,8 @@ "binop": null, "updateContext": null }, - "start": 523, - "end": 524, + "start": 518, + "end": 519, "loc": { "start": { "line": 29, @@ -7608,8 +11309,8 @@ "binop": null, "updateContext": null }, - "start": 524, - "end": 525, + "start": 519, + "end": 520, "loc": { "start": { "line": 29, @@ -7634,8 +11335,8 @@ "binop": null }, "value": "start", - "start": 534, - "end": 539, + "start": 529, + "end": 534, "loc": { "start": { "line": 30, @@ -7660,8 +11361,8 @@ "binop": null, "updateContext": null }, - "start": 539, - "end": 540, + "start": 534, + "end": 535, "loc": { "start": { "line": 30, @@ -7688,8 +11389,8 @@ "updateContext": null }, "value": "this", - "start": 541, - "end": 545, + "start": 536, + "end": 540, "loc": { "start": { "line": 30, @@ -7714,8 +11415,8 @@ "binop": null, "updateContext": null }, - "start": 545, - "end": 546, + "start": 540, + "end": 541, "loc": { "start": { "line": 30, @@ -7740,8 +11441,8 @@ "binop": null }, "value": "lastIndex", - "start": 546, - "end": 555, + "start": 541, + "end": 550, "loc": { "start": { "line": 30, @@ -7767,8 +11468,8 @@ "updateContext": null }, "value": "-", - "start": 556, - "end": 557, + "start": 551, + "end": 552, "loc": { "start": { "line": 30, @@ -7793,8 +11494,8 @@ "binop": null }, "value": "match", - "start": 558, - "end": 563, + "start": 553, + "end": 558, "loc": { "start": { "line": 30, @@ -7819,8 +11520,8 @@ "binop": null, "updateContext": null }, - "start": 563, - "end": 564, + "start": 558, + "end": 559, "loc": { "start": { "line": 30, @@ -7846,8 +11547,8 @@ "updateContext": null }, "value": 1, - "start": 564, - "end": 565, + "start": 559, + "end": 560, "loc": { "start": { "line": 30, @@ -7872,8 +11573,8 @@ "binop": null, "updateContext": null }, - "start": 565, - "end": 566, + "start": 560, + "end": 561, "loc": { "start": { "line": 30, @@ -7898,8 +11599,8 @@ "binop": null, "updateContext": null }, - "start": 566, - "end": 567, + "start": 561, + "end": 562, "loc": { "start": { "line": 30, @@ -7924,8 +11625,8 @@ "binop": null }, "value": "length", - "start": 567, - "end": 573, + "start": 562, + "end": 568, "loc": { "start": { "line": 30, @@ -7951,8 +11652,8 @@ "updateContext": null }, "value": "+", - "start": 574, - "end": 575, + "start": 569, + "end": 570, "loc": { "start": { "line": 30, @@ -7978,8 +11679,8 @@ "updateContext": null }, "value": 1, - "start": 576, - "end": 577, + "start": 571, + "end": 572, "loc": { "start": { "line": 30, @@ -8004,8 +11705,8 @@ "binop": null, "updateContext": null }, - "start": 577, - "end": 578, + "start": 572, + "end": 573, "loc": { "start": { "line": 30, @@ -8030,8 +11731,8 @@ "binop": null }, "value": "end", - "start": 587, - "end": 590, + "start": 582, + "end": 585, "loc": { "start": { "line": 31, @@ -8056,8 +11757,8 @@ "binop": null, "updateContext": null }, - "start": 590, - "end": 591, + "start": 585, + "end": 586, "loc": { "start": { "line": 31, @@ -8084,8 +11785,8 @@ "updateContext": null }, "value": "this", - "start": 592, - "end": 596, + "start": 587, + "end": 591, "loc": { "start": { "line": 31, @@ -8110,8 +11811,8 @@ "binop": null, "updateContext": null }, - "start": 596, - "end": 597, + "start": 591, + "end": 592, "loc": { "start": { "line": 31, @@ -8136,8 +11837,8 @@ "binop": null }, "value": "lastIndex", - "start": 597, - "end": 606, + "start": 592, + "end": 601, "loc": { "start": { "line": 31, @@ -8161,8 +11862,8 @@ "postfix": false, "binop": null }, - "start": 613, - "end": 614, + "start": 608, + "end": 609, "loc": { "start": { "line": 32, @@ -8187,8 +11888,8 @@ "binop": null, "updateContext": null }, - "start": 614, - "end": 615, + "start": 609, + "end": 610, "loc": { "start": { "line": 32, @@ -8212,8 +11913,8 @@ "postfix": false, "binop": null }, - "start": 620, - "end": 621, + "start": 615, + "end": 616, "loc": { "start": { "line": 33, @@ -8240,8 +11941,8 @@ "updateContext": null }, "value": "return", - "start": 627, - "end": 633, + "start": 622, + "end": 628, "loc": { "start": { "line": 35, @@ -8268,8 +11969,8 @@ "updateContext": null }, "value": "null", - "start": 634, - "end": 638, + "start": 629, + "end": 633, "loc": { "start": { "line": 35, @@ -8294,8 +11995,8 @@ "binop": null, "updateContext": null }, - "start": 638, - "end": 639, + "start": 633, + "end": 634, "loc": { "start": { "line": 35, @@ -8319,8 +12020,8 @@ "postfix": false, "binop": null }, - "start": 642, - "end": 643, + "start": 637, + "end": 638, "loc": { "start": { "line": 36, @@ -8345,8 +12046,8 @@ "binop": null }, "value": "test", - "start": 647, - "end": 651, + "start": 642, + "end": 646, "loc": { "start": { "line": 38, @@ -8370,8 +12071,8 @@ "postfix": false, "binop": null }, - "start": 651, - "end": 652, + "start": 646, + "end": 647, "loc": { "start": { "line": 38, @@ -8396,8 +12097,8 @@ "binop": null }, "value": "program", - "start": 652, - "end": 659, + "start": 647, + "end": 654, "loc": { "start": { "line": 38, @@ -8421,8 +12122,8 @@ "postfix": false, "binop": null }, - "start": 659, - "end": 660, + "start": 654, + "end": 655, "loc": { "start": { "line": 38, @@ -8446,8 +12147,8 @@ "postfix": false, "binop": null }, - "start": 661, - "end": 662, + "start": 656, + "end": 657, "loc": { "start": { "line": 38, @@ -8474,8 +12175,8 @@ "updateContext": null }, "value": "let", - "start": 667, - "end": 670, + "start": 662, + "end": 665, "loc": { "start": { "line": 39, @@ -8500,8 +12201,8 @@ "binop": null }, "value": "savedIndex", - "start": 671, - "end": 681, + "start": 666, + "end": 676, "loc": { "start": { "line": 39, @@ -8527,8 +12228,8 @@ "updateContext": null }, "value": "=", - "start": 682, - "end": 683, + "start": 677, + "end": 678, "loc": { "start": { "line": 39, @@ -8555,8 +12256,8 @@ "updateContext": null }, "value": "this", - "start": 684, - "end": 688, + "start": 679, + "end": 683, "loc": { "start": { "line": 39, @@ -8581,8 +12282,8 @@ "binop": null, "updateContext": null }, - "start": 688, - "end": 689, + "start": 683, + "end": 684, "loc": { "start": { "line": 39, @@ -8607,8 +12308,8 @@ "binop": null }, "value": "lastIndex", - "start": 689, - "end": 698, + "start": 684, + "end": 693, "loc": { "start": { "line": 39, @@ -8633,8 +12334,8 @@ "binop": null, "updateContext": null }, - "start": 698, - "end": 699, + "start": 693, + "end": 694, "loc": { "start": { "line": 39, @@ -8661,8 +12362,8 @@ "updateContext": null }, "value": "const", - "start": 704, - "end": 709, + "start": 699, + "end": 704, "loc": { "start": { "line": 40, @@ -8687,8 +12388,8 @@ "binop": null }, "value": "result", - "start": 710, - "end": 716, + "start": 705, + "end": 711, "loc": { "start": { "line": 40, @@ -8714,8 +12415,8 @@ "updateContext": null }, "value": "=", - "start": 717, - "end": 718, + "start": 712, + "end": 713, "loc": { "start": { "line": 40, @@ -8742,8 +12443,8 @@ "updateContext": null }, "value": "this", - "start": 719, - "end": 723, + "start": 714, + "end": 718, "loc": { "start": { "line": 40, @@ -8768,8 +12469,8 @@ "binop": null, "updateContext": null }, - "start": 723, - "end": 724, + "start": 718, + "end": 719, "loc": { "start": { "line": 40, @@ -8794,8 +12495,8 @@ "binop": null }, "value": "exec", - "start": 724, - "end": 728, + "start": 719, + "end": 723, "loc": { "start": { "line": 40, @@ -8819,8 +12520,8 @@ "postfix": false, "binop": null }, - "start": 728, - "end": 729, + "start": 723, + "end": 724, "loc": { "start": { "line": 40, @@ -8845,8 +12546,8 @@ "binop": null }, "value": "program", - "start": 729, - "end": 736, + "start": 724, + "end": 731, "loc": { "start": { "line": 40, @@ -8870,8 +12571,8 @@ "postfix": false, "binop": null }, - "start": 736, - "end": 737, + "start": 731, + "end": 732, "loc": { "start": { "line": 40, @@ -8896,8 +12597,8 @@ "binop": null, "updateContext": null }, - "start": 737, - "end": 738, + "start": 732, + "end": 733, "loc": { "start": { "line": 40, @@ -8924,8 +12625,8 @@ "updateContext": null }, "value": "this", - "start": 743, - "end": 747, + "start": 738, + "end": 742, "loc": { "start": { "line": 41, @@ -8950,8 +12651,8 @@ "binop": null, "updateContext": null }, - "start": 747, - "end": 748, + "start": 742, + "end": 743, "loc": { "start": { "line": 41, @@ -8976,8 +12677,8 @@ "binop": null }, "value": "lastIndex", - "start": 748, - "end": 757, + "start": 743, + "end": 752, "loc": { "start": { "line": 41, @@ -9003,8 +12704,8 @@ "updateContext": null }, "value": "=", - "start": 758, - "end": 759, + "start": 753, + "end": 754, "loc": { "start": { "line": 41, @@ -9029,8 +12730,8 @@ "binop": null }, "value": "savedIndex", - "start": 760, - "end": 770, + "start": 755, + "end": 765, "loc": { "start": { "line": 41, @@ -9055,8 +12756,8 @@ "binop": null, "updateContext": null }, - "start": 770, - "end": 771, + "start": 765, + "end": 766, "loc": { "start": { "line": 41, @@ -9083,8 +12784,8 @@ "updateContext": null }, "value": "return", - "start": 777, - "end": 783, + "start": 772, + "end": 778, "loc": { "start": { "line": 43, @@ -9109,8 +12810,8 @@ "binop": null }, "value": "result", - "start": 784, - "end": 790, + "start": 779, + "end": 785, "loc": { "start": { "line": 43, @@ -9136,8 +12837,8 @@ "updateContext": null }, "value": "!==", - "start": 791, - "end": 794, + "start": 786, + "end": 789, "loc": { "start": { "line": 43, @@ -9164,8 +12865,8 @@ "updateContext": null }, "value": "null", - "start": 795, - "end": 799, + "start": 790, + "end": 794, "loc": { "start": { "line": 43, @@ -9190,8 +12891,8 @@ "binop": null, "updateContext": null }, - "start": 799, - "end": 800, + "start": 794, + "end": 795, "loc": { "start": { "line": 43, @@ -9215,8 +12916,8 @@ "postfix": false, "binop": null }, - "start": 803, - "end": 804, + "start": 798, + "end": 799, "loc": { "start": { "line": 44, @@ -9240,8 +12941,8 @@ "postfix": false, "binop": null }, - "start": 805, - "end": 806, + "start": 800, + "end": 801, "loc": { "start": { "line": 45, @@ -9268,8 +12969,8 @@ "updateContext": null }, "value": "const", - "start": 808, - "end": 813, + "start": 803, + "end": 808, "loc": { "start": { "line": 47, @@ -9294,8 +12995,8 @@ "binop": null }, "value": "WHITES", - "start": 814, - "end": 820, + "start": 809, + "end": 815, "loc": { "start": { "line": 47, @@ -9321,8 +13022,8 @@ "updateContext": null }, "value": "=", - "start": 821, - "end": 822, + "start": 816, + "end": 817, "loc": { "start": { "line": 47, @@ -9349,8 +13050,8 @@ "updateContext": null }, "value": "new", - "start": 823, - "end": 826, + "start": 818, + "end": 821, "loc": { "start": { "line": 47, @@ -9375,8 +13076,8 @@ "binop": null }, "value": "TokenRegex", - "start": 827, - "end": 837, + "start": 822, + "end": 832, "loc": { "start": { "line": 47, @@ -9400,8 +13101,8 @@ "postfix": false, "binop": null }, - "start": 837, - "end": 838, + "start": 832, + "end": 833, "loc": { "start": { "line": 47, @@ -9427,8 +13128,8 @@ "updateContext": null }, "value": "WHITE", - "start": 841, - "end": 848, + "start": 836, + "end": 843, "loc": { "start": { "line": 48, @@ -9453,8 +13154,8 @@ "binop": null, "updateContext": null }, - "start": 848, - "end": 849, + "start": 843, + "end": 844, "loc": { "start": { "line": 48, @@ -9478,8 +13179,8 @@ "postfix": false, "binop": null }, - "start": 852, - "end": 853, + "start": 847, + "end": 848, "loc": { "start": { "line": 49, @@ -9505,8 +13206,8 @@ "updateContext": null }, "value": "(\\s+| # Spaces\n [#;].*| # Single-line comments\n \\/\\*[^]*?\\*\\/ # Multiline comments\n )", - "start": 853, - "end": 1046, + "start": 848, + "end": 1041, "loc": { "start": { "line": 49, @@ -9530,8 +13231,8 @@ "postfix": false, "binop": null }, - "start": 1046, - "end": 1047, + "start": 1041, + "end": 1042, "loc": { "start": { "line": 52, @@ -9556,8 +13257,8 @@ "binop": null, "updateContext": null }, - "start": 1047, - "end": 1048, + "start": 1042, + "end": 1043, "loc": { "start": { "line": 52, @@ -9580,9 +13281,9 @@ "prefix": false, "postfix": false, "binop": null - }, - "start": 1051, - "end": 1052, + }, + "start": 1046, + "end": 1047, "loc": { "start": { "line": 53, @@ -9608,8 +13309,8 @@ "updateContext": null }, "value": "yx", - "start": 1052, - "end": 1054, + "start": 1047, + "end": 1049, "loc": { "start": { "line": 53, @@ -9633,8 +13334,8 @@ "postfix": false, "binop": null }, - "start": 1054, - "end": 1055, + "start": 1049, + "end": 1050, "loc": { "start": { "line": 53, @@ -9658,8 +13359,8 @@ "postfix": false, "binop": null }, - "start": 1056, - "end": 1057, + "start": 1051, + "end": 1052, "loc": { "start": { "line": 54, @@ -9684,8 +13385,8 @@ "binop": null, "updateContext": null }, - "start": 1057, - "end": 1058, + "start": 1052, + "end": 1053, "loc": { "start": { "line": 54, @@ -9712,8 +13413,8 @@ "updateContext": null }, "value": "const", - "start": 1060, - "end": 1065, + "start": 1055, + "end": 1060, "loc": { "start": { "line": 56, @@ -9738,8 +13439,8 @@ "binop": null }, "value": "NEWLINE", - "start": 1066, - "end": 1073, + "start": 1061, + "end": 1068, "loc": { "start": { "line": 56, @@ -9765,8 +13466,8 @@ "updateContext": null }, "value": "=", - "start": 1074, - "end": 1075, + "start": 1069, + "end": 1070, "loc": { "start": { "line": 56, @@ -9793,8 +13494,8 @@ "updateContext": null }, "value": "new", - "start": 1076, - "end": 1079, + "start": 1071, + "end": 1074, "loc": { "start": { "line": 56, @@ -9819,8 +13520,8 @@ "binop": null }, "value": "TokenRegex", - "start": 1080, - "end": 1090, + "start": 1075, + "end": 1085, "loc": { "start": { "line": 56, @@ -9844,8 +13545,8 @@ "postfix": false, "binop": null }, - "start": 1090, - "end": 1091, + "start": 1085, + "end": 1086, "loc": { "start": { "line": 56, @@ -9871,8 +13572,8 @@ "updateContext": null }, "value": "NEWLINE", - "start": 1094, - "end": 1103, + "start": 1089, + "end": 1098, "loc": { "start": { "line": 57, @@ -9897,8 +13598,8 @@ "binop": null, "updateContext": null }, - "start": 1103, - "end": 1104, + "start": 1098, + "end": 1099, "loc": { "start": { "line": 57, @@ -9922,8 +13623,8 @@ "postfix": false, "binop": null }, - "start": 1107, - "end": 1108, + "start": 1102, + "end": 1103, "loc": { "start": { "line": 58, @@ -9949,8 +13650,8 @@ "updateContext": null }, "value": "(\\r? # Carriage return (for compatibility)\n \\n # Newline char\n )", - "start": 1108, - "end": 1252, + "start": 1103, + "end": 1247, "loc": { "start": { "line": 58, @@ -9974,8 +13675,8 @@ "postfix": false, "binop": null }, - "start": 1252, - "end": 1253, + "start": 1247, + "end": 1248, "loc": { "start": { "line": 60, @@ -9999,8 +13700,8 @@ "postfix": false, "binop": null }, - "start": 1254, - "end": 1255, + "start": 1249, + "end": 1250, "loc": { "start": { "line": 61, @@ -10025,8 +13726,8 @@ "binop": null, "updateContext": null }, - "start": 1255, - "end": 1256, + "start": 1250, + "end": 1251, "loc": { "start": { "line": 61, @@ -10053,8 +13754,8 @@ "updateContext": null }, "value": "const", - "start": 1258, - "end": 1263, + "start": 1253, + "end": 1258, "loc": { "start": { "line": 63, @@ -10079,8 +13780,8 @@ "binop": null }, "value": "NUMBER", - "start": 1264, - "end": 1270, + "start": 1259, + "end": 1265, "loc": { "start": { "line": 63, @@ -10106,8 +13807,8 @@ "updateContext": null }, "value": "=", - "start": 1271, - "end": 1272, + "start": 1266, + "end": 1267, "loc": { "start": { "line": 63, @@ -10134,8 +13835,8 @@ "updateContext": null }, "value": "new", - "start": 1273, - "end": 1276, + "start": 1268, + "end": 1271, "loc": { "start": { "line": 63, @@ -10160,8 +13861,8 @@ "binop": null }, "value": "TokenRegex", - "start": 1277, - "end": 1287, + "start": 1272, + "end": 1282, "loc": { "start": { "line": 63, @@ -10185,8 +13886,8 @@ "postfix": false, "binop": null }, - "start": 1287, - "end": 1288, + "start": 1282, + "end": 1283, "loc": { "start": { "line": 63, @@ -10212,8 +13913,8 @@ "updateContext": null }, "value": "NUMBER", - "start": 1291, - "end": 1299, + "start": 1286, + "end": 1294, "loc": { "start": { "line": 64, @@ -10238,8 +13939,8 @@ "binop": null, "updateContext": null }, - "start": 1299, - "end": 1300, + "start": 1294, + "end": 1295, "loc": { "start": { "line": 64, @@ -10263,8 +13964,8 @@ "postfix": false, "binop": null }, - "start": 1303, - "end": 1304, + "start": 1298, + "end": 1299, "loc": { "start": { "line": 65, @@ -10290,8 +13991,8 @@ "updateContext": null }, "value": "([-+]? # Sign\n \\d* # Digits\n \\.?\\d+ # Decimals\n (?:[eE][-+]?\\d+)? # Exp notatio\n )", - "start": 1304, - "end": 1533, + "start": 1299, + "end": 1528, "loc": { "start": { "line": 65, @@ -10315,8 +14016,8 @@ "postfix": false, "binop": null }, - "start": 1533, - "end": 1534, + "start": 1528, + "end": 1529, "loc": { "start": { "line": 69, @@ -10341,8 +14042,8 @@ "binop": null, "updateContext": null }, - "start": 1534, - "end": 1535, + "start": 1529, + "end": 1530, "loc": { "start": { "line": 69, @@ -10368,8 +14069,8 @@ "updateContext": null }, "value": "yx", - "start": 1538, - "end": 1542, + "start": 1533, + "end": 1537, "loc": { "start": { "line": 70, @@ -10393,8 +14094,8 @@ "postfix": false, "binop": null }, - "start": 1543, - "end": 1544, + "start": 1538, + "end": 1539, "loc": { "start": { "line": 71, @@ -10419,8 +14120,8 @@ "binop": null, "updateContext": null }, - "start": 1544, - "end": 1545, + "start": 1539, + "end": 1540, "loc": { "start": { "line": 71, @@ -10447,8 +14148,8 @@ "updateContext": null }, "value": "const", - "start": 1547, - "end": 1552, + "start": 1542, + "end": 1547, "loc": { "start": { "line": 73, @@ -10473,8 +14174,8 @@ "binop": null }, "value": "STRING", - "start": 1553, - "end": 1559, + "start": 1548, + "end": 1554, "loc": { "start": { "line": 73, @@ -10500,8 +14201,8 @@ "updateContext": null }, "value": "=", - "start": 1560, - "end": 1561, + "start": 1555, + "end": 1556, "loc": { "start": { "line": 73, @@ -10528,8 +14229,8 @@ "updateContext": null }, "value": "new", - "start": 1562, - "end": 1565, + "start": 1557, + "end": 1560, "loc": { "start": { "line": 73, @@ -10554,8 +14255,8 @@ "binop": null }, "value": "TokenRegex", - "start": 1566, - "end": 1576, + "start": 1561, + "end": 1571, "loc": { "start": { "line": 73, @@ -10579,8 +14280,8 @@ "postfix": false, "binop": null }, - "start": 1576, - "end": 1577, + "start": 1571, + "end": 1572, "loc": { "start": { "line": 73, @@ -10606,8 +14307,8 @@ "updateContext": null }, "value": "STRING", - "start": 1580, - "end": 1588, + "start": 1575, + "end": 1583, "loc": { "start": { "line": 74, @@ -10632,8 +14333,8 @@ "binop": null, "updateContext": null }, - "start": 1588, - "end": 1589, + "start": 1583, + "end": 1584, "loc": { "start": { "line": 74, @@ -10657,8 +14358,8 @@ "postfix": false, "binop": null }, - "start": 1592, - "end": 1593, + "start": 1587, + "end": 1588, "loc": { "start": { "line": 75, @@ -10684,8 +14385,8 @@ "updateContext": null }, "value": "\"([^\"\\\\]* # Any character except 'escaped \"'\n )\"", - "start": 1593, - "end": 1675, + "start": 1588, + "end": 1670, "loc": { "start": { "line": 75, @@ -10709,8 +14410,8 @@ "postfix": false, "binop": null }, - "start": 1675, - "end": 1676, + "start": 1670, + "end": 1671, "loc": { "start": { "line": 76, @@ -10735,8 +14436,8 @@ "binop": null, "updateContext": null }, - "start": 1676, - "end": 1677, + "start": 1671, + "end": 1672, "loc": { "start": { "line": 76, @@ -10762,8 +14463,8 @@ "updateContext": null }, "value": "yx", - "start": 1680, - "end": 1684, + "start": 1675, + "end": 1679, "loc": { "start": { "line": 77, @@ -10787,8 +14488,8 @@ "postfix": false, "binop": null }, - "start": 1685, - "end": 1686, + "start": 1680, + "end": 1681, "loc": { "start": { "line": 78, @@ -10813,8 +14514,8 @@ "binop": null, "updateContext": null }, - "start": 1686, - "end": 1687, + "start": 1681, + "end": 1682, "loc": { "start": { "line": 78, @@ -10841,8 +14542,8 @@ "updateContext": null }, "value": "const", - "start": 1689, - "end": 1694, + "start": 1684, + "end": 1689, "loc": { "start": { "line": 80, @@ -10867,8 +14568,8 @@ "binop": null }, "value": "WORD", - "start": 1695, - "end": 1699, + "start": 1690, + "end": 1694, "loc": { "start": { "line": 80, @@ -10894,8 +14595,8 @@ "updateContext": null }, "value": "=", - "start": 1700, - "end": 1701, + "start": 1695, + "end": 1696, "loc": { "start": { "line": 80, @@ -10922,8 +14623,8 @@ "updateContext": null }, "value": "new", - "start": 1702, - "end": 1705, + "start": 1697, + "end": 1700, "loc": { "start": { "line": 80, @@ -10948,8 +14649,8 @@ "binop": null }, "value": "TokenRegex", - "start": 1706, - "end": 1716, + "start": 1701, + "end": 1711, "loc": { "start": { "line": 80, @@ -10973,8 +14674,8 @@ "postfix": false, "binop": null }, - "start": 1716, - "end": 1717, + "start": 1711, + "end": 1712, "loc": { "start": { "line": 80, @@ -11000,8 +14701,8 @@ "updateContext": null }, "value": "WORD", - "start": 1720, - "end": 1726, + "start": 1715, + "end": 1721, "loc": { "start": { "line": 81, @@ -11026,8 +14727,8 @@ "binop": null, "updateContext": null }, - "start": 1726, - "end": 1727, + "start": 1721, + "end": 1722, "loc": { "start": { "line": 81, @@ -11051,8 +14752,8 @@ "postfix": false, "binop": null }, - "start": 1730, - "end": 1731, + "start": 1725, + "end": 1726, "loc": { "start": { "line": 82, @@ -11078,8 +14779,8 @@ "updateContext": null }, "value": "(\\[\\]| # [] is a reserved word for arrays\n :=| # := is a reserved word for 'define'\n [^\\s\\(\\)\\{\\}\\[\\]\\.,:\"]+ # Avoid some chars\n )", - "start": 1731, - "end": 1972, + "start": 1726, + "end": 1967, "loc": { "start": { "line": 82, @@ -11103,8 +14804,8 @@ "postfix": false, "binop": null }, - "start": 1972, - "end": 1973, + "start": 1967, + "end": 1968, "loc": { "start": { "line": 85, @@ -11129,8 +14830,8 @@ "binop": null, "updateContext": null }, - "start": 1973, - "end": 1974, + "start": 1968, + "end": 1969, "loc": { "start": { "line": 85, @@ -11156,8 +14857,8 @@ "updateContext": null }, "value": "yx", - "start": 1977, - "end": 1981, + "start": 1972, + "end": 1976, "loc": { "start": { "line": 86, @@ -11181,8 +14882,8 @@ "postfix": false, "binop": null }, - "start": 1982, - "end": 1983, + "start": 1977, + "end": 1978, "loc": { "start": { "line": 87, @@ -11207,8 +14908,8 @@ "binop": null, "updateContext": null }, - "start": 1983, - "end": 1984, + "start": 1978, + "end": 1979, "loc": { "start": { "line": 87, @@ -11235,8 +14936,8 @@ "updateContext": null }, "value": "const", - "start": 1986, - "end": 1991, + "start": 1981, + "end": 1986, "loc": { "start": { "line": 89, @@ -11261,8 +14962,8 @@ "binop": null }, "value": "LP", - "start": 1992, - "end": 1994, + "start": 1987, + "end": 1989, "loc": { "start": { "line": 89, @@ -11288,8 +14989,8 @@ "updateContext": null }, "value": "=", - "start": 1995, - "end": 1996, + "start": 1990, + "end": 1991, "loc": { "start": { "line": 89, @@ -11316,8 +15017,8 @@ "updateContext": null }, "value": "new", - "start": 1997, - "end": 2000, + "start": 1992, + "end": 1995, "loc": { "start": { "line": 89, @@ -11342,8 +15043,8 @@ "binop": null }, "value": "TokenRegex", - "start": 2001, - "end": 2011, + "start": 1996, + "end": 2006, "loc": { "start": { "line": 89, @@ -11367,8 +15068,8 @@ "postfix": false, "binop": null }, - "start": 2011, - "end": 2012, + "start": 2006, + "end": 2007, "loc": { "start": { "line": 89, @@ -11394,8 +15095,8 @@ "updateContext": null }, "value": "LP", - "start": 2015, - "end": 2019, + "start": 2010, + "end": 2014, "loc": { "start": { "line": 90, @@ -11420,8 +15121,8 @@ "binop": null, "updateContext": null }, - "start": 2019, - "end": 2020, + "start": 2014, + "end": 2015, "loc": { "start": { "line": 90, @@ -11445,8 +15146,8 @@ "postfix": false, "binop": null }, - "start": 2023, - "end": 2024, + "start": 2018, + "end": 2019, "loc": { "start": { "line": 91, @@ -11472,8 +15173,8 @@ "updateContext": null }, "value": "([\\(\\{\\[\\.] # ({[ are synonyms\n )", - "start": 2024, - "end": 2088, + "start": 2019, + "end": 2083, "loc": { "start": { "line": 91, @@ -11497,8 +15198,8 @@ "postfix": false, "binop": null }, - "start": 2088, - "end": 2089, + "start": 2083, + "end": 2084, "loc": { "start": { "line": 92, @@ -11523,8 +15224,8 @@ "binop": null, "updateContext": null }, - "start": 2089, - "end": 2090, + "start": 2084, + "end": 2085, "loc": { "start": { "line": 92, @@ -11550,8 +15251,8 @@ "updateContext": null }, "value": "yx", - "start": 2093, - "end": 2097, + "start": 2088, + "end": 2092, "loc": { "start": { "line": 93, @@ -11575,8 +15276,8 @@ "postfix": false, "binop": null }, - "start": 2098, - "end": 2099, + "start": 2093, + "end": 2094, "loc": { "start": { "line": 94, @@ -11601,8 +15302,8 @@ "binop": null, "updateContext": null }, - "start": 2099, - "end": 2100, + "start": 2094, + "end": 2095, "loc": { "start": { "line": 94, @@ -11629,8 +15330,8 @@ "updateContext": null }, "value": "const", - "start": 2102, - "end": 2107, + "start": 2097, + "end": 2102, "loc": { "start": { "line": 96, @@ -11655,8 +15356,8 @@ "binop": null }, "value": "RP", - "start": 2108, - "end": 2110, + "start": 2103, + "end": 2105, "loc": { "start": { "line": 96, @@ -11682,8 +15383,8 @@ "updateContext": null }, "value": "=", - "start": 2111, - "end": 2112, + "start": 2106, + "end": 2107, "loc": { "start": { "line": 96, @@ -11710,8 +15411,8 @@ "updateContext": null }, "value": "new", - "start": 2113, - "end": 2116, + "start": 2108, + "end": 2111, "loc": { "start": { "line": 96, @@ -11736,8 +15437,8 @@ "binop": null }, "value": "TokenRegex", - "start": 2117, - "end": 2127, + "start": 2112, + "end": 2122, "loc": { "start": { "line": 96, @@ -11761,8 +15462,8 @@ "postfix": false, "binop": null }, - "start": 2127, - "end": 2128, + "start": 2122, + "end": 2123, "loc": { "start": { "line": 96, @@ -11788,8 +15489,8 @@ "updateContext": null }, "value": "RP", - "start": 2131, - "end": 2135, + "start": 2126, + "end": 2130, "loc": { "start": { "line": 97, @@ -11814,8 +15515,8 @@ "binop": null, "updateContext": null }, - "start": 2135, - "end": 2136, + "start": 2130, + "end": 2131, "loc": { "start": { "line": 97, @@ -11839,8 +15540,8 @@ "postfix": false, "binop": null }, - "start": 2139, - "end": 2140, + "start": 2134, + "end": 2135, "loc": { "start": { "line": 98, @@ -11866,8 +15567,8 @@ "updateContext": null }, "value": "([\\)\\}\\]] # }}] are synonyms\n )", - "start": 2140, - "end": 2203, + "start": 2135, + "end": 2198, "loc": { "start": { "line": 98, @@ -11891,8 +15592,8 @@ "postfix": false, "binop": null }, - "start": 2203, - "end": 2204, + "start": 2198, + "end": 2199, "loc": { "start": { "line": 99, @@ -11917,8 +15618,8 @@ "binop": null, "updateContext": null }, - "start": 2204, - "end": 2205, + "start": 2199, + "end": 2200, "loc": { "start": { "line": 99, @@ -11944,8 +15645,8 @@ "updateContext": null }, "value": "yx", - "start": 2208, - "end": 2212, + "start": 2203, + "end": 2207, "loc": { "start": { "line": 100, @@ -11969,8 +15670,8 @@ "postfix": false, "binop": null }, - "start": 2213, - "end": 2214, + "start": 2208, + "end": 2209, "loc": { "start": { "line": 101, @@ -11995,8 +15696,8 @@ "binop": null, "updateContext": null }, - "start": 2214, - "end": 2215, + "start": 2209, + "end": 2210, "loc": { "start": { "line": 101, @@ -12023,8 +15724,8 @@ "updateContext": null }, "value": "const", - "start": 2217, - "end": 2222, + "start": 2212, + "end": 2217, "loc": { "start": { "line": 103, @@ -12049,8 +15750,8 @@ "binop": null }, "value": "COMMA", - "start": 2223, - "end": 2228, + "start": 2218, + "end": 2223, "loc": { "start": { "line": 103, @@ -12076,8 +15777,8 @@ "updateContext": null }, "value": "=", - "start": 2229, - "end": 2230, + "start": 2224, + "end": 2225, "loc": { "start": { "line": 103, @@ -12104,8 +15805,8 @@ "updateContext": null }, "value": "new", - "start": 2231, - "end": 2234, + "start": 2226, + "end": 2229, "loc": { "start": { "line": 103, @@ -12130,8 +15831,8 @@ "binop": null }, "value": "TokenRegex", - "start": 2235, - "end": 2245, + "start": 2230, + "end": 2240, "loc": { "start": { "line": 103, @@ -12155,8 +15856,8 @@ "postfix": false, "binop": null }, - "start": 2245, - "end": 2246, + "start": 2240, + "end": 2241, "loc": { "start": { "line": 103, @@ -12182,8 +15883,8 @@ "updateContext": null }, "value": "COMMA", - "start": 2249, - "end": 2256, + "start": 2244, + "end": 2251, "loc": { "start": { "line": 104, @@ -12208,8 +15909,8 @@ "binop": null, "updateContext": null }, - "start": 2256, - "end": 2257, + "start": 2251, + "end": 2252, "loc": { "start": { "line": 104, @@ -12233,8 +15934,8 @@ "postfix": false, "binop": null }, - "start": 2260, - "end": 2261, + "start": 2255, + "end": 2256, "loc": { "start": { "line": 105, @@ -12260,8 +15961,8 @@ "updateContext": null }, "value": "(,| # comma\n :(?!=) # a : that isn't followed by a = (:= is word)\n )", - "start": 2261, - "end": 2402, + "start": 2256, + "end": 2397, "loc": { "start": { "line": 105, @@ -12285,8 +15986,8 @@ "postfix": false, "binop": null }, - "start": 2402, - "end": 2403, + "start": 2397, + "end": 2398, "loc": { "start": { "line": 107, @@ -12311,8 +16012,8 @@ "binop": null, "updateContext": null }, - "start": 2403, - "end": 2404, + "start": 2398, + "end": 2399, "loc": { "start": { "line": 107, @@ -12338,8 +16039,8 @@ "updateContext": null }, "value": "yx", - "start": 2407, - "end": 2411, + "start": 2402, + "end": 2406, "loc": { "start": { "line": 108, @@ -12363,8 +16064,8 @@ "postfix": false, "binop": null }, - "start": 2412, - "end": 2413, + "start": 2407, + "end": 2408, "loc": { "start": { "line": 109, @@ -12389,8 +16090,8 @@ "binop": null, "updateContext": null }, - "start": 2413, - "end": 2414, + "start": 2408, + "end": 2409, "loc": { "start": { "line": 109, @@ -12417,8 +16118,8 @@ "updateContext": null }, "value": "const", - "start": 2416, - "end": 2421, + "start": 2411, + "end": 2416, "loc": { "start": { "line": 111, @@ -12443,8 +16144,8 @@ "binop": null }, "value": "REGEX", - "start": 2422, - "end": 2427, + "start": 2417, + "end": 2422, "loc": { "start": { "line": 111, @@ -12470,8 +16171,8 @@ "updateContext": null }, "value": "=", - "start": 2428, - "end": 2429, + "start": 2423, + "end": 2424, "loc": { "start": { "line": 111, @@ -12498,8 +16199,8 @@ "updateContext": null }, "value": "new", - "start": 2430, - "end": 2433, + "start": 2425, + "end": 2428, "loc": { "start": { "line": 111, @@ -12524,8 +16225,8 @@ "binop": null }, "value": "TokenRegex", - "start": 2434, - "end": 2444, + "start": 2429, + "end": 2439, "loc": { "start": { "line": 111, @@ -12549,8 +16250,8 @@ "postfix": false, "binop": null }, - "start": 2444, - "end": 2445, + "start": 2439, + "end": 2440, "loc": { "start": { "line": 111, @@ -12576,8 +16277,8 @@ "updateContext": null }, "value": "REGEX", - "start": 2448, - "end": 2455, + "start": 2443, + "end": 2450, "loc": { "start": { "line": 112, @@ -12602,8 +16303,8 @@ "binop": null, "updateContext": null }, - "start": 2455, - "end": 2456, + "start": 2450, + "end": 2451, "loc": { "start": { "line": 112, @@ -12627,8 +16328,8 @@ "postfix": false, "binop": null }, - "start": 2459, - "end": 2460, + "start": 2454, + "end": 2455, "loc": { "start": { "line": 113, @@ -12654,8 +16355,8 @@ "updateContext": null }, "value": "(r/[^]*?/ # body of the regex\n [nsxAgimuy]* # flags\n )", - "start": 2460, - "end": 2581, + "start": 2455, + "end": 2576, "loc": { "start": { "line": 113, @@ -12679,8 +16380,8 @@ "postfix": false, "binop": null }, - "start": 2581, - "end": 2582, + "start": 2576, + "end": 2577, "loc": { "start": { "line": 115, @@ -12705,8 +16406,8 @@ "binop": null, "updateContext": null }, - "start": 2582, - "end": 2583, + "start": 2577, + "end": 2578, "loc": { "start": { "line": 115, @@ -12732,8 +16433,8 @@ "updateContext": null }, "value": "yx", - "start": 2586, - "end": 2590, + "start": 2581, + "end": 2585, "loc": { "start": { "line": 116, @@ -12757,8 +16458,8 @@ "postfix": false, "binop": null }, - "start": 2591, - "end": 2592, + "start": 2586, + "end": 2587, "loc": { "start": { "line": 117, @@ -12783,8 +16484,8 @@ "binop": null, "updateContext": null }, - "start": 2592, - "end": 2593, + "start": 2587, + "end": 2588, "loc": { "start": { "line": 117, @@ -12798,19 +16499,21 @@ }, { "type": { - "label": "name", + "label": "export", + "keyword": "export", "beforeExpr": false, - "startsExpr": true, + "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "value": "module", - "start": 2595, - "end": 2601, + "value": "export", + "start": 2590, + "end": 2596, "loc": { "start": { "line": 119, @@ -12824,27 +16527,26 @@ }, { "type": { - "label": ".", - "beforeExpr": false, - "startsExpr": false, + "label": "{", + "beforeExpr": true, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null, - "updateContext": null + "binop": null }, - "start": 2601, - "end": 2602, + "start": 2597, + "end": 2598, "loc": { "start": { "line": 119, - "column": 6 + "column": 7 }, "end": { "line": 119, - "column": 7 + "column": 8 } } }, @@ -12860,36 +16562,35 @@ "postfix": false, "binop": null }, - "value": "exports", - "start": 2602, - "end": 2609, + "value": "WHITES", + "start": 2599, + "end": 2605, "loc": { "start": { "line": 119, - "column": 7 + "column": 9 }, "end": { "line": 119, - "column": 14 + "column": 15 } } }, { "type": { - "label": "=", + "label": ",", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, - "isAssign": true, + "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, - "value": "=", - "start": 2610, - "end": 2611, + "start": 2605, + "end": 2606, "loc": { "start": { "line": 119, @@ -12901,31 +16602,6 @@ } } }, - { - "type": { - "label": "{", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 2612, - "end": 2613, - "loc": { - "start": { - "line": 119, - "column": 17 - }, - "end": { - "line": 119, - "column": 18 - } - } - }, { "type": { "label": "name", @@ -12938,9 +16614,9 @@ "postfix": false, "binop": null }, - "value": "WHITES", - "start": 2616, - "end": 2622, + "value": "NEWLINE", + "start": 2609, + "end": 2616, "loc": { "start": { "line": 120, @@ -12948,7 +16624,7 @@ }, "end": { "line": 120, - "column": 8 + "column": 9 } } }, @@ -12965,16 +16641,16 @@ "binop": null, "updateContext": null }, - "start": 2622, - "end": 2623, + "start": 2616, + "end": 2617, "loc": { "start": { "line": 120, - "column": 8 + "column": 9 }, "end": { "line": 120, - "column": 9 + "column": 10 } } }, @@ -12990,9 +16666,9 @@ "postfix": false, "binop": null }, - "value": "NEWLINE", - "start": 2626, - "end": 2633, + "value": "NUMBER", + "start": 2620, + "end": 2626, "loc": { "start": { "line": 121, @@ -13000,7 +16676,7 @@ }, "end": { "line": 121, - "column": 9 + "column": 8 } } }, @@ -13017,16 +16693,16 @@ "binop": null, "updateContext": null }, - "start": 2633, - "end": 2634, + "start": 2626, + "end": 2627, "loc": { "start": { "line": 121, - "column": 9 + "column": 8 }, "end": { "line": 121, - "column": 10 + "column": 9 } } }, @@ -13042,9 +16718,9 @@ "postfix": false, "binop": null }, - "value": "NUMBER", - "start": 2637, - "end": 2643, + "value": "STRING", + "start": 2630, + "end": 2636, "loc": { "start": { "line": 122, @@ -13069,8 +16745,8 @@ "binop": null, "updateContext": null }, - "start": 2643, - "end": 2644, + "start": 2636, + "end": 2637, "loc": { "start": { "line": 122, @@ -13094,9 +16770,9 @@ "postfix": false, "binop": null }, - "value": "STRING", - "start": 2647, - "end": 2653, + "value": "WORD", + "start": 2640, + "end": 2644, "loc": { "start": { "line": 123, @@ -13104,7 +16780,7 @@ }, "end": { "line": 123, - "column": 8 + "column": 6 } } }, @@ -13121,16 +16797,16 @@ "binop": null, "updateContext": null }, - "start": 2653, - "end": 2654, + "start": 2644, + "end": 2645, "loc": { "start": { "line": 123, - "column": 8 + "column": 6 }, "end": { "line": 123, - "column": 9 + "column": 7 } } }, @@ -13146,9 +16822,9 @@ "postfix": false, "binop": null }, - "value": "WORD", - "start": 2657, - "end": 2661, + "value": "LP", + "start": 2648, + "end": 2650, "loc": { "start": { "line": 124, @@ -13156,7 +16832,7 @@ }, "end": { "line": 124, - "column": 6 + "column": 4 } } }, @@ -13173,16 +16849,16 @@ "binop": null, "updateContext": null }, - "start": 2661, - "end": 2662, + "start": 2650, + "end": 2651, "loc": { "start": { "line": 124, - "column": 6 + "column": 4 }, "end": { "line": 124, - "column": 7 + "column": 5 } } }, @@ -13198,9 +16874,9 @@ "postfix": false, "binop": null }, - "value": "LP", - "start": 2665, - "end": 2667, + "value": "RP", + "start": 2654, + "end": 2656, "loc": { "start": { "line": 125, @@ -13225,8 +16901,8 @@ "binop": null, "updateContext": null }, - "start": 2667, - "end": 2668, + "start": 2656, + "end": 2657, "loc": { "start": { "line": 125, @@ -13250,9 +16926,9 @@ "postfix": false, "binop": null }, - "value": "RP", - "start": 2671, - "end": 2673, + "value": "COMMA", + "start": 2660, + "end": 2665, "loc": { "start": { "line": 126, @@ -13260,7 +16936,7 @@ }, "end": { "line": 126, - "column": 4 + "column": 7 } } }, @@ -13277,16 +16953,16 @@ "binop": null, "updateContext": null }, - "start": 2673, - "end": 2674, + "start": 2665, + "end": 2666, "loc": { "start": { "line": 126, - "column": 4 + "column": 7 }, "end": { "line": 126, - "column": 5 + "column": 8 } } }, @@ -13302,9 +16978,9 @@ "postfix": false, "binop": null }, - "value": "COMMA", - "start": 2677, - "end": 2682, + "value": "REGEX", + "start": 2669, + "end": 2674, "loc": { "start": { "line": 127, @@ -13329,8 +17005,8 @@ "binop": null, "updateContext": null }, - "start": 2682, - "end": 2683, + "start": 2674, + "end": 2675, "loc": { "start": { "line": 127, @@ -13354,9 +17030,9 @@ "postfix": false, "binop": null }, - "value": "REGEX", - "start": 2686, - "end": 2691, + "value": "TokenRegex", + "start": 2678, + "end": 2688, "loc": { "start": { "line": 128, @@ -13364,58 +17040,6 @@ }, "end": { "line": 128, - "column": 7 - } - } - }, - { - "type": { - "label": ",", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "start": 2691, - "end": 2692, - "loc": { - "start": { - "line": 128, - "column": 7 - }, - "end": { - "line": 128, - "column": 8 - } - } - }, - { - "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "TokenRegex", - "start": 2695, - "end": 2705, - "loc": { - "start": { - "line": 129, - "column": 2 - }, - "end": { - "line": 129, "column": 12 } } @@ -13432,16 +17056,16 @@ "postfix": false, "binop": null }, - "start": 2706, - "end": 2707, + "start": 2689, + "end": 2690, "loc": { "start": { - "line": 130, - "column": 0 + "line": 128, + "column": 13 }, "end": { - "line": 130, - "column": 1 + "line": 128, + "column": 14 } } }, @@ -13458,16 +17082,16 @@ "binop": null, "updateContext": null }, - "start": 2707, - "end": 2708, + "start": 2690, + "end": 2691, "loc": { "start": { - "line": 130, - "column": 1 + "line": 128, + "column": 14 }, "end": { - "line": 130, - "column": 2 + "line": 128, + "column": 15 } } }, @@ -13484,15 +17108,15 @@ "binop": null, "updateContext": null }, - "start": 2709, - "end": 2709, + "start": 2692, + "end": 2692, "loc": { "start": { - "line": 131, + "line": 129, "column": 0 }, "end": { - "line": 131, + "line": 129, "column": 0 } } diff --git a/docs/ast/source/repl/colors.js.json b/docs/ast/source/repl/colors.js.json index 08fa7f4..185be99 100644 --- a/docs/ast/source/repl/colors.js.json +++ b/docs/ast/source/repl/colors.js.json @@ -1,37 +1,37 @@ { "type": "File", "start": 0, - "end": 456, + "end": 434, "loc": { "start": { "line": 1, "column": 0 }, "end": { - "line": 19, + "line": 17, "column": 0 } }, "program": { "type": "Program", "start": 0, - "end": 456, + "end": 434, "loc": { "start": { "line": 1, "column": 0 }, "end": { - "line": 19, + "line": 17, "column": 0 } }, "sourceType": "module", "body": [ { - "type": "VariableDeclaration", + "type": "ImportDeclaration", "start": 0, - "end": 55, + "end": 50, "loc": { "start": { "line": 1, @@ -39,158 +39,85 @@ }, "end": { "line": 1, - "column": 55 + "column": 50 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 6, - "end": 54, + "type": "ImportSpecifier", + "start": 9, + "end": 15, "loc": { "start": { "line": 1, - "column": 6 + "column": 9 }, "end": { "line": 1, - "column": 54 + "column": 15 } }, - "id": { - "type": "ObjectPattern", - "start": 6, - "end": 16, + "imported": { + "type": "Identifier", + "start": 9, + "end": 15, "loc": { "start": { "line": 1, - "column": 6 + "column": 9 }, "end": { "line": 1, - "column": 16 - } + "column": 15 + }, + "identifierName": "TopEnv" }, - "properties": [ - { - "type": "ObjectProperty", - "start": 8, - "end": 14, - "loc": { - "start": { - "line": 1, - "column": 8 - }, - "end": { - "line": 1, - "column": 14 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 8, - "end": 14, - "loc": { - "start": { - "line": 1, - "column": 8 - }, - "end": { - "line": 1, - "column": 14 - }, - "identifierName": "TopEnv" - }, - "name": "TopEnv" - }, - "value": { - "type": "Identifier", - "start": 8, - "end": 14, - "loc": { - "start": { - "line": 1, - "column": 8 - }, - "end": { - "line": 1, - "column": 14 - }, - "identifierName": "TopEnv" - }, - "name": "TopEnv" - }, - "extra": { - "shorthand": true - } - } - ] + "name": "TopEnv" }, - "init": { - "type": "CallExpression", - "start": 19, - "end": 54, + "local": { + "type": "Identifier", + "start": 9, + "end": 15, "loc": { "start": { "line": 1, - "column": 19 + "column": 9 }, "end": { "line": 1, - "column": 54 - } - }, - "callee": { - "type": "Identifier", - "start": 19, - "end": 26, - "loc": { - "start": { - "line": 1, - "column": 19 - }, - "end": { - "line": 1, - "column": 26 - }, - "identifierName": "require" + "column": 15 }, - "name": "require" + "identifierName": "TopEnv" }, - "arguments": [ - { - "type": "StringLiteral", - "start": 27, - "end": 53, - "loc": { - "start": { - "line": 1, - "column": 27 - }, - "end": { - "line": 1, - "column": 53 - } - }, - "extra": { - "rawValue": "../interp/environment.js", - "raw": "\"../interp/environment.js\"" - }, - "value": "../interp/environment.js" - } - ] + "name": "TopEnv" } } ], - "kind": "const" + "source": { + "type": "StringLiteral", + "start": 23, + "end": 49, + "loc": { + "start": { + "line": 1, + "column": 23 + }, + "end": { + "line": 1, + "column": 49 + } + }, + "extra": { + "rawValue": "../interp/environment.js", + "raw": "\"../interp/environment.js\"" + }, + "value": "../interp/environment.js" + } }, { - "type": "VariableDeclaration", - "start": 56, - "end": 93, + "type": "ImportDeclaration", + "start": 51, + "end": 83, "loc": { "start": { "line": 2, @@ -198,103 +125,68 @@ }, "end": { "line": 2, - "column": 37 + "column": 32 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 62, - "end": 92, + "type": "ImportDefaultSpecifier", + "start": 58, + "end": 63, "loc": { "start": { "line": 2, - "column": 6 + "column": 7 }, "end": { "line": 2, - "column": 36 + "column": 12 } }, - "id": { + "local": { "type": "Identifier", - "start": 62, - "end": 67, + "start": 58, + "end": 63, "loc": { "start": { "line": 2, - "column": 6 + "column": 7 }, "end": { "line": 2, - "column": 11 + "column": 12 }, "identifierName": "style" }, "name": "style" - }, - "init": { - "type": "CallExpression", - "start": 70, - "end": 92, - "loc": { - "start": { - "line": 2, - "column": 14 - }, - "end": { - "line": 2, - "column": 36 - } - }, - "callee": { - "type": "Identifier", - "start": 70, - "end": 77, - "loc": { - "start": { - "line": 2, - "column": 14 - }, - "end": { - "line": 2, - "column": 21 - }, - "identifierName": "require" - }, - "name": "require" - }, - "arguments": [ - { - "type": "StringLiteral", - "start": 78, - "end": 91, - "loc": { - "start": { - "line": 2, - "column": 22 - }, - "end": { - "line": 2, - "column": 35 - } - }, - "extra": { - "rawValue": "ansi-styles", - "raw": "\"ansi-styles\"" - }, - "value": "ansi-styles" - } - ] } } ], - "kind": "const" + "source": { + "type": "StringLiteral", + "start": 69, + "end": 82, + "loc": { + "start": { + "line": 2, + "column": 18 + }, + "end": { + "line": 2, + "column": 31 + } + }, + "extra": { + "rawValue": "ansi-styles", + "raw": "\"ansi-styles\"" + }, + "value": "ansi-styles" + } }, { - "type": "VariableDeclaration", - "start": 95, - "end": 144, + "type": "Identifier", + "start": 85, + "end": 134, "loc": { "start": { "line": 4, @@ -308,8 +200,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 101, - "end": 143, + "start": 91, + "end": 133, "loc": { "start": { "line": 4, @@ -322,8 +214,8 @@ }, "id": { "type": "Identifier", - "start": 101, - "end": 104, + "start": 91, + "end": 94, "loc": { "start": { "line": 4, @@ -339,8 +231,8 @@ }, "init": { "type": "AssignmentExpression", - "start": 108, - "end": 142, + "start": 98, + "end": 132, "loc": { "start": { "line": 4, @@ -354,8 +246,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 108, - "end": 125, + "start": 98, + "end": 115, "loc": { "start": { "line": 4, @@ -368,8 +260,8 @@ }, "object": { "type": "Identifier", - "start": 108, - "end": 114, + "start": 98, + "end": 104, "loc": { "start": { "line": 4, @@ -385,8 +277,8 @@ }, "property": { "type": "StringLiteral", - "start": 115, - "end": 124, + "start": 105, + "end": 114, "loc": { "start": { "line": 4, @@ -407,8 +299,8 @@ }, "right": { "type": "MemberExpression", - "start": 128, - "end": 142, + "start": 118, + "end": 132, "loc": { "start": { "line": 4, @@ -421,8 +313,8 @@ }, "object": { "type": "MemberExpression", - "start": 128, - "end": 137, + "start": 118, + "end": 127, "loc": { "start": { "line": 4, @@ -435,8 +327,8 @@ }, "object": { "type": "Identifier", - "start": 128, - "end": 133, + "start": 118, + "end": 123, "loc": { "start": { "line": 4, @@ -452,8 +344,8 @@ }, "property": { "type": "Identifier", - "start": 134, - "end": 137, + "start": 124, + "end": 127, "loc": { "start": { "line": 4, @@ -471,8 +363,8 @@ }, "property": { "type": "Identifier", - "start": 138, - "end": 142, + "start": 128, + "end": 132, "loc": { "start": { "line": 4, @@ -490,17 +382,20 @@ }, "extra": { "parenthesized": true, - "parenStart": 107 + "parenStart": 97 } } } ], - "kind": "const" + "kind": "const", + "name": "_", + "leadingComments": [], + "trailingComments": [] }, { - "type": "VariableDeclaration", - "start": 145, - "end": 200, + "type": "Identifier", + "start": 135, + "end": 190, "loc": { "start": { "line": 5, @@ -514,8 +409,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 151, - "end": 199, + "start": 141, + "end": 189, "loc": { "start": { "line": 5, @@ -528,8 +423,8 @@ }, "id": { "type": "Identifier", - "start": 151, - "end": 156, + "start": 141, + "end": 146, "loc": { "start": { "line": 5, @@ -545,8 +440,8 @@ }, "init": { "type": "AssignmentExpression", - "start": 160, - "end": 198, + "start": 150, + "end": 188, "loc": { "start": { "line": 5, @@ -560,8 +455,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 160, - "end": 179, + "start": 150, + "end": 169, "loc": { "start": { "line": 5, @@ -574,8 +469,8 @@ }, "object": { "type": "Identifier", - "start": 160, - "end": 166, + "start": 150, + "end": 156, "loc": { "start": { "line": 5, @@ -591,8 +486,8 @@ }, "property": { "type": "StringLiteral", - "start": 167, - "end": 178, + "start": 157, + "end": 168, "loc": { "start": { "line": 5, @@ -613,8 +508,8 @@ }, "right": { "type": "MemberExpression", - "start": 182, - "end": 198, + "start": 172, + "end": 188, "loc": { "start": { "line": 5, @@ -627,8 +522,8 @@ }, "object": { "type": "MemberExpression", - "start": 182, - "end": 193, + "start": 172, + "end": 183, "loc": { "start": { "line": 5, @@ -641,8 +536,8 @@ }, "object": { "type": "Identifier", - "start": 182, - "end": 187, + "start": 172, + "end": 177, "loc": { "start": { "line": 5, @@ -658,8 +553,8 @@ }, "property": { "type": "Identifier", - "start": 188, - "end": 193, + "start": 178, + "end": 183, "loc": { "start": { "line": 5, @@ -677,8 +572,8 @@ }, "property": { "type": "Identifier", - "start": 194, - "end": 198, + "start": 184, + "end": 188, "loc": { "start": { "line": 5, @@ -696,17 +591,20 @@ }, "extra": { "parenthesized": true, - "parenStart": 159 + "parenStart": 149 } } } ], - "kind": "const" + "kind": "const", + "name": "_", + "leadingComments": [], + "trailingComments": [] }, { - "type": "VariableDeclaration", - "start": 201, - "end": 259, + "type": "Identifier", + "start": 191, + "end": 249, "loc": { "start": { "line": 6, @@ -720,8 +618,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 207, - "end": 258, + "start": 197, + "end": 248, "loc": { "start": { "line": 6, @@ -734,8 +632,8 @@ }, "id": { "type": "Identifier", - "start": 207, - "end": 213, + "start": 197, + "end": 203, "loc": { "start": { "line": 6, @@ -751,8 +649,8 @@ }, "init": { "type": "AssignmentExpression", - "start": 217, - "end": 257, + "start": 207, + "end": 247, "loc": { "start": { "line": 6, @@ -766,8 +664,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 217, - "end": 237, + "start": 207, + "end": 227, "loc": { "start": { "line": 6, @@ -780,8 +678,8 @@ }, "object": { "type": "Identifier", - "start": 217, - "end": 223, + "start": 207, + "end": 213, "loc": { "start": { "line": 6, @@ -797,8 +695,8 @@ }, "property": { "type": "StringLiteral", - "start": 224, - "end": 236, + "start": 214, + "end": 226, "loc": { "start": { "line": 6, @@ -819,8 +717,8 @@ }, "right": { "type": "MemberExpression", - "start": 240, - "end": 257, + "start": 230, + "end": 247, "loc": { "start": { "line": 6, @@ -833,8 +731,8 @@ }, "object": { "type": "MemberExpression", - "start": 240, - "end": 252, + "start": 230, + "end": 242, "loc": { "start": { "line": 6, @@ -847,8 +745,8 @@ }, "object": { "type": "Identifier", - "start": 240, - "end": 245, + "start": 230, + "end": 235, "loc": { "start": { "line": 6, @@ -864,8 +762,8 @@ }, "property": { "type": "Identifier", - "start": 246, - "end": 252, + "start": 236, + "end": 242, "loc": { "start": { "line": 6, @@ -883,8 +781,8 @@ }, "property": { "type": "Identifier", - "start": 253, - "end": 257, + "start": 243, + "end": 247, "loc": { "start": { "line": 6, @@ -902,17 +800,20 @@ }, "extra": { "parenthesized": true, - "parenStart": 216 + "parenStart": 206 } } } ], - "kind": "const" + "kind": "const", + "name": "_", + "leadingComments": [], + "trailingComments": [] }, { - "type": "VariableDeclaration", - "start": 260, - "end": 312, + "type": "Identifier", + "start": 250, + "end": 302, "loc": { "start": { "line": 7, @@ -926,8 +827,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 266, - "end": 311, + "start": 256, + "end": 301, "loc": { "start": { "line": 7, @@ -940,8 +841,8 @@ }, "id": { "type": "Identifier", - "start": 266, - "end": 270, + "start": 256, + "end": 260, "loc": { "start": { "line": 7, @@ -957,8 +858,8 @@ }, "init": { "type": "AssignmentExpression", - "start": 274, - "end": 310, + "start": 264, + "end": 300, "loc": { "start": { "line": 7, @@ -972,8 +873,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 274, - "end": 292, + "start": 264, + "end": 282, "loc": { "start": { "line": 7, @@ -986,8 +887,8 @@ }, "object": { "type": "Identifier", - "start": 274, - "end": 280, + "start": 264, + "end": 270, "loc": { "start": { "line": 7, @@ -1003,8 +904,8 @@ }, "property": { "type": "StringLiteral", - "start": 281, - "end": 291, + "start": 271, + "end": 281, "loc": { "start": { "line": 7, @@ -1025,8 +926,8 @@ }, "right": { "type": "MemberExpression", - "start": 295, - "end": 310, + "start": 285, + "end": 300, "loc": { "start": { "line": 7, @@ -1039,8 +940,8 @@ }, "object": { "type": "MemberExpression", - "start": 295, - "end": 305, + "start": 285, + "end": 295, "loc": { "start": { "line": 7, @@ -1053,8 +954,8 @@ }, "object": { "type": "Identifier", - "start": 295, - "end": 300, + "start": 285, + "end": 290, "loc": { "start": { "line": 7, @@ -1070,8 +971,8 @@ }, "property": { "type": "Identifier", - "start": 301, - "end": 305, + "start": 291, + "end": 295, "loc": { "start": { "line": 7, @@ -1089,8 +990,8 @@ }, "property": { "type": "Identifier", - "start": 306, - "end": 310, + "start": 296, + "end": 300, "loc": { "start": { "line": 7, @@ -1108,17 +1009,20 @@ }, "extra": { "parenthesized": true, - "parenStart": 273 + "parenStart": 263 } } } ], - "kind": "const" + "kind": "const", + "name": "_", + "leadingComments": [], + "trailingComments": [] }, { - "type": "VariableDeclaration", - "start": 313, - "end": 369, + "type": "Identifier", + "start": 303, + "end": 359, "loc": { "start": { "line": 8, @@ -1132,8 +1036,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 319, - "end": 368, + "start": 309, + "end": 358, "loc": { "start": { "line": 8, @@ -1146,8 +1050,8 @@ }, "id": { "type": "Identifier", - "start": 319, - "end": 326, + "start": 309, + "end": 316, "loc": { "start": { "line": 8, @@ -1163,8 +1067,8 @@ }, "init": { "type": "AssignmentExpression", - "start": 330, - "end": 367, + "start": 320, + "end": 357, "loc": { "start": { "line": 8, @@ -1178,8 +1082,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 330, - "end": 347, + "start": 320, + "end": 337, "loc": { "start": { "line": 8, @@ -1192,8 +1096,8 @@ }, "object": { "type": "Identifier", - "start": 330, - "end": 336, + "start": 320, + "end": 326, "loc": { "start": { "line": 8, @@ -1209,8 +1113,8 @@ }, "property": { "type": "StringLiteral", - "start": 337, - "end": 346, + "start": 327, + "end": 336, "loc": { "start": { "line": 8, @@ -1231,8 +1135,8 @@ }, "right": { "type": "MemberExpression", - "start": 350, - "end": 367, + "start": 340, + "end": 357, "loc": { "start": { "line": 8, @@ -1245,8 +1149,8 @@ }, "object": { "type": "MemberExpression", - "start": 350, - "end": 361, + "start": 340, + "end": 351, "loc": { "start": { "line": 8, @@ -1259,8 +1163,8 @@ }, "object": { "type": "Identifier", - "start": 350, - "end": 355, + "start": 340, + "end": 345, "loc": { "start": { "line": 8, @@ -1276,8 +1180,8 @@ }, "property": { "type": "Identifier", - "start": 356, - "end": 361, + "start": 346, + "end": 351, "loc": { "start": { "line": 8, @@ -1295,8 +1199,8 @@ }, "property": { "type": "Identifier", - "start": 362, - "end": 367, + "start": 352, + "end": 357, "loc": { "start": { "line": 8, @@ -1314,17 +1218,20 @@ }, "extra": { "parenthesized": true, - "parenStart": 329 + "parenStart": 319 } } } ], - "kind": "const" + "kind": "const", + "name": "_", + "leadingComments": [], + "trailingComments": [] }, { "type": "ExpressionStatement", - "start": 371, - "end": 388, + "start": 361, + "end": 378, "loc": { "start": { "line": 10, @@ -1337,8 +1244,8 @@ }, "expression": { "type": "CallExpression", - "start": 371, - "end": 387, + "start": 361, + "end": 377, "loc": { "start": { "line": 10, @@ -1351,8 +1258,8 @@ }, "callee": { "type": "MemberExpression", - "start": 371, - "end": 382, + "start": 361, + "end": 372, "loc": { "start": { "line": 10, @@ -1365,8 +1272,8 @@ }, "object": { "type": "Identifier", - "start": 371, - "end": 378, + "start": 361, + "end": 368, "loc": { "start": { "line": 10, @@ -1382,8 +1289,8 @@ }, "property": { "type": "Identifier", - "start": 379, - "end": 382, + "start": 369, + "end": 372, "loc": { "start": { "line": 10, @@ -1402,8 +1309,8 @@ "arguments": [ { "type": "Identifier", - "start": 383, - "end": 386, + "start": 373, + "end": 376, "loc": { "start": { "line": 10, @@ -1421,377 +1328,1398 @@ } }, { - "type": "ExpressionStatement", - "start": 390, - "end": 455, + "type": "ExportNamedDeclaration", + "start": 380, + "end": 433, "loc": { "start": { "line": 12, "column": 0 }, "end": { - "line": 18, - "column": 2 + "line": 16, + "column": 12 } }, - "expression": { - "type": "AssignmentExpression", - "start": 390, - "end": 454, - "loc": { - "start": { - "line": 12, - "column": 0 - }, - "end": { - "line": 18, - "column": 1 - } - }, - "operator": "=", - "left": { - "type": "MemberExpression", - "start": 390, - "end": 404, + "declaration": null, + "specifiers": [ + { + "type": "ExportSpecifier", + "start": 389, + "end": 392, "loc": { "start": { "line": 12, - "column": 0 + "column": 9 }, "end": { "line": 12, - "column": 14 + "column": 12 } }, - "object": { + "local": { "type": "Identifier", - "start": 390, - "end": 396, + "start": 389, + "end": 392, "loc": { "start": { "line": 12, - "column": 0 + "column": 9 }, "end": { "line": 12, - "column": 6 + "column": 12 }, - "identifierName": "module" + "identifierName": "RED" }, - "name": "module" + "name": "RED" }, - "property": { + "exported": { "type": "Identifier", - "start": 397, - "end": 404, + "start": 389, + "end": 392, "loc": { "start": { "line": 12, - "column": 7 + "column": 9 }, "end": { "line": 12, - "column": 14 + "column": 12 }, - "identifierName": "exports" + "identifierName": "RED" }, - "name": "exports" - }, - "computed": false + "name": "RED" + } }, - "right": { - "type": "ObjectExpression", - "start": 407, - "end": 454, + { + "type": "ExportSpecifier", + "start": 396, + "end": 401, "loc": { "start": { - "line": 12, - "column": 17 + "line": 13, + "column": 2 }, "end": { - "line": 18, - "column": 1 + "line": 13, + "column": 7 } }, - "properties": [ - { - "type": "ObjectProperty", - "start": 411, - "end": 414, - "loc": { - "start": { - "line": 13, - "column": 2 - }, - "end": { - "line": 13, - "column": 5 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 411, - "end": 414, - "loc": { - "start": { - "line": 13, - "column": 2 - }, - "end": { - "line": 13, - "column": 5 - }, - "identifierName": "RED" - }, - "name": "RED" + "local": { + "type": "Identifier", + "start": 396, + "end": 401, + "loc": { + "start": { + "line": 13, + "column": 2 }, - "value": { - "type": "Identifier", - "start": 411, - "end": 414, - "loc": { - "start": { - "line": 13, - "column": 2 - }, - "end": { - "line": 13, - "column": 5 - }, - "identifierName": "RED" - }, - "name": "RED" + "end": { + "line": 13, + "column": 7 }, - "extra": { - "shorthand": true - } + "identifierName": "GREEN" }, - { - "type": "ObjectProperty", - "start": 418, - "end": 423, - "loc": { - "start": { - "line": 14, - "column": 2 - }, - "end": { - "line": 14, - "column": 7 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 418, - "end": 423, - "loc": { - "start": { - "line": 14, - "column": 2 - }, - "end": { - "line": 14, - "column": 7 - }, - "identifierName": "GREEN" - }, - "name": "GREEN" + "name": "GREEN" + }, + "exported": { + "type": "Identifier", + "start": 396, + "end": 401, + "loc": { + "start": { + "line": 13, + "column": 2 }, - "value": { - "type": "Identifier", - "start": 418, - "end": 423, - "loc": { - "start": { - "line": 14, - "column": 2 - }, - "end": { - "line": 14, - "column": 7 - }, - "identifierName": "GREEN" - }, - "name": "GREEN" + "end": { + "line": 13, + "column": 7 }, - "extra": { - "shorthand": true - } + "identifierName": "GREEN" }, - { - "type": "ObjectProperty", - "start": 427, - "end": 433, - "loc": { - "start": { - "line": 15, - "column": 2 - }, - "end": { - "line": 15, - "column": 8 - } + "name": "GREEN" + } + }, + { + "type": "ExportSpecifier", + "start": 405, + "end": 411, + "loc": { + "start": { + "line": 14, + "column": 2 + }, + "end": { + "line": 14, + "column": 8 + } + }, + "local": { + "type": "Identifier", + "start": 405, + "end": 411, + "loc": { + "start": { + "line": 14, + "column": 2 }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 427, - "end": 433, - "loc": { - "start": { - "line": 15, - "column": 2 - }, - "end": { - "line": 15, - "column": 8 - }, - "identifierName": "YELLOW" - }, - "name": "YELLOW" + "end": { + "line": 14, + "column": 8 }, - "value": { - "type": "Identifier", - "start": 427, - "end": 433, - "loc": { - "start": { - "line": 15, - "column": 2 - }, - "end": { - "line": 15, - "column": 8 + "identifierName": "YELLOW" + }, + "name": "YELLOW" + }, + "exported": { + "type": "Identifier", + "start": 405, + "end": 411, + "loc": { + "start": { + "line": 14, + "column": 2 + }, + "end": { + "line": 14, + "column": 8 + }, + "identifierName": "YELLOW" + }, + "name": "YELLOW" + } + }, + { + "type": "ExportSpecifier", + "start": 415, + "end": 419, + "loc": { + "start": { + "line": 15, + "column": 2 + }, + "end": { + "line": 15, + "column": 6 + } + }, + "local": { + "type": "Identifier", + "start": 415, + "end": 419, + "loc": { + "start": { + "line": 15, + "column": 2 + }, + "end": { + "line": 15, + "column": 6 + }, + "identifierName": "BLUE" + }, + "name": "BLUE" + }, + "exported": { + "type": "Identifier", + "start": 415, + "end": 419, + "loc": { + "start": { + "line": 15, + "column": 2 + }, + "end": { + "line": 15, + "column": 6 + }, + "identifierName": "BLUE" + }, + "name": "BLUE" + } + }, + { + "type": "ExportSpecifier", + "start": 423, + "end": 430, + "loc": { + "start": { + "line": 16, + "column": 2 + }, + "end": { + "line": 16, + "column": 9 + } + }, + "local": { + "type": "Identifier", + "start": 423, + "end": 430, + "loc": { + "start": { + "line": 16, + "column": 2 + }, + "end": { + "line": 16, + "column": 9 + }, + "identifierName": "DEFAULT" + }, + "name": "DEFAULT" + }, + "exported": { + "type": "Identifier", + "start": 423, + "end": 430, + "loc": { + "start": { + "line": 16, + "column": 2 + }, + "end": { + "line": 16, + "column": 9 + }, + "identifierName": "DEFAULT" + }, + "name": "DEFAULT" + } + } + ], + "source": null + }, + { + "type": "ExportNamedDeclaration", + "start": 380, + "end": 433, + "loc": { + "start": { + "line": 12, + "column": 0 + }, + "end": { + "line": 16, + "column": 12 + } + }, + "declaration": { + "type": "VariableDeclaration", + "start": 85, + "end": 134, + "loc": { + "start": { + "line": 4, + "column": 0 + }, + "end": { + "line": 4, + "column": 49 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 91, + "end": 133, + "loc": { + "start": { + "line": 4, + "column": 6 + }, + "end": { + "line": 4, + "column": 48 + } + }, + "id": { + "type": "Identifier", + "start": 91, + "end": 94, + "loc": { + "start": { + "line": 4, + "column": 6 + }, + "end": { + "line": 4, + "column": 9 + }, + "identifierName": "RED" + }, + "name": "RED" + }, + "init": { + "type": "AssignmentExpression", + "start": 98, + "end": 132, + "loc": { + "start": { + "line": 4, + "column": 13 + }, + "end": { + "line": 4, + "column": 47 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 98, + "end": 115, + "loc": { + "start": { + "line": 4, + "column": 13 + }, + "end": { + "line": 4, + "column": 30 + } + }, + "object": { + "type": "Identifier", + "start": 98, + "end": 104, + "loc": { + "start": { + "line": 4, + "column": 13 + }, + "end": { + "line": 4, + "column": 19 + }, + "identifierName": "TopEnv" + }, + "name": "TopEnv" + }, + "property": { + "type": "StringLiteral", + "start": 105, + "end": 114, + "loc": { + "start": { + "line": 4, + "column": 20 + }, + "end": { + "line": 4, + "column": 29 + } + }, + "extra": { + "rawValue": "__RED__", + "raw": "\"__RED__\"" + }, + "value": "__RED__" + }, + "computed": true + }, + "right": { + "type": "MemberExpression", + "start": 118, + "end": 132, + "loc": { + "start": { + "line": 4, + "column": 33 + }, + "end": { + "line": 4, + "column": 47 + } + }, + "object": { + "type": "MemberExpression", + "start": 118, + "end": 127, + "loc": { + "start": { + "line": 4, + "column": 33 + }, + "end": { + "line": 4, + "column": 42 + } + }, + "object": { + "type": "Identifier", + "start": 118, + "end": 123, + "loc": { + "start": { + "line": 4, + "column": 33 + }, + "end": { + "line": 4, + "column": 38 + }, + "identifierName": "style" + }, + "name": "style" + }, + "property": { + "type": "Identifier", + "start": 124, + "end": 127, + "loc": { + "start": { + "line": 4, + "column": 39 + }, + "end": { + "line": 4, + "column": 42 + }, + "identifierName": "red" + }, + "name": "red" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 128, + "end": 132, + "loc": { + "start": { + "line": 4, + "column": 43 + }, + "end": { + "line": 4, + "column": 47 + }, + "identifierName": "open" + }, + "name": "open" + }, + "computed": false + }, + "extra": { + "parenthesized": true, + "parenStart": 97 + } + } + } + ], + "kind": "const", + "leadingComments": [], + "trailingComments": [] + }, + "specifiers": null, + "source": null, + "leadingComments": null + }, + { + "type": "ExportNamedDeclaration", + "start": 380, + "end": 433, + "loc": { + "start": { + "line": 12, + "column": 0 + }, + "end": { + "line": 16, + "column": 12 + } + }, + "declaration": { + "type": "VariableDeclaration", + "start": 135, + "end": 190, + "loc": { + "start": { + "line": 5, + "column": 0 + }, + "end": { + "line": 5, + "column": 55 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 141, + "end": 189, + "loc": { + "start": { + "line": 5, + "column": 6 + }, + "end": { + "line": 5, + "column": 54 + } + }, + "id": { + "type": "Identifier", + "start": 141, + "end": 146, + "loc": { + "start": { + "line": 5, + "column": 6 + }, + "end": { + "line": 5, + "column": 11 + }, + "identifierName": "GREEN" + }, + "name": "GREEN" + }, + "init": { + "type": "AssignmentExpression", + "start": 150, + "end": 188, + "loc": { + "start": { + "line": 5, + "column": 15 + }, + "end": { + "line": 5, + "column": 53 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 150, + "end": 169, + "loc": { + "start": { + "line": 5, + "column": 15 + }, + "end": { + "line": 5, + "column": 34 + } + }, + "object": { + "type": "Identifier", + "start": 150, + "end": 156, + "loc": { + "start": { + "line": 5, + "column": 15 + }, + "end": { + "line": 5, + "column": 21 + }, + "identifierName": "TopEnv" + }, + "name": "TopEnv" + }, + "property": { + "type": "StringLiteral", + "start": 157, + "end": 168, + "loc": { + "start": { + "line": 5, + "column": 22 + }, + "end": { + "line": 5, + "column": 33 + } + }, + "extra": { + "rawValue": "__GREEN__", + "raw": "\"__GREEN__\"" + }, + "value": "__GREEN__" + }, + "computed": true + }, + "right": { + "type": "MemberExpression", + "start": 172, + "end": 188, + "loc": { + "start": { + "line": 5, + "column": 37 + }, + "end": { + "line": 5, + "column": 53 + } + }, + "object": { + "type": "MemberExpression", + "start": 172, + "end": 183, + "loc": { + "start": { + "line": 5, + "column": 37 + }, + "end": { + "line": 5, + "column": 48 + } + }, + "object": { + "type": "Identifier", + "start": 172, + "end": 177, + "loc": { + "start": { + "line": 5, + "column": 37 + }, + "end": { + "line": 5, + "column": 42 + }, + "identifierName": "style" + }, + "name": "style" + }, + "property": { + "type": "Identifier", + "start": 178, + "end": 183, + "loc": { + "start": { + "line": 5, + "column": 43 + }, + "end": { + "line": 5, + "column": 48 + }, + "identifierName": "green" + }, + "name": "green" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 184, + "end": 188, + "loc": { + "start": { + "line": 5, + "column": 49 + }, + "end": { + "line": 5, + "column": 53 + }, + "identifierName": "open" + }, + "name": "open" + }, + "computed": false + }, + "extra": { + "parenthesized": true, + "parenStart": 149 + } + } + } + ], + "kind": "const", + "leadingComments": [], + "trailingComments": [] + }, + "specifiers": null, + "source": null, + "leadingComments": null + }, + { + "type": "ExportNamedDeclaration", + "start": 380, + "end": 433, + "loc": { + "start": { + "line": 12, + "column": 0 + }, + "end": { + "line": 16, + "column": 12 + } + }, + "declaration": { + "type": "VariableDeclaration", + "start": 191, + "end": 249, + "loc": { + "start": { + "line": 6, + "column": 0 + }, + "end": { + "line": 6, + "column": 58 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 197, + "end": 248, + "loc": { + "start": { + "line": 6, + "column": 6 + }, + "end": { + "line": 6, + "column": 57 + } + }, + "id": { + "type": "Identifier", + "start": 197, + "end": 203, + "loc": { + "start": { + "line": 6, + "column": 6 + }, + "end": { + "line": 6, + "column": 12 + }, + "identifierName": "YELLOW" + }, + "name": "YELLOW" + }, + "init": { + "type": "AssignmentExpression", + "start": 207, + "end": 247, + "loc": { + "start": { + "line": 6, + "column": 16 + }, + "end": { + "line": 6, + "column": 56 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 207, + "end": 227, + "loc": { + "start": { + "line": 6, + "column": 16 + }, + "end": { + "line": 6, + "column": 36 + } + }, + "object": { + "type": "Identifier", + "start": 207, + "end": 213, + "loc": { + "start": { + "line": 6, + "column": 16 + }, + "end": { + "line": 6, + "column": 22 + }, + "identifierName": "TopEnv" + }, + "name": "TopEnv" + }, + "property": { + "type": "StringLiteral", + "start": 214, + "end": 226, + "loc": { + "start": { + "line": 6, + "column": 23 + }, + "end": { + "line": 6, + "column": 35 + } + }, + "extra": { + "rawValue": "__YELLOW__", + "raw": "\"__YELLOW__\"" + }, + "value": "__YELLOW__" + }, + "computed": true + }, + "right": { + "type": "MemberExpression", + "start": 230, + "end": 247, + "loc": { + "start": { + "line": 6, + "column": 39 + }, + "end": { + "line": 6, + "column": 56 + } + }, + "object": { + "type": "MemberExpression", + "start": 230, + "end": 242, + "loc": { + "start": { + "line": 6, + "column": 39 + }, + "end": { + "line": 6, + "column": 51 + } + }, + "object": { + "type": "Identifier", + "start": 230, + "end": 235, + "loc": { + "start": { + "line": 6, + "column": 39 + }, + "end": { + "line": 6, + "column": 44 + }, + "identifierName": "style" + }, + "name": "style" + }, + "property": { + "type": "Identifier", + "start": 236, + "end": 242, + "loc": { + "start": { + "line": 6, + "column": 45 + }, + "end": { + "line": 6, + "column": 51 + }, + "identifierName": "yellow" + }, + "name": "yellow" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 243, + "end": 247, + "loc": { + "start": { + "line": 6, + "column": 52 + }, + "end": { + "line": 6, + "column": 56 + }, + "identifierName": "open" }, - "identifierName": "YELLOW" + "name": "open" }, - "name": "YELLOW" + "computed": false }, "extra": { - "shorthand": true + "parenthesized": true, + "parenStart": 206 + } + } + } + ], + "kind": "const", + "leadingComments": [], + "trailingComments": [] + }, + "specifiers": null, + "source": null, + "leadingComments": null + }, + { + "type": "ExportNamedDeclaration", + "start": 380, + "end": 433, + "loc": { + "start": { + "line": 12, + "column": 0 + }, + "end": { + "line": 16, + "column": 12 + } + }, + "declaration": { + "type": "VariableDeclaration", + "start": 250, + "end": 302, + "loc": { + "start": { + "line": 7, + "column": 0 + }, + "end": { + "line": 7, + "column": 52 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 256, + "end": 301, + "loc": { + "start": { + "line": 7, + "column": 6 + }, + "end": { + "line": 7, + "column": 51 } }, - { - "type": "ObjectProperty", - "start": 437, - "end": 441, + "id": { + "type": "Identifier", + "start": 256, + "end": 260, "loc": { "start": { - "line": 16, - "column": 2 + "line": 7, + "column": 6 }, "end": { - "line": 16, - "column": 6 + "line": 7, + "column": 10 + }, + "identifierName": "BLUE" + }, + "name": "BLUE" + }, + "init": { + "type": "AssignmentExpression", + "start": 264, + "end": 300, + "loc": { + "start": { + "line": 7, + "column": 14 + }, + "end": { + "line": 7, + "column": 50 } }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 437, - "end": 441, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 264, + "end": 282, "loc": { "start": { - "line": 16, - "column": 2 + "line": 7, + "column": 14 }, "end": { - "line": 16, - "column": 6 + "line": 7, + "column": 32 + } + }, + "object": { + "type": "Identifier", + "start": 264, + "end": 270, + "loc": { + "start": { + "line": 7, + "column": 14 + }, + "end": { + "line": 7, + "column": 20 + }, + "identifierName": "TopEnv" + }, + "name": "TopEnv" + }, + "property": { + "type": "StringLiteral", + "start": 271, + "end": 281, + "loc": { + "start": { + "line": 7, + "column": 21 + }, + "end": { + "line": 7, + "column": 31 + } }, - "identifierName": "BLUE" + "extra": { + "rawValue": "__BLUE__", + "raw": "\"__BLUE__\"" + }, + "value": "__BLUE__" }, - "name": "BLUE" + "computed": true }, - "value": { - "type": "Identifier", - "start": 437, - "end": 441, + "right": { + "type": "MemberExpression", + "start": 285, + "end": 300, "loc": { "start": { - "line": 16, - "column": 2 + "line": 7, + "column": 35 }, "end": { - "line": 16, - "column": 6 + "line": 7, + "column": 50 + } + }, + "object": { + "type": "MemberExpression", + "start": 285, + "end": 295, + "loc": { + "start": { + "line": 7, + "column": 35 + }, + "end": { + "line": 7, + "column": 45 + } + }, + "object": { + "type": "Identifier", + "start": 285, + "end": 290, + "loc": { + "start": { + "line": 7, + "column": 35 + }, + "end": { + "line": 7, + "column": 40 + }, + "identifierName": "style" + }, + "name": "style" + }, + "property": { + "type": "Identifier", + "start": 291, + "end": 295, + "loc": { + "start": { + "line": 7, + "column": 41 + }, + "end": { + "line": 7, + "column": 45 + }, + "identifierName": "blue" + }, + "name": "blue" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 296, + "end": 300, + "loc": { + "start": { + "line": 7, + "column": 46 + }, + "end": { + "line": 7, + "column": 50 + }, + "identifierName": "open" }, - "identifierName": "BLUE" + "name": "open" }, - "name": "BLUE" + "computed": false }, "extra": { - "shorthand": true + "parenthesized": true, + "parenStart": 263 + } + } + } + ], + "kind": "const", + "leadingComments": [], + "trailingComments": [] + }, + "specifiers": null, + "source": null, + "leadingComments": null + }, + { + "type": "ExportNamedDeclaration", + "start": 380, + "end": 433, + "loc": { + "start": { + "line": 12, + "column": 0 + }, + "end": { + "line": 16, + "column": 12 + } + }, + "declaration": { + "type": "VariableDeclaration", + "start": 303, + "end": 359, + "loc": { + "start": { + "line": 8, + "column": 0 + }, + "end": { + "line": 8, + "column": 56 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 309, + "end": 358, + "loc": { + "start": { + "line": 8, + "column": 6 + }, + "end": { + "line": 8, + "column": 55 } }, - { - "type": "ObjectProperty", - "start": 445, - "end": 452, + "id": { + "type": "Identifier", + "start": 309, + "end": 316, + "loc": { + "start": { + "line": 8, + "column": 6 + }, + "end": { + "line": 8, + "column": 13 + }, + "identifierName": "DEFAULT" + }, + "name": "DEFAULT" + }, + "init": { + "type": "AssignmentExpression", + "start": 320, + "end": 357, "loc": { "start": { - "line": 17, - "column": 2 + "line": 8, + "column": 17 }, "end": { - "line": 17, - "column": 9 + "line": 8, + "column": 54 } }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 445, - "end": 452, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 320, + "end": 337, "loc": { "start": { - "line": 17, - "column": 2 + "line": 8, + "column": 17 }, "end": { - "line": 17, - "column": 9 + "line": 8, + "column": 34 + } + }, + "object": { + "type": "Identifier", + "start": 320, + "end": 326, + "loc": { + "start": { + "line": 8, + "column": 17 + }, + "end": { + "line": 8, + "column": 23 + }, + "identifierName": "TopEnv" + }, + "name": "TopEnv" + }, + "property": { + "type": "StringLiteral", + "start": 327, + "end": 336, + "loc": { + "start": { + "line": 8, + "column": 24 + }, + "end": { + "line": 8, + "column": 33 + } + }, + "extra": { + "rawValue": "__DEF__", + "raw": "\"__DEF__\"" }, - "identifierName": "DEFAULT" + "value": "__DEF__" }, - "name": "DEFAULT" + "computed": true }, - "value": { - "type": "Identifier", - "start": 445, - "end": 452, + "right": { + "type": "MemberExpression", + "start": 340, + "end": 357, "loc": { "start": { - "line": 17, - "column": 2 + "line": 8, + "column": 37 }, "end": { - "line": 17, - "column": 9 + "line": 8, + "column": 54 + } + }, + "object": { + "type": "MemberExpression", + "start": 340, + "end": 351, + "loc": { + "start": { + "line": 8, + "column": 37 + }, + "end": { + "line": 8, + "column": 48 + } + }, + "object": { + "type": "Identifier", + "start": 340, + "end": 345, + "loc": { + "start": { + "line": 8, + "column": 37 + }, + "end": { + "line": 8, + "column": 42 + }, + "identifierName": "style" + }, + "name": "style" + }, + "property": { + "type": "Identifier", + "start": 346, + "end": 351, + "loc": { + "start": { + "line": 8, + "column": 43 + }, + "end": { + "line": 8, + "column": 48 + }, + "identifierName": "color" + }, + "name": "color" + }, + "computed": false + }, + "property": { + "type": "Identifier", + "start": 352, + "end": 357, + "loc": { + "start": { + "line": 8, + "column": 49 + }, + "end": { + "line": 8, + "column": 54 + }, + "identifierName": "close" }, - "identifierName": "DEFAULT" + "name": "close" }, - "name": "DEFAULT" + "computed": false }, "extra": { - "shorthand": true + "parenthesized": true, + "parenStart": 319 } } - ] - } - } + } + ], + "kind": "const", + "leadingComments": [], + "trailingComments": [] + }, + "specifiers": null, + "source": null, + "leadingComments": null } ], "directives": [] @@ -1800,10 +2728,10 @@ "tokens": [ { "type": { - "label": "const", - "keyword": "const", + "label": "import", + "keyword": "import", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -1812,9 +2740,9 @@ "binop": null, "updateContext": null }, - "value": "const", + "value": "import", "start": 0, - "end": 5, + "end": 6, "loc": { "start": { "line": 1, @@ -1822,7 +2750,7 @@ }, "end": { "line": 1, - "column": 5 + "column": 6 } } }, @@ -1838,16 +2766,16 @@ "postfix": false, "binop": null }, - "start": 6, - "end": 7, + "start": 7, + "end": 8, "loc": { "start": { "line": 1, - "column": 6 + "column": 7 }, "end": { "line": 1, - "column": 7 + "column": 8 } } }, @@ -1864,16 +2792,16 @@ "binop": null }, "value": "TopEnv", - "start": 8, - "end": 14, + "start": 9, + "end": 15, "loc": { "start": { "line": 1, - "column": 8 + "column": 9 }, "end": { "line": 1, - "column": 14 + "column": 15 } } }, @@ -1889,43 +2817,16 @@ "postfix": false, "binop": null }, - "start": 15, - "end": 16, + "start": 16, + "end": 17, "loc": { "start": { - "line": 1, - "column": 15 - }, - "end": { "line": 1, "column": 16 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 17, - "end": 18, - "loc": { - "start": { - "line": 1, - "column": 17 }, "end": { "line": 1, - "column": 18 + "column": 17 } } }, @@ -1941,42 +2842,17 @@ "postfix": false, "binop": null }, - "value": "require", - "start": 19, - "end": 26, - "loc": { - "start": { - "line": 1, - "column": 19 - }, - "end": { - "line": 1, - "column": 26 - } - } - }, - { - "type": { - "label": "(", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 26, - "end": 27, + "value": "from", + "start": 18, + "end": 22, "loc": { "start": { "line": 1, - "column": 26 + "column": 18 }, "end": { "line": 1, - "column": 27 + "column": 22 } } }, @@ -1994,41 +2870,16 @@ "updateContext": null }, "value": "../interp/environment.js", - "start": 27, - "end": 53, - "loc": { - "start": { - "line": 1, - "column": 27 - }, - "end": { - "line": 1, - "column": 53 - } - } - }, - { - "type": { - "label": ")", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 53, - "end": 54, + "start": 23, + "end": 49, "loc": { "start": { "line": 1, - "column": 53 + "column": 23 }, "end": { "line": 1, - "column": 54 + "column": 49 } } }, @@ -2045,25 +2896,25 @@ "binop": null, "updateContext": null }, - "start": 54, - "end": 55, + "start": 49, + "end": 50, "loc": { "start": { "line": 1, - "column": 54 + "column": 49 }, "end": { "line": 1, - "column": 55 + "column": 50 } } }, { "type": { - "label": "const", - "keyword": "const", + "label": "import", + "keyword": "import", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -2072,9 +2923,9 @@ "binop": null, "updateContext": null }, - "value": "const", - "start": 56, - "end": 61, + "value": "import", + "start": 51, + "end": 57, "loc": { "start": { "line": 2, @@ -2082,7 +2933,7 @@ }, "end": { "line": 2, - "column": 5 + "column": 6 } } }, @@ -2099,43 +2950,16 @@ "binop": null }, "value": "style", - "start": 62, - "end": 67, + "start": 58, + "end": 63, "loc": { "start": { "line": 2, - "column": 6 + "column": 7 }, "end": { - "line": 2, - "column": 11 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 68, - "end": 69, - "loc": { - "start": { "line": 2, "column": 12 - }, - "end": { - "line": 2, - "column": 13 } } }, @@ -2151,42 +2975,17 @@ "postfix": false, "binop": null }, - "value": "require", - "start": 70, - "end": 77, - "loc": { - "start": { - "line": 2, - "column": 14 - }, - "end": { - "line": 2, - "column": 21 - } - } - }, - { - "type": { - "label": "(", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 77, - "end": 78, + "value": "from", + "start": 64, + "end": 68, "loc": { "start": { "line": 2, - "column": 21 + "column": 13 }, "end": { "line": 2, - "column": 22 + "column": 17 } } }, @@ -2204,41 +3003,16 @@ "updateContext": null }, "value": "ansi-styles", - "start": 78, - "end": 91, - "loc": { - "start": { - "line": 2, - "column": 22 - }, - "end": { - "line": 2, - "column": 35 - } - } - }, - { - "type": { - "label": ")", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 91, - "end": 92, + "start": 69, + "end": 82, "loc": { "start": { "line": 2, - "column": 35 + "column": 18 }, "end": { "line": 2, - "column": 36 + "column": 31 } } }, @@ -2255,16 +3029,16 @@ "binop": null, "updateContext": null }, - "start": 92, - "end": 93, + "start": 82, + "end": 83, "loc": { "start": { "line": 2, - "column": 36 + "column": 31 }, "end": { "line": 2, - "column": 37 + "column": 32 } } }, @@ -2283,8 +3057,8 @@ "updateContext": null }, "value": "const", - "start": 95, - "end": 100, + "start": 85, + "end": 90, "loc": { "start": { "line": 4, @@ -2309,8 +3083,8 @@ "binop": null }, "value": "RED", - "start": 101, - "end": 104, + "start": 91, + "end": 94, "loc": { "start": { "line": 4, @@ -2336,8 +3110,8 @@ "updateContext": null }, "value": "=", - "start": 105, - "end": 106, + "start": 95, + "end": 96, "loc": { "start": { "line": 4, @@ -2361,8 +3135,8 @@ "postfix": false, "binop": null }, - "start": 107, - "end": 108, + "start": 97, + "end": 98, "loc": { "start": { "line": 4, @@ -2387,8 +3161,8 @@ "binop": null }, "value": "TopEnv", - "start": 108, - "end": 114, + "start": 98, + "end": 104, "loc": { "start": { "line": 4, @@ -2413,8 +3187,8 @@ "binop": null, "updateContext": null }, - "start": 114, - "end": 115, + "start": 104, + "end": 105, "loc": { "start": { "line": 4, @@ -2440,8 +3214,8 @@ "updateContext": null }, "value": "__RED__", - "start": 115, - "end": 124, + "start": 105, + "end": 114, "loc": { "start": { "line": 4, @@ -2466,8 +3240,8 @@ "binop": null, "updateContext": null }, - "start": 124, - "end": 125, + "start": 114, + "end": 115, "loc": { "start": { "line": 4, @@ -2493,8 +3267,8 @@ "updateContext": null }, "value": "=", - "start": 126, - "end": 127, + "start": 116, + "end": 117, "loc": { "start": { "line": 4, @@ -2519,8 +3293,8 @@ "binop": null }, "value": "style", - "start": 128, - "end": 133, + "start": 118, + "end": 123, "loc": { "start": { "line": 4, @@ -2545,8 +3319,8 @@ "binop": null, "updateContext": null }, - "start": 133, - "end": 134, + "start": 123, + "end": 124, "loc": { "start": { "line": 4, @@ -2571,8 +3345,8 @@ "binop": null }, "value": "red", - "start": 134, - "end": 137, + "start": 124, + "end": 127, "loc": { "start": { "line": 4, @@ -2597,8 +3371,8 @@ "binop": null, "updateContext": null }, - "start": 137, - "end": 138, + "start": 127, + "end": 128, "loc": { "start": { "line": 4, @@ -2623,8 +3397,8 @@ "binop": null }, "value": "open", - "start": 138, - "end": 142, + "start": 128, + "end": 132, "loc": { "start": { "line": 4, @@ -2648,8 +3422,8 @@ "postfix": false, "binop": null }, - "start": 142, - "end": 143, + "start": 132, + "end": 133, "loc": { "start": { "line": 4, @@ -2674,8 +3448,8 @@ "binop": null, "updateContext": null }, - "start": 143, - "end": 144, + "start": 133, + "end": 134, "loc": { "start": { "line": 4, @@ -2702,8 +3476,8 @@ "updateContext": null }, "value": "const", - "start": 145, - "end": 150, + "start": 135, + "end": 140, "loc": { "start": { "line": 5, @@ -2728,8 +3502,8 @@ "binop": null }, "value": "GREEN", - "start": 151, - "end": 156, + "start": 141, + "end": 146, "loc": { "start": { "line": 5, @@ -2755,8 +3529,8 @@ "updateContext": null }, "value": "=", - "start": 157, - "end": 158, + "start": 147, + "end": 148, "loc": { "start": { "line": 5, @@ -2780,8 +3554,8 @@ "postfix": false, "binop": null }, - "start": 159, - "end": 160, + "start": 149, + "end": 150, "loc": { "start": { "line": 5, @@ -2806,8 +3580,8 @@ "binop": null }, "value": "TopEnv", - "start": 160, - "end": 166, + "start": 150, + "end": 156, "loc": { "start": { "line": 5, @@ -2832,8 +3606,8 @@ "binop": null, "updateContext": null }, - "start": 166, - "end": 167, + "start": 156, + "end": 157, "loc": { "start": { "line": 5, @@ -2859,8 +3633,8 @@ "updateContext": null }, "value": "__GREEN__", - "start": 167, - "end": 178, + "start": 157, + "end": 168, "loc": { "start": { "line": 5, @@ -2885,8 +3659,8 @@ "binop": null, "updateContext": null }, - "start": 178, - "end": 179, + "start": 168, + "end": 169, "loc": { "start": { "line": 5, @@ -2912,8 +3686,8 @@ "updateContext": null }, "value": "=", - "start": 180, - "end": 181, + "start": 170, + "end": 171, "loc": { "start": { "line": 5, @@ -2938,8 +3712,8 @@ "binop": null }, "value": "style", - "start": 182, - "end": 187, + "start": 172, + "end": 177, "loc": { "start": { "line": 5, @@ -2964,8 +3738,8 @@ "binop": null, "updateContext": null }, - "start": 187, - "end": 188, + "start": 177, + "end": 178, "loc": { "start": { "line": 5, @@ -2990,8 +3764,8 @@ "binop": null }, "value": "green", - "start": 188, - "end": 193, + "start": 178, + "end": 183, "loc": { "start": { "line": 5, @@ -3016,8 +3790,8 @@ "binop": null, "updateContext": null }, - "start": 193, - "end": 194, + "start": 183, + "end": 184, "loc": { "start": { "line": 5, @@ -3042,8 +3816,8 @@ "binop": null }, "value": "open", - "start": 194, - "end": 198, + "start": 184, + "end": 188, "loc": { "start": { "line": 5, @@ -3067,8 +3841,8 @@ "postfix": false, "binop": null }, - "start": 198, - "end": 199, + "start": 188, + "end": 189, "loc": { "start": { "line": 5, @@ -3093,8 +3867,8 @@ "binop": null, "updateContext": null }, - "start": 199, - "end": 200, + "start": 189, + "end": 190, "loc": { "start": { "line": 5, @@ -3121,8 +3895,8 @@ "updateContext": null }, "value": "const", - "start": 201, - "end": 206, + "start": 191, + "end": 196, "loc": { "start": { "line": 6, @@ -3147,8 +3921,8 @@ "binop": null }, "value": "YELLOW", - "start": 207, - "end": 213, + "start": 197, + "end": 203, "loc": { "start": { "line": 6, @@ -3174,8 +3948,8 @@ "updateContext": null }, "value": "=", - "start": 214, - "end": 215, + "start": 204, + "end": 205, "loc": { "start": { "line": 6, @@ -3199,8 +3973,8 @@ "postfix": false, "binop": null }, - "start": 216, - "end": 217, + "start": 206, + "end": 207, "loc": { "start": { "line": 6, @@ -3225,8 +3999,8 @@ "binop": null }, "value": "TopEnv", - "start": 217, - "end": 223, + "start": 207, + "end": 213, "loc": { "start": { "line": 6, @@ -3251,8 +4025,8 @@ "binop": null, "updateContext": null }, - "start": 223, - "end": 224, + "start": 213, + "end": 214, "loc": { "start": { "line": 6, @@ -3278,8 +4052,8 @@ "updateContext": null }, "value": "__YELLOW__", - "start": 224, - "end": 236, + "start": 214, + "end": 226, "loc": { "start": { "line": 6, @@ -3304,8 +4078,8 @@ "binop": null, "updateContext": null }, - "start": 236, - "end": 237, + "start": 226, + "end": 227, "loc": { "start": { "line": 6, @@ -3331,8 +4105,8 @@ "updateContext": null }, "value": "=", - "start": 238, - "end": 239, + "start": 228, + "end": 229, "loc": { "start": { "line": 6, @@ -3357,8 +4131,8 @@ "binop": null }, "value": "style", - "start": 240, - "end": 245, + "start": 230, + "end": 235, "loc": { "start": { "line": 6, @@ -3383,8 +4157,8 @@ "binop": null, "updateContext": null }, - "start": 245, - "end": 246, + "start": 235, + "end": 236, "loc": { "start": { "line": 6, @@ -3409,8 +4183,8 @@ "binop": null }, "value": "yellow", - "start": 246, - "end": 252, + "start": 236, + "end": 242, "loc": { "start": { "line": 6, @@ -3435,8 +4209,8 @@ "binop": null, "updateContext": null }, - "start": 252, - "end": 253, + "start": 242, + "end": 243, "loc": { "start": { "line": 6, @@ -3461,8 +4235,8 @@ "binop": null }, "value": "open", - "start": 253, - "end": 257, + "start": 243, + "end": 247, "loc": { "start": { "line": 6, @@ -3486,8 +4260,8 @@ "postfix": false, "binop": null }, - "start": 257, - "end": 258, + "start": 247, + "end": 248, "loc": { "start": { "line": 6, @@ -3512,8 +4286,8 @@ "binop": null, "updateContext": null }, - "start": 258, - "end": 259, + "start": 248, + "end": 249, "loc": { "start": { "line": 6, @@ -3540,8 +4314,8 @@ "updateContext": null }, "value": "const", - "start": 260, - "end": 265, + "start": 250, + "end": 255, "loc": { "start": { "line": 7, @@ -3566,8 +4340,8 @@ "binop": null }, "value": "BLUE", - "start": 266, - "end": 270, + "start": 256, + "end": 260, "loc": { "start": { "line": 7, @@ -3593,8 +4367,8 @@ "updateContext": null }, "value": "=", - "start": 271, - "end": 272, + "start": 261, + "end": 262, "loc": { "start": { "line": 7, @@ -3618,8 +4392,8 @@ "postfix": false, "binop": null }, - "start": 273, - "end": 274, + "start": 263, + "end": 264, "loc": { "start": { "line": 7, @@ -3644,8 +4418,8 @@ "binop": null }, "value": "TopEnv", - "start": 274, - "end": 280, + "start": 264, + "end": 270, "loc": { "start": { "line": 7, @@ -3670,8 +4444,8 @@ "binop": null, "updateContext": null }, - "start": 280, - "end": 281, + "start": 270, + "end": 271, "loc": { "start": { "line": 7, @@ -3697,8 +4471,8 @@ "updateContext": null }, "value": "__BLUE__", - "start": 281, - "end": 291, + "start": 271, + "end": 281, "loc": { "start": { "line": 7, @@ -3723,8 +4497,8 @@ "binop": null, "updateContext": null }, - "start": 291, - "end": 292, + "start": 281, + "end": 282, "loc": { "start": { "line": 7, @@ -3750,8 +4524,8 @@ "updateContext": null }, "value": "=", - "start": 293, - "end": 294, + "start": 283, + "end": 284, "loc": { "start": { "line": 7, @@ -3776,8 +4550,8 @@ "binop": null }, "value": "style", - "start": 295, - "end": 300, + "start": 285, + "end": 290, "loc": { "start": { "line": 7, @@ -3802,8 +4576,8 @@ "binop": null, "updateContext": null }, - "start": 300, - "end": 301, + "start": 290, + "end": 291, "loc": { "start": { "line": 7, @@ -3828,8 +4602,8 @@ "binop": null }, "value": "blue", - "start": 301, - "end": 305, + "start": 291, + "end": 295, "loc": { "start": { "line": 7, @@ -3854,8 +4628,8 @@ "binop": null, "updateContext": null }, - "start": 305, - "end": 306, + "start": 295, + "end": 296, "loc": { "start": { "line": 7, @@ -3880,8 +4654,8 @@ "binop": null }, "value": "open", - "start": 306, - "end": 310, + "start": 296, + "end": 300, "loc": { "start": { "line": 7, @@ -3905,8 +4679,8 @@ "postfix": false, "binop": null }, - "start": 310, - "end": 311, + "start": 300, + "end": 301, "loc": { "start": { "line": 7, @@ -3931,8 +4705,8 @@ "binop": null, "updateContext": null }, - "start": 311, - "end": 312, + "start": 301, + "end": 302, "loc": { "start": { "line": 7, @@ -3959,8 +4733,8 @@ "updateContext": null }, "value": "const", - "start": 313, - "end": 318, + "start": 303, + "end": 308, "loc": { "start": { "line": 8, @@ -3985,8 +4759,8 @@ "binop": null }, "value": "DEFAULT", - "start": 319, - "end": 326, + "start": 309, + "end": 316, "loc": { "start": { "line": 8, @@ -4012,8 +4786,8 @@ "updateContext": null }, "value": "=", - "start": 327, - "end": 328, + "start": 317, + "end": 318, "loc": { "start": { "line": 8, @@ -4037,8 +4811,8 @@ "postfix": false, "binop": null }, - "start": 329, - "end": 330, + "start": 319, + "end": 320, "loc": { "start": { "line": 8, @@ -4063,8 +4837,8 @@ "binop": null }, "value": "TopEnv", - "start": 330, - "end": 336, + "start": 320, + "end": 326, "loc": { "start": { "line": 8, @@ -4089,8 +4863,8 @@ "binop": null, "updateContext": null }, - "start": 336, - "end": 337, + "start": 326, + "end": 327, "loc": { "start": { "line": 8, @@ -4116,8 +4890,8 @@ "updateContext": null }, "value": "__DEF__", - "start": 337, - "end": 346, + "start": 327, + "end": 336, "loc": { "start": { "line": 8, @@ -4142,8 +4916,8 @@ "binop": null, "updateContext": null }, - "start": 346, - "end": 347, + "start": 336, + "end": 337, "loc": { "start": { "line": 8, @@ -4169,8 +4943,8 @@ "updateContext": null }, "value": "=", - "start": 348, - "end": 349, + "start": 338, + "end": 339, "loc": { "start": { "line": 8, @@ -4195,8 +4969,8 @@ "binop": null }, "value": "style", - "start": 350, - "end": 355, + "start": 340, + "end": 345, "loc": { "start": { "line": 8, @@ -4221,8 +4995,8 @@ "binop": null, "updateContext": null }, - "start": 355, - "end": 356, + "start": 345, + "end": 346, "loc": { "start": { "line": 8, @@ -4247,8 +5021,8 @@ "binop": null }, "value": "color", - "start": 356, - "end": 361, + "start": 346, + "end": 351, "loc": { "start": { "line": 8, @@ -4273,8 +5047,8 @@ "binop": null, "updateContext": null }, - "start": 361, - "end": 362, + "start": 351, + "end": 352, "loc": { "start": { "line": 8, @@ -4299,8 +5073,8 @@ "binop": null }, "value": "close", - "start": 362, - "end": 367, + "start": 352, + "end": 357, "loc": { "start": { "line": 8, @@ -4324,8 +5098,8 @@ "postfix": false, "binop": null }, - "start": 367, - "end": 368, + "start": 357, + "end": 358, "loc": { "start": { "line": 8, @@ -4350,8 +5124,8 @@ "binop": null, "updateContext": null }, - "start": 368, - "end": 369, + "start": 358, + "end": 359, "loc": { "start": { "line": 8, @@ -4376,8 +5150,8 @@ "binop": null }, "value": "console", - "start": 371, - "end": 378, + "start": 361, + "end": 368, "loc": { "start": { "line": 10, @@ -4402,8 +5176,8 @@ "binop": null, "updateContext": null }, - "start": 378, - "end": 379, + "start": 368, + "end": 369, "loc": { "start": { "line": 10, @@ -4428,8 +5202,8 @@ "binop": null }, "value": "log", - "start": 379, - "end": 382, + "start": 369, + "end": 372, "loc": { "start": { "line": 10, @@ -4453,8 +5227,8 @@ "postfix": false, "binop": null }, - "start": 382, - "end": 383, + "start": 372, + "end": 373, "loc": { "start": { "line": 10, @@ -4479,8 +5253,8 @@ "binop": null }, "value": "RED", - "start": 383, - "end": 386, + "start": 373, + "end": 376, "loc": { "start": { "line": 10, @@ -4504,8 +5278,8 @@ "postfix": false, "binop": null }, - "start": 386, - "end": 387, + "start": 376, + "end": 377, "loc": { "start": { "line": 10, @@ -4530,8 +5304,8 @@ "binop": null, "updateContext": null }, - "start": 387, - "end": 388, + "start": 377, + "end": 378, "loc": { "start": { "line": 10, @@ -4545,33 +5319,8 @@ }, { "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "module", - "start": 390, - "end": 396, - "loc": { - "start": { - "line": 12, - "column": 0 - }, - "end": { - "line": 12, - "column": 6 - } - } - }, - { - "type": { - "label": ".", + "label": "export", + "keyword": "export", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, @@ -4582,69 +5331,17 @@ "binop": null, "updateContext": null }, - "start": 396, - "end": 397, - "loc": { - "start": { - "line": 12, - "column": 6 - }, - "end": { - "line": 12, - "column": 7 - } - } - }, - { - "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "exports", - "start": 397, - "end": 404, - "loc": { - "start": { - "line": 12, - "column": 7 - }, - "end": { - "line": 12, - "column": 14 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 405, - "end": 406, + "value": "export", + "start": 380, + "end": 386, "loc": { "start": { "line": 12, - "column": 15 + "column": 0 }, "end": { "line": 12, - "column": 16 + "column": 6 } } }, @@ -4660,16 +5357,16 @@ "postfix": false, "binop": null }, - "start": 407, - "end": 408, + "start": 387, + "end": 388, "loc": { "start": { "line": 12, - "column": 17 + "column": 7 }, "end": { "line": 12, - "column": 18 + "column": 8 } } }, @@ -4686,16 +5383,16 @@ "binop": null }, "value": "RED", - "start": 411, - "end": 414, + "start": 389, + "end": 392, "loc": { "start": { - "line": 13, - "column": 2 + "line": 12, + "column": 9 }, "end": { - "line": 13, - "column": 5 + "line": 12, + "column": 12 } } }, @@ -4712,16 +5409,16 @@ "binop": null, "updateContext": null }, - "start": 414, - "end": 415, + "start": 392, + "end": 393, "loc": { "start": { - "line": 13, - "column": 5 + "line": 12, + "column": 12 }, "end": { - "line": 13, - "column": 6 + "line": 12, + "column": 13 } } }, @@ -4738,15 +5435,15 @@ "binop": null }, "value": "GREEN", - "start": 418, - "end": 423, + "start": 396, + "end": 401, "loc": { "start": { - "line": 14, + "line": 13, "column": 2 }, "end": { - "line": 14, + "line": 13, "column": 7 } } @@ -4764,15 +5461,15 @@ "binop": null, "updateContext": null }, - "start": 423, - "end": 424, + "start": 401, + "end": 402, "loc": { "start": { - "line": 14, + "line": 13, "column": 7 }, "end": { - "line": 14, + "line": 13, "column": 8 } } @@ -4790,15 +5487,15 @@ "binop": null }, "value": "YELLOW", - "start": 427, - "end": 433, + "start": 405, + "end": 411, "loc": { "start": { - "line": 15, + "line": 14, "column": 2 }, "end": { - "line": 15, + "line": 14, "column": 8 } } @@ -4816,15 +5513,15 @@ "binop": null, "updateContext": null }, - "start": 433, - "end": 434, + "start": 411, + "end": 412, "loc": { "start": { - "line": 15, + "line": 14, "column": 8 }, "end": { - "line": 15, + "line": 14, "column": 9 } } @@ -4842,15 +5539,15 @@ "binop": null }, "value": "BLUE", - "start": 437, - "end": 441, + "start": 415, + "end": 419, "loc": { "start": { - "line": 16, + "line": 15, "column": 2 }, "end": { - "line": 16, + "line": 15, "column": 6 } } @@ -4868,15 +5565,15 @@ "binop": null, "updateContext": null }, - "start": 441, - "end": 442, + "start": 419, + "end": 420, "loc": { "start": { - "line": 16, + "line": 15, "column": 6 }, "end": { - "line": 16, + "line": 15, "column": 7 } } @@ -4894,15 +5591,15 @@ "binop": null }, "value": "DEFAULT", - "start": 445, - "end": 452, + "start": 423, + "end": 430, "loc": { "start": { - "line": 17, + "line": 16, "column": 2 }, "end": { - "line": 17, + "line": 16, "column": 9 } } @@ -4919,16 +5616,16 @@ "postfix": false, "binop": null }, - "start": 453, - "end": 454, + "start": 431, + "end": 432, "loc": { "start": { - "line": 18, - "column": 0 + "line": 16, + "column": 10 }, "end": { - "line": 18, - "column": 1 + "line": 16, + "column": 11 } } }, @@ -4945,16 +5642,16 @@ "binop": null, "updateContext": null }, - "start": 454, - "end": 455, + "start": 432, + "end": 433, "loc": { "start": { - "line": 18, - "column": 1 + "line": 16, + "column": 11 }, "end": { - "line": 18, - "column": 2 + "line": 16, + "column": 12 } } }, @@ -4971,15 +5668,15 @@ "binop": null, "updateContext": null }, - "start": 456, - "end": 456, + "start": 434, + "end": 434, "loc": { "start": { - "line": 19, + "line": 17, "column": 0 }, "end": { - "line": 19, + "line": 17, "column": 0 } } diff --git a/docs/ast/source/repl/extensions.js.json b/docs/ast/source/repl/extensions.js.json index f8dc376..8d5c0c9 100644 --- a/docs/ast/source/repl/extensions.js.json +++ b/docs/ast/source/repl/extensions.js.json @@ -1,37 +1,37 @@ { "type": "File", "start": 0, - "end": 3131, + "end": 3089, "loc": { "start": { "line": 1, "column": 0 }, "end": { - "line": 138, + "line": 136, "column": 0 } }, "program": { "type": "Program", "start": 0, - "end": 3131, + "end": 3089, "loc": { "start": { "line": 1, "column": 0 }, "end": { - "line": 138, + "line": 136, "column": 0 } }, "sourceType": "module", "body": [ { - "type": "VariableDeclaration", + "type": "ImportDeclaration", "start": 0, - "end": 35, + "end": 30, "loc": { "start": { "line": 1, @@ -39,103 +39,68 @@ }, "end": { "line": 1, - "column": 35 + "column": 30 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 6, - "end": 34, + "type": "ImportDefaultSpecifier", + "start": 7, + "end": 14, "loc": { "start": { "line": 1, - "column": 6 + "column": 7 }, "end": { "line": 1, - "column": 34 + "column": 14 } }, - "id": { + "local": { "type": "Identifier", - "start": 6, - "end": 13, + "start": 7, + "end": 14, "loc": { "start": { "line": 1, - "column": 6 + "column": 7 }, "end": { "line": 1, - "column": 13 + "column": 14 }, "identifierName": "process" }, "name": "process" - }, - "init": { - "type": "CallExpression", - "start": 16, - "end": 34, - "loc": { - "start": { - "line": 1, - "column": 16 - }, - "end": { - "line": 1, - "column": 34 - } - }, - "callee": { - "type": "Identifier", - "start": 16, - "end": 23, - "loc": { - "start": { - "line": 1, - "column": 16 - }, - "end": { - "line": 1, - "column": 23 - }, - "identifierName": "require" - }, - "name": "require" - }, - "arguments": [ - { - "type": "StringLiteral", - "start": 24, - "end": 33, - "loc": { - "start": { - "line": 1, - "column": 24 - }, - "end": { - "line": 1, - "column": 33 - } - }, - "extra": { - "rawValue": "process", - "raw": "\"process\"" - }, - "value": "process" - } - ] } } ], - "kind": "const" + "source": { + "type": "StringLiteral", + "start": 20, + "end": 29, + "loc": { + "start": { + "line": 1, + "column": 20 + }, + "end": { + "line": 1, + "column": 29 + } + }, + "extra": { + "rawValue": "process", + "raw": "\"process\"" + }, + "value": "process" + } }, { - "type": "VariableDeclaration", - "start": 36, - "end": 61, + "type": "ImportDeclaration", + "start": 31, + "end": 51, "loc": { "start": { "line": 2, @@ -143,103 +108,68 @@ }, "end": { "line": 2, - "column": 25 + "column": 20 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 42, - "end": 60, + "type": "ImportDefaultSpecifier", + "start": 38, + "end": 40, "loc": { "start": { "line": 2, - "column": 6 + "column": 7 }, "end": { "line": 2, - "column": 24 + "column": 9 } }, - "id": { + "local": { "type": "Identifier", - "start": 42, - "end": 44, + "start": 38, + "end": 40, "loc": { "start": { "line": 2, - "column": 6 + "column": 7 }, "end": { "line": 2, - "column": 8 + "column": 9 }, "identifierName": "fs" }, "name": "fs" - }, - "init": { - "type": "CallExpression", - "start": 47, - "end": 60, - "loc": { - "start": { - "line": 2, - "column": 11 - }, - "end": { - "line": 2, - "column": 24 - } - }, - "callee": { - "type": "Identifier", - "start": 47, - "end": 54, - "loc": { - "start": { - "line": 2, - "column": 11 - }, - "end": { - "line": 2, - "column": 18 - }, - "identifierName": "require" - }, - "name": "require" - }, - "arguments": [ - { - "type": "StringLiteral", - "start": 55, - "end": 59, - "loc": { - "start": { - "line": 2, - "column": 19 - }, - "end": { - "line": 2, - "column": 23 - } - }, - "extra": { - "rawValue": "fs", - "raw": "\"fs\"" - }, - "value": "fs" - } - ] } } ], - "kind": "const" + "source": { + "type": "StringLiteral", + "start": 46, + "end": 50, + "loc": { + "start": { + "line": 2, + "column": 15 + }, + "end": { + "line": 2, + "column": 19 + } + }, + "extra": { + "rawValue": "fs", + "raw": "\"fs\"" + }, + "value": "fs" + } }, { - "type": "VariableDeclaration", - "start": 63, - "end": 121, + "type": "ImportDeclaration", + "start": 53, + "end": 106, "loc": { "start": { "line": 4, @@ -247,158 +177,85 @@ }, "end": { "line": 4, - "column": 58 + "column": 53 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 69, - "end": 120, + "type": "ImportSpecifier", + "start": 62, + "end": 74, "loc": { "start": { "line": 4, - "column": 6 + "column": 9 }, "end": { "line": 4, - "column": 57 + "column": 21 } }, - "id": { - "type": "ObjectPattern", - "start": 69, - "end": 85, + "imported": { + "type": "Identifier", + "start": 62, + "end": 74, "loc": { "start": { "line": 4, - "column": 6 + "column": 9 }, "end": { "line": 4, - "column": 22 - } + "column": 21 + }, + "identifierName": "SpecialForms" }, - "properties": [ - { - "type": "ObjectProperty", - "start": 71, - "end": 83, - "loc": { - "start": { - "line": 4, - "column": 8 - }, - "end": { - "line": 4, - "column": 20 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 71, - "end": 83, - "loc": { - "start": { - "line": 4, - "column": 8 - }, - "end": { - "line": 4, - "column": 20 - }, - "identifierName": "SpecialForms" - }, - "name": "SpecialForms" - }, - "value": { - "type": "Identifier", - "start": 71, - "end": 83, - "loc": { - "start": { - "line": 4, - "column": 8 - }, - "end": { - "line": 4, - "column": 20 - }, - "identifierName": "SpecialForms" - }, - "name": "SpecialForms" - }, - "extra": { - "shorthand": true - } - } - ] + "name": "SpecialForms" }, - "init": { - "type": "CallExpression", - "start": 88, - "end": 120, + "local": { + "type": "Identifier", + "start": 62, + "end": 74, "loc": { "start": { "line": 4, - "column": 25 + "column": 9 }, "end": { "line": 4, - "column": 57 - } - }, - "callee": { - "type": "Identifier", - "start": 88, - "end": 95, - "loc": { - "start": { - "line": 4, - "column": 25 - }, - "end": { - "line": 4, - "column": 32 - }, - "identifierName": "require" + "column": 21 }, - "name": "require" + "identifierName": "SpecialForms" }, - "arguments": [ - { - "type": "StringLiteral", - "start": 96, - "end": 119, - "loc": { - "start": { - "line": 4, - "column": 33 - }, - "end": { - "line": 4, - "column": 56 - } - }, - "extra": { - "rawValue": "../interp/registry.js", - "raw": "\"../interp/registry.js\"" - }, - "value": "../interp/registry.js" - } - ] + "name": "SpecialForms" } } ], - "kind": "const" + "source": { + "type": "StringLiteral", + "start": 82, + "end": 105, + "loc": { + "start": { + "line": 4, + "column": 29 + }, + "end": { + "line": 4, + "column": 52 + } + }, + "extra": { + "rawValue": "../interp/registry.js", + "raw": "\"../interp/registry.js\"" + }, + "value": "../interp/registry.js" + } }, { - "type": "VariableDeclaration", - "start": 122, - "end": 177, + "type": "ImportDeclaration", + "start": 107, + "end": 157, "loc": { "start": { "line": 5, @@ -406,158 +263,85 @@ }, "end": { "line": 5, - "column": 55 + "column": 50 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 128, - "end": 176, + "type": "ImportSpecifier", + "start": 116, + "end": 122, "loc": { "start": { "line": 5, - "column": 6 + "column": 9 }, "end": { "line": 5, - "column": 54 + "column": 15 } }, - "id": { - "type": "ObjectPattern", - "start": 128, - "end": 138, + "imported": { + "type": "Identifier", + "start": 116, + "end": 122, "loc": { "start": { "line": 5, - "column": 6 + "column": 9 }, "end": { "line": 5, - "column": 16 - } + "column": 15 + }, + "identifierName": "TopEnv" }, - "properties": [ - { - "type": "ObjectProperty", - "start": 130, - "end": 136, - "loc": { - "start": { - "line": 5, - "column": 8 - }, - "end": { - "line": 5, - "column": 14 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 130, - "end": 136, - "loc": { - "start": { - "line": 5, - "column": 8 - }, - "end": { - "line": 5, - "column": 14 - }, - "identifierName": "TopEnv" - }, - "name": "TopEnv" - }, - "value": { - "type": "Identifier", - "start": 130, - "end": 136, - "loc": { - "start": { - "line": 5, - "column": 8 - }, - "end": { - "line": 5, - "column": 14 - }, - "identifierName": "TopEnv" - }, - "name": "TopEnv" - }, - "extra": { - "shorthand": true - } - } - ] + "name": "TopEnv" }, - "init": { - "type": "CallExpression", - "start": 141, - "end": 176, + "local": { + "type": "Identifier", + "start": 116, + "end": 122, "loc": { "start": { "line": 5, - "column": 19 + "column": 9 }, "end": { "line": 5, - "column": 54 - } - }, - "callee": { - "type": "Identifier", - "start": 141, - "end": 148, - "loc": { - "start": { - "line": 5, - "column": 19 - }, - "end": { - "line": 5, - "column": 26 - }, - "identifierName": "require" + "column": 15 }, - "name": "require" + "identifierName": "TopEnv" }, - "arguments": [ - { - "type": "StringLiteral", - "start": 149, - "end": 175, - "loc": { - "start": { - "line": 5, - "column": 27 - }, - "end": { - "line": 5, - "column": 53 - } - }, - "extra": { - "rawValue": "../interp/environment.js", - "raw": "\"../interp/environment.js\"" - }, - "value": "../interp/environment.js" - } - ] + "name": "TopEnv" } } ], - "kind": "const" - }, - { - "type": "VariableDeclaration", - "start": 178, - "end": 226, + "source": { + "type": "StringLiteral", + "start": 130, + "end": 156, + "loc": { + "start": { + "line": 5, + "column": 23 + }, + "end": { + "line": 5, + "column": 49 + } + }, + "extra": { + "rawValue": "../interp/environment.js", + "raw": "\"../interp/environment.js\"" + }, + "value": "../interp/environment.js" + } + }, + { + "type": "ImportDeclaration", + "start": 158, + "end": 201, "loc": { "start": { "line": 6, @@ -565,158 +349,85 @@ }, "end": { "line": 6, - "column": 48 + "column": 43 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 184, - "end": 225, + "type": "ImportSpecifier", + "start": 167, + "end": 172, "loc": { "start": { "line": 6, - "column": 6 + "column": 9 }, "end": { "line": 6, - "column": 47 + "column": 14 } }, - "id": { - "type": "ObjectPattern", - "start": 184, - "end": 193, + "imported": { + "type": "Identifier", + "start": 167, + "end": 172, "loc": { "start": { "line": 6, - "column": 6 + "column": 9 }, "end": { "line": 6, - "column": 15 - } + "column": 14 + }, + "identifierName": "Eggvm" }, - "properties": [ - { - "type": "ObjectProperty", - "start": 186, - "end": 191, - "loc": { - "start": { - "line": 6, - "column": 8 - }, - "end": { - "line": 6, - "column": 13 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 186, - "end": 191, - "loc": { - "start": { - "line": 6, - "column": 8 - }, - "end": { - "line": 6, - "column": 13 - }, - "identifierName": "Eggvm" - }, - "name": "Eggvm" - }, - "value": { - "type": "Identifier", - "start": 186, - "end": 191, - "loc": { - "start": { - "line": 6, - "column": 8 - }, - "end": { - "line": 6, - "column": 13 - }, - "identifierName": "Eggvm" - }, - "name": "Eggvm" - }, - "extra": { - "shorthand": true - } - } - ] + "name": "Eggvm" }, - "init": { - "type": "CallExpression", - "start": 196, - "end": 225, + "local": { + "type": "Identifier", + "start": 167, + "end": 172, "loc": { "start": { "line": 6, - "column": 18 + "column": 9 }, "end": { "line": 6, - "column": 47 - } - }, - "callee": { - "type": "Identifier", - "start": 196, - "end": 203, - "loc": { - "start": { - "line": 6, - "column": 18 - }, - "end": { - "line": 6, - "column": 25 - }, - "identifierName": "require" + "column": 14 }, - "name": "require" + "identifierName": "Eggvm" }, - "arguments": [ - { - "type": "StringLiteral", - "start": 204, - "end": 224, - "loc": { - "start": { - "line": 6, - "column": 26 - }, - "end": { - "line": 6, - "column": 46 - } - }, - "extra": { - "rawValue": "../interp/eggvm.js", - "raw": "\"../interp/eggvm.js\"" - }, - "value": "../interp/eggvm.js" - } - ] + "name": "Eggvm" } } ], - "kind": "const" + "source": { + "type": "StringLiteral", + "start": 180, + "end": 200, + "loc": { + "start": { + "line": 6, + "column": 22 + }, + "end": { + "line": 6, + "column": 42 + } + }, + "extra": { + "rawValue": "../interp/eggvm.js", + "raw": "\"../interp/eggvm.js\"" + }, + "value": "../interp/eggvm.js" + } }, { - "type": "VariableDeclaration", - "start": 228, - "end": 266, + "type": "ImportDeclaration", + "start": 203, + "end": 236, "loc": { "start": { "line": 8, @@ -724,104 +435,69 @@ }, "end": { "line": 8, - "column": 38 + "column": 33 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 234, - "end": 265, + "type": "ImportDefaultSpecifier", + "start": 210, + "end": 216, "loc": { "start": { "line": 8, - "column": 6 + "column": 7 }, "end": { "line": 8, - "column": 37 + "column": 13 } }, - "id": { + "local": { "type": "Identifier", - "start": 234, - "end": 240, + "start": 210, + "end": 216, "loc": { "start": { "line": 8, - "column": 6 + "column": 7 }, "end": { "line": 8, - "column": 12 + "column": 13 }, "identifierName": "colors" }, "name": "colors" - }, - "init": { - "type": "CallExpression", - "start": 243, - "end": 265, - "loc": { - "start": { - "line": 8, - "column": 15 - }, - "end": { - "line": 8, - "column": 37 - } - }, - "callee": { - "type": "Identifier", - "start": 243, - "end": 250, - "loc": { - "start": { - "line": 8, - "column": 15 - }, - "end": { - "line": 8, - "column": 22 - }, - "identifierName": "require" - }, - "name": "require" - }, - "arguments": [ - { - "type": "StringLiteral", - "start": 251, - "end": 264, - "loc": { - "start": { - "line": 8, - "column": 23 - }, - "end": { - "line": 8, - "column": 36 - } - }, - "extra": { - "rawValue": "./colors.js", - "raw": "\"./colors.js\"" - }, - "value": "./colors.js" - } - ] } } ], - "kind": "const", + "source": { + "type": "StringLiteral", + "start": 222, + "end": 235, + "loc": { + "start": { + "line": 8, + "column": 19 + }, + "end": { + "line": 8, + "column": 32 + } + }, + "extra": { + "rawValue": "./colors.js", + "raw": "\"./colors.js\"" + }, + "value": "./colors.js" + }, "trailingComments": [ { "type": "CommentLine", "value": " PROMPT", - "start": 268, - "end": 277, + "start": 238, + "end": 247, "loc": { "start": { "line": 10, @@ -837,8 +513,8 @@ }, { "type": "ExpressionStatement", - "start": 279, - "end": 307, + "start": 249, + "end": 277, "loc": { "start": { "line": 12, @@ -851,8 +527,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 279, - "end": 306, + "start": 249, + "end": 276, "loc": { "start": { "line": 12, @@ -866,8 +542,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 279, - "end": 299, + "start": 249, + "end": 269, "loc": { "start": { "line": 12, @@ -880,8 +556,8 @@ }, "object": { "type": "Identifier", - "start": 279, - "end": 285, + "start": 249, + "end": 255, "loc": { "start": { "line": 12, @@ -898,8 +574,8 @@ }, "property": { "type": "StringLiteral", - "start": 286, - "end": 298, + "start": 256, + "end": 268, "loc": { "start": { "line": 12, @@ -921,8 +597,8 @@ }, "right": { "type": "StringLiteral", - "start": 302, - "end": 306, + "start": 272, + "end": 276, "loc": { "start": { "line": 12, @@ -945,8 +621,8 @@ { "type": "CommentLine", "value": " PROMPT", - "start": 268, - "end": 277, + "start": 238, + "end": 247, "loc": { "start": { "line": 10, @@ -961,9 +637,9 @@ ] }, { - "type": "VariableDeclaration", - "start": 309, - "end": 412, + "type": "Identifier", + "start": 279, + "end": 382, "loc": { "start": { "line": 14, @@ -977,8 +653,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 315, - "end": 411, + "start": 285, + "end": 381, "loc": { "start": { "line": 14, @@ -991,8 +667,8 @@ }, "id": { "type": "Identifier", - "start": 315, - "end": 328, + "start": 285, + "end": 298, "loc": { "start": { "line": 14, @@ -1008,8 +684,8 @@ }, "init": { "type": "ArrowFunctionExpression", - "start": 331, - "end": 411, + "start": 301, + "end": 381, "loc": { "start": { "line": 14, @@ -1020,31 +696,15 @@ "column": 1 } }, - "id": { - "type": "Identifier", - "start": 315, - "end": 328, - "loc": { - "start": { - "line": 14, - "column": 6 - }, - "end": { - "line": 14, - "column": 19 - }, - "identifierName": "getPromptLine" - }, - "name": "getPromptLine" - }, + "id": null, "generator": false, "expression": false, "async": false, "params": [], "body": { "type": "BlockStatement", - "start": 337, - "end": 411, + "start": 307, + "end": 381, "loc": { "start": { "line": 14, @@ -1058,8 +718,8 @@ "body": [ { "type": "ReturnStatement", - "start": 341, - "end": 409, + "start": 311, + "end": 379, "loc": { "start": { "line": 15, @@ -1072,8 +732,8 @@ }, "argument": { "type": "TemplateLiteral", - "start": 348, - "end": 408, + "start": 318, + "end": 378, "loc": { "start": { "line": 15, @@ -1087,8 +747,8 @@ "expressions": [ { "type": "MemberExpression", - "start": 351, - "end": 364, + "start": 321, + "end": 334, "loc": { "start": { "line": 15, @@ -1101,8 +761,8 @@ }, "object": { "type": "Identifier", - "start": 351, - "end": 357, + "start": 321, + "end": 327, "loc": { "start": { "line": 15, @@ -1118,8 +778,8 @@ }, "property": { "type": "Identifier", - "start": 358, - "end": 364, + "start": 328, + "end": 334, "loc": { "start": { "line": 15, @@ -1137,8 +797,8 @@ }, { "type": "MemberExpression", - "start": 368, - "end": 388, + "start": 338, + "end": 358, "loc": { "start": { "line": 15, @@ -1151,8 +811,8 @@ }, "object": { "type": "Identifier", - "start": 368, - "end": 374, + "start": 338, + "end": 344, "loc": { "start": { "line": 15, @@ -1168,8 +828,8 @@ }, "property": { "type": "StringLiteral", - "start": 375, - "end": 387, + "start": 345, + "end": 357, "loc": { "start": { "line": 15, @@ -1190,8 +850,8 @@ }, { "type": "MemberExpression", - "start": 392, - "end": 406, + "start": 362, + "end": 376, "loc": { "start": { "line": 15, @@ -1204,8 +864,8 @@ }, "object": { "type": "Identifier", - "start": 392, - "end": 398, + "start": 362, + "end": 368, "loc": { "start": { "line": 15, @@ -1221,8 +881,8 @@ }, "property": { "type": "Identifier", - "start": 399, - "end": 406, + "start": 369, + "end": 376, "loc": { "start": { "line": 15, @@ -1242,8 +902,8 @@ "quasis": [ { "type": "TemplateElement", - "start": 349, - "end": 349, + "start": 319, + "end": 319, "loc": { "start": { "line": 15, @@ -1262,8 +922,8 @@ }, { "type": "TemplateElement", - "start": 365, - "end": 366, + "start": 335, + "end": 336, "loc": { "start": { "line": 15, @@ -1282,8 +942,8 @@ }, { "type": "TemplateElement", - "start": 389, - "end": 390, + "start": 359, + "end": 360, "loc": { "start": { "line": 15, @@ -1302,8 +962,8 @@ }, { "type": "TemplateElement", - "start": 407, - "end": 407, + "start": 377, + "end": 377, "loc": { "start": { "line": 15, @@ -1330,29 +990,14 @@ } ], "kind": "const", - "trailingComments": [ - { - "type": "CommentLine", - "value": " Extra methods", - "start": 414, - "end": 430, - "loc": { - "start": { - "line": 18, - "column": 0 - }, - "end": { - "line": 18, - "column": 16 - } - } - } - ] + "trailingComments": [], + "name": "_", + "leadingComments": [] }, { - "type": "VariableDeclaration", - "start": 432, - "end": 570, + "type": "Identifier", + "start": 402, + "end": 540, "loc": { "start": { "line": 20, @@ -1366,8 +1011,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 438, - "end": 569, + "start": 408, + "end": 539, "loc": { "start": { "line": 20, @@ -1380,8 +1025,8 @@ }, "id": { "type": "Identifier", - "start": 438, - "end": 445, + "start": 408, + "end": 415, "loc": { "start": { "line": 20, @@ -1398,8 +1043,8 @@ }, "init": { "type": "AssignmentExpression", - "start": 449, - "end": 568, + "start": 419, + "end": 538, "loc": { "start": { "line": 20, @@ -1413,8 +1058,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 449, - "end": 463, + "start": 419, + "end": 433, "loc": { "start": { "line": 20, @@ -1427,8 +1072,8 @@ }, "object": { "type": "Identifier", - "start": 449, - "end": 455, + "start": 419, + "end": 425, "loc": { "start": { "line": 20, @@ -1444,8 +1089,8 @@ }, "property": { "type": "StringLiteral", - "start": 456, - "end": 462, + "start": 426, + "end": 432, "loc": { "start": { "line": 20, @@ -1466,8 +1111,8 @@ }, "right": { "type": "ArrowFunctionExpression", - "start": 466, - "end": 568, + "start": 436, + "end": 538, "loc": { "start": { "line": 20, @@ -1485,8 +1130,8 @@ "params": [], "body": { "type": "BlockStatement", - "start": 472, - "end": 568, + "start": 442, + "end": 538, "loc": { "start": { "line": 20, @@ -1500,8 +1145,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 476, - "end": 547, + "start": 446, + "end": 517, "loc": { "start": { "line": 21, @@ -1514,8 +1159,8 @@ }, "expression": { "type": "CallExpression", - "start": 476, - "end": 546, + "start": 446, + "end": 516, "loc": { "start": { "line": 21, @@ -1528,8 +1173,8 @@ }, "callee": { "type": "MemberExpression", - "start": 476, - "end": 487, + "start": 446, + "end": 457, "loc": { "start": { "line": 21, @@ -1542,8 +1187,8 @@ }, "object": { "type": "Identifier", - "start": 476, - "end": 483, + "start": 446, + "end": 453, "loc": { "start": { "line": 21, @@ -1559,8 +1204,8 @@ }, "property": { "type": "Identifier", - "start": 484, - "end": 487, + "start": 454, + "end": 457, "loc": { "start": { "line": 21, @@ -1579,8 +1224,8 @@ "arguments": [ { "type": "BinaryExpression", - "start": 488, - "end": 545, + "start": 458, + "end": 515, "loc": { "start": { "line": 21, @@ -1593,8 +1238,8 @@ }, "left": { "type": "BinaryExpression", - "start": 488, - "end": 528, + "start": 458, + "end": 498, "loc": { "start": { "line": 21, @@ -1607,8 +1252,8 @@ }, "left": { "type": "MemberExpression", - "start": 488, - "end": 499, + "start": 458, + "end": 469, "loc": { "start": { "line": 21, @@ -1621,8 +1266,8 @@ }, "object": { "type": "Identifier", - "start": 488, - "end": 494, + "start": 458, + "end": 464, "loc": { "start": { "line": 21, @@ -1638,8 +1283,8 @@ }, "property": { "type": "Identifier", - "start": 495, - "end": 499, + "start": 465, + "end": 469, "loc": { "start": { "line": 21, @@ -1658,8 +1303,8 @@ "operator": "+", "right": { "type": "StringLiteral", - "start": 502, - "end": 528, + "start": 472, + "end": 498, "loc": { "start": { "line": 21, @@ -1680,8 +1325,8 @@ "operator": "+", "right": { "type": "MemberExpression", - "start": 531, - "end": 545, + "start": 501, + "end": 515, "loc": { "start": { "line": 21, @@ -1694,8 +1339,8 @@ }, "object": { "type": "Identifier", - "start": 531, - "end": 537, + "start": 501, + "end": 507, "loc": { "start": { "line": 21, @@ -1711,8 +1356,8 @@ }, "property": { "type": "Identifier", - "start": 538, - "end": 545, + "start": 508, + "end": 515, "loc": { "start": { "line": 21, @@ -1734,8 +1379,8 @@ }, { "type": "ExpressionStatement", - "start": 550, - "end": 566, + "start": 520, + "end": 536, "loc": { "start": { "line": 22, @@ -1748,8 +1393,8 @@ }, "expression": { "type": "CallExpression", - "start": 550, - "end": 565, + "start": 520, + "end": 535, "loc": { "start": { "line": 22, @@ -1762,8 +1407,8 @@ }, "callee": { "type": "MemberExpression", - "start": 550, - "end": 562, + "start": 520, + "end": 532, "loc": { "start": { "line": 22, @@ -1776,8 +1421,8 @@ }, "object": { "type": "Identifier", - "start": 550, - "end": 557, + "start": 520, + "end": 527, "loc": { "start": { "line": 22, @@ -1793,8 +1438,8 @@ }, "property": { "type": "Identifier", - "start": 558, - "end": 562, + "start": 528, + "end": 532, "loc": { "start": { "line": 22, @@ -1813,8 +1458,8 @@ "arguments": [ { "type": "NumericLiteral", - "start": 563, - "end": 564, + "start": 533, + "end": 534, "loc": { "start": { "line": 22, @@ -1840,36 +1485,21 @@ }, "extra": { "parenthesized": true, - "parenStart": 448 + "parenStart": 418 } }, "leadingComments": null } ], "kind": "const", - "leadingComments": [ - { - "type": "CommentLine", - "value": " Extra methods", - "start": 414, - "end": 430, - "loc": { - "start": { - "line": 18, - "column": 0 - }, - "end": { - "line": 18, - "column": 16 - } - } - } - ] + "leadingComments": [], + "name": "_", + "trailingComments": [] }, { "type": "VariableDeclaration", - "start": 572, - "end": 852, + "start": 542, + "end": 822, "loc": { "start": { "line": 25, @@ -1883,8 +1513,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 578, - "end": 851, + "start": 548, + "end": 821, "loc": { "start": { "line": 25, @@ -1897,8 +1527,8 @@ }, "id": { "type": "Identifier", - "start": 578, - "end": 582, + "start": 548, + "end": 552, "loc": { "start": { "line": 25, @@ -1914,8 +1544,8 @@ }, "init": { "type": "ArrayExpression", - "start": 585, - "end": 851, + "start": 555, + "end": 821, "loc": { "start": { "line": 25, @@ -1929,8 +1559,8 @@ "elements": [ { "type": "TemplateLiteral", - "start": 589, - "end": 650, + "start": 559, + "end": 620, "loc": { "start": { "line": 26, @@ -1944,8 +1574,8 @@ "expressions": [ { "type": "MemberExpression", - "start": 592, - "end": 603, + "start": 562, + "end": 573, "loc": { "start": { "line": 26, @@ -1958,8 +1588,8 @@ }, "object": { "type": "Identifier", - "start": 592, - "end": 598, + "start": 562, + "end": 568, "loc": { "start": { "line": 26, @@ -1975,8 +1605,8 @@ }, "property": { "type": "Identifier", - "start": 599, - "end": 603, + "start": 569, + "end": 573, "loc": { "start": { "line": 26, @@ -1994,8 +1624,8 @@ }, { "type": "MemberExpression", - "start": 614, - "end": 628, + "start": 584, + "end": 598, "loc": { "start": { "line": 26, @@ -2008,8 +1638,8 @@ }, "object": { "type": "Identifier", - "start": 614, - "end": 620, + "start": 584, + "end": 590, "loc": { "start": { "line": 26, @@ -2025,8 +1655,8 @@ }, "property": { "type": "Identifier", - "start": 621, - "end": 628, + "start": 591, + "end": 598, "loc": { "start": { "line": 26, @@ -2046,8 +1676,8 @@ "quasis": [ { "type": "TemplateElement", - "start": 590, - "end": 590, + "start": 560, + "end": 560, "loc": { "start": { "line": 26, @@ -2066,8 +1696,8 @@ }, { "type": "TemplateElement", - "start": 604, - "end": 612, + "start": 574, + "end": 582, "loc": { "start": { "line": 26, @@ -2086,8 +1716,8 @@ }, { "type": "TemplateElement", - "start": 629, - "end": 649, + "start": 599, + "end": 619, "loc": { "start": { "line": 26, @@ -2108,8 +1738,8 @@ }, { "type": "TemplateLiteral", - "start": 654, - "end": 718, + "start": 624, + "end": 688, "loc": { "start": { "line": 27, @@ -2123,8 +1753,8 @@ "expressions": [ { "type": "MemberExpression", - "start": 657, - "end": 667, + "start": 627, + "end": 637, "loc": { "start": { "line": 27, @@ -2137,8 +1767,8 @@ }, "object": { "type": "Identifier", - "start": 657, - "end": 663, + "start": 627, + "end": 633, "loc": { "start": { "line": 27, @@ -2154,8 +1784,8 @@ }, "property": { "type": "Identifier", - "start": 664, - "end": 667, + "start": 634, + "end": 637, "loc": { "start": { "line": 27, @@ -2173,8 +1803,8 @@ }, { "type": "MemberExpression", - "start": 687, - "end": 701, + "start": 657, + "end": 671, "loc": { "start": { "line": 27, @@ -2187,8 +1817,8 @@ }, "object": { "type": "Identifier", - "start": 687, - "end": 693, + "start": 657, + "end": 663, "loc": { "start": { "line": 27, @@ -2204,8 +1834,8 @@ }, "property": { "type": "Identifier", - "start": 694, - "end": 701, + "start": 664, + "end": 671, "loc": { "start": { "line": 27, @@ -2225,8 +1855,8 @@ "quasis": [ { "type": "TemplateElement", - "start": 655, - "end": 655, + "start": 625, + "end": 625, "loc": { "start": { "line": 27, @@ -2245,8 +1875,8 @@ }, { "type": "TemplateElement", - "start": 668, - "end": 685, + "start": 638, + "end": 655, "loc": { "start": { "line": 27, @@ -2265,8 +1895,8 @@ }, { "type": "TemplateElement", - "start": 702, - "end": 717, + "start": 672, + "end": 687, "loc": { "start": { "line": 27, @@ -2287,8 +1917,8 @@ }, { "type": "TemplateLiteral", - "start": 722, - "end": 783, + "start": 692, + "end": 753, "loc": { "start": { "line": 28, @@ -2302,8 +1932,8 @@ "expressions": [ { "type": "MemberExpression", - "start": 725, - "end": 737, + "start": 695, + "end": 707, "loc": { "start": { "line": 28, @@ -2316,8 +1946,8 @@ }, "object": { "type": "Identifier", - "start": 725, - "end": 731, + "start": 695, + "end": 701, "loc": { "start": { "line": 28, @@ -2333,8 +1963,8 @@ }, "property": { "type": "Identifier", - "start": 732, - "end": 737, + "start": 702, + "end": 707, "loc": { "start": { "line": 28, @@ -2352,8 +1982,8 @@ }, { "type": "MemberExpression", - "start": 747, - "end": 761, + "start": 717, + "end": 731, "loc": { "start": { "line": 28, @@ -2366,8 +1996,8 @@ }, "object": { "type": "Identifier", - "start": 747, - "end": 753, + "start": 717, + "end": 723, "loc": { "start": { "line": 28, @@ -2383,8 +2013,8 @@ }, "property": { "type": "Identifier", - "start": 754, - "end": 761, + "start": 724, + "end": 731, "loc": { "start": { "line": 28, @@ -2404,8 +2034,8 @@ "quasis": [ { "type": "TemplateElement", - "start": 723, - "end": 723, + "start": 693, + "end": 693, "loc": { "start": { "line": 28, @@ -2424,8 +2054,8 @@ }, { "type": "TemplateElement", - "start": 738, - "end": 745, + "start": 708, + "end": 715, "loc": { "start": { "line": 28, @@ -2444,8 +2074,8 @@ }, { "type": "TemplateElement", - "start": 762, - "end": 782, + "start": 732, + "end": 752, "loc": { "start": { "line": 28, @@ -2466,8 +2096,8 @@ }, { "type": "TemplateLiteral", - "start": 787, - "end": 849, + "start": 757, + "end": 819, "loc": { "start": { "line": 29, @@ -2481,8 +2111,8 @@ "expressions": [ { "type": "MemberExpression", - "start": 790, - "end": 803, + "start": 760, + "end": 773, "loc": { "start": { "line": 29, @@ -2495,8 +2125,8 @@ }, "object": { "type": "Identifier", - "start": 790, - "end": 796, + "start": 760, + "end": 766, "loc": { "start": { "line": 29, @@ -2512,8 +2142,8 @@ }, "property": { "type": "Identifier", - "start": 797, - "end": 803, + "start": 767, + "end": 773, "loc": { "start": { "line": 29, @@ -2531,8 +2161,8 @@ }, { "type": "MemberExpression", - "start": 815, - "end": 829, + "start": 785, + "end": 799, "loc": { "start": { "line": 29, @@ -2545,8 +2175,8 @@ }, "object": { "type": "Identifier", - "start": 815, - "end": 821, + "start": 785, + "end": 791, "loc": { "start": { "line": 29, @@ -2562,8 +2192,8 @@ }, "property": { "type": "Identifier", - "start": 822, - "end": 829, + "start": 792, + "end": 799, "loc": { "start": { "line": 29, @@ -2583,8 +2213,8 @@ "quasis": [ { "type": "TemplateElement", - "start": 788, - "end": 788, + "start": 758, + "end": 758, "loc": { "start": { "line": 29, @@ -2603,8 +2233,8 @@ }, { "type": "TemplateElement", - "start": 804, - "end": 813, + "start": 774, + "end": 783, "loc": { "start": { "line": 29, @@ -2623,8 +2253,8 @@ }, { "type": "TemplateElement", - "start": 830, - "end": 848, + "start": 800, + "end": 818, "loc": { "start": { "line": 29, @@ -2650,9 +2280,9 @@ "kind": "const" }, { - "type": "VariableDeclaration", - "start": 854, - "end": 1030, + "type": "Identifier", + "start": 824, + "end": 1000, "loc": { "start": { "line": 32, @@ -2666,8 +2296,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 860, - "end": 1029, + "start": 830, + "end": 999, "loc": { "start": { "line": 32, @@ -2680,8 +2310,8 @@ }, "id": { "type": "Identifier", - "start": 860, - "end": 867, + "start": 830, + "end": 837, "loc": { "start": { "line": 32, @@ -2697,8 +2327,8 @@ }, "init": { "type": "AssignmentExpression", - "start": 871, - "end": 1028, + "start": 841, + "end": 998, "loc": { "start": { "line": 32, @@ -2712,8 +2342,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 871, - "end": 885, + "start": 841, + "end": 855, "loc": { "start": { "line": 32, @@ -2726,8 +2356,8 @@ }, "object": { "type": "Identifier", - "start": 871, - "end": 877, + "start": 841, + "end": 847, "loc": { "start": { "line": 32, @@ -2743,8 +2373,8 @@ }, "property": { "type": "StringLiteral", - "start": 878, - "end": 884, + "start": 848, + "end": 854, "loc": { "start": { "line": 32, @@ -2765,8 +2395,8 @@ }, "right": { "type": "ArrowFunctionExpression", - "start": 888, - "end": 1028, + "start": 858, + "end": 998, "loc": { "start": { "line": 32, @@ -2784,8 +2414,8 @@ "params": [], "body": { "type": "BlockStatement", - "start": 894, - "end": 1028, + "start": 864, + "end": 998, "loc": { "start": { "line": 32, @@ -2799,8 +2429,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 898, - "end": 929, + "start": 868, + "end": 899, "loc": { "start": { "line": 33, @@ -2813,8 +2443,8 @@ }, "expression": { "type": "CallExpression", - "start": 898, - "end": 928, + "start": 868, + "end": 898, "loc": { "start": { "line": 33, @@ -2827,8 +2457,8 @@ }, "callee": { "type": "MemberExpression", - "start": 898, - "end": 909, + "start": 868, + "end": 879, "loc": { "start": { "line": 33, @@ -2841,8 +2471,8 @@ }, "object": { "type": "Identifier", - "start": 898, - "end": 905, + "start": 868, + "end": 875, "loc": { "start": { "line": 33, @@ -2858,8 +2488,8 @@ }, "property": { "type": "Identifier", - "start": 906, - "end": 909, + "start": 876, + "end": 879, "loc": { "start": { "line": 33, @@ -2878,8 +2508,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 910, - "end": 927, + "start": 880, + "end": 897, "loc": { "start": { "line": 33, @@ -2901,8 +2531,8 @@ }, { "type": "ExpressionStatement", - "start": 932, - "end": 983, + "start": 902, + "end": 953, "loc": { "start": { "line": 34, @@ -2915,8 +2545,8 @@ }, "expression": { "type": "CallExpression", - "start": 932, - "end": 982, + "start": 902, + "end": 952, "loc": { "start": { "line": 34, @@ -2929,8 +2559,8 @@ }, "callee": { "type": "MemberExpression", - "start": 932, - "end": 944, + "start": 902, + "end": 914, "loc": { "start": { "line": 34, @@ -2943,8 +2573,8 @@ }, "object": { "type": "Identifier", - "start": 932, - "end": 936, + "start": 902, + "end": 906, "loc": { "start": { "line": 34, @@ -2960,8 +2590,8 @@ }, "property": { "type": "Identifier", - "start": 937, - "end": 944, + "start": 907, + "end": 914, "loc": { "start": { "line": 34, @@ -2980,8 +2610,8 @@ "arguments": [ { "type": "ArrowFunctionExpression", - "start": 945, - "end": 981, + "start": 915, + "end": 951, "loc": { "start": { "line": 34, @@ -2999,8 +2629,8 @@ "params": [ { "type": "Identifier", - "start": 945, - "end": 949, + "start": 915, + "end": 919, "loc": { "start": { "line": 34, @@ -3017,8 +2647,8 @@ ], "body": { "type": "BlockStatement", - "start": 953, - "end": 981, + "start": 923, + "end": 951, "loc": { "start": { "line": 34, @@ -3032,8 +2662,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 959, - "end": 977, + "start": 929, + "end": 947, "loc": { "start": { "line": 35, @@ -3046,8 +2676,8 @@ }, "expression": { "type": "CallExpression", - "start": 959, - "end": 976, + "start": 929, + "end": 946, "loc": { "start": { "line": 35, @@ -3060,8 +2690,8 @@ }, "callee": { "type": "MemberExpression", - "start": 959, - "end": 970, + "start": 929, + "end": 940, "loc": { "start": { "line": 35, @@ -3074,8 +2704,8 @@ }, "object": { "type": "Identifier", - "start": 959, - "end": 966, + "start": 929, + "end": 936, "loc": { "start": { "line": 35, @@ -3091,8 +2721,8 @@ }, "property": { "type": "Identifier", - "start": 967, - "end": 970, + "start": 937, + "end": 940, "loc": { "start": { "line": 35, @@ -3111,8 +2741,8 @@ "arguments": [ { "type": "Identifier", - "start": 971, - "end": 975, + "start": 941, + "end": 945, "loc": { "start": { "line": 35, @@ -3138,8 +2768,8 @@ }, { "type": "ReturnStatement", - "start": 987, - "end": 1026, + "start": 957, + "end": 996, "loc": { "start": { "line": 38, @@ -3152,8 +2782,8 @@ }, "argument": { "type": "CallExpression", - "start": 994, - "end": 1025, + "start": 964, + "end": 995, "loc": { "start": { "line": 38, @@ -3166,8 +2796,8 @@ }, "callee": { "type": "MemberExpression", - "start": 994, - "end": 1004, + "start": 964, + "end": 974, "loc": { "start": { "line": 38, @@ -3180,8 +2810,8 @@ }, "object": { "type": "StringLiteral", - "start": 994, - "end": 997, + "start": 964, + "end": 967, "loc": { "start": { "line": 38, @@ -3200,8 +2830,8 @@ }, "property": { "type": "Identifier", - "start": 998, - "end": 1004, + "start": 968, + "end": 974, "loc": { "start": { "line": 38, @@ -3220,8 +2850,8 @@ "arguments": [ { "type": "BinaryExpression", - "start": 1005, - "end": 1024, + "start": 975, + "end": 994, "loc": { "start": { "line": 38, @@ -3234,8 +2864,8 @@ }, "left": { "type": "MemberExpression", - "start": 1005, - "end": 1019, + "start": 975, + "end": 989, "loc": { "start": { "line": 38, @@ -3248,8 +2878,8 @@ }, "object": { "type": "MemberExpression", - "start": 1005, - "end": 1012, + "start": 975, + "end": 982, "loc": { "start": { "line": 38, @@ -3262,8 +2892,8 @@ }, "object": { "type": "Identifier", - "start": 1005, - "end": 1009, + "start": 975, + "end": 979, "loc": { "start": { "line": 38, @@ -3279,8 +2909,8 @@ }, "property": { "type": "NumericLiteral", - "start": 1010, - "end": 1011, + "start": 980, + "end": 981, "loc": { "start": { "line": 38, @@ -3301,8 +2931,8 @@ }, "property": { "type": "Identifier", - "start": 1013, - "end": 1019, + "start": 983, + "end": 989, "loc": { "start": { "line": 38, @@ -3321,8 +2951,8 @@ "operator": "-", "right": { "type": "NumericLiteral", - "start": 1022, - "end": 1024, + "start": 992, + "end": 994, "loc": { "start": { "line": 38, @@ -3349,17 +2979,20 @@ }, "extra": { "parenthesized": true, - "parenStart": 870 + "parenStart": 840 } } } ], - "kind": "const" + "kind": "const", + "name": "_", + "leadingComments": [], + "trailingComments": [] }, { - "type": "VariableDeclaration", - "start": 1032, - "end": 1623, + "type": "Identifier", + "start": 1002, + "end": 1593, "loc": { "start": { "line": 41, @@ -3373,8 +3006,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 1038, - "end": 1622, + "start": 1008, + "end": 1592, "loc": { "start": { "line": 41, @@ -3387,8 +3020,8 @@ }, "id": { "type": "Identifier", - "start": 1038, - "end": 1045, + "start": 1008, + "end": 1015, "loc": { "start": { "line": 41, @@ -3404,8 +3037,8 @@ }, "init": { "type": "AssignmentExpression", - "start": 1049, - "end": 1621, + "start": 1019, + "end": 1591, "loc": { "start": { "line": 41, @@ -3419,8 +3052,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 1049, - "end": 1063, + "start": 1019, + "end": 1033, "loc": { "start": { "line": 41, @@ -3433,8 +3066,8 @@ }, "object": { "type": "Identifier", - "start": 1049, - "end": 1055, + "start": 1019, + "end": 1025, "loc": { "start": { "line": 41, @@ -3450,8 +3083,8 @@ }, "property": { "type": "StringLiteral", - "start": 1056, - "end": 1062, + "start": 1026, + "end": 1032, "loc": { "start": { "line": 41, @@ -3472,8 +3105,8 @@ }, "right": { "type": "ArrowFunctionExpression", - "start": 1066, - "end": 1621, + "start": 1036, + "end": 1591, "loc": { "start": { "line": 41, @@ -3491,8 +3124,8 @@ "params": [], "body": { "type": "BlockStatement", - "start": 1072, - "end": 1621, + "start": 1042, + "end": 1591, "loc": { "start": { "line": 41, @@ -3506,8 +3139,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 1076, - "end": 1504, + "start": 1046, + "end": 1474, "loc": { "start": { "line": 42, @@ -3520,8 +3153,8 @@ }, "expression": { "type": "CallExpression", - "start": 1076, - "end": 1503, + "start": 1046, + "end": 1473, "loc": { "start": { "line": 42, @@ -3534,8 +3167,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1076, - "end": 1087, + "start": 1046, + "end": 1057, "loc": { "start": { "line": 42, @@ -3548,8 +3181,8 @@ }, "object": { "type": "Identifier", - "start": 1076, - "end": 1083, + "start": 1046, + "end": 1053, "loc": { "start": { "line": 42, @@ -3565,8 +3198,8 @@ }, "property": { "type": "Identifier", - "start": 1084, - "end": 1087, + "start": 1054, + "end": 1057, "loc": { "start": { "line": 42, @@ -3585,8 +3218,8 @@ "arguments": [ { "type": "BinaryExpression", - "start": 1093, - "end": 1499, + "start": 1063, + "end": 1469, "loc": { "start": { "line": 43, @@ -3599,8 +3232,8 @@ }, "left": { "type": "BinaryExpression", - "start": 1093, - "end": 1476, + "start": 1063, + "end": 1446, "loc": { "start": { "line": 43, @@ -3613,8 +3246,8 @@ }, "left": { "type": "MemberExpression", - "start": 1093, - "end": 1104, + "start": 1063, + "end": 1074, "loc": { "start": { "line": 43, @@ -3627,8 +3260,8 @@ }, "object": { "type": "Identifier", - "start": 1093, - "end": 1099, + "start": 1063, + "end": 1069, "loc": { "start": { "line": 43, @@ -3644,8 +3277,8 @@ }, "property": { "type": "Identifier", - "start": 1100, - "end": 1104, + "start": 1070, + "end": 1074, "loc": { "start": { "line": 43, @@ -3664,8 +3297,8 @@ "operator": "+", "right": { "type": "TemplateLiteral", - "start": 1113, - "end": 1476, + "start": 1083, + "end": 1446, "loc": { "start": { "line": 44, @@ -3680,8 +3313,8 @@ "quasis": [ { "type": "TemplateElement", - "start": 1114, - "end": 1475, + "start": 1084, + "end": 1445, "loc": { "start": { "line": 44, @@ -3704,8 +3337,8 @@ "operator": "+", "right": { "type": "MemberExpression", - "start": 1485, - "end": 1499, + "start": 1455, + "end": 1469, "loc": { "start": { "line": 54, @@ -3718,8 +3351,8 @@ }, "object": { "type": "Identifier", - "start": 1485, - "end": 1491, + "start": 1455, + "end": 1461, "loc": { "start": { "line": 54, @@ -3735,8 +3368,8 @@ }, "property": { "type": "Identifier", - "start": 1492, - "end": 1499, + "start": 1462, + "end": 1469, "loc": { "start": { "line": 54, @@ -3758,8 +3391,8 @@ }, { "type": "ExpressionStatement", - "start": 1507, - "end": 1555, + "start": 1477, + "end": 1525, "loc": { "start": { "line": 56, @@ -3772,8 +3405,8 @@ }, "expression": { "type": "CallExpression", - "start": 1507, - "end": 1554, + "start": 1477, + "end": 1524, "loc": { "start": { "line": 56, @@ -3786,8 +3419,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1507, - "end": 1518, + "start": 1477, + "end": 1488, "loc": { "start": { "line": 56, @@ -3800,8 +3433,8 @@ }, "object": { "type": "Identifier", - "start": 1507, - "end": 1514, + "start": 1477, + "end": 1484, "loc": { "start": { "line": 56, @@ -3817,8 +3450,8 @@ }, "property": { "type": "Identifier", - "start": 1515, - "end": 1518, + "start": 1485, + "end": 1488, "loc": { "start": { "line": 56, @@ -3837,8 +3470,8 @@ "arguments": [ { "type": "TemplateLiteral", - "start": 1519, - "end": 1553, + "start": 1489, + "end": 1523, "loc": { "start": { "line": 56, @@ -3852,8 +3485,8 @@ "expressions": [ { "type": "MemberExpression", - "start": 1530, - "end": 1551, + "start": 1500, + "end": 1521, "loc": { "start": { "line": 56, @@ -3866,8 +3499,8 @@ }, "object": { "type": "Identifier", - "start": 1530, - "end": 1536, + "start": 1500, + "end": 1506, "loc": { "start": { "line": 56, @@ -3883,8 +3516,8 @@ }, "property": { "type": "StringLiteral", - "start": 1537, - "end": 1550, + "start": 1507, + "end": 1520, "loc": { "start": { "line": 56, @@ -3907,8 +3540,8 @@ "quasis": [ { "type": "TemplateElement", - "start": 1520, - "end": 1528, + "start": 1490, + "end": 1498, "loc": { "start": { "line": 56, @@ -3927,8 +3560,8 @@ }, { "type": "TemplateElement", - "start": 1552, - "end": 1552, + "start": 1522, + "end": 1522, "loc": { "start": { "line": 56, @@ -3952,8 +3585,8 @@ }, { "type": "ExpressionStatement", - "start": 1558, - "end": 1619, + "start": 1528, + "end": 1589, "loc": { "start": { "line": 57, @@ -3966,8 +3599,8 @@ }, "expression": { "type": "CallExpression", - "start": 1558, - "end": 1618, + "start": 1528, + "end": 1588, "loc": { "start": { "line": 57, @@ -3980,8 +3613,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1558, - "end": 1569, + "start": 1528, + "end": 1539, "loc": { "start": { "line": 57, @@ -3994,8 +3627,8 @@ }, "object": { "type": "Identifier", - "start": 1558, - "end": 1565, + "start": 1528, + "end": 1535, "loc": { "start": { "line": 57, @@ -4011,8 +3644,8 @@ }, "property": { "type": "Identifier", - "start": 1566, - "end": 1569, + "start": 1536, + "end": 1539, "loc": { "start": { "line": 57, @@ -4031,8 +3664,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 1570, - "end": 1617, + "start": 1540, + "end": 1587, "loc": { "start": { "line": 57, @@ -4058,17 +3691,20 @@ }, "extra": { "parenthesized": true, - "parenStart": 1048 + "parenStart": 1018 } } } ], - "kind": "const" + "kind": "const", + "name": "_", + "leadingComments": [], + "trailingComments": [] }, { - "type": "VariableDeclaration", - "start": 1625, - "end": 1724, + "type": "Identifier", + "start": 1595, + "end": 1694, "loc": { "start": { "line": 60, @@ -4082,8 +3718,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 1631, - "end": 1723, + "start": 1601, + "end": 1693, "loc": { "start": { "line": 60, @@ -4096,8 +3732,8 @@ }, "id": { "type": "Identifier", - "start": 1631, - "end": 1639, + "start": 1601, + "end": 1609, "loc": { "start": { "line": 60, @@ -4113,8 +3749,8 @@ }, "init": { "type": "AssignmentExpression", - "start": 1643, - "end": 1722, + "start": 1613, + "end": 1692, "loc": { "start": { "line": 60, @@ -4128,8 +3764,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 1643, - "end": 1658, + "start": 1613, + "end": 1628, "loc": { "start": { "line": 60, @@ -4142,8 +3778,8 @@ }, "object": { "type": "Identifier", - "start": 1643, - "end": 1649, + "start": 1613, + "end": 1619, "loc": { "start": { "line": 60, @@ -4159,8 +3795,8 @@ }, "property": { "type": "StringLiteral", - "start": 1650, - "end": 1657, + "start": 1620, + "end": 1627, "loc": { "start": { "line": 60, @@ -4181,8 +3817,8 @@ }, "right": { "type": "ArrowFunctionExpression", - "start": 1661, - "end": 1722, + "start": 1631, + "end": 1692, "loc": { "start": { "line": 60, @@ -4200,8 +3836,8 @@ "params": [], "body": { "type": "BlockStatement", - "start": 1667, - "end": 1722, + "start": 1637, + "end": 1692, "loc": { "start": { "line": 60, @@ -4215,8 +3851,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 1671, - "end": 1707, + "start": 1641, + "end": 1677, "loc": { "start": { "line": 61, @@ -4229,8 +3865,8 @@ }, "expression": { "type": "CallExpression", - "start": 1671, - "end": 1706, + "start": 1641, + "end": 1676, "loc": { "start": { "line": 61, @@ -4243,8 +3879,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1671, - "end": 1682, + "start": 1641, + "end": 1652, "loc": { "start": { "line": 61, @@ -4257,8 +3893,8 @@ }, "object": { "type": "Identifier", - "start": 1671, - "end": 1678, + "start": 1641, + "end": 1648, "loc": { "start": { "line": 61, @@ -4274,8 +3910,8 @@ }, "property": { "type": "Identifier", - "start": 1679, - "end": 1682, + "start": 1649, + "end": 1652, "loc": { "start": { "line": 61, @@ -4294,8 +3930,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 1683, - "end": 1705, + "start": 1653, + "end": 1675, "loc": { "start": { "line": 61, @@ -4317,8 +3953,8 @@ }, { "type": "ExpressionStatement", - "start": 1710, - "end": 1720, + "start": 1680, + "end": 1690, "loc": { "start": { "line": 62, @@ -4331,8 +3967,8 @@ }, "expression": { "type": "CallExpression", - "start": 1710, - "end": 1719, + "start": 1680, + "end": 1689, "loc": { "start": { "line": 62, @@ -4345,8 +3981,8 @@ }, "callee": { "type": "Identifier", - "start": 1710, - "end": 1717, + "start": 1680, + "end": 1687, "loc": { "start": { "line": 62, @@ -4369,17 +4005,20 @@ }, "extra": { "parenthesized": true, - "parenStart": 1642 + "parenStart": 1612 } } } ], - "kind": "const" + "kind": "const", + "name": "_", + "leadingComments": [], + "trailingComments": [] }, { - "type": "VariableDeclaration", - "start": 1726, - "end": 1813, + "type": "Identifier", + "start": 1696, + "end": 1783, "loc": { "start": { "line": 65, @@ -4393,8 +4032,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 1732, - "end": 1812, + "start": 1702, + "end": 1782, "loc": { "start": { "line": 65, @@ -4407,8 +4046,8 @@ }, "id": { "type": "Identifier", - "start": 1732, - "end": 1742, + "start": 1702, + "end": 1712, "loc": { "start": { "line": 65, @@ -4424,8 +4063,8 @@ }, "init": { "type": "AssignmentExpression", - "start": 1746, - "end": 1811, + "start": 1716, + "end": 1781, "loc": { "start": { "line": 65, @@ -4439,8 +4078,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 1746, - "end": 1771, + "start": 1716, + "end": 1741, "loc": { "start": { "line": 65, @@ -4453,8 +4092,8 @@ }, "object": { "type": "Identifier", - "start": 1746, - "end": 1752, + "start": 1716, + "end": 1722, "loc": { "start": { "line": 65, @@ -4470,8 +4109,8 @@ }, "property": { "type": "StringLiteral", - "start": 1756, - "end": 1769, + "start": 1726, + "end": 1739, "loc": { "start": { "line": 66, @@ -4492,8 +4131,8 @@ }, "right": { "type": "MemberExpression", - "start": 1774, - "end": 1811, + "start": 1744, + "end": 1781, "loc": { "start": { "line": 67, @@ -4506,8 +4145,8 @@ }, "object": { "type": "CallExpression", - "start": 1774, - "end": 1803, + "start": 1744, + "end": 1773, "loc": { "start": { "line": 67, @@ -4520,8 +4159,8 @@ }, "callee": { "type": "Identifier", - "start": 1774, - "end": 1781, + "start": 1744, + "end": 1751, "loc": { "start": { "line": 67, @@ -4538,8 +4177,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 1782, - "end": 1802, + "start": 1752, + "end": 1772, "loc": { "start": { "line": 67, @@ -4560,8 +4199,8 @@ }, "property": { "type": "Identifier", - "start": 1804, - "end": 1811, + "start": 1774, + "end": 1781, "loc": { "start": { "line": 67, @@ -4579,17 +4218,20 @@ }, "extra": { "parenthesized": true, - "parenStart": 1745 + "parenStart": 1715 } } } ], - "kind": "const" + "kind": "const", + "name": "_", + "leadingComments": [], + "trailingComments": [] }, { - "type": "VariableDeclaration", - "start": 1815, - "end": 1964, + "type": "Identifier", + "start": 1785, + "end": 1934, "loc": { "start": { "line": 69, @@ -4603,8 +4245,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 1821, - "end": 1963, + "start": 1791, + "end": 1933, "loc": { "start": { "line": 69, @@ -4617,8 +4259,8 @@ }, "id": { "type": "Identifier", - "start": 1821, - "end": 1827, + "start": 1791, + "end": 1797, "loc": { "start": { "line": 69, @@ -4634,8 +4276,8 @@ }, "init": { "type": "AssignmentExpression", - "start": 1831, - "end": 1962, + "start": 1801, + "end": 1932, "loc": { "start": { "line": 69, @@ -4649,8 +4291,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 1831, - "end": 1844, + "start": 1801, + "end": 1814, "loc": { "start": { "line": 69, @@ -4663,8 +4305,8 @@ }, "object": { "type": "Identifier", - "start": 1831, - "end": 1837, + "start": 1801, + "end": 1807, "loc": { "start": { "line": 69, @@ -4680,8 +4322,8 @@ }, "property": { "type": "StringLiteral", - "start": 1838, - "end": 1843, + "start": 1808, + "end": 1813, "loc": { "start": { "line": 69, @@ -4702,8 +4344,8 @@ }, "right": { "type": "ArrowFunctionExpression", - "start": 1847, - "end": 1962, + "start": 1817, + "end": 1932, "loc": { "start": { "line": 69, @@ -4721,8 +4363,8 @@ "params": [ { "type": "Identifier", - "start": 1848, - "end": 1852, + "start": 1818, + "end": 1822, "loc": { "start": { "line": 69, @@ -4738,8 +4380,8 @@ }, { "type": "Identifier", - "start": 1854, - "end": 1859, + "start": 1824, + "end": 1829, "loc": { "start": { "line": 69, @@ -4756,8 +4398,8 @@ ], "body": { "type": "BlockStatement", - "start": 1864, - "end": 1962, + "start": 1834, + "end": 1932, "loc": { "start": { "line": 69, @@ -4771,8 +4413,8 @@ "body": [ { "type": "IfStatement", - "start": 1868, - "end": 1932, + "start": 1838, + "end": 1902, "loc": { "start": { "line": 70, @@ -4785,8 +4427,8 @@ }, "test": { "type": "Identifier", - "start": 1872, - "end": 1877, + "start": 1842, + "end": 1847, "loc": { "start": { "line": 70, @@ -4802,8 +4444,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 1879, - "end": 1932, + "start": 1849, + "end": 1902, "loc": { "start": { "line": 70, @@ -4817,8 +4459,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 1885, - "end": 1928, + "start": 1855, + "end": 1898, "loc": { "start": { "line": 71, @@ -4831,8 +4473,8 @@ }, "expression": { "type": "CallExpression", - "start": 1885, - "end": 1927, + "start": 1855, + "end": 1897, "loc": { "start": { "line": 71, @@ -4845,8 +4487,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1885, - "end": 1896, + "start": 1855, + "end": 1866, "loc": { "start": { "line": 71, @@ -4859,8 +4501,8 @@ }, "object": { "type": "Identifier", - "start": 1885, - "end": 1892, + "start": 1855, + "end": 1862, "loc": { "start": { "line": 71, @@ -4876,8 +4518,8 @@ }, "property": { "type": "Identifier", - "start": 1893, - "end": 1896, + "start": 1863, + "end": 1866, "loc": { "start": { "line": 71, @@ -4896,8 +4538,8 @@ "arguments": [ { "type": "CallExpression", - "start": 1897, - "end": 1926, + "start": 1867, + "end": 1896, "loc": { "start": { "line": 71, @@ -4910,8 +4552,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1897, - "end": 1912, + "start": 1867, + "end": 1882, "loc": { "start": { "line": 71, @@ -4924,8 +4566,8 @@ }, "object": { "type": "Identifier", - "start": 1897, - "end": 1899, + "start": 1867, + "end": 1869, "loc": { "start": { "line": 71, @@ -4941,8 +4583,8 @@ }, "property": { "type": "Identifier", - "start": 1900, - "end": 1912, + "start": 1870, + "end": 1882, "loc": { "start": { "line": 71, @@ -4961,8 +4603,8 @@ "arguments": [ { "type": "Identifier", - "start": 1913, - "end": 1917, + "start": 1883, + "end": 1887, "loc": { "start": { "line": 71, @@ -4978,8 +4620,8 @@ }, { "type": "StringLiteral", - "start": 1919, - "end": 1925, + "start": 1889, + "end": 1895, "loc": { "start": { "line": 71, @@ -5008,8 +4650,8 @@ }, { "type": "ExpressionStatement", - "start": 1936, - "end": 1960, + "start": 1906, + "end": 1930, "loc": { "start": { "line": 74, @@ -5022,8 +4664,8 @@ }, "expression": { "type": "CallExpression", - "start": 1936, - "end": 1959, + "start": 1906, + "end": 1929, "loc": { "start": { "line": 74, @@ -5036,8 +4678,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1936, - "end": 1953, + "start": 1906, + "end": 1923, "loc": { "start": { "line": 74, @@ -5050,8 +4692,8 @@ }, "object": { "type": "Identifier", - "start": 1936, - "end": 1941, + "start": 1906, + "end": 1911, "loc": { "start": { "line": 74, @@ -5067,8 +4709,8 @@ }, "property": { "type": "Identifier", - "start": 1942, - "end": 1953, + "start": 1912, + "end": 1923, "loc": { "start": { "line": 74, @@ -5087,8 +4729,8 @@ "arguments": [ { "type": "Identifier", - "start": 1954, - "end": 1958, + "start": 1924, + "end": 1928, "loc": { "start": { "line": 74, @@ -5111,17 +4753,20 @@ }, "extra": { "parenthesized": true, - "parenStart": 1830 + "parenStart": 1800 } } } ], - "kind": "const" + "kind": "const", + "name": "_", + "leadingComments": [], + "trailingComments": [] }, { - "type": "VariableDeclaration", - "start": 1966, - "end": 2310, + "type": "Identifier", + "start": 1936, + "end": 2280, "loc": { "start": { "line": 77, @@ -5135,8 +4780,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 1972, - "end": 2309, + "start": 1942, + "end": 2279, "loc": { "start": { "line": 77, @@ -5149,8 +4794,8 @@ }, "id": { "type": "Identifier", - "start": 1972, - "end": 1984, + "start": 1942, + "end": 1954, "loc": { "start": { "line": 77, @@ -5166,8 +4811,8 @@ }, "init": { "type": "ArrowFunctionExpression", - "start": 1987, - "end": 2309, + "start": 1957, + "end": 2279, "loc": { "start": { "line": 77, @@ -5178,31 +4823,15 @@ "column": 1 } }, - "id": { - "type": "Identifier", - "start": 1972, - "end": 1984, - "loc": { - "start": { - "line": 77, - "column": 6 - }, - "end": { - "line": 77, - "column": 18 - }, - "identifierName": "eggCompleter" - }, - "name": "eggCompleter" - }, + "id": null, "generator": false, "expression": false, "async": false, "params": [ { "type": "Identifier", - "start": 1988, - "end": 1992, + "start": 1958, + "end": 1962, "loc": { "start": { "line": 77, @@ -5218,8 +4847,8 @@ }, { "type": "Identifier", - "start": 1994, - "end": 1997, + "start": 1964, + "end": 1967, "loc": { "start": { "line": 77, @@ -5236,8 +4865,8 @@ ], "body": { "type": "BlockStatement", - "start": 2002, - "end": 2309, + "start": 1972, + "end": 2279, "loc": { "start": { "line": 77, @@ -5251,8 +4880,8 @@ "body": [ { "type": "VariableDeclaration", - "start": 2051, - "end": 2076, + "start": 2021, + "end": 2046, "loc": { "start": { "line": 79, @@ -5266,8 +4895,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 2055, - "end": 2075, + "start": 2025, + "end": 2045, "loc": { "start": { "line": 79, @@ -5280,8 +4909,8 @@ }, "id": { "type": "Identifier", - "start": 2055, - "end": 2059, + "start": 2025, + "end": 2029, "loc": { "start": { "line": 79, @@ -5298,8 +4927,8 @@ }, "init": { "type": "CallExpression", - "start": 2062, - "end": 2075, + "start": 2032, + "end": 2045, "loc": { "start": { "line": 79, @@ -5312,8 +4941,8 @@ }, "callee": { "type": "Identifier", - "start": 2062, - "end": 2069, + "start": 2032, + "end": 2039, "loc": { "start": { "line": 79, @@ -5330,8 +4959,8 @@ "arguments": [ { "type": "Identifier", - "start": 2070, - "end": 2074, + "start": 2040, + "end": 2044, "loc": { "start": { "line": 79, @@ -5355,8 +4984,8 @@ { "type": "CommentLine", "value": " Test if get hits from current directory", - "start": 2006, - "end": 2048, + "start": 1976, + "end": 2018, "loc": { "start": { "line": 78, @@ -5373,8 +5002,8 @@ { "type": "CommentLine", "value": " Show hits from the REPL variables", - "start": 2080, - "end": 2116, + "start": 2050, + "end": 2086, "loc": { "start": { "line": 81, @@ -5390,8 +5019,8 @@ }, { "type": "IfStatement", - "start": 2119, - "end": 2283, + "start": 2089, + "end": 2253, "loc": { "start": { "line": 82, @@ -5404,8 +5033,8 @@ }, "test": { "type": "BinaryExpression", - "start": 2123, - "end": 2140, + "start": 2093, + "end": 2110, "loc": { "start": { "line": 82, @@ -5418,8 +5047,8 @@ }, "left": { "type": "MemberExpression", - "start": 2123, - "end": 2134, + "start": 2093, + "end": 2104, "loc": { "start": { "line": 82, @@ -5432,8 +5061,8 @@ }, "object": { "type": "Identifier", - "start": 2123, - "end": 2127, + "start": 2093, + "end": 2097, "loc": { "start": { "line": 82, @@ -5450,8 +5079,8 @@ }, "property": { "type": "Identifier", - "start": 2128, - "end": 2134, + "start": 2098, + "end": 2104, "loc": { "start": { "line": 82, @@ -5471,8 +5100,8 @@ "operator": "===", "right": { "type": "NumericLiteral", - "start": 2139, - "end": 2140, + "start": 2109, + "end": 2110, "loc": { "start": { "line": 82, @@ -5493,8 +5122,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 2142, - "end": 2283, + "start": 2112, + "end": 2253, "loc": { "start": { "line": 82, @@ -5508,8 +5137,8 @@ "body": [ { "type": "VariableDeclaration", - "start": 2148, - "end": 2198, + "start": 2118, + "end": 2168, "loc": { "start": { "line": 83, @@ -5523,8 +5152,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 2154, - "end": 2197, + "start": 2124, + "end": 2167, "loc": { "start": { "line": 83, @@ -5537,8 +5166,8 @@ }, "id": { "type": "Identifier", - "start": 2154, - "end": 2158, + "start": 2124, + "end": 2128, "loc": { "start": { "line": 83, @@ -5554,8 +5183,8 @@ }, "init": { "type": "MemberExpression", - "start": 2161, - "end": 2197, + "start": 2131, + "end": 2167, "loc": { "start": { "line": 83, @@ -5568,8 +5197,8 @@ }, "object": { "type": "CallExpression", - "start": 2161, - "end": 2194, + "start": 2131, + "end": 2164, "loc": { "start": { "line": 83, @@ -5582,8 +5211,8 @@ }, "callee": { "type": "MemberExpression", - "start": 2161, - "end": 2190, + "start": 2131, + "end": 2160, "loc": { "start": { "line": 83, @@ -5596,8 +5225,8 @@ }, "object": { "type": "CallExpression", - "start": 2161, - "end": 2184, + "start": 2131, + "end": 2154, "loc": { "start": { "line": 83, @@ -5610,8 +5239,8 @@ }, "callee": { "type": "MemberExpression", - "start": 2161, - "end": 2171, + "start": 2131, + "end": 2141, "loc": { "start": { "line": 83, @@ -5624,8 +5253,8 @@ }, "object": { "type": "Identifier", - "start": 2161, - "end": 2165, + "start": 2131, + "end": 2135, "loc": { "start": { "line": 83, @@ -5641,8 +5270,8 @@ }, "property": { "type": "Identifier", - "start": 2166, - "end": 2171, + "start": 2136, + "end": 2141, "loc": { "start": { "line": 83, @@ -5661,8 +5290,8 @@ "arguments": [ { "type": "RegExpLiteral", - "start": 2172, - "end": 2183, + "start": 2142, + "end": 2153, "loc": { "start": { "line": 83, @@ -5683,8 +5312,8 @@ }, "property": { "type": "Identifier", - "start": 2185, - "end": 2190, + "start": 2155, + "end": 2160, "loc": { "start": { "line": 83, @@ -5703,8 +5332,8 @@ "arguments": [ { "type": "UnaryExpression", - "start": 2191, - "end": 2193, + "start": 2161, + "end": 2163, "loc": { "start": { "line": 83, @@ -5719,8 +5348,8 @@ "prefix": true, "argument": { "type": "NumericLiteral", - "start": 2192, - "end": 2193, + "start": 2162, + "end": 2163, "loc": { "start": { "line": 83, @@ -5745,8 +5374,8 @@ }, "property": { "type": "NumericLiteral", - "start": 2195, - "end": 2196, + "start": 2165, + "end": 2166, "loc": { "start": { "line": 83, @@ -5771,8 +5400,8 @@ }, { "type": "ExpressionStatement", - "start": 2203, - "end": 2279, + "start": 2173, + "end": 2249, "loc": { "start": { "line": 84, @@ -5785,8 +5414,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 2203, - "end": 2278, + "start": 2173, + "end": 2248, "loc": { "start": { "line": 84, @@ -5800,8 +5429,8 @@ "operator": "=", "left": { "type": "Identifier", - "start": 2203, - "end": 2207, + "start": 2173, + "end": 2177, "loc": { "start": { "line": 84, @@ -5817,8 +5446,8 @@ }, "right": { "type": "CallExpression", - "start": 2210, - "end": 2278, + "start": 2180, + "end": 2248, "loc": { "start": { "line": 84, @@ -5831,8 +5460,8 @@ }, "callee": { "type": "Identifier", - "start": 2210, - "end": 2217, + "start": 2180, + "end": 2187, "loc": { "start": { "line": 84, @@ -5849,8 +5478,8 @@ "arguments": [ { "type": "CallExpression", - "start": 2218, - "end": 2271, + "start": 2188, + "end": 2241, "loc": { "start": { "line": 84, @@ -5863,8 +5492,8 @@ }, "callee": { "type": "MemberExpression", - "start": 2218, - "end": 2250, + "start": 2188, + "end": 2220, "loc": { "start": { "line": 84, @@ -5877,8 +5506,8 @@ }, "object": { "type": "CallExpression", - "start": 2218, - "end": 2243, + "start": 2188, + "end": 2213, "loc": { "start": { "line": 84, @@ -5891,8 +5520,8 @@ }, "callee": { "type": "MemberExpression", - "start": 2218, - "end": 2229, + "start": 2188, + "end": 2199, "loc": { "start": { "line": 84, @@ -5905,8 +5534,8 @@ }, "object": { "type": "Identifier", - "start": 2218, - "end": 2224, + "start": 2188, + "end": 2194, "loc": { "start": { "line": 84, @@ -5922,8 +5551,8 @@ }, "property": { "type": "Identifier", - "start": 2225, - "end": 2229, + "start": 2195, + "end": 2199, "loc": { "start": { "line": 84, @@ -5942,8 +5571,8 @@ "arguments": [ { "type": "Identifier", - "start": 2230, - "end": 2242, + "start": 2200, + "end": 2212, "loc": { "start": { "line": 84, @@ -5961,8 +5590,8 @@ }, "property": { "type": "Identifier", - "start": 2244, - "end": 2250, + "start": 2214, + "end": 2220, "loc": { "start": { "line": 84, @@ -5981,8 +5610,8 @@ "arguments": [ { "type": "CallExpression", - "start": 2251, - "end": 2270, + "start": 2221, + "end": 2240, "loc": { "start": { "line": 84, @@ -5995,8 +5624,8 @@ }, "callee": { "type": "Identifier", - "start": 2251, - "end": 2265, + "start": 2221, + "end": 2235, "loc": { "start": { "line": 84, @@ -6013,8 +5642,8 @@ "arguments": [ { "type": "Identifier", - "start": 2266, - "end": 2269, + "start": 2236, + "end": 2239, "loc": { "start": { "line": 84, @@ -6034,8 +5663,8 @@ }, { "type": "Identifier", - "start": 2273, - "end": 2277, + "start": 2243, + "end": 2247, "loc": { "start": { "line": 84, @@ -6061,8 +5690,8 @@ { "type": "CommentLine", "value": " Show hits from the REPL variables", - "start": 2080, - "end": 2116, + "start": 2050, + "end": 2086, "loc": { "start": { "line": 81, @@ -6078,8 +5707,8 @@ }, { "type": "ReturnStatement", - "start": 2287, - "end": 2307, + "start": 2257, + "end": 2277, "loc": { "start": { "line": 87, @@ -6092,8 +5721,8 @@ }, "argument": { "type": "ArrayExpression", - "start": 2294, - "end": 2306, + "start": 2264, + "end": 2276, "loc": { "start": { "line": 87, @@ -6107,8 +5736,8 @@ "elements": [ { "type": "Identifier", - "start": 2295, - "end": 2299, + "start": 2265, + "end": 2269, "loc": { "start": { "line": 87, @@ -6124,8 +5753,8 @@ }, { "type": "Identifier", - "start": 2301, - "end": 2305, + "start": 2271, + "end": 2275, "loc": { "start": { "line": 87, @@ -6148,12 +5777,15 @@ } } ], - "kind": "const" + "kind": "const", + "name": "_", + "leadingComments": [], + "trailingComments": [] }, { "type": "VariableDeclaration", - "start": 2312, - "end": 2507, + "start": 2282, + "end": 2477, "loc": { "start": { "line": 90, @@ -6167,8 +5799,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 2318, - "end": 2506, + "start": 2288, + "end": 2476, "loc": { "start": { "line": 90, @@ -6181,8 +5813,8 @@ }, "id": { "type": "Identifier", - "start": 2318, - "end": 2332, + "start": 2288, + "end": 2302, "loc": { "start": { "line": 90, @@ -6198,8 +5830,8 @@ }, "init": { "type": "ArrowFunctionExpression", - "start": 2335, - "end": 2506, + "start": 2305, + "end": 2476, "loc": { "start": { "line": 90, @@ -6212,8 +5844,8 @@ }, "id": { "type": "Identifier", - "start": 2318, - "end": 2332, + "start": 2288, + "end": 2302, "loc": { "start": { "line": 90, @@ -6233,8 +5865,8 @@ "params": [ { "type": "Identifier", - "start": 2335, - "end": 2338, + "start": 2305, + "end": 2308, "loc": { "start": { "line": 90, @@ -6251,8 +5883,8 @@ ], "body": { "type": "BlockStatement", - "start": 2342, - "end": 2506, + "start": 2312, + "end": 2476, "loc": { "start": { "line": 90, @@ -6266,8 +5898,8 @@ "body": [ { "type": "VariableDeclaration", - "start": 2346, - "end": 2360, + "start": 2316, + "end": 2330, "loc": { "start": { "line": 91, @@ -6281,8 +5913,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 2350, - "end": 2359, + "start": 2320, + "end": 2329, "loc": { "start": { "line": 91, @@ -6295,8 +5927,8 @@ }, "id": { "type": "Identifier", - "start": 2350, - "end": 2354, + "start": 2320, + "end": 2324, "loc": { "start": { "line": 91, @@ -6312,8 +5944,8 @@ }, "init": { "type": "ArrayExpression", - "start": 2357, - "end": 2359, + "start": 2327, + "end": 2329, "loc": { "start": { "line": 91, @@ -6332,8 +5964,8 @@ }, { "type": "VariableDeclaration", - "start": 2364, - "end": 2380, + "start": 2334, + "end": 2350, "loc": { "start": { "line": 93, @@ -6347,8 +5979,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 2368, - "end": 2379, + "start": 2338, + "end": 2349, "loc": { "start": { "line": 93, @@ -6361,8 +5993,8 @@ }, "id": { "type": "Identifier", - "start": 2368, - "end": 2373, + "start": 2338, + "end": 2343, "loc": { "start": { "line": 93, @@ -6378,8 +6010,8 @@ }, "init": { "type": "Identifier", - "start": 2376, - "end": 2379, + "start": 2346, + "end": 2349, "loc": { "start": { "line": 93, @@ -6399,8 +6031,8 @@ }, { "type": "WhileStatement", - "start": 2383, - "end": 2488, + "start": 2353, + "end": 2458, "loc": { "start": { "line": 94, @@ -6413,8 +6045,8 @@ }, "test": { "type": "Identifier", - "start": 2390, - "end": 2395, + "start": 2360, + "end": 2365, "loc": { "start": { "line": 94, @@ -6430,8 +6062,8 @@ }, "body": { "type": "BlockStatement", - "start": 2397, - "end": 2488, + "start": 2367, + "end": 2458, "loc": { "start": { "line": 94, @@ -6445,8 +6077,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 2403, - "end": 2442, + "start": 2373, + "end": 2412, "loc": { "start": { "line": 95, @@ -6459,8 +6091,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 2403, - "end": 2441, + "start": 2373, + "end": 2411, "loc": { "start": { "line": 95, @@ -6474,8 +6106,8 @@ "operator": "=", "left": { "type": "Identifier", - "start": 2403, - "end": 2407, + "start": 2373, + "end": 2377, "loc": { "start": { "line": 95, @@ -6491,8 +6123,8 @@ }, "right": { "type": "CallExpression", - "start": 2410, - "end": 2441, + "start": 2380, + "end": 2411, "loc": { "start": { "line": 95, @@ -6505,8 +6137,8 @@ }, "callee": { "type": "MemberExpression", - "start": 2410, - "end": 2421, + "start": 2380, + "end": 2391, "loc": { "start": { "line": 95, @@ -6519,8 +6151,8 @@ }, "object": { "type": "Identifier", - "start": 2410, - "end": 2414, + "start": 2380, + "end": 2384, "loc": { "start": { "line": 95, @@ -6536,8 +6168,8 @@ }, "property": { "type": "Identifier", - "start": 2415, - "end": 2421, + "start": 2385, + "end": 2391, "loc": { "start": { "line": 95, @@ -6556,8 +6188,8 @@ "arguments": [ { "type": "CallExpression", - "start": 2422, - "end": 2440, + "start": 2392, + "end": 2410, "loc": { "start": { "line": 95, @@ -6570,8 +6202,8 @@ }, "callee": { "type": "MemberExpression", - "start": 2422, - "end": 2433, + "start": 2392, + "end": 2403, "loc": { "start": { "line": 95, @@ -6584,8 +6216,8 @@ }, "object": { "type": "Identifier", - "start": 2422, - "end": 2428, + "start": 2392, + "end": 2398, "loc": { "start": { "line": 95, @@ -6601,8 +6233,8 @@ }, "property": { "type": "Identifier", - "start": 2429, - "end": 2433, + "start": 2399, + "end": 2403, "loc": { "start": { "line": 95, @@ -6621,8 +6253,8 @@ "arguments": [ { "type": "Identifier", - "start": 2434, - "end": 2439, + "start": 2404, + "end": 2409, "loc": { "start": { "line": 95, @@ -6644,8 +6276,8 @@ }, { "type": "ExpressionStatement", - "start": 2447, - "end": 2484, + "start": 2417, + "end": 2454, "loc": { "start": { "line": 96, @@ -6658,8 +6290,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 2447, - "end": 2483, + "start": 2417, + "end": 2453, "loc": { "start": { "line": 96, @@ -6673,8 +6305,8 @@ "operator": "=", "left": { "type": "Identifier", - "start": 2447, - "end": 2452, + "start": 2417, + "end": 2422, "loc": { "start": { "line": 96, @@ -6690,8 +6322,8 @@ }, "right": { "type": "CallExpression", - "start": 2455, - "end": 2483, + "start": 2425, + "end": 2453, "loc": { "start": { "line": 96, @@ -6704,8 +6336,8 @@ }, "callee": { "type": "MemberExpression", - "start": 2455, - "end": 2476, + "start": 2425, + "end": 2446, "loc": { "start": { "line": 96, @@ -6718,8 +6350,8 @@ }, "object": { "type": "Identifier", - "start": 2455, - "end": 2461, + "start": 2425, + "end": 2431, "loc": { "start": { "line": 96, @@ -6735,8 +6367,8 @@ }, "property": { "type": "Identifier", - "start": 2462, - "end": 2476, + "start": 2432, + "end": 2446, "loc": { "start": { "line": 96, @@ -6755,8 +6387,8 @@ "arguments": [ { "type": "Identifier", - "start": 2477, - "end": 2482, + "start": 2447, + "end": 2452, "loc": { "start": { "line": 96, @@ -6780,8 +6412,8 @@ }, { "type": "ReturnStatement", - "start": 2492, - "end": 2504, + "start": 2462, + "end": 2474, "loc": { "start": { "line": 99, @@ -6794,8 +6426,8 @@ }, "argument": { "type": "Identifier", - "start": 2499, - "end": 2503, + "start": 2469, + "end": 2473, "loc": { "start": { "line": 99, @@ -6820,8 +6452,8 @@ }, { "type": "VariableDeclaration", - "start": 2509, - "end": 2896, + "start": 2479, + "end": 2866, "loc": { "start": { "line": 102, @@ -6835,8 +6467,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 2515, - "end": 2895, + "start": 2485, + "end": 2865, "loc": { "start": { "line": 102, @@ -6849,8 +6481,8 @@ }, "id": { "type": "Identifier", - "start": 2515, - "end": 2522, + "start": 2485, + "end": 2492, "loc": { "start": { "line": 102, @@ -6866,8 +6498,8 @@ }, "init": { "type": "ArrowFunctionExpression", - "start": 2525, - "end": 2895, + "start": 2495, + "end": 2865, "loc": { "start": { "line": 102, @@ -6880,8 +6512,8 @@ }, "id": { "type": "Identifier", - "start": 2515, - "end": 2522, + "start": 2485, + "end": 2492, "loc": { "start": { "line": 102, @@ -6901,8 +6533,8 @@ "params": [ { "type": "Identifier", - "start": 2525, - "end": 2529, + "start": 2495, + "end": 2499, "loc": { "start": { "line": 102, @@ -6919,8 +6551,8 @@ ], "body": { "type": "BlockStatement", - "start": 2533, - "end": 2895, + "start": 2503, + "end": 2865, "loc": { "start": { "line": 102, @@ -6934,8 +6566,8 @@ "body": [ { "type": "VariableDeclaration", - "start": 2537, - "end": 2579, + "start": 2507, + "end": 2549, "loc": { "start": { "line": 103, @@ -6949,8 +6581,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 2543, - "end": 2578, + "start": 2513, + "end": 2548, "loc": { "start": { "line": 103, @@ -6963,8 +6595,8 @@ }, "id": { "type": "Identifier", - "start": 2543, - "end": 2548, + "start": 2513, + "end": 2518, "loc": { "start": { "line": 103, @@ -6980,8 +6612,8 @@ }, "init": { "type": "CallExpression", - "start": 2551, - "end": 2578, + "start": 2521, + "end": 2548, "loc": { "start": { "line": 103, @@ -6994,8 +6626,8 @@ }, "callee": { "type": "MemberExpression", - "start": 2551, - "end": 2561, + "start": 2521, + "end": 2531, "loc": { "start": { "line": 103, @@ -7008,8 +6640,8 @@ }, "object": { "type": "Identifier", - "start": 2551, - "end": 2555, + "start": 2521, + "end": 2525, "loc": { "start": { "line": 103, @@ -7025,8 +6657,8 @@ }, "property": { "type": "Identifier", - "start": 2556, - "end": 2561, + "start": 2526, + "end": 2531, "loc": { "start": { "line": 103, @@ -7045,8 +6677,8 @@ "arguments": [ { "type": "RegExpLiteral", - "start": 2562, - "end": 2577, + "start": 2532, + "end": 2547, "loc": { "start": { "line": 103, @@ -7071,8 +6703,8 @@ }, { "type": "IfStatement", - "start": 2582, - "end": 2879, + "start": 2552, + "end": 2849, "loc": { "start": { "line": 104, @@ -7085,8 +6717,8 @@ }, "test": { "type": "Identifier", - "start": 2586, - "end": 2591, + "start": 2556, + "end": 2561, "loc": { "start": { "line": 104, @@ -7102,8 +6734,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 2593, - "end": 2879, + "start": 2563, + "end": 2849, "loc": { "start": { "line": 104, @@ -7117,8 +6749,8 @@ "body": [ { "type": "VariableDeclaration", - "start": 2599, - "end": 2681, + "start": 2569, + "end": 2651, "loc": { "start": { "line": 105, @@ -7132,8 +6764,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 2605, - "end": 2680, + "start": 2575, + "end": 2650, "loc": { "start": { "line": 105, @@ -7146,8 +6778,8 @@ }, "id": { "type": "Identifier", - "start": 2605, - "end": 2609, + "start": 2575, + "end": 2579, "loc": { "start": { "line": 105, @@ -7163,8 +6795,8 @@ }, "init": { "type": "CallExpression", - "start": 2612, - "end": 2680, + "start": 2582, + "end": 2650, "loc": { "start": { "line": 105, @@ -7177,8 +6809,8 @@ }, "callee": { "type": "MemberExpression", - "start": 2612, - "end": 2675, + "start": 2582, + "end": 2645, "loc": { "start": { "line": 105, @@ -7191,8 +6823,8 @@ }, "object": { "type": "CallExpression", - "start": 2612, - "end": 2662, + "start": 2582, + "end": 2632, "loc": { "start": { "line": 105, @@ -7205,8 +6837,8 @@ }, "callee": { "type": "MemberExpression", - "start": 2612, - "end": 2660, + "start": 2582, + "end": 2630, "loc": { "start": { "line": 105, @@ -7219,8 +6851,8 @@ }, "object": { "type": "CallExpression", - "start": 2612, - "end": 2648, + "start": 2582, + "end": 2618, "loc": { "start": { "line": 105, @@ -7233,8 +6865,8 @@ }, "callee": { "type": "MemberExpression", - "start": 2612, - "end": 2635, + "start": 2582, + "end": 2605, "loc": { "start": { "line": 105, @@ -7247,8 +6879,8 @@ }, "object": { "type": "MemberExpression", - "start": 2612, - "end": 2620, + "start": 2582, + "end": 2590, "loc": { "start": { "line": 105, @@ -7261,8 +6893,8 @@ }, "object": { "type": "Identifier", - "start": 2612, - "end": 2617, + "start": 2582, + "end": 2587, "loc": { "start": { "line": 105, @@ -7278,8 +6910,8 @@ }, "property": { "type": "NumericLiteral", - "start": 2618, - "end": 2619, + "start": 2588, + "end": 2589, "loc": { "start": { "line": 105, @@ -7300,8 +6932,8 @@ }, "property": { "type": "Identifier", - "start": 2628, - "end": 2635, + "start": 2598, + "end": 2605, "loc": { "start": { "line": 106, @@ -7320,8 +6952,8 @@ "arguments": [ { "type": "RegExpLiteral", - "start": 2636, - "end": 2643, + "start": 2606, + "end": 2613, "loc": { "start": { "line": 106, @@ -7340,8 +6972,8 @@ }, { "type": "StringLiteral", - "start": 2645, - "end": 2647, + "start": 2615, + "end": 2617, "loc": { "start": { "line": 106, @@ -7362,8 +6994,8 @@ }, "property": { "type": "Identifier", - "start": 2656, - "end": 2660, + "start": 2626, + "end": 2630, "loc": { "start": { "line": 107, @@ -7383,8 +7015,8 @@ }, "property": { "type": "Identifier", - "start": 2670, - "end": 2675, + "start": 2640, + "end": 2645, "loc": { "start": { "line": 108, @@ -7403,8 +7035,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 2676, - "end": 2679, + "start": 2646, + "end": 2649, "loc": { "start": { "line": 108, @@ -7429,8 +7061,8 @@ }, { "type": "VariableDeclaration", - "start": 2686, - "end": 2720, + "start": 2656, + "end": 2690, "loc": { "start": { "line": 109, @@ -7444,8 +7076,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 2692, - "end": 2719, + "start": 2662, + "end": 2689, "loc": { "start": { "line": 109, @@ -7458,8 +7090,8 @@ }, "id": { "type": "Identifier", - "start": 2692, - "end": 2699, + "start": 2662, + "end": 2669, "loc": { "start": { "line": 109, @@ -7475,8 +7107,8 @@ }, "init": { "type": "CallExpression", - "start": 2702, - "end": 2719, + "start": 2672, + "end": 2689, "loc": { "start": { "line": 109, @@ -7489,8 +7121,8 @@ }, "callee": { "type": "MemberExpression", - "start": 2702, - "end": 2712, + "start": 2672, + "end": 2682, "loc": { "start": { "line": 109, @@ -7503,8 +7135,8 @@ }, "object": { "type": "Identifier", - "start": 2702, - "end": 2706, + "start": 2672, + "end": 2676, "loc": { "start": { "line": 109, @@ -7520,8 +7152,8 @@ }, "property": { "type": "Identifier", - "start": 2707, - "end": 2712, + "start": 2677, + "end": 2682, "loc": { "start": { "line": 109, @@ -7540,8 +7172,8 @@ "arguments": [ { "type": "NumericLiteral", - "start": 2713, - "end": 2714, + "start": 2683, + "end": 2684, "loc": { "start": { "line": 109, @@ -7560,8 +7192,8 @@ }, { "type": "UnaryExpression", - "start": 2716, - "end": 2718, + "start": 2686, + "end": 2688, "loc": { "start": { "line": 109, @@ -7576,8 +7208,8 @@ "prefix": true, "argument": { "type": "NumericLiteral", - "start": 2717, - "end": 2718, + "start": 2687, + "end": 2688, "loc": { "start": { "line": 109, @@ -7606,8 +7238,8 @@ }, { "type": "VariableDeclaration", - "start": 2725, - "end": 2757, + "start": 2695, + "end": 2727, "loc": { "start": { "line": 110, @@ -7621,8 +7253,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 2731, - "end": 2756, + "start": 2701, + "end": 2726, "loc": { "start": { "line": 110, @@ -7635,8 +7267,8 @@ }, "id": { "type": "Identifier", - "start": 2731, - "end": 2739, + "start": 2701, + "end": 2709, "loc": { "start": { "line": 110, @@ -7652,8 +7284,8 @@ }, "init": { "type": "CallExpression", - "start": 2742, - "end": 2756, + "start": 2712, + "end": 2726, "loc": { "start": { "line": 110, @@ -7666,8 +7298,8 @@ }, "callee": { "type": "MemberExpression", - "start": 2742, - "end": 2752, + "start": 2712, + "end": 2722, "loc": { "start": { "line": 110, @@ -7680,8 +7312,8 @@ }, "object": { "type": "Identifier", - "start": 2742, - "end": 2746, + "start": 2712, + "end": 2716, "loc": { "start": { "line": 110, @@ -7697,8 +7329,8 @@ }, "property": { "type": "Identifier", - "start": 2747, - "end": 2752, + "start": 2717, + "end": 2722, "loc": { "start": { "line": 110, @@ -7717,8 +7349,8 @@ "arguments": [ { "type": "UnaryExpression", - "start": 2753, - "end": 2755, + "start": 2723, + "end": 2725, "loc": { "start": { "line": 110, @@ -7733,8 +7365,8 @@ "prefix": true, "argument": { "type": "NumericLiteral", - "start": 2754, - "end": 2755, + "start": 2724, + "end": 2725, "loc": { "start": { "line": 110, @@ -7763,8 +7395,8 @@ }, { "type": "TryStatement", - "start": 2763, - "end": 2875, + "start": 2733, + "end": 2845, "loc": { "start": { "line": 112, @@ -7777,8 +7409,8 @@ }, "block": { "type": "BlockStatement", - "start": 2767, - "end": 2838, + "start": 2737, + "end": 2808, "loc": { "start": { "line": 112, @@ -7792,8 +7424,8 @@ "body": [ { "type": "ReturnStatement", - "start": 2775, - "end": 2832, + "start": 2745, + "end": 2802, "loc": { "start": { "line": 113, @@ -7806,8 +7438,8 @@ }, "argument": { "type": "CallExpression", - "start": 2782, - "end": 2831, + "start": 2752, + "end": 2801, "loc": { "start": { "line": 113, @@ -7820,8 +7452,8 @@ }, "callee": { "type": "Identifier", - "start": 2782, - "end": 2789, + "start": 2752, + "end": 2759, "loc": { "start": { "line": 113, @@ -7838,8 +7470,8 @@ "arguments": [ { "type": "CallExpression", - "start": 2790, - "end": 2820, + "start": 2760, + "end": 2790, "loc": { "start": { "line": 113, @@ -7852,8 +7484,8 @@ }, "callee": { "type": "MemberExpression", - "start": 2790, - "end": 2804, + "start": 2760, + "end": 2774, "loc": { "start": { "line": 113, @@ -7866,8 +7498,8 @@ }, "object": { "type": "Identifier", - "start": 2790, - "end": 2792, + "start": 2760, + "end": 2762, "loc": { "start": { "line": 113, @@ -7883,8 +7515,8 @@ }, "property": { "type": "Identifier", - "start": 2793, - "end": 2804, + "start": 2763, + "end": 2774, "loc": { "start": { "line": 113, @@ -7903,8 +7535,8 @@ "arguments": [ { "type": "TemplateLiteral", - "start": 2805, - "end": 2819, + "start": 2775, + "end": 2789, "loc": { "start": { "line": 113, @@ -7918,8 +7550,8 @@ "expressions": [ { "type": "Identifier", - "start": 2810, - "end": 2817, + "start": 2780, + "end": 2787, "loc": { "start": { "line": 113, @@ -7937,8 +7569,8 @@ "quasis": [ { "type": "TemplateElement", - "start": 2806, - "end": 2808, + "start": 2776, + "end": 2778, "loc": { "start": { "line": 113, @@ -7957,8 +7589,8 @@ }, { "type": "TemplateElement", - "start": 2818, - "end": 2818, + "start": 2788, + "end": 2788, "loc": { "start": { "line": 113, @@ -7981,8 +7613,8 @@ }, { "type": "Identifier", - "start": 2822, - "end": 2830, + "start": 2792, + "end": 2800, "loc": { "start": { "line": 113, @@ -8004,8 +7636,8 @@ }, "handler": { "type": "CatchClause", - "start": 2839, - "end": 2875, + "start": 2809, + "end": 2845, "loc": { "start": { "line": 114, @@ -8018,8 +7650,8 @@ }, "param": { "type": "Identifier", - "start": 2846, - "end": 2849, + "start": 2816, + "end": 2819, "loc": { "start": { "line": 114, @@ -8035,8 +7667,8 @@ }, "body": { "type": "BlockStatement", - "start": 2851, - "end": 2875, + "start": 2821, + "end": 2845, "loc": { "start": { "line": 114, @@ -8050,8 +7682,8 @@ "body": [ { "type": "ReturnStatement", - "start": 2859, - "end": 2869, + "start": 2829, + "end": 2839, "loc": { "start": { "line": 115, @@ -8064,8 +7696,8 @@ }, "argument": { "type": "ArrayExpression", - "start": 2866, - "end": 2868, + "start": 2836, + "end": 2838, "loc": { "start": { "line": 115, @@ -8093,8 +7725,8 @@ }, { "type": "ReturnStatement", - "start": 2883, - "end": 2893, + "start": 2853, + "end": 2863, "loc": { "start": { "line": 119, @@ -8107,8 +7739,8 @@ }, "argument": { "type": "ArrayExpression", - "start": 2890, - "end": 2892, + "start": 2860, + "end": 2862, "loc": { "start": { "line": 119, @@ -8132,8 +7764,8 @@ }, { "type": "VariableDeclaration", - "start": 2898, - "end": 3006, + "start": 2868, + "end": 2976, "loc": { "start": { "line": 122, @@ -8147,8 +7779,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 2904, - "end": 3005, + "start": 2874, + "end": 2975, "loc": { "start": { "line": 122, @@ -8161,8 +7793,8 @@ }, "id": { "type": "Identifier", - "start": 2904, - "end": 2911, + "start": 2874, + "end": 2881, "loc": { "start": { "line": 122, @@ -8178,8 +7810,8 @@ }, "init": { "type": "ArrowFunctionExpression", - "start": 2914, - "end": 3005, + "start": 2884, + "end": 2975, "loc": { "start": { "line": 122, @@ -8192,8 +7824,8 @@ }, "id": { "type": "Identifier", - "start": 2904, - "end": 2911, + "start": 2874, + "end": 2881, "loc": { "start": { "line": 122, @@ -8213,8 +7845,8 @@ "params": [ { "type": "Identifier", - "start": 2915, - "end": 2919, + "start": 2885, + "end": 2889, "loc": { "start": { "line": 122, @@ -8230,8 +7862,8 @@ }, { "type": "Identifier", - "start": 2921, - "end": 2925, + "start": 2891, + "end": 2895, "loc": { "start": { "line": 122, @@ -8248,8 +7880,8 @@ ], "body": { "type": "BlockStatement", - "start": 2930, - "end": 3005, + "start": 2900, + "end": 2975, "loc": { "start": { "line": 122, @@ -8263,8 +7895,8 @@ "body": [ { "type": "ReturnStatement", - "start": 2934, - "end": 3003, + "start": 2904, + "end": 2973, "loc": { "start": { "line": 123, @@ -8277,8 +7909,8 @@ }, "argument": { "type": "CallExpression", - "start": 2941, - "end": 3002, + "start": 2911, + "end": 2972, "loc": { "start": { "line": 123, @@ -8291,8 +7923,8 @@ }, "callee": { "type": "MemberExpression", - "start": 2941, - "end": 2952, + "start": 2911, + "end": 2922, "loc": { "start": { "line": 123, @@ -8305,8 +7937,8 @@ }, "object": { "type": "Identifier", - "start": 2941, - "end": 2945, + "start": 2911, + "end": 2915, "loc": { "start": { "line": 123, @@ -8322,8 +7954,8 @@ }, "property": { "type": "Identifier", - "start": 2946, - "end": 2952, + "start": 2916, + "end": 2922, "loc": { "start": { "line": 123, @@ -8342,8 +7974,8 @@ "arguments": [ { "type": "ArrowFunctionExpression", - "start": 2953, - "end": 3001, + "start": 2923, + "end": 2971, "loc": { "start": { "line": 123, @@ -8361,8 +7993,8 @@ "params": [ { "type": "Identifier", - "start": 2953, - "end": 2956, + "start": 2923, + "end": 2926, "loc": { "start": { "line": 123, @@ -8379,8 +8011,8 @@ ], "body": { "type": "BlockStatement", - "start": 2960, - "end": 3001, + "start": 2930, + "end": 2971, "loc": { "start": { "line": 123, @@ -8394,8 +8026,8 @@ "body": [ { "type": "ReturnStatement", - "start": 2966, - "end": 2997, + "start": 2936, + "end": 2967, "loc": { "start": { "line": 124, @@ -8408,8 +8040,8 @@ }, "argument": { "type": "BinaryExpression", - "start": 2973, - "end": 2996, + "start": 2943, + "end": 2966, "loc": { "start": { "line": 124, @@ -8422,8 +8054,8 @@ }, "left": { "type": "CallExpression", - "start": 2973, - "end": 2990, + "start": 2943, + "end": 2960, "loc": { "start": { "line": 124, @@ -8436,8 +8068,8 @@ }, "callee": { "type": "MemberExpression", - "start": 2973, - "end": 2984, + "start": 2943, + "end": 2954, "loc": { "start": { "line": 124, @@ -8450,8 +8082,8 @@ }, "object": { "type": "Identifier", - "start": 2973, - "end": 2976, + "start": 2943, + "end": 2946, "loc": { "start": { "line": 124, @@ -8467,8 +8099,8 @@ }, "property": { "type": "Identifier", - "start": 2977, - "end": 2984, + "start": 2947, + "end": 2954, "loc": { "start": { "line": 124, @@ -8487,8 +8119,8 @@ "arguments": [ { "type": "Identifier", - "start": 2985, - "end": 2989, + "start": 2955, + "end": 2959, "loc": { "start": { "line": 124, @@ -8507,8 +8139,8 @@ "operator": "===", "right": { "type": "NumericLiteral", - "start": 2995, - "end": 2996, + "start": 2965, + "end": 2966, "loc": { "start": { "line": 124, @@ -8543,1039 +8175,5057 @@ "kind": "const" }, { - "type": "ExpressionStatement", - "start": 3008, - "end": 3130, + "type": "ExportNamedDeclaration", + "start": 2978, + "end": 3088, "loc": { "start": { "line": 128, "column": 0 }, "end": { - "line": 137, - "column": 2 + "line": 135, + "column": 17 } }, - "expression": { - "type": "AssignmentExpression", - "start": 3008, - "end": 3129, - "loc": { - "start": { - "line": 128, - "column": 0 - }, - "end": { - "line": 137, - "column": 1 - } - }, - "operator": "=", - "left": { - "type": "MemberExpression", - "start": 3008, - "end": 3022, + "declaration": null, + "specifiers": [ + { + "type": "ExportSpecifier", + "start": 2987, + "end": 3000, "loc": { "start": { "line": 128, - "column": 0 + "column": 9 }, "end": { "line": 128, - "column": 14 + "column": 22 } }, - "object": { + "local": { "type": "Identifier", - "start": 3008, - "end": 3014, + "start": 2987, + "end": 3000, "loc": { "start": { "line": 128, - "column": 0 + "column": 9 }, "end": { "line": 128, - "column": 6 + "column": 22 }, - "identifierName": "module" + "identifierName": "getPromptLine" }, - "name": "module" + "name": "getPromptLine" }, - "property": { + "exported": { "type": "Identifier", - "start": 3015, - "end": 3022, + "start": 2987, + "end": 3000, "loc": { "start": { "line": 128, - "column": 7 + "column": 9 }, "end": { "line": 128, - "column": 14 + "column": 22 }, - "identifierName": "exports" + "identifierName": "getPromptLine" }, - "name": "exports" - }, - "computed": false + "name": "getPromptLine" + } }, - "right": { - "type": "ObjectExpression", - "start": 3025, - "end": 3129, + { + "type": "ExportSpecifier", + "start": 3004, + "end": 3011, "loc": { "start": { - "line": 128, - "column": 17 + "line": 129, + "column": 2 }, "end": { - "line": 137, - "column": 1 + "line": 129, + "column": 9 } }, - "properties": [ - { - "type": "ObjectProperty", - "start": 3029, - "end": 3042, - "loc": { - "start": { - "line": 129, - "column": 2 - }, - "end": { - "line": 129, - "column": 15 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 3029, - "end": 3042, - "loc": { - "start": { - "line": 129, - "column": 2 - }, - "end": { - "line": 129, - "column": 15 - }, - "identifierName": "getPromptLine" - }, - "name": "getPromptLine" + "local": { + "type": "Identifier", + "start": 3004, + "end": 3011, + "loc": { + "start": { + "line": 129, + "column": 2 }, - "value": { - "type": "Identifier", - "start": 3029, - "end": 3042, - "loc": { - "start": { - "line": 129, - "column": 2 - }, - "end": { - "line": 129, - "column": 15 - }, - "identifierName": "getPromptLine" - }, - "name": "getPromptLine" + "end": { + "line": 129, + "column": 9 }, - "extra": { - "shorthand": true - } + "identifierName": "eggExit" }, - { - "type": "ObjectProperty", - "start": 3046, - "end": 3053, - "loc": { - "start": { - "line": 130, - "column": 2 - }, - "end": { - "line": 130, - "column": 9 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 3046, - "end": 3053, - "loc": { - "start": { - "line": 130, - "column": 2 - }, - "end": { - "line": 130, - "column": 9 - }, - "identifierName": "eggExit" - }, - "name": "eggExit" + "name": "eggExit" + }, + "exported": { + "type": "Identifier", + "start": 3004, + "end": 3011, + "loc": { + "start": { + "line": 129, + "column": 2 }, - "value": { - "type": "Identifier", - "start": 3046, - "end": 3053, - "loc": { - "start": { - "line": 130, - "column": 2 - }, - "end": { - "line": 130, - "column": 9 - }, - "identifierName": "eggExit" - }, - "name": "eggExit" + "end": { + "line": 129, + "column": 9 }, - "extra": { - "shorthand": true - } + "identifierName": "eggExit" }, - { - "type": "ObjectProperty", - "start": 3057, - "end": 3064, - "loc": { - "start": { - "line": 131, - "column": 2 - }, - "end": { - "line": 131, - "column": 9 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 3057, - "end": 3064, - "loc": { - "start": { - "line": 131, - "column": 2 - }, - "end": { - "line": 131, - "column": 9 - }, - "identifierName": "eggHelp" - }, - "name": "eggHelp" + "name": "eggExit" + } + }, + { + "type": "ExportSpecifier", + "start": 3015, + "end": 3022, + "loc": { + "start": { + "line": 130, + "column": 2 + }, + "end": { + "line": 130, + "column": 9 + } + }, + "local": { + "type": "Identifier", + "start": 3015, + "end": 3022, + "loc": { + "start": { + "line": 130, + "column": 2 }, - "value": { - "type": "Identifier", - "start": 3057, - "end": 3064, - "loc": { - "start": { - "line": 131, - "column": 2 - }, - "end": { - "line": 131, - "column": 9 - }, - "identifierName": "eggHelp" - }, - "name": "eggHelp" + "end": { + "line": 130, + "column": 9 }, - "extra": { - "shorthand": true - } + "identifierName": "eggHelp" }, - { - "type": "ObjectProperty", - "start": 3068, - "end": 3075, - "loc": { - "start": { - "line": 132, - "column": 2 - }, - "end": { - "line": 132, - "column": 9 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 3068, - "end": 3075, - "loc": { - "start": { - "line": 132, - "column": 2 - }, - "end": { - "line": 132, - "column": 9 - }, - "identifierName": "eggInfo" - }, - "name": "eggInfo" + "name": "eggHelp" + }, + "exported": { + "type": "Identifier", + "start": 3015, + "end": 3022, + "loc": { + "start": { + "line": 130, + "column": 2 }, - "value": { - "type": "Identifier", - "start": 3068, - "end": 3075, - "loc": { - "start": { - "line": 132, - "column": 2 - }, - "end": { - "line": 132, - "column": 9 - }, - "identifierName": "eggInfo" - }, - "name": "eggInfo" + "end": { + "line": 130, + "column": 9 }, - "extra": { - "shorthand": true - } + "identifierName": "eggHelp" }, - { - "type": "ObjectProperty", - "start": 3079, - "end": 3087, - "loc": { - "start": { - "line": 133, - "column": 2 - }, - "end": { - "line": 133, - "column": 10 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 3079, - "end": 3087, - "loc": { - "start": { - "line": 133, - "column": 2 - }, - "end": { - "line": 133, - "column": 10 - }, - "identifierName": "eggClear" - }, - "name": "eggClear" + "name": "eggHelp" + } + }, + { + "type": "ExportSpecifier", + "start": 3026, + "end": 3033, + "loc": { + "start": { + "line": 131, + "column": 2 + }, + "end": { + "line": 131, + "column": 9 + } + }, + "local": { + "type": "Identifier", + "start": 3026, + "end": 3033, + "loc": { + "start": { + "line": 131, + "column": 2 }, - "value": { - "type": "Identifier", - "start": 3079, - "end": 3087, - "loc": { - "start": { - "line": 133, - "column": 2 - }, - "end": { - "line": 133, - "column": 10 - }, - "identifierName": "eggClear" - }, - "name": "eggClear" + "end": { + "line": 131, + "column": 9 }, - "extra": { - "shorthand": true - } + "identifierName": "eggInfo" }, - { - "type": "ObjectProperty", - "start": 3091, - "end": 3101, - "loc": { - "start": { - "line": 134, - "column": 2 - }, - "end": { - "line": 134, - "column": 12 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 3091, - "end": 3101, - "loc": { - "start": { - "line": 134, - "column": 2 - }, - "end": { - "line": 134, - "column": 12 - }, - "identifierName": "eggVersion" - }, - "name": "eggVersion" + "name": "eggInfo" + }, + "exported": { + "type": "Identifier", + "start": 3026, + "end": 3033, + "loc": { + "start": { + "line": 131, + "column": 2 }, - "value": { - "type": "Identifier", - "start": 3091, - "end": 3101, - "loc": { - "start": { - "line": 134, - "column": 2 - }, - "end": { - "line": 134, - "column": 12 - }, - "identifierName": "eggVersion" - }, - "name": "eggVersion" + "end": { + "line": 131, + "column": 9 }, - "extra": { - "shorthand": true - } + "identifierName": "eggInfo" }, - { - "type": "ObjectProperty", - "start": 3105, - "end": 3111, - "loc": { - "start": { - "line": 135, - "column": 2 - }, - "end": { - "line": 135, - "column": 8 - } + "name": "eggInfo" + } + }, + { + "type": "ExportSpecifier", + "start": 3037, + "end": 3045, + "loc": { + "start": { + "line": 132, + "column": 2 + }, + "end": { + "line": 132, + "column": 10 + } + }, + "local": { + "type": "Identifier", + "start": 3037, + "end": 3045, + "loc": { + "start": { + "line": 132, + "column": 2 }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 3105, - "end": 3111, - "loc": { - "start": { - "line": 135, - "column": 2 - }, - "end": { - "line": 135, - "column": 8 - }, - "identifierName": "eggRun" - }, - "name": "eggRun" + "end": { + "line": 132, + "column": 10 }, - "value": { - "type": "Identifier", - "start": 3105, - "end": 3111, - "loc": { - "start": { - "line": 135, - "column": 2 - }, - "end": { - "line": 135, - "column": 8 - }, - "identifierName": "eggRun" - }, - "name": "eggRun" + "identifierName": "eggClear" + }, + "name": "eggClear" + }, + "exported": { + "type": "Identifier", + "start": 3037, + "end": 3045, + "loc": { + "start": { + "line": 132, + "column": 2 }, - "extra": { - "shorthand": true + "end": { + "line": 132, + "column": 10 + }, + "identifierName": "eggClear" + }, + "name": "eggClear" + } + }, + { + "type": "ExportSpecifier", + "start": 3049, + "end": 3059, + "loc": { + "start": { + "line": 133, + "column": 2 + }, + "end": { + "line": 133, + "column": 12 + } + }, + "local": { + "type": "Identifier", + "start": 3049, + "end": 3059, + "loc": { + "start": { + "line": 133, + "column": 2 + }, + "end": { + "line": 133, + "column": 12 + }, + "identifierName": "eggVersion" + }, + "name": "eggVersion" + }, + "exported": { + "type": "Identifier", + "start": 3049, + "end": 3059, + "loc": { + "start": { + "line": 133, + "column": 2 + }, + "end": { + "line": 133, + "column": 12 + }, + "identifierName": "eggVersion" + }, + "name": "eggVersion" + } + }, + { + "type": "ExportSpecifier", + "start": 3063, + "end": 3069, + "loc": { + "start": { + "line": 134, + "column": 2 + }, + "end": { + "line": 134, + "column": 8 + } + }, + "local": { + "type": "Identifier", + "start": 3063, + "end": 3069, + "loc": { + "start": { + "line": 134, + "column": 2 + }, + "end": { + "line": 134, + "column": 8 + }, + "identifierName": "eggRun" + }, + "name": "eggRun" + }, + "exported": { + "type": "Identifier", + "start": 3063, + "end": 3069, + "loc": { + "start": { + "line": 134, + "column": 2 + }, + "end": { + "line": 134, + "column": 8 + }, + "identifierName": "eggRun" + }, + "name": "eggRun" + } + }, + { + "type": "ExportSpecifier", + "start": 3073, + "end": 3085, + "loc": { + "start": { + "line": 135, + "column": 2 + }, + "end": { + "line": 135, + "column": 14 + } + }, + "local": { + "type": "Identifier", + "start": 3073, + "end": 3085, + "loc": { + "start": { + "line": 135, + "column": 2 + }, + "end": { + "line": 135, + "column": 14 + }, + "identifierName": "eggCompleter" + }, + "name": "eggCompleter" + }, + "exported": { + "type": "Identifier", + "start": 3073, + "end": 3085, + "loc": { + "start": { + "line": 135, + "column": 2 + }, + "end": { + "line": 135, + "column": 14 + }, + "identifierName": "eggCompleter" + }, + "name": "eggCompleter" + } + } + ], + "source": null + }, + { + "type": "ExportNamedDeclaration", + "start": 2978, + "end": 3088, + "loc": { + "start": { + "line": 128, + "column": 0 + }, + "end": { + "line": 135, + "column": 17 + } + }, + "declaration": { + "type": "VariableDeclaration", + "start": 279, + "end": 382, + "loc": { + "start": { + "line": 14, + "column": 0 + }, + "end": { + "line": 16, + "column": 2 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 285, + "end": 381, + "loc": { + "start": { + "line": 14, + "column": 6 + }, + "end": { + "line": 16, + "column": 1 } }, - { - "type": "ObjectProperty", - "start": 3115, - "end": 3127, + "id": { + "type": "Identifier", + "start": 285, + "end": 298, + "loc": { + "start": { + "line": 14, + "column": 6 + }, + "end": { + "line": 14, + "column": 19 + }, + "identifierName": "getPromptLine" + }, + "name": "getPromptLine" + }, + "init": { + "type": "ArrowFunctionExpression", + "start": 301, + "end": 381, "loc": { "start": { - "line": 136, - "column": 2 + "line": 14, + "column": 22 }, "end": { - "line": 136, - "column": 14 + "line": 16, + "column": 1 } }, - "method": false, - "shorthand": true, - "computed": false, - "key": { + "id": { "type": "Identifier", - "start": 3115, - "end": 3127, + "start": 285, + "end": 298, "loc": { "start": { - "line": 136, - "column": 2 + "line": 14, + "column": 6 }, "end": { - "line": 136, - "column": 14 + "line": 14, + "column": 19 }, - "identifierName": "eggCompleter" + "identifierName": "getPromptLine" }, - "name": "eggCompleter" + "name": "getPromptLine" }, - "value": { - "type": "Identifier", - "start": 3115, - "end": 3127, + "generator": false, + "expression": false, + "async": false, + "params": [], + "body": { + "type": "BlockStatement", + "start": 307, + "end": 381, "loc": { "start": { - "line": 136, - "column": 2 + "line": 14, + "column": 28 }, "end": { - "line": 136, - "column": 14 - }, - "identifierName": "eggCompleter" + "line": 16, + "column": 1 + } }, - "name": "eggCompleter" - }, - "extra": { - "shorthand": true - } - } - ] - } - } - } - ], - "directives": [] - }, - "comments": [ - { - "type": "CommentLine", - "value": " PROMPT", - "start": 268, - "end": 277, - "loc": { - "start": { - "line": 10, - "column": 0 - }, - "end": { - "line": 10, - "column": 9 - } - } - }, - { - "type": "CommentLine", - "value": " Extra methods", - "start": 414, - "end": 430, - "loc": { - "start": { - "line": 18, - "column": 0 - }, - "end": { - "line": 18, - "column": 16 - } - } - }, - { - "type": "CommentLine", - "value": " Test if get hits from current directory", - "start": 2006, - "end": 2048, - "loc": { - "start": { - "line": 78, - "column": 2 - }, - "end": { - "line": 78, - "column": 44 - } - } - }, - { - "type": "CommentLine", - "value": " Show hits from the REPL variables", - "start": 2080, - "end": 2116, - "loc": { - "start": { - "line": 81, - "column": 2 + "body": [ + { + "type": "ReturnStatement", + "start": 311, + "end": 379, + "loc": { + "start": { + "line": 15, + "column": 2 + }, + "end": { + "line": 15, + "column": 70 + } + }, + "argument": { + "type": "TemplateLiteral", + "start": 318, + "end": 378, + "loc": { + "start": { + "line": 15, + "column": 9 + }, + "end": { + "line": 15, + "column": 69 + } + }, + "expressions": [ + { + "type": "MemberExpression", + "start": 321, + "end": 334, + "loc": { + "start": { + "line": 15, + "column": 12 + }, + "end": { + "line": 15, + "column": 25 + } + }, + "object": { + "type": "Identifier", + "start": 321, + "end": 327, + "loc": { + "start": { + "line": 15, + "column": 12 + }, + "end": { + "line": 15, + "column": 18 + }, + "identifierName": "colors" + }, + "name": "colors" + }, + "property": { + "type": "Identifier", + "start": 328, + "end": 334, + "loc": { + "start": { + "line": 15, + "column": 19 + }, + "end": { + "line": 15, + "column": 25 + }, + "identifierName": "YELLOW" + }, + "name": "YELLOW" + }, + "computed": false + }, + { + "type": "MemberExpression", + "start": 338, + "end": 358, + "loc": { + "start": { + "line": 15, + "column": 29 + }, + "end": { + "line": 15, + "column": 49 + } + }, + "object": { + "type": "Identifier", + "start": 338, + "end": 344, + "loc": { + "start": { + "line": 15, + "column": 29 + }, + "end": { + "line": 15, + "column": 35 + }, + "identifierName": "TopEnv" + }, + "name": "TopEnv" + }, + "property": { + "type": "StringLiteral", + "start": 345, + "end": 357, + "loc": { + "start": { + "line": 15, + "column": 36 + }, + "end": { + "line": 15, + "column": 48 + } + }, + "extra": { + "rawValue": "__PROMPT__", + "raw": "\"__PROMPT__\"" + }, + "value": "__PROMPT__" + }, + "computed": true + }, + { + "type": "MemberExpression", + "start": 362, + "end": 376, + "loc": { + "start": { + "line": 15, + "column": 53 + }, + "end": { + "line": 15, + "column": 67 + } + }, + "object": { + "type": "Identifier", + "start": 362, + "end": 368, + "loc": { + "start": { + "line": 15, + "column": 53 + }, + "end": { + "line": 15, + "column": 59 + }, + "identifierName": "colors" + }, + "name": "colors" + }, + "property": { + "type": "Identifier", + "start": 369, + "end": 376, + "loc": { + "start": { + "line": 15, + "column": 60 + }, + "end": { + "line": 15, + "column": 67 + }, + "identifierName": "DEFAULT" + }, + "name": "DEFAULT" + }, + "computed": false + } + ], + "quasis": [ + { + "type": "TemplateElement", + "start": 319, + "end": 319, + "loc": { + "start": { + "line": 15, + "column": 10 + }, + "end": { + "line": 15, + "column": 10 + } + }, + "value": { + "raw": "", + "cooked": "" + }, + "tail": false + }, + { + "type": "TemplateElement", + "start": 335, + "end": 336, + "loc": { + "start": { + "line": 15, + "column": 26 + }, + "end": { + "line": 15, + "column": 27 + } + }, + "value": { + "raw": " ", + "cooked": " " + }, + "tail": false + }, + { + "type": "TemplateElement", + "start": 359, + "end": 360, + "loc": { + "start": { + "line": 15, + "column": 50 + }, + "end": { + "line": 15, + "column": 51 + } + }, + "value": { + "raw": " ", + "cooked": " " + }, + "tail": false + }, + { + "type": "TemplateElement", + "start": 377, + "end": 377, + "loc": { + "start": { + "line": 15, + "column": 68 + }, + "end": { + "line": 15, + "column": 68 + } + }, + "value": { + "raw": "", + "cooked": "" + }, + "tail": true + } + ] + } + } + ], + "directives": [] + } + } + } + ], + "kind": "const", + "trailingComments": [ + { + "type": "CommentLine", + "value": " Extra methods", + "start": 384, + "end": 400, + "loc": { + "start": { + "line": 18, + "column": 0 + }, + "end": { + "line": 18, + "column": 16 + } + } + } + ], + "leadingComments": [] }, - "end": { - "line": 81, - "column": 38 - } - } - } - ], - "tokens": [ - { - "type": { - "label": "const", - "keyword": "const", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null + "specifiers": null, + "source": null, + "leadingComments": null }, - "value": "const", - "start": 0, - "end": 5, - "loc": { - "start": { - "line": 1, - "column": 0 + { + "type": "ExportNamedDeclaration", + "start": 2978, + "end": 3088, + "loc": { + "start": { + "line": 128, + "column": 0 + }, + "end": { + "line": 135, + "column": 17 + } }, - "end": { - "line": 1, - "column": 5 - } - } - }, - { - "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null + "declaration": { + "type": "VariableDeclaration", + "start": 402, + "end": 540, + "loc": { + "start": { + "line": 20, + "column": 0 + }, + "end": { + "line": 23, + "column": 3 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 408, + "end": 539, + "loc": { + "start": { + "line": 20, + "column": 6 + }, + "end": { + "line": 23, + "column": 2 + } + }, + "id": { + "type": "Identifier", + "start": 408, + "end": 415, + "loc": { + "start": { + "line": 20, + "column": 6 + }, + "end": { + "line": 20, + "column": 13 + }, + "identifierName": "eggExit" + }, + "name": "eggExit", + "leadingComments": null + }, + "init": { + "type": "AssignmentExpression", + "start": 419, + "end": 538, + "loc": { + "start": { + "line": 20, + "column": 17 + }, + "end": { + "line": 23, + "column": 1 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 419, + "end": 433, + "loc": { + "start": { + "line": 20, + "column": 17 + }, + "end": { + "line": 20, + "column": 31 + } + }, + "object": { + "type": "Identifier", + "start": 419, + "end": 425, + "loc": { + "start": { + "line": 20, + "column": 17 + }, + "end": { + "line": 20, + "column": 23 + }, + "identifierName": "TopEnv" + }, + "name": "TopEnv" + }, + "property": { + "type": "StringLiteral", + "start": 426, + "end": 432, + "loc": { + "start": { + "line": 20, + "column": 24 + }, + "end": { + "line": 20, + "column": 30 + } + }, + "extra": { + "rawValue": "exit", + "raw": "\"exit\"" + }, + "value": "exit" + }, + "computed": true + }, + "right": { + "type": "ArrowFunctionExpression", + "start": 436, + "end": 538, + "loc": { + "start": { + "line": 20, + "column": 34 + }, + "end": { + "line": 23, + "column": 1 + } + }, + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [], + "body": { + "type": "BlockStatement", + "start": 442, + "end": 538, + "loc": { + "start": { + "line": 20, + "column": 40 + }, + "end": { + "line": 23, + "column": 1 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 446, + "end": 517, + "loc": { + "start": { + "line": 21, + "column": 2 + }, + "end": { + "line": 21, + "column": 73 + } + }, + "expression": { + "type": "CallExpression", + "start": 446, + "end": 516, + "loc": { + "start": { + "line": 21, + "column": 2 + }, + "end": { + "line": 21, + "column": 72 + } + }, + "callee": { + "type": "MemberExpression", + "start": 446, + "end": 457, + "loc": { + "start": { + "line": 21, + "column": 2 + }, + "end": { + "line": 21, + "column": 13 + } + }, + "object": { + "type": "Identifier", + "start": 446, + "end": 453, + "loc": { + "start": { + "line": 21, + "column": 2 + }, + "end": { + "line": 21, + "column": 9 + }, + "identifierName": "console" + }, + "name": "console" + }, + "property": { + "type": "Identifier", + "start": 454, + "end": 457, + "loc": { + "start": { + "line": 21, + "column": 10 + }, + "end": { + "line": 21, + "column": 13 + }, + "identifierName": "log" + }, + "name": "log" + }, + "computed": false + }, + "arguments": [ + { + "type": "BinaryExpression", + "start": 458, + "end": 515, + "loc": { + "start": { + "line": 21, + "column": 14 + }, + "end": { + "line": 21, + "column": 71 + } + }, + "left": { + "type": "BinaryExpression", + "start": 458, + "end": 498, + "loc": { + "start": { + "line": 21, + "column": 14 + }, + "end": { + "line": 21, + "column": 54 + } + }, + "left": { + "type": "MemberExpression", + "start": 458, + "end": 469, + "loc": { + "start": { + "line": 21, + "column": 14 + }, + "end": { + "line": 21, + "column": 25 + } + }, + "object": { + "type": "Identifier", + "start": 458, + "end": 464, + "loc": { + "start": { + "line": 21, + "column": 14 + }, + "end": { + "line": 21, + "column": 20 + }, + "identifierName": "colors" + }, + "name": "colors" + }, + "property": { + "type": "Identifier", + "start": 465, + "end": 469, + "loc": { + "start": { + "line": 21, + "column": 21 + }, + "end": { + "line": 21, + "column": 25 + }, + "identifierName": "BLUE" + }, + "name": "BLUE" + }, + "computed": false + }, + "operator": "+", + "right": { + "type": "StringLiteral", + "start": 472, + "end": 498, + "loc": { + "start": { + "line": 21, + "column": 28 + }, + "end": { + "line": 21, + "column": 54 + } + }, + "extra": { + "rawValue": "Closing the REPL... Bye!", + "raw": "\"Closing the REPL... Bye!\"" + }, + "value": "Closing the REPL... Bye!" + } + }, + "operator": "+", + "right": { + "type": "MemberExpression", + "start": 501, + "end": 515, + "loc": { + "start": { + "line": 21, + "column": 57 + }, + "end": { + "line": 21, + "column": 71 + } + }, + "object": { + "type": "Identifier", + "start": 501, + "end": 507, + "loc": { + "start": { + "line": 21, + "column": 57 + }, + "end": { + "line": 21, + "column": 63 + }, + "identifierName": "colors" + }, + "name": "colors" + }, + "property": { + "type": "Identifier", + "start": 508, + "end": 515, + "loc": { + "start": { + "line": 21, + "column": 64 + }, + "end": { + "line": 21, + "column": 71 + }, + "identifierName": "DEFAULT" + }, + "name": "DEFAULT" + }, + "computed": false + } + } + ] + } + }, + { + "type": "ExpressionStatement", + "start": 520, + "end": 536, + "loc": { + "start": { + "line": 22, + "column": 2 + }, + "end": { + "line": 22, + "column": 18 + } + }, + "expression": { + "type": "CallExpression", + "start": 520, + "end": 535, + "loc": { + "start": { + "line": 22, + "column": 2 + }, + "end": { + "line": 22, + "column": 17 + } + }, + "callee": { + "type": "MemberExpression", + "start": 520, + "end": 532, + "loc": { + "start": { + "line": 22, + "column": 2 + }, + "end": { + "line": 22, + "column": 14 + } + }, + "object": { + "type": "Identifier", + "start": 520, + "end": 527, + "loc": { + "start": { + "line": 22, + "column": 2 + }, + "end": { + "line": 22, + "column": 9 + }, + "identifierName": "process" + }, + "name": "process" + }, + "property": { + "type": "Identifier", + "start": 528, + "end": 532, + "loc": { + "start": { + "line": 22, + "column": 10 + }, + "end": { + "line": 22, + "column": 14 + }, + "identifierName": "exit" + }, + "name": "exit" + }, + "computed": false + }, + "arguments": [ + { + "type": "NumericLiteral", + "start": 533, + "end": 534, + "loc": { + "start": { + "line": 22, + "column": 15 + }, + "end": { + "line": 22, + "column": 16 + } + }, + "extra": { + "rawValue": 0, + "raw": "0" + }, + "value": 0 + } + ] + } + } + ], + "directives": [] + } + }, + "extra": { + "parenthesized": true, + "parenStart": 418 + } + }, + "leadingComments": null + } + ], + "kind": "const", + "leadingComments": [ + { + "type": "CommentLine", + "value": " Extra methods", + "start": 384, + "end": 400, + "loc": { + "start": { + "line": 18, + "column": 0 + }, + "end": { + "line": 18, + "column": 16 + } + } + } + ], + "trailingComments": [] + }, + "specifiers": null, + "source": null, + "leadingComments": null + }, + { + "type": "ExportNamedDeclaration", + "start": 2978, + "end": 3088, + "loc": { + "start": { + "line": 128, + "column": 0 + }, + "end": { + "line": 135, + "column": 17 + } + }, + "declaration": { + "type": "VariableDeclaration", + "start": 824, + "end": 1000, + "loc": { + "start": { + "line": 32, + "column": 0 + }, + "end": { + "line": 39, + "column": 3 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 830, + "end": 999, + "loc": { + "start": { + "line": 32, + "column": 6 + }, + "end": { + "line": 39, + "column": 2 + } + }, + "id": { + "type": "Identifier", + "start": 830, + "end": 837, + "loc": { + "start": { + "line": 32, + "column": 6 + }, + "end": { + "line": 32, + "column": 13 + }, + "identifierName": "eggHelp" + }, + "name": "eggHelp" + }, + "init": { + "type": "AssignmentExpression", + "start": 841, + "end": 998, + "loc": { + "start": { + "line": 32, + "column": 17 + }, + "end": { + "line": 39, + "column": 1 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 841, + "end": 855, + "loc": { + "start": { + "line": 32, + "column": 17 + }, + "end": { + "line": 32, + "column": 31 + } + }, + "object": { + "type": "Identifier", + "start": 841, + "end": 847, + "loc": { + "start": { + "line": 32, + "column": 17 + }, + "end": { + "line": 32, + "column": 23 + }, + "identifierName": "TopEnv" + }, + "name": "TopEnv" + }, + "property": { + "type": "StringLiteral", + "start": 848, + "end": 854, + "loc": { + "start": { + "line": 32, + "column": 24 + }, + "end": { + "line": 32, + "column": 30 + } + }, + "extra": { + "rawValue": "help", + "raw": "\"help\"" + }, + "value": "help" + }, + "computed": true + }, + "right": { + "type": "ArrowFunctionExpression", + "start": 858, + "end": 998, + "loc": { + "start": { + "line": 32, + "column": 34 + }, + "end": { + "line": 39, + "column": 1 + } + }, + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [], + "body": { + "type": "BlockStatement", + "start": 864, + "end": 998, + "loc": { + "start": { + "line": 32, + "column": 40 + }, + "end": { + "line": 39, + "column": 1 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 868, + "end": 899, + "loc": { + "start": { + "line": 33, + "column": 2 + }, + "end": { + "line": 33, + "column": 33 + } + }, + "expression": { + "type": "CallExpression", + "start": 868, + "end": 898, + "loc": { + "start": { + "line": 33, + "column": 2 + }, + "end": { + "line": 33, + "column": 32 + } + }, + "callee": { + "type": "MemberExpression", + "start": 868, + "end": 879, + "loc": { + "start": { + "line": 33, + "column": 2 + }, + "end": { + "line": 33, + "column": 13 + } + }, + "object": { + "type": "Identifier", + "start": 868, + "end": 875, + "loc": { + "start": { + "line": 33, + "column": 2 + }, + "end": { + "line": 33, + "column": 9 + }, + "identifierName": "console" + }, + "name": "console" + }, + "property": { + "type": "Identifier", + "start": 876, + "end": 879, + "loc": { + "start": { + "line": 33, + "column": 10 + }, + "end": { + "line": 33, + "column": 13 + }, + "identifierName": "log" + }, + "name": "log" + }, + "computed": false + }, + "arguments": [ + { + "type": "StringLiteral", + "start": 880, + "end": 897, + "loc": { + "start": { + "line": 33, + "column": 14 + }, + "end": { + "line": 33, + "column": 31 + } + }, + "extra": { + "rawValue": " Egg help menu:", + "raw": "\" Egg help menu:\"" + }, + "value": " Egg help menu:" + } + ] + } + }, + { + "type": "ExpressionStatement", + "start": 902, + "end": 953, + "loc": { + "start": { + "line": 34, + "column": 2 + }, + "end": { + "line": 36, + "column": 5 + } + }, + "expression": { + "type": "CallExpression", + "start": 902, + "end": 952, + "loc": { + "start": { + "line": 34, + "column": 2 + }, + "end": { + "line": 36, + "column": 4 + } + }, + "callee": { + "type": "MemberExpression", + "start": 902, + "end": 914, + "loc": { + "start": { + "line": 34, + "column": 2 + }, + "end": { + "line": 34, + "column": 14 + } + }, + "object": { + "type": "Identifier", + "start": 902, + "end": 906, + "loc": { + "start": { + "line": 34, + "column": 2 + }, + "end": { + "line": 34, + "column": 6 + }, + "identifierName": "HELP" + }, + "name": "HELP" + }, + "property": { + "type": "Identifier", + "start": 907, + "end": 914, + "loc": { + "start": { + "line": 34, + "column": 7 + }, + "end": { + "line": 34, + "column": 14 + }, + "identifierName": "forEach" + }, + "name": "forEach" + }, + "computed": false + }, + "arguments": [ + { + "type": "ArrowFunctionExpression", + "start": 915, + "end": 951, + "loc": { + "start": { + "line": 34, + "column": 15 + }, + "end": { + "line": 36, + "column": 3 + } + }, + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 915, + "end": 919, + "loc": { + "start": { + "line": 34, + "column": 15 + }, + "end": { + "line": 34, + "column": 19 + }, + "identifierName": "line" + }, + "name": "line" + } + ], + "body": { + "type": "BlockStatement", + "start": 923, + "end": 951, + "loc": { + "start": { + "line": 34, + "column": 23 + }, + "end": { + "line": 36, + "column": 3 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 929, + "end": 947, + "loc": { + "start": { + "line": 35, + "column": 4 + }, + "end": { + "line": 35, + "column": 22 + } + }, + "expression": { + "type": "CallExpression", + "start": 929, + "end": 946, + "loc": { + "start": { + "line": 35, + "column": 4 + }, + "end": { + "line": 35, + "column": 21 + } + }, + "callee": { + "type": "MemberExpression", + "start": 929, + "end": 940, + "loc": { + "start": { + "line": 35, + "column": 4 + }, + "end": { + "line": 35, + "column": 15 + } + }, + "object": { + "type": "Identifier", + "start": 929, + "end": 936, + "loc": { + "start": { + "line": 35, + "column": 4 + }, + "end": { + "line": 35, + "column": 11 + }, + "identifierName": "console" + }, + "name": "console" + }, + "property": { + "type": "Identifier", + "start": 937, + "end": 940, + "loc": { + "start": { + "line": 35, + "column": 12 + }, + "end": { + "line": 35, + "column": 15 + }, + "identifierName": "log" + }, + "name": "log" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 941, + "end": 945, + "loc": { + "start": { + "line": 35, + "column": 16 + }, + "end": { + "line": 35, + "column": 20 + }, + "identifierName": "line" + }, + "name": "line" + } + ] + } + } + ], + "directives": [] + } + } + ] + } + }, + { + "type": "ReturnStatement", + "start": 957, + "end": 996, + "loc": { + "start": { + "line": 38, + "column": 2 + }, + "end": { + "line": 38, + "column": 41 + } + }, + "argument": { + "type": "CallExpression", + "start": 964, + "end": 995, + "loc": { + "start": { + "line": 38, + "column": 9 + }, + "end": { + "line": 38, + "column": 40 + } + }, + "callee": { + "type": "MemberExpression", + "start": 964, + "end": 974, + "loc": { + "start": { + "line": 38, + "column": 9 + }, + "end": { + "line": 38, + "column": 19 + } + }, + "object": { + "type": "StringLiteral", + "start": 964, + "end": 967, + "loc": { + "start": { + "line": 38, + "column": 9 + }, + "end": { + "line": 38, + "column": 12 + } + }, + "extra": { + "rawValue": "-", + "raw": "\"-\"" + }, + "value": "-" + }, + "property": { + "type": "Identifier", + "start": 968, + "end": 974, + "loc": { + "start": { + "line": 38, + "column": 13 + }, + "end": { + "line": 38, + "column": 19 + }, + "identifierName": "repeat" + }, + "name": "repeat" + }, + "computed": false + }, + "arguments": [ + { + "type": "BinaryExpression", + "start": 975, + "end": 994, + "loc": { + "start": { + "line": 38, + "column": 20 + }, + "end": { + "line": 38, + "column": 39 + } + }, + "left": { + "type": "MemberExpression", + "start": 975, + "end": 989, + "loc": { + "start": { + "line": 38, + "column": 20 + }, + "end": { + "line": 38, + "column": 34 + } + }, + "object": { + "type": "MemberExpression", + "start": 975, + "end": 982, + "loc": { + "start": { + "line": 38, + "column": 20 + }, + "end": { + "line": 38, + "column": 27 + } + }, + "object": { + "type": "Identifier", + "start": 975, + "end": 979, + "loc": { + "start": { + "line": 38, + "column": 20 + }, + "end": { + "line": 38, + "column": 24 + }, + "identifierName": "HELP" + }, + "name": "HELP" + }, + "property": { + "type": "NumericLiteral", + "start": 980, + "end": 981, + "loc": { + "start": { + "line": 38, + "column": 25 + }, + "end": { + "line": 38, + "column": 26 + } + }, + "extra": { + "rawValue": 0, + "raw": "0" + }, + "value": 0 + }, + "computed": true + }, + "property": { + "type": "Identifier", + "start": 983, + "end": 989, + "loc": { + "start": { + "line": 38, + "column": 28 + }, + "end": { + "line": 38, + "column": 34 + }, + "identifierName": "length" + }, + "name": "length" + }, + "computed": false + }, + "operator": "-", + "right": { + "type": "NumericLiteral", + "start": 992, + "end": 994, + "loc": { + "start": { + "line": 38, + "column": 37 + }, + "end": { + "line": 38, + "column": 39 + } + }, + "extra": { + "rawValue": 10, + "raw": "10" + }, + "value": 10 + } + } + ] + } + } + ], + "directives": [] + } + }, + "extra": { + "parenthesized": true, + "parenStart": 840 + } + } + } + ], + "kind": "const", + "leadingComments": [], + "trailingComments": [] + }, + "specifiers": null, + "source": null, + "leadingComments": null + }, + { + "type": "ExportNamedDeclaration", + "start": 2978, + "end": 3088, + "loc": { + "start": { + "line": 128, + "column": 0 + }, + "end": { + "line": 135, + "column": 17 + } + }, + "declaration": { + "type": "VariableDeclaration", + "start": 1002, + "end": 1593, + "loc": { + "start": { + "line": 41, + "column": 0 + }, + "end": { + "line": 58, + "column": 3 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 1008, + "end": 1592, + "loc": { + "start": { + "line": 41, + "column": 6 + }, + "end": { + "line": 58, + "column": 2 + } + }, + "id": { + "type": "Identifier", + "start": 1008, + "end": 1015, + "loc": { + "start": { + "line": 41, + "column": 6 + }, + "end": { + "line": 41, + "column": 13 + }, + "identifierName": "eggInfo" + }, + "name": "eggInfo" + }, + "init": { + "type": "AssignmentExpression", + "start": 1019, + "end": 1591, + "loc": { + "start": { + "line": 41, + "column": 17 + }, + "end": { + "line": 58, + "column": 1 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 1019, + "end": 1033, + "loc": { + "start": { + "line": 41, + "column": 17 + }, + "end": { + "line": 41, + "column": 31 + } + }, + "object": { + "type": "Identifier", + "start": 1019, + "end": 1025, + "loc": { + "start": { + "line": 41, + "column": 17 + }, + "end": { + "line": 41, + "column": 23 + }, + "identifierName": "TopEnv" + }, + "name": "TopEnv" + }, + "property": { + "type": "StringLiteral", + "start": 1026, + "end": 1032, + "loc": { + "start": { + "line": 41, + "column": 24 + }, + "end": { + "line": 41, + "column": 30 + } + }, + "extra": { + "rawValue": "info", + "raw": "\"info\"" + }, + "value": "info" + }, + "computed": true + }, + "right": { + "type": "ArrowFunctionExpression", + "start": 1036, + "end": 1591, + "loc": { + "start": { + "line": 41, + "column": 34 + }, + "end": { + "line": 58, + "column": 1 + } + }, + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [], + "body": { + "type": "BlockStatement", + "start": 1042, + "end": 1591, + "loc": { + "start": { + "line": 41, + "column": 40 + }, + "end": { + "line": 58, + "column": 1 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 1046, + "end": 1474, + "loc": { + "start": { + "line": 42, + "column": 2 + }, + "end": { + "line": 55, + "column": 4 + } + }, + "expression": { + "type": "CallExpression", + "start": 1046, + "end": 1473, + "loc": { + "start": { + "line": 42, + "column": 2 + }, + "end": { + "line": 55, + "column": 3 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1046, + "end": 1057, + "loc": { + "start": { + "line": 42, + "column": 2 + }, + "end": { + "line": 42, + "column": 13 + } + }, + "object": { + "type": "Identifier", + "start": 1046, + "end": 1053, + "loc": { + "start": { + "line": 42, + "column": 2 + }, + "end": { + "line": 42, + "column": 9 + }, + "identifierName": "console" + }, + "name": "console" + }, + "property": { + "type": "Identifier", + "start": 1054, + "end": 1057, + "loc": { + "start": { + "line": 42, + "column": 10 + }, + "end": { + "line": 42, + "column": 13 + }, + "identifierName": "log" + }, + "name": "log" + }, + "computed": false + }, + "arguments": [ + { + "type": "BinaryExpression", + "start": 1063, + "end": 1469, + "loc": { + "start": { + "line": 43, + "column": 4 + }, + "end": { + "line": 54, + "column": 20 + } + }, + "left": { + "type": "BinaryExpression", + "start": 1063, + "end": 1446, + "loc": { + "start": { + "line": 43, + "column": 4 + }, + "end": { + "line": 53, + "column": 1 + } + }, + "left": { + "type": "MemberExpression", + "start": 1063, + "end": 1074, + "loc": { + "start": { + "line": 43, + "column": 4 + }, + "end": { + "line": 43, + "column": 15 + } + }, + "object": { + "type": "Identifier", + "start": 1063, + "end": 1069, + "loc": { + "start": { + "line": 43, + "column": 4 + }, + "end": { + "line": 43, + "column": 10 + }, + "identifierName": "colors" + }, + "name": "colors" + }, + "property": { + "type": "Identifier", + "start": 1070, + "end": 1074, + "loc": { + "start": { + "line": 43, + "column": 11 + }, + "end": { + "line": 43, + "column": 15 + }, + "identifierName": "BLUE" + }, + "name": "BLUE" + }, + "computed": false + }, + "operator": "+", + "right": { + "type": "TemplateLiteral", + "start": 1083, + "end": 1446, + "loc": { + "start": { + "line": 44, + "column": 6 + }, + "end": { + "line": 53, + "column": 1 + } + }, + "expressions": [], + "quasis": [ + { + "type": "TemplateElement", + "start": 1084, + "end": 1445, + "loc": { + "start": { + "line": 44, + "column": 7 + }, + "end": { + "line": 53, + "column": 0 + } + }, + "value": { + "raw": "\n _ _ _\n | | | | | |\n ___ __ _ __ _| |_ ___ _ __ __| | ___ __| |\n / _ \\\\/ _\\` |/ _\\` | __/ _ \\\\ '_ \\\\ / _\\` |/ _ \\\\/ _\\` |\n | __/ (_| | (_| | || __/ | | | (_| | __/ (_| |\n \\\\___|\\\\__, |\\\\__, |\\\\__\\\\___|_| |_|\\\\__,_|\\\\___|\\\\__,_|\n __/ | __/ |\n |___/ |___/\n", + "cooked": "\n _ _ _\n | | | | | |\n ___ __ _ __ _| |_ ___ _ __ __| | ___ __| |\n / _ \\/ _` |/ _` | __/ _ \\ '_ \\ / _` |/ _ \\/ _` |\n | __/ (_| | (_| | || __/ | | | (_| | __/ (_| |\n \\___|\\__, |\\__, |\\__\\___|_| |_|\\__,_|\\___|\\__,_|\n __/ | __/ |\n |___/ |___/\n" + }, + "tail": true + } + ] + } + }, + "operator": "+", + "right": { + "type": "MemberExpression", + "start": 1455, + "end": 1469, + "loc": { + "start": { + "line": 54, + "column": 6 + }, + "end": { + "line": 54, + "column": 20 + } + }, + "object": { + "type": "Identifier", + "start": 1455, + "end": 1461, + "loc": { + "start": { + "line": 54, + "column": 6 + }, + "end": { + "line": 54, + "column": 12 + }, + "identifierName": "colors" + }, + "name": "colors" + }, + "property": { + "type": "Identifier", + "start": 1462, + "end": 1469, + "loc": { + "start": { + "line": 54, + "column": 13 + }, + "end": { + "line": 54, + "column": 20 + }, + "identifierName": "DEFAULT" + }, + "name": "DEFAULT" + }, + "computed": false + } + } + ] + } + }, + { + "type": "ExpressionStatement", + "start": 1477, + "end": 1525, + "loc": { + "start": { + "line": 56, + "column": 2 + }, + "end": { + "line": 56, + "column": 50 + } + }, + "expression": { + "type": "CallExpression", + "start": 1477, + "end": 1524, + "loc": { + "start": { + "line": 56, + "column": 2 + }, + "end": { + "line": 56, + "column": 49 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1477, + "end": 1488, + "loc": { + "start": { + "line": 56, + "column": 2 + }, + "end": { + "line": 56, + "column": 13 + } + }, + "object": { + "type": "Identifier", + "start": 1477, + "end": 1484, + "loc": { + "start": { + "line": 56, + "column": 2 + }, + "end": { + "line": 56, + "column": 9 + }, + "identifierName": "console" + }, + "name": "console" + }, + "property": { + "type": "Identifier", + "start": 1485, + "end": 1488, + "loc": { + "start": { + "line": 56, + "column": 10 + }, + "end": { + "line": 56, + "column": 13 + }, + "identifierName": "log" + }, + "name": "log" + }, + "computed": false + }, + "arguments": [ + { + "type": "TemplateLiteral", + "start": 1489, + "end": 1523, + "loc": { + "start": { + "line": 56, + "column": 14 + }, + "end": { + "line": 56, + "column": 48 + } + }, + "expressions": [ + { + "type": "MemberExpression", + "start": 1500, + "end": 1521, + "loc": { + "start": { + "line": 56, + "column": 25 + }, + "end": { + "line": 56, + "column": 46 + } + }, + "object": { + "type": "Identifier", + "start": 1500, + "end": 1506, + "loc": { + "start": { + "line": 56, + "column": 25 + }, + "end": { + "line": 56, + "column": 31 + }, + "identifierName": "TopEnv" + }, + "name": "TopEnv" + }, + "property": { + "type": "StringLiteral", + "start": 1507, + "end": 1520, + "loc": { + "start": { + "line": 56, + "column": 32 + }, + "end": { + "line": 56, + "column": 45 + } + }, + "extra": { + "rawValue": "__VERSION__", + "raw": "\"__VERSION__\"" + }, + "value": "__VERSION__" + }, + "computed": true + } + ], + "quasis": [ + { + "type": "TemplateElement", + "start": 1490, + "end": 1498, + "loc": { + "start": { + "line": 56, + "column": 15 + }, + "end": { + "line": 56, + "column": 23 + } + }, + "value": { + "raw": "Version ", + "cooked": "Version " + }, + "tail": false + }, + { + "type": "TemplateElement", + "start": 1522, + "end": 1522, + "loc": { + "start": { + "line": 56, + "column": 47 + }, + "end": { + "line": 56, + "column": 47 + } + }, + "value": { + "raw": "", + "cooked": "" + }, + "tail": true + } + ] + } + ] + } + }, + { + "type": "ExpressionStatement", + "start": 1528, + "end": 1589, + "loc": { + "start": { + "line": 57, + "column": 2 + }, + "end": { + "line": 57, + "column": 63 + } + }, + "expression": { + "type": "CallExpression", + "start": 1528, + "end": 1588, + "loc": { + "start": { + "line": 57, + "column": 2 + }, + "end": { + "line": 57, + "column": 62 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1528, + "end": 1539, + "loc": { + "start": { + "line": 57, + "column": 2 + }, + "end": { + "line": 57, + "column": 13 + } + }, + "object": { + "type": "Identifier", + "start": 1528, + "end": 1535, + "loc": { + "start": { + "line": 57, + "column": 2 + }, + "end": { + "line": 57, + "column": 9 + }, + "identifierName": "console" + }, + "name": "console" + }, + "property": { + "type": "Identifier", + "start": 1536, + "end": 1539, + "loc": { + "start": { + "line": 57, + "column": 10 + }, + "end": { + "line": 57, + "column": 13 + }, + "identifierName": "log" + }, + "name": "log" + }, + "computed": false + }, + "arguments": [ + { + "type": "StringLiteral", + "start": 1540, + "end": 1587, + "loc": { + "start": { + "line": 57, + "column": 14 + }, + "end": { + "line": 57, + "column": 61 + } + }, + "extra": { + "rawValue": "Created by David Afonso Dorta. License: GPLv2", + "raw": "\"Created by David Afonso Dorta. License: GPLv2\"" + }, + "value": "Created by David Afonso Dorta. License: GPLv2" + } + ] + } + } + ], + "directives": [] + } + }, + "extra": { + "parenthesized": true, + "parenStart": 1018 + } + } + } + ], + "kind": "const", + "leadingComments": [], + "trailingComments": [] + }, + "specifiers": null, + "source": null, + "leadingComments": null }, - "value": "process", - "start": 6, - "end": 13, - "loc": { - "start": { - "line": 1, - "column": 6 + { + "type": "ExportNamedDeclaration", + "start": 2978, + "end": 3088, + "loc": { + "start": { + "line": 128, + "column": 0 + }, + "end": { + "line": 135, + "column": 17 + } + }, + "declaration": { + "type": "VariableDeclaration", + "start": 1595, + "end": 1694, + "loc": { + "start": { + "line": 60, + "column": 0 + }, + "end": { + "line": 63, + "column": 3 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 1601, + "end": 1693, + "loc": { + "start": { + "line": 60, + "column": 6 + }, + "end": { + "line": 63, + "column": 2 + } + }, + "id": { + "type": "Identifier", + "start": 1601, + "end": 1609, + "loc": { + "start": { + "line": 60, + "column": 6 + }, + "end": { + "line": 60, + "column": 14 + }, + "identifierName": "eggClear" + }, + "name": "eggClear" + }, + "init": { + "type": "AssignmentExpression", + "start": 1613, + "end": 1692, + "loc": { + "start": { + "line": 60, + "column": 18 + }, + "end": { + "line": 63, + "column": 1 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 1613, + "end": 1628, + "loc": { + "start": { + "line": 60, + "column": 18 + }, + "end": { + "line": 60, + "column": 33 + } + }, + "object": { + "type": "Identifier", + "start": 1613, + "end": 1619, + "loc": { + "start": { + "line": 60, + "column": 18 + }, + "end": { + "line": 60, + "column": 24 + }, + "identifierName": "TopEnv" + }, + "name": "TopEnv" + }, + "property": { + "type": "StringLiteral", + "start": 1620, + "end": 1627, + "loc": { + "start": { + "line": 60, + "column": 25 + }, + "end": { + "line": 60, + "column": 32 + } + }, + "extra": { + "rawValue": "clear", + "raw": "\"clear\"" + }, + "value": "clear" + }, + "computed": true + }, + "right": { + "type": "ArrowFunctionExpression", + "start": 1631, + "end": 1692, + "loc": { + "start": { + "line": 60, + "column": 36 + }, + "end": { + "line": 63, + "column": 1 + } + }, + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [], + "body": { + "type": "BlockStatement", + "start": 1637, + "end": 1692, + "loc": { + "start": { + "line": 60, + "column": 42 + }, + "end": { + "line": 63, + "column": 1 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 1641, + "end": 1677, + "loc": { + "start": { + "line": 61, + "column": 2 + }, + "end": { + "line": 61, + "column": 38 + } + }, + "expression": { + "type": "CallExpression", + "start": 1641, + "end": 1676, + "loc": { + "start": { + "line": 61, + "column": 2 + }, + "end": { + "line": 61, + "column": 37 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1641, + "end": 1652, + "loc": { + "start": { + "line": 61, + "column": 2 + }, + "end": { + "line": 61, + "column": 13 + } + }, + "object": { + "type": "Identifier", + "start": 1641, + "end": 1648, + "loc": { + "start": { + "line": 61, + "column": 2 + }, + "end": { + "line": 61, + "column": 9 + }, + "identifierName": "console" + }, + "name": "console" + }, + "property": { + "type": "Identifier", + "start": 1649, + "end": 1652, + "loc": { + "start": { + "line": 61, + "column": 10 + }, + "end": { + "line": 61, + "column": 13 + }, + "identifierName": "log" + }, + "name": "log" + }, + "computed": false + }, + "arguments": [ + { + "type": "StringLiteral", + "start": 1653, + "end": 1675, + "loc": { + "start": { + "line": 61, + "column": 14 + }, + "end": { + "line": 61, + "column": 36 + } + }, + "extra": { + "rawValue": "\u001b[2J\u001b[0;0f", + "raw": "\"\\u001B[2J\\u001B[0;0f\"" + }, + "value": "\u001b[2J\u001b[0;0f" + } + ] + } + }, + { + "type": "ExpressionStatement", + "start": 1680, + "end": 1690, + "loc": { + "start": { + "line": 62, + "column": 2 + }, + "end": { + "line": 62, + "column": 12 + } + }, + "expression": { + "type": "CallExpression", + "start": 1680, + "end": 1689, + "loc": { + "start": { + "line": 62, + "column": 2 + }, + "end": { + "line": 62, + "column": 11 + } + }, + "callee": { + "type": "Identifier", + "start": 1680, + "end": 1687, + "loc": { + "start": { + "line": 62, + "column": 2 + }, + "end": { + "line": 62, + "column": 9 + }, + "identifierName": "eggInfo" + }, + "name": "eggInfo" + }, + "arguments": [] + } + } + ], + "directives": [] + } + }, + "extra": { + "parenthesized": true, + "parenStart": 1612 + } + } + } + ], + "kind": "const", + "leadingComments": [], + "trailingComments": [] }, - "end": { - "line": 1, - "column": 13 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null + "specifiers": null, + "source": null, + "leadingComments": null }, - "value": "=", - "start": 14, - "end": 15, - "loc": { - "start": { - "line": 1, - "column": 14 + { + "type": "ExportNamedDeclaration", + "start": 2978, + "end": 3088, + "loc": { + "start": { + "line": 128, + "column": 0 + }, + "end": { + "line": 135, + "column": 17 + } }, - "end": { - "line": 1, - "column": 15 - } - } - }, - { - "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "require", - "start": 16, - "end": 23, - "loc": { - "start": { - "line": 1, - "column": 16 + "declaration": { + "type": "VariableDeclaration", + "start": 1696, + "end": 1783, + "loc": { + "start": { + "line": 65, + "column": 0 + }, + "end": { + "line": 67, + "column": 43 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 1702, + "end": 1782, + "loc": { + "start": { + "line": 65, + "column": 6 + }, + "end": { + "line": 67, + "column": 42 + } + }, + "id": { + "type": "Identifier", + "start": 1702, + "end": 1712, + "loc": { + "start": { + "line": 65, + "column": 6 + }, + "end": { + "line": 65, + "column": 16 + }, + "identifierName": "eggVersion" + }, + "name": "eggVersion" + }, + "init": { + "type": "AssignmentExpression", + "start": 1716, + "end": 1781, + "loc": { + "start": { + "line": 65, + "column": 20 + }, + "end": { + "line": 67, + "column": 41 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 1716, + "end": 1741, + "loc": { + "start": { + "line": 65, + "column": 20 + }, + "end": { + "line": 67, + "column": 1 + } + }, + "object": { + "type": "Identifier", + "start": 1716, + "end": 1722, + "loc": { + "start": { + "line": 65, + "column": 20 + }, + "end": { + "line": 65, + "column": 26 + }, + "identifierName": "TopEnv" + }, + "name": "TopEnv" + }, + "property": { + "type": "StringLiteral", + "start": 1726, + "end": 1739, + "loc": { + "start": { + "line": 66, + "column": 2 + }, + "end": { + "line": 66, + "column": 15 + } + }, + "extra": { + "rawValue": "__VERSION__", + "raw": "\"__VERSION__\"" + }, + "value": "__VERSION__" + }, + "computed": true + }, + "right": { + "type": "MemberExpression", + "start": 1744, + "end": 1781, + "loc": { + "start": { + "line": 67, + "column": 4 + }, + "end": { + "line": 67, + "column": 41 + } + }, + "object": { + "type": "CallExpression", + "start": 1744, + "end": 1773, + "loc": { + "start": { + "line": 67, + "column": 4 + }, + "end": { + "line": 67, + "column": 33 + } + }, + "callee": { + "type": "Identifier", + "start": 1744, + "end": 1751, + "loc": { + "start": { + "line": 67, + "column": 4 + }, + "end": { + "line": 67, + "column": 11 + }, + "identifierName": "require" + }, + "name": "require" + }, + "arguments": [ + { + "type": "StringLiteral", + "start": 1752, + "end": 1772, + "loc": { + "start": { + "line": 67, + "column": 12 + }, + "end": { + "line": 67, + "column": 32 + } + }, + "extra": { + "rawValue": "../../package.json", + "raw": "\"../../package.json\"" + }, + "value": "../../package.json" + } + ] + }, + "property": { + "type": "Identifier", + "start": 1774, + "end": 1781, + "loc": { + "start": { + "line": 67, + "column": 34 + }, + "end": { + "line": 67, + "column": 41 + }, + "identifierName": "version" + }, + "name": "version" + }, + "computed": false + }, + "extra": { + "parenthesized": true, + "parenStart": 1715 + } + } + } + ], + "kind": "const", + "leadingComments": [], + "trailingComments": [] }, - "end": { - "line": 1, - "column": 23 - } - } - }, - { - "type": { - "label": "(", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null + "specifiers": null, + "source": null, + "leadingComments": null }, - "start": 23, - "end": 24, - "loc": { - "start": { - "line": 1, - "column": 23 + { + "type": "ExportNamedDeclaration", + "start": 2978, + "end": 3088, + "loc": { + "start": { + "line": 128, + "column": 0 + }, + "end": { + "line": 135, + "column": 17 + } }, - "end": { - "line": 1, - "column": 24 - } - } - }, - { - "type": { - "label": "string", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "process", - "start": 24, - "end": 33, - "loc": { - "start": { - "line": 1, - "column": 24 + "declaration": { + "type": "VariableDeclaration", + "start": 1785, + "end": 1934, + "loc": { + "start": { + "line": 69, + "column": 0 + }, + "end": { + "line": 75, + "column": 3 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 1791, + "end": 1933, + "loc": { + "start": { + "line": 69, + "column": 6 + }, + "end": { + "line": 75, + "column": 2 + } + }, + "id": { + "type": "Identifier", + "start": 1791, + "end": 1797, + "loc": { + "start": { + "line": 69, + "column": 6 + }, + "end": { + "line": 69, + "column": 12 + }, + "identifierName": "eggRun" + }, + "name": "eggRun" + }, + "init": { + "type": "AssignmentExpression", + "start": 1801, + "end": 1932, + "loc": { + "start": { + "line": 69, + "column": 16 + }, + "end": { + "line": 75, + "column": 1 + } + }, + "operator": "=", + "left": { + "type": "MemberExpression", + "start": 1801, + "end": 1814, + "loc": { + "start": { + "line": 69, + "column": 16 + }, + "end": { + "line": 69, + "column": 29 + } + }, + "object": { + "type": "Identifier", + "start": 1801, + "end": 1807, + "loc": { + "start": { + "line": 69, + "column": 16 + }, + "end": { + "line": 69, + "column": 22 + }, + "identifierName": "TopEnv" + }, + "name": "TopEnv" + }, + "property": { + "type": "StringLiteral", + "start": 1808, + "end": 1813, + "loc": { + "start": { + "line": 69, + "column": 23 + }, + "end": { + "line": 69, + "column": 28 + } + }, + "extra": { + "rawValue": "run", + "raw": "\"run\"" + }, + "value": "run" + }, + "computed": true + }, + "right": { + "type": "ArrowFunctionExpression", + "start": 1817, + "end": 1932, + "loc": { + "start": { + "line": 69, + "column": 32 + }, + "end": { + "line": 75, + "column": 1 + } + }, + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 1818, + "end": 1822, + "loc": { + "start": { + "line": 69, + "column": 33 + }, + "end": { + "line": 69, + "column": 37 + }, + "identifierName": "file" + }, + "name": "file" + }, + { + "type": "Identifier", + "start": 1824, + "end": 1829, + "loc": { + "start": { + "line": 69, + "column": 39 + }, + "end": { + "line": 69, + "column": 44 + }, + "identifierName": "debug" + }, + "name": "debug" + } + ], + "body": { + "type": "BlockStatement", + "start": 1834, + "end": 1932, + "loc": { + "start": { + "line": 69, + "column": 49 + }, + "end": { + "line": 75, + "column": 1 + } + }, + "body": [ + { + "type": "IfStatement", + "start": 1838, + "end": 1902, + "loc": { + "start": { + "line": 70, + "column": 2 + }, + "end": { + "line": 72, + "column": 3 + } + }, + "test": { + "type": "Identifier", + "start": 1842, + "end": 1847, + "loc": { + "start": { + "line": 70, + "column": 6 + }, + "end": { + "line": 70, + "column": 11 + }, + "identifierName": "debug" + }, + "name": "debug" + }, + "consequent": { + "type": "BlockStatement", + "start": 1849, + "end": 1902, + "loc": { + "start": { + "line": 70, + "column": 13 + }, + "end": { + "line": 72, + "column": 3 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 1855, + "end": 1898, + "loc": { + "start": { + "line": 71, + "column": 4 + }, + "end": { + "line": 71, + "column": 47 + } + }, + "expression": { + "type": "CallExpression", + "start": 1855, + "end": 1897, + "loc": { + "start": { + "line": 71, + "column": 4 + }, + "end": { + "line": 71, + "column": 46 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1855, + "end": 1866, + "loc": { + "start": { + "line": 71, + "column": 4 + }, + "end": { + "line": 71, + "column": 15 + } + }, + "object": { + "type": "Identifier", + "start": 1855, + "end": 1862, + "loc": { + "start": { + "line": 71, + "column": 4 + }, + "end": { + "line": 71, + "column": 11 + }, + "identifierName": "console" + }, + "name": "console" + }, + "property": { + "type": "Identifier", + "start": 1863, + "end": 1866, + "loc": { + "start": { + "line": 71, + "column": 12 + }, + "end": { + "line": 71, + "column": 15 + }, + "identifierName": "log" + }, + "name": "log" + }, + "computed": false + }, + "arguments": [ + { + "type": "CallExpression", + "start": 1867, + "end": 1896, + "loc": { + "start": { + "line": 71, + "column": 16 + }, + "end": { + "line": 71, + "column": 45 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1867, + "end": 1882, + "loc": { + "start": { + "line": 71, + "column": 16 + }, + "end": { + "line": 71, + "column": 31 + } + }, + "object": { + "type": "Identifier", + "start": 1867, + "end": 1869, + "loc": { + "start": { + "line": 71, + "column": 16 + }, + "end": { + "line": 71, + "column": 18 + }, + "identifierName": "fs" + }, + "name": "fs" + }, + "property": { + "type": "Identifier", + "start": 1870, + "end": 1882, + "loc": { + "start": { + "line": 71, + "column": 19 + }, + "end": { + "line": 71, + "column": 31 + }, + "identifierName": "readFileSync" + }, + "name": "readFileSync" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 1883, + "end": 1887, + "loc": { + "start": { + "line": 71, + "column": 32 + }, + "end": { + "line": 71, + "column": 36 + }, + "identifierName": "file" + }, + "name": "file" + }, + { + "type": "StringLiteral", + "start": 1889, + "end": 1895, + "loc": { + "start": { + "line": 71, + "column": 38 + }, + "end": { + "line": 71, + "column": 44 + } + }, + "extra": { + "rawValue": "utf8", + "raw": "\"utf8\"" + }, + "value": "utf8" + } + ] + } + ] + } + } + ], + "directives": [] + }, + "alternate": null + }, + { + "type": "ExpressionStatement", + "start": 1906, + "end": 1930, + "loc": { + "start": { + "line": 74, + "column": 2 + }, + "end": { + "line": 74, + "column": 26 + } + }, + "expression": { + "type": "CallExpression", + "start": 1906, + "end": 1929, + "loc": { + "start": { + "line": 74, + "column": 2 + }, + "end": { + "line": 74, + "column": 25 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1906, + "end": 1923, + "loc": { + "start": { + "line": 74, + "column": 2 + }, + "end": { + "line": 74, + "column": 19 + } + }, + "object": { + "type": "Identifier", + "start": 1906, + "end": 1911, + "loc": { + "start": { + "line": 74, + "column": 2 + }, + "end": { + "line": 74, + "column": 7 + }, + "identifierName": "Eggvm" + }, + "name": "Eggvm" + }, + "property": { + "type": "Identifier", + "start": 1912, + "end": 1923, + "loc": { + "start": { + "line": 74, + "column": 8 + }, + "end": { + "line": 74, + "column": 19 + }, + "identifierName": "runFromFile" + }, + "name": "runFromFile" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 1924, + "end": 1928, + "loc": { + "start": { + "line": 74, + "column": 20 + }, + "end": { + "line": 74, + "column": 24 + }, + "identifierName": "file" + }, + "name": "file" + } + ] + } + } + ], + "directives": [] + } + }, + "extra": { + "parenthesized": true, + "parenStart": 1800 + } + } + } + ], + "kind": "const", + "leadingComments": [], + "trailingComments": [] }, - "end": { - "line": 1, - "column": 33 - } - } - }, - { - "type": { - "label": ")", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null + "specifiers": null, + "source": null, + "leadingComments": null }, - "start": 33, - "end": 34, - "loc": { - "start": { - "line": 1, - "column": 33 + { + "type": "ExportNamedDeclaration", + "start": 2978, + "end": 3088, + "loc": { + "start": { + "line": 128, + "column": 0 + }, + "end": { + "line": 135, + "column": 17 + } }, - "end": { - "line": 1, - "column": 34 - } - } - }, - { - "type": { - "label": ";", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "start": 34, - "end": 35, - "loc": { - "start": { - "line": 1, - "column": 34 + "declaration": { + "type": "VariableDeclaration", + "start": 1936, + "end": 2280, + "loc": { + "start": { + "line": 77, + "column": 0 + }, + "end": { + "line": 88, + "column": 2 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 1942, + "end": 2279, + "loc": { + "start": { + "line": 77, + "column": 6 + }, + "end": { + "line": 88, + "column": 1 + } + }, + "id": { + "type": "Identifier", + "start": 1942, + "end": 1954, + "loc": { + "start": { + "line": 77, + "column": 6 + }, + "end": { + "line": 77, + "column": 18 + }, + "identifierName": "eggCompleter" + }, + "name": "eggCompleter" + }, + "init": { + "type": "ArrowFunctionExpression", + "start": 1957, + "end": 2279, + "loc": { + "start": { + "line": 77, + "column": 21 + }, + "end": { + "line": 88, + "column": 1 + } + }, + "id": { + "type": "Identifier", + "start": 1942, + "end": 1954, + "loc": { + "start": { + "line": 77, + "column": 6 + }, + "end": { + "line": 77, + "column": 18 + }, + "identifierName": "eggCompleter" + }, + "name": "eggCompleter" + }, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 1958, + "end": 1962, + "loc": { + "start": { + "line": 77, + "column": 22 + }, + "end": { + "line": 77, + "column": 26 + }, + "identifierName": "line" + }, + "name": "line" + }, + { + "type": "Identifier", + "start": 1964, + "end": 1967, + "loc": { + "start": { + "line": 77, + "column": 28 + }, + "end": { + "line": 77, + "column": 31 + }, + "identifierName": "env" + }, + "name": "env" + } + ], + "body": { + "type": "BlockStatement", + "start": 1972, + "end": 2279, + "loc": { + "start": { + "line": 77, + "column": 36 + }, + "end": { + "line": 88, + "column": 1 + } + }, + "body": [ + { + "type": "VariableDeclaration", + "start": 2021, + "end": 2046, + "loc": { + "start": { + "line": 79, + "column": 2 + }, + "end": { + "line": 79, + "column": 27 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 2025, + "end": 2045, + "loc": { + "start": { + "line": 79, + "column": 6 + }, + "end": { + "line": 79, + "column": 26 + } + }, + "id": { + "type": "Identifier", + "start": 2025, + "end": 2029, + "loc": { + "start": { + "line": 79, + "column": 6 + }, + "end": { + "line": 79, + "column": 10 + }, + "identifierName": "hits" + }, + "name": "hits", + "leadingComments": null + }, + "init": { + "type": "CallExpression", + "start": 2032, + "end": 2045, + "loc": { + "start": { + "line": 79, + "column": 13 + }, + "end": { + "line": 79, + "column": 26 + } + }, + "callee": { + "type": "Identifier", + "start": 2032, + "end": 2039, + "loc": { + "start": { + "line": 79, + "column": 13 + }, + "end": { + "line": 79, + "column": 20 + }, + "identifierName": "dirHits" + }, + "name": "dirHits" + }, + "arguments": [ + { + "type": "Identifier", + "start": 2040, + "end": 2044, + "loc": { + "start": { + "line": 79, + "column": 21 + }, + "end": { + "line": 79, + "column": 25 + }, + "identifierName": "line" + }, + "name": "line" + } + ] + }, + "leadingComments": null + } + ], + "kind": "let", + "leadingComments": [ + { + "type": "CommentLine", + "value": " Test if get hits from current directory", + "start": 1976, + "end": 2018, + "loc": { + "start": { + "line": 78, + "column": 2 + }, + "end": { + "line": 78, + "column": 44 + } + } + } + ], + "trailingComments": [ + { + "type": "CommentLine", + "value": " Show hits from the REPL variables", + "start": 2050, + "end": 2086, + "loc": { + "start": { + "line": 81, + "column": 2 + }, + "end": { + "line": 81, + "column": 38 + } + } + } + ] + }, + { + "type": "IfStatement", + "start": 2089, + "end": 2253, + "loc": { + "start": { + "line": 82, + "column": 2 + }, + "end": { + "line": 85, + "column": 3 + } + }, + "test": { + "type": "BinaryExpression", + "start": 2093, + "end": 2110, + "loc": { + "start": { + "line": 82, + "column": 6 + }, + "end": { + "line": 82, + "column": 23 + } + }, + "left": { + "type": "MemberExpression", + "start": 2093, + "end": 2104, + "loc": { + "start": { + "line": 82, + "column": 6 + }, + "end": { + "line": 82, + "column": 17 + } + }, + "object": { + "type": "Identifier", + "start": 2093, + "end": 2097, + "loc": { + "start": { + "line": 82, + "column": 6 + }, + "end": { + "line": 82, + "column": 10 + }, + "identifierName": "hits" + }, + "name": "hits", + "leadingComments": null + }, + "property": { + "type": "Identifier", + "start": 2098, + "end": 2104, + "loc": { + "start": { + "line": 82, + "column": 11 + }, + "end": { + "line": 82, + "column": 17 + }, + "identifierName": "length" + }, + "name": "length" + }, + "computed": false, + "leadingComments": null + }, + "operator": "===", + "right": { + "type": "NumericLiteral", + "start": 2109, + "end": 2110, + "loc": { + "start": { + "line": 82, + "column": 22 + }, + "end": { + "line": 82, + "column": 23 + } + }, + "extra": { + "rawValue": 0, + "raw": "0" + }, + "value": 0 + }, + "leadingComments": null + }, + "consequent": { + "type": "BlockStatement", + "start": 2112, + "end": 2253, + "loc": { + "start": { + "line": 82, + "column": 25 + }, + "end": { + "line": 85, + "column": 3 + } + }, + "body": [ + { + "type": "VariableDeclaration", + "start": 2118, + "end": 2168, + "loc": { + "start": { + "line": 83, + "column": 4 + }, + "end": { + "line": 83, + "column": 54 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 2124, + "end": 2167, + "loc": { + "start": { + "line": 83, + "column": 10 + }, + "end": { + "line": 83, + "column": 53 + } + }, + "id": { + "type": "Identifier", + "start": 2124, + "end": 2128, + "loc": { + "start": { + "line": 83, + "column": 10 + }, + "end": { + "line": 83, + "column": 14 + }, + "identifierName": "word" + }, + "name": "word" + }, + "init": { + "type": "MemberExpression", + "start": 2131, + "end": 2167, + "loc": { + "start": { + "line": 83, + "column": 17 + }, + "end": { + "line": 83, + "column": 53 + } + }, + "object": { + "type": "CallExpression", + "start": 2131, + "end": 2164, + "loc": { + "start": { + "line": 83, + "column": 17 + }, + "end": { + "line": 83, + "column": 50 + } + }, + "callee": { + "type": "MemberExpression", + "start": 2131, + "end": 2160, + "loc": { + "start": { + "line": 83, + "column": 17 + }, + "end": { + "line": 83, + "column": 46 + } + }, + "object": { + "type": "CallExpression", + "start": 2131, + "end": 2154, + "loc": { + "start": { + "line": 83, + "column": 17 + }, + "end": { + "line": 83, + "column": 40 + } + }, + "callee": { + "type": "MemberExpression", + "start": 2131, + "end": 2141, + "loc": { + "start": { + "line": 83, + "column": 17 + }, + "end": { + "line": 83, + "column": 27 + } + }, + "object": { + "type": "Identifier", + "start": 2131, + "end": 2135, + "loc": { + "start": { + "line": 83, + "column": 17 + }, + "end": { + "line": 83, + "column": 21 + }, + "identifierName": "line" + }, + "name": "line" + }, + "property": { + "type": "Identifier", + "start": 2136, + "end": 2141, + "loc": { + "start": { + "line": 83, + "column": 22 + }, + "end": { + "line": 83, + "column": 27 + }, + "identifierName": "split" + }, + "name": "split" + }, + "computed": false + }, + "arguments": [ + { + "type": "RegExpLiteral", + "start": 2142, + "end": 2153, + "loc": { + "start": { + "line": 83, + "column": 28 + }, + "end": { + "line": 83, + "column": 39 + } + }, + "extra": { + "raw": "/[\\s(),\"]+/" + }, + "pattern": "[\\s(),\"]+", + "flags": "" + } + ] + }, + "property": { + "type": "Identifier", + "start": 2155, + "end": 2160, + "loc": { + "start": { + "line": 83, + "column": 41 + }, + "end": { + "line": 83, + "column": 46 + }, + "identifierName": "slice" + }, + "name": "slice" + }, + "computed": false + }, + "arguments": [ + { + "type": "UnaryExpression", + "start": 2161, + "end": 2163, + "loc": { + "start": { + "line": 83, + "column": 47 + }, + "end": { + "line": 83, + "column": 49 + } + }, + "operator": "-", + "prefix": true, + "argument": { + "type": "NumericLiteral", + "start": 2162, + "end": 2163, + "loc": { + "start": { + "line": 83, + "column": 48 + }, + "end": { + "line": 83, + "column": 49 + } + }, + "extra": { + "rawValue": 1, + "raw": "1" + }, + "value": 1 + }, + "extra": { + "parenthesizedArgument": false + } + } + ] + }, + "property": { + "type": "NumericLiteral", + "start": 2165, + "end": 2166, + "loc": { + "start": { + "line": 83, + "column": 51 + }, + "end": { + "line": 83, + "column": 52 + } + }, + "extra": { + "rawValue": 0, + "raw": "0" + }, + "value": 0 + }, + "computed": true + } + } + ], + "kind": "const" + }, + { + "type": "ExpressionStatement", + "start": 2173, + "end": 2249, + "loc": { + "start": { + "line": 84, + "column": 4 + }, + "end": { + "line": 84, + "column": 80 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 2173, + "end": 2248, + "loc": { + "start": { + "line": 84, + "column": 4 + }, + "end": { + "line": 84, + "column": 79 + } + }, + "operator": "=", + "left": { + "type": "Identifier", + "start": 2173, + "end": 2177, + "loc": { + "start": { + "line": 84, + "column": 4 + }, + "end": { + "line": 84, + "column": 8 + }, + "identifierName": "hits" + }, + "name": "hits" + }, + "right": { + "type": "CallExpression", + "start": 2180, + "end": 2248, + "loc": { + "start": { + "line": 84, + "column": 11 + }, + "end": { + "line": 84, + "column": 79 + } + }, + "callee": { + "type": "Identifier", + "start": 2180, + "end": 2187, + "loc": { + "start": { + "line": 84, + "column": 11 + }, + "end": { + "line": 84, + "column": 18 + }, + "identifierName": "_filter" + }, + "name": "_filter" + }, + "arguments": [ + { + "type": "CallExpression", + "start": 2188, + "end": 2241, + "loc": { + "start": { + "line": 84, + "column": 19 + }, + "end": { + "line": 84, + "column": 72 + } + }, + "callee": { + "type": "MemberExpression", + "start": 2188, + "end": 2220, + "loc": { + "start": { + "line": 84, + "column": 19 + }, + "end": { + "line": 84, + "column": 51 + } + }, + "object": { + "type": "CallExpression", + "start": 2188, + "end": 2213, + "loc": { + "start": { + "line": 84, + "column": 19 + }, + "end": { + "line": 84, + "column": 44 + } + }, + "callee": { + "type": "MemberExpression", + "start": 2188, + "end": 2199, + "loc": { + "start": { + "line": 84, + "column": 19 + }, + "end": { + "line": 84, + "column": 30 + } + }, + "object": { + "type": "Identifier", + "start": 2188, + "end": 2194, + "loc": { + "start": { + "line": 84, + "column": 19 + }, + "end": { + "line": 84, + "column": 25 + }, + "identifierName": "Object" + }, + "name": "Object" + }, + "property": { + "type": "Identifier", + "start": 2195, + "end": 2199, + "loc": { + "start": { + "line": 84, + "column": 26 + }, + "end": { + "line": 84, + "column": 30 + }, + "identifierName": "keys" + }, + "name": "keys" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 2200, + "end": 2212, + "loc": { + "start": { + "line": 84, + "column": 31 + }, + "end": { + "line": 84, + "column": 43 + }, + "identifierName": "SpecialForms" + }, + "name": "SpecialForms" + } + ] + }, + "property": { + "type": "Identifier", + "start": 2214, + "end": 2220, + "loc": { + "start": { + "line": 84, + "column": 45 + }, + "end": { + "line": 84, + "column": 51 + }, + "identifierName": "concat" + }, + "name": "concat" + }, + "computed": false + }, + "arguments": [ + { + "type": "CallExpression", + "start": 2221, + "end": 2240, + "loc": { + "start": { + "line": 84, + "column": 52 + }, + "end": { + "line": 84, + "column": 71 + } + }, + "callee": { + "type": "Identifier", + "start": 2221, + "end": 2235, + "loc": { + "start": { + "line": 84, + "column": 52 + }, + "end": { + "line": 84, + "column": 66 + }, + "identifierName": "_allProperties" + }, + "name": "_allProperties" + }, + "arguments": [ + { + "type": "Identifier", + "start": 2236, + "end": 2239, + "loc": { + "start": { + "line": 84, + "column": 67 + }, + "end": { + "line": 84, + "column": 70 + }, + "identifierName": "env" + }, + "name": "env" + } + ] + } + ] + }, + { + "type": "Identifier", + "start": 2243, + "end": 2247, + "loc": { + "start": { + "line": 84, + "column": 74 + }, + "end": { + "line": 84, + "column": 78 + }, + "identifierName": "word" + }, + "name": "word" + } + ] + } + } + } + ], + "directives": [] + }, + "alternate": null, + "leadingComments": [ + { + "type": "CommentLine", + "value": " Show hits from the REPL variables", + "start": 2050, + "end": 2086, + "loc": { + "start": { + "line": 81, + "column": 2 + }, + "end": { + "line": 81, + "column": 38 + } + } + } + ] + }, + { + "type": "ReturnStatement", + "start": 2257, + "end": 2277, + "loc": { + "start": { + "line": 87, + "column": 2 + }, + "end": { + "line": 87, + "column": 22 + } + }, + "argument": { + "type": "ArrayExpression", + "start": 2264, + "end": 2276, + "loc": { + "start": { + "line": 87, + "column": 9 + }, + "end": { + "line": 87, + "column": 21 + } + }, + "elements": [ + { + "type": "Identifier", + "start": 2265, + "end": 2269, + "loc": { + "start": { + "line": 87, + "column": 10 + }, + "end": { + "line": 87, + "column": 14 + }, + "identifierName": "hits" + }, + "name": "hits" + }, + { + "type": "Identifier", + "start": 2271, + "end": 2275, + "loc": { + "start": { + "line": 87, + "column": 16 + }, + "end": { + "line": 87, + "column": 20 + }, + "identifierName": "line" + }, + "name": "line" + } + ] + } + } + ], + "directives": [] + } + } + } + ], + "kind": "const", + "leadingComments": [], + "trailingComments": [] }, - "end": { - "line": 1, - "column": 35 - } + "specifiers": null, + "source": null, + "leadingComments": null } - }, + ], + "directives": [] + }, + "comments": [ { - "type": { - "label": "const", - "keyword": "const", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "const", - "start": 36, - "end": 41, + "type": "CommentLine", + "value": " PROMPT", + "start": 238, + "end": 247, "loc": { "start": { - "line": 2, + "line": 10, "column": 0 }, "end": { - "line": 2, - "column": 5 - } - } - }, - { - "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "fs", - "start": 42, - "end": 44, - "loc": { - "start": { - "line": 2, - "column": 6 - }, - "end": { - "line": 2, - "column": 8 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 45, - "end": 46, - "loc": { - "start": { - "line": 2, + "line": 10, "column": 9 - }, - "end": { - "line": 2, - "column": 10 - } - } - }, - { - "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "require", - "start": 47, - "end": 54, - "loc": { - "start": { - "line": 2, - "column": 11 - }, - "end": { - "line": 2, - "column": 18 - } - } - }, - { - "type": { - "label": "(", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 54, - "end": 55, - "loc": { - "start": { - "line": 2, - "column": 18 - }, - "end": { - "line": 2, - "column": 19 } } }, { - "type": { - "label": "string", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "fs", - "start": 55, - "end": 59, + "type": "CommentLine", + "value": " Extra methods", + "start": 384, + "end": 400, "loc": { "start": { - "line": 2, - "column": 19 + "line": 18, + "column": 0 }, "end": { - "line": 2, - "column": 23 + "line": 18, + "column": 16 } } }, { - "type": { - "label": ")", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 59, - "end": 60, + "type": "CommentLine", + "value": " Test if get hits from current directory", + "start": 1976, + "end": 2018, "loc": { "start": { - "line": 2, - "column": 23 + "line": 78, + "column": 2 }, "end": { - "line": 2, - "column": 24 + "line": 78, + "column": 44 } } }, { - "type": { - "label": ";", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "start": 60, - "end": 61, + "type": "CommentLine", + "value": " Show hits from the REPL variables", + "start": 2050, + "end": 2086, "loc": { "start": { - "line": 2, - "column": 24 + "line": 81, + "column": 2 }, "end": { - "line": 2, - "column": 25 + "line": 81, + "column": 38 } } - }, + } + ], + "tokens": [ { "type": { - "label": "const", - "keyword": "const", + "label": "import", + "keyword": "import", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -9584,24 +13234,24 @@ "binop": null, "updateContext": null }, - "value": "const", - "start": 63, - "end": 68, + "value": "import", + "start": 0, + "end": 6, "loc": { "start": { - "line": 4, + "line": 1, "column": 0 }, "end": { - "line": 4, - "column": 5 + "line": 1, + "column": 6 } } }, { "type": { - "label": "{", - "beforeExpr": true, + "label": "name", + "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, @@ -9610,16 +13260,17 @@ "postfix": false, "binop": null }, - "start": 69, - "end": 70, + "value": "process", + "start": 7, + "end": 14, "loc": { "start": { - "line": 4, - "column": 6 + "line": 1, + "column": 7 }, "end": { - "line": 4, - "column": 7 + "line": 1, + "column": 14 } } }, @@ -9635,75 +13286,77 @@ "postfix": false, "binop": null }, - "value": "SpecialForms", - "start": 71, - "end": 83, + "value": "from", + "start": 15, + "end": 19, "loc": { "start": { - "line": 4, - "column": 8 + "line": 1, + "column": 15 }, "end": { - "line": 4, - "column": 20 + "line": 1, + "column": 19 } } }, { "type": { - "label": "}", + "label": "string", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "start": 84, - "end": 85, + "value": "process", + "start": 20, + "end": 29, "loc": { "start": { - "line": 4, - "column": 21 + "line": 1, + "column": 20 }, "end": { - "line": 4, - "column": 22 + "line": 1, + "column": 29 } } }, { "type": { - "label": "=", + "label": ";", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, - "isAssign": true, + "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, - "value": "=", - "start": 86, - "end": 87, + "start": 29, + "end": 30, "loc": { "start": { - "line": 4, - "column": 23 + "line": 1, + "column": 29 }, "end": { - "line": 4, - "column": 24 + "line": 1, + "column": 30 } } }, { "type": { - "label": "name", + "label": "import", + "keyword": "import", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, @@ -9711,26 +13364,27 @@ "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "value": "require", - "start": 88, - "end": 95, + "value": "import", + "start": 31, + "end": 37, "loc": { "start": { - "line": 4, - "column": 25 + "line": 2, + "column": 0 }, "end": { - "line": 4, - "column": 32 + "line": 2, + "column": 6 } } }, { "type": { - "label": "(", - "beforeExpr": true, + "label": "name", + "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, @@ -9739,22 +13393,23 @@ "postfix": false, "binop": null }, - "start": 95, - "end": 96, + "value": "fs", + "start": 38, + "end": 40, "loc": { "start": { - "line": 4, - "column": 32 + "line": 2, + "column": 7 }, "end": { - "line": 4, - "column": 33 + "line": 2, + "column": 9 } } }, { "type": { - "label": "string", + "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, @@ -9762,45 +13417,46 @@ "isAssign": false, "prefix": false, "postfix": false, - "binop": null, - "updateContext": null + "binop": null }, - "value": "../interp/registry.js", - "start": 96, - "end": 119, + "value": "from", + "start": 41, + "end": 45, "loc": { "start": { - "line": 4, - "column": 33 + "line": 2, + "column": 10 }, "end": { - "line": 4, - "column": 56 + "line": 2, + "column": 14 } } }, { "type": { - "label": ")", + "label": "string", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "start": 119, - "end": 120, + "value": "fs", + "start": 46, + "end": 50, "loc": { "start": { - "line": 4, - "column": 56 + "line": 2, + "column": 15 }, "end": { - "line": 4, - "column": 57 + "line": 2, + "column": 19 } } }, @@ -9817,25 +13473,25 @@ "binop": null, "updateContext": null }, - "start": 120, - "end": 121, + "start": 50, + "end": 51, "loc": { "start": { - "line": 4, - "column": 57 + "line": 2, + "column": 19 }, "end": { - "line": 4, - "column": 58 + "line": 2, + "column": 20 } } }, { "type": { - "label": "const", - "keyword": "const", + "label": "import", + "keyword": "import", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -9844,17 +13500,17 @@ "binop": null, "updateContext": null }, - "value": "const", - "start": 122, - "end": 127, + "value": "import", + "start": 53, + "end": 59, "loc": { "start": { - "line": 5, + "line": 4, "column": 0 }, "end": { - "line": 5, - "column": 5 + "line": 4, + "column": 6 } } }, @@ -9870,16 +13526,16 @@ "postfix": false, "binop": null }, - "start": 128, - "end": 129, + "start": 60, + "end": 61, "loc": { "start": { - "line": 5, - "column": 6 + "line": 4, + "column": 7 }, "end": { - "line": 5, - "column": 7 + "line": 4, + "column": 8 } } }, @@ -9895,17 +13551,17 @@ "postfix": false, "binop": null }, - "value": "TopEnv", - "start": 130, - "end": 136, + "value": "SpecialForms", + "start": 62, + "end": 74, "loc": { "start": { - "line": 5, - "column": 8 + "line": 4, + "column": 9 }, "end": { - "line": 5, - "column": 14 + "line": 4, + "column": 21 } } }, @@ -9921,43 +13577,16 @@ "postfix": false, "binop": null }, - "start": 137, - "end": 138, - "loc": { - "start": { - "line": 5, - "column": 15 - }, - "end": { - "line": 5, - "column": 16 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 139, - "end": 140, + "start": 75, + "end": 76, "loc": { "start": { - "line": 5, - "column": 17 + "line": 4, + "column": 22 }, "end": { - "line": 5, - "column": 18 + "line": 4, + "column": 23 } } }, @@ -9973,50 +13602,52 @@ "postfix": false, "binop": null }, - "value": "require", - "start": 141, - "end": 148, + "value": "from", + "start": 77, + "end": 81, "loc": { "start": { - "line": 5, - "column": 19 + "line": 4, + "column": 24 }, "end": { - "line": 5, - "column": 26 + "line": 4, + "column": 28 } } }, { "type": { - "label": "(", - "beforeExpr": true, + "label": "string", + "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "start": 148, - "end": 149, + "value": "../interp/registry.js", + "start": 82, + "end": 105, "loc": { "start": { - "line": 5, - "column": 26 + "line": 4, + "column": 29 }, "end": { - "line": 5, - "column": 27 + "line": 4, + "column": 52 } } }, { - "type": { - "label": "string", - "beforeExpr": false, - "startsExpr": true, + "type": { + "label": ";", + "beforeExpr": true, + "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -10025,104 +13656,103 @@ "binop": null, "updateContext": null }, - "value": "../interp/environment.js", - "start": 149, - "end": 175, + "start": 105, + "end": 106, "loc": { "start": { - "line": 5, - "column": 27 + "line": 4, + "column": 52 }, "end": { - "line": 5, + "line": 4, "column": 53 } } }, { "type": { - "label": ")", + "label": "import", + "keyword": "import", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "start": 175, - "end": 176, + "value": "import", + "start": 107, + "end": 113, "loc": { "start": { "line": 5, - "column": 53 + "column": 0 }, "end": { "line": 5, - "column": 54 + "column": 6 } } }, { "type": { - "label": ";", + "label": "{", "beforeExpr": true, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null, - "updateContext": null + "binop": null }, - "start": 176, - "end": 177, + "start": 114, + "end": 115, "loc": { "start": { "line": 5, - "column": 54 + "column": 7 }, "end": { "line": 5, - "column": 55 + "column": 8 } } }, { "type": { - "label": "const", - "keyword": "const", + "label": "name", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null, - "updateContext": null + "binop": null }, - "value": "const", - "start": 178, - "end": 183, + "value": "TopEnv", + "start": 116, + "end": 122, "loc": { "start": { - "line": 6, - "column": 0 + "line": 5, + "column": 9 }, "end": { - "line": 6, - "column": 5 + "line": 5, + "column": 15 } } }, { "type": { - "label": "{", - "beforeExpr": true, - "startsExpr": true, + "label": "}", + "beforeExpr": false, + "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -10130,16 +13760,16 @@ "postfix": false, "binop": null }, - "start": 184, - "end": 185, + "start": 123, + "end": 124, "loc": { "start": { - "line": 6, - "column": 6 + "line": 5, + "column": 16 }, "end": { - "line": 6, - "column": 7 + "line": 5, + "column": 17 } } }, @@ -10155,75 +13785,77 @@ "postfix": false, "binop": null }, - "value": "Eggvm", - "start": 186, - "end": 191, + "value": "from", + "start": 125, + "end": 129, "loc": { "start": { - "line": 6, - "column": 8 + "line": 5, + "column": 18 }, "end": { - "line": 6, - "column": 13 + "line": 5, + "column": 22 } } }, { "type": { - "label": "}", + "label": "string", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "start": 192, - "end": 193, + "value": "../interp/environment.js", + "start": 130, + "end": 156, "loc": { "start": { - "line": 6, - "column": 14 + "line": 5, + "column": 23 }, "end": { - "line": 6, - "column": 15 + "line": 5, + "column": 49 } } }, { "type": { - "label": "=", + "label": ";", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, - "isAssign": true, + "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, - "value": "=", - "start": 194, - "end": 195, + "start": 156, + "end": 157, "loc": { "start": { - "line": 6, - "column": 16 + "line": 5, + "column": 49 }, "end": { - "line": 6, - "column": 17 + "line": 5, + "column": 50 } } }, { "type": { - "label": "name", + "label": "import", + "keyword": "import", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, @@ -10231,25 +13863,26 @@ "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "value": "require", - "start": 196, - "end": 203, + "value": "import", + "start": 158, + "end": 164, "loc": { "start": { "line": 6, - "column": 18 + "column": 0 }, "end": { "line": 6, - "column": 25 + "column": 6 } } }, { "type": { - "label": "(", + "label": "{", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, @@ -10259,22 +13892,22 @@ "postfix": false, "binop": null }, - "start": 203, - "end": 204, + "start": 165, + "end": 166, "loc": { "start": { "line": 6, - "column": 25 + "column": 7 }, "end": { "line": 6, - "column": 26 + "column": 8 } } }, { "type": { - "label": "string", + "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, @@ -10282,26 +13915,25 @@ "isAssign": false, "prefix": false, "postfix": false, - "binop": null, - "updateContext": null + "binop": null }, - "value": "../interp/eggvm.js", - "start": 204, - "end": 224, + "value": "Eggvm", + "start": 167, + "end": 172, "loc": { "start": { "line": 6, - "column": 26 + "column": 9 }, "end": { "line": 6, - "column": 46 + "column": 14 } } }, { "type": { - "label": ")", + "label": "}", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, @@ -10311,51 +13943,50 @@ "postfix": false, "binop": null }, - "start": 224, - "end": 225, + "start": 173, + "end": 174, "loc": { "start": { "line": 6, - "column": 46 + "column": 15 }, "end": { "line": 6, - "column": 47 + "column": 16 } } }, { "type": { - "label": ";", - "beforeExpr": true, - "startsExpr": false, + "label": "name", + "beforeExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null, - "updateContext": null + "binop": null }, - "start": 225, - "end": 226, + "value": "from", + "start": 175, + "end": 179, "loc": { "start": { "line": 6, - "column": 47 + "column": 17 }, "end": { "line": 6, - "column": 48 + "column": 21 } } }, { "type": { - "label": "const", - "keyword": "const", + "label": "string", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -10364,70 +13995,71 @@ "binop": null, "updateContext": null }, - "value": "const", - "start": 228, - "end": 233, + "value": "../interp/eggvm.js", + "start": 180, + "end": 200, "loc": { "start": { - "line": 8, - "column": 0 + "line": 6, + "column": 22 }, "end": { - "line": 8, - "column": 5 + "line": 6, + "column": 42 } } }, { "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, + "label": ";", + "beforeExpr": true, + "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "value": "colors", - "start": 234, - "end": 240, + "start": 200, + "end": 201, "loc": { "start": { - "line": 8, - "column": 6 + "line": 6, + "column": 42 }, "end": { - "line": 8, - "column": 12 + "line": 6, + "column": 43 } } }, { "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, + "label": "import", + "keyword": "import", + "beforeExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, - "isAssign": true, + "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, - "value": "=", - "start": 241, - "end": 242, + "value": "import", + "start": 203, + "end": 209, "loc": { "start": { "line": 8, - "column": 13 + "column": 0 }, "end": { "line": 8, - "column": 14 + "column": 6 } } }, @@ -10443,24 +14075,24 @@ "postfix": false, "binop": null }, - "value": "require", - "start": 243, - "end": 250, + "value": "colors", + "start": 210, + "end": 216, "loc": { "start": { "line": 8, - "column": 15 + "column": 7 }, "end": { "line": 8, - "column": 22 + "column": 13 } } }, { "type": { - "label": "(", - "beforeExpr": true, + "label": "name", + "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, @@ -10469,16 +14101,17 @@ "postfix": false, "binop": null }, - "start": 250, - "end": 251, + "value": "from", + "start": 217, + "end": 221, "loc": { "start": { "line": 8, - "column": 22 + "column": 14 }, "end": { "line": 8, - "column": 23 + "column": 18 } } }, @@ -10496,41 +14129,16 @@ "updateContext": null }, "value": "./colors.js", - "start": 251, - "end": 264, - "loc": { - "start": { - "line": 8, - "column": 23 - }, - "end": { - "line": 8, - "column": 36 - } - } - }, - { - "type": { - "label": ")", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 264, - "end": 265, + "start": 222, + "end": 235, "loc": { "start": { "line": 8, - "column": 36 + "column": 19 }, "end": { "line": 8, - "column": 37 + "column": 32 } } }, @@ -10547,24 +14155,24 @@ "binop": null, "updateContext": null }, - "start": 265, - "end": 266, + "start": 235, + "end": 236, "loc": { "start": { "line": 8, - "column": 37 + "column": 32 }, "end": { "line": 8, - "column": 38 + "column": 33 } } }, { "type": "CommentLine", "value": " PROMPT", - "start": 268, - "end": 277, + "start": 238, + "end": 247, "loc": { "start": { "line": 10, @@ -10589,8 +14197,8 @@ "binop": null }, "value": "TopEnv", - "start": 279, - "end": 285, + "start": 249, + "end": 255, "loc": { "start": { "line": 12, @@ -10615,8 +14223,8 @@ "binop": null, "updateContext": null }, - "start": 285, - "end": 286, + "start": 255, + "end": 256, "loc": { "start": { "line": 12, @@ -10642,8 +14250,8 @@ "updateContext": null }, "value": "__PROMPT__", - "start": 286, - "end": 298, + "start": 256, + "end": 268, "loc": { "start": { "line": 12, @@ -10668,8 +14276,8 @@ "binop": null, "updateContext": null }, - "start": 298, - "end": 299, + "start": 268, + "end": 269, "loc": { "start": { "line": 12, @@ -10695,8 +14303,8 @@ "updateContext": null }, "value": "=", - "start": 300, - "end": 301, + "start": 270, + "end": 271, "loc": { "start": { "line": 12, @@ -10722,8 +14330,8 @@ "updateContext": null }, "value": "> ", - "start": 302, - "end": 306, + "start": 272, + "end": 276, "loc": { "start": { "line": 12, @@ -10748,8 +14356,8 @@ "binop": null, "updateContext": null }, - "start": 306, - "end": 307, + "start": 276, + "end": 277, "loc": { "start": { "line": 12, @@ -10776,8 +14384,8 @@ "updateContext": null }, "value": "const", - "start": 309, - "end": 314, + "start": 279, + "end": 284, "loc": { "start": { "line": 14, @@ -10802,8 +14410,8 @@ "binop": null }, "value": "getPromptLine", - "start": 315, - "end": 328, + "start": 285, + "end": 298, "loc": { "start": { "line": 14, @@ -10829,8 +14437,8 @@ "updateContext": null }, "value": "=", - "start": 329, - "end": 330, + "start": 299, + "end": 300, "loc": { "start": { "line": 14, @@ -10854,8 +14462,8 @@ "postfix": false, "binop": null }, - "start": 331, - "end": 332, + "start": 301, + "end": 302, "loc": { "start": { "line": 14, @@ -10879,8 +14487,8 @@ "postfix": false, "binop": null }, - "start": 332, - "end": 333, + "start": 302, + "end": 303, "loc": { "start": { "line": 14, @@ -10905,8 +14513,8 @@ "binop": null, "updateContext": null }, - "start": 334, - "end": 336, + "start": 304, + "end": 306, "loc": { "start": { "line": 14, @@ -10930,8 +14538,8 @@ "postfix": false, "binop": null }, - "start": 337, - "end": 338, + "start": 307, + "end": 308, "loc": { "start": { "line": 14, @@ -10958,8 +14566,8 @@ "updateContext": null }, "value": "return", - "start": 341, - "end": 347, + "start": 311, + "end": 317, "loc": { "start": { "line": 15, @@ -10983,8 +14591,8 @@ "postfix": false, "binop": null }, - "start": 348, - "end": 349, + "start": 318, + "end": 319, "loc": { "start": { "line": 15, @@ -11010,8 +14618,8 @@ "updateContext": null }, "value": "", - "start": 349, - "end": 349, + "start": 319, + "end": 319, "loc": { "start": { "line": 15, @@ -11035,8 +14643,8 @@ "postfix": false, "binop": null }, - "start": 349, - "end": 351, + "start": 319, + "end": 321, "loc": { "start": { "line": 15, @@ -11061,8 +14669,8 @@ "binop": null }, "value": "colors", - "start": 351, - "end": 357, + "start": 321, + "end": 327, "loc": { "start": { "line": 15, @@ -11087,8 +14695,8 @@ "binop": null, "updateContext": null }, - "start": 357, - "end": 358, + "start": 327, + "end": 328, "loc": { "start": { "line": 15, @@ -11113,8 +14721,8 @@ "binop": null }, "value": "YELLOW", - "start": 358, - "end": 364, + "start": 328, + "end": 334, "loc": { "start": { "line": 15, @@ -11138,8 +14746,8 @@ "postfix": false, "binop": null }, - "start": 364, - "end": 365, + "start": 334, + "end": 335, "loc": { "start": { "line": 15, @@ -11165,8 +14773,8 @@ "updateContext": null }, "value": " ", - "start": 365, - "end": 366, + "start": 335, + "end": 336, "loc": { "start": { "line": 15, @@ -11190,8 +14798,8 @@ "postfix": false, "binop": null }, - "start": 366, - "end": 368, + "start": 336, + "end": 338, "loc": { "start": { "line": 15, @@ -11216,8 +14824,8 @@ "binop": null }, "value": "TopEnv", - "start": 368, - "end": 374, + "start": 338, + "end": 344, "loc": { "start": { "line": 15, @@ -11242,8 +14850,8 @@ "binop": null, "updateContext": null }, - "start": 374, - "end": 375, + "start": 344, + "end": 345, "loc": { "start": { "line": 15, @@ -11269,8 +14877,8 @@ "updateContext": null }, "value": "__PROMPT__", - "start": 375, - "end": 387, + "start": 345, + "end": 357, "loc": { "start": { "line": 15, @@ -11295,8 +14903,8 @@ "binop": null, "updateContext": null }, - "start": 387, - "end": 388, + "start": 357, + "end": 358, "loc": { "start": { "line": 15, @@ -11320,8 +14928,8 @@ "postfix": false, "binop": null }, - "start": 388, - "end": 389, + "start": 358, + "end": 359, "loc": { "start": { "line": 15, @@ -11347,8 +14955,8 @@ "updateContext": null }, "value": " ", - "start": 389, - "end": 390, + "start": 359, + "end": 360, "loc": { "start": { "line": 15, @@ -11372,8 +14980,8 @@ "postfix": false, "binop": null }, - "start": 390, - "end": 392, + "start": 360, + "end": 362, "loc": { "start": { "line": 15, @@ -11398,8 +15006,8 @@ "binop": null }, "value": "colors", - "start": 392, - "end": 398, + "start": 362, + "end": 368, "loc": { "start": { "line": 15, @@ -11424,8 +15032,8 @@ "binop": null, "updateContext": null }, - "start": 398, - "end": 399, + "start": 368, + "end": 369, "loc": { "start": { "line": 15, @@ -11450,8 +15058,8 @@ "binop": null }, "value": "DEFAULT", - "start": 399, - "end": 406, + "start": 369, + "end": 376, "loc": { "start": { "line": 15, @@ -11475,8 +15083,8 @@ "postfix": false, "binop": null }, - "start": 406, - "end": 407, + "start": 376, + "end": 377, "loc": { "start": { "line": 15, @@ -11502,8 +15110,8 @@ "updateContext": null }, "value": "", - "start": 407, - "end": 407, + "start": 377, + "end": 377, "loc": { "start": { "line": 15, @@ -11527,8 +15135,8 @@ "postfix": false, "binop": null }, - "start": 407, - "end": 408, + "start": 377, + "end": 378, "loc": { "start": { "line": 15, @@ -11553,8 +15161,8 @@ "binop": null, "updateContext": null }, - "start": 408, - "end": 409, + "start": 378, + "end": 379, "loc": { "start": { "line": 15, @@ -11578,8 +15186,8 @@ "postfix": false, "binop": null }, - "start": 410, - "end": 411, + "start": 380, + "end": 381, "loc": { "start": { "line": 16, @@ -11604,8 +15212,8 @@ "binop": null, "updateContext": null }, - "start": 411, - "end": 412, + "start": 381, + "end": 382, "loc": { "start": { "line": 16, @@ -11620,8 +15228,8 @@ { "type": "CommentLine", "value": " Extra methods", - "start": 414, - "end": 430, + "start": 384, + "end": 400, "loc": { "start": { "line": 18, @@ -11648,8 +15256,8 @@ "updateContext": null }, "value": "const", - "start": 432, - "end": 437, + "start": 402, + "end": 407, "loc": { "start": { "line": 20, @@ -11674,8 +15282,8 @@ "binop": null }, "value": "eggExit", - "start": 438, - "end": 445, + "start": 408, + "end": 415, "loc": { "start": { "line": 20, @@ -11701,8 +15309,8 @@ "updateContext": null }, "value": "=", - "start": 446, - "end": 447, + "start": 416, + "end": 417, "loc": { "start": { "line": 20, @@ -11726,8 +15334,8 @@ "postfix": false, "binop": null }, - "start": 448, - "end": 449, + "start": 418, + "end": 419, "loc": { "start": { "line": 20, @@ -11752,8 +15360,8 @@ "binop": null }, "value": "TopEnv", - "start": 449, - "end": 455, + "start": 419, + "end": 425, "loc": { "start": { "line": 20, @@ -11778,8 +15386,8 @@ "binop": null, "updateContext": null }, - "start": 455, - "end": 456, + "start": 425, + "end": 426, "loc": { "start": { "line": 20, @@ -11805,8 +15413,8 @@ "updateContext": null }, "value": "exit", - "start": 456, - "end": 462, + "start": 426, + "end": 432, "loc": { "start": { "line": 20, @@ -11831,8 +15439,8 @@ "binop": null, "updateContext": null }, - "start": 462, - "end": 463, + "start": 432, + "end": 433, "loc": { "start": { "line": 20, @@ -11858,8 +15466,8 @@ "updateContext": null }, "value": "=", - "start": 464, - "end": 465, + "start": 434, + "end": 435, "loc": { "start": { "line": 20, @@ -11883,8 +15491,8 @@ "postfix": false, "binop": null }, - "start": 466, - "end": 467, + "start": 436, + "end": 437, "loc": { "start": { "line": 20, @@ -11908,8 +15516,8 @@ "postfix": false, "binop": null }, - "start": 467, - "end": 468, + "start": 437, + "end": 438, "loc": { "start": { "line": 20, @@ -11934,8 +15542,8 @@ "binop": null, "updateContext": null }, - "start": 469, - "end": 471, + "start": 439, + "end": 441, "loc": { "start": { "line": 20, @@ -11959,8 +15567,8 @@ "postfix": false, "binop": null }, - "start": 472, - "end": 473, + "start": 442, + "end": 443, "loc": { "start": { "line": 20, @@ -11985,8 +15593,8 @@ "binop": null }, "value": "console", - "start": 476, - "end": 483, + "start": 446, + "end": 453, "loc": { "start": { "line": 21, @@ -12011,8 +15619,8 @@ "binop": null, "updateContext": null }, - "start": 483, - "end": 484, + "start": 453, + "end": 454, "loc": { "start": { "line": 21, @@ -12037,8 +15645,8 @@ "binop": null }, "value": "log", - "start": 484, - "end": 487, + "start": 454, + "end": 457, "loc": { "start": { "line": 21, @@ -12062,8 +15670,8 @@ "postfix": false, "binop": null }, - "start": 487, - "end": 488, + "start": 457, + "end": 458, "loc": { "start": { "line": 21, @@ -12088,8 +15696,8 @@ "binop": null }, "value": "colors", - "start": 488, - "end": 494, + "start": 458, + "end": 464, "loc": { "start": { "line": 21, @@ -12114,8 +15722,8 @@ "binop": null, "updateContext": null }, - "start": 494, - "end": 495, + "start": 464, + "end": 465, "loc": { "start": { "line": 21, @@ -12140,8 +15748,8 @@ "binop": null }, "value": "BLUE", - "start": 495, - "end": 499, + "start": 465, + "end": 469, "loc": { "start": { "line": 21, @@ -12167,8 +15775,8 @@ "updateContext": null }, "value": "+", - "start": 500, - "end": 501, + "start": 470, + "end": 471, "loc": { "start": { "line": 21, @@ -12194,8 +15802,8 @@ "updateContext": null }, "value": "Closing the REPL... Bye!", - "start": 502, - "end": 528, + "start": 472, + "end": 498, "loc": { "start": { "line": 21, @@ -12221,8 +15829,8 @@ "updateContext": null }, "value": "+", - "start": 529, - "end": 530, + "start": 499, + "end": 500, "loc": { "start": { "line": 21, @@ -12247,8 +15855,8 @@ "binop": null }, "value": "colors", - "start": 531, - "end": 537, + "start": 501, + "end": 507, "loc": { "start": { "line": 21, @@ -12273,8 +15881,8 @@ "binop": null, "updateContext": null }, - "start": 537, - "end": 538, + "start": 507, + "end": 508, "loc": { "start": { "line": 21, @@ -12299,8 +15907,8 @@ "binop": null }, "value": "DEFAULT", - "start": 538, - "end": 545, + "start": 508, + "end": 515, "loc": { "start": { "line": 21, @@ -12324,8 +15932,8 @@ "postfix": false, "binop": null }, - "start": 545, - "end": 546, + "start": 515, + "end": 516, "loc": { "start": { "line": 21, @@ -12350,8 +15958,8 @@ "binop": null, "updateContext": null }, - "start": 546, - "end": 547, + "start": 516, + "end": 517, "loc": { "start": { "line": 21, @@ -12376,8 +15984,8 @@ "binop": null }, "value": "process", - "start": 550, - "end": 557, + "start": 520, + "end": 527, "loc": { "start": { "line": 22, @@ -12402,8 +16010,8 @@ "binop": null, "updateContext": null }, - "start": 557, - "end": 558, + "start": 527, + "end": 528, "loc": { "start": { "line": 22, @@ -12428,8 +16036,8 @@ "binop": null }, "value": "exit", - "start": 558, - "end": 562, + "start": 528, + "end": 532, "loc": { "start": { "line": 22, @@ -12453,8 +16061,8 @@ "postfix": false, "binop": null }, - "start": 562, - "end": 563, + "start": 532, + "end": 533, "loc": { "start": { "line": 22, @@ -12480,8 +16088,8 @@ "updateContext": null }, "value": 0, - "start": 563, - "end": 564, + "start": 533, + "end": 534, "loc": { "start": { "line": 22, @@ -12505,8 +16113,8 @@ "postfix": false, "binop": null }, - "start": 564, - "end": 565, + "start": 534, + "end": 535, "loc": { "start": { "line": 22, @@ -12531,8 +16139,8 @@ "binop": null, "updateContext": null }, - "start": 565, - "end": 566, + "start": 535, + "end": 536, "loc": { "start": { "line": 22, @@ -12556,8 +16164,8 @@ "postfix": false, "binop": null }, - "start": 567, - "end": 568, + "start": 537, + "end": 538, "loc": { "start": { "line": 23, @@ -12581,8 +16189,8 @@ "postfix": false, "binop": null }, - "start": 568, - "end": 569, + "start": 538, + "end": 539, "loc": { "start": { "line": 23, @@ -12607,8 +16215,8 @@ "binop": null, "updateContext": null }, - "start": 569, - "end": 570, + "start": 539, + "end": 540, "loc": { "start": { "line": 23, @@ -12635,8 +16243,8 @@ "updateContext": null }, "value": "const", - "start": 572, - "end": 577, + "start": 542, + "end": 547, "loc": { "start": { "line": 25, @@ -12661,8 +16269,8 @@ "binop": null }, "value": "HELP", - "start": 578, - "end": 582, + "start": 548, + "end": 552, "loc": { "start": { "line": 25, @@ -12688,8 +16296,8 @@ "updateContext": null }, "value": "=", - "start": 583, - "end": 584, + "start": 553, + "end": 554, "loc": { "start": { "line": 25, @@ -12714,8 +16322,8 @@ "binop": null, "updateContext": null }, - "start": 585, - "end": 586, + "start": 555, + "end": 556, "loc": { "start": { "line": 25, @@ -12739,8 +16347,8 @@ "postfix": false, "binop": null }, - "start": 589, - "end": 590, + "start": 559, + "end": 560, "loc": { "start": { "line": 26, @@ -12766,8 +16374,8 @@ "updateContext": null }, "value": "", - "start": 590, - "end": 590, + "start": 560, + "end": 560, "loc": { "start": { "line": 26, @@ -12791,8 +16399,8 @@ "postfix": false, "binop": null }, - "start": 590, - "end": 592, + "start": 560, + "end": 562, "loc": { "start": { "line": 26, @@ -12817,8 +16425,8 @@ "binop": null }, "value": "colors", - "start": 592, - "end": 598, + "start": 562, + "end": 568, "loc": { "start": { "line": 26, @@ -12843,8 +16451,8 @@ "binop": null, "updateContext": null }, - "start": 598, - "end": 599, + "start": 568, + "end": 569, "loc": { "start": { "line": 26, @@ -12869,8 +16477,8 @@ "binop": null }, "value": "BLUE", - "start": 599, - "end": 603, + "start": 569, + "end": 573, "loc": { "start": { "line": 26, @@ -12894,8 +16502,8 @@ "postfix": false, "binop": null }, - "start": 603, - "end": 604, + "start": 573, + "end": 574, "loc": { "start": { "line": 26, @@ -12921,8 +16529,8 @@ "updateContext": null }, "value": " help() ", - "start": 604, - "end": 612, + "start": 574, + "end": 582, "loc": { "start": { "line": 26, @@ -12946,8 +16554,8 @@ "postfix": false, "binop": null }, - "start": 612, - "end": 614, + "start": 582, + "end": 584, "loc": { "start": { "line": 26, @@ -12972,8 +16580,8 @@ "binop": null }, "value": "colors", - "start": 614, - "end": 620, + "start": 584, + "end": 590, "loc": { "start": { "line": 26, @@ -12998,8 +16606,8 @@ "binop": null, "updateContext": null }, - "start": 620, - "end": 621, + "start": 590, + "end": 591, "loc": { "start": { "line": 26, @@ -13024,8 +16632,8 @@ "binop": null }, "value": "DEFAULT", - "start": 621, - "end": 628, + "start": 591, + "end": 598, "loc": { "start": { "line": 26, @@ -13049,8 +16657,8 @@ "postfix": false, "binop": null }, - "start": 628, - "end": 629, + "start": 598, + "end": 599, "loc": { "start": { "line": 26, @@ -13076,8 +16684,8 @@ "updateContext": null }, "value": " show this help menu", - "start": 629, - "end": 649, + "start": 599, + "end": 619, "loc": { "start": { "line": 26, @@ -13101,8 +16709,8 @@ "postfix": false, "binop": null }, - "start": 649, - "end": 650, + "start": 619, + "end": 620, "loc": { "start": { "line": 26, @@ -13127,8 +16735,8 @@ "binop": null, "updateContext": null }, - "start": 650, - "end": 651, + "start": 620, + "end": 621, "loc": { "start": { "line": 26, @@ -13152,8 +16760,8 @@ "postfix": false, "binop": null }, - "start": 654, - "end": 655, + "start": 624, + "end": 625, "loc": { "start": { "line": 27, @@ -13179,8 +16787,8 @@ "updateContext": null }, "value": "", - "start": 655, - "end": 655, + "start": 625, + "end": 625, "loc": { "start": { "line": 27, @@ -13204,8 +16812,8 @@ "postfix": false, "binop": null }, - "start": 655, - "end": 657, + "start": 625, + "end": 627, "loc": { "start": { "line": 27, @@ -13230,8 +16838,8 @@ "binop": null }, "value": "colors", - "start": 657, - "end": 663, + "start": 627, + "end": 633, "loc": { "start": { "line": 27, @@ -13256,8 +16864,8 @@ "binop": null, "updateContext": null }, - "start": 663, - "end": 664, + "start": 633, + "end": 634, "loc": { "start": { "line": 27, @@ -13282,8 +16890,8 @@ "binop": null }, "value": "RED", - "start": 664, - "end": 667, + "start": 634, + "end": 637, "loc": { "start": { "line": 27, @@ -13307,8 +16915,8 @@ "postfix": false, "binop": null }, - "start": 667, - "end": 668, + "start": 637, + "end": 638, "loc": { "start": { "line": 27, @@ -13334,8 +16942,8 @@ "updateContext": null }, "value": " exit() | Ctrl-D ", - "start": 668, - "end": 685, + "start": 638, + "end": 655, "loc": { "start": { "line": 27, @@ -13359,8 +16967,8 @@ "postfix": false, "binop": null }, - "start": 685, - "end": 687, + "start": 655, + "end": 657, "loc": { "start": { "line": 27, @@ -13385,8 +16993,8 @@ "binop": null }, "value": "colors", - "start": 687, - "end": 693, + "start": 657, + "end": 663, "loc": { "start": { "line": 27, @@ -13411,8 +17019,8 @@ "binop": null, "updateContext": null }, - "start": 693, - "end": 694, + "start": 663, + "end": 664, "loc": { "start": { "line": 27, @@ -13437,8 +17045,8 @@ "binop": null }, "value": "DEFAULT", - "start": 694, - "end": 701, + "start": 664, + "end": 671, "loc": { "start": { "line": 27, @@ -13462,8 +17070,8 @@ "postfix": false, "binop": null }, - "start": 701, - "end": 702, + "start": 671, + "end": 672, "loc": { "start": { "line": 27, @@ -13489,8 +17097,8 @@ "updateContext": null }, "value": " close the REPL", - "start": 702, - "end": 717, + "start": 672, + "end": 687, "loc": { "start": { "line": 27, @@ -13514,8 +17122,8 @@ "postfix": false, "binop": null }, - "start": 717, - "end": 718, + "start": 687, + "end": 688, "loc": { "start": { "line": 27, @@ -13540,8 +17148,8 @@ "binop": null, "updateContext": null }, - "start": 718, - "end": 719, + "start": 688, + "end": 689, "loc": { "start": { "line": 27, @@ -13565,8 +17173,8 @@ "postfix": false, "binop": null }, - "start": 722, - "end": 723, + "start": 692, + "end": 693, "loc": { "start": { "line": 28, @@ -13592,8 +17200,8 @@ "updateContext": null }, "value": "", - "start": 723, - "end": 723, + "start": 693, + "end": 693, "loc": { "start": { "line": 28, @@ -13617,8 +17225,8 @@ "postfix": false, "binop": null }, - "start": 723, - "end": 725, + "start": 693, + "end": 695, "loc": { "start": { "line": 28, @@ -13643,8 +17251,8 @@ "binop": null }, "value": "colors", - "start": 725, - "end": 731, + "start": 695, + "end": 701, "loc": { "start": { "line": 28, @@ -13669,8 +17277,8 @@ "binop": null, "updateContext": null }, - "start": 731, - "end": 732, + "start": 701, + "end": 702, "loc": { "start": { "line": 28, @@ -13695,8 +17303,8 @@ "binop": null }, "value": "GREEN", - "start": 732, - "end": 737, + "start": 702, + "end": 707, "loc": { "start": { "line": 28, @@ -13720,8 +17328,8 @@ "postfix": false, "binop": null }, - "start": 737, - "end": 738, + "start": 707, + "end": 708, "loc": { "start": { "line": 28, @@ -13747,8 +17355,8 @@ "updateContext": null }, "value": " run() ", - "start": 738, - "end": 745, + "start": 708, + "end": 715, "loc": { "start": { "line": 28, @@ -13772,8 +17380,8 @@ "postfix": false, "binop": null }, - "start": 745, - "end": 747, + "start": 715, + "end": 717, "loc": { "start": { "line": 28, @@ -13798,8 +17406,8 @@ "binop": null }, "value": "colors", - "start": 747, - "end": 753, + "start": 717, + "end": 723, "loc": { "start": { "line": 28, @@ -13824,8 +17432,8 @@ "binop": null, "updateContext": null }, - "start": 753, - "end": 754, + "start": 723, + "end": 724, "loc": { "start": { "line": 28, @@ -13850,8 +17458,8 @@ "binop": null }, "value": "DEFAULT", - "start": 754, - "end": 761, + "start": 724, + "end": 731, "loc": { "start": { "line": 28, @@ -13875,8 +17483,8 @@ "postfix": false, "binop": null }, - "start": 761, - "end": 762, + "start": 731, + "end": 732, "loc": { "start": { "line": 28, @@ -13902,8 +17510,8 @@ "updateContext": null }, "value": " execute a .egg file", - "start": 762, - "end": 782, + "start": 732, + "end": 752, "loc": { "start": { "line": 28, @@ -13927,8 +17535,8 @@ "postfix": false, "binop": null }, - "start": 782, - "end": 783, + "start": 752, + "end": 753, "loc": { "start": { "line": 28, @@ -13953,8 +17561,8 @@ "binop": null, "updateContext": null }, - "start": 783, - "end": 784, + "start": 753, + "end": 754, "loc": { "start": { "line": 28, @@ -13978,8 +17586,8 @@ "postfix": false, "binop": null }, - "start": 787, - "end": 788, + "start": 757, + "end": 758, "loc": { "start": { "line": 29, @@ -14005,8 +17613,8 @@ "updateContext": null }, "value": "", - "start": 788, - "end": 788, + "start": 758, + "end": 758, "loc": { "start": { "line": 29, @@ -14030,8 +17638,8 @@ "postfix": false, "binop": null }, - "start": 788, - "end": 790, + "start": 758, + "end": 760, "loc": { "start": { "line": 29, @@ -14056,8 +17664,8 @@ "binop": null }, "value": "colors", - "start": 790, - "end": 796, + "start": 760, + "end": 766, "loc": { "start": { "line": 29, @@ -14082,8 +17690,8 @@ "binop": null, "updateContext": null }, - "start": 796, - "end": 797, + "start": 766, + "end": 767, "loc": { "start": { "line": 29, @@ -14108,8 +17716,8 @@ "binop": null }, "value": "YELLOW", - "start": 797, - "end": 803, + "start": 767, + "end": 773, "loc": { "start": { "line": 29, @@ -14133,8 +17741,8 @@ "postfix": false, "binop": null }, - "start": 803, - "end": 804, + "start": 773, + "end": 774, "loc": { "start": { "line": 29, @@ -14160,8 +17768,8 @@ "updateContext": null }, "value": " clear() ", - "start": 804, - "end": 813, + "start": 774, + "end": 783, "loc": { "start": { "line": 29, @@ -14185,8 +17793,8 @@ "postfix": false, "binop": null }, - "start": 813, - "end": 815, + "start": 783, + "end": 785, "loc": { "start": { "line": 29, @@ -14211,8 +17819,8 @@ "binop": null }, "value": "colors", - "start": 815, - "end": 821, + "start": 785, + "end": 791, "loc": { "start": { "line": 29, @@ -14237,8 +17845,8 @@ "binop": null, "updateContext": null }, - "start": 821, - "end": 822, + "start": 791, + "end": 792, "loc": { "start": { "line": 29, @@ -14263,8 +17871,8 @@ "binop": null }, "value": "DEFAULT", - "start": 822, - "end": 829, + "start": 792, + "end": 799, "loc": { "start": { "line": 29, @@ -14288,8 +17896,8 @@ "postfix": false, "binop": null }, - "start": 829, - "end": 830, + "start": 799, + "end": 800, "loc": { "start": { "line": 29, @@ -14315,8 +17923,8 @@ "updateContext": null }, "value": " clear the console", - "start": 830, - "end": 848, + "start": 800, + "end": 818, "loc": { "start": { "line": 29, @@ -14340,8 +17948,8 @@ "postfix": false, "binop": null }, - "start": 848, - "end": 849, + "start": 818, + "end": 819, "loc": { "start": { "line": 29, @@ -14366,8 +17974,8 @@ "binop": null, "updateContext": null }, - "start": 850, - "end": 851, + "start": 820, + "end": 821, "loc": { "start": { "line": 30, @@ -14392,8 +18000,8 @@ "binop": null, "updateContext": null }, - "start": 851, - "end": 852, + "start": 821, + "end": 822, "loc": { "start": { "line": 30, @@ -14420,8 +18028,8 @@ "updateContext": null }, "value": "const", - "start": 854, - "end": 859, + "start": 824, + "end": 829, "loc": { "start": { "line": 32, @@ -14446,8 +18054,8 @@ "binop": null }, "value": "eggHelp", - "start": 860, - "end": 867, + "start": 830, + "end": 837, "loc": { "start": { "line": 32, @@ -14473,8 +18081,8 @@ "updateContext": null }, "value": "=", - "start": 868, - "end": 869, + "start": 838, + "end": 839, "loc": { "start": { "line": 32, @@ -14498,8 +18106,8 @@ "postfix": false, "binop": null }, - "start": 870, - "end": 871, + "start": 840, + "end": 841, "loc": { "start": { "line": 32, @@ -14524,8 +18132,8 @@ "binop": null }, "value": "TopEnv", - "start": 871, - "end": 877, + "start": 841, + "end": 847, "loc": { "start": { "line": 32, @@ -14550,8 +18158,8 @@ "binop": null, "updateContext": null }, - "start": 877, - "end": 878, + "start": 847, + "end": 848, "loc": { "start": { "line": 32, @@ -14577,8 +18185,8 @@ "updateContext": null }, "value": "help", - "start": 878, - "end": 884, + "start": 848, + "end": 854, "loc": { "start": { "line": 32, @@ -14603,8 +18211,8 @@ "binop": null, "updateContext": null }, - "start": 884, - "end": 885, + "start": 854, + "end": 855, "loc": { "start": { "line": 32, @@ -14630,8 +18238,8 @@ "updateContext": null }, "value": "=", - "start": 886, - "end": 887, + "start": 856, + "end": 857, "loc": { "start": { "line": 32, @@ -14655,8 +18263,8 @@ "postfix": false, "binop": null }, - "start": 888, - "end": 889, + "start": 858, + "end": 859, "loc": { "start": { "line": 32, @@ -14680,8 +18288,8 @@ "postfix": false, "binop": null }, - "start": 889, - "end": 890, + "start": 859, + "end": 860, "loc": { "start": { "line": 32, @@ -14706,8 +18314,8 @@ "binop": null, "updateContext": null }, - "start": 891, - "end": 893, + "start": 861, + "end": 863, "loc": { "start": { "line": 32, @@ -14731,8 +18339,8 @@ "postfix": false, "binop": null }, - "start": 894, - "end": 895, + "start": 864, + "end": 865, "loc": { "start": { "line": 32, @@ -14757,8 +18365,8 @@ "binop": null }, "value": "console", - "start": 898, - "end": 905, + "start": 868, + "end": 875, "loc": { "start": { "line": 33, @@ -14783,8 +18391,8 @@ "binop": null, "updateContext": null }, - "start": 905, - "end": 906, + "start": 875, + "end": 876, "loc": { "start": { "line": 33, @@ -14809,8 +18417,8 @@ "binop": null }, "value": "log", - "start": 906, - "end": 909, + "start": 876, + "end": 879, "loc": { "start": { "line": 33, @@ -14834,8 +18442,8 @@ "postfix": false, "binop": null }, - "start": 909, - "end": 910, + "start": 879, + "end": 880, "loc": { "start": { "line": 33, @@ -14861,8 +18469,8 @@ "updateContext": null }, "value": " Egg help menu:", - "start": 910, - "end": 927, + "start": 880, + "end": 897, "loc": { "start": { "line": 33, @@ -14886,8 +18494,8 @@ "postfix": false, "binop": null }, - "start": 927, - "end": 928, + "start": 897, + "end": 898, "loc": { "start": { "line": 33, @@ -14912,8 +18520,8 @@ "binop": null, "updateContext": null }, - "start": 928, - "end": 929, + "start": 898, + "end": 899, "loc": { "start": { "line": 33, @@ -14938,8 +18546,8 @@ "binop": null }, "value": "HELP", - "start": 932, - "end": 936, + "start": 902, + "end": 906, "loc": { "start": { "line": 34, @@ -14964,8 +18572,8 @@ "binop": null, "updateContext": null }, - "start": 936, - "end": 937, + "start": 906, + "end": 907, "loc": { "start": { "line": 34, @@ -14990,8 +18598,8 @@ "binop": null }, "value": "forEach", - "start": 937, - "end": 944, + "start": 907, + "end": 914, "loc": { "start": { "line": 34, @@ -15015,8 +18623,8 @@ "postfix": false, "binop": null }, - "start": 944, - "end": 945, + "start": 914, + "end": 915, "loc": { "start": { "line": 34, @@ -15041,8 +18649,8 @@ "binop": null }, "value": "line", - "start": 945, - "end": 949, + "start": 915, + "end": 919, "loc": { "start": { "line": 34, @@ -15067,8 +18675,8 @@ "binop": null, "updateContext": null }, - "start": 950, - "end": 952, + "start": 920, + "end": 922, "loc": { "start": { "line": 34, @@ -15092,8 +18700,8 @@ "postfix": false, "binop": null }, - "start": 953, - "end": 954, + "start": 923, + "end": 924, "loc": { "start": { "line": 34, @@ -15118,8 +18726,8 @@ "binop": null }, "value": "console", - "start": 959, - "end": 966, + "start": 929, + "end": 936, "loc": { "start": { "line": 35, @@ -15144,8 +18752,8 @@ "binop": null, "updateContext": null }, - "start": 966, - "end": 967, + "start": 936, + "end": 937, "loc": { "start": { "line": 35, @@ -15170,8 +18778,8 @@ "binop": null }, "value": "log", - "start": 967, - "end": 970, + "start": 937, + "end": 940, "loc": { "start": { "line": 35, @@ -15195,8 +18803,8 @@ "postfix": false, "binop": null }, - "start": 970, - "end": 971, + "start": 940, + "end": 941, "loc": { "start": { "line": 35, @@ -15221,8 +18829,8 @@ "binop": null }, "value": "line", - "start": 971, - "end": 975, + "start": 941, + "end": 945, "loc": { "start": { "line": 35, @@ -15246,8 +18854,8 @@ "postfix": false, "binop": null }, - "start": 975, - "end": 976, + "start": 945, + "end": 946, "loc": { "start": { "line": 35, @@ -15272,8 +18880,8 @@ "binop": null, "updateContext": null }, - "start": 976, - "end": 977, + "start": 946, + "end": 947, "loc": { "start": { "line": 35, @@ -15297,8 +18905,8 @@ "postfix": false, "binop": null }, - "start": 980, - "end": 981, + "start": 950, + "end": 951, "loc": { "start": { "line": 36, @@ -15322,8 +18930,8 @@ "postfix": false, "binop": null }, - "start": 981, - "end": 982, + "start": 951, + "end": 952, "loc": { "start": { "line": 36, @@ -15348,8 +18956,8 @@ "binop": null, "updateContext": null }, - "start": 982, - "end": 983, + "start": 952, + "end": 953, "loc": { "start": { "line": 36, @@ -15376,8 +18984,8 @@ "updateContext": null }, "value": "return", - "start": 987, - "end": 993, + "start": 957, + "end": 963, "loc": { "start": { "line": 38, @@ -15403,8 +19011,8 @@ "updateContext": null }, "value": "-", - "start": 994, - "end": 997, + "start": 964, + "end": 967, "loc": { "start": { "line": 38, @@ -15429,8 +19037,8 @@ "binop": null, "updateContext": null }, - "start": 997, - "end": 998, + "start": 967, + "end": 968, "loc": { "start": { "line": 38, @@ -15455,8 +19063,8 @@ "binop": null }, "value": "repeat", - "start": 998, - "end": 1004, + "start": 968, + "end": 974, "loc": { "start": { "line": 38, @@ -15480,8 +19088,8 @@ "postfix": false, "binop": null }, - "start": 1004, - "end": 1005, + "start": 974, + "end": 975, "loc": { "start": { "line": 38, @@ -15506,8 +19114,8 @@ "binop": null }, "value": "HELP", - "start": 1005, - "end": 1009, + "start": 975, + "end": 979, "loc": { "start": { "line": 38, @@ -15532,8 +19140,8 @@ "binop": null, "updateContext": null }, - "start": 1009, - "end": 1010, + "start": 979, + "end": 980, "loc": { "start": { "line": 38, @@ -15559,8 +19167,8 @@ "updateContext": null }, "value": 0, - "start": 1010, - "end": 1011, + "start": 980, + "end": 981, "loc": { "start": { "line": 38, @@ -15585,8 +19193,8 @@ "binop": null, "updateContext": null }, - "start": 1011, - "end": 1012, + "start": 981, + "end": 982, "loc": { "start": { "line": 38, @@ -15611,8 +19219,8 @@ "binop": null, "updateContext": null }, - "start": 1012, - "end": 1013, + "start": 982, + "end": 983, "loc": { "start": { "line": 38, @@ -15637,8 +19245,8 @@ "binop": null }, "value": "length", - "start": 1013, - "end": 1019, + "start": 983, + "end": 989, "loc": { "start": { "line": 38, @@ -15664,8 +19272,8 @@ "updateContext": null }, "value": "-", - "start": 1020, - "end": 1021, + "start": 990, + "end": 991, "loc": { "start": { "line": 38, @@ -15691,8 +19299,8 @@ "updateContext": null }, "value": 10, - "start": 1022, - "end": 1024, + "start": 992, + "end": 994, "loc": { "start": { "line": 38, @@ -15716,8 +19324,8 @@ "postfix": false, "binop": null }, - "start": 1024, - "end": 1025, + "start": 994, + "end": 995, "loc": { "start": { "line": 38, @@ -15742,8 +19350,8 @@ "binop": null, "updateContext": null }, - "start": 1025, - "end": 1026, + "start": 995, + "end": 996, "loc": { "start": { "line": 38, @@ -15767,8 +19375,8 @@ "postfix": false, "binop": null }, - "start": 1027, - "end": 1028, + "start": 997, + "end": 998, "loc": { "start": { "line": 39, @@ -15792,8 +19400,8 @@ "postfix": false, "binop": null }, - "start": 1028, - "end": 1029, + "start": 998, + "end": 999, "loc": { "start": { "line": 39, @@ -15818,8 +19426,8 @@ "binop": null, "updateContext": null }, - "start": 1029, - "end": 1030, + "start": 999, + "end": 1000, "loc": { "start": { "line": 39, @@ -15846,8 +19454,8 @@ "updateContext": null }, "value": "const", - "start": 1032, - "end": 1037, + "start": 1002, + "end": 1007, "loc": { "start": { "line": 41, @@ -15872,8 +19480,8 @@ "binop": null }, "value": "eggInfo", - "start": 1038, - "end": 1045, + "start": 1008, + "end": 1015, "loc": { "start": { "line": 41, @@ -15899,8 +19507,8 @@ "updateContext": null }, "value": "=", - "start": 1046, - "end": 1047, + "start": 1016, + "end": 1017, "loc": { "start": { "line": 41, @@ -15924,8 +19532,8 @@ "postfix": false, "binop": null }, - "start": 1048, - "end": 1049, + "start": 1018, + "end": 1019, "loc": { "start": { "line": 41, @@ -15950,8 +19558,8 @@ "binop": null }, "value": "TopEnv", - "start": 1049, - "end": 1055, + "start": 1019, + "end": 1025, "loc": { "start": { "line": 41, @@ -15976,8 +19584,8 @@ "binop": null, "updateContext": null }, - "start": 1055, - "end": 1056, + "start": 1025, + "end": 1026, "loc": { "start": { "line": 41, @@ -16003,8 +19611,8 @@ "updateContext": null }, "value": "info", - "start": 1056, - "end": 1062, + "start": 1026, + "end": 1032, "loc": { "start": { "line": 41, @@ -16029,8 +19637,8 @@ "binop": null, "updateContext": null }, - "start": 1062, - "end": 1063, + "start": 1032, + "end": 1033, "loc": { "start": { "line": 41, @@ -16056,8 +19664,8 @@ "updateContext": null }, "value": "=", - "start": 1064, - "end": 1065, + "start": 1034, + "end": 1035, "loc": { "start": { "line": 41, @@ -16081,8 +19689,8 @@ "postfix": false, "binop": null }, - "start": 1066, - "end": 1067, + "start": 1036, + "end": 1037, "loc": { "start": { "line": 41, @@ -16106,8 +19714,8 @@ "postfix": false, "binop": null }, - "start": 1067, - "end": 1068, + "start": 1037, + "end": 1038, "loc": { "start": { "line": 41, @@ -16132,8 +19740,8 @@ "binop": null, "updateContext": null }, - "start": 1069, - "end": 1071, + "start": 1039, + "end": 1041, "loc": { "start": { "line": 41, @@ -16157,8 +19765,8 @@ "postfix": false, "binop": null }, - "start": 1072, - "end": 1073, + "start": 1042, + "end": 1043, "loc": { "start": { "line": 41, @@ -16183,8 +19791,8 @@ "binop": null }, "value": "console", - "start": 1076, - "end": 1083, + "start": 1046, + "end": 1053, "loc": { "start": { "line": 42, @@ -16209,8 +19817,8 @@ "binop": null, "updateContext": null }, - "start": 1083, - "end": 1084, + "start": 1053, + "end": 1054, "loc": { "start": { "line": 42, @@ -16235,8 +19843,8 @@ "binop": null }, "value": "log", - "start": 1084, - "end": 1087, + "start": 1054, + "end": 1057, "loc": { "start": { "line": 42, @@ -16260,8 +19868,8 @@ "postfix": false, "binop": null }, - "start": 1087, - "end": 1088, + "start": 1057, + "end": 1058, "loc": { "start": { "line": 42, @@ -16286,8 +19894,8 @@ "binop": null }, "value": "colors", - "start": 1093, - "end": 1099, + "start": 1063, + "end": 1069, "loc": { "start": { "line": 43, @@ -16312,8 +19920,8 @@ "binop": null, "updateContext": null }, - "start": 1099, - "end": 1100, + "start": 1069, + "end": 1070, "loc": { "start": { "line": 43, @@ -16338,8 +19946,8 @@ "binop": null }, "value": "BLUE", - "start": 1100, - "end": 1104, + "start": 1070, + "end": 1074, "loc": { "start": { "line": 43, @@ -16365,8 +19973,8 @@ "updateContext": null }, "value": "+", - "start": 1105, - "end": 1106, + "start": 1075, + "end": 1076, "loc": { "start": { "line": 43, @@ -16390,8 +19998,8 @@ "postfix": false, "binop": null }, - "start": 1113, - "end": 1114, + "start": 1083, + "end": 1084, "loc": { "start": { "line": 44, @@ -16417,8 +20025,8 @@ "updateContext": null }, "value": "\n _ _ _\n | | | | | |\n ___ __ _ __ _| |_ ___ _ __ __| | ___ __| |\n / _ \\/ _` |/ _` | __/ _ \\ '_ \\ / _` |/ _ \\/ _` |\n | __/ (_| | (_| | || __/ | | | (_| | __/ (_| |\n \\___|\\__, |\\__, |\\__\\___|_| |_|\\__,_|\\___|\\__,_|\n __/ | __/ |\n |___/ |___/\n", - "start": 1114, - "end": 1475, + "start": 1084, + "end": 1445, "loc": { "start": { "line": 44, @@ -16442,8 +20050,8 @@ "postfix": false, "binop": null }, - "start": 1475, - "end": 1476, + "start": 1445, + "end": 1446, "loc": { "start": { "line": 53, @@ -16469,8 +20077,8 @@ "updateContext": null }, "value": "+", - "start": 1477, - "end": 1478, + "start": 1447, + "end": 1448, "loc": { "start": { "line": 53, @@ -16495,8 +20103,8 @@ "binop": null }, "value": "colors", - "start": 1485, - "end": 1491, + "start": 1455, + "end": 1461, "loc": { "start": { "line": 54, @@ -16521,8 +20129,8 @@ "binop": null, "updateContext": null }, - "start": 1491, - "end": 1492, + "start": 1461, + "end": 1462, "loc": { "start": { "line": 54, @@ -16547,8 +20155,8 @@ "binop": null }, "value": "DEFAULT", - "start": 1492, - "end": 1499, + "start": 1462, + "end": 1469, "loc": { "start": { "line": 54, @@ -16572,8 +20180,8 @@ "postfix": false, "binop": null }, - "start": 1502, - "end": 1503, + "start": 1472, + "end": 1473, "loc": { "start": { "line": 55, @@ -16598,8 +20206,8 @@ "binop": null, "updateContext": null }, - "start": 1503, - "end": 1504, + "start": 1473, + "end": 1474, "loc": { "start": { "line": 55, @@ -16624,8 +20232,8 @@ "binop": null }, "value": "console", - "start": 1507, - "end": 1514, + "start": 1477, + "end": 1484, "loc": { "start": { "line": 56, @@ -16650,8 +20258,8 @@ "binop": null, "updateContext": null }, - "start": 1514, - "end": 1515, + "start": 1484, + "end": 1485, "loc": { "start": { "line": 56, @@ -16676,8 +20284,8 @@ "binop": null }, "value": "log", - "start": 1515, - "end": 1518, + "start": 1485, + "end": 1488, "loc": { "start": { "line": 56, @@ -16701,8 +20309,8 @@ "postfix": false, "binop": null }, - "start": 1518, - "end": 1519, + "start": 1488, + "end": 1489, "loc": { "start": { "line": 56, @@ -16726,8 +20334,8 @@ "postfix": false, "binop": null }, - "start": 1519, - "end": 1520, + "start": 1489, + "end": 1490, "loc": { "start": { "line": 56, @@ -16753,8 +20361,8 @@ "updateContext": null }, "value": "Version ", - "start": 1520, - "end": 1528, + "start": 1490, + "end": 1498, "loc": { "start": { "line": 56, @@ -16778,8 +20386,8 @@ "postfix": false, "binop": null }, - "start": 1528, - "end": 1530, + "start": 1498, + "end": 1500, "loc": { "start": { "line": 56, @@ -16804,8 +20412,8 @@ "binop": null }, "value": "TopEnv", - "start": 1530, - "end": 1536, + "start": 1500, + "end": 1506, "loc": { "start": { "line": 56, @@ -16830,8 +20438,8 @@ "binop": null, "updateContext": null }, - "start": 1536, - "end": 1537, + "start": 1506, + "end": 1507, "loc": { "start": { "line": 56, @@ -16857,8 +20465,8 @@ "updateContext": null }, "value": "__VERSION__", - "start": 1537, - "end": 1550, + "start": 1507, + "end": 1520, "loc": { "start": { "line": 56, @@ -16883,8 +20491,8 @@ "binop": null, "updateContext": null }, - "start": 1550, - "end": 1551, + "start": 1520, + "end": 1521, "loc": { "start": { "line": 56, @@ -16908,8 +20516,8 @@ "postfix": false, "binop": null }, - "start": 1551, - "end": 1552, + "start": 1521, + "end": 1522, "loc": { "start": { "line": 56, @@ -16935,8 +20543,8 @@ "updateContext": null }, "value": "", - "start": 1552, - "end": 1552, + "start": 1522, + "end": 1522, "loc": { "start": { "line": 56, @@ -16960,8 +20568,8 @@ "postfix": false, "binop": null }, - "start": 1552, - "end": 1553, + "start": 1522, + "end": 1523, "loc": { "start": { "line": 56, @@ -16985,8 +20593,8 @@ "postfix": false, "binop": null }, - "start": 1553, - "end": 1554, + "start": 1523, + "end": 1524, "loc": { "start": { "line": 56, @@ -17011,8 +20619,8 @@ "binop": null, "updateContext": null }, - "start": 1554, - "end": 1555, + "start": 1524, + "end": 1525, "loc": { "start": { "line": 56, @@ -17037,8 +20645,8 @@ "binop": null }, "value": "console", - "start": 1558, - "end": 1565, + "start": 1528, + "end": 1535, "loc": { "start": { "line": 57, @@ -17063,8 +20671,8 @@ "binop": null, "updateContext": null }, - "start": 1565, - "end": 1566, + "start": 1535, + "end": 1536, "loc": { "start": { "line": 57, @@ -17089,8 +20697,8 @@ "binop": null }, "value": "log", - "start": 1566, - "end": 1569, + "start": 1536, + "end": 1539, "loc": { "start": { "line": 57, @@ -17114,8 +20722,8 @@ "postfix": false, "binop": null }, - "start": 1569, - "end": 1570, + "start": 1539, + "end": 1540, "loc": { "start": { "line": 57, @@ -17141,8 +20749,8 @@ "updateContext": null }, "value": "Created by David Afonso Dorta. License: GPLv2", - "start": 1570, - "end": 1617, + "start": 1540, + "end": 1587, "loc": { "start": { "line": 57, @@ -17166,8 +20774,8 @@ "postfix": false, "binop": null }, - "start": 1617, - "end": 1618, + "start": 1587, + "end": 1588, "loc": { "start": { "line": 57, @@ -17192,8 +20800,8 @@ "binop": null, "updateContext": null }, - "start": 1618, - "end": 1619, + "start": 1588, + "end": 1589, "loc": { "start": { "line": 57, @@ -17217,8 +20825,8 @@ "postfix": false, "binop": null }, - "start": 1620, - "end": 1621, + "start": 1590, + "end": 1591, "loc": { "start": { "line": 58, @@ -17242,8 +20850,8 @@ "postfix": false, "binop": null }, - "start": 1621, - "end": 1622, + "start": 1591, + "end": 1592, "loc": { "start": { "line": 58, @@ -17268,8 +20876,8 @@ "binop": null, "updateContext": null }, - "start": 1622, - "end": 1623, + "start": 1592, + "end": 1593, "loc": { "start": { "line": 58, @@ -17296,8 +20904,8 @@ "updateContext": null }, "value": "const", - "start": 1625, - "end": 1630, + "start": 1595, + "end": 1600, "loc": { "start": { "line": 60, @@ -17322,8 +20930,8 @@ "binop": null }, "value": "eggClear", - "start": 1631, - "end": 1639, + "start": 1601, + "end": 1609, "loc": { "start": { "line": 60, @@ -17349,8 +20957,8 @@ "updateContext": null }, "value": "=", - "start": 1640, - "end": 1641, + "start": 1610, + "end": 1611, "loc": { "start": { "line": 60, @@ -17374,8 +20982,8 @@ "postfix": false, "binop": null }, - "start": 1642, - "end": 1643, + "start": 1612, + "end": 1613, "loc": { "start": { "line": 60, @@ -17400,8 +21008,8 @@ "binop": null }, "value": "TopEnv", - "start": 1643, - "end": 1649, + "start": 1613, + "end": 1619, "loc": { "start": { "line": 60, @@ -17426,8 +21034,8 @@ "binop": null, "updateContext": null }, - "start": 1649, - "end": 1650, + "start": 1619, + "end": 1620, "loc": { "start": { "line": 60, @@ -17453,8 +21061,8 @@ "updateContext": null }, "value": "clear", - "start": 1650, - "end": 1657, + "start": 1620, + "end": 1627, "loc": { "start": { "line": 60, @@ -17479,8 +21087,8 @@ "binop": null, "updateContext": null }, - "start": 1657, - "end": 1658, + "start": 1627, + "end": 1628, "loc": { "start": { "line": 60, @@ -17506,8 +21114,8 @@ "updateContext": null }, "value": "=", - "start": 1659, - "end": 1660, + "start": 1629, + "end": 1630, "loc": { "start": { "line": 60, @@ -17531,8 +21139,8 @@ "postfix": false, "binop": null }, - "start": 1661, - "end": 1662, + "start": 1631, + "end": 1632, "loc": { "start": { "line": 60, @@ -17556,8 +21164,8 @@ "postfix": false, "binop": null }, - "start": 1662, - "end": 1663, + "start": 1632, + "end": 1633, "loc": { "start": { "line": 60, @@ -17582,8 +21190,8 @@ "binop": null, "updateContext": null }, - "start": 1664, - "end": 1666, + "start": 1634, + "end": 1636, "loc": { "start": { "line": 60, @@ -17607,8 +21215,8 @@ "postfix": false, "binop": null }, - "start": 1667, - "end": 1668, + "start": 1637, + "end": 1638, "loc": { "start": { "line": 60, @@ -17633,8 +21241,8 @@ "binop": null }, "value": "console", - "start": 1671, - "end": 1678, + "start": 1641, + "end": 1648, "loc": { "start": { "line": 61, @@ -17659,8 +21267,8 @@ "binop": null, "updateContext": null }, - "start": 1678, - "end": 1679, + "start": 1648, + "end": 1649, "loc": { "start": { "line": 61, @@ -17685,8 +21293,8 @@ "binop": null }, "value": "log", - "start": 1679, - "end": 1682, + "start": 1649, + "end": 1652, "loc": { "start": { "line": 61, @@ -17710,8 +21318,8 @@ "postfix": false, "binop": null }, - "start": 1682, - "end": 1683, + "start": 1652, + "end": 1653, "loc": { "start": { "line": 61, @@ -17737,8 +21345,8 @@ "updateContext": null }, "value": "\u001b[2J\u001b[0;0f", - "start": 1683, - "end": 1705, + "start": 1653, + "end": 1675, "loc": { "start": { "line": 61, @@ -17762,8 +21370,8 @@ "postfix": false, "binop": null }, - "start": 1705, - "end": 1706, + "start": 1675, + "end": 1676, "loc": { "start": { "line": 61, @@ -17788,8 +21396,8 @@ "binop": null, "updateContext": null }, - "start": 1706, - "end": 1707, + "start": 1676, + "end": 1677, "loc": { "start": { "line": 61, @@ -17814,8 +21422,8 @@ "binop": null }, "value": "eggInfo", - "start": 1710, - "end": 1717, + "start": 1680, + "end": 1687, "loc": { "start": { "line": 62, @@ -17839,8 +21447,8 @@ "postfix": false, "binop": null }, - "start": 1717, - "end": 1718, + "start": 1687, + "end": 1688, "loc": { "start": { "line": 62, @@ -17864,8 +21472,8 @@ "postfix": false, "binop": null }, - "start": 1718, - "end": 1719, + "start": 1688, + "end": 1689, "loc": { "start": { "line": 62, @@ -17890,8 +21498,8 @@ "binop": null, "updateContext": null }, - "start": 1719, - "end": 1720, + "start": 1689, + "end": 1690, "loc": { "start": { "line": 62, @@ -17915,8 +21523,8 @@ "postfix": false, "binop": null }, - "start": 1721, - "end": 1722, + "start": 1691, + "end": 1692, "loc": { "start": { "line": 63, @@ -17940,8 +21548,8 @@ "postfix": false, "binop": null }, - "start": 1722, - "end": 1723, + "start": 1692, + "end": 1693, "loc": { "start": { "line": 63, @@ -17966,8 +21574,8 @@ "binop": null, "updateContext": null }, - "start": 1723, - "end": 1724, + "start": 1693, + "end": 1694, "loc": { "start": { "line": 63, @@ -17994,8 +21602,8 @@ "updateContext": null }, "value": "const", - "start": 1726, - "end": 1731, + "start": 1696, + "end": 1701, "loc": { "start": { "line": 65, @@ -18020,8 +21628,8 @@ "binop": null }, "value": "eggVersion", - "start": 1732, - "end": 1742, + "start": 1702, + "end": 1712, "loc": { "start": { "line": 65, @@ -18047,8 +21655,8 @@ "updateContext": null }, "value": "=", - "start": 1743, - "end": 1744, + "start": 1713, + "end": 1714, "loc": { "start": { "line": 65, @@ -18072,8 +21680,8 @@ "postfix": false, "binop": null }, - "start": 1745, - "end": 1746, + "start": 1715, + "end": 1716, "loc": { "start": { "line": 65, @@ -18098,8 +21706,8 @@ "binop": null }, "value": "TopEnv", - "start": 1746, - "end": 1752, + "start": 1716, + "end": 1722, "loc": { "start": { "line": 65, @@ -18124,8 +21732,8 @@ "binop": null, "updateContext": null }, - "start": 1752, - "end": 1753, + "start": 1722, + "end": 1723, "loc": { "start": { "line": 65, @@ -18151,8 +21759,8 @@ "updateContext": null }, "value": "__VERSION__", - "start": 1756, - "end": 1769, + "start": 1726, + "end": 1739, "loc": { "start": { "line": 66, @@ -18177,8 +21785,8 @@ "binop": null, "updateContext": null }, - "start": 1770, - "end": 1771, + "start": 1740, + "end": 1741, "loc": { "start": { "line": 67, @@ -18204,8 +21812,8 @@ "updateContext": null }, "value": "=", - "start": 1772, - "end": 1773, + "start": 1742, + "end": 1743, "loc": { "start": { "line": 67, @@ -18230,8 +21838,8 @@ "binop": null }, "value": "require", - "start": 1774, - "end": 1781, + "start": 1744, + "end": 1751, "loc": { "start": { "line": 67, @@ -18255,8 +21863,8 @@ "postfix": false, "binop": null }, - "start": 1781, - "end": 1782, + "start": 1751, + "end": 1752, "loc": { "start": { "line": 67, @@ -18282,8 +21890,8 @@ "updateContext": null }, "value": "../../package.json", - "start": 1782, - "end": 1802, + "start": 1752, + "end": 1772, "loc": { "start": { "line": 67, @@ -18307,8 +21915,8 @@ "postfix": false, "binop": null }, - "start": 1802, - "end": 1803, + "start": 1772, + "end": 1773, "loc": { "start": { "line": 67, @@ -18333,8 +21941,8 @@ "binop": null, "updateContext": null }, - "start": 1803, - "end": 1804, + "start": 1773, + "end": 1774, "loc": { "start": { "line": 67, @@ -18359,8 +21967,8 @@ "binop": null }, "value": "version", - "start": 1804, - "end": 1811, + "start": 1774, + "end": 1781, "loc": { "start": { "line": 67, @@ -18384,8 +21992,8 @@ "postfix": false, "binop": null }, - "start": 1811, - "end": 1812, + "start": 1781, + "end": 1782, "loc": { "start": { "line": 67, @@ -18410,8 +22018,8 @@ "binop": null, "updateContext": null }, - "start": 1812, - "end": 1813, + "start": 1782, + "end": 1783, "loc": { "start": { "line": 67, @@ -18438,8 +22046,8 @@ "updateContext": null }, "value": "const", - "start": 1815, - "end": 1820, + "start": 1785, + "end": 1790, "loc": { "start": { "line": 69, @@ -18464,8 +22072,8 @@ "binop": null }, "value": "eggRun", - "start": 1821, - "end": 1827, + "start": 1791, + "end": 1797, "loc": { "start": { "line": 69, @@ -18491,8 +22099,8 @@ "updateContext": null }, "value": "=", - "start": 1828, - "end": 1829, + "start": 1798, + "end": 1799, "loc": { "start": { "line": 69, @@ -18516,8 +22124,8 @@ "postfix": false, "binop": null }, - "start": 1830, - "end": 1831, + "start": 1800, + "end": 1801, "loc": { "start": { "line": 69, @@ -18542,8 +22150,8 @@ "binop": null }, "value": "TopEnv", - "start": 1831, - "end": 1837, + "start": 1801, + "end": 1807, "loc": { "start": { "line": 69, @@ -18568,8 +22176,8 @@ "binop": null, "updateContext": null }, - "start": 1837, - "end": 1838, + "start": 1807, + "end": 1808, "loc": { "start": { "line": 69, @@ -18595,8 +22203,8 @@ "updateContext": null }, "value": "run", - "start": 1838, - "end": 1843, + "start": 1808, + "end": 1813, "loc": { "start": { "line": 69, @@ -18621,8 +22229,8 @@ "binop": null, "updateContext": null }, - "start": 1843, - "end": 1844, + "start": 1813, + "end": 1814, "loc": { "start": { "line": 69, @@ -18648,8 +22256,8 @@ "updateContext": null }, "value": "=", - "start": 1845, - "end": 1846, + "start": 1815, + "end": 1816, "loc": { "start": { "line": 69, @@ -18673,8 +22281,8 @@ "postfix": false, "binop": null }, - "start": 1847, - "end": 1848, + "start": 1817, + "end": 1818, "loc": { "start": { "line": 69, @@ -18699,8 +22307,8 @@ "binop": null }, "value": "file", - "start": 1848, - "end": 1852, + "start": 1818, + "end": 1822, "loc": { "start": { "line": 69, @@ -18725,8 +22333,8 @@ "binop": null, "updateContext": null }, - "start": 1852, - "end": 1853, + "start": 1822, + "end": 1823, "loc": { "start": { "line": 69, @@ -18751,8 +22359,8 @@ "binop": null }, "value": "debug", - "start": 1854, - "end": 1859, + "start": 1824, + "end": 1829, "loc": { "start": { "line": 69, @@ -18776,8 +22384,8 @@ "postfix": false, "binop": null }, - "start": 1859, - "end": 1860, + "start": 1829, + "end": 1830, "loc": { "start": { "line": 69, @@ -18802,8 +22410,8 @@ "binop": null, "updateContext": null }, - "start": 1861, - "end": 1863, + "start": 1831, + "end": 1833, "loc": { "start": { "line": 69, @@ -18827,8 +22435,8 @@ "postfix": false, "binop": null }, - "start": 1864, - "end": 1865, + "start": 1834, + "end": 1835, "loc": { "start": { "line": 69, @@ -18855,8 +22463,8 @@ "updateContext": null }, "value": "if", - "start": 1868, - "end": 1870, + "start": 1838, + "end": 1840, "loc": { "start": { "line": 70, @@ -18880,8 +22488,8 @@ "postfix": false, "binop": null }, - "start": 1871, - "end": 1872, + "start": 1841, + "end": 1842, "loc": { "start": { "line": 70, @@ -18906,8 +22514,8 @@ "binop": null }, "value": "debug", - "start": 1872, - "end": 1877, + "start": 1842, + "end": 1847, "loc": { "start": { "line": 70, @@ -18931,8 +22539,8 @@ "postfix": false, "binop": null }, - "start": 1877, - "end": 1878, + "start": 1847, + "end": 1848, "loc": { "start": { "line": 70, @@ -18956,8 +22564,8 @@ "postfix": false, "binop": null }, - "start": 1879, - "end": 1880, + "start": 1849, + "end": 1850, "loc": { "start": { "line": 70, @@ -18982,8 +22590,8 @@ "binop": null }, "value": "console", - "start": 1885, - "end": 1892, + "start": 1855, + "end": 1862, "loc": { "start": { "line": 71, @@ -19008,8 +22616,8 @@ "binop": null, "updateContext": null }, - "start": 1892, - "end": 1893, + "start": 1862, + "end": 1863, "loc": { "start": { "line": 71, @@ -19034,8 +22642,8 @@ "binop": null }, "value": "log", - "start": 1893, - "end": 1896, + "start": 1863, + "end": 1866, "loc": { "start": { "line": 71, @@ -19059,8 +22667,8 @@ "postfix": false, "binop": null }, - "start": 1896, - "end": 1897, + "start": 1866, + "end": 1867, "loc": { "start": { "line": 71, @@ -19085,8 +22693,8 @@ "binop": null }, "value": "fs", - "start": 1897, - "end": 1899, + "start": 1867, + "end": 1869, "loc": { "start": { "line": 71, @@ -19111,8 +22719,8 @@ "binop": null, "updateContext": null }, - "start": 1899, - "end": 1900, + "start": 1869, + "end": 1870, "loc": { "start": { "line": 71, @@ -19137,8 +22745,8 @@ "binop": null }, "value": "readFileSync", - "start": 1900, - "end": 1912, + "start": 1870, + "end": 1882, "loc": { "start": { "line": 71, @@ -19162,8 +22770,8 @@ "postfix": false, "binop": null }, - "start": 1912, - "end": 1913, + "start": 1882, + "end": 1883, "loc": { "start": { "line": 71, @@ -19188,8 +22796,8 @@ "binop": null }, "value": "file", - "start": 1913, - "end": 1917, + "start": 1883, + "end": 1887, "loc": { "start": { "line": 71, @@ -19214,8 +22822,8 @@ "binop": null, "updateContext": null }, - "start": 1917, - "end": 1918, + "start": 1887, + "end": 1888, "loc": { "start": { "line": 71, @@ -19241,8 +22849,8 @@ "updateContext": null }, "value": "utf8", - "start": 1919, - "end": 1925, + "start": 1889, + "end": 1895, "loc": { "start": { "line": 71, @@ -19266,8 +22874,8 @@ "postfix": false, "binop": null }, - "start": 1925, - "end": 1926, + "start": 1895, + "end": 1896, "loc": { "start": { "line": 71, @@ -19291,8 +22899,8 @@ "postfix": false, "binop": null }, - "start": 1926, - "end": 1927, + "start": 1896, + "end": 1897, "loc": { "start": { "line": 71, @@ -19317,8 +22925,8 @@ "binop": null, "updateContext": null }, - "start": 1927, - "end": 1928, + "start": 1897, + "end": 1898, "loc": { "start": { "line": 71, @@ -19342,8 +22950,8 @@ "postfix": false, "binop": null }, - "start": 1931, - "end": 1932, + "start": 1901, + "end": 1902, "loc": { "start": { "line": 72, @@ -19368,8 +22976,8 @@ "binop": null }, "value": "Eggvm", - "start": 1936, - "end": 1941, + "start": 1906, + "end": 1911, "loc": { "start": { "line": 74, @@ -19394,8 +23002,8 @@ "binop": null, "updateContext": null }, - "start": 1941, - "end": 1942, + "start": 1911, + "end": 1912, "loc": { "start": { "line": 74, @@ -19420,8 +23028,8 @@ "binop": null }, "value": "runFromFile", - "start": 1942, - "end": 1953, + "start": 1912, + "end": 1923, "loc": { "start": { "line": 74, @@ -19445,8 +23053,8 @@ "postfix": false, "binop": null }, - "start": 1953, - "end": 1954, + "start": 1923, + "end": 1924, "loc": { "start": { "line": 74, @@ -19471,8 +23079,8 @@ "binop": null }, "value": "file", - "start": 1954, - "end": 1958, + "start": 1924, + "end": 1928, "loc": { "start": { "line": 74, @@ -19496,8 +23104,8 @@ "postfix": false, "binop": null }, - "start": 1958, - "end": 1959, + "start": 1928, + "end": 1929, "loc": { "start": { "line": 74, @@ -19522,8 +23130,8 @@ "binop": null, "updateContext": null }, - "start": 1959, - "end": 1960, + "start": 1929, + "end": 1930, "loc": { "start": { "line": 74, @@ -19547,8 +23155,8 @@ "postfix": false, "binop": null }, - "start": 1961, - "end": 1962, + "start": 1931, + "end": 1932, "loc": { "start": { "line": 75, @@ -19572,8 +23180,8 @@ "postfix": false, "binop": null }, - "start": 1962, - "end": 1963, + "start": 1932, + "end": 1933, "loc": { "start": { "line": 75, @@ -19598,8 +23206,8 @@ "binop": null, "updateContext": null }, - "start": 1963, - "end": 1964, + "start": 1933, + "end": 1934, "loc": { "start": { "line": 75, @@ -19626,8 +23234,8 @@ "updateContext": null }, "value": "const", - "start": 1966, - "end": 1971, + "start": 1936, + "end": 1941, "loc": { "start": { "line": 77, @@ -19652,8 +23260,8 @@ "binop": null }, "value": "eggCompleter", - "start": 1972, - "end": 1984, + "start": 1942, + "end": 1954, "loc": { "start": { "line": 77, @@ -19679,8 +23287,8 @@ "updateContext": null }, "value": "=", - "start": 1985, - "end": 1986, + "start": 1955, + "end": 1956, "loc": { "start": { "line": 77, @@ -19704,8 +23312,8 @@ "postfix": false, "binop": null }, - "start": 1987, - "end": 1988, + "start": 1957, + "end": 1958, "loc": { "start": { "line": 77, @@ -19730,8 +23338,8 @@ "binop": null }, "value": "line", - "start": 1988, - "end": 1992, + "start": 1958, + "end": 1962, "loc": { "start": { "line": 77, @@ -19756,8 +23364,8 @@ "binop": null, "updateContext": null }, - "start": 1992, - "end": 1993, + "start": 1962, + "end": 1963, "loc": { "start": { "line": 77, @@ -19782,8 +23390,8 @@ "binop": null }, "value": "env", - "start": 1994, - "end": 1997, + "start": 1964, + "end": 1967, "loc": { "start": { "line": 77, @@ -19807,8 +23415,8 @@ "postfix": false, "binop": null }, - "start": 1997, - "end": 1998, + "start": 1967, + "end": 1968, "loc": { "start": { "line": 77, @@ -19833,8 +23441,8 @@ "binop": null, "updateContext": null }, - "start": 1999, - "end": 2001, + "start": 1969, + "end": 1971, "loc": { "start": { "line": 77, @@ -19858,8 +23466,8 @@ "postfix": false, "binop": null }, - "start": 2002, - "end": 2003, + "start": 1972, + "end": 1973, "loc": { "start": { "line": 77, @@ -19874,8 +23482,8 @@ { "type": "CommentLine", "value": " Test if get hits from current directory", - "start": 2006, - "end": 2048, + "start": 1976, + "end": 2018, "loc": { "start": { "line": 78, @@ -19902,8 +23510,8 @@ "updateContext": null }, "value": "let", - "start": 2051, - "end": 2054, + "start": 2021, + "end": 2024, "loc": { "start": { "line": 79, @@ -19928,8 +23536,8 @@ "binop": null }, "value": "hits", - "start": 2055, - "end": 2059, + "start": 2025, + "end": 2029, "loc": { "start": { "line": 79, @@ -19955,8 +23563,8 @@ "updateContext": null }, "value": "=", - "start": 2060, - "end": 2061, + "start": 2030, + "end": 2031, "loc": { "start": { "line": 79, @@ -19981,8 +23589,8 @@ "binop": null }, "value": "dirHits", - "start": 2062, - "end": 2069, + "start": 2032, + "end": 2039, "loc": { "start": { "line": 79, @@ -20006,8 +23614,8 @@ "postfix": false, "binop": null }, - "start": 2069, - "end": 2070, + "start": 2039, + "end": 2040, "loc": { "start": { "line": 79, @@ -20032,8 +23640,8 @@ "binop": null }, "value": "line", - "start": 2070, - "end": 2074, + "start": 2040, + "end": 2044, "loc": { "start": { "line": 79, @@ -20057,8 +23665,8 @@ "postfix": false, "binop": null }, - "start": 2074, - "end": 2075, + "start": 2044, + "end": 2045, "loc": { "start": { "line": 79, @@ -20083,8 +23691,8 @@ "binop": null, "updateContext": null }, - "start": 2075, - "end": 2076, + "start": 2045, + "end": 2046, "loc": { "start": { "line": 79, @@ -20099,8 +23707,8 @@ { "type": "CommentLine", "value": " Show hits from the REPL variables", - "start": 2080, - "end": 2116, + "start": 2050, + "end": 2086, "loc": { "start": { "line": 81, @@ -20127,8 +23735,8 @@ "updateContext": null }, "value": "if", - "start": 2119, - "end": 2121, + "start": 2089, + "end": 2091, "loc": { "start": { "line": 82, @@ -20152,8 +23760,8 @@ "postfix": false, "binop": null }, - "start": 2122, - "end": 2123, + "start": 2092, + "end": 2093, "loc": { "start": { "line": 82, @@ -20178,8 +23786,8 @@ "binop": null }, "value": "hits", - "start": 2123, - "end": 2127, + "start": 2093, + "end": 2097, "loc": { "start": { "line": 82, @@ -20204,8 +23812,8 @@ "binop": null, "updateContext": null }, - "start": 2127, - "end": 2128, + "start": 2097, + "end": 2098, "loc": { "start": { "line": 82, @@ -20230,8 +23838,8 @@ "binop": null }, "value": "length", - "start": 2128, - "end": 2134, + "start": 2098, + "end": 2104, "loc": { "start": { "line": 82, @@ -20257,8 +23865,8 @@ "updateContext": null }, "value": "===", - "start": 2135, - "end": 2138, + "start": 2105, + "end": 2108, "loc": { "start": { "line": 82, @@ -20284,8 +23892,8 @@ "updateContext": null }, "value": 0, - "start": 2139, - "end": 2140, + "start": 2109, + "end": 2110, "loc": { "start": { "line": 82, @@ -20309,8 +23917,8 @@ "postfix": false, "binop": null }, - "start": 2140, - "end": 2141, + "start": 2110, + "end": 2111, "loc": { "start": { "line": 82, @@ -20334,8 +23942,8 @@ "postfix": false, "binop": null }, - "start": 2142, - "end": 2143, + "start": 2112, + "end": 2113, "loc": { "start": { "line": 82, @@ -20362,8 +23970,8 @@ "updateContext": null }, "value": "const", - "start": 2148, - "end": 2153, + "start": 2118, + "end": 2123, "loc": { "start": { "line": 83, @@ -20388,8 +23996,8 @@ "binop": null }, "value": "word", - "start": 2154, - "end": 2158, + "start": 2124, + "end": 2128, "loc": { "start": { "line": 83, @@ -20415,8 +24023,8 @@ "updateContext": null }, "value": "=", - "start": 2159, - "end": 2160, + "start": 2129, + "end": 2130, "loc": { "start": { "line": 83, @@ -20441,8 +24049,8 @@ "binop": null }, "value": "line", - "start": 2161, - "end": 2165, + "start": 2131, + "end": 2135, "loc": { "start": { "line": 83, @@ -20467,8 +24075,8 @@ "binop": null, "updateContext": null }, - "start": 2165, - "end": 2166, + "start": 2135, + "end": 2136, "loc": { "start": { "line": 83, @@ -20493,8 +24101,8 @@ "binop": null }, "value": "split", - "start": 2166, - "end": 2171, + "start": 2136, + "end": 2141, "loc": { "start": { "line": 83, @@ -20518,8 +24126,8 @@ "postfix": false, "binop": null }, - "start": 2171, - "end": 2172, + "start": 2141, + "end": 2142, "loc": { "start": { "line": 83, @@ -20548,8 +24156,8 @@ "pattern": "[\\s(),\"]+", "flags": "" }, - "start": 2172, - "end": 2183, + "start": 2142, + "end": 2153, "loc": { "start": { "line": 83, @@ -20573,8 +24181,8 @@ "postfix": false, "binop": null }, - "start": 2183, - "end": 2184, + "start": 2153, + "end": 2154, "loc": { "start": { "line": 83, @@ -20599,8 +24207,8 @@ "binop": null, "updateContext": null }, - "start": 2184, - "end": 2185, + "start": 2154, + "end": 2155, "loc": { "start": { "line": 83, @@ -20625,8 +24233,8 @@ "binop": null }, "value": "slice", - "start": 2185, - "end": 2190, + "start": 2155, + "end": 2160, "loc": { "start": { "line": 83, @@ -20650,8 +24258,8 @@ "postfix": false, "binop": null }, - "start": 2190, - "end": 2191, + "start": 2160, + "end": 2161, "loc": { "start": { "line": 83, @@ -20677,8 +24285,8 @@ "updateContext": null }, "value": "-", - "start": 2191, - "end": 2192, + "start": 2161, + "end": 2162, "loc": { "start": { "line": 83, @@ -20704,8 +24312,8 @@ "updateContext": null }, "value": 1, - "start": 2192, - "end": 2193, + "start": 2162, + "end": 2163, "loc": { "start": { "line": 83, @@ -20729,8 +24337,8 @@ "postfix": false, "binop": null }, - "start": 2193, - "end": 2194, + "start": 2163, + "end": 2164, "loc": { "start": { "line": 83, @@ -20755,8 +24363,8 @@ "binop": null, "updateContext": null }, - "start": 2194, - "end": 2195, + "start": 2164, + "end": 2165, "loc": { "start": { "line": 83, @@ -20782,8 +24390,8 @@ "updateContext": null }, "value": 0, - "start": 2195, - "end": 2196, + "start": 2165, + "end": 2166, "loc": { "start": { "line": 83, @@ -20808,8 +24416,8 @@ "binop": null, "updateContext": null }, - "start": 2196, - "end": 2197, + "start": 2166, + "end": 2167, "loc": { "start": { "line": 83, @@ -20834,8 +24442,8 @@ "binop": null, "updateContext": null }, - "start": 2197, - "end": 2198, + "start": 2167, + "end": 2168, "loc": { "start": { "line": 83, @@ -20860,8 +24468,8 @@ "binop": null }, "value": "hits", - "start": 2203, - "end": 2207, + "start": 2173, + "end": 2177, "loc": { "start": { "line": 84, @@ -20887,8 +24495,8 @@ "updateContext": null }, "value": "=", - "start": 2208, - "end": 2209, + "start": 2178, + "end": 2179, "loc": { "start": { "line": 84, @@ -20913,8 +24521,8 @@ "binop": null }, "value": "_filter", - "start": 2210, - "end": 2217, + "start": 2180, + "end": 2187, "loc": { "start": { "line": 84, @@ -20938,8 +24546,8 @@ "postfix": false, "binop": null }, - "start": 2217, - "end": 2218, + "start": 2187, + "end": 2188, "loc": { "start": { "line": 84, @@ -20964,8 +24572,8 @@ "binop": null }, "value": "Object", - "start": 2218, - "end": 2224, + "start": 2188, + "end": 2194, "loc": { "start": { "line": 84, @@ -20990,8 +24598,8 @@ "binop": null, "updateContext": null }, - "start": 2224, - "end": 2225, + "start": 2194, + "end": 2195, "loc": { "start": { "line": 84, @@ -21016,8 +24624,8 @@ "binop": null }, "value": "keys", - "start": 2225, - "end": 2229, + "start": 2195, + "end": 2199, "loc": { "start": { "line": 84, @@ -21041,8 +24649,8 @@ "postfix": false, "binop": null }, - "start": 2229, - "end": 2230, + "start": 2199, + "end": 2200, "loc": { "start": { "line": 84, @@ -21067,8 +24675,8 @@ "binop": null }, "value": "SpecialForms", - "start": 2230, - "end": 2242, + "start": 2200, + "end": 2212, "loc": { "start": { "line": 84, @@ -21092,8 +24700,8 @@ "postfix": false, "binop": null }, - "start": 2242, - "end": 2243, + "start": 2212, + "end": 2213, "loc": { "start": { "line": 84, @@ -21118,8 +24726,8 @@ "binop": null, "updateContext": null }, - "start": 2243, - "end": 2244, + "start": 2213, + "end": 2214, "loc": { "start": { "line": 84, @@ -21144,8 +24752,8 @@ "binop": null }, "value": "concat", - "start": 2244, - "end": 2250, + "start": 2214, + "end": 2220, "loc": { "start": { "line": 84, @@ -21169,8 +24777,8 @@ "postfix": false, "binop": null }, - "start": 2250, - "end": 2251, + "start": 2220, + "end": 2221, "loc": { "start": { "line": 84, @@ -21195,8 +24803,8 @@ "binop": null }, "value": "_allProperties", - "start": 2251, - "end": 2265, + "start": 2221, + "end": 2235, "loc": { "start": { "line": 84, @@ -21220,8 +24828,8 @@ "postfix": false, "binop": null }, - "start": 2265, - "end": 2266, + "start": 2235, + "end": 2236, "loc": { "start": { "line": 84, @@ -21246,8 +24854,8 @@ "binop": null }, "value": "env", - "start": 2266, - "end": 2269, + "start": 2236, + "end": 2239, "loc": { "start": { "line": 84, @@ -21271,8 +24879,8 @@ "postfix": false, "binop": null }, - "start": 2269, - "end": 2270, + "start": 2239, + "end": 2240, "loc": { "start": { "line": 84, @@ -21296,8 +24904,8 @@ "postfix": false, "binop": null }, - "start": 2270, - "end": 2271, + "start": 2240, + "end": 2241, "loc": { "start": { "line": 84, @@ -21322,8 +24930,8 @@ "binop": null, "updateContext": null }, - "start": 2271, - "end": 2272, + "start": 2241, + "end": 2242, "loc": { "start": { "line": 84, @@ -21348,8 +24956,8 @@ "binop": null }, "value": "word", - "start": 2273, - "end": 2277, + "start": 2243, + "end": 2247, "loc": { "start": { "line": 84, @@ -21373,8 +24981,8 @@ "postfix": false, "binop": null }, - "start": 2277, - "end": 2278, + "start": 2247, + "end": 2248, "loc": { "start": { "line": 84, @@ -21399,8 +25007,8 @@ "binop": null, "updateContext": null }, - "start": 2278, - "end": 2279, + "start": 2248, + "end": 2249, "loc": { "start": { "line": 84, @@ -21424,8 +25032,8 @@ "postfix": false, "binop": null }, - "start": 2282, - "end": 2283, + "start": 2252, + "end": 2253, "loc": { "start": { "line": 85, @@ -21452,8 +25060,8 @@ "updateContext": null }, "value": "return", - "start": 2287, - "end": 2293, + "start": 2257, + "end": 2263, "loc": { "start": { "line": 87, @@ -21478,8 +25086,8 @@ "binop": null, "updateContext": null }, - "start": 2294, - "end": 2295, + "start": 2264, + "end": 2265, "loc": { "start": { "line": 87, @@ -21504,8 +25112,8 @@ "binop": null }, "value": "hits", - "start": 2295, - "end": 2299, + "start": 2265, + "end": 2269, "loc": { "start": { "line": 87, @@ -21530,8 +25138,8 @@ "binop": null, "updateContext": null }, - "start": 2299, - "end": 2300, + "start": 2269, + "end": 2270, "loc": { "start": { "line": 87, @@ -21556,8 +25164,8 @@ "binop": null }, "value": "line", - "start": 2301, - "end": 2305, + "start": 2271, + "end": 2275, "loc": { "start": { "line": 87, @@ -21582,8 +25190,8 @@ "binop": null, "updateContext": null }, - "start": 2305, - "end": 2306, + "start": 2275, + "end": 2276, "loc": { "start": { "line": 87, @@ -21608,8 +25216,8 @@ "binop": null, "updateContext": null }, - "start": 2306, - "end": 2307, + "start": 2276, + "end": 2277, "loc": { "start": { "line": 87, @@ -21633,8 +25241,8 @@ "postfix": false, "binop": null }, - "start": 2308, - "end": 2309, + "start": 2278, + "end": 2279, "loc": { "start": { "line": 88, @@ -21659,8 +25267,8 @@ "binop": null, "updateContext": null }, - "start": 2309, - "end": 2310, + "start": 2279, + "end": 2280, "loc": { "start": { "line": 88, @@ -21687,8 +25295,8 @@ "updateContext": null }, "value": "const", - "start": 2312, - "end": 2317, + "start": 2282, + "end": 2287, "loc": { "start": { "line": 90, @@ -21713,8 +25321,8 @@ "binop": null }, "value": "_allProperties", - "start": 2318, - "end": 2332, + "start": 2288, + "end": 2302, "loc": { "start": { "line": 90, @@ -21740,8 +25348,8 @@ "updateContext": null }, "value": "=", - "start": 2333, - "end": 2334, + "start": 2303, + "end": 2304, "loc": { "start": { "line": 90, @@ -21766,8 +25374,8 @@ "binop": null }, "value": "obj", - "start": 2335, - "end": 2338, + "start": 2305, + "end": 2308, "loc": { "start": { "line": 90, @@ -21792,8 +25400,8 @@ "binop": null, "updateContext": null }, - "start": 2339, - "end": 2341, + "start": 2309, + "end": 2311, "loc": { "start": { "line": 90, @@ -21817,8 +25425,8 @@ "postfix": false, "binop": null }, - "start": 2342, - "end": 2343, + "start": 2312, + "end": 2313, "loc": { "start": { "line": 90, @@ -21845,8 +25453,8 @@ "updateContext": null }, "value": "let", - "start": 2346, - "end": 2349, + "start": 2316, + "end": 2319, "loc": { "start": { "line": 91, @@ -21871,8 +25479,8 @@ "binop": null }, "value": "keys", - "start": 2350, - "end": 2354, + "start": 2320, + "end": 2324, "loc": { "start": { "line": 91, @@ -21898,8 +25506,8 @@ "updateContext": null }, "value": "=", - "start": 2355, - "end": 2356, + "start": 2325, + "end": 2326, "loc": { "start": { "line": 91, @@ -21924,8 +25532,8 @@ "binop": null, "updateContext": null }, - "start": 2357, - "end": 2358, + "start": 2327, + "end": 2328, "loc": { "start": { "line": 91, @@ -21950,8 +25558,8 @@ "binop": null, "updateContext": null }, - "start": 2358, - "end": 2359, + "start": 2328, + "end": 2329, "loc": { "start": { "line": 91, @@ -21976,8 +25584,8 @@ "binop": null, "updateContext": null }, - "start": 2359, - "end": 2360, + "start": 2329, + "end": 2330, "loc": { "start": { "line": 91, @@ -22004,8 +25612,8 @@ "updateContext": null }, "value": "let", - "start": 2364, - "end": 2367, + "start": 2334, + "end": 2337, "loc": { "start": { "line": 93, @@ -22030,8 +25638,8 @@ "binop": null }, "value": "proto", - "start": 2368, - "end": 2373, + "start": 2338, + "end": 2343, "loc": { "start": { "line": 93, @@ -22057,8 +25665,8 @@ "updateContext": null }, "value": "=", - "start": 2374, - "end": 2375, + "start": 2344, + "end": 2345, "loc": { "start": { "line": 93, @@ -22083,8 +25691,8 @@ "binop": null }, "value": "obj", - "start": 2376, - "end": 2379, + "start": 2346, + "end": 2349, "loc": { "start": { "line": 93, @@ -22109,8 +25717,8 @@ "binop": null, "updateContext": null }, - "start": 2379, - "end": 2380, + "start": 2349, + "end": 2350, "loc": { "start": { "line": 93, @@ -22137,8 +25745,8 @@ "updateContext": null }, "value": "while", - "start": 2383, - "end": 2388, + "start": 2353, + "end": 2358, "loc": { "start": { "line": 94, @@ -22162,8 +25770,8 @@ "postfix": false, "binop": null }, - "start": 2389, - "end": 2390, + "start": 2359, + "end": 2360, "loc": { "start": { "line": 94, @@ -22188,8 +25796,8 @@ "binop": null }, "value": "proto", - "start": 2390, - "end": 2395, + "start": 2360, + "end": 2365, "loc": { "start": { "line": 94, @@ -22213,8 +25821,8 @@ "postfix": false, "binop": null }, - "start": 2395, - "end": 2396, + "start": 2365, + "end": 2366, "loc": { "start": { "line": 94, @@ -22238,8 +25846,8 @@ "postfix": false, "binop": null }, - "start": 2397, - "end": 2398, + "start": 2367, + "end": 2368, "loc": { "start": { "line": 94, @@ -22264,8 +25872,8 @@ "binop": null }, "value": "keys", - "start": 2403, - "end": 2407, + "start": 2373, + "end": 2377, "loc": { "start": { "line": 95, @@ -22291,8 +25899,8 @@ "updateContext": null }, "value": "=", - "start": 2408, - "end": 2409, + "start": 2378, + "end": 2379, "loc": { "start": { "line": 95, @@ -22317,8 +25925,8 @@ "binop": null }, "value": "keys", - "start": 2410, - "end": 2414, + "start": 2380, + "end": 2384, "loc": { "start": { "line": 95, @@ -22343,8 +25951,8 @@ "binop": null, "updateContext": null }, - "start": 2414, - "end": 2415, + "start": 2384, + "end": 2385, "loc": { "start": { "line": 95, @@ -22369,8 +25977,8 @@ "binop": null }, "value": "concat", - "start": 2415, - "end": 2421, + "start": 2385, + "end": 2391, "loc": { "start": { "line": 95, @@ -22394,8 +26002,8 @@ "postfix": false, "binop": null }, - "start": 2421, - "end": 2422, + "start": 2391, + "end": 2392, "loc": { "start": { "line": 95, @@ -22420,8 +26028,8 @@ "binop": null }, "value": "Object", - "start": 2422, - "end": 2428, + "start": 2392, + "end": 2398, "loc": { "start": { "line": 95, @@ -22446,8 +26054,8 @@ "binop": null, "updateContext": null }, - "start": 2428, - "end": 2429, + "start": 2398, + "end": 2399, "loc": { "start": { "line": 95, @@ -22472,8 +26080,8 @@ "binop": null }, "value": "keys", - "start": 2429, - "end": 2433, + "start": 2399, + "end": 2403, "loc": { "start": { "line": 95, @@ -22497,8 +26105,8 @@ "postfix": false, "binop": null }, - "start": 2433, - "end": 2434, + "start": 2403, + "end": 2404, "loc": { "start": { "line": 95, @@ -22523,8 +26131,8 @@ "binop": null }, "value": "proto", - "start": 2434, - "end": 2439, + "start": 2404, + "end": 2409, "loc": { "start": { "line": 95, @@ -22548,8 +26156,8 @@ "postfix": false, "binop": null }, - "start": 2439, - "end": 2440, + "start": 2409, + "end": 2410, "loc": { "start": { "line": 95, @@ -22573,8 +26181,8 @@ "postfix": false, "binop": null }, - "start": 2440, - "end": 2441, + "start": 2410, + "end": 2411, "loc": { "start": { "line": 95, @@ -22599,8 +26207,8 @@ "binop": null, "updateContext": null }, - "start": 2441, - "end": 2442, + "start": 2411, + "end": 2412, "loc": { "start": { "line": 95, @@ -22625,8 +26233,8 @@ "binop": null }, "value": "proto", - "start": 2447, - "end": 2452, + "start": 2417, + "end": 2422, "loc": { "start": { "line": 96, @@ -22652,8 +26260,8 @@ "updateContext": null }, "value": "=", - "start": 2453, - "end": 2454, + "start": 2423, + "end": 2424, "loc": { "start": { "line": 96, @@ -22678,8 +26286,8 @@ "binop": null }, "value": "Object", - "start": 2455, - "end": 2461, + "start": 2425, + "end": 2431, "loc": { "start": { "line": 96, @@ -22704,8 +26312,8 @@ "binop": null, "updateContext": null }, - "start": 2461, - "end": 2462, + "start": 2431, + "end": 2432, "loc": { "start": { "line": 96, @@ -22730,8 +26338,8 @@ "binop": null }, "value": "getPrototypeOf", - "start": 2462, - "end": 2476, + "start": 2432, + "end": 2446, "loc": { "start": { "line": 96, @@ -22755,8 +26363,8 @@ "postfix": false, "binop": null }, - "start": 2476, - "end": 2477, + "start": 2446, + "end": 2447, "loc": { "start": { "line": 96, @@ -22781,8 +26389,8 @@ "binop": null }, "value": "proto", - "start": 2477, - "end": 2482, + "start": 2447, + "end": 2452, "loc": { "start": { "line": 96, @@ -22806,8 +26414,8 @@ "postfix": false, "binop": null }, - "start": 2482, - "end": 2483, + "start": 2452, + "end": 2453, "loc": { "start": { "line": 96, @@ -22832,8 +26440,8 @@ "binop": null, "updateContext": null }, - "start": 2483, - "end": 2484, + "start": 2453, + "end": 2454, "loc": { "start": { "line": 96, @@ -22857,8 +26465,8 @@ "postfix": false, "binop": null }, - "start": 2487, - "end": 2488, + "start": 2457, + "end": 2458, "loc": { "start": { "line": 97, @@ -22885,8 +26493,8 @@ "updateContext": null }, "value": "return", - "start": 2492, - "end": 2498, + "start": 2462, + "end": 2468, "loc": { "start": { "line": 99, @@ -22911,8 +26519,8 @@ "binop": null }, "value": "keys", - "start": 2499, - "end": 2503, + "start": 2469, + "end": 2473, "loc": { "start": { "line": 99, @@ -22937,8 +26545,8 @@ "binop": null, "updateContext": null }, - "start": 2503, - "end": 2504, + "start": 2473, + "end": 2474, "loc": { "start": { "line": 99, @@ -22962,8 +26570,8 @@ "postfix": false, "binop": null }, - "start": 2505, - "end": 2506, + "start": 2475, + "end": 2476, "loc": { "start": { "line": 100, @@ -22988,8 +26596,8 @@ "binop": null, "updateContext": null }, - "start": 2506, - "end": 2507, + "start": 2476, + "end": 2477, "loc": { "start": { "line": 100, @@ -23016,8 +26624,8 @@ "updateContext": null }, "value": "const", - "start": 2509, - "end": 2514, + "start": 2479, + "end": 2484, "loc": { "start": { "line": 102, @@ -23042,8 +26650,8 @@ "binop": null }, "value": "dirHits", - "start": 2515, - "end": 2522, + "start": 2485, + "end": 2492, "loc": { "start": { "line": 102, @@ -23069,8 +26677,8 @@ "updateContext": null }, "value": "=", - "start": 2523, - "end": 2524, + "start": 2493, + "end": 2494, "loc": { "start": { "line": 102, @@ -23095,8 +26703,8 @@ "binop": null }, "value": "line", - "start": 2525, - "end": 2529, + "start": 2495, + "end": 2499, "loc": { "start": { "line": 102, @@ -23121,8 +26729,8 @@ "binop": null, "updateContext": null }, - "start": 2530, - "end": 2532, + "start": 2500, + "end": 2502, "loc": { "start": { "line": 102, @@ -23146,8 +26754,8 @@ "postfix": false, "binop": null }, - "start": 2533, - "end": 2534, + "start": 2503, + "end": 2504, "loc": { "start": { "line": 102, @@ -23174,8 +26782,8 @@ "updateContext": null }, "value": "const", - "start": 2537, - "end": 2542, + "start": 2507, + "end": 2512, "loc": { "start": { "line": 103, @@ -23200,8 +26808,8 @@ "binop": null }, "value": "match", - "start": 2543, - "end": 2548, + "start": 2513, + "end": 2518, "loc": { "start": { "line": 103, @@ -23227,8 +26835,8 @@ "updateContext": null }, "value": "=", - "start": 2549, - "end": 2550, + "start": 2519, + "end": 2520, "loc": { "start": { "line": 103, @@ -23253,8 +26861,8 @@ "binop": null }, "value": "line", - "start": 2551, - "end": 2555, + "start": 2521, + "end": 2525, "loc": { "start": { "line": 103, @@ -23279,8 +26887,8 @@ "binop": null, "updateContext": null }, - "start": 2555, - "end": 2556, + "start": 2525, + "end": 2526, "loc": { "start": { "line": 103, @@ -23305,8 +26913,8 @@ "binop": null }, "value": "match", - "start": 2556, - "end": 2561, + "start": 2526, + "end": 2531, "loc": { "start": { "line": 103, @@ -23330,8 +26938,8 @@ "postfix": false, "binop": null }, - "start": 2561, - "end": 2562, + "start": 2531, + "end": 2532, "loc": { "start": { "line": 103, @@ -23360,8 +26968,8 @@ "pattern": "(?:run)\\((.*)", "flags": "" }, - "start": 2562, - "end": 2577, + "start": 2532, + "end": 2547, "loc": { "start": { "line": 103, @@ -23385,8 +26993,8 @@ "postfix": false, "binop": null }, - "start": 2577, - "end": 2578, + "start": 2547, + "end": 2548, "loc": { "start": { "line": 103, @@ -23411,8 +27019,8 @@ "binop": null, "updateContext": null }, - "start": 2578, - "end": 2579, + "start": 2548, + "end": 2549, "loc": { "start": { "line": 103, @@ -23439,8 +27047,8 @@ "updateContext": null }, "value": "if", - "start": 2582, - "end": 2584, + "start": 2552, + "end": 2554, "loc": { "start": { "line": 104, @@ -23464,8 +27072,8 @@ "postfix": false, "binop": null }, - "start": 2585, - "end": 2586, + "start": 2555, + "end": 2556, "loc": { "start": { "line": 104, @@ -23490,8 +27098,8 @@ "binop": null }, "value": "match", - "start": 2586, - "end": 2591, + "start": 2556, + "end": 2561, "loc": { "start": { "line": 104, @@ -23515,8 +27123,8 @@ "postfix": false, "binop": null }, - "start": 2591, - "end": 2592, + "start": 2561, + "end": 2562, "loc": { "start": { "line": 104, @@ -23540,8 +27148,8 @@ "postfix": false, "binop": null }, - "start": 2593, - "end": 2594, + "start": 2563, + "end": 2564, "loc": { "start": { "line": 104, @@ -23568,8 +27176,8 @@ "updateContext": null }, "value": "const", - "start": 2599, - "end": 2604, + "start": 2569, + "end": 2574, "loc": { "start": { "line": 105, @@ -23594,8 +27202,8 @@ "binop": null }, "value": "path", - "start": 2605, - "end": 2609, + "start": 2575, + "end": 2579, "loc": { "start": { "line": 105, @@ -23621,8 +27229,8 @@ "updateContext": null }, "value": "=", - "start": 2610, - "end": 2611, + "start": 2580, + "end": 2581, "loc": { "start": { "line": 105, @@ -23647,8 +27255,8 @@ "binop": null }, "value": "match", - "start": 2612, - "end": 2617, + "start": 2582, + "end": 2587, "loc": { "start": { "line": 105, @@ -23673,8 +27281,8 @@ "binop": null, "updateContext": null }, - "start": 2617, - "end": 2618, + "start": 2587, + "end": 2588, "loc": { "start": { "line": 105, @@ -23700,8 +27308,8 @@ "updateContext": null }, "value": 1, - "start": 2618, - "end": 2619, + "start": 2588, + "end": 2589, "loc": { "start": { "line": 105, @@ -23726,8 +27334,8 @@ "binop": null, "updateContext": null }, - "start": 2619, - "end": 2620, + "start": 2589, + "end": 2590, "loc": { "start": { "line": 105, @@ -23752,8 +27360,8 @@ "binop": null, "updateContext": null }, - "start": 2627, - "end": 2628, + "start": 2597, + "end": 2598, "loc": { "start": { "line": 106, @@ -23778,8 +27386,8 @@ "binop": null }, "value": "replace", - "start": 2628, - "end": 2635, + "start": 2598, + "end": 2605, "loc": { "start": { "line": 106, @@ -23803,8 +27411,8 @@ "postfix": false, "binop": null }, - "start": 2635, - "end": 2636, + "start": 2605, + "end": 2606, "loc": { "start": { "line": 106, @@ -23833,8 +27441,8 @@ "pattern": "[\"'`]", "flags": "" }, - "start": 2636, - "end": 2643, + "start": 2606, + "end": 2613, "loc": { "start": { "line": 106, @@ -23859,8 +27467,8 @@ "binop": null, "updateContext": null }, - "start": 2643, - "end": 2644, + "start": 2613, + "end": 2614, "loc": { "start": { "line": 106, @@ -23886,8 +27494,8 @@ "updateContext": null }, "value": "", - "start": 2645, - "end": 2647, + "start": 2615, + "end": 2617, "loc": { "start": { "line": 106, @@ -23911,8 +27519,8 @@ "postfix": false, "binop": null }, - "start": 2647, - "end": 2648, + "start": 2617, + "end": 2618, "loc": { "start": { "line": 106, @@ -23937,8 +27545,8 @@ "binop": null, "updateContext": null }, - "start": 2655, - "end": 2656, + "start": 2625, + "end": 2626, "loc": { "start": { "line": 107, @@ -23963,8 +27571,8 @@ "binop": null }, "value": "trim", - "start": 2656, - "end": 2660, + "start": 2626, + "end": 2630, "loc": { "start": { "line": 107, @@ -23988,8 +27596,8 @@ "postfix": false, "binop": null }, - "start": 2660, - "end": 2661, + "start": 2630, + "end": 2631, "loc": { "start": { "line": 107, @@ -24013,8 +27621,8 @@ "postfix": false, "binop": null }, - "start": 2661, - "end": 2662, + "start": 2631, + "end": 2632, "loc": { "start": { "line": 107, @@ -24039,8 +27647,8 @@ "binop": null, "updateContext": null }, - "start": 2669, - "end": 2670, + "start": 2639, + "end": 2640, "loc": { "start": { "line": 108, @@ -24065,8 +27673,8 @@ "binop": null }, "value": "split", - "start": 2670, - "end": 2675, + "start": 2640, + "end": 2645, "loc": { "start": { "line": 108, @@ -24090,8 +27698,8 @@ "postfix": false, "binop": null }, - "start": 2675, - "end": 2676, + "start": 2645, + "end": 2646, "loc": { "start": { "line": 108, @@ -24117,8 +27725,8 @@ "updateContext": null }, "value": "/", - "start": 2676, - "end": 2679, + "start": 2646, + "end": 2649, "loc": { "start": { "line": 108, @@ -24142,8 +27750,8 @@ "postfix": false, "binop": null }, - "start": 2679, - "end": 2680, + "start": 2649, + "end": 2650, "loc": { "start": { "line": 108, @@ -24168,8 +27776,8 @@ "binop": null, "updateContext": null }, - "start": 2680, - "end": 2681, + "start": 2650, + "end": 2651, "loc": { "start": { "line": 108, @@ -24196,8 +27804,8 @@ "updateContext": null }, "value": "const", - "start": 2686, - "end": 2691, + "start": 2656, + "end": 2661, "loc": { "start": { "line": 109, @@ -24222,8 +27830,8 @@ "binop": null }, "value": "dirPath", - "start": 2692, - "end": 2699, + "start": 2662, + "end": 2669, "loc": { "start": { "line": 109, @@ -24249,8 +27857,8 @@ "updateContext": null }, "value": "=", - "start": 2700, - "end": 2701, + "start": 2670, + "end": 2671, "loc": { "start": { "line": 109, @@ -24275,8 +27883,8 @@ "binop": null }, "value": "path", - "start": 2702, - "end": 2706, + "start": 2672, + "end": 2676, "loc": { "start": { "line": 109, @@ -24301,8 +27909,8 @@ "binop": null, "updateContext": null }, - "start": 2706, - "end": 2707, + "start": 2676, + "end": 2677, "loc": { "start": { "line": 109, @@ -24327,8 +27935,8 @@ "binop": null }, "value": "slice", - "start": 2707, - "end": 2712, + "start": 2677, + "end": 2682, "loc": { "start": { "line": 109, @@ -24352,8 +27960,8 @@ "postfix": false, "binop": null }, - "start": 2712, - "end": 2713, + "start": 2682, + "end": 2683, "loc": { "start": { "line": 109, @@ -24379,8 +27987,8 @@ "updateContext": null }, "value": 0, - "start": 2713, - "end": 2714, + "start": 2683, + "end": 2684, "loc": { "start": { "line": 109, @@ -24405,8 +28013,8 @@ "binop": null, "updateContext": null }, - "start": 2714, - "end": 2715, + "start": 2684, + "end": 2685, "loc": { "start": { "line": 109, @@ -24432,8 +28040,8 @@ "updateContext": null }, "value": "-", - "start": 2716, - "end": 2717, + "start": 2686, + "end": 2687, "loc": { "start": { "line": 109, @@ -24459,8 +28067,8 @@ "updateContext": null }, "value": 1, - "start": 2717, - "end": 2718, + "start": 2687, + "end": 2688, "loc": { "start": { "line": 109, @@ -24484,8 +28092,8 @@ "postfix": false, "binop": null }, - "start": 2718, - "end": 2719, + "start": 2688, + "end": 2689, "loc": { "start": { "line": 109, @@ -24510,8 +28118,8 @@ "binop": null, "updateContext": null }, - "start": 2719, - "end": 2720, + "start": 2689, + "end": 2690, "loc": { "start": { "line": 109, @@ -24538,8 +28146,8 @@ "updateContext": null }, "value": "const", - "start": 2725, - "end": 2730, + "start": 2695, + "end": 2700, "loc": { "start": { "line": 110, @@ -24564,8 +28172,8 @@ "binop": null }, "value": "filePath", - "start": 2731, - "end": 2739, + "start": 2701, + "end": 2709, "loc": { "start": { "line": 110, @@ -24591,8 +28199,8 @@ "updateContext": null }, "value": "=", - "start": 2740, - "end": 2741, + "start": 2710, + "end": 2711, "loc": { "start": { "line": 110, @@ -24617,8 +28225,8 @@ "binop": null }, "value": "path", - "start": 2742, - "end": 2746, + "start": 2712, + "end": 2716, "loc": { "start": { "line": 110, @@ -24643,8 +28251,8 @@ "binop": null, "updateContext": null }, - "start": 2746, - "end": 2747, + "start": 2716, + "end": 2717, "loc": { "start": { "line": 110, @@ -24669,8 +28277,8 @@ "binop": null }, "value": "slice", - "start": 2747, - "end": 2752, + "start": 2717, + "end": 2722, "loc": { "start": { "line": 110, @@ -24694,8 +28302,8 @@ "postfix": false, "binop": null }, - "start": 2752, - "end": 2753, + "start": 2722, + "end": 2723, "loc": { "start": { "line": 110, @@ -24721,8 +28329,8 @@ "updateContext": null }, "value": "-", - "start": 2753, - "end": 2754, + "start": 2723, + "end": 2724, "loc": { "start": { "line": 110, @@ -24748,8 +28356,8 @@ "updateContext": null }, "value": 1, - "start": 2754, - "end": 2755, + "start": 2724, + "end": 2725, "loc": { "start": { "line": 110, @@ -24773,8 +28381,8 @@ "postfix": false, "binop": null }, - "start": 2755, - "end": 2756, + "start": 2725, + "end": 2726, "loc": { "start": { "line": 110, @@ -24799,8 +28407,8 @@ "binop": null, "updateContext": null }, - "start": 2756, - "end": 2757, + "start": 2726, + "end": 2727, "loc": { "start": { "line": 110, @@ -24827,8 +28435,8 @@ "updateContext": null }, "value": "try", - "start": 2763, - "end": 2766, + "start": 2733, + "end": 2736, "loc": { "start": { "line": 112, @@ -24852,8 +28460,8 @@ "postfix": false, "binop": null }, - "start": 2767, - "end": 2768, + "start": 2737, + "end": 2738, "loc": { "start": { "line": 112, @@ -24880,8 +28488,8 @@ "updateContext": null }, "value": "return", - "start": 2775, - "end": 2781, + "start": 2745, + "end": 2751, "loc": { "start": { "line": 113, @@ -24906,8 +28514,8 @@ "binop": null }, "value": "_filter", - "start": 2782, - "end": 2789, + "start": 2752, + "end": 2759, "loc": { "start": { "line": 113, @@ -24931,8 +28539,8 @@ "postfix": false, "binop": null }, - "start": 2789, - "end": 2790, + "start": 2759, + "end": 2760, "loc": { "start": { "line": 113, @@ -24957,8 +28565,8 @@ "binop": null }, "value": "fs", - "start": 2790, - "end": 2792, + "start": 2760, + "end": 2762, "loc": { "start": { "line": 113, @@ -24983,8 +28591,8 @@ "binop": null, "updateContext": null }, - "start": 2792, - "end": 2793, + "start": 2762, + "end": 2763, "loc": { "start": { "line": 113, @@ -25009,8 +28617,8 @@ "binop": null }, "value": "readdirSync", - "start": 2793, - "end": 2804, + "start": 2763, + "end": 2774, "loc": { "start": { "line": 113, @@ -25034,8 +28642,8 @@ "postfix": false, "binop": null }, - "start": 2804, - "end": 2805, + "start": 2774, + "end": 2775, "loc": { "start": { "line": 113, @@ -25059,8 +28667,8 @@ "postfix": false, "binop": null }, - "start": 2805, - "end": 2806, + "start": 2775, + "end": 2776, "loc": { "start": { "line": 113, @@ -25086,8 +28694,8 @@ "updateContext": null }, "value": "./", - "start": 2806, - "end": 2808, + "start": 2776, + "end": 2778, "loc": { "start": { "line": 113, @@ -25111,8 +28719,8 @@ "postfix": false, "binop": null }, - "start": 2808, - "end": 2810, + "start": 2778, + "end": 2780, "loc": { "start": { "line": 113, @@ -25137,8 +28745,8 @@ "binop": null }, "value": "dirPath", - "start": 2810, - "end": 2817, + "start": 2780, + "end": 2787, "loc": { "start": { "line": 113, @@ -25162,8 +28770,8 @@ "postfix": false, "binop": null }, - "start": 2817, - "end": 2818, + "start": 2787, + "end": 2788, "loc": { "start": { "line": 113, @@ -25189,8 +28797,8 @@ "updateContext": null }, "value": "", - "start": 2818, - "end": 2818, + "start": 2788, + "end": 2788, "loc": { "start": { "line": 113, @@ -25214,8 +28822,8 @@ "postfix": false, "binop": null }, - "start": 2818, - "end": 2819, + "start": 2788, + "end": 2789, "loc": { "start": { "line": 113, @@ -25239,8 +28847,8 @@ "postfix": false, "binop": null }, - "start": 2819, - "end": 2820, + "start": 2789, + "end": 2790, "loc": { "start": { "line": 113, @@ -25265,8 +28873,8 @@ "binop": null, "updateContext": null }, - "start": 2820, - "end": 2821, + "start": 2790, + "end": 2791, "loc": { "start": { "line": 113, @@ -25291,8 +28899,8 @@ "binop": null }, "value": "filePath", - "start": 2822, - "end": 2830, + "start": 2792, + "end": 2800, "loc": { "start": { "line": 113, @@ -25316,8 +28924,8 @@ "postfix": false, "binop": null }, - "start": 2830, - "end": 2831, + "start": 2800, + "end": 2801, "loc": { "start": { "line": 113, @@ -25342,8 +28950,8 @@ "binop": null, "updateContext": null }, - "start": 2831, - "end": 2832, + "start": 2801, + "end": 2802, "loc": { "start": { "line": 113, @@ -25367,8 +28975,8 @@ "postfix": false, "binop": null }, - "start": 2837, - "end": 2838, + "start": 2807, + "end": 2808, "loc": { "start": { "line": 114, @@ -25395,8 +29003,8 @@ "updateContext": null }, "value": "catch", - "start": 2839, - "end": 2844, + "start": 2809, + "end": 2814, "loc": { "start": { "line": 114, @@ -25420,8 +29028,8 @@ "postfix": false, "binop": null }, - "start": 2845, - "end": 2846, + "start": 2815, + "end": 2816, "loc": { "start": { "line": 114, @@ -25446,8 +29054,8 @@ "binop": null }, "value": "err", - "start": 2846, - "end": 2849, + "start": 2816, + "end": 2819, "loc": { "start": { "line": 114, @@ -25471,8 +29079,8 @@ "postfix": false, "binop": null }, - "start": 2849, - "end": 2850, + "start": 2819, + "end": 2820, "loc": { "start": { "line": 114, @@ -25496,8 +29104,8 @@ "postfix": false, "binop": null }, - "start": 2851, - "end": 2852, + "start": 2821, + "end": 2822, "loc": { "start": { "line": 114, @@ -25524,8 +29132,8 @@ "updateContext": null }, "value": "return", - "start": 2859, - "end": 2865, + "start": 2829, + "end": 2835, "loc": { "start": { "line": 115, @@ -25550,8 +29158,8 @@ "binop": null, "updateContext": null }, - "start": 2866, - "end": 2867, + "start": 2836, + "end": 2837, "loc": { "start": { "line": 115, @@ -25576,8 +29184,8 @@ "binop": null, "updateContext": null }, - "start": 2867, - "end": 2868, + "start": 2837, + "end": 2838, "loc": { "start": { "line": 115, @@ -25602,8 +29210,8 @@ "binop": null, "updateContext": null }, - "start": 2868, - "end": 2869, + "start": 2838, + "end": 2839, "loc": { "start": { "line": 115, @@ -25627,8 +29235,8 @@ "postfix": false, "binop": null }, - "start": 2874, - "end": 2875, + "start": 2844, + "end": 2845, "loc": { "start": { "line": 116, @@ -25652,8 +29260,8 @@ "postfix": false, "binop": null }, - "start": 2878, - "end": 2879, + "start": 2848, + "end": 2849, "loc": { "start": { "line": 117, @@ -25680,8 +29288,8 @@ "updateContext": null }, "value": "return", - "start": 2883, - "end": 2889, + "start": 2853, + "end": 2859, "loc": { "start": { "line": 119, @@ -25706,8 +29314,8 @@ "binop": null, "updateContext": null }, - "start": 2890, - "end": 2891, + "start": 2860, + "end": 2861, "loc": { "start": { "line": 119, @@ -25732,8 +29340,8 @@ "binop": null, "updateContext": null }, - "start": 2891, - "end": 2892, + "start": 2861, + "end": 2862, "loc": { "start": { "line": 119, @@ -25758,8 +29366,8 @@ "binop": null, "updateContext": null }, - "start": 2892, - "end": 2893, + "start": 2862, + "end": 2863, "loc": { "start": { "line": 119, @@ -25783,8 +29391,8 @@ "postfix": false, "binop": null }, - "start": 2894, - "end": 2895, + "start": 2864, + "end": 2865, "loc": { "start": { "line": 120, @@ -25809,8 +29417,8 @@ "binop": null, "updateContext": null }, - "start": 2895, - "end": 2896, + "start": 2865, + "end": 2866, "loc": { "start": { "line": 120, @@ -25837,8 +29445,8 @@ "updateContext": null }, "value": "const", - "start": 2898, - "end": 2903, + "start": 2868, + "end": 2873, "loc": { "start": { "line": 122, @@ -25863,8 +29471,8 @@ "binop": null }, "value": "_filter", - "start": 2904, - "end": 2911, + "start": 2874, + "end": 2881, "loc": { "start": { "line": 122, @@ -25890,8 +29498,8 @@ "updateContext": null }, "value": "=", - "start": 2912, - "end": 2913, + "start": 2882, + "end": 2883, "loc": { "start": { "line": 122, @@ -25915,8 +29523,8 @@ "postfix": false, "binop": null }, - "start": 2914, - "end": 2915, + "start": 2884, + "end": 2885, "loc": { "start": { "line": 122, @@ -25941,8 +29549,8 @@ "binop": null }, "value": "hits", - "start": 2915, - "end": 2919, + "start": 2885, + "end": 2889, "loc": { "start": { "line": 122, @@ -25967,8 +29575,8 @@ "binop": null, "updateContext": null }, - "start": 2919, - "end": 2920, + "start": 2889, + "end": 2890, "loc": { "start": { "line": 122, @@ -25993,8 +29601,8 @@ "binop": null }, "value": "word", - "start": 2921, - "end": 2925, + "start": 2891, + "end": 2895, "loc": { "start": { "line": 122, @@ -26018,8 +29626,8 @@ "postfix": false, "binop": null }, - "start": 2925, - "end": 2926, + "start": 2895, + "end": 2896, "loc": { "start": { "line": 122, @@ -26044,8 +29652,8 @@ "binop": null, "updateContext": null }, - "start": 2927, - "end": 2929, + "start": 2897, + "end": 2899, "loc": { "start": { "line": 122, @@ -26069,8 +29677,8 @@ "postfix": false, "binop": null }, - "start": 2930, - "end": 2931, + "start": 2900, + "end": 2901, "loc": { "start": { "line": 122, @@ -26097,8 +29705,8 @@ "updateContext": null }, "value": "return", - "start": 2934, - "end": 2940, + "start": 2904, + "end": 2910, "loc": { "start": { "line": 123, @@ -26123,8 +29731,8 @@ "binop": null }, "value": "hits", - "start": 2941, - "end": 2945, + "start": 2911, + "end": 2915, "loc": { "start": { "line": 123, @@ -26149,8 +29757,8 @@ "binop": null, "updateContext": null }, - "start": 2945, - "end": 2946, + "start": 2915, + "end": 2916, "loc": { "start": { "line": 123, @@ -26175,8 +29783,8 @@ "binop": null }, "value": "filter", - "start": 2946, - "end": 2952, + "start": 2916, + "end": 2922, "loc": { "start": { "line": 123, @@ -26200,8 +29808,8 @@ "postfix": false, "binop": null }, - "start": 2952, - "end": 2953, + "start": 2922, + "end": 2923, "loc": { "start": { "line": 123, @@ -26226,8 +29834,8 @@ "binop": null }, "value": "hit", - "start": 2953, - "end": 2956, + "start": 2923, + "end": 2926, "loc": { "start": { "line": 123, @@ -26252,8 +29860,8 @@ "binop": null, "updateContext": null }, - "start": 2957, - "end": 2959, + "start": 2927, + "end": 2929, "loc": { "start": { "line": 123, @@ -26277,8 +29885,8 @@ "postfix": false, "binop": null }, - "start": 2960, - "end": 2961, + "start": 2930, + "end": 2931, "loc": { "start": { "line": 123, @@ -26305,8 +29913,8 @@ "updateContext": null }, "value": "return", - "start": 2966, - "end": 2972, + "start": 2936, + "end": 2942, "loc": { "start": { "line": 124, @@ -26331,8 +29939,8 @@ "binop": null }, "value": "hit", - "start": 2973, - "end": 2976, + "start": 2943, + "end": 2946, "loc": { "start": { "line": 124, @@ -26357,8 +29965,8 @@ "binop": null, "updateContext": null }, - "start": 2976, - "end": 2977, + "start": 2946, + "end": 2947, "loc": { "start": { "line": 124, @@ -26383,8 +29991,8 @@ "binop": null }, "value": "indexOf", - "start": 2977, - "end": 2984, + "start": 2947, + "end": 2954, "loc": { "start": { "line": 124, @@ -26408,8 +30016,8 @@ "postfix": false, "binop": null }, - "start": 2984, - "end": 2985, + "start": 2954, + "end": 2955, "loc": { "start": { "line": 124, @@ -26434,8 +30042,8 @@ "binop": null }, "value": "word", - "start": 2985, - "end": 2989, + "start": 2955, + "end": 2959, "loc": { "start": { "line": 124, @@ -26459,8 +30067,8 @@ "postfix": false, "binop": null }, - "start": 2989, - "end": 2990, + "start": 2959, + "end": 2960, "loc": { "start": { "line": 124, @@ -26486,8 +30094,8 @@ "updateContext": null }, "value": "===", - "start": 2991, - "end": 2994, + "start": 2961, + "end": 2964, "loc": { "start": { "line": 124, @@ -26513,8 +30121,8 @@ "updateContext": null }, "value": 0, - "start": 2995, - "end": 2996, + "start": 2965, + "end": 2966, "loc": { "start": { "line": 124, @@ -26539,8 +30147,8 @@ "binop": null, "updateContext": null }, - "start": 2996, - "end": 2997, + "start": 2966, + "end": 2967, "loc": { "start": { "line": 124, @@ -26564,8 +30172,8 @@ "postfix": false, "binop": null }, - "start": 3000, - "end": 3001, + "start": 2970, + "end": 2971, "loc": { "start": { "line": 125, @@ -26589,8 +30197,8 @@ "postfix": false, "binop": null }, - "start": 3001, - "end": 3002, + "start": 2971, + "end": 2972, "loc": { "start": { "line": 125, @@ -26615,8 +30223,8 @@ "binop": null, "updateContext": null }, - "start": 3002, - "end": 3003, + "start": 2972, + "end": 2973, "loc": { "start": { "line": 125, @@ -26640,8 +30248,8 @@ "postfix": false, "binop": null }, - "start": 3004, - "end": 3005, + "start": 2974, + "end": 2975, "loc": { "start": { "line": 126, @@ -26666,8 +30274,8 @@ "binop": null, "updateContext": null }, - "start": 3005, - "end": 3006, + "start": 2975, + "end": 2976, "loc": { "start": { "line": 126, @@ -26681,19 +30289,21 @@ }, { "type": { - "label": "name", + "label": "export", + "keyword": "export", "beforeExpr": false, - "startsExpr": true, + "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "value": "module", - "start": 3008, - "end": 3014, + "value": "export", + "start": 2978, + "end": 2984, "loc": { "start": { "line": 128, @@ -26707,27 +30317,26 @@ }, { "type": { - "label": ".", - "beforeExpr": false, - "startsExpr": false, + "label": "{", + "beforeExpr": true, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null, - "updateContext": null + "binop": null }, - "start": 3014, - "end": 3015, + "start": 2985, + "end": 2986, "loc": { "start": { "line": 128, - "column": 6 + "column": 7 }, "end": { "line": 128, - "column": 7 + "column": 8 } } }, @@ -26743,69 +30352,43 @@ "postfix": false, "binop": null }, - "value": "exports", - "start": 3015, - "end": 3022, + "value": "getPromptLine", + "start": 2987, + "end": 3000, "loc": { "start": { "line": 128, - "column": 7 + "column": 9 }, "end": { "line": 128, - "column": 14 + "column": 22 } } }, { "type": { - "label": "=", + "label": ",", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, - "isAssign": true, + "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, - "value": "=", - "start": 3023, - "end": 3024, - "loc": { - "start": { - "line": 128, - "column": 15 - }, - "end": { - "line": 128, - "column": 16 - } - } - }, - { - "type": { - "label": "{", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 3025, - "end": 3026, + "start": 3000, + "end": 3001, "loc": { "start": { "line": 128, - "column": 17 + "column": 22 }, "end": { "line": 128, - "column": 18 + "column": 23 } } }, @@ -26821,9 +30404,9 @@ "postfix": false, "binop": null }, - "value": "getPromptLine", - "start": 3029, - "end": 3042, + "value": "eggExit", + "start": 3004, + "end": 3011, "loc": { "start": { "line": 129, @@ -26831,7 +30414,7 @@ }, "end": { "line": 129, - "column": 15 + "column": 9 } } }, @@ -26848,16 +30431,16 @@ "binop": null, "updateContext": null }, - "start": 3042, - "end": 3043, + "start": 3011, + "end": 3012, "loc": { "start": { "line": 129, - "column": 15 + "column": 9 }, "end": { "line": 129, - "column": 16 + "column": 10 } } }, @@ -26873,9 +30456,9 @@ "postfix": false, "binop": null }, - "value": "eggExit", - "start": 3046, - "end": 3053, + "value": "eggHelp", + "start": 3015, + "end": 3022, "loc": { "start": { "line": 130, @@ -26900,8 +30483,8 @@ "binop": null, "updateContext": null }, - "start": 3053, - "end": 3054, + "start": 3022, + "end": 3023, "loc": { "start": { "line": 130, @@ -26925,9 +30508,9 @@ "postfix": false, "binop": null }, - "value": "eggHelp", - "start": 3057, - "end": 3064, + "value": "eggInfo", + "start": 3026, + "end": 3033, "loc": { "start": { "line": 131, @@ -26952,8 +30535,8 @@ "binop": null, "updateContext": null }, - "start": 3064, - "end": 3065, + "start": 3033, + "end": 3034, "loc": { "start": { "line": 131, @@ -26977,9 +30560,9 @@ "postfix": false, "binop": null }, - "value": "eggInfo", - "start": 3068, - "end": 3075, + "value": "eggClear", + "start": 3037, + "end": 3045, "loc": { "start": { "line": 132, @@ -26987,58 +30570,6 @@ }, "end": { "line": 132, - "column": 9 - } - } - }, - { - "type": { - "label": ",", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "start": 3075, - "end": 3076, - "loc": { - "start": { - "line": 132, - "column": 9 - }, - "end": { - "line": 132, - "column": 10 - } - } - }, - { - "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "eggClear", - "start": 3079, - "end": 3087, - "loc": { - "start": { - "line": 133, - "column": 2 - }, - "end": { - "line": 133, "column": 10 } } @@ -27056,15 +30587,15 @@ "binop": null, "updateContext": null }, - "start": 3087, - "end": 3088, + "start": 3045, + "end": 3046, "loc": { "start": { - "line": 133, + "line": 132, "column": 10 }, "end": { - "line": 133, + "line": 132, "column": 11 } } @@ -27082,15 +30613,15 @@ "binop": null }, "value": "eggVersion", - "start": 3091, - "end": 3101, + "start": 3049, + "end": 3059, "loc": { "start": { - "line": 134, + "line": 133, "column": 2 }, "end": { - "line": 134, + "line": 133, "column": 12 } } @@ -27108,15 +30639,15 @@ "binop": null, "updateContext": null }, - "start": 3101, - "end": 3102, + "start": 3059, + "end": 3060, "loc": { "start": { - "line": 134, + "line": 133, "column": 12 }, "end": { - "line": 134, + "line": 133, "column": 13 } } @@ -27134,15 +30665,15 @@ "binop": null }, "value": "eggRun", - "start": 3105, - "end": 3111, + "start": 3063, + "end": 3069, "loc": { "start": { - "line": 135, + "line": 134, "column": 2 }, "end": { - "line": 135, + "line": 134, "column": 8 } } @@ -27160,15 +30691,15 @@ "binop": null, "updateContext": null }, - "start": 3111, - "end": 3112, + "start": 3069, + "end": 3070, "loc": { "start": { - "line": 135, + "line": 134, "column": 8 }, "end": { - "line": 135, + "line": 134, "column": 9 } } @@ -27186,15 +30717,15 @@ "binop": null }, "value": "eggCompleter", - "start": 3115, - "end": 3127, + "start": 3073, + "end": 3085, "loc": { "start": { - "line": 136, + "line": 135, "column": 2 }, "end": { - "line": 136, + "line": 135, "column": 14 } } @@ -27211,16 +30742,16 @@ "postfix": false, "binop": null }, - "start": 3128, - "end": 3129, + "start": 3086, + "end": 3087, "loc": { "start": { - "line": 137, - "column": 0 + "line": 135, + "column": 15 }, "end": { - "line": 137, - "column": 1 + "line": 135, + "column": 16 } } }, @@ -27237,16 +30768,16 @@ "binop": null, "updateContext": null }, - "start": 3129, - "end": 3130, + "start": 3087, + "end": 3088, "loc": { "start": { - "line": 137, - "column": 1 + "line": 135, + "column": 16 }, "end": { - "line": 137, - "column": 2 + "line": 135, + "column": 17 } } }, @@ -27263,15 +30794,15 @@ "binop": null, "updateContext": null }, - "start": 3131, - "end": 3131, + "start": 3089, + "end": 3089, "loc": { "start": { - "line": 138, + "line": 136, "column": 0 }, "end": { - "line": 138, + "line": 136, "column": 0 } } diff --git a/docs/ast/source/repl/repl.js.json b/docs/ast/source/repl/repl.js.json index d12b392..0e2b534 100644 --- a/docs/ast/source/repl/repl.js.json +++ b/docs/ast/source/repl/repl.js.json @@ -1,37 +1,37 @@ { "type": "File", "start": 0, - "end": 1743, + "end": 1691, "loc": { "start": { "line": 1, "column": 0 }, "end": { - "line": 76, + "line": 74, "column": 0 } }, "program": { "type": "Program", "start": 0, - "end": 1743, + "end": 1691, "loc": { "start": { "line": 1, "column": 0 }, "end": { - "line": 76, + "line": 74, "column": 0 } }, "sourceType": "module", "body": [ { - "type": "VariableDeclaration", + "type": "ImportDeclaration", "start": 0, - "end": 35, + "end": 30, "loc": { "start": { "line": 1, @@ -39,103 +39,68 @@ }, "end": { "line": 1, - "column": 35 + "column": 30 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 6, - "end": 34, + "type": "ImportDefaultSpecifier", + "start": 7, + "end": 14, "loc": { "start": { "line": 1, - "column": 6 + "column": 7 }, "end": { "line": 1, - "column": 34 + "column": 14 } }, - "id": { + "local": { "type": "Identifier", - "start": 6, - "end": 13, + "start": 7, + "end": 14, "loc": { "start": { "line": 1, - "column": 6 + "column": 7 }, "end": { "line": 1, - "column": 13 + "column": 14 }, "identifierName": "process" }, "name": "process" - }, - "init": { - "type": "CallExpression", - "start": 16, - "end": 34, - "loc": { - "start": { - "line": 1, - "column": 16 - }, - "end": { - "line": 1, - "column": 34 - } - }, - "callee": { - "type": "Identifier", - "start": 16, - "end": 23, - "loc": { - "start": { - "line": 1, - "column": 16 - }, - "end": { - "line": 1, - "column": 23 - }, - "identifierName": "require" - }, - "name": "require" - }, - "arguments": [ - { - "type": "StringLiteral", - "start": 24, - "end": 33, - "loc": { - "start": { - "line": 1, - "column": 24 - }, - "end": { - "line": 1, - "column": 33 - } - }, - "extra": { - "rawValue": "process", - "raw": "\"process\"" - }, - "value": "process" - } - ] } } ], - "kind": "const" + "source": { + "type": "StringLiteral", + "start": 20, + "end": 29, + "loc": { + "start": { + "line": 1, + "column": 20 + }, + "end": { + "line": 1, + "column": 29 + } + }, + "extra": { + "rawValue": "process", + "raw": "\"process\"" + }, + "value": "process" + } }, { - "type": "VariableDeclaration", - "start": 36, - "end": 73, + "type": "ImportDeclaration", + "start": 31, + "end": 63, "loc": { "start": { "line": 2, @@ -143,103 +108,68 @@ }, "end": { "line": 2, - "column": 37 + "column": 32 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 42, - "end": 72, + "type": "ImportDefaultSpecifier", + "start": 38, + "end": 46, "loc": { "start": { "line": 2, - "column": 6 + "column": 7 }, "end": { "line": 2, - "column": 36 + "column": 15 } }, - "id": { + "local": { "type": "Identifier", - "start": 42, - "end": 50, + "start": 38, + "end": 46, "loc": { "start": { "line": 2, - "column": 6 + "column": 7 }, "end": { "line": 2, - "column": 14 + "column": 15 }, "identifierName": "readline" }, "name": "readline" - }, - "init": { - "type": "CallExpression", - "start": 53, - "end": 72, - "loc": { - "start": { - "line": 2, - "column": 17 - }, - "end": { - "line": 2, - "column": 36 - } - }, - "callee": { - "type": "Identifier", - "start": 53, - "end": 60, - "loc": { - "start": { - "line": 2, - "column": 17 - }, - "end": { - "line": 2, - "column": 24 - }, - "identifierName": "require" - }, - "name": "require" - }, - "arguments": [ - { - "type": "StringLiteral", - "start": 61, - "end": 71, - "loc": { - "start": { - "line": 2, - "column": 25 - }, - "end": { - "line": 2, - "column": 35 - } - }, - "extra": { - "rawValue": "readline", - "raw": "\"readline\"" - }, - "value": "readline" - } - ] } } ], - "kind": "const" + "source": { + "type": "StringLiteral", + "start": 52, + "end": 62, + "loc": { + "start": { + "line": 2, + "column": 21 + }, + "end": { + "line": 2, + "column": 31 + } + }, + "extra": { + "rawValue": "readline", + "raw": "\"readline\"" + }, + "value": "readline" + } }, { - "type": "VariableDeclaration", - "start": 75, - "end": 123, + "type": "ImportDeclaration", + "start": 65, + "end": 108, "loc": { "start": { "line": 4, @@ -247,158 +177,85 @@ }, "end": { "line": 4, - "column": 48 + "column": 43 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 81, - "end": 122, + "type": "ImportSpecifier", + "start": 74, + "end": 79, "loc": { "start": { "line": 4, - "column": 6 + "column": 9 }, "end": { "line": 4, - "column": 47 + "column": 14 } }, - "id": { - "type": "ObjectPattern", - "start": 81, - "end": 90, + "imported": { + "type": "Identifier", + "start": 74, + "end": 79, "loc": { "start": { "line": 4, - "column": 6 + "column": 9 }, "end": { "line": 4, - "column": 15 - } + "column": 14 + }, + "identifierName": "Lexer" }, - "properties": [ - { - "type": "ObjectProperty", - "start": 83, - "end": 88, - "loc": { - "start": { - "line": 4, - "column": 8 - }, - "end": { - "line": 4, - "column": 13 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 83, - "end": 88, - "loc": { - "start": { - "line": 4, - "column": 8 - }, - "end": { - "line": 4, - "column": 13 - }, - "identifierName": "Lexer" - }, - "name": "Lexer" - }, - "value": { - "type": "Identifier", - "start": 83, - "end": 88, - "loc": { - "start": { - "line": 4, - "column": 8 - }, - "end": { - "line": 4, - "column": 13 - }, - "identifierName": "Lexer" - }, - "name": "Lexer" - }, - "extra": { - "shorthand": true - } - } - ] + "name": "Lexer" }, - "init": { - "type": "CallExpression", - "start": 93, - "end": 122, + "local": { + "type": "Identifier", + "start": 74, + "end": 79, "loc": { "start": { "line": 4, - "column": 18 + "column": 9 }, "end": { "line": 4, - "column": 47 - } - }, - "callee": { - "type": "Identifier", - "start": 93, - "end": 100, - "loc": { - "start": { - "line": 4, - "column": 18 - }, - "end": { - "line": 4, - "column": 25 - }, - "identifierName": "require" + "column": 14 }, - "name": "require" + "identifierName": "Lexer" }, - "arguments": [ - { - "type": "StringLiteral", - "start": 101, - "end": 121, - "loc": { - "start": { - "line": 4, - "column": 26 - }, - "end": { - "line": 4, - "column": 46 - } - }, - "extra": { - "rawValue": "../parser/lexer.js", - "raw": "\"../parser/lexer.js\"" - }, - "value": "../parser/lexer.js" - } - ] + "name": "Lexer" } } ], - "kind": "const" + "source": { + "type": "StringLiteral", + "start": 87, + "end": 107, + "loc": { + "start": { + "line": 4, + "column": 22 + }, + "end": { + "line": 4, + "column": 42 + } + }, + "extra": { + "rawValue": "../parser/lexer.js", + "raw": "\"../parser/lexer.js\"" + }, + "value": "../parser/lexer.js" + } }, { - "type": "VariableDeclaration", - "start": 124, - "end": 173, + "type": "ImportDeclaration", + "start": 109, + "end": 153, "loc": { "start": { "line": 5, @@ -406,158 +263,85 @@ }, "end": { "line": 5, - "column": 49 + "column": 44 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 130, - "end": 172, + "type": "ImportSpecifier", + "start": 118, + "end": 124, "loc": { "start": { "line": 5, - "column": 6 + "column": 9 }, "end": { "line": 5, - "column": 48 + "column": 15 } }, - "id": { - "type": "ObjectPattern", - "start": 130, - "end": 140, + "imported": { + "type": "Identifier", + "start": 118, + "end": 124, "loc": { "start": { "line": 5, - "column": 6 + "column": 9 }, "end": { "line": 5, - "column": 16 - } + "column": 15 + }, + "identifierName": "Parser" }, - "properties": [ - { - "type": "ObjectProperty", - "start": 132, - "end": 138, - "loc": { - "start": { - "line": 5, - "column": 8 - }, - "end": { - "line": 5, - "column": 14 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 132, - "end": 138, - "loc": { - "start": { - "line": 5, - "column": 8 - }, - "end": { - "line": 5, - "column": 14 - }, - "identifierName": "Parser" - }, - "name": "Parser" - }, - "value": { - "type": "Identifier", - "start": 132, - "end": 138, - "loc": { - "start": { - "line": 5, - "column": 8 - }, - "end": { - "line": 5, - "column": 14 - }, - "identifierName": "Parser" - }, - "name": "Parser" - }, - "extra": { - "shorthand": true - } - } - ] + "name": "Parser" }, - "init": { - "type": "CallExpression", - "start": 143, - "end": 172, + "local": { + "type": "Identifier", + "start": 118, + "end": 124, "loc": { "start": { "line": 5, - "column": 19 + "column": 9 }, "end": { "line": 5, - "column": 48 - } - }, - "callee": { - "type": "Identifier", - "start": 143, - "end": 150, - "loc": { - "start": { - "line": 5, - "column": 19 - }, - "end": { - "line": 5, - "column": 26 - }, - "identifierName": "require" + "column": 15 }, - "name": "require" + "identifierName": "Parser" }, - "arguments": [ - { - "type": "StringLiteral", - "start": 151, - "end": 171, - "loc": { - "start": { - "line": 5, - "column": 27 - }, - "end": { - "line": 5, - "column": 47 - } - }, - "extra": { - "rawValue": "../parser/parse.js", - "raw": "\"../parser/parse.js\"" - }, - "value": "../parser/parse.js" - } - ] + "name": "Parser" } } ], - "kind": "const" + "source": { + "type": "StringLiteral", + "start": 132, + "end": 152, + "loc": { + "start": { + "line": 5, + "column": 23 + }, + "end": { + "line": 5, + "column": 43 + } + }, + "extra": { + "rawValue": "../parser/parse.js", + "raw": "\"../parser/parse.js\"" + }, + "value": "../parser/parse.js" + } }, { - "type": "VariableDeclaration", - "start": 174, - "end": 229, + "type": "ImportDeclaration", + "start": 154, + "end": 204, "loc": { "start": { "line": 6, @@ -565,158 +349,85 @@ }, "end": { "line": 6, - "column": 55 + "column": 50 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 180, - "end": 228, + "type": "ImportSpecifier", + "start": 163, + "end": 169, "loc": { "start": { "line": 6, - "column": 6 + "column": 9 }, "end": { "line": 6, - "column": 54 + "column": 15 } }, - "id": { - "type": "ObjectPattern", - "start": 180, - "end": 190, + "imported": { + "type": "Identifier", + "start": 163, + "end": 169, "loc": { "start": { "line": 6, - "column": 6 + "column": 9 }, "end": { "line": 6, - "column": 16 - } + "column": 15 + }, + "identifierName": "TopEnv" }, - "properties": [ - { - "type": "ObjectProperty", - "start": 182, - "end": 188, - "loc": { - "start": { - "line": 6, - "column": 8 - }, - "end": { - "line": 6, - "column": 14 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 182, - "end": 188, - "loc": { - "start": { - "line": 6, - "column": 8 - }, - "end": { - "line": 6, - "column": 14 - }, - "identifierName": "TopEnv" - }, - "name": "TopEnv" - }, - "value": { - "type": "Identifier", - "start": 182, - "end": 188, - "loc": { - "start": { - "line": 6, - "column": 8 - }, - "end": { - "line": 6, - "column": 14 - }, - "identifierName": "TopEnv" - }, - "name": "TopEnv" - }, - "extra": { - "shorthand": true - } - } - ] + "name": "TopEnv" }, - "init": { - "type": "CallExpression", - "start": 193, - "end": 228, + "local": { + "type": "Identifier", + "start": 163, + "end": 169, "loc": { "start": { "line": 6, - "column": 19 + "column": 9 }, "end": { "line": 6, - "column": 54 - } - }, - "callee": { - "type": "Identifier", - "start": 193, - "end": 200, - "loc": { - "start": { - "line": 6, - "column": 19 - }, - "end": { - "line": 6, - "column": 26 - }, - "identifierName": "require" + "column": 15 }, - "name": "require" + "identifierName": "TopEnv" }, - "arguments": [ - { - "type": "StringLiteral", - "start": 201, - "end": 227, - "loc": { - "start": { - "line": 6, - "column": 27 - }, - "end": { - "line": 6, - "column": 53 - } - }, - "extra": { - "rawValue": "../interp/environment.js", - "raw": "\"../interp/environment.js\"" - }, - "value": "../interp/environment.js" - } - ] + "name": "TopEnv" } } ], - "kind": "const" + "source": { + "type": "StringLiteral", + "start": 177, + "end": 203, + "loc": { + "start": { + "line": 6, + "column": 23 + }, + "end": { + "line": 6, + "column": 49 + } + }, + "extra": { + "rawValue": "../interp/environment.js", + "raw": "\"../interp/environment.js\"" + }, + "value": "../interp/environment.js" + } }, { - "type": "VariableDeclaration", - "start": 230, - "end": 278, + "type": "ImportDeclaration", + "start": 205, + "end": 248, "loc": { "start": { "line": 7, @@ -724,158 +435,85 @@ }, "end": { "line": 7, - "column": 48 + "column": 43 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 236, - "end": 277, + "type": "ImportSpecifier", + "start": 214, + "end": 219, "loc": { "start": { "line": 7, - "column": 6 + "column": 9 }, "end": { "line": 7, - "column": 47 + "column": 14 } }, - "id": { - "type": "ObjectPattern", - "start": 236, - "end": 245, + "imported": { + "type": "Identifier", + "start": 214, + "end": 219, "loc": { "start": { "line": 7, - "column": 6 + "column": 9 }, "end": { "line": 7, - "column": 15 - } + "column": 14 + }, + "identifierName": "Eggvm" }, - "properties": [ - { - "type": "ObjectProperty", - "start": 238, - "end": 243, - "loc": { - "start": { - "line": 7, - "column": 8 - }, - "end": { - "line": 7, - "column": 13 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 238, - "end": 243, - "loc": { - "start": { - "line": 7, - "column": 8 - }, - "end": { - "line": 7, - "column": 13 - }, - "identifierName": "Eggvm" - }, - "name": "Eggvm" - }, - "value": { - "type": "Identifier", - "start": 238, - "end": 243, - "loc": { - "start": { - "line": 7, - "column": 8 - }, - "end": { - "line": 7, - "column": 13 - }, - "identifierName": "Eggvm" - }, - "name": "Eggvm" - }, - "extra": { - "shorthand": true - } - } - ] + "name": "Eggvm" }, - "init": { - "type": "CallExpression", - "start": 248, - "end": 277, + "local": { + "type": "Identifier", + "start": 214, + "end": 219, "loc": { "start": { "line": 7, - "column": 18 + "column": 9 }, "end": { "line": 7, - "column": 47 - } - }, - "callee": { - "type": "Identifier", - "start": 248, - "end": 255, - "loc": { - "start": { - "line": 7, - "column": 18 - }, - "end": { - "line": 7, - "column": 25 - }, - "identifierName": "require" + "column": 14 }, - "name": "require" + "identifierName": "Eggvm" }, - "arguments": [ - { - "type": "StringLiteral", - "start": 256, - "end": 276, - "loc": { - "start": { - "line": 7, - "column": 26 - }, - "end": { - "line": 7, - "column": 46 - } - }, - "extra": { - "rawValue": "../interp/eggvm.js", - "raw": "\"../interp/eggvm.js\"" - }, - "value": "../interp/eggvm.js" - } - ] + "name": "Eggvm" } } ], - "kind": "const" + "source": { + "type": "StringLiteral", + "start": 227, + "end": 247, + "loc": { + "start": { + "line": 7, + "column": 22 + }, + "end": { + "line": 7, + "column": 42 + } + }, + "extra": { + "rawValue": "../interp/eggvm.js", + "raw": "\"../interp/eggvm.js\"" + }, + "value": "../interp/eggvm.js" + } }, { - "type": "VariableDeclaration", - "start": 280, - "end": 326, + "type": "ImportDeclaration", + "start": 250, + "end": 291, "loc": { "start": { "line": 9, @@ -883,103 +521,68 @@ }, "end": { "line": 9, - "column": 46 + "column": 41 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 286, - "end": 325, + "type": "ImportDefaultSpecifier", + "start": 257, + "end": 267, "loc": { "start": { "line": 9, - "column": 6 + "column": 7 }, "end": { "line": 9, - "column": 45 + "column": 17 } }, - "id": { + "local": { "type": "Identifier", - "start": 286, - "end": 296, + "start": 257, + "end": 267, "loc": { "start": { "line": 9, - "column": 6 + "column": 7 }, "end": { "line": 9, - "column": 16 + "column": 17 }, "identifierName": "extensions" }, "name": "extensions" - }, - "init": { - "type": "CallExpression", - "start": 299, - "end": 325, - "loc": { - "start": { - "line": 9, - "column": 19 - }, - "end": { - "line": 9, - "column": 45 - } - }, - "callee": { - "type": "Identifier", - "start": 299, - "end": 306, - "loc": { - "start": { - "line": 9, - "column": 19 - }, - "end": { - "line": 9, - "column": 26 - }, - "identifierName": "require" - }, - "name": "require" - }, - "arguments": [ - { - "type": "StringLiteral", - "start": 307, - "end": 324, - "loc": { - "start": { - "line": 9, - "column": 27 - }, - "end": { - "line": 9, - "column": 44 - } - }, - "extra": { - "rawValue": "./extensions.js", - "raw": "\"./extensions.js\"" - }, - "value": "./extensions.js" - } - ] } } ], - "kind": "const" + "source": { + "type": "StringLiteral", + "start": 273, + "end": 290, + "loc": { + "start": { + "line": 9, + "column": 23 + }, + "end": { + "line": 9, + "column": 40 + } + }, + "extra": { + "rawValue": "./extensions.js", + "raw": "\"./extensions.js\"" + }, + "value": "./extensions.js" + } }, { - "type": "VariableDeclaration", - "start": 327, - "end": 365, + "type": "ImportDeclaration", + "start": 292, + "end": 325, "loc": { "start": { "line": 10, @@ -987,103 +590,68 @@ }, "end": { "line": 10, - "column": 38 + "column": 33 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 333, - "end": 364, + "type": "ImportDefaultSpecifier", + "start": 299, + "end": 305, "loc": { "start": { "line": 10, - "column": 6 + "column": 7 }, "end": { "line": 10, - "column": 37 + "column": 13 } }, - "id": { + "local": { "type": "Identifier", - "start": 333, - "end": 339, + "start": 299, + "end": 305, "loc": { "start": { "line": 10, - "column": 6 + "column": 7 }, "end": { "line": 10, - "column": 12 + "column": 13 }, "identifierName": "colors" }, "name": "colors" - }, - "init": { - "type": "CallExpression", - "start": 342, - "end": 364, - "loc": { - "start": { - "line": 10, - "column": 15 - }, - "end": { - "line": 10, - "column": 37 - } - }, - "callee": { - "type": "Identifier", - "start": 342, - "end": 349, - "loc": { - "start": { - "line": 10, - "column": 15 - }, - "end": { - "line": 10, - "column": 22 - }, - "identifierName": "require" - }, - "name": "require" - }, - "arguments": [ - { - "type": "StringLiteral", - "start": 350, - "end": 363, - "loc": { - "start": { - "line": 10, - "column": 23 - }, - "end": { - "line": 10, - "column": 36 - } - }, - "extra": { - "rawValue": "./colors.js", - "raw": "\"./colors.js\"" - }, - "value": "./colors.js" - } - ] } } ], - "kind": "const" + "source": { + "type": "StringLiteral", + "start": 311, + "end": 324, + "loc": { + "start": { + "line": 10, + "column": 19 + }, + "end": { + "line": 10, + "column": 32 + } + }, + "extra": { + "rawValue": "./colors.js", + "raw": "\"./colors.js\"" + }, + "value": "./colors.js" + } }, { - "type": "VariableDeclaration", - "start": 367, - "end": 1712, + "type": "Identifier", + "start": 327, + "end": 1672, "loc": { "start": { "line": 12, @@ -1097,8 +665,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 373, - "end": 1711, + "start": 333, + "end": 1671, "loc": { "start": { "line": 12, @@ -1111,8 +679,8 @@ }, "id": { "type": "Identifier", - "start": 373, - "end": 377, + "start": 333, + "end": 337, "loc": { "start": { "line": 12, @@ -1128,8 +696,8 @@ }, "init": { "type": "ArrowFunctionExpression", - "start": 380, - "end": 1711, + "start": 340, + "end": 1671, "loc": { "start": { "line": 12, @@ -1140,31 +708,15 @@ "column": 1 } }, - "id": { - "type": "Identifier", - "start": 373, - "end": 377, - "loc": { - "start": { - "line": 12, - "column": 6 - }, - "end": { - "line": 12, - "column": 10 - }, - "identifierName": "repl" - }, - "name": "repl" - }, + "id": null, "generator": false, "expression": false, "async": false, "params": [], "body": { "type": "BlockStatement", - "start": 386, - "end": 1711, + "start": 346, + "end": 1671, "loc": { "start": { "line": 12, @@ -1178,8 +730,8 @@ "body": [ { "type": "VariableDeclaration", - "start": 423, - "end": 460, + "start": 383, + "end": 420, "loc": { "start": { "line": 14, @@ -1193,8 +745,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 429, - "end": 459, + "start": 389, + "end": 419, "loc": { "start": { "line": 14, @@ -1207,8 +759,8 @@ }, "id": { "type": "Identifier", - "start": 429, - "end": 435, + "start": 389, + "end": 395, "loc": { "start": { "line": 14, @@ -1225,8 +777,8 @@ }, "init": { "type": "CallExpression", - "start": 438, - "end": 459, + "start": 398, + "end": 419, "loc": { "start": { "line": 14, @@ -1239,8 +791,8 @@ }, "callee": { "type": "MemberExpression", - "start": 438, - "end": 451, + "start": 398, + "end": 411, "loc": { "start": { "line": 14, @@ -1253,8 +805,8 @@ }, "object": { "type": "Identifier", - "start": 438, - "end": 444, + "start": 398, + "end": 404, "loc": { "start": { "line": 14, @@ -1270,8 +822,8 @@ }, "property": { "type": "Identifier", - "start": 445, - "end": 451, + "start": 405, + "end": 411, "loc": { "start": { "line": 14, @@ -1290,8 +842,8 @@ "arguments": [ { "type": "Identifier", - "start": 452, - "end": 458, + "start": 412, + "end": 418, "loc": { "start": { "line": 14, @@ -1315,8 +867,8 @@ { "type": "CommentLine", "value": " Create the REPL environment", - "start": 390, - "end": 420, + "start": 350, + "end": 380, "loc": { "start": { "line": 13, @@ -1332,8 +884,8 @@ }, { "type": "VariableDeclaration", - "start": 463, - "end": 489, + "start": 423, + "end": 449, "loc": { "start": { "line": 15, @@ -1347,8 +899,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 469, - "end": 488, + "start": 429, + "end": 448, "loc": { "start": { "line": 15, @@ -1361,8 +913,8 @@ }, "id": { "type": "Identifier", - "start": 469, - "end": 474, + "start": 429, + "end": 434, "loc": { "start": { "line": 15, @@ -1378,8 +930,8 @@ }, "init": { "type": "NewExpression", - "start": 477, - "end": 488, + "start": 437, + "end": 448, "loc": { "start": { "line": 15, @@ -1392,8 +944,8 @@ }, "callee": { "type": "Identifier", - "start": 481, - "end": 486, + "start": 441, + "end": 446, "loc": { "start": { "line": 15, @@ -1415,8 +967,8 @@ }, { "type": "VariableDeclaration", - "start": 492, - "end": 520, + "start": 452, + "end": 480, "loc": { "start": { "line": 16, @@ -1430,8 +982,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 498, - "end": 519, + "start": 458, + "end": 479, "loc": { "start": { "line": 16, @@ -1444,8 +996,8 @@ }, "id": { "type": "Identifier", - "start": 498, - "end": 504, + "start": 458, + "end": 464, "loc": { "start": { "line": 16, @@ -1461,8 +1013,8 @@ }, "init": { "type": "NewExpression", - "start": 507, - "end": 519, + "start": 467, + "end": 479, "loc": { "start": { "line": 16, @@ -1475,8 +1027,8 @@ }, "callee": { "type": "Identifier", - "start": 511, - "end": 517, + "start": 471, + "end": 477, "loc": { "start": { "line": 16, @@ -1498,8 +1050,8 @@ }, { "type": "VariableDeclaration", - "start": 524, - "end": 541, + "start": 484, + "end": 501, "loc": { "start": { "line": 18, @@ -1513,8 +1065,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 528, - "end": 540, + "start": 488, + "end": 500, "loc": { "start": { "line": 18, @@ -1527,8 +1079,8 @@ }, "id": { "type": "Identifier", - "start": 528, - "end": 535, + "start": 488, + "end": 495, "loc": { "start": { "line": 18, @@ -1544,8 +1096,8 @@ }, "init": { "type": "StringLiteral", - "start": 538, - "end": 540, + "start": 498, + "end": 500, "loc": { "start": { "line": 18, @@ -1568,8 +1120,8 @@ }, { "type": "VariableDeclaration", - "start": 544, - "end": 558, + "start": 504, + "end": 518, "loc": { "start": { "line": 19, @@ -1583,8 +1135,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 548, - "end": 557, + "start": 508, + "end": 517, "loc": { "start": { "line": 19, @@ -1597,8 +1149,8 @@ }, "id": { "type": "Identifier", - "start": 548, - "end": 553, + "start": 508, + "end": 513, "loc": { "start": { "line": 19, @@ -1614,8 +1166,8 @@ }, "init": { "type": "NumericLiteral", - "start": 556, - "end": 557, + "start": 516, + "end": 517, "loc": { "start": { "line": 19, @@ -1638,8 +1190,8 @@ }, { "type": "ExpressionStatement", - "start": 562, - "end": 583, + "start": 522, + "end": 543, "loc": { "start": { "line": 21, @@ -1652,8 +1204,8 @@ }, "expression": { "type": "CallExpression", - "start": 562, - "end": 582, + "start": 522, + "end": 542, "loc": { "start": { "line": 21, @@ -1666,8 +1218,8 @@ }, "callee": { "type": "MemberExpression", - "start": 562, - "end": 580, + "start": 522, + "end": 540, "loc": { "start": { "line": 21, @@ -1680,8 +1232,8 @@ }, "object": { "type": "Identifier", - "start": 562, - "end": 572, + "start": 522, + "end": 532, "loc": { "start": { "line": 21, @@ -1697,8 +1249,8 @@ }, "property": { "type": "Identifier", - "start": 573, - "end": 580, + "start": 533, + "end": 540, "loc": { "start": { "line": 21, @@ -1719,8 +1271,8 @@ }, { "type": "TryStatement", - "start": 587, - "end": 1709, + "start": 547, + "end": 1669, "loc": { "start": { "line": 23, @@ -1733,8 +1285,8 @@ }, "block": { "type": "BlockStatement", - "start": 591, - "end": 1643, + "start": 551, + "end": 1603, "loc": { "start": { "line": 23, @@ -1748,8 +1300,8 @@ "body": [ { "type": "VariableDeclaration", - "start": 597, - "end": 733, + "start": 557, + "end": 693, "loc": { "start": { "line": 24, @@ -1763,8 +1315,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 603, - "end": 732, + "start": 563, + "end": 692, "loc": { "start": { "line": 24, @@ -1777,8 +1329,8 @@ }, "id": { "type": "Identifier", - "start": 603, - "end": 605, + "start": 563, + "end": 565, "loc": { "start": { "line": 24, @@ -1794,8 +1346,8 @@ }, "init": { "type": "CallExpression", - "start": 608, - "end": 732, + "start": 568, + "end": 692, "loc": { "start": { "line": 24, @@ -1808,8 +1360,8 @@ }, "callee": { "type": "MemberExpression", - "start": 608, - "end": 632, + "start": 568, + "end": 592, "loc": { "start": { "line": 24, @@ -1822,8 +1374,8 @@ }, "object": { "type": "Identifier", - "start": 608, - "end": 616, + "start": 568, + "end": 576, "loc": { "start": { "line": 24, @@ -1839,8 +1391,8 @@ }, "property": { "type": "Identifier", - "start": 617, - "end": 632, + "start": 577, + "end": 592, "loc": { "start": { "line": 24, @@ -1859,8 +1411,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 633, - "end": 646, + "start": 593, + "end": 606, "loc": { "start": { "line": 24, @@ -1873,8 +1425,8 @@ }, "object": { "type": "Identifier", - "start": 633, - "end": 640, + "start": 593, + "end": 600, "loc": { "start": { "line": 24, @@ -1890,8 +1442,8 @@ }, "property": { "type": "Identifier", - "start": 641, - "end": 646, + "start": 601, + "end": 606, "loc": { "start": { "line": 24, @@ -1909,8 +1461,8 @@ }, { "type": "MemberExpression", - "start": 648, - "end": 662, + "start": 608, + "end": 622, "loc": { "start": { "line": 24, @@ -1923,8 +1475,8 @@ }, "object": { "type": "Identifier", - "start": 648, - "end": 655, + "start": 608, + "end": 615, "loc": { "start": { "line": 24, @@ -1940,8 +1492,8 @@ }, "property": { "type": "Identifier", - "start": 656, - "end": 662, + "start": 616, + "end": 622, "loc": { "start": { "line": 24, @@ -1959,8 +1511,8 @@ }, { "type": "ArrowFunctionExpression", - "start": 664, - "end": 731, + "start": 624, + "end": 691, "loc": { "start": { "line": 24, @@ -1978,8 +1530,8 @@ "params": [ { "type": "Identifier", - "start": 664, - "end": 668, + "start": 624, + "end": 628, "loc": { "start": { "line": 24, @@ -1996,8 +1548,8 @@ ], "body": { "type": "BlockStatement", - "start": 672, - "end": 731, + "start": 632, + "end": 691, "loc": { "start": { "line": 24, @@ -2011,8 +1563,8 @@ "body": [ { "type": "ReturnStatement", - "start": 680, - "end": 725, + "start": 640, + "end": 685, "loc": { "start": { "line": 25, @@ -2025,8 +1577,8 @@ }, "argument": { "type": "CallExpression", - "start": 687, - "end": 724, + "start": 647, + "end": 684, "loc": { "start": { "line": 25, @@ -2039,8 +1591,8 @@ }, "callee": { "type": "MemberExpression", - "start": 687, - "end": 710, + "start": 647, + "end": 670, "loc": { "start": { "line": 25, @@ -2053,8 +1605,8 @@ }, "object": { "type": "Identifier", - "start": 687, - "end": 697, + "start": 647, + "end": 657, "loc": { "start": { "line": 25, @@ -2070,8 +1622,8 @@ }, "property": { "type": "Identifier", - "start": 698, - "end": 710, + "start": 658, + "end": 670, "loc": { "start": { "line": 25, @@ -2090,8 +1642,8 @@ "arguments": [ { "type": "Identifier", - "start": 711, - "end": 715, + "start": 671, + "end": 675, "loc": { "start": { "line": 25, @@ -2107,8 +1659,8 @@ }, { "type": "Identifier", - "start": 717, - "end": 723, + "start": 677, + "end": 683, "loc": { "start": { "line": 25, @@ -2137,8 +1689,8 @@ }, { "type": "ExpressionStatement", - "start": 739, - "end": 780, + "start": 699, + "end": 740, "loc": { "start": { "line": 28, @@ -2151,8 +1703,8 @@ }, "expression": { "type": "CallExpression", - "start": 739, - "end": 779, + "start": 699, + "end": 739, "loc": { "start": { "line": 28, @@ -2165,8 +1717,8 @@ }, "callee": { "type": "MemberExpression", - "start": 739, - "end": 751, + "start": 699, + "end": 711, "loc": { "start": { "line": 28, @@ -2179,8 +1731,8 @@ }, "object": { "type": "Identifier", - "start": 739, - "end": 741, + "start": 699, + "end": 701, "loc": { "start": { "line": 28, @@ -2196,8 +1748,8 @@ }, "property": { "type": "Identifier", - "start": 742, - "end": 751, + "start": 702, + "end": 711, "loc": { "start": { "line": 28, @@ -2216,8 +1768,8 @@ "arguments": [ { "type": "CallExpression", - "start": 752, - "end": 778, + "start": 712, + "end": 738, "loc": { "start": { "line": 28, @@ -2230,8 +1782,8 @@ }, "callee": { "type": "MemberExpression", - "start": 752, - "end": 776, + "start": 712, + "end": 736, "loc": { "start": { "line": 28, @@ -2244,8 +1796,8 @@ }, "object": { "type": "Identifier", - "start": 752, - "end": 762, + "start": 712, + "end": 722, "loc": { "start": { "line": 28, @@ -2261,8 +1813,8 @@ }, "property": { "type": "Identifier", - "start": 763, - "end": 776, + "start": 723, + "end": 736, "loc": { "start": { "line": 28, @@ -2285,8 +1837,8 @@ }, { "type": "ExpressionStatement", - "start": 785, - "end": 797, + "start": 745, + "end": 757, "loc": { "start": { "line": 29, @@ -2299,8 +1851,8 @@ }, "expression": { "type": "CallExpression", - "start": 785, - "end": 796, + "start": 745, + "end": 756, "loc": { "start": { "line": 29, @@ -2313,8 +1865,8 @@ }, "callee": { "type": "MemberExpression", - "start": 785, - "end": 794, + "start": 745, + "end": 754, "loc": { "start": { "line": 29, @@ -2327,8 +1879,8 @@ }, "object": { "type": "Identifier", - "start": 785, - "end": 787, + "start": 745, + "end": 747, "loc": { "start": { "line": 29, @@ -2344,8 +1896,8 @@ }, "property": { "type": "Identifier", - "start": 788, - "end": 794, + "start": 748, + "end": 754, "loc": { "start": { "line": 29, @@ -2366,8 +1918,8 @@ }, { "type": "ExpressionStatement", - "start": 803, - "end": 1318, + "start": 763, + "end": 1278, "loc": { "start": { "line": 31, @@ -2380,8 +1932,8 @@ }, "expression": { "type": "CallExpression", - "start": 803, - "end": 1317, + "start": 763, + "end": 1277, "loc": { "start": { "line": 31, @@ -2394,8 +1946,8 @@ }, "callee": { "type": "MemberExpression", - "start": 803, - "end": 808, + "start": 763, + "end": 768, "loc": { "start": { "line": 31, @@ -2408,8 +1960,8 @@ }, "object": { "type": "Identifier", - "start": 803, - "end": 805, + "start": 763, + "end": 765, "loc": { "start": { "line": 31, @@ -2425,8 +1977,8 @@ }, "property": { "type": "Identifier", - "start": 806, - "end": 808, + "start": 766, + "end": 768, "loc": { "start": { "line": 31, @@ -2445,8 +1997,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 809, - "end": 815, + "start": 769, + "end": 775, "loc": { "start": { "line": 31, @@ -2465,8 +2017,8 @@ }, { "type": "ArrowFunctionExpression", - "start": 817, - "end": 1316, + "start": 777, + "end": 1276, "loc": { "start": { "line": 31, @@ -2484,8 +2036,8 @@ "params": [ { "type": "Identifier", - "start": 817, - "end": 821, + "start": 777, + "end": 781, "loc": { "start": { "line": 31, @@ -2502,8 +2054,8 @@ ], "body": { "type": "BlockStatement", - "start": 825, - "end": 1316, + "start": 785, + "end": 1276, "loc": { "start": { "line": 31, @@ -2517,8 +2069,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 833, - "end": 856, + "start": 793, + "end": 816, "loc": { "start": { "line": 32, @@ -2531,8 +2083,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 833, - "end": 855, + "start": 793, + "end": 815, "loc": { "start": { "line": 32, @@ -2546,8 +2098,8 @@ "operator": "+=", "left": { "type": "Identifier", - "start": 833, - "end": 840, + "start": 793, + "end": 800, "loc": { "start": { "line": 32, @@ -2563,8 +2115,8 @@ }, "right": { "type": "BinaryExpression", - "start": 844, - "end": 855, + "start": 804, + "end": 815, "loc": { "start": { "line": 32, @@ -2577,8 +2129,8 @@ }, "left": { "type": "Identifier", - "start": 844, - "end": 848, + "start": 804, + "end": 808, "loc": { "start": { "line": 32, @@ -2595,8 +2147,8 @@ "operator": "+", "right": { "type": "StringLiteral", - "start": 851, - "end": 855, + "start": 811, + "end": 815, "loc": { "start": { "line": 32, @@ -2619,8 +2171,8 @@ { "type": "CommentLine", "value": " Count the number of LPS (+) or RPS (-)", - "start": 864, - "end": 905, + "start": 824, + "end": 865, "loc": { "start": { "line": 34, @@ -2636,8 +2188,8 @@ }, { "type": "ExpressionStatement", - "start": 912, - "end": 949, + "start": 872, + "end": 909, "loc": { "start": { "line": 35, @@ -2650,8 +2202,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 912, - "end": 948, + "start": 872, + "end": 908, "loc": { "start": { "line": 35, @@ -2665,8 +2217,8 @@ "operator": "=", "left": { "type": "Identifier", - "start": 912, - "end": 917, + "start": 872, + "end": 877, "loc": { "start": { "line": 35, @@ -2683,8 +2235,8 @@ }, "right": { "type": "CallExpression", - "start": 920, - "end": 948, + "start": 880, + "end": 908, "loc": { "start": { "line": 35, @@ -2697,8 +2249,8 @@ }, "callee": { "type": "MemberExpression", - "start": 920, - "end": 939, + "start": 880, + "end": 899, "loc": { "start": { "line": 35, @@ -2711,8 +2263,8 @@ }, "object": { "type": "Identifier", - "start": 920, - "end": 925, + "start": 880, + "end": 885, "loc": { "start": { "line": 35, @@ -2728,8 +2280,8 @@ }, "property": { "type": "Identifier", - "start": 926, - "end": 939, + "start": 886, + "end": 899, "loc": { "start": { "line": 35, @@ -2748,8 +2300,8 @@ "arguments": [ { "type": "Identifier", - "start": 940, - "end": 947, + "start": 900, + "end": 907, "loc": { "start": { "line": 35, @@ -2771,8 +2323,8 @@ { "type": "CommentLine", "value": " Count the number of LPS (+) or RPS (-)", - "start": 864, - "end": 905, + "start": 824, + "end": 865, "loc": { "start": { "line": 34, @@ -2788,8 +2340,8 @@ }, { "type": "IfStatement", - "start": 957, - "end": 1221, + "start": 917, + "end": 1181, "loc": { "start": { "line": 37, @@ -2802,8 +2354,8 @@ }, "test": { "type": "BinaryExpression", - "start": 961, - "end": 971, + "start": 921, + "end": 931, "loc": { "start": { "line": 37, @@ -2816,8 +2368,8 @@ }, "left": { "type": "Identifier", - "start": 961, - "end": 966, + "start": 921, + "end": 926, "loc": { "start": { "line": 37, @@ -2834,8 +2386,8 @@ "operator": "<=", "right": { "type": "NumericLiteral", - "start": 970, - "end": 971, + "start": 930, + "end": 931, "loc": { "start": { "line": 37, @@ -2855,8 +2407,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 973, - "end": 1221, + "start": 933, + "end": 1181, "loc": { "start": { "line": 37, @@ -2870,8 +2422,8 @@ "body": [ { "type": "TryStatement", - "start": 983, - "end": 1213, + "start": 943, + "end": 1173, "loc": { "start": { "line": 38, @@ -2884,8 +2436,8 @@ }, "block": { "type": "BlockStatement", - "start": 987, - "end": 1051, + "start": 947, + "end": 1011, "loc": { "start": { "line": 38, @@ -2899,8 +2451,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 999, - "end": 1041, + "start": 959, + "end": 1001, "loc": { "start": { "line": 39, @@ -2913,8 +2465,8 @@ }, "expression": { "type": "CallExpression", - "start": 999, - "end": 1040, + "start": 959, + "end": 1000, "loc": { "start": { "line": 39, @@ -2927,8 +2479,8 @@ }, "callee": { "type": "MemberExpression", - "start": 999, - "end": 1009, + "start": 959, + "end": 969, "loc": { "start": { "line": 39, @@ -2941,8 +2493,8 @@ }, "object": { "type": "Identifier", - "start": 999, - "end": 1004, + "start": 959, + "end": 964, "loc": { "start": { "line": 39, @@ -2958,8 +2510,8 @@ }, "property": { "type": "Identifier", - "start": 1005, - "end": 1009, + "start": 965, + "end": 969, "loc": { "start": { "line": 39, @@ -2978,8 +2530,8 @@ "arguments": [ { "type": "CallExpression", - "start": 1010, - "end": 1031, + "start": 970, + "end": 991, "loc": { "start": { "line": 39, @@ -2992,8 +2544,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1010, - "end": 1022, + "start": 970, + "end": 982, "loc": { "start": { "line": 39, @@ -3006,8 +2558,8 @@ }, "object": { "type": "Identifier", - "start": 1010, - "end": 1016, + "start": 970, + "end": 976, "loc": { "start": { "line": 39, @@ -3023,8 +2575,8 @@ }, "property": { "type": "Identifier", - "start": 1017, - "end": 1022, + "start": 977, + "end": 982, "loc": { "start": { "line": 39, @@ -3043,8 +2595,8 @@ "arguments": [ { "type": "Identifier", - "start": 1023, - "end": 1030, + "start": 983, + "end": 990, "loc": { "start": { "line": 39, @@ -3062,8 +2614,8 @@ }, { "type": "Identifier", - "start": 1033, - "end": 1039, + "start": 993, + "end": 999, "loc": { "start": { "line": 39, @@ -3085,8 +2637,8 @@ }, "handler": { "type": "CatchClause", - "start": 1052, - "end": 1148, + "start": 1012, + "end": 1108, "loc": { "start": { "line": 40, @@ -3099,8 +2651,8 @@ }, "param": { "type": "Identifier", - "start": 1059, - "end": 1062, + "start": 1019, + "end": 1022, "loc": { "start": { "line": 40, @@ -3116,8 +2668,8 @@ }, "body": { "type": "BlockStatement", - "start": 1064, - "end": 1148, + "start": 1024, + "end": 1108, "loc": { "start": { "line": 40, @@ -3131,8 +2683,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 1076, - "end": 1138, + "start": 1036, + "end": 1098, "loc": { "start": { "line": 41, @@ -3145,8 +2697,8 @@ }, "expression": { "type": "CallExpression", - "start": 1076, - "end": 1137, + "start": 1036, + "end": 1097, "loc": { "start": { "line": 41, @@ -3159,8 +2711,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1076, - "end": 1087, + "start": 1036, + "end": 1047, "loc": { "start": { "line": 41, @@ -3173,8 +2725,8 @@ }, "object": { "type": "Identifier", - "start": 1076, - "end": 1083, + "start": 1036, + "end": 1043, "loc": { "start": { "line": 41, @@ -3190,8 +2742,8 @@ }, "property": { "type": "Identifier", - "start": 1084, - "end": 1087, + "start": 1044, + "end": 1047, "loc": { "start": { "line": 41, @@ -3210,8 +2762,8 @@ "arguments": [ { "type": "TemplateLiteral", - "start": 1088, - "end": 1136, + "start": 1048, + "end": 1096, "loc": { "start": { "line": 41, @@ -3225,8 +2777,8 @@ "expressions": [ { "type": "MemberExpression", - "start": 1091, - "end": 1101, + "start": 1051, + "end": 1061, "loc": { "start": { "line": 41, @@ -3239,8 +2791,8 @@ }, "object": { "type": "Identifier", - "start": 1091, - "end": 1097, + "start": 1051, + "end": 1057, "loc": { "start": { "line": 41, @@ -3256,8 +2808,8 @@ }, "property": { "type": "Identifier", - "start": 1098, - "end": 1101, + "start": 1058, + "end": 1061, "loc": { "start": { "line": 41, @@ -3275,8 +2827,8 @@ }, { "type": "Identifier", - "start": 1113, - "end": 1116, + "start": 1073, + "end": 1076, "loc": { "start": { "line": 41, @@ -3292,8 +2844,8 @@ }, { "type": "MemberExpression", - "start": 1120, - "end": 1134, + "start": 1080, + "end": 1094, "loc": { "start": { "line": 41, @@ -3306,8 +2858,8 @@ }, "object": { "type": "Identifier", - "start": 1120, - "end": 1126, + "start": 1080, + "end": 1086, "loc": { "start": { "line": 41, @@ -3323,8 +2875,8 @@ }, "property": { "type": "Identifier", - "start": 1127, - "end": 1134, + "start": 1087, + "end": 1094, "loc": { "start": { "line": 41, @@ -3344,8 +2896,8 @@ "quasis": [ { "type": "TemplateElement", - "start": 1089, - "end": 1089, + "start": 1049, + "end": 1049, "loc": { "start": { "line": 41, @@ -3364,8 +2916,8 @@ }, { "type": "TemplateElement", - "start": 1102, - "end": 1111, + "start": 1062, + "end": 1071, "loc": { "start": { "line": 41, @@ -3384,8 +2936,8 @@ }, { "type": "TemplateElement", - "start": 1117, - "end": 1118, + "start": 1077, + "end": 1078, "loc": { "start": { "line": 41, @@ -3404,8 +2956,8 @@ }, { "type": "TemplateElement", - "start": 1135, - "end": 1135, + "start": 1095, + "end": 1095, "loc": { "start": { "line": 41, @@ -3434,8 +2986,8 @@ "guardedHandlers": [], "finalizer": { "type": "BlockStatement", - "start": 1157, - "end": 1213, + "start": 1117, + "end": 1173, "loc": { "start": { "line": 42, @@ -3449,8 +3001,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 1169, - "end": 1182, + "start": 1129, + "end": 1142, "loc": { "start": { "line": 43, @@ -3463,8 +3015,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 1169, - "end": 1181, + "start": 1129, + "end": 1141, "loc": { "start": { "line": 43, @@ -3478,8 +3030,8 @@ "operator": "=", "left": { "type": "Identifier", - "start": 1169, - "end": 1176, + "start": 1129, + "end": 1136, "loc": { "start": { "line": 43, @@ -3495,8 +3047,8 @@ }, "right": { "type": "StringLiteral", - "start": 1179, - "end": 1181, + "start": 1139, + "end": 1141, "loc": { "start": { "line": 43, @@ -3517,8 +3069,8 @@ }, { "type": "ExpressionStatement", - "start": 1193, - "end": 1203, + "start": 1153, + "end": 1163, "loc": { "start": { "line": 44, @@ -3531,8 +3083,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 1193, - "end": 1202, + "start": 1153, + "end": 1162, "loc": { "start": { "line": 44, @@ -3546,8 +3098,8 @@ "operator": "=", "left": { "type": "Identifier", - "start": 1193, - "end": 1198, + "start": 1153, + "end": 1158, "loc": { "start": { "line": 44, @@ -3563,8 +3115,8 @@ }, "right": { "type": "NumericLiteral", - "start": 1201, - "end": 1202, + "start": 1161, + "end": 1162, "loc": { "start": { "line": 44, @@ -3594,8 +3146,8 @@ }, { "type": "ExpressionStatement", - "start": 1229, - "end": 1291, + "start": 1189, + "end": 1251, "loc": { "start": { "line": 48, @@ -3608,8 +3160,8 @@ }, "expression": { "type": "CallExpression", - "start": 1229, - "end": 1290, + "start": 1189, + "end": 1250, "loc": { "start": { "line": 48, @@ -3622,8 +3174,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1229, - "end": 1241, + "start": 1189, + "end": 1201, "loc": { "start": { "line": 48, @@ -3636,8 +3188,8 @@ }, "object": { "type": "Identifier", - "start": 1229, - "end": 1231, + "start": 1189, + "end": 1191, "loc": { "start": { "line": 48, @@ -3653,8 +3205,8 @@ }, "property": { "type": "Identifier", - "start": 1232, - "end": 1241, + "start": 1192, + "end": 1201, "loc": { "start": { "line": 48, @@ -3673,8 +3225,8 @@ "arguments": [ { "type": "BinaryExpression", - "start": 1242, - "end": 1289, + "start": 1202, + "end": 1249, "loc": { "start": { "line": 48, @@ -3687,8 +3239,8 @@ }, "left": { "type": "CallExpression", - "start": 1242, - "end": 1268, + "start": 1202, + "end": 1228, "loc": { "start": { "line": 48, @@ -3701,8 +3253,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1242, - "end": 1266, + "start": 1202, + "end": 1226, "loc": { "start": { "line": 48, @@ -3715,8 +3267,8 @@ }, "object": { "type": "Identifier", - "start": 1242, - "end": 1252, + "start": 1202, + "end": 1212, "loc": { "start": { "line": 48, @@ -3732,8 +3284,8 @@ }, "property": { "type": "Identifier", - "start": 1253, - "end": 1266, + "start": 1213, + "end": 1226, "loc": { "start": { "line": 48, @@ -3754,8 +3306,8 @@ "operator": "+", "right": { "type": "CallExpression", - "start": 1271, - "end": 1289, + "start": 1231, + "end": 1249, "loc": { "start": { "line": 48, @@ -3768,8 +3320,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1271, - "end": 1282, + "start": 1231, + "end": 1242, "loc": { "start": { "line": 48, @@ -3782,8 +3334,8 @@ }, "object": { "type": "StringLiteral", - "start": 1271, - "end": 1275, + "start": 1231, + "end": 1235, "loc": { "start": { "line": 48, @@ -3802,8 +3354,8 @@ }, "property": { "type": "Identifier", - "start": 1276, - "end": 1282, + "start": 1236, + "end": 1242, "loc": { "start": { "line": 48, @@ -3822,8 +3374,8 @@ "arguments": [ { "type": "Identifier", - "start": 1283, - "end": 1288, + "start": 1243, + "end": 1248, "loc": { "start": { "line": 48, @@ -3845,8 +3397,8 @@ }, { "type": "ExpressionStatement", - "start": 1298, - "end": 1310, + "start": 1258, + "end": 1270, "loc": { "start": { "line": 49, @@ -3859,8 +3411,8 @@ }, "expression": { "type": "CallExpression", - "start": 1298, - "end": 1309, + "start": 1258, + "end": 1269, "loc": { "start": { "line": 49, @@ -3873,8 +3425,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1298, - "end": 1307, + "start": 1258, + "end": 1267, "loc": { "start": { "line": 49, @@ -3887,8 +3439,8 @@ }, "object": { "type": "Identifier", - "start": 1298, - "end": 1300, + "start": 1258, + "end": 1260, "loc": { "start": { "line": 49, @@ -3904,8 +3456,8 @@ }, "property": { "type": "Identifier", - "start": 1301, - "end": 1307, + "start": 1261, + "end": 1267, "loc": { "start": { "line": 49, @@ -3933,8 +3485,8 @@ }, { "type": "ExpressionStatement", - "start": 1324, - "end": 1359, + "start": 1284, + "end": 1319, "loc": { "start": { "line": 52, @@ -3947,8 +3499,8 @@ }, "expression": { "type": "CallExpression", - "start": 1324, - "end": 1358, + "start": 1284, + "end": 1318, "loc": { "start": { "line": 52, @@ -3961,8 +3513,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1324, - "end": 1329, + "start": 1284, + "end": 1289, "loc": { "start": { "line": 52, @@ -3975,8 +3527,8 @@ }, "object": { "type": "Identifier", - "start": 1324, - "end": 1326, + "start": 1284, + "end": 1286, "loc": { "start": { "line": 52, @@ -3992,8 +3544,8 @@ }, "property": { "type": "Identifier", - "start": 1327, - "end": 1329, + "start": 1287, + "end": 1289, "loc": { "start": { "line": 52, @@ -4012,8 +3564,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 1330, - "end": 1337, + "start": 1290, + "end": 1297, "loc": { "start": { "line": 52, @@ -4032,8 +3584,8 @@ }, { "type": "MemberExpression", - "start": 1339, - "end": 1357, + "start": 1299, + "end": 1317, "loc": { "start": { "line": 52, @@ -4046,8 +3598,8 @@ }, "object": { "type": "Identifier", - "start": 1339, - "end": 1349, + "start": 1299, + "end": 1309, "loc": { "start": { "line": 52, @@ -4063,8 +3615,8 @@ }, "property": { "type": "Identifier", - "start": 1350, - "end": 1357, + "start": 1310, + "end": 1317, "loc": { "start": { "line": 52, @@ -4085,8 +3637,8 @@ }, { "type": "ExpressionStatement", - "start": 1365, - "end": 1639, + "start": 1325, + "end": 1599, "loc": { "start": { "line": 54, @@ -4099,8 +3651,8 @@ }, "expression": { "type": "CallExpression", - "start": 1365, - "end": 1638, + "start": 1325, + "end": 1598, "loc": { "start": { "line": 54, @@ -4113,8 +3665,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1365, - "end": 1370, + "start": 1325, + "end": 1330, "loc": { "start": { "line": 54, @@ -4127,8 +3679,8 @@ }, "object": { "type": "Identifier", - "start": 1365, - "end": 1367, + "start": 1325, + "end": 1327, "loc": { "start": { "line": 54, @@ -4144,8 +3696,8 @@ }, "property": { "type": "Identifier", - "start": 1368, - "end": 1370, + "start": 1328, + "end": 1330, "loc": { "start": { "line": 54, @@ -4164,8 +3716,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 1371, - "end": 1379, + "start": 1331, + "end": 1339, "loc": { "start": { "line": 54, @@ -4184,8 +3736,8 @@ }, { "type": "ArrowFunctionExpression", - "start": 1381, - "end": 1637, + "start": 1341, + "end": 1597, "loc": { "start": { "line": 54, @@ -4203,8 +3755,8 @@ "params": [], "body": { "type": "BlockStatement", - "start": 1387, - "end": 1637, + "start": 1347, + "end": 1597, "loc": { "start": { "line": 54, @@ -4218,8 +3770,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 1395, - "end": 1488, + "start": 1355, + "end": 1448, "loc": { "start": { "line": 55, @@ -4232,8 +3784,8 @@ }, "expression": { "type": "CallExpression", - "start": 1395, - "end": 1487, + "start": 1355, + "end": 1447, "loc": { "start": { "line": 55, @@ -4246,8 +3798,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1395, - "end": 1406, + "start": 1355, + "end": 1366, "loc": { "start": { "line": 55, @@ -4260,8 +3812,8 @@ }, "object": { "type": "Identifier", - "start": 1395, - "end": 1402, + "start": 1355, + "end": 1362, "loc": { "start": { "line": 55, @@ -4277,8 +3829,8 @@ }, "property": { "type": "Identifier", - "start": 1403, - "end": 1406, + "start": 1363, + "end": 1366, "loc": { "start": { "line": 55, @@ -4297,8 +3849,8 @@ "arguments": [ { "type": "TemplateLiteral", - "start": 1416, - "end": 1479, + "start": 1376, + "end": 1439, "loc": { "start": { "line": 56, @@ -4312,8 +3864,8 @@ "expressions": [ { "type": "MemberExpression", - "start": 1421, - "end": 1433, + "start": 1381, + "end": 1393, "loc": { "start": { "line": 56, @@ -4326,8 +3878,8 @@ }, "object": { "type": "Identifier", - "start": 1421, - "end": 1427, + "start": 1381, + "end": 1387, "loc": { "start": { "line": 56, @@ -4343,8 +3895,8 @@ }, "property": { "type": "Identifier", - "start": 1428, - "end": 1433, + "start": 1388, + "end": 1393, "loc": { "start": { "line": 56, @@ -4362,8 +3914,8 @@ }, { "type": "MemberExpression", - "start": 1463, - "end": 1477, + "start": 1423, + "end": 1437, "loc": { "start": { "line": 56, @@ -4376,8 +3928,8 @@ }, "object": { "type": "Identifier", - "start": 1463, - "end": 1469, + "start": 1423, + "end": 1429, "loc": { "start": { "line": 56, @@ -4393,8 +3945,8 @@ }, "property": { "type": "Identifier", - "start": 1470, - "end": 1477, + "start": 1430, + "end": 1437, "loc": { "start": { "line": 56, @@ -4414,8 +3966,8 @@ "quasis": [ { "type": "TemplateElement", - "start": 1417, - "end": 1419, + "start": 1377, + "end": 1379, "loc": { "start": { "line": 56, @@ -4434,8 +3986,8 @@ }, { "type": "TemplateElement", - "start": 1434, - "end": 1461, + "start": 1394, + "end": 1421, "loc": { "start": { "line": 56, @@ -4454,8 +4006,8 @@ }, { "type": "TemplateElement", - "start": 1478, - "end": 1478, + "start": 1438, + "end": 1438, "loc": { "start": { "line": 56, @@ -4479,8 +4031,8 @@ }, { "type": "ExpressionStatement", - "start": 1496, - "end": 1509, + "start": 1456, + "end": 1469, "loc": { "start": { "line": 59, @@ -4493,8 +4045,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 1496, - "end": 1508, + "start": 1456, + "end": 1468, "loc": { "start": { "line": 59, @@ -4508,8 +4060,8 @@ "operator": "=", "left": { "type": "Identifier", - "start": 1496, - "end": 1503, + "start": 1456, + "end": 1463, "loc": { "start": { "line": 59, @@ -4525,8 +4077,8 @@ }, "right": { "type": "StringLiteral", - "start": 1506, - "end": 1508, + "start": 1466, + "end": 1468, "loc": { "start": { "line": 59, @@ -4547,8 +4099,8 @@ }, { "type": "ExpressionStatement", - "start": 1516, - "end": 1526, + "start": 1476, + "end": 1486, "loc": { "start": { "line": 60, @@ -4561,8 +4113,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 1516, - "end": 1525, + "start": 1476, + "end": 1485, "loc": { "start": { "line": 60, @@ -4576,8 +4128,8 @@ "operator": "=", "left": { "type": "Identifier", - "start": 1516, - "end": 1521, + "start": 1476, + "end": 1481, "loc": { "start": { "line": 60, @@ -4593,8 +4145,8 @@ }, "right": { "type": "NumericLiteral", - "start": 1524, - "end": 1525, + "start": 1484, + "end": 1485, "loc": { "start": { "line": 60, @@ -4615,8 +4167,8 @@ }, { "type": "ExpressionStatement", - "start": 1534, - "end": 1563, + "start": 1494, + "end": 1523, "loc": { "start": { "line": 62, @@ -4629,8 +4181,8 @@ }, "expression": { "type": "CallExpression", - "start": 1534, - "end": 1562, + "start": 1494, + "end": 1522, "loc": { "start": { "line": 62, @@ -4643,8 +4195,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1534, - "end": 1546, + "start": 1494, + "end": 1506, "loc": { "start": { "line": 62, @@ -4657,8 +4209,8 @@ }, "object": { "type": "Identifier", - "start": 1534, - "end": 1536, + "start": 1494, + "end": 1496, "loc": { "start": { "line": 62, @@ -4674,8 +4226,8 @@ }, "property": { "type": "Identifier", - "start": 1537, - "end": 1546, + "start": 1497, + "end": 1506, "loc": { "start": { "line": 62, @@ -4694,8 +4246,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 1547, - "end": 1561, + "start": 1507, + "end": 1521, "loc": { "start": { "line": 62, @@ -4708,8 +4260,8 @@ }, "object": { "type": "Identifier", - "start": 1547, - "end": 1554, + "start": 1507, + "end": 1514, "loc": { "start": { "line": 62, @@ -4725,8 +4277,8 @@ }, "property": { "type": "Identifier", - "start": 1555, - "end": 1561, + "start": 1515, + "end": 1521, "loc": { "start": { "line": 62, @@ -4747,8 +4299,8 @@ }, { "type": "ExpressionStatement", - "start": 1571, - "end": 1612, + "start": 1531, + "end": 1572, "loc": { "start": { "line": 64, @@ -4761,8 +4313,8 @@ }, "expression": { "type": "CallExpression", - "start": 1571, - "end": 1611, + "start": 1531, + "end": 1571, "loc": { "start": { "line": 64, @@ -4775,8 +4327,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1571, - "end": 1583, + "start": 1531, + "end": 1543, "loc": { "start": { "line": 64, @@ -4789,8 +4341,8 @@ }, "object": { "type": "Identifier", - "start": 1571, - "end": 1573, + "start": 1531, + "end": 1533, "loc": { "start": { "line": 64, @@ -4806,8 +4358,8 @@ }, "property": { "type": "Identifier", - "start": 1574, - "end": 1583, + "start": 1534, + "end": 1543, "loc": { "start": { "line": 64, @@ -4826,8 +4378,8 @@ "arguments": [ { "type": "CallExpression", - "start": 1584, - "end": 1610, + "start": 1544, + "end": 1570, "loc": { "start": { "line": 64, @@ -4840,8 +4392,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1584, - "end": 1608, + "start": 1544, + "end": 1568, "loc": { "start": { "line": 64, @@ -4854,8 +4406,8 @@ }, "object": { "type": "Identifier", - "start": 1584, - "end": 1594, + "start": 1544, + "end": 1554, "loc": { "start": { "line": 64, @@ -4871,8 +4423,8 @@ }, "property": { "type": "Identifier", - "start": 1595, - "end": 1608, + "start": 1555, + "end": 1568, "loc": { "start": { "line": 64, @@ -4895,8 +4447,8 @@ }, { "type": "ExpressionStatement", - "start": 1619, - "end": 1631, + "start": 1579, + "end": 1591, "loc": { "start": { "line": 65, @@ -4909,8 +4461,8 @@ }, "expression": { "type": "CallExpression", - "start": 1619, - "end": 1630, + "start": 1579, + "end": 1590, "loc": { "start": { "line": 65, @@ -4923,8 +4475,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1619, - "end": 1628, + "start": 1579, + "end": 1588, "loc": { "start": { "line": 65, @@ -4937,8 +4489,8 @@ }, "object": { "type": "Identifier", - "start": 1619, - "end": 1621, + "start": 1579, + "end": 1581, "loc": { "start": { "line": 65, @@ -4954,8 +4506,8 @@ }, "property": { "type": "Identifier", - "start": 1622, - "end": 1628, + "start": 1582, + "end": 1588, "loc": { "start": { "line": 65, @@ -4986,8 +4538,8 @@ }, "handler": { "type": "CatchClause", - "start": 1644, - "end": 1709, + "start": 1604, + "end": 1669, "loc": { "start": { "line": 67, @@ -5000,8 +4552,8 @@ }, "param": { "type": "Identifier", - "start": 1651, - "end": 1654, + "start": 1611, + "end": 1614, "loc": { "start": { "line": 67, @@ -5017,8 +4569,8 @@ }, "body": { "type": "BlockStatement", - "start": 1656, - "end": 1709, + "start": 1616, + "end": 1669, "loc": { "start": { "line": 67, @@ -5032,8 +4584,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 1662, - "end": 1679, + "start": 1622, + "end": 1639, "loc": { "start": { "line": 68, @@ -5046,8 +4598,8 @@ }, "expression": { "type": "CallExpression", - "start": 1662, - "end": 1678, + "start": 1622, + "end": 1638, "loc": { "start": { "line": 68, @@ -5060,8 +4612,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1662, - "end": 1673, + "start": 1622, + "end": 1633, "loc": { "start": { "line": 68, @@ -5074,8 +4626,8 @@ }, "object": { "type": "Identifier", - "start": 1662, - "end": 1669, + "start": 1622, + "end": 1629, "loc": { "start": { "line": 68, @@ -5091,8 +4643,8 @@ }, "property": { "type": "Identifier", - "start": 1670, - "end": 1673, + "start": 1630, + "end": 1633, "loc": { "start": { "line": 68, @@ -5111,8 +4663,8 @@ "arguments": [ { "type": "Identifier", - "start": 1674, - "end": 1677, + "start": 1634, + "end": 1637, "loc": { "start": { "line": 68, @@ -5131,8 +4683,8 @@ }, { "type": "ExpressionStatement", - "start": 1684, - "end": 1705, + "start": 1644, + "end": 1665, "loc": { "start": { "line": 69, @@ -5145,8 +4697,8 @@ }, "expression": { "type": "CallExpression", - "start": 1684, - "end": 1704, + "start": 1644, + "end": 1664, "loc": { "start": { "line": 69, @@ -5159,8 +4711,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1684, - "end": 1702, + "start": 1644, + "end": 1662, "loc": { "start": { "line": 69, @@ -5173,8 +4725,8 @@ }, "object": { "type": "Identifier", - "start": 1684, - "end": 1694, + "start": 1644, + "end": 1654, "loc": { "start": { "line": 69, @@ -5190,8 +4742,8 @@ }, "property": { "type": "Identifier", - "start": 1695, - "end": 1702, + "start": 1655, + "end": 1662, "loc": { "start": { "line": 69, @@ -5223,625 +4775,4288 @@ } } ], - "kind": "const" + "kind": "const", + "name": "_", + "leadingComments": [], + "trailingComments": [] }, { - "type": "ExpressionStatement", - "start": 1714, - "end": 1742, + "type": "ExportNamedDeclaration", + "start": 1674, + "end": 1690, "loc": { "start": { "line": 73, "column": 0 }, "end": { - "line": 75, - "column": 2 + "line": 73, + "column": 16 } }, - "expression": { - "type": "AssignmentExpression", - "start": 1714, - "end": 1741, - "loc": { - "start": { - "line": 73, - "column": 0 - }, - "end": { - "line": 75, - "column": 1 - } - }, - "operator": "=", - "left": { - "type": "MemberExpression", - "start": 1714, - "end": 1728, + "declaration": null, + "specifiers": [ + { + "type": "ExportSpecifier", + "start": 1683, + "end": 1687, "loc": { "start": { "line": 73, - "column": 0 + "column": 9 }, "end": { "line": 73, - "column": 14 + "column": 13 } }, - "object": { + "local": { "type": "Identifier", - "start": 1714, - "end": 1720, + "start": 1683, + "end": 1687, "loc": { "start": { "line": 73, - "column": 0 + "column": 9 }, "end": { "line": 73, - "column": 6 + "column": 13 }, - "identifierName": "module" + "identifierName": "repl" }, - "name": "module" + "name": "repl" }, - "property": { + "exported": { "type": "Identifier", - "start": 1721, - "end": 1728, + "start": 1683, + "end": 1687, "loc": { "start": { "line": 73, - "column": 7 + "column": 9 }, "end": { "line": 73, - "column": 14 + "column": 13 }, - "identifierName": "exports" + "identifierName": "repl" }, - "name": "exports" + "name": "repl" + } + } + ], + "source": null + }, + { + "type": "ExportNamedDeclaration", + "start": 1674, + "end": 1690, + "loc": { + "start": { + "line": 73, + "column": 0 + }, + "end": { + "line": 73, + "column": 16 + } + }, + "declaration": { + "type": "VariableDeclaration", + "start": 327, + "end": 1672, + "loc": { + "start": { + "line": 12, + "column": 0 }, - "computed": false + "end": { + "line": 71, + "column": 2 + } }, - "right": { - "type": "ObjectExpression", - "start": 1731, - "end": 1741, - "loc": { - "start": { - "line": 73, - "column": 17 + "declarations": [ + { + "type": "VariableDeclarator", + "start": 333, + "end": 1671, + "loc": { + "start": { + "line": 12, + "column": 6 + }, + "end": { + "line": 71, + "column": 1 + } }, - "end": { - "line": 75, - "column": 1 - } - }, - "properties": [ - { - "type": "ObjectProperty", - "start": 1735, - "end": 1739, + "id": { + "type": "Identifier", + "start": 333, + "end": 337, "loc": { "start": { - "line": 74, - "column": 2 + "line": 12, + "column": 6 }, "end": { - "line": 74, - "column": 6 + "line": 12, + "column": 10 + }, + "identifierName": "repl" + }, + "name": "repl" + }, + "init": { + "type": "ArrowFunctionExpression", + "start": 340, + "end": 1671, + "loc": { + "start": { + "line": 12, + "column": 13 + }, + "end": { + "line": 71, + "column": 1 } }, - "method": false, - "shorthand": true, - "computed": false, - "key": { + "id": { "type": "Identifier", - "start": 1735, - "end": 1739, + "start": 333, + "end": 337, "loc": { "start": { - "line": 74, - "column": 2 + "line": 12, + "column": 6 }, "end": { - "line": 74, - "column": 6 + "line": 12, + "column": 10 }, "identifierName": "repl" }, "name": "repl" }, - "value": { - "type": "Identifier", - "start": 1735, - "end": 1739, + "generator": false, + "expression": false, + "async": false, + "params": [], + "body": { + "type": "BlockStatement", + "start": 346, + "end": 1671, "loc": { "start": { - "line": 74, - "column": 2 + "line": 12, + "column": 19 }, "end": { - "line": 74, - "column": 6 - }, - "identifierName": "repl" + "line": 71, + "column": 1 + } }, - "name": "repl" - }, - "extra": { - "shorthand": true - } - } - ] - } - } - } - ], - "directives": [] - }, - "comments": [ - { - "type": "CommentLine", - "value": " Create the REPL environment", - "start": 390, - "end": 420, - "loc": { - "start": { - "line": 13, - "column": 2 - }, - "end": { - "line": 13, - "column": 32 - } - } - }, - { - "type": "CommentLine", - "value": " Count the number of LPS (+) or RPS (-)", - "start": 864, - "end": 905, - "loc": { - "start": { - "line": 34, - "column": 6 - }, - "end": { - "line": 34, - "column": 47 - } - } - } - ], - "tokens": [ - { - "type": { - "label": "const", - "keyword": "const", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "const", - "start": 0, - "end": 5, - "loc": { - "start": { - "line": 1, - "column": 0 - }, - "end": { - "line": 1, - "column": 5 - } - } - }, - { - "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "process", - "start": 6, - "end": 13, - "loc": { - "start": { - "line": 1, - "column": 6 - }, - "end": { - "line": 1, - "column": 13 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 14, - "end": 15, - "loc": { - "start": { - "line": 1, - "column": 14 - }, - "end": { - "line": 1, - "column": 15 - } - } - }, - { - "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "require", - "start": 16, - "end": 23, - "loc": { - "start": { - "line": 1, - "column": 16 - }, - "end": { - "line": 1, - "column": 23 - } - } - }, - { - "type": { - "label": "(", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 23, - "end": 24, - "loc": { - "start": { - "line": 1, - "column": 23 - }, - "end": { - "line": 1, - "column": 24 - } - } - }, - { - "type": { - "label": "string", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "process", - "start": 24, - "end": 33, - "loc": { - "start": { - "line": 1, - "column": 24 - }, - "end": { - "line": 1, - "column": 33 - } - } - }, - { - "type": { - "label": ")", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 33, - "end": 34, - "loc": { - "start": { - "line": 1, - "column": 33 - }, - "end": { - "line": 1, - "column": 34 - } - } - }, - { - "type": { - "label": ";", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "start": 34, - "end": 35, - "loc": { - "start": { - "line": 1, - "column": 34 - }, - "end": { - "line": 1, - "column": 35 - } - } - }, - { - "type": { - "label": "const", - "keyword": "const", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "const", - "start": 36, - "end": 41, - "loc": { - "start": { - "line": 2, - "column": 0 - }, - "end": { - "line": 2, - "column": 5 - } - } - }, - { - "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "readline", - "start": 42, - "end": 50, - "loc": { - "start": { - "line": 2, - "column": 6 - }, - "end": { - "line": 2, - "column": 14 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 51, - "end": 52, - "loc": { - "start": { - "line": 2, - "column": 15 - }, - "end": { - "line": 2, - "column": 16 - } - } - }, - { - "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "require", - "start": 53, - "end": 60, - "loc": { - "start": { - "line": 2, - "column": 17 - }, - "end": { - "line": 2, - "column": 24 - } - } - }, - { - "type": { - "label": "(", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 60, - "end": 61, - "loc": { - "start": { - "line": 2, - "column": 24 - }, - "end": { - "line": 2, - "column": 25 - } - } - }, - { - "type": { - "label": "string", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "readline", - "start": 61, - "end": 71, - "loc": { - "start": { - "line": 2, - "column": 25 + "body": [ + { + "type": "VariableDeclaration", + "start": 383, + "end": 420, + "loc": { + "start": { + "line": 14, + "column": 2 + }, + "end": { + "line": 14, + "column": 39 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 389, + "end": 419, + "loc": { + "start": { + "line": 14, + "column": 8 + }, + "end": { + "line": 14, + "column": 38 + } + }, + "id": { + "type": "Identifier", + "start": 389, + "end": 395, + "loc": { + "start": { + "line": 14, + "column": 8 + }, + "end": { + "line": 14, + "column": 14 + }, + "identifierName": "topEnv" + }, + "name": "topEnv", + "leadingComments": null + }, + "init": { + "type": "CallExpression", + "start": 398, + "end": 419, + "loc": { + "start": { + "line": 14, + "column": 17 + }, + "end": { + "line": 14, + "column": 38 + } + }, + "callee": { + "type": "MemberExpression", + "start": 398, + "end": 411, + "loc": { + "start": { + "line": 14, + "column": 17 + }, + "end": { + "line": 14, + "column": 30 + } + }, + "object": { + "type": "Identifier", + "start": 398, + "end": 404, + "loc": { + "start": { + "line": 14, + "column": 17 + }, + "end": { + "line": 14, + "column": 23 + }, + "identifierName": "Object" + }, + "name": "Object" + }, + "property": { + "type": "Identifier", + "start": 405, + "end": 411, + "loc": { + "start": { + "line": 14, + "column": 24 + }, + "end": { + "line": 14, + "column": 30 + }, + "identifierName": "create" + }, + "name": "create" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 412, + "end": 418, + "loc": { + "start": { + "line": 14, + "column": 31 + }, + "end": { + "line": 14, + "column": 37 + }, + "identifierName": "TopEnv" + }, + "name": "TopEnv" + } + ] + }, + "leadingComments": null + } + ], + "kind": "const", + "leadingComments": [ + { + "type": "CommentLine", + "value": " Create the REPL environment", + "start": 350, + "end": 380, + "loc": { + "start": { + "line": 13, + "column": 2 + }, + "end": { + "line": 13, + "column": 32 + } + } + } + ] + }, + { + "type": "VariableDeclaration", + "start": 423, + "end": 449, + "loc": { + "start": { + "line": 15, + "column": 2 + }, + "end": { + "line": 15, + "column": 28 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 429, + "end": 448, + "loc": { + "start": { + "line": 15, + "column": 8 + }, + "end": { + "line": 15, + "column": 27 + } + }, + "id": { + "type": "Identifier", + "start": 429, + "end": 434, + "loc": { + "start": { + "line": 15, + "column": 8 + }, + "end": { + "line": 15, + "column": 13 + }, + "identifierName": "lexer" + }, + "name": "lexer" + }, + "init": { + "type": "NewExpression", + "start": 437, + "end": 448, + "loc": { + "start": { + "line": 15, + "column": 16 + }, + "end": { + "line": 15, + "column": 27 + } + }, + "callee": { + "type": "Identifier", + "start": 441, + "end": 446, + "loc": { + "start": { + "line": 15, + "column": 20 + }, + "end": { + "line": 15, + "column": 25 + }, + "identifierName": "Lexer" + }, + "name": "Lexer" + }, + "arguments": [] + } + } + ], + "kind": "const" + }, + { + "type": "VariableDeclaration", + "start": 452, + "end": 480, + "loc": { + "start": { + "line": 16, + "column": 2 + }, + "end": { + "line": 16, + "column": 30 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 458, + "end": 479, + "loc": { + "start": { + "line": 16, + "column": 8 + }, + "end": { + "line": 16, + "column": 29 + } + }, + "id": { + "type": "Identifier", + "start": 458, + "end": 464, + "loc": { + "start": { + "line": 16, + "column": 8 + }, + "end": { + "line": 16, + "column": 14 + }, + "identifierName": "parser" + }, + "name": "parser" + }, + "init": { + "type": "NewExpression", + "start": 467, + "end": 479, + "loc": { + "start": { + "line": 16, + "column": 17 + }, + "end": { + "line": 16, + "column": 29 + } + }, + "callee": { + "type": "Identifier", + "start": 471, + "end": 477, + "loc": { + "start": { + "line": 16, + "column": 21 + }, + "end": { + "line": 16, + "column": 27 + }, + "identifierName": "Parser" + }, + "name": "Parser" + }, + "arguments": [] + } + } + ], + "kind": "const" + }, + { + "type": "VariableDeclaration", + "start": 484, + "end": 501, + "loc": { + "start": { + "line": 18, + "column": 2 + }, + "end": { + "line": 18, + "column": 19 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 488, + "end": 500, + "loc": { + "start": { + "line": 18, + "column": 6 + }, + "end": { + "line": 18, + "column": 18 + } + }, + "id": { + "type": "Identifier", + "start": 488, + "end": 495, + "loc": { + "start": { + "line": 18, + "column": 6 + }, + "end": { + "line": 18, + "column": 13 + }, + "identifierName": "program" + }, + "name": "program" + }, + "init": { + "type": "StringLiteral", + "start": 498, + "end": 500, + "loc": { + "start": { + "line": 18, + "column": 16 + }, + "end": { + "line": 18, + "column": 18 + } + }, + "extra": { + "rawValue": "", + "raw": "\"\"" + }, + "value": "" + } + } + ], + "kind": "let" + }, + { + "type": "VariableDeclaration", + "start": 504, + "end": 518, + "loc": { + "start": { + "line": 19, + "column": 2 + }, + "end": { + "line": 19, + "column": 16 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 508, + "end": 517, + "loc": { + "start": { + "line": 19, + "column": 6 + }, + "end": { + "line": 19, + "column": 15 + } + }, + "id": { + "type": "Identifier", + "start": 508, + "end": 513, + "loc": { + "start": { + "line": 19, + "column": 6 + }, + "end": { + "line": 19, + "column": 11 + }, + "identifierName": "stack" + }, + "name": "stack" + }, + "init": { + "type": "NumericLiteral", + "start": 516, + "end": 517, + "loc": { + "start": { + "line": 19, + "column": 14 + }, + "end": { + "line": 19, + "column": 15 + } + }, + "extra": { + "rawValue": 0, + "raw": "0" + }, + "value": 0 + } + } + ], + "kind": "let" + }, + { + "type": "ExpressionStatement", + "start": 522, + "end": 543, + "loc": { + "start": { + "line": 21, + "column": 2 + }, + "end": { + "line": 21, + "column": 23 + } + }, + "expression": { + "type": "CallExpression", + "start": 522, + "end": 542, + "loc": { + "start": { + "line": 21, + "column": 2 + }, + "end": { + "line": 21, + "column": 22 + } + }, + "callee": { + "type": "MemberExpression", + "start": 522, + "end": 540, + "loc": { + "start": { + "line": 21, + "column": 2 + }, + "end": { + "line": 21, + "column": 20 + } + }, + "object": { + "type": "Identifier", + "start": 522, + "end": 532, + "loc": { + "start": { + "line": 21, + "column": 2 + }, + "end": { + "line": 21, + "column": 12 + }, + "identifierName": "extensions" + }, + "name": "extensions" + }, + "property": { + "type": "Identifier", + "start": 533, + "end": 540, + "loc": { + "start": { + "line": 21, + "column": 13 + }, + "end": { + "line": 21, + "column": 20 + }, + "identifierName": "eggInfo" + }, + "name": "eggInfo" + }, + "computed": false + }, + "arguments": [] + } + }, + { + "type": "TryStatement", + "start": 547, + "end": 1669, + "loc": { + "start": { + "line": 23, + "column": 2 + }, + "end": { + "line": 70, + "column": 3 + } + }, + "block": { + "type": "BlockStatement", + "start": 551, + "end": 1603, + "loc": { + "start": { + "line": 23, + "column": 6 + }, + "end": { + "line": 67, + "column": 3 + } + }, + "body": [ + { + "type": "VariableDeclaration", + "start": 557, + "end": 693, + "loc": { + "start": { + "line": 24, + "column": 4 + }, + "end": { + "line": 26, + "column": 7 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 563, + "end": 692, + "loc": { + "start": { + "line": 24, + "column": 10 + }, + "end": { + "line": 26, + "column": 6 + } + }, + "id": { + "type": "Identifier", + "start": 563, + "end": 565, + "loc": { + "start": { + "line": 24, + "column": 10 + }, + "end": { + "line": 24, + "column": 12 + }, + "identifierName": "rl" + }, + "name": "rl" + }, + "init": { + "type": "CallExpression", + "start": 568, + "end": 692, + "loc": { + "start": { + "line": 24, + "column": 15 + }, + "end": { + "line": 26, + "column": 6 + } + }, + "callee": { + "type": "MemberExpression", + "start": 568, + "end": 592, + "loc": { + "start": { + "line": 24, + "column": 15 + }, + "end": { + "line": 24, + "column": 39 + } + }, + "object": { + "type": "Identifier", + "start": 568, + "end": 576, + "loc": { + "start": { + "line": 24, + "column": 15 + }, + "end": { + "line": 24, + "column": 23 + }, + "identifierName": "readline" + }, + "name": "readline" + }, + "property": { + "type": "Identifier", + "start": 577, + "end": 592, + "loc": { + "start": { + "line": 24, + "column": 24 + }, + "end": { + "line": 24, + "column": 39 + }, + "identifierName": "createInterface" + }, + "name": "createInterface" + }, + "computed": false + }, + "arguments": [ + { + "type": "MemberExpression", + "start": 593, + "end": 606, + "loc": { + "start": { + "line": 24, + "column": 40 + }, + "end": { + "line": 24, + "column": 53 + } + }, + "object": { + "type": "Identifier", + "start": 593, + "end": 600, + "loc": { + "start": { + "line": 24, + "column": 40 + }, + "end": { + "line": 24, + "column": 47 + }, + "identifierName": "process" + }, + "name": "process" + }, + "property": { + "type": "Identifier", + "start": 601, + "end": 606, + "loc": { + "start": { + "line": 24, + "column": 48 + }, + "end": { + "line": 24, + "column": 53 + }, + "identifierName": "stdin" + }, + "name": "stdin" + }, + "computed": false + }, + { + "type": "MemberExpression", + "start": 608, + "end": 622, + "loc": { + "start": { + "line": 24, + "column": 55 + }, + "end": { + "line": 24, + "column": 69 + } + }, + "object": { + "type": "Identifier", + "start": 608, + "end": 615, + "loc": { + "start": { + "line": 24, + "column": 55 + }, + "end": { + "line": 24, + "column": 62 + }, + "identifierName": "process" + }, + "name": "process" + }, + "property": { + "type": "Identifier", + "start": 616, + "end": 622, + "loc": { + "start": { + "line": 24, + "column": 63 + }, + "end": { + "line": 24, + "column": 69 + }, + "identifierName": "stdout" + }, + "name": "stdout" + }, + "computed": false + }, + { + "type": "ArrowFunctionExpression", + "start": 624, + "end": 691, + "loc": { + "start": { + "line": 24, + "column": 71 + }, + "end": { + "line": 26, + "column": 5 + } + }, + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 624, + "end": 628, + "loc": { + "start": { + "line": 24, + "column": 71 + }, + "end": { + "line": 24, + "column": 75 + }, + "identifierName": "line" + }, + "name": "line" + } + ], + "body": { + "type": "BlockStatement", + "start": 632, + "end": 691, + "loc": { + "start": { + "line": 24, + "column": 79 + }, + "end": { + "line": 26, + "column": 5 + } + }, + "body": [ + { + "type": "ReturnStatement", + "start": 640, + "end": 685, + "loc": { + "start": { + "line": 25, + "column": 6 + }, + "end": { + "line": 25, + "column": 51 + } + }, + "argument": { + "type": "CallExpression", + "start": 647, + "end": 684, + "loc": { + "start": { + "line": 25, + "column": 13 + }, + "end": { + "line": 25, + "column": 50 + } + }, + "callee": { + "type": "MemberExpression", + "start": 647, + "end": 670, + "loc": { + "start": { + "line": 25, + "column": 13 + }, + "end": { + "line": 25, + "column": 36 + } + }, + "object": { + "type": "Identifier", + "start": 647, + "end": 657, + "loc": { + "start": { + "line": 25, + "column": 13 + }, + "end": { + "line": 25, + "column": 23 + }, + "identifierName": "extensions" + }, + "name": "extensions" + }, + "property": { + "type": "Identifier", + "start": 658, + "end": 670, + "loc": { + "start": { + "line": 25, + "column": 24 + }, + "end": { + "line": 25, + "column": 36 + }, + "identifierName": "eggCompleter" + }, + "name": "eggCompleter" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 671, + "end": 675, + "loc": { + "start": { + "line": 25, + "column": 37 + }, + "end": { + "line": 25, + "column": 41 + }, + "identifierName": "line" + }, + "name": "line" + }, + { + "type": "Identifier", + "start": 677, + "end": 683, + "loc": { + "start": { + "line": 25, + "column": 43 + }, + "end": { + "line": 25, + "column": 49 + }, + "identifierName": "topEnv" + }, + "name": "topEnv" + } + ] + } + } + ], + "directives": [] + } + } + ] + } + } + ], + "kind": "const" + }, + { + "type": "ExpressionStatement", + "start": 699, + "end": 740, + "loc": { + "start": { + "line": 28, + "column": 4 + }, + "end": { + "line": 28, + "column": 45 + } + }, + "expression": { + "type": "CallExpression", + "start": 699, + "end": 739, + "loc": { + "start": { + "line": 28, + "column": 4 + }, + "end": { + "line": 28, + "column": 44 + } + }, + "callee": { + "type": "MemberExpression", + "start": 699, + "end": 711, + "loc": { + "start": { + "line": 28, + "column": 4 + }, + "end": { + "line": 28, + "column": 16 + } + }, + "object": { + "type": "Identifier", + "start": 699, + "end": 701, + "loc": { + "start": { + "line": 28, + "column": 4 + }, + "end": { + "line": 28, + "column": 6 + }, + "identifierName": "rl" + }, + "name": "rl" + }, + "property": { + "type": "Identifier", + "start": 702, + "end": 711, + "loc": { + "start": { + "line": 28, + "column": 7 + }, + "end": { + "line": 28, + "column": 16 + }, + "identifierName": "setPrompt" + }, + "name": "setPrompt" + }, + "computed": false + }, + "arguments": [ + { + "type": "CallExpression", + "start": 712, + "end": 738, + "loc": { + "start": { + "line": 28, + "column": 17 + }, + "end": { + "line": 28, + "column": 43 + } + }, + "callee": { + "type": "MemberExpression", + "start": 712, + "end": 736, + "loc": { + "start": { + "line": 28, + "column": 17 + }, + "end": { + "line": 28, + "column": 41 + } + }, + "object": { + "type": "Identifier", + "start": 712, + "end": 722, + "loc": { + "start": { + "line": 28, + "column": 17 + }, + "end": { + "line": 28, + "column": 27 + }, + "identifierName": "extensions" + }, + "name": "extensions" + }, + "property": { + "type": "Identifier", + "start": 723, + "end": 736, + "loc": { + "start": { + "line": 28, + "column": 28 + }, + "end": { + "line": 28, + "column": 41 + }, + "identifierName": "getPromptLine" + }, + "name": "getPromptLine" + }, + "computed": false + }, + "arguments": [] + } + ] + } + }, + { + "type": "ExpressionStatement", + "start": 745, + "end": 757, + "loc": { + "start": { + "line": 29, + "column": 4 + }, + "end": { + "line": 29, + "column": 16 + } + }, + "expression": { + "type": "CallExpression", + "start": 745, + "end": 756, + "loc": { + "start": { + "line": 29, + "column": 4 + }, + "end": { + "line": 29, + "column": 15 + } + }, + "callee": { + "type": "MemberExpression", + "start": 745, + "end": 754, + "loc": { + "start": { + "line": 29, + "column": 4 + }, + "end": { + "line": 29, + "column": 13 + } + }, + "object": { + "type": "Identifier", + "start": 745, + "end": 747, + "loc": { + "start": { + "line": 29, + "column": 4 + }, + "end": { + "line": 29, + "column": 6 + }, + "identifierName": "rl" + }, + "name": "rl" + }, + "property": { + "type": "Identifier", + "start": 748, + "end": 754, + "loc": { + "start": { + "line": 29, + "column": 7 + }, + "end": { + "line": 29, + "column": 13 + }, + "identifierName": "prompt" + }, + "name": "prompt" + }, + "computed": false + }, + "arguments": [] + } + }, + { + "type": "ExpressionStatement", + "start": 763, + "end": 1278, + "loc": { + "start": { + "line": 31, + "column": 4 + }, + "end": { + "line": 50, + "column": 7 + } + }, + "expression": { + "type": "CallExpression", + "start": 763, + "end": 1277, + "loc": { + "start": { + "line": 31, + "column": 4 + }, + "end": { + "line": 50, + "column": 6 + } + }, + "callee": { + "type": "MemberExpression", + "start": 763, + "end": 768, + "loc": { + "start": { + "line": 31, + "column": 4 + }, + "end": { + "line": 31, + "column": 9 + } + }, + "object": { + "type": "Identifier", + "start": 763, + "end": 765, + "loc": { + "start": { + "line": 31, + "column": 4 + }, + "end": { + "line": 31, + "column": 6 + }, + "identifierName": "rl" + }, + "name": "rl" + }, + "property": { + "type": "Identifier", + "start": 766, + "end": 768, + "loc": { + "start": { + "line": 31, + "column": 7 + }, + "end": { + "line": 31, + "column": 9 + }, + "identifierName": "on" + }, + "name": "on" + }, + "computed": false + }, + "arguments": [ + { + "type": "StringLiteral", + "start": 769, + "end": 775, + "loc": { + "start": { + "line": 31, + "column": 10 + }, + "end": { + "line": 31, + "column": 16 + } + }, + "extra": { + "rawValue": "line", + "raw": "\"line\"" + }, + "value": "line" + }, + { + "type": "ArrowFunctionExpression", + "start": 777, + "end": 1276, + "loc": { + "start": { + "line": 31, + "column": 18 + }, + "end": { + "line": 50, + "column": 5 + } + }, + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 777, + "end": 781, + "loc": { + "start": { + "line": 31, + "column": 18 + }, + "end": { + "line": 31, + "column": 22 + }, + "identifierName": "line" + }, + "name": "line" + } + ], + "body": { + "type": "BlockStatement", + "start": 785, + "end": 1276, + "loc": { + "start": { + "line": 31, + "column": 26 + }, + "end": { + "line": 50, + "column": 5 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 793, + "end": 816, + "loc": { + "start": { + "line": 32, + "column": 6 + }, + "end": { + "line": 32, + "column": 29 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 793, + "end": 815, + "loc": { + "start": { + "line": 32, + "column": 6 + }, + "end": { + "line": 32, + "column": 28 + } + }, + "operator": "+=", + "left": { + "type": "Identifier", + "start": 793, + "end": 800, + "loc": { + "start": { + "line": 32, + "column": 6 + }, + "end": { + "line": 32, + "column": 13 + }, + "identifierName": "program" + }, + "name": "program" + }, + "right": { + "type": "BinaryExpression", + "start": 804, + "end": 815, + "loc": { + "start": { + "line": 32, + "column": 17 + }, + "end": { + "line": 32, + "column": 28 + } + }, + "left": { + "type": "Identifier", + "start": 804, + "end": 808, + "loc": { + "start": { + "line": 32, + "column": 17 + }, + "end": { + "line": 32, + "column": 21 + }, + "identifierName": "line" + }, + "name": "line" + }, + "operator": "+", + "right": { + "type": "StringLiteral", + "start": 811, + "end": 815, + "loc": { + "start": { + "line": 32, + "column": 24 + }, + "end": { + "line": 32, + "column": 28 + } + }, + "extra": { + "rawValue": "\n", + "raw": "\"\\n\"" + }, + "value": "\n" + } + } + }, + "trailingComments": [ + { + "type": "CommentLine", + "value": " Count the number of LPS (+) or RPS (-)", + "start": 824, + "end": 865, + "loc": { + "start": { + "line": 34, + "column": 6 + }, + "end": { + "line": 34, + "column": 47 + } + } + } + ] + }, + { + "type": "ExpressionStatement", + "start": 872, + "end": 909, + "loc": { + "start": { + "line": 35, + "column": 6 + }, + "end": { + "line": 35, + "column": 43 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 872, + "end": 908, + "loc": { + "start": { + "line": 35, + "column": 6 + }, + "end": { + "line": 35, + "column": 42 + } + }, + "operator": "=", + "left": { + "type": "Identifier", + "start": 872, + "end": 877, + "loc": { + "start": { + "line": 35, + "column": 6 + }, + "end": { + "line": 35, + "column": 11 + }, + "identifierName": "stack" + }, + "name": "stack", + "leadingComments": null + }, + "right": { + "type": "CallExpression", + "start": 880, + "end": 908, + "loc": { + "start": { + "line": 35, + "column": 14 + }, + "end": { + "line": 35, + "column": 42 + } + }, + "callee": { + "type": "MemberExpression", + "start": 880, + "end": 899, + "loc": { + "start": { + "line": 35, + "column": 14 + }, + "end": { + "line": 35, + "column": 33 + } + }, + "object": { + "type": "Identifier", + "start": 880, + "end": 885, + "loc": { + "start": { + "line": 35, + "column": 14 + }, + "end": { + "line": 35, + "column": 19 + }, + "identifierName": "lexer" + }, + "name": "lexer" + }, + "property": { + "type": "Identifier", + "start": 886, + "end": 899, + "loc": { + "start": { + "line": 35, + "column": 20 + }, + "end": { + "line": 35, + "column": 33 + }, + "identifierName": "getParBalance" + }, + "name": "getParBalance" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 900, + "end": 907, + "loc": { + "start": { + "line": 35, + "column": 34 + }, + "end": { + "line": 35, + "column": 41 + }, + "identifierName": "program" + }, + "name": "program" + } + ] + }, + "leadingComments": null + }, + "leadingComments": [ + { + "type": "CommentLine", + "value": " Count the number of LPS (+) or RPS (-)", + "start": 824, + "end": 865, + "loc": { + "start": { + "line": 34, + "column": 6 + }, + "end": { + "line": 34, + "column": 47 + } + } + } + ] + }, + { + "type": "IfStatement", + "start": 917, + "end": 1181, + "loc": { + "start": { + "line": 37, + "column": 6 + }, + "end": { + "line": 46, + "column": 7 + } + }, + "test": { + "type": "BinaryExpression", + "start": 921, + "end": 931, + "loc": { + "start": { + "line": 37, + "column": 10 + }, + "end": { + "line": 37, + "column": 20 + } + }, + "left": { + "type": "Identifier", + "start": 921, + "end": 926, + "loc": { + "start": { + "line": 37, + "column": 10 + }, + "end": { + "line": 37, + "column": 15 + }, + "identifierName": "stack" + }, + "name": "stack" + }, + "operator": "<=", + "right": { + "type": "NumericLiteral", + "start": 930, + "end": 931, + "loc": { + "start": { + "line": 37, + "column": 19 + }, + "end": { + "line": 37, + "column": 20 + } + }, + "extra": { + "rawValue": 0, + "raw": "0" + }, + "value": 0 + } + }, + "consequent": { + "type": "BlockStatement", + "start": 933, + "end": 1181, + "loc": { + "start": { + "line": 37, + "column": 22 + }, + "end": { + "line": 46, + "column": 7 + } + }, + "body": [ + { + "type": "TryStatement", + "start": 943, + "end": 1173, + "loc": { + "start": { + "line": 38, + "column": 8 + }, + "end": { + "line": 45, + "column": 9 + } + }, + "block": { + "type": "BlockStatement", + "start": 947, + "end": 1011, + "loc": { + "start": { + "line": 38, + "column": 12 + }, + "end": { + "line": 40, + "column": 9 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 959, + "end": 1001, + "loc": { + "start": { + "line": 39, + "column": 10 + }, + "end": { + "line": 39, + "column": 52 + } + }, + "expression": { + "type": "CallExpression", + "start": 959, + "end": 1000, + "loc": { + "start": { + "line": 39, + "column": 10 + }, + "end": { + "line": 39, + "column": 51 + } + }, + "callee": { + "type": "MemberExpression", + "start": 959, + "end": 969, + "loc": { + "start": { + "line": 39, + "column": 10 + }, + "end": { + "line": 39, + "column": 20 + } + }, + "object": { + "type": "Identifier", + "start": 959, + "end": 964, + "loc": { + "start": { + "line": 39, + "column": 10 + }, + "end": { + "line": 39, + "column": 15 + }, + "identifierName": "Eggvm" + }, + "name": "Eggvm" + }, + "property": { + "type": "Identifier", + "start": 965, + "end": 969, + "loc": { + "start": { + "line": 39, + "column": 16 + }, + "end": { + "line": 39, + "column": 20 + }, + "identifierName": "eval" + }, + "name": "eval" + }, + "computed": false + }, + "arguments": [ + { + "type": "CallExpression", + "start": 970, + "end": 991, + "loc": { + "start": { + "line": 39, + "column": 21 + }, + "end": { + "line": 39, + "column": 42 + } + }, + "callee": { + "type": "MemberExpression", + "start": 970, + "end": 982, + "loc": { + "start": { + "line": 39, + "column": 21 + }, + "end": { + "line": 39, + "column": 33 + } + }, + "object": { + "type": "Identifier", + "start": 970, + "end": 976, + "loc": { + "start": { + "line": 39, + "column": 21 + }, + "end": { + "line": 39, + "column": 27 + }, + "identifierName": "parser" + }, + "name": "parser" + }, + "property": { + "type": "Identifier", + "start": 977, + "end": 982, + "loc": { + "start": { + "line": 39, + "column": 28 + }, + "end": { + "line": 39, + "column": 33 + }, + "identifierName": "parse" + }, + "name": "parse" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 983, + "end": 990, + "loc": { + "start": { + "line": 39, + "column": 34 + }, + "end": { + "line": 39, + "column": 41 + }, + "identifierName": "program" + }, + "name": "program" + } + ] + }, + { + "type": "Identifier", + "start": 993, + "end": 999, + "loc": { + "start": { + "line": 39, + "column": 44 + }, + "end": { + "line": 39, + "column": 50 + }, + "identifierName": "topEnv" + }, + "name": "topEnv" + } + ] + } + } + ], + "directives": [] + }, + "handler": { + "type": "CatchClause", + "start": 1012, + "end": 1108, + "loc": { + "start": { + "line": 40, + "column": 10 + }, + "end": { + "line": 42, + "column": 9 + } + }, + "param": { + "type": "Identifier", + "start": 1019, + "end": 1022, + "loc": { + "start": { + "line": 40, + "column": 17 + }, + "end": { + "line": 40, + "column": 20 + }, + "identifierName": "err" + }, + "name": "err" + }, + "body": { + "type": "BlockStatement", + "start": 1024, + "end": 1108, + "loc": { + "start": { + "line": 40, + "column": 22 + }, + "end": { + "line": 42, + "column": 9 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 1036, + "end": 1098, + "loc": { + "start": { + "line": 41, + "column": 10 + }, + "end": { + "line": 41, + "column": 72 + } + }, + "expression": { + "type": "CallExpression", + "start": 1036, + "end": 1097, + "loc": { + "start": { + "line": 41, + "column": 10 + }, + "end": { + "line": 41, + "column": 71 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1036, + "end": 1047, + "loc": { + "start": { + "line": 41, + "column": 10 + }, + "end": { + "line": 41, + "column": 21 + } + }, + "object": { + "type": "Identifier", + "start": 1036, + "end": 1043, + "loc": { + "start": { + "line": 41, + "column": 10 + }, + "end": { + "line": 41, + "column": 17 + }, + "identifierName": "console" + }, + "name": "console" + }, + "property": { + "type": "Identifier", + "start": 1044, + "end": 1047, + "loc": { + "start": { + "line": 41, + "column": 18 + }, + "end": { + "line": 41, + "column": 21 + }, + "identifierName": "log" + }, + "name": "log" + }, + "computed": false + }, + "arguments": [ + { + "type": "TemplateLiteral", + "start": 1048, + "end": 1096, + "loc": { + "start": { + "line": 41, + "column": 22 + }, + "end": { + "line": 41, + "column": 70 + } + }, + "expressions": [ + { + "type": "MemberExpression", + "start": 1051, + "end": 1061, + "loc": { + "start": { + "line": 41, + "column": 25 + }, + "end": { + "line": 41, + "column": 35 + } + }, + "object": { + "type": "Identifier", + "start": 1051, + "end": 1057, + "loc": { + "start": { + "line": 41, + "column": 25 + }, + "end": { + "line": 41, + "column": 31 + }, + "identifierName": "colors" + }, + "name": "colors" + }, + "property": { + "type": "Identifier", + "start": 1058, + "end": 1061, + "loc": { + "start": { + "line": 41, + "column": 32 + }, + "end": { + "line": 41, + "column": 35 + }, + "identifierName": "RED" + }, + "name": "RED" + }, + "computed": false + }, + { + "type": "Identifier", + "start": 1073, + "end": 1076, + "loc": { + "start": { + "line": 41, + "column": 47 + }, + "end": { + "line": 41, + "column": 50 + }, + "identifierName": "err" + }, + "name": "err" + }, + { + "type": "MemberExpression", + "start": 1080, + "end": 1094, + "loc": { + "start": { + "line": 41, + "column": 54 + }, + "end": { + "line": 41, + "column": 68 + } + }, + "object": { + "type": "Identifier", + "start": 1080, + "end": 1086, + "loc": { + "start": { + "line": 41, + "column": 54 + }, + "end": { + "line": 41, + "column": 60 + }, + "identifierName": "colors" + }, + "name": "colors" + }, + "property": { + "type": "Identifier", + "start": 1087, + "end": 1094, + "loc": { + "start": { + "line": 41, + "column": 61 + }, + "end": { + "line": 41, + "column": 68 + }, + "identifierName": "DEFAULT" + }, + "name": "DEFAULT" + }, + "computed": false + } + ], + "quasis": [ + { + "type": "TemplateElement", + "start": 1049, + "end": 1049, + "loc": { + "start": { + "line": 41, + "column": 23 + }, + "end": { + "line": 41, + "column": 23 + } + }, + "value": { + "raw": "", + "cooked": "" + }, + "tail": false + }, + { + "type": "TemplateElement", + "start": 1062, + "end": 1071, + "loc": { + "start": { + "line": 41, + "column": 36 + }, + "end": { + "line": 41, + "column": 45 + } + }, + "value": { + "raw": " Error:: ", + "cooked": " Error:: " + }, + "tail": false + }, + { + "type": "TemplateElement", + "start": 1077, + "end": 1078, + "loc": { + "start": { + "line": 41, + "column": 51 + }, + "end": { + "line": 41, + "column": 52 + } + }, + "value": { + "raw": " ", + "cooked": " " + }, + "tail": false + }, + { + "type": "TemplateElement", + "start": 1095, + "end": 1095, + "loc": { + "start": { + "line": 41, + "column": 69 + }, + "end": { + "line": 41, + "column": 69 + } + }, + "value": { + "raw": "", + "cooked": "" + }, + "tail": true + } + ] + } + ] + } + } + ], + "directives": [] + } + }, + "guardedHandlers": [], + "finalizer": { + "type": "BlockStatement", + "start": 1117, + "end": 1173, + "loc": { + "start": { + "line": 42, + "column": 18 + }, + "end": { + "line": 45, + "column": 9 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 1129, + "end": 1142, + "loc": { + "start": { + "line": 43, + "column": 10 + }, + "end": { + "line": 43, + "column": 23 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 1129, + "end": 1141, + "loc": { + "start": { + "line": 43, + "column": 10 + }, + "end": { + "line": 43, + "column": 22 + } + }, + "operator": "=", + "left": { + "type": "Identifier", + "start": 1129, + "end": 1136, + "loc": { + "start": { + "line": 43, + "column": 10 + }, + "end": { + "line": 43, + "column": 17 + }, + "identifierName": "program" + }, + "name": "program" + }, + "right": { + "type": "StringLiteral", + "start": 1139, + "end": 1141, + "loc": { + "start": { + "line": 43, + "column": 20 + }, + "end": { + "line": 43, + "column": 22 + } + }, + "extra": { + "rawValue": "", + "raw": "\"\"" + }, + "value": "" + } + } + }, + { + "type": "ExpressionStatement", + "start": 1153, + "end": 1163, + "loc": { + "start": { + "line": 44, + "column": 10 + }, + "end": { + "line": 44, + "column": 20 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 1153, + "end": 1162, + "loc": { + "start": { + "line": 44, + "column": 10 + }, + "end": { + "line": 44, + "column": 19 + } + }, + "operator": "=", + "left": { + "type": "Identifier", + "start": 1153, + "end": 1158, + "loc": { + "start": { + "line": 44, + "column": 10 + }, + "end": { + "line": 44, + "column": 15 + }, + "identifierName": "stack" + }, + "name": "stack" + }, + "right": { + "type": "NumericLiteral", + "start": 1161, + "end": 1162, + "loc": { + "start": { + "line": 44, + "column": 18 + }, + "end": { + "line": 44, + "column": 19 + } + }, + "extra": { + "rawValue": 0, + "raw": "0" + }, + "value": 0 + } + } + } + ], + "directives": [] + } + } + ], + "directives": [] + }, + "alternate": null + }, + { + "type": "ExpressionStatement", + "start": 1189, + "end": 1251, + "loc": { + "start": { + "line": 48, + "column": 6 + }, + "end": { + "line": 48, + "column": 68 + } + }, + "expression": { + "type": "CallExpression", + "start": 1189, + "end": 1250, + "loc": { + "start": { + "line": 48, + "column": 6 + }, + "end": { + "line": 48, + "column": 67 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1189, + "end": 1201, + "loc": { + "start": { + "line": 48, + "column": 6 + }, + "end": { + "line": 48, + "column": 18 + } + }, + "object": { + "type": "Identifier", + "start": 1189, + "end": 1191, + "loc": { + "start": { + "line": 48, + "column": 6 + }, + "end": { + "line": 48, + "column": 8 + }, + "identifierName": "rl" + }, + "name": "rl" + }, + "property": { + "type": "Identifier", + "start": 1192, + "end": 1201, + "loc": { + "start": { + "line": 48, + "column": 9 + }, + "end": { + "line": 48, + "column": 18 + }, + "identifierName": "setPrompt" + }, + "name": "setPrompt" + }, + "computed": false + }, + "arguments": [ + { + "type": "BinaryExpression", + "start": 1202, + "end": 1249, + "loc": { + "start": { + "line": 48, + "column": 19 + }, + "end": { + "line": 48, + "column": 66 + } + }, + "left": { + "type": "CallExpression", + "start": 1202, + "end": 1228, + "loc": { + "start": { + "line": 48, + "column": 19 + }, + "end": { + "line": 48, + "column": 45 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1202, + "end": 1226, + "loc": { + "start": { + "line": 48, + "column": 19 + }, + "end": { + "line": 48, + "column": 43 + } + }, + "object": { + "type": "Identifier", + "start": 1202, + "end": 1212, + "loc": { + "start": { + "line": 48, + "column": 19 + }, + "end": { + "line": 48, + "column": 29 + }, + "identifierName": "extensions" + }, + "name": "extensions" + }, + "property": { + "type": "Identifier", + "start": 1213, + "end": 1226, + "loc": { + "start": { + "line": 48, + "column": 30 + }, + "end": { + "line": 48, + "column": 43 + }, + "identifierName": "getPromptLine" + }, + "name": "getPromptLine" + }, + "computed": false + }, + "arguments": [] + }, + "operator": "+", + "right": { + "type": "CallExpression", + "start": 1231, + "end": 1249, + "loc": { + "start": { + "line": 48, + "column": 48 + }, + "end": { + "line": 48, + "column": 66 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1231, + "end": 1242, + "loc": { + "start": { + "line": 48, + "column": 48 + }, + "end": { + "line": 48, + "column": 59 + } + }, + "object": { + "type": "StringLiteral", + "start": 1231, + "end": 1235, + "loc": { + "start": { + "line": 48, + "column": 48 + }, + "end": { + "line": 48, + "column": 52 + } + }, + "extra": { + "rawValue": "..", + "raw": "\"..\"" + }, + "value": ".." + }, + "property": { + "type": "Identifier", + "start": 1236, + "end": 1242, + "loc": { + "start": { + "line": 48, + "column": 53 + }, + "end": { + "line": 48, + "column": 59 + }, + "identifierName": "repeat" + }, + "name": "repeat" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 1243, + "end": 1248, + "loc": { + "start": { + "line": 48, + "column": 60 + }, + "end": { + "line": 48, + "column": 65 + }, + "identifierName": "stack" + }, + "name": "stack" + } + ] + } + } + ] + } + }, + { + "type": "ExpressionStatement", + "start": 1258, + "end": 1270, + "loc": { + "start": { + "line": 49, + "column": 6 + }, + "end": { + "line": 49, + "column": 18 + } + }, + "expression": { + "type": "CallExpression", + "start": 1258, + "end": 1269, + "loc": { + "start": { + "line": 49, + "column": 6 + }, + "end": { + "line": 49, + "column": 17 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1258, + "end": 1267, + "loc": { + "start": { + "line": 49, + "column": 6 + }, + "end": { + "line": 49, + "column": 15 + } + }, + "object": { + "type": "Identifier", + "start": 1258, + "end": 1260, + "loc": { + "start": { + "line": 49, + "column": 6 + }, + "end": { + "line": 49, + "column": 8 + }, + "identifierName": "rl" + }, + "name": "rl" + }, + "property": { + "type": "Identifier", + "start": 1261, + "end": 1267, + "loc": { + "start": { + "line": 49, + "column": 9 + }, + "end": { + "line": 49, + "column": 15 + }, + "identifierName": "prompt" + }, + "name": "prompt" + }, + "computed": false + }, + "arguments": [] + } + } + ], + "directives": [] + } + } + ] + } + }, + { + "type": "ExpressionStatement", + "start": 1284, + "end": 1319, + "loc": { + "start": { + "line": 52, + "column": 4 + }, + "end": { + "line": 52, + "column": 39 + } + }, + "expression": { + "type": "CallExpression", + "start": 1284, + "end": 1318, + "loc": { + "start": { + "line": 52, + "column": 4 + }, + "end": { + "line": 52, + "column": 38 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1284, + "end": 1289, + "loc": { + "start": { + "line": 52, + "column": 4 + }, + "end": { + "line": 52, + "column": 9 + } + }, + "object": { + "type": "Identifier", + "start": 1284, + "end": 1286, + "loc": { + "start": { + "line": 52, + "column": 4 + }, + "end": { + "line": 52, + "column": 6 + }, + "identifierName": "rl" + }, + "name": "rl" + }, + "property": { + "type": "Identifier", + "start": 1287, + "end": 1289, + "loc": { + "start": { + "line": 52, + "column": 7 + }, + "end": { + "line": 52, + "column": 9 + }, + "identifierName": "on" + }, + "name": "on" + }, + "computed": false + }, + "arguments": [ + { + "type": "StringLiteral", + "start": 1290, + "end": 1297, + "loc": { + "start": { + "line": 52, + "column": 10 + }, + "end": { + "line": 52, + "column": 17 + } + }, + "extra": { + "rawValue": "close", + "raw": "\"close\"" + }, + "value": "close" + }, + { + "type": "MemberExpression", + "start": 1299, + "end": 1317, + "loc": { + "start": { + "line": 52, + "column": 19 + }, + "end": { + "line": 52, + "column": 37 + } + }, + "object": { + "type": "Identifier", + "start": 1299, + "end": 1309, + "loc": { + "start": { + "line": 52, + "column": 19 + }, + "end": { + "line": 52, + "column": 29 + }, + "identifierName": "extensions" + }, + "name": "extensions" + }, + "property": { + "type": "Identifier", + "start": 1310, + "end": 1317, + "loc": { + "start": { + "line": 52, + "column": 30 + }, + "end": { + "line": 52, + "column": 37 + }, + "identifierName": "eggExit" + }, + "name": "eggExit" + }, + "computed": false + } + ] + } + }, + { + "type": "ExpressionStatement", + "start": 1325, + "end": 1599, + "loc": { + "start": { + "line": 54, + "column": 4 + }, + "end": { + "line": 66, + "column": 7 + } + }, + "expression": { + "type": "CallExpression", + "start": 1325, + "end": 1598, + "loc": { + "start": { + "line": 54, + "column": 4 + }, + "end": { + "line": 66, + "column": 6 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1325, + "end": 1330, + "loc": { + "start": { + "line": 54, + "column": 4 + }, + "end": { + "line": 54, + "column": 9 + } + }, + "object": { + "type": "Identifier", + "start": 1325, + "end": 1327, + "loc": { + "start": { + "line": 54, + "column": 4 + }, + "end": { + "line": 54, + "column": 6 + }, + "identifierName": "rl" + }, + "name": "rl" + }, + "property": { + "type": "Identifier", + "start": 1328, + "end": 1330, + "loc": { + "start": { + "line": 54, + "column": 7 + }, + "end": { + "line": 54, + "column": 9 + }, + "identifierName": "on" + }, + "name": "on" + }, + "computed": false + }, + "arguments": [ + { + "type": "StringLiteral", + "start": 1331, + "end": 1339, + "loc": { + "start": { + "line": 54, + "column": 10 + }, + "end": { + "line": 54, + "column": 18 + } + }, + "extra": { + "rawValue": "SIGINT", + "raw": "\"SIGINT\"" + }, + "value": "SIGINT" + }, + { + "type": "ArrowFunctionExpression", + "start": 1341, + "end": 1597, + "loc": { + "start": { + "line": 54, + "column": 20 + }, + "end": { + "line": 66, + "column": 5 + } + }, + "id": null, + "generator": false, + "expression": false, + "async": false, + "params": [], + "body": { + "type": "BlockStatement", + "start": 1347, + "end": 1597, + "loc": { + "start": { + "line": 54, + "column": 26 + }, + "end": { + "line": 66, + "column": 5 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 1355, + "end": 1448, + "loc": { + "start": { + "line": 55, + "column": 6 + }, + "end": { + "line": 57, + "column": 8 + } + }, + "expression": { + "type": "CallExpression", + "start": 1355, + "end": 1447, + "loc": { + "start": { + "line": 55, + "column": 6 + }, + "end": { + "line": 57, + "column": 7 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1355, + "end": 1366, + "loc": { + "start": { + "line": 55, + "column": 6 + }, + "end": { + "line": 55, + "column": 17 + } + }, + "object": { + "type": "Identifier", + "start": 1355, + "end": 1362, + "loc": { + "start": { + "line": 55, + "column": 6 + }, + "end": { + "line": 55, + "column": 13 + }, + "identifierName": "console" + }, + "name": "console" + }, + "property": { + "type": "Identifier", + "start": 1363, + "end": 1366, + "loc": { + "start": { + "line": 55, + "column": 14 + }, + "end": { + "line": 55, + "column": 17 + }, + "identifierName": "log" + }, + "name": "log" + }, + "computed": false + }, + "arguments": [ + { + "type": "TemplateLiteral", + "start": 1376, + "end": 1439, + "loc": { + "start": { + "line": 56, + "column": 8 + }, + "end": { + "line": 56, + "column": 71 + } + }, + "expressions": [ + { + "type": "MemberExpression", + "start": 1381, + "end": 1393, + "loc": { + "start": { + "line": 56, + "column": 13 + }, + "end": { + "line": 56, + "column": 25 + } + }, + "object": { + "type": "Identifier", + "start": 1381, + "end": 1387, + "loc": { + "start": { + "line": 56, + "column": 13 + }, + "end": { + "line": 56, + "column": 19 + }, + "identifierName": "colors" + }, + "name": "colors" + }, + "property": { + "type": "Identifier", + "start": 1388, + "end": 1393, + "loc": { + "start": { + "line": 56, + "column": 20 + }, + "end": { + "line": 56, + "column": 25 + }, + "identifierName": "GREEN" + }, + "name": "GREEN" + }, + "computed": false + }, + { + "type": "MemberExpression", + "start": 1423, + "end": 1437, + "loc": { + "start": { + "line": 56, + "column": 55 + }, + "end": { + "line": 56, + "column": 69 + } + }, + "object": { + "type": "Identifier", + "start": 1423, + "end": 1429, + "loc": { + "start": { + "line": 56, + "column": 55 + }, + "end": { + "line": 56, + "column": 61 + }, + "identifierName": "colors" + }, + "name": "colors" + }, + "property": { + "type": "Identifier", + "start": 1430, + "end": 1437, + "loc": { + "start": { + "line": 56, + "column": 62 + }, + "end": { + "line": 56, + "column": 69 + }, + "identifierName": "DEFAULT" + }, + "name": "DEFAULT" + }, + "computed": false + } + ], + "quasis": [ + { + "type": "TemplateElement", + "start": 1377, + "end": 1379, + "loc": { + "start": { + "line": 56, + "column": 9 + }, + "end": { + "line": 56, + "column": 11 + } + }, + "value": { + "raw": "\\n", + "cooked": "\n" + }, + "tail": false + }, + { + "type": "TemplateElement", + "start": 1394, + "end": 1421, + "loc": { + "start": { + "line": 56, + "column": 26 + }, + "end": { + "line": 56, + "column": 53 + } + }, + "value": { + "raw": "\\n--> Expression discarded ", + "cooked": "\n--> Expression discarded " + }, + "tail": false + }, + { + "type": "TemplateElement", + "start": 1438, + "end": 1438, + "loc": { + "start": { + "line": 56, + "column": 70 + }, + "end": { + "line": 56, + "column": 70 + } + }, + "value": { + "raw": "", + "cooked": "" + }, + "tail": true + } + ] + } + ] + } + }, + { + "type": "ExpressionStatement", + "start": 1456, + "end": 1469, + "loc": { + "start": { + "line": 59, + "column": 6 + }, + "end": { + "line": 59, + "column": 19 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 1456, + "end": 1468, + "loc": { + "start": { + "line": 59, + "column": 6 + }, + "end": { + "line": 59, + "column": 18 + } + }, + "operator": "=", + "left": { + "type": "Identifier", + "start": 1456, + "end": 1463, + "loc": { + "start": { + "line": 59, + "column": 6 + }, + "end": { + "line": 59, + "column": 13 + }, + "identifierName": "program" + }, + "name": "program" + }, + "right": { + "type": "StringLiteral", + "start": 1466, + "end": 1468, + "loc": { + "start": { + "line": 59, + "column": 16 + }, + "end": { + "line": 59, + "column": 18 + } + }, + "extra": { + "rawValue": "", + "raw": "\"\"" + }, + "value": "" + } + } + }, + { + "type": "ExpressionStatement", + "start": 1476, + "end": 1486, + "loc": { + "start": { + "line": 60, + "column": 6 + }, + "end": { + "line": 60, + "column": 16 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 1476, + "end": 1485, + "loc": { + "start": { + "line": 60, + "column": 6 + }, + "end": { + "line": 60, + "column": 15 + } + }, + "operator": "=", + "left": { + "type": "Identifier", + "start": 1476, + "end": 1481, + "loc": { + "start": { + "line": 60, + "column": 6 + }, + "end": { + "line": 60, + "column": 11 + }, + "identifierName": "stack" + }, + "name": "stack" + }, + "right": { + "type": "NumericLiteral", + "start": 1484, + "end": 1485, + "loc": { + "start": { + "line": 60, + "column": 14 + }, + "end": { + "line": 60, + "column": 15 + } + }, + "extra": { + "rawValue": 0, + "raw": "0" + }, + "value": 0 + } + } + }, + { + "type": "ExpressionStatement", + "start": 1494, + "end": 1523, + "loc": { + "start": { + "line": 62, + "column": 6 + }, + "end": { + "line": 62, + "column": 35 + } + }, + "expression": { + "type": "CallExpression", + "start": 1494, + "end": 1522, + "loc": { + "start": { + "line": 62, + "column": 6 + }, + "end": { + "line": 62, + "column": 34 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1494, + "end": 1506, + "loc": { + "start": { + "line": 62, + "column": 6 + }, + "end": { + "line": 62, + "column": 18 + } + }, + "object": { + "type": "Identifier", + "start": 1494, + "end": 1496, + "loc": { + "start": { + "line": 62, + "column": 6 + }, + "end": { + "line": 62, + "column": 8 + }, + "identifierName": "rl" + }, + "name": "rl" + }, + "property": { + "type": "Identifier", + "start": 1497, + "end": 1506, + "loc": { + "start": { + "line": 62, + "column": 9 + }, + "end": { + "line": 62, + "column": 18 + }, + "identifierName": "clearLine" + }, + "name": "clearLine" + }, + "computed": false + }, + "arguments": [ + { + "type": "MemberExpression", + "start": 1507, + "end": 1521, + "loc": { + "start": { + "line": 62, + "column": 19 + }, + "end": { + "line": 62, + "column": 33 + } + }, + "object": { + "type": "Identifier", + "start": 1507, + "end": 1514, + "loc": { + "start": { + "line": 62, + "column": 19 + }, + "end": { + "line": 62, + "column": 26 + }, + "identifierName": "process" + }, + "name": "process" + }, + "property": { + "type": "Identifier", + "start": 1515, + "end": 1521, + "loc": { + "start": { + "line": 62, + "column": 27 + }, + "end": { + "line": 62, + "column": 33 + }, + "identifierName": "stdout" + }, + "name": "stdout" + }, + "computed": false + } + ] + } + }, + { + "type": "ExpressionStatement", + "start": 1531, + "end": 1572, + "loc": { + "start": { + "line": 64, + "column": 6 + }, + "end": { + "line": 64, + "column": 47 + } + }, + "expression": { + "type": "CallExpression", + "start": 1531, + "end": 1571, + "loc": { + "start": { + "line": 64, + "column": 6 + }, + "end": { + "line": 64, + "column": 46 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1531, + "end": 1543, + "loc": { + "start": { + "line": 64, + "column": 6 + }, + "end": { + "line": 64, + "column": 18 + } + }, + "object": { + "type": "Identifier", + "start": 1531, + "end": 1533, + "loc": { + "start": { + "line": 64, + "column": 6 + }, + "end": { + "line": 64, + "column": 8 + }, + "identifierName": "rl" + }, + "name": "rl" + }, + "property": { + "type": "Identifier", + "start": 1534, + "end": 1543, + "loc": { + "start": { + "line": 64, + "column": 9 + }, + "end": { + "line": 64, + "column": 18 + }, + "identifierName": "setPrompt" + }, + "name": "setPrompt" + }, + "computed": false + }, + "arguments": [ + { + "type": "CallExpression", + "start": 1544, + "end": 1570, + "loc": { + "start": { + "line": 64, + "column": 19 + }, + "end": { + "line": 64, + "column": 45 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1544, + "end": 1568, + "loc": { + "start": { + "line": 64, + "column": 19 + }, + "end": { + "line": 64, + "column": 43 + } + }, + "object": { + "type": "Identifier", + "start": 1544, + "end": 1554, + "loc": { + "start": { + "line": 64, + "column": 19 + }, + "end": { + "line": 64, + "column": 29 + }, + "identifierName": "extensions" + }, + "name": "extensions" + }, + "property": { + "type": "Identifier", + "start": 1555, + "end": 1568, + "loc": { + "start": { + "line": 64, + "column": 30 + }, + "end": { + "line": 64, + "column": 43 + }, + "identifierName": "getPromptLine" + }, + "name": "getPromptLine" + }, + "computed": false + }, + "arguments": [] + } + ] + } + }, + { + "type": "ExpressionStatement", + "start": 1579, + "end": 1591, + "loc": { + "start": { + "line": 65, + "column": 6 + }, + "end": { + "line": 65, + "column": 18 + } + }, + "expression": { + "type": "CallExpression", + "start": 1579, + "end": 1590, + "loc": { + "start": { + "line": 65, + "column": 6 + }, + "end": { + "line": 65, + "column": 17 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1579, + "end": 1588, + "loc": { + "start": { + "line": 65, + "column": 6 + }, + "end": { + "line": 65, + "column": 15 + } + }, + "object": { + "type": "Identifier", + "start": 1579, + "end": 1581, + "loc": { + "start": { + "line": 65, + "column": 6 + }, + "end": { + "line": 65, + "column": 8 + }, + "identifierName": "rl" + }, + "name": "rl" + }, + "property": { + "type": "Identifier", + "start": 1582, + "end": 1588, + "loc": { + "start": { + "line": 65, + "column": 9 + }, + "end": { + "line": 65, + "column": 15 + }, + "identifierName": "prompt" + }, + "name": "prompt" + }, + "computed": false + }, + "arguments": [] + } + } + ], + "directives": [] + } + } + ] + } + } + ], + "directives": [] + }, + "handler": { + "type": "CatchClause", + "start": 1604, + "end": 1669, + "loc": { + "start": { + "line": 67, + "column": 4 + }, + "end": { + "line": 70, + "column": 3 + } + }, + "param": { + "type": "Identifier", + "start": 1611, + "end": 1614, + "loc": { + "start": { + "line": 67, + "column": 11 + }, + "end": { + "line": 67, + "column": 14 + }, + "identifierName": "err" + }, + "name": "err" + }, + "body": { + "type": "BlockStatement", + "start": 1616, + "end": 1669, + "loc": { + "start": { + "line": 67, + "column": 16 + }, + "end": { + "line": 70, + "column": 3 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 1622, + "end": 1639, + "loc": { + "start": { + "line": 68, + "column": 4 + }, + "end": { + "line": 68, + "column": 21 + } + }, + "expression": { + "type": "CallExpression", + "start": 1622, + "end": 1638, + "loc": { + "start": { + "line": 68, + "column": 4 + }, + "end": { + "line": 68, + "column": 20 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1622, + "end": 1633, + "loc": { + "start": { + "line": 68, + "column": 4 + }, + "end": { + "line": 68, + "column": 15 + } + }, + "object": { + "type": "Identifier", + "start": 1622, + "end": 1629, + "loc": { + "start": { + "line": 68, + "column": 4 + }, + "end": { + "line": 68, + "column": 11 + }, + "identifierName": "console" + }, + "name": "console" + }, + "property": { + "type": "Identifier", + "start": 1630, + "end": 1633, + "loc": { + "start": { + "line": 68, + "column": 12 + }, + "end": { + "line": 68, + "column": 15 + }, + "identifierName": "log" + }, + "name": "log" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 1634, + "end": 1637, + "loc": { + "start": { + "line": 68, + "column": 16 + }, + "end": { + "line": 68, + "column": 19 + }, + "identifierName": "err" + }, + "name": "err" + } + ] + } + }, + { + "type": "ExpressionStatement", + "start": 1644, + "end": 1665, + "loc": { + "start": { + "line": 69, + "column": 4 + }, + "end": { + "line": 69, + "column": 25 + } + }, + "expression": { + "type": "CallExpression", + "start": 1644, + "end": 1664, + "loc": { + "start": { + "line": 69, + "column": 4 + }, + "end": { + "line": 69, + "column": 24 + } + }, + "callee": { + "type": "MemberExpression", + "start": 1644, + "end": 1662, + "loc": { + "start": { + "line": 69, + "column": 4 + }, + "end": { + "line": 69, + "column": 22 + } + }, + "object": { + "type": "Identifier", + "start": 1644, + "end": 1654, + "loc": { + "start": { + "line": 69, + "column": 4 + }, + "end": { + "line": 69, + "column": 14 + }, + "identifierName": "extensions" + }, + "name": "extensions" + }, + "property": { + "type": "Identifier", + "start": 1655, + "end": 1662, + "loc": { + "start": { + "line": 69, + "column": 15 + }, + "end": { + "line": 69, + "column": 22 + }, + "identifierName": "eggHelp" + }, + "name": "eggHelp" + }, + "computed": false + }, + "arguments": [] + } + } + ], + "directives": [] + } + }, + "guardedHandlers": [], + "finalizer": null + } + ], + "directives": [] + } + } + } + ], + "kind": "const", + "leadingComments": [], + "trailingComments": [] }, - "end": { - "line": 2, - "column": 35 - } + "specifiers": null, + "source": null, + "leadingComments": null } - }, + ], + "directives": [] + }, + "comments": [ { - "type": { - "label": ")", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 71, - "end": 72, + "type": "CommentLine", + "value": " Create the REPL environment", + "start": 350, + "end": 380, "loc": { "start": { - "line": 2, - "column": 35 + "line": 13, + "column": 2 }, "end": { - "line": 2, - "column": 36 + "line": 13, + "column": 32 } } }, { - "type": { - "label": ";", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "start": 72, - "end": 73, + "type": "CommentLine", + "value": " Count the number of LPS (+) or RPS (-)", + "start": 824, + "end": 865, "loc": { "start": { - "line": 2, - "column": 36 + "line": 34, + "column": 6 }, "end": { - "line": 2, - "column": 37 + "line": 34, + "column": 47 } } - }, + } + ], + "tokens": [ { "type": { - "label": "const", - "keyword": "const", + "label": "import", + "keyword": "import", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -5850,42 +9065,17 @@ "binop": null, "updateContext": null }, - "value": "const", - "start": 75, - "end": 80, + "value": "import", + "start": 0, + "end": 6, "loc": { "start": { - "line": 4, + "line": 1, "column": 0 }, "end": { - "line": 4, - "column": 5 - } - } - }, - { - "type": { - "label": "{", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 81, - "end": 82, - "loc": { - "start": { - "line": 4, + "line": 1, "column": 6 - }, - "end": { - "line": 4, - "column": 7 } } }, @@ -5901,69 +9091,17 @@ "postfix": false, "binop": null }, - "value": "Lexer", - "start": 83, - "end": 88, + "value": "process", + "start": 7, + "end": 14, "loc": { "start": { - "line": 4, - "column": 8 + "line": 1, + "column": 7 }, "end": { - "line": 4, - "column": 13 - } - } - }, - { - "type": { - "label": "}", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 89, - "end": 90, - "loc": { - "start": { - "line": 4, + "line": 1, "column": 14 - }, - "end": { - "line": 4, - "column": 15 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 91, - "end": 92, - "loc": { - "start": { - "line": 4, - "column": 16 - }, - "end": { - "line": 4, - "column": 17 } } }, @@ -5979,42 +9117,17 @@ "postfix": false, "binop": null }, - "value": "require", - "start": 93, - "end": 100, - "loc": { - "start": { - "line": 4, - "column": 18 - }, - "end": { - "line": 4, - "column": 25 - } - } - }, - { - "type": { - "label": "(", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 100, - "end": 101, + "value": "from", + "start": 15, + "end": 19, "loc": { "start": { - "line": 4, - "column": 25 + "line": 1, + "column": 15 }, "end": { - "line": 4, - "column": 26 + "line": 1, + "column": 19 } } }, @@ -6031,42 +9144,17 @@ "binop": null, "updateContext": null }, - "value": "../parser/lexer.js", - "start": 101, - "end": 121, - "loc": { - "start": { - "line": 4, - "column": 26 - }, - "end": { - "line": 4, - "column": 46 - } - } - }, - { - "type": { - "label": ")", - "beforeExpr": false, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 121, - "end": 122, + "value": "process", + "start": 20, + "end": 29, "loc": { "start": { - "line": 4, - "column": 46 + "line": 1, + "column": 20 }, "end": { - "line": 4, - "column": 47 + "line": 1, + "column": 29 } } }, @@ -6083,25 +9171,25 @@ "binop": null, "updateContext": null }, - "start": 122, - "end": 123, + "start": 29, + "end": 30, "loc": { "start": { - "line": 4, - "column": 47 + "line": 1, + "column": 29 }, "end": { - "line": 4, - "column": 48 + "line": 1, + "column": 30 } } }, { "type": { - "label": "const", - "keyword": "const", + "label": "import", + "keyword": "import", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -6110,24 +9198,24 @@ "binop": null, "updateContext": null }, - "value": "const", - "start": 124, - "end": 129, + "value": "import", + "start": 31, + "end": 37, "loc": { "start": { - "line": 5, + "line": 2, "column": 0 }, "end": { - "line": 5, - "column": 5 + "line": 2, + "column": 6 } } }, { "type": { - "label": "{", - "beforeExpr": true, + "label": "name", + "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, @@ -6136,16 +9224,17 @@ "postfix": false, "binop": null }, - "start": 130, - "end": 131, + "value": "readline", + "start": 38, + "end": 46, "loc": { "start": { - "line": 5, - "column": 6 + "line": 2, + "column": 7 }, "end": { - "line": 5, - "column": 7 + "line": 2, + "column": 15 } } }, @@ -6161,75 +9250,77 @@ "postfix": false, "binop": null }, - "value": "Parser", - "start": 132, - "end": 138, + "value": "from", + "start": 47, + "end": 51, "loc": { "start": { - "line": 5, - "column": 8 + "line": 2, + "column": 16 }, "end": { - "line": 5, - "column": 14 + "line": 2, + "column": 20 } } }, { "type": { - "label": "}", + "label": "string", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "start": 139, - "end": 140, + "value": "readline", + "start": 52, + "end": 62, "loc": { "start": { - "line": 5, - "column": 15 + "line": 2, + "column": 21 }, "end": { - "line": 5, - "column": 16 + "line": 2, + "column": 31 } } }, { "type": { - "label": "=", + "label": ";", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, - "isAssign": true, + "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, - "value": "=", - "start": 141, - "end": 142, + "start": 62, + "end": 63, "loc": { "start": { - "line": 5, - "column": 17 + "line": 2, + "column": 31 }, "end": { - "line": 5, - "column": 18 + "line": 2, + "column": 32 } } }, { "type": { - "label": "name", + "label": "import", + "keyword": "import", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, @@ -6237,25 +9328,26 @@ "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "value": "require", - "start": 143, - "end": 150, + "value": "import", + "start": 65, + "end": 71, "loc": { "start": { - "line": 5, - "column": 19 + "line": 4, + "column": 0 }, "end": { - "line": 5, - "column": 26 + "line": 4, + "column": 6 } } }, { "type": { - "label": "(", + "label": "{", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, @@ -6265,22 +9357,22 @@ "postfix": false, "binop": null }, - "start": 150, - "end": 151, + "start": 72, + "end": 73, "loc": { "start": { - "line": 5, - "column": 26 + "line": 4, + "column": 7 }, "end": { - "line": 5, - "column": 27 + "line": 4, + "column": 8 } } }, { "type": { - "label": "string", + "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, @@ -6288,26 +9380,25 @@ "isAssign": false, "prefix": false, "postfix": false, - "binop": null, - "updateContext": null + "binop": null }, - "value": "../parser/parse.js", - "start": 151, - "end": 171, + "value": "Lexer", + "start": 74, + "end": 79, "loc": { "start": { - "line": 5, - "column": 27 + "line": 4, + "column": 9 }, "end": { - "line": 5, - "column": 47 + "line": 4, + "column": 14 } } }, { "type": { - "label": ")", + "label": "}", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, @@ -6317,51 +9408,50 @@ "postfix": false, "binop": null }, - "start": 171, - "end": 172, + "start": 80, + "end": 81, "loc": { "start": { - "line": 5, - "column": 47 + "line": 4, + "column": 15 }, "end": { - "line": 5, - "column": 48 + "line": 4, + "column": 16 } } }, { "type": { - "label": ";", - "beforeExpr": true, - "startsExpr": false, + "label": "name", + "beforeExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null, - "updateContext": null + "binop": null }, - "start": 172, - "end": 173, + "value": "from", + "start": 82, + "end": 86, "loc": { "start": { - "line": 5, - "column": 48 + "line": 4, + "column": 17 }, "end": { - "line": 5, - "column": 49 + "line": 4, + "column": 21 } } }, { "type": { - "label": "const", - "keyword": "const", + "label": "string", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -6370,48 +9460,50 @@ "binop": null, "updateContext": null }, - "value": "const", - "start": 174, - "end": 179, + "value": "../parser/lexer.js", + "start": 87, + "end": 107, "loc": { "start": { - "line": 6, - "column": 0 + "line": 4, + "column": 22 }, "end": { - "line": 6, - "column": 5 + "line": 4, + "column": 42 } } }, { "type": { - "label": "{", + "label": ";", "beforeExpr": true, - "startsExpr": true, + "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "start": 180, - "end": 181, + "start": 107, + "end": 108, "loc": { "start": { - "line": 6, - "column": 6 + "line": 4, + "column": 42 }, "end": { - "line": 6, - "column": 7 + "line": 4, + "column": 43 } } }, { "type": { - "label": "name", + "label": "import", + "keyword": "import", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, @@ -6419,27 +9511,28 @@ "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "value": "TopEnv", - "start": 182, - "end": 188, + "value": "import", + "start": 109, + "end": 115, "loc": { "start": { - "line": 6, - "column": 8 + "line": 5, + "column": 0 }, "end": { - "line": 6, - "column": 14 + "line": 5, + "column": 6 } } }, { "type": { - "label": "}", - "beforeExpr": false, - "startsExpr": false, + "label": "{", + "beforeExpr": true, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -6447,43 +9540,16 @@ "postfix": false, "binop": null }, - "start": 189, - "end": 190, - "loc": { - "start": { - "line": 6, - "column": 15 - }, - "end": { - "line": 6, - "column": 16 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 191, - "end": 192, + "start": 116, + "end": 117, "loc": { "start": { - "line": 6, - "column": 17 + "line": 5, + "column": 7 }, "end": { - "line": 6, - "column": 18 + "line": 5, + "column": 8 } } }, @@ -6499,25 +9565,25 @@ "postfix": false, "binop": null }, - "value": "require", - "start": 193, - "end": 200, + "value": "Parser", + "start": 118, + "end": 124, "loc": { "start": { - "line": 6, - "column": 19 + "line": 5, + "column": 9 }, "end": { - "line": 6, - "column": 26 + "line": 5, + "column": 15 } } }, { "type": { - "label": "(", - "beforeExpr": true, - "startsExpr": true, + "label": "}", + "beforeExpr": false, + "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -6525,22 +9591,22 @@ "postfix": false, "binop": null }, - "start": 200, - "end": 201, + "start": 125, + "end": 126, "loc": { "start": { - "line": 6, - "column": 26 + "line": 5, + "column": 16 }, "end": { - "line": 6, - "column": 27 + "line": 5, + "column": 17 } } }, { "type": { - "label": "string", + "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, @@ -6548,45 +9614,46 @@ "isAssign": false, "prefix": false, "postfix": false, - "binop": null, - "updateContext": null + "binop": null }, - "value": "../interp/environment.js", - "start": 201, - "end": 227, + "value": "from", + "start": 127, + "end": 131, "loc": { "start": { - "line": 6, - "column": 27 + "line": 5, + "column": 18 }, "end": { - "line": 6, - "column": 53 + "line": 5, + "column": 22 } } }, { "type": { - "label": ")", + "label": "string", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "start": 227, - "end": 228, + "value": "../parser/parse.js", + "start": 132, + "end": 152, "loc": { "start": { - "line": 6, - "column": 53 + "line": 5, + "column": 23 }, "end": { - "line": 6, - "column": 54 + "line": 5, + "column": 43 } } }, @@ -6603,25 +9670,25 @@ "binop": null, "updateContext": null }, - "start": 228, - "end": 229, + "start": 152, + "end": 153, "loc": { "start": { - "line": 6, - "column": 54 + "line": 5, + "column": 43 }, "end": { - "line": 6, - "column": 55 + "line": 5, + "column": 44 } } }, { "type": { - "label": "const", - "keyword": "const", + "label": "import", + "keyword": "import", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -6630,17 +9697,17 @@ "binop": null, "updateContext": null }, - "value": "const", - "start": 230, - "end": 235, + "value": "import", + "start": 154, + "end": 160, "loc": { "start": { - "line": 7, + "line": 6, "column": 0 }, "end": { - "line": 7, - "column": 5 + "line": 6, + "column": 6 } } }, @@ -6656,16 +9723,16 @@ "postfix": false, "binop": null }, - "start": 236, - "end": 237, + "start": 161, + "end": 162, "loc": { "start": { - "line": 7, - "column": 6 + "line": 6, + "column": 7 }, "end": { - "line": 7, - "column": 7 + "line": 6, + "column": 8 } } }, @@ -6681,17 +9748,17 @@ "postfix": false, "binop": null }, - "value": "Eggvm", - "start": 238, - "end": 243, + "value": "TopEnv", + "start": 163, + "end": 169, "loc": { "start": { - "line": 7, - "column": 8 + "line": 6, + "column": 9 }, "end": { - "line": 7, - "column": 13 + "line": 6, + "column": 15 } } }, @@ -6707,42 +9774,15 @@ "postfix": false, "binop": null }, - "start": 244, - "end": 245, - "loc": { - "start": { - "line": 7, - "column": 14 - }, - "end": { - "line": 7, - "column": 15 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 246, - "end": 247, + "start": 170, + "end": 171, "loc": { "start": { - "line": 7, + "line": 6, "column": 16 }, "end": { - "line": 7, + "line": 6, "column": 17 } } @@ -6759,42 +9799,17 @@ "postfix": false, "binop": null }, - "value": "require", - "start": 248, - "end": 255, + "value": "from", + "start": 172, + "end": 176, "loc": { "start": { - "line": 7, + "line": 6, "column": 18 }, "end": { - "line": 7, - "column": 25 - } - } - }, - { - "type": { - "label": "(", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 255, - "end": 256, - "loc": { - "start": { - "line": 7, - "column": 25 - }, - "end": { - "line": 7, - "column": 26 + "line": 6, + "column": 22 } } }, @@ -6811,50 +9826,52 @@ "binop": null, "updateContext": null }, - "value": "../interp/eggvm.js", - "start": 256, - "end": 276, + "value": "../interp/environment.js", + "start": 177, + "end": 203, "loc": { "start": { - "line": 7, - "column": 26 + "line": 6, + "column": 23 }, "end": { - "line": 7, - "column": 46 + "line": 6, + "column": 49 } } }, { "type": { - "label": ")", - "beforeExpr": false, + "label": ";", + "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "start": 276, - "end": 277, + "start": 203, + "end": 204, "loc": { "start": { - "line": 7, - "column": 46 + "line": 6, + "column": 49 }, "end": { - "line": 7, - "column": 47 + "line": 6, + "column": 50 } } }, { "type": { - "label": ";", - "beforeExpr": true, - "startsExpr": false, + "label": "import", + "keyword": "import", + "beforeExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -6863,44 +9880,42 @@ "binop": null, "updateContext": null }, - "start": 277, - "end": 278, + "value": "import", + "start": 205, + "end": 211, "loc": { "start": { "line": 7, - "column": 47 + "column": 0 }, "end": { "line": 7, - "column": 48 + "column": 6 } } }, { "type": { - "label": "const", - "keyword": "const", - "beforeExpr": false, - "startsExpr": false, + "label": "{", + "beforeExpr": true, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null, - "updateContext": null + "binop": null }, - "value": "const", - "start": 280, - "end": 285, + "start": 212, + "end": 213, "loc": { "start": { - "line": 9, - "column": 0 + "line": 7, + "column": 7 }, "end": { - "line": 9, - "column": 5 + "line": 7, + "column": 8 } } }, @@ -6916,44 +9931,42 @@ "postfix": false, "binop": null }, - "value": "extensions", - "start": 286, - "end": 296, + "value": "Eggvm", + "start": 214, + "end": 219, "loc": { "start": { - "line": 9, - "column": 6 + "line": 7, + "column": 9 }, "end": { - "line": 9, - "column": 16 + "line": 7, + "column": 14 } } }, { "type": { - "label": "=", - "beforeExpr": true, + "label": "}", + "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, - "isAssign": true, + "isAssign": false, "prefix": false, "postfix": false, - "binop": null, - "updateContext": null + "binop": null }, - "value": "=", - "start": 297, - "end": 298, + "start": 220, + "end": 221, "loc": { "start": { - "line": 9, - "column": 17 + "line": 7, + "column": 15 }, "end": { - "line": 9, - "column": 18 + "line": 7, + "column": 16 } } }, @@ -6969,50 +9982,52 @@ "postfix": false, "binop": null }, - "value": "require", - "start": 299, - "end": 306, + "value": "from", + "start": 222, + "end": 226, "loc": { "start": { - "line": 9, - "column": 19 + "line": 7, + "column": 17 }, "end": { - "line": 9, - "column": 26 + "line": 7, + "column": 21 } } }, { "type": { - "label": "(", - "beforeExpr": true, + "label": "string", + "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "start": 306, - "end": 307, + "value": "../interp/eggvm.js", + "start": 227, + "end": 247, "loc": { "start": { - "line": 9, - "column": 26 + "line": 7, + "column": 22 }, "end": { - "line": 9, - "column": 27 + "line": 7, + "column": 42 } } }, { "type": { - "label": "string", - "beforeExpr": false, - "startsExpr": true, + "label": ";", + "beforeExpr": true, + "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -7021,102 +10036,102 @@ "binop": null, "updateContext": null }, - "value": "./extensions.js", - "start": 307, - "end": 324, + "start": 247, + "end": 248, "loc": { "start": { - "line": 9, - "column": 27 + "line": 7, + "column": 42 }, "end": { - "line": 9, - "column": 44 + "line": 7, + "column": 43 } } }, { "type": { - "label": ")", + "label": "import", + "keyword": "import", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "start": 324, - "end": 325, + "value": "import", + "start": 250, + "end": 256, "loc": { "start": { "line": 9, - "column": 44 + "column": 0 }, "end": { "line": 9, - "column": 45 + "column": 6 } } }, { "type": { - "label": ";", - "beforeExpr": true, - "startsExpr": false, + "label": "name", + "beforeExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null, - "updateContext": null + "binop": null }, - "start": 325, - "end": 326, + "value": "extensions", + "start": 257, + "end": 267, "loc": { "start": { "line": 9, - "column": 45 + "column": 7 }, "end": { "line": 9, - "column": 46 + "column": 17 } } }, { "type": { - "label": "const", - "keyword": "const", + "label": "name", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null, - "updateContext": null + "binop": null }, - "value": "const", - "start": 327, - "end": 332, + "value": "from", + "start": 268, + "end": 272, "loc": { "start": { - "line": 10, - "column": 0 + "line": 9, + "column": 18 }, "end": { - "line": 10, - "column": 5 + "line": 9, + "column": 22 } } }, { "type": { - "label": "name", + "label": "string", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, @@ -7124,52 +10139,53 @@ "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "value": "colors", - "start": 333, - "end": 339, + "value": "./extensions.js", + "start": 273, + "end": 290, "loc": { "start": { - "line": 10, - "column": 6 + "line": 9, + "column": 23 }, "end": { - "line": 10, - "column": 12 + "line": 9, + "column": 40 } } }, { "type": { - "label": "=", + "label": ";", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, - "isAssign": true, + "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, - "value": "=", - "start": 340, - "end": 341, + "start": 290, + "end": 291, "loc": { "start": { - "line": 10, - "column": 13 + "line": 9, + "column": 40 }, "end": { - "line": 10, - "column": 14 + "line": 9, + "column": 41 } } }, { "type": { - "label": "name", + "label": "import", + "keyword": "import", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, @@ -7177,26 +10193,27 @@ "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "value": "require", - "start": 342, - "end": 349, + "value": "import", + "start": 292, + "end": 298, "loc": { "start": { "line": 10, - "column": 15 + "column": 0 }, "end": { "line": 10, - "column": 22 + "column": 6 } } }, { "type": { - "label": "(", - "beforeExpr": true, + "label": "name", + "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, @@ -7205,22 +10222,23 @@ "postfix": false, "binop": null }, - "start": 349, - "end": 350, + "value": "colors", + "start": 299, + "end": 305, "loc": { "start": { "line": 10, - "column": 22 + "column": 7 }, "end": { "line": 10, - "column": 23 + "column": 13 } } }, { "type": { - "label": "string", + "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, @@ -7228,45 +10246,46 @@ "isAssign": false, "prefix": false, "postfix": false, - "binop": null, - "updateContext": null + "binop": null }, - "value": "./colors.js", - "start": 350, - "end": 363, + "value": "from", + "start": 306, + "end": 310, "loc": { "start": { "line": 10, - "column": 23 + "column": 14 }, "end": { "line": 10, - "column": 36 + "column": 18 } } }, { "type": { - "label": ")", + "label": "string", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "start": 363, - "end": 364, + "value": "./colors.js", + "start": 311, + "end": 324, "loc": { "start": { "line": 10, - "column": 36 + "column": 19 }, "end": { "line": 10, - "column": 37 + "column": 32 } } }, @@ -7283,16 +10302,16 @@ "binop": null, "updateContext": null }, - "start": 364, - "end": 365, + "start": 324, + "end": 325, "loc": { "start": { "line": 10, - "column": 37 + "column": 32 }, "end": { "line": 10, - "column": 38 + "column": 33 } } }, @@ -7311,8 +10330,8 @@ "updateContext": null }, "value": "const", - "start": 367, - "end": 372, + "start": 327, + "end": 332, "loc": { "start": { "line": 12, @@ -7337,8 +10356,8 @@ "binop": null }, "value": "repl", - "start": 373, - "end": 377, + "start": 333, + "end": 337, "loc": { "start": { "line": 12, @@ -7364,8 +10383,8 @@ "updateContext": null }, "value": "=", - "start": 378, - "end": 379, + "start": 338, + "end": 339, "loc": { "start": { "line": 12, @@ -7389,8 +10408,8 @@ "postfix": false, "binop": null }, - "start": 380, - "end": 381, + "start": 340, + "end": 341, "loc": { "start": { "line": 12, @@ -7414,8 +10433,8 @@ "postfix": false, "binop": null }, - "start": 381, - "end": 382, + "start": 341, + "end": 342, "loc": { "start": { "line": 12, @@ -7440,8 +10459,8 @@ "binop": null, "updateContext": null }, - "start": 383, - "end": 385, + "start": 343, + "end": 345, "loc": { "start": { "line": 12, @@ -7465,8 +10484,8 @@ "postfix": false, "binop": null }, - "start": 386, - "end": 387, + "start": 346, + "end": 347, "loc": { "start": { "line": 12, @@ -7481,8 +10500,8 @@ { "type": "CommentLine", "value": " Create the REPL environment", - "start": 390, - "end": 420, + "start": 350, + "end": 380, "loc": { "start": { "line": 13, @@ -7509,8 +10528,8 @@ "updateContext": null }, "value": "const", - "start": 423, - "end": 428, + "start": 383, + "end": 388, "loc": { "start": { "line": 14, @@ -7535,8 +10554,8 @@ "binop": null }, "value": "topEnv", - "start": 429, - "end": 435, + "start": 389, + "end": 395, "loc": { "start": { "line": 14, @@ -7562,8 +10581,8 @@ "updateContext": null }, "value": "=", - "start": 436, - "end": 437, + "start": 396, + "end": 397, "loc": { "start": { "line": 14, @@ -7588,8 +10607,8 @@ "binop": null }, "value": "Object", - "start": 438, - "end": 444, + "start": 398, + "end": 404, "loc": { "start": { "line": 14, @@ -7614,8 +10633,8 @@ "binop": null, "updateContext": null }, - "start": 444, - "end": 445, + "start": 404, + "end": 405, "loc": { "start": { "line": 14, @@ -7640,8 +10659,8 @@ "binop": null }, "value": "create", - "start": 445, - "end": 451, + "start": 405, + "end": 411, "loc": { "start": { "line": 14, @@ -7665,8 +10684,8 @@ "postfix": false, "binop": null }, - "start": 451, - "end": 452, + "start": 411, + "end": 412, "loc": { "start": { "line": 14, @@ -7691,8 +10710,8 @@ "binop": null }, "value": "TopEnv", - "start": 452, - "end": 458, + "start": 412, + "end": 418, "loc": { "start": { "line": 14, @@ -7716,8 +10735,8 @@ "postfix": false, "binop": null }, - "start": 458, - "end": 459, + "start": 418, + "end": 419, "loc": { "start": { "line": 14, @@ -7742,8 +10761,8 @@ "binop": null, "updateContext": null }, - "start": 459, - "end": 460, + "start": 419, + "end": 420, "loc": { "start": { "line": 14, @@ -7770,8 +10789,8 @@ "updateContext": null }, "value": "const", - "start": 463, - "end": 468, + "start": 423, + "end": 428, "loc": { "start": { "line": 15, @@ -7796,8 +10815,8 @@ "binop": null }, "value": "lexer", - "start": 469, - "end": 474, + "start": 429, + "end": 434, "loc": { "start": { "line": 15, @@ -7823,8 +10842,8 @@ "updateContext": null }, "value": "=", - "start": 475, - "end": 476, + "start": 435, + "end": 436, "loc": { "start": { "line": 15, @@ -7851,8 +10870,8 @@ "updateContext": null }, "value": "new", - "start": 477, - "end": 480, + "start": 437, + "end": 440, "loc": { "start": { "line": 15, @@ -7877,8 +10896,8 @@ "binop": null }, "value": "Lexer", - "start": 481, - "end": 486, + "start": 441, + "end": 446, "loc": { "start": { "line": 15, @@ -7902,8 +10921,8 @@ "postfix": false, "binop": null }, - "start": 486, - "end": 487, + "start": 446, + "end": 447, "loc": { "start": { "line": 15, @@ -7927,8 +10946,8 @@ "postfix": false, "binop": null }, - "start": 487, - "end": 488, + "start": 447, + "end": 448, "loc": { "start": { "line": 15, @@ -7953,8 +10972,8 @@ "binop": null, "updateContext": null }, - "start": 488, - "end": 489, + "start": 448, + "end": 449, "loc": { "start": { "line": 15, @@ -7981,8 +11000,8 @@ "updateContext": null }, "value": "const", - "start": 492, - "end": 497, + "start": 452, + "end": 457, "loc": { "start": { "line": 16, @@ -8007,8 +11026,8 @@ "binop": null }, "value": "parser", - "start": 498, - "end": 504, + "start": 458, + "end": 464, "loc": { "start": { "line": 16, @@ -8034,8 +11053,8 @@ "updateContext": null }, "value": "=", - "start": 505, - "end": 506, + "start": 465, + "end": 466, "loc": { "start": { "line": 16, @@ -8062,8 +11081,8 @@ "updateContext": null }, "value": "new", - "start": 507, - "end": 510, + "start": 467, + "end": 470, "loc": { "start": { "line": 16, @@ -8088,8 +11107,8 @@ "binop": null }, "value": "Parser", - "start": 511, - "end": 517, + "start": 471, + "end": 477, "loc": { "start": { "line": 16, @@ -8113,8 +11132,8 @@ "postfix": false, "binop": null }, - "start": 517, - "end": 518, + "start": 477, + "end": 478, "loc": { "start": { "line": 16, @@ -8138,8 +11157,8 @@ "postfix": false, "binop": null }, - "start": 518, - "end": 519, + "start": 478, + "end": 479, "loc": { "start": { "line": 16, @@ -8164,8 +11183,8 @@ "binop": null, "updateContext": null }, - "start": 519, - "end": 520, + "start": 479, + "end": 480, "loc": { "start": { "line": 16, @@ -8192,8 +11211,8 @@ "updateContext": null }, "value": "let", - "start": 524, - "end": 527, + "start": 484, + "end": 487, "loc": { "start": { "line": 18, @@ -8218,8 +11237,8 @@ "binop": null }, "value": "program", - "start": 528, - "end": 535, + "start": 488, + "end": 495, "loc": { "start": { "line": 18, @@ -8245,8 +11264,8 @@ "updateContext": null }, "value": "=", - "start": 536, - "end": 537, + "start": 496, + "end": 497, "loc": { "start": { "line": 18, @@ -8272,8 +11291,8 @@ "updateContext": null }, "value": "", - "start": 538, - "end": 540, + "start": 498, + "end": 500, "loc": { "start": { "line": 18, @@ -8298,8 +11317,8 @@ "binop": null, "updateContext": null }, - "start": 540, - "end": 541, + "start": 500, + "end": 501, "loc": { "start": { "line": 18, @@ -8326,8 +11345,8 @@ "updateContext": null }, "value": "let", - "start": 544, - "end": 547, + "start": 504, + "end": 507, "loc": { "start": { "line": 19, @@ -8352,8 +11371,8 @@ "binop": null }, "value": "stack", - "start": 548, - "end": 553, + "start": 508, + "end": 513, "loc": { "start": { "line": 19, @@ -8379,8 +11398,8 @@ "updateContext": null }, "value": "=", - "start": 554, - "end": 555, + "start": 514, + "end": 515, "loc": { "start": { "line": 19, @@ -8406,8 +11425,8 @@ "updateContext": null }, "value": 0, - "start": 556, - "end": 557, + "start": 516, + "end": 517, "loc": { "start": { "line": 19, @@ -8432,8 +11451,8 @@ "binop": null, "updateContext": null }, - "start": 557, - "end": 558, + "start": 517, + "end": 518, "loc": { "start": { "line": 19, @@ -8458,8 +11477,8 @@ "binop": null }, "value": "extensions", - "start": 562, - "end": 572, + "start": 522, + "end": 532, "loc": { "start": { "line": 21, @@ -8484,8 +11503,8 @@ "binop": null, "updateContext": null }, - "start": 572, - "end": 573, + "start": 532, + "end": 533, "loc": { "start": { "line": 21, @@ -8510,8 +11529,8 @@ "binop": null }, "value": "eggInfo", - "start": 573, - "end": 580, + "start": 533, + "end": 540, "loc": { "start": { "line": 21, @@ -8535,8 +11554,8 @@ "postfix": false, "binop": null }, - "start": 580, - "end": 581, + "start": 540, + "end": 541, "loc": { "start": { "line": 21, @@ -8560,8 +11579,8 @@ "postfix": false, "binop": null }, - "start": 581, - "end": 582, + "start": 541, + "end": 542, "loc": { "start": { "line": 21, @@ -8586,8 +11605,8 @@ "binop": null, "updateContext": null }, - "start": 582, - "end": 583, + "start": 542, + "end": 543, "loc": { "start": { "line": 21, @@ -8614,8 +11633,8 @@ "updateContext": null }, "value": "try", - "start": 587, - "end": 590, + "start": 547, + "end": 550, "loc": { "start": { "line": 23, @@ -8639,8 +11658,8 @@ "postfix": false, "binop": null }, - "start": 591, - "end": 592, + "start": 551, + "end": 552, "loc": { "start": { "line": 23, @@ -8667,8 +11686,8 @@ "updateContext": null }, "value": "const", - "start": 597, - "end": 602, + "start": 557, + "end": 562, "loc": { "start": { "line": 24, @@ -8693,8 +11712,8 @@ "binop": null }, "value": "rl", - "start": 603, - "end": 605, + "start": 563, + "end": 565, "loc": { "start": { "line": 24, @@ -8720,8 +11739,8 @@ "updateContext": null }, "value": "=", - "start": 606, - "end": 607, + "start": 566, + "end": 567, "loc": { "start": { "line": 24, @@ -8746,8 +11765,8 @@ "binop": null }, "value": "readline", - "start": 608, - "end": 616, + "start": 568, + "end": 576, "loc": { "start": { "line": 24, @@ -8772,8 +11791,8 @@ "binop": null, "updateContext": null }, - "start": 616, - "end": 617, + "start": 576, + "end": 577, "loc": { "start": { "line": 24, @@ -8798,8 +11817,8 @@ "binop": null }, "value": "createInterface", - "start": 617, - "end": 632, + "start": 577, + "end": 592, "loc": { "start": { "line": 24, @@ -8823,8 +11842,8 @@ "postfix": false, "binop": null }, - "start": 632, - "end": 633, + "start": 592, + "end": 593, "loc": { "start": { "line": 24, @@ -8849,8 +11868,8 @@ "binop": null }, "value": "process", - "start": 633, - "end": 640, + "start": 593, + "end": 600, "loc": { "start": { "line": 24, @@ -8875,8 +11894,8 @@ "binop": null, "updateContext": null }, - "start": 640, - "end": 641, + "start": 600, + "end": 601, "loc": { "start": { "line": 24, @@ -8901,8 +11920,8 @@ "binop": null }, "value": "stdin", - "start": 641, - "end": 646, + "start": 601, + "end": 606, "loc": { "start": { "line": 24, @@ -8927,8 +11946,8 @@ "binop": null, "updateContext": null }, - "start": 646, - "end": 647, + "start": 606, + "end": 607, "loc": { "start": { "line": 24, @@ -8953,8 +11972,8 @@ "binop": null }, "value": "process", - "start": 648, - "end": 655, + "start": 608, + "end": 615, "loc": { "start": { "line": 24, @@ -8979,8 +11998,8 @@ "binop": null, "updateContext": null }, - "start": 655, - "end": 656, + "start": 615, + "end": 616, "loc": { "start": { "line": 24, @@ -9005,8 +12024,8 @@ "binop": null }, "value": "stdout", - "start": 656, - "end": 662, + "start": 616, + "end": 622, "loc": { "start": { "line": 24, @@ -9031,8 +12050,8 @@ "binop": null, "updateContext": null }, - "start": 662, - "end": 663, + "start": 622, + "end": 623, "loc": { "start": { "line": 24, @@ -9057,8 +12076,8 @@ "binop": null }, "value": "line", - "start": 664, - "end": 668, + "start": 624, + "end": 628, "loc": { "start": { "line": 24, @@ -9083,8 +12102,8 @@ "binop": null, "updateContext": null }, - "start": 669, - "end": 671, + "start": 629, + "end": 631, "loc": { "start": { "line": 24, @@ -9108,8 +12127,8 @@ "postfix": false, "binop": null }, - "start": 672, - "end": 673, + "start": 632, + "end": 633, "loc": { "start": { "line": 24, @@ -9136,8 +12155,8 @@ "updateContext": null }, "value": "return", - "start": 680, - "end": 686, + "start": 640, + "end": 646, "loc": { "start": { "line": 25, @@ -9162,8 +12181,8 @@ "binop": null }, "value": "extensions", - "start": 687, - "end": 697, + "start": 647, + "end": 657, "loc": { "start": { "line": 25, @@ -9188,8 +12207,8 @@ "binop": null, "updateContext": null }, - "start": 697, - "end": 698, + "start": 657, + "end": 658, "loc": { "start": { "line": 25, @@ -9214,8 +12233,8 @@ "binop": null }, "value": "eggCompleter", - "start": 698, - "end": 710, + "start": 658, + "end": 670, "loc": { "start": { "line": 25, @@ -9239,8 +12258,8 @@ "postfix": false, "binop": null }, - "start": 710, - "end": 711, + "start": 670, + "end": 671, "loc": { "start": { "line": 25, @@ -9265,8 +12284,8 @@ "binop": null }, "value": "line", - "start": 711, - "end": 715, + "start": 671, + "end": 675, "loc": { "start": { "line": 25, @@ -9291,8 +12310,8 @@ "binop": null, "updateContext": null }, - "start": 715, - "end": 716, + "start": 675, + "end": 676, "loc": { "start": { "line": 25, @@ -9317,8 +12336,8 @@ "binop": null }, "value": "topEnv", - "start": 717, - "end": 723, + "start": 677, + "end": 683, "loc": { "start": { "line": 25, @@ -9342,8 +12361,8 @@ "postfix": false, "binop": null }, - "start": 723, - "end": 724, + "start": 683, + "end": 684, "loc": { "start": { "line": 25, @@ -9368,8 +12387,8 @@ "binop": null, "updateContext": null }, - "start": 724, - "end": 725, + "start": 684, + "end": 685, "loc": { "start": { "line": 25, @@ -9393,8 +12412,8 @@ "postfix": false, "binop": null }, - "start": 730, - "end": 731, + "start": 690, + "end": 691, "loc": { "start": { "line": 26, @@ -9418,8 +12437,8 @@ "postfix": false, "binop": null }, - "start": 731, - "end": 732, + "start": 691, + "end": 692, "loc": { "start": { "line": 26, @@ -9444,8 +12463,8 @@ "binop": null, "updateContext": null }, - "start": 732, - "end": 733, + "start": 692, + "end": 693, "loc": { "start": { "line": 26, @@ -9470,8 +12489,8 @@ "binop": null }, "value": "rl", - "start": 739, - "end": 741, + "start": 699, + "end": 701, "loc": { "start": { "line": 28, @@ -9496,8 +12515,8 @@ "binop": null, "updateContext": null }, - "start": 741, - "end": 742, + "start": 701, + "end": 702, "loc": { "start": { "line": 28, @@ -9522,8 +12541,8 @@ "binop": null }, "value": "setPrompt", - "start": 742, - "end": 751, + "start": 702, + "end": 711, "loc": { "start": { "line": 28, @@ -9547,8 +12566,8 @@ "postfix": false, "binop": null }, - "start": 751, - "end": 752, + "start": 711, + "end": 712, "loc": { "start": { "line": 28, @@ -9573,8 +12592,8 @@ "binop": null }, "value": "extensions", - "start": 752, - "end": 762, + "start": 712, + "end": 722, "loc": { "start": { "line": 28, @@ -9599,8 +12618,8 @@ "binop": null, "updateContext": null }, - "start": 762, - "end": 763, + "start": 722, + "end": 723, "loc": { "start": { "line": 28, @@ -9625,8 +12644,8 @@ "binop": null }, "value": "getPromptLine", - "start": 763, - "end": 776, + "start": 723, + "end": 736, "loc": { "start": { "line": 28, @@ -9650,8 +12669,8 @@ "postfix": false, "binop": null }, - "start": 776, - "end": 777, + "start": 736, + "end": 737, "loc": { "start": { "line": 28, @@ -9675,8 +12694,8 @@ "postfix": false, "binop": null }, - "start": 777, - "end": 778, + "start": 737, + "end": 738, "loc": { "start": { "line": 28, @@ -9700,8 +12719,8 @@ "postfix": false, "binop": null }, - "start": 778, - "end": 779, + "start": 738, + "end": 739, "loc": { "start": { "line": 28, @@ -9726,8 +12745,8 @@ "binop": null, "updateContext": null }, - "start": 779, - "end": 780, + "start": 739, + "end": 740, "loc": { "start": { "line": 28, @@ -9752,8 +12771,8 @@ "binop": null }, "value": "rl", - "start": 785, - "end": 787, + "start": 745, + "end": 747, "loc": { "start": { "line": 29, @@ -9778,8 +12797,8 @@ "binop": null, "updateContext": null }, - "start": 787, - "end": 788, + "start": 747, + "end": 748, "loc": { "start": { "line": 29, @@ -9804,8 +12823,8 @@ "binop": null }, "value": "prompt", - "start": 788, - "end": 794, + "start": 748, + "end": 754, "loc": { "start": { "line": 29, @@ -9829,8 +12848,8 @@ "postfix": false, "binop": null }, - "start": 794, - "end": 795, + "start": 754, + "end": 755, "loc": { "start": { "line": 29, @@ -9854,8 +12873,8 @@ "postfix": false, "binop": null }, - "start": 795, - "end": 796, + "start": 755, + "end": 756, "loc": { "start": { "line": 29, @@ -9880,8 +12899,8 @@ "binop": null, "updateContext": null }, - "start": 796, - "end": 797, + "start": 756, + "end": 757, "loc": { "start": { "line": 29, @@ -9906,8 +12925,8 @@ "binop": null }, "value": "rl", - "start": 803, - "end": 805, + "start": 763, + "end": 765, "loc": { "start": { "line": 31, @@ -9932,8 +12951,8 @@ "binop": null, "updateContext": null }, - "start": 805, - "end": 806, + "start": 765, + "end": 766, "loc": { "start": { "line": 31, @@ -9958,8 +12977,8 @@ "binop": null }, "value": "on", - "start": 806, - "end": 808, + "start": 766, + "end": 768, "loc": { "start": { "line": 31, @@ -9983,8 +13002,8 @@ "postfix": false, "binop": null }, - "start": 808, - "end": 809, + "start": 768, + "end": 769, "loc": { "start": { "line": 31, @@ -10010,8 +13029,8 @@ "updateContext": null }, "value": "line", - "start": 809, - "end": 815, + "start": 769, + "end": 775, "loc": { "start": { "line": 31, @@ -10036,8 +13055,8 @@ "binop": null, "updateContext": null }, - "start": 815, - "end": 816, + "start": 775, + "end": 776, "loc": { "start": { "line": 31, @@ -10062,8 +13081,8 @@ "binop": null }, "value": "line", - "start": 817, - "end": 821, + "start": 777, + "end": 781, "loc": { "start": { "line": 31, @@ -10088,8 +13107,8 @@ "binop": null, "updateContext": null }, - "start": 822, - "end": 824, + "start": 782, + "end": 784, "loc": { "start": { "line": 31, @@ -10113,8 +13132,8 @@ "postfix": false, "binop": null }, - "start": 825, - "end": 826, + "start": 785, + "end": 786, "loc": { "start": { "line": 31, @@ -10139,8 +13158,8 @@ "binop": null }, "value": "program", - "start": 833, - "end": 840, + "start": 793, + "end": 800, "loc": { "start": { "line": 32, @@ -10166,8 +13185,8 @@ "updateContext": null }, "value": "+=", - "start": 841, - "end": 843, + "start": 801, + "end": 803, "loc": { "start": { "line": 32, @@ -10192,8 +13211,8 @@ "binop": null }, "value": "line", - "start": 844, - "end": 848, + "start": 804, + "end": 808, "loc": { "start": { "line": 32, @@ -10219,8 +13238,8 @@ "updateContext": null }, "value": "+", - "start": 849, - "end": 850, + "start": 809, + "end": 810, "loc": { "start": { "line": 32, @@ -10246,8 +13265,8 @@ "updateContext": null }, "value": "\n", - "start": 851, - "end": 855, + "start": 811, + "end": 815, "loc": { "start": { "line": 32, @@ -10272,8 +13291,8 @@ "binop": null, "updateContext": null }, - "start": 855, - "end": 856, + "start": 815, + "end": 816, "loc": { "start": { "line": 32, @@ -10288,8 +13307,8 @@ { "type": "CommentLine", "value": " Count the number of LPS (+) or RPS (-)", - "start": 864, - "end": 905, + "start": 824, + "end": 865, "loc": { "start": { "line": 34, @@ -10314,8 +13333,8 @@ "binop": null }, "value": "stack", - "start": 912, - "end": 917, + "start": 872, + "end": 877, "loc": { "start": { "line": 35, @@ -10341,8 +13360,8 @@ "updateContext": null }, "value": "=", - "start": 918, - "end": 919, + "start": 878, + "end": 879, "loc": { "start": { "line": 35, @@ -10367,8 +13386,8 @@ "binop": null }, "value": "lexer", - "start": 920, - "end": 925, + "start": 880, + "end": 885, "loc": { "start": { "line": 35, @@ -10393,8 +13412,8 @@ "binop": null, "updateContext": null }, - "start": 925, - "end": 926, + "start": 885, + "end": 886, "loc": { "start": { "line": 35, @@ -10419,8 +13438,8 @@ "binop": null }, "value": "getParBalance", - "start": 926, - "end": 939, + "start": 886, + "end": 899, "loc": { "start": { "line": 35, @@ -10444,8 +13463,8 @@ "postfix": false, "binop": null }, - "start": 939, - "end": 940, + "start": 899, + "end": 900, "loc": { "start": { "line": 35, @@ -10470,8 +13489,8 @@ "binop": null }, "value": "program", - "start": 940, - "end": 947, + "start": 900, + "end": 907, "loc": { "start": { "line": 35, @@ -10495,8 +13514,8 @@ "postfix": false, "binop": null }, - "start": 947, - "end": 948, + "start": 907, + "end": 908, "loc": { "start": { "line": 35, @@ -10521,8 +13540,8 @@ "binop": null, "updateContext": null }, - "start": 948, - "end": 949, + "start": 908, + "end": 909, "loc": { "start": { "line": 35, @@ -10549,8 +13568,8 @@ "updateContext": null }, "value": "if", - "start": 957, - "end": 959, + "start": 917, + "end": 919, "loc": { "start": { "line": 37, @@ -10574,8 +13593,8 @@ "postfix": false, "binop": null }, - "start": 960, - "end": 961, + "start": 920, + "end": 921, "loc": { "start": { "line": 37, @@ -10600,8 +13619,8 @@ "binop": null }, "value": "stack", - "start": 961, - "end": 966, + "start": 921, + "end": 926, "loc": { "start": { "line": 37, @@ -10627,8 +13646,8 @@ "updateContext": null }, "value": "<=", - "start": 967, - "end": 969, + "start": 927, + "end": 929, "loc": { "start": { "line": 37, @@ -10654,8 +13673,8 @@ "updateContext": null }, "value": 0, - "start": 970, - "end": 971, + "start": 930, + "end": 931, "loc": { "start": { "line": 37, @@ -10679,8 +13698,8 @@ "postfix": false, "binop": null }, - "start": 971, - "end": 972, + "start": 931, + "end": 932, "loc": { "start": { "line": 37, @@ -10704,8 +13723,8 @@ "postfix": false, "binop": null }, - "start": 973, - "end": 974, + "start": 933, + "end": 934, "loc": { "start": { "line": 37, @@ -10732,8 +13751,8 @@ "updateContext": null }, "value": "try", - "start": 983, - "end": 986, + "start": 943, + "end": 946, "loc": { "start": { "line": 38, @@ -10757,8 +13776,8 @@ "postfix": false, "binop": null }, - "start": 987, - "end": 988, + "start": 947, + "end": 948, "loc": { "start": { "line": 38, @@ -10783,8 +13802,8 @@ "binop": null }, "value": "Eggvm", - "start": 999, - "end": 1004, + "start": 959, + "end": 964, "loc": { "start": { "line": 39, @@ -10809,8 +13828,8 @@ "binop": null, "updateContext": null }, - "start": 1004, - "end": 1005, + "start": 964, + "end": 965, "loc": { "start": { "line": 39, @@ -10835,8 +13854,8 @@ "binop": null }, "value": "eval", - "start": 1005, - "end": 1009, + "start": 965, + "end": 969, "loc": { "start": { "line": 39, @@ -10860,8 +13879,8 @@ "postfix": false, "binop": null }, - "start": 1009, - "end": 1010, + "start": 969, + "end": 970, "loc": { "start": { "line": 39, @@ -10886,8 +13905,8 @@ "binop": null }, "value": "parser", - "start": 1010, - "end": 1016, + "start": 970, + "end": 976, "loc": { "start": { "line": 39, @@ -10912,8 +13931,8 @@ "binop": null, "updateContext": null }, - "start": 1016, - "end": 1017, + "start": 976, + "end": 977, "loc": { "start": { "line": 39, @@ -10938,8 +13957,8 @@ "binop": null }, "value": "parse", - "start": 1017, - "end": 1022, + "start": 977, + "end": 982, "loc": { "start": { "line": 39, @@ -10963,8 +13982,8 @@ "postfix": false, "binop": null }, - "start": 1022, - "end": 1023, + "start": 982, + "end": 983, "loc": { "start": { "line": 39, @@ -10989,8 +14008,8 @@ "binop": null }, "value": "program", - "start": 1023, - "end": 1030, + "start": 983, + "end": 990, "loc": { "start": { "line": 39, @@ -11014,8 +14033,8 @@ "postfix": false, "binop": null }, - "start": 1030, - "end": 1031, + "start": 990, + "end": 991, "loc": { "start": { "line": 39, @@ -11040,8 +14059,8 @@ "binop": null, "updateContext": null }, - "start": 1031, - "end": 1032, + "start": 991, + "end": 992, "loc": { "start": { "line": 39, @@ -11066,8 +14085,8 @@ "binop": null }, "value": "topEnv", - "start": 1033, - "end": 1039, + "start": 993, + "end": 999, "loc": { "start": { "line": 39, @@ -11091,8 +14110,8 @@ "postfix": false, "binop": null }, - "start": 1039, - "end": 1040, + "start": 999, + "end": 1000, "loc": { "start": { "line": 39, @@ -11117,8 +14136,8 @@ "binop": null, "updateContext": null }, - "start": 1040, - "end": 1041, + "start": 1000, + "end": 1001, "loc": { "start": { "line": 39, @@ -11142,8 +14161,8 @@ "postfix": false, "binop": null }, - "start": 1050, - "end": 1051, + "start": 1010, + "end": 1011, "loc": { "start": { "line": 40, @@ -11170,8 +14189,8 @@ "updateContext": null }, "value": "catch", - "start": 1052, - "end": 1057, + "start": 1012, + "end": 1017, "loc": { "start": { "line": 40, @@ -11195,8 +14214,8 @@ "postfix": false, "binop": null }, - "start": 1058, - "end": 1059, + "start": 1018, + "end": 1019, "loc": { "start": { "line": 40, @@ -11221,8 +14240,8 @@ "binop": null }, "value": "err", - "start": 1059, - "end": 1062, + "start": 1019, + "end": 1022, "loc": { "start": { "line": 40, @@ -11246,8 +14265,8 @@ "postfix": false, "binop": null }, - "start": 1062, - "end": 1063, + "start": 1022, + "end": 1023, "loc": { "start": { "line": 40, @@ -11271,8 +14290,8 @@ "postfix": false, "binop": null }, - "start": 1064, - "end": 1065, + "start": 1024, + "end": 1025, "loc": { "start": { "line": 40, @@ -11297,8 +14316,8 @@ "binop": null }, "value": "console", - "start": 1076, - "end": 1083, + "start": 1036, + "end": 1043, "loc": { "start": { "line": 41, @@ -11323,8 +14342,8 @@ "binop": null, "updateContext": null }, - "start": 1083, - "end": 1084, + "start": 1043, + "end": 1044, "loc": { "start": { "line": 41, @@ -11349,8 +14368,8 @@ "binop": null }, "value": "log", - "start": 1084, - "end": 1087, + "start": 1044, + "end": 1047, "loc": { "start": { "line": 41, @@ -11374,8 +14393,8 @@ "postfix": false, "binop": null }, - "start": 1087, - "end": 1088, + "start": 1047, + "end": 1048, "loc": { "start": { "line": 41, @@ -11399,8 +14418,8 @@ "postfix": false, "binop": null }, - "start": 1088, - "end": 1089, + "start": 1048, + "end": 1049, "loc": { "start": { "line": 41, @@ -11426,8 +14445,8 @@ "updateContext": null }, "value": "", - "start": 1089, - "end": 1089, + "start": 1049, + "end": 1049, "loc": { "start": { "line": 41, @@ -11451,8 +14470,8 @@ "postfix": false, "binop": null }, - "start": 1089, - "end": 1091, + "start": 1049, + "end": 1051, "loc": { "start": { "line": 41, @@ -11477,8 +14496,8 @@ "binop": null }, "value": "colors", - "start": 1091, - "end": 1097, + "start": 1051, + "end": 1057, "loc": { "start": { "line": 41, @@ -11503,8 +14522,8 @@ "binop": null, "updateContext": null }, - "start": 1097, - "end": 1098, + "start": 1057, + "end": 1058, "loc": { "start": { "line": 41, @@ -11529,8 +14548,8 @@ "binop": null }, "value": "RED", - "start": 1098, - "end": 1101, + "start": 1058, + "end": 1061, "loc": { "start": { "line": 41, @@ -11554,8 +14573,8 @@ "postfix": false, "binop": null }, - "start": 1101, - "end": 1102, + "start": 1061, + "end": 1062, "loc": { "start": { "line": 41, @@ -11581,8 +14600,8 @@ "updateContext": null }, "value": " Error:: ", - "start": 1102, - "end": 1111, + "start": 1062, + "end": 1071, "loc": { "start": { "line": 41, @@ -11606,8 +14625,8 @@ "postfix": false, "binop": null }, - "start": 1111, - "end": 1113, + "start": 1071, + "end": 1073, "loc": { "start": { "line": 41, @@ -11632,8 +14651,8 @@ "binop": null }, "value": "err", - "start": 1113, - "end": 1116, + "start": 1073, + "end": 1076, "loc": { "start": { "line": 41, @@ -11657,8 +14676,8 @@ "postfix": false, "binop": null }, - "start": 1116, - "end": 1117, + "start": 1076, + "end": 1077, "loc": { "start": { "line": 41, @@ -11684,8 +14703,8 @@ "updateContext": null }, "value": " ", - "start": 1117, - "end": 1118, + "start": 1077, + "end": 1078, "loc": { "start": { "line": 41, @@ -11709,8 +14728,8 @@ "postfix": false, "binop": null }, - "start": 1118, - "end": 1120, + "start": 1078, + "end": 1080, "loc": { "start": { "line": 41, @@ -11735,8 +14754,8 @@ "binop": null }, "value": "colors", - "start": 1120, - "end": 1126, + "start": 1080, + "end": 1086, "loc": { "start": { "line": 41, @@ -11761,8 +14780,8 @@ "binop": null, "updateContext": null }, - "start": 1126, - "end": 1127, + "start": 1086, + "end": 1087, "loc": { "start": { "line": 41, @@ -11787,8 +14806,8 @@ "binop": null }, "value": "DEFAULT", - "start": 1127, - "end": 1134, + "start": 1087, + "end": 1094, "loc": { "start": { "line": 41, @@ -11812,8 +14831,8 @@ "postfix": false, "binop": null }, - "start": 1134, - "end": 1135, + "start": 1094, + "end": 1095, "loc": { "start": { "line": 41, @@ -11839,8 +14858,8 @@ "updateContext": null }, "value": "", - "start": 1135, - "end": 1135, + "start": 1095, + "end": 1095, "loc": { "start": { "line": 41, @@ -11864,8 +14883,8 @@ "postfix": false, "binop": null }, - "start": 1135, - "end": 1136, + "start": 1095, + "end": 1096, "loc": { "start": { "line": 41, @@ -11889,8 +14908,8 @@ "postfix": false, "binop": null }, - "start": 1136, - "end": 1137, + "start": 1096, + "end": 1097, "loc": { "start": { "line": 41, @@ -11915,8 +14934,8 @@ "binop": null, "updateContext": null }, - "start": 1137, - "end": 1138, + "start": 1097, + "end": 1098, "loc": { "start": { "line": 41, @@ -11940,8 +14959,8 @@ "postfix": false, "binop": null }, - "start": 1147, - "end": 1148, + "start": 1107, + "end": 1108, "loc": { "start": { "line": 42, @@ -11968,8 +14987,8 @@ "updateContext": null }, "value": "finally", - "start": 1149, - "end": 1156, + "start": 1109, + "end": 1116, "loc": { "start": { "line": 42, @@ -11993,8 +15012,8 @@ "postfix": false, "binop": null }, - "start": 1157, - "end": 1158, + "start": 1117, + "end": 1118, "loc": { "start": { "line": 42, @@ -12019,8 +15038,8 @@ "binop": null }, "value": "program", - "start": 1169, - "end": 1176, + "start": 1129, + "end": 1136, "loc": { "start": { "line": 43, @@ -12046,8 +15065,8 @@ "updateContext": null }, "value": "=", - "start": 1177, - "end": 1178, + "start": 1137, + "end": 1138, "loc": { "start": { "line": 43, @@ -12073,8 +15092,8 @@ "updateContext": null }, "value": "", - "start": 1179, - "end": 1181, + "start": 1139, + "end": 1141, "loc": { "start": { "line": 43, @@ -12099,8 +15118,8 @@ "binop": null, "updateContext": null }, - "start": 1181, - "end": 1182, + "start": 1141, + "end": 1142, "loc": { "start": { "line": 43, @@ -12125,8 +15144,8 @@ "binop": null }, "value": "stack", - "start": 1193, - "end": 1198, + "start": 1153, + "end": 1158, "loc": { "start": { "line": 44, @@ -12152,8 +15171,8 @@ "updateContext": null }, "value": "=", - "start": 1199, - "end": 1200, + "start": 1159, + "end": 1160, "loc": { "start": { "line": 44, @@ -12179,8 +15198,8 @@ "updateContext": null }, "value": 0, - "start": 1201, - "end": 1202, + "start": 1161, + "end": 1162, "loc": { "start": { "line": 44, @@ -12205,8 +15224,8 @@ "binop": null, "updateContext": null }, - "start": 1202, - "end": 1203, + "start": 1162, + "end": 1163, "loc": { "start": { "line": 44, @@ -12230,8 +15249,8 @@ "postfix": false, "binop": null }, - "start": 1212, - "end": 1213, + "start": 1172, + "end": 1173, "loc": { "start": { "line": 45, @@ -12255,8 +15274,8 @@ "postfix": false, "binop": null }, - "start": 1220, - "end": 1221, + "start": 1180, + "end": 1181, "loc": { "start": { "line": 46, @@ -12281,8 +15300,8 @@ "binop": null }, "value": "rl", - "start": 1229, - "end": 1231, + "start": 1189, + "end": 1191, "loc": { "start": { "line": 48, @@ -12307,8 +15326,8 @@ "binop": null, "updateContext": null }, - "start": 1231, - "end": 1232, + "start": 1191, + "end": 1192, "loc": { "start": { "line": 48, @@ -12333,8 +15352,8 @@ "binop": null }, "value": "setPrompt", - "start": 1232, - "end": 1241, + "start": 1192, + "end": 1201, "loc": { "start": { "line": 48, @@ -12358,8 +15377,8 @@ "postfix": false, "binop": null }, - "start": 1241, - "end": 1242, + "start": 1201, + "end": 1202, "loc": { "start": { "line": 48, @@ -12384,8 +15403,8 @@ "binop": null }, "value": "extensions", - "start": 1242, - "end": 1252, + "start": 1202, + "end": 1212, "loc": { "start": { "line": 48, @@ -12410,8 +15429,8 @@ "binop": null, "updateContext": null }, - "start": 1252, - "end": 1253, + "start": 1212, + "end": 1213, "loc": { "start": { "line": 48, @@ -12436,8 +15455,8 @@ "binop": null }, "value": "getPromptLine", - "start": 1253, - "end": 1266, + "start": 1213, + "end": 1226, "loc": { "start": { "line": 48, @@ -12461,8 +15480,8 @@ "postfix": false, "binop": null }, - "start": 1266, - "end": 1267, + "start": 1226, + "end": 1227, "loc": { "start": { "line": 48, @@ -12486,8 +15505,8 @@ "postfix": false, "binop": null }, - "start": 1267, - "end": 1268, + "start": 1227, + "end": 1228, "loc": { "start": { "line": 48, @@ -12513,8 +15532,8 @@ "updateContext": null }, "value": "+", - "start": 1269, - "end": 1270, + "start": 1229, + "end": 1230, "loc": { "start": { "line": 48, @@ -12540,8 +15559,8 @@ "updateContext": null }, "value": "..", - "start": 1271, - "end": 1275, + "start": 1231, + "end": 1235, "loc": { "start": { "line": 48, @@ -12566,8 +15585,8 @@ "binop": null, "updateContext": null }, - "start": 1275, - "end": 1276, + "start": 1235, + "end": 1236, "loc": { "start": { "line": 48, @@ -12592,8 +15611,8 @@ "binop": null }, "value": "repeat", - "start": 1276, - "end": 1282, + "start": 1236, + "end": 1242, "loc": { "start": { "line": 48, @@ -12617,8 +15636,8 @@ "postfix": false, "binop": null }, - "start": 1282, - "end": 1283, + "start": 1242, + "end": 1243, "loc": { "start": { "line": 48, @@ -12643,8 +15662,8 @@ "binop": null }, "value": "stack", - "start": 1283, - "end": 1288, + "start": 1243, + "end": 1248, "loc": { "start": { "line": 48, @@ -12668,8 +15687,8 @@ "postfix": false, "binop": null }, - "start": 1288, - "end": 1289, + "start": 1248, + "end": 1249, "loc": { "start": { "line": 48, @@ -12693,8 +15712,8 @@ "postfix": false, "binop": null }, - "start": 1289, - "end": 1290, + "start": 1249, + "end": 1250, "loc": { "start": { "line": 48, @@ -12719,8 +15738,8 @@ "binop": null, "updateContext": null }, - "start": 1290, - "end": 1291, + "start": 1250, + "end": 1251, "loc": { "start": { "line": 48, @@ -12745,8 +15764,8 @@ "binop": null }, "value": "rl", - "start": 1298, - "end": 1300, + "start": 1258, + "end": 1260, "loc": { "start": { "line": 49, @@ -12771,8 +15790,8 @@ "binop": null, "updateContext": null }, - "start": 1300, - "end": 1301, + "start": 1260, + "end": 1261, "loc": { "start": { "line": 49, @@ -12797,8 +15816,8 @@ "binop": null }, "value": "prompt", - "start": 1301, - "end": 1307, + "start": 1261, + "end": 1267, "loc": { "start": { "line": 49, @@ -12822,8 +15841,8 @@ "postfix": false, "binop": null }, - "start": 1307, - "end": 1308, + "start": 1267, + "end": 1268, "loc": { "start": { "line": 49, @@ -12847,8 +15866,8 @@ "postfix": false, "binop": null }, - "start": 1308, - "end": 1309, + "start": 1268, + "end": 1269, "loc": { "start": { "line": 49, @@ -12873,8 +15892,8 @@ "binop": null, "updateContext": null }, - "start": 1309, - "end": 1310, + "start": 1269, + "end": 1270, "loc": { "start": { "line": 49, @@ -12898,8 +15917,8 @@ "postfix": false, "binop": null }, - "start": 1315, - "end": 1316, + "start": 1275, + "end": 1276, "loc": { "start": { "line": 50, @@ -12923,8 +15942,8 @@ "postfix": false, "binop": null }, - "start": 1316, - "end": 1317, + "start": 1276, + "end": 1277, "loc": { "start": { "line": 50, @@ -12949,8 +15968,8 @@ "binop": null, "updateContext": null }, - "start": 1317, - "end": 1318, + "start": 1277, + "end": 1278, "loc": { "start": { "line": 50, @@ -12975,8 +15994,8 @@ "binop": null }, "value": "rl", - "start": 1324, - "end": 1326, + "start": 1284, + "end": 1286, "loc": { "start": { "line": 52, @@ -13001,8 +16020,8 @@ "binop": null, "updateContext": null }, - "start": 1326, - "end": 1327, + "start": 1286, + "end": 1287, "loc": { "start": { "line": 52, @@ -13027,8 +16046,8 @@ "binop": null }, "value": "on", - "start": 1327, - "end": 1329, + "start": 1287, + "end": 1289, "loc": { "start": { "line": 52, @@ -13052,8 +16071,8 @@ "postfix": false, "binop": null }, - "start": 1329, - "end": 1330, + "start": 1289, + "end": 1290, "loc": { "start": { "line": 52, @@ -13079,8 +16098,8 @@ "updateContext": null }, "value": "close", - "start": 1330, - "end": 1337, + "start": 1290, + "end": 1297, "loc": { "start": { "line": 52, @@ -13105,8 +16124,8 @@ "binop": null, "updateContext": null }, - "start": 1337, - "end": 1338, + "start": 1297, + "end": 1298, "loc": { "start": { "line": 52, @@ -13131,8 +16150,8 @@ "binop": null }, "value": "extensions", - "start": 1339, - "end": 1349, + "start": 1299, + "end": 1309, "loc": { "start": { "line": 52, @@ -13157,8 +16176,8 @@ "binop": null, "updateContext": null }, - "start": 1349, - "end": 1350, + "start": 1309, + "end": 1310, "loc": { "start": { "line": 52, @@ -13183,8 +16202,8 @@ "binop": null }, "value": "eggExit", - "start": 1350, - "end": 1357, + "start": 1310, + "end": 1317, "loc": { "start": { "line": 52, @@ -13208,8 +16227,8 @@ "postfix": false, "binop": null }, - "start": 1357, - "end": 1358, + "start": 1317, + "end": 1318, "loc": { "start": { "line": 52, @@ -13234,8 +16253,8 @@ "binop": null, "updateContext": null }, - "start": 1358, - "end": 1359, + "start": 1318, + "end": 1319, "loc": { "start": { "line": 52, @@ -13260,8 +16279,8 @@ "binop": null }, "value": "rl", - "start": 1365, - "end": 1367, + "start": 1325, + "end": 1327, "loc": { "start": { "line": 54, @@ -13286,8 +16305,8 @@ "binop": null, "updateContext": null }, - "start": 1367, - "end": 1368, + "start": 1327, + "end": 1328, "loc": { "start": { "line": 54, @@ -13312,8 +16331,8 @@ "binop": null }, "value": "on", - "start": 1368, - "end": 1370, + "start": 1328, + "end": 1330, "loc": { "start": { "line": 54, @@ -13337,8 +16356,8 @@ "postfix": false, "binop": null }, - "start": 1370, - "end": 1371, + "start": 1330, + "end": 1331, "loc": { "start": { "line": 54, @@ -13364,8 +16383,8 @@ "updateContext": null }, "value": "SIGINT", - "start": 1371, - "end": 1379, + "start": 1331, + "end": 1339, "loc": { "start": { "line": 54, @@ -13390,8 +16409,8 @@ "binop": null, "updateContext": null }, - "start": 1379, - "end": 1380, + "start": 1339, + "end": 1340, "loc": { "start": { "line": 54, @@ -13415,8 +16434,8 @@ "postfix": false, "binop": null }, - "start": 1381, - "end": 1382, + "start": 1341, + "end": 1342, "loc": { "start": { "line": 54, @@ -13440,8 +16459,8 @@ "postfix": false, "binop": null }, - "start": 1382, - "end": 1383, + "start": 1342, + "end": 1343, "loc": { "start": { "line": 54, @@ -13466,8 +16485,8 @@ "binop": null, "updateContext": null }, - "start": 1384, - "end": 1386, + "start": 1344, + "end": 1346, "loc": { "start": { "line": 54, @@ -13491,8 +16510,8 @@ "postfix": false, "binop": null }, - "start": 1387, - "end": 1388, + "start": 1347, + "end": 1348, "loc": { "start": { "line": 54, @@ -13517,8 +16536,8 @@ "binop": null }, "value": "console", - "start": 1395, - "end": 1402, + "start": 1355, + "end": 1362, "loc": { "start": { "line": 55, @@ -13543,8 +16562,8 @@ "binop": null, "updateContext": null }, - "start": 1402, - "end": 1403, + "start": 1362, + "end": 1363, "loc": { "start": { "line": 55, @@ -13569,8 +16588,8 @@ "binop": null }, "value": "log", - "start": 1403, - "end": 1406, + "start": 1363, + "end": 1366, "loc": { "start": { "line": 55, @@ -13594,8 +16613,8 @@ "postfix": false, "binop": null }, - "start": 1406, - "end": 1407, + "start": 1366, + "end": 1367, "loc": { "start": { "line": 55, @@ -13619,8 +16638,8 @@ "postfix": false, "binop": null }, - "start": 1416, - "end": 1417, + "start": 1376, + "end": 1377, "loc": { "start": { "line": 56, @@ -13646,8 +16665,8 @@ "updateContext": null }, "value": "\n", - "start": 1417, - "end": 1419, + "start": 1377, + "end": 1379, "loc": { "start": { "line": 56, @@ -13671,8 +16690,8 @@ "postfix": false, "binop": null }, - "start": 1419, - "end": 1421, + "start": 1379, + "end": 1381, "loc": { "start": { "line": 56, @@ -13697,8 +16716,8 @@ "binop": null }, "value": "colors", - "start": 1421, - "end": 1427, + "start": 1381, + "end": 1387, "loc": { "start": { "line": 56, @@ -13723,8 +16742,8 @@ "binop": null, "updateContext": null }, - "start": 1427, - "end": 1428, + "start": 1387, + "end": 1388, "loc": { "start": { "line": 56, @@ -13749,8 +16768,8 @@ "binop": null }, "value": "GREEN", - "start": 1428, - "end": 1433, + "start": 1388, + "end": 1393, "loc": { "start": { "line": 56, @@ -13774,8 +16793,8 @@ "postfix": false, "binop": null }, - "start": 1433, - "end": 1434, + "start": 1393, + "end": 1394, "loc": { "start": { "line": 56, @@ -13801,8 +16820,8 @@ "updateContext": null }, "value": "\n--> Expression discarded ", - "start": 1434, - "end": 1461, + "start": 1394, + "end": 1421, "loc": { "start": { "line": 56, @@ -13826,8 +16845,8 @@ "postfix": false, "binop": null }, - "start": 1461, - "end": 1463, + "start": 1421, + "end": 1423, "loc": { "start": { "line": 56, @@ -13852,8 +16871,8 @@ "binop": null }, "value": "colors", - "start": 1463, - "end": 1469, + "start": 1423, + "end": 1429, "loc": { "start": { "line": 56, @@ -13878,8 +16897,8 @@ "binop": null, "updateContext": null }, - "start": 1469, - "end": 1470, + "start": 1429, + "end": 1430, "loc": { "start": { "line": 56, @@ -13904,8 +16923,8 @@ "binop": null }, "value": "DEFAULT", - "start": 1470, - "end": 1477, + "start": 1430, + "end": 1437, "loc": { "start": { "line": 56, @@ -13929,8 +16948,8 @@ "postfix": false, "binop": null }, - "start": 1477, - "end": 1478, + "start": 1437, + "end": 1438, "loc": { "start": { "line": 56, @@ -13956,8 +16975,8 @@ "updateContext": null }, "value": "", - "start": 1478, - "end": 1478, + "start": 1438, + "end": 1438, "loc": { "start": { "line": 56, @@ -13981,8 +17000,8 @@ "postfix": false, "binop": null }, - "start": 1478, - "end": 1479, + "start": 1438, + "end": 1439, "loc": { "start": { "line": 56, @@ -14006,8 +17025,8 @@ "postfix": false, "binop": null }, - "start": 1486, - "end": 1487, + "start": 1446, + "end": 1447, "loc": { "start": { "line": 57, @@ -14032,8 +17051,8 @@ "binop": null, "updateContext": null }, - "start": 1487, - "end": 1488, + "start": 1447, + "end": 1448, "loc": { "start": { "line": 57, @@ -14058,8 +17077,8 @@ "binop": null }, "value": "program", - "start": 1496, - "end": 1503, + "start": 1456, + "end": 1463, "loc": { "start": { "line": 59, @@ -14085,8 +17104,8 @@ "updateContext": null }, "value": "=", - "start": 1504, - "end": 1505, + "start": 1464, + "end": 1465, "loc": { "start": { "line": 59, @@ -14112,8 +17131,8 @@ "updateContext": null }, "value": "", - "start": 1506, - "end": 1508, + "start": 1466, + "end": 1468, "loc": { "start": { "line": 59, @@ -14138,8 +17157,8 @@ "binop": null, "updateContext": null }, - "start": 1508, - "end": 1509, + "start": 1468, + "end": 1469, "loc": { "start": { "line": 59, @@ -14164,8 +17183,8 @@ "binop": null }, "value": "stack", - "start": 1516, - "end": 1521, + "start": 1476, + "end": 1481, "loc": { "start": { "line": 60, @@ -14191,8 +17210,8 @@ "updateContext": null }, "value": "=", - "start": 1522, - "end": 1523, + "start": 1482, + "end": 1483, "loc": { "start": { "line": 60, @@ -14218,8 +17237,8 @@ "updateContext": null }, "value": 0, - "start": 1524, - "end": 1525, + "start": 1484, + "end": 1485, "loc": { "start": { "line": 60, @@ -14244,8 +17263,8 @@ "binop": null, "updateContext": null }, - "start": 1525, - "end": 1526, + "start": 1485, + "end": 1486, "loc": { "start": { "line": 60, @@ -14270,8 +17289,8 @@ "binop": null }, "value": "rl", - "start": 1534, - "end": 1536, + "start": 1494, + "end": 1496, "loc": { "start": { "line": 62, @@ -14296,8 +17315,8 @@ "binop": null, "updateContext": null }, - "start": 1536, - "end": 1537, + "start": 1496, + "end": 1497, "loc": { "start": { "line": 62, @@ -14322,8 +17341,8 @@ "binop": null }, "value": "clearLine", - "start": 1537, - "end": 1546, + "start": 1497, + "end": 1506, "loc": { "start": { "line": 62, @@ -14347,8 +17366,8 @@ "postfix": false, "binop": null }, - "start": 1546, - "end": 1547, + "start": 1506, + "end": 1507, "loc": { "start": { "line": 62, @@ -14373,8 +17392,8 @@ "binop": null }, "value": "process", - "start": 1547, - "end": 1554, + "start": 1507, + "end": 1514, "loc": { "start": { "line": 62, @@ -14399,8 +17418,8 @@ "binop": null, "updateContext": null }, - "start": 1554, - "end": 1555, + "start": 1514, + "end": 1515, "loc": { "start": { "line": 62, @@ -14425,8 +17444,8 @@ "binop": null }, "value": "stdout", - "start": 1555, - "end": 1561, + "start": 1515, + "end": 1521, "loc": { "start": { "line": 62, @@ -14450,8 +17469,8 @@ "postfix": false, "binop": null }, - "start": 1561, - "end": 1562, + "start": 1521, + "end": 1522, "loc": { "start": { "line": 62, @@ -14476,8 +17495,8 @@ "binop": null, "updateContext": null }, - "start": 1562, - "end": 1563, + "start": 1522, + "end": 1523, "loc": { "start": { "line": 62, @@ -14502,8 +17521,8 @@ "binop": null }, "value": "rl", - "start": 1571, - "end": 1573, + "start": 1531, + "end": 1533, "loc": { "start": { "line": 64, @@ -14528,8 +17547,8 @@ "binop": null, "updateContext": null }, - "start": 1573, - "end": 1574, + "start": 1533, + "end": 1534, "loc": { "start": { "line": 64, @@ -14554,8 +17573,8 @@ "binop": null }, "value": "setPrompt", - "start": 1574, - "end": 1583, + "start": 1534, + "end": 1543, "loc": { "start": { "line": 64, @@ -14579,8 +17598,8 @@ "postfix": false, "binop": null }, - "start": 1583, - "end": 1584, + "start": 1543, + "end": 1544, "loc": { "start": { "line": 64, @@ -14605,8 +17624,8 @@ "binop": null }, "value": "extensions", - "start": 1584, - "end": 1594, + "start": 1544, + "end": 1554, "loc": { "start": { "line": 64, @@ -14631,8 +17650,8 @@ "binop": null, "updateContext": null }, - "start": 1594, - "end": 1595, + "start": 1554, + "end": 1555, "loc": { "start": { "line": 64, @@ -14657,8 +17676,8 @@ "binop": null }, "value": "getPromptLine", - "start": 1595, - "end": 1608, + "start": 1555, + "end": 1568, "loc": { "start": { "line": 64, @@ -14682,8 +17701,8 @@ "postfix": false, "binop": null }, - "start": 1608, - "end": 1609, + "start": 1568, + "end": 1569, "loc": { "start": { "line": 64, @@ -14707,8 +17726,8 @@ "postfix": false, "binop": null }, - "start": 1609, - "end": 1610, + "start": 1569, + "end": 1570, "loc": { "start": { "line": 64, @@ -14732,8 +17751,8 @@ "postfix": false, "binop": null }, - "start": 1610, - "end": 1611, + "start": 1570, + "end": 1571, "loc": { "start": { "line": 64, @@ -14758,8 +17777,8 @@ "binop": null, "updateContext": null }, - "start": 1611, - "end": 1612, + "start": 1571, + "end": 1572, "loc": { "start": { "line": 64, @@ -14784,8 +17803,8 @@ "binop": null }, "value": "rl", - "start": 1619, - "end": 1621, + "start": 1579, + "end": 1581, "loc": { "start": { "line": 65, @@ -14810,8 +17829,8 @@ "binop": null, "updateContext": null }, - "start": 1621, - "end": 1622, + "start": 1581, + "end": 1582, "loc": { "start": { "line": 65, @@ -14836,8 +17855,8 @@ "binop": null }, "value": "prompt", - "start": 1622, - "end": 1628, + "start": 1582, + "end": 1588, "loc": { "start": { "line": 65, @@ -14861,8 +17880,8 @@ "postfix": false, "binop": null }, - "start": 1628, - "end": 1629, + "start": 1588, + "end": 1589, "loc": { "start": { "line": 65, @@ -14886,8 +17905,8 @@ "postfix": false, "binop": null }, - "start": 1629, - "end": 1630, + "start": 1589, + "end": 1590, "loc": { "start": { "line": 65, @@ -14912,8 +17931,8 @@ "binop": null, "updateContext": null }, - "start": 1630, - "end": 1631, + "start": 1590, + "end": 1591, "loc": { "start": { "line": 65, @@ -14937,8 +17956,8 @@ "postfix": false, "binop": null }, - "start": 1636, - "end": 1637, + "start": 1596, + "end": 1597, "loc": { "start": { "line": 66, @@ -14962,8 +17981,8 @@ "postfix": false, "binop": null }, - "start": 1637, - "end": 1638, + "start": 1597, + "end": 1598, "loc": { "start": { "line": 66, @@ -14988,8 +18007,8 @@ "binop": null, "updateContext": null }, - "start": 1638, - "end": 1639, + "start": 1598, + "end": 1599, "loc": { "start": { "line": 66, @@ -15013,8 +18032,8 @@ "postfix": false, "binop": null }, - "start": 1642, - "end": 1643, + "start": 1602, + "end": 1603, "loc": { "start": { "line": 67, @@ -15041,8 +18060,8 @@ "updateContext": null }, "value": "catch", - "start": 1644, - "end": 1649, + "start": 1604, + "end": 1609, "loc": { "start": { "line": 67, @@ -15066,8 +18085,8 @@ "postfix": false, "binop": null }, - "start": 1650, - "end": 1651, + "start": 1610, + "end": 1611, "loc": { "start": { "line": 67, @@ -15092,8 +18111,8 @@ "binop": null }, "value": "err", - "start": 1651, - "end": 1654, + "start": 1611, + "end": 1614, "loc": { "start": { "line": 67, @@ -15117,8 +18136,8 @@ "postfix": false, "binop": null }, - "start": 1654, - "end": 1655, + "start": 1614, + "end": 1615, "loc": { "start": { "line": 67, @@ -15142,8 +18161,8 @@ "postfix": false, "binop": null }, - "start": 1656, - "end": 1657, + "start": 1616, + "end": 1617, "loc": { "start": { "line": 67, @@ -15168,8 +18187,8 @@ "binop": null }, "value": "console", - "start": 1662, - "end": 1669, + "start": 1622, + "end": 1629, "loc": { "start": { "line": 68, @@ -15194,8 +18213,8 @@ "binop": null, "updateContext": null }, - "start": 1669, - "end": 1670, + "start": 1629, + "end": 1630, "loc": { "start": { "line": 68, @@ -15220,8 +18239,8 @@ "binop": null }, "value": "log", - "start": 1670, - "end": 1673, + "start": 1630, + "end": 1633, "loc": { "start": { "line": 68, @@ -15245,8 +18264,8 @@ "postfix": false, "binop": null }, - "start": 1673, - "end": 1674, + "start": 1633, + "end": 1634, "loc": { "start": { "line": 68, @@ -15271,8 +18290,8 @@ "binop": null }, "value": "err", - "start": 1674, - "end": 1677, + "start": 1634, + "end": 1637, "loc": { "start": { "line": 68, @@ -15296,8 +18315,8 @@ "postfix": false, "binop": null }, - "start": 1677, - "end": 1678, + "start": 1637, + "end": 1638, "loc": { "start": { "line": 68, @@ -15322,8 +18341,8 @@ "binop": null, "updateContext": null }, - "start": 1678, - "end": 1679, + "start": 1638, + "end": 1639, "loc": { "start": { "line": 68, @@ -15348,8 +18367,8 @@ "binop": null }, "value": "extensions", - "start": 1684, - "end": 1694, + "start": 1644, + "end": 1654, "loc": { "start": { "line": 69, @@ -15374,8 +18393,8 @@ "binop": null, "updateContext": null }, - "start": 1694, - "end": 1695, + "start": 1654, + "end": 1655, "loc": { "start": { "line": 69, @@ -15400,8 +18419,8 @@ "binop": null }, "value": "eggHelp", - "start": 1695, - "end": 1702, + "start": 1655, + "end": 1662, "loc": { "start": { "line": 69, @@ -15425,8 +18444,8 @@ "postfix": false, "binop": null }, - "start": 1702, - "end": 1703, + "start": 1662, + "end": 1663, "loc": { "start": { "line": 69, @@ -15450,8 +18469,8 @@ "postfix": false, "binop": null }, - "start": 1703, - "end": 1704, + "start": 1663, + "end": 1664, "loc": { "start": { "line": 69, @@ -15476,8 +18495,8 @@ "binop": null, "updateContext": null }, - "start": 1704, - "end": 1705, + "start": 1664, + "end": 1665, "loc": { "start": { "line": 69, @@ -15501,8 +18520,8 @@ "postfix": false, "binop": null }, - "start": 1708, - "end": 1709, + "start": 1668, + "end": 1669, "loc": { "start": { "line": 70, @@ -15526,8 +18545,8 @@ "postfix": false, "binop": null }, - "start": 1710, - "end": 1711, + "start": 1670, + "end": 1671, "loc": { "start": { "line": 71, @@ -15552,8 +18571,8 @@ "binop": null, "updateContext": null }, - "start": 1711, - "end": 1712, + "start": 1671, + "end": 1672, "loc": { "start": { "line": 71, @@ -15567,33 +18586,8 @@ }, { "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "module", - "start": 1714, - "end": 1720, - "loc": { - "start": { - "line": 73, - "column": 0 - }, - "end": { - "line": 73, - "column": 6 - } - } - }, - { - "type": { - "label": ".", + "label": "export", + "keyword": "export", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, @@ -15604,69 +18598,17 @@ "binop": null, "updateContext": null }, - "start": 1720, - "end": 1721, - "loc": { - "start": { - "line": 73, - "column": 6 - }, - "end": { - "line": 73, - "column": 7 - } - } - }, - { - "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "exports", - "start": 1721, - "end": 1728, - "loc": { - "start": { - "line": 73, - "column": 7 - }, - "end": { - "line": 73, - "column": 14 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 1729, - "end": 1730, + "value": "export", + "start": 1674, + "end": 1680, "loc": { "start": { "line": 73, - "column": 15 + "column": 0 }, "end": { "line": 73, - "column": 16 + "column": 6 } } }, @@ -15682,16 +18624,16 @@ "postfix": false, "binop": null }, - "start": 1731, - "end": 1732, + "start": 1681, + "end": 1682, "loc": { "start": { "line": 73, - "column": 17 + "column": 7 }, "end": { "line": 73, - "column": 18 + "column": 8 } } }, @@ -15708,16 +18650,16 @@ "binop": null }, "value": "repl", - "start": 1735, - "end": 1739, + "start": 1683, + "end": 1687, "loc": { "start": { - "line": 74, - "column": 2 + "line": 73, + "column": 9 }, "end": { - "line": 74, - "column": 6 + "line": 73, + "column": 13 } } }, @@ -15733,16 +18675,16 @@ "postfix": false, "binop": null }, - "start": 1740, - "end": 1741, + "start": 1688, + "end": 1689, "loc": { "start": { - "line": 75, - "column": 0 + "line": 73, + "column": 14 }, "end": { - "line": 75, - "column": 1 + "line": 73, + "column": 15 } } }, @@ -15759,16 +18701,16 @@ "binop": null, "updateContext": null }, - "start": 1741, - "end": 1742, + "start": 1689, + "end": 1690, "loc": { "start": { - "line": 75, - "column": 1 + "line": 73, + "column": 15 }, "end": { - "line": 75, - "column": 2 + "line": 73, + "column": 16 } } }, @@ -15785,15 +18727,15 @@ "binop": null, "updateContext": null }, - "start": 1743, - "end": 1743, + "start": 1691, + "end": 1691, "loc": { "start": { - "line": 76, + "line": 74, "column": 0 }, "end": { - "line": 76, + "line": 74, "column": 0 } } diff --git a/docs/ast/source/utils.js.json b/docs/ast/source/utils.js.json index 8d26a9a..2ed37e2 100644 --- a/docs/ast/source/utils.js.json +++ b/docs/ast/source/utils.js.json @@ -1,37 +1,37 @@ { "type": "File", "start": 0, - "end": 798, + "end": 790, "loc": { "start": { "line": 1, "column": 0 }, "end": { - "line": 39, + "line": 37, "column": 0 } }, "program": { "type": "Program", "start": 0, - "end": 798, + "end": 790, "loc": { "start": { "line": 1, "column": 0 }, "end": { - "line": 39, + "line": 37, "column": 0 } }, "sourceType": "module", "body": [ { - "type": "VariableDeclaration", + "type": "ImportDeclaration", "start": 0, - "end": 40, + "end": 27, "loc": { "start": { "line": 1, @@ -39,136 +39,133 @@ }, "end": { "line": 1, - "column": 40 + "column": 27 } }, - "declarations": [ + "specifiers": [ { - "type": "VariableDeclarator", - "start": 6, - "end": 39, + "type": "ImportDefaultSpecifier", + "start": 7, + "end": 14, "loc": { "start": { "line": 1, - "column": 6 + "column": 7 }, "end": { "line": 1, - "column": 39 + "column": 14 } }, - "id": { + "local": { "type": "Identifier", - "start": 6, - "end": 13, + "start": 7, + "end": 14, "loc": { "start": { "line": 1, - "column": 6 + "column": 7 }, "end": { "line": 1, - "column": 13 + "column": 14 }, "identifierName": "inspect" }, "name": "inspect" + } + } + ], + "source": { + "type": "StringLiteral", + "start": 20, + "end": 26, + "loc": { + "start": { + "line": 1, + "column": 20 }, - "init": { - "type": "MemberExpression", - "start": 16, - "end": 39, - "loc": { - "start": { - "line": 1, - "column": 16 - }, - "end": { - "line": 1, - "column": 39 - } + "end": { + "line": 1, + "column": 26 + } + }, + "extra": { + "rawValue": "util", + "raw": "\"util\"" + }, + "value": "util" + } + }, + { + "type": "ExpressionStatement", + "start": 28, + "end": 44, + "loc": { + "start": { + "line": 1, + "column": 28 + }, + "end": { + "line": 1, + "column": 44 + } + }, + "expression": { + "type": "MemberExpression", + "start": 28, + "end": 43, + "loc": { + "start": { + "line": 1, + "column": 28 + }, + "end": { + "line": 1, + "column": 43 + } + }, + "object": { + "type": "Identifier", + "start": 28, + "end": 35, + "loc": { + "start": { + "line": 1, + "column": 28 }, - "object": { - "type": "CallExpression", - "start": 16, - "end": 31, - "loc": { - "start": { - "line": 1, - "column": 16 - }, - "end": { - "line": 1, - "column": 31 - } - }, - "callee": { - "type": "Identifier", - "start": 16, - "end": 23, - "loc": { - "start": { - "line": 1, - "column": 16 - }, - "end": { - "line": 1, - "column": 23 - }, - "identifierName": "require" - }, - "name": "require" - }, - "arguments": [ - { - "type": "StringLiteral", - "start": 24, - "end": 30, - "loc": { - "start": { - "line": 1, - "column": 24 - }, - "end": { - "line": 1, - "column": 30 - } - }, - "extra": { - "rawValue": "util", - "raw": "\"util\"" - }, - "value": "util" - } - ] + "end": { + "line": 1, + "column": 35 }, - "property": { - "type": "Identifier", - "start": 32, - "end": 39, - "loc": { - "start": { - "line": 1, - "column": 32 - }, - "end": { - "line": 1, - "column": 39 - }, - "identifierName": "inspect" - }, - "name": "inspect" + "identifierName": "inspect" + }, + "name": "inspect" + }, + "property": { + "type": "Identifier", + "start": 36, + "end": 43, + "loc": { + "start": { + "line": 1, + "column": 36 }, - "computed": false - } - } - ], - "kind": "const" + "end": { + "line": 1, + "column": 43 + }, + "identifierName": "inspect" + }, + "name": "inspect" + }, + "computed": false + } }, { - "type": "VariableDeclaration", - "start": 42, - "end": 89, + "type": "Identifier", + "start": 46, + "end": 93, "loc": { "start": { "line": 3, @@ -182,8 +179,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 48, - "end": 88, + "start": 52, + "end": 92, "loc": { "start": { "line": 3, @@ -196,8 +193,8 @@ }, "id": { "type": "Identifier", - "start": 48, - "end": 51, + "start": 52, + "end": 55, "loc": { "start": { "line": 3, @@ -213,8 +210,8 @@ }, "init": { "type": "ArrowFunctionExpression", - "start": 54, - "end": 88, + "start": 58, + "end": 92, "loc": { "start": { "line": 3, @@ -225,31 +222,15 @@ "column": 46 } }, - "id": { - "type": "Identifier", - "start": 48, - "end": 51, - "loc": { - "start": { - "line": 3, - "column": 6 - }, - "end": { - "line": 3, - "column": 9 - }, - "identifierName": "ins" - }, - "name": "ins" - }, + "id": null, "generator": false, "expression": true, "async": false, "params": [ { "type": "Identifier", - "start": 54, - "end": 55, + "start": 58, + "end": 59, "loc": { "start": { "line": 3, @@ -266,8 +247,8 @@ ], "body": { "type": "CallExpression", - "start": 59, - "end": 88, + "start": 63, + "end": 92, "loc": { "start": { "line": 3, @@ -280,8 +261,8 @@ }, "callee": { "type": "Identifier", - "start": 59, - "end": 66, + "start": 63, + "end": 70, "loc": { "start": { "line": 3, @@ -298,8 +279,8 @@ "arguments": [ { "type": "Identifier", - "start": 67, - "end": 68, + "start": 71, + "end": 72, "loc": { "start": { "line": 3, @@ -315,8 +296,8 @@ }, { "type": "ObjectExpression", - "start": 70, - "end": 87, + "start": 74, + "end": 91, "loc": { "start": { "line": 3, @@ -330,8 +311,8 @@ "properties": [ { "type": "ObjectProperty", - "start": 72, - "end": 85, + "start": 76, + "end": 89, "loc": { "start": { "line": 3, @@ -347,8 +328,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 72, - "end": 77, + "start": 76, + "end": 81, "loc": { "start": { "line": 3, @@ -364,8 +345,8 @@ }, "value": { "type": "StringLiteral", - "start": 79, - "end": 85, + "start": 83, + "end": 89, "loc": { "start": { "line": 3, @@ -390,12 +371,15 @@ } } ], - "kind": "const" + "kind": "const", + "name": "_", + "leadingComments": [], + "trailingComments": [] }, { - "type": "VariableDeclaration", - "start": 91, - "end": 215, + "type": "Identifier", + "start": 95, + "end": 219, "loc": { "start": { "line": 5, @@ -409,8 +393,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 97, - "end": 214, + "start": 101, + "end": 218, "loc": { "start": { "line": 5, @@ -423,8 +407,8 @@ }, "id": { "type": "Identifier", - "start": 97, - "end": 102, + "start": 101, + "end": 106, "loc": { "start": { "line": 5, @@ -440,8 +424,8 @@ }, "init": { "type": "FunctionExpression", - "start": 105, - "end": 214, + "start": 109, + "end": 218, "loc": { "start": { "line": 5, @@ -452,31 +436,15 @@ "column": 1 } }, - "id": { - "type": "Identifier", - "start": 97, - "end": 102, - "loc": { - "start": { - "line": 5, - "column": 6 - }, - "end": { - "line": 5, - "column": 11 - }, - "identifierName": "chunk" - }, - "name": "chunk" - }, + "id": null, "generator": true, "expression": false, "async": false, "params": [ { "type": "Identifier", - "start": 115, - "end": 118, + "start": 119, + "end": 122, "loc": { "start": { "line": 5, @@ -492,8 +460,8 @@ }, { "type": "Identifier", - "start": 120, - "end": 124, + "start": 124, + "end": 128, "loc": { "start": { "line": 5, @@ -510,8 +478,8 @@ ], "body": { "type": "BlockStatement", - "start": 126, - "end": 214, + "start": 130, + "end": 218, "loc": { "start": { "line": 5, @@ -525,8 +493,8 @@ "body": [ { "type": "ForStatement", - "start": 130, - "end": 212, + "start": 134, + "end": 216, "loc": { "start": { "line": 6, @@ -539,8 +507,8 @@ }, "init": { "type": "VariableDeclaration", - "start": 135, - "end": 144, + "start": 139, + "end": 148, "loc": { "start": { "line": 6, @@ -554,8 +522,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 139, - "end": 144, + "start": 143, + "end": 148, "loc": { "start": { "line": 6, @@ -568,8 +536,8 @@ }, "id": { "type": "Identifier", - "start": 139, - "end": 140, + "start": 143, + "end": 144, "loc": { "start": { "line": 6, @@ -585,8 +553,8 @@ }, "init": { "type": "NumericLiteral", - "start": 143, - "end": 144, + "start": 147, + "end": 148, "loc": { "start": { "line": 6, @@ -609,8 +577,8 @@ }, "test": { "type": "BinaryExpression", - "start": 146, - "end": 160, + "start": 150, + "end": 164, "loc": { "start": { "line": 6, @@ -623,8 +591,8 @@ }, "left": { "type": "Identifier", - "start": 146, - "end": 147, + "start": 150, + "end": 151, "loc": { "start": { "line": 6, @@ -641,8 +609,8 @@ "operator": "<", "right": { "type": "MemberExpression", - "start": 150, - "end": 160, + "start": 154, + "end": 164, "loc": { "start": { "line": 6, @@ -655,8 +623,8 @@ }, "object": { "type": "Identifier", - "start": 150, - "end": 153, + "start": 154, + "end": 157, "loc": { "start": { "line": 6, @@ -672,8 +640,8 @@ }, "property": { "type": "Identifier", - "start": 154, - "end": 160, + "start": 158, + "end": 164, "loc": { "start": { "line": 6, @@ -692,8 +660,8 @@ }, "update": { "type": "AssignmentExpression", - "start": 162, - "end": 171, + "start": 166, + "end": 175, "loc": { "start": { "line": 6, @@ -707,8 +675,8 @@ "operator": "+=", "left": { "type": "Identifier", - "start": 162, - "end": 163, + "start": 166, + "end": 167, "loc": { "start": { "line": 6, @@ -724,8 +692,8 @@ }, "right": { "type": "Identifier", - "start": 167, - "end": 171, + "start": 171, + "end": 175, "loc": { "start": { "line": 6, @@ -742,8 +710,8 @@ }, "body": { "type": "BlockStatement", - "start": 173, - "end": 212, + "start": 177, + "end": 216, "loc": { "start": { "line": 6, @@ -757,8 +725,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 179, - "end": 208, + "start": 183, + "end": 212, "loc": { "start": { "line": 7, @@ -771,8 +739,8 @@ }, "expression": { "type": "YieldExpression", - "start": 179, - "end": 207, + "start": 183, + "end": 211, "loc": { "start": { "line": 7, @@ -786,8 +754,8 @@ "delegate": false, "argument": { "type": "CallExpression", - "start": 185, - "end": 207, + "start": 189, + "end": 211, "loc": { "start": { "line": 7, @@ -800,8 +768,8 @@ }, "callee": { "type": "MemberExpression", - "start": 185, - "end": 194, + "start": 189, + "end": 198, "loc": { "start": { "line": 7, @@ -814,8 +782,8 @@ }, "object": { "type": "Identifier", - "start": 185, - "end": 188, + "start": 189, + "end": 192, "loc": { "start": { "line": 7, @@ -831,8 +799,8 @@ }, "property": { "type": "Identifier", - "start": 189, - "end": 194, + "start": 193, + "end": 198, "loc": { "start": { "line": 7, @@ -851,8 +819,8 @@ "arguments": [ { "type": "Identifier", - "start": 195, - "end": 196, + "start": 199, + "end": 200, "loc": { "start": { "line": 7, @@ -868,8 +836,8 @@ }, { "type": "BinaryExpression", - "start": 198, - "end": 206, + "start": 202, + "end": 210, "loc": { "start": { "line": 7, @@ -882,8 +850,8 @@ }, "left": { "type": "Identifier", - "start": 198, - "end": 199, + "start": 202, + "end": 203, "loc": { "start": { "line": 7, @@ -900,8 +868,8 @@ "operator": "+", "right": { "type": "Identifier", - "start": 202, - "end": 206, + "start": 206, + "end": 210, "loc": { "start": { "line": 7, @@ -930,12 +898,15 @@ } } ], - "kind": "const" + "kind": "const", + "name": "_", + "leadingComments": [], + "trailingComments": [] }, { - "type": "VariableDeclaration", - "start": 217, - "end": 497, + "type": "Identifier", + "start": 221, + "end": 501, "loc": { "start": { "line": 11, @@ -949,8 +920,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 223, - "end": 496, + "start": 227, + "end": 500, "loc": { "start": { "line": 11, @@ -963,8 +934,8 @@ }, "id": { "type": "Identifier", - "start": 223, - "end": 236, + "start": 227, + "end": 240, "loc": { "start": { "line": 11, @@ -980,8 +951,8 @@ }, "init": { "type": "ArrowFunctionExpression", - "start": 239, - "end": 496, + "start": 243, + "end": 500, "loc": { "start": { "line": 11, @@ -992,31 +963,15 @@ "column": 1 } }, - "id": { - "type": "Identifier", - "start": 223, - "end": 236, - "loc": { - "start": { - "line": 11, - "column": 6 - }, - "end": { - "line": 11, - "column": 19 - }, - "identifierName": "checkIterable" - }, - "name": "checkIterable" - }, + "id": null, "generator": false, "expression": false, "async": false, "params": [ { "type": "Identifier", - "start": 240, - "end": 246, + "start": 244, + "end": 250, "loc": { "start": { "line": 11, @@ -1032,8 +987,8 @@ }, { "type": "Identifier", - "start": 248, - "end": 254, + "start": 252, + "end": 258, "loc": { "start": { "line": 11, @@ -1050,8 +1005,8 @@ ], "body": { "type": "BlockStatement", - "start": 259, - "end": 496, + "start": 263, + "end": 500, "loc": { "start": { "line": 11, @@ -1065,8 +1020,8 @@ "body": [ { "type": "IfStatement", - "start": 263, - "end": 357, + "start": 267, + "end": 361, "loc": { "start": { "line": 12, @@ -1079,8 +1034,8 @@ }, "test": { "type": "BinaryExpression", - "start": 267, - "end": 279, + "start": 271, + "end": 283, "loc": { "start": { "line": 12, @@ -1093,8 +1048,8 @@ }, "left": { "type": "Identifier", - "start": 267, - "end": 273, + "start": 271, + "end": 277, "loc": { "start": { "line": 12, @@ -1111,8 +1066,8 @@ "operator": "===", "right": { "type": "NumericLiteral", - "start": 278, - "end": 279, + "start": 282, + "end": 283, "loc": { "start": { "line": 12, @@ -1132,8 +1087,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 281, - "end": 357, + "start": 285, + "end": 361, "loc": { "start": { "line": 12, @@ -1147,8 +1102,8 @@ "body": [ { "type": "ThrowStatement", - "start": 287, - "end": 353, + "start": 291, + "end": 357, "loc": { "start": { "line": 13, @@ -1161,8 +1116,8 @@ }, "argument": { "type": "NewExpression", - "start": 293, - "end": 352, + "start": 297, + "end": 356, "loc": { "start": { "line": 13, @@ -1175,8 +1130,8 @@ }, "callee": { "type": "Identifier", - "start": 297, - "end": 308, + "start": 301, + "end": 312, "loc": { "start": { "line": 13, @@ -1193,8 +1148,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 309, - "end": 351, + "start": 313, + "end": 355, "loc": { "start": { "line": 13, @@ -1221,8 +1176,8 @@ }, { "type": "IfStatement", - "start": 361, - "end": 494, + "start": 365, + "end": 498, "loc": { "start": { "line": 16, @@ -1235,8 +1190,8 @@ }, "test": { "type": "LogicalExpression", - "start": 365, - "end": 417, + "start": 369, + "end": 421, "loc": { "start": { "line": 16, @@ -1249,8 +1204,8 @@ }, "left": { "type": "BinaryExpression", - "start": 365, - "end": 389, + "start": 369, + "end": 393, "loc": { "start": { "line": 16, @@ -1263,8 +1218,8 @@ }, "left": { "type": "Identifier", - "start": 365, - "end": 371, + "start": 369, + "end": 375, "loc": { "start": { "line": 16, @@ -1281,8 +1236,8 @@ "operator": "instanceof", "right": { "type": "Identifier", - "start": 383, - "end": 389, + "start": 387, + "end": 393, "loc": { "start": { "line": 16, @@ -1300,8 +1255,8 @@ "operator": "||", "right": { "type": "BinaryExpression", - "start": 393, - "end": 417, + "start": 397, + "end": 421, "loc": { "start": { "line": 16, @@ -1314,8 +1269,8 @@ }, "left": { "type": "Identifier", - "start": 393, - "end": 399, + "start": 397, + "end": 403, "loc": { "start": { "line": 16, @@ -1332,8 +1287,8 @@ "operator": "instanceof", "right": { "type": "Identifier", - "start": 411, - "end": 417, + "start": 415, + "end": 421, "loc": { "start": { "line": 16, @@ -1351,8 +1306,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 419, - "end": 494, + "start": 423, + "end": 498, "loc": { "start": { "line": 16, @@ -1366,8 +1321,8 @@ "body": [ { "type": "ThrowStatement", - "start": 425, - "end": 490, + "start": 429, + "end": 494, "loc": { "start": { "line": 17, @@ -1380,8 +1335,8 @@ }, "argument": { "type": "NewExpression", - "start": 431, - "end": 489, + "start": 435, + "end": 493, "loc": { "start": { "line": 17, @@ -1394,8 +1349,8 @@ }, "callee": { "type": "Identifier", - "start": 435, - "end": 444, + "start": 439, + "end": 448, "loc": { "start": { "line": 17, @@ -1412,8 +1367,8 @@ "arguments": [ { "type": "TemplateLiteral", - "start": 445, - "end": 488, + "start": 449, + "end": 492, "loc": { "start": { "line": 17, @@ -1427,8 +1382,8 @@ "expressions": [ { "type": "Identifier", - "start": 460, - "end": 466, + "start": 464, + "end": 470, "loc": { "start": { "line": 17, @@ -1446,8 +1401,8 @@ "quasis": [ { "type": "TemplateElement", - "start": 446, - "end": 458, + "start": 450, + "end": 462, "loc": { "start": { "line": 17, @@ -1466,8 +1421,8 @@ }, { "type": "TemplateElement", - "start": 467, - "end": 487, + "start": 471, + "end": 491, "loc": { "start": { "line": 17, @@ -1500,12 +1455,15 @@ } } ], - "kind": "const" + "kind": "const", + "name": "_", + "leadingComments": [], + "trailingComments": [] }, { - "type": "VariableDeclaration", - "start": 499, - "end": 725, + "type": "Identifier", + "start": 503, + "end": 729, "loc": { "start": { "line": 21, @@ -1519,8 +1477,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 505, - "end": 724, + "start": 509, + "end": 728, "loc": { "start": { "line": 21, @@ -1533,8 +1491,8 @@ }, "id": { "type": "Identifier", - "start": 505, - "end": 518, + "start": 509, + "end": 522, "loc": { "start": { "line": 21, @@ -1550,8 +1508,8 @@ }, "init": { "type": "ArrowFunctionExpression", - "start": 521, - "end": 724, + "start": 525, + "end": 728, "loc": { "start": { "line": 21, @@ -1562,31 +1520,15 @@ "column": 1 } }, - "id": { - "type": "Identifier", - "start": 505, - "end": 518, - "loc": { - "start": { - "line": 21, - "column": 6 - }, - "end": { - "line": 21, - "column": 19 - }, - "identifierName": "getValidIndex" - }, - "name": "getValidIndex" - }, + "id": null, "generator": false, "expression": false, "async": false, "params": [ { "type": "Identifier", - "start": 522, - "end": 528, + "start": 526, + "end": 532, "loc": { "start": { "line": 21, @@ -1602,8 +1544,8 @@ }, { "type": "Identifier", - "start": 530, - "end": 535, + "start": 534, + "end": 539, "loc": { "start": { "line": 21, @@ -1620,8 +1562,8 @@ ], "body": { "type": "BlockStatement", - "start": 540, - "end": 724, + "start": 544, + "end": 728, "loc": { "start": { "line": 21, @@ -1635,8 +1577,8 @@ "body": [ { "type": "IfStatement", - "start": 544, - "end": 592, + "start": 548, + "end": 596, "loc": { "start": { "line": 22, @@ -1649,8 +1591,8 @@ }, "test": { "type": "BinaryExpression", - "start": 548, - "end": 557, + "start": 552, + "end": 561, "loc": { "start": { "line": 22, @@ -1663,8 +1605,8 @@ }, "left": { "type": "Identifier", - "start": 548, - "end": 553, + "start": 552, + "end": 557, "loc": { "start": { "line": 22, @@ -1681,8 +1623,8 @@ "operator": "<", "right": { "type": "NumericLiteral", - "start": 556, - "end": 557, + "start": 560, + "end": 561, "loc": { "start": { "line": 22, @@ -1702,8 +1644,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 559, - "end": 592, + "start": 563, + "end": 596, "loc": { "start": { "line": 22, @@ -1717,8 +1659,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 565, - "end": 588, + "start": 569, + "end": 592, "loc": { "start": { "line": 23, @@ -1731,8 +1673,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 565, - "end": 587, + "start": 569, + "end": 591, "loc": { "start": { "line": 23, @@ -1746,8 +1688,8 @@ "operator": "=", "left": { "type": "Identifier", - "start": 565, - "end": 570, + "start": 569, + "end": 574, "loc": { "start": { "line": 23, @@ -1763,8 +1705,8 @@ }, "right": { "type": "BinaryExpression", - "start": 573, - "end": 587, + "start": 577, + "end": 591, "loc": { "start": { "line": 23, @@ -1777,8 +1719,8 @@ }, "left": { "type": "Identifier", - "start": 573, - "end": 579, + "start": 577, + "end": 583, "loc": { "start": { "line": 23, @@ -1795,8 +1737,8 @@ "operator": "+", "right": { "type": "Identifier", - "start": 582, - "end": 587, + "start": 586, + "end": 591, "loc": { "start": { "line": 23, @@ -1820,8 +1762,8 @@ }, { "type": "IfStatement", - "start": 596, - "end": 705, + "start": 600, + "end": 709, "loc": { "start": { "line": 26, @@ -1834,8 +1776,8 @@ }, "test": { "type": "BinaryExpression", - "start": 600, - "end": 614, + "start": 604, + "end": 618, "loc": { "start": { "line": 26, @@ -1848,8 +1790,8 @@ }, "left": { "type": "Identifier", - "start": 600, - "end": 605, + "start": 604, + "end": 609, "loc": { "start": { "line": 26, @@ -1866,8 +1808,8 @@ "operator": ">", "right": { "type": "Identifier", - "start": 608, - "end": 614, + "start": 612, + "end": 618, "loc": { "start": { "line": 26, @@ -1884,8 +1826,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 616, - "end": 705, + "start": 620, + "end": 709, "loc": { "start": { "line": 26, @@ -1899,8 +1841,8 @@ "body": [ { "type": "ThrowStatement", - "start": 622, - "end": 701, + "start": 626, + "end": 705, "loc": { "start": { "line": 27, @@ -1913,8 +1855,8 @@ }, "argument": { "type": "NewExpression", - "start": 628, - "end": 700, + "start": 632, + "end": 704, "loc": { "start": { "line": 27, @@ -1927,8 +1869,8 @@ }, "callee": { "type": "Identifier", - "start": 632, - "end": 642, + "start": 636, + "end": 646, "loc": { "start": { "line": 27, @@ -1945,8 +1887,8 @@ "arguments": [ { "type": "TemplateLiteral", - "start": 643, - "end": 699, + "start": 647, + "end": 703, "loc": { "start": { "line": 27, @@ -1960,8 +1902,8 @@ "expressions": [ { "type": "Identifier", - "start": 652, - "end": 657, + "start": 656, + "end": 661, "loc": { "start": { "line": 27, @@ -1977,8 +1919,8 @@ }, { "type": "Identifier", - "start": 691, - "end": 697, + "start": 695, + "end": 701, "loc": { "start": { "line": 27, @@ -1996,8 +1938,8 @@ "quasis": [ { "type": "TemplateElement", - "start": 644, - "end": 650, + "start": 648, + "end": 654, "loc": { "start": { "line": 27, @@ -2016,8 +1958,8 @@ }, { "type": "TemplateElement", - "start": 658, - "end": 689, + "start": 662, + "end": 693, "loc": { "start": { "line": 27, @@ -2036,8 +1978,8 @@ }, { "type": "TemplateElement", - "start": 698, - "end": 698, + "start": 702, + "end": 702, "loc": { "start": { "line": 27, @@ -2066,8 +2008,8 @@ }, { "type": "ReturnStatement", - "start": 709, - "end": 722, + "start": 713, + "end": 726, "loc": { "start": { "line": 30, @@ -2080,8 +2022,8 @@ }, "argument": { "type": "Identifier", - "start": 716, - "end": 721, + "start": 720, + "end": 725, "loc": { "start": { "line": 30, @@ -2102,325 +2044,2244 @@ } } ], - "kind": "const" + "kind": "const", + "name": "_", + "leadingComments": [], + "trailingComments": [] }, { - "type": "ExpressionStatement", - "start": 727, - "end": 797, + "type": "ExportNamedDeclaration", + "start": 731, + "end": 789, "loc": { "start": { "line": 33, "column": 0 }, "end": { - "line": 38, - "column": 2 + "line": 36, + "column": 8 } }, - "expression": { - "type": "AssignmentExpression", - "start": 727, - "end": 796, - "loc": { - "start": { - "line": 33, - "column": 0 - }, - "end": { - "line": 38, - "column": 1 - } - }, - "operator": "=", - "left": { - "type": "MemberExpression", - "start": 727, - "end": 741, + "declaration": null, + "specifiers": [ + { + "type": "ExportSpecifier", + "start": 740, + "end": 745, "loc": { "start": { "line": 33, - "column": 0 + "column": 9 }, "end": { "line": 33, "column": 14 } }, - "object": { + "local": { "type": "Identifier", - "start": 727, - "end": 733, + "start": 740, + "end": 745, "loc": { "start": { "line": 33, - "column": 0 + "column": 9 }, "end": { "line": 33, - "column": 6 + "column": 14 }, - "identifierName": "module" + "identifierName": "chunk" }, - "name": "module" + "name": "chunk" }, - "property": { + "exported": { "type": "Identifier", - "start": 734, - "end": 741, + "start": 740, + "end": 745, "loc": { "start": { "line": 33, - "column": 7 + "column": 9 }, "end": { "line": 33, "column": 14 }, - "identifierName": "exports" + "identifierName": "chunk" }, - "name": "exports" - }, - "computed": false + "name": "chunk" + } }, - "right": { - "type": "ObjectExpression", - "start": 744, - "end": 796, + { + "type": "ExportSpecifier", + "start": 749, + "end": 762, "loc": { "start": { - "line": 33, - "column": 17 + "line": 34, + "column": 2 }, "end": { - "line": 38, - "column": 1 + "line": 34, + "column": 15 } }, - "properties": [ - { - "type": "ObjectProperty", - "start": 748, - "end": 753, - "loc": { - "start": { - "line": 34, - "column": 2 - }, - "end": { - "line": 34, - "column": 7 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 748, - "end": 753, - "loc": { - "start": { - "line": 34, - "column": 2 - }, - "end": { - "line": 34, - "column": 7 - }, - "identifierName": "chunk" - }, - "name": "chunk" + "local": { + "type": "Identifier", + "start": 749, + "end": 762, + "loc": { + "start": { + "line": 34, + "column": 2 }, - "value": { - "type": "Identifier", - "start": 748, - "end": 753, - "loc": { - "start": { - "line": 34, - "column": 2 - }, - "end": { - "line": 34, - "column": 7 - }, - "identifierName": "chunk" - }, - "name": "chunk" + "end": { + "line": 34, + "column": 15 }, - "extra": { - "shorthand": true - } + "identifierName": "checkIterable" }, - { - "type": "ObjectProperty", - "start": 757, - "end": 770, - "loc": { - "start": { - "line": 35, - "column": 2 - }, - "end": { - "line": 35, - "column": 15 - } + "name": "checkIterable" + }, + "exported": { + "type": "Identifier", + "start": 749, + "end": 762, + "loc": { + "start": { + "line": 34, + "column": 2 }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 757, - "end": 770, - "loc": { - "start": { - "line": 35, - "column": 2 - }, - "end": { - "line": 35, - "column": 15 - }, - "identifierName": "checkIterable" - }, - "name": "checkIterable" + "end": { + "line": 34, + "column": 15 + }, + "identifierName": "checkIterable" + }, + "name": "checkIterable" + } + }, + { + "type": "ExportSpecifier", + "start": 766, + "end": 779, + "loc": { + "start": { + "line": 35, + "column": 2 + }, + "end": { + "line": 35, + "column": 15 + } + }, + "local": { + "type": "Identifier", + "start": 766, + "end": 779, + "loc": { + "start": { + "line": 35, + "column": 2 + }, + "end": { + "line": 35, + "column": 15 + }, + "identifierName": "getValidIndex" + }, + "name": "getValidIndex" + }, + "exported": { + "type": "Identifier", + "start": 766, + "end": 779, + "loc": { + "start": { + "line": 35, + "column": 2 + }, + "end": { + "line": 35, + "column": 15 + }, + "identifierName": "getValidIndex" + }, + "name": "getValidIndex" + } + }, + { + "type": "ExportSpecifier", + "start": 783, + "end": 786, + "loc": { + "start": { + "line": 36, + "column": 2 + }, + "end": { + "line": 36, + "column": 5 + } + }, + "local": { + "type": "Identifier", + "start": 783, + "end": 786, + "loc": { + "start": { + "line": 36, + "column": 2 + }, + "end": { + "line": 36, + "column": 5 + }, + "identifierName": "ins" + }, + "name": "ins" + }, + "exported": { + "type": "Identifier", + "start": 783, + "end": 786, + "loc": { + "start": { + "line": 36, + "column": 2 + }, + "end": { + "line": 36, + "column": 5 + }, + "identifierName": "ins" + }, + "name": "ins" + } + } + ], + "source": null + }, + { + "type": "ExportNamedDeclaration", + "start": 731, + "end": 789, + "loc": { + "start": { + "line": 33, + "column": 0 + }, + "end": { + "line": 36, + "column": 8 + } + }, + "declaration": { + "type": "VariableDeclaration", + "start": 95, + "end": 219, + "loc": { + "start": { + "line": 5, + "column": 0 + }, + "end": { + "line": 9, + "column": 2 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 101, + "end": 218, + "loc": { + "start": { + "line": 5, + "column": 6 + }, + "end": { + "line": 9, + "column": 1 + } + }, + "id": { + "type": "Identifier", + "start": 101, + "end": 106, + "loc": { + "start": { + "line": 5, + "column": 6 + }, + "end": { + "line": 5, + "column": 11 + }, + "identifierName": "chunk" + }, + "name": "chunk" + }, + "init": { + "type": "FunctionExpression", + "start": 109, + "end": 218, + "loc": { + "start": { + "line": 5, + "column": 14 + }, + "end": { + "line": 9, + "column": 1 + } }, - "value": { + "id": { "type": "Identifier", - "start": 757, - "end": 770, + "start": 101, + "end": 106, "loc": { "start": { - "line": 35, - "column": 2 + "line": 5, + "column": 6 }, "end": { - "line": 35, - "column": 15 + "line": 5, + "column": 11 }, - "identifierName": "checkIterable" + "identifierName": "chunk" }, - "name": "checkIterable" + "name": "chunk" + }, + "generator": true, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 119, + "end": 122, + "loc": { + "start": { + "line": 5, + "column": 24 + }, + "end": { + "line": 5, + "column": 27 + }, + "identifierName": "arr" + }, + "name": "arr" + }, + { + "type": "Identifier", + "start": 124, + "end": 128, + "loc": { + "start": { + "line": 5, + "column": 29 + }, + "end": { + "line": 5, + "column": 33 + }, + "identifierName": "step" + }, + "name": "step" + } + ], + "body": { + "type": "BlockStatement", + "start": 130, + "end": 218, + "loc": { + "start": { + "line": 5, + "column": 35 + }, + "end": { + "line": 9, + "column": 1 + } + }, + "body": [ + { + "type": "ForStatement", + "start": 134, + "end": 216, + "loc": { + "start": { + "line": 6, + "column": 2 + }, + "end": { + "line": 8, + "column": 3 + } + }, + "init": { + "type": "VariableDeclaration", + "start": 139, + "end": 148, + "loc": { + "start": { + "line": 6, + "column": 7 + }, + "end": { + "line": 6, + "column": 16 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 143, + "end": 148, + "loc": { + "start": { + "line": 6, + "column": 11 + }, + "end": { + "line": 6, + "column": 16 + } + }, + "id": { + "type": "Identifier", + "start": 143, + "end": 144, + "loc": { + "start": { + "line": 6, + "column": 11 + }, + "end": { + "line": 6, + "column": 12 + }, + "identifierName": "i" + }, + "name": "i" + }, + "init": { + "type": "NumericLiteral", + "start": 147, + "end": 148, + "loc": { + "start": { + "line": 6, + "column": 15 + }, + "end": { + "line": 6, + "column": 16 + } + }, + "extra": { + "rawValue": 0, + "raw": "0" + }, + "value": 0 + } + } + ], + "kind": "let" + }, + "test": { + "type": "BinaryExpression", + "start": 150, + "end": 164, + "loc": { + "start": { + "line": 6, + "column": 18 + }, + "end": { + "line": 6, + "column": 32 + } + }, + "left": { + "type": "Identifier", + "start": 150, + "end": 151, + "loc": { + "start": { + "line": 6, + "column": 18 + }, + "end": { + "line": 6, + "column": 19 + }, + "identifierName": "i" + }, + "name": "i" + }, + "operator": "<", + "right": { + "type": "MemberExpression", + "start": 154, + "end": 164, + "loc": { + "start": { + "line": 6, + "column": 22 + }, + "end": { + "line": 6, + "column": 32 + } + }, + "object": { + "type": "Identifier", + "start": 154, + "end": 157, + "loc": { + "start": { + "line": 6, + "column": 22 + }, + "end": { + "line": 6, + "column": 25 + }, + "identifierName": "arr" + }, + "name": "arr" + }, + "property": { + "type": "Identifier", + "start": 158, + "end": 164, + "loc": { + "start": { + "line": 6, + "column": 26 + }, + "end": { + "line": 6, + "column": 32 + }, + "identifierName": "length" + }, + "name": "length" + }, + "computed": false + } + }, + "update": { + "type": "AssignmentExpression", + "start": 166, + "end": 175, + "loc": { + "start": { + "line": 6, + "column": 34 + }, + "end": { + "line": 6, + "column": 43 + } + }, + "operator": "+=", + "left": { + "type": "Identifier", + "start": 166, + "end": 167, + "loc": { + "start": { + "line": 6, + "column": 34 + }, + "end": { + "line": 6, + "column": 35 + }, + "identifierName": "i" + }, + "name": "i" + }, + "right": { + "type": "Identifier", + "start": 171, + "end": 175, + "loc": { + "start": { + "line": 6, + "column": 39 + }, + "end": { + "line": 6, + "column": 43 + }, + "identifierName": "step" + }, + "name": "step" + } + }, + "body": { + "type": "BlockStatement", + "start": 177, + "end": 216, + "loc": { + "start": { + "line": 6, + "column": 45 + }, + "end": { + "line": 8, + "column": 3 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 183, + "end": 212, + "loc": { + "start": { + "line": 7, + "column": 4 + }, + "end": { + "line": 7, + "column": 33 + } + }, + "expression": { + "type": "YieldExpression", + "start": 183, + "end": 211, + "loc": { + "start": { + "line": 7, + "column": 4 + }, + "end": { + "line": 7, + "column": 32 + } + }, + "delegate": false, + "argument": { + "type": "CallExpression", + "start": 189, + "end": 211, + "loc": { + "start": { + "line": 7, + "column": 10 + }, + "end": { + "line": 7, + "column": 32 + } + }, + "callee": { + "type": "MemberExpression", + "start": 189, + "end": 198, + "loc": { + "start": { + "line": 7, + "column": 10 + }, + "end": { + "line": 7, + "column": 19 + } + }, + "object": { + "type": "Identifier", + "start": 189, + "end": 192, + "loc": { + "start": { + "line": 7, + "column": 10 + }, + "end": { + "line": 7, + "column": 13 + }, + "identifierName": "arr" + }, + "name": "arr" + }, + "property": { + "type": "Identifier", + "start": 193, + "end": 198, + "loc": { + "start": { + "line": 7, + "column": 14 + }, + "end": { + "line": 7, + "column": 19 + }, + "identifierName": "slice" + }, + "name": "slice" + }, + "computed": false + }, + "arguments": [ + { + "type": "Identifier", + "start": 199, + "end": 200, + "loc": { + "start": { + "line": 7, + "column": 20 + }, + "end": { + "line": 7, + "column": 21 + }, + "identifierName": "i" + }, + "name": "i" + }, + { + "type": "BinaryExpression", + "start": 202, + "end": 210, + "loc": { + "start": { + "line": 7, + "column": 23 + }, + "end": { + "line": 7, + "column": 31 + } + }, + "left": { + "type": "Identifier", + "start": 202, + "end": 203, + "loc": { + "start": { + "line": 7, + "column": 23 + }, + "end": { + "line": 7, + "column": 24 + }, + "identifierName": "i" + }, + "name": "i" + }, + "operator": "+", + "right": { + "type": "Identifier", + "start": 206, + "end": 210, + "loc": { + "start": { + "line": 7, + "column": 27 + }, + "end": { + "line": 7, + "column": 31 + }, + "identifierName": "step" + }, + "name": "step" + } + } + ] + } + } + } + ], + "directives": [] + } + } + ], + "directives": [] + } + } + } + ], + "kind": "const", + "leadingComments": [], + "trailingComments": [] + }, + "specifiers": null, + "source": null, + "leadingComments": null + }, + { + "type": "ExportNamedDeclaration", + "start": 731, + "end": 789, + "loc": { + "start": { + "line": 33, + "column": 0 + }, + "end": { + "line": 36, + "column": 8 + } + }, + "declaration": { + "type": "VariableDeclaration", + "start": 221, + "end": 501, + "loc": { + "start": { + "line": 11, + "column": 0 + }, + "end": { + "line": 19, + "column": 2 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 227, + "end": 500, + "loc": { + "start": { + "line": 11, + "column": 6 + }, + "end": { + "line": 19, + "column": 1 + } + }, + "id": { + "type": "Identifier", + "start": 227, + "end": 240, + "loc": { + "start": { + "line": 11, + "column": 6 + }, + "end": { + "line": 11, + "column": 19 + }, + "identifierName": "checkIterable" + }, + "name": "checkIterable" + }, + "init": { + "type": "ArrowFunctionExpression", + "start": 243, + "end": 500, + "loc": { + "start": { + "line": 11, + "column": 22 + }, + "end": { + "line": 19, + "column": 1 + } + }, + "id": { + "type": "Identifier", + "start": 227, + "end": 240, + "loc": { + "start": { + "line": 11, + "column": 6 + }, + "end": { + "line": 11, + "column": 19 + }, + "identifierName": "checkIterable" + }, + "name": "checkIterable" + }, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 244, + "end": 250, + "loc": { + "start": { + "line": 11, + "column": 23 + }, + "end": { + "line": 11, + "column": 29 + }, + "identifierName": "object" + }, + "name": "object" + }, + { + "type": "Identifier", + "start": 252, + "end": 258, + "loc": { + "start": { + "line": 11, + "column": 31 + }, + "end": { + "line": 11, + "column": 37 + }, + "identifierName": "length" + }, + "name": "length" + } + ], + "body": { + "type": "BlockStatement", + "start": 263, + "end": 500, + "loc": { + "start": { + "line": 11, + "column": 42 + }, + "end": { + "line": 19, + "column": 1 + } + }, + "body": [ + { + "type": "IfStatement", + "start": 267, + "end": 361, + "loc": { + "start": { + "line": 12, + "column": 2 + }, + "end": { + "line": 14, + "column": 3 + } + }, + "test": { + "type": "BinaryExpression", + "start": 271, + "end": 283, + "loc": { + "start": { + "line": 12, + "column": 6 + }, + "end": { + "line": 12, + "column": 18 + } + }, + "left": { + "type": "Identifier", + "start": 271, + "end": 277, + "loc": { + "start": { + "line": 12, + "column": 6 + }, + "end": { + "line": 12, + "column": 12 + }, + "identifierName": "length" + }, + "name": "length" + }, + "operator": "===", + "right": { + "type": "NumericLiteral", + "start": 282, + "end": 283, + "loc": { + "start": { + "line": 12, + "column": 17 + }, + "end": { + "line": 12, + "column": 18 + } + }, + "extra": { + "rawValue": 0, + "raw": "0" + }, + "value": 0 + } + }, + "consequent": { + "type": "BlockStatement", + "start": 285, + "end": 361, + "loc": { + "start": { + "line": 12, + "column": 20 + }, + "end": { + "line": 14, + "column": 3 + } + }, + "body": [ + { + "type": "ThrowStatement", + "start": 291, + "end": 357, + "loc": { + "start": { + "line": 13, + "column": 4 + }, + "end": { + "line": 13, + "column": 70 + } + }, + "argument": { + "type": "NewExpression", + "start": 297, + "end": 356, + "loc": { + "start": { + "line": 13, + "column": 10 + }, + "end": { + "line": 13, + "column": 69 + } + }, + "callee": { + "type": "Identifier", + "start": 301, + "end": 312, + "loc": { + "start": { + "line": 13, + "column": 14 + }, + "end": { + "line": 13, + "column": 25 + }, + "identifierName": "SyntaxError" + }, + "name": "SyntaxError" + }, + "arguments": [ + { + "type": "StringLiteral", + "start": 313, + "end": 355, + "loc": { + "start": { + "line": 13, + "column": 26 + }, + "end": { + "line": 13, + "column": 68 + } + }, + "extra": { + "rawValue": "At least one index must be passed to sub", + "raw": "\"At least one index must be passed to sub\"" + }, + "value": "At least one index must be passed to sub" + } + ] + } + } + ], + "directives": [] + }, + "alternate": null + }, + { + "type": "IfStatement", + "start": 365, + "end": 498, + "loc": { + "start": { + "line": 16, + "column": 2 + }, + "end": { + "line": 18, + "column": 3 + } + }, + "test": { + "type": "LogicalExpression", + "start": 369, + "end": 421, + "loc": { + "start": { + "line": 16, + "column": 6 + }, + "end": { + "line": 16, + "column": 58 + } + }, + "left": { + "type": "BinaryExpression", + "start": 369, + "end": 393, + "loc": { + "start": { + "line": 16, + "column": 6 + }, + "end": { + "line": 16, + "column": 30 + } + }, + "left": { + "type": "Identifier", + "start": 369, + "end": 375, + "loc": { + "start": { + "line": 16, + "column": 6 + }, + "end": { + "line": 16, + "column": 12 + }, + "identifierName": "object" + }, + "name": "object" + }, + "operator": "instanceof", + "right": { + "type": "Identifier", + "start": 387, + "end": 393, + "loc": { + "start": { + "line": 16, + "column": 24 + }, + "end": { + "line": 16, + "column": 30 + }, + "identifierName": "Number" + }, + "name": "Number" + } + }, + "operator": "||", + "right": { + "type": "BinaryExpression", + "start": 397, + "end": 421, + "loc": { + "start": { + "line": 16, + "column": 34 + }, + "end": { + "line": 16, + "column": 58 + } + }, + "left": { + "type": "Identifier", + "start": 397, + "end": 403, + "loc": { + "start": { + "line": 16, + "column": 34 + }, + "end": { + "line": 16, + "column": 40 + }, + "identifierName": "object" + }, + "name": "object" + }, + "operator": "instanceof", + "right": { + "type": "Identifier", + "start": 415, + "end": 421, + "loc": { + "start": { + "line": 16, + "column": 52 + }, + "end": { + "line": 16, + "column": 58 + }, + "identifierName": "String" + }, + "name": "String" + } + } + }, + "consequent": { + "type": "BlockStatement", + "start": 423, + "end": 498, + "loc": { + "start": { + "line": 16, + "column": 60 + }, + "end": { + "line": 18, + "column": 3 + } + }, + "body": [ + { + "type": "ThrowStatement", + "start": 429, + "end": 494, + "loc": { + "start": { + "line": 17, + "column": 4 + }, + "end": { + "line": 17, + "column": 69 + } + }, + "argument": { + "type": "NewExpression", + "start": 435, + "end": 493, + "loc": { + "start": { + "line": 17, + "column": 10 + }, + "end": { + "line": 17, + "column": 68 + } + }, + "callee": { + "type": "Identifier", + "start": 439, + "end": 448, + "loc": { + "start": { + "line": 17, + "column": 14 + }, + "end": { + "line": 17, + "column": 23 + }, + "identifierName": "TypeError" + }, + "name": "TypeError" + }, + "arguments": [ + { + "type": "TemplateLiteral", + "start": 449, + "end": 492, + "loc": { + "start": { + "line": 17, + "column": 24 + }, + "end": { + "line": 17, + "column": 67 + } + }, + "expressions": [ + { + "type": "Identifier", + "start": 464, + "end": 470, + "loc": { + "start": { + "line": 17, + "column": 39 + }, + "end": { + "line": 17, + "column": 45 + }, + "identifierName": "object" + }, + "name": "object" + } + ], + "quasis": [ + { + "type": "TemplateElement", + "start": 450, + "end": 462, + "loc": { + "start": { + "line": 17, + "column": 25 + }, + "end": { + "line": 17, + "column": 37 + } + }, + "value": { + "raw": "The object '", + "cooked": "The object '" + }, + "tail": false + }, + { + "type": "TemplateElement", + "start": 471, + "end": 491, + "loc": { + "start": { + "line": 17, + "column": 46 + }, + "end": { + "line": 17, + "column": 66 + } + }, + "value": { + "raw": "'' is not indexable!", + "cooked": "'' is not indexable!" + }, + "tail": true + } + ] + } + ] + } + } + ], + "directives": [] + }, + "alternate": null + } + ], + "directives": [] + } + } + } + ], + "kind": "const", + "leadingComments": [], + "trailingComments": [] + }, + "specifiers": null, + "source": null, + "leadingComments": null + }, + { + "type": "ExportNamedDeclaration", + "start": 731, + "end": 789, + "loc": { + "start": { + "line": 33, + "column": 0 + }, + "end": { + "line": 36, + "column": 8 + } + }, + "declaration": { + "type": "VariableDeclaration", + "start": 503, + "end": 729, + "loc": { + "start": { + "line": 21, + "column": 0 + }, + "end": { + "line": 31, + "column": 2 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 509, + "end": 728, + "loc": { + "start": { + "line": 21, + "column": 6 + }, + "end": { + "line": 31, + "column": 1 + } + }, + "id": { + "type": "Identifier", + "start": 509, + "end": 522, + "loc": { + "start": { + "line": 21, + "column": 6 + }, + "end": { + "line": 21, + "column": 19 + }, + "identifierName": "getValidIndex" + }, + "name": "getValidIndex" + }, + "init": { + "type": "ArrowFunctionExpression", + "start": 525, + "end": 728, + "loc": { + "start": { + "line": 21, + "column": 22 + }, + "end": { + "line": 31, + "column": 1 + } + }, + "id": { + "type": "Identifier", + "start": 509, + "end": 522, + "loc": { + "start": { + "line": 21, + "column": 6 + }, + "end": { + "line": 21, + "column": 19 + }, + "identifierName": "getValidIndex" + }, + "name": "getValidIndex" + }, + "generator": false, + "expression": false, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 526, + "end": 532, + "loc": { + "start": { + "line": 21, + "column": 23 + }, + "end": { + "line": 21, + "column": 29 + }, + "identifierName": "length" + }, + "name": "length" + }, + { + "type": "Identifier", + "start": 534, + "end": 539, + "loc": { + "start": { + "line": 21, + "column": 31 + }, + "end": { + "line": 21, + "column": 36 + }, + "identifierName": "index" + }, + "name": "index" + } + ], + "body": { + "type": "BlockStatement", + "start": 544, + "end": 728, + "loc": { + "start": { + "line": 21, + "column": 41 + }, + "end": { + "line": 31, + "column": 1 + } + }, + "body": [ + { + "type": "IfStatement", + "start": 548, + "end": 596, + "loc": { + "start": { + "line": 22, + "column": 2 + }, + "end": { + "line": 24, + "column": 3 + } + }, + "test": { + "type": "BinaryExpression", + "start": 552, + "end": 561, + "loc": { + "start": { + "line": 22, + "column": 6 + }, + "end": { + "line": 22, + "column": 15 + } + }, + "left": { + "type": "Identifier", + "start": 552, + "end": 557, + "loc": { + "start": { + "line": 22, + "column": 6 + }, + "end": { + "line": 22, + "column": 11 + }, + "identifierName": "index" + }, + "name": "index" + }, + "operator": "<", + "right": { + "type": "NumericLiteral", + "start": 560, + "end": 561, + "loc": { + "start": { + "line": 22, + "column": 14 + }, + "end": { + "line": 22, + "column": 15 + } + }, + "extra": { + "rawValue": 0, + "raw": "0" + }, + "value": 0 + } + }, + "consequent": { + "type": "BlockStatement", + "start": 563, + "end": 596, + "loc": { + "start": { + "line": 22, + "column": 17 + }, + "end": { + "line": 24, + "column": 3 + } + }, + "body": [ + { + "type": "ExpressionStatement", + "start": 569, + "end": 592, + "loc": { + "start": { + "line": 23, + "column": 4 + }, + "end": { + "line": 23, + "column": 27 + } + }, + "expression": { + "type": "AssignmentExpression", + "start": 569, + "end": 591, + "loc": { + "start": { + "line": 23, + "column": 4 + }, + "end": { + "line": 23, + "column": 26 + } + }, + "operator": "=", + "left": { + "type": "Identifier", + "start": 569, + "end": 574, + "loc": { + "start": { + "line": 23, + "column": 4 + }, + "end": { + "line": 23, + "column": 9 + }, + "identifierName": "index" + }, + "name": "index" + }, + "right": { + "type": "BinaryExpression", + "start": 577, + "end": 591, + "loc": { + "start": { + "line": 23, + "column": 12 + }, + "end": { + "line": 23, + "column": 26 + } + }, + "left": { + "type": "Identifier", + "start": 577, + "end": 583, + "loc": { + "start": { + "line": 23, + "column": 12 + }, + "end": { + "line": 23, + "column": 18 + }, + "identifierName": "length" + }, + "name": "length" + }, + "operator": "+", + "right": { + "type": "Identifier", + "start": 586, + "end": 591, + "loc": { + "start": { + "line": 23, + "column": 21 + }, + "end": { + "line": 23, + "column": 26 + }, + "identifierName": "index" + }, + "name": "index" + } + } + } + } + ], + "directives": [] + }, + "alternate": null + }, + { + "type": "IfStatement", + "start": 600, + "end": 709, + "loc": { + "start": { + "line": 26, + "column": 2 + }, + "end": { + "line": 28, + "column": 3 + } + }, + "test": { + "type": "BinaryExpression", + "start": 604, + "end": 618, + "loc": { + "start": { + "line": 26, + "column": 6 + }, + "end": { + "line": 26, + "column": 20 + } + }, + "left": { + "type": "Identifier", + "start": 604, + "end": 609, + "loc": { + "start": { + "line": 26, + "column": 6 + }, + "end": { + "line": 26, + "column": 11 + }, + "identifierName": "index" + }, + "name": "index" + }, + "operator": ">", + "right": { + "type": "Identifier", + "start": 612, + "end": 618, + "loc": { + "start": { + "line": 26, + "column": 14 + }, + "end": { + "line": 26, + "column": 20 + }, + "identifierName": "length" + }, + "name": "length" + } + }, + "consequent": { + "type": "BlockStatement", + "start": 620, + "end": 709, + "loc": { + "start": { + "line": 26, + "column": 22 + }, + "end": { + "line": 28, + "column": 3 + } + }, + "body": [ + { + "type": "ThrowStatement", + "start": 626, + "end": 705, + "loc": { + "start": { + "line": 27, + "column": 4 + }, + "end": { + "line": 27, + "column": 83 + } + }, + "argument": { + "type": "NewExpression", + "start": 632, + "end": 704, + "loc": { + "start": { + "line": 27, + "column": 10 + }, + "end": { + "line": 27, + "column": 82 + } + }, + "callee": { + "type": "Identifier", + "start": 636, + "end": 646, + "loc": { + "start": { + "line": 27, + "column": 14 + }, + "end": { + "line": 27, + "column": 24 + }, + "identifierName": "RangeError" + }, + "name": "RangeError" + }, + "arguments": [ + { + "type": "TemplateLiteral", + "start": 647, + "end": 703, + "loc": { + "start": { + "line": 27, + "column": 25 + }, + "end": { + "line": 27, + "column": 81 + } + }, + "expressions": [ + { + "type": "Identifier", + "start": 656, + "end": 661, + "loc": { + "start": { + "line": 27, + "column": 34 + }, + "end": { + "line": 27, + "column": 39 + }, + "identifierName": "index" + }, + "name": "index" + }, + { + "type": "Identifier", + "start": 695, + "end": 701, + "loc": { + "start": { + "line": 27, + "column": 73 + }, + "end": { + "line": 27, + "column": 79 + }, + "identifierName": "length" + }, + "name": "length" + } + ], + "quasis": [ + { + "type": "TemplateElement", + "start": 648, + "end": 654, + "loc": { + "start": { + "line": 27, + "column": 26 + }, + "end": { + "line": 27, + "column": 32 + } + }, + "value": { + "raw": "Index ", + "cooked": "Index " + }, + "tail": false + }, + { + "type": "TemplateElement", + "start": 662, + "end": 693, + "loc": { + "start": { + "line": 27, + "column": 40 + }, + "end": { + "line": 27, + "column": 71 + } + }, + "value": { + "raw": " is out of bounds. Array size: ", + "cooked": " is out of bounds. Array size: " + }, + "tail": false + }, + { + "type": "TemplateElement", + "start": 702, + "end": 702, + "loc": { + "start": { + "line": 27, + "column": 80 + }, + "end": { + "line": 27, + "column": 80 + } + }, + "value": { + "raw": "", + "cooked": "" + }, + "tail": true + } + ] + } + ] + } + } + ], + "directives": [] + }, + "alternate": null + }, + { + "type": "ReturnStatement", + "start": 713, + "end": 726, + "loc": { + "start": { + "line": 30, + "column": 2 + }, + "end": { + "line": 30, + "column": 15 + } + }, + "argument": { + "type": "Identifier", + "start": 720, + "end": 725, + "loc": { + "start": { + "line": 30, + "column": 9 + }, + "end": { + "line": 30, + "column": 14 + }, + "identifierName": "index" + }, + "name": "index" + } + } + ], + "directives": [] + } + } + } + ], + "kind": "const", + "leadingComments": [], + "trailingComments": [] + }, + "specifiers": null, + "source": null, + "leadingComments": null + }, + { + "type": "ExportNamedDeclaration", + "start": 731, + "end": 789, + "loc": { + "start": { + "line": 33, + "column": 0 + }, + "end": { + "line": 36, + "column": 8 + } + }, + "declaration": { + "type": "VariableDeclaration", + "start": 46, + "end": 93, + "loc": { + "start": { + "line": 3, + "column": 0 + }, + "end": { + "line": 3, + "column": 47 + } + }, + "declarations": [ + { + "type": "VariableDeclarator", + "start": 52, + "end": 92, + "loc": { + "start": { + "line": 3, + "column": 6 }, - "extra": { - "shorthand": true + "end": { + "line": 3, + "column": 46 } }, - { - "type": "ObjectProperty", - "start": 774, - "end": 787, + "id": { + "type": "Identifier", + "start": 52, + "end": 55, "loc": { "start": { - "line": 36, - "column": 2 + "line": 3, + "column": 6 }, "end": { - "line": 36, - "column": 15 - } - }, - "method": false, - "shorthand": true, - "computed": false, - "key": { - "type": "Identifier", - "start": 774, - "end": 787, - "loc": { - "start": { - "line": 36, - "column": 2 - }, - "end": { - "line": 36, - "column": 15 - }, - "identifierName": "getValidIndex" - }, - "name": "getValidIndex" - }, - "value": { - "type": "Identifier", - "start": 774, - "end": 787, - "loc": { - "start": { - "line": 36, - "column": 2 - }, - "end": { - "line": 36, - "column": 15 - }, - "identifierName": "getValidIndex" + "line": 3, + "column": 9 }, - "name": "getValidIndex" + "identifierName": "ins" }, - "extra": { - "shorthand": true - } + "name": "ins" }, - { - "type": "ObjectProperty", - "start": 791, - "end": 794, + "init": { + "type": "ArrowFunctionExpression", + "start": 58, + "end": 92, "loc": { "start": { - "line": 37, - "column": 2 + "line": 3, + "column": 12 }, "end": { - "line": 37, - "column": 5 + "line": 3, + "column": 46 } }, - "method": false, - "shorthand": true, - "computed": false, - "key": { + "id": { "type": "Identifier", - "start": 791, - "end": 794, + "start": 52, + "end": 55, "loc": { "start": { - "line": 37, - "column": 2 + "line": 3, + "column": 6 }, "end": { - "line": 37, - "column": 5 + "line": 3, + "column": 9 }, "identifierName": "ins" }, "name": "ins" }, - "value": { - "type": "Identifier", - "start": 791, - "end": 794, + "generator": false, + "expression": true, + "async": false, + "params": [ + { + "type": "Identifier", + "start": 58, + "end": 59, + "loc": { + "start": { + "line": 3, + "column": 12 + }, + "end": { + "line": 3, + "column": 13 + }, + "identifierName": "x" + }, + "name": "x" + } + ], + "body": { + "type": "CallExpression", + "start": 63, + "end": 92, "loc": { "start": { - "line": 37, - "column": 2 + "line": 3, + "column": 17 }, "end": { - "line": 37, - "column": 5 + "line": 3, + "column": 46 + } + }, + "callee": { + "type": "Identifier", + "start": 63, + "end": 70, + "loc": { + "start": { + "line": 3, + "column": 17 + }, + "end": { + "line": 3, + "column": 24 + }, + "identifierName": "inspect" }, - "identifierName": "ins" + "name": "inspect" }, - "name": "ins" - }, - "extra": { - "shorthand": true + "arguments": [ + { + "type": "Identifier", + "start": 71, + "end": 72, + "loc": { + "start": { + "line": 3, + "column": 25 + }, + "end": { + "line": 3, + "column": 26 + }, + "identifierName": "x" + }, + "name": "x" + }, + { + "type": "ObjectExpression", + "start": 74, + "end": 91, + "loc": { + "start": { + "line": 3, + "column": 28 + }, + "end": { + "line": 3, + "column": 45 + } + }, + "properties": [ + { + "type": "ObjectProperty", + "start": 76, + "end": 89, + "loc": { + "start": { + "line": 3, + "column": 30 + }, + "end": { + "line": 3, + "column": 43 + } + }, + "method": false, + "shorthand": false, + "computed": false, + "key": { + "type": "Identifier", + "start": 76, + "end": 81, + "loc": { + "start": { + "line": 3, + "column": 30 + }, + "end": { + "line": 3, + "column": 35 + }, + "identifierName": "depth" + }, + "name": "depth" + }, + "value": { + "type": "StringLiteral", + "start": 83, + "end": 89, + "loc": { + "start": { + "line": 3, + "column": 37 + }, + "end": { + "line": 3, + "column": 43 + } + }, + "extra": { + "rawValue": "null", + "raw": "\"null\"" + }, + "value": "null" + } + } + ] + } + ] } } - ] - } - } + } + ], + "kind": "const", + "leadingComments": [], + "trailingComments": [] + }, + "specifiers": null, + "source": null, + "leadingComments": null } ], "directives": [] @@ -2429,10 +4290,10 @@ "tokens": [ { "type": { - "label": "const", - "keyword": "const", + "label": "import", + "keyword": "import", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -2441,9 +4302,9 @@ "binop": null, "updateContext": null }, - "value": "const", + "value": "import", "start": 0, - "end": 5, + "end": 6, "loc": { "start": { "line": 1, @@ -2451,7 +4312,7 @@ }, "end": { "line": 1, - "column": 5 + "column": 6 } } }, @@ -2468,43 +4329,16 @@ "binop": null }, "value": "inspect", - "start": 6, - "end": 13, + "start": 7, + "end": 14, "loc": { "start": { "line": 1, - "column": 6 + "column": 7 }, "end": { - "line": 1, - "column": 13 - } - } - }, - { - "type": { - "label": "=", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": true, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "value": "=", - "start": 14, - "end": 15, - "loc": { - "start": { "line": 1, "column": 14 - }, - "end": { - "line": 1, - "column": 15 } } }, @@ -2520,50 +4354,52 @@ "postfix": false, "binop": null }, - "value": "require", - "start": 16, - "end": 23, + "value": "from", + "start": 15, + "end": 19, "loc": { "start": { "line": 1, - "column": 16 + "column": 15 }, "end": { "line": 1, - "column": 23 + "column": 19 } } }, { "type": { - "label": "(", - "beforeExpr": true, + "label": "string", + "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "start": 23, - "end": 24, + "value": "util", + "start": 20, + "end": 26, "loc": { "start": { "line": 1, - "column": 23 + "column": 20 }, "end": { "line": 1, - "column": 24 + "column": 26 } } }, { "type": { - "label": "string", - "beforeExpr": false, - "startsExpr": true, + "label": ";", + "beforeExpr": true, + "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -2572,25 +4408,24 @@ "binop": null, "updateContext": null }, - "value": "util", - "start": 24, - "end": 30, + "start": 26, + "end": 27, "loc": { "start": { "line": 1, - "column": 24 + "column": 26 }, "end": { "line": 1, - "column": 30 + "column": 27 } } }, { "type": { - "label": ")", + "label": "name", "beforeExpr": false, - "startsExpr": false, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, @@ -2598,16 +4433,17 @@ "postfix": false, "binop": null }, - "start": 30, - "end": 31, + "value": "inspect", + "start": 28, + "end": 35, "loc": { "start": { "line": 1, - "column": 30 + "column": 28 }, "end": { "line": 1, - "column": 31 + "column": 35 } } }, @@ -2624,16 +4460,16 @@ "binop": null, "updateContext": null }, - "start": 31, - "end": 32, + "start": 35, + "end": 36, "loc": { "start": { "line": 1, - "column": 31 + "column": 35 }, "end": { "line": 1, - "column": 32 + "column": 36 } } }, @@ -2650,16 +4486,16 @@ "binop": null }, "value": "inspect", - "start": 32, - "end": 39, + "start": 36, + "end": 43, "loc": { "start": { "line": 1, - "column": 32 + "column": 36 }, "end": { "line": 1, - "column": 39 + "column": 43 } } }, @@ -2676,16 +4512,16 @@ "binop": null, "updateContext": null }, - "start": 39, - "end": 40, + "start": 43, + "end": 44, "loc": { "start": { "line": 1, - "column": 39 + "column": 43 }, "end": { "line": 1, - "column": 40 + "column": 44 } } }, @@ -2704,8 +4540,8 @@ "updateContext": null }, "value": "const", - "start": 42, - "end": 47, + "start": 46, + "end": 51, "loc": { "start": { "line": 3, @@ -2730,8 +4566,8 @@ "binop": null }, "value": "ins", - "start": 48, - "end": 51, + "start": 52, + "end": 55, "loc": { "start": { "line": 3, @@ -2757,8 +4593,8 @@ "updateContext": null }, "value": "=", - "start": 52, - "end": 53, + "start": 56, + "end": 57, "loc": { "start": { "line": 3, @@ -2783,8 +4619,8 @@ "binop": null }, "value": "x", - "start": 54, - "end": 55, + "start": 58, + "end": 59, "loc": { "start": { "line": 3, @@ -2809,8 +4645,8 @@ "binop": null, "updateContext": null }, - "start": 56, - "end": 58, + "start": 60, + "end": 62, "loc": { "start": { "line": 3, @@ -2835,8 +4671,8 @@ "binop": null }, "value": "inspect", - "start": 59, - "end": 66, + "start": 63, + "end": 70, "loc": { "start": { "line": 3, @@ -2860,8 +4696,8 @@ "postfix": false, "binop": null }, - "start": 66, - "end": 67, + "start": 70, + "end": 71, "loc": { "start": { "line": 3, @@ -2886,8 +4722,8 @@ "binop": null }, "value": "x", - "start": 67, - "end": 68, + "start": 71, + "end": 72, "loc": { "start": { "line": 3, @@ -2912,8 +4748,8 @@ "binop": null, "updateContext": null }, - "start": 68, - "end": 69, + "start": 72, + "end": 73, "loc": { "start": { "line": 3, @@ -2937,8 +4773,8 @@ "postfix": false, "binop": null }, - "start": 70, - "end": 71, + "start": 74, + "end": 75, "loc": { "start": { "line": 3, @@ -2963,8 +4799,8 @@ "binop": null }, "value": "depth", - "start": 72, - "end": 77, + "start": 76, + "end": 81, "loc": { "start": { "line": 3, @@ -2989,8 +4825,8 @@ "binop": null, "updateContext": null }, - "start": 77, - "end": 78, + "start": 81, + "end": 82, "loc": { "start": { "line": 3, @@ -3016,8 +4852,8 @@ "updateContext": null }, "value": "null", - "start": 79, - "end": 85, + "start": 83, + "end": 89, "loc": { "start": { "line": 3, @@ -3041,8 +4877,8 @@ "postfix": false, "binop": null }, - "start": 86, - "end": 87, + "start": 90, + "end": 91, "loc": { "start": { "line": 3, @@ -3066,8 +4902,8 @@ "postfix": false, "binop": null }, - "start": 87, - "end": 88, + "start": 91, + "end": 92, "loc": { "start": { "line": 3, @@ -3092,8 +4928,8 @@ "binop": null, "updateContext": null }, - "start": 88, - "end": 89, + "start": 92, + "end": 93, "loc": { "start": { "line": 3, @@ -3120,8 +4956,8 @@ "updateContext": null }, "value": "const", - "start": 91, - "end": 96, + "start": 95, + "end": 100, "loc": { "start": { "line": 5, @@ -3146,8 +4982,8 @@ "binop": null }, "value": "chunk", - "start": 97, - "end": 102, + "start": 101, + "end": 106, "loc": { "start": { "line": 5, @@ -3173,8 +5009,8 @@ "updateContext": null }, "value": "=", - "start": 103, - "end": 104, + "start": 107, + "end": 108, "loc": { "start": { "line": 5, @@ -3200,8 +5036,8 @@ "binop": null }, "value": "function", - "start": 105, - "end": 113, + "start": 109, + "end": 117, "loc": { "start": { "line": 5, @@ -3227,8 +5063,8 @@ "updateContext": null }, "value": "*", - "start": 113, - "end": 114, + "start": 117, + "end": 118, "loc": { "start": { "line": 5, @@ -3252,8 +5088,8 @@ "postfix": false, "binop": null }, - "start": 114, - "end": 115, + "start": 118, + "end": 119, "loc": { "start": { "line": 5, @@ -3278,8 +5114,8 @@ "binop": null }, "value": "arr", - "start": 115, - "end": 118, + "start": 119, + "end": 122, "loc": { "start": { "line": 5, @@ -3304,8 +5140,8 @@ "binop": null, "updateContext": null }, - "start": 118, - "end": 119, + "start": 122, + "end": 123, "loc": { "start": { "line": 5, @@ -3330,8 +5166,8 @@ "binop": null }, "value": "step", - "start": 120, - "end": 124, + "start": 124, + "end": 128, "loc": { "start": { "line": 5, @@ -3355,8 +5191,8 @@ "postfix": false, "binop": null }, - "start": 124, - "end": 125, + "start": 128, + "end": 129, "loc": { "start": { "line": 5, @@ -3380,8 +5216,8 @@ "postfix": false, "binop": null }, - "start": 126, - "end": 127, + "start": 130, + "end": 131, "loc": { "start": { "line": 5, @@ -3408,8 +5244,8 @@ "updateContext": null }, "value": "for", - "start": 130, - "end": 133, + "start": 134, + "end": 137, "loc": { "start": { "line": 6, @@ -3433,8 +5269,8 @@ "postfix": false, "binop": null }, - "start": 134, - "end": 135, + "start": 138, + "end": 139, "loc": { "start": { "line": 6, @@ -3461,8 +5297,8 @@ "updateContext": null }, "value": "let", - "start": 135, - "end": 138, + "start": 139, + "end": 142, "loc": { "start": { "line": 6, @@ -3487,8 +5323,8 @@ "binop": null }, "value": "i", - "start": 139, - "end": 140, + "start": 143, + "end": 144, "loc": { "start": { "line": 6, @@ -3514,8 +5350,8 @@ "updateContext": null }, "value": "=", - "start": 141, - "end": 142, + "start": 145, + "end": 146, "loc": { "start": { "line": 6, @@ -3541,8 +5377,8 @@ "updateContext": null }, "value": 0, - "start": 143, - "end": 144, + "start": 147, + "end": 148, "loc": { "start": { "line": 6, @@ -3567,8 +5403,8 @@ "binop": null, "updateContext": null }, - "start": 144, - "end": 145, + "start": 148, + "end": 149, "loc": { "start": { "line": 6, @@ -3593,8 +5429,8 @@ "binop": null }, "value": "i", - "start": 146, - "end": 147, + "start": 150, + "end": 151, "loc": { "start": { "line": 6, @@ -3620,8 +5456,8 @@ "updateContext": null }, "value": "<", - "start": 148, - "end": 149, + "start": 152, + "end": 153, "loc": { "start": { "line": 6, @@ -3646,8 +5482,8 @@ "binop": null }, "value": "arr", - "start": 150, - "end": 153, + "start": 154, + "end": 157, "loc": { "start": { "line": 6, @@ -3672,8 +5508,8 @@ "binop": null, "updateContext": null }, - "start": 153, - "end": 154, + "start": 157, + "end": 158, "loc": { "start": { "line": 6, @@ -3698,8 +5534,8 @@ "binop": null }, "value": "length", - "start": 154, - "end": 160, + "start": 158, + "end": 164, "loc": { "start": { "line": 6, @@ -3724,8 +5560,8 @@ "binop": null, "updateContext": null }, - "start": 160, - "end": 161, + "start": 164, + "end": 165, "loc": { "start": { "line": 6, @@ -3750,8 +5586,8 @@ "binop": null }, "value": "i", - "start": 162, - "end": 163, + "start": 166, + "end": 167, "loc": { "start": { "line": 6, @@ -3777,8 +5613,8 @@ "updateContext": null }, "value": "+=", - "start": 164, - "end": 166, + "start": 168, + "end": 170, "loc": { "start": { "line": 6, @@ -3803,8 +5639,8 @@ "binop": null }, "value": "step", - "start": 167, - "end": 171, + "start": 171, + "end": 175, "loc": { "start": { "line": 6, @@ -3828,8 +5664,8 @@ "postfix": false, "binop": null }, - "start": 171, - "end": 172, + "start": 175, + "end": 176, "loc": { "start": { "line": 6, @@ -3853,8 +5689,8 @@ "postfix": false, "binop": null }, - "start": 173, - "end": 174, + "start": 177, + "end": 178, "loc": { "start": { "line": 6, @@ -3881,8 +5717,8 @@ "updateContext": null }, "value": "yield", - "start": 179, - "end": 184, + "start": 183, + "end": 188, "loc": { "start": { "line": 7, @@ -3907,8 +5743,8 @@ "binop": null }, "value": "arr", - "start": 185, - "end": 188, + "start": 189, + "end": 192, "loc": { "start": { "line": 7, @@ -3933,8 +5769,8 @@ "binop": null, "updateContext": null }, - "start": 188, - "end": 189, + "start": 192, + "end": 193, "loc": { "start": { "line": 7, @@ -3959,8 +5795,8 @@ "binop": null }, "value": "slice", - "start": 189, - "end": 194, + "start": 193, + "end": 198, "loc": { "start": { "line": 7, @@ -3984,8 +5820,8 @@ "postfix": false, "binop": null }, - "start": 194, - "end": 195, + "start": 198, + "end": 199, "loc": { "start": { "line": 7, @@ -4010,8 +5846,8 @@ "binop": null }, "value": "i", - "start": 195, - "end": 196, + "start": 199, + "end": 200, "loc": { "start": { "line": 7, @@ -4036,8 +5872,8 @@ "binop": null, "updateContext": null }, - "start": 196, - "end": 197, + "start": 200, + "end": 201, "loc": { "start": { "line": 7, @@ -4062,8 +5898,8 @@ "binop": null }, "value": "i", - "start": 198, - "end": 199, + "start": 202, + "end": 203, "loc": { "start": { "line": 7, @@ -4089,8 +5925,8 @@ "updateContext": null }, "value": "+", - "start": 200, - "end": 201, + "start": 204, + "end": 205, "loc": { "start": { "line": 7, @@ -4115,8 +5951,8 @@ "binop": null }, "value": "step", - "start": 202, - "end": 206, + "start": 206, + "end": 210, "loc": { "start": { "line": 7, @@ -4140,8 +5976,8 @@ "postfix": false, "binop": null }, - "start": 206, - "end": 207, + "start": 210, + "end": 211, "loc": { "start": { "line": 7, @@ -4166,8 +6002,8 @@ "binop": null, "updateContext": null }, - "start": 207, - "end": 208, + "start": 211, + "end": 212, "loc": { "start": { "line": 7, @@ -4191,8 +6027,8 @@ "postfix": false, "binop": null }, - "start": 211, - "end": 212, + "start": 215, + "end": 216, "loc": { "start": { "line": 8, @@ -4216,8 +6052,8 @@ "postfix": false, "binop": null }, - "start": 213, - "end": 214, + "start": 217, + "end": 218, "loc": { "start": { "line": 9, @@ -4242,8 +6078,8 @@ "binop": null, "updateContext": null }, - "start": 214, - "end": 215, + "start": 218, + "end": 219, "loc": { "start": { "line": 9, @@ -4270,8 +6106,8 @@ "updateContext": null }, "value": "const", - "start": 217, - "end": 222, + "start": 221, + "end": 226, "loc": { "start": { "line": 11, @@ -4296,8 +6132,8 @@ "binop": null }, "value": "checkIterable", - "start": 223, - "end": 236, + "start": 227, + "end": 240, "loc": { "start": { "line": 11, @@ -4323,8 +6159,8 @@ "updateContext": null }, "value": "=", - "start": 237, - "end": 238, + "start": 241, + "end": 242, "loc": { "start": { "line": 11, @@ -4348,8 +6184,8 @@ "postfix": false, "binop": null }, - "start": 239, - "end": 240, + "start": 243, + "end": 244, "loc": { "start": { "line": 11, @@ -4374,8 +6210,8 @@ "binop": null }, "value": "object", - "start": 240, - "end": 246, + "start": 244, + "end": 250, "loc": { "start": { "line": 11, @@ -4400,8 +6236,8 @@ "binop": null, "updateContext": null }, - "start": 246, - "end": 247, + "start": 250, + "end": 251, "loc": { "start": { "line": 11, @@ -4426,8 +6262,8 @@ "binop": null }, "value": "length", - "start": 248, - "end": 254, + "start": 252, + "end": 258, "loc": { "start": { "line": 11, @@ -4451,8 +6287,8 @@ "postfix": false, "binop": null }, - "start": 254, - "end": 255, + "start": 258, + "end": 259, "loc": { "start": { "line": 11, @@ -4477,8 +6313,8 @@ "binop": null, "updateContext": null }, - "start": 256, - "end": 258, + "start": 260, + "end": 262, "loc": { "start": { "line": 11, @@ -4502,8 +6338,8 @@ "postfix": false, "binop": null }, - "start": 259, - "end": 260, + "start": 263, + "end": 264, "loc": { "start": { "line": 11, @@ -4530,8 +6366,8 @@ "updateContext": null }, "value": "if", - "start": 263, - "end": 265, + "start": 267, + "end": 269, "loc": { "start": { "line": 12, @@ -4555,8 +6391,8 @@ "postfix": false, "binop": null }, - "start": 266, - "end": 267, + "start": 270, + "end": 271, "loc": { "start": { "line": 12, @@ -4581,8 +6417,8 @@ "binop": null }, "value": "length", - "start": 267, - "end": 273, + "start": 271, + "end": 277, "loc": { "start": { "line": 12, @@ -4608,8 +6444,8 @@ "updateContext": null }, "value": "===", - "start": 274, - "end": 277, + "start": 278, + "end": 281, "loc": { "start": { "line": 12, @@ -4635,8 +6471,8 @@ "updateContext": null }, "value": 0, - "start": 278, - "end": 279, + "start": 282, + "end": 283, "loc": { "start": { "line": 12, @@ -4660,8 +6496,8 @@ "postfix": false, "binop": null }, - "start": 279, - "end": 280, + "start": 283, + "end": 284, "loc": { "start": { "line": 12, @@ -4685,8 +6521,8 @@ "postfix": false, "binop": null }, - "start": 281, - "end": 282, + "start": 285, + "end": 286, "loc": { "start": { "line": 12, @@ -4713,8 +6549,8 @@ "updateContext": null }, "value": "throw", - "start": 287, - "end": 292, + "start": 291, + "end": 296, "loc": { "start": { "line": 13, @@ -4741,8 +6577,8 @@ "updateContext": null }, "value": "new", - "start": 293, - "end": 296, + "start": 297, + "end": 300, "loc": { "start": { "line": 13, @@ -4767,8 +6603,8 @@ "binop": null }, "value": "SyntaxError", - "start": 297, - "end": 308, + "start": 301, + "end": 312, "loc": { "start": { "line": 13, @@ -4792,8 +6628,8 @@ "postfix": false, "binop": null }, - "start": 308, - "end": 309, + "start": 312, + "end": 313, "loc": { "start": { "line": 13, @@ -4819,8 +6655,8 @@ "updateContext": null }, "value": "At least one index must be passed to sub", - "start": 309, - "end": 351, + "start": 313, + "end": 355, "loc": { "start": { "line": 13, @@ -4844,8 +6680,8 @@ "postfix": false, "binop": null }, - "start": 351, - "end": 352, + "start": 355, + "end": 356, "loc": { "start": { "line": 13, @@ -4870,8 +6706,8 @@ "binop": null, "updateContext": null }, - "start": 352, - "end": 353, + "start": 356, + "end": 357, "loc": { "start": { "line": 13, @@ -4895,8 +6731,8 @@ "postfix": false, "binop": null }, - "start": 356, - "end": 357, + "start": 360, + "end": 361, "loc": { "start": { "line": 14, @@ -4923,8 +6759,8 @@ "updateContext": null }, "value": "if", - "start": 361, - "end": 363, + "start": 365, + "end": 367, "loc": { "start": { "line": 16, @@ -4948,8 +6784,8 @@ "postfix": false, "binop": null }, - "start": 364, - "end": 365, + "start": 368, + "end": 369, "loc": { "start": { "line": 16, @@ -4974,8 +6810,8 @@ "binop": null }, "value": "object", - "start": 365, - "end": 371, + "start": 369, + "end": 375, "loc": { "start": { "line": 16, @@ -5002,8 +6838,8 @@ "updateContext": null }, "value": "instanceof", - "start": 372, - "end": 382, + "start": 376, + "end": 386, "loc": { "start": { "line": 16, @@ -5028,8 +6864,8 @@ "binop": null }, "value": "Number", - "start": 383, - "end": 389, + "start": 387, + "end": 393, "loc": { "start": { "line": 16, @@ -5055,8 +6891,8 @@ "updateContext": null }, "value": "||", - "start": 390, - "end": 392, + "start": 394, + "end": 396, "loc": { "start": { "line": 16, @@ -5081,8 +6917,8 @@ "binop": null }, "value": "object", - "start": 393, - "end": 399, + "start": 397, + "end": 403, "loc": { "start": { "line": 16, @@ -5109,8 +6945,8 @@ "updateContext": null }, "value": "instanceof", - "start": 400, - "end": 410, + "start": 404, + "end": 414, "loc": { "start": { "line": 16, @@ -5135,8 +6971,8 @@ "binop": null }, "value": "String", - "start": 411, - "end": 417, + "start": 415, + "end": 421, "loc": { "start": { "line": 16, @@ -5160,8 +6996,8 @@ "postfix": false, "binop": null }, - "start": 417, - "end": 418, + "start": 421, + "end": 422, "loc": { "start": { "line": 16, @@ -5185,8 +7021,8 @@ "postfix": false, "binop": null }, - "start": 419, - "end": 420, + "start": 423, + "end": 424, "loc": { "start": { "line": 16, @@ -5213,8 +7049,8 @@ "updateContext": null }, "value": "throw", - "start": 425, - "end": 430, + "start": 429, + "end": 434, "loc": { "start": { "line": 17, @@ -5241,8 +7077,8 @@ "updateContext": null }, "value": "new", - "start": 431, - "end": 434, + "start": 435, + "end": 438, "loc": { "start": { "line": 17, @@ -5267,8 +7103,8 @@ "binop": null }, "value": "TypeError", - "start": 435, - "end": 444, + "start": 439, + "end": 448, "loc": { "start": { "line": 17, @@ -5292,8 +7128,8 @@ "postfix": false, "binop": null }, - "start": 444, - "end": 445, + "start": 448, + "end": 449, "loc": { "start": { "line": 17, @@ -5317,8 +7153,8 @@ "postfix": false, "binop": null }, - "start": 445, - "end": 446, + "start": 449, + "end": 450, "loc": { "start": { "line": 17, @@ -5344,8 +7180,8 @@ "updateContext": null }, "value": "The object '", - "start": 446, - "end": 458, + "start": 450, + "end": 462, "loc": { "start": { "line": 17, @@ -5369,8 +7205,8 @@ "postfix": false, "binop": null }, - "start": 458, - "end": 460, + "start": 462, + "end": 464, "loc": { "start": { "line": 17, @@ -5395,8 +7231,8 @@ "binop": null }, "value": "object", - "start": 460, - "end": 466, + "start": 464, + "end": 470, "loc": { "start": { "line": 17, @@ -5420,8 +7256,8 @@ "postfix": false, "binop": null }, - "start": 466, - "end": 467, + "start": 470, + "end": 471, "loc": { "start": { "line": 17, @@ -5447,8 +7283,8 @@ "updateContext": null }, "value": "'' is not indexable!", - "start": 467, - "end": 487, + "start": 471, + "end": 491, "loc": { "start": { "line": 17, @@ -5472,8 +7308,8 @@ "postfix": false, "binop": null }, - "start": 487, - "end": 488, + "start": 491, + "end": 492, "loc": { "start": { "line": 17, @@ -5497,8 +7333,8 @@ "postfix": false, "binop": null }, - "start": 488, - "end": 489, + "start": 492, + "end": 493, "loc": { "start": { "line": 17, @@ -5523,8 +7359,8 @@ "binop": null, "updateContext": null }, - "start": 489, - "end": 490, + "start": 493, + "end": 494, "loc": { "start": { "line": 17, @@ -5548,8 +7384,8 @@ "postfix": false, "binop": null }, - "start": 493, - "end": 494, + "start": 497, + "end": 498, "loc": { "start": { "line": 18, @@ -5573,8 +7409,8 @@ "postfix": false, "binop": null }, - "start": 495, - "end": 496, + "start": 499, + "end": 500, "loc": { "start": { "line": 19, @@ -5599,8 +7435,8 @@ "binop": null, "updateContext": null }, - "start": 496, - "end": 497, + "start": 500, + "end": 501, "loc": { "start": { "line": 19, @@ -5627,8 +7463,8 @@ "updateContext": null }, "value": "const", - "start": 499, - "end": 504, + "start": 503, + "end": 508, "loc": { "start": { "line": 21, @@ -5653,8 +7489,8 @@ "binop": null }, "value": "getValidIndex", - "start": 505, - "end": 518, + "start": 509, + "end": 522, "loc": { "start": { "line": 21, @@ -5680,8 +7516,8 @@ "updateContext": null }, "value": "=", - "start": 519, - "end": 520, + "start": 523, + "end": 524, "loc": { "start": { "line": 21, @@ -5705,8 +7541,8 @@ "postfix": false, "binop": null }, - "start": 521, - "end": 522, + "start": 525, + "end": 526, "loc": { "start": { "line": 21, @@ -5731,8 +7567,8 @@ "binop": null }, "value": "length", - "start": 522, - "end": 528, + "start": 526, + "end": 532, "loc": { "start": { "line": 21, @@ -5757,8 +7593,8 @@ "binop": null, "updateContext": null }, - "start": 528, - "end": 529, + "start": 532, + "end": 533, "loc": { "start": { "line": 21, @@ -5783,8 +7619,8 @@ "binop": null }, "value": "index", - "start": 530, - "end": 535, + "start": 534, + "end": 539, "loc": { "start": { "line": 21, @@ -5808,8 +7644,8 @@ "postfix": false, "binop": null }, - "start": 535, - "end": 536, + "start": 539, + "end": 540, "loc": { "start": { "line": 21, @@ -5834,8 +7670,8 @@ "binop": null, "updateContext": null }, - "start": 537, - "end": 539, + "start": 541, + "end": 543, "loc": { "start": { "line": 21, @@ -5859,8 +7695,8 @@ "postfix": false, "binop": null }, - "start": 540, - "end": 541, + "start": 544, + "end": 545, "loc": { "start": { "line": 21, @@ -5887,8 +7723,8 @@ "updateContext": null }, "value": "if", - "start": 544, - "end": 546, + "start": 548, + "end": 550, "loc": { "start": { "line": 22, @@ -5912,8 +7748,8 @@ "postfix": false, "binop": null }, - "start": 547, - "end": 548, + "start": 551, + "end": 552, "loc": { "start": { "line": 22, @@ -5938,8 +7774,8 @@ "binop": null }, "value": "index", - "start": 548, - "end": 553, + "start": 552, + "end": 557, "loc": { "start": { "line": 22, @@ -5965,8 +7801,8 @@ "updateContext": null }, "value": "<", - "start": 554, - "end": 555, + "start": 558, + "end": 559, "loc": { "start": { "line": 22, @@ -5992,8 +7828,8 @@ "updateContext": null }, "value": 0, - "start": 556, - "end": 557, + "start": 560, + "end": 561, "loc": { "start": { "line": 22, @@ -6017,8 +7853,8 @@ "postfix": false, "binop": null }, - "start": 557, - "end": 558, + "start": 561, + "end": 562, "loc": { "start": { "line": 22, @@ -6042,8 +7878,8 @@ "postfix": false, "binop": null }, - "start": 559, - "end": 560, + "start": 563, + "end": 564, "loc": { "start": { "line": 22, @@ -6068,8 +7904,8 @@ "binop": null }, "value": "index", - "start": 565, - "end": 570, + "start": 569, + "end": 574, "loc": { "start": { "line": 23, @@ -6095,8 +7931,8 @@ "updateContext": null }, "value": "=", - "start": 571, - "end": 572, + "start": 575, + "end": 576, "loc": { "start": { "line": 23, @@ -6121,8 +7957,8 @@ "binop": null }, "value": "length", - "start": 573, - "end": 579, + "start": 577, + "end": 583, "loc": { "start": { "line": 23, @@ -6148,8 +7984,8 @@ "updateContext": null }, "value": "+", - "start": 580, - "end": 581, + "start": 584, + "end": 585, "loc": { "start": { "line": 23, @@ -6174,8 +8010,8 @@ "binop": null }, "value": "index", - "start": 582, - "end": 587, + "start": 586, + "end": 591, "loc": { "start": { "line": 23, @@ -6200,8 +8036,8 @@ "binop": null, "updateContext": null }, - "start": 587, - "end": 588, + "start": 591, + "end": 592, "loc": { "start": { "line": 23, @@ -6225,8 +8061,8 @@ "postfix": false, "binop": null }, - "start": 591, - "end": 592, + "start": 595, + "end": 596, "loc": { "start": { "line": 24, @@ -6253,8 +8089,8 @@ "updateContext": null }, "value": "if", - "start": 596, - "end": 598, + "start": 600, + "end": 602, "loc": { "start": { "line": 26, @@ -6278,8 +8114,8 @@ "postfix": false, "binop": null }, - "start": 599, - "end": 600, + "start": 603, + "end": 604, "loc": { "start": { "line": 26, @@ -6304,8 +8140,8 @@ "binop": null }, "value": "index", - "start": 600, - "end": 605, + "start": 604, + "end": 609, "loc": { "start": { "line": 26, @@ -6331,8 +8167,8 @@ "updateContext": null }, "value": ">", - "start": 606, - "end": 607, + "start": 610, + "end": 611, "loc": { "start": { "line": 26, @@ -6357,8 +8193,8 @@ "binop": null }, "value": "length", - "start": 608, - "end": 614, + "start": 612, + "end": 618, "loc": { "start": { "line": 26, @@ -6382,8 +8218,8 @@ "postfix": false, "binop": null }, - "start": 614, - "end": 615, + "start": 618, + "end": 619, "loc": { "start": { "line": 26, @@ -6407,8 +8243,8 @@ "postfix": false, "binop": null }, - "start": 616, - "end": 617, + "start": 620, + "end": 621, "loc": { "start": { "line": 26, @@ -6435,8 +8271,8 @@ "updateContext": null }, "value": "throw", - "start": 622, - "end": 627, + "start": 626, + "end": 631, "loc": { "start": { "line": 27, @@ -6463,8 +8299,8 @@ "updateContext": null }, "value": "new", - "start": 628, - "end": 631, + "start": 632, + "end": 635, "loc": { "start": { "line": 27, @@ -6489,8 +8325,8 @@ "binop": null }, "value": "RangeError", - "start": 632, - "end": 642, + "start": 636, + "end": 646, "loc": { "start": { "line": 27, @@ -6514,8 +8350,8 @@ "postfix": false, "binop": null }, - "start": 642, - "end": 643, + "start": 646, + "end": 647, "loc": { "start": { "line": 27, @@ -6539,8 +8375,8 @@ "postfix": false, "binop": null }, - "start": 643, - "end": 644, + "start": 647, + "end": 648, "loc": { "start": { "line": 27, @@ -6566,8 +8402,8 @@ "updateContext": null }, "value": "Index ", - "start": 644, - "end": 650, + "start": 648, + "end": 654, "loc": { "start": { "line": 27, @@ -6591,8 +8427,8 @@ "postfix": false, "binop": null }, - "start": 650, - "end": 652, + "start": 654, + "end": 656, "loc": { "start": { "line": 27, @@ -6617,8 +8453,8 @@ "binop": null }, "value": "index", - "start": 652, - "end": 657, + "start": 656, + "end": 661, "loc": { "start": { "line": 27, @@ -6642,8 +8478,8 @@ "postfix": false, "binop": null }, - "start": 657, - "end": 658, + "start": 661, + "end": 662, "loc": { "start": { "line": 27, @@ -6669,8 +8505,8 @@ "updateContext": null }, "value": " is out of bounds. Array size: ", - "start": 658, - "end": 689, + "start": 662, + "end": 693, "loc": { "start": { "line": 27, @@ -6694,8 +8530,8 @@ "postfix": false, "binop": null }, - "start": 689, - "end": 691, + "start": 693, + "end": 695, "loc": { "start": { "line": 27, @@ -6720,8 +8556,8 @@ "binop": null }, "value": "length", - "start": 691, - "end": 697, + "start": 695, + "end": 701, "loc": { "start": { "line": 27, @@ -6745,8 +8581,8 @@ "postfix": false, "binop": null }, - "start": 697, - "end": 698, + "start": 701, + "end": 702, "loc": { "start": { "line": 27, @@ -6772,8 +8608,8 @@ "updateContext": null }, "value": "", - "start": 698, - "end": 698, + "start": 702, + "end": 702, "loc": { "start": { "line": 27, @@ -6797,8 +8633,8 @@ "postfix": false, "binop": null }, - "start": 698, - "end": 699, + "start": 702, + "end": 703, "loc": { "start": { "line": 27, @@ -6822,8 +8658,8 @@ "postfix": false, "binop": null }, - "start": 699, - "end": 700, + "start": 703, + "end": 704, "loc": { "start": { "line": 27, @@ -6848,8 +8684,8 @@ "binop": null, "updateContext": null }, - "start": 700, - "end": 701, + "start": 704, + "end": 705, "loc": { "start": { "line": 27, @@ -6873,8 +8709,8 @@ "postfix": false, "binop": null }, - "start": 704, - "end": 705, + "start": 708, + "end": 709, "loc": { "start": { "line": 28, @@ -6901,8 +8737,8 @@ "updateContext": null }, "value": "return", - "start": 709, - "end": 715, + "start": 713, + "end": 719, "loc": { "start": { "line": 30, @@ -6927,8 +8763,8 @@ "binop": null }, "value": "index", - "start": 716, - "end": 721, + "start": 720, + "end": 725, "loc": { "start": { "line": 30, @@ -6953,8 +8789,8 @@ "binop": null, "updateContext": null }, - "start": 721, - "end": 722, + "start": 725, + "end": 726, "loc": { "start": { "line": 30, @@ -6978,8 +8814,8 @@ "postfix": false, "binop": null }, - "start": 723, - "end": 724, + "start": 727, + "end": 728, "loc": { "start": { "line": 31, @@ -7004,8 +8840,8 @@ "binop": null, "updateContext": null }, - "start": 724, - "end": 725, + "start": 728, + "end": 729, "loc": { "start": { "line": 31, @@ -7019,19 +8855,21 @@ }, { "type": { - "label": "name", + "label": "export", + "keyword": "export", "beforeExpr": false, - "startsExpr": true, + "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null + "binop": null, + "updateContext": null }, - "value": "module", - "start": 727, - "end": 733, + "value": "export", + "start": 731, + "end": 737, "loc": { "start": { "line": 33, @@ -7045,27 +8883,26 @@ }, { "type": { - "label": ".", - "beforeExpr": false, - "startsExpr": false, + "label": "{", + "beforeExpr": true, + "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, - "binop": null, - "updateContext": null + "binop": null }, - "start": 733, - "end": 734, + "start": 738, + "end": 739, "loc": { "start": { "line": 33, - "column": 6 + "column": 7 }, "end": { "line": 33, - "column": 7 + "column": 8 } } }, @@ -7081,13 +8918,13 @@ "postfix": false, "binop": null }, - "value": "exports", - "start": 734, - "end": 741, + "value": "chunk", + "start": 740, + "end": 745, "loc": { "start": { "line": 33, - "column": 7 + "column": 9 }, "end": { "line": 33, @@ -7097,53 +8934,27 @@ }, { "type": { - "label": "=", + "label": ",", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, - "isAssign": true, + "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, - "value": "=", - "start": 742, - "end": 743, - "loc": { - "start": { - "line": 33, - "column": 15 - }, - "end": { - "line": 33, - "column": 16 - } - } - }, - { - "type": { - "label": "{", - "beforeExpr": true, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "start": 744, - "end": 745, + "start": 745, + "end": 746, "loc": { "start": { "line": 33, - "column": 17 + "column": 14 }, "end": { "line": 33, - "column": 18 + "column": 15 } } }, @@ -7159,9 +8970,9 @@ "postfix": false, "binop": null }, - "value": "chunk", - "start": 748, - "end": 753, + "value": "checkIterable", + "start": 749, + "end": 762, "loc": { "start": { "line": 34, @@ -7169,7 +8980,7 @@ }, "end": { "line": 34, - "column": 7 + "column": 15 } } }, @@ -7186,16 +8997,16 @@ "binop": null, "updateContext": null }, - "start": 753, - "end": 754, + "start": 762, + "end": 763, "loc": { "start": { "line": 34, - "column": 7 + "column": 15 }, "end": { "line": 34, - "column": 8 + "column": 16 } } }, @@ -7211,9 +9022,9 @@ "postfix": false, "binop": null }, - "value": "checkIterable", - "start": 757, - "end": 770, + "value": "getValidIndex", + "start": 766, + "end": 779, "loc": { "start": { "line": 35, @@ -7238,8 +9049,8 @@ "binop": null, "updateContext": null }, - "start": 770, - "end": 771, + "start": 779, + "end": 780, "loc": { "start": { "line": 35, @@ -7263,9 +9074,9 @@ "postfix": false, "binop": null }, - "value": "getValidIndex", - "start": 774, - "end": 787, + "value": "ins", + "start": 783, + "end": 786, "loc": { "start": { "line": 36, @@ -7273,58 +9084,6 @@ }, "end": { "line": 36, - "column": 15 - } - } - }, - { - "type": { - "label": ",", - "beforeExpr": true, - "startsExpr": false, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null, - "updateContext": null - }, - "start": 787, - "end": 788, - "loc": { - "start": { - "line": 36, - "column": 15 - }, - "end": { - "line": 36, - "column": 16 - } - } - }, - { - "type": { - "label": "name", - "beforeExpr": false, - "startsExpr": true, - "rightAssociative": false, - "isLoop": false, - "isAssign": false, - "prefix": false, - "postfix": false, - "binop": null - }, - "value": "ins", - "start": 791, - "end": 794, - "loc": { - "start": { - "line": 37, - "column": 2 - }, - "end": { - "line": 37, "column": 5 } } @@ -7341,16 +9100,16 @@ "postfix": false, "binop": null }, - "start": 795, - "end": 796, + "start": 787, + "end": 788, "loc": { "start": { - "line": 38, - "column": 0 + "line": 36, + "column": 6 }, "end": { - "line": 38, - "column": 1 + "line": 36, + "column": 7 } } }, @@ -7367,16 +9126,16 @@ "binop": null, "updateContext": null }, - "start": 796, - "end": 797, + "start": 788, + "end": 789, "loc": { "start": { - "line": 38, - "column": 1 + "line": 36, + "column": 7 }, "end": { - "line": 38, - "column": 2 + "line": 36, + "column": 8 } } }, @@ -7393,15 +9152,15 @@ "binop": null, "updateContext": null }, - "start": 798, - "end": 798, + "start": 790, + "end": 790, "loc": { "start": { - "line": 39, + "line": 37, "column": 0 }, "end": { - "line": 39, + "line": 37, "column": 0 } } diff --git a/docs/badge.svg b/docs/badge.svg index 39bdda8..cb4357c 100644 --- a/docs/badge.svg +++ b/docs/badge.svg @@ -11,7 +11,7 @@ document document - 0% - 0% + 1% + 1% diff --git a/docs/class/lib/interp/ast.js~Apply.html b/docs/class/lib/interp/ast.js~Apply.html new file mode 100644 index 0000000..e31c153 --- /dev/null +++ b/docs/class/lib/interp/ast.js~Apply.html @@ -0,0 +1,547 @@ + + + + + + Apply | eggtended-js + + + + + + + +
+ Home + + Reference + Source + Test + +
+ + + +
+
import {Apply} from 'eggtended-js/lib/interp/ast.js'
+ public + class + + + + | source +
+ +
+

Apply

+ + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + +

Constructor Summary

+ + + + + + + + + +
Public Constructor
+ public + + + + + +
+

+ + + + constructor() +

+
+
+ + + +
+
+ + +
+
+

Member Summary

+ + + + + + + + + + + + + + + + + + + +
Public Members
+ public + + + + + +
+

+ + + + args: *[] +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ + + + operator: * +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ + + + type: string +

+
+
+ + + +
+
+ + +
+
+

Method Summary

+ + + + + + + + + +
Public Methods
+ public + + + + + +
+

+ + + + evaluate(env: *): * +

+
+
+ + + +
+
+ + +
+
+ + + + + +

Public Constructors

+ +
+

+ public + + + + + + constructor() + + + + source + +

+ + + + + + + + +
+
+ + + + + + + + + + + + + + + + + +
+
+

Public Members

+ +
+

+ public + + + + + + args: *[] + + + + source + +

+ + + + + + + + +
+
+ + + + + + + + + + + + + + + + + +
+
+

+ public + + + + + + operator: * + + + + source + +

+ + + + + + + + +
+
+ + + + + + + + + + + + + + + + + +
+
+

+ public + + + + + + type: string + + + + source + +

+ + + + + + + + +
+
+ + + + + + + + + + + + + + + + + +
+
+

Public Methods

+ +
+

+ public + + + + + + evaluate(env: *): * + + + + source + +

+ + + + + + + + +
+

Params:

+ + + + + + + + + + + + + +
NameTypeAttributeDescription
env*
+
+
+ +
+

Return:

+ + + + + + + +
*
+
+
+
+ + + + + + + + + + + + + + + +
+
+
+ + + + + + + + + + + + diff --git a/docs/class/lib/interp/ast.js~Regex.html b/docs/class/lib/interp/ast.js~Regex.html new file mode 100644 index 0000000..00262df --- /dev/null +++ b/docs/class/lib/interp/ast.js~Regex.html @@ -0,0 +1,531 @@ + + + + + + Regex | eggtended-js + + + + + + + +
+ Home + + Reference + Source + Test + +
+ + + +
+
import {Regex} from 'eggtended-js/lib/interp/ast.js'
+ public + class + + + + | source +
+ +
+

Regex

+ + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + +

Constructor Summary

+ + + + + + + + + +
Public Constructor
+ public + + + + + +
+

+ + + + constructor() +

+
+
+ + + +
+
+ + +
+
+

Member Summary

+ + + + + + + + + + + + + + + + + + + +
Public Members
+ public + + + + + +
+

+ + + + body: * +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ + + + flags: * +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ + + + type: string +

+
+
+ + + +
+
+ + +
+
+

Method Summary

+ + + + + + + + + +
Public Methods
+ public + + + + + +
+

+ + + + evaluate(): * +

+
+
+ + + +
+
+ + +
+
+ + + + + +

Public Constructors

+ +
+

+ public + + + + + + constructor() + + + + source + +

+ + + + + + + + +
+
+ + + + + + + + + + + + + + + + + +
+
+

Public Members

+ +
+

+ public + + + + + + body: * + + + + source + +

+ + + + + + + + +
+
+ + + + + + + + + + + + + + + + + +
+
+

+ public + + + + + + flags: * + + + + source + +

+ + + + + + + + +
+
+ + + + + + + + + + + + + + + + + +
+
+

+ public + + + + + + type: string + + + + source + +

+ + + + + + + + +
+
+ + + + + + + + + + + + + + + + + +
+
+

Public Methods

+ +
+

+ public + + + + + + evaluate(): * + + + + source + +

+ + + + + + + + +
+
+ +
+

Return:

+ + + + + + + +
*
+
+
+
+ + + + + + + + + + + + + + + +
+
+
+ + + + + + + + + + + + diff --git a/docs/class/lib/interp/ast.js~Value.html b/docs/class/lib/interp/ast.js~Value.html new file mode 100644 index 0000000..4249b17 --- /dev/null +++ b/docs/class/lib/interp/ast.js~Value.html @@ -0,0 +1,460 @@ + + + + + + Value | eggtended-js + + + + + + + +
+ Home + + Reference + Source + Test + +
+ + + +
+
import {Value} from 'eggtended-js/lib/interp/ast.js'
+ public + class + + + + | source +
+ +
+

Value

+ + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + +

Constructor Summary

+ + + + + + + + + +
Public Constructor
+ public + + + + + +
+

+ + + + constructor() +

+
+
+ + + +
+
+ + +
+
+

Member Summary

+ + + + + + + + + + + + + + +
Public Members
+ public + + + + + +
+

+ + + + type: string +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ + + + value: * +

+
+
+ + + +
+
+ + +
+
+

Method Summary

+ + + + + + + + + +
Public Methods
+ public + + + + + +
+

+ + + + evaluate(): * +

+
+
+ + + +
+
+ + +
+
+ + + + + +

Public Constructors

+ +
+

+ public + + + + + + constructor() + + + + source + +

+ + + + + + + + +
+
+ + + + + + + + + + + + + + + + + +
+
+

Public Members

+ +
+

+ public + + + + + + type: string + + + + source + +

+ + + + + + + + +
+
+ + + + + + + + + + + + + + + + + +
+
+

+ public + + + + + + value: * + + + + source + +

+ + + + + + + + +
+
+ + + + + + + + + + + + + + + + + +
+
+

Public Methods

+ +
+

+ public + + + + + + evaluate(): * + + + + source + +

+ + + + + + + + +
+
+ +
+

Return:

+ + + + + + + +
*
+
+
+
+ + + + + + + + + + + + + + + +
+
+
+ + + + + + + + + + + + diff --git a/docs/class/lib/interp/ast.js~Word.html b/docs/class/lib/interp/ast.js~Word.html new file mode 100644 index 0000000..c0aa661 --- /dev/null +++ b/docs/class/lib/interp/ast.js~Word.html @@ -0,0 +1,476 @@ + + + + + + Word | eggtended-js + + + + + + + +
+ Home + + Reference + Source + Test + +
+ + + +
+
import {Word} from 'eggtended-js/lib/interp/ast.js'
+ public + class + + + + | source +
+ +
+

Word

+ + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + +

Constructor Summary

+ + + + + + + + + +
Public Constructor
+ public + + + + + +
+

+ + + + constructor() +

+
+
+ + + +
+
+ + +
+
+

Member Summary

+ + + + + + + + + + + + + + +
Public Members
+ public + + + + + +
+

+ + + + name: * +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ + + + type: string +

+
+
+ + + +
+
+ + +
+
+

Method Summary

+ + + + + + + + + +
Public Methods
+ public + + + + + +
+

+ + + + evaluate(env: *): * +

+
+
+ + + +
+
+ + +
+
+ + + + + +

Public Constructors

+ +
+

+ public + + + + + + constructor() + + + + source + +

+ + + + + + + + +
+
+ + + + + + + + + + + + + + + + + +
+
+

Public Members

+ +
+

+ public + + + + + + name: * + + + + source + +

+ + + + + + + + +
+
+ + + + + + + + + + + + + + + + + +
+
+

+ public + + + + + + type: string + + + + source + +

+ + + + + + + + +
+
+ + + + + + + + + + + + + + + + + +
+
+

Public Methods

+ +
+

+ public + + + + + + evaluate(env: *): * + + + + source + +

+ + + + + + + + +
+

Params:

+ + + + + + + + + + + + + +
NameTypeAttributeDescription
env*
+
+
+ +
+

Return:

+ + + + + + + +
*
+
+
+
+ + + + + + + + + + + + + + + +
+
+
+ + + + + + + + + + + + diff --git a/docs/class/lib/interp/eggvm.js~Eggvm.html b/docs/class/lib/interp/eggvm.js~Eggvm.html new file mode 100644 index 0000000..91bf475 --- /dev/null +++ b/docs/class/lib/interp/eggvm.js~Eggvm.html @@ -0,0 +1,649 @@ + + + + + + Eggvm | eggtended-js + + + + + + + +
+ Home + + Reference + Source + Test + +
+ + + +
+
import {Eggvm} from 'eggtended-js/lib/interp/eggvm.js'
+ public + class + + + + | source +
+ +
+

Eggvm

+ + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +

Static Method Summary

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Static Public Methods
+ public + static + + + + +
+

+ + + + eval(tree: *, env: *): * +

+
+
+ + + +
+
+ + +
+ public + static + + + + +
+

+ + + + getEnvFromFile(file: *): * +

+
+
+ + + +
+
+ + +
+ public + static + + + + +
+

+ + + + run(program: *): * +

+
+
+ + + +
+
+ + +
+ public + static + + + + +
+

+ + + + runFromEVM(file: *): * +

+
+
+ + + +
+
+ + +
+ public + static + + + + +
+

+ + + + runFromFile(file: *): * +

+
+
+ + + +
+
+ + +
+
+ + + + + + + +

Static Public Methods

+ +
+

+ public + static + + + + + eval(tree: *, env: *): * + + + + source + +

+ + + + + + + + +
+

Params:

+ + + + + + + + + + + + + + + + + + + +
NameTypeAttributeDescription
tree*
env*
+
+
+ +
+

Return:

+ + + + + + + +
*
+
+
+
+ + + + + + + + + + + + + + + +
+
+

+ public + static + + + + + getEnvFromFile(file: *): * + + + + source + +

+ + + + + + + + +
+

Params:

+ + + + + + + + + + + + + +
NameTypeAttributeDescription
file*
+
+
+ +
+

Return:

+ + + + + + + +
*
+
+
+
+ + + + + + + + + + + + + + + +
+
+

+ public + static + + + + + run(program: *): * + + + + source + +

+ + + + + + + + +
+

Params:

+ + + + + + + + + + + + + +
NameTypeAttributeDescription
program*
+
+
+ +
+

Return:

+ + + + + + + +
*
+
+
+
+ + + + + + + + + + + + + + + +
+
+

+ public + static + + + + + runFromEVM(file: *): * + + + + source + +

+ + + + + + + + +
+

Params:

+ + + + + + + + + + + + + +
NameTypeAttributeDescription
file*
+
+
+ +
+

Return:

+ + + + + + + +
*
+
+
+
+ + + + + + + + + + + + + + + +
+
+

+ public + static + + + + + runFromFile(file: *): * + + + + source + +

+ + + + + + + + +
+

Params:

+ + + + + + + + + + + + + +
NameTypeAttributeDescription
file*
+
+
+ +
+

Return:

+ + + + + + + +
*
+
+
+
+ + + + + + + + + + + + + + + +
+
+ + + +
+ + + + + + + + + + + + diff --git a/docs/class/lib/parser/lexer.js~Lexer.html b/docs/class/lib/parser/lexer.js~Lexer.html new file mode 100644 index 0000000..3088219 --- /dev/null +++ b/docs/class/lib/parser/lexer.js~Lexer.html @@ -0,0 +1,1481 @@ + + + + + + Lexer | eggtended-js + + + + + + + +
+ Home + + Reference + Source + Test + +
+ + + +
+
import {Lexer} from 'eggtended-js/lib/parser/lexer.js'
+ public + class + + + + | source +
+ +
+

Lexer

+ + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +

Static Method Summary

+ + + + + + + + + + + + + + + + + + + +
Static Public Methods
+ public + static + + + + +
+

+ + + + setTokens(tokens: *) +

+
+
+ + + +
+
+ + +
+ public + static + + + + +
+

+ + + + tokenize(program: *): * +

+
+
+ + + +
+
+ + +
+ public + static + + + + +
+

+ + + + tokenizeFromFile(file: *): * +

+
+
+ + + +
+
+ + +
+
+

Constructor Summary

+ + + + + + + + + +
Public Constructor
+ public + + + + + +
+

+ + + + constructor() +

+
+
+ + + +
+
+ + +
+
+

Member Summary

+ + + + + + + + + + + + + + + + + + + +
Public Members
+ public + + + + + +
+

+ + + + lastIndex: number +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ + + + line: number +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ + + + program: * +

+
+
+ + + +
+
+ + +
+
+

Method Summary

+ + + + + + + + + + + + + + + + + + + + + + + + +
Public Methods
+ public + + + + + +
+

+ + + + getParBalance(program: *): * +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ + + + setProgram(program: *): * +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ + + + tokenize(program: *): * +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ + + + tokenizeFromFile(file: *): * +

+
+
+ + + +
+
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + +
Private Methods
+ private + + + + + +
+

+ + + + __transformTokens(tokens: *): * +

+
+
+ + + +
+
+ + +
+ private + + + + + +
+

+ + + + __updateLastIndices() +

+
+
+ + + +
+
+ + +
+ private + + + + + +
+

+ + + + _getToken(): * +

+
+
+ + + +
+
+ + +
+ private + + + + + +
+

+ + + + _getTokens(): * +

+
+
+ + + +
+
+ + +
+
+ + + + +

Static Public Methods

+ +
+

+ public + static + + + + + setTokens(tokens: *) + + + + source + +

+ + + + + + + + +
+

Params:

+ + + + + + + + + + + + + +
NameTypeAttributeDescription
tokens*
+
+
+ + + + + + + + + + + + + + + + + +
+
+

+ public + static + + + + + tokenize(program: *): * + + + + source + +

+ + + + + + + + +
+

Params:

+ + + + + + + + + + + + + +
NameTypeAttributeDescription
program*
+
+
+ +
+

Return:

+ + + + + + + +
*
+
+
+
+ + + + + + + + + + + + + + + +
+
+

+ public + static + + + + + tokenizeFromFile(file: *): * + + + + source + +

+ + + + + + + + +
+

Params:

+ + + + + + + + + + + + + +
NameTypeAttributeDescription
file*
+
+
+ +
+

Return:

+ + + + + + + +
*
+
+
+
+ + + + + + + + + + + + + + + +
+
+

Public Constructors

+ +
+

+ public + + + + + + constructor() + + + + source + +

+ + + + + + + + +
+
+ + + + + + + + + + + + + + + + + +
+
+

Public Members

+ +
+

+ public + + + + + + lastIndex: number + + + + source + +

+ + + + + + + + +
+
+ + + + + + + + + + + + + + + + + +
+
+

+ public + + + + + + line: number + + + + source + +

+ + + + + + + + +
+
+ + + + + + + + + + + + + + + + + +
+
+

+ public + + + + + + program: * + + + + source + +

+ + + + + + + + +
+
+ + + + + + + + + + + + + + + + + +
+
+

Public Methods

+ +
+

+ public + + + + + + getParBalance(program: *): * + + + + source + +

+ + + + + + + + +
+

Params:

+ + + + + + + + + + + + + +
NameTypeAttributeDescription
program*
+
+
+ +
+

Return:

+ + + + + + + +
*
+
+
+
+ + + + + + + + + + + + + + + +
+
+

+ public + + + + + + setProgram(program: *): * + + + + source + +

+ + + + + + + + +
+

Params:

+ + + + + + + + + + + + + +
NameTypeAttributeDescription
program*
+
+
+ +
+

Return:

+ + + + + + + +
*
+
+
+
+ + + + + + + + + + + + + + + +
+
+

+ public + + + + + + tokenize(program: *): * + + + + source + +

+ + + + + + + + +
+

Params:

+ + + + + + + + + + + + + +
NameTypeAttributeDescription
program*
+
+
+ +
+

Return:

+ + + + + + + +
*
+
+
+
+ + + + + + + + + + + + + + + +
+
+

+ public + + + + + + tokenizeFromFile(file: *): * + + + + source + +

+ + + + + + + + +
+

Params:

+ + + + + + + + + + + + + +
NameTypeAttributeDescription
file*
+
+
+ +
+

Return:

+ + + + + + + +
*
+
+
+
+ + + + + + + + + + + + + + + +
+

Private Methods

+ +
+

+ private + + + + + + __transformTokens(tokens: *): * + + + + source + +

+ + + + + + + + +
+

Params:

+ + + + + + + + + + + + + +
NameTypeAttributeDescription
tokens*
+
+
+ +
+

Return:

+ + + + + + + +
*
+
+
+
+ + + + + + + + + + + + + + + +
+
+

+ private + + + + + + __updateLastIndices() + + + + source + +

+ + + + + + + + +
+
+ + + + + + + + + + + + + + + + + +
+
+

+ private + + + + + + _getToken(): * + + + + source + +

+ + + + + + + + +
+
+ +
+

Return:

+ + + + + + + +
*
+
+
+
+ + + + + + + + + + + + + + + +
+
+

+ private + + + + + + _getTokens(): * + + + + source + +

+ + + + + + + + +
+
+ +
+

Return:

+ + + + + + + +
*
+
+
+
+ + + + + + + + + + + + + + + +
+
+
+ + + + + + + + + + + + diff --git a/docs/class/lib/parser/parse.js~Parser.html b/docs/class/lib/parser/parse.js~Parser.html new file mode 100644 index 0000000..01ad0bd --- /dev/null +++ b/docs/class/lib/parser/parse.js~Parser.html @@ -0,0 +1,1397 @@ + + + + + + Parser | eggtended-js + + + + + + + +
+ Home + + Reference + Source + Test + +
+ + + +
+
import {Parser} from 'eggtended-js/lib/parser/parse.js'
+ public + class + + + + | source +
+ +
+

Parser

+ + + + + + + + + + + + + + + +

Parser class. Iterates through the given string, tokenizes it and returns a AST tree.

+
+ + + + + + + + + +
+ + +

Static Method Summary

+ + + + + + + + + + + + + + +
Static Public Methods
+ public + static + + + + +
+

+ + + + parse(program: *): * +

+
+
+ + + +
+
+ + +
+ public + static + + + + +
+

+ + + + parseFromFile(file: *): * +

+
+
+ + + +
+
+ + +
+
+

Constructor Summary

+ + + + + + + + + +
Public Constructor
+ public + + + + + +
+

+ + + + constructor() +

+
+
+ + +

Attributes used by the parser, set to default values

+
+
+
+ + +
+
+

Member Summary

+ + + + + + + + + + + + + + + + + + + + + + + + +
Public Members
+ public + + + + + +
+

+ + + + index: number +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ + + + lookahead: * +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ + + + program: * +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ + + + tokens: *[] +

+
+
+ + + +
+
+ + +
+
+

Method Summary

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Public Methods
+ public + + + + + +
+

+ + + + parse(program: *): * +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ + + + parseApply(expr: *): * +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ + + + parseExpression(): * +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ + + + parseFromFile(file: *): * +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ + + + setProgram(program: *): * +

+
+
+ + + +
+
+ + +
+ + + + + + + + + + + + + + + +
Private Methods
+ private + + + + + +
+

+ + + + __nextToken(): * +

+
+
+ + + +
+
+ + +
+ private + + + + + +
+

+ + + + __parserSyntaxError(message: *): * +

+
+
+ + + +
+
+ + +
+
+ + + + +

Static Public Methods

+ +
+

+ public + static + + + + + parse(program: *): * + + + + source + +

+ + + + + + + + +
+

Params:

+ + + + + + + + + + + + + +
NameTypeAttributeDescription
program*
+
+
+ +
+

Return:

+ + + + + + + +
*
+
+
+
+ + + + + + + + + + + + + + + +
+
+

+ public + static + + + + + parseFromFile(file: *): * + + + + source + +

+ + + + + + + + +
+

Params:

+ + + + + + + + + + + + + +
NameTypeAttributeDescription
file*
+
+
+ +
+

Return:

+ + + + + + + +
*
+
+
+
+ + + + + + + + + + + + + + + +
+
+

Public Constructors

+ +
+

+ public + + + + + + constructor() + + + + source + +

+ + + + +

Attributes used by the parser, set to default values

+
+ + + +
+
+ + + + + + + + + + + + + + + + + +
+
+

Public Members

+ +
+

+ public + + + + + + index: number + + + + source + +

+ + + + + + + + +
+
+ + + + + + + + + + + + + + + + + +
+
+

+ public + + + + + + lookahead: * + + + + source + +

+ + + + + + + + +
+
+ + + + + + + + + + + + + + + + + +
+
+

+ public + + + + + + program: * + + + + source + +

+ + + + + + + + +
+
+ + + + + + + + + + + + + + + + + +
+
+

+ public + + + + + + tokens: *[] + + + + source + +

+ + + + + + + + +
+
+ + + + + + + + + + + + + + + + + +
+
+

Public Methods

+ +
+

+ public + + + + + + parse(program: *): * + + + + source + +

+ + + + + + + + +
+

Params:

+ + + + + + + + + + + + + +
NameTypeAttributeDescription
program*
+
+
+ +
+

Return:

+ + + + + + + +
*
+
+
+
+ + + + + + + + + + + + + + + +
+
+

+ public + + + + + + parseApply(expr: *): * + + + + source + +

+ + + + + + + + +
+

Params:

+ + + + + + + + + + + + + +
NameTypeAttributeDescription
expr*
+
+
+ +
+

Return:

+ + + + + + + +
*
+
+
+
+ + + + + + + + + + + + + + + +
+
+

+ public + + + + + + parseExpression(): * + + + + source + +

+ + + + + + + + +
+
+ +
+

Return:

+ + + + + + + +
*
+
+
+
+ + + + + + + + + + + + + + + +
+
+

+ public + + + + + + parseFromFile(file: *): * + + + + source + +

+ + + + + + + + +
+

Params:

+ + + + + + + + + + + + + +
NameTypeAttributeDescription
file*
+
+
+ +
+

Return:

+ + + + + + + +
*
+
+
+
+ + + + + + + + + + + + + + + +
+
+

+ public + + + + + + setProgram(program: *): * + + + + source + +

+ + + + + + + + +
+

Params:

+ + + + + + + + + + + + + +
NameTypeAttributeDescription
program*
+
+
+ +
+

Return:

+ + + + + + + +
*
+
+
+
+ + + + + + + + + + + + + + + +
+

Private Methods

+ +
+

+ private + + + + + + __nextToken(): * + + + + source + +

+ + + + + + + + +
+
+ +
+

Return:

+ + + + + + + +
*
+
+
+
+ + + + + + + + + + + + + + + +
+
+

+ private + + + + + + __parserSyntaxError(message: *): * + + + + source + +

+ + + + + + + + +
+

Params:

+ + + + + + + + + + + + + +
NameTypeAttributeDescription
message*
+
+
+ +
+

Return:

+ + + + + + + +
*
+
+
+
+ + + + + + + + + + + + + + + +
+
+
+ + + + + + + + + + + + diff --git a/docs/class/lib/parser/tokenRegex.js~TokenRegex.html b/docs/class/lib/parser/tokenRegex.js~TokenRegex.html new file mode 100644 index 0000000..f858a5d --- /dev/null +++ b/docs/class/lib/parser/tokenRegex.js~TokenRegex.html @@ -0,0 +1,812 @@ + + + + + + TokenRegex | eggtended-js + + + + + + + +
+ Home + + Reference + Source + Test + +
+ + + +
+
+ public + class + + + + | source +
+ +
+

TokenRegex

+ +
+ You can directly use an instance of this class. + + COMMA +LP +NEWLINE +NUMBER +REGEX +RP +STRING +WHITES +WORD +
+ + + + + + + + + + + + + + + + + + + + + + + +
+ + + +

Constructor Summary

+ + + + + + + + + +
Public Constructor
+ public + + + + + +
+

+ + + + constructor() +

+
+
+ + + +
+
+ + +
+
+

Member Summary

+ + + + + + + + + + + + + + + + + + + + + + + + +
Public Members
+ public + + + + + +
+

+ + + + expression: * +

+
+
+ + + +
+
+ + +
+ public + + get + + + +
+

+ + + + lastIndex: * +

+
+
+ + + +
+
+ + +
+ public + + set + + + +
+

+ + + + lastIndex +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ + + + name: * +

+
+
+ + + +
+
+ + +
+
+

Method Summary

+ + + + + + + + + + + + + + + + + + + +
Public Methods
+ public + + + + + +
+

+ + + + exec(program: *): * +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ + + + reset(): * +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ + + + test(program: *): * +

+
+
+ + + +
+
+ + +
+
+ + + + + +

Public Constructors

+ +
+

+ public + + + + + + constructor() + + + + source + +

+ + + + + + + + +
+
+ + + + + + + + + + + + + + + + + +
+
+

Public Members

+ +
+

+ public + + + + + + expression: * + + + + source + +

+ + + + + + + + +
+
+ + + + + + + + + + + + + + + + + +
+
+

+ public + + get + + + + lastIndex: * + + + + source + +

+ + + + + + + + +
+
+ + + + + + + + + + + + + + + + + +
+
+

+ public + + set + + + + lastIndex + + + + source + +

+ + + + + + + + +
+
+ + + + + + + + + + + + + + + + + +
+
+

+ public + + + + + + name: * + + + + source + +

+ + + + + + + + +
+
+ + + + + + + + + + + + + + + + + +
+
+

Public Methods

+ +
+

+ public + + + + + + exec(program: *): * + + + + source + +

+ + + + + + + + +
+

Params:

+ + + + + + + + + + + + + +
NameTypeAttributeDescription
program*
+
+
+ +
+

Return:

+ + + + + + + +
*
+
+
+
+ + + + + + + + + + + + + + + +
+
+

+ public + + + + + + reset(): * + + + + source + +

+ + + + + + + + +
+
+ +
+

Return:

+ + + + + + + +
*
+
+
+
+ + + + + + + + + + + + + + + +
+
+

+ public + + + + + + test(program: *): * + + + + source + +

+ + + + + + + + +
+

Params:

+ + + + + + + + + + + + + +
NameTypeAttributeDescription
program*
+
+
+ +
+

Return:

+ + + + + + + +
*
+
+
+
+ + + + + + + + + + + + + + + +
+
+
+ + + + + + + + + + + + diff --git a/docs/coverage.json b/docs/coverage.json index 39866de..173fe6c 100644 --- a/docs/coverage.json +++ b/docs/coverage.json @@ -1,24 +1,19 @@ { - "coverage": "0.66%", - "expectCount": 151, - "actualCount": 1, + "coverage": "1.9%", + "expectCount": 105, + "actualCount": 2, "files": { "lib/interp/arithm.js": { - "expectCount": 3, + "expectCount": 1, "actualCount": 0, "undocumentLines": [ - 1, - 3, 41 ] }, "lib/interp/ast.js": { - "expectCount": 25, + "expectCount": 22, "actualCount": 0, "undocumentLines": [ - 2, - 3, - 5, 7, 8, 9, @@ -44,13 +39,9 @@ ] }, "lib/interp/eggvm.js": { - "expectCount": 10, + "expectCount": 6, "actualCount": 0, "undocumentLines": [ - 6, - 8, - 9, - 10, 12, 13, 19, @@ -59,73 +50,33 @@ 43 ] }, - "lib/interp/environment.js": { - "expectCount": 1, - "actualCount": 0, - "undocumentLines": [ - 1 - ] - }, - "lib/interp/index.js": { - "expectCount": 2, - "actualCount": 0, - "undocumentLines": [ - 1, - 2 - ] - }, "lib/interp/monkey-patching.js": { - "expectCount": 3, + "expectCount": 2, "actualCount": 0, "undocumentLines": [ - 2, 4, 31 ] }, "lib/interp/registry.js": { - "expectCount": 4, + "expectCount": 2, "actualCount": 0, "undocumentLines": [ - 1, - 3, 6, 7 ] }, - "lib/interp/require.js": { - "expectCount": 2, - "actualCount": 0, - "undocumentLines": [ - 1, - 2 - ] - }, - "lib/parser/index.js": { - "expectCount": 4, - "actualCount": 0, - "undocumentLines": [ - 1, - 2, - 3, - 4 - ] - }, "lib/parser/json2AST.js": { - "expectCount": 3, + "expectCount": 1, "actualCount": 0, "undocumentLines": [ - 1, - 2, 4 ] }, "lib/parser/lexer.js": { - "expectCount": 18, + "expectCount": 16, "actualCount": 0, "undocumentLines": [ - 1, - 2, 4, 5, 6, @@ -145,33 +96,29 @@ ] }, "lib/parser/parse.js": { - "expectCount": 18, - "actualCount": 1, + "expectCount": 15, + "actualCount": 2, "undocumentLines": [ - 1, - 3, - 4, - 10, - 11, - 12, - 13, + 15, 16, 17, - 26, - 47, + 20, + 21, + 30, 51, - 57, + 55, 61, - 80, - 113, - 119 + 65, + 84, + 117, + 123 ] }, "lib/parser/tokenRegex.js": { - "expectCount": 19, + "expectCount": 18, "actualCount": 0, "undocumentLines": [ - 1, + 47, 3, 4, 5, @@ -181,7 +128,6 @@ 17, 23, 38, - 47, 56, 63, 73, @@ -193,11 +139,9 @@ ] }, "lib/repl/colors.js": { - "expectCount": 7, + "expectCount": 5, "actualCount": 0, "undocumentLines": [ - 1, - 2, 4, 5, 6, @@ -206,53 +150,38 @@ ] }, "lib/repl/extensions.js": { - "expectCount": 18, + "expectCount": 12, "actualCount": 0, "undocumentLines": [ - 1, - 2, - 4, - 5, - 6, - 8, + 25, + 90, + 102, + 122, 14, 20, - 25, 32, 41, 60, 65, 69, - 77, - 90, - 102, - 122 + 77 ] }, "lib/repl/repl.js": { - "expectCount": 9, + "expectCount": 1, "actualCount": 0, "undocumentLines": [ - 1, - 2, - 4, - 5, - 6, - 7, - 9, - 10, 12 ] }, "lib/utils.js": { - "expectCount": 5, + "expectCount": 4, "actualCount": 0, "undocumentLines": [ - 1, - 3, 5, 11, - 21 + 21, + 3 ] } } diff --git a/docs/file/lib/interp/arithm.js.html b/docs/file/lib/interp/arithm.js.html index dd1b2f5..6ef033a 100644 --- a/docs/file/lib/interp/arithm.js.html +++ b/docs/file/lib/interp/arithm.js.html @@ -8,7 +8,7 @@ - +
@@ -24,12 +24,50 @@ -
+ diff --git a/docs/file/lib/interp/ast.js.html b/docs/file/lib/interp/ast.js.html index 8e880a4..011f76f 100644 --- a/docs/file/lib/interp/ast.js.html +++ b/docs/file/lib/interp/ast.js.html @@ -8,7 +8,7 @@ - +
@@ -24,12 +24,50 @@ -
+ diff --git a/docs/file/lib/interp/eggvm.js.html b/docs/file/lib/interp/eggvm.js.html index 5356549..1fc791a 100644 --- a/docs/file/lib/interp/eggvm.js.html +++ b/docs/file/lib/interp/eggvm.js.html @@ -8,7 +8,7 @@ - +
@@ -24,12 +24,50 @@ -
+ diff --git a/docs/file/lib/interp/environment.js.html b/docs/file/lib/interp/environment.js.html index ef62752..3879726 100644 --- a/docs/file/lib/interp/environment.js.html +++ b/docs/file/lib/interp/environment.js.html @@ -8,7 +8,7 @@ - +
@@ -24,12 +24,50 @@ -
+ diff --git a/docs/file/lib/interp/index.js.html b/docs/file/lib/interp/index.js.html index c2417da..d706c78 100644 --- a/docs/file/lib/interp/index.js.html +++ b/docs/file/lib/interp/index.js.html @@ -8,7 +8,7 @@ - +
@@ -24,12 +24,50 @@ -
+ diff --git a/docs/file/lib/interp/monkey-patching.js.html b/docs/file/lib/interp/monkey-patching.js.html index ad19ca8..e8cbaf8 100644 --- a/docs/file/lib/interp/monkey-patching.js.html +++ b/docs/file/lib/interp/monkey-patching.js.html @@ -8,7 +8,7 @@ - +
@@ -24,12 +24,50 @@ -
+ diff --git a/docs/file/lib/interp/registry.js.html b/docs/file/lib/interp/registry.js.html index e416f0f..260cd4a 100644 --- a/docs/file/lib/interp/registry.js.html +++ b/docs/file/lib/interp/registry.js.html @@ -8,7 +8,7 @@ - +
@@ -24,12 +24,50 @@ -
+ diff --git a/docs/file/lib/interp/require.js.html b/docs/file/lib/interp/require.js.html index 7495df9..8080ab8 100644 --- a/docs/file/lib/interp/require.js.html +++ b/docs/file/lib/interp/require.js.html @@ -8,7 +8,7 @@ - +
@@ -24,12 +24,50 @@ -
+ diff --git a/docs/file/lib/parser/index.js.html b/docs/file/lib/parser/index.js.html index b377bf4..14cfcd9 100644 --- a/docs/file/lib/parser/index.js.html +++ b/docs/file/lib/parser/index.js.html @@ -8,7 +8,7 @@ - +
@@ -24,12 +24,50 @@ -
+ diff --git a/docs/file/lib/parser/json2AST.js.html b/docs/file/lib/parser/json2AST.js.html index 7ef90df..0fb5ac9 100644 --- a/docs/file/lib/parser/json2AST.js.html +++ b/docs/file/lib/parser/json2AST.js.html @@ -8,7 +8,7 @@ - +
@@ -24,12 +24,50 @@ -
+ diff --git a/docs/file/lib/parser/lexer.js.html b/docs/file/lib/parser/lexer.js.html index d34972a..b537345 100644 --- a/docs/file/lib/parser/lexer.js.html +++ b/docs/file/lib/parser/lexer.js.html @@ -8,7 +8,7 @@ - +
@@ -24,12 +24,50 @@ -
+ diff --git a/docs/file/lib/parser/parse.js.html b/docs/file/lib/parser/parse.js.html index 3945c62..a2a4ec9 100644 --- a/docs/file/lib/parser/parse.js.html +++ b/docs/file/lib/parser/parse.js.html @@ -8,7 +8,7 @@ - +
@@ -24,12 +24,50 @@ -
+ @@ -41,8 +79,12 @@ /** * Parser class. Iterates through the given string, tokenizes it and returns a AST tree. + * @access public */ class Parser { + /** + * Attributes used by the parser, set to default values + */ constructor() { this.index = 0; this.tokens = []; diff --git a/docs/file/lib/parser/tokenRegex.js.html b/docs/file/lib/parser/tokenRegex.js.html index bcf4f07..7532da8 100644 --- a/docs/file/lib/parser/tokenRegex.js.html +++ b/docs/file/lib/parser/tokenRegex.js.html @@ -8,7 +8,7 @@ - +
@@ -24,12 +24,50 @@ -
+ diff --git a/docs/file/lib/repl/colors.js.html b/docs/file/lib/repl/colors.js.html index 6584335..e8d8185 100644 --- a/docs/file/lib/repl/colors.js.html +++ b/docs/file/lib/repl/colors.js.html @@ -8,7 +8,7 @@ - +
@@ -24,12 +24,50 @@ -
+ diff --git a/docs/file/lib/repl/extensions.js.html b/docs/file/lib/repl/extensions.js.html index 390423e..425d20f 100644 --- a/docs/file/lib/repl/extensions.js.html +++ b/docs/file/lib/repl/extensions.js.html @@ -8,7 +8,7 @@ - +
@@ -24,12 +24,50 @@ -
+ diff --git a/docs/file/lib/repl/repl.js.html b/docs/file/lib/repl/repl.js.html index c86d1d7..de28c90 100644 --- a/docs/file/lib/repl/repl.js.html +++ b/docs/file/lib/repl/repl.js.html @@ -8,7 +8,7 @@ - +
@@ -24,12 +24,50 @@ -
+ diff --git a/docs/file/lib/utils.js.html b/docs/file/lib/utils.js.html index 6fd0a89..753cb0a 100644 --- a/docs/file/lib/utils.js.html +++ b/docs/file/lib/utils.js.html @@ -8,7 +8,7 @@ - +
@@ -24,12 +24,50 @@ -
+ diff --git a/docs/function/index.html b/docs/function/index.html new file mode 100644 index 0000000..d690b3f --- /dev/null +++ b/docs/function/index.html @@ -0,0 +1,835 @@ + + + + + + Function | eggtended-js + + + + + + + +
+ Home + + Reference + Source + Test + +
+ + + +

Function

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Static Public Summary
+ public + + + + + +
+

+ + + + checkIterable(object: *, length: *) +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ + + * + chunk(arr: *, step: *) +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ + + + eggCompleter(line: *, env: *): undefined[] +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ + + + getPromptLine(): string +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ + + + getValidIndex(length: *, index: *): * +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ + + + ins(x: *) +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ + + + json2AST(tree: *): * +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ + + + repl() +

+
+
+ + + +
+
+ + +
+
+

Static Public

+ +
+

+ public + + + + + + checkIterable(object: *, length: *) + + + + source + +

+ +
import {checkIterable} from 'eggtended-js/lib/utils.js'
+ + + + + + +
+

Params:

+ + + + + + + + + + + + + + + + + + + +
NameTypeAttributeDescription
object*
length*
+
+
+ + + + + + + + + + + + + + + + + +
+
+

+ public + + + + + * + chunk(arr: *, step: *) + + + + source + +

+ +
import {chunk} from 'eggtended-js/lib/utils.js'
+ + + + + + +
+

Params:

+ + + + + + + + + + + + + + + + + + + +
NameTypeAttributeDescription
arr*
step*
+
+
+ + + + + + + + + + + + + + + + + +
+
+

+ public + + + + + + eggCompleter(line: *, env: *): undefined[] + + + + source + +

+ +
import {eggCompleter} from 'eggtended-js/lib/repl/extensions.js'
+ + + + + + +
+

Params:

+ + + + + + + + + + + + + + + + + + + +
NameTypeAttributeDescription
line*
env*
+
+
+ +
+

Return:

+ + + + + + + +
undefined[]
+
+
+
+ + + + + + + + + + + + + + + +
+
+

+ public + + + + + + getPromptLine(): string + + + + source + +

+ +
import {getPromptLine} from 'eggtended-js/lib/repl/extensions.js'
+ + + + + + +
+
+ +
+

Return:

+ + + + + + + +
string
+
+
+
+ + + + + + + + + + + + + + + +
+
+

+ public + + + + + + getValidIndex(length: *, index: *): * + + + + source + +

+ +
import {getValidIndex} from 'eggtended-js/lib/utils.js'
+ + + + + + +
+

Params:

+ + + + + + + + + + + + + + + + + + + +
NameTypeAttributeDescription
length*
index*
+
+
+ +
+

Return:

+ + + + + + + +
*
+
+
+
+ + + + + + + + + + + + + + + +
+
+

+ public + + + + + + ins(x: *) + + + + source + +

+ +
import {ins} from 'eggtended-js/lib/utils.js'
+ + + + + + +
+

Params:

+ + + + + + + + + + + + + +
NameTypeAttributeDescription
x*
+
+
+ + + + + + + + + + + + + + + + + +
+
+

+ public + + + + + + json2AST(tree: *): * + + + + source + +

+ +
import {json2AST} from 'eggtended-js/lib/parser/json2AST.js'
+ + + + + + +
+

Params:

+ + + + + + + + + + + + + +
NameTypeAttributeDescription
tree*
+
+
+ +
+

Return:

+ + + + + + + +
*
+
+
+
+ + + + + + + + + + + + + + + +
+
+

+ public + + + + + + repl() + + + + source + +

+ +
import {repl} from 'eggtended-js/lib/repl/repl.js'
+ + + + + + +
+
+ + + + + + + + + + + + + + + + + +
+
+
+ + + + + + + + + + + + diff --git a/docs/identifiers.html b/docs/identifiers.html index 6e76d8d..cc72975 100644 --- a/docs/identifiers.html +++ b/docs/identifiers.html @@ -8,7 +8,7 @@ - +
@@ -24,12 +24,50 @@ -
+ @@ -38,9 +76,1119 @@
-
- +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + +
summary
+ public + + + + + +
+

+ F + + + checkIterable(object: *, length: *) +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ F + + * + chunk(arr: *, step: *) +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ F + + + getValidIndex(length: *, index: *): * +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ F + + + ins(x: *) +

+
+
+ + + +
+
+ + +
+
+
+
+

interp

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
summary
+ public + + + + + +
+

+ C + + + Apply +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ C + + + Regex +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ C + + + Value +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ C + + + Word +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ C + + + Eggvm +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ V + + + SpecialForms: * +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ V + + + TopEnv: * +

+
+
+ + + +
+
+ + +
+
+
+
+

parser

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
summary
+ public + + + + + +
+

+ C + + + Lexer +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ C + + + Parser +

+
+
+ + +

Parser class.

+
+
+
+ + +
+ public + + + + + +
+

+ C + + + TokenRegex +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ F + + + json2AST(tree: *): * +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ V + + + COMMA: TokenRegex +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ V + + + LP: TokenRegex +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ V + + + NEWLINE: TokenRegex +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ V + + + NUMBER: TokenRegex +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ V + + + REGEX: TokenRegex +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ V + + + RP: TokenRegex +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ V + + + STRING: TokenRegex +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ V + + + WHITES: TokenRegex +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ V + + + WORD: TokenRegex +

+
+
+ + + +
+
+ + +
+
+
+
+

repl

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
summary
+ public + + + + + +
+

+ F + + + eggCompleter(line: *, env: *): undefined[] +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ F + + + getPromptLine(): string +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ F + + + repl() +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ V + + + BLUE: * +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ V + + + DEFAULT: * +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ V + + + GREEN: * +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ V + + + RED: * +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ V + + + YELLOW: * +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ V + + + eggClear: * +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ V + + + eggExit: * +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ V + + + eggHelp: * +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ V + + + eggInfo: * +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ V + + + eggRun: * +

+
+
+ + + +
+
+ + +
+ public + + + + + +
+

+ V + + + eggVersion: * +

+
+
+ + + +
+
+ + +
+
+
+
+ +
+
Directories
+
interp
+
parser
+
repl
+
diff --git a/docs/image/github.png b/docs/image/github.png new file mode 100644 index 0000000..ea6ff54 Binary files /dev/null and b/docs/image/github.png differ diff --git a/docs/index.html b/docs/index.html index c905af6..592f096 100644 --- a/docs/index.html +++ b/docs/index.html @@ -8,7 +8,7 @@ - +
@@ -24,12 +24,50 @@ -
+ diff --git a/docs/index.json b/docs/index.json index 62689e3..45652ca 100644 --- a/docs/index.json +++ b/docs/index.json @@ -576,48 +576,6 @@ }, { "__docId__": 49, - "kind": "variable", - "name": "SpecialForms", - "memberof": "lib/interp/arithm.js", - "static": true, - "longname": "lib/interp/arithm.js~SpecialForms", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/interp/arithm.js", - "importStyle": null, - "description": null, - "lineNumber": 1, - "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true - }, - { - "__docId__": 50, - "kind": "variable", - "name": "Value", - "memberof": "lib/interp/arithm.js", - "static": true, - "longname": "lib/interp/arithm.js~Value", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/interp/arithm.js", - "importStyle": null, - "description": null, - "lineNumber": 3, - "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true - }, - { - "__docId__": 51, "kind": "function", "name": "incrementHelper", "memberof": "lib/interp/arithm.js", @@ -660,7 +618,7 @@ "ignore": true }, { - "__docId__": 52, + "__docId__": 50, "kind": "file", "name": "lib/interp/ast.js", "content": "// AST class nodes\nconst xRegExp = require(\"xregexp\");\nconst utils = require(\"../utils.js\");\n\nconst { SpecialForms } = require(\"./environment.js\");\n\nclass Value {\n constructor(token) {\n this.type = \"value\";\n this.value = token.value;\n }\n\n evaluate() {\n return this.value;\n }\n}\n\nclass Word {\n constructor(token) {\n this.type = \"word\";\n this.name = token.value;\n }\n\n evaluate(env) {\n // Variable\n if (this.name in env) {\n return env[this.name];\n\n // Variable in const scope\n } else if (this.name in env[\"__const__\"]) {\n return env[\"__const__\"][this.name];\n\n // Object variable referenced without using 'this'\n } else if (\"this\" in env && this.name in env[\"this\"]) {\n return env[\"this\"][this.name];\n } else {\n throw new ReferenceError(`Undefined variable: ${this.name}`);\n }\n }\n}\n\nclass Apply {\n constructor(expr) {\n this.type = \"apply\";\n this.operator = expr;\n this.args = [];\n }\n\n evaluate(env) {\n // Check if its a specialForm function\n if (this.operator.type === \"word\" && this.operator.name in SpecialForms) {\n return SpecialForms[this.operator.name](this.args, env);\n }\n\n // Evaluated operator\n let op = this.operator.evaluate(env);\n // Evaluated arguments\n let evArgs = this.args.map(arg => arg.evaluate(env));\n\n if (typeof op === \"function\") {\n // Is a function\n return op(...evArgs);\n }\n\n if (typeof op !== \"undefined\") {\n // Is an object, number, string or boolean\n let name = evArgs[0];\n let methodArgs = evArgs.slice(1);\n\n // Check if the name of the method/property is defined on the object\n if (typeof op[name] !== \"undefined\") {\n // Execute as function\n if (typeof op[name] === \"function\") {\n return op[name](...methodArgs);\n\n // Return as property\n } else {\n return op[name];\n }\n\n // If the name of the method is not defined on the object...\n } else {\n // Check if its a Map property.\n if (op instanceof Map) {\n if (typeof op.get(name) === \"function\") {\n return op.get(name)(...methodArgs);\n } else {\n return op.get(name);\n }\n }\n\n // Try to call the 'missing' method\n if (typeof op[\"__missing__\"] === \"function\") {\n return op[\"__missing__\"](...methodArgs);\n\n // As a last resort, throw an Exception\n } else {\n throw new SyntaxError(`The method '${name}' was not found on the\n object '${utils.ins(op)}'`);\n }\n }\n }\n\n throw new TypeError(`Could not resolve the apply expression`);\n }\n}\n\nclass Regex {\n constructor(token) {\n this.type = \"regex\";\n\n this.body = token.body;\n this.flags = token.flags;\n }\n\n evaluate() {\n return new xRegExp(this.body, this.flags);\n }\n}\n\nmodule.exports = {\n Value,\n Word,\n Apply,\n Regex\n};\n", @@ -671,87 +629,23 @@ "lineNumber": 1 }, { - "__docId__": 53, - "kind": "variable", - "name": "xRegExp", - "memberof": "lib/interp/ast.js", - "static": true, - "longname": "lib/interp/ast.js~xRegExp", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/interp/ast.js", - "importStyle": null, - "description": null, - "lineNumber": 2, - "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true - }, - { - "__docId__": 54, - "kind": "variable", - "name": "utils", - "memberof": "lib/interp/ast.js", - "static": true, - "longname": "lib/interp/ast.js~utils", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/interp/ast.js", - "importStyle": null, - "description": null, - "lineNumber": 3, - "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true - }, - { - "__docId__": 55, - "kind": "variable", - "name": "SpecialForms", - "memberof": "lib/interp/ast.js", - "static": true, - "longname": "lib/interp/ast.js~SpecialForms", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/interp/ast.js", - "importStyle": null, - "description": null, - "lineNumber": 5, - "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true - }, - { - "__docId__": 56, + "__docId__": 51, "kind": "class", "name": "Value", "memberof": "lib/interp/ast.js", "static": true, "longname": "lib/interp/ast.js~Value", "access": "public", - "export": false, + "export": true, "importPath": "eggtended-js/lib/interp/ast.js", - "importStyle": null, + "importStyle": "{Value}", "description": null, "lineNumber": 7, "undocument": true, - "interface": false, - "ignore": true + "interface": false }, { - "__docId__": 57, + "__docId__": 52, "kind": "constructor", "name": "constructor", "memberof": "lib/interp/ast.js~Value", @@ -765,7 +659,7 @@ "undocument": true }, { - "__docId__": 58, + "__docId__": 53, "kind": "member", "name": "type", "memberof": "lib/interp/ast.js~Value", @@ -782,7 +676,7 @@ } }, { - "__docId__": 59, + "__docId__": 54, "kind": "member", "name": "value", "memberof": "lib/interp/ast.js~Value", @@ -799,7 +693,7 @@ } }, { - "__docId__": 60, + "__docId__": 55, "kind": "method", "name": "evaluate", "memberof": "lib/interp/ast.js~Value", @@ -819,24 +713,23 @@ } }, { - "__docId__": 61, + "__docId__": 56, "kind": "class", "name": "Word", "memberof": "lib/interp/ast.js", "static": true, "longname": "lib/interp/ast.js~Word", "access": "public", - "export": false, + "export": true, "importPath": "eggtended-js/lib/interp/ast.js", - "importStyle": null, + "importStyle": "{Word}", "description": null, "lineNumber": 18, "undocument": true, - "interface": false, - "ignore": true + "interface": false }, { - "__docId__": 62, + "__docId__": 57, "kind": "constructor", "name": "constructor", "memberof": "lib/interp/ast.js~Word", @@ -850,7 +743,7 @@ "undocument": true }, { - "__docId__": 63, + "__docId__": 58, "kind": "member", "name": "type", "memberof": "lib/interp/ast.js~Word", @@ -867,7 +760,7 @@ } }, { - "__docId__": 64, + "__docId__": 59, "kind": "member", "name": "name", "memberof": "lib/interp/ast.js~Word", @@ -884,7 +777,7 @@ } }, { - "__docId__": 65, + "__docId__": 60, "kind": "method", "name": "evaluate", "memberof": "lib/interp/ast.js~Word", @@ -911,24 +804,23 @@ } }, { - "__docId__": 66, + "__docId__": 61, "kind": "class", "name": "Apply", "memberof": "lib/interp/ast.js", "static": true, "longname": "lib/interp/ast.js~Apply", "access": "public", - "export": false, + "export": true, "importPath": "eggtended-js/lib/interp/ast.js", - "importStyle": null, + "importStyle": "{Apply}", "description": null, "lineNumber": 42, "undocument": true, - "interface": false, - "ignore": true + "interface": false }, { - "__docId__": 67, + "__docId__": 62, "kind": "constructor", "name": "constructor", "memberof": "lib/interp/ast.js~Apply", @@ -942,7 +834,7 @@ "undocument": true }, { - "__docId__": 68, + "__docId__": 63, "kind": "member", "name": "type", "memberof": "lib/interp/ast.js~Apply", @@ -959,7 +851,7 @@ } }, { - "__docId__": 69, + "__docId__": 64, "kind": "member", "name": "operator", "memberof": "lib/interp/ast.js~Apply", @@ -976,7 +868,7 @@ } }, { - "__docId__": 70, + "__docId__": 65, "kind": "member", "name": "args", "memberof": "lib/interp/ast.js~Apply", @@ -993,7 +885,7 @@ } }, { - "__docId__": 71, + "__docId__": 66, "kind": "method", "name": "evaluate", "memberof": "lib/interp/ast.js~Apply", @@ -1020,24 +912,23 @@ } }, { - "__docId__": 72, + "__docId__": 67, "kind": "class", "name": "Regex", "memberof": "lib/interp/ast.js", "static": true, "longname": "lib/interp/ast.js~Regex", "access": "public", - "export": false, + "export": true, "importPath": "eggtended-js/lib/interp/ast.js", - "importStyle": null, + "importStyle": "{Regex}", "description": null, "lineNumber": 108, "undocument": true, - "interface": false, - "ignore": true + "interface": false }, { - "__docId__": 73, + "__docId__": 68, "kind": "constructor", "name": "constructor", "memberof": "lib/interp/ast.js~Regex", @@ -1051,7 +942,7 @@ "undocument": true }, { - "__docId__": 74, + "__docId__": 69, "kind": "member", "name": "type", "memberof": "lib/interp/ast.js~Regex", @@ -1068,7 +959,7 @@ } }, { - "__docId__": 75, + "__docId__": 70, "kind": "member", "name": "body", "memberof": "lib/interp/ast.js~Regex", @@ -1085,7 +976,7 @@ } }, { - "__docId__": 76, + "__docId__": 71, "kind": "member", "name": "flags", "memberof": "lib/interp/ast.js~Regex", @@ -1102,7 +993,7 @@ } }, { - "__docId__": 77, + "__docId__": 72, "kind": "method", "name": "evaluate", "memberof": "lib/interp/ast.js~Regex", @@ -1122,7 +1013,7 @@ } }, { - "__docId__": 78, + "__docId__": 73, "kind": "file", "name": "lib/interp/eggvm.js", "content": "// Add monkey-patching functions and extended functions\nrequire(\"./monkey-patching.js\");\nrequire(\"./require.js\");\nrequire(\"./arithm.js\");\n\nconst fs = require(\"fs\");\n\nconst { Parser } = require(\"../parser/parse.js\");\nconst { TopEnv } = require(\"./environment.js\");\nconst { json2AST } = require(\"../parser/json2AST.js\");\n\nclass Eggvm {\n static run(program) {\n const tree = Parser.parse(program);\n\n return Eggvm.eval(tree);\n }\n\n static runFromFile(file) {\n const program = fs.readFileSync(file, \"utf8\");\n\n return Eggvm.run(program);\n }\n\n static runFromEVM(file) {\n const rawData = fs.readFileSync(file);\n let json = JSON.parse(rawData);\n\n const tree = json2AST(json);\n\n return Eggvm.eval(tree);\n }\n\n static eval(tree, env) {\n // Create a new env if not already defined on parameters\n if (env === undefined || env === null) {\n env = Object.create(TopEnv);\n }\n\n return tree !== null ? tree.evaluate(env) : null;\n }\n\n static getEnvFromFile(file) {\n const env = Object.create(TopEnv);\n const tree = Parser.parseFromFile(file);\n Eggvm.eval(tree, env);\n\n return env;\n }\n}\n\nmodule.exports = {\n Eggvm\n};\n", @@ -1133,108 +1024,23 @@ "lineNumber": 1 }, { - "__docId__": 79, - "kind": "variable", - "name": "fs", - "memberof": "lib/interp/eggvm.js", - "static": true, - "longname": "lib/interp/eggvm.js~fs", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/interp/eggvm.js", - "importStyle": null, - "description": null, - "lineNumber": 6, - "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true - }, - { - "__docId__": 80, - "kind": "variable", - "name": "Parser", - "memberof": "lib/interp/eggvm.js", - "static": true, - "longname": "lib/interp/eggvm.js~Parser", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/interp/eggvm.js", - "importStyle": null, - "description": null, - "lineNumber": 8, - "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true - }, - { - "__docId__": 81, - "kind": "variable", - "name": "TopEnv", - "memberof": "lib/interp/eggvm.js", - "static": true, - "longname": "lib/interp/eggvm.js~TopEnv", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/interp/eggvm.js", - "importStyle": null, - "description": null, - "lineNumber": 9, - "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true - }, - { - "__docId__": 82, - "kind": "variable", - "name": "json2AST", - "memberof": "lib/interp/eggvm.js", - "static": true, - "longname": "lib/interp/eggvm.js~json2AST", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/interp/eggvm.js", - "importStyle": null, - "description": null, - "lineNumber": 10, - "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true - }, - { - "__docId__": 83, + "__docId__": 74, "kind": "class", "name": "Eggvm", "memberof": "lib/interp/eggvm.js", "static": true, "longname": "lib/interp/eggvm.js~Eggvm", "access": "public", - "export": false, + "export": true, "importPath": "eggtended-js/lib/interp/eggvm.js", - "importStyle": null, + "importStyle": "{Eggvm}", "description": null, "lineNumber": 12, "undocument": true, - "interface": false, - "ignore": true + "interface": false }, { - "__docId__": 84, + "__docId__": 75, "kind": "method", "name": "run", "memberof": "lib/interp/eggvm.js~Eggvm", @@ -1261,7 +1067,7 @@ } }, { - "__docId__": 85, + "__docId__": 76, "kind": "method", "name": "runFromFile", "memberof": "lib/interp/eggvm.js~Eggvm", @@ -1288,7 +1094,7 @@ } }, { - "__docId__": 86, + "__docId__": 77, "kind": "method", "name": "runFromEVM", "memberof": "lib/interp/eggvm.js~Eggvm", @@ -1315,7 +1121,7 @@ } }, { - "__docId__": 87, + "__docId__": 78, "kind": "method", "name": "eval", "memberof": "lib/interp/eggvm.js~Eggvm", @@ -1348,7 +1154,7 @@ } }, { - "__docId__": 88, + "__docId__": 79, "kind": "method", "name": "getEnvFromFile", "memberof": "lib/interp/eggvm.js~Eggvm", @@ -1375,7 +1181,7 @@ } }, { - "__docId__": 89, + "__docId__": 80, "kind": "file", "name": "lib/interp/environment.js", "content": "const { SpecialForms, TopEnv } = require(\"./registry.js\");\n\nmodule.exports = {\n SpecialForms,\n TopEnv\n};\n", @@ -1386,28 +1192,7 @@ "lineNumber": 1 }, { - "__docId__": 90, - "kind": "variable", - "name": "SpecialForms", - "memberof": "lib/interp/environment.js", - "static": true, - "longname": "lib/interp/environment.js~SpecialForms", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/interp/environment.js", - "importStyle": null, - "description": null, - "lineNumber": 1, - "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true - }, - { - "__docId__": 91, + "__docId__": 81, "kind": "file", "name": "lib/interp/index.js", "content": "const { Eggvm } = require(\"./eggvm.js\");\nconst { Value, Word, Apply, Regex } = require(\"./ast.js\");\n\nmodule.exports = {\n Eggvm,\n Value,\n Word,\n Apply,\n Regex\n};\n", @@ -1418,49 +1203,7 @@ "lineNumber": 1 }, { - "__docId__": 92, - "kind": "variable", - "name": "Eggvm", - "memberof": "lib/interp/index.js", - "static": true, - "longname": "lib/interp/index.js~Eggvm", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/interp/index.js", - "importStyle": null, - "description": null, - "lineNumber": 1, - "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true - }, - { - "__docId__": 93, - "kind": "variable", - "name": "Value", - "memberof": "lib/interp/index.js", - "static": true, - "longname": "lib/interp/index.js~Value", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/interp/index.js", - "importStyle": null, - "description": null, - "lineNumber": 2, - "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true - }, - { - "__docId__": 94, + "__docId__": 82, "kind": "file", "name": "lib/interp/monkey-patching.js", "content": "// SUB\nconst utils = require(\"../utils.js\");\n\nObject.prototype.sub = function(...indices) {\n utils.checkIterable(this, indices.length);\n\n // Get index\n let index = indices[0];\n if (this instanceof Array) {\n index = utils.getValidIndex(this.length, indices[0]);\n }\n\n // Get value\n let value;\n if (this instanceof Map) {\n value = this.get(index);\n } else {\n value = this[index];\n }\n\n // Return value or keep recursion\n if (indices.length === 1) {\n return value;\n }\n\n return value.sub(...indices.slice(1));\n};\n\n// SETELEM\n\nObject.prototype.setelem = function(value, ...indices) {\n utils.checkIterable(this, indices.length);\n\n // Get index\n let index = indices[0];\n if (this instanceof Array) {\n index = utils.getValidIndex(this.length, indices[0]);\n }\n\n // Set value or continue the recursion\n if (indices.length === 1) {\n if (this instanceof Map) {\n this.set(index, value);\n } else {\n this[index] = value;\n }\n\n return value;\n }\n\n const obj = this.sub(index);\n return obj.setelem(value, ...indices.slice(1));\n};\n\n// NUMBER\n\n[\"+\", \"-\", \"*\", \"/\"].forEach(op => {\n Number.prototype[op] = new Function(\n \"...values\",\n `return [this, ...values].reduce((a, b) => a ${op} b);`\n );\n});\n\nNumber.prototype[\"__missing__\"] = Number.prototype[\"+\"];\n", @@ -1471,28 +1214,7 @@ "lineNumber": 1 }, { - "__docId__": 95, - "kind": "variable", - "name": "utils", - "memberof": "lib/interp/monkey-patching.js", - "static": true, - "longname": "lib/interp/monkey-patching.js~utils", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/interp/monkey-patching.js", - "importStyle": null, - "description": null, - "lineNumber": 2, - "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true - }, - { - "__docId__": 96, + "__docId__": 83, "kind": "function", "name": "sub", "memberof": "lib/interp/monkey-patching.js", @@ -1524,7 +1246,7 @@ "ignore": true }, { - "__docId__": 97, + "__docId__": 84, "kind": "function", "name": "setelem", "memberof": "lib/interp/monkey-patching.js", @@ -1562,7 +1284,7 @@ "ignore": true }, { - "__docId__": 98, + "__docId__": 85, "kind": "file", "name": "lib/interp/registry.js", "content": "const xRegExp = require(\"xregexp\");\n\nconst utils = require(\"../utils.js\");\n\n// specialForms and topEnv maps\nconst SpecialForms = Object.create(null);\nconst TopEnv = Object.create(null);\n\nSpecialForms[\"if\"] = (args, env) => {\n if (args.length !== 3) {\n throw new SyntaxError(\"Bad number of args passed to if\");\n }\n\n if (args[0].evaluate(env) === true) {\n return args[1].evaluate(env);\n } else {\n return args[2].evaluate(env);\n }\n};\n\nSpecialForms[\"while\"] = (args, env) => {\n if (args.length !== 2) {\n throw new SyntaxError(\"Bad number of args passed to while\");\n }\n\n while (args[0].evaluate(env) === true) {\n args[1].evaluate(env);\n }\n\n // Egg has no undefined so we return false when there's no meaningful result\n return false;\n};\n\nSpecialForms[\"for\"] = (args, env) => {\n if (args.length !== 4) {\n throw new SyntaxError(\"Bad number of args passed to for\");\n }\n\n const forEnv = Object.create(env);\n forEnv[\"__const__\"] = {};\n\n // Variable\n args[0].evaluate(forEnv);\n\n // Condition\n while (args[1].evaluate(forEnv) === true) {\n // Body\n args[3].evaluate(forEnv);\n\n // Increment\n args[2].evaluate(forEnv);\n }\n\n return false;\n};\n\nSpecialForms[\"foreach\"] = (args, env) => {\n if (args.length !== 3) {\n throw new SyntaxError(\"Bad number of args passed to foreach\");\n }\n\n if (args[0].type !== \"word\") {\n throw new SyntaxError(\"The first argument to foreach must be a valid word\");\n }\n\n const localEnv = Object.create(env);\n\n const iterable = args[1].evaluate(localEnv);\n for (const val of iterable) {\n localEnv[args[0].name] = val;\n args[2].evaluate(localEnv);\n }\n\n return false;\n};\n\nSpecialForms[\"do\"] = (args, env) => {\n let value = false;\n\n args.forEach(arg => {\n value = arg.evaluate(env);\n });\n\n return value;\n};\n\nSpecialForms[\"def\"] = SpecialForms[\"define\"] = SpecialForms[\":=\"] = (args, env) => {\n if (args.length !== 2 || args[0].type !== \"word\") {\n throw new SyntaxError(\"Bad use of define\");\n }\n\n let value = args[1].evaluate(env);\n\n let valName = args[0].name;\n\n if (valName in env[\"__const__\"]) {\n throw new ReferenceError(`Trying to change 'const' variable ${args[0].name}`);\n }\n\n env[valName] = value;\n return value;\n};\n\nSpecialForms[\"fun\"] = SpecialForms[\"->\"] = (args, env) => {\n if (!args.length) {\n throw new SyntaxError(\"Functions need a body.\");\n }\n\n function name(expr) {\n if (expr.type !== \"word\") {\n throw new SyntaxError(\"Arg names must be words\");\n }\n\n return expr.name;\n }\n\n let argNames = args.slice(0, args.length - 1).map(name);\n let body = args[args.length - 1];\n\n return function() {\n if (arguments.length !== argNames.length) {\n throw new TypeError(\"Wrong number of arguments\");\n }\n\n let localEnv = Object.create(env);\n localEnv[\"__const__\"] = {};\n\n for (let i = 0; i < arguments.length; i++) {\n localEnv[argNames[i]] = arguments[i];\n }\n\n return body.evaluate(localEnv);\n };\n};\n\nSpecialForms[\"set\"] = SpecialForms[\"=\"] = (args, env) => {\n if (args[0].type !== \"word\") {\n throw new SyntaxError(\"Bad use of set\");\n }\n\n let valName = args[0].name;\n\n let indices = args.slice(1, -1).map(arg => arg.evaluate(env));\n\n let value = args[args.length - 1].evaluate(env);\n\n for (let scope = env; scope; scope = Object.getPrototypeOf(scope)) {\n if (valName in scope[\"__const__\"]) {\n throw new ReferenceError(`Trying to change 'const' variable ${args[0].name}`);\n }\n\n // TODO: Reduce code duplication\n if (\"this\" in scope) {\n // TODO: use hasOwnProperty ?\n\n if (Object.prototype.hasOwnProperty.call(scope[\"this\"], valName)) {\n if (indices.length === 0) {\n scope[\"this\"][valName] = value;\n } else {\n scope[\"this\"][valName].setelem(value, ...indices);\n }\n\n return value;\n }\n }\n\n if (Object.prototype.hasOwnProperty.call(scope, valName)) {\n if (indices.length === 0) {\n scope[valName] = value;\n } else {\n scope[valName].setelem(value, ...indices);\n }\n\n return value;\n }\n }\n\n throw new ReferenceError(`Tried setting an undefined variable: ${valName}`);\n};\n\nSpecialForms[\"object\"] = (args, env) => {\n // Create a new object and a new scope\n const object = {};\n const objectEnv = Object.create(env);\n objectEnv[\"__const__\"] = {};\n\n // Add the variable 'this' as a reference to the current object\n objectEnv[\"this\"] = object;\n\n // Evaluate the arguments and add the methods/properties to the object\n const evArgs = args.map(arg => arg.evaluate(objectEnv));\n\n for (const pair of utils.chunk(evArgs, 2)) {\n const name = pair[0];\n const value = pair[1];\n\n object[name] = value;\n }\n\n return object;\n};\n\nSpecialForms[\"const\"] = (args, env) => {\n if (args[0].type !== \"word\") {\n throw new SyntaxError(\"Bad number of arguments\");\n }\n\n let value = args[1].evaluate(env);\n env[\"__const__\"][args[0].name] = value;\n\n return value;\n};\n\nSpecialForms[\"try\"] = (args, env) => {\n if (args.length < 2) {\n throw new SyntaxError(\"Bad use of try-catch block\");\n }\n\n const body = args[0];\n const catch_body = args[1];\n\n try {\n body.evaluate(env);\n } catch (err) {\n env[\"__error__\"] = err;\n catch_body.evaluate(env);\n } finally {\n if (args.length === 3) {\n const finally_body = args[2];\n\n finally_body.evaluate(env);\n }\n }\n\n return false;\n};\n\n// TODO: Continue implementing class?\n//\n// SpecialForms['class'] = (args, env) => {\n// // const evArgs = args.map((arg) => evaluate(arg, env));\n//\n// const newClass = function(x, y) {\n// this.x = x;\n// this.y = y;\n// }\n//\n// return newClass;\n// }\n\n[\"+\", \"-\", \"*\", \"/\", \"==\", \"!=\", \"<\", \">\", \">=\", \"<=\", \"&&\", \"||\"].forEach(op => {\n TopEnv[op] = new Function(\"a, b\", `return a ${op} b;`);\n});\n\nTopEnv[\"true\"] = true;\nTopEnv[\"false\"] = false;\nTopEnv[\"null\"] = null;\n\nTopEnv[\"__const__\"] = {};\n\nTopEnv[\"print\"] = value => {\n console.log(value);\n return value;\n};\n\nTopEnv[\"arr\"] = TopEnv[\"array\"] = (...args) => {\n return args;\n};\n\nTopEnv[\"map\"] = TopEnv[\"dict\"] = (...args) => {\n return new Map(utils.chunk(args, 2));\n};\n\nTopEnv[\"<-\"] = TopEnv[\"[]\"] = TopEnv[\"element\"] = (object, ...indices) => {\n return object.sub(...indices);\n};\n\nTopEnv[\"length\"] = array => {\n return array.length;\n};\n\nTopEnv[\"RegExp\"] = (method, ...args) => {\n return xRegExp[method](...args);\n};\n\nTopEnv[\"child\"] = parent => {\n return Object.create(parent);\n};\n\nTopEnv[\"throw\"] = obj => {\n throw obj;\n};\n\n// WIP: Continue implementing class?\n// TopEnv['new'] = (...args) => {\n// const className = args[0];\n//\n// // TODO: Check for more exceptions\n// if(typeof className !== \"function\") {\n// throw new SyntaxError(`${className} must be a class with a constructor.`)\n// }\n//\n// return new className(...args.slice(1));\n//\n\nmodule.exports = {\n SpecialForms,\n TopEnv\n};\n", @@ -1573,58 +1295,16 @@ "lineNumber": 1 }, { - "__docId__": 99, - "kind": "variable", - "name": "xRegExp", - "memberof": "lib/interp/registry.js", - "static": true, - "longname": "lib/interp/registry.js~xRegExp", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/interp/registry.js", - "importStyle": null, - "description": null, - "lineNumber": 1, - "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true - }, - { - "__docId__": 100, - "kind": "variable", - "name": "utils", - "memberof": "lib/interp/registry.js", - "static": true, - "longname": "lib/interp/registry.js~utils", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/interp/registry.js", - "importStyle": null, - "description": null, - "lineNumber": 3, - "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true - }, - { - "__docId__": 101, + "__docId__": 86, "kind": "variable", "name": "SpecialForms", "memberof": "lib/interp/registry.js", "static": true, "longname": "lib/interp/registry.js~SpecialForms", "access": "public", - "export": false, + "export": true, "importPath": "eggtended-js/lib/interp/registry.js", - "importStyle": null, + "importStyle": "{SpecialForms}", "description": null, "lineNumber": 6, "undocument": true, @@ -1632,20 +1312,19 @@ "types": [ "*" ] - }, - "ignore": true + } }, { - "__docId__": 102, + "__docId__": 87, "kind": "variable", "name": "TopEnv", "memberof": "lib/interp/registry.js", "static": true, "longname": "lib/interp/registry.js~TopEnv", "access": "public", - "export": false, + "export": true, "importPath": "eggtended-js/lib/interp/registry.js", - "importStyle": null, + "importStyle": "{TopEnv}", "description": null, "lineNumber": 7, "undocument": true, @@ -1653,11 +1332,10 @@ "types": [ "*" ] - }, - "ignore": true + } }, { - "__docId__": 103, + "__docId__": 88, "kind": "file", "name": "lib/interp/require.js", "content": "const { TopEnv } = require(\"./environment.js\");\nconst { Parser } = require(\"../parser/parse.js\");\n\nTopEnv[\"require\"] = file => {\n if (!(file in TopEnv[\"require\"].cache)) {\n const tree = Parser.parseFromFile(file);\n const env = Object.create(TopEnv);\n\n tree.evaluate(env);\n\n const module = { exports: env[\"module\"].exports };\n\n TopEnv[\"require\"].cache[file] = module;\n }\n\n return TopEnv[\"require\"].cache[file].exports;\n};\n\nTopEnv[\"require\"].cache = Object.create(null);\nTopEnv[\"module\"] = { exports: {} };\n", @@ -1668,346 +1346,134 @@ "lineNumber": 1 }, { - "__docId__": 104, - "kind": "variable", - "name": "TopEnv", - "memberof": "lib/interp/require.js", + "__docId__": 89, + "kind": "file", + "name": "lib/parser/index.js", + "content": "const { Lexer } = require(\"./lexer.js\");\nconst { Parser } = require(\"./parse.js\");\nconst { TokenRegex } = require(\"./tokenRegex.js\");\nconst { json2AST } = require(\"./json2AST.js\");\n\nmodule.exports = {\n Lexer,\n Parser,\n TokenRegex,\n json2AST\n};\n", "static": true, - "longname": "lib/interp/require.js~TopEnv", + "longname": "/home/dav/eggtended-js/lib/parser/index.js", "access": "public", - "export": false, - "importPath": "eggtended-js/lib/interp/require.js", - "importStyle": null, "description": null, - "lineNumber": 1, - "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true + "lineNumber": 1 }, { - "__docId__": 105, - "kind": "variable", - "name": "Parser", - "memberof": "lib/interp/require.js", + "__docId__": 90, + "kind": "file", + "name": "lib/parser/json2AST.js", + "content": "const { Value, Word, Apply, Regex } = require(\"../interp/ast.js\");\nconst utils = require(\"../utils.js\");\n\nconst json2AST = tree => {\n let obj = null;\n\n if (tree.type == \"apply\") {\n obj = new Apply(tree);\n obj.operator = json2AST(tree.operator);\n obj.args = tree.args.map(arg => json2AST(arg));\n } else if (tree.type == \"word\") {\n obj = new Word(tree);\n obj.name = tree.name;\n } else if (tree.type == \"value\") {\n obj = new Value(tree);\n } else if (tree.type == \"regex\") {\n obj = new Regex(tree);\n obj.body = tree.body;\n obj.flags = tree.flags;\n } else {\n throw new SyntaxError(`Unrecognized token ${utils.ins(tree)}`);\n }\n\n return obj;\n};\n\nmodule.exports = {\n json2AST\n};\n", "static": true, - "longname": "lib/interp/require.js~Parser", + "longname": "/home/dav/eggtended-js/lib/parser/json2AST.js", "access": "public", - "export": false, - "importPath": "eggtended-js/lib/interp/require.js", - "importStyle": null, "description": null, - "lineNumber": 2, + "lineNumber": 1 + }, + { + "__docId__": 91, + "kind": "function", + "name": "json2AST", + "memberof": "lib/parser/json2AST.js", + "generator": false, + "async": false, + "static": true, + "longname": "lib/parser/json2AST.js~json2AST", + "access": "public", + "export": true, + "importPath": "eggtended-js/lib/parser/json2AST.js", + "importStyle": "{json2AST}", + "description": null, + "lineNumber": 4, "undocument": true, - "type": { + "params": [ + { + "name": "tree", + "types": [ + "*" + ] + } + ], + "return": { "types": [ "*" ] - }, - "ignore": true + } }, { - "__docId__": 106, + "__docId__": 92, "kind": "file", - "name": "lib/parser/index.js", - "content": "const { Lexer } = require(\"./lexer.js\");\nconst { Parser } = require(\"./parse.js\");\nconst { TokenRegex } = require(\"./tokenRegex.js\");\nconst { json2AST } = require(\"./json2AST.js\");\n\nmodule.exports = {\n Lexer,\n Parser,\n TokenRegex,\n json2AST\n};\n", + "name": "lib/parser/lexer.js", + "content": "const tokenRegex = require(\"./tokenRegex.js\");\nconst fs = require(\"fs\");\n\nclass Lexer {\n constructor() {\n this.lastIndex = 0;\n this.line = 1;\n }\n\n setProgram(program) {\n this.program = program;\n\n this.lastIndex = 0;\n this.line = 1;\n\n return this;\n }\n\n tokenize(program) {\n this.setProgram(program);\n\n return this._getTokens();\n }\n\n static tokenize(program) {\n return new Lexer().tokenize(program);\n }\n\n tokenizeFromFile(file) {\n const program = fs.readFileSync(file, \"utf8\");\n\n return this.tokenize(program);\n }\n\n static tokenizeFromFile(file) {\n return new Lexer().tokenizeFromFile(file);\n }\n\n static setTokens(tokens) {\n Lexer.TOKENS = tokens;\n }\n\n getParBalance(program) {\n this.setProgram(program);\n\n let stack = 0;\n const tokens = this._getTokens();\n for (const token of tokens) {\n if (token.type === \"LP\") {\n ++stack;\n } else if (token.type === \"RP\") {\n --stack;\n }\n }\n\n return stack;\n }\n\n _getTokens() {\n const tokens = [];\n\n let currentToken = this._getToken();\n while (currentToken !== null) {\n tokens.push(currentToken);\n\n currentToken = this._getToken();\n }\n\n return this.__transformTokens(tokens);\n }\n\n _getToken() {\n // Update lastIndex property for each expression used\n this.__updateLastIndices();\n\n // Match and ignore whitespaces and newlines\n let whitespaces = Lexer.WHITES.exec(this.program);\n if (whitespaces !== null) {\n if (Lexer.NEWLINE.exec(whitespaces.value)) {\n ++this.line;\n }\n this.lastIndex = Lexer.WHITES.lastIndex;\n\n return this._getToken();\n }\n\n // Iterate through each regex\n let token = null;\n for (let i = 0; i < Lexer.TOKENS.length; ++i) {\n let match = Lexer.TOKENS[i].exec(this.program);\n\n // When matching a expression, add the current line and set the token\n if (match !== null) {\n match.line = this.line;\n this.lastIndex = Lexer.TOKENS[i].lastIndex;\n\n token = match;\n break;\n }\n }\n\n // Return the matched token, or null if anything was found\n return token;\n }\n\n __transformTokens(tokens) {\n for (let i = 0; i < tokens.length; ++i) {\n // x: => \"x\",\n if (tokens[i].type === \"WORD\") {\n const nextToken = tokens[i + 1];\n if (nextToken && nextToken.value === \":\") {\n tokens[i].type = \"STRING\";\n }\n }\n\n // Replace dots with parentehsis\n // a.b => a(\"b\")\n // a.b.c => a(\"b\")(\"c\")\n // a.b(c, d) => a(\"b\", c, d)\n if (tokens[i].type === \"LP\" && tokens[i].value === \".\") {\n tokens[i].value = \"(\";\n\n const expr = tokens[i + 1];\n const arg = tokens[i + 2];\n\n if (expr && expr.type === \"WORD\") {\n expr.type = \"STRING\";\n }\n\n if (arg && arg.type === \"LP\" && arg.value !== \".\") {\n arg.type = \"COMMA\";\n arg.value = \",\";\n } else {\n tokens.splice(i + 2, 0, { type: \"RP\", value: \")\" });\n }\n }\n }\n\n return tokens;\n }\n\n __updateLastIndices() {\n Lexer.TOKENS.forEach(expr => {\n expr.lastIndex = this.lastIndex;\n });\n Lexer.WHITES.lastIndex = this.lastIndex;\n Lexer.NEWLINE.lastIndex = this.lastIndex;\n }\n}\n\nLexer.TOKENS = [\n tokenRegex.NUMBER,\n tokenRegex.STRING,\n tokenRegex.REGEX,\n tokenRegex.WORD,\n tokenRegex.LP,\n tokenRegex.RP,\n tokenRegex.COMMA\n];\n\nLexer.WHITES = tokenRegex.WHITES;\nLexer.NEWLINE = tokenRegex.NEWLINE;\n\nmodule.exports = {\n Lexer\n};\n", "static": true, - "longname": "/home/dav/eggtended-js/lib/parser/index.js", + "longname": "/home/dav/eggtended-js/lib/parser/lexer.js", "access": "public", "description": null, "lineNumber": 1 }, { - "__docId__": 107, - "kind": "variable", + "__docId__": 93, + "kind": "class", "name": "Lexer", - "memberof": "lib/parser/index.js", + "memberof": "lib/parser/lexer.js", "static": true, - "longname": "lib/parser/index.js~Lexer", + "longname": "lib/parser/lexer.js~Lexer", "access": "public", - "export": false, - "importPath": "eggtended-js/lib/parser/index.js", - "importStyle": null, + "export": true, + "importPath": "eggtended-js/lib/parser/lexer.js", + "importStyle": "{Lexer}", "description": null, - "lineNumber": 1, + "lineNumber": 4, "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true + "interface": false }, { - "__docId__": 108, - "kind": "variable", - "name": "Parser", - "memberof": "lib/parser/index.js", - "static": true, - "longname": "lib/parser/index.js~Parser", + "__docId__": 94, + "kind": "constructor", + "name": "constructor", + "memberof": "lib/parser/lexer.js~Lexer", + "generator": false, + "async": false, + "static": false, + "longname": "lib/parser/lexer.js~Lexer#constructor", + "access": "public", + "description": null, + "lineNumber": 5, + "undocument": true + }, + { + "__docId__": 95, + "kind": "member", + "name": "lastIndex", + "memberof": "lib/parser/lexer.js~Lexer", + "static": false, + "longname": "lib/parser/lexer.js~Lexer#lastIndex", "access": "public", - "export": false, - "importPath": "eggtended-js/lib/parser/index.js", - "importStyle": null, "description": null, - "lineNumber": 2, + "lineNumber": 6, "undocument": true, "type": { "types": [ - "*" + "number" ] - }, - "ignore": true + } }, { - "__docId__": 109, - "kind": "variable", - "name": "TokenRegex", - "memberof": "lib/parser/index.js", - "static": true, - "longname": "lib/parser/index.js~TokenRegex", + "__docId__": 96, + "kind": "member", + "name": "line", + "memberof": "lib/parser/lexer.js~Lexer", + "static": false, + "longname": "lib/parser/lexer.js~Lexer#line", "access": "public", - "export": false, - "importPath": "eggtended-js/lib/parser/index.js", - "importStyle": null, "description": null, - "lineNumber": 3, + "lineNumber": 7, "undocument": true, "type": { "types": [ - "*" + "number" ] - }, - "ignore": true + } }, { - "__docId__": 110, - "kind": "variable", - "name": "json2AST", - "memberof": "lib/parser/index.js", - "static": true, - "longname": "lib/parser/index.js~json2AST", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/parser/index.js", - "importStyle": null, - "description": null, - "lineNumber": 4, - "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true - }, - { - "__docId__": 111, - "kind": "file", - "name": "lib/parser/json2AST.js", - "content": "const { Value, Word, Apply, Regex } = require(\"../interp/ast.js\");\nconst utils = require(\"../utils.js\");\n\nconst json2AST = tree => {\n let obj = null;\n\n if (tree.type == \"apply\") {\n obj = new Apply(tree);\n obj.operator = json2AST(tree.operator);\n obj.args = tree.args.map(arg => json2AST(arg));\n } else if (tree.type == \"word\") {\n obj = new Word(tree);\n obj.name = tree.name;\n } else if (tree.type == \"value\") {\n obj = new Value(tree);\n } else if (tree.type == \"regex\") {\n obj = new Regex(tree);\n obj.body = tree.body;\n obj.flags = tree.flags;\n } else {\n throw new SyntaxError(`Unrecognized token ${utils.ins(tree)}`);\n }\n\n return obj;\n};\n\nmodule.exports = {\n json2AST\n};\n", - "static": true, - "longname": "/home/dav/eggtended-js/lib/parser/json2AST.js", - "access": "public", - "description": null, - "lineNumber": 1 - }, - { - "__docId__": 112, - "kind": "variable", - "name": "Value", - "memberof": "lib/parser/json2AST.js", - "static": true, - "longname": "lib/parser/json2AST.js~Value", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/parser/json2AST.js", - "importStyle": null, - "description": null, - "lineNumber": 1, - "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true - }, - { - "__docId__": 113, - "kind": "variable", - "name": "utils", - "memberof": "lib/parser/json2AST.js", - "static": true, - "longname": "lib/parser/json2AST.js~utils", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/parser/json2AST.js", - "importStyle": null, - "description": null, - "lineNumber": 2, - "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true - }, - { - "__docId__": 114, - "kind": "function", - "name": "json2AST", - "memberof": "lib/parser/json2AST.js", - "generator": false, - "async": false, - "static": true, - "longname": "lib/parser/json2AST.js~json2AST", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/parser/json2AST.js", - "importStyle": null, - "description": null, - "lineNumber": 4, - "undocument": true, - "params": [ - { - "name": "tree", - "types": [ - "*" - ] - } - ], - "return": { - "types": [ - "*" - ] - }, - "ignore": true - }, - { - "__docId__": 115, - "kind": "file", - "name": "lib/parser/lexer.js", - "content": "const tokenRegex = require(\"./tokenRegex.js\");\nconst fs = require(\"fs\");\n\nclass Lexer {\n constructor() {\n this.lastIndex = 0;\n this.line = 1;\n }\n\n setProgram(program) {\n this.program = program;\n\n this.lastIndex = 0;\n this.line = 1;\n\n return this;\n }\n\n tokenize(program) {\n this.setProgram(program);\n\n return this._getTokens();\n }\n\n static tokenize(program) {\n return new Lexer().tokenize(program);\n }\n\n tokenizeFromFile(file) {\n const program = fs.readFileSync(file, \"utf8\");\n\n return this.tokenize(program);\n }\n\n static tokenizeFromFile(file) {\n return new Lexer().tokenizeFromFile(file);\n }\n\n static setTokens(tokens) {\n Lexer.TOKENS = tokens;\n }\n\n getParBalance(program) {\n this.setProgram(program);\n\n let stack = 0;\n const tokens = this._getTokens();\n for (const token of tokens) {\n if (token.type === \"LP\") {\n ++stack;\n } else if (token.type === \"RP\") {\n --stack;\n }\n }\n\n return stack;\n }\n\n _getTokens() {\n const tokens = [];\n\n let currentToken = this._getToken();\n while (currentToken !== null) {\n tokens.push(currentToken);\n\n currentToken = this._getToken();\n }\n\n return this.__transformTokens(tokens);\n }\n\n _getToken() {\n // Update lastIndex property for each expression used\n this.__updateLastIndices();\n\n // Match and ignore whitespaces and newlines\n let whitespaces = Lexer.WHITES.exec(this.program);\n if (whitespaces !== null) {\n if (Lexer.NEWLINE.exec(whitespaces.value)) {\n ++this.line;\n }\n this.lastIndex = Lexer.WHITES.lastIndex;\n\n return this._getToken();\n }\n\n // Iterate through each regex\n let token = null;\n for (let i = 0; i < Lexer.TOKENS.length; ++i) {\n let match = Lexer.TOKENS[i].exec(this.program);\n\n // When matching a expression, add the current line and set the token\n if (match !== null) {\n match.line = this.line;\n this.lastIndex = Lexer.TOKENS[i].lastIndex;\n\n token = match;\n break;\n }\n }\n\n // Return the matched token, or null if anything was found\n return token;\n }\n\n __transformTokens(tokens) {\n for (let i = 0; i < tokens.length; ++i) {\n // x: => \"x\",\n if (tokens[i].type === \"WORD\") {\n const nextToken = tokens[i + 1];\n if (nextToken && nextToken.value === \":\") {\n tokens[i].type = \"STRING\";\n }\n }\n\n // Replace dots with parentehsis\n // a.b => a(\"b\")\n // a.b.c => a(\"b\")(\"c\")\n // a.b(c, d) => a(\"b\", c, d)\n if (tokens[i].type === \"LP\" && tokens[i].value === \".\") {\n tokens[i].value = \"(\";\n\n const expr = tokens[i + 1];\n const arg = tokens[i + 2];\n\n if (expr && expr.type === \"WORD\") {\n expr.type = \"STRING\";\n }\n\n if (arg && arg.type === \"LP\" && arg.value !== \".\") {\n arg.type = \"COMMA\";\n arg.value = \",\";\n } else {\n tokens.splice(i + 2, 0, { type: \"RP\", value: \")\" });\n }\n }\n }\n\n return tokens;\n }\n\n __updateLastIndices() {\n Lexer.TOKENS.forEach(expr => {\n expr.lastIndex = this.lastIndex;\n });\n Lexer.WHITES.lastIndex = this.lastIndex;\n Lexer.NEWLINE.lastIndex = this.lastIndex;\n }\n}\n\nLexer.TOKENS = [\n tokenRegex.NUMBER,\n tokenRegex.STRING,\n tokenRegex.REGEX,\n tokenRegex.WORD,\n tokenRegex.LP,\n tokenRegex.RP,\n tokenRegex.COMMA\n];\n\nLexer.WHITES = tokenRegex.WHITES;\nLexer.NEWLINE = tokenRegex.NEWLINE;\n\nmodule.exports = {\n Lexer\n};\n", - "static": true, - "longname": "/home/dav/eggtended-js/lib/parser/lexer.js", - "access": "public", - "description": null, - "lineNumber": 1 - }, - { - "__docId__": 116, - "kind": "variable", - "name": "tokenRegex", - "memberof": "lib/parser/lexer.js", - "static": true, - "longname": "lib/parser/lexer.js~tokenRegex", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/parser/lexer.js", - "importStyle": null, - "description": null, - "lineNumber": 1, - "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true - }, - { - "__docId__": 117, - "kind": "variable", - "name": "fs", - "memberof": "lib/parser/lexer.js", - "static": true, - "longname": "lib/parser/lexer.js~fs", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/parser/lexer.js", - "importStyle": null, - "description": null, - "lineNumber": 2, - "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true - }, - { - "__docId__": 118, - "kind": "class", - "name": "Lexer", - "memberof": "lib/parser/lexer.js", - "static": true, - "longname": "lib/parser/lexer.js~Lexer", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/parser/lexer.js", - "importStyle": null, - "description": null, - "lineNumber": 4, - "undocument": true, - "interface": false, - "ignore": true - }, - { - "__docId__": 119, - "kind": "constructor", - "name": "constructor", - "memberof": "lib/parser/lexer.js~Lexer", - "generator": false, - "async": false, - "static": false, - "longname": "lib/parser/lexer.js~Lexer#constructor", - "access": "public", - "description": null, - "lineNumber": 5, - "undocument": true - }, - { - "__docId__": 120, - "kind": "member", - "name": "lastIndex", - "memberof": "lib/parser/lexer.js~Lexer", - "static": false, - "longname": "lib/parser/lexer.js~Lexer#lastIndex", - "access": "public", - "description": null, - "lineNumber": 6, - "undocument": true, - "type": { - "types": [ - "number" - ] - } - }, - { - "__docId__": 121, - "kind": "member", - "name": "line", - "memberof": "lib/parser/lexer.js~Lexer", - "static": false, - "longname": "lib/parser/lexer.js~Lexer#line", - "access": "public", - "description": null, - "lineNumber": 7, - "undocument": true, - "type": { - "types": [ - "number" - ] - } - }, - { - "__docId__": 122, + "__docId__": 97, "kind": "method", "name": "setProgram", "memberof": "lib/parser/lexer.js~Lexer", @@ -2034,7 +1500,7 @@ } }, { - "__docId__": 123, + "__docId__": 98, "kind": "member", "name": "program", "memberof": "lib/parser/lexer.js~Lexer", @@ -2051,7 +1517,7 @@ } }, { - "__docId__": 126, + "__docId__": 101, "kind": "method", "name": "tokenize", "memberof": "lib/parser/lexer.js~Lexer", @@ -2078,7 +1544,7 @@ } }, { - "__docId__": 127, + "__docId__": 102, "kind": "method", "name": "tokenize", "memberof": "lib/parser/lexer.js~Lexer", @@ -2105,7 +1571,7 @@ } }, { - "__docId__": 128, + "__docId__": 103, "kind": "method", "name": "tokenizeFromFile", "memberof": "lib/parser/lexer.js~Lexer", @@ -2132,7 +1598,7 @@ } }, { - "__docId__": 129, + "__docId__": 104, "kind": "method", "name": "tokenizeFromFile", "memberof": "lib/parser/lexer.js~Lexer", @@ -2159,7 +1625,7 @@ } }, { - "__docId__": 130, + "__docId__": 105, "kind": "method", "name": "setTokens", "memberof": "lib/parser/lexer.js~Lexer", @@ -2182,7 +1648,7 @@ "return": null }, { - "__docId__": 131, + "__docId__": 106, "kind": "method", "name": "getParBalance", "memberof": "lib/parser/lexer.js~Lexer", @@ -2209,7 +1675,7 @@ } }, { - "__docId__": 132, + "__docId__": 107, "kind": "method", "name": "_getTokens", "memberof": "lib/parser/lexer.js~Lexer", @@ -2229,7 +1695,7 @@ } }, { - "__docId__": 133, + "__docId__": 108, "kind": "method", "name": "_getToken", "memberof": "lib/parser/lexer.js~Lexer", @@ -2249,7 +1715,7 @@ } }, { - "__docId__": 136, + "__docId__": 111, "kind": "method", "name": "__transformTokens", "memberof": "lib/parser/lexer.js~Lexer", @@ -2276,7 +1742,7 @@ } }, { - "__docId__": 137, + "__docId__": 112, "kind": "method", "name": "__updateLastIndices", "memberof": "lib/parser/lexer.js~Lexer", @@ -2292,10 +1758,10 @@ "return": null }, { - "__docId__": 138, + "__docId__": 113, "kind": "file", "name": "lib/parser/parse.js", - "content": "const fs = require(\"fs\");\n\nconst { Lexer } = require(\"./lexer.js\");\nconst { Value, Word, Apply, Regex } = require(\"../interp/ast.js\");\n\n/**\n * Parser class. Iterates through the given string, tokenizes it and returns a AST tree.\n */\nclass Parser {\n constructor() {\n this.index = 0;\n this.tokens = [];\n this.lookahead = null;\n }\n\n setProgram(program) {\n this.program = program;\n\n this.index = 0;\n this.tokens = [];\n this.lookahead = null;\n\n return this;\n }\n\n parse(program) {\n this.setProgram(program);\n\n // Get array of tokens\n this.tokens = Lexer.tokenize(program);\n\n let tree = null;\n\n // Parse if the array is not empty\n if (this.tokens.length > 0) {\n this.lookahead = this.__nextToken();\n tree = this.parseExpression();\n }\n\n if (this.lookahead !== null) {\n throw this.__parserSyntaxError(\"Unexpected input after the end of file.\");\n }\n\n return tree;\n }\n\n static parse(program) {\n return new Parser().parse(program);\n }\n\n parseFromFile(file) {\n const program = fs.readFileSync(file, \"utf8\");\n\n return this.parse(program);\n }\n\n static parseFromFile(file) {\n return new Parser().parseFromFile(file);\n }\n\n parseExpression() {\n let expr;\n if (this.lookahead.type === \"STRING\") {\n expr = new Value(this.lookahead);\n } else if (this.lookahead.type === \"NUMBER\") {\n this.lookahead.value = Number(this.lookahead.value);\n expr = new Value(this.lookahead);\n } else if (this.lookahead.type === \"REGEX\") {\n const fields = this.lookahead.value.split(\"/\");\n expr = new Regex({ body: fields[1], flags: fields[2] });\n } else if (this.lookahead.type === \"WORD\") {\n expr = new Word(this.lookahead);\n } else {\n throw this.__parserSyntaxError(\"Unrecognized token while parsing the expression.\");\n }\n\n return this.parseApply(expr);\n }\n\n parseApply(expr) {\n // Get next token\n this.lookahead = this.__nextToken();\n\n // Return if apply is empty (not left parenthesis or null)\n if (!this.lookahead || this.lookahead.type !== \"LP\") {\n return expr;\n }\n\n let tree = new Apply(expr);\n\n this.lookahead = this.__nextToken();\n // Parse all arguments inside the parenthesis\n while (this.lookahead && this.lookahead.type !== \"RP\") {\n let arg = this.parseExpression();\n tree.args.push(arg);\n\n if (\n !this.lookahead ||\n (this.lookahead.type !== \"COMMA\" && this.lookahead.type !== \"RP\")\n ) {\n throw this.__parserSyntaxError(`Missing , or ) after the expression`);\n }\n\n // Don't consume RPs as argument tokens\n if (this.lookahead && this.lookahead.type !== \"RP\") {\n this.lookahead = this.__nextToken();\n }\n }\n\n return this.parseApply(tree);\n }\n\n __nextToken() {\n const token = this.tokens[this.index++];\n\n return token !== undefined ? token : null;\n }\n\n __parserSyntaxError(message) {\n let start = this.lookahead ? this.lookahead.start : this.lastIndex;\n\n return new SyntaxError(\n `Parser::Line ${this.line}::Col ${start}\\n${message}\\n${this.program.slice(\n start - 1,\n start + 10\n )}`\n );\n }\n}\n\nmodule.exports = {\n Parser\n};\n", + "content": "const fs = require(\"fs\");\n\nconst { Lexer } = require(\"./lexer.js\");\nconst { Value, Word, Apply, Regex } = require(\"../interp/ast.js\");\n\n/**\n * Parser class. Iterates through the given string, tokenizes it and returns a AST tree.\n * @access public\n */\nclass Parser {\n /**\n * Attributes used by the parser, set to default values\n */\n constructor() {\n this.index = 0;\n this.tokens = [];\n this.lookahead = null;\n }\n\n setProgram(program) {\n this.program = program;\n\n this.index = 0;\n this.tokens = [];\n this.lookahead = null;\n\n return this;\n }\n\n parse(program) {\n this.setProgram(program);\n\n // Get array of tokens\n this.tokens = Lexer.tokenize(program);\n\n let tree = null;\n\n // Parse if the array is not empty\n if (this.tokens.length > 0) {\n this.lookahead = this.__nextToken();\n tree = this.parseExpression();\n }\n\n if (this.lookahead !== null) {\n throw this.__parserSyntaxError(\"Unexpected input after the end of file.\");\n }\n\n return tree;\n }\n\n static parse(program) {\n return new Parser().parse(program);\n }\n\n parseFromFile(file) {\n const program = fs.readFileSync(file, \"utf8\");\n\n return this.parse(program);\n }\n\n static parseFromFile(file) {\n return new Parser().parseFromFile(file);\n }\n\n parseExpression() {\n let expr;\n if (this.lookahead.type === \"STRING\") {\n expr = new Value(this.lookahead);\n } else if (this.lookahead.type === \"NUMBER\") {\n this.lookahead.value = Number(this.lookahead.value);\n expr = new Value(this.lookahead);\n } else if (this.lookahead.type === \"REGEX\") {\n const fields = this.lookahead.value.split(\"/\");\n expr = new Regex({ body: fields[1], flags: fields[2] });\n } else if (this.lookahead.type === \"WORD\") {\n expr = new Word(this.lookahead);\n } else {\n throw this.__parserSyntaxError(\"Unrecognized token while parsing the expression.\");\n }\n\n return this.parseApply(expr);\n }\n\n parseApply(expr) {\n // Get next token\n this.lookahead = this.__nextToken();\n\n // Return if apply is empty (not left parenthesis or null)\n if (!this.lookahead || this.lookahead.type !== \"LP\") {\n return expr;\n }\n\n let tree = new Apply(expr);\n\n this.lookahead = this.__nextToken();\n // Parse all arguments inside the parenthesis\n while (this.lookahead && this.lookahead.type !== \"RP\") {\n let arg = this.parseExpression();\n tree.args.push(arg);\n\n if (\n !this.lookahead ||\n (this.lookahead.type !== \"COMMA\" && this.lookahead.type !== \"RP\")\n ) {\n throw this.__parserSyntaxError(`Missing , or ) after the expression`);\n }\n\n // Don't consume RPs as argument tokens\n if (this.lookahead && this.lookahead.type !== \"RP\") {\n this.lookahead = this.__nextToken();\n }\n }\n\n return this.parseApply(tree);\n }\n\n __nextToken() {\n const token = this.tokens[this.index++];\n\n return token !== undefined ? token : null;\n }\n\n __parserSyntaxError(message) {\n let start = this.lookahead ? this.lookahead.start : this.lastIndex;\n\n return new SyntaxError(\n `Parser::Line ${this.line}::Col ${start}\\n${message}\\n${this.program.slice(\n start - 1,\n start + 10\n )}`\n );\n }\n}\n\nmodule.exports = {\n Parser\n};\n", "static": true, "longname": "/home/dav/eggtended-js/lib/parser/parse.js", "access": "public", @@ -2303,86 +1769,22 @@ "lineNumber": 1 }, { - "__docId__": 139, - "kind": "variable", - "name": "fs", + "__docId__": 114, + "kind": "class", + "name": "Parser", "memberof": "lib/parser/parse.js", "static": true, - "longname": "lib/parser/parse.js~fs", + "longname": "lib/parser/parse.js~Parser", "access": "public", - "export": false, + "export": true, "importPath": "eggtended-js/lib/parser/parse.js", - "importStyle": null, - "description": null, - "lineNumber": 1, - "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true + "importStyle": "{Parser}", + "description": "Parser class. Iterates through the given string, tokenizes it and returns a AST tree.", + "lineNumber": 10, + "interface": false }, { - "__docId__": 140, - "kind": "variable", - "name": "Lexer", - "memberof": "lib/parser/parse.js", - "static": true, - "longname": "lib/parser/parse.js~Lexer", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/parser/parse.js", - "importStyle": null, - "description": null, - "lineNumber": 3, - "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true - }, - { - "__docId__": 141, - "kind": "variable", - "name": "Value", - "memberof": "lib/parser/parse.js", - "static": true, - "longname": "lib/parser/parse.js~Value", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/parser/parse.js", - "importStyle": null, - "description": null, - "lineNumber": 4, - "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true - }, - { - "__docId__": 142, - "kind": "class", - "name": "Parser", - "memberof": "lib/parser/parse.js", - "static": true, - "longname": "lib/parser/parse.js~Parser", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/parser/parse.js", - "importStyle": null, - "description": "Parser class. Iterates through the given string, tokenizes it and returns a AST tree.", - "lineNumber": 9, - "interface": false, - "ignore": true - }, - { - "__docId__": 143, + "__docId__": 115, "kind": "constructor", "name": "constructor", "memberof": "lib/parser/parse.js~Parser", @@ -2391,12 +1793,11 @@ "static": false, "longname": "lib/parser/parse.js~Parser#constructor", "access": "public", - "description": null, - "lineNumber": 10, - "undocument": true + "description": "Attributes used by the parser, set to default values", + "lineNumber": 14 }, { - "__docId__": 144, + "__docId__": 116, "kind": "member", "name": "index", "memberof": "lib/parser/parse.js~Parser", @@ -2404,7 +1805,7 @@ "longname": "lib/parser/parse.js~Parser#index", "access": "public", "description": null, - "lineNumber": 11, + "lineNumber": 15, "undocument": true, "type": { "types": [ @@ -2413,7 +1814,7 @@ } }, { - "__docId__": 145, + "__docId__": 117, "kind": "member", "name": "tokens", "memberof": "lib/parser/parse.js~Parser", @@ -2421,7 +1822,7 @@ "longname": "lib/parser/parse.js~Parser#tokens", "access": "public", "description": null, - "lineNumber": 12, + "lineNumber": 16, "undocument": true, "type": { "types": [ @@ -2430,7 +1831,7 @@ } }, { - "__docId__": 146, + "__docId__": 118, "kind": "member", "name": "lookahead", "memberof": "lib/parser/parse.js~Parser", @@ -2438,7 +1839,7 @@ "longname": "lib/parser/parse.js~Parser#lookahead", "access": "public", "description": null, - "lineNumber": 13, + "lineNumber": 17, "undocument": true, "type": { "types": [ @@ -2447,7 +1848,7 @@ } }, { - "__docId__": 147, + "__docId__": 119, "kind": "method", "name": "setProgram", "memberof": "lib/parser/parse.js~Parser", @@ -2457,7 +1858,7 @@ "longname": "lib/parser/parse.js~Parser#setProgram", "access": "public", "description": null, - "lineNumber": 16, + "lineNumber": 20, "undocument": true, "params": [ { @@ -2474,7 +1875,7 @@ } }, { - "__docId__": 148, + "__docId__": 120, "kind": "member", "name": "program", "memberof": "lib/parser/parse.js~Parser", @@ -2482,7 +1883,7 @@ "longname": "lib/parser/parse.js~Parser#program", "access": "public", "description": null, - "lineNumber": 17, + "lineNumber": 21, "undocument": true, "type": { "types": [ @@ -2491,7 +1892,7 @@ } }, { - "__docId__": 152, + "__docId__": 124, "kind": "method", "name": "parse", "memberof": "lib/parser/parse.js~Parser", @@ -2501,7 +1902,7 @@ "longname": "lib/parser/parse.js~Parser#parse", "access": "public", "description": null, - "lineNumber": 26, + "lineNumber": 30, "undocument": true, "params": [ { @@ -2518,7 +1919,7 @@ } }, { - "__docId__": 155, + "__docId__": 127, "kind": "method", "name": "parse", "memberof": "lib/parser/parse.js~Parser", @@ -2528,7 +1929,7 @@ "longname": "lib/parser/parse.js~Parser.parse", "access": "public", "description": null, - "lineNumber": 47, + "lineNumber": 51, "undocument": true, "params": [ { @@ -2545,7 +1946,7 @@ } }, { - "__docId__": 156, + "__docId__": 128, "kind": "method", "name": "parseFromFile", "memberof": "lib/parser/parse.js~Parser", @@ -2555,7 +1956,7 @@ "longname": "lib/parser/parse.js~Parser#parseFromFile", "access": "public", "description": null, - "lineNumber": 51, + "lineNumber": 55, "undocument": true, "params": [ { @@ -2572,7 +1973,7 @@ } }, { - "__docId__": 157, + "__docId__": 129, "kind": "method", "name": "parseFromFile", "memberof": "lib/parser/parse.js~Parser", @@ -2582,7 +1983,7 @@ "longname": "lib/parser/parse.js~Parser.parseFromFile", "access": "public", "description": null, - "lineNumber": 57, + "lineNumber": 61, "undocument": true, "params": [ { @@ -2599,7 +2000,7 @@ } }, { - "__docId__": 158, + "__docId__": 130, "kind": "method", "name": "parseExpression", "memberof": "lib/parser/parse.js~Parser", @@ -2609,7 +2010,7 @@ "longname": "lib/parser/parse.js~Parser#parseExpression", "access": "public", "description": null, - "lineNumber": 61, + "lineNumber": 65, "undocument": true, "params": [], "return": { @@ -2619,7 +2020,7 @@ } }, { - "__docId__": 159, + "__docId__": 131, "kind": "method", "name": "parseApply", "memberof": "lib/parser/parse.js~Parser", @@ -2629,7 +2030,7 @@ "longname": "lib/parser/parse.js~Parser#parseApply", "access": "public", "description": null, - "lineNumber": 80, + "lineNumber": 84, "undocument": true, "params": [ { @@ -2646,7 +2047,7 @@ } }, { - "__docId__": 163, + "__docId__": 135, "kind": "method", "name": "__nextToken", "memberof": "lib/parser/parse.js~Parser", @@ -2656,7 +2057,7 @@ "longname": "lib/parser/parse.js~Parser#__nextToken", "access": "private", "description": null, - "lineNumber": 113, + "lineNumber": 117, "undocument": true, "params": [], "return": { @@ -2666,7 +2067,7 @@ } }, { - "__docId__": 164, + "__docId__": 136, "kind": "method", "name": "__parserSyntaxError", "memberof": "lib/parser/parse.js~Parser", @@ -2676,7 +2077,7 @@ "longname": "lib/parser/parse.js~Parser#__parserSyntaxError", "access": "private", "description": null, - "lineNumber": 119, + "lineNumber": 123, "undocument": true, "params": [ { @@ -2693,7 +2094,7 @@ } }, { - "__docId__": 165, + "__docId__": 137, "kind": "file", "name": "lib/parser/tokenRegex.js", "content": "const xRegExp = require(\"xregexp\");\n\nclass TokenRegex {\n constructor(name, regexLiteral, flags) {\n this.name = name;\n this.expression = xRegExp(regexLiteral, flags);\n }\n\n get lastIndex() {\n return this.expression.lastIndex;\n }\n\n set lastIndex(index) {\n this.expression.lastIndex = index;\n }\n\n reset() {\n this.lastIndex = 0;\n\n return this;\n }\n\n exec(program) {\n let match = this.expression.exec(program);\n\n if (match !== null) {\n return {\n type: this.name,\n value: match[1],\n start: this.lastIndex - match[1].length + 1,\n end: this.lastIndex\n };\n }\n\n return null;\n }\n\n test(program) {\n let savedIndex = this.lastIndex;\n const result = this.exec(program);\n this.lastIndex = savedIndex;\n\n return result !== null;\n }\n}\n\nconst WHITES = new TokenRegex(\n \"WHITE\",\n `(\\\\s+| # Spaces\n [#;].*| # Single-line comments\n \\\\/\\\\*[^]*?\\\\*\\\\/ # Multiline comments\n )`,\n `yx`\n);\n\nconst NEWLINE = new TokenRegex(\n \"NEWLINE\",\n `(\\\\r? # Carriage return (for compatibility)\n \\\\n # Newline char\n )`\n);\n\nconst NUMBER = new TokenRegex(\n \"NUMBER\",\n `([-+]? # Sign\n \\\\d* # Digits\n \\\\.?\\\\d+ # Decimals\n (?:[eE][-+]?\\\\d+)? # Exp notatio\n )`,\n \"yx\"\n);\n\nconst STRING = new TokenRegex(\n \"STRING\",\n `\"([^\"\\\\\\\\]* # Any character except 'escaped \"'\n )\"`,\n \"yx\"\n);\n\nconst WORD = new TokenRegex(\n \"WORD\",\n `(\\\\[\\\\]| # [] is a reserved word for arrays\n :=| # := is a reserved word for 'define'\n [^\\\\s\\\\(\\\\)\\\\{\\\\}\\\\[\\\\]\\\\.,:\"]+ # Avoid some chars\n )`,\n \"yx\"\n);\n\nconst LP = new TokenRegex(\n \"LP\",\n `([\\\\(\\\\{\\\\[\\\\.] # ({[ are synonyms\n )`,\n \"yx\"\n);\n\nconst RP = new TokenRegex(\n \"RP\",\n `([\\\\)\\\\}\\\\]] # }}] are synonyms\n )`,\n \"yx\"\n);\n\nconst COMMA = new TokenRegex(\n \"COMMA\",\n `(,| # comma\n :(?!=) # a : that isn't followed by a = (:= is word)\n )`,\n \"yx\"\n);\n\nconst REGEX = new TokenRegex(\n \"REGEX\",\n `(r/[^]*?/ # body of the regex\n [nsxAgimuy]* # flags\n )`,\n \"yx\"\n);\n\nmodule.exports = {\n WHITES,\n NEWLINE,\n NUMBER,\n STRING,\n WORD,\n LP,\n RP,\n COMMA,\n REGEX,\n TokenRegex\n};\n", @@ -2704,45 +2105,44 @@ "lineNumber": 1 }, { - "__docId__": 166, + "__docId__": 138, "kind": "variable", - "name": "xRegExp", + "name": "WHITES", "memberof": "lib/parser/tokenRegex.js", "static": true, - "longname": "lib/parser/tokenRegex.js~xRegExp", + "longname": "lib/parser/tokenRegex.js~WHITES", "access": "public", - "export": false, + "export": true, "importPath": "eggtended-js/lib/parser/tokenRegex.js", - "importStyle": null, + "importStyle": "{WHITES}", "description": null, - "lineNumber": 1, + "lineNumber": 47, "undocument": true, "type": { "types": [ - "*" + "lib/parser/tokenRegex.js~TokenRegex" ] - }, - "ignore": true + } }, { - "__docId__": 167, + "__docId__": 139, "kind": "class", "name": "TokenRegex", "memberof": "lib/parser/tokenRegex.js", "static": true, "longname": "lib/parser/tokenRegex.js~TokenRegex", "access": "public", - "export": false, + "export": true, "importPath": "eggtended-js/lib/parser/tokenRegex.js", "importStyle": null, "description": null, "lineNumber": 3, + "pseudoExport": true, "undocument": true, - "interface": false, - "ignore": true + "interface": false }, { - "__docId__": 168, + "__docId__": 140, "kind": "constructor", "name": "constructor", "memberof": "lib/parser/tokenRegex.js~TokenRegex", @@ -2756,7 +2156,7 @@ "undocument": true }, { - "__docId__": 169, + "__docId__": 141, "kind": "member", "name": "name", "memberof": "lib/parser/tokenRegex.js~TokenRegex", @@ -2773,7 +2173,7 @@ } }, { - "__docId__": 170, + "__docId__": 142, "kind": "member", "name": "expression", "memberof": "lib/parser/tokenRegex.js~TokenRegex", @@ -2790,7 +2190,7 @@ } }, { - "__docId__": 171, + "__docId__": 143, "kind": "get", "name": "lastIndex", "memberof": "lib/parser/tokenRegex.js~TokenRegex", @@ -2809,7 +2209,7 @@ } }, { - "__docId__": 172, + "__docId__": 144, "kind": "set", "name": "lastIndex", "memberof": "lib/parser/tokenRegex.js~TokenRegex", @@ -2823,7 +2223,7 @@ "undocument": true }, { - "__docId__": 173, + "__docId__": 145, "kind": "method", "name": "reset", "memberof": "lib/parser/tokenRegex.js~TokenRegex", @@ -2843,7 +2243,7 @@ } }, { - "__docId__": 175, + "__docId__": 147, "kind": "method", "name": "exec", "memberof": "lib/parser/tokenRegex.js~TokenRegex", @@ -2870,7 +2270,7 @@ } }, { - "__docId__": 176, + "__docId__": 148, "kind": "method", "name": "test", "memberof": "lib/parser/tokenRegex.js~TokenRegex", @@ -2897,37 +2297,16 @@ } }, { - "__docId__": 178, - "kind": "variable", - "name": "WHITES", - "memberof": "lib/parser/tokenRegex.js", - "static": true, - "longname": "lib/parser/tokenRegex.js~WHITES", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/parser/tokenRegex.js", - "importStyle": null, - "description": null, - "lineNumber": 47, - "undocument": true, - "type": { - "types": [ - "lib/parser/tokenRegex.js~TokenRegex" - ] - }, - "ignore": true - }, - { - "__docId__": 179, + "__docId__": 150, "kind": "variable", "name": "NEWLINE", "memberof": "lib/parser/tokenRegex.js", "static": true, "longname": "lib/parser/tokenRegex.js~NEWLINE", "access": "public", - "export": false, + "export": true, "importPath": "eggtended-js/lib/parser/tokenRegex.js", - "importStyle": null, + "importStyle": "{NEWLINE}", "description": null, "lineNumber": 56, "undocument": true, @@ -2935,20 +2314,19 @@ "types": [ "lib/parser/tokenRegex.js~TokenRegex" ] - }, - "ignore": true + } }, { - "__docId__": 180, + "__docId__": 151, "kind": "variable", "name": "NUMBER", "memberof": "lib/parser/tokenRegex.js", "static": true, "longname": "lib/parser/tokenRegex.js~NUMBER", "access": "public", - "export": false, + "export": true, "importPath": "eggtended-js/lib/parser/tokenRegex.js", - "importStyle": null, + "importStyle": "{NUMBER}", "description": null, "lineNumber": 63, "undocument": true, @@ -2956,20 +2334,19 @@ "types": [ "lib/parser/tokenRegex.js~TokenRegex" ] - }, - "ignore": true + } }, { - "__docId__": 181, + "__docId__": 152, "kind": "variable", "name": "STRING", "memberof": "lib/parser/tokenRegex.js", "static": true, "longname": "lib/parser/tokenRegex.js~STRING", "access": "public", - "export": false, + "export": true, "importPath": "eggtended-js/lib/parser/tokenRegex.js", - "importStyle": null, + "importStyle": "{STRING}", "description": null, "lineNumber": 73, "undocument": true, @@ -2977,611 +2354,245 @@ "types": [ "lib/parser/tokenRegex.js~TokenRegex" ] - }, - "ignore": true + } }, { - "__docId__": 182, + "__docId__": 153, "kind": "variable", "name": "WORD", "memberof": "lib/parser/tokenRegex.js", "static": true, - "longname": "lib/parser/tokenRegex.js~WORD", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/parser/tokenRegex.js", - "importStyle": null, - "description": null, - "lineNumber": 80, - "undocument": true, - "type": { - "types": [ - "lib/parser/tokenRegex.js~TokenRegex" - ] - }, - "ignore": true - }, - { - "__docId__": 183, - "kind": "variable", - "name": "LP", - "memberof": "lib/parser/tokenRegex.js", - "static": true, - "longname": "lib/parser/tokenRegex.js~LP", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/parser/tokenRegex.js", - "importStyle": null, - "description": null, - "lineNumber": 89, - "undocument": true, - "type": { - "types": [ - "lib/parser/tokenRegex.js~TokenRegex" - ] - }, - "ignore": true - }, - { - "__docId__": 184, - "kind": "variable", - "name": "RP", - "memberof": "lib/parser/tokenRegex.js", - "static": true, - "longname": "lib/parser/tokenRegex.js~RP", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/parser/tokenRegex.js", - "importStyle": null, - "description": null, - "lineNumber": 96, - "undocument": true, - "type": { - "types": [ - "lib/parser/tokenRegex.js~TokenRegex" - ] - }, - "ignore": true - }, - { - "__docId__": 185, - "kind": "variable", - "name": "COMMA", - "memberof": "lib/parser/tokenRegex.js", - "static": true, - "longname": "lib/parser/tokenRegex.js~COMMA", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/parser/tokenRegex.js", - "importStyle": null, - "description": null, - "lineNumber": 103, - "undocument": true, - "type": { - "types": [ - "lib/parser/tokenRegex.js~TokenRegex" - ] - }, - "ignore": true - }, - { - "__docId__": 186, - "kind": "variable", - "name": "REGEX", - "memberof": "lib/parser/tokenRegex.js", - "static": true, - "longname": "lib/parser/tokenRegex.js~REGEX", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/parser/tokenRegex.js", - "importStyle": null, - "description": null, - "lineNumber": 111, - "undocument": true, - "type": { - "types": [ - "lib/parser/tokenRegex.js~TokenRegex" - ] - }, - "ignore": true - }, - { - "__docId__": 187, - "kind": "file", - "name": "lib/repl/colors.js", - "content": "const { TopEnv } = require(\"../interp/environment.js\");\nconst style = require(\"ansi-styles\");\n\nconst RED = (TopEnv[\"__RED__\"] = style.red.open);\nconst GREEN = (TopEnv[\"__GREEN__\"] = style.green.open);\nconst YELLOW = (TopEnv[\"__YELLOW__\"] = style.yellow.open);\nconst BLUE = (TopEnv[\"__BLUE__\"] = style.blue.open);\nconst DEFAULT = (TopEnv[\"__DEF__\"] = style.color.close);\n\nconsole.log(RED);\n\nmodule.exports = {\n RED,\n GREEN,\n YELLOW,\n BLUE,\n DEFAULT\n};\n", - "static": true, - "longname": "/home/dav/eggtended-js/lib/repl/colors.js", - "access": "public", - "description": null, - "lineNumber": 1 - }, - { - "__docId__": 188, - "kind": "variable", - "name": "TopEnv", - "memberof": "lib/repl/colors.js", - "static": true, - "longname": "lib/repl/colors.js~TopEnv", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/repl/colors.js", - "importStyle": null, - "description": null, - "lineNumber": 1, - "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true - }, - { - "__docId__": 189, - "kind": "variable", - "name": "style", - "memberof": "lib/repl/colors.js", - "static": true, - "longname": "lib/repl/colors.js~style", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/repl/colors.js", - "importStyle": null, - "description": null, - "lineNumber": 2, - "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true - }, - { - "__docId__": 190, - "kind": "variable", - "name": "RED", - "memberof": "lib/repl/colors.js", - "static": true, - "longname": "lib/repl/colors.js~RED", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/repl/colors.js", - "importStyle": null, - "description": null, - "lineNumber": 4, - "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true - }, - { - "__docId__": 191, - "kind": "variable", - "name": "GREEN", - "memberof": "lib/repl/colors.js", - "static": true, - "longname": "lib/repl/colors.js~GREEN", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/repl/colors.js", - "importStyle": null, - "description": null, - "lineNumber": 5, - "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true - }, - { - "__docId__": 192, - "kind": "variable", - "name": "YELLOW", - "memberof": "lib/repl/colors.js", - "static": true, - "longname": "lib/repl/colors.js~YELLOW", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/repl/colors.js", - "importStyle": null, - "description": null, - "lineNumber": 6, - "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true - }, - { - "__docId__": 193, - "kind": "variable", - "name": "BLUE", - "memberof": "lib/repl/colors.js", - "static": true, - "longname": "lib/repl/colors.js~BLUE", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/repl/colors.js", - "importStyle": null, - "description": null, - "lineNumber": 7, - "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true - }, - { - "__docId__": 194, - "kind": "variable", - "name": "DEFAULT", - "memberof": "lib/repl/colors.js", - "static": true, - "longname": "lib/repl/colors.js~DEFAULT", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/repl/colors.js", - "importStyle": null, - "description": null, - "lineNumber": 8, - "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true - }, - { - "__docId__": 195, - "kind": "file", - "name": "lib/repl/extensions.js", - "content": "const process = require(\"process\");\nconst fs = require(\"fs\");\n\nconst { SpecialForms } = require(\"../interp/registry.js\");\nconst { TopEnv } = require(\"../interp/environment.js\");\nconst { Eggvm } = require(\"../interp/eggvm.js\");\n\nconst colors = require(\"./colors.js\");\n\n// PROMPT\n\nTopEnv[\"__PROMPT__\"] = \"> \";\n\nconst getPromptLine = () => {\n return `${colors.YELLOW} ${TopEnv[\"__PROMPT__\"]} ${colors.DEFAULT}`;\n};\n\n// Extra methods\n\nconst eggExit = (TopEnv[\"exit\"] = () => {\n console.log(colors.BLUE + \"Closing the REPL... Bye!\" + colors.DEFAULT);\n process.exit(0);\n});\n\nconst HELP = [\n `${colors.BLUE} help() ${colors.DEFAULT} show this help menu`,\n `${colors.RED} exit() | Ctrl-D ${colors.DEFAULT} close the REPL`,\n `${colors.GREEN} run() ${colors.DEFAULT} execute a .egg file`,\n `${colors.YELLOW} clear() ${colors.DEFAULT} clear the console`\n];\n\nconst eggHelp = (TopEnv[\"help\"] = () => {\n console.log(\" Egg help menu:\");\n HELP.forEach(line => {\n console.log(line);\n });\n\n return \"-\".repeat(HELP[0].length - 10);\n});\n\nconst eggInfo = (TopEnv[\"info\"] = () => {\n console.log(\n colors.BLUE +\n `\n _ _ _\n | | | | | |\n ___ __ _ __ _| |_ ___ _ __ __| | ___ __| |\n / _ \\\\/ _\\` |/ _\\` | __/ _ \\\\ '_ \\\\ / _\\` |/ _ \\\\/ _\\` |\n | __/ (_| | (_| | || __/ | | | (_| | __/ (_| |\n \\\\___|\\\\__, |\\\\__, |\\\\__\\\\___|_| |_|\\\\__,_|\\\\___|\\\\__,_|\n __/ | __/ |\n |___/ |___/\n` +\n colors.DEFAULT\n );\n console.log(`Version ${TopEnv[\"__VERSION__\"]}`);\n console.log(\"Created by David Afonso Dorta. License: GPLv2\");\n});\n\nconst eggClear = (TopEnv[\"clear\"] = () => {\n console.log(\"\\u001B[2J\\u001B[0;0f\");\n eggInfo();\n});\n\nconst eggVersion = (TopEnv[\n \"__VERSION__\"\n] = require(\"../../package.json\").version);\n\nconst eggRun = (TopEnv[\"run\"] = (file, debug) => {\n if (debug) {\n console.log(fs.readFileSync(file, \"utf8\"));\n }\n\n Eggvm.runFromFile(file);\n});\n\nconst eggCompleter = (line, env) => {\n // Test if get hits from current directory\n let hits = dirHits(line);\n\n // Show hits from the REPL variables\n if (hits.length === 0) {\n const word = line.split(/[\\s(),\"]+/).slice(-1)[0];\n hits = _filter(Object.keys(SpecialForms).concat(_allProperties(env)), word);\n }\n\n return [hits, line];\n};\n\nconst _allProperties = obj => {\n let keys = [];\n\n let proto = obj;\n while (proto) {\n keys = keys.concat(Object.keys(proto));\n proto = Object.getPrototypeOf(proto);\n }\n\n return keys;\n};\n\nconst dirHits = line => {\n const match = line.match(/(?:run)\\((.*)/);\n if (match) {\n const path = match[1]\n .replace(/[\"'`]/, \"\")\n .trim()\n .split(\"/\");\n const dirPath = path.slice(0, -1);\n const filePath = path.slice(-1);\n\n try {\n return _filter(fs.readdirSync(`./${dirPath}`), filePath);\n } catch (err) {\n return [];\n }\n }\n\n return [];\n};\n\nconst _filter = (hits, word) => {\n return hits.filter(hit => {\n return hit.indexOf(word) === 0;\n });\n};\n\nmodule.exports = {\n getPromptLine,\n eggExit,\n eggHelp,\n eggInfo,\n eggClear,\n eggVersion,\n eggRun,\n eggCompleter\n};\n", - "static": true, - "longname": "/home/dav/eggtended-js/lib/repl/extensions.js", - "access": "public", - "description": null, - "lineNumber": 1 - }, - { - "__docId__": 196, - "kind": "variable", - "name": "process", - "memberof": "lib/repl/extensions.js", - "static": true, - "longname": "lib/repl/extensions.js~process", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/repl/extensions.js", - "importStyle": null, - "description": null, - "lineNumber": 1, - "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true - }, - { - "__docId__": 197, - "kind": "variable", - "name": "fs", - "memberof": "lib/repl/extensions.js", - "static": true, - "longname": "lib/repl/extensions.js~fs", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/repl/extensions.js", - "importStyle": null, - "description": null, - "lineNumber": 2, - "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true - }, - { - "__docId__": 198, - "kind": "variable", - "name": "SpecialForms", - "memberof": "lib/repl/extensions.js", - "static": true, - "longname": "lib/repl/extensions.js~SpecialForms", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/repl/extensions.js", - "importStyle": null, - "description": null, - "lineNumber": 4, - "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true - }, - { - "__docId__": 199, - "kind": "variable", - "name": "TopEnv", - "memberof": "lib/repl/extensions.js", - "static": true, - "longname": "lib/repl/extensions.js~TopEnv", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/repl/extensions.js", - "importStyle": null, - "description": null, - "lineNumber": 5, - "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true - }, - { - "__docId__": 200, - "kind": "variable", - "name": "Eggvm", - "memberof": "lib/repl/extensions.js", - "static": true, - "longname": "lib/repl/extensions.js~Eggvm", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/repl/extensions.js", - "importStyle": null, + "longname": "lib/parser/tokenRegex.js~WORD", + "access": "public", + "export": true, + "importPath": "eggtended-js/lib/parser/tokenRegex.js", + "importStyle": "{WORD}", "description": null, - "lineNumber": 6, + "lineNumber": 80, "undocument": true, "type": { "types": [ - "*" + "lib/parser/tokenRegex.js~TokenRegex" ] - }, - "ignore": true + } }, { - "__docId__": 201, + "__docId__": 154, "kind": "variable", - "name": "colors", - "memberof": "lib/repl/extensions.js", + "name": "LP", + "memberof": "lib/parser/tokenRegex.js", "static": true, - "longname": "lib/repl/extensions.js~colors", + "longname": "lib/parser/tokenRegex.js~LP", "access": "public", - "export": false, - "importPath": "eggtended-js/lib/repl/extensions.js", - "importStyle": null, + "export": true, + "importPath": "eggtended-js/lib/parser/tokenRegex.js", + "importStyle": "{LP}", "description": null, - "lineNumber": 8, + "lineNumber": 89, "undocument": true, "type": { "types": [ - "*" + "lib/parser/tokenRegex.js~TokenRegex" ] - }, - "ignore": true + } }, { - "__docId__": 202, - "kind": "function", - "name": "getPromptLine", - "memberof": "lib/repl/extensions.js", - "generator": false, - "async": false, + "__docId__": 155, + "kind": "variable", + "name": "RP", + "memberof": "lib/parser/tokenRegex.js", "static": true, - "longname": "lib/repl/extensions.js~getPromptLine", + "longname": "lib/parser/tokenRegex.js~RP", "access": "public", - "export": false, - "importPath": "eggtended-js/lib/repl/extensions.js", - "importStyle": null, + "export": true, + "importPath": "eggtended-js/lib/parser/tokenRegex.js", + "importStyle": "{RP}", "description": null, - "lineNumber": 14, + "lineNumber": 96, "undocument": true, - "params": [], - "return": { + "type": { "types": [ - "string" + "lib/parser/tokenRegex.js~TokenRegex" ] - }, - "ignore": true + } }, { - "__docId__": 203, + "__docId__": 156, "kind": "variable", - "name": "eggExit", - "memberof": "lib/repl/extensions.js", + "name": "COMMA", + "memberof": "lib/parser/tokenRegex.js", "static": true, - "longname": "lib/repl/extensions.js~eggExit", + "longname": "lib/parser/tokenRegex.js~COMMA", "access": "public", - "export": false, - "importPath": "eggtended-js/lib/repl/extensions.js", - "importStyle": null, + "export": true, + "importPath": "eggtended-js/lib/parser/tokenRegex.js", + "importStyle": "{COMMA}", "description": null, - "lineNumber": 20, + "lineNumber": 103, "undocument": true, "type": { "types": [ - "*" + "lib/parser/tokenRegex.js~TokenRegex" ] - }, - "ignore": true + } }, { - "__docId__": 204, + "__docId__": 157, "kind": "variable", - "name": "HELP", - "memberof": "lib/repl/extensions.js", + "name": "REGEX", + "memberof": "lib/parser/tokenRegex.js", "static": true, - "longname": "lib/repl/extensions.js~HELP", + "longname": "lib/parser/tokenRegex.js~REGEX", "access": "public", - "export": false, - "importPath": "eggtended-js/lib/repl/extensions.js", - "importStyle": null, + "export": true, + "importPath": "eggtended-js/lib/parser/tokenRegex.js", + "importStyle": "{REGEX}", "description": null, - "lineNumber": 25, + "lineNumber": 111, "undocument": true, "type": { "types": [ - "undefined[]" + "lib/parser/tokenRegex.js~TokenRegex" ] - }, - "ignore": true + } }, { - "__docId__": 205, + "__docId__": 158, + "kind": "file", + "name": "lib/repl/colors.js", + "content": "const { TopEnv } = require(\"../interp/environment.js\");\nconst style = require(\"ansi-styles\");\n\nconst RED = (TopEnv[\"__RED__\"] = style.red.open);\nconst GREEN = (TopEnv[\"__GREEN__\"] = style.green.open);\nconst YELLOW = (TopEnv[\"__YELLOW__\"] = style.yellow.open);\nconst BLUE = (TopEnv[\"__BLUE__\"] = style.blue.open);\nconst DEFAULT = (TopEnv[\"__DEF__\"] = style.color.close);\n\nconsole.log(RED);\n\nmodule.exports = {\n RED,\n GREEN,\n YELLOW,\n BLUE,\n DEFAULT\n};\n", + "static": true, + "longname": "/home/dav/eggtended-js/lib/repl/colors.js", + "access": "public", + "description": null, + "lineNumber": 1 + }, + { + "__docId__": 159, "kind": "variable", - "name": "eggHelp", - "memberof": "lib/repl/extensions.js", + "name": "RED", + "memberof": "lib/repl/colors.js", "static": true, - "longname": "lib/repl/extensions.js~eggHelp", + "longname": "lib/repl/colors.js~RED", "access": "public", - "export": false, - "importPath": "eggtended-js/lib/repl/extensions.js", - "importStyle": null, + "export": true, + "importPath": "eggtended-js/lib/repl/colors.js", + "importStyle": "{RED}", "description": null, - "lineNumber": 32, + "lineNumber": 4, "undocument": true, "type": { "types": [ "*" ] - }, - "ignore": true + } }, { - "__docId__": 206, + "__docId__": 160, "kind": "variable", - "name": "eggInfo", - "memberof": "lib/repl/extensions.js", + "name": "GREEN", + "memberof": "lib/repl/colors.js", "static": true, - "longname": "lib/repl/extensions.js~eggInfo", + "longname": "lib/repl/colors.js~GREEN", "access": "public", - "export": false, - "importPath": "eggtended-js/lib/repl/extensions.js", - "importStyle": null, + "export": true, + "importPath": "eggtended-js/lib/repl/colors.js", + "importStyle": "{GREEN}", "description": null, - "lineNumber": 41, + "lineNumber": 5, "undocument": true, "type": { "types": [ "*" ] - }, - "ignore": true + } }, { - "__docId__": 207, + "__docId__": 161, "kind": "variable", - "name": "eggClear", - "memberof": "lib/repl/extensions.js", + "name": "YELLOW", + "memberof": "lib/repl/colors.js", "static": true, - "longname": "lib/repl/extensions.js~eggClear", + "longname": "lib/repl/colors.js~YELLOW", "access": "public", - "export": false, - "importPath": "eggtended-js/lib/repl/extensions.js", - "importStyle": null, + "export": true, + "importPath": "eggtended-js/lib/repl/colors.js", + "importStyle": "{YELLOW}", "description": null, - "lineNumber": 60, + "lineNumber": 6, "undocument": true, "type": { "types": [ "*" ] - }, - "ignore": true + } }, { - "__docId__": 208, + "__docId__": 162, "kind": "variable", - "name": "eggVersion", - "memberof": "lib/repl/extensions.js", + "name": "BLUE", + "memberof": "lib/repl/colors.js", "static": true, - "longname": "lib/repl/extensions.js~eggVersion", + "longname": "lib/repl/colors.js~BLUE", "access": "public", - "export": false, - "importPath": "eggtended-js/lib/repl/extensions.js", - "importStyle": null, + "export": true, + "importPath": "eggtended-js/lib/repl/colors.js", + "importStyle": "{BLUE}", "description": null, - "lineNumber": 65, + "lineNumber": 7, "undocument": true, "type": { "types": [ "*" ] - }, - "ignore": true + } }, { - "__docId__": 209, + "__docId__": 163, "kind": "variable", - "name": "eggRun", - "memberof": "lib/repl/extensions.js", + "name": "DEFAULT", + "memberof": "lib/repl/colors.js", "static": true, - "longname": "lib/repl/extensions.js~eggRun", + "longname": "lib/repl/colors.js~DEFAULT", "access": "public", - "export": false, - "importPath": "eggtended-js/lib/repl/extensions.js", - "importStyle": null, + "export": true, + "importPath": "eggtended-js/lib/repl/colors.js", + "importStyle": "{DEFAULT}", "description": null, - "lineNumber": 69, + "lineNumber": 8, "undocument": true, "type": { "types": [ "*" ] - }, - "ignore": true + } }, { - "__docId__": 210, - "kind": "function", - "name": "eggCompleter", + "__docId__": 164, + "kind": "file", + "name": "lib/repl/extensions.js", + "content": "const process = require(\"process\");\nconst fs = require(\"fs\");\n\nconst { SpecialForms } = require(\"../interp/registry.js\");\nconst { TopEnv } = require(\"../interp/environment.js\");\nconst { Eggvm } = require(\"../interp/eggvm.js\");\n\nconst colors = require(\"./colors.js\");\n\n// PROMPT\n\nTopEnv[\"__PROMPT__\"] = \"> \";\n\nconst getPromptLine = () => {\n return `${colors.YELLOW} ${TopEnv[\"__PROMPT__\"]} ${colors.DEFAULT}`;\n};\n\n// Extra methods\n\nconst eggExit = (TopEnv[\"exit\"] = () => {\n console.log(colors.BLUE + \"Closing the REPL... Bye!\" + colors.DEFAULT);\n process.exit(0);\n});\n\nconst HELP = [\n `${colors.BLUE} help() ${colors.DEFAULT} show this help menu`,\n `${colors.RED} exit() | Ctrl-D ${colors.DEFAULT} close the REPL`,\n `${colors.GREEN} run() ${colors.DEFAULT} execute a .egg file`,\n `${colors.YELLOW} clear() ${colors.DEFAULT} clear the console`\n];\n\nconst eggHelp = (TopEnv[\"help\"] = () => {\n console.log(\" Egg help menu:\");\n HELP.forEach(line => {\n console.log(line);\n });\n\n return \"-\".repeat(HELP[0].length - 10);\n});\n\nconst eggInfo = (TopEnv[\"info\"] = () => {\n console.log(\n colors.BLUE +\n `\n _ _ _\n | | | | | |\n ___ __ _ __ _| |_ ___ _ __ __| | ___ __| |\n / _ \\\\/ _\\` |/ _\\` | __/ _ \\\\ '_ \\\\ / _\\` |/ _ \\\\/ _\\` |\n | __/ (_| | (_| | || __/ | | | (_| | __/ (_| |\n \\\\___|\\\\__, |\\\\__, |\\\\__\\\\___|_| |_|\\\\__,_|\\\\___|\\\\__,_|\n __/ | __/ |\n |___/ |___/\n` +\n colors.DEFAULT\n );\n console.log(`Version ${TopEnv[\"__VERSION__\"]}`);\n console.log(\"Created by David Afonso Dorta. License: GPLv2\");\n});\n\nconst eggClear = (TopEnv[\"clear\"] = () => {\n console.log(\"\\u001B[2J\\u001B[0;0f\");\n eggInfo();\n});\n\nconst eggVersion = (TopEnv[\n \"__VERSION__\"\n] = require(\"../../package.json\").version);\n\nconst eggRun = (TopEnv[\"run\"] = (file, debug) => {\n if (debug) {\n console.log(fs.readFileSync(file, \"utf8\"));\n }\n\n Eggvm.runFromFile(file);\n});\n\nconst eggCompleter = (line, env) => {\n // Test if get hits from current directory\n let hits = dirHits(line);\n\n // Show hits from the REPL variables\n if (hits.length === 0) {\n const word = line.split(/[\\s(),\"]+/).slice(-1)[0];\n hits = _filter(Object.keys(SpecialForms).concat(_allProperties(env)), word);\n }\n\n return [hits, line];\n};\n\nconst _allProperties = obj => {\n let keys = [];\n\n let proto = obj;\n while (proto) {\n keys = keys.concat(Object.keys(proto));\n proto = Object.getPrototypeOf(proto);\n }\n\n return keys;\n};\n\nconst dirHits = line => {\n const match = line.match(/(?:run)\\((.*)/);\n if (match) {\n const path = match[1]\n .replace(/[\"'`]/, \"\")\n .trim()\n .split(\"/\");\n const dirPath = path.slice(0, -1);\n const filePath = path.slice(-1);\n\n try {\n return _filter(fs.readdirSync(`./${dirPath}`), filePath);\n } catch (err) {\n return [];\n }\n }\n\n return [];\n};\n\nconst _filter = (hits, word) => {\n return hits.filter(hit => {\n return hit.indexOf(word) === 0;\n });\n};\n\nmodule.exports = {\n getPromptLine,\n eggExit,\n eggHelp,\n eggInfo,\n eggClear,\n eggVersion,\n eggRun,\n eggCompleter\n};\n", + "static": true, + "longname": "/home/dav/eggtended-js/lib/repl/extensions.js", + "access": "public", + "description": null, + "lineNumber": 1 + }, + { + "__docId__": 165, + "kind": "variable", + "name": "HELP", "memberof": "lib/repl/extensions.js", - "generator": false, - "async": false, "static": true, - "longname": "lib/repl/extensions.js~eggCompleter", + "longname": "lib/repl/extensions.js~HELP", "access": "public", "export": false, "importPath": "eggtended-js/lib/repl/extensions.js", "importStyle": null, "description": null, - "lineNumber": 77, + "lineNumber": 25, "undocument": true, - "params": [ - { - "name": "line", - "types": [ - "*" - ] - }, - { - "name": "env", - "types": [ - "*" - ] - } - ], - "return": { + "type": { "types": [ "undefined[]" ] @@ -3589,7 +2600,7 @@ "ignore": true }, { - "__docId__": 211, + "__docId__": 166, "kind": "function", "name": "_allProperties", "memberof": "lib/repl/extensions.js", @@ -3620,7 +2631,7 @@ "ignore": true }, { - "__docId__": 212, + "__docId__": 167, "kind": "function", "name": "dirHits", "memberof": "lib/repl/extensions.js", @@ -3651,7 +2662,7 @@ "ignore": true }, { - "__docId__": 213, + "__docId__": 168, "kind": "function", "name": "_filter", "memberof": "lib/repl/extensions.js", @@ -3688,186 +2699,197 @@ "ignore": true }, { - "__docId__": 214, - "kind": "file", - "name": "lib/repl/repl.js", - "content": "const process = require(\"process\");\nconst readline = require(\"readline\");\n\nconst { Lexer } = require(\"../parser/lexer.js\");\nconst { Parser } = require(\"../parser/parse.js\");\nconst { TopEnv } = require(\"../interp/environment.js\");\nconst { Eggvm } = require(\"../interp/eggvm.js\");\n\nconst extensions = require(\"./extensions.js\");\nconst colors = require(\"./colors.js\");\n\nconst repl = () => {\n // Create the REPL environment\n const topEnv = Object.create(TopEnv);\n const lexer = new Lexer();\n const parser = new Parser();\n\n let program = \"\";\n let stack = 0;\n\n extensions.eggInfo();\n\n try {\n const rl = readline.createInterface(process.stdin, process.stdout, line => {\n return extensions.eggCompleter(line, topEnv);\n });\n\n rl.setPrompt(extensions.getPromptLine());\n rl.prompt();\n\n rl.on(\"line\", line => {\n program += line + \"\\n\";\n\n // Count the number of LPS (+) or RPS (-)\n stack = lexer.getParBalance(program);\n\n if (stack <= 0) {\n try {\n Eggvm.eval(parser.parse(program), topEnv);\n } catch (err) {\n console.log(`${colors.RED} Error:: ${err} ${colors.DEFAULT}`);\n } finally {\n program = \"\";\n stack = 0;\n }\n }\n\n rl.setPrompt(extensions.getPromptLine() + \"..\".repeat(stack));\n rl.prompt();\n });\n\n rl.on(\"close\", extensions.eggExit);\n\n rl.on(\"SIGINT\", () => {\n console.log(\n `\\n${colors.GREEN}\\n--> Expression discarded ${colors.DEFAULT}`\n );\n\n program = \"\";\n stack = 0;\n\n rl.clearLine(process.stdout);\n\n rl.setPrompt(extensions.getPromptLine());\n rl.prompt();\n });\n } catch (err) {\n console.log(err);\n extensions.eggHelp();\n }\n};\n\nmodule.exports = {\n repl\n};\n", + "__docId__": 169, + "kind": "function", + "name": "getPromptLine", + "memberof": "lib/repl/extensions.js", + "generator": false, + "async": false, "static": true, - "longname": "/home/dav/eggtended-js/lib/repl/repl.js", + "longname": "lib/repl/extensions.js~getPromptLine", "access": "public", + "export": true, + "importPath": "eggtended-js/lib/repl/extensions.js", + "importStyle": "{getPromptLine}", "description": null, - "lineNumber": 1 + "lineNumber": 14, + "undocument": true, + "params": [], + "return": { + "types": [ + "string" + ] + } }, { - "__docId__": 215, + "__docId__": 170, "kind": "variable", - "name": "process", - "memberof": "lib/repl/repl.js", + "name": "eggExit", + "memberof": "lib/repl/extensions.js", "static": true, - "longname": "lib/repl/repl.js~process", + "longname": "lib/repl/extensions.js~eggExit", "access": "public", - "export": false, - "importPath": "eggtended-js/lib/repl/repl.js", - "importStyle": null, + "export": true, + "importPath": "eggtended-js/lib/repl/extensions.js", + "importStyle": "{eggExit}", "description": null, - "lineNumber": 1, + "lineNumber": 20, "undocument": true, "type": { "types": [ "*" ] - }, - "ignore": true + } }, { - "__docId__": 216, + "__docId__": 171, "kind": "variable", - "name": "readline", - "memberof": "lib/repl/repl.js", + "name": "eggHelp", + "memberof": "lib/repl/extensions.js", "static": true, - "longname": "lib/repl/repl.js~readline", + "longname": "lib/repl/extensions.js~eggHelp", "access": "public", - "export": false, - "importPath": "eggtended-js/lib/repl/repl.js", - "importStyle": null, + "export": true, + "importPath": "eggtended-js/lib/repl/extensions.js", + "importStyle": "{eggHelp}", "description": null, - "lineNumber": 2, + "lineNumber": 32, "undocument": true, "type": { "types": [ "*" ] - }, - "ignore": true + } }, { - "__docId__": 217, + "__docId__": 172, "kind": "variable", - "name": "Lexer", - "memberof": "lib/repl/repl.js", + "name": "eggInfo", + "memberof": "lib/repl/extensions.js", "static": true, - "longname": "lib/repl/repl.js~Lexer", + "longname": "lib/repl/extensions.js~eggInfo", "access": "public", - "export": false, - "importPath": "eggtended-js/lib/repl/repl.js", - "importStyle": null, + "export": true, + "importPath": "eggtended-js/lib/repl/extensions.js", + "importStyle": "{eggInfo}", "description": null, - "lineNumber": 4, + "lineNumber": 41, "undocument": true, "type": { "types": [ "*" ] - }, - "ignore": true + } }, { - "__docId__": 218, + "__docId__": 173, "kind": "variable", - "name": "Parser", - "memberof": "lib/repl/repl.js", + "name": "eggClear", + "memberof": "lib/repl/extensions.js", "static": true, - "longname": "lib/repl/repl.js~Parser", + "longname": "lib/repl/extensions.js~eggClear", "access": "public", - "export": false, - "importPath": "eggtended-js/lib/repl/repl.js", - "importStyle": null, + "export": true, + "importPath": "eggtended-js/lib/repl/extensions.js", + "importStyle": "{eggClear}", "description": null, - "lineNumber": 5, + "lineNumber": 60, "undocument": true, "type": { "types": [ "*" ] - }, - "ignore": true + } }, { - "__docId__": 219, + "__docId__": 174, "kind": "variable", - "name": "TopEnv", - "memberof": "lib/repl/repl.js", + "name": "eggVersion", + "memberof": "lib/repl/extensions.js", "static": true, - "longname": "lib/repl/repl.js~TopEnv", + "longname": "lib/repl/extensions.js~eggVersion", "access": "public", - "export": false, - "importPath": "eggtended-js/lib/repl/repl.js", - "importStyle": null, + "export": true, + "importPath": "eggtended-js/lib/repl/extensions.js", + "importStyle": "{eggVersion}", "description": null, - "lineNumber": 6, + "lineNumber": 65, "undocument": true, "type": { "types": [ "*" ] - }, - "ignore": true + } }, { - "__docId__": 220, + "__docId__": 175, "kind": "variable", - "name": "Eggvm", - "memberof": "lib/repl/repl.js", + "name": "eggRun", + "memberof": "lib/repl/extensions.js", "static": true, - "longname": "lib/repl/repl.js~Eggvm", + "longname": "lib/repl/extensions.js~eggRun", "access": "public", - "export": false, - "importPath": "eggtended-js/lib/repl/repl.js", - "importStyle": null, + "export": true, + "importPath": "eggtended-js/lib/repl/extensions.js", + "importStyle": "{eggRun}", "description": null, - "lineNumber": 7, + "lineNumber": 69, "undocument": true, "type": { "types": [ "*" ] - }, - "ignore": true + } }, { - "__docId__": 221, - "kind": "variable", - "name": "extensions", - "memberof": "lib/repl/repl.js", + "__docId__": 176, + "kind": "function", + "name": "eggCompleter", + "memberof": "lib/repl/extensions.js", + "generator": false, + "async": false, "static": true, - "longname": "lib/repl/repl.js~extensions", + "longname": "lib/repl/extensions.js~eggCompleter", "access": "public", - "export": false, - "importPath": "eggtended-js/lib/repl/repl.js", - "importStyle": null, + "export": true, + "importPath": "eggtended-js/lib/repl/extensions.js", + "importStyle": "{eggCompleter}", "description": null, - "lineNumber": 9, + "lineNumber": 77, "undocument": true, - "type": { + "params": [ + { + "name": "line", + "types": [ + "*" + ] + }, + { + "name": "env", + "types": [ + "*" + ] + } + ], + "return": { "types": [ - "*" + "undefined[]" ] - }, - "ignore": true + } }, { - "__docId__": 222, - "kind": "variable", - "name": "colors", - "memberof": "lib/repl/repl.js", + "__docId__": 177, + "kind": "file", + "name": "lib/repl/repl.js", + "content": "const process = require(\"process\");\nconst readline = require(\"readline\");\n\nconst { Lexer } = require(\"../parser/lexer.js\");\nconst { Parser } = require(\"../parser/parse.js\");\nconst { TopEnv } = require(\"../interp/environment.js\");\nconst { Eggvm } = require(\"../interp/eggvm.js\");\n\nconst extensions = require(\"./extensions.js\");\nconst colors = require(\"./colors.js\");\n\nconst repl = () => {\n // Create the REPL environment\n const topEnv = Object.create(TopEnv);\n const lexer = new Lexer();\n const parser = new Parser();\n\n let program = \"\";\n let stack = 0;\n\n extensions.eggInfo();\n\n try {\n const rl = readline.createInterface(process.stdin, process.stdout, line => {\n return extensions.eggCompleter(line, topEnv);\n });\n\n rl.setPrompt(extensions.getPromptLine());\n rl.prompt();\n\n rl.on(\"line\", line => {\n program += line + \"\\n\";\n\n // Count the number of LPS (+) or RPS (-)\n stack = lexer.getParBalance(program);\n\n if (stack <= 0) {\n try {\n Eggvm.eval(parser.parse(program), topEnv);\n } catch (err) {\n console.log(`${colors.RED} Error:: ${err} ${colors.DEFAULT}`);\n } finally {\n program = \"\";\n stack = 0;\n }\n }\n\n rl.setPrompt(extensions.getPromptLine() + \"..\".repeat(stack));\n rl.prompt();\n });\n\n rl.on(\"close\", extensions.eggExit);\n\n rl.on(\"SIGINT\", () => {\n console.log(\n `\\n${colors.GREEN}\\n--> Expression discarded ${colors.DEFAULT}`\n );\n\n program = \"\";\n stack = 0;\n\n rl.clearLine(process.stdout);\n\n rl.setPrompt(extensions.getPromptLine());\n rl.prompt();\n });\n } catch (err) {\n console.log(err);\n extensions.eggHelp();\n }\n};\n\nmodule.exports = {\n repl\n};\n", "static": true, - "longname": "lib/repl/repl.js~colors", + "longname": "/home/dav/eggtended-js/lib/repl/repl.js", "access": "public", - "export": false, - "importPath": "eggtended-js/lib/repl/repl.js", - "importStyle": null, "description": null, - "lineNumber": 10, - "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true + "lineNumber": 1 }, { - "__docId__": 223, + "__docId__": 178, "kind": "function", "name": "repl", "memberof": "lib/repl/repl.js", @@ -3876,18 +2898,17 @@ "static": true, "longname": "lib/repl/repl.js~repl", "access": "public", - "export": false, + "export": true, "importPath": "eggtended-js/lib/repl/repl.js", - "importStyle": null, + "importStyle": "{repl}", "description": null, "lineNumber": 12, "undocument": true, "params": [], - "return": null, - "ignore": true + "return": null }, { - "__docId__": 224, + "__docId__": 179, "kind": "file", "name": "lib/utils.js", "content": "const inspect = require(\"util\").inspect;\n\nconst ins = x => inspect(x, { depth: \"null\" });\n\nconst chunk = function*(arr, step) {\n for (let i = 0; i < arr.length; i += step) {\n yield arr.slice(i, i + step);\n }\n};\n\nconst checkIterable = (object, length) => {\n if (length === 0) {\n throw new SyntaxError(\"At least one index must be passed to sub\");\n }\n\n if (object instanceof Number || object instanceof String) {\n throw new TypeError(`The object '${object}'' is not indexable!`);\n }\n};\n\nconst getValidIndex = (length, index) => {\n if (index < 0) {\n index = length + index;\n }\n\n if (index > length) {\n throw new RangeError(`Index ${index} is out of bounds. Array size: ${length}`);\n }\n\n return index;\n};\n\nmodule.exports = {\n chunk,\n checkIterable,\n getValidIndex,\n ins\n};\n", @@ -3898,55 +2919,7 @@ "lineNumber": 1 }, { - "__docId__": 225, - "kind": "variable", - "name": "inspect", - "memberof": "lib/utils.js", - "static": true, - "longname": "lib/utils.js~inspect", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/utils.js", - "importStyle": null, - "description": null, - "lineNumber": 1, - "undocument": true, - "type": { - "types": [ - "*" - ] - }, - "ignore": true - }, - { - "__docId__": 226, - "kind": "function", - "name": "ins", - "memberof": "lib/utils.js", - "generator": false, - "async": false, - "static": true, - "longname": "lib/utils.js~ins", - "access": "public", - "export": false, - "importPath": "eggtended-js/lib/utils.js", - "importStyle": null, - "description": null, - "lineNumber": 3, - "undocument": true, - "params": [ - { - "name": "x", - "types": [ - "*" - ] - } - ], - "return": null, - "ignore": true - }, - { - "__docId__": 227, + "__docId__": 180, "kind": "function", "name": "chunk", "memberof": "lib/utils.js", @@ -3955,9 +2928,9 @@ "static": true, "longname": "lib/utils.js~chunk", "access": "public", - "export": false, + "export": true, "importPath": "eggtended-js/lib/utils.js", - "importStyle": null, + "importStyle": "{chunk}", "description": null, "lineNumber": 5, "undocument": true, @@ -3975,11 +2948,10 @@ ] } ], - "return": null, - "ignore": true + "return": null }, { - "__docId__": 228, + "__docId__": 181, "kind": "function", "name": "checkIterable", "memberof": "lib/utils.js", @@ -3988,9 +2960,9 @@ "static": true, "longname": "lib/utils.js~checkIterable", "access": "public", - "export": false, + "export": true, "importPath": "eggtended-js/lib/utils.js", - "importStyle": null, + "importStyle": "{checkIterable}", "description": null, "lineNumber": 11, "undocument": true, @@ -4008,11 +2980,10 @@ ] } ], - "return": null, - "ignore": true + "return": null }, { - "__docId__": 229, + "__docId__": 182, "kind": "function", "name": "getValidIndex", "memberof": "lib/utils.js", @@ -4021,9 +2992,9 @@ "static": true, "longname": "lib/utils.js~getValidIndex", "access": "public", - "export": false, + "export": true, "importPath": "eggtended-js/lib/utils.js", - "importStyle": null, + "importStyle": "{getValidIndex}", "description": null, "lineNumber": 21, "undocument": true, @@ -4045,8 +3016,33 @@ "types": [ "*" ] - }, - "ignore": true + } + }, + { + "__docId__": 183, + "kind": "function", + "name": "ins", + "memberof": "lib/utils.js", + "generator": false, + "async": false, + "static": true, + "longname": "lib/utils.js~ins", + "access": "public", + "export": true, + "importPath": "eggtended-js/lib/utils.js", + "importStyle": "{ins}", + "description": null, + "lineNumber": 3, + "undocument": true, + "params": [ + { + "name": "x", + "types": [ + "*" + ] + } + ], + "return": null }, { "kind": "index", @@ -4058,14 +3054,14 @@ }, { "kind": "packageJSON", - "content": "{\n \"name\": \"eggtended-js\",\n \"version\": \"1.5.0\",\n \"description\": \"A extended version of the Egg programming language from the Eloquent Javascript book.\",\n \"main\": \"index.js\",\n \"scripts\": {\n \"test\": \"nyc mocha\",\n \"coverage\": \"nyc report --reporter=text-lcov | coveralls\",\n \"docs\": \"./node_modules/.bin/esdoc -c esdoc.json\",\n \"pre-commit-install\": \"pre-commit install\"\n },\n \"keywords\": [\n \"Egg\",\n \"Parser\",\n \"Interpreter\",\n \"Programming\",\n \"Language\"\n ],\n \"author\": \"David Afonso Dorta\",\n \"license\": \"GPL2\",\n \"devDependencies\": {\n \"coveralls\": \"^3.0.3\",\n \"esdoc\": \"^1.1.0\",\n \"esdoc-standard-plugin\": \"^1.0.0\",\n \"eslint\": \"^5.16.0\",\n \"husky\": \"^2.3.0\",\n \"lint-staged\": \"^8.1.7\",\n \"mocha\": \"^6.1.2\",\n \"mocha-lcov-reporter\": \"^1.3.0\",\n \"nyc\": \"^13.3.0\",\n \"pre-commit\": \"^1.2.2\",\n \"should\": \"^13.2.3\",\n \"sinon\": \"^7.3.1\"\n },\n \"dependencies\": {\n \"ansi-styles\": \"^3.2.1\",\n \"xregexp\": \"^4.2.4\"\n },\n \"husky\": {\n \"hooks\": {\n \"pre-commit\": \"lint-staged\"\n }\n },\n \"lint-staged\": {\n \"*.js\": [\n \"prettier --write\",\n \"eslint --fix\",\n \"nyc mocha\",\n \"git add\"\n ],\n \"ignore\": [\"**/docs/**/*.js\"]\n }\n}\n", + "content": "{\n \"name\": \"eggtended-js\",\n \"version\": \"1.5.0\",\n \"description\": \"A extended version of the Egg programming language from the Eloquent Javascript book.\",\n \"main\": \"index.js\",\n \"scripts\": {\n \"test\": \"nyc mocha\",\n \"coverage\": \"nyc report --reporter=text-lcov | coveralls\",\n \"docs\": \"./node_modules/.bin/esdoc -c esdoc.json\",\n \"pre-commit-install\": \"pre-commit install\"\n },\n \"keywords\": [\n \"Egg\",\n \"Parser\",\n \"Interpreter\",\n \"Programming\",\n \"Language\"\n ],\n \"author\": \"David Afonso Dorta\",\n \"license\": \"GPL2\",\n \"devDependencies\": {\n \"coveralls\": \"^3.0.3\",\n \"esdoc\": \"^1.1.0\",\n \"esdoc-standard-plugin\": \"^1.0.0\",\n \"eslint\": \"^5.16.0\",\n \"husky\": \"^2.3.0\",\n \"lint-staged\": \"^8.1.7\",\n \"mocha\": \"^6.1.2\",\n \"mocha-lcov-reporter\": \"^1.3.0\",\n \"nyc\": \"^13.3.0\",\n \"pre-commit\": \"^1.2.2\",\n \"should\": \"^13.2.3\",\n \"sinon\": \"^7.3.1\"\n },\n \"dependencies\": {\n \"ansi-styles\": \"^3.2.1\",\n \"xregexp\": \"^4.2.4\"\n },\n \"husky\": {\n \"hooks\": {\n \"pre-commit\": \"lint-staged\"\n }\n },\n \"lint-staged\": {\n \"linters\": {\n \"*.js\": [\n \"prettier --write\",\n \"eslint --fix\",\n \"nyc mocha\",\n \"npm run docs --\",\n \"git add\"\n ]\n },\n \"ignore\": [\n \"**/docs/**/*.js\"\n ]\n }\n}\n", "longname": "/home/dav/eggtended-js/package.json", "name": "package.json", "static": true, "access": "public" }, { - "__docId__": 230, + "__docId__": 184, "kind": "testFile", "name": "test/examples-test.js", "content": "const fs = require(\"fs\");\nconst should = require(\"should\");\nconst sinon = require(\"sinon\");\n\nconst { Parser } = require(\"../lib/parser/parse.js\");\nconst { Eggvm } = require(\"../lib/interp/eggvm.js\");\nconst parser = new Parser();\n\ndescribe(\"Testing programs from 'examples/' folder\", () => {\n // Spy calls to 'console.log'\n beforeEach(() => {\n this.logSpy = sinon.spy(console, \"log\");\n });\n\n afterEach(() => {\n this.logSpy.restore();\n });\n\n // Method to test the number and values of 'logSpy' calls\n const assertOutput = outs => {\n this.logSpy.callCount.should.be.eql(outs.length);\n outs.forEach((output, index) => {\n this.logSpy\n .getCall(index)\n .calledWithExactly(output)\n .should.be.true();\n });\n };\n\n // Method for creating and executing the dynamic tests\n const executeTests = tests => {\n tests.forEach((outputs, file) => {\n // Path to the related .evm file\n const fileEVM = file + \".evm\";\n\n describe(`Test for ${file}`, () => {\n // -- TEST PARSING --\n it(\"should be parsed correctly\", () => {\n const rawData = fs.readFileSync(fileEVM);\n const expectedTree = JSON.parse(rawData);\n\n parser.parseFromFile(file).should.match(expectedTree);\n });\n\n // -- TEST EXECUTION --\n if (Array.isArray(outputs)) {\n it(\"should print the expected output after execution\", () => {\n // Eggvm.runFromEVM(fileEVM);\n Eggvm.runFromEVM(fileEVM);\n assertOutput(outputs);\n });\n } else {\n it(`should throw an exception of type ${outputs.name}`, () => {\n should.throws(() => {\n Eggvm.runFromFile(file);\n }, outputs);\n });\n }\n });\n });\n };\n\n // Define tests\n const tests = new Map();\n\n tests.set(\"examples/one.egg\", [50]);\n tests.set(\"examples/two.egg\", [9]);\n tests.set(\"examples/scope.egg\", [9, 8]);\n tests.set(\"examples/scope-err.egg\", ReferenceError);\n tests.set(\"examples/boolean.egg\", [\"true\"]);\n\n tests.set(\"examples/string.egg\", [\"s\"]);\n tests.set(\"examples/sum.egg\", [395.5]);\n tests.set(\"examples/reto.egg\", [\"sum(array[1, 2, 3]) := 6\"]);\n\n tests.set(\"examples/array.egg\", [[1, 4], 5]);\n tests.set(\"examples/array-index.egg\", [1, [2, 3], 3, 3, 2]);\n tests.set(\"examples/array-properties.egg\", [1, [5, 3], 3]);\n\n tests.set(\"examples/set-error.egg\", TypeError);\n tests.set(\"examples/set-error2.egg\", TypeError);\n\n tests.set(\"examples/method3.egg\", [\"A-B-C\"]);\n tests.set(\"examples/method-concatenation.egg\", [\"1-hello egg\"]);\n tests.set(\"examples/property.egg\", [2, 3]);\n\n tests.set(\"examples/string-apply.egg\", [5, \"4.00\", 19]);\n tests.set(\"examples/operators-arithm.egg\", [6, 5, 10, -5, 0, -10]);\n\n tests.set(\"examples/map.egg\", [\n new Map([[\"x\", 4], [\"y\", new Map([[\"z\", 3]])]]),\n 4,\n new Map([[\"z\", 3]]),\n 3,\n new Map([[\"z\", 50]])\n ]);\n\n tests.set(\"examples/map-colon.egg\", [\n new Map([[\"x\", 4], [\"y\", new Map([[\"z\", 3]])]]),\n 4,\n new Map([[\"z\", 3]]),\n 3,\n new Map([[\"z\", 50]])\n ]);\n\n tests.set(\"examples/multi-sub-set.egg\", [\n 1,\n new Map([[\"x\", 2], [\"y\", [3, 4]]]),\n [3, 4],\n new Map([[\"x\", 2], [\"y\", 5]]),\n [0, 1]\n ]);\n\n tests.set(\"examples/map-sub.egg\", [1, new Map([[\"d\", 5], [\"e\", 3]]), 3]);\n tests.set(\"examples/fun-inside-map.egg\", [7, 4]);\n\n tests.set(\"examples/missing.egg\", [9]);\n tests.set(\"examples/missing-err.egg\", SyntaxError);\n tests.set(\"examples/objects.egg\", [0, 4, 5]);\n tests.set(\"examples/regex.egg\", [true, 0, \"2015\", \"02\"]);\n\n tests.set(\"examples/dot.egg\", [\"1-4-5\", 5]);\n tests.set(\"examples/dot-obj-2.egg\", [0, 0, 0, 5, 5, 5]);\n tests.set(\"examples/dot-num.egg\", [\"4.00\", \"4.00\", \"4.00\"]);\n\n tests.set(\"examples/for.egg\", [0, 1, 2, 3, 4]);\n tests.set(\"examples/foreach.egg\", [1, 2, 3, \"A\", \"B\", \"C\"]);\n\n tests.set(\"examples/client.egg\", [\"inside module\", 5, 5, 3]);\n tests.set(\"examples/ects-context.egg\", [0, 4, 5]);\n tests.set(\"examples/child.egg\", [5, 5, 5]);\n\n tests.set(\"examples/const.egg\", ReferenceError);\n tests.set(\"examples/const-2.egg\", [5, 5]);\n tests.set(\"examples/const-3.egg\", ReferenceError);\n\n tests.set(\"examples/trycatch.egg\", [\"Caught error! 42\", 20, \"Finally called\"]);\n tests.set(\"examples/trycatch-2.egg\", [\n \"Inner catch. Rethrowing...\",\n \"Outer catch. 42\"\n ]);\n\n // Execute all the defined tests\n executeTests(tests);\n});\n", @@ -4076,7 +3072,7 @@ "lineNumber": 1 }, { - "__docId__": 231, + "__docId__": 185, "kind": "test", "name": "describe0", "testId": 0, @@ -4089,7 +3085,7 @@ "lineNumber": 9 }, { - "__docId__": 232, + "__docId__": 186, "kind": "test", "name": "describe1", "testId": 1, @@ -4101,7 +3097,7 @@ "lineNumber": 36 }, { - "__docId__": 233, + "__docId__": 187, "kind": "test", "name": "it2", "testId": 2, @@ -4114,7 +3110,7 @@ "lineNumber": 38 }, { - "__docId__": 234, + "__docId__": 188, "kind": "test", "name": "it3", "testId": 3, @@ -4127,7 +3123,7 @@ "lineNumber": 47 }, { - "__docId__": 235, + "__docId__": 189, "kind": "test", "name": "it4", "testId": 4, @@ -4139,7 +3135,7 @@ "lineNumber": 53 }, { - "__docId__": 236, + "__docId__": 190, "kind": "testFile", "name": "test/tokenRegex-test.js", "content": "const tokenRegex = require(\"../lib/parser/tokenRegex.js\");\nconst should = require(\"should\");\n\ndescribe(\"Regex for LP token\", () => {\n it(\"should recognize ( as valid a token\", () => {\n const expected = { type: \"LP\", value: \"(\", start: 1, end: 1 };\n tokenRegex.LP.reset()\n .exec(\"(\")\n .should.be.eql(expected);\n });\n\n it(\"should treat { as a synonym for (\", () => {\n const expected = { type: \"LP\", value: \"{\", start: 1, end: 1 };\n tokenRegex.LP.reset()\n .exec(\"{\")\n .should.be.eql(expected);\n });\n\n it(\"should treat [ as a synonym for (\", () => {\n const expected = { type: \"LP\", value: \"[\", start: 1, end: 1 };\n tokenRegex.LP.reset()\n .exec(\"[\")\n .should.be.eql(expected);\n });\n});\n\ndescribe(\"Regex for RP token\", () => {\n it(\"should recognize ) as valid a token\", () => {\n const expected = { type: \"RP\", value: \")\", start: 1, end: 1 };\n tokenRegex.RP.reset()\n .exec(\")\")\n .should.be.eql(expected);\n });\n\n it(\"should treat } as a synonym for )\", () => {\n const expected = { type: \"RP\", value: \"}\", start: 1, end: 1 };\n tokenRegex.RP.reset()\n .exec(\"}\")\n .should.be.eql(expected);\n });\n\n it(\"should treat ] as a synonym for )\", () => {\n const expected = { type: \"RP\", value: \"]\", start: 1, end: 1 };\n tokenRegex.RP.reset()\n .exec(\"]\")\n .should.be.eql(expected);\n });\n});\n\ndescribe(\"Regex for COMMA token\", () => {\n it(\"should recognize , as valid a token\", () => {\n const expected = { type: \"COMMA\", value: \",\", start: 1, end: 1 };\n tokenRegex.COMMA.reset()\n .exec(\",\")\n .should.be.eql(expected);\n });\n\n it(\"should recognize the : as an alias for ,\", () => {\n const expected = { type: \"COMMA\", value: \":\", start: 1, end: 1 };\n tokenRegex.COMMA.reset()\n .exec(\":\")\n .should.be.eql(expected);\n\n // Only when is not followed by a =\n should.not.exists(tokenRegex.COMMA.reset().exec(\":=\"));\n });\n});\n\ndescribe(\"Regex for WHITES token\", () => {\n it(\"should recognize any quantity of space\", () => {\n const expected = { type: \"WHITE\", value: \" \", start: 1, end: 2 };\n tokenRegex.WHITES.reset()\n .exec(\" \")\n .should.be.eql(expected);\n });\n\n it(\"should recognize as white even strings with newlines\", () => {\n const expected = { type: \"WHITE\", value: \" \\n \", start: 1, end: 5 };\n tokenRegex.WHITES.reset()\n .exec(\" \\n \")\n .should.be.eql(expected);\n });\n\n it(\"should recognize as white one-line comments with # or ;\", () => {\n let expected = { type: \"WHITE\", value: \"# commen t\", start: 1, end: 10 };\n tokenRegex.WHITES.reset()\n .exec(\"# commen t\")\n .should.be.eql(expected);\n\n expected = { type: \"WHITE\", value: \"; commen t\", start: 1, end: 10 };\n tokenRegex.WHITES.reset()\n .exec(\"; commen t\")\n .should.be.eql(expected);\n });\n\n it(\"should recognize as white multiline commments with /* */\", () => {\n const expected = {\n type: \"WHITE\",\n value: \"/* this is \\n a multiline\\n comment */\",\n start: 1,\n end: 36\n };\n tokenRegex.WHITES.reset()\n .exec(\"/* this is \\n a multiline\\n comment */\")\n .should.be.eql(expected);\n });\n});\n\ndescribe(\"Regex for STRING token\", () => {\n it('should recognize anything between \" \" as valid a token', () => {\n const expected = {\n type: \"STRING\",\n value: \"hello world\",\n start: 3,\n end: 13\n };\n tokenRegex.STRING.reset()\n .exec('\"hello world\"')\n .should.be.eql(expected);\n });\n\n it('shouldn\\'t recognize strings without \" \". Those are words', () => {\n should.not.exists(tokenRegex.STRING.reset().exec(\"hello world\"));\n });\n});\n\ndescribe(\"Regex for WORD token\", () => {\n it(\"shouldn't include some special characters on the identifier\", () => {\n const expected = { type: \"WORD\", value: \"fun\", start: 1, end: 3 };\n tokenRegex.WORD.reset()\n .exec(\"fun()\")\n .should.be.eql(expected);\n tokenRegex.WORD.reset()\n .exec(\"fun[]\")\n .should.be.eql(expected);\n tokenRegex.WORD.reset()\n .exec(\"fun{}\")\n .should.be.eql(expected);\n tokenRegex.WORD.reset()\n .exec(\"fun, \")\n .should.be.eql(expected);\n tokenRegex.WORD.reset()\n .exec(\"fun:, \")\n .should.be.eql(expected);\n });\n\n it(\"should detect [] as a whole WORD, instead of LP, RP\", () => {\n const expected = { type: \"WORD\", value: \"[]\", start: 1, end: 2 };\n tokenRegex.WORD.reset()\n .exec(\"[]\")\n .should.be.eql(expected);\n });\n\n it(\"should detect := as a whole WORD; instead of COMMA, WORD\", () => {\n const expected = { type: \"WORD\", value: \":=\", start: 1, end: 2 };\n tokenRegex.WORD.reset()\n .exec(\":=\")\n .should.be.eql(expected);\n });\n});\n\ndescribe(\"Regex for NUMBER token\", () => {\n it(\"should match integers, with and without sign\", () => {\n // Normal int\n let expected = { type: \"NUMBER\", value: \"323\", start: 1, end: 3 };\n tokenRegex.NUMBER.reset()\n .exec(\"323\")\n .should.be.eql(expected);\n\n // With positive sign\n expected = { type: \"NUMBER\", value: \"+2\", start: 1, end: 2 };\n tokenRegex.NUMBER.reset()\n .exec(\"+2\")\n .should.be.eql(expected);\n\n // With negative sign\n expected = { type: \"NUMBER\", value: \"-123\", start: 1, end: 4 };\n tokenRegex.NUMBER.reset()\n .exec(\"-123\")\n .should.be.eql(expected);\n\n // Signs can't go alone!!\n should.not.exists(tokenRegex.NUMBER.reset().exec(\"-\"));\n should.not.exists(tokenRegex.NUMBER.reset().exec(\"+\"));\n });\n\n it(\"should match for floats, floating point and exponential notation\", () => {\n // Normal float\n let expected = { type: \"NUMBER\", value: \"12.34\", start: 1, end: 5 };\n tokenRegex.NUMBER.reset()\n .exec(\"12.34\")\n .should.be.eql(expected);\n\n // Float starting with .\n expected = { type: \"NUMBER\", value: \".35\", start: 1, end: 3 };\n tokenRegex.NUMBER.reset()\n .exec(\".35\")\n .should.be.eql(expected);\n\n // Float in exponential notation\n expected = { type: \"NUMBER\", value: \"2e5\", start: 1, end: 3 };\n tokenRegex.NUMBER.reset()\n .exec(\"2e5\")\n .should.be.eql(expected);\n\n // Float with decimals and exponential notation\n expected = { type: \"NUMBER\", value: \"45.8e5\", start: 1, end: 6 };\n tokenRegex.NUMBER.reset()\n .exec(\"45.8e5\")\n .should.be.eql(expected);\n\n // Float with exponential notation with sign and E\n expected = { type: \"NUMBER\", value: \"8E-34\", start: 1, end: 5 };\n tokenRegex.NUMBER.reset()\n .exec(\"8E-34\")\n .should.be.eql(expected);\n\n // Shouldn't match exponential alone or without exponential num\n should.not.exists(tokenRegex.NUMBER.reset().exec(\"e45\"));\n should.not.exists(tokenRegex.NUMBER.reset().exec(\"E\"));\n });\n});\n", @@ -4150,7 +3146,7 @@ "lineNumber": 1 }, { - "__docId__": 237, + "__docId__": 191, "kind": "test", "name": "describe5", "testId": 5, @@ -4163,7 +3159,7 @@ "lineNumber": 4 }, { - "__docId__": 238, + "__docId__": 192, "kind": "test", "name": "it6", "testId": 6, @@ -4176,7 +3172,7 @@ "lineNumber": 5 }, { - "__docId__": 239, + "__docId__": 193, "kind": "test", "name": "it7", "testId": 7, @@ -4189,7 +3185,7 @@ "lineNumber": 12 }, { - "__docId__": 240, + "__docId__": 194, "kind": "test", "name": "it8", "testId": 8, @@ -4202,7 +3198,7 @@ "lineNumber": 19 }, { - "__docId__": 241, + "__docId__": 195, "kind": "test", "name": "describe9", "testId": 9, @@ -4215,7 +3211,7 @@ "lineNumber": 27 }, { - "__docId__": 242, + "__docId__": 196, "kind": "test", "name": "it10", "testId": 10, @@ -4228,7 +3224,7 @@ "lineNumber": 28 }, { - "__docId__": 243, + "__docId__": 197, "kind": "test", "name": "it11", "testId": 11, @@ -4241,7 +3237,7 @@ "lineNumber": 35 }, { - "__docId__": 244, + "__docId__": 198, "kind": "test", "name": "it12", "testId": 12, @@ -4254,7 +3250,7 @@ "lineNumber": 42 }, { - "__docId__": 245, + "__docId__": 199, "kind": "test", "name": "describe13", "testId": 13, @@ -4267,7 +3263,7 @@ "lineNumber": 50 }, { - "__docId__": 246, + "__docId__": 200, "kind": "test", "name": "it14", "testId": 14, @@ -4280,7 +3276,7 @@ "lineNumber": 51 }, { - "__docId__": 247, + "__docId__": 201, "kind": "test", "name": "it15", "testId": 15, @@ -4293,7 +3289,7 @@ "lineNumber": 58 }, { - "__docId__": 248, + "__docId__": 202, "kind": "test", "name": "describe16", "testId": 16, @@ -4306,7 +3302,7 @@ "lineNumber": 69 }, { - "__docId__": 249, + "__docId__": 203, "kind": "test", "name": "it17", "testId": 17, @@ -4319,7 +3315,7 @@ "lineNumber": 70 }, { - "__docId__": 250, + "__docId__": 204, "kind": "test", "name": "it18", "testId": 18, @@ -4332,7 +3328,7 @@ "lineNumber": 77 }, { - "__docId__": 251, + "__docId__": 205, "kind": "test", "name": "it19", "testId": 19, @@ -4345,7 +3341,7 @@ "lineNumber": 84 }, { - "__docId__": 252, + "__docId__": 206, "kind": "test", "name": "it20", "testId": 20, @@ -4358,7 +3354,7 @@ "lineNumber": 96 }, { - "__docId__": 253, + "__docId__": 207, "kind": "test", "name": "describe21", "testId": 21, @@ -4371,7 +3367,7 @@ "lineNumber": 109 }, { - "__docId__": 254, + "__docId__": 208, "kind": "test", "name": "it22", "testId": 22, @@ -4384,7 +3380,7 @@ "lineNumber": 110 }, { - "__docId__": 255, + "__docId__": 209, "kind": "test", "name": "it23", "testId": 23, @@ -4397,7 +3393,7 @@ "lineNumber": 122 }, { - "__docId__": 256, + "__docId__": 210, "kind": "test", "name": "describe24", "testId": 24, @@ -4410,7 +3406,7 @@ "lineNumber": 127 }, { - "__docId__": 257, + "__docId__": 211, "kind": "test", "name": "it25", "testId": 25, @@ -4423,7 +3419,7 @@ "lineNumber": 128 }, { - "__docId__": 258, + "__docId__": 212, "kind": "test", "name": "it26", "testId": 26, @@ -4436,7 +3432,7 @@ "lineNumber": 147 }, { - "__docId__": 259, + "__docId__": 213, "kind": "test", "name": "it27", "testId": 27, @@ -4449,7 +3445,7 @@ "lineNumber": 154 }, { - "__docId__": 260, + "__docId__": 214, "kind": "test", "name": "describe28", "testId": 28, @@ -4462,7 +3458,7 @@ "lineNumber": 162 }, { - "__docId__": 261, + "__docId__": 215, "kind": "test", "name": "it29", "testId": 29, @@ -4475,7 +3471,7 @@ "lineNumber": 163 }, { - "__docId__": 262, + "__docId__": 216, "kind": "test", "name": "it30", "testId": 30, diff --git a/docs/script/search_index.js b/docs/script/search_index.js index 6e2b144..82f4a20 100644 --- a/docs/script/search_index.js +++ b/docs/script/search_index.js @@ -1,4 +1,232 @@ window.esdocSearchIndex = [ + [ + "eggtended-js/lib/interp/ast.js~apply", + "class/lib/interp/ast.js~Apply.html", + "Apply eggtended-js/lib/interp/ast.js", + "class" + ], + [ + "eggtended-js/lib/repl/colors.js~blue", + "variable/index.html#static-variable-BLUE", + "BLUE eggtended-js/lib/repl/colors.js", + "variable" + ], + [ + "eggtended-js/lib/parser/tokenregex.js~comma", + "variable/index.html#static-variable-COMMA", + "COMMA eggtended-js/lib/parser/tokenRegex.js", + "variable" + ], + [ + "eggtended-js/lib/repl/colors.js~default", + "variable/index.html#static-variable-DEFAULT", + "DEFAULT eggtended-js/lib/repl/colors.js", + "variable" + ], + [ + "eggtended-js/lib/interp/eggvm.js~eggvm", + "class/lib/interp/eggvm.js~Eggvm.html", + "Eggvm eggtended-js/lib/interp/eggvm.js", + "class" + ], + [ + "eggtended-js/lib/repl/colors.js~green", + "variable/index.html#static-variable-GREEN", + "GREEN eggtended-js/lib/repl/colors.js", + "variable" + ], + [ + "eggtended-js/lib/parser/tokenregex.js~lp", + "variable/index.html#static-variable-LP", + "LP eggtended-js/lib/parser/tokenRegex.js", + "variable" + ], + [ + "eggtended-js/lib/parser/lexer.js~lexer", + "class/lib/parser/lexer.js~Lexer.html", + "Lexer eggtended-js/lib/parser/lexer.js", + "class" + ], + [ + "eggtended-js/lib/parser/tokenregex.js~newline", + "variable/index.html#static-variable-NEWLINE", + "NEWLINE eggtended-js/lib/parser/tokenRegex.js", + "variable" + ], + [ + "eggtended-js/lib/parser/tokenregex.js~number", + "variable/index.html#static-variable-NUMBER", + "NUMBER eggtended-js/lib/parser/tokenRegex.js", + "variable" + ], + [ + "eggtended-js/lib/parser/parse.js~parser", + "class/lib/parser/parse.js~Parser.html", + "Parser eggtended-js/lib/parser/parse.js", + "class" + ], + [ + "eggtended-js/lib/repl/colors.js~red", + "variable/index.html#static-variable-RED", + "RED eggtended-js/lib/repl/colors.js", + "variable" + ], + [ + "eggtended-js/lib/parser/tokenregex.js~regex", + "variable/index.html#static-variable-REGEX", + "REGEX eggtended-js/lib/parser/tokenRegex.js", + "variable" + ], + [ + "eggtended-js/lib/parser/tokenregex.js~rp", + "variable/index.html#static-variable-RP", + "RP eggtended-js/lib/parser/tokenRegex.js", + "variable" + ], + [ + "eggtended-js/lib/interp/ast.js~regex", + "class/lib/interp/ast.js~Regex.html", + "Regex eggtended-js/lib/interp/ast.js", + "class" + ], + [ + "eggtended-js/lib/parser/tokenregex.js~string", + "variable/index.html#static-variable-STRING", + "STRING eggtended-js/lib/parser/tokenRegex.js", + "variable" + ], + [ + "eggtended-js/lib/interp/registry.js~specialforms", + "variable/index.html#static-variable-SpecialForms", + "SpecialForms eggtended-js/lib/interp/registry.js", + "variable" + ], + [ + "eggtended-js/lib/parser/tokenregex.js~tokenregex", + "class/lib/parser/tokenRegex.js~TokenRegex.html", + "TokenRegex eggtended-js/lib/parser/tokenRegex.js", + "class" + ], + [ + "eggtended-js/lib/interp/registry.js~topenv", + "variable/index.html#static-variable-TopEnv", + "TopEnv eggtended-js/lib/interp/registry.js", + "variable" + ], + [ + "eggtended-js/lib/interp/ast.js~value", + "class/lib/interp/ast.js~Value.html", + "Value eggtended-js/lib/interp/ast.js", + "class" + ], + [ + "eggtended-js/lib/parser/tokenregex.js~whites", + "variable/index.html#static-variable-WHITES", + "WHITES eggtended-js/lib/parser/tokenRegex.js", + "variable" + ], + [ + "eggtended-js/lib/parser/tokenregex.js~word", + "variable/index.html#static-variable-WORD", + "WORD eggtended-js/lib/parser/tokenRegex.js", + "variable" + ], + [ + "eggtended-js/lib/interp/ast.js~word", + "class/lib/interp/ast.js~Word.html", + "Word eggtended-js/lib/interp/ast.js", + "class" + ], + [ + "eggtended-js/lib/repl/colors.js~yellow", + "variable/index.html#static-variable-YELLOW", + "YELLOW eggtended-js/lib/repl/colors.js", + "variable" + ], + [ + "eggtended-js/lib/utils.js~checkiterable", + "function/index.html#static-function-checkIterable", + "checkIterable eggtended-js/lib/utils.js", + "function" + ], + [ + "eggtended-js/lib/utils.js~chunk", + "function/index.html#static-function-chunk", + "chunk eggtended-js/lib/utils.js", + "function" + ], + [ + "eggtended-js/lib/repl/extensions.js~eggclear", + "variable/index.html#static-variable-eggClear", + "eggClear eggtended-js/lib/repl/extensions.js", + "variable" + ], + [ + "eggtended-js/lib/repl/extensions.js~eggcompleter", + "function/index.html#static-function-eggCompleter", + "eggCompleter eggtended-js/lib/repl/extensions.js", + "function" + ], + [ + "eggtended-js/lib/repl/extensions.js~eggexit", + "variable/index.html#static-variable-eggExit", + "eggExit eggtended-js/lib/repl/extensions.js", + "variable" + ], + [ + "eggtended-js/lib/repl/extensions.js~egghelp", + "variable/index.html#static-variable-eggHelp", + "eggHelp eggtended-js/lib/repl/extensions.js", + "variable" + ], + [ + "eggtended-js/lib/repl/extensions.js~egginfo", + "variable/index.html#static-variable-eggInfo", + "eggInfo eggtended-js/lib/repl/extensions.js", + "variable" + ], + [ + "eggtended-js/lib/repl/extensions.js~eggrun", + "variable/index.html#static-variable-eggRun", + "eggRun eggtended-js/lib/repl/extensions.js", + "variable" + ], + [ + "eggtended-js/lib/repl/extensions.js~eggversion", + "variable/index.html#static-variable-eggVersion", + "eggVersion eggtended-js/lib/repl/extensions.js", + "variable" + ], + [ + "eggtended-js/lib/repl/extensions.js~getpromptline", + "function/index.html#static-function-getPromptLine", + "getPromptLine eggtended-js/lib/repl/extensions.js", + "function" + ], + [ + "eggtended-js/lib/utils.js~getvalidindex", + "function/index.html#static-function-getValidIndex", + "getValidIndex eggtended-js/lib/utils.js", + "function" + ], + [ + "eggtended-js/lib/utils.js~ins", + "function/index.html#static-function-ins", + "ins eggtended-js/lib/utils.js", + "function" + ], + [ + "eggtended-js/lib/parser/json2ast.js~json2ast", + "function/index.html#static-function-json2AST", + "json2AST eggtended-js/lib/parser/json2AST.js", + "function" + ], + [ + "eggtended-js/lib/repl/repl.js~repl", + "function/index.html#static-function-repl", + "repl eggtended-js/lib/repl/repl.js", + "function" + ], [ "", "test-file/test/tokenRegex-test.js.html#lineNumber50", @@ -479,12 +707,150 @@ window.esdocSearchIndex = [ "lib/interp/ast.js", "file" ], + [ + "lib/interp/ast.js~apply#args", + "class/lib/interp/ast.js~Apply.html#instance-member-args", + "lib/interp/ast.js~Apply#args", + "member" + ], + [ + "lib/interp/ast.js~apply#constructor", + "class/lib/interp/ast.js~Apply.html#instance-constructor-constructor", + "lib/interp/ast.js~Apply#constructor", + "method" + ], + [ + "lib/interp/ast.js~apply#evaluate", + "class/lib/interp/ast.js~Apply.html#instance-method-evaluate", + "lib/interp/ast.js~Apply#evaluate", + "method" + ], + [ + "lib/interp/ast.js~apply#operator", + "class/lib/interp/ast.js~Apply.html#instance-member-operator", + "lib/interp/ast.js~Apply#operator", + "member" + ], + [ + "lib/interp/ast.js~apply#type", + "class/lib/interp/ast.js~Apply.html#instance-member-type", + "lib/interp/ast.js~Apply#type", + "member" + ], + [ + "lib/interp/ast.js~regex#body", + "class/lib/interp/ast.js~Regex.html#instance-member-body", + "lib/interp/ast.js~Regex#body", + "member" + ], + [ + "lib/interp/ast.js~regex#constructor", + "class/lib/interp/ast.js~Regex.html#instance-constructor-constructor", + "lib/interp/ast.js~Regex#constructor", + "method" + ], + [ + "lib/interp/ast.js~regex#evaluate", + "class/lib/interp/ast.js~Regex.html#instance-method-evaluate", + "lib/interp/ast.js~Regex#evaluate", + "method" + ], + [ + "lib/interp/ast.js~regex#flags", + "class/lib/interp/ast.js~Regex.html#instance-member-flags", + "lib/interp/ast.js~Regex#flags", + "member" + ], + [ + "lib/interp/ast.js~regex#type", + "class/lib/interp/ast.js~Regex.html#instance-member-type", + "lib/interp/ast.js~Regex#type", + "member" + ], + [ + "lib/interp/ast.js~value#constructor", + "class/lib/interp/ast.js~Value.html#instance-constructor-constructor", + "lib/interp/ast.js~Value#constructor", + "method" + ], + [ + "lib/interp/ast.js~value#evaluate", + "class/lib/interp/ast.js~Value.html#instance-method-evaluate", + "lib/interp/ast.js~Value#evaluate", + "method" + ], + [ + "lib/interp/ast.js~value#type", + "class/lib/interp/ast.js~Value.html#instance-member-type", + "lib/interp/ast.js~Value#type", + "member" + ], + [ + "lib/interp/ast.js~value#value", + "class/lib/interp/ast.js~Value.html#instance-member-value", + "lib/interp/ast.js~Value#value", + "member" + ], + [ + "lib/interp/ast.js~word#constructor", + "class/lib/interp/ast.js~Word.html#instance-constructor-constructor", + "lib/interp/ast.js~Word#constructor", + "method" + ], + [ + "lib/interp/ast.js~word#evaluate", + "class/lib/interp/ast.js~Word.html#instance-method-evaluate", + "lib/interp/ast.js~Word#evaluate", + "method" + ], + [ + "lib/interp/ast.js~word#name", + "class/lib/interp/ast.js~Word.html#instance-member-name", + "lib/interp/ast.js~Word#name", + "member" + ], + [ + "lib/interp/ast.js~word#type", + "class/lib/interp/ast.js~Word.html#instance-member-type", + "lib/interp/ast.js~Word#type", + "member" + ], [ "lib/interp/eggvm.js", "file/lib/interp/eggvm.js.html", "lib/interp/eggvm.js", "file" ], + [ + "lib/interp/eggvm.js~eggvm.eval", + "class/lib/interp/eggvm.js~Eggvm.html#static-method-eval", + "lib/interp/eggvm.js~Eggvm.eval", + "method" + ], + [ + "lib/interp/eggvm.js~eggvm.getenvfromfile", + "class/lib/interp/eggvm.js~Eggvm.html#static-method-getEnvFromFile", + "lib/interp/eggvm.js~Eggvm.getEnvFromFile", + "method" + ], + [ + "lib/interp/eggvm.js~eggvm.run", + "class/lib/interp/eggvm.js~Eggvm.html#static-method-run", + "lib/interp/eggvm.js~Eggvm.run", + "method" + ], + [ + "lib/interp/eggvm.js~eggvm.runfromevm", + "class/lib/interp/eggvm.js~Eggvm.html#static-method-runFromEVM", + "lib/interp/eggvm.js~Eggvm.runFromEVM", + "method" + ], + [ + "lib/interp/eggvm.js~eggvm.runfromfile", + "class/lib/interp/eggvm.js~Eggvm.html#static-method-runFromFile", + "lib/interp/eggvm.js~Eggvm.runFromFile", + "method" + ], [ "lib/interp/environment.js", "file/lib/interp/environment.js.html", @@ -533,18 +899,240 @@ window.esdocSearchIndex = [ "lib/parser/lexer.js", "file" ], + [ + "lib/parser/lexer.js~lexer#__transformtokens", + "class/lib/parser/lexer.js~Lexer.html#instance-method-__transformTokens", + "lib/parser/lexer.js~Lexer#__transformTokens", + "method" + ], + [ + "lib/parser/lexer.js~lexer#__updatelastindices", + "class/lib/parser/lexer.js~Lexer.html#instance-method-__updateLastIndices", + "lib/parser/lexer.js~Lexer#__updateLastIndices", + "method" + ], + [ + "lib/parser/lexer.js~lexer#_gettoken", + "class/lib/parser/lexer.js~Lexer.html#instance-method-_getToken", + "lib/parser/lexer.js~Lexer#_getToken", + "method" + ], + [ + "lib/parser/lexer.js~lexer#_gettokens", + "class/lib/parser/lexer.js~Lexer.html#instance-method-_getTokens", + "lib/parser/lexer.js~Lexer#_getTokens", + "method" + ], + [ + "lib/parser/lexer.js~lexer#constructor", + "class/lib/parser/lexer.js~Lexer.html#instance-constructor-constructor", + "lib/parser/lexer.js~Lexer#constructor", + "method" + ], + [ + "lib/parser/lexer.js~lexer#getparbalance", + "class/lib/parser/lexer.js~Lexer.html#instance-method-getParBalance", + "lib/parser/lexer.js~Lexer#getParBalance", + "method" + ], + [ + "lib/parser/lexer.js~lexer#lastindex", + "class/lib/parser/lexer.js~Lexer.html#instance-member-lastIndex", + "lib/parser/lexer.js~Lexer#lastIndex", + "member" + ], + [ + "lib/parser/lexer.js~lexer#line", + "class/lib/parser/lexer.js~Lexer.html#instance-member-line", + "lib/parser/lexer.js~Lexer#line", + "member" + ], + [ + "lib/parser/lexer.js~lexer#program", + "class/lib/parser/lexer.js~Lexer.html#instance-member-program", + "lib/parser/lexer.js~Lexer#program", + "member" + ], + [ + "lib/parser/lexer.js~lexer#setprogram", + "class/lib/parser/lexer.js~Lexer.html#instance-method-setProgram", + "lib/parser/lexer.js~Lexer#setProgram", + "method" + ], + [ + "lib/parser/lexer.js~lexer#tokenize", + "class/lib/parser/lexer.js~Lexer.html#instance-method-tokenize", + "lib/parser/lexer.js~Lexer#tokenize", + "method" + ], + [ + "lib/parser/lexer.js~lexer#tokenizefromfile", + "class/lib/parser/lexer.js~Lexer.html#instance-method-tokenizeFromFile", + "lib/parser/lexer.js~Lexer#tokenizeFromFile", + "method" + ], + [ + "lib/parser/lexer.js~lexer.settokens", + "class/lib/parser/lexer.js~Lexer.html#static-method-setTokens", + "lib/parser/lexer.js~Lexer.setTokens", + "method" + ], + [ + "lib/parser/lexer.js~lexer.tokenize", + "class/lib/parser/lexer.js~Lexer.html#static-method-tokenize", + "lib/parser/lexer.js~Lexer.tokenize", + "method" + ], + [ + "lib/parser/lexer.js~lexer.tokenizefromfile", + "class/lib/parser/lexer.js~Lexer.html#static-method-tokenizeFromFile", + "lib/parser/lexer.js~Lexer.tokenizeFromFile", + "method" + ], [ "lib/parser/parse.js", "file/lib/parser/parse.js.html", "lib/parser/parse.js", "file" ], + [ + "lib/parser/parse.js~parser#__nexttoken", + "class/lib/parser/parse.js~Parser.html#instance-method-__nextToken", + "lib/parser/parse.js~Parser#__nextToken", + "method" + ], + [ + "lib/parser/parse.js~parser#__parsersyntaxerror", + "class/lib/parser/parse.js~Parser.html#instance-method-__parserSyntaxError", + "lib/parser/parse.js~Parser#__parserSyntaxError", + "method" + ], + [ + "lib/parser/parse.js~parser#constructor", + "class/lib/parser/parse.js~Parser.html#instance-constructor-constructor", + "lib/parser/parse.js~Parser#constructor", + "method" + ], + [ + "lib/parser/parse.js~parser#index", + "class/lib/parser/parse.js~Parser.html#instance-member-index", + "lib/parser/parse.js~Parser#index", + "member" + ], + [ + "lib/parser/parse.js~parser#lookahead", + "class/lib/parser/parse.js~Parser.html#instance-member-lookahead", + "lib/parser/parse.js~Parser#lookahead", + "member" + ], + [ + "lib/parser/parse.js~parser#parse", + "class/lib/parser/parse.js~Parser.html#instance-method-parse", + "lib/parser/parse.js~Parser#parse", + "method" + ], + [ + "lib/parser/parse.js~parser#parseapply", + "class/lib/parser/parse.js~Parser.html#instance-method-parseApply", + "lib/parser/parse.js~Parser#parseApply", + "method" + ], + [ + "lib/parser/parse.js~parser#parseexpression", + "class/lib/parser/parse.js~Parser.html#instance-method-parseExpression", + "lib/parser/parse.js~Parser#parseExpression", + "method" + ], + [ + "lib/parser/parse.js~parser#parsefromfile", + "class/lib/parser/parse.js~Parser.html#instance-method-parseFromFile", + "lib/parser/parse.js~Parser#parseFromFile", + "method" + ], + [ + "lib/parser/parse.js~parser#program", + "class/lib/parser/parse.js~Parser.html#instance-member-program", + "lib/parser/parse.js~Parser#program", + "member" + ], + [ + "lib/parser/parse.js~parser#setprogram", + "class/lib/parser/parse.js~Parser.html#instance-method-setProgram", + "lib/parser/parse.js~Parser#setProgram", + "method" + ], + [ + "lib/parser/parse.js~parser#tokens", + "class/lib/parser/parse.js~Parser.html#instance-member-tokens", + "lib/parser/parse.js~Parser#tokens", + "member" + ], + [ + "lib/parser/parse.js~parser.parse", + "class/lib/parser/parse.js~Parser.html#static-method-parse", + "lib/parser/parse.js~Parser.parse", + "method" + ], + [ + "lib/parser/parse.js~parser.parsefromfile", + "class/lib/parser/parse.js~Parser.html#static-method-parseFromFile", + "lib/parser/parse.js~Parser.parseFromFile", + "method" + ], [ "lib/parser/tokenregex.js", "file/lib/parser/tokenRegex.js.html", "lib/parser/tokenRegex.js", "file" ], + [ + "lib/parser/tokenregex.js~tokenregex#constructor", + "class/lib/parser/tokenRegex.js~TokenRegex.html#instance-constructor-constructor", + "lib/parser/tokenRegex.js~TokenRegex#constructor", + "method" + ], + [ + "lib/parser/tokenregex.js~tokenregex#exec", + "class/lib/parser/tokenRegex.js~TokenRegex.html#instance-method-exec", + "lib/parser/tokenRegex.js~TokenRegex#exec", + "method" + ], + [ + "lib/parser/tokenregex.js~tokenregex#expression", + "class/lib/parser/tokenRegex.js~TokenRegex.html#instance-member-expression", + "lib/parser/tokenRegex.js~TokenRegex#expression", + "member" + ], + [ + "lib/parser/tokenregex.js~tokenregex#lastindex", + "class/lib/parser/tokenRegex.js~TokenRegex.html#instance-set-lastIndex", + "lib/parser/tokenRegex.js~TokenRegex#lastIndex", + "member" + ], + [ + "lib/parser/tokenregex.js~tokenregex#lastindex", + "class/lib/parser/tokenRegex.js~TokenRegex.html#instance-get-lastIndex", + "lib/parser/tokenRegex.js~TokenRegex#lastIndex", + "member" + ], + [ + "lib/parser/tokenregex.js~tokenregex#name", + "class/lib/parser/tokenRegex.js~TokenRegex.html#instance-member-name", + "lib/parser/tokenRegex.js~TokenRegex#name", + "member" + ], + [ + "lib/parser/tokenregex.js~tokenregex#reset", + "class/lib/parser/tokenRegex.js~TokenRegex.html#instance-method-reset", + "lib/parser/tokenRegex.js~TokenRegex#reset", + "method" + ], + [ + "lib/parser/tokenregex.js~tokenregex#test", + "class/lib/parser/tokenRegex.js~TokenRegex.html#instance-method-test", + "lib/parser/tokenRegex.js~TokenRegex#test", + "method" + ], [ "lib/repl/colors.js", "file/lib/repl/colors.js.html", diff --git a/docs/source.html b/docs/source.html index 88bdf2d..bee5b16 100644 --- a/docs/source.html +++ b/docs/source.html @@ -8,7 +8,7 @@ - +
@@ -24,16 +24,54 @@ -
+ -

Source 1/151

+

Source 2/105

@@ -49,137 +87,164 @@ - + - + - - - + + + - - - + + + - + - + - + - + - + - + - - - + + + - + - + - + - + - - - + + + - - - + + + - - - - - - + + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + diff --git a/docs/test-file/test/examples-test.js.html b/docs/test-file/test/examples-test.js.html index bec1969..bb009a5 100644 --- a/docs/test-file/test/examples-test.js.html +++ b/docs/test-file/test/examples-test.js.html @@ -8,7 +8,7 @@ - +
@@ -24,12 +24,50 @@
    -
    + diff --git a/docs/test-file/test/tokenRegex-test.js.html b/docs/test-file/test/tokenRegex-test.js.html index 700af3d..864aa0d 100644 --- a/docs/test-file/test/tokenRegex-test.js.html +++ b/docs/test-file/test/tokenRegex-test.js.html @@ -8,7 +8,7 @@ - +
    @@ -24,12 +24,50 @@
      -
      + diff --git a/docs/test.html b/docs/test.html index 987bff2..7c8e0e4 100644 --- a/docs/test.html +++ b/docs/test.html @@ -8,7 +8,7 @@ - +
      @@ -24,12 +24,50 @@
        -
        + diff --git a/docs/variable/index.html b/docs/variable/index.html new file mode 100644 index 0000000..bfa7ad5 --- /dev/null +++ b/docs/variable/index.html @@ -0,0 +1,1661 @@ + + + + + + Variable | eggtended-js + + + + + + + +
        + Home + + Reference + Source + Test + +
        + + + +

        Variable

        +
        lib/interp/arithm.jslib/interp/arithm.js -0 %0/30 %0/1 1071 byte 48 2019-05-07 22:23:47 (UTC)
        lib/interp/ast.js-0 %0/25lib/interp/ast.jsApply +Regex +Value +Word0 %0/22 2915 byte 126 2019-05-07 23:05:23 (UTC)
        lib/interp/eggvm.js-0 %0/10lib/interp/eggvm.jsEggvm0 %0/6 1157 byte 54 2019-05-07 22:23:06 (UTC)
        lib/interp/environment.jslib/interp/environment.js -0 %0/1- 107 byte 6 2019-05-07 22:23:06 (UTC)
        lib/interp/index.jslib/interp/index.js -0 %0/2- 166 byte 10 2019-05-07 22:23:06 (UTC)
        lib/interp/monkey-patching.jslib/interp/monkey-patching.js -0 %0/30 %0/2 1303 byte 64 2019-05-07 22:23:06 (UTC)
        lib/interp/registry.js-0 %0/4lib/interp/registry.jsSpecialForms +TopEnv0 %0/2 6849 byte 309 2019-05-07 23:18:35 (UTC)
        lib/interp/require.jslib/interp/require.js -0 %0/2- 523 byte 20 2019-05-07 22:23:06 (UTC)
        lib/parser/index.jslib/parser/index.js -0 %0/4- 248 byte 11 2019-05-07 22:23:06 (UTC)
        lib/parser/json2AST.js-0 %0/3lib/parser/json2AST.jsjson2AST0 %0/1 710 byte 29 2019-05-07 22:23:06 (UTC)
        lib/parser/lexer.js-0 %0/18lib/parser/lexer.jsLexer0 %0/16 3528 byte 166 2019-05-07 22:23:07 (UTC)
        lib/parser/parse.js-5 %1/183198 byte1332019-05-07 23:17:45 (UTC)lib/parser/parse.jsParser13 %2/153286 byte1372019-05-07 23:31:43 (UTC)
        lib/parser/tokenRegex.js-0 %0/19lib/parser/tokenRegex.jsCOMMA +LP +NEWLINE +NUMBER +REGEX +RP +STRING +TokenRegex +WHITES +WORD0 %0/18 2709 byte 130 2019-05-07 22:23:07 (UTC)
        lib/repl/colors.js-0 %0/7lib/repl/colors.jsBLUE +DEFAULT +GREEN +RED +YELLOW0 %0/5 456 byte 18 2019-05-07 22:23:07 (UTC)
        lib/repl/extensions.js-0 %0/18lib/repl/extensions.jseggClear +eggCompleter +eggExit +eggHelp +eggInfo +eggRun +eggVersion +getPromptLine0 %0/12 3131 byte 137 2019-05-07 22:23:07 (UTC)
        lib/repl/repl.js-0 %0/9lib/repl/repl.jsrepl0 %0/1 1743 byte 75 2019-05-07 22:23:07 (UTC)
        lib/utils.js-0 %0/5lib/utils.jscheckIterable +chunk +getValidIndex +ins0 %0/4 798 byte 38 2019-05-07 23:18:57 (UTC)
        + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
        Static Public Summary
        + public + + + + + +
        +

        + + + + BLUE: * +

        +
        +
        + + + +
        +
        + + +
        + public + + + + + +
        +

        + + + + COMMA: TokenRegex +

        +
        +
        + + + +
        +
        + + +
        + public + + + + + +
        +

        + + + + DEFAULT: * +

        +
        +
        + + + +
        +
        + + +
        + public + + + + + +
        +

        + + + + GREEN: * +

        +
        +
        + + + +
        +
        + + +
        + public + + + + + +
        +

        + + + + LP: TokenRegex +

        +
        +
        + + + +
        +
        + + +
        + public + + + + + +
        +

        + + + + NEWLINE: TokenRegex +

        +
        +
        + + + +
        +
        + + +
        + public + + + + + +
        +

        + + + + NUMBER: TokenRegex +

        +
        +
        + + + +
        +
        + + +
        + public + + + + + +
        +

        + + + + RED: * +

        +
        +
        + + + +
        +
        + + +
        + public + + + + + +
        +

        + + + + REGEX: TokenRegex +

        +
        +
        + + + +
        +
        + + +
        + public + + + + + +
        +

        + + + + RP: TokenRegex +

        +
        +
        + + + +
        +
        + + +
        + public + + + + + +
        +

        + + + + STRING: TokenRegex +

        +
        +
        + + + +
        +
        + + +
        + public + + + + + +
        +

        + + + + SpecialForms: * +

        +
        +
        + + + +
        +
        + + +
        + public + + + + + +
        +

        + + + + TopEnv: * +

        +
        +
        + + + +
        +
        + + +
        + public + + + + + +
        +

        + + + + WHITES: TokenRegex +

        +
        +
        + + + +
        +
        + + +
        + public + + + + + +
        +

        + + + + WORD: TokenRegex +

        +
        +
        + + + +
        +
        + + +
        + public + + + + + +
        +

        + + + + YELLOW: * +

        +
        +
        + + + +
        +
        + + +
        + public + + + + + +
        +

        + + + + eggClear: * +

        +
        +
        + + + +
        +
        + + +
        + public + + + + + +
        +

        + + + + eggExit: * +

        +
        +
        + + + +
        +
        + + +
        + public + + + + + +
        +

        + + + + eggHelp: * +

        +
        +
        + + + +
        +
        + + +
        + public + + + + + +
        +

        + + + + eggInfo: * +

        +
        +
        + + + +
        +
        + + +
        + public + + + + + +
        +

        + + + + eggRun: * +

        +
        +
        + + + +
        +
        + + +
        + public + + + + + +
        +

        + + + + eggVersion: * +

        +
        +
        + + + +
        +
        + + +
        +
        +

        Static Public

        + +
        +

        + public + + + + + + BLUE: * + + + + source + +

        + +
        import {BLUE} from 'eggtended-js/lib/repl/colors.js'
        + + + + + + +
        +
        + + + + + + + + + + + + + + + + + +
        +
        +

        + public + + + + + + COMMA: TokenRegex + + + + source + +

        + + + + + + + + +
        +
        + + + + + + + + + + + + + + + + + +
        +
        +

        + public + + + + + + DEFAULT: * + + + + source + +

        + +
        import {DEFAULT} from 'eggtended-js/lib/repl/colors.js'
        + + + + + + +
        +
        + + + + + + + + + + + + + + + + + +
        +
        +

        + public + + + + + + GREEN: * + + + + source + +

        + +
        import {GREEN} from 'eggtended-js/lib/repl/colors.js'
        + + + + + + +
        +
        + + + + + + + + + + + + + + + + + +
        +
        +

        + public + + + + + + LP: TokenRegex + + + + source + +

        + + + + + + + + +
        +
        + + + + + + + + + + + + + + + + + +
        +
        +

        + public + + + + + + NEWLINE: TokenRegex + + + + source + +

        + + + + + + + + +
        +
        + + + + + + + + + + + + + + + + + +
        +
        +

        + public + + + + + + NUMBER: TokenRegex + + + + source + +

        + + + + + + + + +
        +
        + + + + + + + + + + + + + + + + + +
        +
        +

        + public + + + + + + RED: * + + + + source + +

        + + + + + + + + +
        +
        + + + + + + + + + + + + + + + + + +
        +
        +

        + public + + + + + + REGEX: TokenRegex + + + + source + +

        + + + + + + + + +
        +
        + + + + + + + + + + + + + + + + + +
        +
        +

        + public + + + + + + RP: TokenRegex + + + + source + +

        + + + + + + + + +
        +
        + + + + + + + + + + + + + + + + + +
        +
        +

        + public + + + + + + STRING: TokenRegex + + + + source + +

        + + + + + + + + +
        +
        + + + + + + + + + + + + + + + + + +
        +
        +

        + public + + + + + + SpecialForms: * + + + + source + +

        + +
        import {SpecialForms} from 'eggtended-js/lib/interp/registry.js'
        + + + + + + +
        +
        + + + + + + + + + + + + + + + + + +
        +
        +

        + public + + + + + + TopEnv: * + + + + source + +

        + + + + + + + + +
        +
        + + + + + + + + + + + + + + + + + +
        +
        +

        + public + + + + + + WHITES: TokenRegex + + + + source + +

        + + + + + + + + +
        +
        + + + + + + + + + + + + + + + + + +
        +
        +

        + public + + + + + + WORD: TokenRegex + + + + source + +

        + + + + + + + + +
        +
        + + + + + + + + + + + + + + + + + +
        +
        +

        + public + + + + + + YELLOW: * + + + + source + +

        + +
        import {YELLOW} from 'eggtended-js/lib/repl/colors.js'
        + + + + + + +
        +
        + + + + + + + + + + + + + + + + + +
        +
        +

        + public + + + + + + eggClear: * + + + + source + +

        + +
        import {eggClear} from 'eggtended-js/lib/repl/extensions.js'
        + + + + + + +
        +
        + + + + + + + + + + + + + + + + + +
        +
        +

        + public + + + + + + eggExit: * + + + + source + +

        + +
        import {eggExit} from 'eggtended-js/lib/repl/extensions.js'
        + + + + + + +
        +
        + + + + + + + + + + + + + + + + + +
        +
        +

        + public + + + + + + eggHelp: * + + + + source + +

        + +
        import {eggHelp} from 'eggtended-js/lib/repl/extensions.js'
        + + + + + + +
        +
        + + + + + + + + + + + + + + + + + +
        +
        +

        + public + + + + + + eggInfo: * + + + + source + +

        + +
        import {eggInfo} from 'eggtended-js/lib/repl/extensions.js'
        + + + + + + +
        +
        + + + + + + + + + + + + + + + + + +
        +
        +

        + public + + + + + + eggRun: * + + + + source + +

        + + + + + + + + +
        +
        + + + + + + + + + + + + + + + + + +
        +
        +

        + public + + + + + + eggVersion: * + + + + source + +

        + +
        import {eggVersion} from 'eggtended-js/lib/repl/extensions.js'
        + + + + + + +
        +
        + + + + + + + + + + + + + + + + + +
        +
        +
        + + + + + + + + + + + + diff --git a/esdoc.json b/esdoc.json index 99d801b..a182519 100644 --- a/esdoc.json +++ b/esdoc.json @@ -5,13 +5,54 @@ { "name": "esdoc-standard-plugin", "option": { + "lint": { + "enable": true + }, + "accessor": { + "access": [ + "public", + "protected", + "private" + ], + "autoPrivate": true + }, + "undocumentIdentifier": { + "enable": true + }, + "unexportedIdentifier": { + "enable": false + }, + "typeInference": { + "enable": true + }, + "brand": { + "title": "eggtended-js", + "description": "An extended version of the Egg programming language", + "repository": "https://github.com/Dibad/eggtended-js", + "site": "http://my-library.org", + "author": "https://github.com/Dibad", + "image": "https://i.imgur.com/9N4qe98.png" + }, "test": { "source": "./test/", - "interfaces": ["describe", "it", "context", "suite", "test"], - "includes": ["(spec|Spec|test|Test)\\.js$"], - "excludes": ["\\.config\\.js$"] + "interfaces": [ + "describe", + "it", + "context", + "suite", + "test" + ], + "includes": [ + "(spec|Spec|test|Test)\\.js$" + ], + "excludes": [ + "\\.config\\.js$" + ] } } + }, + { + "name": "esdoc-node" } ] } diff --git a/lib/parser/parse.js b/lib/parser/parse.js index 2450a7c..f36dd8f 100644 --- a/lib/parser/parse.js +++ b/lib/parser/parse.js @@ -5,6 +5,7 @@ const { Value, Word, Apply, Regex } = require("../interp/ast.js"); /** * Parser class. Iterates through the given string, tokenizes it and returns a AST tree. + * @access public */ class Parser { /** diff --git a/package.json b/package.json index f35c69a..8bce7cc 100644 --- a/package.json +++ b/package.json @@ -51,6 +51,8 @@ "git add" ] }, - "ignore": ["**/docs/**/*.js"] + "ignore": [ + "**/docs/**/*.js" + ] } }