@scriptc/compiler 0.4.0 → 0.4.2

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 (866) hide show
  1. package/ambient/scriptc-node-fallback.d.ts +617 -83
  2. package/dist/backend/cycle-analysis.d.ts +2 -1
  3. package/dist/backend/cycle-analysis.js +4 -4
  4. package/dist/backend/cycle-analysis.js.map +1 -1
  5. package/dist/backend/cycle-mutability.d.ts +2 -1
  6. package/dist/backend/cycle-mutability.js +2 -2
  7. package/dist/backend/cycle-mutability.js.map +1 -1
  8. package/dist/backend/executable-features.js +10 -0
  9. package/dist/backend/executable-features.js.map +1 -1
  10. package/dist/backend/immutability.d.ts +2 -1
  11. package/dist/backend/immutability.js +2 -2
  12. package/dist/backend/immutability.js.map +1 -1
  13. package/dist/backend/library-pack.js +7 -0
  14. package/dist/backend/library-pack.js.map +1 -1
  15. package/dist/backend/link-plan-core.d.ts +2 -0
  16. package/dist/backend/link-plan-core.js +2 -0
  17. package/dist/backend/link-plan-core.js.map +1 -1
  18. package/dist/backend/link-plan.d.ts +1 -0
  19. package/dist/backend/link-plan.js +1 -0
  20. package/dist/backend/link-plan.js.map +1 -1
  21. package/dist/backend/llvm/alloc.d.ts +7 -3
  22. package/dist/backend/llvm/alloc.js +7 -4
  23. package/dist/backend/llvm/alloc.js.map +1 -1
  24. package/dist/backend/llvm/array-search.js +4 -1
  25. package/dist/backend/llvm/array-search.js.map +1 -1
  26. package/dist/backend/llvm/bytes-loop-versions.d.ts +23 -2
  27. package/dist/backend/llvm/bytes-loop-versions.js +115 -19
  28. package/dist/backend/llvm/bytes-loop-versions.js.map +1 -1
  29. package/dist/backend/llvm/bytes-loop-versions.test.js +131 -0
  30. package/dist/backend/llvm/bytes-loop-versions.test.js.map +1 -1
  31. package/dist/backend/llvm/classes.d.ts +99 -2
  32. package/dist/backend/llvm/classes.js +436 -57
  33. package/dist/backend/llvm/classes.js.map +1 -1
  34. package/dist/backend/llvm/classes.test.js +235 -16
  35. package/dist/backend/llvm/classes.test.js.map +1 -1
  36. package/dist/backend/llvm/common.d.ts +21 -5
  37. package/dist/backend/llvm/common.js +50 -5
  38. package/dist/backend/llvm/common.js.map +1 -1
  39. package/dist/backend/llvm/constant-callbacks.js +8 -4
  40. package/dist/backend/llvm/constant-callbacks.js.map +1 -1
  41. package/dist/backend/llvm/constant-callbacks.test.js +4 -4
  42. package/dist/backend/llvm/constant-callbacks.test.js.map +1 -1
  43. package/dist/backend/llvm/counted-loops.d.ts +4 -1
  44. package/dist/backend/llvm/counted-loops.js +62 -23
  45. package/dist/backend/llvm/counted-loops.js.map +1 -1
  46. package/dist/backend/llvm/dense-array-access.d.ts +3 -1
  47. package/dist/backend/llvm/dense-array-access.js +61 -38
  48. package/dist/backend/llvm/dense-array-access.js.map +1 -1
  49. package/dist/backend/llvm/dense-array-access.test.js +4 -0
  50. package/dist/backend/llvm/dense-array-access.test.js.map +1 -1
  51. package/dist/backend/llvm/dense-array-loops.d.ts +19 -16
  52. package/dist/backend/llvm/dense-array-loops.js +49 -13
  53. package/dist/backend/llvm/dense-array-loops.js.map +1 -1
  54. package/dist/backend/llvm/dense-array-loops.test.js +50 -14
  55. package/dist/backend/llvm/dense-array-loops.test.js.map +1 -1
  56. package/dist/backend/llvm/dyn.d.ts +34 -1
  57. package/dist/backend/llvm/dyn.js +393 -14
  58. package/dist/backend/llvm/dyn.js.map +1 -1
  59. package/dist/backend/llvm/emit-function.js +27 -8
  60. package/dist/backend/llvm/emit-function.js.map +1 -1
  61. package/dist/backend/llvm/emit-module.js +67 -39
  62. package/dist/backend/llvm/emit-module.js.map +1 -1
  63. package/dist/backend/llvm/emit-statements.d.ts +3 -25
  64. package/dist/backend/llvm/emit-statements.js +414 -37
  65. package/dist/backend/llvm/emit-statements.js.map +1 -1
  66. package/dist/backend/llvm/emitter.d.ts +159 -22
  67. package/dist/backend/llvm/emitter.js +573 -89
  68. package/dist/backend/llvm/emitter.js.map +1 -1
  69. package/dist/backend/llvm/expr-async.js +19 -0
  70. package/dist/backend/llvm/expr-async.js.map +1 -1
  71. package/dist/backend/llvm/expr-bytes.d.ts +5 -2
  72. package/dist/backend/llvm/expr-bytes.js +110 -40
  73. package/dist/backend/llvm/expr-bytes.js.map +1 -1
  74. package/dist/backend/llvm/expr-calls.d.ts +1 -1
  75. package/dist/backend/llvm/expr-calls.js +51 -26
  76. package/dist/backend/llvm/expr-calls.js.map +1 -1
  77. package/dist/backend/llvm/expr-containers.js +27 -14
  78. package/dist/backend/llvm/expr-containers.js.map +1 -1
  79. package/dist/backend/llvm/expr-control.js +2 -3
  80. package/dist/backend/llvm/expr-control.js.map +1 -1
  81. package/dist/backend/llvm/expr-dynamic.js +95 -5
  82. package/dist/backend/llvm/expr-dynamic.js.map +1 -1
  83. package/dist/backend/llvm/expr-primitives.js +29 -11
  84. package/dist/backend/llvm/expr-primitives.js.map +1 -1
  85. package/dist/backend/llvm/expr-primitives.test.js +55 -0
  86. package/dist/backend/llvm/expr-primitives.test.js.map +1 -1
  87. package/dist/backend/llvm/expr-stream-bridges.js +48 -20
  88. package/dist/backend/llvm/expr-stream-bridges.js.map +1 -1
  89. package/dist/backend/llvm/expr-stream-callbacks.js +131 -35
  90. package/dist/backend/llvm/expr-stream-callbacks.js.map +1 -1
  91. package/dist/backend/llvm/integer-clones.js +3 -3
  92. package/dist/backend/llvm/integer-clones.js.map +1 -1
  93. package/dist/backend/llvm/js-ic.d.ts +18 -0
  94. package/dist/backend/llvm/js-ic.js +712 -0
  95. package/dist/backend/llvm/js-ic.js.map +1 -0
  96. package/dist/backend/llvm/jsval.js +139 -11
  97. package/dist/backend/llvm/jsval.js.map +1 -1
  98. package/dist/backend/llvm/lib-dispatch.js +10 -0
  99. package/dist/backend/llvm/lib-dispatch.js.map +1 -1
  100. package/dist/backend/llvm/lib-filesystem.js +61 -0
  101. package/dist/backend/llvm/lib-filesystem.js.map +1 -1
  102. package/dist/backend/llvm/lib-http2.d.ts +4 -0
  103. package/dist/backend/llvm/lib-http2.js +20 -17
  104. package/dist/backend/llvm/lib-http2.js.map +1 -1
  105. package/dist/backend/llvm/lib-process.js +69 -17
  106. package/dist/backend/llvm/lib-process.js.map +1 -1
  107. package/dist/backend/llvm/lib-shared.js +75 -1
  108. package/dist/backend/llvm/lib-shared.js.map +1 -1
  109. package/dist/backend/llvm/lib-stream.js +65 -28
  110. package/dist/backend/llvm/lib-stream.js.map +1 -1
  111. package/dist/backend/llvm/lib-tls.js +23 -0
  112. package/dist/backend/llvm/lib-tls.js.map +1 -1
  113. package/dist/backend/llvm/local-array-reads.js +91 -61
  114. package/dist/backend/llvm/local-array-reads.js.map +1 -1
  115. package/dist/backend/llvm/local-array-reads.test.js +14 -0
  116. package/dist/backend/llvm/local-array-reads.test.js.map +1 -1
  117. package/dist/backend/llvm/map-number-lookup.d.ts +20 -4
  118. package/dist/backend/llvm/map-number-lookup.js +43 -7
  119. package/dist/backend/llvm/map-number-lookup.js.map +1 -1
  120. package/dist/backend/llvm/narrow-guards.js +64 -0
  121. package/dist/backend/llvm/narrow-guards.js.map +1 -1
  122. package/dist/backend/llvm/publish.d.ts +11 -1
  123. package/dist/backend/llvm/publish.js +80 -22
  124. package/dist/backend/llvm/publish.js.map +1 -1
  125. package/dist/backend/llvm/publish.test.js +3 -0
  126. package/dist/backend/llvm/publish.test.js.map +1 -1
  127. package/dist/backend/llvm/receivers.js +1 -1
  128. package/dist/backend/llvm/receivers.js.map +1 -1
  129. package/dist/backend/llvm/reference-writes.js +2 -0
  130. package/dist/backend/llvm/reference-writes.js.map +1 -1
  131. package/dist/backend/llvm/regex-matchers.js +161 -14
  132. package/dist/backend/llvm/regex-matchers.js.map +1 -1
  133. package/dist/backend/llvm/regex-matchers.test.js +18 -0
  134. package/dist/backend/llvm/regex-matchers.test.js.map +1 -1
  135. package/dist/backend/llvm/regions.js +2 -2
  136. package/dist/backend/llvm/regions.js.map +1 -1
  137. package/dist/backend/llvm/regions.test.js +7 -1
  138. package/dist/backend/llvm/regions.test.js.map +1 -1
  139. package/dist/backend/llvm/shapes.d.ts +17 -9
  140. package/dist/backend/llvm/shapes.js +21 -17
  141. package/dist/backend/llvm/shapes.js.map +1 -1
  142. package/dist/backend/llvm/speculative-integers.d.ts +20 -1
  143. package/dist/backend/llvm/speculative-integers.js +94 -6
  144. package/dist/backend/llvm/speculative-integers.js.map +1 -1
  145. package/dist/backend/llvm/speculative-integers.test.js +55 -1
  146. package/dist/backend/llvm/speculative-integers.test.js.map +1 -1
  147. package/dist/backend/llvm/string-lifetimes.test.js +2 -1
  148. package/dist/backend/llvm/string-lifetimes.test.js.map +1 -1
  149. package/dist/backend/llvm/string-reads.d.ts +4 -1
  150. package/dist/backend/llvm/string-reads.js +88 -4
  151. package/dist/backend/llvm/string-reads.js.map +1 -1
  152. package/dist/backend/llvm/thread-slots.test.js +5 -4
  153. package/dist/backend/llvm/thread-slots.test.js.map +1 -1
  154. package/dist/backend/llvm/wasm-modules.d.ts +6 -5
  155. package/dist/backend/llvm/wasm-modules.js +32 -9
  156. package/dist/backend/llvm/wasm-modules.js.map +1 -1
  157. package/dist/backend/mangle.d.ts +8 -0
  158. package/dist/backend/mangle.js +12 -0
  159. package/dist/backend/mangle.js.map +1 -1
  160. package/dist/backend/native/contracts.d.ts +40 -2
  161. package/dist/backend/native/executable.js +40 -7
  162. package/dist/backend/native/executable.js.map +1 -1
  163. package/dist/backend/native/library.js +3 -1
  164. package/dist/backend/native/library.js.map +1 -1
  165. package/dist/backend/native-codegen.d.ts +17 -6
  166. package/dist/backend/native-codegen.js +55 -9
  167. package/dist/backend/native-codegen.js.map +1 -1
  168. package/dist/backend/native-codegen.test.js +18 -14
  169. package/dist/backend/native-codegen.test.js.map +1 -1
  170. package/dist/backend/native-link-info-core.d.ts +30 -2
  171. package/dist/backend/native-link-info-core.js.map +1 -1
  172. package/dist/backend/native-profile.d.ts +32 -0
  173. package/dist/backend/native-profile.js +39 -0
  174. package/dist/backend/native-profile.js.map +1 -0
  175. package/dist/backend/native-profile.test.d.ts +1 -0
  176. package/dist/backend/native-profile.test.js +58 -0
  177. package/dist/backend/native-profile.test.js.map +1 -0
  178. package/dist/backend/native-tools.d.ts +14 -0
  179. package/dist/backend/native-tools.js +13 -0
  180. package/dist/backend/native-tools.js.map +1 -1
  181. package/dist/backend/optimization.d.ts +2 -2
  182. package/dist/backend/runtime-abi.d.ts +2 -2
  183. package/dist/backend/runtime-abi.js +2 -2
  184. package/dist/backend/runtime-pack-core.d.ts +4 -0
  185. package/dist/backend/runtime-pack-core.js +4 -0
  186. package/dist/backend/runtime-pack-core.js.map +1 -1
  187. package/dist/backend/runtime-pack-targets.test.js +7 -1
  188. package/dist/backend/runtime-pack-targets.test.js.map +1 -1
  189. package/dist/backend/runtime-pack.d.ts +0 -21
  190. package/dist/backend/runtime-pack.js +0 -29
  191. package/dist/backend/runtime-pack.js.map +1 -1
  192. package/dist/backend/runtime-pack.test.js +12 -69
  193. package/dist/backend/runtime-pack.test.js.map +1 -1
  194. package/dist/backend/target-diagnostics.js +38 -1
  195. package/dist/backend/target-diagnostics.js.map +1 -1
  196. package/dist/backend/warm-cache.js +6 -0
  197. package/dist/backend/warm-cache.js.map +1 -1
  198. package/dist/cli/command.js +89 -7
  199. package/dist/cli/command.js.map +1 -1
  200. package/dist/cli/host.d.ts +3 -0
  201. package/dist/cli/output-options.d.ts +2 -0
  202. package/dist/cli/output-options.js +9 -0
  203. package/dist/cli/output-options.js.map +1 -1
  204. package/dist/cli/usage.d.ts +15 -1
  205. package/dist/cli/usage.js +30 -2
  206. package/dist/cli/usage.js.map +1 -1
  207. package/dist/compile-types.d.ts +9 -0
  208. package/dist/contracts/check.js +2 -3
  209. package/dist/contracts/check.js.map +1 -1
  210. package/dist/coverage/report.d.ts +7 -2
  211. package/dist/coverage/report.js +18 -0
  212. package/dist/coverage/report.js.map +1 -1
  213. package/dist/coverage/verdict-cache.d.ts +1 -0
  214. package/dist/coverage/verdict-cache.js +4 -0
  215. package/dist/coverage/verdict-cache.js.map +1 -1
  216. package/dist/coverage/verdict-semantic.js +4 -0
  217. package/dist/coverage/verdict-semantic.js.map +1 -1
  218. package/dist/diagnostics/diagnostic.js.map +1 -1
  219. package/dist/diagnostics/dynamic-tier.d.ts +40 -0
  220. package/dist/diagnostics/dynamic-tier.js +57 -0
  221. package/dist/diagnostics/dynamic-tier.js.map +1 -0
  222. package/dist/diagnostics/envelope.d.ts +2 -1
  223. package/dist/diagnostics/envelope.js +5 -2
  224. package/dist/diagnostics/envelope.js.map +1 -1
  225. package/dist/executable/executable-cache.d.ts +32 -0
  226. package/dist/executable/executable-cache.js +65 -7
  227. package/dist/executable/executable-cache.js.map +1 -1
  228. package/dist/executable/executable-cache.test.js +50 -3
  229. package/dist/executable/executable-cache.test.js.map +1 -1
  230. package/dist/executable/prepare.js +3 -1
  231. package/dist/executable/prepare.js.map +1 -1
  232. package/dist/frontend/analysis.js +1 -0
  233. package/dist/frontend/analysis.js.map +1 -1
  234. package/dist/frontend/arguments-usage.d.ts +8 -0
  235. package/dist/frontend/arguments-usage.js +98 -0
  236. package/dist/frontend/arguments-usage.js.map +1 -1
  237. package/dist/frontend/arguments-usage.test.d.ts +1 -0
  238. package/dist/frontend/arguments-usage.test.js +32 -0
  239. package/dist/frontend/arguments-usage.test.js.map +1 -0
  240. package/dist/frontend/builtin-package-aliases.d.ts +24 -0
  241. package/dist/frontend/builtin-package-aliases.js +133 -0
  242. package/dist/frontend/builtin-package-aliases.js.map +1 -0
  243. package/dist/frontend/builtin-package-aliases.test.d.ts +1 -0
  244. package/dist/frontend/builtin-package-aliases.test.js +48 -0
  245. package/dist/frontend/builtin-package-aliases.test.js.map +1 -0
  246. package/dist/frontend/dispose-hook.d.ts +2 -0
  247. package/dist/frontend/dispose-hook.js +14 -0
  248. package/dist/frontend/dispose-hook.js.map +1 -0
  249. package/dist/frontend/dts-paths.d.ts +4 -0
  250. package/dist/frontend/dts-paths.js +9 -1
  251. package/dist/frontend/dts-paths.js.map +1 -1
  252. package/dist/frontend/jsx-entities.d.ts +4 -0
  253. package/dist/frontend/jsx-entities.js +259 -0
  254. package/dist/frontend/jsx-entities.js.map +1 -0
  255. package/dist/frontend/jsx-source.d.ts +71 -0
  256. package/dist/frontend/jsx-source.js +781 -0
  257. package/dist/frontend/jsx-source.js.map +1 -0
  258. package/dist/frontend/jsx-source.test.d.ts +1 -0
  259. package/dist/frontend/jsx-source.test.js +200 -0
  260. package/dist/frontend/jsx-source.test.js.map +1 -0
  261. package/dist/frontend/literal-values.test.js +8 -9
  262. package/dist/frontend/literal-values.test.js.map +1 -1
  263. package/dist/frontend/lowering/array-indexed-mutation.js +2 -1
  264. package/dist/frontend/lowering/array-indexed-mutation.js.map +1 -1
  265. package/dist/frontend/lowering/array-values.js +3 -2
  266. package/dist/frontend/lowering/array-values.js.map +1 -1
  267. package/dist/frontend/lowering/binding-analysis.d.ts +1 -1
  268. package/dist/frontend/lowering/binding-analysis.js +2 -2
  269. package/dist/frontend/lowering/binding-analysis.js.map +1 -1
  270. package/dist/frontend/lowering/builtins/arguments.d.ts +3 -0
  271. package/dist/frontend/lowering/builtins/arguments.js +30 -15
  272. package/dist/frontend/lowering/builtins/arguments.js.map +1 -1
  273. package/dist/frontend/lowering/builtins/atomics.js +10 -6
  274. package/dist/frontend/lowering/builtins/atomics.js.map +1 -1
  275. package/dist/frontend/lowering/builtins/builtin-class-dyn.d.ts +8 -0
  276. package/dist/frontend/lowering/builtins/builtin-class-dyn.js +50 -1
  277. package/dist/frontend/lowering/builtins/builtin-class-dyn.js.map +1 -1
  278. package/dist/frontend/lowering/builtins/callable-aliases.js +3 -2
  279. package/dist/frontend/lowering/builtins/callable-aliases.js.map +1 -1
  280. package/dist/frontend/lowering/builtins/child-process-async.js +2 -1
  281. package/dist/frontend/lowering/builtins/child-process-async.js.map +1 -1
  282. package/dist/frontend/lowering/builtins/child-process-sync.js +2 -1
  283. package/dist/frontend/lowering/builtins/child-process-sync.js.map +1 -1
  284. package/dist/frontend/lowering/builtins/crypto.d.ts +7 -2
  285. package/dist/frontend/lowering/builtins/crypto.js +63 -4
  286. package/dist/frontend/lowering/builtins/crypto.js.map +1 -1
  287. package/dist/frontend/lowering/builtins/date-classes.d.ts +46 -0
  288. package/dist/frontend/lowering/builtins/date-classes.js +477 -0
  289. package/dist/frontend/lowering/builtins/date-classes.js.map +1 -0
  290. package/dist/frontend/lowering/builtins/dates.d.ts +11 -1
  291. package/dist/frontend/lowering/builtins/dates.js +55 -26
  292. package/dist/frontend/lowering/builtins/dates.js.map +1 -1
  293. package/dist/frontend/lowering/builtins/dh.d.ts +15 -0
  294. package/dist/frontend/lowering/builtins/dh.js +151 -0
  295. package/dist/frontend/lowering/builtins/dh.js.map +1 -0
  296. package/dist/frontend/lowering/builtins/disposable-stack.js +2 -1
  297. package/dist/frontend/lowering/builtins/disposable-stack.js.map +1 -1
  298. package/dist/frontend/lowering/builtins/ecdh.d.ts +21 -0
  299. package/dist/frontend/lowering/builtins/ecdh.js +208 -0
  300. package/dist/frontend/lowering/builtins/ecdh.js.map +1 -0
  301. package/dist/frontend/lowering/builtins/errors.d.ts +15 -0
  302. package/dist/frontend/lowering/builtins/errors.js +110 -0
  303. package/dist/frontend/lowering/builtins/errors.js.map +1 -1
  304. package/dist/frontend/lowering/builtins/filesystem-calls.d.ts +1 -1
  305. package/dist/frontend/lowering/builtins/filesystem-calls.js +23 -17
  306. package/dist/frontend/lowering/builtins/filesystem-calls.js.map +1 -1
  307. package/dist/frontend/lowering/builtins/filesystem.js +6 -4
  308. package/dist/frontend/lowering/builtins/filesystem.js.map +1 -1
  309. package/dist/frontend/lowering/builtins/fs-paths.d.ts +15 -0
  310. package/dist/frontend/lowering/builtins/fs-paths.js +209 -0
  311. package/dist/frontend/lowering/builtins/fs-paths.js.map +1 -0
  312. package/dist/frontend/lowering/builtins/hash-stream.d.ts +16 -4
  313. package/dist/frontend/lowering/builtins/hash-stream.js +86 -23
  314. package/dist/frontend/lowering/builtins/hash-stream.js.map +1 -1
  315. package/dist/frontend/lowering/builtins/json.js +54 -1
  316. package/dist/frontend/lowering/builtins/json.js.map +1 -1
  317. package/dist/frontend/lowering/builtins/key-object.d.ts +2 -1
  318. package/dist/frontend/lowering/builtins/key-object.js +20 -7
  319. package/dist/frontend/lowering/builtins/key-object.js.map +1 -1
  320. package/dist/frontend/lowering/builtins/module-calls.js +11 -4
  321. package/dist/frontend/lowering/builtins/module-calls.js.map +1 -1
  322. package/dist/frontend/lowering/builtins/numbers.js +9 -5
  323. package/dist/frontend/lowering/builtins/numbers.js.map +1 -1
  324. package/dist/frontend/lowering/builtins/operating-system.js +4 -3
  325. package/dist/frontend/lowering/builtins/operating-system.js.map +1 -1
  326. package/dist/frontend/lowering/builtins/performance.js +3 -2
  327. package/dist/frontend/lowering/builtins/performance.js.map +1 -1
  328. package/dist/frontend/lowering/builtins/process.d.ts +9 -0
  329. package/dist/frontend/lowering/builtins/process.js +47 -2
  330. package/dist/frontend/lowering/builtins/process.js.map +1 -1
  331. package/dist/frontend/lowering/builtins/promises.js +3 -2
  332. package/dist/frontend/lowering/builtins/promises.js.map +1 -1
  333. package/dist/frontend/lowering/builtins/promisify-callback.d.ts +3 -0
  334. package/dist/frontend/lowering/builtins/promisify-callback.js +23 -4
  335. package/dist/frontend/lowering/builtins/promisify-callback.js.map +1 -1
  336. package/dist/frontend/lowering/builtins/readline.d.ts +2 -1
  337. package/dist/frontend/lowering/builtins/readline.js +23 -6
  338. package/dist/frontend/lowering/builtins/readline.js.map +1 -1
  339. package/dist/frontend/lowering/builtins/reflection.js +26 -0
  340. package/dist/frontend/lowering/builtins/reflection.js.map +1 -1
  341. package/dist/frontend/lowering/builtins/strings.js +13 -5
  342. package/dist/frontend/lowering/builtins/strings.js.map +1 -1
  343. package/dist/frontend/lowering/builtins/text-codecs.js +2 -1
  344. package/dist/frontend/lowering/builtins/text-codecs.js.map +1 -1
  345. package/dist/frontend/lowering/builtins/timers.js +6 -2
  346. package/dist/frontend/lowering/builtins/timers.js.map +1 -1
  347. package/dist/frontend/lowering/builtins/typed-array-members.d.ts +7 -0
  348. package/dist/frontend/lowering/builtins/typed-array-members.js +160 -0
  349. package/dist/frontend/lowering/builtins/typed-array-members.js.map +1 -0
  350. package/dist/frontend/lowering/builtins/url.js +4 -3
  351. package/dist/frontend/lowering/builtins/url.js.map +1 -1
  352. package/dist/frontend/lowering/builtins/v8.js +2 -1
  353. package/dist/frontend/lowering/builtins/v8.js.map +1 -1
  354. package/dist/frontend/lowering/builtins/webcrypto.js +39 -20
  355. package/dist/frontend/lowering/builtins/webcrypto.js.map +1 -1
  356. package/dist/frontend/lowering/call-arguments.js +2 -1
  357. package/dist/frontend/lowering/call-arguments.js.map +1 -1
  358. package/dist/frontend/lowering/call-signatures.d.ts +4 -0
  359. package/dist/frontend/lowering/call-signatures.js +137 -13
  360. package/dist/frontend/lowering/call-signatures.js.map +1 -1
  361. package/dist/frontend/lowering/caught-value-dispatch.d.ts +18 -1
  362. package/dist/frontend/lowering/caught-value-dispatch.js +201 -32
  363. package/dist/frontend/lowering/caught-value-dispatch.js.map +1 -1
  364. package/dist/frontend/lowering/cjs-exports-object.js +34 -1
  365. package/dist/frontend/lowering/cjs-exports-object.js.map +1 -1
  366. package/dist/frontend/lowering/class-assertions.js +3 -2
  367. package/dist/frontend/lowering/class-assertions.js.map +1 -1
  368. package/dist/frontend/lowering/class-construction.d.ts +2 -1
  369. package/dist/frontend/lowering/class-construction.js +8 -13
  370. package/dist/frontend/lowering/class-construction.js.map +1 -1
  371. package/dist/frontend/lowering/class-descriptors.js +1 -1
  372. package/dist/frontend/lowering/class-descriptors.js.map +1 -1
  373. package/dist/frontend/lowering/class-dynamic-dispatch.d.ts +34 -0
  374. package/dist/frontend/lowering/class-dynamic-dispatch.js +577 -152
  375. package/dist/frontend/lowering/class-dynamic-dispatch.js.map +1 -1
  376. package/dist/frontend/lowering/class-dynamic-dispatch.test.js +77 -0
  377. package/dist/frontend/lowering/class-dynamic-dispatch.test.js.map +1 -1
  378. package/dist/frontend/lowering/class-method-mutations.js +3 -0
  379. package/dist/frontend/lowering/class-method-mutations.js.map +1 -1
  380. package/dist/frontend/lowering/class-method-values.js +1 -1
  381. package/dist/frontend/lowering/class-method-values.js.map +1 -1
  382. package/dist/frontend/lowering/class-protocols.d.ts +17 -0
  383. package/dist/frontend/lowering/class-protocols.js +117 -7
  384. package/dist/frontend/lowering/class-protocols.js.map +1 -1
  385. package/dist/frontend/lowering/class-prototypes.d.ts +5 -0
  386. package/dist/frontend/lowering/class-prototypes.js +42 -4
  387. package/dist/frontend/lowering/class-prototypes.js.map +1 -1
  388. package/dist/frontend/lowering/class-to-primitive.d.ts +2 -2
  389. package/dist/frontend/lowering/class-to-primitive.js +31 -8
  390. package/dist/frontend/lowering/class-to-primitive.js.map +1 -1
  391. package/dist/frontend/lowering/class-unions.js +2 -1
  392. package/dist/frontend/lowering/class-unions.js.map +1 -1
  393. package/dist/frontend/lowering/coercions/fresh-spread.d.ts +13 -0
  394. package/dist/frontend/lowering/coercions/fresh-spread.js +95 -0
  395. package/dist/frontend/lowering/coercions/fresh-spread.js.map +1 -0
  396. package/dist/frontend/lowering/coercions/function-adapters.js +105 -75
  397. package/dist/frontend/lowering/coercions/function-adapters.js.map +1 -1
  398. package/dist/frontend/lowering/coercions/structural.js +8 -7
  399. package/dist/frontend/lowering/coercions/structural.js.map +1 -1
  400. package/dist/frontend/lowering/coercions/unions.js +8 -7
  401. package/dist/frontend/lowering/coercions/unions.js.map +1 -1
  402. package/dist/frontend/lowering/collection-ingestion.js +2 -1
  403. package/dist/frontend/lowering/collection-ingestion.js.map +1 -1
  404. package/dist/frontend/lowering/containers/array-callbacks.d.ts +15 -0
  405. package/dist/frontend/lowering/containers/array-callbacks.js +36 -32
  406. package/dist/frontend/lowering/containers/array-callbacks.js.map +1 -1
  407. package/dist/frontend/lowering/containers/array-concat.js +2 -1
  408. package/dist/frontend/lowering/containers/array-concat.js.map +1 -1
  409. package/dist/frontend/lowering/containers/array-construction.js +32 -4
  410. package/dist/frontend/lowering/containers/array-construction.js.map +1 -1
  411. package/dist/frontend/lowering/containers/array-methods.js +11 -5
  412. package/dist/frontend/lowering/containers/array-methods.js.map +1 -1
  413. package/dist/frontend/lowering/containers/array-pipelines.js +2 -1
  414. package/dist/frontend/lowering/containers/array-pipelines.js.map +1 -1
  415. package/dist/frontend/lowering/containers/bytes.d.ts +10 -1
  416. package/dist/frontend/lowering/containers/bytes.js +601 -24
  417. package/dist/frontend/lowering/containers/bytes.js.map +1 -1
  418. package/dist/frontend/lowering/containers/callback-arguments.js +52 -2
  419. package/dist/frontend/lowering/containers/callback-arguments.js.map +1 -1
  420. package/dist/frontend/lowering/containers/collection-grouping.js +3 -2
  421. package/dist/frontend/lowering/containers/collection-grouping.js.map +1 -1
  422. package/dist/frontend/lowering/containers/collection-methods.js +80 -10
  423. package/dist/frontend/lowering/containers/collection-methods.js.map +1 -1
  424. package/dist/frontend/lowering/containers/indexed-objects.js +8 -7
  425. package/dist/frontend/lowering/containers/indexed-objects.js.map +1 -1
  426. package/dist/frontend/lowering/containers/iterator-helpers.d.ts +32 -1
  427. package/dist/frontend/lowering/containers/iterator-helpers.js +6 -5
  428. package/dist/frontend/lowering/containers/iterator-helpers.js.map +1 -1
  429. package/dist/frontend/lowering/containers/string-and-regexp.js +85 -22
  430. package/dist/frontend/lowering/containers/string-and-regexp.js.map +1 -1
  431. package/dist/frontend/lowering/containers/string-replacement.js +2 -1
  432. package/dist/frontend/lowering/containers/string-replacement.js.map +1 -1
  433. package/dist/frontend/lowering/cycle-initialization.d.ts +26 -10
  434. package/dist/frontend/lowering/cycle-initialization.js +177 -39
  435. package/dist/frontend/lowering/cycle-initialization.js.map +1 -1
  436. package/dist/frontend/lowering/deferred-module-initializers.d.ts +18 -1
  437. package/dist/frontend/lowering/deferred-module-initializers.js +226 -115
  438. package/dist/frontend/lowering/deferred-module-initializers.js.map +1 -1
  439. package/dist/frontend/lowering/deferred-module-initializers.test.js +28 -0
  440. package/dist/frontend/lowering/deferred-module-initializers.test.js.map +1 -1
  441. package/dist/frontend/lowering/dispatch-sites.d.ts +59 -0
  442. package/dist/frontend/lowering/dispatch-sites.js +204 -0
  443. package/dist/frontend/lowering/dispatch-sites.js.map +1 -0
  444. package/dist/frontend/lowering/dispatch-sites.test.d.ts +1 -0
  445. package/dist/frontend/lowering/dispatch-sites.test.js +59 -0
  446. package/dist/frontend/lowering/dispatch-sites.test.js.map +1 -0
  447. package/dist/frontend/lowering/dyn-streams.d.ts +3 -0
  448. package/dist/frontend/lowering/dyn-streams.js +1 -1
  449. package/dist/frontend/lowering/dyn-streams.js.map +1 -1
  450. package/dist/frontend/lowering/dynamic-tier.d.ts +25 -0
  451. package/dist/frontend/lowering/dynamic-tier.js +327 -0
  452. package/dist/frontend/lowering/dynamic-tier.js.map +1 -0
  453. package/dist/frontend/lowering/error-methods.js +4 -0
  454. package/dist/frontend/lowering/error-methods.js.map +1 -1
  455. package/dist/frontend/lowering/expressions/array-literals.js +48 -13
  456. package/dist/frontend/lowering/expressions/array-literals.js.map +1 -1
  457. package/dist/frontend/lowering/expressions/binary.js +124 -8
  458. package/dist/frontend/lowering/expressions/binary.js.map +1 -1
  459. package/dist/frontend/lowering/expressions/element-access.js +30 -7
  460. package/dist/frontend/lowering/expressions/element-access.js.map +1 -1
  461. package/dist/frontend/lowering/expressions/identifiers.js +46 -7
  462. package/dist/frontend/lowering/expressions/identifiers.js.map +1 -1
  463. package/dist/frontend/lowering/expressions/keyed-field-targets.d.ts +14 -2
  464. package/dist/frontend/lowering/expressions/keyed-field-targets.js +91 -10
  465. package/dist/frontend/lowering/expressions/keyed-field-targets.js.map +1 -1
  466. package/dist/frontend/lowering/expressions/narrowing.js +52 -7
  467. package/dist/frontend/lowering/expressions/narrowing.js.map +1 -1
  468. package/dist/frontend/lowering/expressions/object-literals.d.ts +0 -3
  469. package/dist/frontend/lowering/expressions/object-literals.js +75 -7
  470. package/dist/frontend/lowering/expressions/object-literals.js.map +1 -1
  471. package/dist/frontend/lowering/expressions/optional-chains.d.ts +1 -1
  472. package/dist/frontend/lowering/expressions/optional-chains.js +17 -8
  473. package/dist/frontend/lowering/expressions/optional-chains.js.map +1 -1
  474. package/dist/frontend/lowering/expressions/property-access.d.ts +5 -4
  475. package/dist/frontend/lowering/expressions/property-access.js +351 -16
  476. package/dist/frontend/lowering/expressions/property-access.js.map +1 -1
  477. package/dist/frontend/lowering/expressions/relational.js +112 -9
  478. package/dist/frontend/lowering/expressions/relational.js.map +1 -1
  479. package/dist/frontend/lowering/expressions/typeof.js +13 -0
  480. package/dist/frontend/lowering/expressions/typeof.js.map +1 -1
  481. package/dist/frontend/lowering/expressions/updates.js +64 -10
  482. package/dist/frontend/lowering/expressions/updates.js.map +1 -1
  483. package/dist/frontend/lowering/generator-delegation.d.ts +8 -0
  484. package/dist/frontend/lowering/generator-delegation.js +191 -1
  485. package/dist/frontend/lowering/generator-delegation.js.map +1 -1
  486. package/dist/frontend/lowering/generator-dynamic-dispatch.d.ts +6 -1
  487. package/dist/frontend/lowering/generator-dynamic-dispatch.js +20 -30
  488. package/dist/frontend/lowering/generator-dynamic-dispatch.js.map +1 -1
  489. package/dist/frontend/lowering/generic-functions.d.ts +46 -1
  490. package/dist/frontend/lowering/generic-functions.js +660 -73
  491. package/dist/frontend/lowering/generic-functions.js.map +1 -1
  492. package/dist/frontend/lowering/handle-properties.d.ts +24 -0
  493. package/dist/frontend/lowering/handle-properties.js +281 -0
  494. package/dist/frontend/lowering/handle-properties.js.map +1 -0
  495. package/dist/frontend/lowering/intern-tables.js +2 -1
  496. package/dist/frontend/lowering/intern-tables.js.map +1 -1
  497. package/dist/frontend/lowering/iterable-spelling.d.ts +7 -0
  498. package/dist/frontend/lowering/iterable-spelling.js +38 -0
  499. package/dist/frontend/lowering/iterable-spelling.js.map +1 -0
  500. package/dist/frontend/lowering/iterator-adapters.js +9 -8
  501. package/dist/frontend/lowering/iterator-adapters.js.map +1 -1
  502. package/dist/frontend/lowering/js-dynamic-objects.js +3 -2
  503. package/dist/frontend/lowering/js-dynamic-objects.js.map +1 -1
  504. package/dist/frontend/lowering/json-require.js +2 -1
  505. package/dist/frontend/lowering/json-require.js.map +1 -1
  506. package/dist/frontend/lowering/key-order-witness.d.ts +7 -2
  507. package/dist/frontend/lowering/key-order-witness.js +21 -4
  508. package/dist/frontend/lowering/key-order-witness.js.map +1 -1
  509. package/dist/frontend/lowering/key-order-witness.test.js +38 -2
  510. package/dist/frontend/lowering/key-order-witness.test.js.map +1 -1
  511. package/dist/frontend/lowering/lifetime-regions.js +2 -1
  512. package/dist/frontend/lowering/lifetime-regions.js.map +1 -1
  513. package/dist/frontend/lowering/lower-array-sort.d.ts +33 -15
  514. package/dist/frontend/lowering/lower-array-sort.js +117 -21
  515. package/dist/frontend/lowering/lower-array-sort.js.map +1 -1
  516. package/dist/frontend/lowering/lower-array-sort.test.js +93 -14
  517. package/dist/frontend/lowering/lower-array-sort.test.js.map +1 -1
  518. package/dist/frontend/lowering/lower-assert.js +6 -5
  519. package/dist/frontend/lowering/lower-assert.js.map +1 -1
  520. package/dist/frontend/lowering/lower-async-iteration.js +3 -1
  521. package/dist/frontend/lowering/lower-async-iteration.js.map +1 -1
  522. package/dist/frontend/lowering/lower-builtin-values.js +1 -0
  523. package/dist/frontend/lowering/lower-builtin-values.js.map +1 -1
  524. package/dist/frontend/lowering/lower-calls.d.ts +4 -0
  525. package/dist/frontend/lowering/lower-calls.js +504 -97
  526. package/dist/frontend/lowering/lower-calls.js.map +1 -1
  527. package/dist/frontend/lowering/lower-classes.d.ts +22 -0
  528. package/dist/frontend/lowering/lower-classes.js +339 -32
  529. package/dist/frontend/lowering/lower-classes.js.map +1 -1
  530. package/dist/frontend/lowering/lower-dgram.js +65 -15
  531. package/dist/frontend/lowering/lower-dgram.js.map +1 -1
  532. package/dist/frontend/lowering/lower-event-emitter.d.ts +14 -0
  533. package/dist/frontend/lowering/lower-event-emitter.js +267 -20
  534. package/dist/frontend/lowering/lower-event-emitter.js.map +1 -1
  535. package/dist/frontend/lowering/lower-exprs.d.ts +19 -2
  536. package/dist/frontend/lowering/lower-exprs.js +148 -12
  537. package/dist/frontend/lowering/lower-exprs.js.map +1 -1
  538. package/dist/frontend/lowering/lower-functions.js +308 -72
  539. package/dist/frontend/lowering/lower-functions.js.map +1 -1
  540. package/dist/frontend/lowering/lower-generators.js +10 -4
  541. package/dist/frontend/lowering/lower-generators.js.map +1 -1
  542. package/dist/frontend/lowering/lower-inspect.js +578 -16
  543. package/dist/frontend/lowering/lower-inspect.js.map +1 -1
  544. package/dist/frontend/lowering/lower-mixins.js +2 -1
  545. package/dist/frontend/lowering/lower-mixins.js.map +1 -1
  546. package/dist/frontend/lowering/lower-mock.js +2 -1
  547. package/dist/frontend/lowering/lower-mock.js.map +1 -1
  548. package/dist/frontend/lowering/lower-modules.d.ts +11 -3
  549. package/dist/frontend/lowering/lower-modules.js +227 -72
  550. package/dist/frontend/lowering/lower-modules.js.map +1 -1
  551. package/dist/frontend/lowering/lower-modules.test.js +2 -2
  552. package/dist/frontend/lowering/lower-modules.test.js.map +1 -1
  553. package/dist/frontend/lowering/lower-namespaces.d.ts +2 -1
  554. package/dist/frontend/lowering/lower-namespaces.js +24 -3
  555. package/dist/frontend/lowering/lower-namespaces.js.map +1 -1
  556. package/dist/frontend/lowering/lower-server.d.ts +10 -0
  557. package/dist/frontend/lowering/lower-server.js +263 -60
  558. package/dist/frontend/lowering/lower-server.js.map +1 -1
  559. package/dist/frontend/lowering/lower-stdlib.js +39 -18
  560. package/dist/frontend/lowering/lower-stdlib.js.map +1 -1
  561. package/dist/frontend/lowering/lower-stmts.d.ts +7 -10
  562. package/dist/frontend/lowering/lower-stmts.js +584 -69
  563. package/dist/frontend/lowering/lower-stmts.js.map +1 -1
  564. package/dist/frontend/lowering/lower-stmts.test.js +1 -1
  565. package/dist/frontend/lowering/lower-stmts.test.js.map +1 -1
  566. package/dist/frontend/lowering/lower-stream.js +575 -165
  567. package/dist/frontend/lowering/lower-stream.js.map +1 -1
  568. package/dist/frontend/lowering/lower-timers.js +21 -4
  569. package/dist/frontend/lowering/lower-timers.js.map +1 -1
  570. package/dist/frontend/lowering/lowerer.d.ts +151 -30
  571. package/dist/frontend/lowering/lowerer.js +725 -84
  572. package/dist/frontend/lowering/lowerer.js.map +1 -1
  573. package/dist/frontend/lowering/lowerer.test.js +21 -9
  574. package/dist/frontend/lowering/lowerer.test.js.map +1 -1
  575. package/dist/frontend/lowering/narrowing-stability.js +5 -0
  576. package/dist/frontend/lowering/narrowing-stability.js.map +1 -1
  577. package/dist/frontend/lowering/native-ffi.js +1 -1
  578. package/dist/frontend/lowering/native-ffi.js.map +1 -1
  579. package/dist/frontend/lowering/object-enumeration-receiver.js +2 -1
  580. package/dist/frontend/lowering/object-enumeration-receiver.js.map +1 -1
  581. package/dist/frontend/lowering/pairs-snapshot.js +2 -1
  582. package/dist/frontend/lowering/pairs-snapshot.js.map +1 -1
  583. package/dist/frontend/lowering/private-brands.d.ts +9 -0
  584. package/dist/frontend/lowering/private-brands.js +66 -15
  585. package/dist/frontend/lowering/private-brands.js.map +1 -1
  586. package/dist/frontend/lowering/promise-executor-adapter.js +2 -1
  587. package/dist/frontend/lowering/promise-executor-adapter.js.map +1 -1
  588. package/dist/frontend/lowering/rebindable-functions.d.ts +8 -0
  589. package/dist/frontend/lowering/rebindable-functions.js +54 -0
  590. package/dist/frontend/lowering/rebindable-functions.js.map +1 -0
  591. package/dist/frontend/lowering/require-initialization.js +2 -1
  592. package/dist/frontend/lowering/require-initialization.js.map +1 -1
  593. package/dist/frontend/lowering/runtime-optional-elements.d.ts +5 -0
  594. package/dist/frontend/lowering/runtime-optional-elements.js +17 -1
  595. package/dist/frontend/lowering/runtime-optional-elements.js.map +1 -1
  596. package/dist/frontend/lowering/runtime-optional-records.d.ts +2 -0
  597. package/dist/frontend/lowering/runtime-optional-records.js +18 -5
  598. package/dist/frontend/lowering/runtime-optional-records.js.map +1 -1
  599. package/dist/frontend/lowering/site-dependencies.d.ts +35 -0
  600. package/dist/frontend/lowering/site-dependencies.js +84 -0
  601. package/dist/frontend/lowering/site-dependencies.js.map +1 -0
  602. package/dist/frontend/lowering/site-dependencies.test.d.ts +1 -0
  603. package/dist/frontend/lowering/site-dependencies.test.js +53 -0
  604. package/dist/frontend/lowering/site-dependencies.test.js.map +1 -0
  605. package/dist/frontend/lowering/stable-names.d.ts +11 -0
  606. package/dist/frontend/lowering/stable-names.js +35 -0
  607. package/dist/frontend/lowering/stable-names.js.map +1 -0
  608. package/dist/frontend/lowering/static-typeof.d.ts +26 -0
  609. package/dist/frontend/lowering/static-typeof.js +172 -0
  610. package/dist/frontend/lowering/static-typeof.js.map +1 -0
  611. package/dist/frontend/lowering/strict-equality.js +2 -1
  612. package/dist/frontend/lowering/strict-equality.js.map +1 -1
  613. package/dist/frontend/lowering/string-index-bounds.js +3 -2
  614. package/dist/frontend/lowering/string-index-bounds.js.map +1 -1
  615. package/dist/frontend/lowering/structural-positions.d.ts +32 -0
  616. package/dist/frontend/lowering/structural-positions.js +108 -0
  617. package/dist/frontend/lowering/structural-positions.js.map +1 -0
  618. package/dist/frontend/lowering/surfaces.js +72 -30
  619. package/dist/frontend/lowering/surfaces.js.map +1 -1
  620. package/dist/frontend/lowering/thenables.d.ts +16 -0
  621. package/dist/frontend/lowering/thenables.js +124 -0
  622. package/dist/frontend/lowering/thenables.js.map +1 -0
  623. package/dist/frontend/lowering/var-hoisting.js +37 -3
  624. package/dist/frontend/lowering/var-hoisting.js.map +1 -1
  625. package/dist/frontend/npm-static-builtin-aliases.d.ts +8 -0
  626. package/dist/frontend/npm-static-builtin-aliases.js +65 -0
  627. package/dist/frontend/npm-static-builtin-aliases.js.map +1 -0
  628. package/dist/frontend/npm-static-bundled-chunks.d.ts +8 -1
  629. package/dist/frontend/npm-static-bundled-chunks.js +173 -2
  630. package/dist/frontend/npm-static-bundled-chunks.js.map +1 -1
  631. package/dist/frontend/npm-static-bundled-chunks.test.js +112 -0
  632. package/dist/frontend/npm-static-bundled-chunks.test.js.map +1 -1
  633. package/dist/frontend/npm-static-bundled-esm.js +224 -4
  634. package/dist/frontend/npm-static-bundled-esm.js.map +1 -1
  635. package/dist/frontend/npm-static-bundled-esm.test.js +129 -0
  636. package/dist/frontend/npm-static-bundled-esm.test.js.map +1 -1
  637. package/dist/frontend/npm-static-enum-iife.d.ts +6 -0
  638. package/dist/frontend/npm-static-enum-iife.js +280 -0
  639. package/dist/frontend/npm-static-enum-iife.js.map +1 -0
  640. package/dist/frontend/npm-static-enum-iife.test.d.ts +1 -0
  641. package/dist/frontend/npm-static-enum-iife.test.js +116 -0
  642. package/dist/frontend/npm-static-enum-iife.test.js.map +1 -0
  643. package/dist/frontend/npm-static-tsc-helpers.d.ts +5 -0
  644. package/dist/frontend/npm-static-tsc-helpers.js +106 -0
  645. package/dist/frontend/npm-static-tsc-helpers.js.map +1 -0
  646. package/dist/frontend/npm-static-tsc-helpers.test.d.ts +1 -0
  647. package/dist/frontend/npm-static-tsc-helpers.test.js +58 -0
  648. package/dist/frontend/npm-static-tsc-helpers.test.js.map +1 -0
  649. package/dist/frontend/npm-static-type-exports-host.d.ts +8 -0
  650. package/dist/frontend/npm-static-type-exports-host.js +214 -0
  651. package/dist/frontend/npm-static-type-exports-host.js.map +1 -0
  652. package/dist/frontend/npm-static-type-exports-host.test.d.ts +1 -0
  653. package/dist/frontend/npm-static-type-exports-host.test.js +53 -0
  654. package/dist/frontend/npm-static-type-exports-host.test.js.map +1 -0
  655. package/dist/frontend/npm-static-type-exports.d.ts +52 -0
  656. package/dist/frontend/npm-static-type-exports.js +261 -0
  657. package/dist/frontend/npm-static-type-exports.js.map +1 -0
  658. package/dist/frontend/npm-static-type-exports.test.d.ts +1 -0
  659. package/dist/frontend/npm-static-type-exports.test.js +103 -0
  660. package/dist/frontend/npm-static-type-exports.test.js.map +1 -0
  661. package/dist/frontend/npm-static-umd.d.ts +6 -0
  662. package/dist/frontend/npm-static-umd.js +203 -0
  663. package/dist/frontend/npm-static-umd.js.map +1 -0
  664. package/dist/frontend/npm-static-umd.test.d.ts +1 -0
  665. package/dist/frontend/npm-static-umd.test.js +105 -0
  666. package/dist/frontend/npm-static-umd.test.js.map +1 -0
  667. package/dist/frontend/npm-static.d.ts +16 -0
  668. package/dist/frontend/npm-static.js +93 -3
  669. package/dist/frontend/npm-static.js.map +1 -1
  670. package/dist/frontend/npm.js +13 -0
  671. package/dist/frontend/npm.js.map +1 -1
  672. package/dist/frontend/package-shims.d.ts +47 -0
  673. package/dist/frontend/package-shims.js +300 -0
  674. package/dist/frontend/package-shims.js.map +1 -0
  675. package/dist/frontend/pipeline.js +67 -1
  676. package/dist/frontend/pipeline.js.map +1 -1
  677. package/dist/frontend/program.d.ts +21 -0
  678. package/dist/frontend/program.js +174 -14
  679. package/dist/frontend/program.js.map +1 -1
  680. package/dist/frontend/program.test.js +1 -1
  681. package/dist/frontend/program.test.js.map +1 -1
  682. package/dist/frontend/resolve.js +13 -0
  683. package/dist/frontend/resolve.js.map +1 -1
  684. package/dist/frontend/services.d.ts +12 -0
  685. package/dist/frontend/services.js +37 -0
  686. package/dist/frontend/services.js.map +1 -1
  687. package/dist/frontend/ts7/ast-node.d.ts +21 -7
  688. package/dist/frontend/ts7/ast-node.js +131 -29
  689. package/dist/frontend/ts7/ast-node.js.map +1 -1
  690. package/dist/frontend/ts7/ast-node.test.js +60 -0
  691. package/dist/frontend/ts7/ast-node.test.js.map +1 -1
  692. package/dist/frontend/ts7/ast-wire.d.ts +27 -2
  693. package/dist/frontend/ts7/ast-wire.js +124 -21
  694. package/dist/frontend/ts7/ast-wire.js.map +1 -1
  695. package/dist/frontend/ts7/ast.d.ts +23 -2
  696. package/dist/frontend/ts7/ast.js +143 -2
  697. package/dist/frontend/ts7/ast.js.map +1 -1
  698. package/dist/frontend/ts7/checker.d.ts +13 -1
  699. package/dist/frontend/ts7/checker.js +75 -1
  700. package/dist/frontend/ts7/checker.js.map +1 -1
  701. package/dist/frontend/ts7/checker.test.js +9 -6
  702. package/dist/frontend/ts7/checker.test.js.map +1 -1
  703. package/dist/frontend/ts7/enums.d.ts +3 -3
  704. package/dist/frontend/ts7/enums.generated.d.ts +10 -0
  705. package/dist/frontend/ts7/enums.generated.js +21 -0
  706. package/dist/frontend/ts7/enums.generated.js.map +1 -1
  707. package/dist/frontend/ts7/enums.js +19 -0
  708. package/dist/frontend/ts7/enums.js.map +1 -1
  709. package/dist/frontend/ts7/program-host.d.ts +6 -5
  710. package/dist/frontend/ts7/program-host.js +12 -2
  711. package/dist/frontend/ts7/program-host.js.map +1 -1
  712. package/dist/frontend/ts7/semantic-checker.d.ts +10 -0
  713. package/dist/frontend/ts7/semantic-checker.js +25 -20
  714. package/dist/frontend/ts7/semantic-checker.js.map +1 -1
  715. package/dist/frontend/ts7/semantic-json.d.ts +13 -0
  716. package/dist/frontend/ts7/semantic-json.js +146 -0
  717. package/dist/frontend/ts7/semantic-json.js.map +1 -1
  718. package/dist/frontend/ts7/semantic-json.test.js +57 -1
  719. package/dist/frontend/ts7/semantic-json.test.js.map +1 -1
  720. package/dist/frontend/ts7/semantic-model.d.ts +18 -0
  721. package/dist/frontend/ts7/semantic-model.js +90 -16
  722. package/dist/frontend/ts7/semantic-model.js.map +1 -1
  723. package/dist/frontend/ts7/semantic-model.test.js +3 -2
  724. package/dist/frontend/ts7/semantic-model.test.js.map +1 -1
  725. package/dist/frontend/ts7/session.d.ts +19 -4
  726. package/dist/frontend/ts7/session.js +1 -1
  727. package/dist/frontend/ts7/session.js.map +1 -1
  728. package/dist/frontend/tsc-codes.d.ts +1 -1
  729. package/dist/frontend/tsc-codes.js +7 -0
  730. package/dist/frontend/tsc-codes.js.map +1 -1
  731. package/dist/frontend/type-mapper.d.ts +38 -6
  732. package/dist/frontend/type-mapper.js +466 -47
  733. package/dist/frontend/type-mapper.js.map +1 -1
  734. package/dist/frontend/type-mapper.test.js +1 -1
  735. package/dist/frontend/type-mapper.test.js.map +1 -1
  736. package/dist/frontend-process-args.d.ts +4 -0
  737. package/dist/frontend-process-args.js +52 -0
  738. package/dist/frontend-process-args.js.map +1 -0
  739. package/dist/frontend-process-args.test.d.ts +1 -0
  740. package/dist/frontend-process-args.test.js +47 -0
  741. package/dist/frontend-process-args.test.js.map +1 -0
  742. package/dist/frontend-process.d.ts +1 -0
  743. package/dist/frontend-process.js +23 -0
  744. package/dist/frontend-process.js.map +1 -0
  745. package/dist/heap-collection.d.ts +16 -0
  746. package/dist/heap-collection.js +42 -0
  747. package/dist/heap-collection.js.map +1 -0
  748. package/dist/heap-collection.test.d.ts +1 -0
  749. package/dist/heap-collection.test.js +59 -0
  750. package/dist/heap-collection.test.js.map +1 -0
  751. package/dist/heap-pressure.d.ts +2 -0
  752. package/dist/heap-pressure.js +12 -0
  753. package/dist/heap-pressure.js.map +1 -0
  754. package/dist/index.d.ts +8 -0
  755. package/dist/index.js +453 -85
  756. package/dist/index.js.map +1 -1
  757. package/dist/ir/array-length-stability.d.ts +3 -2
  758. package/dist/ir/array-length-stability.js +22 -2
  759. package/dist/ir/array-length-stability.js.map +1 -1
  760. package/dist/ir/array-length-stability.test.js +47 -1
  761. package/dist/ir/array-length-stability.test.js.map +1 -1
  762. package/dist/ir/builtin-effects.js +41 -0
  763. package/dist/ir/builtin-effects.js.map +1 -1
  764. package/dist/ir/builtin-signatures.d.ts +5 -1
  765. package/dist/ir/builtin-signatures.js +187 -16
  766. package/dist/ir/builtin-signatures.js.map +1 -1
  767. package/dist/ir/final-fields.d.ts +2 -1
  768. package/dist/ir/final-fields.js +2 -2
  769. package/dist/ir/final-fields.js.map +1 -1
  770. package/dist/ir/function-references.test.js +2 -0
  771. package/dist/ir/function-references.test.js.map +1 -1
  772. package/dist/ir/int32-slots.d.ts +13 -5
  773. package/dist/ir/int32-slots.js +112 -115
  774. package/dist/ir/int32-slots.js.map +1 -1
  775. package/dist/ir/int32-slots.test.js +3 -1
  776. package/dist/ir/int32-slots.test.js.map +1 -1
  777. package/dist/ir/integer-loop-facts.d.ts +14 -4
  778. package/dist/ir/integer-loop-facts.js +172 -32
  779. package/dist/ir/integer-loop-facts.js.map +1 -1
  780. package/dist/ir/integer-loops.d.ts +49 -0
  781. package/dist/ir/integer-loops.js +193 -39
  782. package/dist/ir/integer-loops.js.map +1 -1
  783. package/dist/ir/integer-loops.test.js +201 -1
  784. package/dist/ir/integer-loops.test.js.map +1 -1
  785. package/dist/ir/integer-ranges.d.ts +10 -1
  786. package/dist/ir/integer-ranges.js +122 -25
  787. package/dist/ir/integer-ranges.js.map +1 -1
  788. package/dist/ir/integer-ranges.test.js +255 -1
  789. package/dist/ir/integer-ranges.test.js.map +1 -1
  790. package/dist/ir/ir.d.ts +17 -2
  791. package/dist/ir/ir.js +11 -1
  792. package/dist/ir/ir.js.map +1 -1
  793. package/dist/ir/js-ic.d.ts +52 -0
  794. package/dist/ir/js-ic.js +199 -0
  795. package/dist/ir/js-ic.js.map +1 -0
  796. package/dist/ir/js-ic.test.d.ts +1 -0
  797. package/dist/ir/js-ic.test.js +148 -0
  798. package/dist/ir/js-ic.test.js.map +1 -0
  799. package/dist/ir/jsval.js +38 -4
  800. package/dist/ir/jsval.js.map +1 -1
  801. package/dist/ir/runtime-features.d.ts +64 -5
  802. package/dist/ir/runtime-features.js +358 -101
  803. package/dist/ir/runtime-features.js.map +1 -1
  804. package/dist/ir/tiers.js +1 -0
  805. package/dist/ir/tiers.js.map +1 -1
  806. package/dist/ir/traverse.d.ts +2 -0
  807. package/dist/ir/traverse.js +124 -70
  808. package/dist/ir/traverse.js.map +1 -1
  809. package/dist/ir/validate.js +77 -24
  810. package/dist/ir/validate.js.map +1 -1
  811. package/dist/ir/validate.test.js +15 -2
  812. package/dist/ir/validate.test.js.map +1 -1
  813. package/dist/library/ir-policy.js +11 -0
  814. package/dist/library/ir-policy.js.map +1 -1
  815. package/dist/library/library-cache.d.ts +2 -0
  816. package/dist/library/library-cache.js.map +1 -1
  817. package/dist/library/prepare.js +2 -0
  818. package/dist/library/prepare.js.map +1 -1
  819. package/dist/native/cli.js +22 -0
  820. package/dist/native/cli.js.map +1 -1
  821. package/dist/native/compiler.js +33 -4
  822. package/dist/native/compiler.js.map +1 -1
  823. package/dist/native/executable-cache.js +3 -0
  824. package/dist/native/executable-cache.js.map +1 -1
  825. package/dist/native/prepare.js +8 -1
  826. package/dist/native/prepare.js.map +1 -1
  827. package/dist/native/sanitizer.test.js +10 -0
  828. package/dist/native/sanitizer.test.js.map +1 -1
  829. package/dist/startup-cache.d.ts +1 -0
  830. package/dist/startup-cache.js +1 -0
  831. package/dist/startup-cache.js.map +1 -1
  832. package/dist/text-parts.d.ts +7 -0
  833. package/dist/text-parts.js +44 -0
  834. package/dist/text-parts.js.map +1 -1
  835. package/dist/text-parts.test.d.ts +1 -0
  836. package/dist/text-parts.test.js +46 -0
  837. package/dist/text-parts.test.js.map +1 -0
  838. package/dist/timing.d.ts +9 -2
  839. package/dist/timing.js +7 -4
  840. package/dist/timing.js.map +1 -1
  841. package/dist/wasm/translate.d.ts +4 -0
  842. package/dist/wasm/translate.js +2 -2
  843. package/dist/wasm/translate.js.map +1 -1
  844. package/package.json +22 -21
  845. package/shims/fs-extra/core/api.ts +1192 -0
  846. package/shims/fs-extra/index.ts +9 -0
  847. package/shims/undici/core/agent.ts +163 -0
  848. package/shims/undici/core/api.ts +93 -0
  849. package/shims/undici/core/client.ts +1304 -0
  850. package/shims/undici/core/connector.ts +157 -0
  851. package/shims/undici/core/diagnostics-types.ts +68 -0
  852. package/shims/undici/core/diagnostics.ts +16 -0
  853. package/shims/undici/core/dispatcher.ts +574 -0
  854. package/shims/undici/core/errors-v5.ts +22 -0
  855. package/shims/undici/core/errors-v7.ts +25 -0
  856. package/shims/undici/core/errors.ts +255 -0
  857. package/shims/undici/core/fetch.ts +635 -0
  858. package/shims/undici/core/pool.ts +280 -0
  859. package/shims/undici/core/readable.ts +268 -0
  860. package/shims/undici/core/request.ts +313 -0
  861. package/shims/undici/core/timers.ts +80 -0
  862. package/shims/undici/core/types.ts +167 -0
  863. package/shims/undici/core/util.ts +67 -0
  864. package/shims/undici/v5.ts +119 -0
  865. package/shims/undici/v7.ts +119 -0
  866. package/surface-manifest.json +20 -52
