@elaraai/east 0.0.1-beta.28 → 0.0.1-beta.29

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.
Files changed (81) hide show
  1. package/dist/src/analyze.d.ts.map +1 -1
  2. package/dist/src/analyze.js +12 -4
  3. package/dist/src/analyze.js.map +1 -1
  4. package/dist/src/ast.d.ts +33 -33
  5. package/dist/src/ast.d.ts.map +1 -1
  6. package/dist/src/ast_to_ir.d.ts +2 -2
  7. package/dist/src/ast_to_ir.d.ts.map +1 -1
  8. package/dist/src/ast_to_ir.js +100 -100
  9. package/dist/src/ast_to_ir.js.map +1 -1
  10. package/dist/src/compile.d.ts +20 -1
  11. package/dist/src/compile.d.ts.map +1 -1
  12. package/dist/src/compile.js +103 -84
  13. package/dist/src/compile.js.map +1 -1
  14. package/dist/src/error.d.ts +8 -1
  15. package/dist/src/error.d.ts.map +1 -1
  16. package/dist/src/error.js +11 -1
  17. package/dist/src/error.js.map +1 -1
  18. package/dist/src/expr/array.js +48 -48
  19. package/dist/src/expr/array.js.map +1 -1
  20. package/dist/src/expr/ast.d.ts +1 -1
  21. package/dist/src/expr/ast.d.ts.map +1 -1
  22. package/dist/src/expr/ast.js +14 -14
  23. package/dist/src/expr/ast.js.map +1 -1
  24. package/dist/src/expr/asyncfunction.js +1 -1
  25. package/dist/src/expr/asyncfunction.js.map +1 -1
  26. package/dist/src/expr/blob.js +7 -7
  27. package/dist/src/expr/blob.js.map +1 -1
  28. package/dist/src/expr/block.d.ts +2 -2
  29. package/dist/src/expr/block.d.ts.map +1 -1
  30. package/dist/src/expr/block.js +131 -131
  31. package/dist/src/expr/block.js.map +1 -1
  32. package/dist/src/expr/boolean.js +5 -5
  33. package/dist/src/expr/boolean.js.map +1 -1
  34. package/dist/src/expr/datetime.js +33 -33
  35. package/dist/src/expr/datetime.js.map +1 -1
  36. package/dist/src/expr/dict.js +55 -55
  37. package/dist/src/expr/dict.js.map +1 -1
  38. package/dist/src/expr/expr.d.ts +1 -1
  39. package/dist/src/expr/expr.d.ts.map +1 -1
  40. package/dist/src/expr/expr.js.map +1 -1
  41. package/dist/src/expr/float.js +16 -16
  42. package/dist/src/expr/float.js.map +1 -1
  43. package/dist/src/expr/function.js +1 -1
  44. package/dist/src/expr/function.js.map +1 -1
  45. package/dist/src/expr/integer.js +17 -17
  46. package/dist/src/expr/integer.js.map +1 -1
  47. package/dist/src/expr/libs/blob.js +2 -2
  48. package/dist/src/expr/libs/blob.js.map +1 -1
  49. package/dist/src/expr/libs/string.js +1 -1
  50. package/dist/src/expr/libs/string.js.map +1 -1
  51. package/dist/src/expr/recursive.js +2 -2
  52. package/dist/src/expr/recursive.js.map +1 -1
  53. package/dist/src/expr/ref.js +3 -3
  54. package/dist/src/expr/ref.js.map +1 -1
  55. package/dist/src/expr/set.js +45 -45
  56. package/dist/src/expr/set.js.map +1 -1
  57. package/dist/src/expr/string.js +22 -22
  58. package/dist/src/expr/string.js.map +1 -1
  59. package/dist/src/expr/struct.d.ts +1 -1
  60. package/dist/src/expr/struct.d.ts.map +1 -1
  61. package/dist/src/expr/struct.js +1 -1
  62. package/dist/src/expr/struct.js.map +1 -1
  63. package/dist/src/expr/variant.js +2 -2
  64. package/dist/src/expr/variant.js.map +1 -1
  65. package/dist/src/ir.d.ts +121 -114
  66. package/dist/src/ir.d.ts.map +1 -1
  67. package/dist/src/ir.js +49 -34
  68. package/dist/src/ir.js.map +1 -1
  69. package/dist/src/location.d.ts +30 -10
  70. package/dist/src/location.d.ts.map +1 -1
  71. package/dist/src/location.js +70 -28
  72. package/dist/src/location.js.map +1 -1
  73. package/dist/src/serialization/beast2.d.ts +1 -1
  74. package/dist/src/serialization/beast2.d.ts.map +1 -1
  75. package/dist/src/serialization/beast2.js +131 -22
  76. package/dist/src/serialization/beast2.js.map +1 -1
  77. package/dist/src/serialization/index.d.ts +1 -1
  78. package/dist/src/serialization/index.d.ts.map +1 -1
  79. package/dist/src/serialization/index.js +1 -1
  80. package/dist/src/serialization/index.js.map +1 -1
  81. package/package.json +1 -1
