oxc-parser 0.99.0 → 0.102.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -3,7 +3,7 @@
3
3
 
4
4
  let uint8, uint32, float64, sourceText, sourceIsAscii, sourceByteLen;
5
5
 
6
- const textDecoder = new TextDecoder('utf-8', { ignoreBOM: true }),
6
+ const textDecoder = new TextDecoder("utf-8", { ignoreBOM: true }),
7
7
  decodeStr = textDecoder.decode.bind(textDecoder),
8
8
  { fromCodePoint } = String;
9
9
 
@@ -31,7 +31,7 @@ export function resetBuffer() {
31
31
  function deserializeProgram(pos) {
32
32
  let end = deserializeU32(pos + 4),
33
33
  program = {
34
- type: 'Program',
34
+ type: "Program",
35
35
  body: null,
36
36
  sourceType: deserializeModuleKind(pos + 125),
37
37
  hashbang: null,
@@ -47,9 +47,13 @@ function deserializeProgram(pos) {
47
47
  if (body.length > 0) {
48
48
  let first = body[0];
49
49
  start = first.start;
50
- if (first.type === 'ExportNamedDeclaration' || first.type === 'ExportDefaultDeclaration') {
50
+ if (first.type === "ExportNamedDeclaration" || first.type === "ExportDefaultDeclaration") {
51
51
  let { declaration } = first;
52
- if (declaration !== null && declaration.type === 'ClassDeclaration' && declaration.decorators.length > 0) {
52
+ if (
53
+ declaration !== null &&
54
+ declaration.type === "ClassDeclaration" &&
55
+ declaration.decorators.length > 0
56
+ ) {
53
57
  let decoratorStart = declaration.decorators[0].start;
54
58
  decoratorStart < start && (start = decoratorStart);
55
59
  }
@@ -157,7 +161,7 @@ function deserializeIdentifierName(pos) {
157
161
  let start = deserializeU32(pos),
158
162
  end = deserializeU32(pos + 4),
159
163
  node = {
160
- type: 'Identifier',
164
+ type: "Identifier",
161
165
  decorators: null,
162
166
  name: deserializeStr(pos + 8),
163
167
  optional: null,
@@ -175,7 +179,7 @@ function deserializeIdentifierReference(pos) {
175
179
  let start = deserializeU32(pos),
176
180
  end = deserializeU32(pos + 4),
177
181
  node = {
178
- type: 'Identifier',
182
+ type: "Identifier",
179
183
  decorators: null,
180
184
  name: deserializeStr(pos + 8),
181
185
  optional: null,
@@ -193,7 +197,7 @@ function deserializeBindingIdentifier(pos) {
193
197
  let start = deserializeU32(pos),
194
198
  end = deserializeU32(pos + 4),
195
199
  node = {
196
- type: 'Identifier',
200
+ type: "Identifier",
197
201
  decorators: null,
198
202
  name: deserializeStr(pos + 8),
199
203
  optional: null,
@@ -211,7 +215,7 @@ function deserializeLabelIdentifier(pos) {
211
215
  let start = deserializeU32(pos),
212
216
  end = deserializeU32(pos + 4),
213
217
  node = {
214
- type: 'Identifier',
218
+ type: "Identifier",
215
219
  decorators: null,
216
220
  name: deserializeStr(pos + 8),
217
221
  optional: null,
@@ -229,7 +233,7 @@ function deserializeThisExpression(pos) {
229
233
  let start = deserializeU32(pos),
230
234
  end = deserializeU32(pos + 4);
231
235
  return {
232
- type: 'ThisExpression',
236
+ type: "ThisExpression",
233
237
  start,
234
238
  end,
235
239
  range: [start, end],
@@ -240,7 +244,7 @@ function deserializeArrayExpression(pos) {
240
244
  let start = deserializeU32(pos),
241
245
  end = deserializeU32(pos + 4),
242
246
  node = {
243
- type: 'ArrayExpression',
247
+ type: "ArrayExpression",
244
248
  elements: null,
245
249
  start,
246
250
  end,
@@ -355,7 +359,7 @@ function deserializeObjectExpression(pos) {
355
359
  let start = deserializeU32(pos),
356
360
  end = deserializeU32(pos + 4),
357
361
  node = {
358
- type: 'ObjectExpression',
362
+ type: "ObjectExpression",
359
363
  properties: null,
360
364
  start,
361
365
  end,
@@ -380,7 +384,7 @@ function deserializeObjectProperty(pos) {
380
384
  let start = deserializeU32(pos),
381
385
  end = deserializeU32(pos + 4),
382
386
  node = {
383
- type: 'Property',
387
+ type: "Property",
384
388
  kind: deserializePropertyKind(pos + 40),
385
389
  key: null,
386
390
  value: null,
@@ -498,11 +502,11 @@ function deserializePropertyKey(pos) {
498
502
  function deserializePropertyKind(pos) {
499
503
  switch (uint8[pos]) {
500
504
  case 0:
501
- return 'init';
505
+ return "init";
502
506
  case 1:
503
- return 'get';
507
+ return "get";
504
508
  case 2:
505
- return 'set';
509
+ return "set";
506
510
  default:
507
511
  throw Error(`Unexpected discriminant ${uint8[pos]} for PropertyKind`);
508
512
  }
@@ -512,7 +516,7 @@ function deserializeTemplateLiteral(pos) {
512
516
  let start = deserializeU32(pos),
513
517
  end = deserializeU32(pos + 4),
514
518
  node = {
515
- type: 'TemplateLiteral',
519
+ type: "TemplateLiteral",
516
520
  quasis: null,
517
521
  expressions: null,
518
522
  start,
@@ -528,7 +532,7 @@ function deserializeTaggedTemplateExpression(pos) {
528
532
  let start = deserializeU32(pos),
529
533
  end = deserializeU32(pos + 4),
530
534
  node = {
531
- type: 'TaggedTemplateExpression',
535
+ type: "TaggedTemplateExpression",
532
536
  tag: null,
533
537
  typeArguments: null,
534
538
  quasi: null,
@@ -549,9 +553,11 @@ function deserializeTemplateElement(pos) {
549
553
  value = deserializeTemplateElementValue(pos + 8);
550
554
  value.cooked !== null &&
551
555
  deserializeBool(pos + 41) &&
552
- (value.cooked = value.cooked.replace(/\uFFFD(.{4})/g, (_, hex) => String.fromCodePoint(parseInt(hex, 16))));
556
+ (value.cooked = value.cooked.replace(/\uFFFD(.{4})/g, (_, hex) =>
557
+ String.fromCodePoint(parseInt(hex, 16)),
558
+ ));
553
559
  return {
554
- type: 'TemplateElement',
560
+ type: "TemplateElement",
555
561
  value,
556
562
  tail,
557
563
  start,
@@ -571,7 +577,7 @@ function deserializeComputedMemberExpression(pos) {
571
577
  let start = deserializeU32(pos),
572
578
  end = deserializeU32(pos + 4),
573
579
  node = {
574
- type: 'MemberExpression',
580
+ type: "MemberExpression",
575
581
  object: null,
576
582
  property: null,
577
583
  optional: deserializeBool(pos + 40),
@@ -590,7 +596,7 @@ function deserializeStaticMemberExpression(pos) {
590
596
  let start = deserializeU32(pos),
591
597
  end = deserializeU32(pos + 4),
592
598
  node = {
593
- type: 'MemberExpression',
599
+ type: "MemberExpression",
594
600
  object: null,
595
601
  property: null,
596
602
  optional: deserializeBool(pos + 48),
@@ -609,7 +615,7 @@ function deserializePrivateFieldExpression(pos) {
609
615
  let start = deserializeU32(pos),
610
616
  end = deserializeU32(pos + 4),
611
617
  node = {
612
- type: 'MemberExpression',
618
+ type: "MemberExpression",
613
619
  object: null,
614
620
  property: null,
615
621
  optional: deserializeBool(pos + 48),
@@ -628,7 +634,7 @@ function deserializeCallExpression(pos) {
628
634
  let start = deserializeU32(pos),
629
635
  end = deserializeU32(pos + 4),
630
636
  node = {
631
- type: 'CallExpression',
637
+ type: "CallExpression",
632
638
  callee: null,
633
639
  typeArguments: null,
634
640
  arguments: null,
@@ -647,7 +653,7 @@ function deserializeNewExpression(pos) {
647
653
  let start = deserializeU32(pos),
648
654
  end = deserializeU32(pos + 4),
649
655
  node = {
650
- type: 'NewExpression',
656
+ type: "NewExpression",
651
657
  callee: null,
652
658
  typeArguments: null,
653
659
  arguments: null,
@@ -665,7 +671,7 @@ function deserializeMetaProperty(pos) {
665
671
  let start = deserializeU32(pos),
666
672
  end = deserializeU32(pos + 4),
667
673
  node = {
668
- type: 'MetaProperty',
674
+ type: "MetaProperty",
669
675
  meta: null,
670
676
  property: null,
671
677
  start,
@@ -681,7 +687,7 @@ function deserializeSpreadElement(pos) {
681
687
  let start = deserializeU32(pos),
682
688
  end = deserializeU32(pos + 4),
683
689
  node = {
684
- type: 'SpreadElement',
690
+ type: "SpreadElement",
685
691
  argument: null,
686
692
  start,
687
693
  end,
@@ -790,7 +796,7 @@ function deserializeUpdateExpression(pos) {
790
796
  let start = deserializeU32(pos),
791
797
  end = deserializeU32(pos + 4),
792
798
  node = {
793
- type: 'UpdateExpression',
799
+ type: "UpdateExpression",
794
800
  operator: deserializeUpdateOperator(pos + 24),
795
801
  prefix: deserializeBool(pos + 25),
796
802
  argument: null,
@@ -806,7 +812,7 @@ function deserializeUnaryExpression(pos) {
806
812
  let start = deserializeU32(pos),
807
813
  end = deserializeU32(pos + 4),
808
814
  node = {
809
- type: 'UnaryExpression',
815
+ type: "UnaryExpression",
810
816
  operator: deserializeUnaryOperator(pos + 24),
811
817
  argument: null,
812
818
  prefix: null,
@@ -823,7 +829,7 @@ function deserializeBinaryExpression(pos) {
823
829
  let start = deserializeU32(pos),
824
830
  end = deserializeU32(pos + 4),
825
831
  node = {
826
- type: 'BinaryExpression',
832
+ type: "BinaryExpression",
827
833
  left: null,
828
834
  operator: deserializeBinaryOperator(pos + 40),
829
835
  right: null,
@@ -840,7 +846,7 @@ function deserializePrivateInExpression(pos) {
840
846
  let start = deserializeU32(pos),
841
847
  end = deserializeU32(pos + 4),
842
848
  node = {
843
- type: 'BinaryExpression',
849
+ type: "BinaryExpression",
844
850
  left: null,
845
851
  operator: null,
846
852
  right: null,
@@ -849,7 +855,7 @@ function deserializePrivateInExpression(pos) {
849
855
  range: [start, end],
850
856
  };
851
857
  node.left = deserializePrivateIdentifier(pos + 8);
852
- node.operator = 'in';
858
+ node.operator = "in";
853
859
  node.right = deserializeExpression(pos + 32);
854
860
  return node;
855
861
  }
@@ -858,7 +864,7 @@ function deserializeLogicalExpression(pos) {
858
864
  let start = deserializeU32(pos),
859
865
  end = deserializeU32(pos + 4),
860
866
  node = {
861
- type: 'LogicalExpression',
867
+ type: "LogicalExpression",
862
868
  left: null,
863
869
  operator: deserializeLogicalOperator(pos + 40),
864
870
  right: null,
@@ -875,7 +881,7 @@ function deserializeConditionalExpression(pos) {
875
881
  let start = deserializeU32(pos),
876
882
  end = deserializeU32(pos + 4),
877
883
  node = {
878
- type: 'ConditionalExpression',
884
+ type: "ConditionalExpression",
879
885
  test: null,
880
886
  consequent: null,
881
887
  alternate: null,
@@ -893,7 +899,7 @@ function deserializeAssignmentExpression(pos) {
893
899
  let start = deserializeU32(pos),
894
900
  end = deserializeU32(pos + 4),
895
901
  node = {
896
- type: 'AssignmentExpression',
902
+ type: "AssignmentExpression",
897
903
  operator: deserializeAssignmentOperator(pos + 40),
898
904
  left: null,
899
905
  right: null,
@@ -960,7 +966,7 @@ function deserializeArrayAssignmentTarget(pos) {
960
966
  let start = deserializeU32(pos),
961
967
  end = deserializeU32(pos + 4),
962
968
  node = {
963
- type: 'ArrayPattern',
969
+ type: "ArrayPattern",
964
970
  decorators: null,
965
971
  elements: null,
966
972
  optional: null,
@@ -982,7 +988,7 @@ function deserializeObjectAssignmentTarget(pos) {
982
988
  let start = deserializeU32(pos),
983
989
  end = deserializeU32(pos + 4),
984
990
  node = {
985
- type: 'ObjectPattern',
991
+ type: "ObjectPattern",
986
992
  decorators: null,
987
993
  properties: null,
988
994
  optional: null,
@@ -1004,7 +1010,7 @@ function deserializeAssignmentTargetRest(pos) {
1004
1010
  let start = deserializeU32(pos),
1005
1011
  end = deserializeU32(pos + 4),
1006
1012
  node = {
1007
- type: 'RestElement',
1013
+ type: "RestElement",
1008
1014
  decorators: null,
1009
1015
  argument: null,
1010
1016
  optional: null,
@@ -1053,7 +1059,7 @@ function deserializeAssignmentTargetWithDefault(pos) {
1053
1059
  let start = deserializeU32(pos),
1054
1060
  end = deserializeU32(pos + 4),
1055
1061
  node = {
1056
- type: 'AssignmentPattern',
1062
+ type: "AssignmentPattern",
1057
1063
  decorators: null,
1058
1064
  left: null,
1059
1065
  right: null,
@@ -1085,7 +1091,7 @@ function deserializeAssignmentTargetPropertyIdentifier(pos) {
1085
1091
  let start = deserializeU32(pos),
1086
1092
  end = deserializeU32(pos + 4),
1087
1093
  node = {
1088
- type: 'Property',
1094
+ type: "Property",
1089
1095
  kind: null,
1090
1096
  key: null,
1091
1097
  value: null,
@@ -1101,7 +1107,7 @@ function deserializeAssignmentTargetPropertyIdentifier(pos) {
1101
1107
  keyStart,
1102
1108
  keyEnd,
1103
1109
  value = {
1104
- type: 'Identifier',
1110
+ type: "Identifier",
1105
1111
  decorators: [],
1106
1112
  name: key.name,
1107
1113
  optional: false,
@@ -1113,7 +1119,7 @@ function deserializeAssignmentTargetPropertyIdentifier(pos) {
1113
1119
  init = deserializeOptionExpression(pos + 40);
1114
1120
  init !== null &&
1115
1121
  (value = {
1116
- type: 'AssignmentPattern',
1122
+ type: "AssignmentPattern",
1117
1123
  decorators: [],
1118
1124
  left: value,
1119
1125
  right: init,
@@ -1123,7 +1129,7 @@ function deserializeAssignmentTargetPropertyIdentifier(pos) {
1123
1129
  end,
1124
1130
  range: [start, end],
1125
1131
  });
1126
- node.kind = 'init';
1132
+ node.kind = "init";
1127
1133
  node.key = key;
1128
1134
  node.value = value;
1129
1135
  node.method = false;
@@ -1137,7 +1143,7 @@ function deserializeAssignmentTargetPropertyProperty(pos) {
1137
1143
  let start = deserializeU32(pos),
1138
1144
  end = deserializeU32(pos + 4),
1139
1145
  node = {
1140
- type: 'Property',
1146
+ type: "Property",
1141
1147
  kind: null,
1142
1148
  key: null,
1143
1149
  value: null,
@@ -1149,7 +1155,7 @@ function deserializeAssignmentTargetPropertyProperty(pos) {
1149
1155
  end,
1150
1156
  range: [start, end],
1151
1157
  };
1152
- node.kind = 'init';
1158
+ node.kind = "init";
1153
1159
  node.key = deserializePropertyKey(pos + 8);
1154
1160
  node.value = deserializeAssignmentTargetMaybeDefault(pos + 24);
1155
1161
  node.method = false;
@@ -1162,7 +1168,7 @@ function deserializeSequenceExpression(pos) {
1162
1168
  let start = deserializeU32(pos),
1163
1169
  end = deserializeU32(pos + 4),
1164
1170
  node = {
1165
- type: 'SequenceExpression',
1171
+ type: "SequenceExpression",
1166
1172
  expressions: null,
1167
1173
  start,
1168
1174
  end,
@@ -1176,7 +1182,7 @@ function deserializeSuper(pos) {
1176
1182
  let start = deserializeU32(pos),
1177
1183
  end = deserializeU32(pos + 4);
1178
1184
  return {
1179
- type: 'Super',
1185
+ type: "Super",
1180
1186
  start,
1181
1187
  end,
1182
1188
  range: [start, end],
@@ -1187,7 +1193,7 @@ function deserializeAwaitExpression(pos) {
1187
1193
  let start = deserializeU32(pos),
1188
1194
  end = deserializeU32(pos + 4),
1189
1195
  node = {
1190
- type: 'AwaitExpression',
1196
+ type: "AwaitExpression",
1191
1197
  argument: null,
1192
1198
  start,
1193
1199
  end,
@@ -1201,7 +1207,7 @@ function deserializeChainExpression(pos) {
1201
1207
  let start = deserializeU32(pos),
1202
1208
  end = deserializeU32(pos + 4),
1203
1209
  node = {
1204
- type: 'ChainExpression',
1210
+ type: "ChainExpression",
1205
1211
  expression: null,
1206
1212
  start,
1207
1213
  end,
@@ -1233,7 +1239,7 @@ function deserializeParenthesizedExpression(pos) {
1233
1239
  {
1234
1240
  let start, end;
1235
1241
  node = {
1236
- type: 'ParenthesizedExpression',
1242
+ type: "ParenthesizedExpression",
1237
1243
  expression: null,
1238
1244
  start: (start = deserializeU32(pos)),
1239
1245
  end: (end = deserializeU32(pos + 4)),
@@ -1321,7 +1327,7 @@ function deserializeDirective(pos) {
1321
1327
  let start = deserializeU32(pos),
1322
1328
  end = deserializeU32(pos + 4),
1323
1329
  node = {
1324
- type: 'ExpressionStatement',
1330
+ type: "ExpressionStatement",
1325
1331
  expression: null,
1326
1332
  directive: deserializeStr(pos + 56),
1327
1333
  start,
@@ -1336,7 +1342,7 @@ function deserializeHashbang(pos) {
1336
1342
  let start = deserializeU32(pos),
1337
1343
  end = deserializeU32(pos + 4);
1338
1344
  return {
1339
- type: 'Hashbang',
1345
+ type: "Hashbang",
1340
1346
  value: deserializeStr(pos + 8),
1341
1347
  start,
1342
1348
  end,
@@ -1348,7 +1354,7 @@ function deserializeBlockStatement(pos) {
1348
1354
  let start = deserializeU32(pos),
1349
1355
  end = deserializeU32(pos + 4),
1350
1356
  node = {
1351
- type: 'BlockStatement',
1357
+ type: "BlockStatement",
1352
1358
  body: null,
1353
1359
  start,
1354
1360
  end,
@@ -1387,7 +1393,7 @@ function deserializeVariableDeclaration(pos) {
1387
1393
  let start = deserializeU32(pos),
1388
1394
  end = deserializeU32(pos + 4),
1389
1395
  node = {
1390
- type: 'VariableDeclaration',
1396
+ type: "VariableDeclaration",
1391
1397
  kind: deserializeVariableDeclarationKind(pos + 32),
1392
1398
  declarations: null,
1393
1399
  declare: deserializeBool(pos + 33),
@@ -1402,15 +1408,15 @@ function deserializeVariableDeclaration(pos) {
1402
1408
  function deserializeVariableDeclarationKind(pos) {
1403
1409
  switch (uint8[pos]) {
1404
1410
  case 0:
1405
- return 'var';
1411
+ return "var";
1406
1412
  case 1:
1407
- return 'let';
1413
+ return "let";
1408
1414
  case 2:
1409
- return 'const';
1415
+ return "const";
1410
1416
  case 3:
1411
- return 'using';
1417
+ return "using";
1412
1418
  case 4:
1413
- return 'await using';
1419
+ return "await using";
1414
1420
  default:
1415
1421
  throw Error(`Unexpected discriminant ${uint8[pos]} for VariableDeclarationKind`);
1416
1422
  }
@@ -1420,7 +1426,7 @@ function deserializeVariableDeclarator(pos) {
1420
1426
  let start = deserializeU32(pos),
1421
1427
  end = deserializeU32(pos + 4),
1422
1428
  node = {
1423
- type: 'VariableDeclarator',
1429
+ type: "VariableDeclarator",
1424
1430
  id: null,
1425
1431
  init: null,
1426
1432
  definite: deserializeBool(pos + 57),
@@ -1437,7 +1443,7 @@ function deserializeEmptyStatement(pos) {
1437
1443
  let start = deserializeU32(pos),
1438
1444
  end = deserializeU32(pos + 4);
1439
1445
  return {
1440
- type: 'EmptyStatement',
1446
+ type: "EmptyStatement",
1441
1447
  start,
1442
1448
  end,
1443
1449
  range: [start, end],
@@ -1448,7 +1454,7 @@ function deserializeExpressionStatement(pos) {
1448
1454
  let start = deserializeU32(pos),
1449
1455
  end = deserializeU32(pos + 4),
1450
1456
  node = {
1451
- type: 'ExpressionStatement',
1457
+ type: "ExpressionStatement",
1452
1458
  expression: null,
1453
1459
  directive: null,
1454
1460
  start,
@@ -1463,7 +1469,7 @@ function deserializeIfStatement(pos) {
1463
1469
  let start = deserializeU32(pos),
1464
1470
  end = deserializeU32(pos + 4),
1465
1471
  node = {
1466
- type: 'IfStatement',
1472
+ type: "IfStatement",
1467
1473
  test: null,
1468
1474
  consequent: null,
1469
1475
  alternate: null,
@@ -1481,7 +1487,7 @@ function deserializeDoWhileStatement(pos) {
1481
1487
  let start = deserializeU32(pos),
1482
1488
  end = deserializeU32(pos + 4),
1483
1489
  node = {
1484
- type: 'DoWhileStatement',
1490
+ type: "DoWhileStatement",
1485
1491
  body: null,
1486
1492
  test: null,
1487
1493
  start,
@@ -1497,7 +1503,7 @@ function deserializeWhileStatement(pos) {
1497
1503
  let start = deserializeU32(pos),
1498
1504
  end = deserializeU32(pos + 4),
1499
1505
  node = {
1500
- type: 'WhileStatement',
1506
+ type: "WhileStatement",
1501
1507
  test: null,
1502
1508
  body: null,
1503
1509
  start,
@@ -1513,7 +1519,7 @@ function deserializeForStatement(pos) {
1513
1519
  let start = deserializeU32(pos),
1514
1520
  end = deserializeU32(pos + 4),
1515
1521
  node = {
1516
- type: 'ForStatement',
1522
+ type: "ForStatement",
1517
1523
  init: null,
1518
1524
  test: null,
1519
1525
  update: null,
@@ -1628,7 +1634,7 @@ function deserializeForInStatement(pos) {
1628
1634
  let start = deserializeU32(pos),
1629
1635
  end = deserializeU32(pos + 4),
1630
1636
  node = {
1631
- type: 'ForInStatement',
1637
+ type: "ForInStatement",
1632
1638
  left: null,
1633
1639
  right: null,
1634
1640
  body: null,
@@ -1675,7 +1681,7 @@ function deserializeForOfStatement(pos) {
1675
1681
  let start = deserializeU32(pos),
1676
1682
  end = deserializeU32(pos + 4),
1677
1683
  node = {
1678
- type: 'ForOfStatement',
1684
+ type: "ForOfStatement",
1679
1685
  await: deserializeBool(pos + 60),
1680
1686
  left: null,
1681
1687
  right: null,
@@ -1694,7 +1700,7 @@ function deserializeContinueStatement(pos) {
1694
1700
  let start = deserializeU32(pos),
1695
1701
  end = deserializeU32(pos + 4),
1696
1702
  node = {
1697
- type: 'ContinueStatement',
1703
+ type: "ContinueStatement",
1698
1704
  label: null,
1699
1705
  start,
1700
1706
  end,
@@ -1708,7 +1714,7 @@ function deserializeBreakStatement(pos) {
1708
1714
  let start = deserializeU32(pos),
1709
1715
  end = deserializeU32(pos + 4),
1710
1716
  node = {
1711
- type: 'BreakStatement',
1717
+ type: "BreakStatement",
1712
1718
  label: null,
1713
1719
  start,
1714
1720
  end,
@@ -1722,7 +1728,7 @@ function deserializeReturnStatement(pos) {
1722
1728
  let start = deserializeU32(pos),
1723
1729
  end = deserializeU32(pos + 4),
1724
1730
  node = {
1725
- type: 'ReturnStatement',
1731
+ type: "ReturnStatement",
1726
1732
  argument: null,
1727
1733
  start,
1728
1734
  end,
@@ -1736,7 +1742,7 @@ function deserializeWithStatement(pos) {
1736
1742
  let start = deserializeU32(pos),
1737
1743
  end = deserializeU32(pos + 4),
1738
1744
  node = {
1739
- type: 'WithStatement',
1745
+ type: "WithStatement",
1740
1746
  object: null,
1741
1747
  body: null,
1742
1748
  start,
@@ -1752,7 +1758,7 @@ function deserializeSwitchStatement(pos) {
1752
1758
  let start = deserializeU32(pos),
1753
1759
  end = deserializeU32(pos + 4),
1754
1760
  node = {
1755
- type: 'SwitchStatement',
1761
+ type: "SwitchStatement",
1756
1762
  discriminant: null,
1757
1763
  cases: null,
1758
1764
  start,
@@ -1768,7 +1774,7 @@ function deserializeSwitchCase(pos) {
1768
1774
  let start = deserializeU32(pos),
1769
1775
  end = deserializeU32(pos + 4),
1770
1776
  node = {
1771
- type: 'SwitchCase',
1777
+ type: "SwitchCase",
1772
1778
  test: null,
1773
1779
  consequent: null,
1774
1780
  start,
@@ -1784,7 +1790,7 @@ function deserializeLabeledStatement(pos) {
1784
1790
  let start = deserializeU32(pos),
1785
1791
  end = deserializeU32(pos + 4),
1786
1792
  node = {
1787
- type: 'LabeledStatement',
1793
+ type: "LabeledStatement",
1788
1794
  label: null,
1789
1795
  body: null,
1790
1796
  start,
@@ -1800,7 +1806,7 @@ function deserializeThrowStatement(pos) {
1800
1806
  let start = deserializeU32(pos),
1801
1807
  end = deserializeU32(pos + 4),
1802
1808
  node = {
1803
- type: 'ThrowStatement',
1809
+ type: "ThrowStatement",
1804
1810
  argument: null,
1805
1811
  start,
1806
1812
  end,
@@ -1814,7 +1820,7 @@ function deserializeTryStatement(pos) {
1814
1820
  let start = deserializeU32(pos),
1815
1821
  end = deserializeU32(pos + 4),
1816
1822
  node = {
1817
- type: 'TryStatement',
1823
+ type: "TryStatement",
1818
1824
  block: null,
1819
1825
  handler: null,
1820
1826
  finalizer: null,
@@ -1832,7 +1838,7 @@ function deserializeCatchClause(pos) {
1832
1838
  let start = deserializeU32(pos),
1833
1839
  end = deserializeU32(pos + 4),
1834
1840
  node = {
1835
- type: 'CatchClause',
1841
+ type: "CatchClause",
1836
1842
  param: null,
1837
1843
  body: null,
1838
1844
  start,
@@ -1852,7 +1858,7 @@ function deserializeDebuggerStatement(pos) {
1852
1858
  let start = deserializeU32(pos),
1853
1859
  end = deserializeU32(pos + 4);
1854
1860
  return {
1855
- type: 'DebuggerStatement',
1861
+ type: "DebuggerStatement",
1856
1862
  start,
1857
1863
  end,
1858
1864
  range: [start, end],
@@ -1885,7 +1891,7 @@ function deserializeAssignmentPattern(pos) {
1885
1891
  let start = deserializeU32(pos),
1886
1892
  end = deserializeU32(pos + 4),
1887
1893
  node = {
1888
- type: 'AssignmentPattern',
1894
+ type: "AssignmentPattern",
1889
1895
  decorators: null,
1890
1896
  left: null,
1891
1897
  right: null,
@@ -1906,7 +1912,7 @@ function deserializeObjectPattern(pos) {
1906
1912
  let start = deserializeU32(pos),
1907
1913
  end = deserializeU32(pos + 4),
1908
1914
  node = {
1909
- type: 'ObjectPattern',
1915
+ type: "ObjectPattern",
1910
1916
  decorators: null,
1911
1917
  properties: null,
1912
1918
  optional: null,
@@ -1928,7 +1934,7 @@ function deserializeBindingProperty(pos) {
1928
1934
  let start = deserializeU32(pos),
1929
1935
  end = deserializeU32(pos + 4),
1930
1936
  node = {
1931
- type: 'Property',
1937
+ type: "Property",
1932
1938
  kind: null,
1933
1939
  key: null,
1934
1940
  value: null,
@@ -1940,7 +1946,7 @@ function deserializeBindingProperty(pos) {
1940
1946
  end,
1941
1947
  range: [start, end],
1942
1948
  };
1943
- node.kind = 'init';
1949
+ node.kind = "init";
1944
1950
  node.key = deserializePropertyKey(pos + 8);
1945
1951
  node.value = deserializeBindingPattern(pos + 24);
1946
1952
  node.method = false;
@@ -1952,7 +1958,7 @@ function deserializeArrayPattern(pos) {
1952
1958
  let start = deserializeU32(pos),
1953
1959
  end = deserializeU32(pos + 4),
1954
1960
  node = {
1955
- type: 'ArrayPattern',
1961
+ type: "ArrayPattern",
1956
1962
  decorators: null,
1957
1963
  elements: null,
1958
1964
  optional: null,
@@ -1974,7 +1980,7 @@ function deserializeBindingRestElement(pos) {
1974
1980
  let start = deserializeU32(pos),
1975
1981
  end = deserializeU32(pos + 4),
1976
1982
  node = {
1977
- type: 'RestElement',
1983
+ type: "RestElement",
1978
1984
  decorators: null,
1979
1985
  argument: null,
1980
1986
  optional: null,
@@ -2025,13 +2031,13 @@ function deserializeFunction(pos) {
2025
2031
  function deserializeFunctionType(pos) {
2026
2032
  switch (uint8[pos]) {
2027
2033
  case 0:
2028
- return 'FunctionDeclaration';
2034
+ return "FunctionDeclaration";
2029
2035
  case 1:
2030
- return 'FunctionExpression';
2036
+ return "FunctionExpression";
2031
2037
  case 2:
2032
- return 'TSDeclareFunction';
2038
+ return "TSDeclareFunction";
2033
2039
  case 3:
2034
- return 'TSEmptyBodyFunctionExpression';
2040
+ return "TSEmptyBodyFunctionExpression";
2035
2041
  default:
2036
2042
  throw Error(`Unexpected discriminant ${uint8[pos]} for FunctionType`);
2037
2043
  }
@@ -2044,7 +2050,7 @@ function deserializeFormalParameters(pos) {
2044
2050
  let start,
2045
2051
  end,
2046
2052
  rest = {
2047
- type: 'RestElement',
2053
+ type: "RestElement",
2048
2054
  decorators: [],
2049
2055
  argument: null,
2050
2056
  optional: deserializeBool(pos + 32),
@@ -2075,7 +2081,7 @@ function deserializeFormalParameter(pos) {
2075
2081
  } else {
2076
2082
  let start, end;
2077
2083
  param = {
2078
- type: 'TSParameterProperty',
2084
+ type: "TSParameterProperty",
2079
2085
  accessibility,
2080
2086
  decorators: null,
2081
2087
  override,
@@ -2097,7 +2103,7 @@ function deserializeFunctionBody(pos) {
2097
2103
  let start = deserializeU32(pos),
2098
2104
  end = deserializeU32(pos + 4),
2099
2105
  node = {
2100
- type: 'BlockStatement',
2106
+ type: "BlockStatement",
2101
2107
  body: null,
2102
2108
  start,
2103
2109
  end,
@@ -2114,7 +2120,7 @@ function deserializeArrowFunctionExpression(pos) {
2114
2120
  start = deserializeU32(pos),
2115
2121
  end = deserializeU32(pos + 4),
2116
2122
  node = {
2117
- type: 'ArrowFunctionExpression',
2123
+ type: "ArrowFunctionExpression",
2118
2124
  expression,
2119
2125
  async: deserializeBool(pos + 45),
2120
2126
  typeParameters: null,
@@ -2141,7 +2147,7 @@ function deserializeYieldExpression(pos) {
2141
2147
  let start = deserializeU32(pos),
2142
2148
  end = deserializeU32(pos + 4),
2143
2149
  node = {
2144
- type: 'YieldExpression',
2150
+ type: "YieldExpression",
2145
2151
  delegate: deserializeBool(pos + 24),
2146
2152
  argument: null,
2147
2153
  start,
@@ -2183,9 +2189,9 @@ function deserializeClass(pos) {
2183
2189
  function deserializeClassType(pos) {
2184
2190
  switch (uint8[pos]) {
2185
2191
  case 0:
2186
- return 'ClassDeclaration';
2192
+ return "ClassDeclaration";
2187
2193
  case 1:
2188
- return 'ClassExpression';
2194
+ return "ClassExpression";
2189
2195
  default:
2190
2196
  throw Error(`Unexpected discriminant ${uint8[pos]} for ClassType`);
2191
2197
  }
@@ -2195,7 +2201,7 @@ function deserializeClassBody(pos) {
2195
2201
  let start = deserializeU32(pos),
2196
2202
  end = deserializeU32(pos + 4),
2197
2203
  node = {
2198
- type: 'ClassBody',
2204
+ type: "ClassBody",
2199
2205
  body: null,
2200
2206
  start,
2201
2207
  end,
@@ -2249,9 +2255,9 @@ function deserializeMethodDefinition(pos) {
2249
2255
  function deserializeMethodDefinitionType(pos) {
2250
2256
  switch (uint8[pos]) {
2251
2257
  case 0:
2252
- return 'MethodDefinition';
2258
+ return "MethodDefinition";
2253
2259
  case 1:
2254
- return 'TSAbstractMethodDefinition';
2260
+ return "TSAbstractMethodDefinition";
2255
2261
  default:
2256
2262
  throw Error(`Unexpected discriminant ${uint8[pos]} for MethodDefinitionType`);
2257
2263
  }
@@ -2288,9 +2294,9 @@ function deserializePropertyDefinition(pos) {
2288
2294
  function deserializePropertyDefinitionType(pos) {
2289
2295
  switch (uint8[pos]) {
2290
2296
  case 0:
2291
- return 'PropertyDefinition';
2297
+ return "PropertyDefinition";
2292
2298
  case 1:
2293
- return 'TSAbstractPropertyDefinition';
2299
+ return "TSAbstractPropertyDefinition";
2294
2300
  default:
2295
2301
  throw Error(`Unexpected discriminant ${uint8[pos]} for PropertyDefinitionType`);
2296
2302
  }
@@ -2299,13 +2305,13 @@ function deserializePropertyDefinitionType(pos) {
2299
2305
  function deserializeMethodDefinitionKind(pos) {
2300
2306
  switch (uint8[pos]) {
2301
2307
  case 0:
2302
- return 'constructor';
2308
+ return "constructor";
2303
2309
  case 1:
2304
- return 'method';
2310
+ return "method";
2305
2311
  case 2:
2306
- return 'get';
2312
+ return "get";
2307
2313
  case 3:
2308
- return 'set';
2314
+ return "set";
2309
2315
  default:
2310
2316
  throw Error(`Unexpected discriminant ${uint8[pos]} for MethodDefinitionKind`);
2311
2317
  }
@@ -2315,7 +2321,7 @@ function deserializePrivateIdentifier(pos) {
2315
2321
  let start = deserializeU32(pos),
2316
2322
  end = deserializeU32(pos + 4);
2317
2323
  return {
2318
- type: 'PrivateIdentifier',
2324
+ type: "PrivateIdentifier",
2319
2325
  name: deserializeStr(pos + 8),
2320
2326
  start,
2321
2327
  end,
@@ -2327,7 +2333,7 @@ function deserializeStaticBlock(pos) {
2327
2333
  let start = deserializeU32(pos),
2328
2334
  end = deserializeU32(pos + 4),
2329
2335
  node = {
2330
- type: 'StaticBlock',
2336
+ type: "StaticBlock",
2331
2337
  body: null,
2332
2338
  start,
2333
2339
  end,
@@ -2340,9 +2346,9 @@ function deserializeStaticBlock(pos) {
2340
2346
  function deserializeAccessorPropertyType(pos) {
2341
2347
  switch (uint8[pos]) {
2342
2348
  case 0:
2343
- return 'AccessorProperty';
2349
+ return "AccessorProperty";
2344
2350
  case 1:
2345
- return 'TSAbstractAccessorProperty';
2351
+ return "TSAbstractAccessorProperty";
2346
2352
  default:
2347
2353
  throw Error(`Unexpected discriminant ${uint8[pos]} for AccessorPropertyType`);
2348
2354
  }
@@ -2383,7 +2389,7 @@ function deserializeImportExpression(pos) {
2383
2389
  let start = deserializeU32(pos),
2384
2390
  end = deserializeU32(pos + 4),
2385
2391
  node = {
2386
- type: 'ImportExpression',
2392
+ type: "ImportExpression",
2387
2393
  source: null,
2388
2394
  options: null,
2389
2395
  phase: deserializeOptionImportPhase(pos + 40),
@@ -2400,7 +2406,7 @@ function deserializeImportDeclaration(pos) {
2400
2406
  let start = deserializeU32(pos),
2401
2407
  end = deserializeU32(pos + 4),
2402
2408
  node = {
2403
- type: 'ImportDeclaration',
2409
+ type: "ImportDeclaration",
2404
2410
  specifiers: null,
2405
2411
  source: null,
2406
2412
  phase: deserializeOptionImportPhase(pos + 88),
@@ -2422,9 +2428,9 @@ function deserializeImportDeclaration(pos) {
2422
2428
  function deserializeImportPhase(pos) {
2423
2429
  switch (uint8[pos]) {
2424
2430
  case 0:
2425
- return 'source';
2431
+ return "source";
2426
2432
  case 1:
2427
- return 'defer';
2433
+ return "defer";
2428
2434
  default:
2429
2435
  throw Error(`Unexpected discriminant ${uint8[pos]} for ImportPhase`);
2430
2436
  }
@@ -2447,7 +2453,7 @@ function deserializeImportSpecifier(pos) {
2447
2453
  let start = deserializeU32(pos),
2448
2454
  end = deserializeU32(pos + 4),
2449
2455
  node = {
2450
- type: 'ImportSpecifier',
2456
+ type: "ImportSpecifier",
2451
2457
  imported: null,
2452
2458
  local: null,
2453
2459
  importKind: deserializeImportOrExportKind(pos + 96),
@@ -2464,7 +2470,7 @@ function deserializeImportDefaultSpecifier(pos) {
2464
2470
  let start = deserializeU32(pos),
2465
2471
  end = deserializeU32(pos + 4),
2466
2472
  node = {
2467
- type: 'ImportDefaultSpecifier',
2473
+ type: "ImportDefaultSpecifier",
2468
2474
  local: null,
2469
2475
  start,
2470
2476
  end,
@@ -2478,7 +2484,7 @@ function deserializeImportNamespaceSpecifier(pos) {
2478
2484
  let start = deserializeU32(pos),
2479
2485
  end = deserializeU32(pos + 4),
2480
2486
  node = {
2481
- type: 'ImportNamespaceSpecifier',
2487
+ type: "ImportNamespaceSpecifier",
2482
2488
  local: null,
2483
2489
  start,
2484
2490
  end,
@@ -2496,7 +2502,7 @@ function deserializeImportAttribute(pos) {
2496
2502
  let start = deserializeU32(pos),
2497
2503
  end = deserializeU32(pos + 4),
2498
2504
  node = {
2499
- type: 'ImportAttribute',
2505
+ type: "ImportAttribute",
2500
2506
  key: null,
2501
2507
  value: null,
2502
2508
  start,
@@ -2523,7 +2529,7 @@ function deserializeExportNamedDeclaration(pos) {
2523
2529
  let start = deserializeU32(pos),
2524
2530
  end = deserializeU32(pos + 4),
2525
2531
  node = {
2526
- type: 'ExportNamedDeclaration',
2532
+ type: "ExportNamedDeclaration",
2527
2533
  declaration: null,
2528
2534
  specifiers: null,
2529
2535
  source: null,
@@ -2545,7 +2551,7 @@ function deserializeExportDefaultDeclaration(pos) {
2545
2551
  let start = deserializeU32(pos),
2546
2552
  end = deserializeU32(pos + 4),
2547
2553
  node = {
2548
- type: 'ExportDefaultDeclaration',
2554
+ type: "ExportDefaultDeclaration",
2549
2555
  declaration: null,
2550
2556
  exportKind: null,
2551
2557
  start,
@@ -2553,7 +2559,7 @@ function deserializeExportDefaultDeclaration(pos) {
2553
2559
  range: [start, end],
2554
2560
  };
2555
2561
  node.declaration = deserializeExportDefaultDeclarationKind(pos + 8);
2556
- node.exportKind = 'value';
2562
+ node.exportKind = "value";
2557
2563
  return node;
2558
2564
  }
2559
2565
 
@@ -2561,7 +2567,7 @@ function deserializeExportAllDeclaration(pos) {
2561
2567
  let start = deserializeU32(pos),
2562
2568
  end = deserializeU32(pos + 4),
2563
2569
  node = {
2564
- type: 'ExportAllDeclaration',
2570
+ type: "ExportAllDeclaration",
2565
2571
  exported: null,
2566
2572
  source: null,
2567
2573
  attributes: null,
@@ -2581,7 +2587,7 @@ function deserializeExportSpecifier(pos) {
2581
2587
  let start = deserializeU32(pos),
2582
2588
  end = deserializeU32(pos + 4),
2583
2589
  node = {
2584
- type: 'ExportSpecifier',
2590
+ type: "ExportSpecifier",
2585
2591
  local: null,
2586
2592
  exported: null,
2587
2593
  exportKind: deserializeImportOrExportKind(pos + 120),
@@ -2710,7 +2716,7 @@ function deserializeV8IntrinsicExpression(pos) {
2710
2716
  let start = deserializeU32(pos),
2711
2717
  end = deserializeU32(pos + 4),
2712
2718
  node = {
2713
- type: 'V8IntrinsicExpression',
2719
+ type: "V8IntrinsicExpression",
2714
2720
  name: null,
2715
2721
  arguments: null,
2716
2722
  start,
@@ -2727,14 +2733,14 @@ function deserializeBooleanLiteral(pos) {
2727
2733
  start = deserializeU32(pos),
2728
2734
  end = deserializeU32(pos + 4),
2729
2735
  node = {
2730
- type: 'Literal',
2736
+ type: "Literal",
2731
2737
  value,
2732
2738
  raw: null,
2733
2739
  start,
2734
2740
  end,
2735
2741
  range: [start, end],
2736
2742
  };
2737
- node.raw = start === 0 && end === 0 ? null : value + '';
2743
+ node.raw = start === 0 && end === 0 ? null : value + "";
2738
2744
  return node;
2739
2745
  }
2740
2746
 
@@ -2742,14 +2748,14 @@ function deserializeNullLiteral(pos) {
2742
2748
  let start = deserializeU32(pos),
2743
2749
  end = deserializeU32(pos + 4),
2744
2750
  node = {
2745
- type: 'Literal',
2751
+ type: "Literal",
2746
2752
  value: null,
2747
2753
  raw: null,
2748
2754
  start,
2749
2755
  end,
2750
2756
  range: [start, end],
2751
2757
  };
2752
- node.raw = start === 0 && end === 0 ? null : 'null';
2758
+ node.raw = start === 0 && end === 0 ? null : "null";
2753
2759
  return node;
2754
2760
  }
2755
2761
 
@@ -2757,7 +2763,7 @@ function deserializeNumericLiteral(pos) {
2757
2763
  let start = deserializeU32(pos),
2758
2764
  end = deserializeU32(pos + 4);
2759
2765
  return {
2760
- type: 'Literal',
2766
+ type: "Literal",
2761
2767
  value: deserializeF64(pos + 8),
2762
2768
  raw: deserializeOptionStr(pos + 16),
2763
2769
  start,
@@ -2770,7 +2776,7 @@ function deserializeStringLiteral(pos) {
2770
2776
  let start = deserializeU32(pos),
2771
2777
  end = deserializeU32(pos + 4),
2772
2778
  node = {
2773
- type: 'Literal',
2779
+ type: "Literal",
2774
2780
  value: null,
2775
2781
  raw: deserializeOptionStr(pos + 24),
2776
2782
  start,
@@ -2788,7 +2794,7 @@ function deserializeBigIntLiteral(pos) {
2788
2794
  let start = deserializeU32(pos),
2789
2795
  end = deserializeU32(pos + 4),
2790
2796
  node = {
2791
- type: 'Literal',
2797
+ type: "Literal",
2792
2798
  value: null,
2793
2799
  raw: deserializeOptionStr(pos + 24),
2794
2800
  bigint: null,
@@ -2806,7 +2812,7 @@ function deserializeRegExpLiteral(pos) {
2806
2812
  let start = deserializeU32(pos),
2807
2813
  end = deserializeU32(pos + 4),
2808
2814
  node = {
2809
- type: 'Literal',
2815
+ type: "Literal",
2810
2816
  value: null,
2811
2817
  raw: deserializeOptionStr(pos + 40),
2812
2818
  regex: null,
@@ -2833,16 +2839,16 @@ function deserializeRegExp(pos) {
2833
2839
 
2834
2840
  function deserializeRegExpFlags(pos) {
2835
2841
  let flagBits = deserializeU8(pos),
2836
- flags = '';
2842
+ flags = "";
2837
2843
  // Alphabetical order
2838
- flagBits & 64 && (flags += 'd');
2839
- flagBits & 1 && (flags += 'g');
2840
- flagBits & 2 && (flags += 'i');
2841
- flagBits & 4 && (flags += 'm');
2842
- flagBits & 8 && (flags += 's');
2843
- flagBits & 16 && (flags += 'u');
2844
- flagBits & 128 && (flags += 'v');
2845
- flagBits & 32 && (flags += 'y');
2844
+ flagBits & 64 && (flags += "d");
2845
+ flagBits & 1 && (flags += "g");
2846
+ flagBits & 2 && (flags += "i");
2847
+ flagBits & 4 && (flags += "m");
2848
+ flagBits & 8 && (flags += "s");
2849
+ flagBits & 16 && (flags += "u");
2850
+ flagBits & 128 && (flags += "v");
2851
+ flagBits & 32 && (flags += "y");
2846
2852
  return flags;
2847
2853
  }
2848
2854
 
@@ -2850,7 +2856,7 @@ function deserializeJSXElement(pos) {
2850
2856
  let start = deserializeU32(pos),
2851
2857
  end = deserializeU32(pos + 4),
2852
2858
  node = {
2853
- type: 'JSXElement',
2859
+ type: "JSXElement",
2854
2860
  openingElement: null,
2855
2861
  children: null,
2856
2862
  closingElement: null,
@@ -2871,7 +2877,7 @@ function deserializeJSXOpeningElement(pos) {
2871
2877
  let start = deserializeU32(pos),
2872
2878
  end = deserializeU32(pos + 4),
2873
2879
  node = {
2874
- type: 'JSXOpeningElement',
2880
+ type: "JSXOpeningElement",
2875
2881
  name: null,
2876
2882
  typeArguments: null,
2877
2883
  attributes: null,
@@ -2891,7 +2897,7 @@ function deserializeJSXClosingElement(pos) {
2891
2897
  let start = deserializeU32(pos),
2892
2898
  end = deserializeU32(pos + 4),
2893
2899
  node = {
2894
- type: 'JSXClosingElement',
2900
+ type: "JSXClosingElement",
2895
2901
  name: null,
2896
2902
  start,
2897
2903
  end,
@@ -2905,7 +2911,7 @@ function deserializeJSXFragment(pos) {
2905
2911
  let start = deserializeU32(pos),
2906
2912
  end = deserializeU32(pos + 4),
2907
2913
  node = {
2908
- type: 'JSXFragment',
2914
+ type: "JSXFragment",
2909
2915
  openingFragment: null,
2910
2916
  children: null,
2911
2917
  closingFragment: null,
@@ -2923,7 +2929,7 @@ function deserializeJSXOpeningFragment(pos) {
2923
2929
  let start = deserializeU32(pos),
2924
2930
  end = deserializeU32(pos + 4);
2925
2931
  return {
2926
- type: 'JSXOpeningFragment',
2932
+ type: "JSXOpeningFragment",
2927
2933
  start,
2928
2934
  end,
2929
2935
  range: [start, end],
@@ -2934,7 +2940,7 @@ function deserializeJSXClosingFragment(pos) {
2934
2940
  let start = deserializeU32(pos),
2935
2941
  end = deserializeU32(pos + 4);
2936
2942
  return {
2937
- type: 'JSXClosingFragment',
2943
+ type: "JSXClosingFragment",
2938
2944
  start,
2939
2945
  end,
2940
2946
  range: [start, end],
@@ -2948,7 +2954,7 @@ function deserializeJSXElementName(pos) {
2948
2954
  case 1:
2949
2955
  let ident = deserializeBoxIdentifierReference(pos + 8);
2950
2956
  return {
2951
- type: 'JSXIdentifier',
2957
+ type: "JSXIdentifier",
2952
2958
  name: ident.name,
2953
2959
  start: ident.start,
2954
2960
  end: ident.end,
@@ -2961,8 +2967,8 @@ function deserializeJSXElementName(pos) {
2961
2967
  case 4:
2962
2968
  let thisExpr = deserializeBoxThisExpression(pos + 8);
2963
2969
  return {
2964
- type: 'JSXIdentifier',
2965
- name: 'this',
2970
+ type: "JSXIdentifier",
2971
+ name: "this",
2966
2972
  start: thisExpr.start,
2967
2973
  end: thisExpr.end,
2968
2974
  range: thisExpr.range,
@@ -2976,7 +2982,7 @@ function deserializeJSXNamespacedName(pos) {
2976
2982
  let start = deserializeU32(pos),
2977
2983
  end = deserializeU32(pos + 4),
2978
2984
  node = {
2979
- type: 'JSXNamespacedName',
2985
+ type: "JSXNamespacedName",
2980
2986
  namespace: null,
2981
2987
  name: null,
2982
2988
  start,
@@ -2992,7 +2998,7 @@ function deserializeJSXMemberExpression(pos) {
2992
2998
  let start = deserializeU32(pos),
2993
2999
  end = deserializeU32(pos + 4),
2994
3000
  node = {
2995
- type: 'JSXMemberExpression',
3001
+ type: "JSXMemberExpression",
2996
3002
  object: null,
2997
3003
  property: null,
2998
3004
  start,
@@ -3009,7 +3015,7 @@ function deserializeJSXMemberExpressionObject(pos) {
3009
3015
  case 0:
3010
3016
  let ident = deserializeBoxIdentifierReference(pos + 8);
3011
3017
  return {
3012
- type: 'JSXIdentifier',
3018
+ type: "JSXIdentifier",
3013
3019
  name: ident.name,
3014
3020
  start: ident.start,
3015
3021
  end: ident.end,
@@ -3020,8 +3026,8 @@ function deserializeJSXMemberExpressionObject(pos) {
3020
3026
  case 2:
3021
3027
  let thisExpr = deserializeBoxThisExpression(pos + 8);
3022
3028
  return {
3023
- type: 'JSXIdentifier',
3024
- name: 'this',
3029
+ type: "JSXIdentifier",
3030
+ name: "this",
3025
3031
  start: thisExpr.start,
3026
3032
  end: thisExpr.end,
3027
3033
  range: thisExpr.range,
@@ -3035,7 +3041,7 @@ function deserializeJSXExpressionContainer(pos) {
3035
3041
  let start = deserializeU32(pos),
3036
3042
  end = deserializeU32(pos + 4),
3037
3043
  node = {
3038
- type: 'JSXExpressionContainer',
3044
+ type: "JSXExpressionContainer",
3039
3045
  expression: null,
3040
3046
  start,
3041
3047
  end,
@@ -3144,7 +3150,7 @@ function deserializeJSXEmptyExpression(pos) {
3144
3150
  let start = deserializeU32(pos),
3145
3151
  end = deserializeU32(pos + 4);
3146
3152
  return {
3147
- type: 'JSXEmptyExpression',
3153
+ type: "JSXEmptyExpression",
3148
3154
  start,
3149
3155
  end,
3150
3156
  range: [start, end],
@@ -3166,7 +3172,7 @@ function deserializeJSXAttribute(pos) {
3166
3172
  let start = deserializeU32(pos),
3167
3173
  end = deserializeU32(pos + 4),
3168
3174
  node = {
3169
- type: 'JSXAttribute',
3175
+ type: "JSXAttribute",
3170
3176
  name: null,
3171
3177
  value: null,
3172
3178
  start,
@@ -3182,7 +3188,7 @@ function deserializeJSXSpreadAttribute(pos) {
3182
3188
  let start = deserializeU32(pos),
3183
3189
  end = deserializeU32(pos + 4),
3184
3190
  node = {
3185
- type: 'JSXSpreadAttribute',
3191
+ type: "JSXSpreadAttribute",
3186
3192
  argument: null,
3187
3193
  start,
3188
3194
  end,
@@ -3222,7 +3228,7 @@ function deserializeJSXIdentifier(pos) {
3222
3228
  let start = deserializeU32(pos),
3223
3229
  end = deserializeU32(pos + 4);
3224
3230
  return {
3225
- type: 'JSXIdentifier',
3231
+ type: "JSXIdentifier",
3226
3232
  name: deserializeStr(pos + 8),
3227
3233
  start,
3228
3234
  end,
@@ -3251,7 +3257,7 @@ function deserializeJSXSpreadChild(pos) {
3251
3257
  let start = deserializeU32(pos),
3252
3258
  end = deserializeU32(pos + 4),
3253
3259
  node = {
3254
- type: 'JSXSpreadChild',
3260
+ type: "JSXSpreadChild",
3255
3261
  expression: null,
3256
3262
  start,
3257
3263
  end,
@@ -3265,7 +3271,7 @@ function deserializeJSXText(pos) {
3265
3271
  let start = deserializeU32(pos),
3266
3272
  end = deserializeU32(pos + 4);
3267
3273
  return {
3268
- type: 'JSXText',
3274
+ type: "JSXText",
3269
3275
  value: deserializeStr(pos + 8),
3270
3276
  raw: deserializeOptionStr(pos + 24),
3271
3277
  start,
@@ -3278,7 +3284,7 @@ function deserializeTSThisParameter(pos) {
3278
3284
  let start = deserializeU32(pos),
3279
3285
  end = deserializeU32(pos + 4),
3280
3286
  node = {
3281
- type: 'Identifier',
3287
+ type: "Identifier",
3282
3288
  decorators: null,
3283
3289
  name: null,
3284
3290
  optional: null,
@@ -3288,7 +3294,7 @@ function deserializeTSThisParameter(pos) {
3288
3294
  range: [start, end],
3289
3295
  };
3290
3296
  node.decorators = [];
3291
- node.name = 'this';
3297
+ node.name = "this";
3292
3298
  node.optional = false;
3293
3299
  node.typeAnnotation = deserializeOptionBoxTSTypeAnnotation(pos + 16);
3294
3300
  return node;
@@ -3298,7 +3304,7 @@ function deserializeTSEnumDeclaration(pos) {
3298
3304
  let start = deserializeU32(pos),
3299
3305
  end = deserializeU32(pos + 4),
3300
3306
  node = {
3301
- type: 'TSEnumDeclaration',
3307
+ type: "TSEnumDeclaration",
3302
3308
  id: null,
3303
3309
  body: null,
3304
3310
  const: deserializeBool(pos + 76),
@@ -3316,7 +3322,7 @@ function deserializeTSEnumBody(pos) {
3316
3322
  let start = deserializeU32(pos),
3317
3323
  end = deserializeU32(pos + 4),
3318
3324
  node = {
3319
- type: 'TSEnumBody',
3325
+ type: "TSEnumBody",
3320
3326
  members: null,
3321
3327
  start,
3322
3328
  end,
@@ -3330,7 +3336,7 @@ function deserializeTSEnumMember(pos) {
3330
3336
  let start = deserializeU32(pos),
3331
3337
  end = deserializeU32(pos + 4),
3332
3338
  node = {
3333
- type: 'TSEnumMember',
3339
+ type: "TSEnumMember",
3334
3340
  id: null,
3335
3341
  initializer: null,
3336
3342
  computed: null,
@@ -3363,7 +3369,7 @@ function deserializeTSTypeAnnotation(pos) {
3363
3369
  let start = deserializeU32(pos),
3364
3370
  end = deserializeU32(pos + 4),
3365
3371
  node = {
3366
- type: 'TSTypeAnnotation',
3372
+ type: "TSTypeAnnotation",
3367
3373
  typeAnnotation: null,
3368
3374
  start,
3369
3375
  end,
@@ -3377,7 +3383,7 @@ function deserializeTSLiteralType(pos) {
3377
3383
  let start = deserializeU32(pos),
3378
3384
  end = deserializeU32(pos + 4),
3379
3385
  node = {
3380
- type: 'TSLiteralType',
3386
+ type: "TSLiteralType",
3381
3387
  literal: null,
3382
3388
  start,
3383
3389
  end,
@@ -3491,7 +3497,7 @@ function deserializeTSConditionalType(pos) {
3491
3497
  let start = deserializeU32(pos),
3492
3498
  end = deserializeU32(pos + 4),
3493
3499
  node = {
3494
- type: 'TSConditionalType',
3500
+ type: "TSConditionalType",
3495
3501
  checkType: null,
3496
3502
  extendsType: null,
3497
3503
  trueType: null,
@@ -3511,7 +3517,7 @@ function deserializeTSUnionType(pos) {
3511
3517
  let start = deserializeU32(pos),
3512
3518
  end = deserializeU32(pos + 4),
3513
3519
  node = {
3514
- type: 'TSUnionType',
3520
+ type: "TSUnionType",
3515
3521
  types: null,
3516
3522
  start,
3517
3523
  end,
@@ -3525,7 +3531,7 @@ function deserializeTSIntersectionType(pos) {
3525
3531
  let start = deserializeU32(pos),
3526
3532
  end = deserializeU32(pos + 4),
3527
3533
  node = {
3528
- type: 'TSIntersectionType',
3534
+ type: "TSIntersectionType",
3529
3535
  types: null,
3530
3536
  start,
3531
3537
  end,
@@ -3540,7 +3546,7 @@ function deserializeTSParenthesizedType(pos) {
3540
3546
  {
3541
3547
  let start, end;
3542
3548
  node = {
3543
- type: 'TSParenthesizedType',
3549
+ type: "TSParenthesizedType",
3544
3550
  typeAnnotation: null,
3545
3551
  start: (start = deserializeU32(pos)),
3546
3552
  end: (end = deserializeU32(pos + 4)),
@@ -3555,7 +3561,7 @@ function deserializeTSTypeOperator(pos) {
3555
3561
  let start = deserializeU32(pos),
3556
3562
  end = deserializeU32(pos + 4),
3557
3563
  node = {
3558
- type: 'TSTypeOperator',
3564
+ type: "TSTypeOperator",
3559
3565
  operator: deserializeTSTypeOperatorOperator(pos + 24),
3560
3566
  typeAnnotation: null,
3561
3567
  start,
@@ -3569,11 +3575,11 @@ function deserializeTSTypeOperator(pos) {
3569
3575
  function deserializeTSTypeOperatorOperator(pos) {
3570
3576
  switch (uint8[pos]) {
3571
3577
  case 0:
3572
- return 'keyof';
3578
+ return "keyof";
3573
3579
  case 1:
3574
- return 'unique';
3580
+ return "unique";
3575
3581
  case 2:
3576
- return 'readonly';
3582
+ return "readonly";
3577
3583
  default:
3578
3584
  throw Error(`Unexpected discriminant ${uint8[pos]} for TSTypeOperatorOperator`);
3579
3585
  }
@@ -3583,7 +3589,7 @@ function deserializeTSArrayType(pos) {
3583
3589
  let start = deserializeU32(pos),
3584
3590
  end = deserializeU32(pos + 4),
3585
3591
  node = {
3586
- type: 'TSArrayType',
3592
+ type: "TSArrayType",
3587
3593
  elementType: null,
3588
3594
  start,
3589
3595
  end,
@@ -3597,7 +3603,7 @@ function deserializeTSIndexedAccessType(pos) {
3597
3603
  let start = deserializeU32(pos),
3598
3604
  end = deserializeU32(pos + 4),
3599
3605
  node = {
3600
- type: 'TSIndexedAccessType',
3606
+ type: "TSIndexedAccessType",
3601
3607
  objectType: null,
3602
3608
  indexType: null,
3603
3609
  start,
@@ -3613,7 +3619,7 @@ function deserializeTSTupleType(pos) {
3613
3619
  let start = deserializeU32(pos),
3614
3620
  end = deserializeU32(pos + 4),
3615
3621
  node = {
3616
- type: 'TSTupleType',
3622
+ type: "TSTupleType",
3617
3623
  elementTypes: null,
3618
3624
  start,
3619
3625
  end,
@@ -3627,7 +3633,7 @@ function deserializeTSNamedTupleMember(pos) {
3627
3633
  let start = deserializeU32(pos),
3628
3634
  end = deserializeU32(pos + 4),
3629
3635
  node = {
3630
- type: 'TSNamedTupleMember',
3636
+ type: "TSNamedTupleMember",
3631
3637
  label: null,
3632
3638
  elementType: null,
3633
3639
  optional: deserializeBool(pos + 48),
@@ -3644,7 +3650,7 @@ function deserializeTSOptionalType(pos) {
3644
3650
  let start = deserializeU32(pos),
3645
3651
  end = deserializeU32(pos + 4),
3646
3652
  node = {
3647
- type: 'TSOptionalType',
3653
+ type: "TSOptionalType",
3648
3654
  typeAnnotation: null,
3649
3655
  start,
3650
3656
  end,
@@ -3658,7 +3664,7 @@ function deserializeTSRestType(pos) {
3658
3664
  let start = deserializeU32(pos),
3659
3665
  end = deserializeU32(pos + 4),
3660
3666
  node = {
3661
- type: 'TSRestType',
3667
+ type: "TSRestType",
3662
3668
  typeAnnotation: null,
3663
3669
  start,
3664
3670
  end,
@@ -3757,7 +3763,7 @@ function deserializeTSAnyKeyword(pos) {
3757
3763
  let start = deserializeU32(pos),
3758
3764
  end = deserializeU32(pos + 4);
3759
3765
  return {
3760
- type: 'TSAnyKeyword',
3766
+ type: "TSAnyKeyword",
3761
3767
  start,
3762
3768
  end,
3763
3769
  range: [start, end],
@@ -3768,7 +3774,7 @@ function deserializeTSStringKeyword(pos) {
3768
3774
  let start = deserializeU32(pos),
3769
3775
  end = deserializeU32(pos + 4);
3770
3776
  return {
3771
- type: 'TSStringKeyword',
3777
+ type: "TSStringKeyword",
3772
3778
  start,
3773
3779
  end,
3774
3780
  range: [start, end],
@@ -3779,7 +3785,7 @@ function deserializeTSBooleanKeyword(pos) {
3779
3785
  let start = deserializeU32(pos),
3780
3786
  end = deserializeU32(pos + 4);
3781
3787
  return {
3782
- type: 'TSBooleanKeyword',
3788
+ type: "TSBooleanKeyword",
3783
3789
  start,
3784
3790
  end,
3785
3791
  range: [start, end],
@@ -3790,7 +3796,7 @@ function deserializeTSNumberKeyword(pos) {
3790
3796
  let start = deserializeU32(pos),
3791
3797
  end = deserializeU32(pos + 4);
3792
3798
  return {
3793
- type: 'TSNumberKeyword',
3799
+ type: "TSNumberKeyword",
3794
3800
  start,
3795
3801
  end,
3796
3802
  range: [start, end],
@@ -3801,7 +3807,7 @@ function deserializeTSNeverKeyword(pos) {
3801
3807
  let start = deserializeU32(pos),
3802
3808
  end = deserializeU32(pos + 4);
3803
3809
  return {
3804
- type: 'TSNeverKeyword',
3810
+ type: "TSNeverKeyword",
3805
3811
  start,
3806
3812
  end,
3807
3813
  range: [start, end],
@@ -3812,7 +3818,7 @@ function deserializeTSIntrinsicKeyword(pos) {
3812
3818
  let start = deserializeU32(pos),
3813
3819
  end = deserializeU32(pos + 4);
3814
3820
  return {
3815
- type: 'TSIntrinsicKeyword',
3821
+ type: "TSIntrinsicKeyword",
3816
3822
  start,
3817
3823
  end,
3818
3824
  range: [start, end],
@@ -3823,7 +3829,7 @@ function deserializeTSUnknownKeyword(pos) {
3823
3829
  let start = deserializeU32(pos),
3824
3830
  end = deserializeU32(pos + 4);
3825
3831
  return {
3826
- type: 'TSUnknownKeyword',
3832
+ type: "TSUnknownKeyword",
3827
3833
  start,
3828
3834
  end,
3829
3835
  range: [start, end],
@@ -3834,7 +3840,7 @@ function deserializeTSNullKeyword(pos) {
3834
3840
  let start = deserializeU32(pos),
3835
3841
  end = deserializeU32(pos + 4);
3836
3842
  return {
3837
- type: 'TSNullKeyword',
3843
+ type: "TSNullKeyword",
3838
3844
  start,
3839
3845
  end,
3840
3846
  range: [start, end],
@@ -3845,7 +3851,7 @@ function deserializeTSUndefinedKeyword(pos) {
3845
3851
  let start = deserializeU32(pos),
3846
3852
  end = deserializeU32(pos + 4);
3847
3853
  return {
3848
- type: 'TSUndefinedKeyword',
3854
+ type: "TSUndefinedKeyword",
3849
3855
  start,
3850
3856
  end,
3851
3857
  range: [start, end],
@@ -3856,7 +3862,7 @@ function deserializeTSVoidKeyword(pos) {
3856
3862
  let start = deserializeU32(pos),
3857
3863
  end = deserializeU32(pos + 4);
3858
3864
  return {
3859
- type: 'TSVoidKeyword',
3865
+ type: "TSVoidKeyword",
3860
3866
  start,
3861
3867
  end,
3862
3868
  range: [start, end],
@@ -3867,7 +3873,7 @@ function deserializeTSSymbolKeyword(pos) {
3867
3873
  let start = deserializeU32(pos),
3868
3874
  end = deserializeU32(pos + 4);
3869
3875
  return {
3870
- type: 'TSSymbolKeyword',
3876
+ type: "TSSymbolKeyword",
3871
3877
  start,
3872
3878
  end,
3873
3879
  range: [start, end],
@@ -3878,7 +3884,7 @@ function deserializeTSThisType(pos) {
3878
3884
  let start = deserializeU32(pos),
3879
3885
  end = deserializeU32(pos + 4);
3880
3886
  return {
3881
- type: 'TSThisType',
3887
+ type: "TSThisType",
3882
3888
  start,
3883
3889
  end,
3884
3890
  range: [start, end],
@@ -3889,7 +3895,7 @@ function deserializeTSObjectKeyword(pos) {
3889
3895
  let start = deserializeU32(pos),
3890
3896
  end = deserializeU32(pos + 4);
3891
3897
  return {
3892
- type: 'TSObjectKeyword',
3898
+ type: "TSObjectKeyword",
3893
3899
  start,
3894
3900
  end,
3895
3901
  range: [start, end],
@@ -3900,7 +3906,7 @@ function deserializeTSBigIntKeyword(pos) {
3900
3906
  let start = deserializeU32(pos),
3901
3907
  end = deserializeU32(pos + 4);
3902
3908
  return {
3903
- type: 'TSBigIntKeyword',
3909
+ type: "TSBigIntKeyword",
3904
3910
  start,
3905
3911
  end,
3906
3912
  range: [start, end],
@@ -3911,7 +3917,7 @@ function deserializeTSTypeReference(pos) {
3911
3917
  let start = deserializeU32(pos),
3912
3918
  end = deserializeU32(pos + 4),
3913
3919
  node = {
3914
- type: 'TSTypeReference',
3920
+ type: "TSTypeReference",
3915
3921
  typeName: null,
3916
3922
  typeArguments: null,
3917
3923
  start,
@@ -3940,7 +3946,7 @@ function deserializeTSQualifiedName(pos) {
3940
3946
  let start = deserializeU32(pos),
3941
3947
  end = deserializeU32(pos + 4),
3942
3948
  node = {
3943
- type: 'TSQualifiedName',
3949
+ type: "TSQualifiedName",
3944
3950
  left: null,
3945
3951
  right: null,
3946
3952
  start,
@@ -3956,7 +3962,7 @@ function deserializeTSTypeParameterInstantiation(pos) {
3956
3962
  let start = deserializeU32(pos),
3957
3963
  end = deserializeU32(pos + 4),
3958
3964
  node = {
3959
- type: 'TSTypeParameterInstantiation',
3965
+ type: "TSTypeParameterInstantiation",
3960
3966
  params: null,
3961
3967
  start,
3962
3968
  end,
@@ -3970,7 +3976,7 @@ function deserializeTSTypeParameter(pos) {
3970
3976
  let start = deserializeU32(pos),
3971
3977
  end = deserializeU32(pos + 4),
3972
3978
  node = {
3973
- type: 'TSTypeParameter',
3979
+ type: "TSTypeParameter",
3974
3980
  name: null,
3975
3981
  constraint: null,
3976
3982
  default: null,
@@ -3991,7 +3997,7 @@ function deserializeTSTypeParameterDeclaration(pos) {
3991
3997
  let start = deserializeU32(pos),
3992
3998
  end = deserializeU32(pos + 4),
3993
3999
  node = {
3994
- type: 'TSTypeParameterDeclaration',
4000
+ type: "TSTypeParameterDeclaration",
3995
4001
  params: null,
3996
4002
  start,
3997
4003
  end,
@@ -4005,7 +4011,7 @@ function deserializeTSTypeAliasDeclaration(pos) {
4005
4011
  let start = deserializeU32(pos),
4006
4012
  end = deserializeU32(pos + 4),
4007
4013
  node = {
4008
- type: 'TSTypeAliasDeclaration',
4014
+ type: "TSTypeAliasDeclaration",
4009
4015
  id: null,
4010
4016
  typeParameters: null,
4011
4017
  typeAnnotation: null,
@@ -4023,11 +4029,11 @@ function deserializeTSTypeAliasDeclaration(pos) {
4023
4029
  function deserializeTSAccessibility(pos) {
4024
4030
  switch (uint8[pos]) {
4025
4031
  case 0:
4026
- return 'private';
4032
+ return "private";
4027
4033
  case 1:
4028
- return 'protected';
4034
+ return "protected";
4029
4035
  case 2:
4030
- return 'public';
4036
+ return "public";
4031
4037
  default:
4032
4038
  throw Error(`Unexpected discriminant ${uint8[pos]} for TSAccessibility`);
4033
4039
  }
@@ -4037,7 +4043,7 @@ function deserializeTSClassImplements(pos) {
4037
4043
  let start = deserializeU32(pos),
4038
4044
  end = deserializeU32(pos + 4),
4039
4045
  node = {
4040
- type: 'TSClassImplements',
4046
+ type: "TSClassImplements",
4041
4047
  expression: null,
4042
4048
  typeArguments: null,
4043
4049
  start,
@@ -4045,13 +4051,13 @@ function deserializeTSClassImplements(pos) {
4045
4051
  range: [start, end],
4046
4052
  },
4047
4053
  expression = deserializeTSTypeName(pos + 8);
4048
- if (expression.type === 'TSQualifiedName') {
4054
+ if (expression.type === "TSQualifiedName") {
4049
4055
  let object = expression.left,
4050
4056
  { right } = expression,
4051
4057
  start,
4052
4058
  end,
4053
4059
  previous = (expression = {
4054
- type: 'MemberExpression',
4060
+ type: "MemberExpression",
4055
4061
  object,
4056
4062
  property: right,
4057
4063
  optional: false,
@@ -4060,10 +4066,10 @@ function deserializeTSClassImplements(pos) {
4060
4066
  end: (end = expression.end),
4061
4067
  range: [start, end],
4062
4068
  });
4063
- for (; object.type === 'TSQualifiedName'; ) {
4069
+ for (; object.type === "TSQualifiedName"; ) {
4064
4070
  let { left, right } = object;
4065
4071
  previous = previous.object = {
4066
- type: 'MemberExpression',
4072
+ type: "MemberExpression",
4067
4073
  object: left,
4068
4074
  property: right,
4069
4075
  optional: false,
@@ -4084,7 +4090,7 @@ function deserializeTSInterfaceDeclaration(pos) {
4084
4090
  let start = deserializeU32(pos),
4085
4091
  end = deserializeU32(pos + 4),
4086
4092
  node = {
4087
- type: 'TSInterfaceDeclaration',
4093
+ type: "TSInterfaceDeclaration",
4088
4094
  id: null,
4089
4095
  typeParameters: null,
4090
4096
  extends: null,
@@ -4105,7 +4111,7 @@ function deserializeTSInterfaceBody(pos) {
4105
4111
  let start = deserializeU32(pos),
4106
4112
  end = deserializeU32(pos + 4),
4107
4113
  node = {
4108
- type: 'TSInterfaceBody',
4114
+ type: "TSInterfaceBody",
4109
4115
  body: null,
4110
4116
  start,
4111
4117
  end,
@@ -4119,7 +4125,7 @@ function deserializeTSPropertySignature(pos) {
4119
4125
  let start = deserializeU32(pos),
4120
4126
  end = deserializeU32(pos + 4),
4121
4127
  node = {
4122
- type: 'TSPropertySignature',
4128
+ type: "TSPropertySignature",
4123
4129
  computed: deserializeBool(pos + 32),
4124
4130
  optional: deserializeBool(pos + 33),
4125
4131
  readonly: deserializeBool(pos + 34),
@@ -4158,7 +4164,7 @@ function deserializeTSIndexSignature(pos) {
4158
4164
  let start = deserializeU32(pos),
4159
4165
  end = deserializeU32(pos + 4),
4160
4166
  node = {
4161
- type: 'TSIndexSignature',
4167
+ type: "TSIndexSignature",
4162
4168
  parameters: null,
4163
4169
  typeAnnotation: null,
4164
4170
  readonly: deserializeBool(pos + 40),
@@ -4177,7 +4183,7 @@ function deserializeTSCallSignatureDeclaration(pos) {
4177
4183
  let start = deserializeU32(pos),
4178
4184
  end = deserializeU32(pos + 4),
4179
4185
  node = {
4180
- type: 'TSCallSignatureDeclaration',
4186
+ type: "TSCallSignatureDeclaration",
4181
4187
  typeParameters: null,
4182
4188
  params: null,
4183
4189
  returnType: null,
@@ -4197,11 +4203,11 @@ function deserializeTSCallSignatureDeclaration(pos) {
4197
4203
  function deserializeTSMethodSignatureKind(pos) {
4198
4204
  switch (uint8[pos]) {
4199
4205
  case 0:
4200
- return 'method';
4206
+ return "method";
4201
4207
  case 1:
4202
- return 'get';
4208
+ return "get";
4203
4209
  case 2:
4204
- return 'set';
4210
+ return "set";
4205
4211
  default:
4206
4212
  throw Error(`Unexpected discriminant ${uint8[pos]} for TSMethodSignatureKind`);
4207
4213
  }
@@ -4211,7 +4217,7 @@ function deserializeTSMethodSignature(pos) {
4211
4217
  let start = deserializeU32(pos),
4212
4218
  end = deserializeU32(pos + 4),
4213
4219
  node = {
4214
- type: 'TSMethodSignature',
4220
+ type: "TSMethodSignature",
4215
4221
  key: null,
4216
4222
  computed: deserializeBool(pos + 60),
4217
4223
  optional: deserializeBool(pos + 61),
@@ -4242,7 +4248,7 @@ function deserializeTSConstructSignatureDeclaration(pos) {
4242
4248
  let start = deserializeU32(pos),
4243
4249
  end = deserializeU32(pos + 4),
4244
4250
  node = {
4245
- type: 'TSConstructSignatureDeclaration',
4251
+ type: "TSConstructSignatureDeclaration",
4246
4252
  typeParameters: null,
4247
4253
  params: null,
4248
4254
  returnType: null,
@@ -4260,7 +4266,7 @@ function deserializeTSIndexSignatureName(pos) {
4260
4266
  let start = deserializeU32(pos),
4261
4267
  end = deserializeU32(pos + 4),
4262
4268
  node = {
4263
- type: 'Identifier',
4269
+ type: "Identifier",
4264
4270
  decorators: null,
4265
4271
  name: deserializeStr(pos + 8),
4266
4272
  optional: null,
@@ -4279,7 +4285,7 @@ function deserializeTSInterfaceHeritage(pos) {
4279
4285
  let start = deserializeU32(pos),
4280
4286
  end = deserializeU32(pos + 4),
4281
4287
  node = {
4282
- type: 'TSInterfaceHeritage',
4288
+ type: "TSInterfaceHeritage",
4283
4289
  expression: null,
4284
4290
  typeArguments: null,
4285
4291
  start,
@@ -4295,7 +4301,7 @@ function deserializeTSTypePredicate(pos) {
4295
4301
  let start = deserializeU32(pos),
4296
4302
  end = deserializeU32(pos + 4),
4297
4303
  node = {
4298
- type: 'TSTypePredicate',
4304
+ type: "TSTypePredicate",
4299
4305
  parameterName: null,
4300
4306
  asserts: deserializeBool(pos + 32),
4301
4307
  typeAnnotation: null,
@@ -4328,7 +4334,7 @@ function deserializeTSModuleDeclaration(pos) {
4328
4334
  body = deserializeOptionTSModuleDeclarationBody(pos + 64);
4329
4335
  if (body === null) {
4330
4336
  node = {
4331
- type: 'TSModuleDeclaration',
4337
+ type: "TSModuleDeclaration",
4332
4338
  id: null,
4333
4339
  kind,
4334
4340
  declare,
@@ -4340,7 +4346,7 @@ function deserializeTSModuleDeclaration(pos) {
4340
4346
  node.id = deserializeTSModuleDeclarationName(pos + 8);
4341
4347
  } else {
4342
4348
  node = {
4343
- type: 'TSModuleDeclaration',
4349
+ type: "TSModuleDeclaration",
4344
4350
  id: null,
4345
4351
  body,
4346
4352
  kind,
@@ -4351,13 +4357,13 @@ function deserializeTSModuleDeclaration(pos) {
4351
4357
  range: [start, end],
4352
4358
  };
4353
4359
  let id = deserializeTSModuleDeclarationName(pos + 8);
4354
- if (body.type === 'TSModuleBlock') node.id = id;
4360
+ if (body.type === "TSModuleBlock") node.id = id;
4355
4361
  else {
4356
4362
  let innerId = body.id;
4357
- if (innerId.type === 'Identifier') {
4363
+ if (innerId.type === "Identifier") {
4358
4364
  let start, end;
4359
4365
  node.id = {
4360
- type: 'TSQualifiedName',
4366
+ type: "TSQualifiedName",
4361
4367
  left: id,
4362
4368
  right: innerId,
4363
4369
  start: (start = id.start),
@@ -4371,13 +4377,13 @@ function deserializeTSModuleDeclaration(pos) {
4371
4377
  let { start } = id;
4372
4378
  for (;;) {
4373
4379
  innerId.start = innerId.range[0] = start;
4374
- if (innerId.left.type === 'Identifier') break;
4380
+ if (innerId.left.type === "Identifier") break;
4375
4381
  innerId = innerId.left;
4376
4382
  }
4377
4383
  let end,
4378
4384
  right = innerId.left;
4379
4385
  innerId.left = {
4380
- type: 'TSQualifiedName',
4386
+ type: "TSQualifiedName",
4381
4387
  left: id,
4382
4388
  right,
4383
4389
  start,
@@ -4385,7 +4391,7 @@ function deserializeTSModuleDeclaration(pos) {
4385
4391
  range: [start, end],
4386
4392
  };
4387
4393
  }
4388
- if (Object.hasOwn(body, 'body')) {
4394
+ if (Object.hasOwn(body, "body")) {
4389
4395
  body = body.body;
4390
4396
  node.body = body;
4391
4397
  } else body = null;
@@ -4397,9 +4403,9 @@ function deserializeTSModuleDeclaration(pos) {
4397
4403
  function deserializeTSModuleDeclarationKind(pos) {
4398
4404
  switch (uint8[pos]) {
4399
4405
  case 0:
4400
- return 'module';
4406
+ return "module";
4401
4407
  case 1:
4402
- return 'namespace';
4408
+ return "namespace";
4403
4409
  default:
4404
4410
  throw Error(`Unexpected discriminant ${uint8[pos]} for TSModuleDeclarationKind`);
4405
4411
  }
@@ -4431,7 +4437,7 @@ function deserializeTSGlobalDeclaration(pos) {
4431
4437
  let start = deserializeU32(pos),
4432
4438
  end = deserializeU32(pos + 4),
4433
4439
  node = {
4434
- type: 'TSModuleDeclaration',
4440
+ type: "TSModuleDeclaration",
4435
4441
  id: null,
4436
4442
  body: null,
4437
4443
  kind: null,
@@ -4444,9 +4450,9 @@ function deserializeTSGlobalDeclaration(pos) {
4444
4450
  keywordStart,
4445
4451
  keywordEnd;
4446
4452
  node.id = {
4447
- type: 'Identifier',
4453
+ type: "Identifier",
4448
4454
  decorators: [],
4449
- name: 'global',
4455
+ name: "global",
4450
4456
  optional: false,
4451
4457
  typeAnnotation: null,
4452
4458
  start: (keywordStart = deserializeU32(pos + 8)),
@@ -4454,7 +4460,7 @@ function deserializeTSGlobalDeclaration(pos) {
4454
4460
  range: [keywordStart, keywordEnd],
4455
4461
  };
4456
4462
  node.body = deserializeTSModuleBlock(pos + 16);
4457
- node.kind = 'global';
4463
+ node.kind = "global";
4458
4464
  node.global = true;
4459
4465
  return node;
4460
4466
  }
@@ -4463,7 +4469,7 @@ function deserializeTSModuleBlock(pos) {
4463
4469
  let start = deserializeU32(pos),
4464
4470
  end = deserializeU32(pos + 4),
4465
4471
  node = {
4466
- type: 'TSModuleBlock',
4472
+ type: "TSModuleBlock",
4467
4473
  body: null,
4468
4474
  start,
4469
4475
  end,
@@ -4479,7 +4485,7 @@ function deserializeTSTypeLiteral(pos) {
4479
4485
  let start = deserializeU32(pos),
4480
4486
  end = deserializeU32(pos + 4),
4481
4487
  node = {
4482
- type: 'TSTypeLiteral',
4488
+ type: "TSTypeLiteral",
4483
4489
  members: null,
4484
4490
  start,
4485
4491
  end,
@@ -4493,7 +4499,7 @@ function deserializeTSInferType(pos) {
4493
4499
  let start = deserializeU32(pos),
4494
4500
  end = deserializeU32(pos + 4),
4495
4501
  node = {
4496
- type: 'TSInferType',
4502
+ type: "TSInferType",
4497
4503
  typeParameter: null,
4498
4504
  start,
4499
4505
  end,
@@ -4507,7 +4513,7 @@ function deserializeTSTypeQuery(pos) {
4507
4513
  let start = deserializeU32(pos),
4508
4514
  end = deserializeU32(pos + 4),
4509
4515
  node = {
4510
- type: 'TSTypeQuery',
4516
+ type: "TSTypeQuery",
4511
4517
  exprName: null,
4512
4518
  typeArguments: null,
4513
4519
  start,
@@ -4538,8 +4544,8 @@ function deserializeTSImportType(pos) {
4538
4544
  let start = deserializeU32(pos),
4539
4545
  end = deserializeU32(pos + 4),
4540
4546
  node = {
4541
- type: 'TSImportType',
4542
- argument: null,
4547
+ type: "TSImportType",
4548
+ source: null,
4543
4549
  options: null,
4544
4550
  qualifier: null,
4545
4551
  typeArguments: null,
@@ -4547,10 +4553,10 @@ function deserializeTSImportType(pos) {
4547
4553
  end,
4548
4554
  range: [start, end],
4549
4555
  };
4550
- node.argument = deserializeTSType(pos + 8);
4551
- node.options = deserializeOptionBoxObjectExpression(pos + 24);
4552
- node.qualifier = deserializeOptionTSImportTypeQualifier(pos + 32);
4553
- node.typeArguments = deserializeOptionBoxTSTypeParameterInstantiation(pos + 48);
4556
+ node.source = deserializeStringLiteral(pos + 8);
4557
+ node.options = deserializeOptionBoxObjectExpression(pos + 56);
4558
+ node.qualifier = deserializeOptionTSImportTypeQualifier(pos + 64);
4559
+ node.typeArguments = deserializeOptionBoxTSTypeParameterInstantiation(pos + 80);
4554
4560
  return node;
4555
4561
  }
4556
4562
 
@@ -4569,7 +4575,7 @@ function deserializeTSImportTypeQualifiedName(pos) {
4569
4575
  let start = deserializeU32(pos),
4570
4576
  end = deserializeU32(pos + 4),
4571
4577
  node = {
4572
- type: 'TSQualifiedName',
4578
+ type: "TSQualifiedName",
4573
4579
  left: null,
4574
4580
  right: null,
4575
4581
  start,
@@ -4585,7 +4591,7 @@ function deserializeTSFunctionType(pos) {
4585
4591
  let start = deserializeU32(pos),
4586
4592
  end = deserializeU32(pos + 4),
4587
4593
  node = {
4588
- type: 'TSFunctionType',
4594
+ type: "TSFunctionType",
4589
4595
  typeParameters: null,
4590
4596
  params: null,
4591
4597
  returnType: null,
@@ -4606,7 +4612,7 @@ function deserializeTSConstructorType(pos) {
4606
4612
  let start = deserializeU32(pos),
4607
4613
  end = deserializeU32(pos + 4),
4608
4614
  node = {
4609
- type: 'TSConstructorType',
4615
+ type: "TSConstructorType",
4610
4616
  abstract: deserializeBool(pos + 36),
4611
4617
  typeParameters: null,
4612
4618
  params: null,
@@ -4625,7 +4631,7 @@ function deserializeTSMappedType(pos) {
4625
4631
  let start = deserializeU32(pos),
4626
4632
  end = deserializeU32(pos + 4),
4627
4633
  node = {
4628
- type: 'TSMappedType',
4634
+ type: "TSMappedType",
4629
4635
  key: null,
4630
4636
  constraint: null,
4631
4637
  nameType: null,
@@ -4654,9 +4660,9 @@ function deserializeTSMappedTypeModifierOperator(pos) {
4654
4660
  case 0:
4655
4661
  return true;
4656
4662
  case 1:
4657
- return '+';
4663
+ return "+";
4658
4664
  case 2:
4659
- return '-';
4665
+ return "-";
4660
4666
  default:
4661
4667
  throw Error(`Unexpected discriminant ${uint8[pos]} for TSMappedTypeModifierOperator`);
4662
4668
  }
@@ -4666,7 +4672,7 @@ function deserializeTSTemplateLiteralType(pos) {
4666
4672
  let start = deserializeU32(pos),
4667
4673
  end = deserializeU32(pos + 4),
4668
4674
  node = {
4669
- type: 'TSTemplateLiteralType',
4675
+ type: "TSTemplateLiteralType",
4670
4676
  quasis: null,
4671
4677
  types: null,
4672
4678
  start,
@@ -4682,7 +4688,7 @@ function deserializeTSAsExpression(pos) {
4682
4688
  let start = deserializeU32(pos),
4683
4689
  end = deserializeU32(pos + 4),
4684
4690
  node = {
4685
- type: 'TSAsExpression',
4691
+ type: "TSAsExpression",
4686
4692
  expression: null,
4687
4693
  typeAnnotation: null,
4688
4694
  start,
@@ -4698,7 +4704,7 @@ function deserializeTSSatisfiesExpression(pos) {
4698
4704
  let start = deserializeU32(pos),
4699
4705
  end = deserializeU32(pos + 4),
4700
4706
  node = {
4701
- type: 'TSSatisfiesExpression',
4707
+ type: "TSSatisfiesExpression",
4702
4708
  expression: null,
4703
4709
  typeAnnotation: null,
4704
4710
  start,
@@ -4714,7 +4720,7 @@ function deserializeTSTypeAssertion(pos) {
4714
4720
  let start = deserializeU32(pos),
4715
4721
  end = deserializeU32(pos + 4),
4716
4722
  node = {
4717
- type: 'TSTypeAssertion',
4723
+ type: "TSTypeAssertion",
4718
4724
  typeAnnotation: null,
4719
4725
  expression: null,
4720
4726
  start,
@@ -4730,7 +4736,7 @@ function deserializeTSImportEqualsDeclaration(pos) {
4730
4736
  let start = deserializeU32(pos),
4731
4737
  end = deserializeU32(pos + 4),
4732
4738
  node = {
4733
- type: 'TSImportEqualsDeclaration',
4739
+ type: "TSImportEqualsDeclaration",
4734
4740
  id: null,
4735
4741
  moduleReference: null,
4736
4742
  importKind: deserializeImportOrExportKind(pos + 56),
@@ -4762,7 +4768,7 @@ function deserializeTSExternalModuleReference(pos) {
4762
4768
  let start = deserializeU32(pos),
4763
4769
  end = deserializeU32(pos + 4),
4764
4770
  node = {
4765
- type: 'TSExternalModuleReference',
4771
+ type: "TSExternalModuleReference",
4766
4772
  expression: null,
4767
4773
  start,
4768
4774
  end,
@@ -4776,7 +4782,7 @@ function deserializeTSNonNullExpression(pos) {
4776
4782
  let start = deserializeU32(pos),
4777
4783
  end = deserializeU32(pos + 4),
4778
4784
  node = {
4779
- type: 'TSNonNullExpression',
4785
+ type: "TSNonNullExpression",
4780
4786
  expression: null,
4781
4787
  start,
4782
4788
  end,
@@ -4790,7 +4796,7 @@ function deserializeDecorator(pos) {
4790
4796
  let start = deserializeU32(pos),
4791
4797
  end = deserializeU32(pos + 4),
4792
4798
  node = {
4793
- type: 'Decorator',
4799
+ type: "Decorator",
4794
4800
  expression: null,
4795
4801
  start,
4796
4802
  end,
@@ -4804,7 +4810,7 @@ function deserializeTSExportAssignment(pos) {
4804
4810
  let start = deserializeU32(pos),
4805
4811
  end = deserializeU32(pos + 4),
4806
4812
  node = {
4807
- type: 'TSExportAssignment',
4813
+ type: "TSExportAssignment",
4808
4814
  expression: null,
4809
4815
  start,
4810
4816
  end,
@@ -4818,7 +4824,7 @@ function deserializeTSNamespaceExportDeclaration(pos) {
4818
4824
  let start = deserializeU32(pos),
4819
4825
  end = deserializeU32(pos + 4),
4820
4826
  node = {
4821
- type: 'TSNamespaceExportDeclaration',
4827
+ type: "TSNamespaceExportDeclaration",
4822
4828
  id: null,
4823
4829
  start,
4824
4830
  end,
@@ -4832,7 +4838,7 @@ function deserializeTSInstantiationExpression(pos) {
4832
4838
  let start = deserializeU32(pos),
4833
4839
  end = deserializeU32(pos + 4),
4834
4840
  node = {
4835
- type: 'TSInstantiationExpression',
4841
+ type: "TSInstantiationExpression",
4836
4842
  expression: null,
4837
4843
  typeArguments: null,
4838
4844
  start,
@@ -4847,9 +4853,9 @@ function deserializeTSInstantiationExpression(pos) {
4847
4853
  function deserializeImportOrExportKind(pos) {
4848
4854
  switch (uint8[pos]) {
4849
4855
  case 0:
4850
- return 'value';
4856
+ return "value";
4851
4857
  case 1:
4852
- return 'type';
4858
+ return "type";
4853
4859
  default:
4854
4860
  throw Error(`Unexpected discriminant ${uint8[pos]} for ImportOrExportKind`);
4855
4861
  }
@@ -4859,7 +4865,7 @@ function deserializeJSDocNullableType(pos) {
4859
4865
  let start = deserializeU32(pos),
4860
4866
  end = deserializeU32(pos + 4),
4861
4867
  node = {
4862
- type: 'TSJSDocNullableType',
4868
+ type: "TSJSDocNullableType",
4863
4869
  typeAnnotation: null,
4864
4870
  postfix: deserializeBool(pos + 24),
4865
4871
  start,
@@ -4874,7 +4880,7 @@ function deserializeJSDocNonNullableType(pos) {
4874
4880
  let start = deserializeU32(pos),
4875
4881
  end = deserializeU32(pos + 4),
4876
4882
  node = {
4877
- type: 'TSJSDocNonNullableType',
4883
+ type: "TSJSDocNonNullableType",
4878
4884
  typeAnnotation: null,
4879
4885
  postfix: deserializeBool(pos + 24),
4880
4886
  start,
@@ -4889,7 +4895,7 @@ function deserializeJSDocUnknownType(pos) {
4889
4895
  let start = deserializeU32(pos),
4890
4896
  end = deserializeU32(pos + 4);
4891
4897
  return {
4892
- type: 'TSJSDocUnknownType',
4898
+ type: "TSJSDocUnknownType",
4893
4899
  start,
4894
4900
  end,
4895
4901
  range: [start, end],
@@ -4899,9 +4905,9 @@ function deserializeJSDocUnknownType(pos) {
4899
4905
  function deserializeCommentKind(pos) {
4900
4906
  switch (uint8[pos]) {
4901
4907
  case 0:
4902
- return 'Line';
4908
+ return "Line";
4903
4909
  case 1:
4904
- return 'Block';
4910
+ return "Block";
4905
4911
  default:
4906
4912
  throw Error(`Unexpected discriminant ${uint8[pos]} for CommentKind`);
4907
4913
  }
@@ -4913,7 +4919,7 @@ function deserializeComment(pos) {
4913
4919
  end = deserializeU32(pos + 4);
4914
4920
  return {
4915
4921
  type,
4916
- value: sourceText.slice(start + 2, end - (type === 'Line' ? 0 : 2)),
4922
+ value: sourceText.slice(start + 2, end - (type === "Line" ? 0 : 2)),
4917
4923
  start,
4918
4924
  end,
4919
4925
  range: [start, end],
@@ -4944,7 +4950,7 @@ function deserializeImportImportName(pos) {
4944
4950
  case 0:
4945
4951
  var nameSpan = deserializeNameSpan(pos + 8);
4946
4952
  return {
4947
- kind: 'Name',
4953
+ kind: "Name",
4948
4954
  name: nameSpan.value,
4949
4955
  start: nameSpan.start,
4950
4956
  end: nameSpan.end,
@@ -4952,7 +4958,7 @@ function deserializeImportImportName(pos) {
4952
4958
  };
4953
4959
  case 1:
4954
4960
  return {
4955
- kind: 'NamespaceObject',
4961
+ kind: "NamespaceObject",
4956
4962
  name: null,
4957
4963
  start: null,
4958
4964
  end: null,
@@ -4961,7 +4967,7 @@ function deserializeImportImportName(pos) {
4961
4967
  case 2:
4962
4968
  var { start, end } = deserializeSpan(pos + 8);
4963
4969
  return {
4964
- kind: 'Default',
4970
+ kind: "Default",
4965
4971
  name: null,
4966
4972
  start,
4967
4973
  end,
@@ -4992,7 +4998,7 @@ function deserializeExportImportName(pos) {
4992
4998
  case 0:
4993
4999
  var nameSpan = deserializeNameSpan(pos + 8);
4994
5000
  return {
4995
- kind: 'Name',
5001
+ kind: "Name",
4996
5002
  name: nameSpan.value,
4997
5003
  start: nameSpan.start,
4998
5004
  end: nameSpan.end,
@@ -5000,7 +5006,7 @@ function deserializeExportImportName(pos) {
5000
5006
  };
5001
5007
  case 1:
5002
5008
  return {
5003
- kind: 'All',
5009
+ kind: "All",
5004
5010
  name: null,
5005
5011
  start: null,
5006
5012
  end: null,
@@ -5008,7 +5014,7 @@ function deserializeExportImportName(pos) {
5008
5014
  };
5009
5015
  case 2:
5010
5016
  return {
5011
- kind: 'AllButDefault',
5017
+ kind: "AllButDefault",
5012
5018
  name: null,
5013
5019
  start: null,
5014
5020
  end: null,
@@ -5016,7 +5022,7 @@ function deserializeExportImportName(pos) {
5016
5022
  };
5017
5023
  case 3:
5018
5024
  return {
5019
- kind: 'None',
5025
+ kind: "None",
5020
5026
  name: null,
5021
5027
  start: null,
5022
5028
  end: null,
@@ -5032,7 +5038,7 @@ function deserializeExportExportName(pos) {
5032
5038
  case 0:
5033
5039
  var nameSpan = deserializeNameSpan(pos + 8);
5034
5040
  return {
5035
- kind: 'Name',
5041
+ kind: "Name",
5036
5042
  name: nameSpan.value,
5037
5043
  start: nameSpan.start,
5038
5044
  end: nameSpan.end,
@@ -5041,7 +5047,7 @@ function deserializeExportExportName(pos) {
5041
5047
  case 1:
5042
5048
  var { start, end } = deserializeSpan(pos + 8);
5043
5049
  return {
5044
- kind: 'Default',
5050
+ kind: "Default",
5045
5051
  name: null,
5046
5052
  start,
5047
5053
  end,
@@ -5049,7 +5055,7 @@ function deserializeExportExportName(pos) {
5049
5055
  };
5050
5056
  case 2:
5051
5057
  return {
5052
- kind: 'None',
5058
+ kind: "None",
5053
5059
  name: null,
5054
5060
  start: null,
5055
5061
  end: null,
@@ -5065,7 +5071,7 @@ function deserializeExportLocalName(pos) {
5065
5071
  case 0:
5066
5072
  var nameSpan = deserializeNameSpan(pos + 8);
5067
5073
  return {
5068
- kind: 'Name',
5074
+ kind: "Name",
5069
5075
  name: nameSpan.value,
5070
5076
  start: nameSpan.start,
5071
5077
  end: nameSpan.end,
@@ -5074,7 +5080,7 @@ function deserializeExportLocalName(pos) {
5074
5080
  case 1:
5075
5081
  var nameSpan = deserializeNameSpan(pos + 8);
5076
5082
  return {
5077
- kind: 'Default',
5083
+ kind: "Default",
5078
5084
  name: nameSpan.value,
5079
5085
  start: nameSpan.start,
5080
5086
  end: nameSpan.end,
@@ -5082,7 +5088,7 @@ function deserializeExportLocalName(pos) {
5082
5088
  };
5083
5089
  case 2:
5084
5090
  return {
5085
- kind: 'None',
5091
+ kind: "None",
5086
5092
  name: null,
5087
5093
  start: null,
5088
5094
  end: null,
@@ -5107,37 +5113,37 @@ function deserializeDynamicImport(pos) {
5107
5113
  function deserializeAssignmentOperator(pos) {
5108
5114
  switch (uint8[pos]) {
5109
5115
  case 0:
5110
- return '=';
5116
+ return "=";
5111
5117
  case 1:
5112
- return '+=';
5118
+ return "+=";
5113
5119
  case 2:
5114
- return '-=';
5120
+ return "-=";
5115
5121
  case 3:
5116
- return '*=';
5122
+ return "*=";
5117
5123
  case 4:
5118
- return '/=';
5124
+ return "/=";
5119
5125
  case 5:
5120
- return '%=';
5126
+ return "%=";
5121
5127
  case 6:
5122
- return '**=';
5128
+ return "**=";
5123
5129
  case 7:
5124
- return '<<=';
5130
+ return "<<=";
5125
5131
  case 8:
5126
- return '>>=';
5132
+ return ">>=";
5127
5133
  case 9:
5128
- return '>>>=';
5134
+ return ">>>=";
5129
5135
  case 10:
5130
- return '|=';
5136
+ return "|=";
5131
5137
  case 11:
5132
- return '^=';
5138
+ return "^=";
5133
5139
  case 12:
5134
- return '&=';
5140
+ return "&=";
5135
5141
  case 13:
5136
- return '||=';
5142
+ return "||=";
5137
5143
  case 14:
5138
- return '&&=';
5144
+ return "&&=";
5139
5145
  case 15:
5140
- return '??=';
5146
+ return "??=";
5141
5147
  default:
5142
5148
  throw Error(`Unexpected discriminant ${uint8[pos]} for AssignmentOperator`);
5143
5149
  }
@@ -5146,49 +5152,49 @@ function deserializeAssignmentOperator(pos) {
5146
5152
  function deserializeBinaryOperator(pos) {
5147
5153
  switch (uint8[pos]) {
5148
5154
  case 0:
5149
- return '==';
5155
+ return "==";
5150
5156
  case 1:
5151
- return '!=';
5157
+ return "!=";
5152
5158
  case 2:
5153
- return '===';
5159
+ return "===";
5154
5160
  case 3:
5155
- return '!==';
5161
+ return "!==";
5156
5162
  case 4:
5157
- return '<';
5163
+ return "<";
5158
5164
  case 5:
5159
- return '<=';
5165
+ return "<=";
5160
5166
  case 6:
5161
- return '>';
5167
+ return ">";
5162
5168
  case 7:
5163
- return '>=';
5169
+ return ">=";
5164
5170
  case 8:
5165
- return '+';
5171
+ return "+";
5166
5172
  case 9:
5167
- return '-';
5173
+ return "-";
5168
5174
  case 10:
5169
- return '*';
5175
+ return "*";
5170
5176
  case 11:
5171
- return '/';
5177
+ return "/";
5172
5178
  case 12:
5173
- return '%';
5179
+ return "%";
5174
5180
  case 13:
5175
- return '**';
5181
+ return "**";
5176
5182
  case 14:
5177
- return '<<';
5183
+ return "<<";
5178
5184
  case 15:
5179
- return '>>';
5185
+ return ">>";
5180
5186
  case 16:
5181
- return '>>>';
5187
+ return ">>>";
5182
5188
  case 17:
5183
- return '|';
5189
+ return "|";
5184
5190
  case 18:
5185
- return '^';
5191
+ return "^";
5186
5192
  case 19:
5187
- return '&';
5193
+ return "&";
5188
5194
  case 20:
5189
- return 'in';
5195
+ return "in";
5190
5196
  case 21:
5191
- return 'instanceof';
5197
+ return "instanceof";
5192
5198
  default:
5193
5199
  throw Error(`Unexpected discriminant ${uint8[pos]} for BinaryOperator`);
5194
5200
  }
@@ -5197,11 +5203,11 @@ function deserializeBinaryOperator(pos) {
5197
5203
  function deserializeLogicalOperator(pos) {
5198
5204
  switch (uint8[pos]) {
5199
5205
  case 0:
5200
- return '||';
5206
+ return "||";
5201
5207
  case 1:
5202
- return '&&';
5208
+ return "&&";
5203
5209
  case 2:
5204
- return '??';
5210
+ return "??";
5205
5211
  default:
5206
5212
  throw Error(`Unexpected discriminant ${uint8[pos]} for LogicalOperator`);
5207
5213
  }
@@ -5210,19 +5216,19 @@ function deserializeLogicalOperator(pos) {
5210
5216
  function deserializeUnaryOperator(pos) {
5211
5217
  switch (uint8[pos]) {
5212
5218
  case 0:
5213
- return '+';
5219
+ return "+";
5214
5220
  case 1:
5215
- return '-';
5221
+ return "-";
5216
5222
  case 2:
5217
- return '!';
5223
+ return "!";
5218
5224
  case 3:
5219
- return '~';
5225
+ return "~";
5220
5226
  case 4:
5221
- return 'typeof';
5227
+ return "typeof";
5222
5228
  case 5:
5223
- return 'void';
5229
+ return "void";
5224
5230
  case 6:
5225
- return 'delete';
5231
+ return "delete";
5226
5232
  default:
5227
5233
  throw Error(`Unexpected discriminant ${uint8[pos]} for UnaryOperator`);
5228
5234
  }
@@ -5231,9 +5237,9 @@ function deserializeUnaryOperator(pos) {
5231
5237
  function deserializeUpdateOperator(pos) {
5232
5238
  switch (uint8[pos]) {
5233
5239
  case 0:
5234
- return '++';
5240
+ return "++";
5235
5241
  case 1:
5236
- return '--';
5242
+ return "--";
5237
5243
  default:
5238
5244
  throw Error(`Unexpected discriminant ${uint8[pos]} for UpdateOperator`);
5239
5245
  }
@@ -5249,9 +5255,9 @@ function deserializeSpan(pos) {
5249
5255
  function deserializeModuleKind(pos) {
5250
5256
  switch (uint8[pos]) {
5251
5257
  case 0:
5252
- return 'script';
5258
+ return "script";
5253
5259
  case 1:
5254
- return 'module';
5260
+ return "module";
5255
5261
  default:
5256
5262
  throw Error(`Unexpected discriminant ${uint8[pos]} for ModuleKind`);
5257
5263
  }
@@ -5279,11 +5285,11 @@ function deserializeError(pos) {
5279
5285
  function deserializeErrorSeverity(pos) {
5280
5286
  switch (uint8[pos]) {
5281
5287
  case 0:
5282
- return 'Error';
5288
+ return "Error";
5283
5289
  case 1:
5284
- return 'Warning';
5290
+ return "Warning";
5285
5291
  case 2:
5286
- return 'Advice';
5292
+ return "Advice";
5287
5293
  default:
5288
5294
  throw Error(`Unexpected discriminant ${uint8[pos]} for ErrorSeverity`);
5289
5295
  }
@@ -5344,7 +5350,7 @@ function deserializeU8(pos) {
5344
5350
  function deserializeStr(pos) {
5345
5351
  let pos32 = pos >> 2,
5346
5352
  len = uint32[pos32 + 2];
5347
- if (len === 0) return '';
5353
+ if (len === 0) return "";
5348
5354
  pos = uint32[pos32];
5349
5355
  if (sourceIsAscii && pos < sourceByteLen) return sourceText.substr(pos, len);
5350
5356
  // Longer strings use `TextDecoder`
@@ -5352,7 +5358,7 @@ function deserializeStr(pos) {
5352
5358
  let end = pos + len;
5353
5359
  if (len > 50) return decodeStr(uint8.subarray(pos, end));
5354
5360
  // Shorter strings decode by hand to avoid native call
5355
- let out = '',
5361
+ let out = "",
5356
5362
  c;
5357
5363
  do {
5358
5364
  c = uint8[pos++];