@scriptc/cli-darwin-arm64 0.2.5 → 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 (417) 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 +57 -30
  5. package/dist/lib/llvm/bin/scriptc-llvm-codegen +0 -0
  6. package/dist/lib/llvm/package.json +1 -1
  7. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default/scr_array.o +0 -0
  8. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default/scr_assert.o +0 -0
  9. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default/scr_async.o +0 -0
  10. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default/scr_bytes.o +0 -0
  11. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default/scr_bytes_io.o +0 -0
  12. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default/scr_child.o +0 -0
  13. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default/scr_closure.o +0 -0
  14. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default/scr_console.o +0 -0
  15. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default/scr_context.o +0 -0
  16. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default/scr_cycle.o +0 -0
  17. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default/scr_dgram.o +0 -0
  18. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default/scr_error.o +0 -0
  19. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default/scr_events.o +0 -0
  20. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default/scr_events_emitter.o +0 -0
  21. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default/scr_exception.o +0 -0
  22. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default/scr_fetch.o +0 -0
  23. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default/scr_file_handle.o +0 -0
  24. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default/scr_json.o +0 -0
  25. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default/scr_lib.o +0 -0
  26. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default/scr_map.o +0 -0
  27. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default/scr_number.o +0 -0
  28. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default/scr_object.o +0 -0
  29. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default/scr_readline.o +0 -0
  30. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default/scr_regex.o +0 -0
  31. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default/scr_shared.o +0 -0
  32. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default/scr_stream.o +0 -0
  33. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default/scr_string.o +0 -0
  34. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default/scr_tls.o +0 -0
  35. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default/scr_union.o +0 -0
  36. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_array.o +0 -0
  37. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_assert.o +0 -0
  38. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_async.o +0 -0
  39. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_async_dyn.o +0 -0
  40. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_bigint.o +0 -0
  41. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_bigint_assert.o +0 -0
  42. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_bytes.o +0 -0
  43. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_bytes_io.o +0 -0
  44. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_child.o +0 -0
  45. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_closure.o +0 -0
  46. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_console.o +0 -0
  47. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_console_native.o +0 -0
  48. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_context.o +0 -0
  49. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_copying.o +0 -0
  50. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_crypto_async.o +0 -0
  51. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_cycle.o +0 -0
  52. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_dc.o +0 -0
  53. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_dgram.o +0 -0
  54. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_dyn_handle.o +0 -0
  55. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_dyn_invoke.o +0 -0
  56. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_error.o +0 -0
  57. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_events.o +0 -0
  58. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_events_emitter.o +0 -0
  59. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_exception.o +0 -0
  60. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_fetch.o +0 -0
  61. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_ffi.o +0 -0
  62. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_ffi_queue.o +0 -0
  63. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_file_handle.o +0 -0
  64. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_grapheme.o +0 -0
  65. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_http.o +0 -0
  66. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_http2.o +0 -0
  67. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_inspect.o +0 -0
  68. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_json.o +0 -0
  69. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_lib.o +0 -0
  70. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_loop_epoll.o +0 -0
  71. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_loop_kqueue.o +0 -0
  72. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_loop_wsapoll.o +0 -0
  73. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_map.o +0 -0
  74. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_net.o +0 -0
  75. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_node_builtin.o +0 -0
  76. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_number.o +0 -0
  77. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_object.o +0 -0
  78. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_path.o +0 -0
  79. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_qs.o +0 -0
  80. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_readline.o +0 -0
  81. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_regex.o +0 -0
  82. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_shared.o +0 -0
  83. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_stream.o +0 -0
  84. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_string.o +0 -0
  85. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_symbol.o +0 -0
  86. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_test.o +0 -0
  87. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_tls.o +0 -0
  88. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_tls_ca.o +0 -0
  89. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_union.o +0 -0
  90. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_url.o +0 -0
  91. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_url_params.o +0 -0
  92. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_util.o +0 -0
  93. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_util_compare.o +0 -0
  94. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_util_style.o +0 -0
  95. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_watch.o +0 -0
  96. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/default-workers/scr_zlib.o +0 -0
  97. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/dynamic/scr_array.o +0 -0
  98. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/dynamic/scr_assert.o +0 -0
  99. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/dynamic/scr_async.o +0 -0
  100. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/dynamic/scr_bytes.o +0 -0
  101. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/dynamic/scr_bytes_io.o +0 -0
  102. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/dynamic/scr_child.o +0 -0
  103. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/dynamic/scr_closure.o +0 -0
  104. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/dynamic/scr_console.o +0 -0
  105. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/dynamic/scr_context.o +0 -0
  106. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/dynamic/scr_cycle.o +0 -0
  107. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/dynamic/scr_dgram.o +0 -0
  108. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/dynamic/scr_error.o +0 -0
  109. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/dynamic/scr_events.o +0 -0
  110. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/dynamic/scr_events_emitter.o +0 -0
  111. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/dynamic/scr_exception.o +0 -0
  112. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/dynamic/scr_file_handle.o +0 -0
  113. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/dynamic/scr_island.o +0 -0
  114. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/dynamic/scr_json.o +0 -0
  115. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/dynamic/scr_lib.o +0 -0
  116. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/dynamic/scr_map.o +0 -0
  117. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/dynamic/scr_number.o +0 -0
  118. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/dynamic/scr_object.o +0 -0
  119. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/dynamic/scr_readline.o +0 -0
  120. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/dynamic/scr_regex.o +0 -0
  121. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/dynamic/scr_shared.o +0 -0
  122. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/dynamic/scr_stream.o +0 -0
  123. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/dynamic/scr_string.o +0 -0
  124. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/dynamic/scr_tls.o +0 -0
  125. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/dynamic/scr_union.o +0 -0
  126. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/dynamic-text-decoder-legacy/scr_bytes.o +0 -0
  127. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/text-decoder-legacy/scr_bytes.o +0 -0
  128. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/text-decoder-legacy-workers/scr_bytes.o +0 -0
  129. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/workers/scr_mailbox.o +0 -0
  130. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/workers/scr_message.o +0 -0
  131. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/workers/scr_worker.o +0 -0
  132. package/dist/lib/runtime-darwin-arm64/artifacts/dev/runtime/workers/scr_worker_events.o +0 -0
  133. package/dist/lib/runtime-darwin-arm64/artifacts/library-dev/runtime/default/scr_array.o +0 -0
  134. package/dist/lib/runtime-darwin-arm64/artifacts/library-dev/runtime/default/scr_assert.o +0 -0
  135. package/dist/lib/runtime-darwin-arm64/artifacts/library-dev/runtime/default/scr_bytes.o +0 -0
  136. package/dist/lib/runtime-darwin-arm64/artifacts/library-dev/runtime/default/scr_bytes_io.o +0 -0
  137. package/dist/lib/runtime-darwin-arm64/artifacts/library-dev/runtime/default/scr_closure.o +0 -0
  138. package/dist/lib/runtime-darwin-arm64/artifacts/library-dev/runtime/default/scr_context.o +0 -0
  139. package/dist/lib/runtime-darwin-arm64/artifacts/library-dev/runtime/default/scr_cycle.o +0 -0
  140. package/dist/lib/runtime-darwin-arm64/artifacts/library-dev/runtime/default/scr_error.o +0 -0
  141. package/dist/lib/runtime-darwin-arm64/artifacts/library-dev/runtime/default/scr_events_emitter.o +0 -0
  142. package/dist/lib/runtime-darwin-arm64/artifacts/library-dev/runtime/default/scr_exception.o +0 -0
  143. package/dist/lib/runtime-darwin-arm64/artifacts/library-dev/runtime/default/scr_json.o +0 -0
  144. package/dist/lib/runtime-darwin-arm64/artifacts/library-dev/runtime/default/scr_lib.o +0 -0
  145. package/dist/lib/runtime-darwin-arm64/artifacts/library-dev/runtime/default/scr_map.o +0 -0
  146. package/dist/lib/runtime-darwin-arm64/artifacts/library-dev/runtime/default/scr_number.o +0 -0
  147. package/dist/lib/runtime-darwin-arm64/artifacts/library-dev/runtime/default/scr_object.o +0 -0
  148. package/dist/lib/runtime-darwin-arm64/artifacts/library-dev/runtime/default/scr_regex.o +0 -0
  149. package/dist/lib/runtime-darwin-arm64/artifacts/library-dev/runtime/default/scr_shared.o +0 -0
  150. package/dist/lib/runtime-darwin-arm64/artifacts/library-dev/runtime/default/scr_string.o +0 -0
  151. package/dist/lib/runtime-darwin-arm64/artifacts/library-dev/runtime/default/scr_union.o +0 -0
  152. package/dist/lib/runtime-darwin-arm64/artifacts/library-dev/runtime/text-decoder-legacy/scr_bytes.o +0 -0
  153. package/dist/lib/runtime-darwin-arm64/artifacts/library-release/runtime/default/scr_array.o +0 -0
  154. package/dist/lib/runtime-darwin-arm64/artifacts/library-release/runtime/default/scr_assert.o +0 -0
  155. package/dist/lib/runtime-darwin-arm64/artifacts/library-release/runtime/default/scr_bytes.o +0 -0
  156. package/dist/lib/runtime-darwin-arm64/artifacts/library-release/runtime/default/scr_bytes_io.o +0 -0
  157. package/dist/lib/runtime-darwin-arm64/artifacts/library-release/runtime/default/scr_closure.o +0 -0
  158. package/dist/lib/runtime-darwin-arm64/artifacts/library-release/runtime/default/scr_context.o +0 -0
  159. package/dist/lib/runtime-darwin-arm64/artifacts/library-release/runtime/default/scr_cycle.o +0 -0
  160. package/dist/lib/runtime-darwin-arm64/artifacts/library-release/runtime/default/scr_error.o +0 -0
  161. package/dist/lib/runtime-darwin-arm64/artifacts/library-release/runtime/default/scr_events_emitter.o +0 -0
  162. package/dist/lib/runtime-darwin-arm64/artifacts/library-release/runtime/default/scr_exception.o +0 -0
  163. package/dist/lib/runtime-darwin-arm64/artifacts/library-release/runtime/default/scr_json.o +0 -0
  164. package/dist/lib/runtime-darwin-arm64/artifacts/library-release/runtime/default/scr_lib.o +0 -0
  165. package/dist/lib/runtime-darwin-arm64/artifacts/library-release/runtime/default/scr_map.o +0 -0
  166. package/dist/lib/runtime-darwin-arm64/artifacts/library-release/runtime/default/scr_number.o +0 -0
  167. package/dist/lib/runtime-darwin-arm64/artifacts/library-release/runtime/default/scr_object.o +0 -0
  168. package/dist/lib/runtime-darwin-arm64/artifacts/library-release/runtime/default/scr_regex.o +0 -0
  169. package/dist/lib/runtime-darwin-arm64/artifacts/library-release/runtime/default/scr_shared.o +0 -0
  170. package/dist/lib/runtime-darwin-arm64/artifacts/library-release/runtime/default/scr_string.o +0 -0
  171. package/dist/lib/runtime-darwin-arm64/artifacts/library-release/runtime/default/scr_union.o +0 -0
  172. package/dist/lib/runtime-darwin-arm64/artifacts/library-release/runtime/text-decoder-legacy/scr_bytes.o +0 -0
  173. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-dev/runtime/default/scr_array.o +0 -0
  174. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-dev/runtime/default/scr_assert.o +0 -0
  175. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-dev/runtime/default/scr_bytes.o +0 -0
  176. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-dev/runtime/default/scr_bytes_io.o +0 -0
  177. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-dev/runtime/default/scr_closure.o +0 -0
  178. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-dev/runtime/default/scr_console.o +0 -0
  179. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-dev/runtime/default/scr_context.o +0 -0
  180. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-dev/runtime/default/scr_copying.o +0 -0
  181. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-dev/runtime/default/scr_cycle.o +0 -0
  182. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-dev/runtime/default/scr_error.o +0 -0
  183. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-dev/runtime/default/scr_events_emitter.o +0 -0
  184. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-dev/runtime/default/scr_exception.o +0 -0
  185. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-dev/runtime/default/scr_inspect.o +0 -0
  186. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-dev/runtime/default/scr_json.o +0 -0
  187. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-dev/runtime/default/scr_lib.o +0 -0
  188. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-dev/runtime/default/scr_map.o +0 -0
  189. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-dev/runtime/default/scr_number.o +0 -0
  190. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-dev/runtime/default/scr_object.o +0 -0
  191. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-dev/runtime/default/scr_regex.o +0 -0
  192. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-dev/runtime/default/scr_shared.o +0 -0
  193. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-dev/runtime/default/scr_string.o +0 -0
  194. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-dev/runtime/default/scr_union.o +0 -0
  195. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-dev/runtime/default/scr_zlib.o +0 -0
  196. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-dev/runtime/text-decoder-legacy/scr_bytes.o +0 -0
  197. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-release/runtime/default/scr_array.o +0 -0
  198. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-release/runtime/default/scr_assert.o +0 -0
  199. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-release/runtime/default/scr_bytes.o +0 -0
  200. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-release/runtime/default/scr_bytes_io.o +0 -0
  201. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-release/runtime/default/scr_closure.o +0 -0
  202. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-release/runtime/default/scr_console.o +0 -0
  203. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-release/runtime/default/scr_context.o +0 -0
  204. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-release/runtime/default/scr_copying.o +0 -0
  205. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-release/runtime/default/scr_cycle.o +0 -0
  206. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-release/runtime/default/scr_error.o +0 -0
  207. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-release/runtime/default/scr_events_emitter.o +0 -0
  208. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-release/runtime/default/scr_exception.o +0 -0
  209. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-release/runtime/default/scr_inspect.o +0 -0
  210. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-release/runtime/default/scr_json.o +0 -0
  211. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-release/runtime/default/scr_lib.o +0 -0
  212. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-release/runtime/default/scr_map.o +0 -0
  213. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-release/runtime/default/scr_number.o +0 -0
  214. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-release/runtime/default/scr_object.o +0 -0
  215. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-release/runtime/default/scr_regex.o +0 -0
  216. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-release/runtime/default/scr_shared.o +0 -0
  217. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-release/runtime/default/scr_string.o +0 -0
  218. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-release/runtime/default/scr_union.o +0 -0
  219. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-release/runtime/default/scr_zlib.o +0 -0
  220. package/dist/lib/runtime-darwin-arm64/artifacts/library-thread-release/runtime/text-decoder-legacy/scr_bytes.o +0 -0
  221. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default/scr_array.o +0 -0
  222. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default/scr_assert.o +0 -0
  223. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default/scr_async.o +0 -0
  224. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default/scr_bytes.o +0 -0
  225. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default/scr_bytes_io.o +0 -0
  226. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default/scr_child.o +0 -0
  227. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default/scr_closure.o +0 -0
  228. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default/scr_console.o +0 -0
  229. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default/scr_context.o +0 -0
  230. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default/scr_cycle.o +0 -0
  231. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default/scr_dgram.o +0 -0
  232. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default/scr_error.o +0 -0
  233. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default/scr_events.o +0 -0
  234. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default/scr_events_emitter.o +0 -0
  235. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default/scr_exception.o +0 -0
  236. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default/scr_fetch.o +0 -0
  237. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default/scr_file_handle.o +0 -0
  238. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default/scr_json.o +0 -0
  239. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default/scr_lib.o +0 -0
  240. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default/scr_map.o +0 -0
  241. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default/scr_number.o +0 -0
  242. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default/scr_object.o +0 -0
  243. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default/scr_readline.o +0 -0
  244. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default/scr_regex.o +0 -0
  245. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default/scr_shared.o +0 -0
  246. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default/scr_stream.o +0 -0
  247. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default/scr_string.o +0 -0
  248. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default/scr_tls.o +0 -0
  249. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default/scr_union.o +0 -0
  250. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_array.o +0 -0
  251. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_assert.o +0 -0
  252. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_async.o +0 -0
  253. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_async_dyn.o +0 -0
  254. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_bigint.o +0 -0
  255. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_bigint_assert.o +0 -0
  256. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_bytes.o +0 -0
  257. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_bytes_io.o +0 -0
  258. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_child.o +0 -0
  259. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_closure.o +0 -0
  260. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_console.o +0 -0
  261. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_console_native.o +0 -0
  262. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_context.o +0 -0
  263. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_copying.o +0 -0
  264. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_crypto_async.o +0 -0
  265. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_cycle.o +0 -0
  266. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_dc.o +0 -0
  267. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_dgram.o +0 -0
  268. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_dyn_handle.o +0 -0
  269. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_dyn_invoke.o +0 -0
  270. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_error.o +0 -0
  271. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_events.o +0 -0
  272. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_events_emitter.o +0 -0
  273. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_exception.o +0 -0
  274. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_fetch.o +0 -0
  275. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_ffi.o +0 -0
  276. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_ffi_queue.o +0 -0
  277. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_file_handle.o +0 -0
  278. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_grapheme.o +0 -0
  279. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_http.o +0 -0
  280. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_http2.o +0 -0
  281. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_inspect.o +0 -0
  282. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_json.o +0 -0
  283. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_lib.o +0 -0
  284. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_loop_epoll.o +0 -0
  285. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_loop_kqueue.o +0 -0
  286. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_loop_wsapoll.o +0 -0
  287. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_map.o +0 -0
  288. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_net.o +0 -0
  289. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_node_builtin.o +0 -0
  290. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_number.o +0 -0
  291. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_object.o +0 -0
  292. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_path.o +0 -0
  293. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_qs.o +0 -0
  294. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_readline.o +0 -0
  295. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_regex.o +0 -0
  296. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_shared.o +0 -0
  297. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_stream.o +0 -0
  298. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_string.o +0 -0
  299. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_symbol.o +0 -0
  300. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_test.o +0 -0
  301. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_tls.o +0 -0
  302. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_tls_ca.o +0 -0
  303. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_union.o +0 -0
  304. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_url.o +0 -0
  305. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_url_params.o +0 -0
  306. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_util.o +0 -0
  307. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_util_compare.o +0 -0
  308. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_util_style.o +0 -0
  309. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_watch.o +0 -0
  310. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/default-workers/scr_zlib.o +0 -0
  311. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/dynamic/scr_array.o +0 -0
  312. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/dynamic/scr_assert.o +0 -0
  313. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/dynamic/scr_async.o +0 -0
  314. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/dynamic/scr_bytes.o +0 -0
  315. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/dynamic/scr_bytes_io.o +0 -0
  316. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/dynamic/scr_child.o +0 -0
  317. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/dynamic/scr_closure.o +0 -0
  318. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/dynamic/scr_console.o +0 -0
  319. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/dynamic/scr_context.o +0 -0
  320. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/dynamic/scr_cycle.o +0 -0
  321. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/dynamic/scr_dgram.o +0 -0
  322. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/dynamic/scr_error.o +0 -0
  323. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/dynamic/scr_events.o +0 -0
  324. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/dynamic/scr_events_emitter.o +0 -0
  325. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/dynamic/scr_exception.o +0 -0
  326. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/dynamic/scr_file_handle.o +0 -0
  327. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/dynamic/scr_island.o +0 -0
  328. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/dynamic/scr_json.o +0 -0
  329. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/dynamic/scr_lib.o +0 -0
  330. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/dynamic/scr_map.o +0 -0
  331. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/dynamic/scr_number.o +0 -0
  332. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/dynamic/scr_object.o +0 -0
  333. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/dynamic/scr_readline.o +0 -0
  334. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/dynamic/scr_regex.o +0 -0
  335. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/dynamic/scr_shared.o +0 -0
  336. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/dynamic/scr_stream.o +0 -0
  337. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/dynamic/scr_string.o +0 -0
  338. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/dynamic/scr_tls.o +0 -0
  339. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/dynamic/scr_union.o +0 -0
  340. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/dynamic-text-decoder-legacy/scr_bytes.o +0 -0
  341. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/text-decoder-legacy/scr_bytes.o +0 -0
  342. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/text-decoder-legacy-workers/scr_bytes.o +0 -0
  343. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/workers/scr_mailbox.o +0 -0
  344. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/workers/scr_message.o +0 -0
  345. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/workers/scr_worker.o +0 -0
  346. package/dist/lib/runtime-darwin-arm64/artifacts/release/runtime/workers/scr_worker_events.o +0 -0
  347. package/dist/lib/runtime-darwin-arm64/package.json +1 -1
  348. package/dist/lib/runtime-darwin-arm64/runtime-pack.json +3300 -772
  349. package/dist/lib/runtime-sources/package.json +1 -1
  350. package/dist/lib/runtime-sources/src/scr_array.c +212 -40
  351. package/dist/lib/runtime-sources/src/scr_assert.c +3 -3
  352. package/dist/lib/runtime-sources/src/scr_async.c +401 -71
  353. package/dist/lib/runtime-sources/src/scr_async_dyn.c +30 -30
  354. package/dist/lib/runtime-sources/src/scr_bytes.c +50 -5
  355. package/dist/lib/runtime-sources/src/scr_bytes_io.c +47 -32
  356. package/dist/lib/runtime-sources/src/scr_child.c +48 -30
  357. package/dist/lib/runtime-sources/src/scr_closure.c +21 -11
  358. package/dist/lib/runtime-sources/src/scr_console.c +27 -5
  359. package/dist/lib/runtime-sources/src/scr_context.c +167 -0
  360. package/dist/lib/runtime-sources/src/scr_context.test.c +118 -0
  361. package/dist/lib/runtime-sources/src/scr_context.test.ts +47 -0
  362. package/dist/lib/runtime-sources/src/scr_copying.c +1 -0
  363. package/dist/lib/runtime-sources/src/scr_cycle.c +112 -12
  364. package/dist/lib/runtime-sources/src/scr_dc.c +8 -8
  365. package/dist/lib/runtime-sources/src/scr_dgram.c +10 -7
  366. package/dist/lib/runtime-sources/src/scr_error.c +26 -14
  367. package/dist/lib/runtime-sources/src/scr_events.c +45 -31
  368. package/dist/lib/runtime-sources/src/scr_events_emitter.c +34 -1
  369. package/dist/lib/runtime-sources/src/scr_exception.c +26 -7
  370. package/dist/lib/runtime-sources/src/scr_fetch.c +23 -20
  371. package/dist/lib/runtime-sources/src/scr_fetch_curl.c +1 -1
  372. package/dist/lib/runtime-sources/src/scr_ffi.c +3 -3
  373. package/dist/lib/runtime-sources/src/scr_file_handle.c +1 -0
  374. package/dist/lib/runtime-sources/src/scr_http.c +20 -16
  375. package/dist/lib/runtime-sources/src/scr_http2.c +10 -8
  376. package/dist/lib/runtime-sources/src/scr_inspect.c +1 -0
  377. package/dist/lib/runtime-sources/src/scr_island.c +1 -1
  378. package/dist/lib/runtime-sources/src/scr_json.c +179 -45
  379. package/dist/lib/runtime-sources/src/scr_json.test.c +16 -0
  380. package/dist/lib/runtime-sources/src/scr_json.test.ts +1 -0
  381. package/dist/lib/runtime-sources/src/scr_key.h +28 -4
  382. package/dist/lib/runtime-sources/src/scr_lib.c +124 -63
  383. package/dist/lib/runtime-sources/src/scr_mailbox.c +233 -0
  384. package/dist/lib/runtime-sources/src/scr_mailbox.h +28 -0
  385. package/dist/lib/runtime-sources/src/scr_mailbox.test.c +86 -0
  386. package/dist/lib/runtime-sources/src/scr_mailbox.test.ts +46 -0
  387. package/dist/lib/runtime-sources/src/scr_map.c +195 -46
  388. package/dist/lib/runtime-sources/src/scr_message.c +443 -0
  389. package/dist/lib/runtime-sources/src/scr_message.h +14 -0
  390. package/dist/lib/runtime-sources/src/scr_message.test.c +152 -0
  391. package/dist/lib/runtime-sources/src/scr_message.test.ts +44 -0
  392. package/dist/lib/runtime-sources/src/scr_net.c +14 -12
  393. package/dist/lib/runtime-sources/src/scr_number.c +34 -0
  394. package/dist/lib/runtime-sources/src/scr_object.c +9 -4
  395. package/dist/lib/runtime-sources/src/scr_path.c +1 -1
  396. package/dist/lib/runtime-sources/src/scr_readline.c +8 -8
  397. package/dist/lib/runtime-sources/src/scr_regex.c +113 -0
  398. package/dist/lib/runtime-sources/src/scr_runtime.h +170 -28
  399. package/dist/lib/runtime-sources/src/scr_shared.c +280 -0
  400. package/dist/lib/runtime-sources/src/scr_shared.test.c +113 -0
  401. package/dist/lib/runtime-sources/src/scr_shared.test.ts +45 -0
  402. package/dist/lib/runtime-sources/src/scr_stream.c +9 -9
  403. package/dist/lib/runtime-sources/src/scr_string.c +224 -113
  404. package/dist/lib/runtime-sources/src/scr_test.c +8 -8
  405. package/dist/lib/runtime-sources/src/scr_tls.c +12 -12
  406. package/dist/lib/runtime-sources/src/scr_tls_ca.c +34 -12
  407. package/dist/lib/runtime-sources/src/scr_union.c +10 -5
  408. package/dist/lib/runtime-sources/src/scr_util_compare.c +1 -0
  409. package/dist/lib/runtime-sources/src/scr_util_style.c +11 -11
  410. package/dist/lib/runtime-sources/src/scr_watch.c +16 -6
  411. package/dist/lib/runtime-sources/src/scr_worker.c +232 -0
  412. package/dist/lib/runtime-sources/src/scr_worker.h +42 -0
  413. package/dist/lib/runtime-sources/src/scr_worker.test.c +115 -0
  414. package/dist/lib/runtime-sources/src/scr_worker.test.ts +49 -0
  415. package/dist/lib/runtime-sources/src/scr_worker_events.c +443 -0
  416. package/dist/lib/runtime-sources/src/scr_zlib.c +6 -0
  417. package/package.json +1 -1
