typenative 0.1.3 → 0.2.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 (500) hide show
  1. package/.gitattributes +1 -0
  2. package/.github/workflows/ci.yml +1 -1
  3. package/.github/workflows/npm-publish-github-packages.yml +1 -1
  4. package/CHANGELOG.md +247 -0
  5. package/CONTRIBUTION.md +1 -1
  6. package/README.md +4 -4
  7. package/bin/cli.js +3 -1
  8. package/bin/go/bridge.js +919 -0
  9. package/bin/go/convert.js +238 -0
  10. package/bin/go/metadata.js +211 -0
  11. package/bin/go/overrides.js +68 -0
  12. package/bin/go/stdlib.generated.js +175 -0
  13. package/bin/index.js +294 -240
  14. package/bin/main.js +4 -1
  15. package/bin/node/assert.js +344 -0
  16. package/bin/node/async_hooks.js +273 -0
  17. package/bin/node/buffer.js +765 -0
  18. package/bin/node/child_process.js +600 -0
  19. package/bin/node/cluster.js +1002 -0
  20. package/bin/node/console.js +121 -0
  21. package/bin/node/core.js +111 -0
  22. package/bin/node/crypto.js +414 -0
  23. package/bin/node/crypto_keys.js +2685 -0
  24. package/bin/node/dgram.js +388 -0
  25. package/bin/node/diagnostics_channel.js +534 -0
  26. package/bin/node/dns.js +635 -0
  27. package/bin/node/events.js +743 -0
  28. package/bin/node/fetch.js +737 -0
  29. package/bin/node/fs.js +998 -0
  30. package/bin/node/http.js +1500 -0
  31. package/bin/node/http2.js +688 -0
  32. package/bin/node/net.js +1143 -0
  33. package/bin/node/os.js +257 -0
  34. package/bin/node/path.js +758 -0
  35. package/bin/node/process.js +316 -0
  36. package/bin/node/punycode.js +195 -0
  37. package/bin/node/querystring.js +143 -0
  38. package/bin/node/readline.js +299 -0
  39. package/bin/node/registry.js +161 -0
  40. package/bin/node/sqlite.js +1142 -0
  41. package/bin/node/stream.js +1221 -0
  42. package/bin/node/stream_web.js +2259 -0
  43. package/bin/node/string_decoder.js +101 -0
  44. package/bin/node/system_extra.js +661 -0
  45. package/bin/node/test.js +1068 -0
  46. package/bin/node/timers.js +250 -0
  47. package/bin/node/tls.js +719 -0
  48. package/bin/node/url.js +861 -0
  49. package/bin/node/util.js +1311 -0
  50. package/bin/node/util_extra.js +599 -0
  51. package/bin/node/worker_threads.js +745 -0
  52. package/bin/node/zlib.js +263 -0
  53. package/bin/transpiler.js +2650 -575
  54. package/bin/version.js +2 -0
  55. package/conformance.md +707 -241
  56. package/govendor/github.com/ncruces/go-sqlite3/LICENSE +21 -0
  57. package/govendor/github.com/ncruces/go-sqlite3/README.md +121 -0
  58. package/govendor/github.com/ncruces/go-sqlite3/backup.go +132 -0
  59. package/govendor/github.com/ncruces/go-sqlite3/blob.go +266 -0
  60. package/govendor/github.com/ncruces/go-sqlite3/config.go +397 -0
  61. package/govendor/github.com/ncruces/go-sqlite3/conn.go +540 -0
  62. package/govendor/github.com/ncruces/go-sqlite3/conn_127.go +93 -0
  63. package/govendor/github.com/ncruces/go-sqlite3/const.go +436 -0
  64. package/govendor/github.com/ncruces/go-sqlite3/context.go +222 -0
  65. package/govendor/github.com/ncruces/go-sqlite3/error.go +182 -0
  66. package/govendor/github.com/ncruces/go-sqlite3/ext.go +153 -0
  67. package/govendor/github.com/ncruces/go-sqlite3/func.go +309 -0
  68. package/govendor/github.com/ncruces/go-sqlite3/go.mod +3 -0
  69. package/govendor/github.com/ncruces/go-sqlite3/internal/dotlk/dotlk.go +29 -0
  70. package/govendor/github.com/ncruces/go-sqlite3/internal/dotlk/dotlk_other.go +13 -0
  71. package/govendor/github.com/ncruces/go-sqlite3/internal/dotlk/dotlk_unix.go +57 -0
  72. package/govendor/github.com/ncruces/go-sqlite3/internal/errutil/error.go +41 -0
  73. package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/alloc.go +128 -0
  74. package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/const.go +122 -0
  75. package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/error.go +77 -0
  76. package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/mem.go +116 -0
  77. package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/mem_other.go +34 -0
  78. package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/mem_unix.go +87 -0
  79. package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/mem_windows.go +149 -0
  80. package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/mmap_unix.go +80 -0
  81. package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/mmap_windows.go +129 -0
  82. package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/sys_windows.go +60 -0
  83. package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/wrap.go +82 -0
  84. package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/wrap_sys.go +113 -0
  85. package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/wrap_vfs.go +181 -0
  86. package/govendor/github.com/ncruces/go-sqlite3/internal/testenv/env.go +55 -0
  87. package/govendor/github.com/ncruces/go-sqlite3/internal/util/json.go +54 -0
  88. package/govendor/github.com/ncruces/go-sqlite3/internal/util/json_v2.go +54 -0
  89. package/govendor/github.com/ncruces/go-sqlite3/internal/util/math.go +29 -0
  90. package/govendor/github.com/ncruces/go-sqlite3/internal/util/page.go +5 -0
  91. package/govendor/github.com/ncruces/go-sqlite3/internal/util/parse.go +142 -0
  92. package/govendor/github.com/ncruces/go-sqlite3/internal/util/pointer.go +3 -0
  93. package/govendor/github.com/ncruces/go-sqlite3/internal/util/reflect.go +10 -0
  94. package/govendor/github.com/ncruces/go-sqlite3/json.go +100 -0
  95. package/govendor/github.com/ncruces/go-sqlite3/json_v2.go +116 -0
  96. package/govendor/github.com/ncruces/go-sqlite3/pointer.go +13 -0
  97. package/govendor/github.com/ncruces/go-sqlite3/quote.go +140 -0
  98. package/govendor/github.com/ncruces/go-sqlite3/stmt.go +692 -0
  99. package/govendor/github.com/ncruces/go-sqlite3/time.go +360 -0
  100. package/govendor/github.com/ncruces/go-sqlite3/txn.go +374 -0
  101. package/govendor/github.com/ncruces/go-sqlite3/value.go +212 -0
  102. package/govendor/github.com/ncruces/go-sqlite3/vfs/README.md +133 -0
  103. package/govendor/github.com/ncruces/go-sqlite3/vfs/api.go +239 -0
  104. package/govendor/github.com/ncruces/go-sqlite3/vfs/cksm.go +143 -0
  105. package/govendor/github.com/ncruces/go-sqlite3/vfs/const.go +256 -0
  106. package/govendor/github.com/ncruces/go-sqlite3/vfs/file.go +260 -0
  107. package/govendor/github.com/ncruces/go-sqlite3/vfs/filename.go +187 -0
  108. package/govendor/github.com/ncruces/go-sqlite3/vfs/lock.go +128 -0
  109. package/govendor/github.com/ncruces/go-sqlite3/vfs/lock_other.go +23 -0
  110. package/govendor/github.com/ncruces/go-sqlite3/vfs/map.go +63 -0
  111. package/govendor/github.com/ncruces/go-sqlite3/vfs/map_other.go +13 -0
  112. package/govendor/github.com/ncruces/go-sqlite3/vfs/os_bsd.go +110 -0
  113. package/govendor/github.com/ncruces/go-sqlite3/vfs/os_darwin.go +131 -0
  114. package/govendor/github.com/ncruces/go-sqlite3/vfs/os_dotlk.go +140 -0
  115. package/govendor/github.com/ncruces/go-sqlite3/vfs/os_f2fs_linux.go +56 -0
  116. package/govendor/github.com/ncruces/go-sqlite3/vfs/os_linux.go +117 -0
  117. package/govendor/github.com/ncruces/go-sqlite3/vfs/os_ofd.go +59 -0
  118. package/govendor/github.com/ncruces/go-sqlite3/vfs/os_std.go +50 -0
  119. package/govendor/github.com/ncruces/go-sqlite3/vfs/os_std_alloc.go +19 -0
  120. package/govendor/github.com/ncruces/go-sqlite3/vfs/os_std_atomic.go +9 -0
  121. package/govendor/github.com/ncruces/go-sqlite3/vfs/os_std_rw.go +13 -0
  122. package/govendor/github.com/ncruces/go-sqlite3/vfs/os_std_sync.go +9 -0
  123. package/govendor/github.com/ncruces/go-sqlite3/vfs/os_std_temp.go +16 -0
  124. package/govendor/github.com/ncruces/go-sqlite3/vfs/os_unix.go +108 -0
  125. package/govendor/github.com/ncruces/go-sqlite3/vfs/os_windows.go +180 -0
  126. package/govendor/github.com/ncruces/go-sqlite3/vfs/registry.go +48 -0
  127. package/govendor/github.com/ncruces/go-sqlite3/vfs/shm.go +26 -0
  128. package/govendor/github.com/ncruces/go-sqlite3/vfs/shm_bsd.go +258 -0
  129. package/govendor/github.com/ncruces/go-sqlite3/vfs/shm_copy.go +90 -0
  130. package/govendor/github.com/ncruces/go-sqlite3/vfs/shm_dotlk.go +168 -0
  131. package/govendor/github.com/ncruces/go-sqlite3/vfs/shm_memlk.go +52 -0
  132. package/govendor/github.com/ncruces/go-sqlite3/vfs/shm_ofd.go +185 -0
  133. package/govendor/github.com/ncruces/go-sqlite3/vfs/shm_other.go +21 -0
  134. package/govendor/github.com/ncruces/go-sqlite3/vfs/shm_windows.go +124 -0
  135. package/govendor/github.com/ncruces/go-sqlite3/vfs/vfs.go +455 -0
  136. package/govendor/github.com/ncruces/go-sqlite3/vtab.go +677 -0
  137. package/govendor/github.com/ncruces/go-sqlite3/wrap.go +48 -0
  138. package/govendor/github.com/ncruces/go-sqlite3-wasm/v6/LICENSE +18 -0
  139. package/govendor/github.com/ncruces/go-sqlite3-wasm/v6/README.md +11 -0
  140. package/govendor/github.com/ncruces/go-sqlite3-wasm/v6/go.mod +3 -0
  141. package/govendor/github.com/ncruces/go-sqlite3-wasm/v6/libc.go +215 -0
  142. package/govendor/github.com/ncruces/go-sqlite3-wasm/v6/sqlite3.dat +0 -0
  143. package/govendor/github.com/ncruces/go-sqlite3-wasm/v6/sqlite3.go +157903 -0
  144. package/govendor/github.com/ncruces/go-sqlite3-wasm/v6/tools.sh +38 -0
  145. package/govendor/github.com/ncruces/julianday/LICENSE +21 -0
  146. package/govendor/github.com/ncruces/julianday/README.md +9 -0
  147. package/govendor/github.com/ncruces/julianday/go.mod +3 -0
  148. package/govendor/github.com/ncruces/julianday/julianday.go +124 -0
  149. package/govendor/golang.org/x/sys/LICENSE +27 -0
  150. package/govendor/golang.org/x/sys/PATENTS +22 -0
  151. package/govendor/golang.org/x/sys/go.mod +3 -0
  152. package/govendor/golang.org/x/sys/unix/README.md +184 -0
  153. package/govendor/golang.org/x/sys/unix/affinity_linux.go +189 -0
  154. package/govendor/golang.org/x/sys/unix/aliases.go +13 -0
  155. package/govendor/golang.org/x/sys/unix/asm_aix_ppc64.s +17 -0
  156. package/govendor/golang.org/x/sys/unix/asm_bsd_386.s +27 -0
  157. package/govendor/golang.org/x/sys/unix/asm_bsd_amd64.s +27 -0
  158. package/govendor/golang.org/x/sys/unix/asm_bsd_arm.s +27 -0
  159. package/govendor/golang.org/x/sys/unix/asm_bsd_arm64.s +27 -0
  160. package/govendor/golang.org/x/sys/unix/asm_bsd_ppc64.s +29 -0
  161. package/govendor/golang.org/x/sys/unix/asm_bsd_riscv64.s +27 -0
  162. package/govendor/golang.org/x/sys/unix/asm_linux_386.s +65 -0
  163. package/govendor/golang.org/x/sys/unix/asm_linux_amd64.s +57 -0
  164. package/govendor/golang.org/x/sys/unix/asm_linux_arm.s +56 -0
  165. package/govendor/golang.org/x/sys/unix/asm_linux_arm64.s +50 -0
  166. package/govendor/golang.org/x/sys/unix/asm_linux_loong64.s +51 -0
  167. package/govendor/golang.org/x/sys/unix/asm_linux_mips64x.s +54 -0
  168. package/govendor/golang.org/x/sys/unix/asm_linux_mipsx.s +52 -0
  169. package/govendor/golang.org/x/sys/unix/asm_linux_ppc64x.s +42 -0
  170. package/govendor/golang.org/x/sys/unix/asm_linux_riscv64.s +47 -0
  171. package/govendor/golang.org/x/sys/unix/asm_linux_s390x.s +54 -0
  172. package/govendor/golang.org/x/sys/unix/asm_openbsd_mips64.s +29 -0
  173. package/govendor/golang.org/x/sys/unix/asm_solaris_amd64.s +17 -0
  174. package/govendor/golang.org/x/sys/unix/asm_zos_s390x.s +382 -0
  175. package/govendor/golang.org/x/sys/unix/auxv.go +36 -0
  176. package/govendor/golang.org/x/sys/unix/auxv_unsupported.go +13 -0
  177. package/govendor/golang.org/x/sys/unix/bluetooth_linux.go +36 -0
  178. package/govendor/golang.org/x/sys/unix/bpxsvc_zos.go +657 -0
  179. package/govendor/golang.org/x/sys/unix/bpxsvc_zos.s +192 -0
  180. package/govendor/golang.org/x/sys/unix/cap_freebsd.go +195 -0
  181. package/govendor/golang.org/x/sys/unix/constants.go +13 -0
  182. package/govendor/golang.org/x/sys/unix/dev_aix_ppc.go +26 -0
  183. package/govendor/golang.org/x/sys/unix/dev_aix_ppc64.go +28 -0
  184. package/govendor/golang.org/x/sys/unix/dev_darwin.go +24 -0
  185. package/govendor/golang.org/x/sys/unix/dev_dragonfly.go +30 -0
  186. package/govendor/golang.org/x/sys/unix/dev_freebsd.go +30 -0
  187. package/govendor/golang.org/x/sys/unix/dev_linux.go +42 -0
  188. package/govendor/golang.org/x/sys/unix/dev_netbsd.go +29 -0
  189. package/govendor/golang.org/x/sys/unix/dev_openbsd.go +29 -0
  190. package/govendor/golang.org/x/sys/unix/dev_zos.go +28 -0
  191. package/govendor/golang.org/x/sys/unix/dirent.go +102 -0
  192. package/govendor/golang.org/x/sys/unix/endian_big.go +9 -0
  193. package/govendor/golang.org/x/sys/unix/endian_little.go +9 -0
  194. package/govendor/golang.org/x/sys/unix/env_unix.go +31 -0
  195. package/govendor/golang.org/x/sys/unix/fcntl.go +36 -0
  196. package/govendor/golang.org/x/sys/unix/fcntl_darwin.go +24 -0
  197. package/govendor/golang.org/x/sys/unix/fcntl_linux_32bit.go +13 -0
  198. package/govendor/golang.org/x/sys/unix/fdset.go +27 -0
  199. package/govendor/golang.org/x/sys/unix/gccgo.go +59 -0
  200. package/govendor/golang.org/x/sys/unix/gccgo_c.c +44 -0
  201. package/govendor/golang.org/x/sys/unix/gccgo_linux_amd64.go +20 -0
  202. package/govendor/golang.org/x/sys/unix/ifreq_linux.go +145 -0
  203. package/govendor/golang.org/x/sys/unix/ioctl_linux.go +341 -0
  204. package/govendor/golang.org/x/sys/unix/ioctl_signed.go +74 -0
  205. package/govendor/golang.org/x/sys/unix/ioctl_unsigned.go +74 -0
  206. package/govendor/golang.org/x/sys/unix/ioctl_zos.go +71 -0
  207. package/govendor/golang.org/x/sys/unix/mkall.sh +250 -0
  208. package/govendor/golang.org/x/sys/unix/mkerrors.sh +807 -0
  209. package/govendor/golang.org/x/sys/unix/mmap_nomremap.go +13 -0
  210. package/govendor/golang.org/x/sys/unix/mremap.go +57 -0
  211. package/govendor/golang.org/x/sys/unix/pagesize_unix.go +15 -0
  212. package/govendor/golang.org/x/sys/unix/pledge_openbsd.go +111 -0
  213. package/govendor/golang.org/x/sys/unix/ptrace_darwin.go +11 -0
  214. package/govendor/golang.org/x/sys/unix/ptrace_ios.go +11 -0
  215. package/govendor/golang.org/x/sys/unix/race.go +30 -0
  216. package/govendor/golang.org/x/sys/unix/race0.go +25 -0
  217. package/govendor/golang.org/x/sys/unix/readdirent_getdents.go +12 -0
  218. package/govendor/golang.org/x/sys/unix/readdirent_getdirentries.go +19 -0
  219. package/govendor/golang.org/x/sys/unix/readv_unix.go +103 -0
  220. package/govendor/golang.org/x/sys/unix/sockcmsg_dragonfly.go +16 -0
  221. package/govendor/golang.org/x/sys/unix/sockcmsg_linux.go +85 -0
  222. package/govendor/golang.org/x/sys/unix/sockcmsg_unix.go +106 -0
  223. package/govendor/golang.org/x/sys/unix/sockcmsg_unix_other.go +46 -0
  224. package/govendor/golang.org/x/sys/unix/sockcmsg_zos.go +58 -0
  225. package/govendor/golang.org/x/sys/unix/symaddr_zos_s390x.s +75 -0
  226. package/govendor/golang.org/x/sys/unix/syscall.go +86 -0
  227. package/govendor/golang.org/x/sys/unix/syscall_aix.go +582 -0
  228. package/govendor/golang.org/x/sys/unix/syscall_aix_ppc.go +52 -0
  229. package/govendor/golang.org/x/sys/unix/syscall_aix_ppc64.go +83 -0
  230. package/govendor/golang.org/x/sys/unix/syscall_bsd.go +609 -0
  231. package/govendor/golang.org/x/sys/unix/syscall_darwin.go +711 -0
  232. package/govendor/golang.org/x/sys/unix/syscall_darwin_amd64.go +50 -0
  233. package/govendor/golang.org/x/sys/unix/syscall_darwin_arm64.go +50 -0
  234. package/govendor/golang.org/x/sys/unix/syscall_darwin_libSystem.go +26 -0
  235. package/govendor/golang.org/x/sys/unix/syscall_dragonfly.go +359 -0
  236. package/govendor/golang.org/x/sys/unix/syscall_dragonfly_amd64.go +56 -0
  237. package/govendor/golang.org/x/sys/unix/syscall_freebsd.go +455 -0
  238. package/govendor/golang.org/x/sys/unix/syscall_freebsd_386.go +64 -0
  239. package/govendor/golang.org/x/sys/unix/syscall_freebsd_amd64.go +64 -0
  240. package/govendor/golang.org/x/sys/unix/syscall_freebsd_arm.go +60 -0
  241. package/govendor/golang.org/x/sys/unix/syscall_freebsd_arm64.go +60 -0
  242. package/govendor/golang.org/x/sys/unix/syscall_freebsd_riscv64.go +60 -0
  243. package/govendor/golang.org/x/sys/unix/syscall_hurd.go +30 -0
  244. package/govendor/golang.org/x/sys/unix/syscall_hurd_386.go +28 -0
  245. package/govendor/golang.org/x/sys/unix/syscall_illumos.go +78 -0
  246. package/govendor/golang.org/x/sys/unix/syscall_linux.go +2574 -0
  247. package/govendor/golang.org/x/sys/unix/syscall_linux_386.go +313 -0
  248. package/govendor/golang.org/x/sys/unix/syscall_linux_alarm.go +12 -0
  249. package/govendor/golang.org/x/sys/unix/syscall_linux_amd64.go +144 -0
  250. package/govendor/golang.org/x/sys/unix/syscall_linux_amd64_gc.go +12 -0
  251. package/govendor/golang.org/x/sys/unix/syscall_linux_arm.go +218 -0
  252. package/govendor/golang.org/x/sys/unix/syscall_linux_arm64.go +188 -0
  253. package/govendor/golang.org/x/sys/unix/syscall_linux_gc.go +14 -0
  254. package/govendor/golang.org/x/sys/unix/syscall_linux_gc_386.go +16 -0
  255. package/govendor/golang.org/x/sys/unix/syscall_linux_gc_arm.go +13 -0
  256. package/govendor/golang.org/x/sys/unix/syscall_linux_gccgo_386.go +30 -0
  257. package/govendor/golang.org/x/sys/unix/syscall_linux_gccgo_arm.go +20 -0
  258. package/govendor/golang.org/x/sys/unix/syscall_linux_loong64.go +220 -0
  259. package/govendor/golang.org/x/sys/unix/syscall_linux_mips64x.go +187 -0
  260. package/govendor/golang.org/x/sys/unix/syscall_linux_mipsx.go +173 -0
  261. package/govendor/golang.org/x/sys/unix/syscall_linux_ppc.go +203 -0
  262. package/govendor/golang.org/x/sys/unix/syscall_linux_ppc64x.go +114 -0
  263. package/govendor/golang.org/x/sys/unix/syscall_linux_riscv64.go +193 -0
  264. package/govendor/golang.org/x/sys/unix/syscall_linux_s390x.go +295 -0
  265. package/govendor/golang.org/x/sys/unix/syscall_linux_sparc64.go +111 -0
  266. package/govendor/golang.org/x/sys/unix/syscall_netbsd.go +388 -0
  267. package/govendor/golang.org/x/sys/unix/syscall_netbsd_386.go +37 -0
  268. package/govendor/golang.org/x/sys/unix/syscall_netbsd_amd64.go +37 -0
  269. package/govendor/golang.org/x/sys/unix/syscall_netbsd_arm.go +37 -0
  270. package/govendor/golang.org/x/sys/unix/syscall_netbsd_arm64.go +37 -0
  271. package/govendor/golang.org/x/sys/unix/syscall_openbsd.go +346 -0
  272. package/govendor/golang.org/x/sys/unix/syscall_openbsd_386.go +41 -0
  273. package/govendor/golang.org/x/sys/unix/syscall_openbsd_amd64.go +41 -0
  274. package/govendor/golang.org/x/sys/unix/syscall_openbsd_arm.go +41 -0
  275. package/govendor/golang.org/x/sys/unix/syscall_openbsd_arm64.go +41 -0
  276. package/govendor/golang.org/x/sys/unix/syscall_openbsd_libc.go +26 -0
  277. package/govendor/golang.org/x/sys/unix/syscall_openbsd_mips64.go +39 -0
  278. package/govendor/golang.org/x/sys/unix/syscall_openbsd_ppc64.go +41 -0
  279. package/govendor/golang.org/x/sys/unix/syscall_openbsd_riscv64.go +41 -0
  280. package/govendor/golang.org/x/sys/unix/syscall_solaris.go +1183 -0
  281. package/govendor/golang.org/x/sys/unix/syscall_solaris_amd64.go +27 -0
  282. package/govendor/golang.org/x/sys/unix/syscall_unix.go +619 -0
  283. package/govendor/golang.org/x/sys/unix/syscall_unix_gc.go +14 -0
  284. package/govendor/golang.org/x/sys/unix/syscall_unix_gc_ppc64x.go +22 -0
  285. package/govendor/golang.org/x/sys/unix/syscall_zos_s390x.go +3213 -0
  286. package/govendor/golang.org/x/sys/unix/sysvshm_linux.go +20 -0
  287. package/govendor/golang.org/x/sys/unix/sysvshm_unix.go +51 -0
  288. package/govendor/golang.org/x/sys/unix/sysvshm_unix_other.go +13 -0
  289. package/govendor/golang.org/x/sys/unix/timestruct.go +76 -0
  290. package/govendor/golang.org/x/sys/unix/unveil_openbsd.go +51 -0
  291. package/govendor/golang.org/x/sys/unix/vgetrandom_linux.go +13 -0
  292. package/govendor/golang.org/x/sys/unix/vgetrandom_unsupported.go +11 -0
  293. package/govendor/golang.org/x/sys/unix/xattr_bsd.go +280 -0
  294. package/govendor/golang.org/x/sys/unix/zerrors_aix_ppc.go +1384 -0
  295. package/govendor/golang.org/x/sys/unix/zerrors_aix_ppc64.go +1385 -0
  296. package/govendor/golang.org/x/sys/unix/zerrors_darwin_amd64.go +1922 -0
  297. package/govendor/golang.org/x/sys/unix/zerrors_darwin_arm64.go +1922 -0
  298. package/govendor/golang.org/x/sys/unix/zerrors_dragonfly_amd64.go +1737 -0
  299. package/govendor/golang.org/x/sys/unix/zerrors_freebsd_386.go +2042 -0
  300. package/govendor/golang.org/x/sys/unix/zerrors_freebsd_amd64.go +2039 -0
  301. package/govendor/golang.org/x/sys/unix/zerrors_freebsd_arm.go +2033 -0
  302. package/govendor/golang.org/x/sys/unix/zerrors_freebsd_arm64.go +2033 -0
  303. package/govendor/golang.org/x/sys/unix/zerrors_freebsd_riscv64.go +2147 -0
  304. package/govendor/golang.org/x/sys/unix/zerrors_linux.go +4209 -0
  305. package/govendor/golang.org/x/sys/unix/zerrors_linux_386.go +882 -0
  306. package/govendor/golang.org/x/sys/unix/zerrors_linux_amd64.go +882 -0
  307. package/govendor/golang.org/x/sys/unix/zerrors_linux_arm.go +887 -0
  308. package/govendor/golang.org/x/sys/unix/zerrors_linux_arm64.go +884 -0
  309. package/govendor/golang.org/x/sys/unix/zerrors_linux_loong64.go +874 -0
  310. package/govendor/golang.org/x/sys/unix/zerrors_linux_mips.go +888 -0
  311. package/govendor/golang.org/x/sys/unix/zerrors_linux_mips64.go +888 -0
  312. package/govendor/golang.org/x/sys/unix/zerrors_linux_mips64le.go +888 -0
  313. package/govendor/golang.org/x/sys/unix/zerrors_linux_mipsle.go +888 -0
  314. package/govendor/golang.org/x/sys/unix/zerrors_linux_ppc.go +940 -0
  315. package/govendor/golang.org/x/sys/unix/zerrors_linux_ppc64.go +944 -0
  316. package/govendor/golang.org/x/sys/unix/zerrors_linux_ppc64le.go +944 -0
  317. package/govendor/golang.org/x/sys/unix/zerrors_linux_riscv64.go +884 -0
  318. package/govendor/golang.org/x/sys/unix/zerrors_linux_s390x.go +943 -0
  319. package/govendor/golang.org/x/sys/unix/zerrors_linux_sparc64.go +992 -0
  320. package/govendor/golang.org/x/sys/unix/zerrors_netbsd_386.go +1779 -0
  321. package/govendor/golang.org/x/sys/unix/zerrors_netbsd_amd64.go +1769 -0
  322. package/govendor/golang.org/x/sys/unix/zerrors_netbsd_arm.go +1758 -0
  323. package/govendor/golang.org/x/sys/unix/zerrors_netbsd_arm64.go +1769 -0
  324. package/govendor/golang.org/x/sys/unix/zerrors_openbsd_386.go +1905 -0
  325. package/govendor/golang.org/x/sys/unix/zerrors_openbsd_amd64.go +1905 -0
  326. package/govendor/golang.org/x/sys/unix/zerrors_openbsd_arm.go +1905 -0
  327. package/govendor/golang.org/x/sys/unix/zerrors_openbsd_arm64.go +1905 -0
  328. package/govendor/golang.org/x/sys/unix/zerrors_openbsd_mips64.go +1905 -0
  329. package/govendor/golang.org/x/sys/unix/zerrors_openbsd_ppc64.go +1904 -0
  330. package/govendor/golang.org/x/sys/unix/zerrors_openbsd_riscv64.go +1903 -0
  331. package/govendor/golang.org/x/sys/unix/zerrors_solaris_amd64.go +1556 -0
  332. package/govendor/golang.org/x/sys/unix/zerrors_zos_s390x.go +990 -0
  333. package/govendor/golang.org/x/sys/unix/zptrace_armnn_linux.go +40 -0
  334. package/govendor/golang.org/x/sys/unix/zptrace_linux_arm64.go +17 -0
  335. package/govendor/golang.org/x/sys/unix/zptrace_mipsnn_linux.go +49 -0
  336. package/govendor/golang.org/x/sys/unix/zptrace_mipsnnle_linux.go +49 -0
  337. package/govendor/golang.org/x/sys/unix/zptrace_x86_linux.go +79 -0
  338. package/govendor/golang.org/x/sys/unix/zsymaddr_zos_s390x.s +364 -0
  339. package/govendor/golang.org/x/sys/unix/zsyscall_aix_ppc.go +1461 -0
  340. package/govendor/golang.org/x/sys/unix/zsyscall_aix_ppc64.go +1420 -0
  341. package/govendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gc.go +1188 -0
  342. package/govendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gccgo.go +1069 -0
  343. package/govendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go +2728 -0
  344. package/govendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.s +799 -0
  345. package/govendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go +2728 -0
  346. package/govendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.s +799 -0
  347. package/govendor/golang.org/x/sys/unix/zsyscall_dragonfly_amd64.go +1666 -0
  348. package/govendor/golang.org/x/sys/unix/zsyscall_freebsd_386.go +1886 -0
  349. package/govendor/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go +1886 -0
  350. package/govendor/golang.org/x/sys/unix/zsyscall_freebsd_arm.go +1886 -0
  351. package/govendor/golang.org/x/sys/unix/zsyscall_freebsd_arm64.go +1886 -0
  352. package/govendor/golang.org/x/sys/unix/zsyscall_freebsd_riscv64.go +1886 -0
  353. package/govendor/golang.org/x/sys/unix/zsyscall_illumos_amd64.go +101 -0
  354. package/govendor/golang.org/x/sys/unix/zsyscall_linux.go +2267 -0
  355. package/govendor/golang.org/x/sys/unix/zsyscall_linux_386.go +469 -0
  356. package/govendor/golang.org/x/sys/unix/zsyscall_linux_amd64.go +636 -0
  357. package/govendor/golang.org/x/sys/unix/zsyscall_linux_arm.go +584 -0
  358. package/govendor/golang.org/x/sys/unix/zsyscall_linux_arm64.go +535 -0
  359. package/govendor/golang.org/x/sys/unix/zsyscall_linux_loong64.go +469 -0
  360. package/govendor/golang.org/x/sys/unix/zsyscall_linux_mips.go +636 -0
  361. package/govendor/golang.org/x/sys/unix/zsyscall_linux_mips64.go +630 -0
  362. package/govendor/golang.org/x/sys/unix/zsyscall_linux_mips64le.go +619 -0
  363. package/govendor/golang.org/x/sys/unix/zsyscall_linux_mipsle.go +636 -0
  364. package/govendor/golang.org/x/sys/unix/zsyscall_linux_ppc.go +641 -0
  365. package/govendor/golang.org/x/sys/unix/zsyscall_linux_ppc64.go +687 -0
  366. package/govendor/golang.org/x/sys/unix/zsyscall_linux_ppc64le.go +687 -0
  367. package/govendor/golang.org/x/sys/unix/zsyscall_linux_riscv64.go +531 -0
  368. package/govendor/golang.org/x/sys/unix/zsyscall_linux_s390x.go +478 -0
  369. package/govendor/golang.org/x/sys/unix/zsyscall_linux_sparc64.go +631 -0
  370. package/govendor/golang.org/x/sys/unix/zsyscall_netbsd_386.go +1848 -0
  371. package/govendor/golang.org/x/sys/unix/zsyscall_netbsd_amd64.go +1848 -0
  372. package/govendor/golang.org/x/sys/unix/zsyscall_netbsd_arm.go +1848 -0
  373. package/govendor/golang.org/x/sys/unix/zsyscall_netbsd_arm64.go +1848 -0
  374. package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_386.go +2407 -0
  375. package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_386.s +719 -0
  376. package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_amd64.go +2407 -0
  377. package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_amd64.s +719 -0
  378. package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_arm.go +2407 -0
  379. package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_arm.s +719 -0
  380. package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_arm64.go +2407 -0
  381. package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_arm64.s +719 -0
  382. package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_mips64.go +2407 -0
  383. package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_mips64.s +719 -0
  384. package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_ppc64.go +2407 -0
  385. package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_ppc64.s +862 -0
  386. package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_riscv64.go +2407 -0
  387. package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_riscv64.s +719 -0
  388. package/govendor/golang.org/x/sys/unix/zsyscall_solaris_amd64.go +2217 -0
  389. package/govendor/golang.org/x/sys/unix/zsyscall_zos_s390x.go +3458 -0
  390. package/govendor/golang.org/x/sys/unix/zsysctl_openbsd_386.go +280 -0
  391. package/govendor/golang.org/x/sys/unix/zsysctl_openbsd_amd64.go +280 -0
  392. package/govendor/golang.org/x/sys/unix/zsysctl_openbsd_arm.go +280 -0
  393. package/govendor/golang.org/x/sys/unix/zsysctl_openbsd_arm64.go +280 -0
  394. package/govendor/golang.org/x/sys/unix/zsysctl_openbsd_mips64.go +280 -0
  395. package/govendor/golang.org/x/sys/unix/zsysctl_openbsd_ppc64.go +280 -0
  396. package/govendor/golang.org/x/sys/unix/zsysctl_openbsd_riscv64.go +281 -0
  397. package/govendor/golang.org/x/sys/unix/zsysnum_darwin_amd64.go +439 -0
  398. package/govendor/golang.org/x/sys/unix/zsysnum_darwin_arm64.go +437 -0
  399. package/govendor/golang.org/x/sys/unix/zsysnum_dragonfly_amd64.go +316 -0
  400. package/govendor/golang.org/x/sys/unix/zsysnum_freebsd_386.go +393 -0
  401. package/govendor/golang.org/x/sys/unix/zsysnum_freebsd_amd64.go +393 -0
  402. package/govendor/golang.org/x/sys/unix/zsysnum_freebsd_arm.go +393 -0
  403. package/govendor/golang.org/x/sys/unix/zsysnum_freebsd_arm64.go +393 -0
  404. package/govendor/golang.org/x/sys/unix/zsysnum_freebsd_riscv64.go +393 -0
  405. package/govendor/golang.org/x/sys/unix/zsysnum_linux_386.go +470 -0
  406. package/govendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go +394 -0
  407. package/govendor/golang.org/x/sys/unix/zsysnum_linux_arm.go +434 -0
  408. package/govendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go +337 -0
  409. package/govendor/golang.org/x/sys/unix/zsysnum_linux_loong64.go +334 -0
  410. package/govendor/golang.org/x/sys/unix/zsysnum_linux_mips.go +454 -0
  411. package/govendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go +384 -0
  412. package/govendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go +384 -0
  413. package/govendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go +454 -0
  414. package/govendor/golang.org/x/sys/unix/zsysnum_linux_ppc.go +461 -0
  415. package/govendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go +433 -0
  416. package/govendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go +433 -0
  417. package/govendor/golang.org/x/sys/unix/zsysnum_linux_riscv64.go +338 -0
  418. package/govendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go +399 -0
  419. package/govendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go +413 -0
  420. package/govendor/golang.org/x/sys/unix/zsysnum_netbsd_386.go +274 -0
  421. package/govendor/golang.org/x/sys/unix/zsysnum_netbsd_amd64.go +274 -0
  422. package/govendor/golang.org/x/sys/unix/zsysnum_netbsd_arm.go +274 -0
  423. package/govendor/golang.org/x/sys/unix/zsysnum_netbsd_arm64.go +274 -0
  424. package/govendor/golang.org/x/sys/unix/zsysnum_openbsd_386.go +219 -0
  425. package/govendor/golang.org/x/sys/unix/zsysnum_openbsd_amd64.go +219 -0
  426. package/govendor/golang.org/x/sys/unix/zsysnum_openbsd_arm.go +219 -0
  427. package/govendor/golang.org/x/sys/unix/zsysnum_openbsd_arm64.go +218 -0
  428. package/govendor/golang.org/x/sys/unix/zsysnum_openbsd_mips64.go +221 -0
  429. package/govendor/golang.org/x/sys/unix/zsysnum_openbsd_ppc64.go +217 -0
  430. package/govendor/golang.org/x/sys/unix/zsysnum_openbsd_riscv64.go +218 -0
  431. package/govendor/golang.org/x/sys/unix/zsysnum_zos_s390x.go +2852 -0
  432. package/govendor/golang.org/x/sys/unix/ztypes_aix_ppc.go +353 -0
  433. package/govendor/golang.org/x/sys/unix/ztypes_aix_ppc64.go +357 -0
  434. package/govendor/golang.org/x/sys/unix/ztypes_darwin_amd64.go +878 -0
  435. package/govendor/golang.org/x/sys/unix/ztypes_darwin_arm64.go +878 -0
  436. package/govendor/golang.org/x/sys/unix/ztypes_dragonfly_amd64.go +473 -0
  437. package/govendor/golang.org/x/sys/unix/ztypes_freebsd_386.go +651 -0
  438. package/govendor/golang.org/x/sys/unix/ztypes_freebsd_amd64.go +656 -0
  439. package/govendor/golang.org/x/sys/unix/ztypes_freebsd_arm.go +642 -0
  440. package/govendor/golang.org/x/sys/unix/ztypes_freebsd_arm64.go +636 -0
  441. package/govendor/golang.org/x/sys/unix/ztypes_freebsd_riscv64.go +638 -0
  442. package/govendor/golang.org/x/sys/unix/ztypes_linux.go +6547 -0
  443. package/govendor/golang.org/x/sys/unix/ztypes_linux_386.go +747 -0
  444. package/govendor/golang.org/x/sys/unix/ztypes_linux_amd64.go +761 -0
  445. package/govendor/golang.org/x/sys/unix/ztypes_linux_arm.go +741 -0
  446. package/govendor/golang.org/x/sys/unix/ztypes_linux_arm64.go +740 -0
  447. package/govendor/golang.org/x/sys/unix/ztypes_linux_loong64.go +741 -0
  448. package/govendor/golang.org/x/sys/unix/ztypes_linux_mips.go +746 -0
  449. package/govendor/golang.org/x/sys/unix/ztypes_linux_mips64.go +743 -0
  450. package/govendor/golang.org/x/sys/unix/ztypes_linux_mips64le.go +743 -0
  451. package/govendor/golang.org/x/sys/unix/ztypes_linux_mipsle.go +746 -0
  452. package/govendor/golang.org/x/sys/unix/ztypes_linux_ppc.go +754 -0
  453. package/govendor/golang.org/x/sys/unix/ztypes_linux_ppc64.go +749 -0
  454. package/govendor/golang.org/x/sys/unix/ztypes_linux_ppc64le.go +749 -0
  455. package/govendor/golang.org/x/sys/unix/ztypes_linux_riscv64.go +828 -0
  456. package/govendor/golang.org/x/sys/unix/ztypes_linux_s390x.go +763 -0
  457. package/govendor/golang.org/x/sys/unix/ztypes_linux_sparc64.go +744 -0
  458. package/govendor/golang.org/x/sys/unix/ztypes_netbsd_386.go +585 -0
  459. package/govendor/golang.org/x/sys/unix/ztypes_netbsd_amd64.go +593 -0
  460. package/govendor/golang.org/x/sys/unix/ztypes_netbsd_arm.go +590 -0
  461. package/govendor/golang.org/x/sys/unix/ztypes_netbsd_arm64.go +593 -0
  462. package/govendor/golang.org/x/sys/unix/ztypes_openbsd_386.go +568 -0
  463. package/govendor/golang.org/x/sys/unix/ztypes_openbsd_amd64.go +568 -0
  464. package/govendor/golang.org/x/sys/unix/ztypes_openbsd_arm.go +575 -0
  465. package/govendor/golang.org/x/sys/unix/ztypes_openbsd_arm64.go +568 -0
  466. package/govendor/golang.org/x/sys/unix/ztypes_openbsd_mips64.go +568 -0
  467. package/govendor/golang.org/x/sys/unix/ztypes_openbsd_ppc64.go +570 -0
  468. package/govendor/golang.org/x/sys/unix/ztypes_openbsd_riscv64.go +570 -0
  469. package/govendor/golang.org/x/sys/unix/ztypes_solaris_amd64.go +516 -0
  470. package/govendor/golang.org/x/sys/unix/ztypes_zos_s390x.go +552 -0
  471. package/govendor/golang.org/x/sys/windows/aliases.go +13 -0
  472. package/govendor/golang.org/x/sys/windows/dll_windows.go +380 -0
  473. package/govendor/golang.org/x/sys/windows/env_windows.go +57 -0
  474. package/govendor/golang.org/x/sys/windows/eventlog.go +20 -0
  475. package/govendor/golang.org/x/sys/windows/exec_windows.go +248 -0
  476. package/govendor/golang.org/x/sys/windows/memory_windows.go +48 -0
  477. package/govendor/golang.org/x/sys/windows/mkerrors.bash +70 -0
  478. package/govendor/golang.org/x/sys/windows/mkknownfolderids.bash +27 -0
  479. package/govendor/golang.org/x/sys/windows/mksyscall.go +9 -0
  480. package/govendor/golang.org/x/sys/windows/race.go +30 -0
  481. package/govendor/golang.org/x/sys/windows/race0.go +25 -0
  482. package/govendor/golang.org/x/sys/windows/security_windows.go +1537 -0
  483. package/govendor/golang.org/x/sys/windows/service.go +257 -0
  484. package/govendor/golang.org/x/sys/windows/setupapi_windows.go +1425 -0
  485. package/govendor/golang.org/x/sys/windows/str.go +22 -0
  486. package/govendor/golang.org/x/sys/windows/syscall.go +104 -0
  487. package/govendor/golang.org/x/sys/windows/syscall_windows.go +1952 -0
  488. package/govendor/golang.org/x/sys/windows/types_windows.go +4058 -0
  489. package/govendor/golang.org/x/sys/windows/types_windows_386.go +35 -0
  490. package/govendor/golang.org/x/sys/windows/types_windows_amd64.go +34 -0
  491. package/govendor/golang.org/x/sys/windows/types_windows_arm.go +35 -0
  492. package/govendor/golang.org/x/sys/windows/types_windows_arm64.go +34 -0
  493. package/govendor/golang.org/x/sys/windows/zerrors_windows.go +9468 -0
  494. package/govendor/golang.org/x/sys/windows/zknownfolderids_windows.go +149 -0
  495. package/govendor/golang.org/x/sys/windows/zsyscall_windows.go +4828 -0
  496. package/govendor/manifest.txt +7 -0
  497. package/package.json +6 -1
  498. package/types/typenative-go.d.ts +15159 -5
  499. package/types/typenative-npm.d.ts +2637 -34
  500. package/types/typenative.d.ts +651 -8
