goscript 0.2.2 → 0.2.4

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 (160) hide show
  1. package/compiler/gotest/testdata/browserapi/browserapi_test.go +36 -0
  2. package/compiler/lowering.go +279 -16
  3. package/compiler/override-registry_test.go +175 -0
  4. package/compiler/protobuf-ts-binding.go +154 -6
  5. package/compiler/protobuf-ts-binding_test.go +7 -2
  6. package/compiler/runtime-contract.go +2 -0
  7. package/compiler/runtime-contract_test.go +1 -0
  8. package/compiler/semantic-model.go +16 -0
  9. package/compiler/semantic-model_test.go +38 -0
  10. package/compiler/skeleton_test.go +522 -17
  11. package/compiler/typescript-emitter.go +4 -0
  12. package/dist/gs/builtin/builtin.js +7 -9
  13. package/dist/gs/builtin/builtin.js.map +1 -1
  14. package/dist/gs/builtin/defer.js +2 -2
  15. package/dist/gs/builtin/hostio.js +5 -5
  16. package/dist/gs/builtin/hostio.js.map +1 -1
  17. package/dist/gs/builtin/map.js +2 -1
  18. package/dist/gs/builtin/map.js.map +1 -1
  19. package/dist/gs/builtin/slice.d.ts +3 -0
  20. package/dist/gs/builtin/slice.js +39 -0
  21. package/dist/gs/builtin/slice.js.map +1 -1
  22. package/dist/gs/builtin/type.js +49 -0
  23. package/dist/gs/builtin/type.js.map +1 -1
  24. package/dist/gs/compress/gzip/index.d.ts +41 -0
  25. package/dist/gs/compress/gzip/index.js +235 -0
  26. package/dist/gs/compress/gzip/index.js.map +1 -0
  27. package/dist/gs/compress/zlib/index.js +5 -2
  28. package/dist/gs/compress/zlib/index.js.map +1 -1
  29. package/dist/gs/crypto/ecdh/index.js +27 -8
  30. package/dist/gs/crypto/ecdh/index.js.map +1 -1
  31. package/dist/gs/crypto/ed25519/index.js +3 -3
  32. package/dist/gs/crypto/ed25519/index.js.map +1 -1
  33. package/dist/gs/crypto/rand/index.js +6 -3
  34. package/dist/gs/crypto/rand/index.js.map +1 -1
  35. package/dist/gs/embed/index.js +9 -3
  36. package/dist/gs/embed/index.js.map +1 -1
  37. package/dist/gs/github.com/aperturerobotics/protobuf-go-lite/index.d.ts +1 -0
  38. package/dist/gs/github.com/aperturerobotics/protobuf-go-lite/index.js +33 -0
  39. package/dist/gs/github.com/aperturerobotics/protobuf-go-lite/index.js.map +1 -1
  40. package/dist/gs/github.com/mr-tron/base58/base58/index.js +4 -1
  41. package/dist/gs/github.com/mr-tron/base58/base58/index.js.map +1 -1
  42. package/dist/gs/golang.org/x/crypto/scrypt/index.d.ts +2 -0
  43. package/dist/gs/golang.org/x/crypto/scrypt/index.js +39 -0
  44. package/dist/gs/golang.org/x/crypto/scrypt/index.js.map +1 -0
  45. package/dist/gs/hash/fnv/index.js +13 -5
  46. package/dist/gs/hash/fnv/index.js.map +1 -1
  47. package/dist/gs/io/fs/glob.d.ts +3 -3
  48. package/dist/gs/io/fs/glob.js +9 -9
  49. package/dist/gs/io/fs/glob.js.map +1 -1
  50. package/dist/gs/io/fs/readdir.d.ts +2 -2
  51. package/dist/gs/io/fs/readdir.js +13 -74
  52. package/dist/gs/io/fs/readdir.js.map +1 -1
  53. package/dist/gs/io/fs/readlink.d.ts +1 -1
  54. package/dist/gs/io/fs/readlink.js +2 -2
  55. package/dist/gs/io/fs/readlink.js.map +1 -1
  56. package/dist/gs/io/fs/stat.d.ts +4 -2
  57. package/dist/gs/io/fs/stat.js +12 -73
  58. package/dist/gs/io/fs/stat.js.map +1 -1
  59. package/dist/gs/io/fs/sub.d.ts +2 -2
  60. package/dist/gs/io/fs/sub.js +11 -11
  61. package/dist/gs/io/fs/sub.js.map +1 -1
  62. package/dist/gs/io/fs/walk.js +2 -2
  63. package/dist/gs/io/fs/walk.js.map +1 -1
  64. package/dist/gs/maps/iter.js.map +1 -1
  65. package/dist/gs/maps/maps.js.map +1 -1
  66. package/dist/gs/mime/index.js +5 -2
  67. package/dist/gs/mime/index.js.map +1 -1
  68. package/dist/gs/net/http/httptest/index.js +6 -3
  69. package/dist/gs/net/http/httptest/index.js.map +1 -1
  70. package/dist/gs/net/http/index.d.ts +34 -18
  71. package/dist/gs/net/http/index.js +280 -63
  72. package/dist/gs/net/http/index.js.map +1 -1
  73. package/dist/gs/net/http/pprof/index.d.ts +5 -5
  74. package/dist/gs/net/http/pprof/index.js +21 -21
  75. package/dist/gs/net/http/pprof/index.js.map +1 -1
  76. package/dist/gs/reflect/iter.js +1 -1
  77. package/dist/gs/reflect/iter.js.map +1 -1
  78. package/dist/gs/reflect/type.d.ts +2 -0
  79. package/dist/gs/reflect/type.js +53 -21
  80. package/dist/gs/reflect/type.js.map +1 -1
  81. package/dist/gs/runtime/pprof/index.js.map +1 -1
  82. package/dist/gs/runtime/runtime.js +2 -2
  83. package/dist/gs/runtime/runtime.js.map +1 -1
  84. package/dist/gs/runtime/trace/index.js.map +1 -1
  85. package/dist/gs/slices/slices.d.ts +1 -1
  86. package/dist/gs/slices/slices.js +37 -4
  87. package/dist/gs/slices/slices.js.map +1 -1
  88. package/gs/builtin/builtin.ts +11 -14
  89. package/gs/builtin/defer.ts +2 -2
  90. package/gs/builtin/hostio.ts +5 -5
  91. package/gs/builtin/map.ts +4 -1
  92. package/gs/builtin/runtime-contract.test.ts +25 -0
  93. package/gs/builtin/slice.test.ts +14 -0
  94. package/gs/builtin/slice.ts +64 -0
  95. package/gs/builtin/type.ts +72 -0
  96. package/gs/bytes/bytes.test.ts +14 -13
  97. package/gs/compress/gzip/index.test.ts +86 -0
  98. package/gs/compress/gzip/index.ts +297 -0
  99. package/gs/compress/gzip/meta.json +6 -0
  100. package/gs/compress/gzip/parity.json +45 -0
  101. package/gs/compress/zlib/index.test.ts +19 -5
  102. package/gs/compress/zlib/index.ts +16 -7
  103. package/gs/context/context.test.ts +3 -1
  104. package/gs/crypto/ecdh/index.test.ts +6 -2
  105. package/gs/crypto/ecdh/index.ts +49 -12
  106. package/gs/crypto/ed25519/index.ts +20 -7
  107. package/gs/crypto/rand/index.ts +6 -3
  108. package/gs/embed/index.test.ts +4 -4
  109. package/gs/embed/index.ts +9 -3
  110. package/gs/fmt/fmt.test.ts +29 -4
  111. package/gs/github.com/aperturerobotics/protobuf-go-lite/index.test.ts +126 -0
  112. package/gs/github.com/aperturerobotics/protobuf-go-lite/index.ts +46 -0
  113. package/gs/github.com/mr-tron/base58/base58/index.ts +9 -3
  114. package/gs/github.com/zeebo/blake3/internal/consts/index.test.ts +2 -8
  115. package/gs/golang.org/x/crypto/scrypt/index.test.ts +81 -0
  116. package/gs/golang.org/x/crypto/scrypt/index.ts +54 -0
  117. package/gs/golang.org/x/crypto/scrypt/meta.json +5 -0
  118. package/gs/hash/fnv/index.test.ts +1 -8
  119. package/gs/hash/fnv/index.ts +27 -10
  120. package/gs/io/fs/glob.ts +14 -11
  121. package/gs/io/fs/meta.json +5 -0
  122. package/gs/io/fs/readdir.test.ts +63 -2
  123. package/gs/io/fs/readdir.ts +33 -30
  124. package/gs/io/fs/readlink.test.ts +2 -2
  125. package/gs/io/fs/readlink.ts +5 -2
  126. package/gs/io/fs/stat.test.ts +79 -0
  127. package/gs/io/fs/stat.ts +24 -10
  128. package/gs/io/fs/sub.test.ts +93 -0
  129. package/gs/io/fs/sub.ts +13 -13
  130. package/gs/io/fs/walk.ts +2 -2
  131. package/gs/maps/iter.ts +9 -9
  132. package/gs/maps/maps.ts +4 -4
  133. package/gs/math/bits/index.test.ts +10 -1
  134. package/gs/mime/index.test.ts +33 -15
  135. package/gs/mime/index.ts +9 -2
  136. package/gs/net/http/httptest/index.test.ts +17 -3
  137. package/gs/net/http/httptest/index.ts +8 -3
  138. package/gs/net/http/index.test.ts +851 -124
  139. package/gs/net/http/index.ts +612 -146
  140. package/gs/net/http/meta.json +3 -1
  141. package/gs/net/http/pprof/index.test.ts +4 -4
  142. package/gs/net/http/pprof/index.ts +43 -22
  143. package/gs/os/file_unix_js.test.ts +22 -0
  144. package/gs/reflect/iter.ts +4 -2
  145. package/gs/reflect/map.test.ts +56 -1
  146. package/gs/reflect/type.ts +76 -37
  147. package/gs/runtime/pprof/index.test.ts +7 -1
  148. package/gs/runtime/pprof/index.ts +5 -1
  149. package/gs/runtime/runtime.test.ts +7 -0
  150. package/gs/runtime/runtime.ts +2 -4
  151. package/gs/runtime/trace/index.test.ts +9 -1
  152. package/gs/runtime/trace/index.ts +5 -1
  153. package/gs/slices/meta.json +3 -0
  154. package/gs/slices/slices.test.ts +59 -21
  155. package/gs/slices/slices.ts +61 -20
  156. package/gs/strconv/complex.test.ts +17 -3
  157. package/gs/sync/atomic/doc_64.test.ts +2 -9
  158. package/gs/sync/sync.test.ts +18 -8
  159. package/gs/syscall/js/index.test.ts +9 -4
  160. package/package.json +5 -4