@@ -35,7 +35,7 @@ char *strcasestr(const char *hay, const char *needle);
35
35
  void arc4random_buf(void *buf, size_t n);
36
36
  #endif
37
37
 
38
- /* ── thread-instanced library state ─────────────────────────────────────
38
+ /* ── runtime instance state ─────────────────────────────────────────────
39
39
  * Archives built under the profile's abi.instance_per_thread compile every
40
40
  * TU with -DSCR_THREAD_INSTANCES, and SCR_TL moves each unit's mutable
41
41
  * state — and the emitted program's globals — into thread-local storage.
@@ -44,10 +44,10 @@ void arc4random_buf(void *buf, size_t n);
44
44
  * registration, poison flag, and program state. The instance's lifetime is
45
45
  * the thread's; the one-thread-per-instance contract (an instance is never
46
46
  * entered from two threads) is unchanged — this mode adds instances, not
47
- * thread awareness. Expands to nothing everywhere else, so executable
48
- * builds and classic library builds carry the exact bytes they always
49
- * carried. Truly immutable tables (static const data) stay shared. */
50
- #if defined(SCR_LIB) && defined(SCR_THREAD_INSTANCES)
47
+ * thread awareness. Worker executables use the same isolation for their
48
+ * collectors, caches and scheduler state. Expands to nothing for ordinary
49
+ * executables and classic libraries. Immutable tables stay shared. */
50
+ #if (defined(SCR_LIB) && defined(SCR_THREAD_INSTANCES)) || defined(SCR_WORKERS)
51
51
  #define SCR_TL _Thread_local
