oxc-parser 0.123.0 → 0.125.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,35 +1,50 @@
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, sourceEndPos;
5
-
6
- const textDecoder = new TextDecoder("utf-8", { ignoreBOM: true }),
7
- decodeStr = textDecoder.decode.bind(textDecoder),
8
- { fromCodePoint } = String;
4
+ let uint8,
5
+ int32,
6
+ float64,
7
+ sourceText,
8
+ sourceTextLatin,
9
+ sourceEndPos = 0,
10
+ firstNonAsciiPos = 0;
11
+
12
+ const { fromCharCode } = String,
13
+ { utf8Slice, latin1Slice } = Buffer.prototype,
14
+ stringDecodeArrays = Array(65).fill(null);
15
+ for (let i = 0; i <= 64; i++) stringDecodeArrays[i] = Array(i).fill(0);
9
16
 
10
17
  export function deserialize(buffer, sourceText, sourceByteLen) {
11
18
  sourceEndPos = sourceByteLen;
12
- let data = deserializeWith(buffer, sourceText, sourceByteLen, null, deserializeRawTransferData);
13
- resetBuffer();
14
- return data;
19
+ return deserializeWith(buffer, sourceText, sourceByteLen, deserializeRawTransferData);
15
20
  }
16
21
 
17
- function deserializeWith(buffer, sourceTextInput, sourceByteLen, getLocInput, deserialize) {
22
+ function deserializeWith(buffer, sourceTextInput, sourceByteLen, deserialize) {
18
23
  uint8 = buffer;
19
- uint32 = buffer.uint32;
24
+ int32 = buffer.int32;
20
25
  float64 = buffer.float64;
21
26
  sourceText = sourceTextInput;
22
- sourceIsAscii = sourceText.length === sourceByteLen;
23
- return deserialize(uint32[536870900]);
27
+ if (sourceText.length === sourceByteLen) {
28
+ firstNonAsciiPos = sourceByteLen;
29
+ sourceTextLatin = sourceText;
30
+ } else {
31
+ let i = 0;
32
+ for (; i < sourceByteLen && uint8[i] < 128; i++);
33
+ firstNonAsciiPos = i;
34
+ sourceTextLatin = latin1Slice.call(uint8, 0, sourceByteLen);
35
+ }
36
+ let data = deserialize(int32[536870900]);
37
+ resetBuffer();
38
+ return data;
24
39
  }
25
40
 
26
41
  export function resetBuffer() {
27
- // Clear buffer and source text string to allow them to be garbage collected
28
- uint8 = uint32 = float64 = sourceText = void 0;
42
+ // Clear buffer and source text strings to allow them to be garbage collected
43
+ uint8 = int32 = float64 = sourceText = sourceTextLatin = void 0;
29
44
  }
30
45
 
31
46
  function deserializeProgram(pos) {
32
- let end = deserializeU32(pos + 4),
47
+ let end = deserializeI32(pos + 4),
33
48
  program = {
34
49
  type: "Program",
35
50
  body: null,
@@ -158,83 +173,67 @@ function deserializeExpression(pos) {
158
173
  }
159
174
 
160
175
  function deserializeIdentifierName(pos) {
161
- let start,
162
- end,
163
- node = {
164
- type: "Identifier",
165
- decorators: null,
166
- name: deserializeStr(pos + 16),
167
- optional: null,
168
- typeAnnotation: null,
169
- start: (start = deserializeU32(pos)),
170
- end: (end = deserializeU32(pos + 4)),
171
- range: [start, end],
172
- };
173
- node.decorators = [];
174
- node.optional = false;
175
- return node;
176
+ let start, end;
177
+ return {
178
+ type: "Identifier",
179
+ decorators: [],
180
+ name: deserializeStr(pos + 16),
181
+ optional: false,
182
+ typeAnnotation: null,
183
+ start: (start = deserializeI32(pos)),
184
+ end: (end = deserializeI32(pos + 4)),
185
+ range: [start, end],
186
+ };
176
187
  }
177
188
 
178
189
  function deserializeIdentifierReference(pos) {
179
- let start,
180
- end,
181
- node = {
182
- type: "Identifier",
183
- decorators: null,
184
- name: deserializeStr(pos + 16),
185
- optional: null,
186
- typeAnnotation: null,
187
- start: (start = deserializeU32(pos)),
188
- end: (end = deserializeU32(pos + 4)),
189
- range: [start, end],
190
- };
191
- node.decorators = [];
192
- node.optional = false;
193
- return node;
190
+ let start, end;
191
+ return {
192
+ type: "Identifier",
193
+ decorators: [],
194
+ name: deserializeStr(pos + 16),
195
+ optional: false,
196
+ typeAnnotation: null,
197
+ start: (start = deserializeI32(pos)),
198
+ end: (end = deserializeI32(pos + 4)),
199
+ range: [start, end],
200
+ };
194
201
  }
195
202
 
196
203
  function deserializeBindingIdentifier(pos) {
197
- let start,
198
- end,
199
- node = {
200
- type: "Identifier",
201
- decorators: null,
202
- name: deserializeStr(pos + 16),
203
- optional: null,
204
- typeAnnotation: null,
205
- start: (start = deserializeU32(pos)),
206
- end: (end = deserializeU32(pos + 4)),
207
- range: [start, end],
208
- };
209
- node.decorators = [];
210
- node.optional = false;
211
- return node;
204
+ let start, end;
205
+ return {
206
+ type: "Identifier",
207
+ decorators: [],
208
+ name: deserializeStr(pos + 16),
209
+ optional: false,
210
+ typeAnnotation: null,
211
+ start: (start = deserializeI32(pos)),
212
+ end: (end = deserializeI32(pos + 4)),
213
+ range: [start, end],
214
+ };
212
215
  }
213
216
 
214
217
  function deserializeLabelIdentifier(pos) {
215
- let start,
216
- end,
217
- node = {
218
- type: "Identifier",
219
- decorators: null,
220
- name: deserializeStr(pos + 16),
221
- optional: null,
222
- typeAnnotation: null,
223
- start: (start = deserializeU32(pos)),
224
- end: (end = deserializeU32(pos + 4)),
225
- range: [start, end],
226
- };
227
- node.decorators = [];
228
- node.optional = false;
229
- return node;
218
+ let start, end;
219
+ return {
220
+ type: "Identifier",
221
+ decorators: [],
222
+ name: deserializeStr(pos + 16),
223
+ optional: false,
224
+ typeAnnotation: null,
225
+ start: (start = deserializeI32(pos)),
226
+ end: (end = deserializeI32(pos + 4)),
227
+ range: [start, end],
228
+ };
230
229
  }
231
230
 
232
231
  function deserializeThisExpression(pos) {
233
232
  let start, end;
234
233
  return {
235
234
  type: "ThisExpression",
236
- start: (start = deserializeU32(pos)),
237
- end: (end = deserializeU32(pos + 4)),
235
+ start: (start = deserializeI32(pos)),
236
+ end: (end = deserializeI32(pos + 4)),
238
237
  range: [start, end],
239
238
  };
240
239
  }
@@ -245,8 +244,8 @@ function deserializeArrayExpression(pos) {
245
244
  node = {
246
245
  type: "ArrayExpression",
247
246
  elements: null,
248
- start: (start = deserializeU32(pos)),
249
- end: (end = deserializeU32(pos + 4)),
247
+ start: (start = deserializeI32(pos)),
248
+ end: (end = deserializeI32(pos + 4)),
250
249
  range: [start, end],
251
250
  };
252
251
  node.elements = deserializeVecArrayExpressionElement(pos + 16);
@@ -360,8 +359,8 @@ function deserializeObjectExpression(pos) {
360
359
  node = {
361
360
  type: "ObjectExpression",
362
361
  properties: null,
363
- start: (start = deserializeU32(pos)),
364
- end: (end = deserializeU32(pos + 4)),
362
+ start: (start = deserializeI32(pos)),
363
+ end: (end = deserializeI32(pos + 4)),
365
364
  range: [start, end],
366
365
  };
367
366
  node.properties = deserializeVecObjectPropertyKind(pos + 16);
@@ -390,14 +389,13 @@ function deserializeObjectProperty(pos) {
390
389
  method: deserializeBool(pos + 13),
391
390
  shorthand: deserializeBool(pos + 14),
392
391
  computed: deserializeBool(pos + 15),
393
- optional: null,
394
- start: (start = deserializeU32(pos)),
395
- end: (end = deserializeU32(pos + 4)),
392
+ optional: false,
393
+ start: (start = deserializeI32(pos)),
394
+ end: (end = deserializeI32(pos + 4)),
396
395
  range: [start, end],
397
396
  };
398
397
  node.key = deserializePropertyKey(pos + 16);
399
398
  node.value = deserializeExpression(pos + 32);
400
- node.optional = false;
401
399
  return node;
402
400
  }
403
401
 
@@ -518,8 +516,8 @@ function deserializeTemplateLiteral(pos) {
518
516
  type: "TemplateLiteral",
519
517
  quasis: null,
520
518
  expressions: null,
521
- start: (start = deserializeU32(pos)),
522
- end: (end = deserializeU32(pos + 4)),
519
+ start: (start = deserializeI32(pos)),
520
+ end: (end = deserializeI32(pos + 4)),
523
521
  range: [start, end],
524
522
  };
525
523
  node.quasis = deserializeVecTemplateElement(pos + 16);
@@ -535,8 +533,8 @@ function deserializeTaggedTemplateExpression(pos) {
535
533
  tag: null,
536
534
  typeArguments: null,
537
535
  quasi: null,
538
- start: (start = deserializeU32(pos)),
539
- end: (end = deserializeU32(pos + 4)),
536
+ start: (start = deserializeI32(pos)),
537
+ end: (end = deserializeI32(pos + 4)),
540
538
  range: [start, end],
541
539
  };
542
540
  node.tag = deserializeExpression(pos + 16);
@@ -547,8 +545,8 @@ function deserializeTaggedTemplateExpression(pos) {
547
545
 
548
546
  function deserializeTemplateElement(pos) {
549
547
  let tail = deserializeBool(pos + 12),
550
- start = deserializeU32(pos) - 1,
551
- end = deserializeU32(pos + 4) + 2 - tail,
548
+ start = deserializeI32(pos) - 1,
549
+ end = deserializeI32(pos + 4) + 2 - tail,
552
550
  value = deserializeTemplateElementValue(pos + 16);
553
551
  value.cooked !== null &&
554
552
  deserializeBool(pos + 13) &&
@@ -580,14 +578,13 @@ function deserializeComputedMemberExpression(pos) {
580
578
  object: null,
581
579
  property: null,
582
580
  optional: deserializeBool(pos + 12),
583
- computed: null,
584
- start: (start = deserializeU32(pos)),
585
- end: (end = deserializeU32(pos + 4)),
581
+ computed: true,
582
+ start: (start = deserializeI32(pos)),
583
+ end: (end = deserializeI32(pos + 4)),
586
584
  range: [start, end],
587
585
  };
588
586
  node.object = deserializeExpression(pos + 16);
589
587
  node.property = deserializeExpression(pos + 32);
590
- node.computed = true;
591
588
  return node;
592
589
  }
593
590
 
@@ -599,14 +596,13 @@ function deserializeStaticMemberExpression(pos) {
599
596
  object: null,
600
597
  property: null,
601
598
  optional: deserializeBool(pos + 12),
602
- computed: null,
603
- start: (start = deserializeU32(pos)),
604
- end: (end = deserializeU32(pos + 4)),
599
+ computed: false,
600
+ start: (start = deserializeI32(pos)),
601
+ end: (end = deserializeI32(pos + 4)),
605
602
  range: [start, end],
606
603
  };
607
604
  node.object = deserializeExpression(pos + 16);
608
605
  node.property = deserializeIdentifierName(pos + 32);
609
- node.computed = false;
610
606
  return node;
611
607
  }
612
608
 
@@ -618,14 +614,13 @@ function deserializePrivateFieldExpression(pos) {
618
614
  object: null,
619
615
  property: null,
620
616
  optional: deserializeBool(pos + 12),
621
- computed: null,
622
- start: (start = deserializeU32(pos)),
623
- end: (end = deserializeU32(pos + 4)),
617
+ computed: false,
618
+ start: (start = deserializeI32(pos)),
619
+ end: (end = deserializeI32(pos + 4)),
624
620
  range: [start, end],
625
621
  };
626
622
  node.object = deserializeExpression(pos + 16);
627
623
  node.property = deserializePrivateIdentifier(pos + 32);
628
- node.computed = false;
629
624
  return node;
630
625
  }
631
626
 
@@ -638,8 +633,8 @@ function deserializeCallExpression(pos) {
638
633
  typeArguments: null,
639
634
  arguments: null,
640
635
  optional: deserializeBool(pos + 12),
641
- start: (start = deserializeU32(pos)),
642
- end: (end = deserializeU32(pos + 4)),
636
+ start: (start = deserializeI32(pos)),
637
+ end: (end = deserializeI32(pos + 4)),
643
638
  range: [start, end],
644
639
  };
645
640
  node.callee = deserializeExpression(pos + 16);
@@ -656,8 +651,8 @@ function deserializeNewExpression(pos) {
656
651
  callee: null,
657
652
  typeArguments: null,
658
653
  arguments: null,
659
- start: (start = deserializeU32(pos)),
660
- end: (end = deserializeU32(pos + 4)),
654
+ start: (start = deserializeI32(pos)),
655
+ end: (end = deserializeI32(pos + 4)),
661
656
  range: [start, end],
662
657
  };
663
658
  node.callee = deserializeExpression(pos + 16);
@@ -673,8 +668,8 @@ function deserializeMetaProperty(pos) {
673
668
  type: "MetaProperty",
674
669
  meta: null,
675
670
  property: null,
676
- start: (start = deserializeU32(pos)),
677
- end: (end = deserializeU32(pos + 4)),
671
+ start: (start = deserializeI32(pos)),
672
+ end: (end = deserializeI32(pos + 4)),
678
673
  range: [start, end],
679
674
  };
680
675
  node.meta = deserializeIdentifierName(pos + 16);
@@ -688,8 +683,8 @@ function deserializeSpreadElement(pos) {
688
683
  node = {
689
684
  type: "SpreadElement",
690
685
  argument: null,
691
- start: (start = deserializeU32(pos)),
692
- end: (end = deserializeU32(pos + 4)),
686
+ start: (start = deserializeI32(pos)),
687
+ end: (end = deserializeI32(pos + 4)),
693
688
  range: [start, end],
694
689
  };
695
690
  node.argument = deserializeExpression(pos + 16);
@@ -799,8 +794,8 @@ function deserializeUpdateExpression(pos) {
799
794
  operator: deserializeUpdateOperator(pos + 12),
800
795
  prefix: deserializeBool(pos + 13),
801
796
  argument: null,
802
- start: (start = deserializeU32(pos)),
803
- end: (end = deserializeU32(pos + 4)),
797
+ start: (start = deserializeI32(pos)),
798
+ end: (end = deserializeI32(pos + 4)),
804
799
  range: [start, end],
805
800
  };
806
801
  node.argument = deserializeSimpleAssignmentTarget(pos + 16);
@@ -814,13 +809,12 @@ function deserializeUnaryExpression(pos) {
814
809
  type: "UnaryExpression",
815
810
  operator: deserializeUnaryOperator(pos + 12),
816
811
  argument: null,
817
- prefix: null,
818
- start: (start = deserializeU32(pos)),
819
- end: (end = deserializeU32(pos + 4)),
812
+ prefix: true,
813
+ start: (start = deserializeI32(pos)),
814
+ end: (end = deserializeI32(pos + 4)),
820
815
  range: [start, end],
821
816
  };
822
817
  node.argument = deserializeExpression(pos + 16);
823
- node.prefix = true;
824
818
  return node;
825
819
  }
826
820
 
@@ -832,8 +826,8 @@ function deserializeBinaryExpression(pos) {
832
826
  left: null,
833
827
  operator: deserializeBinaryOperator(pos + 12),
834
828
  right: null,
835
- start: (start = deserializeU32(pos)),
836
- end: (end = deserializeU32(pos + 4)),
829
+ start: (start = deserializeI32(pos)),
830
+ end: (end = deserializeI32(pos + 4)),
837
831
  range: [start, end],
838
832
  };
839
833
  node.left = deserializeExpression(pos + 16);
@@ -847,14 +841,13 @@ function deserializePrivateInExpression(pos) {
847
841
  node = {
848
842
  type: "BinaryExpression",
849
843
  left: null,
850
- operator: null,
844
+ operator: "in",
851
845
  right: null,
852
- start: (start = deserializeU32(pos)),
853
- end: (end = deserializeU32(pos + 4)),
846
+ start: (start = deserializeI32(pos)),
847
+ end: (end = deserializeI32(pos + 4)),
854
848
  range: [start, end],
855
849
  };
856
850
  node.left = deserializePrivateIdentifier(pos + 16);
857
- node.operator = "in";
858
851
  node.right = deserializeExpression(pos + 48);
859
852
  return node;
860
853
  }
@@ -867,8 +860,8 @@ function deserializeLogicalExpression(pos) {
867
860
  left: null,
868
861
  operator: deserializeLogicalOperator(pos + 12),
869
862
  right: null,
870
- start: (start = deserializeU32(pos)),
871
- end: (end = deserializeU32(pos + 4)),
863
+ start: (start = deserializeI32(pos)),
864
+ end: (end = deserializeI32(pos + 4)),
872
865
  range: [start, end],
873
866
  };
874
867
  node.left = deserializeExpression(pos + 16);
@@ -884,8 +877,8 @@ function deserializeConditionalExpression(pos) {
884
877
  test: null,
885
878
  consequent: null,
886
879
  alternate: null,
887
- start: (start = deserializeU32(pos)),
888
- end: (end = deserializeU32(pos + 4)),
880
+ start: (start = deserializeI32(pos)),
881
+ end: (end = deserializeI32(pos + 4)),
889
882
  range: [start, end],
890
883
  };
891
884
  node.test = deserializeExpression(pos + 16);
@@ -902,8 +895,8 @@ function deserializeAssignmentExpression(pos) {
902
895
  operator: deserializeAssignmentOperator(pos + 12),
903
896
  left: null,
904
897
  right: null,
905
- start: (start = deserializeU32(pos)),
906
- end: (end = deserializeU32(pos + 4)),
898
+ start: (start = deserializeI32(pos)),
899
+ end: (end = deserializeI32(pos + 4)),
907
900
  range: [start, end],
908
901
  };
909
902
  node.left = deserializeAssignmentTarget(pos + 16);
@@ -966,20 +959,18 @@ function deserializeArrayAssignmentTarget(pos) {
966
959
  end,
967
960
  node = {
968
961
  type: "ArrayPattern",
969
- decorators: null,
962
+ decorators: [],
970
963
  elements: null,
971
- optional: null,
964
+ optional: false,
972
965
  typeAnnotation: null,
973
- start: (start = deserializeU32(pos)),
974
- end: (end = deserializeU32(pos + 4)),
966
+ start: (start = deserializeI32(pos)),
967
+ end: (end = deserializeI32(pos + 4)),
975
968
  range: [start, end],
976
969
  },
977
970
  elements = deserializeVecOptionAssignmentTargetMaybeDefault(pos + 16),
978
971
  rest = deserializeOptionBoxAssignmentTargetRest(pos + 40);
979
972
  rest !== null && elements.push(rest);
980
- node.decorators = [];
981
973
  node.elements = elements;
982
- node.optional = false;
983
974
  return node;
984
975
  }
985
976
 
@@ -988,20 +979,18 @@ function deserializeObjectAssignmentTarget(pos) {
988
979
  end,
989
980
  node = {
990
981
  type: "ObjectPattern",
991
- decorators: null,
982
+ decorators: [],
992
983
  properties: null,
993
- optional: null,
984
+ optional: false,
994
985
  typeAnnotation: null,
995
- start: (start = deserializeU32(pos)),
996
- end: (end = deserializeU32(pos + 4)),
986
+ start: (start = deserializeI32(pos)),
987
+ end: (end = deserializeI32(pos + 4)),
997
988
  range: [start, end],
998
989
  },
999
990
  properties = deserializeVecAssignmentTargetProperty(pos + 16),
1000
991
  rest = deserializeOptionBoxAssignmentTargetRest(pos + 40);
1001
992
  rest !== null && properties.push(rest);
1002
- node.decorators = [];
1003
993
  node.properties = properties;
1004
- node.optional = false;
1005
994
  return node;
1006
995
  }
1007
996
 
@@ -1010,18 +999,16 @@ function deserializeAssignmentTargetRest(pos) {
1010
999
  end,
1011
1000
  node = {
1012
1001
  type: "RestElement",
1013
- decorators: null,
1002
+ decorators: [],
1014
1003
  argument: null,
1015
- optional: null,
1004
+ optional: false,
1016
1005
  typeAnnotation: null,
1017
1006
  value: null,
1018
- start: (start = deserializeU32(pos)),
1019
- end: (end = deserializeU32(pos + 4)),
1007
+ start: (start = deserializeI32(pos)),
1008
+ end: (end = deserializeI32(pos + 4)),
1020
1009
  range: [start, end],
1021
1010
  };
1022
- node.decorators = [];
1023
1011
  node.argument = deserializeAssignmentTarget(pos + 16);
1024
- node.optional = false;
1025
1012
  return node;
1026
1013
  }
1027
1014
 
@@ -1059,19 +1046,17 @@ function deserializeAssignmentTargetWithDefault(pos) {
1059
1046
  end,
1060
1047
  node = {
1061
1048
  type: "AssignmentPattern",
1062
- decorators: null,
1049
+ decorators: [],
1063
1050
  left: null,
1064
1051
  right: null,
1065
- optional: null,
1052
+ optional: false,
1066
1053
  typeAnnotation: null,
1067
- start: (start = deserializeU32(pos)),
1068
- end: (end = deserializeU32(pos + 4)),
1054
+ start: (start = deserializeI32(pos)),
1055
+ end: (end = deserializeI32(pos + 4)),
1069
1056
  range: [start, end],
1070
1057
  };
1071
- node.decorators = [];
1072
1058
  node.left = deserializeAssignmentTarget(pos + 16);
1073
1059
  node.right = deserializeExpression(pos + 32);
1074
- node.optional = false;
1075
1060
  return node;
1076
1061
  }
1077
1062
 
@@ -1087,17 +1072,17 @@ function deserializeAssignmentTargetProperty(pos) {
1087
1072
  }
1088
1073
 
1089
1074
  function deserializeAssignmentTargetPropertyIdentifier(pos) {
1090
- let start = deserializeU32(pos),
1091
- end = deserializeU32(pos + 4),
1075
+ let start = deserializeI32(pos),
1076
+ end = deserializeI32(pos + 4),
1092
1077
  node = {
1093
1078
  type: "Property",
1094
- kind: null,
1079
+ kind: "init",
1095
1080
  key: null,
1096
1081
  value: null,
1097
- method: null,
1098
- shorthand: null,
1099
- computed: null,
1100
- optional: null,
1082
+ method: false,
1083
+ shorthand: true,
1084
+ computed: false,
1085
+ optional: false,
1101
1086
  start,
1102
1087
  end,
1103
1088
  range: [start, end],
@@ -1128,13 +1113,8 @@ function deserializeAssignmentTargetPropertyIdentifier(pos) {
1128
1113
  end,
1129
1114
  range: [start, end],
1130
1115
  });
1131
- node.kind = "init";
1132
1116
  node.key = key;
1133
1117
  node.value = value;
1134
- node.method = false;
1135
- node.shorthand = true;
1136
- node.computed = false;
1137
- node.optional = false;
1138
1118
  return node;
1139
1119
  }
1140
1120
 
@@ -1143,23 +1123,19 @@ function deserializeAssignmentTargetPropertyProperty(pos) {
1143
1123
  end,
1144
1124
  node = {
1145
1125
  type: "Property",
1146
- kind: null,
1126
+ kind: "init",
1147
1127
  key: null,
1148
1128
  value: null,
1149
- method: null,
1150
- shorthand: null,
1129
+ method: false,
1130
+ shorthand: false,
1151
1131
  computed: deserializeBool(pos + 12),
1152
- optional: null,
1153
- start: (start = deserializeU32(pos)),
1154
- end: (end = deserializeU32(pos + 4)),
1132
+ optional: false,
1133
+ start: (start = deserializeI32(pos)),
1134
+ end: (end = deserializeI32(pos + 4)),
1155
1135
  range: [start, end],
1156
1136
  };
1157
- node.kind = "init";
1158
1137
  node.key = deserializePropertyKey(pos + 16);
1159
1138
  node.value = deserializeAssignmentTargetMaybeDefault(pos + 32);
1160
- node.method = false;
1161
- node.shorthand = false;
1162
- node.optional = false;
1163
1139
  return node;
1164
1140
  }
1165
1141
 
@@ -1169,8 +1145,8 @@ function deserializeSequenceExpression(pos) {
1169
1145
  node = {
1170
1146
  type: "SequenceExpression",
1171
1147
  expressions: null,
1172
- start: (start = deserializeU32(pos)),
1173
- end: (end = deserializeU32(pos + 4)),
1148
+ start: (start = deserializeI32(pos)),
1149
+ end: (end = deserializeI32(pos + 4)),
1174
1150
  range: [start, end],
1175
1151
  };
1176
1152
  node.expressions = deserializeVecExpression(pos + 16);
@@ -1181,8 +1157,8 @@ function deserializeSuper(pos) {
1181
1157
  let start, end;
1182
1158
  return {
1183
1159
  type: "Super",
1184
- start: (start = deserializeU32(pos)),
1185
- end: (end = deserializeU32(pos + 4)),
1160
+ start: (start = deserializeI32(pos)),
1161
+ end: (end = deserializeI32(pos + 4)),
1186
1162
  range: [start, end],
1187
1163
  };
1188
1164
  }
@@ -1193,8 +1169,8 @@ function deserializeAwaitExpression(pos) {
1193
1169
  node = {
1194
1170
  type: "AwaitExpression",
1195
1171
  argument: null,
1196
- start: (start = deserializeU32(pos)),
1197
- end: (end = deserializeU32(pos + 4)),
1172
+ start: (start = deserializeI32(pos)),
1173
+ end: (end = deserializeI32(pos + 4)),
1198
1174
  range: [start, end],
1199
1175
  };
1200
1176
  node.argument = deserializeExpression(pos + 16);
@@ -1207,8 +1183,8 @@ function deserializeChainExpression(pos) {
1207
1183
  node = {
1208
1184
  type: "ChainExpression",
1209
1185
  expression: null,
1210
- start: (start = deserializeU32(pos)),
1211
- end: (end = deserializeU32(pos + 4)),
1186
+ start: (start = deserializeI32(pos)),
1187
+ end: (end = deserializeI32(pos + 4)),
1212
1188
  range: [start, end],
1213
1189
  };
1214
1190
  node.expression = deserializeChainElement(pos + 16);
@@ -1239,8 +1215,8 @@ function deserializeParenthesizedExpression(pos) {
1239
1215
  node = {
1240
1216
  type: "ParenthesizedExpression",
1241
1217
  expression: null,
1242
- start: (start = deserializeU32(pos)),
1243
- end: (end = deserializeU32(pos + 4)),
1218
+ start: (start = deserializeI32(pos)),
1219
+ end: (end = deserializeI32(pos + 4)),
1244
1220
  range: [start, end],
1245
1221
  };
1246
1222
  node.expression = deserializeExpression(pos + 16);
@@ -1328,8 +1304,8 @@ function deserializeDirective(pos) {
1328
1304
  type: "ExpressionStatement",
1329
1305
  expression: null,
1330
1306
  directive: deserializeStr(pos + 64),
1331
- start: (start = deserializeU32(pos)),
1332
- end: (end = deserializeU32(pos + 4)),
1307
+ start: (start = deserializeI32(pos)),
1308
+ end: (end = deserializeI32(pos + 4)),
1333
1309
  range: [start, end],
1334
1310
  };
1335
1311
  node.expression = deserializeStringLiteral(pos + 16);
@@ -1341,8 +1317,8 @@ function deserializeHashbang(pos) {
1341
1317
  return {
1342
1318
  type: "Hashbang",
1343
1319
  value: deserializeStr(pos + 16),
1344
- start: (start = deserializeU32(pos)),
1345
- end: (end = deserializeU32(pos + 4)),
1320
+ start: (start = deserializeI32(pos)),
1321
+ end: (end = deserializeI32(pos + 4)),
1346
1322
  range: [start, end],
1347
1323
  };
1348
1324
  }
@@ -1353,8 +1329,8 @@ function deserializeBlockStatement(pos) {
1353
1329
  node = {
1354
1330
  type: "BlockStatement",
1355
1331
  body: null,
1356
- start: (start = deserializeU32(pos)),
1357
- end: (end = deserializeU32(pos + 4)),
1332
+ start: (start = deserializeI32(pos)),
1333
+ end: (end = deserializeI32(pos + 4)),
1358
1334
  range: [start, end],
1359
1335
  };
1360
1336
  node.body = deserializeVecStatement(pos + 16);
@@ -1394,8 +1370,8 @@ function deserializeVariableDeclaration(pos) {
1394
1370
  kind: deserializeVariableDeclarationKind(pos + 12),
1395
1371
  declarations: null,
1396
1372
  declare: deserializeBool(pos + 13),
1397
- start: (start = deserializeU32(pos)),
1398
- end: (end = deserializeU32(pos + 4)),
1373
+ start: (start = deserializeI32(pos)),
1374
+ end: (end = deserializeI32(pos + 4)),
1399
1375
  range: [start, end],
1400
1376
  };
1401
1377
  node.declarations = deserializeVecVariableDeclarator(pos + 16);
@@ -1427,8 +1403,8 @@ function deserializeVariableDeclarator(pos) {
1427
1403
  id: null,
1428
1404
  init: null,
1429
1405
  definite: deserializeBool(pos + 13),
1430
- start: (start = deserializeU32(pos)),
1431
- end: (end = deserializeU32(pos + 4)),
1406
+ start: (start = deserializeI32(pos)),
1407
+ end: (end = deserializeI32(pos + 4)),
1432
1408
  range: [start, end],
1433
1409
  },
1434
1410
  pattern = deserializeBindingPattern(pos + 16);
@@ -1448,8 +1424,8 @@ function deserializeEmptyStatement(pos) {
1448
1424
  let start, end;
1449
1425
  return {
1450
1426
  type: "EmptyStatement",
1451
- start: (start = deserializeU32(pos)),
1452
- end: (end = deserializeU32(pos + 4)),
1427
+ start: (start = deserializeI32(pos)),
1428
+ end: (end = deserializeI32(pos + 4)),
1453
1429
  range: [start, end],
1454
1430
  };
1455
1431
  }
@@ -1461,8 +1437,8 @@ function deserializeExpressionStatement(pos) {
1461
1437
  type: "ExpressionStatement",
1462
1438
  expression: null,
1463
1439
  directive: null,
1464
- start: (start = deserializeU32(pos)),
1465
- end: (end = deserializeU32(pos + 4)),
1440
+ start: (start = deserializeI32(pos)),
1441
+ end: (end = deserializeI32(pos + 4)),
1466
1442
  range: [start, end],
1467
1443
  };
1468
1444
  node.expression = deserializeExpression(pos + 16);
@@ -1477,8 +1453,8 @@ function deserializeIfStatement(pos) {
1477
1453
  test: null,
1478
1454
  consequent: null,
1479
1455
  alternate: null,
1480
- start: (start = deserializeU32(pos)),
1481
- end: (end = deserializeU32(pos + 4)),
1456
+ start: (start = deserializeI32(pos)),
1457
+ end: (end = deserializeI32(pos + 4)),
1482
1458
  range: [start, end],
1483
1459
  };
1484
1460
  node.test = deserializeExpression(pos + 16);
@@ -1494,8 +1470,8 @@ function deserializeDoWhileStatement(pos) {
1494
1470
  type: "DoWhileStatement",
1495
1471
  body: null,
1496
1472
  test: null,
1497
- start: (start = deserializeU32(pos)),
1498
- end: (end = deserializeU32(pos + 4)),
1473
+ start: (start = deserializeI32(pos)),
1474
+ end: (end = deserializeI32(pos + 4)),
1499
1475
  range: [start, end],
1500
1476
  };
1501
1477
  node.body = deserializeStatement(pos + 16);
@@ -1510,8 +1486,8 @@ function deserializeWhileStatement(pos) {
1510
1486
  type: "WhileStatement",
1511
1487
  test: null,
1512
1488
  body: null,
1513
- start: (start = deserializeU32(pos)),
1514
- end: (end = deserializeU32(pos + 4)),
1489
+ start: (start = deserializeI32(pos)),
1490
+ end: (end = deserializeI32(pos + 4)),
1515
1491
  range: [start, end],
1516
1492
  };
1517
1493
  node.test = deserializeExpression(pos + 16);
@@ -1528,8 +1504,8 @@ function deserializeForStatement(pos) {
1528
1504
  test: null,
1529
1505
  update: null,
1530
1506
  body: null,
1531
- start: (start = deserializeU32(pos)),
1532
- end: (end = deserializeU32(pos + 4)),
1507
+ start: (start = deserializeI32(pos)),
1508
+ end: (end = deserializeI32(pos + 4)),
1533
1509
  range: [start, end],
1534
1510
  };
1535
1511
  node.init = deserializeOptionForStatementInit(pos + 16);
@@ -1642,8 +1618,8 @@ function deserializeForInStatement(pos) {
1642
1618
  left: null,
1643
1619
  right: null,
1644
1620
  body: null,
1645
- start: (start = deserializeU32(pos)),
1646
- end: (end = deserializeU32(pos + 4)),
1621
+ start: (start = deserializeI32(pos)),
1622
+ end: (end = deserializeI32(pos + 4)),
1647
1623
  range: [start, end],
1648
1624
  };
1649
1625
  node.left = deserializeForStatementLeft(pos + 16);
@@ -1690,8 +1666,8 @@ function deserializeForOfStatement(pos) {
1690
1666
  left: null,
1691
1667
  right: null,
1692
1668
  body: null,
1693
- start: (start = deserializeU32(pos)),
1694
- end: (end = deserializeU32(pos + 4)),
1669
+ start: (start = deserializeI32(pos)),
1670
+ end: (end = deserializeI32(pos + 4)),
1695
1671
  range: [start, end],
1696
1672
  };
1697
1673
  node.left = deserializeForStatementLeft(pos + 16);
@@ -1706,8 +1682,8 @@ function deserializeContinueStatement(pos) {
1706
1682
  node = {
1707
1683
  type: "ContinueStatement",
1708
1684
  label: null,
1709
- start: (start = deserializeU32(pos)),
1710
- end: (end = deserializeU32(pos + 4)),
1685
+ start: (start = deserializeI32(pos)),
1686
+ end: (end = deserializeI32(pos + 4)),
1711
1687
  range: [start, end],
1712
1688
  };
1713
1689
  node.label = deserializeOptionLabelIdentifier(pos + 16);
@@ -1720,8 +1696,8 @@ function deserializeBreakStatement(pos) {
1720
1696
  node = {
1721
1697
  type: "BreakStatement",
1722
1698
  label: null,
1723
- start: (start = deserializeU32(pos)),
1724
- end: (end = deserializeU32(pos + 4)),
1699
+ start: (start = deserializeI32(pos)),
1700
+ end: (end = deserializeI32(pos + 4)),
1725
1701
  range: [start, end],
1726
1702
  };
1727
1703
  node.label = deserializeOptionLabelIdentifier(pos + 16);
@@ -1734,8 +1710,8 @@ function deserializeReturnStatement(pos) {
1734
1710
  node = {
1735
1711
  type: "ReturnStatement",
1736
1712
  argument: null,
1737
- start: (start = deserializeU32(pos)),
1738
- end: (end = deserializeU32(pos + 4)),
1713
+ start: (start = deserializeI32(pos)),
1714
+ end: (end = deserializeI32(pos + 4)),
1739
1715
  range: [start, end],
1740
1716
  };
1741
1717
  node.argument = deserializeOptionExpression(pos + 16);
@@ -1749,8 +1725,8 @@ function deserializeWithStatement(pos) {
1749
1725
  type: "WithStatement",
1750
1726
  object: null,
1751
1727
  body: null,
1752
- start: (start = deserializeU32(pos)),
1753
- end: (end = deserializeU32(pos + 4)),
1728
+ start: (start = deserializeI32(pos)),
1729
+ end: (end = deserializeI32(pos + 4)),
1754
1730
  range: [start, end],
1755
1731
  };
1756
1732
  node.object = deserializeExpression(pos + 16);
@@ -1765,8 +1741,8 @@ function deserializeSwitchStatement(pos) {
1765
1741
  type: "SwitchStatement",
1766
1742
  discriminant: null,
1767
1743
  cases: null,
1768
- start: (start = deserializeU32(pos)),
1769
- end: (end = deserializeU32(pos + 4)),
1744
+ start: (start = deserializeI32(pos)),
1745
+ end: (end = deserializeI32(pos + 4)),
1770
1746
  range: [start, end],
1771
1747
  };
1772
1748
  node.discriminant = deserializeExpression(pos + 16);
@@ -1781,8 +1757,8 @@ function deserializeSwitchCase(pos) {
1781
1757
  type: "SwitchCase",
1782
1758
  test: null,
1783
1759
  consequent: null,
1784
- start: (start = deserializeU32(pos)),
1785
- end: (end = deserializeU32(pos + 4)),
1760
+ start: (start = deserializeI32(pos)),
1761
+ end: (end = deserializeI32(pos + 4)),
1786
1762
  range: [start, end],
1787
1763
  };
1788
1764
  node.test = deserializeOptionExpression(pos + 16);
@@ -1797,8 +1773,8 @@ function deserializeLabeledStatement(pos) {
1797
1773
  type: "LabeledStatement",
1798
1774
  label: null,
1799
1775
  body: null,
1800
- start: (start = deserializeU32(pos)),
1801
- end: (end = deserializeU32(pos + 4)),
1776
+ start: (start = deserializeI32(pos)),
1777
+ end: (end = deserializeI32(pos + 4)),
1802
1778
  range: [start, end],
1803
1779
  };
1804
1780
  node.label = deserializeLabelIdentifier(pos + 16);
@@ -1812,8 +1788,8 @@ function deserializeThrowStatement(pos) {
1812
1788
  node = {
1813
1789
  type: "ThrowStatement",
1814
1790
  argument: null,
1815
- start: (start = deserializeU32(pos)),
1816
- end: (end = deserializeU32(pos + 4)),
1791
+ start: (start = deserializeI32(pos)),
1792
+ end: (end = deserializeI32(pos + 4)),
1817
1793
  range: [start, end],
1818
1794
  };
1819
1795
  node.argument = deserializeExpression(pos + 16);
@@ -1828,8 +1804,8 @@ function deserializeTryStatement(pos) {
1828
1804
  block: null,
1829
1805
  handler: null,
1830
1806
  finalizer: null,
1831
- start: (start = deserializeU32(pos)),
1832
- end: (end = deserializeU32(pos + 4)),
1807
+ start: (start = deserializeI32(pos)),
1808
+ end: (end = deserializeI32(pos + 4)),
1833
1809
  range: [start, end],
1834
1810
  };
1835
1811
  node.block = deserializeBoxBlockStatement(pos + 16);
@@ -1845,8 +1821,8 @@ function deserializeCatchClause(pos) {
1845
1821
  type: "CatchClause",
1846
1822
  param: null,
1847
1823
  body: null,
1848
- start: (start = deserializeU32(pos)),
1849
- end: (end = deserializeU32(pos + 4)),
1824
+ start: (start = deserializeI32(pos)),
1825
+ end: (end = deserializeI32(pos + 4)),
1850
1826
  range: [start, end],
1851
1827
  };
1852
1828
  node.param = deserializeOptionCatchParameter(pos + 16);
@@ -1871,8 +1847,8 @@ function deserializeDebuggerStatement(pos) {
1871
1847
  let start, end;
1872
1848
  return {
1873
1849
  type: "DebuggerStatement",
1874
- start: (start = deserializeU32(pos)),
1875
- end: (end = deserializeU32(pos + 4)),
1850
+ start: (start = deserializeI32(pos)),
1851
+ end: (end = deserializeI32(pos + 4)),
1876
1852
  range: [start, end],
1877
1853
  };
1878
1854
  }
@@ -1897,19 +1873,17 @@ function deserializeAssignmentPattern(pos) {
1897
1873
  end,
1898
1874
  node = {
1899
1875
  type: "AssignmentPattern",
1900
- decorators: null,
1876
+ decorators: [],
1901
1877
  left: null,
1902
1878
  right: null,
1903
- optional: null,
1879
+ optional: false,
1904
1880
  typeAnnotation: null,
1905
- start: (start = deserializeU32(pos)),
1906
- end: (end = deserializeU32(pos + 4)),
1881
+ start: (start = deserializeI32(pos)),
1882
+ end: (end = deserializeI32(pos + 4)),
1907
1883
  range: [start, end],
1908
1884
  };
1909
- node.decorators = [];
1910
1885
  node.left = deserializeBindingPattern(pos + 16);
1911
1886
  node.right = deserializeExpression(pos + 32);
1912
- node.optional = false;
1913
1887
  return node;
1914
1888
  }
1915
1889
 
@@ -1918,20 +1892,18 @@ function deserializeObjectPattern(pos) {
1918
1892
  end,
1919
1893
  node = {
1920
1894
  type: "ObjectPattern",
1921
- decorators: null,
1895
+ decorators: [],
1922
1896
  properties: null,
1923
- optional: null,
1897
+ optional: false,
1924
1898
  typeAnnotation: null,
1925
- start: (start = deserializeU32(pos)),
1926
- end: (end = deserializeU32(pos + 4)),
1899
+ start: (start = deserializeI32(pos)),
1900
+ end: (end = deserializeI32(pos + 4)),
1927
1901
  range: [start, end],
1928
1902
  },
1929
1903
  properties = deserializeVecBindingProperty(pos + 16),
1930
1904
  rest = deserializeOptionBoxBindingRestElement(pos + 40);
1931
1905
  rest !== null && properties.push(rest);
1932
- node.decorators = [];
1933
1906
  node.properties = properties;
1934
- node.optional = false;
1935
1907
  return node;
1936
1908
  }
1937
1909
 
@@ -1940,22 +1912,19 @@ function deserializeBindingProperty(pos) {
1940
1912
  end,
1941
1913
  node = {
1942
1914
  type: "Property",
1943
- kind: null,
1915
+ kind: "init",
1944
1916
  key: null,
1945
1917
  value: null,
1946
- method: null,
1918
+ method: false,
1947
1919
  shorthand: deserializeBool(pos + 12),
1948
1920
  computed: deserializeBool(pos + 13),
1949
- optional: null,
1950
- start: (start = deserializeU32(pos)),
1951
- end: (end = deserializeU32(pos + 4)),
1921
+ optional: false,
1922
+ start: (start = deserializeI32(pos)),
1923
+ end: (end = deserializeI32(pos + 4)),
1952
1924
  range: [start, end],
1953
1925
  };
1954
- node.kind = "init";
1955
1926
  node.key = deserializePropertyKey(pos + 16);
1956
1927
  node.value = deserializeBindingPattern(pos + 32);
1957
- node.method = false;
1958
- node.optional = false;
1959
1928
  return node;
1960
1929
  }
1961
1930
 
@@ -1964,20 +1933,18 @@ function deserializeArrayPattern(pos) {
1964
1933
  end,
1965
1934
  node = {
1966
1935
  type: "ArrayPattern",
1967
- decorators: null,
1936
+ decorators: [],
1968
1937
  elements: null,
1969
- optional: null,
1938
+ optional: false,
1970
1939
  typeAnnotation: null,
1971
- start: (start = deserializeU32(pos)),
1972
- end: (end = deserializeU32(pos + 4)),
1940
+ start: (start = deserializeI32(pos)),
1941
+ end: (end = deserializeI32(pos + 4)),
1973
1942
  range: [start, end],
1974
1943
  },
1975
1944
  elements = deserializeVecOptionBindingPattern(pos + 16),
1976
1945
  rest = deserializeOptionBoxBindingRestElement(pos + 40);
1977
1946
  rest !== null && elements.push(rest);
1978
- node.decorators = [];
1979
1947
  node.elements = elements;
1980
- node.optional = false;
1981
1948
  return node;
1982
1949
  }
1983
1950
 
@@ -1986,18 +1953,16 @@ function deserializeBindingRestElement(pos) {
1986
1953
  end,
1987
1954
  node = {
1988
1955
  type: "RestElement",
1989
- decorators: null,
1956
+ decorators: [],
1990
1957
  argument: null,
1991
- optional: null,
1958
+ optional: false,
1992
1959
  typeAnnotation: null,
1993
1960
  value: null,
1994
- start: (start = deserializeU32(pos)),
1995
- end: (end = deserializeU32(pos + 4)),
1961
+ start: (start = deserializeI32(pos)),
1962
+ end: (end = deserializeI32(pos + 4)),
1996
1963
  range: [start, end],
1997
1964
  };
1998
- node.decorators = [];
1999
1965
  node.argument = deserializeBindingPattern(pos + 16);
2000
- node.optional = false;
2001
1966
  return node;
2002
1967
  }
2003
1968
 
@@ -2014,9 +1979,9 @@ function deserializeFunction(pos) {
2014
1979
  params: null,
2015
1980
  returnType: null,
2016
1981
  body: null,
2017
- expression: null,
2018
- start: (start = deserializeU32(pos)),
2019
- end: (end = deserializeU32(pos + 4)),
1982
+ expression: false,
1983
+ start: (start = deserializeI32(pos)),
1984
+ end: (end = deserializeI32(pos + 4)),
2020
1985
  range: [start, end],
2021
1986
  },
2022
1987
  params = deserializeBoxFormalParameters(pos + 64);
@@ -2029,7 +1994,6 @@ function deserializeFunction(pos) {
2029
1994
  node.params = params;
2030
1995
  node.returnType = deserializeOptionBoxTSTypeAnnotation(pos + 72);
2031
1996
  node.body = deserializeOptionBoxFunctionBody(pos + 80);
2032
- node.expression = false;
2033
1997
  return node;
2034
1998
  }
2035
1999
 
@@ -2049,9 +2013,10 @@ function deserializeFunctionType(pos) {
2049
2013
  }
2050
2014
 
2051
2015
  function deserializeFormalParameters(pos) {
2052
- let params = deserializeVecFormalParameter(pos + 16);
2053
- if (uint32[(pos + 40) >> 2] !== 0 && uint32[(pos + 44) >> 2] !== 0) {
2054
- pos = uint32[(pos + 40) >> 2];
2016
+ let params = deserializeVecFormalParameter(pos + 16),
2017
+ restFieldPos32 = (pos >> 2) + 10;
2018
+ if (int32[restFieldPos32] !== 0 && int32[restFieldPos32 + 1] !== 0) {
2019
+ pos = int32[restFieldPos32];
2055
2020
  let start,
2056
2021
  end,
2057
2022
  rest = {
@@ -2061,8 +2026,8 @@ function deserializeFormalParameters(pos) {
2061
2026
  optional: false,
2062
2027
  typeAnnotation: null,
2063
2028
  value: null,
2064
- start: (start = deserializeU32(pos + 40)),
2065
- end: (end = deserializeU32(pos + 44)),
2029
+ start: (start = deserializeI32(pos + 40)),
2030
+ end: (end = deserializeI32(pos + 44)),
2066
2031
  range: [start, end],
2067
2032
  };
2068
2033
  rest.argument = deserializeBindingPattern(pos + 56);
@@ -2079,7 +2044,8 @@ function deserializeFormalParameters(pos) {
2079
2044
 
2080
2045
  function deserializeFormalParameter(pos) {
2081
2046
  let param,
2082
- hasInitializer = uint32[(pos + 64) >> 2] !== 0 && uint32[(pos + 68) >> 2] !== 0;
2047
+ initializerFieldPos32 = (pos >> 2) + 16,
2048
+ hasInitializer = int32[initializerFieldPos32] !== 0 && int32[initializerFieldPos32 + 1] !== 0;
2083
2049
  {
2084
2050
  let accessibility = deserializeOptionTSAccessibility(pos + 13),
2085
2051
  readonly = deserializeBool(pos + 14),
@@ -2095,8 +2061,8 @@ function deserializeFormalParameter(pos) {
2095
2061
  right: null,
2096
2062
  optional,
2097
2063
  typeAnnotation: null,
2098
- start: (start = deserializeU32(pos)),
2099
- end: (end = deserializeU32(pos + 4)),
2064
+ start: (start = deserializeI32(pos)),
2065
+ end: (end = deserializeI32(pos + 4)),
2100
2066
  range: [start, end],
2101
2067
  };
2102
2068
  param.decorators = deserializeVecDecorator(pos + 16);
@@ -2120,8 +2086,8 @@ function deserializeFormalParameter(pos) {
2120
2086
  param.end = typeAnnotation.end;
2121
2087
  param.range[1] = typeAnnotation.end;
2122
2088
  } else if (optional) {
2123
- param.end = deserializeU32(pos + 4);
2124
- param.range[1] = deserializeU32(pos + 4);
2089
+ param.end = deserializeI32(pos + 4);
2090
+ param.range[1] = deserializeI32(pos + 4);
2125
2091
  }
2126
2092
  }
2127
2093
  } else {
@@ -2134,8 +2100,8 @@ function deserializeFormalParameter(pos) {
2134
2100
  parameter: null,
2135
2101
  readonly,
2136
2102
  static: false,
2137
- start: (start = deserializeU32(pos)),
2138
- end: (end = deserializeU32(pos + 4)),
2103
+ start: (start = deserializeI32(pos)),
2104
+ end: (end = deserializeI32(pos + 4)),
2139
2105
  range: [start, end],
2140
2106
  };
2141
2107
  param.decorators = deserializeVecDecorator(pos + 16);
@@ -2177,7 +2143,7 @@ function deserializeFormalParameter(pos) {
2177
2143
  param.parameter.end = paramTypeAnnotation.end;
2178
2144
  param.parameter.range[1] = paramTypeAnnotation.end;
2179
2145
  } else if (paramOptional) {
2180
- let paramEnd = deserializeU32(pos + 4);
2146
+ let paramEnd = deserializeI32(pos + 4);
2181
2147
  param.parameter.end = paramEnd;
2182
2148
  param.parameter.range[1] = paramEnd;
2183
2149
  }
@@ -2193,8 +2159,8 @@ function deserializeFunctionBody(pos) {
2193
2159
  node = {
2194
2160
  type: "BlockStatement",
2195
2161
  body: null,
2196
- start: (start = deserializeU32(pos)),
2197
- end: (end = deserializeU32(pos + 4)),
2162
+ start: (start = deserializeI32(pos)),
2163
+ end: (end = deserializeI32(pos + 4)),
2198
2164
  range: [start, end],
2199
2165
  },
2200
2166
  body = deserializeVecDirective(pos + 16);
@@ -2216,9 +2182,9 @@ function deserializeArrowFunctionExpression(pos) {
2216
2182
  returnType: null,
2217
2183
  body: null,
2218
2184
  id: null,
2219
- generator: null,
2220
- start: (start = deserializeU32(pos)),
2221
- end: (end = deserializeU32(pos + 4)),
2185
+ generator: false,
2186
+ start: (start = deserializeI32(pos)),
2187
+ end: (end = deserializeI32(pos + 4)),
2222
2188
  range: [start, end],
2223
2189
  },
2224
2190
  body = deserializeBoxFunctionBody(pos + 40);
@@ -2227,7 +2193,6 @@ function deserializeArrowFunctionExpression(pos) {
2227
2193
  node.params = deserializeBoxFormalParameters(pos + 24);
2228
2194
  node.returnType = deserializeOptionBoxTSTypeAnnotation(pos + 32);
2229
2195
  node.body = body;
2230
- node.generator = false;
2231
2196
  return node;
2232
2197
  }
2233
2198
 
@@ -2238,8 +2203,8 @@ function deserializeYieldExpression(pos) {
2238
2203
  type: "YieldExpression",
2239
2204
  delegate: deserializeBool(pos + 12),
2240
2205
  argument: null,
2241
- start: (start = deserializeU32(pos)),
2242
- end: (end = deserializeU32(pos + 4)),
2206
+ start: (start = deserializeI32(pos)),
2207
+ end: (end = deserializeI32(pos + 4)),
2243
2208
  range: [start, end],
2244
2209
  };
2245
2210
  node.argument = deserializeOptionExpression(pos + 16);
@@ -2260,8 +2225,8 @@ function deserializeClass(pos) {
2260
2225
  body: null,
2261
2226
  abstract: deserializeBool(pos + 137),
2262
2227
  declare: deserializeBool(pos + 138),
2263
- start: (start = deserializeU32(pos)),
2264
- end: (end = deserializeU32(pos + 4)),
2228
+ start: (start = deserializeI32(pos)),
2229
+ end: (end = deserializeI32(pos + 4)),
2265
2230
  range: [start, end],
2266
2231
  };
2267
2232
  node.decorators = deserializeVecDecorator(pos + 16);
@@ -2291,8 +2256,8 @@ function deserializeClassBody(pos) {
2291
2256
  node = {
2292
2257
  type: "ClassBody",
2293
2258
  body: null,
2294
- start: (start = deserializeU32(pos)),
2295
- end: (end = deserializeU32(pos + 4)),
2259
+ start: (start = deserializeI32(pos)),
2260
+ end: (end = deserializeI32(pos + 4)),
2296
2261
  range: [start, end],
2297
2262
  };
2298
2263
  node.body = deserializeVecClassElement(pos + 16);
@@ -2330,8 +2295,8 @@ function deserializeMethodDefinition(pos) {
2330
2295
  override: deserializeBool(pos + 64),
2331
2296
  optional: deserializeBool(pos + 65),
2332
2297
  accessibility: deserializeOptionTSAccessibility(pos + 66),
2333
- start: (start = deserializeU32(pos)),
2334
- end: (end = deserializeU32(pos + 4)),
2298
+ start: (start = deserializeI32(pos)),
2299
+ end: (end = deserializeI32(pos + 4)),
2335
2300
  range: [start, end],
2336
2301
  };
2337
2302
  node.decorators = deserializeVecDecorator(pos + 16);
@@ -2368,8 +2333,8 @@ function deserializePropertyDefinition(pos) {
2368
2333
  definite: deserializeBool(pos + 82),
2369
2334
  readonly: deserializeBool(pos + 83),
2370
2335
  accessibility: deserializeOptionTSAccessibility(pos + 84),
2371
- start: (start = deserializeU32(pos)),
2372
- end: (end = deserializeU32(pos + 4)),
2336
+ start: (start = deserializeI32(pos)),
2337
+ end: (end = deserializeI32(pos + 4)),
2373
2338
  range: [start, end],
2374
2339
  };
2375
2340
  node.decorators = deserializeVecDecorator(pos + 16);
@@ -2410,8 +2375,8 @@ function deserializePrivateIdentifier(pos) {
2410
2375
  return {
2411
2376
  type: "PrivateIdentifier",
2412
2377
  name: deserializeStr(pos + 16),
2413
- start: (start = deserializeU32(pos)),
2414
- end: (end = deserializeU32(pos + 4)),
2378
+ start: (start = deserializeI32(pos)),
2379
+ end: (end = deserializeI32(pos + 4)),
2415
2380
  range: [start, end],
2416
2381
  };
2417
2382
  }
@@ -2422,8 +2387,8 @@ function deserializeStaticBlock(pos) {
2422
2387
  node = {
2423
2388
  type: "StaticBlock",
2424
2389
  body: null,
2425
- start: (start = deserializeU32(pos)),
2426
- end: (end = deserializeU32(pos + 4)),
2390
+ start: (start = deserializeI32(pos)),
2391
+ end: (end = deserializeI32(pos + 4)),
2427
2392
  range: [start, end],
2428
2393
  };
2429
2394
  node.body = deserializeVecStatement(pos + 16);
@@ -2455,20 +2420,17 @@ function deserializeAccessorProperty(pos) {
2455
2420
  override: deserializeBool(pos + 15),
2456
2421
  definite: deserializeBool(pos + 80),
2457
2422
  accessibility: deserializeOptionTSAccessibility(pos + 81),
2458
- declare: null,
2459
- optional: null,
2460
- readonly: null,
2461
- start: (start = deserializeU32(pos)),
2462
- end: (end = deserializeU32(pos + 4)),
2423
+ declare: false,
2424
+ optional: false,
2425
+ readonly: false,
2426
+ start: (start = deserializeI32(pos)),
2427
+ end: (end = deserializeI32(pos + 4)),
2463
2428
  range: [start, end],
2464
2429
  };
2465
2430
  node.decorators = deserializeVecDecorator(pos + 16);
2466
2431
  node.key = deserializePropertyKey(pos + 40);
2467
2432
  node.typeAnnotation = deserializeOptionBoxTSTypeAnnotation(pos + 56);
2468
2433
  node.value = deserializeOptionExpression(pos + 64);
2469
- node.declare = false;
2470
- node.optional = false;
2471
- node.readonly = false;
2472
2434
  return node;
2473
2435
  }
2474
2436
 
@@ -2480,8 +2442,8 @@ function deserializeImportExpression(pos) {
2480
2442
  source: null,
2481
2443
  options: null,
2482
2444
  phase: deserializeOptionImportPhase(pos + 12),
2483
- start: (start = deserializeU32(pos)),
2484
- end: (end = deserializeU32(pos + 4)),
2445
+ start: (start = deserializeI32(pos)),
2446
+ end: (end = deserializeI32(pos + 4)),
2485
2447
  range: [start, end],
2486
2448
  };
2487
2449
  node.source = deserializeExpression(pos + 16);
@@ -2499,8 +2461,8 @@ function deserializeImportDeclaration(pos) {
2499
2461
  phase: deserializeOptionImportPhase(pos + 12),
2500
2462
  attributes: null,
2501
2463
  importKind: deserializeImportOrExportKind(pos + 13),
2502
- start: (start = deserializeU32(pos)),
2503
- end: (end = deserializeU32(pos + 4)),
2464
+ start: (start = deserializeI32(pos)),
2465
+ end: (end = deserializeI32(pos + 4)),
2504
2466
  range: [start, end],
2505
2467
  },
2506
2468
  specifiers = deserializeOptionVecImportDeclarationSpecifier(pos + 16);
@@ -2544,8 +2506,8 @@ function deserializeImportSpecifier(pos) {
2544
2506
  imported: null,
2545
2507
  local: null,
2546
2508
  importKind: deserializeImportOrExportKind(pos + 12),
2547
- start: (start = deserializeU32(pos)),
2548
- end: (end = deserializeU32(pos + 4)),
2509
+ start: (start = deserializeI32(pos)),
2510
+ end: (end = deserializeI32(pos + 4)),
2549
2511
  range: [start, end],
2550
2512
  };
2551
2513
  node.imported = deserializeModuleExportName(pos + 16);
@@ -2559,8 +2521,8 @@ function deserializeImportDefaultSpecifier(pos) {
2559
2521
  node = {
2560
2522
  type: "ImportDefaultSpecifier",
2561
2523
  local: null,
2562
- start: (start = deserializeU32(pos)),
2563
- end: (end = deserializeU32(pos + 4)),
2524
+ start: (start = deserializeI32(pos)),
2525
+ end: (end = deserializeI32(pos + 4)),
2564
2526
  range: [start, end],
2565
2527
  };
2566
2528
  node.local = deserializeBindingIdentifier(pos + 16);
@@ -2573,8 +2535,8 @@ function deserializeImportNamespaceSpecifier(pos) {
2573
2535
  node = {
2574
2536
  type: "ImportNamespaceSpecifier",
2575
2537
  local: null,
2576
- start: (start = deserializeU32(pos)),
2577
- end: (end = deserializeU32(pos + 4)),
2538
+ start: (start = deserializeI32(pos)),
2539
+ end: (end = deserializeI32(pos + 4)),
2578
2540
  range: [start, end],
2579
2541
  };
2580
2542
  node.local = deserializeBindingIdentifier(pos + 16);
@@ -2592,8 +2554,8 @@ function deserializeImportAttribute(pos) {
2592
2554
  type: "ImportAttribute",
2593
2555
  key: null,
2594
2556
  value: null,
2595
- start: (start = deserializeU32(pos)),
2596
- end: (end = deserializeU32(pos + 4)),
2557
+ start: (start = deserializeI32(pos)),
2558
+ end: (end = deserializeI32(pos + 4)),
2597
2559
  range: [start, end],
2598
2560
  };
2599
2561
  node.key = deserializeImportAttributeKey(pos + 16);
@@ -2622,8 +2584,8 @@ function deserializeExportNamedDeclaration(pos) {
2622
2584
  source: null,
2623
2585
  exportKind: deserializeImportOrExportKind(pos + 12),
2624
2586
  attributes: null,
2625
- start: (start = deserializeU32(pos)),
2626
- end: (end = deserializeU32(pos + 4)),
2587
+ start: (start = deserializeI32(pos)),
2588
+ end: (end = deserializeI32(pos + 4)),
2627
2589
  range: [start, end],
2628
2590
  },
2629
2591
  withClause = deserializeOptionBoxWithClause(pos + 104);
@@ -2640,13 +2602,12 @@ function deserializeExportDefaultDeclaration(pos) {
2640
2602
  node = {
2641
2603
  type: "ExportDefaultDeclaration",
2642
2604
  declaration: null,
2643
- exportKind: null,
2644
- start: (start = deserializeU32(pos)),
2645
- end: (end = deserializeU32(pos + 4)),
2605
+ exportKind: "value",
2606
+ start: (start = deserializeI32(pos)),
2607
+ end: (end = deserializeI32(pos + 4)),
2646
2608
  range: [start, end],
2647
2609
  };
2648
2610
  node.declaration = deserializeExportDefaultDeclarationKind(pos + 16);
2649
- node.exportKind = "value";
2650
2611
  return node;
2651
2612
  }
2652
2613
 
@@ -2659,8 +2620,8 @@ function deserializeExportAllDeclaration(pos) {
2659
2620
  source: null,
2660
2621
  attributes: null,
2661
2622
  exportKind: deserializeImportOrExportKind(pos + 12),
2662
- start: (start = deserializeU32(pos)),
2663
- end: (end = deserializeU32(pos + 4)),
2623
+ start: (start = deserializeI32(pos)),
2624
+ end: (end = deserializeI32(pos + 4)),
2664
2625
  range: [start, end],
2665
2626
  },
2666
2627
  withClause = deserializeOptionBoxWithClause(pos + 120);
@@ -2678,8 +2639,8 @@ function deserializeExportSpecifier(pos) {
2678
2639
  local: null,
2679
2640
  exported: null,
2680
2641
  exportKind: deserializeImportOrExportKind(pos + 12),
2681
- start: (start = deserializeU32(pos)),
2682
- end: (end = deserializeU32(pos + 4)),
2642
+ start: (start = deserializeI32(pos)),
2643
+ end: (end = deserializeI32(pos + 4)),
2683
2644
  range: [start, end],
2684
2645
  };
2685
2646
  node.local = deserializeModuleExportName(pos + 16);
@@ -2806,8 +2767,8 @@ function deserializeV8IntrinsicExpression(pos) {
2806
2767
  type: "V8IntrinsicExpression",
2807
2768
  name: null,
2808
2769
  arguments: null,
2809
- start: (start = deserializeU32(pos)),
2810
- end: (end = deserializeU32(pos + 4)),
2770
+ start: (start = deserializeI32(pos)),
2771
+ end: (end = deserializeI32(pos + 4)),
2811
2772
  range: [start, end],
2812
2773
  };
2813
2774
  node.name = deserializeIdentifierName(pos + 16);
@@ -2817,8 +2778,8 @@ function deserializeV8IntrinsicExpression(pos) {
2817
2778
 
2818
2779
  function deserializeBooleanLiteral(pos) {
2819
2780
  let value = deserializeBool(pos + 12),
2820
- start = deserializeU32(pos),
2821
- end = deserializeU32(pos + 4),
2781
+ start = deserializeI32(pos),
2782
+ end = deserializeI32(pos + 4),
2822
2783
  node = {
2823
2784
  type: "Literal",
2824
2785
  value,
@@ -2832,41 +2793,46 @@ function deserializeBooleanLiteral(pos) {
2832
2793
  }
2833
2794
 
2834
2795
  function deserializeNullLiteral(pos) {
2835
- let start = deserializeU32(pos),
2836
- end = deserializeU32(pos + 4),
2837
- node = {
2838
- type: "Literal",
2839
- value: null,
2840
- raw: null,
2841
- start,
2842
- end,
2843
- range: [start, end],
2844
- };
2845
- node.raw = start === 0 && end === 0 ? null : "null";
2846
- return node;
2796
+ let start = deserializeI32(pos),
2797
+ end = deserializeI32(pos + 4);
2798
+ return {
2799
+ type: "Literal",
2800
+ value: null,
2801
+ raw: start === 0 && end === 0 ? null : "null",
2802
+ start,
2803
+ end,
2804
+ range: [start, end],
2805
+ };
2847
2806
  }
2848
2807
 
2849
2808
  function deserializeNumericLiteral(pos) {
2850
- let start, end;
2809
+ let start = deserializeI32(pos),
2810
+ end = deserializeI32(pos + 4);
2851
2811
  return {
2852
2812
  type: "Literal",
2853
2813
  value: deserializeF64(pos + 32),
2854
- raw: deserializeOptionStr(pos + 16),
2855
- start: (start = deserializeU32(pos)),
2856
- end: (end = deserializeU32(pos + 4)),
2814
+ raw:
2815
+ int32[(pos >> 2) + 4] === 0 && int32[(pos >> 2) + 5] === 0
2816
+ ? null
2817
+ : sourceText.slice(start, end),
2818
+ start,
2819
+ end,
2857
2820
  range: [start, end],
2858
2821
  };
2859
2822
  }
2860
2823
 
2861
2824
  function deserializeStringLiteral(pos) {
2862
- let start,
2863
- end,
2825
+ let start = deserializeI32(pos),
2826
+ end = deserializeI32(pos + 4),
2864
2827
  node = {
2865
2828
  type: "Literal",
2866
2829
  value: null,
2867
- raw: deserializeOptionStr(pos + 32),
2868
- start: (start = deserializeU32(pos)),
2869
- end: (end = deserializeU32(pos + 4)),
2830
+ raw:
2831
+ int32[(pos >> 2) + 8] === 0 && int32[(pos >> 2) + 9] === 0
2832
+ ? null
2833
+ : sourceText.slice(start, end),
2834
+ start,
2835
+ end,
2870
2836
  range: [start, end],
2871
2837
  },
2872
2838
  value = deserializeStr(pos + 16);
@@ -2877,33 +2843,36 @@ function deserializeStringLiteral(pos) {
2877
2843
  }
2878
2844
 
2879
2845
  function deserializeBigIntLiteral(pos) {
2880
- let start,
2881
- end,
2882
- node = {
2883
- type: "Literal",
2884
- value: null,
2885
- raw: deserializeOptionStr(pos + 32),
2886
- bigint: null,
2887
- start: (start = deserializeU32(pos)),
2888
- end: (end = deserializeU32(pos + 4)),
2889
- range: [start, end],
2890
- },
2846
+ let start = deserializeI32(pos),
2847
+ end = deserializeI32(pos + 4),
2891
2848
  bigint = deserializeStr(pos + 16);
2892
- node.value = BigInt(bigint);
2893
- node.bigint = bigint;
2894
- return node;
2849
+ return {
2850
+ type: "Literal",
2851
+ value: BigInt(bigint),
2852
+ raw:
2853
+ int32[(pos >> 2) + 8] === 0 && int32[(pos >> 2) + 9] === 0
2854
+ ? null
2855
+ : sourceText.slice(start, end),
2856
+ bigint,
2857
+ start,
2858
+ end,
2859
+ range: [start, end],
2860
+ };
2895
2861
  }
2896
2862
 
2897
2863
  function deserializeRegExpLiteral(pos) {
2898
- let start,
2899
- end,
2864
+ let start = deserializeI32(pos),
2865
+ end = deserializeI32(pos + 4),
2900
2866
  node = {
2901
2867
  type: "Literal",
2902
2868
  value: null,
2903
- raw: deserializeOptionStr(pos + 48),
2869
+ raw:
2870
+ int32[(pos >> 2) + 12] === 0 && int32[(pos >> 2) + 13] === 0
2871
+ ? null
2872
+ : sourceText.slice(start, end),
2904
2873
  regex: null,
2905
- start: (start = deserializeU32(pos)),
2906
- end: (end = deserializeU32(pos + 4)),
2874
+ start,
2875
+ end,
2907
2876
  range: [start, end],
2908
2877
  },
2909
2878
  regex = deserializeRegExp(pos + 16),
@@ -2946,8 +2915,8 @@ function deserializeJSXElement(pos) {
2946
2915
  openingElement: null,
2947
2916
  children: null,
2948
2917
  closingElement: null,
2949
- start: (start = deserializeU32(pos)),
2950
- end: (end = deserializeU32(pos + 4)),
2918
+ start: (start = deserializeI32(pos)),
2919
+ end: (end = deserializeI32(pos + 4)),
2951
2920
  range: [start, end],
2952
2921
  },
2953
2922
  closingElement = deserializeOptionBoxJSXClosingElement(pos + 48),
@@ -2967,15 +2936,14 @@ function deserializeJSXOpeningElement(pos) {
2967
2936
  name: null,
2968
2937
  typeArguments: null,
2969
2938
  attributes: null,
2970
- selfClosing: null,
2971
- start: (start = deserializeU32(pos)),
2972
- end: (end = deserializeU32(pos + 4)),
2939
+ selfClosing: false,
2940
+ start: (start = deserializeI32(pos)),
2941
+ end: (end = deserializeI32(pos + 4)),
2973
2942
  range: [start, end],
2974
2943
  };
2975
2944
  node.name = deserializeJSXElementName(pos + 16);
2976
2945
  node.typeArguments = deserializeOptionBoxTSTypeParameterInstantiation(pos + 32);
2977
2946
  node.attributes = deserializeVecJSXAttributeItem(pos + 40);
2978
- node.selfClosing = false;
2979
2947
  return node;
2980
2948
  }
2981
2949
 
@@ -2985,8 +2953,8 @@ function deserializeJSXClosingElement(pos) {
2985
2953
  node = {
2986
2954
  type: "JSXClosingElement",
2987
2955
  name: null,
2988
- start: (start = deserializeU32(pos)),
2989
- end: (end = deserializeU32(pos + 4)),
2956
+ start: (start = deserializeI32(pos)),
2957
+ end: (end = deserializeI32(pos + 4)),
2990
2958
  range: [start, end],
2991
2959
  };
2992
2960
  node.name = deserializeJSXElementName(pos + 16);
@@ -3001,8 +2969,8 @@ function deserializeJSXFragment(pos) {
3001
2969
  openingFragment: null,
3002
2970
  children: null,
3003
2971
  closingFragment: null,
3004
- start: (start = deserializeU32(pos)),
3005
- end: (end = deserializeU32(pos + 4)),
2972
+ start: (start = deserializeI32(pos)),
2973
+ end: (end = deserializeI32(pos + 4)),
3006
2974
  range: [start, end],
3007
2975
  };
3008
2976
  node.openingFragment = deserializeJSXOpeningFragment(pos + 16);
@@ -3015,8 +2983,8 @@ function deserializeJSXOpeningFragment(pos) {
3015
2983
  let start, end;
3016
2984
  return {
3017
2985
  type: "JSXOpeningFragment",
3018
- start: (start = deserializeU32(pos)),
3019
- end: (end = deserializeU32(pos + 4)),
2986
+ start: (start = deserializeI32(pos)),
2987
+ end: (end = deserializeI32(pos + 4)),
3020
2988
  range: [start, end],
3021
2989
  };
3022
2990
  }
@@ -3025,8 +2993,8 @@ function deserializeJSXClosingFragment(pos) {
3025
2993
  let start, end;
3026
2994
  return {
3027
2995
  type: "JSXClosingFragment",
3028
- start: (start = deserializeU32(pos)),
3029
- end: (end = deserializeU32(pos + 4)),
2996
+ start: (start = deserializeI32(pos)),
2997
+ end: (end = deserializeI32(pos + 4)),
3030
2998
  range: [start, end],
3031
2999
  };
3032
3000
  }
@@ -3069,8 +3037,8 @@ function deserializeJSXNamespacedName(pos) {
3069
3037
  type: "JSXNamespacedName",
3070
3038
  namespace: null,
3071
3039
  name: null,
3072
- start: (start = deserializeU32(pos)),
3073
- end: (end = deserializeU32(pos + 4)),
3040
+ start: (start = deserializeI32(pos)),
3041
+ end: (end = deserializeI32(pos + 4)),
3074
3042
  range: [start, end],
3075
3043
  };
3076
3044
  node.namespace = deserializeJSXIdentifier(pos + 16);
@@ -3085,8 +3053,8 @@ function deserializeJSXMemberExpression(pos) {
3085
3053
  type: "JSXMemberExpression",
3086
3054
  object: null,
3087
3055
  property: null,
3088
- start: (start = deserializeU32(pos)),
3089
- end: (end = deserializeU32(pos + 4)),
3056
+ start: (start = deserializeI32(pos)),
3057
+ end: (end = deserializeI32(pos + 4)),
3090
3058
  range: [start, end],
3091
3059
  };
3092
3060
  node.object = deserializeJSXMemberExpressionObject(pos + 16);
@@ -3127,8 +3095,8 @@ function deserializeJSXExpressionContainer(pos) {
3127
3095
  node = {
3128
3096
  type: "JSXExpressionContainer",
3129
3097
  expression: null,
3130
- start: (start = deserializeU32(pos)),
3131
- end: (end = deserializeU32(pos + 4)),
3098
+ start: (start = deserializeI32(pos)),
3099
+ end: (end = deserializeI32(pos + 4)),
3132
3100
  range: [start, end],
3133
3101
  };
3134
3102
  node.expression = deserializeJSXExpression(pos + 16);
@@ -3234,8 +3202,8 @@ function deserializeJSXEmptyExpression(pos) {
3234
3202
  let start, end;
3235
3203
  return {
3236
3204
  type: "JSXEmptyExpression",
3237
- start: (start = deserializeU32(pos)),
3238
- end: (end = deserializeU32(pos + 4)),
3205
+ start: (start = deserializeI32(pos)),
3206
+ end: (end = deserializeI32(pos + 4)),
3239
3207
  range: [start, end],
3240
3208
  };
3241
3209
  }
@@ -3258,8 +3226,8 @@ function deserializeJSXAttribute(pos) {
3258
3226
  type: "JSXAttribute",
3259
3227
  name: null,
3260
3228
  value: null,
3261
- start: (start = deserializeU32(pos)),
3262
- end: (end = deserializeU32(pos + 4)),
3229
+ start: (start = deserializeI32(pos)),
3230
+ end: (end = deserializeI32(pos + 4)),
3263
3231
  range: [start, end],
3264
3232
  };
3265
3233
  node.name = deserializeJSXAttributeName(pos + 16);
@@ -3273,8 +3241,8 @@ function deserializeJSXSpreadAttribute(pos) {
3273
3241
  node = {
3274
3242
  type: "JSXSpreadAttribute",
3275
3243
  argument: null,
3276
- start: (start = deserializeU32(pos)),
3277
- end: (end = deserializeU32(pos + 4)),
3244
+ start: (start = deserializeI32(pos)),
3245
+ end: (end = deserializeI32(pos + 4)),
3278
3246
  range: [start, end],
3279
3247
  };
3280
3248
  node.argument = deserializeExpression(pos + 16);
@@ -3312,8 +3280,8 @@ function deserializeJSXIdentifier(pos) {
3312
3280
  return {
3313
3281
  type: "JSXIdentifier",
3314
3282
  name: deserializeStr(pos + 16),
3315
- start: (start = deserializeU32(pos)),
3316
- end: (end = deserializeU32(pos + 4)),
3283
+ start: (start = deserializeI32(pos)),
3284
+ end: (end = deserializeI32(pos + 4)),
3317
3285
  range: [start, end],
3318
3286
  };
3319
3287
  }
@@ -3341,8 +3309,8 @@ function deserializeJSXSpreadChild(pos) {
3341
3309
  node = {
3342
3310
  type: "JSXSpreadChild",
3343
3311
  expression: null,
3344
- start: (start = deserializeU32(pos)),
3345
- end: (end = deserializeU32(pos + 4)),
3312
+ start: (start = deserializeI32(pos)),
3313
+ end: (end = deserializeI32(pos + 4)),
3346
3314
  range: [start, end],
3347
3315
  };
3348
3316
  node.expression = deserializeExpression(pos + 16);
@@ -3350,13 +3318,17 @@ function deserializeJSXSpreadChild(pos) {
3350
3318
  }
3351
3319
 
3352
3320
  function deserializeJSXText(pos) {
3353
- let start, end;
3321
+ let start = deserializeI32(pos),
3322
+ end = deserializeI32(pos + 4);
3354
3323
  return {
3355
3324
  type: "JSXText",
3356
3325
  value: deserializeStr(pos + 16),
3357
- raw: deserializeOptionStr(pos + 32),
3358
- start: (start = deserializeU32(pos)),
3359
- end: (end = deserializeU32(pos + 4)),
3326
+ raw:
3327
+ int32[(pos >> 2) + 8] === 0 && int32[(pos >> 2) + 9] === 0
3328
+ ? null
3329
+ : sourceText.slice(start, end),
3330
+ start,
3331
+ end,
3360
3332
  range: [start, end],
3361
3333
  };
3362
3334
  }
@@ -3366,17 +3338,14 @@ function deserializeTSThisParameter(pos) {
3366
3338
  end,
3367
3339
  node = {
3368
3340
  type: "Identifier",
3369
- decorators: null,
3370
- name: null,
3371
- optional: null,
3341
+ decorators: [],
3342
+ name: "this",
3343
+ optional: false,
3372
3344
  typeAnnotation: null,
3373
- start: (start = deserializeU32(pos)),
3374
- end: (end = deserializeU32(pos + 4)),
3345
+ start: (start = deserializeI32(pos)),
3346
+ end: (end = deserializeI32(pos + 4)),
3375
3347
  range: [start, end],
3376
3348
  };
3377
- node.decorators = [];
3378
- node.name = "this";
3379
- node.optional = false;
3380
3349
  node.typeAnnotation = deserializeOptionBoxTSTypeAnnotation(pos + 24);
3381
3350
  return node;
3382
3351
  }
@@ -3390,8 +3359,8 @@ function deserializeTSEnumDeclaration(pos) {
3390
3359
  body: null,
3391
3360
  const: deserializeBool(pos + 12),
3392
3361
  declare: deserializeBool(pos + 13),
3393
- start: (start = deserializeU32(pos)),
3394
- end: (end = deserializeU32(pos + 4)),
3362
+ start: (start = deserializeI32(pos)),
3363
+ end: (end = deserializeI32(pos + 4)),
3395
3364
  range: [start, end],
3396
3365
  };
3397
3366
  node.id = deserializeBindingIdentifier(pos + 16);
@@ -3405,8 +3374,8 @@ function deserializeTSEnumBody(pos) {
3405
3374
  node = {
3406
3375
  type: "TSEnumBody",
3407
3376
  members: null,
3408
- start: (start = deserializeU32(pos)),
3409
- end: (end = deserializeU32(pos + 4)),
3377
+ start: (start = deserializeI32(pos)),
3378
+ end: (end = deserializeI32(pos + 4)),
3410
3379
  range: [start, end],
3411
3380
  };
3412
3381
  node.members = deserializeVecTSEnumMember(pos + 16);
@@ -3420,14 +3389,13 @@ function deserializeTSEnumMember(pos) {
3420
3389
  type: "TSEnumMember",
3421
3390
  id: null,
3422
3391
  initializer: null,
3423
- computed: null,
3424
- start: (start = deserializeU32(pos)),
3425
- end: (end = deserializeU32(pos + 4)),
3392
+ computed: deserializeU8(pos + 16) > 1,
3393
+ start: (start = deserializeI32(pos)),
3394
+ end: (end = deserializeI32(pos + 4)),
3426
3395
  range: [start, end],
3427
3396
  };
3428
3397
  node.id = deserializeTSEnumMemberName(pos + 16);
3429
3398
  node.initializer = deserializeOptionExpression(pos + 32);
3430
- node.computed = deserializeU8(pos + 16) > 1;
3431
3399
  return node;
3432
3400
  }
3433
3401
 
@@ -3452,8 +3420,8 @@ function deserializeTSTypeAnnotation(pos) {
3452
3420
  node = {
3453
3421
  type: "TSTypeAnnotation",
3454
3422
  typeAnnotation: null,
3455
- start: (start = deserializeU32(pos)),
3456
- end: (end = deserializeU32(pos + 4)),
3423
+ start: (start = deserializeI32(pos)),
3424
+ end: (end = deserializeI32(pos + 4)),
3457
3425
  range: [start, end],
3458
3426
  };
3459
3427
  node.typeAnnotation = deserializeTSType(pos + 16);
@@ -3466,8 +3434,8 @@ function deserializeTSLiteralType(pos) {
3466
3434
  node = {
3467
3435
  type: "TSLiteralType",
3468
3436
  literal: null,
3469
- start: (start = deserializeU32(pos)),
3470
- end: (end = deserializeU32(pos + 4)),
3437
+ start: (start = deserializeI32(pos)),
3438
+ end: (end = deserializeI32(pos + 4)),
3471
3439
  range: [start, end],
3472
3440
  };
3473
3441
  node.literal = deserializeTSLiteral(pos + 16);
@@ -3583,8 +3551,8 @@ function deserializeTSConditionalType(pos) {
3583
3551
  extendsType: null,
3584
3552
  trueType: null,
3585
3553
  falseType: null,
3586
- start: (start = deserializeU32(pos)),
3587
- end: (end = deserializeU32(pos + 4)),
3554
+ start: (start = deserializeI32(pos)),
3555
+ end: (end = deserializeI32(pos + 4)),
3588
3556
  range: [start, end],
3589
3557
  };
3590
3558
  node.checkType = deserializeTSType(pos + 16);
@@ -3600,8 +3568,8 @@ function deserializeTSUnionType(pos) {
3600
3568
  node = {
3601
3569
  type: "TSUnionType",
3602
3570
  types: null,
3603
- start: (start = deserializeU32(pos)),
3604
- end: (end = deserializeU32(pos + 4)),
3571
+ start: (start = deserializeI32(pos)),
3572
+ end: (end = deserializeI32(pos + 4)),
3605
3573
  range: [start, end],
3606
3574
  };
3607
3575
  node.types = deserializeVecTSType(pos + 16);
@@ -3614,8 +3582,8 @@ function deserializeTSIntersectionType(pos) {
3614
3582
  node = {
3615
3583
  type: "TSIntersectionType",
3616
3584
  types: null,
3617
- start: (start = deserializeU32(pos)),
3618
- end: (end = deserializeU32(pos + 4)),
3585
+ start: (start = deserializeI32(pos)),
3586
+ end: (end = deserializeI32(pos + 4)),
3619
3587
  range: [start, end],
3620
3588
  };
3621
3589
  node.types = deserializeVecTSType(pos + 16);
@@ -3629,8 +3597,8 @@ function deserializeTSParenthesizedType(pos) {
3629
3597
  node = {
3630
3598
  type: "TSParenthesizedType",
3631
3599
  typeAnnotation: null,
3632
- start: (start = deserializeU32(pos)),
3633
- end: (end = deserializeU32(pos + 4)),
3600
+ start: (start = deserializeI32(pos)),
3601
+ end: (end = deserializeI32(pos + 4)),
3634
3602
  range: [start, end],
3635
3603
  };
3636
3604
  node.typeAnnotation = deserializeTSType(pos + 16);
@@ -3645,8 +3613,8 @@ function deserializeTSTypeOperator(pos) {
3645
3613
  type: "TSTypeOperator",
3646
3614
  operator: deserializeTSTypeOperatorOperator(pos + 12),
3647
3615
  typeAnnotation: null,
3648
- start: (start = deserializeU32(pos)),
3649
- end: (end = deserializeU32(pos + 4)),
3616
+ start: (start = deserializeI32(pos)),
3617
+ end: (end = deserializeI32(pos + 4)),
3650
3618
  range: [start, end],
3651
3619
  };
3652
3620
  node.typeAnnotation = deserializeTSType(pos + 16);
@@ -3672,8 +3640,8 @@ function deserializeTSArrayType(pos) {
3672
3640
  node = {
3673
3641
  type: "TSArrayType",
3674
3642
  elementType: null,
3675
- start: (start = deserializeU32(pos)),
3676
- end: (end = deserializeU32(pos + 4)),
3643
+ start: (start = deserializeI32(pos)),
3644
+ end: (end = deserializeI32(pos + 4)),
3677
3645
  range: [start, end],
3678
3646
  };
3679
3647
  node.elementType = deserializeTSType(pos + 16);
@@ -3687,8 +3655,8 @@ function deserializeTSIndexedAccessType(pos) {
3687
3655
  type: "TSIndexedAccessType",
3688
3656
  objectType: null,
3689
3657
  indexType: null,
3690
- start: (start = deserializeU32(pos)),
3691
- end: (end = deserializeU32(pos + 4)),
3658
+ start: (start = deserializeI32(pos)),
3659
+ end: (end = deserializeI32(pos + 4)),
3692
3660
  range: [start, end],
3693
3661
  };
3694
3662
  node.objectType = deserializeTSType(pos + 16);
@@ -3702,8 +3670,8 @@ function deserializeTSTupleType(pos) {
3702
3670
  node = {
3703
3671
  type: "TSTupleType",
3704
3672
  elementTypes: null,
3705
- start: (start = deserializeU32(pos)),
3706
- end: (end = deserializeU32(pos + 4)),
3673
+ start: (start = deserializeI32(pos)),
3674
+ end: (end = deserializeI32(pos + 4)),
3707
3675
  range: [start, end],
3708
3676
  };
3709
3677
  node.elementTypes = deserializeVecTSTupleElement(pos + 16);
@@ -3718,8 +3686,8 @@ function deserializeTSNamedTupleMember(pos) {
3718
3686
  label: null,
3719
3687
  elementType: null,
3720
3688
  optional: deserializeBool(pos + 12),
3721
- start: (start = deserializeU32(pos)),
3722
- end: (end = deserializeU32(pos + 4)),
3689
+ start: (start = deserializeI32(pos)),
3690
+ end: (end = deserializeI32(pos + 4)),
3723
3691
  range: [start, end],
3724
3692
  };
3725
3693
  node.label = deserializeIdentifierName(pos + 16);
@@ -3733,8 +3701,8 @@ function deserializeTSOptionalType(pos) {
3733
3701
  node = {
3734
3702
  type: "TSOptionalType",
3735
3703
  typeAnnotation: null,
3736
- start: (start = deserializeU32(pos)),
3737
- end: (end = deserializeU32(pos + 4)),
3704
+ start: (start = deserializeI32(pos)),
3705
+ end: (end = deserializeI32(pos + 4)),
3738
3706
  range: [start, end],
3739
3707
  };
3740
3708
  node.typeAnnotation = deserializeTSType(pos + 16);
@@ -3747,8 +3715,8 @@ function deserializeTSRestType(pos) {
3747
3715
  node = {
3748
3716
  type: "TSRestType",
3749
3717
  typeAnnotation: null,
3750
- start: (start = deserializeU32(pos)),
3751
- end: (end = deserializeU32(pos + 4)),
3718
+ start: (start = deserializeI32(pos)),
3719
+ end: (end = deserializeI32(pos + 4)),
3752
3720
  range: [start, end],
3753
3721
  };
3754
3722
  node.typeAnnotation = deserializeTSType(pos + 16);
@@ -3844,8 +3812,8 @@ function deserializeTSAnyKeyword(pos) {
3844
3812
  let start, end;
3845
3813
  return {
3846
3814
  type: "TSAnyKeyword",
3847
- start: (start = deserializeU32(pos)),
3848
- end: (end = deserializeU32(pos + 4)),
3815
+ start: (start = deserializeI32(pos)),
3816
+ end: (end = deserializeI32(pos + 4)),
3849
3817
  range: [start, end],
3850
3818
  };
3851
3819
  }
@@ -3854,8 +3822,8 @@ function deserializeTSStringKeyword(pos) {
3854
3822
  let start, end;
3855
3823
  return {
3856
3824
  type: "TSStringKeyword",
3857
- start: (start = deserializeU32(pos)),
3858
- end: (end = deserializeU32(pos + 4)),
3825
+ start: (start = deserializeI32(pos)),
3826
+ end: (end = deserializeI32(pos + 4)),
3859
3827
  range: [start, end],
3860
3828
  };
3861
3829
  }
@@ -3864,8 +3832,8 @@ function deserializeTSBooleanKeyword(pos) {
3864
3832
  let start, end;
3865
3833
  return {
3866
3834
  type: "TSBooleanKeyword",
3867
- start: (start = deserializeU32(pos)),
3868
- end: (end = deserializeU32(pos + 4)),
3835
+ start: (start = deserializeI32(pos)),
3836
+ end: (end = deserializeI32(pos + 4)),
3869
3837
  range: [start, end],
3870
3838
  };
3871
3839
  }
@@ -3874,8 +3842,8 @@ function deserializeTSNumberKeyword(pos) {
3874
3842
  let start, end;
3875
3843
  return {
3876
3844
  type: "TSNumberKeyword",
3877
- start: (start = deserializeU32(pos)),
3878
- end: (end = deserializeU32(pos + 4)),
3845
+ start: (start = deserializeI32(pos)),
3846
+ end: (end = deserializeI32(pos + 4)),
3879
3847
  range: [start, end],
3880
3848
  };
3881
3849
  }
@@ -3884,8 +3852,8 @@ function deserializeTSNeverKeyword(pos) {
3884
3852
  let start, end;
3885
3853
  return {
3886
3854
  type: "TSNeverKeyword",
3887
- start: (start = deserializeU32(pos)),
3888
- end: (end = deserializeU32(pos + 4)),
3855
+ start: (start = deserializeI32(pos)),
3856
+ end: (end = deserializeI32(pos + 4)),
3889
3857
  range: [start, end],
3890
3858
  };
3891
3859
  }
@@ -3894,8 +3862,8 @@ function deserializeTSIntrinsicKeyword(pos) {
3894
3862
  let start, end;
3895
3863
  return {
3896
3864
  type: "TSIntrinsicKeyword",
3897
- start: (start = deserializeU32(pos)),
3898
- end: (end = deserializeU32(pos + 4)),
3865
+ start: (start = deserializeI32(pos)),
3866
+ end: (end = deserializeI32(pos + 4)),
3899
3867
  range: [start, end],
3900
3868
  };
3901
3869
  }
@@ -3904,8 +3872,8 @@ function deserializeTSUnknownKeyword(pos) {
3904
3872
  let start, end;
3905
3873
  return {
3906
3874
  type: "TSUnknownKeyword",
3907
- start: (start = deserializeU32(pos)),
3908
- end: (end = deserializeU32(pos + 4)),
3875
+ start: (start = deserializeI32(pos)),
3876
+ end: (end = deserializeI32(pos + 4)),
3909
3877
  range: [start, end],
3910
3878
  };
3911
3879
  }
@@ -3914,8 +3882,8 @@ function deserializeTSNullKeyword(pos) {
3914
3882
  let start, end;
3915
3883
  return {
3916
3884
  type: "TSNullKeyword",
3917
- start: (start = deserializeU32(pos)),
3918
- end: (end = deserializeU32(pos + 4)),
3885
+ start: (start = deserializeI32(pos)),
3886
+ end: (end = deserializeI32(pos + 4)),
3919
3887
  range: [start, end],
3920
3888
  };
3921
3889
  }
@@ -3924,8 +3892,8 @@ function deserializeTSUndefinedKeyword(pos) {
3924
3892
  let start, end;
3925
3893
  return {
3926
3894
  type: "TSUndefinedKeyword",
3927
- start: (start = deserializeU32(pos)),
3928
- end: (end = deserializeU32(pos + 4)),
3895
+ start: (start = deserializeI32(pos)),
3896
+ end: (end = deserializeI32(pos + 4)),
3929
3897
  range: [start, end],
3930
3898
  };
3931
3899
  }
@@ -3934,8 +3902,8 @@ function deserializeTSVoidKeyword(pos) {
3934
3902
  let start, end;
3935
3903
  return {
3936
3904
  type: "TSVoidKeyword",
3937
- start: (start = deserializeU32(pos)),
3938
- end: (end = deserializeU32(pos + 4)),
3905
+ start: (start = deserializeI32(pos)),
3906
+ end: (end = deserializeI32(pos + 4)),
3939
3907
  range: [start, end],
3940
3908
  };
3941
3909
  }
@@ -3944,8 +3912,8 @@ function deserializeTSSymbolKeyword(pos) {
3944
3912
  let start, end;
3945
3913
  return {
3946
3914
  type: "TSSymbolKeyword",
3947
- start: (start = deserializeU32(pos)),
3948
- end: (end = deserializeU32(pos + 4)),
3915
+ start: (start = deserializeI32(pos)),
3916
+ end: (end = deserializeI32(pos + 4)),
3949
3917
  range: [start, end],
3950
3918
  };
3951
3919
  }
@@ -3954,8 +3922,8 @@ function deserializeTSThisType(pos) {
3954
3922
  let start, end;
3955
3923
  return {
3956
3924
  type: "TSThisType",
3957
- start: (start = deserializeU32(pos)),
3958
- end: (end = deserializeU32(pos + 4)),
3925
+ start: (start = deserializeI32(pos)),
3926
+ end: (end = deserializeI32(pos + 4)),
3959
3927
  range: [start, end],
3960
3928
  };
3961
3929
  }
@@ -3964,8 +3932,8 @@ function deserializeTSObjectKeyword(pos) {
3964
3932
  let start, end;
3965
3933
  return {
3966
3934
  type: "TSObjectKeyword",
3967
- start: (start = deserializeU32(pos)),
3968
- end: (end = deserializeU32(pos + 4)),
3935
+ start: (start = deserializeI32(pos)),
3936
+ end: (end = deserializeI32(pos + 4)),
3969
3937
  range: [start, end],
3970
3938
  };
3971
3939
  }
@@ -3974,8 +3942,8 @@ function deserializeTSBigIntKeyword(pos) {
3974
3942
  let start, end;
3975
3943
  return {
3976
3944
  type: "TSBigIntKeyword",
3977
- start: (start = deserializeU32(pos)),
3978
- end: (end = deserializeU32(pos + 4)),
3945
+ start: (start = deserializeI32(pos)),
3946
+ end: (end = deserializeI32(pos + 4)),
3979
3947
  range: [start, end],
3980
3948
  };
3981
3949
  }
@@ -3987,8 +3955,8 @@ function deserializeTSTypeReference(pos) {
3987
3955
  type: "TSTypeReference",
3988
3956
  typeName: null,
3989
3957
  typeArguments: null,
3990
- start: (start = deserializeU32(pos)),
3991
- end: (end = deserializeU32(pos + 4)),
3958
+ start: (start = deserializeI32(pos)),
3959
+ end: (end = deserializeI32(pos + 4)),
3992
3960
  range: [start, end],
3993
3961
  };
3994
3962
  node.typeName = deserializeTSTypeName(pos + 16);
@@ -4016,8 +3984,8 @@ function deserializeTSQualifiedName(pos) {
4016
3984
  type: "TSQualifiedName",
4017
3985
  left: null,
4018
3986
  right: null,
4019
- start: (start = deserializeU32(pos)),
4020
- end: (end = deserializeU32(pos + 4)),
3987
+ start: (start = deserializeI32(pos)),
3988
+ end: (end = deserializeI32(pos + 4)),
4021
3989
  range: [start, end],
4022
3990
  };
4023
3991
  node.left = deserializeTSTypeName(pos + 16);
@@ -4031,8 +3999,8 @@ function deserializeTSTypeParameterInstantiation(pos) {
4031
3999
  node = {
4032
4000
  type: "TSTypeParameterInstantiation",
4033
4001
  params: null,
4034
- start: (start = deserializeU32(pos)),
4035
- end: (end = deserializeU32(pos + 4)),
4002
+ start: (start = deserializeI32(pos)),
4003
+ end: (end = deserializeI32(pos + 4)),
4036
4004
  range: [start, end],
4037
4005
  };
4038
4006
  node.params = deserializeVecTSType(pos + 16);
@@ -4050,8 +4018,8 @@ function deserializeTSTypeParameter(pos) {
4050
4018
  in: deserializeBool(pos + 12),
4051
4019
  out: deserializeBool(pos + 13),
4052
4020
  const: deserializeBool(pos + 14),
4053
- start: (start = deserializeU32(pos)),
4054
- end: (end = deserializeU32(pos + 4)),
4021
+ start: (start = deserializeI32(pos)),
4022
+ end: (end = deserializeI32(pos + 4)),
4055
4023
  range: [start, end],
4056
4024
  };
4057
4025
  node.name = deserializeBindingIdentifier(pos + 16);
@@ -4066,8 +4034,8 @@ function deserializeTSTypeParameterDeclaration(pos) {
4066
4034
  node = {
4067
4035
  type: "TSTypeParameterDeclaration",
4068
4036
  params: null,
4069
- start: (start = deserializeU32(pos)),
4070
- end: (end = deserializeU32(pos + 4)),
4037
+ start: (start = deserializeI32(pos)),
4038
+ end: (end = deserializeI32(pos + 4)),
4071
4039
  range: [start, end],
4072
4040
  };
4073
4041
  node.params = deserializeVecTSTypeParameter(pos + 16);
@@ -4083,8 +4051,8 @@ function deserializeTSTypeAliasDeclaration(pos) {
4083
4051
  typeParameters: null,
4084
4052
  typeAnnotation: null,
4085
4053
  declare: deserializeBool(pos + 72),
4086
- start: (start = deserializeU32(pos)),
4087
- end: (end = deserializeU32(pos + 4)),
4054
+ start: (start = deserializeI32(pos)),
4055
+ end: (end = deserializeI32(pos + 4)),
4088
4056
  range: [start, end],
4089
4057
  };
4090
4058
  node.id = deserializeBindingIdentifier(pos + 16);
@@ -4113,8 +4081,8 @@ function deserializeTSClassImplements(pos) {
4113
4081
  type: "TSClassImplements",
4114
4082
  expression: null,
4115
4083
  typeArguments: null,
4116
- start: (start = deserializeU32(pos)),
4117
- end: (end = deserializeU32(pos + 4)),
4084
+ start: (start = deserializeI32(pos)),
4085
+ end: (end = deserializeI32(pos + 4)),
4118
4086
  range: [start, end],
4119
4087
  },
4120
4088
  expression = deserializeTSTypeName(pos + 16);
@@ -4163,8 +4131,8 @@ function deserializeTSInterfaceDeclaration(pos) {
4163
4131
  extends: null,
4164
4132
  body: null,
4165
4133
  declare: deserializeBool(pos + 88),
4166
- start: (start = deserializeU32(pos)),
4167
- end: (end = deserializeU32(pos + 4)),
4134
+ start: (start = deserializeI32(pos)),
4135
+ end: (end = deserializeI32(pos + 4)),
4168
4136
  range: [start, end],
4169
4137
  };
4170
4138
  node.id = deserializeBindingIdentifier(pos + 16);
@@ -4180,8 +4148,8 @@ function deserializeTSInterfaceBody(pos) {
4180
4148
  node = {
4181
4149
  type: "TSInterfaceBody",
4182
4150
  body: null,
4183
- start: (start = deserializeU32(pos)),
4184
- end: (end = deserializeU32(pos + 4)),
4151
+ start: (start = deserializeI32(pos)),
4152
+ end: (end = deserializeI32(pos + 4)),
4185
4153
  range: [start, end],
4186
4154
  };
4187
4155
  node.body = deserializeVecTSSignature(pos + 16);
@@ -4199,14 +4167,13 @@ function deserializeTSPropertySignature(pos) {
4199
4167
  key: null,
4200
4168
  typeAnnotation: null,
4201
4169
  accessibility: null,
4202
- static: null,
4203
- start: (start = deserializeU32(pos)),
4204
- end: (end = deserializeU32(pos + 4)),
4170
+ static: false,
4171
+ start: (start = deserializeI32(pos)),
4172
+ end: (end = deserializeI32(pos + 4)),
4205
4173
  range: [start, end],
4206
4174
  };
4207
4175
  node.key = deserializePropertyKey(pos + 16);
4208
4176
  node.typeAnnotation = deserializeOptionBoxTSTypeAnnotation(pos + 32);
4209
- node.static = false;
4210
4177
  return node;
4211
4178
  }
4212
4179
 
@@ -4237,8 +4204,8 @@ function deserializeTSIndexSignature(pos) {
4237
4204
  readonly: deserializeBool(pos + 12),
4238
4205
  static: deserializeBool(pos + 13),
4239
4206
  accessibility: null,
4240
- start: (start = deserializeU32(pos)),
4241
- end: (end = deserializeU32(pos + 4)),
4207
+ start: (start = deserializeI32(pos)),
4208
+ end: (end = deserializeI32(pos + 4)),
4242
4209
  range: [start, end],
4243
4210
  };
4244
4211
  node.parameters = deserializeVecTSIndexSignatureName(pos + 16);
@@ -4254,8 +4221,8 @@ function deserializeTSCallSignatureDeclaration(pos) {
4254
4221
  typeParameters: null,
4255
4222
  params: null,
4256
4223
  returnType: null,
4257
- start: (start = deserializeU32(pos)),
4258
- end: (end = deserializeU32(pos + 4)),
4224
+ start: (start = deserializeI32(pos)),
4225
+ end: (end = deserializeI32(pos + 4)),
4259
4226
  range: [start, end],
4260
4227
  },
4261
4228
  params = deserializeBoxFormalParameters(pos + 32),
@@ -4293,10 +4260,10 @@ function deserializeTSMethodSignature(pos) {
4293
4260
  params: null,
4294
4261
  returnType: null,
4295
4262
  accessibility: null,
4296
- readonly: null,
4297
- static: null,
4298
- start: (start = deserializeU32(pos)),
4299
- end: (end = deserializeU32(pos + 4)),
4263
+ readonly: false,
4264
+ static: false,
4265
+ start: (start = deserializeI32(pos)),
4266
+ end: (end = deserializeI32(pos + 4)),
4300
4267
  range: [start, end],
4301
4268
  },
4302
4269
  params = deserializeBoxFormalParameters(pos + 48),
@@ -4306,8 +4273,6 @@ function deserializeTSMethodSignature(pos) {
4306
4273
  node.typeParameters = deserializeOptionBoxTSTypeParameterDeclaration(pos + 32);
4307
4274
  node.params = params;
4308
4275
  node.returnType = deserializeOptionBoxTSTypeAnnotation(pos + 56);
4309
- node.readonly = false;
4310
- node.static = false;
4311
4276
  return node;
4312
4277
  }
4313
4278
 
@@ -4319,8 +4284,8 @@ function deserializeTSConstructSignatureDeclaration(pos) {
4319
4284
  typeParameters: null,
4320
4285
  params: null,
4321
4286
  returnType: null,
4322
- start: (start = deserializeU32(pos)),
4323
- end: (end = deserializeU32(pos + 4)),
4287
+ start: (start = deserializeI32(pos)),
4288
+ end: (end = deserializeI32(pos + 4)),
4324
4289
  range: [start, end],
4325
4290
  };
4326
4291
  node.typeParameters = deserializeOptionBoxTSTypeParameterDeclaration(pos + 16);
@@ -4334,16 +4299,14 @@ function deserializeTSIndexSignatureName(pos) {
4334
4299
  end,
4335
4300
  node = {
4336
4301
  type: "Identifier",
4337
- decorators: null,
4302
+ decorators: [],
4338
4303
  name: deserializeStr(pos + 16),
4339
- optional: null,
4304
+ optional: false,
4340
4305
  typeAnnotation: null,
4341
- start: (start = deserializeU32(pos)),
4342
- end: (end = deserializeU32(pos + 4)),
4306
+ start: (start = deserializeI32(pos)),
4307
+ end: (end = deserializeI32(pos + 4)),
4343
4308
  range: [start, end],
4344
4309
  };
4345
- node.decorators = [];
4346
- node.optional = false;
4347
4310
  node.typeAnnotation = deserializeBoxTSTypeAnnotation(pos + 32);
4348
4311
  return node;
4349
4312
  }
@@ -4355,8 +4318,8 @@ function deserializeTSInterfaceHeritage(pos) {
4355
4318
  type: "TSInterfaceHeritage",
4356
4319
  expression: null,
4357
4320
  typeArguments: null,
4358
- start: (start = deserializeU32(pos)),
4359
- end: (end = deserializeU32(pos + 4)),
4321
+ start: (start = deserializeI32(pos)),
4322
+ end: (end = deserializeI32(pos + 4)),
4360
4323
  range: [start, end],
4361
4324
  };
4362
4325
  node.expression = deserializeExpression(pos + 16);
@@ -4372,8 +4335,8 @@ function deserializeTSTypePredicate(pos) {
4372
4335
  parameterName: null,
4373
4336
  asserts: deserializeBool(pos + 12),
4374
4337
  typeAnnotation: null,
4375
- start: (start = deserializeU32(pos)),
4376
- end: (end = deserializeU32(pos + 4)),
4338
+ start: (start = deserializeI32(pos)),
4339
+ end: (end = deserializeI32(pos + 4)),
4377
4340
  range: [start, end],
4378
4341
  };
4379
4342
  node.parameterName = deserializeTSTypePredicateName(pos + 16);
@@ -4394,8 +4357,8 @@ function deserializeTSTypePredicateName(pos) {
4394
4357
 
4395
4358
  function deserializeTSModuleDeclaration(pos) {
4396
4359
  let kind = deserializeTSModuleDeclarationKind(pos + 88),
4397
- start = deserializeU32(pos),
4398
- end = deserializeU32(pos + 4),
4360
+ start = deserializeI32(pos),
4361
+ end = deserializeI32(pos + 4),
4399
4362
  declare = deserializeBool(pos + 89),
4400
4363
  node,
4401
4364
  body = deserializeOptionTSModuleDeclarationBody(pos + 72);
@@ -4507,11 +4470,11 @@ function deserializeTSGlobalDeclaration(pos) {
4507
4470
  type: "TSModuleDeclaration",
4508
4471
  id: null,
4509
4472
  body: null,
4510
- kind: null,
4473
+ kind: "global",
4511
4474
  declare: deserializeBool(pos + 88),
4512
- global: null,
4513
- start: (start = deserializeU32(pos)),
4514
- end: (end = deserializeU32(pos + 4)),
4475
+ global: true,
4476
+ start: (start = deserializeI32(pos)),
4477
+ end: (end = deserializeI32(pos + 4)),
4515
4478
  range: [start, end],
4516
4479
  },
4517
4480
  keywordStart,
@@ -4522,13 +4485,11 @@ function deserializeTSGlobalDeclaration(pos) {
4522
4485
  name: "global",
4523
4486
  optional: false,
4524
4487
  typeAnnotation: null,
4525
- start: (keywordStart = deserializeU32(pos + 16)),
4526
- end: (keywordEnd = deserializeU32(pos + 20)),
4488
+ start: (keywordStart = deserializeI32(pos + 16)),
4489
+ end: (keywordEnd = deserializeI32(pos + 20)),
4527
4490
  range: [keywordStart, keywordEnd],
4528
4491
  };
4529
4492
  node.body = deserializeTSModuleBlock(pos + 24);
4530
- node.kind = "global";
4531
- node.global = true;
4532
4493
  return node;
4533
4494
  }
4534
4495
 
@@ -4538,8 +4499,8 @@ function deserializeTSModuleBlock(pos) {
4538
4499
  node = {
4539
4500
  type: "TSModuleBlock",
4540
4501
  body: null,
4541
- start: (start = deserializeU32(pos)),
4542
- end: (end = deserializeU32(pos + 4)),
4502
+ start: (start = deserializeI32(pos)),
4503
+ end: (end = deserializeI32(pos + 4)),
4543
4504
  range: [start, end],
4544
4505
  },
4545
4506
  body = deserializeVecDirective(pos + 16);
@@ -4554,8 +4515,8 @@ function deserializeTSTypeLiteral(pos) {
4554
4515
  node = {
4555
4516
  type: "TSTypeLiteral",
4556
4517
  members: null,
4557
- start: (start = deserializeU32(pos)),
4558
- end: (end = deserializeU32(pos + 4)),
4518
+ start: (start = deserializeI32(pos)),
4519
+ end: (end = deserializeI32(pos + 4)),
4559
4520
  range: [start, end],
4560
4521
  };
4561
4522
  node.members = deserializeVecTSSignature(pos + 16);
@@ -4568,8 +4529,8 @@ function deserializeTSInferType(pos) {
4568
4529
  node = {
4569
4530
  type: "TSInferType",
4570
4531
  typeParameter: null,
4571
- start: (start = deserializeU32(pos)),
4572
- end: (end = deserializeU32(pos + 4)),
4532
+ start: (start = deserializeI32(pos)),
4533
+ end: (end = deserializeI32(pos + 4)),
4573
4534
  range: [start, end],
4574
4535
  };
4575
4536
  node.typeParameter = deserializeBoxTSTypeParameter(pos + 16);
@@ -4583,8 +4544,8 @@ function deserializeTSTypeQuery(pos) {
4583
4544
  type: "TSTypeQuery",
4584
4545
  exprName: null,
4585
4546
  typeArguments: null,
4586
- start: (start = deserializeU32(pos)),
4587
- end: (end = deserializeU32(pos + 4)),
4547
+ start: (start = deserializeI32(pos)),
4548
+ end: (end = deserializeI32(pos + 4)),
4588
4549
  range: [start, end],
4589
4550
  };
4590
4551
  node.exprName = deserializeTSTypeQueryExprName(pos + 16);
@@ -4616,8 +4577,8 @@ function deserializeTSImportType(pos) {
4616
4577
  options: null,
4617
4578
  qualifier: null,
4618
4579
  typeArguments: null,
4619
- start: (start = deserializeU32(pos)),
4620
- end: (end = deserializeU32(pos + 4)),
4580
+ start: (start = deserializeI32(pos)),
4581
+ end: (end = deserializeI32(pos + 4)),
4621
4582
  range: [start, end],
4622
4583
  };
4623
4584
  node.source = deserializeStringLiteral(pos + 16);
@@ -4645,8 +4606,8 @@ function deserializeTSImportTypeQualifiedName(pos) {
4645
4606
  type: "TSQualifiedName",
4646
4607
  left: null,
4647
4608
  right: null,
4648
- start: (start = deserializeU32(pos)),
4649
- end: (end = deserializeU32(pos + 4)),
4609
+ start: (start = deserializeI32(pos)),
4610
+ end: (end = deserializeI32(pos + 4)),
4650
4611
  range: [start, end],
4651
4612
  };
4652
4613
  node.left = deserializeTSImportTypeQualifier(pos + 16);
@@ -4662,8 +4623,8 @@ function deserializeTSFunctionType(pos) {
4662
4623
  typeParameters: null,
4663
4624
  params: null,
4664
4625
  returnType: null,
4665
- start: (start = deserializeU32(pos)),
4666
- end: (end = deserializeU32(pos + 4)),
4626
+ start: (start = deserializeI32(pos)),
4627
+ end: (end = deserializeI32(pos + 4)),
4667
4628
  range: [start, end],
4668
4629
  },
4669
4630
  params = deserializeBoxFormalParameters(pos + 32),
@@ -4684,8 +4645,8 @@ function deserializeTSConstructorType(pos) {
4684
4645
  typeParameters: null,
4685
4646
  params: null,
4686
4647
  returnType: null,
4687
- start: (start = deserializeU32(pos)),
4688
- end: (end = deserializeU32(pos + 4)),
4648
+ start: (start = deserializeI32(pos)),
4649
+ end: (end = deserializeI32(pos + 4)),
4689
4650
  range: [start, end],
4690
4651
  };
4691
4652
  node.typeParameters = deserializeOptionBoxTSTypeParameterDeclaration(pos + 16);
@@ -4705,8 +4666,8 @@ function deserializeTSMappedType(pos) {
4705
4666
  typeAnnotation: null,
4706
4667
  optional: null,
4707
4668
  readonly: deserializeOptionTSMappedTypeModifierOperator(pos + 97),
4708
- start: (start = deserializeU32(pos)),
4709
- end: (end = deserializeU32(pos + 4)),
4669
+ start: (start = deserializeI32(pos)),
4670
+ end: (end = deserializeI32(pos + 4)),
4710
4671
  range: [start, end],
4711
4672
  },
4712
4673
  optional = deserializeOptionTSMappedTypeModifierOperator(pos + 96);
@@ -4739,8 +4700,8 @@ function deserializeTSTemplateLiteralType(pos) {
4739
4700
  type: "TSTemplateLiteralType",
4740
4701
  quasis: null,
4741
4702
  types: null,
4742
- start: (start = deserializeU32(pos)),
4743
- end: (end = deserializeU32(pos + 4)),
4703
+ start: (start = deserializeI32(pos)),
4704
+ end: (end = deserializeI32(pos + 4)),
4744
4705
  range: [start, end],
4745
4706
  };
4746
4707
  node.quasis = deserializeVecTemplateElement(pos + 16);
@@ -4755,8 +4716,8 @@ function deserializeTSAsExpression(pos) {
4755
4716
  type: "TSAsExpression",
4756
4717
  expression: null,
4757
4718
  typeAnnotation: null,
4758
- start: (start = deserializeU32(pos)),
4759
- end: (end = deserializeU32(pos + 4)),
4719
+ start: (start = deserializeI32(pos)),
4720
+ end: (end = deserializeI32(pos + 4)),
4760
4721
  range: [start, end],
4761
4722
  };
4762
4723
  node.expression = deserializeExpression(pos + 16);
@@ -4771,8 +4732,8 @@ function deserializeTSSatisfiesExpression(pos) {
4771
4732
  type: "TSSatisfiesExpression",
4772
4733
  expression: null,
4773
4734
  typeAnnotation: null,
4774
- start: (start = deserializeU32(pos)),
4775
- end: (end = deserializeU32(pos + 4)),
4735
+ start: (start = deserializeI32(pos)),
4736
+ end: (end = deserializeI32(pos + 4)),
4776
4737
  range: [start, end],
4777
4738
  };
4778
4739
  node.expression = deserializeExpression(pos + 16);
@@ -4787,8 +4748,8 @@ function deserializeTSTypeAssertion(pos) {
4787
4748
  type: "TSTypeAssertion",
4788
4749
  typeAnnotation: null,
4789
4750
  expression: null,
4790
- start: (start = deserializeU32(pos)),
4791
- end: (end = deserializeU32(pos + 4)),
4751
+ start: (start = deserializeI32(pos)),
4752
+ end: (end = deserializeI32(pos + 4)),
4792
4753
  range: [start, end],
4793
4754
  };
4794
4755
  node.typeAnnotation = deserializeTSType(pos + 16);
@@ -4804,8 +4765,8 @@ function deserializeTSImportEqualsDeclaration(pos) {
4804
4765
  id: null,
4805
4766
  moduleReference: null,
4806
4767
  importKind: deserializeImportOrExportKind(pos + 12),
4807
- start: (start = deserializeU32(pos)),
4808
- end: (end = deserializeU32(pos + 4)),
4768
+ start: (start = deserializeI32(pos)),
4769
+ end: (end = deserializeI32(pos + 4)),
4809
4770
  range: [start, end],
4810
4771
  };
4811
4772
  node.id = deserializeBindingIdentifier(pos + 16);
@@ -4832,8 +4793,8 @@ function deserializeTSExternalModuleReference(pos) {
4832
4793
  node = {
4833
4794
  type: "TSExternalModuleReference",
4834
4795
  expression: null,
4835
- start: (start = deserializeU32(pos)),
4836
- end: (end = deserializeU32(pos + 4)),
4796
+ start: (start = deserializeI32(pos)),
4797
+ end: (end = deserializeI32(pos + 4)),
4837
4798
  range: [start, end],
4838
4799
  };
4839
4800
  node.expression = deserializeStringLiteral(pos + 16);
@@ -4846,8 +4807,8 @@ function deserializeTSNonNullExpression(pos) {
4846
4807
  node = {
4847
4808
  type: "TSNonNullExpression",
4848
4809
  expression: null,
4849
- start: (start = deserializeU32(pos)),
4850
- end: (end = deserializeU32(pos + 4)),
4810
+ start: (start = deserializeI32(pos)),
4811
+ end: (end = deserializeI32(pos + 4)),
4851
4812
  range: [start, end],
4852
4813
  };
4853
4814
  node.expression = deserializeExpression(pos + 16);
@@ -4860,8 +4821,8 @@ function deserializeDecorator(pos) {
4860
4821
  node = {
4861
4822
  type: "Decorator",
4862
4823
  expression: null,
4863
- start: (start = deserializeU32(pos)),
4864
- end: (end = deserializeU32(pos + 4)),
4824
+ start: (start = deserializeI32(pos)),
4825
+ end: (end = deserializeI32(pos + 4)),
4865
4826
  range: [start, end],
4866
4827
  };
4867
4828
  node.expression = deserializeExpression(pos + 16);
@@ -4874,8 +4835,8 @@ function deserializeTSExportAssignment(pos) {
4874
4835
  node = {
4875
4836
  type: "TSExportAssignment",
4876
4837
  expression: null,
4877
- start: (start = deserializeU32(pos)),
4878
- end: (end = deserializeU32(pos + 4)),
4838
+ start: (start = deserializeI32(pos)),
4839
+ end: (end = deserializeI32(pos + 4)),
4879
4840
  range: [start, end],
4880
4841
  };
4881
4842
  node.expression = deserializeExpression(pos + 16);
@@ -4888,8 +4849,8 @@ function deserializeTSNamespaceExportDeclaration(pos) {
4888
4849
  node = {
4889
4850
  type: "TSNamespaceExportDeclaration",
4890
4851
  id: null,
4891
- start: (start = deserializeU32(pos)),
4892
- end: (end = deserializeU32(pos + 4)),
4852
+ start: (start = deserializeI32(pos)),
4853
+ end: (end = deserializeI32(pos + 4)),
4893
4854
  range: [start, end],
4894
4855
  };
4895
4856
  node.id = deserializeIdentifierName(pos + 16);
@@ -4903,8 +4864,8 @@ function deserializeTSInstantiationExpression(pos) {
4903
4864
  type: "TSInstantiationExpression",
4904
4865
  expression: null,
4905
4866
  typeArguments: null,
4906
- start: (start = deserializeU32(pos)),
4907
- end: (end = deserializeU32(pos + 4)),
4867
+ start: (start = deserializeI32(pos)),
4868
+ end: (end = deserializeI32(pos + 4)),
4908
4869
  range: [start, end],
4909
4870
  };
4910
4871
  node.expression = deserializeExpression(pos + 16);
@@ -4930,8 +4891,8 @@ function deserializeJSDocNullableType(pos) {
4930
4891
  type: "TSJSDocNullableType",
4931
4892
  typeAnnotation: null,
4932
4893
  postfix: deserializeBool(pos + 12),
4933
- start: (start = deserializeU32(pos)),
4934
- end: (end = deserializeU32(pos + 4)),
4894
+ start: (start = deserializeI32(pos)),
4895
+ end: (end = deserializeI32(pos + 4)),
4935
4896
  range: [start, end],
4936
4897
  };
4937
4898
  node.typeAnnotation = deserializeTSType(pos + 16);
@@ -4945,8 +4906,8 @@ function deserializeJSDocNonNullableType(pos) {
4945
4906
  type: "TSJSDocNonNullableType",
4946
4907
  typeAnnotation: null,
4947
4908
  postfix: deserializeBool(pos + 12),
4948
- start: (start = deserializeU32(pos)),
4949
- end: (end = deserializeU32(pos + 4)),
4909
+ start: (start = deserializeI32(pos)),
4910
+ end: (end = deserializeI32(pos + 4)),
4950
4911
  range: [start, end],
4951
4912
  };
4952
4913
  node.typeAnnotation = deserializeTSType(pos + 16);
@@ -4957,8 +4918,8 @@ function deserializeJSDocUnknownType(pos) {
4957
4918
  let start, end;
4958
4919
  return {
4959
4920
  type: "TSJSDocUnknownType",
4960
- start: (start = deserializeU32(pos)),
4961
- end: (end = deserializeU32(pos + 4)),
4921
+ start: (start = deserializeI32(pos)),
4922
+ end: (end = deserializeI32(pos + 4)),
4962
4923
  range: [start, end],
4963
4924
  };
4964
4925
  }
@@ -4978,8 +4939,8 @@ function deserializeCommentKind(pos) {
4978
4939
 
4979
4940
  function deserializeComment(pos) {
4980
4941
  let type = deserializeCommentKind(pos + 12),
4981
- start = deserializeU32(pos),
4982
- end = deserializeU32(pos + 4);
4942
+ start = deserializeI32(pos),
4943
+ end = deserializeI32(pos + 4);
4983
4944
  return {
4984
4945
  type,
4985
4946
  value: sourceText.slice(start + 2, end - (type === "Line" ? 0 : 2)),
@@ -5004,8 +4965,8 @@ function deserializeModuleKind(pos) {
5004
4965
 
5005
4966
  function deserializeSpan(pos) {
5006
4967
  return {
5007
- start: deserializeU32(pos),
5008
- end: deserializeU32(pos + 4),
4968
+ start: deserializeI32(pos),
4969
+ end: deserializeI32(pos + 4),
5009
4970
  };
5010
4971
  }
5011
4972
 
@@ -5013,8 +4974,8 @@ function deserializeNameSpan(pos) {
5013
4974
  let start, end;
5014
4975
  return {
5015
4976
  value: deserializeStr(pos + 8),
5016
- start: (start = deserializeU32(pos)),
5017
- end: (end = deserializeU32(pos + 4)),
4977
+ start: (start = deserializeI32(pos)),
4978
+ end: (end = deserializeI32(pos + 4)),
5018
4979
  range: [start, end],
5019
4980
  };
5020
4981
  }
@@ -5068,8 +5029,8 @@ function deserializeExportEntry(pos) {
5068
5029
  exportName: deserializeExportExportName(pos + 72),
5069
5030
  localName: deserializeExportLocalName(pos + 104),
5070
5031
  isType: deserializeBool(pos + 136),
5071
- start: (start = deserializeU32(pos)),
5072
- end: (end = deserializeU32(pos + 4)),
5032
+ start: (start = deserializeI32(pos)),
5033
+ end: (end = deserializeI32(pos + 4)),
5073
5034
  range: [start, end],
5074
5035
  };
5075
5036
  }
@@ -5184,8 +5145,8 @@ function deserializeDynamicImport(pos) {
5184
5145
  let start, end;
5185
5146
  return {
5186
5147
  moduleRequest: deserializeSpan(pos + 8),
5187
- start: (start = deserializeU32(pos)),
5188
- end: (end = deserializeU32(pos + 4)),
5148
+ start: (start = deserializeI32(pos)),
5149
+ end: (end = deserializeI32(pos + 4)),
5189
5150
  range: [start, end],
5190
5151
  };
5191
5152
  }
@@ -5361,8 +5322,8 @@ function deserializeErrorLabel(pos) {
5361
5322
  let start, end;
5362
5323
  return {
5363
5324
  message: deserializeOptionStr(pos + 8),
5364
- start: (start = deserializeU32(pos)),
5365
- end: (end = deserializeU32(pos + 4)),
5325
+ start: (start = deserializeI32(pos)),
5326
+ end: (end = deserializeI32(pos + 4)),
5366
5327
  range: [start, end],
5367
5328
  };
5368
5329
  }
@@ -5382,8 +5343,8 @@ function deserializeStaticImport(pos) {
5382
5343
  return {
5383
5344
  moduleRequest: deserializeNameSpan(pos + 8),
5384
5345
  entries: deserializeVecImportEntry(pos + 32),
5385
- start: (start = deserializeU32(pos)),
5386
- end: (end = deserializeU32(pos + 4)),
5346
+ start: (start = deserializeI32(pos)),
5347
+ end: (end = deserializeI32(pos + 4)),
5387
5348
  range: [start, end],
5388
5349
  };
5389
5350
  }
@@ -5392,41 +5353,45 @@ function deserializeStaticExport(pos) {
5392
5353
  let start, end;
5393
5354
  return {
5394
5355
  entries: deserializeVecExportEntry(pos + 8),
5395
- start: (start = deserializeU32(pos)),
5396
- end: (end = deserializeU32(pos + 4)),
5356
+ start: (start = deserializeI32(pos)),
5357
+ end: (end = deserializeI32(pos + 4)),
5397
5358
  range: [start, end],
5398
5359
  };
5399
5360
  }
5400
5361
 
5401
5362
  function deserializeStr(pos) {
5402
5363
  let pos32 = pos >> 2,
5403
- len = uint32[pos32 + 2];
5364
+ len = int32[pos32 + 2];
5404
5365
  if (len === 0) return "";
5405
- pos = uint32[pos32];
5406
- if (sourceIsAscii && pos < sourceEndPos) return sourceText.substr(pos, len);
5407
- // Longer strings use `TextDecoder`
5408
- // TODO: Find best switch-over point
5366
+ pos = int32[pos32];
5409
5367
  let end = pos + len;
5410
- if (len > 50) return decodeStr(uint8.subarray(pos, end));
5411
- // Shorter strings decode by hand to avoid native call
5412
- let out = "",
5413
- c;
5414
- do {
5415
- c = uint8[pos++];
5416
- if (c < 128) out += fromCodePoint(c);
5417
- else {
5418
- out += decodeStr(uint8.subarray(pos - 1, end));
5419
- break;
5420
- }
5421
- } while (pos < end);
5422
- return out;
5368
+ if (end <= firstNonAsciiPos) return sourceTextLatin.substr(pos, len);
5369
+ // Use `utf8Slice` for strings longer than 64 bytes
5370
+ if (len > 64) return utf8Slice.call(uint8, pos, end);
5371
+ if (pos < sourceEndPos) {
5372
+ // Check if all bytes are ASCII, use `utf8Slice` if not
5373
+ for (let i = pos; i < end; i++) if (uint8[i] >= 128) return utf8Slice.call(uint8, pos, end);
5374
+ // String is all ASCII, so slice from `sourceTextLatin`
5375
+ return sourceTextLatin.substr(pos, len);
5376
+ }
5377
+ // String is not in source region - use `fromCharCode.apply` with a temp array of correct length.
5378
+ // Copy bytes into temp array.
5379
+ // If any byte is non-ASCII, use `utf8Slice`.
5380
+ let arr = stringDecodeArrays[len];
5381
+ for (let i = 0; i < len; i++) {
5382
+ let b = uint8[pos + i];
5383
+ if (b >= 128) return utf8Slice.call(uint8, pos, end);
5384
+ arr[i] = b;
5385
+ }
5386
+ // Call `fromCharCode` with temp array
5387
+ return fromCharCode.apply(null, arr);
5423
5388
  }
5424
5389
 
5425
5390
  function deserializeVecComment(pos) {
5426
5391
  let arr = [],
5427
5392
  pos32 = pos >> 2;
5428
- pos = uint32[pos32];
5429
- let endPos = pos + uint32[pos32 + 2] * 16;
5393
+ pos = int32[pos32];
5394
+ let endPos = pos + (int32[pos32 + 2] << 4);
5430
5395
  for (; pos !== endPos; ) {
5431
5396
  arr.push(deserializeComment(pos));
5432
5397
  pos += 16;
@@ -5435,15 +5400,16 @@ function deserializeVecComment(pos) {
5435
5400
  }
5436
5401
 
5437
5402
  function deserializeOptionHashbang(pos) {
5438
- if (uint32[(pos + 16) >> 2] === 0 && uint32[(pos + 20) >> 2] === 0) return null;
5439
- return deserializeHashbang(pos);
5403
+ return int32[(pos >> 2) + 4] === 0 && int32[(pos >> 2) + 5] === 0
5404
+ ? null
5405
+ : deserializeHashbang(pos);
5440
5406
  }
5441
5407
 
5442
5408
  function deserializeVecDirective(pos) {
5443
5409
  let arr = [],
5444
5410
  pos32 = pos >> 2;
5445
- pos = uint32[pos32];
5446
- let endPos = pos + uint32[pos32 + 2] * 80;
5411
+ pos = int32[pos32];
5412
+ let endPos = pos + int32[pos32 + 2] * 80;
5447
5413
  for (; pos !== endPos; ) {
5448
5414
  arr.push(deserializeDirective(pos));
5449
5415
  pos += 80;
@@ -5454,8 +5420,8 @@ function deserializeVecDirective(pos) {
5454
5420
  function deserializeVecStatement(pos) {
5455
5421
  let arr = [],
5456
5422
  pos32 = pos >> 2;
5457
- pos = uint32[pos32];
5458
- let endPos = pos + uint32[pos32 + 2] * 16;
5423
+ pos = int32[pos32];
5424
+ let endPos = pos + (int32[pos32 + 2] << 4);
5459
5425
  for (; pos !== endPos; ) {
5460
5426
  arr.push(deserializeStatement(pos));
5461
5427
  pos += 16;
@@ -5464,170 +5430,170 @@ function deserializeVecStatement(pos) {
5464
5430
  }
5465
5431
 
5466
5432
  function deserializeBoxBooleanLiteral(pos) {
5467
- return deserializeBooleanLiteral(uint32[pos >> 2]);
5433
+ return deserializeBooleanLiteral(int32[pos >> 2]);
5468
5434
  }
5469
5435
 
5470
5436
  function deserializeBoxNullLiteral(pos) {
5471
- return deserializeNullLiteral(uint32[pos >> 2]);
5437
+ return deserializeNullLiteral(int32[pos >> 2]);
5472
5438
  }
5473
5439
 
5474
5440
  function deserializeBoxNumericLiteral(pos) {
5475
- return deserializeNumericLiteral(uint32[pos >> 2]);
5441
+ return deserializeNumericLiteral(int32[pos >> 2]);
5476
5442
  }
5477
5443
 
5478
5444
  function deserializeBoxBigIntLiteral(pos) {
5479
- return deserializeBigIntLiteral(uint32[pos >> 2]);
5445
+ return deserializeBigIntLiteral(int32[pos >> 2]);
5480
5446
  }
5481
5447
 
5482
5448
  function deserializeBoxRegExpLiteral(pos) {
5483
- return deserializeRegExpLiteral(uint32[pos >> 2]);
5449
+ return deserializeRegExpLiteral(int32[pos >> 2]);
5484
5450
  }
5485
5451
 
5486
5452
  function deserializeBoxStringLiteral(pos) {
5487
- return deserializeStringLiteral(uint32[pos >> 2]);
5453
+ return deserializeStringLiteral(int32[pos >> 2]);
5488
5454
  }
5489
5455
 
5490
5456
  function deserializeBoxTemplateLiteral(pos) {
5491
- return deserializeTemplateLiteral(uint32[pos >> 2]);
5457
+ return deserializeTemplateLiteral(int32[pos >> 2]);
5492
5458
  }
5493
5459
 
5494
5460
  function deserializeBoxIdentifierReference(pos) {
5495
- return deserializeIdentifierReference(uint32[pos >> 2]);
5461
+ return deserializeIdentifierReference(int32[pos >> 2]);
5496
5462
  }
5497
5463
 
5498
5464
  function deserializeBoxMetaProperty(pos) {
5499
- return deserializeMetaProperty(uint32[pos >> 2]);
5465
+ return deserializeMetaProperty(int32[pos >> 2]);
5500
5466
  }
5501
5467
 
5502
5468
  function deserializeBoxSuper(pos) {
5503
- return deserializeSuper(uint32[pos >> 2]);
5469
+ return deserializeSuper(int32[pos >> 2]);
5504
5470
  }
5505
5471
 
5506
5472
  function deserializeBoxArrayExpression(pos) {
5507
- return deserializeArrayExpression(uint32[pos >> 2]);
5473
+ return deserializeArrayExpression(int32[pos >> 2]);
5508
5474
  }
5509
5475
 
5510
5476
  function deserializeBoxArrowFunctionExpression(pos) {
5511
- return deserializeArrowFunctionExpression(uint32[pos >> 2]);
5477
+ return deserializeArrowFunctionExpression(int32[pos >> 2]);
5512
5478
  }
5513
5479
 
5514
5480
  function deserializeBoxAssignmentExpression(pos) {
5515
- return deserializeAssignmentExpression(uint32[pos >> 2]);
5481
+ return deserializeAssignmentExpression(int32[pos >> 2]);
5516
5482
  }
5517
5483
 
5518
5484
  function deserializeBoxAwaitExpression(pos) {
5519
- return deserializeAwaitExpression(uint32[pos >> 2]);
5485
+ return deserializeAwaitExpression(int32[pos >> 2]);
5520
5486
  }
5521
5487
 
5522
5488
  function deserializeBoxBinaryExpression(pos) {
5523
- return deserializeBinaryExpression(uint32[pos >> 2]);
5489
+ return deserializeBinaryExpression(int32[pos >> 2]);
5524
5490
  }
5525
5491
 
5526
5492
  function deserializeBoxCallExpression(pos) {
5527
- return deserializeCallExpression(uint32[pos >> 2]);
5493
+ return deserializeCallExpression(int32[pos >> 2]);
5528
5494
  }
5529
5495
 
5530
5496
  function deserializeBoxChainExpression(pos) {
5531
- return deserializeChainExpression(uint32[pos >> 2]);
5497
+ return deserializeChainExpression(int32[pos >> 2]);
5532
5498
  }
5533
5499
 
5534
5500
  function deserializeBoxClass(pos) {
5535
- return deserializeClass(uint32[pos >> 2]);
5501
+ return deserializeClass(int32[pos >> 2]);
5536
5502
  }
5537
5503
 
5538
5504
  function deserializeBoxConditionalExpression(pos) {
5539
- return deserializeConditionalExpression(uint32[pos >> 2]);
5505
+ return deserializeConditionalExpression(int32[pos >> 2]);
5540
5506
  }
5541
5507
 
5542
5508
  function deserializeBoxFunction(pos) {
5543
- return deserializeFunction(uint32[pos >> 2]);
5509
+ return deserializeFunction(int32[pos >> 2]);
5544
5510
  }
5545
5511
 
5546
5512
  function deserializeBoxImportExpression(pos) {
5547
- return deserializeImportExpression(uint32[pos >> 2]);
5513
+ return deserializeImportExpression(int32[pos >> 2]);
5548
5514
  }
5549
5515
 
5550
5516
  function deserializeBoxLogicalExpression(pos) {
5551
- return deserializeLogicalExpression(uint32[pos >> 2]);
5517
+ return deserializeLogicalExpression(int32[pos >> 2]);
5552
5518
  }
5553
5519
 
5554
5520
  function deserializeBoxNewExpression(pos) {
5555
- return deserializeNewExpression(uint32[pos >> 2]);
5521
+ return deserializeNewExpression(int32[pos >> 2]);
5556
5522
  }
5557
5523
 
5558
5524
  function deserializeBoxObjectExpression(pos) {
5559
- return deserializeObjectExpression(uint32[pos >> 2]);
5525
+ return deserializeObjectExpression(int32[pos >> 2]);
5560
5526
  }
5561
5527
 
5562
5528
  function deserializeBoxParenthesizedExpression(pos) {
5563
- return deserializeParenthesizedExpression(uint32[pos >> 2]);
5529
+ return deserializeParenthesizedExpression(int32[pos >> 2]);
5564
5530
  }
5565
5531
 
5566
5532
  function deserializeBoxSequenceExpression(pos) {
5567
- return deserializeSequenceExpression(uint32[pos >> 2]);
5533
+ return deserializeSequenceExpression(int32[pos >> 2]);
5568
5534
  }
5569
5535
 
5570
5536
  function deserializeBoxTaggedTemplateExpression(pos) {
5571
- return deserializeTaggedTemplateExpression(uint32[pos >> 2]);
5537
+ return deserializeTaggedTemplateExpression(int32[pos >> 2]);
5572
5538
  }
5573
5539
 
5574
5540
  function deserializeBoxThisExpression(pos) {
5575
- return deserializeThisExpression(uint32[pos >> 2]);
5541
+ return deserializeThisExpression(int32[pos >> 2]);
5576
5542
  }
5577
5543
 
5578
5544
  function deserializeBoxUnaryExpression(pos) {
5579
- return deserializeUnaryExpression(uint32[pos >> 2]);
5545
+ return deserializeUnaryExpression(int32[pos >> 2]);
5580
5546
  }
5581
5547
 
5582
5548
  function deserializeBoxUpdateExpression(pos) {
5583
- return deserializeUpdateExpression(uint32[pos >> 2]);
5549
+ return deserializeUpdateExpression(int32[pos >> 2]);
5584
5550
  }
5585
5551
 
5586
5552
  function deserializeBoxYieldExpression(pos) {
5587
- return deserializeYieldExpression(uint32[pos >> 2]);
5553
+ return deserializeYieldExpression(int32[pos >> 2]);
5588
5554
  }
5589
5555
 
5590
5556
  function deserializeBoxPrivateInExpression(pos) {
5591
- return deserializePrivateInExpression(uint32[pos >> 2]);
5557
+ return deserializePrivateInExpression(int32[pos >> 2]);
5592
5558
  }
5593
5559
 
5594
5560
  function deserializeBoxJSXElement(pos) {
5595
- return deserializeJSXElement(uint32[pos >> 2]);
5561
+ return deserializeJSXElement(int32[pos >> 2]);
5596
5562
  }
5597
5563
 
5598
5564
  function deserializeBoxJSXFragment(pos) {
5599
- return deserializeJSXFragment(uint32[pos >> 2]);
5565
+ return deserializeJSXFragment(int32[pos >> 2]);
5600
5566
  }
5601
5567
 
5602
5568
  function deserializeBoxTSAsExpression(pos) {
5603
- return deserializeTSAsExpression(uint32[pos >> 2]);
5569
+ return deserializeTSAsExpression(int32[pos >> 2]);
5604
5570
  }
5605
5571
 
5606
5572
  function deserializeBoxTSSatisfiesExpression(pos) {
5607
- return deserializeTSSatisfiesExpression(uint32[pos >> 2]);
5573
+ return deserializeTSSatisfiesExpression(int32[pos >> 2]);
5608
5574
  }
5609
5575
 
5610
5576
  function deserializeBoxTSTypeAssertion(pos) {
5611
- return deserializeTSTypeAssertion(uint32[pos >> 2]);
5577
+ return deserializeTSTypeAssertion(int32[pos >> 2]);
5612
5578
  }
5613
5579
 
5614
5580
  function deserializeBoxTSNonNullExpression(pos) {
5615
- return deserializeTSNonNullExpression(uint32[pos >> 2]);
5581
+ return deserializeTSNonNullExpression(int32[pos >> 2]);
5616
5582
  }
5617
5583
 
5618
5584
  function deserializeBoxTSInstantiationExpression(pos) {
5619
- return deserializeTSInstantiationExpression(uint32[pos >> 2]);
5585
+ return deserializeTSInstantiationExpression(int32[pos >> 2]);
5620
5586
  }
5621
5587
 
5622
5588
  function deserializeBoxV8IntrinsicExpression(pos) {
5623
- return deserializeV8IntrinsicExpression(uint32[pos >> 2]);
5589
+ return deserializeV8IntrinsicExpression(int32[pos >> 2]);
5624
5590
  }
5625
5591
 
5626
5592
  function deserializeVecArrayExpressionElement(pos) {
5627
5593
  let arr = [],
5628
5594
  pos32 = pos >> 2;
5629
- pos = uint32[pos32];
5630
- let endPos = pos + uint32[pos32 + 2] * 24;
5595
+ pos = int32[pos32];
5596
+ let endPos = pos + int32[pos32 + 2] * 24;
5631
5597
  for (; pos !== endPos; ) {
5632
5598
  arr.push(deserializeArrayExpressionElement(pos));
5633
5599
  pos += 24;
@@ -5636,14 +5602,14 @@ function deserializeVecArrayExpressionElement(pos) {
5636
5602
  }
5637
5603
 
5638
5604
  function deserializeBoxSpreadElement(pos) {
5639
- return deserializeSpreadElement(uint32[pos >> 2]);
5605
+ return deserializeSpreadElement(int32[pos >> 2]);
5640
5606
  }
5641
5607
 
5642
5608
  function deserializeVecObjectPropertyKind(pos) {
5643
5609
  let arr = [],
5644
5610
  pos32 = pos >> 2;
5645
- pos = uint32[pos32];
5646
- let endPos = pos + uint32[pos32 + 2] * 16;
5611
+ pos = int32[pos32];
5612
+ let endPos = pos + (int32[pos32 + 2] << 4);
5647
5613
  for (; pos !== endPos; ) {
5648
5614
  arr.push(deserializeObjectPropertyKind(pos));
5649
5615
  pos += 16;
@@ -5652,7 +5618,7 @@ function deserializeVecObjectPropertyKind(pos) {
5652
5618
  }
5653
5619
 
5654
5620
  function deserializeBoxObjectProperty(pos) {
5655
- return deserializeObjectProperty(uint32[pos >> 2]);
5621
+ return deserializeObjectProperty(int32[pos >> 2]);
5656
5622
  }
5657
5623
 
5658
5624
  function deserializeBool(pos) {
@@ -5660,18 +5626,18 @@ function deserializeBool(pos) {
5660
5626
  }
5661
5627
 
5662
5628
  function deserializeBoxIdentifierName(pos) {
5663
- return deserializeIdentifierName(uint32[pos >> 2]);
5629
+ return deserializeIdentifierName(int32[pos >> 2]);
5664
5630
  }
5665
5631
 
5666
5632
  function deserializeBoxPrivateIdentifier(pos) {
5667
- return deserializePrivateIdentifier(uint32[pos >> 2]);
5633
+ return deserializePrivateIdentifier(int32[pos >> 2]);
5668
5634
  }
5669
5635
 
5670
5636
  function deserializeVecTemplateElement(pos) {
5671
5637
  let arr = [],
5672
5638
  pos32 = pos >> 2;
5673
- pos = uint32[pos32];
5674
- let endPos = pos + uint32[pos32 + 2] * 48;
5639
+ pos = int32[pos32];
5640
+ let endPos = pos + int32[pos32 + 2] * 48;
5675
5641
  for (; pos !== endPos; ) {
5676
5642
  arr.push(deserializeTemplateElement(pos));
5677
5643
  pos += 48;
@@ -5682,8 +5648,8 @@ function deserializeVecTemplateElement(pos) {
5682
5648
  function deserializeVecExpression(pos) {
5683
5649
  let arr = [],
5684
5650
  pos32 = pos >> 2;
5685
- pos = uint32[pos32];
5686
- let endPos = pos + uint32[pos32 + 2] * 16;
5651
+ pos = int32[pos32];
5652
+ let endPos = pos + (int32[pos32 + 2] << 4);
5687
5653
  for (; pos !== endPos; ) {
5688
5654
  arr.push(deserializeExpression(pos));
5689
5655
  pos += 16;
@@ -5692,36 +5658,36 @@ function deserializeVecExpression(pos) {
5692
5658
  }
5693
5659
 
5694
5660
  function deserializeBoxTSTypeParameterInstantiation(pos) {
5695
- return deserializeTSTypeParameterInstantiation(uint32[pos >> 2]);
5661
+ return deserializeTSTypeParameterInstantiation(int32[pos >> 2]);
5696
5662
  }
5697
5663
 
5698
5664
  function deserializeOptionBoxTSTypeParameterInstantiation(pos) {
5699
- if (uint32[pos >> 2] === 0 && uint32[(pos + 4) >> 2] === 0) return null;
5700
- return deserializeBoxTSTypeParameterInstantiation(pos);
5665
+ return int32[pos >> 2] === 0 && int32[(pos >> 2) + 1] === 0
5666
+ ? null
5667
+ : deserializeBoxTSTypeParameterInstantiation(pos);
5701
5668
  }
5702
5669
 
5703
5670
  function deserializeOptionStr(pos) {
5704
- if (uint32[pos >> 2] === 0 && uint32[(pos + 4) >> 2] === 0) return null;
5705
- return deserializeStr(pos);
5671
+ return int32[pos >> 2] === 0 && int32[(pos >> 2) + 1] === 0 ? null : deserializeStr(pos);
5706
5672
  }
5707
5673
 
5708
5674
  function deserializeBoxComputedMemberExpression(pos) {
5709
- return deserializeComputedMemberExpression(uint32[pos >> 2]);
5675
+ return deserializeComputedMemberExpression(int32[pos >> 2]);
5710
5676
  }
5711
5677
 
5712
5678
  function deserializeBoxStaticMemberExpression(pos) {
5713
- return deserializeStaticMemberExpression(uint32[pos >> 2]);
5679
+ return deserializeStaticMemberExpression(int32[pos >> 2]);
5714
5680
  }
5715
5681
 
5716
5682
  function deserializeBoxPrivateFieldExpression(pos) {
5717
- return deserializePrivateFieldExpression(uint32[pos >> 2]);
5683
+ return deserializePrivateFieldExpression(int32[pos >> 2]);
5718
5684
  }
5719
5685
 
5720
5686
  function deserializeVecArgument(pos) {
5721
5687
  let arr = [],
5722
5688
  pos32 = pos >> 2;
5723
- pos = uint32[pos32];
5724
- let endPos = pos + uint32[pos32 + 2] * 16;
5689
+ pos = int32[pos32];
5690
+ let endPos = pos + (int32[pos32 + 2] << 4);
5725
5691
  for (; pos !== endPos; ) {
5726
5692
  arr.push(deserializeArgument(pos));
5727
5693
  pos += 16;
@@ -5730,23 +5696,22 @@ function deserializeVecArgument(pos) {
5730
5696
  }
5731
5697
 
5732
5698
  function deserializeBoxArrayAssignmentTarget(pos) {
5733
- return deserializeArrayAssignmentTarget(uint32[pos >> 2]);
5699
+ return deserializeArrayAssignmentTarget(int32[pos >> 2]);
5734
5700
  }
5735
5701
 
5736
5702
  function deserializeBoxObjectAssignmentTarget(pos) {
5737
- return deserializeObjectAssignmentTarget(uint32[pos >> 2]);
5703
+ return deserializeObjectAssignmentTarget(int32[pos >> 2]);
5738
5704
  }
5739
5705
 
5740
5706
  function deserializeOptionAssignmentTargetMaybeDefault(pos) {
5741
- if (uint8[pos] === 51) return null;
5742
- return deserializeAssignmentTargetMaybeDefault(pos);
5707
+ return uint8[pos] === 51 ? null : deserializeAssignmentTargetMaybeDefault(pos);
5743
5708
  }
5744
5709
 
5745
5710
  function deserializeVecOptionAssignmentTargetMaybeDefault(pos) {
5746
5711
  let arr = [],
5747
5712
  pos32 = pos >> 2;
5748
- pos = uint32[pos32];
5749
- let endPos = pos + uint32[pos32 + 2] * 16;
5713
+ pos = int32[pos32];
5714
+ let endPos = pos + (int32[pos32 + 2] << 4);
5750
5715
  for (; pos !== endPos; ) {
5751
5716
  arr.push(deserializeOptionAssignmentTargetMaybeDefault(pos));
5752
5717
  pos += 16;
@@ -5755,19 +5720,20 @@ function deserializeVecOptionAssignmentTargetMaybeDefault(pos) {
5755
5720
  }
5756
5721
 
5757
5722
  function deserializeBoxAssignmentTargetRest(pos) {
5758
- return deserializeAssignmentTargetRest(uint32[pos >> 2]);
5723
+ return deserializeAssignmentTargetRest(int32[pos >> 2]);
5759
5724
  }
5760
5725
 
5761
5726
  function deserializeOptionBoxAssignmentTargetRest(pos) {
5762
- if (uint32[pos >> 2] === 0 && uint32[(pos + 4) >> 2] === 0) return null;
5763
- return deserializeBoxAssignmentTargetRest(pos);
5727
+ return int32[pos >> 2] === 0 && int32[(pos >> 2) + 1] === 0
5728
+ ? null
5729
+ : deserializeBoxAssignmentTargetRest(pos);
5764
5730
  }
5765
5731
 
5766
5732
  function deserializeVecAssignmentTargetProperty(pos) {
5767
5733
  let arr = [],
5768
5734
  pos32 = pos >> 2;
5769
- pos = uint32[pos32];
5770
- let endPos = pos + uint32[pos32 + 2] * 16;
5735
+ pos = int32[pos32];
5736
+ let endPos = pos + (int32[pos32 + 2] << 4);
5771
5737
  for (; pos !== endPos; ) {
5772
5738
  arr.push(deserializeAssignmentTargetProperty(pos));
5773
5739
  pos += 16;
@@ -5776,127 +5742,126 @@ function deserializeVecAssignmentTargetProperty(pos) {
5776
5742
  }
5777
5743
 
5778
5744
  function deserializeBoxAssignmentTargetWithDefault(pos) {
5779
- return deserializeAssignmentTargetWithDefault(uint32[pos >> 2]);
5745
+ return deserializeAssignmentTargetWithDefault(int32[pos >> 2]);
5780
5746
  }
5781
5747
 
5782
5748
  function deserializeBoxAssignmentTargetPropertyIdentifier(pos) {
5783
- return deserializeAssignmentTargetPropertyIdentifier(uint32[pos >> 2]);
5749
+ return deserializeAssignmentTargetPropertyIdentifier(int32[pos >> 2]);
5784
5750
  }
5785
5751
 
5786
5752
  function deserializeBoxAssignmentTargetPropertyProperty(pos) {
5787
- return deserializeAssignmentTargetPropertyProperty(uint32[pos >> 2]);
5753
+ return deserializeAssignmentTargetPropertyProperty(int32[pos >> 2]);
5788
5754
  }
5789
5755
 
5790
5756
  function deserializeOptionExpression(pos) {
5791
- if (uint8[pos] === 51) return null;
5792
- return deserializeExpression(pos);
5757
+ return uint8[pos] === 51 ? null : deserializeExpression(pos);
5793
5758
  }
5794
5759
 
5795
5760
  function deserializeBoxBlockStatement(pos) {
5796
- return deserializeBlockStatement(uint32[pos >> 2]);
5761
+ return deserializeBlockStatement(int32[pos >> 2]);
5797
5762
  }
5798
5763
 
5799
5764
  function deserializeBoxBreakStatement(pos) {
5800
- return deserializeBreakStatement(uint32[pos >> 2]);
5765
+ return deserializeBreakStatement(int32[pos >> 2]);
5801
5766
  }
5802
5767
 
5803
5768
  function deserializeBoxContinueStatement(pos) {
5804
- return deserializeContinueStatement(uint32[pos >> 2]);
5769
+ return deserializeContinueStatement(int32[pos >> 2]);
5805
5770
  }
5806
5771
 
5807
5772
  function deserializeBoxDebuggerStatement(pos) {
5808
- return deserializeDebuggerStatement(uint32[pos >> 2]);
5773
+ return deserializeDebuggerStatement(int32[pos >> 2]);
5809
5774
  }
5810
5775
 
5811
5776
  function deserializeBoxDoWhileStatement(pos) {
5812
- return deserializeDoWhileStatement(uint32[pos >> 2]);
5777
+ return deserializeDoWhileStatement(int32[pos >> 2]);
5813
5778
  }
5814
5779
 
5815
5780
  function deserializeBoxEmptyStatement(pos) {
5816
- return deserializeEmptyStatement(uint32[pos >> 2]);
5781
+ return deserializeEmptyStatement(int32[pos >> 2]);
5817
5782
  }
5818
5783
 
5819
5784
  function deserializeBoxExpressionStatement(pos) {
5820
- return deserializeExpressionStatement(uint32[pos >> 2]);
5785
+ return deserializeExpressionStatement(int32[pos >> 2]);
5821
5786
  }
5822
5787
 
5823
5788
  function deserializeBoxForInStatement(pos) {
5824
- return deserializeForInStatement(uint32[pos >> 2]);
5789
+ return deserializeForInStatement(int32[pos >> 2]);
5825
5790
  }
5826
5791
 
5827
5792
  function deserializeBoxForOfStatement(pos) {
5828
- return deserializeForOfStatement(uint32[pos >> 2]);
5793
+ return deserializeForOfStatement(int32[pos >> 2]);
5829
5794
  }
5830
5795
 
5831
5796
  function deserializeBoxForStatement(pos) {
5832
- return deserializeForStatement(uint32[pos >> 2]);
5797
+ return deserializeForStatement(int32[pos >> 2]);
5833
5798
  }
5834
5799
 
5835
5800
  function deserializeBoxIfStatement(pos) {
5836
- return deserializeIfStatement(uint32[pos >> 2]);
5801
+ return deserializeIfStatement(int32[pos >> 2]);
5837
5802
  }
5838
5803
 
5839
5804
  function deserializeBoxLabeledStatement(pos) {
5840
- return deserializeLabeledStatement(uint32[pos >> 2]);
5805
+ return deserializeLabeledStatement(int32[pos >> 2]);
5841
5806
  }
5842
5807
 
5843
5808
  function deserializeBoxReturnStatement(pos) {
5844
- return deserializeReturnStatement(uint32[pos >> 2]);
5809
+ return deserializeReturnStatement(int32[pos >> 2]);
5845
5810
  }
5846
5811
 
5847
5812
  function deserializeBoxSwitchStatement(pos) {
5848
- return deserializeSwitchStatement(uint32[pos >> 2]);
5813
+ return deserializeSwitchStatement(int32[pos >> 2]);
5849
5814
  }
5850
5815
 
5851
5816
  function deserializeBoxThrowStatement(pos) {
5852
- return deserializeThrowStatement(uint32[pos >> 2]);
5817
+ return deserializeThrowStatement(int32[pos >> 2]);
5853
5818
  }
5854
5819
 
5855
5820
  function deserializeBoxTryStatement(pos) {
5856
- return deserializeTryStatement(uint32[pos >> 2]);
5821
+ return deserializeTryStatement(int32[pos >> 2]);
5857
5822
  }
5858
5823
 
5859
5824
  function deserializeBoxWhileStatement(pos) {
5860
- return deserializeWhileStatement(uint32[pos >> 2]);
5825
+ return deserializeWhileStatement(int32[pos >> 2]);
5861
5826
  }
5862
5827
 
5863
5828
  function deserializeBoxWithStatement(pos) {
5864
- return deserializeWithStatement(uint32[pos >> 2]);
5829
+ return deserializeWithStatement(int32[pos >> 2]);
5865
5830
  }
5866
5831
 
5867
5832
  function deserializeBoxVariableDeclaration(pos) {
5868
- return deserializeVariableDeclaration(uint32[pos >> 2]);
5833
+ return deserializeVariableDeclaration(int32[pos >> 2]);
5869
5834
  }
5870
5835
 
5871
5836
  function deserializeBoxTSTypeAliasDeclaration(pos) {
5872
- return deserializeTSTypeAliasDeclaration(uint32[pos >> 2]);
5837
+ return deserializeTSTypeAliasDeclaration(int32[pos >> 2]);
5873
5838
  }
5874
5839
 
5875
5840
  function deserializeBoxTSInterfaceDeclaration(pos) {
5876
- return deserializeTSInterfaceDeclaration(uint32[pos >> 2]);
5841
+ return deserializeTSInterfaceDeclaration(int32[pos >> 2]);
5877
5842
  }
5878
5843
 
5879
5844
  function deserializeBoxTSEnumDeclaration(pos) {
5880
- return deserializeTSEnumDeclaration(uint32[pos >> 2]);
5845
+ return deserializeTSEnumDeclaration(int32[pos >> 2]);
5881
5846
  }
5882
5847
 
5883
5848
  function deserializeBoxTSModuleDeclaration(pos) {
5884
- return deserializeTSModuleDeclaration(uint32[pos >> 2]);
5849
+ return deserializeTSModuleDeclaration(int32[pos >> 2]);
5885
5850
  }
5886
5851
 
5887
5852
  function deserializeBoxTSGlobalDeclaration(pos) {
5888
- return deserializeTSGlobalDeclaration(uint32[pos >> 2]);
5853
+ return deserializeTSGlobalDeclaration(int32[pos >> 2]);
5889
5854
  }
5890
5855
 
5891
5856
  function deserializeBoxTSImportEqualsDeclaration(pos) {
5892
- return deserializeTSImportEqualsDeclaration(uint32[pos >> 2]);
5857
+ return deserializeTSImportEqualsDeclaration(int32[pos >> 2]);
5893
5858
  }
5894
5859
 
5895
5860
  function deserializeVecVariableDeclarator(pos) {
5896
5861
  let arr = [],
5897
5862
  pos32 = pos >> 2;
5898
- pos = uint32[pos32];
5899
- let endPos = pos + uint32[pos32 + 2] * 56;
5863
+ pos = int32[pos32];
5864
+ let endPos = pos + int32[pos32 + 2] * 56;
5900
5865
  for (; pos !== endPos; ) {
5901
5866
  arr.push(deserializeVariableDeclarator(pos));
5902
5867
  pos += 56;
@@ -5905,34 +5870,34 @@ function deserializeVecVariableDeclarator(pos) {
5905
5870
  }
5906
5871
 
5907
5872
  function deserializeBoxTSTypeAnnotation(pos) {
5908
- return deserializeTSTypeAnnotation(uint32[pos >> 2]);
5873
+ return deserializeTSTypeAnnotation(int32[pos >> 2]);
5909
5874
  }
5910
5875
 
5911
5876
  function deserializeOptionBoxTSTypeAnnotation(pos) {
5912
- if (uint32[pos >> 2] === 0 && uint32[(pos + 4) >> 2] === 0) return null;
5913
- return deserializeBoxTSTypeAnnotation(pos);
5877
+ return int32[pos >> 2] === 0 && int32[(pos >> 2) + 1] === 0
5878
+ ? null
5879
+ : deserializeBoxTSTypeAnnotation(pos);
5914
5880
  }
5915
5881
 
5916
5882
  function deserializeOptionStatement(pos) {
5917
- if (uint8[pos] === 70) return null;
5918
- return deserializeStatement(pos);
5883
+ return uint8[pos] === 70 ? null : deserializeStatement(pos);
5919
5884
  }
5920
5885
 
5921
5886
  function deserializeOptionForStatementInit(pos) {
5922
- if (uint8[pos] === 65) return null;
5923
- return deserializeForStatementInit(pos);
5887
+ return uint8[pos] === 65 ? null : deserializeForStatementInit(pos);
5924
5888
  }
5925
5889
 
5926
5890
  function deserializeOptionLabelIdentifier(pos) {
5927
- if (uint32[(pos + 16) >> 2] === 0 && uint32[(pos + 20) >> 2] === 0) return null;
5928
- return deserializeLabelIdentifier(pos);
5891
+ return int32[(pos >> 2) + 4] === 0 && int32[(pos >> 2) + 5] === 0
5892
+ ? null
5893
+ : deserializeLabelIdentifier(pos);
5929
5894
  }
5930
5895
 
5931
5896
  function deserializeVecSwitchCase(pos) {
5932
5897
  let arr = [],
5933
5898
  pos32 = pos >> 2;
5934
- pos = uint32[pos32];
5935
- let endPos = pos + uint32[pos32 + 2] * 56;
5899
+ pos = int32[pos32];
5900
+ let endPos = pos + int32[pos32 + 2] * 56;
5936
5901
  for (; pos !== endPos; ) {
5937
5902
  arr.push(deserializeSwitchCase(pos));
5938
5903
  pos += 56;
@@ -5941,45 +5906,46 @@ function deserializeVecSwitchCase(pos) {
5941
5906
  }
5942
5907
 
5943
5908
  function deserializeBoxCatchClause(pos) {
5944
- return deserializeCatchClause(uint32[pos >> 2]);
5909
+ return deserializeCatchClause(int32[pos >> 2]);
5945
5910
  }
5946
5911
 
5947
5912
  function deserializeOptionBoxCatchClause(pos) {
5948
- if (uint32[pos >> 2] === 0 && uint32[(pos + 4) >> 2] === 0) return null;
5949
- return deserializeBoxCatchClause(pos);
5913
+ return int32[pos >> 2] === 0 && int32[(pos >> 2) + 1] === 0
5914
+ ? null
5915
+ : deserializeBoxCatchClause(pos);
5950
5916
  }
5951
5917
 
5952
5918
  function deserializeOptionBoxBlockStatement(pos) {
5953
- if (uint32[pos >> 2] === 0 && uint32[(pos + 4) >> 2] === 0) return null;
5954
- return deserializeBoxBlockStatement(pos);
5919
+ return int32[pos >> 2] === 0 && int32[(pos >> 2) + 1] === 0
5920
+ ? null
5921
+ : deserializeBoxBlockStatement(pos);
5955
5922
  }
5956
5923
 
5957
5924
  function deserializeOptionCatchParameter(pos) {
5958
- if (uint8[pos + 16] === 4) return null;
5959
- return deserializeCatchParameter(pos);
5925
+ return uint8[pos + 16] === 4 ? null : deserializeCatchParameter(pos);
5960
5926
  }
5961
5927
 
5962
5928
  function deserializeBoxBindingIdentifier(pos) {
5963
- return deserializeBindingIdentifier(uint32[pos >> 2]);
5929
+ return deserializeBindingIdentifier(int32[pos >> 2]);
5964
5930
  }
5965
5931
 
5966
5932
  function deserializeBoxObjectPattern(pos) {
5967
- return deserializeObjectPattern(uint32[pos >> 2]);
5933
+ return deserializeObjectPattern(int32[pos >> 2]);
5968
5934
  }
5969
5935
 
5970
5936
  function deserializeBoxArrayPattern(pos) {
5971
- return deserializeArrayPattern(uint32[pos >> 2]);
5937
+ return deserializeArrayPattern(int32[pos >> 2]);
5972
5938
  }
5973
5939
 
5974
5940
  function deserializeBoxAssignmentPattern(pos) {
5975
- return deserializeAssignmentPattern(uint32[pos >> 2]);
5941
+ return deserializeAssignmentPattern(int32[pos >> 2]);
5976
5942
  }
5977
5943
 
5978
5944
  function deserializeVecBindingProperty(pos) {
5979
5945
  let arr = [],
5980
5946
  pos32 = pos >> 2;
5981
- pos = uint32[pos32];
5982
- let endPos = pos + uint32[pos32 + 2] * 48;
5947
+ pos = int32[pos32];
5948
+ let endPos = pos + int32[pos32 + 2] * 48;
5983
5949
  for (; pos !== endPos; ) {
5984
5950
  arr.push(deserializeBindingProperty(pos));
5985
5951
  pos += 48;
@@ -5988,24 +5954,24 @@ function deserializeVecBindingProperty(pos) {
5988
5954
  }
5989
5955
 
5990
5956
  function deserializeBoxBindingRestElement(pos) {
5991
- return deserializeBindingRestElement(uint32[pos >> 2]);
5957
+ return deserializeBindingRestElement(int32[pos >> 2]);
5992
5958
  }
5993
5959
 
5994
5960
  function deserializeOptionBoxBindingRestElement(pos) {
5995
- if (uint32[pos >> 2] === 0 && uint32[(pos + 4) >> 2] === 0) return null;
5996
- return deserializeBoxBindingRestElement(pos);
5961
+ return int32[pos >> 2] === 0 && int32[(pos >> 2) + 1] === 0
5962
+ ? null
5963
+ : deserializeBoxBindingRestElement(pos);
5997
5964
  }
5998
5965
 
5999
5966
  function deserializeOptionBindingPattern(pos) {
6000
- if (uint8[pos] === 4) return null;
6001
- return deserializeBindingPattern(pos);
5967
+ return uint8[pos] === 4 ? null : deserializeBindingPattern(pos);
6002
5968
  }
6003
5969
 
6004
5970
  function deserializeVecOptionBindingPattern(pos) {
6005
5971
  let arr = [],
6006
5972
  pos32 = pos >> 2;
6007
- pos = uint32[pos32];
6008
- let endPos = pos + uint32[pos32 + 2] * 16;
5973
+ pos = int32[pos32];
5974
+ let endPos = pos + (int32[pos32 + 2] << 4);
6009
5975
  for (; pos !== endPos; ) {
6010
5976
  arr.push(deserializeOptionBindingPattern(pos));
6011
5977
  pos += 16;
@@ -6014,46 +5980,50 @@ function deserializeVecOptionBindingPattern(pos) {
6014
5980
  }
6015
5981
 
6016
5982
  function deserializeOptionBindingIdentifier(pos) {
6017
- if (uint32[(pos + 16) >> 2] === 0 && uint32[(pos + 20) >> 2] === 0) return null;
6018
- return deserializeBindingIdentifier(pos);
5983
+ return int32[(pos >> 2) + 4] === 0 && int32[(pos >> 2) + 5] === 0
5984
+ ? null
5985
+ : deserializeBindingIdentifier(pos);
6019
5986
  }
6020
5987
 
6021
5988
  function deserializeBoxTSTypeParameterDeclaration(pos) {
6022
- return deserializeTSTypeParameterDeclaration(uint32[pos >> 2]);
5989
+ return deserializeTSTypeParameterDeclaration(int32[pos >> 2]);
6023
5990
  }
6024
5991
 
6025
5992
  function deserializeOptionBoxTSTypeParameterDeclaration(pos) {
6026
- if (uint32[pos >> 2] === 0 && uint32[(pos + 4) >> 2] === 0) return null;
6027
- return deserializeBoxTSTypeParameterDeclaration(pos);
5993
+ return int32[pos >> 2] === 0 && int32[(pos >> 2) + 1] === 0
5994
+ ? null
5995
+ : deserializeBoxTSTypeParameterDeclaration(pos);
6028
5996
  }
6029
5997
 
6030
5998
  function deserializeBoxTSThisParameter(pos) {
6031
- return deserializeTSThisParameter(uint32[pos >> 2]);
5999
+ return deserializeTSThisParameter(int32[pos >> 2]);
6032
6000
  }
6033
6001
 
6034
6002
  function deserializeOptionBoxTSThisParameter(pos) {
6035
- if (uint32[pos >> 2] === 0 && uint32[(pos + 4) >> 2] === 0) return null;
6036
- return deserializeBoxTSThisParameter(pos);
6003
+ return int32[pos >> 2] === 0 && int32[(pos >> 2) + 1] === 0
6004
+ ? null
6005
+ : deserializeBoxTSThisParameter(pos);
6037
6006
  }
6038
6007
 
6039
6008
  function deserializeBoxFormalParameters(pos) {
6040
- return deserializeFormalParameters(uint32[pos >> 2]);
6009
+ return deserializeFormalParameters(int32[pos >> 2]);
6041
6010
  }
6042
6011
 
6043
6012
  function deserializeBoxFunctionBody(pos) {
6044
- return deserializeFunctionBody(uint32[pos >> 2]);
6013
+ return deserializeFunctionBody(int32[pos >> 2]);
6045
6014
  }
6046
6015
 
6047
6016
  function deserializeOptionBoxFunctionBody(pos) {
6048
- if (uint32[pos >> 2] === 0 && uint32[(pos + 4) >> 2] === 0) return null;
6049
- return deserializeBoxFunctionBody(pos);
6017
+ return int32[pos >> 2] === 0 && int32[(pos >> 2) + 1] === 0
6018
+ ? null
6019
+ : deserializeBoxFunctionBody(pos);
6050
6020
  }
6051
6021
 
6052
6022
  function deserializeVecFormalParameter(pos) {
6053
6023
  let arr = [],
6054
6024
  pos32 = pos >> 2;
6055
- pos = uint32[pos32];
6056
- let endPos = pos + uint32[pos32 + 2] * 72;
6025
+ pos = int32[pos32];
6026
+ let endPos = pos + int32[pos32 + 2] * 72;
6057
6027
  for (; pos !== endPos; ) {
6058
6028
  arr.push(deserializeFormalParameter(pos));
6059
6029
  pos += 72;
@@ -6064,8 +6034,8 @@ function deserializeVecFormalParameter(pos) {
6064
6034
  function deserializeVecDecorator(pos) {
6065
6035
  let arr = [],
6066
6036
  pos32 = pos >> 2;
6067
- pos = uint32[pos32];
6068
- let endPos = pos + uint32[pos32 + 2] * 32;
6037
+ pos = int32[pos32];
6038
+ let endPos = pos + (int32[pos32 + 2] << 5);
6069
6039
  for (; pos !== endPos; ) {
6070
6040
  arr.push(deserializeDecorator(pos));
6071
6041
  pos += 32;
@@ -6074,24 +6044,24 @@ function deserializeVecDecorator(pos) {
6074
6044
  }
6075
6045
 
6076
6046
  function deserializeBoxExpression(pos) {
6077
- return deserializeExpression(uint32[pos >> 2]);
6047
+ return deserializeExpression(int32[pos >> 2]);
6078
6048
  }
6079
6049
 
6080
6050
  function deserializeOptionBoxExpression(pos) {
6081
- if (uint32[pos >> 2] === 0 && uint32[(pos + 4) >> 2] === 0) return null;
6082
- return deserializeBoxExpression(pos);
6051
+ return int32[pos >> 2] === 0 && int32[(pos >> 2) + 1] === 0
6052
+ ? null
6053
+ : deserializeBoxExpression(pos);
6083
6054
  }
6084
6055
 
6085
6056
  function deserializeOptionTSAccessibility(pos) {
6086
- if (uint8[pos] === 3) return null;
6087
- return deserializeTSAccessibility(pos);
6057
+ return uint8[pos] === 3 ? null : deserializeTSAccessibility(pos);
6088
6058
  }
6089
6059
 
6090
6060
  function deserializeVecTSClassImplements(pos) {
6091
6061
  let arr = [],
6092
6062
  pos32 = pos >> 2;
6093
- pos = uint32[pos32];
6094
- let endPos = pos + uint32[pos32 + 2] * 40;
6063
+ pos = int32[pos32];
6064
+ let endPos = pos + int32[pos32 + 2] * 40;
6095
6065
  for (; pos !== endPos; ) {
6096
6066
  arr.push(deserializeTSClassImplements(pos));
6097
6067
  pos += 40;
@@ -6100,14 +6070,14 @@ function deserializeVecTSClassImplements(pos) {
6100
6070
  }
6101
6071
 
6102
6072
  function deserializeBoxClassBody(pos) {
6103
- return deserializeClassBody(uint32[pos >> 2]);
6073
+ return deserializeClassBody(int32[pos >> 2]);
6104
6074
  }
6105
6075
 
6106
6076
  function deserializeVecClassElement(pos) {
6107
6077
  let arr = [],
6108
6078
  pos32 = pos >> 2;
6109
- pos = uint32[pos32];
6110
- let endPos = pos + uint32[pos32 + 2] * 16;
6079
+ pos = int32[pos32];
6080
+ let endPos = pos + (int32[pos32 + 2] << 4);
6111
6081
  for (; pos !== endPos; ) {
6112
6082
  arr.push(deserializeClassElement(pos));
6113
6083
  pos += 16;
@@ -6116,59 +6086,58 @@ function deserializeVecClassElement(pos) {
6116
6086
  }
6117
6087
 
6118
6088
  function deserializeBoxStaticBlock(pos) {
6119
- return deserializeStaticBlock(uint32[pos >> 2]);
6089
+ return deserializeStaticBlock(int32[pos >> 2]);
6120
6090
  }
6121
6091
 
6122
6092
  function deserializeBoxMethodDefinition(pos) {
6123
- return deserializeMethodDefinition(uint32[pos >> 2]);
6093
+ return deserializeMethodDefinition(int32[pos >> 2]);
6124
6094
  }
6125
6095
 
6126
6096
  function deserializeBoxPropertyDefinition(pos) {
6127
- return deserializePropertyDefinition(uint32[pos >> 2]);
6097
+ return deserializePropertyDefinition(int32[pos >> 2]);
6128
6098
  }
6129
6099
 
6130
6100
  function deserializeBoxAccessorProperty(pos) {
6131
- return deserializeAccessorProperty(uint32[pos >> 2]);
6101
+ return deserializeAccessorProperty(int32[pos >> 2]);
6132
6102
  }
6133
6103
 
6134
6104
  function deserializeBoxTSIndexSignature(pos) {
6135
- return deserializeTSIndexSignature(uint32[pos >> 2]);
6105
+ return deserializeTSIndexSignature(int32[pos >> 2]);
6136
6106
  }
6137
6107
 
6138
6108
  function deserializeBoxImportDeclaration(pos) {
6139
- return deserializeImportDeclaration(uint32[pos >> 2]);
6109
+ return deserializeImportDeclaration(int32[pos >> 2]);
6140
6110
  }
6141
6111
 
6142
6112
  function deserializeBoxExportAllDeclaration(pos) {
6143
- return deserializeExportAllDeclaration(uint32[pos >> 2]);
6113
+ return deserializeExportAllDeclaration(int32[pos >> 2]);
6144
6114
  }
6145
6115
 
6146
6116
  function deserializeBoxExportDefaultDeclaration(pos) {
6147
- return deserializeExportDefaultDeclaration(uint32[pos >> 2]);
6117
+ return deserializeExportDefaultDeclaration(int32[pos >> 2]);
6148
6118
  }
6149
6119
 
6150
6120
  function deserializeBoxExportNamedDeclaration(pos) {
6151
- return deserializeExportNamedDeclaration(uint32[pos >> 2]);
6121
+ return deserializeExportNamedDeclaration(int32[pos >> 2]);
6152
6122
  }
6153
6123
 
6154
6124
  function deserializeBoxTSExportAssignment(pos) {
6155
- return deserializeTSExportAssignment(uint32[pos >> 2]);
6125
+ return deserializeTSExportAssignment(int32[pos >> 2]);
6156
6126
  }
6157
6127
 
6158
6128
  function deserializeBoxTSNamespaceExportDeclaration(pos) {
6159
- return deserializeTSNamespaceExportDeclaration(uint32[pos >> 2]);
6129
+ return deserializeTSNamespaceExportDeclaration(int32[pos >> 2]);
6160
6130
  }
6161
6131
 
6162
6132
  function deserializeOptionImportPhase(pos) {
6163
- if (uint8[pos] === 2) return null;
6164
- return deserializeImportPhase(pos);
6133
+ return uint8[pos] === 2 ? null : deserializeImportPhase(pos);
6165
6134
  }
6166
6135
 
6167
6136
  function deserializeVecImportDeclarationSpecifier(pos) {
6168
6137
  let arr = [],
6169
6138
  pos32 = pos >> 2;
6170
- pos = uint32[pos32];
6171
- let endPos = pos + uint32[pos32 + 2] * 16;
6139
+ pos = int32[pos32];
6140
+ let endPos = pos + (int32[pos32 + 2] << 4);
6172
6141
  for (; pos !== endPos; ) {
6173
6142
  arr.push(deserializeImportDeclarationSpecifier(pos));
6174
6143
  pos += 16;
@@ -6177,36 +6146,38 @@ function deserializeVecImportDeclarationSpecifier(pos) {
6177
6146
  }
6178
6147
 
6179
6148
  function deserializeOptionVecImportDeclarationSpecifier(pos) {
6180
- if (uint32[pos >> 2] === 0 && uint32[(pos + 4) >> 2] === 0) return null;
6181
- return deserializeVecImportDeclarationSpecifier(pos);
6149
+ return int32[pos >> 2] === 0 && int32[(pos >> 2) + 1] === 0
6150
+ ? null
6151
+ : deserializeVecImportDeclarationSpecifier(pos);
6182
6152
  }
6183
6153
 
6184
6154
  function deserializeBoxWithClause(pos) {
6185
- return deserializeWithClause(uint32[pos >> 2]);
6155
+ return deserializeWithClause(int32[pos >> 2]);
6186
6156
  }
6187
6157
 
6188
6158
  function deserializeOptionBoxWithClause(pos) {
6189
- if (uint32[pos >> 2] === 0 && uint32[(pos + 4) >> 2] === 0) return null;
6190
- return deserializeBoxWithClause(pos);
6159
+ return int32[pos >> 2] === 0 && int32[(pos >> 2) + 1] === 0
6160
+ ? null
6161
+ : deserializeBoxWithClause(pos);
6191
6162
  }
6192
6163
 
6193
6164
  function deserializeBoxImportSpecifier(pos) {
6194
- return deserializeImportSpecifier(uint32[pos >> 2]);
6165
+ return deserializeImportSpecifier(int32[pos >> 2]);
6195
6166
  }
6196
6167
 
6197
6168
  function deserializeBoxImportDefaultSpecifier(pos) {
6198
- return deserializeImportDefaultSpecifier(uint32[pos >> 2]);
6169
+ return deserializeImportDefaultSpecifier(int32[pos >> 2]);
6199
6170
  }
6200
6171
 
6201
6172
  function deserializeBoxImportNamespaceSpecifier(pos) {
6202
- return deserializeImportNamespaceSpecifier(uint32[pos >> 2]);
6173
+ return deserializeImportNamespaceSpecifier(int32[pos >> 2]);
6203
6174
  }
6204
6175
 
6205
6176
  function deserializeVecImportAttribute(pos) {
6206
6177
  let arr = [],
6207
6178
  pos32 = pos >> 2;
6208
- pos = uint32[pos32];
6209
- let endPos = pos + uint32[pos32 + 2] * 120;
6179
+ pos = int32[pos32];
6180
+ let endPos = pos + int32[pos32 + 2] * 120;
6210
6181
  for (; pos !== endPos; ) {
6211
6182
  arr.push(deserializeImportAttribute(pos));
6212
6183
  pos += 120;
@@ -6215,15 +6186,14 @@ function deserializeVecImportAttribute(pos) {
6215
6186
  }
6216
6187
 
6217
6188
  function deserializeOptionDeclaration(pos) {
6218
- if (uint8[pos] === 31) return null;
6219
- return deserializeDeclaration(pos);
6189
+ return uint8[pos] === 31 ? null : deserializeDeclaration(pos);
6220
6190
  }
6221
6191
 
6222
6192
  function deserializeVecExportSpecifier(pos) {
6223
6193
  let arr = [],
6224
6194
  pos32 = pos >> 2;
6225
- pos = uint32[pos32];
6226
- let endPos = pos + uint32[pos32 + 2] * 128;
6195
+ pos = int32[pos32];
6196
+ let endPos = pos + (int32[pos32 + 2] << 7);
6227
6197
  for (; pos !== endPos; ) {
6228
6198
  arr.push(deserializeExportSpecifier(pos));
6229
6199
  pos += 128;
@@ -6232,13 +6202,11 @@ function deserializeVecExportSpecifier(pos) {
6232
6202
  }
6233
6203
 
6234
6204
  function deserializeOptionStringLiteral(pos) {
6235
- if (uint8[pos + 12] === 2) return null;
6236
- return deserializeStringLiteral(pos);
6205
+ return uint8[pos + 12] === 2 ? null : deserializeStringLiteral(pos);
6237
6206
  }
6238
6207
 
6239
6208
  function deserializeOptionModuleExportName(pos) {
6240
- if (uint8[pos] === 3) return null;
6241
- return deserializeModuleExportName(pos);
6209
+ return uint8[pos] === 3 ? null : deserializeModuleExportName(pos);
6242
6210
  }
6243
6211
 
6244
6212
  function deserializeF64(pos) {
@@ -6250,14 +6218,14 @@ function deserializeU8(pos) {
6250
6218
  }
6251
6219
 
6252
6220
  function deserializeBoxJSXOpeningElement(pos) {
6253
- return deserializeJSXOpeningElement(uint32[pos >> 2]);
6221
+ return deserializeJSXOpeningElement(int32[pos >> 2]);
6254
6222
  }
6255
6223
 
6256
6224
  function deserializeVecJSXChild(pos) {
6257
6225
  let arr = [],
6258
6226
  pos32 = pos >> 2;
6259
- pos = uint32[pos32];
6260
- let endPos = pos + uint32[pos32 + 2] * 16;
6227
+ pos = int32[pos32];
6228
+ let endPos = pos + (int32[pos32 + 2] << 4);
6261
6229
  for (; pos !== endPos; ) {
6262
6230
  arr.push(deserializeJSXChild(pos));
6263
6231
  pos += 16;
@@ -6266,19 +6234,20 @@ function deserializeVecJSXChild(pos) {
6266
6234
  }
6267
6235
 
6268
6236
  function deserializeBoxJSXClosingElement(pos) {
6269
- return deserializeJSXClosingElement(uint32[pos >> 2]);
6237
+ return deserializeJSXClosingElement(int32[pos >> 2]);
6270
6238
  }
6271
6239
 
6272
6240
  function deserializeOptionBoxJSXClosingElement(pos) {
6273
- if (uint32[pos >> 2] === 0 && uint32[(pos + 4) >> 2] === 0) return null;
6274
- return deserializeBoxJSXClosingElement(pos);
6241
+ return int32[pos >> 2] === 0 && int32[(pos >> 2) + 1] === 0
6242
+ ? null
6243
+ : deserializeBoxJSXClosingElement(pos);
6275
6244
  }
6276
6245
 
6277
6246
  function deserializeVecJSXAttributeItem(pos) {
6278
6247
  let arr = [],
6279
6248
  pos32 = pos >> 2;
6280
- pos = uint32[pos32];
6281
- let endPos = pos + uint32[pos32 + 2] * 16;
6249
+ pos = int32[pos32];
6250
+ let endPos = pos + (int32[pos32 + 2] << 4);
6282
6251
  for (; pos !== endPos; ) {
6283
6252
  arr.push(deserializeJSXAttributeItem(pos));
6284
6253
  pos += 16;
@@ -6287,47 +6256,46 @@ function deserializeVecJSXAttributeItem(pos) {
6287
6256
  }
6288
6257
 
6289
6258
  function deserializeBoxJSXIdentifier(pos) {
6290
- return deserializeJSXIdentifier(uint32[pos >> 2]);
6259
+ return deserializeJSXIdentifier(int32[pos >> 2]);
6291
6260
  }
6292
6261
 
6293
6262
  function deserializeBoxJSXNamespacedName(pos) {
6294
- return deserializeJSXNamespacedName(uint32[pos >> 2]);
6263
+ return deserializeJSXNamespacedName(int32[pos >> 2]);
6295
6264
  }
6296
6265
 
6297
6266
  function deserializeBoxJSXMemberExpression(pos) {
6298
- return deserializeJSXMemberExpression(uint32[pos >> 2]);
6267
+ return deserializeJSXMemberExpression(int32[pos >> 2]);
6299
6268
  }
6300
6269
 
6301
6270
  function deserializeBoxJSXAttribute(pos) {
6302
- return deserializeJSXAttribute(uint32[pos >> 2]);
6271
+ return deserializeJSXAttribute(int32[pos >> 2]);
6303
6272
  }
6304
6273
 
6305
6274
  function deserializeBoxJSXSpreadAttribute(pos) {
6306
- return deserializeJSXSpreadAttribute(uint32[pos >> 2]);
6275
+ return deserializeJSXSpreadAttribute(int32[pos >> 2]);
6307
6276
  }
6308
6277
 
6309
6278
  function deserializeOptionJSXAttributeValue(pos) {
6310
- if (uint8[pos] === 4) return null;
6311
- return deserializeJSXAttributeValue(pos);
6279
+ return uint8[pos] === 4 ? null : deserializeJSXAttributeValue(pos);
6312
6280
  }
6313
6281
 
6314
6282
  function deserializeBoxJSXExpressionContainer(pos) {
6315
- return deserializeJSXExpressionContainer(uint32[pos >> 2]);
6283
+ return deserializeJSXExpressionContainer(int32[pos >> 2]);
6316
6284
  }
6317
6285
 
6318
6286
  function deserializeBoxJSXText(pos) {
6319
- return deserializeJSXText(uint32[pos >> 2]);
6287
+ return deserializeJSXText(int32[pos >> 2]);
6320
6288
  }
6321
6289
 
6322
6290
  function deserializeBoxJSXSpreadChild(pos) {
6323
- return deserializeJSXSpreadChild(uint32[pos >> 2]);
6291
+ return deserializeJSXSpreadChild(int32[pos >> 2]);
6324
6292
  }
6325
6293
 
6326
6294
  function deserializeVecTSEnumMember(pos) {
6327
6295
  let arr = [],
6328
6296
  pos32 = pos >> 2;
6329
- pos = uint32[pos32];
6330
- let endPos = pos + uint32[pos32 + 2] * 48;
6297
+ pos = int32[pos32];
6298
+ let endPos = pos + int32[pos32 + 2] * 48;
6331
6299
  for (; pos !== endPos; ) {
6332
6300
  arr.push(deserializeTSEnumMember(pos));
6333
6301
  pos += 48;
@@ -6336,158 +6304,158 @@ function deserializeVecTSEnumMember(pos) {
6336
6304
  }
6337
6305
 
6338
6306
  function deserializeBoxTSAnyKeyword(pos) {
6339
- return deserializeTSAnyKeyword(uint32[pos >> 2]);
6307
+ return deserializeTSAnyKeyword(int32[pos >> 2]);
6340
6308
  }
6341
6309
 
6342
6310
  function deserializeBoxTSBigIntKeyword(pos) {
6343
- return deserializeTSBigIntKeyword(uint32[pos >> 2]);
6311
+ return deserializeTSBigIntKeyword(int32[pos >> 2]);
6344
6312
  }
6345
6313
 
6346
6314
  function deserializeBoxTSBooleanKeyword(pos) {
6347
- return deserializeTSBooleanKeyword(uint32[pos >> 2]);
6315
+ return deserializeTSBooleanKeyword(int32[pos >> 2]);
6348
6316
  }
6349
6317
 
6350
6318
  function deserializeBoxTSIntrinsicKeyword(pos) {
6351
- return deserializeTSIntrinsicKeyword(uint32[pos >> 2]);
6319
+ return deserializeTSIntrinsicKeyword(int32[pos >> 2]);
6352
6320
  }
6353
6321
 
6354
6322
  function deserializeBoxTSNeverKeyword(pos) {
6355
- return deserializeTSNeverKeyword(uint32[pos >> 2]);
6323
+ return deserializeTSNeverKeyword(int32[pos >> 2]);
6356
6324
  }
6357
6325
 
6358
6326
  function deserializeBoxTSNullKeyword(pos) {
6359
- return deserializeTSNullKeyword(uint32[pos >> 2]);
6327
+ return deserializeTSNullKeyword(int32[pos >> 2]);
6360
6328
  }
6361
6329
 
6362
6330
  function deserializeBoxTSNumberKeyword(pos) {
6363
- return deserializeTSNumberKeyword(uint32[pos >> 2]);
6331
+ return deserializeTSNumberKeyword(int32[pos >> 2]);
6364
6332
  }
6365
6333
 
6366
6334
  function deserializeBoxTSObjectKeyword(pos) {
6367
- return deserializeTSObjectKeyword(uint32[pos >> 2]);
6335
+ return deserializeTSObjectKeyword(int32[pos >> 2]);
6368
6336
  }
6369
6337
 
6370
6338
  function deserializeBoxTSStringKeyword(pos) {
6371
- return deserializeTSStringKeyword(uint32[pos >> 2]);
6339
+ return deserializeTSStringKeyword(int32[pos >> 2]);
6372
6340
  }
6373
6341
 
6374
6342
  function deserializeBoxTSSymbolKeyword(pos) {
6375
- return deserializeTSSymbolKeyword(uint32[pos >> 2]);
6343
+ return deserializeTSSymbolKeyword(int32[pos >> 2]);
6376
6344
  }
6377
6345
 
6378
6346
  function deserializeBoxTSUndefinedKeyword(pos) {
6379
- return deserializeTSUndefinedKeyword(uint32[pos >> 2]);
6347
+ return deserializeTSUndefinedKeyword(int32[pos >> 2]);
6380
6348
  }
6381
6349
 
6382
6350
  function deserializeBoxTSUnknownKeyword(pos) {
6383
- return deserializeTSUnknownKeyword(uint32[pos >> 2]);
6351
+ return deserializeTSUnknownKeyword(int32[pos >> 2]);
6384
6352
  }
6385
6353
 
6386
6354
  function deserializeBoxTSVoidKeyword(pos) {
6387
- return deserializeTSVoidKeyword(uint32[pos >> 2]);
6355
+ return deserializeTSVoidKeyword(int32[pos >> 2]);
6388
6356
  }
6389
6357
 
6390
6358
  function deserializeBoxTSArrayType(pos) {
6391
- return deserializeTSArrayType(uint32[pos >> 2]);
6359
+ return deserializeTSArrayType(int32[pos >> 2]);
6392
6360
  }
6393
6361
 
6394
6362
  function deserializeBoxTSConditionalType(pos) {
6395
- return deserializeTSConditionalType(uint32[pos >> 2]);
6363
+ return deserializeTSConditionalType(int32[pos >> 2]);
6396
6364
  }
6397
6365
 
6398
6366
  function deserializeBoxTSConstructorType(pos) {
6399
- return deserializeTSConstructorType(uint32[pos >> 2]);
6367
+ return deserializeTSConstructorType(int32[pos >> 2]);
6400
6368
  }
6401
6369
 
6402
6370
  function deserializeBoxTSFunctionType(pos) {
6403
- return deserializeTSFunctionType(uint32[pos >> 2]);
6371
+ return deserializeTSFunctionType(int32[pos >> 2]);
6404
6372
  }
6405
6373
 
6406
6374
  function deserializeBoxTSImportType(pos) {
6407
- return deserializeTSImportType(uint32[pos >> 2]);
6375
+ return deserializeTSImportType(int32[pos >> 2]);
6408
6376
  }
6409
6377
 
6410
6378
  function deserializeBoxTSIndexedAccessType(pos) {
6411
- return deserializeTSIndexedAccessType(uint32[pos >> 2]);
6379
+ return deserializeTSIndexedAccessType(int32[pos >> 2]);
6412
6380
  }
6413
6381
 
6414
6382
  function deserializeBoxTSInferType(pos) {
6415
- return deserializeTSInferType(uint32[pos >> 2]);
6383
+ return deserializeTSInferType(int32[pos >> 2]);
6416
6384
  }
6417
6385
 
6418
6386
  function deserializeBoxTSIntersectionType(pos) {
6419
- return deserializeTSIntersectionType(uint32[pos >> 2]);
6387
+ return deserializeTSIntersectionType(int32[pos >> 2]);
6420
6388
  }
6421
6389
 
6422
6390
  function deserializeBoxTSLiteralType(pos) {
6423
- return deserializeTSLiteralType(uint32[pos >> 2]);
6391
+ return deserializeTSLiteralType(int32[pos >> 2]);
6424
6392
  }
6425
6393
 
6426
6394
  function deserializeBoxTSMappedType(pos) {
6427
- return deserializeTSMappedType(uint32[pos >> 2]);
6395
+ return deserializeTSMappedType(int32[pos >> 2]);
6428
6396
  }
6429
6397
 
6430
6398
  function deserializeBoxTSNamedTupleMember(pos) {
6431
- return deserializeTSNamedTupleMember(uint32[pos >> 2]);
6399
+ return deserializeTSNamedTupleMember(int32[pos >> 2]);
6432
6400
  }
6433
6401
 
6434
6402
  function deserializeBoxTSTemplateLiteralType(pos) {
6435
- return deserializeTSTemplateLiteralType(uint32[pos >> 2]);
6403
+ return deserializeTSTemplateLiteralType(int32[pos >> 2]);
6436
6404
  }
6437
6405
 
6438
6406
  function deserializeBoxTSThisType(pos) {
6439
- return deserializeTSThisType(uint32[pos >> 2]);
6407
+ return deserializeTSThisType(int32[pos >> 2]);
6440
6408
  }
6441
6409
 
6442
6410
  function deserializeBoxTSTupleType(pos) {
6443
- return deserializeTSTupleType(uint32[pos >> 2]);
6411
+ return deserializeTSTupleType(int32[pos >> 2]);
6444
6412
  }
6445
6413
 
6446
6414
  function deserializeBoxTSTypeLiteral(pos) {
6447
- return deserializeTSTypeLiteral(uint32[pos >> 2]);
6415
+ return deserializeTSTypeLiteral(int32[pos >> 2]);
6448
6416
  }
6449
6417
 
6450
6418
  function deserializeBoxTSTypeOperator(pos) {
6451
- return deserializeTSTypeOperator(uint32[pos >> 2]);
6419
+ return deserializeTSTypeOperator(int32[pos >> 2]);
6452
6420
  }
6453
6421
 
6454
6422
  function deserializeBoxTSTypePredicate(pos) {
6455
- return deserializeTSTypePredicate(uint32[pos >> 2]);
6423
+ return deserializeTSTypePredicate(int32[pos >> 2]);
6456
6424
  }
6457
6425
 
6458
6426
  function deserializeBoxTSTypeQuery(pos) {
6459
- return deserializeTSTypeQuery(uint32[pos >> 2]);
6427
+ return deserializeTSTypeQuery(int32[pos >> 2]);
6460
6428
  }
6461
6429
 
6462
6430
  function deserializeBoxTSTypeReference(pos) {
6463
- return deserializeTSTypeReference(uint32[pos >> 2]);
6431
+ return deserializeTSTypeReference(int32[pos >> 2]);
6464
6432
  }
6465
6433
 
6466
6434
  function deserializeBoxTSUnionType(pos) {
6467
- return deserializeTSUnionType(uint32[pos >> 2]);
6435
+ return deserializeTSUnionType(int32[pos >> 2]);
6468
6436
  }
6469
6437
 
6470
6438
  function deserializeBoxTSParenthesizedType(pos) {
6471
- return deserializeTSParenthesizedType(uint32[pos >> 2]);
6439
+ return deserializeTSParenthesizedType(int32[pos >> 2]);
6472
6440
  }
6473
6441
 
6474
6442
  function deserializeBoxJSDocNullableType(pos) {
6475
- return deserializeJSDocNullableType(uint32[pos >> 2]);
6443
+ return deserializeJSDocNullableType(int32[pos >> 2]);
6476
6444
  }
6477
6445
 
6478
6446
  function deserializeBoxJSDocNonNullableType(pos) {
6479
- return deserializeJSDocNonNullableType(uint32[pos >> 2]);
6447
+ return deserializeJSDocNonNullableType(int32[pos >> 2]);
6480
6448
  }
6481
6449
 
6482
6450
  function deserializeBoxJSDocUnknownType(pos) {
6483
- return deserializeJSDocUnknownType(uint32[pos >> 2]);
6451
+ return deserializeJSDocUnknownType(int32[pos >> 2]);
6484
6452
  }
6485
6453
 
6486
6454
  function deserializeVecTSType(pos) {
6487
6455
  let arr = [],
6488
6456
  pos32 = pos >> 2;
6489
- pos = uint32[pos32];
6490
- let endPos = pos + uint32[pos32 + 2] * 16;
6457
+ pos = int32[pos32];
6458
+ let endPos = pos + (int32[pos32 + 2] << 4);
6491
6459
  for (; pos !== endPos; ) {
6492
6460
  arr.push(deserializeTSType(pos));
6493
6461
  pos += 16;
@@ -6498,8 +6466,8 @@ function deserializeVecTSType(pos) {
6498
6466
  function deserializeVecTSTupleElement(pos) {
6499
6467
  let arr = [],
6500
6468
  pos32 = pos >> 2;
6501
- pos = uint32[pos32];
6502
- let endPos = pos + uint32[pos32 + 2] * 16;
6469
+ pos = int32[pos32];
6470
+ let endPos = pos + (int32[pos32 + 2] << 4);
6503
6471
  for (; pos !== endPos; ) {
6504
6472
  arr.push(deserializeTSTupleElement(pos));
6505
6473
  pos += 16;
@@ -6508,27 +6476,26 @@ function deserializeVecTSTupleElement(pos) {
6508
6476
  }
6509
6477
 
6510
6478
  function deserializeBoxTSOptionalType(pos) {
6511
- return deserializeTSOptionalType(uint32[pos >> 2]);
6479
+ return deserializeTSOptionalType(int32[pos >> 2]);
6512
6480
  }
6513
6481
 
6514
6482
  function deserializeBoxTSRestType(pos) {
6515
- return deserializeTSRestType(uint32[pos >> 2]);
6483
+ return deserializeTSRestType(int32[pos >> 2]);
6516
6484
  }
6517
6485
 
6518
6486
  function deserializeBoxTSQualifiedName(pos) {
6519
- return deserializeTSQualifiedName(uint32[pos >> 2]);
6487
+ return deserializeTSQualifiedName(int32[pos >> 2]);
6520
6488
  }
6521
6489
 
6522
6490
  function deserializeOptionTSType(pos) {
6523
- if (uint8[pos] === 38) return null;
6524
- return deserializeTSType(pos);
6491
+ return uint8[pos] === 38 ? null : deserializeTSType(pos);
6525
6492
  }
6526
6493
 
6527
6494
  function deserializeVecTSTypeParameter(pos) {
6528
6495
  let arr = [],
6529
6496
  pos32 = pos >> 2;
6530
- pos = uint32[pos32];
6531
- let endPos = pos + uint32[pos32 + 2] * 80;
6497
+ pos = int32[pos32];
6498
+ let endPos = pos + int32[pos32 + 2] * 80;
6532
6499
  for (; pos !== endPos; ) {
6533
6500
  arr.push(deserializeTSTypeParameter(pos));
6534
6501
  pos += 80;
@@ -6539,8 +6506,8 @@ function deserializeVecTSTypeParameter(pos) {
6539
6506
  function deserializeVecTSInterfaceHeritage(pos) {
6540
6507
  let arr = [],
6541
6508
  pos32 = pos >> 2;
6542
- pos = uint32[pos32];
6543
- let endPos = pos + uint32[pos32 + 2] * 40;
6509
+ pos = int32[pos32];
6510
+ let endPos = pos + int32[pos32 + 2] * 40;
6544
6511
  for (; pos !== endPos; ) {
6545
6512
  arr.push(deserializeTSInterfaceHeritage(pos));
6546
6513
  pos += 40;
@@ -6549,14 +6516,14 @@ function deserializeVecTSInterfaceHeritage(pos) {
6549
6516
  }
6550
6517
 
6551
6518
  function deserializeBoxTSInterfaceBody(pos) {
6552
- return deserializeTSInterfaceBody(uint32[pos >> 2]);
6519
+ return deserializeTSInterfaceBody(int32[pos >> 2]);
6553
6520
  }
6554
6521
 
6555
6522
  function deserializeVecTSSignature(pos) {
6556
6523
  let arr = [],
6557
6524
  pos32 = pos >> 2;
6558
- pos = uint32[pos32];
6559
- let endPos = pos + uint32[pos32 + 2] * 16;
6525
+ pos = int32[pos32];
6526
+ let endPos = pos + (int32[pos32 + 2] << 4);
6560
6527
  for (; pos !== endPos; ) {
6561
6528
  arr.push(deserializeTSSignature(pos));
6562
6529
  pos += 16;
@@ -6565,26 +6532,26 @@ function deserializeVecTSSignature(pos) {
6565
6532
  }
6566
6533
 
6567
6534
  function deserializeBoxTSPropertySignature(pos) {
6568
- return deserializeTSPropertySignature(uint32[pos >> 2]);
6535
+ return deserializeTSPropertySignature(int32[pos >> 2]);
6569
6536
  }
6570
6537
 
6571
6538
  function deserializeBoxTSCallSignatureDeclaration(pos) {
6572
- return deserializeTSCallSignatureDeclaration(uint32[pos >> 2]);
6539
+ return deserializeTSCallSignatureDeclaration(int32[pos >> 2]);
6573
6540
  }
6574
6541
 
6575
6542
  function deserializeBoxTSConstructSignatureDeclaration(pos) {
6576
- return deserializeTSConstructSignatureDeclaration(uint32[pos >> 2]);
6543
+ return deserializeTSConstructSignatureDeclaration(int32[pos >> 2]);
6577
6544
  }
6578
6545
 
6579
6546
  function deserializeBoxTSMethodSignature(pos) {
6580
- return deserializeTSMethodSignature(uint32[pos >> 2]);
6547
+ return deserializeTSMethodSignature(int32[pos >> 2]);
6581
6548
  }
6582
6549
 
6583
6550
  function deserializeVecTSIndexSignatureName(pos) {
6584
6551
  let arr = [],
6585
6552
  pos32 = pos >> 2;
6586
- pos = uint32[pos32];
6587
- let endPos = pos + uint32[pos32 + 2] * 40;
6553
+ pos = int32[pos32];
6554
+ let endPos = pos + int32[pos32 + 2] * 40;
6588
6555
  for (; pos !== endPos; ) {
6589
6556
  arr.push(deserializeTSIndexSignatureName(pos));
6590
6557
  pos += 40;
@@ -6593,55 +6560,54 @@ function deserializeVecTSIndexSignatureName(pos) {
6593
6560
  }
6594
6561
 
6595
6562
  function deserializeOptionTSModuleDeclarationBody(pos) {
6596
- if (uint8[pos] === 2) return null;
6597
- return deserializeTSModuleDeclarationBody(pos);
6563
+ return uint8[pos] === 2 ? null : deserializeTSModuleDeclarationBody(pos);
6598
6564
  }
6599
6565
 
6600
6566
  function deserializeBoxTSModuleBlock(pos) {
6601
- return deserializeTSModuleBlock(uint32[pos >> 2]);
6567
+ return deserializeTSModuleBlock(int32[pos >> 2]);
6602
6568
  }
6603
6569
 
6604
6570
  function deserializeBoxTSTypeParameter(pos) {
6605
- return deserializeTSTypeParameter(uint32[pos >> 2]);
6571
+ return deserializeTSTypeParameter(int32[pos >> 2]);
6606
6572
  }
6607
6573
 
6608
6574
  function deserializeOptionBoxObjectExpression(pos) {
6609
- if (uint32[pos >> 2] === 0 && uint32[(pos + 4) >> 2] === 0) return null;
6610
- return deserializeBoxObjectExpression(pos);
6575
+ return int32[pos >> 2] === 0 && int32[(pos >> 2) + 1] === 0
6576
+ ? null
6577
+ : deserializeBoxObjectExpression(pos);
6611
6578
  }
6612
6579
 
6613
6580
  function deserializeOptionTSImportTypeQualifier(pos) {
6614
- if (uint8[pos] === 2) return null;
6615
- return deserializeTSImportTypeQualifier(pos);
6581
+ return uint8[pos] === 2 ? null : deserializeTSImportTypeQualifier(pos);
6616
6582
  }
6617
6583
 
6618
6584
  function deserializeBoxTSImportTypeQualifiedName(pos) {
6619
- return deserializeTSImportTypeQualifiedName(uint32[pos >> 2]);
6585
+ return deserializeTSImportTypeQualifiedName(int32[pos >> 2]);
6620
6586
  }
6621
6587
 
6622
6588
  function deserializeOptionTSMappedTypeModifierOperator(pos) {
6623
- if (uint8[pos] === 3) return null;
6624
- return deserializeTSMappedTypeModifierOperator(pos);
6589
+ return uint8[pos] === 3 ? null : deserializeTSMappedTypeModifierOperator(pos);
6625
6590
  }
6626
6591
 
6627
6592
  function deserializeBoxTSExternalModuleReference(pos) {
6628
- return deserializeTSExternalModuleReference(uint32[pos >> 2]);
6593
+ return deserializeTSExternalModuleReference(int32[pos >> 2]);
6629
6594
  }
6630
6595
 
6631
- function deserializeU32(pos) {
6632
- return uint32[pos >> 2];
6596
+ function deserializeI32(pos) {
6597
+ return int32[pos >> 2];
6633
6598
  }
6634
6599
 
6635
6600
  function deserializeOptionNameSpan(pos) {
6636
- if (uint32[(pos + 8) >> 2] === 0 && uint32[(pos + 12) >> 2] === 0) return null;
6637
- return deserializeNameSpan(pos);
6601
+ return int32[(pos >> 2) + 2] === 0 && int32[(pos >> 2) + 3] === 0
6602
+ ? null
6603
+ : deserializeNameSpan(pos);
6638
6604
  }
6639
6605
 
6640
6606
  function deserializeVecError(pos) {
6641
6607
  let arr = [],
6642
6608
  pos32 = pos >> 2;
6643
- pos = uint32[pos32];
6644
- let endPos = pos + uint32[pos32 + 2] * 80;
6609
+ pos = int32[pos32];
6610
+ let endPos = pos + int32[pos32 + 2] * 80;
6645
6611
  for (; pos !== endPos; ) {
6646
6612
  arr.push(deserializeError(pos));
6647
6613
  pos += 80;
@@ -6652,8 +6618,8 @@ function deserializeVecError(pos) {
6652
6618
  function deserializeVecErrorLabel(pos) {
6653
6619
  let arr = [],
6654
6620
  pos32 = pos >> 2;
6655
- pos = uint32[pos32];
6656
- let endPos = pos + uint32[pos32 + 2] * 24;
6621
+ pos = int32[pos32];
6622
+ let endPos = pos + int32[pos32 + 2] * 24;
6657
6623
  for (; pos !== endPos; ) {
6658
6624
  arr.push(deserializeErrorLabel(pos));
6659
6625
  pos += 24;
@@ -6664,8 +6630,8 @@ function deserializeVecErrorLabel(pos) {
6664
6630
  function deserializeVecStaticImport(pos) {
6665
6631
  let arr = [],
6666
6632
  pos32 = pos >> 2;
6667
- pos = uint32[pos32];
6668
- let endPos = pos + uint32[pos32 + 2] * 56;
6633
+ pos = int32[pos32];
6634
+ let endPos = pos + int32[pos32 + 2] * 56;
6669
6635
  for (; pos !== endPos; ) {
6670
6636
  arr.push(deserializeStaticImport(pos));
6671
6637
  pos += 56;
@@ -6676,8 +6642,8 @@ function deserializeVecStaticImport(pos) {
6676
6642
  function deserializeVecStaticExport(pos) {
6677
6643
  let arr = [],
6678
6644
  pos32 = pos >> 2;
6679
- pos = uint32[pos32];
6680
- let endPos = pos + uint32[pos32 + 2] * 32;
6645
+ pos = int32[pos32];
6646
+ let endPos = pos + (int32[pos32 + 2] << 5);
6681
6647
  for (; pos !== endPos; ) {
6682
6648
  arr.push(deserializeStaticExport(pos));
6683
6649
  pos += 32;
@@ -6688,8 +6654,8 @@ function deserializeVecStaticExport(pos) {
6688
6654
  function deserializeVecDynamicImport(pos) {
6689
6655
  let arr = [],
6690
6656
  pos32 = pos >> 2;
6691
- pos = uint32[pos32];
6692
- let endPos = pos + uint32[pos32 + 2] * 16;
6657
+ pos = int32[pos32];
6658
+ let endPos = pos + (int32[pos32 + 2] << 4);
6693
6659
  for (; pos !== endPos; ) {
6694
6660
  arr.push(deserializeDynamicImport(pos));
6695
6661
  pos += 16;
@@ -6700,8 +6666,8 @@ function deserializeVecDynamicImport(pos) {
6700
6666
  function deserializeVecSpan(pos) {
6701
6667
  let arr = [],
6702
6668
  pos32 = pos >> 2;
6703
- pos = uint32[pos32];
6704
- let endPos = pos + uint32[pos32 + 2] * 8;
6669
+ pos = int32[pos32];
6670
+ let endPos = pos + (int32[pos32 + 2] << 3);
6705
6671
  for (; pos !== endPos; ) {
6706
6672
  arr.push(deserializeSpan(pos));
6707
6673
  pos += 8;
@@ -6712,8 +6678,8 @@ function deserializeVecSpan(pos) {
6712
6678
  function deserializeVecImportEntry(pos) {
6713
6679
  let arr = [],
6714
6680
  pos32 = pos >> 2;
6715
- pos = uint32[pos32];
6716
- let endPos = pos + uint32[pos32 + 2] * 96;
6681
+ pos = int32[pos32];
6682
+ let endPos = pos + int32[pos32 + 2] * 96;
6717
6683
  for (; pos !== endPos; ) {
6718
6684
  arr.push(deserializeImportEntry(pos));
6719
6685
  pos += 96;
@@ -6724,8 +6690,8 @@ function deserializeVecImportEntry(pos) {
6724
6690
  function deserializeVecExportEntry(pos) {
6725
6691
  let arr = [],
6726
6692
  pos32 = pos >> 2;
6727
- pos = uint32[pos32];
6728
- let endPos = pos + uint32[pos32 + 2] * 144;
6693
+ pos = int32[pos32];
6694
+ let endPos = pos + int32[pos32 + 2] * 144;
6729
6695
  for (; pos !== endPos; ) {
6730
6696
  arr.push(deserializeExportEntry(pos));
6731
6697
  pos += 144;