meriyah 6.1.2 → 6.1.3

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/dist/meriyah.mjs CHANGED
@@ -984,6 +984,10 @@ function scanString(parser, context, quote) {
984
984
  }
985
985
  marker = parser.index + 1;
986
986
  }
987
+ else if (char === 8232 || char === 8233) {
988
+ parser.column = -1;
989
+ parser.line++;
990
+ }
987
991
  if (parser.index >= parser.end)
988
992
  report(parser, 16);
989
993
  char = advanceChar(parser);
@@ -5081,7 +5085,7 @@ function parseExpressionOrLabelledStatement(parser, context, scope, privateScope
5081
5085
  }
5082
5086
  return parseExpressionStatement(parser, context, expr, tokenStart);
5083
5087
  }
5084
- function parseBlock(parser, context, scope, privateScope, labels, start, type = 'BlockStatement') {
5088
+ function parseBlock(parser, context, scope, privateScope, labels, start = parser.tokenStart, type = 'BlockStatement') {
5085
5089
  const body = [];
5086
5090
  consume(parser, context | 8192, 2162700);
5087
5091
  while (parser.getToken() !== 1074790415) {
@@ -5366,7 +5370,7 @@ function parseTryStatement(parser, context, scope, privateScope, labels) {
5366
5370
  const start = parser.tokenStart;
5367
5371
  nextToken(parser, context | 8192);
5368
5372
  const firstScope = scope ? addChildScope(scope, 32) : void 0;
5369
- const block = parseBlock(parser, context, firstScope, privateScope, { $: labels }, parser.tokenStart);
5373
+ const block = parseBlock(parser, context, firstScope, privateScope, { $: labels });
5370
5374
  const { tokenStart } = parser;
5371
5375
  const handler = consumeOpt(parser, context | 8192, 20557)
5372
5376
  ? parseCatchBlock(parser, context, scope, privateScope, labels, tokenStart)
@@ -5375,7 +5379,7 @@ function parseTryStatement(parser, context, scope, privateScope, labels) {
5375
5379
  if (parser.getToken() === 20566) {
5376
5380
  nextToken(parser, context | 8192);
5377
5381
  const finalizerScope = firstScope ? addChildScope(scope, 4) : void 0;
5378
- const block = parseBlock(parser, context, finalizerScope, privateScope, { $: labels }, parser.tokenStart);
5382
+ const block = parseBlock(parser, context, finalizerScope, privateScope, { $: labels });
5379
5383
  finalizer = block;
5380
5384
  }
5381
5385
  if (!handler && !finalizer) {
@@ -5407,7 +5411,7 @@ function parseCatchBlock(parser, context, scope, privateScope, labels, start) {
5407
5411
  }
5408
5412
  if (scope)
5409
5413
  additionalScope = addChildScope(scope, 64);
5410
- const body = parseBlock(parser, context, additionalScope, privateScope, { $: labels }, parser.tokenStart);
5414
+ const body = parseBlock(parser, context, additionalScope, privateScope, { $: labels });
5411
5415
  return parser.finishNode({
5412
5416
  type: 'CatchClause',
5413
5417
  param,
@@ -5663,7 +5667,7 @@ function parseForStatement(parser, context, scope, privateScope, labels) {
5663
5667
  init = parseAssignmentExpression(parser, context | 33554432, privateScope, 0, 0, tokenStart, init);
5664
5668
  }
5665
5669
  if (parser.getToken() === 18)
5666
- init = parseSequenceExpression(parser, context, privateScope, 0, parser.tokenStart, init);
5670
+ init = parseSequenceExpression(parser, context, privateScope, 0, tokenStart, init);
5667
5671
  consume(parser, context | 8192, 1074790417);
5668
5672
  if (parser.getToken() !== 1074790417)
5669
5673
  test = parseExpressions(parser, context, privateScope, 0, 1, parser.tokenStart);
@@ -6417,7 +6421,7 @@ function parseMemberOrUpdateExpression(parser, context, privateScope, expr, inGr
6417
6421
  tag: expr,
6418
6422
  quasi: parser.getToken() === 67174408
6419
6423
  ? parseTemplate(parser, context | 16384, privateScope)
6420
- : parseTemplateLiteral(parser, context, parser.tokenStart),
6424
+ : parseTemplateLiteral(parser, context),
6421
6425
  }, start);
6422
6426
  }
6423
6427
  expr = parseMemberOrUpdateExpression(parser, context, privateScope, expr, 0, 1, start);
@@ -6586,7 +6590,7 @@ function parsePrimaryExpression(parser, context, privateScope, kind, inNew, canA
6586
6590
  case 86109:
6587
6591
  return parseSuperExpression(parser, context);
6588
6592
  case 67174409:
6589
- return parseTemplateLiteral(parser, context, start);
6593
+ return parseTemplateLiteral(parser, context);
6590
6594
  case 67174408:
6591
6595
  return parseTemplate(parser, context, privateScope);
6592
6596
  case 86107:
@@ -6756,7 +6760,7 @@ function parseBigIntLiteral(parser, context) {
6756
6760
  }
6757
6761
  return parser.finishNode(node, tokenStart);
6758
6762
  }
6759
- function parseTemplateLiteral(parser, context, start) {
6763
+ function parseTemplateLiteral(parser, context) {
6760
6764
  parser.assignable = 2;
6761
6765
  const { tokenValue, tokenRaw, tokenStart } = parser;
6762
6766
  consume(parser, context, 67174409);
@@ -6765,7 +6769,7 @@ function parseTemplateLiteral(parser, context, start) {
6765
6769
  type: 'TemplateLiteral',
6766
6770
  expressions: [],
6767
6771
  quasis,
6768
- }, start);
6772
+ }, tokenStart);
6769
6773
  }
6770
6774
  function parseTemplate(parser, context, privateScope) {
6771
6775
  context = (context | 33554432) ^ 33554432;
@@ -7854,7 +7858,7 @@ function parseObjectLiteralOrPattern(parser, context, scope, privateScope, skipI
7854
7858
  destructible |= 16;
7855
7859
  key = parseLiteral(parser, context);
7856
7860
  state |= 1;
7857
- value = parseMethodDefinition(parser, context, privateScope, state, inGroup, tokenStart);
7861
+ value = parseMethodDefinition(parser, context, privateScope, state, inGroup, parser.tokenStart);
7858
7862
  }
7859
7863
  else if (parser.getToken() === 69271571) {
7860
7864
  destructible |= 16;
@@ -8345,7 +8349,7 @@ function parseMemberExpressionNoCall(parser, context, privateScope, expr, inGrou
8345
8349
  tag: expr,
8346
8350
  quasi: parser.getToken() === 67174408
8347
8351
  ? parseTemplate(parser, context | 16384, privateScope)
8348
- : parseTemplateLiteral(parser, context | 16384, parser.tokenStart),
8352
+ : parseTemplateLiteral(parser, context | 16384),
8349
8353
  }, start), 0, start);
8350
8354
  }
8351
8355
  }
@@ -8644,12 +8648,13 @@ function parseDecorators(parser, context, privateScope) {
8644
8648
  const list = [];
8645
8649
  if (context & 1) {
8646
8650
  while (parser.getToken() === 132) {
8647
- list.push(parseDecoratorList(parser, context, privateScope, parser.tokenStart));
8651
+ list.push(parseDecoratorList(parser, context, privateScope));
8648
8652
  }
8649
8653
  }
8650
8654
  return list;
8651
8655
  }
8652
- function parseDecoratorList(parser, context, privateScope, start) {
8656
+ function parseDecoratorList(parser, context, privateScope) {
8657
+ const start = parser.tokenStart;
8653
8658
  nextToken(parser, context | 8192);
8654
8659
  let expression = parsePrimaryExpression(parser, context, privateScope, 2, 0, 1, 0, 1, start);
8655
8660
  expression = parseMemberOrUpdateExpression(parser, context, privateScope, expression, 0, 0, parser.tokenStart);
@@ -8697,7 +8702,6 @@ function parseClassBody(parser, context, inheritedContext, scope, parentScope, k
8697
8702
  function parseClassElementList(parser, context, scope, privateScope, inheritedContext, type, decorators, isStatic, inGroup, start) {
8698
8703
  let kind = isStatic ? 32 : 0;
8699
8704
  let key = null;
8700
- const { tokenStart } = parser;
8701
8705
  const token = parser.getToken();
8702
8706
  if (token & (143360 | 36864) || token === -2147483528) {
8703
8707
  key = parseIdentifier(parser, context);
@@ -8713,7 +8717,7 @@ function parseClassElementList(parser, context, scope, privateScope, inheritedCo
8713
8717
  case 209005:
8714
8718
  if (parser.getToken() !== 67174411 && (parser.flags & 1) === 0) {
8715
8719
  if ((parser.getToken() & 1073741824) === 1073741824) {
8716
- return parsePropertyDefinition(parser, context, privateScope, key, kind, decorators, tokenStart);
8720
+ return parsePropertyDefinition(parser, context, privateScope, key, kind, decorators, start);
8717
8721
  }
8718
8722
  kind |= 16 | (optionalBit(parser, context, 8391476) ? 8 : 0);
8719
8723
  }
@@ -8721,7 +8725,7 @@ function parseClassElementList(parser, context, scope, privateScope, inheritedCo
8721
8725
  case 209008:
8722
8726
  if (parser.getToken() !== 67174411) {
8723
8727
  if ((parser.getToken() & 1073741824) === 1073741824) {
8724
- return parsePropertyDefinition(parser, context, privateScope, key, kind, decorators, tokenStart);
8728
+ return parsePropertyDefinition(parser, context, privateScope, key, kind, decorators, start);
8725
8729
  }
8726
8730
  kind |= 256;
8727
8731
  }
@@ -8729,7 +8733,7 @@ function parseClassElementList(parser, context, scope, privateScope, inheritedCo
8729
8733
  case 209009:
8730
8734
  if (parser.getToken() !== 67174411) {
8731
8735
  if ((parser.getToken() & 1073741824) === 1073741824) {
8732
- return parsePropertyDefinition(parser, context, privateScope, key, kind, decorators, tokenStart);
8736
+ return parsePropertyDefinition(parser, context, privateScope, key, kind, decorators, start);
8733
8737
  }
8734
8738
  kind |= 512;
8735
8739
  }
@@ -8737,7 +8741,7 @@ function parseClassElementList(parser, context, scope, privateScope, inheritedCo
8737
8741
  case 12402:
8738
8742
  if (parser.getToken() !== 67174411 && (parser.flags & 1) === 0) {
8739
8743
  if ((parser.getToken() & 1073741824) === 1073741824) {
8740
- return parsePropertyDefinition(parser, context, privateScope, key, kind, decorators, tokenStart);
8744
+ return parsePropertyDefinition(parser, context, privateScope, key, kind, decorators, start);
8741
8745
  }
8742
8746
  if (context & 1)
8743
8747
  kind |= 1024;
@@ -9245,7 +9249,7 @@ function parseJSXIdentifier(parser, context) {
9245
9249
  }, start);
9246
9250
  }
9247
9251
 
9248
- var version$1 = "6.1.2";
9252
+ var version$1 = "6.1.3";
9249
9253
 
9250
9254
  const version = version$1;
9251
9255
  function parseScript(source, options) {
@@ -990,6 +990,10 @@
990
990
  }
991
991
  marker = parser.index + 1;
992
992
  }
993
+ else if (char === 8232 || char === 8233) {
994
+ parser.column = -1;
995
+ parser.line++;
996
+ }
993
997
  if (parser.index >= parser.end)
994
998
  report(parser, 16);
995
999
  char = advanceChar(parser);
@@ -5087,7 +5091,7 @@
5087
5091
  }
5088
5092
  return parseExpressionStatement(parser, context, expr, tokenStart);
5089
5093
  }
5090
- function parseBlock(parser, context, scope, privateScope, labels, start, type = 'BlockStatement') {
5094
+ function parseBlock(parser, context, scope, privateScope, labels, start = parser.tokenStart, type = 'BlockStatement') {
5091
5095
  const body = [];
5092
5096
  consume(parser, context | 8192, 2162700);
5093
5097
  while (parser.getToken() !== 1074790415) {
@@ -5372,7 +5376,7 @@
5372
5376
  const start = parser.tokenStart;
5373
5377
  nextToken(parser, context | 8192);
5374
5378
  const firstScope = scope ? addChildScope(scope, 32) : void 0;
5375
- const block = parseBlock(parser, context, firstScope, privateScope, { $: labels }, parser.tokenStart);
5379
+ const block = parseBlock(parser, context, firstScope, privateScope, { $: labels });
5376
5380
  const { tokenStart } = parser;
5377
5381
  const handler = consumeOpt(parser, context | 8192, 20557)
5378
5382
  ? parseCatchBlock(parser, context, scope, privateScope, labels, tokenStart)
@@ -5381,7 +5385,7 @@
5381
5385
  if (parser.getToken() === 20566) {
5382
5386
  nextToken(parser, context | 8192);
5383
5387
  const finalizerScope = firstScope ? addChildScope(scope, 4) : void 0;
5384
- const block = parseBlock(parser, context, finalizerScope, privateScope, { $: labels }, parser.tokenStart);
5388
+ const block = parseBlock(parser, context, finalizerScope, privateScope, { $: labels });
5385
5389
  finalizer = block;
5386
5390
  }
5387
5391
  if (!handler && !finalizer) {
@@ -5413,7 +5417,7 @@
5413
5417
  }
5414
5418
  if (scope)
5415
5419
  additionalScope = addChildScope(scope, 64);
5416
- const body = parseBlock(parser, context, additionalScope, privateScope, { $: labels }, parser.tokenStart);
5420
+ const body = parseBlock(parser, context, additionalScope, privateScope, { $: labels });
5417
5421
  return parser.finishNode({
5418
5422
  type: 'CatchClause',
5419
5423
  param,
@@ -5669,7 +5673,7 @@
5669
5673
  init = parseAssignmentExpression(parser, context | 33554432, privateScope, 0, 0, tokenStart, init);
5670
5674
  }
5671
5675
  if (parser.getToken() === 18)
5672
- init = parseSequenceExpression(parser, context, privateScope, 0, parser.tokenStart, init);
5676
+ init = parseSequenceExpression(parser, context, privateScope, 0, tokenStart, init);
5673
5677
  consume(parser, context | 8192, 1074790417);
5674
5678
  if (parser.getToken() !== 1074790417)
5675
5679
  test = parseExpressions(parser, context, privateScope, 0, 1, parser.tokenStart);
@@ -6423,7 +6427,7 @@
6423
6427
  tag: expr,
6424
6428
  quasi: parser.getToken() === 67174408
6425
6429
  ? parseTemplate(parser, context | 16384, privateScope)
6426
- : parseTemplateLiteral(parser, context, parser.tokenStart),
6430
+ : parseTemplateLiteral(parser, context),
6427
6431
  }, start);
6428
6432
  }
6429
6433
  expr = parseMemberOrUpdateExpression(parser, context, privateScope, expr, 0, 1, start);
@@ -6592,7 +6596,7 @@
6592
6596
  case 86109:
6593
6597
  return parseSuperExpression(parser, context);
6594
6598
  case 67174409:
6595
- return parseTemplateLiteral(parser, context, start);
6599
+ return parseTemplateLiteral(parser, context);
6596
6600
  case 67174408:
6597
6601
  return parseTemplate(parser, context, privateScope);
6598
6602
  case 86107:
@@ -6762,7 +6766,7 @@
6762
6766
  }
6763
6767
  return parser.finishNode(node, tokenStart);
6764
6768
  }
6765
- function parseTemplateLiteral(parser, context, start) {
6769
+ function parseTemplateLiteral(parser, context) {
6766
6770
  parser.assignable = 2;
6767
6771
  const { tokenValue, tokenRaw, tokenStart } = parser;
6768
6772
  consume(parser, context, 67174409);
@@ -6771,7 +6775,7 @@
6771
6775
  type: 'TemplateLiteral',
6772
6776
  expressions: [],
6773
6777
  quasis,
6774
- }, start);
6778
+ }, tokenStart);
6775
6779
  }
6776
6780
  function parseTemplate(parser, context, privateScope) {
6777
6781
  context = (context | 33554432) ^ 33554432;
@@ -7860,7 +7864,7 @@
7860
7864
  destructible |= 16;
7861
7865
  key = parseLiteral(parser, context);
7862
7866
  state |= 1;
7863
- value = parseMethodDefinition(parser, context, privateScope, state, inGroup, tokenStart);
7867
+ value = parseMethodDefinition(parser, context, privateScope, state, inGroup, parser.tokenStart);
7864
7868
  }
7865
7869
  else if (parser.getToken() === 69271571) {
7866
7870
  destructible |= 16;
@@ -8351,7 +8355,7 @@
8351
8355
  tag: expr,
8352
8356
  quasi: parser.getToken() === 67174408
8353
8357
  ? parseTemplate(parser, context | 16384, privateScope)
8354
- : parseTemplateLiteral(parser, context | 16384, parser.tokenStart),
8358
+ : parseTemplateLiteral(parser, context | 16384),
8355
8359
  }, start), 0, start);
8356
8360
  }
