goscript 0.1.3 → 0.1.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 (117) hide show
  1. package/cmd/goscript/cmd_compile.go +28 -8
  2. package/cmd/goscript/cmd_compile_test.go +105 -6
  3. package/compiler/build-flags.go +9 -10
  4. package/compiler/gotest/runner_test.go +127 -0
  5. package/compiler/lowering.go +596 -136
  6. package/compiler/lowering_bench_test.go +350 -0
  7. package/compiler/package-graph.go +61 -4
  8. package/compiler/package-graph_test.go +30 -0
  9. package/compiler/semantic-model-types.go +8 -0
  10. package/compiler/semantic-model.go +447 -22
  11. package/compiler/semantic-model_test.go +138 -0
  12. package/compiler/skeleton_test.go +948 -14
  13. package/compiler/typescript-emitter.go +19 -2
  14. package/dist/gs/builtin/builtin.d.ts +2 -2
  15. package/dist/gs/builtin/builtin.js +20 -0
  16. package/dist/gs/builtin/builtin.js.map +1 -1
  17. package/dist/gs/builtin/slice.js +5 -0
  18. package/dist/gs/builtin/slice.js.map +1 -1
  19. package/dist/gs/builtin/type.d.ts +1 -1
  20. package/dist/gs/builtin/type.js +72 -5
  21. package/dist/gs/builtin/type.js.map +1 -1
  22. package/dist/gs/compress/zlib/index.d.ts +3 -3
  23. package/dist/gs/compress/zlib/index.js +88 -26
  24. package/dist/gs/compress/zlib/index.js.map +1 -1
  25. package/dist/gs/crypto/sha1/index.js +2 -5
  26. package/dist/gs/crypto/sha1/index.js.map +1 -1
  27. package/dist/gs/crypto/sha256/index.js +2 -5
  28. package/dist/gs/crypto/sha256/index.js.map +1 -1
  29. package/dist/gs/crypto/sha512/index.js +2 -5
  30. package/dist/gs/crypto/sha512/index.js.map +1 -1
  31. package/dist/gs/embed/index.d.ts +6 -0
  32. package/dist/gs/embed/index.js +210 -5
  33. package/dist/gs/embed/index.js.map +1 -1
  34. package/dist/gs/fmt/fmt.d.ts +3 -3
  35. package/dist/gs/fmt/fmt.js +29 -16
  36. package/dist/gs/fmt/fmt.js.map +1 -1
  37. package/dist/gs/github.com/aperturerobotics/starpc/srpc/index.js +118 -6
  38. package/dist/gs/github.com/aperturerobotics/starpc/srpc/index.js.map +1 -1
  39. package/dist/gs/github.com/go-git/go-billy/v6/osfs/index.d.ts +45 -0
  40. package/dist/gs/github.com/go-git/go-billy/v6/osfs/index.js +229 -0
  41. package/dist/gs/github.com/go-git/go-billy/v6/osfs/index.js.map +1 -0
  42. package/dist/gs/io/fs/readdir.js +5 -3
  43. package/dist/gs/io/fs/readdir.js.map +1 -1
  44. package/dist/gs/io/io.d.ts +10 -6
  45. package/dist/gs/io/io.js +87 -42
  46. package/dist/gs/io/io.js.map +1 -1
  47. package/dist/gs/math/bits/index.d.ts +26 -5
  48. package/dist/gs/math/bits/index.js +13 -24
  49. package/dist/gs/math/bits/index.js.map +1 -1
  50. package/dist/gs/net/http/index.d.ts +3 -1
  51. package/dist/gs/net/http/index.js +18 -1
  52. package/dist/gs/net/http/index.js.map +1 -1
  53. package/dist/gs/os/types_js.gs.d.ts +6 -2
  54. package/dist/gs/os/types_js.gs.js +169 -8
  55. package/dist/gs/os/types_js.gs.js.map +1 -1
  56. package/dist/gs/reflect/type.d.ts +1 -0
  57. package/dist/gs/reflect/type.js +80 -51
  58. package/dist/gs/reflect/type.js.map +1 -1
  59. package/dist/gs/strings/reader.d.ts +1 -1
  60. package/dist/gs/strings/reader.js +2 -2
  61. package/dist/gs/strings/reader.js.map +1 -1
  62. package/dist/gs/sync/sync.d.ts +2 -1
  63. package/dist/gs/sync/sync.js +37 -16
  64. package/dist/gs/sync/sync.js.map +1 -1
  65. package/dist/gs/syscall/js/index.js +9 -0
  66. package/dist/gs/syscall/js/index.js.map +1 -1
  67. package/dist/gs/testing/testing.js +8 -6
  68. package/dist/gs/testing/testing.js.map +1 -1
  69. package/gs/builtin/builtin.ts +25 -2
  70. package/gs/builtin/runtime-contract.test.ts +45 -0
  71. package/gs/builtin/slice.ts +7 -0
  72. package/gs/builtin/type.ts +85 -5
  73. package/gs/compress/zlib/index.test.ts +97 -0
  74. package/gs/compress/zlib/index.ts +117 -27
  75. package/gs/compress/zlib/meta.json +4 -1
  76. package/gs/crypto/sha1/index.test.ts +19 -2
  77. package/gs/crypto/sha1/index.ts +3 -6
  78. package/gs/crypto/sha256/index.test.ts +14 -2
  79. package/gs/crypto/sha256/index.ts +3 -6
  80. package/gs/crypto/sha512/index.test.ts +17 -2
  81. package/gs/crypto/sha512/index.ts +3 -6
  82. package/gs/embed/index.test.ts +87 -0
  83. package/gs/embed/index.ts +229 -5
  84. package/gs/fmt/fmt.test.ts +41 -3
  85. package/gs/fmt/fmt.ts +40 -17
  86. package/gs/fmt/meta.json +6 -1
  87. package/gs/github.com/aperturerobotics/starpc/srpc/index.test.ts +8 -1
  88. package/gs/github.com/aperturerobotics/starpc/srpc/index.ts +139 -11
  89. package/gs/github.com/go-git/go-billy/v6/osfs/index.test.ts +110 -0
  90. package/gs/github.com/go-git/go-billy/v6/osfs/index.ts +280 -0
  91. package/gs/github.com/go-git/go-billy/v6/osfs/meta.json +8 -0
  92. package/gs/io/fs/readdir.test.ts +38 -0
  93. package/gs/io/fs/readdir.ts +7 -3
  94. package/gs/io/io.test.ts +77 -6
  95. package/gs/io/io.ts +114 -52
  96. package/gs/io/meta.json +7 -1
  97. package/gs/math/bits/index.ts +52 -28
  98. package/gs/net/http/index.test.ts +16 -0
  99. package/gs/net/http/index.ts +19 -2
  100. package/gs/os/file_unix_js.test.ts +52 -0
  101. package/gs/os/meta.json +4 -0
  102. package/gs/os/readdir.test.ts +56 -0
  103. package/gs/os/types_js.gs.ts +169 -8
  104. package/gs/reflect/deepequal.test.ts +10 -1
  105. package/gs/reflect/type.ts +91 -56
  106. package/gs/reflect/typefor.test.ts +31 -1
  107. package/gs/strings/meta.json +5 -2
  108. package/gs/strings/reader.test.ts +2 -2
  109. package/gs/strings/reader.ts +2 -2
  110. package/gs/sync/meta.json +1 -0
  111. package/gs/sync/sync.test.ts +41 -1
  112. package/gs/sync/sync.ts +41 -16
  113. package/gs/syscall/js/index.test.ts +18 -0
  114. package/gs/syscall/js/index.ts +12 -0
  115. package/gs/testing/testing.test.ts +32 -3
  116. package/gs/testing/testing.ts +13 -10
  117. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../gs/net/http/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../gs/net/http/index.ts"],"names":[],"mappings":"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"}
