@fncts/io 0.0.48 → 0.0.50

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 (873) hide show
  1. package/Cached/api.d.ts +1 -1
  2. package/Channel/api.d.ts +80 -80
  3. package/Channel/core-api.d.ts +26 -26
  4. package/Console/definition.d.ts +1 -0
  5. package/CountdownLatch.d.ts +1 -0
  6. package/Fiber/FiberMessage.d.ts +6 -28
  7. package/Fiber/FiberRuntime.d.ts +108 -77
  8. package/Fiber/api/interruptAs.d.ts +2 -2
  9. package/Fiber/definition.d.ts +2 -0
  10. package/FiberScope/definition.d.ts +3 -0
  11. package/FiberSet.d.ts +2 -1
  12. package/Future/State.d.ts +59 -0
  13. package/Future/api.d.ts +8 -3
  14. package/Future/constructors.d.ts +1 -1
  15. package/Future/definition.d.ts +1 -17
  16. package/Future.d.ts +1 -0
  17. package/Hub/api.d.ts +15 -15
  18. package/IO/api/array.d.ts +22 -0
  19. package/IO/api/awaitAllChildren.d.ts +6 -0
  20. package/IO/api/cachedInvalidate.d.ts +15 -0
  21. package/IO/api/foreachExec.d.ts +18 -0
  22. package/IO/api/forkDaemon.d.ts +1 -1
  23. package/IO/api/onTermination.d.ts +1 -2
  24. package/IO/api/transplant.d.ts +11 -1
  25. package/IO/api.d.ts +247 -225
  26. package/IO/definition.d.ts +12 -25
  27. package/IO.d.ts +3 -1
  28. package/Push/Bounds.d.ts +4 -0
  29. package/Push/FlattenStrategy.d.ts +47 -0
  30. package/Push/IndexedBuffer.d.ts +19 -0
  31. package/Push/MergeStrategy.d.ts +19 -0
  32. package/Push/Operator/IOLoopOperator.d.ts +61 -0
  33. package/Push/Operator/IOOperator.d.ts +63 -0
  34. package/Push/Operator/LoopOperator.d.ts +50 -0
  35. package/Push/Operator/SyncOperator.d.ts +41 -0
  36. package/Push/Operator.d.ts +4 -0
  37. package/Push/Producer/IOProducer.d.ts +41 -0
  38. package/Push/Producer/SyncProducer.d.ts +61 -0
  39. package/Push/Producer.d.ts +1 -0
  40. package/Push/Sink.d.ts +65 -0
  41. package/Push/api.d.ts +78 -161
  42. package/Push/definition.d.ts +92 -19
  43. package/Push/internal.d.ts +3 -0
  44. package/Push.d.ts +6 -0
  45. package/Random/definition.d.ts +1 -0
  46. package/Ref/Synchronized/api.d.ts +1 -1
  47. package/Ref/Synchronized/definition.d.ts +32 -9
  48. package/Ref/definition.d.ts +12 -0
  49. package/Scope/api.d.ts +16 -1
  50. package/Semaphore/Reservation.d.ts +15 -0
  51. package/Semaphore/constructors.d.ts +13 -0
  52. package/Semaphore/definition.d.ts +29 -0
  53. package/Semaphore.d.ts +3 -40
  54. package/Sink/definition.d.ts +5 -6
  55. package/Stream/api.d.ts +164 -164
  56. package/Subject/Atomic.d.ts +19 -9
  57. package/Subject/DeferredRef.d.ts +17 -0
  58. package/Subject/Hold.d.ts +19 -0
  59. package/Subject/RefSubject/Atomic.d.ts +41 -0
  60. package/Subject/RefSubject/Derived.d.ts +43 -0
  61. package/Subject/RefSubject/RefSubject.d.ts +27 -0
  62. package/Subject/definition.d.ts +14 -2
  63. package/Subject.d.ts +2 -0
  64. package/SubscriptionRef.d.ts +0 -1
  65. package/_cjs/Cached/api.cjs +1 -2
  66. package/_cjs/Cached/api.cjs.map +1 -1
  67. package/_cjs/Cached/internal.cjs +1 -2
  68. package/_cjs/Cached/internal.cjs.map +1 -1
  69. package/_cjs/Channel/api/interruptWhen.cjs +1 -2
  70. package/_cjs/Channel/api/interruptWhen.cjs.map +1 -1
  71. package/_cjs/Channel/api/mapOutConcurrentIO.cjs +2 -3
  72. package/_cjs/Channel/api/mapOutConcurrentIO.cjs.map +1 -1
  73. package/_cjs/Channel/api/mergeAll.cjs +1 -2
  74. package/_cjs/Channel/api/mergeAll.cjs.map +1 -1
  75. package/_cjs/Channel/api/mergeAllUnboundedWith.cjs +1 -2
  76. package/_cjs/Channel/api/mergeAllUnboundedWith.cjs.map +1 -1
  77. package/_cjs/Channel/api/mergeAllWith.cjs +2 -3
  78. package/_cjs/Channel/api/mergeAllWith.cjs.map +1 -1
  79. package/_cjs/Channel/api/mergeMap.cjs +1 -2
  80. package/_cjs/Channel/api/mergeMap.cjs.map +1 -1
  81. package/_cjs/Channel/api/mergeWith.cjs +1 -2
  82. package/_cjs/Channel/api/mergeWith.cjs.map +1 -1
  83. package/_cjs/Channel/api/run.cjs +1 -2
  84. package/_cjs/Channel/api/run.cjs.map +1 -1
  85. package/_cjs/Channel/api/runCollect.cjs +1 -2
  86. package/_cjs/Channel/api/runCollect.cjs.map +1 -1
  87. package/_cjs/Channel/api/runDrain.cjs +1 -2
  88. package/_cjs/Channel/api/runDrain.cjs.map +1 -1
  89. package/_cjs/Channel/api/runScoped.cjs +3 -4
  90. package/_cjs/Channel/api/runScoped.cjs.map +1 -1
  91. package/_cjs/Channel/api/toPull.cjs +2 -3
  92. package/_cjs/Channel/api/toPull.cjs.map +1 -1
  93. package/_cjs/Channel/api/zipConcurrent.cjs +1 -2
  94. package/_cjs/Channel/api/zipConcurrent.cjs.map +1 -1
  95. package/_cjs/Channel/api.cjs +206 -207
  96. package/_cjs/Channel/api.cjs.map +1 -1
  97. package/_cjs/Channel/core-api.cjs +43 -42
  98. package/_cjs/Channel/core-api.cjs.map +1 -1
  99. package/_cjs/Channel/internal/ChannelExecutor.cjs +4 -5
  100. package/_cjs/Channel/internal/ChannelExecutor.cjs.map +1 -1
  101. package/_cjs/Channel/internal/ChannelState.cjs +1 -2
  102. package/_cjs/Channel/internal/ChannelState.cjs.map +1 -1
  103. package/_cjs/Channel/internal/SingleProducerAsyncInput.cjs +1 -2
  104. package/_cjs/Channel/internal/SingleProducerAsyncInput.cjs.map +1 -1
  105. package/_cjs/Clock/api.cjs +1 -2
  106. package/_cjs/Clock/api.cjs.map +1 -1
  107. package/_cjs/Clock/definition.cjs +1 -2
  108. package/_cjs/Clock/definition.cjs.map +1 -1
  109. package/_cjs/Clock/live.cjs +1 -2
  110. package/_cjs/Clock/live.cjs.map +1 -1
  111. package/_cjs/Console/api.cjs +1 -2
  112. package/_cjs/Console/api.cjs.map +1 -1
  113. package/_cjs/Console/definition.cjs +2 -2
  114. package/_cjs/Console/definition.cjs.map +1 -1
  115. package/_cjs/Console/live.cjs +1 -2
  116. package/_cjs/Console/live.cjs.map +1 -1
  117. package/_cjs/CountdownLatch.cjs +3 -3
  118. package/_cjs/CountdownLatch.cjs.map +1 -1
  119. package/_cjs/Differ/api.cjs +1 -2
  120. package/_cjs/Differ/api.cjs.map +1 -1
  121. package/_cjs/Fiber/FiberMessage.cjs +3 -24
  122. package/_cjs/Fiber/FiberMessage.cjs.map +1 -1
  123. package/_cjs/Fiber/FiberRuntime.cjs +879 -636
  124. package/_cjs/Fiber/FiberRuntime.cjs.map +1 -1
  125. package/_cjs/Fiber/api/awaitAll.cjs +1 -2
  126. package/_cjs/Fiber/api/awaitAll.cjs.map +1 -1
  127. package/_cjs/Fiber/api/collectAll.cjs +2 -3
  128. package/_cjs/Fiber/api/collectAll.cjs.map +1 -1
  129. package/_cjs/Fiber/api/fromIO.cjs +1 -2
  130. package/_cjs/Fiber/api/fromIO.cjs.map +1 -1
  131. package/_cjs/Fiber/api/interrupt.cjs +2 -3
  132. package/_cjs/Fiber/api/interrupt.cjs.map +1 -1
  133. package/_cjs/Fiber/api/interruptAll.cjs +2 -3
  134. package/_cjs/Fiber/api/interruptAll.cjs.map +1 -1
  135. package/_cjs/Fiber/api/interruptAs.cjs +5 -10
  136. package/_cjs/Fiber/api/interruptAs.cjs.map +1 -1
  137. package/_cjs/Fiber/api/interruptFork.cjs +2 -3
  138. package/_cjs/Fiber/api/interruptFork.cjs.map +1 -1
  139. package/_cjs/Fiber/api/join.cjs +1 -2
  140. package/_cjs/Fiber/api/join.cjs.map +1 -1
  141. package/_cjs/Fiber/api/joinAll.cjs +1 -2
  142. package/_cjs/Fiber/api/joinAll.cjs.map +1 -1
  143. package/_cjs/Fiber/api/mapFiber.cjs +1 -2
  144. package/_cjs/Fiber/api/mapFiber.cjs.map +1 -1
  145. package/_cjs/Fiber/api/mapIO.cjs +2 -3
  146. package/_cjs/Fiber/api/mapIO.cjs.map +1 -1
  147. package/_cjs/Fiber/api/zipWith.cjs +2 -3
  148. package/_cjs/Fiber/api/zipWith.cjs.map +1 -1
  149. package/_cjs/Fiber/constructors.cjs +2 -3
  150. package/_cjs/Fiber/constructors.cjs.map +1 -1
  151. package/_cjs/Fiber/definition.cjs +6 -4
  152. package/_cjs/Fiber/definition.cjs.map +1 -1
  153. package/_cjs/FiberRef/api/locallyScoped.cjs +1 -2
  154. package/_cjs/FiberRef/api/locallyScoped.cjs.map +1 -1
  155. package/_cjs/FiberRef/api/locallyScopedWith.cjs +1 -2
  156. package/_cjs/FiberRef/api/locallyScopedWith.cjs.map +1 -1
  157. package/_cjs/FiberRef/constructors.cjs +1 -2
  158. package/_cjs/FiberRef/constructors.cjs.map +1 -1
  159. package/_cjs/FiberRef/definition.cjs +1 -2
  160. package/_cjs/FiberRef/definition.cjs.map +1 -1
  161. package/_cjs/FiberRef/operations.cjs +1 -2
  162. package/_cjs/FiberRef/operations.cjs.map +1 -1
  163. package/_cjs/FiberRef/unsafe.cjs +1 -2
  164. package/_cjs/FiberRef/unsafe.cjs.map +1 -1
  165. package/_cjs/FiberRefs/Patch.cjs +1 -2
  166. package/_cjs/FiberRefs/Patch.cjs.map +1 -1
  167. package/_cjs/FiberRefs/api.cjs +1 -2
  168. package/_cjs/FiberRefs/api.cjs.map +1 -1
  169. package/_cjs/FiberRefs/definition.cjs +1 -2
  170. package/_cjs/FiberRefs/definition.cjs.map +1 -1
  171. package/_cjs/FiberScope/definition.cjs +29 -6
  172. package/_cjs/FiberScope/definition.cjs.map +1 -1
  173. package/_cjs/FiberSet.cjs +16 -15
  174. package/_cjs/FiberSet.cjs.map +1 -1
  175. package/_cjs/FiberStatus/definition.cjs +1 -2
  176. package/_cjs/FiberStatus/definition.cjs.map +1 -1
  177. package/_cjs/Future/State.cjs +108 -0
  178. package/_cjs/Future/State.cjs.map +1 -0
  179. package/_cjs/Future/api.cjs +71 -64
  180. package/_cjs/Future/api.cjs.map +1 -1
  181. package/_cjs/Future/constructors.cjs +3 -4
  182. package/_cjs/Future/constructors.cjs.map +1 -1
  183. package/_cjs/Future/definition.cjs +1 -15
  184. package/_cjs/Future/definition.cjs.map +1 -1
  185. package/_cjs/Future.cjs +11 -0
  186. package/_cjs/Future.cjs.map +1 -1
  187. package/_cjs/Hub/api.cjs +56 -57
  188. package/_cjs/Hub/api.cjs.map +1 -1
  189. package/_cjs/Hub/internal.cjs +1 -2
  190. package/_cjs/Hub/internal.cjs.map +1 -1
  191. package/_cjs/IO/api/acquireRelease.cjs +1 -2
  192. package/_cjs/IO/api/acquireRelease.cjs.map +1 -1
  193. package/_cjs/IO/api/acquireReleaseExit.cjs +1 -2
  194. package/_cjs/IO/api/acquireReleaseExit.cjs.map +1 -1
  195. package/_cjs/IO/api/acquireReleaseInterruptible.cjs +1 -2
  196. package/_cjs/IO/api/acquireReleaseInterruptible.cjs.map +1 -1
  197. package/_cjs/IO/api/acquireReleaseInterruptibleExit.cjs +1 -2
  198. package/_cjs/IO/api/acquireReleaseInterruptibleExit.cjs.map +1 -1
  199. package/_cjs/IO/api/addFinalizer.cjs +1 -2
  200. package/_cjs/IO/api/addFinalizer.cjs.map +1 -1
  201. package/_cjs/IO/api/addFinalizerExit.cjs +1 -2
  202. package/_cjs/IO/api/addFinalizerExit.cjs.map +1 -1
  203. package/_cjs/IO/api/all.cjs +1 -2
  204. package/_cjs/IO/api/all.cjs.map +1 -1
  205. package/_cjs/IO/api/array.cjs +51 -0
  206. package/_cjs/IO/api/array.cjs.map +1 -0
  207. package/_cjs/IO/api/asyncIO.cjs +1 -2
  208. package/_cjs/IO/api/asyncIO.cjs.map +1 -1
  209. package/_cjs/IO/api/asyncInterrupt.cjs +1 -2
  210. package/_cjs/IO/api/asyncInterrupt.cjs.map +1 -1
  211. package/_cjs/IO/api/awaitAllChildren.cjs +17 -0
  212. package/_cjs/IO/api/awaitAllChildren.cjs.map +1 -0
  213. package/_cjs/IO/api/blocking.cjs +1 -2
  214. package/_cjs/IO/api/blocking.cjs.map +1 -1
  215. package/_cjs/IO/api/bracket.cjs +1 -2
  216. package/_cjs/IO/api/bracket.cjs.map +1 -1
  217. package/_cjs/IO/api/bracketExit.cjs +1 -2
  218. package/_cjs/IO/api/bracketExit.cjs.map +1 -1
  219. package/_cjs/IO/api/cachedInvalidate.cjs +47 -0
  220. package/_cjs/IO/api/cachedInvalidate.cjs.map +1 -0
  221. package/_cjs/IO/api/clockWith.cjs +1 -2
  222. package/_cjs/IO/api/clockWith.cjs.map +1 -1
  223. package/_cjs/IO/api/concurrency.cjs +1 -2
  224. package/_cjs/IO/api/concurrency.cjs.map +1 -1
  225. package/_cjs/IO/api/concurrentFinalizers.cjs +1 -2
  226. package/_cjs/IO/api/concurrentFinalizers.cjs.map +1 -1
  227. package/_cjs/IO/api/consoleWith.cjs +1 -2
  228. package/_cjs/IO/api/consoleWith.cjs.map +1 -1
  229. package/_cjs/IO/api/daemonChildren.cjs +1 -2
  230. package/_cjs/IO/api/daemonChildren.cjs.map +1 -1
  231. package/_cjs/IO/api/delay.cjs +1 -2
  232. package/_cjs/IO/api/delay.cjs.map +1 -1
  233. package/_cjs/IO/api/descriptor.cjs +1 -2
  234. package/_cjs/IO/api/descriptor.cjs.map +1 -1
  235. package/_cjs/IO/api/diffFiberRefs.cjs +1 -2
  236. package/_cjs/IO/api/diffFiberRefs.cjs.map +1 -1
  237. package/_cjs/IO/api/disconnect.cjs +2 -3
  238. package/_cjs/IO/api/disconnect.cjs.map +1 -1
  239. package/_cjs/IO/api/ensuringChildren.cjs +1 -2
  240. package/_cjs/IO/api/ensuringChildren.cjs.map +1 -1
  241. package/_cjs/IO/api/environment.cjs +1 -2
  242. package/_cjs/IO/api/environment.cjs.map +1 -1
  243. package/_cjs/IO/api/foreachConcurrent.cjs +36 -30
  244. package/_cjs/IO/api/foreachConcurrent.cjs.map +1 -1
  245. package/_cjs/IO/api/foreachExec.cjs +30 -6
  246. package/_cjs/IO/api/foreachExec.cjs.map +1 -1
  247. package/_cjs/IO/api/fork.cjs +2 -3
  248. package/_cjs/IO/api/fork.cjs.map +1 -1
  249. package/_cjs/IO/api/forkAll.cjs +1 -2
  250. package/_cjs/IO/api/forkAll.cjs.map +1 -1
  251. package/_cjs/IO/api/forkDaemon.cjs +5 -6
  252. package/_cjs/IO/api/forkDaemon.cjs.map +1 -1
  253. package/_cjs/IO/api/forkIn.cjs +1 -2
  254. package/_cjs/IO/api/forkIn.cjs.map +1 -1
  255. package/_cjs/IO/api/forkScoped.cjs +1 -2
  256. package/_cjs/IO/api/forkScoped.cjs.map +1 -1
  257. package/_cjs/IO/api/fulfill.cjs +1 -2
  258. package/_cjs/IO/api/fulfill.cjs.map +1 -1
  259. package/_cjs/IO/api/interrupt.cjs +4 -5
  260. package/_cjs/IO/api/interrupt.cjs.map +1 -1
  261. package/_cjs/IO/api/memoize.cjs +1 -2
  262. package/_cjs/IO/api/memoize.cjs.map +1 -1
  263. package/_cjs/IO/api/onTermination.cjs +2 -3
  264. package/_cjs/IO/api/onTermination.cjs.map +1 -1
  265. package/_cjs/IO/api/once.cjs +1 -2
  266. package/_cjs/IO/api/once.cjs.map +1 -1
  267. package/_cjs/IO/api/patchFiberRefs.cjs +1 -2
  268. package/_cjs/IO/api/patchFiberRefs.cjs.map +1 -1
  269. package/_cjs/IO/api/provideLayer.cjs +1 -2
  270. package/_cjs/IO/api/provideLayer.cjs.map +1 -1
  271. package/_cjs/IO/api/provideScope.cjs +1 -2
  272. package/_cjs/IO/api/provideScope.cjs.map +1 -1
  273. package/_cjs/IO/api/provideSomeLayer.cjs +1 -2
  274. package/_cjs/IO/api/provideSomeLayer.cjs.map +1 -1
  275. package/_cjs/IO/api/provideSomeRuntime.cjs +1 -2
  276. package/_cjs/IO/api/provideSomeRuntime.cjs.map +1 -1
  277. package/_cjs/IO/api/race.cjs +2 -3
  278. package/_cjs/IO/api/race.cjs.map +1 -1
  279. package/_cjs/IO/api/raceFirst.cjs +1 -2
  280. package/_cjs/IO/api/raceFirst.cjs.map +1 -1
  281. package/_cjs/IO/api/raceWith.cjs +1 -2
  282. package/_cjs/IO/api/raceWith.cjs.map +1 -1
  283. package/_cjs/IO/api/randomWith.cjs +1 -2
  284. package/_cjs/IO/api/randomWith.cjs.map +1 -1
  285. package/_cjs/IO/api/repeat.cjs +1 -2
  286. package/_cjs/IO/api/repeat.cjs.map +1 -1
  287. package/_cjs/IO/api/retry.cjs +1 -2
  288. package/_cjs/IO/api/retry.cjs.map +1 -1
  289. package/_cjs/IO/api/schedule.cjs +1 -2
  290. package/_cjs/IO/api/schedule.cjs.map +1 -1
  291. package/_cjs/IO/api/scope.cjs +1 -2
  292. package/_cjs/IO/api/scope.cjs.map +1 -1
  293. package/_cjs/IO/api/scopeWith.cjs +1 -2
  294. package/_cjs/IO/api/scopeWith.cjs.map +1 -1
  295. package/_cjs/IO/api/scoped.cjs +1 -2
  296. package/_cjs/IO/api/scoped.cjs.map +1 -1
  297. package/_cjs/IO/api/sleep.cjs +1 -2
  298. package/_cjs/IO/api/sleep.cjs.map +1 -1
  299. package/_cjs/IO/api/stateful.cjs +1 -2
  300. package/_cjs/IO/api/stateful.cjs.map +1 -1
  301. package/_cjs/IO/api/supervised.cjs +1 -2
  302. package/_cjs/IO/api/supervised.cjs.map +1 -1
  303. package/_cjs/IO/api/timeout.cjs +9 -11
  304. package/_cjs/IO/api/timeout.cjs.map +1 -1
  305. package/_cjs/IO/api/transplant.cjs +22 -7
  306. package/_cjs/IO/api/transplant.cjs.map +1 -1
  307. package/_cjs/IO/api/whenFiberRef.cjs +1 -2
  308. package/_cjs/IO/api/whenFiberRef.cjs.map +1 -1
  309. package/_cjs/IO/api/whenRef.cjs +1 -2
  310. package/_cjs/IO/api/whenRef.cjs.map +1 -1
  311. package/_cjs/IO/api/withChildren.cjs +1 -2
  312. package/_cjs/IO/api/withChildren.cjs.map +1 -1
  313. package/_cjs/IO/api/withEarlyRelease.cjs +1 -2
  314. package/_cjs/IO/api/withEarlyRelease.cjs.map +1 -1
  315. package/_cjs/IO/api/withFinalizer.cjs +1 -2
  316. package/_cjs/IO/api/withFinalizer.cjs.map +1 -1
  317. package/_cjs/IO/api/withFinalizerExit.cjs +1 -2
  318. package/_cjs/IO/api/withFinalizerExit.cjs.map +1 -1
  319. package/_cjs/IO/api/zipConcurrent.cjs +5 -6
  320. package/_cjs/IO/api/zipConcurrent.cjs.map +1 -1
  321. package/_cjs/IO/api.cjs +522 -473
  322. package/_cjs/IO/api.cjs.map +1 -1
  323. package/_cjs/IO/definition.cjs +2 -3
  324. package/_cjs/IO/definition.cjs.map +1 -1
  325. package/_cjs/IO/runtime.cjs +9 -10
  326. package/_cjs/IO/runtime.cjs.map +1 -1
  327. package/_cjs/IO.cjs +33 -11
  328. package/_cjs/IO.cjs.map +1 -1
  329. package/_cjs/IOEnv/definition.cjs +1 -2
  330. package/_cjs/IOEnv/definition.cjs.map +1 -1
  331. package/_cjs/IOEnv/live.cjs +1 -2
  332. package/_cjs/IOEnv/live.cjs.map +1 -1
  333. package/_cjs/IOEnv/services.cjs +1 -2
  334. package/_cjs/IOEnv/services.cjs.map +1 -1
  335. package/_cjs/Layer/MemoMap.cjs +1 -2
  336. package/_cjs/Layer/MemoMap.cjs.map +1 -1
  337. package/_cjs/Layer/api.cjs +1 -2
  338. package/_cjs/Layer/api.cjs.map +1 -1
  339. package/_cjs/Logger/api.cjs +1 -2
  340. package/_cjs/Logger/api.cjs.map +1 -1
  341. package/_cjs/Logger/constructors.cjs +1 -2
  342. package/_cjs/Logger/constructors.cjs.map +1 -1
  343. package/_cjs/MVar/api.cjs +1 -2
  344. package/_cjs/MVar/api.cjs.map +1 -1
  345. package/_cjs/Push/Bounds.cjs +2 -0
  346. package/_cjs/Push/Bounds.cjs.map +1 -0
  347. package/_cjs/Push/FlattenStrategy.cjs +95 -0
  348. package/_cjs/Push/FlattenStrategy.cjs.map +1 -0
  349. package/_cjs/Push/IndexedBuffer.cjs +70 -0
  350. package/_cjs/Push/IndexedBuffer.cjs.map +1 -0
  351. package/_cjs/Push/MergeStrategy.cjs +45 -0
  352. package/_cjs/Push/MergeStrategy.cjs.map +1 -0
  353. package/_cjs/Push/Operator/IOLoopOperator.cjs +225 -0
  354. package/_cjs/Push/Operator/IOLoopOperator.cjs.map +1 -0
  355. package/_cjs/Push/Operator/IOOperator.cjs +104 -0
  356. package/_cjs/Push/Operator/IOOperator.cjs.map +1 -0
  357. package/_cjs/Push/Operator/LoopOperator.cjs +165 -0
  358. package/_cjs/Push/Operator/LoopOperator.cjs.map +1 -0
  359. package/_cjs/Push/Operator/SyncOperator.cjs +78 -0
  360. package/_cjs/Push/Operator/SyncOperator.cjs.map +1 -0
  361. package/_cjs/Push/Operator.cjs +2 -0
  362. package/_cjs/Push/Operator.cjs.map +1 -0
  363. package/_cjs/Push/Producer/IOProducer.cjs +67 -0
  364. package/_cjs/Push/Producer/IOProducer.cjs.map +1 -0
  365. package/_cjs/Push/Producer/SyncProducer.cjs +107 -0
  366. package/_cjs/Push/Producer/SyncProducer.cjs.map +1 -0
  367. package/_cjs/Push/Producer.cjs +2 -0
  368. package/_cjs/Push/Producer.cjs.map +1 -0
  369. package/_cjs/Push/Sink.cjs +219 -0
  370. package/_cjs/Push/Sink.cjs.map +1 -0
  371. package/_cjs/Push/api.cjs +340 -385
  372. package/_cjs/Push/api.cjs.map +1 -1
  373. package/_cjs/Push/definition.cjs +79 -22
  374. package/_cjs/Push/definition.cjs.map +1 -1
  375. package/_cjs/Push/internal.cjs +32 -28
  376. package/_cjs/Push/internal.cjs.map +1 -1
  377. package/_cjs/Push.cjs +66 -0
  378. package/_cjs/Push.cjs.map +1 -1
  379. package/_cjs/Queue/api/dimapIO.cjs +1 -2
  380. package/_cjs/Queue/api/dimapIO.cjs.map +1 -1
  381. package/_cjs/Queue/api/filterInputIO.cjs +1 -2
  382. package/_cjs/Queue/api/filterInputIO.cjs.map +1 -1
  383. package/_cjs/Queue/api/filterOutputIO.cjs +1 -2
  384. package/_cjs/Queue/api/filterOutputIO.cjs.map +1 -1
  385. package/_cjs/Queue/api/poll.cjs +1 -2
  386. package/_cjs/Queue/api/poll.cjs.map +1 -1
  387. package/_cjs/Queue/api/takeBetween.cjs +1 -2
  388. package/_cjs/Queue/api/takeBetween.cjs.map +1 -1
  389. package/_cjs/Queue/api/takeN.cjs +1 -2
  390. package/_cjs/Queue/api/takeN.cjs.map +1 -1
  391. package/_cjs/Queue/api/zipWithIO.cjs +1 -2
  392. package/_cjs/Queue/api/zipWithIO.cjs.map +1 -1
  393. package/_cjs/Queue/constructors.cjs +1 -2
  394. package/_cjs/Queue/constructors.cjs.map +1 -1
  395. package/_cjs/Queue/internal.cjs +1 -2
  396. package/_cjs/Queue/internal.cjs.map +1 -1
  397. package/_cjs/Queue/strategy.cjs +1 -2
  398. package/_cjs/Queue/strategy.cjs.map +1 -1
  399. package/_cjs/Random/api.cjs +1 -2
  400. package/_cjs/Random/api.cjs.map +1 -1
  401. package/_cjs/Random/definition.cjs +2 -2
  402. package/_cjs/Random/definition.cjs.map +1 -1
  403. package/_cjs/Random/live.cjs +1 -2
  404. package/_cjs/Random/live.cjs.map +1 -1
  405. package/_cjs/Ref/Atomic.cjs +1 -2
  406. package/_cjs/Ref/Atomic.cjs.map +1 -1
  407. package/_cjs/Ref/Derived.cjs +1 -2
  408. package/_cjs/Ref/Derived.cjs.map +1 -1
  409. package/_cjs/Ref/DerivedAll.cjs +1 -2
  410. package/_cjs/Ref/DerivedAll.cjs.map +1 -1
  411. package/_cjs/Ref/Synchronized/api.cjs +2 -3
  412. package/_cjs/Ref/Synchronized/api.cjs.map +1 -1
  413. package/_cjs/Ref/Synchronized/constructors.cjs +2 -3
  414. package/_cjs/Ref/Synchronized/constructors.cjs.map +1 -1
  415. package/_cjs/Ref/Synchronized/definition.cjs +13 -14
  416. package/_cjs/Ref/Synchronized/definition.cjs.map +1 -1
  417. package/_cjs/Ref/api/collect.cjs +1 -2
  418. package/_cjs/Ref/api/collect.cjs.map +1 -1
  419. package/_cjs/Ref/api/dimap.cjs +1 -2
  420. package/_cjs/Ref/api/dimap.cjs.map +1 -1
  421. package/_cjs/Ref/api/filter.cjs +1 -2
  422. package/_cjs/Ref/api/filter.cjs.map +1 -1
  423. package/_cjs/Ref/api/modify.cjs +1 -2
  424. package/_cjs/Ref/api/modify.cjs.map +1 -1
  425. package/_cjs/Ref/api.cjs +1 -2
  426. package/_cjs/Ref/api.cjs.map +1 -1
  427. package/_cjs/Ref/constructors.cjs +1 -2
  428. package/_cjs/Ref/constructors.cjs.map +1 -1
  429. package/_cjs/Ref/definition.cjs.map +1 -1
  430. package/_cjs/Reloadable/api.cjs +1 -2
  431. package/_cjs/Reloadable/api.cjs.map +1 -1
  432. package/_cjs/Reloadable/constructors.cjs +1 -2
  433. package/_cjs/Reloadable/constructors.cjs.map +1 -1
  434. package/_cjs/Reloadable/definition.cjs +1 -2
  435. package/_cjs/Reloadable/definition.cjs.map +1 -1
  436. package/_cjs/RuntimeFlags/Patch.cjs +1 -2
  437. package/_cjs/RuntimeFlags/Patch.cjs.map +1 -1
  438. package/_cjs/RuntimeFlags/RuntimeFlags.cjs +1 -2
  439. package/_cjs/RuntimeFlags/RuntimeFlags.cjs.map +1 -1
  440. package/_cjs/STM/api/atomically.cjs +1 -2
  441. package/_cjs/STM/api/atomically.cjs.map +1 -1
  442. package/_cjs/STM/api/core-api.cjs +1 -2
  443. package/_cjs/STM/api/core-api.cjs.map +1 -1
  444. package/_cjs/STM/api.cjs +1 -2
  445. package/_cjs/STM/api.cjs.map +1 -1
  446. package/_cjs/STM/definition.cjs +2 -3
  447. package/_cjs/STM/definition.cjs.map +1 -1
  448. package/_cjs/STM/driver.cjs +1 -2
  449. package/_cjs/STM/driver.cjs.map +1 -1
  450. package/_cjs/STM/internal/CommitState.cjs +1 -2
  451. package/_cjs/STM/internal/CommitState.cjs.map +1 -1
  452. package/_cjs/STM/internal/Journal.cjs +1 -2
  453. package/_cjs/STM/internal/Journal.cjs.map +1 -1
  454. package/_cjs/Schedule/Decision.cjs +1 -2
  455. package/_cjs/Schedule/Decision.cjs.map +1 -1
  456. package/_cjs/Schedule/api/driver.cjs +1 -2
  457. package/_cjs/Schedule/api/driver.cjs.map +1 -1
  458. package/_cjs/Schedule/api.cjs +1 -2
  459. package/_cjs/Schedule/api.cjs.map +1 -1
  460. package/_cjs/Scope/Finalizer/definition.cjs +1 -2
  461. package/_cjs/Scope/Finalizer/definition.cjs.map +1 -1
  462. package/_cjs/Scope/ReleaseMap/api/releaseAll.cjs +1 -2
  463. package/_cjs/Scope/ReleaseMap/api/releaseAll.cjs.map +1 -1
  464. package/_cjs/Scope/ReleaseMap/api.cjs +1 -2
  465. package/_cjs/Scope/ReleaseMap/api.cjs.map +1 -1
  466. package/_cjs/Scope/ReleaseMap/constructors.cjs +1 -2
  467. package/_cjs/Scope/ReleaseMap/constructors.cjs.map +1 -1
  468. package/_cjs/Scope/ReleaseMap/definition.cjs +1 -2
  469. package/_cjs/Scope/ReleaseMap/definition.cjs.map +1 -1
  470. package/_cjs/Scope/api.cjs +29 -9
  471. package/_cjs/Scope/api.cjs.map +1 -1
  472. package/_cjs/Scope/definition.cjs +1 -2
  473. package/_cjs/Scope/definition.cjs.map +1 -1
  474. package/_cjs/ScopedRef/api.cjs +2 -3
  475. package/_cjs/ScopedRef/api.cjs.map +1 -1
  476. package/_cjs/Semaphore/Reservation.cjs +24 -0
  477. package/_cjs/Semaphore/Reservation.cjs.map +1 -0
  478. package/_cjs/Semaphore/constructors.cjs +25 -0
  479. package/_cjs/Semaphore/constructors.cjs.map +1 -0
  480. package/_cjs/Semaphore/definition.cjs +149 -0
  481. package/_cjs/Semaphore/definition.cjs.map +1 -0
  482. package/_cjs/Semaphore.cjs +31 -138
  483. package/_cjs/Semaphore.cjs.map +1 -1
  484. package/_cjs/Sink/api.cjs +1 -2
  485. package/_cjs/Sink/api.cjs.map +1 -1
  486. package/_cjs/Sink/definition.cjs +2 -3
  487. package/_cjs/Sink/definition.cjs.map +1 -1
  488. package/_cjs/State/api.cjs +1 -2
  489. package/_cjs/State/api.cjs.map +1 -1
  490. package/_cjs/Stream/api/zipAllWith.cjs +1 -2
  491. package/_cjs/Stream/api/zipAllWith.cjs.map +1 -1
  492. package/_cjs/Stream/api/zipWith.cjs +1 -2
  493. package/_cjs/Stream/api/zipWith.cjs.map +1 -1
  494. package/_cjs/Stream/api/zipWithChunks.cjs +1 -2
  495. package/_cjs/Stream/api/zipWithChunks.cjs.map +1 -1
  496. package/_cjs/Stream/api.cjs +702 -703
  497. package/_cjs/Stream/api.cjs.map +1 -1
  498. package/_cjs/Stream/definition.cjs.map +1 -1
  499. package/_cjs/Stream/internal/Handoff.cjs +1 -2
  500. package/_cjs/Stream/internal/Handoff.cjs.map +1 -1
  501. package/_cjs/Stream/internal/Pull.cjs +1 -2
  502. package/_cjs/Stream/internal/Pull.cjs.map +1 -1
  503. package/_cjs/Stream/internal/Take.cjs +1 -2
  504. package/_cjs/Stream/internal/Take.cjs.map +1 -1
  505. package/_cjs/Stream/internal/util.cjs +1 -2
  506. package/_cjs/Stream/internal/util.cjs.map +1 -1
  507. package/_cjs/Subject/Atomic.cjs +46 -12
  508. package/_cjs/Subject/Atomic.cjs.map +1 -1
  509. package/_cjs/Subject/DeferredRef.cjs +53 -0
  510. package/_cjs/Subject/DeferredRef.cjs.map +1 -0
  511. package/_cjs/Subject/Hold.cjs +41 -0
  512. package/_cjs/Subject/Hold.cjs.map +1 -0
  513. package/_cjs/Subject/RefSubject/Atomic.cjs +130 -0
  514. package/_cjs/Subject/RefSubject/Atomic.cjs.map +1 -0
  515. package/_cjs/Subject/RefSubject/Derived.cjs +98 -0
  516. package/_cjs/Subject/RefSubject/Derived.cjs.map +1 -0
  517. package/_cjs/Subject/RefSubject/RefSubject.cjs +19 -0
  518. package/_cjs/Subject/RefSubject/RefSubject.cjs.map +1 -0
  519. package/_cjs/Subject/api.cjs +1 -2
  520. package/_cjs/Subject/api.cjs.map +1 -1
  521. package/_cjs/Subject/definition.cjs +16 -1
  522. package/_cjs/Subject/definition.cjs.map +1 -1
  523. package/_cjs/Subject.cjs +22 -0
  524. package/_cjs/Subject.cjs.map +1 -1
  525. package/_cjs/SubscriptionRef.cjs +2 -4
  526. package/_cjs/SubscriptionRef.cjs.map +1 -1
  527. package/_cjs/Supervisor/api.cjs +1 -2
  528. package/_cjs/Supervisor/api.cjs.map +1 -1
  529. package/_cjs/Supervisor/constructors.cjs +1 -2
  530. package/_cjs/Supervisor/constructors.cjs.map +1 -1
  531. package/_cjs/Supervisor/definition.cjs +1 -2
  532. package/_cjs/Supervisor/definition.cjs.map +1 -1
  533. package/_cjs/SupervisorPatch.cjs +1 -2
  534. package/_cjs/SupervisorPatch.cjs.map +1 -1
  535. package/_cjs/TExit/definition.cjs +1 -2
  536. package/_cjs/TExit/definition.cjs.map +1 -1
  537. package/_cjs/TFuture/api.cjs +1 -2
  538. package/_cjs/TFuture/api.cjs.map +1 -1
  539. package/_cjs/TFuture/constructors.cjs +1 -2
  540. package/_cjs/TFuture/constructors.cjs.map +1 -1
  541. package/_cjs/TFuture/definition.cjs +1 -2
  542. package/_cjs/TFuture/definition.cjs.map +1 -1
  543. package/_cjs/TReentrantLock/api.cjs +1 -2
  544. package/_cjs/TReentrantLock/api.cjs.map +1 -1
  545. package/_cjs/TReentrantLock/definition.cjs +1 -2
  546. package/_cjs/TReentrantLock/definition.cjs.map +1 -1
  547. package/_cjs/TRef/api.cjs +1 -2
  548. package/_cjs/TRef/api.cjs.map +1 -1
  549. package/_cjs/TRef/constructors.cjs +1 -2
  550. package/_cjs/TRef/constructors.cjs.map +1 -1
  551. package/_cjs/TRef/definition.cjs +1 -2
  552. package/_cjs/TRef/definition.cjs.map +1 -1
  553. package/_cjs/TSemaphore/api.cjs +1 -2
  554. package/_cjs/TSemaphore/api.cjs.map +1 -1
  555. package/_cjs/TSemaphore/constructors.cjs +1 -2
  556. package/_cjs/TSemaphore/constructors.cjs.map +1 -1
  557. package/_cjs/TSemaphore/definition.cjs +1 -2
  558. package/_cjs/TSemaphore/definition.cjs.map +1 -1
  559. package/_cjs/collection/immutable/Conc/dropUntilIO.cjs +1 -2
  560. package/_cjs/collection/immutable/Conc/dropUntilIO.cjs.map +1 -1
  561. package/_cjs/collection/immutable/Conc/dropWhileIO.cjs +1 -2
  562. package/_cjs/collection/immutable/Conc/dropWhileIO.cjs.map +1 -1
  563. package/_cjs/collection/immutable/Conc/filterIO.cjs +1 -2
  564. package/_cjs/collection/immutable/Conc/filterIO.cjs.map +1 -1
  565. package/_cjs/collection/immutable/Conc/findIO.cjs +1 -2
  566. package/_cjs/collection/immutable/Conc/findIO.cjs.map +1 -1
  567. package/_cjs/collection/immutable/Conc/mapIO.cjs +1 -2
  568. package/_cjs/collection/immutable/Conc/mapIO.cjs.map +1 -1
  569. package/_cjs/collection/immutable/Conc/takeWhileIO.cjs +1 -2
  570. package/_cjs/collection/immutable/Conc/takeWhileIO.cjs.map +1 -1
  571. package/_cjs/data/Exit/foreachIO.cjs +1 -2
  572. package/_cjs/data/Exit/foreachIO.cjs.map +1 -1
  573. package/_cjs/internal/HashedPair.cjs +1 -2
  574. package/_cjs/internal/HashedPair.cjs.map +1 -1
  575. package/_cjs/internal/Hub.cjs +1 -2
  576. package/_cjs/internal/Hub.cjs.map +1 -1
  577. package/_cjs/internal/MutableQueue.cjs +1 -2
  578. package/_cjs/internal/MutableQueue.cjs.map +1 -1
  579. package/_cjs/internal/Scheduler.cjs +1 -2
  580. package/_cjs/internal/Scheduler.cjs.map +1 -1
  581. package/_cjs/internal/StackTraceBuilder.cjs +1 -2
  582. package/_cjs/internal/StackTraceBuilder.cjs.map +1 -1
  583. package/_mjs/Cached/api.mjs.map +1 -1
  584. package/_mjs/Channel/api/mapOutConcurrentIO.mjs +1 -1
  585. package/_mjs/Channel/api/mergeAllWith.mjs +1 -1
  586. package/_mjs/Channel/api/runScoped.mjs +2 -2
  587. package/_mjs/Channel/api/runScoped.mjs.map +1 -1
  588. package/_mjs/Channel/api/toPull.mjs +1 -1
  589. package/_mjs/Channel/api/toPull.mjs.map +1 -1
  590. package/_mjs/Channel/api.mjs +205 -205
  591. package/_mjs/Channel/api.mjs.map +1 -1
  592. package/_mjs/Channel/core-api.mjs +43 -42
  593. package/_mjs/Channel/core-api.mjs.map +1 -1
  594. package/_mjs/Channel/internal/ChannelExecutor.mjs +3 -3
  595. package/_mjs/Channel/internal/ChannelExecutor.mjs.map +1 -1
  596. package/_mjs/Console/definition.mjs +1 -0
  597. package/_mjs/Console/definition.mjs.map +1 -1
  598. package/_mjs/CountdownLatch.mjs +2 -1
  599. package/_mjs/CountdownLatch.mjs.map +1 -1
  600. package/_mjs/Fiber/FiberMessage.mjs +2 -20
  601. package/_mjs/Fiber/FiberMessage.mjs.map +1 -1
  602. package/_mjs/Fiber/FiberRuntime.mjs +877 -633
  603. package/_mjs/Fiber/FiberRuntime.mjs.map +1 -1
  604. package/_mjs/Fiber/api/collectAll.mjs +1 -1
  605. package/_mjs/Fiber/api/collectAll.mjs.map +1 -1
  606. package/_mjs/Fiber/api/interrupt.mjs +1 -1
  607. package/_mjs/Fiber/api/interrupt.mjs.map +1 -1
  608. package/_mjs/Fiber/api/interruptAll.mjs +1 -1
  609. package/_mjs/Fiber/api/interruptAll.mjs.map +1 -1
  610. package/_mjs/Fiber/api/interruptAs.mjs +4 -7
  611. package/_mjs/Fiber/api/interruptAs.mjs.map +1 -1
  612. package/_mjs/Fiber/api/interruptFork.mjs +1 -1
  613. package/_mjs/Fiber/api/interruptFork.mjs.map +1 -1
  614. package/_mjs/Fiber/api/mapIO.mjs +1 -1
  615. package/_mjs/Fiber/api/mapIO.mjs.map +1 -1
  616. package/_mjs/Fiber/api/zipWith.mjs +1 -1
  617. package/_mjs/Fiber/api/zipWith.mjs.map +1 -1
  618. package/_mjs/Fiber/constructors.mjs +1 -1
  619. package/_mjs/Fiber/constructors.mjs.map +1 -1
  620. package/_mjs/Fiber/definition.mjs +5 -2
  621. package/_mjs/Fiber/definition.mjs.map +1 -1
  622. package/_mjs/FiberScope/definition.mjs +28 -4
  623. package/_mjs/FiberScope/definition.mjs.map +1 -1
  624. package/_mjs/FiberSet.mjs +14 -12
  625. package/_mjs/FiberSet.mjs.map +1 -1
  626. package/_mjs/Future/State.mjs +96 -0
  627. package/_mjs/Future/State.mjs.map +1 -0
  628. package/_mjs/Future/api.mjs +67 -61
  629. package/_mjs/Future/api.mjs.map +1 -1
  630. package/_mjs/Future/constructors.mjs +3 -3
  631. package/_mjs/Future/constructors.mjs.map +1 -1
  632. package/_mjs/Future/definition.mjs +0 -12
  633. package/_mjs/Future/definition.mjs.map +1 -1
  634. package/_mjs/Future.mjs +1 -0
  635. package/_mjs/Future.mjs.map +1 -1
  636. package/_mjs/Hub/api.mjs +55 -55
  637. package/_mjs/Hub/api.mjs.map +1 -1
  638. package/_mjs/IO/api/array.mjs +42 -0
  639. package/_mjs/IO/api/array.mjs.map +1 -0
  640. package/_mjs/IO/api/asyncInterrupt.mjs.map +1 -1
  641. package/_mjs/IO/api/awaitAllChildren.mjs +10 -0
  642. package/_mjs/IO/api/awaitAllChildren.mjs.map +1 -0
  643. package/_mjs/IO/api/cachedInvalidate.mjs +39 -0
  644. package/_mjs/IO/api/cachedInvalidate.mjs.map +1 -0
  645. package/_mjs/IO/api/disconnect.mjs +1 -1
  646. package/_mjs/IO/api/disconnect.mjs.map +1 -1
  647. package/_mjs/IO/api/foreachConcurrent.mjs +35 -28
  648. package/_mjs/IO/api/foreachConcurrent.mjs.map +1 -1
  649. package/_mjs/IO/api/foreachExec.mjs +27 -4
  650. package/_mjs/IO/api/foreachExec.mjs.map +1 -1
  651. package/_mjs/IO/api/fork.mjs +1 -1
  652. package/_mjs/IO/api/fork.mjs.map +1 -1
  653. package/_mjs/IO/api/forkDaemon.mjs +4 -4
  654. package/_mjs/IO/api/forkDaemon.mjs.map +1 -1
  655. package/_mjs/IO/api/interrupt.mjs +3 -3
  656. package/_mjs/IO/api/onTermination.mjs +1 -1
  657. package/_mjs/IO/api/onTermination.mjs.map +1 -1
  658. package/_mjs/IO/api/race.mjs +1 -1
  659. package/_mjs/IO/api/race.mjs.map +1 -1
  660. package/_mjs/IO/api/timeout.mjs +8 -9
  661. package/_mjs/IO/api/timeout.mjs.map +1 -1
  662. package/_mjs/IO/api/transplant.mjs +19 -5
  663. package/_mjs/IO/api/transplant.mjs.map +1 -1
  664. package/_mjs/IO/api/zipConcurrent.mjs +4 -4
  665. package/_mjs/IO/api/zipConcurrent.mjs.map +1 -1
  666. package/_mjs/IO/api.mjs +515 -468
  667. package/_mjs/IO/api.mjs.map +1 -1
  668. package/_mjs/IO/definition.mjs +1 -1
  669. package/_mjs/IO/definition.mjs.map +1 -1
  670. package/_mjs/IO/runtime.mjs +8 -8
  671. package/_mjs/IO/runtime.mjs.map +1 -1
  672. package/_mjs/IO.mjs +3 -1
  673. package/_mjs/IO.mjs.map +1 -1
  674. package/_mjs/IOEnv/definition.mjs.map +1 -1
  675. package/_mjs/Push/Bounds.mjs +2 -0
  676. package/_mjs/Push/Bounds.mjs.map +1 -0
  677. package/_mjs/Push/FlattenStrategy.mjs +86 -0
  678. package/_mjs/Push/FlattenStrategy.mjs.map +1 -0
  679. package/_mjs/Push/IndexedBuffer.mjs +61 -0
  680. package/_mjs/Push/IndexedBuffer.mjs.map +1 -0
  681. package/_mjs/Push/MergeStrategy.mjs +34 -0
  682. package/_mjs/Push/MergeStrategy.mjs.map +1 -0
  683. package/_mjs/Push/Operator/IOLoopOperator.mjs +208 -0
  684. package/_mjs/Push/Operator/IOLoopOperator.mjs.map +1 -0
  685. package/_mjs/Push/Operator/IOOperator.mjs +91 -0
  686. package/_mjs/Push/Operator/IOOperator.mjs.map +1 -0
  687. package/_mjs/Push/Operator/LoopOperator.mjs +151 -0
  688. package/_mjs/Push/Operator/LoopOperator.mjs.map +1 -0
  689. package/_mjs/Push/Operator/SyncOperator.mjs +67 -0
  690. package/_mjs/Push/Operator/SyncOperator.mjs.map +1 -0
  691. package/_mjs/Push/Operator.mjs +2 -0
  692. package/_mjs/Push/Operator.mjs.map +1 -0
  693. package/_mjs/Push/Producer/IOProducer.mjs +55 -0
  694. package/_mjs/Push/Producer/IOProducer.mjs.map +1 -0
  695. package/_mjs/Push/Producer/SyncProducer.mjs +90 -0
  696. package/_mjs/Push/Producer/SyncProducer.mjs.map +1 -0
  697. package/_mjs/Push/Producer.mjs +2 -0
  698. package/_mjs/Push/Producer.mjs.map +1 -0
  699. package/_mjs/Push/Sink.mjs +206 -0
  700. package/_mjs/Push/Sink.mjs.map +1 -0
  701. package/_mjs/Push/api.mjs +311 -344
  702. package/_mjs/Push/api.mjs.map +1 -1
  703. package/_mjs/Push/definition.mjs +73 -18
  704. package/_mjs/Push/definition.mjs.map +1 -1
  705. package/_mjs/Push/internal.mjs +30 -26
  706. package/_mjs/Push/internal.mjs.map +1 -1
  707. package/_mjs/Push.mjs +7 -1
  708. package/_mjs/Push.mjs.map +1 -1
  709. package/_mjs/Random/definition.mjs +1 -0
  710. package/_mjs/Random/definition.mjs.map +1 -1
  711. package/_mjs/Ref/Synchronized/api.mjs +1 -1
  712. package/_mjs/Ref/Synchronized/api.mjs.map +1 -1
  713. package/_mjs/Ref/Synchronized/constructors.mjs +1 -1
  714. package/_mjs/Ref/Synchronized/definition.mjs +12 -12
  715. package/_mjs/Ref/Synchronized/definition.mjs.map +1 -1
  716. package/_mjs/Ref/definition.mjs.map +1 -1
  717. package/_mjs/STM/definition.mjs +1 -1
  718. package/_mjs/Scope/api.mjs +22 -4
  719. package/_mjs/Scope/api.mjs.map +1 -1
  720. package/_mjs/ScopedRef/api.mjs +1 -1
  721. package/_mjs/ScopedRef/api.mjs.map +1 -1
  722. package/_mjs/Semaphore/Reservation.mjs +16 -0
  723. package/_mjs/Semaphore/Reservation.mjs.map +1 -0
  724. package/_mjs/Semaphore/constructors.mjs +17 -0
  725. package/_mjs/Semaphore/constructors.mjs.map +1 -0
  726. package/_mjs/Semaphore/definition.mjs +141 -0
  727. package/_mjs/Semaphore/definition.mjs.map +1 -0
  728. package/_mjs/Semaphore.mjs +4 -133
  729. package/_mjs/Semaphore.mjs.map +1 -1
  730. package/_mjs/Sink/definition.mjs +2 -3
  731. package/_mjs/Sink/definition.mjs.map +1 -1
  732. package/_mjs/Stream/api.mjs +701 -701
  733. package/_mjs/Stream/api.mjs.map +1 -1
  734. package/_mjs/Stream/definition.mjs.map +1 -1
  735. package/_mjs/Subject/Atomic.mjs +46 -10
  736. package/_mjs/Subject/Atomic.mjs.map +1 -1
  737. package/_mjs/Subject/DeferredRef.mjs +45 -0
  738. package/_mjs/Subject/DeferredRef.mjs.map +1 -0
  739. package/_mjs/Subject/Hold.mjs +33 -0
  740. package/_mjs/Subject/Hold.mjs.map +1 -0
  741. package/_mjs/Subject/RefSubject/Atomic.mjs +122 -0
  742. package/_mjs/Subject/RefSubject/Atomic.mjs.map +1 -0
  743. package/_mjs/Subject/RefSubject/Derived.mjs +90 -0
  744. package/_mjs/Subject/RefSubject/Derived.mjs.map +1 -0
  745. package/_mjs/Subject/RefSubject/RefSubject.mjs +12 -0
  746. package/_mjs/Subject/RefSubject/RefSubject.mjs.map +1 -0
  747. package/_mjs/Subject/definition.mjs +14 -0
  748. package/_mjs/Subject/definition.mjs.map +1 -1
  749. package/_mjs/Subject.mjs +2 -0
  750. package/_mjs/Subject.mjs.map +1 -1
  751. package/_mjs/SubscriptionRef.mjs +1 -2
  752. package/_mjs/SubscriptionRef.mjs.map +1 -1
  753. package/_src/Cached/api.ts +3 -3
  754. package/_src/Channel/api/toPull.ts +1 -1
  755. package/_src/Channel/api.ts +273 -272
  756. package/_src/Channel/core-api.ts +57 -55
  757. package/_src/Channel/internal/ChannelExecutor.ts +3 -3
  758. package/_src/Console/definition.ts +1 -0
  759. package/_src/CountdownLatch.ts +2 -0
  760. package/_src/Fiber/FiberMessage.ts +3 -28
  761. package/_src/Fiber/FiberRuntime.ts +988 -616
  762. package/_src/Fiber/api/interruptAs.ts +4 -3
  763. package/_src/Fiber/constructors.ts +1 -1
  764. package/_src/Fiber/definition.ts +4 -0
  765. package/_src/FiberScope/definition.ts +40 -2
  766. package/_src/FiberSet.ts +6 -2
  767. package/_src/Future/State.ts +128 -0
  768. package/_src/Future/api.ts +62 -51
  769. package/_src/Future/constructors.ts +4 -2
  770. package/_src/Future/definition.ts +2 -17
  771. package/_src/Future.ts +4 -3
  772. package/_src/Hub/api.ts +61 -61
  773. package/_src/IO/api/addFinalizerExit.ts +4 -4
  774. package/_src/IO/api/array.ts +49 -0
  775. package/_src/IO/api/asyncInterrupt.ts +1 -1
  776. package/_src/IO/api/awaitAllChildren.ts +6 -0
  777. package/_src/IO/api/cachedInvalidate.ts +42 -0
  778. package/_src/IO/api/foreachConcurrent.ts +39 -23
  779. package/_src/IO/api/foreachExec.ts +47 -0
  780. package/_src/IO/api/fork.ts +1 -1
  781. package/_src/IO/api/forkDaemon.ts +2 -2
  782. package/_src/IO/api/memoize.ts +3 -3
  783. package/_src/IO/api/onTermination.ts +2 -2
  784. package/_src/IO/api/transplant.ts +26 -3
  785. package/_src/IO/api/zipConcurrent.ts +2 -2
  786. package/_src/IO/api.ts +547 -525
  787. package/_src/IO/definition.ts +4 -28
  788. package/_src/IO/runtime.ts +0 -1
  789. package/_src/IO.ts +65 -63
  790. package/_src/IOEnv/definition.ts +1 -4
  791. package/_src/Push/Bounds.ts +4 -0
  792. package/_src/Push/FlattenStrategy.ts +137 -0
  793. package/_src/Push/IndexedBuffer.ts +79 -0
  794. package/_src/Push/MergeStrategy.ts +59 -0
  795. package/_src/Push/Operator/IOLoopOperator.ts +413 -0
  796. package/_src/Push/Operator/IOOperator.ts +173 -0
  797. package/_src/Push/Operator/LoopOperator.ts +242 -0
  798. package/_src/Push/Operator/SyncOperator.ts +107 -0
  799. package/_src/Push/Operator.ts +7 -0
  800. package/_src/Push/Producer/IOProducer.ts +83 -0
  801. package/_src/Push/Producer/SyncProducer.ts +105 -0
  802. package/_src/Push/Producer.ts +0 -0
  803. package/_src/Push/Sink.ts +302 -0
  804. package/_src/Push/api.ts +387 -513
  805. package/_src/Push/definition.ts +216 -23
  806. package/_src/Push/internal.ts +11 -0
  807. package/_src/Push.ts +7 -1
  808. package/_src/Random/definition.ts +1 -0
  809. package/_src/Ref/Synchronized/api.ts +2 -2
  810. package/_src/Ref/Synchronized/definition.ts +82 -38
  811. package/_src/Ref/definition.ts +26 -0
  812. package/_src/Scope/api.ts +22 -0
  813. package/_src/Semaphore/Reservation.ts +15 -0
  814. package/_src/Semaphore/constructors.ts +14 -0
  815. package/_src/Semaphore/definition.ts +180 -0
  816. package/_src/Semaphore.ts +5 -159
  817. package/_src/Sink/definition.ts +4 -5
  818. package/_src/Stream/api.ts +679 -679
  819. package/_src/Stream/definition.ts +0 -1
  820. package/_src/Subject/Atomic.ts +68 -11
  821. package/_src/Subject/DeferredRef.ts +44 -0
  822. package/_src/Subject/Hold.ts +48 -0
  823. package/_src/Subject/RefSubject/Atomic.ts +193 -0
  824. package/_src/Subject/RefSubject/Derived.ts +179 -0
  825. package/_src/Subject/RefSubject/RefSubject.ts +90 -0
  826. package/_src/Subject/definition.ts +21 -3
  827. package/_src/Subject.ts +5 -3
  828. package/_src/SubscriptionRef.ts +1 -1
  829. package/_src/index.ts +49 -50
  830. package/index.d.ts +0 -1
  831. package/package.json +4 -4
  832. package/IO/api/sequenceT.d.ts +0 -26
  833. package/RefSubject/Atomic.d.ts +0 -34
  834. package/RefSubject/Synchronized/api.d.ts +0 -9
  835. package/RefSubject/Synchronized/definition.d.ts +0 -39
  836. package/RefSubject/api.d.ts +0 -120
  837. package/RefSubject/definition.d.ts +0 -52
  838. package/RefSubject.d.ts +0 -3
  839. package/_cjs/IO/api/sequenceT.cjs +0 -18
  840. package/_cjs/IO/api/sequenceT.cjs.map +0 -1
  841. package/_cjs/RefSubject/Atomic.cjs +0 -108
  842. package/_cjs/RefSubject/Atomic.cjs.map +0 -1
  843. package/_cjs/RefSubject/Synchronized/api.cjs +0 -23
  844. package/_cjs/RefSubject/Synchronized/api.cjs.map +0 -1
  845. package/_cjs/RefSubject/Synchronized/definition.cjs +0 -56
  846. package/_cjs/RefSubject/Synchronized/definition.cjs.map +0 -1
  847. package/_cjs/RefSubject/api.cjs +0 -252
  848. package/_cjs/RefSubject/api.cjs.map +0 -1
  849. package/_cjs/RefSubject/definition.cjs +0 -26
  850. package/_cjs/RefSubject/definition.cjs.map +0 -1
  851. package/_cjs/RefSubject.cjs +0 -39
  852. package/_cjs/RefSubject.cjs.map +0 -1
  853. package/_mjs/IO/api/sequenceT.mjs +0 -10
  854. package/_mjs/IO/api/sequenceT.mjs.map +0 -1
  855. package/_mjs/RefSubject/Atomic.mjs +0 -99
  856. package/_mjs/RefSubject/Atomic.mjs.map +0 -1
  857. package/_mjs/RefSubject/Synchronized/api.mjs +0 -15
  858. package/_mjs/RefSubject/Synchronized/api.mjs.map +0 -1
  859. package/_mjs/RefSubject/Synchronized/definition.mjs +0 -47
  860. package/_mjs/RefSubject/Synchronized/definition.mjs.map +0 -1
  861. package/_mjs/RefSubject/api.mjs +0 -229
  862. package/_mjs/RefSubject/api.mjs.map +0 -1
  863. package/_mjs/RefSubject/definition.mjs +0 -19
  864. package/_mjs/RefSubject/definition.mjs.map +0 -1
  865. package/_mjs/RefSubject.mjs +0 -5
  866. package/_mjs/RefSubject.mjs.map +0 -1
  867. package/_src/IO/api/sequenceT.ts +0 -16
  868. package/_src/RefSubject/Atomic.ts +0 -129
  869. package/_src/RefSubject/Synchronized/api.ts +0 -14
  870. package/_src/RefSubject/Synchronized/definition.ts +0 -76
  871. package/_src/RefSubject/api.ts +0 -253
  872. package/_src/RefSubject/definition.ts +0 -70
  873. package/_src/RefSubject.ts +0 -5