package/dist/src/ir.d.ts CHANGED
@@ -11,15 +11,22 @@ export type LocationValue = {
11
11
  line: bigint;
12
12
  column: bigint;
13
13
  };
14
- export declare function printLocationValue(location: LocationValue): string;
14
+ /**
15
+ * Formats a single location as a human-readable string.
16
+ */
17
+ export declare function printSingleLocationValue(location: LocationValue): string;
18
+ /**
19
+ * Formats an array of locations as a stack trace string.
20
+ */
21
+ export declare function printLocationValue(locations: LocationValue[]): string;
15
22
  export type ErrorIR = variant<"Error", {
16
23
  type: variant<"Never", null>;
17
- location: LocationValue;
24
+ location: LocationValue[];
18
25
  message: any;
19
26
  }>;
20
27
  export type TryCatchIR = variant<"TryCatch", {
21
28
  type: EastTypeValue;
22
- location: LocationValue;
29
+ location: LocationValue[];
23
30
  try_body: any;
24
31
  catch_body: any;
25
32
  message: VariableIR;
@@ -28,77 +35,77 @@ export type TryCatchIR = variant<"TryCatch", {
28
35
  }>;
29
36
  export type ValueIR = variant<"Value", {
30
37
  type: EastTypeValue;
31
- location: LocationValue;
38
+ location: LocationValue[];
32
39
  value: LiteralValue;
33
40
  }>;
34
41
  export type VariableIR = variant<"Variable", {
35
42
  type: EastTypeValue;
36
43
  name: string;
37
- location: LocationValue;
44
+ location: LocationValue[];
38
45
  mutable: boolean;
39
46
  captured: boolean;
40
47
  }>;
41
48
  export type LetIR = variant<"Let", {
42
49
  type: EastTypeValue;
43
- location: LocationValue;
50
+ location: LocationValue[];
44
51
  variable: VariableIR;
45
52
  value: any;
46
53
  }>;
47
54
  export type AssignIR = variant<"Assign", {
48
55
  type: EastTypeValue;
49
- location: LocationValue;
56
+ location: LocationValue[];
50
57
  variable: VariableIR;
51
58
  value: any;
52
59
  }>;
53
60
  export type AsIR = variant<"As", {
54
61
  type: EastTypeValue;
55
62
  value: any;
56
- location: LocationValue;
63
+ location: LocationValue[];
57
64
  }>;
58
65
  export type FunctionIR = variant<"Function", {
59
66
  type: EastTypeValue;
60
- location: LocationValue;
67
+ location: LocationValue[];
61
68
  captures: VariableIR[];
62
69
  parameters: VariableIR[];
63
70
  body: any;
64
71
  }>;
65
72
  export type AsyncFunctionIR = variant<"AsyncFunction", {
66
73
  type: EastTypeValue;
67
- location: LocationValue;
74
+ location: LocationValue[];
68
75
  captures: VariableIR[];
69
76
  parameters: VariableIR[];
70
77
  body: any;
71
78
  }>;
72
79
  export type CallIR = variant<"Call", {
73
80
  type: EastTypeValue;
74
- location: LocationValue;
81
+ location: LocationValue[];
75
82
  function: any;
76
83
  arguments: any[];
77
84
  }>;
78
85
  export type CallAsyncIR = variant<"CallAsync", {
79
86
  type: EastTypeValue;
80
- location: LocationValue;
87
+ location: LocationValue[];
81
88
  function: any;
82
89
  arguments: any[];
83
90
  }>;
84
91
  export type NewRefIR = variant<"NewRef", {
85
92
  type: EastTypeValue;
86
- location: LocationValue;
93
+ location: LocationValue[];
87
94
  value: any;
88
95
  }>;
89
96
  export type NewArrayIR = variant<"NewArray", {
90
97
  type: EastTypeValue;
91
- location: LocationValue;
98
+ location: LocationValue[];
92
99
  values: any[];
93
100
  }>;
94
101
  export type NewSetIR = variant<"NewSet", {
95
102
  type: EastTypeValue;
96
- location: LocationValue;
103
+ location: LocationValue[];
97
104
  values: any[];
98
105
  }>;
99
106
  export type NewDictIR = variant<"NewDict", {
100
107
  type: EastTypeValue;
101
- location: LocationValue;
108
+ location: LocationValue[];
102
109
  values: {
103
110
  key: any;
104
111
  value: any;
@@ -106,7 +113,7 @@ export type NewDictIR = variant<"NewDict", {
106
113
  }>;
107
114
  export type StructIR = variant<"Struct", {
108
115
  type: EastTypeValue;
109
- location: LocationValue;
116
+ location: LocationValue[];
110
117
  fields: {
111
118
  name: string;
112
119
  value: any;
@@ -114,24 +121,24 @@ export type StructIR = variant<"Struct", {
114
121
  }>;
115
122
  export type GetFieldIR = variant<"GetField", {
116
123
  type: EastTypeValue;
117
- location: LocationValue;
124
+ location: LocationValue[];
118
125
  field: string;
119
126
  struct: any;
120
127
  }>;
121
128
  export type VariantIR = variant<"Variant", {
122
129
  type: EastTypeValue;
123
- location: LocationValue;
130
+ location: LocationValue[];
124
131
  case: string;
125
132
  value: any;
126
133
  }>;
127
134
  export type BlockIR = variant<"Block", {
128
135
  type: EastTypeValue;
129
- location: LocationValue;
136
+ location: LocationValue[];
130
137
  statements: any[];
131
138
  }>;
132
139
  export type IfElseIR = variant<"IfElse", {
133
140
  type: EastTypeValue;
134
- location: LocationValue;
141
+ location: LocationValue[];
135
142
  ifs: {
136
143
  predicate: any;
137
144
  body: any;
@@ -140,7 +147,7 @@ export type IfElseIR = variant<"IfElse", {
140
147
  }>;
141
148
  export type MatchIR = variant<"Match", {
142
149
  type: EastTypeValue;
143
- location: LocationValue;
150
+ location: LocationValue[];
144
151
  variant: any;
145
152
  cases: {
146
153
  case: string;
@@ -150,28 +157,28 @@ export type MatchIR = variant<"Match", {
150
157
  }>;
151
158
  export type UnwrapRecursiveIR = variant<"UnwrapRecursive", {
152
159
  type: EastTypeValue;
153
- location: LocationValue;
160
+ location: LocationValue[];
154
161
  value: any;
155
162
  }>;
156
163
  export type WrapRecursiveIR = variant<"WrapRecursive", {
157
164
  type: EastTypeValue;
158
- location: LocationValue;
165
+ location: LocationValue[];
159
166
  value: any;
160
167
  }>;
161
168
  export type IRLabel = {
162
169
  name: string;
163
- location: LocationValue;
170
+ location: LocationValue[];
164
171
  };
165
172
  export type WhileIR = variant<"While", {
166
173
  type: variant<"Null", null>;
167
- location: LocationValue;
174
+ location: LocationValue[];
168
175
  predicate: any;
169
176
  label: IRLabel;
170
177
  body: any;
171
178
  }>;
172
179
  export type ForArrayIR = variant<"ForArray", {
173
180
  type: variant<"Null", null>;
174
- location: LocationValue;
181
+ location: LocationValue[];
175
182
  array: any;
176
183
  label: IRLabel;
177
184
  key: VariableIR;
@@ -180,7 +187,7 @@ export type ForArrayIR = variant<"ForArray", {
180
187
  }>;
181
188
  export type ForSetIR = variant<"ForSet", {
182
189
  type: variant<"Null", null>;
183
- location: LocationValue;
190
+ location: LocationValue[];
184
191
  set: any;
185
192
  label: IRLabel;
186
193
  key: VariableIR;
@@ -188,7 +195,7 @@ export type ForSetIR = variant<"ForSet", {
188
195
  }>;
189
196
  export type ForDictIR = variant<"ForDict", {
190
197
  type: variant<"Null", null>;
191
- location: LocationValue;
198
+ location: LocationValue[];
192
199
  dict: any;
193
200
  label: IRLabel;
194
201
  key: VariableIR;
@@ -197,30 +204,30 @@ export type ForDictIR = variant<"ForDict", {
197
204
  }>;
198
205
  export type ReturnIR = variant<"Return", {
199
206
  type: variant<"Never", null>;
200
- location: LocationValue;
207
+ location: LocationValue[];
201
208
  value: any;
202
209
  }>;
203
210
  export type ContinueIR = variant<"Continue", {
204
211
  type: variant<"Never", null>;
205
- location: LocationValue;
212
+ location: LocationValue[];
206
213
  label: IRLabel;
207
214
  }>;
208
215
  export type BreakIR = variant<"Break", {
209
216
  type: variant<"Never", null>;
210
- location: LocationValue;
217
+ location: LocationValue[];
211
218
  label: IRLabel;
212
219
  }>;
213
220
  /**@internal */
214
221
  export type BuiltinIR = variant<"Builtin", {
215
222
  type: EastTypeValue;
216
- location: LocationValue;
223
+ location: LocationValue[];
217
224
  builtin: BuiltinName;
218
225
  type_parameters: EastTypeValue[];
219
226
  arguments: any[];
220
227
  }>;
221
228
  export type PlatformIR = variant<"Platform", {
222
229
  type: EastTypeValue;
223
- location: LocationValue;
230
+ location: LocationValue[];
224
231
  name: string;
225
232
  type_parameters: EastTypeValue[];
226
233
  arguments: any[];
@@ -240,11 +247,11 @@ export declare const LocationType: StructType<{
240
247
  }>;
241
248
  export declare const IRLabelType: StructType<{
242
249
  readonly name: StringType;
243
- readonly location: StructType<{
250
+ readonly location: ArrayType<StructType<{
244
251
  readonly filename: StringType;
245
252
  readonly line: IntegerType;
246
253
  readonly column: IntegerType;
247
- }>;
254
+ }>>;
248
255
  }>;
249
256
  export declare const VariableType: StructType<{
250
257
  readonly type: RecursiveType<VariantType<{
@@ -281,11 +288,11 @@ export declare const VariableType: StructType<{
281
288
  readonly output: import("./types.js").RecursiveTypeMarker;
282
289
  }>;
283
290
  }>>;
284
- readonly location: StructType<{
291
+ readonly location: ArrayType<StructType<{
285
292
  readonly filename: StringType;
286
293
  readonly line: IntegerType;
287
294
  readonly column: IntegerType;
288
- }>;
295
+ }>>;
289
296
  readonly name: StringType;
290
297
  readonly mutable: BooleanType;
291
298
  readonly captured: BooleanType;
@@ -326,11 +333,11 @@ export declare const IRType: RecursiveType<VariantType<{
326
333
  readonly output: import("./types.js").RecursiveTypeMarker;
327
334
  }>;
328
335
  }>>;
329
- readonly location: StructType<{
336
+ readonly location: ArrayType<StructType<{
330
337
  readonly filename: StringType;
331
338
  readonly line: IntegerType;
332
339
  readonly column: IntegerType;
333
- }>;
340
+ }>>;
334
341
  readonly message: import("./types.js").RecursiveTypeMarker;
335
342
  }>;
336
343
  readonly TryCatch: StructType<{
@@ -368,11 +375,11 @@ export declare const IRType: RecursiveType<VariantType<{
368
375
  readonly output: import("./types.js").RecursiveTypeMarker;
369
376
  }>;
370
377
  }>>;
371
- readonly location: StructType<{
378
+ readonly location: ArrayType<StructType<{
372
379
  readonly filename: StringType;
373
380
  readonly line: IntegerType;
374
381
  readonly column: IntegerType;
375
- }>;
382
+ }>>;
376
383
  readonly try_body: import("./types.js").RecursiveTypeMarker;
377
384
  readonly catch_body: import("./types.js").RecursiveTypeMarker;
378
385
  readonly message: import("./types.js").RecursiveTypeMarker;
@@ -414,11 +421,11 @@ export declare const IRType: RecursiveType<VariantType<{
414
421
  readonly output: import("./types.js").RecursiveTypeMarker;
415
422
  }>;
416
423
  }>>;
417
- readonly location: StructType<{
424
+ readonly location: ArrayType<StructType<{
418
425
  readonly filename: StringType;
419
426
  readonly line: IntegerType;
420
427
  readonly column: IntegerType;
421
- }>;
428
+ }>>;
422
429
  readonly value: VariantType<{
423
430
  readonly Null: import("./types.js").NullType;
424
431
  readonly Boolean: BooleanType;
@@ -464,11 +471,11 @@ export declare const IRType: RecursiveType<VariantType<{
464
471
  readonly output: import("./types.js").RecursiveTypeMarker;
465
472
  }>;
466
473
  }>>;
467
- readonly location: StructType<{
474
+ readonly location: ArrayType<StructType<{
468
475
  readonly filename: StringType;
469
476
  readonly line: IntegerType;
470
477
  readonly column: IntegerType;
471
- }>;
478
+ }>>;
472
479
  readonly name: StringType;
473
480
  readonly mutable: BooleanType;
474
481
  readonly captured: BooleanType;
@@ -508,11 +515,11 @@ export declare const IRType: RecursiveType<VariantType<{
508
515
  readonly output: import("./types.js").RecursiveTypeMarker;
509
516
  }>;
510
517
  }>>;
511
- readonly location: StructType<{
518
+ readonly location: ArrayType<StructType<{
512
519
  readonly filename: StringType;
513
520
  readonly line: IntegerType;
514
521
  readonly column: IntegerType;
515
- }>;
522
+ }>>;
516
523
  readonly variable: import("./types.js").RecursiveTypeMarker;
517
524
  readonly value: import("./types.js").RecursiveTypeMarker;
518
525
  }>;
@@ -551,11 +558,11 @@ export declare const IRType: RecursiveType<VariantType<{
551
558
  readonly output: import("./types.js").RecursiveTypeMarker;
552
559
  }>;
553
560
  }>>;
554
- readonly location: StructType<{
561
+ readonly location: ArrayType<StructType<{
555
562
  readonly filename: StringType;
556
563
  readonly line: IntegerType;
557
564
  readonly column: IntegerType;
558
- }>;
565
+ }>>;
559
566
  readonly variable: import("./types.js").RecursiveTypeMarker;
560
567
  readonly value: import("./types.js").RecursiveTypeMarker;
561
568
  }>;
@@ -594,11 +601,11 @@ export declare const IRType: RecursiveType<VariantType<{
594
601
  readonly output: import("./types.js").RecursiveTypeMarker;
595
602
  }>;
596
603
  }>>;
597
- readonly location: StructType<{
604
+ readonly location: ArrayType<StructType<{
598
605
  readonly filename: StringType;
599
606
  readonly line: IntegerType;
600
607
  readonly column: IntegerType;
601
- }>;
608
+ }>>;
602
609
  readonly value: import("./types.js").RecursiveTypeMarker;
603
610
  }>;
604
611
  readonly Function: StructType<{
@@ -636,11 +643,11 @@ export declare const IRType: RecursiveType<VariantType<{
636
643
  readonly output: import("./types.js").RecursiveTypeMarker;
637
644
  }>;
638
645
  }>>;
639
- readonly location: StructType<{
646
+ readonly location: ArrayType<StructType<{
640
647
  readonly filename: StringType;
641
648
  readonly line: IntegerType;
642
649
  readonly column: IntegerType;
643
- }>;
650
+ }>>;
644
651
  readonly captures: ArrayType<import("./types.js").RecursiveTypeMarker>;
645
652
  readonly parameters: ArrayType<import("./types.js").RecursiveTypeMarker>;
646
653
  readonly body: import("./types.js").RecursiveTypeMarker;
@@ -680,11 +687,11 @@ export declare const IRType: RecursiveType<VariantType<{
680
687
  readonly output: import("./types.js").RecursiveTypeMarker;
681
688
  }>;
682
689
  }>>;
683
- readonly location: StructType<{
690
+ readonly location: ArrayType<StructType<{
684
691
  readonly filename: StringType;
685
692
  readonly line: IntegerType;
686
693
  readonly column: IntegerType;
687
- }>;
694
+ }>>;
688
695
  readonly captures: ArrayType<import("./types.js").RecursiveTypeMarker>;
689
696
  readonly parameters: ArrayType<import("./types.js").RecursiveTypeMarker>;
690
697
  readonly body: import("./types.js").RecursiveTypeMarker;
@@ -724,11 +731,11 @@ export declare const IRType: RecursiveType<VariantType<{
724
731
  readonly output: import("./types.js").RecursiveTypeMarker;
725
732
  }>;
726
733
  }>>;
727
- readonly location: StructType<{
734
+ readonly location: ArrayType<StructType<{
728
735
  readonly filename: StringType;
729
736
  readonly line: IntegerType;
730
737
  readonly column: IntegerType;
731
- }>;
738
+ }>>;
732
739
  readonly function: import("./types.js").RecursiveTypeMarker;
733
740
  readonly arguments: ArrayType<import("./types.js").RecursiveTypeMarker>;
734
741
  }>;
@@ -767,11 +774,11 @@ export declare const IRType: RecursiveType<VariantType<{
767
774
  readonly output: import("./types.js").RecursiveTypeMarker;
768
775
  }>;
769
776
  }>>;
770
- readonly location: StructType<{
777
+ readonly location: ArrayType<StructType<{
771
778
  readonly filename: StringType;
772
779
  readonly line: IntegerType;
773
780
  readonly column: IntegerType;
774
- }>;
781
+ }>>;
775
782
  readonly function: import("./types.js").RecursiveTypeMarker;
776
783
  readonly arguments: ArrayType<import("./types.js").RecursiveTypeMarker>;
777
784
  }>;