@@ -169,6 +169,11 @@ export const LIB_FN_SIGS = defineLibFnSignatures({
169
169
  "dyn.destructureRest": { argTypes: [DYN, STRING], result: DYN },
170
170
  "dyn.arrayFromIterator": { argTypes: [DYN], result: DYN },
171
171
  "dyn.iterator": { argTypes: [DYN, STRING], result: DYN },
172
+ /** for await over a checked-dynamic value: the loop's iterator (a
173
+ * compiled async generator, Symbol.asyncIterator's result, or the sync
174
+ * iterator), and whether that iterator is synchronous. */
175
+ "dyn.asyncIteratorOpen": { argTypes: [DYN, STRING], result: DYN },
176
+ "dyn.asyncIteratorWasSync": { argTypes: [], result: BOOL },
172
177
  "dyn.iteratorResult": { argTypes: [DYN], result: DYN },
173
178
  "dyn.iteratorCanStep": { argTypes: [DYN, DYN], result: BOOL },
174
179
  "dyn.iteratorStep": { argTypes: [DYN], result: DYN },
@@ -217,6 +222,7 @@ export const LIB_FN_SIGS = defineLibFnSignatures({
217
222
  "dyn.nativeMapIs": { argTypes: [DYN], result: BOOL },
218
223
  "dyn.nativeUrlIs": { argTypes: [DYN], result: BOOL },
219
224
  "dyn.nativeDateIs": { argTypes: [DYN], result: BOOL },
225
+ "dyn.nativeDateHandleIs": { argTypes: [DYN], result: BOOL },
220
226
  /** A builtin constructor (`Object`, `Date`, `RegExp`, `Map`, `Set`,
221
227
  * `Promise`, `WeakMap`, `WeakSet`) read as a JavaScript value: one
222
228
  * interned function per name, the same one dynamic values answer for
@@ -236,6 +242,8 @@ export const LIB_FN_SIGS = defineLibFnSignatures({
236
242
  /** `new Date(value)` in JavaScript: a string argument parses with V8's
237
243
  * full date parser; every other value constructs as date.nativeNew. */
238
244
  "date.nativeNewValue": { argTypes: [DYN], result: DYN },
245
+ "date.argumentsTime": { argTypes: [DYN], result: DATE_T },
246
+ "date.classOperation": { argTypes: [DYN, DYN], result: VOID },
239
247
  "date.checkedValue": { argTypes: [DYN], result: DATE_T },
240
248
  "dyn.nativeRegexIs": { argTypes: [DYN], result: BOOL },
241
249
  /** toString() on a checked-dynamic receiver: runtime kind dispatch
@@ -637,6 +645,10 @@ export const LIB_FN_SIGS = defineLibFnSignatures({
637
645
  /** realpath(3) with Node's error shape (syscall "lstat" in the message,
638
646
  * Node's own spelling for realpathSync failures). +1 fresh string. */
639
647
  "fs.realpathSync": { argTypes: [STRING], result: STRING },
648
+ /** fs.realpathSync (or its .native when the flag is true) as a function
649
+ * value: path and options arrive unchecked; the result is a string or a
650
+ * Buffer by the options' encoding. */
651
+ "fs.realpathValue": { argTypes: [DYN, DYN, BOOL], result: DYN },
640
652
  /** Native realpath with syscall "realpath" on failure. +1 fresh string. */
641
653
  "fs.realpathNativeSync": { argTypes: [STRING], result: STRING },
642
654
  /** The os.userInfo() field trio (uv_os_get_passwd's slices): pw_name,
@@ -1045,6 +1057,9 @@ export const LIB_FN_SIGS = defineLibFnSignatures({
1045
1057
  "util.inherits": { argTypes: [DYN, DYN], result: VOID },
1046
1058
  "util.deprecate": { argTypes: [DYN, DYN, DYN, DYN], result: DYN },
1047
1059
  "util.callbackify": { argTypes: [DYN], result: DYN },
1060
+ /** util.promisify over an untyped function value: a native dyn function
1061
+ * whose calls answer a dyn promise the appended callback settles. */
1062
+ "util.promisifyDyn": { argTypes: [DYN], result: DYN },
1048
1063
  "util.debuglog": { argTypes: [DYN, DYN], result: DYN },
1049
1064
  "util.typeIs": { argTypes: [DYN, STRING], result: BOOL },
1050
1065
  "util.typeValue": { argTypes: [DYN, STRING], result: DYN },
@@ -1189,6 +1204,9 @@ export const LIB_FN_SIGS = defineLibFnSignatures({
1189
1204
  "atomics.wait": { argTypes: [bytesOf("i32"), F64, F64, F64], result: STRING },
1190
1205
  "atomics.notify": { argTypes: [bytesOf("i32"), F64, F64], result: F64 },
1191
1206
  "atomics.op": { argTypes: [null, F64, F64, F64, F64], result: F64 },
1207
+ "atomics.opDyn": { argTypes: [DYN, F64, F64, F64, F64], result: F64 },
1208
+ "atomics.waitDyn": { argTypes: [DYN, F64, F64, F64], result: STRING },
1209
+ "atomics.notifyDyn": { argTypes: [DYN, F64, F64], result: F64 },
1192
1210
  "worker.new": { argTypes: [F64, STRING, DYN], result: DYN },
1193
1211
  "worker.isMainThread": { argTypes: [], result: BOOL },
1194
1212
  "worker.threadId": { argTypes: [], result: F64 },
@@ -1386,6 +1404,11 @@ export const LIB_FN_SIGS = defineLibFnSignatures({
1386
1404
  * 'error'. A synchronous throw INSIDE the lookup propagates out of the
1387
1405
  * connect call (may-throw seed). */
1388
1406
  "net.connectLookup": { argTypes: [F64, STRING, null], result: NETSOCKET_T },
1407
+ /** connect({ host, port, lookup }) with a lookup of Node's own type, as
1408
+ * a checked-dynamic function: the runtime calls it with { hints, all:
1409
+ * true } and a callback taking an address string or list, then dials
1410
+ * the answers in order. MAY THROW (host validation, a lookup throw). */
1411
+ "net.connectLookupDyn": { argTypes: [F64, STRING, DYN], result: NETSOCKET_T },
1389
1412
  "net.sockWrite": { argTypes: [NETSOCKET_T, STRING], result: VOID },
1390
1413
  "net.sockWriteBytes": { argTypes: [NETSOCKET_T, BYTES_U8], result: VOID },
1391
1414
  "net.sockEnd": { argTypes: [NETSOCKET_T], result: VOID },
@@ -1456,10 +1479,10 @@ export const LIB_FN_SIGS = defineLibFnSignatures({
1456
1479
  "dgram.sendBytes": { argTypes: [DGRAMSOCK_T, BYTES_U8, F64, STRING], result: VOID },
1457
1480
  /** The send argument-validation ladder over dyn arguments (Node's
1458
1481
  * signature shuffle: slice bounds, list/type contracts, port/address
1459
- * validation, connected-state errors) — a fully-validated unconnected
1460
- * single-payload send RUNS; callback/list/connected forms meet the
1461
- * trailing fence. May-throw. */
1462
- "dgram.sendChk": { argTypes: [DGRAMSOCK_T, DYN, DYN, DYN, DYN, DYN, STRING], result: VOID },
1482
+ * validation, connected-state errors), then the send: lists, connected
1483
+ * sends and completion callbacks included. Up to six arguments, the
1484
+ * missing ones undefined. May-throw. */
1485
+ "dgram.sendChk": { argTypes: [DGRAMSOCK_T, DYN, DYN, DYN, DYN, DYN, DYN], result: VOID },
1463
1486
  "dgram.address": { argTypes: [DGRAMSOCK_T], result: VOID },
1464
1487
  "dgram.close": { argTypes: [DGRAMSOCK_T], result: VOID },
1465
1488
  "dgram.closeCb": {
@@ -2042,6 +2065,11 @@ export const LIB_FN_SIGS = defineLibFnSignatures({
2042
2065
  * surface — the handles are the same kinds. */
2043
2066
  "tls.createServer": { argTypes: [null, null], result: NETSERVER_T },
2044
2067
  "tls.createServerCb": { argTypes: [null, null, null], result: NETSERVER_T },
2068
+ /** The SNICallback forms: (cert, key, SNICallback[, handler]). The
2069
+ * callback is http2.createSecureServerSni's shape, a function or a
2070
+ * function | undefined union. */
2071
+ "tls.createServerSni": { argTypes: [null, null, null], result: NETSERVER_T },
2072
+ "tls.createServerSniCb": { argTypes: [null, null, null, null], result: NETSERVER_T },
2045
2073
  // The runtime options records (divergence 66's stance): a dyn options
2046
2074
  // value whose members read at runtime; pemDyn extracts a runtime-valued
2047
2075
  // cert/key member (arg 1 is the precomposed fence label).
@@ -2103,6 +2131,20 @@ export const LIB_FN_SIGS = defineLibFnSignatures({
2103
2131
  result: VOID,
2104
2132
  },
2105
2133
  "tls.sockOnSession": { argTypes: [NETSOCKET_T, null, BOOL], result: VOID },
2134
+ /** The 'secure' event: the handshake completed (after secureConnect on
2135
+ * a client). Plain sockets never fire it. */
2136
+ "tls.sockOnSecure": {
2137
+ argTypes: [NETSOCKET_T, { kind: "func", params: [], ret: VOID }, BOOL],
2138
+ result: VOID,
2139
+ },
2140
+ /** new tls.TLSSocket(socket, options) in server mode: a new TLS socket
2141
+ * takes over the socket's connection (wrapSocketCtx passes a literal's
2142
+ * secureContext member apart from the runtime options record). The
2143
+ * record reads at runtime: isServer, cert, key, ALPNProtocols,
2144
+ * minVersion and maxVersion are implemented, the client mode and other
2145
+ * documented members throw the runtime fence. MAY THROW. */
2146
+ "tls.wrapSocket": { argTypes: [NETSOCKET_T, DYN], result: NETSOCKET_T },
2147
+ "tls.wrapSocketCtx": { argTypes: [NETSOCKET_T, DYN, SECURECTX_T], result: NETSOCKET_T },
2106
2148
  // createSecureContext({ cert, key }) mints the opaque SNI-answer handle.
2107
2149
  /** tls.createSecureContext({ cert, key }) — parses the PEM pair into an
2108
2150
  * opaque SecureContext handle (secureCtx kind) for SNI callbacks to
@@ -2469,6 +2511,12 @@ export const LIB_FN_SIGS = defineLibFnSignatures({
2469
2511
  "child.onSpawn": { argTypes: [CHILD_T, null], result: VOID },
2470
2512
  /** Rest listeners use the checked function bridge to pack event arguments. */
2471
2513
  "child.onDyn": { argTypes: [CHILD_T, STRING, DYN], result: VOID },
2514
+ // Own properties JavaScript adds to children (handle-properties.ts).
2515
+ "child.propsInstall": { argTypes: [], result: VOID },
2516
+ "child.propsDefine": { argTypes: [DYN, DYN, DYN], result: DYN },
2517
+ "child.propsDescriptor": { argTypes: [DYN, DYN], result: DYN },
2518
+ "child.propsResolve": { argTypes: [DYN, DYN], result: { kind: "promise", inner: DYN } },
2519
+ "child.propsOnDyn": { argTypes: [CHILD_T, STRING, DYN], result: VOID },
2472
2520
  "process.connected": { argTypes: [], result: BOOL },
2473
2521
  /** Whether this fork child opened its channel; part of process.send's
2474
2522
  * presence in programs with fork targets. Never throws. */
@@ -2633,6 +2681,12 @@ export const LIB_FN_SIGS = defineLibFnSignatures({
2633
2681
  argTypes: [DYN, STRING],
2634
2682
  result: { kind: "object", className: "%Duplex" },
2635
2683
  },
2684
+ /** The Transform a Cipheriv or Decipheriv reads and writes as a stream
2685
+ * (+1, created on first use and owned by the cipher). */
2686
+ "stream.handleStream": {
2687
+ argTypes: [DYN],
2688
+ result: { kind: "object", className: "%Transform" },
2689
+ },
2636
2690
  /** Checked-dynamic stream slots (dyn-streams.ts): the native stream a
2637
2691
  * checked-dynamic value boxes (+1) — a runtime stream with the readable
2638
2692
  * (1) or writable (2) side — or null for any other value. Never throws;
@@ -2702,6 +2756,19 @@ export const LIB_FN_SIGS = defineLibFnSignatures({
2702
2756
  * cipher, key, iv and options arguments (scr_cipher.c): a native
2703
2757
  * Cipheriv/Decipheriv handle whose methods dispatch through dynInvoke. */
2704
2758
  "crypto.cipherNew": { argTypes: [BOOL, DYN, DYN, DYN, DYN], result: DYN },
2759
+ /** createECDH(curveName) over a checked-dynamic curve (scr_ecdh.c): a
2760
+ * native ECDH handle whose methods dispatch through dynInvoke. */
2761
+ "crypto.ecdhNew": { argTypes: [DYN], result: DYN },
2762
+ /** ECDH.convertKey(key, curve, inputEncoding, outputEncoding, format):
2763
+ * the converted point as a Buffer or string. */
2764
+ "crypto.ecdhConvertKey": { argTypes: [DYN, DYN, DYN, DYN, DYN], result: DYN },
2765
+ /** createDiffieHellman(sizeOrKey, keyEncoding, generator,
2766
+ * generatorEncoding) over checked-dynamic arguments (scr_dh.c): a native
2767
+ * DiffieHellman handle whose methods dispatch through dynInvoke. */
2768
+ "crypto.dhNew": { argTypes: [DYN, DYN, DYN, DYN], result: DYN },
2769
+ /** getDiffieHellman(groupName) and createDiffieHellmanGroup(name): a
2770
+ * native DiffieHellmanGroup handle. */
2771
+ "crypto.dhGroupNew": { argTypes: [DYN], result: DYN },
2705
2772
  "crypto.hmacNewStr": { argTypes: [STRING, STRING], result: CRYPTOHMAC_T },
2706
2773
  "crypto.hmacNewBytes": { argTypes: [STRING, BYTES_U8], result: CRYPTOHMAC_T },
2707
2774
  "crypto.hashUpdateStr": { argTypes: [CRYPTOHASH_T, STRING], result: CRYPTOHASH_T },
@@ -2760,11 +2827,20 @@ export const LIB_FN_SIGS = defineLibFnSignatures({
2760
2827
  /** WebCrypto (scr_webcrypto.c): each method takes its argument vector as
2761
2828
  * one dyn array and answers a promise that argument and validation
2762
2829
  * failures reject. CryptoKey values are native handles. */
2830
+ "webcrypto.generateKey": { argTypes: [DYN], result: { kind: "promise", inner: DYN } },
2763
2831
  "webcrypto.importKey": { argTypes: [DYN], result: { kind: "promise", inner: DYN } },
2832
+ "webcrypto.exportKey": { argTypes: [DYN], result: { kind: "promise", inner: DYN } },
2833
+ "webcrypto.encrypt": { argTypes: [DYN], result: { kind: "promise", inner: DYN } },
2834
+ "webcrypto.decrypt": { argTypes: [DYN], result: { kind: "promise", inner: DYN } },
2835
+ "webcrypto.wrapKey": { argTypes: [DYN], result: { kind: "promise", inner: DYN } },
2836
+ "webcrypto.unwrapKey": { argTypes: [DYN], result: { kind: "promise", inner: DYN } },
2837
+ "webcrypto.deriveBits": { argTypes: [DYN], result: { kind: "promise", inner: DYN } },
2838
+ "webcrypto.deriveKey": { argTypes: [DYN], result: { kind: "promise", inner: DYN } },
2764
2839
  "webcrypto.sign": { argTypes: [DYN], result: { kind: "promise", inner: DYN } },
2765
2840
  "webcrypto.verify": { argTypes: [DYN], result: { kind: "promise", inner: BOOL } },
2766
2841
  "webcrypto.digest": { argTypes: [DYN], result: { kind: "promise", inner: DYN } },
2767
2842
  "webcrypto.isCryptoKey": { argTypes: [DYN], result: BOOL },
2843
+ "webcrypto.object": { argTypes: [], result: DYN },
2768
2844
  "crypto.randomUUIDv7": { argTypes: [DYN], result: STRING },
2769
2845
  "crypto.pbkdf2": { argTypes: [BYTES_U8, BYTES_U8, F64, F64, STRING], result: BYTES_U8 },
2770
2846
  "crypto.randomBytesCb": { argTypes: [F64, null], result: VOID },
@@ -2821,6 +2897,9 @@ export const LIB_FN_SIGS = defineLibFnSignatures({
2821
2897
  * allocUnsafeSlow never pool. The size forms validate like Node
2822
2898
  * (ERR_OUT_OF_RANGE). poolSize reads and writes Buffer.poolSize. */
2823
2899
  "buffer.alloc": { argTypes: [F64], result: BYTES_U8 },
2900
+ /** Buffer.alloc as a function value: the size, fill and encoding arrive
2901
+ * unchecked, and the runtime fills as Node's alloc does. */
2902
+ "buffer.allocValue": { argTypes: [DYN, DYN, DYN], result: BYTES_U8 },
2824
2903
  "buffer.allocUnsafe": { argTypes: [F64], result: BYTES_U8 },
2825
2904
  "buffer.allocUnsafeSlow": { argTypes: [F64], result: BYTES_U8 },
2826
2905
  "buffer.poolFromStr": { argTypes: [STRING, STRING], result: BYTES_U8 },
@@ -2828,12 +2907,17 @@ export const LIB_FN_SIGS = defineLibFnSignatures({
2828
2907
  "buffer.poolFromBytes": { argTypes: [BYTES_U8], result: BYTES_U8 },
2829
2908
  "buffer.poolFromArray": { argTypes: [arrayOf(F64)], result: BYTES_U8 },
2830
2909
  "buffer.poolFromDyn": { argTypes: [DYN, STRING], result: BYTES_U8 },
2910
+ /** poolFromDyn that also copies an array crossing by reference. */
2911
+ "buffer.poolFromDynRef": { argTypes: [DYN, STRING], result: BYTES_U8 },
2912
+ "buffer.poolFromDynOffset": { argTypes: [DYN, DYN], result: BYTES_U8 },
2831
2913
  "buffer.poolSize": { argTypes: [], result: F64 },
2832
2914
  "buffer.setPoolSize": { argTypes: [F64], result: VOID },
2833
2915
  /** Buffer.byteLength(string, enc) — enc a NORMALIZED literal like
2834
2916
  * fromStr's — and Buffer.isEncoding(name) over a runtime string
2835
2917
  * (case-insensitive against Node's alias set). Pure; never throw. */
2836
2918
  "buffer.byteLenDyn": { argTypes: [DYN, STRING], result: F64 },
2919
+ /** Buffer.byteLength as a function value: the encoding arrives at run time. */
2920
+ "buffer.byteLenValue": { argTypes: [DYN, DYN], result: F64 },
2837
2921
  "buffer.byteLenStr": { argTypes: [STRING, STRING], result: F64 },
2838
2922
  "buffer.isEncoding": { argTypes: [STRING], result: BOOL },
2839
2923
  /** Buffer.concat(list, totalLength): the concatenation truncated or
@@ -3052,6 +3136,13 @@ export const LIB_FN_SIGS = defineLibFnSignatures({
3052
3136
  * scandir failure becomes its rejection. */
3053
3137
  "fsp.readdirTypes": { argTypes: [STRING], result: { kind: "promise", inner: VOID } },
3054
3138
  "fsp.rm": { argTypes: [STRING], result: { kind: "promise", inner: VOID } },
3139
+ /** `fs.promises.rm(path, options)`: fs.rmOptsSync and fs.rmRetrySync
3140
+ * behind a settled promise; their errors become its rejection. */
3141
+ "fsp.rmOpts": { argTypes: [STRING, BOOL, BOOL], result: { kind: "promise", inner: VOID } },
3142
+ "fsp.rmRetry": {
3143
+ argTypes: [STRING, BOOL, BOOL, F64, F64],
3144
+ result: { kind: "promise", inner: VOID },
3145
+ },
3055
3146
  "fsp.stat": { argTypes: [STRING], result: { kind: "promise", inner: STATS_T } },
3056
3147
  "fsp.realpath": { argTypes: [STRING], result: { kind: "promise", inner: STRING } },
3057
3148
  "fsp.lstat": { argTypes: [STRING], result: { kind: "promise", inner: STATS_T } },
@@ -3546,6 +3637,10 @@ export const LIB_FN_SIGS = defineLibFnSignatures({
3546
3637
  "dyn.arrayPrototype": { argTypes: [], result: DYN },
3547
3638
  "dyn.arrayConstructor": { argTypes: [], result: DYN },
3548
3639
  "dyn.objectPrototype": { argTypes: [], result: DYN },
3640
+ "dyn.errorPrototype": { argTypes: [], result: DYN },
3641
+ "dyn.inheritsErrorPrototype": { argTypes: [DYN], result: BOOL },
3642
+ "dyn.errorCaptureStackTrace": { argTypes: [DYN], result: DYN },
3643
+ "dyn.errorCaptureStackTraceFunction": { argTypes: [], result: DYN },
3549
3644
  "dyn.functionApply": { argTypes: [], result: DYN },
3550
3645
  "dyn.builtinMethod": { argTypes: [STRING, STRING], result: DYN },
3551
3646
  "dyn.classPrototype": { argTypes: [DYN, DYN], result: DYN },
@@ -3571,6 +3666,9 @@ export const LIB_FN_SIGS = defineLibFnSignatures({
3571
3666
  "dyn.bagGet": { argTypes: [DYN, STRING, DYN], result: DYN },
3572
3667
  "dyn.bagSet": { argTypes: [DYN, STRING, DYN, DYN], result: VOID },
3573
3668
  "dyn.objCreate": { argTypes: [DYN], result: DYN },
3669
+ // Names a compiled class's prototype object (args[0]) after the class
3670
+ // (args[1]) for util.inspect.
3671
+ "dyn.nameClassPrototype": { argTypes: [DYN, STRING], result: VOID },
3574
3672
  "dyn.objCreateWithProperties": { argTypes: [DYN, DYN], result: DYN },
3575
3673
  "dyn.getPrototype": { argTypes: [DYN], result: DYN },
3576
3674
  "dyn.setPrototype": { argTypes: [DYN, DYN], result: DYN },
@@ -3629,6 +3727,12 @@ export const LIB_FN_SIGS = defineLibFnSignatures({
3629
3727
  "regex.groupParseInt": { argTypes: [arrayOf(STRING), F64, F64], result: F64 },
3630
3728
  // `.index` / `.input` (args[1]) of a match result. Borrowed; never throws.
3631
3729
  "regex.resultProp": { argTypes: [arrayOf(STRING), STRING], result: DYN },
3730
+ // The string keys `for...in` visits on an array (args[0], any element
3731
+ // type) after its indices. Borrowed; never throws.
3732
+ "array.namedKeys": { argTypes: [null], result: arrayOf(STRING) },
3733
+ // Whether the array (args[0]) still has the key (args[1]) from its
3734
+ // namedKeys list. Borrowed; never throws.
3735
+ "array.hasNamedKey": { argTypes: [null, STRING], result: BOOL },
3632
3736
  // node:events EventEmitter: receivers are emitter-hierarchy objects and
3633
3737
  // the chaining forms (on/off/removeAll/setMax) return the receiver's
3634
3738
  // own class — program-dependent object types, checked in the libCall
@@ -3668,16 +3772,31 @@ export const LIB_FN_SIGS = defineLibFnSignatures({
3668
3772
  "emitter.checkListener": { argTypes: [DYN], result: VOID },
3669
3773
  "emitter.onDyn": { argTypes: [null, STRING, DYN, null, BOOL, BOOL], result: VOID },
3670
3774
  "emitter.onFlex": { argTypes: [null, STRING, DYN, BOOL, BOOL], result: VOID },
3775
+ /** on/once/prepend* and emit through an untyped value (the class
3776
+ * dispatch of compiled emitters): onFlex/emitFlex plus runtime typed
3777
+ * adapters under 'error' and the meta events, and Node's unhandled-'error'
3778
+ * contract. emitAny is VARIADIC like emitFlex. */
3779
+ "emitter.onAny": { argTypes: [null, STRING, DYN, BOOL, BOOL], result: VOID },
3671
3780
  "emitter.offDyn": { argTypes: [null, STRING, DYN], result: VOID },
3672
3781
  "emitter.removeAll": { argTypes: [null, STRING, BOOL], result: VOID },
3673
3782
  "emitter.emit": { argTypes: [null, STRING], result: BOOL },
3674
3783
  "emitter.emitFlex": { argTypes: [null, STRING], result: BOOL },
3784
+ "emitter.emitAny": { argTypes: [null, STRING], result: BOOL },
3785
+ /** An untyped emit of an event with a fixed tuple: (recv, name, k, then
3786
+ * k checked-dynamic arguments as given, then the event's converted
3787
+ * tuple) — VARIADIC like emitter.emit. hasTyped answers whether a
3788
+ * listener of the name needs the converted tuple. */
3789
+ "emitter.emitMixed": { argTypes: [null, STRING, F64], result: BOOL },
3790
+ "emitter.hasTyped": { argTypes: [null, STRING], result: BOOL },
3675
3791
  "emitter.emitError": { argTypes: [null, STRING, null], result: BOOL },
3676
3792
  "emitter.count": { argTypes: [null, STRING], result: F64 },
3677
3793
  "emitter.countFn": { argTypes: [null, STRING, null], result: F64 },
3678
3794
  "emitter.countDyn": { argTypes: [null, STRING, DYN], result: F64 },
3679
3795
  "emitter.names": { argTypes: [null], result: VOID },
3680
3796
  "emitter.listeners": { argTypes: [null, STRING], result: VOID },
3797
+ /** listeners()/rawListeners() through an untyped value: a checked-
3798
+ * dynamic array (throws when a listener has typed parameters). */
3799
+ "emitter.listenersDyn": { argTypes: [null, STRING], result: DYN },
3681
3800
  /** Stream-'data' registration twins of emitter.on/onDyn (same args):
3682
3801
  * chosen at registration sites whose receiver is stream-rooted, so the
3683
3802
  * backend emits DATA thunks — the runtime's 'data' emission carries
@@ -3727,7 +3846,11 @@ export const LIB_FN_SIGS = defineLibFnSignatures({
3727
3846
  * readable.unpipe (recv[, dst]) → recv +1.
3728
3847
  * writable.write/writeStr: (recv, chunk[, cb]) → below-hwm bool (cb
3729
3848
  * MOVES when present, called after the user write completes).
3730
- * writable.end: (recv, flags[, chunk][, cb]) → recv +1. cork/uncork are
3849
+ * writable.writeEnc: (recv, flags, chunk[, encoding][, cb]) — flags 1
3850
+ * an encoding argument, 2 a callback (the encoding is then null, as
3851
+ * Node's write shifts it).
3852
+ * writable.end: (recv, flags[, chunk][, encoding][, cb]) → recv +1;
3853
+ * flags 16: an encoding argument follows the dyn chunk. cork/uncork are
3731
3854
  * void. stream.destroy/destroyErr: (recv[, err]) → recv +1.
3732
3855
  * stream.prop: (recv, name-literal) → the flag/number the name asks
3733
3856
  * for; stream.errored → Error|null union; readable.flowing →
@@ -3812,14 +3935,15 @@ export const LIB_FN_SIGS = defineLibFnSignatures({
3812
3935
  "stream.finishedOpts": { argTypes: [null, F64, F64, BOOL, null], result: VOID },
3813
3936
  "stream.finishedOptsSignal": { argTypes: [null, F64, F64, BOOL, DYN, null], result: VOID },
3814
3937
  "sp.pipeline": { argTypes: [F64], result: { kind: "promise", inner: VOID } },
3815
- /** pipeline with a run of function stages: [n, at, k, flags, mask,
3816
- * s1..sn, stage1..stagek, (next, read, return)?, box?, (signal,
3817
- * abort)?] (+ the callback for the stream.* forms): the user's stage
3818
- * functions, the frontend's helpers over the pumped generator or a
3819
- * promise destination's box, and the pipeline's AbortSignal with its
3820
- * abort closure; flags names which groups are present
3821
- * (scr_stream_pipeline_stages). A promise destination's promise type is
3822
- * sp.pipelineStages' result. */
3938
+ /** pipeline with function stages: [n, k, positions, flags, mask,
3939
+ * s1..sn, stage1..stagek, helpers..., box?, (signal, abort)?] (+ the
3940
+ * callback for the stream.* forms): the user's stage functions at the
3941
+ * positions the bitmask names, the frontend's (next, read, return)
3942
+ * helpers for each pumped generator (pipelinePumpedRuns) and a promise
3943
+ * destination's box, and the pipeline's AbortSignal with its abort
3944
+ * closure; flags bits 1-2 give the destination kind and bit 5 the
3945
+ * signal group (scr_stream_pipeline_stages). A promise destination's
3946
+ * promise type is sp.pipelineStages' result. */
3823
3947
  "sp.pipelineStages": {
3824
3948
  argTypes: [F64, F64, F64, F64, F64],
3825
3949
  result: { kind: "promise", inner: VOID },
@@ -3865,6 +3989,7 @@ export const LIB_FN_SIGS = defineLibFnSignatures({
3865
3989
  "readable.pushU": { argTypes: [null, null], result: BOOL },
3866
3990
  "readable.pushDyn": { argTypes: [null, DYN], result: BOOL },
3867
3991
  "readable.unshift": { argTypes: [null, BYTES_U8], result: VOID },
3992
+ "readable.unshiftDyn": { argTypes: [null, DYN], result: VOID },
3868
3993
  "readable.unshiftStr": { argTypes: [null, STRING], result: VOID },
3869
3994
  "stream.onDyn": { argTypes: [null, STRING, DYN, BOOL, BOOL], result: VOID },
3870
3995
  "readable.readDyn": { argTypes: [null, DYN], result: DYN },
@@ -3876,6 +4001,12 @@ export const LIB_FN_SIGS = defineLibFnSignatures({
3876
4001
  * Buffer.from(chunk, enc)); both carry the CANONICAL literal. */
3877
4002
  "readable.pushStrEnc": { argTypes: [null, STRING, STRING], result: BOOL },
3878
4003
  "readable.pushEncoding": { argTypes: [null, STRING], result: VOID },
4004
+ /** The objectMode option's sides (readable, writable), applied right
4005
+ * after construction; answers the receiver (+1, the chaining shape). */
4006
+ "stream.objectMode": { argTypes: [null, BOOL, BOOL], result: VOID },
4007
+ /** Whether a readable.nextChunkDyn step answered the end (the done
4008
+ * marker; an object-mode stream can yield undefined). */
4009
+ "stream.chunkDone": { argTypes: [DYN], result: BOOL },
3879
4010
  /** for-await over a readable (the desugared loop's per-pass promise):
3880
4011
  * +1 promise of the next chunk — buffered content, the EOF sentinel
3881
4012
  * (empty Buffer / dyn undefined), or a rejection with the stream's
@@ -3929,6 +4060,7 @@ export const LIB_FN_SIGS = defineLibFnSignatures({
3929
4060
  "writable.writeStr": { argTypes: [null, STRING], result: BOOL },
3930
4061
  "writable.writeU": { argTypes: [null, null], result: BOOL },
3931
4062
  "writable.writeDyn": { argTypes: [null, DYN], result: BOOL },
4063
+ "writable.writeEnc": { argTypes: [null, F64, DYN], result: BOOL },
3932
4064
  "writable.end": { argTypes: [null, F64], result: VOID },
3933
4065
  "writable.cork": { argTypes: [null], result: VOID },
3934
4066
  "writable.uncork": { argTypes: [null], result: VOID },
@@ -4100,6 +4232,9 @@ export const LIB_FN_SIGS = defineLibFnSignatures({
4100
4232
  /** A numeric typed array that is not a Buffer (any element kind). */
4101
4233
  "insp.typedArray": { argTypes: [null, F64, F64], result: STRING },
4102
4234
  "insp.error": { argTypes: [null, F64, F64], result: STRING },
4235
+ "insp.errorHasCause": { argTypes: [null], result: BOOL },
4236
+ "insp.errorBagHasProperties": { argTypes: [DYN], result: BOOL },
4237
+ "insp.errorCause": { argTypes: [null, F64, F64], result: STRING },
4103
4238
  "insp.dyn": { argTypes: [DYN, F64, F64], result: STRING },
4104
4239
  "insp.dynS": { argTypes: [DYN, F64], result: STRING },
4105
4240
  "insp.begin": { argTypes: [F64], result: VOID },
@@ -4502,6 +4637,30 @@ export const LIB_FN_SIGS = defineLibFnSignatures({
4502
4637
  * lone surrogate as U+FFFD). Borrowed arg; owned (+1) string; never throws. */
4503
4638
  "text.decode": { argTypes: [BYTES_U8], result: STRING },
4504
4639
  "bytes.bufferSource": { argTypes: [DYN], result: BYTES_U8 },
4640
+ /** Whether an error-first callback's Buffer result is absent: the zlib
4641
+ * and crypto callback adapters pass NULL after an error. Borrowed arg;
4642
+ * never throws. */
4643
+ "bytes.isAbsent": { argTypes: [BYTES_U8], result: BOOL },
4644
+ /** The absent Buffer result itself (NULL), where an error-path callback
4645
+ * body passes its undefined result on into a Buffer slot. Owned (+1);
4646
+ * never throws. */
4647
+ "bytes.absent": { argTypes: [], result: BYTES_U8 },
4648
+ /** node:crypto asymmetric keys and signatures (scr_pki.c): checked-
4649
+ * dynamic arguments, borrowed; KeyObject, Sign and Verify handles,
4650
+ * Buffers and booleans as checked-dynamic results (+1). Node's argument
4651
+ * and decoder errors throw (may-throw); generateKeyPairCb's callback
4652
+ * receives (null, publicKey, privateKey) in a later macrotask. */
4653
+ "crypto.createPrivateKey": { argTypes: [DYN], result: DYN },
4654
+ "crypto.createPublicKey": { argTypes: [DYN], result: DYN },
4655
+ "crypto.generateKeyPairSync": { argTypes: [DYN, DYN], result: DYN },
4656
+ "crypto.generateKeyPairCb": { argTypes: [DYN, DYN, DYN], result: VOID },
4657
+ "crypto.signOneshot": { argTypes: [DYN, DYN, DYN], result: DYN },
4658
+ "crypto.verifyOneshot": { argTypes: [DYN, DYN, DYN, DYN], result: DYN },
4659
+ "crypto.createSign": { argTypes: [DYN], result: DYN },
4660
+ "crypto.createVerify": { argTypes: [DYN], result: DYN },
4661
+ /** The Buffer brand of a Uint8Array source onto a fresh Uint8Array
4662
+ * result (map and filter of a Buffer return a Buffer). */
4663
+ "bytes.copyBrand": { argTypes: [BYTES_U8, BYTES_U8], result: VOID },
4505
4664
  "text.decodeBufferSource": { argTypes: [DYN], result: STRING },
4506
4665
  "text.decodeOptions": { argTypes: [BYTES_U8, BOOL, BOOL], result: STRING },
4507
4666
  "text.decodeStream": { argTypes: [DYN, BYTES_U8, F64, BOOL, BOOL, BOOL], result: STRING },
@@ -4527,8 +4686,7 @@ export const LIB_FN_SIGS = defineLibFnSignatures({
4527
4686
  * return value has no lowering (statement position only, frontend-
4528
4687
  * fenced). rmOptsSync is rmSync with (recursive, force) bools: force
4529
4688
  * swallows ENOENT, recursive removes trees post-order, a directory
4530
- * without recursive throws the EISDIR-worded error (divergence 13's
4531
- * wording note). mkdtempSync appends the six X's and returns the
4689
+ * without recursive throws Node's ERR_FS_EISDIR SystemError. mkdtempSync appends the six X's and returns the
4532
4690
  * created path (+1). accessSync takes the F_OK/R_OK/W_OK/X_OK bits as
4533
4691
  * one f64 (the frontend bakes fs.constants.* as literals and completes
4534
4692
  * an omitted mode to 0). readFdSync/readFdSyncBytes are the
@@ -4539,7 +4697,9 @@ export const LIB_FN_SIGS = defineLibFnSignatures({
4539
4697
  /** rmOptsSync's maxRetries/retryDelay form (path, recursive, force,
4540
4698
  * maxRetries, retryDelay): Node's linear-backoff retry on
4541
4699
  * EBUSY/EMFILE/ENFILE/ENOTEMPTY/EPERM — the tmpdir-harness shape
4542
- * rmSync(p, { maxRetries: 3, recursive: true, force: true }). */
4700
+ * rmSync(p, { maxRetries: 3, recursive: true, force: true }). Throws
4701
+ * ERR_OUT_OF_RANGE for a retryDelay outside int32 >= 0 or a maxRetries
4702
+ * outside uint32, before checking the path. */
4543
4703
  "fs.rmRetrySync": { argTypes: [STRING, BOOL, BOOL, F64, F64], result: VOID },
4544
4704
  "fs.mkdtempSync": { argTypes: [STRING], result: STRING },
4545
4705
  "fs.accessSync": { argTypes: [STRING, F64], result: VOID },
@@ -4591,4 +4751,15 @@ export const LIB_FN_SIGS = defineLibFnSignatures({
4591
4751
  * +1 string; never throws. */
4592
4752
  "string.raw": { argTypes: [arrayOf(STRING), arrayOf(STRING)], result: STRING },
4593
4753
  });
4754
+ /** The function-stage runs of a pipeline of `total` stages that a stream
4755
+ * follows (positions bit j: stage j is a function): each pumps its last
4756
+ * generator into that stream through one (next, read, return) triple. */
4757
+ export function pipelinePumpedRuns(total, positions) {
4758
+ let runs = 0;
4759
+ for (let j = 0; j + 1 < total; j++) {
4760
+ if (Math.floor(positions / 2 ** j) % 2 === 1 && Math.floor(positions / 2 ** (j + 1)) % 2 === 0)
4761
+ runs++;
4762
+ }
4763
+ return runs;
4764
+ }
4594
4765
  //# sourceMappingURL=builtin-signatures.js.map