@fncts/io 0.0.11 → 0.0.14

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 (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
package/_src/Sink/api.ts CHANGED
@@ -10,7 +10,8 @@ import { MergeDecision } from "../Channel/internal/MergeDecision.js";
10
10
  export function apFirst<R, E, In, L, Z, R1, E1, In1 extends In, L1 extends L, Z1>(
11
11
  self: Sink<R, E, In, L, Z>,
12
12
  that: Lazy<Sink<R1, E1, In1, L1, Z1>>,
13
- ): Sink<R & R1, E | E1, In & In1, L | L1, Z> {
13
+ __tsplusTrace?: string,
14
+ ): Sink<R | R1, E | E1, In & In1, L | L1, Z> {
14
15
  return self.zipWith(that, (z, _) => z);
15
16
  }
16
17
 
@@ -22,7 +23,8 @@ export function apFirst<R, E, In, L, Z, R1, E1, In1 extends In, L1 extends L, Z1
22
23
  export function apFirstC<R, E, In, L, Z, R1, E1, In1 extends In, L1 extends L, Z1>(
23
24
  self: Sink<R, E, In, L, Z>,
24
25
  that: Lazy<Sink<R1, E1, In1, L1, Z1>>,
25
- ): Sink<R & R1, E | E1, In & In1, L | L1, Z> {
26
+ __tsplusTrace?: string,
27
+ ): Sink<R | R1, E | E1, In & In1, L | L1, Z> {
26
28
  return self.zipWithC(that, (z, _) => z);
27
29
  }
28
30
 
@@ -35,7 +37,7 @@ export function apSecond<R, E, In, L, Z, R1, E1, In1 extends In, L1 extends L, Z
35
37
  self: Sink<R, E, In, L, Z>,
36
38
  that: Lazy<Sink<R1, E1, In1, L1, Z1>>,
37
39
  __tsplusTrace?: string,
38
- ): Sink<R & R1, E | E1, In & In1, L | L1, Z1> {
40
+ ): Sink<R | R1, E | E1, In & In1, L | L1, Z1> {
39
41
  return self.zipWith(that, (_, z1) => z1);
40
42
  }
41
43
 
@@ -48,7 +50,7 @@ export function apSecondC<R, E, In, L, Z, R1, E1, In1 extends In, L1 extends L,
48
50
  self: Sink<R, E, In, L, Z>,
49
51
  that: Lazy<Sink<R1, E1, In1, L1, Z1>>,
50
52
  __tsplusTrace?: string,
51
- ): Sink<R & R1, E | E1, In & In1, L | L1, Z1> {
53
+ ): Sink<R | R1, E | E1, In & In1, L | L1, Z1> {
52
54
  return self.zipWithC(that, (_, z1) => z1);
53
55
  }
54
56
 