@@ -810,11 +817,11 @@ export declare const IRType: RecursiveType<VariantType<{
810
817
  readonly output: import("./types.js").RecursiveTypeMarker;
811
818
  }>;
812
819
  }>>;
813
- readonly location: StructType<{
820
+ readonly location: ArrayType<StructType<{
814
821
  readonly filename: StringType;
815
822
  readonly line: IntegerType;
816
823
  readonly column: IntegerType;
817
- }>;
824
+ }>>;
818
825
  readonly value: import("./types.js").RecursiveTypeMarker;
819
826
  }>;
820
827
  readonly NewArray: StructType<{
@@ -852,11 +859,11 @@ export declare const IRType: RecursiveType<VariantType<{
852
859
  readonly output: import("./types.js").RecursiveTypeMarker;
853
860
  }>;
854
861
  }>>;
855
- readonly location: StructType<{
862
+ readonly location: ArrayType<StructType<{
856
863
  readonly filename: StringType;
857
864
  readonly line: IntegerType;
858
865
  readonly column: IntegerType;
859
- }>;
866
+ }>>;
860
867
  readonly values: ArrayType<import("./types.js").RecursiveTypeMarker>;
861
868
  }>;
862
869
  readonly NewSet: StructType<{
@@ -894,11 +901,11 @@ export declare const IRType: RecursiveType<VariantType<{
894
901
  readonly output: import("./types.js").RecursiveTypeMarker;
895
902
  }>;
896
903
  }>>;