8357
8361
  }
@@ -8650,12 +8654,13 @@
8650
8654
  const list = [];
8651
8655
  if (context & 1) {
8652
8656
  while (parser.getToken() === 132) {
8653
- list.push(parseDecoratorList(parser, context, privateScope, parser.tokenStart));
8657
+ list.push(parseDecoratorList(parser, context, privateScope));
8654
8658
  }
8655
8659
  }
8656
8660
  return list;
8657
8661
  }
8658
- function parseDecoratorList(parser, context, privateScope, start) {
8662
+ function parseDecoratorList(parser, context, privateScope) {
8663
+ const start = parser.tokenStart;
8659
8664
  nextToken(parser, context | 8192);
8660
8665
  let expression = parsePrimaryExpression(parser, context, privateScope, 2, 0, 1, 0, 1, start);
8661
8666
  expression = parseMemberOrUpdateExpression(parser, context, privateScope, expression, 0, 0, parser.tokenStart);
@@ -8703,7 +8708,6 @@
8703
8708
  function parseClassElementList(parser, context, scope, privateScope, inheritedContext, type, decorators, isStatic, inGroup, start) {
8704
8709
  let kind = isStatic ? 32 : 0;
8705
8710
  let key = null;
8706
- const { tokenStart } = parser;
8707
8711
  const token = parser.getToken();
8708
8712
  if (token & (143360 | 36864) || token === -2147483528) {
8709
8713
  key = parseIdentifier(parser, context);
@@ -8719,7 +8723,7 @@
8719
8723
  case 209005:
8720
8724
  if (parser.getToken() !== 67174411 && (parser.flags & 1) === 0) {
8721
8725
  if ((parser.getToken() & 1073741824) === 1073741824) {
8722
- return parsePropertyDefinition(parser, context, privateScope, key, kind, decorators, tokenStart);
8726
+ return parsePropertyDefinition(parser, context, privateScope, key, kind, decorators, start);
8723
8727
  }
8724
8728
  kind |= 16 | (optionalBit(parser, context, 8391476) ? 8 : 0);
8725
8729
  }
@@ -8727,7 +8731,7 @@
8727
8731
  case 209008:
8728
8732
  if (parser.getToken() !== 67174411) {
8729
8733
  if ((parser.getToken() & 1073741824) === 1073741824) {
8730
- return parsePropertyDefinition(parser, context, privateScope, key, kind, decorators, tokenStart);
8734
+ return parsePropertyDefinition(parser, context, privateScope, key, kind, decorators, start);
8731
8735
  }
8732
8736
  kind |= 256;
8733
8737
  }
@@ -8735,7 +8739,7 @@
8735
8739
  case 209009:
8736
8740
  if (parser.getToken() !== 67174411) {
8737
8741
  if ((parser.getToken() & 1073741824) === 1073741824) {
8738
- return parsePropertyDefinition(parser, context, privateScope, key, kind, decorators, tokenStart);
8742
+ return parsePropertyDefinition(parser, context, privateScope, key, kind, decorators, start);
8739
8743
  }
8740
8744
  kind |= 512;
8741
8745
  }
@@ -8743,7 +8747,7 @@
8743
8747
  case 12402:
8744
8748
  if (parser.getToken() !== 67174411 && (parser.flags & 1) === 0) {
8745
8749
  if ((parser.getToken() & 1073741824) === 1073741824) {
8746
- return parsePropertyDefinition(parser, context, privateScope, key, kind, decorators, tokenStart);
8750
+ return parsePropertyDefinition(parser, context, privateScope, key, kind, decorators, start);
8747
8751
  }
8748
8752
  if (context & 1)
8749
8753
  kind |= 1024;
@@ -9251,7 +9255,7 @@
9251
9255
  }, start);
9252
9256
  }
9253
9257
 
9254
- var version$1 = "6.1.2";
9258
+ var version$1 = "6.1.3";
9255
9259
 
9256
9260
  const version = version$1;
9257
9261
  function parseScript(source, options) {