@fncts/io 0.0.21 → 0.0.22

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 (1535) hide show
  1. package/Channel/api/mapOutConcurrentIO.d.ts +8 -0
  2. package/Channel/api/zipConcurrent.d.ts +16 -0
  3. package/Channel/api.d.ts +5 -5
  4. package/Channel/core-api.d.ts +4 -4
  5. package/Channel/internal/SingleProducerAsyncInput.d.ts +1 -1
  6. package/CountdownLatch.d.ts +25 -0
  7. package/Fiber/FiberMessage.d.ts +67 -0
  8. package/Fiber/FiberRuntime.d.ts +116 -0
  9. package/Fiber/api/interrupt.d.ts +1 -1
  10. package/Fiber/api/interruptAs.d.ts +8 -3
  11. package/Fiber/api/location.d.ts +1 -2
  12. package/Fiber/definition.d.ts +17 -16
  13. package/Fiber.d.ts +2 -4
  14. package/FiberDescriptor.d.ts +3 -6
  15. package/FiberRef/definition.d.ts +2 -2
  16. package/FiberRef/unsafe.d.ts +5 -0
  17. package/FiberRefs/api.d.ts +28 -0
  18. package/FiberRefs/definition.d.ts +14 -7
  19. package/FiberScope/constructors.d.ts +2 -2
  20. package/FiberScope/definition.d.ts +8 -5
  21. package/FiberStatus/constructors.d.ts +3 -7
  22. package/FiberStatus/definition.d.ts +16 -28
  23. package/Hub/api.d.ts +192 -0
  24. package/Hub/definition.d.ts +84 -36
  25. package/Hub/internal.d.ts +11 -4
  26. package/Hub.d.ts +1 -1
  27. package/IO/api/asyncInterrupt.d.ts +39 -0
  28. package/IO/api/core-scope.d.ts +6 -42
  29. package/IO/api/delay.d.ts +8 -0
  30. package/IO/api/{foreachC.d.ts → foreachConcurrent.d.ts} +8 -8
  31. package/IO/api/fork.d.ts +36 -0
  32. package/IO/api/interrupt.d.ts +13 -17
  33. package/IO/api/race.d.ts +1 -1
  34. package/IO/api/supervised.d.ts +4 -6
  35. package/IO/api/zipConcurrent.d.ts +13 -0
  36. package/IO/api.d.ts +36 -137
  37. package/IO/definition.d.ts +120 -145
  38. package/IO/runtime.d.ts +19 -22
  39. package/IO.d.ts +5 -3
  40. package/Layer/MemoMap.d.ts +1 -1
  41. package/Push/api.d.ts +232 -0
  42. package/Push/definition.d.ts +34 -0
  43. package/Push/internal.d.ts +11 -0
  44. package/Push.d.ts +3 -0
  45. package/Queue/api/dimapIO.d.ts +98 -0
  46. package/Queue/api/filterInputIO.d.ts +25 -0
  47. package/Queue/api/filterOutputIO.d.ts +20 -0
  48. package/Queue/api/operations.d.ts +83 -0
  49. package/Queue/api/poll.d.ts +9 -0
  50. package/Queue/api/takeBetween.d.ts +11 -0
  51. package/Queue/api/zipWithIO.d.ts +27 -0
  52. package/Queue/api.d.ts +7 -0
  53. package/Queue/constructors.d.ts +1 -2
  54. package/Queue/definition.d.ts +170 -75
  55. package/Queue/internal.d.ts +4 -2
  56. package/Queue.d.ts +2 -0
  57. package/Ref/Atomic.d.ts +15 -8
  58. package/Ref/Derived.d.ts +16 -0
  59. package/Ref/DerivedAll.d.ts +18 -0
  60. package/Ref/Synchronized/api.d.ts +102 -0
  61. package/Ref/Synchronized/constructors.d.ts +8 -0
  62. package/Ref/Synchronized/definition.d.ts +44 -0
  63. package/Ref/Synchronized.d.ts +3 -72
  64. package/Ref/api/collect.d.ts +11 -0
  65. package/Ref/api/dimap.d.ts +56 -0
  66. package/Ref/api/filter.d.ts +21 -0
  67. package/Ref/api/get.d.ts +9 -0
  68. package/Ref/api/match.d.ts +13 -0
  69. package/Ref/api/matchAll.d.ts +11 -0
  70. package/Ref/api/modify.d.ts +79 -0
  71. package/Ref/api/set.d.ts +10 -0
  72. package/Ref/api.d.ts +23 -0
  73. package/Ref/constructors.d.ts +1 -8
  74. package/Ref/definition.d.ts +79 -55
  75. package/Ref/symbols.d.ts +30 -0
  76. package/Ref.d.ts +7 -0
  77. package/RefSubject/Atomic.d.ts +36 -0
  78. package/RefSubject/Synchronized/api.d.ts +9 -0
  79. package/RefSubject/Synchronized/definition.d.ts +40 -0
  80. package/RefSubject/api.d.ts +116 -0
  81. package/RefSubject/definition.d.ts +45 -0
  82. package/RefSubject.d.ts +3 -0
  83. package/RuntimeConfig.d.ts +0 -24
  84. package/RuntimeFlag.d.ts +10 -0
  85. package/RuntimeFlags/Patch.d.ts +53 -0
  86. package/RuntimeFlags/RuntimeFlags.d.ts +82 -0
  87. package/RuntimeFlags.d.ts +2 -0
  88. package/Schedule/api.d.ts +33 -17
  89. package/Scope/ReleaseMap/definition.d.ts +1 -1
  90. package/ScopedRef/api.d.ts +1 -1
  91. package/Sink/api.d.ts +12 -12
  92. package/Stream/api.d.ts +20 -19
  93. package/Stream/internal/Handoff.d.ts +1 -1
  94. package/Stream/internal/Pull.d.ts +2 -2
  95. package/Subject/Atomic.d.ts +18 -0
  96. package/Subject/api.d.ts +13 -0
  97. package/Subject/definition.d.ts +15 -0
  98. package/Subject.d.ts +3 -0
  99. package/SubscriptionRef.d.ts +16 -7
  100. package/TExit/definition.d.ts +2 -2
  101. package/TFuture/definition.d.ts +2 -2
  102. package/TReentrantLock/definition.d.ts +3 -3
  103. package/TRef/api.d.ts +14 -15
  104. package/TRef/constructors.d.ts +6 -6
  105. package/TRef/definition.d.ts +47 -34
  106. package/TRef/symbols.d.ts +20 -0
  107. package/TRef.d.ts +1 -0
  108. package/TSemaphore/definition.d.ts +2 -2
  109. package/_cjs/Cached/api.cjs +1 -24
  110. package/_cjs/Cached/api.cjs.map +1 -1
  111. package/_cjs/Cached/definition.cjs +2 -7
  112. package/_cjs/Cached/definition.cjs.map +1 -1
  113. package/_cjs/Cached/internal.cjs +0 -3
  114. package/_cjs/Cached/internal.cjs.map +1 -1
  115. package/_cjs/Cached.cjs +0 -6
  116. package/_cjs/Cached.cjs.map +1 -1
  117. package/_cjs/CancellerState.cjs +3 -22
  118. package/_cjs/CancellerState.cjs.map +1 -1
  119. package/_cjs/Channel/ChildExecutorDecision/api.cjs +0 -3
  120. package/_cjs/Channel/ChildExecutorDecision/api.cjs.map +1 -1
  121. package/_cjs/Channel/ChildExecutorDecision/definition.cjs +0 -5
  122. package/_cjs/Channel/ChildExecutorDecision/definition.cjs.map +1 -1
  123. package/_cjs/Channel/ChildExecutorDecision.cjs +0 -4
  124. package/_cjs/Channel/ChildExecutorDecision.cjs.map +1 -1
  125. package/_cjs/Channel/UpstreamPullRequest/api.cjs +0 -7
  126. package/_cjs/Channel/UpstreamPullRequest/api.cjs.map +1 -1
  127. package/_cjs/Channel/UpstreamPullRequest/definition.cjs +0 -6
  128. package/_cjs/Channel/UpstreamPullRequest/definition.cjs.map +1 -1
  129. package/_cjs/Channel/UpstreamPullRequest.cjs +0 -4
  130. package/_cjs/Channel/UpstreamPullRequest.cjs.map +1 -1
  131. package/_cjs/Channel/UpstreamPullStrategy/definition.cjs +0 -4
  132. package/_cjs/Channel/UpstreamPullStrategy/definition.cjs.map +1 -1
  133. package/_cjs/Channel/UpstreamPullStrategy.cjs +0 -2
  134. package/_cjs/Channel/UpstreamPullStrategy.cjs.map +1 -1
  135. package/_cjs/Channel/api/interruptWhen.cjs +0 -12
  136. package/_cjs/Channel/api/interruptWhen.cjs.map +1 -1
  137. package/_cjs/Channel/api/mapOutConcurrentIO.cjs +42 -0
  138. package/_cjs/Channel/api/mapOutConcurrentIO.cjs.map +1 -0
  139. package/_cjs/Channel/api/mergeAll.cjs +0 -4
  140. package/_cjs/Channel/api/mergeAll.cjs.map +1 -1
  141. package/_cjs/Channel/api/mergeAllUnboundedWith.cjs +0 -4
  142. package/_cjs/Channel/api/mergeAllUnboundedWith.cjs.map +1 -1
  143. package/_cjs/Channel/api/mergeAllWith.cjs +39 -66
  144. package/_cjs/Channel/api/mergeAllWith.cjs.map +1 -1
  145. package/_cjs/Channel/api/mergeMap.cjs +0 -5
  146. package/_cjs/Channel/api/mergeMap.cjs.map +1 -1
  147. package/_cjs/Channel/api/mergeWith.cjs +10 -44
  148. package/_cjs/Channel/api/mergeWith.cjs.map +1 -1
  149. package/_cjs/Channel/api/run.cjs +0 -6
  150. package/_cjs/Channel/api/run.cjs.map +1 -1
  151. package/_cjs/Channel/api/runCollect.cjs +0 -5
  152. package/_cjs/Channel/api/runCollect.cjs.map +1 -1
  153. package/_cjs/Channel/api/runDrain.cjs +0 -5
  154. package/_cjs/Channel/api/runDrain.cjs.map +1 -1
  155. package/_cjs/Channel/api/runScoped.cjs +4 -26
  156. package/_cjs/Channel/api/runScoped.cjs.map +1 -1
  157. package/_cjs/Channel/api/toPull.cjs +4 -26
  158. package/_cjs/Channel/api/toPull.cjs.map +1 -1
  159. package/_cjs/Channel/api/{zipC.cjs → zipConcurrent.cjs} +16 -30
  160. package/_cjs/Channel/api/zipConcurrent.cjs.map +1 -0
  161. package/_cjs/Channel/api.cjs +70 -241
  162. package/_cjs/Channel/api.cjs.map +1 -1
  163. package/_cjs/Channel/core-api.cjs +6 -30
  164. package/_cjs/Channel/core-api.cjs.map +1 -1
  165. package/_cjs/Channel/definition.cjs +19 -105
  166. package/_cjs/Channel/definition.cjs.map +1 -1
  167. package/_cjs/Channel/internal/ChannelExecutor.cjs +107 -317
  168. package/_cjs/Channel/internal/ChannelExecutor.cjs.map +1 -1
  169. package/_cjs/Channel/internal/ChannelState.cjs +5 -37
  170. package/_cjs/Channel/internal/ChannelState.cjs.map +1 -1
  171. package/_cjs/Channel/internal/MergeDecision.cjs +4 -27
  172. package/_cjs/Channel/internal/MergeDecision.cjs.map +1 -1
  173. package/_cjs/Channel/internal/MergeState.cjs +3 -24
  174. package/_cjs/Channel/internal/MergeState.cjs.map +1 -1
  175. package/_cjs/Channel/internal/SingleProducerAsyncInput.cjs +41 -133
  176. package/_cjs/Channel/internal/SingleProducerAsyncInput.cjs.map +1 -1
  177. package/_cjs/Channel.cjs +0 -6
  178. package/_cjs/Channel.cjs.map +1 -1
  179. package/_cjs/Clock/api.cjs +0 -7
  180. package/_cjs/Clock/api.cjs.map +1 -1
  181. package/_cjs/Clock/definition.cjs +0 -6
  182. package/_cjs/Clock/definition.cjs.map +1 -1
  183. package/_cjs/Clock/live.cjs +2 -12
  184. package/_cjs/Clock/live.cjs.map +1 -1
  185. package/_cjs/Clock.cjs +0 -6
  186. package/_cjs/Clock.cjs.map +1 -1
  187. package/_cjs/Console/api.cjs +0 -7
  188. package/_cjs/Console/api.cjs.map +1 -1
  189. package/_cjs/Console/definition.cjs +0 -6
  190. package/_cjs/Console/definition.cjs.map +1 -1
  191. package/_cjs/Console/live.cjs +0 -11
  192. package/_cjs/Console/live.cjs.map +1 -1
  193. package/_cjs/Console.cjs +0 -6
  194. package/_cjs/Console.cjs.map +1 -1
  195. package/_cjs/CountdownLatch.cjs +50 -0
  196. package/_cjs/CountdownLatch.cjs.map +1 -0
  197. package/_cjs/Differ/api.cjs +0 -23
  198. package/_cjs/Differ/api.cjs.map +1 -1
  199. package/_cjs/Differ/definition.cjs +0 -4
  200. package/_cjs/Differ/definition.cjs.map +1 -1
  201. package/_cjs/Fiber/FiberMessage.cjs +72 -0
  202. package/_cjs/Fiber/FiberMessage.cjs.map +1 -0
  203. package/_cjs/Fiber/FiberRuntime.cjs +735 -0
  204. package/_cjs/Fiber/FiberRuntime.cjs.map +1 -0
  205. package/_cjs/Fiber/api/await.cjs +0 -1
  206. package/_cjs/Fiber/api/await.cjs.map +1 -1
  207. package/_cjs/Fiber/api/awaitAll.cjs +2 -8
  208. package/_cjs/Fiber/api/awaitAll.cjs.map +1 -1
  209. package/_cjs/Fiber/api/children.cjs +0 -1
  210. package/_cjs/Fiber/api/children.cjs.map +1 -1
  211. package/_cjs/Fiber/api/collectAll.cjs +3 -25
  212. package/_cjs/Fiber/api/collectAll.cjs.map +1 -1
  213. package/_cjs/Fiber/api/fromIO.cjs +0 -5
  214. package/_cjs/Fiber/api/fromIO.cjs.map +1 -1
  215. package/_cjs/Fiber/api/id.cjs +0 -1
  216. package/_cjs/Fiber/api/id.cjs.map +1 -1
  217. package/_cjs/Fiber/api/inheritRefs.cjs +1 -2
  218. package/_cjs/Fiber/api/inheritRefs.cjs.map +1 -1
  219. package/_cjs/Fiber/api/interrupt.cjs +3 -8
  220. package/_cjs/Fiber/api/interrupt.cjs.map +1 -1
  221. package/_cjs/Fiber/api/interruptAll.cjs +2 -12
  222. package/_cjs/Fiber/api/interruptAll.cjs.map +1 -1
  223. package/_cjs/Fiber/api/interruptAs.cjs +16 -11
  224. package/_cjs/Fiber/api/interruptAs.cjs.map +1 -1
  225. package/_cjs/Fiber/api/interruptFork.cjs +2 -9
  226. package/_cjs/Fiber/api/interruptFork.cjs.map +1 -1
  227. package/_cjs/Fiber/api/join.cjs +3 -6
  228. package/_cjs/Fiber/api/join.cjs.map +1 -1
  229. package/_cjs/Fiber/api/joinAll.cjs +0 -6
  230. package/_cjs/Fiber/api/joinAll.cjs.map +1 -1
  231. package/_cjs/Fiber/api/location.cjs +1 -8
  232. package/_cjs/Fiber/api/location.cjs.map +1 -1
  233. package/_cjs/Fiber/api/mapFiber.cjs +0 -7
  234. package/_cjs/Fiber/api/mapFiber.cjs.map +1 -1
  235. package/_cjs/Fiber/api/mapIO.cjs +1 -18
  236. package/_cjs/Fiber/api/mapIO.cjs.map +1 -1
  237. package/_cjs/Fiber/api/poll.cjs +0 -1
  238. package/_cjs/Fiber/api/poll.cjs.map +1 -1
  239. package/_cjs/Fiber/api/zipWith.cjs +2 -18
  240. package/_cjs/Fiber/api/zipWith.cjs.map +1 -1
  241. package/_cjs/Fiber/constructors.cjs +0 -18
  242. package/_cjs/Fiber/constructors.cjs.map +1 -1
  243. package/_cjs/Fiber/definition.cjs +11 -14
  244. package/_cjs/Fiber/definition.cjs.map +1 -1
  245. package/_cjs/Fiber.cjs +15 -85
  246. package/_cjs/Fiber.cjs.map +1 -1
  247. package/_cjs/FiberDescriptor.cjs +1 -6
  248. package/_cjs/FiberDescriptor.cjs.map +1 -1
  249. package/_cjs/FiberRef/api/locallyScoped.cjs +0 -6
  250. package/_cjs/FiberRef/api/locallyScoped.cjs.map +1 -1
  251. package/_cjs/FiberRef/api/locallyScopedWith.cjs +0 -5
  252. package/_cjs/FiberRef/api/locallyScopedWith.cjs.map +1 -1
  253. package/_cjs/FiberRef/api.cjs +18 -54
  254. package/_cjs/FiberRef/api.cjs.map +1 -1
  255. package/_cjs/FiberRef/constructors.cjs +0 -10
  256. package/_cjs/FiberRef/constructors.cjs.map +1 -1
  257. package/_cjs/FiberRef/definition.cjs +5 -23
  258. package/_cjs/FiberRef/definition.cjs.map +1 -1
  259. package/_cjs/FiberRef/unsafe.cjs +20 -48
  260. package/_cjs/FiberRef/unsafe.cjs.map +1 -1
  261. package/_cjs/FiberRef.cjs +0 -12
  262. package/_cjs/FiberRef.cjs.map +1 -1
  263. package/_cjs/FiberRefs/api.cjs +62 -22
  264. package/_cjs/FiberRefs/api.cjs.map +1 -1
  265. package/_cjs/FiberRefs/definition.cjs +5 -17
  266. package/_cjs/FiberRefs/definition.cjs.map +1 -1
  267. package/_cjs/FiberRefs/join.cjs +34 -56
  268. package/_cjs/FiberRefs/join.cjs.map +1 -1
  269. package/_cjs/FiberRefs.cjs +0 -6
  270. package/_cjs/FiberRefs.cjs.map +1 -1
  271. package/_cjs/FiberScope/constructors.cjs +0 -4
  272. package/_cjs/FiberScope/constructors.cjs.map +1 -1
  273. package/_cjs/FiberScope/definition.cjs +15 -20
  274. package/_cjs/FiberScope/definition.cjs.map +1 -1
  275. package/_cjs/FiberScope.cjs +0 -4
  276. package/_cjs/FiberScope.cjs.map +1 -1
  277. package/_cjs/FiberStatus/constructors.cjs +5 -20
  278. package/_cjs/FiberStatus/constructors.cjs.map +1 -1
  279. package/_cjs/FiberStatus/definition.cjs +18 -77
  280. package/_cjs/FiberStatus/definition.cjs.map +1 -1
  281. package/_cjs/FiberStatus.cjs +0 -4
  282. package/_cjs/FiberStatus.cjs.map +1 -1
  283. package/_cjs/Future/api.cjs +13 -73
  284. package/_cjs/Future/api.cjs.map +1 -1
  285. package/_cjs/Future/constructors.cjs +0 -11
  286. package/_cjs/Future/constructors.cjs.map +1 -1
  287. package/_cjs/Future/definition.cjs +2 -15
  288. package/_cjs/Future/definition.cjs.map +1 -1
  289. package/_cjs/Future.cjs +0 -6
  290. package/_cjs/Future.cjs.map +1 -1
  291. package/_cjs/Hub/api.cjs +396 -0
  292. package/_cjs/Hub/api.cjs.map +1 -0
  293. package/_cjs/Hub/definition.cjs +20 -104
  294. package/_cjs/Hub/definition.cjs.map +1 -1
  295. package/_cjs/Hub/internal.cjs +105 -172
  296. package/_cjs/Hub/internal.cjs.map +1 -1
  297. package/_cjs/Hub.cjs +4 -8
  298. package/_cjs/Hub.cjs.map +1 -1
  299. package/_cjs/IO/api/acquireRelease.cjs +0 -4
  300. package/_cjs/IO/api/acquireRelease.cjs.map +1 -1
  301. package/_cjs/IO/api/acquireReleaseExit.cjs +0 -6
  302. package/_cjs/IO/api/acquireReleaseExit.cjs.map +1 -1
  303. package/_cjs/IO/api/acquireReleaseInterruptible.cjs +0 -4
  304. package/_cjs/IO/api/acquireReleaseInterruptible.cjs.map +1 -1
  305. package/_cjs/IO/api/acquireReleaseInterruptibleExit.cjs +2 -6
  306. package/_cjs/IO/api/acquireReleaseInterruptibleExit.cjs.map +1 -1
  307. package/_cjs/IO/api/addFinalizer.cjs +0 -4
  308. package/_cjs/IO/api/addFinalizer.cjs.map +1 -1
  309. package/_cjs/IO/api/addFinalizerExit.cjs +0 -7
  310. package/_cjs/IO/api/addFinalizerExit.cjs.map +1 -1
  311. package/_cjs/IO/api/asyncIO.cjs +7 -15
  312. package/_cjs/IO/api/asyncIO.cjs.map +1 -1
  313. package/_cjs/IO/api/asyncInterrupt.cjs +77 -0
  314. package/_cjs/IO/api/asyncInterrupt.cjs.map +1 -0
  315. package/_cjs/IO/api/bracket.cjs +0 -4
  316. package/_cjs/IO/api/bracket.cjs.map +1 -1
  317. package/_cjs/IO/api/bracketExit.cjs +1 -8
  318. package/_cjs/IO/api/bracketExit.cjs.map +1 -1
  319. package/_cjs/IO/api/clockWith.cjs +0 -12
  320. package/_cjs/IO/api/clockWith.cjs.map +1 -1
  321. package/_cjs/IO/api/concurrency.cjs +0 -15
  322. package/_cjs/IO/api/concurrency.cjs.map +1 -1
  323. package/_cjs/IO/api/concurrentFinalizers.cjs +0 -7
  324. package/_cjs/IO/api/concurrentFinalizers.cjs.map +1 -1
  325. package/_cjs/IO/api/consoleWith.cjs +0 -12
  326. package/_cjs/IO/api/consoleWith.cjs.map +1 -1
  327. package/_cjs/IO/api/core-scope.cjs +49 -119
  328. package/_cjs/IO/api/core-scope.cjs.map +1 -1
  329. package/_cjs/{Fiber/api/evalOn.cjs → IO/api/delay.cjs} +9 -19
  330. package/_cjs/IO/api/delay.cjs.map +1 -0
  331. package/_cjs/IO/api/ensuringChildren.cjs +3 -8
  332. package/_cjs/IO/api/ensuringChildren.cjs.map +1 -1
  333. package/_cjs/IO/api/environment.cjs +0 -29
  334. package/_cjs/IO/api/environment.cjs.map +1 -1
  335. package/_cjs/IO/api/{foreachC.cjs → foreachConcurrent.cjs} +31 -64
  336. package/_cjs/IO/api/foreachConcurrent.cjs.map +1 -0
  337. package/_cjs/IO/api/foreachExec.cjs +2 -9
  338. package/_cjs/IO/api/foreachExec.cjs.map +1 -1
  339. package/_cjs/IO/api/fork.cjs +75 -0
  340. package/_cjs/IO/api/fork.cjs.map +1 -0
  341. package/_cjs/IO/api/forkAll.cjs +3 -7
  342. package/_cjs/IO/api/forkAll.cjs.map +1 -1
  343. package/_cjs/IO/api/forkIn.cjs +1 -9
  344. package/_cjs/IO/api/forkIn.cjs.map +1 -1
  345. package/_cjs/IO/api/forkScoped.cjs +1 -9
  346. package/_cjs/IO/api/forkScoped.cjs.map +1 -1
  347. package/_cjs/IO/api/fulfill.cjs +1 -7
  348. package/_cjs/IO/api/fulfill.cjs.map +1 -1
  349. package/_cjs/IO/api/interrupt.cjs +59 -91
  350. package/_cjs/IO/api/interrupt.cjs.map +1 -1
  351. package/_cjs/IO/api/memoize.cjs +1 -8
  352. package/_cjs/IO/api/memoize.cjs.map +1 -1
  353. package/_cjs/IO/api/onExit.cjs +0 -5
  354. package/_cjs/IO/api/onExit.cjs.map +1 -1
  355. package/_cjs/IO/api/onTermination.cjs +0 -8
  356. package/_cjs/IO/api/onTermination.cjs.map +1 -1
  357. package/_cjs/IO/api/once.cjs +4 -8
  358. package/_cjs/IO/api/once.cjs.map +1 -1
  359. package/_cjs/IO/api/provideLayer.cjs +0 -8
  360. package/_cjs/IO/api/provideLayer.cjs.map +1 -1
  361. package/_cjs/IO/api/provideSomeLayer.cjs +0 -5
  362. package/_cjs/IO/api/provideSomeLayer.cjs.map +1 -1
  363. package/_cjs/IO/api/race.cjs +4 -15
  364. package/_cjs/IO/api/race.cjs.map +1 -1
  365. package/_cjs/IO/api/raceFirst.cjs +1 -6
  366. package/_cjs/IO/api/raceFirst.cjs.map +1 -1
  367. package/_cjs/IO/api/randomWith.cjs +0 -12
  368. package/_cjs/IO/api/randomWith.cjs.map +1 -1
  369. package/_cjs/IO/api/repeat.cjs +0 -15
  370. package/_cjs/IO/api/repeat.cjs.map +1 -1
  371. package/_cjs/IO/api/retry.cjs +0 -15
  372. package/_cjs/IO/api/retry.cjs.map +1 -1
  373. package/_cjs/IO/api/schedule.cjs +0 -10
  374. package/_cjs/IO/api/schedule.cjs.map +1 -1
  375. package/_cjs/IO/api/scope.cjs +0 -6
  376. package/_cjs/IO/api/scope.cjs.map +1 -1
  377. package/_cjs/IO/api/scopeWith.cjs +0 -5
  378. package/_cjs/IO/api/scopeWith.cjs.map +1 -1
  379. package/_cjs/IO/api/scoped.cjs +0 -9
  380. package/_cjs/IO/api/scoped.cjs.map +1 -1
  381. package/_cjs/IO/api/sequenceT.cjs +0 -6
  382. package/_cjs/IO/api/sequenceT.cjs.map +1 -1
  383. package/_cjs/IO/api/sleep.cjs +0 -4
  384. package/_cjs/IO/api/sleep.cjs.map +1 -1
  385. package/_cjs/IO/api/stateful.cjs +0 -6
  386. package/_cjs/IO/api/stateful.cjs.map +1 -1
  387. package/_cjs/IO/api/supervised.cjs +6 -16
  388. package/_cjs/IO/api/supervised.cjs.map +1 -1
  389. package/_cjs/IO/api/timeout.cjs +0 -12
  390. package/_cjs/IO/api/timeout.cjs.map +1 -1
  391. package/_cjs/IO/api/withChildren.cjs +2 -10
  392. package/_cjs/IO/api/withChildren.cjs.map +1 -1
  393. package/_cjs/IO/api/withEarlyRelease.cjs +0 -7
  394. package/_cjs/IO/api/withEarlyRelease.cjs.map +1 -1
  395. package/_cjs/IO/api/withFinalizer.cjs +0 -4
  396. package/_cjs/IO/api/withFinalizer.cjs.map +1 -1
  397. package/_cjs/IO/api/withFinalizerExit.cjs +0 -4
  398. package/_cjs/IO/api/withFinalizerExit.cjs.map +1 -1
  399. package/_cjs/IO/api/{zipC.cjs → zipConcurrent.cjs} +21 -41
  400. package/_cjs/IO/api/zipConcurrent.cjs.map +1 -0
  401. package/_cjs/IO/api.cjs +152 -665
  402. package/_cjs/IO/api.cjs.map +1 -1
  403. package/_cjs/IO/definition.cjs +121 -213
  404. package/_cjs/IO/definition.cjs.map +1 -1
  405. package/_cjs/IO/runtime.cjs +51 -119
  406. package/_cjs/IO/runtime.cjs.map +1 -1
  407. package/_cjs/IO.cjs +41 -123
  408. package/_cjs/IO.cjs.map +1 -1
  409. package/_cjs/IOEnv/definition.cjs +0 -11
  410. package/_cjs/IOEnv/definition.cjs.map +1 -1
  411. package/_cjs/IOEnv/live.cjs +0 -11
  412. package/_cjs/IOEnv/live.cjs.map +1 -1
  413. package/_cjs/IOEnv/services.cjs +0 -5
  414. package/_cjs/IOEnv/services.cjs.map +1 -1
  415. package/_cjs/IOEnv.cjs +0 -6
  416. package/_cjs/IOEnv.cjs.map +1 -1
  417. package/_cjs/InterruptStatus/constructors.cjs +0 -5
  418. package/_cjs/InterruptStatus/constructors.cjs.map +1 -1
  419. package/_cjs/InterruptStatus/definition.cjs +0 -5
  420. package/_cjs/InterruptStatus/definition.cjs.map +1 -1
  421. package/_cjs/InterruptStatus.cjs +0 -4
  422. package/_cjs/InterruptStatus.cjs.map +1 -1
  423. package/_cjs/Layer/MemoMap.cjs +40 -91
  424. package/_cjs/Layer/MemoMap.cjs.map +1 -1
  425. package/_cjs/Layer/api.cjs +4 -105
  426. package/_cjs/Layer/api.cjs.map +1 -1
  427. package/_cjs/Layer/definition.cjs +9 -51
  428. package/_cjs/Layer/definition.cjs.map +1 -1
  429. package/_cjs/Layer.cjs +0 -6
  430. package/_cjs/Layer.cjs.map +1 -1
  431. package/_cjs/LogLevel.cjs +0 -20
  432. package/_cjs/LogLevel.cjs.map +1 -1
  433. package/_cjs/LogSpan.cjs +0 -7
  434. package/_cjs/LogSpan.cjs.map +1 -1
  435. package/_cjs/Logger/api.cjs +0 -7
  436. package/_cjs/Logger/api.cjs.map +1 -1
  437. package/_cjs/Logger/constructors.cjs +2 -17
  438. package/_cjs/Logger/constructors.cjs.map +1 -1
  439. package/_cjs/Logger/definition.cjs +0 -3
  440. package/_cjs/Logger/definition.cjs.map +1 -1
  441. package/_cjs/Logger.cjs +0 -6
  442. package/_cjs/Logger.cjs.map +1 -1
  443. package/_cjs/Push/api.cjs +474 -0
  444. package/_cjs/Push/api.cjs.map +1 -0
  445. package/_cjs/Push/definition.cjs +43 -0
  446. package/_cjs/Push/definition.cjs.map +1 -0
  447. package/_cjs/Push/internal.cjs +40 -0
  448. package/_cjs/Push/internal.cjs.map +1 -0
  449. package/_cjs/Push.cjs +39 -0
  450. package/_cjs/Push.cjs.map +1 -0
  451. package/_cjs/Queue/api/dimapIO.cjs +174 -0
  452. package/_cjs/Queue/api/dimapIO.cjs.map +1 -0
  453. package/_cjs/Queue/api/filterInputIO.cjs +109 -0
  454. package/_cjs/Queue/api/filterInputIO.cjs.map +1 -0
  455. package/_cjs/Queue/api/filterOutputIO.cjs +117 -0
  456. package/_cjs/Queue/api/filterOutputIO.cjs.map +1 -0
  457. package/_cjs/Queue/api/operations.cjs +133 -0
  458. package/_cjs/Queue/api/operations.cjs.map +1 -0
  459. package/_cjs/{IO/api/withRuntimeConfig.cjs → Queue/api/poll.cjs} +10 -16
  460. package/_cjs/Queue/api/poll.cjs.map +1 -0
  461. package/_cjs/Queue/api/takeBetween.cjs +47 -0
  462. package/_cjs/Queue/api/takeBetween.cjs.map +1 -0
  463. package/_cjs/Queue/api/zipWithIO.cjs +82 -0
  464. package/_cjs/Queue/api/zipWithIO.cjs.map +1 -0
  465. package/_cjs/Queue/api.cjs +83 -0
  466. package/_cjs/Queue/api.cjs.map +1 -0
  467. package/_cjs/Queue/constructors.cjs +5 -32
  468. package/_cjs/Queue/constructors.cjs.map +1 -1
  469. package/_cjs/Queue/definition.cjs +24 -192
  470. package/_cjs/Queue/definition.cjs.map +1 -1
  471. package/_cjs/Queue/internal.cjs +142 -42
  472. package/_cjs/Queue/internal.cjs.map +1 -1
  473. package/_cjs/Queue/strategy.cjs +13 -54
  474. package/_cjs/Queue/strategy.cjs.map +1 -1
  475. package/_cjs/Queue.cjs +22 -6
  476. package/_cjs/Queue.cjs.map +1 -1
  477. package/_cjs/Random/api.cjs +0 -17
  478. package/_cjs/Random/api.cjs.map +1 -1
  479. package/_cjs/Random/definition.cjs +0 -7
  480. package/_cjs/Random/definition.cjs.map +1 -1
  481. package/_cjs/Random/live.cjs +0 -14
  482. package/_cjs/Random/live.cjs.map +1 -1
  483. package/_cjs/Random.cjs +0 -6
  484. package/_cjs/Random.cjs.map +1 -1
  485. package/_cjs/Ref/Atomic.cjs +26 -21
  486. package/_cjs/Ref/Atomic.cjs.map +1 -1
  487. package/_cjs/Ref/Derived.cjs +46 -0
  488. package/_cjs/Ref/Derived.cjs.map +1 -0
  489. package/_cjs/Ref/DerivedAll.cjs +49 -0
  490. package/_cjs/Ref/DerivedAll.cjs.map +1 -0
  491. package/_cjs/Ref/Synchronized/api.cjs +192 -0
  492. package/_cjs/Ref/Synchronized/api.cjs.map +1 -0
  493. package/_cjs/{Fiber/api/evalOnIO.cjs → Ref/Synchronized/constructors.cjs} +12 -23
  494. package/_cjs/Ref/Synchronized/constructors.cjs.map +1 -0
  495. package/_cjs/Ref/Synchronized/definition.cjs +65 -0
  496. package/_cjs/Ref/Synchronized/definition.cjs.map +1 -0
  497. package/_cjs/Ref/Synchronized.cjs +33 -134
  498. package/_cjs/Ref/Synchronized.cjs.map +1 -1
  499. package/_cjs/{FiberState/constructors.cjs → Ref/api/collect.cjs} +16 -34
  500. package/_cjs/Ref/api/collect.cjs.map +1 -0
  501. package/_cjs/Ref/api/dimap.cjs +105 -0
  502. package/_cjs/Ref/api/dimap.cjs.map +1 -0
  503. package/_cjs/Ref/api/filter.cjs +40 -0
  504. package/_cjs/Ref/api/filter.cjs.map +1 -0
  505. package/_cjs/Ref/api/get.cjs +18 -0
  506. package/_cjs/Ref/api/get.cjs.map +1 -0
  507. package/_cjs/Ref/api/match.cjs +24 -0
  508. package/_cjs/Ref/api/match.cjs.map +1 -0
  509. package/_cjs/Ref/api/matchAll.cjs +22 -0
  510. package/_cjs/Ref/api/matchAll.cjs.map +1 -0
  511. package/_cjs/Ref/api/modify.cjs +141 -0
  512. package/_cjs/Ref/api/modify.cjs.map +1 -0
  513. package/_cjs/Ref/api/set.cjs +21 -0
  514. package/_cjs/Ref/api/set.cjs.map +1 -0
  515. package/_cjs/Ref/api.cjs +134 -0
  516. package/_cjs/Ref/api.cjs.map +1 -0
  517. package/_cjs/Ref/constructors.cjs +4 -30
  518. package/_cjs/Ref/constructors.cjs.map +1 -1
  519. package/_cjs/Ref/definition.cjs +16 -107
  520. package/_cjs/Ref/definition.cjs.map +1 -1
  521. package/_cjs/Ref/symbols.cjs +37 -0
  522. package/_cjs/Ref/symbols.cjs.map +1 -0
  523. package/_cjs/Ref.cjs +77 -8
  524. package/_cjs/Ref.cjs.map +1 -1
  525. package/_cjs/RefSubject/Atomic.cjs +109 -0
  526. package/_cjs/RefSubject/Atomic.cjs.map +1 -0
  527. package/_cjs/RefSubject/Synchronized/api.cjs +23 -0
  528. package/_cjs/RefSubject/Synchronized/api.cjs.map +1 -0
  529. package/_cjs/RefSubject/Synchronized/definition.cjs +56 -0
  530. package/_cjs/RefSubject/Synchronized/definition.cjs.map +1 -0
  531. package/_cjs/RefSubject/api.cjs +245 -0
  532. package/_cjs/RefSubject/api.cjs.map +1 -0
  533. package/_cjs/{FiberState/api.cjs → RefSubject/definition.cjs} +12 -16
  534. package/_cjs/RefSubject/definition.cjs.map +1 -0
  535. package/_cjs/{FiberState.cjs → RefSubject.cjs} +7 -13
  536. package/_cjs/RefSubject.cjs.map +1 -0
  537. package/_cjs/Reloadable/api.cjs +3 -18
  538. package/_cjs/Reloadable/api.cjs.map +1 -1
  539. package/_cjs/Reloadable/constructors.cjs +5 -32
  540. package/_cjs/Reloadable/constructors.cjs.map +1 -1
  541. package/_cjs/Reloadable/definition.cjs +0 -14
  542. package/_cjs/Reloadable/definition.cjs.map +1 -1
  543. package/_cjs/Reloadable.cjs +0 -6
  544. package/_cjs/Reloadable.cjs.map +1 -1
  545. package/_cjs/RuntimeConfig.cjs +1 -44
  546. package/_cjs/RuntimeConfig.cjs.map +1 -1
  547. package/_cjs/RuntimeFlag.cjs +6 -0
  548. package/_cjs/RuntimeFlag.cjs.map +1 -0
  549. package/_cjs/RuntimeFlags/Patch.cjs +76 -0
  550. package/_cjs/RuntimeFlags/Patch.cjs.map +1 -0
  551. package/_cjs/RuntimeFlags/RuntimeFlags.cjs +107 -0
  552. package/_cjs/RuntimeFlags/RuntimeFlags.cjs.map +1 -0
  553. package/_cjs/RuntimeFlags.cjs +28 -0
  554. package/_cjs/RuntimeFlags.cjs.map +1 -0
  555. package/_cjs/STM/api/core-api.cjs +0 -16
  556. package/_cjs/STM/api/core-api.cjs.map +1 -1
  557. package/_cjs/STM/api/core-constructors.cjs +0 -15
  558. package/_cjs/STM/api/core-constructors.cjs.map +1 -1
  559. package/_cjs/STM/api.cjs +5 -143
  560. package/_cjs/STM/api.cjs.map +1 -1
  561. package/_cjs/STM/definition.cjs +9 -72
  562. package/_cjs/STM/definition.cjs.map +1 -1
  563. package/_cjs/STM/driver.cjs +9 -62
  564. package/_cjs/STM/driver.cjs.map +1 -1
  565. package/_cjs/STM/internal/CommitState.cjs +5 -32
  566. package/_cjs/STM/internal/CommitState.cjs.map +1 -1
  567. package/_cjs/STM/internal/Entry.cjs +0 -20
  568. package/_cjs/STM/internal/Entry.cjs.map +1 -1
  569. package/_cjs/STM/internal/Journal.cjs +17 -113
  570. package/_cjs/STM/internal/Journal.cjs.map +1 -1
  571. package/_cjs/STM/internal/TryCommit.cjs +2 -12
  572. package/_cjs/STM/internal/TryCommit.cjs.map +1 -1
  573. package/_cjs/STM/internal/Versioned.cjs +0 -3
  574. package/_cjs/STM/internal/Versioned.cjs.map +1 -1
  575. package/_cjs/STM.cjs +0 -10
  576. package/_cjs/STM.cjs.map +1 -1
  577. package/_cjs/Schedule/Decision.cjs +4 -30
  578. package/_cjs/Schedule/Decision.cjs.map +1 -1
  579. package/_cjs/Schedule/Driver.cjs +0 -5
  580. package/_cjs/Schedule/Driver.cjs.map +1 -1
  581. package/_cjs/Schedule/api/driver.cjs +16 -28
  582. package/_cjs/Schedule/api/driver.cjs.map +1 -1
  583. package/_cjs/Schedule/api.cjs +109 -252
  584. package/_cjs/Schedule/api.cjs.map +1 -1
  585. package/_cjs/Schedule/definition.cjs +0 -2
  586. package/_cjs/Schedule/definition.cjs.map +1 -1
  587. package/_cjs/Schedule.cjs +0 -8
  588. package/_cjs/Schedule.cjs.map +1 -1
  589. package/_cjs/Scope/Finalizer/definition.cjs +0 -6
  590. package/_cjs/Scope/Finalizer/definition.cjs.map +1 -1
  591. package/_cjs/Scope/Finalizer.cjs +0 -2
  592. package/_cjs/Scope/Finalizer.cjs.map +1 -1
  593. package/_cjs/Scope/ReleaseMap/api/releaseAll.cjs +4 -15
  594. package/_cjs/Scope/ReleaseMap/api/releaseAll.cjs.map +1 -1
  595. package/_cjs/Scope/ReleaseMap/api.cjs +12 -33
  596. package/_cjs/Scope/ReleaseMap/api.cjs.map +1 -1
  597. package/_cjs/Scope/ReleaseMap/constructors.cjs +1 -12
  598. package/_cjs/Scope/ReleaseMap/constructors.cjs.map +1 -1
  599. package/_cjs/Scope/ReleaseMap/definition.cjs +0 -9
  600. package/_cjs/Scope/ReleaseMap/definition.cjs.map +1 -1
  601. package/_cjs/Scope/ReleaseMap.cjs +0 -6
  602. package/_cjs/Scope/ReleaseMap.cjs.map +1 -1
  603. package/_cjs/Scope/api.cjs +0 -42
  604. package/_cjs/Scope/api.cjs.map +1 -1
  605. package/_cjs/Scope/definition.cjs +0 -12
  606. package/_cjs/Scope/definition.cjs.map +1 -1
  607. package/_cjs/Scope.cjs +0 -4
  608. package/_cjs/Scope.cjs.map +1 -1
  609. package/_cjs/ScopedRef/api.cjs +9 -24
  610. package/_cjs/ScopedRef/api.cjs.map +1 -1
  611. package/_cjs/ScopedRef/definition.cjs +0 -4
  612. package/_cjs/ScopedRef/definition.cjs.map +1 -1
  613. package/_cjs/ScopedRef.cjs +0 -4
  614. package/_cjs/ScopedRef.cjs.map +1 -1
  615. package/_cjs/Sink/api.cjs +134 -384
  616. package/_cjs/Sink/api.cjs.map +1 -1
  617. package/_cjs/Sink/definition.cjs +0 -3
  618. package/_cjs/Sink/definition.cjs.map +1 -1
  619. package/_cjs/Sink.cjs +0 -4
  620. package/_cjs/Sink.cjs.map +1 -1
  621. package/_cjs/State/api.cjs +0 -18
  622. package/_cjs/State/api.cjs.map +1 -1
  623. package/_cjs/State/definition.cjs +2 -7
  624. package/_cjs/State/definition.cjs.map +1 -1
  625. package/_cjs/State/internal.cjs +0 -3
  626. package/_cjs/State/internal.cjs.map +1 -1
  627. package/_cjs/State.cjs +0 -4
  628. package/_cjs/State.cjs.map +1 -1
  629. package/_cjs/Stream/api/zipAllWith.cjs +2 -31
  630. package/_cjs/Stream/api/zipAllWith.cjs.map +1 -1
  631. package/_cjs/Stream/api/zipWith.cjs +0 -5
  632. package/_cjs/Stream/api/zipWith.cjs.map +1 -1
  633. package/_cjs/Stream/api/zipWithChunks.cjs +2 -22
  634. package/_cjs/Stream/api/zipWithChunks.cjs.map +1 -1
  635. package/_cjs/Stream/api.cjs +237 -685
  636. package/_cjs/Stream/api.cjs.map +1 -1
  637. package/_cjs/Stream/definition.cjs +0 -8
  638. package/_cjs/Stream/definition.cjs.map +1 -1
  639. package/_cjs/Stream/internal/DebounceState.cjs +6 -36
  640. package/_cjs/Stream/internal/DebounceState.cjs.map +1 -1
  641. package/_cjs/Stream/internal/Handoff.cjs +13 -61
  642. package/_cjs/Stream/internal/Handoff.cjs.map +1 -1
  643. package/_cjs/Stream/internal/Pull.cjs +10 -31
  644. package/_cjs/Stream/internal/Pull.cjs.map +1 -1
  645. package/_cjs/Stream/internal/SinkEndReason.cjs +4 -21
  646. package/_cjs/Stream/internal/SinkEndReason.cjs.map +1 -1
  647. package/_cjs/Stream/internal/Take.cjs +0 -51
  648. package/_cjs/Stream/internal/Take.cjs.map +1 -1
  649. package/_cjs/Stream/internal/util.cjs +0 -10
  650. package/_cjs/Stream/internal/util.cjs.map +1 -1
  651. package/_cjs/Stream.cjs +0 -4
  652. package/_cjs/Stream.cjs.map +1 -1
  653. package/_cjs/{FiberState/definition.cjs → Subject/Atomic.cjs} +21 -36
  654. package/_cjs/Subject/Atomic.cjs.map +1 -0
  655. package/_cjs/Subject/api.cjs +28 -0
  656. package/_cjs/Subject/api.cjs.map +1 -0
  657. package/_cjs/Subject/definition.cjs +11 -0
  658. package/_cjs/Subject/definition.cjs.map +1 -0
  659. package/_cjs/Subject.cjs +39 -0
  660. package/_cjs/Subject.cjs.map +1 -0
  661. package/_cjs/SubscriptionRef.cjs +22 -36
  662. package/_cjs/SubscriptionRef.cjs.map +1 -1
  663. package/_cjs/Supervisor/api.cjs +4 -21
  664. package/_cjs/Supervisor/api.cjs.map +1 -1
  665. package/_cjs/Supervisor/constructors.cjs +0 -24
  666. package/_cjs/Supervisor/constructors.cjs.map +1 -1
  667. package/_cjs/Supervisor/definition.cjs +5 -43
  668. package/_cjs/Supervisor/definition.cjs.map +1 -1
  669. package/_cjs/Supervisor.cjs +0 -6
  670. package/_cjs/Supervisor.cjs.map +1 -1
  671. package/_cjs/SupervisorPatch.cjs +10 -64
  672. package/_cjs/SupervisorPatch.cjs.map +1 -1
  673. package/_cjs/TExit/constructors.cjs +0 -12
  674. package/_cjs/TExit/constructors.cjs.map +1 -1
  675. package/_cjs/TExit/definition.cjs +14 -76
  676. package/_cjs/TExit/definition.cjs.map +1 -1
  677. package/_cjs/TExit.cjs +0 -4
  678. package/_cjs/TExit.cjs.map +1 -1
  679. package/_cjs/TFuture/api.cjs +0 -22
  680. package/_cjs/TFuture/api.cjs.map +1 -1
  681. package/_cjs/TFuture/constructors.cjs +0 -12
  682. package/_cjs/TFuture/constructors.cjs.map +1 -1
  683. package/_cjs/TFuture/definition.cjs +0 -4
  684. package/_cjs/TFuture/definition.cjs.map +1 -1
  685. package/_cjs/TFuture.cjs +0 -6
  686. package/_cjs/TFuture.cjs.map +1 -1
  687. package/_cjs/TReentrantLock/api.cjs +16 -90
  688. package/_cjs/TReentrantLock/api.cjs.map +1 -1
  689. package/_cjs/TReentrantLock/definition.cjs +3 -34
  690. package/_cjs/TReentrantLock/definition.cjs.map +1 -1
  691. package/_cjs/TReentrantLock.cjs +0 -4
  692. package/_cjs/TReentrantLock.cjs.map +1 -1
  693. package/_cjs/TRef/api.cjs +23 -248
  694. package/_cjs/TRef/api.cjs.map +1 -1
  695. package/_cjs/TRef/constructors.cjs +0 -19
  696. package/_cjs/TRef/constructors.cjs.map +1 -1
  697. package/_cjs/TRef/definition.cjs +80 -30
  698. package/_cjs/TRef/definition.cjs.map +1 -1
  699. package/_cjs/TRef/symbols.cjs +27 -0
  700. package/_cjs/TRef/symbols.cjs.map +1 -0
  701. package/_cjs/TRef.cjs +11 -6
  702. package/_cjs/TRef.cjs.map +1 -1
  703. package/_cjs/TSemaphore/api.cjs +4 -27
  704. package/_cjs/TSemaphore/api.cjs.map +1 -1
  705. package/_cjs/TSemaphore/constructors.cjs +0 -13
  706. package/_cjs/TSemaphore/constructors.cjs.map +1 -1
  707. package/_cjs/TSemaphore/definition.cjs +0 -4
  708. package/_cjs/TSemaphore/definition.cjs.map +1 -1
  709. package/_cjs/TSemaphore.cjs +0 -6
  710. package/_cjs/TSemaphore.cjs.map +1 -1
  711. package/_cjs/TxnId.cjs +0 -3
  712. package/_cjs/TxnId.cjs.map +1 -1
  713. package/_cjs/collection/immutable/Conc/dropUntilIO.cjs +0 -7
  714. package/_cjs/collection/immutable/Conc/dropUntilIO.cjs.map +1 -1
  715. package/_cjs/collection/immutable/Conc/dropWhileIO.cjs +0 -7
  716. package/_cjs/collection/immutable/Conc/dropWhileIO.cjs.map +1 -1
  717. package/_cjs/collection/immutable/Conc/filterIO.cjs +0 -7
  718. package/_cjs/collection/immutable/Conc/filterIO.cjs.map +1 -1
  719. package/_cjs/collection/immutable/Conc/findIO.cjs +0 -12
  720. package/_cjs/collection/immutable/Conc/findIO.cjs.map +1 -1
  721. package/_cjs/collection/immutable/Conc/mapIO.cjs +0 -5
  722. package/_cjs/collection/immutable/Conc/mapIO.cjs.map +1 -1
  723. package/_cjs/collection/immutable/Conc/takeWhileIO.cjs +0 -9
  724. package/_cjs/collection/immutable/Conc/takeWhileIO.cjs.map +1 -1
  725. package/_cjs/collection/immutable/Conc.cjs +0 -12
  726. package/_cjs/collection/immutable/Conc.cjs.map +1 -1
  727. package/_cjs/data/Exit/foreachIO.cjs +0 -6
  728. package/_cjs/data/Exit/foreachIO.cjs.map +1 -1
  729. package/_cjs/internal/HashedPair.cjs +4 -15
  730. package/_cjs/internal/HashedPair.cjs.map +1 -1
  731. package/_cjs/internal/Hub.cjs +0 -164
  732. package/_cjs/internal/Hub.cjs.map +1 -1
  733. package/_cjs/internal/IsFatal.cjs +10 -52
  734. package/_cjs/internal/IsFatal.cjs.map +1 -1
  735. package/_cjs/internal/MutableQueue.cjs +0 -68
  736. package/_cjs/internal/MutableQueue.cjs.map +1 -1
  737. package/_cjs/internal/Scheduler.cjs +0 -18
  738. package/_cjs/internal/Scheduler.cjs.map +1 -1
  739. package/_cjs/internal/StackTraceBuilder.cjs +0 -9
  740. package/_cjs/internal/StackTraceBuilder.cjs.map +1 -1
  741. package/_mjs/Cached/api.mjs +1 -8
  742. package/_mjs/Cached/api.mjs.map +1 -1
  743. package/_mjs/Cached/definition.mjs +2 -4
  744. package/_mjs/Cached/definition.mjs.map +1 -1
  745. package/_mjs/Cached/internal.mjs +0 -1
  746. package/_mjs/Cached/internal.mjs.map +1 -1
  747. package/_mjs/Cached.mjs.map +1 -1
  748. package/_mjs/CancellerState.mjs +6 -15
  749. package/_mjs/CancellerState.mjs.map +1 -1
  750. package/_mjs/Channel/ChildExecutorDecision/api.mjs +0 -2
  751. package/_mjs/Channel/ChildExecutorDecision/api.mjs.map +1 -1
  752. package/_mjs/Channel/ChildExecutorDecision/definition.mjs +0 -2
  753. package/_mjs/Channel/ChildExecutorDecision/definition.mjs.map +1 -1
  754. package/_mjs/Channel/ChildExecutorDecision.mjs.map +1 -1
  755. package/_mjs/Channel/UpstreamPullRequest/api.mjs +0 -4
  756. package/_mjs/Channel/UpstreamPullRequest/api.mjs.map +1 -1
  757. package/_mjs/Channel/UpstreamPullRequest/definition.mjs +0 -2
  758. package/_mjs/Channel/UpstreamPullRequest/definition.mjs.map +1 -1
  759. package/_mjs/Channel/UpstreamPullRequest.mjs.map +1 -1
  760. package/_mjs/Channel/UpstreamPullStrategy/definition.mjs +0 -1
  761. package/_mjs/Channel/UpstreamPullStrategy/definition.mjs.map +1 -1
  762. package/_mjs/Channel/UpstreamPullStrategy.mjs.map +1 -1
  763. package/_mjs/Channel/api/interruptWhen.mjs +0 -3
  764. package/_mjs/Channel/api/interruptWhen.mjs.map +1 -1
  765. package/_mjs/Channel/api/mapOutConcurrentIO.mjs +34 -0
  766. package/_mjs/Channel/api/mapOutConcurrentIO.mjs.map +1 -0
  767. package/_mjs/Channel/api/mergeAll.mjs +0 -1
  768. package/_mjs/Channel/api/mergeAll.mjs.map +1 -1
  769. package/_mjs/Channel/api/mergeAllUnboundedWith.mjs +0 -1
  770. package/_mjs/Channel/api/mergeAllUnboundedWith.mjs.map +1 -1
  771. package/_mjs/Channel/api/mergeAllWith.mjs +39 -38
  772. package/_mjs/Channel/api/mergeAllWith.mjs.map +1 -1
  773. package/_mjs/Channel/api/mergeMap.mjs +0 -1
  774. package/_mjs/Channel/api/mergeMap.mjs.map +1 -1
  775. package/_mjs/Channel/api/mergeWith.mjs +10 -28
  776. package/_mjs/Channel/api/mergeWith.mjs.map +1 -1
  777. package/_mjs/Channel/api/run.mjs +0 -1
  778. package/_mjs/Channel/api/run.mjs.map +1 -1
  779. package/_mjs/Channel/api/runCollect.mjs +0 -1
  780. package/_mjs/Channel/api/runCollect.mjs.map +1 -1
  781. package/_mjs/Channel/api/runDrain.mjs +0 -1
  782. package/_mjs/Channel/api/runDrain.mjs.map +1 -1
  783. package/_mjs/Channel/api/runScoped.mjs +4 -19
  784. package/_mjs/Channel/api/runScoped.mjs.map +1 -1
  785. package/_mjs/Channel/api/toPull.mjs +4 -17
  786. package/_mjs/Channel/api/toPull.mjs.map +1 -1
  787. package/_mjs/Channel/api/zipConcurrent.mjs +32 -0
  788. package/_mjs/Channel/api/zipConcurrent.mjs.map +1 -0
  789. package/_mjs/Channel/api.mjs +69 -186
  790. package/_mjs/Channel/api.mjs.map +1 -1
  791. package/_mjs/Channel/core-api.mjs +4 -21
  792. package/_mjs/Channel/core-api.mjs.map +1 -1
  793. package/_mjs/Channel/definition.mjs +31 -66
  794. package/_mjs/Channel/definition.mjs.map +1 -1
  795. package/_mjs/Channel/internal/ChannelExecutor.mjs +107 -286
  796. package/_mjs/Channel/internal/ChannelExecutor.mjs.map +1 -1
  797. package/_mjs/Channel/internal/ChannelState.mjs +5 -20
  798. package/_mjs/Channel/internal/ChannelState.mjs.map +1 -1
  799. package/_mjs/Channel/internal/MergeDecision.mjs +5 -16
  800. package/_mjs/Channel/internal/MergeDecision.mjs.map +1 -1
  801. package/_mjs/Channel/internal/MergeState.mjs +6 -15
  802. package/_mjs/Channel/internal/MergeState.mjs.map +1 -1
  803. package/_mjs/Channel/internal/SingleProducerAsyncInput.mjs +44 -106
  804. package/_mjs/Channel/internal/SingleProducerAsyncInput.mjs.map +1 -1
  805. package/_mjs/Channel.mjs.map +1 -1
  806. package/_mjs/Clock/api.mjs +0 -2
  807. package/_mjs/Clock/api.mjs.map +1 -1
  808. package/_mjs/Clock/definition.mjs +0 -2
  809. package/_mjs/Clock/definition.mjs.map +1 -1
  810. package/_mjs/Clock/live.mjs +2 -6
  811. package/_mjs/Clock/live.mjs.map +1 -1
  812. package/_mjs/Clock.mjs.map +1 -1
  813. package/_mjs/Console/api.mjs +0 -2
  814. package/_mjs/Console/api.mjs.map +1 -1
  815. package/_mjs/Console/definition.mjs +0 -2
  816. package/_mjs/Console/definition.mjs.map +1 -1
  817. package/_mjs/Console/live.mjs +0 -4
  818. package/_mjs/Console/live.mjs.map +1 -1
  819. package/_mjs/Console.mjs.map +1 -1
  820. package/_mjs/CountdownLatch.mjs +39 -0
  821. package/_mjs/CountdownLatch.mjs.map +1 -0
  822. package/_mjs/Differ/api.mjs +0 -15
  823. package/_mjs/Differ/api.mjs.map +1 -1
  824. package/_mjs/Differ/definition.mjs +0 -2
  825. package/_mjs/Differ/definition.mjs.map +1 -1
  826. package/_mjs/Fiber/FiberMessage.mjs +56 -0
  827. package/_mjs/Fiber/FiberMessage.mjs.map +1 -0
  828. package/_mjs/Fiber/FiberRuntime.mjs +728 -0
  829. package/_mjs/Fiber/FiberRuntime.mjs.map +1 -0
  830. package/_mjs/Fiber/api/await.mjs.map +1 -1
  831. package/_mjs/Fiber/api/awaitAll.mjs +2 -3
  832. package/_mjs/Fiber/api/awaitAll.mjs.map +1 -1
  833. package/_mjs/Fiber/api/children.mjs.map +1 -1
  834. package/_mjs/Fiber/api/collectAll.mjs +3 -4
  835. package/_mjs/Fiber/api/collectAll.mjs.map +1 -1
  836. package/_mjs/Fiber/api/fromIO.mjs +0 -1
  837. package/_mjs/Fiber/api/fromIO.mjs.map +1 -1
  838. package/_mjs/Fiber/api/id.mjs.map +1 -1
  839. package/_mjs/Fiber/api/inheritRefs.mjs +1 -1
  840. package/_mjs/Fiber/api/inheritRefs.mjs.map +1 -1
  841. package/_mjs/Fiber/api/interrupt.mjs +3 -4
  842. package/_mjs/Fiber/api/interrupt.mjs.map +1 -1
  843. package/_mjs/Fiber/api/interruptAll.mjs +2 -5
  844. package/_mjs/Fiber/api/interruptAll.mjs.map +1 -1
  845. package/_mjs/Fiber/api/interruptAs.mjs +14 -8
  846. package/_mjs/Fiber/api/interruptAs.mjs.map +1 -1
  847. package/_mjs/Fiber/api/interruptFork.mjs +2 -5
  848. package/_mjs/Fiber/api/interruptFork.mjs.map +1 -1
  849. package/_mjs/Fiber/api/join.mjs +3 -3
  850. package/_mjs/Fiber/api/join.mjs.map +1 -1
  851. package/_mjs/Fiber/api/joinAll.mjs +0 -1
  852. package/_mjs/Fiber/api/joinAll.mjs.map +1 -1
  853. package/_mjs/Fiber/api/location.mjs +1 -3
  854. package/_mjs/Fiber/api/location.mjs.map +1 -1
  855. package/_mjs/Fiber/api/mapFiber.mjs +0 -1
  856. package/_mjs/Fiber/api/mapFiber.mjs.map +1 -1
  857. package/_mjs/Fiber/api/mapIO.mjs +1 -4
  858. package/_mjs/Fiber/api/mapIO.mjs.map +1 -1
  859. package/_mjs/Fiber/api/poll.mjs.map +1 -1
  860. package/_mjs/Fiber/api/zipWith.mjs +2 -3
  861. package/_mjs/Fiber/api/zipWith.mjs.map +1 -1
  862. package/_mjs/Fiber/constructors.mjs +0 -6
  863. package/_mjs/Fiber/constructors.mjs.map +1 -1
  864. package/_mjs/Fiber/definition.mjs +9 -5
  865. package/_mjs/Fiber/definition.mjs.map +1 -1
  866. package/_mjs/Fiber.mjs +3 -5
  867. package/_mjs/Fiber.mjs.map +1 -1
  868. package/_mjs/FiberDescriptor.mjs +1 -4
  869. package/_mjs/FiberDescriptor.mjs.map +1 -1
  870. package/_mjs/FiberRef/api/locallyScoped.mjs +0 -1
  871. package/_mjs/FiberRef/api/locallyScoped.mjs.map +1 -1
  872. package/_mjs/FiberRef/api/locallyScopedWith.mjs +0 -1
  873. package/_mjs/FiberRef/api/locallyScopedWith.mjs.map +1 -1
  874. package/_mjs/FiberRef/api.mjs +16 -34
  875. package/_mjs/FiberRef/api.mjs.map +1 -1
  876. package/_mjs/FiberRef/constructors.mjs +0 -3
  877. package/_mjs/FiberRef/constructors.mjs.map +1 -1
  878. package/_mjs/FiberRef/definition.mjs +5 -10
  879. package/_mjs/FiberRef/definition.mjs.map +1 -1
  880. package/_mjs/FiberRef/unsafe.mjs +17 -30
  881. package/_mjs/FiberRef/unsafe.mjs.map +1 -1
  882. package/_mjs/FiberRef.mjs +2 -2
  883. package/_mjs/FiberRef.mjs.map +1 -1
  884. package/_mjs/FiberRefs/api.mjs +55 -11
  885. package/_mjs/FiberRefs/api.mjs.map +1 -1
  886. package/_mjs/FiberRefs/definition.mjs +2 -13
  887. package/_mjs/FiberRefs/definition.mjs.map +1 -1
  888. package/_mjs/FiberRefs/join.mjs +34 -46
  889. package/_mjs/FiberRefs/join.mjs.map +1 -1
  890. package/_mjs/FiberRefs.mjs.map +1 -1
  891. package/_mjs/FiberScope/constructors.mjs +0 -2
  892. package/_mjs/FiberScope/constructors.mjs.map +1 -1
  893. package/_mjs/FiberScope/definition.mjs +15 -12
  894. package/_mjs/FiberScope/definition.mjs.map +1 -1
  895. package/_mjs/FiberScope.mjs.map +1 -1
  896. package/_mjs/FiberStatus/constructors.mjs +5 -15
  897. package/_mjs/FiberStatus/constructors.mjs.map +1 -1
  898. package/_mjs/FiberStatus/definition.mjs +14 -66
  899. package/_mjs/FiberStatus/definition.mjs.map +1 -1
  900. package/_mjs/FiberStatus.mjs.map +1 -1
  901. package/_mjs/Future/api.mjs +13 -54
  902. package/_mjs/Future/api.mjs.map +1 -1
  903. package/_mjs/Future/constructors.mjs +0 -4
  904. package/_mjs/Future/constructors.mjs.map +1 -1
  905. package/_mjs/Future/definition.mjs +3 -9
  906. package/_mjs/Future/definition.mjs.map +1 -1
  907. package/_mjs/Future.mjs.map +1 -1
  908. package/_mjs/Hub/api.mjs +359 -0
  909. package/_mjs/Hub/api.mjs.map +1 -0
  910. package/_mjs/Hub/definition.mjs +15 -84
  911. package/_mjs/Hub/definition.mjs.map +1 -1
  912. package/_mjs/Hub/internal.mjs +104 -147
  913. package/_mjs/Hub/internal.mjs.map +1 -1
  914. package/_mjs/Hub.mjs +1 -1
  915. package/_mjs/Hub.mjs.map +1 -1
  916. package/_mjs/IO/api/acquireRelease.mjs +0 -1
  917. package/_mjs/IO/api/acquireRelease.mjs.map +1 -1
  918. package/_mjs/IO/api/acquireReleaseExit.mjs +0 -1
  919. package/_mjs/IO/api/acquireReleaseExit.mjs.map +1 -1
  920. package/_mjs/IO/api/acquireReleaseInterruptible.mjs +0 -1
  921. package/_mjs/IO/api/acquireReleaseInterruptible.mjs.map +1 -1
  922. package/_mjs/IO/api/acquireReleaseInterruptibleExit.mjs +2 -2
  923. package/_mjs/IO/api/acquireReleaseInterruptibleExit.mjs.map +1 -1
  924. package/_mjs/IO/api/addFinalizer.mjs +0 -1
  925. package/_mjs/IO/api/addFinalizer.mjs.map +1 -1
  926. package/_mjs/IO/api/addFinalizerExit.mjs +0 -1
  927. package/_mjs/IO/api/addFinalizerExit.mjs.map +1 -1
  928. package/_mjs/IO/api/asyncIO.mjs +7 -7
  929. package/_mjs/IO/api/asyncIO.mjs.map +1 -1
  930. package/_mjs/IO/api/asyncInterrupt.mjs +65 -0
  931. package/_mjs/IO/api/asyncInterrupt.mjs.map +1 -0
  932. package/_mjs/IO/api/bracket.mjs +0 -1
  933. package/_mjs/IO/api/bracket.mjs.map +1 -1
  934. package/_mjs/IO/api/bracketExit.mjs +1 -2
  935. package/_mjs/IO/api/bracketExit.mjs.map +1 -1
  936. package/_mjs/IO/api/clockWith.mjs +0 -3
  937. package/_mjs/IO/api/clockWith.mjs.map +1 -1
  938. package/_mjs/IO/api/concurrency.mjs +0 -5
  939. package/_mjs/IO/api/concurrency.mjs.map +1 -1
  940. package/_mjs/IO/api/concurrentFinalizers.mjs +0 -1
  941. package/_mjs/IO/api/concurrentFinalizers.mjs.map +1 -1
  942. package/_mjs/IO/api/consoleWith.mjs +0 -3
  943. package/_mjs/IO/api/consoleWith.mjs.map +1 -1
  944. package/_mjs/IO/api/core-scope.mjs +46 -88
  945. package/_mjs/IO/api/core-scope.mjs.map +1 -1
  946. package/_mjs/IO/api/delay.mjs +12 -0
  947. package/_mjs/IO/api/delay.mjs.map +1 -0
  948. package/_mjs/IO/api/ensuringChildren.mjs +3 -3
  949. package/_mjs/IO/api/ensuringChildren.mjs.map +1 -1
  950. package/_mjs/IO/api/environment.mjs +0 -15
  951. package/_mjs/IO/api/environment.mjs.map +1 -1
  952. package/_mjs/IO/api/{foreachC.mjs → foreachConcurrent.mjs} +29 -41
  953. package/_mjs/IO/api/foreachConcurrent.mjs.map +1 -0
  954. package/_mjs/IO/api/foreachExec.mjs +2 -3
  955. package/_mjs/IO/api/foreachExec.mjs.map +1 -1
  956. package/_mjs/IO/api/fork.mjs +64 -0
  957. package/_mjs/IO/api/fork.mjs.map +1 -0
  958. package/_mjs/IO/api/forkAll.mjs +3 -3
  959. package/_mjs/IO/api/forkAll.mjs.map +1 -1
  960. package/_mjs/IO/api/forkIn.mjs +1 -2
  961. package/_mjs/IO/api/forkIn.mjs.map +1 -1
  962. package/_mjs/IO/api/forkScoped.mjs +1 -2
  963. package/_mjs/IO/api/forkScoped.mjs.map +1 -1
  964. package/_mjs/IO/api/fulfill.mjs +1 -2
  965. package/_mjs/IO/api/fulfill.mjs.map +1 -1
  966. package/_mjs/IO/api/interrupt.mjs +53 -72
  967. package/_mjs/IO/api/interrupt.mjs.map +1 -1
  968. package/_mjs/IO/api/memoize.mjs +1 -2
  969. package/_mjs/IO/api/memoize.mjs.map +1 -1
  970. package/_mjs/IO/api/onExit.mjs +0 -1
  971. package/_mjs/IO/api/onExit.mjs.map +1 -1
  972. package/_mjs/IO/api/onTermination.mjs +0 -1
  973. package/_mjs/IO/api/onTermination.mjs.map +1 -1
  974. package/_mjs/IO/api/once.mjs +4 -4
  975. package/_mjs/IO/api/once.mjs.map +1 -1
  976. package/_mjs/IO/api/provideLayer.mjs +0 -1
  977. package/_mjs/IO/api/provideLayer.mjs.map +1 -1
  978. package/_mjs/IO/api/provideSomeLayer.mjs +0 -1
  979. package/_mjs/IO/api/provideSomeLayer.mjs.map +1 -1
  980. package/_mjs/IO/api/race.mjs +4 -6
  981. package/_mjs/IO/api/race.mjs.map +1 -1
  982. package/_mjs/IO/api/raceFirst.mjs +1 -2
  983. package/_mjs/IO/api/raceFirst.mjs.map +1 -1
  984. package/_mjs/IO/api/randomWith.mjs +0 -3
  985. package/_mjs/IO/api/randomWith.mjs.map +1 -1
  986. package/_mjs/IO/api/repeat.mjs +0 -5
  987. package/_mjs/IO/api/repeat.mjs.map +1 -1
  988. package/_mjs/IO/api/retry.mjs +0 -6
  989. package/_mjs/IO/api/retry.mjs.map +1 -1
  990. package/_mjs/IO/api/schedule.mjs +0 -4
  991. package/_mjs/IO/api/schedule.mjs.map +1 -1
  992. package/_mjs/IO/api/scope.mjs +0 -1
  993. package/_mjs/IO/api/scope.mjs.map +1 -1
  994. package/_mjs/IO/api/scopeWith.mjs +0 -1
  995. package/_mjs/IO/api/scopeWith.mjs.map +1 -1
  996. package/_mjs/IO/api/scoped.mjs +0 -3
  997. package/_mjs/IO/api/scoped.mjs.map +1 -1
  998. package/_mjs/IO/api/sequenceT.mjs +0 -1
  999. package/_mjs/IO/api/sequenceT.mjs.map +1 -1
  1000. package/_mjs/IO/api/sleep.mjs +0 -1
  1001. package/_mjs/IO/api/sleep.mjs.map +1 -1
  1002. package/_mjs/IO/api/stateful.mjs +0 -1
  1003. package/_mjs/IO/api/stateful.mjs.map +1 -1
  1004. package/_mjs/IO/api/supervised.mjs +6 -12
  1005. package/_mjs/IO/api/supervised.mjs.map +1 -1
  1006. package/_mjs/IO/api/timeout.mjs +0 -3
  1007. package/_mjs/IO/api/timeout.mjs.map +1 -1
  1008. package/_mjs/IO/api/withChildren.mjs +2 -4
  1009. package/_mjs/IO/api/withChildren.mjs.map +1 -1
  1010. package/_mjs/IO/api/withEarlyRelease.mjs +0 -1
  1011. package/_mjs/IO/api/withEarlyRelease.mjs.map +1 -1
  1012. package/_mjs/IO/api/withFinalizer.mjs +0 -1
  1013. package/_mjs/IO/api/withFinalizer.mjs.map +1 -1
  1014. package/_mjs/IO/api/withFinalizerExit.mjs +0 -1
  1015. package/_mjs/IO/api/withFinalizerExit.mjs.map +1 -1
  1016. package/_mjs/IO/api/zipConcurrent.mjs +41 -0
  1017. package/_mjs/IO/api/zipConcurrent.mjs.map +1 -0
  1018. package/_mjs/IO/api.mjs +140 -516
  1019. package/_mjs/IO/api.mjs.map +1 -1
  1020. package/_mjs/IO/definition.mjs +107 -150
  1021. package/_mjs/IO/definition.mjs.map +1 -1
  1022. package/_mjs/IO/runtime.mjs +51 -86
  1023. package/_mjs/IO/runtime.mjs.map +1 -1
  1024. package/_mjs/IO.mjs +7 -5
  1025. package/_mjs/IO.mjs.map +1 -1
  1026. package/_mjs/IOEnv/definition.mjs +0 -1
  1027. package/_mjs/IOEnv/definition.mjs.map +1 -1
  1028. package/_mjs/IOEnv/live.mjs +0 -1
  1029. package/_mjs/IOEnv/live.mjs.map +1 -1
  1030. package/_mjs/IOEnv/services.mjs +0 -1
  1031. package/_mjs/IOEnv/services.mjs.map +1 -1
  1032. package/_mjs/IOEnv.mjs.map +1 -1
  1033. package/_mjs/InterruptStatus/constructors.mjs +0 -3
  1034. package/_mjs/InterruptStatus/constructors.mjs.map +1 -1
  1035. package/_mjs/InterruptStatus/definition.mjs +0 -3
  1036. package/_mjs/InterruptStatus/definition.mjs.map +1 -1
  1037. package/_mjs/InterruptStatus.mjs.map +1 -1
  1038. package/_mjs/Layer/MemoMap.mjs +38 -65
  1039. package/_mjs/Layer/MemoMap.mjs.map +1 -1
  1040. package/_mjs/Layer/api.mjs +4 -69
  1041. package/_mjs/Layer/api.mjs.map +1 -1
  1042. package/_mjs/Layer/definition.mjs +15 -34
  1043. package/_mjs/Layer/definition.mjs.map +1 -1
  1044. package/_mjs/Layer.mjs.map +1 -1
  1045. package/_mjs/LogLevel.mjs +0 -13
  1046. package/_mjs/LogLevel.mjs.map +1 -1
  1047. package/_mjs/LogSpan.mjs +0 -4
  1048. package/_mjs/LogSpan.mjs.map +1 -1
  1049. package/_mjs/Logger/api.mjs +0 -2
  1050. package/_mjs/Logger/api.mjs.map +1 -1
  1051. package/_mjs/Logger/constructors.mjs +2 -10
  1052. package/_mjs/Logger/constructors.mjs.map +1 -1
  1053. package/_mjs/Logger/definition.mjs +0 -1
  1054. package/_mjs/Logger/definition.mjs.map +1 -1
  1055. package/_mjs/Logger.mjs.map +1 -1
  1056. package/_mjs/Push/api.mjs +417 -0
  1057. package/_mjs/Push/api.mjs.map +1 -0
  1058. package/_mjs/Push/definition.mjs +33 -0
  1059. package/_mjs/Push/definition.mjs.map +1 -0
  1060. package/_mjs/Push/internal.mjs +26 -0
  1061. package/_mjs/Push/internal.mjs.map +1 -0
  1062. package/_mjs/Push.mjs +5 -0
  1063. package/_mjs/Push.mjs.map +1 -0
  1064. package/_mjs/Queue/api/dimapIO.mjs +156 -0
  1065. package/_mjs/Queue/api/dimapIO.mjs.map +1 -0
  1066. package/_mjs/Queue/api/filterInputIO.mjs +98 -0
  1067. package/_mjs/Queue/api/filterInputIO.mjs.map +1 -0
  1068. package/_mjs/Queue/api/filterOutputIO.mjs +106 -0
  1069. package/_mjs/Queue/api/filterOutputIO.mjs.map +1 -0
  1070. package/_mjs/Queue/api/operations.mjs +118 -0
  1071. package/_mjs/Queue/api/operations.mjs.map +1 -0
  1072. package/_mjs/Queue/api/poll.mjs +13 -0
  1073. package/_mjs/Queue/api/poll.mjs.map +1 -0
  1074. package/_mjs/Queue/api/takeBetween.mjs +39 -0
  1075. package/_mjs/Queue/api/takeBetween.mjs.map +1 -0
  1076. package/_mjs/Queue/api/zipWithIO.mjs +71 -0
  1077. package/_mjs/Queue/api/zipWithIO.mjs.map +1 -0
  1078. package/_mjs/Queue/api.mjs +9 -0
  1079. package/_mjs/Queue/api.mjs.map +1 -0
  1080. package/_mjs/Queue/constructors.mjs +5 -20
  1081. package/_mjs/Queue/constructors.mjs.map +1 -1
  1082. package/_mjs/Queue/definition.mjs +17 -172
  1083. package/_mjs/Queue/definition.mjs.map +1 -1
  1084. package/_mjs/Queue/internal.mjs +141 -28
  1085. package/_mjs/Queue/internal.mjs.map +1 -1
  1086. package/_mjs/Queue/strategy.mjs +13 -37
  1087. package/_mjs/Queue/strategy.mjs.map +1 -1
  1088. package/_mjs/Queue.mjs +3 -1
  1089. package/_mjs/Queue.mjs.map +1 -1
  1090. package/_mjs/Random/api.mjs +0 -8
  1091. package/_mjs/Random/api.mjs.map +1 -1
  1092. package/_mjs/Random/definition.mjs +0 -2
  1093. package/_mjs/Random/definition.mjs.map +1 -1
  1094. package/_mjs/Random/live.mjs +0 -7
  1095. package/_mjs/Random/live.mjs.map +1 -1
  1096. package/_mjs/Random.mjs.map +1 -1
  1097. package/_mjs/Ref/Atomic.mjs +25 -15
  1098. package/_mjs/Ref/Atomic.mjs.map +1 -1
  1099. package/_mjs/Ref/Derived.mjs +37 -0
  1100. package/_mjs/Ref/Derived.mjs.map +1 -0
  1101. package/_mjs/Ref/DerivedAll.mjs +39 -0
  1102. package/_mjs/Ref/DerivedAll.mjs.map +1 -0
  1103. package/_mjs/Ref/Synchronized/api.mjs +168 -0
  1104. package/_mjs/Ref/Synchronized/api.mjs.map +1 -0
  1105. package/_mjs/Ref/Synchronized/constructors.mjs +14 -0
  1106. package/_mjs/Ref/Synchronized/constructors.mjs.map +1 -0
  1107. package/_mjs/Ref/Synchronized/definition.mjs +54 -0
  1108. package/_mjs/Ref/Synchronized/definition.mjs.map +1 -0
  1109. package/_mjs/Ref/Synchronized.mjs +4 -122
  1110. package/_mjs/Ref/Synchronized.mjs.map +1 -1
  1111. package/_mjs/Ref/api/collect.mjs +18 -0
  1112. package/_mjs/Ref/api/collect.mjs.map +1 -0
  1113. package/_mjs/Ref/api/dimap.mjs +88 -0
  1114. package/_mjs/Ref/api/dimap.mjs.map +1 -0
  1115. package/_mjs/Ref/api/filter.mjs +31 -0
  1116. package/_mjs/Ref/api/filter.mjs.map +1 -0
  1117. package/_mjs/Ref/api/get.mjs +12 -0
  1118. package/_mjs/Ref/api/get.mjs.map +1 -0
  1119. package/_mjs/Ref/api/match.mjs +18 -0
  1120. package/_mjs/Ref/api/match.mjs.map +1 -0
  1121. package/_mjs/Ref/api/matchAll.mjs +16 -0
  1122. package/_mjs/Ref/api/matchAll.mjs.map +1 -0
  1123. package/_mjs/Ref/api/modify.mjs +124 -0
  1124. package/_mjs/Ref/api/modify.mjs.map +1 -0
  1125. package/_mjs/Ref/api/set.mjs +15 -0
  1126. package/_mjs/Ref/api/set.mjs.map +1 -0
  1127. package/_mjs/Ref/api.mjs +32 -0
  1128. package/_mjs/Ref/api.mjs.map +1 -0
  1129. package/_mjs/Ref/constructors.mjs +3 -18
  1130. package/_mjs/Ref/constructors.mjs.map +1 -1
  1131. package/_mjs/Ref/definition.mjs +12 -97
  1132. package/_mjs/Ref/definition.mjs.map +1 -1
  1133. package/_mjs/Ref/symbols.mjs +25 -0
  1134. package/_mjs/Ref/symbols.mjs.map +1 -0
  1135. package/_mjs/Ref.mjs +9 -0
  1136. package/_mjs/Ref.mjs.map +1 -1
  1137. package/_mjs/RefSubject/Atomic.mjs +100 -0
  1138. package/_mjs/RefSubject/Atomic.mjs.map +1 -0
  1139. package/_mjs/RefSubject/Synchronized/api.mjs +15 -0
  1140. package/_mjs/RefSubject/Synchronized/api.mjs.map +1 -0
  1141. package/_mjs/RefSubject/Synchronized/definition.mjs +45 -0
  1142. package/_mjs/RefSubject/Synchronized/definition.mjs.map +1 -0
  1143. package/_mjs/RefSubject/api.mjs +220 -0
  1144. package/_mjs/RefSubject/api.mjs.map +1 -0
  1145. package/_mjs/RefSubject/definition.mjs +11 -0
  1146. package/_mjs/RefSubject/definition.mjs.map +1 -0
  1147. package/_mjs/RefSubject.mjs +5 -0
  1148. package/_mjs/RefSubject.mjs.map +1 -0
  1149. package/_mjs/Reloadable/api.mjs +3 -12
  1150. package/_mjs/Reloadable/api.mjs.map +1 -1
  1151. package/_mjs/Reloadable/constructors.mjs +5 -17
  1152. package/_mjs/Reloadable/constructors.mjs.map +1 -1
  1153. package/_mjs/Reloadable/definition.mjs +0 -6
  1154. package/_mjs/Reloadable/definition.mjs.map +1 -1
  1155. package/_mjs/Reloadable.mjs.map +1 -1
  1156. package/_mjs/RuntimeConfig.mjs +0 -31
  1157. package/_mjs/RuntimeConfig.mjs.map +1 -1
  1158. package/_mjs/RuntimeFlag.mjs +2 -0
  1159. package/_mjs/RuntimeFlag.mjs.map +1 -0
  1160. package/_mjs/RuntimeFlags/Patch.mjs +58 -0
  1161. package/_mjs/RuntimeFlags/Patch.mjs.map +1 -0
  1162. package/_mjs/RuntimeFlags/RuntimeFlags.mjs +82 -0
  1163. package/_mjs/RuntimeFlags/RuntimeFlags.mjs.map +1 -0
  1164. package/_mjs/RuntimeFlags.mjs +4 -0
  1165. package/_mjs/RuntimeFlags.mjs.map +1 -0
  1166. package/_mjs/STM/api/core-api.mjs +0 -8
  1167. package/_mjs/STM/api/core-api.mjs.map +1 -1
  1168. package/_mjs/STM/api/core-constructors.mjs +0 -8
  1169. package/_mjs/STM/api/core-constructors.mjs.map +1 -1
  1170. package/_mjs/STM/api.mjs +5 -88
  1171. package/_mjs/STM/api.mjs.map +1 -1
  1172. package/_mjs/STM/definition.mjs +14 -36
  1173. package/_mjs/STM/definition.mjs.map +1 -1
  1174. package/_mjs/STM/driver.mjs +9 -51
  1175. package/_mjs/STM/driver.mjs.map +1 -1
  1176. package/_mjs/STM/internal/CommitState.mjs +5 -25
  1177. package/_mjs/STM/internal/CommitState.mjs.map +1 -1
  1178. package/_mjs/STM/internal/Entry.mjs +0 -12
  1179. package/_mjs/STM/internal/Entry.mjs.map +1 -1
  1180. package/_mjs/STM/internal/Journal.mjs +17 -99
  1181. package/_mjs/STM/internal/Journal.mjs.map +1 -1
  1182. package/_mjs/STM/internal/TryCommit.mjs +3 -8
  1183. package/_mjs/STM/internal/TryCommit.mjs.map +1 -1
  1184. package/_mjs/STM/internal/Versioned.mjs +0 -1
  1185. package/_mjs/STM/internal/Versioned.mjs.map +1 -1
  1186. package/_mjs/STM.mjs +2 -2
  1187. package/_mjs/STM.mjs.map +1 -1
  1188. package/_mjs/Schedule/Decision.mjs +6 -19
  1189. package/_mjs/Schedule/Decision.mjs.map +1 -1
  1190. package/_mjs/Schedule/Driver.mjs +0 -2
  1191. package/_mjs/Schedule/Driver.mjs.map +1 -1
  1192. package/_mjs/Schedule/api/driver.mjs +16 -16
  1193. package/_mjs/Schedule/api/driver.mjs.map +1 -1
  1194. package/_mjs/Schedule/api.mjs +100 -187
  1195. package/_mjs/Schedule/api.mjs.map +1 -1
  1196. package/_mjs/Schedule/definition.mjs.map +1 -1
  1197. package/_mjs/Schedule.mjs.map +1 -1
  1198. package/_mjs/Scope/Finalizer/definition.mjs +0 -1
  1199. package/_mjs/Scope/Finalizer/definition.mjs.map +1 -1
  1200. package/_mjs/Scope/Finalizer.mjs.map +1 -1
  1201. package/_mjs/Scope/ReleaseMap/api/releaseAll.mjs +4 -5
  1202. package/_mjs/Scope/ReleaseMap/api/releaseAll.mjs.map +1 -1
  1203. package/_mjs/Scope/ReleaseMap/api.mjs +12 -22
  1204. package/_mjs/Scope/ReleaseMap/api.mjs.map +1 -1
  1205. package/_mjs/Scope/ReleaseMap/constructors.mjs +1 -4
  1206. package/_mjs/Scope/ReleaseMap/constructors.mjs.map +1 -1
  1207. package/_mjs/Scope/ReleaseMap/definition.mjs +0 -2
  1208. package/_mjs/Scope/ReleaseMap/definition.mjs.map +1 -1
  1209. package/_mjs/Scope/ReleaseMap.mjs.map +1 -1
  1210. package/_mjs/Scope/api.mjs +0 -23
  1211. package/_mjs/Scope/api.mjs.map +1 -1
  1212. package/_mjs/Scope/definition.mjs +0 -4
  1213. package/_mjs/Scope/definition.mjs.map +1 -1
  1214. package/_mjs/Scope.mjs.map +1 -1
  1215. package/_mjs/ScopedRef/api.mjs +9 -11
  1216. package/_mjs/ScopedRef/api.mjs.map +1 -1
  1217. package/_mjs/ScopedRef/definition.mjs +0 -2
  1218. package/_mjs/ScopedRef/definition.mjs.map +1 -1
  1219. package/_mjs/ScopedRef.mjs.map +1 -1
  1220. package/_mjs/Sink/api.mjs +130 -292
  1221. package/_mjs/Sink/api.mjs.map +1 -1
  1222. package/_mjs/Sink/definition.mjs +0 -1
  1223. package/_mjs/Sink/definition.mjs.map +1 -1
  1224. package/_mjs/Sink.mjs.map +1 -1
  1225. package/_mjs/State/api.mjs +0 -7
  1226. package/_mjs/State/api.mjs.map +1 -1
  1227. package/_mjs/State/definition.mjs +2 -4
  1228. package/_mjs/State/definition.mjs.map +1 -1
  1229. package/_mjs/State/internal.mjs +0 -1
  1230. package/_mjs/State/internal.mjs.map +1 -1
  1231. package/_mjs/State.mjs.map +1 -1
  1232. package/_mjs/Stream/api/zipAllWith.mjs +2 -19
  1233. package/_mjs/Stream/api/zipAllWith.mjs.map +1 -1
  1234. package/_mjs/Stream/api/zipWith.mjs +0 -1
  1235. package/_mjs/Stream/api/zipWith.mjs.map +1 -1
  1236. package/_mjs/Stream/api/zipWithChunks.mjs +2 -14
  1237. package/_mjs/Stream/api/zipWithChunks.mjs.map +1 -1
  1238. package/_mjs/Stream/api.mjs +232 -544
  1239. package/_mjs/Stream/api.mjs.map +1 -1
  1240. package/_mjs/Stream/definition.mjs +0 -4
  1241. package/_mjs/Stream/definition.mjs.map +1 -1
  1242. package/_mjs/Stream/internal/DebounceState.mjs +9 -27
  1243. package/_mjs/Stream/internal/DebounceState.mjs.map +1 -1
  1244. package/_mjs/Stream/internal/Handoff.mjs +13 -34
  1245. package/_mjs/Stream/internal/Handoff.mjs.map +1 -1
  1246. package/_mjs/Stream/internal/Pull.mjs +10 -16
  1247. package/_mjs/Stream/internal/Pull.mjs.map +1 -1
  1248. package/_mjs/Stream/internal/SinkEndReason.mjs +5 -16
  1249. package/_mjs/Stream/internal/SinkEndReason.mjs.map +1 -1
  1250. package/_mjs/Stream/internal/Take.mjs +0 -22
  1251. package/_mjs/Stream/internal/Take.mjs.map +1 -1
  1252. package/_mjs/Stream/internal/util.mjs +0 -3
  1253. package/_mjs/Stream/internal/util.mjs.map +1 -1
  1254. package/_mjs/Stream.mjs.map +1 -1
  1255. package/_mjs/Subject/Atomic.mjs +22 -0
  1256. package/_mjs/Subject/Atomic.mjs.map +1 -0
  1257. package/_mjs/Subject/api.mjs +18 -0
  1258. package/_mjs/Subject/api.mjs.map +1 -0
  1259. package/_mjs/Subject/definition.mjs +3 -0
  1260. package/_mjs/Subject/definition.mjs.map +1 -0
  1261. package/_mjs/Subject.mjs +5 -0
  1262. package/_mjs/Subject.mjs.map +1 -0
  1263. package/_mjs/SubscriptionRef.mjs +19 -23
  1264. package/_mjs/SubscriptionRef.mjs.map +1 -1
  1265. package/_mjs/Supervisor/api.mjs +4 -15
  1266. package/_mjs/Supervisor/api.mjs.map +1 -1
  1267. package/_mjs/Supervisor/constructors.mjs +0 -12
  1268. package/_mjs/Supervisor/constructors.mjs.map +1 -1
  1269. package/_mjs/Supervisor/definition.mjs +5 -31
  1270. package/_mjs/Supervisor/definition.mjs.map +1 -1
  1271. package/_mjs/Supervisor.mjs.map +1 -1
  1272. package/_mjs/SupervisorPatch.mjs +13 -44
  1273. package/_mjs/SupervisorPatch.mjs.map +1 -1
  1274. package/_mjs/TExit/constructors.mjs +0 -6
  1275. package/_mjs/TExit/constructors.mjs.map +1 -1
  1276. package/_mjs/TExit/definition.mjs +14 -57
  1277. package/_mjs/TExit/definition.mjs.map +1 -1
  1278. package/_mjs/TExit.mjs.map +1 -1
  1279. package/_mjs/TFuture/api.mjs +0 -6
  1280. package/_mjs/TFuture/api.mjs.map +1 -1
  1281. package/_mjs/TFuture/constructors.mjs +0 -3
  1282. package/_mjs/TFuture/constructors.mjs.map +1 -1
  1283. package/_mjs/TFuture/definition.mjs.map +1 -1
  1284. package/_mjs/TFuture.mjs.map +1 -1
  1285. package/_mjs/TReentrantLock/api.mjs +16 -64
  1286. package/_mjs/TReentrantLock/api.mjs.map +1 -1
  1287. package/_mjs/TReentrantLock/definition.mjs +3 -22
  1288. package/_mjs/TReentrantLock/definition.mjs.map +1 -1
  1289. package/_mjs/TReentrantLock.mjs.map +1 -1
  1290. package/_mjs/TRef/api.mjs +20 -222
  1291. package/_mjs/TRef/api.mjs.map +1 -1
  1292. package/_mjs/TRef/constructors.mjs +0 -7
  1293. package/_mjs/TRef/constructors.mjs.map +1 -1
  1294. package/_mjs/TRef/definition.mjs +80 -15
  1295. package/_mjs/TRef/definition.mjs.map +1 -1
  1296. package/_mjs/TRef/symbols.mjs +17 -0
  1297. package/_mjs/TRef/symbols.mjs.map +1 -0
  1298. package/_mjs/TRef.mjs +1 -0
  1299. package/_mjs/TRef.mjs.map +1 -1
  1300. package/_mjs/TSemaphore/api.mjs +4 -14
  1301. package/_mjs/TSemaphore/api.mjs.map +1 -1
  1302. package/_mjs/TSemaphore/constructors.mjs +0 -4
  1303. package/_mjs/TSemaphore/constructors.mjs.map +1 -1
  1304. package/_mjs/TSemaphore/definition.mjs.map +1 -1
  1305. package/_mjs/TSemaphore.mjs.map +1 -1
  1306. package/_mjs/TxnId.mjs +0 -1
  1307. package/_mjs/TxnId.mjs.map +1 -1
  1308. package/_mjs/collection/immutable/Conc/dropUntilIO.mjs +0 -3
  1309. package/_mjs/collection/immutable/Conc/dropUntilIO.mjs.map +1 -1
  1310. package/_mjs/collection/immutable/Conc/dropWhileIO.mjs +0 -3
  1311. package/_mjs/collection/immutable/Conc/dropWhileIO.mjs.map +1 -1
  1312. package/_mjs/collection/immutable/Conc/filterIO.mjs +0 -3
  1313. package/_mjs/collection/immutable/Conc/filterIO.mjs.map +1 -1
  1314. package/_mjs/collection/immutable/Conc/findIO.mjs +0 -7
  1315. package/_mjs/collection/immutable/Conc/findIO.mjs.map +1 -1
  1316. package/_mjs/collection/immutable/Conc/mapIO.mjs +0 -1
  1317. package/_mjs/collection/immutable/Conc/mapIO.mjs.map +1 -1
  1318. package/_mjs/collection/immutable/Conc/takeWhileIO.mjs +0 -4
  1319. package/_mjs/collection/immutable/Conc/takeWhileIO.mjs.map +1 -1
  1320. package/_mjs/collection/immutable/Conc.mjs.map +1 -1
  1321. package/_mjs/data/Exit/foreachIO.mjs +0 -1
  1322. package/_mjs/data/Exit/foreachIO.mjs.map +1 -1
  1323. package/_mjs/internal/HashedPair.mjs +4 -7
  1324. package/_mjs/internal/HashedPair.mjs.map +1 -1
  1325. package/_mjs/internal/Hub.mjs +0 -147
  1326. package/_mjs/internal/Hub.mjs.map +1 -1
  1327. package/_mjs/internal/IsFatal.mjs +12 -41
  1328. package/_mjs/internal/IsFatal.mjs.map +1 -1
  1329. package/_mjs/internal/MutableQueue.mjs +0 -49
  1330. package/_mjs/internal/MutableQueue.mjs.map +1 -1
  1331. package/_mjs/internal/Scheduler.mjs +0 -11
  1332. package/_mjs/internal/Scheduler.mjs.map +1 -1
  1333. package/_mjs/internal/StackTraceBuilder.mjs +0 -3
  1334. package/_mjs/internal/StackTraceBuilder.mjs.map +1 -1
  1335. package/_src/Channel/api/{mapOutIOC.ts → mapOutConcurrentIO.ts} +8 -5
  1336. package/_src/Channel/api/mergeAllWith.ts +6 -6
  1337. package/_src/Channel/api/mergeWith.ts +5 -5
  1338. package/_src/Channel/api/{zipC.ts → zipConcurrent.ts} +10 -10
  1339. package/_src/Channel/api.ts +17 -17
  1340. package/_src/Channel/core-api.ts +4 -4
  1341. package/_src/Channel/internal/ChannelExecutor.ts +11 -11
  1342. package/_src/Channel/internal/SingleProducerAsyncInput.ts +1 -1
  1343. package/_src/CountdownLatch.ts +39 -0
  1344. package/_src/Fiber/FiberMessage.ts +78 -0
  1345. package/_src/Fiber/FiberRuntime.ts +822 -0
  1346. package/_src/Fiber/api/awaitAll.ts +1 -1
  1347. package/_src/Fiber/api/collectAll.ts +3 -2
  1348. package/_src/Fiber/api/inheritRefs.ts +1 -1
  1349. package/_src/Fiber/api/interrupt.ts +1 -2
  1350. package/_src/Fiber/api/interruptAs.ts +11 -6
  1351. package/_src/Fiber/api/interruptFork.ts +1 -1
  1352. package/_src/Fiber/api/location.ts +2 -2
  1353. package/_src/Fiber/api/zipWith.ts +1 -1
  1354. package/_src/Fiber/definition.ts +30 -15
  1355. package/_src/Fiber.ts +2 -4
  1356. package/_src/FiberDescriptor.ts +1 -8
  1357. package/_src/FiberRef/api.ts +13 -17
  1358. package/_src/FiberRef/unsafe.ts +6 -1
  1359. package/_src/FiberRefs/api.ts +56 -3
  1360. package/_src/FiberRefs/definition.ts +15 -7
  1361. package/_src/FiberRefs/join.ts +5 -5
  1362. package/_src/FiberScope/constructors.ts +2 -2
  1363. package/_src/FiberScope/definition.ts +21 -9
  1364. package/_src/FiberStatus/constructors.ts +6 -18
  1365. package/_src/FiberStatus/definition.ts +13 -54
  1366. package/_src/Hub/api.ts +449 -0
  1367. package/_src/Hub/definition.ts +102 -93
  1368. package/_src/Hub/internal.ts +165 -115
  1369. package/_src/Hub.ts +1 -1
  1370. package/_src/IO/api/asyncInterrupt.ts +77 -0
  1371. package/_src/IO/api/core-scope.ts +70 -89
  1372. package/_src/IO/api/delay.ts +8 -0
  1373. package/_src/IO/api/{foreachC.ts → foreachConcurrent.ts} +8 -8
  1374. package/_src/IO/api/foreachExec.ts +2 -2
  1375. package/_src/IO/api/fork.ts +83 -0
  1376. package/_src/IO/api/interrupt.ts +74 -54
  1377. package/_src/IO/api/race.ts +4 -4
  1378. package/_src/IO/api/supervised.ts +7 -9
  1379. package/_src/IO/api/withChildren.ts +2 -4
  1380. package/_src/IO/api/{zipC.ts → zipConcurrent.ts} +9 -9
  1381. package/_src/IO/api.ts +86 -265
  1382. package/_src/IO/definition.ts +153 -152
  1383. package/_src/IO/runtime.ts +62 -61
  1384. package/_src/IO.ts +6 -3
  1385. package/_src/Layer/MemoMap.ts +2 -2
  1386. package/_src/Push/api.ts +702 -0
  1387. package/_src/Push/definition.ts +42 -0
  1388. package/_src/Push/internal.ts +39 -0
  1389. package/_src/Push.ts +5 -0
  1390. package/_src/Queue/api/dimapIO.ts +207 -0
  1391. package/_src/Queue/api/filterInputIO.ts +120 -0
  1392. package/_src/Queue/api/filterOutputIO.ts +136 -0
  1393. package/_src/Queue/api/operations.ts +141 -0
  1394. package/_src/Queue/api/poll.ts +16 -0
  1395. package/_src/Queue/api/takeBetween.ts +44 -0
  1396. package/_src/Queue/api/zipWithIO.ts +110 -0
  1397. package/_src/Queue/api.ts +9 -0
  1398. package/_src/Queue/constructors.ts +6 -22
  1399. package/_src/Queue/definition.ts +188 -216
  1400. package/_src/Queue/internal.ts +159 -2
  1401. package/_src/Queue/strategy.ts +3 -3
  1402. package/_src/Queue.ts +3 -1
  1403. package/_src/Ref/Atomic.ts +43 -10
  1404. package/_src/Ref/Derived.ts +92 -0
  1405. package/_src/Ref/DerivedAll.ts +99 -0
  1406. package/_src/Ref/Synchronized/api.ts +248 -0
  1407. package/_src/Ref/Synchronized/constructors.ts +12 -0
  1408. package/_src/Ref/Synchronized/definition.ts +133 -0
  1409. package/_src/Ref/Synchronized.ts +5 -107
  1410. package/_src/Ref/api/collect.ts +17 -0
  1411. package/_src/Ref/api/dimap.ts +102 -0
  1412. package/_src/Ref/api/filter.ts +31 -0
  1413. package/_src/Ref/api/get.ts +14 -0
  1414. package/_src/Ref/api/match.ts +25 -0
  1415. package/_src/Ref/api/matchAll.ts +24 -0
  1416. package/_src/Ref/api/modify.ts +133 -0
  1417. package/_src/Ref/api/set.ts +17 -0
  1418. package/_src/Ref/api.ts +39 -0
  1419. package/_src/Ref/constructors.ts +2 -15
  1420. package/_src/Ref/definition.ts +113 -81
  1421. package/_src/Ref/symbols.ts +29 -0
  1422. package/_src/Ref.ts +10 -0
  1423. package/_src/RefSubject/Atomic.ts +120 -0
  1424. package/_src/RefSubject/Synchronized/api.ts +14 -0
  1425. package/_src/RefSubject/Synchronized/definition.ts +72 -0
  1426. package/_src/RefSubject/api.ts +240 -0
  1427. package/_src/RefSubject/definition.ts +62 -0
  1428. package/_src/RefSubject.ts +5 -0
  1429. package/_src/RuntimeConfig.ts +0 -29
  1430. package/_src/RuntimeFlag.ts +10 -0
  1431. package/_src/RuntimeFlags/Patch.ts +79 -0
  1432. package/_src/RuntimeFlags/RuntimeFlags.ts +112 -0
  1433. package/_src/RuntimeFlags.ts +4 -0
  1434. package/_src/STM/api.ts +1 -1
  1435. package/_src/STM/internal/Journal.ts +1 -1
  1436. package/_src/Schedule/api/driver.ts +2 -2
  1437. package/_src/Schedule/api.ts +60 -38
  1438. package/_src/Scope/ReleaseMap/api/releaseAll.ts +4 -3
  1439. package/_src/Scope/ReleaseMap/constructors.ts +1 -1
  1440. package/_src/Sink/api.ts +15 -12
  1441. package/_src/Stream/api/zipAllWith.ts +1 -1
  1442. package/_src/Stream/api/zipWithChunks.ts +1 -1
  1443. package/_src/Stream/api.ts +91 -81
  1444. package/_src/Stream/internal/Handoff.ts +3 -3
  1445. package/_src/Stream/internal/Pull.ts +2 -1
  1446. package/_src/Subject/Atomic.ts +28 -0
  1447. package/_src/Subject/api.ts +18 -0
  1448. package/_src/Subject/definition.ts +18 -0
  1449. package/_src/Subject.ts +5 -0
  1450. package/_src/SubscriptionRef.ts +21 -7
  1451. package/_src/Supervisor/api.ts +2 -2
  1452. package/_src/TFuture/definition.ts +2 -2
  1453. package/_src/TReentrantLock/api.ts +4 -4
  1454. package/_src/TReentrantLock/definition.ts +1 -1
  1455. package/_src/TRef/api.ts +32 -200
  1456. package/_src/TRef/constructors.ts +6 -6
  1457. package/_src/TRef/definition.ts +162 -34
  1458. package/_src/TRef/symbols.ts +19 -0
  1459. package/_src/TRef.ts +1 -0
  1460. package/_src/TSemaphore/api.ts +1 -1
  1461. package/_src/TSemaphore/definition.ts +1 -1
  1462. package/_src/global.ts +9 -5
  1463. package/_src/index.ts +7 -1
  1464. package/global.d.ts +9 -5
  1465. package/index.d.ts +7 -1
  1466. package/internal/HashedPair.d.ts +2 -2
  1467. package/package.json +4 -4
  1468. package/Channel/api/mapOutIOC.d.ts +0 -8
  1469. package/Channel/api/zipC.d.ts +0 -16
  1470. package/Fiber/FiberContext.d.ts +0 -153
  1471. package/Fiber/api/evalOn.d.ts +0 -7
  1472. package/Fiber/api/evalOnIO.d.ts +0 -9
  1473. package/Fiber/api/interruptAsFork.d.ts +0 -8
  1474. package/FiberState/api.d.ts +0 -7
  1475. package/FiberState/constructors.d.ts +0 -22
  1476. package/FiberState/definition.d.ts +0 -38
  1477. package/FiberState.d.ts +0 -3
  1478. package/Hub/constructors.d.ts +0 -49
  1479. package/IO/api/withRuntimeConfig.d.ts +0 -10
  1480. package/IO/api/zipC.d.ts +0 -13
  1481. package/_cjs/Channel/api/mapOutIOC.cjs +0 -63
  1482. package/_cjs/Channel/api/mapOutIOC.cjs.map +0 -1
  1483. package/_cjs/Channel/api/zipC.cjs.map +0 -1
  1484. package/_cjs/Fiber/FiberContext.cjs +0 -1088
  1485. package/_cjs/Fiber/FiberContext.cjs.map +0 -1
  1486. package/_cjs/Fiber/api/evalOn.cjs.map +0 -1
  1487. package/_cjs/Fiber/api/evalOnIO.cjs.map +0 -1
  1488. package/_cjs/Fiber/api/interruptAsFork.cjs +0 -17
  1489. package/_cjs/Fiber/api/interruptAsFork.cjs.map +0 -1
  1490. package/_cjs/FiberState/api.cjs.map +0 -1
  1491. package/_cjs/FiberState/constructors.cjs.map +0 -1
  1492. package/_cjs/FiberState/definition.cjs.map +0 -1
  1493. package/_cjs/FiberState.cjs.map +0 -1
  1494. package/_cjs/Hub/constructors.cjs +0 -93
  1495. package/_cjs/Hub/constructors.cjs.map +0 -1
  1496. package/_cjs/IO/api/foreachC.cjs.map +0 -1
  1497. package/_cjs/IO/api/withRuntimeConfig.cjs.map +0 -1
  1498. package/_cjs/IO/api/zipC.cjs.map +0 -1
  1499. package/_mjs/Channel/api/mapOutIOC.mjs +0 -33
  1500. package/_mjs/Channel/api/mapOutIOC.mjs.map +0 -1
  1501. package/_mjs/Channel/api/zipC.mjs +0 -36
  1502. package/_mjs/Channel/api/zipC.mjs.map +0 -1
  1503. package/_mjs/Fiber/FiberContext.mjs +0 -1013
  1504. package/_mjs/Fiber/FiberContext.mjs.map +0 -1
  1505. package/_mjs/Fiber/api/evalOn.mjs +0 -19
  1506. package/_mjs/Fiber/api/evalOn.mjs.map +0 -1
  1507. package/_mjs/Fiber/api/evalOnIO.mjs +0 -18
  1508. package/_mjs/Fiber/api/evalOnIO.mjs.map +0 -1
  1509. package/_mjs/Fiber/api/interruptAsFork.mjs +0 -10
  1510. package/_mjs/Fiber/api/interruptAsFork.mjs.map +0 -1
  1511. package/_mjs/FiberState/api.mjs +0 -15
  1512. package/_mjs/FiberState/api.mjs.map +0 -1
  1513. package/_mjs/FiberState/constructors.mjs +0 -26
  1514. package/_mjs/FiberState/constructors.mjs.map +0 -1
  1515. package/_mjs/FiberState/definition.mjs +0 -26
  1516. package/_mjs/FiberState/definition.mjs.map +0 -1
  1517. package/_mjs/FiberState.mjs +0 -5
  1518. package/_mjs/FiberState.mjs.map +0 -1
  1519. package/_mjs/Hub/constructors.mjs +0 -66
  1520. package/_mjs/Hub/constructors.mjs.map +0 -1
  1521. package/_mjs/IO/api/foreachC.mjs.map +0 -1
  1522. package/_mjs/IO/api/withRuntimeConfig.mjs +0 -15
  1523. package/_mjs/IO/api/withRuntimeConfig.mjs.map +0 -1
  1524. package/_mjs/IO/api/zipC.mjs +0 -43
  1525. package/_mjs/IO/api/zipC.mjs.map +0 -1
  1526. package/_src/Fiber/FiberContext.ts +0 -999
  1527. package/_src/Fiber/api/evalOn.ts +0 -14
  1528. package/_src/Fiber/api/evalOnIO.ts +0 -16
  1529. package/_src/Fiber/api/interruptAsFork.ts +0 -9
  1530. package/_src/FiberState/api.ts +0 -12
  1531. package/_src/FiberState/constructors.ts +0 -33
  1532. package/_src/FiberState/definition.ts +0 -43
  1533. package/_src/FiberState.ts +0 -5
  1534. package/_src/Hub/constructors.ts +0 -80
  1535. package/_src/IO/api/withRuntimeConfig.ts +0 -18