897
- readonly location: StructType<{
904
+ readonly location: ArrayType<StructType<{
898
905
  readonly filename: StringType;
899
906
  readonly line: IntegerType;
900
907
  readonly column: IntegerType;
901
- }>;
908
+ }>>;
902
909
  readonly values: ArrayType<import("./types.js").RecursiveTypeMarker>;
903
910
  }>;
904
911
  readonly NewDict: StructType<{
@@ -936,11 +943,11 @@ export declare const IRType: RecursiveType<VariantType<{
936
943
  readonly output: import("./types.js").RecursiveTypeMarker;
937
944
  }>;
938
945
  }>>;
939
- readonly location: StructType<{
946
+ readonly location: ArrayType<StructType<{
940
947
  readonly filename: StringType;
941
948
  readonly line: IntegerType;
942
949
  readonly column: IntegerType;
943
- }>;
950
+ }>>;
944
951
  readonly values: ArrayType<StructType<{
945
952
  readonly key: import("./types.js").RecursiveTypeMarker;
946
953
  readonly value: import("./types.js").RecursiveTypeMarker;
@@ -981,11 +988,11 @@ export declare const IRType: RecursiveType<VariantType<{
981
988
  readonly output: import("./types.js").RecursiveTypeMarker;
982
989
  }>;
983
990
  }>>;
