purus 0.6.1 → 0.7.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.
@@ -209,54 +209,56 @@ const $64$username$47$core$46$TokenKind$Mod_ = { $tag: 67, $name: "Mod_" };
209
209
  const $64$username$47$core$46$TokenKind$Pub_ = { $tag: 68, $name: "Pub_" };
210
210
  const $64$username$47$core$46$TokenKind$All_ = { $tag: 69, $name: "All_" };
211
211
  const $64$username$47$core$46$TokenKind$Type_ = { $tag: 70, $name: "Type_" };
212
- const $64$username$47$core$46$TokenKind$Class_ = { $tag: 71, $name: "Class_" };
213
- const $64$username$47$core$46$TokenKind$Extends_ = { $tag: 72, $name: "Extends_" };
214
- const $64$username$47$core$46$TokenKind$Super_ = { $tag: 73, $name: "Super_" };
215
- const $64$username$47$core$46$TokenKind$Static_ = { $tag: 74, $name: "Static_" };
216
- const $64$username$47$core$46$TokenKind$Private_ = { $tag: 75, $name: "Private_" };
217
- const $64$username$47$core$46$TokenKind$Get_ = { $tag: 76, $name: "Get_" };
218
- const $64$username$47$core$46$TokenKind$Set_ = { $tag: 77, $name: "Set_" };
219
- const $64$username$47$core$46$TokenKind$Null_ = { $tag: 78, $name: "Null_" };
220
- const $64$username$47$core$46$TokenKind$Nil_ = { $tag: 79, $name: "Nil_" };
221
- const $64$username$47$core$46$TokenKind$Undefined_ = { $tag: 80, $name: "Undefined_" };
222
- const $64$username$47$core$46$TokenKind$List_ = { $tag: 81, $name: "List_" };
223
- const $64$username$47$core$46$TokenKind$Object_ = { $tag: 82, $name: "Object_" };
224
- const $64$username$47$core$46$TokenKind$LBracket = { $tag: 83, $name: "LBracket" };
225
- const $64$username$47$core$46$TokenKind$RBracket = { $tag: 84, $name: "RBracket" };
226
- const $64$username$47$core$46$TokenKind$Comma = { $tag: 85, $name: "Comma" };
227
- const $64$username$47$core$46$TokenKind$Semicolon = { $tag: 86, $name: "Semicolon" };
228
- const $64$username$47$core$46$TokenKind$Dot = { $tag: 87, $name: "Dot" };
229
- const $64$username$47$core$46$TokenKind$DotDot = { $tag: 88, $name: "DotDot" };
230
- const $64$username$47$core$46$TokenKind$DotDotDot = { $tag: 89, $name: "DotDotDot" };
231
- const $64$username$47$core$46$TokenKind$Backslash = { $tag: 90, $name: "Backslash" };
232
- const $64$username$47$core$46$TokenKind$OptDot = { $tag: 91, $name: "OptDot" };
233
- const $64$username$47$core$46$TokenKind$Newline = { $tag: 92, $name: "Newline" };
212
+ const $64$username$47$core$46$TokenKind$With_ = { $tag: 71, $name: "With_" };
213
+ const $64$username$47$core$46$TokenKind$Class_ = { $tag: 72, $name: "Class_" };
214
+ const $64$username$47$core$46$TokenKind$Extends_ = { $tag: 73, $name: "Extends_" };
215
+ const $64$username$47$core$46$TokenKind$Super_ = { $tag: 74, $name: "Super_" };
216
+ const $64$username$47$core$46$TokenKind$Static_ = { $tag: 75, $name: "Static_" };
217
+ const $64$username$47$core$46$TokenKind$Private_ = { $tag: 76, $name: "Private_" };
218
+ const $64$username$47$core$46$TokenKind$Get_ = { $tag: 77, $name: "Get_" };
219
+ const $64$username$47$core$46$TokenKind$Set_ = { $tag: 78, $name: "Set_" };
220
+ const $64$username$47$core$46$TokenKind$Null_ = { $tag: 79, $name: "Null_" };
221
+ const $64$username$47$core$46$TokenKind$Nil_ = { $tag: 80, $name: "Nil_" };
222
+ const $64$username$47$core$46$TokenKind$Undefined_ = { $tag: 81, $name: "Undefined_" };
223
+ const $64$username$47$core$46$TokenKind$Nan_ = { $tag: 82, $name: "Nan_" };
224
+ const $64$username$47$core$46$TokenKind$List_ = { $tag: 83, $name: "List_" };
225
+ const $64$username$47$core$46$TokenKind$Object_ = { $tag: 84, $name: "Object_" };
226
+ const $64$username$47$core$46$TokenKind$LBracket = { $tag: 85, $name: "LBracket" };
227
+ const $64$username$47$core$46$TokenKind$RBracket = { $tag: 86, $name: "RBracket" };
228
+ const $64$username$47$core$46$TokenKind$Comma = { $tag: 87, $name: "Comma" };
229
+ const $64$username$47$core$46$TokenKind$Semicolon = { $tag: 88, $name: "Semicolon" };
230
+ const $64$username$47$core$46$TokenKind$Dot = { $tag: 89, $name: "Dot" };
231
+ const $64$username$47$core$46$TokenKind$DotDot = { $tag: 90, $name: "DotDot" };
232
+ const $64$username$47$core$46$TokenKind$DotDotDot = { $tag: 91, $name: "DotDotDot" };
233
+ const $64$username$47$core$46$TokenKind$Backslash = { $tag: 92, $name: "Backslash" };
234
+ const $64$username$47$core$46$TokenKind$OptDot = { $tag: 93, $name: "OptDot" };
235
+ const $64$username$47$core$46$TokenKind$Newline = { $tag: 94, $name: "Newline" };
234
236
  function $64$username$47$core$46$TokenKind$Indent(param0) {
235
237
  this._0 = param0;
236
238
  }
237
- $64$username$47$core$46$TokenKind$Indent.prototype.$tag = 93;
239
+ $64$username$47$core$46$TokenKind$Indent.prototype.$tag = 95;
238
240
  $64$username$47$core$46$TokenKind$Indent.prototype.$name = "Indent";
239
241
  function $64$username$47$core$46$TokenKind$InterpStr(param0) {
240
242
  this._0 = param0;
241
243
  }
242
- $64$username$47$core$46$TokenKind$InterpStr.prototype.$tag = 94;
244
+ $64$username$47$core$46$TokenKind$InterpStr.prototype.$tag = 96;
243
245
  $64$username$47$core$46$TokenKind$InterpStr.prototype.$name = "InterpStr";
244
246
  function $64$username$47$core$46$TokenKind$Shebang(param0) {
245
247
  this._0 = param0;
246
248
  }
247
- $64$username$47$core$46$TokenKind$Shebang.prototype.$tag = 95;
249
+ $64$username$47$core$46$TokenKind$Shebang.prototype.$tag = 97;
248
250
  $64$username$47$core$46$TokenKind$Shebang.prototype.$name = "Shebang";
249
251
  function $64$username$47$core$46$TokenKind$Comment(param0) {
250
252
  this._0 = param0;
251
253
  }
252
- $64$username$47$core$46$TokenKind$Comment.prototype.$tag = 96;
254
+ $64$username$47$core$46$TokenKind$Comment.prototype.$tag = 98;
253
255
  $64$username$47$core$46$TokenKind$Comment.prototype.$name = "Comment";
254
256
  function $64$username$47$core$46$TokenKind$BlockComment(param0) {
255
257
  this._0 = param0;
256
258
  }
257
- $64$username$47$core$46$TokenKind$BlockComment.prototype.$tag = 97;
259
+ $64$username$47$core$46$TokenKind$BlockComment.prototype.$tag = 99;
258
260
  $64$username$47$core$46$TokenKind$BlockComment.prototype.$name = "BlockComment";
