@fncts/io 0.0.11 → 0.0.14

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1041) hide show
  1. package/Cached/api.d.ts +3 -4
  2. package/Channel/UpstreamPullStrategy/definition.d.ts +1 -1
  3. package/Channel/api/interruptWhen.d.ts +1 -1
  4. package/Channel/api/mapOutIOC.d.ts +2 -2
  5. package/Channel/api/mergeAll.d.ts +1 -1
  6. package/Channel/api/mergeAllUnboundedWith.d.ts +1 -1
  7. package/Channel/api/mergeAllWith.d.ts +3 -3
  8. package/Channel/api/mergeMap.d.ts +1 -1
  9. package/Channel/api/mergeWith.d.ts +3 -3
  10. package/Channel/api/runScoped.d.ts +1 -2
  11. package/Channel/api/toPull.d.ts +2 -3
  12. package/Channel/api/zipC.d.ts +3 -3
  13. package/Channel/api.d.ts +56 -57
  14. package/Channel/core-api.d.ts +12 -12
  15. package/Channel/definition.d.ts +36 -22
  16. package/Channel/internal/AsyncInputConsumer.d.ts +1 -1
  17. package/Channel/internal/AsyncInputProducer.d.ts +1 -1
  18. package/Channel/internal/ChannelExecutor.d.ts +5 -5
  19. package/Channel/internal/ChannelState.d.ts +1 -1
  20. package/Channel/internal/MergeDecision.d.ts +2 -2
  21. package/Channel/internal/MergeState.d.ts +2 -2
  22. package/Channel/internal/SingleProducerAsyncInput.d.ts +5 -5
  23. package/Clock/api.d.ts +3 -3
  24. package/Clock/definition.d.ts +2 -2
  25. package/Clock/live.d.ts +3 -3
  26. package/Console/api.d.ts +1 -1
  27. package/Fiber/FiberContext.d.ts +12 -12
  28. package/Fiber/api/await.d.ts +2 -2
  29. package/Fiber/api/awaitAll.d.ts +2 -2
  30. package/Fiber/api/children.d.ts +1 -1
  31. package/Fiber/api/collectAll.d.ts +3 -3
  32. package/Fiber/api/evalOn.d.ts +1 -1
  33. package/Fiber/api/evalOnIO.d.ts +1 -1
  34. package/Fiber/api/fromIO.d.ts +1 -1
  35. package/Fiber/api/id.d.ts +2 -2
  36. package/Fiber/api/inheritRefs.d.ts +1 -1
  37. package/Fiber/api/interrupt.d.ts +2 -2
  38. package/Fiber/api/interruptAll.d.ts +3 -3
  39. package/Fiber/api/interruptAs.d.ts +3 -3
  40. package/Fiber/api/join.d.ts +1 -1
  41. package/Fiber/api/joinAll.d.ts +1 -1
  42. package/Fiber/api/mapFiber.d.ts +1 -1
  43. package/Fiber/api/mapIO.d.ts +2 -2
  44. package/Fiber/api/poll.d.ts +3 -3
  45. package/Fiber/api/zipWith.d.ts +1 -1
  46. package/Fiber/constructors.d.ts +8 -8
  47. package/Fiber/definition.d.ts +4 -4
  48. package/FiberRef/api/locallyScoped.d.ts +1 -2
  49. package/FiberRef/api/locallyScopedWith.d.ts +1 -2
  50. package/FiberRef/api.d.ts +8 -8
  51. package/FiberRef/constructors.d.ts +2 -3
  52. package/FiberRef/unsafe.d.ts +11 -5
  53. package/FiberRefs/api.d.ts +4 -4
  54. package/FiberRefs/definition.d.ts +3 -3
  55. package/FiberRefs/join.d.ts +2 -2
  56. package/FiberScope/constructors.d.ts +1 -1
  57. package/FiberScope/definition.d.ts +1 -1
  58. package/FiberState/api.d.ts +1 -1
  59. package/FiberState/constructors.d.ts +3 -3
  60. package/FiberState/definition.d.ts +3 -3
  61. package/FiberStatus/constructors.d.ts +1 -1
  62. package/FiberStatus/definition.d.ts +1 -1
  63. package/Future/api.d.ts +18 -18
  64. package/Future/constructors.d.ts +3 -3
  65. package/Future/definition.d.ts +2 -2
  66. package/Hub/api.d.ts +22 -23
  67. package/Hub/definition.d.ts +6 -7
  68. package/Hub/internal.d.ts +1 -2
  69. package/IO/api/acquireRelease.d.ts +2 -3
  70. package/IO/api/acquireReleaseExit.d.ts +3 -4
  71. package/IO/api/acquireReleaseInterruptible.d.ts +2 -3
  72. package/IO/api/acquireReleaseInterruptibleExit.d.ts +3 -4
  73. package/IO/api/addFinalizer.d.ts +2 -3
  74. package/IO/api/addFinalizerExit.d.ts +2 -3
  75. package/IO/api/asyncIO.d.ts +1 -1
  76. package/IO/api/bracket.d.ts +2 -2
  77. package/IO/api/bracketExit.d.ts +3 -3
  78. package/IO/api/clockWith.d.ts +1 -1
  79. package/IO/api/concurrency.d.ts +4 -4
  80. package/IO/api/concurrentFinalizers.d.ts +1 -2
  81. package/IO/api/consoleWith.d.ts +2 -2
  82. package/IO/api/core-scope.d.ts +4 -4
  83. package/IO/api/ensuringChildren.d.ts +1 -1
  84. package/IO/api/environment.d.ts +10 -12
  85. package/IO/api/foreachC.d.ts +2 -2
  86. package/IO/api/foreachExec.d.ts +1 -1
  87. package/IO/api/forkScoped.d.ts +1 -2
  88. package/IO/api/fulfill.d.ts +1 -1
  89. package/IO/api/interrupt.d.ts +8 -8
  90. package/IO/api/onExit.d.ts +2 -2
  91. package/IO/api/onTermination.d.ts +4 -4
  92. package/IO/api/provideLayer.d.ts +1 -1
  93. package/IO/api/provideSomeLayer.d.ts +1 -1
  94. package/IO/api/race.d.ts +1 -1
  95. package/IO/api/raceFirst.d.ts +1 -1
  96. package/IO/api/randomWith.d.ts +2 -2
  97. package/IO/api/repeat.d.ts +6 -6
  98. package/IO/api/retry.d.ts +5 -5
  99. package/IO/api/schedule.d.ts +3 -3
  100. package/IO/api/scope.d.ts +1 -2
  101. package/IO/api/scopeWith.d.ts +1 -2
  102. package/IO/api/scoped.d.ts +3 -4
  103. package/IO/api/sequenceT.d.ts +4 -4
  104. package/IO/api/sleep.d.ts +2 -2
  105. package/IO/api/stateful.d.ts +3 -4
  106. package/IO/api/timeout.d.ts +4 -4
  107. package/IO/api/withEarlyRelease.d.ts +1 -2
  108. package/IO/api/withFinalizer.d.ts +1 -2
  109. package/IO/api/withFinalizerExit.d.ts +2 -3
  110. package/IO/api/withRuntimeConfig.d.ts +2 -2
  111. package/IO/api/zipC.d.ts +4 -4
  112. package/IO/api.d.ts +94 -94
  113. package/IO/definition.d.ts +44 -34
  114. package/IO/runtime.d.ts +29 -16
  115. package/IOEnv/definition.d.ts +2 -3
  116. package/IOEnv/live.d.ts +1 -1
  117. package/IOEnv/services.d.ts +1 -1
  118. package/IOSpec.d.ts +7 -8
  119. package/Layer/MemoMap.d.ts +8 -9
  120. package/Layer/api.d.ts +41 -43
  121. package/Layer/definition.d.ts +22 -16
  122. package/Logger/api.d.ts +2 -2
  123. package/Logger/definition.d.ts +4 -4
  124. package/Queue/api/dimapIO.d.ts +6 -6
  125. package/Queue/api/filterInputIO.d.ts +6 -6
  126. package/Queue/api/filterOutputIO.d.ts +8 -8
  127. package/Queue/api/operations.d.ts +10 -10
  128. package/Queue/api/poll.d.ts +2 -2
  129. package/Queue/api/takeBetween.d.ts +1 -1
  130. package/Queue/api/zipWithIO.d.ts +9 -9
  131. package/Queue/constructors.d.ts +4 -4
  132. package/Queue/definition.d.ts +10 -10
  133. package/Queue/internal.d.ts +1 -1
  134. package/Queue/strategy.d.ts +10 -10
  135. package/Random/api.d.ts +8 -8
  136. package/Random/definition.d.ts +5 -5
  137. package/Random/live.d.ts +5 -5
  138. package/Ref/Atomic/Atomic.d.ts +4 -4
  139. package/Ref/Atomic/api.d.ts +11 -11
  140. package/Ref/Derived.d.ts +4 -4
  141. package/Ref/DerivedAll.d.ts +4 -4
  142. package/Ref/Synchronized/api.d.ts +16 -16
  143. package/Ref/Synchronized/constructors.d.ts +2 -2
  144. package/Ref/Synchronized/definition.d.ts +3 -3
  145. package/Ref/api/collect.d.ts +2 -2
  146. package/Ref/api/dimap.d.ts +8 -8
  147. package/Ref/api/filter.d.ts +3 -3
  148. package/Ref/api/get.d.ts +1 -1
  149. package/Ref/api/match.d.ts +1 -1
  150. package/Ref/api/matchAll.d.ts +1 -1
  151. package/Ref/api/modify.d.ts +10 -10
  152. package/Ref/api/set.d.ts +1 -1
  153. package/Ref/constructors.d.ts +3 -3
  154. package/Ref/definition.d.ts +15 -15
  155. package/RuntimeConfig.d.ts +2 -2
  156. package/STM/api/core-api.d.ts +5 -5
  157. package/STM/api/core-constructors.d.ts +9 -9
  158. package/STM/api.d.ts +60 -72
  159. package/STM/definition.d.ts +10 -9
  160. package/STM/driver.d.ts +2 -2
  161. package/STM/internal/CommitState.d.ts +1 -1
  162. package/STM/internal/Journal.d.ts +7 -6
  163. package/STM/internal/TryCommit.d.ts +1 -1
  164. package/Schedule/Decision.d.ts +10 -4
  165. package/Schedule/Driver.d.ts +4 -4
  166. package/Schedule/api/driver.d.ts +1 -1
  167. package/Schedule/api.d.ts +85 -73
  168. package/Schedule/definition.d.ts +1 -1
  169. package/Scope/Finalizer/definition.d.ts +3 -3
  170. package/Scope/ReleaseMap/api/releaseAll.d.ts +2 -2
  171. package/Scope/ReleaseMap/api.d.ts +7 -7
  172. package/Scope/ReleaseMap/definition.d.ts +3 -3
  173. package/Scope/api.d.ts +9 -10
  174. package/Scope/definition.d.ts +2 -2
  175. package/ScopedRef/api.d.ts +2 -3
  176. package/ScopedRef/definition.d.ts +1 -2
  177. package/Sink/api.d.ts +73 -74
  178. package/State/api.d.ts +2 -3
  179. package/Stream/api/zipAllWith.d.ts +3 -3
  180. package/Stream/api/zipWith.d.ts +1 -1
  181. package/Stream/api/zipWithChunks.d.ts +4 -4
  182. package/Stream/api.d.ts +171 -166
  183. package/Stream/definition.d.ts +3 -3
  184. package/Stream/internal/Handoff.d.ts +2 -2
  185. package/Stream/internal/Pull.d.ts +2 -2
  186. package/Stream/internal/Take.d.ts +4 -4
  187. package/Stream/internal/util.d.ts +1 -1
  188. package/Supervisor/api.d.ts +3 -3
  189. package/Supervisor/constructors.d.ts +6 -6
  190. package/Supervisor/definition.d.ts +3 -3
  191. package/TExit/constructors.d.ts +1 -1
  192. package/TExit/definition.d.ts +1 -1
  193. package/TFuture/api.d.ts +7 -7
  194. package/TFuture/constructors.d.ts +4 -4
  195. package/TFuture/definition.d.ts +3 -3
  196. package/TReentrantLock/api.d.ts +18 -19
  197. package/TReentrantLock/definition.d.ts +2 -2
  198. package/TRef/api.d.ts +15 -15
  199. package/TRef/constructors.d.ts +5 -5
  200. package/TRef/definition.d.ts +2 -2
  201. package/TSemaphore/api.d.ts +7 -7
  202. package/TSemaphore/constructors.d.ts +1 -1
  203. package/TSemaphore/definition.d.ts +1 -1
  204. package/_cjs/Cached/api.cjs +5 -5
  205. package/_cjs/Cached/api.cjs.map +1 -1
  206. package/_cjs/Channel/api/interruptWhen.cjs +1 -1
  207. package/_cjs/Channel/api/interruptWhen.cjs.map +1 -1
  208. package/_cjs/Channel/api/mapOutIOC.cjs +2 -2
  209. package/_cjs/Channel/api/mapOutIOC.cjs.map +1 -1
  210. package/_cjs/Channel/api/mergeAllWith.cjs +11 -11
  211. package/_cjs/Channel/api/mergeAllWith.cjs.map +1 -1
  212. package/_cjs/Channel/api/mergeWith.cjs +5 -5
  213. package/_cjs/Channel/api/mergeWith.cjs.map +1 -1
  214. package/_cjs/Channel/api/run.cjs +3 -1
  215. package/_cjs/Channel/api/run.cjs.map +1 -1
  216. package/_cjs/Channel/api.cjs +7 -7
  217. package/_cjs/Channel/api.cjs.map +1 -1
  218. package/_cjs/Channel/core-api.cjs.map +1 -1
  219. package/_cjs/Channel/definition.cjs.map +1 -1
  220. package/_cjs/Channel/internal/ChannelExecutor.cjs +6 -6
  221. package/_cjs/Channel/internal/ChannelExecutor.cjs.map +1 -1
  222. package/_cjs/Channel/internal/ChannelState.cjs +2 -1
  223. package/_cjs/Channel/internal/ChannelState.cjs.map +1 -1
  224. package/_cjs/Channel/internal/SingleProducerAsyncInput.cjs +16 -16
  225. package/_cjs/Channel/internal/SingleProducerAsyncInput.cjs.map +1 -1
  226. package/_cjs/Clock/live.cjs.map +1 -1
  227. package/_cjs/Console/api.cjs +5 -3
  228. package/_cjs/Console/api.cjs.map +1 -1
  229. package/_cjs/Fiber/FiberContext.cjs +8 -10
  230. package/_cjs/Fiber/FiberContext.cjs.map +1 -1
  231. package/_cjs/Fiber/api/await.cjs +1 -1
  232. package/_cjs/Fiber/api/await.cjs.map +1 -1
  233. package/_cjs/Fiber/api/awaitAll.cjs +2 -4
  234. package/_cjs/Fiber/api/awaitAll.cjs.map +1 -1
  235. package/_cjs/Fiber/api/children.cjs +1 -1
  236. package/_cjs/Fiber/api/children.cjs.map +1 -1
  237. package/_cjs/Fiber/api/collectAll.cjs +2 -4
  238. package/_cjs/Fiber/api/collectAll.cjs.map +1 -1
  239. package/_cjs/Fiber/api/evalOn.cjs +1 -1
  240. package/_cjs/Fiber/api/evalOn.cjs.map +1 -1
  241. package/_cjs/Fiber/api/evalOnIO.cjs +2 -4
  242. package/_cjs/Fiber/api/evalOnIO.cjs.map +1 -1
  243. package/_cjs/Fiber/api/fromIO.cjs +2 -4
  244. package/_cjs/Fiber/api/fromIO.cjs.map +1 -1
  245. package/_cjs/Fiber/api/id.cjs +1 -1
  246. package/_cjs/Fiber/api/id.cjs.map +1 -1
  247. package/_cjs/Fiber/api/inheritRefs.cjs +1 -1
  248. package/_cjs/Fiber/api/inheritRefs.cjs.map +1 -1
  249. package/_cjs/Fiber/api/interrupt.cjs +2 -4
  250. package/_cjs/Fiber/api/interrupt.cjs.map +1 -1
  251. package/_cjs/Fiber/api/interruptAll.cjs +4 -5
  252. package/_cjs/Fiber/api/interruptAll.cjs.map +1 -1
  253. package/_cjs/Fiber/api/interruptAs.cjs +1 -1
  254. package/_cjs/Fiber/api/interruptAs.cjs.map +1 -1
  255. package/_cjs/Fiber/api/interruptFork.cjs +1 -1
  256. package/_cjs/Fiber/api/interruptFork.cjs.map +1 -1
  257. package/_cjs/Fiber/api/join.cjs +2 -4
  258. package/_cjs/Fiber/api/join.cjs.map +1 -1
  259. package/_cjs/Fiber/api/joinAll.cjs +2 -4
  260. package/_cjs/Fiber/api/joinAll.cjs.map +1 -1
  261. package/_cjs/Fiber/api/mapFiber.cjs +2 -4
  262. package/_cjs/Fiber/api/mapFiber.cjs.map +1 -1
  263. package/_cjs/Fiber/api/mapIO.cjs +4 -5
  264. package/_cjs/Fiber/api/mapIO.cjs.map +1 -1
  265. package/_cjs/Fiber/api/poll.cjs +1 -1
  266. package/_cjs/Fiber/api/poll.cjs.map +1 -1
  267. package/_cjs/Fiber/api/zipWith.cjs +2 -4
  268. package/_cjs/Fiber/api/zipWith.cjs.map +1 -1
  269. package/_cjs/Fiber/constructors.cjs +10 -11
  270. package/_cjs/Fiber/constructors.cjs.map +1 -1
  271. package/_cjs/FiberRef/api/locallyScoped.cjs +2 -4
  272. package/_cjs/FiberRef/api/locallyScoped.cjs.map +1 -1
  273. package/_cjs/FiberRef/api/locallyScopedWith.cjs +2 -4
  274. package/_cjs/FiberRef/api/locallyScopedWith.cjs.map +1 -1
  275. package/_cjs/FiberRef/api.cjs +13 -14
  276. package/_cjs/FiberRef/api.cjs.map +1 -1
  277. package/_cjs/FiberRef/constructors.cjs +4 -6
  278. package/_cjs/FiberRef/constructors.cjs.map +1 -1
  279. package/_cjs/FiberRef/unsafe.cjs +9 -1
  280. package/_cjs/FiberRef/unsafe.cjs.map +1 -1
  281. package/_cjs/Future/api.cjs +30 -31
  282. package/_cjs/Future/api.cjs.map +1 -1
  283. package/_cjs/Future/constructors.cjs +4 -5
  284. package/_cjs/Future/constructors.cjs.map +1 -1
  285. package/_cjs/Hub/api.cjs +44 -44
  286. package/_cjs/Hub/api.cjs.map +1 -1
  287. package/_cjs/Hub/internal.cjs +16 -24
  288. package/_cjs/Hub/internal.cjs.map +1 -1
  289. package/_cjs/IO/api/acquireRelease.cjs +2 -4
  290. package/_cjs/IO/api/acquireRelease.cjs.map +1 -1
  291. package/_cjs/IO/api/acquireReleaseExit.cjs +1 -1
  292. package/_cjs/IO/api/acquireReleaseExit.cjs.map +1 -1
  293. package/_cjs/IO/api/acquireReleaseInterruptibleExit.cjs +1 -1
  294. package/_cjs/IO/api/acquireReleaseInterruptibleExit.cjs.map +1 -1
  295. package/_cjs/IO/api/addFinalizer.cjs +1 -1
  296. package/_cjs/IO/api/addFinalizer.cjs.map +1 -1
  297. package/_cjs/IO/api/addFinalizerExit.cjs +5 -11
  298. package/_cjs/IO/api/addFinalizerExit.cjs.map +1 -1
  299. package/_cjs/IO/api/asyncIO.cjs +5 -7
  300. package/_cjs/IO/api/asyncIO.cjs.map +1 -1
  301. package/_cjs/IO/api/bracket.cjs +2 -2
  302. package/_cjs/IO/api/bracket.cjs.map +1 -1
  303. package/_cjs/IO/api/bracketExit.cjs +2 -4
  304. package/_cjs/IO/api/bracketExit.cjs.map +1 -1
  305. package/_cjs/IO/api/concurrency.cjs +7 -7
  306. package/_cjs/IO/api/concurrency.cjs.map +1 -1
  307. package/_cjs/IO/api/concurrentFinalizers.cjs +2 -4
  308. package/_cjs/IO/api/concurrentFinalizers.cjs.map +1 -1
  309. package/_cjs/IO/api/consoleWith.cjs +3 -3
  310. package/_cjs/IO/api/consoleWith.cjs.map +1 -1
  311. package/_cjs/IO/api/core-scope.cjs +4 -4
  312. package/_cjs/IO/api/core-scope.cjs.map +1 -1
  313. package/_cjs/IO/api/ensuringChildren.cjs +2 -4
  314. package/_cjs/IO/api/ensuringChildren.cjs.map +1 -1
  315. package/_cjs/IO/api/environment.cjs +6 -8
  316. package/_cjs/IO/api/environment.cjs.map +1 -1
  317. package/_cjs/IO/api/foreachC.cjs +25 -27
  318. package/_cjs/IO/api/foreachC.cjs.map +1 -1
  319. package/_cjs/IO/api/foreachExec.cjs +2 -4
  320. package/_cjs/IO/api/foreachExec.cjs.map +1 -1
  321. package/_cjs/IO/api/forkIn.cjs +1 -1
  322. package/_cjs/IO/api/forkIn.cjs.map +1 -1
  323. package/_cjs/IO/api/forkScoped.cjs +1 -1
  324. package/_cjs/IO/api/forkScoped.cjs.map +1 -1
  325. package/_cjs/IO/api/fulfill.cjs +2 -4
  326. package/_cjs/IO/api/fulfill.cjs.map +1 -1
  327. package/_cjs/IO/api/interrupt.cjs +13 -13
  328. package/_cjs/IO/api/interrupt.cjs.map +1 -1
  329. package/_cjs/IO/api/memoize.cjs +4 -8
  330. package/_cjs/IO/api/memoize.cjs.map +1 -1
  331. package/_cjs/IO/api/onExit.cjs +2 -2
  332. package/_cjs/IO/api/onExit.cjs.map +1 -1
  333. package/_cjs/IO/api/onTermination.cjs +2 -2
  334. package/_cjs/IO/api/onTermination.cjs.map +1 -1
  335. package/_cjs/IO/api/once.cjs +1 -1
  336. package/_cjs/IO/api/once.cjs.map +1 -1
  337. package/_cjs/IO/api/provideLayer.cjs +2 -4
  338. package/_cjs/IO/api/provideLayer.cjs.map +1 -1
  339. package/_cjs/IO/api/provideSomeLayer.cjs +2 -3
  340. package/_cjs/IO/api/provideSomeLayer.cjs.map +1 -1
  341. package/_cjs/IO/api/race.cjs +4 -6
  342. package/_cjs/IO/api/race.cjs.map +1 -1
  343. package/_cjs/IO/api/raceFirst.cjs +2 -4
  344. package/_cjs/IO/api/raceFirst.cjs.map +1 -1
  345. package/_cjs/IO/api/randomWith.cjs +3 -3
  346. package/_cjs/IO/api/randomWith.cjs.map +1 -1
  347. package/_cjs/IO/api/repeat.cjs +10 -11
  348. package/_cjs/IO/api/repeat.cjs.map +1 -1
  349. package/_cjs/IO/api/retry.cjs +8 -9
  350. package/_cjs/IO/api/retry.cjs.map +1 -1
  351. package/_cjs/IO/api/schedule.cjs +6 -7
  352. package/_cjs/IO/api/schedule.cjs.map +1 -1
  353. package/_cjs/IO/api/scope.cjs +1 -1
  354. package/_cjs/IO/api/scope.cjs.map +1 -1
  355. package/_cjs/IO/api/scopeWith.cjs +2 -4
  356. package/_cjs/IO/api/scopeWith.cjs.map +1 -1
  357. package/_cjs/IO/api/scoped.cjs +4 -5
  358. package/_cjs/IO/api/scoped.cjs.map +1 -1
  359. package/_cjs/IO/api/stateful.cjs +1 -1
  360. package/_cjs/IO/api/stateful.cjs.map +1 -1
  361. package/_cjs/IO/api/timeout.cjs +3 -4
  362. package/_cjs/IO/api/timeout.cjs.map +1 -1
  363. package/_cjs/IO/api/withChildren.cjs +1 -1
  364. package/_cjs/IO/api/withChildren.cjs.map +1 -1
  365. package/_cjs/IO/api/withEarlyRelease.cjs +2 -4
  366. package/_cjs/IO/api/withEarlyRelease.cjs.map +1 -1
  367. package/_cjs/IO/api/withFinalizer.cjs +2 -2
  368. package/_cjs/IO/api/withFinalizer.cjs.map +1 -1
  369. package/_cjs/IO/api/withFinalizerExit.cjs +2 -4
  370. package/_cjs/IO/api/withFinalizerExit.cjs.map +1 -1
  371. package/_cjs/IO/api/withRuntimeConfig.cjs +2 -4
  372. package/_cjs/IO/api/withRuntimeConfig.cjs.map +1 -1
  373. package/_cjs/IO/api/zipC.cjs +5 -6
  374. package/_cjs/IO/api/zipC.cjs.map +1 -1
  375. package/_cjs/IO/api.cjs +112 -112
  376. package/_cjs/IO/api.cjs.map +1 -1
  377. package/_cjs/IO/definition.cjs +5 -8
  378. package/_cjs/IO/definition.cjs.map +1 -1
  379. package/_cjs/IO/runtime.cjs +69 -21
  380. package/_cjs/IO/runtime.cjs.map +1 -1
  381. package/_cjs/IOEnv/live.cjs +3 -1
  382. package/_cjs/IOEnv/live.cjs.map +1 -1
  383. package/_cjs/Layer/MemoMap.cjs +45 -62
  384. package/_cjs/Layer/MemoMap.cjs.map +1 -1
  385. package/_cjs/Layer/api.cjs +84 -83
  386. package/_cjs/Layer/api.cjs.map +1 -1
  387. package/_cjs/Layer/definition.cjs +14 -7
  388. package/_cjs/Layer/definition.cjs.map +1 -1
  389. package/_cjs/Queue/api/dimapIO.cjs +14 -14
  390. package/_cjs/Queue/api/dimapIO.cjs.map +1 -1
  391. package/_cjs/Queue/api/filterInputIO.cjs +6 -6
  392. package/_cjs/Queue/api/filterInputIO.cjs.map +1 -1
  393. package/_cjs/Queue/api/filterOutputIO.cjs +6 -6
  394. package/_cjs/Queue/api/filterOutputIO.cjs.map +1 -1
  395. package/_cjs/Queue/api/operations.cjs +13 -13
  396. package/_cjs/Queue/api/operations.cjs.map +1 -1
  397. package/_cjs/Queue/api/poll.cjs +2 -4
  398. package/_cjs/Queue/api/poll.cjs.map +1 -1
  399. package/_cjs/Queue/api/takeBetween.cjs +10 -12
  400. package/_cjs/Queue/api/takeBetween.cjs.map +1 -1
  401. package/_cjs/Queue/api/zipWithIO.cjs +12 -12
  402. package/_cjs/Queue/api/zipWithIO.cjs.map +1 -1
  403. package/_cjs/Queue/constructors.cjs +8 -10
  404. package/_cjs/Queue/constructors.cjs.map +1 -1
  405. package/_cjs/Queue/internal.cjs +17 -17
  406. package/_cjs/Queue/internal.cjs.map +1 -1
  407. package/_cjs/Queue/strategy.cjs +16 -20
  408. package/_cjs/Queue/strategy.cjs.map +1 -1
  409. package/_cjs/Random/api.cjs +15 -13
  410. package/_cjs/Random/api.cjs.map +1 -1
  411. package/_cjs/Random/live.cjs +4 -4
  412. package/_cjs/Random/live.cjs.map +1 -1
  413. package/_cjs/Ref/Atomic/Atomic.cjs.map +1 -1
  414. package/_cjs/Ref/Atomic/api.cjs +19 -21
  415. package/_cjs/Ref/Atomic/api.cjs.map +1 -1
  416. package/_cjs/Ref/Derived.cjs.map +1 -1
  417. package/_cjs/Ref/DerivedAll.cjs +1 -1
  418. package/_cjs/Ref/DerivedAll.cjs.map +1 -1
  419. package/_cjs/Ref/Synchronized/api.cjs +25 -26
  420. package/_cjs/Ref/Synchronized/api.cjs.map +1 -1
  421. package/_cjs/Ref/Synchronized/constructors.cjs +8 -14
  422. package/_cjs/Ref/Synchronized/constructors.cjs.map +1 -1
  423. package/_cjs/Ref/Synchronized/definition.cjs +1 -1
  424. package/_cjs/Ref/Synchronized/definition.cjs.map +1 -1
  425. package/_cjs/Ref/api/collect.cjs +1 -1
  426. package/_cjs/Ref/api/collect.cjs.map +1 -1
  427. package/_cjs/Ref/api/dimap.cjs +12 -12
  428. package/_cjs/Ref/api/dimap.cjs.map +1 -1
  429. package/_cjs/Ref/api/filter.cjs +2 -2
  430. package/_cjs/Ref/api/filter.cjs.map +1 -1
  431. package/_cjs/Ref/api/get.cjs +1 -1
  432. package/_cjs/Ref/api/get.cjs.map +1 -1
  433. package/_cjs/Ref/api/modify.cjs +29 -30
  434. package/_cjs/Ref/api/modify.cjs.map +1 -1
  435. package/_cjs/Ref/api/set.cjs +1 -1
  436. package/_cjs/Ref/api/set.cjs.map +1 -1
  437. package/_cjs/Ref/constructors.cjs +3 -4
  438. package/_cjs/Ref/constructors.cjs.map +1 -1
  439. package/_cjs/STM/api/core-api.cjs +8 -8
  440. package/_cjs/STM/api/core-api.cjs.map +1 -1
  441. package/_cjs/STM/api/core-constructors.cjs +6 -6
  442. package/_cjs/STM/api/core-constructors.cjs.map +1 -1
  443. package/_cjs/STM/api.cjs +129 -148
  444. package/_cjs/STM/api.cjs.map +1 -1
  445. package/_cjs/STM/definition.cjs.map +1 -1
  446. package/_cjs/STM/driver.cjs +10 -6
  447. package/_cjs/STM/driver.cjs.map +1 -1
  448. package/_cjs/STM/internal/Journal.cjs +20 -22
  449. package/_cjs/STM/internal/Journal.cjs.map +1 -1
  450. package/_cjs/Schedule/Decision.cjs +17 -0
  451. package/_cjs/Schedule/Decision.cjs.map +1 -1
  452. package/_cjs/Schedule/api/driver.cjs +18 -21
  453. package/_cjs/Schedule/api/driver.cjs.map +1 -1
  454. package/_cjs/Schedule/api.cjs +205 -180
  455. package/_cjs/Schedule/api.cjs.map +1 -1
  456. package/_cjs/Scope/Finalizer/definition.cjs +4 -6
  457. package/_cjs/Scope/Finalizer/definition.cjs.map +1 -1
  458. package/_cjs/Scope/ReleaseMap/api/releaseAll.cjs +3 -5
  459. package/_cjs/Scope/ReleaseMap/api/releaseAll.cjs.map +1 -1
  460. package/_cjs/Scope/ReleaseMap/api.cjs +14 -15
  461. package/_cjs/Scope/ReleaseMap/api.cjs.map +1 -1
  462. package/_cjs/Scope/ReleaseMap/constructors.cjs +1 -1
  463. package/_cjs/Scope/ReleaseMap/constructors.cjs.map +1 -1
  464. package/_cjs/Scope/ReleaseMap/definition.cjs +2 -4
  465. package/_cjs/Scope/ReleaseMap/definition.cjs.map +1 -1
  466. package/_cjs/Scope/api.cjs +20 -30
  467. package/_cjs/Scope/api.cjs.map +1 -1
  468. package/_cjs/ScopedRef/api.cjs +14 -22
  469. package/_cjs/ScopedRef/api.cjs.map +1 -1
  470. package/_cjs/Sink/api.cjs +92 -88
  471. package/_cjs/Sink/api.cjs.map +1 -1
  472. package/_cjs/State/api.cjs +5 -7
  473. package/_cjs/State/api.cjs.map +1 -1
  474. package/_cjs/Stream/api/zipAllWith.cjs +22 -24
  475. package/_cjs/Stream/api/zipAllWith.cjs.map +1 -1
  476. package/_cjs/Stream/api/zipWith.cjs +2 -2
  477. package/_cjs/Stream/api/zipWith.cjs.map +1 -1
  478. package/_cjs/Stream/api/zipWithChunks.cjs +20 -22
  479. package/_cjs/Stream/api/zipWithChunks.cjs.map +1 -1
  480. package/_cjs/Stream/api.cjs +436 -419
  481. package/_cjs/Stream/api.cjs.map +1 -1
  482. package/_cjs/Stream/internal/Handoff.cjs +12 -12
  483. package/_cjs/Stream/internal/Handoff.cjs.map +1 -1
  484. package/_cjs/Stream/internal/Pull.cjs +1 -1
  485. package/_cjs/Stream/internal/Pull.cjs.map +1 -1
  486. package/_cjs/Stream/internal/Take.cjs +1 -1
  487. package/_cjs/Stream/internal/Take.cjs.map +1 -1
  488. package/_cjs/Supervisor/api.cjs +3 -1
  489. package/_cjs/Supervisor/api.cjs.map +1 -1
  490. package/_cjs/Supervisor/constructors.cjs +14 -8
  491. package/_cjs/Supervisor/constructors.cjs.map +1 -1
  492. package/_cjs/TFuture/api.cjs +10 -10
  493. package/_cjs/TFuture/api.cjs.map +1 -1
  494. package/_cjs/TFuture/constructors.cjs +4 -4
  495. package/_cjs/TFuture/constructors.cjs.map +1 -1
  496. package/_cjs/TFuture/definition.cjs +2 -4
  497. package/_cjs/TFuture/definition.cjs.map +1 -1
  498. package/_cjs/TReentrantLock/api.cjs +41 -42
  499. package/_cjs/TReentrantLock/api.cjs.map +1 -1
  500. package/_cjs/TRef/api.cjs +40 -40
  501. package/_cjs/TRef/api.cjs.map +1 -1
  502. package/_cjs/TRef/constructors.cjs +6 -6
  503. package/_cjs/TRef/constructors.cjs.map +1 -1
  504. package/_cjs/TSemaphore/api.cjs +20 -21
  505. package/_cjs/TSemaphore/api.cjs.map +1 -1
  506. package/_cjs/TSemaphore/constructors.cjs +2 -2
  507. package/_cjs/TSemaphore/constructors.cjs.map +1 -1
  508. package/_cjs/TSemaphore/definition.cjs +2 -4
  509. package/_cjs/TSemaphore/definition.cjs.map +1 -1
  510. package/_cjs/collection/immutable/Conc/dropUntilIO.cjs +1 -1
  511. package/_cjs/collection/immutable/Conc/dropUntilIO.cjs.map +1 -1
  512. package/_cjs/collection/immutable/Conc/dropWhileIO.cjs +1 -1
  513. package/_cjs/collection/immutable/Conc/dropWhileIO.cjs.map +1 -1
  514. package/_cjs/collection/immutable/Conc/filterIO.cjs +5 -7
  515. package/_cjs/collection/immutable/Conc/filterIO.cjs.map +1 -1
  516. package/_cjs/collection/immutable/Conc/findIO.cjs +7 -9
  517. package/_cjs/collection/immutable/Conc/findIO.cjs.map +1 -1
  518. package/_cjs/collection/immutable/Conc/mapIO.cjs +3 -5
  519. package/_cjs/collection/immutable/Conc/mapIO.cjs.map +1 -1
  520. package/_cjs/collection/immutable/Conc/takeWhileIO.cjs +7 -9
  521. package/_cjs/collection/immutable/Conc/takeWhileIO.cjs.map +1 -1
  522. package/_cjs/collection/immutable/Conc.cjs +26 -0
  523. package/_cjs/collection/immutable/Conc.cjs.map +1 -1
  524. package/_cjs/data/Exit/foreachIO.cjs +2 -4
  525. package/_cjs/data/Exit/foreachIO.cjs.map +1 -1
  526. package/_cjs/global.cjs +6 -0
  527. package/_cjs/global.cjs.map +1 -0
  528. package/_cjs/index.cjs +6 -0
  529. package/_cjs/index.cjs.map +1 -0
  530. package/_cjs/internal/Scheduler.cjs +64 -14
  531. package/_cjs/internal/Scheduler.cjs.map +1 -1
  532. package/_mjs/Cached/api.mjs +5 -5
  533. package/_mjs/Cached/api.mjs.map +1 -1
  534. package/_mjs/Channel/api/interruptWhen.mjs +1 -1
  535. package/_mjs/Channel/api/interruptWhen.mjs.map +1 -1
  536. package/_mjs/Channel/api/mapOutIOC.mjs +2 -2
  537. package/_mjs/Channel/api/mapOutIOC.mjs.map +1 -1
  538. package/_mjs/Channel/api/mergeAllWith.mjs +11 -11
  539. package/_mjs/Channel/api/mergeAllWith.mjs.map +1 -1
  540. package/_mjs/Channel/api/mergeWith.mjs +6 -5
  541. package/_mjs/Channel/api/mergeWith.mjs.map +1 -1
  542. package/_mjs/Channel/api/run.mjs +2 -1
  543. package/_mjs/Channel/api/run.mjs.map +1 -1
  544. package/_mjs/Channel/api.mjs +7 -7
  545. package/_mjs/Channel/api.mjs.map +1 -1
  546. package/_mjs/Channel/core-api.mjs.map +1 -1
  547. package/_mjs/Channel/definition.mjs.map +1 -1
  548. package/_mjs/Channel/internal/ChannelExecutor.mjs +6 -6
  549. package/_mjs/Channel/internal/ChannelExecutor.mjs.map +1 -1
  550. package/_mjs/Channel/internal/ChannelState.mjs +2 -1
  551. package/_mjs/Channel/internal/ChannelState.mjs.map +1 -1
  552. package/_mjs/Channel/internal/SingleProducerAsyncInput.mjs +16 -16
  553. package/_mjs/Channel/internal/SingleProducerAsyncInput.mjs.map +1 -1
  554. package/_mjs/Clock/live.mjs.map +1 -1
  555. package/_mjs/Console/api.mjs +4 -3
  556. package/_mjs/Console/api.mjs.map +1 -1
  557. package/_mjs/Fiber/FiberContext.mjs +9 -9
  558. package/_mjs/Fiber/FiberContext.mjs.map +1 -1
  559. package/_mjs/Fiber/api/await.mjs +1 -1
  560. package/_mjs/Fiber/api/await.mjs.map +1 -1
  561. package/_mjs/Fiber/api/awaitAll.mjs +2 -3
  562. package/_mjs/Fiber/api/awaitAll.mjs.map +1 -1
  563. package/_mjs/Fiber/api/children.mjs +1 -1
  564. package/_mjs/Fiber/api/children.mjs.map +1 -1
  565. package/_mjs/Fiber/api/collectAll.mjs +2 -3
  566. package/_mjs/Fiber/api/collectAll.mjs.map +1 -1
  567. package/_mjs/Fiber/api/evalOn.mjs +1 -1
  568. package/_mjs/Fiber/api/evalOn.mjs.map +1 -1
  569. package/_mjs/Fiber/api/evalOnIO.mjs +2 -3
  570. package/_mjs/Fiber/api/evalOnIO.mjs.map +1 -1
  571. package/_mjs/Fiber/api/fromIO.mjs +2 -3
  572. package/_mjs/Fiber/api/fromIO.mjs.map +1 -1
  573. package/_mjs/Fiber/api/id.mjs +1 -1
  574. package/_mjs/Fiber/api/id.mjs.map +1 -1
  575. package/_mjs/Fiber/api/inheritRefs.mjs +1 -1
  576. package/_mjs/Fiber/api/inheritRefs.mjs.map +1 -1
  577. package/_mjs/Fiber/api/interrupt.mjs +2 -3
  578. package/_mjs/Fiber/api/interrupt.mjs.map +1 -1
  579. package/_mjs/Fiber/api/interruptAll.mjs +4 -5
  580. package/_mjs/Fiber/api/interruptAll.mjs.map +1 -1
  581. package/_mjs/Fiber/api/interruptAs.mjs +1 -1
  582. package/_mjs/Fiber/api/interruptAs.mjs.map +1 -1
  583. package/_mjs/Fiber/api/interruptFork.mjs +1 -1
  584. package/_mjs/Fiber/api/interruptFork.mjs.map +1 -1
  585. package/_mjs/Fiber/api/join.mjs +2 -3
  586. package/_mjs/Fiber/api/join.mjs.map +1 -1
  587. package/_mjs/Fiber/api/joinAll.mjs +2 -3
  588. package/_mjs/Fiber/api/joinAll.mjs.map +1 -1
  589. package/_mjs/Fiber/api/mapFiber.mjs +2 -3
  590. package/_mjs/Fiber/api/mapFiber.mjs.map +1 -1
  591. package/_mjs/Fiber/api/mapIO.mjs +4 -5
  592. package/_mjs/Fiber/api/mapIO.mjs.map +1 -1
  593. package/_mjs/Fiber/api/poll.mjs +1 -1
  594. package/_mjs/Fiber/api/poll.mjs.map +1 -1
  595. package/_mjs/Fiber/api/zipWith.mjs +2 -3
  596. package/_mjs/Fiber/api/zipWith.mjs.map +1 -1
  597. package/_mjs/Fiber/constructors.mjs +10 -11
  598. package/_mjs/Fiber/constructors.mjs.map +1 -1
  599. package/_mjs/FiberRef/api/locallyScoped.mjs +2 -3
  600. package/_mjs/FiberRef/api/locallyScoped.mjs.map +1 -1
  601. package/_mjs/FiberRef/api/locallyScopedWith.mjs +2 -3
  602. package/_mjs/FiberRef/api/locallyScopedWith.mjs.map +1 -1
  603. package/_mjs/FiberRef/api.mjs +13 -14
  604. package/_mjs/FiberRef/api.mjs.map +1 -1
  605. package/_mjs/FiberRef/constructors.mjs +4 -5
  606. package/_mjs/FiberRef/constructors.mjs.map +1 -1
  607. package/_mjs/FiberRef/unsafe.mjs +6 -0
  608. package/_mjs/FiberRef/unsafe.mjs.map +1 -1
  609. package/_mjs/Future/api.mjs +30 -31
  610. package/_mjs/Future/api.mjs.map +1 -1
  611. package/_mjs/Future/constructors.mjs +4 -5
  612. package/_mjs/Future/constructors.mjs.map +1 -1
  613. package/_mjs/Hub/api.mjs +44 -44
  614. package/_mjs/Hub/api.mjs.map +1 -1
  615. package/_mjs/Hub/internal.mjs +16 -24
  616. package/_mjs/Hub/internal.mjs.map +1 -1
  617. package/_mjs/IO/api/acquireRelease.mjs +2 -3
  618. package/_mjs/IO/api/acquireRelease.mjs.map +1 -1
  619. package/_mjs/IO/api/acquireReleaseExit.mjs +1 -1
  620. package/_mjs/IO/api/acquireReleaseExit.mjs.map +1 -1
  621. package/_mjs/IO/api/acquireReleaseInterruptibleExit.mjs +1 -1
  622. package/_mjs/IO/api/acquireReleaseInterruptibleExit.mjs.map +1 -1
  623. package/_mjs/IO/api/addFinalizer.mjs +1 -1
  624. package/_mjs/IO/api/addFinalizer.mjs.map +1 -1
  625. package/_mjs/IO/api/addFinalizerExit.mjs +5 -10
  626. package/_mjs/IO/api/addFinalizerExit.mjs.map +1 -1
  627. package/_mjs/IO/api/asyncIO.mjs +5 -6
  628. package/_mjs/IO/api/asyncIO.mjs.map +1 -1
  629. package/_mjs/IO/api/bracket.mjs +2 -2
  630. package/_mjs/IO/api/bracket.mjs.map +1 -1
  631. package/_mjs/IO/api/bracketExit.mjs +2 -3
  632. package/_mjs/IO/api/bracketExit.mjs.map +1 -1
  633. package/_mjs/IO/api/concurrency.mjs +7 -7
  634. package/_mjs/IO/api/concurrency.mjs.map +1 -1
  635. package/_mjs/IO/api/concurrentFinalizers.mjs +2 -3
  636. package/_mjs/IO/api/concurrentFinalizers.mjs.map +1 -1
  637. package/_mjs/IO/api/consoleWith.mjs +3 -3
  638. package/_mjs/IO/api/consoleWith.mjs.map +1 -1
  639. package/_mjs/IO/api/core-scope.mjs +4 -4
  640. package/_mjs/IO/api/core-scope.mjs.map +1 -1
  641. package/_mjs/IO/api/ensuringChildren.mjs +2 -3
  642. package/_mjs/IO/api/ensuringChildren.mjs.map +1 -1
  643. package/_mjs/IO/api/environment.mjs +6 -8
  644. package/_mjs/IO/api/environment.mjs.map +1 -1
  645. package/_mjs/IO/api/foreachC.mjs +25 -26
  646. package/_mjs/IO/api/foreachC.mjs.map +1 -1
  647. package/_mjs/IO/api/foreachExec.mjs +2 -3
  648. package/_mjs/IO/api/foreachExec.mjs.map +1 -1
  649. package/_mjs/IO/api/forkIn.mjs +1 -1
  650. package/_mjs/IO/api/forkIn.mjs.map +1 -1
  651. package/_mjs/IO/api/forkScoped.mjs +1 -1
  652. package/_mjs/IO/api/forkScoped.mjs.map +1 -1
  653. package/_mjs/IO/api/fulfill.mjs +2 -3
  654. package/_mjs/IO/api/fulfill.mjs.map +1 -1
  655. package/_mjs/IO/api/interrupt.mjs +13 -13
  656. package/_mjs/IO/api/interrupt.mjs.map +1 -1
  657. package/_mjs/IO/api/memoize.mjs +4 -8
  658. package/_mjs/IO/api/memoize.mjs.map +1 -1
  659. package/_mjs/IO/api/onExit.mjs +2 -2
  660. package/_mjs/IO/api/onExit.mjs.map +1 -1
  661. package/_mjs/IO/api/onTermination.mjs +2 -2
  662. package/_mjs/IO/api/onTermination.mjs.map +1 -1
  663. package/_mjs/IO/api/once.mjs +1 -1
  664. package/_mjs/IO/api/once.mjs.map +1 -1
  665. package/_mjs/IO/api/provideLayer.mjs +2 -3
  666. package/_mjs/IO/api/provideLayer.mjs.map +1 -1
  667. package/_mjs/IO/api/provideSomeLayer.mjs +2 -3
  668. package/_mjs/IO/api/provideSomeLayer.mjs.map +1 -1
  669. package/_mjs/IO/api/race.mjs +4 -5
  670. package/_mjs/IO/api/race.mjs.map +1 -1
  671. package/_mjs/IO/api/raceFirst.mjs +2 -3
  672. package/_mjs/IO/api/raceFirst.mjs.map +1 -1
  673. package/_mjs/IO/api/randomWith.mjs +3 -3
  674. package/_mjs/IO/api/randomWith.mjs.map +1 -1
  675. package/_mjs/IO/api/repeat.mjs +10 -11
  676. package/_mjs/IO/api/repeat.mjs.map +1 -1
  677. package/_mjs/IO/api/retry.mjs +8 -9
  678. package/_mjs/IO/api/retry.mjs.map +1 -1
  679. package/_mjs/IO/api/schedule.mjs +6 -7
  680. package/_mjs/IO/api/schedule.mjs.map +1 -1
  681. package/_mjs/IO/api/scope.mjs +1 -1
  682. package/_mjs/IO/api/scope.mjs.map +1 -1
  683. package/_mjs/IO/api/scopeWith.mjs +2 -3
  684. package/_mjs/IO/api/scopeWith.mjs.map +1 -1
  685. package/_mjs/IO/api/scoped.mjs +4 -5
  686. package/_mjs/IO/api/scoped.mjs.map +1 -1
  687. package/_mjs/IO/api/stateful.mjs +1 -1
  688. package/_mjs/IO/api/stateful.mjs.map +1 -1
  689. package/_mjs/IO/api/timeout.mjs +3 -4
  690. package/_mjs/IO/api/timeout.mjs.map +1 -1
  691. package/_mjs/IO/api/withChildren.mjs +1 -1
  692. package/_mjs/IO/api/withChildren.mjs.map +1 -1
  693. package/_mjs/IO/api/withEarlyRelease.mjs +2 -3
  694. package/_mjs/IO/api/withEarlyRelease.mjs.map +1 -1
  695. package/_mjs/IO/api/withFinalizer.mjs +2 -2
  696. package/_mjs/IO/api/withFinalizer.mjs.map +1 -1
  697. package/_mjs/IO/api/withFinalizerExit.mjs +2 -3
  698. package/_mjs/IO/api/withFinalizerExit.mjs.map +1 -1
  699. package/_mjs/IO/api/withRuntimeConfig.mjs +2 -3
  700. package/_mjs/IO/api/withRuntimeConfig.mjs.map +1 -1
  701. package/_mjs/IO/api/zipC.mjs +5 -6
  702. package/_mjs/IO/api/zipC.mjs.map +1 -1
  703. package/_mjs/IO/api.mjs +112 -112
  704. package/_mjs/IO/api.mjs.map +1 -1
  705. package/_mjs/IO/definition.mjs +3 -5
  706. package/_mjs/IO/definition.mjs.map +1 -1
  707. package/_mjs/IO/runtime.mjs +61 -18
  708. package/_mjs/IO/runtime.mjs.map +1 -1
  709. package/_mjs/IOEnv/live.mjs +2 -1
  710. package/_mjs/IOEnv/live.mjs.map +1 -1
  711. package/_mjs/Layer/MemoMap.mjs +43 -60
  712. package/_mjs/Layer/MemoMap.mjs.map +1 -1
  713. package/_mjs/Layer/api.mjs +84 -84
  714. package/_mjs/Layer/api.mjs.map +1 -1
  715. package/_mjs/Layer/definition.mjs +14 -7
  716. package/_mjs/Layer/definition.mjs.map +1 -1
  717. package/_mjs/Queue/api/dimapIO.mjs +14 -14
  718. package/_mjs/Queue/api/dimapIO.mjs.map +1 -1
  719. package/_mjs/Queue/api/filterInputIO.mjs +6 -6
  720. package/_mjs/Queue/api/filterInputIO.mjs.map +1 -1
  721. package/_mjs/Queue/api/filterOutputIO.mjs +6 -6
  722. package/_mjs/Queue/api/filterOutputIO.mjs.map +1 -1
  723. package/_mjs/Queue/api/operations.mjs +13 -13
  724. package/_mjs/Queue/api/operations.mjs.map +1 -1
  725. package/_mjs/Queue/api/poll.mjs +2 -3
  726. package/_mjs/Queue/api/poll.mjs.map +1 -1
  727. package/_mjs/Queue/api/takeBetween.mjs +10 -11
  728. package/_mjs/Queue/api/takeBetween.mjs.map +1 -1
  729. package/_mjs/Queue/api/zipWithIO.mjs +12 -12
  730. package/_mjs/Queue/api/zipWithIO.mjs.map +1 -1
  731. package/_mjs/Queue/constructors.mjs +8 -9
  732. package/_mjs/Queue/constructors.mjs.map +1 -1
  733. package/_mjs/Queue/internal.mjs +17 -17
  734. package/_mjs/Queue/internal.mjs.map +1 -1
  735. package/_mjs/Queue/strategy.mjs +16 -20
  736. package/_mjs/Queue/strategy.mjs.map +1 -1
  737. package/_mjs/Random/api.mjs +14 -13
  738. package/_mjs/Random/api.mjs.map +1 -1
  739. package/_mjs/Random/live.mjs +4 -4
  740. package/_mjs/Random/live.mjs.map +1 -1
  741. package/_mjs/Ref/Atomic/Atomic.mjs.map +1 -1
  742. package/_mjs/Ref/Atomic/api.mjs +19 -20
  743. package/_mjs/Ref/Atomic/api.mjs.map +1 -1
  744. package/_mjs/Ref/Derived.mjs.map +1 -1
  745. package/_mjs/Ref/DerivedAll.mjs +1 -1
  746. package/_mjs/Ref/DerivedAll.mjs.map +1 -1
  747. package/_mjs/Ref/Synchronized/api.mjs +25 -26
  748. package/_mjs/Ref/Synchronized/api.mjs.map +1 -1
  749. package/_mjs/Ref/Synchronized/constructors.mjs +8 -13
  750. package/_mjs/Ref/Synchronized/constructors.mjs.map +1 -1
  751. package/_mjs/Ref/Synchronized/definition.mjs +1 -1
  752. package/_mjs/Ref/Synchronized/definition.mjs.map +1 -1
  753. package/_mjs/Ref/api/collect.mjs +1 -1
  754. package/_mjs/Ref/api/collect.mjs.map +1 -1
  755. package/_mjs/Ref/api/dimap.mjs +12 -12
  756. package/_mjs/Ref/api/dimap.mjs.map +1 -1
  757. package/_mjs/Ref/api/filter.mjs +2 -2
  758. package/_mjs/Ref/api/filter.mjs.map +1 -1
  759. package/_mjs/Ref/api/get.mjs +1 -1
  760. package/_mjs/Ref/api/get.mjs.map +1 -1
  761. package/_mjs/Ref/api/modify.mjs +29 -30
  762. package/_mjs/Ref/api/modify.mjs.map +1 -1
  763. package/_mjs/Ref/api/set.mjs +1 -1
  764. package/_mjs/Ref/api/set.mjs.map +1 -1
  765. package/_mjs/Ref/constructors.mjs +3 -4
  766. package/_mjs/Ref/constructors.mjs.map +1 -1
  767. package/_mjs/STM/api/core-api.mjs +8 -8
  768. package/_mjs/STM/api/core-api.mjs.map +1 -1
  769. package/_mjs/STM/api/core-constructors.mjs +6 -6
  770. package/_mjs/STM/api/core-constructors.mjs.map +1 -1
  771. package/_mjs/STM/api.mjs +122 -142
  772. package/_mjs/STM/api.mjs.map +1 -1
  773. package/_mjs/STM/definition.mjs.map +1 -1
  774. package/_mjs/STM/driver.mjs +9 -6
  775. package/_mjs/STM/driver.mjs.map +1 -1
  776. package/_mjs/STM/internal/Journal.mjs +20 -21
  777. package/_mjs/STM/internal/Journal.mjs.map +1 -1
  778. package/_mjs/Schedule/Decision.mjs +9 -0
  779. package/_mjs/Schedule/Decision.mjs.map +1 -1
  780. package/_mjs/Schedule/api/driver.mjs +17 -20
  781. package/_mjs/Schedule/api/driver.mjs.map +1 -1
  782. package/_mjs/Schedule/api.mjs +198 -177
  783. package/_mjs/Schedule/api.mjs.map +1 -1
  784. package/_mjs/Scope/Finalizer/definition.mjs +4 -5
  785. package/_mjs/Scope/Finalizer/definition.mjs.map +1 -1
  786. package/_mjs/Scope/ReleaseMap/api/releaseAll.mjs +3 -4
  787. package/_mjs/Scope/ReleaseMap/api/releaseAll.mjs.map +1 -1
  788. package/_mjs/Scope/ReleaseMap/api.mjs +14 -15
  789. package/_mjs/Scope/ReleaseMap/api.mjs.map +1 -1
  790. package/_mjs/Scope/ReleaseMap/constructors.mjs +1 -1
  791. package/_mjs/Scope/ReleaseMap/constructors.mjs.map +1 -1
  792. package/_mjs/Scope/ReleaseMap/definition.mjs +2 -3
  793. package/_mjs/Scope/ReleaseMap/definition.mjs.map +1 -1
  794. package/_mjs/Scope/api.mjs +20 -30
  795. package/_mjs/Scope/api.mjs.map +1 -1
  796. package/_mjs/ScopedRef/api.mjs +14 -22
  797. package/_mjs/ScopedRef/api.mjs.map +1 -1
  798. package/_mjs/Sink/api.mjs +92 -88
  799. package/_mjs/Sink/api.mjs.map +1 -1
  800. package/_mjs/State/api.mjs +5 -6
  801. package/_mjs/State/api.mjs.map +1 -1
  802. package/_mjs/Stream/api/zipAllWith.mjs +22 -23
  803. package/_mjs/Stream/api/zipAllWith.mjs.map +1 -1
  804. package/_mjs/Stream/api/zipWith.mjs +2 -2
  805. package/_mjs/Stream/api/zipWith.mjs.map +1 -1
  806. package/_mjs/Stream/api/zipWithChunks.mjs +20 -21
  807. package/_mjs/Stream/api/zipWithChunks.mjs.map +1 -1
  808. package/_mjs/Stream/api.mjs +430 -417
  809. package/_mjs/Stream/api.mjs.map +1 -1
  810. package/_mjs/Stream/internal/Handoff.mjs +12 -12
  811. package/_mjs/Stream/internal/Handoff.mjs.map +1 -1
  812. package/_mjs/Stream/internal/Pull.mjs +1 -1
  813. package/_mjs/Stream/internal/Pull.mjs.map +1 -1
  814. package/_mjs/Stream/internal/Take.mjs +1 -1
  815. package/_mjs/Stream/internal/Take.mjs.map +1 -1
  816. package/_mjs/Supervisor/api.mjs +2 -1
  817. package/_mjs/Supervisor/api.mjs.map +1 -1
  818. package/_mjs/Supervisor/constructors.mjs +9 -6
  819. package/_mjs/Supervisor/constructors.mjs.map +1 -1
  820. package/_mjs/TFuture/api.mjs +10 -10
  821. package/_mjs/TFuture/api.mjs.map +1 -1
  822. package/_mjs/TFuture/constructors.mjs +4 -4
  823. package/_mjs/TFuture/constructors.mjs.map +1 -1
  824. package/_mjs/TFuture/definition.mjs +2 -3
  825. package/_mjs/TFuture/definition.mjs.map +1 -1
  826. package/_mjs/TReentrantLock/api.mjs +41 -42
  827. package/_mjs/TReentrantLock/api.mjs.map +1 -1
  828. package/_mjs/TRef/api.mjs +40 -40
  829. package/_mjs/TRef/api.mjs.map +1 -1
  830. package/_mjs/TRef/constructors.mjs +6 -6
  831. package/_mjs/TRef/constructors.mjs.map +1 -1
  832. package/_mjs/TSemaphore/api.mjs +17 -18
  833. package/_mjs/TSemaphore/api.mjs.map +1 -1
  834. package/_mjs/TSemaphore/constructors.mjs +2 -2
  835. package/_mjs/TSemaphore/constructors.mjs.map +1 -1
  836. package/_mjs/TSemaphore/definition.mjs +2 -3
  837. package/_mjs/TSemaphore/definition.mjs.map +1 -1
  838. package/_mjs/collection/immutable/Conc/dropUntilIO.mjs +1 -1
  839. package/_mjs/collection/immutable/Conc/dropUntilIO.mjs.map +1 -1
  840. package/_mjs/collection/immutable/Conc/dropWhileIO.mjs +1 -1
  841. package/_mjs/collection/immutable/Conc/dropWhileIO.mjs.map +1 -1
  842. package/_mjs/collection/immutable/Conc/filterIO.mjs +5 -6
  843. package/_mjs/collection/immutable/Conc/filterIO.mjs.map +1 -1
  844. package/_mjs/collection/immutable/Conc/findIO.mjs +7 -8
  845. package/_mjs/collection/immutable/Conc/findIO.mjs.map +1 -1
  846. package/_mjs/collection/immutable/Conc/mapIO.mjs +3 -4
  847. package/_mjs/collection/immutable/Conc/mapIO.mjs.map +1 -1
  848. package/_mjs/collection/immutable/Conc/takeWhileIO.mjs +7 -8
  849. package/_mjs/collection/immutable/Conc/takeWhileIO.mjs.map +1 -1
  850. package/_mjs/collection/immutable/Conc.mjs +2 -0
  851. package/_mjs/collection/immutable/Conc.mjs.map +1 -1
  852. package/_mjs/data/Exit/foreachIO.mjs +2 -3
  853. package/_mjs/data/Exit/foreachIO.mjs.map +1 -1
  854. package/_mjs/global.mjs +2 -0
  855. package/_mjs/global.mjs.map +1 -0
  856. package/_mjs/index.mjs +2 -0
  857. package/_mjs/index.mjs.map +1 -0
  858. package/_mjs/internal/Scheduler.mjs +62 -15
  859. package/_mjs/internal/Scheduler.mjs.map +1 -1
  860. package/_src/Cached/api.ts +4 -3
  861. package/_src/Channel/api/interruptWhen.ts +1 -1
  862. package/_src/Channel/api/mapOutIOC.ts +2 -2
  863. package/_src/Channel/api/mergeAll.ts +1 -1
  864. package/_src/Channel/api/mergeAllUnboundedWith.ts +1 -1
  865. package/_src/Channel/api/mergeAllWith.ts +3 -3
  866. package/_src/Channel/api/mergeMap.ts +1 -1
  867. package/_src/Channel/api/mergeWith.ts +9 -9
  868. package/_src/Channel/api/runScoped.ts +1 -1
  869. package/_src/Channel/api/toPull.ts +1 -1
  870. package/_src/Channel/api/zipC.ts +3 -3
  871. package/_src/Channel/api.ts +73 -73
  872. package/_src/Channel/core-api.ts +11 -13
  873. package/_src/Channel/definition.ts +19 -19
  874. package/_src/Channel/internal/MergeDecision.ts +1 -1
  875. package/_src/Clock/live.ts +1 -1
  876. package/_src/Console/api.ts +1 -1
  877. package/_src/Fiber/FiberContext.ts +10 -8
  878. package/_src/Fiber/api/await.ts +1 -1
  879. package/_src/Fiber/api/awaitAll.ts +1 -1
  880. package/_src/Fiber/api/children.ts +1 -1
  881. package/_src/Fiber/api/collectAll.ts +4 -1
  882. package/_src/Fiber/api/evalOn.ts +6 -1
  883. package/_src/Fiber/api/evalOnIO.ts +2 -1
  884. package/_src/Fiber/api/fromIO.ts +1 -1
  885. package/_src/Fiber/api/id.ts +1 -1
  886. package/_src/Fiber/api/inheritRefs.ts +1 -1
  887. package/_src/Fiber/api/interrupt.ts +1 -1
  888. package/_src/Fiber/api/interruptAll.ts +2 -2
  889. package/_src/Fiber/api/interruptAs.ts +1 -1
  890. package/_src/Fiber/api/join.ts +1 -1
  891. package/_src/Fiber/api/joinAll.ts +1 -1
  892. package/_src/Fiber/api/mapFiber.ts +5 -1
  893. package/_src/Fiber/api/mapIO.ts +6 -2
  894. package/_src/Fiber/api/poll.ts +1 -1
  895. package/_src/Fiber/api/zipWith.ts +1 -0
  896. package/_src/Fiber/constructors.ts +5 -5
  897. package/_src/Fiber/definition.ts +1 -1
  898. package/_src/FiberRef/api/locallyScoped.ts +1 -1
  899. package/_src/FiberRef/api/locallyScopedWith.ts +5 -1
  900. package/_src/FiberRef/api.ts +7 -7
  901. package/_src/FiberRef/constructors.ts +4 -2
  902. package/_src/FiberRef/unsafe.ts +7 -0
  903. package/_src/Future/api.ts +24 -16
  904. package/_src/Future/constructors.ts +2 -2
  905. package/_src/Hub/api.ts +50 -23
  906. package/_src/Hub/definition.ts +6 -6
  907. package/_src/Hub/internal.ts +15 -15
  908. package/_src/IO/api/acquireRelease.ts +2 -1
  909. package/_src/IO/api/acquireReleaseExit.ts +1 -1
  910. package/_src/IO/api/acquireReleaseInterruptible.ts +1 -1
  911. package/_src/IO/api/acquireReleaseInterruptibleExit.ts +1 -1
  912. package/_src/IO/api/addFinalizer.ts +1 -4
  913. package/_src/IO/api/addFinalizerExit.ts +6 -5
  914. package/_src/IO/api/asyncIO.ts +4 -1
  915. package/_src/IO/api/bracket.ts +2 -1
  916. package/_src/IO/api/bracketExit.ts +2 -1
  917. package/_src/IO/api/concurrency.ts +6 -3
  918. package/_src/IO/api/concurrentFinalizers.ts +1 -1
  919. package/_src/IO/api/consoleWith.ts +1 -1
  920. package/_src/IO/api/core-scope.ts +1 -1
  921. package/_src/IO/api/ensuringChildren.ts +3 -2
  922. package/_src/IO/api/environment.ts +9 -11
  923. package/_src/IO/api/foreachC.ts +33 -6
  924. package/_src/IO/api/foreachExec.ts +1 -0
  925. package/_src/IO/api/forkScoped.ts +1 -1
  926. package/_src/IO/api/fulfill.ts +1 -1
  927. package/_src/IO/api/interrupt.ts +13 -5
  928. package/_src/IO/api/memoize.ts +3 -3
  929. package/_src/IO/api/onExit.ts +2 -1
  930. package/_src/IO/api/onTermination.ts +2 -2
  931. package/_src/IO/api/provideLayer.ts +1 -0
  932. package/_src/IO/api/provideSomeLayer.ts +1 -3
  933. package/_src/IO/api/race.ts +6 -2
  934. package/_src/IO/api/raceFirst.ts +6 -2
  935. package/_src/IO/api/randomWith.ts +1 -1
  936. package/_src/IO/api/repeat.ts +7 -7
  937. package/_src/IO/api/retry.ts +7 -7
  938. package/_src/IO/api/schedule.ts +4 -3
  939. package/_src/IO/api/scope.ts +1 -1
  940. package/_src/IO/api/scopeWith.ts +1 -1
  941. package/_src/IO/api/scoped.ts +2 -2
  942. package/_src/IO/api/sequenceT.ts +1 -1
  943. package/_src/IO/api/stateful.ts +1 -1
  944. package/_src/IO/api/timeout.ts +5 -1
  945. package/_src/IO/api/withChildren.ts +1 -1
  946. package/_src/IO/api/withEarlyRelease.ts +4 -1
  947. package/_src/IO/api/withFinalizer.ts +2 -1
  948. package/_src/IO/api/withFinalizerExit.ts +2 -1
  949. package/_src/IO/api/withRuntimeConfig.ts +5 -1
  950. package/_src/IO/api/zipC.ts +7 -2
  951. package/_src/IO/api.ts +125 -75
  952. package/_src/IO/definition.ts +32 -27
  953. package/_src/IO/runtime.ts +66 -12
  954. package/_src/IOEnv/definition.ts +1 -1
  955. package/_src/Layer/MemoMap.ts +41 -34
  956. package/_src/Layer/api.ts +82 -49
  957. package/_src/Layer/definition.ts +11 -8
  958. package/_src/Queue/api/dimapIO.ts +21 -11
  959. package/_src/Queue/api/filterInputIO.ts +6 -4
  960. package/_src/Queue/api/filterOutputIO.ts +8 -6
  961. package/_src/Queue/api/operations.ts +28 -10
  962. package/_src/Queue/api/poll.ts +4 -1
  963. package/_src/Queue/api/takeBetween.ts +6 -1
  964. package/_src/Queue/api/zipWithIO.ts +13 -10
  965. package/_src/Queue/constructors.ts +4 -4
  966. package/_src/Queue/definition.ts +10 -10
  967. package/_src/Queue/internal.ts +7 -7
  968. package/_src/Queue/strategy.ts +18 -10
  969. package/_src/Random/api.ts +5 -5
  970. package/_src/Random/definition.ts +5 -5
  971. package/_src/Random/live.ts +4 -4
  972. package/_src/Ref/Atomic/Atomic.ts +3 -3
  973. package/_src/Ref/Atomic/api.ts +10 -10
  974. package/_src/Ref/Derived.ts +3 -3
  975. package/_src/Ref/DerivedAll.ts +3 -3
  976. package/_src/Ref/Synchronized/api.ts +33 -18
  977. package/_src/Ref/Synchronized/constructors.ts +5 -5
  978. package/_src/Ref/Synchronized/definition.ts +2 -2
  979. package/_src/Ref/api/collect.ts +1 -0
  980. package/_src/Ref/api/dimap.ts +7 -0
  981. package/_src/Ref/api/filter.ts +2 -0
  982. package/_src/Ref/api/get.ts +5 -2
  983. package/_src/Ref/api/modify.ts +21 -9
  984. package/_src/Ref/api/set.ts +5 -1
  985. package/_src/Ref/constructors.ts +2 -2
  986. package/_src/Ref/definition.ts +14 -14
  987. package/_src/STM/api/core-api.ts +20 -7
  988. package/_src/STM/api/core-constructors.ts +7 -7
  989. package/_src/STM/api.ts +150 -116
  990. package/_src/STM/definition.ts +6 -6
  991. package/_src/STM/driver.ts +3 -3
  992. package/_src/STM/internal/Journal.ts +25 -16
  993. package/_src/Schedule/Decision.ts +10 -3
  994. package/_src/Schedule/Driver.ts +2 -2
  995. package/_src/Schedule/api/driver.ts +6 -6
  996. package/_src/Schedule/api.ts +182 -82
  997. package/_src/Schedule/definition.ts +1 -1
  998. package/_src/Scope/Finalizer/definition.ts +2 -2
  999. package/_src/Scope/ReleaseMap/api/releaseAll.ts +6 -1
  1000. package/_src/Scope/ReleaseMap/api.ts +15 -5
  1001. package/_src/Scope/ReleaseMap/definition.ts +1 -1
  1002. package/_src/Scope/api.ts +23 -15
  1003. package/_src/ScopedRef/api.ts +12 -17
  1004. package/_src/ScopedRef/definition.ts +1 -1
  1005. package/_src/Sink/api.ts +111 -85
  1006. package/_src/State/api.ts +1 -1
  1007. package/_src/Stream/api/zipAllWith.ts +5 -2
  1008. package/_src/Stream/api/zipWith.ts +2 -1
  1009. package/_src/Stream/api/zipWithChunks.ts +5 -2
  1010. package/_src/Stream/api.ts +484 -216
  1011. package/_src/Stream/definition.ts +3 -3
  1012. package/_src/Stream/internal/Take.ts +1 -1
  1013. package/_src/Supervisor/constructors.ts +7 -3
  1014. package/_src/TFuture/api.ts +5 -5
  1015. package/_src/TFuture/constructors.ts +2 -2
  1016. package/_src/TFuture/definition.ts +1 -1
  1017. package/_src/TReentrantLock/api.ts +18 -18
  1018. package/_src/TRef/api.ts +36 -14
  1019. package/_src/TRef/constructors.ts +4 -4
  1020. package/_src/TSemaphore/api.ts +7 -7
  1021. package/_src/TSemaphore/constructors.ts +1 -1
  1022. package/_src/TSemaphore/definition.ts +1 -1
  1023. package/_src/collection/immutable/Conc/filterIO.ts +5 -1
  1024. package/_src/collection/immutable/Conc/findIO.ts +6 -1
  1025. package/_src/collection/immutable/Conc/mapIO.ts +1 -1
  1026. package/_src/collection/immutable/Conc/takeWhileIO.ts +5 -1
  1027. package/_src/collection/immutable/Conc.ts +2 -0
  1028. package/_src/data/Exit/foreachIO.ts +1 -0
  1029. package/_src/global.ts +149 -0
  1030. package/_src/index.ts +42 -0
  1031. package/_src/internal/Scheduler.ts +59 -15
  1032. package/collection/immutable/Conc/filterIO.d.ts +1 -1
  1033. package/collection/immutable/Conc/findIO.d.ts +2 -2
  1034. package/collection/immutable/Conc/mapIO.d.ts +1 -1
  1035. package/collection/immutable/Conc/takeWhileIO.d.ts +1 -1
  1036. package/collection/immutable/Conc.d.ts +2 -0
  1037. package/data/Exit/foreachIO.d.ts +2 -2
  1038. package/global.d.ts +149 -0
  1039. package/index.d.ts +40 -0
  1040. package/internal/Scheduler.d.ts +18 -1
  1041. package/package.json +3 -3