984
- readonly location: StructType<{
991
+ readonly location: ArrayType<StructType<{
985
992
  readonly filename: StringType;
986
993
  readonly line: IntegerType;
987
994
  readonly column: IntegerType;
988
- }>;
995
+ }>>;
989
996
  readonly fields: ArrayType<StructType<{
990
997
  readonly name: StringType;
991
998
  readonly value: import("./types.js").RecursiveTypeMarker;
@@ -1026,11 +1033,11 @@ export declare const IRType: RecursiveType<VariantType<{
1026
1033
  readonly output: import("./types.js").RecursiveTypeMarker;
1027
1034
  }>;
1028
1035
  }>>;
1029
- readonly location: StructType<{
1036
+ readonly location: ArrayType<StructType<{
1030
1037
  readonly filename: StringType;
1031
1038
  readonly line: IntegerType;
1032
1039
  readonly column: IntegerType;
1033
- }>;
1040
+ }>>;
1034
1041
  readonly field: StringType;
1035
1042
  readonly struct: import("./types.js").RecursiveTypeMarker;
1036
1043
  }>;
@@ -1069,11 +1076,11 @@ export declare const IRType: RecursiveType<VariantType<{
1069
1076
  readonly output: import("./types.js").RecursiveTypeMarker;
1070
1077
  }>;