259
- const $64$username$47$core$46$TokenKind$Eof = { $tag: 98, $name: "Eof" };
261
+ const $64$username$47$core$46$TokenKind$Eof = { $tag: 100, $name: "Eof" };
260
262
  function $64$username$47$core$46$Stmt$VarDecl(param0, param1, param2) {
261
263
  this._0 = param0;
262
264
  this._1 = param1;
@@ -430,30 +432,6 @@ function Option$Some$4$(param0) {
430
432
  }
431
433
  Option$Some$4$.prototype.$tag = 1;
432
434
  Option$Some$4$.prototype.$name = "Some";
433
- function $64$username$47$core$46$ImportDecl$EsImport(param0, param1, param2, param3) {
434
- this._0 = param0;
435
- this._1 = param1;
436
- this._2 = param2;
437
- this._3 = param3;
438
- }
439
- $64$username$47$core$46$ImportDecl$EsImport.prototype.$tag = 0;
440
- $64$username$47$core$46$ImportDecl$EsImport.prototype.$name = "EsImport";
441
- function $64$username$47$core$46$ImportDecl$CjsRequire(param0, param1) {
442
- this._0 = param0;
443
- this._1 = param1;
444
- }
445
- $64$username$47$core$46$ImportDecl$CjsRequire.prototype.$tag = 1;
446
- $64$username$47$core$46$ImportDecl$CjsRequire.prototype.$name = "CjsRequire";
447
- function $64$username$47$core$46$ImportDecl$DynImport(param0) {
448
- this._0 = param0;
449
- }
450
- $64$username$47$core$46$ImportDecl$DynImport.prototype.$tag = 2;
451
- $64$username$47$core$46$ImportDecl$DynImport.prototype.$name = "DynImport";
452
- function $64$username$47$core$46$ImportDecl$SideEffectImport(param0) {
453
- this._0 = param0;
454
- }
455
- $64$username$47$core$46$ImportDecl$SideEffectImport.prototype.$tag = 3;
456
- $64$username$47$core$46$ImportDecl$SideEffectImport.prototype.$name = "SideEffectImport";
457
435
  function $64$username$47$core$46$MatchPattern$LitPat(param0) {
458
436
  this._0 = param0;
459
437
  }
@@ -497,17 +475,18 @@ $64$username$47$core$46$Expr$BoolLit.prototype.$tag = 5;
497
475
  $64$username$47$core$46$Expr$BoolLit.prototype.$name = "BoolLit";
498
476
  const $64$username$47$core$46$Expr$NullLit = { $tag: 6, $name: "NullLit" };
499
477
  const $64$username$47$core$46$Expr$UndefinedLit = { $tag: 7, $name: "UndefinedLit" };
478
+ const $64$username$47$core$46$Expr$NanLit = { $tag: 8, $name: "NanLit" };
500
479
  function $64$username$47$core$46$Expr$ArrayLit(param0) {
501
480
  this._0 = param0;
502
481
  }
503
- $64$username$47$core$46$Expr$ArrayLit.prototype.$tag = 8;
482
+ $64$username$47$core$46$Expr$ArrayLit.prototype.$tag = 9;
504
483
  $64$username$47$core$46$Expr$ArrayLit.prototype.$name = "ArrayLit";
505
484
  function $64$username$47$core$46$Expr$RangeArray(param0, param1, param2) {
506
485
  this._0 = param0;
507
486
  this._1 = param1;
508
487
  this._2 = param2;
509
488
  }
510
- $64$username$47$core$46$Expr$RangeArray.prototype.$tag = 9;
489
+ $64$username$47$core$46$Expr$RangeArray.prototype.$tag = 10;
511
490
  $64$username$47$core$46$Expr$RangeArray.prototype.$name = "RangeArray";
512
491
  function $64$username$47$core$46$Expr$Slice(param0, param1, param2, param3) {
513
492
  this._0 = param0;
@@ -515,169 +494,169 @@ function $64$username$47$core$46$Expr$Slice(param0, param1, param2, param3) {
515
494
  this._2 = param2;
516
495
  this._3 = param3;
517
496
  }
518
- $64$username$47$core$46$Expr$Slice.prototype.$tag = 10;
497
+ $64$username$47$core$46$Expr$Slice.prototype.$tag = 11;
519
498
  $64$username$47$core$46$Expr$Slice.prototype.$name = "Slice";
520
499
  function $64$username$47$core$46$Expr$ObjectLit(param0) {
521
500
  this._0 = param0;
522
501
  }
523
- $64$username$47$core$46$Expr$ObjectLit.prototype.$tag = 11;
502
+ $64$username$47$core$46$Expr$ObjectLit.prototype.$tag = 12;
524
503
  $64$username$47$core$46$Expr$ObjectLit.prototype.$name = "ObjectLit";
525
504
  function $64$username$47$core$46$Expr$Ident(param0) {
526
505
  this._0 = param0;
527
506
  }
528
- $64$username$47$core$46$Expr$Ident.prototype.$tag = 12;
507
+ $64$username$47$core$46$Expr$Ident.prototype.$tag = 13;
529
508
  $64$username$47$core$46$Expr$Ident.prototype.$name = "Ident";
530
509
  function $64$username$47$core$46$Expr$DotAccess(param0, param1) {
531
510
  this._0 = param0;
532
511
  this._1 = param1;
533
512
  }
534
- $64$username$47$core$46$Expr$DotAccess.prototype.$tag = 13;
513
+ $64$username$47$core$46$Expr$DotAccess.prototype.$tag = 14;
535
514
  $64$username$47$core$46$Expr$DotAccess.prototype.$name = "DotAccess";
536
515
  function $64$username$47$core$46$Expr$IndexAccess(param0, param1) {
537
516
  this._0 = param0;
538
517
  this._1 = param1;
539
518
  }
540
- $64$username$47$core$46$Expr$IndexAccess.prototype.$tag = 14;
519
+ $64$username$47$core$46$Expr$IndexAccess.prototype.$tag = 15;
541
520
  $64$username$47$core$46$Expr$IndexAccess.prototype.$name = "IndexAccess";
542
521
  function $64$username$47$core$46$Expr$BinOp(param0, param1, param2) {
543
522
  this._0 = param0;
544
523
  this._1 = param1;
545
524
  this._2 = param2;
546
525
  }
547
- $64$username$47$core$46$Expr$BinOp.prototype.$tag = 15;
526
+ $64$username$47$core$46$Expr$BinOp.prototype.$tag = 16;
548
527
  $64$username$47$core$46$Expr$BinOp.prototype.$name = "BinOp";
549
528
  function $64$username$47$core$46$Expr$UnaryNeg(param0) {
550
529
  this._0 = param0;
551
530
  }
552
- $64$username$47$core$46$Expr$UnaryNeg.prototype.$tag = 16;
531
+ $64$username$47$core$46$Expr$UnaryNeg.prototype.$tag = 17;
553
532
  $64$username$47$core$46$Expr$UnaryNeg.prototype.$name = "UnaryNeg";
554
533
  function $64$username$47$core$46$Expr$UnaryNot(param0) {
555
534
  this._0 = param0;
556
535
  }
557
- $64$username$47$core$46$Expr$UnaryNot.prototype.$tag = 17;
536
+ $64$username$47$core$46$Expr$UnaryNot.prototype.$tag = 18;
558
537
  $64$username$47$core$46$Expr$UnaryNot.prototype.$name = "UnaryNot";
559
538
  function $64$username$47$core$46$Expr$UnaryTypeof(param0) {
560
539
  this._0 = param0;
561
540
  }
562
- $64$username$47$core$46$Expr$UnaryTypeof.prototype.$tag = 18;
541
+ $64$username$47$core$46$Expr$UnaryTypeof.prototype.$tag = 19;
563
542
  $64$username$47$core$46$Expr$UnaryTypeof.prototype.$name = "UnaryTypeof";
564
543
  function $64$username$47$core$46$Expr$IsCheck(param0, param1) {
565
544
  this._0 = param0;
566
545
  this._1 = param1;
567
546
  }
568
- $64$username$47$core$46$Expr$IsCheck.prototype.$tag = 19;
547
+ $64$username$47$core$46$Expr$IsCheck.prototype.$tag = 20;
569
548
  $64$username$47$core$46$Expr$IsCheck.prototype.$name = "IsCheck";
570
549
  function $64$username$47$core$46$Expr$AsCast(param0, param1) {
571
550
  this._0 = param0;
572
551
  this._1 = param1;
573
552
  }
574
- $64$username$47$core$46$Expr$AsCast.prototype.$tag = 20;
553
+ $64$username$47$core$46$Expr$AsCast.prototype.$tag = 21;
575
554
  $64$username$47$core$46$Expr$AsCast.prototype.$name = "AsCast";
576
555
  function $64$username$47$core$46$Expr$Instanceof(param0, param1) {
577
556
  this._0 = param0;
578
557
  this._1 = param1;
579
558
  }
580
- $64$username$47$core$46$Expr$Instanceof.prototype.$tag = 21;
559
+ $64$username$47$core$46$Expr$Instanceof.prototype.$tag = 22;
581
560
  $64$username$47$core$46$Expr$Instanceof.prototype.$name = "Instanceof";
582
561
  function $64$username$47$core$46$Expr$FnExpr(param0, param1) {
583
562
  this._0 = param0;
584
563
  this._1 = param1;
585
564
  }
586
- $64$username$47$core$46$Expr$FnExpr.prototype.$tag = 22;
565
+ $64$username$47$core$46$Expr$FnExpr.prototype.$tag = 23;
587
566
  $64$username$47$core$46$Expr$FnExpr.prototype.$name = "FnExpr";
588
567
  function $64$username$47$core$46$Expr$FnExprTo(param0, param1) {
589
568
  this._0 = param0;
590
569
  this._1 = param1;
591
570
  }
592
- $64$username$47$core$46$Expr$FnExprTo.prototype.$tag = 23;
571
+ $64$username$47$core$46$Expr$FnExprTo.prototype.$tag = 24;
593
572
  $64$username$47$core$46$Expr$FnExprTo.prototype.$name = "FnExprTo";
594
573
  function $64$username$47$core$46$Expr$Call(param0, param1) {
595
574
  this._0 = param0;
596
575
  this._1 = param1;
597
576
  }
598
- $64$username$47$core$46$Expr$Call.prototype.$tag = 24;
577
+ $64$username$47$core$46$Expr$Call.prototype.$tag = 25;
599
578
  $64$username$47$core$46$Expr$Call.prototype.$name = "Call";
600
579
  function $64$username$47$core$46$Expr$MethodCall(param0, param1, param2) {
601
580
  this._0 = param0;
602
581
  this._1 = param1;
603
582
  this._2 = param2;
604
583
  }
605
- $64$username$47$core$46$Expr$MethodCall.prototype.$tag = 25;
584
+ $64$username$47$core$46$Expr$MethodCall.prototype.$tag = 26;
606
585
  $64$username$47$core$46$Expr$MethodCall.prototype.$name = "MethodCall";
607
586
  function $64$username$47$core$46$Expr$NewExpr(param0, param1) {
608
587
  this._0 = param0;
609
588
  this._1 = param1;
610
589
  }
611
- $64$username$47$core$46$Expr$NewExpr.prototype.$tag = 26;
590
+ $64$username$47$core$46$Expr$NewExpr.prototype.$tag = 27;
612
591
  $64$username$47$core$46$Expr$NewExpr.prototype.$name = "NewExpr";
613
592
  function $64$username$47$core$46$Expr$Pipe(param0, param1) {
614
593
  this._0 = param0;
615
594
  this._1 = param1;
616
595
  }
617
- $64$username$47$core$46$Expr$Pipe.prototype.$tag = 27;
596
+ $64$username$47$core$46$Expr$Pipe.prototype.$tag = 28;
618
597
  $64$username$47$core$46$Expr$Pipe.prototype.$name = "Pipe";
619
598
  function $64$username$47$core$46$Expr$IfExpr(param0, param1, param2) {
620
599
  this._0 = param0;
621
600
  this._1 = param1;
622
601
  this._2 = param2;
623
602
  }
624
- $64$username$47$core$46$Expr$IfExpr.prototype.$tag = 28;
603
+ $64$username$47$core$46$Expr$IfExpr.prototype.$tag = 29;
625
604
  $64$username$47$core$46$Expr$IfExpr.prototype.$name = "IfExpr";
626
605
  function $64$username$47$core$46$Expr$TryExpr(param0, param1, param2) {
627
606
  this._0 = param0;
628
607
  this._1 = param1;
629
608
  this._2 = param2;
630
609
  }
631
- $64$username$47$core$46$Expr$TryExpr.prototype.$tag = 29;
610
+ $64$username$47$core$46$Expr$TryExpr.prototype.$tag = 30;
632
611
  $64$username$47$core$46$Expr$TryExpr.prototype.$name = "TryExpr";
633
612
  function $64$username$47$core$46$Expr$MatchExpr(param0, param1) {
634
613
  this._0 = param0;
635
614
  this._1 = param1;
636
615
  }
637
- $64$username$47$core$46$Expr$MatchExpr.prototype.$tag = 30;
616
+ $64$username$47$core$46$Expr$MatchExpr.prototype.$tag = 31;
638
617
  $64$username$47$core$46$Expr$MatchExpr.prototype.$name = "MatchExpr";
639
618
  function $64$username$47$core$46$Expr$AwaitExpr(param0) {
640
619
  this._0 = param0;
641
620
  }
642
- $64$username$47$core$46$Expr$AwaitExpr.prototype.$tag = 31;
621
+ $64$username$47$core$46$Expr$AwaitExpr.prototype.$tag = 32;
643
622
  $64$username$47$core$46$Expr$AwaitExpr.prototype.$name = "AwaitExpr";
644
623
  function $64$username$47$core$46$Expr$DeleteExpr(param0) {
645
624
  this._0 = param0;
646
625
  }
647
- $64$username$47$core$46$Expr$DeleteExpr.prototype.$tag = 32;
626
+ $64$username$47$core$46$Expr$DeleteExpr.prototype.$tag = 33;
648
627
  $64$username$47$core$46$Expr$DeleteExpr.prototype.$name = "DeleteExpr";
649
- const $64$username$47$core$46$Expr$ThisExpr = { $tag: 33, $name: "ThisExpr" };
650
- const $64$username$47$core$46$Expr$SuperExpr = { $tag: 34, $name: "SuperExpr" };
628
+ const $64$username$47$core$46$Expr$ThisExpr = { $tag: 34, $name: "ThisExpr" };
629
+ const $64$username$47$core$46$Expr$SuperExpr = { $tag: 35, $name: "SuperExpr" };
651
630
  function $64$username$47$core$46$Expr$OptDotAccess(param0, param1) {
652
631
  this._0 = param0;
653
632
  this._1 = param1;
654
633
  }
655
- $64$username$47$core$46$Expr$OptDotAccess.prototype.$tag = 35;
634
+ $64$username$47$core$46$Expr$OptDotAccess.prototype.$tag = 36;
656
635
  $64$username$47$core$46$Expr$OptDotAccess.prototype.$name = "OptDotAccess";
657
636
  function $64$username$47$core$46$Expr$OptMethodCall(param0, param1, param2) {
658
637
  this._0 = param0;
659
638
  this._1 = param1;
660
639
  this._2 = param2;
661
640
  }
662
- $64$username$47$core$46$Expr$OptMethodCall.prototype.$tag = 36;
641
+ $64$username$47$core$46$Expr$OptMethodCall.prototype.$tag = 37;
663
642
  $64$username$47$core$46$Expr$OptMethodCall.prototype.$name = "OptMethodCall";
664
643
  function $64$username$47$core$46$Expr$ComputedAccess(param0, param1) {
665
644
  this._0 = param0;
666
645
  this._1 = param1;
667
646
  }
668
- $64$username$47$core$46$Expr$ComputedAccess.prototype.$tag = 37;
647
+ $64$username$47$core$46$Expr$ComputedAccess.prototype.$tag = 38;
669
648
  $64$username$47$core$46$Expr$ComputedAccess.prototype.$name = "ComputedAccess";
670
649
  function $64$username$47$core$46$Expr$AsyncFnExpr(param0, param1) {
671
650
  this._0 = param0;
672
651
  this._1 = param1;
673
652
  }
674
- $64$username$47$core$46$Expr$AsyncFnExpr.prototype.$tag = 38;
653
+ $64$username$47$core$46$Expr$AsyncFnExpr.prototype.$tag = 39;
675
654
  $64$username$47$core$46$Expr$AsyncFnExpr.prototype.$name = "AsyncFnExpr";
676
655
  function $64$username$47$core$46$Expr$AsyncFnExprTo(param0, param1) {
677
656
  this._0 = param0;
678
657
  this._1 = param1;
679
658
  }
680
- $64$username$47$core$46$Expr$AsyncFnExprTo.prototype.$tag = 39;
659
+ $64$username$47$core$46$Expr$AsyncFnExprTo.prototype.$tag = 40;
681
660
  $64$username$47$core$46$Expr$AsyncFnExprTo.prototype.$name = "AsyncFnExprTo";
682
661
  function $64$username$47$core$46$StrPart$Lit(param0) {
683
662
  this._0 = param0;
@@ -740,6 +719,38 @@ function Option$Some$5$(param0) {
740
719
  }
741
720
  Option$Some$5$.prototype.$tag = 1;
742
721
  Option$Some$5$.prototype.$name = "Some";
722
+ function $64$username$47$core$46$ImportDecl$EsImport(param0, param1, param2, param3, param4) {
723
+ this._0 = param0;
724
+ this._1 = param1;
725
+ this._2 = param2;
726
+ this._3 = param3;
727
+ this._4 = param4;
728
+ }
729
+ $64$username$47$core$46$ImportDecl$EsImport.prototype.$tag = 0;
730
+ $64$username$47$core$46$ImportDecl$EsImport.prototype.$name = "EsImport";
731
+ function $64$username$47$core$46$ImportDecl$CjsRequire(param0, param1) {
732
+ this._0 = param0;
733
+ this._1 = param1;
734
+ }
735
+ $64$username$47$core$46$ImportDecl$CjsRequire.prototype.$tag = 1;
736
+ $64$username$47$core$46$ImportDecl$CjsRequire.prototype.$name = "CjsRequire";
737
+ function $64$username$47$core$46$ImportDecl$DynImport(param0) {
738
+ this._0 = param0;
739
+ }
740
+ $64$username$47$core$46$ImportDecl$DynImport.prototype.$tag = 2;
741
+ $64$username$47$core$46$ImportDecl$DynImport.prototype.$name = "DynImport";
742
+ function $64$username$47$core$46$ImportDecl$SideEffectImport(param0, param1) {
743
+ this._0 = param0;
744
+ this._1 = param1;
745
+ }
746
+ $64$username$47$core$46$ImportDecl$SideEffectImport.prototype.$tag = 3;
747
+ $64$username$47$core$46$ImportDecl$SideEffectImport.prototype.$name = "SideEffectImport";
748
+ const Option$None$6$ = { $tag: 0, $name: "None" };
749
+ function Option$Some$6$(param0) {
750
+ this._0 = param0;
751
+ }
752
+ Option$Some$6$.prototype.$tag = 1;
753
+ Option$Some$6$.prototype.$name = "Some";
743
754
  function $64$username$47$core$46$MatchBody$ExprBody(param0) {
744
755
  this._0 = param0;
745
756
  }
@@ -751,8 +762,8 @@ function $64$username$47$core$46$MatchBody$BlockBody(param0) {
751
762
  $64$username$47$core$46$MatchBody$BlockBody.prototype.$tag = 1;
752
763
  $64$username$47$core$46$MatchBody$BlockBody.prototype.$name = "BlockBody";
753
764
  const _M0FP095_40moonbitlang_2fcore_2fbuiltin_2eStringBuilder_24as_24_40moonbitlang_2fcore_2fbuiltin_2eLogger = { method_0: _M0IP311moonbitlang4core7builtin13StringBuilderP311moonbitlang4core7builtin6Logger13write__string, method_1: _M0IP016_24default__implP311moonbitlang4core7builtin6Logger16write__substringGRP311moonbitlang4core7builtin13StringBuilderE, method_2: _M0IP311moonbitlang4core7builtin13StringBuilderP311moonbitlang4core7builtin6Logger11write__view, method_3: _M0IP311moonbitlang4core7builtin13StringBuilderP311moonbitlang4core7builtin6Logger11write__char };
754
- const _M0FP311moonbitlang4core7builtin33brute__force__find_2econstr_2f209 = 0;
755
- const _M0FP311moonbitlang4core7builtin43boyer__moore__horspool__find_2econstr_2f195 = 0;
765
+ const _M0FP311moonbitlang4core7builtin33brute__force__find_2econstr_2f211 = 0;
766
+ const _M0FP311moonbitlang4core7builtin43boyer__moore__horspool__find_2econstr_2f197 = 0;
756
767
  function _M0FP311moonbitlang4core5abort5abortGRP311moonbitlang4core7builtin9ArrayViewGsEE(msg) {
757
768
  return $panic();
758
769
  }
@@ -1233,6 +1244,9 @@ function _M0IP311moonbitlang4core6uint166UInt16P311moonbitlang4core7builtin7Comp
1233
1244
  function _M0IP016_24default__implP311moonbitlang4core7builtin2Eq10not__equalGRP28username4core9TokenKindE(x, y) {
1234
1245
  return !_M0IP28username4core9TokenKindP311moonbitlang4core7builtin2Eq5equal(x, y);
1235
1246
  }
1247
+ function _M0IP016_24default__implP311moonbitlang4core7builtin2Eq10not__equalGsE(x, y) {
1248
+ return !(x === y);
1249
+ }
1236
1250
  function _M0IP016_24default__implP311moonbitlang4core7builtin7Compare6op__leGkE(x, y) {
1237
1251
  return _M0IP311moonbitlang4core6uint166UInt16P311moonbitlang4core7builtin7Compare7compare(x, y) <= 0;
1238
1252
  }
@@ -1456,7 +1470,7 @@ function _M0FP311moonbitlang4core7builtin28boyer__moore__horspool__find(haystack
1456
1470
  return undefined;
1457
1471
  }
1458
1472
  } else {
1459
- return _M0FP311moonbitlang4core7builtin43boyer__moore__horspool__find_2econstr_2f195;
1473
+ return _M0FP311moonbitlang4core7builtin43boyer__moore__horspool__find_2econstr_2f197;
1460
1474
  }
1461
1475
  }
1462
1476
  function _M0FP311moonbitlang4core7builtin18brute__force__find(haystack, needle) {
@@ -1503,7 +1517,7 @@ function _M0FP311moonbitlang4core7builtin18brute__force__find(haystack, needle)
1503
1517
  return undefined;
1504
1518
  }
1505
1519
  } else {
1506
- return _M0FP311moonbitlang4core7builtin33brute__force__find_2econstr_2f209;
1520
+ return _M0FP311moonbitlang4core7builtin33brute__force__find_2econstr_2f211;
1507
1521
  }
1508
1522
  }
