@tybys/wasm-util 0.5.2 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +193 -193
- package/dist/tsdoc-metadata.json +1 -1
- package/dist/wasm-util.esm-bundler.js +2605 -2479
- package/dist/wasm-util.esm.js +2605 -2479
- package/dist/wasm-util.esm.min.js +1 -1
- package/dist/wasm-util.js +2605 -2479
- package/dist/wasm-util.min.js +1 -1
- package/lib/cjs/asyncify.js +157 -157
- package/lib/cjs/index.js +12 -12
- package/lib/cjs/jspi.js +45 -45
- package/lib/cjs/load.js +85 -82
- package/lib/cjs/memory.js +34 -34
- package/lib/cjs/wasi/error.js +102 -102
- package/lib/cjs/wasi/fd.js +267 -267
- package/lib/cjs/wasi/fs.js +2 -2
- package/lib/cjs/wasi/index.js +168 -168
- package/lib/cjs/wasi/path.js +173 -173
- package/lib/cjs/wasi/preview1.js +1478 -1369
- package/lib/cjs/wasi/rights.js +139 -139
- package/lib/cjs/wasi/types.js +219 -209
- package/lib/cjs/wasi/util.js +121 -67
- package/lib/cjs/webassembly.js +12 -12
- package/lib/mjs/asyncify.mjs +153 -153
- package/lib/mjs/index.mjs +9 -9
- package/lib/mjs/jspi.mjs +39 -39
- package/lib/mjs/load.mjs +78 -75
- package/lib/mjs/memory.mjs +28 -28
- package/lib/mjs/wasi/error.mjs +97 -97
- package/lib/mjs/wasi/fd.mjs +256 -256
- package/lib/mjs/wasi/fs.mjs +1 -1
- package/lib/mjs/wasi/index.mjs +164 -164
- package/lib/mjs/wasi/path.mjs +168 -168
- package/lib/mjs/wasi/preview1.mjs +1474 -1365
- package/lib/mjs/wasi/rights.mjs +134 -134
- package/lib/mjs/wasi/types.mjs +216 -206
- package/lib/mjs/wasi/util.mjs +108 -55
- package/lib/mjs/webassembly.mjs +9 -9
- package/package.json +58 -54
- package/lib/cjs/memfs.js +0 -2689
- package/lib/mjs/memfs.mjs +0 -2688
package/lib/mjs/wasi/error.mjs
CHANGED
|
@@ -1,97 +1,97 @@
|
|
|
1
|
-
import { WasiErrno } from "./types.mjs";
|
|
2
|
-
export function strerror(errno) {
|
|
3
|
-
switch (errno) {
|
|
4
|
-
case WasiErrno.ESUCCESS: return 'Success';
|
|
5
|
-
case WasiErrno.E2BIG: return 'Argument list too long';
|
|
6
|
-
case WasiErrno.EACCES: return 'Permission denied';
|
|
7
|
-
case WasiErrno.EADDRINUSE: return 'Address in use';
|
|
8
|
-
case WasiErrno.EADDRNOTAVAIL: return 'Address not available';
|
|
9
|
-
case WasiErrno.EAFNOSUPPORT: return 'Address family not supported by protocol';
|
|
10
|
-
case WasiErrno.EAGAIN: return 'Resource temporarily unavailable';
|
|
11
|
-
case WasiErrno.EALREADY: return 'Operation already in progress';
|
|
12
|
-
case WasiErrno.EBADF: return 'Bad file descriptor';
|
|
13
|
-
case WasiErrno.EBADMSG: return 'Bad message';
|
|
14
|
-
case WasiErrno.EBUSY: return 'Resource busy';
|
|
15
|
-
case WasiErrno.ECANCELED: return 'Operation canceled';
|
|
16
|
-
case WasiErrno.ECHILD: return 'No child process';
|
|
17
|
-
case WasiErrno.ECONNABORTED: return 'Connection aborted';
|
|
18
|
-
case WasiErrno.ECONNREFUSED: return 'Connection refused';
|
|
19
|
-
case WasiErrno.ECONNRESET: return 'Connection reset by peer';
|
|
20
|
-
case WasiErrno.EDEADLK: return 'Resource deadlock would occur';
|
|
21
|
-
case WasiErrno.EDESTADDRREQ: return 'Destination address required';
|
|
22
|
-
case WasiErrno.EDOM: return 'Domain error';
|
|
23
|
-
case WasiErrno.EDQUOT: return 'Quota exceeded';
|
|
24
|
-
case WasiErrno.EEXIST: return 'File exists';
|
|
25
|
-
case WasiErrno.EFAULT: return 'Bad address';
|
|
26
|
-
case WasiErrno.EFBIG: return 'File too large';
|
|
27
|
-
case WasiErrno.EHOSTUNREACH: return 'Host is unreachable';
|
|
28
|
-
case WasiErrno.EIDRM: return 'Identifier removed';
|
|
29
|
-
case WasiErrno.EILSEQ: return 'Illegal byte sequence';
|
|
30
|
-
case WasiErrno.EINPROGRESS: return 'Operation in progress';
|
|
31
|
-
case WasiErrno.EINTR: return 'Interrupted system call';
|
|
32
|
-
case WasiErrno.EINVAL: return 'Invalid argument';
|
|
33
|
-
case WasiErrno.EIO: return 'I/O error';
|
|
34
|
-
case WasiErrno.EISCONN: return 'Socket is connected';
|
|
35
|
-
case WasiErrno.EISDIR: return 'Is a directory';
|
|
36
|
-
case WasiErrno.ELOOP: return 'Symbolic link loop';
|
|
37
|
-
case WasiErrno.EMFILE: return 'No file descriptors available';
|
|
38
|
-
case WasiErrno.EMLINK: return 'Too many links';
|
|
39
|
-
case WasiErrno.EMSGSIZE: return 'Message too large';
|
|
40
|
-
case WasiErrno.EMULTIHOP: return 'Multihop attempted';
|
|
41
|
-
case WasiErrno.ENAMETOOLONG: return 'Filename too long';
|
|
42
|
-
case WasiErrno.ENETDOWN: return 'Network is down';
|
|
43
|
-
case WasiErrno.ENETRESET: return 'Connection reset by network';
|
|
44
|
-
case WasiErrno.ENETUNREACH: return 'Network unreachable';
|
|
45
|
-
case WasiErrno.ENFILE: return 'Too many files open in system';
|
|
46
|
-
case WasiErrno.ENOBUFS: return 'No buffer space available';
|
|
47
|
-
case WasiErrno.ENODEV: return 'No such device';
|
|
48
|
-
case WasiErrno.ENOENT: return 'No such file or directory';
|
|
49
|
-
case WasiErrno.ENOEXEC: return 'Exec format error';
|
|
50
|
-
case WasiErrno.ENOLCK: return 'No locks available';
|
|
51
|
-
case WasiErrno.ENOLINK: return 'Link has been severed';
|
|
52
|
-
case WasiErrno.ENOMEM: return 'Out of memory';
|
|
53
|
-
case WasiErrno.ENOMSG: return 'No message of the desired type';
|
|
54
|
-
case WasiErrno.ENOPROTOOPT: return 'Protocol not available';
|
|
55
|
-
case WasiErrno.ENOSPC: return 'No space left on device';
|
|
56
|
-
case WasiErrno.ENOSYS: return 'Function not implemented';
|
|
57
|
-
case WasiErrno.ENOTCONN: return 'Socket not connected';
|
|
58
|
-
case WasiErrno.ENOTDIR: return 'Not a directory';
|
|
59
|
-
case WasiErrno.ENOTEMPTY: return 'Directory not empty';
|
|
60
|
-
case WasiErrno.ENOTRECOVERABLE: return 'State not recoverable';
|
|
61
|
-
case WasiErrno.ENOTSOCK: return 'Not a socket';
|
|
62
|
-
case WasiErrno.ENOTSUP: return 'Not supported';
|
|
63
|
-
case WasiErrno.ENOTTY: return 'Not a tty';
|
|
64
|
-
case WasiErrno.ENXIO: return 'No such device or address';
|
|
65
|
-
case WasiErrno.EOVERFLOW: return 'Value too large for data type';
|
|
66
|
-
case WasiErrno.EOWNERDEAD: return 'Previous owner died';
|
|
67
|
-
case WasiErrno.EPERM: return 'Operation not permitted';
|
|
68
|
-
case WasiErrno.EPIPE: return 'Broken pipe';
|
|
69
|
-
case WasiErrno.EPROTO: return 'Protocol error';
|
|
70
|
-
case WasiErrno.EPROTONOSUPPORT: return 'Protocol not supported';
|
|
71
|
-
case WasiErrno.EPROTOTYPE: return 'Protocol wrong type for socket';
|
|
72
|
-
case WasiErrno.ERANGE: return 'Result not representable';
|
|
73
|
-
case WasiErrno.EROFS: return 'Read-only file system';
|
|
74
|
-
case WasiErrno.ESPIPE: return 'Invalid seek';
|
|
75
|
-
case WasiErrno.ESRCH: return 'No such process';
|
|
76
|
-
case WasiErrno.ESTALE: return 'Stale file handle';
|
|
77
|
-
case WasiErrno.ETIMEDOUT: return 'Operation timed out';
|
|
78
|
-
case WasiErrno.ETXTBSY: return 'Text file busy';
|
|
79
|
-
case WasiErrno.EXDEV: return 'Cross-device link';
|
|
80
|
-
case WasiErrno.ENOTCAPABLE: return 'Capabilities insufficient';
|
|
81
|
-
default: return 'Unknown error';
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
export class WasiError extends Error {
|
|
85
|
-
constructor(message, errno) {
|
|
86
|
-
super(message);
|
|
87
|
-
this.errno = errno;
|
|
88
|
-
}
|
|
89
|
-
getErrorMessage() {
|
|
90
|
-
return strerror(this.errno);
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
Object.defineProperty(WasiError.prototype, 'name', {
|
|
94
|
-
configurable: true,
|
|
95
|
-
writable: true,
|
|
96
|
-
value: 'WasiError'
|
|
97
|
-
});
|
|
1
|
+
import { WasiErrno } from "./types.mjs";
|
|
2
|
+
export function strerror(errno) {
|
|
3
|
+
switch (errno) {
|
|
4
|
+
case WasiErrno.ESUCCESS: return 'Success';
|
|
5
|
+
case WasiErrno.E2BIG: return 'Argument list too long';
|
|
6
|
+
case WasiErrno.EACCES: return 'Permission denied';
|
|
7
|
+
case WasiErrno.EADDRINUSE: return 'Address in use';
|
|
8
|
+
case WasiErrno.EADDRNOTAVAIL: return 'Address not available';
|
|
9
|
+
case WasiErrno.EAFNOSUPPORT: return 'Address family not supported by protocol';
|
|
10
|
+
case WasiErrno.EAGAIN: return 'Resource temporarily unavailable';
|
|
11
|
+
case WasiErrno.EALREADY: return 'Operation already in progress';
|
|
12
|
+
case WasiErrno.EBADF: return 'Bad file descriptor';
|
|
13
|
+
case WasiErrno.EBADMSG: return 'Bad message';
|
|
14
|
+
case WasiErrno.EBUSY: return 'Resource busy';
|
|
15
|
+
case WasiErrno.ECANCELED: return 'Operation canceled';
|
|
16
|
+
case WasiErrno.ECHILD: return 'No child process';
|
|
17
|
+
case WasiErrno.ECONNABORTED: return 'Connection aborted';
|
|
18
|
+
case WasiErrno.ECONNREFUSED: return 'Connection refused';
|
|
19
|
+
case WasiErrno.ECONNRESET: return 'Connection reset by peer';
|
|
20
|
+
case WasiErrno.EDEADLK: return 'Resource deadlock would occur';
|
|
21
|
+
case WasiErrno.EDESTADDRREQ: return 'Destination address required';
|
|
22
|
+
case WasiErrno.EDOM: return 'Domain error';
|
|
23
|
+
case WasiErrno.EDQUOT: return 'Quota exceeded';
|
|
24
|
+
case WasiErrno.EEXIST: return 'File exists';
|
|
25
|
+
case WasiErrno.EFAULT: return 'Bad address';
|
|
26
|
+
case WasiErrno.EFBIG: return 'File too large';
|
|
27
|
+
case WasiErrno.EHOSTUNREACH: return 'Host is unreachable';
|
|
28
|
+
case WasiErrno.EIDRM: return 'Identifier removed';
|
|
29
|
+
case WasiErrno.EILSEQ: return 'Illegal byte sequence';
|
|
30
|
+
case WasiErrno.EINPROGRESS: return 'Operation in progress';
|
|
31
|
+
case WasiErrno.EINTR: return 'Interrupted system call';
|
|
32
|
+
case WasiErrno.EINVAL: return 'Invalid argument';
|
|
33
|
+
case WasiErrno.EIO: return 'I/O error';
|
|
34
|
+
case WasiErrno.EISCONN: return 'Socket is connected';
|
|
35
|
+
case WasiErrno.EISDIR: return 'Is a directory';
|
|
36
|
+
case WasiErrno.ELOOP: return 'Symbolic link loop';
|
|
37
|
+
case WasiErrno.EMFILE: return 'No file descriptors available';
|
|
38
|
+
case WasiErrno.EMLINK: return 'Too many links';
|
|
39
|
+
case WasiErrno.EMSGSIZE: return 'Message too large';
|
|
40
|
+
case WasiErrno.EMULTIHOP: return 'Multihop attempted';
|
|
41
|
+
case WasiErrno.ENAMETOOLONG: return 'Filename too long';
|
|
42
|
+
case WasiErrno.ENETDOWN: return 'Network is down';
|
|
43
|
+
case WasiErrno.ENETRESET: return 'Connection reset by network';
|
|
44
|
+
case WasiErrno.ENETUNREACH: return 'Network unreachable';
|
|
45
|
+
case WasiErrno.ENFILE: return 'Too many files open in system';
|
|
46
|
+
case WasiErrno.ENOBUFS: return 'No buffer space available';
|
|
47
|
+
case WasiErrno.ENODEV: return 'No such device';
|
|
48
|
+
case WasiErrno.ENOENT: return 'No such file or directory';
|
|
49
|
+
case WasiErrno.ENOEXEC: return 'Exec format error';
|
|
50
|
+
case WasiErrno.ENOLCK: return 'No locks available';
|
|
51
|
+
case WasiErrno.ENOLINK: return 'Link has been severed';
|
|
52
|
+
case WasiErrno.ENOMEM: return 'Out of memory';
|
|
53
|
+
case WasiErrno.ENOMSG: return 'No message of the desired type';
|
|
54
|
+
case WasiErrno.ENOPROTOOPT: return 'Protocol not available';
|
|
55
|
+
case WasiErrno.ENOSPC: return 'No space left on device';
|
|
56
|
+
case WasiErrno.ENOSYS: return 'Function not implemented';
|
|
57
|
+
case WasiErrno.ENOTCONN: return 'Socket not connected';
|
|
58
|
+
case WasiErrno.ENOTDIR: return 'Not a directory';
|
|
59
|
+
case WasiErrno.ENOTEMPTY: return 'Directory not empty';
|
|
60
|
+
case WasiErrno.ENOTRECOVERABLE: return 'State not recoverable';
|
|
61
|
+
case WasiErrno.ENOTSOCK: return 'Not a socket';
|
|
62
|
+
case WasiErrno.ENOTSUP: return 'Not supported';
|
|
63
|
+
case WasiErrno.ENOTTY: return 'Not a tty';
|
|
64
|
+
case WasiErrno.ENXIO: return 'No such device or address';
|
|
65
|
+
case WasiErrno.EOVERFLOW: return 'Value too large for data type';
|
|
66
|
+
case WasiErrno.EOWNERDEAD: return 'Previous owner died';
|
|
67
|
+
case WasiErrno.EPERM: return 'Operation not permitted';
|
|
68
|
+
case WasiErrno.EPIPE: return 'Broken pipe';
|
|
69
|
+
case WasiErrno.EPROTO: return 'Protocol error';
|
|
70
|
+
case WasiErrno.EPROTONOSUPPORT: return 'Protocol not supported';
|
|
71
|
+
case WasiErrno.EPROTOTYPE: return 'Protocol wrong type for socket';
|
|
72
|
+
case WasiErrno.ERANGE: return 'Result not representable';
|
|
73
|
+
case WasiErrno.EROFS: return 'Read-only file system';
|
|
74
|
+
case WasiErrno.ESPIPE: return 'Invalid seek';
|
|
75
|
+
case WasiErrno.ESRCH: return 'No such process';
|
|
76
|
+
case WasiErrno.ESTALE: return 'Stale file handle';
|
|
77
|
+
case WasiErrno.ETIMEDOUT: return 'Operation timed out';
|
|
78
|
+
case WasiErrno.ETXTBSY: return 'Text file busy';
|
|
79
|
+
case WasiErrno.EXDEV: return 'Cross-device link';
|
|
80
|
+
case WasiErrno.ENOTCAPABLE: return 'Capabilities insufficient';
|
|
81
|
+
default: return 'Unknown error';
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
export class WasiError extends Error {
|
|
85
|
+
constructor(message, errno) {
|
|
86
|
+
super(message);
|
|
87
|
+
this.errno = errno;
|
|
88
|
+
}
|
|
89
|
+
getErrorMessage() {
|
|
90
|
+
return strerror(this.errno);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
Object.defineProperty(WasiError.prototype, 'name', {
|
|
94
|
+
configurable: true,
|
|
95
|
+
writable: true,
|
|
96
|
+
value: 'WasiError'
|
|
97
|
+
});
|