@@ -4,7 +4,14 @@ import type { FiberContext } from "@fncts/io/Fiber/FiberContext";
4
4
  export const IOTypeId = Symbol.for("fncts.io.IO");
5
5
  export type IOTypeId = typeof IOTypeId;
6
6
 
7
- export interface IOF extends IO<any, any, any> {}
7
+ export interface IOF extends HKT {
8
+ type: IO<this["R"], this["E"], this["A"]>;
9
+ variance: {
10
+ R: "-";
11
+ E: "+";
12
+ A: "+";
13
+ };
14
+ }
8
15
 
9
16
  /**
10
17
  * @tsplus type fncts.io.IO
@@ -12,11 +19,9 @@ export interface IOF extends IO<any, any, any> {}
12
19
  */
13
20
  export abstract class IO<R, E, A> {
14
21
  readonly _typeId: IOTypeId = IOTypeId;
15
- readonly [HKT.F]!: IOF;
16
- readonly [HKT.R]!: (_: R) => void;
17
- readonly [HKT.E]!: () => E;
18
- readonly [HKT.A]!: () => A;
19
- readonly [HKT.T]!: IO<HKT._R<this>, HKT._E<this>, HKT._A<this>>;
22
+ declare _R: () => R;
23
+ declare _E: () => E;
24
+ declare _A: () => A;
20
25
  }
