@yowasp/yosys 0.37.67-dev.638 → 0.37.67-dev.640

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4644 +0,0 @@
1
- // node_modules/@yowasp/runtime/lib/api-node.js
2
- import { readFile } from "fs/promises";
3
-
4
- // node_modules/@yowasp/runtime/lib/wasi-virt.js
5
- var Exit = class extends Error {
6
- constructor(code = 0) {
7
- super(`Exited with status ${code}`);
8
- this.code = code;
9
- }
10
- };
11
- function monotonicNow() {
12
- return BigInt(Math.floor(performance.now() * 1e6));
13
- }
14
- function wallClockNow() {
15
- let now = Date.now();
16
- const seconds = BigInt(Math.floor(now / 1e3));
17
- const nanoseconds = now % 1e3 * 1e6;
18
- return { seconds, nanoseconds };
19
- }
20
- var Xoroshiro128StarStar = class {
21
- constructor(seed) {
22
- if (BigInt(seed) === 0n) {
23
- throw new Error("xoroshiro128** must be seeded with a non-zero state");
24
- }
25
- this.s = [BigInt(seed) & 0xffffffffffffffffn, BigInt(seed) >> 64n & 0xffffffffffffffffn];
26
- }
27
- next() {
28
- function trunc64(x) {
29
- return x & 0xffffffffffffffffn;
30
- }
31
- function rotl(x, k) {
32
- return x << k | x >> 64n - k;
33
- }
34
- let [s0, s1] = this.s;
35
- const r = trunc64(rotl(s0 * 5n, 7n) * 9n);
36
- s1 ^= s0;
37
- s0 = trunc64(rotl(s0, 24n) ^ s1 ^ s1 << 16n);
38
- s1 = trunc64(rotl(s1, 37n));
39
- this.s = [s0, s1];
40
- return r;
41
- }
42
- getBytes(length) {
43
- return Uint8Array.from({ length }, () => Number(BigInt.asUintN(8, this.next() >> 32n)));
44
- }
45
- };
46
- var IoError = class extends Error {
47
- };
48
- var InputStream = class {
49
- read(_len) {
50
- throw { tag: "closed" };
51
- }
52
- blockingRead(len) {
53
- return this.read(len);
54
- }
55
- };
56
- var OutputStream = class {
57
- checkWrite() {
58
- throw { tag: "closed" };
59
- }
60
- write(_contents) {
61
- this.checkWrite();
62
- }
63
- flush() {
64
- }
65
- blockingFlush() {
66
- this.flush();
67
- }
68
- blockingWriteAndFlush(contents) {
69
- this.write(contents);
70
- this.blockingFlush();
71
- }
72
- };
73
- var CallbackOutputStream = class extends OutputStream {
74
- constructor(callback = null) {
75
- super();
76
- this.callback = callback;
77
- }
78
- checkWrite() {
79
- return 4096;
80
- }
81
- write(contents) {
82
- if (this.callback !== null)
83
- this.callback(contents);
84
- }
85
- flush() {
86
- if (this.callback !== null)
87
- this.callback(null);
88
- }
89
- };
90
- var TerminalInput = class {
91
- };
92
- var TerminalOutput = class {
93
- };
94
- var File = class {
95
- constructor(data = "") {
96
- if (data instanceof Uint8Array) {
97
- this.data = data;
98
- } else if (typeof data === "string") {
99
- this.data = new TextEncoder().encode(data);
100
- } else {
101
- throw new Error(`Cannot construct a file from ${typeof data}`);
102
- }
103
- }
104
- get size() {
105
- return this.data.length;
106
- }
107
- };
108
- var ReadStream = class extends InputStream {
109
- constructor(file, offset) {
110
- super();
111
- this.file = file;
112
- this.offset = offset;
113
- }
114
- read(len) {
115
- const data = this.file.data.subarray(Number(this.offset), Number(this.offset + len));
116
- this.offset += len;
117
- return data;
118
- }
119
- };
120
- var WriteStream = class extends OutputStream {
121
- constructor(file, offset) {
122
- super();
123
- this.file = file;
124
- this.offset = offset;
125
- }
126
- write(contents) {
127
- const newData = new Uint8Array(this.file.data.length + contents.length);
128
- newData.set(this.file.data);
129
- newData.subarray(Number(this.offset)).set(contents);
130
- this.file.data = newData;
131
- this.offset += BigInt(contents.length);
132
- }
133
- };
134
- var Directory = class _Directory {
135
- constructor(files = {}) {
136
- this.files = files;
137
- }
138
- get size() {
139
- return Object.keys(this.files).length;
140
- }
141
- traverse(path, flags = { create: false, remove: false }) {
142
- let entry = this;
143
- let separatorAt = -1;
144
- do {
145
- if (entry instanceof File)
146
- throw "not-directory";
147
- const files = entry.files;
148
- separatorAt = path.indexOf("/");
149
- const segment = separatorAt === -1 ? path : path.substring(0, separatorAt);
150
- if (separatorAt === -1 && flags.remove)
151
- delete files[segment];
152
- else if (segment === "" || segment === ".")
153
- ;
154
- else if (segment === "..")
155
- ;
156
- else if (Object.hasOwn(files, segment))
157
- entry = files[segment];
158
- else if (flags.create === "directory" || flags.create === "file" && separatorAt !== -1)
159
- entry = files[segment] = new _Directory({});
160
- else if (flags.create === "file")
161
- entry = files[segment] = new File(new Uint8Array());
162
- else
163
- throw "no-entry";
164
- path = path.substring(separatorAt + 1);
165
- } while (separatorAt !== -1);
166
- return entry;
167
- }
168
- };
169
- var Descriptor = class _Descriptor {
170
- constructor(entry) {
171
- this.entry = entry;
172
- }
173
- getType() {
174
- if (this.entry instanceof Directory)
175
- return "directory";
176
- if (this.entry instanceof File)
177
- return "regular-file";
178
- }
179
- getFlags() {
180
- return {};
181
- }
182
- metadataHash() {
183
- return { upper: 0, lower: 0 };
184
- }
185
- metadataHashAt(_pathFlags, path) {
186
- if (!(this.entry instanceof Directory))
187
- throw "invalid";
188
- const pathEntry = this.entry.traverse(path);
189
- return new _Descriptor(pathEntry).metadataHash();
190
- }
191
- stat() {
192
- let type;
193
- if (this.entry instanceof Directory)
194
- type = "directory";
195
- if (this.entry instanceof File)
196
- type = "regular-file";
197
- return {
198
- type,
199
- linkCount: 1,
200
- size: this.entry.size,
201
- dataAccessTimestamp: null,
202
- dataModificationTimestamp: null,
203
- statusChangeTimestamp: null
204
- };
205
- }
206
- statAt(_pathFlags, path) {
207
- if (!(this.entry instanceof Directory))
208
- throw "invalid";
209
- const pathEntry = this.entry.traverse(path);
210
- return new _Descriptor(pathEntry).stat();
211
- }
212
- openAt(_pathFlags, path, openFlags, _descriptorFlags) {
213
- if (!(this.entry instanceof Directory))
214
- throw "invalid";
215
- const openEntry = this.entry.traverse(path, { create: openFlags.create ? "file" : false });
216
- if (openFlags.directory) {
217
- if (!(openEntry instanceof Directory))
218
- throw "not-directory";
219
- } else {
220
- if (openEntry instanceof Directory)
221
- throw "is-directory";
222
- if (openFlags.truncate)
223
- openEntry.data = new Uint8Array();
224
- }
225
- return new _Descriptor(openEntry);
226
- }
227
- read(length, offset) {
228
- if (this.entry instanceof Directory)
229
- throw "is-directory";
230
- [length, offset] = [Number(length), Number(offset)];
231
- return [this.entry.data.subarray(offset, offset + length), offset + length >= this.entry.data.byteLength];
232
- }
233
- readViaStream(offset) {
234
- return new ReadStream(this.entry, offset);
235
- }
236
- write(_buffer, _offset) {
237
- if (this.entry instanceof Directory)
238
- throw "is-directory";
239
- console.error("Descriptor.write not implemented");
240
- throw "unsupported";
241
- }
242
- writeViaStream(offset) {
243
- return new WriteStream(this.entry, offset);
244
- }
245
- readDirectory() {
246
- return new DirectoryEntryStream(this.entry);
247
- }
248
- createDirectoryAt(path) {
249
- this.entry.traverse(path, { create: "directory" });
250
- }
251
- unlinkFileAt(path) {
252
- const pathEntry = this.entry.traverse(path);
253
- if (pathEntry instanceof Directory)
254
- return "is-directory";
255
- this.entry.traverse(path, { remove: true });
256
- }
257
- removeDirectoryAt(path) {
258
- const pathEntry = this.entry.traverse(path);
259
- if (!(pathEntry instanceof Directory))
260
- return "not-directory";
261
- this.entry.traverse(path, { remove: true });
262
- }
263
- };
264
- var DirectoryEntryStream = class {
265
- constructor(directory) {
266
- this.entries = Object.entries(directory.files);
267
- this.index = 0;
268
- }
269
- readDirectoryEntry() {
270
- if (this.index === this.entries.length)
271
- return null;
272
- const [name, entry] = this.entries[this.index++];
273
- let type;
274
- if (entry instanceof Directory)
275
- type = "directory";
276
- if (entry instanceof File)
277
- type = "regular-file";
278
- return { name, type };
279
- }
280
- };
281
- function directoryFromTree(tree) {
282
- const files = {};
283
- for (const [filename, data] of Object.entries(tree)) {
284
- if (typeof data === "string" || data instanceof Uint8Array)
285
- files[filename] = new File(tree[filename]);
286
- else
287
- files[filename] = directoryFromTree(tree[filename]);
288
- }
289
- return new Directory(files);
290
- }
291
- function directoryIntoTree(directory, { decodeASCII = true } = {}) {
292
- function isASCII(buffer) {
293
- for (const byte of buffer)
294
- if (byte < 32 && byte !== 9 && byte !== 10 && byte !== 13 || byte >= 127)
295
- return false;
296
- return true;
297
- }
298
- const tree = {};
299
- for (const [filename, entry] of Object.entries(directory.files)) {
300
- if (entry instanceof File)
301
- tree[filename] = decodeASCII && isASCII(entry.data) ? new TextDecoder().decode(entry.data) : entry.data;
302
- if (entry instanceof Directory)
303
- tree[filename] = directoryIntoTree(entry, { decodeASCII });
304
- }
305
- return tree;
306
- }
307
- var Environment = class {
308
- vars = {};
309
- args = [];
310
- root = new Directory({});
311
- constructor() {
312
- this.prng = new Xoroshiro128StarStar(1n);
313
- this.standardInputStream = new InputStream();
314
- this.standardOutputStream = new CallbackOutputStream();
315
- this.standardErrorStream = new CallbackOutputStream();
316
- this.terminalInput = new TerminalInput();
317
- this.terminalOutput = new TerminalOutput();
318
- const $this = this;
319
- this.exports = {
320
- monotonicClock: {
321
- now: monotonicNow
322
- },
323
- wallClock: {
324
- now: wallClockNow
325
- },
326
- random: {
327
- getRandomBytes(length) {
328
- return $this.prng.getBytes(Number(length));
329
- }
330
- },
331
- io: {
332
- Error: IoError,
333
- InputStream,
334
- OutputStream
335
- },
336
- cli: {
337
- exit(status) {
338
- throw new Exit(status.tag === "ok" ? 0 : 1);
339
- },
340
- getEnvironment() {
341
- return $this.vars;
342
- },
343
- getArguments() {
344
- return $this.args;
345
- },
346
- getStdin() {
347
- return $this.standardInputStream;
348
- },
349
- getStdout() {
350
- return $this.standardOutputStream;
351
- },
352
- getStderr() {
353
- return $this.standardErrorStream;
354
- },
355
- getTerminalStdin() {
356
- return $this.terminalInput;
357
- },
358
- getTerminalStdout() {
359
- return $this.terminalOutput;
360
- },
361
- getTerminalStderr() {
362
- return $this.terminalOutput;
363
- },
364
- TerminalInput,
365
- TerminalOutput
366
- },
367
- fs: {
368
- Descriptor,
369
- DirectoryEntryStream,
370
- filesystemErrorCode() {
371
- },
372
- getDirectories() {
373
- if ($this.root === null)
374
- return [];
375
- return [[new Descriptor($this.root), "/"]];
376
- }
377
- }
378
- };
379
- }
380
- get stdout() {
381
- return this.standardOutputStream.callback;
382
- }
383
- set stdout(callback) {
384
- this.standardOutputStream.callback = callback;
385
- }
386
- get stderr() {
387
- return this.standardErrorStream.callback;
388
- }
389
- set stderr(callback) {
390
- this.standardErrorStream.callback = callback;
391
- }
392
- };
393
-
394
- // node_modules/@yowasp/runtime/lib/util.js
395
- function lineBuffered(processLine) {
396
- let buffer = new Uint8Array();
397
- return (bytes) => {
398
- if (bytes === null)
399
- return;
400
- let newBuffer = new Uint8Array(buffer.length + bytes.length);
401
- newBuffer.set(buffer);
402
- newBuffer.set(bytes, buffer.length);
403
- buffer = newBuffer;
404
- let newlineAt = -1;
405
- while (true) {
406
- const nextNewlineAt = buffer.indexOf(10, newlineAt + 1);
407
- if (nextNewlineAt === -1)
408
- break;
409
- processLine(new TextDecoder().decode(buffer.subarray(newlineAt + 1, nextNewlineAt)));
410
- newlineAt = nextNewlineAt;
411
- }
412
- buffer = buffer.subarray(newlineAt + 1);
413
- };
414
- }
415
-
416
- // node_modules/@yowasp/runtime/lib/api-base.js
417
- var BaseApplication = class {
418
- constructor(resourceFileURL2, instantiate2, argv0) {
419
- this.resourceFileURL = resourceFileURL2;
420
- this.resources = null;
421
- this.instantiate = instantiate2;
422
- this.argv0 = argv0;
423
- }
424
- // The `printLine` option is deprecated and not documented but still accepted for compatibility.
425
- async run(args = null, files = {}, { stdout, stderr, decodeASCII = true, printLine } = {}) {
426
- if (this.resources === null)
427
- this.resources = await this._fetchResources();
428
- if (args === null)
429
- return;
430
- const environment = new Environment();
431
- environment.args = [this.argv0].concat(args);
432
- environment.root = directoryFromTree(files);
433
- for (const [dirName, dirContents] of Object.entries(this.resources.filesystem))
434
- environment.root.files[dirName] = directoryFromTree(dirContents);
435
- const lineBufferedConsole = lineBuffered(printLine ?? console.log);
436
- environment.stdout = stdout === void 0 ? lineBufferedConsole : stdout;
437
- environment.stderr = stderr === void 0 ? lineBufferedConsole : stderr;
438
- const wasmCommand = await this.instantiate(
439
- (filename) => this.resources.modules[filename],
440
- { runtime: environment.exports }
441
- );
442
- let error = null;
443
- try {
444
- wasmCommand.run.run();
445
- } catch (e) {
446
- if (!(e instanceof Exit))
447
- throw e;
448
- if (e instanceof Exit && e.code !== 0)
449
- error = e;
450
- }
451
- for (const dirName of Object.keys(this.resources.filesystem))
452
- delete environment.root.files[dirName];
453
- files = directoryIntoTree(environment.root, { decodeASCII });
454
- if (error !== null) {
455
- error.files = files;
456
- throw error;
457
- } else {
458
- return files;
459
- }
460
- }
461
- async _fetchResources() {
462
- const { modules, filesystem } = await import(this.resourceFileURL);
463
- return {
464
- modules: await this._fetchObject(modules, this._fetchWebAssembly),
465
- filesystem: await this._fetchObject(filesystem, this._fetchUint8Array)
466
- };
467
- }
468
- async _fetchObject(obj, fetchFn) {
469
- const promises = [];
470
- for (const [key, value] of Object.entries(obj)) {
471
- if (value instanceof URL) {
472
- promises.push(fetchFn(value).then((fetched) => [key, fetched]));
473
- } else if (typeof value === "string" || value instanceof Uint8Array) {
474
- promises.push(Promise.resolve([key, value]));
475
- } else {
476
- promises.push(this._fetchObject(value, fetchFn).then((fetched) => [key, fetched]));
477
- }
478
- }
479
- for (const [key, value] of await Promise.all(promises))
480
- obj[key] = value;
481
- return obj;
482
- }
483
- async _fetchUint8Array(_url) {
484
- throw "not implemented";
485
- }
486
- async _fetchWebAssembly(_url) {
487
- throw "not implemented";
488
- }
489
- };
490
-
491
- // node_modules/@yowasp/runtime/lib/api-node.js
492
- var Application = class extends BaseApplication {
493
- _fetchUint8Array(url) {
494
- return readFile(url);
495
- }
496
- _fetchWebAssembly(url) {
497
- return readFile(url).then(WebAssembly.compile);
498
- }
499
- };
500
-
501
- // gen/yosys.js
502
- var ComponentError = class extends Error {
503
- constructor(value) {
504
- const enumerable = typeof value !== "string";
505
- super(enumerable ? `${String(value)} (see error.payload)` : value);
506
- Object.defineProperty(this, "payload", { value, enumerable });
507
- }
508
- };
509
- var dv = new DataView(new ArrayBuffer());
510
- var dataView = (mem) => dv.buffer === mem.buffer ? dv : dv = new DataView(mem.buffer);
511
- function getErrorPayload(e) {
512
- if (e && hasOwnProperty.call(e, "payload"))
513
- return e.payload;
514
- return e;
515
- }
516
- var hasOwnProperty = Object.prototype.hasOwnProperty;
517
- var resourceHandleSymbol = Symbol("resource");
518
- var symbolDispose = Symbol.dispose || Symbol.for("dispose");
519
- var toUint64 = (val) => BigInt.asUintN(64, BigInt(val));
520
- function toUint32(val) {
521
- return val >>> 0;
522
- }
523
- var utf8Decoder = new TextDecoder();
524
- var utf8Encoder = new TextEncoder();
525
- var utf8EncodedLen = 0;
526
- function utf8Encode(s, realloc, memory) {
527
- if (typeof s !== "string")
528
- throw new TypeError("expected a string");
529
- if (s.length === 0) {
530
- utf8EncodedLen = 0;
531
- return 1;
532
- }
533
- let allocLen = 0;
534
- let ptr = 0;
535
- let writtenTotal = 0;
536
- while (s.length > 0) {
537
- ptr = realloc(ptr, allocLen, 1, allocLen += s.length * 2);
538
- const { read, written } = utf8Encoder.encodeInto(
539
- s,
540
- new Uint8Array(memory.buffer, ptr + writtenTotal, allocLen - writtenTotal)
541
- );
542
- writtenTotal += written;
543
- s = s.slice(read);
544
- }
545
- utf8EncodedLen = writtenTotal;
546
- return ptr;
547
- }
548
- async function instantiate(getCoreModule, imports, instantiateCore = WebAssembly.instantiate) {
549
- const module0 = getCoreModule("yosys.core.wasm");
550
- const module1 = getCoreModule("yosys.core2.wasm");
551
- const module2 = getCoreModule("yosys.core3.wasm");
552
- const module3 = getCoreModule("yosys.core4.wasm");
553
- const { cli, fs, io, monotonicClock, wallClock } = imports.runtime;
554
- const {
555
- TerminalInput: TerminalInput2,
556
- TerminalOutput: TerminalOutput2,
557
- exit,
558
- getArguments,
559
- getEnvironment,
560
- getStderr,
561
- getStdin,
562
- getStdout,
563
- getTerminalStderr,
564
- getTerminalStdin,
565
- getTerminalStdout
566
- } = cli;
567
- const {
568
- Descriptor: Descriptor2,
569
- DirectoryEntryStream: DirectoryEntryStream2,
570
- filesystemErrorCode,
571
- getDirectories
572
- } = fs;
573
- const {
574
- Error: Error$1,
575
- InputStream: InputStream2,
576
- OutputStream: OutputStream2
577
- } = io;
578
- const { now } = monotonicClock;
579
- const { now: now$1 } = wallClock;
580
- let exports0;
581
- let exports1;
582
- function trampoline0() {
583
- const ret = now();
584
- return toUint64(ret);
585
- }
586
- function trampoline8() {
587
- const ret = getStderr();
588
- if (!(ret instanceof OutputStream2)) {
589
- throw new Error('Resource error: Not a valid "OutputStream" resource.');
590
- }
591
- var handle0 = handleCnt2++;
592
- handleTable2.set(handle0, { rep: ret, own: true });
593
- return handle0;
594
- }
595
- function trampoline9(arg0) {
596
- let variant0;
597
- switch (arg0) {
598
- case 0: {
599
- variant0 = {
600
- tag: "ok",
601
- val: void 0
602
- };
603
- break;
604
- }
605
- case 1: {
606
- variant0 = {
607
- tag: "err",
608
- val: void 0
609
- };
610
- break;
611
- }
612
- default: {
613
- throw new TypeError("invalid variant discriminant for expected");
614
- }
615
- }
616
- exit(variant0);
617
- }
618
- function trampoline10() {
619
- const ret = getStdin();
620
- if (!(ret instanceof InputStream2)) {
621
- throw new Error('Resource error: Not a valid "InputStream" resource.');
622
- }
623
- var handle0 = handleCnt1++;
624
- handleTable1.set(handle0, { rep: ret, own: true });
625
- return handle0;
626
- }
627
- function trampoline11() {
628
- const ret = getStdout();
629
- if (!(ret instanceof OutputStream2)) {
630
- throw new Error('Resource error: Not a valid "OutputStream" resource.');
631
- }
632
- var handle0 = handleCnt2++;
633
- handleTable2.set(handle0, { rep: ret, own: true });
634
- return handle0;
635
- }
636
- let exports2;
637
- function trampoline12(arg0) {
638
- const ret = getDirectories();
639
- var vec3 = ret;
640
- var len3 = vec3.length;
641
- var result3 = realloc0(0, 0, 4, len3 * 12);
642
- for (let i = 0; i < vec3.length; i++) {
643
- const e = vec3[i];
644
- const base = result3 + i * 12;
645
- var [tuple0_0, tuple0_1] = e;
646
- if (!(tuple0_0 instanceof Descriptor2)) {
647
- throw new Error('Resource error: Not a valid "Descriptor" resource.');
648
- }
649
- var handle1 = handleCnt5++;
650
- handleTable5.set(handle1, { rep: tuple0_0, own: true });
651
- dataView(memory0).setInt32(base + 0, handle1, true);
652
- var ptr2 = utf8Encode(tuple0_1, realloc0, memory0);
653
- var len2 = utf8EncodedLen;
654
- dataView(memory0).setInt32(base + 8, len2, true);
655
- dataView(memory0).setInt32(base + 4, ptr2, true);
656
- }
657
- dataView(memory0).setInt32(arg0 + 4, len3, true);
658
- dataView(memory0).setInt32(arg0 + 0, result3, true);
659
- }
660
- let memory0;
661
- let realloc0;
662
- function trampoline13(arg0) {
663
- const ret = now$1();
664
- var { seconds: v0_0, nanoseconds: v0_1 } = ret;
665
- dataView(memory0).setBigInt64(arg0 + 0, toUint64(v0_0), true);
666
- dataView(memory0).setInt32(arg0 + 8, toUint32(v0_1), true);
667
- }
668
- function trampoline14(arg0, arg1, arg2) {
669
- var handle1 = arg0;
670
- var rsc0 = handleTable5.get(handle1).rep;
671
- let ret;
672
- try {
673
- ret = { tag: "ok", val: Descriptor2.prototype.readViaStream.call(rsc0, BigInt.asUintN(64, arg1)) };
674
- } catch (e) {
675
- ret = { tag: "err", val: getErrorPayload(e) };
676
- }
677
- var variant4 = ret;
678
- switch (variant4.tag) {
679
- case "ok": {
680
- const e = variant4.val;
681
- dataView(memory0).setInt8(arg2 + 0, 0, true);
682
- if (!(e instanceof InputStream2)) {
683
- throw new Error('Resource error: Not a valid "InputStream" resource.');
684
- }
685
- var handle2 = handleCnt1++;
686
- handleTable1.set(handle2, { rep: e, own: true });
687
- dataView(memory0).setInt32(arg2 + 4, handle2, true);
688
- break;
689
- }
690
- case "err": {
691
- const e = variant4.val;
692
- dataView(memory0).setInt8(arg2 + 0, 1, true);
693
- var val3 = e;
694
- let enum3;
695
- switch (val3) {
696
- case "access": {
697
- enum3 = 0;
698
- break;
699
- }
700
- case "would-block": {
701
- enum3 = 1;
702
- break;
703
- }
704
- case "already": {
705
- enum3 = 2;
706
- break;
707
- }
708
- case "bad-descriptor": {
709
- enum3 = 3;
710
- break;
711
- }
712
- case "busy": {
713
- enum3 = 4;
714
- break;
715
- }
716
- case "deadlock": {
717
- enum3 = 5;
718
- break;
719
- }
720
- case "quota": {
721
- enum3 = 6;
722
- break;
723
- }
724
- case "exist": {
725
- enum3 = 7;
726
- break;
727
- }
728
- case "file-too-large": {
729
- enum3 = 8;
730
- break;
731
- }
732
- case "illegal-byte-sequence": {
733
- enum3 = 9;
734
- break;
735
- }
736
- case "in-progress": {
737
- enum3 = 10;
738
- break;
739
- }
740
- case "interrupted": {
741
- enum3 = 11;
742
- break;
743
- }
744
- case "invalid": {
745
- enum3 = 12;
746
- break;
747
- }
748
- case "io": {
749
- enum3 = 13;
750
- break;
751
- }
752
- case "is-directory": {
753
- enum3 = 14;
754
- break;
755
- }
756
- case "loop": {
757
- enum3 = 15;
758
- break;
759
- }
760
- case "too-many-links": {
761
- enum3 = 16;
762
- break;
763
- }
764
- case "message-size": {
765
- enum3 = 17;
766
- break;
767
- }
768
- case "name-too-long": {
769
- enum3 = 18;
770
- break;
771
- }
772
- case "no-device": {
773
- enum3 = 19;
774
- break;
775
- }
776
- case "no-entry": {
777
- enum3 = 20;
778
- break;
779
- }
780
- case "no-lock": {
781
- enum3 = 21;
782
- break;
783
- }
784
- case "insufficient-memory": {
785
- enum3 = 22;
786
- break;
787
- }
788
- case "insufficient-space": {
789
- enum3 = 23;
790
- break;
791
- }
792
- case "not-directory": {
793
- enum3 = 24;
794
- break;
795
- }
796
- case "not-empty": {
797
- enum3 = 25;
798
- break;
799
- }
800
- case "not-recoverable": {
801
- enum3 = 26;
802
- break;
803
- }
804
- case "unsupported": {
805
- enum3 = 27;
806
- break;
807
- }
808
- case "no-tty": {
809
- enum3 = 28;
810
- break;
811
- }
812
- case "no-such-device": {
813
- enum3 = 29;
814
- break;
815
- }
816
- case "overflow": {
817
- enum3 = 30;
818
- break;
819
- }
820
- case "not-permitted": {
821
- enum3 = 31;
822
- break;
823
- }
824
- case "pipe": {
825
- enum3 = 32;
826
- break;
827
- }
828
- case "read-only": {
829
- enum3 = 33;
830
- break;
831
- }
832
- case "invalid-seek": {
833
- enum3 = 34;
834
- break;
835
- }
836
- case "text-file-busy": {
837
- enum3 = 35;
838
- break;
839
- }
840
- case "cross-device": {
841
- enum3 = 36;
842
- break;
843
- }
844
- default: {
845
- if (e instanceof Error) {
846
- console.error(e);
847
- }
848
- throw new TypeError(`"${val3}" is not one of the cases of error-code`);
849
- }
850
- }
851
- dataView(memory0).setInt8(arg2 + 4, enum3, true);
852
- break;
853
- }
854
- default: {
855
- throw new TypeError("invalid variant specified for result");
856
- }
857
- }
858
- }
859
- function trampoline15(arg0, arg1, arg2) {
860
- var handle1 = arg0;
861
- var rsc0 = handleTable5.get(handle1).rep;
862
- let ret;
863
- try {
864
- ret = { tag: "ok", val: Descriptor2.prototype.writeViaStream.call(rsc0, BigInt.asUintN(64, arg1)) };
865
- } catch (e) {
866
- ret = { tag: "err", val: getErrorPayload(e) };
867
- }
868
- var variant4 = ret;
869
- switch (variant4.tag) {
870
- case "ok": {
871
- const e = variant4.val;
872
- dataView(memory0).setInt8(arg2 + 0, 0, true);
873
- if (!(e instanceof OutputStream2)) {
874
- throw new Error('Resource error: Not a valid "OutputStream" resource.');
875
- }
876
- var handle2 = handleCnt2++;
877
- handleTable2.set(handle2, { rep: e, own: true });
878
- dataView(memory0).setInt32(arg2 + 4, handle2, true);
879
- break;
880
- }
881
- case "err": {
882
- const e = variant4.val;
883
- dataView(memory0).setInt8(arg2 + 0, 1, true);
884
- var val3 = e;
885
- let enum3;
886
- switch (val3) {
887
- case "access": {
888
- enum3 = 0;
889
- break;
890
- }
891
- case "would-block": {
892
- enum3 = 1;
893
- break;
894
- }
895
- case "already": {
896
- enum3 = 2;
897
- break;
898
- }
899
- case "bad-descriptor": {
900
- enum3 = 3;
901
- break;
902
- }
903
- case "busy": {
904
- enum3 = 4;
905
- break;
906
- }
907
- case "deadlock": {
908
- enum3 = 5;
909
- break;
910
- }
911
- case "quota": {
912
- enum3 = 6;
913
- break;
914
- }
915
- case "exist": {
916
- enum3 = 7;
917
- break;
918
- }
919
- case "file-too-large": {
920
- enum3 = 8;
921
- break;
922
- }
923
- case "illegal-byte-sequence": {
924
- enum3 = 9;
925
- break;
926
- }
927
- case "in-progress": {
928
- enum3 = 10;
929
- break;
930
- }
931
- case "interrupted": {
932
- enum3 = 11;
933
- break;
934
- }
935
- case "invalid": {
936
- enum3 = 12;
937
- break;
938
- }
939
- case "io": {
940
- enum3 = 13;
941
- break;
942
- }
943
- case "is-directory": {
944
- enum3 = 14;
945
- break;
946
- }
947
- case "loop": {
948
- enum3 = 15;
949
- break;
950
- }
951
- case "too-many-links": {
952
- enum3 = 16;
953
- break;
954
- }
955
- case "message-size": {
956
- enum3 = 17;
957
- break;
958
- }
959
- case "name-too-long": {
960
- enum3 = 18;
961
- break;
962
- }
963
- case "no-device": {
964
- enum3 = 19;
965
- break;
966
- }
967
- case "no-entry": {
968
- enum3 = 20;
969
- break;
970
- }
971
- case "no-lock": {
972
- enum3 = 21;
973
- break;
974
- }
975
- case "insufficient-memory": {
976
- enum3 = 22;
977
- break;
978
- }
979
- case "insufficient-space": {
980
- enum3 = 23;
981
- break;
982
- }
983
- case "not-directory": {
984
- enum3 = 24;
985
- break;
986
- }
987
- case "not-empty": {
988
- enum3 = 25;
989
- break;
990
- }
991
- case "not-recoverable": {
992
- enum3 = 26;
993
- break;
994
- }
995
- case "unsupported": {
996
- enum3 = 27;
997
- break;
998
- }
999
- case "no-tty": {
1000
- enum3 = 28;
1001
- break;
1002
- }
1003
- case "no-such-device": {
1004
- enum3 = 29;
1005
- break;
1006
- }
1007
- case "overflow": {
1008
- enum3 = 30;
1009
- break;
1010
- }
1011
- case "not-permitted": {
1012
- enum3 = 31;
1013
- break;
1014
- }
1015
- case "pipe": {
1016
- enum3 = 32;
1017
- break;
1018
- }
1019
- case "read-only": {
1020
- enum3 = 33;
1021
- break;
1022
- }
1023
- case "invalid-seek": {
1024
- enum3 = 34;
1025
- break;
1026
- }
1027
- case "text-file-busy": {
1028
- enum3 = 35;
1029
- break;
1030
- }
1031
- case "cross-device": {
1032
- enum3 = 36;
1033
- break;
1034
- }
1035
- default: {
1036
- if (e instanceof Error) {
1037
- console.error(e);
1038
- }
1039
- throw new TypeError(`"${val3}" is not one of the cases of error-code`);
1040
- }
1041
- }
1042
- dataView(memory0).setInt8(arg2 + 4, enum3, true);
1043
- break;
1044
- }
1045
- default: {
1046
- throw new TypeError("invalid variant specified for result");
1047
- }
1048
- }
1049
- }
1050
- function trampoline16(arg0, arg1) {
1051
- var handle1 = arg0;
1052
- var rsc0 = handleTable5.get(handle1).rep;
1053
- let ret;
1054
- try {
1055
- ret = { tag: "ok", val: Descriptor2.prototype.appendViaStream.call(rsc0) };
1056
- } catch (e) {
1057
- ret = { tag: "err", val: getErrorPayload(e) };
1058
- }
1059
- var variant4 = ret;
1060
- switch (variant4.tag) {
1061
- case "ok": {
1062
- const e = variant4.val;
1063
- dataView(memory0).setInt8(arg1 + 0, 0, true);
1064
- if (!(e instanceof OutputStream2)) {
1065
- throw new Error('Resource error: Not a valid "OutputStream" resource.');
1066
- }
1067
- var handle2 = handleCnt2++;
1068
- handleTable2.set(handle2, { rep: e, own: true });
1069
- dataView(memory0).setInt32(arg1 + 4, handle2, true);
1070
- break;
1071
- }
1072
- case "err": {
1073
- const e = variant4.val;
1074
- dataView(memory0).setInt8(arg1 + 0, 1, true);
1075
- var val3 = e;
1076
- let enum3;
1077
- switch (val3) {
1078
- case "access": {
1079
- enum3 = 0;
1080
- break;
1081
- }
1082
- case "would-block": {
1083
- enum3 = 1;
1084
- break;
1085
- }
1086
- case "already": {
1087
- enum3 = 2;
1088
- break;
1089
- }
1090
- case "bad-descriptor": {
1091
- enum3 = 3;
1092
- break;
1093
- }
1094
- case "busy": {
1095
- enum3 = 4;
1096
- break;
1097
- }
1098
- case "deadlock": {
1099
- enum3 = 5;
1100
- break;
1101
- }
1102
- case "quota": {
1103
- enum3 = 6;
1104
- break;
1105
- }
1106
- case "exist": {
1107
- enum3 = 7;
1108
- break;
1109
- }
1110
- case "file-too-large": {
1111
- enum3 = 8;
1112
- break;
1113
- }
1114
- case "illegal-byte-sequence": {
1115
- enum3 = 9;
1116
- break;
1117
- }
1118
- case "in-progress": {
1119
- enum3 = 10;
1120
- break;
1121
- }
1122
- case "interrupted": {
1123
- enum3 = 11;
1124
- break;
1125
- }
1126
- case "invalid": {
1127
- enum3 = 12;
1128
- break;
1129
- }
1130
- case "io": {
1131
- enum3 = 13;
1132
- break;
1133
- }
1134
- case "is-directory": {
1135
- enum3 = 14;
1136
- break;
1137
- }
1138
- case "loop": {
1139
- enum3 = 15;
1140
- break;
1141
- }
1142
- case "too-many-links": {
1143
- enum3 = 16;
1144
- break;
1145
- }
1146
- case "message-size": {
1147
- enum3 = 17;
1148
- break;
1149
- }
1150
- case "name-too-long": {
1151
- enum3 = 18;
1152
- break;
1153
- }
1154
- case "no-device": {
1155
- enum3 = 19;
1156
- break;
1157
- }
1158
- case "no-entry": {
1159
- enum3 = 20;
1160
- break;
1161
- }
1162
- case "no-lock": {
1163
- enum3 = 21;
1164
- break;
1165
- }
1166
- case "insufficient-memory": {
1167
- enum3 = 22;
1168
- break;
1169
- }
1170
- case "insufficient-space": {
1171
- enum3 = 23;
1172
- break;
1173
- }
1174
- case "not-directory": {
1175
- enum3 = 24;
1176
- break;
1177
- }
1178
- case "not-empty": {
1179
- enum3 = 25;
1180
- break;
1181
- }
1182
- case "not-recoverable": {
1183
- enum3 = 26;
1184
- break;
1185
- }
1186
- case "unsupported": {
1187
- enum3 = 27;
1188
- break;
1189
- }
1190
- case "no-tty": {
1191
- enum3 = 28;
1192
- break;
1193
- }
1194
- case "no-such-device": {
1195
- enum3 = 29;
1196
- break;
1197
- }
1198
- case "overflow": {
1199
- enum3 = 30;
1200
- break;
1201
- }
1202
- case "not-permitted": {
1203
- enum3 = 31;
1204
- break;
1205
- }
1206
- case "pipe": {
1207
- enum3 = 32;
1208
- break;
1209
- }
1210
- case "read-only": {
1211
- enum3 = 33;
1212
- break;
1213
- }
1214
- case "invalid-seek": {
1215
- enum3 = 34;
1216
- break;
1217
- }
1218
- case "text-file-busy": {
1219
- enum3 = 35;
1220
- break;
1221
- }
1222
- case "cross-device": {
1223
- enum3 = 36;
1224
- break;
1225
- }
1226
- default: {
1227
- if (e instanceof Error) {
1228
- console.error(e);
1229
- }
1230
- throw new TypeError(`"${val3}" is not one of the cases of error-code`);
1231
- }
1232
- }
1233
- dataView(memory0).setInt8(arg1 + 4, enum3, true);
1234
- break;
1235
- }
1236
- default: {
1237
- throw new TypeError("invalid variant specified for result");
1238
- }
1239
- }
1240
- }
1241
- function trampoline17(arg0, arg1) {
1242
- var handle1 = arg0;
1243
- var rsc0 = handleTable5.get(handle1).rep;
1244
- let ret;
1245
- try {
1246
- ret = { tag: "ok", val: Descriptor2.prototype.getFlags.call(rsc0) };
1247
- } catch (e) {
1248
- ret = { tag: "err", val: getErrorPayload(e) };
1249
- }
1250
- var variant4 = ret;
1251
- switch (variant4.tag) {
1252
- case "ok": {
1253
- const e = variant4.val;
1254
- dataView(memory0).setInt8(arg1 + 0, 0, true);
1255
- let flags2 = 0;
1256
- if (typeof e === "object" && e !== null) {
1257
- flags2 = Boolean(e.read) << 0 | Boolean(e.write) << 1 | Boolean(e.fileIntegritySync) << 2 | Boolean(e.dataIntegritySync) << 3 | Boolean(e.requestedWriteSync) << 4 | Boolean(e.mutateDirectory) << 5;
1258
- } else if (e !== null && e !== void 0) {
1259
- throw new TypeError("only an object, undefined or null can be converted to flags");
1260
- }
1261
- dataView(memory0).setInt8(arg1 + 1, flags2, true);
1262
- break;
1263
- }
1264
- case "err": {
1265
- const e = variant4.val;
1266
- dataView(memory0).setInt8(arg1 + 0, 1, true);
1267
- var val3 = e;
1268
- let enum3;
1269
- switch (val3) {
1270
- case "access": {
1271
- enum3 = 0;
1272
- break;
1273
- }
1274
- case "would-block": {
1275
- enum3 = 1;
1276
- break;
1277
- }
1278
- case "already": {
1279
- enum3 = 2;
1280
- break;
1281
- }
1282
- case "bad-descriptor": {
1283
- enum3 = 3;
1284
- break;
1285
- }
1286
- case "busy": {
1287
- enum3 = 4;
1288
- break;
1289
- }
1290
- case "deadlock": {
1291
- enum3 = 5;
1292
- break;
1293
- }
1294
- case "quota": {
1295
- enum3 = 6;
1296
- break;
1297
- }
1298
- case "exist": {
1299
- enum3 = 7;
1300
- break;
1301
- }
1302
- case "file-too-large": {
1303
- enum3 = 8;
1304
- break;
1305
- }
1306
- case "illegal-byte-sequence": {
1307
- enum3 = 9;
1308
- break;
1309
- }
1310
- case "in-progress": {
1311
- enum3 = 10;
1312
- break;
1313
- }
1314
- case "interrupted": {
1315
- enum3 = 11;
1316
- break;
1317
- }
1318
- case "invalid": {
1319
- enum3 = 12;
1320
- break;
1321
- }
1322
- case "io": {
1323
- enum3 = 13;
1324
- break;
1325
- }
1326
- case "is-directory": {
1327
- enum3 = 14;
1328
- break;
1329
- }
1330
- case "loop": {
1331
- enum3 = 15;
1332
- break;
1333
- }
1334
- case "too-many-links": {
1335
- enum3 = 16;
1336
- break;
1337
- }
1338
- case "message-size": {
1339
- enum3 = 17;
1340
- break;
1341
- }
1342
- case "name-too-long": {
1343
- enum3 = 18;
1344
- break;
1345
- }
1346
- case "no-device": {
1347
- enum3 = 19;
1348
- break;
1349
- }
1350
- case "no-entry": {
1351
- enum3 = 20;
1352
- break;
1353
- }
1354
- case "no-lock": {
1355
- enum3 = 21;
1356
- break;
1357
- }
1358
- case "insufficient-memory": {
1359
- enum3 = 22;
1360
- break;
1361
- }
1362
- case "insufficient-space": {
1363
- enum3 = 23;
1364
- break;
1365
- }
1366
- case "not-directory": {
1367
- enum3 = 24;
1368
- break;
1369
- }
1370
- case "not-empty": {
1371
- enum3 = 25;
1372
- break;
1373
- }
1374
- case "not-recoverable": {
1375
- enum3 = 26;
1376
- break;
1377
- }
1378
- case "unsupported": {
1379
- enum3 = 27;
1380
- break;
1381
- }
1382
- case "no-tty": {
1383
- enum3 = 28;
1384
- break;
1385
- }
1386
- case "no-such-device": {
1387
- enum3 = 29;
1388
- break;
1389
- }
1390
- case "overflow": {
1391
- enum3 = 30;
1392
- break;
1393
- }
1394
- case "not-permitted": {
1395
- enum3 = 31;
1396
- break;
1397
- }
1398
- case "pipe": {
1399
- enum3 = 32;
1400
- break;
1401
- }
1402
- case "read-only": {
1403
- enum3 = 33;
1404
- break;
1405
- }
1406
- case "invalid-seek": {
1407
- enum3 = 34;
1408
- break;
1409
- }
1410
- case "text-file-busy": {
1411
- enum3 = 35;
1412
- break;
1413
- }
1414
- case "cross-device": {
1415
- enum3 = 36;
1416
- break;
1417
- }
1418
- default: {
1419
- if (e instanceof Error) {
1420
- console.error(e);
1421
- }
1422
- throw new TypeError(`"${val3}" is not one of the cases of error-code`);
1423
- }
1424
- }
1425
- dataView(memory0).setInt8(arg1 + 1, enum3, true);
1426
- break;
1427
- }
1428
- default: {
1429
- throw new TypeError("invalid variant specified for result");
1430
- }
1431
- }
1432
- }
1433
- function trampoline18(arg0, arg1) {
1434
- var handle1 = arg0;
1435
- var rsc0 = handleTable5.get(handle1).rep;
1436
- let ret;
1437
- try {
1438
- ret = { tag: "ok", val: Descriptor2.prototype.getType.call(rsc0) };
1439
- } catch (e) {
1440
- ret = { tag: "err", val: getErrorPayload(e) };
1441
- }
1442
- var variant4 = ret;
1443
- switch (variant4.tag) {
1444
- case "ok": {
1445
- const e = variant4.val;
1446
- dataView(memory0).setInt8(arg1 + 0, 0, true);
1447
- var val2 = e;
1448
- let enum2;
1449
- switch (val2) {
1450
- case "unknown": {
1451
- enum2 = 0;
1452
- break;
1453
- }
1454
- case "block-device": {
1455
- enum2 = 1;
1456
- break;
1457
- }
1458
- case "character-device": {
1459
- enum2 = 2;
1460
- break;
1461
- }
1462
- case "directory": {
1463
- enum2 = 3;
1464
- break;
1465
- }
1466
- case "fifo": {
1467
- enum2 = 4;
1468
- break;
1469
- }
1470
- case "symbolic-link": {
1471
- enum2 = 5;
1472
- break;
1473
- }
1474
- case "regular-file": {
1475
- enum2 = 6;
1476
- break;
1477
- }
1478
- case "socket": {
1479
- enum2 = 7;
1480
- break;
1481
- }
1482
- default: {
1483
- if (e instanceof Error) {
1484
- console.error(e);
1485
- }
1486
- throw new TypeError(`"${val2}" is not one of the cases of descriptor-type`);
1487
- }
1488
- }
1489
- dataView(memory0).setInt8(arg1 + 1, enum2, true);
1490
- break;
1491
- }
1492
- case "err": {
1493
- const e = variant4.val;
1494
- dataView(memory0).setInt8(arg1 + 0, 1, true);
1495
- var val3 = e;
1496
- let enum3;
1497
- switch (val3) {
1498
- case "access": {
1499
- enum3 = 0;
1500
- break;
1501
- }
1502
- case "would-block": {
1503
- enum3 = 1;
1504
- break;
1505
- }
1506
- case "already": {
1507
- enum3 = 2;
1508
- break;
1509
- }
1510
- case "bad-descriptor": {
1511
- enum3 = 3;
1512
- break;
1513
- }
1514
- case "busy": {
1515
- enum3 = 4;
1516
- break;
1517
- }
1518
- case "deadlock": {
1519
- enum3 = 5;
1520
- break;
1521
- }
1522
- case "quota": {
1523
- enum3 = 6;
1524
- break;
1525
- }
1526
- case "exist": {
1527
- enum3 = 7;
1528
- break;
1529
- }
1530
- case "file-too-large": {
1531
- enum3 = 8;
1532
- break;
1533
- }
1534
- case "illegal-byte-sequence": {
1535
- enum3 = 9;
1536
- break;
1537
- }
1538
- case "in-progress": {
1539
- enum3 = 10;
1540
- break;
1541
- }
1542
- case "interrupted": {
1543
- enum3 = 11;
1544
- break;
1545
- }
1546
- case "invalid": {
1547
- enum3 = 12;
1548
- break;
1549
- }
1550
- case "io": {
1551
- enum3 = 13;
1552
- break;
1553
- }
1554
- case "is-directory": {
1555
- enum3 = 14;
1556
- break;
1557
- }
1558
- case "loop": {
1559
- enum3 = 15;
1560
- break;
1561
- }
1562
- case "too-many-links": {
1563
- enum3 = 16;
1564
- break;
1565
- }
1566
- case "message-size": {
1567
- enum3 = 17;
1568
- break;
1569
- }
1570
- case "name-too-long": {
1571
- enum3 = 18;
1572
- break;
1573
- }
1574
- case "no-device": {
1575
- enum3 = 19;
1576
- break;
1577
- }
1578
- case "no-entry": {
1579
- enum3 = 20;
1580
- break;
1581
- }
1582
- case "no-lock": {
1583
- enum3 = 21;
1584
- break;
1585
- }
1586
- case "insufficient-memory": {
1587
- enum3 = 22;
1588
- break;
1589
- }
1590
- case "insufficient-space": {
1591
- enum3 = 23;
1592
- break;
1593
- }
1594
- case "not-directory": {
1595
- enum3 = 24;
1596
- break;
1597
- }
1598
- case "not-empty": {
1599
- enum3 = 25;
1600
- break;
1601
- }
1602
- case "not-recoverable": {
1603
- enum3 = 26;
1604
- break;
1605
- }
1606
- case "unsupported": {
1607
- enum3 = 27;
1608
- break;
1609
- }
1610
- case "no-tty": {
1611
- enum3 = 28;
1612
- break;
1613
- }
1614
- case "no-such-device": {
1615
- enum3 = 29;
1616
- break;
1617
- }
1618
- case "overflow": {
1619
- enum3 = 30;
1620
- break;
1621
- }
1622
- case "not-permitted": {
1623
- enum3 = 31;
1624
- break;
1625
- }
1626
- case "pipe": {
1627
- enum3 = 32;
1628
- break;
1629
- }
1630
- case "read-only": {
1631
- enum3 = 33;
1632
- break;
1633
- }
1634
- case "invalid-seek": {
1635
- enum3 = 34;
1636
- break;
1637
- }
1638
- case "text-file-busy": {
1639
- enum3 = 35;
1640
- break;
1641
- }
1642
- case "cross-device": {
1643
- enum3 = 36;
1644
- break;
1645
- }
1646
- default: {
1647
- if (e instanceof Error) {
1648
- console.error(e);
1649
- }
1650
- throw new TypeError(`"${val3}" is not one of the cases of error-code`);
1651
- }
1652
- }
1653
- dataView(memory0).setInt8(arg1 + 1, enum3, true);
1654
- break;
1655
- }
1656
- default: {
1657
- throw new TypeError("invalid variant specified for result");
1658
- }
1659
- }
1660
- }
1661
- function trampoline19(arg0, arg1) {
1662
- var handle1 = arg0;
1663
- var rsc0 = handleTable5.get(handle1).rep;
1664
- let ret;
1665
- try {
1666
- ret = { tag: "ok", val: Descriptor2.prototype.readDirectory.call(rsc0) };
1667
- } catch (e) {
1668
- ret = { tag: "err", val: getErrorPayload(e) };
1669
- }
1670
- var variant4 = ret;
1671
- switch (variant4.tag) {
1672
- case "ok": {
1673
- const e = variant4.val;
1674
- dataView(memory0).setInt8(arg1 + 0, 0, true);
1675
- if (!(e instanceof DirectoryEntryStream2)) {
1676
- throw new Error('Resource error: Not a valid "DirectoryEntryStream" resource.');
1677
- }
1678
- var handle2 = handleCnt6++;
1679
- handleTable6.set(handle2, { rep: e, own: true });
1680
- dataView(memory0).setInt32(arg1 + 4, handle2, true);
1681
- break;
1682
- }
1683
- case "err": {
1684
- const e = variant4.val;
1685
- dataView(memory0).setInt8(arg1 + 0, 1, true);
1686
- var val3 = e;
1687
- let enum3;
1688
- switch (val3) {
1689
- case "access": {
1690
- enum3 = 0;
1691
- break;
1692
- }
1693
- case "would-block": {
1694
- enum3 = 1;
1695
- break;
1696
- }
1697
- case "already": {
1698
- enum3 = 2;
1699
- break;
1700
- }
1701
- case "bad-descriptor": {
1702
- enum3 = 3;
1703
- break;
1704
- }
1705
- case "busy": {
1706
- enum3 = 4;
1707
- break;
1708
- }
1709
- case "deadlock": {
1710
- enum3 = 5;
1711
- break;
1712
- }
1713
- case "quota": {
1714
- enum3 = 6;
1715
- break;
1716
- }
1717
- case "exist": {
1718
- enum3 = 7;
1719
- break;
1720
- }
1721
- case "file-too-large": {
1722
- enum3 = 8;
1723
- break;
1724
- }
1725
- case "illegal-byte-sequence": {
1726
- enum3 = 9;
1727
- break;
1728
- }
1729
- case "in-progress": {
1730
- enum3 = 10;
1731
- break;
1732
- }
1733
- case "interrupted": {
1734
- enum3 = 11;
1735
- break;
1736
- }
1737
- case "invalid": {
1738
- enum3 = 12;
1739
- break;
1740
- }
1741
- case "io": {
1742
- enum3 = 13;
1743
- break;
1744
- }
1745
- case "is-directory": {
1746
- enum3 = 14;
1747
- break;
1748
- }
1749
- case "loop": {
1750
- enum3 = 15;
1751
- break;
1752
- }
1753
- case "too-many-links": {
1754
- enum3 = 16;
1755
- break;
1756
- }
1757
- case "message-size": {
1758
- enum3 = 17;
1759
- break;
1760
- }
1761
- case "name-too-long": {
1762
- enum3 = 18;
1763
- break;
1764
- }
1765
- case "no-device": {
1766
- enum3 = 19;
1767
- break;
1768
- }
1769
- case "no-entry": {
1770
- enum3 = 20;
1771
- break;
1772
- }
1773
- case "no-lock": {
1774
- enum3 = 21;
1775
- break;
1776
- }
1777
- case "insufficient-memory": {
1778
- enum3 = 22;
1779
- break;
1780
- }
1781
- case "insufficient-space": {
1782
- enum3 = 23;
1783
- break;
1784
- }
1785
- case "not-directory": {
1786
- enum3 = 24;
1787
- break;
1788
- }
1789
- case "not-empty": {
1790
- enum3 = 25;
1791
- break;
1792
- }
1793
- case "not-recoverable": {
1794
- enum3 = 26;
1795
- break;
1796
- }
1797
- case "unsupported": {
1798
- enum3 = 27;
1799
- break;
1800
- }
1801
- case "no-tty": {
1802
- enum3 = 28;
1803
- break;
1804
- }
1805
- case "no-such-device": {
1806
- enum3 = 29;
1807
- break;
1808
- }
1809
- case "overflow": {
1810
- enum3 = 30;
1811
- break;
1812
- }
1813
- case "not-permitted": {
1814
- enum3 = 31;
1815
- break;
1816
- }
1817
- case "pipe": {
1818
- enum3 = 32;
1819
- break;
1820
- }
1821
- case "read-only": {
1822
- enum3 = 33;
1823
- break;
1824
- }
1825
- case "invalid-seek": {
1826
- enum3 = 34;
1827
- break;
1828
- }
1829
- case "text-file-busy": {
1830
- enum3 = 35;
1831
- break;
1832
- }
1833
- case "cross-device": {
1834
- enum3 = 36;
1835
- break;
1836
- }
1837
- default: {
1838
- if (e instanceof Error) {
1839
- console.error(e);
1840
- }
1841
- throw new TypeError(`"${val3}" is not one of the cases of error-code`);
1842
- }
1843
- }
1844
- dataView(memory0).setInt8(arg1 + 4, enum3, true);
1845
- break;
1846
- }
1847
- default: {
1848
- throw new TypeError("invalid variant specified for result");
1849
- }
1850
- }
1851
- }
1852
- function trampoline20(arg0, arg1, arg2, arg3) {
1853
- var handle1 = arg0;
1854
- var rsc0 = handleTable5.get(handle1).rep;
1855
- var ptr2 = arg1;
1856
- var len2 = arg2;
1857
- var result2 = utf8Decoder.decode(new Uint8Array(memory0.buffer, ptr2, len2));
1858
- let ret;
1859
- try {
1860
- ret = { tag: "ok", val: Descriptor2.prototype.createDirectoryAt.call(rsc0, result2) };
1861
- } catch (e) {
1862
- ret = { tag: "err", val: getErrorPayload(e) };
1863
- }
1864
- var variant4 = ret;
1865
- switch (variant4.tag) {
1866
- case "ok": {
1867
- const e = variant4.val;
1868
- dataView(memory0).setInt8(arg3 + 0, 0, true);
1869
- break;
1870
- }
1871
- case "err": {
1872
- const e = variant4.val;
1873
- dataView(memory0).setInt8(arg3 + 0, 1, true);
1874
- var val3 = e;
1875
- let enum3;
1876
- switch (val3) {
1877
- case "access": {
1878
- enum3 = 0;
1879
- break;
1880
- }
1881
- case "would-block": {
1882
- enum3 = 1;
1883
- break;
1884
- }
1885
- case "already": {
1886
- enum3 = 2;
1887
- break;
1888
- }
1889
- case "bad-descriptor": {
1890
- enum3 = 3;
1891
- break;
1892
- }
1893
- case "busy": {
1894
- enum3 = 4;
1895
- break;
1896
- }
1897
- case "deadlock": {
1898
- enum3 = 5;
1899
- break;
1900
- }
1901
- case "quota": {
1902
- enum3 = 6;
1903
- break;
1904
- }
1905
- case "exist": {
1906
- enum3 = 7;
1907
- break;
1908
- }
1909
- case "file-too-large": {
1910
- enum3 = 8;
1911
- break;
1912
- }
1913
- case "illegal-byte-sequence": {
1914
- enum3 = 9;
1915
- break;
1916
- }
1917
- case "in-progress": {
1918
- enum3 = 10;
1919
- break;
1920
- }
1921
- case "interrupted": {
1922
- enum3 = 11;
1923
- break;
1924
- }
1925
- case "invalid": {
1926
- enum3 = 12;
1927
- break;
1928
- }
1929
- case "io": {
1930
- enum3 = 13;
1931
- break;
1932
- }
1933
- case "is-directory": {
1934
- enum3 = 14;
1935
- break;
1936
- }
1937
- case "loop": {
1938
- enum3 = 15;
1939
- break;
1940
- }
1941
- case "too-many-links": {
1942
- enum3 = 16;
1943
- break;
1944
- }
1945
- case "message-size": {
1946
- enum3 = 17;
1947
- break;
1948
- }
1949
- case "name-too-long": {
1950
- enum3 = 18;
1951
- break;
1952
- }
1953
- case "no-device": {
1954
- enum3 = 19;
1955
- break;
1956
- }
1957
- case "no-entry": {
1958
- enum3 = 20;
1959
- break;
1960
- }
1961
- case "no-lock": {
1962
- enum3 = 21;
1963
- break;
1964
- }
1965
- case "insufficient-memory": {
1966
- enum3 = 22;
1967
- break;
1968
- }
1969
- case "insufficient-space": {
1970
- enum3 = 23;
1971
- break;
1972
- }
1973
- case "not-directory": {
1974
- enum3 = 24;
1975
- break;
1976
- }
1977
- case "not-empty": {
1978
- enum3 = 25;
1979
- break;
1980
- }
1981
- case "not-recoverable": {
1982
- enum3 = 26;
1983
- break;
1984
- }
1985
- case "unsupported": {
1986
- enum3 = 27;
1987
- break;
1988
- }
1989
- case "no-tty": {
1990
- enum3 = 28;
1991
- break;
1992
- }
1993
- case "no-such-device": {
1994
- enum3 = 29;
1995
- break;
1996
- }
1997
- case "overflow": {
1998
- enum3 = 30;
1999
- break;
2000
- }
2001
- case "not-permitted": {
2002
- enum3 = 31;
2003
- break;
2004
- }
2005
- case "pipe": {
2006
- enum3 = 32;
2007
- break;
2008
- }
2009
- case "read-only": {
2010
- enum3 = 33;
2011
- break;
2012
- }
2013
- case "invalid-seek": {
2014
- enum3 = 34;
2015
- break;
2016
- }
2017
- case "text-file-busy": {
2018
- enum3 = 35;
2019
- break;
2020
- }
2021
- case "cross-device": {
2022
- enum3 = 36;
2023
- break;
2024
- }
2025
- default: {
2026
- if (e instanceof Error) {
2027
- console.error(e);
2028
- }
2029
- throw new TypeError(`"${val3}" is not one of the cases of error-code`);
2030
- }
2031
- }
2032
- dataView(memory0).setInt8(arg3 + 1, enum3, true);
2033
- break;
2034
- }
2035
- default: {
2036
- throw new TypeError("invalid variant specified for result");
2037
- }
2038
- }
2039
- }
2040
- function trampoline21(arg0, arg1) {
2041
- var handle1 = arg0;
2042
- var rsc0 = handleTable5.get(handle1).rep;
2043
- let ret;
2044
- try {
2045
- ret = { tag: "ok", val: Descriptor2.prototype.stat.call(rsc0) };
2046
- } catch (e) {
2047
- ret = { tag: "err", val: getErrorPayload(e) };
2048
- }
2049
- var variant11 = ret;
2050
- switch (variant11.tag) {
2051
- case "ok": {
2052
- const e = variant11.val;
2053
- dataView(memory0).setInt8(arg1 + 0, 0, true);
2054
- var { type: v2_0, linkCount: v2_1, size: v2_2, dataAccessTimestamp: v2_3, dataModificationTimestamp: v2_4, statusChangeTimestamp: v2_5 } = e;
2055
- var val3 = v2_0;
2056
- let enum3;
2057
- switch (val3) {
2058
- case "unknown": {
2059
- enum3 = 0;
2060
- break;
2061
- }
2062
- case "block-device": {
2063
- enum3 = 1;
2064
- break;
2065
- }
2066
- case "character-device": {
2067
- enum3 = 2;
2068
- break;
2069
- }
2070
- case "directory": {
2071
- enum3 = 3;
2072
- break;
2073
- }
2074
- case "fifo": {
2075
- enum3 = 4;
2076
- break;
2077
- }
2078
- case "symbolic-link": {
2079
- enum3 = 5;
2080
- break;
2081
- }
2082
- case "regular-file": {
2083
- enum3 = 6;
2084
- break;
2085
- }
2086
- case "socket": {
2087
- enum3 = 7;
2088
- break;
2089
- }
2090
- default: {
2091
- if (v2_0 instanceof Error) {
2092
- console.error(v2_0);
2093
- }
2094
- throw new TypeError(`"${val3}" is not one of the cases of descriptor-type`);
2095
- }
2096
- }
2097
- dataView(memory0).setInt8(arg1 + 8, enum3, true);
2098
- dataView(memory0).setBigInt64(arg1 + 16, toUint64(v2_1), true);
2099
- dataView(memory0).setBigInt64(arg1 + 24, toUint64(v2_2), true);
2100
- var variant5 = v2_3;
2101
- if (variant5 === null || variant5 === void 0) {
2102
- dataView(memory0).setInt8(arg1 + 32, 0, true);
2103
- } else {
2104
- const e2 = variant5;
2105
- dataView(memory0).setInt8(arg1 + 32, 1, true);
2106
- var { seconds: v4_0, nanoseconds: v4_1 } = e2;
2107
- dataView(memory0).setBigInt64(arg1 + 40, toUint64(v4_0), true);
2108
- dataView(memory0).setInt32(arg1 + 48, toUint32(v4_1), true);
2109
- }
2110
- var variant7 = v2_4;
2111
- if (variant7 === null || variant7 === void 0) {
2112
- dataView(memory0).setInt8(arg1 + 56, 0, true);
2113
- } else {
2114
- const e2 = variant7;
2115
- dataView(memory0).setInt8(arg1 + 56, 1, true);
2116
- var { seconds: v6_0, nanoseconds: v6_1 } = e2;
2117
- dataView(memory0).setBigInt64(arg1 + 64, toUint64(v6_0), true);
2118
- dataView(memory0).setInt32(arg1 + 72, toUint32(v6_1), true);
2119
- }
2120
- var variant9 = v2_5;
2121
- if (variant9 === null || variant9 === void 0) {
2122
- dataView(memory0).setInt8(arg1 + 80, 0, true);
2123
- } else {
2124
- const e2 = variant9;
2125
- dataView(memory0).setInt8(arg1 + 80, 1, true);
2126
- var { seconds: v8_0, nanoseconds: v8_1 } = e2;
2127
- dataView(memory0).setBigInt64(arg1 + 88, toUint64(v8_0), true);
2128
- dataView(memory0).setInt32(arg1 + 96, toUint32(v8_1), true);
2129
- }
2130
- break;
2131
- }
2132
- case "err": {
2133
- const e = variant11.val;
2134
- dataView(memory0).setInt8(arg1 + 0, 1, true);
2135
- var val10 = e;
2136
- let enum10;
2137
- switch (val10) {
2138
- case "access": {
2139
- enum10 = 0;
2140
- break;
2141
- }
2142
- case "would-block": {
2143
- enum10 = 1;
2144
- break;
2145
- }
2146
- case "already": {
2147
- enum10 = 2;
2148
- break;
2149
- }
2150
- case "bad-descriptor": {
2151
- enum10 = 3;
2152
- break;
2153
- }
2154
- case "busy": {
2155
- enum10 = 4;
2156
- break;
2157
- }
2158
- case "deadlock": {
2159
- enum10 = 5;
2160
- break;
2161
- }
2162
- case "quota": {
2163
- enum10 = 6;
2164
- break;
2165
- }
2166
- case "exist": {
2167
- enum10 = 7;
2168
- break;
2169
- }
2170
- case "file-too-large": {
2171
- enum10 = 8;
2172
- break;
2173
- }
2174
- case "illegal-byte-sequence": {
2175
- enum10 = 9;
2176
- break;
2177
- }
2178
- case "in-progress": {
2179
- enum10 = 10;
2180
- break;
2181
- }
2182
- case "interrupted": {
2183
- enum10 = 11;
2184
- break;
2185
- }
2186
- case "invalid": {
2187
- enum10 = 12;
2188
- break;
2189
- }
2190
- case "io": {
2191
- enum10 = 13;
2192
- break;
2193
- }
2194
- case "is-directory": {
2195
- enum10 = 14;
2196
- break;
2197
- }
2198
- case "loop": {
2199
- enum10 = 15;
2200
- break;
2201
- }
2202
- case "too-many-links": {
2203
- enum10 = 16;
2204
- break;
2205
- }
2206
- case "message-size": {
2207
- enum10 = 17;
2208
- break;
2209
- }
2210
- case "name-too-long": {
2211
- enum10 = 18;
2212
- break;
2213
- }
2214
- case "no-device": {
2215
- enum10 = 19;
2216
- break;
2217
- }
2218
- case "no-entry": {
2219
- enum10 = 20;
2220
- break;
2221
- }
2222
- case "no-lock": {
2223
- enum10 = 21;
2224
- break;
2225
- }
2226
- case "insufficient-memory": {
2227
- enum10 = 22;
2228
- break;
2229
- }
2230
- case "insufficient-space": {
2231
- enum10 = 23;
2232
- break;
2233
- }
2234
- case "not-directory": {
2235
- enum10 = 24;
2236
- break;
2237
- }
2238
- case "not-empty": {
2239
- enum10 = 25;
2240
- break;
2241
- }
2242
- case "not-recoverable": {
2243
- enum10 = 26;
2244
- break;
2245
- }
2246
- case "unsupported": {
2247
- enum10 = 27;
2248
- break;
2249
- }
2250
- case "no-tty": {
2251
- enum10 = 28;
2252
- break;
2253
- }
2254
- case "no-such-device": {
2255
- enum10 = 29;
2256
- break;
2257
- }
2258
- case "overflow": {
2259
- enum10 = 30;
2260
- break;
2261
- }
2262
- case "not-permitted": {
2263
- enum10 = 31;
2264
- break;
2265
- }
2266
- case "pipe": {
2267
- enum10 = 32;
2268
- break;
2269
- }
2270
- case "read-only": {
2271
- enum10 = 33;
2272
- break;
2273
- }
2274
- case "invalid-seek": {
2275
- enum10 = 34;
2276
- break;
2277
- }
2278
- case "text-file-busy": {
2279
- enum10 = 35;
2280
- break;
2281
- }
2282
- case "cross-device": {
2283
- enum10 = 36;
2284
- break;
2285
- }
2286
- default: {
2287
- if (e instanceof Error) {
2288
- console.error(e);
2289
- }
2290
- throw new TypeError(`"${val10}" is not one of the cases of error-code`);
2291
- }
2292
- }
2293
- dataView(memory0).setInt8(arg1 + 8, enum10, true);
2294
- break;
2295
- }
2296
- default: {
2297
- throw new TypeError("invalid variant specified for result");
2298
- }
2299
- }
2300
- }
2301
- function trampoline22(arg0, arg1, arg2, arg3, arg4) {
2302
- var handle1 = arg0;
2303
- var rsc0 = handleTable5.get(handle1).rep;
2304
- if ((arg1 & 4294967294) !== 0) {
2305
- throw new TypeError("flags have extraneous bits set");
2306
- }
2307
- var flags2 = {
2308
- symlinkFollow: Boolean(arg1 & 1)
2309
- };
2310
- var ptr3 = arg2;
2311
- var len3 = arg3;
2312
- var result3 = utf8Decoder.decode(new Uint8Array(memory0.buffer, ptr3, len3));
2313
- let ret;
2314
- try {
2315
- ret = { tag: "ok", val: Descriptor2.prototype.statAt.call(rsc0, flags2, result3) };
2316
- } catch (e) {
2317
- ret = { tag: "err", val: getErrorPayload(e) };
2318
- }
2319
- var variant13 = ret;
2320
- switch (variant13.tag) {
2321
- case "ok": {
2322
- const e = variant13.val;
2323
- dataView(memory0).setInt8(arg4 + 0, 0, true);
2324
- var { type: v4_0, linkCount: v4_1, size: v4_2, dataAccessTimestamp: v4_3, dataModificationTimestamp: v4_4, statusChangeTimestamp: v4_5 } = e;
2325
- var val5 = v4_0;
2326
- let enum5;
2327
- switch (val5) {
2328
- case "unknown": {
2329
- enum5 = 0;
2330
- break;
2331
- }
2332
- case "block-device": {
2333
- enum5 = 1;
2334
- break;
2335
- }
2336
- case "character-device": {
2337
- enum5 = 2;
2338
- break;
2339
- }
2340
- case "directory": {
2341
- enum5 = 3;
2342
- break;
2343
- }
2344
- case "fifo": {
2345
- enum5 = 4;
2346
- break;
2347
- }
2348
- case "symbolic-link": {
2349
- enum5 = 5;
2350
- break;
2351
- }
2352
- case "regular-file": {
2353
- enum5 = 6;
2354
- break;
2355
- }
2356
- case "socket": {
2357
- enum5 = 7;
2358
- break;
2359
- }
2360
- default: {
2361
- if (v4_0 instanceof Error) {
2362
- console.error(v4_0);
2363
- }
2364
- throw new TypeError(`"${val5}" is not one of the cases of descriptor-type`);
2365
- }
2366
- }
2367
- dataView(memory0).setInt8(arg4 + 8, enum5, true);
2368
- dataView(memory0).setBigInt64(arg4 + 16, toUint64(v4_1), true);
2369
- dataView(memory0).setBigInt64(arg4 + 24, toUint64(v4_2), true);
2370
- var variant7 = v4_3;
2371
- if (variant7 === null || variant7 === void 0) {
2372
- dataView(memory0).setInt8(arg4 + 32, 0, true);
2373
- } else {
2374
- const e2 = variant7;
2375
- dataView(memory0).setInt8(arg4 + 32, 1, true);
2376
- var { seconds: v6_0, nanoseconds: v6_1 } = e2;
2377
- dataView(memory0).setBigInt64(arg4 + 40, toUint64(v6_0), true);
2378
- dataView(memory0).setInt32(arg4 + 48, toUint32(v6_1), true);
2379
- }
2380
- var variant9 = v4_4;
2381
- if (variant9 === null || variant9 === void 0) {
2382
- dataView(memory0).setInt8(arg4 + 56, 0, true);
2383
- } else {
2384
- const e2 = variant9;
2385
- dataView(memory0).setInt8(arg4 + 56, 1, true);
2386
- var { seconds: v8_0, nanoseconds: v8_1 } = e2;
2387
- dataView(memory0).setBigInt64(arg4 + 64, toUint64(v8_0), true);
2388
- dataView(memory0).setInt32(arg4 + 72, toUint32(v8_1), true);
2389
- }
2390
- var variant11 = v4_5;
2391
- if (variant11 === null || variant11 === void 0) {
2392
- dataView(memory0).setInt8(arg4 + 80, 0, true);
2393
- } else {
2394
- const e2 = variant11;
2395
- dataView(memory0).setInt8(arg4 + 80, 1, true);
2396
- var { seconds: v10_0, nanoseconds: v10_1 } = e2;
2397
- dataView(memory0).setBigInt64(arg4 + 88, toUint64(v10_0), true);
2398
- dataView(memory0).setInt32(arg4 + 96, toUint32(v10_1), true);
2399
- }
2400
- break;
2401
- }
2402
- case "err": {
2403
- const e = variant13.val;
2404
- dataView(memory0).setInt8(arg4 + 0, 1, true);
2405
- var val12 = e;
2406
- let enum12;
2407
- switch (val12) {
2408
- case "access": {
2409
- enum12 = 0;
2410
- break;
2411
- }
2412
- case "would-block": {
2413
- enum12 = 1;
2414
- break;
2415
- }
2416
- case "already": {
2417
- enum12 = 2;
2418
- break;
2419
- }
2420
- case "bad-descriptor": {
2421
- enum12 = 3;
2422
- break;
2423
- }
2424
- case "busy": {
2425
- enum12 = 4;
2426
- break;
2427
- }
2428
- case "deadlock": {
2429
- enum12 = 5;
2430
- break;
2431
- }
2432
- case "quota": {
2433
- enum12 = 6;
2434
- break;
2435
- }
2436
- case "exist": {
2437
- enum12 = 7;
2438
- break;
2439
- }
2440
- case "file-too-large": {
2441
- enum12 = 8;
2442
- break;
2443
- }
2444
- case "illegal-byte-sequence": {
2445
- enum12 = 9;
2446
- break;
2447
- }
2448
- case "in-progress": {
2449
- enum12 = 10;
2450
- break;
2451
- }
2452
- case "interrupted": {
2453
- enum12 = 11;
2454
- break;
2455
- }
2456
- case "invalid": {
2457
- enum12 = 12;
2458
- break;
2459
- }
2460
- case "io": {
2461
- enum12 = 13;
2462
- break;
2463
- }
2464
- case "is-directory": {
2465
- enum12 = 14;
2466
- break;
2467
- }
2468
- case "loop": {
2469
- enum12 = 15;
2470
- break;
2471
- }
2472
- case "too-many-links": {
2473
- enum12 = 16;
2474
- break;
2475
- }
2476
- case "message-size": {
2477
- enum12 = 17;
2478
- break;
2479
- }
2480
- case "name-too-long": {
2481
- enum12 = 18;
2482
- break;
2483
- }
2484
- case "no-device": {
2485
- enum12 = 19;
2486
- break;
2487
- }
2488
- case "no-entry": {
2489
- enum12 = 20;
2490
- break;
2491
- }
2492
- case "no-lock": {
2493
- enum12 = 21;
2494
- break;
2495
- }
2496
- case "insufficient-memory": {
2497
- enum12 = 22;
2498
- break;
2499
- }
2500
- case "insufficient-space": {
2501
- enum12 = 23;
2502
- break;
2503
- }
2504
- case "not-directory": {
2505
- enum12 = 24;
2506
- break;
2507
- }
2508
- case "not-empty": {
2509
- enum12 = 25;
2510
- break;
2511
- }
2512
- case "not-recoverable": {
2513
- enum12 = 26;
2514
- break;
2515
- }
2516
- case "unsupported": {
2517
- enum12 = 27;
2518
- break;
2519
- }
2520
- case "no-tty": {
2521
- enum12 = 28;
2522
- break;
2523
- }
2524
- case "no-such-device": {
2525
- enum12 = 29;
2526
- break;
2527
- }
2528
- case "overflow": {
2529
- enum12 = 30;
2530
- break;
2531
- }
2532
- case "not-permitted": {
2533
- enum12 = 31;
2534
- break;
2535
- }
2536
- case "pipe": {
2537
- enum12 = 32;
2538
- break;
2539
- }
2540
- case "read-only": {
2541
- enum12 = 33;
2542
- break;
2543
- }
2544
- case "invalid-seek": {
2545
- enum12 = 34;
2546
- break;
2547
- }
2548
- case "text-file-busy": {
2549
- enum12 = 35;
2550
- break;
2551
- }
2552
- case "cross-device": {
2553
- enum12 = 36;
2554
- break;
2555
- }
2556
- default: {
2557
- if (e instanceof Error) {
2558
- console.error(e);
2559
- }
2560
- throw new TypeError(`"${val12}" is not one of the cases of error-code`);
2561
- }
2562
- }
2563
- dataView(memory0).setInt8(arg4 + 8, enum12, true);
2564
- break;
2565
- }
2566
- default: {
2567
- throw new TypeError("invalid variant specified for result");
2568
- }
2569
- }
2570
- }
2571
- function trampoline23(arg0, arg1, arg2, arg3, arg4, arg5, arg6) {
2572
- var handle1 = arg0;
2573
- var rsc0 = handleTable5.get(handle1).rep;
2574
- if ((arg1 & 4294967294) !== 0) {
2575
- throw new TypeError("flags have extraneous bits set");
2576
- }
2577
- var flags2 = {
2578
- symlinkFollow: Boolean(arg1 & 1)
2579
- };
2580
- var ptr3 = arg2;
2581
- var len3 = arg3;
2582
- var result3 = utf8Decoder.decode(new Uint8Array(memory0.buffer, ptr3, len3));
2583
- if ((arg4 & 4294967280) !== 0) {
2584
- throw new TypeError("flags have extraneous bits set");
2585
- }
2586
- var flags4 = {
2587
- create: Boolean(arg4 & 1),
2588
- directory: Boolean(arg4 & 2),
2589
- exclusive: Boolean(arg4 & 4),
2590
- truncate: Boolean(arg4 & 8)
2591
- };
2592
- if ((arg5 & 4294967232) !== 0) {
2593
- throw new TypeError("flags have extraneous bits set");
2594
- }
2595
- var flags5 = {
2596
- read: Boolean(arg5 & 1),
2597
- write: Boolean(arg5 & 2),
2598
- fileIntegritySync: Boolean(arg5 & 4),
2599
- dataIntegritySync: Boolean(arg5 & 8),
2600
- requestedWriteSync: Boolean(arg5 & 16),
2601
- mutateDirectory: Boolean(arg5 & 32)
2602
- };
2603
- let ret;
2604
- try {
2605
- ret = { tag: "ok", val: Descriptor2.prototype.openAt.call(rsc0, flags2, result3, flags4, flags5) };
2606
- } catch (e) {
2607
- ret = { tag: "err", val: getErrorPayload(e) };
2608
- }
2609
- var variant8 = ret;
2610
- switch (variant8.tag) {
2611
- case "ok": {
2612
- const e = variant8.val;
2613
- dataView(memory0).setInt8(arg6 + 0, 0, true);
2614
- if (!(e instanceof Descriptor2)) {
2615
- throw new Error('Resource error: Not a valid "Descriptor" resource.');
2616
- }
2617
- var handle6 = handleCnt5++;
2618
- handleTable5.set(handle6, { rep: e, own: true });
2619
- dataView(memory0).setInt32(arg6 + 4, handle6, true);
2620
- break;
2621
- }
2622
- case "err": {
2623
- const e = variant8.val;
2624
- dataView(memory0).setInt8(arg6 + 0, 1, true);
2625
- var val7 = e;
2626
- let enum7;
2627
- switch (val7) {
2628
- case "access": {
2629
- enum7 = 0;
2630
- break;
2631
- }
2632
- case "would-block": {
2633
- enum7 = 1;
2634
- break;
2635
- }
2636
- case "already": {
2637
- enum7 = 2;
2638
- break;
2639
- }
2640
- case "bad-descriptor": {
2641
- enum7 = 3;
2642
- break;
2643
- }
2644
- case "busy": {
2645
- enum7 = 4;
2646
- break;
2647
- }
2648
- case "deadlock": {
2649
- enum7 = 5;
2650
- break;
2651
- }
2652
- case "quota": {
2653
- enum7 = 6;
2654
- break;
2655
- }
2656
- case "exist": {
2657
- enum7 = 7;
2658
- break;
2659
- }
2660
- case "file-too-large": {
2661
- enum7 = 8;
2662
- break;
2663
- }
2664
- case "illegal-byte-sequence": {
2665
- enum7 = 9;
2666
- break;
2667
- }
2668
- case "in-progress": {
2669
- enum7 = 10;
2670
- break;
2671
- }
2672
- case "interrupted": {
2673
- enum7 = 11;
2674
- break;
2675
- }
2676
- case "invalid": {
2677
- enum7 = 12;
2678
- break;
2679
- }
2680
- case "io": {
2681
- enum7 = 13;
2682
- break;
2683
- }
2684
- case "is-directory": {
2685
- enum7 = 14;
2686
- break;
2687
- }
2688
- case "loop": {
2689
- enum7 = 15;
2690
- break;
2691
- }
2692
- case "too-many-links": {
2693
- enum7 = 16;
2694
- break;
2695
- }
2696
- case "message-size": {
2697
- enum7 = 17;
2698
- break;
2699
- }
2700
- case "name-too-long": {
2701
- enum7 = 18;
2702
- break;
2703
- }
2704
- case "no-device": {
2705
- enum7 = 19;
2706
- break;
2707
- }
2708
- case "no-entry": {
2709
- enum7 = 20;
2710
- break;
2711
- }
2712
- case "no-lock": {
2713
- enum7 = 21;
2714
- break;
2715
- }
2716
- case "insufficient-memory": {
2717
- enum7 = 22;
2718
- break;
2719
- }
2720
- case "insufficient-space": {
2721
- enum7 = 23;
2722
- break;
2723
- }
2724
- case "not-directory": {
2725
- enum7 = 24;
2726
- break;
2727
- }
2728
- case "not-empty": {
2729
- enum7 = 25;
2730
- break;
2731
- }
2732
- case "not-recoverable": {
2733
- enum7 = 26;
2734
- break;
2735
- }
2736
- case "unsupported": {
2737
- enum7 = 27;
2738
- break;
2739
- }
2740
- case "no-tty": {
2741
- enum7 = 28;
2742
- break;
2743
- }
2744
- case "no-such-device": {
2745
- enum7 = 29;
2746
- break;
2747
- }
2748
- case "overflow": {
2749
- enum7 = 30;
2750
- break;
2751
- }
2752
- case "not-permitted": {
2753
- enum7 = 31;
2754
- break;
2755
- }
2756
- case "pipe": {
2757
- enum7 = 32;
2758
- break;
2759
- }
2760
- case "read-only": {
2761
- enum7 = 33;
2762
- break;
2763
- }
2764
- case "invalid-seek": {
2765
- enum7 = 34;
2766
- break;
2767
- }
2768
- case "text-file-busy": {
2769
- enum7 = 35;
2770
- break;
2771
- }
2772
- case "cross-device": {
2773
- enum7 = 36;
2774
- break;
2775
- }
2776
- default: {
2777
- if (e instanceof Error) {
2778
- console.error(e);
2779
- }
2780
- throw new TypeError(`"${val7}" is not one of the cases of error-code`);
2781
- }
2782
- }
2783
- dataView(memory0).setInt8(arg6 + 4, enum7, true);
2784
- break;
2785
- }
2786
- default: {
2787
- throw new TypeError("invalid variant specified for result");
2788
- }
2789
- }
2790
- }
2791
- function trampoline24(arg0, arg1, arg2, arg3) {
2792
- var handle1 = arg0;
2793
- var rsc0 = handleTable5.get(handle1).rep;
2794
- var ptr2 = arg1;
2795
- var len2 = arg2;
2796
- var result2 = utf8Decoder.decode(new Uint8Array(memory0.buffer, ptr2, len2));
2797
- let ret;
2798
- try {
2799
- ret = { tag: "ok", val: Descriptor2.prototype.removeDirectoryAt.call(rsc0, result2) };
2800
- } catch (e) {
2801
- ret = { tag: "err", val: getErrorPayload(e) };
2802
- }
2803
- var variant4 = ret;
2804
- switch (variant4.tag) {
2805
- case "ok": {
2806
- const e = variant4.val;
2807
- dataView(memory0).setInt8(arg3 + 0, 0, true);
2808
- break;
2809
- }
2810
- case "err": {
2811
- const e = variant4.val;
2812
- dataView(memory0).setInt8(arg3 + 0, 1, true);
2813
- var val3 = e;
2814
- let enum3;
2815
- switch (val3) {
2816
- case "access": {
2817
- enum3 = 0;
2818
- break;
2819
- }
2820
- case "would-block": {
2821
- enum3 = 1;
2822
- break;
2823
- }
2824
- case "already": {
2825
- enum3 = 2;
2826
- break;
2827
- }
2828
- case "bad-descriptor": {
2829
- enum3 = 3;
2830
- break;
2831
- }
2832
- case "busy": {
2833
- enum3 = 4;
2834
- break;
2835
- }
2836
- case "deadlock": {
2837
- enum3 = 5;
2838
- break;
2839
- }
2840
- case "quota": {
2841
- enum3 = 6;
2842
- break;
2843
- }
2844
- case "exist": {
2845
- enum3 = 7;
2846
- break;
2847
- }
2848
- case "file-too-large": {
2849
- enum3 = 8;
2850
- break;
2851
- }
2852
- case "illegal-byte-sequence": {
2853
- enum3 = 9;
2854
- break;
2855
- }
2856
- case "in-progress": {
2857
- enum3 = 10;
2858
- break;
2859
- }
2860
- case "interrupted": {
2861
- enum3 = 11;
2862
- break;
2863
- }
2864
- case "invalid": {
2865
- enum3 = 12;
2866
- break;
2867
- }
2868
- case "io": {
2869
- enum3 = 13;
2870
- break;
2871
- }
2872
- case "is-directory": {
2873
- enum3 = 14;
2874
- break;
2875
- }
2876
- case "loop": {
2877
- enum3 = 15;
2878
- break;
2879
- }
2880
- case "too-many-links": {
2881
- enum3 = 16;
2882
- break;
2883
- }
2884
- case "message-size": {
2885
- enum3 = 17;
2886
- break;
2887
- }
2888
- case "name-too-long": {
2889
- enum3 = 18;
2890
- break;
2891
- }
2892
- case "no-device": {
2893
- enum3 = 19;
2894
- break;
2895
- }
2896
- case "no-entry": {
2897
- enum3 = 20;
2898
- break;
2899
- }
2900
- case "no-lock": {
2901
- enum3 = 21;
2902
- break;
2903
- }
2904
- case "insufficient-memory": {
2905
- enum3 = 22;
2906
- break;
2907
- }
2908
- case "insufficient-space": {
2909
- enum3 = 23;
2910
- break;
2911
- }
2912
- case "not-directory": {
2913
- enum3 = 24;
2914
- break;
2915
- }
2916
- case "not-empty": {
2917
- enum3 = 25;
2918
- break;
2919
- }
2920
- case "not-recoverable": {
2921
- enum3 = 26;
2922
- break;
2923
- }
2924
- case "unsupported": {
2925
- enum3 = 27;
2926
- break;
2927
- }
2928
- case "no-tty": {
2929
- enum3 = 28;
2930
- break;
2931
- }
2932
- case "no-such-device": {
2933
- enum3 = 29;
2934
- break;
2935
- }
2936
- case "overflow": {
2937
- enum3 = 30;
2938
- break;
2939
- }
2940
- case "not-permitted": {
2941
- enum3 = 31;
2942
- break;
2943
- }
2944
- case "pipe": {
2945
- enum3 = 32;
2946
- break;
2947
- }
2948
- case "read-only": {
2949
- enum3 = 33;
2950
- break;
2951
- }
2952
- case "invalid-seek": {
2953
- enum3 = 34;
2954
- break;
2955
- }
2956
- case "text-file-busy": {
2957
- enum3 = 35;
2958
- break;
2959
- }
2960
- case "cross-device": {
2961
- enum3 = 36;
2962
- break;
2963
- }
2964
- default: {
2965
- if (e instanceof Error) {
2966
- console.error(e);
2967
- }
2968
- throw new TypeError(`"${val3}" is not one of the cases of error-code`);
2969
- }
2970
- }
2971
- dataView(memory0).setInt8(arg3 + 1, enum3, true);
2972
- break;
2973
- }
2974
- default: {
2975
- throw new TypeError("invalid variant specified for result");
2976
- }
2977
- }
2978
- }
2979
- function trampoline25(arg0, arg1, arg2, arg3) {
2980
- var handle1 = arg0;
2981
- var rsc0 = handleTable5.get(handle1).rep;
2982
- var ptr2 = arg1;
2983
- var len2 = arg2;
2984
- var result2 = utf8Decoder.decode(new Uint8Array(memory0.buffer, ptr2, len2));
2985
- let ret;
2986
- try {
2987
- ret = { tag: "ok", val: Descriptor2.prototype.unlinkFileAt.call(rsc0, result2) };
2988
- } catch (e) {
2989
- ret = { tag: "err", val: getErrorPayload(e) };
2990
- }
2991
- var variant4 = ret;
2992
- switch (variant4.tag) {
2993
- case "ok": {
2994
- const e = variant4.val;
2995
- dataView(memory0).setInt8(arg3 + 0, 0, true);
2996
- break;
2997
- }
2998
- case "err": {
2999
- const e = variant4.val;
3000
- dataView(memory0).setInt8(arg3 + 0, 1, true);
3001
- var val3 = e;
3002
- let enum3;
3003
- switch (val3) {
3004
- case "access": {
3005
- enum3 = 0;
3006
- break;
3007
- }
3008
- case "would-block": {
3009
- enum3 = 1;
3010
- break;
3011
- }
3012
- case "already": {
3013
- enum3 = 2;
3014
- break;
3015
- }
3016
- case "bad-descriptor": {
3017
- enum3 = 3;
3018
- break;
3019
- }
3020
- case "busy": {
3021
- enum3 = 4;
3022
- break;
3023
- }
3024
- case "deadlock": {
3025
- enum3 = 5;
3026
- break;
3027
- }
3028
- case "quota": {
3029
- enum3 = 6;
3030
- break;
3031
- }
3032
- case "exist": {
3033
- enum3 = 7;
3034
- break;
3035
- }
3036
- case "file-too-large": {
3037
- enum3 = 8;
3038
- break;
3039
- }
3040
- case "illegal-byte-sequence": {
3041
- enum3 = 9;
3042
- break;
3043
- }
3044
- case "in-progress": {
3045
- enum3 = 10;
3046
- break;
3047
- }
3048
- case "interrupted": {
3049
- enum3 = 11;
3050
- break;
3051
- }
3052
- case "invalid": {
3053
- enum3 = 12;
3054
- break;
3055
- }
3056
- case "io": {
3057
- enum3 = 13;
3058
- break;
3059
- }
3060
- case "is-directory": {
3061
- enum3 = 14;
3062
- break;
3063
- }
3064
- case "loop": {
3065
- enum3 = 15;
3066
- break;
3067
- }
3068
- case "too-many-links": {
3069
- enum3 = 16;
3070
- break;
3071
- }
3072
- case "message-size": {
3073
- enum3 = 17;
3074
- break;
3075
- }
3076
- case "name-too-long": {
3077
- enum3 = 18;
3078
- break;
3079
- }
3080
- case "no-device": {
3081
- enum3 = 19;
3082
- break;
3083
- }
3084
- case "no-entry": {
3085
- enum3 = 20;
3086
- break;
3087
- }
3088
- case "no-lock": {
3089
- enum3 = 21;
3090
- break;
3091
- }
3092
- case "insufficient-memory": {
3093
- enum3 = 22;
3094
- break;
3095
- }
3096
- case "insufficient-space": {
3097
- enum3 = 23;
3098
- break;
3099
- }
3100
- case "not-directory": {
3101
- enum3 = 24;
3102
- break;
3103
- }
3104
- case "not-empty": {
3105
- enum3 = 25;
3106
- break;
3107
- }
3108
- case "not-recoverable": {
3109
- enum3 = 26;
3110
- break;
3111
- }
3112
- case "unsupported": {
3113
- enum3 = 27;
3114
- break;
3115
- }
3116
- case "no-tty": {
3117
- enum3 = 28;
3118
- break;
3119
- }
3120
- case "no-such-device": {
3121
- enum3 = 29;
3122
- break;
3123
- }
3124
- case "overflow": {
3125
- enum3 = 30;
3126
- break;
3127
- }
3128
- case "not-permitted": {
3129
- enum3 = 31;
3130
- break;
3131
- }
3132
- case "pipe": {
3133
- enum3 = 32;
3134
- break;
3135
- }
3136
- case "read-only": {
3137
- enum3 = 33;
3138
- break;
3139
- }
3140
- case "invalid-seek": {
3141
- enum3 = 34;
3142
- break;
3143
- }
3144
- case "text-file-busy": {
3145
- enum3 = 35;
3146
- break;
3147
- }
3148
- case "cross-device": {
3149
- enum3 = 36;
3150
- break;
3151
- }
3152
- default: {
3153
- if (e instanceof Error) {
3154
- console.error(e);
3155
- }
3156
- throw new TypeError(`"${val3}" is not one of the cases of error-code`);
3157
- }
3158
- }
3159
- dataView(memory0).setInt8(arg3 + 1, enum3, true);
3160
- break;
3161
- }
3162
- default: {
3163
- throw new TypeError("invalid variant specified for result");
3164
- }
3165
- }
3166
- }
3167
- function trampoline26(arg0, arg1) {
3168
- var handle1 = arg0;
3169
- var rsc0 = handleTable5.get(handle1).rep;
3170
- let ret;
3171
- try {
3172
- ret = { tag: "ok", val: Descriptor2.prototype.metadataHash.call(rsc0) };
3173
- } catch (e) {
3174
- ret = { tag: "err", val: getErrorPayload(e) };
3175
- }
3176
- var variant4 = ret;
3177
- switch (variant4.tag) {
3178
- case "ok": {
3179
- const e = variant4.val;
3180
- dataView(memory0).setInt8(arg1 + 0, 0, true);
3181
- var { lower: v2_0, upper: v2_1 } = e;
3182
- dataView(memory0).setBigInt64(arg1 + 8, toUint64(v2_0), true);
3183
- dataView(memory0).setBigInt64(arg1 + 16, toUint64(v2_1), true);
3184
- break;
3185
- }
3186
- case "err": {
3187
- const e = variant4.val;
3188
- dataView(memory0).setInt8(arg1 + 0, 1, true);
3189
- var val3 = e;
3190
- let enum3;
3191
- switch (val3) {
3192
- case "access": {
3193
- enum3 = 0;
3194
- break;
3195
- }
3196
- case "would-block": {
3197
- enum3 = 1;
3198
- break;
3199
- }
3200
- case "already": {
3201
- enum3 = 2;
3202
- break;
3203
- }
3204
- case "bad-descriptor": {
3205
- enum3 = 3;
3206
- break;
3207
- }
3208
- case "busy": {
3209
- enum3 = 4;
3210
- break;
3211
- }
3212
- case "deadlock": {
3213
- enum3 = 5;
3214
- break;
3215
- }
3216
- case "quota": {
3217
- enum3 = 6;
3218
- break;
3219
- }
3220
- case "exist": {
3221
- enum3 = 7;
3222
- break;
3223
- }
3224
- case "file-too-large": {
3225
- enum3 = 8;
3226
- break;
3227
- }
3228
- case "illegal-byte-sequence": {
3229
- enum3 = 9;
3230
- break;
3231
- }
3232
- case "in-progress": {
3233
- enum3 = 10;
3234
- break;
3235
- }
3236
- case "interrupted": {
3237
- enum3 = 11;
3238
- break;
3239
- }
3240
- case "invalid": {
3241
- enum3 = 12;
3242
- break;
3243
- }
3244
- case "io": {
3245
- enum3 = 13;
3246
- break;
3247
- }
3248
- case "is-directory": {
3249
- enum3 = 14;
3250
- break;
3251
- }
3252
- case "loop": {
3253
- enum3 = 15;
3254
- break;
3255
- }
3256
- case "too-many-links": {
3257
- enum3 = 16;
3258
- break;
3259
- }
3260
- case "message-size": {
3261
- enum3 = 17;
3262
- break;
3263
- }
3264
- case "name-too-long": {
3265
- enum3 = 18;
3266
- break;
3267
- }
3268
- case "no-device": {
3269
- enum3 = 19;
3270
- break;
3271
- }
3272
- case "no-entry": {
3273
- enum3 = 20;
3274
- break;
3275
- }
3276
- case "no-lock": {
3277
- enum3 = 21;
3278
- break;
3279
- }
3280
- case "insufficient-memory": {
3281
- enum3 = 22;
3282
- break;
3283
- }
3284
- case "insufficient-space": {
3285
- enum3 = 23;
3286
- break;
3287
- }
3288
- case "not-directory": {
3289
- enum3 = 24;
3290
- break;
3291
- }
3292
- case "not-empty": {
3293
- enum3 = 25;
3294
- break;
3295
- }
3296
- case "not-recoverable": {
3297
- enum3 = 26;
3298
- break;
3299
- }
3300
- case "unsupported": {
3301
- enum3 = 27;
3302
- break;
3303
- }
3304
- case "no-tty": {
3305
- enum3 = 28;
3306
- break;
3307
- }
3308
- case "no-such-device": {
3309
- enum3 = 29;
3310
- break;
3311
- }
3312
- case "overflow": {
3313
- enum3 = 30;
3314
- break;
3315
- }
3316
- case "not-permitted": {
3317
- enum3 = 31;
3318
- break;
3319
- }
3320
- case "pipe": {
3321
- enum3 = 32;
3322
- break;
3323
- }
3324
- case "read-only": {
3325
- enum3 = 33;
3326
- break;
3327
- }
3328
- case "invalid-seek": {
3329
- enum3 = 34;
3330
- break;
3331
- }
3332
- case "text-file-busy": {
3333
- enum3 = 35;
3334
- break;
3335
- }
3336
- case "cross-device": {
3337
- enum3 = 36;
3338
- break;
3339
- }
3340
- default: {
3341
- if (e instanceof Error) {
3342
- console.error(e);
3343
- }
3344
- throw new TypeError(`"${val3}" is not one of the cases of error-code`);
3345
- }
3346
- }
3347
- dataView(memory0).setInt8(arg1 + 8, enum3, true);
3348
- break;
3349
- }
3350
- default: {
3351
- throw new TypeError("invalid variant specified for result");
3352
- }
3353
- }
3354
- }
3355
- function trampoline27(arg0, arg1, arg2, arg3, arg4) {
3356
- var handle1 = arg0;
3357
- var rsc0 = handleTable5.get(handle1).rep;
3358
- if ((arg1 & 4294967294) !== 0) {
3359
- throw new TypeError("flags have extraneous bits set");
3360
- }
3361
- var flags2 = {
3362
- symlinkFollow: Boolean(arg1 & 1)
3363
- };
3364
- var ptr3 = arg2;
3365
- var len3 = arg3;
3366
- var result3 = utf8Decoder.decode(new Uint8Array(memory0.buffer, ptr3, len3));
3367
- let ret;
3368
- try {
3369
- ret = { tag: "ok", val: Descriptor2.prototype.metadataHashAt.call(rsc0, flags2, result3) };
3370
- } catch (e) {
3371
- ret = { tag: "err", val: getErrorPayload(e) };
3372
- }
3373
- var variant6 = ret;
3374
- switch (variant6.tag) {
3375
- case "ok": {
3376
- const e = variant6.val;
3377
- dataView(memory0).setInt8(arg4 + 0, 0, true);
3378
- var { lower: v4_0, upper: v4_1 } = e;
3379
- dataView(memory0).setBigInt64(arg4 + 8, toUint64(v4_0), true);
3380
- dataView(memory0).setBigInt64(arg4 + 16, toUint64(v4_1), true);
3381
- break;
3382
- }
3383
- case "err": {
3384
- const e = variant6.val;
3385
- dataView(memory0).setInt8(arg4 + 0, 1, true);
3386
- var val5 = e;
3387
- let enum5;
3388
- switch (val5) {
3389
- case "access": {
3390
- enum5 = 0;
3391
- break;
3392
- }
3393
- case "would-block": {
3394
- enum5 = 1;
3395
- break;
3396
- }
3397
- case "already": {
3398
- enum5 = 2;
3399
- break;
3400
- }
3401
- case "bad-descriptor": {
3402
- enum5 = 3;
3403
- break;
3404
- }
3405
- case "busy": {
3406
- enum5 = 4;
3407
- break;
3408
- }
3409
- case "deadlock": {
3410
- enum5 = 5;
3411
- break;
3412
- }
3413
- case "quota": {
3414
- enum5 = 6;
3415
- break;
3416
- }
3417
- case "exist": {
3418
- enum5 = 7;
3419
- break;
3420
- }
3421
- case "file-too-large": {
3422
- enum5 = 8;
3423
- break;
3424
- }
3425
- case "illegal-byte-sequence": {
3426
- enum5 = 9;
3427
- break;
3428
- }
3429
- case "in-progress": {
3430
- enum5 = 10;
3431
- break;
3432
- }
3433
- case "interrupted": {
3434
- enum5 = 11;
3435
- break;
3436
- }
3437
- case "invalid": {
3438
- enum5 = 12;
3439
- break;
3440
- }
3441
- case "io": {
3442
- enum5 = 13;
3443
- break;
3444
- }
3445
- case "is-directory": {
3446
- enum5 = 14;
3447
- break;
3448
- }
3449
- case "loop": {
3450
- enum5 = 15;
3451
- break;
3452
- }
3453
- case "too-many-links": {
3454
- enum5 = 16;
3455
- break;
3456
- }
3457
- case "message-size": {
3458
- enum5 = 17;
3459
- break;
3460
- }
3461
- case "name-too-long": {
3462
- enum5 = 18;
3463
- break;
3464
- }
3465
- case "no-device": {
3466
- enum5 = 19;
3467
- break;
3468
- }
3469
- case "no-entry": {
3470
- enum5 = 20;
3471
- break;
3472
- }
3473
- case "no-lock": {
3474
- enum5 = 21;
3475
- break;
3476
- }
3477
- case "insufficient-memory": {
3478
- enum5 = 22;
3479
- break;
3480
- }
3481
- case "insufficient-space": {
3482
- enum5 = 23;
3483
- break;
3484
- }
3485
- case "not-directory": {
3486
- enum5 = 24;
3487
- break;
3488
- }
3489
- case "not-empty": {
3490
- enum5 = 25;
3491
- break;
3492
- }
3493
- case "not-recoverable": {
3494
- enum5 = 26;
3495
- break;
3496
- }
3497
- case "unsupported": {
3498
- enum5 = 27;
3499
- break;
3500
- }
3501
- case "no-tty": {
3502
- enum5 = 28;
3503
- break;
3504
- }
3505
- case "no-such-device": {
3506
- enum5 = 29;
3507
- break;
3508
- }
3509
- case "overflow": {
3510
- enum5 = 30;
3511
- break;
3512
- }
3513
- case "not-permitted": {
3514
- enum5 = 31;
3515
- break;
3516
- }
3517
- case "pipe": {
3518
- enum5 = 32;
3519
- break;
3520
- }
3521
- case "read-only": {
3522
- enum5 = 33;
3523
- break;
3524
- }
3525
- case "invalid-seek": {
3526
- enum5 = 34;
3527
- break;
3528
- }
3529
- case "text-file-busy": {
3530
- enum5 = 35;
3531
- break;
3532
- }
3533
- case "cross-device": {
3534
- enum5 = 36;
3535
- break;
3536
- }
3537
- default: {
3538
- if (e instanceof Error) {
3539
- console.error(e);
3540
- }
3541
- throw new TypeError(`"${val5}" is not one of the cases of error-code`);
3542
- }
3543
- }
3544
- dataView(memory0).setInt8(arg4 + 8, enum5, true);
3545
- break;
3546
- }
3547
- default: {
3548
- throw new TypeError("invalid variant specified for result");
3549
- }
3550
- }
3551
- }
3552
- function trampoline28(arg0, arg1) {
3553
- var handle1 = arg0;
3554
- var rsc0 = handleTable6.get(handle1).rep;
3555
- let ret;
3556
- try {
3557
- ret = { tag: "ok", val: DirectoryEntryStream2.prototype.readDirectoryEntry.call(rsc0) };
3558
- } catch (e) {
3559
- ret = { tag: "err", val: getErrorPayload(e) };
3560
- }
3561
- var variant7 = ret;
3562
- switch (variant7.tag) {
3563
- case "ok": {
3564
- const e = variant7.val;
3565
- dataView(memory0).setInt8(arg1 + 0, 0, true);
3566
- var variant5 = e;
3567
- if (variant5 === null || variant5 === void 0) {
3568
- dataView(memory0).setInt8(arg1 + 4, 0, true);
3569
- } else {
3570
- const e2 = variant5;
3571
- dataView(memory0).setInt8(arg1 + 4, 1, true);
3572
- var { type: v2_0, name: v2_1 } = e2;
3573
- var val3 = v2_0;
3574
- let enum3;
3575
- switch (val3) {
3576
- case "unknown": {
3577
- enum3 = 0;
3578
- break;
3579
- }
3580
- case "block-device": {
3581
- enum3 = 1;
3582
- break;
3583
- }
3584
- case "character-device": {
3585
- enum3 = 2;
3586
- break;
3587
- }
3588
- case "directory": {
3589
- enum3 = 3;
3590
- break;
3591
- }
3592
- case "fifo": {
3593
- enum3 = 4;
3594
- break;
3595
- }
3596
- case "symbolic-link": {
3597
- enum3 = 5;
3598
- break;
3599
- }
3600
- case "regular-file": {
3601
- enum3 = 6;
3602
- break;
3603
- }
3604
- case "socket": {
3605
- enum3 = 7;
3606
- break;
3607
- }
3608
- default: {
3609
- if (v2_0 instanceof Error) {
3610
- console.error(v2_0);
3611
- }
3612
- throw new TypeError(`"${val3}" is not one of the cases of descriptor-type`);
3613
- }
3614
- }
3615
- dataView(memory0).setInt8(arg1 + 8, enum3, true);
3616
- var ptr4 = utf8Encode(v2_1, realloc0, memory0);
3617
- var len4 = utf8EncodedLen;
3618
- dataView(memory0).setInt32(arg1 + 16, len4, true);
3619
- dataView(memory0).setInt32(arg1 + 12, ptr4, true);
3620
- }
3621
- break;
3622
- }
3623
- case "err": {
3624
- const e = variant7.val;
3625
- dataView(memory0).setInt8(arg1 + 0, 1, true);
3626
- var val6 = e;
3627
- let enum6;
3628
- switch (val6) {
3629
- case "access": {
3630
- enum6 = 0;
3631
- break;
3632
- }
3633
- case "would-block": {
3634
- enum6 = 1;
3635
- break;
3636
- }
3637
- case "already": {
3638
- enum6 = 2;
3639
- break;
3640
- }
3641
- case "bad-descriptor": {
3642
- enum6 = 3;
3643
- break;
3644
- }
3645
- case "busy": {
3646
- enum6 = 4;
3647
- break;
3648
- }
3649
- case "deadlock": {
3650
- enum6 = 5;
3651
- break;
3652
- }
3653
- case "quota": {
3654
- enum6 = 6;
3655
- break;
3656
- }
3657
- case "exist": {
3658
- enum6 = 7;
3659
- break;
3660
- }
3661
- case "file-too-large": {
3662
- enum6 = 8;
3663
- break;
3664
- }
3665
- case "illegal-byte-sequence": {
3666
- enum6 = 9;
3667
- break;
3668
- }
3669
- case "in-progress": {
3670
- enum6 = 10;
3671
- break;
3672
- }
3673
- case "interrupted": {
3674
- enum6 = 11;
3675
- break;
3676
- }
3677
- case "invalid": {
3678
- enum6 = 12;
3679
- break;
3680
- }
3681
- case "io": {
3682
- enum6 = 13;
3683
- break;
3684
- }
3685
- case "is-directory": {
3686
- enum6 = 14;
3687
- break;
3688
- }
3689
- case "loop": {
3690
- enum6 = 15;
3691
- break;
3692
- }
3693
- case "too-many-links": {
3694
- enum6 = 16;
3695
- break;
3696
- }
3697
- case "message-size": {
3698
- enum6 = 17;
3699
- break;
3700
- }
3701
- case "name-too-long": {
3702
- enum6 = 18;
3703
- break;
3704
- }
3705
- case "no-device": {
3706
- enum6 = 19;
3707
- break;
3708
- }
3709
- case "no-entry": {
3710
- enum6 = 20;
3711
- break;
3712
- }
3713
- case "no-lock": {
3714
- enum6 = 21;
3715
- break;
3716
- }
3717
- case "insufficient-memory": {
3718
- enum6 = 22;
3719
- break;
3720
- }
3721
- case "insufficient-space": {
3722
- enum6 = 23;
3723
- break;
3724
- }
3725
- case "not-directory": {
3726
- enum6 = 24;
3727
- break;
3728
- }
3729
- case "not-empty": {
3730
- enum6 = 25;
3731
- break;
3732
- }
3733
- case "not-recoverable": {
3734
- enum6 = 26;
3735
- break;
3736
- }
3737
- case "unsupported": {
3738
- enum6 = 27;
3739
- break;
3740
- }
3741
- case "no-tty": {
3742
- enum6 = 28;
3743
- break;
3744
- }
3745
- case "no-such-device": {
3746
- enum6 = 29;
3747
- break;
3748
- }
3749
- case "overflow": {
3750
- enum6 = 30;
3751
- break;
3752
- }
3753
- case "not-permitted": {
3754
- enum6 = 31;
3755
- break;
3756
- }
3757
- case "pipe": {
3758
- enum6 = 32;
3759
- break;
3760
- }
3761
- case "read-only": {
3762
- enum6 = 33;
3763
- break;
3764
- }
3765
- case "invalid-seek": {
3766
- enum6 = 34;
3767
- break;
3768
- }
3769
- case "text-file-busy": {
3770
- enum6 = 35;
3771
- break;
3772
- }
3773
- case "cross-device": {
3774
- enum6 = 36;
3775
- break;
3776
- }
3777
- default: {
3778
- if (e instanceof Error) {
3779
- console.error(e);
3780
- }
3781
- throw new TypeError(`"${val6}" is not one of the cases of error-code`);
3782
- }
3783
- }
3784
- dataView(memory0).setInt8(arg1 + 4, enum6, true);
3785
- break;
3786
- }
3787
- default: {
3788
- throw new TypeError("invalid variant specified for result");
3789
- }
3790
- }
3791
- }
3792
- function trampoline29(arg0, arg1) {
3793
- var handle1 = arg0;
3794
- var rsc0 = handleTable0.get(handle1).rep;
3795
- const ret = filesystemErrorCode(rsc0);
3796
- var variant3 = ret;
3797
- if (variant3 === null || variant3 === void 0) {
3798
- dataView(memory0).setInt8(arg1 + 0, 0, true);
3799
- } else {
3800
- const e = variant3;
3801
- dataView(memory0).setInt8(arg1 + 0, 1, true);
3802
- var val2 = e;
3803
- let enum2;
3804
- switch (val2) {
3805
- case "access": {
3806
- enum2 = 0;
3807
- break;
3808
- }
3809
- case "would-block": {
3810
- enum2 = 1;
3811
- break;
3812
- }
3813
- case "already": {
3814
- enum2 = 2;
3815
- break;
3816
- }
3817
- case "bad-descriptor": {
3818
- enum2 = 3;
3819
- break;
3820
- }
3821
- case "busy": {
3822
- enum2 = 4;
3823
- break;
3824
- }
3825
- case "deadlock": {
3826
- enum2 = 5;
3827
- break;
3828
- }
3829
- case "quota": {
3830
- enum2 = 6;
3831
- break;
3832
- }
3833
- case "exist": {
3834
- enum2 = 7;
3835
- break;
3836
- }
3837
- case "file-too-large": {
3838
- enum2 = 8;
3839
- break;
3840
- }
3841
- case "illegal-byte-sequence": {
3842
- enum2 = 9;
3843
- break;
3844
- }
3845
- case "in-progress": {
3846
- enum2 = 10;
3847
- break;
3848
- }
3849
- case "interrupted": {
3850
- enum2 = 11;
3851
- break;
3852
- }
3853
- case "invalid": {
3854
- enum2 = 12;
3855
- break;
3856
- }
3857
- case "io": {
3858
- enum2 = 13;
3859
- break;
3860
- }
3861
- case "is-directory": {
3862
- enum2 = 14;
3863
- break;
3864
- }
3865
- case "loop": {
3866
- enum2 = 15;
3867
- break;
3868
- }
3869
- case "too-many-links": {
3870
- enum2 = 16;
3871
- break;
3872
- }
3873
- case "message-size": {
3874
- enum2 = 17;
3875
- break;
3876
- }
3877
- case "name-too-long": {
3878
- enum2 = 18;
3879
- break;
3880
- }
3881
- case "no-device": {
3882
- enum2 = 19;
3883
- break;
3884
- }
3885
- case "no-entry": {
3886
- enum2 = 20;
3887
- break;
3888
- }
3889
- case "no-lock": {
3890
- enum2 = 21;
3891
- break;
3892
- }
3893
- case "insufficient-memory": {
3894
- enum2 = 22;
3895
- break;
3896
- }
3897
- case "insufficient-space": {
3898
- enum2 = 23;
3899
- break;
3900
- }
3901
- case "not-directory": {
3902
- enum2 = 24;
3903
- break;
3904
- }
3905
- case "not-empty": {
3906
- enum2 = 25;
3907
- break;
3908
- }
3909
- case "not-recoverable": {
3910
- enum2 = 26;
3911
- break;
3912
- }
3913
- case "unsupported": {
3914
- enum2 = 27;
3915
- break;
3916
- }
3917
- case "no-tty": {
3918
- enum2 = 28;
3919
- break;
3920
- }
3921
- case "no-such-device": {
3922
- enum2 = 29;
3923
- break;
3924
- }
3925
- case "overflow": {
3926
- enum2 = 30;
3927
- break;
3928
- }
3929
- case "not-permitted": {
3930
- enum2 = 31;
3931
- break;
3932
- }
3933
- case "pipe": {
3934
- enum2 = 32;
3935
- break;
3936
- }
3937
- case "read-only": {
3938
- enum2 = 33;
3939
- break;
3940
- }
3941
- case "invalid-seek": {
3942
- enum2 = 34;
3943
- break;
3944
- }
3945
- case "text-file-busy": {
3946
- enum2 = 35;
3947
- break;
3948
- }
3949
- case "cross-device": {
3950
- enum2 = 36;
3951
- break;
3952
- }
3953
- default: {
3954
- if (e instanceof Error) {
3955
- console.error(e);
3956
- }
3957
- throw new TypeError(`"${val2}" is not one of the cases of error-code`);
3958
- }
3959
- }
3960
- dataView(memory0).setInt8(arg1 + 1, enum2, true);
3961
- }
3962
- }
3963
- function trampoline30(arg0, arg1, arg2) {
3964
- var handle1 = arg0;
3965
- var rsc0 = handleTable1.get(handle1).rep;
3966
- let ret;
3967
- try {
3968
- ret = { tag: "ok", val: InputStream2.prototype.read.call(rsc0, BigInt.asUintN(64, arg1)) };
3969
- } catch (e) {
3970
- ret = { tag: "err", val: getErrorPayload(e) };
3971
- }
3972
- var variant5 = ret;
3973
- switch (variant5.tag) {
3974
- case "ok": {
3975
- const e = variant5.val;
3976
- dataView(memory0).setInt8(arg2 + 0, 0, true);
3977
- var val2 = e;
3978
- var len2 = val2.byteLength;
3979
- var ptr2 = realloc0(0, 0, 1, len2 * 1);
3980
- var src2 = new Uint8Array(val2.buffer || val2, val2.byteOffset, len2 * 1);
3981
- new Uint8Array(memory0.buffer, ptr2, len2 * 1).set(src2);
3982
- dataView(memory0).setInt32(arg2 + 8, len2, true);
3983
- dataView(memory0).setInt32(arg2 + 4, ptr2, true);
3984
- break;
3985
- }
3986
- case "err": {
3987
- const e = variant5.val;
3988
- dataView(memory0).setInt8(arg2 + 0, 1, true);
3989
- var variant4 = e;
3990
- switch (variant4.tag) {
3991
- case "last-operation-failed": {
3992
- const e2 = variant4.val;
3993
- dataView(memory0).setInt8(arg2 + 4, 0, true);
3994
- if (!(e2 instanceof Error$1)) {
3995
- throw new Error('Resource error: Not a valid "Error" resource.');
3996
- }
3997
- var handle3 = handleCnt0++;
3998
- handleTable0.set(handle3, { rep: e2, own: true });
3999
- dataView(memory0).setInt32(arg2 + 8, handle3, true);
4000
- break;
4001
- }
4002
- case "closed": {
4003
- dataView(memory0).setInt8(arg2 + 4, 1, true);
4004
- break;
4005
- }
4006
- default: {
4007
- throw new TypeError(`invalid variant tag value \`${JSON.stringify(variant4.tag)}\` (received \`${variant4}\`) specified for \`StreamError\``);
4008
- }
4009
- }
4010
- break;
4011
- }
4012
- default: {
4013
- throw new TypeError("invalid variant specified for result");
4014
- }
4015
- }
4016
- }
4017
- function trampoline31(arg0, arg1, arg2) {
4018
- var handle1 = arg0;
4019
- var rsc0 = handleTable1.get(handle1).rep;
4020
- let ret;
4021
- try {
4022
- ret = { tag: "ok", val: InputStream2.prototype.blockingRead.call(rsc0, BigInt.asUintN(64, arg1)) };
4023
- } catch (e) {
4024
- ret = { tag: "err", val: getErrorPayload(e) };
4025
- }
4026
- var variant5 = ret;
4027
- switch (variant5.tag) {
4028
- case "ok": {
4029
- const e = variant5.val;
4030
- dataView(memory0).setInt8(arg2 + 0, 0, true);
4031
- var val2 = e;
4032
- var len2 = val2.byteLength;
4033
- var ptr2 = realloc0(0, 0, 1, len2 * 1);
4034
- var src2 = new Uint8Array(val2.buffer || val2, val2.byteOffset, len2 * 1);
4035
- new Uint8Array(memory0.buffer, ptr2, len2 * 1).set(src2);
4036
- dataView(memory0).setInt32(arg2 + 8, len2, true);
4037
- dataView(memory0).setInt32(arg2 + 4, ptr2, true);
4038
- break;
4039
- }
4040
- case "err": {
4041
- const e = variant5.val;
4042
- dataView(memory0).setInt8(arg2 + 0, 1, true);
4043
- var variant4 = e;
4044
- switch (variant4.tag) {
4045
- case "last-operation-failed": {
4046
- const e2 = variant4.val;
4047
- dataView(memory0).setInt8(arg2 + 4, 0, true);
4048
- if (!(e2 instanceof Error$1)) {
4049
- throw new Error('Resource error: Not a valid "Error" resource.');
4050
- }
4051
- var handle3 = handleCnt0++;
4052
- handleTable0.set(handle3, { rep: e2, own: true });
4053
- dataView(memory0).setInt32(arg2 + 8, handle3, true);
4054
- break;
4055
- }
4056
- case "closed": {
4057
- dataView(memory0).setInt8(arg2 + 4, 1, true);
4058
- break;
4059
- }
4060
- default: {
4061
- throw new TypeError(`invalid variant tag value \`${JSON.stringify(variant4.tag)}\` (received \`${variant4}\`) specified for \`StreamError\``);
4062
- }
4063
- }
4064
- break;
4065
- }
4066
- default: {
4067
- throw new TypeError("invalid variant specified for result");
4068
- }
4069
- }
4070
- }
4071
- function trampoline32(arg0, arg1) {
4072
- var handle1 = arg0;
4073
- var rsc0 = handleTable2.get(handle1).rep;
4074
- let ret;
4075
- try {
4076
- ret = { tag: "ok", val: OutputStream2.prototype.checkWrite.call(rsc0) };
4077
- } catch (e) {
4078
- ret = { tag: "err", val: getErrorPayload(e) };
4079
- }
4080
- var variant4 = ret;
4081
- switch (variant4.tag) {
4082
- case "ok": {
4083
- const e = variant4.val;
4084
- dataView(memory0).setInt8(arg1 + 0, 0, true);
4085
- dataView(memory0).setBigInt64(arg1 + 8, toUint64(e), true);
4086
- break;
4087
- }
4088
- case "err": {
4089
- const e = variant4.val;
4090
- dataView(memory0).setInt8(arg1 + 0, 1, true);
4091
- var variant3 = e;
4092
- switch (variant3.tag) {
4093
- case "last-operation-failed": {
4094
- const e2 = variant3.val;
4095
- dataView(memory0).setInt8(arg1 + 8, 0, true);
4096
- if (!(e2 instanceof Error$1)) {
4097
- throw new Error('Resource error: Not a valid "Error" resource.');
4098
- }
4099
- var handle2 = handleCnt0++;
4100
- handleTable0.set(handle2, { rep: e2, own: true });
4101
- dataView(memory0).setInt32(arg1 + 12, handle2, true);
4102
- break;
4103
- }
4104
- case "closed": {
4105
- dataView(memory0).setInt8(arg1 + 8, 1, true);
4106
- break;
4107
- }
4108
- default: {
4109
- throw new TypeError(`invalid variant tag value \`${JSON.stringify(variant3.tag)}\` (received \`${variant3}\`) specified for \`StreamError\``);
4110
- }
4111
- }
4112
- break;
4113
- }
4114
- default: {
4115
- throw new TypeError("invalid variant specified for result");
4116
- }
4117
- }
4118
- }
4119
- function trampoline33(arg0, arg1, arg2, arg3) {
4120
- var handle1 = arg0;
4121
- var rsc0 = handleTable2.get(handle1).rep;
4122
- var ptr2 = arg1;
4123
- var len2 = arg2;
4124
- var result2 = new Uint8Array(memory0.buffer.slice(ptr2, ptr2 + len2 * 1));
4125
- let ret;
4126
- try {
4127
- ret = { tag: "ok", val: OutputStream2.prototype.write.call(rsc0, result2) };
4128
- } catch (e) {
4129
- ret = { tag: "err", val: getErrorPayload(e) };
4130
- }
4131
- var variant5 = ret;
4132
- switch (variant5.tag) {
4133
- case "ok": {
4134
- const e = variant5.val;
4135
- dataView(memory0).setInt8(arg3 + 0, 0, true);
4136
- break;
4137
- }
4138
- case "err": {
4139
- const e = variant5.val;
4140
- dataView(memory0).setInt8(arg3 + 0, 1, true);
4141
- var variant4 = e;
4142
- switch (variant4.tag) {
4143
- case "last-operation-failed": {
4144
- const e2 = variant4.val;
4145
- dataView(memory0).setInt8(arg3 + 4, 0, true);
4146
- if (!(e2 instanceof Error$1)) {
4147
- throw new Error('Resource error: Not a valid "Error" resource.');
4148
- }
4149
- var handle3 = handleCnt0++;
4150
- handleTable0.set(handle3, { rep: e2, own: true });
4151
- dataView(memory0).setInt32(arg3 + 8, handle3, true);
4152
- break;
4153
- }
4154
- case "closed": {
4155
- dataView(memory0).setInt8(arg3 + 4, 1, true);
4156
- break;
4157
- }
4158
- default: {
4159
- throw new TypeError(`invalid variant tag value \`${JSON.stringify(variant4.tag)}\` (received \`${variant4}\`) specified for \`StreamError\``);
4160
- }
4161
- }
4162
- break;
4163
- }
4164
- default: {
4165
- throw new TypeError("invalid variant specified for result");
4166
- }
4167
- }
4168
- }
4169
- function trampoline34(arg0, arg1, arg2, arg3) {
4170
- var handle1 = arg0;
4171
- var rsc0 = handleTable2.get(handle1).rep;
4172
- var ptr2 = arg1;
4173
- var len2 = arg2;
4174
- var result2 = new Uint8Array(memory0.buffer.slice(ptr2, ptr2 + len2 * 1));
4175
- let ret;
4176
- try {
4177
- ret = { tag: "ok", val: OutputStream2.prototype.blockingWriteAndFlush.call(rsc0, result2) };
4178
- } catch (e) {
4179
- ret = { tag: "err", val: getErrorPayload(e) };
4180
- }
4181
- var variant5 = ret;
4182
- switch (variant5.tag) {
4183
- case "ok": {
4184
- const e = variant5.val;
4185
- dataView(memory0).setInt8(arg3 + 0, 0, true);
4186
- break;
4187
- }
4188
- case "err": {
4189
- const e = variant5.val;
4190
- dataView(memory0).setInt8(arg3 + 0, 1, true);
4191
- var variant4 = e;
4192
- switch (variant4.tag) {
4193
- case "last-operation-failed": {
4194
- const e2 = variant4.val;
4195
- dataView(memory0).setInt8(arg3 + 4, 0, true);
4196
- if (!(e2 instanceof Error$1)) {
4197
- throw new Error('Resource error: Not a valid "Error" resource.');
4198
- }
4199
- var handle3 = handleCnt0++;
4200
- handleTable0.set(handle3, { rep: e2, own: true });
4201
- dataView(memory0).setInt32(arg3 + 8, handle3, true);
4202
- break;
4203
- }
4204
- case "closed": {
4205
- dataView(memory0).setInt8(arg3 + 4, 1, true);
4206
- break;
4207
- }
4208
- default: {
4209
- throw new TypeError(`invalid variant tag value \`${JSON.stringify(variant4.tag)}\` (received \`${variant4}\`) specified for \`StreamError\``);
4210
- }
4211
- }
4212
- break;
4213
- }
4214
- default: {
4215
- throw new TypeError("invalid variant specified for result");
4216
- }
4217
- }
4218
- }
4219
- function trampoline35(arg0, arg1) {
4220
- var handle1 = arg0;
4221
- var rsc0 = handleTable2.get(handle1).rep;
4222
- let ret;
4223
- try {
4224
- ret = { tag: "ok", val: OutputStream2.prototype.blockingFlush.call(rsc0) };
4225
- } catch (e) {
4226
- ret = { tag: "err", val: getErrorPayload(e) };
4227
- }
4228
- var variant4 = ret;
4229
- switch (variant4.tag) {
4230
- case "ok": {
4231
- const e = variant4.val;
4232
- dataView(memory0).setInt8(arg1 + 0, 0, true);
4233
- break;
4234
- }
4235
- case "err": {
4236
- const e = variant4.val;
4237
- dataView(memory0).setInt8(arg1 + 0, 1, true);
4238
- var variant3 = e;
4239
- switch (variant3.tag) {
4240
- case "last-operation-failed": {
4241
- const e2 = variant3.val;
4242
- dataView(memory0).setInt8(arg1 + 4, 0, true);
4243
- if (!(e2 instanceof Error$1)) {
4244
- throw new Error('Resource error: Not a valid "Error" resource.');
4245
- }
4246
- var handle2 = handleCnt0++;
4247
- handleTable0.set(handle2, { rep: e2, own: true });
4248
- dataView(memory0).setInt32(arg1 + 8, handle2, true);
4249
- break;
4250
- }
4251
- case "closed": {
4252
- dataView(memory0).setInt8(arg1 + 4, 1, true);
4253
- break;
4254
- }
4255
- default: {
4256
- throw new TypeError(`invalid variant tag value \`${JSON.stringify(variant3.tag)}\` (received \`${variant3}\`) specified for \`StreamError\``);
4257
- }
4258
- }
4259
- break;
4260
- }
4261
- default: {
4262
- throw new TypeError("invalid variant specified for result");
4263
- }
4264
- }
4265
- }
4266
- function trampoline36(arg0) {
4267
- const ret = getEnvironment();
4268
- var vec3 = ret;
4269
- var len3 = vec3.length;
4270
- var result3 = realloc0(0, 0, 4, len3 * 16);
4271
- for (let i = 0; i < vec3.length; i++) {
4272
- const e = vec3[i];
4273
- const base = result3 + i * 16;
4274
- var [tuple0_0, tuple0_1] = e;
4275
- var ptr1 = utf8Encode(tuple0_0, realloc0, memory0);
4276
- var len1 = utf8EncodedLen;
4277
- dataView(memory0).setInt32(base + 4, len1, true);
4278
- dataView(memory0).setInt32(base + 0, ptr1, true);
4279
- var ptr2 = utf8Encode(tuple0_1, realloc0, memory0);
4280
- var len2 = utf8EncodedLen;
4281
- dataView(memory0).setInt32(base + 12, len2, true);
4282
- dataView(memory0).setInt32(base + 8, ptr2, true);
4283
- }
4284
- dataView(memory0).setInt32(arg0 + 4, len3, true);
4285
- dataView(memory0).setInt32(arg0 + 0, result3, true);
4286
- }
4287
- function trampoline37(arg0) {
4288
- const ret = getArguments();
4289
- var vec1 = ret;
4290
- var len1 = vec1.length;
4291
- var result1 = realloc0(0, 0, 4, len1 * 8);
4292
- for (let i = 0; i < vec1.length; i++) {
4293
- const e = vec1[i];
4294
- const base = result1 + i * 8;
4295
- var ptr0 = utf8Encode(e, realloc0, memory0);
4296
- var len0 = utf8EncodedLen;
4297
- dataView(memory0).setInt32(base + 4, len0, true);
4298
- dataView(memory0).setInt32(base + 0, ptr0, true);
4299
- }
4300
- dataView(memory0).setInt32(arg0 + 4, len1, true);
4301
- dataView(memory0).setInt32(arg0 + 0, result1, true);
4302
- }
4303
- function trampoline38(arg0) {
4304
- const ret = getTerminalStdin();
4305
- var variant1 = ret;
4306
- if (variant1 === null || variant1 === void 0) {
4307
- dataView(memory0).setInt8(arg0 + 0, 0, true);
4308
- } else {
4309
- const e = variant1;
4310
- dataView(memory0).setInt8(arg0 + 0, 1, true);
4311
- if (!(e instanceof TerminalInput2)) {
4312
- throw new Error('Resource error: Not a valid "TerminalInput" resource.');
4313
- }
4314
- var handle0 = handleCnt3++;
4315
- handleTable3.set(handle0, { rep: e, own: true });
4316
- dataView(memory0).setInt32(arg0 + 4, handle0, true);
4317
- }
4318
- }
4319
- function trampoline39(arg0) {
4320
- const ret = getTerminalStdout();
4321
- var variant1 = ret;
4322
- if (variant1 === null || variant1 === void 0) {
4323
- dataView(memory0).setInt8(arg0 + 0, 0, true);
4324
- } else {
4325
- const e = variant1;
4326
- dataView(memory0).setInt8(arg0 + 0, 1, true);
4327
- if (!(e instanceof TerminalOutput2)) {
4328
- throw new Error('Resource error: Not a valid "TerminalOutput" resource.');
4329
- }
4330
- var handle0 = handleCnt4++;
4331
- handleTable4.set(handle0, { rep: e, own: true });
4332
- dataView(memory0).setInt32(arg0 + 4, handle0, true);
4333
- }
4334
- }
4335
- function trampoline40(arg0) {
4336
- const ret = getTerminalStderr();
4337
- var variant1 = ret;
4338
- if (variant1 === null || variant1 === void 0) {
4339
- dataView(memory0).setInt8(arg0 + 0, 0, true);
4340
- } else {
4341
- const e = variant1;
4342
- dataView(memory0).setInt8(arg0 + 0, 1, true);
4343
- if (!(e instanceof TerminalOutput2)) {
4344
- throw new Error('Resource error: Not a valid "TerminalOutput" resource.');
4345
- }
4346
- var handle0 = handleCnt4++;
4347
- handleTable4.set(handle0, { rep: e, own: true });
4348
- dataView(memory0).setInt32(arg0 + 4, handle0, true);
4349
- }
4350
- }
4351
- let exports3;
4352
- function trampoline1(handle) {
4353
- const handleEntry = handleTable6.get(handle);
4354
- if (!handleEntry) {
4355
- throw new Error(`Resource error: Invalid handle ${handle}`);
4356
- }
4357
- handleTable6.delete(handle);
4358
- if (handleEntry.own && handleEntry.rep[symbolDispose]) {
4359
- handleEntry.rep[symbolDispose]();
4360
- }
4361
- }
4362
- function trampoline2(handle) {
4363
- const handleEntry = handleTable0.get(handle);
4364
- if (!handleEntry) {
4365
- throw new Error(`Resource error: Invalid handle ${handle}`);
4366
- }
4367
- handleTable0.delete(handle);
4368
- if (handleEntry.own && handleEntry.rep[symbolDispose]) {
4369
- handleEntry.rep[symbolDispose]();
4370
- }
4371
- }
4372
- function trampoline3(handle) {
4373
- const handleEntry = handleTable1.get(handle);
4374
- if (!handleEntry) {
4375
- throw new Error(`Resource error: Invalid handle ${handle}`);
4376
- }
4377
- handleTable1.delete(handle);
4378
- if (handleEntry.own && handleEntry.rep[symbolDispose]) {
4379
- handleEntry.rep[symbolDispose]();
4380
- }
4381
- }
4382
- function trampoline4(handle) {
4383
- const handleEntry = handleTable2.get(handle);
4384
- if (!handleEntry) {
4385
- throw new Error(`Resource error: Invalid handle ${handle}`);
4386
- }
4387
- handleTable2.delete(handle);
4388
- if (handleEntry.own && handleEntry.rep[symbolDispose]) {
4389
- handleEntry.rep[symbolDispose]();
4390
- }
4391
- }
4392
- function trampoline5(handle) {
4393
- const handleEntry = handleTable5.get(handle);
4394
- if (!handleEntry) {
4395
- throw new Error(`Resource error: Invalid handle ${handle}`);
4396
- }
4397
- handleTable5.delete(handle);
4398
- if (handleEntry.own && handleEntry.rep[symbolDispose]) {
4399
- handleEntry.rep[symbolDispose]();
4400
- }
4401
- }
4402
- function trampoline6(handle) {
4403
- const handleEntry = handleTable4.get(handle);
4404
- if (!handleEntry) {
4405
- throw new Error(`Resource error: Invalid handle ${handle}`);
4406
- }
4407
- handleTable4.delete(handle);
4408
- if (handleEntry.own && handleEntry.rep[symbolDispose]) {
4409
- handleEntry.rep[symbolDispose]();
4410
- }
4411
- }
4412
- function trampoline7(handle) {
4413
- const handleEntry = handleTable3.get(handle);
4414
- if (!handleEntry) {
4415
- throw new Error(`Resource error: Invalid handle ${handle}`);
4416
- }
4417
- handleTable3.delete(handle);
4418
- if (handleEntry.own && handleEntry.rep[symbolDispose]) {
4419
- handleEntry.rep[symbolDispose]();
4420
- }
4421
- }
4422
- Promise.all([module0, module1, module2, module3]).catch(() => {
4423
- });
4424
- ({ exports: exports0 } = await instantiateCore(await module2));
4425
- ({ exports: exports1 } = await instantiateCore(await module0, {
4426
- wasi_snapshot_preview1: {
4427
- args_get: exports0["29"],
4428
- args_sizes_get: exports0["30"],
4429
- clock_time_get: exports0["33"],
4430
- environ_get: exports0["31"],
4431
- environ_sizes_get: exports0["32"],
4432
- fd_close: exports0["34"],
4433
- fd_fdstat_get: exports0["35"],
4434
- fd_fdstat_set_flags: exports0["36"],
4435
- fd_prestat_dir_name: exports0["38"],
4436
- fd_prestat_get: exports0["37"],
4437
- fd_read: exports0["39"],
4438
- fd_readdir: exports0["40"],
4439
- fd_renumber: exports0["41"],
4440
- fd_seek: exports0["42"],
4441
- fd_write: exports0["43"],
4442
- path_create_directory: exports0["44"],
4443
- path_filestat_get: exports0["45"],
4444
- path_open: exports0["46"],
4445
- path_remove_directory: exports0["47"],
4446
- path_unlink_file: exports0["48"],
4447
- proc_exit: exports0["49"]
4448
- }
4449
- }));
4450
- ({ exports: exports2 } = await instantiateCore(await module1, {
4451
- __main_module__: {
4452
- _start: exports1._start
4453
- },
4454
- env: {
4455
- memory: exports1.memory
4456
- },
4457
- "wasi:cli/environment@0.2.0-rc-2023-12-05": {
4458
- "get-arguments": exports0["25"],
4459
- "get-environment": exports0["24"]
4460
- },
4461
- "wasi:cli/exit@0.2.0-rc-2023-12-05": {
4462
- exit: trampoline9
4463
- },
4464
- "wasi:cli/stderr@0.2.0-rc-2023-12-05": {
4465
- "get-stderr": trampoline8
4466
- },
4467
- "wasi:cli/stdin@0.2.0-rc-2023-12-05": {
4468
- "get-stdin": trampoline10
4469
- },
4470
- "wasi:cli/stdout@0.2.0-rc-2023-12-05": {
4471
- "get-stdout": trampoline11
4472
- },
4473
- "wasi:cli/terminal-input@0.2.0-rc-2023-12-05": {
4474
- "[resource-drop]terminal-input": trampoline7
4475
- },
4476
- "wasi:cli/terminal-output@0.2.0-rc-2023-12-05": {
4477
- "[resource-drop]terminal-output": trampoline6
4478
- },
4479
- "wasi:cli/terminal-stderr@0.2.0-rc-2023-12-05": {
4480
- "get-terminal-stderr": exports0["28"]
4481
- },
4482
- "wasi:cli/terminal-stdin@0.2.0-rc-2023-12-05": {
4483
- "get-terminal-stdin": exports0["26"]
4484
- },
4485
- "wasi:cli/terminal-stdout@0.2.0-rc-2023-12-05": {
4486
- "get-terminal-stdout": exports0["27"]
4487
- },
4488
- "wasi:clocks/monotonic-clock@0.2.0-rc-2023-11-10": {
4489
- now: trampoline0
4490
- },
4491
- "wasi:clocks/wall-clock@0.2.0-rc-2023-11-10": {
4492
- now: exports0["1"]
4493
- },
4494
- "wasi:filesystem/preopens@0.2.0-rc-2023-11-10": {
4495
- "get-directories": exports0["0"]
4496
- },
4497
- "wasi:filesystem/types@0.2.0-rc-2023-11-10": {
4498
- "[method]descriptor.append-via-stream": exports0["4"],
4499
- "[method]descriptor.create-directory-at": exports0["8"],
4500
- "[method]descriptor.get-flags": exports0["5"],
4501
- "[method]descriptor.get-type": exports0["6"],
4502
- "[method]descriptor.metadata-hash": exports0["14"],
4503
- "[method]descriptor.metadata-hash-at": exports0["15"],
4504
- "[method]descriptor.open-at": exports0["11"],
4505
- "[method]descriptor.read-directory": exports0["7"],
4506
- "[method]descriptor.read-via-stream": exports0["2"],
4507
- "[method]descriptor.remove-directory-at": exports0["12"],
4508
- "[method]descriptor.stat": exports0["9"],
4509
- "[method]descriptor.stat-at": exports0["10"],
4510
- "[method]descriptor.unlink-file-at": exports0["13"],
4511
- "[method]descriptor.write-via-stream": exports0["3"],
4512
- "[method]directory-entry-stream.read-directory-entry": exports0["16"],
4513
- "[resource-drop]descriptor": trampoline5,
4514
- "[resource-drop]directory-entry-stream": trampoline1,
4515
- "filesystem-error-code": exports0["17"]
4516
- },
4517
- "wasi:io/error@0.2.0-rc-2023-11-10": {
4518
- "[resource-drop]error": trampoline2
4519
- },
4520
- "wasi:io/streams@0.2.0-rc-2023-11-10": {
4521
- "[method]input-stream.blocking-read": exports0["19"],
4522
- "[method]input-stream.read": exports0["18"],
4523
- "[method]output-stream.blocking-flush": exports0["23"],
4524
- "[method]output-stream.blocking-write-and-flush": exports0["22"],
4525
- "[method]output-stream.check-write": exports0["20"],
4526
- "[method]output-stream.write": exports0["21"],
4527
- "[resource-drop]input-stream": trampoline3,
4528
- "[resource-drop]output-stream": trampoline4
4529
- }
4530
- }));
4531
- memory0 = exports1.memory;
4532
- realloc0 = exports2.cabi_import_realloc;
4533
- ({ exports: exports3 } = await instantiateCore(await module3, {
4534
- "": {
4535
- $imports: exports0.$imports,
4536
- "0": trampoline12,
4537
- "1": trampoline13,
4538
- "10": trampoline22,
4539
- "11": trampoline23,
4540
- "12": trampoline24,
4541
- "13": trampoline25,
4542
- "14": trampoline26,
4543
- "15": trampoline27,
4544
- "16": trampoline28,
4545
- "17": trampoline29,
4546
- "18": trampoline30,
4547
- "19": trampoline31,
4548
- "2": trampoline14,
4549
- "20": trampoline32,
4550
- "21": trampoline33,
4551
- "22": trampoline34,
4552
- "23": trampoline35,
4553
- "24": trampoline36,
4554
- "25": trampoline37,
4555
- "26": trampoline38,
4556
- "27": trampoline39,
4557
- "28": trampoline40,
4558
- "29": exports2.args_get,
4559
- "3": trampoline15,
4560
- "30": exports2.args_sizes_get,
4561
- "31": exports2.environ_get,
4562
- "32": exports2.environ_sizes_get,
4563
- "33": exports2.clock_time_get,
4564
- "34": exports2.fd_close,
4565
- "35": exports2.fd_fdstat_get,
4566
- "36": exports2.fd_fdstat_set_flags,
4567
- "37": exports2.fd_prestat_get,
4568
- "38": exports2.fd_prestat_dir_name,
4569
- "39": exports2.fd_read,
4570
- "4": trampoline16,
4571
- "40": exports2.fd_readdir,
4572
- "41": exports2.fd_renumber,
4573
- "42": exports2.fd_seek,
4574
- "43": exports2.fd_write,
4575
- "44": exports2.path_create_directory,
4576
- "45": exports2.path_filestat_get,
4577
- "46": exports2.path_open,
4578
- "47": exports2.path_remove_directory,
4579
- "48": exports2.path_unlink_file,
4580
- "49": exports2.proc_exit,
4581
- "5": trampoline17,
4582
- "6": trampoline18,
4583
- "7": trampoline19,
4584
- "8": trampoline20,
4585
- "9": trampoline21
4586
- }
4587
- }));
4588
- function run() {
4589
- const ret = exports2["wasi:cli/run@0.2.0-rc-2023-12-05#run"]();
4590
- let variant0;
4591
- switch (ret) {
4592
- case 0: {
4593
- variant0 = {
4594
- tag: "ok",
4595
- val: void 0
4596
- };
4597
- break;
4598
- }
4599
- case 1: {
4600
- variant0 = {
4601
- tag: "err",
4602
- val: void 0
4603
- };
4604
- break;
4605
- }
4606
- default: {
4607
- throw new TypeError("invalid variant discriminant for expected");
4608
- }
4609
- }
4610
- if (variant0.tag === "err") {
4611
- throw new ComponentError(variant0.val);
4612
- }
4613
- return variant0.val;
4614
- }
4615
- const handleTable0 = /* @__PURE__ */ new Map();
4616
- let handleCnt0 = 0;
4617
- const handleTable1 = /* @__PURE__ */ new Map();
4618
- let handleCnt1 = 0;
4619
- const handleTable2 = /* @__PURE__ */ new Map();
4620
- let handleCnt2 = 0;
4621
- const handleTable3 = /* @__PURE__ */ new Map();
4622
- let handleCnt3 = 0;
4623
- const handleTable4 = /* @__PURE__ */ new Map();
4624
- let handleCnt4 = 0;
4625
- const handleTable5 = /* @__PURE__ */ new Map();
4626
- let handleCnt5 = 0;
4627
- const handleTable6 = /* @__PURE__ */ new Map();
4628
- let handleCnt6 = 0;
4629
- const run0_2_0Rc20231205 = {
4630
- run
4631
- };
4632
- return { run: run0_2_0Rc20231205, "wasi:cli/run@0.2.0-rc-2023-12-05": run0_2_0Rc20231205 };
4633
- }
4634
-
4635
- // lib/api.js
4636
- var resourceFileURL = new URL("./resources-yosys.js", import.meta.url);
4637
- var yosys = new Application(resourceFileURL, instantiate, "yowasp-yosys");
4638
- var runYosys = yosys.run.bind(yosys);
4639
- var commands = { "yosys": runYosys };
4640
- export {
4641
- Exit,
4642
- commands,
4643
- runYosys
4644
- };