1071
1078
  }>>;
1072
- readonly location: StructType<{
1079
+ readonly location: ArrayType<StructType<{
1073
1080
  readonly filename: StringType;
1074
1081
  readonly line: IntegerType;
1075
1082
  readonly column: IntegerType;
1076
- }>;
1083
+ }>>;
1077
1084
  readonly case: StringType;
1078
1085
  readonly value: import("./types.js").RecursiveTypeMarker;
1079
1086
  }>;
@@ -1112,11 +1119,11 @@ export declare const IRType: RecursiveType<VariantType<{
1112
1119
  readonly output: import("./types.js").RecursiveTypeMarker;
1113
1120
  }>;
1114
1121
  }>>;
1115
- readonly location: StructType<{
1122
+ readonly location: ArrayType<StructType<{
1116
1123
  readonly filename: StringType;
1117
1124
  readonly line: IntegerType;
1118
1125
  readonly column: IntegerType;
1119
- }>;
1126
+ }>>;
1120
1127
  readonly statements: ArrayType<import("./types.js").RecursiveTypeMarker>;
1121
1128
  }>;
1122
1129
  readonly IfElse: StructType<{
@@ -1154,11 +1161,11 @@ export declare const IRType: RecursiveType<VariantType<{
1154
1161
  readonly output: import("./types.js").RecursiveTypeMarker;
1155
1162
  }>;
1156
1163
  }>>;
1157
- readonly location: StructType<{
1164
+ readonly location: ArrayType<StructType<{
1158
1165
  readonly filename: StringType;
1159
1166
  readonly line: IntegerType;
1160
1167
  readonly column: IntegerType;
1161
- }>;
1168
+ }>>;
1162
1169
  readonly ifs: ArrayType<StructType<{
1163
1170
  readonly predicate: import("./types.js").RecursiveTypeMarker;
1164
1171
  readonly body: import("./types.js").RecursiveTypeMarker;
@@ -1200,11 +1207,11 @@ export declare const IRType: RecursiveType<VariantType<{
1200
1207
  readonly output: import("./types.js").RecursiveTypeMarker;
1201
1208
  }>;
1202
1209
  }>>;
1203
- readonly location: StructType<{
1210
+ readonly location: ArrayType<StructType<{
1204
1211
  readonly filename: StringType;
1205
1212
  readonly line: IntegerType;
1206
1213
  readonly column: IntegerType;
1207
- }>;
1214
+ }>>;
1208
1215
  readonly variant: import("./types.js").RecursiveTypeMarker;