21
26
 
22
27
  /**
@@ -35,18 +40,18 @@ export const IOAspects: IOAspects = {};
35
40
  export function unifyIO<X extends IO<any, any, any>>(
36
41
  self: X,
37
42
  ): IO<
38
- [X] extends [IO<infer R, any, any>] ? R : never,
39
- [X] extends [IO<any, infer E, any>] ? E : never,
40
- [X] extends [IO<any, any, infer A>] ? A : never
43
+ [X] extends [{ _R: () => infer R }] ? R : never,
44
+ [X] extends [{ _E: () => infer E }] ? E : never,
45
+ [X] extends [{ _A: () => infer A }] ? A : never
41
46
  > {
42
47
  return self;
43
48
  }
44
49
 
45
- export type UIO<A> = IO<unknown, never, A>;
50
+ export type UIO<A> = IO<never, never, A>;
46
51
 
47
52
  export type URIO<R, A> = IO<R, never, A>;
48
53
 
49
- export type FIO<E, A> = IO<unknown, E, A>;
54
+ export type FIO<E, A> = IO<never, E, A>;
50
55
 
51
56
  export const enum IOTag {
52
57
  SucceedNow = "SucceedNow",
@@ -86,7 +91,7 @@ export function isIO(u: unknown): u is IO<any, any, any> {
86
91
  /**
87
92
  * @internal
88
93
  */