@@ -1,22 +1,58 @@
1
1
  var _a, _b;
2
- import * as tsplus_module_1 from "@fncts/io/Push/api";
3
- import { Multicast } from "@fncts/io/Push";
2
+ const fileName_1 = "(@fncts/io) src/Subject/Atomic.ts";
3
+ import * as tsplus_module_1 from "@fncts/base/data/Exit/constructors";
4
+ import * as tsplus_module_2 from "@fncts/io/IO/api";
5
+ import * as tsplus_module_3 from "@fncts/io/Scope/api";
6
+ import * as tsplus_module_4 from "@fncts/io/IO/api/environment";
7
+ import * as tsplus_module_5 from "@fncts/base/data/ExecutionStrategy";
8
+ import { HashSet as MutableHashSet } from "@fncts/base/collection/mutable/HashSet";
4
9
  import { PushTypeId, PushVariance } from "@fncts/io/Push/definition";
10
+ import { withScope } from "@fncts/io/Push/internal";
11
+ import { PSubject } from "@fncts/io/Subject/definition";
5
12
  import { SubjectTypeId } from "@fncts/io/Subject/definition";
6
- export class AtomicSubject {
13
+ import { IO } from "../IO.mjs";
14
+ export class AtomicSubject extends PSubject {
7
15
  constructor() {
16
+ super(...arguments);
8
17
  this[_a] = SubjectTypeId;
9
18
  this[_b] = PushTypeId;
10
- this.stream = new Multicast(tsplus_module_1.never);
19
+ this.sinks = MutableHashSet.empty();
20
+ this.interruptScopes = tsplus_module_2.fiberIdWith(fiberId => tsplus_module_2.foreachDiscard(this.sinks, ([,, scope]) => scope.close(() => tsplus_module_1.interrupt(fiberId, fileName_1 + ":29:76")), fileName_1 + ":29:32"));
21
+ this.interrupt = this.interruptScopes;
11
22
  }
12
- run(emitter) {
13
- return this.stream.run(emitter);
23
+ get subscribers() {
24
+ return this.sinks.size;
14
25
  }
15
- event(value) {
16
- return this.stream.event(value);
26
+ run(sink) {
27
+ return this.addSink(sink, scope => tsplus_module_3.awaitClose(scope));
17
28
  }
18
- error(cause) {
19
- return this.stream.error(cause);
29
+ onSuccess(value) {
30
+ return tsplus_module_2.defer(() => this.unsafeOnSuccess(value), fileName_1 + ":39:20");
31
+ }
32
+ onFailure(cause) {
33
+ return tsplus_module_2.defer(() => this.unsafeOnFailure(cause), fileName_1 + ":43:20");
34
+ }
35
+ addSink(sink, f) {
36
+ return withScope(innerScope => tsplus_module_4.environmentWithIO(environment => {
37
+ const entry = [sink, environment, innerScope];
38
+ this.sinks.add(entry);
39
+ const remove = tsplus_module_2.succeed(() => this.sinks.remove(entry), fileName_1 + ":55:28");
40
+ return tsplus_module_2.zipRight(f(innerScope), fileName_1 + ":56:51")(tsplus_module_3.addFinalizer(() => remove, fileName_1 + ":56:41")(innerScope));
41
+ }, fileName_1 + ":52:29"), tsplus_module_5.sequential);
42
+ }
43
+ unsafeOnSuccess(a) {
44
+ if (this.sinks.size === 0) {
45
+ return tsplus_module_2.unit;
46
+ } else {
47
+ return tsplus_module_2.foreachDiscard(this.sinks, ([sink, environment]) => tsplus_module_4.provideSomeEnvironment(environment, fileName_1 + ":70:34")(tsplus_module_2.catchAllCause(cause => sink.onFailure(cause), fileName_1 + ":69:25")(sink.onSuccess(a))), fileName_1 + ":66:41");
48
+ }
49
+ }
50
+ unsafeOnFailure(cause) {
51
+ if (this.sinks.size === 0) {
52
+ return tsplus_module_2.unit;
53
+ } else {
54
+ return tsplus_module_2.foreachDiscard(this.sinks, ([sink, environment, scope]) => tsplus_module_4.provideSomeEnvironment(environment, fileName_1 + ":83:34")(tsplus_module_2.catchAllCause(error => scope.close(() => tsplus_module_1.failCause(error, fileName_1 + ":82:63")), fileName_1 + ":82:25")(sink.onFailure(cause))), fileName_1 + ":79:41");
55
+ }
20
56
  }
21
57
  }
22
58
  _a = SubjectTypeId, _b = PushTypeId;
@@ -1 +1 @@
1
- {"version":3,"file":"Atomic.mjs","names":["Multicast","PushTypeId","PushVariance","SubjectTypeId","AtomicSubject","constructor","_a","_b","stream","tsplus_module_1","never","run","emitter","event","value","error","cause"],"sources":["../../_src/Subject/Atomic.ts"],"sourcesContent":[null],"mappings":";;AAGA,SAASA,SAAS,QAAc,gBAAgB;AAChD,SAASC,UAAU,EAAEC,YAAY,QAAQ,2BAA2B;AACpE,SAASC,aAAa,QAAQ,8BAA8B;AAE5D,OAAM,MAAOC,aAAa;EAA1BC,YAAA;IACW,KAAAC,EAAA,CAAe,GAAkBH,aAAa;IAC9C,KAAAI,EAAA,CAAY,GAAqBN,UAAU;IAO3C,KAAAO,MAAM,GAAG,IAAIR,SAAS,CAAAS,eAAA,CAAAC,KAAA,CAAyB;EAa1D;EAXEC,GAAGA,CAAIC,OAAsB;IAC3B,OAAO,IAAI,CAACJ,MAAM,CAACG,GAAG,CAACC,OAAO,CAAC;EACjC;EAEAC,KAAKA,CAACC,KAAQ;IACZ,OAAO,IAAI,CAACN,MAAM,CAACK,KAAK,CAACC,KAAK,CAAC;EACjC;EAEAC,KAAKA,CAACC,KAAe;IACnB,OAAO,IAAI,CAACR,MAAM,CAACO,KAAK,CAACC,KAAK,CAAC;EACjC;;KApBUb,aAAa,EAAAI,EAAA,GACbN,UAAU","ignoreList":[]}
1
+ {"version":3,"file":"Atomic.mjs","names":["HashSet","MutableHashSet","PushTypeId","PushVariance","withScope","PSubject","SubjectTypeId","IO","AtomicSubject","constructor","_a","_b","sinks","empty","interruptScopes","tsplus_module_2","fiberIdWith","fiberId","foreachDiscard","scope","close","tsplus_module_1","interrupt","fileName_1","subscribers","size","run","sink","addSink","tsplus_module_3","awaitClose","onSuccess","value","defer","unsafeOnSuccess","onFailure","cause","unsafeOnFailure","f","innerScope","tsplus_module_4","environmentWithIO","environment","entry","add","remove","succeed","zipRight","addFinalizer","tsplus_module_5","sequential","a","unit","provideSomeEnvironment","catchAllCause","error","failCause"],"sources":["../../_src/Subject/Atomic.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,45 @@
1
+ const fileName_1 = "(@fncts/io) src/Subject/DeferredRef.ts";
2
+ import * as tsplus_module_1 from "@fncts/base/data/Maybe/definition";
3
+ import * as tsplus_module_2 from "@fncts/io/Future/api";
4
+ import * as tsplus_module_3 from "@fncts/base/data/Maybe/api";
5
+ import * as tsplus_module_4 from "@fncts/io/IO/api";
6
+ import * as tsplus_module_5 from "@fncts/base/data/Equatable/api";
7
+ import * as tsplus_module_6 from "@fncts/base/data/Maybe/constructors";
8
+ import * as tsplus_module_7 from "@fncts/base/data/Exit/constructors";
9
+ import * as tsplus_module_8 from "@fncts/io/Future/constructors";
10
+ import { External } from "../IO.mjs";
11
+ export class FutureRef extends External {
12
+ constructor(fiberId, current) {
13
+ super();
14
+ this.fiberId = fiberId;
15
+ this.current = current;
16
+ this.version = -1;
17
+ this.toIO = tsplus_module_4.defer(() => {
18
+ const current = this.current.get;
19
+ if (tsplus_module_1.isNothing(current)) {
20
+ return tsplus_module_2.wait(this.future, fileName_1 + ":20:25");
21
+ } else {
22
+ return tsplus_module_3.toUndefined(current);
23
+ }
24
+ }, fileName_1 + ":17:35");
25
+ this.reset();
26
+ }
27
+ done(exit) {
28
+ const current = this.current.get;
29
+ if (tsplus_module_1.isJust(current) && tsplus_module_5.strictEquals(current.value, exit)) {
30
+ return false;
31
+ }
32
+ tsplus_module_2.unsafeDone(exit, fileName_1 + ":31:27")(this.future);
33
+ this.version += 1;
34
+ return true;
35
+ }
36
+ reset() {
37
+ this.current.set(tsplus_module_6.nothing(fileName_1 + ":37:29"));
38
+ this.version = -1;
39
+ if (this.future) {
40
+ tsplus_module_2.unsafeDone(tsplus_module_7.interrupt(this.fiberId, fileName_1 + ":40:44"), fileName_1 + ":40:29")(this.future);
41
+ }
42
+ this.future = tsplus_module_8.unsafeMake(this.fiberId);
43
+ }
44
+ }
45
+ //# sourceMappingURL=DeferredRef.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DeferredRef.mjs","names":["External","FutureRef","constructor","fiberId","current","version","toIO","tsplus_module_4","defer","get","tsplus_module_1","isNothing","tsplus_module_2","wait","future","fileName_1","tsplus_module_3","toUndefined","reset","done","exit","isJust","tsplus_module_5","strictEquals","value","unsafeDone","set","tsplus_module_6","nothing","tsplus_module_7","interrupt","tsplus_module_8","unsafeMake"],"sources":["../../_src/Subject/DeferredRef.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;AAEA,SAASA,QAAQ,QAAY,WAAU;AAEvC,OAAM,MAAOC,SAAgB,SAAQD,QAAqB;EAIxDE,YACWC,OAAgB,EAChBC,OAA2C;IAEpD,KAAK,EAAE;IAHE,KAAAD,OAAO,GAAPA,OAAO;IACP,KAAAC,OAAO,GAAPA,OAAO;IALX,KAAAC,OAAO,GAAG,CAAC,CAAC;IAWnB,KAAAC,IAAI,GAAoBC,eAAA,CAAAC,KAAA,CAAS,MAAK;MACpC,MAAMJ,OAAO,GAAG,IAAI,CAACA,OAAO,CAACK,GAAG;MAChC,IAAIC,eAAA,CAAAC,SAAA,CAAAP,OAAO,CAAY,EAAE;QACvB,OAAAQ,eAAA,CAAAC,IAAA,CAAO,IAAI,CAACC,MAAM,EAAAC,UAAA;MACpB,CAAC,MAAM;QACL,OAAOC,eAAA,CAAAC,WAAA,CAAAb,OAAO,CAAO;MACvB;IACF,CAAC,EAAAW,UAAA,YAAC;IAVA,IAAI,CAACG,KAAK,EAAE;EACd;EAWAC,IAAIA,CAACC,IAAgB;IACnB,MAAMhB,OAAO,GAAG,IAAI,CAACA,OAAO,CAACK,GAAG;IAChC,IAAIC,eAAA,CAAAW,MAAA,CAAAjB,OAAO,CAAS,IAAIkB,eAAA,CAAAC,YAAA,CAAuBnB,OAAO,CAACoB,KAAK,EAAEJ,IAAI,CAAC,EAAE;MACnE,OAAO,KAAK;IACd;IACAR,eAAA,CAAAa,UAAA,CAAuBL,IAAI,EAAAL,UAAA,aAA3B,IAAI,CAACD,MAAM,CAAiB;IAC5B,IAAI,CAACT,OAAO,IAAI,CAAC;IACjB,OAAO,IAAI;EACb;EAEAa,KAAKA,CAAA;IACH,IAAI,CAACd,OAAO,CAACsB,GAAG,CAACC,eAAA,CAAAC,OAAA,CAAAb,UAAA,YAAS,CAAC;IAC3B,IAAI,CAACV,OAAO,GAAG,CAAC,CAAC;IACjB,IAAI,IAAI,CAACS,MAAM,EAAE;MACfF,eAAA,CAAAa,UAAA,CAAuBI,eAAA,CAAAC,SAAA,CAAe,IAAI,CAAC3B,OAAO,EAAAY,UAAA,YAAC,EAAAA,UAAA,aAAnD,IAAI,CAACD,MAAM,CAAyC;IACtD;IACA,IAAI,CAACA,MAAM,GAAGiB,eAAA,CAAAC,UAAA,CAAkB,IAAI,CAAC7B,OAAO,CAAC;EAC/C","ignoreList":[]}
@@ -0,0 +1,33 @@
1
+ const fileName_1 = "(@fncts/io) src/Subject/Hold.ts";
2
+ import * as tsplus_module_1 from "@fncts/base/data/Maybe/constructors";
3
+ import * as tsplus_module_2 from "@fncts/base/data/Exit/constructors";
4
+ import * as tsplus_module_3 from "@fncts/io/IO/api";
5
+ import * as tsplus_module_4 from "@fncts/base/data/Exit/api";
6
+ import * as tsplus_module_5 from "@fncts/base/data/Maybe/destructors";
7
+ import * as tsplus_module_6 from "@fncts/io/Scope/api";
8
+ import { AtomicReference } from "@fncts/base/internal/AtomicReference";
9
+ import { IO } from "../IO.mjs";
10
+ import { AtomicSubject } from "./Atomic.mjs";
11
+ export class HoldSubject extends AtomicSubject {
12
+ constructor() {
13
+ super(...arguments);
14
+ this.value = new AtomicReference(tsplus_module_1.nothing(fileName_1 + ":16:83"));
15
+ this.interrupt = tsplus_module_3.zipRight(tsplus_module_3.succeed(() => this.value.set(tsplus_module_1.nothing(fileName_1 + ":47:87")), fileName_1 + ":47:64"), fileName_1 + ":47:61")(this.interruptScopes);
16
+ }
17
+ onSuccess(value) {
18
+ return tsplus_module_3.defer(() => {
19
+ this.value.set(tsplus_module_1.just(tsplus_module_2.succeed(value, fileName_1 + ":20:39"), fileName_1 + ":20:26"));
20
+ return this.unsafeOnSuccess(value);
21
+ }, fileName_1 + ":19:20");
22
+ }
23
+ onFailure(cause) {
24
+ return tsplus_module_3.defer(() => {
25
+ this.value.set(tsplus_module_1.just(tsplus_module_2.failCause(cause, fileName_1 + ":27:41"), fileName_1 + ":27:26"));
26
+ return this.unsafeOnFailure(cause);
27
+ }, fileName_1 + ":26:20");
28
+ }
29
+ run(sink) {
30
+ return this.addSink(sink, scope => tsplus_module_3.zipRight(tsplus_module_6.awaitClose(scope), fileName_1 + ":43:12")(tsplus_module_5.match(() => tsplus_module_3.unit, exit => tsplus_module_4.match(cause => sink.onFailure(cause), value => sink.onSuccess(value))(exit))(this.value.get)));
31
+ }
32
+ }
33
+ //# sourceMappingURL=Hold.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Hold.mjs","names":["AtomicReference","IO","AtomicSubject","HoldSubject","constructor","value","tsplus_module_1","nothing","fileName_1","interrupt","tsplus_module_3","zipRight","succeed","set","interruptScopes","onSuccess","defer","just","tsplus_module_2","unsafeOnSuccess","onFailure","cause","failCause","unsafeOnFailure","run","sink","addSink","scope","tsplus_module_6","awaitClose","tsplus_module_5","match","unit","exit","tsplus_module_4","get"],"sources":["../../_src/Subject/Hold.ts"],"sourcesContent":[null],"mappings":";;;;;;;AAKA,SAASA,eAAe,QAAQ,sCAAsC;AAEtE,SAASC,EAAE,QAAQ,WAAU;AAC7B,SAASC,aAAa,QAAQ,cAAa;AAM3C,OAAM,MAAOC,WAAkB,SAAQD,aAAmB;EAA1DE,YAAA;;IACW,KAAAC,KAAK,GAAuC,IAAIL,eAAe,CAACM,eAAA,CAAAC,OAAA,CAAAC,UAAA,YAAS,CAAC;IA+BnF,KAAAC,SAAS,GAAAC,eAAA,CAAAC,QAAA,CAAkDD,eAAA,CAAAE,OAAA,OAAG,IAAI,CAACP,KAAK,CAACQ,GAAG,CAACP,eAAA,CAAAC,OAAA,CAAAC,UAAA,YAAS,CAAC,EAAAA,UAAA,YAAC,EAAAA,UAAA,aAApD,IAAI,CAACM,eAAe;EAC1D;EA9BEC,SAASA,CAACV,KAAQ;IAChB,OAAOK,eAAA,CAAAM,KAAA,CAAS,MAAK;MACnB,IAAI,CAACX,KAAK,CAACQ,GAAG,CAACP,eAAA,CAAAW,IAAA,CAAKC,eAAA,CAAAN,OAAA,CAAaP,KAAK,EAAAG,UAAA,YAAC,EAAAA,UAAA,YAAC,CAAC;MACzC,OAAO,IAAI,CAACW,eAAe,CAACd,KAAK,CAAC;IACpC,CAAC,EAAAG,UAAA,YAAC;EACJ;EAEAY,SAASA,CAACC,KAAe;IACvB,OAAOX,eAAA,CAAAM,KAAA,CAAS,MAAK;MACnB,IAAI,CAACX,KAAK,CAACQ,GAAG,CAACP,eAAA,CAAAW,IAAA,CAAKC,eAAA,CAAAI,SAAA,CAAeD,KAAK,EAAAb,UAAA,YAAC,EAAAA,UAAA,YAAC,CAAC;MAC3C,OAAO,IAAI,CAACe,eAAe,CAACF,KAAK,CAAC;IACpC,CAAC,EAAAb,UAAA,YAAC;EACJ;EAEAgB,GAAGA,CAAKC,IAA0B;IAChC,OAAO,IAAI,CAACC,OAAO,CACjBD,IAAI,EACHE,KAAK,IAAIjB,eAAA,CAAAC,QAAA,CAAAiB,eAAA,CAAAC,UAAA,CAQJF,KAAK,GAAAnB,UAAA,aAPTsB,eAAA,CAAAC,KAAA,CACE,MAAKrB,eAAA,CAAAsB,IAAQ,EACZC,IAAI,IACHC,eAAA,CAAAH,KAAA,CACGV,KAAK,IAAKI,IAAI,CAACL,SAAS,CAACC,KAAK,CAAC,EAC/BhB,KAAK,IAAKoB,IAAI,CAACV,SAAS,CAACV,KAAK,CAAC,EAFlC4B,IAAI,CAGH,EANL,IAAI,CAAC5B,KAAK,CAAC8B,GAAG,CAOb,CAAmB,CACvB;EACH","ignoreList":[]}
@@ -0,0 +1,122 @@
1
+ const fileName_1 = "(@fncts/io) src/Subject/RefSubject/Atomic.ts";
2
+ import * as tsplus_module_1 from "@fncts/io/Semaphore/constructors";
3
+ import * as tsplus_module_2 from "@fncts/base/data/Exit/constructors";
4
+ import * as tsplus_module_3 from "@fncts/io/IO/api";
5
+ import * as tsplus_module_4 from "@fncts/io/IO/api/environment";
6
+ import * as tsplus_module_5 from "@fncts/base/data/Exit/api";
7
+ import * as tsplus_module_6 from "@fncts/base/data/Maybe/definition";
8
+ import * as tsplus_module_7 from "@fncts/io/Fiber/api/interrupt";
9
+ import * as tsplus_module_8 from "@fncts/base/data/function/api";
10
+ import * as tsplus_module_9 from "@fncts/io/IO/api/interrupt";
11
+ import * as tsplus_module_10 from "@fncts/io/IO/api/forkIn";
12
+ import { IO } from "@fncts/io/IO";
13
+ import { PSynchronizedInternal } from "@fncts/io/Ref/Synchronized/definition";
14
+ import { FutureRef } from "../DeferredRef.mjs";
15
+ import { HoldSubject } from "../Hold.mjs";
16
+ import { Derived } from "./Derived.mjs";
17
+ import { PRefSubject } from "./RefSubject.mjs";
18
+ export class Atomic extends PRefSubject {
19
+ constructor(fiberId, initial, runtime, scope) {
20
+ super();
21
+ this.fiberId = fiberId;
22
+ this.initial = initial;
23
+ this.runtime = runtime;
24
+ this.scope = scope;
25
+ this.semaphore = tsplus_module_1.unsafeMakeSemaphore(1);
26
+ this.subject = new HoldSubject();
27
+ this.futureRef = new FutureRef(this.fiberId, this.subject.value);
28
+ this.fiber = null;
29
+ this.interrupt = tsplus_module_3.fiberIdWith(fiberId => {
30
+ this.futureRef.reset();
31
+ return tsplus_module_3.zipRight(this.subject.interrupt, fileName_1 + ":30:77")(tsplus_module_3.zipRight(this.interruptFiber, fileName_1 + ":30:55")(this.scope.close(() => tsplus_module_2.interrupt(fiberId, fileName_1 + ":30:43"))));
32
+ });
33
+ this.subscribers = this.subject.subscribers;
34
+ this.onSuccess = this.set;
35
+ this.interruptFiber = tsplus_module_3.defer(() => {
36
+ if (this.fiber) {
37
+ return tsplus_module_7.interrupt(this.fiber);
38
+ } else {
39
+ return tsplus_module_3.unit;
40
+ }
41
+ }, fileName_1 + ":171:36");
42
+ }
43
+ run(sink) {
44
+ return this.subject.run(sink);
45
+ }
46
+ onFailure(cause) {
47
+ const exit = tsplus_module_2.failCause(cause, fileName_1 + ":40:32");
48
+ return tsplus_module_3.defer(() => {
49
+ if (this.futureRef.done(exit)) {
50
+ return this.sendEvent(exit);
51
+ } else {
52
+ return tsplus_module_3.unit;
53
+ }
54
+ }, fileName_1 + ":41:20");
55
+ }
56
+ modify(f, __tsplusTrace) {
57
+ return tsplus_module_3.flatMap(a => {
58
+ const [c, a1] = f(a);
59
+ return tsplus_module_3.as(() => c, fileName_1 + ":55:29")(this.set(a1, fileName_1 + ":55:22"));
60
+ }, fileName_1 + ":53:28")(this.get);
61
+ }
62
+ modifyIO(f, __tsplusTrace) {
63
+ return tsplus_module_3.flatMap(([b, a]) => tsplus_module_3.as(() => b, fileName_1 + ":60:66")(this.set(a, fileName_1 + ":60:60")), fileName_1 + ":60:39")(tsplus_module_3.flatMap(f, fileName_1 + ":60:28")(this.get));
64
+ }
65
+ match(setError, getError, set, get, __tsplusTrace) {
66
+ return this.matchIO(setError, getError, set, get, fileName_1 + ":70:24");
67
+ }
68
+ matchAll(setError, getError, setGetError, set, get, __tsplusTrace) {
69
+ return this.matchAllIO(setError, getError, setGetError, set, get, fileName_1 + ":81:27");
70
+ }
71
+ matchIO(setError, getError, set, get, __tsplusTrace) {
72
+ return new PSynchronizedInternal(this.semaphore, tsplus_module_3.matchIO(e => tsplus_module_3.failNow(getError(e), fileName_1 + ":93:41"), get, fileName_1 + ":93:23")(this.get), c => tsplus_module_3.flatMap(a => tsplus_module_3.mapError(setError, fileName_1 + ":94:56")(this.set(a, fileName_1 + ":94:44")), fileName_1 + ":94:28")(set(c)));
73
+ }
74
+ matchAllIO(setError, getError, setGetError, set, get, __tsplusTrace) {
75
+ return new PSynchronizedInternal(this.semaphore, tsplus_module_3.matchIO(e => tsplus_module_3.failNow(getError(e), fileName_1 + ":108:41"), get, fileName_1 + ":108:23")(this.get), c => tsplus_module_3.matchIO(e => tsplus_module_3.failNow(setGetError(e), fileName_1 + ":111:28"), b => tsplus_module_3.flatMap(a => tsplus_module_3.mapError(setError, fileName_1 + ":112:63")(this.set(a, fileName_1 + ":112:51")), fileName_1 + ":112:35")(set(c)(b)), fileName_1 + ":110:25")(this.get));
76
+ }
77
+ matchIOSubject(mapSetError, mapGetError, mapErrorInput, mapSetErrorInput, mapSet, mapGet, __tsplusTrace) {
78
+ return new Derived(f => f({
79
+ ref: this,
80
+ mapSetError,
81
+ mapGetError,
82
+ mapErrorInput,
83
+ mapSetErrorInput,
84
+ mapSet,
85
+ mapGet
86
+ }));
87
+ }
88
+ set(a, __tsplusTrace) {
89
+ const exit = tsplus_module_2.succeed(a, fileName_1 + ":140:30");
90
+ return tsplus_module_3.defer(() => {
91
+ if (this.futureRef.done(exit)) {
92
+ return this.sendEvent(exit);
93
+ } else {
94
+ return tsplus_module_3.unit;
95
+ }
96
+ }, fileName_1 + ":141:20");
97
+ }
98
+ get get() {
99
+ return this.getOrInit(false);
100
+ }
101
+ sendEvent(exit) {
102
+ return tsplus_module_5.match(cause => tsplus_module_4.provideEnvironment(this.runtime.environment, fileName_1 + ":156:66")(this.subject.onFailure(cause)), value => tsplus_module_4.provideEnvironment(this.runtime.environment, fileName_1 + ":157:66")(this.subject.onSuccess(value)))(exit);
103
+ }
104
+ getOrInit(lock) {
105
+ return tsplus_module_3.defer(() => {
106
+ if (this.fiber === null && tsplus_module_6.isNothing(this.futureRef.current.get)) {
107
+ return tsplus_module_3.zipRight(this.futureRef, fileName_1 + ":164:33")(this.init(lock));
108
+ } else {
109
+ return this.futureRef;
110
+ }
111
+ }, fileName_1 + ":162:20");
112
+ }
113
+ init(lock) {
114
+ const maybeWithLock = lock ? this.semaphore.withPermits(1) : tsplus_module_8.identity;
115
+ const initialize = maybeWithLock(tsplus_module_9.onExit(exit => tsplus_module_3.succeed(() => {
116
+ this.fiber = null;
117
+ this.futureRef.done(exit);
118
+ }, fileName_1 + ":184:11"), fileName_1 + ":183:71")(tsplus_module_4.provideEnvironment(this.runtime.environment, fileName_1 + ":183:38")(this.initial)));
119
+ return tsplus_module_3.flatMap(fiber => tsplus_module_3.succeed(() => this.fiber = fiber, fileName_1 + ":191:63"), fileName_1 + ":191:49")(tsplus_module_10.forkIn(this.scope, fileName_1 + ":191:29")(initialize));
120
+ }
121
+ }
122
+ //# sourceMappingURL=Atomic.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Atomic.mjs","names":["IO","PSynchronizedInternal","FutureRef","HoldSubject","Derived","PRefSubject","Atomic","constructor","fiberId","initial","runtime","scope","semaphore","tsplus_module_1","unsafeMakeSemaphore","subject","futureRef","value","fiber","interrupt","tsplus_module_3","fiberIdWith","reset","zipRight","fileName_1","interruptFiber","close","tsplus_module_2","subscribers","onSuccess","set","defer","tsplus_module_7","unit","run","sink","onFailure","cause","exit","failCause","done","sendEvent","modify","f","__tsplusTrace","flatMap","a","c","a1","as","get","modifyIO","b","match","setError","getError","matchIO","matchAll","setGetError","matchAllIO","e","failNow","mapError","matchIOSubject","mapSetError","mapGetError","mapErrorInput","mapSetErrorInput","mapSet","mapGet","ref","succeed","getOrInit","tsplus_module_5","tsplus_module_4","provideEnvironment","environment","lock","tsplus_module_6","isNothing","current","init","maybeWithLock","withPermits","tsplus_module_8","identity","initialize","tsplus_module_9","onExit","tsplus_module_10","forkIn"],"sources":["../../../_src/Subject/RefSubject/Atomic.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,90 @@
1
+ const fileName_1 = "(@fncts/io) src/Subject/RefSubject/Derived.ts";
2
+ import * as tsplus_module_1 from "@fncts/base/data/Cause/api";
3
+ import * as tsplus_module_2 from "@fncts/io/IO/api";
4
+ import * as tsplus_module_3 from "@fncts/io/Push/Sink";
5
+ import { PSynchronizedInternal } from "@fncts/io/Ref";
6
+ import { PRefSubject } from "./RefSubject.mjs";
7
+ export class Derived extends PRefSubject {
8
+ constructor(use) {
9
+ super();
10
+ this.use = use;
11
+ this.subscribers = this.use(({
12
+ ref
13
+ }) => ref.subscribers);
14
+ this.interrupt = this.use(({
15
+ ref
16
+ }) => ref.interrupt);
17
+ }
18
+ onSuccess(value) {
19
+ return this.use(({
20
+ ref,
21
+ mapSetErrorInput,
22
+ mapSet
23
+ }) => tsplus_module_2.matchCauseIO(cause => ref.onFailure(tsplus_module_1.map(mapSetErrorInput)(cause)), a0 => ref.onSuccess(a0, fileName_1 + ":46:30"), fileName_1 + ":44:33")(mapSet(value)));
24
+ }
25
+ onFailure(cause) {
26
+ return this.use(({
27
+ ref,
28
+ mapErrorInput
29
+ }) => ref.onFailure(tsplus_module_1.map(mapErrorInput)(cause)));
30
+ }
31
+ get get() {
32
+ return this.use(({
33
+ ref,
34
+ mapGetError,
35
+ mapGet
36
+ }) => tsplus_module_2.matchIO(e => tsplus_module_2.failNow(mapGetError(e), fileName_1 + ":56:88"), mapGet, fileName_1 + ":56:70")(ref.get));
37
+ }
38
+ set(a, __tsplusTrace) {
39
+ return this.use(({
40
+ ref,
41
+ mapSet
42
+ }) => tsplus_module_2.flatMap(a0 => ref.set(a0, fileName_1 + ":60:75"), fileName_1 + ":60:59")(mapSet(a)));
43
+ }
44
+ modify(f, __tsplusTrace) {
45
+ return this.modifyIO(out => tsplus_module_2.succeedNow(f(out), fileName_1 + ":64:48"), fileName_1 + ":64:25");
46
+ }
47
+ modifyIO(f, __tsplusTrace) {
48
+ return this.use(({
49
+ ref,
50
+ mapGetError,
51
+ mapSet,
52
+ mapGet
53
+ }) => tsplus_module_2.flatMap(a0 => tsplus_module_2.flatMap(([c, a]) => tsplus_module_2.as(() => c, fileName_1 + ":78:18")(tsplus_module_2.flatMap(a0 => ref.set(a0, fileName_1 + ":77:39"), fileName_1 + ":77:23")(mapSet(a))), fileName_1 + ":75:19")(tsplus_module_2.flatMap(f, fileName_1 + ":74:19")(mapGet(a0))), fileName_1 + ":72:44")(tsplus_module_2.mapError(mapGetError, fileName_1 + ":72:23")(ref.get)));
54
+ }
55
+ match(ea, eb, ca, bd, __tsplusTrace) {
56
+ return this.matchIO(ea, eb, ca, bd, fileName_1 + ":91:24");
57
+ }
58
+ matchAll(ea, eb, ec, ca, bd, __tsplusTrace) {
59
+ return this.matchAllIO(ea, eb, ec, ca, bd, fileName_1 + ":102:27");
60
+ }
61
+ matchIO(mapSetError, mapGetError, mapSet, mapGet, __tsplusTrace) {
62
+ return this.use(({
63
+ ref
64
+ }) => new PSynchronizedInternal(ref.semaphore, tsplus_module_2.matchIO(e => tsplus_module_2.failNow(mapGetError(e), fileName_1 + ":116:45"), mapGet, fileName_1 + ":116:27")(this.get), c => tsplus_module_2.flatMap(a => tsplus_module_2.mapError(mapSetError, fileName_1 + ":117:63")(this.set(a, fileName_1 + ":117:51")), fileName_1 + ":117:35")(mapSet(c))));
65
+ }
66
+ matchAllIO(mapSetError, mapGetError, mapSetGetError, mapSet, mapGet, __tsplusTrace) {
67
+ return this.use(({
68
+ ref
69
+ }) => new PSynchronizedInternal(ref.semaphore, tsplus_module_2.matchIO(e => tsplus_module_2.failNow(mapGetError(e), fileName_1 + ":134:45"), mapGet, fileName_1 + ":134:27")(this.get), c => tsplus_module_2.matchIO(e => tsplus_module_2.failNow(mapSetGetError(e), fileName_1 + ":137:32"), b => tsplus_module_2.flatMap(a => tsplus_module_2.mapError(mapSetError, fileName_1 + ":138:70")(this.set(a, fileName_1 + ":138:58")), fileName_1 + ":138:42")(mapSet(c)(b)), fileName_1 + ":136:29")(this.get)));
70
+ }
71
+ matchIOSubject(mapSetError, mapGetError, mapErrorInput, mapSetErrorInput, mapSet, mapGet, __tsplusTrace) {
72
+ return this.use(r => new Derived(f => f({
73
+ ref: r.ref,
74
+ mapSetError: e0 => mapSetError(r.mapSetError(e0)),
75
+ mapGetError: e0 => mapGetError(r.mapGetError(e0)),
76
+ mapErrorInput: ei => r.mapErrorInput(mapErrorInput(ei)),
77
+ mapSetErrorInput: ec => r.mapSetErrorInput(mapSetErrorInput(ec)),
78
+ mapSet: c => tsplus_module_2.flatMap(inp => tsplus_module_2.mapError(mapSetError, fileName_1 + ":162:77")(r.mapSet(inp)), fileName_1 + ":162:45")(mapSet(c)),
79
+ mapGet: a0 => tsplus_module_2.flatMap(mapGet, fileName_1 + ":163:71")(tsplus_module_2.mapError(mapGetError, fileName_1 + ":163:50")(r.mapGet(a0)))
80
+ })));
81
+ }
82
+ run(sink) {
83
+ return this.use(({
84
+ ref,
85
+ mapGet,
86
+ mapGetError
87
+ }) => ref.run(tsplus_module_3.unsafeMakeSink(a0 => tsplus_module_2.matchCauseIO(sink.onFailure, sink.onSuccess, fileName_1 + ":173:42")(mapGet(a0)), cause => sink.onFailure(tsplus_module_1.map(mapGetError)(cause)))));
88
+ }
89
+ }
90
+ //# sourceMappingURL=Derived.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Derived.mjs","names":["PSynchronizedInternal","PRefSubject","Derived","constructor","use","subscribers","ref","interrupt","onSuccess","value","mapSetErrorInput","mapSet","tsplus_module_2","matchCauseIO","cause","onFailure","tsplus_module_1","map","a0","fileName_1","mapErrorInput","get","mapGetError","mapGet","matchIO","e","failNow","set","a","__tsplusTrace","flatMap","modify","f","modifyIO","out","succeedNow","c","as","mapError","match","ea","eb","ca","bd","matchAll","ec","matchAllIO","mapSetError","semaphore","mapSetGetError","b","matchIOSubject","r","e0","ei","inp","run","sink","tsplus_module_3","unsafeMakeSink"],"sources":["../../../_src/Subject/RefSubject/Derived.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,12 @@
1
+ var _a, _b;
2
+ import { RefTypeId, RefVariance, SynchronizedTypeId } from "../../Ref.mjs";
3
+ import { PSubject } from "../definition.mjs";
4
+ export class PRefSubject extends PSubject {
5
+ constructor() {
6
+ super(...arguments);
7
+ this[_a] = SynchronizedTypeId;
8
+ this[_b] = RefTypeId;
9
+ }
10
+ }
11
+ _a = SynchronizedTypeId, _b = RefTypeId;
12
+ //# sourceMappingURL=RefSubject.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RefSubject.mjs","names":["RefTypeId","RefVariance","SynchronizedTypeId","PSubject","PRefSubject","constructor","_a","_b"],"sources":["../../../_src/Subject/RefSubject/RefSubject.ts"],"sourcesContent":[null],"mappings":";AAWA,SAASA,SAAS,EAAEC,WAAW,EAAEC,kBAAkB,QAAQ,eAAc;AACzE,SAASC,QAAQ,QAAQ,mBAAkB;AAE3C,OAAM,MAAgBC,WACpB,SAAQD,QAA+C;EADzDE,YAAA;;IAYW,KAAAC,EAAA,CAAoB,GAAuBJ,kBAAkB;IAC7D,KAAAK,EAAA,CAAW,GAAgCP,SAAS;EA8D/D;;KA/DYE,kBAAkB,EAAAK,EAAA,GAClBP,SAAS","ignoreList":[]}
@@ -1,3 +1,17 @@
1
+ var _a, _b;
2
+ import { Push, PushTypeId } from "../Push.mjs";
1
3
  export const SubjectTypeId = /*#__PURE__*/Symbol.for("fncts.io.Push.Subject");
4
+ /**
5
+ * @tsplus type fncts.io.Push.Subject
6
+ */
7
+ export class PSubject extends Push {
8
+ constructor() {
9
+ super(...arguments);
10
+ this._pushOpCode = null;
11
+ this[_a] = PushTypeId;
12
+ this[_b] = SubjectTypeId;
13
+ }
14
+ }
15
+ _a = PushTypeId, _b = SubjectTypeId;
2
16
  export const Subject = {};
3
17
  //# sourceMappingURL=definition.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"definition.mjs","names":["SubjectTypeId","Symbol","for","Subject"],"sources":["../../_src/Subject/definition.ts"],"sourcesContent":[null],"mappings":"AAEA,OAAO,MAAMA,aAAa,gBAAGC,MAAM,CAACC,GAAG,CAAC,uBAAuB,CAAC;AAehE,OAAO,MAAMC,OAAO,GAAe,EAAE","ignoreList":[]}
1
+ {"version":3,"file":"definition.mjs","names":["Push","PushTypeId","SubjectTypeId","Symbol","for","PSubject","constructor","_pushOpCode","_a","_b","Subject"],"sources":["../../_src/Subject/definition.ts"],"sourcesContent":[null],"mappings":";AAIA,SAASA,IAAI,EAAEC,UAAU,QAAQ,aAAY;AAE7C,OAAO,MAAMC,aAAa,gBAAGC,MAAM,CAACC,GAAG,CAAC,uBAAuB,CAAC;AAGhE;;;AAGA,OAAM,MAAgBC,QACpB,SAAQL,IAAiC;EAD3CM,YAAA;;IAIW,KAAAC,WAAW,GAAsB,IAAI;IACrC,KAAAC,EAAA,CAAY,GAAqBP,UAAU;IAC3C,KAAAQ,EAAA,CAAe,GAAkBP,aAAa;EAQzD;;KATYD,UAAU,EAAAQ,EAAA,GACVP,aAAa;AAiBzB,OAAO,MAAMQ,OAAO,GAAe,EAAE","ignoreList":[]}
package/_mjs/Subject.mjs CHANGED
@@ -1,5 +1,7 @@
1
1
  // codegen:start { preset: barrel, include: ./Subject/*.ts }
2
2
  export * from "./Subject/api.mjs";
3
3
  export * from "./Subject/Atomic.mjs";
4
+ export * from "./Subject/DeferredRef.mjs";
4
5
  export * from "./Subject/definition.mjs";
6
+ export * from "./Subject/Hold.mjs";
5
7
  //# sourceMappingURL=Subject.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Subject.mjs","names":[],"sources":["../_src/Subject.ts"],"sourcesContent":[null],"mappings":"AAAA;AACA,cAAc,mBAAkB;AAChC,cAAc,sBAAqB;AACnC,cAAc,0BAAyB","ignoreList":[]}
1
+ {"version":3,"file":"Subject.mjs","names":[],"sources":["../_src/Subject.ts"],"sourcesContent":[null],"mappings":"AAAA;AACA,cAAc,mBAAkB;AAChC,cAAc,sBAAqB;AACnC,cAAc,2BAA0B;AACxC,cAAc,0BAAyB;AACvC,cAAc,oBAAmB","ignoreList":[]}
@@ -6,13 +6,12 @@ import * as tsplus_module_3 from "@fncts/io/Stream/api";
6
6
  import * as tsplus_module_4 from "@fncts/io/IO/api";
7
7
  import * as tsplus_module_5 from "@fncts/io/Hub/api";
8
8
  import * as tsplus_module_6 from "@fncts/io/Ref/constructors";
9
- import * as tsplus_module_7 from "@fncts/io/Semaphore";
9
+ import * as tsplus_module_7 from "@fncts/io/Semaphore/constructors";
10
10
  import { PSynchronizedInternal } from "@fncts/io/Ref";
11
11
  export const SubscriptionRefTypeId = /*#__PURE__*/Symbol.for("fncts.io.SubscriptionRef");
12
12
  export class SubscriptionRefInternal extends PSynchronizedInternal {
13
13
  constructor(semaphore, hub, ref) {
14
14
  super(semaphore, tsplus_module_1.get(ref, fileName_1 + ":14:25"), a => tsplus_module_2.set(a, fileName_1 + ":14:45")(ref));
15
- this.semaphore = semaphore;
16
15
  this.hub = hub;
17
16
  this.ref = ref;
18
17
  this[_a] = SubscriptionRefTypeId;
@@ -1 +1 @@
1
- {"version":3,"file":"SubscriptionRef.mjs","names":["PSynchronizedInternal","SubscriptionRefTypeId","Symbol","for","SubscriptionRefInternal","constructor","semaphore","hub","ref","tsplus_module_1","get","fileName_1","a","tsplus_module_2","set","_a","changes","tsplus_module_3","unwrapScoped","withPermit","tsplus_module_4","flatMap","map","stream","concat","succeedNow","fromHubScoped","unsafeGet","__tsplusTrace","zipLeft","tsplus_module_5","publish","unsafeSet","modifyIO","f","b","as","SubscriptionRef","concrete","_","make","value","tsplus_module_6","makeUnbounded","tsplus_module_7","makeSemaphore"],"sources":["../_src/SubscriptionRef.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;AAAA,SAASA,qBAAqB,QAAQ,eAAe;AAGrD,OAAO,MAAMC,qBAAqB,gBAAGC,MAAM,CAACC,GAAG,CAAC,0BAA0B,CAAC;AAG3E,OAAM,MAAOC,uBAA2B,SAAQJ,qBAAuD;EAErGK,YACWC,SAAoB,EACpBC,GAAW,EACXC,GAAW;IAEpB,KAAK,CAACF,SAAS,EAAAG,eAAA,CAAAC,GAAA,CAAEF,GAAG,EAAAG,UAAA,cAAOC,CAAC,IAAKC,eAAA,CAAAC,GAAA,CAAQF,CAAC,EAAAD,UAAA,aAATH,GAAG,CAAO,CAAC;IAJnC,KAAAF,SAAS,GAATA,SAAS;IACT,KAAAC,GAAG,GAAHA,GAAG;IACH,KAAAC,GAAG,GAAHA,GAAG;IAJL,KAAAO,EAAA,CAAuB,GAA0Bd,qBAAqB;IAQ/E,KAAAe,OAAO,GAA4BC,eAAA,CAAAC,YAAA,CACjC,IAAI,CAACC,UAAU,CACbC,eAAA,CAAAC,OAAA,CAAwBT,CAAC,IACvBQ,eAAA,CAAAE,GAAA,CAAoCC,MAAM,IAAKN,eAAA,CAAAO,MAAA,CAA4BD,MAAM,EAAAZ,UAAA,aAAlCM,eAAA,CAAAQ,UAAA,CAAkBb,CAAC,EAAAD,UAAA,YAAC,CAAe,EAAAA,UAAA,aAAlFM,eAAA,CAAAS,aAAA,OAAqB,IAAI,CAACnB,GAAG,CAAC,CAAqD,EAAAI,UAAA,aADrF,IAAI,CAACgB,SAAS,CAEb,EAAAhB,UAAA,YACF,EAAAA,UAAA,YACF;EAPD;EAQAG,GAAGA,CAACF,CAAI,EAAEgB,aAAsB;IAC9B,OAAO,IAAI,CAACT,UAAU,CAAAC,eAAA,CAAAS,OAAA,CAAqBC,eAAA,CAAAC,OAAA,CAAiBnB,CAAC,EAAAD,UAAA,aAAlB,IAAI,CAACJ,GAAG,CAAW,EAAAI,UAAA,aAAvC,IAAI,CAACqB,SAAS,CAACpB,CAAC,CAAC,GAAAD,UAAA,YAAuB;EACjE;EACAsB,QAAQA,CAAYC,CAAwC,EAAEN,aAAsB;IAClF,OAAO,IAAI,CAACT,UAAU,CACpBC,eAAA,CAAAC,OAAA,CAAkC,CAAC,CAACc,CAAC,EAAEvB,CAAC,CAAC,KAAIQ,eAAA,CAAAS,OAAA,CAA2BC,eAAA,CAAAC,OAAA,CAAiBnB,CAAC,EAAAD,UAAA,aAAlB,IAAI,CAACJ,GAAG,CAAW,EAAAI,UAAA,aAA7CS,eAAA,CAAAgB,EAAA,OAAqBD,CAAC,EAAAxB,UAAA,aAAtB,IAAI,CAACqB,SAAS,CAACpB,CAAC,CAAC,CAAM,CAAsB,EAAAD,UAAA,aAA3FS,eAAA,CAAAC,OAAA,CAAuBa,CAAC,EAAAvB,UAAA,aAAxB,IAAI,CAACgB,SAAS,CAAW,CAAmE,EAAAhB,UAAA,YAC7F;EACH;;KAtBUV,qBAAqB;AAqCjC,OAAO,MAAMoC,eAAe,GAAuB,EAAE;AAErD,OAAM,SAAUC,QAAQA,CAAIC,CAAqB;EAC/C;AAAA;AAGF;;;;AAIA,OAAM,SAAUC,IAAIA,CAAIC,KAAc;EACpC,OAAArB,eAAA,CAAAC,OAAA,CACQf,SAAS,IAAAc,eAAA,CAAAC,OAAA,CACTd,GAAG,IAAAa,eAAA,CAAAE,GAAA,CACHd,GAAG,IACF,IAAIJ,uBAAuB,CAACE,SAAS,EAAEC,GAAG,EAAEC,GAAG,CAAC,EAAAG,UAAA,aADnC+B,eAAA,CAAAF,IAAA,CAASC,KAAK,EAAA9B,UAAA,YAAC,GAAAA,UAAA,aADfmB,eAAA,CAAAa,aAAA,CAAAhC,UAAA,YAAsB,GAAAA,UAAA,aADtBiC,eAAA,CAAAC,aAAA,CAAU,CAAC,EAAAlC,UAAA,YAAC;AAKpC","ignoreList":[]}
1
+ {"version":3,"file":"SubscriptionRef.mjs","names":["PSynchronizedInternal","SubscriptionRefTypeId","Symbol","for","SubscriptionRefInternal","constructor","semaphore","hub","ref","tsplus_module_1","get","fileName_1","a","tsplus_module_2","set","_a","changes","tsplus_module_3","unwrapScoped","withPermit","tsplus_module_4","flatMap","map","stream","concat","succeedNow","fromHubScoped","unsafeGet","__tsplusTrace","zipLeft","tsplus_module_5","publish","unsafeSet","modifyIO","f","b","as","SubscriptionRef","concrete","_","make","value","tsplus_module_6","makeUnbounded","tsplus_module_7","makeSemaphore"],"sources":["../_src/SubscriptionRef.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;AAAA,SAASA,qBAAqB,QAAQ,eAAe;AAGrD,OAAO,MAAMC,qBAAqB,gBAAGC,MAAM,CAACC,GAAG,CAAC,0BAA0B,CAAC;AAG3E,OAAM,MAAOC,uBAA2B,SAAQJ,qBAAuD;EAErGK,YACEC,SAAoB,EACXC,GAAW,EACXC,GAAW;IAEpB,KAAK,CAACF,SAAS,EAAAG,eAAA,CAAAC,GAAA,CAAEF,GAAG,EAAAG,UAAA,cAAOC,CAAC,IAAKC,eAAA,CAAAC,GAAA,CAAQF,CAAC,EAAAD,UAAA,aAATH,GAAG,CAAO,CAAC;IAHnC,KAAAD,GAAG,GAAHA,GAAG;IACH,KAAAC,GAAG,GAAHA,GAAG;IAJL,KAAAO,EAAA,CAAuB,GAA0Bd,qBAAqB;IAQ/E,KAAAe,OAAO,GAA4BC,eAAA,CAAAC,YAAA,CACjC,IAAI,CAACC,UAAU,CACbC,eAAA,CAAAC,OAAA,CAAwBT,CAAC,IACvBQ,eAAA,CAAAE,GAAA,CAAoCC,MAAM,IAAKN,eAAA,CAAAO,MAAA,CAA4BD,MAAM,EAAAZ,UAAA,aAAlCM,eAAA,CAAAQ,UAAA,CAAkBb,CAAC,EAAAD,UAAA,YAAC,CAAe,EAAAA,UAAA,aAAlFM,eAAA,CAAAS,aAAA,OAAqB,IAAI,CAACnB,GAAG,CAAC,CAAqD,EAAAI,UAAA,aADrF,IAAI,CAACgB,SAAS,CAEb,EAAAhB,UAAA,YACF,EAAAA,UAAA,YACF;EAPD;EAQAG,GAAGA,CAACF,CAAI,EAAEgB,aAAsB;IAC9B,OAAO,IAAI,CAACT,UAAU,CAAAC,eAAA,CAAAS,OAAA,CAAqBC,eAAA,CAAAC,OAAA,CAAiBnB,CAAC,EAAAD,UAAA,aAAlB,IAAI,CAACJ,GAAG,CAAW,EAAAI,UAAA,aAAvC,IAAI,CAACqB,SAAS,CAACpB,CAAC,CAAC,GAAAD,UAAA,YAAuB;EACjE;EACAsB,QAAQA,CAAYC,CAAwC,EAAEN,aAAsB;IAClF,OAAO,IAAI,CAACT,UAAU,CACpBC,eAAA,CAAAC,OAAA,CAAkC,CAAC,CAACc,CAAC,EAAEvB,CAAC,CAAC,KAAIQ,eAAA,CAAAS,OAAA,CAA2BC,eAAA,CAAAC,OAAA,CAAiBnB,CAAC,EAAAD,UAAA,aAAlB,IAAI,CAACJ,GAAG,CAAW,EAAAI,UAAA,aAA7CS,eAAA,CAAAgB,EAAA,OAAqBD,CAAC,EAAAxB,UAAA,aAAtB,IAAI,CAACqB,SAAS,CAACpB,CAAC,CAAC,CAAM,CAAsB,EAAAD,UAAA,aAA3FS,eAAA,CAAAC,OAAA,CAAuBa,CAAC,EAAAvB,UAAA,aAAxB,IAAI,CAACgB,SAAS,CAAW,CAAmE,EAAAhB,UAAA,YAC7F;EACH;;KAtBUV,qBAAqB;AAqCjC,OAAO,MAAMoC,eAAe,GAAuB,EAAE;AAErD,OAAM,SAAUC,QAAQA,CAAIC,CAAqB;EAC/C;AAAA;AAGF;;;;AAIA,OAAM,SAAUC,IAAIA,CAAIC,KAAc;EACpC,OAAArB,eAAA,CAAAC,OAAA,CACQf,SAAS,IAAAc,eAAA,CAAAC,OAAA,CACTd,GAAG,IAAAa,eAAA,CAAAE,GAAA,CACHd,GAAG,IACF,IAAIJ,uBAAuB,CAACE,SAAS,EAAEC,GAAG,EAAEC,GAAG,CAAC,EAAAG,UAAA,aADnC+B,eAAA,CAAAF,IAAA,CAASC,KAAK,EAAA9B,UAAA,YAAC,GAAAA,UAAA,aADfmB,eAAA,CAAAa,aAAA,CAAAhC,UAAA,YAAsB,GAAAA,UAAA,aADtBiC,eAAA,CAAAC,aAAA,CAAU,CAAC,EAAAlC,UAAA,YAAC;AAKpC","ignoreList":[]}
@@ -4,11 +4,11 @@ import { CachedInternal } from "@fncts/io/Cached/internal";
4
4
  /**
5
5
  * @tsplus static fncts.io.CachedOps auto
6
6
  */
7
- export function auto<R, Error, Resource>(
7
+ export function auto<R, Error, Resource, R2, E2, O>(
8
8
  acquire: IO<R, Error, Resource>,
9
- policy: Schedule<any, any, any>,
9
+ policy: Schedule<R2, E2, O>,
10
10
  __tsplusTrace?: string,
11
- ): IO<R | Scope, never, Cached<Error, Resource>> {
11
+ ): IO<R | R2 | Scope, never, Cached<Error, Resource>> {
12
12
  return Do((Δ) => {
13
13
  const manual = Δ(Cached.manual(acquire));
14
14
  Δ(IO.acquireRelease(IO.interruptible(manual.refresh.schedule(policy)).forkDaemon, (fiber) => fiber.interrupt));
@@ -32,7 +32,7 @@ function toPullInterpret<Env, InErr, InElem, InDone, OutErr, OutElem, OutDone>(
32
32
  return done.match(IO.failCauseNow, (outDone) => IO.succeedNow(Either.left(outDone)));
33
33
  }
34
34
  case ChannelStateTag.Read: {
35
- return readUpstream(channelState, () => toPullInterpret(exec.run(), exec), IO.refailCause);
35
+ return readUpstream(channelState, () => toPullInterpret(exec.run(), exec), IO.refailCauseNow);
36
36
  }
37
37
  }
38
38
  }