52
52
  #else
53
53
  #define SCR_TL
@@ -62,7 +62,8 @@ void scr_init(void);
62
62
  /* Program objects emitted by the bundled LLVM helper reference this symbol.
63
63
  * Its versioned spelling makes a mismatched manual runtime link fail before
64
64
  * the program can start. */
65
- void scr_runtime_abi_v6(void);
65
+ void scr_runtime_abi_v7(void);
66
+ void scr_runtime_workers_v7(void);
66
67
 
67
68
  /* ── the trap funnel (scr_console.c; scr_library.c under -DSCR_LIB) ──────
68
69
  * Every unrecoverable runtime trap — OOM, semantic range traps, internal-
@@ -276,10 +277,45 @@ void scr_library_str_out(ScrStr *s, const uint8_t **out, size_t *out_len);
276
277
  void scr_library_bytes_out(ScrBytes *b, const uint8_t **out, size_t *out_len);
277
278
 
278
279
  #define scr_atexit(fn) scr_library_register_reset(fn)
280
+ #elif defined(SCR_WORKERS)
281
+ /* Executable workers drain their own cleanup stack before their TLS dies.
282
+ * Registering their callbacks with libc would execute them on the process
283
+ * exit thread against a different runtime instance. */
284
+ int scr_context_atexit(void (*fn)(void));
285
+ void scr_context_cleanup(void);
286
+ void scr_context_enter(uint64_t thread_id);
287
+ uint64_t scr_context_thread_id(void);
288
+ void scr_context_stop_flag(const void *flag);
289
+ void scr_context_stop(int code);
290
+ bool scr_context_stopping(void);
291
+ bool scr_context_checkpoint(void);
292
+ void scr_loop_context_shutdown(void);
293
+ extern SCR_TL void (*scr_context_report_error)(void);
294
+ typedef struct ScrContextEnv ScrContextEnv;
295
+ ScrContextEnv *scr_context_env_capture(void);
296
+ void scr_context_env_free(ScrContextEnv *environment);
297
+ void scr_context_env_enter(ScrContextEnv *environment);
298
+ bool scr_context_env_set(const char *name, const char *value);
299
+ const char *scr_context_getenv(const char *name);
300
+ struct ScrArr *scr_context_env_pairs(void);
301
+ #define scr_atexit(fn) scr_context_atexit(fn)
279
302
  #else