1209
1216
  readonly cases: ArrayType<StructType<{
1210
1217
  readonly case: StringType;
@@ -1247,11 +1254,11 @@ export declare const IRType: RecursiveType<VariantType<{
1247
1254
  readonly output: import("./types.js").RecursiveTypeMarker;
1248
1255
  }>;
1249
1256
  }>>;
1250
- readonly location: StructType<{
1257
+ readonly location: ArrayType<StructType<{
1251
1258
  readonly filename: StringType;
1252
1259
  readonly line: IntegerType;
1253
1260
  readonly column: IntegerType;
1254
- }>;
1261
+ }>>;
1255
1262
  readonly value: import("./types.js").RecursiveTypeMarker;
1256
1263
  }>;
1257
1264
  readonly WrapRecursive: StructType<{
@@ -1289,11 +1296,11 @@ export declare const IRType: RecursiveType<VariantType<{
1289
1296
  readonly output: import("./types.js").RecursiveTypeMarker;
1290
1297
  }>;
1291
1298
  }>>;
1292
- readonly location: StructType<{
1299
+ readonly location: ArrayType<StructType<{
1293
1300
  readonly filename: StringType;
1294
1301
  readonly line: IntegerType;
1295
1302
  readonly column: IntegerType;
1296
- }>;
1303
+ }>>;
1297
1304
  readonly value: import("./types.js").RecursiveTypeMarker;
1298
1305
  }>;
1299
1306
  readonly While: StructType<{
@@ -1331,19 +1338,19 @@ export declare const IRType: RecursiveType<VariantType<{
1331
1338
  readonly output: import("./types.js").RecursiveTypeMarker;
1332
1339
  }>;
1333
1340
  }>>;
1334
- readonly location: StructType<{
1341
+ readonly location: ArrayType<StructType<{
1335
1342
  readonly filename: StringType;
1336
1343
  readonly line: IntegerType;
1337
1344
  readonly column: IntegerType;
1338
- }>;
1345
+ }>>;
1339
1346
  readonly predicate: import("./types.js").RecursiveTypeMarker;
1340
1347
  readonly label: StructType<{
1341
1348
  readonly name: StringType;
1342
- readonly location: StructType<{
1349
+ readonly location: ArrayType<StructType<{
1343
1350
  readonly filename: StringType;
1344
1351
  readonly line: IntegerType;
1345
1352
  readonly column: IntegerType;
1346
- }>;
1353
+ }>>;
1347
1354
  }>;
1348
1355
  readonly body: import("./types.js").RecursiveTypeMarker;
1349
1356
  }>;
@@ -1382,19 +1389,19 @@ export declare const IRType: RecursiveType<VariantType<{
1382
1389
  readonly output: import("./types.js").RecursiveTypeMarker;
1383
1390
  }>;
1384
1391
  }>>;
1385
- readonly location: StructType<{
1392
+ readonly location: ArrayType<StructType<{
1386
1393
  readonly filename: StringType;
1387
1394
  readonly line: IntegerType;
1388
1395
  readonly column: IntegerType;
1389
- }>;
1396
+ }>>;
1390
1397
  readonly array: import("./types.js").RecursiveTypeMarker;
1391
1398
  readonly label: StructType<{
1392
1399
  readonly name: StringType;
1393
- readonly location: StructType<{
1400
+ readonly location: ArrayType<StructType<{
1394
1401
  readonly filename: StringType;
1395
1402
  readonly line: IntegerType;
1396
1403
  readonly column: IntegerType;
1397
- }>;
1404
+ }>>;
1398
1405
  }>;
1399
1406
  readonly key: import("./types.js").RecursiveTypeMarker;
1400
1407
  readonly value: import("./types.js").RecursiveTypeMarker;
@@ -1435,19 +1442,19 @@ export declare const IRType: RecursiveType<VariantType<{
1435
1442
  readonly output: import("./types.js").RecursiveTypeMarker;
1436
1443
  }>;
1437
1444
  }>>;
1438
- readonly location: StructType<{
1445
+ readonly location: ArrayType<StructType<{
1439
1446
  readonly filename: StringType;
1440
1447
  readonly line: IntegerType;
1441
1448
  readonly column: IntegerType;
1442
- }>;
1449
+ }>>;
1443
1450
  readonly set: import("./types.js").RecursiveTypeMarker;
1444
1451
  readonly label: StructType<{
1445
1452
  readonly name: StringType;
1446
- readonly location: StructType<{
1453
+ readonly location: ArrayType<StructType<{
1447
1454
  readonly filename: StringType;
1448
1455
  readonly line: IntegerType;
1449
1456
  readonly column: IntegerType;
1450
- }>;
1457
+ }>>;
1451
1458
  }>;
1452
1459
  readonly key: import("./types.js").RecursiveTypeMarker;
1453
1460
  readonly body: import("./types.js").RecursiveTypeMarker;
@@ -1487,19 +1494,19 @@ export declare const IRType: RecursiveType<VariantType<{
1487
1494
  readonly output: import("./types.js").RecursiveTypeMarker;
1488
1495
  }>;
1489
1496
  }>>;
