meriyah 4.2.0 → 4.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +40 -0
- package/README.md +2 -1
- package/dist/meriyah.amd.js +119 -81
- package/dist/meriyah.amd.min.js +1 -1
- package/dist/meriyah.cjs +117 -79
- package/dist/meriyah.cjs.js +117 -79
- package/dist/meriyah.cjs.min.js +1 -1
- package/dist/meriyah.esm.js +117 -79
- package/dist/meriyah.esm.min.js +1 -1
- package/dist/meriyah.esm.min.mjs +1 -0
- package/dist/meriyah.esm.mjs +8820 -0
- package/dist/meriyah.iife.js +118 -80
- package/dist/meriyah.iife.min.js +1 -1
- package/dist/meriyah.min.cjs +1 -1
- package/dist/meriyah.system.js +121 -83
- package/dist/meriyah.system.min.js +1 -1
- package/dist/meriyah.umd.cjs +119 -81
- package/dist/meriyah.umd.es5.js +131 -89
- package/dist/meriyah.umd.es5.min.js +1 -15
- package/dist/meriyah.umd.js +119 -81
- package/dist/meriyah.umd.min.cjs +1 -1
- package/dist/meriyah.umd.min.js +1 -1
- package/dist/src/estree.d.ts +9 -4
- package/dist/src/estree.d.ts.map +1 -1
- package/dist/src/lexer/identifier.d.ts.map +1 -1
- package/dist/src/lexer/regexp.d.ts.map +1 -1
- package/dist/src/parser.d.ts +1 -0
- package/dist/src/parser.d.ts.map +1 -1
- package/dist/src/token.d.ts +2 -2
- package/package.json +25 -30
- package/src/estree.ts +11 -3
- package/src/lexer/identifier.ts +33 -14
- package/src/lexer/numeric.ts +7 -7
- package/src/lexer/regexp.ts +22 -9
- package/src/lexer/scan.ts +1 -1
- package/src/parser.ts +89 -52
- package/src/token.ts +3 -3
package/dist/meriyah.iife.js
CHANGED
|
@@ -866,7 +866,7 @@ var meriyah = (function (exports) {
|
|
|
866
866
|
break;
|
|
867
867
|
case 117:
|
|
868
868
|
if (mask & 16)
|
|
869
|
-
report(parser, 34, '
|
|
869
|
+
report(parser, 34, 'u');
|
|
870
870
|
mask |= 16;
|
|
871
871
|
break;
|
|
872
872
|
case 121:
|
|
@@ -875,9 +875,14 @@ var meriyah = (function (exports) {
|
|
|
875
875
|
mask |= 8;
|
|
876
876
|
break;
|
|
877
877
|
case 115:
|
|
878
|
-
if (mask &
|
|
878
|
+
if (mask & 32)
|
|
879
879
|
report(parser, 34, 's');
|
|
880
|
-
mask |=
|
|
880
|
+
mask |= 32;
|
|
881
|
+
break;
|
|
882
|
+
case 100:
|
|
883
|
+
if (mask & 64)
|
|
884
|
+
report(parser, 34, 'd');
|
|
885
|
+
mask |= 64;
|
|
881
886
|
break;
|
|
882
887
|
default:
|
|
883
888
|
report(parser, 33);
|
|
@@ -897,7 +902,13 @@ var meriyah = (function (exports) {
|
|
|
897
902
|
return new RegExp(pattern, flags);
|
|
898
903
|
}
|
|
899
904
|
catch (e) {
|
|
900
|
-
|
|
905
|
+
try {
|
|
906
|
+
new RegExp(pattern, flags.replace('d', ''));
|
|
907
|
+
return null;
|
|
908
|
+
}
|
|
909
|
+
catch (e) {
|
|
910
|
+
report(parser, 32);
|
|
911
|
+
}
|
|
901
912
|
}
|
|
902
913
|
}
|
|
903
914
|
|
|
@@ -1208,8 +1219,8 @@ var meriyah = (function (exports) {
|
|
|
1208
1219
|
digits++;
|
|
1209
1220
|
char = advanceChar(parser);
|
|
1210
1221
|
}
|
|
1211
|
-
if (digits
|
|
1212
|
-
report(parser, digits
|
|
1222
|
+
if (digits === 0 || !allowSeparator) {
|
|
1223
|
+
report(parser, digits === 0 ? 19 : 147);
|
|
1213
1224
|
}
|
|
1214
1225
|
}
|
|
1215
1226
|
else if ((char | 32) === 111) {
|
|
@@ -1229,8 +1240,8 @@ var meriyah = (function (exports) {
|
|
|
1229
1240
|
digits++;
|
|
1230
1241
|
char = advanceChar(parser);
|
|
1231
1242
|
}
|
|
1232
|
-
if (digits
|
|
1233
|
-
report(parser, digits
|
|
1243
|
+
if (digits === 0 || !allowSeparator) {
|
|
1244
|
+
report(parser, digits === 0 ? 0 : 147);
|
|
1234
1245
|
}
|
|
1235
1246
|
}
|
|
1236
1247
|
else if ((char | 32) === 98) {
|
|
@@ -1250,8 +1261,8 @@ var meriyah = (function (exports) {
|
|
|
1250
1261
|
digits++;
|
|
1251
1262
|
char = advanceChar(parser);
|
|
1252
1263
|
}
|
|
1253
|
-
if (digits
|
|
1254
|
-
report(parser, digits
|
|
1264
|
+
if (digits === 0 || !allowSeparator) {
|
|
1265
|
+
report(parser, digits === 0 ? 0 : 147);
|
|
1255
1266
|
}
|
|
1256
1267
|
}
|
|
1257
1268
|
else if (CharTypes[char] & 32) {
|
|
@@ -1327,7 +1338,7 @@ var meriyah = (function (exports) {
|
|
|
1327
1338
|
if (CharTypes[char] & 256)
|
|
1328
1339
|
char = advanceChar(parser);
|
|
1329
1340
|
const { index } = parser;
|
|
1330
|
-
if ((CharTypes[char] & 16)
|
|
1341
|
+
if ((CharTypes[char] & 16) === 0)
|
|
1331
1342
|
report(parser, 10);
|
|
1332
1343
|
value += parser.source.substring(end, index) + scanDecimalDigitsOrSeparator(parser, char);
|
|
1333
1344
|
char = parser.currentChar;
|
|
@@ -1501,14 +1512,28 @@ var meriyah = (function (exports) {
|
|
|
1501
1512
|
return 208897;
|
|
1502
1513
|
if (!hasEscape)
|
|
1503
1514
|
return token;
|
|
1515
|
+
if (token === 209008) {
|
|
1516
|
+
if ((context & (2048 | 4194304)) === 0) {
|
|
1517
|
+
return token;
|
|
1518
|
+
}
|
|
1519
|
+
return 121;
|
|
1520
|
+
}
|
|
1504
1521
|
if (context & 1024) {
|
|
1505
|
-
|
|
1506
|
-
|
|
1507
|
-
|
|
1508
|
-
|
|
1509
|
-
|
|
1510
|
-
|
|
1511
|
-
|
|
1522
|
+
if (token === 36972) {
|
|
1523
|
+
return 122;
|
|
1524
|
+
}
|
|
1525
|
+
if ((token & 36864) === 36864) {
|
|
1526
|
+
return 122;
|
|
1527
|
+
}
|
|
1528
|
+
if ((token & 20480) === 20480) {
|
|
1529
|
+
if (context & 1073741824 && (context & 8192) === 0) {
|
|
1530
|
+
return token;
|
|
1531
|
+
}
|
|
1532
|
+
else {
|
|
1533
|
+
return 121;
|
|
1534
|
+
}
|
|
1535
|
+
}
|
|
1536
|
+
return 143483;
|
|
1512
1537
|
}
|
|
1513
1538
|
if (context & 1073741824 &&
|
|
1514
1539
|
(context & 8192) === 0 &&
|
|
@@ -1521,13 +1546,13 @@ var meriyah = (function (exports) {
|
|
|
1521
1546
|
? 121
|
|
1522
1547
|
: token;
|
|
1523
1548
|
}
|
|
1524
|
-
|
|
1525
|
-
|
|
1526
|
-
|
|
1527
|
-
|
|
1528
|
-
|
|
1529
|
-
|
|
1530
|
-
|
|
1549
|
+
if (token === 209007) {
|
|
1550
|
+
return 143483;
|
|
1551
|
+
}
|
|
1552
|
+
if ((token & 36864) === 36864) {
|
|
1553
|
+
return token;
|
|
1554
|
+
}
|
|
1555
|
+
return 121;
|
|
1531
1556
|
}
|
|
1532
1557
|
return 208897;
|
|
1533
1558
|
}
|
|
@@ -1790,7 +1815,7 @@ var meriyah = (function (exports) {
|
|
|
1790
1815
|
}
|
|
1791
1816
|
else if (ch === 61) {
|
|
1792
1817
|
advanceChar(parser);
|
|
1793
|
-
return
|
|
1818
|
+
return 8456256;
|
|
1794
1819
|
}
|
|
1795
1820
|
if (ch === 33) {
|
|
1796
1821
|
const index = parser.index + 1;
|
|
@@ -1808,7 +1833,7 @@ var meriyah = (function (exports) {
|
|
|
1808
1833
|
return 8456258;
|
|
1809
1834
|
}
|
|
1810
1835
|
if (ch === 47) {
|
|
1811
|
-
if ((context & 16)
|
|
1836
|
+
if ((context & 16) === 0)
|
|
1812
1837
|
return 8456258;
|
|
1813
1838
|
const index = parser.index + 1;
|
|
1814
1839
|
if (index < parser.end) {
|
|
@@ -1973,7 +1998,7 @@ var meriyah = (function (exports) {
|
|
|
1973
1998
|
const ch = parser.currentChar;
|
|
1974
1999
|
if (ch === 61) {
|
|
1975
2000
|
advanceChar(parser);
|
|
1976
|
-
return
|
|
2001
|
+
return 8456257;
|
|
1977
2002
|
}
|
|
1978
2003
|
if (ch !== 62)
|
|
1979
2004
|
return 8456259;
|
|
@@ -4914,7 +4939,7 @@ var meriyah = (function (exports) {
|
|
|
4914
4939
|
case 86106:
|
|
4915
4940
|
report(parser, context & 1024
|
|
4916
4941
|
? 73
|
|
4917
|
-
: (context & 256)
|
|
4942
|
+
: (context & 256) === 0
|
|
4918
4943
|
? 75
|
|
4919
4944
|
: 74);
|
|
4920
4945
|
case 86096:
|
|
@@ -4960,12 +4985,12 @@ var meriyah = (function (exports) {
|
|
|
4960
4985
|
});
|
|
4961
4986
|
}
|
|
4962
4987
|
function parseReturnStatement(parser, context, start, line, column) {
|
|
4963
|
-
if ((context & 32)
|
|
4988
|
+
if ((context & 32) === 0 && context & 8192)
|
|
4964
4989
|
report(parser, 89);
|
|
4965
4990
|
nextToken(parser, context | 32768);
|
|
4966
4991
|
const argument = parser.flags & 1 || parser.token & 1048576
|
|
4967
4992
|
? null
|
|
4968
|
-
: parseExpressions(parser, context, 0, 1, parser.tokenPos, parser.
|
|
4993
|
+
: parseExpressions(parser, context, 0, 1, parser.tokenPos, parser.linePos, parser.colPos);
|
|
4969
4994
|
matchOrInsertSemicolon(parser, context | 32768);
|
|
4970
4995
|
return finishNode(parser, context, start, line, column, {
|
|
4971
4996
|
type: 'ReturnStatement',
|
|
@@ -4984,7 +5009,7 @@ var meriyah = (function (exports) {
|
|
|
4984
5009
|
validateAndDeclareLabel(parser, labels, value);
|
|
4985
5010
|
nextToken(parser, context | 32768);
|
|
4986
5011
|
const body = allowFuncDecl &&
|
|
4987
|
-
(context & 1024)
|
|
5012
|
+
(context & 1024) === 0 &&
|
|
4988
5013
|
context & 256 &&
|
|
4989
5014
|
parser.token === 86106
|
|
4990
5015
|
? parseFunctionDeclaration(parser, context, addChildScope(scope, 2), origin, 0, 0, 0, parser.tokenPos, parser.linePos, parser.colPos)
|
|
@@ -5093,7 +5118,7 @@ var meriyah = (function (exports) {
|
|
|
5093
5118
|
}
|
|
5094
5119
|
function parseConsequentOrAlternative(parser, context, scope, labels, start, line, column) {
|
|
5095
5120
|
return context & 1024 ||
|
|
5096
|
-
(context & 256)
|
|
5121
|
+
(context & 256) === 0 ||
|
|
5097
5122
|
parser.token !== 86106
|
|
5098
5123
|
? parseStatement(parser, context, scope, 0, { $: labels }, 0, parser.tokenPos, parser.linePos, parser.colPos)
|
|
5099
5124
|
: parseFunctionDeclaration(parser, context, addChildScope(scope, 2), 0, 0, 0, 0, start, line, column);
|
|
@@ -5158,11 +5183,11 @@ var meriyah = (function (exports) {
|
|
|
5158
5183
|
return parseStatement(parser, ((context | 134217728) ^ 134217728) | 131072, scope, 0, { loop: 1, $: labels }, 0, parser.tokenPos, parser.linePos, parser.colPos);
|
|
5159
5184
|
}
|
|
5160
5185
|
function parseContinueStatement(parser, context, labels, start, line, column) {
|
|
5161
|
-
if ((context & 131072)
|
|
5186
|
+
if ((context & 131072) === 0)
|
|
5162
5187
|
report(parser, 65);
|
|
5163
5188
|
nextToken(parser, context);
|
|
5164
5189
|
let label = null;
|
|
5165
|
-
if ((parser.flags & 1)
|
|
5190
|
+
if ((parser.flags & 1) === 0 && parser.token & 143360) {
|
|
5166
5191
|
const { tokenValue } = parser;
|
|
5167
5192
|
label = parseIdentifier(parser, context | 32768, 0);
|
|
5168
5193
|
if (!isValidLabel(parser, labels, tokenValue, 1))
|
|
@@ -5177,13 +5202,13 @@ var meriyah = (function (exports) {
|
|
|
5177
5202
|
function parseBreakStatement(parser, context, labels, start, line, column) {
|
|
5178
5203
|
nextToken(parser, context | 32768);
|
|
5179
5204
|
let label = null;
|
|
5180
|
-
if ((parser.flags & 1)
|
|
5205
|
+
if ((parser.flags & 1) === 0 && parser.token & 143360) {
|
|
5181
5206
|
const { tokenValue } = parser;
|
|
5182
5207
|
label = parseIdentifier(parser, context | 32768, 0);
|
|
5183
5208
|
if (!isValidLabel(parser, labels, tokenValue, 0))
|
|
5184
5209
|
report(parser, 134, tokenValue);
|
|
5185
5210
|
}
|
|
5186
|
-
else if ((context & (4096 | 131072))
|
|
5211
|
+
else if ((context & (4096 | 131072)) === 0) {
|
|
5187
5212
|
report(parser, 66);
|
|
5188
5213
|
}
|
|
5189
5214
|
matchOrInsertSemicolon(parser, context | 32768);
|
|
@@ -5263,6 +5288,17 @@ var meriyah = (function (exports) {
|
|
|
5263
5288
|
body
|
|
5264
5289
|
});
|
|
5265
5290
|
}
|
|
5291
|
+
function parseStaticBlock(parser, context, scope, start, line, column) {
|
|
5292
|
+
if (scope)
|
|
5293
|
+
scope = addChildScope(scope, 2);
|
|
5294
|
+
const ctorContext = 16384 | 524288;
|
|
5295
|
+
context = ((context | ctorContext) ^ ctorContext) | 262144;
|
|
5296
|
+
const { body } = parseBlock(parser, context, scope, {}, start, line, column);
|
|
5297
|
+
return finishNode(parser, context, start, line, column, {
|
|
5298
|
+
type: 'StaticBlock',
|
|
5299
|
+
body
|
|
5300
|
+
});
|
|
5301
|
+
}
|
|
5266
5302
|
function parseDoWhileStatement(parser, context, scope, labels, start, line, column) {
|
|
5267
5303
|
nextToken(parser, context | 32768);
|
|
5268
5304
|
const body = parseIterationStatementBody(parser, context, scope, labels);
|
|
@@ -5350,10 +5386,10 @@ var meriyah = (function (exports) {
|
|
|
5350
5386
|
if (parser.token === 1077936157) {
|
|
5351
5387
|
nextToken(parser, context | 32768);
|
|
5352
5388
|
init = parseExpression(parser, context, 1, 0, 0, parser.tokenPos, parser.linePos, parser.colPos);
|
|
5353
|
-
if (origin & 32 || (token & 2097152)
|
|
5389
|
+
if (origin & 32 || (token & 2097152) === 0) {
|
|
5354
5390
|
if (parser.token === 274549 ||
|
|
5355
5391
|
(parser.token === 8738868 &&
|
|
5356
|
-
(token & 2097152 || (kind & 4)
|
|
5392
|
+
(token & 2097152 || (kind & 4) === 0 || context & 1024))) {
|
|
5357
5393
|
reportMessageAt(tokenPos, parser.line, parser.index - 3, 57, parser.token === 274549 ? 'of' : 'in');
|
|
5358
5394
|
}
|
|
5359
5395
|
}
|
|
@@ -5370,7 +5406,8 @@ var meriyah = (function (exports) {
|
|
|
5370
5406
|
}
|
|
5371
5407
|
function parseForStatement(parser, context, scope, labels, start, line, column) {
|
|
5372
5408
|
nextToken(parser, context);
|
|
5373
|
-
const forAwait = (context & 4194304) > 0 &&
|
|
5409
|
+
const forAwait = ((context & 4194304) > 0 || ((context & 2048) > 0 && (context & 8192) > 0)) &&
|
|
5410
|
+
consumeOpt(parser, context, 209008);
|
|
5374
5411
|
consume(parser, context | 32768, 67174411);
|
|
5375
5412
|
if (scope)
|
|
5376
5413
|
scope = addChildScope(scope, 1);
|
|
@@ -5659,7 +5696,7 @@ var meriyah = (function (exports) {
|
|
|
5659
5696
|
const { tokenPos, linePos, colPos } = parser;
|
|
5660
5697
|
declaration = parseIdentifier(parser, context, 0);
|
|
5661
5698
|
const { flags } = parser;
|
|
5662
|
-
if ((flags & 1)
|
|
5699
|
+
if ((flags & 1) === 0) {
|
|
5663
5700
|
if (parser.token === 86106) {
|
|
5664
5701
|
declaration = parseFunctionDeclaration(parser, context, scope, 4, 1, 1, 1, tokenPos, linePos, colPos);
|
|
5665
5702
|
}
|
|
@@ -5783,7 +5820,7 @@ var meriyah = (function (exports) {
|
|
|
5783
5820
|
case 209007:
|
|
5784
5821
|
const { tokenPos, linePos, colPos } = parser;
|
|
5785
5822
|
nextToken(parser, context);
|
|
5786
|
-
if ((parser.flags & 1)
|
|
5823
|
+
if ((parser.flags & 1) === 0 && parser.token === 86106) {
|
|
5787
5824
|
declaration = parseFunctionDeclaration(parser, context, scope, 4, 1, 2, 1, tokenPos, linePos, colPos);
|
|
5788
5825
|
if (scope) {
|
|
5789
5826
|
key = declaration.id ? declaration.id.name : '';
|
|
@@ -5940,7 +5977,7 @@ var meriyah = (function (exports) {
|
|
|
5940
5977
|
const { token } = parser;
|
|
5941
5978
|
const expr = parseIdentifier(parser, context, isPattern);
|
|
5942
5979
|
const { flags } = parser;
|
|
5943
|
-
if ((flags & 1)
|
|
5980
|
+
if ((flags & 1) === 0) {
|
|
5944
5981
|
if (parser.token === 86106) {
|
|
5945
5982
|
return parseFunctionExpression(parser, context, 1, inGroup, start, line, column);
|
|
5946
5983
|
}
|
|
@@ -5974,7 +6011,7 @@ var meriyah = (function (exports) {
|
|
|
5974
6011
|
report(parser, 120);
|
|
5975
6012
|
let argument = null;
|
|
5976
6013
|
let delegate = false;
|
|
5977
|
-
if ((parser.flags & 1)
|
|
6014
|
+
if ((parser.flags & 1) === 0) {
|
|
5978
6015
|
delegate = consumeOpt(parser, context | 32768, 8457014);
|
|
5979
6016
|
if (parser.token & (12288 | 65536) || delegate) {
|
|
5980
6017
|
argument = parseExpression(parser, context, 1, 0, 0, parser.tokenPos, parser.linePos, parser.colPos);
|
|
@@ -6051,8 +6088,8 @@ var meriyah = (function (exports) {
|
|
|
6051
6088
|
if (context & 64 &&
|
|
6052
6089
|
scope &&
|
|
6053
6090
|
scopeError !== void 0 &&
|
|
6054
|
-
(prevContext & 1024)
|
|
6055
|
-
(context & 8192)
|
|
6091
|
+
(prevContext & 1024) === 0 &&
|
|
6092
|
+
(context & 8192) === 0) {
|
|
6056
6093
|
reportScopeError(scopeError);
|
|
6057
6094
|
}
|
|
6058
6095
|
}
|
|
@@ -6078,19 +6115,19 @@ var meriyah = (function (exports) {
|
|
|
6078
6115
|
case 67108991:
|
|
6079
6116
|
report(parser, 161);
|
|
6080
6117
|
case 67174411: {
|
|
6081
|
-
if ((context & 524288)
|
|
6118
|
+
if ((context & 524288) === 0)
|
|
6082
6119
|
report(parser, 26);
|
|
6083
6120
|
if (context & 16384)
|
|
6084
|
-
report(parser,
|
|
6121
|
+
report(parser, 27);
|
|
6085
6122
|
parser.assignable = 2;
|
|
6086
6123
|
break;
|
|
6087
6124
|
}
|
|
6088
6125
|
case 69271571:
|
|
6089
6126
|
case 67108877: {
|
|
6090
|
-
if ((context & 262144)
|
|
6127
|
+
if ((context & 262144) === 0)
|
|
6091
6128
|
report(parser, 27);
|
|
6092
6129
|
if (context & 16384)
|
|
6093
|
-
report(parser,
|
|
6130
|
+
report(parser, 27);
|
|
6094
6131
|
parser.assignable = 1;
|
|
6095
6132
|
break;
|
|
6096
6133
|
}
|
|
@@ -6117,14 +6154,14 @@ var meriyah = (function (exports) {
|
|
|
6117
6154
|
});
|
|
6118
6155
|
}
|
|
6119
6156
|
function parseMemberOrUpdateExpression(parser, context, expr, inGroup, inChain, start, line, column) {
|
|
6120
|
-
if ((parser.token & 33619968) === 33619968 && (parser.flags & 1)
|
|
6157
|
+
if ((parser.token & 33619968) === 33619968 && (parser.flags & 1) === 0) {
|
|
6121
6158
|
expr = parseUpdateExpression(parser, context, expr, start, line, column);
|
|
6122
6159
|
}
|
|
6123
6160
|
else if ((parser.token & 67108864) === 67108864) {
|
|
6124
|
-
context = (context | 134217728
|
|
6161
|
+
context = (context | 134217728) ^ 134217728;
|
|
6125
6162
|
switch (parser.token) {
|
|
6126
6163
|
case 67108877: {
|
|
6127
|
-
nextToken(parser, context | 1073741824);
|
|
6164
|
+
nextToken(parser, (context | 1073741824 | 8192) ^ 8192);
|
|
6128
6165
|
parser.assignable = 1;
|
|
6129
6166
|
const property = parsePropertyOrPrivatePropertyName(parser, context);
|
|
6130
6167
|
expr = finishNode(parser, context, start, line, column, {
|
|
@@ -6180,7 +6217,7 @@ var meriyah = (function (exports) {
|
|
|
6180
6217
|
break;
|
|
6181
6218
|
}
|
|
6182
6219
|
case 67108991: {
|
|
6183
|
-
nextToken(parser, context);
|
|
6220
|
+
nextToken(parser, (context | 1073741824 | 8192) ^ 8192);
|
|
6184
6221
|
parser.flags |= 2048;
|
|
6185
6222
|
parser.assignable = 2;
|
|
6186
6223
|
expr = parseOptionalChain(parser, context, expr, start, line, column);
|
|
@@ -6244,7 +6281,7 @@ var meriyah = (function (exports) {
|
|
|
6244
6281
|
});
|
|
6245
6282
|
}
|
|
6246
6283
|
else {
|
|
6247
|
-
if ((parser.token & (143360 | 4096))
|
|
6284
|
+
if ((parser.token & (143360 | 4096)) === 0)
|
|
6248
6285
|
report(parser, 154);
|
|
6249
6286
|
const property = parseIdentifier(parser, context, 0);
|
|
6250
6287
|
parser.assignable = 2;
|
|
@@ -6262,7 +6299,7 @@ var meriyah = (function (exports) {
|
|
|
6262
6299
|
return node;
|
|
6263
6300
|
}
|
|
6264
6301
|
function parsePropertyOrPrivatePropertyName(parser, context) {
|
|
6265
|
-
if ((parser.token & (143360 | 4096))
|
|
6302
|
+
if ((parser.token & (143360 | 4096)) === 0 && parser.token !== 131) {
|
|
6266
6303
|
report(parser, 154);
|
|
6267
6304
|
}
|
|
6268
6305
|
return context & 1 && parser.token === 131
|
|
@@ -6587,11 +6624,11 @@ var meriyah = (function (exports) {
|
|
|
6587
6624
|
let firstRestricted;
|
|
6588
6625
|
let functionScope = scope ? createScope() : void 0;
|
|
6589
6626
|
if (parser.token === 67174411) {
|
|
6590
|
-
if ((flags & 1)
|
|
6627
|
+
if ((flags & 1) === 0)
|
|
6591
6628
|
report(parser, 37, 'Function');
|
|
6592
6629
|
}
|
|
6593
6630
|
else {
|
|
6594
|
-
const kind = origin & 4 && ((context & 8192)
|
|
6631
|
+
const kind = origin & 4 && ((context & 8192) === 0 || (context & 2048) === 0)
|
|
6595
6632
|
? 4
|
|
6596
6633
|
: 64;
|
|
6597
6634
|
validateFunctionName(parser, context | ((context & 3072) << 11), parser.token);
|
|
@@ -6737,7 +6774,7 @@ var meriyah = (function (exports) {
|
|
|
6737
6774
|
destructible |=
|
|
6738
6775
|
kind & 1
|
|
6739
6776
|
? 32
|
|
6740
|
-
: (kind & 2)
|
|
6777
|
+
: (kind & 2) === 0
|
|
6741
6778
|
? 16
|
|
6742
6779
|
: 0;
|
|
6743
6780
|
left = parseMemberOrUpdateExpression(parser, context, left, inGroup, 0, tokenPos, linePos, colPos);
|
|
@@ -6796,7 +6833,7 @@ var meriyah = (function (exports) {
|
|
|
6796
6833
|
left = parseLeftHandSideExpression(parser, context, 1, 0, 1, tokenPos, linePos, colPos);
|
|
6797
6834
|
if (parser.token !== 18 && parser.token !== 20) {
|
|
6798
6835
|
left = parseAssignmentExpression(parser, context, inGroup, isPattern, tokenPos, linePos, colPos, left);
|
|
6799
|
-
if ((kind & (2 | 1))
|
|
6836
|
+
if ((kind & (2 | 1)) === 0 && token === 67174411)
|
|
6800
6837
|
destructible |= 16;
|
|
6801
6838
|
}
|
|
6802
6839
|
else if (parser.assignable & 2) {
|
|
@@ -6985,7 +7022,7 @@ var meriyah = (function (exports) {
|
|
|
6985
7022
|
});
|
|
6986
7023
|
}
|
|
6987
7024
|
function parseMethodDefinition(parser, context, kind, inGroup, start, line, column) {
|
|
6988
|
-
const modifierFlags = (kind & 64)
|
|
7025
|
+
const modifierFlags = (kind & 64) === 0 ? 31981568 : 14680064;
|
|
6989
7026
|
context =
|
|
6990
7027
|
((context | modifierFlags) ^ modifierFlags) |
|
|
6991
7028
|
((kind & 88) << 18) |
|
|
@@ -7553,7 +7590,7 @@ var meriyah = (function (exports) {
|
|
|
7553
7590
|
let left = null;
|
|
7554
7591
|
const { tokenPos, linePos, colPos } = parser;
|
|
7555
7592
|
if (parser.token & 143360) {
|
|
7556
|
-
if ((context & 1024)
|
|
7593
|
+
if ((context & 1024) === 0) {
|
|
7557
7594
|
if ((parser.token & 36864) === 36864) {
|
|
7558
7595
|
parser.flags |= 256;
|
|
7559
7596
|
}
|
|
@@ -7814,7 +7851,7 @@ var meriyah = (function (exports) {
|
|
|
7814
7851
|
(134221824 | 8192 | 16384), scope, 16, void 0, void 0);
|
|
7815
7852
|
switch (parser.token) {
|
|
7816
7853
|
case 69271571:
|
|
7817
|
-
if ((parser.flags & 1)
|
|
7854
|
+
if ((parser.flags & 1) === 0) {
|
|
7818
7855
|
report(parser, 112);
|
|
7819
7856
|
}
|
|
7820
7857
|
break;
|
|
@@ -7823,13 +7860,13 @@ var meriyah = (function (exports) {
|
|
|
7823
7860
|
case 22:
|
|
7824
7861
|
report(parser, 113);
|
|
7825
7862
|
case 67174411:
|
|
7826
|
-
if ((parser.flags & 1)
|
|
7863
|
+
if ((parser.flags & 1) === 0) {
|
|
7827
7864
|
report(parser, 112);
|
|
7828
7865
|
}
|
|
7829
7866
|
parser.flags |= 1024;
|
|
7830
7867
|
break;
|
|
7831
7868
|
}
|
|
7832
|
-
if ((parser.token & 8454144) === 8454144 && (parser.flags & 1)
|
|
7869
|
+
if ((parser.token & 8454144) === 8454144 && (parser.flags & 1) === 0)
|
|
7833
7870
|
report(parser, 28, KeywordDescTable[parser.token & 255]);
|
|
7834
7871
|
if ((parser.token & 33619968) === 33619968)
|
|
7835
7872
|
report(parser, 121);
|
|
@@ -7855,7 +7892,7 @@ var meriyah = (function (exports) {
|
|
|
7855
7892
|
let left;
|
|
7856
7893
|
const { tokenPos, linePos, colPos } = parser;
|
|
7857
7894
|
if (parser.token & 143360) {
|
|
7858
|
-
if ((context & 1024)
|
|
7895
|
+
if ((context & 1024) === 0) {
|
|
7859
7896
|
if ((parser.token & 36864) === 36864) {
|
|
7860
7897
|
parser.flags |= 256;
|
|
7861
7898
|
}
|
|
@@ -8175,7 +8212,7 @@ var meriyah = (function (exports) {
|
|
|
8175
8212
|
id = parseIdentifier(parser, context, 0);
|
|
8176
8213
|
}
|
|
8177
8214
|
else {
|
|
8178
|
-
if ((flags & 1)
|
|
8215
|
+
if ((flags & 1) === 0)
|
|
8179
8216
|
report(parser, 37, 'Class');
|
|
8180
8217
|
}
|
|
8181
8218
|
let inheritedContext = context;
|
|
@@ -8306,7 +8343,7 @@ var meriyah = (function (exports) {
|
|
|
8306
8343
|
}
|
|
8307
8344
|
break;
|
|
8308
8345
|
case 209007:
|
|
8309
|
-
if (parser.token !== 67174411 && (parser.flags & 1)
|
|
8346
|
+
if (parser.token !== 67174411 && (parser.flags & 1) === 0) {
|
|
8310
8347
|
if (context & 1 && (parser.token & 1073741824) === 1073741824) {
|
|
8311
8348
|
return parsePropertyDefinition(parser, context, key, kind, decorators, tokenPos, linePos, colPos);
|
|
8312
8349
|
}
|
|
@@ -8344,12 +8381,13 @@ var meriyah = (function (exports) {
|
|
|
8344
8381
|
}
|
|
8345
8382
|
else if (context & 1 && parser.token === 131) {
|
|
8346
8383
|
kind |= 4096;
|
|
8347
|
-
key = parsePrivateIdentifier(parser, context, tokenPos, linePos, colPos);
|
|
8348
|
-
context = context | 16384;
|
|
8384
|
+
key = parsePrivateIdentifier(parser, context | 16384, tokenPos, linePos, colPos);
|
|
8349
8385
|
}
|
|
8350
8386
|
else if (context & 1 && (parser.token & 1073741824) === 1073741824) {
|
|
8351
8387
|
kind |= 128;
|
|
8352
|
-
|
|
8388
|
+
}
|
|
8389
|
+
else if (isStatic && token === 2162700) {
|
|
8390
|
+
return parseStaticBlock(parser, context, scope, tokenPos, linePos, colPos);
|
|
8353
8391
|
}
|
|
8354
8392
|
else if (token === 122) {
|
|
8355
8393
|
key = parseIdentifier(parser, context, 0);
|
|
@@ -8380,16 +8418,16 @@ var meriyah = (function (exports) {
|
|
|
8380
8418
|
else
|
|
8381
8419
|
report(parser, 131);
|
|
8382
8420
|
}
|
|
8383
|
-
if ((kind & 2)
|
|
8421
|
+
if ((kind & 2) === 0) {
|
|
8384
8422
|
if (parser.tokenValue === 'constructor') {
|
|
8385
8423
|
if ((parser.token & 1073741824) === 1073741824) {
|
|
8386
8424
|
report(parser, 125);
|
|
8387
8425
|
}
|
|
8388
|
-
else if ((kind & 32)
|
|
8426
|
+
else if ((kind & 32) === 0 && parser.token === 67174411) {
|
|
8389
8427
|
if (kind & (768 | 16 | 128 | 8)) {
|
|
8390
8428
|
report(parser, 50, 'accessor');
|
|
8391
8429
|
}
|
|
8392
|
-
else if ((context & 524288)
|
|
8430
|
+
else if ((context & 524288) === 0) {
|
|
8393
8431
|
if (parser.flags & 32)
|
|
8394
8432
|
report(parser, 51);
|
|
8395
8433
|
else
|
|
@@ -8398,7 +8436,7 @@ var meriyah = (function (exports) {
|
|
|
8398
8436
|
}
|
|
8399
8437
|
kind |= 64;
|
|
8400
8438
|
}
|
|
8401
|
-
else if ((kind & 4096)
|
|
8439
|
+
else if ((kind & 4096) === 0 &&
|
|
8402
8440
|
kind & (32 | 768 | 8 | 16) &&
|
|
8403
8441
|
parser.tokenValue === 'prototype') {
|
|
8404
8442
|
report(parser, 49);
|
|
@@ -8411,7 +8449,7 @@ var meriyah = (function (exports) {
|
|
|
8411
8449
|
return finishNode(parser, context, start, line, column, context & 1
|
|
8412
8450
|
? {
|
|
8413
8451
|
type: 'MethodDefinition',
|
|
8414
|
-
kind: (kind & 32)
|
|
8452
|
+
kind: (kind & 32) === 0 && kind & 64
|
|
8415
8453
|
? 'constructor'
|
|
8416
8454
|
: kind & 256
|
|
8417
8455
|
? 'get'
|
|
@@ -8426,7 +8464,7 @@ var meriyah = (function (exports) {
|
|
|
8426
8464
|
}
|
|
8427
8465
|
: {
|
|
8428
8466
|
type: 'MethodDefinition',
|
|
8429
|
-
kind: (kind & 32)
|
|
8467
|
+
kind: (kind & 32) === 0 && kind & 64
|
|
8430
8468
|
? 'constructor'
|
|
8431
8469
|
: kind & 256
|
|
8432
8470
|
? 'get'
|
|
@@ -8715,7 +8753,7 @@ var meriyah = (function (exports) {
|
|
|
8715
8753
|
});
|
|
8716
8754
|
}
|
|
8717
8755
|
function parseJSXExpressionContainer(parser, context, inJSXChild, isAttr, start, line, column) {
|
|
8718
|
-
nextToken(parser, context);
|
|
8756
|
+
nextToken(parser, context | 32768);
|
|
8719
8757
|
const { tokenPos, linePos, colPos } = parser;
|
|
8720
8758
|
if (parser.token === 14)
|
|
8721
8759
|
return parseJSXSpreadChild(parser, context, tokenPos, linePos, colPos);
|
|
@@ -8769,7 +8807,7 @@ var meriyah = (function (exports) {
|
|
|
8769
8807
|
__proto__: null
|
|
8770
8808
|
});
|
|
8771
8809
|
|
|
8772
|
-
var version$1 = "4.
|
|
8810
|
+
var version$1 = "4.3.1";
|
|
8773
8811
|
|
|
8774
8812
|
const version = version$1;
|
|
8775
8813
|
function parseScript(source, options) {
|
|
@@ -8792,4 +8830,4 @@ var meriyah = (function (exports) {
|
|
|
8792
8830
|
|
|
8793
8831
|
return exports;
|
|
8794
8832
|
|
|
8795
|
-
}({})
|
|
8833
|
+
})({});
|