@@ -35,6 +35,10 @@ export declare class File {
35
35
  name: string;
36
36
  closed: boolean;
37
37
  fd: number;
38
+ dirEntryOffset: number;
39
+ dirInfoOffset: number;
40
+ cachedDirEntries: fs.DirEntry[] | null;
41
+ cachedDirInfos: fs.FileInfo[] | null;
38
42
  _fields: {
39
43
  file: $.VarRef<file | null>;
40
44
  };
@@ -52,10 +56,10 @@ export declare class File {
52
56
  Name(): string;
53
57
  Read(b: $.Bytes): [number, $.GoError];
54
58
  ReadAt(b: $.Bytes, off: number): [number, $.GoError];
55
- ReadFrom(r: io.Reader): [number, $.GoError];
59
+ ReadFrom(r: io.Reader): Promise<[number, $.GoError]>;
56
60
  Write(b: $.Bytes): [number, $.GoError];
57
61
  WriteAt(b: $.Bytes, off: number): [number, $.GoError];
58
- WriteTo(w: io.Writer): [number, $.GoError];
62
+ WriteTo(w: io.Writer): Promise<[number, $.GoError]>;
59
63
  Seek(offset: number, whence: number): [number, $.GoError];
60
64
  WriteString(s: string): [number, $.GoError];
61
65
  Chmod(mode: number): $.GoError;
@@ -1,6 +1,7 @@
1
1
  import * as $ from "@goscript/builtin/index.js";
2
2
  import { ErrClosed, ErrInvalid, ErrUnimplemented } from "./error.gs.js";
3
3
  import * as fs from "@goscript/io/fs/index.js";
4
+ import { FileInfoToDirEntry } from "@goscript/io/fs/readdir.js";
4
5
  import * as io from "@goscript/io/index.js";
5
6
  import * as time from "@goscript/time/index.js";
6
7
  import { getHostRuntime, HostUnsupportedError, resetHostRuntimeForTests, } from "@goscript/builtin/hostio.js";
@@ -180,6 +181,70 @@ export function createFileInfo(name, stat) {
180
181
  sys: stat,
181
182
  });
182
183
  }