@@ -0,0 +1,599 @@
1
+ // More of node:util: parseArgs, getSystemErrorName / Map / Message,
2
+ // MIMEType, parseEnv (+ process.loadEnvFile), aborted, debuglog.
3
+ import { defineClass, defineHelper, setResults } from './registry.js';
4
+ const utilExtraHelper = `// node:util extras
5
+ type TnParsedArgs struct {
6
+ values *TnMap[string, interface{}]
7
+ positionals []string
8
+ tokens []*TnMap[string, interface{}]
9
+ }
10
+
11
+ type tnArgOption struct {
12
+ name string
13
+ kind string
14
+ short string
15
+ multiple bool
16
+ def interface{}
17
+ }
18
+
19
+ func tnParseArgsError(code string, message string) *TnError {
20
+ return TnNodeError("TypeError", code, message)
21
+ }
22
+
23
+ // parseArgs({ args, options, strict, allowPositionals, allowNegative, tokens })
24
+ func TnParseArgs(config ...interface{}) *TnParsedArgs {
25
+ var cfg interface{}
26
+ if len(config) > 0 {
27
+ cfg = config[0]
28
+ }
29
+ args := []string{}
30
+ if a := TnGet(cfg, "args"); a != nil && !TnIsNil(a) {
31
+ rv := reflect.ValueOf(a)
32
+ if rv.Kind() == reflect.Pointer {
33
+ rv = rv.Elem()
34
+ }
35
+ for i := 0; i < rv.Len(); i++ {
36
+ args = append(args, TnJSString(rv.Index(i).Interface()))
37
+ }
38
+ } else if len(os.Args) > 1 {
39
+ args = append(args, os.Args[1:]...)
40
+ }
41
+ strict := true
42
+ if b, ok := TnGet(cfg, "strict").(bool); ok {
43
+ strict = b
44
+ }
45
+ allowPositionals := !strict
46
+ if b, ok := TnGet(cfg, "allowPositionals").(bool); ok {
47
+ allowPositionals = b
48
+ }
49
+ allowNegative, _ := TnGet(cfg, "allowNegative").(bool)
50
+ wantTokens, _ := TnGet(cfg, "tokens").(bool)
51
+ options := []tnArgOption{}
52
+ if opts := TnGet(cfg, "options"); opts != nil {
53
+ for _, e := range tnArgEntries(opts) {
54
+ o := tnArgOption{name: fmt.Sprint(e[0]), kind: "boolean"}
55
+ if k, ok := TnGet(e[1], "type").(string); ok {
56
+ o.kind = k
57
+ }
58
+ o.short, _ = TnGet(e[1], "short").(string)
59
+ o.multiple, _ = TnGet(e[1], "multiple").(bool)
60
+ o.def = TnGet(e[1], "default")
61
+ options = append(options, o)
62
+ }
63
+ }
64
+ find := func(name string) *tnArgOption {
65
+ for i := range options {
66
+ if options[i].name == name {
67
+ return &options[i]
68
+ }
69
+ }
70
+ return nil
71
+ }
72
+ findShort := func(short string) *tnArgOption {
73
+ for i := range options {
74
+ if options[i].short == short {
75
+ return &options[i]
76
+ }
77
+ }
78
+ return nil
79
+ }
80
+ label := func(o *tnArgOption, raw string) string {
81
+ if o == nil {
82
+ return raw
83
+ }
84
+ if o.short != "" {
85
+ return "-" + o.short + ", --" + o.name
86
+ }
87
+ return "--" + o.name
88
+ }
89
+ result := &TnParsedArgs{values: TnNewMap[string, interface{}](), positionals: []string{}}
90
+ tokens := []*TnMap[string, interface{}]{}
91
+ store := func(o *tnArgOption, name string, value interface{}) {
92
+ if o != nil && o.multiple {
93
+ list, _ := result.values.Get(name).([]interface{})
94
+ result.values.Set(name, append(list, value))
95
+ return
96
+ }
97
+ result.values.Set(name, value)
98
+ }
99
+ option := func(index int, raw string, name string, value *string, inline bool) {
100
+ o := find(name)
101
+ negated := false
102
+ if o == nil && allowNegative && strings.HasPrefix(name, "no-") {
103
+ if no := find(strings.TrimPrefix(name, "no-")); no != nil && no.kind == "boolean" {
104
+ o, negated, name = no, true, no.name
105
+ }
106
+ }
107
+ if o == nil && strict {
108
+ panic(tnParseArgsError("ERR_PARSE_ARGS_UNKNOWN_OPTION", "Unknown option '"+raw+"'"))
109
+ }
110
+ kind := "boolean"
111
+ if o != nil {
112
+ kind = o.kind
113
+ } else if value != nil {
114
+ kind = "string"
115
+ }
116
+ token := TnNewMap[string, interface{}]()
117
+ token.Set("kind", "option")
118
+ token.Set("name", name)
119
+ token.Set("rawName", raw)
120
+ token.Set("index", float64(index))
121
+ if kind == "string" {
122
+ if value == nil {
123
+ if strict {
124
+ panic(tnParseArgsError("ERR_PARSE_ARGS_INVALID_OPTION_VALUE", "Option '"+label(o, raw)+" <value>' argument missing"))
125
+ }
126
+ store(o, name, true)
127
+ } else {
128
+ store(o, name, *value)
129
+ token.Set("value", *value)
130
+ token.Set("inlineValue", inline)
131
+ }
132
+ } else {
133
+ if value != nil && strict {
134
+ panic(tnParseArgsError("ERR_PARSE_ARGS_INVALID_OPTION_VALUE", "Option '"+label(o, raw)+"' does not take an argument"))
135
+ }
136
+ store(o, name, !negated)
137
+ }
138
+ tokens = append(tokens, token)
139
+ }
140
+ for i := 0; i < len(args); i++ {
141
+ arg := args[i]
142
+ switch {
143
+ case arg == "--":
144
+ token := TnNewMap[string, interface{}]()
145
+ token.Set("kind", "option-terminator")
146
+ token.Set("index", float64(i))
147
+ tokens = append(tokens, token)
148
+ for j := i + 1; j < len(args); j++ {
149
+ if !allowPositionals {
150
+ panic(tnParseArgsError("ERR_PARSE_ARGS_UNEXPECTED_POSITIONAL", "Unexpected argument '"+args[j]+"'. This command does not take positional arguments"))
151
+ }
152
+ result.positionals = append(result.positionals, args[j])
153
+ pt := TnNewMap[string, interface{}]()
154
+ pt.Set("kind", "positional")
155
+ pt.Set("index", float64(j))
156
+ pt.Set("value", args[j])
157
+ tokens = append(tokens, pt)
158
+ }
159
+ i = len(args)
160
+ case strings.HasPrefix(arg, "--"):
161
+ name := arg[2:]
162
+ if eq := strings.Index(name, "="); eq >= 0 {
163
+ value := name[eq+1:]
164
+ option(i, "--"+name[:eq], name[:eq], &value, true)
165
+ continue
166
+ }
167
+ o := find(name)
168
+ if o != nil && o.kind == "string" && i+1 < len(args) {
169
+ value := args[i+1]
170
+ option(i, arg, name, &value, false)
171
+ i++
172
+ continue
173
+ }
174
+ option(i, arg, name, nil, false)
175
+ case len(arg) > 1 && arg[0] == '-':
176
+ shorts := arg[1:]
177
+ for k := 0; k < len(shorts); k++ {
178
+ ch := string(shorts[k])
179
+ o := findShort(ch)
180
+ name := ch
181
+ if o != nil {
182
+ name = o.name
183
+ }
184
+ if o != nil && o.kind == "string" {
185
+ if k+1 < len(shorts) {
186
+ value := shorts[k+1:]
187
+ option(i, "-"+ch, name, &value, true)
188
+ } else if i+1 < len(args) {
189
+ value := args[i+1]
190
+ option(i, "-"+ch, name, &value, false)
191
+ i++
192
+ } else {
193
+ option(i, "-"+ch, name, nil, false)
194
+ }
195
+ break
196
+ }
197
+ option(i, "-"+ch, name, nil, false)
198
+ }
199
+ default:
200
+ if !allowPositionals {
201
+ panic(tnParseArgsError("ERR_PARSE_ARGS_UNEXPECTED_POSITIONAL", "Unexpected argument '"+arg+"'. This command does not take positional arguments"))
202
+ }
203
+ result.positionals = append(result.positionals, arg)
204
+ pt := TnNewMap[string, interface{}]()
205
+ pt.Set("kind", "positional")
206
+ pt.Set("index", float64(i))
207
+ pt.Set("value", arg)
208
+ tokens = append(tokens, pt)
209
+ }
210
+ }
211
+ for _, o := range options {
212
+ if o.def != nil && !TnIsNil(o.def) && !result.values.Has(o.name) {
213
+ result.values.Set(o.name, o.def)
214
+ }
215
+ }
216
+ if wantTokens {
217
+ result.tokens = tokens
218
+ }
219
+ return result
220
+ }
221
+
222
+ // Name / value pairs of an options object (records keep their order)
223
+ func tnArgEntries(v interface{}) [][2]interface{} {
224
+ out := [][2]interface{}{}
225
+ if withEntries, ok := v.(interface{ Entries() [][]interface{} }); ok {
226
+ for _, e := range withEntries.Entries() {
227
+ out = append(out, [2]interface{}{e[0], e[1]})
228
+ }
229
+ return out
230
+ }
231
+ if m, ok := v.(map[string]interface{}); ok {
232
+ keys := make([]string, 0, len(m))
233
+ for k := range m {
234
+ keys = append(keys, k)
235
+ }
236
+ sort.Strings(keys)
237
+ for _, k := range keys {
238
+ out = append(out, [2]interface{}{k, m[k]})
239
+ }
240
+ return out
241
+ }
242
+ rv := reflect.ValueOf(v)
243
+ if rv.Kind() == reflect.Pointer && !rv.IsNil() && rv.Elem().Kind() == reflect.Struct {
244
+ sv := rv.Elem()
245
+ for i := 0; i < sv.NumField(); i++ {
246
+ f := sv.Field(i)
247
+ value := reflect.NewAt(f.Type(), unsafe.Pointer(f.UnsafeAddr())).Elem().Interface()
248
+ out = append(out, [2]interface{}{strings.TrimSuffix(sv.Type().Field(i).Name, "_"), value})
249
+ }
250
+ }
251
+ return out
252
+ }
253
+
254
+ // --- system errors ---
255
+
256
+ var tnSystemErrors = map[string]syscall.Errno{
257
+ "E2BIG": syscall.E2BIG, "EACCES": syscall.EACCES, "EADDRINUSE": syscall.EADDRINUSE, "EADDRNOTAVAIL": syscall.EADDRNOTAVAIL,
258
+ "EAFNOSUPPORT": syscall.EAFNOSUPPORT, "EAGAIN": syscall.EAGAIN, "EALREADY": syscall.EALREADY, "EBADF": syscall.EBADF,
259
+ "EBUSY": syscall.EBUSY, "ECANCELED": syscall.ECANCELED, "ECONNABORTED": syscall.ECONNABORTED, "ECONNREFUSED": syscall.ECONNREFUSED,
260
+ "ECONNRESET": syscall.ECONNRESET, "EDESTADDRREQ": syscall.EDESTADDRREQ, "EEXIST": syscall.EEXIST, "EFAULT": syscall.EFAULT,
261
+ "EFBIG": syscall.EFBIG, "EHOSTUNREACH": syscall.EHOSTUNREACH, "EINTR": syscall.EINTR, "EINVAL": syscall.EINVAL,
262
+ "EIO": syscall.EIO, "EISCONN": syscall.EISCONN, "EISDIR": syscall.EISDIR, "ELOOP": syscall.ELOOP, "EMFILE": syscall.EMFILE,
263
+ "EMLINK": syscall.EMLINK, "EMSGSIZE": syscall.EMSGSIZE, "ENAMETOOLONG": syscall.ENAMETOOLONG, "ENETDOWN": syscall.ENETDOWN,
264
+ "ENETUNREACH": syscall.ENETUNREACH, "ENFILE": syscall.ENFILE, "ENOBUFS": syscall.ENOBUFS, "ENODEV": syscall.ENODEV,
265
+ "ENOENT": syscall.ENOENT, "ENOMEM": syscall.ENOMEM, "ENOSPC": syscall.ENOSPC, "ENOSYS": syscall.ENOSYS,
266
+ "ENOTCONN": syscall.ENOTCONN, "ENOTDIR": syscall.ENOTDIR, "ENOTEMPTY": syscall.ENOTEMPTY, "ENOTSOCK": syscall.ENOTSOCK,
267
+ "ENOTSUP": syscall.ENOTSUP, "ENXIO": syscall.ENXIO, "EPERM": syscall.EPERM, "EPIPE": syscall.EPIPE,
268
+ "EPROTO": syscall.EPROTO, "EPROTONOSUPPORT": syscall.EPROTONOSUPPORT, "EPROTOTYPE": syscall.EPROTOTYPE,
269
+ "ERANGE": syscall.ERANGE, "EROFS": syscall.EROFS, "ESPIPE": syscall.ESPIPE, "ESRCH": syscall.ESRCH,
270
+ "ETIMEDOUT": syscall.ETIMEDOUT, "ETXTBSY": syscall.ETXTBSY, "EXDEV": syscall.EXDEV,
271
+ }
272
+
273
+ func tnSystemErrorEntry(errno float64) (string, string, bool) {
274
+ if errno >= 0 || errno != float64(int64(errno)) {
275
+ panic(TnNodeError("RangeError", "ERR_OUT_OF_RANGE", "The value of \\"err\\" is out of range. It must be a negative integer. Received "+TnNumStr(errno)))
276
+ }
277
+ target := syscall.Errno(int64(-errno))
278
+ for name, e := range tnSystemErrors {
279
+ if e == target {
280
+ return name, e.Error(), true
281
+ }
282
+ }
283
+ return "", "", false
284
+ }
285
+
286
+ func TnGetSystemErrorName(errno float64) string {
287
+ name, _, ok := tnSystemErrorEntry(errno)
288
+ if !ok {
289
+ return "Unknown system error " + TnNumStr(errno)
290
+ }
291
+ return name
292
+ }
293
+
294
+ func TnGetSystemErrorMessage(errno float64) string {
295
+ _, message, ok := tnSystemErrorEntry(errno)
296
+ if !ok {
297
+ return "Unknown system error " + TnNumStr(errno)
298
+ }
299
+ return message
300
+ }
301
+
302
+ func TnGetSystemErrorMap() *TnMap[float64, []string] {
303
+ m := TnNewMap[float64, []string]()
304
+ names := make([]string, 0, len(tnSystemErrors))
305
+ for name := range tnSystemErrors {
306
+ names = append(names, name)
307
+ }
308
+ sort.Slice(names, func(i, j int) bool { return tnSystemErrors[names[i]] < tnSystemErrors[names[j]] })
309
+ for _, name := range names {
310
+ e := tnSystemErrors[name]
311
+ m.Set(-float64(e), []string{name, e.Error()})
312
+ }
313
+ return m
314
+ }
315
+
316
+ // --- MIMEType ---
317
+
318
+ type TnMIMEParams struct {
319
+ keys []string
320
+ values map[string]string
321
+ }
322
+
323
+ type TnMIMEType struct {
324
+ type_ string
325
+ subtype string
326
+ params *TnMIMEParams
327
+ }
328
+
329
+ func tnMIMEToken(s string) bool {
330
+ if s == "" {
331
+ return false
332
+ }
333
+ for _, c := range s {
334
+ if c <= 32 || c >= 127 || strings.ContainsRune("()<>@,;:\\\\\\"/[]?=", c) {
335
+ return false
336
+ }
337
+ }
338
+ return true
339
+ }
340
+
341
+ func TnNewMIMEType(input interface{}) *TnMIMEType {
342
+ raw := strings.TrimSpace(TnJSString(input))
343
+ head, rest, _ := strings.Cut(raw, ";")
344
+ typ, sub, ok := strings.Cut(strings.TrimSpace(head), "/")
345
+ typ, sub = strings.ToLower(strings.TrimSpace(typ)), strings.ToLower(strings.TrimSpace(sub))
346
+ if !ok || !tnMIMEToken(typ) || !tnMIMEToken(sub) {
347
+ panic(TnNodeError("TypeError", "ERR_INVALID_MIME_SYNTAX", "The MIME syntax for a type in \\""+raw+"\\" is invalid"))
348
+ }
349
+ m := &TnMIMEType{type_: typ, subtype: sub, params: &TnMIMEParams{values: map[string]string{}}}
350
+ for rest != "" {
351
+ var part string
352
+ part, rest = tnMIMENextParam(rest)
353
+ name, value, found := strings.Cut(part, "=")
354
+ name = strings.ToLower(strings.TrimSpace(name))
355
+ if !found || !tnMIMEToken(name) {
356
+ continue
357
+ }
358
+ value = strings.TrimSpace(value)
359
+ if strings.HasPrefix(value, "\\"") {
360
+ value = strings.TrimSuffix(strings.TrimPrefix(value, "\\""), "\\"")
361
+ value = strings.ReplaceAll(value, "\\\\", "")
362
+ }
363
+ if _, exists := m.params.values[name]; !exists {
364
+ m.params.set(name, value)
365
+ }
366
+ }
367
+ return m
368
+ }
369
+
370
+ // The next ;-separated parameter (quoted values may contain ;)
371
+ func tnMIMENextParam(s string) (string, string) {
372
+ quoted := false
373
+ for i := 0; i < len(s); i++ {
374
+ switch s[i] {
375
+ case '"':
376
+ quoted = !quoted
377
+ case ';':
378
+ if !quoted {
379
+ return s[:i], s[i+1:]
380
+ }
381
+ }
382
+ }
383
+ return s, ""
384
+ }
385
+
386
+ func (m *TnMIMEType) Get_type_() string { return m.type_ }
387
+ func (m *TnMIMEType) Set_type_(v string) { m.type_ = strings.ToLower(v) }
388
+ func (m *TnMIMEType) Get_subtype() string { return m.subtype }
389
+ func (m *TnMIMEType) Set_subtype(v string) { m.subtype = strings.ToLower(v) }
390
+ func (m *TnMIMEType) Get_essence() string { return m.type_ + "/" + m.subtype }
391
+ func (m *TnMIMEType) Get_params() *TnMIMEParams { return m.params }
392
+ func (m *TnMIMEType) toString() string { return m.Get_essence() + m.params.serialize() }
393
+ func (m *TnMIMEType) toJSON() string { return m.toString() }
394
+
395
+ func (p *TnMIMEParams) get(name string) *string {
396
+ v, ok := p.values[strings.ToLower(name)]
397
+ if !ok {
398
+ return nil
399
+ }
400
+ return &v
401
+ }
402
+
403
+ func (p *TnMIMEParams) has(name string) bool {
404
+ _, ok := p.values[strings.ToLower(name)]
405
+ return ok
406
+ }
407
+
408
+ func (p *TnMIMEParams) set(name string, value string) {
409
+ name = strings.ToLower(name)
410
+ if _, ok := p.values[name]; !ok {
411
+ p.keys = append(p.keys, name)
412
+ }
413
+ p.values[name] = value
414
+ }
415
+
416
+ func (p *TnMIMEParams) delete(name string) {
417
+ name = strings.ToLower(name)
418
+ delete(p.values, name)
419
+ kept := []string{}
420
+ for _, k := range p.keys {
421
+ if k != name {
422
+ kept = append(kept, k)
423
+ }
424
+ }
425
+ p.keys = kept
426
+ }
427
+
428
+ func (p *TnMIMEParams) keysList() []string { return append([]string{}, p.keys...) }
429
+
430
+ func (p *TnMIMEParams) valuesList() []string {
431
+ out := []string{}
432
+ for _, k := range p.keys {
433
+ out = append(out, p.values[k])
434
+ }
435
+ return out
436
+ }
437
+
438
+ func (p *TnMIMEParams) entries() [][]string {
439
+ out := [][]string{}
440
+ for _, k := range p.keys {
441
+ out = append(out, []string{k, p.values[k]})
442
+ }
443
+ return out
444
+ }
445
+
446
+ func (p *TnMIMEParams) serialize() string {
447
+ var b strings.Builder
448
+ for _, k := range p.keys {
449
+ v := p.values[k]
450
+ if v == "" || !tnMIMEToken(v) {
451
+ v = "\\"" + strings.NewReplacer("\\\\", "\\\\\\\\", "\\"", "\\\\\\"").Replace(v) + "\\""
452
+ }
453
+ b.WriteString(";" + k + "=" + v)
454
+ }
455
+ return b.String()
456
+ }
457
+
458
+ func (p *TnMIMEParams) toString() string { return strings.TrimPrefix(p.serialize(), ";") }
459
+
460
+ // --- .env files ---
461
+
462
+ // parseEnv(content): KEY=value lines, # comments, export prefixes, quoted values
463
+ // (double quotes expand \\n; they and backticks may span lines)
464
+ func TnParseEnv(content string) *TnMap[string, string] {
465
+ out := TnNewMap[string, string]()
466
+ lines := strings.Split(strings.ReplaceAll(content, "\\r\\n", "\\n"), "\\n")
467
+ for i := 0; i < len(lines); i++ {
468
+ line := strings.TrimSpace(lines[i])
469
+ if line == "" || strings.HasPrefix(line, "#") {
470
+ continue
471
+ }
472
+ line = strings.TrimPrefix(line, "export ")
473
+ key, value, ok := strings.Cut(line, "=")
474
+ if !ok {
475
+ continue
476
+ }
477
+ key = strings.TrimSpace(key)
478
+ value = strings.TrimSpace(value)
479
+ if value != "" && strings.ContainsRune("\\"'\`", rune(value[0])) {
480
+ q := value[0]
481
+ body := value[1:]
482
+ for strings.IndexByte(body, q) < 0 && i+1 < len(lines) {
483
+ i++
484
+ body += "\\n" + lines[i]
485
+ }
486
+ if end := strings.IndexByte(body, q); end >= 0 {
487
+ body = body[:end]
488
+ }
489
+ if q == '"' {
490
+ body = strings.ReplaceAll(body, "\\\\n", "\\n")
491
+ }
492
+ value = body
493
+ } else if hash := strings.Index(value, " #"); hash >= 0 {
494
+ value = strings.TrimSpace(value[:hash])
495
+ }
496
+ out.Set(key, value)
497
+ }
498
+ return out
499
+ }
500
+
501
+ // process.loadEnvFile(path = '.env'): variables already set win
502
+ func TnLoadEnvFile(path ...string) {
503
+ file := ".env"
504
+ if len(path) > 0 && path[0] != "" {
505
+ file = path[0]
506
+ }
507
+ data, err := os.ReadFile(file)
508
+ if err != nil {
509
+ panic(TnSysError(err, "open", file))
510
+ }
511
+ for k, v := range TnParseEnv(string(data)).All() {
512
+ if _, set := os.LookupEnv(k); !set {
513
+ os.Setenv(k, v)
514
+ }
515
+ }
516
+ }
517
+
518
+ // aborted(signal, resource): resolves once the signal aborts
519
+ func TnUtilAborted(signal *TnAbortSignal, resource interface{}) chan struct{} {
520
+ ch := make(chan struct{})
521
+ if signal.aborted {
522
+ close(ch)
523
+ return ch
524
+ }
525
+ TnLoopRef()
526
+ signal.addEventListener("abort", func(ev *TnEvent) {
527
+ TnLoopUnref()
528
+ close(ch)
529
+ }, map[string]interface{}{"once": true})
530
+ return ch
531
+ }
532
+
533
+ // debuglog(section): logs "SECTION pid: message" to stderr when NODE_DEBUG names the section
534
+ func tnDebugEnabled(section string) bool {
535
+ for _, name := range strings.Split(os.Getenv("NODE_DEBUG"), ",") {
536
+ name = strings.TrimSpace(name)
537
+ if name == "" {
538
+ continue
539
+ }
540
+ pattern := "^" + strings.ReplaceAll(regexp.QuoteMeta(name), "\\\\*", ".*") + "$"
541
+ if ok, _ := regexp.MatchString("(?i)"+pattern, section); ok {
542
+ return true
543
+ }
544
+ }
545
+ return false
546
+ }
547
+
548
+ func TnDebuglog(section string, cb ...interface{}) func(args ...interface{}) {
549
+ enabled := tnDebugEnabled(section)
550
+ prefix := strings.ToUpper(section) + " " + strconv.Itoa(os.Getpid()) + ": "
551
+ return func(args ...interface{}) {
552
+ if enabled {
553
+ fmt.Fprintln(os.Stderr, prefix+TnUtilFormat(args...))
554
+ }
555
+ }
556
+ }
557
+
558
+ func TnDebuglogEnabled(section string) bool { return tnDebugEnabled(section) }
559
+
560
+ // toUSVString: invalid sequences become U+FFFD
561
+ func TnToUSVString(s string) string { return strings.ToValidUTF8(s, "\uFFFD") }`;
562
+ export function registerUtilExtra(r) {
563
+ defineHelper(r, 'nodeUtilExtra', ['fmt', 'os', 'reflect', 'regexp', 'sort', 'strconv', 'strings', 'syscall', 'unsafe'], ['nodeUtil', 'dynamic', 'orderedMap', 'error', 'eventLoop', 'nodeEvents', 'fsErrors'], utilExtraHelper);
564
+ const use = () => r.helper('nodeUtilExtra');
565
+ const fn = (key, result, emit) => {
566
+ r.functions[key] = (c) => {
567
+ use();
568
+ return emit(c);
569
+ };
570
+ if (result)
571
+ r.results[key] = result;
572
+ };
573
+ defineClass(r, 'util.ParsedArgs', '*TnParsedArgs', 'class', '', 'values=*TnMap[string, interface{}]; positionals=[]string; tokens=[]*TnMap[string, interface{}]', '', '');
574
+ fn('util.parseArgs', '*TnParsedArgs', (c) => `TnParseArgs(${c.args.join(', ')})`);
575
+ fn('util.getSystemErrorName', 'string', (c) => `TnGetSystemErrorName(${c.args[0]})`);
576
+ fn('util.getSystemErrorMessage', 'string', (c) => `TnGetSystemErrorMessage(${c.args[0]})`);
577
+ fn('util.getSystemErrorMap', '*TnMap[float64, []string]', (_c) => 'TnGetSystemErrorMap()');
578
+ fn('util.parseEnv', '*TnMap[string, string]', (c) => `TnParseEnv(${c.args[0]})`);
579
+ fn('process.loadEnvFile', '', (c) => `TnLoadEnvFile(${c.args.join(', ')})`);
580
+ fn('util.aborted', 'chan struct{}', (c) => `TnUtilAborted(${c.args[0]}, ${c.args[1] ?? 'nil'})`);
581
+ fn('util.debuglog', 'func(...interface{})', (c) => `TnDebuglog(${c.args.join(', ')})`);
582
+ fn('util.debug', 'func(...interface{})', (c) => `TnDebuglog(${c.args.join(', ')})`);
583
+ fn('util.toUSVString', 'string', (c) => `TnToUSVString(${c.args[0]})`);
584
+ defineClass(r, 'util.MIMEType', '*TnMIMEType', 'class', 'toString=string; toJSON=string', '', 'type=string; subtype=string; essence=string; params=*TnMIMEParams', 'type; subtype');
585
+ defineClass(r, 'util.MIMEParams', '*TnMIMEParams', 'class', 'get=*string; has=bool; set=; delete=; toString=string', '', '', '');
586
+ r.methods['util.MIMEParams#keys'] = (c) => `${c.recv}.keysList()`;
587
+ r.results['util.MIMEParams#keys'] = '[]string';
588
+ r.methods['util.MIMEParams#values'] = (c) => `${c.recv}.valuesList()`;
589
+ r.results['util.MIMEParams#values'] = '[]string';
590
+ r.methods['util.MIMEParams#entries'] = (c) => `${c.recv}.entries()`;
591
+ r.results['util.MIMEParams#entries'] = '[][]string';
592
+ r.iterators['*TnMIMEParams'] = 'entries';
593
+ r.classes['util.MIMEParams'].methods['entries'] = '[][]string';
594
+ r.constructors['util.MIMEType'] = (c) => {
595
+ use();
596
+ return `TnNewMIMEType(${c.args[0]})`;
597
+ };
598
+ setResults(r, 'util', '');
599
+ }