@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.
Files changed (40) hide show
  1. package/README.md +193 -193
  2. package/dist/tsdoc-metadata.json +1 -1
  3. package/dist/wasm-util.esm-bundler.js +2605 -2479
  4. package/dist/wasm-util.esm.js +2605 -2479
  5. package/dist/wasm-util.esm.min.js +1 -1
  6. package/dist/wasm-util.js +2605 -2479
  7. package/dist/wasm-util.min.js +1 -1
  8. package/lib/cjs/asyncify.js +157 -157
  9. package/lib/cjs/index.js +12 -12
  10. package/lib/cjs/jspi.js +45 -45
  11. package/lib/cjs/load.js +85 -82
  12. package/lib/cjs/memory.js +34 -34
  13. package/lib/cjs/wasi/error.js +102 -102
  14. package/lib/cjs/wasi/fd.js +267 -267
  15. package/lib/cjs/wasi/fs.js +2 -2
  16. package/lib/cjs/wasi/index.js +168 -168
  17. package/lib/cjs/wasi/path.js +173 -173
  18. package/lib/cjs/wasi/preview1.js +1478 -1369
  19. package/lib/cjs/wasi/rights.js +139 -139
  20. package/lib/cjs/wasi/types.js +219 -209
  21. package/lib/cjs/wasi/util.js +121 -67
  22. package/lib/cjs/webassembly.js +12 -12
  23. package/lib/mjs/asyncify.mjs +153 -153
  24. package/lib/mjs/index.mjs +9 -9
  25. package/lib/mjs/jspi.mjs +39 -39
  26. package/lib/mjs/load.mjs +78 -75
  27. package/lib/mjs/memory.mjs +28 -28
  28. package/lib/mjs/wasi/error.mjs +97 -97
  29. package/lib/mjs/wasi/fd.mjs +256 -256
  30. package/lib/mjs/wasi/fs.mjs +1 -1
  31. package/lib/mjs/wasi/index.mjs +164 -164
  32. package/lib/mjs/wasi/path.mjs +168 -168
  33. package/lib/mjs/wasi/preview1.mjs +1474 -1365
  34. package/lib/mjs/wasi/rights.mjs +134 -134
  35. package/lib/mjs/wasi/types.mjs +216 -206
  36. package/lib/mjs/wasi/util.mjs +108 -55
  37. package/lib/mjs/webassembly.mjs +9 -9
  38. package/package.json +58 -54
  39. package/lib/cjs/memfs.js +0 -2689
  40. package/lib/mjs/memfs.mjs +0 -2688