1490
- readonly location: StructType<{
1497
+ readonly location: ArrayType<StructType<{
1491
1498
  readonly filename: StringType;
1492
1499
  readonly line: IntegerType;
1493
1500
  readonly column: IntegerType;
1494
- }>;
1501
+ }>>;
1495
1502
  readonly dict: import("./types.js").RecursiveTypeMarker;
1496
1503
  readonly label: StructType<{
1497
1504
  readonly name: StringType;
1498
- readonly location: StructType<{
1505
+ readonly location: ArrayType<StructType<{
1499
1506
  readonly filename: StringType;
1500
1507
  readonly line: IntegerType;
1501
1508
  readonly column: IntegerType;
1502
- }>;
1509
+ }>>;
1503
1510
  }>;
1504
1511
  readonly key: import("./types.js").RecursiveTypeMarker;
1505
1512
  readonly value: import("./types.js").RecursiveTypeMarker;
@@ -1540,11 +1547,11 @@ export declare const IRType: RecursiveType<VariantType<{
1540
1547
  readonly output: import("./types.js").RecursiveTypeMarker;
1541
1548
  }>;
1542
1549
  }>>;
1543
- readonly location: StructType<{
1550
+ readonly location: ArrayType<StructType<{
1544
1551
  readonly filename: StringType;
1545
1552
  readonly line: IntegerType;
1546
1553
  readonly column: IntegerType;
1547
- }>;
1554
+ }>>;
1548
1555
  readonly value: import("./types.js").RecursiveTypeMarker;
1549
1556
  }>;
1550
1557
  readonly Continue: StructType<{
@@ -1582,18 +1589,18 @@ export declare const IRType: RecursiveType<VariantType<{
1582
1589
  readonly output: import("./types.js").RecursiveTypeMarker;
1583
1590
  }>;
1584
1591
  }>>;
1585
- readonly location: StructType<{
1592
+ readonly location: ArrayType<StructType<{
1586
1593
  readonly filename: StringType;
1587
1594
  readonly line: IntegerType;
1588
1595
  readonly column: IntegerType;
1589
- }>;
1596
+ }>>;
1590
1597
  readonly label: StructType<{
1591
1598
  readonly name: StringType;
1592
- readonly location: StructType<{
1599
+ readonly location: ArrayType<StructType<{
1593
1600
  readonly filename: StringType;
1594
1601
  readonly line: IntegerType;
1595
1602
  readonly column: IntegerType;
1596
- }>;
1603
+ }>>;
1597
1604
  }>;
1598
1605
  }>;
1599
1606
  readonly Break: StructType<{
@@ -1631,18 +1638,18 @@ export declare const IRType: RecursiveType<VariantType<{
1631
1638
  readonly output: import("./types.js").RecursiveTypeMarker;
1632
1639
  }>;
1633
1640
  }>>;
1634
- readonly location: StructType<{
1641
+ readonly location: ArrayType<StructType<{
1635
1642
  readonly filename: StringType;
1636
1643
  readonly line: IntegerType;
1637
1644
  readonly column: IntegerType;
1638
- }>;
1645
+ }>>;
1639
1646
  readonly label: StructType<{
1640
1647
  readonly name: StringType;
1641
- readonly location: StructType<{
1648
+ readonly location: ArrayType<StructType<{
1642
1649
  readonly filename: StringType;
1643
1650
  readonly line: IntegerType;
1644
1651
  readonly column: IntegerType;
1645
- }>;
1652
+ }>>;
1646
1653
  }>;
1647
1654
  }>;
1648
1655
  readonly Builtin: StructType<{
@@ -1680,11 +1687,11 @@ export declare const IRType: RecursiveType<VariantType<{
1680
1687
  readonly output: import("./types.js").RecursiveTypeMarker;
1681
1688
  }>;
1682
1689
  }>>;
1683
- readonly location: StructType<{
1690
+ readonly location: ArrayType<StructType<{
1684
1691
  readonly filename: StringType;
1685
1692
  readonly line: IntegerType;
1686
1693
  readonly column: IntegerType;
1687
- }>;
1694
+ }>>;
1688
1695
  readonly builtin: StringType;
1689
1696
  readonly type_parameters: ArrayType<RecursiveType<VariantType<{
1690
1697
  readonly Never: import("./types.js").NullType;
@@ -1757,11 +1764,11 @@ export declare const IRType: RecursiveType<VariantType<{
1757
1764
  readonly output: import("./types.js").RecursiveTypeMarker;
1758
1765
  }>;
1759
1766
  }>>;
1760
- readonly location: StructType<{
1767
+ readonly location: ArrayType<StructType<{
1761
1768
  readonly filename: StringType;
1762
1769
  readonly line: IntegerType;
1763
1770
  readonly column: IntegerType;
1764
- }>;
1771
+ }>>;
1765
1772
  readonly name: StringType;
1766
1773
  readonly type_parameters: ArrayType<RecursiveType<VariantType<{
1767
1774
  readonly Never: import("./types.js").NullType;