@scriptc/cli-darwin-x64 0.2.4 → 0.2.6

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 (434) hide show
  1. package/dist/THIRD_PARTY_NOTICES +1 -1
  2. package/dist/bin/scriptc +0 -0
  3. package/dist/bin/scriptc.json +1 -1
  4. package/dist/lib/declarations/scriptc-node-fallback.d.ts +972 -245
  5. package/dist/lib/declarations/scriptc-overrides.d.ts +5 -1
  6. package/dist/lib/declarations/scriptc.d.ts +22 -2
  7. package/dist/lib/llvm/bin/scriptc-llvm-codegen +0 -0
  8. package/dist/lib/llvm/package.json +1 -1
  9. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default/scr_array.o +0 -0
  10. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default/scr_assert.o +0 -0
  11. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default/scr_async.o +0 -0
  12. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default/scr_bytes.o +0 -0
  13. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default/scr_bytes_io.o +0 -0
  14. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default/scr_child.o +0 -0
  15. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default/scr_closure.o +0 -0
  16. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default/scr_console.o +0 -0
  17. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default/scr_context.o +0 -0
  18. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default/scr_copying.o +0 -0
  19. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default/scr_cycle.o +0 -0
  20. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default/scr_dgram.o +0 -0
  21. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default/scr_error.o +0 -0
  22. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default/scr_events.o +0 -0
  23. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default/scr_events_emitter.o +0 -0
  24. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default/scr_exception.o +0 -0
  25. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default/scr_fetch.o +0 -0
  26. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default/scr_file_handle.o +0 -0
  27. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default/scr_json.o +0 -0
  28. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default/scr_lib.o +0 -0
  29. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default/scr_map.o +0 -0
  30. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default/scr_number.o +0 -0
  31. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default/scr_object.o +0 -0
  32. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default/scr_readline.o +0 -0
  33. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default/scr_regex.o +0 -0
  34. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default/scr_shared.o +0 -0
  35. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default/scr_stream.o +0 -0
  36. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default/scr_string.o +0 -0
  37. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default/scr_tls.o +0 -0
  38. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default/scr_union.o +0 -0
  39. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default/scr_util_compare.o +0 -0
  40. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_array.o +0 -0
  41. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_assert.o +0 -0
  42. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_async.o +0 -0
  43. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_async_dyn.o +0 -0
  44. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_bigint.o +0 -0
  45. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_bigint_assert.o +0 -0
  46. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_bytes.o +0 -0
  47. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_bytes_io.o +0 -0
  48. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_child.o +0 -0
  49. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_closure.o +0 -0
  50. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_console.o +0 -0
  51. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_console_native.o +0 -0
  52. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_context.o +0 -0
  53. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_copying.o +0 -0
  54. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_crypto_async.o +0 -0
  55. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_cycle.o +0 -0
  56. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_dc.o +0 -0
  57. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_dgram.o +0 -0
  58. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_dyn_handle.o +0 -0
  59. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_dyn_invoke.o +0 -0
  60. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_error.o +0 -0
  61. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_events.o +0 -0
  62. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_events_emitter.o +0 -0
  63. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_exception.o +0 -0
  64. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_fetch.o +0 -0
  65. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_ffi.o +0 -0
  66. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_ffi_queue.o +0 -0
  67. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_file_handle.o +0 -0
  68. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_grapheme.o +0 -0
  69. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_http.o +0 -0
  70. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_http2.o +0 -0
  71. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_inspect.o +0 -0
  72. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_json.o +0 -0
  73. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_lib.o +0 -0
  74. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_loop_epoll.o +0 -0
  75. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_loop_kqueue.o +0 -0
  76. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_loop_wsapoll.o +0 -0
  77. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_map.o +0 -0
  78. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_net.o +0 -0
  79. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_node_builtin.o +0 -0
  80. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_number.o +0 -0
  81. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_object.o +0 -0
  82. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_path.o +0 -0
  83. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_qs.o +0 -0
  84. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_readline.o +0 -0
  85. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_regex.o +0 -0
  86. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_shared.o +0 -0
  87. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_stream.o +0 -0
  88. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_string.o +0 -0
  89. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_symbol.o +0 -0
  90. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_test.o +0 -0
  91. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_tls.o +0 -0
  92. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_tls_ca.o +0 -0
  93. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_union.o +0 -0
  94. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_url.o +0 -0
  95. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_url_params.o +0 -0
  96. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_util.o +0 -0
  97. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_util_compare.o +0 -0
  98. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_util_style.o +0 -0
  99. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_watch.o +0 -0
  100. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/default-workers/scr_zlib.o +0 -0
  101. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/dynamic/scr_array.o +0 -0
  102. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/dynamic/scr_assert.o +0 -0
  103. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/dynamic/scr_async.o +0 -0
  104. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/dynamic/scr_bytes.o +0 -0
  105. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/dynamic/scr_bytes_io.o +0 -0
  106. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/dynamic/scr_child.o +0 -0
  107. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/dynamic/scr_closure.o +0 -0
  108. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/dynamic/scr_console.o +0 -0
  109. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/dynamic/scr_context.o +0 -0
  110. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/dynamic/scr_copying.o +0 -0
  111. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/dynamic/scr_cycle.o +0 -0
  112. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/dynamic/scr_dgram.o +0 -0
  113. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/dynamic/scr_error.o +0 -0
  114. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/dynamic/scr_events.o +0 -0
  115. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/dynamic/scr_events_emitter.o +0 -0
  116. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/dynamic/scr_exception.o +0 -0
  117. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/dynamic/scr_file_handle.o +0 -0
  118. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/dynamic/scr_island.o +0 -0
  119. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/dynamic/scr_json.o +0 -0
  120. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/dynamic/scr_lib.o +0 -0
  121. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/dynamic/scr_map.o +0 -0
  122. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/dynamic/scr_number.o +0 -0
  123. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/dynamic/scr_object.o +0 -0
  124. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/dynamic/scr_readline.o +0 -0
  125. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/dynamic/scr_regex.o +0 -0
  126. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/dynamic/scr_shared.o +0 -0
  127. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/dynamic/scr_stream.o +0 -0
  128. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/dynamic/scr_string.o +0 -0
  129. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/dynamic/scr_tls.o +0 -0
  130. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/dynamic/scr_union.o +0 -0
  131. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/dynamic/scr_util_compare.o +0 -0
  132. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/dynamic-text-decoder-legacy/scr_bytes.o +0 -0
  133. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/text-decoder-legacy/scr_bytes.o +0 -0
  134. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/text-decoder-legacy-workers/scr_bytes.o +0 -0
  135. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/workers/scr_mailbox.o +0 -0
  136. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/workers/scr_message.o +0 -0
  137. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/workers/scr_worker.o +0 -0
  138. package/dist/lib/runtime-darwin-x64/artifacts/dev/runtime/workers/scr_worker_events.o +0 -0
  139. package/dist/lib/runtime-darwin-x64/artifacts/library-dev/runtime/default/scr_array.o +0 -0
  140. package/dist/lib/runtime-darwin-x64/artifacts/library-dev/runtime/default/scr_assert.o +0 -0
  141. package/dist/lib/runtime-darwin-x64/artifacts/library-dev/runtime/default/scr_bytes.o +0 -0
  142. package/dist/lib/runtime-darwin-x64/artifacts/library-dev/runtime/default/scr_bytes_io.o +0 -0
  143. package/dist/lib/runtime-darwin-x64/artifacts/library-dev/runtime/default/scr_closure.o +0 -0
  144. package/dist/lib/runtime-darwin-x64/artifacts/library-dev/runtime/default/scr_context.o +0 -0
  145. package/dist/lib/runtime-darwin-x64/artifacts/library-dev/runtime/default/scr_copying.o +0 -0
  146. package/dist/lib/runtime-darwin-x64/artifacts/library-dev/runtime/default/scr_cycle.o +0 -0
  147. package/dist/lib/runtime-darwin-x64/artifacts/library-dev/runtime/default/scr_error.o +0 -0
  148. package/dist/lib/runtime-darwin-x64/artifacts/library-dev/runtime/default/scr_events_emitter.o +0 -0
  149. package/dist/lib/runtime-darwin-x64/artifacts/library-dev/runtime/default/scr_exception.o +0 -0
  150. package/dist/lib/runtime-darwin-x64/artifacts/library-dev/runtime/default/scr_json.o +0 -0
  151. package/dist/lib/runtime-darwin-x64/artifacts/library-dev/runtime/default/scr_lib.o +0 -0
  152. package/dist/lib/runtime-darwin-x64/artifacts/library-dev/runtime/default/scr_map.o +0 -0
  153. package/dist/lib/runtime-darwin-x64/artifacts/library-dev/runtime/default/scr_number.o +0 -0
  154. package/dist/lib/runtime-darwin-x64/artifacts/library-dev/runtime/default/scr_object.o +0 -0
  155. package/dist/lib/runtime-darwin-x64/artifacts/library-dev/runtime/default/scr_regex.o +0 -0
  156. package/dist/lib/runtime-darwin-x64/artifacts/library-dev/runtime/default/scr_shared.o +0 -0
  157. package/dist/lib/runtime-darwin-x64/artifacts/library-dev/runtime/default/scr_string.o +0 -0
  158. package/dist/lib/runtime-darwin-x64/artifacts/library-dev/runtime/default/scr_union.o +0 -0
  159. package/dist/lib/runtime-darwin-x64/artifacts/library-dev/runtime/text-decoder-legacy/scr_bytes.o +0 -0
  160. package/dist/lib/runtime-darwin-x64/artifacts/library-release/runtime/default/scr_array.o +0 -0
  161. package/dist/lib/runtime-darwin-x64/artifacts/library-release/runtime/default/scr_assert.o +0 -0
  162. package/dist/lib/runtime-darwin-x64/artifacts/library-release/runtime/default/scr_bytes.o +0 -0
  163. package/dist/lib/runtime-darwin-x64/artifacts/library-release/runtime/default/scr_bytes_io.o +0 -0
  164. package/dist/lib/runtime-darwin-x64/artifacts/library-release/runtime/default/scr_closure.o +0 -0
  165. package/dist/lib/runtime-darwin-x64/artifacts/library-release/runtime/default/scr_context.o +0 -0
  166. package/dist/lib/runtime-darwin-x64/artifacts/library-release/runtime/default/scr_copying.o +0 -0
  167. package/dist/lib/runtime-darwin-x64/artifacts/library-release/runtime/default/scr_cycle.o +0 -0
  168. package/dist/lib/runtime-darwin-x64/artifacts/library-release/runtime/default/scr_error.o +0 -0
  169. package/dist/lib/runtime-darwin-x64/artifacts/library-release/runtime/default/scr_events_emitter.o +0 -0
  170. package/dist/lib/runtime-darwin-x64/artifacts/library-release/runtime/default/scr_exception.o +0 -0
  171. package/dist/lib/runtime-darwin-x64/artifacts/library-release/runtime/default/scr_json.o +0 -0
  172. package/dist/lib/runtime-darwin-x64/artifacts/library-release/runtime/default/scr_lib.o +0 -0
  173. package/dist/lib/runtime-darwin-x64/artifacts/library-release/runtime/default/scr_map.o +0 -0
  174. package/dist/lib/runtime-darwin-x64/artifacts/library-release/runtime/default/scr_number.o +0 -0
  175. package/dist/lib/runtime-darwin-x64/artifacts/library-release/runtime/default/scr_object.o +0 -0
  176. package/dist/lib/runtime-darwin-x64/artifacts/library-release/runtime/default/scr_regex.o +0 -0
  177. package/dist/lib/runtime-darwin-x64/artifacts/library-release/runtime/default/scr_shared.o +0 -0
  178. package/dist/lib/runtime-darwin-x64/artifacts/library-release/runtime/default/scr_string.o +0 -0
  179. package/dist/lib/runtime-darwin-x64/artifacts/library-release/runtime/default/scr_union.o +0 -0
  180. package/dist/lib/runtime-darwin-x64/artifacts/library-release/runtime/text-decoder-legacy/scr_bytes.o +0 -0
  181. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-dev/runtime/default/scr_array.o +0 -0
  182. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-dev/runtime/default/scr_assert.o +0 -0
  183. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-dev/runtime/default/scr_bytes.o +0 -0
  184. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-dev/runtime/default/scr_bytes_io.o +0 -0
  185. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-dev/runtime/default/scr_closure.o +0 -0
  186. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-dev/runtime/default/scr_console.o +0 -0
  187. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-dev/runtime/default/scr_context.o +0 -0
  188. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-dev/runtime/default/scr_copying.o +0 -0
  189. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-dev/runtime/default/scr_cycle.o +0 -0
  190. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-dev/runtime/default/scr_error.o +0 -0
  191. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-dev/runtime/default/scr_events_emitter.o +0 -0
  192. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-dev/runtime/default/scr_exception.o +0 -0
  193. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-dev/runtime/default/scr_inspect.o +0 -0
  194. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-dev/runtime/default/scr_json.o +0 -0
  195. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-dev/runtime/default/scr_lib.o +0 -0
  196. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-dev/runtime/default/scr_map.o +0 -0
  197. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-dev/runtime/default/scr_number.o +0 -0
  198. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-dev/runtime/default/scr_object.o +0 -0
  199. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-dev/runtime/default/scr_regex.o +0 -0
  200. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-dev/runtime/default/scr_shared.o +0 -0
  201. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-dev/runtime/default/scr_string.o +0 -0
  202. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-dev/runtime/default/scr_union.o +0 -0
  203. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-dev/runtime/default/scr_zlib.o +0 -0
  204. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-dev/runtime/text-decoder-legacy/scr_bytes.o +0 -0
  205. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-release/runtime/default/scr_array.o +0 -0
  206. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-release/runtime/default/scr_assert.o +0 -0
  207. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-release/runtime/default/scr_bytes.o +0 -0
  208. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-release/runtime/default/scr_bytes_io.o +0 -0
  209. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-release/runtime/default/scr_closure.o +0 -0
  210. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-release/runtime/default/scr_console.o +0 -0
  211. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-release/runtime/default/scr_context.o +0 -0
  212. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-release/runtime/default/scr_copying.o +0 -0
  213. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-release/runtime/default/scr_cycle.o +0 -0
  214. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-release/runtime/default/scr_error.o +0 -0
  215. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-release/runtime/default/scr_events_emitter.o +0 -0
  216. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-release/runtime/default/scr_exception.o +0 -0
  217. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-release/runtime/default/scr_inspect.o +0 -0
  218. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-release/runtime/default/scr_json.o +0 -0
  219. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-release/runtime/default/scr_lib.o +0 -0
  220. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-release/runtime/default/scr_map.o +0 -0
  221. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-release/runtime/default/scr_number.o +0 -0
  222. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-release/runtime/default/scr_object.o +0 -0
  223. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-release/runtime/default/scr_regex.o +0 -0
  224. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-release/runtime/default/scr_shared.o +0 -0
  225. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-release/runtime/default/scr_string.o +0 -0
  226. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-release/runtime/default/scr_union.o +0 -0
  227. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-release/runtime/default/scr_zlib.o +0 -0
  228. package/dist/lib/runtime-darwin-x64/artifacts/library-thread-release/runtime/text-decoder-legacy/scr_bytes.o +0 -0
  229. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default/scr_array.o +0 -0
  230. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default/scr_assert.o +0 -0
  231. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default/scr_async.o +0 -0
  232. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default/scr_bytes.o +0 -0
  233. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default/scr_bytes_io.o +0 -0
  234. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default/scr_child.o +0 -0
  235. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default/scr_closure.o +0 -0
  236. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default/scr_console.o +0 -0
  237. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default/scr_context.o +0 -0
  238. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default/scr_copying.o +0 -0
  239. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default/scr_cycle.o +0 -0
  240. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default/scr_dgram.o +0 -0
  241. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default/scr_error.o +0 -0
  242. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default/scr_events.o +0 -0
  243. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default/scr_events_emitter.o +0 -0
  244. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default/scr_exception.o +0 -0
  245. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default/scr_fetch.o +0 -0
  246. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default/scr_file_handle.o +0 -0
  247. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default/scr_json.o +0 -0
  248. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default/scr_lib.o +0 -0
  249. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default/scr_map.o +0 -0
  250. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default/scr_number.o +0 -0
  251. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default/scr_object.o +0 -0
  252. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default/scr_readline.o +0 -0
  253. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default/scr_regex.o +0 -0
  254. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default/scr_shared.o +0 -0
  255. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default/scr_stream.o +0 -0
  256. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default/scr_string.o +0 -0
  257. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default/scr_tls.o +0 -0
  258. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default/scr_union.o +0 -0
  259. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default/scr_util_compare.o +0 -0
  260. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_array.o +0 -0
  261. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_assert.o +0 -0
  262. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_async.o +0 -0
  263. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_async_dyn.o +0 -0
  264. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_bigint.o +0 -0
  265. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_bigint_assert.o +0 -0
  266. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_bytes.o +0 -0
  267. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_bytes_io.o +0 -0
  268. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_child.o +0 -0
  269. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_closure.o +0 -0
  270. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_console.o +0 -0
  271. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_console_native.o +0 -0
  272. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_context.o +0 -0
  273. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_copying.o +0 -0
  274. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_crypto_async.o +0 -0
  275. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_cycle.o +0 -0
  276. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_dc.o +0 -0
  277. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_dgram.o +0 -0
  278. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_dyn_handle.o +0 -0
  279. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_dyn_invoke.o +0 -0
  280. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_error.o +0 -0
  281. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_events.o +0 -0
  282. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_events_emitter.o +0 -0
  283. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_exception.o +0 -0
  284. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_fetch.o +0 -0
  285. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_ffi.o +0 -0
  286. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_ffi_queue.o +0 -0
  287. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_file_handle.o +0 -0
  288. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_grapheme.o +0 -0
  289. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_http.o +0 -0
  290. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_http2.o +0 -0
  291. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_inspect.o +0 -0
  292. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_json.o +0 -0
  293. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_lib.o +0 -0
  294. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_loop_epoll.o +0 -0
  295. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_loop_kqueue.o +0 -0
  296. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_loop_wsapoll.o +0 -0
  297. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_map.o +0 -0
  298. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_net.o +0 -0
  299. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_node_builtin.o +0 -0
  300. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_number.o +0 -0
  301. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_object.o +0 -0
  302. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_path.o +0 -0
  303. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_qs.o +0 -0
  304. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_readline.o +0 -0
  305. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_regex.o +0 -0
  306. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_shared.o +0 -0
  307. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_stream.o +0 -0
  308. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_string.o +0 -0
  309. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_symbol.o +0 -0
  310. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_test.o +0 -0
  311. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_tls.o +0 -0
  312. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_tls_ca.o +0 -0
  313. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_union.o +0 -0
  314. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_url.o +0 -0
  315. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_url_params.o +0 -0
  316. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_util.o +0 -0
  317. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_util_compare.o +0 -0
  318. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_util_style.o +0 -0
  319. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_watch.o +0 -0
  320. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/default-workers/scr_zlib.o +0 -0
  321. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/dynamic/scr_array.o +0 -0
  322. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/dynamic/scr_assert.o +0 -0
  323. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/dynamic/scr_async.o +0 -0
  324. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/dynamic/scr_bytes.o +0 -0
  325. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/dynamic/scr_bytes_io.o +0 -0
  326. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/dynamic/scr_child.o +0 -0
  327. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/dynamic/scr_closure.o +0 -0
  328. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/dynamic/scr_console.o +0 -0
  329. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/dynamic/scr_context.o +0 -0
  330. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/dynamic/scr_copying.o +0 -0
  331. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/dynamic/scr_cycle.o +0 -0
  332. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/dynamic/scr_dgram.o +0 -0
  333. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/dynamic/scr_error.o +0 -0
  334. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/dynamic/scr_events.o +0 -0
  335. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/dynamic/scr_events_emitter.o +0 -0
  336. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/dynamic/scr_exception.o +0 -0
  337. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/dynamic/scr_file_handle.o +0 -0
  338. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/dynamic/scr_island.o +0 -0
  339. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/dynamic/scr_json.o +0 -0
  340. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/dynamic/scr_lib.o +0 -0
  341. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/dynamic/scr_map.o +0 -0
  342. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/dynamic/scr_number.o +0 -0
  343. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/dynamic/scr_object.o +0 -0
  344. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/dynamic/scr_readline.o +0 -0
  345. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/dynamic/scr_regex.o +0 -0
  346. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/dynamic/scr_shared.o +0 -0
  347. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/dynamic/scr_stream.o +0 -0
  348. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/dynamic/scr_string.o +0 -0
  349. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/dynamic/scr_tls.o +0 -0
  350. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/dynamic/scr_union.o +0 -0
  351. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/dynamic/scr_util_compare.o +0 -0
  352. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/dynamic-text-decoder-legacy/scr_bytes.o +0 -0
  353. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/text-decoder-legacy/scr_bytes.o +0 -0
  354. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/text-decoder-legacy-workers/scr_bytes.o +0 -0
  355. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/workers/scr_mailbox.o +0 -0
  356. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/workers/scr_message.o +0 -0
  357. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/workers/scr_worker.o +0 -0
  358. package/dist/lib/runtime-darwin-x64/artifacts/release/runtime/workers/scr_worker_events.o +0 -0
  359. package/dist/lib/runtime-darwin-x64/package.json +1 -1
  360. package/dist/lib/runtime-darwin-x64/runtime-pack.json +3318 -790
  361. package/dist/lib/runtime-sources/package.json +1 -1
  362. package/dist/lib/runtime-sources/src/scr_array.c +479 -46
  363. package/dist/lib/runtime-sources/src/scr_assert.c +3 -3
  364. package/dist/lib/runtime-sources/src/scr_async.c +401 -71
  365. package/dist/lib/runtime-sources/src/scr_async.test.ts +16 -6
  366. package/dist/lib/runtime-sources/src/scr_async_dyn.c +30 -30
  367. package/dist/lib/runtime-sources/src/scr_bytes.c +487 -221
  368. package/dist/lib/runtime-sources/src/scr_bytes.test.c +85 -0
  369. package/dist/lib/runtime-sources/src/scr_bytes_io.c +45 -64
  370. package/dist/lib/runtime-sources/src/scr_child.c +48 -30
  371. package/dist/lib/runtime-sources/src/scr_closure.c +21 -11
  372. package/dist/lib/runtime-sources/src/scr_console.c +27 -5
  373. package/dist/lib/runtime-sources/src/scr_context.c +167 -0
  374. package/dist/lib/runtime-sources/src/scr_context.test.c +118 -0
  375. package/dist/lib/runtime-sources/src/scr_context.test.ts +47 -0
  376. package/dist/lib/runtime-sources/src/scr_copying.c +13 -2
  377. package/dist/lib/runtime-sources/src/scr_cycle.c +112 -12
  378. package/dist/lib/runtime-sources/src/scr_dc.c +8 -8
  379. package/dist/lib/runtime-sources/src/scr_dgram.c +10 -7
  380. package/dist/lib/runtime-sources/src/scr_error.c +26 -14
  381. package/dist/lib/runtime-sources/src/scr_events.c +45 -31
  382. package/dist/lib/runtime-sources/src/scr_events_emitter.c +34 -1
  383. package/dist/lib/runtime-sources/src/scr_exception.c +26 -7
  384. package/dist/lib/runtime-sources/src/scr_fetch.c +23 -20
  385. package/dist/lib/runtime-sources/src/scr_fetch_curl.c +1 -1
  386. package/dist/lib/runtime-sources/src/scr_ffi.c +3 -3
  387. package/dist/lib/runtime-sources/src/scr_file_handle.c +1 -0
  388. package/dist/lib/runtime-sources/src/scr_http.c +20 -16
  389. package/dist/lib/runtime-sources/src/scr_http2.c +10 -8
  390. package/dist/lib/runtime-sources/src/scr_inspect.c +1 -0
  391. package/dist/lib/runtime-sources/src/scr_island.c +1 -1
  392. package/dist/lib/runtime-sources/src/scr_json.c +652 -189
  393. package/dist/lib/runtime-sources/src/scr_json.test.c +339 -1
  394. package/dist/lib/runtime-sources/src/scr_json.test.ts +59 -25
  395. package/dist/lib/runtime-sources/src/scr_key.h +92 -0
  396. package/dist/lib/runtime-sources/src/scr_lib.c +256 -136
  397. package/dist/lib/runtime-sources/src/scr_mailbox.c +233 -0
  398. package/dist/lib/runtime-sources/src/scr_mailbox.h +28 -0
  399. package/dist/lib/runtime-sources/src/scr_mailbox.test.c +86 -0
  400. package/dist/lib/runtime-sources/src/scr_mailbox.test.ts +46 -0
  401. package/dist/lib/runtime-sources/src/scr_map.c +240 -107
  402. package/dist/lib/runtime-sources/src/scr_message.c +443 -0
  403. package/dist/lib/runtime-sources/src/scr_message.h +14 -0
  404. package/dist/lib/runtime-sources/src/scr_message.test.c +152 -0
  405. package/dist/lib/runtime-sources/src/scr_message.test.ts +44 -0
  406. package/dist/lib/runtime-sources/src/scr_net.c +14 -12
  407. package/dist/lib/runtime-sources/src/scr_number.c +36 -4
  408. package/dist/lib/runtime-sources/src/scr_numeric.h +25 -0
  409. package/dist/lib/runtime-sources/src/scr_numeric.test.c +37 -0
  410. package/dist/lib/runtime-sources/src/scr_numeric.test.ts +33 -0
  411. package/dist/lib/runtime-sources/src/scr_object.c +9 -4
  412. package/dist/lib/runtime-sources/src/scr_path.c +1 -1
  413. package/dist/lib/runtime-sources/src/scr_readline.c +8 -8
  414. package/dist/lib/runtime-sources/src/scr_regex.c +351 -167
  415. package/dist/lib/runtime-sources/src/scr_runtime.h +207 -34
  416. package/dist/lib/runtime-sources/src/scr_shared.c +280 -0
  417. package/dist/lib/runtime-sources/src/scr_shared.test.c +113 -0
  418. package/dist/lib/runtime-sources/src/scr_shared.test.ts +45 -0
  419. package/dist/lib/runtime-sources/src/scr_stream.c +9 -9
  420. package/dist/lib/runtime-sources/src/scr_string.c +365 -141
  421. package/dist/lib/runtime-sources/src/scr_test.c +8 -8
  422. package/dist/lib/runtime-sources/src/scr_tls.c +12 -12
  423. package/dist/lib/runtime-sources/src/scr_tls_ca.c +34 -12
  424. package/dist/lib/runtime-sources/src/scr_union.c +10 -5
  425. package/dist/lib/runtime-sources/src/scr_util_compare.c +1 -0
  426. package/dist/lib/runtime-sources/src/scr_util_style.c +11 -11
  427. package/dist/lib/runtime-sources/src/scr_watch.c +16 -6
  428. package/dist/lib/runtime-sources/src/scr_worker.c +232 -0
  429. package/dist/lib/runtime-sources/src/scr_worker.h +42 -0
  430. package/dist/lib/runtime-sources/src/scr_worker.test.c +115 -0
  431. package/dist/lib/runtime-sources/src/scr_worker.test.ts +49 -0
  432. package/dist/lib/runtime-sources/src/scr_worker_events.c +443 -0
  433. package/dist/lib/runtime-sources/src/scr_zlib.c +6 -0
  434. package/package.json +1 -1