@@ -1,140 +1,140 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getRights = exports.TTY_INHERITING = exports.TTY_BASE = exports.SOCKET_INHERITING = exports.SOCKET_BASE = exports.DIRECTORY_INHERITING = exports.DIRECTORY_BASE = exports.REGULAR_FILE_INHERITING = exports.REGULAR_FILE_BASE = exports.CHARACTER_DEVICE_INHERITING = exports.CHARACTER_DEVICE_BASE = exports.BLOCK_DEVICE_INHERITING = exports.BLOCK_DEVICE_BASE = exports.RIGHTS_ALL = void 0;
4
- /* eslint-disable spaced-comment */
5
- const error_1 = require("./error");
6
- const types_1 = require("./types");
7
- exports.RIGHTS_ALL = types_1.WasiRights.FD_DATASYNC |
8
- types_1.WasiRights.FD_READ |
9
- types_1.WasiRights.FD_SEEK |
10
- types_1.WasiRights.FD_FDSTAT_SET_FLAGS |
11
- types_1.WasiRights.FD_SYNC |
12
- types_1.WasiRights.FD_TELL |
13
- types_1.WasiRights.FD_WRITE |
14
- types_1.WasiRights.FD_ADVISE |
15
- types_1.WasiRights.FD_ALLOCATE |
16
- types_1.WasiRights.PATH_CREATE_DIRECTORY |
17
- types_1.WasiRights.PATH_CREATE_FILE |
18
- types_1.WasiRights.PATH_LINK_SOURCE |
19
- types_1.WasiRights.PATH_LINK_TARGET |
20
- types_1.WasiRights.PATH_OPEN |
21
- types_1.WasiRights.FD_READDIR |
22
- types_1.WasiRights.PATH_READLINK |
23
- types_1.WasiRights.PATH_RENAME_SOURCE |
24
- types_1.WasiRights.PATH_RENAME_TARGET |
25
- types_1.WasiRights.PATH_FILESTAT_GET |
26
- types_1.WasiRights.PATH_FILESTAT_SET_SIZE |
27
- types_1.WasiRights.PATH_FILESTAT_SET_TIMES |
28
- types_1.WasiRights.FD_FILESTAT_GET |
29
- types_1.WasiRights.FD_FILESTAT_SET_TIMES |
30
- types_1.WasiRights.FD_FILESTAT_SET_SIZE |
31
- types_1.WasiRights.PATH_SYMLINK |
32
- types_1.WasiRights.PATH_UNLINK_FILE |
33
- types_1.WasiRights.PATH_REMOVE_DIRECTORY |
34
- types_1.WasiRights.POLL_FD_READWRITE |
35
- types_1.WasiRights.SOCK_SHUTDOWN;
36
- exports.BLOCK_DEVICE_BASE = exports.RIGHTS_ALL;
37
- exports.BLOCK_DEVICE_INHERITING = exports.RIGHTS_ALL;
38
- exports.CHARACTER_DEVICE_BASE = exports.RIGHTS_ALL;
39
- exports.CHARACTER_DEVICE_INHERITING = exports.RIGHTS_ALL;
40
- exports.REGULAR_FILE_BASE = types_1.WasiRights.FD_DATASYNC |
41
- types_1.WasiRights.FD_READ |
42
- types_1.WasiRights.FD_SEEK |
43
- types_1.WasiRights.FD_FDSTAT_SET_FLAGS |
44
- types_1.WasiRights.FD_SYNC |
45
- types_1.WasiRights.FD_TELL |
46
- types_1.WasiRights.FD_WRITE |
47
- types_1.WasiRights.FD_ADVISE |
48
- types_1.WasiRights.FD_ALLOCATE |
49
- types_1.WasiRights.FD_FILESTAT_GET |
50
- types_1.WasiRights.FD_FILESTAT_SET_SIZE |
51
- types_1.WasiRights.FD_FILESTAT_SET_TIMES |
52
- types_1.WasiRights.POLL_FD_READWRITE;
53
- exports.REGULAR_FILE_INHERITING = BigInt(0);
54
- exports.DIRECTORY_BASE = types_1.WasiRights.FD_FDSTAT_SET_FLAGS |
55
- types_1.WasiRights.FD_SYNC |
56
- types_1.WasiRights.FD_ADVISE |
57
- types_1.WasiRights.PATH_CREATE_DIRECTORY |
58
- types_1.WasiRights.PATH_CREATE_FILE |
59
- types_1.WasiRights.PATH_LINK_SOURCE |
60
- types_1.WasiRights.PATH_LINK_TARGET |
61
- types_1.WasiRights.PATH_OPEN |
62
- types_1.WasiRights.FD_READDIR |
63
- types_1.WasiRights.PATH_READLINK |
64
- types_1.WasiRights.PATH_RENAME_SOURCE |
65
- types_1.WasiRights.PATH_RENAME_TARGET |
66
- types_1.WasiRights.PATH_FILESTAT_GET |
67
- types_1.WasiRights.PATH_FILESTAT_SET_SIZE |
68
- types_1.WasiRights.PATH_FILESTAT_SET_TIMES |
69
- types_1.WasiRights.FD_FILESTAT_GET |
70
- types_1.WasiRights.FD_FILESTAT_SET_TIMES |
71
- types_1.WasiRights.PATH_SYMLINK |
72
- types_1.WasiRights.PATH_UNLINK_FILE |
73
- types_1.WasiRights.PATH_REMOVE_DIRECTORY |
74
- types_1.WasiRights.POLL_FD_READWRITE;
75
- exports.DIRECTORY_INHERITING = exports.DIRECTORY_BASE | exports.REGULAR_FILE_BASE;
76
- exports.SOCKET_BASE = (types_1.WasiRights.FD_READ |
77
- types_1.WasiRights.FD_FDSTAT_SET_FLAGS |
78
- types_1.WasiRights.FD_WRITE |
79
- types_1.WasiRights.FD_FILESTAT_GET |
80
- types_1.WasiRights.POLL_FD_READWRITE |
81
- types_1.WasiRights.SOCK_SHUTDOWN);
82
- exports.SOCKET_INHERITING = exports.RIGHTS_ALL;
83
- exports.TTY_BASE = types_1.WasiRights.FD_READ |
84
- types_1.WasiRights.FD_FDSTAT_SET_FLAGS |
85
- types_1.WasiRights.FD_WRITE |
86
- types_1.WasiRights.FD_FILESTAT_GET |
87
- types_1.WasiRights.POLL_FD_READWRITE;
88
- exports.TTY_INHERITING = BigInt(0);
89
- function getRights(stdio, fd, flags, type) {
90
- const ret = {
91
- base: BigInt(0),
92
- inheriting: BigInt(0)
93
- };
94
- if (type === types_1.WasiFileType.UNKNOWN) {
95
- throw new error_1.WasiError('Unknown file type', types_1.WasiErrno.EINVAL);
96
- }
97
- switch (type) {
98
- case types_1.WasiFileType.REGULAR_FILE:
99
- ret.base = exports.REGULAR_FILE_BASE;
100
- ret.inheriting = exports.REGULAR_FILE_INHERITING;
101
- break;
102
- case types_1.WasiFileType.DIRECTORY:
103
- ret.base = exports.DIRECTORY_BASE;
104
- ret.inheriting = exports.DIRECTORY_INHERITING;
105
- break;
106
- case types_1.WasiFileType.SOCKET_STREAM:
107
- case types_1.WasiFileType.SOCKET_DGRAM:
108
- ret.base = exports.SOCKET_BASE;
109
- ret.inheriting = exports.SOCKET_INHERITING;
110
- break;
111
- case types_1.WasiFileType.CHARACTER_DEVICE:
112
- if (stdio.indexOf(fd) !== -1) {
113
- ret.base = exports.TTY_BASE;
114
- ret.inheriting = exports.TTY_INHERITING;
115
- }
116
- else {
117
- ret.base = exports.CHARACTER_DEVICE_BASE;
118
- ret.inheriting = exports.CHARACTER_DEVICE_INHERITING;
119
- }
120
- break;
121
- case types_1.WasiFileType.BLOCK_DEVICE:
122
- ret.base = exports.BLOCK_DEVICE_BASE;
123
- ret.inheriting = exports.BLOCK_DEVICE_INHERITING;
124
- break;
125
- default:
126
- ret.base = BigInt(0);
127
- ret.inheriting = BigInt(0);
128
- }
129
- /* Disable read/write bits depending on access mode. */
130
- const read_or_write_only = flags & (0 | 1 | 2);
131
- if (read_or_write_only === 0) {
132
- ret.base &= ~types_1.WasiRights.FD_WRITE;
133
- }
134
- else if (read_or_write_only === 1) {
135
- ret.base &= ~types_1.WasiRights.FD_READ;
136
- }
137
- return ret;
138
- }
139
- exports.getRights = getRights;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getRights = exports.TTY_INHERITING = exports.TTY_BASE = exports.SOCKET_INHERITING = exports.SOCKET_BASE = exports.DIRECTORY_INHERITING = exports.DIRECTORY_BASE = exports.REGULAR_FILE_INHERITING = exports.REGULAR_FILE_BASE = exports.CHARACTER_DEVICE_INHERITING = exports.CHARACTER_DEVICE_BASE = exports.BLOCK_DEVICE_INHERITING = exports.BLOCK_DEVICE_BASE = exports.RIGHTS_ALL = void 0;
4
+ /* eslint-disable spaced-comment */
5
+ const error_1 = require("./error");
6
+ const types_1 = require("./types");
7
+ exports.RIGHTS_ALL = types_1.WasiRights.FD_DATASYNC |
8
+ types_1.WasiRights.FD_READ |
9
+ types_1.WasiRights.FD_SEEK |
10
+ types_1.WasiRights.FD_FDSTAT_SET_FLAGS |
11
+ types_1.WasiRights.FD_SYNC |
12
+ types_1.WasiRights.FD_TELL |
13
+ types_1.WasiRights.FD_WRITE |
14
+ types_1.WasiRights.FD_ADVISE |
15
+ types_1.WasiRights.FD_ALLOCATE |
16
+ types_1.WasiRights.PATH_CREATE_DIRECTORY |
17
+ types_1.WasiRights.PATH_CREATE_FILE |
18
+ types_1.WasiRights.PATH_LINK_SOURCE |
19
+ types_1.WasiRights.PATH_LINK_TARGET |
20
+ types_1.WasiRights.PATH_OPEN |
21
+ types_1.WasiRights.FD_READDIR |
22
+ types_1.WasiRights.PATH_READLINK |
23
+ types_1.WasiRights.PATH_RENAME_SOURCE |
24
+ types_1.WasiRights.PATH_RENAME_TARGET |
25
+ types_1.WasiRights.PATH_FILESTAT_GET |
26
+ types_1.WasiRights.PATH_FILESTAT_SET_SIZE |
27
+ types_1.WasiRights.PATH_FILESTAT_SET_TIMES |
28
+ types_1.WasiRights.FD_FILESTAT_GET |
29
+ types_1.WasiRights.FD_FILESTAT_SET_TIMES |
30
+ types_1.WasiRights.FD_FILESTAT_SET_SIZE |
31
+ types_1.WasiRights.PATH_SYMLINK |
32
+ types_1.WasiRights.PATH_UNLINK_FILE |
33
+ types_1.WasiRights.PATH_REMOVE_DIRECTORY |
34
+ types_1.WasiRights.POLL_FD_READWRITE |
35
+ types_1.WasiRights.SOCK_SHUTDOWN;
36
+ exports.BLOCK_DEVICE_BASE = exports.RIGHTS_ALL;
37
+ exports.BLOCK_DEVICE_INHERITING = exports.RIGHTS_ALL;
38
+ exports.CHARACTER_DEVICE_BASE = exports.RIGHTS_ALL;
39
+ exports.CHARACTER_DEVICE_INHERITING = exports.RIGHTS_ALL;
40
+ exports.REGULAR_FILE_BASE = types_1.WasiRights.FD_DATASYNC |
41
+ types_1.WasiRights.FD_READ |
42
+ types_1.WasiRights.FD_SEEK |
43
+ types_1.WasiRights.FD_FDSTAT_SET_FLAGS |
44
+ types_1.WasiRights.FD_SYNC |
45
+ types_1.WasiRights.FD_TELL |
46
+ types_1.WasiRights.FD_WRITE |
47
+ types_1.WasiRights.FD_ADVISE |
48
+ types_1.WasiRights.FD_ALLOCATE |
49
+ types_1.WasiRights.FD_FILESTAT_GET |
50
+ types_1.WasiRights.FD_FILESTAT_SET_SIZE |
51
+ types_1.WasiRights.FD_FILESTAT_SET_TIMES |
52
+ types_1.WasiRights.POLL_FD_READWRITE;
53
+ exports.REGULAR_FILE_INHERITING = BigInt(0);
54
+ exports.DIRECTORY_BASE = types_1.WasiRights.FD_FDSTAT_SET_FLAGS |
55
+ types_1.WasiRights.FD_SYNC |
56
+ types_1.WasiRights.FD_ADVISE |
57
+ types_1.WasiRights.PATH_CREATE_DIRECTORY |
58
+ types_1.WasiRights.PATH_CREATE_FILE |
59
+ types_1.WasiRights.PATH_LINK_SOURCE |
60
+ types_1.WasiRights.PATH_LINK_TARGET |
61
+ types_1.WasiRights.PATH_OPEN |
62
+ types_1.WasiRights.FD_READDIR |
63
+ types_1.WasiRights.PATH_READLINK |
64
+ types_1.WasiRights.PATH_RENAME_SOURCE |
65
+ types_1.WasiRights.PATH_RENAME_TARGET |
66
+ types_1.WasiRights.PATH_FILESTAT_GET |
67
+ types_1.WasiRights.PATH_FILESTAT_SET_SIZE |
68
+ types_1.WasiRights.PATH_FILESTAT_SET_TIMES |
69
+ types_1.WasiRights.FD_FILESTAT_GET |
70
+ types_1.WasiRights.FD_FILESTAT_SET_TIMES |
71
+ types_1.WasiRights.PATH_SYMLINK |
72
+ types_1.WasiRights.PATH_UNLINK_FILE |
73
+ types_1.WasiRights.PATH_REMOVE_DIRECTORY |
74
+ types_1.WasiRights.POLL_FD_READWRITE;
75
+ exports.DIRECTORY_INHERITING = exports.DIRECTORY_BASE | exports.REGULAR_FILE_BASE;
76
+ exports.SOCKET_BASE = (types_1.WasiRights.FD_READ |
77
+ types_1.WasiRights.FD_FDSTAT_SET_FLAGS |
78
+ types_1.WasiRights.FD_WRITE |
79
+ types_1.WasiRights.FD_FILESTAT_GET |
80
+ types_1.WasiRights.POLL_FD_READWRITE |
81
+ types_1.WasiRights.SOCK_SHUTDOWN);
82
+ exports.SOCKET_INHERITING = exports.RIGHTS_ALL;
83
+ exports.TTY_BASE = types_1.WasiRights.FD_READ |
84
+ types_1.WasiRights.FD_FDSTAT_SET_FLAGS |
85
+ types_1.WasiRights.FD_WRITE |
86
+ types_1.WasiRights.FD_FILESTAT_GET |
87
+ types_1.WasiRights.POLL_FD_READWRITE;
88
+ exports.TTY_INHERITING = BigInt(0);
89
+ function getRights(stdio, fd, flags, type) {
90
+ const ret = {
91
+ base: BigInt(0),
92
+ inheriting: BigInt(0)
93
+ };
94
+ if (type === types_1.WasiFileType.UNKNOWN) {
95
+ throw new error_1.WasiError('Unknown file type', types_1.WasiErrno.EINVAL);
96
+ }
97
+ switch (type) {
98
+ case types_1.WasiFileType.REGULAR_FILE:
99
+ ret.base = exports.REGULAR_FILE_BASE;
100
+ ret.inheriting = exports.REGULAR_FILE_INHERITING;
101
+ break;
102
+ case types_1.WasiFileType.DIRECTORY:
103
+ ret.base = exports.DIRECTORY_BASE;
104
+ ret.inheriting = exports.DIRECTORY_INHERITING;
105
+ break;
106
+ case types_1.WasiFileType.SOCKET_STREAM:
107
+ case types_1.WasiFileType.SOCKET_DGRAM:
108
+ ret.base = exports.SOCKET_BASE;
109
+ ret.inheriting = exports.SOCKET_INHERITING;
110
+ break;
111
+ case types_1.WasiFileType.CHARACTER_DEVICE:
112
+ if (stdio.indexOf(fd) !== -1) {
113
+ ret.base = exports.TTY_BASE;
114
+ ret.inheriting = exports.TTY_INHERITING;
115
+ }
116
+ else {
117
+ ret.base = exports.CHARACTER_DEVICE_BASE;
118
+ ret.inheriting = exports.CHARACTER_DEVICE_INHERITING;
119
+ }
120
+ break;
121
+ case types_1.WasiFileType.BLOCK_DEVICE:
122
+ ret.base = exports.BLOCK_DEVICE_BASE;
123
+ ret.inheriting = exports.BLOCK_DEVICE_INHERITING;
124
+ break;
125
+ default:
126
+ ret.base = BigInt(0);
127
+ ret.inheriting = BigInt(0);
128
+ }
129
+ /* Disable read/write bits depending on access mode. */
130
+ const read_or_write_only = flags & (0 | 1 | 2);
131
+ if (read_or_write_only === 0) {
132
+ ret.base &= ~types_1.WasiRights.FD_WRITE;
133
+ }
134
+ else if (read_or_write_only === 1) {
135
+ ret.base &= ~types_1.WasiRights.FD_READ;
136
+ }
137
+ return ret;
138
+ }
139
+ exports.getRights = getRights;
140
140
  //# sourceMappingURL=rights.js.map