1509
1523
  function _M0MP311moonbitlang4core6string10StringView4find(self, str) {
@@ -1653,10 +1667,10 @@ function _M0MP311moonbitlang4core5array5Array4pushGyE(self, value) {
1653
1667
  function _M0MP311moonbitlang4core5array5Array4pushGRP28username4core7StrPartE(self, value) {
1654
1668
  _M0MP311moonbitlang4core7builtin7JSArray4push(self, value);
1655
1669
  }
1656
- function _M0MP311moonbitlang4core5array5Array4pushGRP28username4core4ExprE(self, value) {
1670
+ function _M0MP311moonbitlang4core5array5Array4pushGUsRP28username4core4ExprEE(self, value) {
1657
1671
  _M0MP311moonbitlang4core7builtin7JSArray4push(self, value);
1658
1672
  }
1659
- function _M0MP311moonbitlang4core5array5Array4pushGUsRP28username4core4ExprEE(self, value) {
1673
+ function _M0MP311moonbitlang4core5array5Array4pushGRP28username4core4ExprE(self, value) {
1660
1674
  _M0MP311moonbitlang4core7builtin7JSArray4push(self, value);
1661
1675
  }
1662
1676
  function _M0MP311moonbitlang4core5array5Array4pushGRP28username4core8MatchArmE(self, value) {
@@ -2223,792 +2237,806 @@ function _M0FP511moonbitlang1x3sys8internal3ffi14get__cli__args() {
2223
2237
  function _M0FP311moonbitlang1x3sys14get__cli__args() {
2224
2238
  return _M0FP511moonbitlang1x3sys8internal3ffi14get__cli__args();
2225
2239
  }
2226
- function _M0IP28username4core9TokenKindP311moonbitlang4core7builtin2Eq5equal(_x_932, _x_933) {
2227
- let _x0_954;
2228
- let _y0_955;
2240
+ function _M0IP28username4core9TokenKindP311moonbitlang4core7builtin2Eq5equal(_x_972, _x_973) {
2241
+ let _x0_994;
2242
+ let _y0_995;
2229
2243
  _L: {
2230
- let _x0_952;
2231
- let _y0_953;
2244
+ let _x0_992;
2245
+ let _y0_993;
2232
2246
  _L$2: {
2233
- let _x0_950;
2234
- let _y0_951;
2247
+ let _x0_990;
2248
+ let _y0_991;
2235
2249
  _L$3: {
2236
- let _x0_948;
2237
- let _y0_949;
2250
+ let _x0_988;
2251
+ let _y0_989;
2238
2252
  _L$4: {
2239
- let _x0_946;
2240
- let _y0_947;
2253
+ let _x0_986;
2254
+ let _y0_987;
2241
2255
  _L$5: {
2242
- let _x0_944;
2243
- let _y0_945;
2256
+ let _x0_984;
2257
+ let _y0_985;
2244
2258
  _L$6: {
2245
- let _x1_941;
2246
- let _x0_940;
2247
- let _y0_942;
2248
- let _y1_943;
2259
+ let _x1_981;
2260
+ let _x0_980;
2261
+ let _y0_982;
2262
+ let _y1_983;
2249
2263
  _L$7: {
2250
- let _x0_938;
2251
- let _y0_939;
2264
+ let _x0_978;
2265
+ let _y0_979;
2252
2266
  _L$8: {
2253
- let _x0_936;
2254
- let _y0_937;
2267
+ let _x0_976;
2268
+ let _y0_977;
2255
2269
  _L$9: {
2256
- let _x0_934;
2257
- let _y0_935;
2270
+ let _x0_974;
2271
+ let _y0_975;
2258
2272
  _L$10: {
2259
- switch (_x_932.$tag) {
2273
+ switch (_x_972.$tag) {
2260
2274
  case 0: {
2261
- const _Int = _x_932;
2262
- const _$42$x0_934 = _Int._0;
2263
- if (_x_933.$tag === 0) {
2264
- const _Int$2 = _x_933;
2265
- const _$42$y0_935 = _Int$2._0;
2266
- _x0_934 = _$42$x0_934;
2267
- _y0_935 = _$42$y0_935;
2275
+ const _Int = _x_972;
2276
+ const _$42$x0_974 = _Int._0;
2277
+ if (_x_973.$tag === 0) {
2278
+ const _Int$2 = _x_973;
2279
+ const _$42$y0_975 = _Int$2._0;
2280
+ _x0_974 = _$42$x0_974;
2281
+ _y0_975 = _$42$y0_975;
2268
2282
  break _L$10;
2269
2283
  } else {
2270
2284
  return false;
2271
2285
  }
2272
2286
  }
2273
2287
  case 1: {
2274
- const _Float = _x_932;
2275
- const _$42$x0_936 = _Float._0;
2276
- if (_x_933.$tag === 1) {
2277
- const _Float$2 = _x_933;
2278
- const _$42$y0_937 = _Float$2._0;
2279
- _x0_936 = _$42$x0_936;
2280
- _y0_937 = _$42$y0_937;
2288
+ const _Float = _x_972;
2289
+ const _$42$x0_976 = _Float._0;
2290
+ if (_x_973.$tag === 1) {
2291
+ const _Float$2 = _x_973;
2292
+ const _$42$y0_977 = _Float$2._0;
2293
+ _x0_976 = _$42$x0_976;
2294
+ _y0_977 = _$42$y0_977;
2281
2295
  break _L$9;
2282
2296
  } else {
2283
2297
  return false;
2284
2298
  }
2285
2299
  }
2286
2300
  case 2: {
2287
- const _Str = _x_932;
2288
- const _$42$x0_938 = _Str._0;
2289
- if (_x_933.$tag === 2) {
2290
- const _Str$2 = _x_933;
2291
- const _$42$y0_939 = _Str$2._0;
2292
- _x0_938 = _$42$x0_938;
2293
- _y0_939 = _$42$y0_939;
2301
+ const _Str = _x_972;
2302
+ const _$42$x0_978 = _Str._0;
2303
+ if (_x_973.$tag === 2) {
2304
+ const _Str$2 = _x_973;
2305
+ const _$42$y0_979 = _Str$2._0;
2306
+ _x0_978 = _$42$x0_978;
2307
+ _y0_979 = _$42$y0_979;
2294
2308
  break _L$8;
2295
2309
  } else {
2296
2310
  return false;
2297
2311
  }
2298
2312
  }
2299
2313
  case 3: {
2300
- const _Regex = _x_932;
2301
- const _$42$x0_940 = _Regex._0;
2302
- const _$42$x1_941 = _Regex._1;
2303
- if (_x_933.$tag === 3) {
2304
- const _Regex$2 = _x_933;
2305
- const _$42$y0_942 = _Regex$2._0;
2306
- const _$42$y1_943 = _Regex$2._1;
2307
- _x1_941 = _$42$x1_941;
2308
- _x0_940 = _$42$x0_940;
2309
- _y0_942 = _$42$y0_942;
2310
- _y1_943 = _$42$y1_943;
2314
+ const _Regex = _x_972;
2315
+ const _$42$x0_980 = _Regex._0;
2316
+ const _$42$x1_981 = _Regex._1;
2317
+ if (_x_973.$tag === 3) {
2318
+ const _Regex$2 = _x_973;
2319
+ const _$42$y0_982 = _Regex$2._0;
2320
+ const _$42$y1_983 = _Regex$2._1;
2321
+ _x1_981 = _$42$x1_981;
2322
+ _x0_980 = _$42$x0_980;
2323
+ _y0_982 = _$42$y0_982;
2324
+ _y1_983 = _$42$y1_983;
2311
2325
  break _L$7;
2312
2326
  } else {
2313
2327
  return false;
2314
2328
  }
2315
2329
  }
2316
2330
  case 4: {
2317
- if (_x_933.$tag === 4) {
2331
+ if (_x_973.$tag === 4) {
2318
2332
  return true;
2319
2333
  } else {
2320
2334
  return false;
2321
2335
  }
2322
2336
  }
2323
2337
  case 5: {
2324
- if (_x_933.$tag === 5) {
2338
+ if (_x_973.$tag === 5) {
2325
2339
  return true;
2326
2340
  } else {
2327
2341
  return false;
2328
2342
  }
2329
2343
  }
2330
2344
  case 6: {
2331
- const _Ident = _x_932;
2332
- const _$42$x0_944 = _Ident._0;
2333
- if (_x_933.$tag === 6) {
2334
- const _Ident$2 = _x_933;
2335
- const _$42$y0_945 = _Ident$2._0;
2336
- _x0_944 = _$42$x0_944;
2337
- _y0_945 = _$42$y0_945;
2345
+ const _Ident = _x_972;
2346
+ const _$42$x0_984 = _Ident._0;
2347
+ if (_x_973.$tag === 6) {
2348
+ const _Ident$2 = _x_973;
2349
+ const _$42$y0_985 = _Ident$2._0;
2350
+ _x0_984 = _$42$x0_984;
2351
+ _y0_985 = _$42$y0_985;
2338
2352
  break _L$6;
2339
2353
  } else {
2340
2354
  return false;
2341
2355
  }
2342
2356
  }
2343
2357
  case 7: {
2344
- if (_x_933.$tag === 7) {
2358
+ if (_x_973.$tag === 7) {
2345
2359
  return true;
2346
2360
  } else {
2347
2361
  return false;
2348
2362
  }
2349
2363
  }
2350
2364
  case 8: {
2351
- if (_x_933.$tag === 8) {
2365
+ if (_x_973.$tag === 8) {
2352
2366
  return true;
2353
2367
  } else {
2354
2368
  return false;
2355
2369
  }
2356
2370
  }
2357
2371
  case 9: {
2358
- if (_x_933.$tag === 9) {
2372
+ if (_x_973.$tag === 9) {
2359
2373
  return true;
2360
2374
  } else {
2361
2375
  return false;
2362
2376
  }
2363
2377
  }
2364
2378
  case 10: {
2365
- if (_x_933.$tag === 10) {
2379
+ if (_x_973.$tag === 10) {
2366
2380
  return true;
2367
2381
  } else {
2368
2382
  return false;
2369
2383
  }
2370
2384
  }
2371
2385
  case 11: {
2372
- if (_x_933.$tag === 11) {
2386
+ if (_x_973.$tag === 11) {
2373
2387
  return true;
2374
2388
  } else {
2375
2389
  return false;
2376
2390
  }
2377
2391
  }
2378
2392
  case 12: {
2379
- if (_x_933.$tag === 12) {
2393
+ if (_x_973.$tag === 12) {
2380
2394
  return true;
2381
2395
  } else {
2382
2396
  return false;
2383
2397
  }
2384
2398
  }
2385
2399
  case 13: {
2386
- if (_x_933.$tag === 13) {
2400
+ if (_x_973.$tag === 13) {
2387
2401
  return true;
2388
2402
  } else {
2389
2403
  return false;
2390
2404
  }
2391
2405
  }
2392
2406
  case 14: {
2393
- if (_x_933.$tag === 14) {
2407
+ if (_x_973.$tag === 14) {
2394
2408
  return true;
2395
2409
  } else {
2396
2410
  return false;
2397
2411
  }
2398
2412
  }
2399
2413
  case 15: {
2400
- if (_x_933.$tag === 15) {
2414
+ if (_x_973.$tag === 15) {
2401
2415
  return true;
2402
2416
  } else {
2403
2417
  return false;
2404
2418
  }
2405
2419
  }
2406
2420
  case 16: {
2407
- if (_x_933.$tag === 16) {
2421
+ if (_x_973.$tag === 16) {
2408
2422
  return true;
2409
2423
  } else {
2410
2424
  return false;
2411
2425
  }
2412
2426
  }
2413
2427
  case 17: {
2414
- if (_x_933.$tag === 17) {
2428
+ if (_x_973.$tag === 17) {
2415
2429
  return true;
2416
2430
  } else {
2417
2431
  return false;
2418
2432
  }
2419
2433
  }
2420
2434
  case 18: {
2421
- if (_x_933.$tag === 18) {
2435
+ if (_x_973.$tag === 18) {
2422
2436
  return true;
2423
2437
  } else {
2424
2438
  return false;
2425
2439
  }
2426
2440
  }
2427
2441
  case 19: {
2428
- if (_x_933.$tag === 19) {
2442
+ if (_x_973.$tag === 19) {
2429
2443
  return true;
2430
2444
  } else {
2431
2445
  return false;
2432
2446
  }
2433
2447
  }
2434
2448
  case 20: {
2435
- if (_x_933.$tag === 20) {
2449
+ if (_x_973.$tag === 20) {
2436
2450
  return true;
2437
2451
  } else {
2438
2452
  return false;
2439
2453
  }
2440
2454
  }
2441
2455
  case 21: {
2442
- if (_x_933.$tag === 21) {
2456
+ if (_x_973.$tag === 21) {
2443
2457
  return true;
2444
2458
  } else {
2445
2459
  return false;
2446
2460
  }
2447
2461
  }
2448
2462
  case 22: {
2449
- if (_x_933.$tag === 22) {
2463
+ if (_x_973.$tag === 22) {
2450
2464
  return true;
2451
2465
  } else {
2452
2466
  return false;
2453
2467
  }
2454
2468
  }
2455
2469
  case 23: {
2456
- if (_x_933.$tag === 23) {
2470
+ if (_x_973.$tag === 23) {
2457
2471
  return true;
2458
2472
  } else {
2459
2473
  return false;
2460
2474
  }
2461
2475
  }
2462
2476
  case 24: {
2463
- if (_x_933.$tag === 24) {
2477
+ if (_x_973.$tag === 24) {
2464
2478
  return true;
2465
2479
  } else {
2466
2480
  return false;
2467
2481
  }
2468
2482
  }
2469
2483
  case 25: {
2470
- if (_x_933.$tag === 25) {
2484
+ if (_x_973.$tag === 25) {
2471
2485
  return true;
2472
2486
  } else {
2473
2487
  return false;
2474
2488
  }
2475
2489
  }
2476
2490
  case 26: {
2477
- if (_x_933.$tag === 26) {
2491
+ if (_x_973.$tag === 26) {
2478
2492
  return true;
2479
2493
  } else {
2480
2494
  return false;
2481
2495
  }
2482
2496
  }
2483
2497
  case 27: {
2484
- if (_x_933.$tag === 27) {
2498
+ if (_x_973.$tag === 27) {
2485
2499
  return true;
2486
2500
  } else {
2487
2501
  return false;
2488
2502
  }
2489
2503
  }
2490
2504
  case 28: {
2491
- if (_x_933.$tag === 28) {
2505
+ if (_x_973.$tag === 28) {
2492
2506
  return true;
2493
2507
  } else {
2494
2508
  return false;
2495
2509
  }
2496
2510
  }
2497
2511
  case 29: {
2498
- if (_x_933.$tag === 29) {
2512
+ if (_x_973.$tag === 29) {
2499
2513
  return true;
2500
2514
  } else {
2501
2515
  return false;
2502
2516
  }
2503
2517
  }
2504
2518
  case 30: {
2505
- if (_x_933.$tag === 30) {
2519
+ if (_x_973.$tag === 30) {
2506
2520
  return true;
2507
2521
  } else {
2508
2522
  return false;
2509
2523
  }
2510
2524
  }
2511
2525
  case 31: {
2512
- if (_x_933.$tag === 31) {
2526
+ if (_x_973.$tag === 31) {
2513
2527
  return true;
2514
2528
  } else {
2515
2529
  return false;
2516
2530
  }
2517
2531
  }
2518
2532
  case 32: {
2519
- if (_x_933.$tag === 32) {
2533
+ if (_x_973.$tag === 32) {
2520
2534
  return true;
2521
2535
  } else {
2522
2536
  return false;
2523
2537
  }
2524
2538
  }
2525
2539
  case 33: {
2526
- if (_x_933.$tag === 33) {
2540
+ if (_x_973.$tag === 33) {
2527
2541
  return true;
2528
2542
  } else {
2529
2543
  return false;
2530
2544
  }
2531
2545
  }
2532
2546
  case 34: {
2533
- if (_x_933.$tag === 34) {
2547
+ if (_x_973.$tag === 34) {
2534
2548
  return true;
2535
2549
  } else {
2536
2550
  return false;
2537
2551
  }
2538
2552
  }
2539
2553
  case 35: {
2540
- if (_x_933.$tag === 35) {
2554
+ if (_x_973.$tag === 35) {
2541
2555
  return true;
2542
2556
  } else {
2543
2557
  return false;
2544
2558
  }
2545
2559
  }
2546
2560
  case 36: {
2547
- if (_x_933.$tag === 36) {
2561
+ if (_x_973.$tag === 36) {
2548
2562
  return true;
2549
2563
  } else {
2550
2564
  return false;
2551
2565
  }
2552
2566
  }
2553
2567
  case 37: {
2554
- if (_x_933.$tag === 37) {
2568
+ if (_x_973.$tag === 37) {
2555
2569
  return true;
2556
2570
  } else {
2557
2571
  return false;
2558
2572
  }
2559
2573
  }
2560
2574
  case 38: {
2561
- if (_x_933.$tag === 38) {
2575
+ if (_x_973.$tag === 38) {
2562
2576
  return true;
2563
2577
  } else {
2564
2578
  return false;
2565
2579
  }
2566
2580
  }
2567
2581
  case 39: {
2568
- if (_x_933.$tag === 39) {
2582
+ if (_x_973.$tag === 39) {
2569
2583
  return true;
2570
2584
  } else {
2571
2585
  return false;
2572
2586
  }
2573
2587
  }
2574
2588
  case 40: {
2575
- if (_x_933.$tag === 40) {
2589
+ if (_x_973.$tag === 40) {
2576
2590
  return true;
2577
2591
  } else {
2578
2592
  return false;
2579
2593
  }
2580
2594
  }
2581
2595
  case 41: {
2582
- if (_x_933.$tag === 41) {
2596
+ if (_x_973.$tag === 41) {
2583
2597
  return true;
2584
2598
  } else {
2585
2599
  return false;
2586
2600
  }
2587
2601
  }
2588
2602
  case 42: {
2589
- if (_x_933.$tag === 42) {
2603
+ if (_x_973.$tag === 42) {
2590
2604
  return true;
2591
2605
  } else {
2592
2606
  return false;
2593
2607
  }
2594
2608
  }
2595
2609
  case 43: {
2596
- if (_x_933.$tag === 43) {
2610
+ if (_x_973.$tag === 43) {
2597
2611
  return true;
2598
2612
  } else {
2599
2613
  return false;
2600
2614
  }
2601
2615
  }
2602
2616
  case 44: {
2603
- if (_x_933.$tag === 44) {
2617
+ if (_x_973.$tag === 44) {
2604
2618
  return true;
2605
2619
  } else {
2606
2620
  return false;
2607
2621
  }
2608
2622
  }
2609
2623
  case 45: {
2610
- if (_x_933.$tag === 45) {
2624
+ if (_x_973.$tag === 45) {
2611
2625
  return true;
2612
2626
  } else {
2613
2627
  return false;
2614
2628
  }
2615
2629
  }
2616
2630
  case 46: {
2617
- if (_x_933.$tag === 46) {
2631
+ if (_x_973.$tag === 46) {
2618
2632
  return true;
2619
2633
  } else {
2620
2634
  return false;
2621
2635
  }
2622
2636
  }
2623
2637
  case 47: {
2624
- if (_x_933.$tag === 47) {
2638
+ if (_x_973.$tag === 47) {
2625
2639
  return true;
2626
2640
  } else {
2627
2641
  return false;
2628
2642
  }
2629
2643
  }
2630
2644
  case 48: {
2631
- if (_x_933.$tag === 48) {
2645
+ if (_x_973.$tag === 48) {
2632
2646
  return true;
2633
2647
  } else {
2634
2648
  return false;
2635
2649
  }
2636
2650
  }
2637
2651
  case 49: {
2638
- if (_x_933.$tag === 49) {
2652
+ if (_x_973.$tag === 49) {
2639
2653
  return true;
2640
2654
  } else {
2641
2655
  return false;
2642
2656
  }
2643
2657
  }
2644
2658
  case 50: {
2645
- if (_x_933.$tag === 50) {
2659
+ if (_x_973.$tag === 50) {
2646
2660
  return true;
2647
2661
  } else {
2648
2662
  return false;
2649
2663
  }
2650
2664
  }
2651
2665
  case 51: {
2652
- if (_x_933.$tag === 51) {
2666
+ if (_x_973.$tag === 51) {
2653
2667
  return true;
2654
2668
  } else {
2655
2669
  return false;
2656
2670
  }
2657
2671
  }
2658
2672
  case 52: {
2659
- if (_x_933.$tag === 52) {
2673
+ if (_x_973.$tag === 52) {
2660
2674
  return true;
2661
2675
  } else {
2662
2676
  return false;
2663
2677
  }
2664
2678
  }
2665
2679
  case 53: {
2666
- if (_x_933.$tag === 53) {
2680
+ if (_x_973.$tag === 53) {
2667
2681
  return true;
2668
2682
  } else {
2669
2683
  return false;
2670
2684
  }
2671
2685
  }
2672
2686
  case 54: {
2673
- if (_x_933.$tag === 54) {
2687
+ if (_x_973.$tag === 54) {
2674
2688
  return true;
2675
2689
  } else {
2676
2690
  return false;
2677
2691
  }
2678
2692
  }
2679
2693
  case 55: {
2680
- if (_x_933.$tag === 55) {
2694
+ if (_x_973.$tag === 55) {
2681
2695
  return true;
2682
2696
  } else {
2683
2697
  return false;
2684
2698
  }
2685
2699
  }
2686
2700
  case 56: {
2687
- if (_x_933.$tag === 56) {
2701
+ if (_x_973.$tag === 56) {
2688
2702
  return true;
2689
2703
  } else {
2690
2704
  return false;
2691
2705
  }
2692
2706
  }
2693
2707
  case 57: {
2694
- if (_x_933.$tag === 57) {
2708
+ if (_x_973.$tag === 57) {
2695
2709
  return true;
2696
2710
  } else {
2697
2711
  return false;
2698
2712
  }
2699
2713
  }
2700
2714
  case 58: {
2701
- if (_x_933.$tag === 58) {
2715
+ if (_x_973.$tag === 58) {
2702
2716
  return true;
2703
2717
  } else {
2704
2718
  return false;
2705
2719
  }
2706
2720
  }
2707
2721
  case 59: {
2708
- if (_x_933.$tag === 59) {
2722
+ if (_x_973.$tag === 59) {
2709
2723
  return true;
2710
2724
  } else {
2711
2725
  return false;
2712
2726
  }
2713
2727
  }
2714
2728
  case 60: {
2715
- if (_x_933.$tag === 60) {
2729
+ if (_x_973.$tag === 60) {
2716
2730
  return true;
2717
2731
  } else {
2718
2732
  return false;
2719
2733
  }
2720
2734
  }
2721
2735
  case 61: {
2722
- if (_x_933.$tag === 61) {
2736
+ if (_x_973.$tag === 61) {
2723
2737
  return true;
2724
2738
  } else {
2725
2739
  return false;
2726
2740
  }
2727
2741
  }
2728
2742
  case 62: {
2729
- if (_x_933.$tag === 62) {
2743
+ if (_x_973.$tag === 62) {
2730
2744
  return true;
2731
2745
  } else {
2732
2746
  return false;
2733
2747
  }
2734
2748
  }
2735
2749
  case 63: {
2736
- if (_x_933.$tag === 63) {
2750
+ if (_x_973.$tag === 63) {
2737
2751
  return true;
2738
2752
  } else {
2739
2753
  return false;
2740
2754
  }
2741
2755
  }
2742
2756
  case 64: {
2743
- if (_x_933.$tag === 64) {
2757
+ if (_x_973.$tag === 64) {
2744
2758
  return true;
2745
2759
  } else {
2746
2760
  return false;
2747
2761
  }
2748
2762
  }
2749
2763
  case 65: {
2750
- if (_x_933.$tag === 65) {
2764
+ if (_x_973.$tag === 65) {
2751
2765
  return true;
2752
2766
  } else {
2753
2767
  return false;
2754
2768
  }
2755
2769
  }
2756
2770
  case 66: {
2757
- if (_x_933.$tag === 66) {
2771
+ if (_x_973.$tag === 66) {
2758
2772
  return true;
2759
2773
  } else {
2760
2774
  return false;
2761
2775
  }
2762
2776
  }
2763
2777
  case 67: {
2764
- if (_x_933.$tag === 67) {
2778
+ if (_x_973.$tag === 67) {
2765
2779
  return true;
2766
2780
  } else {
2767
2781
  return false;
2768
2782
  }
2769
2783
  }
2770
2784
  case 68: {
2771
- if (_x_933.$tag === 68) {
2785
+ if (_x_973.$tag === 68) {
2772
2786
  return true;
2773
2787
  } else {
2774
2788
  return false;
2775
2789
  }
2776
2790
  }
2777
2791
  case 69: {
2778
- if (_x_933.$tag === 69) {
2792
+ if (_x_973.$tag === 69) {
2779
2793
  return true;
2780
2794
  } else {
2781
2795
  return false;
2782
2796
  }
2783
2797
  }
2784
2798
  case 70: {
2785
- if (_x_933.$tag === 70) {
2799
+ if (_x_973.$tag === 70) {
2786
2800
  return true;
2787
2801
  } else {
2788
2802
  return false;
2789
2803
  }
2790
2804
  }
2791
2805
  case 71: {
2792
- if (_x_933.$tag === 71) {
2806
+ if (_x_973.$tag === 71) {
2793
2807
  return true;
2794
2808
  } else {
2795
2809
  return false;
2796
2810
  }
2797
2811
  }
2798
2812
  case 72: {
2799
- if (_x_933.$tag === 72) {
2813
+ if (_x_973.$tag === 72) {
2800
2814
  return true;
2801
2815
  } else {
2802
2816
  return false;
2803
2817
  }
2804
2818
  }
2805
2819
  case 73: {
2806
- if (_x_933.$tag === 73) {
2820
+ if (_x_973.$tag === 73) {
2807
2821
  return true;
2808
2822
  } else {
2809
2823
  return false;
2810
2824
  }
2811
2825
  }
2812
2826
  case 74: {
2813
- if (_x_933.$tag === 74) {
2827
+ if (_x_973.$tag === 74) {
2814
2828
  return true;
2815
2829
  } else {
2816
2830
  return false;
2817
2831
  }
2818
2832
  }
2819
2833
  case 75: {
2820
- if (_x_933.$tag === 75) {
2834
+ if (_x_973.$tag === 75) {
2821
2835
  return true;
2822
2836
  } else {
2823
2837
  return false;
2824
2838
  }
2825
2839
  }
2826
2840
  case 76: {
2827
- if (_x_933.$tag === 76) {
2841
+ if (_x_973.$tag === 76) {
2828
2842
  return true;
2829
2843
  } else {
2830
2844
  return false;
2831
2845
  }
2832
2846
  }
2833
2847
  case 77: {
2834
- if (_x_933.$tag === 77) {
2848
+ if (_x_973.$tag === 77) {
2835
2849
  return true;
2836
2850
  } else {
2837
2851
  return false;
2838
2852
  }
2839
2853
  }
2840
2854
  case 78: {
2841
- if (_x_933.$tag === 78) {
2855
+ if (_x_973.$tag === 78) {
2842
2856
  return true;
2843
2857
  } else {
2844
2858
  return false;
2845
2859
  }
2846
2860
  }
2847
2861
  case 79: {
2848
- if (_x_933.$tag === 79) {
2862
+ if (_x_973.$tag === 79) {
2849
2863
  return true;
2850
2864
  } else {
2851
2865
  return false;
2852
2866
  }
2853
2867
  }
2854
2868
  case 80: {
2855
- if (_x_933.$tag === 80) {
2869
+ if (_x_973.$tag === 80) {
2856
2870
  return true;
2857
2871
  } else {
2858
2872
  return false;
2859
2873
  }
2860
2874
  }
2861
2875
  case 81: {
2862
- if (_x_933.$tag === 81) {
2876
+ if (_x_973.$tag === 81) {
2863
2877
  return true;
2864
2878
  } else {
2865
2879
  return false;
2866
2880
  }
2867
2881
  }
2868
2882
  case 82: {
2869
- if (_x_933.$tag === 82) {
2883
+ if (_x_973.$tag === 82) {
2870
2884
  return true;
2871
2885
  } else {
2872
2886
  return false;
2873
2887
  }
2874
2888
  }
2875
2889
  case 83: {
2876
- if (_x_933.$tag === 83) {
2890
+ if (_x_973.$tag === 83) {
2877
2891
  return true;
2878
2892
  } else {
2879
2893
  return false;
2880
2894
  }
2881
2895
  }
2882
2896
  case 84: {
2883
- if (_x_933.$tag === 84) {
2897
+ if (_x_973.$tag === 84) {
2884
2898
  return true;
2885
2899
  } else {
2886
2900
  return false;
2887
2901
  }
2888
2902
  }
2889
2903
  case 85: {
2890
- if (_x_933.$tag === 85) {
2904
+ if (_x_973.$tag === 85) {
2891
2905
  return true;
2892
2906
  } else {
2893
2907
  return false;
2894
2908
  }
2895
2909
  }
2896
2910
  case 86: {
2897
- if (_x_933.$tag === 86) {
2911
+ if (_x_973.$tag === 86) {
2898
2912
  return true;
2899
2913
  } else {
2900
2914
  return false;
2901
2915
  }
2902
2916
  }
2903
2917
  case 87: {
2904
- if (_x_933.$tag === 87) {
2918
+ if (_x_973.$tag === 87) {
2905
2919
  return true;
2906
2920
  } else {
2907
2921
  return false;
2908
2922
  }
2909
2923
  }
2910
2924
  case 88: {
2911
- if (_x_933.$tag === 88) {
2925
+ if (_x_973.$tag === 88) {
2912
2926
  return true;
2913
2927
  } else {
2914
2928
  return false;
2915
2929
  }
2916
2930
  }
2917
2931
  case 89: {
2918
- if (_x_933.$tag === 89) {
2932
+ if (_x_973.$tag === 89) {
2919
2933
  return true;
2920
2934
  } else {
2921
2935
  return false;
2922
2936
  }
2923
2937
  }
2924
2938
  case 90: {
2925
- if (_x_933.$tag === 90) {
2939
+ if (_x_973.$tag === 90) {
2926
2940
  return true;
2927
2941
  } else {
2928
2942
  return false;
2929
2943
  }
2930
2944
  }
2931
2945
  case 91: {
2932
- if (_x_933.$tag === 91) {
2946
+ if (_x_973.$tag === 91) {
2933
2947
  return true;
2934
2948
  } else {
2935
2949
  return false;
2936
2950
  }
2937
2951
  }
2938
2952
  case 92: {
2939
- if (_x_933.$tag === 92) {
2953
+ if (_x_973.$tag === 92) {
2940
2954
  return true;
2941
2955
  } else {
2942
2956
  return false;
2943
2957
  }
2944
2958
  }
2945
2959
  case 93: {
2946
- const _Indent = _x_932;
2947
- const _$42$x0_946 = _Indent._0;
2948
- if (_x_933.$tag === 93) {
2949
- const _Indent$2 = _x_933;
2950
- const _$42$y0_947 = _Indent$2._0;
2951
- _x0_946 = _$42$x0_946;
2952
- _y0_947 = _$42$y0_947;
2953
- break _L$5;
2960
+ if (_x_973.$tag === 93) {
2961
+ return true;
2954
2962
  } else {
2955
2963
  return false;
2956
2964
  }
2957
2965
  }
2958
2966
  case 94: {
2959
- const _InterpStr = _x_932;
2960
- const _$42$x0_948 = _InterpStr._0;
2961
- if (_x_933.$tag === 94) {
2962
- const _InterpStr$2 = _x_933;
2963
- const _$42$y0_949 = _InterpStr$2._0;
2964
- _x0_948 = _$42$x0_948;
2965
- _y0_949 = _$42$y0_949;
2966
- break _L$4;
2967
+ if (_x_973.$tag === 94) {
2968
+ return true;
2967
2969
  } else {
2968
2970
  return false;
2969
2971
  }
2970
2972
  }
2971
2973
  case 95: {
2972
- const _Shebang = _x_932;
2973
- const _$42$x0_950 = _Shebang._0;
2974
- if (_x_933.$tag === 95) {
2975
- const _Shebang$2 = _x_933;
2976
- const _$42$y0_951 = _Shebang$2._0;
2977
- _x0_950 = _$42$x0_950;
2978
- _y0_951 = _$42$y0_951;
2979
- break _L$3;
2974
+ const _Indent = _x_972;
2975
+ const _$42$x0_986 = _Indent._0;
2976
+ if (_x_973.$tag === 95) {
2977
+ const _Indent$2 = _x_973;
2978
+ const _$42$y0_987 = _Indent$2._0;
2979
+ _x0_986 = _$42$x0_986;
2980
+ _y0_987 = _$42$y0_987;
2981
+ break _L$5;
2980
2982
  } else {
2981
2983
  return false;
2982
2984
  }
2983
2985
  }
2984
2986
  case 96: {
2985
- const _Comment = _x_932;
2986
- const _$42$x0_952 = _Comment._0;
2987
- if (_x_933.$tag === 96) {
2988
- const _Comment$2 = _x_933;
2989
- const _$42$y0_953 = _Comment$2._0;
2990
- _x0_952 = _$42$x0_952;
2991
- _y0_953 = _$42$y0_953;
2992
- break _L$2;
2987
+ const _InterpStr = _x_972;
2988
+ const _$42$x0_988 = _InterpStr._0;
2989
+ if (_x_973.$tag === 96) {
2990
+ const _InterpStr$2 = _x_973;
2991
+ const _$42$y0_989 = _InterpStr$2._0;
2992
+ _x0_988 = _$42$x0_988;
2993
+ _y0_989 = _$42$y0_989;
2994
+ break _L$4;
2993
2995
  } else {
2994
2996
  return false;
2995
2997
  }
2996
2998
  }
2997
2999
  case 97: {
2998
- const _BlockComment = _x_932;
2999
- const _$42$x0_954 = _BlockComment._0;
3000
- if (_x_933.$tag === 97) {
3001
- const _BlockComment$2 = _x_933;
3002
- const _$42$y0_955 = _BlockComment$2._0;
3003
- _x0_954 = _$42$x0_954;
3004
- _y0_955 = _$42$y0_955;
3000
+ const _Shebang = _x_972;
3001
+ const _$42$x0_990 = _Shebang._0;
3002
+ if (_x_973.$tag === 97) {
3003
+ const _Shebang$2 = _x_973;
3004
+ const _$42$y0_991 = _Shebang$2._0;
3005
+ _x0_990 = _$42$x0_990;
3006
+ _y0_991 = _$42$y0_991;
3007
+ break _L$3;
3008
+ } else {
3009
+ return false;
3010
+ }
3011
+ }
3012
+ case 98: {
3013
+ const _Comment = _x_972;
3014
+ const _$42$x0_992 = _Comment._0;
3015
+ if (_x_973.$tag === 98) {
3016
+ const _Comment$2 = _x_973;
3017
+ const _$42$y0_993 = _Comment$2._0;
3018
+ _x0_992 = _$42$x0_992;
3019
+ _y0_993 = _$42$y0_993;
3020
+ break _L$2;
3021
+ } else {
3022
+ return false;
3023
+ }
3024
+ }
3025
+ case 99: {
3026
+ const _BlockComment = _x_972;
3027
+ const _$42$x0_994 = _BlockComment._0;
3028
+ if (_x_973.$tag === 99) {
3029
+ const _BlockComment$2 = _x_973;
3030
+ const _$42$y0_995 = _BlockComment$2._0;
3031
+ _x0_994 = _$42$x0_994;
3032
+ _y0_995 = _$42$y0_995;
3005
3033
  break _L;
3006
3034
  } else {
3007
3035
  return false;
3008
3036
  }
3009
3037
  }
3010
3038
  default: {
3011
- if (_x_933.$tag === 98) {
3039
+ if (_x_973.$tag === 100) {
3012
3040
  return true;
3013
3041
  } else {
3014
3042
  return false;
@@ -3016,25 +3044,25 @@ function _M0IP28username4core9TokenKindP311moonbitlang4core7builtin2Eq5equal(_x_
3016
3044
  }
3017
3045
  }
3018
3046
  }
3019
- return _x0_934 === _y0_935;
3047
+ return _x0_974 === _y0_975;
3020
3048
  }
3021
- return _x0_936 === _y0_937;
3049
+ return _x0_976 === _y0_977;
3022
3050
  }
3023
- return _x0_938 === _y0_939;
3051
+ return _x0_978 === _y0_979;
3024
3052
  }
3025
- return _x0_940 === _y0_942 && _x1_941 === _y1_943;
3053
+ return _x0_980 === _y0_982 && _x1_981 === _y1_983;
3026
3054
  }
3027
- return _x0_944 === _y0_945;
3055
+ return _x0_984 === _y0_985;
3028
3056
  }
3029
- return _x0_946 === _y0_947;
3057
+ return _x0_986 === _y0_987;
3030
3058
  }
3031
- return _M0IP311moonbitlang4core5array5ArrayP311moonbitlang4core7builtin2Eq5equalGsE(_x0_948, _y0_949);
3059
+ return _M0IP311moonbitlang4core5array5ArrayP311moonbitlang4core7builtin2Eq5equalGsE(_x0_988, _y0_989);
3032
3060
  }
3033
- return _x0_950 === _y0_951;
3061
+ return _x0_990 === _y0_991;
3034
3062
  }
3035
- return _x0_952 === _y0_953;
3063
+ return _x0_992 === _y0_993;
3036
3064
  }
3037
- return _x0_954 === _y0_955;
3065
+ return _x0_994 === _y0_995;
3038
3066
  }
3039
3067
  function _M0MP28username4core6Parser4peek(self) {
3040
3068
  return self.pos >= self.tokens.length ? $64$username$47$core$46$TokenKind$Eof : _M0MP311moonbitlang4core5array5Array2atGRP28username4core5TokenE(self.tokens, self.pos).kind;
@@ -3103,16 +3131,16 @@ function _M0MP28username4core6Parser17skip__bracket__ws(self) {
3103
3131
  _L$2: {
3104
3132
  const _bind = _M0MP28username4core6Parser4peek(self);
3105
3133
  switch (_bind.$tag) {
3106
- case 92: {
3134
+ case 94: {
3107
3135
  break _L$2;
3108
3136
  }
3109
- case 93: {
3137
+ case 95: {
3110
3138
  break _L$2;
3111
3139
  }
3112
- case 96: {
3140
+ case 98: {
3113
3141
  break _L$2;
3114
3142
  }
3115
- case 97: {
3143
+ case 99: {
3116
3144
  break _L$2;
3117
3145
  }
3118
3146
  default: {
@@ -3134,19 +3162,19 @@ function _M0MP28username4core6Parser21is__computed__bracket(self) {
3134
3162
  _L: {
3135
3163
  const _bind = _M0MP311moonbitlang4core5array5Array2atGRP28username4core5TokenE(self.tokens, i.val).kind;
3136
3164
  switch (_bind.$tag) {
3137
- case 92: {
3165
+ case 94: {
3138
3166
  break _L;
3139
3167
  }
3140
- case 93: {
3168
+ case 95: {
3141
3169
  break _L;
3142
3170
  }
3143
- case 96: {
3171
+ case 98: {
3144
3172
  break _L;
3145
3173
  }
3146
- case 97: {
3174
+ case 99: {
3147
3175
  break _L;
3148
3176
  }
3149
- case 90: {
3177
+ case 92: {
3150
3178
  return true;
3151
3179
  }
3152
3180
  default: {
@@ -3211,22 +3239,22 @@ function _M0MP28username4core5Lexer25is__neg__literal__context(self) {
3211
3239
  const last = _M0MP311moonbitlang4core5array5Array2atGRP28username4core5TokenE(self.tokens, self.tokens.length - 1 | 0);
3212
3240
  const _bind = last.kind;
3213
3241
  switch (_bind.$tag) {
3214
- case 83: {
3242
+ case 85: {
3215
3243
  return true;
3216
3244
  }
3217
- case 85: {
3245
+ case 87: {
3218
3246
  return true;
3219
3247
  }
3220
- case 86: {
3248
+ case 88: {
3221
3249
  return true;
3222
3250
  }
3223
3251
  case 10: {
3224
3252
  return true;
3225
3253
  }
3226
- case 92: {
3254
+ case 94: {
3227
3255
  return true;
3228
3256
  }
3229
- case 93: {
3257
+ case 95: {
3230
3258
  return true;
3231
3259
  }
3232
3260
  case 29: {
@@ -3241,7 +3269,7 @@ function _M0MP28username4core5Lexer25is__neg__literal__context(self) {
3241
3269
  case 27: {
3242
3270
  return true;
3243
3271
  }
3244
- case 90: {
3272
+ case 92: {
3245
3273
  return true;
3246
3274
  }
3247
3275
  default: {
@@ -3547,6 +3575,10 @@ function _M0MP28username4core5Lexer11scan__ident(self) {
3547
3575
  kind = $64$username$47$core$46$TokenKind$Type_;
3548
3576
  break;
3549
3577
  }
3578
+ case "with": {
3579
+ kind = $64$username$47$core$46$TokenKind$With_;
3580
+ break;
3581
+ }
3550
3582
  case "true": {
3551
3583
  kind = $64$username$47$core$46$TokenKind$True_;
3552
3584
  break;
@@ -3567,6 +3599,10 @@ function _M0MP28username4core5Lexer11scan__ident(self) {
3567
3599
  kind = $64$username$47$core$46$TokenKind$Undefined_;
3568
3600
  break;
3569
3601
  }
3602
+ case "nan": {
3603
+ kind = $64$username$47$core$46$TokenKind$Nan_;
3604
+ break;
3605
+ }
3570
3606
  case "coal": {
3571
3607
  kind = $64$username$47$core$46$TokenKind$Coal;
3572
3608
  break;
@@ -4053,13 +4089,13 @@ function _M0MP28username4core6Parser18parse__param__list(self) {
4053
4089
  _L$3: {
4054
4090
  const _bind = _M0MP28username4core6Parser4peek(self);
4055
4091
  switch (_bind.$tag) {
4056
- case 86: {
4092
+ case 88: {
4057
4093
  break _L$3;
4058
4094
  }
4059
- case 92: {
4095
+ case 94: {
4060
4096
  break _L$3;
4061
4097
  }
4062
- case 98: {
4098
+ case 100: {
4063
4099
  break _L$3;
4064
4100
  }
4065
4101
  case 30: {
@@ -4107,16 +4143,16 @@ function _M0MP28username4core6Parser27skip__newlines__and__indent(self) {
4107
4143
  _L$4: {
4108
4144
  const _bind = _M0MP28username4core6Parser4peek(self);
4109
4145
  switch (_bind.$tag) {
4110
- case 92: {
4146
+ case 94: {
4111
4147
  break _L$4;
4112
4148
  }
4113
- case 96: {
4149
+ case 98: {
4114
4150
  break _L$4;
4115
4151
  }
4116
- case 97: {
4152
+ case 99: {
4117
4153
  break _L$4;
4118
4154
  }
4119
- case 93: {
4155
+ case 95: {
4120
4156
  const _Indent = _bind;
4121
4157
  const _n = _Indent._0;
4122
4158
  n = _n;
@@ -4150,10 +4186,10 @@ function _M0MP28username4core6Parser22skip__type__annotation(self) {
4150
4186
  case 10: {
4151
4187
  break _L$2;
4152
4188
  }
4153
- case 92: {
4189
+ case 94: {
4154
4190
  break _L$2;
4155
4191
  }
4156
- case 98: {
4192
+ case 100: {
4157
4193
  break _L$2;
4158
4194
  }
4159
4195
  default: {
@@ -4267,7 +4303,7 @@ function _M0MP28username4core6Parser21parse__bracket__names(self) {
4267
4303
  s = _s;
4268
4304
  break _L$2;
4269
4305
  }
4270
- case 85: {
4306
+ case 87: {
4271
4307
  self.pos = self.pos + 1 | 0;
4272
4308
  break;
4273
4309
  }
@@ -4301,49 +4337,6 @@ function _M0MP28username4core6Parser20parse__string__value(self) {
4301
4337
  return "";
4302
4338
  }
4303
4339
  }
4304
- function _M0MP28username4core6Parser19parse__import__stmt(self) {
4305
- self.pos = self.pos + 1 | 0;
4306
- let s;
4307
- _L: {
4308
- _L$2: {
4309
- const _bind = _M0MP28username4core6Parser4peek(self);
4310
- if (_bind.$tag === 2) {
4311
- const _Str = _bind;
4312
- const _s = _Str._0;
4313
- s = _s;
4314
- break _L$2;
4315
- }
4316
- break _L;
4317
- }
4318
- self.pos = self.pos + 1 | 0;
4319
- return new $64$username$47$core$46$Stmt$ImportDecl(new $64$username$47$core$46$ImportDecl$SideEffectImport(s));
4320
- }
4321
- if (_M0IP28username4core9TokenKindP311moonbitlang4core7builtin2Eq5equal(_M0MP28username4core6Parser4peek(self), $64$username$47$core$46$TokenKind$All_)) {
4322
- self.pos = self.pos + 1 | 0;
4323
- _M0MP28username4core6Parser6expect(self, $64$username$47$core$46$TokenKind$As);
4324
- const ns = _M0MP28username4core6Parser18parse__ident__name(self);
4325
- _M0MP28username4core6Parser6expect(self, $64$username$47$core$46$TokenKind$From_);
4326
- const module_name = _M0MP28username4core6Parser20parse__string__value(self);
4327
- return new $64$username$47$core$46$Stmt$ImportDecl(new $64$username$47$core$46$ImportDecl$EsImport(undefined, Option$None$4$, ns, module_name));
4328
- }
4329
- if (_M0IP28username4core9TokenKindP311moonbitlang4core7builtin2Eq5equal(_M0MP28username4core6Parser4peek(self), $64$username$47$core$46$TokenKind$LBracket)) {
4330
- const named = _M0MP28username4core6Parser21parse__bracket__names(self);
4331
- _M0MP28username4core6Parser6expect(self, $64$username$47$core$46$TokenKind$From_);
4332
- const module_name = _M0MP28username4core6Parser20parse__string__value(self);
4333
- return new $64$username$47$core$46$Stmt$ImportDecl(new $64$username$47$core$46$ImportDecl$EsImport(undefined, new Option$Some$4$(named), undefined, module_name));
4334
- }
4335
- const default_name = _M0MP28username4core6Parser18parse__ident__name(self);
4336
- if (_M0IP28username4core9TokenKindP311moonbitlang4core7builtin2Eq5equal(_M0MP28username4core6Parser4peek(self), $64$username$47$core$46$TokenKind$Comma)) {
4337
- self.pos = self.pos + 1 | 0;
4338
- const named = _M0MP28username4core6Parser21parse__bracket__names(self);
4339
- _M0MP28username4core6Parser6expect(self, $64$username$47$core$46$TokenKind$From_);
4340
- const module_name = _M0MP28username4core6Parser20parse__string__value(self);
4341
- return new $64$username$47$core$46$Stmt$ImportDecl(new $64$username$47$core$46$ImportDecl$EsImport(default_name, new Option$Some$4$(named), undefined, module_name));
4342
- }
4343
- _M0MP28username4core6Parser6expect(self, $64$username$47$core$46$TokenKind$From_);
4344
- const module_name = _M0MP28username4core6Parser20parse__string__value(self);
4345
- return new $64$username$47$core$46$Stmt$ImportDecl(new $64$username$47$core$46$ImportDecl$EsImport(default_name, Option$None$4$, undefined, module_name));
4346
- }
4347
4340
  function _M0MP28username4core6Parser21parse__match__pattern(self) {
4348
4341
  let s;
4349
4342
  _L: {
@@ -4382,10 +4375,10 @@ function _M0MP28username4core6Parser21parse__match__pattern(self) {
4382
4375
  self.pos = self.pos + 1 | 0;
4383
4376
  return new $64$username$47$core$46$MatchPattern$LitPat(new $64$username$47$core$46$Expr$BoolLit(false));
4384
4377
  }
4385
- case 78: {
4378
+ case 79: {
4386
4379
  break _L$2;
4387
4380
  }
4388
- case 79: {
4381
+ case 80: {
4389
4382
  break _L$2;
4390
4383
  }
4391
4384
  case 6: {
@@ -4743,7 +4736,7 @@ function _M0MP28username4core6Parser14parse__postfix(self) {
4743
4736
  if (self.pos < self.tokens.length) {
4744
4737
  const _bind = _M0MP28username4core6Parser4peek(self);
4745
4738
  switch (_bind.$tag) {
4746
- case 87: {
4739
+ case 89: {
4747
4740
  self.pos = self.pos + 1 | 0;
4748
4741
  const field = _M0MP28username4core6Parser18parse__ident__name(self);
4749
4742
  if (_M0IP28username4core9TokenKindP311moonbitlang4core7builtin2Eq5equal(_M0MP28username4core6Parser4peek(self), $64$username$47$core$46$TokenKind$LBracket)) {
@@ -4755,7 +4748,7 @@ function _M0MP28username4core6Parser14parse__postfix(self) {
4755
4748
  const start_expr = _M0MP28username4core6Parser11parse__expr(self);
4756
4749
  const _bind$2 = _M0MP28username4core6Parser4peek(self);
4757
4750
  switch (_bind$2.$tag) {
4758
- case 88: {
4751
+ case 90: {
4759
4752
  self.pos = self.pos + 1 | 0;
4760
4753
  const end_expr = _M0MP28username4core6Parser11parse__expr(self);
4761
4754
  if (_M0IP28username4core9TokenKindP311moonbitlang4core7builtin2Eq5equal(_M0MP28username4core6Parser4peek(self), $64$username$47$core$46$TokenKind$RBracket)) {
@@ -4764,7 +4757,7 @@ function _M0MP28username4core6Parser14parse__postfix(self) {
4764
4757
  expr.val = new $64$username$47$core$46$Expr$Slice(new $64$username$47$core$46$Expr$DotAccess(expr.val, field), start_expr, end_expr, true);
4765
4758
  break;
4766
4759
  }
4767
- case 89: {
4760
+ case 91: {
4768
4761
  self.pos = self.pos + 1 | 0;
4769
4762
  const end_expr$2 = _M0MP28username4core6Parser11parse__expr(self);
4770
4763
  if (_M0IP28username4core9TokenKindP311moonbitlang4core7builtin2Eq5equal(_M0MP28username4core6Parser4peek(self), $64$username$47$core$46$TokenKind$RBracket)) {
@@ -4789,7 +4782,7 @@ function _M0MP28username4core6Parser14parse__postfix(self) {
4789
4782
  }
4790
4783
  break;
4791
4784
  }
4792
- case 91: {
4785
+ case 93: {
4793
4786
  self.pos = self.pos + 1 | 0;
4794
4787
  const field$2 = _M0MP28username4core6Parser18parse__ident__name(self);
4795
4788
  if (_M0IP28username4core9TokenKindP311moonbitlang4core7builtin2Eq5equal(_M0MP28username4core6Parser4peek(self), $64$username$47$core$46$TokenKind$LBracket)) {
@@ -4812,7 +4805,7 @@ function _M0MP28username4core6Parser14parse__postfix(self) {
4812
4805
  }
4813
4806
  break;
4814
4807
  }
4815
- case 83: {
4808
+ case 85: {
4816
4809
  if (_M0MP28username4core6Parser21is__computed__bracket(self)) {
4817
4810
  self.pos = self.pos + 1 | 0;
4818
4811
  _M0MP28username4core6Parser17skip__bracket__ws(self);
@@ -4821,7 +4814,7 @@ function _M0MP28username4core6Parser14parse__postfix(self) {
4821
4814
  const key_expr = _M0MP28username4core6Parser11parse__expr(self);
4822
4815
  const _bind$2 = _M0MP28username4core6Parser4peek(self);
4823
4816
  switch (_bind$2.$tag) {
4824
- case 88: {
4817
+ case 90: {
4825
4818
  self.pos = self.pos + 1 | 0;
4826
4819
  const end_expr = _M0MP28username4core6Parser11parse__expr(self);
4827
4820
  if (_M0IP28username4core9TokenKindP311moonbitlang4core7builtin2Eq5equal(_M0MP28username4core6Parser4peek(self), $64$username$47$core$46$TokenKind$RBracket)) {
@@ -4830,7 +4823,7 @@ function _M0MP28username4core6Parser14parse__postfix(self) {
4830
4823
  expr.val = new $64$username$47$core$46$Expr$Slice(expr.val, key_expr, end_expr, true);
4831
4824
  break;
4832
4825
  }
4833
- case 89: {
4826
+ case 91: {
4834
4827
  self.pos = self.pos + 1 | 0;
4835
4828
  const end_expr$2 = _M0MP28username4core6Parser11parse__expr(self);
4836
4829
  if (_M0IP28username4core9TokenKindP311moonbitlang4core7builtin2Eq5equal(_M0MP28username4core6Parser4peek(self), $64$username$47$core$46$TokenKind$RBracket)) {
@@ -4904,7 +4897,7 @@ function _M0MP28username4core6Parser14parse__primary(self) {
4904
4897
  s$2 = _s;
4905
4898
  break _L$5;
4906
4899
  }
4907
- case 94: {
4900
+ case 96: {
4908
4901
  const _InterpStr = _bind;
4909
4902
  const _segments = _InterpStr._0;
4910
4903
  segments = _segments;
@@ -4926,21 +4919,25 @@ function _M0MP28username4core6Parser14parse__primary(self) {
4926
4919
  self.pos = self.pos + 1 | 0;
4927
4920
  return new $64$username$47$core$46$Expr$BoolLit(false);
4928
4921
  }
4929
- case 78: {
4930
- break _L$2;
4931
- }
4932
4922
  case 79: {
4933
4923
  break _L$2;
4934
4924
  }
4935
4925
  case 80: {
4926
+ break _L$2;
4927
+ }
4928
+ case 81: {
4936
4929
  self.pos = self.pos + 1 | 0;
4937
4930
  return $64$username$47$core$46$Expr$UndefinedLit;
4938
4931
  }
4932
+ case 82: {
4933
+ self.pos = self.pos + 1 | 0;
4934
+ return $64$username$47$core$46$Expr$NanLit;
4935
+ }
4939
4936
  case 54: {
4940
4937
  self.pos = self.pos + 1 | 0;
4941
4938
  return $64$username$47$core$46$Expr$ThisExpr;
4942
4939
  }
4943
- case 73: {
4940
+ case 74: {
4944
4941
  self.pos = self.pos + 1 | 0;
4945
4942
  return $64$username$47$core$46$Expr$SuperExpr;
4946
4943
  }
@@ -4950,15 +4947,15 @@ function _M0MP28username4core6Parser14parse__primary(self) {
4950
4947
  s = _s$2;
4951
4948
  break _L;
4952
4949
  }
4953
- case 81: {
4950
+ case 83: {
4954
4951
  self.pos = self.pos + 1 | 0;
4955
4952
  return _M0MP28username4core6Parser20parse__list__literal(self);
4956
4953
  }
4957
- case 82: {
4954
+ case 84: {
4958
4955
  self.pos = self.pos + 1 | 0;
4959
4956
  return _M0MP28username4core6Parser22parse__object__literal(self);
4960
4957
  }
4961
- case 83: {
4958
+ case 85: {
4962
4959
  return _M0MP28username4core6Parser20parse__bracket__expr(self);
4963
4960
  }
4964
4961
  case 28: {
@@ -5139,13 +5136,13 @@ function _M0MP28username4core6Parser11parse__stmt(self) {
5139
5136
  _L$2: {
5140
5137
  const _bind = _M0MP28username4core6Parser4peek(self);
5141
5138
  switch (_bind.$tag) {
5142
- case 96: {
5139
+ case 98: {
5143
5140
  break _L$2;
5144
5141
  }
5145
- case 97: {
5142
+ case 99: {
5146
5143
  break _L$2;
5147
5144
  }
5148
- case 93: {
5145
+ case 95: {
5149
5146
  self.pos = self.pos + 1 | 0;
5150
5147
  break;
5151
5148
  }
@@ -5196,13 +5193,13 @@ function _M0MP28username4core6Parser11parse__stmt(self) {
5196
5193
  _L$2: {
5197
5194
  const _bind$2 = _M0MP28username4core6Parser4peek(self);
5198
5195
  switch (_bind$2.$tag) {
5199
- case 92: {
5196
+ case 94: {
5200
5197
  break _L$2;
5201
5198
  }
5202
- case 98: {
5199
+ case 100: {
5203
5200
  break _L$2;
5204
5201
  }
5205
- case 93: {
5202
+ case 95: {
5206
5203
  break _L$2;
5207
5204
  }
5208
5205
  default: {
@@ -5266,7 +5263,7 @@ function _M0MP28username4core6Parser11parse__stmt(self) {
5266
5263
  case 70: {
5267
5264
  return _M0MP28username4core6Parser17parse__type__decl(self);
5268
5265
  }
5269
- case 71: {
5266
+ case 72: {
5270
5267
  return _M0MP28username4core6Parser18parse__class__decl(self);
5271
5268
  }
5272
5269
  default: {
@@ -5367,7 +5364,7 @@ function _M0MP28username4core6Parser18parse__class__decl(self) {
5367
5364
  function _M0MP28username4core6Parser20parse__class__member(self) {
5368
5365
  const _bind = _M0MP28username4core6Parser4peek(self);
5369
5366
  switch (_bind.$tag) {
5370
- case 75: {
5367
+ case 76: {
5371
5368
  self.pos = self.pos + 1 | 0;
5372
5369
  const field_name = _M0MP28username4core6Parser18parse__ident__name(self);
5373
5370
  let default_val;
@@ -5379,7 +5376,7 @@ function _M0MP28username4core6Parser20parse__class__member(self) {
5379
5376
  }
5380
5377
  return new $64$username$47$core$46$ClassMember$Field(true, field_name, default_val);
5381
5378
  }
5382
- case 74: {
5379
+ case 75: {
5383
5380
  self.pos = self.pos + 1 | 0;
5384
5381
  if (_M0IP28username4core9TokenKindP311moonbitlang4core7builtin2Eq5equal(_M0MP28username4core6Parser4peek(self), $64$username$47$core$46$TokenKind$Fn)) {
5385
5382
  self.pos = self.pos + 1 | 0;
@@ -5426,7 +5423,7 @@ function _M0MP28username4core6Parser20parse__class__member(self) {
5426
5423
  }
5427
5424
  }
5428
5425
  }
5429
- case 76: {
5426
+ case 77: {
5430
5427
  self.pos = self.pos + 1 | 0;
5431
5428
  if (_M0IP28username4core9TokenKindP311moonbitlang4core7builtin2Eq5equal(_M0MP28username4core6Parser4peek(self), $64$username$47$core$46$TokenKind$Fn)) {
5432
5429
  self.pos = self.pos + 1 | 0;
@@ -5444,7 +5441,7 @@ function _M0MP28username4core6Parser20parse__class__member(self) {
5444
5441
  return undefined;
5445
5442
  }
5446
5443
  }
5447
- case 77: {
5444
+ case 78: {
5448
5445
  self.pos = self.pos + 1 | 0;
5449
5446
  if (_M0IP28username4core9TokenKindP311moonbitlang4core7builtin2Eq5equal(_M0MP28username4core6Parser4peek(self), $64$username$47$core$46$TokenKind$Fn)) {
5450
5447
  self.pos = self.pos + 1 | 0;
@@ -5668,6 +5665,99 @@ function _M0MP28username4core6Parser15parse__if__stmt(self) {
5668
5665
  const else_result = else_body.val;
5669
5666
  return new $64$username$47$core$46$Stmt$If(cond, body, elifs, else_result);
5670
5667
  }
5668
+ function _M0MP28username4core6Parser19parse__import__stmt(self) {
5669
+ self.pos = self.pos + 1 | 0;
5670
+ let s;
5671
+ _L: {
5672
+ _L$2: {
5673
+ const _bind = _M0MP28username4core6Parser4peek(self);
5674
+ if (_bind.$tag === 2) {
5675
+ const _Str = _bind;
5676
+ const _s = _Str._0;
5677
+ s = _s;
5678
+ break _L$2;
5679
+ }
5680
+ break _L;
5681
+ }
5682
+ self.pos = self.pos + 1 | 0;
5683
+ const attrs = _M0MP28username4core6Parser25parse__import__attributes(self);
5684
+ return new $64$username$47$core$46$Stmt$ImportDecl(new $64$username$47$core$46$ImportDecl$SideEffectImport(s, attrs));
5685
+ }
5686
+ if (_M0IP28username4core9TokenKindP311moonbitlang4core7builtin2Eq5equal(_M0MP28username4core6Parser4peek(self), $64$username$47$core$46$TokenKind$All_)) {
5687
+ self.pos = self.pos + 1 | 0;
5688
+ _M0MP28username4core6Parser6expect(self, $64$username$47$core$46$TokenKind$As);
5689
+ const ns = _M0MP28username4core6Parser18parse__ident__name(self);
5690
+ _M0MP28username4core6Parser6expect(self, $64$username$47$core$46$TokenKind$From_);
5691
+ const module_name = _M0MP28username4core6Parser20parse__string__value(self);
5692
+ const attrs = _M0MP28username4core6Parser25parse__import__attributes(self);
5693
+ return new $64$username$47$core$46$Stmt$ImportDecl(new $64$username$47$core$46$ImportDecl$EsImport(undefined, Option$None$4$, ns, module_name, attrs));
5694
+ }
5695
+ if (_M0IP28username4core9TokenKindP311moonbitlang4core7builtin2Eq5equal(_M0MP28username4core6Parser4peek(self), $64$username$47$core$46$TokenKind$LBracket)) {
5696
+ const named = _M0MP28username4core6Parser21parse__bracket__names(self);
5697
+ _M0MP28username4core6Parser6expect(self, $64$username$47$core$46$TokenKind$From_);
5698
+ const module_name = _M0MP28username4core6Parser20parse__string__value(self);
5699
+ const attrs = _M0MP28username4core6Parser25parse__import__attributes(self);
5700
+ return new $64$username$47$core$46$Stmt$ImportDecl(new $64$username$47$core$46$ImportDecl$EsImport(undefined, new Option$Some$4$(named), undefined, module_name, attrs));
5701
+ }
5702
+ const default_name = _M0MP28username4core6Parser18parse__ident__name(self);
5703
+ if (_M0IP28username4core9TokenKindP311moonbitlang4core7builtin2Eq5equal(_M0MP28username4core6Parser4peek(self), $64$username$47$core$46$TokenKind$Comma)) {
5704
+ self.pos = self.pos + 1 | 0;
5705
+ const named = _M0MP28username4core6Parser21parse__bracket__names(self);
5706
+ _M0MP28username4core6Parser6expect(self, $64$username$47$core$46$TokenKind$From_);
5707
+ const module_name = _M0MP28username4core6Parser20parse__string__value(self);
5708
+ const attrs = _M0MP28username4core6Parser25parse__import__attributes(self);
5709
+ return new $64$username$47$core$46$Stmt$ImportDecl(new $64$username$47$core$46$ImportDecl$EsImport(default_name, new Option$Some$4$(named), undefined, module_name, attrs));
5710
+ }
5711
+ _M0MP28username4core6Parser6expect(self, $64$username$47$core$46$TokenKind$From_);
5712
+ const module_name = _M0MP28username4core6Parser20parse__string__value(self);
5713
+ const attrs = _M0MP28username4core6Parser25parse__import__attributes(self);
5714
+ return new $64$username$47$core$46$Stmt$ImportDecl(new $64$username$47$core$46$ImportDecl$EsImport(default_name, Option$None$4$, undefined, module_name, attrs));
5715
+ }
5716
+ function _M0MP28username4core6Parser25parse__import__attributes(self) {
5717
+ if (_M0IP016_24default__implP311moonbitlang4core7builtin2Eq10not__equalGRP28username4core9TokenKindE(_M0MP28username4core6Parser4peek(self), $64$username$47$core$46$TokenKind$With_)) {
5718
+ return Option$None$6$;
5719
+ }
5720
+ self.pos = self.pos + 1 | 0;
5721
+ _M0MP28username4core6Parser6expect(self, $64$username$47$core$46$TokenKind$LBracket);
5722
+ const attrs = [];
5723
+ _M0MP28username4core6Parser17skip__bracket__ws(self);
5724
+ while (true) {
5725
+ if (self.pos < self.tokens.length && _M0IP016_24default__implP311moonbitlang4core7builtin2Eq10not__equalGRP28username4core9TokenKindE(_M0MP28username4core6Parser4peek(self), $64$username$47$core$46$TokenKind$RBracket)) {
5726
+ let key;
5727
+ const _bind = _M0MP28username4core6Parser7advance(self);
5728
+ switch (_bind.$tag) {
5729
+ case 6: {
5730
+ const _Ident = _bind;
5731
+ const _s = _Ident._0;
5732
+ key = _s;
5733
+ break;
5734
+ }
5735
+ case 70: {
5736
+ key = "type";
5737
+ break;
5738
+ }
5739
+ default: {
5740
+ key = "unknown";
5741
+ }
5742
+ }
5743
+ _M0MP28username4core6Parser6expect(self, $64$username$47$core$46$TokenKind$Be);
5744
+ const value = _M0MP28username4core6Parser11parse__expr(self);
5745
+ _M0MP311moonbitlang4core5array5Array4pushGUsRP28username4core4ExprEE(attrs, { _0: key, _1: value });
5746
+ _M0MP28username4core6Parser17skip__bracket__ws(self);
5747
+ if (_M0IP28username4core9TokenKindP311moonbitlang4core7builtin2Eq5equal(_M0MP28username4core6Parser4peek(self), $64$username$47$core$46$TokenKind$Comma) || _M0IP28username4core9TokenKindP311moonbitlang4core7builtin2Eq5equal(_M0MP28username4core6Parser4peek(self), $64$username$47$core$46$TokenKind$Semicolon)) {
5748
+ self.pos = self.pos + 1 | 0;
5749
+ }
5750
+ _M0MP28username4core6Parser17skip__bracket__ws(self);
5751
+ continue;
5752
+ } else {
5753
+ break;
5754
+ }
5755
+ }
5756
+ if (_M0IP28username4core9TokenKindP311moonbitlang4core7builtin2Eq5equal(_M0MP28username4core6Parser4peek(self), $64$username$47$core$46$TokenKind$RBracket)) {
5757
+ self.pos = self.pos + 1 | 0;
5758
+ }
5759
+ return new Option$Some$6$(attrs);
5760
+ }
5671
5761
  function _M0MP28username4core6Parser18parse__match__stmt(self) {
5672
5762
  self.pos = self.pos + 1 | 0;
5673
5763
  const subject = _M0MP28username4core6Parser11parse__expr(self);
@@ -5911,7 +6001,7 @@ function _M0MP28username4core6Parser20parse__bracket__expr(self) {
5911
6001
  _M0MP28username4core6Parser17skip__bracket__ws(self);
5912
6002
  const _bind = _M0MP28username4core6Parser4peek(self);
5913
6003
  switch (_bind.$tag) {
5914
- case 88: {
6004
+ case 90: {
5915
6005
  self.pos = self.pos + 1 | 0;
5916
6006
  const end_expr = _M0MP28username4core6Parser11parse__expr(self);
5917
6007
  _M0MP28username4core6Parser17skip__bracket__ws(self);
@@ -5920,7 +6010,7 @@ function _M0MP28username4core6Parser20parse__bracket__expr(self) {
5920
6010
  }
5921
6011
  return new $64$username$47$core$46$Expr$RangeArray(first, end_expr, true);
5922
6012
  }
5923
- case 89: {
6013
+ case 91: {
5924
6014
  self.pos = self.pos + 1 | 0;
5925
6015
  const end_expr$2 = _M0MP28username4core6Parser11parse__expr(self);
5926
6016
  _M0MP28username4core6Parser17skip__bracket__ws(self);
@@ -5932,7 +6022,7 @@ function _M0MP28username4core6Parser20parse__bracket__expr(self) {
5932
6022
  case 10: {
5933
6023
  let key_name;
5934
6024
  switch (first.$tag) {
5935
- case 12: {
6025
+ case 13: {
5936
6026
  const _Ident = first;
5937
6027
  const _s = _Ident._0;
5938
6028
  key_name = _s;
@@ -5974,7 +6064,7 @@ function _M0MP28username4core6Parser20parse__bracket__expr(self) {
5974
6064
  }
5975
6065
  return new $64$username$47$core$46$Expr$ObjectLit(pairs);
5976
6066
  }
5977
- case 85: {
6067
+ case 87: {
5978
6068
  const elements = [first];
5979
6069
  while (true) {
5980
6070
  if (_M0IP28username4core9TokenKindP311moonbitlang4core7builtin2Eq5equal(_M0MP28username4core6Parser4peek(self), $64$username$47$core$46$TokenKind$Comma)) {
@@ -5995,7 +6085,7 @@ function _M0MP28username4core6Parser20parse__bracket__expr(self) {
5995
6085
  }
5996
6086
  return new $64$username$47$core$46$Expr$ArrayLit(elements);
5997
6087
  }
5998
- case 86: {
6088
+ case 88: {
5999
6089
  const elements$2 = [first];
6000
6090
  while (true) {
6001
6091
  if (_M0IP28username4core9TokenKindP311moonbitlang4core7builtin2Eq5equal(_M0MP28username4core6Parser4peek(self), $64$username$47$core$46$TokenKind$Semicolon)) {
@@ -6016,7 +6106,7 @@ function _M0MP28username4core6Parser20parse__bracket__expr(self) {
6016
6106
  }
6017
6107
  return new $64$username$47$core$46$Expr$ArrayLit(elements$2);
6018
6108
  }
6019
- case 84: {
6109
+ case 86: {
6020
6110
  self.pos = self.pos + 1 | 0;
6021
6111
  return first;
6022
6112
  }
@@ -6319,165 +6409,20 @@ function _M0MP28username4core9JsCodegen7writeln(self, s) {
6319
6409
  _M0IP311moonbitlang4core7builtin13StringBuilderP311moonbitlang4core7builtin6Logger13write__string(self.buf, s);
6320
6410
  _M0IP311moonbitlang4core7builtin13StringBuilderP311moonbitlang4core7builtin6Logger11write__char(self.buf, 10);
6321
6411
  }
6322
- function _M0MP28username4core9JsCodegen11gen__import(self, decl) {
6323
- let module_name;
6324
- _L: {
6325
- let module_name$2;
6412
+ function _M0MP28username4core9JsCodegen9gen__expr(self, expr) {
6413
+ let _tmp = self;
6414
+ let _tmp$2 = expr;
6415
+ _L: while (true) {
6416
+ const self$2 = _tmp;
6417
+ const expr$2 = _tmp$2;
6418
+ let params;
6419
+ let body_expr;
6326
6420
  _L$2: {
6327
- let name;
6328
- let module_name$3;
6421
+ let params$2;
6422
+ let body;
6329
6423
  _L$3: {
6330
- let ns_name;
6331
- let default_name;
6332
- let named;
6333
- let module_name$4;
6334
- _L$4: {
6335
- switch (decl.$tag) {
6336
- case 0: {
6337
- const _EsImport = decl;
6338
- const _default_name = _EsImport._0;
6339
- const _named = _EsImport._1;
6340
- const _ns_name = _EsImport._2;
6341
- const _module_name = _EsImport._3;
6342
- ns_name = _ns_name;
6343
- default_name = _default_name;
6344
- named = _named;
6345
- module_name$4 = _module_name;
6346
- break _L$4;
6347
- }
6348
- case 1: {
6349
- const _CjsRequire = decl;
6350
- const _name = _CjsRequire._0;
6351
- const _module_name$2 = _CjsRequire._1;
6352
- name = _name;
6353
- module_name$3 = _module_name$2;
6354
- break _L$3;
6355
- }
6356
- case 2: {
6357
- const _DynImport = decl;
6358
- const _module_name$3 = _DynImport._0;
6359
- module_name$2 = _module_name$3;
6360
- break _L$2;
6361
- }
6362
- default: {
6363
- const _SideEffectImport = decl;
6364
- const _module_name$4 = _SideEffectImport._0;
6365
- module_name = _module_name$4;
6366
- break _L;
6367
- }
6368
- }
6369
- }
6370
- _M0MP28username4core9JsCodegen13write__indent(self);
6371
- _M0MP28username4core9JsCodegen5write(self, "import ");
6372
- const has_prev = { val: false };
6373
- let n;
6374
- _L$5: {
6375
- _L$6: {
6376
- if (default_name === undefined) {
6377
- } else {
6378
- const _Some = default_name;
6379
- const _n = _Some;
6380
- n = _n;
6381
- break _L$6;
6382
- }
6383
- break _L$5;
6384
- }
6385
- _M0MP28username4core9JsCodegen5write(self, n);
6386
- has_prev.val = true;
6387
- }
6388
- let names;
6389
- _L$6: {
6390
- _L$7: {
6391
- if (named.$tag === 1) {
6392
- const _Some = named;
6393
- const _names = _Some._0;
6394
- names = _names;
6395
- break _L$7;
6396
- }
6397
- break _L$6;
6398
- }
6399
- if (has_prev.val) {
6400
- _M0MP28username4core9JsCodegen5write(self, ", ");
6401
- }
6402
- _M0MP28username4core9JsCodegen5write(self, "{ ");
6403
- const first = { val: true };
6404
- const _arr = names;
6405
- const _len = _arr.length;
6406
- let _tmp = 0;
6407
- while (true) {
6408
- const _i = _tmp;
6409
- if (_i < _len) {
6410
- const n$2 = _arr[_i];
6411
- if (!first.val) {
6412
- _M0MP28username4core9JsCodegen5write(self, ", ");
6413
- }
6414
- _M0MP28username4core9JsCodegen5write(self, n$2);
6415
- first.val = false;
6416
- _tmp = _i + 1 | 0;
6417
- continue;
6418
- } else {
6419
- break;
6420
- }
6421
- }
6422
- _M0MP28username4core9JsCodegen5write(self, " }");
6423
- has_prev.val = true;
6424
- }
6425
- let ns;
6426
- _L$7: {
6427
- _L$8: {
6428
- if (ns_name === undefined) {
6429
- } else {
6430
- const _Some = ns_name;
6431
- const _ns = _Some;
6432
- ns = _ns;
6433
- break _L$8;
6434
- }
6435
- break _L$7;
6436
- }
6437
- if (has_prev.val) {
6438
- _M0MP28username4core9JsCodegen5write(self, ", ");
6439
- }
6440
- _M0MP28username4core9JsCodegen5write(self, "* as ");
6441
- _M0MP28username4core9JsCodegen5write(self, ns);
6442
- }
6443
- _M0MP28username4core9JsCodegen5write(self, " from \"");
6444
- _M0MP28username4core9JsCodegen5write(self, module_name$4);
6445
- _M0MP28username4core9JsCodegen5write(self, "\";\n");
6446
- return;
6447
- }
6448
- _M0MP28username4core9JsCodegen13write__indent(self);
6449
- _M0MP28username4core9JsCodegen5write(self, "const ");
6450
- _M0MP28username4core9JsCodegen5write(self, _M0FP28username4core9js__ident(name));
6451
- _M0MP28username4core9JsCodegen5write(self, " = require(\"");
6452
- _M0MP28username4core9JsCodegen5write(self, module_name$3);
6453
- _M0MP28username4core9JsCodegen5write(self, "\");\n");
6454
- return;
6455
- }
6456
- _M0MP28username4core9JsCodegen13write__indent(self);
6457
- _M0MP28username4core9JsCodegen5write(self, "import(\"");
6458
- _M0MP28username4core9JsCodegen5write(self, module_name$2);
6459
- _M0MP28username4core9JsCodegen5write(self, "\");\n");
6460
- return;
6461
- }
6462
- _M0MP28username4core9JsCodegen13write__indent(self);
6463
- _M0MP28username4core9JsCodegen5write(self, "import \"");
6464
- _M0MP28username4core9JsCodegen5write(self, module_name);
6465
- _M0MP28username4core9JsCodegen5write(self, "\";\n");
6466
- }
6467
- function _M0MP28username4core9JsCodegen9gen__expr(self, expr) {
6468
- let _tmp = self;
6469
- let _tmp$2 = expr;
6470
- _L: while (true) {
6471
- const self$2 = _tmp;
6472
- const expr$2 = _tmp$2;
6473
- let params;
6474
- let body_expr;
6475
- _L$2: {
6476
- let params$2;
6477
- let body;
6478
- _L$3: {
6479
- let obj;
6480
- let key;
6424
+ let obj;
6425
+ let key;
6481
6426
  _L$4: {
6482
6427
  let meth_name;
6483
6428
  let obj$2;
@@ -6621,12 +6566,16 @@ function _M0MP28username4core9JsCodegen9gen__expr(self, expr) {
6621
6566
  return;
6622
6567
  }
6623
6568
  case 8: {
6569
+ _M0MP28username4core9JsCodegen5write(self$2, "NaN");
6570
+ return;
6571
+ }
6572
+ case 9: {
6624
6573
  const _ArrayLit = expr$2;
6625
6574
  const _elems = _ArrayLit._0;
6626
6575
  elems = _elems;
6627
6576
  break _L$31;
6628
6577
  }
6629
- case 9: {
6578
+ case 10: {
6630
6579
  const _RangeArray = expr$2;
6631
6580
  const _start = _RangeArray._0;
6632
6581
  const _end = _RangeArray._1;
@@ -6636,7 +6585,7 @@ function _M0MP28username4core9JsCodegen9gen__expr(self, expr) {
6636
6585
  inclusive$2 = _inclusive;
6637
6586
  break _L$30;
6638
6587
  }
6639
- case 10: {
6588
+ case 11: {
6640
6589
  const _Slice = expr$2;
6641
6590
  const _obj = _Slice._0;
6642
6591
  const _start$2 = _Slice._1;
@@ -6648,19 +6597,19 @@ function _M0MP28username4core9JsCodegen9gen__expr(self, expr) {
6648
6597
  inclusive = _inclusive$2;
6649
6598
  break _L$29;
6650
6599
  }
6651
- case 11: {
6600
+ case 12: {
6652
6601
  const _ObjectLit = expr$2;
6653
6602
  const _pairs = _ObjectLit._0;
6654
6603
  pairs = _pairs;
6655
6604
  break _L$28;
6656
6605
  }
6657
- case 12: {
6606
+ case 13: {
6658
6607
  const _Ident = expr$2;
6659
6608
  const _name = _Ident._0;
6660
6609
  name = _name;
6661
6610
  break _L$27;
6662
6611
  }
6663
- case 13: {
6612
+ case 14: {
6664
6613
  const _DotAccess = expr$2;
6665
6614
  const _obj$2 = _DotAccess._0;
6666
6615
  const _field = _DotAccess._1;
@@ -6668,7 +6617,7 @@ function _M0MP28username4core9JsCodegen9gen__expr(self, expr) {
6668
6617
  field$2 = _field;
6669
6618
  break _L$26;
6670
6619
  }
6671
- case 14: {
6620
+ case 15: {
6672
6621
  const _IndexAccess = expr$2;
6673
6622
  const _obj$3 = _IndexAccess._0;
6674
6623
  const _index = _IndexAccess._1;
@@ -6676,7 +6625,7 @@ function _M0MP28username4core9JsCodegen9gen__expr(self, expr) {
6676
6625
  index = _index;
6677
6626
  break _L$25;
6678
6627
  }
6679
- case 15: {
6628
+ case 16: {
6680
6629
  const _BinOp = expr$2;
6681
6630
  const _op = _BinOp._0;
6682
6631
  const _left = _BinOp._1;
@@ -6686,25 +6635,25 @@ function _M0MP28username4core9JsCodegen9gen__expr(self, expr) {
6686
6635
  right$2 = _right;
6687
6636
  break _L$24;
6688
6637
  }
6689
- case 16: {
6638
+ case 17: {
6690
6639
  const _UnaryNeg = expr$2;
6691
6640
  const _inner = _UnaryNeg._0;
6692
6641
  inner$5 = _inner;
6693
6642
  break _L$23;
6694
6643
  }
6695
- case 17: {
6644
+ case 18: {
6696
6645
  const _UnaryNot = expr$2;
6697
6646
  const _inner$2 = _UnaryNot._0;
6698
6647
  inner$4 = _inner$2;
6699
6648
  break _L$22;
6700
6649
  }
6701
- case 18: {
6650
+ case 19: {
6702
6651
  const _UnaryTypeof = expr$2;
6703
6652
  const _inner$3 = _UnaryTypeof._0;
6704
6653
  inner$3 = _inner$3;
6705
6654
  break _L$21;
6706
6655
  }
6707
- case 19: {
6656
+ case 20: {
6708
6657
  const _IsCheck = expr$2;
6709
6658
  const _expr = _IsCheck._0;
6710
6659
  const _type_name$2 = _IsCheck._1;
@@ -6712,7 +6661,7 @@ function _M0MP28username4core9JsCodegen9gen__expr(self, expr) {
6712
6661
  type_name = _type_name$2;
6713
6662
  break _L$20;
6714
6663
  }
6715
- case 20: {
6664
+ case 21: {
6716
6665
  const _AsCast = expr$2;
6717
6666
  const _expr$2 = _AsCast._0;
6718
6667
  const __type_name = _AsCast._1;
@@ -6720,7 +6669,7 @@ function _M0MP28username4core9JsCodegen9gen__expr(self, expr) {
6720
6669
  _type_name = __type_name;
6721
6670
  break _L$19;
6722
6671
  }
6723
- case 21: {
6672
+ case 22: {
6724
6673
  const _Instanceof = expr$2;
6725
6674
  const _expr$3 = _Instanceof._0;
6726
6675
  const _type_expr = _Instanceof._1;
@@ -6728,7 +6677,7 @@ function _M0MP28username4core9JsCodegen9gen__expr(self, expr) {
6728
6677
  type_expr = _type_expr;
6729
6678
  break _L$18;
6730
6679
  }
6731
- case 22: {
6680
+ case 23: {
6732
6681
  const _FnExpr = expr$2;
6733
6682
  const _params = _FnExpr._0;
6734
6683
  const _body = _FnExpr._1;
@@ -6736,7 +6685,7 @@ function _M0MP28username4core9JsCodegen9gen__expr(self, expr) {
6736
6685
  body$2 = _body;
6737
6686
  break _L$17;
6738
6687
  }
6739
- case 23: {
6688
+ case 24: {
6740
6689
  const _FnExprTo = expr$2;
6741
6690
  const _params$2 = _FnExprTo._0;
6742
6691
  const _body_expr = _FnExprTo._1;
@@ -6744,7 +6693,7 @@ function _M0MP28username4core9JsCodegen9gen__expr(self, expr) {
6744
6693
  body_expr$2 = _body_expr;
6745
6694
  break _L$16;
6746
6695
  }
6747
- case 24: {
6696
+ case 25: {
6748
6697
  const _Call = expr$2;
6749
6698
  const _callee = _Call._0;
6750
6699
  const _args = _Call._1;
@@ -6752,7 +6701,7 @@ function _M0MP28username4core9JsCodegen9gen__expr(self, expr) {
6752
6701
  args$4 = _args;
6753
6702
  break _L$15;
6754
6703
  }
6755
- case 25: {
6704
+ case 26: {
6756
6705
  const _MethodCall = expr$2;
6757
6706
  const _obj$4 = _MethodCall._0;
6758
6707
  const _meth_name = _MethodCall._1;
@@ -6762,7 +6711,7 @@ function _M0MP28username4core9JsCodegen9gen__expr(self, expr) {
6762
6711
  args$3 = _args$2;
6763
6712
  break _L$14;
6764
6713
  }
6765
- case 26: {
6714
+ case 27: {
6766
6715
  const _NewExpr = expr$2;
6767
6716
  const _callee$2 = _NewExpr._0;
6768
6717
  const _args$3 = _NewExpr._1;
@@ -6770,7 +6719,7 @@ function _M0MP28username4core9JsCodegen9gen__expr(self, expr) {
6770
6719
  args$2 = _args$3;
6771
6720
  break _L$13;
6772
6721
  }
6773
- case 27: {
6722
+ case 28: {
6774
6723
  const _Pipe = expr$2;
6775
6724
  const _left$2 = _Pipe._0;
6776
6725
  const _right$2 = _Pipe._1;
@@ -6778,7 +6727,7 @@ function _M0MP28username4core9JsCodegen9gen__expr(self, expr) {
6778
6727
  right = _right$2;
6779
6728
  break _L$12;
6780
6729
  }
6781
- case 28: {
6730
+ case 29: {
6782
6731
  const _IfExpr = expr$2;
6783
6732
  const _cond = _IfExpr._0;
6784
6733
  const _then_expr = _IfExpr._1;
@@ -6788,7 +6737,7 @@ function _M0MP28username4core9JsCodegen9gen__expr(self, expr) {
6788
6737
  else_expr = _else_expr;
6789
6738
  break _L$11;
6790
6739
  }
6791
- case 29: {
6740
+ case 30: {
6792
6741
  const _TryExpr = expr$2;
6793
6742
  const _try_body = _TryExpr._0;
6794
6743
  const _catch_name = _TryExpr._1;
@@ -6798,7 +6747,7 @@ function _M0MP28username4core9JsCodegen9gen__expr(self, expr) {
6798
6747
  catch_body = _catch_body;
6799
6748
  break _L$10;
6800
6749
  }
6801
- case 30: {
6750
+ case 31: {
6802
6751
  const _MatchExpr = expr$2;
6803
6752
  const _subject = _MatchExpr._0;
6804
6753
  const _arms = _MatchExpr._1;
@@ -6806,27 +6755,27 @@ function _M0MP28username4core9JsCodegen9gen__expr(self, expr) {
6806
6755
  arms = _arms;
6807
6756
  break _L$9;
6808
6757
  }
6809
- case 31: {
6758
+ case 32: {
6810
6759
  const _AwaitExpr = expr$2;
6811
6760
  const _inner$4 = _AwaitExpr._0;
6812
6761
  inner$2 = _inner$4;
6813
6762
  break _L$8;
6814
6763
  }
6815
- case 32: {
6764
+ case 33: {
6816
6765
  const _DeleteExpr = expr$2;
6817
6766
  const _inner$5 = _DeleteExpr._0;
6818
6767
  inner = _inner$5;
6819
6768
  break _L$7;
6820
6769
  }
6821
- case 33: {
6770
+ case 34: {
6822
6771
  _M0MP28username4core9JsCodegen5write(self$2, "this");
6823
6772
  return;
6824
6773
  }
6825
- case 34: {
6774
+ case 35: {
6826
6775
  _M0MP28username4core9JsCodegen5write(self$2, "super");
6827
6776
  return;
6828
6777
  }
6829
- case 35: {
6778
+ case 36: {
6830
6779
  const _OptDotAccess = expr$2;
6831
6780
  const _obj$5 = _OptDotAccess._0;
6832
6781
  const _field$2 = _OptDotAccess._1;
@@ -6834,7 +6783,7 @@ function _M0MP28username4core9JsCodegen9gen__expr(self, expr) {
6834
6783
  field = _field$2;
6835
6784
  break _L$6;
6836
6785
  }
6837
- case 36: {
6786
+ case 37: {
6838
6787
  const _OptMethodCall = expr$2;
6839
6788
  const _obj$6 = _OptMethodCall._0;
6840
6789
  const _meth_name$2 = _OptMethodCall._1;
@@ -6844,7 +6793,7 @@ function _M0MP28username4core9JsCodegen9gen__expr(self, expr) {
6844
6793
  args = _args$4;
6845
6794
  break _L$5;
6846
6795
  }
6847
- case 37: {
6796
+ case 38: {
6848
6797
  const _ComputedAccess = expr$2;
6849
6798
  const _obj$7 = _ComputedAccess._0;
6850
6799
  const _key = _ComputedAccess._1;
@@ -6852,7 +6801,7 @@ function _M0MP28username4core9JsCodegen9gen__expr(self, expr) {
6852
6801
  key = _key;
6853
6802
  break _L$4;
6854
6803
  }
6855
- case 38: {
6804
+ case 39: {
6856
6805
  const _AsyncFnExpr = expr$2;
6857
6806
  const _params$3 = _AsyncFnExpr._0;
6858
6807
  const _body$2 = _AsyncFnExpr._1;
@@ -7268,7 +7217,7 @@ function _M0MP28username4core9JsCodegen9gen__expr(self, expr) {
7268
7217
  let args$3;
7269
7218
  _L$14: {
7270
7219
  switch (right.$tag) {
7271
- case 24: {
7220
+ case 25: {
7272
7221
  const _Call = right;
7273
7222
  const _callee = _Call._0;
7274
7223
  const _args = _Call._1;
@@ -7276,7 +7225,7 @@ function _M0MP28username4core9JsCodegen9gen__expr(self, expr) {
7276
7225
  args$3 = _args;
7277
7226
  break _L$14;
7278
7227
  }
7279
- case 25: {
7228
+ case 26: {
7280
7229
  const _MethodCall = right;
7281
7230
  const _meth_name = _MethodCall._1;
7282
7231
  const _args$2 = _MethodCall._2;
@@ -7284,7 +7233,7 @@ function _M0MP28username4core9JsCodegen9gen__expr(self, expr) {
7284
7233
  args$2 = _args$2;
7285
7234
  break _L$13;
7286
7235
  }
7287
- case 12: {
7236
+ case 13: {
7288
7237
  _M0MP28username4core9JsCodegen9gen__expr(self$2, right);
7289
7238
  _M0MP28username4core9JsCodegen5write(self$2, "(");
7290
7239
  _M0MP28username4core9JsCodegen9gen__expr(self$2, left);
@@ -7408,7 +7357,6 @@ function _M0MP28username4core9JsCodegen9gen__expr(self, expr) {
7408
7357
  _M0MP28username4core9JsCodegen5write(self$2, "const __m = ");
7409
7358
  _M0MP28username4core9JsCodegen9gen__expr(self$2, subject);
7410
7359
  _M0MP28username4core9JsCodegen5write(self$2, ";\n");
7411
- const first = { val: true };
7412
7360
  const _arr = arms;
7413
7361
  const _len = _arr.length;
7414
7362
  let _tmp$3 = 0;
@@ -7416,6 +7364,43 @@ function _M0MP28username4core9JsCodegen9gen__expr(self, expr) {
7416
7364
  const _i = _tmp$3;
7417
7365
  if (_i < _len) {
7418
7366
  const arm = _arr[_i];
7367
+ let name;
7368
+ _L$10: {
7369
+ _L$11: {
7370
+ const _bind = arm.pattern;
7371
+ if (_bind.$tag === 1) {
7372
+ const _BindPat = _bind;
7373
+ const _name = _BindPat._0;
7374
+ name = _name;
7375
+ break _L$11;
7376
+ }
7377
+ break _L$10;
7378
+ }
7379
+ const _bind = arm.cond;
7380
+ if (_bind === undefined) {
7381
+ } else {
7382
+ if (_M0IP016_24default__implP311moonbitlang4core7builtin2Eq10not__equalGsE(name, "_")) {
7383
+ _M0MP28username4core9JsCodegen13write__indent(self$2);
7384
+ _M0MP28username4core9JsCodegen5write(self$2, "const ");
7385
+ _M0MP28username4core9JsCodegen5write(self$2, _M0FP28username4core9js__ident(name));
7386
+ _M0MP28username4core9JsCodegen5write(self$2, " = __m;\n");
7387
+ }
7388
+ }
7389
+ }
7390
+ _tmp$3 = _i + 1 | 0;
7391
+ continue;
7392
+ } else {
7393
+ break;
7394
+ }
7395
+ }
7396
+ const first = { val: true };
7397
+ const _arr$2 = arms;
7398
+ const _len$2 = _arr$2.length;
7399
+ let _tmp$4 = 0;
7400
+ while (true) {
7401
+ const _i = _tmp$4;
7402
+ if (_i < _len$2) {
7403
+ const arm = _arr$2[_i];
7419
7404
  _M0MP28username4core9JsCodegen13write__indent(self$2);
7420
7405
  if (!first.val) {
7421
7406
  _M0MP28username4core9JsCodegen5write(self$2, "else ");
@@ -7460,11 +7445,45 @@ function _M0MP28username4core9JsCodegen9gen__expr(self, expr) {
7460
7445
  break _L$10;
7461
7446
  }
7462
7447
  if (name === "_") {
7463
- _M0MP28username4core9JsCodegen5write(self$2, "{\n");
7448
+ let c;
7449
+ _L$12: {
7450
+ _L$13: {
7451
+ const _bind = arm.cond;
7452
+ if (_bind === undefined) {
7453
+ _M0MP28username4core9JsCodegen5write(self$2, "{\n");
7454
+ } else {
7455
+ const _Some = _bind;
7456
+ const _c = _Some;
7457
+ c = _c;
7458
+ break _L$13;
7459
+ }
7460
+ break _L$12;
7461
+ }
7462
+ _M0MP28username4core9JsCodegen5write(self$2, "if (");
7463
+ _M0MP28username4core9JsCodegen9gen__expr(self$2, c);
7464
+ _M0MP28username4core9JsCodegen5write(self$2, ") {\n");
7465
+ }
7464
7466
  } else {
7465
- _M0MP28username4core9JsCodegen5write(self$2, "if (true) { const ");
7466
- _M0MP28username4core9JsCodegen5write(self$2, _M0FP28username4core9js__ident(name));
7467
- _M0MP28username4core9JsCodegen5write(self$2, " = __m;\n");
7467
+ let c;
7468
+ _L$12: {
7469
+ _L$13: {
7470
+ const _bind = arm.cond;
7471
+ if (_bind === undefined) {
7472
+ _M0MP28username4core9JsCodegen5write(self$2, "if (true) { const ");
7473
+ _M0MP28username4core9JsCodegen5write(self$2, _M0FP28username4core9js__ident(name));
7474
+ _M0MP28username4core9JsCodegen5write(self$2, " = __m;\n");
7475
+ } else {
7476
+ const _Some = _bind;
7477
+ const _c = _Some;
7478
+ c = _c;
7479
+ break _L$13;
7480
+ }
7481
+ break _L$12;
7482
+ }
7483
+ _M0MP28username4core9JsCodegen5write(self$2, "if (");
7484
+ _M0MP28username4core9JsCodegen9gen__expr(self$2, c);
7485
+ _M0MP28username4core9JsCodegen5write(self$2, ") {\n");
7486
+ }
7468
7487
  }
7469
7488
  }
7470
7489
  self$2.indent_level = self$2.indent_level + 1 | 0;
@@ -7492,15 +7511,15 @@ function _M0MP28username4core9JsCodegen9gen__expr(self, expr) {
7492
7511
  _M0MP28username4core9JsCodegen5write(self$2, ";\n");
7493
7512
  break _L$11;
7494
7513
  }
7495
- const _arr$2 = stmts;
7496
- const _len$2 = _arr$2.length;
7497
- let _tmp$4 = 0;
7514
+ const _arr$3 = stmts;
7515
+ const _len$3 = _arr$3.length;
7516
+ let _tmp$5 = 0;
7498
7517
  while (true) {
7499
- const _i$2 = _tmp$4;
7500
- if (_i$2 < _len$2) {
7501
- const s = _arr$2[_i$2];
7518
+ const _i$2 = _tmp$5;
7519
+ if (_i$2 < _len$3) {
7520
+ const s = _arr$3[_i$2];
7502
7521
  _M0MP28username4core9JsCodegen9gen__stmt(self$2, s);
7503
- _tmp$4 = _i$2 + 1 | 0;
7522
+ _tmp$5 = _i$2 + 1 | 0;
7504
7523
  continue;
7505
7524
  } else {
7506
7525
  break;
@@ -7510,7 +7529,7 @@ function _M0MP28username4core9JsCodegen9gen__expr(self, expr) {
7510
7529
  self$2.indent_level = self$2.indent_level - 1 | 0;
7511
7530
  _M0MP28username4core9JsCodegen7writeln(self$2, "}");
7512
7531
  first.val = false;
7513
- _tmp$3 = _i + 1 | 0;
7532
+ _tmp$4 = _i + 1 | 0;
7514
7533
  continue;
7515
7534
  } else {
7516
7535
  break;
@@ -7635,19 +7654,19 @@ function _M0MP28username4core9JsCodegen9gen__expr(self, expr) {
7635
7654
  function _M0MP28username4core9JsCodegen15gen__expr__wrap(self, expr) {
7636
7655
  _L: {
7637
7656
  switch (expr.$tag) {
7638
- case 15: {
7639
- break _L;
7640
- }
7641
7657
  case 16: {
7642
7658
  break _L;
7643
7659
  }
7644
7660
  case 17: {
7645
7661
  break _L;
7646
7662
  }
7647
- case 28: {
7663
+ case 18: {
7664
+ break _L;
7665
+ }
7666
+ case 29: {
7648
7667
  break _L;
7649
7668
  }
7650
- case 27: {
7669
+ case 28: {
7651
7670
  break _L;
7652
7671
  }
7653
7672
  default: {
@@ -8080,7 +8099,7 @@ function _M0MP28username4core9JsCodegen9gen__stmt(self, stmt) {
8080
8099
  let start$2;
8081
8100
  let inclusive;
8082
8101
  _L$24: {
8083
- if (target.$tag === 10) {
8102
+ if (target.$tag === 11) {
8084
8103
  const _Slice = target;
8085
8104
  const _obj = _Slice._0;
8086
8105
  const _start = _Slice._1;
@@ -8114,7 +8133,7 @@ function _M0MP28username4core9JsCodegen9gen__stmt(self, stmt) {
8114
8133
  let elems;
8115
8134
  _L$25: {
8116
8135
  _L$26: {
8117
- if (value$2.$tag === 8) {
8136
+ if (value$2.$tag === 9) {
8118
8137
  const _ArrayLit = value$2;
8119
8138
  const _elems = _ArrayLit._0;
8120
8139
  elems = _elems;
@@ -8814,7 +8833,7 @@ function _M0MP28username4core9JsCodegen16gen__class__body(self, body) {
8814
8833
  break _L;
8815
8834
  }
8816
8835
  }
8817
- _M0MP28username4core9JsCodegen5write(self, "{ return ");
8836
+ _M0MP28username4core9JsCodegen5write(self, "{ ");
8818
8837
  _M0MP28username4core9JsCodegen9gen__expr(self, expr);
8819
8838
  _M0MP28username4core9JsCodegen5write(self, "; }\n");
8820
8839
  return;
@@ -8898,7 +8917,7 @@ function _M0MP28username4core9JsCodegen13gen__fn__decl(self, decl) {
8898
8917
  break _L$2;
8899
8918
  }
8900
8919
  }
8901
- _M0MP28username4core9JsCodegen5write(self, "{ return ");
8920
+ _M0MP28username4core9JsCodegen5write(self, "{ ");
8902
8921
  _M0MP28username4core9JsCodegen9gen__expr(self, expr);
8903
8922
  _M0MP28username4core9JsCodegen5write(self, "; }\n");
8904
8923
  return;
@@ -9007,9 +9026,199 @@ function _M0MP28username4core9JsCodegen7gen__if(self, cond, body, elifs, else_bo
9007
9026
  self.indent_level = self.indent_level - 1 | 0;
9008
9027
  _M0MP28username4core9JsCodegen7writeln(self, "}");
9009
9028
  }
9010
- function _M0MP28username4core9JsCodegen10gen__match(self, subject, arms) {
9029
+ function _M0MP28username4core9JsCodegen11gen__import(self, decl) {
9030
+ let module_name;
9031
+ let attrs;
9032
+ _L: {
9033
+ let module_name$2;
9034
+ _L$2: {
9035
+ let name;
9036
+ let module_name$3;
9037
+ _L$3: {
9038
+ let module_name$4;
9039
+ let named;
9040
+ let default_name;
9041
+ let ns_name;
9042
+ let attrs$2;
9043
+ _L$4: {
9044
+ switch (decl.$tag) {
9045
+ case 0: {
9046
+ const _EsImport = decl;
9047
+ const _default_name = _EsImport._0;
9048
+ const _named = _EsImport._1;
9049
+ const _ns_name = _EsImport._2;
9050
+ const _module_name = _EsImport._3;
9051
+ const _attrs = _EsImport._4;
9052
+ module_name$4 = _module_name;
9053
+ named = _named;
9054
+ default_name = _default_name;
9055
+ ns_name = _ns_name;
9056
+ attrs$2 = _attrs;
9057
+ break _L$4;
9058
+ }
9059
+ case 1: {
9060
+ const _CjsRequire = decl;
9061
+ const _name = _CjsRequire._0;
9062
+ const _module_name$2 = _CjsRequire._1;
9063
+ name = _name;
9064
+ module_name$3 = _module_name$2;
9065
+ break _L$3;
9066
+ }
9067
+ case 2: {
9068
+ const _DynImport = decl;
9069
+ const _module_name$3 = _DynImport._0;
9070
+ module_name$2 = _module_name$3;
9071
+ break _L$2;
9072
+ }
9073
+ default: {
9074
+ const _SideEffectImport = decl;
9075
+ const _module_name$4 = _SideEffectImport._0;
9076
+ const _attrs$2 = _SideEffectImport._1;
9077
+ module_name = _module_name$4;
9078
+ attrs = _attrs$2;
9079
+ break _L;
9080
+ }
9081
+ }
9082
+ }
9083
+ _M0MP28username4core9JsCodegen13write__indent(self);
9084
+ _M0MP28username4core9JsCodegen5write(self, "import ");
9085
+ const has_prev = { val: false };
9086
+ let n;
9087
+ _L$5: {
9088
+ _L$6: {
9089
+ if (default_name === undefined) {
9090
+ } else {
9091
+ const _Some = default_name;
9092
+ const _n = _Some;
9093
+ n = _n;
9094
+ break _L$6;
9095
+ }
9096
+ break _L$5;
9097
+ }
9098
+ _M0MP28username4core9JsCodegen5write(self, n);
9099
+ has_prev.val = true;
9100
+ }
9101
+ let names;
9102
+ _L$6: {
9103
+ _L$7: {
9104
+ if (named.$tag === 1) {
9105
+ const _Some = named;
9106
+ const _names = _Some._0;
9107
+ names = _names;
9108
+ break _L$7;
9109
+ }
9110
+ break _L$6;
9111
+ }
9112
+ if (has_prev.val) {
9113
+ _M0MP28username4core9JsCodegen5write(self, ", ");
9114
+ }
9115
+ _M0MP28username4core9JsCodegen5write(self, "{ ");
9116
+ const first = { val: true };
9117
+ const _arr = names;
9118
+ const _len = _arr.length;
9119
+ let _tmp = 0;
9120
+ while (true) {
9121
+ const _i = _tmp;
9122
+ if (_i < _len) {
9123
+ const n$2 = _arr[_i];
9124
+ if (!first.val) {
9125
+ _M0MP28username4core9JsCodegen5write(self, ", ");
9126
+ }
9127
+ _M0MP28username4core9JsCodegen5write(self, n$2);
9128
+ first.val = false;
9129
+ _tmp = _i + 1 | 0;
9130
+ continue;
9131
+ } else {
9132
+ break;
9133
+ }
9134
+ }
9135
+ _M0MP28username4core9JsCodegen5write(self, " }");
9136
+ has_prev.val = true;
9137
+ }
9138
+ let ns;
9139
+ _L$7: {
9140
+ _L$8: {
9141
+ if (ns_name === undefined) {
9142
+ } else {
9143
+ const _Some = ns_name;
9144
+ const _ns = _Some;
9145
+ ns = _ns;
9146
+ break _L$8;
9147
+ }
9148
+ break _L$7;
9149
+ }
9150
+ if (has_prev.val) {
9151
+ _M0MP28username4core9JsCodegen5write(self, ", ");
9152
+ }
9153
+ _M0MP28username4core9JsCodegen5write(self, "* as ");
9154
+ _M0MP28username4core9JsCodegen5write(self, ns);
9155
+ }
9156
+ _M0MP28username4core9JsCodegen5write(self, " from \"");
9157
+ _M0MP28username4core9JsCodegen5write(self, module_name$4);
9158
+ _M0MP28username4core9JsCodegen5write(self, "\"");
9159
+ _M0MP28username4core9JsCodegen23gen__import__attributes(self, attrs$2);
9160
+ _M0MP28username4core9JsCodegen5write(self, ";\n");
9161
+ return;
9162
+ }
9163
+ _M0MP28username4core9JsCodegen13write__indent(self);
9164
+ _M0MP28username4core9JsCodegen5write(self, "const ");
9165
+ _M0MP28username4core9JsCodegen5write(self, _M0FP28username4core9js__ident(name));
9166
+ _M0MP28username4core9JsCodegen5write(self, " = require(\"");
9167
+ _M0MP28username4core9JsCodegen5write(self, module_name$3);
9168
+ _M0MP28username4core9JsCodegen5write(self, "\");\n");
9169
+ return;
9170
+ }
9171
+ _M0MP28username4core9JsCodegen13write__indent(self);
9172
+ _M0MP28username4core9JsCodegen5write(self, "import(\"");
9173
+ _M0MP28username4core9JsCodegen5write(self, module_name$2);
9174
+ _M0MP28username4core9JsCodegen5write(self, "\");\n");
9175
+ return;
9176
+ }
9011
9177
  _M0MP28username4core9JsCodegen13write__indent(self);
9178
+ _M0MP28username4core9JsCodegen5write(self, "import \"");
9179
+ _M0MP28username4core9JsCodegen5write(self, module_name);
9180
+ _M0MP28username4core9JsCodegen5write(self, "\"");
9181
+ _M0MP28username4core9JsCodegen23gen__import__attributes(self, attrs);
9182
+ _M0MP28username4core9JsCodegen5write(self, ";\n");
9183
+ }
9184
+ function _M0MP28username4core9JsCodegen23gen__import__attributes(self, attrs) {
9185
+ let pairs;
9186
+ _L: {
9187
+ if (attrs.$tag === 1) {
9188
+ const _Some = attrs;
9189
+ const _pairs = _Some._0;
9190
+ pairs = _pairs;
9191
+ break _L;
9192
+ } else {
9193
+ return;
9194
+ }
9195
+ }
9196
+ _M0MP28username4core9JsCodegen5write(self, " with { ");
9012
9197
  const first = { val: true };
9198
+ const _arr = pairs;
9199
+ const _len = _arr.length;
9200
+ let _tmp = 0;
9201
+ while (true) {
9202
+ const _i = _tmp;
9203
+ if (_i < _len) {
9204
+ const pair = _arr[_i];
9205
+ if (!first.val) {
9206
+ _M0MP28username4core9JsCodegen5write(self, ", ");
9207
+ }
9208
+ _M0MP28username4core9JsCodegen5write(self, pair._0);
9209
+ _M0MP28username4core9JsCodegen5write(self, ": ");
9210
+ _M0MP28username4core9JsCodegen9gen__expr(self, pair._1);
9211
+ first.val = false;
9212
+ _tmp = _i + 1 | 0;
9213
+ continue;
9214
+ } else {
9215
+ break;
9216
+ }
9217
+ }
9218
+ _M0MP28username4core9JsCodegen5write(self, " }");
9219
+ }
9220
+ function _M0MP28username4core9JsCodegen10gen__match(self, subject, arms) {
9221
+ const has_bind_guard = { val: false };
9013
9222
  const _arr = arms;
9014
9223
  const _len = _arr.length;
9015
9224
  let _tmp = 0;
@@ -9017,6 +9226,84 @@ function _M0MP28username4core9JsCodegen10gen__match(self, subject, arms) {
9017
9226
  const _i = _tmp;
9018
9227
  if (_i < _len) {
9019
9228
  const arm = _arr[_i];
9229
+ let name;
9230
+ _L: {
9231
+ _L$2: {
9232
+ const _bind = arm.pattern;
9233
+ if (_bind.$tag === 1) {
9234
+ const _BindPat = _bind;
9235
+ const _name = _BindPat._0;
9236
+ name = _name;
9237
+ break _L$2;
9238
+ }
9239
+ break _L;
9240
+ }
9241
+ const _bind = arm.cond;
9242
+ if (_bind === undefined) {
9243
+ } else {
9244
+ if (_M0IP016_24default__implP311moonbitlang4core7builtin2Eq10not__equalGsE(name, "_")) {
9245
+ has_bind_guard.val = true;
9246
+ }
9247
+ }
9248
+ }
9249
+ _tmp = _i + 1 | 0;
9250
+ continue;
9251
+ } else {
9252
+ break;
9253
+ }
9254
+ }
9255
+ if (has_bind_guard.val) {
9256
+ _M0MP28username4core9JsCodegen13write__indent(self);
9257
+ _M0MP28username4core9JsCodegen5write(self, "{\n");
9258
+ self.indent_level = self.indent_level + 1 | 0;
9259
+ const _arr$2 = arms;
9260
+ const _len$2 = _arr$2.length;
9261
+ let _tmp$2 = 0;
9262
+ while (true) {
9263
+ const _i = _tmp$2;
9264
+ if (_i < _len$2) {
9265
+ const arm = _arr$2[_i];
9266
+ let name;
9267
+ _L: {
9268
+ _L$2: {
9269
+ const _bind = arm.pattern;
9270
+ if (_bind.$tag === 1) {
9271
+ const _BindPat = _bind;
9272
+ const _name = _BindPat._0;
9273
+ name = _name;
9274
+ break _L$2;
9275
+ }
9276
+ break _L;
9277
+ }
9278
+ const _bind = arm.cond;
9279
+ if (_bind === undefined) {
9280
+ } else {
9281
+ if (_M0IP016_24default__implP311moonbitlang4core7builtin2Eq10not__equalGsE(name, "_")) {
9282
+ _M0MP28username4core9JsCodegen13write__indent(self);
9283
+ _M0MP28username4core9JsCodegen5write(self, "const ");
9284
+ _M0MP28username4core9JsCodegen5write(self, _M0FP28username4core9js__ident(name));
9285
+ _M0MP28username4core9JsCodegen5write(self, " = ");
9286
+ _M0MP28username4core9JsCodegen9gen__expr(self, subject);
9287
+ _M0MP28username4core9JsCodegen5write(self, ";\n");
9288
+ }
9289
+ }
9290
+ }
9291
+ _tmp$2 = _i + 1 | 0;
9292
+ continue;
9293
+ } else {
9294
+ break;
9295
+ }
9296
+ }
9297
+ }
9298
+ _M0MP28username4core9JsCodegen13write__indent(self);
9299
+ const first = { val: true };
9300
+ const _arr$2 = arms;
9301
+ const _len$2 = _arr$2.length;
9302
+ let _tmp$2 = 0;
9303
+ while (true) {
9304
+ const _i = _tmp$2;
9305
+ if (_i < _len$2) {
9306
+ const arm = _arr$2[_i];
9020
9307
  if (!first.val) {
9021
9308
  _M0MP28username4core9JsCodegen5write(self, " else ");
9022
9309
  }
@@ -9062,14 +9349,47 @@ function _M0MP28username4core9JsCodegen10gen__match(self, subject, arms) {
9062
9349
  break _L;
9063
9350
  }
9064
9351
  if (name === "_") {
9065
- !first.val;
9066
- _M0MP28username4core9JsCodegen5write(self, "{\n");
9352
+ let c;
9353
+ _L$3: {
9354
+ _L$4: {
9355
+ const _bind = arm.cond;
9356
+ if (_bind === undefined) {
9357
+ _M0MP28username4core9JsCodegen5write(self, "{\n");
9358
+ } else {
9359
+ const _Some = _bind;
9360
+ const _c = _Some;
9361
+ c = _c;
9362
+ break _L$4;
9363
+ }
9364
+ break _L$3;
9365
+ }
9366
+ _M0MP28username4core9JsCodegen5write(self, "if (");
9367
+ _M0MP28username4core9JsCodegen9gen__expr(self, c);
9368
+ _M0MP28username4core9JsCodegen5write(self, ") {\n");
9369
+ }
9067
9370
  } else {
9068
- _M0MP28username4core9JsCodegen5write(self, "if (true) { const ");
9069
- _M0MP28username4core9JsCodegen5write(self, _M0FP28username4core9js__ident(name));
9070
- _M0MP28username4core9JsCodegen5write(self, " = ");
9071
- _M0MP28username4core9JsCodegen9gen__expr(self, subject);
9072
- _M0MP28username4core9JsCodegen5write(self, ";\n");
9371
+ let c;
9372
+ _L$3: {
9373
+ _L$4: {
9374
+ const _bind = arm.cond;
9375
+ if (_bind === undefined) {
9376
+ _M0MP28username4core9JsCodegen5write(self, "if (true) { const ");
9377
+ _M0MP28username4core9JsCodegen5write(self, _M0FP28username4core9js__ident(name));
9378
+ _M0MP28username4core9JsCodegen5write(self, " = ");
9379
+ _M0MP28username4core9JsCodegen9gen__expr(self, subject);
9380
+ _M0MP28username4core9JsCodegen5write(self, ";\n");
9381
+ } else {
9382
+ const _Some = _bind;
9383
+ const _c = _Some;
9384
+ c = _c;
9385
+ break _L$4;
9386
+ }
9387
+ break _L$3;
9388
+ }
9389
+ _M0MP28username4core9JsCodegen5write(self, "if (");
9390
+ _M0MP28username4core9JsCodegen9gen__expr(self, c);
9391
+ _M0MP28username4core9JsCodegen5write(self, ") {\n");
9392
+ }
9073
9393
  }
9074
9394
  }
9075
9395
  self.indent_level = self.indent_level + 1 | 0;
@@ -9096,15 +9416,15 @@ function _M0MP28username4core9JsCodegen10gen__match(self, subject, arms) {
9096
9416
  _M0MP28username4core9JsCodegen5write(self, ";\n");
9097
9417
  break _L$2;
9098
9418
  }
9099
- const _arr$2 = stmts;
9100
- const _len$2 = _arr$2.length;
9101
- let _tmp$2 = 0;
9419
+ const _arr$3 = stmts;
9420
+ const _len$3 = _arr$3.length;
9421
+ let _tmp$3 = 0;
9102
9422
  while (true) {
9103
- const _i$2 = _tmp$2;
9104
- if (_i$2 < _len$2) {
9105
- const s = _arr$2[_i$2];
9423
+ const _i$2 = _tmp$3;
9424
+ if (_i$2 < _len$3) {
9425
+ const s = _arr$3[_i$2];
9106
9426
  _M0MP28username4core9JsCodegen9gen__stmt(self, s);
9107
- _tmp$2 = _i$2 + 1 | 0;
9427
+ _tmp$3 = _i$2 + 1 | 0;
9108
9428
  continue;
9109
9429
  } else {
9110
9430
  break;
@@ -9115,13 +9435,21 @@ function _M0MP28username4core9JsCodegen10gen__match(self, subject, arms) {
9115
9435
  _M0MP28username4core9JsCodegen13write__indent(self);
9116
9436
  _M0MP28username4core9JsCodegen5write(self, "}");
9117
9437
  first.val = false;
9118
- _tmp = _i + 1 | 0;
9438
+ _tmp$2 = _i + 1 | 0;
9119
9439
  continue;
9120
9440
  } else {
9121
9441
  break;
9122
9442
  }
9123
9443
  }
9124
9444
  _M0MP28username4core9JsCodegen5write(self, "\n");
9445
+ if (has_bind_guard.val) {
9446
+ self.indent_level = self.indent_level - 1 | 0;
9447
+ _M0MP28username4core9JsCodegen13write__indent(self);
9448
+ _M0MP28username4core9JsCodegen5write(self, "}\n");
9449
+ return;
9450
+ } else {
9451
+ return;
9452
+ }
9125
9453
  }
9126
9454
  function _M0MP28username4core9JsCodegen17gen__stmt__inline(self, stmt) {
9127
9455
  let target;
@@ -9228,7 +9556,7 @@ function _M0MP28username4core9JsCodegen17gen__stmt__inline(self, stmt) {
9228
9556
  let start;
9229
9557
  let inclusive;
9230
9558
  _L$2: {
9231
- if (target.$tag === 10) {
9559
+ if (target.$tag === 11) {
9232
9560
  const _Slice = target;
9233
9561
  const _obj = _Slice._0;
9234
9562
  const _start = _Slice._1;
@@ -9260,7 +9588,7 @@ function _M0MP28username4core9JsCodegen17gen__stmt__inline(self, stmt) {
9260
9588
  let elems;
9261
9589
  _L$3: {
9262
9590
  _L$4: {
9263
- if (value.$tag === 8) {
9591
+ if (value.$tag === 9) {
9264
9592
  const _ArrayLit = value;
9265
9593
  const _elems = _ArrayLit._0;
9266
9594
  elems = _elems;
@@ -9390,7 +9718,7 @@ function _M0FP48username4core3cmd4main10cmd__build(args) {
9390
9718
  _L$2: {
9391
9719
  _L$3: {
9392
9720
  const _bind = _M0MP311moonbitlang4core5array5Array2atGRP28username4core5TokenE(tokens, 0).kind;
9393
- if (_bind.$tag === 95) {
9721
+ if (_bind.$tag === 97) {
9394
9722
  const _Shebang = _bind;
9395
9723
  const _s = _Shebang._0;
9396
9724
  s = _s;
@@ -9402,7 +9730,7 @@ function _M0FP48username4core3cmd4main10cmd__build(args) {
9402
9730
  tok_start.val = 1;
9403
9731
  if (tok_start.val < tokens.length) {
9404
9732
  const _bind = _M0MP311moonbitlang4core5array5Array2atGRP28username4core5TokenE(tokens, tok_start.val).kind;
9405
- if (_bind.$tag === 92) {
9733
+ if (_bind.$tag === 94) {
9406
9734
  tok_start.val = tok_start.val + 1 | 0;
9407
9735
  }
9408
9736
  }
@@ -9420,7 +9748,7 @@ function _M0FP48username4core3cmd4main10cmd__build(args) {
9420
9748
  }
9421
9749
  }
9422
9750
  const stmts = _M0MP28username4core6Parser5parse(_M0MP28username4core6Parser3new(filtered));
9423
- const header = no_header.val ? "" : "// Generated by Purus 0.6.1";
9751
+ const header = no_header.val ? "" : "// Generated by Purus 0.7.0";
9424
9752
  const js = _M0MP28username4core9JsCodegen16generate_2einner(_M0MP28username4core9JsCodegen3new(), stmts, header, shebang.val, strict.val);
9425
9753
  if (to_stdout.val) {
9426
9754
  _M0FP311moonbitlang4core7builtin7printlnGsE(js);