typenative 0.1.3 → 0.3.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 (505) hide show
  1. package/.gitattributes +1 -0
  2. package/.github/workflows/ci.yml +39 -2
  3. package/.github/workflows/npm-publish-github-packages.yml +7 -2
  4. package/CHANGELOG.md +293 -0
  5. package/CONTRIBUTION.md +8 -6
  6. package/README.md +15 -11
  7. package/bin/cli.js +7 -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 +337 -239
  14. package/bin/main.js +9 -2
  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 +714 -0
  45. package/bin/node/test.js +1068 -0
  46. package/bin/node/timers.js +263 -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/parse-native.js +10 -0
  54. package/bin/parse-node.js +10 -0
  55. package/bin/transpiler.js +2824 -588
  56. package/bin/typecheck-node.js +78 -0
  57. package/bin/version.js +2 -0
  58. package/conformance.md +708 -241
  59. package/govendor/github.com/ncruces/go-sqlite3/LICENSE +21 -0
  60. package/govendor/github.com/ncruces/go-sqlite3/README.md +121 -0
  61. package/govendor/github.com/ncruces/go-sqlite3/backup.go +132 -0
  62. package/govendor/github.com/ncruces/go-sqlite3/blob.go +266 -0
  63. package/govendor/github.com/ncruces/go-sqlite3/config.go +397 -0
  64. package/govendor/github.com/ncruces/go-sqlite3/conn.go +540 -0
  65. package/govendor/github.com/ncruces/go-sqlite3/conn_127.go +93 -0
  66. package/govendor/github.com/ncruces/go-sqlite3/const.go +436 -0
  67. package/govendor/github.com/ncruces/go-sqlite3/context.go +222 -0
  68. package/govendor/github.com/ncruces/go-sqlite3/error.go +182 -0
  69. package/govendor/github.com/ncruces/go-sqlite3/ext.go +153 -0
  70. package/govendor/github.com/ncruces/go-sqlite3/func.go +309 -0
  71. package/govendor/github.com/ncruces/go-sqlite3/go.mod +3 -0
  72. package/govendor/github.com/ncruces/go-sqlite3/internal/dotlk/dotlk.go +29 -0
  73. package/govendor/github.com/ncruces/go-sqlite3/internal/dotlk/dotlk_other.go +13 -0
  74. package/govendor/github.com/ncruces/go-sqlite3/internal/dotlk/dotlk_unix.go +57 -0
  75. package/govendor/github.com/ncruces/go-sqlite3/internal/errutil/error.go +41 -0
  76. package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/alloc.go +128 -0
  77. package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/const.go +122 -0
  78. package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/error.go +77 -0
  79. package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/mem.go +116 -0
  80. package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/mem_other.go +34 -0
  81. package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/mem_unix.go +87 -0
  82. package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/mem_windows.go +149 -0
  83. package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/mmap_unix.go +80 -0
  84. package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/mmap_windows.go +129 -0
  85. package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/sys_windows.go +60 -0
  86. package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/wrap.go +82 -0
  87. package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/wrap_sys.go +113 -0
  88. package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/wrap_vfs.go +181 -0
  89. package/govendor/github.com/ncruces/go-sqlite3/internal/testenv/env.go +55 -0
  90. package/govendor/github.com/ncruces/go-sqlite3/internal/util/json.go +54 -0
  91. package/govendor/github.com/ncruces/go-sqlite3/internal/util/json_v2.go +54 -0
  92. package/govendor/github.com/ncruces/go-sqlite3/internal/util/math.go +29 -0
  93. package/govendor/github.com/ncruces/go-sqlite3/internal/util/page.go +5 -0
  94. package/govendor/github.com/ncruces/go-sqlite3/internal/util/parse.go +142 -0
  95. package/govendor/github.com/ncruces/go-sqlite3/internal/util/pointer.go +3 -0
  96. package/govendor/github.com/ncruces/go-sqlite3/internal/util/reflect.go +10 -0
  97. package/govendor/github.com/ncruces/go-sqlite3/json.go +100 -0
  98. package/govendor/github.com/ncruces/go-sqlite3/json_v2.go +116 -0
  99. package/govendor/github.com/ncruces/go-sqlite3/pointer.go +13 -0
  100. package/govendor/github.com/ncruces/go-sqlite3/quote.go +140 -0
  101. package/govendor/github.com/ncruces/go-sqlite3/stmt.go +692 -0
  102. package/govendor/github.com/ncruces/go-sqlite3/time.go +360 -0
  103. package/govendor/github.com/ncruces/go-sqlite3/txn.go +374 -0
  104. package/govendor/github.com/ncruces/go-sqlite3/value.go +212 -0
  105. package/govendor/github.com/ncruces/go-sqlite3/vfs/README.md +133 -0
  106. package/govendor/github.com/ncruces/go-sqlite3/vfs/api.go +239 -0
  107. package/govendor/github.com/ncruces/go-sqlite3/vfs/cksm.go +143 -0
  108. package/govendor/github.com/ncruces/go-sqlite3/vfs/const.go +256 -0
  109. package/govendor/github.com/ncruces/go-sqlite3/vfs/file.go +260 -0
  110. package/govendor/github.com/ncruces/go-sqlite3/vfs/filename.go +187 -0
  111. package/govendor/github.com/ncruces/go-sqlite3/vfs/lock.go +128 -0
  112. package/govendor/github.com/ncruces/go-sqlite3/vfs/lock_other.go +23 -0
  113. package/govendor/github.com/ncruces/go-sqlite3/vfs/map.go +63 -0
  114. package/govendor/github.com/ncruces/go-sqlite3/vfs/map_other.go +13 -0
  115. package/govendor/github.com/ncruces/go-sqlite3/vfs/os_bsd.go +110 -0
  116. package/govendor/github.com/ncruces/go-sqlite3/vfs/os_darwin.go +131 -0
  117. package/govendor/github.com/ncruces/go-sqlite3/vfs/os_dotlk.go +140 -0
  118. package/govendor/github.com/ncruces/go-sqlite3/vfs/os_f2fs_linux.go +56 -0
  119. package/govendor/github.com/ncruces/go-sqlite3/vfs/os_linux.go +117 -0
  120. package/govendor/github.com/ncruces/go-sqlite3/vfs/os_ofd.go +59 -0
  121. package/govendor/github.com/ncruces/go-sqlite3/vfs/os_std.go +50 -0
  122. package/govendor/github.com/ncruces/go-sqlite3/vfs/os_std_alloc.go +19 -0
  123. package/govendor/github.com/ncruces/go-sqlite3/vfs/os_std_atomic.go +9 -0
  124. package/govendor/github.com/ncruces/go-sqlite3/vfs/os_std_rw.go +13 -0
  125. package/govendor/github.com/ncruces/go-sqlite3/vfs/os_std_sync.go +9 -0
  126. package/govendor/github.com/ncruces/go-sqlite3/vfs/os_std_temp.go +16 -0
  127. package/govendor/github.com/ncruces/go-sqlite3/vfs/os_unix.go +108 -0
  128. package/govendor/github.com/ncruces/go-sqlite3/vfs/os_windows.go +180 -0
  129. package/govendor/github.com/ncruces/go-sqlite3/vfs/registry.go +48 -0
  130. package/govendor/github.com/ncruces/go-sqlite3/vfs/shm.go +26 -0
  131. package/govendor/github.com/ncruces/go-sqlite3/vfs/shm_bsd.go +258 -0
  132. package/govendor/github.com/ncruces/go-sqlite3/vfs/shm_copy.go +90 -0
  133. package/govendor/github.com/ncruces/go-sqlite3/vfs/shm_dotlk.go +168 -0
  134. package/govendor/github.com/ncruces/go-sqlite3/vfs/shm_memlk.go +52 -0
  135. package/govendor/github.com/ncruces/go-sqlite3/vfs/shm_ofd.go +185 -0
  136. package/govendor/github.com/ncruces/go-sqlite3/vfs/shm_other.go +21 -0
  137. package/govendor/github.com/ncruces/go-sqlite3/vfs/shm_windows.go +124 -0
  138. package/govendor/github.com/ncruces/go-sqlite3/vfs/vfs.go +455 -0
  139. package/govendor/github.com/ncruces/go-sqlite3/vtab.go +677 -0
  140. package/govendor/github.com/ncruces/go-sqlite3/wrap.go +48 -0
  141. package/govendor/github.com/ncruces/go-sqlite3-wasm/v6/LICENSE +18 -0
  142. package/govendor/github.com/ncruces/go-sqlite3-wasm/v6/README.md +11 -0
  143. package/govendor/github.com/ncruces/go-sqlite3-wasm/v6/go.mod +3 -0
  144. package/govendor/github.com/ncruces/go-sqlite3-wasm/v6/libc.go +215 -0
  145. package/govendor/github.com/ncruces/go-sqlite3-wasm/v6/sqlite3.dat +0 -0
  146. package/govendor/github.com/ncruces/go-sqlite3-wasm/v6/sqlite3.go +157903 -0
  147. package/govendor/github.com/ncruces/go-sqlite3-wasm/v6/tools.sh +38 -0
  148. package/govendor/github.com/ncruces/julianday/LICENSE +21 -0
  149. package/govendor/github.com/ncruces/julianday/README.md +9 -0
  150. package/govendor/github.com/ncruces/julianday/go.mod +3 -0
  151. package/govendor/github.com/ncruces/julianday/julianday.go +124 -0
  152. package/govendor/golang.org/x/sys/LICENSE +27 -0
  153. package/govendor/golang.org/x/sys/PATENTS +22 -0
  154. package/govendor/golang.org/x/sys/go.mod +3 -0
  155. package/govendor/golang.org/x/sys/unix/README.md +184 -0
  156. package/govendor/golang.org/x/sys/unix/affinity_linux.go +189 -0
  157. package/govendor/golang.org/x/sys/unix/aliases.go +13 -0
  158. package/govendor/golang.org/x/sys/unix/asm_aix_ppc64.s +17 -0
  159. package/govendor/golang.org/x/sys/unix/asm_bsd_386.s +27 -0
  160. package/govendor/golang.org/x/sys/unix/asm_bsd_amd64.s +27 -0
  161. package/govendor/golang.org/x/sys/unix/asm_bsd_arm.s +27 -0
  162. package/govendor/golang.org/x/sys/unix/asm_bsd_arm64.s +27 -0
  163. package/govendor/golang.org/x/sys/unix/asm_bsd_ppc64.s +29 -0
  164. package/govendor/golang.org/x/sys/unix/asm_bsd_riscv64.s +27 -0
  165. package/govendor/golang.org/x/sys/unix/asm_linux_386.s +65 -0
  166. package/govendor/golang.org/x/sys/unix/asm_linux_amd64.s +57 -0
  167. package/govendor/golang.org/x/sys/unix/asm_linux_arm.s +56 -0
  168. package/govendor/golang.org/x/sys/unix/asm_linux_arm64.s +50 -0
  169. package/govendor/golang.org/x/sys/unix/asm_linux_loong64.s +51 -0
  170. package/govendor/golang.org/x/sys/unix/asm_linux_mips64x.s +54 -0
  171. package/govendor/golang.org/x/sys/unix/asm_linux_mipsx.s +52 -0
  172. package/govendor/golang.org/x/sys/unix/asm_linux_ppc64x.s +42 -0
  173. package/govendor/golang.org/x/sys/unix/asm_linux_riscv64.s +47 -0
  174. package/govendor/golang.org/x/sys/unix/asm_linux_s390x.s +54 -0
  175. package/govendor/golang.org/x/sys/unix/asm_openbsd_mips64.s +29 -0
  176. package/govendor/golang.org/x/sys/unix/asm_solaris_amd64.s +17 -0
  177. package/govendor/golang.org/x/sys/unix/asm_zos_s390x.s +382 -0
  178. package/govendor/golang.org/x/sys/unix/auxv.go +36 -0
  179. package/govendor/golang.org/x/sys/unix/auxv_unsupported.go +13 -0
  180. package/govendor/golang.org/x/sys/unix/bluetooth_linux.go +36 -0
  181. package/govendor/golang.org/x/sys/unix/bpxsvc_zos.go +657 -0
  182. package/govendor/golang.org/x/sys/unix/bpxsvc_zos.s +192 -0
  183. package/govendor/golang.org/x/sys/unix/cap_freebsd.go +195 -0
  184. package/govendor/golang.org/x/sys/unix/constants.go +13 -0
  185. package/govendor/golang.org/x/sys/unix/dev_aix_ppc.go +26 -0
  186. package/govendor/golang.org/x/sys/unix/dev_aix_ppc64.go +28 -0
  187. package/govendor/golang.org/x/sys/unix/dev_darwin.go +24 -0
  188. package/govendor/golang.org/x/sys/unix/dev_dragonfly.go +30 -0
  189. package/govendor/golang.org/x/sys/unix/dev_freebsd.go +30 -0
  190. package/govendor/golang.org/x/sys/unix/dev_linux.go +42 -0
  191. package/govendor/golang.org/x/sys/unix/dev_netbsd.go +29 -0
  192. package/govendor/golang.org/x/sys/unix/dev_openbsd.go +29 -0
  193. package/govendor/golang.org/x/sys/unix/dev_zos.go +28 -0
  194. package/govendor/golang.org/x/sys/unix/dirent.go +102 -0
  195. package/govendor/golang.org/x/sys/unix/endian_big.go +9 -0
  196. package/govendor/golang.org/x/sys/unix/endian_little.go +9 -0
  197. package/govendor/golang.org/x/sys/unix/env_unix.go +31 -0
  198. package/govendor/golang.org/x/sys/unix/fcntl.go +36 -0
  199. package/govendor/golang.org/x/sys/unix/fcntl_darwin.go +24 -0
  200. package/govendor/golang.org/x/sys/unix/fcntl_linux_32bit.go +13 -0
  201. package/govendor/golang.org/x/sys/unix/fdset.go +27 -0
  202. package/govendor/golang.org/x/sys/unix/gccgo.go +59 -0
  203. package/govendor/golang.org/x/sys/unix/gccgo_c.c +44 -0
  204. package/govendor/golang.org/x/sys/unix/gccgo_linux_amd64.go +20 -0
  205. package/govendor/golang.org/x/sys/unix/ifreq_linux.go +145 -0
  206. package/govendor/golang.org/x/sys/unix/ioctl_linux.go +341 -0
  207. package/govendor/golang.org/x/sys/unix/ioctl_signed.go +74 -0
  208. package/govendor/golang.org/x/sys/unix/ioctl_unsigned.go +74 -0
  209. package/govendor/golang.org/x/sys/unix/ioctl_zos.go +71 -0
  210. package/govendor/golang.org/x/sys/unix/mkall.sh +250 -0
  211. package/govendor/golang.org/x/sys/unix/mkerrors.sh +807 -0
  212. package/govendor/golang.org/x/sys/unix/mmap_nomremap.go +13 -0
  213. package/govendor/golang.org/x/sys/unix/mremap.go +57 -0
  214. package/govendor/golang.org/x/sys/unix/pagesize_unix.go +15 -0
  215. package/govendor/golang.org/x/sys/unix/pledge_openbsd.go +111 -0
  216. package/govendor/golang.org/x/sys/unix/ptrace_darwin.go +11 -0
  217. package/govendor/golang.org/x/sys/unix/ptrace_ios.go +11 -0
  218. package/govendor/golang.org/x/sys/unix/race.go +30 -0
  219. package/govendor/golang.org/x/sys/unix/race0.go +25 -0
  220. package/govendor/golang.org/x/sys/unix/readdirent_getdents.go +12 -0
  221. package/govendor/golang.org/x/sys/unix/readdirent_getdirentries.go +19 -0
  222. package/govendor/golang.org/x/sys/unix/readv_unix.go +103 -0
  223. package/govendor/golang.org/x/sys/unix/sockcmsg_dragonfly.go +16 -0
  224. package/govendor/golang.org/x/sys/unix/sockcmsg_linux.go +85 -0
  225. package/govendor/golang.org/x/sys/unix/sockcmsg_unix.go +106 -0
  226. package/govendor/golang.org/x/sys/unix/sockcmsg_unix_other.go +46 -0
  227. package/govendor/golang.org/x/sys/unix/sockcmsg_zos.go +58 -0
  228. package/govendor/golang.org/x/sys/unix/symaddr_zos_s390x.s +75 -0
  229. package/govendor/golang.org/x/sys/unix/syscall.go +86 -0
  230. package/govendor/golang.org/x/sys/unix/syscall_aix.go +582 -0
  231. package/govendor/golang.org/x/sys/unix/syscall_aix_ppc.go +52 -0
  232. package/govendor/golang.org/x/sys/unix/syscall_aix_ppc64.go +83 -0
  233. package/govendor/golang.org/x/sys/unix/syscall_bsd.go +609 -0
  234. package/govendor/golang.org/x/sys/unix/syscall_darwin.go +711 -0
  235. package/govendor/golang.org/x/sys/unix/syscall_darwin_amd64.go +50 -0
  236. package/govendor/golang.org/x/sys/unix/syscall_darwin_arm64.go +50 -0
  237. package/govendor/golang.org/x/sys/unix/syscall_darwin_libSystem.go +26 -0
  238. package/govendor/golang.org/x/sys/unix/syscall_dragonfly.go +359 -0
  239. package/govendor/golang.org/x/sys/unix/syscall_dragonfly_amd64.go +56 -0
  240. package/govendor/golang.org/x/sys/unix/syscall_freebsd.go +455 -0
  241. package/govendor/golang.org/x/sys/unix/syscall_freebsd_386.go +64 -0
  242. package/govendor/golang.org/x/sys/unix/syscall_freebsd_amd64.go +64 -0
  243. package/govendor/golang.org/x/sys/unix/syscall_freebsd_arm.go +60 -0
  244. package/govendor/golang.org/x/sys/unix/syscall_freebsd_arm64.go +60 -0
  245. package/govendor/golang.org/x/sys/unix/syscall_freebsd_riscv64.go +60 -0
  246. package/govendor/golang.org/x/sys/unix/syscall_hurd.go +30 -0
  247. package/govendor/golang.org/x/sys/unix/syscall_hurd_386.go +28 -0
  248. package/govendor/golang.org/x/sys/unix/syscall_illumos.go +78 -0
  249. package/govendor/golang.org/x/sys/unix/syscall_linux.go +2574 -0
  250. package/govendor/golang.org/x/sys/unix/syscall_linux_386.go +313 -0
  251. package/govendor/golang.org/x/sys/unix/syscall_linux_alarm.go +12 -0
  252. package/govendor/golang.org/x/sys/unix/syscall_linux_amd64.go +144 -0
  253. package/govendor/golang.org/x/sys/unix/syscall_linux_amd64_gc.go +12 -0
  254. package/govendor/golang.org/x/sys/unix/syscall_linux_arm.go +218 -0
  255. package/govendor/golang.org/x/sys/unix/syscall_linux_arm64.go +188 -0
  256. package/govendor/golang.org/x/sys/unix/syscall_linux_gc.go +14 -0
  257. package/govendor/golang.org/x/sys/unix/syscall_linux_gc_386.go +16 -0
  258. package/govendor/golang.org/x/sys/unix/syscall_linux_gc_arm.go +13 -0
  259. package/govendor/golang.org/x/sys/unix/syscall_linux_gccgo_386.go +30 -0
  260. package/govendor/golang.org/x/sys/unix/syscall_linux_gccgo_arm.go +20 -0
  261. package/govendor/golang.org/x/sys/unix/syscall_linux_loong64.go +220 -0
  262. package/govendor/golang.org/x/sys/unix/syscall_linux_mips64x.go +187 -0
  263. package/govendor/golang.org/x/sys/unix/syscall_linux_mipsx.go +173 -0
  264. package/govendor/golang.org/x/sys/unix/syscall_linux_ppc.go +203 -0
  265. package/govendor/golang.org/x/sys/unix/syscall_linux_ppc64x.go +114 -0
  266. package/govendor/golang.org/x/sys/unix/syscall_linux_riscv64.go +193 -0
  267. package/govendor/golang.org/x/sys/unix/syscall_linux_s390x.go +295 -0
  268. package/govendor/golang.org/x/sys/unix/syscall_linux_sparc64.go +111 -0
  269. package/govendor/golang.org/x/sys/unix/syscall_netbsd.go +388 -0
  270. package/govendor/golang.org/x/sys/unix/syscall_netbsd_386.go +37 -0
  271. package/govendor/golang.org/x/sys/unix/syscall_netbsd_amd64.go +37 -0
  272. package/govendor/golang.org/x/sys/unix/syscall_netbsd_arm.go +37 -0
  273. package/govendor/golang.org/x/sys/unix/syscall_netbsd_arm64.go +37 -0
  274. package/govendor/golang.org/x/sys/unix/syscall_openbsd.go +346 -0
  275. package/govendor/golang.org/x/sys/unix/syscall_openbsd_386.go +41 -0
  276. package/govendor/golang.org/x/sys/unix/syscall_openbsd_amd64.go +41 -0
  277. package/govendor/golang.org/x/sys/unix/syscall_openbsd_arm.go +41 -0
  278. package/govendor/golang.org/x/sys/unix/syscall_openbsd_arm64.go +41 -0
  279. package/govendor/golang.org/x/sys/unix/syscall_openbsd_libc.go +26 -0
  280. package/govendor/golang.org/x/sys/unix/syscall_openbsd_mips64.go +39 -0
  281. package/govendor/golang.org/x/sys/unix/syscall_openbsd_ppc64.go +41 -0
  282. package/govendor/golang.org/x/sys/unix/syscall_openbsd_riscv64.go +41 -0
  283. package/govendor/golang.org/x/sys/unix/syscall_solaris.go +1183 -0
  284. package/govendor/golang.org/x/sys/unix/syscall_solaris_amd64.go +27 -0
  285. package/govendor/golang.org/x/sys/unix/syscall_unix.go +619 -0
  286. package/govendor/golang.org/x/sys/unix/syscall_unix_gc.go +14 -0
  287. package/govendor/golang.org/x/sys/unix/syscall_unix_gc_ppc64x.go +22 -0
  288. package/govendor/golang.org/x/sys/unix/syscall_zos_s390x.go +3213 -0
  289. package/govendor/golang.org/x/sys/unix/sysvshm_linux.go +20 -0
  290. package/govendor/golang.org/x/sys/unix/sysvshm_unix.go +51 -0
  291. package/govendor/golang.org/x/sys/unix/sysvshm_unix_other.go +13 -0
  292. package/govendor/golang.org/x/sys/unix/timestruct.go +76 -0
  293. package/govendor/golang.org/x/sys/unix/unveil_openbsd.go +51 -0
  294. package/govendor/golang.org/x/sys/unix/vgetrandom_linux.go +13 -0
  295. package/govendor/golang.org/x/sys/unix/vgetrandom_unsupported.go +11 -0
  296. package/govendor/golang.org/x/sys/unix/xattr_bsd.go +280 -0
  297. package/govendor/golang.org/x/sys/unix/zerrors_aix_ppc.go +1384 -0
  298. package/govendor/golang.org/x/sys/unix/zerrors_aix_ppc64.go +1385 -0
  299. package/govendor/golang.org/x/sys/unix/zerrors_darwin_amd64.go +1922 -0
  300. package/govendor/golang.org/x/sys/unix/zerrors_darwin_arm64.go +1922 -0
  301. package/govendor/golang.org/x/sys/unix/zerrors_dragonfly_amd64.go +1737 -0
  302. package/govendor/golang.org/x/sys/unix/zerrors_freebsd_386.go +2042 -0
  303. package/govendor/golang.org/x/sys/unix/zerrors_freebsd_amd64.go +2039 -0
  304. package/govendor/golang.org/x/sys/unix/zerrors_freebsd_arm.go +2033 -0
  305. package/govendor/golang.org/x/sys/unix/zerrors_freebsd_arm64.go +2033 -0
  306. package/govendor/golang.org/x/sys/unix/zerrors_freebsd_riscv64.go +2147 -0
  307. package/govendor/golang.org/x/sys/unix/zerrors_linux.go +4209 -0
  308. package/govendor/golang.org/x/sys/unix/zerrors_linux_386.go +882 -0
  309. package/govendor/golang.org/x/sys/unix/zerrors_linux_amd64.go +882 -0
  310. package/govendor/golang.org/x/sys/unix/zerrors_linux_arm.go +887 -0
  311. package/govendor/golang.org/x/sys/unix/zerrors_linux_arm64.go +884 -0
  312. package/govendor/golang.org/x/sys/unix/zerrors_linux_loong64.go +874 -0
  313. package/govendor/golang.org/x/sys/unix/zerrors_linux_mips.go +888 -0
  314. package/govendor/golang.org/x/sys/unix/zerrors_linux_mips64.go +888 -0
  315. package/govendor/golang.org/x/sys/unix/zerrors_linux_mips64le.go +888 -0
  316. package/govendor/golang.org/x/sys/unix/zerrors_linux_mipsle.go +888 -0
  317. package/govendor/golang.org/x/sys/unix/zerrors_linux_ppc.go +940 -0
  318. package/govendor/golang.org/x/sys/unix/zerrors_linux_ppc64.go +944 -0
  319. package/govendor/golang.org/x/sys/unix/zerrors_linux_ppc64le.go +944 -0
  320. package/govendor/golang.org/x/sys/unix/zerrors_linux_riscv64.go +884 -0
  321. package/govendor/golang.org/x/sys/unix/zerrors_linux_s390x.go +943 -0
  322. package/govendor/golang.org/x/sys/unix/zerrors_linux_sparc64.go +992 -0
  323. package/govendor/golang.org/x/sys/unix/zerrors_netbsd_386.go +1779 -0
  324. package/govendor/golang.org/x/sys/unix/zerrors_netbsd_amd64.go +1769 -0
  325. package/govendor/golang.org/x/sys/unix/zerrors_netbsd_arm.go +1758 -0
  326. package/govendor/golang.org/x/sys/unix/zerrors_netbsd_arm64.go +1769 -0
  327. package/govendor/golang.org/x/sys/unix/zerrors_openbsd_386.go +1905 -0
  328. package/govendor/golang.org/x/sys/unix/zerrors_openbsd_amd64.go +1905 -0
  329. package/govendor/golang.org/x/sys/unix/zerrors_openbsd_arm.go +1905 -0
  330. package/govendor/golang.org/x/sys/unix/zerrors_openbsd_arm64.go +1905 -0
  331. package/govendor/golang.org/x/sys/unix/zerrors_openbsd_mips64.go +1905 -0
  332. package/govendor/golang.org/x/sys/unix/zerrors_openbsd_ppc64.go +1904 -0
  333. package/govendor/golang.org/x/sys/unix/zerrors_openbsd_riscv64.go +1903 -0
  334. package/govendor/golang.org/x/sys/unix/zerrors_solaris_amd64.go +1556 -0
  335. package/govendor/golang.org/x/sys/unix/zerrors_zos_s390x.go +990 -0
  336. package/govendor/golang.org/x/sys/unix/zptrace_armnn_linux.go +40 -0
  337. package/govendor/golang.org/x/sys/unix/zptrace_linux_arm64.go +17 -0
  338. package/govendor/golang.org/x/sys/unix/zptrace_mipsnn_linux.go +49 -0
  339. package/govendor/golang.org/x/sys/unix/zptrace_mipsnnle_linux.go +49 -0
  340. package/govendor/golang.org/x/sys/unix/zptrace_x86_linux.go +79 -0
  341. package/govendor/golang.org/x/sys/unix/zsymaddr_zos_s390x.s +364 -0
  342. package/govendor/golang.org/x/sys/unix/zsyscall_aix_ppc.go +1461 -0
  343. package/govendor/golang.org/x/sys/unix/zsyscall_aix_ppc64.go +1420 -0
  344. package/govendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gc.go +1188 -0
  345. package/govendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gccgo.go +1069 -0
  346. package/govendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go +2728 -0
  347. package/govendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.s +799 -0
  348. package/govendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go +2728 -0
  349. package/govendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.s +799 -0
  350. package/govendor/golang.org/x/sys/unix/zsyscall_dragonfly_amd64.go +1666 -0
  351. package/govendor/golang.org/x/sys/unix/zsyscall_freebsd_386.go +1886 -0
  352. package/govendor/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go +1886 -0
  353. package/govendor/golang.org/x/sys/unix/zsyscall_freebsd_arm.go +1886 -0
  354. package/govendor/golang.org/x/sys/unix/zsyscall_freebsd_arm64.go +1886 -0
  355. package/govendor/golang.org/x/sys/unix/zsyscall_freebsd_riscv64.go +1886 -0
  356. package/govendor/golang.org/x/sys/unix/zsyscall_illumos_amd64.go +101 -0
  357. package/govendor/golang.org/x/sys/unix/zsyscall_linux.go +2267 -0
  358. package/govendor/golang.org/x/sys/unix/zsyscall_linux_386.go +469 -0
  359. package/govendor/golang.org/x/sys/unix/zsyscall_linux_amd64.go +636 -0
  360. package/govendor/golang.org/x/sys/unix/zsyscall_linux_arm.go +584 -0
  361. package/govendor/golang.org/x/sys/unix/zsyscall_linux_arm64.go +535 -0
  362. package/govendor/golang.org/x/sys/unix/zsyscall_linux_loong64.go +469 -0
  363. package/govendor/golang.org/x/sys/unix/zsyscall_linux_mips.go +636 -0
  364. package/govendor/golang.org/x/sys/unix/zsyscall_linux_mips64.go +630 -0
  365. package/govendor/golang.org/x/sys/unix/zsyscall_linux_mips64le.go +619 -0
  366. package/govendor/golang.org/x/sys/unix/zsyscall_linux_mipsle.go +636 -0
  367. package/govendor/golang.org/x/sys/unix/zsyscall_linux_ppc.go +641 -0
  368. package/govendor/golang.org/x/sys/unix/zsyscall_linux_ppc64.go +687 -0
  369. package/govendor/golang.org/x/sys/unix/zsyscall_linux_ppc64le.go +687 -0
  370. package/govendor/golang.org/x/sys/unix/zsyscall_linux_riscv64.go +531 -0
  371. package/govendor/golang.org/x/sys/unix/zsyscall_linux_s390x.go +478 -0
  372. package/govendor/golang.org/x/sys/unix/zsyscall_linux_sparc64.go +631 -0
  373. package/govendor/golang.org/x/sys/unix/zsyscall_netbsd_386.go +1848 -0
  374. package/govendor/golang.org/x/sys/unix/zsyscall_netbsd_amd64.go +1848 -0
  375. package/govendor/golang.org/x/sys/unix/zsyscall_netbsd_arm.go +1848 -0
  376. package/govendor/golang.org/x/sys/unix/zsyscall_netbsd_arm64.go +1848 -0
  377. package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_386.go +2407 -0
  378. package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_386.s +719 -0
  379. package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_amd64.go +2407 -0
  380. package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_amd64.s +719 -0
  381. package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_arm.go +2407 -0
  382. package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_arm.s +719 -0
  383. package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_arm64.go +2407 -0
  384. package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_arm64.s +719 -0
  385. package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_mips64.go +2407 -0
  386. package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_mips64.s +719 -0
  387. package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_ppc64.go +2407 -0
  388. package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_ppc64.s +862 -0
  389. package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_riscv64.go +2407 -0
  390. package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_riscv64.s +719 -0
  391. package/govendor/golang.org/x/sys/unix/zsyscall_solaris_amd64.go +2217 -0
  392. package/govendor/golang.org/x/sys/unix/zsyscall_zos_s390x.go +3458 -0
  393. package/govendor/golang.org/x/sys/unix/zsysctl_openbsd_386.go +280 -0
  394. package/govendor/golang.org/x/sys/unix/zsysctl_openbsd_amd64.go +280 -0
  395. package/govendor/golang.org/x/sys/unix/zsysctl_openbsd_arm.go +280 -0
  396. package/govendor/golang.org/x/sys/unix/zsysctl_openbsd_arm64.go +280 -0
  397. package/govendor/golang.org/x/sys/unix/zsysctl_openbsd_mips64.go +280 -0
  398. package/govendor/golang.org/x/sys/unix/zsysctl_openbsd_ppc64.go +280 -0
  399. package/govendor/golang.org/x/sys/unix/zsysctl_openbsd_riscv64.go +281 -0
  400. package/govendor/golang.org/x/sys/unix/zsysnum_darwin_amd64.go +439 -0
  401. package/govendor/golang.org/x/sys/unix/zsysnum_darwin_arm64.go +437 -0
  402. package/govendor/golang.org/x/sys/unix/zsysnum_dragonfly_amd64.go +316 -0
  403. package/govendor/golang.org/x/sys/unix/zsysnum_freebsd_386.go +393 -0
  404. package/govendor/golang.org/x/sys/unix/zsysnum_freebsd_amd64.go +393 -0
  405. package/govendor/golang.org/x/sys/unix/zsysnum_freebsd_arm.go +393 -0
  406. package/govendor/golang.org/x/sys/unix/zsysnum_freebsd_arm64.go +393 -0
  407. package/govendor/golang.org/x/sys/unix/zsysnum_freebsd_riscv64.go +393 -0
  408. package/govendor/golang.org/x/sys/unix/zsysnum_linux_386.go +470 -0
  409. package/govendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go +394 -0
  410. package/govendor/golang.org/x/sys/unix/zsysnum_linux_arm.go +434 -0
  411. package/govendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go +337 -0
  412. package/govendor/golang.org/x/sys/unix/zsysnum_linux_loong64.go +334 -0
  413. package/govendor/golang.org/x/sys/unix/zsysnum_linux_mips.go +454 -0
  414. package/govendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go +384 -0
  415. package/govendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go +384 -0
  416. package/govendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go +454 -0
  417. package/govendor/golang.org/x/sys/unix/zsysnum_linux_ppc.go +461 -0
  418. package/govendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go +433 -0
  419. package/govendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go +433 -0
  420. package/govendor/golang.org/x/sys/unix/zsysnum_linux_riscv64.go +338 -0
  421. package/govendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go +399 -0
  422. package/govendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go +413 -0
  423. package/govendor/golang.org/x/sys/unix/zsysnum_netbsd_386.go +274 -0
  424. package/govendor/golang.org/x/sys/unix/zsysnum_netbsd_amd64.go +274 -0
  425. package/govendor/golang.org/x/sys/unix/zsysnum_netbsd_arm.go +274 -0
  426. package/govendor/golang.org/x/sys/unix/zsysnum_netbsd_arm64.go +274 -0
  427. package/govendor/golang.org/x/sys/unix/zsysnum_openbsd_386.go +219 -0
  428. package/govendor/golang.org/x/sys/unix/zsysnum_openbsd_amd64.go +219 -0
  429. package/govendor/golang.org/x/sys/unix/zsysnum_openbsd_arm.go +219 -0
  430. package/govendor/golang.org/x/sys/unix/zsysnum_openbsd_arm64.go +218 -0
  431. package/govendor/golang.org/x/sys/unix/zsysnum_openbsd_mips64.go +221 -0
  432. package/govendor/golang.org/x/sys/unix/zsysnum_openbsd_ppc64.go +217 -0
  433. package/govendor/golang.org/x/sys/unix/zsysnum_openbsd_riscv64.go +218 -0
  434. package/govendor/golang.org/x/sys/unix/zsysnum_zos_s390x.go +2852 -0
  435. package/govendor/golang.org/x/sys/unix/ztypes_aix_ppc.go +353 -0
  436. package/govendor/golang.org/x/sys/unix/ztypes_aix_ppc64.go +357 -0
  437. package/govendor/golang.org/x/sys/unix/ztypes_darwin_amd64.go +878 -0
  438. package/govendor/golang.org/x/sys/unix/ztypes_darwin_arm64.go +878 -0
  439. package/govendor/golang.org/x/sys/unix/ztypes_dragonfly_amd64.go +473 -0
  440. package/govendor/golang.org/x/sys/unix/ztypes_freebsd_386.go +651 -0
  441. package/govendor/golang.org/x/sys/unix/ztypes_freebsd_amd64.go +656 -0
  442. package/govendor/golang.org/x/sys/unix/ztypes_freebsd_arm.go +642 -0
  443. package/govendor/golang.org/x/sys/unix/ztypes_freebsd_arm64.go +636 -0
  444. package/govendor/golang.org/x/sys/unix/ztypes_freebsd_riscv64.go +638 -0
  445. package/govendor/golang.org/x/sys/unix/ztypes_linux.go +6547 -0
  446. package/govendor/golang.org/x/sys/unix/ztypes_linux_386.go +747 -0
  447. package/govendor/golang.org/x/sys/unix/ztypes_linux_amd64.go +761 -0
  448. package/govendor/golang.org/x/sys/unix/ztypes_linux_arm.go +741 -0
  449. package/govendor/golang.org/x/sys/unix/ztypes_linux_arm64.go +740 -0
  450. package/govendor/golang.org/x/sys/unix/ztypes_linux_loong64.go +741 -0
  451. package/govendor/golang.org/x/sys/unix/ztypes_linux_mips.go +746 -0
  452. package/govendor/golang.org/x/sys/unix/ztypes_linux_mips64.go +743 -0
  453. package/govendor/golang.org/x/sys/unix/ztypes_linux_mips64le.go +743 -0
  454. package/govendor/golang.org/x/sys/unix/ztypes_linux_mipsle.go +746 -0
  455. package/govendor/golang.org/x/sys/unix/ztypes_linux_ppc.go +754 -0
  456. package/govendor/golang.org/x/sys/unix/ztypes_linux_ppc64.go +749 -0
  457. package/govendor/golang.org/x/sys/unix/ztypes_linux_ppc64le.go +749 -0
  458. package/govendor/golang.org/x/sys/unix/ztypes_linux_riscv64.go +828 -0
  459. package/govendor/golang.org/x/sys/unix/ztypes_linux_s390x.go +763 -0
  460. package/govendor/golang.org/x/sys/unix/ztypes_linux_sparc64.go +744 -0
  461. package/govendor/golang.org/x/sys/unix/ztypes_netbsd_386.go +585 -0
  462. package/govendor/golang.org/x/sys/unix/ztypes_netbsd_amd64.go +593 -0
  463. package/govendor/golang.org/x/sys/unix/ztypes_netbsd_arm.go +590 -0
  464. package/govendor/golang.org/x/sys/unix/ztypes_netbsd_arm64.go +593 -0
  465. package/govendor/golang.org/x/sys/unix/ztypes_openbsd_386.go +568 -0
  466. package/govendor/golang.org/x/sys/unix/ztypes_openbsd_amd64.go +568 -0
  467. package/govendor/golang.org/x/sys/unix/ztypes_openbsd_arm.go +575 -0
  468. package/govendor/golang.org/x/sys/unix/ztypes_openbsd_arm64.go +568 -0
  469. package/govendor/golang.org/x/sys/unix/ztypes_openbsd_mips64.go +568 -0
  470. package/govendor/golang.org/x/sys/unix/ztypes_openbsd_ppc64.go +570 -0
  471. package/govendor/golang.org/x/sys/unix/ztypes_openbsd_riscv64.go +570 -0
  472. package/govendor/golang.org/x/sys/unix/ztypes_solaris_amd64.go +516 -0
  473. package/govendor/golang.org/x/sys/unix/ztypes_zos_s390x.go +552 -0
  474. package/govendor/golang.org/x/sys/windows/aliases.go +13 -0
  475. package/govendor/golang.org/x/sys/windows/dll_windows.go +380 -0
  476. package/govendor/golang.org/x/sys/windows/env_windows.go +57 -0
  477. package/govendor/golang.org/x/sys/windows/eventlog.go +20 -0
  478. package/govendor/golang.org/x/sys/windows/exec_windows.go +248 -0
  479. package/govendor/golang.org/x/sys/windows/memory_windows.go +48 -0
  480. package/govendor/golang.org/x/sys/windows/mkerrors.bash +70 -0
  481. package/govendor/golang.org/x/sys/windows/mkknownfolderids.bash +27 -0
  482. package/govendor/golang.org/x/sys/windows/mksyscall.go +9 -0
  483. package/govendor/golang.org/x/sys/windows/race.go +30 -0
  484. package/govendor/golang.org/x/sys/windows/race0.go +25 -0
  485. package/govendor/golang.org/x/sys/windows/security_windows.go +1537 -0
  486. package/govendor/golang.org/x/sys/windows/service.go +257 -0
  487. package/govendor/golang.org/x/sys/windows/setupapi_windows.go +1425 -0
  488. package/govendor/golang.org/x/sys/windows/str.go +22 -0
  489. package/govendor/golang.org/x/sys/windows/syscall.go +104 -0
  490. package/govendor/golang.org/x/sys/windows/syscall_windows.go +1952 -0
  491. package/govendor/golang.org/x/sys/windows/types_windows.go +4058 -0
  492. package/govendor/golang.org/x/sys/windows/types_windows_386.go +35 -0
  493. package/govendor/golang.org/x/sys/windows/types_windows_amd64.go +34 -0
  494. package/govendor/golang.org/x/sys/windows/types_windows_arm.go +35 -0
  495. package/govendor/golang.org/x/sys/windows/types_windows_arm64.go +34 -0
  496. package/govendor/golang.org/x/sys/windows/zerrors_windows.go +9468 -0
  497. package/govendor/golang.org/x/sys/windows/zknownfolderids_windows.go +149 -0
  498. package/govendor/golang.org/x/sys/windows/zsyscall_windows.go +4828 -0
  499. package/govendor/manifest.txt +7 -0
  500. package/package.json +7 -1
  501. package/tsparser/check.go +157 -0
  502. package/tsparser/main.go +30 -1
  503. package/types/typenative-go.d.ts +15159 -5
  504. package/types/typenative-npm.d.ts +2640 -34
  505. package/types/typenative.d.ts +651 -8