@@ -1,31 +1,178 @@
1
- import { Future } from "@fncts/io/Future";
2
- import { IO } from "@fncts/io/IO/definition";
3
- import type { MutableQueue } from "../internal/MutableQueue.js";
4
- import type { UIO } from "../IO.js";
5
- import type { Strategy } from "./strategy.js";
6
- import type { Maybe } from "@fncts/base/data/Maybe";
7
- import type { AtomicBoolean } from "@fncts/base/internal/AtomicBoolean";
1
+ import { UIO, IO } from "@fncts/io/IO/definition";
8
2
  import { Conc } from "@fncts/base/collection/immutable/Conc";
3
+ export declare const EnqueueTypeId: unique symbol;
4
+ export type EnqueueTypeId = typeof EnqueueTypeId;
5
+ export declare const DequeueTypeId: unique symbol;
6
+ export type DequeueTypeId = typeof DequeueTypeId;
9
7
  export declare const QueueTypeId: unique symbol;
10
8
  export type QueueTypeId = typeof QueueTypeId;
11
- export interface CommonQueue {
9
+ /**
10
+ * A `PQueue<RA, RB, EA, EB, A, B>` is a lightweight, asynchronous queue into which values of
11
+ * type `A` can be enqueued and of which elements of type `B` can be dequeued. The queue's
12
+ * enqueueing operations may utilize an environment of type `RA` and may fail with errors of
13
+ * type `EA`. The dequeueing operations may utilize an environment of type `RB` and may fail
14
+ * with errors of type `EB`.
15
+ *
16
+ * @tsplus type fncts.io.Queue
17
+ */
18
+ export interface PQueue<RA, RB, EA, EB, A, B> extends PEnqueue<RA, RB, EA, EB, A, B>, PDequeue<RA, RB, EA, EB, A, B> {
19
+ }
20
+ /**
21
+ * @tsplus type fncts.io.Queue
22
+ */
23
+ export interface PQueueCommon<RA, RB, EA, EB, A, B> {
24
+ readonly [QueueTypeId]: QueueTypeId;
25
+ readonly _RA: () => RA;
26
+ readonly _RB: () => RB;
27
+ readonly _EA: () => EA;
28
+ readonly _EB: () => EB;
29
+ readonly _A: (_: A) => void;
30
+ readonly _B: () => B;
31
+ }
32
+ /**
33
+ * @tsplus type fncts.io.Queue
34
+ * @tsplus type fncts.io.Queue.Enqueue
35
+ */
36
+ export interface PEnqueue<RA, RB, EA, EB, A, B> extends PQueueCommon<RA, RB, EA, EB, A, B> {
37
+ readonly [EnqueueTypeId]: EnqueueTypeId;
38
+ }
39
+ /**
40
+ * @tsplus type fncts.io.Queue
41
+ * @tsplus type fncts.io.Queue.Dequeue
42
+ */
43
+ export interface PDequeue<RA, RB, EA, EB, A, B> extends PQueueCommon<RA, RB, EA, EB, A, B> {
44
+ readonly [DequeueTypeId]: DequeueTypeId;
45
+ }
46
+ /**
47
+ * @tsplus type fncts.io.QueueOps
48
+ */
49
+ export interface QueueOps {
50
+ }
51
+ export declare const Queue: QueueOps;
52
+ /**
53
+ * @optimize remove
54
+ */
55
+ export declare function concrete<RA, RB, EA, EB, A, B>(_: PQueue<RA, RB, EA, EB, A, B>): asserts _ is QueueInternal<RA, RB, EA, EB, A, B>;
56
+ export declare function concrete<RA, RB, EA, EB, A, B>(_: PDequeue<RA, RB, EA, EB, A, B>): asserts _ is PDequeueInternal<RA, RB, EA, EB, A, B>;
57
+ export declare function concrete<RA, RB, EA, EB, A, B>(_: PEnqueue<RA, RB, EA, EB, A, B>): asserts _ is PEnqueueInternal<RA, RB, EA, EB, A, B>;
58
+ export declare function concrete<RA, RB, EA, EB, A, B>(_: PQueueCommon<RA, RB, EA, EB, A, B>): asserts _ is PQueueCommonInternal<RA, RB, EA, EB, A, B>;
59
+ /**
60
+ * A `Queue<RA, RB, EA, EB, A, B>` is a lightweight, asynchronous queue into which values of
61
+ * type `A` can be enqueued and of which elements of type `B` can be dequeued. The queue's
62
+ * enqueueing operations may utilize an environment of type `RA` and may fail with errors of
63
+ * type `EA`. The dequeueing operations may utilize an environment of type `RB` and may fail
64
+ * with errors of type `EB`.
65
+ */
66
+ export declare abstract class QueueInternal<RA, RB, EA, EB, A, B> implements PQueue<RA, RB, EA, EB, A, B>, PEnqueue<RA, RB, EA, EB, A, B>, PDequeue<RA, RB, EA, EB, A, B> {
12
67
  readonly [QueueTypeId]: QueueTypeId;
68
+ readonly [DequeueTypeId]: DequeueTypeId;
69
+ readonly [EnqueueTypeId]: EnqueueTypeId;
70
+ readonly _RA: () => RA;
71
+ readonly _RB: () => RB;
72
+ readonly _EA: () => EA;
73
+ readonly _EB: () => EB;
74
+ readonly _A: (_: A) => void;
75
+ readonly _B: () => B;
76
+ /**
77
+ * Waits until the queue is shutdown.
78
+ * The `IO` returned by this method will not resume until the queue has been shutdown.
79
+ * If the queue is already shutdown, the `IO` will resume right away.
80
+ */
81
+ abstract readonly awaitShutdown: UIO<void>;
13
82
  /**
14
83
  * How many elements can hold in the queue
15
84
  */
16
- get capacity(): number;
85
+ abstract readonly capacity: number;
86
+ /**
87
+ * `true` if `shutdown` has been called.
88
+ */
89
+ abstract readonly isShutdown: UIO<boolean>;
90
+ /**
91
+ * Places one value in the queue.
92
+ */
93
+ abstract offer(a: A, __tsplusTrace?: string): IO<RA, EA, boolean>;
94
+ /**
95
+ * For Bounded Queue: uses the `BackPressure` Strategy, places the values in the queue and always returns true.
96
+ * If the queue has reached capacity, then
97
+ * the fiber performing the `offerAll` will be suspended until there is room in
98
+ * the queue.
99
+ *
100
+ * For Unbounded Queue:
101
+ * Places all values in the queue and returns true.
102
+ *
103
+ * For Sliding Queue: uses `Sliding` Strategy
104
+ * If there is room in the queue, it places the values otherwise it removes the old elements and
105
+ * enqueues the new ones. Always returns true.
106
+ *
107
+ * For Dropping Queue: uses `Dropping` Strategy,
108
+ * It places the values in the queue but if there is no room it will not enqueue them and return false.
109
+ *
110
+ */
111
+ abstract offerAll(as: Iterable<A>, __tsplusTrace?: string): IO<RA, EA, boolean>;
112
+ /**
113
+ * Interrupts any fibers that are suspended on `offer` or `take`.
114
+ * Future calls to `offer*` and `take*` will be interrupted immediately.
115
+ */
116
+ abstract readonly shutdown: UIO<void>;
17
117
  /**
18
118
  * Retrieves the size of the queue, which is equal to the number of elements
19
119
  * in the queue. This may be negative if fibers are suspended waiting for
20
120
  * elements to be added to the queue.
21
121
  */
22
- readonly size: UIO<number>;
122
+ abstract readonly size: UIO<number>;
123
+ /**
124
+ * Removes the oldest value in the queue. If the queue is empty, this will
125
+ * return a computation that resumes when an item has been added to the queue.
126
+ */
127
+ abstract readonly take: IO<RB, EB, B>;
128
+ /**
129
+ * Removes all the values in the queue and returns the list of the values. If the queue
130
+ * is empty returns empty list.
131
+ */
132
+ abstract readonly takeAll: IO<RB, EB, Conc<B>>;
133
+ /**
134
+ * Takes up to max number of values in the queue.
135
+ */
136
+ abstract takeUpTo(n: number, __tsplusTrace?: string): IO<RB, EB, Conc<B>>;
137
+ }
138
+ /**
139
+ * A `Queue<A>` is a lightweight, asynchronous queue into which
140
+ * values of type `A` can be enqueued and dequeued.
141
+ *
142
+ * @tsplus type fncts.io.Queue
143
+ */
144
+ export interface Queue<A> extends PQueue<never, never, never, never, A, A> {
145
+ }
146
+ export declare namespace Queue {
147
+ /**
148
+ * A queue that can only be dequeued.
149
+ */
150
+ interface Dequeue<A> extends PDequeue<never, never, never, never, A, A> {
151
+ }
152
+ /**
153
+ * A queue that can only be enqueued.
154
+ */
155
+ interface Enqueue<A> extends PEnqueue<never, never, never, never, A, A> {
156
+ }
157
+ }
158
+ export interface PQueueCommonInternal<RA, RB, EA, EB, A, B> {
159
+ readonly _RA: () => RA;
160
+ readonly _RB: () => RB;
161
+ readonly _EA: () => EA;
162
+ readonly _EB: () => EB;
163
+ readonly _A: (_: A) => void;
164
+ readonly _B: () => B;
165
+ readonly [QueueTypeId]: QueueTypeId;
23
166
  /**
24
167
  * Waits until the queue is shutdown.
25
168
  * The `IO` returned by this method will not resume until the queue has been shutdown.
26
169
  * If the queue is already shutdown, the `IO` will resume right away.
27
170
  */
28
171
  readonly awaitShutdown: UIO<void>;
172
+ /**
173
+ * How many elements can hold in the queue
174
+ */
175
+ readonly capacity: number;
29
176
  /**
30
177
  * `true` if `shutdown` has been called.
31
178
  */
@@ -36,20 +183,18 @@ export interface CommonQueue {
36
183
  */
37
184
  readonly shutdown: UIO<void>;
38
185
  /**
39
- * Checks whether the queue is currently full.
40
- */
41
- readonly isFull: UIO<boolean>;
42
- /**
43
- * Checks whether the queue is currently empty.
186
+ * Retrieves the size of the queue, which is equal to the number of elements
187
+ * in the queue. This may be negative if fibers are suspended waiting for
188
+ * elements to be added to the queue.
44
189
  */
45
- readonly isEmpty: UIO<boolean>;
190
+ readonly size: UIO<number>;
46
191
  }
47
- export interface Enqueue<in A> extends CommonQueue {
48
- readonly _In: (_: A) => void;
192
+ export interface PEnqueueInternal<RA, RB, EA, EB, A, B> extends PQueueCommonInternal<RA, RB, EA, EB, A, B> {
193
+ readonly [EnqueueTypeId]: EnqueueTypeId;
49
194
  /**
50
195
  * Places one value in the queue.
51
196
  */
52
- offer(this: this, a: A, __tsplusTrace?: string): UIO<boolean>;
197
+ offer(a: A, __tsplusTrace?: string): IO<RA, EA, boolean>;
53
198
  /**
54
199
  * For Bounded Queue: uses the `BackPressure` Strategy, places the values in the queue and always returns true.
55
200
  * If the queue has reached capacity, then
@@ -67,72 +212,22 @@ export interface Enqueue<in A> extends CommonQueue {
67
212
  * It places the values in the queue but if there is no room it will not enqueue them and return false.
68
213
  *
69
214
  */
70
- offerAll(this: this, as: Iterable<A>, __tsplusTrace?: string): UIO<boolean>;
215
+ offerAll(as: Iterable<A>, __tsplusTrace?: string): IO<RA, EA, boolean>;
71
216
  }
72
- export interface Dequeue<out A> extends CommonQueue {
73
- readonly _Out: (_: never) => A;
217
+ export interface PDequeueInternal<RA, RB, EA, EB, A, B> extends PQueueCommonInternal<RA, RB, EA, EB, A, B> {
218
+ readonly [DequeueTypeId]: DequeueTypeId;
74
219
  /**
75
220
  * Removes the oldest value in the queue. If the queue is empty, this will
76
221
  * return a computation that resumes when an item has been added to the queue.
77
222
  */
78
- readonly take: UIO<A>;
223
+ readonly take: IO<RB, EB, B>;
79
224
  /**
80
225
  * Removes all the values in the queue and returns the list of the values. If the queue
81
226
  * is empty returns empty list.
82
227
  */
83
- readonly takeAll: UIO<Conc<A>>;
228
+ readonly takeAll: IO<RB, EB, Conc<B>>;
84
229
  /**
85
230
  * Takes up to max number of values in the queue.
86
231
  */
87
- takeUpTo(this: this, max: number, __tsplusTrace?: string): UIO<Conc<A>>;
88
- /**
89
- * Takes the specified number of elements from the queue. If there are fewer
90
- * than the specified number of elements available, it suspends until they
91
- * become available.
92
- */
93
- takeN(this: this, n: number, __tsplusTrace?: string): UIO<Conc<A>>;
94
- /**
95
- * Takes a number of elements from the queue between the specified minimum and
96
- * maximum. If there are fewer than the minimum number of elements available,
97
- * suspends until at least the minimum number of elements have been collected.
98
- */
99
- takeBetween(this: this, min: number, max: number, __tsplusTrace?: string): UIO<Conc<A>>;
100
- /**
101
- * Take the head option of values in the queue.
102
- */
103
- readonly poll: UIO<Maybe<A>>;
104
- }
105
- /**
106
- * A `Queue` is a lightweight, asynchronous queue into which values can be
107
- * enqueued and of which elements can be dequeued.
108
- *
109
- * @tsplus type fncts.io.Queue
110
- * @tsplus companion fncts.io.QueueOps
111
- */
112
- export declare class Queue<A> implements Enqueue<A>, Dequeue<A> {
113
- readonly queue: MutableQueue<A>;
114
- readonly takers: MutableQueue<Future<never, A>>;
115
- readonly shutdownHook: Future<never, void>;
116
- readonly shutdownFlag: AtomicBoolean;
117
- readonly strategy: Strategy<A>;
118
- readonly [QueueTypeId]: typeof QueueTypeId;
119
- _In: (_: A) => void;
120
- _Out: (_: never) => A;
121
- constructor(queue: MutableQueue<A>, takers: MutableQueue<Future<never, A>>, shutdownHook: Future<never, void>, shutdownFlag: AtomicBoolean, strategy: Strategy<A>);
122
- offer(this: this, a: A, __tsplusTrace?: string): UIO<boolean>;
123
- offerAll(this: this, as: Iterable<A>, __tsplusTrace?: string): UIO<boolean>;
124
- get capacity(): number;
125
- size: UIO<number>;
126
- awaitShutdown: import("../IO.js").IO<never, never, void>;
127
- isShutdown: UIO<boolean>;
128
- shutdown: UIO<void>;
129
- isFull: UIO<boolean>;
130
- isEmpty: UIO<boolean>;
131
- take: UIO<A>;
132
- takeAll: UIO<Conc<A>>;
133
- takeUpTo(this: this, max: number, __tsplusTrace?: string): UIO<Conc<A>>;
134
- private takeRemainder;
135
- takeBetween(this: this, min: number, max: number, __tsplusTrace?: string): UIO<Conc<A>>;
136
- takeN(this: this, n: number, __tsplusTrace?: string): UIO<Conc<A>>;
137
- poll: UIO<Maybe<A>>;
232
+ takeUpTo(n: number, __tsplusTrace?: string): IO<RB, EB, Conc<B>>;
138
233
  }
@@ -1,10 +1,12 @@
1
- import { Conc } from "@fncts/base/collection/immutable/Conc";
2
1
  import { Future } from "@fncts/io/Future";
2
+ import { UIO, IO } from "@fncts/io/IO/definition";
3
+ import { Conc } from "@fncts/base/collection/immutable/Conc";
4
+ import { Queue } from "@fncts/io/Queue/definition";
3
5
  import type { MutableQueue } from "@fncts/io/internal/MutableQueue";
4
6
  import type { Strategy } from "@fncts/io/Queue/strategy";
7
+ export declare function unsafeMakeQueue<A>(strategy: Strategy<A>): (queue: MutableQueue<A>) => IO<never, never, Queue<A>>;
5
8
  export declare function unsafeOfferAll<A>(q: MutableQueue<A>, as: Conc<A>): Conc<A>;
6
9
  export declare function unsafePollAll<A>(q: MutableQueue<A>): Conc<A>;
7
10
  export declare function unsafeCompletePromise<A>(p: Future<never, A>, a: A): void;
8
11
  export declare function unsafeRemove<A>(q: MutableQueue<A>, a: A): import("@fncts/base/collection/immutable/Conc").Conc<A>;
9
- export declare function unsafePollN<A>(q: MutableQueue<A>, max: number): Conc<A>;
10
12
  export declare function unsafeCompleteTakers<A>(strategy: Strategy<A>, queue: MutableQueue<A>, takers: MutableQueue<Future<never, A>>): void;
package/Queue.d.ts CHANGED
@@ -1,3 +1,5 @@
1
+ export * from "./Queue/api.js";
1
2
  export * from "./Queue/constructors.js";
2
3
  export * from "./Queue/definition.js";
4
+ export * from "./Queue/internal.js";
3
5
  export * from "./Queue/strategy.js";
package/Ref/Atomic.d.ts CHANGED
@@ -1,15 +1,22 @@
1
- import { UIO, IO } from "@fncts/io/IO/definition";
2
- import { Ref } from "./definition.js";
1
+ import { Either } from "@fncts/base/data/Either/definition";
2
+ import { UIO } from "@fncts/io/IO/definition";
3
+ import type { PRef } from "./definition.js";
4
+ import type { AtomicReference } from "@fncts/base/internal/AtomicReference";
5
+ import { RefInternal } from "./definition.js";
6
+ export declare const AtomicTypeId: unique symbol;
7
+ export type AtomicTypeId = typeof AtomicTypeId;
3
8
  /**
4
9
  * @tsplus type fncts.io.Ref.Atomic
5
10
  */
6
- export declare class Atomic<A> extends Ref<A> {
7
- private value;
8
- readonly _tag = "Atomic";
9
- constructor(value: A);
11
+ export declare class Atomic<A> extends RefInternal<never, never, never, never, A, A> {
12
+ readonly value: AtomicReference<A>;
13
+ readonly [AtomicTypeId]: AtomicTypeId;
14
+ constructor(value: AtomicReference<A>);
15
+ match<EC, ED, C, D>(_ea: (_: never) => EC, _eb: (_: never) => ED, ca: (_: C) => Either<EC, A>, bd: (_: A) => Either<ED, D>): PRef<never, never, EC, ED, C, D>;
16
+ matchAll<EC, ED, C, D>(_ea: (_: never) => EC, _eb: (_: never) => ED, _ec: (_: never) => EC, ca: (_: C) => (_: A) => Either<EC, A>, bd: (_: A) => Either<ED, D>): PRef<never, never, EC, ED, C, D>;
10
17
  get unsafeGet(): A;
11
18
  unsafeSet(a: A): void;
12
- get: UIO<A>;
19
+ get get(): UIO<A>;
13
20
  set(a: A): UIO<void>;
14
- modify<B>(f: (a: A) => readonly [B, A], __tsplusTrace?: string): import("../IO.js").UIO<B>;
21
+ modify<B>(f: (a: A) => readonly [B, A], __tsplusTrace?: string | undefined): UIO<B>;
15
22
  }
@@ -0,0 +1,16 @@
1
+ import { Either } from "@fncts/base/data/Either/definition";
2
+ import { FIO } from "@fncts/io/IO/definition";
3
+ import type { Atomic } from "./Atomic.js";
4
+ import type { PRef } from "./definition.js";
5
+ import { IO } from "@fncts/io/IO";
6
+ import { RefInternal } from "./definition.js";
7
+ export declare class Derived<EA, EB, A, B> extends RefInternal<never, never, EA, EB, A, B> {
8
+ readonly use: <X>(f: <S>(value: Atomic<S>, getEither: (s: S) => Either<EB, B>, setEither: (a: A) => Either<EA, S>) => X) => X;
9
+ readonly _tag = "Derived";
10
+ constructor(use: <X>(f: <S>(value: Atomic<S>, getEither: (s: S) => Either<EB, B>, setEither: (a: A) => Either<EA, S>) => X) => X);
11
+ match<EC, ED, C, D>(ea: (_: EA) => EC, eb: (_: EB) => ED, ca: (_: C) => Either<EC, A>, bd: (_: B) => Either<ED, D>): PRef<never, never, EC, ED, C, D>;
12
+ matchAll<EC, ED, C, D>(ea: (_: EA) => EC, eb: (_: EB) => ED, ec: (_: EB) => EC, ca: (_: C) => (_: B) => Either<EC, A>, bd: (_: B) => Either<ED, D>): PRef<never, never, EC, ED, C, D>;
13
+ get get(): FIO<EB, B>;
14
+ set(a: A): FIO<EA, void>;
15
+ modify<C>(f: (b: B) => readonly [C, A], __tsplusTrace?: string | undefined): IO<never, EA | EB, C>;
16
+ }
@@ -0,0 +1,18 @@
1
+ import { Either } from "@fncts/base/data/Either/definition";
2
+ import { FIO } from "@fncts/io/IO/definition";
3
+ import type { Atomic } from "./Atomic.js";
4
+ import type { PRef } from "./definition.js";
5
+ import { IO } from "@fncts/io/IO";
6
+ import { RefInternal } from "./definition.js";
7
+ export declare const DerivedAllTypeId: unique symbol;
8
+ export type DerivedAllTypeId = typeof DerivedAllTypeId;
9
+ export declare class DerivedAll<EA, EB, A, B> extends RefInternal<never, never, EA, EB, A, B> {
10
+ readonly use: <X>(f: <S>(value: Atomic<S>, getEither: (s: S) => Either<EB, B>, setEither: (a: A) => (s: S) => Either<EA, S>) => X) => X;
11
+ readonly [DerivedAllTypeId]: DerivedAllTypeId;
12
+ constructor(use: <X>(f: <S>(value: Atomic<S>, getEither: (s: S) => Either<EB, B>, setEither: (a: A) => (s: S) => Either<EA, S>) => X) => X);
13
+ match<EC, ED, C, D>(ea: (_: EA) => EC, eb: (_: EB) => ED, ca: (_: C) => Either<EC, A>, bd: (_: B) => Either<ED, D>): PRef<never, never, EC, ED, C, D>;
14
+ matchAll<EC, ED, C, D>(ea: (_: EA) => EC, eb: (_: EB) => ED, ec: (_: EB) => EC, ca: (_: C) => (_: B) => Either<EC, A>, bd: (_: B) => Either<ED, D>): PRef<never, never, EC, ED, C, D>;
15
+ get get(): FIO<EB, B>;
16
+ set(a: A): FIO<EA, void>;
17
+ modify<C>(f: (b: B) => readonly [C, A], __tsplusTrace?: string | undefined): IO<never, EA | EB, C>;
18
+ }
@@ -0,0 +1,102 @@
1
+ import { Maybe } from "@fncts/base/data/Maybe/definition";
2
+ import { IO } from "@fncts/io/IO/definition";
3
+ import type { PRef } from "../definition.js";
4
+ /**
5
+ * Maps and filters the `get` value of the `SRef` with the specified
6
+ * effectual partial function, returning a `SRef` with a `get` value that
7
+ * succeeds with the result of the partial function if it is defined or else
8
+ * fails with `None`.
9
+ * @tsplus pipeable fncts.io.Ref.Synchronized collectIO
10
+ * @tsplus location "@fncts/io/Ref/Synchronized/api"
11
+ */
12
+ export declare function collectIO<B, RC, EC, C>(f: (b: B) => Maybe<IO<RC, EC, C>>, __tsplusTrace?: string): <RA, RB, EA, EB, A>(ref: PRef.Synchronized<RA, RB, EA, EB, A, B>) => PRef.Synchronized<RA, RC | RB, EA, import("@fncts/base/data/Maybe.js").Maybe<EC | EB>, A, C>;
13
+ /**
14
+ * Transforms the `set` value of the `SRef` with the specified effectual
15
+ * function.
16
+ * @tsplus pipeable fncts.io.Ref.Synchronized contramapIO
17
+ * @tsplus location "@fncts/io/Ref/Synchronized/api"
18
+ */
19
+ export declare function contramapIO<A, RC, EC, C>(f: (c: C) => IO<RC, EC, A>, __tsplusTrace?: string): <RA, RB, EA, EB, B>(ref: PRef.Synchronized<RA, RB, EA, EB, A, B>) => PRef.Synchronized<RC | RA, RB, EC | EA, EB, C, B>;
20
+ /**
21
+ * Transforms both the `set` and `get` values of the `Synchronized` with the
22
+ * specified effectual functions.
23
+ * @tsplus pipeable fncts.io.Ref.Synchronized dimapIO
24
+ * @tsplus location "@fncts/io/Ref/Synchronized/api"
25
+ */
26
+ export declare function dimapIO<A, B, RC, EC, RD, ED, C = A, D = B>(f: (c: C) => IO<RC, EC, A>, g: (b: B) => IO<RD, ED, D>, __tsplusTrace?: string): <RA, RB, EA, EB>(ref: PRef.Synchronized<RA, RB, EA, EB, A, B>) => PRef.Synchronized<RC | RA, RD | RB, EC | EA, ED | EB, C, D>;
27
+ /**
28
+ * Filters the `set` value of the `SRef` with the specified effectual
29
+ * predicate, returning a `SRef` with a `set` value that succeeds if the
30
+ * predicate is satisfied or else fails with `None`.
31
+ * @tsplus pipeable fncts.io.Ref.Synchronized filterInputIO
32
+ * @tsplus location "@fncts/io/Ref/Synchronized/api"
33
+ */
34
+ export declare function filterInputIO<RA, RB, EA, EB, B, A, RC, EC, A1 extends A = A>(f: (a: A1) => IO<RC, EC, boolean>, __tsplusTrace?: string): (self: PRef.Synchronized<RA, RB, EA, EB, A, B>) => PRef.Synchronized<RA | RC, RB, Maybe<EC | EA>, EB, A1, B>;
35
+ /**
36
+ * Filters the `get` value of the `SRef` with the specified effectual predicate,
37
+ * returning a `SRef` with a `get` value that succeeds if the predicate is
38
+ * satisfied or else fails with `None`.
39
+ * @tsplus pipeable fncts.io.Ref.Synchronized filterOutputIO
40
+ * @tsplus location "@fncts/io/Ref/Synchronized/api"
41
+ */
42
+ export declare function filterOutputIO<B, RC, EC>(f: (b: B) => IO<RC, EC, boolean>, __tsplusTrace?: string): <RA, RB, EA, EB, A>(ref: PRef.Synchronized<RA, RB, EA, EB, A, B>) => PRef.Synchronized<RA, RC | RB, EA, import("@fncts/base/data/Maybe.js").Maybe<EC | EB>, A, B>;
43
+ /**
44
+ * Atomically modifies the `Synchronized` with the specified function, returning the
45
+ * value immediately before modification.
46
+ * @tsplus pipeable fncts.io.Ref.Synchronized getAndUpdateIO
47
+ * @tsplus location "@fncts/io/Ref/Synchronized/api"
48
+ */
49
+ export declare function getAndUpdateIO<A, R1, E1>(f: (a: A) => IO<R1, E1, A>, __tsplusTrace?: string): <RA, RB, EA, EB>(ref: PRef.Synchronized<RA, RB, EA, EB, A, A>) => import("../../IO.js").IO<R1 | RA | RB, E1 | EA | EB, A>;
50
+ /**
51
+ * Atomically modifies the `Synchronized` with the specified function, returning the
52
+ * value immediately before modification.
53
+ */
54
+ export declare function getAndUpdateJustIO<A, R1, E1>(f: (a: A) => Maybe<IO<R1, E1, A>>, __tsplusTrace?: string): <RA, RB, EA, EB>(ref: PRef.Synchronized<RA, RB, EA, EB, A, A>) => import("../../IO.js").IO<R1 | RA | RB, E1 | EA | EB, A>;
55
+ /**
56
+ * @tsplus pipeable fncts.io.Ref.Synchronized matchIO
57
+ * @tsplus location "@fncts/io/Ref/Synchronized/api"
58
+ */
59
+ export declare function matchIO<EA, EB, A, B, RC, RD, EC, ED, C, D>(ea: (_: EA) => EC, eb: (_: EB) => ED, ca: (_: C) => IO<RC, EC, A>, bd: (_: B) => IO<RD, ED, D>, __tsplusTrace?: string): <RA, RB>(self: PRef.Synchronized<RA, RB, EA, EB, A, B>) => PRef.Synchronized<RC | RA, RD | RB, EC, ED, C, D>;
60
+ /**
61
+ * @tsplus pipeable fncts.io.Ref.Synchronized matchAllIO
62
+ * @tsplus location "@fncts/io/Ref/Synchronized/api"
63
+ */
64
+ export declare function matchAllIO<EA, EB, A, B, RC, RD, EC, ED, C, D>(ea: (_: EA) => EC, eb: (_: EB) => ED, ec: (_: EB) => EC, ca: (_: C) => (_: B) => IO<RC, EC, A>, bd: (_: B) => IO<RD, ED, D>, __tsplusTrace?: string): <RA, RB>(self: PRef.Synchronized<RA, RB, EA, EB, A, B>) => PRef.Synchronized<RC | RA | RB, RD | RB, EC, ED, C, D>;
65
+ /**
66
+ * @tsplus pipeable fncts.io.Ref.Synchronized modifyIO
67
+ * @tsplus location "@fncts/io/Ref/Synchronized/api"
68
+ */
69
+ export declare function modifyIO<A, R1, E1, B>(f: (a: A) => IO<R1, E1, readonly [B, A]>, __tsplusTrace?: string): <RA, RB, EA, EB>(self: PRef.Synchronized<RA, RB, EA, EB, A, A>) => import("../../IO.js").IO<R1 | RA | RB, E1 | EA | EB, B>;
70
+ /**
71
+ * Atomically modifies the `Synchronized` with the specified function, which computes
72
+ * a return value for the modification if the function is defined in the current value
73
+ * otherwise it returns a default value.
74
+ * This is a more powerful version of `updateJust`.
75
+ * @tsplus pipeable fncts.io.Ref.Synchronized modifyJustIO
76
+ * @tsplus location "@fncts/io/Ref/Synchronized/api"
77
+ */
78
+ export declare function modifyJustIO<A, R1, E1, B>(def: B, f: (a: A) => Maybe<IO<R1, E1, readonly [B, A]>>, __tsplusTrace?: string): <RA, RB, EA, EB>(ref: PRef.Synchronized<RA, RB, EA, EB, A, A>) => import("../../IO.js").IO<R1 | RA | RB, E1 | EA | EB, B>;
79
+ /**
80
+ * Atomically modifies the `SRef` with the specified function.
81
+ * @tsplus pipeable fncts.io.Ref.Synchronized updateAndGetIO
82
+ * @tsplus location "@fncts/io/Ref/Synchronized/api"
83
+ */
84
+ export declare function updateAndGetIO<A, R1, E1>(f: (a: A) => IO<R1, E1, A>, __tsplusTrace?: string): <RA, RB, EA, EB>(ref: PRef.Synchronized<RA, RB, EA, EB, A, A>) => import("../../IO.js").IO<R1 | RA | RB, E1 | EA | EB, void>;
85
+ /**
86
+ * Atomically modifies the `Synchronized` with the specified function.
87
+ * @tsplus pipeable fncts.io.Ref.Synchronized updateIO
88
+ * @tsplus location "@fncts/io/Ref/Synchronized/api"
89
+ */
90
+ export declare function updateIO<A, R1, E1>(f: (a: A) => IO<R1, E1, A>, __tsplusTrace?: string): <RA, RB, EA, EB>(ref: PRef.Synchronized<RA, RB, EA, EB, A, A>) => import("../../IO.js").IO<R1 | RA | RB, E1 | EA | EB, void>;
91
+ /**
92
+ * Atomically modifies the `SRef` with the specified function.
93
+ * @tsplus pipeable fncts.io.Ref.Synchronized updateJustAndGetIO
94
+ * @tsplus location "@fncts/io/Ref/Synchronized/api"
95
+ */
96
+ export declare function updateJustAndGetIO<A, R1, E1>(f: (a: A) => Maybe<IO<R1, E1, A>>, __tsplusTrace?: string): <RA, RB, EA, EB>(ref: PRef.Synchronized<RA, RB, EA, EB, A, A>) => import("../../IO.js").IO<R1 | RA | RB, E1 | EA | EB, A>;
97
+ /**
98
+ * Atomically modifies the `SRef` with the specified function.
99
+ * @tsplus pipeable fncts.io.Ref.Synchronized updateJustIO
100
+ * @tsplus location "@fncts/io/Ref/Synchronized/api"
101
+ */
102
+ export declare function updateJustIO<A, R1, E1>(f: (a: A) => Maybe<IO<R1, E1, A>>, __tsplusTrace?: string): <RA, RB, EA, EB>(ref: PRef.Synchronized<RA, RB, EA, EB, A, A>) => import("../../IO.js").IO<R1 | RA | RB, E1 | EA | EB, void>;
@@ -0,0 +1,8 @@
1
+ import { Lazy } from "@fncts/base/data/function/definition";
2
+ import { UIO } from "@fncts/io/IO/definition";
3
+ import { Ref } from "@fncts/io/Ref/definition";
4
+ /**
5
+ * @tsplus static fncts.io.Ref.SynchronizedOps make
6
+ * @tsplus location "@fncts/io/Ref/Synchronized/constructors"
7
+ */
8
+ export declare function makeSynchronized<A>(a: Lazy<A>, __tsplusTrace?: string): UIO<Ref.Synchronized<A>>;
@@ -0,0 +1,44 @@
1
+ import { TSemaphore } from "@fncts/io/TSemaphore/definition";
2
+ import { Either } from "@fncts/base/data/Either/definition";
3
+ import type { PRef } from "../definition.js";
4
+ import { IO } from "@fncts/io/IO";
5
+ import { RefInternal } from "../definition.js";
6
+ /**
7
+ * @tsplus type fncts.io.Ref.Synchronized
8
+ */
9
+ export interface PSynchronized<RA, RB, EA, EB, A, B> extends PRef<RA, RB, EA, EB, A, B> {
10
+ readonly _tag: "Synchronized";
11
+ }
12
+ /**
13
+ * @tsplus type fncts.io.Ref.SynchronizedOps
14
+ */
15
+ export interface PSynchronizedOps {
16
+ }
17
+ /**
18
+ * @tsplus static fncts.io.RefOps Synchronized
19
+ * @tsplus location "@fncts/io/Ref/Synchronized/definition"
20
+ */
21
+ export declare const Synchronized: PSynchronizedOps;
22
+ /**
23
+ * @tsplus type fncts.io.Ref.Synchronized
24
+ */
25
+ export declare class PSynchronizedInternal<RA, RB, EA, EB, A, B> extends RefInternal<RA, RB, EA, EB, A, B> {
26
+ readonly semaphore: TSemaphore;
27
+ readonly unsafeGet: IO<RB, EB, B>;
28
+ readonly unsafeSet: (a: A) => IO<RA, EA, void>;
29
+ readonly _tag = "Synchronized";
30
+ constructor(semaphore: TSemaphore, unsafeGet: IO<RB, EB, B>, unsafeSet: (a: A) => IO<RA, EA, void>);
31
+ get get(): IO<RB, EB, B>;
32
+ set(a: A, __tsplusTrace?: string): IO<RA, EA, void>;
33
+ modify<C>(f: (b: B) => readonly [C, A], __tsplusTrace?: string | undefined): IO<RA | RB, EA | EB, C>;
34
+ modifyIO<R1, E1, C>(f: (b: B) => IO<R1, E1, readonly [C, A]>, __tsplusTrace?: string): IO<RA | RB | R1, EA | EB | E1, C>;
35
+ matchAllIO<RC, RD, EC, ED, C, D>(ea: (_: EA) => EC, eb: (_: EB) => ED, ec: (_: EB) => EC, ca: (_: C) => (_: B) => IO<RC, EC, A>, bd: (_: B) => IO<RD, ED, D>, __tsplusTrace?: string): PSynchronizedInternal<RA | RC | RB, RB | RD, EC, ED, C, D>;
36
+ matchIO<RC, RD, EC, ED, C, D>(ea: (_: EA) => EC, eb: (_: EB) => ED, ca: (_: C) => IO<RC, EC, A>, bd: (_: B) => IO<RD, ED, D>, __tsplusTrace?: string): PSynchronizedInternal<RA | RC, RB | RD, EC, ED, C, D>;
37
+ match<EC, ED, C, D>(ea: (_: EA) => EC, eb: (_: EB) => ED, ca: (_: C) => Either<EC, A>, bd: (_: B) => Either<ED, D>, __tsplusTrace?: string): PSynchronizedInternal<RA, RB, EC, ED, C, D>;
38
+ matchAll<EC, ED, C, D>(ea: (_: EA) => EC, eb: (_: EB) => ED, ec: (_: EB) => EC, ca: (_: C) => (_: B) => Either<EC, A>, bd: (_: B) => Either<ED, D>, __tsplusTrace?: string): PSynchronizedInternal<RA, RB, EC, ED, C, D>;
39
+ withPermit<R, E, A>(io: IO<R, E, A>, __tsplusTrace?: string): IO<R, E, A>;
40
+ }
41
+ /**
42
+ * @tsplus macro remove
43
+ */
44
+ export declare function concreteSynchronized<RA, RB, EA, EB, A, B>(self: PSynchronized<RA, RB, EA, EB, A, B>): asserts self is PSynchronizedInternal<RA, RB, EA, EB, A, B>;
@@ -1,72 +1,3 @@
1
- import { TSemaphore } from "@fncts/io/TSemaphore/definition";
2
- import { UIO } from "@fncts/io/IO/definition";
3
- import { Maybe } from "@fncts/base/data/Maybe/definition";
4
- import { IO } from "@fncts/io/IO";
5
- import { Ref } from "./definition.js";
6
- /**
7
- * @tsplus type fncts.io.Ref.Synchronized
8
- * @tsplus companion fncts.io.Ref.SynchronizedOps
9
- * @tsplus static fncts.io.RefOps Synchronized
10
- */
11
- export declare class Synchronized<A> extends Ref<A> {
12
- readonly semaphore: TSemaphore;
13
- readonly unsafeGet: UIO<A>;
14
- readonly unsafeSet: (a: A) => UIO<void>;
15
- constructor(semaphore: TSemaphore, unsafeGet: UIO<A>, unsafeSet: (a: A) => UIO<void>);
16
- /**
17
- * Reads the value from the `Ref`.
18
- */
19
- get get(): UIO<A>;
20
- /**
21
- * Writes a new value to the `Ref`, with a guarantee of immediate
22
- * consistency (at some cost to performance).
23
- */
24
- set(a: A, __tsplusTrace?: string): UIO<void>;
25
- /**
26
- * Atomically modifies the `Ref.Synchronized` with the specified function,
27
- * which computes a return value for the modification. This is a more
28
- * powerful version of `update`.
29
- */
30
- modifyIO<R, E, B>(f: (a: A) => IO<R, E, readonly [B, A]>, __tsplusTrace?: string): IO<R, E, B>;
31
- modify<B>(f: (a: A) => readonly [B, A], __tsplusTrace?: string | undefined): UIO<B>;
32
- /**
33
- * Atomically modifies the `Ref.Synchronized` with the specified function,
34
- * returning the value immediately before modification.
35
- */
36
- getAndUpdateIO<R, E>(f: (a: A) => IO<R, E, A>, __tsplusTrace?: string): IO<R, E, A>;
37
- /**
38
- * Atomically modifies the `Ref.Synchronized` with the specified partial
39
- * function, returning the value immediately before modification. If the
40
- * function is undefined on the current value it doesn't change it.
41
- */
42
- getAndUpdateJustIO<R, E>(f: (a: A) => Maybe<IO<R, E, A>>): IO<R, E, A>;
43
- /**
44
- * Atomically modifies the `Ref.Synchronized` with the specified function,
45
- * which computes a return value for the modification if the function is
46
- * defined in the current value otherwise it returns a default value. This
47
- * is a more powerful version of `updateSome`.
48
- */
49
- modifyJustIO<R, E, B>(orElse: B, f: (a: A) => Maybe<IO<R, E, readonly [B, A]>>, __tsplusTrace?: string): IO<R, E, B>;
50
- /**
51
- * Atomically modifies the `Ref.Synchronized` with the specified function.
52
- */
53
- updateIO<R, E>(f: (a: A) => IO<R, E, A>, __tsplusTrace?: string): IO<R, E, void>;
54
- /**
55
- * Atomically modifies the `Ref.Synchronized` with the specified function,
56
- * returning the value immediately after modification.
57
- */
58
- updateAndGetIO<R, E>(f: (a: A) => IO<R, E, A>, __tsplusTrace?: string): IO<R, E, A>;
59
- /**
60
- * Atomically modifies the `Ref.Synchronized` with the specified partial
61
- * function. If the function is undefined on the current value it doesn't
62
- * change it.
63
- */
64
- updateJustIO<R, E>(f: (a: A) => Maybe<IO<R, E, A>>, __tsplusTrace?: string): IO<R, E, void>;
65
- /**
66
- * Atomically modifies the `Ref.Synchronized` with the specified partial
67
- * function. If the function is undefined on the current value it returns
68
- * the old value without changing it.
69
- */
70
- updateJustAndGetIO<R, E>(f: (a: A) => Maybe<IO<R, E, A>>, __tsplusTrace?: string): IO<R, E, A>;
71
- protected withPermit<R, E, A>(io: IO<R, E, A>, __tsplusTrace?: string): IO<R, E, A>;
72
- }
1
+ export * from "./Synchronized/api.js";
2
+ export * from "./Synchronized/constructors.js";
3
+ export * from "./Synchronized/definition.js";
@@ -0,0 +1,11 @@
1
+ import { Maybe } from "@fncts/base/data/Maybe/definition";
2
+ import type { PRef } from "../definition.js";
3
+ /**
4
+ * Maps and filters the `get` value of the `Ref` with the specified partial
5
+ * function, returning a `Ref` with a `get` value that succeeds with the
6
+ * result of the partial function if it is defined or else fails with `None`.
7
+ * @tsplus pipeable fncts.io.Ref collect
8
+ * @tsplus pipeable fncts.io.Ref.Synchronized collect
9
+ * @tsplus location "@fncts/io/Ref/api/collect"
10
+ */
11
+ export declare function collect<B, C>(pf: (_: B) => Maybe<C>, __tsplusTrace?: string): <RA, RB, EA, EB, A>(ref: PRef<RA, RB, EA, EB, A, B>) => PRef<RA, RB, EA, import("@fncts/base/data/Maybe.js").Maybe<EB>, A, C>;