oxc-parser 0.110.0 → 0.111.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.
@@ -1,24 +1,24 @@
1
1
  // Auto-generated code, DO NOT EDIT DIRECTLY!
2
2
  // To edit this generated file you have to edit `tasks/ast_tools/src/generators/raw_transfer.rs`.
3
3
 
4
- let uint8, uint32, float64, sourceText, sourceIsAscii, sourceByteLen;
4
+ let uint8, uint32, float64, sourceText, sourceIsAscii, sourceEndPos;
5
5
 
6
6
  const textDecoder = new TextDecoder("utf-8", { ignoreBOM: true }),
7
7
  decodeStr = textDecoder.decode.bind(textDecoder),
8
8
  { fromCodePoint } = String;
9
9
 
10
10
  export function deserialize(buffer, sourceText, sourceByteLen) {
11
+ sourceEndPos = sourceByteLen;
11
12
  let data = deserializeWith(buffer, sourceText, sourceByteLen, null, deserializeRawTransferData);
12
13
  resetBuffer();
13
14
  return data;
14
15
  }
15
16
 
16
- function deserializeWith(buffer, sourceTextInput, sourceByteLenInput, getLocInput, deserialize) {
17
+ function deserializeWith(buffer, sourceTextInput, sourceByteLen, getLocInput, deserialize) {
17
18
  uint8 = buffer;
18
19
  uint32 = buffer.uint32;
19
20
  float64 = buffer.float64;
20
21
  sourceText = sourceTextInput;
21
- sourceByteLen = sourceByteLenInput;
22
22
  sourceIsAscii = sourceText.length === sourceByteLen;
23
23
  return deserialize(uint32[536870902]);
24
24
  }
@@ -157,68 +157,60 @@ function deserializeExpression(pos) {
157
157
  }
158
158
 
159
159
  function deserializeIdentifierName(pos) {
160
- let start = deserializeU32(pos),
161
- end = deserializeU32(pos + 4),
162
- node = {
163
- type: "Identifier",
164
- decorators: null,
165
- name: deserializeStr(pos + 8),
166
- optional: null,
167
- typeAnnotation: null,
168
- start,
169
- end,
170
- };
160
+ let node = {
161
+ type: "Identifier",
162
+ decorators: null,
163
+ name: deserializeStr(pos + 8),
164
+ optional: null,
165
+ typeAnnotation: null,
166
+ start: deserializeU32(pos),
167
+ end: deserializeU32(pos + 4),
168
+ };
171
169
  node.decorators = [];
172
170
  node.optional = false;
173
171
  return node;
174
172
  }
175
173
 
176
174
  function deserializeIdentifierReference(pos) {
177
- let start = deserializeU32(pos),
178
- end = deserializeU32(pos + 4),
179
- node = {
180
- type: "Identifier",
181
- decorators: null,
182
- name: deserializeStr(pos + 8),
183
- optional: null,
184
- typeAnnotation: null,
185
- start,
186
- end,
187
- };
175
+ let node = {
176
+ type: "Identifier",
177
+ decorators: null,
178
+ name: deserializeStr(pos + 8),
179
+ optional: null,
180
+ typeAnnotation: null,
181
+ start: deserializeU32(pos),
182
+ end: deserializeU32(pos + 4),
183
+ };
188
184
  node.decorators = [];
189
185
  node.optional = false;
190
186
  return node;
191
187
  }
192
188
 
193
189
  function deserializeBindingIdentifier(pos) {
194
- let start = deserializeU32(pos),
195
- end = deserializeU32(pos + 4),
196
- node = {
197
- type: "Identifier",
198
- decorators: null,
199
- name: deserializeStr(pos + 8),
200
- optional: null,
201
- typeAnnotation: null,
202
- start,
203
- end,
204
- };
190
+ let node = {
191
+ type: "Identifier",
192
+ decorators: null,
193
+ name: deserializeStr(pos + 8),
194
+ optional: null,
195
+ typeAnnotation: null,
196
+ start: deserializeU32(pos),
197
+ end: deserializeU32(pos + 4),
198
+ };
205
199
  node.decorators = [];
206
200
  node.optional = false;
207
201
  return node;
208
202
  }
209
203
 
210
204
  function deserializeLabelIdentifier(pos) {
211
- let start = deserializeU32(pos),
212
- end = deserializeU32(pos + 4),
213
- node = {
214
- type: "Identifier",
215
- decorators: null,
216
- name: deserializeStr(pos + 8),
217
- optional: null,
218
- typeAnnotation: null,
219
- start,
220
- end,
221
- };
205
+ let node = {
206
+ type: "Identifier",
207
+ decorators: null,
208
+ name: deserializeStr(pos + 8),
209
+ optional: null,
210
+ typeAnnotation: null,
211
+ start: deserializeU32(pos),
212
+ end: deserializeU32(pos + 4),
213
+ };
222
214
  node.decorators = [];
223
215
  node.optional = false;
224
216
  return node;
@@ -367,20 +359,18 @@ function deserializeObjectPropertyKind(pos) {
367
359
  }
368
360
 
369
361
  function deserializeObjectProperty(pos) {
370
- let start = deserializeU32(pos),
371
- end = deserializeU32(pos + 4),
372
- node = {
373
- type: "Property",
374
- kind: deserializePropertyKind(pos + 40),
375
- key: null,
376
- value: null,
377
- method: deserializeBool(pos + 41),
378
- shorthand: deserializeBool(pos + 42),
379
- computed: deserializeBool(pos + 43),
380
- optional: null,
381
- start,
382
- end,
383
- };
362
+ let node = {
363
+ type: "Property",
364
+ kind: deserializePropertyKind(pos + 40),
365
+ key: null,
366
+ value: null,
367
+ method: deserializeBool(pos + 41),
368
+ shorthand: deserializeBool(pos + 42),
369
+ computed: deserializeBool(pos + 43),
370
+ optional: null,
371
+ start: deserializeU32(pos),
372
+ end: deserializeU32(pos + 4),
373
+ };
384
374
  node.key = deserializePropertyKey(pos + 8);
385
375
  node.value = deserializeExpression(pos + 24);
386
376
  node.optional = false;
@@ -552,17 +542,15 @@ function deserializeTemplateElementValue(pos) {
552
542
  }
553
543
 
554
544
  function deserializeComputedMemberExpression(pos) {
555
- let start = deserializeU32(pos),
556
- end = deserializeU32(pos + 4),
557
- node = {
558
- type: "MemberExpression",
559
- object: null,
560
- property: null,
561
- optional: deserializeBool(pos + 40),
562
- computed: null,
563
- start,
564
- end,
565
- };
545
+ let node = {
546
+ type: "MemberExpression",
547
+ object: null,
548
+ property: null,
549
+ optional: deserializeBool(pos + 40),
550
+ computed: null,
551
+ start: deserializeU32(pos),
552
+ end: deserializeU32(pos + 4),
553
+ };
566
554
  node.object = deserializeExpression(pos + 8);
567
555
  node.property = deserializeExpression(pos + 24);
568
556
  node.computed = true;
@@ -570,17 +558,15 @@ function deserializeComputedMemberExpression(pos) {
570
558
  }
571
559
 
572
560
  function deserializeStaticMemberExpression(pos) {
573
- let start = deserializeU32(pos),
574
- end = deserializeU32(pos + 4),
575
- node = {
576
- type: "MemberExpression",
577
- object: null,
578
- property: null,
579
- optional: deserializeBool(pos + 48),
580
- computed: null,
581
- start,
582
- end,
583
- };
561
+ let node = {
562
+ type: "MemberExpression",
563
+ object: null,
564
+ property: null,
565
+ optional: deserializeBool(pos + 48),
566
+ computed: null,
567
+ start: deserializeU32(pos),
568
+ end: deserializeU32(pos + 4),
569
+ };
584
570
  node.object = deserializeExpression(pos + 8);
585
571
  node.property = deserializeIdentifierName(pos + 24);
586
572
  node.computed = false;
@@ -588,17 +574,15 @@ function deserializeStaticMemberExpression(pos) {
588
574
  }
589
575
 
590
576
  function deserializePrivateFieldExpression(pos) {
591
- let start = deserializeU32(pos),
592
- end = deserializeU32(pos + 4),
593
- node = {
594
- type: "MemberExpression",
595
- object: null,
596
- property: null,
597
- optional: deserializeBool(pos + 48),
598
- computed: null,
599
- start,
600
- end,
601
- };
577
+ let node = {
578
+ type: "MemberExpression",
579
+ object: null,
580
+ property: null,
581
+ optional: deserializeBool(pos + 48),
582
+ computed: null,
583
+ start: deserializeU32(pos),
584
+ end: deserializeU32(pos + 4),
585
+ };
602
586
  node.object = deserializeExpression(pos + 8);
603
587
  node.property = deserializePrivateIdentifier(pos + 24);
604
588
  node.computed = false;
@@ -606,17 +590,15 @@ function deserializePrivateFieldExpression(pos) {
606
590
  }
607
591
 
608
592
  function deserializeCallExpression(pos) {
609
- let start = deserializeU32(pos),
610
- end = deserializeU32(pos + 4),
611
- node = {
612
- type: "CallExpression",
613
- callee: null,
614
- typeArguments: null,
615
- arguments: null,
616
- optional: deserializeBool(pos + 56),
617
- start,
618
- end,
619
- };
593
+ let node = {
594
+ type: "CallExpression",
595
+ callee: null,
596
+ typeArguments: null,
597
+ arguments: null,
598
+ optional: deserializeBool(pos + 56),
599
+ start: deserializeU32(pos),
600
+ end: deserializeU32(pos + 4),
601
+ };
620
602
  node.callee = deserializeExpression(pos + 8);
621
603
  node.typeArguments = deserializeOptionBoxTSTypeParameterInstantiation(pos + 24);
622
604
  node.arguments = deserializeVecArgument(pos + 32);
@@ -758,47 +740,41 @@ function deserializeArgument(pos) {
758
740
  }
759
741
 
760
742
  function deserializeUpdateExpression(pos) {
761
- let start = deserializeU32(pos),
762
- end = deserializeU32(pos + 4),
763
- node = {
764
- type: "UpdateExpression",
765
- operator: deserializeUpdateOperator(pos + 24),
766
- prefix: deserializeBool(pos + 25),
767
- argument: null,
768
- start,
769
- end,
770
- };
743
+ let node = {
744
+ type: "UpdateExpression",
745
+ operator: deserializeUpdateOperator(pos + 24),
746
+ prefix: deserializeBool(pos + 25),
747
+ argument: null,
748
+ start: deserializeU32(pos),
749
+ end: deserializeU32(pos + 4),
750
+ };
771
751
  node.argument = deserializeSimpleAssignmentTarget(pos + 8);
772
752
  return node;
773
753
  }
774
754
 
775
755
  function deserializeUnaryExpression(pos) {
776
- let start = deserializeU32(pos),
777
- end = deserializeU32(pos + 4),
778
- node = {
779
- type: "UnaryExpression",
780
- operator: deserializeUnaryOperator(pos + 24),
781
- argument: null,
782
- prefix: null,
783
- start,
784
- end,
785
- };
756
+ let node = {
757
+ type: "UnaryExpression",
758
+ operator: deserializeUnaryOperator(pos + 24),
759
+ argument: null,
760
+ prefix: null,
761
+ start: deserializeU32(pos),
762
+ end: deserializeU32(pos + 4),
763
+ };
786
764
  node.argument = deserializeExpression(pos + 8);
787
765
  node.prefix = true;
788
766
  return node;
789
767
  }
790
768
 
791
769
  function deserializeBinaryExpression(pos) {
792
- let start = deserializeU32(pos),
793
- end = deserializeU32(pos + 4),
794
- node = {
795
- type: "BinaryExpression",
796
- left: null,
797
- operator: deserializeBinaryOperator(pos + 40),
798
- right: null,
799
- start,
800
- end,
801
- };
770
+ let node = {
771
+ type: "BinaryExpression",
772
+ left: null,
773
+ operator: deserializeBinaryOperator(pos + 40),
774
+ right: null,
775
+ start: deserializeU32(pos),
776
+ end: deserializeU32(pos + 4),
777
+ };
802
778
  node.left = deserializeExpression(pos + 8);
803
779
  node.right = deserializeExpression(pos + 24);
804
780
  return node;
@@ -820,16 +796,14 @@ function deserializePrivateInExpression(pos) {
820
796
  }
821
797
 
822
798
  function deserializeLogicalExpression(pos) {
823
- let start = deserializeU32(pos),
824
- end = deserializeU32(pos + 4),
825
- node = {
826
- type: "LogicalExpression",
827
- left: null,
828
- operator: deserializeLogicalOperator(pos + 40),
829
- right: null,
830
- start,
831
- end,
832
- };
799
+ let node = {
800
+ type: "LogicalExpression",
801
+ left: null,
802
+ operator: deserializeLogicalOperator(pos + 40),
803
+ right: null,
804
+ start: deserializeU32(pos),
805
+ end: deserializeU32(pos + 4),
806
+ };
833
807
  node.left = deserializeExpression(pos + 8);
834
808
  node.right = deserializeExpression(pos + 24);
835
809
  return node;
@@ -851,16 +825,14 @@ function deserializeConditionalExpression(pos) {
851
825
  }
852
826
 
853
827
  function deserializeAssignmentExpression(pos) {
854
- let start = deserializeU32(pos),
855
- end = deserializeU32(pos + 4),
856
- node = {
857
- type: "AssignmentExpression",
858
- operator: deserializeAssignmentOperator(pos + 40),
859
- left: null,
860
- right: null,
861
- start,
862
- end,
863
- };
828
+ let node = {
829
+ type: "AssignmentExpression",
830
+ operator: deserializeAssignmentOperator(pos + 40),
831
+ left: null,
832
+ right: null,
833
+ start: deserializeU32(pos),
834
+ end: deserializeU32(pos + 4),
835
+ };
864
836
  node.left = deserializeAssignmentTarget(pos + 8);
865
837
  node.right = deserializeExpression(pos + 24);
866
838
  return node;
@@ -1077,20 +1049,18 @@ function deserializeAssignmentTargetPropertyIdentifier(pos) {
1077
1049
  }
1078
1050
 
1079
1051
  function deserializeAssignmentTargetPropertyProperty(pos) {
1080
- let start = deserializeU32(pos),
1081
- end = deserializeU32(pos + 4),
1082
- node = {
1083
- type: "Property",
1084
- kind: null,
1085
- key: null,
1086
- value: null,
1087
- method: null,
1088
- shorthand: null,
1089
- computed: deserializeBool(pos + 40),
1090
- optional: null,
1091
- start,
1092
- end,
1093
- };
1052
+ let node = {
1053
+ type: "Property",
1054
+ kind: null,
1055
+ key: null,
1056
+ value: null,
1057
+ method: null,
1058
+ shorthand: null,
1059
+ computed: deserializeBool(pos + 40),
1060
+ optional: null,
1061
+ start: deserializeU32(pos),
1062
+ end: deserializeU32(pos + 4),
1063
+ };
1094
1064
  node.kind = "init";
1095
1065
  node.key = deserializePropertyKey(pos + 8);
1096
1066
  node.value = deserializeAssignmentTargetMaybeDefault(pos + 24);
@@ -1244,27 +1214,23 @@ function deserializeStatement(pos) {
1244
1214
  }
1245
1215
 
1246
1216
  function deserializeDirective(pos) {
1247
- let start = deserializeU32(pos),
1248
- end = deserializeU32(pos + 4),
1249
- node = {
1250
- type: "ExpressionStatement",
1251
- expression: null,
1252
- directive: deserializeStr(pos + 56),
1253
- start,
1254
- end,
1255
- };
1217
+ let node = {
1218
+ type: "ExpressionStatement",
1219
+ expression: null,
1220
+ directive: deserializeStr(pos + 56),
1221
+ start: deserializeU32(pos),
1222
+ end: deserializeU32(pos + 4),
1223
+ };
1256
1224
  node.expression = deserializeStringLiteral(pos + 8);
1257
1225
  return node;
1258
1226
  }
1259
1227
 
1260
1228
  function deserializeHashbang(pos) {
1261
- let start = deserializeU32(pos),
1262
- end = deserializeU32(pos + 4);
1263
1229
  return {
1264
1230
  type: "Hashbang",
1265
1231
  value: deserializeStr(pos + 8),
1266
- start,
1267
- end,
1232
+ start: deserializeU32(pos),
1233
+ end: deserializeU32(pos + 4),
1268
1234
  };
1269
1235
  }
1270
1236
 
@@ -1305,16 +1271,14 @@ function deserializeDeclaration(pos) {
1305
1271
  }
1306
1272
 
1307
1273
  function deserializeVariableDeclaration(pos) {
1308
- let start = deserializeU32(pos),
1309
- end = deserializeU32(pos + 4),
1310
- node = {
1311
- type: "VariableDeclaration",
1312
- kind: deserializeVariableDeclarationKind(pos + 32),
1313
- declarations: null,
1314
- declare: deserializeBool(pos + 33),
1315
- start,
1316
- end,
1317
- };
1274
+ let node = {
1275
+ type: "VariableDeclaration",
1276
+ kind: deserializeVariableDeclarationKind(pos + 32),
1277
+ declarations: null,
1278
+ declare: deserializeBool(pos + 33),
1279
+ start: deserializeU32(pos),
1280
+ end: deserializeU32(pos + 4),
1281
+ };
1318
1282
  node.declarations = deserializeVecVariableDeclarator(pos + 8);
1319
1283
  return node;
1320
1284
  }
@@ -1574,17 +1538,15 @@ function deserializeForStatementLeft(pos) {
1574
1538
  }
1575
1539
 
1576
1540
  function deserializeForOfStatement(pos) {
1577
- let start = deserializeU32(pos),
1578
- end = deserializeU32(pos + 4),
1579
- node = {
1580
- type: "ForOfStatement",
1581
- await: deserializeBool(pos + 60),
1582
- left: null,
1583
- right: null,
1584
- body: null,
1585
- start,
1586
- end,
1587
- };
1541
+ let node = {
1542
+ type: "ForOfStatement",
1543
+ await: deserializeBool(pos + 60),
1544
+ left: null,
1545
+ right: null,
1546
+ body: null,
1547
+ start: deserializeU32(pos),
1548
+ end: deserializeU32(pos + 4),
1549
+ };
1588
1550
  node.left = deserializeForStatementLeft(pos + 8);
1589
1551
  node.right = deserializeExpression(pos + 24);
1590
1552
  node.body = deserializeStatement(pos + 40);
@@ -1786,20 +1748,18 @@ function deserializeObjectPattern(pos) {
1786
1748
  }
1787
1749
 
1788
1750
  function deserializeBindingProperty(pos) {
1789
- let start = deserializeU32(pos),
1790
- end = deserializeU32(pos + 4),
1791
- node = {
1792
- type: "Property",
1793
- kind: null,
1794
- key: null,
1795
- value: null,
1796
- method: null,
1797
- shorthand: deserializeBool(pos + 40),
1798
- computed: deserializeBool(pos + 41),
1799
- optional: null,
1800
- start,
1801
- end,
1802
- };
1751
+ let node = {
1752
+ type: "Property",
1753
+ kind: null,
1754
+ key: null,
1755
+ value: null,
1756
+ method: null,
1757
+ shorthand: deserializeBool(pos + 40),
1758
+ computed: deserializeBool(pos + 41),
1759
+ optional: null,
1760
+ start: deserializeU32(pos),
1761
+ end: deserializeU32(pos + 4),
1762
+ };
1803
1763
  node.kind = "init";
1804
1764
  node.key = deserializePropertyKey(pos + 8);
1805
1765
  node.value = deserializeBindingPattern(pos + 24);
@@ -1845,9 +1805,7 @@ function deserializeBindingRestElement(pos) {
1845
1805
  }
1846
1806
 
1847
1807
  function deserializeFunction(pos) {
1848
- let start = deserializeU32(pos),
1849
- end = deserializeU32(pos + 4),
1850
- node = {
1808
+ let node = {
1851
1809
  type: deserializeFunctionType(pos + 84),
1852
1810
  id: null,
1853
1811
  generator: deserializeBool(pos + 85),
@@ -1858,8 +1816,8 @@ function deserializeFunction(pos) {
1858
1816
  returnType: null,
1859
1817
  body: null,
1860
1818
  expression: null,
1861
- start,
1862
- end,
1819
+ start: deserializeU32(pos),
1820
+ end: deserializeU32(pos + 4),
1863
1821
  },
1864
1822
  params = deserializeBoxFormalParameters(pos + 56);
1865
1823
  {
@@ -2021,8 +1979,6 @@ function deserializeFunctionBody(pos) {
2021
1979
 
2022
1980
  function deserializeArrowFunctionExpression(pos) {
2023
1981
  let expression = deserializeBool(pos + 44),
2024
- start = deserializeU32(pos),
2025
- end = deserializeU32(pos + 4),
2026
1982
  node = {
2027
1983
  type: "ArrowFunctionExpression",
2028
1984
  expression,
@@ -2033,8 +1989,8 @@ function deserializeArrowFunctionExpression(pos) {
2033
1989
  body: null,
2034
1990
  id: null,
2035
1991
  generator: null,
2036
- start,
2037
- end,
1992
+ start: deserializeU32(pos),
1993
+ end: deserializeU32(pos + 4),
2038
1994
  },
2039
1995
  body = deserializeBoxFunctionBody(pos + 32);
2040
1996
  expression === true && (body = body.body[0].expression);
@@ -2047,36 +2003,32 @@ function deserializeArrowFunctionExpression(pos) {
2047
2003
  }
2048
2004
 
2049
2005
  function deserializeYieldExpression(pos) {
2050
- let start = deserializeU32(pos),
2051
- end = deserializeU32(pos + 4),
2052
- node = {
2053
- type: "YieldExpression",
2054
- delegate: deserializeBool(pos + 24),
2055
- argument: null,
2056
- start,
2057
- end,
2058
- };
2006
+ let node = {
2007
+ type: "YieldExpression",
2008
+ delegate: deserializeBool(pos + 24),
2009
+ argument: null,
2010
+ start: deserializeU32(pos),
2011
+ end: deserializeU32(pos + 4),
2012
+ };
2059
2013
  node.argument = deserializeOptionExpression(pos + 8);
2060
2014
  return node;
2061
2015
  }
2062
2016
 
2063
2017
  function deserializeClass(pos) {
2064
- let start = deserializeU32(pos),
2065
- end = deserializeU32(pos + 4),
2066
- node = {
2067
- type: deserializeClassType(pos + 132),
2068
- decorators: null,
2069
- id: null,
2070
- typeParameters: null,
2071
- superClass: null,
2072
- superTypeArguments: null,
2073
- implements: null,
2074
- body: null,
2075
- abstract: deserializeBool(pos + 133),
2076
- declare: deserializeBool(pos + 134),
2077
- start,
2078
- end,
2079
- };
2018
+ let node = {
2019
+ type: deserializeClassType(pos + 132),
2020
+ decorators: null,
2021
+ id: null,
2022
+ typeParameters: null,
2023
+ superClass: null,
2024
+ superTypeArguments: null,
2025
+ implements: null,
2026
+ body: null,
2027
+ abstract: deserializeBool(pos + 133),
2028
+ declare: deserializeBool(pos + 134),
2029
+ start: deserializeU32(pos),
2030
+ end: deserializeU32(pos + 4),
2031
+ };
2080
2032
  node.decorators = deserializeVecDecorator(pos + 8);
2081
2033
  node.id = deserializeOptionBindingIdentifier(pos + 32);
2082
2034
  node.typeParameters = deserializeOptionBoxTSTypeParameterDeclaration(pos + 64);
@@ -2127,22 +2079,20 @@ function deserializeClassElement(pos) {
2127
2079
  }
2128
2080
 
2129
2081
  function deserializeMethodDefinition(pos) {
2130
- let start = deserializeU32(pos),
2131
- end = deserializeU32(pos + 4),
2132
- node = {
2133
- type: deserializeMethodDefinitionType(pos + 56),
2134
- decorators: null,
2135
- key: null,
2136
- value: null,
2137
- kind: deserializeMethodDefinitionKind(pos + 57),
2138
- computed: deserializeBool(pos + 58),
2139
- static: deserializeBool(pos + 59),
2140
- override: deserializeBool(pos + 60),
2141
- optional: deserializeBool(pos + 61),
2142
- accessibility: deserializeOptionTSAccessibility(pos + 62),
2143
- start,
2144
- end,
2145
- };
2082
+ let node = {
2083
+ type: deserializeMethodDefinitionType(pos + 56),
2084
+ decorators: null,
2085
+ key: null,
2086
+ value: null,
2087
+ kind: deserializeMethodDefinitionKind(pos + 57),
2088
+ computed: deserializeBool(pos + 58),
2089
+ static: deserializeBool(pos + 59),
2090
+ override: deserializeBool(pos + 60),
2091
+ optional: deserializeBool(pos + 61),
2092
+ accessibility: deserializeOptionTSAccessibility(pos + 62),
2093
+ start: deserializeU32(pos),
2094
+ end: deserializeU32(pos + 4),
2095
+ };
2146
2096
  node.decorators = deserializeVecDecorator(pos + 8);
2147
2097
  node.key = deserializePropertyKey(pos + 32);
2148
2098
  node.value = deserializeBoxFunction(pos + 48);
@@ -2161,25 +2111,23 @@ function deserializeMethodDefinitionType(pos) {
2161
2111
  }
2162
2112
 
2163
2113
  function deserializePropertyDefinition(pos) {
2164
- let start = deserializeU32(pos),
2165
- end = deserializeU32(pos + 4),
2166
- node = {
2167
- type: deserializePropertyDefinitionType(pos + 72),
2168
- decorators: null,
2169
- key: null,
2170
- typeAnnotation: null,
2171
- value: null,
2172
- computed: deserializeBool(pos + 73),
2173
- static: deserializeBool(pos + 74),
2174
- declare: deserializeBool(pos + 75),
2175
- override: deserializeBool(pos + 76),
2176
- optional: deserializeBool(pos + 77),
2177
- definite: deserializeBool(pos + 78),
2178
- readonly: deserializeBool(pos + 79),
2179
- accessibility: deserializeOptionTSAccessibility(pos + 80),
2180
- start,
2181
- end,
2182
- };
2114
+ let node = {
2115
+ type: deserializePropertyDefinitionType(pos + 72),
2116
+ decorators: null,
2117
+ key: null,
2118
+ typeAnnotation: null,
2119
+ value: null,
2120
+ computed: deserializeBool(pos + 73),
2121
+ static: deserializeBool(pos + 74),
2122
+ declare: deserializeBool(pos + 75),
2123
+ override: deserializeBool(pos + 76),
2124
+ optional: deserializeBool(pos + 77),
2125
+ definite: deserializeBool(pos + 78),
2126
+ readonly: deserializeBool(pos + 79),
2127
+ accessibility: deserializeOptionTSAccessibility(pos + 80),
2128
+ start: deserializeU32(pos),
2129
+ end: deserializeU32(pos + 4),
2130
+ };
2183
2131
  node.decorators = deserializeVecDecorator(pos + 8);
2184
2132
  node.key = deserializePropertyKey(pos + 32);
2185
2133
  node.typeAnnotation = deserializeOptionBoxTSTypeAnnotation(pos + 48);
@@ -2214,13 +2162,11 @@ function deserializeMethodDefinitionKind(pos) {
2214
2162
  }
2215
2163
 
2216
2164
  function deserializePrivateIdentifier(pos) {
2217
- let start = deserializeU32(pos),
2218
- end = deserializeU32(pos + 4);
2219
2165
  return {
2220
2166
  type: "PrivateIdentifier",
2221
2167
  name: deserializeStr(pos + 8),
2222
- start,
2223
- end,
2168
+ start: deserializeU32(pos),
2169
+ end: deserializeU32(pos + 4),
2224
2170
  };
2225
2171
  }
2226
2172
 
@@ -2247,25 +2193,23 @@ function deserializeAccessorPropertyType(pos) {
2247
2193
  }
2248
2194
 
2249
2195
  function deserializeAccessorProperty(pos) {
2250
- let start = deserializeU32(pos),
2251
- end = deserializeU32(pos + 4),
2252
- node = {
2253
- type: deserializeAccessorPropertyType(pos + 72),
2254
- decorators: null,
2255
- key: null,
2256
- typeAnnotation: null,
2257
- value: null,
2258
- computed: deserializeBool(pos + 73),
2259
- static: deserializeBool(pos + 74),
2260
- override: deserializeBool(pos + 75),
2261
- definite: deserializeBool(pos + 76),
2262
- accessibility: deserializeOptionTSAccessibility(pos + 77),
2263
- declare: null,
2264
- optional: null,
2265
- readonly: null,
2266
- start,
2267
- end,
2268
- };
2196
+ let node = {
2197
+ type: deserializeAccessorPropertyType(pos + 72),
2198
+ decorators: null,
2199
+ key: null,
2200
+ typeAnnotation: null,
2201
+ value: null,
2202
+ computed: deserializeBool(pos + 73),
2203
+ static: deserializeBool(pos + 74),
2204
+ override: deserializeBool(pos + 75),
2205
+ definite: deserializeBool(pos + 76),
2206
+ accessibility: deserializeOptionTSAccessibility(pos + 77),
2207
+ declare: null,
2208
+ optional: null,
2209
+ readonly: null,
2210
+ start: deserializeU32(pos),
2211
+ end: deserializeU32(pos + 4),
2212
+ };
2269
2213
  node.decorators = deserializeVecDecorator(pos + 8);
2270
2214
  node.key = deserializePropertyKey(pos + 32);
2271
2215
  node.typeAnnotation = deserializeOptionBoxTSTypeAnnotation(pos + 48);
@@ -2277,33 +2221,29 @@ function deserializeAccessorProperty(pos) {
2277
2221
  }
2278
2222
 
2279
2223
  function deserializeImportExpression(pos) {
2280
- let start = deserializeU32(pos),
2281
- end = deserializeU32(pos + 4),
2282
- node = {
2283
- type: "ImportExpression",
2284
- source: null,
2285
- options: null,
2286
- phase: deserializeOptionImportPhase(pos + 40),
2287
- start,
2288
- end,
2289
- };
2224
+ let node = {
2225
+ type: "ImportExpression",
2226
+ source: null,
2227
+ options: null,
2228
+ phase: deserializeOptionImportPhase(pos + 40),
2229
+ start: deserializeU32(pos),
2230
+ end: deserializeU32(pos + 4),
2231
+ };
2290
2232
  node.source = deserializeExpression(pos + 8);
2291
2233
  node.options = deserializeOptionExpression(pos + 24);
2292
2234
  return node;
2293
2235
  }
2294
2236
 
2295
2237
  function deserializeImportDeclaration(pos) {
2296
- let start = deserializeU32(pos),
2297
- end = deserializeU32(pos + 4),
2298
- node = {
2238
+ let node = {
2299
2239
  type: "ImportDeclaration",
2300
2240
  specifiers: null,
2301
2241
  source: null,
2302
2242
  phase: deserializeOptionImportPhase(pos + 88),
2303
2243
  attributes: null,
2304
2244
  importKind: deserializeImportOrExportKind(pos + 89),
2305
- start,
2306
- end,
2245
+ start: deserializeU32(pos),
2246
+ end: deserializeU32(pos + 4),
2307
2247
  },
2308
2248
  specifiers = deserializeOptionVecImportDeclarationSpecifier(pos + 8);
2309
2249
  specifiers === null && (specifiers = []);
@@ -2339,16 +2279,14 @@ function deserializeImportDeclarationSpecifier(pos) {
2339
2279
  }
2340
2280
 
2341
2281
  function deserializeImportSpecifier(pos) {
2342
- let start = deserializeU32(pos),
2343
- end = deserializeU32(pos + 4),
2344
- node = {
2345
- type: "ImportSpecifier",
2346
- imported: null,
2347
- local: null,
2348
- importKind: deserializeImportOrExportKind(pos + 96),
2349
- start,
2350
- end,
2351
- };
2282
+ let node = {
2283
+ type: "ImportSpecifier",
2284
+ imported: null,
2285
+ local: null,
2286
+ importKind: deserializeImportOrExportKind(pos + 96),
2287
+ start: deserializeU32(pos),
2288
+ end: deserializeU32(pos + 4),
2289
+ };
2352
2290
  node.imported = deserializeModuleExportName(pos + 8);
2353
2291
  node.local = deserializeBindingIdentifier(pos + 64);
2354
2292
  return node;
@@ -2405,17 +2343,15 @@ function deserializeImportAttributeKey(pos) {
2405
2343
  }
2406
2344
 
2407
2345
  function deserializeExportNamedDeclaration(pos) {
2408
- let start = deserializeU32(pos),
2409
- end = deserializeU32(pos + 4),
2410
- node = {
2346
+ let node = {
2411
2347
  type: "ExportNamedDeclaration",
2412
2348
  declaration: null,
2413
2349
  specifiers: null,
2414
2350
  source: null,
2415
2351
  exportKind: deserializeImportOrExportKind(pos + 104),
2416
2352
  attributes: null,
2417
- start,
2418
- end,
2353
+ start: deserializeU32(pos),
2354
+ end: deserializeU32(pos + 4),
2419
2355
  },
2420
2356
  withClause = deserializeOptionBoxWithClause(pos + 96);
2421
2357
  node.declaration = deserializeOptionDeclaration(pos + 8);
@@ -2439,16 +2375,14 @@ function deserializeExportDefaultDeclaration(pos) {
2439
2375
  }
2440
2376
 
2441
2377
  function deserializeExportAllDeclaration(pos) {
2442
- let start = deserializeU32(pos),
2443
- end = deserializeU32(pos + 4),
2444
- node = {
2378
+ let node = {
2445
2379
  type: "ExportAllDeclaration",
2446
2380
  exported: null,
2447
2381
  source: null,
2448
2382
  attributes: null,
2449
2383
  exportKind: deserializeImportOrExportKind(pos + 120),
2450
- start,
2451
- end,
2384
+ start: deserializeU32(pos),
2385
+ end: deserializeU32(pos + 4),
2452
2386
  },
2453
2387
  withClause = deserializeOptionBoxWithClause(pos + 112);
2454
2388
  node.exported = deserializeOptionModuleExportName(pos + 8);
@@ -2458,16 +2392,14 @@ function deserializeExportAllDeclaration(pos) {
2458
2392
  }
2459
2393
 
2460
2394
  function deserializeExportSpecifier(pos) {
2461
- let start = deserializeU32(pos),
2462
- end = deserializeU32(pos + 4),
2463
- node = {
2464
- type: "ExportSpecifier",
2465
- local: null,
2466
- exported: null,
2467
- exportKind: deserializeImportOrExportKind(pos + 120),
2468
- start,
2469
- end,
2470
- };
2395
+ let node = {
2396
+ type: "ExportSpecifier",
2397
+ local: null,
2398
+ exported: null,
2399
+ exportKind: deserializeImportOrExportKind(pos + 120),
2400
+ start: deserializeU32(pos),
2401
+ end: deserializeU32(pos + 4),
2402
+ };
2471
2403
  node.local = deserializeModuleExportName(pos + 8);
2472
2404
  node.exported = deserializeModuleExportName(pos + 64);
2473
2405
  return node;
@@ -2628,26 +2560,22 @@ function deserializeNullLiteral(pos) {
2628
2560
  }
2629
2561
 
2630
2562
  function deserializeNumericLiteral(pos) {
2631
- let start = deserializeU32(pos),
2632
- end = deserializeU32(pos + 4);
2633
2563
  return {
2634
2564
  type: "Literal",
2635
2565
  value: deserializeF64(pos + 8),
2636
2566
  raw: deserializeOptionStr(pos + 16),
2637
- start,
2638
- end,
2567
+ start: deserializeU32(pos),
2568
+ end: deserializeU32(pos + 4),
2639
2569
  };
2640
2570
  }
2641
2571
 
2642
2572
  function deserializeStringLiteral(pos) {
2643
- let start = deserializeU32(pos),
2644
- end = deserializeU32(pos + 4),
2645
- node = {
2573
+ let node = {
2646
2574
  type: "Literal",
2647
2575
  value: null,
2648
2576
  raw: deserializeOptionStr(pos + 24),
2649
- start,
2650
- end,
2577
+ start: deserializeU32(pos),
2578
+ end: deserializeU32(pos + 4),
2651
2579
  },
2652
2580
  value = deserializeStr(pos + 8);
2653
2581
  deserializeBool(pos + 40) &&
@@ -2657,15 +2585,13 @@ function deserializeStringLiteral(pos) {
2657
2585
  }
2658
2586
 
2659
2587
  function deserializeBigIntLiteral(pos) {
2660
- let start = deserializeU32(pos),
2661
- end = deserializeU32(pos + 4),
2662
- node = {
2588
+ let node = {
2663
2589
  type: "Literal",
2664
2590
  value: null,
2665
2591
  raw: deserializeOptionStr(pos + 24),
2666
2592
  bigint: null,
2667
- start,
2668
- end,
2593
+ start: deserializeU32(pos),
2594
+ end: deserializeU32(pos + 4),
2669
2595
  },
2670
2596
  bigint = deserializeStr(pos + 8);
2671
2597
  node.value = BigInt(bigint);
@@ -2674,15 +2600,13 @@ function deserializeBigIntLiteral(pos) {
2674
2600
  }
2675
2601
 
2676
2602
  function deserializeRegExpLiteral(pos) {
2677
- let start = deserializeU32(pos),
2678
- end = deserializeU32(pos + 4),
2679
- node = {
2603
+ let node = {
2680
2604
  type: "Literal",
2681
2605
  value: null,
2682
2606
  raw: deserializeOptionStr(pos + 40),
2683
2607
  regex: null,
2684
- start,
2685
- end,
2608
+ start: deserializeU32(pos),
2609
+ end: deserializeU32(pos + 4),
2686
2610
  },
2687
2611
  regex = deserializeRegExp(pos + 8),
2688
2612
  value = null;
@@ -3049,13 +2973,11 @@ function deserializeJSXAttributeValue(pos) {
3049
2973
  }
3050
2974
 
3051
2975
  function deserializeJSXIdentifier(pos) {
3052
- let start = deserializeU32(pos),
3053
- end = deserializeU32(pos + 4);
3054
2976
  return {
3055
2977
  type: "JSXIdentifier",
3056
2978
  name: deserializeStr(pos + 8),
3057
- start,
3058
- end,
2979
+ start: deserializeU32(pos),
2980
+ end: deserializeU32(pos + 4),
3059
2981
  };
3060
2982
  }
3061
2983
 
@@ -3088,14 +3010,12 @@ function deserializeJSXSpreadChild(pos) {
3088
3010
  }
3089
3011
 
3090
3012
  function deserializeJSXText(pos) {
3091
- let start = deserializeU32(pos),
3092
- end = deserializeU32(pos + 4);
3093
3013
  return {
3094
3014
  type: "JSXText",
3095
3015
  value: deserializeStr(pos + 8),
3096
3016
  raw: deserializeOptionStr(pos + 24),
3097
- start,
3098
- end,
3017
+ start: deserializeU32(pos),
3018
+ end: deserializeU32(pos + 4),
3099
3019
  };
3100
3020
  }
3101
3021
 
@@ -3117,17 +3037,15 @@ function deserializeTSThisParameter(pos) {
3117
3037
  }
3118
3038
 
3119
3039
  function deserializeTSEnumDeclaration(pos) {
3120
- let start = deserializeU32(pos),
3121
- end = deserializeU32(pos + 4),
3122
- node = {
3123
- type: "TSEnumDeclaration",
3124
- id: null,
3125
- body: null,
3126
- const: deserializeBool(pos + 80),
3127
- declare: deserializeBool(pos + 81),
3128
- start,
3129
- end,
3130
- };
3040
+ let node = {
3041
+ type: "TSEnumDeclaration",
3042
+ id: null,
3043
+ body: null,
3044
+ const: deserializeBool(pos + 80),
3045
+ declare: deserializeBool(pos + 81),
3046
+ start: deserializeU32(pos),
3047
+ end: deserializeU32(pos + 4),
3048
+ };
3131
3049
  node.id = deserializeBindingIdentifier(pos + 8);
3132
3050
  node.body = deserializeTSEnumBody(pos + 40);
3133
3051
  return node;
@@ -3348,15 +3266,13 @@ function deserializeTSParenthesizedType(pos) {
3348
3266
  }
3349
3267
 
3350
3268
  function deserializeTSTypeOperator(pos) {
3351
- let start = deserializeU32(pos),
3352
- end = deserializeU32(pos + 4),
3353
- node = {
3354
- type: "TSTypeOperator",
3355
- operator: deserializeTSTypeOperatorOperator(pos + 24),
3356
- typeAnnotation: null,
3357
- start,
3358
- end,
3359
- };
3269
+ let node = {
3270
+ type: "TSTypeOperator",
3271
+ operator: deserializeTSTypeOperatorOperator(pos + 24),
3272
+ typeAnnotation: null,
3273
+ start: deserializeU32(pos),
3274
+ end: deserializeU32(pos + 4),
3275
+ };
3360
3276
  node.typeAnnotation = deserializeTSType(pos + 8);
3361
3277
  return node;
3362
3278
  }
@@ -3410,16 +3326,14 @@ function deserializeTSTupleType(pos) {
3410
3326
  }
3411
3327
 
3412
3328
  function deserializeTSNamedTupleMember(pos) {
3413
- let start = deserializeU32(pos),
3414
- end = deserializeU32(pos + 4),
3415
- node = {
3416
- type: "TSNamedTupleMember",
3417
- label: null,
3418
- elementType: null,
3419
- optional: deserializeBool(pos + 48),
3420
- start,
3421
- end,
3422
- };
3329
+ let node = {
3330
+ type: "TSNamedTupleMember",
3331
+ label: null,
3332
+ elementType: null,
3333
+ optional: deserializeBool(pos + 48),
3334
+ start: deserializeU32(pos),
3335
+ end: deserializeU32(pos + 4),
3336
+ };
3423
3337
  node.label = deserializeIdentifierName(pos + 8);
3424
3338
  node.elementType = deserializeTSTupleElement(pos + 32);
3425
3339
  return node;
@@ -3695,19 +3609,17 @@ function deserializeTSTypeParameterInstantiation(pos) {
3695
3609
  }
3696
3610
 
3697
3611
  function deserializeTSTypeParameter(pos) {
3698
- let start = deserializeU32(pos),
3699
- end = deserializeU32(pos + 4),
3700
- node = {
3701
- type: "TSTypeParameter",
3702
- name: null,
3703
- constraint: null,
3704
- default: null,
3705
- in: deserializeBool(pos + 72),
3706
- out: deserializeBool(pos + 73),
3707
- const: deserializeBool(pos + 74),
3708
- start,
3709
- end,
3710
- };
3612
+ let node = {
3613
+ type: "TSTypeParameter",
3614
+ name: null,
3615
+ constraint: null,
3616
+ default: null,
3617
+ in: deserializeBool(pos + 72),
3618
+ out: deserializeBool(pos + 73),
3619
+ const: deserializeBool(pos + 74),
3620
+ start: deserializeU32(pos),
3621
+ end: deserializeU32(pos + 4),
3622
+ };
3711
3623
  node.name = deserializeBindingIdentifier(pos + 8);
3712
3624
  node.constraint = deserializeOptionTSType(pos + 40);
3713
3625
  node.default = deserializeOptionTSType(pos + 56);
@@ -3726,17 +3638,15 @@ function deserializeTSTypeParameterDeclaration(pos) {
3726
3638
  }
3727
3639
 
3728
3640
  function deserializeTSTypeAliasDeclaration(pos) {
3729
- let start = deserializeU32(pos),
3730
- end = deserializeU32(pos + 4),
3731
- node = {
3732
- type: "TSTypeAliasDeclaration",
3733
- id: null,
3734
- typeParameters: null,
3735
- typeAnnotation: null,
3736
- declare: deserializeBool(pos + 68),
3737
- start,
3738
- end,
3739
- };
3641
+ let node = {
3642
+ type: "TSTypeAliasDeclaration",
3643
+ id: null,
3644
+ typeParameters: null,
3645
+ typeAnnotation: null,
3646
+ declare: deserializeBool(pos + 68),
3647
+ start: deserializeU32(pos),
3648
+ end: deserializeU32(pos + 4),
3649
+ };
3740
3650
  node.id = deserializeBindingIdentifier(pos + 8);
3741
3651
  node.typeParameters = deserializeOptionBoxTSTypeParameterDeclaration(pos + 40);
3742
3652
  node.typeAnnotation = deserializeTSType(pos + 48);
@@ -3797,18 +3707,16 @@ function deserializeTSClassImplements(pos) {
3797
3707
  }
3798
3708
 
3799
3709
  function deserializeTSInterfaceDeclaration(pos) {
3800
- let start = deserializeU32(pos),
3801
- end = deserializeU32(pos + 4),
3802
- node = {
3803
- type: "TSInterfaceDeclaration",
3804
- id: null,
3805
- typeParameters: null,
3806
- extends: null,
3807
- body: null,
3808
- declare: deserializeBool(pos + 84),
3809
- start,
3810
- end,
3811
- };
3710
+ let node = {
3711
+ type: "TSInterfaceDeclaration",
3712
+ id: null,
3713
+ typeParameters: null,
3714
+ extends: null,
3715
+ body: null,
3716
+ declare: deserializeBool(pos + 84),
3717
+ start: deserializeU32(pos),
3718
+ end: deserializeU32(pos + 4),
3719
+ };
3812
3720
  node.id = deserializeBindingIdentifier(pos + 8);
3813
3721
  node.typeParameters = deserializeOptionBoxTSTypeParameterDeclaration(pos + 40);
3814
3722
  node.extends = deserializeVecTSInterfaceHeritage(pos + 48);
@@ -3828,20 +3736,18 @@ function deserializeTSInterfaceBody(pos) {
3828
3736
  }
3829
3737
 
3830
3738
  function deserializeTSPropertySignature(pos) {
3831
- let start = deserializeU32(pos),
3832
- end = deserializeU32(pos + 4),
3833
- node = {
3834
- type: "TSPropertySignature",
3835
- computed: deserializeBool(pos + 32),
3836
- optional: deserializeBool(pos + 33),
3837
- readonly: deserializeBool(pos + 34),
3838
- key: null,
3839
- typeAnnotation: null,
3840
- accessibility: null,
3841
- static: null,
3842
- start,
3843
- end,
3844
- };
3739
+ let node = {
3740
+ type: "TSPropertySignature",
3741
+ computed: deserializeBool(pos + 32),
3742
+ optional: deserializeBool(pos + 33),
3743
+ readonly: deserializeBool(pos + 34),
3744
+ key: null,
3745
+ typeAnnotation: null,
3746
+ accessibility: null,
3747
+ static: null,
3748
+ start: deserializeU32(pos),
3749
+ end: deserializeU32(pos + 4),
3750
+ };
3845
3751
  node.key = deserializePropertyKey(pos + 8);
3846
3752
  node.typeAnnotation = deserializeOptionBoxTSTypeAnnotation(pos + 24);
3847
3753
  node.static = false;
@@ -3866,18 +3772,16 @@ function deserializeTSSignature(pos) {
3866
3772
  }
3867
3773
 
3868
3774
  function deserializeTSIndexSignature(pos) {
3869
- let start = deserializeU32(pos),
3870
- end = deserializeU32(pos + 4),
3871
- node = {
3872
- type: "TSIndexSignature",
3873
- parameters: null,
3874
- typeAnnotation: null,
3875
- readonly: deserializeBool(pos + 40),
3876
- static: deserializeBool(pos + 41),
3877
- accessibility: null,
3878
- start,
3879
- end,
3880
- };
3775
+ let node = {
3776
+ type: "TSIndexSignature",
3777
+ parameters: null,
3778
+ typeAnnotation: null,
3779
+ readonly: deserializeBool(pos + 40),
3780
+ static: deserializeBool(pos + 41),
3781
+ accessibility: null,
3782
+ start: deserializeU32(pos),
3783
+ end: deserializeU32(pos + 4),
3784
+ };
3881
3785
  node.parameters = deserializeVecTSIndexSignatureName(pos + 8);
3882
3786
  node.typeAnnotation = deserializeBoxTSTypeAnnotation(pos + 32);
3883
3787
  return node;
@@ -3915,9 +3819,7 @@ function deserializeTSMethodSignatureKind(pos) {
3915
3819
  }
3916
3820
 
3917
3821
  function deserializeTSMethodSignature(pos) {
3918
- let start = deserializeU32(pos),
3919
- end = deserializeU32(pos + 4),
3920
- node = {
3822
+ let node = {
3921
3823
  type: "TSMethodSignature",
3922
3824
  key: null,
3923
3825
  computed: deserializeBool(pos + 60),
@@ -3929,8 +3831,8 @@ function deserializeTSMethodSignature(pos) {
3929
3831
  accessibility: null,
3930
3832
  readonly: null,
3931
3833
  static: null,
3932
- start,
3933
- end,
3834
+ start: deserializeU32(pos),
3835
+ end: deserializeU32(pos + 4),
3934
3836
  },
3935
3837
  params = deserializeBoxFormalParameters(pos + 40),
3936
3838
  thisParam = deserializeOptionBoxTSThisParameter(pos + 32);
@@ -3960,17 +3862,15 @@ function deserializeTSConstructSignatureDeclaration(pos) {
3960
3862
  }
3961
3863
 
3962
3864
  function deserializeTSIndexSignatureName(pos) {
3963
- let start = deserializeU32(pos),
3964
- end = deserializeU32(pos + 4),
3965
- node = {
3966
- type: "Identifier",
3967
- decorators: null,
3968
- name: deserializeStr(pos + 8),
3969
- optional: null,
3970
- typeAnnotation: null,
3971
- start,
3972
- end,
3973
- };
3865
+ let node = {
3866
+ type: "Identifier",
3867
+ decorators: null,
3868
+ name: deserializeStr(pos + 8),
3869
+ optional: null,
3870
+ typeAnnotation: null,
3871
+ start: deserializeU32(pos),
3872
+ end: deserializeU32(pos + 4),
3873
+ };
3974
3874
  node.decorators = [];
3975
3875
  node.optional = false;
3976
3876
  node.typeAnnotation = deserializeBoxTSTypeAnnotation(pos + 24);
@@ -3991,16 +3891,14 @@ function deserializeTSInterfaceHeritage(pos) {
3991
3891
  }
3992
3892
 
3993
3893
  function deserializeTSTypePredicate(pos) {
3994
- let start = deserializeU32(pos),
3995
- end = deserializeU32(pos + 4),
3996
- node = {
3997
- type: "TSTypePredicate",
3998
- parameterName: null,
3999
- asserts: deserializeBool(pos + 32),
4000
- typeAnnotation: null,
4001
- start,
4002
- end,
4003
- };
3894
+ let node = {
3895
+ type: "TSTypePredicate",
3896
+ parameterName: null,
3897
+ asserts: deserializeBool(pos + 32),
3898
+ typeAnnotation: null,
3899
+ start: deserializeU32(pos),
3900
+ end: deserializeU32(pos + 4),
3901
+ };
4004
3902
  node.parameterName = deserializeTSTypePredicateName(pos + 8);
4005
3903
  node.typeAnnotation = deserializeOptionBoxTSTypeAnnotation(pos + 24);
4006
3904
  return node;
@@ -4120,18 +4018,16 @@ function deserializeTSModuleDeclarationBody(pos) {
4120
4018
  }
4121
4019
 
4122
4020
  function deserializeTSGlobalDeclaration(pos) {
4123
- let start = deserializeU32(pos),
4124
- end = deserializeU32(pos + 4),
4125
- node = {
4126
- type: "TSModuleDeclaration",
4127
- id: null,
4128
- body: null,
4129
- kind: null,
4130
- declare: deserializeBool(pos + 76),
4131
- global: null,
4132
- start,
4133
- end,
4134
- };
4021
+ let node = {
4022
+ type: "TSModuleDeclaration",
4023
+ id: null,
4024
+ body: null,
4025
+ kind: null,
4026
+ declare: deserializeBool(pos + 76),
4027
+ global: null,
4028
+ start: deserializeU32(pos),
4029
+ end: deserializeU32(pos + 4),
4030
+ };
4135
4031
  node.id = {
4136
4032
  type: "Identifier",
4137
4033
  decorators: [],
@@ -4270,17 +4166,15 @@ function deserializeTSFunctionType(pos) {
4270
4166
  }
4271
4167
 
4272
4168
  function deserializeTSConstructorType(pos) {
4273
- let start = deserializeU32(pos),
4274
- end = deserializeU32(pos + 4),
4275
- node = {
4276
- type: "TSConstructorType",
4277
- abstract: deserializeBool(pos + 36),
4278
- typeParameters: null,
4279
- params: null,
4280
- returnType: null,
4281
- start,
4282
- end,
4283
- };
4169
+ let node = {
4170
+ type: "TSConstructorType",
4171
+ abstract: deserializeBool(pos + 36),
4172
+ typeParameters: null,
4173
+ params: null,
4174
+ returnType: null,
4175
+ start: deserializeU32(pos),
4176
+ end: deserializeU32(pos + 4),
4177
+ };
4284
4178
  node.typeParameters = deserializeOptionBoxTSTypeParameterDeclaration(pos + 8);
4285
4179
  node.params = deserializeBoxFormalParameters(pos + 16);
4286
4180
  node.returnType = deserializeBoxTSTypeAnnotation(pos + 24);
@@ -4288,9 +4182,7 @@ function deserializeTSConstructorType(pos) {
4288
4182
  }
4289
4183
 
4290
4184
  function deserializeTSMappedType(pos) {
4291
- let start = deserializeU32(pos),
4292
- end = deserializeU32(pos + 4),
4293
- node = {
4185
+ let node = {
4294
4186
  type: "TSMappedType",
4295
4187
  key: null,
4296
4188
  constraint: null,
@@ -4298,8 +4190,8 @@ function deserializeTSMappedType(pos) {
4298
4190
  typeAnnotation: null,
4299
4191
  optional: null,
4300
4192
  readonly: deserializeOptionTSMappedTypeModifierOperator(pos + 93),
4301
- start,
4302
- end,
4193
+ start: deserializeU32(pos),
4194
+ end: deserializeU32(pos + 4),
4303
4195
  },
4304
4196
  optional = deserializeOptionTSMappedTypeModifierOperator(pos + 92);
4305
4197
  optional === null && (optional = false);
@@ -4377,16 +4269,14 @@ function deserializeTSTypeAssertion(pos) {
4377
4269
  }
4378
4270
 
4379
4271
  function deserializeTSImportEqualsDeclaration(pos) {
4380
- let start = deserializeU32(pos),
4381
- end = deserializeU32(pos + 4),
4382
- node = {
4383
- type: "TSImportEqualsDeclaration",
4384
- id: null,
4385
- moduleReference: null,
4386
- importKind: deserializeImportOrExportKind(pos + 56),
4387
- start,
4388
- end,
4389
- };
4272
+ let node = {
4273
+ type: "TSImportEqualsDeclaration",
4274
+ id: null,
4275
+ moduleReference: null,
4276
+ importKind: deserializeImportOrExportKind(pos + 56),
4277
+ start: deserializeU32(pos),
4278
+ end: deserializeU32(pos + 4),
4279
+ };
4390
4280
  node.id = deserializeBindingIdentifier(pos + 8);
4391
4281
  node.moduleReference = deserializeTSModuleReference(pos + 40);
4392
4282
  return node;
@@ -4395,13 +4285,11 @@ function deserializeTSImportEqualsDeclaration(pos) {
4395
4285
  function deserializeTSModuleReference(pos) {
4396
4286
  switch (uint8[pos]) {
4397
4287
  case 0:
4398
- return deserializeBoxIdentifierReference(pos + 8);
4288
+ return deserializeBoxTSExternalModuleReference(pos + 8);
4399
4289
  case 1:
4400
- return deserializeBoxTSQualifiedName(pos + 8);
4290
+ return deserializeBoxIdentifierReference(pos + 8);
4401
4291
  case 2:
4402
- return deserializeBoxThisExpression(pos + 8);
4403
- case 3:
4404
- return deserializeBoxTSExternalModuleReference(pos + 8);
4292
+ return deserializeBoxTSQualifiedName(pos + 8);
4405
4293
  default:
4406
4294
  throw Error(`Unexpected discriminant ${uint8[pos]} for TSModuleReference`);
4407
4295
  }
@@ -4487,29 +4375,25 @@ function deserializeImportOrExportKind(pos) {
4487
4375
  }
4488
4376
 
4489
4377
  function deserializeJSDocNullableType(pos) {
4490
- let start = deserializeU32(pos),
4491
- end = deserializeU32(pos + 4),
4492
- node = {
4493
- type: "TSJSDocNullableType",
4494
- typeAnnotation: null,
4495
- postfix: deserializeBool(pos + 24),
4496
- start,
4497
- end,
4498
- };
4378
+ let node = {
4379
+ type: "TSJSDocNullableType",
4380
+ typeAnnotation: null,
4381
+ postfix: deserializeBool(pos + 24),
4382
+ start: deserializeU32(pos),
4383
+ end: deserializeU32(pos + 4),
4384
+ };
4499
4385
  node.typeAnnotation = deserializeTSType(pos + 8);
4500
4386
  return node;
4501
4387
  }
4502
4388
 
4503
4389
  function deserializeJSDocNonNullableType(pos) {
4504
- let start = deserializeU32(pos),
4505
- end = deserializeU32(pos + 4),
4506
- node = {
4507
- type: "TSJSDocNonNullableType",
4508
- typeAnnotation: null,
4509
- postfix: deserializeBool(pos + 24),
4510
- start,
4511
- end,
4512
- };
4390
+ let node = {
4391
+ type: "TSJSDocNonNullableType",
4392
+ typeAnnotation: null,
4393
+ postfix: deserializeBool(pos + 24),
4394
+ start: deserializeU32(pos),
4395
+ end: deserializeU32(pos + 4),
4396
+ };
4513
4397
  node.typeAnnotation = deserializeTSType(pos + 8);
4514
4398
  return node;
4515
4399
  }
@@ -4548,12 +4432,10 @@ function deserializeComment(pos) {
4548
4432
  }
4549
4433
 
4550
4434
  function deserializeNameSpan(pos) {
4551
- let start = deserializeU32(pos),
4552
- end = deserializeU32(pos + 4);
4553
4435
  return {
4554
4436
  value: deserializeStr(pos + 8),
4555
- start,
4556
- end,
4437
+ start: deserializeU32(pos),
4438
+ end: deserializeU32(pos + 4),
4557
4439
  };
4558
4440
  }
4559
4441
 
@@ -4596,16 +4478,14 @@ function deserializeImportImportName(pos) {
4596
4478
  }
4597
4479
 
4598
4480
  function deserializeExportEntry(pos) {
4599
- let start = deserializeU32(pos),
4600
- end = deserializeU32(pos + 4);
4601
4481
  return {
4602
4482
  moduleRequest: deserializeOptionNameSpan(pos + 16),
4603
4483
  importName: deserializeExportImportName(pos + 40),
4604
4484
  exportName: deserializeExportExportName(pos + 72),
4605
4485
  localName: deserializeExportLocalName(pos + 104),
4606
4486
  isType: deserializeBool(pos + 136),
4607
- start,
4608
- end,
4487
+ start: deserializeU32(pos),
4488
+ end: deserializeU32(pos + 4),
4609
4489
  };
4610
4490
  }
4611
4491
 
@@ -4706,12 +4586,10 @@ function deserializeExportLocalName(pos) {
4706
4586
  }
4707
4587
 
4708
4588
  function deserializeDynamicImport(pos) {
4709
- let start = deserializeU32(pos),
4710
- end = deserializeU32(pos + 4);
4711
4589
  return {
4712
4590
  moduleRequest: deserializeSpan(pos + 8),
4713
- start,
4714
- end,
4591
+ start: deserializeU32(pos),
4592
+ end: deserializeU32(pos + 4),
4715
4593
  };
4716
4594
  }
4717
4595
 
@@ -4903,12 +4781,10 @@ function deserializeErrorSeverity(pos) {
4903
4781
  }
4904
4782
 
4905
4783
  function deserializeErrorLabel(pos) {
4906
- let start = deserializeU32(pos),
4907
- end = deserializeU32(pos + 4);
4908
4784
  return {
4909
4785
  message: deserializeOptionStr(pos + 8),
4910
- start,
4911
- end,
4786
+ start: deserializeU32(pos),
4787
+ end: deserializeU32(pos + 4),
4912
4788
  };
4913
4789
  }
4914
4790
 
@@ -4923,23 +4799,19 @@ function deserializeEcmaScriptModule(pos) {
4923
4799
  }
4924
4800
 
4925
4801
  function deserializeStaticImport(pos) {
4926
- let start = deserializeU32(pos),
4927
- end = deserializeU32(pos + 4);
4928
4802
  return {
4929
4803
  moduleRequest: deserializeNameSpan(pos + 8),
4930
4804
  entries: deserializeVecImportEntry(pos + 32),
4931
- start,
4932
- end,
4805
+ start: deserializeU32(pos),
4806
+ end: deserializeU32(pos + 4),
4933
4807
  };
4934
4808
  }
4935
4809
 
4936
4810
  function deserializeStaticExport(pos) {
4937
- let start = deserializeU32(pos),
4938
- end = deserializeU32(pos + 4);
4939
4811
  return {
4940
4812
  entries: deserializeVecExportEntry(pos + 8),
4941
- start,
4942
- end,
4813
+ start: deserializeU32(pos),
4814
+ end: deserializeU32(pos + 4),
4943
4815
  };
4944
4816
  }
4945
4817
 
@@ -4956,7 +4828,7 @@ function deserializeStr(pos) {
4956
4828
  len = uint32[pos32 + 2];
4957
4829
  if (len === 0) return "";
4958
4830
  pos = uint32[pos32];
4959
- if (sourceIsAscii && pos < sourceByteLen) return sourceText.substr(pos, len);
4831
+ if (sourceIsAscii && pos < sourceEndPos) return sourceText.substr(pos, len);
4960
4832
  // Longer strings use `TextDecoder`
4961
4833
  // TODO: Find best switch-over point
4962
4834
  let end = pos + len;