@@ -97,13 +99,13 @@ export function collectAllWhileWith<R, E, In extends L, L, Z, S>(
97
99
  ): Sink<R, E, In, L, S> {
98
100
  return new Sink(
99
101
  Channel.fromIO(Ref.make<Conc<In>>(Conc.empty()).zip(Ref.make(false))).flatMap(([leftoversRef, upstreamDoneRef]) => {
100
- const upstreamMarker: Channel<unknown, never, Conc<In>, unknown, never, Conc<In>, unknown> = Channel.readWith(
102
+ const upstreamMarker: Channel<never, never, Conc<In>, unknown, never, Conc<In>, unknown> = Channel.readWith(
101
103
  (inp) => Channel.writeNow(inp) > upstreamMarker,
102
104
  Channel.failNow,
103
105
  (x) => Channel.fromIO(upstreamDoneRef.set(true)).as(x),
104
106
  );
105
107
 
106
- function loop(currentResult: S): Channel<R, never, Conc<In>, unknown, E, Conc<L>, S> {
108
+ function loop(currentResult: S, __tsplusTrace?: string): Channel<R, never, Conc<In>, unknown, E, Conc<L>, S> {
107
109
  return self.channel.collectElements.matchChannel(Channel.failNow, ([leftovers, doneValue]) => {
108
110
  if (p(doneValue)) {
109
111
  return (
@@ -179,8 +181,8 @@ export function contramapChunksIO<R, E, In, L, Z, R1, E1, In1>(
179
181
  self: Sink<R, E, In, L, Z>,
180
182
  f: (chunk: Conc<In1>) => IO<R1, E1, Conc<In>>,
181
183
  __tsplusTrace?: string,
182
- ): Sink<R & R1, E | E1, In1, L, Z> {
183
- const loop: Channel<R & R1, never, Conc<In1>, unknown, E | E1, Conc<In>, unknown> = Channel.readWith(
184
+ ): Sink<R | R1, E | E1, In1, L, Z> {
185
+ const loop: Channel<R | R1, never, Conc<In1>, unknown, E | E1, Conc<In>, unknown> = Channel.readWith(
184
186
  (chunk) => Channel.fromIO(f(chunk)).flatMap(Channel.writeNow) > loop,
185
187
  Channel.failNow,
186
188
  Channel.succeedNow,
@@ -197,7 +199,7 @@ export function contramapIO<R, E, In, L, Z, R1, E1, In1>(
197
199
  self: Sink<R, E, In, L, Z>,
198
200
  f: (inp: In1) => IO<R1, E1, In>,
199
201
  __tsplusTrace?: string,
200
- ): Sink<R & R1, E | E1, In1, L, Z> {
202
+ ): Sink<R | R1, E | E1, In1, L, Z> {
201
203
  return self.contramapChunksIO((chunk) => chunk.mapIO(f));
202
204
  }
203
205
 
@@ -242,7 +244,7 @@ export function dimapChunksIO<R, E, In, L, Z, R1, E1, In1, R2, E2, Z1>(
242
244
  f: (chunk: Conc<In1>) => IO<R1, E1, Conc<In>>,
243
245
  g: (z: Z) => IO<R2, E2, Z1>,
244
246
  __tsplusTrace?: string,
245
- ): Sink<R & R1 & R2, E | E1 | E2, In1, L, Z1> {
247
+ ): Sink<R | R1 | R2, E | E1 | E2, In1, L, Z1> {
246
248
  return self.contramapChunksIO(f).mapIO(g);
247
249
  }
248
250
 
@@ -257,7 +259,7 @@ export function dimapIO<R, E, In, L, Z, R1, E1, In1, R2, E2, Z1>(
257
259
  f: (inp: In1) => IO<R1, E1, In>,
258
260
  g: (z: Z) => IO<R2, E2, Z1>,
259
261
  __tsplusTrace?: string,
260
- ): Sink<R & R1 & R2, E | E1 | E2, In1, L, Z1> {
262
+ ): Sink<R | R1 | R2, E | E1 | E2, In1, L, Z1> {
261
263
  return self.contramapIO(f).mapIO(g);
262
264
  }
263
265
 
@@ -271,7 +273,7 @@ export function defer<R, E, In, L, Z>(sink: Lazy<Sink<R, E, In, L, Z>>, __tsplus
271
273
  return new Sink(Channel.defer(sink().channel));
272
274
  }
273
275
 
274
- const drainLoop: Channel<unknown, never, Conc<unknown>, unknown, never, Conc<never>, void> = Channel.readWithCause(
276
+ const drainLoop: Channel<never, never, Conc<unknown>, unknown, never, Conc<never>, void> = Channel.readWithCause(
275
277
  () => drainLoop,
276
278
  Channel.failCauseNow,
277
279
  () => Channel.unit,
@@ -282,15 +284,15 @@ const drainLoop: Channel<unknown, never, Conc<unknown>, unknown, never, Conc<nev
282
284
  *
283
285
  * @tsplus static fncts.io.SinkOps drain
284
286
  */
285
- export const drain: Sink<unknown, never, unknown, never, void> = new Sink(drainLoop);
287
+ export const drain: Sink<never, never, unknown, never, void> = new Sink(drainLoop);
286
288
 
287
289
  /**
288
290
  * Drops incoming elements until the predicate `p` is satisfied.
289
291
  *
290
292
  * @tsplus static fncts.io.SinkOps dropUntil
291
293
  */
292
- export function makeDropUntil<In>(p: Predicate<In>, __tsplusTrace?: string): Sink<unknown, never, In, In, void> {
293
- const loop: Channel<unknown, never, Conc<In>, any, never, Conc<In>, void> = Channel.readWith(
294
+ export function makeDropUntil<In>(p: Predicate<In>, __tsplusTrace?: string): Sink<never, never, In, In, void> {
295
+ const loop: Channel<never, never, Conc<In>, any, never, Conc<In>, void> = Channel.readWith(
294
296
  (inp: Conc<In>) => {
295
297
  const leftover = inp.dropUntil(p);
296
298
  const more = leftover.isEmpty;
@@ -336,8 +338,8 @@ export function makeDropUntilIO<R, E, In>(
336
338
  export function makeDropWhile<Err, In>(
337
339
  predicate: Predicate<In>,
338
340
  __tsplusTrace?: string,
339
- ): Sink<unknown, never, In, In, any> {
340
- const loop: Channel<unknown, never, Conc<In>, any, never, Conc<In>, any> = Channel.readWith(
341
+ ): Sink<never, never, In, In, any> {
342
+ const loop: Channel<never, never, Conc<In>, any, never, Conc<In>, any> = Channel.readWith(
341
343
  (inp: Conc<In>) => {
342
344
  const leftover = inp.dropWhile(predicate);
343
345
  const more = leftover.isEmpty;
@@ -405,7 +407,7 @@ export function environmentWith<R, Z>(
405
407
  export function environmentWithIO<R, R1, E, Z>(
406
408
  f: (r: Environment<R>) => IO<R1, E, Z>,
407
409
  __tsplusTrace?: string,
408
- ): Sink<R & R1, E, unknown, never, Z> {
410
+ ): Sink<R | R1, E, unknown, never, Z> {
409
411
  return Sink.fromIO(IO.environmentWithIO(f));
410
412
  }
411
413
 
@@ -417,7 +419,7 @@ export function environmentWithIO<R, R1, E, Z>(
417
419
  export function environmentWithSink<R, R1, E, In, L, Z>(
418
420
  f: (r: Environment<R>) => Sink<R1, E, In, L, Z>,
419
421
  __tsplusTrace?: string,
420
- ): Sink<R & R1, E, In, L, Z> {
422
+ ): Sink<R | R1, E, In, L, Z> {
421
423
  return new Sink(Channel.unwrap(IO.environmentWith(f.compose((s) => s.channel))));
422
424
  }
423
425
 
@@ -426,7 +428,7 @@ export function environmentWithSink<R, R1, E, In, L, Z>(
426
428
  *
427
429
  * @tsplus static fncts.io.SinkOps fail
428
430
  */
429
- export function fail<E>(e: Lazy<E>, __tsplusTrace?: string): Sink<unknown, E, unknown, never, never> {
431
+ export function fail<E>(e: Lazy<E>, __tsplusTrace?: string): Sink<never, E, unknown, never, never> {
430
432
  return new Sink(Channel.fail(e));
431
433
  }
432
434
 
@@ -435,7 +437,7 @@ export function fail<E>(e: Lazy<E>, __tsplusTrace?: string): Sink<unknown, E, un
435
437
  *
436
438
  * @tsplus static fncts.io.SinkOps failCause
437
439
  */
438
- export function failCause<E>(cause: Lazy<Cause<E>>, __tsplusTrace?: string): Sink<unknown, E, unknown, never, never> {
440
+ export function failCause<E>(cause: Lazy<Cause<E>>, __tsplusTrace?: string): Sink<never, E, unknown, never, never> {
439
441
  return new Sink(Channel.failCause(cause));
440
442
  }
441
443
 
@@ -444,7 +446,7 @@ export function failCause<E>(cause: Lazy<Cause<E>>, __tsplusTrace?: string): Sin
444
446
  *
445
447
  * @tsplus static fncts.io.SinkOps failCauseNow
446
448
  */
447
- export function failCauseNow<E>(cause: Cause<E>, __tsplusTrace?: string): Sink<unknown, E, unknown, never, never> {
449
+ export function failCauseNow<E>(cause: Cause<E>, __tsplusTrace?: string): Sink<never, E, unknown, never, never> {
448
450
  return new Sink(Channel.failCauseNow(cause));
449
451
  }
450
452
 
@@ -453,7 +455,7 @@ export function failCauseNow<E>(cause: Cause<E>, __tsplusTrace?: string): Sink<u
453
455
  *
454
456
  * @tsplus static fncts.io.SinkOps failNow
455
457
  */
456
- export function failNow<E>(e: E, __tsplusTrace?: string): Sink<unknown, E, unknown, never, never> {
458
+ export function failNow<E>(e: E, __tsplusTrace?: string): Sink<never, E, unknown, never, never> {
457
459
  return new Sink(Channel.failNow(e));
458
460
  }
459
461
 
@@ -479,7 +481,7 @@ export function filterInputIO<R, E, In, L, Z, R1, E1>(
479
481
  self: Sink<R, E, In, L, Z>,
480
482
  p: (inp: In) => IO<R1, E1, boolean>,
481
483
  __tsplusTrace?: string,
482
- ): Sink<R & R1, E | E1, In, L, Z> {
484
+ ): Sink<R | R1, E | E1, In, L, Z> {
483
485
  return self.contramapChunksIO((chunk) => chunk.filterIO(p));
484
486
  }
485
487
 
@@ -492,17 +494,17 @@ export function findIO<R, E, In extends L, L, Z, R1, E1>(
492
494
  self: Sink<R, E, In, L, Z>,
493
495
  f: (z: Z) => IO<R1, E1, boolean>,
494
496
  __tsplusTrace?: string,
495
- ): Sink<R & R1, E | E1, In, L, Maybe<Z>> {
497
+ ): Sink<R | R1, E | E1, In, L, Maybe<Z>> {
496
498
  return new Sink(
497
499
  Channel.fromIO(Ref.make(Conc.empty<In>()).zip(Ref.make(false))).flatMap(([leftoversRef, upstreamDoneRef]) => {
498
- const upstreamMarker: Channel<unknown, never, Conc<In>, unknown, never, Conc<In>, unknown> = Channel.readWith(
500
+ const upstreamMarker: Channel<never, never, Conc<In>, unknown, never, Conc<In>, unknown> = Channel.readWith(
499
501
  (inp) => Channel.writeNow(inp) > upstreamMarker,
500
502
  Channel.failNow,
501
503
  (x) => Channel.fromIO(upstreamDoneRef.set(true)).as(x),
502
504
  );
503
505
 
504
506
  const loop: Channel<
505
- R & R1,
507
+ R | R1,
506
508
  never,
507
509
  Conc<In>,
508
510
  unknown,
@@ -539,7 +541,7 @@ export function flatMap<R, E, In, L, Z, R1, E1, In1 extends In, L1, Z1>(
539
541
  self: Sink<R, E, In, L, Z>,
540
542
  f: (z: Z) => Sink<R1, E1, In1, L1, Z1>,
541
543
  __tsplusTrace?: string,
542
- ): Sink<R & R1, E | E1, In1, L | L1, Z1> {
544
+ ): Sink<R | R1, E | E1, In1, L | L1, Z1> {
543
545
  return self.matchSink(Sink.failNow, f);
544
546
  }
545
547
 
@@ -551,6 +553,7 @@ export function flatMap<R, E, In, L, Z, R1, E1, In1 extends In, L1, Z1>(
551
553
  */
552
554
  export function fromChannel<R, E, In, L, Z>(
553
555
  channel: Channel<R, never, Conc<In>, unknown, E, Conc<L>, Z>,
556
+ __tsplusTrace?: string,
554
557
  ): Sink<R, E, In, L, Z> {
555
558
  return new Sink(channel);
556
559
  }
@@ -561,14 +564,15 @@ export function fromChannel<R, E, In, L, Z>(
561
564
  * @tsplus static fncts.io.SinkOps fromPush
562
565
  */
563
566
  export function fromPush<R, E, In, L, Z, R1>(
564
- push: IO<Has<Scope> & R, never, (_: Maybe<Conc<In>>) => IO<R1, readonly [Either<E, Z>, Conc<L>], void>>,
567
+ push: IO<R, never, (_: Maybe<Conc<In>>) => IO<R1, readonly [Either<E, Z>, Conc<L>], void>>,
565
568
  __tsplusTrace?: string,
566
- ): Sink<R & R1, E, In, L, Z> {
569
+ ): Sink<Exclude<R, Scope> | R1, E, In, L, Z> {
567
570
  return new Sink(Channel.unwrapScoped(push.map(fromPushPull)));
568
571
  }
569
572
 
570
573
  function fromPushPull<R, E, In, L, Z>(
571
574
  push: (_: Maybe<Conc<In>>) => IO<R, readonly [Either<E, Z>, Conc<L>], void>,
575
+ __tsplusTrace?: string,
572
576
  ): Channel<R, never, Conc<In>, unknown, E, Conc<L>, Z> {
573
577
  return Channel.readWith(
574
578
  (inp: Conc<In>) =>
@@ -601,8 +605,8 @@ function fromPushPull<R, E, In, L, Z>(
601
605
  export function fromQueue<In>(
602
606
  queue: Lazy<Queue.Enqueue<In>>,
603
607
  __tsplusTrace?: string,
604
- ): Sink<unknown, never, In, never, void> {
605
- return Sink.unwrap(IO.succeed(queue).map((queue) => Sink.foreachChunk((inp) => queue.offerAll(inp))));
608
+ ): Sink<never, never, In, never, void> {
609
+ return Sink.unwrap(IO.succeed(queue).map((queue) => Sink.foreachChunk((inp: Conc<In>) => queue.offerAll(inp))));
606
610
  }
607
611
 
608
612
  /**
@@ -614,7 +618,7 @@ export function fromQueue<In>(
614
618
  export function fromQueueWithShutdown<In>(
615
619
  queue: Lazy<Queue.Enqueue<In>>,
616
620
  __tsplusTrace?: string,
617
- ): Sink<unknown, never, In, never, void> {
621
+ ): Sink<never, never, In, never, void> {
618
622
  return Sink.unwrapScoped(
619
623
  IO.succeed(queue)
620
624
  .acquireRelease((queue) => queue.shutdown)
@@ -627,7 +631,7 @@ export function fromQueueWithShutdown<In>(
627
631
  *
628
632
  * @tsplus static fncts.io.SinkOps fromHub
629
633
  */
630
- export function fromHub<In>(hub: Lazy<Hub<In>>, __tsplusTrace?: string): Sink<unknown, never, In, never, void> {
634
+ export function fromHub<In>(hub: Lazy<Hub<In>>, __tsplusTrace?: string): Sink<never, never, In, never, void> {
631
635
  return Sink.fromQueue(hub);
632
636
  }
633
637
 
@@ -640,7 +644,7 @@ export function fromHub<In>(hub: Lazy<Hub<In>>, __tsplusTrace?: string): Sink<un
640
644
  export function fromHubWithShutdown<In>(
641
645
  hub: Lazy<Hub<In>>,
642
646
  __tsplusTrace?: string,
643
- ): Sink<unknown, never, In, never, void> {
647
+ ): Sink<never, never, In, never, void> {
644
648
  return Sink.fromQueueWithShutdown(hub);
645
649
  }
646
650
 
@@ -658,7 +662,7 @@ export function fromIO<R, E, Z>(b: Lazy<IO<R, E, Z>>, __tsplusTrace?: string): S
658
662
  *
659
663
  * @tsplus static fncts.io.SinkOps halt
660
664
  */
661
- export function halt(defect: Lazy<unknown>, __tsplusTrace?: string): Sink<unknown, never, unknown, never, never> {
665
+ export function halt(defect: Lazy<unknown>, __tsplusTrace?: string): Sink<never, never, unknown, never, never> {
662
666
  return Sink.failCause(Cause.halt(defect()));
663
667
  }
664
668
 
@@ -667,7 +671,7 @@ export function halt(defect: Lazy<unknown>, __tsplusTrace?: string): Sink<unknow
667
671
  *
668
672
  * @tsplus static fncts.io.SinkOps haltNow
669
673
  */
670
- export function haltNow(defect: unknown, __tsplusTrace?: string): Sink<unknown, never, unknown, never, never> {
674
+ export function haltNow(defect: unknown, __tsplusTrace?: string): Sink<never, never, unknown, never, never> {
671
675
  return Sink.failCauseNow(Cause.halt(defect));
672
676
  }
673
677
 
@@ -676,9 +680,9 @@ export function haltNow(defect: unknown, __tsplusTrace?: string): Sink<unknown,
676
680
  *
677
681
  * @tsplus static fncts.io.SinkOps head
678
682
  */
679
- export function head<In>(__tsplusTrace?: string): Sink<unknown, never, In, In, Maybe<In>> {
683
+ export function head<In>(__tsplusTrace?: string): Sink<never, never, In, In, Maybe<In>> {
680
684
  return Sink.fold(
681
- Nothing(),
685
+ Nothing<In>(),
682
686
  (elem) => elem.isNothing(),
683
687
  (s, inp) =>
684
688
  s.match(
@@ -705,8 +709,8 @@ export function ignoreLeftover<R, E, In, L, Z>(
705
709
  *
706
710
  * @tsplus static fncts.io.SinkOps last
707
711
  */
708
- export function last<In>(__tsplusTrace?: string): Sink<unknown, never, In, In, Maybe<In>> {
709
- return Sink.foldLeft(Nothing(), (_, inp) => Just(inp));
712
+ export function last<In>(__tsplusTrace?: string): Sink<never, never, In, In, Maybe<In>> {
713
+ return Sink.foldLeft(Nothing<In>(), (_, inp) => Just(inp));
710
714
  }
711
715
 
712
716
  /**
@@ -715,7 +719,7 @@ export function last<In>(__tsplusTrace?: string): Sink<unknown, never, In, In, M
715
719
  *
716
720
  * @tsplus static fncts.io.SinkOps leftover
717
721
  */
718
- export function leftover<L>(c: Lazy<Conc<L>>, __tsplusTrace?: string): Sink<unknown, never, unknown, L, void> {
722
+ export function leftover<L>(c: Lazy<Conc<L>>, __tsplusTrace?: string): Sink<never, never, unknown, L, void> {
719
723
  return new Sink(Channel.write(c));
720
724
  }
721
725
 
@@ -724,7 +728,7 @@ export function leftover<L>(c: Lazy<Conc<L>>, __tsplusTrace?: string): Sink<unkn
724
728
  *
725
729
  * @tsplus static fncts.io.SinkOps log
726
730
  */
727
- export function log(message: Lazy<string>, __tsplusTrace?: string): Sink<unknown, never, unknown, never, void> {
731
+ export function log(message: Lazy<string>, __tsplusTrace?: string): Sink<never, never, unknown, never, void> {
728
732
  return Sink.fromIO(IO.log(message));
729
733
  }
730
734
 
@@ -733,11 +737,14 @@ export function log(message: Lazy<string>, __tsplusTrace?: string): Sink<unknown
733
737
  *
734
738
  * @tsplus static fncts.io.SinkOps collectAll
735
739
  */
736
- export function makeCollectAll<In>(): Sink<unknown, never, In, never, Conc<In>> {
740
+ export function makeCollectAll<In>(__tsplusTrace?: string): Sink<never, never, In, never, Conc<In>> {
737
741
  return new Sink(collectLoop<In>(Conc.empty()));
738
742
  }
739
743
 
740
- function collectLoop<A>(state: Conc<A>): Channel<unknown, never, Conc<A>, unknown, never, Conc<never>, Conc<A>> {
744
+ function collectLoop<A>(
745
+ state: Conc<A>,
746
+ __tsplusTrace?: string,
747
+ ): Channel<never, never, Conc<A>, unknown, never, Conc<never>, Conc<A>> {
741
748
  return Channel.readWithCause(
742
749
  (inp: Conc<A>) => collectLoop(state.concat(inp)),
743
750
  Channel.failCauseNow,
@@ -751,7 +758,7 @@ function collectLoop<A>(state: Conc<A>): Channel<unknown, never, Conc<A>, unknow
751
758
  *
752
759
  * @tsplus static fncts.io.SinkOps collectAllN
753
760
  */
754
- export function makeCollectAllN<In>(n: Lazy<number>): Sink<unknown, never, In, In, Conc<In>> {
761
+ export function makeCollectAllN<In>(n: Lazy<number>, __tsplusTrace?: string): Sink<never, never, In, In, Conc<In>> {
755
762
  return Sink.fromIO(IO.succeed(new ConcBuilder<In>())).flatMap((builder) =>
756
763
  Sink.foldUntil<In, ConcBuilder<In>>(builder, n, (builder, inp) => builder.append(inp)).map((builder) =>
757
764
  builder.result(),
@@ -814,6 +821,7 @@ function foreachWhileLoop<R, Err, In>(
814
821
  idx: number,
815
822
  len: number,
816
823
  cont: Channel<R, Err, Conc<In>, unknown, Err, Conc<In>, void>,
824
+ __tsplusTrace?: string,
817
825
  ): Channel<R, Err, Conc<In>, unknown, Err, Conc<In>, void> {
818
826
  if (idx === len) {
819
827
  return cont;
@@ -853,7 +861,7 @@ export function makeFold<In, S>(
853
861
  contFn: Predicate<S>,
854
862
  f: (s: S, inp: In) => S,
855
863
  __tsplusTrace?: string,
856
- ): Sink<unknown, never, In, In, S> {
864
+ ): Sink<never, never, In, In, S> {
857
865
  return Sink.defer(new Sink(foldReader(z(), contFn, f)));
858
866
  }
859
867
 
@@ -867,6 +875,7 @@ function foldChunkSplit<S, In>(
867
875
  chunk: Conc<In>,
868
876
  idx: number,
869
877
  len: number,
878
+ __tsplusTrace?: string,
870
879
  ): readonly [S, Conc<In>] {
871
880
  if (idx === len) {
872
881
  return [s, Conc.empty()];
@@ -884,7 +893,8 @@ function foldReader<S, In>(
884
893
  s: S,
885
894
  contFn: Predicate<S>,
886
895
  f: (s: S, inp: In) => S,
887
- ): Channel<unknown, never, Conc<In>, any, never, Conc<In>, S> {
896
+ __tsplusTrace?: string,
897
+ ): Channel<never, never, Conc<In>, any, never, Conc<In>, S> {
888
898
  if (!contFn(s)) {
889
899
  return Channel.succeedNow(s);
890
900
  } else {
@@ -916,7 +926,7 @@ export function makeFoldUntil<In, S>(
916
926
  max: Lazy<number>,
917
927
  f: (s: S, inp: In) => S,
918
928
  __tsplusTrace?: string,
919
- ): Sink<unknown, never, In, In, S> {
929
+ ): Sink<never, never, In, In, S> {
920
930
  return Sink.unwrap(
921
931
  IO.succeed(max).map((max) =>
922
932
  Sink.fold<In, readonly [S, number]>(
@@ -941,7 +951,7 @@ export function makeFoldChunks<In, S>(
941
951
  contFn: Predicate<S>,
942
952
  f: (s: S, inp: Conc<In>) => S,
943
953
  __tsplusTrace?: string,
944
- ): Sink<unknown, never, In, never, S> {
954
+ ): Sink<never, never, In, never, S> {
945
955
  return Sink.defer(new Sink(foldChunksReader(z(), contFn, f)));
946
956
  }
947
957
 
@@ -949,7 +959,8 @@ function foldChunksReader<In, S>(
949
959
  s: S,
950
960
  contFn: Predicate<S>,
951
961
  f: (s: S, inp: Conc<In>) => S,
952
- ): Channel<unknown, never, Conc<In>, unknown, never, never, S> {
962
+ __tsplusTrace?: string,
963
+ ): Channel<never, never, Conc<In>, unknown, never, never, S> {
953
964
  if (!contFn(s)) {
954
965
  return Channel.succeedNow(s);
955
966
  } else {
@@ -985,6 +996,7 @@ function foldChunksIOReader<Env, Err, In, S>(
985
996
  s: S,
986
997
  contFn: Predicate<S>,
987
998
  f: (s: S, inp: Conc<In>) => IO<Env, Err, S>,
999
+ __tsplusTrace?: string,
988
1000
  ): Channel<Env, Err, Conc<In>, unknown, Err, never, S> {
989
1001
  if (!contFn(s)) {
990
1002
  return Channel.succeedNow(s);
@@ -1002,7 +1014,11 @@ function foldChunksIOReader<Env, Err, In, S>(
1002
1014
  *
1003
1015
  * @tsplus static fncts.io.SinkOps foldLeft
1004
1016
  */
1005
- export function makeFoldLeft<In, S>(z: Lazy<S>, f: (s: S, inp: In) => S): Sink<unknown, never, In, never, S> {
1017
+ export function makeFoldLeft<In, S>(
1018
+ z: Lazy<S>,
1019
+ f: (s: S, inp: In) => S,
1020
+ __tsplusTrace?: string,
1021
+ ): Sink<never, never, In, never, S> {
1006
1022
  return Sink.fold(z, () => true, f).ignoreLeftover;
1007
1023
  }
1008
1024
 
@@ -1015,7 +1031,8 @@ export function makeFoldLeft<In, S>(z: Lazy<S>, f: (s: S, inp: In) => S): Sink<u
1015
1031
  export function makeFoldLeftChunks<In, S>(
1016
1032
  z: Lazy<S>,
1017
1033
  f: (s: S, inp: Conc<In>) => S,
1018
- ): Sink<unknown, never, In, never, S> {
1034
+ __tsplusTrace?: string,
1035
+ ): Sink<never, never, In, never, S> {
1019
1036
  return Sink.foldChunks(z, () => true, f).ignoreLeftover;
1020
1037
  }
1021
1038
 
@@ -1057,6 +1074,7 @@ export function makeFoldIO<R, E, In, S>(
1057
1074
  z: Lazy<S>,
1058
1075
  contFn: Predicate<S>,
1059
1076
  f: (s: S, inp: In) => IO<R, E, S>,
1077
+ __tsplusTrace?: string,
1060
1078
  ): Sink<R, E, In, In, S> {
1061
1079
  return Sink.defer(new Sink(foldIOReader(z(), contFn, f)));
1062
1080
  }
@@ -1068,6 +1086,7 @@ function foldChunkSplitIO<R, E, In, S>(
1068
1086
  chunk: Conc<In>,
1069
1087
  idx: number,
1070
1088
  len: number,
1089
+ __tsplusTrace?: string,
1071
1090
  ): IO<R, E, readonly [S, Maybe<Conc<In>>]> {
1072
1091
  if (idx === len) {
1073
1092
  return IO.succeedNow([s, Nothing()]);
@@ -1086,6 +1105,7 @@ function foldIOReader<R, E, In, S>(
1086
1105
  s: S,
1087
1106
  contFn: (s: S) => boolean,
1088
1107
  f: (s: S, inp: In) => IO<R, E, S>,
1108
+ __tsplusTrace?: string,
1089
1109
  ): Channel<R, E, Conc<In>, unknown, E, Conc<In>, S> {
1090
1110
  if (!contFn(s)) {
1091
1111
  return Channel.succeedNow(s);
@@ -1151,7 +1171,7 @@ export function makeFoldWeightedDecompose<In, S>(
1151
1171
  decompose: (inp: In) => Conc<In>,
1152
1172
  f: (s: S, inp: In) => S,
1153
1173
  __tsplusTrace?: string,
1154
- ): Sink<unknown, never, In, In, S> {
1174
+ ): Sink<never, never, In, In, S> {
1155
1175
  return Sink.defer(() => {
1156
1176
  /**
1157
1177
  * @tsplus tailRec
@@ -1163,6 +1183,7 @@ export function makeFoldWeightedDecompose<In, S>(
1163
1183
  dirty: boolean,
1164
1184
  cost: number,
1165
1185
  idx: number,
1186
+ __tsplusTrace?: string,
1166
1187
  ): readonly [S, number, boolean, Conc<In>] {
1167
1188
  if (idx === inp.length) {
1168
1189
  return [s, cost, dirty, Conc.empty()];
@@ -1190,7 +1211,8 @@ export function makeFoldWeightedDecompose<In, S>(
1190
1211
  cost: number,
1191
1212
  dirty: boolean,
1192
1213
  max: number,
1193
- ): Channel<unknown, never, Conc<In>, unknown, never, Conc<In>, S> {
1214
+ __tsplusTrace?: string,
1215
+ ): Channel<never, never, Conc<In>, unknown, never, Conc<In>, S> {
1194
1216
  return Channel.readWith(
1195
1217
  (inp: Conc<In>) => {
1196
1218
  const [nextS, nextCost, nextDirty, leftovers] = fold(inp, s, max, dirty, cost, 0);
@@ -1233,7 +1255,7 @@ export function makeFoldWeightedDecomposeIO<R, E, In, S, R1, E1, R2, E2>(
1233
1255
  decompose: (inp: In) => IO<R2, E2, Conc<In>>,
1234
1256
  f: (s: S, inp: In) => IO<R, E, S>,
1235
1257
  __tsplusTrace?: string,
1236
- ): Sink<R & R1 & R2, E | E1 | E2, In, In, S> {
1258
+ ): Sink<R | R1 | R2, E | E1 | E2, In, In, S> {
1237
1259
  return Sink.defer(() => {
1238
1260
  function fold(
1239
1261
  inp: Conc<In>,
@@ -1242,7 +1264,8 @@ export function makeFoldWeightedDecomposeIO<R, E, In, S, R1, E1, R2, E2>(
1242
1264
  dirty: boolean,
1243
1265
  cost: number,
1244
1266
  idx: number,
1245
- ): IO<R & R1 & R2, E | E1 | E2, readonly [S, number, boolean, Conc<In>]> {
1267
+ __tsplusTrace?: string,
1268
+ ): IO<R | R1 | R2, E | E1 | E2, readonly [S, number, boolean, Conc<In>]> {
1246
1269
  if (idx === inp.length) {
1247
1270
  return IO.succeedNow([s, cost, dirty, Conc.empty()]);
1248
1271
  } else {
@@ -1271,7 +1294,8 @@ export function makeFoldWeightedDecomposeIO<R, E, In, S, R1, E1, R2, E2>(
1271
1294
  cost: number,
1272
1295
  dirty: boolean,
1273
1296
  max: number,
1274
- ): Channel<R & R1 & R2, E | E1 | E2, Conc<In>, unknown, E | E1 | E2, Conc<In>, S> {
1297
+ __tsplusTrace?: string,
1298
+ ): Channel<R | R1 | R2, E | E1 | E2, Conc<In>, unknown, E | E1 | E2, Conc<In>, S> {
1275
1299
  return Channel.readWith(
1276
1300
  (inp: Conc<In>) =>
1277
1301
  Channel.fromIO(fold(inp, s, max, dirty, cost, 0)).flatMap(([nextS, nextCost, nextDirty, leftovers]) => {
@@ -1310,7 +1334,7 @@ export function makeFoldWeighted<In, S>(
1310
1334
  max: Lazy<number>,
1311
1335
  f: (s: S, inp: In) => S,
1312
1336
  __tsplusTrace?: string,
1313
- ): Sink<unknown, never, In, In, S> {
1337
+ ): Sink<never, never, In, In, S> {
1314
1338
  return Sink.foldWeightedDecompose(z, costFn, max, Conc.single, f);
1315
1339
  }
1316
1340
 
@@ -1332,7 +1356,7 @@ export function makeFoldWeightedIO<R, E, In, S, R1, E1>(
1332
1356
  max: Lazy<number>,
1333
1357
  f: (s: S, inp: In) => IO<R1, E1, S>,
1334
1358
  __tsplusTrace?: string,
1335
- ): Sink<R & R1, E | E1, In, In, S> {
1359
+ ): Sink<R | R1, E | E1, In, In, S> {
1336
1360
  return Sink.foldWeightedDecomposeIO(z, costFn, max, (inp) => IO.succeedNow(Conc.single(inp)), f);
1337
1361
  }
1338
1362
 
@@ -1371,7 +1395,7 @@ export function mapIO_<R, E, In, L, Z, R1, E1, Z1>(
1371
1395
  self: Sink<R, E, In, L, Z>,
1372
1396
  f: (z: Z) => IO<R1, E1, Z1>,
1373
1397
  __tsplusTrace?: string,
1374
- ): Sink<R & R1, E | E1, In, L, Z1> {
1398
+ ): Sink<R | R1, E | E1, In, L, Z1> {
1375
1399
  return new Sink(self.channel.mapIO(f));
1376
1400
  }
1377
1401
 
@@ -1389,8 +1413,8 @@ export function matchSink_<R, E, In, L, Z, R1, E1, In1 extends In, L1, Z1, R2, E
1389
1413
  onFailure: (e: E) => Sink<R1, E1, In1, L1, Z1>,
1390
1414
  onSuccess: (z: Z) => Sink<R2, E2, In2, L2, Z2>,
1391
1415
  __tsplusTrace?: string,
1392
- ): Sink<R & R1 & R2, E1 | E2, In1 & In2, L | L1 | L2, Z1 | Z2> {
1393
- return new Sink<R & R1 & R2, E1 | E2, In1 & In2, L | L1 | L2, Z1 | Z2>(
1416
+ ): Sink<R | R1 | R2, E1 | E2, In1 & In2, L | L1 | L2, Z1 | Z2> {
1417
+ return new Sink<R | R1 | R2, E1 | E2, In1 & In2, L | L1 | L2, Z1 | Z2>(
1394
1418
  self.channel.doneCollect.matchChannel(
1395
1419
  (e) => onFailure(e).channel,
1396
1420
  ([leftovers, z]) =>
@@ -1419,8 +1443,8 @@ export function orElse<R, E, In, L, Z, R1, E1, In1, L1, Z1>(
1419
1443
  self: Sink<R, E, In, L, Z>,
1420
1444
  that: Lazy<Sink<R1, E1, In1, L1, Z1>>,
1421
1445
  __tsplusTrace?: string,
1422
- ): Sink<R & R1, E | E1, In & In1, L | L1, Z | Z1> {
1423
- return Sink.defer(new Sink<R & R1, E | E1, In & In1, L | L1, Z | Z1>(self.channel.orElse(that().channel)));
1446
+ ): Sink<R | R1, E | E1, In & In1, L | L1, Z | Z1> {
1447
+ return Sink.defer(new Sink<R | R1, E | E1, In & In1, L | L1, Z | Z1>(self.channel.orElse(that().channel)));
1424
1448
  }
1425
1449
 
1426
1450
  /**
@@ -1433,7 +1457,7 @@ export function provideEnvironment<R, E, In, L, Z>(
1433
1457
  self: Sink<R, E, In, L, Z>,
1434
1458
  r: Lazy<Environment<R>>,
1435
1459
  __tsplusTrace?: string,
1436
- ): Sink<unknown, E, In, L, Z> {
1460
+ ): Sink<never, E, In, L, Z> {
1437
1461
  return new Sink(self.channel.provideEnvironment(r));
1438
1462
  }
1439
1463
 
@@ -1447,7 +1471,7 @@ export function race<R, E, In, L, Z, R1, E1, In1, L1, Z1>(
1447
1471
  self: Sink<R, E, In, L, Z>,
1448
1472
  that: Lazy<Sink<R1, E1, In1, L1, Z1>>,
1449
1473
  __tsplusTrace?: string,
1450
- ): Sink<R & R1, E | E1, In & In1, L | L1, Z | Z1> {
1474
+ ): Sink<R | R1, E | E1, In & In1, L | L1, Z | Z1> {
1451
1475
  return self.raceBoth(that).map((result) => result.value);
1452
1476
  }
1453
1477
 
@@ -1462,7 +1486,7 @@ export function raceBoth<R, E, In, L, Z, R1, E1, In1, L1, Z1>(
1462
1486
  that: Lazy<Sink<R1, E1, In1, L1, Z1>>,
1463
1487
  capacity: Lazy<number> = () => 16,
1464
1488
  __tsplusTrace?: string,
1465
- ): Sink<R & R1, E | E1, In & In1, L | L1, Either<Z, Z1>> {
1489
+ ): Sink<R | R1, E | E1, In & In1, L | L1, Either<Z, Z1>> {
1466
1490
  return self.raceWith(
1467
1491
  that,
1468
1492
  (selfDone) => MergeDecision.Done(IO.fromExitNow(selfDone).map(Either.left)),
@@ -1484,7 +1508,7 @@ export function raceWith<R, E, In, L, Z, R1, E1, In1, L1, Z1, R2, E2, Z2, R3, E3
1484
1508
  rightDone: (exit: Exit<E1, Z1>) => MergeDecision<R, E, Z, E3, Z3>,
1485
1509
  capacity: Lazy<number> = () => 16,
1486
1510
  __tsplusTrace?: string,
1487
- ): Sink<R & R1 & R2 & R3, E2 | E3, In & In1, L | L1, Z2 | Z3> {
1511
+ ): Sink<R | R1 | R2 | R3, E2 | E3, In & In1, L | L1, Z2 | Z3> {
1488
1512
  const scoped = IO.defer(() => {
1489
1513
  const that0 = that();
1490
1514
  const capacity0 = capacity();
@@ -1499,7 +1523,7 @@ export function raceWith<R, E, In, L, Z, R1, E1, In1, L1, Z1, R2, E2, Z2, R3, E3
1499
1523
  () => MergeDecision.Await(IO.fromExitNow),
1500
1524
  (done) => MergeDecision.Done(IO.fromExitNow(done)),
1501
1525
  );
1502
- return new Sink<R & R1 & R2 & R3, E2 | E3, In & In1, L | L1, Z2 | Z3>(channel);
1526
+ return new Sink<R | R1 | R2 | R3, E2 | E3, In & In1, L | L1, Z2 | Z3>(channel);
1503
1527
  });
1504
1528
  });
1505
1529
  return Sink.unwrapScoped(scoped);
@@ -1510,7 +1534,7 @@ export function raceWith<R, E, In, L, Z, R1, E1, In1, L1, Z1, R2, E2, Z2, R3, E3
1510
1534
  *
1511
1535
  * @tsplus static fncts.io.SinkOps service
1512
1536
  */
1513
- export function service<S>(/** @tsplus auto */ tag: Tag<S>): Sink<Has<S>, never, unknown, never, S> {
1537
+ export function service<S>(/** @tsplus auto */ tag: Tag<S>): Sink<S, never, unknown, never, S> {
1514
1538
  return Sink.serviceWith(Function.identity);
1515
1539
  }
1516
1540
 
@@ -1522,7 +1546,7 @@ export function service<S>(/** @tsplus auto */ tag: Tag<S>): Sink<Has<S>, never,
1522
1546
  export function serviceWith<S, Z>(
1523
1547
  f: (service: S) => Z,
1524
1548
  /** @tsplus auto */ tag: Tag<S>,
1525
- ): Sink<Has<S>, never, unknown, never, Z> {
1549
+ ): Sink<S, never, unknown, never, Z> {
1526
1550
  return Sink.fromIO(IO.serviceWith(f, tag));
1527
1551
  }
1528
1552
 
@@ -1535,7 +1559,7 @@ export function serviceWith<S, Z>(
1535
1559
  export function serviceWithIO<S, R, E, Z>(
1536
1560
  f: (service: S) => IO<R, E, Z>,
1537
1561
  /** @tsplus auto */ tag: Tag<S>,
1538
- ): Sink<Has<S> & R, E, unknown, never, Z> {
1562
+ ): Sink<S | R, E, unknown, never, Z> {
1539
1563
  return Sink.fromIO(IO.serviceWithIO(f, tag));
1540
1564
  }
1541
1565
 
@@ -1548,7 +1572,7 @@ export function serviceWithIO<S, R, E, Z>(
1548
1572
  export function serviceWithSink<S, R, E, In, L, Z>(
1549
1573
  f: (service: S) => Sink<R, E, In, L, Z>,
1550
1574
  /** @tsplus auto */ tag: Tag<S>,
1551
- ): Sink<Has<S> & R, E, In, L, Z> {
1575
+ ): Sink<S | R, E, In, L, Z> {
1552
1576
  return new Sink(
1553
1577
  Channel.unwrap(
1554
1578
  IO.serviceWith(
@@ -1588,6 +1612,7 @@ function splitter<R, E, In>(
1588
1612
  p: Predicate<In>,
1589
1613
  written: boolean,
1590
1614
  leftovers: Ref<Conc<In>>,
1615
+ __tsplusTrace?: string,
1591
1616
  ): Channel<R, never, Conc<In>, unknown, E, Conc<In>, unknown> {
1592
1617
  return Channel.readWithCause(
1593
1618
  (inp) => {
@@ -1621,7 +1646,7 @@ function splitter<R, E, In>(
1621
1646
  *
1622
1647
  * @tsplus static fncts.io.SinkOps succeed
1623
1648
  */
1624
- export function succeed<Z>(z: Lazy<Z>, __tsplusTrace?: string): Sink<unknown, never, unknown, never, Z> {
1649
+ export function succeed<Z>(z: Lazy<Z>, __tsplusTrace?: string): Sink<never, never, unknown, never, Z> {
1625
1650
  return new Sink(Channel.succeed(z));
1626
1651
  }
1627
1652
 
@@ -1630,7 +1655,7 @@ export function succeed<Z>(z: Lazy<Z>, __tsplusTrace?: string): Sink<unknown, ne
1630
1655
  *
1631
1656
  * @tsplus static fncts.io.SinkOps succeedNow
1632
1657
  */
1633
- export function succeedNow<Z>(z: Z, __tsplusTrace?: string): Sink<unknown, never, unknown, never, Z> {
1658
+ export function succeedNow<Z>(z: Z, __tsplusTrace?: string): Sink<never, never, unknown, never, Z> {
1634
1659
  return new Sink(Channel.succeedNow(z));
1635
1660
  }
1636
1661
 
@@ -1645,12 +1670,12 @@ export function summarized<R, E, In, L, Z, R1, E1, B, C>(
1645
1670
  summary: Lazy<IO<R1, E1, B>>,
1646
1671
  f: (b1: B, b2: B) => C,
1647
1672
  __tsplusTrace?: string,
1648
- ): Sink<R & R1, E | E1, In, L, readonly [Z, C]> {
1673
+ ): Sink<R | R1, E | E1, In, L, readonly [Z, C]> {
1649
1674
  return new Sink(
1650
1675
  Channel.unwrap(
1651
1676
  IO.succeed(summary).map((summary) =>
1652
1677
  Channel.fromIO(summary).flatMap((start) =>
1653
- self.channel.flatMap((done) => Channel.fromIO(summary).map((end) => [done, f(start, end)])),
1678
+ self.channel.flatMap((done) => Channel.fromIO(summary).map((end) => Function.tuple(done, f(start, end)))),
1654
1679
  ),
1655
1680
  ),
1656
1681
  ),
@@ -1674,7 +1699,8 @@ export function timed<R, E, In, L, Z>(
1674
1699
  */
1675
1700
  export function unwrap<R, E, R1, E1, In, L, Z>(
1676
1701
  io: Lazy<IO<R, E, Sink<R1, E1, In, L, Z>>>,
1677
- ): Sink<R & R1, E | E1, In, L, Z> {
1702
+ __tsplusTrace?: string,
1703
+ ): Sink<R | R1, E | E1, In, L, Z> {
1678
1704
  return new Sink(Channel.unwrap(io().map((sink) => sink.channel)));
1679
1705
  }
1680
1706
 
@@ -1684,9 +1710,9 @@ export function unwrap<R, E, R1, E1, In, L, Z>(
1684
1710
  * @tsplus static fncts.io.SinkOps unwrapScoped
1685
1711
  */
1686
1712
  export function unwrapScoped<R, E, R1, E1, In, L, Z>(
1687
- scoped: Lazy<IO<Has<Scope> & R, E, Sink<R1, E1, In, L, Z>>>,
1713
+ scoped: Lazy<IO<R, E, Sink<R1, E1, In, L, Z>>>,
1688
1714
  __tsplusTrace?: string,
1689
- ): Sink<R & R1, E | E1, In, L, Z> {
1715
+ ): Sink<Exclude<R, Scope> | R1, E | E1, In, L, Z> {
1690
1716
  return new Sink(Channel.unwrapScoped(scoped().map((sink) => sink.channel)));
1691
1717
  }
1692
1718
 
@@ -1701,7 +1727,7 @@ export function zip<R, E, In, L, Z, R1, E1, In1 extends In, L1 extends L, Z1>(
1701
1727
  self: Sink<R, E, In, L, Z>,
1702
1728
  that: Lazy<Sink<R1, E1, In1, L1, Z1>>,
1703
1729
  __tsplusTrace?: string,
1704
- ): Sink<R & R1, E | E1, In & In1, L | L1, readonly [Z, Z1]> {
1730
+ ): Sink<R | R1, E | E1, In & In1, L | L1, readonly [Z, Z1]> {
1705
1731
  return self.zipWith(that, Function.tuple);
1706
1732
  }
1707
1733
 
@@ -1715,7 +1741,7 @@ export function zipC<R, E, In, L, Z, R1, E1, In1 extends In, L1 extends L, Z1>(
1715
1741
  self: Sink<R, E, In, L, Z>,
1716
1742
  that: Lazy<Sink<R1, E1, In1, L1, Z1>>,
1717
1743
  __tsplusTrace?: string,
1718
- ): Sink<R & R1, E | E1, In & In1, L | L1, readonly [Z, Z1]> {
1744
+ ): Sink<R | R1, E | E1, In & In1, L | L1, readonly [Z, Z1]> {
1719
1745
  return self.zipWithC(that, Function.tuple);
1720
1746
  }
1721
1747
 
@@ -1731,7 +1757,7 @@ export function zipWith<R, E, In, L, Z, R1, E1, In1 extends In, L1 extends L, Z1
1731
1757
  that: Lazy<Sink<R1, E1, In1, L1, Z1>>,
1732
1758
  f: (z: Z, z1: Z1) => Z2,
1733
1759
  __tsplusTrace?: string,
1734
- ): Sink<R & R1, E | E1, In & In1, L | L1, Z2> {
1760
+ ): Sink<R | R1, E | E1, In & In1, L | L1, Z2> {
1735
1761
  return Sink.defer(self().flatMap((z) => that().map((z1) => f(z, z1))));
1736
1762
  }
1737
1763
 
@@ -1746,7 +1772,7 @@ export function zipWithC<R, E, In, L, Z, R1, E1, In1, L1, Z1, Z2>(
1746
1772
  that: Lazy<Sink<R1, E1, In1, L1, Z1>>,
1747
1773
  f: (z: Z, z1: Z1) => Z2,
1748
1774
  __tsplusTrace?: string,
1749
- ): Sink<R & R1, E | E1, In & In1, L | L1, Z2> {
1775
+ ): Sink<R | R1, E | E1, In & In1, L | L1, Z2> {
1750
1776
  return Sink.defer(
1751
1777
  self().raceWith(
1752
1778
  that(),