89
- export class Chain<R, R1, E, E1, A, A1> extends IO<R & R1, E | E1, A1> {
94
+ export class Chain<R, R1, E, E1, A, A1> extends IO<R | R1, E | E1, A1> {
90
95
  readonly _tag = IOTag.Chain;
91
96
  constructor(readonly io: IO<R, E, A>, readonly f: (a: A) => IO<R1, E1, A1>, readonly trace?: string) {
92
97
  super();
@@ -96,7 +101,7 @@ export class Chain<R, R1, E, E1, A, A1> extends IO<R & R1, E | E1, A1> {
96
101
  /**
97
102
  * @internal
98
103
  */
99
- export class SucceedNow<A> extends IO<unknown, never, A> {
104
+ export class SucceedNow<A> extends IO<never, never, A> {
100
105
  readonly _tag = IOTag.SucceedNow;
101
106
  constructor(readonly value: A, readonly trace?: string) {
102
107
  super();
@@ -106,21 +111,21 @@ export class SucceedNow<A> extends IO<unknown, never, A> {
106
111
  /**
107
112
  * @internal
108
113
  */
109
- export class Succeed<A> extends IO<unknown, never, A> {
114
+ export class Succeed<A> extends IO<never, never, A> {
110
115
  readonly _tag = IOTag.Succeed;
111
116
  constructor(readonly effect: () => A, readonly trace?: string) {
112
117
  super();
113
118
  }
114
119
  }
115
120
 
116
- export class SucceedWith<A> extends IO<unknown, never, A> {
121
+ export class SucceedWith<A> extends IO<never, never, A> {
117
122
  readonly _tag = IOTag.SucceedWith;
118
123
  constructor(readonly effect: (runtimeConfig: RuntimeConfig, fiberId: FiberId) => A, readonly trace?: string) {
119
124
  super();
120
125
  }
121
126
  }
122
127
 
123
- export class Trace extends IO<unknown, never, Trace_> {
128
+ export class Trace extends IO<never, never, Trace_> {
124
129
  readonly _tag = IOTag.Trace;
125
130
  constructor(readonly trace?: string) {
126
131
  super();
@@ -130,7 +135,7 @@ export class Trace extends IO<unknown, never, Trace_> {
130
135
  /**
131
136
  * @internal
132
137
  */
133
- export class Async<R, E, A, R1> extends IO<R & R1, E, A> {
138
+ export class Async<R, E, A, R1> extends IO<R | R1, E, A> {
134
139
  readonly _tag = IOTag.Async;
135
140
  constructor(
136
141
  readonly register: (f: (_: IO<R, E, A>) => void) => Either<Canceler<R1>, IO<R, E, A>>,
@@ -144,7 +149,7 @@ export class Async<R, E, A, R1> extends IO<R & R1, E, A> {
144
149
  /**
145
150
  * @internal
146
151
  */
147
- export class Match<R, E, A, R1, E1, B, R2, E2, C> extends IO<R & R1 & R2, E1 | E2, B | C> {
152
+ export class Match<R, E, A, R1, E1, B, R2, E2, C> extends IO<R | R1 | R2, E1 | E2, B | C> {
148
153
  readonly _tag = IOTag.Match;
149
154
 
150
155
  constructor(
@@ -173,7 +178,7 @@ export class Fork<R, E, A> extends IO<R, never, FiberContext<E, A>> {
173
178
  /**
174
179
  * @internal
175
180
  */
176
- export class Fail<E> extends IO<unknown, E, never> {
181
+ export class Fail<E> extends IO<never, E, never> {
177
182
  readonly _tag = IOTag.Fail;
178
183
 
179
184
  constructor(readonly cause: Lazy<Cause<E>>, readonly trace?: string) {
@@ -184,7 +189,7 @@ export class Fail<E> extends IO<unknown, E, never> {
184
189
  /**
185
190
  * @internal
186
191
  */
187
- export class Yield extends IO<unknown, never, void> {
192
+ export class Yield extends IO<never, never, void> {
188
193
  readonly _tag = IOTag.Yield;
189
194
 
190
195
  constructor(readonly trace?: string) {
@@ -217,7 +222,7 @@ export class DeferWith<R, E, A> extends IO<R, E, A> {
217
222
  /**
218
223
  * @internal
219
224
  */
220
- export class Race<R, E, A, R1, E1, A1, R2, E2, A2, R3, E3, A3> extends IO<R & R1 & R2 & R3, E2 | E3, A2 | A3> {
225
+ export class Race<R, E, A, R1, E1, A1, R2, E2, A2, R3, E3, A3> extends IO<R | R1 | R2 | R3, E2 | E3, A2 | A3> {
221
226
  readonly _tag = "Race";
222
227
 
223
228
  constructor(
@@ -278,7 +283,7 @@ export class Supervise<R, E, A> extends IO<R, E, A> {
278
283
  /**
279
284
  * @internal
280
285
  */
281
- export class FiberRefModify<A, B> extends IO<unknown, never, B> {
286
+ export class FiberRefModify<A, B> extends IO<never, never, B> {
282
287
  readonly _tag = IOTag.FiberRefModify;
283
288
 
284
289
  constructor(readonly fiberRef: FiberRef<unknown>, readonly f: (a: A) => readonly [B, A], readonly trace?: string) {
@@ -298,7 +303,7 @@ export class FiberRefLocally<V, R, E, A> extends IO<R, E, A> {
298
303
  }
299
304
  }
300
305
 
301
- export class FiberRefDelete extends IO<unknown, never, void> {
306
+ export class FiberRefDelete extends IO<never, never, void> {
302
307
  readonly _tag = IOTag.FiberRefDelete;
303
308
  constructor(readonly fiberRef: FiberRef<unknown>, readonly trace?: string) {
304
309
  super();
@@ -312,7 +317,7 @@ export class FiberRefWith<A, P, R, E, B> extends IO<R, E, B> {
312
317
  }
313
318
  }
314
319
 
315
- export class FiberRefModifyAll<A> extends IO<unknown, never, A> {
320
+ export class FiberRefModifyAll<A> extends IO<never, never, A> {
316
321
  readonly _tag = IOTag.FiberRefModifyAll;
317
322
  constructor(
318
323
  readonly f: (fiberId: FiberId.Runtime, fiberRefs: FiberRefs) => readonly [A, FiberRefs],
@@ -352,14 +357,14 @@ export class GetRuntimeConfig<R, E, A> extends IO<R, E, A> {
352
357
  }
353
358
  }
354
359
 
355
- export class Ensuring<R, E, A, R1> extends IO<R & R1, E, A> {
360
+ export class Ensuring<R, E, A, R1> extends IO<R | R1, E, A> {
356
361
  readonly _tag = IOTag.Ensuring;
357
362
  constructor(readonly io: IO<R, E, A>, readonly finalizer: IO<R1, never, any>, readonly trace?: string) {
358
363
  super();
359
364
  }
360
365
  }
361
366
 
362
- export class Logged extends IO<unknown, never, void> {
367
+ export class Logged extends IO<never, never, void> {
363
368
  readonly _tag = IOTag.Logged;
364
369
  constructor(
365
370
  readonly message: () => string,
@@ -373,7 +378,7 @@ export class Logged extends IO<unknown, never, void> {
373
378
  }
374
379
  }
375
380
 
376
- export class SetRuntimeConfig extends IO<unknown, never, void> {
381
+ export class SetRuntimeConfig extends IO<never, never, void> {
377
382
  readonly _tag = IOTag.SetRuntimeConfig;
378
383
  constructor(readonly runtimeConfig: RuntimeConfig, readonly trace?: string) {
379
384
  super();
@@ -4,21 +4,16 @@ import { FiberContext } from "@fncts/io/Fiber";
4
4
  import { concrete } from "@fncts/io/IO/definition";
5
5
  import { IOEnv } from "@fncts/io/IOEnv/definition";
6
6
 
7
+ import { StagedScheduler } from "../internal/Scheduler.js";
8
+
7
9
  export class Runtime<R> {
8
10
  constructor(readonly environment: Environment<R>, readonly runtimeConfig: RuntimeConfig) {}
9
11
 
10
- unsafeRunWith = <E, A>(
11
- io: IO<R, E, A>,
12
- k: (exit: Exit<E, A>) => any,
13
- __tsplusTrace?: string,
14
- ): ((fiberId: FiberId) => (f: (exit: Exit<E, A>) => any) => void) => {
15
- const fiberId = FiberId.unsafeMake(TraceElement.parse(__tsplusTrace));
16
-
17
- const children = new Set<FiberContext<any, any>>();
18
-
12
+ unsafeRunFiber = <E, A>(io: IO<R, E, A>, __tsplusTrace?: string): FiberContext<E, A> => {
13
+ const fiberId = FiberId.unsafeMake(TraceElement.parse(__tsplusTrace));
14
+ const children = new Set<FiberContext<any, any>>();
19
15
  const supervisor = this.runtimeConfig.supervisor;
20
-
21
- const context = new FiberContext<E, A>(
16
+ const context = new FiberContext<E, A>(
22
17
  fiberId,
23
18
  this.runtimeConfig,
24
19
  Stack.single(InterruptStatus.interruptible.toBoolean),
@@ -41,6 +36,15 @@ export class Runtime<R> {
41
36
 
42
37
  context.nextIO = concrete(io);
43
38
  context.run();
39
+ return context;
40
+ };
41
+
42
+ unsafeRunWith = <E, A>(
43
+ io: IO<R, E, A>,
44
+ k: (exit: Exit<E, A>) => any,
45
+ __tsplusTrace?: string,
46
+ ): ((fiberId: FiberId) => (f: (exit: Exit<E, A>) => any) => void) => {
47
+ const context = this.unsafeRunFiber(io);
44
48
  context.unsafeOnDone((exit) => k(exit.flatten));
45
49
  return (fiberId) => (k) => this.unsafeRunAsyncWith(context.interruptAs(fiberId), (exit) => k(exit.flatten));
46
50
  };
@@ -57,6 +61,46 @@ export class Runtime<R> {
57
61
  new Promise((resolve) => {
58
62
  this.unsafeRunAsyncWith(io, resolve);
59
63
  });
64
+
65
+ unsafeRunSyncExit = <E, A>(io: IO<R, E, A>, __tsplusTrace?: string): Exit<E, A> => {
66
+ const fiberId = FiberId.unsafeMake(TraceElement.parse(__tsplusTrace));
67
+ const children = new Set<FiberContext<any, any>>();
68
+ const supervisor = this.runtimeConfig.supervisor;
69
+ const scheduler = new StagedScheduler();
70
+ const context = new FiberContext<E, A>(
71
+ fiberId,
72
+ this.runtimeConfig,
73
+ Stack.single(InterruptStatus.interruptible.toBoolean),
74
+ new AtomicReference(
75
+ HashMap<FiberRef<unknown>, Cons<readonly [FiberId.Runtime, unknown]>>(
76
+ [FiberRef.currentEnvironment, Cons([fiberId, this.environment])],
77
+ [IOEnv.services, Cons([fiberId, IOEnv.environment])],
78
+ [FiberRef.currentScheduler, Cons([fiberId, scheduler])],
79
+ ),
80
+ ),
81
+ children,
82
+ );
83
+
84
+ FiberScope.global.unsafeAdd(context);
85
+
86
+ if (supervisor !== Supervisor.none) {
87
+ supervisor.unsafeOnStart(this.environment, io, Nothing(), context);
88
+
89
+ context.unsafeOnDone((exit) => supervisor.unsafeOnEnd(exit.flatten, context));
90
+ }
91
+
92
+ context.nextIO = concrete(io);
93
+ context.run();
94
+ scheduler.flush();
95
+
96
+ const result = context.unsafePoll();
97
+
98
+ if (result.isJust()) {
99
+ return result.value;
100
+ }
101
+
102
+ return Exit.halt(context);
103
+ };
60
104
  }
61
105
 
62
106
  /**
@@ -70,7 +114,7 @@ export function runtime<R>(__tsplusTrace?: string): URIO<R, Runtime<R>> {
70
114
 
71
115
  export const defaultRuntimeConfig = new RuntimeConfig({
72
116
  reportFailure: () => undefined,
73
- supervisor: Supervisor.unsafeTrack(),
117
+ supervisor: Supervisor.unsafeTrack(true),
74
118
  flags: RuntimeConfigFlags.empty,
75
119
  yieldOpCount: 2048,
76
120
  logger: Logger.defaultString.map((s) => console.log(s)).filterLogLevel((level) => level >= LogLevel.Info),
@@ -78,6 +122,11 @@ export const defaultRuntimeConfig = new RuntimeConfig({
78
122
 
79
123
  export const defaultRuntime = new Runtime(Environment.empty, defaultRuntimeConfig);
80
124
 
125
+ /**
126
+ * @tsplus fluent fncts.io.IO unsafeRunFiber
127
+ */
128
+ export const unsafeRunFiber = defaultRuntime.unsafeRunFiber;
129
+
81
130
  /**
82
131
  * @tsplus fluent fncts.io.IO unsafeRunAsync
83
132
  */
@@ -97,3 +146,8 @@ export const unsafeRunPromiseExit = defaultRuntime.unsafeRunPromiseExit;
97
146
  * @tsplus fluent fncts.io.IO unsafeRunWith
98
147
  */
99
148
  export const unsafeRunWith = defaultRuntime.unsafeRunWith;
149
+
150
+ /**
151
+ * @tsplus getter fncts.io.IO unsafeRunSyncExit
152
+ */
153
+ export const unsafeRunSyncExit = defaultRuntime.unsafeRunSyncExit;
@@ -2,7 +2,7 @@ import type { Patch } from "@fncts/base/data/Patch";
2
2
 
3
3
  import { Console } from "@fncts/io/Console";
4
4
 
5
- export type IOEnv = Has<Clock> & Has<Console> & Has<Random>;
5
+ export type IOEnv = Clock | Console | Random;
6
6
 
7
7
  /**
8
8
  * @tsplus type fncts.io.IOEnvOps
@@ -14,9 +14,8 @@ export class MemoMap {
14
14
  * returns it. Otherwise, obtains the dependency, stores it in the memo map,
15
15
  * and adds a finalizer to the outer `Managed`.
16
16
  */
17
- getOrElseMemoize = <R, E, A>(scope: Scope, layer: Layer<R, E, A>) => {
17
+ getOrElseMemoize = <R, E, A>(scope: Scope, layer: Layer<R, E, A>, __tsplusTrace?: string) => {
18
18
  // eslint-disable-next-line @typescript-eslint/no-this-alias
19
- const self = this;
20
19
  return this.ref.modifyIO((map) => {
21
20
  const inMap = map.get(layer[LayerHash]);
22
21
 
@@ -32,35 +31,34 @@ export class MemoMap {
32
31
 
33
32
  return IO.succeedNow(tuple(cached, map));
34
33
  } else {
35
- return IO.gen(function* (_) {
36
- const observers = yield* _(Ref.make(0));
37
- const future = yield* _(Future.make<E, Environment<A>>());
38
- const finalizerRef = yield* _(Ref.make<Finalizer>(Finalizer.noop));
34
+ return Do((_) => {
35
+ const observers = _(Ref.make(0));
36
+ const future = _(Future.make<E, Environment<A>>());
37
+ const finalizerRef = _(Ref.make<Finalizer>(Finalizer.noop));
39
38
 
40
39
  const resource = IO.uninterruptibleMask(({ restore }) =>
41
- IO.gen(function* (_) {
42
- const environment = yield* _(IO.environment<R>());
43
- const outerScope = scope;
44
- const innerScope = yield* _(Scope.make);
40
+ Do((_) => {
41
+ const outerScope = scope;
42
+ const innerScope = _(Scope.make);
45
43
 
46
- const tp = yield* _(
47
- restore(layer.scope(innerScope).flatMap((f) => f(self))).result.flatMap((exit) =>
44
+ const tp = _(
45
+ restore(layer.scope(innerScope).flatMap((f) => f(this))).result.flatMap((exit) =>
48
46
  exit.match(
49
47
  (cause) => future.failCause(cause) > innerScope.close(exit) > IO.failCauseNow(cause),
50
48
  (a) =>
51
- IO.gen(function* (_) {
52
- yield* _(
49
+ Do((_) => {
50
+ _(
53
51
  finalizerRef
54
52
  .set(Finalizer.get((exit) => innerScope.close(exit)))
55
53
  .whenIO(observers.modify((n) => [n === 1, n - 1])),
56
54
  );
57
- yield* _(observers.update((n) => n + 1));
58
- yield* _(
55
+ _(observers.update((n) => n + 1));
56
+ _(
59
57
  outerScope.addFinalizerExit(
60
58
  Finalizer.get((e) => finalizerRef.get.flatMap((fin) => Finalizer.reverseGet(fin)(e))),
61
59
  ),
62
60
  );
63
- yield* _(future.succeed(a));
61
+ _(future.succeed(a));
64
62
  return a;
65
63
  }),
66
64
  ),
@@ -95,7 +93,7 @@ export function isFresh<R, E, A>(self: Layer<R, E, A>): self is Fresh<R, E, A> {
95
93
  return self._tag === LayerTag.Fresh;
96
94
  }
97
95
 
98
- export function makeMemoMap(): UIO<MemoMap> {
96
+ export function makeMemoMap(__tsplusTrace?: string): UIO<MemoMap> {
99
97
  return Ref.Synchronized.make(HashMap.makeDefault<PropertyKey, readonly [FIO<any, any>, Finalizer]>()).flatMap((ref) =>
100
98
  IO.succeedNow(new MemoMap(ref)),
101
99
  );
@@ -104,18 +102,18 @@ export function makeMemoMap(): UIO<MemoMap> {
104
102
  /**
105
103
  * @tsplus getter fncts.io.Layer build
106
104
  */
107
- export function build<R, E, A>(self: Layer<R, E, A>): IO<R & Has<Scope>, E, Environment<A>> {
105
+ export function build<R, E, A>(self: Layer<R, E, A>, __tsplusTrace?: string): IO<R | Scope, E, Environment<A>> {
108
106
  return IO.serviceWithIO((scope: Scope) => self.build(scope), Scope.Tag);
109
107
  }
110
108
 
111
109
  /**
112
110
  * @tsplus fluent fncts.io.Layer build
113
111
  */
114
- export function build_<R, E, A>(self: Layer<R, E, A>, scope: Scope): IO<R, E, Environment<A>> {
115
- return IO.gen(function* (_) {
116
- const memoMap = yield* _(makeMemoMap());
117
- const run = yield* _(self.scope(scope));
118
- return yield* _(run(memoMap));
112
+ export function build_<R, E, A>(self: Layer<R, E, A>, scope: Scope, __tsplusTrace?: string): IO<R, E, Environment<A>> {
113
+ return Do((_) => {
114
+ const memoMap = _(makeMemoMap());
115
+ const run = _(self.scope(scope));
116
+ return _(run(memoMap));
119
117
  });
120
118
  }
121
119
 
@@ -125,45 +123,54 @@ export function build_<R, E, A>(self: Layer<R, E, A>, scope: Scope): IO<R, E, En
125
123
  export function scope<R, E, A>(
126
124
  layer: Layer<R, E, A>,
127
125
  scope: Scope,
128
- ): IO<unknown, never, (_: MemoMap) => IO<R, E, Environment<A>>> {
126
+ __tsplusTrace?: string,
127
+ ): IO<never, never, (_: MemoMap) => IO<R, E, Environment<A>>> {
129
128
  layer.concrete();
130
129
  switch (layer._tag) {
131
130
  case LayerTag.Fold: {
132
131
  return IO.succeed(
133
132
  () => (memoMap: MemoMap) =>
134
- memoMap.getOrElseMemoize(scope, layer.self).matchCauseIO(
135
- (cause) => memoMap.getOrElseMemoize(scope, layer.failure(cause)),
133
+ memoMap.getOrElseMemoize(scope, layer.self, layer.trace).matchCauseIO(
134
+ (cause) => memoMap.getOrElseMemoize(scope, layer.failure(cause), layer.trace),
136
135
  (r) => memoMap.getOrElseMemoize(scope, layer.success(r)),
136
+ layer.trace,
137
137
  ),
138
138
  );
139
139
  }
140
140
  case LayerTag.Fresh: {
141
- return IO.succeed(() => () => layer.self.build(scope));
141
+ return IO.succeed(() => () => layer.self.build(scope, layer.trace));
142
142
  }
143
143
  case LayerTag.Scoped: {
144
- return IO.succeed(() => () => scope.extend(layer.self));
144
+ return IO.succeed(() => () => scope.extend(layer.self, layer.trace));
145
145
  }
146
146
  case LayerTag.Defer: {
147
- return IO.succeed(() => (memoMap: MemoMap) => memoMap.getOrElseMemoize(scope, layer.self()));
147
+ return IO.succeed(() => (memoMap: MemoMap) => memoMap.getOrElseMemoize(scope, layer.self(), layer.trace));
148
148
  }
149
149
  case LayerTag.To: {
150
150
  return IO.succeed(
151
151
  () => (memoMap: MemoMap) =>
152
152
  memoMap
153
- .getOrElseMemoize(scope, layer.self)
154
- .flatMap((r) => memoMap.getOrElseMemoize(scope, layer.that).provideEnvironment(r)),
153
+ .getOrElseMemoize(scope, layer.self, layer.trace)
154
+ .flatMap(
155
+ (r) => memoMap.getOrElseMemoize(scope, layer.that, layer.trace).provideEnvironment(r),
156
+ layer.trace,
157
+ ),
155
158
  );
156
159
  }
157
160
  case LayerTag.ZipWith: {
158
161
  return IO.succeed(
159
162
  () => (memoMap: MemoMap) =>
160
- memoMap.getOrElseMemoize(scope, layer.self).zipWith(memoMap.getOrElseMemoize(scope, layer.that), layer.f),
163
+ memoMap
164
+ .getOrElseMemoize(scope, layer.self, layer.trace)
165
+ .zipWith(memoMap.getOrElseMemoize(scope, layer.that, layer.trace), layer.f, layer.trace),
161
166
  );
162
167
  }
163
168
  case LayerTag.ZipWithC: {
164
169
  return IO.succeed(
165
170
  () => (memoMap: MemoMap) =>
166
- memoMap.getOrElseMemoize(scope, layer.self).zipWithC(memoMap.getOrElseMemoize(scope, layer.that), layer.f),
171
+ memoMap
172
+ .getOrElseMemoize(scope, layer.self, layer.trace)
173
+ .zipWithC(memoMap.getOrElseMemoize(scope, layer.that, layer.trace), layer.f, layer.trace),
167
174
  );
168
175
  }
169
176
  }