@bytecodealliance/jco 1.1.1 → 1.2.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.
@@ -14,6 +14,7 @@ const { getTerminalStdin } = terminalStdin;
14
14
  const { getTerminalStdout } = terminalStdout;
15
15
  const { getDirectories } = preopens;
16
16
  const { Descriptor,
17
+ DirectoryEntryStream,
17
18
  filesystemErrorCode } = types;
18
19
  const { Error: Error$1 } = error;
19
20
  const { InputStream,
@@ -1087,8 +1088,216 @@ function trampoline15(arg0, arg1) {
1087
1088
  }
1088
1089
  }
1089
1090
  }
1091
+ const handleTable6 = [T_FLAG, 0];
1092
+ const captureTable6= new Map();
1093
+ let captureCnt6 = 0;
1094
+ handleTables[6] = handleTable6;
1090
1095
 
1091
1096
  function trampoline16(arg0, arg1) {
1097
+ var handle1 = arg0;
1098
+ var rep2 = handleTable5[(handle1 << 1) + 1] & ~T_FLAG;
1099
+ var rsc0 = captureTable5.get(rep2);
1100
+ if (!rsc0) {
1101
+ rsc0 = Object.create(Descriptor.prototype);
1102
+ Object.defineProperty(rsc0, symbolRscHandle, { writable: true, value: handle1});
1103
+ Object.defineProperty(rsc0, symbolRscRep, { writable: true, value: rep2});
1104
+ }
1105
+ let ret;
1106
+ try {
1107
+ ret = { tag: 'ok', val: rsc0.readDirectory()};
1108
+ } catch (e) {
1109
+ ret = { tag: 'err', val: getErrorPayload(e) };
1110
+ }
1111
+ rsc0[symbolRscHandle] = null;
1112
+ var variant5 = ret;
1113
+ switch (variant5.tag) {
1114
+ case 'ok': {
1115
+ const e = variant5.val;
1116
+ dataView(memory0).setInt8(arg1 + 0, 0, true);
1117
+ if (!(e instanceof DirectoryEntryStream)) {
1118
+ throw new TypeError('Resource error: Not a valid "DirectoryEntryStream" resource.');
1119
+ }
1120
+ var handle3 = e[symbolRscHandle];
1121
+ if (!handle3) {
1122
+ const rep = e[symbolRscRep] || ++captureCnt6;
1123
+ captureTable6.set(rep, e);
1124
+ handle3 = rscTableCreateOwn(handleTable6, rep);
1125
+ }
1126
+ dataView(memory0).setInt32(arg1 + 4, handle3, true);
1127
+ break;
1128
+ }
1129
+ case 'err': {
1130
+ const e = variant5.val;
1131
+ dataView(memory0).setInt8(arg1 + 0, 1, true);
1132
+ var val4 = e;
1133
+ let enum4;
1134
+ switch (val4) {
1135
+ case 'access': {
1136
+ enum4 = 0;
1137
+ break;
1138
+ }
1139
+ case 'would-block': {
1140
+ enum4 = 1;
1141
+ break;
1142
+ }
1143
+ case 'already': {
1144
+ enum4 = 2;
1145
+ break;
1146
+ }
1147
+ case 'bad-descriptor': {
1148
+ enum4 = 3;
1149
+ break;
1150
+ }
1151
+ case 'busy': {
1152
+ enum4 = 4;
1153
+ break;
1154
+ }
1155
+ case 'deadlock': {
1156
+ enum4 = 5;
1157
+ break;
1158
+ }
1159
+ case 'quota': {
1160
+ enum4 = 6;
1161
+ break;
1162
+ }
1163
+ case 'exist': {
1164
+ enum4 = 7;
1165
+ break;
1166
+ }
1167
+ case 'file-too-large': {
1168
+ enum4 = 8;
1169
+ break;
1170
+ }
1171
+ case 'illegal-byte-sequence': {
1172
+ enum4 = 9;
1173
+ break;
1174
+ }
1175
+ case 'in-progress': {
1176
+ enum4 = 10;
1177
+ break;
1178
+ }
1179
+ case 'interrupted': {
1180
+ enum4 = 11;
1181
+ break;
1182
+ }
1183
+ case 'invalid': {
1184
+ enum4 = 12;
1185
+ break;
1186
+ }
1187
+ case 'io': {
1188
+ enum4 = 13;
1189
+ break;
1190
+ }
1191
+ case 'is-directory': {
1192
+ enum4 = 14;
1193
+ break;
1194
+ }
1195
+ case 'loop': {
1196
+ enum4 = 15;
1197
+ break;
1198
+ }
1199
+ case 'too-many-links': {
1200
+ enum4 = 16;
1201
+ break;
1202
+ }
1203
+ case 'message-size': {
1204
+ enum4 = 17;
1205
+ break;
1206
+ }
1207
+ case 'name-too-long': {
1208
+ enum4 = 18;
1209
+ break;
1210
+ }
1211
+ case 'no-device': {
1212
+ enum4 = 19;
1213
+ break;
1214
+ }
1215
+ case 'no-entry': {
1216
+ enum4 = 20;
1217
+ break;
1218
+ }
1219
+ case 'no-lock': {
1220
+ enum4 = 21;
1221
+ break;
1222
+ }
1223
+ case 'insufficient-memory': {
1224
+ enum4 = 22;
1225
+ break;
1226
+ }
1227
+ case 'insufficient-space': {
1228
+ enum4 = 23;
1229
+ break;
1230
+ }
1231
+ case 'not-directory': {
1232
+ enum4 = 24;
1233
+ break;
1234
+ }
1235
+ case 'not-empty': {
1236
+ enum4 = 25;
1237
+ break;
1238
+ }
1239
+ case 'not-recoverable': {
1240
+ enum4 = 26;
1241
+ break;
1242
+ }
1243
+ case 'unsupported': {
1244
+ enum4 = 27;
1245
+ break;
1246
+ }
1247
+ case 'no-tty': {
1248
+ enum4 = 28;
1249
+ break;
1250
+ }
1251
+ case 'no-such-device': {
1252
+ enum4 = 29;
1253
+ break;
1254
+ }
1255
+ case 'overflow': {
1256
+ enum4 = 30;
1257
+ break;
1258
+ }
1259
+ case 'not-permitted': {
1260
+ enum4 = 31;
1261
+ break;
1262
+ }
1263
+ case 'pipe': {
1264
+ enum4 = 32;
1265
+ break;
1266
+ }
1267
+ case 'read-only': {
1268
+ enum4 = 33;
1269
+ break;
1270
+ }
1271
+ case 'invalid-seek': {
1272
+ enum4 = 34;
1273
+ break;
1274
+ }
1275
+ case 'text-file-busy': {
1276
+ enum4 = 35;
1277
+ break;
1278
+ }
1279
+ case 'cross-device': {
1280
+ enum4 = 36;
1281
+ break;
1282
+ }
1283
+ default: {
1284
+ if ((e) instanceof Error) {
1285
+ console.error(e);
1286
+ }
1287
+
1288
+ throw new TypeError(`"${val4}" is not one of the cases of error-code`);
1289
+ }
1290
+ }
1291
+ dataView(memory0).setInt8(arg1 + 4, enum4, true);
1292
+ break;
1293
+ }
1294
+ default: {
1295
+ throw new TypeError('invalid variant specified for result');
1296
+ }
1297
+ }
1298
+ }
1299
+
1300
+ function trampoline17(arg0, arg1) {
1092
1301
  var handle1 = arg0;
1093
1302
  var rep2 = handleTable5[(handle1 << 1) + 1] & ~T_FLAG;
1094
1303
  var rsc0 = captureTable5.get(rep2);
@@ -1189,157 +1398,867 @@ function trampoline16(arg0, arg1) {
1189
1398
  break;
1190
1399
  }
1191
1400
  case 'err': {
1192
- const e = variant12.val;
1401
+ const e = variant12.val;
1402
+ dataView(memory0).setInt8(arg1 + 0, 1, true);
1403
+ var val11 = e;
1404
+ let enum11;
1405
+ switch (val11) {
1406
+ case 'access': {
1407
+ enum11 = 0;
1408
+ break;
1409
+ }
1410
+ case 'would-block': {
1411
+ enum11 = 1;
1412
+ break;
1413
+ }
1414
+ case 'already': {
1415
+ enum11 = 2;
1416
+ break;
1417
+ }
1418
+ case 'bad-descriptor': {
1419
+ enum11 = 3;
1420
+ break;
1421
+ }
1422
+ case 'busy': {
1423
+ enum11 = 4;
1424
+ break;
1425
+ }
1426
+ case 'deadlock': {
1427
+ enum11 = 5;
1428
+ break;
1429
+ }
1430
+ case 'quota': {
1431
+ enum11 = 6;
1432
+ break;
1433
+ }
1434
+ case 'exist': {
1435
+ enum11 = 7;
1436
+ break;
1437
+ }
1438
+ case 'file-too-large': {
1439
+ enum11 = 8;
1440
+ break;
1441
+ }
1442
+ case 'illegal-byte-sequence': {
1443
+ enum11 = 9;
1444
+ break;
1445
+ }
1446
+ case 'in-progress': {
1447
+ enum11 = 10;
1448
+ break;
1449
+ }
1450
+ case 'interrupted': {
1451
+ enum11 = 11;
1452
+ break;
1453
+ }
1454
+ case 'invalid': {
1455
+ enum11 = 12;
1456
+ break;
1457
+ }
1458
+ case 'io': {
1459
+ enum11 = 13;
1460
+ break;
1461
+ }
1462
+ case 'is-directory': {
1463
+ enum11 = 14;
1464
+ break;
1465
+ }
1466
+ case 'loop': {
1467
+ enum11 = 15;
1468
+ break;
1469
+ }
1470
+ case 'too-many-links': {
1471
+ enum11 = 16;
1472
+ break;
1473
+ }
1474
+ case 'message-size': {
1475
+ enum11 = 17;
1476
+ break;
1477
+ }
1478
+ case 'name-too-long': {
1479
+ enum11 = 18;
1480
+ break;
1481
+ }
1482
+ case 'no-device': {
1483
+ enum11 = 19;
1484
+ break;
1485
+ }
1486
+ case 'no-entry': {
1487
+ enum11 = 20;
1488
+ break;
1489
+ }
1490
+ case 'no-lock': {
1491
+ enum11 = 21;
1492
+ break;
1493
+ }
1494
+ case 'insufficient-memory': {
1495
+ enum11 = 22;
1496
+ break;
1497
+ }
1498
+ case 'insufficient-space': {
1499
+ enum11 = 23;
1500
+ break;
1501
+ }
1502
+ case 'not-directory': {
1503
+ enum11 = 24;
1504
+ break;
1505
+ }
1506
+ case 'not-empty': {
1507
+ enum11 = 25;
1508
+ break;
1509
+ }
1510
+ case 'not-recoverable': {
1511
+ enum11 = 26;
1512
+ break;
1513
+ }
1514
+ case 'unsupported': {
1515
+ enum11 = 27;
1516
+ break;
1517
+ }
1518
+ case 'no-tty': {
1519
+ enum11 = 28;
1520
+ break;
1521
+ }
1522
+ case 'no-such-device': {
1523
+ enum11 = 29;
1524
+ break;
1525
+ }
1526
+ case 'overflow': {
1527
+ enum11 = 30;
1528
+ break;
1529
+ }
1530
+ case 'not-permitted': {
1531
+ enum11 = 31;
1532
+ break;
1533
+ }
1534
+ case 'pipe': {
1535
+ enum11 = 32;
1536
+ break;
1537
+ }
1538
+ case 'read-only': {
1539
+ enum11 = 33;
1540
+ break;
1541
+ }
1542
+ case 'invalid-seek': {
1543
+ enum11 = 34;
1544
+ break;
1545
+ }
1546
+ case 'text-file-busy': {
1547
+ enum11 = 35;
1548
+ break;
1549
+ }
1550
+ case 'cross-device': {
1551
+ enum11 = 36;
1552
+ break;
1553
+ }
1554
+ default: {
1555
+ if ((e) instanceof Error) {
1556
+ console.error(e);
1557
+ }
1558
+
1559
+ throw new TypeError(`"${val11}" is not one of the cases of error-code`);
1560
+ }
1561
+ }
1562
+ dataView(memory0).setInt8(arg1 + 8, enum11, true);
1563
+ break;
1564
+ }
1565
+ default: {
1566
+ throw new TypeError('invalid variant specified for result');
1567
+ }
1568
+ }
1569
+ }
1570
+
1571
+ function trampoline18(arg0, arg1, arg2, arg3, arg4) {
1572
+ var handle1 = arg0;
1573
+ var rep2 = handleTable5[(handle1 << 1) + 1] & ~T_FLAG;
1574
+ var rsc0 = captureTable5.get(rep2);
1575
+ if (!rsc0) {
1576
+ rsc0 = Object.create(Descriptor.prototype);
1577
+ Object.defineProperty(rsc0, symbolRscHandle, { writable: true, value: handle1});
1578
+ Object.defineProperty(rsc0, symbolRscRep, { writable: true, value: rep2});
1579
+ }
1580
+ if ((arg1 & 4294967294) !== 0) {
1581
+ throw new TypeError('flags have extraneous bits set');
1582
+ }
1583
+ var flags3 = {
1584
+ symlinkFollow: Boolean(arg1 & 1),
1585
+ };
1586
+ var ptr4 = arg2;
1587
+ var len4 = arg3;
1588
+ var result4 = utf8Decoder.decode(new Uint8Array(memory0.buffer, ptr4, len4));
1589
+ let ret;
1590
+ try {
1591
+ ret = { tag: 'ok', val: rsc0.statAt(flags3, result4)};
1592
+ } catch (e) {
1593
+ ret = { tag: 'err', val: getErrorPayload(e) };
1594
+ }
1595
+ rsc0[symbolRscHandle] = null;
1596
+ var variant14 = ret;
1597
+ switch (variant14.tag) {
1598
+ case 'ok': {
1599
+ const e = variant14.val;
1600
+ dataView(memory0).setInt8(arg4 + 0, 0, true);
1601
+ var {type: v5_0, linkCount: v5_1, size: v5_2, dataAccessTimestamp: v5_3, dataModificationTimestamp: v5_4, statusChangeTimestamp: v5_5 } = e;
1602
+ var val6 = v5_0;
1603
+ let enum6;
1604
+ switch (val6) {
1605
+ case 'unknown': {
1606
+ enum6 = 0;
1607
+ break;
1608
+ }
1609
+ case 'block-device': {
1610
+ enum6 = 1;
1611
+ break;
1612
+ }
1613
+ case 'character-device': {
1614
+ enum6 = 2;
1615
+ break;
1616
+ }
1617
+ case 'directory': {
1618
+ enum6 = 3;
1619
+ break;
1620
+ }
1621
+ case 'fifo': {
1622
+ enum6 = 4;
1623
+ break;
1624
+ }
1625
+ case 'symbolic-link': {
1626
+ enum6 = 5;
1627
+ break;
1628
+ }
1629
+ case 'regular-file': {
1630
+ enum6 = 6;
1631
+ break;
1632
+ }
1633
+ case 'socket': {
1634
+ enum6 = 7;
1635
+ break;
1636
+ }
1637
+ default: {
1638
+ if ((v5_0) instanceof Error) {
1639
+ console.error(v5_0);
1640
+ }
1641
+
1642
+ throw new TypeError(`"${val6}" is not one of the cases of descriptor-type`);
1643
+ }
1644
+ }
1645
+ dataView(memory0).setInt8(arg4 + 8, enum6, true);
1646
+ dataView(memory0).setBigInt64(arg4 + 16, toUint64(v5_1), true);
1647
+ dataView(memory0).setBigInt64(arg4 + 24, toUint64(v5_2), true);
1648
+ var variant8 = v5_3;
1649
+ if (variant8 === null || variant8=== undefined) {
1650
+ dataView(memory0).setInt8(arg4 + 32, 0, true);
1651
+ } else {
1652
+ const e = variant8;
1653
+ dataView(memory0).setInt8(arg4 + 32, 1, true);
1654
+ var {seconds: v7_0, nanoseconds: v7_1 } = e;
1655
+ dataView(memory0).setBigInt64(arg4 + 40, toUint64(v7_0), true);
1656
+ dataView(memory0).setInt32(arg4 + 48, toUint32(v7_1), true);
1657
+ }
1658
+ var variant10 = v5_4;
1659
+ if (variant10 === null || variant10=== undefined) {
1660
+ dataView(memory0).setInt8(arg4 + 56, 0, true);
1661
+ } else {
1662
+ const e = variant10;
1663
+ dataView(memory0).setInt8(arg4 + 56, 1, true);
1664
+ var {seconds: v9_0, nanoseconds: v9_1 } = e;
1665
+ dataView(memory0).setBigInt64(arg4 + 64, toUint64(v9_0), true);
1666
+ dataView(memory0).setInt32(arg4 + 72, toUint32(v9_1), true);
1667
+ }
1668
+ var variant12 = v5_5;
1669
+ if (variant12 === null || variant12=== undefined) {
1670
+ dataView(memory0).setInt8(arg4 + 80, 0, true);
1671
+ } else {
1672
+ const e = variant12;
1673
+ dataView(memory0).setInt8(arg4 + 80, 1, true);
1674
+ var {seconds: v11_0, nanoseconds: v11_1 } = e;
1675
+ dataView(memory0).setBigInt64(arg4 + 88, toUint64(v11_0), true);
1676
+ dataView(memory0).setInt32(arg4 + 96, toUint32(v11_1), true);
1677
+ }
1678
+ break;
1679
+ }
1680
+ case 'err': {
1681
+ const e = variant14.val;
1682
+ dataView(memory0).setInt8(arg4 + 0, 1, true);
1683
+ var val13 = e;
1684
+ let enum13;
1685
+ switch (val13) {
1686
+ case 'access': {
1687
+ enum13 = 0;
1688
+ break;
1689
+ }
1690
+ case 'would-block': {
1691
+ enum13 = 1;
1692
+ break;
1693
+ }
1694
+ case 'already': {
1695
+ enum13 = 2;
1696
+ break;
1697
+ }
1698
+ case 'bad-descriptor': {
1699
+ enum13 = 3;
1700
+ break;
1701
+ }
1702
+ case 'busy': {
1703
+ enum13 = 4;
1704
+ break;
1705
+ }
1706
+ case 'deadlock': {
1707
+ enum13 = 5;
1708
+ break;
1709
+ }
1710
+ case 'quota': {
1711
+ enum13 = 6;
1712
+ break;
1713
+ }
1714
+ case 'exist': {
1715
+ enum13 = 7;
1716
+ break;
1717
+ }
1718
+ case 'file-too-large': {
1719
+ enum13 = 8;
1720
+ break;
1721
+ }
1722
+ case 'illegal-byte-sequence': {
1723
+ enum13 = 9;
1724
+ break;
1725
+ }
1726
+ case 'in-progress': {
1727
+ enum13 = 10;
1728
+ break;
1729
+ }
1730
+ case 'interrupted': {
1731
+ enum13 = 11;
1732
+ break;
1733
+ }
1734
+ case 'invalid': {
1735
+ enum13 = 12;
1736
+ break;
1737
+ }
1738
+ case 'io': {
1739
+ enum13 = 13;
1740
+ break;
1741
+ }
1742
+ case 'is-directory': {
1743
+ enum13 = 14;
1744
+ break;
1745
+ }
1746
+ case 'loop': {
1747
+ enum13 = 15;
1748
+ break;
1749
+ }
1750
+ case 'too-many-links': {
1751
+ enum13 = 16;
1752
+ break;
1753
+ }
1754
+ case 'message-size': {
1755
+ enum13 = 17;
1756
+ break;
1757
+ }
1758
+ case 'name-too-long': {
1759
+ enum13 = 18;
1760
+ break;
1761
+ }
1762
+ case 'no-device': {
1763
+ enum13 = 19;
1764
+ break;
1765
+ }
1766
+ case 'no-entry': {
1767
+ enum13 = 20;
1768
+ break;
1769
+ }
1770
+ case 'no-lock': {
1771
+ enum13 = 21;
1772
+ break;
1773
+ }
1774
+ case 'insufficient-memory': {
1775
+ enum13 = 22;
1776
+ break;
1777
+ }
1778
+ case 'insufficient-space': {
1779
+ enum13 = 23;
1780
+ break;
1781
+ }
1782
+ case 'not-directory': {
1783
+ enum13 = 24;
1784
+ break;
1785
+ }
1786
+ case 'not-empty': {
1787
+ enum13 = 25;
1788
+ break;
1789
+ }
1790
+ case 'not-recoverable': {
1791
+ enum13 = 26;
1792
+ break;
1793
+ }
1794
+ case 'unsupported': {
1795
+ enum13 = 27;
1796
+ break;
1797
+ }
1798
+ case 'no-tty': {
1799
+ enum13 = 28;
1800
+ break;
1801
+ }
1802
+ case 'no-such-device': {
1803
+ enum13 = 29;
1804
+ break;
1805
+ }
1806
+ case 'overflow': {
1807
+ enum13 = 30;
1808
+ break;
1809
+ }
1810
+ case 'not-permitted': {
1811
+ enum13 = 31;
1812
+ break;
1813
+ }
1814
+ case 'pipe': {
1815
+ enum13 = 32;
1816
+ break;
1817
+ }
1818
+ case 'read-only': {
1819
+ enum13 = 33;
1820
+ break;
1821
+ }
1822
+ case 'invalid-seek': {
1823
+ enum13 = 34;
1824
+ break;
1825
+ }
1826
+ case 'text-file-busy': {
1827
+ enum13 = 35;
1828
+ break;
1829
+ }
1830
+ case 'cross-device': {
1831
+ enum13 = 36;
1832
+ break;
1833
+ }
1834
+ default: {
1835
+ if ((e) instanceof Error) {
1836
+ console.error(e);
1837
+ }
1838
+
1839
+ throw new TypeError(`"${val13}" is not one of the cases of error-code`);
1840
+ }
1841
+ }
1842
+ dataView(memory0).setInt8(arg4 + 8, enum13, true);
1843
+ break;
1844
+ }
1845
+ default: {
1846
+ throw new TypeError('invalid variant specified for result');
1847
+ }
1848
+ }
1849
+ }
1850
+
1851
+ function trampoline19(arg0, arg1, arg2, arg3, arg4, arg5, arg6) {
1852
+ var handle1 = arg0;
1853
+ var rep2 = handleTable5[(handle1 << 1) + 1] & ~T_FLAG;
1854
+ var rsc0 = captureTable5.get(rep2);
1855
+ if (!rsc0) {
1856
+ rsc0 = Object.create(Descriptor.prototype);
1857
+ Object.defineProperty(rsc0, symbolRscHandle, { writable: true, value: handle1});
1858
+ Object.defineProperty(rsc0, symbolRscRep, { writable: true, value: rep2});
1859
+ }
1860
+ if ((arg1 & 4294967294) !== 0) {
1861
+ throw new TypeError('flags have extraneous bits set');
1862
+ }
1863
+ var flags3 = {
1864
+ symlinkFollow: Boolean(arg1 & 1),
1865
+ };
1866
+ var ptr4 = arg2;
1867
+ var len4 = arg3;
1868
+ var result4 = utf8Decoder.decode(new Uint8Array(memory0.buffer, ptr4, len4));
1869
+ if ((arg4 & 4294967280) !== 0) {
1870
+ throw new TypeError('flags have extraneous bits set');
1871
+ }
1872
+ var flags5 = {
1873
+ create: Boolean(arg4 & 1),
1874
+ directory: Boolean(arg4 & 2),
1875
+ exclusive: Boolean(arg4 & 4),
1876
+ truncate: Boolean(arg4 & 8),
1877
+ };
1878
+ if ((arg5 & 4294967232) !== 0) {
1879
+ throw new TypeError('flags have extraneous bits set');
1880
+ }
1881
+ var flags6 = {
1882
+ read: Boolean(arg5 & 1),
1883
+ write: Boolean(arg5 & 2),
1884
+ fileIntegritySync: Boolean(arg5 & 4),
1885
+ dataIntegritySync: Boolean(arg5 & 8),
1886
+ requestedWriteSync: Boolean(arg5 & 16),
1887
+ mutateDirectory: Boolean(arg5 & 32),
1888
+ };
1889
+ let ret;
1890
+ try {
1891
+ ret = { tag: 'ok', val: rsc0.openAt(flags3, result4, flags5, flags6)};
1892
+ } catch (e) {
1893
+ ret = { tag: 'err', val: getErrorPayload(e) };
1894
+ }
1895
+ rsc0[symbolRscHandle] = null;
1896
+ var variant9 = ret;
1897
+ switch (variant9.tag) {
1898
+ case 'ok': {
1899
+ const e = variant9.val;
1900
+ dataView(memory0).setInt8(arg6 + 0, 0, true);
1901
+ if (!(e instanceof Descriptor)) {
1902
+ throw new TypeError('Resource error: Not a valid "Descriptor" resource.');
1903
+ }
1904
+ var handle7 = e[symbolRscHandle];
1905
+ if (!handle7) {
1906
+ const rep = e[symbolRscRep] || ++captureCnt5;
1907
+ captureTable5.set(rep, e);
1908
+ handle7 = rscTableCreateOwn(handleTable5, rep);
1909
+ }
1910
+ dataView(memory0).setInt32(arg6 + 4, handle7, true);
1911
+ break;
1912
+ }
1913
+ case 'err': {
1914
+ const e = variant9.val;
1915
+ dataView(memory0).setInt8(arg6 + 0, 1, true);
1916
+ var val8 = e;
1917
+ let enum8;
1918
+ switch (val8) {
1919
+ case 'access': {
1920
+ enum8 = 0;
1921
+ break;
1922
+ }
1923
+ case 'would-block': {
1924
+ enum8 = 1;
1925
+ break;
1926
+ }
1927
+ case 'already': {
1928
+ enum8 = 2;
1929
+ break;
1930
+ }
1931
+ case 'bad-descriptor': {
1932
+ enum8 = 3;
1933
+ break;
1934
+ }
1935
+ case 'busy': {
1936
+ enum8 = 4;
1937
+ break;
1938
+ }
1939
+ case 'deadlock': {
1940
+ enum8 = 5;
1941
+ break;
1942
+ }
1943
+ case 'quota': {
1944
+ enum8 = 6;
1945
+ break;
1946
+ }
1947
+ case 'exist': {
1948
+ enum8 = 7;
1949
+ break;
1950
+ }
1951
+ case 'file-too-large': {
1952
+ enum8 = 8;
1953
+ break;
1954
+ }
1955
+ case 'illegal-byte-sequence': {
1956
+ enum8 = 9;
1957
+ break;
1958
+ }
1959
+ case 'in-progress': {
1960
+ enum8 = 10;
1961
+ break;
1962
+ }
1963
+ case 'interrupted': {
1964
+ enum8 = 11;
1965
+ break;
1966
+ }
1967
+ case 'invalid': {
1968
+ enum8 = 12;
1969
+ break;
1970
+ }
1971
+ case 'io': {
1972
+ enum8 = 13;
1973
+ break;
1974
+ }
1975
+ case 'is-directory': {
1976
+ enum8 = 14;
1977
+ break;
1978
+ }
1979
+ case 'loop': {
1980
+ enum8 = 15;
1981
+ break;
1982
+ }
1983
+ case 'too-many-links': {
1984
+ enum8 = 16;
1985
+ break;
1986
+ }
1987
+ case 'message-size': {
1988
+ enum8 = 17;
1989
+ break;
1990
+ }
1991
+ case 'name-too-long': {
1992
+ enum8 = 18;
1993
+ break;
1994
+ }
1995
+ case 'no-device': {
1996
+ enum8 = 19;
1997
+ break;
1998
+ }
1999
+ case 'no-entry': {
2000
+ enum8 = 20;
2001
+ break;
2002
+ }
2003
+ case 'no-lock': {
2004
+ enum8 = 21;
2005
+ break;
2006
+ }
2007
+ case 'insufficient-memory': {
2008
+ enum8 = 22;
2009
+ break;
2010
+ }
2011
+ case 'insufficient-space': {
2012
+ enum8 = 23;
2013
+ break;
2014
+ }
2015
+ case 'not-directory': {
2016
+ enum8 = 24;
2017
+ break;
2018
+ }
2019
+ case 'not-empty': {
2020
+ enum8 = 25;
2021
+ break;
2022
+ }
2023
+ case 'not-recoverable': {
2024
+ enum8 = 26;
2025
+ break;
2026
+ }
2027
+ case 'unsupported': {
2028
+ enum8 = 27;
2029
+ break;
2030
+ }
2031
+ case 'no-tty': {
2032
+ enum8 = 28;
2033
+ break;
2034
+ }
2035
+ case 'no-such-device': {
2036
+ enum8 = 29;
2037
+ break;
2038
+ }
2039
+ case 'overflow': {
2040
+ enum8 = 30;
2041
+ break;
2042
+ }
2043
+ case 'not-permitted': {
2044
+ enum8 = 31;
2045
+ break;
2046
+ }
2047
+ case 'pipe': {
2048
+ enum8 = 32;
2049
+ break;
2050
+ }
2051
+ case 'read-only': {
2052
+ enum8 = 33;
2053
+ break;
2054
+ }
2055
+ case 'invalid-seek': {
2056
+ enum8 = 34;
2057
+ break;
2058
+ }
2059
+ case 'text-file-busy': {
2060
+ enum8 = 35;
2061
+ break;
2062
+ }
2063
+ case 'cross-device': {
2064
+ enum8 = 36;
2065
+ break;
2066
+ }
2067
+ default: {
2068
+ if ((e) instanceof Error) {
2069
+ console.error(e);
2070
+ }
2071
+
2072
+ throw new TypeError(`"${val8}" is not one of the cases of error-code`);
2073
+ }
2074
+ }
2075
+ dataView(memory0).setInt8(arg6 + 4, enum8, true);
2076
+ break;
2077
+ }
2078
+ default: {
2079
+ throw new TypeError('invalid variant specified for result');
2080
+ }
2081
+ }
2082
+ }
2083
+
2084
+ function trampoline20(arg0, arg1) {
2085
+ var handle1 = arg0;
2086
+ var rep2 = handleTable5[(handle1 << 1) + 1] & ~T_FLAG;
2087
+ var rsc0 = captureTable5.get(rep2);
2088
+ if (!rsc0) {
2089
+ rsc0 = Object.create(Descriptor.prototype);
2090
+ Object.defineProperty(rsc0, symbolRscHandle, { writable: true, value: handle1});
2091
+ Object.defineProperty(rsc0, symbolRscRep, { writable: true, value: rep2});
2092
+ }
2093
+ let ret;
2094
+ try {
2095
+ ret = { tag: 'ok', val: rsc0.metadataHash()};
2096
+ } catch (e) {
2097
+ ret = { tag: 'err', val: getErrorPayload(e) };
2098
+ }
2099
+ rsc0[symbolRscHandle] = null;
2100
+ var variant5 = ret;
2101
+ switch (variant5.tag) {
2102
+ case 'ok': {
2103
+ const e = variant5.val;
2104
+ dataView(memory0).setInt8(arg1 + 0, 0, true);
2105
+ var {lower: v3_0, upper: v3_1 } = e;
2106
+ dataView(memory0).setBigInt64(arg1 + 8, toUint64(v3_0), true);
2107
+ dataView(memory0).setBigInt64(arg1 + 16, toUint64(v3_1), true);
2108
+ break;
2109
+ }
2110
+ case 'err': {
2111
+ const e = variant5.val;
1193
2112
  dataView(memory0).setInt8(arg1 + 0, 1, true);
1194
- var val11 = e;
1195
- let enum11;
1196
- switch (val11) {
2113
+ var val4 = e;
2114
+ let enum4;
2115
+ switch (val4) {
1197
2116
  case 'access': {
1198
- enum11 = 0;
2117
+ enum4 = 0;
1199
2118
  break;
1200
2119
  }
1201
2120
  case 'would-block': {
1202
- enum11 = 1;
2121
+ enum4 = 1;
1203
2122
  break;
1204
2123
  }
1205
2124
  case 'already': {
1206
- enum11 = 2;
2125
+ enum4 = 2;
1207
2126
  break;
1208
2127
  }
1209
2128
  case 'bad-descriptor': {
1210
- enum11 = 3;
2129
+ enum4 = 3;
1211
2130
  break;
1212
2131
  }
1213
2132
  case 'busy': {
1214
- enum11 = 4;
2133
+ enum4 = 4;
1215
2134
  break;
1216
2135
  }
1217
2136
  case 'deadlock': {
1218
- enum11 = 5;
2137
+ enum4 = 5;
1219
2138
  break;
1220
2139
  }
1221
2140
  case 'quota': {
1222
- enum11 = 6;
2141
+ enum4 = 6;
1223
2142
  break;
1224
2143
  }
1225
2144
  case 'exist': {
1226
- enum11 = 7;
2145
+ enum4 = 7;
1227
2146
  break;
1228
2147
  }
1229
2148
  case 'file-too-large': {
1230
- enum11 = 8;
2149
+ enum4 = 8;
1231
2150
  break;
1232
2151
  }
1233
2152
  case 'illegal-byte-sequence': {
1234
- enum11 = 9;
2153
+ enum4 = 9;
1235
2154
  break;
1236
2155
  }
1237
2156
  case 'in-progress': {
1238
- enum11 = 10;
2157
+ enum4 = 10;
1239
2158
  break;
1240
2159
  }
1241
2160
  case 'interrupted': {
1242
- enum11 = 11;
2161
+ enum4 = 11;
1243
2162
  break;
1244
2163
  }
1245
2164
  case 'invalid': {
1246
- enum11 = 12;
2165
+ enum4 = 12;
1247
2166
  break;
1248
2167
  }
1249
2168
  case 'io': {
1250
- enum11 = 13;
2169
+ enum4 = 13;
1251
2170
  break;
1252
2171
  }
1253
2172
  case 'is-directory': {
1254
- enum11 = 14;
2173
+ enum4 = 14;
1255
2174
  break;
1256
2175
  }
1257
2176
  case 'loop': {
1258
- enum11 = 15;
2177
+ enum4 = 15;
1259
2178
  break;
1260
2179
  }
1261
2180
  case 'too-many-links': {
1262
- enum11 = 16;
2181
+ enum4 = 16;
1263
2182
  break;
1264
2183
  }
1265
2184
  case 'message-size': {
1266
- enum11 = 17;
2185
+ enum4 = 17;
1267
2186
  break;
1268
2187
  }
1269
2188
  case 'name-too-long': {
1270
- enum11 = 18;
2189
+ enum4 = 18;
1271
2190
  break;
1272
2191
  }
1273
2192
  case 'no-device': {
1274
- enum11 = 19;
2193
+ enum4 = 19;
1275
2194
  break;
1276
2195
  }
1277
2196
  case 'no-entry': {
1278
- enum11 = 20;
2197
+ enum4 = 20;
1279
2198
  break;
1280
2199
  }
1281
2200
  case 'no-lock': {
1282
- enum11 = 21;
2201
+ enum4 = 21;
1283
2202
  break;
1284
2203
  }
1285
2204
  case 'insufficient-memory': {
1286
- enum11 = 22;
2205
+ enum4 = 22;
1287
2206
  break;
1288
2207
  }
1289
2208
  case 'insufficient-space': {
1290
- enum11 = 23;
2209
+ enum4 = 23;
1291
2210
  break;
1292
2211
  }
1293
2212
  case 'not-directory': {
1294
- enum11 = 24;
2213
+ enum4 = 24;
1295
2214
  break;
1296
2215
  }
1297
2216
  case 'not-empty': {
1298
- enum11 = 25;
2217
+ enum4 = 25;
1299
2218
  break;
1300
2219
  }
1301
2220
  case 'not-recoverable': {
1302
- enum11 = 26;
2221
+ enum4 = 26;
1303
2222
  break;
1304
2223
  }
1305
2224
  case 'unsupported': {
1306
- enum11 = 27;
2225
+ enum4 = 27;
1307
2226
  break;
1308
2227
  }
1309
2228
  case 'no-tty': {
1310
- enum11 = 28;
2229
+ enum4 = 28;
1311
2230
  break;
1312
2231
  }
1313
2232
  case 'no-such-device': {
1314
- enum11 = 29;
2233
+ enum4 = 29;
1315
2234
  break;
1316
2235
  }
1317
2236
  case 'overflow': {
1318
- enum11 = 30;
2237
+ enum4 = 30;
1319
2238
  break;
1320
2239
  }
1321
2240
  case 'not-permitted': {
1322
- enum11 = 31;
2241
+ enum4 = 31;
1323
2242
  break;
1324
2243
  }
1325
2244
  case 'pipe': {
1326
- enum11 = 32;
2245
+ enum4 = 32;
1327
2246
  break;
1328
2247
  }
1329
2248
  case 'read-only': {
1330
- enum11 = 33;
2249
+ enum4 = 33;
1331
2250
  break;
1332
2251
  }
1333
2252
  case 'invalid-seek': {
1334
- enum11 = 34;
2253
+ enum4 = 34;
1335
2254
  break;
1336
2255
  }
1337
2256
  case 'text-file-busy': {
1338
- enum11 = 35;
2257
+ enum4 = 35;
1339
2258
  break;
1340
2259
  }
1341
2260
  case 'cross-device': {
1342
- enum11 = 36;
2261
+ enum4 = 36;
1343
2262
  break;
1344
2263
  }
1345
2264
  default: {
@@ -1347,10 +2266,10 @@ function trampoline16(arg0, arg1) {
1347
2266
  console.error(e);
1348
2267
  }
1349
2268
 
1350
- throw new TypeError(`"${val11}" is not one of the cases of error-code`);
2269
+ throw new TypeError(`"${val4}" is not one of the cases of error-code`);
1351
2270
  }
1352
2271
  }
1353
- dataView(memory0).setInt8(arg1 + 8, enum11, true);
2272
+ dataView(memory0).setInt8(arg1 + 8, enum4, true);
1354
2273
  break;
1355
2274
  }
1356
2275
  default: {
@@ -1359,7 +2278,7 @@ function trampoline16(arg0, arg1) {
1359
2278
  }
1360
2279
  }
1361
2280
 
1362
- function trampoline17(arg0, arg1, arg2, arg3, arg4, arg5, arg6) {
2281
+ function trampoline21(arg0, arg1, arg2, arg3, arg4) {
1363
2282
  var handle1 = arg0;
1364
2283
  var rep2 = handleTable5[(handle1 << 1) + 1] & ~T_FLAG;
1365
2284
  var rsc0 = captureTable5.get(rep2);
@@ -1377,202 +2296,175 @@ function trampoline17(arg0, arg1, arg2, arg3, arg4, arg5, arg6) {
1377
2296
  var ptr4 = arg2;
1378
2297
  var len4 = arg3;
1379
2298
  var result4 = utf8Decoder.decode(new Uint8Array(memory0.buffer, ptr4, len4));
1380
- if ((arg4 & 4294967280) !== 0) {
1381
- throw new TypeError('flags have extraneous bits set');
1382
- }
1383
- var flags5 = {
1384
- create: Boolean(arg4 & 1),
1385
- directory: Boolean(arg4 & 2),
1386
- exclusive: Boolean(arg4 & 4),
1387
- truncate: Boolean(arg4 & 8),
1388
- };
1389
- if ((arg5 & 4294967232) !== 0) {
1390
- throw new TypeError('flags have extraneous bits set');
1391
- }
1392
- var flags6 = {
1393
- read: Boolean(arg5 & 1),
1394
- write: Boolean(arg5 & 2),
1395
- fileIntegritySync: Boolean(arg5 & 4),
1396
- dataIntegritySync: Boolean(arg5 & 8),
1397
- requestedWriteSync: Boolean(arg5 & 16),
1398
- mutateDirectory: Boolean(arg5 & 32),
1399
- };
1400
2299
  let ret;
1401
2300
  try {
1402
- ret = { tag: 'ok', val: rsc0.openAt(flags3, result4, flags5, flags6)};
2301
+ ret = { tag: 'ok', val: rsc0.metadataHashAt(flags3, result4)};
1403
2302
  } catch (e) {
1404
2303
  ret = { tag: 'err', val: getErrorPayload(e) };
1405
2304
  }
1406
2305
  rsc0[symbolRscHandle] = null;
1407
- var variant9 = ret;
1408
- switch (variant9.tag) {
2306
+ var variant7 = ret;
2307
+ switch (variant7.tag) {
1409
2308
  case 'ok': {
1410
- const e = variant9.val;
1411
- dataView(memory0).setInt8(arg6 + 0, 0, true);
1412
- if (!(e instanceof Descriptor)) {
1413
- throw new TypeError('Resource error: Not a valid "Descriptor" resource.');
1414
- }
1415
- var handle7 = e[symbolRscHandle];
1416
- if (!handle7) {
1417
- const rep = e[symbolRscRep] || ++captureCnt5;
1418
- captureTable5.set(rep, e);
1419
- handle7 = rscTableCreateOwn(handleTable5, rep);
1420
- }
1421
- dataView(memory0).setInt32(arg6 + 4, handle7, true);
2309
+ const e = variant7.val;
2310
+ dataView(memory0).setInt8(arg4 + 0, 0, true);
2311
+ var {lower: v5_0, upper: v5_1 } = e;
2312
+ dataView(memory0).setBigInt64(arg4 + 8, toUint64(v5_0), true);
2313
+ dataView(memory0).setBigInt64(arg4 + 16, toUint64(v5_1), true);
1422
2314
  break;
1423
2315
  }
1424
2316
  case 'err': {
1425
- const e = variant9.val;
1426
- dataView(memory0).setInt8(arg6 + 0, 1, true);
1427
- var val8 = e;
1428
- let enum8;
1429
- switch (val8) {
2317
+ const e = variant7.val;
2318
+ dataView(memory0).setInt8(arg4 + 0, 1, true);
2319
+ var val6 = e;
2320
+ let enum6;
2321
+ switch (val6) {
1430
2322
  case 'access': {
1431
- enum8 = 0;
2323
+ enum6 = 0;
1432
2324
  break;
1433
2325
  }
1434
2326
  case 'would-block': {
1435
- enum8 = 1;
2327
+ enum6 = 1;
1436
2328
  break;
1437
2329
  }
1438
2330
  case 'already': {
1439
- enum8 = 2;
2331
+ enum6 = 2;
1440
2332
  break;
1441
2333
  }
1442
2334
  case 'bad-descriptor': {
1443
- enum8 = 3;
2335
+ enum6 = 3;
1444
2336
  break;
1445
2337
  }
1446
2338
  case 'busy': {
1447
- enum8 = 4;
2339
+ enum6 = 4;
1448
2340
  break;
1449
2341
  }
1450
2342
  case 'deadlock': {
1451
- enum8 = 5;
2343
+ enum6 = 5;
1452
2344
  break;
1453
2345
  }
1454
2346
  case 'quota': {
1455
- enum8 = 6;
2347
+ enum6 = 6;
1456
2348
  break;
1457
2349
  }
1458
2350
  case 'exist': {
1459
- enum8 = 7;
2351
+ enum6 = 7;
1460
2352
  break;
1461
2353
  }
1462
2354
  case 'file-too-large': {
1463
- enum8 = 8;
2355
+ enum6 = 8;
1464
2356
  break;
1465
2357
  }
1466
2358
  case 'illegal-byte-sequence': {
1467
- enum8 = 9;
2359
+ enum6 = 9;
1468
2360
  break;
1469
2361
  }
1470
2362
  case 'in-progress': {
1471
- enum8 = 10;
2363
+ enum6 = 10;
1472
2364
  break;
1473
2365
  }
1474
2366
  case 'interrupted': {
1475
- enum8 = 11;
2367
+ enum6 = 11;
1476
2368
  break;
1477
2369
  }
1478
2370
  case 'invalid': {
1479
- enum8 = 12;
2371
+ enum6 = 12;
1480
2372
  break;
1481
2373
  }
1482
2374
  case 'io': {
1483
- enum8 = 13;
2375
+ enum6 = 13;
1484
2376
  break;
1485
2377
  }
1486
2378
  case 'is-directory': {
1487
- enum8 = 14;
2379
+ enum6 = 14;
1488
2380
  break;
1489
2381
  }
1490
2382
  case 'loop': {
1491
- enum8 = 15;
2383
+ enum6 = 15;
1492
2384
  break;
1493
2385
  }
1494
2386
  case 'too-many-links': {
1495
- enum8 = 16;
2387
+ enum6 = 16;
1496
2388
  break;
1497
2389
  }
1498
2390
  case 'message-size': {
1499
- enum8 = 17;
2391
+ enum6 = 17;
1500
2392
  break;
1501
2393
  }
1502
2394
  case 'name-too-long': {
1503
- enum8 = 18;
2395
+ enum6 = 18;
1504
2396
  break;
1505
2397
  }
1506
2398
  case 'no-device': {
1507
- enum8 = 19;
2399
+ enum6 = 19;
1508
2400
  break;
1509
2401
  }
1510
2402
  case 'no-entry': {
1511
- enum8 = 20;
2403
+ enum6 = 20;
1512
2404
  break;
1513
2405
  }
1514
2406
  case 'no-lock': {
1515
- enum8 = 21;
2407
+ enum6 = 21;
1516
2408
  break;
1517
2409
  }
1518
2410
  case 'insufficient-memory': {
1519
- enum8 = 22;
2411
+ enum6 = 22;
1520
2412
  break;
1521
2413
  }
1522
2414
  case 'insufficient-space': {
1523
- enum8 = 23;
2415
+ enum6 = 23;
1524
2416
  break;
1525
2417
  }
1526
2418
  case 'not-directory': {
1527
- enum8 = 24;
2419
+ enum6 = 24;
1528
2420
  break;
1529
2421
  }
1530
2422
  case 'not-empty': {
1531
- enum8 = 25;
2423
+ enum6 = 25;
1532
2424
  break;
1533
2425
  }
1534
2426
  case 'not-recoverable': {
1535
- enum8 = 26;
2427
+ enum6 = 26;
1536
2428
  break;
1537
2429
  }
1538
2430
  case 'unsupported': {
1539
- enum8 = 27;
2431
+ enum6 = 27;
1540
2432
  break;
1541
2433
  }
1542
2434
  case 'no-tty': {
1543
- enum8 = 28;
2435
+ enum6 = 28;
1544
2436
  break;
1545
2437
  }
1546
2438
  case 'no-such-device': {
1547
- enum8 = 29;
2439
+ enum6 = 29;
1548
2440
  break;
1549
2441
  }
1550
2442
  case 'overflow': {
1551
- enum8 = 30;
2443
+ enum6 = 30;
1552
2444
  break;
1553
2445
  }
1554
2446
  case 'not-permitted': {
1555
- enum8 = 31;
2447
+ enum6 = 31;
1556
2448
  break;
1557
2449
  }
1558
2450
  case 'pipe': {
1559
- enum8 = 32;
2451
+ enum6 = 32;
1560
2452
  break;
1561
2453
  }
1562
2454
  case 'read-only': {
1563
- enum8 = 33;
2455
+ enum6 = 33;
1564
2456
  break;
1565
2457
  }
1566
2458
  case 'invalid-seek': {
1567
- enum8 = 34;
2459
+ enum6 = 34;
1568
2460
  break;
1569
2461
  }
1570
2462
  case 'text-file-busy': {
1571
- enum8 = 35;
2463
+ enum6 = 35;
1572
2464
  break;
1573
2465
  }
1574
2466
  case 'cross-device': {
1575
- enum8 = 36;
2467
+ enum6 = 36;
1576
2468
  break;
1577
2469
  }
1578
2470
  default: {
@@ -1580,10 +2472,10 @@ function trampoline17(arg0, arg1, arg2, arg3, arg4, arg5, arg6) {
1580
2472
  console.error(e);
1581
2473
  }
1582
2474
 
1583
- throw new TypeError(`"${val8}" is not one of the cases of error-code`);
2475
+ throw new TypeError(`"${val6}" is not one of the cases of error-code`);
1584
2476
  }
1585
2477
  }
1586
- dataView(memory0).setInt8(arg6 + 4, enum8, true);
2478
+ dataView(memory0).setInt8(arg4 + 8, enum6, true);
1587
2479
  break;
1588
2480
  }
1589
2481
  default: {
@@ -1592,184 +2484,237 @@ function trampoline17(arg0, arg1, arg2, arg3, arg4, arg5, arg6) {
1592
2484
  }
1593
2485
  }
1594
2486
 
1595
- function trampoline18(arg0, arg1) {
2487
+ function trampoline22(arg0, arg1) {
1596
2488
  var handle1 = arg0;
1597
- var rep2 = handleTable5[(handle1 << 1) + 1] & ~T_FLAG;
1598
- var rsc0 = captureTable5.get(rep2);
2489
+ var rep2 = handleTable6[(handle1 << 1) + 1] & ~T_FLAG;
2490
+ var rsc0 = captureTable6.get(rep2);
1599
2491
  if (!rsc0) {
1600
- rsc0 = Object.create(Descriptor.prototype);
2492
+ rsc0 = Object.create(DirectoryEntryStream.prototype);
1601
2493
  Object.defineProperty(rsc0, symbolRscHandle, { writable: true, value: handle1});
1602
2494
  Object.defineProperty(rsc0, symbolRscRep, { writable: true, value: rep2});
1603
2495
  }
1604
2496
  let ret;
1605
2497
  try {
1606
- ret = { tag: 'ok', val: rsc0.metadataHash()};
2498
+ ret = { tag: 'ok', val: rsc0.readDirectoryEntry()};
1607
2499
  } catch (e) {
1608
2500
  ret = { tag: 'err', val: getErrorPayload(e) };
1609
2501
  }
1610
2502
  rsc0[symbolRscHandle] = null;
1611
- var variant5 = ret;
1612
- switch (variant5.tag) {
2503
+ var variant8 = ret;
2504
+ switch (variant8.tag) {
1613
2505
  case 'ok': {
1614
- const e = variant5.val;
2506
+ const e = variant8.val;
1615
2507
  dataView(memory0).setInt8(arg1 + 0, 0, true);
1616
- var {lower: v3_0, upper: v3_1 } = e;
1617
- dataView(memory0).setBigInt64(arg1 + 8, toUint64(v3_0), true);
1618
- dataView(memory0).setBigInt64(arg1 + 16, toUint64(v3_1), true);
2508
+ var variant6 = e;
2509
+ if (variant6 === null || variant6=== undefined) {
2510
+ dataView(memory0).setInt8(arg1 + 4, 0, true);
2511
+ } else {
2512
+ const e = variant6;
2513
+ dataView(memory0).setInt8(arg1 + 4, 1, true);
2514
+ var {type: v3_0, name: v3_1 } = e;
2515
+ var val4 = v3_0;
2516
+ let enum4;
2517
+ switch (val4) {
2518
+ case 'unknown': {
2519
+ enum4 = 0;
2520
+ break;
2521
+ }
2522
+ case 'block-device': {
2523
+ enum4 = 1;
2524
+ break;
2525
+ }
2526
+ case 'character-device': {
2527
+ enum4 = 2;
2528
+ break;
2529
+ }
2530
+ case 'directory': {
2531
+ enum4 = 3;
2532
+ break;
2533
+ }
2534
+ case 'fifo': {
2535
+ enum4 = 4;
2536
+ break;
2537
+ }
2538
+ case 'symbolic-link': {
2539
+ enum4 = 5;
2540
+ break;
2541
+ }
2542
+ case 'regular-file': {
2543
+ enum4 = 6;
2544
+ break;
2545
+ }
2546
+ case 'socket': {
2547
+ enum4 = 7;
2548
+ break;
2549
+ }
2550
+ default: {
2551
+ if ((v3_0) instanceof Error) {
2552
+ console.error(v3_0);
2553
+ }
2554
+
2555
+ throw new TypeError(`"${val4}" is not one of the cases of descriptor-type`);
2556
+ }
2557
+ }
2558
+ dataView(memory0).setInt8(arg1 + 8, enum4, true);
2559
+ var ptr5 = utf8Encode(v3_1, realloc0, memory0);
2560
+ var len5 = utf8EncodedLen;
2561
+ dataView(memory0).setInt32(arg1 + 16, len5, true);
2562
+ dataView(memory0).setInt32(arg1 + 12, ptr5, true);
2563
+ }
1619
2564
  break;
1620
2565
  }
1621
2566
  case 'err': {
1622
- const e = variant5.val;
2567
+ const e = variant8.val;
1623
2568
  dataView(memory0).setInt8(arg1 + 0, 1, true);
1624
- var val4 = e;
1625
- let enum4;
1626
- switch (val4) {
2569
+ var val7 = e;
2570
+ let enum7;
2571
+ switch (val7) {
1627
2572
  case 'access': {
1628
- enum4 = 0;
2573
+ enum7 = 0;
1629
2574
  break;
1630
2575
  }
1631
2576
  case 'would-block': {
1632
- enum4 = 1;
2577
+ enum7 = 1;
1633
2578
  break;
1634
2579
  }
1635
2580
  case 'already': {
1636
- enum4 = 2;
2581
+ enum7 = 2;
1637
2582
  break;
1638
2583
  }
1639
2584
  case 'bad-descriptor': {
1640
- enum4 = 3;
2585
+ enum7 = 3;
1641
2586
  break;
1642
2587
  }
1643
2588
  case 'busy': {
1644
- enum4 = 4;
2589
+ enum7 = 4;
1645
2590
  break;
1646
2591
  }
1647
2592
  case 'deadlock': {
1648
- enum4 = 5;
2593
+ enum7 = 5;
1649
2594
  break;
1650
2595
  }
1651
2596
  case 'quota': {
1652
- enum4 = 6;
2597
+ enum7 = 6;
1653
2598
  break;
1654
2599
  }
1655
2600
  case 'exist': {
1656
- enum4 = 7;
2601
+ enum7 = 7;
1657
2602
  break;
1658
2603
  }
1659
2604
  case 'file-too-large': {
1660
- enum4 = 8;
2605
+ enum7 = 8;
1661
2606
  break;
1662
2607
  }
1663
2608
  case 'illegal-byte-sequence': {
1664
- enum4 = 9;
2609
+ enum7 = 9;
1665
2610
  break;
1666
2611
  }
1667
2612
  case 'in-progress': {
1668
- enum4 = 10;
2613
+ enum7 = 10;
1669
2614
  break;
1670
2615
  }
1671
2616
  case 'interrupted': {
1672
- enum4 = 11;
2617
+ enum7 = 11;
1673
2618
  break;
1674
2619
  }
1675
2620
  case 'invalid': {
1676
- enum4 = 12;
2621
+ enum7 = 12;
1677
2622
  break;
1678
2623
  }
1679
2624
  case 'io': {
1680
- enum4 = 13;
2625
+ enum7 = 13;
1681
2626
  break;
1682
2627
  }
1683
2628
  case 'is-directory': {
1684
- enum4 = 14;
2629
+ enum7 = 14;
1685
2630
  break;
1686
2631
  }
1687
2632
  case 'loop': {
1688
- enum4 = 15;
2633
+ enum7 = 15;
1689
2634
  break;
1690
2635
  }
1691
2636
  case 'too-many-links': {
1692
- enum4 = 16;
2637
+ enum7 = 16;
1693
2638
  break;
1694
2639
  }
1695
2640
  case 'message-size': {
1696
- enum4 = 17;
2641
+ enum7 = 17;
1697
2642
  break;
1698
2643
  }
1699
2644
  case 'name-too-long': {
1700
- enum4 = 18;
2645
+ enum7 = 18;
1701
2646
  break;
1702
2647
  }
1703
2648
  case 'no-device': {
1704
- enum4 = 19;
2649
+ enum7 = 19;
1705
2650
  break;
1706
2651
  }
1707
2652
  case 'no-entry': {
1708
- enum4 = 20;
2653
+ enum7 = 20;
1709
2654
  break;
1710
2655
  }
1711
2656
  case 'no-lock': {
1712
- enum4 = 21;
2657
+ enum7 = 21;
1713
2658
  break;
1714
2659
  }
1715
2660
  case 'insufficient-memory': {
1716
- enum4 = 22;
2661
+ enum7 = 22;
1717
2662
  break;
1718
2663
  }
1719
2664
  case 'insufficient-space': {
1720
- enum4 = 23;
2665
+ enum7 = 23;
1721
2666
  break;
1722
2667
  }
1723
2668
  case 'not-directory': {
1724
- enum4 = 24;
2669
+ enum7 = 24;
1725
2670
  break;
1726
2671
  }
1727
2672
  case 'not-empty': {
1728
- enum4 = 25;
2673
+ enum7 = 25;
1729
2674
  break;
1730
2675
  }
1731
2676
  case 'not-recoverable': {
1732
- enum4 = 26;
2677
+ enum7 = 26;
1733
2678
  break;
1734
2679
  }
1735
2680
  case 'unsupported': {
1736
- enum4 = 27;
2681
+ enum7 = 27;
1737
2682
  break;
1738
2683
  }
1739
2684
  case 'no-tty': {
1740
- enum4 = 28;
2685
+ enum7 = 28;
1741
2686
  break;
1742
2687
  }
1743
2688
  case 'no-such-device': {
1744
- enum4 = 29;
2689
+ enum7 = 29;
1745
2690
  break;
1746
2691
  }
1747
2692
  case 'overflow': {
1748
- enum4 = 30;
2693
+ enum7 = 30;
1749
2694
  break;
1750
2695
  }
1751
2696
  case 'not-permitted': {
1752
- enum4 = 31;
2697
+ enum7 = 31;
1753
2698
  break;
1754
2699
  }
1755
2700
  case 'pipe': {
1756
- enum4 = 32;
2701
+ enum7 = 32;
1757
2702
  break;
1758
2703
  }
1759
2704
  case 'read-only': {
1760
- enum4 = 33;
2705
+ enum7 = 33;
1761
2706
  break;
1762
2707
  }
1763
2708
  case 'invalid-seek': {
1764
- enum4 = 34;
2709
+ enum7 = 34;
1765
2710
  break;
1766
2711
  }
1767
2712
  case 'text-file-busy': {
1768
- enum4 = 35;
2713
+ enum7 = 35;
1769
2714
  break;
1770
2715
  }
1771
2716
  case 'cross-device': {
1772
- enum4 = 36;
2717
+ enum7 = 36;
1773
2718
  break;
1774
2719
  }
1775
2720
  default: {
@@ -1777,10 +2722,10 @@ function trampoline18(arg0, arg1) {
1777
2722
  console.error(e);
1778
2723
  }
1779
2724
 
1780
- throw new TypeError(`"${val4}" is not one of the cases of error-code`);
2725
+ throw new TypeError(`"${val7}" is not one of the cases of error-code`);
1781
2726
  }
1782
2727
  }
1783
- dataView(memory0).setInt8(arg1 + 8, enum4, true);
2728
+ dataView(memory0).setInt8(arg1 + 4, enum7, true);
1784
2729
  break;
1785
2730
  }
1786
2731
  default: {
@@ -1793,7 +2738,7 @@ const captureTable0= new Map();
1793
2738
  let captureCnt0 = 0;
1794
2739
  handleTables[0] = handleTable0;
1795
2740
 
1796
- function trampoline19(arg0, arg1) {
2741
+ function trampoline23(arg0, arg1) {
1797
2742
  var handle1 = arg0;
1798
2743
  var rep2 = handleTable0[(handle1 << 1) + 1] & ~T_FLAG;
1799
2744
  var rsc0 = captureTable0.get(rep2);
@@ -1973,7 +2918,7 @@ function trampoline19(arg0, arg1) {
1973
2918
  }
1974
2919
  }
1975
2920
 
1976
- function trampoline20(arg0, arg1, arg2) {
2921
+ function trampoline24(arg0, arg1, arg2) {
1977
2922
  var handle1 = arg0;
1978
2923
  var rep2 = handleTable1[(handle1 << 1) + 1] & ~T_FLAG;
1979
2924
  var rsc0 = captureTable1.get(rep2);
@@ -2039,7 +2984,7 @@ function trampoline20(arg0, arg1, arg2) {
2039
2984
  }
2040
2985
  }
2041
2986
 
2042
- function trampoline21(arg0, arg1, arg2) {
2987
+ function trampoline25(arg0, arg1, arg2) {
2043
2988
  var handle1 = arg0;
2044
2989
  var rep2 = handleTable1[(handle1 << 1) + 1] & ~T_FLAG;
2045
2990
  var rsc0 = captureTable1.get(rep2);
@@ -2105,7 +3050,7 @@ function trampoline21(arg0, arg1, arg2) {
2105
3050
  }
2106
3051
  }
2107
3052
 
2108
- function trampoline22(arg0, arg1) {
3053
+ function trampoline26(arg0, arg1) {
2109
3054
  var handle1 = arg0;
2110
3055
  var rep2 = handleTable2[(handle1 << 1) + 1] & ~T_FLAG;
2111
3056
  var rsc0 = captureTable2.get(rep2);
@@ -2165,7 +3110,7 @@ function trampoline22(arg0, arg1) {
2165
3110
  }
2166
3111
  }
2167
3112
 
2168
- function trampoline23(arg0, arg1, arg2, arg3) {
3113
+ function trampoline27(arg0, arg1, arg2, arg3) {
2169
3114
  var handle1 = arg0;
2170
3115
  var rep2 = handleTable2[(handle1 << 1) + 1] & ~T_FLAG;
2171
3116
  var rsc0 = captureTable2.get(rep2);
@@ -2227,7 +3172,7 @@ function trampoline23(arg0, arg1, arg2, arg3) {
2227
3172
  }
2228
3173
  }
2229
3174
 
2230
- function trampoline24(arg0, arg1, arg2, arg3) {
3175
+ function trampoline28(arg0, arg1, arg2, arg3) {
2231
3176
  var handle1 = arg0;
2232
3177
  var rep2 = handleTable2[(handle1 << 1) + 1] & ~T_FLAG;
2233
3178
  var rsc0 = captureTable2.get(rep2);
@@ -2289,7 +3234,7 @@ function trampoline24(arg0, arg1, arg2, arg3) {
2289
3234
  }
2290
3235
  }
2291
3236
 
2292
- function trampoline25(arg0, arg1) {
3237
+ function trampoline29(arg0, arg1) {
2293
3238
  var handle1 = arg0;
2294
3239
  var rep2 = handleTable2[(handle1 << 1) + 1] & ~T_FLAG;
2295
3240
  var rsc0 = captureTable2.get(rep2);
@@ -2348,7 +3293,7 @@ function trampoline25(arg0, arg1) {
2348
3293
  }
2349
3294
  }
2350
3295
 
2351
- function trampoline26(arg0, arg1) {
3296
+ function trampoline30(arg0, arg1) {
2352
3297
  const ret = getRandomBytes(BigInt.asUintN(64, arg0));
2353
3298
  var val0 = ret;
2354
3299
  var len0 = val0.byteLength;
@@ -2359,7 +3304,7 @@ function trampoline26(arg0, arg1) {
2359
3304
  dataView(memory0).setInt32(arg1 + 0, ptr0, true);
2360
3305
  }
2361
3306
 
2362
- function trampoline27(arg0) {
3307
+ function trampoline31(arg0) {
2363
3308
  const ret = getEnvironment();
2364
3309
  var vec3 = ret;
2365
3310
  var len3 = vec3.length;
@@ -2384,7 +3329,7 @@ const captureTable3= new Map();
2384
3329
  let captureCnt3 = 0;
2385
3330
  handleTables[3] = handleTable3;
2386
3331
 
2387
- function trampoline28(arg0) {
3332
+ function trampoline32(arg0) {
2388
3333
  const ret = getTerminalStdin();
2389
3334
  var variant1 = ret;
2390
3335
  if (variant1 === null || variant1=== undefined) {
@@ -2409,7 +3354,7 @@ const captureTable4= new Map();
2409
3354
  let captureCnt4 = 0;
2410
3355
  handleTables[4] = handleTable4;
2411
3356
 
2412
- function trampoline29(arg0) {
3357
+ function trampoline33(arg0) {
2413
3358
  const ret = getTerminalStdout();
2414
3359
  var variant1 = ret;
2415
3360
  if (variant1 === null || variant1=== undefined) {
@@ -2430,7 +3375,7 @@ function trampoline29(arg0) {
2430
3375
  }
2431
3376
  }
2432
3377
 
2433
- function trampoline30(arg0) {
3378
+ function trampoline34(arg0) {
2434
3379
  const ret = getTerminalStderr();
2435
3380
  var variant1 = ret;
2436
3381
  if (variant1 === null || variant1=== undefined) {
@@ -2454,14 +3399,17 @@ let exports3;
2454
3399
  let realloc1;
2455
3400
  let postReturn0;
2456
3401
  let postReturn1;
2457
- const handleTable6 = [T_FLAG, 0];
2458
- const captureTable6= new Map();
2459
- let captureCnt6 = 0;
2460
- handleTables[6] = handleTable6;
2461
3402
  function trampoline0(handle) {
2462
3403
  const handleEntry = rscTableRemove(handleTable6, handle);
2463
3404
  if (handleEntry.own) {
2464
- throw new TypeError('unreachable resource trampoline')
3405
+
3406
+ const rsc = captureTable6.get(handleEntry.rep);
3407
+ if (rsc) {
3408
+ if (rsc[symbolDispose]) rsc[symbolDispose]();
3409
+ captureTable6.delete(handleEntry.rep);
3410
+ } else if (DirectoryEntryStream[symbolCabiDispose]) {
3411
+ DirectoryEntryStream[symbolCabiDispose](handleEntry.rep);
3412
+ }
2465
3413
  }
2466
3414
  }
2467
3415
  function trampoline1(handle) {
@@ -2960,22 +3908,24 @@ let _initialized = false;
2960
3908
  export const $init = (async() => {
2961
3909
  const module0 = fetchCompile(new URL('./js-component-bindgen-component.core.wasm', import.meta.url));
2962
3910
  const module1 = fetchCompile(new URL('./js-component-bindgen-component.core2.wasm', import.meta.url));
2963
- const module2 = base64Compile('AGFzbQEAAAABUQxgAX8AYAN/fn8AYAJ/fwBgB39/f39/f38AYAR/f39/AGACfn8AYAl/f39/f35+f38Bf2ACf38Bf2AEf39/fwF/YAF/AX9gA39/fwF/YAF/AAMgHwABAQICAgMCAgEBAgQEAgUAAAAABgcHCAgHBwkHCgsEBQFwAR8fB50BIAEwAAABMQABATIAAgEzAAMBNAAEATUABQE2AAYBNwAHATgACAE5AAkCMTAACgIxMQALAjEyAAwCMTMADQIxNAAOAjE1AA8CMTYAEAIxNwARAjE4ABICMTkAEwIyMAAUAjIxABUCMjIAFgIyMwAXAjI0ABgCMjUAGQIyNgAaAjI3ABsCMjgAHAIyOQAdAjMwAB4IJGltcG9ydHMBAAqZAx8JACAAQQARAAALDQAgACABIAJBAREBAAsNACAAIAEgAkECEQEACwsAIAAgAUEDEQIACwsAIAAgAUEEEQIACwsAIAAgAUEFEQIACxUAIAAgASACIAMgBCAFIAZBBhEDAAsLACAAIAFBBxECAAsLACAAIAFBCBECAAsNACAAIAEgAkEJEQEACw0AIAAgASACQQoRAQALCwAgACABQQsRAgALDwAgACABIAIgA0EMEQQACw8AIAAgASACIANBDREEAAsLACAAIAFBDhECAAsLACAAIAFBDxEFAAsJACAAQRARAAALCQAgAEEREQAACwkAIABBEhEAAAsJACAAQRMRAAALGQAgACABIAIgAyAEIAUgBiAHIAhBFBEGAAsLACAAIAFBFREHAAsLACAAIAFBFhEHAAsPACAAIAEgAiADQRcRCAALDwAgACABIAIgA0EYEQgACwsAIAAgAUEZEQcACwsAIAAgAUEaEQcACwkAIABBGxEJAAsLACAAIAFBHBEHAAsNACAAIAEgAkEdEQoACwkAIABBHhELAAsALwlwcm9kdWNlcnMBDHByb2Nlc3NlZC1ieQENd2l0LWNvbXBvbmVudAcwLjIwMS4wAPoNBG5hbWUAExJ3aXQtY29tcG9uZW50OnNoaW0B3Q0fADdpbmRpcmVjdC13YXNpOmZpbGVzeXN0ZW0vcHJlb3BlbnNAMC4yLjAtZ2V0LWRpcmVjdG9yaWVzAUdpbmRpcmVjdC13YXNpOmZpbGVzeXN0ZW0vdHlwZXNAMC4yLjAtW21ldGhvZF1kZXNjcmlwdG9yLnJlYWQtdmlhLXN0cmVhbQJIaW5kaXJlY3Qtd2FzaTpmaWxlc3lzdGVtL3R5cGVzQDAuMi4wLVttZXRob2RdZGVzY3JpcHRvci53cml0ZS12aWEtc3RyZWFtA0lpbmRpcmVjdC13YXNpOmZpbGVzeXN0ZW0vdHlwZXNAMC4yLjAtW21ldGhvZF1kZXNjcmlwdG9yLmFwcGVuZC12aWEtc3RyZWFtBEBpbmRpcmVjdC13YXNpOmZpbGVzeXN0ZW0vdHlwZXNAMC4yLjAtW21ldGhvZF1kZXNjcmlwdG9yLmdldC10eXBlBTxpbmRpcmVjdC13YXNpOmZpbGVzeXN0ZW0vdHlwZXNAMC4yLjAtW21ldGhvZF1kZXNjcmlwdG9yLnN0YXQGP2luZGlyZWN0LXdhc2k6ZmlsZXN5c3RlbS90eXBlc0AwLjIuMC1bbWV0aG9kXWRlc2NyaXB0b3Iub3Blbi1hdAdFaW5kaXJlY3Qtd2FzaTpmaWxlc3lzdGVtL3R5cGVzQDAuMi4wLVttZXRob2RdZGVzY3JpcHRvci5tZXRhZGF0YS1oYXNoCDppbmRpcmVjdC13YXNpOmZpbGVzeXN0ZW0vdHlwZXNAMC4yLjAtZmlsZXN5c3RlbS1lcnJvci1jb2RlCThpbmRpcmVjdC13YXNpOmlvL3N0cmVhbXNAMC4yLjAtW21ldGhvZF1pbnB1dC1zdHJlYW0ucmVhZApBaW5kaXJlY3Qtd2FzaTppby9zdHJlYW1zQDAuMi4wLVttZXRob2RdaW5wdXQtc3RyZWFtLmJsb2NraW5nLXJlYWQLQGluZGlyZWN0LXdhc2k6aW8vc3RyZWFtc0AwLjIuMC1bbWV0aG9kXW91dHB1dC1zdHJlYW0uY2hlY2std3JpdGUMOmluZGlyZWN0LXdhc2k6aW8vc3RyZWFtc0AwLjIuMC1bbWV0aG9kXW91dHB1dC1zdHJlYW0ud3JpdGUNTWluZGlyZWN0LXdhc2k6aW8vc3RyZWFtc0AwLjIuMC1bbWV0aG9kXW91dHB1dC1zdHJlYW0uYmxvY2tpbmctd3JpdGUtYW5kLWZsdXNoDkNpbmRpcmVjdC13YXNpOmlvL3N0cmVhbXNAMC4yLjAtW21ldGhvZF1vdXRwdXQtc3RyZWFtLmJsb2NraW5nLWZsdXNoDzJpbmRpcmVjdC13YXNpOnJhbmRvbS9yYW5kb21AMC4yLjAtZ2V0LXJhbmRvbS1ieXRlcxAzaW5kaXJlY3Qtd2FzaTpjbGkvZW52aXJvbm1lbnRAMC4yLjAtZ2V0LWVudmlyb25tZW50ETlpbmRpcmVjdC13YXNpOmNsaS90ZXJtaW5hbC1zdGRpbkAwLjIuMC1nZXQtdGVybWluYWwtc3RkaW4SO2luZGlyZWN0LXdhc2k6Y2xpL3Rlcm1pbmFsLXN0ZG91dEAwLjIuMC1nZXQtdGVybWluYWwtc3Rkb3V0EztpbmRpcmVjdC13YXNpOmNsaS90ZXJtaW5hbC1zdGRlcnJAMC4yLjAtZ2V0LXRlcm1pbmFsLXN0ZGVychQmYWRhcHQtd2FzaV9zbmFwc2hvdF9wcmV2aWV3MS1wYXRoX29wZW4VLGFkYXB0LXdhc2lfc25hcHNob3RfcHJldmlldzEtZmRfZmlsZXN0YXRfZ2V0FidhZGFwdC13YXNpX3NuYXBzaG90X3ByZXZpZXcxLXJhbmRvbV9nZXQXJGFkYXB0LXdhc2lfc25hcHNob3RfcHJldmlldzEtZmRfcmVhZBglYWRhcHQtd2FzaV9zbmFwc2hvdF9wcmV2aWV3MS1mZF93cml0ZRkoYWRhcHQtd2FzaV9zbmFwc2hvdF9wcmV2aWV3MS1lbnZpcm9uX2dldBouYWRhcHQtd2FzaV9zbmFwc2hvdF9wcmV2aWV3MS1lbnZpcm9uX3NpemVzX2dldBslYWRhcHQtd2FzaV9zbmFwc2hvdF9wcmV2aWV3MS1mZF9jbG9zZRwrYWRhcHQtd2FzaV9zbmFwc2hvdF9wcmV2aWV3MS1mZF9wcmVzdGF0X2dldB0wYWRhcHQtd2FzaV9zbmFwc2hvdF9wcmV2aWV3MS1mZF9wcmVzdGF0X2Rpcl9uYW1lHiZhZGFwdC13YXNpX3NuYXBzaG90X3ByZXZpZXcxLXByb2NfZXhpdA');
2964
- const module3 = base64Compile('AGFzbQEAAAABUQxgAX8AYAN/fn8AYAJ/fwBgB39/f39/f38AYAR/f39/AGACfn8AYAl/f39/f35+f38Bf2ACf38Bf2AEf39/fwF/YAF/AX9gA39/fwF/YAF/AALAASAAATAAAAABMQABAAEyAAEAATMAAgABNAACAAE1AAIAATYAAwABNwACAAE4AAIAATkAAQACMTAAAQACMTEAAgACMTIABAACMTMABAACMTQAAgACMTUABQACMTYAAAACMTcAAAACMTgAAAACMTkAAAACMjAABgACMjEABwACMjIABwACMjMACAACMjQACAACMjUABwACMjYABwACMjcACQACMjgABwACMjkACgACMzAACwAIJGltcG9ydHMBcAEfHwklAQBBAAsfAAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHgAvCXByb2R1Y2VycwEMcHJvY2Vzc2VkLWJ5AQ13aXQtY29tcG9uZW50BzAuMjAxLjAAHARuYW1lABUUd2l0LWNvbXBvbmVudDpmaXh1cHM');
3911
+ const module2 = base64Compile('AGFzbQEAAAABZw5gAn9/AGABfwBgAn9/AX9gA39+fwBgBX9/f39/AGAEf39/fwBgBH9/f38Bf2AHf39/f39/fwBgAn5/AGAJf39/f39+fn9/AX9gBX9/f35/AX9gBX9/f39/AX9gAX8Bf2ADf39/AX8DJiUBAwMAAAAABAcABAAAAwMABQUACAEBAQEJCgsCAgYGAgIMAg0BBAUBcAElJQe7ASYBMAAAATEAAQEyAAIBMwADATQABAE1AAUBNgAGATcABwE4AAgBOQAJAjEwAAoCMTEACwIxMgAMAjEzAA0CMTQADgIxNQAPAjE2ABACMTcAEQIxOAASAjE5ABMCMjAAFAIyMQAVAjIyABYCMjMAFwIyNAAYAjI1ABkCMjYAGgIyNwAbAjI4ABwCMjkAHQIzMAAeAjMxAB8CMzIAIAIzMwAhAjM0ACICMzUAIwIzNgAkCCRpbXBvcnRzAQAK+QMlCQAgAEEAEQEACw0AIAAgASACQQERAwALDQAgACABIAJBAhEDAAsLACAAIAFBAxEAAAsLACAAIAFBBBEAAAsLACAAIAFBBREAAAsLACAAIAFBBhEAAAsRACAAIAEgAiADIARBBxEEAAsVACAAIAEgAiADIAQgBSAGQQgRBwALCwAgACABQQkRAAALEQAgACABIAIgAyAEQQoRBAALCwAgACABQQsRAAALCwAgACABQQwRAAALDQAgACABIAJBDREDAAsNACAAIAEgAkEOEQMACwsAIAAgAUEPEQAACw8AIAAgASACIANBEBEFAAsPACAAIAEgAiADQRERBQALCwAgACABQRIRAAALCwAgACABQRMRCAALCQAgAEEUEQEACwkAIABBFREBAAsJACAAQRYRAQALCQAgAEEXEQEACxkAIAAgASACIAMgBCAFIAYgByAIQRgRCQALEQAgACABIAIgAyAEQRkRCgALEQAgACABIAIgAyAEQRoRCwALCwAgACABQRsRAgALCwAgACABQRwRAgALDwAgACABIAIgA0EdEQYACw8AIAAgASACIANBHhEGAAsLACAAIAFBHxECAAsLACAAIAFBIBECAAsJACAAQSERDAALCwAgACABQSIRAgALDQAgACABIAJBIxENAAsJACAAQSQRAQALAC8JcHJvZHVjZXJzAQxwcm9jZXNzZWQtYnkBDXdpdC1jb21wb25lbnQHMC4yMDIuMA');
3912
+ const module3 = base64Compile('AGFzbQEAAAABaw9gAX8AYAN/fn8AYAJ/fwBgBX9/f39/AGAHf39/f39/fwBgBH9/f38AYAJ+fwBgCX9/f39/fn5/fwF/YAV/f39+fwF/YAV/f39/fwF/YAJ/fwF/YAR/f39/AX9gAX8Bf2ADf39/AX9gAX8AAuQBJgABMAAAAAExAAEAATIAAQABMwACAAE0AAIAATUAAgABNgACAAE3AAMAATgABAABOQACAAIxMAADAAIxMQACAAIxMgACAAIxMwABAAIxNAABAAIxNQACAAIxNgAFAAIxNwAFAAIxOAACAAIxOQAGAAIyMAAAAAIyMQAAAAIyMgAAAAIyMwAAAAIyNAAHAAIyNQAIAAIyNgAJAAIyNwAKAAIyOAAKAAIyOQALAAIzMAALAAIzMQAKAAIzMgAKAAIzMwAMAAIzNAAKAAIzNQANAAIzNgAOAAgkaW1wb3J0cwFwASUlCSsBAEEACyUAAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiMkAC8JcHJvZHVjZXJzAQxwcm9jZXNzZWQtYnkBDXdpdC1jb21wb25lbnQHMC4yMDIuMAAcBG5hbWUAFRR3aXQtY29tcG9uZW50OmZpeHVwcw');
2965
3913
  ({ exports: exports0 } = await instantiateCore(await module2));
2966
3914
  ({ exports: exports1 } = await instantiateCore(await module0, {
2967
3915
  wasi_snapshot_preview1: {
2968
- environ_get: exports0['25'],
2969
- environ_sizes_get: exports0['26'],
2970
- fd_close: exports0['27'],
2971
- fd_filestat_get: exports0['21'],
2972
- fd_prestat_dir_name: exports0['29'],
2973
- fd_prestat_get: exports0['28'],
2974
- fd_read: exports0['23'],
2975
- fd_write: exports0['24'],
2976
- path_open: exports0['20'],
2977
- proc_exit: exports0['30'],
2978
- random_get: exports0['22'],
3916
+ environ_get: exports0['31'],
3917
+ environ_sizes_get: exports0['32'],
3918
+ fd_close: exports0['33'],
3919
+ fd_filestat_get: exports0['28'],
3920
+ fd_prestat_dir_name: exports0['35'],
3921
+ fd_prestat_get: exports0['34'],
3922
+ fd_read: exports0['29'],
3923
+ fd_readdir: exports0['25'],
3924
+ fd_write: exports0['30'],
3925
+ path_filestat_get: exports0['26'],
3926
+ path_open: exports0['24'],
3927
+ proc_exit: exports0['36'],
3928
+ random_get: exports0['27'],
2979
3929
  },
2980
3930
  }));
2981
3931
  ({ exports: exports2 } = await instantiateCore(await module1, {
@@ -2986,7 +3936,7 @@ export const $init = (async() => {
2986
3936
  memory: exports1.memory,
2987
3937
  },
2988
3938
  'wasi:cli/environment@0.2.0': {
2989
- 'get-environment': exports0['16'],
3939
+ 'get-environment': exports0['20'],
2990
3940
  },
2991
3941
  'wasi:cli/exit@0.2.0': {
2992
3942
  exit: trampoline6,
@@ -3007,13 +3957,13 @@ export const $init = (async() => {
3007
3957
  '[resource-drop]terminal-output': trampoline10,
3008
3958
  },
3009
3959
  'wasi:cli/terminal-stderr@0.2.0': {
3010
- 'get-terminal-stderr': exports0['19'],
3960
+ 'get-terminal-stderr': exports0['23'],
3011
3961
  },
3012
3962
  'wasi:cli/terminal-stdin@0.2.0': {
3013
- 'get-terminal-stdin': exports0['17'],
3963
+ 'get-terminal-stdin': exports0['21'],
3014
3964
  },
3015
3965
  'wasi:cli/terminal-stdout@0.2.0': {
3016
- 'get-terminal-stdout': exports0['18'],
3966
+ 'get-terminal-stdout': exports0['22'],
3017
3967
  },
3018
3968
  'wasi:filesystem/preopens@0.2.0': {
3019
3969
  'get-directories': exports0['0'],
@@ -3021,30 +3971,34 @@ export const $init = (async() => {
3021
3971
  'wasi:filesystem/types@0.2.0': {
3022
3972
  '[method]descriptor.append-via-stream': exports0['3'],
3023
3973
  '[method]descriptor.get-type': exports0['4'],
3024
- '[method]descriptor.metadata-hash': exports0['7'],
3025
- '[method]descriptor.open-at': exports0['6'],
3974
+ '[method]descriptor.metadata-hash': exports0['9'],
3975
+ '[method]descriptor.metadata-hash-at': exports0['10'],
3976
+ '[method]descriptor.open-at': exports0['8'],
3977
+ '[method]descriptor.read-directory': exports0['5'],
3026
3978
  '[method]descriptor.read-via-stream': exports0['1'],
3027
- '[method]descriptor.stat': exports0['5'],
3979
+ '[method]descriptor.stat': exports0['6'],
3980
+ '[method]descriptor.stat-at': exports0['7'],
3028
3981
  '[method]descriptor.write-via-stream': exports0['2'],
3982
+ '[method]directory-entry-stream.read-directory-entry': exports0['11'],
3029
3983
  '[resource-drop]descriptor': trampoline4,
3030
3984
  '[resource-drop]directory-entry-stream': trampoline0,
3031
- 'filesystem-error-code': exports0['8'],
3985
+ 'filesystem-error-code': exports0['12'],
3032
3986
  },
3033
3987
  'wasi:io/error@0.2.0': {
3034
3988
  '[resource-drop]error': trampoline1,
3035
3989
  },
3036
3990
  'wasi:io/streams@0.2.0': {
3037
- '[method]input-stream.blocking-read': exports0['10'],
3038
- '[method]input-stream.read': exports0['9'],
3039
- '[method]output-stream.blocking-flush': exports0['14'],
3040
- '[method]output-stream.blocking-write-and-flush': exports0['13'],
3041
- '[method]output-stream.check-write': exports0['11'],
3042
- '[method]output-stream.write': exports0['12'],
3991
+ '[method]input-stream.blocking-read': exports0['14'],
3992
+ '[method]input-stream.read': exports0['13'],
3993
+ '[method]output-stream.blocking-flush': exports0['18'],
3994
+ '[method]output-stream.blocking-write-and-flush': exports0['17'],
3995
+ '[method]output-stream.check-write': exports0['15'],
3996
+ '[method]output-stream.write': exports0['16'],
3043
3997
  '[resource-drop]input-stream': trampoline2,
3044
3998
  '[resource-drop]output-stream': trampoline3,
3045
3999
  },
3046
4000
  'wasi:random/random@0.2.0': {
3047
- 'get-random-bytes': exports0['15'],
4001
+ 'get-random-bytes': exports0['19'],
3048
4002
  },
3049
4003
  }));
3050
4004
  memory0 = exports1.memory;
@@ -3065,18 +4019,24 @@ export const $init = (async() => {
3065
4019
  '18': trampoline29,
3066
4020
  '19': trampoline30,
3067
4021
  '2': trampoline13,
3068
- '20': exports2.path_open,
3069
- '21': exports2.fd_filestat_get,
3070
- '22': exports2.random_get,
3071
- '23': exports2.fd_read,
3072
- '24': exports2.fd_write,
3073
- '25': exports2.environ_get,
3074
- '26': exports2.environ_sizes_get,
3075
- '27': exports2.fd_close,
3076
- '28': exports2.fd_prestat_get,
3077
- '29': exports2.fd_prestat_dir_name,
4022
+ '20': trampoline31,
4023
+ '21': trampoline32,
4024
+ '22': trampoline33,
4025
+ '23': trampoline34,
4026
+ '24': exports2.path_open,
4027
+ '25': exports2.fd_readdir,
4028
+ '26': exports2.path_filestat_get,
4029
+ '27': exports2.random_get,
4030
+ '28': exports2.fd_filestat_get,
4031
+ '29': exports2.fd_read,
3078
4032
  '3': trampoline14,
3079
- '30': exports2.proc_exit,
4033
+ '30': exports2.fd_write,
4034
+ '31': exports2.environ_get,
4035
+ '32': exports2.environ_sizes_get,
4036
+ '33': exports2.fd_close,
4037
+ '34': exports2.fd_prestat_get,
4038
+ '35': exports2.fd_prestat_dir_name,
4039
+ '36': exports2.proc_exit,
3080
4040
  '4': trampoline15,
3081
4041
  '5': trampoline16,
3082
4042
  '6': trampoline17,