184
+ function joinFilePath(dir, name) {
185
+ if (dir === "" || dir === ".") {
186
+ return name;
187
+ }
188
+ return dir.replace(/\/+$/, "") + "/" + name;
189
+ }
190
+ function readDirectoryInfos(name) {
191
+ const denoObj = getDeno();
192
+ if (denoObj?.readDirSync) {
193
+ try {
194
+ const infos = [];
195
+ for (const entry of denoObj.readDirSync(name)) {
196
+ infos.push(createFileInfo(entry.name, {
197
+ isDirectory: () => entry.isDirectory,
198
+ isSymbolicLink: () => entry.isSymlink,
199
+ mode: 0,
200
+ size: 0,
201
+ }));
202
+ }
203
+ return [infos, null];
204
+ }
205
+ catch (err) {
206
+ return [null, newHostError(err)];
207
+ }
208
+ }
209
+ const nodeFS = getNodeFS();
210
+ if (nodeFS?.readdirSync) {
211
+ try {
212
+ const infos = nodeFS.readdirSync(name, { withFileTypes: true }).map((entry) => {
213
+ const childName = String(entry.name);
214
+ const childPath = joinFilePath(name, childName);
215
+ if (nodeFS.lstatSync) {
216
+ try {
217
+ return createFileInfo(childName, nodeFS.lstatSync(childPath));
218
+ }
219
+ catch {
220
+ // Fall back to Dirent metadata when the child cannot be statted.
221
+ }
222
+ }
223
+ return createFileInfo(childName, {
224
+ isDirectory: () => typeof entry.isDirectory === "function" ? entry.isDirectory() : false,
225
+ isSymbolicLink: () => typeof entry.isSymbolicLink === "function" ? entry.isSymbolicLink() : false,
226
+ mode: 0,
227
+ size: 0,
228
+ });
229
+ });
230
+ return [infos, null];
231
+ }
232
+ catch (err) {
233
+ return [null, newHostError(err)];
234
+ }
235
+ }
236
+ return [null, ErrUnimplemented];
237
+ }
238
+ function consumeDirectoryEntries(entries, offset, n) {
239
+ if (n <= 0) {
240
+ return [$.arrayToSlice(entries.slice(offset)), entries.length, null];
241
+ }
242
+ if (offset >= entries.length) {
243
+ return [null, offset, io.EOF];
244
+ }
245
+ const next = Math.min(entries.length, offset + n);
246
+ return [$.arrayToSlice(entries.slice(offset, next)), next, null];
247
+ }
183
248
  export function createHostFile(name, fd = -1, handle = null) {
184
249
  return new File({
185
250
  fd,
@@ -210,11 +275,19 @@ export class File {
210
275
  name;
211
276
  closed;
212
277
  fd;
278
+ dirEntryOffset;
279
+ dirInfoOffset;
280
+ cachedDirEntries;
281
+ cachedDirInfos;
213
282
  _fields;
214
283
  constructor(init) {
215
284
  this.name = init?.name ?? "";
216
285
  this.closed = init?.closed ?? false;
217
286
  this.fd = init?.fd ?? -1;
287
+ this.dirEntryOffset = 0;
288
+ this.dirInfoOffset = 0;
289
+ this.cachedDirEntries = null;
290
+ this.cachedDirInfos = null;
218
291
  this._fields = {
219
292
  file: $.varRef(init?.file ?? null)
220
293
  };
@@ -228,16 +301,55 @@ export class File {
228
301
  });
229
302
  }
230
303
  Readdir(n) {
231
- return [null, ErrUnimplemented];
304
+ if (this.closed) {
305
+ return [null, ErrClosed];
306
+ }
307
+ if (this.cachedDirInfos === null) {
308
+ const [infos, err] = readDirectoryInfos(this.name);
309
+ if (err !== null) {
310
+ return [null, err];
311
+ }
312
+ this.cachedDirInfos = infos ?? [];
313
+ this.dirInfoOffset = 0;
314
+ }
315
+ const [out, next, err] = consumeDirectoryEntries(this.cachedDirInfos, this.dirInfoOffset, n);
316
+ this.dirInfoOffset = next;
317
+ return [out, err];
232
318
  }
233
319
  Readdirnames(n) {
234
- return [null, ErrUnimplemented];
320
+ const [infos, err] = this.Readdir(n);
321
+ if (err !== null) {
322
+ return [null, err];
323
+ }
324
+ return [$.arrayToSlice((infos ?? []).map((info) => info.Name())), null];
235
325
  }
236
326
  ReadDir(n) {
237
- return [null, ErrUnimplemented];
327
+ if (this.closed) {
328
+ return [null, ErrClosed];
329
+ }
330
+ if (this.cachedDirEntries === null) {
331
+ const [infos, err] = readDirectoryInfos(this.name);
332
+ if (err !== null) {
333
+ return [null, err];
334
+ }
335
+ this.cachedDirEntries = (infos ?? []).map((info) => FileInfoToDirEntry(info)).filter((entry) => entry !== null);
336
+ this.dirEntryOffset = 0;
337
+ }
338
+ const [out, next, err] = consumeDirectoryEntries(this.cachedDirEntries, this.dirEntryOffset, n);
339
+ this.dirEntryOffset = next;
340
+ return [out, err];
238
341
  }
239
342
  readdir(n, mode) {
240
- return [null, null, null, ErrUnimplemented];
343
+ if (mode === readdirName) {
344
+ const [names, err] = this.Readdirnames(n);
345
+ return [names, null, null, err];
346
+ }
347
+ if (mode === readdirDirEntry) {
348
+ const [entries, err] = this.ReadDir(n);
349
+ return [null, entries, null, err];
350
+ }
351
+ const [infos, err] = this.Readdir(n);
352
+ return [null, null, infos, err];
241
353
  }
242
354
  Name() {
243
355
  return this.name;
@@ -304,11 +416,34 @@ export class File {
304
416
  }
305
417
  return [0, ErrUnimplemented];
306
418
  }
307
- ReadFrom(r) {
419
+ async ReadFrom(r) {
308
420
  if (this.closed) {
309
421
  return [0, ErrClosed];
310
422
  }
311
- return io.Copy(this, r);
423
+ const buf = $.makeSlice(32 * 1024, undefined, "byte");
424
+ let written = 0;
425
+ while (true) {
426
+ const [nr, er] = await r.Read(buf);
427
+ if (nr > 0) {
428
+ const [nw, ew] = this.Write($.goSlice(buf, 0, nr));
429
+ if (nw < 0 || nr < nw) {
430
+ return [written, ew ?? io.ErrShortWrite];
431
+ }
432
+ written += nw;
433
+ if (ew !== null) {
434
+ return [written, ew];
435
+ }
436
+ if (nr !== nw) {
437
+ return [written, io.ErrShortWrite];
438
+ }
439
+ }
440
+ if (er !== null) {
441
+ if (er === io.EOF) {
442
+ return [written, null];
443
+ }
444
+ return [written, er];
445
+ }
446
+ }
312
447
  }
313
448
  Write(b) {
314
449
  if (this.closed) {
@@ -361,11 +496,34 @@ export class File {
361
496
  }
362
497
  return [0, ErrUnimplemented];
363
498
  }
364
- WriteTo(w) {
499
+ async WriteTo(w) {
365
500
  if (this.closed) {
366
501
  return [0, ErrClosed];
367
502
  }
368
- return io.Copy(w, this);
503
+ const buf = $.makeSlice(32 * 1024, undefined, "byte");
504
+ let written = 0;
505
+ while (true) {
506
+ const [nr, er] = this.Read(buf);
507
+ if (nr > 0) {
508
+ const [nw, ew] = await w.Write($.goSlice(buf, 0, nr));
509
+ if (nw < 0 || nr < nw) {
510
+ return [written, ew ?? io.ErrShortWrite];
511
+ }
512
+ written += nw;
513
+ if (ew !== null) {
514
+ return [written, ew];
515
+ }
516
+ if (nr !== nw) {
517
+ return [written, io.ErrShortWrite];
518
+ }
519
+ }
520
+ if (er !== null) {
521
+ if (er === io.EOF) {
522
+ return [written, null];
523
+ }
524
+ return [written, er];
525
+ }
526
+ }
369
527
  }
370
528
  Seek(offset, whence) {
371
529
  const handle = this.file?.handle;
@@ -606,6 +764,9 @@ class file {
606
764
  this.path = init?.path ?? "";
607
765
  }
608
766
  }
767
+ const readdirName = 0;
768
+ const readdirDirEntry = 1;
769
+ const readdirFileInfo = 2;
609
770
  // File mode constants
610
771
  export let ModeDir = fs.ModeDir;
611
772
  export let ModeAppend = fs.ModeAppend;
@@ -1 +1 @@
1
- {"version":3,"file":"types_js.gs.js","sourceRoot":"","sources":["../../../gs/os/types_js.gs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types_js.gs.js","sourceRoot":"","sources":["../../../gs/os/types_js.gs.ts"],"names":[],"mappings":"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"}
@@ -96,6 +96,7 @@ export declare class Value {
96
96
  Uint(): number;
97
97
  Float(): number;
98
98
  Bool(): boolean;
99
+ private numericValue;
99
100
  String(): string;
100
101
  Len(): number;
101
102
  Kind(): Kind;
@@ -276,24 +276,27 @@ export class Value {
276
276
  }
277
277
  // Methods required by godoc.txt and used throughout the codebase
278
278
  Int() {
279
- if (typeof this._value === 'number' && Number.isInteger(this._value)) {
280
- return this._value;
279
+ const value = this.numericValue();
280
+ if (value !== null && Number.isInteger(value)) {
281
+ return value;
281
282
  }
282
283
  throw new Error('reflect: call of reflect.Value.Int on ' +
283
284
  Kind_String(this._type.Kind()) +
284
285
  ' Value');
285
286
  }
286
287
  Uint() {
287
- if (typeof this._value === 'number' && this._value >= 0) {
288
- return this._value;
288
+ const value = this.numericValue();
289
+ if (value !== null && value >= 0) {
290
+ return value;
289
291
  }
290
292
  throw new Error('reflect: call of reflect.Value.Uint on ' +
291
293
  Kind_String(this._type.Kind()) +
292
294
  ' Value');
293
295
  }
294
296
  Float() {
295
- if (typeof this._value === 'number') {
296
- return this._value;
297
+ const value = this.numericValue();
298
+ if (value !== null) {
299
+ return value;
297
300
  }
298
301
  throw new Error('reflect: call of reflect.Value.Float on ' +
299
302
  Kind_String(this._type.Kind()) +
@@ -307,6 +310,20 @@ export class Value {
307
310
  Kind_String(this._type.Kind()) +
308
311
  ' Value');
309
312
  }
313
+ numericValue() {
314
+ if (typeof this._value === 'number') {
315
+ return this._value;
316
+ }
317
+ if (this._value !== null &&
318
+ typeof this._value === 'object' &&
319
+ typeof this._value.valueOf === 'function') {
320
+ const value = this._value.valueOf();
321
+ if (typeof value === 'number') {
322
+ return value;
323
+ }
324
+ }
325
+ return null;
326
+ }
310
327
  String() {
311
328
  if (typeof this._value === 'string') {
312
329
  return this._value;
@@ -409,6 +426,15 @@ export class Value {
409
426
  const elemType = this._type.Elem();
410
427
  return new Value(varRef.value, elemType, varRef);
411
428
  }
429
+ if (this._type.Kind() === Ptr &&
430
+ this._value &&
431
+ typeof this._value === 'object' &&
432
+ '__goValue' in this._value &&
433
+ $.isVarRef(this._value.__goValue)) {
434
+ const varRef = this._value
435
+ .__goValue;
436
+ return new Value(varRef.value, this._type.Elem(), varRef);
437
+ }
412
438
  // For interfaces, return the underlying value
413
439
  return new Value(this._value, this._type, this._parentVarRef);
414
440
  }
@@ -1703,30 +1729,7 @@ class StructType {
1703
1729
  }
1704
1730
  static createTypeFromFieldInfo(ti) {
1705
1731
  if (typeof ti === 'string') {
1706
- switch (ti) {
1707
- case 'string':
1708
- return new BasicType(String, ti, 16);
1709
- case 'int':
1710
- case 'int32':
1711
- case 'int64':
1712
- case 'number':
1713
- return new BasicType(Int, ti === 'number' ? 'int' : ti, 8);
1714
- case 'bool':
1715
- case 'boolean':
1716
- return new BasicType(Bool, 'bool', 1);
1717
- case 'float64':
1718
- return new BasicType(Float64, ti, 8);
1719
- case 'complex64':
1720
- return new BasicType(Complex64, ti, 8);
1721
- case 'complex128':
1722
- return new BasicType(Complex128, ti, 16);
1723
- case 'uint':
1724
- case 'uint32':
1725
- case 'uint64':
1726
- return new BasicType(Uint, ti, 8);
1727
- default:
1728
- return new BasicType(Invalid, ti, 8);
1729
- }
1732
+ return basicTypeFromName(ti === 'number' ? 'int' : ti);
1730
1733
  }
1731
1734
  else if (ti && ti.kind) {
1732
1735
  // Handle TypeInfo objects from the builtin type system
@@ -1734,27 +1737,7 @@ class StructType {
1734
1737
  const typeName = ti.typeName || '';
1735
1738
  switch (ti.kind) {
1736
1739
  case 'basic':
1737
- // Map TypeScript type names to Go type names
1738
- switch (name) {
1739
- case 'string':
1740
- return new BasicType(String, 'string', 16, typeName);
1741
- case 'number':
1742
- case 'int':
1743
- case 'int32':
1744
- case 'int64':
1745
- return new BasicType(Int, name === 'number' ? 'int' : name, 8, typeName);
1746
- case 'boolean':
1747
- case 'bool':
1748
- return new BasicType(Bool, 'bool', 1, typeName);
1749
- case 'float64':
1750
- return new BasicType(Float64, 'float64', 8, typeName);
1751
- case 'complex64':
1752
- return new BasicType(Complex64, 'complex64', 8, typeName);
1753
- case 'complex128':
1754
- return new BasicType(Complex128, 'complex128', 16, typeName);
1755
- default:
1756
- return new BasicType(Invalid, name, 8, typeName);
1757
- }
1740
+ return basicTypeFromName(name === 'number' ? 'int' : name, typeName);
1758
1741
  case 'slice':
1759
1742
  if (ti.elemType) {
1760
1743
  return new SliceType(StructType.createTypeFromFieldInfo(ti.elemType));
@@ -1776,6 +1759,48 @@ class StructType {
1776
1759
  return new BasicType(Invalid, 'unknown', 8);
1777
1760
  }
1778
1761
  }
1762
+ function basicTypeFromName(name, typeName = '') {
1763
+ switch (name) {
1764
+ case 'string':
1765
+ return new BasicType(String, 'string', 16, typeName);
1766
+ case 'bool':
1767
+ case 'boolean':
1768
+ return new BasicType(Bool, 'bool', 1, typeName);
1769
+ case 'int':
1770
+ return new BasicType(Int, 'int', 8, typeName);
1771
+ case 'int8':
1772
+ return new BasicType(Int8, 'int8', 1, typeName);
1773
+ case 'int16':
1774
+ return new BasicType(Int16, 'int16', 2, typeName);
1775
+ case 'int32':
1776
+ return new BasicType(Int32, 'int32', 4, typeName);
1777
+ case 'int64':
1778
+ return new BasicType(Int64, 'int64', 8, typeName);
1779
+ case 'uint':
1780
+ return new BasicType(Uint, 'uint', 8, typeName);
1781
+ case 'uint8':
1782
+ case 'byte':
1783
+ return new BasicType(Uint8, name, 1, typeName);
1784
+ case 'uint16':
1785
+ return new BasicType(Uint16, 'uint16', 2, typeName);
1786
+ case 'uint32':
1787
+ return new BasicType(Uint32, 'uint32', 4, typeName);
1788
+ case 'uint64':
1789
+ return new BasicType(Uint64, 'uint64', 8, typeName);
1790
+ case 'uintptr':
1791
+ return new BasicType(Uintptr, 'uintptr', 8, typeName);
1792
+ case 'float32':
1793
+ return new BasicType(Float32, 'float32', 4, typeName);
1794
+ case 'float64':
1795
+ return new BasicType(Float64, 'float64', 8, typeName);
1796
+ case 'complex64':
1797
+ return new BasicType(Complex64, 'complex64', 8, typeName);
1798
+ case 'complex128':
1799
+ return new BasicType(Complex128, 'complex128', 16, typeName);
1800
+ default:
1801
+ return new BasicType(Invalid, name, 8, typeName);
1802
+ }
1803
+ }
1779
1804
  function structFieldsFromTypeInfo(ti) {
1780
1805
  return Object.entries(ti.fields || {}).map(([name, fieldInfo]) => {
1781
1806
  if (isStructFieldInfo(fieldInfo)) {
@@ -2069,6 +2094,10 @@ function getTypeOf(value) {
2069
2094
  const elemType = getTypeOf(value.value);
2070
2095
  return new PointerType(elemType);
2071
2096
  }
2097
+ if ('__goTypeInfo' in value &&
2098
+ value.__goTypeInfo) {
2099
+ return typeFromTypeInfo(value.__goTypeInfo);
2100
+ }
2072
2101
  if ('real' in value &&
2073
2102
  'imag' in value &&
2074
2103
  typeof value.real === 'number' &&