280
303
  #define scr_atexit(fn) atexit(fn)
281
304
  #endif /* SCR_LIB */
282
305
 
306
+ /* Also used by ordinary event-loop builds, where this always returns true. */
307
+ bool scr_context_is_main(void);
308
+ double scr_context_thread_number(void);
309
+ double scr_worker_root(void);
310
+ int scr_worker_argc(void);
311
+ char **scr_worker_argv(void);
312
+
313
+ #ifdef SCR_WORKERS
314
+ #define scr_getenv(name) scr_context_getenv(name)
315
+ #else
316
+ #define scr_getenv(name) getenv(name)
317
+ #endif
318
+
283
319
  /* ── cycle collection (scr_cycle.c) ───────────────────────────────────
284
320
  * Reference counting alone cannot free cycles, so every object that can
285
321
  * participate in one — capture boxes, heap closures, unions, promises, and
@@ -380,6 +416,12 @@ static inline ScrCycHdr *scr_cyc_hdr(void *obj) { return (ScrCycHdr *)obj - 1; }
380
416
  void *scr_cyc_alloc(size_t size, ScrTraceFn trace, ScrCycFreeFn free_fn);
381
417
  void scr_cyc_free(void *obj); /* frees the block, header included */
382
418
 
419
+ /* Dispose an object whose reference count already reached zero. The caller
420
+ * removes its cycle candidate first. Nested disposals keep bounded stack
421
+ * depth; deeper objects wait until the outer disposal drains the worklist.
422
+ * The callback owns the object and must release its children and free it. */
423
+ void scr_rc_destroy(void *obj, void (*destroy)(void *));
424
+
383
425
  /* RC hooks for cycle-headered types. on_release: rc was decremented and
384
426
  * stayed above zero — buffer the object as a possible cycle root (may run
385
427
  * a collection when the buffer crosses the threshold; the caller must not
@@ -397,6 +439,7 @@ static inline void scr_cyc_mark_live(void *obj) {
397
439
  * after and wants nothing reclaimable left), and it costs a walk of the
398
440
  * live heap — do not put it on a per-turn path. */