@@ -0,0 +1,635 @@
1
+ // node:dns (+ dns/promises, dns.promises) — lookups on Go's resolver. Each
2
+ // query runs on a goroutine; callbacks run on the event loop, promise forms
3
+ // resolve when the answer arrives. Errors carry Node's codes (ENOTFOUND …).
4
+ import { defineClass, defineHelper, defineModule, getOption } from './registry.js';
5
+ const dnsHelper = `// node:dns
6
+ type TnLookupAddress struct {
7
+ address string
8
+ family float64
9
+ }
10
+
11
+ type TnMxRecord struct {
12
+ exchange string
13
+ priority float64
14
+ }
15
+
16
+ type TnSrvRecord struct {
17
+ name string
18
+ port float64
19
+ priority float64
20
+ weight float64
21
+ }
22
+
23
+ func tnDnsError(err error, syscallName string, hostname string) *TnError {
24
+ code := tnNetCode(err)
25
+ if code != "EAI_AGAIN" {
26
+ code = "ENOTFOUND"
27
+ }
28
+ e := TnNodeError("Error", code, syscallName+" "+code+" "+hostname)
29
+ e.props["errno"] = tnNetErrnos[code]
30
+ e.props["syscall"] = syscallName
31
+ e.props["hostname"] = hostname
32
+ return e
33
+ }
34
+
35
+ // lookup options: a family number or { family, all }
36
+ func tnLookupOptions(options interface{}) (float64, bool) {
37
+ if n, ok := tnNetNumber(options); ok {
38
+ return n, false
39
+ }
40
+ if options == nil {
41
+ return 0, false
42
+ }
43
+ family := float64(0)
44
+ if n, ok := tnNetNumber(TnGet(options, "family")); ok {
45
+ family = n
46
+ }
47
+ if s, ok := TnGet(options, "family").(string); ok {
48
+ if s == "IPv4" {
49
+ family = 4
50
+ } else if s == "IPv6" {
51
+ family = 6
52
+ }
53
+ }
54
+ all, _ := TnGet(options, "all").(bool)
55
+ return family, all
56
+ }
57
+
58
+ func tnLookupAll(hostname string, family float64) ([]*TnLookupAddress, error) {
59
+ if ip := net.ParseIP(hostname); ip != nil {
60
+ return []*TnLookupAddress{{address: hostname, family: TnIsIP(hostname)}}, nil
61
+ }
62
+ network := "ip"
63
+ if family == 4 {
64
+ network = "ip4"
65
+ } else if family == 6 {
66
+ network = "ip6"
67
+ }
68
+ ips, err := net.DefaultResolver.LookupIP(context.Background(), network, hostname)
69
+ if err != nil {
70
+ return nil, tnDnsError(err, "getaddrinfo", hostname)
71
+ }
72
+ out := []*TnLookupAddress{}
73
+ for _, ip := range ips {
74
+ f := float64(6)
75
+ if ip.To4() != nil {
76
+ f = 4
77
+ }
78
+ out = append(out, &TnLookupAddress{address: ip.String(), family: f})
79
+ }
80
+ if len(out) == 0 {
81
+ return nil, tnDnsError(&net.DNSError{Err: "no such host", Name: hostname, IsNotFound: true}, "getaddrinfo", hostname)
82
+ }
83
+ return out, nil
84
+ }
85
+
86
+ // Runs a query on a goroutine, then the callback on the loop
87
+ func tnDnsCall(cb interface{}, work func() ([]interface{}, error)) {
88
+ TnLoopRef()
89
+ ctx := TnAsyncSnapshot()
90
+ go func() {
91
+ values, err := work()
92
+ TnLoopPost(func() {
93
+ defer TnLoopUnref()
94
+ if cb == nil {
95
+ return
96
+ }
97
+ TnAsyncRun(ctx, func() {
98
+ if err != nil {
99
+ TnInvoke(cb, err)
100
+ return
101
+ }
102
+ TnInvoke(cb, append([]interface{}{nil}, values...)...)
103
+ })
104
+ })
105
+ }()
106
+ }
107
+
108
+ func tnDnsPromise[T any](work func() (T, error)) chan T {
109
+ ch := make(chan T, 1)
110
+ go func() {
111
+ v, err := work()
112
+ if err != nil {
113
+ TnReject(ch, err)
114
+ return
115
+ }
116
+ ch <- v
117
+ }()
118
+ return ch
119
+ }
120
+
121
+ func tnDnsArgs(args []interface{}) (interface{}, interface{}) {
122
+ var options, cb interface{}
123
+ for _, a := range args {
124
+ if tnIsFunc(a) {
125
+ cb = a
126
+ } else if a != nil {
127
+ options = a
128
+ }
129
+ }
130
+ return options, cb
131
+ }
132
+
133
+ // dns.lookup(hostname, [options], cb(err, address, family)) / { all: true } → cb(err, addresses)
134
+ func TnDnsLookup(hostname string, args ...interface{}) {
135
+ options, cb := tnDnsArgs(args)
136
+ family, all := tnLookupOptions(options)
137
+ tnDnsCall(cb, func() ([]interface{}, error) {
138
+ addrs, err := tnLookupAll(hostname, family)
139
+ if err != nil {
140
+ return nil, err
141
+ }
142
+ if all {
143
+ return []interface{}{addrs}, nil
144
+ }
145
+ return []interface{}{addrs[0].address, addrs[0].family}, nil
146
+ })
147
+ }
148
+
149
+ func TnDnsLookupPromise(hostname string, options ...interface{}) chan *TnLookupAddress {
150
+ var opts interface{}
151
+ if len(options) > 0 {
152
+ opts = options[0]
153
+ }
154
+ family, _ := tnLookupOptions(opts)
155
+ return tnDnsPromise(func() (*TnLookupAddress, error) {
156
+ addrs, err := tnLookupAll(hostname, family)
157
+ if err != nil {
158
+ return nil, err
159
+ }
160
+ return addrs[0], nil
161
+ })
162
+ }
163
+
164
+ func TnDnsLookupAllPromise(hostname string, options ...interface{}) chan []*TnLookupAddress {
165
+ var opts interface{}
166
+ if len(options) > 0 {
167
+ opts = options[0]
168
+ }
169
+ family, _ := tnLookupOptions(opts)
170
+ return tnDnsPromise(func() ([]*TnLookupAddress, error) { return tnLookupAll(hostname, family) })
171
+ }
172
+
173
+ // dns.Resolver: its own servers (round-robin, with failover), timeout, local address
174
+ // and cancel(); the module-level resolve functions use the default one
175
+ type TnDnsResolver struct {
176
+ mu sync.Mutex
177
+ servers []string
178
+ timeout time.Duration
179
+ local4 net.IP
180
+ local6 net.IP
181
+ next uint32
182
+ ctx context.Context
183
+ stop context.CancelFunc
184
+ }
185
+
186
+ // dns/promises.Resolver: the same resolver, with promise methods
187
+ type TnDnsPromiseResolver struct {
188
+ *TnDnsResolver
189
+ }
190
+
191
+ var tnDefaultDns = &TnDnsResolver{}
192
+
193
+ func TnNewDnsResolver(options ...interface{}) *TnDnsResolver {
194
+ r := &TnDnsResolver{}
195
+ if len(options) > 0 && options[0] != nil {
196
+ if ms, ok := tnNetNumber(TnGet(options[0], "timeout")); ok && ms > 0 {
197
+ r.timeout = time.Duration(ms) * time.Millisecond
198
+ }
199
+ }
200
+ return r
201
+ }
202
+
203
+ func TnNewDnsPromiseResolver(options ...interface{}) *TnDnsPromiseResolver {
204
+ return &TnDnsPromiseResolver{TnNewDnsResolver(options...)}
205
+ }
206
+
207
+ // A query's resolver and context (cancel() and the timeout end it)
208
+ func (r *TnDnsResolver) query() (*net.Resolver, context.Context, context.CancelFunc) {
209
+ r.mu.Lock()
210
+ if r.ctx == nil {
211
+ r.ctx, r.stop = context.WithCancel(context.Background())
212
+ }
213
+ parent := r.ctx
214
+ servers := append([]string{}, r.servers...)
215
+ local4, local6 := r.local4, r.local6
216
+ r.mu.Unlock()
217
+ ctx, done := parent, context.CancelFunc(func() {})
218
+ if r.timeout > 0 {
219
+ ctx, done = context.WithTimeout(parent, r.timeout)
220
+ }
221
+ if len(servers) == 0 && local4 == nil && local6 == nil {
222
+ return net.DefaultResolver, ctx, done
223
+ }
224
+ res := &net.Resolver{PreferGo: true, Dial: func(ctx context.Context, network, address string) (net.Conn, error) {
225
+ if len(servers) > 0 {
226
+ i := atomic.AddUint32(&r.next, 1)
227
+ address = servers[int(i-1)%len(servers)]
228
+ }
229
+ d := net.Dialer{}
230
+ host, _, _ := net.SplitHostPort(address)
231
+ local := local4
232
+ if ip := net.ParseIP(host); ip != nil && ip.To4() == nil {
233
+ local = local6
234
+ }
235
+ if local != nil {
236
+ if strings.HasPrefix(network, "udp") {
237
+ d.LocalAddr = &net.UDPAddr{IP: local}
238
+ } else {
239
+ d.LocalAddr = &net.TCPAddr{IP: local}
240
+ }
241
+ }
242
+ return d.DialContext(ctx, network, address)
243
+ }}
244
+ return res, ctx, done
245
+ }
246
+
247
+ func (r *TnDnsResolver) fail(ctx context.Context, err error, syscallName string, hostname string) *TnError {
248
+ code := ""
249
+ if ctx.Err() == context.Canceled {
250
+ code = "ECANCELLED"
251
+ } else if ctx.Err() == context.DeadlineExceeded {
252
+ code = "ETIMEOUT"
253
+ }
254
+ if code == "" {
255
+ return tnDnsError(err, syscallName, hostname)
256
+ }
257
+ e := TnNodeError("Error", code, syscallName+" "+code+" "+hostname)
258
+ e.props["syscall"] = syscallName
259
+ e.props["hostname"] = hostname
260
+ return e
261
+ }
262
+
263
+ // resolver.cancel(): outstanding queries fail with ECANCELLED
264
+ func (r *TnDnsResolver) cancel() {
265
+ r.mu.Lock()
266
+ defer r.mu.Unlock()
267
+ if r.stop != nil {
268
+ r.stop()
269
+ }
270
+ r.ctx, r.stop = nil, nil
271
+ }
272
+
273
+ func (r *TnDnsResolver) setLocalAddress(addrs ...interface{}) {
274
+ r.mu.Lock()
275
+ defer r.mu.Unlock()
276
+ r.local4, r.local6 = nil, nil
277
+ for _, a := range addrs {
278
+ s, _ := a.(string)
279
+ ip := net.ParseIP(s)
280
+ if ip == nil {
281
+ if s != "" {
282
+ panic(TnNodeError("TypeError", "ERR_INVALID_IP_ADDRESS", "Invalid IP address: "+s))
283
+ }
284
+ continue
285
+ }
286
+ if ip.To4() != nil {
287
+ r.local4 = ip
288
+ } else {
289
+ r.local6 = ip
290
+ }
291
+ }
292
+ }
293
+
294
+ // setServers(['1.2.3.4', '1.2.3.4:5353', '::1', '[::1]:5353'])
295
+ func (r *TnDnsResolver) setServers(servers []string) {
296
+ parsed := []string{}
297
+ for _, s := range servers {
298
+ if addr, err := netip.ParseAddr(strings.Trim(s, "[]")); err == nil {
299
+ parsed = append(parsed, netip.AddrPortFrom(addr, 53).String())
300
+ } else if ap, err := netip.ParseAddrPort(s); err == nil {
301
+ parsed = append(parsed, ap.String())
302
+ } else {
303
+ panic(TnNodeError("TypeError", "ERR_INVALID_IP_ADDRESS", "Invalid IP address: "+s))
304
+ }
305
+ }
306
+ r.mu.Lock()
307
+ r.servers = parsed
308
+ r.mu.Unlock()
309
+ }
310
+
311
+ func (r *TnDnsResolver) getServers() []string {
312
+ r.mu.Lock()
313
+ servers := append([]string{}, r.servers...)
314
+ r.mu.Unlock()
315
+ if len(servers) == 0 {
316
+ return TnDnsGetServers()
317
+ }
318
+ out := []string{}
319
+ for _, s := range servers {
320
+ ap := netip.MustParseAddrPort(s)
321
+ switch {
322
+ case ap.Port() == 53:
323
+ out = append(out, ap.Addr().String())
324
+ default:
325
+ out = append(out, s)
326
+ }
327
+ }
328
+ return out
329
+ }
330
+
331
+ // dns.lookupService(address, port, cb(err, hostname, service))
332
+ func tnServiceName(port int) string {
333
+ if data, err := os.ReadFile("/etc/services"); err == nil {
334
+ for _, line := range strings.Split(string(data), "\\n") {
335
+ fields := strings.Fields(line)
336
+ if len(fields) >= 2 && !strings.HasPrefix(fields[0], "#") && fields[1] == strconv.Itoa(port)+"/tcp" {
337
+ return fields[0]
338
+ }
339
+ }
340
+ }
341
+ known := map[int]string{20: "ftp-data", 21: "ftp", 22: "ssh", 23: "telnet", 25: "smtp", 53: "domain", 80: "http", 110: "pop3", 143: "imap2", 443: "https", 465: "submissions", 587: "submission", 993: "imaps", 995: "pop3s"}
342
+ if name, ok := known[port]; ok {
343
+ return name
344
+ }
345
+ return strconv.Itoa(port)
346
+ }
347
+
348
+ func tnLookupServiceCheck(address string, port float64) {
349
+ if net.ParseIP(address) == nil {
350
+ panic(TnNodeError("TypeError", "ERR_INVALID_ARG_VALUE", "The argument 'address' is invalid. Received '"+address+"'"))
351
+ }
352
+ if port < 0 || port > 65535 || port != float64(int(port)) {
353
+ panic(TnNodeError("RangeError", "ERR_SOCKET_BAD_PORT", "Port should be >= 0 and < 65536. Received type number ("+TnNumStr(port)+")."))
354
+ }
355
+ }
356
+
357
+ func tnLookupService(address string, port float64) (string, string, error) {
358
+ host := address
359
+ if names, err := net.DefaultResolver.LookupAddr(context.Background(), address); err == nil && len(names) > 0 {
360
+ host = strings.TrimSuffix(names[0], ".")
361
+ }
362
+ return host, tnServiceName(int(port)), nil
363
+ }
364
+
365
+ func TnDnsLookupService(address string, port float64, cb interface{}) {
366
+ tnLookupServiceCheck(address, port)
367
+ tnDnsCall(cb, func() ([]interface{}, error) {
368
+ host, service, err := tnLookupService(address, port)
369
+ return []interface{}{host, service}, err
370
+ })
371
+ }
372
+
373
+ type TnLookupService struct {
374
+ hostname string
375
+ service string
376
+ }
377
+
378
+ func TnDnsLookupServicePromise(address string, port float64) chan *TnLookupService {
379
+ tnLookupServiceCheck(address, port)
380
+ return tnDnsPromise(func() (*TnLookupService, error) {
381
+ host, service, err := tnLookupService(address, port)
382
+ return &TnLookupService{hostname: host, service: service}, err
383
+ })
384
+ }
385
+
386
+
387
+ func (r *TnDnsResolver) resolveIPs(hostname string, family int) ([]string, error) {
388
+ res, ctx, done := r.query()
389
+ defer done()
390
+ network := "ip4"
391
+ syscallName := "queryA"
392
+ if family == 6 {
393
+ network, syscallName = "ip6", "queryAaaa"
394
+ }
395
+ ips, err := res.LookupIP(ctx, network, hostname)
396
+ if err != nil {
397
+ return nil, r.fail(ctx, err, syscallName, hostname)
398
+ }
399
+ out := []string{}
400
+ for _, ip := range ips {
401
+ out = append(out, ip.String())
402
+ }
403
+ return out, nil
404
+ }
405
+
406
+ func (r *TnDnsResolver) resolve4(hostname string) ([]string, error) { return r.resolveIPs(hostname, 4) }
407
+ func (r *TnDnsResolver) resolve6(hostname string) ([]string, error) { return r.resolveIPs(hostname, 6) }
408
+
409
+ func (r *TnDnsResolver) resolveCname(hostname string) ([]string, error) {
410
+ res, ctx, done := r.query()
411
+ defer done()
412
+ cname, err := res.LookupCNAME(ctx, hostname)
413
+ if err != nil {
414
+ return nil, r.fail(ctx, err, "queryCname", hostname)
415
+ }
416
+ return []string{strings.TrimSuffix(cname, ".")}, nil
417
+ }
418
+
419
+ func (r *TnDnsResolver) resolveMx(hostname string) ([]*TnMxRecord, error) {
420
+ res, ctx, done := r.query()
421
+ defer done()
422
+ mxs, err := res.LookupMX(ctx, hostname)
423
+ if err != nil {
424
+ return nil, r.fail(ctx, err, "queryMx", hostname)
425
+ }
426
+ out := []*TnMxRecord{}
427
+ for _, mx := range mxs {
428
+ out = append(out, &TnMxRecord{exchange: strings.TrimSuffix(mx.Host, "."), priority: float64(mx.Pref)})
429
+ }
430
+ return out, nil
431
+ }
432
+
433
+ func (r *TnDnsResolver) resolveTxt(hostname string) ([][]string, error) {
434
+ res, ctx, done := r.query()
435
+ defer done()
436
+ txts, err := res.LookupTXT(ctx, hostname)
437
+ if err != nil {
438
+ return nil, r.fail(ctx, err, "queryTxt", hostname)
439
+ }
440
+ out := [][]string{}
441
+ for _, t := range txts {
442
+ out = append(out, []string{t})
443
+ }
444
+ return out, nil
445
+ }
446
+
447
+ func (r *TnDnsResolver) resolveNs(hostname string) ([]string, error) {
448
+ res, ctx, done := r.query()
449
+ defer done()
450
+ nss, err := res.LookupNS(ctx, hostname)
451
+ if err != nil {
452
+ return nil, r.fail(ctx, err, "queryNs", hostname)
453
+ }
454
+ out := []string{}
455
+ for _, ns := range nss {
456
+ out = append(out, strings.TrimSuffix(ns.Host, "."))
457
+ }
458
+ return out, nil
459
+ }
460
+
461
+ func (r *TnDnsResolver) resolveSrv(hostname string) ([]*TnSrvRecord, error) {
462
+ res, ctx, done := r.query()
463
+ defer done()
464
+ _, srvs, err := res.LookupSRV(ctx, "", "", hostname)
465
+ if err != nil {
466
+ return nil, r.fail(ctx, err, "querySrv", hostname)
467
+ }
468
+ out := []*TnSrvRecord{}
469
+ for _, srv := range srvs {
470
+ out = append(out, &TnSrvRecord{name: strings.TrimSuffix(srv.Target, "."), port: float64(srv.Port), priority: float64(srv.Priority), weight: float64(srv.Weight)})
471
+ }
472
+ return out, nil
473
+ }
474
+
475
+ func (r *TnDnsResolver) reverse(ip string) ([]string, error) {
476
+ res, ctx, done := r.query()
477
+ defer done()
478
+ names, err := res.LookupAddr(ctx, ip)
479
+ if err != nil {
480
+ return nil, r.fail(ctx, err, "getHostByAddr", ip)
481
+ }
482
+ out := []string{}
483
+ for _, n := range names {
484
+ out = append(out, strings.TrimSuffix(n, "."))
485
+ }
486
+ return out, nil
487
+ }
488
+
489
+ // Callback form of a resolve function: cb(err, records)
490
+ func TnDnsResolveCb[T any](fn func(string) (T, error), hostname string, cb interface{}) {
491
+ tnDnsCall(cb, func() ([]interface{}, error) {
492
+ v, err := fn(hostname)
493
+ if err != nil {
494
+ return nil, err
495
+ }
496
+ return []interface{}{v}, nil
497
+ })
498
+ }
499
+
500
+ func TnDnsResolvePromise[T any](fn func(string) (T, error), hostname string) chan T {
501
+ return tnDnsPromise(func() (T, error) { return fn(hostname) })
502
+ }
503
+
504
+ // dns.getServers(): the nameservers of /etc/resolv.conf
505
+ func TnDnsGetServers() []string {
506
+ out := []string{}
507
+ data, err := os.ReadFile("/etc/resolv.conf")
508
+ if err != nil {
509
+ return out
510
+ }
511
+ for _, line := range strings.Split(string(data), "\\n") {
512
+ fields := strings.Fields(line)
513
+ if len(fields) >= 2 && fields[0] == "nameserver" {
514
+ out = append(out, fields[1])
515
+ }
516
+ }
517
+ return out
518
+ }`;
519
+ const RESOLVERS = {
520
+ resolve4: '[]string',
521
+ resolve6: '[]string',
522
+ resolveCname: '[]string',
523
+ resolveMx: '[]*TnMxRecord',
524
+ resolveTxt: '[][]string',
525
+ resolveNs: '[]string',
526
+ resolveSrv: '[]*TnSrvRecord',
527
+ reverse: '[]string'
528
+ };
529
+ // dns.resolve(hostname, rrtype) → the resolve function for the record type
530
+ const RRTYPES = {
531
+ A: 'resolve4',
532
+ AAAA: 'resolve6',
533
+ CNAME: 'resolveCname',
534
+ MX: 'resolveMx',
535
+ TXT: 'resolveTxt',
536
+ NS: 'resolveNs',
537
+ SRV: 'resolveSrv',
538
+ PTR: 'reverse'
539
+ };
540
+ function lookupAll(nodes) {
541
+ const options = nodes[1];
542
+ if (!options || options.kind !== 'ObjectLiteralExpression')
543
+ return false;
544
+ const all = getOption(options, 'all');
545
+ return !!all && all.kind === 'TrueKeyword';
546
+ }
547
+ function rrtypeOf(nodes) {
548
+ const node = nodes[1];
549
+ if (node && node.kind === 'StringLiteral' && RRTYPES[String(node.text)])
550
+ return RRTYPES[String(node.text)];
551
+ return 'resolve4';
552
+ }
553
+ export function registerDns(r) {
554
+ defineModule(r, 'dns');
555
+ defineModule(r, 'dns/promises');
556
+ r.namespaces['dns.promises'] = 'dns/promises';
557
+ defineHelper(r, 'nodeDns', ['context', 'net', 'net/netip', 'os', 'strconv', 'strings', 'sync', 'sync/atomic', 'time'], ['nodeNet', 'netErrors', 'eventLoop', 'promise', 'nodeInvoke', 'dynamic'], dnsHelper);
558
+ const use = () => r.helper('nodeDns');
559
+ defineClass(r, 'dns.LookupAddress', '*TnLookupAddress', 'class', '', 'address=string; family=float64', '', '');
560
+ defineClass(r, 'dns.MxRecord', '*TnMxRecord', 'class', '', 'exchange=string; priority=float64', '', '');
561
+ defineClass(r, 'dns.SrvRecord', '*TnSrvRecord', 'class', '', 'name=string; port=float64; priority=float64; weight=float64', '', '');
562
+ r.functions['dns.lookup'] = (c) => {
563
+ use();
564
+ return `TnDnsLookup(${c.args.join(', ')})`;
565
+ };
566
+ r.paramTypers['dns.lookup'] = (nodes) => (lookupAll(nodes) ? ['*TnError', '[]*TnLookupAddress'] : ['*TnError', 'string', 'float64']);
567
+ r.functions['dns/promises.lookup'] = (c) => {
568
+ use();
569
+ return lookupAll(c.nodes) ? `TnDnsLookupAllPromise(${c.args.join(', ')})` : `TnDnsLookupPromise(${c.args.join(', ')})`;
570
+ };
571
+ r.typers['dns/promises.lookup'] = (c) => (lookupAll(c.nodes) ? 'chan []*TnLookupAddress' : 'chan *TnLookupAddress');
572
+ defineClass(r, 'dns.Resolver', '*TnDnsResolver', 'class', 'cancel=; setLocalAddress=; setServers=; getServers=[]string', '', '', '');
573
+ defineClass(r, 'dns/promises.Resolver', '*TnDnsPromiseResolver', 'class', 'cancel=; setLocalAddress=; setServers=; getServers=[]string', '', '', '');
574
+ r.constructors['dns.Resolver'] = (c) => {
575
+ use();
576
+ return `TnNewDnsResolver(${c.args.join(', ')})`;
577
+ };
578
+ r.constructors['dns/promises.Resolver'] = (c) => {
579
+ use();
580
+ return `TnNewDnsPromiseResolver(${c.args.join(', ')})`;
581
+ };
582
+ // resolveX(hostname, cb) / promises.resolveX(hostname), on the default resolver or a Resolver
583
+ const resolver = (fn, typeFn) => {
584
+ const callback = (recv) => (c) => {
585
+ use();
586
+ const target = fn === 'resolve' ? rrtypeOf(c.nodes) : fn;
587
+ return `TnDnsResolveCb(${recv || c.recv}.${target}, ${c.args[0]}, ${c.args[c.args.length - 1]})`;
588
+ };
589
+ const promise = (recv) => (c) => {
590
+ use();
591
+ const target = fn === 'resolve' ? rrtypeOf(c.nodes) : fn;
592
+ return `TnDnsResolvePromise(${recv || c.recv}.${target}, ${c.args[0]})`;
593
+ };
594
+ const cbTypes = (nodes) => ['*TnError', RESOLVERS[typeFn(nodes)]];
595
+ const promiseType = (c) => `chan ${RESOLVERS[typeFn(c.nodes)]}`;
596
+ r.functions[`dns.${fn}`] = callback('tnDefaultDns');
597
+ r.paramTypers[`dns.${fn}`] = cbTypes;
598
+ r.methods[`dns.Resolver#${fn}`] = callback('');
599
+ r.typers[`dns.Resolver#${fn}`] = (_c) => '';
600
+ r.paramTypers[`dns.Resolver#${fn}`] = cbTypes;
601
+ r.functions[`dns/promises.${fn}`] = promise('tnDefaultDns');
602
+ r.typers[`dns/promises.${fn}`] = promiseType;
603
+ r.methods[`dns/promises.Resolver#${fn}`] = promise('');
604
+ r.typers[`dns/promises.Resolver#${fn}`] = promiseType;
605
+ };
606
+ for (const fn of Object.keys(RESOLVERS))
607
+ resolver(fn, (_n) => fn);
608
+ resolver('resolve', rrtypeOf);
609
+ defineClass(r, 'dns.LookupServiceResult', '*TnLookupService', 'class', '', 'hostname=string; service=string', '', '');
610
+ r.functions['dns.lookupService'] = (c) => {
611
+ use();
612
+ return `TnDnsLookupService(${c.args.join(', ')})`;
613
+ };
614
+ r.paramTypers['dns.lookupService'] = (_n) => ['*TnError', 'string', 'string'];
615
+ r.functions['dns/promises.lookupService'] = (c) => {
616
+ use();
617
+ return `TnDnsLookupServicePromise(${c.args.join(', ')})`;
618
+ };
619
+ r.results['dns/promises.lookupService'] = 'chan *TnLookupService';
620
+ for (const mod of ['dns', 'dns/promises']) {
621
+ r.functions[`${mod}.getServers`] = (_c) => {
622
+ use();
623
+ return 'tnDefaultDns.getServers()';
624
+ };
625
+ r.results[`${mod}.getServers`] = '[]string';
626
+ r.functions[`${mod}.setServers`] = (c) => {
627
+ use();
628
+ return `tnDefaultDns.setServers(${c.args[0]})`;
629
+ };
630
+ r.results[`${mod}.setServers`] = '';
631
+ r.functions[`${mod}.setDefaultResultOrder`] = (_c) => '_ = 0';
632
+ r.functions[`${mod}.getDefaultResultOrder`] = (_c) => '"verbatim"';
633
+ r.results[`${mod}.getDefaultResultOrder`] = 'string';
634
+ }
635
+ }