@@ -73,32 +73,44 @@ static void scr_domex_gcfree(void *obj) {
73
73
 
74
74
  /* The DIRECT release stored in the builtin vtables (the compiler emits the
75
75
  * analogous sc_reld_* for user subclasses). */
76
+ static void scr_error_destroy(void *obj) {
77
+ ScrError *e = (ScrError *)obj;
78
+ scr_str_release(e->name);
79
+ scr_str_release(e->message);
80
+ scr_str_release(e->code);
81
+ scr_str_release(e->stack_frames);
82
+ scr_str_release(e->stack);
83
+ if (e->error_cause && scr_error_cause_drop) scr_error_cause_drop(obj);
84
+ scr_obj_free_note();
85
+ if (scr_error_traced) scr_cyc_free(e);
86
+ else free(e);
87
+ }
88
+
76
89
  static void scr_error_reld(void *obj) {
77
90
  ScrError *e = (ScrError *)obj;
78
91
  if (--e->rc == 0) {
79
92
  if (scr_error_traced) scr_cyc_on_dead(e);
80
- scr_str_release(e->name);
81
- scr_str_release(e->message);
82
- scr_str_release(e->code); /* NULL-safe: absent on most errors */
83
- scr_str_release(e->stack_frames);
84
- scr_str_release(e->stack);
85
- if (e->error_cause && scr_error_cause_drop) scr_error_cause_drop(obj);
86
- scr_obj_free_note();
87
- if (scr_error_traced) scr_cyc_free(e);
88
- else free(e);
93
+ scr_rc_destroy(obj, scr_error_destroy);
89
94
  } else if (scr_error_traced) {
90
95
  scr_cyc_on_release(e); /* possible cycle root; may collect */
91
96
  }
92
97
  }
93
98
 
94
- /* The DOMException vtable's direct release: the cause drops first, then
95
- * the shared ScrError teardown (through the hook — see scr_domex_gcfree). */
99
+ static void scr_domex_destroy(void *obj) {
100
+ ScrDomException *d = (ScrDomException *)obj;
101
+ if (d->cause != NULL && scr_domex_cause_drop != NULL) scr_domex_cause_drop(obj);
102
+ scr_error_destroy(obj);
103
+ }
104
+
105
+ /* Both cause chains participate in the shared destruction depth budget. */
96
106
  static void scr_domex_reld(void *obj) {
97
107
  ScrDomException *d = (ScrDomException *)obj;
98
- if (d->rc == 1 && d->cause != NULL && scr_domex_cause_drop != NULL) {
99
- scr_domex_cause_drop(obj);
108
+ if (--d->rc == 0) {
109
+ if (scr_error_traced) scr_cyc_on_dead(d);
110
+ scr_rc_destroy(obj, scr_domex_destroy);
111
+ } else if (scr_error_traced) {
112
+ scr_cyc_on_release(d);
100
113
  }
101
- scr_error_reld(obj);
102
114
  }
103
115
 
104
116
  /* Defaults cover only the instants before main() stamps the program's real
@@ -185,6 +185,7 @@ static bool scr_signal_check(ScrStr *name, ScrDyn *cb) {
185
185
 
186
186
  void scr_signal_on(ScrStr *name, ScrDyn *cb, bool once) {
187
187
  if (!scr_signal_check(name, cb)) return;
188
+ if (!scr_context_is_main()) return;
188
189
  #ifdef __wasi__
189
190
  (void)once;
190
191
  scr_trap("scriptc: internal error: OS signal surface reached on WASI\n");
@@ -262,6 +263,7 @@ static void scr_sig_remove(ScrSigReg *reg, size_t i) {
262
263
 
263
264
  void scr_signal_off(ScrStr *name, ScrDyn *cb) {
264
265
  if (!scr_signal_check(name, cb)) return;
266
+ if (!scr_context_is_main()) return;
265
267
  int sig = scr_signal_from_name(name);
266
268
  if (sig < 0) sig = 0;
267
269
  ScrSigReg *reg = scr_sig_regs;
@@ -359,20 +361,20 @@ typedef struct {
359
361
  bool once;
360
362
  } ScrStdinErrL;
361
363
 
362
- static ScrStdinDataL *scr_stdin_data = NULL;
363
- static size_t scr_stdin_ndata = 0, scr_stdin_data_cap = 0;
364
- static ScrStdinEndL *scr_stdin_end = NULL;
365
- static size_t scr_stdin_nend = 0, scr_stdin_end_cap = 0;
366
- static ScrStdinErrL *scr_stdin_err = NULL;
367
- static size_t scr_stdin_nerr = 0, scr_stdin_err_cap = 0;
368
- static ScrPromise *scr_stdin_waiter = NULL; /* parked for-await next() */
369
- static bool scr_stdin_eof = false;
370
- static bool scr_stdin_destroyed = false;
371
- static bool scr_stdin_paused = false;
372
- static bool scr_stdin_resumed = false;
373
- static bool scr_stdin_read_eof = false;
374
- static ScrBytes *scr_stdin_buffer;
375
- static size_t scr_stdin_read_demand;
364
+ static SCR_TL ScrStdinDataL *scr_stdin_data = NULL;
365
+ static SCR_TL size_t scr_stdin_ndata = 0, scr_stdin_data_cap = 0;
366
+ static SCR_TL ScrStdinEndL *scr_stdin_end = NULL;
367
+ static SCR_TL size_t scr_stdin_nend = 0, scr_stdin_end_cap = 0;
368
+ static SCR_TL ScrStdinErrL *scr_stdin_err = NULL;
369
+ static SCR_TL size_t scr_stdin_nerr = 0, scr_stdin_err_cap = 0;
370
+ static SCR_TL ScrPromise *scr_stdin_waiter = NULL; /* parked for-await next() */
371
+ static SCR_TL bool scr_stdin_eof = false;
372
+ static SCR_TL bool scr_stdin_destroyed = false;
373
+ static SCR_TL bool scr_stdin_paused = false;
374
+ static SCR_TL bool scr_stdin_resumed = false;
375
+ static SCR_TL bool scr_stdin_read_eof = false;
376
+ static SCR_TL ScrBytes *scr_stdin_buffer;
377
+ static SCR_TL size_t scr_stdin_read_demand;
376
378
 
377
379
  void scr_stdin_on_data(ScrClosure *cb /*moves*/, void (*fn)(ScrClosure *, ScrBytes *),
378
380
  bool once) {
@@ -682,15 +684,15 @@ typedef struct {
682
684
  ScrDyn *write_error;
683
685
  } ScrStdio;
684
686
 
685
- static ScrStdio scr_stdio_streams[3] = {{.fd = 0}, {.fd = 1}, {.fd = 2}};
687
+ static SCR_TL ScrStdio scr_stdio_streams[3] = {{.fd = 0}, {.fd = 1}, {.fd = 2}};
686
688
  enum { STDIO_WRITE, STDIO_ON, STDIO_ONCE, STDIO_OFF, STDIO_PAUSE, STDIO_RESUME,
687
689
  STDIO_IS_PAUSED, STDIO_READ, STDIO_RAW, STDIO_DESTROY, STDIO_METHOD_COUNT };
688
690
  static const char *const scr_stdio_names[] = {
689
691
  "write", "on", "once", "removeListener", "pause", "resume", "isPaused", "read", "setRawMode", "destroy"
690
692
  };
691
- static ScrDyn *scr_stdio_methods[STDIO_METHOD_COUNT];
692
- static bool scr_stdio_initialized;
693
- static bool scr_stdio_raw;
693
+ static SCR_TL ScrDyn *scr_stdio_methods[STDIO_METHOD_COUNT];
694
+ static SCR_TL bool scr_stdio_initialized;
695
+ static SCR_TL bool scr_stdio_raw;
694
696
 
695
697
  static ScrDyn *scr_stdio_refusal(const char *name) {
696
698
  char message[192];
@@ -868,7 +870,7 @@ static ScrDyn *scr_stdio_method(ScrClosure *cb, ScrDyn *const *args, size_t argc
868
870
  bytes = scr_bytes_from_str(arg->v.str, enc);
869
871
  scr_str_release(enc);
870
872
  } else if (arg->kind == SCR_DYN_BYTES && arg->v.bytes->elem == SCR_BYTES_U8) {
871
- bytes = scr_bytes_retain(arg->v.bytes);
873
+ bytes = arg->v.bytes->shared ? scr_bytes_copy(arg->v.bytes) : scr_bytes_retain(arg->v.bytes);
872
874
  } else {
873
875
  scr_dyn_arg_type_fail("chunk", "of type string or an instance of Buffer, TypedArray, or DataView", arg);
874
876
  goto done;
@@ -1091,20 +1093,29 @@ typedef struct {
1091
1093
  bool once;
1092
1094
  } ScrExitListener;
1093
1095
 
1094
- static ScrExitListener *scr_exit_ls = NULL;
1095
- static size_t scr_exit_n = 0, scr_exit_cap = 0;
1096
- static bool scr_exit_ran = false;
1096
+ static SCR_TL ScrExitListener *scr_exit_ls = NULL;
1097
+ static SCR_TL size_t scr_exit_n = 0, scr_exit_cap = 0;
1098
+ static SCR_TL bool scr_exit_ran = false;
1097
1099
 
1098
1100
  void scr_run_exit_listeners(double code) {
1099
1101
  if (scr_exit_ran) return; /* process.exit inside a listener: no recursion */
1100
1102
  scr_exit_ran = true;
1101
1103
  scr_process_in_exit = true; /* process._exiting — Node's flag */
1102
1104
  for (size_t i = 0; i < scr_exit_n; i++) {
1105
+ #ifdef SCR_WORKERS
1106
+ if (scr_context_stopping()) break;
1107
+ #endif
1103
1108
  scr_exit_ls[i].fn(scr_exit_ls[i].cb, code);
1109
+ #ifdef SCR_WORKERS
1110
+ if (scr_context_stopping()) break;
1111
+ #endif
1104
1112
  if (scr_exc_pending()) {
1105
1113
  /* Node: a throw in an 'exit' listener is fatal (exit code 7). */
1106
1114
  scr_exc_print_uncaught();
1107
1115
  fflush(stdout);
1116
+ #ifdef SCR_WORKERS
1117
+ if (!scr_context_is_main()) { scr_context_stop(7); break; }
1118
+ #endif
1108
1119
  _Exit(7);
1109
1120
  }
1110
1121
  }
@@ -1172,14 +1183,16 @@ void scr_stdin_data_thunk_bytes(ScrClosure *cb, ScrBytes *chunk) {
1172
1183
  static bool scr_events_pending(void) { return scr_stdin_pending(); }
1173
1184
 
1174
1185
  static bool scr_events_watching(void) {
1175
- return scr_sig_watched > 0 || scr_stdin_pending();
1186
+ return (scr_context_is_main() && scr_sig_watched > 0) || scr_stdin_pending();
1176
1187
  }
1177
1188
 
1178
1189
  /* One dispatch pass at a loop turn: wake-pipe bytes are consumed (safe
1179
1190
  * any time), flagged signals fire, and stdin is probed/served. */
1180
1191
  static void scr_events_dispatch(void) {
1181
- scr_wake_pipe_drain();
1182
- scr_signals_drain();
1192
+ if (scr_context_is_main()) {
1193
+ scr_wake_pipe_drain();
1194
+ scr_signals_drain();
1195
+ }
1183
1196
  if (scr_exc_pending()) return;
1184
1197
  scr_stdin_service();
1185
1198
  }
@@ -1188,8 +1201,8 @@ static void scr_events_dispatch(void) {
1188
1201
  * any signal is watched, fd 0 while stdin has a consumer. */
1189
1202
  static int scr_events_pollfds(int out[2]) {
1190
1203
  int n = 0;
1191
- if (scr_sig_watched > 0 && scr_wake_pipe[0] >= 0) out[n++] = scr_wake_pipe[0];
1192
- if (scr_stdin_pending()) out[n++] = 0;
1204
+ if (scr_context_is_main() && scr_sig_watched > 0 && scr_wake_pipe[0] >= 0) out[n++] = scr_wake_pipe[0];
1205
+ if (scr_context_is_main() && scr_stdin_pending()) out[n++] = 0;
1193
1206
  return n;
1194
1207
  }
1195
1208
 
@@ -1206,7 +1219,7 @@ static void scr_exit_atexit(void) { scr_run_exit_listeners((double)scr_exit_code
1206
1219
  * listeners fire first, then everything releases, then the RC audit sees
1207
1220
  * a clean heap. */
1208
1221
  static void scr_events_cleanup_atexit(void) {
1209
- scr_sig_cleanup();
1222
+ if (scr_context_is_main()) scr_sig_cleanup();
1210
1223
  scr_stdin_settle_done();
1211
1224
  scr_stdin_drop_listeners();
1212
1225
  scr_bytes_release(scr_stdin_buffer);
@@ -1215,15 +1228,16 @@ static void scr_events_cleanup_atexit(void) {
1215
1228
  }
1216
1229
 
1217
1230
  void scr_events_install(void) {
1218
- static bool installed = false;
1231
+ static SCR_TL bool installed = false;
1219
1232
  if (installed) return;
1220
1233
  installed = true;
1234
+ if (!scr_context_is_main()) scr_stdin_read_eof = true;
1221
1235
  #ifdef __wasi__
1222
1236
  int stdin_flags = fcntl(0, F_GETFL, 0);
1223
1237
  if (stdin_flags >= 0) (void)fcntl(0, F_SETFL, stdin_flags | O_NONBLOCK);
1224
1238
  #endif
1225
- atexit(scr_events_cleanup_atexit);
1226
- atexit(scr_exit_atexit);
1239
+ scr_atexit(scr_events_cleanup_atexit);
1240
+ scr_atexit(scr_exit_atexit);
1227
1241
  scr_loop_set_events(&scr_events_pending, &scr_events_watching, &scr_events_dispatch,
1228
1242
  &scr_events_pollfds);
1229
1243
  scr_process_exit_hook = &scr_run_exit_listeners;
@@ -97,6 +97,11 @@ struct ScrEeReg {
97
97
  * only removeAllListeners deletes: the named form drops the one key,
98
98
  * the no-argument wipe resets everything and leaves shape mode. */
99
99
  bool shape;
100
+ /* Owner-internal observation of empty/nonempty listener transitions. It
101
+ * runs before user meta events and must never invoke script or mutate the
102
+ * emitter. The owner keeps the borrowed context alive with the emitter. */
103
+ void (*observe)(void *context, const ScrStr *name, bool present);
104
+ void *observer_context;
100
105
  };
101
106
 
102
107
  /* The vtable of BARE `new EventEmitter()` instances; the emitted main()
@@ -111,7 +116,7 @@ static SCR_TL bool scr_ee_trace_hint_shown = false;
111
116
 
112
117
  /* Post-registration hook (scr_runtime.h): the stream unit's flow kick.
113
118
  * NULL in stream-free builds — behavior byte-identical. */
114
- void (*scr_emitter_on_hook)(ScrEmitter *em, ScrStr *name) = NULL;
119
+ SCR_TL void (*scr_emitter_on_hook)(ScrEmitter *em, ScrStr *name) = NULL;
115
120
 
116
121
  /* ── entries and buckets ──────────────────────────────────────────────── */
117
122
 
@@ -137,6 +142,18 @@ static ScrEeReg *scr_ee_reg_ensure(ScrEmitter *em) {
137
142
  return em->reg;
138
143
  }
139
144
 
145
+ void scr_emitter_observe(ScrEmitter *em,
146
+ void (*observe)(void *, const ScrStr *, bool), void *context) {
147
+ ScrEeReg *reg = scr_ee_reg_ensure(em);
148
+ reg->observe = observe;
149
+ reg->observer_context = context;
150
+ }
151
+
152
+ static void scr_ee_observe(ScrEmitter *em, const ScrStr *name, bool present) {
153
+ ScrEeReg *reg = em->reg;
154
+ if (reg->observe) reg->observe(reg->observer_context, name, present);
155
+ }
156
+
140
157
  static ScrEeBucket *scr_ee_bucket_find(ScrEeReg *reg, const char *name, size_t len) {
141
158
  if (!reg) return NULL;
142
159
  for (ScrEeBucket *b = reg->head; b; b = b->next) {
@@ -368,6 +385,7 @@ static ScrEmitter *scr_ee_add(ScrEmitter *em, ScrStr *name, ScrClosure *cb /*mov
368
385
  b->ls[b->n] = e;
369
386
  }
370
387
  b->n++;
388
+ if (b->n == 1) scr_ee_observe(em, name, true);
371
389
  scr_ee_warn_maybe(em, b);
372
390
  if (scr_emitter_on_hook != NULL) scr_emitter_on_hook(em, name);
373
391
  return scr_emitter_retain(em);
@@ -461,6 +479,7 @@ static void scr_ee_remove_at(ScrEmitter *em, ScrEeBucket *b, size_t i) {
461
479
  memmove(b->ls + i, b->ls + i + 1, (b->n - i - 1) * sizeof *b->ls);
462
480
  b->n--;
463
481
  ScrStr *name = scr_str_retain(b->name);
482
+ if (b->n == 0) scr_ee_observe(em, name, false);
464
483
  if (b->n == 0 && !em->reg->shape) scr_ee_bucket_drop(em->reg, b);
465
484
  scr_ee_entry_unref(e);
466
485
  scr_ee_emit_meta(em, "removeListener", name);
@@ -519,6 +538,7 @@ static void scr_ee_remove_all_named(ScrEmitter *em, ScrEeBucket *b, bool meta) {
519
538
  if (!meta) {
520
539
  for (size_t i = 0; i < b->n; i++) scr_ee_entry_unref(b->ls[i]);
521
540
  b->n = 0;
541
+ scr_ee_observe(em, b->name, false);
522
542
  scr_ee_bucket_drop(em->reg, b);
523
543
  return;
524
544
  }
@@ -695,6 +715,19 @@ bool scr_emitter_emit_flex(ScrEmitter *em, ScrStr *name, ScrDyn *const *args, si
695
715
  return scr_ee_emit_core(em, name, NULL, args, argc);
696
716
  }
697
717
 
718
+ /* Handle event registries use checked callbacks for every tuple, including
719
+ * errors. Keep this separate from the statically typed Error ABI above. */
720
+ bool scr_emitter_emit_error_flex(ScrEmitter *em, ScrDyn *error) {
721
+ if (!scr_ee_has(em->reg, "error")) {
722
+ scr_dyn_throw(scr_dyn_retain(error));
723
+ return false;
724
+ }
725
+ ScrStr *name = scr_str_new("error", 5);
726
+ bool had = scr_ee_emit_core(em, name, NULL, &error, 1);
727
+ scr_str_release(name);
728
+ return had;
729
+ }
730
+
698
731
  /* emit('error', err) — Node's special event: with no 'error' listener the
699
732
  * payload THROWS (catchable; uncaught exits 1 with the error report).
700
733
  * err is borrowed; the throw takes its own +1. */
@@ -37,11 +37,11 @@ _Noreturn void scr_trap_fmt(const char *fmt, ...) {
37
37
  #endif /* !SCR_LIB */
38
38
 
39
39
  static SCR_TL ScrExcCell scr_main_exc; /* fiber zero (the main stack) */
40
- #if defined(SCR_LIB) && defined(SCR_THREAD_INSTANCES)
40
+ #if (defined(SCR_LIB) && defined(SCR_THREAD_INSTANCES)) || defined(SCR_WORKERS)
41
41
  /* A thread-local pointer cannot be initialized with &scr_main_exc — the
42
42
  * address of a thread-local is not a constant expression — so NULL stands
43
- * for the main cell and every read resolves it. Fibers never exist in
44
- * library artifacts, so the cell only ever IS the main cell here. */
43
+ * for the main cell and every read resolves it. Worker executables also
44
+ * switch this pointer as fibers enter and leave their own exception cells. */
45
45
  static SCR_TL ScrExcCell *scr_cur;
46
46
  #define SCR_EXC_CUR() (scr_cur ? scr_cur : &scr_main_exc)
47
47
  #else
@@ -117,7 +117,12 @@ ScrStr *scr_stack_capture(void) {
117
117
  #define scr_exc_release_fn (SCR_EXC_CUR()->release_fn)
118
118
  #define scr_exc_trace_fn (SCR_EXC_CUR()->trace_fn)
119
119
 
120
- bool scr_exc_pending(void) { return scr_exc_kind != SCR_EXC_NONE; }
120
+ bool scr_exc_pending(void) {
121
+ #ifdef SCR_WORKERS
122
+ if (scr_context_checkpoint()) return true;
123
+ #endif
124
+ return scr_exc_kind != SCR_EXC_NONE;
125
+ }
121
126
 
122
127
  /* Release the current payload (if any) and reset to NONE. Shared by clear,
123
128
  * the uncaught printer, and every throw (replace semantics). */
@@ -212,12 +217,13 @@ void scr_rethrow(const ScrCaught *c) {
212
217
  break;
213
218
  case SCR_EXC_NONE:
214
219
  break; /* unreachable: take() never stores NONE */
220
+ case SCR_EXC_TERMINATE:
215
221
  case SCR_EXC_GENRET:
216
222
  /* The generator-return sentinel, stashed across an exception-path
217
223
  * finally (emitTryCatch): re-raising restores the bare kind — no
218
224
  * payload exists. */
219
225
  scr_exc_reset();
220
- scr_exc_kind = SCR_EXC_GENRET;
226
+ scr_exc_kind = c->kind;
221
227
  break;
222
228
  }
223
229
  }
@@ -279,6 +285,7 @@ ScrStr *scr_caught_to_string(const ScrCaught *c) {
279
285
  * boxes print this too where Node would vary (SEMANTICS.md). */
280
286
  return scr_str_new("[object Object]", 15);
281
287
  case SCR_EXC_NONE:
288
+ case SCR_EXC_TERMINATE:
282
289
  case SCR_EXC_GENRET: /* unreachable: take() never stores NONE/the sentinel */
283
290
  break;
284
291
  }
@@ -428,10 +435,13 @@ static SCR_TL int scr_exit_code_hint = 0;
428
435
  void scr_exit_code_note(int code) { scr_exit_code_hint = code; }
429
436
  int scr_exit_code_hint_get(void) { return scr_exit_code_hint; }
430
437
 
431
- int (*scr_uncaught_exception_hook)(bool from_promise) = NULL;
432
- static bool scr_uncaught_handler_failed = false;
438
+ SCR_TL int (*scr_uncaught_exception_hook)(bool from_promise) = NULL;
439
+ static SCR_TL bool scr_uncaught_handler_failed = false;
433
440
 
434
441
  bool scr_exc_handle_uncaught(bool from_promise) {
442
+ #ifdef SCR_WORKERS
443
+ if (scr_context_stopping()) return false;
444
+ #endif
435
445
  if (!scr_exc_pending()) return true;
436
446
  if (!scr_uncaught_exception_hook || scr_uncaught_handler_failed) return false;
437
447
  int result = scr_uncaught_exception_hook(from_promise);
@@ -440,6 +450,14 @@ bool scr_exc_handle_uncaught(bool from_promise) {
440
450
  }
441
451
 
442
452
  void scr_exc_print_uncaught(void) {
453
+ #ifdef SCR_WORKERS
454
+ if (scr_context_stopping()) { scr_exc_clear(); return; }
455
+ if (scr_context_report_error) {
456
+ scr_exit_code_note(scr_uncaught_handler_failed ? 7 : 1);
457
+ scr_context_report_error();
458
+ return;
459
+ }
460
+ #endif
443
461
  scr_exit_code_note(scr_uncaught_handler_failed ? 7 : 1);
444
462
  /* Settle any runtime-internal stdout fragment before the stderr line when
445
463
  * both share an fd. JavaScript-visible writes already flush themselves. */
@@ -477,6 +495,7 @@ void scr_exc_print_uncaught(void) {
477
495
  break;
478
496
  case SCR_EXC_NONE: /* main only calls this when pending */
479
497
  case SCR_EXC_GENRET: /* unreachable: the trampoline consumes the sentinel */
498
+ case SCR_EXC_TERMINATE:
480
499
  fputs("(no exception)", stderr);
481
500
  break;
482
501
  }
@@ -1618,7 +1618,7 @@ static void sf_collector_append(SfCollector *c, const ScrBytes *bytes) {
1618
1618
  c->data = next;
1619
1619
  c->cap = cap;
1620
1620
  }
1621
- memcpy(c->data + c->len, bytes->data, bytes->len);
1621
+ scr_bytes_read(bytes, 0, c->data + c->len, bytes->len);
1622
1622
  c->len = need;
1623
1623
  }
1624
1624
 
@@ -3536,8 +3536,8 @@ static char *sf_all_proxy;
3536
3536
  static char *sf_no_proxy;
3537
3537
 
3538
3538
  static char *sf_env_copy(const char *lower, const char *upper) {
3539
- const char *value = getenv(lower);
3540
- if (!value || value[0] == '\0') value = getenv(upper);
3539
+ const char *value = scr_getenv(lower);
3540
+ if (!value || value[0] == '\0') value = scr_getenv(upper);
3541
3541
  if (!value || value[0] == '\0') return NULL;
3542
3542
  size_t len = strlen(value);
3543
3543
  char *copy = malloc(len + 1);
@@ -3547,7 +3547,7 @@ static char *sf_env_copy(const char *lower, const char *upper) {
3547
3547
  }
3548
3548
 
3549
3549
  static void sf_proxy_snapshot(void) {
3550
- const char *optin = getenv("NODE_USE_ENV_PROXY");
3550
+ const char *optin = scr_getenv("NODE_USE_ENV_PROXY");
3551
3551
  sf_proxy_enabled = optin && strcmp(optin, "1") == 0;
3552
3552
  if (!sf_proxy_enabled) return;
3553
3553
  sf_http_proxy = sf_env_copy("http_proxy", "HTTP_PROXY");
@@ -4597,6 +4597,7 @@ static void sf_on_data(ScrClosure *cb, ScrBytes *chunk) {
4597
4597
  return;
4598
4598
  }
4599
4599
 
4600
+ SCR_BYTES_SNAPSHOT(chunk);
4600
4601
  sf_inflate_append(t, chunk->data, chunk->len);
4601
4602
  sf_inflate_process(t);
4602
4603
  sf_release(t);
@@ -5045,7 +5046,9 @@ ScrDyn *scr_fetch_response_new(ScrDyn *body, ScrDyn *init) {
5045
5046
  !(body->kind == SCR_DYN_HANDLE &&
5046
5047
  body->v.handle.tag == SCR_DYNH_WEB_STREAM)) {
5047
5048
  if (body->kind == SCR_DYN_BYTES) {
5048
- body_bytes = scr_bytes_from_data(body->v.bytes->data, body->v.bytes->len * scr_bytes_elem_size(body->v.bytes->elem));
5049
+ ScrBytes *raw = scr_bytes_raw_view(body->v.bytes);
5050
+ body_bytes = scr_bytes_copy(raw);
5051
+ scr_bytes_release(raw);
5049
5052
  } else {
5050
5053
  ScrStr *text =
5051
5054
  body->kind == SCR_DYN_STR
@@ -5397,7 +5400,7 @@ static ScrDyn *sf_data_response(ScrStr *url) {
5397
5400
  }
5398
5401
  bytes->len = n;
5399
5402
  if (base64) {
5400
- ScrStr *encoded = scr_str_new((const char *)bytes->data, bytes->len);
5403
+ ScrStr *encoded = scr_bytes_string(bytes, 0, bytes->len);
5401
5404
  ScrStr *encoding = scr_str_new("base64", 6);
5402
5405
  ScrBytes *decoded = scr_bytes_from_str(encoded, encoding);
5403
5406
  scr_str_release(encoded); scr_str_release(encoding); scr_bytes_release(bytes); bytes = decoded;
@@ -5768,7 +5771,7 @@ static void sf_teardown(void) {
5768
5771
  }
5769
5772
 
5770
5773
  void scr_fetch_install(void) {
5771
- static bool installed;
5774
+ static SCR_TL bool installed;
5772
5775
  if (installed) return;
5773
5776
  installed = true;
5774
5777
  scr_tls_ca_install();
@@ -5808,7 +5811,7 @@ static void sf_signal_teardown(void) {
5808
5811
  while (sf_reason_signals) sf_signal_drop_reason(sf_reason_signals);
5809
5812
  }
5810
5813
  static void sf_signal_install(void) {
5811
- static bool installed;
5814
+ static SCR_TL bool installed;
5812
5815
  if (installed) return;
5813
5816
  installed = true;
5814
5817
  scr_dyn_handle_install(SCR_DYNH_ABORT_SIGNAL, &sf_signal_ops);
@@ -6001,9 +6004,9 @@ typedef struct FxTransfer {
6001
6004
  struct FxTransfer *next;
6002
6005
  } FxTransfer;
6003
6006
 
6004
- static FxTransfer *fx_live = NULL; /* registry: +1 each */
6005
- static size_t fx_nlive = 0;
6006
- static int fx_next_id = 1;
6007
+ static SCR_TL FxTransfer *fx_live = NULL; /* registry: +1 each */
6008
+ static SCR_TL size_t fx_nlive = 0;
6009
+ static SCR_TL int fx_next_id = 1;
6007
6010
 
6008
6011
  static FxTransfer *fx_retain(FxTransfer *t) {
6009
6012
  t->rc++;
@@ -6305,15 +6308,15 @@ static bool fx_bad_port(int port) {
6305
6308
 
6306
6309
  /* ── env proxy (NODE_USE_ENV_PROXY=1, undici's EnvHttpProxyAgent) ────── */
6307
6310
 
6308
- static bool fx_proxy_enabled;
6309
- static char *fx_http_proxy;
6310
- static char *fx_https_proxy;
6311
- static char *fx_all_proxy;
6312
- static char *fx_no_proxy;
6311
+ static SCR_TL bool fx_proxy_enabled;
6312
+ static SCR_TL char *fx_http_proxy;
6313
+ static SCR_TL char *fx_https_proxy;
6314
+ static SCR_TL char *fx_all_proxy;
6315
+ static SCR_TL char *fx_no_proxy;
6313
6316
 
6314
6317
  static char *fx_env_copy(const char *lower, const char *upper) {
6315
- const char *v = getenv(lower);
6316
- if (v == NULL || v[0] == '\0') v = getenv(upper);
6318
+ const char *v = scr_getenv(lower);
6319
+ if (v == NULL || v[0] == '\0') v = scr_getenv(upper);
6317
6320
  if (v == NULL || v[0] == '\0') return NULL;
6318
6321
  size_t len = strlen(v);
6319
6322
  char *copy = malloc(len + 1);
@@ -6323,7 +6326,7 @@ static char *fx_env_copy(const char *lower, const char *upper) {
6323
6326
  }
6324
6327
 
6325
6328
  static void fx_proxy_snapshot(void) {
6326
- const char *optin = getenv("NODE_USE_ENV_PROXY");
6329
+ const char *optin = scr_getenv("NODE_USE_ENV_PROXY");
6327
6330
  fx_proxy_enabled = optin != NULL && strcmp(optin, "1") == 0;
6328
6331
  /* Snapshot even without Node's global opt-in: Vercel's dispatcher is a
6329
6332
  * request-local proxy activation over the same startup environment. */
@@ -7500,7 +7503,7 @@ static void fx_teardown(void) {
7500
7503
  * on real sockets the loop's own poller sleeps on, and armed island
7501
7504
  * timers cap that sleep through the loop's island-deadline hook. */
7502
7505
  void scr_fetch_install(void) {
7503
- static bool installed = false;
7506
+ static SCR_TL bool installed = false;
7504
7507
  if (installed) return;
7505
7508
  installed = true;
7506
7509
  scr_tls_ca_install();
@@ -366,7 +366,7 @@ static JSValue fx_host_start(JSContext *ctx, JSValueConst this_val, int argc,
366
366
  JSValue envproxyv = JS_GetPropertyStr(ctx, req, "useEnvProxy");
367
367
  bool use_env_proxy = JS_ToBool(ctx, envproxyv) > 0;
368
368
  JS_FreeValue(ctx, envproxyv);
369
- const char *global_env_proxy = getenv("NODE_USE_ENV_PROXY");
369
+ const char *global_env_proxy = scr_getenv("NODE_USE_ENV_PROXY");
370
370
  use_env_proxy = use_env_proxy ||
371
371
  (global_env_proxy != NULL &&
372
372
  strcmp(global_env_proxy, "1") == 0);
@@ -2,12 +2,12 @@
2
2
 
3
3
  #include <stdlib.h>
4
4
 
5
- /* The process-global retained-registration ledger. Format-4 script-thread
5
+ /* The context-local retained-registration ledger. Format-4 script-thread
6
6
  * tables use the lock-free path in this always-linked unit. Format-5 foreign
7
7
  * tables install an optional teardown hook owned by scr_ffi_queue.c, keeping
8
8
  * all queue/thread machinery out of unrelated binaries. */
9
- static ScrFfiTable *scr_ffi_tables;
10
- static bool scr_ffi_exit_registered;
9
+ static SCR_TL ScrFfiTable *scr_ffi_tables;
10
+ static SCR_TL bool scr_ffi_exit_registered;
11
11
 
12
12
  static void scr_ffi_oom(void) { scr_trap("scriptc: out of memory\n"); }
13
13
 
@@ -385,6 +385,7 @@ void scr_file_handle_write_file(ScrFileHandle *h, ScrStr *data) {
385
385
  }
386
386
 
387
387
  void scr_file_handle_write_file_bytes(ScrFileHandle *h, ScrBytes *data) {
388
+ SCR_BYTES_SNAPSHOT(data);
388
389
  scr_file_handle_write_all(h, data->data,
389
390
  data->len * scr_bytes_elem_size(data->elem));
390
391
  }