399
441
  void scr_collect_cycles(void);
442
+ void scr_cyc_context_cleanup(void);
400
443
 
401
444
  /* One pass on the normal generational schedule, for callers that reach a
402
445
  * natural collection point rather than a threshold (the event loop between
@@ -765,6 +808,16 @@ ScrStr *scr_str_slice(ScrStr *s, double start, double end);
765
808
  /* substring: clamp-and-swap (negatives clamp to 0, start > end swaps). */
766
809
  ScrStr *scr_str_substring(ScrStr *s, double start, double end);
767
810
 
811
+ /* Scalar-only local slices retain their original owner without copying.
812
+ * Bounds and split-surrogate replacements are snapshotted at construction. */
813
+ typedef struct ScrStringSlice {
814
+ size_t start, length;
815
+ uint32_t split;
816
+ } ScrStringSlice;
817
+ void scr_str_slice_range(ScrStr *s, double start, double end, bool substring,
818
+ ScrStringSlice *out);
819
+ double scr_str_slice_char_code_at(ScrStr *s, const ScrStringSlice *range, double index);
820
+
768
821
  /* repeat(count): count < 0 or Infinity is a JS RangeError; scriptc has no
769
822
  * exceptions, so it prints "scriptc: RangeError: Invalid count value" to
770
823
  * stderr and abort()s. Returns +1. */
@@ -805,6 +858,25 @@ ScrStr *scr_str_trim_end(ScrStr *s);
805
858
  struct ScrArr;
806
859
  struct ScrArr *scr_str_split(ScrStr *s, ScrStr *sep);
807
860
  struct ScrArr *scr_str_split_limit(ScrStr *s, ScrStr *sep, double limit);
861
+ /* Internal dense split traversal. The cursor borrows input strings, returns
862
+ * one owned piece per step, and uses NULL only for exhaustion. Its layout
863
+ * is shared with generated stack storage, including wasm32. */
864
+ typedef struct ScrSplitCursor {
865
+ size_t offset;
866
+ uint32_t remaining;
867
+ uint32_t pending_unit;
868
+ } ScrSplitCursor;
869
+ void scr_str_split_cursor_init(ScrSplitCursor *cursor, uint32_t limit);
870
+ /* Optional scratch is a separately owned, NULL-initialized string slot.
871
+ * A piece that has not escaped can reuse it after the preceding yield is
872
+ * released. The caller releases the slot on every exit; NULL disables reuse. */
873
+ ScrStr *scr_str_split_cursor_next(ScrStr *s, ScrStr *sep, ScrSplitCursor *cursor,
874
+ ScrStr **scratch);
875
+ /* Borrowed split bytes remain valid while the source snapshot is owned.
876
+ * Materialization returns +1 and uses the same optional scratch contract. */
877
+ const char *scr_str_split_cursor_span(ScrStr *s, ScrStr *sep, ScrSplitCursor *cursor,
878
+ size_t *length);
879
+ ScrStr *scr_str_split_materialize(const char *bytes, size_t length, ScrStr **scratch);
808
880
 
809
881
  /* padStart(maxLength, fill)/padEnd — ECMA StringPad, UTF-16 unit counts.
810
882
  * Target at or below the length (or empty fill) returns the receiver
@@ -1144,6 +1216,7 @@ double scr_arr_get_number(const ScrArr *a, double i);
1144
1216
  bool scr_arr_index_eq(const ScrArr *a, double i, const ScrArr *b, double j);
1145
1217
  bool scr_arr_get_bool(ScrArr *a, double i); /* trap missing/hole */
1146
1218
  void *scr_arr_get_ref(ScrArr *a, double i); /* trap missing/hole; +1 */
1219
+ void *scr_arr_borrow_ref(ScrArr *a, double i); /* same checks; borrowed */
1147
1220
  /* Borrow a non-null reference element, or NULL for a hole/undefined/missing
1148
1221
  * property. Keep the array alive and retain before removing its element.
1149
1222
  * This read does not invoke retain callbacks or mutate runtime state. */
@@ -1196,6 +1269,8 @@ double scr_arr_unshift_bool(ScrArr *a, bool v);
1196
1269
  double scr_arr_unshift_ref(ScrArr *a, void *v);
1197
1270
  double scr_arr_unshift_spread(ScrArr *a, const ScrArr *src);
1198
1271
  ScrArr *scr_arr_reverse(ScrArr *a);
1272
+ /* Default primitive String ordering; stable, borrowed receiver, owned result. */
1273
+ ScrArr *scr_arr_sort_primitive(ScrArr *a, bool copy);
1199
1274
 
1200
1275
  /* pop traps on an empty array; _ref transfers ownership out (+1 to the
1201
1276
  * caller, no release). */