@@ -57,7 +57,10 @@ class FNV32 {
57
57
  return 1;
58
58
  }
59
59
  AppendBinary(prefix) {
60
- return [appendBytes($.bytesToUint8Array(prefix), this.magic, be32(this.hash)), null];
60
+ return [
61
+ appendBytes($.bytesToUint8Array(prefix), this.magic, be32(this.hash)),
62
+ null,
63
+ ];
61
64
  }
62
65
  MarshalBinary() {
63
66
  return this.AppendBinary(null);
@@ -119,7 +122,10 @@ class FNV64 {
119
122
  return 1;
120
123
  }
121
124
  AppendBinary(prefix) {
122
- return [appendBytes($.bytesToUint8Array(prefix), this.magic, be64(this.hash)), null];
125
+ return [
126
+ appendBytes($.bytesToUint8Array(prefix), this.magic, be64(this.hash)),
127
+ null,
128
+ ];
123
129
  }
124
130
  MarshalBinary() {
125
131
  return this.AppendBinary(null);
@@ -189,7 +195,8 @@ class FNV128 {
189
195
  if (err != null) {
190
196
  return err;
191
197
  }
192
- this.hash = ((readBE64(state, 4) << 64n) | readBE64(state, 12)) & uint128Mask;
198
+ this.hash =
199
+ ((readBE64(state, 4) << 64n) | readBE64(state, 12)) & uint128Mask;
193
200
  return null;
194
201
  }
195
202
  Clone() {
@@ -261,10 +268,11 @@ function be64(value) {
261
268
  ]);
262
269
  }
263
270
  function readBE32(bytes, offset) {
264
- return (((bytes[offset] << 24) >>> 0) |
271
+ return ((((bytes[offset] << 24) >>> 0) |
265
272
  (bytes[offset + 1] << 16) |
266
273
  (bytes[offset + 2] << 8) |
267
- bytes[offset + 3]) >>> 0;
274
+ bytes[offset + 3]) >>>
275
+ 0);
268
276
  }
269
277
  function readBE64(bytes, offset) {
270
278
  return ((BigInt(bytes[offset]) << 56n) |
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../gs/hash/fnv/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../gs/hash/fnv/index.ts"],"names":[],"mappings":"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"}
@@ -3,8 +3,8 @@ import { FS } from './fs.js';
3
3
  export type GlobFS = null | ({
4
4
  Glob(pattern: string): [$.Slice<string>, $.GoError];
5
5
  } & FS);
6
- export declare function Glob(fsys: FS, pattern: string): [$.Slice<string>, $.GoError];
7
- export declare function globWithLimit(fsys: FS, pattern: string, depth: number): [$.Slice<string>, $.GoError];
6
+ export declare function Glob(fsys: FS, pattern: string): Promise<[$.Slice<string>, $.GoError]>;
7
+ export declare function globWithLimit(fsys: FS, pattern: string, depth: number): Promise<[$.Slice<string>, $.GoError]>;
8
8
  export declare function cleanGlobPath(path: string): string;
9
- export declare function glob(fs: FS, dir: string, pattern: string, matches: $.Slice<string>): [$.Slice<string>, $.GoError];
9
+ export declare function glob(fs: FS, dir: string, pattern: string, matches: $.Slice<string>): Promise<[$.Slice<string>, $.GoError]>;
10
10
  export declare function hasMeta(path: string): boolean;
@@ -44,10 +44,10 @@ $.registerInterfaceType('GlobFS', null, // Zero value for interface is null
44
44
  // If fs implements [GlobFS], Glob calls fs.Glob.
45
45
  // Otherwise, Glob uses [ReadDir] to traverse the directory tree
46
46
  // and look for matches for the pattern.
47
- export function Glob(fsys, pattern) {
48
- return globWithLimit(fsys, pattern, 0);
47
+ export async function Glob(fsys, pattern) {
48
+ return await globWithLimit(fsys, pattern, 0);
49
49
  }
50
- export function globWithLimit(fsys, pattern, depth) {
50
+ export async function globWithLimit(fsys, pattern, depth) {
51
51
  let matches = null;
52
52
  {
53
53
  // This limit is added to prevent stack exhaustion issues. See
@@ -71,7 +71,7 @@ export function globWithLimit(fsys, pattern, depth) {
71
71
  }
72
72
  if (!hasMeta(pattern)) {
73
73
  {
74
- const [, statErr] = Stat(fsys, pattern);
74
+ const [, statErr] = await Stat(fsys, pattern);
75
75
  if (statErr != null) {
76
76
  return [null, null];
77
77
  }
@@ -81,20 +81,20 @@ export function globWithLimit(fsys, pattern, depth) {
81
81
  let [dir, file] = path.Split(pattern);
82
82
  dir = cleanGlobPath(dir);
83
83
  if (!hasMeta(dir)) {
84
- return glob(fsys, dir, file, null);
84
+ return await glob(fsys, dir, file, null);
85
85
  }
86
86
  // Prevent infinite recursion. See issue 15879.
87
87
  if (dir == pattern) {
88
88
  return [null, path.ErrBadPattern];
89
89
  }
90
- const [dirs, dirErr] = globWithLimit(fsys, dir, depth + 1);
90
+ const [dirs, dirErr] = await globWithLimit(fsys, dir, depth + 1);
91
91
  if (dirErr != null) {
92
92
  return [null, dirErr];
93
93
  }
94
94
  for (let _i = 0; _i < $.len(dirs); _i++) {
95
95
  const d = dirs[_i];
96
96
  {
97
- const [nextMatches, globErr] = glob(fsys, d, file, matches);
97
+ const [nextMatches, globErr] = await glob(fsys, d, file, matches);
98
98
  matches = nextMatches;
99
99
  if (globErr != null) {
100
100
  return [matches, globErr];
@@ -120,10 +120,10 @@ export function cleanGlobPath(path) {
120
120
  // and appends them to matches, returning the updated slice.
121
121
  // If the directory cannot be opened, glob returns the existing matches.
122
122
  // New matches are added in lexicographical order.
123
- export function glob(fs, dir, pattern, matches) {
123
+ export async function glob(fs, dir, pattern, matches) {
124
124
  let m = matches;
125
125
  {
126
- let [infos, err] = ReadDir(fs, dir);
126
+ let [infos, err] = await ReadDir(fs, dir);
127
127
  // ignore I/O error
128
128
  if (err != null) {
129
129
  return [m, null];
@@ -1 +1 @@
1
- {"version":3,"file":"glob.js","sourceRoot":"","sources":["../../../../gs/io/fs/glob.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"glob.js","sourceRoot":"","sources":["../../../../gs/io/fs/glob.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import * as $ from '@goscript/builtin/index.js';
2
2
  import { FS, DirEntry, FileInfo } from './fs.js';
3
3
  export type ReadDirFS = null | ({
4
- ReadDir(name: string): [$.Slice<DirEntry>, $.GoError];
4
+ ReadDir(name: string): [$.Slice<DirEntry>, $.GoError] | Promise<[$.Slice<DirEntry>, $.GoError]>;
5
5
  } & FS);
6
- export declare function ReadDir(fsys: FS, name: string): [$.Slice<DirEntry>, $.GoError];
6
+ export declare function ReadDir(fsys: FS, name: string): Promise<[$.Slice<DirEntry>, $.GoError]>;
7
7
  export declare function FileInfoToDirEntry(info: FileInfo): DirEntry;
@@ -1,55 +1,3 @@
1
- var __addDisposableResource = (this && this.__addDisposableResource) || function (env, value, async) {
2
- if (value !== null && value !== void 0) {
3
- if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");
4
- var dispose, inner;
5
- if (async) {
6
- if (!Symbol.asyncDispose) throw new TypeError("Symbol.asyncDispose is not defined.");
7
- dispose = value[Symbol.asyncDispose];
8
- }
9
- if (dispose === void 0) {
10
- if (!Symbol.dispose) throw new TypeError("Symbol.dispose is not defined.");
11
- dispose = value[Symbol.dispose];
12
- if (async) inner = dispose;
13
- }
14
- if (typeof dispose !== "function") throw new TypeError("Object not disposable.");
15
- if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };
16
- env.stack.push({ value: value, dispose: dispose, async: async });
17
- }
18
- else if (async) {
19
- env.stack.push({ async: true });
20
- }
21
- return value;
22
- };
23
- var __disposeResources = (this && this.__disposeResources) || (function (SuppressedError) {
24
- return function (env) {
25
- function fail(e) {
26
- env.error = env.hasError ? new SuppressedError(e, env.error, "An error was suppressed during disposal.") : e;
27
- env.hasError = true;
28
- }
29
- var r, s = 0;
30
- function next() {
31
- while (r = env.stack.pop()) {
32
- try {
33
- if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);
34
- if (r.dispose) {
35
- var result = r.dispose.call(r.value);
36
- if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });
37
- }
38
- else s |= 1;
39
- }
40
- catch (e) {
41
- fail(e);
42
- }
43
- }
44
- if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();
45
- if (env.hasError) throw env.error;
46
- }
47
- return next();
48
- };
49
- })(typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
50
- var e = new Error(message);
51
- return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
52
- });
53
1
  import * as $ from '@goscript/builtin/index.js';
54
2
  import { FormatDirEntry } from './format.js';
55
3
  import { PathError, fileModeType, } from './fs.js';
@@ -85,23 +33,18 @@ $.registerInterfaceType('ReadDirFS', null, // Zero value for interface is null
85
33
  // If fs implements [ReadDirFS], ReadDir calls fs.ReadDir.
86
34
  // Otherwise ReadDir calls fs.Open and uses ReadDir and Close
87
35
  // on the returned file.
88
- export function ReadDir(fsys, name) {
89
- const env_1 = { stack: [], error: void 0, hasError: false };
90
- try {
91
- const __defer = __addDisposableResource(env_1, new $.DisposableStack(), false);
92
- {
93
- let { value: fsysTyped, ok: ok } = $.typeAssert(fsys, 'ReadDirFS');
94
- if (ok) {
95
- return fsysTyped.ReadDir(name);
96
- }
97
- }
98
- let [file, err] = fsys.Open(name);
99
- if (err != null) {
100
- return [null, err];
36
+ export async function ReadDir(fsys, name) {
37
+ {
38
+ let { value: fsysTyped, ok: ok } = $.typeAssert(fsys, 'ReadDirFS');
39
+ if (ok) {
40
+ return await fsysTyped.ReadDir(name);
101
41
  }
102
- __defer.defer(() => {
103
- file.Close();
104
- });
42
+ }
43
+ let [file, err] = await fsys.Open(name);
44
+ if (err != null) {
45
+ return [null, err];
46
+ }
47
+ try {
105
48
  let { value: dir, ok: ok } = $.typeAssert(file, 'ReadDirFile');
106
49
  if (!ok) {
107
50
  return [
@@ -114,7 +57,7 @@ export function ReadDir(fsys, name) {
114
57
  ];
115
58
  }
116
59
  let list;
117
- [list, err] = dir.ReadDir(-1);
60
+ [list, err] = await dir.ReadDir(-1);
118
61
  if (list) {
119
62
  list.sort((a, b) => {
120
63
  return $.pointerValue(a)
@@ -124,12 +67,8 @@ export function ReadDir(fsys, name) {
124
67
  }
125
68
  return [list, err];
126
69
  }
127
- catch (e_1) {
128
- env_1.error = e_1;
129
- env_1.hasError = true;
130
- }
131
70
  finally {
132
- __disposeResources(env_1);
71
+ await file.Close();
133
72
  }
134
73
  }
135
74
  class dirInfo {
@@ -1 +1 @@
1
- {"version":3,"file":"readdir.js","sourceRoot":"","sources":["../../../../gs/io/fs/readdir.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"readdir.js","sourceRoot":"","sources":["../../../../gs/io/fs/readdir.ts"],"names":[],"mappings":"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"}
@@ -5,4 +5,4 @@ export type ReadLinkFS = null | ({
5
5
  Lstat(name: string): [FileInfo, $.GoError];
6
6
  } & FS);
7
7
  export declare function ReadLink(fsys: FS, name: string): [string, $.GoError];
8
- export declare function Lstat(fsys: FS, name: string): [FileInfo, $.GoError];
8
+ export declare function Lstat(fsys: FS, name: string): Promise<[FileInfo, $.GoError]>;
@@ -50,10 +50,10 @@ export function ReadLink(fsys, name) {
50
50
  }
51
51
  return sym.ReadLink(name);
52
52
  }
53
- export function Lstat(fsys, name) {
53
+ export async function Lstat(fsys, name) {
54
54
  const { value: sym, ok } = $.typeAssert(fsys, 'ReadLinkFS');
55
55
  if (!ok) {
56
- return Stat(fsys, name);
56
+ return await Stat(fsys, name);
57
57
  }
58
58
  return sym.Lstat(name);
59
59
  }
@@ -1 +1 @@
1
- {"version":3,"file":"readlink.js","sourceRoot":"","sources":["../../../../gs/io/fs/readlink.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,4BAA4B,CAAA;AAC/C,OAAO,EAAE,UAAU,EAAgB,SAAS,EAAE,MAAM,SAAS,CAAA;AAC7D,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAShC,CAAC,CAAC,qBAAqB,CAAC,YAAY,EAAE,IAAI,EAAE;IAC1C;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC;QAC1E,OAAO,EAAE;YACP,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YACpD;gBACE,IAAI,EAAE;oBACJ,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,SAAS;oBAC1B,IAAI,EAAE,SAAS;oBACf,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,OAAO;4BACb,IAAI,EAAE,EAAE;4BACR,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC;yBAChE;qBACF;iBACF;aACF;SACF;KACF;IACD;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC;QAC1E,OAAO,EAAE;YACP,EAAE,IAAI,EAAE,UAAU,EAAE;YACpB;gBACE,IAAI,EAAE;oBACJ,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,SAAS;oBAC1B,IAAI,EAAE,SAAS;oBACf,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,OAAO;4BACb,IAAI,EAAE,EAAE;4BACR,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC;yBAChE;qBACF;iBACF;aACF;SACF;KACF;CACF,CAAC,CAAA;AAEF,MAAM,UAAU,QAAQ,CAAC,IAAQ,EAAE,IAAY;IAC7C,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,UAAU,CAAa,IAAI,EAAE,YAAY,CAAC,CAAA;IACvE,IAAI,CAAC,EAAE,EAAE,CAAC;QACR,OAAO,CAAC,EAAE,EAAE,IAAI,SAAS,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;IAC7E,CAAC;IACD,OAAO,GAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;AAC5B,CAAC;AAED,MAAM,UAAU,KAAK,CAAC,IAAQ,EAAE,IAAY;IAC1C,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,UAAU,CAAa,IAAI,EAAE,YAAY,CAAC,CAAA;IACvE,IAAI,CAAC,EAAE,EAAE,CAAC;QACR,OAAO,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;IACzB,CAAC;IACD,OAAO,GAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;AACzB,CAAC"}
1
+ {"version":3,"file":"readlink.js","sourceRoot":"","sources":["../../../../gs/io/fs/readlink.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,4BAA4B,CAAA;AAC/C,OAAO,EAAE,UAAU,EAAgB,SAAS,EAAE,MAAM,SAAS,CAAA;AAC7D,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAShC,CAAC,CAAC,qBAAqB,CAAC,YAAY,EAAE,IAAI,EAAE;IAC1C;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC;QAC1E,OAAO,EAAE;YACP,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YACpD;gBACE,IAAI,EAAE;oBACJ,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,SAAS;oBAC1B,IAAI,EAAE,SAAS;oBACf,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,OAAO;4BACb,IAAI,EAAE,EAAE;4BACR,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC;yBAChE;qBACF;iBACF;aACF;SACF;KACF;IACD;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC;QAC1E,OAAO,EAAE;YACP,EAAE,IAAI,EAAE,UAAU,EAAE;YACpB;gBACE,IAAI,EAAE;oBACJ,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,SAAS;oBAC1B,IAAI,EAAE,SAAS;oBACf,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,OAAO;4BACb,IAAI,EAAE,EAAE;4BACR,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC;yBAChE;qBACF;iBACF;aACF;SACF;KACF;CACF,CAAC,CAAA;AAEF,MAAM,UAAU,QAAQ,CAAC,IAAQ,EAAE,IAAY;IAC7C,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,UAAU,CAAa,IAAI,EAAE,YAAY,CAAC,CAAA;IACvE,IAAI,CAAC,EAAE,EAAE,CAAC;QACR,OAAO,CAAC,EAAE,EAAE,IAAI,SAAS,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;IAC7E,CAAC;IACD,OAAO,GAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;AAC5B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,KAAK,CACzB,IAAQ,EACR,IAAY;IAEZ,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,UAAU,CAAa,IAAI,EAAE,YAAY,CAAC,CAAA;IACvE,IAAI,CAAC,EAAE,EAAE,CAAC;QACR,OAAO,MAAM,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;IAC/B,CAAC;IACD,OAAO,GAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;AACzB,CAAC"}
@@ -1,6 +1,8 @@
1
1
  import * as $ from '@goscript/builtin/index.js';
2
2
  import { FS, FileInfo } from './fs.js';
3
+ type maybePromise<T> = T | Promise<T>;
3
4
  export type StatFS = null | ({
4
- Stat(name: string): [FileInfo, $.GoError];
5
+ Stat(name: string): maybePromise<[FileInfo, $.GoError]>;
5
6
  } & FS);
6
- export declare function Stat(fsys: FS, name: string): [FileInfo, $.GoError];
7
+ export declare function Stat(fsys: FS, name: string): Promise<[FileInfo, $.GoError]>;
8
+ export {};
@@ -1,55 +1,3 @@
1
- var __addDisposableResource = (this && this.__addDisposableResource) || function (env, value, async) {
2
- if (value !== null && value !== void 0) {
3
- if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");
4
- var dispose, inner;
5
- if (async) {
6
- if (!Symbol.asyncDispose) throw new TypeError("Symbol.asyncDispose is not defined.");
7
- dispose = value[Symbol.asyncDispose];
8
- }
9
- if (dispose === void 0) {
10
- if (!Symbol.dispose) throw new TypeError("Symbol.dispose is not defined.");
11
- dispose = value[Symbol.dispose];
12
- if (async) inner = dispose;
13
- }
14
- if (typeof dispose !== "function") throw new TypeError("Object not disposable.");
15
- if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };
16
- env.stack.push({ value: value, dispose: dispose, async: async });
17
- }
18
- else if (async) {
19
- env.stack.push({ async: true });
20
- }
21
- return value;
22
- };
23
- var __disposeResources = (this && this.__disposeResources) || (function (SuppressedError) {
24
- return function (env) {
25
- function fail(e) {
26
- env.error = env.hasError ? new SuppressedError(e, env.error, "An error was suppressed during disposal.") : e;
27
- env.hasError = true;
28
- }
29
- var r, s = 0;
30
- function next() {
31
- while (r = env.stack.pop()) {
32
- try {
33
- if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);
34
- if (r.dispose) {
35
- var result = r.dispose.call(r.value);
36
- if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });
37
- }
38
- else s |= 1;
39
- }
40
- catch (e) {
41
- fail(e);
42
- }
43
- }
44
- if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();
45
- if (env.hasError) throw env.error;
46
- }
47
- return next();
48
- };
49
- })(typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
50
- var e = new Error(message);
51
- return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
52
- });
53
1
  import * as $ from '@goscript/builtin/index.js';
54
2
  $.registerInterfaceType('StatFS', null, // Zero value for interface is null
55
3
  [
@@ -80,31 +28,22 @@ $.registerInterfaceType('StatFS', null, // Zero value for interface is null
80
28
  //
81
29
  // If fs implements [StatFS], Stat calls fs.Stat.
82
30
  // Otherwise, Stat opens the [File] to stat it.
83
- export function Stat(fsys, name) {
84
- const env_1 = { stack: [], error: void 0, hasError: false };
85
- try {
86
- const __defer = __addDisposableResource(env_1, new $.DisposableStack(), false);
87
- {
88
- let { value: fsysTyped, ok: ok } = $.typeAssert(fsys, 'StatFS');
89
- if (ok) {
90
- return fsysTyped.Stat(name);
91
- }
92
- }
93
- let [file, err] = fsys.Open(name);
94
- if (err != null) {
95
- return [null, err];
31
+ export async function Stat(fsys, name) {
32
+ {
33
+ let { value: fsysTyped, ok: ok } = $.typeAssert(fsys, 'StatFS');
34
+ if (ok) {
35
+ return await fsysTyped.Stat(name);
96
36
  }
97
- __defer.defer(() => {
98
- file.Close();
99
- });
100
- return file.Stat();
101
37
  }
102
- catch (e_1) {
103
- env_1.error = e_1;
104
- env_1.hasError = true;
38
+ let [file, err] = await fsys.Open(name);
39
+ if (err != null) {
40
+ return [null, err];
41
+ }
42
+ try {
43
+ return await file.Stat();
105
44
  }
106
45
  finally {
107
- __disposeResources(env_1);
46
+ await file.Close();
108
47
  }
109
48
  }
110
49
  //# sourceMappingURL=stat.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"stat.js","sourceRoot":"","sources":["../../../../gs/io/fs/stat.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,KAAK,CAAC,MAAM,4BAA4B,CAAA;AAW/C,CAAC,CAAC,qBAAqB,CACrB,QAAQ,EACR,IAAI,EAAE,mCAAmC;AACzC;IACE;QACE,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE;YACJ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;SACnE;QACD,OAAO,EAAE;YACP,EAAE,IAAI,EAAE,UAAU,EAAE;YACpB;gBACE,IAAI,EAAE;oBACJ,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,SAAS;oBAC1B,IAAI,EAAE,SAAS;oBACf,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,OAAO;4BACb,IAAI,EAAE,EAAE;4BACR,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC;yBAChE;qBACF;iBACF;aACF;SACF;KACF;CACF,CACF,CAAA;AAED,4EAA4E;AAC5E,EAAE;AACF,iDAAiD;AACjD,+CAA+C;AAC/C,MAAM,UAAU,IAAI,CAAC,IAAQ,EAAE,IAAY;;;QACzC,MAAM,OAAO,kCAAG,IAAI,CAAC,CAAC,eAAe,EAAE,QAAA,CAAA;QACvC,CAAC;YACC,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,UAAU,CAAS,IAAI,EAAE,QAAQ,CAAC,CAAA;YACvE,IAAI,EAAE,EAAE,CAAC;gBACP,OAAO,SAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC9B,CAAC;QACH,CAAC;QAED,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,IAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAClC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;YAChB,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;QACpB,CAAC;QACD,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE;YACjB,IAAK,CAAC,KAAK,EAAE,CAAA;QACf,CAAC,CAAC,CAAA;QACF,OAAO,IAAK,CAAC,IAAI,EAAE,CAAA;;;;;;;;;AACrB,CAAC"}
1
+ {"version":3,"file":"stat.js","sourceRoot":"","sources":["../../../../gs/io/fs/stat.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,4BAA4B,CAAA;AAsB/C,CAAC,CAAC,qBAAqB,CACrB,QAAQ,EACR,IAAI,EAAE,mCAAmC;AACzC;IACE;QACE,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE;YACJ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;SACnE;QACD,OAAO,EAAE;YACP,EAAE,IAAI,EAAE,UAAU,EAAE;YACpB;gBACE,IAAI,EAAE;oBACJ,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,SAAS;oBAC1B,IAAI,EAAE,SAAS;oBACf,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,OAAO;4BACb,IAAI,EAAE,EAAE;4BACR,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC;yBAChE;qBACF;iBACF;aACF;SACF;KACF;CACF,CACF,CAAA;AAED,4EAA4E;AAC5E,EAAE;AACF,iDAAiD;AACjD,+CAA+C;AAC/C,MAAM,CAAC,KAAK,UAAU,IAAI,CACxB,IAAQ,EACR,IAAY;IAEZ,CAAC;QACC,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,UAAU,CAAS,IAAI,EAAE,QAAQ,CAAC,CAAA;QACvE,IAAI,EAAE,EAAE,CAAC;YACP,OAAO,MAAM,SAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACpC,CAAC;IACH,CAAC;IAED,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,MAAO,IAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACrD,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAChB,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;IACpB,CAAC;IACD,IAAI,CAAC;QACH,OAAO,MAAO,IAAmB,CAAC,IAAI,EAAE,CAAA;IAC1C,CAAC;YAAS,CAAC;QACT,MAAO,IAAmB,CAAC,KAAK,EAAE,CAAA;IACpC,CAAC;AACH,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import * as $ from '@goscript/builtin/index.js';
2
2
  import { FS } from './fs.js';
3
3
  export type SubFS = null | ({
4
- Sub(dir: string): [FS, $.GoError];
4
+ Sub(dir: string): [FS, $.GoError] | Promise<[FS, $.GoError]>;
5
5
  } & FS);
6
- export declare function Sub(fsys: FS, dir: string): [FS, $.GoError];
6
+ export declare function Sub(fsys: FS, dir: string): Promise<[FS, $.GoError]>;
@@ -42,7 +42,7 @@ $.registerInterfaceType('SubFS', null, // Zero value for interface is null
42
42
  // does not check for symbolic links inside "/prefix" that point to
43
43
  // other directories. That is, [os.DirFS] is not a general substitute for a
44
44
  // chroot-style security mechanism, and Sub does not change that fact.
45
- export function Sub(fsys, dir) {
45
+ export async function Sub(fsys, dir) {
46
46
  if (!ValidPath(dir)) {
47
47
  return [null, new PathError({ Err: ErrInvalid, Op: 'sub', Path: dir })];
48
48
  }
@@ -52,10 +52,10 @@ export function Sub(fsys, dir) {
52
52
  {
53
53
  let { value: fsysTyped, ok: ok } = $.typeAssert(fsys, 'SubFS');
54
54
  if (ok) {
55
- return fsysTyped.Sub(dir);
55
+ return await fsysTyped.Sub(dir);
56
56
  }
57
57
  }
58
- return [new subFS({}), null];
58
+ return [new subFS({ fsys, dir }), null];
59
59
  }
60
60
  class subFS {
61
61
  get fsys() {
@@ -125,24 +125,24 @@ class subFS {
125
125
  }
126
126
  return err;
127
127
  }
128
- Open(name) {
128
+ async Open(name) {
129
129
  const f = this;
130
130
  let [full, err] = f.fullName('open', name);
131
131
  if (err != null) {
132
132
  return [null, err];
133
133
  }
134
134
  let file;
135
- [file, err] = f.fsys.Open(full);
135
+ [file, err] = await f.fsys.Open(full);
136
136
  return [file, f.fixErr(err)];
137
137
  }
138
- ReadDir(name) {
138
+ async ReadDir(name) {
139
139
  const f = this;
140
140
  let [full, err] = f.fullName('read', name);
141
141
  if (err != null) {
142
142
  return [null, err];
143
143
  }
144
144
  let dir;
145
- [dir, err] = ReadDir(f.fsys, full);
145
+ [dir, err] = await ReadDir(f.fsys, full);
146
146
  return [dir, f.fixErr(err)];
147
147
  }
148
148
  ReadFile(name) {
@@ -155,7 +155,7 @@ class subFS {
155
155
  [data, err] = ReadFile(f.fsys, full);
156
156
  return [data, f.fixErr(err)];
157
157
  }
158
- Glob(pattern) {
158
+ async Glob(pattern) {
159
159
  const f = this;
160
160
  {
161
161
  let [, err] = path.Match(pattern, '');
@@ -167,7 +167,7 @@ class subFS {
167
167
  return [$.arrayToSlice(['.']), null];
168
168
  }
169
169
  let full = f.dir + '/' + pattern;
170
- let [list, err] = Glob(f.fsys, full);
170
+ let [list, err] = await Glob(f.fsys, full);
171
171
  for (let i = 0; i < $.len(list); i++) {
172
172
  const name = list[i];
173
173
  {
@@ -192,11 +192,11 @@ class subFS {
192
192
  if (dir == '.') {
193
193
  return [f, null];
194
194
  }
195
- let [_full, err] = f.fullName('sub', dir);
195
+ let [full, err] = f.fullName('sub', dir);
196
196
  if (err != null) {
197
197
  return [null, err];
198
198
  }
199
- return [new subFS({}), null];
199
+ return [new subFS({ fsys: f.fsys, dir: full }), null];
200
200
  }
201
201
  // Register this type with the runtime type system
202
202
  static __typeInfo = $.registerStructType('subFS', new subFS(), [