@@ -1406,7 +1481,7 @@ typedef struct ScrMap {
1406
1481
  size_t ecap; /* entries capacity */
1407
1482
  ScrMapEntry *entries;
1408
1483
  size_t nbuckets; /* zero for small linear maps; otherwise power of two >= 2 * nentries */
1409
- size_t *buckets; /* entry indices; SIZE_MAX = empty */
1484
+ void *buckets; /* compact tagged indices, or size_t indices for large tables */
1410
1485
  size_t iter_depth; /* > 0: an iteration is active — no compaction */
1411
1486
  const ScrMapDynOps *dyn_ops;
1412
1487
  const uint8_t *union_keys; /* immutable key-kind table indexed by union tag */
@@ -1414,6 +1489,12 @@ typedef struct ScrMap {
1414
1489
 
1415
1490
  /* Called once on a fresh UNION_VALUE collection, before its first insert. */
1416
1491
  void scr_map_union_keys(ScrMap *map, const uint8_t *kinds);
1492
+ /* String-key lookups borrow an exact byte span. Reference results return
1493
+ * +1; scalar outputs are written only on a hit, like the string getters. */
1494
+ bool scr_map_get_span_f64(const ScrMap *m, const char *bytes, size_t length, double *out);
1495
+ bool scr_map_get_span_bool(const ScrMap *m, const char *bytes, size_t length, bool *out);
1496
+ void *scr_map_get_span_ref(const ScrMap *m, const char *bytes, size_t length);
1497
+
1417
1498
  /* Fresh shallow copies with compact storage and independent mutation.
1418
1499
  * keys_only selects a Set; checked views materialize their boxed values. */
1419
1500
  ScrMap *scr_map_clone(const ScrMap *source, bool keys_only);
@@ -1840,6 +1921,9 @@ extern SCR_TL ScrVt scr_emitter_vt; /* main() stamps pre/post */
1840
1921
  extern SCR_TL double scr_emitter_default_max;
1841
1922
 
1842
1923
  ScrEmitter *scr_emitter_new(void); /* +1, collector-headered */
1924
+ /* Internal owner hook; observes listener presence without running script. */
1925
+ void scr_emitter_observe(ScrEmitter *em,
1926
+ void (*observe)(void *, const ScrStr *, bool), void *context);
1843
1927
  void scr_emitter_init(void *obj); /* super() into the prefix (no-op today) */
1844
1928
  ScrEmitter *scr_emitter_retain(ScrEmitter *em);
1845
1929
  void scr_emitter_release(ScrEmitter *em); /* dispatches through em->vt */
@@ -1917,6 +2001,7 @@ ScrEmitter *scr_emitter_remove_all(ScrEmitter *em, ScrStr *name, bool all);
1917
2001
  * emit('error', err): no listener ⇒ THROWS err (borrowed; +1 taken). */
1918
2002
  bool scr_emitter_emit(ScrEmitter *em, ScrStr *name, ...);
1919
2003
  bool scr_emitter_emit_flex(ScrEmitter *em, ScrStr *name, ScrDyn *const *args, size_t argc);
2004
+ bool scr_emitter_emit_error_flex(ScrEmitter *em, ScrDyn *error);
1920
2005
  bool scr_emitter_emit_error(ScrEmitter *em, ScrStr *name, ScrError *err);
1921
2006
  double scr_emitter_listener_count(ScrEmitter *em, ScrStr *name);
1922
2007
  double scr_emitter_listener_count_fn(ScrEmitter *em, ScrStr *name, ScrClosure *fn);
@@ -1938,7 +2023,7 @@ bool scr_emitter_has(ScrEmitter *em, const char *name);
1938
2023
  * the END of scr_emitter_on with the emitter and the event name, so the
1939
2024
  * stream unit can start flowing on the first 'data' listener. NULL when
1940
2025
  * the stream unit is not linked; emitter behavior is byte-identical. */
1941
- extern void (*scr_emitter_on_hook)(ScrEmitter *em, ScrStr *name);
2026
+ extern SCR_TL void (*scr_emitter_on_hook)(ScrEmitter *em, ScrStr *name);
1942
2027
 
1943
2028
  /* ── node:stream (scr_stream.c, link-gated by moduleUsesStream) ───────
1944
2029
  * The runtime-provided stream classes (Readable/Writable/Duplex/
@@ -1979,7 +2064,7 @@ typedef struct ScrStream {
1979
2064
  ScrStreamState *st;
1980
2065
  } ScrStream;
1981
2066
 
1982
- extern ScrVt scr_readable_vt, scr_writable_vt, scr_duplex_vt,
2067
+ extern SCR_TL ScrVt scr_readable_vt, scr_writable_vt, scr_duplex_vt,
1983
2068
  scr_transform_vt, scr_passthrough_vt; /* main() stamps pre/post */
1984
2069
 
1985
2070
  /* Compiler-emitted option-callback invoke adapters (the leading-`this`
@@ -2290,6 +2375,9 @@ typedef enum {
2290
2375
  * functions, and checked-dynamic primitives). The payload uses the
2291
2376
  * same ownership as REF. */
2292
2377
  SCR_EXC_PRIMITIVE_REF,
2378
+ /* Noncatchable context shutdown. Owns no payload; generated unwinding
2379
+ * releases locals while bypassing user catch and finally handlers. */
2380
+ SCR_EXC_TERMINATE,
2293
2381
  } ScrExcKind;
2294
2382
 
2295
2383
  /* One cell per fiber (JS has one exception in flight per execution
@@ -2407,7 +2495,7 @@ ScrDyn *scr_caught_to_dyn(const ScrCaught *c);
2407
2495
  void scr_exc_print_uncaught(void);
2408
2496
  /* Optional native process exception registry. Hook returns 1 when handled,
2409
2497
  * 0 when unhandled, and -1 when a handler itself threw (Node exit 7). */
2410
- extern int (*scr_uncaught_exception_hook)(bool from_promise);
2498
+ extern SCR_TL int (*scr_uncaught_exception_hook)(bool from_promise);
2411
2499
  bool scr_exc_handle_uncaught(bool from_promise);
2412
2500
  void scr_process_on_uncaught_exception(ScrDyn *fn, bool once, bool monitor);
2413
2501
  void scr_process_off_uncaught_exception(ScrDyn *fn, bool monitor);
@@ -2469,7 +2557,7 @@ ScrStr *scr_process_cwd(void); /* +1 fresh (getcwd) */
2469
2557
  * internal stdio formatting buffer never delays live output. */
2470
2558
  bool scr_stdio_write(int fd, const void *data, size_t len);
2471
2559
  int scr_stdio_write_raw(int fd, const void *data, size_t len);
2472
- extern bool (*scr_stdio_write_hook)(int fd, const void *data, size_t len);
2560
+ extern SCR_TL bool (*scr_stdio_write_hook)(int fd, const void *data, size_t len);
2473
2561
  /* process.stdout/.stderr .write — raw bytes (no newline or formatting; data
2474
2562
  * borrowed), promptly visible and ordered with console output. Constantly
2475
2563
  * true (the synchronous runtime never queues backpressure). */
@@ -2632,15 +2720,11 @@ void scr_fs_write_file_mode(ScrStr *path, ScrStr *data, double mode);
2632
2720
  void scr_fs_mkdir_mode(ScrStr *path, double mode);
2633
2721
  void scr_fs_mkdir_recursive_mode(ScrStr *path, double mode);
2634
2722
 
2635
- /* Atomics.wait(int32Array, idx, expected, timeoutMs): "not-equal" when
2636
- * the element differs from expected, else a real nanosleep for the
2637
- * timeout and "timed-out" (+1 string either way). scriptc has no
2638
- * threads, so nothing can ever notify — for every compilable program
2639
- * this IS the spec's behavior and "ok" is unreachable (the compiler
2640
- * requires the timeout argument; an infinite wait would be a certain
2641
- * deadlock). Out-of-range indices trap like every bytes access. */
2642
- typedef struct ScrBytes ScrBytes; /* full definition below (C11 repeat) */
2643
- ScrStr *scr_atomics_wait(ScrBytes *arr, double idx, double expected, double timeout_ms);
2723
+ /* Sequentially consistent integer operations and shared Int32 wait queues. */
2724
+ typedef struct ScrBytes ScrBytes;
2725
+ ScrStr *scr_atomics_wait(ScrBytes *, double, double, double);
2726
+ double scr_atomics_notify(ScrBytes *, double, double);
2727
+ double scr_atomics_op(ScrBytes *, double, double, double, double);
2644
2728
 
2645
2729
  /* isatty(3) over an fd (0/1/2): a real boolean — false where Node's
2646
2730
  * non-TTY streams expose undefined (SEMANTICS.md). stdin_destroy is a
@@ -3665,6 +3749,9 @@ typedef enum {
3665
3749
  SCR_DYNH_CONSOLE, /* stored global console value */
3666
3750
  SCR_DYNH_SEARCH_PARAMS, /* live WHATWG URLSearchParams */
3667
3751
  SCR_DYNH_FETCH_REQUEST,
3752
+ SCR_DYNH_WORKER,
3753
+ SCR_DYNH_MESSAGE_PORT,
3754
+ SCR_DYNH_SHARED_ARRAY_BUFFER,
3668
3755
  SCR_DYNH_COUNT,
3669
3756
  } ScrDynHandleTag;
3670
3757
 
@@ -4117,6 +4204,7 @@ ScrStr *scr_dyn_string_coerce(const ScrDyn *d);
4117
4204
  * called, their throws propagating) — the WHATWG USVString conversions.
4118
4205
  * Borrows; +1 or NULL with the exception pending. */
4119
4206
  ScrStr *scr_dyn_string_coerce_js(const ScrDyn *d);
4207
+ ScrStr *scr_regex_replace_callback(ScrStr *subject, ScrRegex *regex, ScrDyn *callback, bool all);
4120
4208
  bool scr_dyn_number_coerce_js(const ScrDyn *d, double *out);
4121
4209
  /* Direct-return ABI wrapper for compiler libCalls: JS ToNumber, or NaN
4122
4210
  * with the exception pending when an object hook throws/refuses. */
@@ -4341,7 +4429,7 @@ ScrDyn *scr_dyn_new_promise(ScrPromise *p); /* scr_async_dyn.c (gated) */
4341
4429
  /* The allocator view the gated boxes use; installs the release arm's
4342
4430
  * promise-release edge (runtime-internal). */
4343
4431
  ScrDyn *scr_dyn_alloc_promise(void (*release_fn)(ScrPromise *p));
4344
- extern void (*scr_dyn_promise_release_fn)(ScrPromise *p);
4432
+ extern SCR_TL void (*scr_dyn_promise_release_fn)(ScrPromise *p);
4345
4433
  ScrDyn *scr_dyn_new_promise_adapting(ScrPromise *src,
4346
4434
  void (*adapt)(ScrPromise *dst, ScrPromise *src));
4347
4435
  /* BORROWED peek at the boxed promise; NULL when d is not a promise box. */
@@ -4583,6 +4671,8 @@ void scr_jb_puts(ScrJsonBuf *b, const char *s);
4583
4671
  /* JS JSON.stringify number rules: NaN/±Infinity → null, -0 → 0, else
4584
4672
  * shortest-roundtrip via scr_f64_to_str. */
4585
4673
  void scr_jb_put_f64(ScrJsonBuf *b, double v);
4674
+ /* Append String(number), including NaN/Infinity, without a temporary string. */
4675
+ void scr_jb_put_number(ScrJsonBuf *b, double v);
4586
4676
  /* Quoted + escaped JSON string: \" \\ \n \r \t \b \f, other control chars
4587
4677
  * as \u00XX, everything else (UTF-8 included) verbatim — exactly the JS
4588
4678
  * JSON.stringify escape set for well-formed strings. */
@@ -4598,6 +4688,10 @@ void scr_dyn_isl_tostr_buf(ScrJsonBuf *b, const ScrDyn *d);
4598
4688
  * DROP, array slots holding undefined print null (exactly Node). */
4599
4689
  void scr_jb_put_dyn(ScrJsonBuf *b, const ScrDyn *d);
4600
4690
  ScrStr *scr_jb_finish(ScrJsonBuf *b); /* returns +1; frees the buffer */
4691
+ /* Reformat compiler-produced compact JSON with an already resolved gap.
4692
+ * Borrows both inputs; gap_len is a byte length, including embedded NUL.
4693
+ * Returns a new owned string, or retains compact when the gap is empty. */
4694
+ ScrStr *scr_json_indent(const ScrStr *compact, const char *gap, size_t gap_len);
4601
4695
 
4602
4696
  void *scr_dyn_retain_v(void *d);
4603
4697
  void scr_dyn_release_v(void *d);
@@ -4710,7 +4804,13 @@ typedef struct ScrAlsCtx {
4710
4804
  ScrAlsEntry entries[]; /* flexible */
4711
4805
  } ScrAlsCtx;
4712
4806
  /* Runtime-internal (the fiber machinery's always-linked core). */
4713
- extern ScrAlsCtx **scr_als_active;
4807
+ extern SCR_TL ScrAlsCtx **scr_als_active;
4808
+ #ifdef SCR_WORKERS
4809
+ ScrAlsCtx **scr_als_slot(void);
4810
+ #define SCR_ALS_SLOT() scr_als_slot()
4811
+ #else
4812
+ #define SCR_ALS_SLOT() scr_als_active
4813
+ #endif
4714
4814
  ScrAlsCtx *scr_als_ctx_retain(ScrAlsCtx *c);
4715
4815
  void scr_als_ctx_release(ScrAlsCtx *c);
4716
4816
  double scr_als_new(void);
@@ -4741,12 +4841,12 @@ void scr_process_off_rejection_handled(ScrDyn *fn);
4741
4841
  /* The checkpoint delivery hook the registration above installs
4742
4842
  * (scr_async_dyn.c → scr_report_unhandled_rejections; NULL = default
4743
4843
  * report). Runtime-internal. */
4744
- extern bool (*scr_urj_deliver_fn)(ScrPromise *p);
4844
+ extern SCR_TL bool (*scr_urj_deliver_fn)(ScrPromise *p);
4745
4845
  /* The late-handled hook (scr_async_dyn.c installs it when a
4746
4846
  * 'rejectionHandled' listener registers): scr_async.c calls it when a
4747
4847
  * promise the report already delivered as unhandled gains a handler.
4748
4848
  * Runtime-internal. */
4749
- extern void (*scr_rjh_notify_fn)(ScrPromise *p);
4849
+ extern SCR_TL void (*scr_rjh_notify_fn)(ScrPromise *p);
4750
4850
  /* The attach-time handled mark (a dyn then/catch carrying a rejection
4751
4851
  * handler, or the module loader taking ownership of an evaluation
4752
4852
  * promise): marks pending and rejected sources observed at Node's attach
@@ -4977,8 +5077,8 @@ void scr_stdin_data_thunk_bytes(ScrClosure *cb, ScrBytes *chunk);
4977
5077
  * not the unit is present. */
4978
5078
  void scr_loop_set_events(bool (*pending)(void), bool (*watching)(void),
4979
5079
  void (*dispatch)(void), int (*pollfds)(int out[2]));
4980
- extern void (*scr_process_exit_hook)(double code);
4981
- extern void (*scr_stdin_destroy_hook)(void);
5080
+ extern SCR_TL void (*scr_process_exit_hook)(double code);
5081
+ extern SCR_TL void (*scr_stdin_destroy_hook)(void);
4982
5082
  void scr_exit_code_note(int code);
4983
5083
  int scr_exit_code_hint_get(void);
4984
5084
  /* The pollable child-exit wake fd (the child kqueue / pidfd epoll) for the loop's
@@ -5769,6 +5869,8 @@ typedef enum ScrBytesElem {
5769
5869
  SCR_BYTES_U8C, /* Uint8ClampedArray */
5770
5870
  } ScrBytesElem;
5771
5871
 
5872
+ typedef struct ScrSharedBytes ScrSharedBytes;
5873
+
5772
5874
  typedef struct ScrBytes {
5773
5875
  size_t rc;
5774
5876
  size_t len; /* ELEMENT count, fixed at construction */
@@ -5782,8 +5884,46 @@ typedef struct ScrBytes {
5782
5884
  bool is_buffer; /* Buffer brand belongs to the view, not its backing. */
5783
5885
  bool is_data_view; /* DataView is distinct from a numeric typed array. */
5784
5886
  bool external; /* Root aliases foreign memory; releasing it never frees data. */
5887
+ ScrSharedBytes *shared; /* Neutral backing, borrowed by views from their local owner. */
5785
5888
  } ScrBytes;
5786
5889
 
5890
+ /* Internal scoped locking is only for leaf memory operations. Never hold this
5891
+ * guard across a script callback, blocking I/O, or a fiber suspension. */
5892
+ void scr_shared_enter(void);
5893
+ void scr_shared_leave(void);
5894
+ bool scr_shared_guard(const ScrBytes *, const ScrBytes *);
5895
+ void scr_shared_guard_release(bool *);
5896
+ #if defined(SCR_WORKERS) || (defined(SCR_LIB) && defined(SCR_THREAD_INSTANCES))
5897
+ #define SCR_SHARED_GUARD(a, b) bool scr_shared_held __attribute__((cleanup(scr_shared_guard_release))) = scr_shared_guard(a, b)
5898
+ #else
5899
+ #define SCR_SHARED_GUARD(a, b) ((void)0)
5900
+ #endif
5901
+ ScrSharedBytes *scr_shared_retain(ScrSharedBytes *);
5902
+ void scr_shared_release(ScrSharedBytes *);
5903
+ void scr_bytes_make_shared(ScrBytes *);
5904
+ ScrBytes *scr_shared_wrap(ScrSharedBytes *);
5905
+ void scr_bytes_read(const ScrBytes *, size_t, void *, size_t);
5906
+ void scr_bytes_write(ScrBytes *, size_t, const void *, size_t);
5907
+ ScrStr *scr_bytes_string(const ScrBytes *, size_t, size_t);
5908
+ ScrBytes *scr_bytes_snapshot(const ScrBytes *);
5909
+ void scr_bytes_snapshot_release(ScrBytes **);
5910
+ ScrBytes *scr_bytes_local_copy(ScrBytes *); /* +1; shared inputs are copied */
5911
+ void scr_bytes_require_unshared(const ScrBytes *);
5912
+ /* Snapshot before passing byte pointers to I/O or callback-capable consumers.
5913
+ * The copy is local, so neither a lock nor shared raw memory escapes. */
5914
+ #if defined(SCR_WORKERS) || (defined(SCR_LIB) && defined(SCR_THREAD_INSTANCES))
5915
+ #define SCR_BYTES_SNAPSHOT(name) \
5916
+ ScrBytes *scr_snapshot_##name __attribute__((cleanup(scr_bytes_snapshot_release))) = scr_bytes_snapshot(name); \
5917
+ if (scr_snapshot_##name) name = scr_snapshot_##name
5918
+ #else
5919
+ #define SCR_BYTES_SNAPSHOT(name) ((void)0)
5920
+ #endif
5921
+ ScrDyn *scr_shared_array_buffer_new(ScrDyn *);
5922
+ ScrDyn *scr_worker_data(void);
5923
+ ScrDyn *scr_worker_parent_port(void);
5924
+ ScrDyn *scr_worker_new(double root, ScrStr *filename, ScrDyn *options);
5925
+ bool scr_shared_array_buffer_is(const ScrDyn *);
5926
+ bool scr_buffer_storage_is(const ScrDyn *);
5787
5927
  ScrBytes *scr_bytes_from_external(void *data, size_t length);
5788
5928
  ScrDyn *scr_ffi_memory_module(ScrDyn *catalog);
5789
5929
  ScrDyn *scr_ffi_argument(ScrDyn *value, ScrStr *type);
@@ -6198,9 +6338,11 @@ bool scr_dataview_write_u64_raw(ScrBytes *b, double offset, bool le, uint64_t va
6198
6338
  * Failures THROW catchably (scr_fs_throw, Node-shaped messages). */
6199
6339
  ScrBytes *scr_fs_read_file_bytes(ScrStr *path); /* +1 */
6200
6340
  /* readFileSync's runtime-encoding form (scr_bytes_io.c's note): +1 dyn
6201
- * value — a Buffer box for undefined/null, a string for utf8 — or NULL
6341
+ * value — a Buffer box for nullish/empty encodings, a decoded string otherwise — or NULL
6202
6342
  * with the exception pending. */
6203
6343
  ScrDyn *scr_fs_read_file_sync_dyn(ScrStr *path, const ScrDyn *enc);
6344
+ ScrStr *scr_fs_read_file_encoded(ScrStr *path, ScrStr *encoding);
6345
+ ScrStr *scr_fs_read_fd_encoded(double fd, ScrStr *encoding);
6204
6346
  ScrDyn *scr_fs_callback_value(ScrStr *member);
6205
6347
  ScrDyn *scr_fs_callback_call(ScrStr *member, const ScrDyn *args);
6206
6348
  ScrBytes *scr_fs_read_fd_bytes(double fd); /* +1; the fd form (scr_lib.c) */
@@ -6696,7 +6838,7 @@ ScrArr *scr_tls_ca_root(void); /* +1; === getCACertificates("bundled") */
6696
6838
  * ERR_CRYPTO_OPERATION_FAILED and leaves the set unchanged. Borrows. */
6697
6839
  void scr_tls_ca_set_default(ScrArr *certs);
6698
6840
  /* scr_tls.c's anchor consult: true iff setDefaultCACertificates ran;
6699
- * *pem/*len then carry the concatenated NUL-terminated blocks (len 0 =
6841
+ * *pem and *len then carry the concatenated NUL-terminated blocks (len 0 =
6700
6842
  * the empty set — verification fails, Node's own consequence), and *gen
6701
6843
  * a counter that bumps per set so the parsed chain re-parses on change. */
6702
6844
  bool scr_tls_ca_default_override(const char **pem, size_t *len, uint64_t *gen);