effect 2.4.18 → 3.0.0

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 (688) hide show
  1. package/Array/package.json +6 -0
  2. package/FiberHandle/package.json +6 -0
  3. package/Readable/package.json +6 -0
  4. package/Record/package.json +6 -0
  5. package/RegExp/package.json +6 -0
  6. package/Subscribable/package.json +6 -0
  7. package/dist/cjs/{ReadonlyArray.js → Array.js} +46 -23
  8. package/dist/cjs/Array.js.map +1 -0
  9. package/dist/cjs/Brand.js +2 -2
  10. package/dist/cjs/Brand.js.map +1 -1
  11. package/dist/cjs/Channel.js +4 -8
  12. package/dist/cjs/Channel.js.map +1 -1
  13. package/dist/cjs/Chunk.js +5 -1
  14. package/dist/cjs/Chunk.js.map +1 -1
  15. package/dist/cjs/ConfigError.js.map +1 -1
  16. package/dist/cjs/Cron.js +13 -13
  17. package/dist/cjs/Cron.js.map +1 -1
  18. package/dist/cjs/Duration.js +39 -2
  19. package/dist/cjs/Duration.js.map +1 -1
  20. package/dist/cjs/Effect.js +14 -10
  21. package/dist/cjs/Effect.js.map +1 -1
  22. package/dist/cjs/Either.js +4 -1
  23. package/dist/cjs/Either.js.map +1 -1
  24. package/dist/cjs/ExecutionStrategy.js.map +1 -1
  25. package/dist/cjs/Exit.js +3 -9
  26. package/dist/cjs/Exit.js.map +1 -1
  27. package/dist/cjs/Fiber.js +2 -8
  28. package/dist/cjs/Fiber.js.map +1 -1
  29. package/dist/cjs/FiberHandle.js +288 -0
  30. package/dist/cjs/FiberHandle.js.map +1 -0
  31. package/dist/cjs/FiberMap.js +86 -27
  32. package/dist/cjs/FiberMap.js.map +1 -1
  33. package/dist/cjs/FiberRefs.js.map +1 -1
  34. package/dist/cjs/FiberSet.js +51 -15
  35. package/dist/cjs/FiberSet.js.map +1 -1
  36. package/dist/cjs/HashMap.js.map +1 -1
  37. package/dist/cjs/HashSet.js.map +1 -1
  38. package/dist/cjs/Iterable.js +40 -5
  39. package/dist/cjs/Iterable.js.map +1 -1
  40. package/dist/cjs/Layer.js.map +1 -1
  41. package/dist/cjs/List.js +8 -7
  42. package/dist/cjs/List.js.map +1 -1
  43. package/dist/cjs/Metric.js +3 -1
  44. package/dist/cjs/Metric.js.map +1 -1
  45. package/dist/cjs/MetricKey.js.map +1 -1
  46. package/dist/cjs/MetricKeyType.js.map +1 -1
  47. package/dist/cjs/MutableHashMap.js +0 -4
  48. package/dist/cjs/MutableHashMap.js.map +1 -1
  49. package/dist/cjs/Option.js +3 -6
  50. package/dist/cjs/Option.js.map +1 -1
  51. package/dist/cjs/Readable.js +79 -0
  52. package/dist/cjs/Readable.js.map +1 -0
  53. package/dist/cjs/{ReadonlyRecord.js → Record.js} +29 -29
  54. package/dist/cjs/Record.js.map +1 -0
  55. package/dist/cjs/RegExp.js +24 -0
  56. package/dist/cjs/RegExp.js.map +1 -0
  57. package/dist/cjs/STM.js +4 -10
  58. package/dist/cjs/STM.js.map +1 -1
  59. package/dist/cjs/Schedule.js +2 -2
  60. package/dist/cjs/Schedule.js.map +1 -1
  61. package/dist/cjs/ScopedCache.js.map +1 -1
  62. package/dist/cjs/Stream.js +3 -9
  63. package/dist/cjs/Stream.js.map +1 -1
  64. package/dist/cjs/StreamHaltStrategy.js +2 -0
  65. package/dist/cjs/StreamHaltStrategy.js.map +1 -1
  66. package/dist/cjs/String.js +44 -2
  67. package/dist/cjs/String.js.map +1 -1
  68. package/dist/cjs/Subscribable.js +91 -0
  69. package/dist/cjs/Subscribable.js.map +1 -0
  70. package/dist/cjs/SubscriptionRef.js.map +1 -1
  71. package/dist/cjs/TestAnnotation.js +2 -1
  72. package/dist/cjs/TestAnnotation.js.map +1 -1
  73. package/dist/cjs/TestAnnotations.js +1 -1
  74. package/dist/cjs/TestAnnotations.js.map +1 -1
  75. package/dist/cjs/TestClock.js +3 -3
  76. package/dist/cjs/TestClock.js.map +1 -1
  77. package/dist/cjs/Tracer.js.map +1 -1
  78. package/dist/cjs/index.js +14 -6
  79. package/dist/cjs/index.js.map +1 -1
  80. package/dist/cjs/internal/{readonlyArray.js → array.js} +1 -1
  81. package/dist/cjs/internal/array.js.map +1 -0
  82. package/dist/cjs/internal/cache.js +3 -3
  83. package/dist/cjs/internal/cache.js.map +1 -1
  84. package/dist/cjs/internal/cause.js +6 -5
  85. package/dist/cjs/internal/cause.js.map +1 -1
  86. package/dist/cjs/internal/channel/channelExecutor.js +15 -15
  87. package/dist/cjs/internal/channel/channelExecutor.js.map +1 -1
  88. package/dist/cjs/internal/channel/channelState.js +1 -1
  89. package/dist/cjs/internal/channel/channelState.js.map +1 -1
  90. package/dist/cjs/internal/channel/singleProducerAsyncInput.js +1 -1
  91. package/dist/cjs/internal/channel/singleProducerAsyncInput.js.map +1 -1
  92. package/dist/cjs/internal/channel.js +10 -10
  93. package/dist/cjs/internal/channel.js.map +1 -1
  94. package/dist/cjs/internal/clock.js +2 -2
  95. package/dist/cjs/internal/clock.js.map +1 -1
  96. package/dist/cjs/internal/configError.js +20 -19
  97. package/dist/cjs/internal/configError.js.map +1 -1
  98. package/dist/cjs/internal/configProvider/pathPatch.js +1 -1
  99. package/dist/cjs/internal/configProvider/pathPatch.js.map +1 -1
  100. package/dist/cjs/internal/configProvider.js +48 -49
  101. package/dist/cjs/internal/configProvider.js.map +1 -1
  102. package/dist/cjs/internal/core-effect.js +68 -40
  103. package/dist/cjs/internal/core-effect.js.map +1 -1
  104. package/dist/cjs/internal/core-stream.js +2 -3
  105. package/dist/cjs/internal/core-stream.js.map +1 -1
  106. package/dist/cjs/internal/core.js +41 -114
  107. package/dist/cjs/internal/core.js.map +1 -1
  108. package/dist/cjs/internal/dataSource.js +19 -2
  109. package/dist/cjs/internal/dataSource.js.map +1 -1
  110. package/dist/cjs/internal/differ/readonlyArrayPatch.js +6 -6
  111. package/dist/cjs/internal/differ/readonlyArrayPatch.js.map +1 -1
  112. package/dist/cjs/internal/effect/circular.js +6 -1
  113. package/dist/cjs/internal/effect/circular.js.map +1 -1
  114. package/dist/cjs/internal/errors.js +13 -0
  115. package/dist/cjs/internal/errors.js.map +1 -0
  116. package/dist/cjs/internal/executionStrategy.js +4 -4
  117. package/dist/cjs/internal/executionStrategy.js.map +1 -1
  118. package/dist/cjs/internal/fiber.js +5 -6
  119. package/dist/cjs/internal/fiber.js.map +1 -1
  120. package/dist/cjs/internal/fiberRefs/patch.js +1 -1
  121. package/dist/cjs/internal/fiberRefs/patch.js.map +1 -1
  122. package/dist/cjs/internal/fiberRefs.js +1 -1
  123. package/dist/cjs/internal/fiberRefs.js.map +1 -1
  124. package/dist/cjs/internal/fiberRuntime.js +106 -66
  125. package/dist/cjs/internal/fiberRuntime.js.map +1 -1
  126. package/dist/cjs/internal/groupBy.js +3 -3
  127. package/dist/cjs/internal/groupBy.js.map +1 -1
  128. package/dist/cjs/internal/hashMap.js +1 -1
  129. package/dist/cjs/internal/hashMap.js.map +1 -1
  130. package/dist/cjs/internal/hashSet.js.map +1 -1
  131. package/dist/cjs/internal/layer/circular.js.map +1 -1
  132. package/dist/cjs/internal/layer.js +5 -5
  133. package/dist/cjs/internal/layer.js.map +1 -1
  134. package/dist/cjs/internal/logger.js +28 -8
  135. package/dist/cjs/internal/logger.js.map +1 -1
  136. package/dist/cjs/internal/managedRuntime.js +1 -1
  137. package/dist/cjs/internal/managedRuntime.js.map +1 -1
  138. package/dist/cjs/internal/matcher.js +5 -4
  139. package/dist/cjs/internal/matcher.js.map +1 -1
  140. package/dist/cjs/internal/metric/boundaries.js +4 -4
  141. package/dist/cjs/internal/metric/boundaries.js.map +1 -1
  142. package/dist/cjs/internal/metric/hook.js +20 -17
  143. package/dist/cjs/internal/metric/hook.js.map +1 -1
  144. package/dist/cjs/internal/metric/key.js +4 -4
  145. package/dist/cjs/internal/metric/key.js.map +1 -1
  146. package/dist/cjs/internal/metric/keyType.js +6 -1
  147. package/dist/cjs/internal/metric/keyType.js.map +1 -1
  148. package/dist/cjs/internal/metric/state.js +4 -4
  149. package/dist/cjs/internal/metric/state.js.map +1 -1
  150. package/dist/cjs/internal/metric.js +4 -4
  151. package/dist/cjs/internal/metric.js.map +1 -1
  152. package/dist/cjs/internal/pool.js +11 -11
  153. package/dist/cjs/internal/pool.js.map +1 -1
  154. package/dist/cjs/internal/pubsub.js +5 -5
  155. package/dist/cjs/internal/pubsub.js.map +1 -1
  156. package/dist/cjs/internal/query.js +2 -2
  157. package/dist/cjs/internal/query.js.map +1 -1
  158. package/dist/cjs/internal/queue.js +9 -9
  159. package/dist/cjs/internal/queue.js.map +1 -1
  160. package/dist/cjs/internal/rateLimiter.js +1 -1
  161. package/dist/cjs/internal/rateLimiter.js.map +1 -1
  162. package/dist/cjs/internal/redBlackTree/iterator.js +2 -2
  163. package/dist/cjs/internal/redBlackTree/iterator.js.map +1 -1
  164. package/dist/cjs/internal/ref.js +6 -1
  165. package/dist/cjs/internal/ref.js.map +1 -1
  166. package/dist/cjs/internal/reloadable.js +1 -1
  167. package/dist/cjs/internal/reloadable.js.map +1 -1
  168. package/dist/cjs/internal/runtime.js +4 -4
  169. package/dist/cjs/internal/runtime.js.map +1 -1
  170. package/dist/cjs/internal/schedule/intervals.js +2 -1
  171. package/dist/cjs/internal/schedule/intervals.js.map +1 -1
  172. package/dist/cjs/internal/schedule.js +5 -5
  173. package/dist/cjs/internal/schedule.js.map +1 -1
  174. package/dist/cjs/internal/scopedCache.js +7 -7
  175. package/dist/cjs/internal/scopedCache.js.map +1 -1
  176. package/dist/cjs/internal/scopedRef.js +4 -4
  177. package/dist/cjs/internal/scopedRef.js.map +1 -1
  178. package/dist/cjs/internal/secret.js +2 -2
  179. package/dist/cjs/internal/secret.js.map +1 -1
  180. package/dist/cjs/internal/sink.js +10 -10
  181. package/dist/cjs/internal/sink.js.map +1 -1
  182. package/dist/cjs/internal/stm/stm/tExit.js +2 -4
  183. package/dist/cjs/internal/stm/stm/tExit.js.map +1 -1
  184. package/dist/cjs/internal/stm/stm.js +11 -11
  185. package/dist/cjs/internal/stm/stm.js.map +1 -1
  186. package/dist/cjs/internal/stm/tMap.js +3 -3
  187. package/dist/cjs/internal/stm/tMap.js.map +1 -1
  188. package/dist/cjs/internal/stm/tPriorityQueue.js +11 -11
  189. package/dist/cjs/internal/stm/tPriorityQueue.js.map +1 -1
  190. package/dist/cjs/internal/stm/tPubSub.js +3 -3
  191. package/dist/cjs/internal/stm/tPubSub.js.map +1 -1
  192. package/dist/cjs/internal/stm/tQueue.js +3 -3
  193. package/dist/cjs/internal/stm/tQueue.js.map +1 -1
  194. package/dist/cjs/internal/stm/tSet.js +1 -1
  195. package/dist/cjs/internal/stm/tSet.js.map +1 -1
  196. package/dist/cjs/internal/stream/haltStrategy.js +5 -5
  197. package/dist/cjs/internal/stream/haltStrategy.js.map +1 -1
  198. package/dist/cjs/internal/stream.js +84 -85
  199. package/dist/cjs/internal/stream.js.map +1 -1
  200. package/dist/cjs/internal/subscriptionRef.js +8 -0
  201. package/dist/cjs/internal/subscriptionRef.js.map +1 -1
  202. package/dist/cjs/internal/supervisor.js +1 -1
  203. package/dist/cjs/internal/supervisor.js.map +1 -1
  204. package/dist/cjs/internal/take.js +1 -1
  205. package/dist/cjs/internal/take.js.map +1 -1
  206. package/dist/cjs/internal/tracer.js.map +1 -1
  207. package/dist/cjs/internal/trie.js +1 -1
  208. package/dist/cjs/internal/trie.js.map +1 -1
  209. package/dist/cjs/internal/version.js +1 -1
  210. package/dist/cjs/internal/version.js.map +1 -1
  211. package/dist/dts/{ReadonlyArray.d.ts → Array.d.ts} +39 -18
  212. package/dist/dts/Array.d.ts.map +1 -0
  213. package/dist/dts/BigDecimal.d.ts.map +1 -1
  214. package/dist/dts/BigInt.d.ts.map +1 -1
  215. package/dist/dts/Brand.d.ts +1 -19
  216. package/dist/dts/Brand.d.ts.map +1 -1
  217. package/dist/dts/Cache.d.ts +10 -10
  218. package/dist/dts/Cache.d.ts.map +1 -1
  219. package/dist/dts/Cause.d.ts +1 -1
  220. package/dist/dts/Cause.d.ts.map +1 -1
  221. package/dist/dts/Channel.d.ts +6 -4
  222. package/dist/dts/Channel.d.ts.map +1 -1
  223. package/dist/dts/Chunk.d.ts +1 -4
  224. package/dist/dts/Chunk.d.ts.map +1 -1
  225. package/dist/dts/ConfigError.d.ts +7 -6
  226. package/dist/dts/ConfigError.d.ts.map +1 -1
  227. package/dist/dts/Cron.d.ts +0 -5
  228. package/dist/dts/Cron.d.ts.map +1 -1
  229. package/dist/dts/Duration.d.ts +16 -0
  230. package/dist/dts/Duration.d.ts.map +1 -1
  231. package/dist/dts/Effect.d.ts +38 -33
  232. package/dist/dts/Effect.d.ts.map +1 -1
  233. package/dist/dts/Either.d.ts +5 -2
  234. package/dist/dts/Either.d.ts.map +1 -1
  235. package/dist/dts/Encoding.d.ts.map +1 -1
  236. package/dist/dts/Equivalence.d.ts.map +1 -1
  237. package/dist/dts/ExecutionStrategy.d.ts +10 -2
  238. package/dist/dts/ExecutionStrategy.d.ts.map +1 -1
  239. package/dist/dts/Exit.d.ts +4 -3
  240. package/dist/dts/Exit.d.ts.map +1 -1
  241. package/dist/dts/Fiber.d.ts +4 -2
  242. package/dist/dts/Fiber.d.ts.map +1 -1
  243. package/dist/dts/FiberHandle.d.ts +189 -0
  244. package/dist/dts/FiberHandle.d.ts.map +1 -0
  245. package/dist/dts/FiberMap.d.ts +48 -12
  246. package/dist/dts/FiberMap.d.ts.map +1 -1
  247. package/dist/dts/FiberRefs.d.ts +1 -1
  248. package/dist/dts/FiberRefs.d.ts.map +1 -1
  249. package/dist/dts/FiberSet.d.ts +9 -5
  250. package/dist/dts/FiberSet.d.ts.map +1 -1
  251. package/dist/dts/Function.d.ts.map +1 -1
  252. package/dist/dts/GroupBy.d.ts +1 -1
  253. package/dist/dts/GroupBy.d.ts.map +1 -1
  254. package/dist/dts/HashMap.d.ts +0 -1
  255. package/dist/dts/HashMap.d.ts.map +1 -1
  256. package/dist/dts/HashSet.d.ts +0 -1
  257. package/dist/dts/HashSet.d.ts.map +1 -1
  258. package/dist/dts/Iterable.d.ts +12 -5
  259. package/dist/dts/Iterable.d.ts.map +1 -1
  260. package/dist/dts/Layer.d.ts +6 -6
  261. package/dist/dts/Layer.d.ts.map +1 -1
  262. package/dist/dts/List.d.ts +0 -11
  263. package/dist/dts/List.d.ts.map +1 -1
  264. package/dist/dts/Logger.d.ts +2 -2
  265. package/dist/dts/Logger.d.ts.map +1 -1
  266. package/dist/dts/Metric.d.ts +7 -2
  267. package/dist/dts/Metric.d.ts.map +1 -1
  268. package/dist/dts/MetricKey.d.ts +4 -1
  269. package/dist/dts/MetricKey.d.ts.map +1 -1
  270. package/dist/dts/MetricKeyType.d.ts +4 -1
  271. package/dist/dts/MetricKeyType.d.ts.map +1 -1
  272. package/dist/dts/MutableHashMap.d.ts.map +1 -1
  273. package/dist/dts/Option.d.ts +5 -3
  274. package/dist/dts/Option.d.ts.map +1 -1
  275. package/dist/dts/Order.d.ts.map +1 -1
  276. package/dist/dts/Readable.d.ts +55 -0
  277. package/dist/dts/Readable.d.ts.map +1 -0
  278. package/dist/dts/{ReadonlyRecord.d.ts → Record.d.ts} +29 -30
  279. package/dist/dts/Record.d.ts.map +1 -0
  280. package/dist/dts/Ref.d.ts +2 -2
  281. package/dist/dts/Ref.d.ts.map +1 -1
  282. package/dist/dts/RegExp.d.ts +17 -0
  283. package/dist/dts/RegExp.d.ts.map +1 -0
  284. package/dist/dts/Request.d.ts +1 -1
  285. package/dist/dts/Request.d.ts.map +1 -1
  286. package/dist/dts/RequestResolver.d.ts +2 -2
  287. package/dist/dts/RequestResolver.d.ts.map +1 -1
  288. package/dist/dts/STM.d.ts +6 -4
  289. package/dist/dts/STM.d.ts.map +1 -1
  290. package/dist/dts/Schedule.d.ts +1 -1
  291. package/dist/dts/Scheduler.d.ts.map +1 -1
  292. package/dist/dts/ScopedCache.d.ts +9 -9
  293. package/dist/dts/ScopedCache.d.ts.map +1 -1
  294. package/dist/dts/SortedMap.d.ts.map +1 -1
  295. package/dist/dts/SortedSet.d.ts +1 -1
  296. package/dist/dts/SortedSet.d.ts.map +1 -1
  297. package/dist/dts/Stream.d.ts +8 -6
  298. package/dist/dts/Stream.d.ts.map +1 -1
  299. package/dist/dts/StreamHaltStrategy.d.ts +14 -2
  300. package/dist/dts/StreamHaltStrategy.d.ts.map +1 -1
  301. package/dist/dts/String.d.ts +25 -1
  302. package/dist/dts/String.d.ts.map +1 -1
  303. package/dist/dts/Subscribable.d.ts +59 -0
  304. package/dist/dts/Subscribable.d.ts.map +1 -0
  305. package/dist/dts/SubscriptionRef.d.ts +2 -2
  306. package/dist/dts/SubscriptionRef.d.ts.map +1 -1
  307. package/dist/dts/TestAnnotation.d.ts.map +1 -1
  308. package/dist/dts/TestAnnotationMap.d.ts.map +1 -1
  309. package/dist/dts/TestAnnotations.d.ts +0 -3
  310. package/dist/dts/TestAnnotations.d.ts.map +1 -1
  311. package/dist/dts/TestClock.d.ts.map +1 -1
  312. package/dist/dts/TestLive.d.ts.map +1 -1
  313. package/dist/dts/TestServices.d.ts.map +1 -1
  314. package/dist/dts/TestSized.d.ts.map +1 -1
  315. package/dist/dts/Tracer.d.ts +12 -5
  316. package/dist/dts/Tracer.d.ts.map +1 -1
  317. package/dist/dts/Trie.d.ts +1 -1
  318. package/dist/dts/Trie.d.ts.map +1 -1
  319. package/dist/dts/Types.d.ts +0 -7
  320. package/dist/dts/Types.d.ts.map +1 -1
  321. package/dist/dts/index.d.ts +22 -4
  322. package/dist/dts/index.d.ts.map +1 -1
  323. package/dist/dts/internal/array.d.ts +5 -0
  324. package/dist/dts/internal/array.d.ts.map +1 -0
  325. package/dist/dts/internal/core-stream.d.ts +4 -0
  326. package/dist/dts/internal/core-stream.d.ts.map +1 -1
  327. package/dist/dts/internal/core.d.ts +3 -1
  328. package/dist/dts/internal/core.d.ts.map +1 -1
  329. package/dist/dts/internal/errors.d.ts +5 -0
  330. package/dist/dts/internal/errors.d.ts.map +1 -0
  331. package/dist/dts/internal/fiber.d.ts +5 -1
  332. package/dist/dts/internal/fiber.d.ts.map +1 -1
  333. package/dist/dts/internal/hashMap.d.ts.map +1 -1
  334. package/dist/dts/internal/logger.d.ts.map +1 -1
  335. package/dist/dts/internal/metric/keyType.d.ts +3 -1
  336. package/dist/dts/internal/metric/keyType.d.ts.map +1 -1
  337. package/dist/dts/internal/metric/state.d.ts.map +1 -1
  338. package/dist/dts/internal/random.d.ts.map +1 -1
  339. package/dist/dts/internal/runtimeFlags.d.ts.map +1 -1
  340. package/dist/dts/internal/stm/stm/tExit.d.ts +4 -1
  341. package/dist/dts/internal/stm/stm/tExit.d.ts.map +1 -1
  342. package/dist/dts/internal/stm/stm.d.ts +3 -0
  343. package/dist/dts/internal/stm/stm.d.ts.map +1 -1
  344. package/dist/dts/internal/stream.d.ts +5 -1
  345. package/dist/dts/internal/stream.d.ts.map +1 -1
  346. package/dist/esm/{ReadonlyArray.js → Array.js} +42 -20
  347. package/dist/esm/Array.js.map +1 -0
  348. package/dist/esm/Brand.js +2 -2
  349. package/dist/esm/Brand.js.map +1 -1
  350. package/dist/esm/Channel.js +4 -2
  351. package/dist/esm/Channel.js.map +1 -1
  352. package/dist/esm/Chunk.js +4 -1
  353. package/dist/esm/Chunk.js.map +1 -1
  354. package/dist/esm/ConfigError.js.map +1 -1
  355. package/dist/esm/Cron.js +13 -13
  356. package/dist/esm/Cron.js.map +1 -1
  357. package/dist/esm/Duration.js +38 -1
  358. package/dist/esm/Duration.js.map +1 -1
  359. package/dist/esm/Effect.js +11 -2
  360. package/dist/esm/Effect.js.map +1 -1
  361. package/dist/esm/Either.js +4 -1
  362. package/dist/esm/Either.js.map +1 -1
  363. package/dist/esm/ExecutionStrategy.js.map +1 -1
  364. package/dist/esm/Exit.js +4 -2
  365. package/dist/esm/Exit.js.map +1 -1
  366. package/dist/esm/Fiber.js +3 -1
  367. package/dist/esm/Fiber.js.map +1 -1
  368. package/dist/esm/FiberHandle.js +247 -0
  369. package/dist/esm/FiberHandle.js.map +1 -0
  370. package/dist/esm/FiberMap.js +85 -26
  371. package/dist/esm/FiberMap.js.map +1 -1
  372. package/dist/esm/FiberRefs.js.map +1 -1
  373. package/dist/esm/FiberSet.js +51 -15
  374. package/dist/esm/FiberSet.js.map +1 -1
  375. package/dist/esm/HashMap.js.map +1 -1
  376. package/dist/esm/HashSet.js.map +1 -1
  377. package/dist/esm/Iterable.js +39 -4
  378. package/dist/esm/Iterable.js.map +1 -1
  379. package/dist/esm/Layer.js.map +1 -1
  380. package/dist/esm/List.js +7 -6
  381. package/dist/esm/List.js.map +1 -1
  382. package/dist/esm/Metric.js +3 -1
  383. package/dist/esm/Metric.js.map +1 -1
  384. package/dist/esm/MetricKey.js.map +1 -1
  385. package/dist/esm/MetricKeyType.js.map +1 -1
  386. package/dist/esm/MutableHashMap.js +0 -3
  387. package/dist/esm/MutableHashMap.js.map +1 -1
  388. package/dist/esm/Option.js +4 -2
  389. package/dist/esm/Option.js.map +1 -1
  390. package/dist/esm/Readable.js +45 -0
  391. package/dist/esm/Readable.js.map +1 -0
  392. package/dist/esm/{ReadonlyRecord.js → Record.js} +29 -29
  393. package/dist/esm/Record.js.map +1 -0
  394. package/dist/esm/RegExp.js +17 -0
  395. package/dist/esm/RegExp.js.map +1 -0
  396. package/dist/esm/STM.js +5 -3
  397. package/dist/esm/STM.js.map +1 -1
  398. package/dist/esm/Schedule.js +1 -1
  399. package/dist/esm/Schedule.js.map +1 -1
  400. package/dist/esm/ScopedCache.js.map +1 -1
  401. package/dist/esm/Stream.js +5 -3
  402. package/dist/esm/Stream.js.map +1 -1
  403. package/dist/esm/StreamHaltStrategy.js +2 -0
  404. package/dist/esm/StreamHaltStrategy.js.map +1 -1
  405. package/dist/esm/String.js +37 -1
  406. package/dist/esm/String.js.map +1 -1
  407. package/dist/esm/Subscribable.js +56 -0
  408. package/dist/esm/Subscribable.js.map +1 -0
  409. package/dist/esm/SubscriptionRef.js.map +1 -1
  410. package/dist/esm/TestAnnotation.js +2 -1
  411. package/dist/esm/TestAnnotation.js.map +1 -1
  412. package/dist/esm/TestAnnotations.js +1 -1
  413. package/dist/esm/TestAnnotations.js.map +1 -1
  414. package/dist/esm/TestClock.js +3 -3
  415. package/dist/esm/TestClock.js.map +1 -1
  416. package/dist/esm/Tracer.js.map +1 -1
  417. package/dist/esm/index.js +22 -4
  418. package/dist/esm/index.js.map +1 -1
  419. package/dist/esm/internal/{readonlyArray.js → array.js} +1 -1
  420. package/dist/esm/internal/array.js.map +1 -0
  421. package/dist/esm/internal/cache.js +3 -3
  422. package/dist/esm/internal/cache.js.map +1 -1
  423. package/dist/esm/internal/cause.js +6 -5
  424. package/dist/esm/internal/cause.js.map +1 -1
  425. package/dist/esm/internal/channel/channelExecutor.js +15 -15
  426. package/dist/esm/internal/channel/channelExecutor.js.map +1 -1
  427. package/dist/esm/internal/channel/channelState.js +1 -1
  428. package/dist/esm/internal/channel/channelState.js.map +1 -1
  429. package/dist/esm/internal/channel/singleProducerAsyncInput.js +1 -1
  430. package/dist/esm/internal/channel/singleProducerAsyncInput.js.map +1 -1
  431. package/dist/esm/internal/channel.js +8 -8
  432. package/dist/esm/internal/channel.js.map +1 -1
  433. package/dist/esm/internal/clock.js +2 -2
  434. package/dist/esm/internal/clock.js.map +1 -1
  435. package/dist/esm/internal/configError.js +20 -19
  436. package/dist/esm/internal/configError.js.map +1 -1
  437. package/dist/esm/internal/configProvider/pathPatch.js +1 -1
  438. package/dist/esm/internal/configProvider/pathPatch.js.map +1 -1
  439. package/dist/esm/internal/configProvider.js +48 -49
  440. package/dist/esm/internal/configProvider.js.map +1 -1
  441. package/dist/esm/internal/core-effect.js +64 -38
  442. package/dist/esm/internal/core-effect.js.map +1 -1
  443. package/dist/esm/internal/core-stream.js +3 -2
  444. package/dist/esm/internal/core-stream.js.map +1 -1
  445. package/dist/esm/internal/core.js +37 -108
  446. package/dist/esm/internal/core.js.map +1 -1
  447. package/dist/esm/internal/dataSource.js +19 -2
  448. package/dist/esm/internal/dataSource.js.map +1 -1
  449. package/dist/esm/internal/differ/readonlyArrayPatch.js +6 -6
  450. package/dist/esm/internal/differ/readonlyArrayPatch.js.map +1 -1
  451. package/dist/esm/internal/effect/circular.js +6 -1
  452. package/dist/esm/internal/effect/circular.js.map +1 -1
  453. package/dist/esm/internal/errors.js +6 -0
  454. package/dist/esm/internal/errors.js.map +1 -0
  455. package/dist/esm/internal/executionStrategy.js +4 -4
  456. package/dist/esm/internal/executionStrategy.js.map +1 -1
  457. package/dist/esm/internal/fiber.js +6 -5
  458. package/dist/esm/internal/fiber.js.map +1 -1
  459. package/dist/esm/internal/fiberRefs/patch.js +1 -1
  460. package/dist/esm/internal/fiberRefs/patch.js.map +1 -1
  461. package/dist/esm/internal/fiberRefs.js +1 -1
  462. package/dist/esm/internal/fiberRefs.js.map +1 -1
  463. package/dist/esm/internal/fiberRuntime.js +104 -63
  464. package/dist/esm/internal/fiberRuntime.js.map +1 -1
  465. package/dist/esm/internal/groupBy.js +3 -3
  466. package/dist/esm/internal/groupBy.js.map +1 -1
  467. package/dist/esm/internal/hashMap.js +1 -1
  468. package/dist/esm/internal/hashMap.js.map +1 -1
  469. package/dist/esm/internal/hashSet.js.map +1 -1
  470. package/dist/esm/internal/layer/circular.js.map +1 -1
  471. package/dist/esm/internal/layer.js +5 -5
  472. package/dist/esm/internal/layer.js.map +1 -1
  473. package/dist/esm/internal/logger.js +28 -8
  474. package/dist/esm/internal/logger.js.map +1 -1
  475. package/dist/esm/internal/managedRuntime.js +1 -1
  476. package/dist/esm/internal/managedRuntime.js.map +1 -1
  477. package/dist/esm/internal/matcher.js +4 -3
  478. package/dist/esm/internal/matcher.js.map +1 -1
  479. package/dist/esm/internal/metric/boundaries.js +4 -4
  480. package/dist/esm/internal/metric/boundaries.js.map +1 -1
  481. package/dist/esm/internal/metric/hook.js +20 -17
  482. package/dist/esm/internal/metric/hook.js.map +1 -1
  483. package/dist/esm/internal/metric/key.js +4 -4
  484. package/dist/esm/internal/metric/key.js.map +1 -1
  485. package/dist/esm/internal/metric/keyType.js +5 -1
  486. package/dist/esm/internal/metric/keyType.js.map +1 -1
  487. package/dist/esm/internal/metric/state.js +4 -4
  488. package/dist/esm/internal/metric/state.js.map +1 -1
  489. package/dist/esm/internal/metric.js +4 -4
  490. package/dist/esm/internal/metric.js.map +1 -1
  491. package/dist/esm/internal/pool.js +11 -11
  492. package/dist/esm/internal/pool.js.map +1 -1
  493. package/dist/esm/internal/pubsub.js +5 -5
  494. package/dist/esm/internal/pubsub.js.map +1 -1
  495. package/dist/esm/internal/query.js +2 -2
  496. package/dist/esm/internal/query.js.map +1 -1
  497. package/dist/esm/internal/queue.js +9 -9
  498. package/dist/esm/internal/queue.js.map +1 -1
  499. package/dist/esm/internal/rateLimiter.js +1 -1
  500. package/dist/esm/internal/rateLimiter.js.map +1 -1
  501. package/dist/esm/internal/redBlackTree/iterator.js +2 -2
  502. package/dist/esm/internal/redBlackTree/iterator.js.map +1 -1
  503. package/dist/esm/internal/ref.js +6 -1
  504. package/dist/esm/internal/ref.js.map +1 -1
  505. package/dist/esm/internal/reloadable.js +1 -1
  506. package/dist/esm/internal/reloadable.js.map +1 -1
  507. package/dist/esm/internal/runtime.js +4 -4
  508. package/dist/esm/internal/runtime.js.map +1 -1
  509. package/dist/esm/internal/schedule/intervals.js +2 -1
  510. package/dist/esm/internal/schedule/intervals.js.map +1 -1
  511. package/dist/esm/internal/schedule.js +3 -3
  512. package/dist/esm/internal/schedule.js.map +1 -1
  513. package/dist/esm/internal/scopedCache.js +7 -7
  514. package/dist/esm/internal/scopedCache.js.map +1 -1
  515. package/dist/esm/internal/scopedRef.js +4 -4
  516. package/dist/esm/internal/scopedRef.js.map +1 -1
  517. package/dist/esm/internal/secret.js +2 -2
  518. package/dist/esm/internal/secret.js.map +1 -1
  519. package/dist/esm/internal/sink.js +10 -10
  520. package/dist/esm/internal/sink.js.map +1 -1
  521. package/dist/esm/internal/stm/stm/tExit.js +3 -2
  522. package/dist/esm/internal/stm/stm/tExit.js.map +1 -1
  523. package/dist/esm/internal/stm/stm.js +11 -9
  524. package/dist/esm/internal/stm/stm.js.map +1 -1
  525. package/dist/esm/internal/stm/tMap.js +3 -3
  526. package/dist/esm/internal/stm/tMap.js.map +1 -1
  527. package/dist/esm/internal/stm/tPriorityQueue.js +11 -11
  528. package/dist/esm/internal/stm/tPriorityQueue.js.map +1 -1
  529. package/dist/esm/internal/stm/tPubSub.js +3 -3
  530. package/dist/esm/internal/stm/tPubSub.js.map +1 -1
  531. package/dist/esm/internal/stm/tQueue.js +3 -3
  532. package/dist/esm/internal/stm/tQueue.js.map +1 -1
  533. package/dist/esm/internal/stm/tSet.js +1 -1
  534. package/dist/esm/internal/stm/tSet.js.map +1 -1
  535. package/dist/esm/internal/stream/haltStrategy.js +5 -5
  536. package/dist/esm/internal/stream/haltStrategy.js.map +1 -1
  537. package/dist/esm/internal/stream.js +85 -84
  538. package/dist/esm/internal/stream.js.map +1 -1
  539. package/dist/esm/internal/subscriptionRef.js +8 -0
  540. package/dist/esm/internal/subscriptionRef.js.map +1 -1
  541. package/dist/esm/internal/supervisor.js +1 -1
  542. package/dist/esm/internal/supervisor.js.map +1 -1
  543. package/dist/esm/internal/take.js +1 -1
  544. package/dist/esm/internal/take.js.map +1 -1
  545. package/dist/esm/internal/tracer.js.map +1 -1
  546. package/dist/esm/internal/trie.js +1 -1
  547. package/dist/esm/internal/trie.js.map +1 -1
  548. package/dist/esm/internal/version.js +1 -1
  549. package/dist/esm/internal/version.js.map +1 -1
  550. package/package.json +45 -13
  551. package/src/{ReadonlyArray.ts → Array.ts} +47 -24
  552. package/src/Brand.ts +3 -3
  553. package/src/Cache.ts +12 -10
  554. package/src/Cause.ts +1 -1
  555. package/src/Channel.ts +12 -9
  556. package/src/Chunk.ts +3 -3
  557. package/src/ConfigError.ts +7 -6
  558. package/src/Cron.ts +17 -17
  559. package/src/Duration.ts +54 -1
  560. package/src/Effect.ts +46 -57
  561. package/src/Either.ts +7 -7
  562. package/src/ExecutionStrategy.ts +10 -2
  563. package/src/Exit.ts +11 -9
  564. package/src/Fiber.ts +11 -8
  565. package/src/FiberHandle.ts +414 -0
  566. package/src/FiberMap.ts +181 -73
  567. package/src/FiberRefs.ts +1 -1
  568. package/src/FiberSet.ts +96 -36
  569. package/src/GroupBy.ts +1 -1
  570. package/src/HashMap.ts +0 -1
  571. package/src/HashSet.ts +0 -1
  572. package/src/Iterable.ts +48 -10
  573. package/src/Layer.ts +6 -6
  574. package/src/List.ts +8 -7
  575. package/src/Logger.ts +2 -2
  576. package/src/Metric.ts +9 -2
  577. package/src/MetricKey.ts +9 -1
  578. package/src/MetricKeyType.ts +6 -1
  579. package/src/MutableHashMap.ts +1 -1
  580. package/src/Option.ts +9 -6
  581. package/src/Readable.ts +92 -0
  582. package/src/{ReadonlyRecord.ts → Record.ts} +28 -29
  583. package/src/Ref.ts +2 -2
  584. package/src/RegExp.ts +17 -0
  585. package/src/Request.ts +1 -1
  586. package/src/RequestResolver.ts +4 -4
  587. package/src/STM.ts +12 -9
  588. package/src/Schedule.ts +1 -1
  589. package/src/ScopedCache.ts +11 -9
  590. package/src/SortedSet.ts +1 -1
  591. package/src/Stream.ts +14 -11
  592. package/src/StreamHaltStrategy.ts +14 -2
  593. package/src/String.ts +45 -2
  594. package/src/Subscribable.ts +99 -0
  595. package/src/SubscriptionRef.ts +2 -2
  596. package/src/TestAnnotation.ts +2 -1
  597. package/src/TestAnnotations.ts +1 -1
  598. package/src/TestClock.ts +3 -3
  599. package/src/Tracer.ts +13 -5
  600. package/src/Trie.ts +1 -1
  601. package/src/Types.ts +0 -8
  602. package/src/index.ts +26 -4
  603. package/src/internal/{readonlyArray.ts → array.ts} +1 -1
  604. package/src/internal/cache.ts +40 -40
  605. package/src/internal/cause.ts +8 -8
  606. package/src/internal/channel/channelExecutor.ts +15 -15
  607. package/src/internal/channel/channelState.ts +1 -1
  608. package/src/internal/channel/singleProducerAsyncInput.ts +1 -1
  609. package/src/internal/channel.ts +11 -11
  610. package/src/internal/clock.ts +2 -2
  611. package/src/internal/configError.ts +22 -21
  612. package/src/internal/configProvider/pathPatch.ts +1 -1
  613. package/src/internal/configProvider.ts +51 -55
  614. package/src/internal/core-effect.ts +149 -134
  615. package/src/internal/core-stream.ts +5 -2
  616. package/src/internal/core.ts +64 -200
  617. package/src/internal/dataSource.ts +19 -20
  618. package/src/internal/differ/readonlyArrayPatch.ts +6 -6
  619. package/src/internal/effect/circular.ts +9 -3
  620. package/src/internal/errors.ts +7 -0
  621. package/src/internal/executionStrategy.ts +14 -12
  622. package/src/internal/fiber.ts +8 -5
  623. package/src/internal/fiberRefs/patch.ts +1 -1
  624. package/src/internal/fiberRefs.ts +1 -1
  625. package/src/internal/fiberRuntime.ts +157 -123
  626. package/src/internal/groupBy.ts +4 -4
  627. package/src/internal/hashMap.ts +1 -2
  628. package/src/internal/hashSet.ts +0 -1
  629. package/src/internal/layer/circular.ts +2 -2
  630. package/src/internal/layer.ts +9 -9
  631. package/src/internal/logger.ts +28 -8
  632. package/src/internal/managedRuntime.ts +1 -1
  633. package/src/internal/matcher.ts +5 -3
  634. package/src/internal/metric/boundaries.ts +5 -5
  635. package/src/internal/metric/hook.ts +21 -18
  636. package/src/internal/metric/key.ts +8 -5
  637. package/src/internal/metric/keyType.ts +5 -2
  638. package/src/internal/metric/state.ts +5 -5
  639. package/src/internal/metric.ts +8 -6
  640. package/src/internal/pool.ts +11 -11
  641. package/src/internal/pubsub.ts +6 -6
  642. package/src/internal/query.ts +4 -4
  643. package/src/internal/queue.ts +11 -11
  644. package/src/internal/rateLimiter.ts +1 -1
  645. package/src/internal/redBlackTree/iterator.ts +2 -2
  646. package/src/internal/ref.ts +8 -2
  647. package/src/internal/reloadable.ts +1 -1
  648. package/src/internal/runtime.ts +5 -5
  649. package/src/internal/schedule/intervals.ts +2 -1
  650. package/src/internal/schedule.ts +8 -9
  651. package/src/internal/scopedCache.ts +53 -53
  652. package/src/internal/scopedRef.ts +4 -4
  653. package/src/internal/secret.ts +2 -2
  654. package/src/internal/sink.ts +10 -10
  655. package/src/internal/stm/stm/tExit.ts +5 -2
  656. package/src/internal/stm/stm.ts +13 -9
  657. package/src/internal/stm/tMap.ts +3 -3
  658. package/src/internal/stm/tPriorityQueue.ts +11 -11
  659. package/src/internal/stm/tPubSub.ts +3 -3
  660. package/src/internal/stm/tQueue.ts +3 -3
  661. package/src/internal/stm/tSet.ts +1 -1
  662. package/src/internal/stream/haltStrategy.ts +23 -14
  663. package/src/internal/stream.ts +91 -88
  664. package/src/internal/subscriptionRef.ts +8 -0
  665. package/src/internal/supervisor.ts +1 -1
  666. package/src/internal/take.ts +1 -1
  667. package/src/internal/tracer.ts +2 -2
  668. package/src/internal/trie.ts +1 -2
  669. package/src/internal/version.ts +1 -1
  670. package/ReadonlyArray/package.json +0 -6
  671. package/ReadonlyRecord/package.json +0 -6
  672. package/dist/cjs/ReadonlyArray.js.map +0 -1
  673. package/dist/cjs/ReadonlyRecord.js.map +0 -1
  674. package/dist/cjs/internal/Iterable.js +0 -61
  675. package/dist/cjs/internal/Iterable.js.map +0 -1
  676. package/dist/cjs/internal/readonlyArray.js.map +0 -1
  677. package/dist/dts/ReadonlyArray.d.ts.map +0 -1
  678. package/dist/dts/ReadonlyRecord.d.ts.map +0 -1
  679. package/dist/dts/internal/Iterable.d.ts +0 -2
  680. package/dist/dts/internal/Iterable.d.ts.map +0 -1
  681. package/dist/dts/internal/readonlyArray.d.ts +0 -5
  682. package/dist/dts/internal/readonlyArray.d.ts.map +0 -1
  683. package/dist/esm/ReadonlyArray.js.map +0 -1
  684. package/dist/esm/ReadonlyRecord.js.map +0 -1
  685. package/dist/esm/internal/Iterable.js +0 -53
  686. package/dist/esm/internal/Iterable.js.map +0 -1
  687. package/dist/esm/internal/readonlyArray.js.map +0 -1
  688. package/src/internal/Iterable.ts +0 -54
@@ -95,7 +95,7 @@ export class ChannelExecutor {
95
95
  }));
96
96
  result = ChannelState.fromEffect(Effect.flatMap(Effect.forkDaemon(drainer()), fiber => Effect.sync(() => this.addFinalizer(exit => Effect.flatMap(Fiber.interrupt(fiber), () => Effect.suspend(() => {
97
97
  const effect = this.restorePipe(exit, inputExecutor);
98
- return effect !== undefined ? effect : Effect.unit;
98
+ return effect !== undefined ? effect : Effect.void;
99
99
  }))))));
100
100
  }
101
101
  break;
@@ -103,7 +103,7 @@ export class ChannelExecutor {
103
103
  case ChannelOpCodes.OP_CONCAT_ALL:
104
104
  {
105
105
  const executor = new ChannelExecutor(this._currentChannel.value(), this._providedEnv, effect => Effect.sync(() => {
106
- const prevLastClose = this._closeLastSubstream === undefined ? Effect.unit : this._closeLastSubstream;
106
+ const prevLastClose = this._closeLastSubstream === undefined ? Effect.void : this._closeLastSubstream;
107
107
  this._closeLastSubstream = pipe(prevLastClose, Effect.zipRight(effect));
108
108
  }));
109
109
  executor._input = this._input;
@@ -116,7 +116,7 @@ export class ChannelExecutor {
116
116
  case ChannelOpCodes.OP_EMIT:
117
117
  {
118
118
  this._emitted = this._currentChannel.out;
119
- this._currentChannel = this._activeSubexecutor !== undefined ? undefined : core.unit;
119
+ this._currentChannel = this._activeSubexecutor !== undefined ? undefined : core.void;
120
120
  result = ChannelState.Emit();
121
121
  break;
122
122
  }
@@ -142,11 +142,11 @@ export class ChannelExecutor {
142
142
  result = ChannelState.fromEffect(Effect.matchCauseEffect(effect, {
143
143
  onFailure: cause => {
144
144
  const state = this.doneHalt(cause);
145
- return state !== undefined && ChannelState.isFromEffect(state) ? state.effect : Effect.unit;
145
+ return state !== undefined && ChannelState.isFromEffect(state) ? state.effect : Effect.void;
146
146
  },
147
147
  onSuccess: value => {
148
148
  const state = this.doneSucceed(value);
149
- return state !== undefined && ChannelState.isFromEffect(state) ? state.effect : Effect.unit;
149
+ return state !== undefined && ChannelState.isFromEffect(state) ? state.effect : Effect.void;
150
150
  }
151
151
  }));
152
152
  break;
@@ -159,7 +159,7 @@ export class ChannelExecutor {
159
159
  this._input = leftExec;
160
160
  this.addFinalizer(exit => {
161
161
  const effect = this.restorePipe(exit, previousInput);
162
- return effect !== undefined ? effect : Effect.unit;
162
+ return effect !== undefined ? effect : Effect.void;
163
163
  });
164
164
  this._currentChannel = this._currentChannel.right();
165
165
  break;
@@ -247,7 +247,7 @@ export class ChannelExecutor {
247
247
  }
248
248
  next = this._doneStack.pop();
249
249
  }
250
- const effect = finalizers.length === 0 ? Effect.unit : runFinalizers(finalizers, exit);
250
+ const effect = finalizers.length === 0 ? Effect.void : runFinalizers(finalizers, exit);
251
251
  this.storeInProgressFinalizer(effect);
252
252
  return effect;
253
253
  }
@@ -270,7 +270,7 @@ export class ChannelExecutor {
270
270
  const effect = currInput.close(exit);
271
271
  return effect;
272
272
  }
273
- return Effect.unit;
273
+ return Effect.void;
274
274
  }
275
275
  close(exit) {
276
276
  let runInProgressFinalizers = undefined;
@@ -403,10 +403,10 @@ export class ChannelExecutor {
403
403
  onSuccess: value => this.doneSucceed(value)
404
404
  });
405
405
  this._activeSubexecutor = undefined;
406
- return state === undefined ? Effect.unit : ChannelState.effect(state);
406
+ return state === undefined ? Effect.void : ChannelState.effect(state);
407
407
  }
408
408
  finishSubexecutorWithCloseEffect(subexecutorDone, ...closeFuncs) {
409
- this.addFinalizer(() => pipe(closeFuncs, Effect.forEach(closeFunc => pipe(Effect.sync(() => closeFunc(subexecutorDone)), Effect.flatMap(closeEffect => closeEffect !== undefined ? closeEffect : Effect.unit)), {
409
+ this.addFinalizer(() => pipe(closeFuncs, Effect.forEach(closeFunc => pipe(Effect.sync(() => closeFunc(subexecutorDone)), Effect.flatMap(closeEffect => closeEffect !== undefined ? closeEffect : Effect.void)), {
410
410
  discard: true
411
411
  })));
412
412
  const state = pipe(subexecutorDone, Exit.match({
@@ -503,7 +503,7 @@ export class ChannelExecutor {
503
503
  }
504
504
  performPullFromUpstream(subexecutor) {
505
505
  return ChannelState.Read(subexecutor.upstreamExecutor, effect => {
506
- const closeLastSubstream = this._closeLastSubstream === undefined ? Effect.unit : this._closeLastSubstream;
506
+ const closeLastSubstream = this._closeLastSubstream === undefined ? Effect.void : this._closeLastSubstream;
507
507
  this._closeLastSubstream = undefined;
508
508
  return pipe(this._executeCloseLastSubstream(closeLastSubstream), Effect.zipRight(effect));
509
509
  }, emitted => {
@@ -571,9 +571,9 @@ export class ChannelExecutor {
571
571
  return undefined;
572
572
  }
573
573
  }
574
- const ifNotNull = effect => effect !== undefined ? effect : Effect.unit;
574
+ const ifNotNull = effect => effect !== undefined ? effect : Effect.void;
575
575
  const runFinalizers = (finalizers, exit) => {
576
- return pipe(Effect.forEach(finalizers, fin => Effect.exit(fin(exit))), Effect.map(exits => pipe(Exit.all(exits), Option.getOrElse(() => Exit.unit))), Effect.flatMap(exit => Effect.suspend(() => exit)));
576
+ return pipe(Effect.forEach(finalizers, fin => Effect.exit(fin(exit))), Effect.map(exits => pipe(Exit.all(exits), Option.getOrElse(() => Exit.void))), Effect.flatMap(exit => Effect.suspend(() => exit)));
577
577
  };
578
578
  /**
579
579
  * @internal
@@ -632,7 +632,7 @@ export const readUpstream = (r, onSuccess, onFailure) => {
632
632
  readStack.push(current);
633
633
  return pipe(current.onEffect(state.effect), Effect.catchAllCause(cause => Effect.suspend(() => {
634
634
  const doneEffect = current.onDone(Exit.failCause(cause));
635
- return doneEffect === undefined ? Effect.unit : doneEffect;
635
+ return doneEffect === undefined ? Effect.void : doneEffect;
636
636
  })), Effect.matchCauseEffect({
637
637
  onFailure,
638
638
  onSuccess: () => read()
@@ -655,7 +655,7 @@ export const runScoped = self => {
655
655
  const run = (channelDeferred, scopeDeferred, scope) => Effect.acquireUseRelease(Effect.sync(() => new ChannelExecutor(self, void 0, identity)), exec => Effect.suspend(() => pipe(runScopedInterpret(exec.run(), exec), Effect.intoDeferred(channelDeferred), Effect.zipRight(Deferred.await(channelDeferred)), Effect.zipLeft(Deferred.await(scopeDeferred)))), (exec, exit) => {
656
656
  const finalize = exec.close(exit);
657
657
  if (finalize === undefined) {
658
- return Effect.unit;
658
+ return Effect.void;
659
659
  }
660
660
  return Effect.tapErrorCause(finalize, cause => Scope.addFinalizer(scope, Effect.failCause(cause)));
661
661
  });
@@ -1 +1 @@
1
- {"version":3,"file":"channelExecutor.js","names":["Cause","Deferred","Effect","ExecutionStrategy","Exit","Fiber","identity","pipe","Option","Scope","core","ChannelOpCodes","ChildExecutorDecisionOpCodes","ChannelStateOpCodes","UpstreamPullStrategyOpCodes","ContinuationOpCodes","ChannelState","Continuation","Subexecutor","upstreamPullRequest","ChannelExecutor","_activeSubexecutor","undefined","_cancelled","_closeLastSubstream","_currentChannel","_done","_doneStack","_emitted","_executeCloseLastSubstream","_input","_inProgressFinalizer","_providedEnv","constructor","initialChannel","providedEnv","executeCloseLastSubstream","run","result","processCancellation","runSubexecutor","Done","isEffect","fromEffect","_tag","OP_BRACKET_OUT","runBracketOut","OP_BRIDGE","bridgeInput","input","channel","inputExecutor","drainer","flatMap","awaitRead","suspend","state","OP_DONE","match","getDone","onFailure","cause","error","onSuccess","value","done","OP_EMIT","emit","getEmit","OP_FROM_EFFECT","matchCauseEffect","effect","OP_READ","readUpstream","forkDaemon","fiber","sync","addFinalizer","exit","interrupt","restorePipe","unit","OP_CONCAT_ALL","executor","prevLastClose","zipRight","PullFromUpstream","k","x","y","combineInners","combineAll","request","onPull","onEmit","out","Emit","OP_ENSURING","runEnsuring","OP_FAIL","doneHalt","OP_FOLD","push","provide","isFromEffect","doneSucceed","OP_PIPE_TO","previousInput","leftExec","left","right","OP_PROVIDE","previousEnv","context","inner","read","Read","emitted","more","onExit","die","OP_SUCCEED","evaluate","OP_SUCCEED_NOW","terminal","OP_SUSPEND","failCause","cancelWith","clearInProgressFinalizer","storeInProgressFinalizer","finalizer","popAllFinalizers","finalizers","next","pop","length","runFinalizers","popNextFinalizers","builder","cont","OP_CONTINUATION_K","prev","currInput","close","runInProgressFinalizers","ensuring","closeSelf","selfFinalizers","closeSubexecutors","ifNotNull","zip","map","exit1","exit2","exit3","uninterruptible","succeed","head","reverse","finalizerEffect","f","onHalt","bracketOut","acquire","write","ContinuationFinalizerImpl","subexecutor","OP_PULL_FROM_CHILD","pullFromChild","childExecutor","parentSubexecutor","OP_PULL_FROM_UPSTREAM","pullFromUpstream","OP_DRAIN_CHILD_EXECUTORS","drainChildExecutors","replaceSubexecutor","nextSubExec","finishWithExit","finishSubexecutorWithCloseEffect","subexecutorDone","closeFuncs","forEach","closeFunc","closeEffect","discard","applyUpstreamPullStrategy","upstreamFinished","queue","strategy","OP_PULL_AFTER_NEXT","shouldPrepend","some","emitSeparator","OP_PULL_AFTER_ALL_ENQUEUED","shouldEnqueue","onEmitted","childExecutorDecision","OP_CONTINUE","OP_CLOSE","finishWithDoneValue","OP_YIELD","modifiedParent","enqueuePullFromChild","handleSubexecutorFailure","effectOrUndefinedIgnored","doneValue","upstreamExecutor","createChild","lastDone","combineChildResults","activeChildExecutors","combineWithChildResult","DrainChildExecutors","upstreamDone","performPullFromUpstream","activeChild","slice","PullFromChild","closeLastSubstream","updatedChildExecutors","Pulled","isSome","drain","a","lastClose","rest","remainingExecutors","NoUpstream","reduce","n","curr","fin","exits","all","getOrElse","r","readStack","current","upstream","dieMessage","emitEffect","doneEffect","onDone","onEffect","catchAllCause","self","runScoped","scoped","channelDeferred","scopeDeferred","scope","acquireUseRelease","exec","runScopedInterpret","intoDeferred","await","zipLeft","finalize","tapErrorCause","uninterruptibleMask","restore","parent","fork","sequential","make","child","forkScoped","inheritAll","channelState","op"],"sources":["../../../../src/internal/channel/channelExecutor.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"channelExecutor.js","names":["Cause","Deferred","Effect","ExecutionStrategy","Exit","Fiber","identity","pipe","Option","Scope","core","ChannelOpCodes","ChildExecutorDecisionOpCodes","ChannelStateOpCodes","UpstreamPullStrategyOpCodes","ContinuationOpCodes","ChannelState","Continuation","Subexecutor","upstreamPullRequest","ChannelExecutor","_activeSubexecutor","undefined","_cancelled","_closeLastSubstream","_currentChannel","_done","_doneStack","_emitted","_executeCloseLastSubstream","_input","_inProgressFinalizer","_providedEnv","constructor","initialChannel","providedEnv","executeCloseLastSubstream","run","result","processCancellation","runSubexecutor","Done","isEffect","fromEffect","_tag","OP_BRACKET_OUT","runBracketOut","OP_BRIDGE","bridgeInput","input","channel","inputExecutor","drainer","flatMap","awaitRead","suspend","state","OP_DONE","match","getDone","onFailure","cause","error","onSuccess","value","done","OP_EMIT","emit","getEmit","OP_FROM_EFFECT","matchCauseEffect","effect","OP_READ","readUpstream","forkDaemon","fiber","sync","addFinalizer","exit","interrupt","restorePipe","void","OP_CONCAT_ALL","executor","prevLastClose","zipRight","PullFromUpstream","k","x","y","combineInners","combineAll","request","onPull","onEmit","out","Emit","OP_ENSURING","runEnsuring","OP_FAIL","doneHalt","OP_FOLD","push","provide","isFromEffect","doneSucceed","OP_PIPE_TO","previousInput","leftExec","left","right","OP_PROVIDE","previousEnv","context","inner","read","Read","emitted","more","onExit","die","OP_SUCCEED","evaluate","OP_SUCCEED_NOW","terminal","OP_SUSPEND","failCause","cancelWith","clearInProgressFinalizer","storeInProgressFinalizer","finalizer","popAllFinalizers","finalizers","next","pop","length","runFinalizers","popNextFinalizers","builder","cont","OP_CONTINUATION_K","prev","currInput","close","runInProgressFinalizers","ensuring","closeSelf","selfFinalizers","closeSubexecutors","ifNotNull","zip","map","exit1","exit2","exit3","uninterruptible","succeed","head","reverse","finalizerEffect","f","onHalt","bracketOut","acquire","write","ContinuationFinalizerImpl","subexecutor","OP_PULL_FROM_CHILD","pullFromChild","childExecutor","parentSubexecutor","OP_PULL_FROM_UPSTREAM","pullFromUpstream","OP_DRAIN_CHILD_EXECUTORS","drainChildExecutors","replaceSubexecutor","nextSubExec","finishWithExit","finishSubexecutorWithCloseEffect","subexecutorDone","closeFuncs","forEach","closeFunc","closeEffect","discard","applyUpstreamPullStrategy","upstreamFinished","queue","strategy","OP_PULL_AFTER_NEXT","shouldPrepend","some","emitSeparator","OP_PULL_AFTER_ALL_ENQUEUED","shouldEnqueue","onEmitted","childExecutorDecision","OP_CONTINUE","OP_CLOSE","finishWithDoneValue","OP_YIELD","modifiedParent","enqueuePullFromChild","handleSubexecutorFailure","effectOrUndefinedIgnored","doneValue","upstreamExecutor","createChild","lastDone","combineChildResults","activeChildExecutors","combineWithChildResult","DrainChildExecutors","upstreamDone","performPullFromUpstream","activeChild","slice","PullFromChild","closeLastSubstream","updatedChildExecutors","Pulled","isSome","drain","a","lastClose","rest","remainingExecutors","NoUpstream","reduce","n","curr","fin","exits","all","getOrElse","r","readStack","current","upstream","dieMessage","emitEffect","doneEffect","onDone","onEffect","catchAllCause","self","runScoped","scoped","channelDeferred","scopeDeferred","scope","acquireUseRelease","exec","runScopedInterpret","intoDeferred","await","zipLeft","finalize","tapErrorCause","uninterruptibleMask","restore","parent","fork","sequential","make","child","forkScoped","inheritAll","channelState","op"],"sources":["../../../../src/internal/channel/channelExecutor.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -53,7 +53,7 @@ export const isFromEffect = self => self._tag === OpCodes.OP_FROM_EFFECT;
53
53
  /** @internal */
54
54
  export const isRead = self => self._tag === OpCodes.OP_READ;
55
55
  /** @internal */
56
- export const effect = self => isFromEffect(self) ? self.effect : Effect.unit;
56
+ export const effect = self => isFromEffect(self) ? self.effect : Effect.void;
57
57
  /** @internal */
58
58
  export const effectOrUndefinedIgnored = self => isFromEffect(self) ? Effect.ignore(self.effect) : undefined;
59
59
  //# sourceMappingURL=channelState.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"channelState.js","names":["Effect","hasProperty","OpCodes","ChannelStateTypeId","Symbol","for","channelStateVariance","_E","_","_R","proto","Done","op","Object","create","_tag","OP_DONE","Emit","OP_EMIT","fromEffect","effect","OP_FROM_EFFECT","Read","upstream","onEffect","onEmit","onDone","OP_READ","isChannelState","u","isDone","self","isEmit","isFromEffect","isRead","unit","effectOrUndefinedIgnored","ignore","undefined"],"sources":["../../../../src/internal/channel/channelState.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAO,KAAKA,MAAM,MAAM,iBAAiB;AAEzC,SAASC,WAAW,QAAQ,oBAAoB;AAEhD,OAAO,KAAKC,OAAO,MAAM,4BAA4B;AAGrD;AACA,OAAO,MAAMC,kBAAkB,gBAAGC,MAAM,CAACC,GAAG,CAAC,qBAAqB,CAAC;AAkBnE,MAAMC,oBAAoB,GAAG;EAC3B;EACAC,EAAE,EAAGC,CAAQ,IAAKA,CAAC;EACnB;EACAC,EAAE,EAAGD,CAAQ,IAAKA;CACnB;AAED;AACA,MAAME,KAAK,GAAG;EACZ,CAACP,kBAAkB,GAAGG;CACvB;AAqCD;AACA,OAAO,MAAMK,IAAI,GAAGA,CAAA,KAAiC;EACnD,MAAMC,EAAE,GAAGC,MAAM,CAACC,MAAM,CAACJ,KAAK,CAAC;EAC/BE,EAAE,CAACG,IAAI,GAAGb,OAAO,CAACc,OAAO;EACzB,OAAOJ,EAAE;AACX,CAAC;AAED;AACA,OAAO,MAAMK,IAAI,GAAGA,CAAA,KAAiC;EACnD,MAAML,EAAE,GAAGC,MAAM,CAACC,MAAM,CAACJ,KAAK,CAAC;EAC/BE,EAAE,CAACG,IAAI,GAAGb,OAAO,CAACgB,OAAO;EACzB,OAAON,EAAE;AACX,CAAC;AAED;AACA,OAAO,MAAMO,UAAU,GAAaC,MAA8B,IAAwB;EACxF,MAAMR,EAAE,GAAGC,MAAM,CAACC,MAAM,CAACJ,KAAK,CAAC;EAC/BE,EAAE,CAACG,IAAI,GAAGb,OAAO,CAACmB,cAAc;EAChCT,EAAE,CAACQ,MAAM,GAAGA,MAAM;EAClB,OAAOR,EAAE;AACX,CAAC;AAED;AACA,OAAO,MAAMU,IAAI,GAAGA,CAClBC,QAA2B,EAC3BC,QAAkF,EAClFC,MAAqE,EACrEC,MAAwF,KAC9D;EAC1B,MAAMd,EAAE,GAAGC,MAAM,CAACC,MAAM,CAACJ,KAAK,CAAC;EAC/BE,EAAE,CAACG,IAAI,GAAGb,OAAO,CAACyB,OAAO;EACzBf,EAAE,CAACW,QAAQ,GAAGA,QAAQ;EACtBX,EAAE,CAACY,QAAQ,GAAGA,QAAQ;EACtBZ,EAAE,CAACa,MAAM,GAAGA,MAAM;EAClBb,EAAE,CAACc,MAAM,GAAGA,MAAM;EAClB,OAAOd,EAAE;AACX,CAAC;AAED;AACA,OAAO,MAAMgB,cAAc,GAAIC,CAAU,IAA0C5B,WAAW,CAAC4B,CAAC,EAAE1B,kBAAkB,CAAC;AAErH;AACA,OAAO,MAAM2B,MAAM,GAAUC,IAAwB,IAAoBA,IAAkB,CAAChB,IAAI,KAAKb,OAAO,CAACc,OAAO;AAEpH;AACA,OAAO,MAAMgB,MAAM,GAAUD,IAAwB,IAAoBA,IAAkB,CAAChB,IAAI,KAAKb,OAAO,CAACgB,OAAO;AAEpH;AACA,OAAO,MAAMe,YAAY,GAAUF,IAAwB,IACxDA,IAAkB,CAAChB,IAAI,KAAKb,OAAO,CAACmB,cAAc;AAErD;AACA,OAAO,MAAMa,MAAM,GAAUH,IAAwB,IAAoBA,IAAkB,CAAChB,IAAI,KAAKb,OAAO,CAACyB,OAAO;AAEpH;AACA,OAAO,MAAMP,MAAM,GAAUW,IAAwB,IACnDE,YAAY,CAACF,IAAI,CAAC,GAAGA,IAAI,CAACX,MAAmC,GAAGpB,MAAM,CAACmC,IAAI;AAE7E;AACA,OAAO,MAAMC,wBAAwB,GAAUL,IAAwB,IACrEE,YAAY,CAACF,IAAI,CAAC,GAAG/B,MAAM,CAACqC,MAAM,CAACN,IAAI,CAACX,MAAmC,CAAC,GAAGkB,SAAS","ignoreList":[]}
1
+ {"version":3,"file":"channelState.js","names":["Effect","hasProperty","OpCodes","ChannelStateTypeId","Symbol","for","channelStateVariance","_E","_","_R","proto","Done","op","Object","create","_tag","OP_DONE","Emit","OP_EMIT","fromEffect","effect","OP_FROM_EFFECT","Read","upstream","onEffect","onEmit","onDone","OP_READ","isChannelState","u","isDone","self","isEmit","isFromEffect","isRead","void","effectOrUndefinedIgnored","ignore","undefined"],"sources":["../../../../src/internal/channel/channelState.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAO,KAAKA,MAAM,MAAM,iBAAiB;AAEzC,SAASC,WAAW,QAAQ,oBAAoB;AAEhD,OAAO,KAAKC,OAAO,MAAM,4BAA4B;AAGrD;AACA,OAAO,MAAMC,kBAAkB,gBAAGC,MAAM,CAACC,GAAG,CAAC,qBAAqB,CAAC;AAkBnE,MAAMC,oBAAoB,GAAG;EAC3B;EACAC,EAAE,EAAGC,CAAQ,IAAKA,CAAC;EACnB;EACAC,EAAE,EAAGD,CAAQ,IAAKA;CACnB;AAED;AACA,MAAME,KAAK,GAAG;EACZ,CAACP,kBAAkB,GAAGG;CACvB;AAqCD;AACA,OAAO,MAAMK,IAAI,GAAGA,CAAA,KAAiC;EACnD,MAAMC,EAAE,GAAGC,MAAM,CAACC,MAAM,CAACJ,KAAK,CAAC;EAC/BE,EAAE,CAACG,IAAI,GAAGb,OAAO,CAACc,OAAO;EACzB,OAAOJ,EAAE;AACX,CAAC;AAED;AACA,OAAO,MAAMK,IAAI,GAAGA,CAAA,KAAiC;EACnD,MAAML,EAAE,GAAGC,MAAM,CAACC,MAAM,CAACJ,KAAK,CAAC;EAC/BE,EAAE,CAACG,IAAI,GAAGb,OAAO,CAACgB,OAAO;EACzB,OAAON,EAAE;AACX,CAAC;AAED;AACA,OAAO,MAAMO,UAAU,GAAaC,MAA8B,IAAwB;EACxF,MAAMR,EAAE,GAAGC,MAAM,CAACC,MAAM,CAACJ,KAAK,CAAC;EAC/BE,EAAE,CAACG,IAAI,GAAGb,OAAO,CAACmB,cAAc;EAChCT,EAAE,CAACQ,MAAM,GAAGA,MAAM;EAClB,OAAOR,EAAE;AACX,CAAC;AAED;AACA,OAAO,MAAMU,IAAI,GAAGA,CAClBC,QAA2B,EAC3BC,QAAkF,EAClFC,MAAqE,EACrEC,MAAwF,KAC9D;EAC1B,MAAMd,EAAE,GAAGC,MAAM,CAACC,MAAM,CAACJ,KAAK,CAAC;EAC/BE,EAAE,CAACG,IAAI,GAAGb,OAAO,CAACyB,OAAO;EACzBf,EAAE,CAACW,QAAQ,GAAGA,QAAQ;EACtBX,EAAE,CAACY,QAAQ,GAAGA,QAAQ;EACtBZ,EAAE,CAACa,MAAM,GAAGA,MAAM;EAClBb,EAAE,CAACc,MAAM,GAAGA,MAAM;EAClB,OAAOd,EAAE;AACX,CAAC;AAED;AACA,OAAO,MAAMgB,cAAc,GAAIC,CAAU,IAA0C5B,WAAW,CAAC4B,CAAC,EAAE1B,kBAAkB,CAAC;AAErH;AACA,OAAO,MAAM2B,MAAM,GAAUC,IAAwB,IAAoBA,IAAkB,CAAChB,IAAI,KAAKb,OAAO,CAACc,OAAO;AAEpH;AACA,OAAO,MAAMgB,MAAM,GAAUD,IAAwB,IAAoBA,IAAkB,CAAChB,IAAI,KAAKb,OAAO,CAACgB,OAAO;AAEpH;AACA,OAAO,MAAMe,YAAY,GAAUF,IAAwB,IACxDA,IAAkB,CAAChB,IAAI,KAAKb,OAAO,CAACmB,cAAc;AAErD;AACA,OAAO,MAAMa,MAAM,GAAUH,IAAwB,IAAoBA,IAAkB,CAAChB,IAAI,KAAKb,OAAO,CAACyB,OAAO;AAEpH;AACA,OAAO,MAAMP,MAAM,GAAUW,IAAwB,IACnDE,YAAY,CAACF,IAAI,CAAC,GAAGA,IAAI,CAACX,MAAmC,GAAGpB,MAAM,CAACmC,IAAI;AAE7E;AACA,OAAO,MAAMC,wBAAwB,GAAUL,IAAwB,IACrEE,YAAY,CAACF,IAAI,CAAC,GAAG/B,MAAM,CAACqC,MAAM,CAACN,IAAI,CAACX,MAAmC,CAAC,GAAGkB,SAAS","ignoreList":[]}
@@ -40,7 +40,7 @@ class SingleProducerAsyncInputImpl {
40
40
  this.ref = ref;
41
41
  }
42
42
  awaitRead() {
43
- return Effect.flatten(Ref.modify(this.ref, state => state._tag === OP_STATE_EMPTY ? [Deferred.await(state.notifyProducer), state] : [Effect.unit, state]));
43
+ return Effect.flatten(Ref.modify(this.ref, state => state._tag === OP_STATE_EMPTY ? [Deferred.await(state.notifyProducer), state] : [Effect.void, state]));
44
44
  }
45
45
  get close() {
46
46
  return Effect.fiberIdWith(fiberId => this.error(Cause.interrupt(fiberId)));
@@ -1 +1 @@
1
- {"version":3,"file":"singleProducerAsyncInput.js","names":["Cause","Deferred","Effect","Either","Exit","pipe","Ref","OP_STATE_EMPTY","OP_STATE_EMIT","OP_STATE_ERROR","OP_STATE_DONE","stateEmpty","notifyProducer","_tag","stateEmit","notifyConsumers","stateError","cause","stateDone","done","SingleProducerAsyncInputImpl","ref","constructor","awaitRead","flatten","modify","state","await","unit","close","fiberIdWith","fiberId","error","interrupt","value","forEach","deferred","succeed","left","discard","emit","element","flatMap","make","notifyConsumer","slice","undefined","right","length","Error","failCause","take","takeWith","map","elem","fail","onError","onElement","onDone","zipRight","matchCause","onFailure","onSuccess","match","onLeft","onRight"],"sources":["../../../../src/internal/channel/singleProducerAsyncInput.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,gBAAgB;AACvC,OAAO,KAAKC,QAAQ,MAAM,mBAAmB;AAC7C,OAAO,KAAKC,MAAM,MAAM,iBAAiB;AACzC,OAAO,KAAKC,MAAM,MAAM,iBAAiB;AACzC,OAAO,KAAKC,IAAI,MAAM,eAAe;AACrC,SAASC,IAAI,QAAQ,mBAAmB;AACxC,OAAO,KAAKC,GAAG,MAAM,cAAc;AAUnC;AACA,MAAMC,cAAc,GAAG,OAAgB;AAKvC;AACA,MAAMC,aAAa,GAAG,MAAe;AAKrC;AACA,MAAMC,cAAc,GAAG,OAAgB;AAKvC;AACA,MAAMC,aAAa,GAAG,MAAe;AA6BrC;AACA,MAAMC,UAAU,GAAIC,cAAuC,KAAkC;EAC3FC,IAAI,EAAEN,cAAc;EACpBK;CACD,CAAC;AAEF;AACA,MAAME,SAAS,GACbC,eAAiF,KACrD;EAC5BF,IAAI,EAAEL,aAAa;EACnBO;CACD,CAAC;AAEF;AACA,MAAMC,UAAU,GAASC,KAAuB,KAAgC;EAC9EJ,IAAI,EAAEJ,cAAc;EACpBQ;CACD,CAAC;AAEF;AACA,MAAMC,SAAS,GAAUC,IAAU,KAAiC;EAClEN,IAAI,EAAEH,aAAa;EACnBS;CACD,CAAC;AAEF;AACA,MAAMC,4BAA4B;EAGXC,GAAA;EAArBC,YAAqBD,GAAoC;IAApC,KAAAA,GAAG,GAAHA,GAAG;EACxB;EAEAE,SAASA,CAAA;IACP,OAAOrB,MAAM,CAACsB,OAAO,CACnBlB,GAAG,CAACmB,MAAM,CAAC,IAAI,CAACJ,GAAG,EAAGK,KAAK,IACzBA,KAAK,CAACb,IAAI,KAAKN,cAAc,GAC3B,CAACN,QAAQ,CAAC0B,KAAK,CAACD,KAAK,CAACd,cAAc,CAAC,EAAEc,KAA+B,CAAC,GACvE,CAACxB,MAAM,CAAC0B,IAAI,EAAEF,KAAK,CAAC,CAAC,CAC1B;EACH;EAEA,IAAIG,KAAKA,CAAA;IACP,OAAO3B,MAAM,CAAC4B,WAAW,CAAEC,OAAO,IAAK,IAAI,CAACC,KAAK,CAAChC,KAAK,CAACiC,SAAS,CAACF,OAAO,CAAC,CAAC,CAAC;EAC9E;EAEAZ,IAAIA,CAACe,KAAW;IACd,OAAOhC,MAAM,CAACsB,OAAO,CACnBlB,GAAG,CAACmB,MAAM,CAAC,IAAI,CAACJ,GAAG,EAAGK,KAAK,IAAI;MAC7B,QAAQA,KAAK,CAACb,IAAI;QAChB,KAAKN,cAAc;UAAE;YACnB,OAAO,CAACN,QAAQ,CAAC0B,KAAK,CAACD,KAAK,CAACd,cAAc,CAAC,EAAEc,KAAK,CAAC;UACtD;QACA,KAAKlB,aAAa;UAAE;YAClB,OAAO,CACLN,MAAM,CAACiC,OAAO,CACZT,KAAK,CAACX,eAAe,EACpBqB,QAAQ,IAAKnC,QAAQ,CAACoC,OAAO,CAACD,QAAQ,EAAEjC,MAAM,CAACmC,IAAI,CAACJ,KAAK,CAAC,CAAC,EAC5D;cAAEK,OAAO,EAAE;YAAI,CAAE,CAClB,EACDrB,SAAS,CAACgB,KAAK,CAA2B,CAC3C;UACH;QACA,KAAKzB,cAAc;UAAE;YACnB,OAAO,CAACP,MAAM,CAAC+B,SAAS,EAAEP,KAAK,CAAC;UAClC;QACA,KAAKhB,aAAa;UAAE;YAClB,OAAO,CAACR,MAAM,CAAC+B,SAAS,EAAEP,KAAK,CAAC;UAClC;MACF;IACF,CAAC,CAAC,CACH;EACH;EAEAc,IAAIA,CAACC,OAAa;IAChB,OAAOvC,MAAM,CAACwC,OAAO,CAACzC,QAAQ,CAAC0C,IAAI,EAAQ,EAAGP,QAAQ,IACpDlC,MAAM,CAACsB,OAAO,CACZlB,GAAG,CAACmB,MAAM,CAAC,IAAI,CAACJ,GAAG,EAAGK,KAAK,IAAI;MAC7B,QAAQA,KAAK,CAACb,IAAI;QAChB,KAAKN,cAAc;UAAE;YACnB,OAAO,CAACN,QAAQ,CAAC0B,KAAK,CAACD,KAAK,CAACd,cAAc,CAAC,EAAEc,KAAK,CAAC;UACtD;QACA,KAAKlB,aAAa;UAAE;YAClB,MAAMoC,cAAc,GAAGlB,KAAK,CAACX,eAAe,CAAC,CAAC,CAAC;YAC/C,MAAMA,eAAe,GAAGW,KAAK,CAACX,eAAe,CAAC8B,KAAK,CAAC,CAAC,CAAC;YACtD,IAAID,cAAc,KAAKE,SAAS,EAAE;cAChC,OAAO,CACL7C,QAAQ,CAACoC,OAAO,CAACO,cAAc,EAAEzC,MAAM,CAAC4C,KAAK,CAACN,OAAO,CAAC,CAAC,EACtD1B,eAAe,CAACiC,MAAM,KAAK,CAAC,GAC3BrC,UAAU,CAACyB,QAAQ,CAAC,GACpBtB,SAAS,CAACC,eAAe,CAAC,CAC7B;YACH;YACA,MAAM,IAAIkC,KAAK,CACb,oIAAoI,CACrI;UACH;QACA,KAAKxC,cAAc;UAAE;YACnB,OAAO,CAACP,MAAM,CAAC+B,SAAS,EAAEP,KAAK,CAAC;UAClC;QACA,KAAKhB,aAAa;UAAE;YAClB,OAAO,CAACR,MAAM,CAAC+B,SAAS,EAAEP,KAAK,CAAC;UAClC;MACF;IACF,CAAC,CAAC,CACH,CAAC;EACN;EAEAM,KAAKA,CAACf,KAAuB;IAC3B,OAAOf,MAAM,CAACsB,OAAO,CACnBlB,GAAG,CAACmB,MAAM,CAAC,IAAI,CAACJ,GAAG,EAAGK,KAAK,IAAI;MAC7B,QAAQA,KAAK,CAACb,IAAI;QAChB,KAAKN,cAAc;UAAE;YACnB,OAAO,CAACN,QAAQ,CAAC0B,KAAK,CAACD,KAAK,CAACd,cAAc,CAAC,EAAEc,KAAK,CAAC;UACtD;QACA,KAAKlB,aAAa;UAAE;YAClB,OAAO,CACLN,MAAM,CAACiC,OAAO,CACZT,KAAK,CAACX,eAAe,EACpBqB,QAAQ,IAAKnC,QAAQ,CAACiD,SAAS,CAACd,QAAQ,EAAEnB,KAAK,CAAC,EACjD;cAAEsB,OAAO,EAAE;YAAI,CAAE,CAClB,EACDvB,UAAU,CAACC,KAAK,CAA2B,CAC5C;UACH;QACA,KAAKR,cAAc;UAAE;YACnB,OAAO,CAACP,MAAM,CAAC+B,SAAS,EAAEP,KAAK,CAAC;UAClC;QACA,KAAKhB,aAAa;UAAE;YAClB,OAAO,CAACR,MAAM,CAAC+B,SAAS,EAAEP,KAAK,CAAC;UAClC;MACF;IACF,CAAC,CAAC,CACH;EACH;EAEA,IAAIyB,IAAIA,CAAA;IACN,OAAO,IAAI,CAACC,QAAQ,CACjBnC,KAAK,IAAKb,IAAI,CAAC8C,SAAS,CAAClD,KAAK,CAACqD,GAAG,CAACpC,KAAK,EAAEd,MAAM,CAACmC,IAAI,CAAC,CAAC,EACvDgB,IAAI,IAAKlD,IAAI,CAACiC,OAAO,CAACiB,IAAI,CAA8C,EACxEnC,IAAI,IAAKf,IAAI,CAACmD,IAAI,CAACpD,MAAM,CAAC4C,KAAK,CAAC5B,IAAI,CAAC,CAAC,CACxC;EACH;EAEAiC,QAAQA,CACNI,OAAuC,EACvCC,SAA+B,EAC/BC,MAA0B;IAE1B,OAAOxD,MAAM,CAACwC,OAAO,CAACzC,QAAQ,CAAC0C,IAAI,EAAkC,EAAGP,QAAQ,IAC9ElC,MAAM,CAACsB,OAAO,CACZlB,GAAG,CAACmB,MAAM,CAAC,IAAI,CAACJ,GAAG,EAAGK,KAAK,IAAI;MAC7B,QAAQA,KAAK,CAACb,IAAI;QAChB,KAAKN,cAAc;UAAE;YACnB,OAAO,CACLL,MAAM,CAACyD,QAAQ,CACb1D,QAAQ,CAACoC,OAAO,CAACX,KAAK,CAACd,cAAc,EAAE,KAAK,CAAC,CAAC,EAC9CV,MAAM,CAAC0D,UAAU,CAAC3D,QAAQ,CAAC0B,KAAK,CAACS,QAAQ,CAAC,EAAE;cAC1CyB,SAAS,EAAEL,OAAO;cAClBM,SAAS,EAAE3D,MAAM,CAAC4D,KAAK,CAAC;gBAAEC,MAAM,EAAEN,MAAM;gBAAEO,OAAO,EAAER;cAAS,CAAE;aAC/D,CAAC,CACH,EACD3C,SAAS,CAAC,CAACsB,QAAQ,CAAC,CAAC,CACtB;UACH;QACA,KAAK5B,aAAa;UAAE;YAClB,OAAO,CACLN,MAAM,CAAC0D,UAAU,CAAC3D,QAAQ,CAAC0B,KAAK,CAACS,QAAQ,CAAC,EAAE;cAC1CyB,SAAS,EAAEL,OAAO;cAClBM,SAAS,EAAE3D,MAAM,CAAC4D,KAAK,CAAC;gBAAEC,MAAM,EAAEN,MAAM;gBAAEO,OAAO,EAAER;cAAS,CAAE;aAC/D,CAAC,EACF3C,SAAS,CAAC,CAAC,GAAGY,KAAK,CAACX,eAAe,EAAEqB,QAAQ,CAAC,CAAC,CAChD;UACH;QACA,KAAK3B,cAAc;UAAE;YACnB,OAAO,CAACP,MAAM,CAACmC,OAAO,CAACmB,OAAO,CAAC9B,KAAK,CAACT,KAAK,CAAC,CAAC,EAAES,KAAK,CAAC;UACtD;QACA,KAAKhB,aAAa;UAAE;YAClB,OAAO,CAACR,MAAM,CAACmC,OAAO,CAACqB,MAAM,CAAChC,KAAK,CAACP,IAAI,CAAC,CAAC,EAAEO,KAAK,CAAC;UACpD;MACF;IACF,CAAC,CAAC,CACH,CAAC;EACN;;AAGF;AACA,OAAO,MAAMiB,IAAI,GAAGA,CAAA,KAGlBtC,IAAI,CACFJ,QAAQ,CAAC0C,IAAI,EAAQ,EACrBzC,MAAM,CAACwC,OAAO,CAAEN,QAAQ,IAAK9B,GAAG,CAACqC,IAAI,CAAChC,UAAU,CAACyB,QAAQ,CAA2B,CAAC,CAAC,EACtFlC,MAAM,CAACmD,GAAG,CAAEhC,GAAG,IAAK,IAAID,4BAA4B,CAACC,GAAG,CAAC,CAAC,CAC3D","ignoreList":[]}
1
+ {"version":3,"file":"singleProducerAsyncInput.js","names":["Cause","Deferred","Effect","Either","Exit","pipe","Ref","OP_STATE_EMPTY","OP_STATE_EMIT","OP_STATE_ERROR","OP_STATE_DONE","stateEmpty","notifyProducer","_tag","stateEmit","notifyConsumers","stateError","cause","stateDone","done","SingleProducerAsyncInputImpl","ref","constructor","awaitRead","flatten","modify","state","await","void","close","fiberIdWith","fiberId","error","interrupt","value","forEach","deferred","succeed","left","discard","emit","element","flatMap","make","notifyConsumer","slice","undefined","right","length","Error","failCause","take","takeWith","map","elem","fail","onError","onElement","onDone","zipRight","matchCause","onFailure","onSuccess","match","onLeft","onRight"],"sources":["../../../../src/internal/channel/singleProducerAsyncInput.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -26,11 +26,11 @@ import * as MergeStateOpCodes from "./opCodes/channelMergeState.js";
26
26
  import * as ChannelStateOpCodes from "./opCodes/channelState.js";
27
27
  import * as tracer from "./tracer.js";
28
28
  /** @internal */
29
- export const acquireUseRelease = (acquire, use, release) => core.flatMap(core.fromEffect(Ref.make(() => Effect.unit)), ref => pipe(core.fromEffect(Effect.uninterruptible(Effect.tap(acquire, a => Ref.set(ref, exit => release(a, exit))))), core.flatMap(use), core.ensuringWith(exit => Effect.flatMap(Ref.get(ref), f => f(exit)))));
29
+ export const acquireUseRelease = (acquire, use, release) => core.flatMap(core.fromEffect(Ref.make(() => Effect.void)), ref => pipe(core.fromEffect(Effect.uninterruptible(Effect.tap(acquire, a => Ref.set(ref, exit => release(a, exit))))), core.flatMap(use), core.ensuringWith(exit => Effect.flatMap(Ref.get(ref), f => f(exit)))));
30
30
  /** @internal */
31
31
  export const as = /*#__PURE__*/dual(2, (self, value) => map(self, () => value));
32
32
  /** @internal */
33
- export const asUnit = self => map(self, constVoid);
33
+ export const asVoid = self => map(self, constVoid);
34
34
  /** @internal */
35
35
  export const buffer = options => core.suspend(() => {
36
36
  const doBuffer = (empty, isEmpty, ref) => unwrap(Ref.modify(ref, inElem => isEmpty(inElem) ? [core.readWith({
@@ -253,12 +253,12 @@ export const mapOutEffectPar = /*#__PURE__*/dual(3, (self, f, n) => pipe(Effect.
253
253
  onSuccess: either => Either.match(either, {
254
254
  onLeft: outDone => {
255
255
  const lock = withPermits(n);
256
- return Effect.zipRight(Effect.interruptible(lock(Effect.unit)), Effect.asUnit(Queue.offer(queue, Effect.succeed(Either.left(outDone)))));
256
+ return Effect.zipRight(Effect.interruptible(lock(Effect.void)), Effect.asVoid(Queue.offer(queue, Effect.succeed(Either.left(outDone)))));
257
257
  },
258
258
  onRight: outElem => Effect.gen(function* ($) {
259
259
  const deferred = yield* $(Deferred.make());
260
260
  const latch = yield* $(Deferred.make());
261
- yield* $(Effect.asUnit(Queue.offer(queue, Effect.map(Deferred.await(deferred), Either.right))));
261
+ yield* $(Effect.asVoid(Queue.offer(queue, Effect.map(Deferred.await(deferred), Either.right))));
262
262
  yield* $(Deferred.succeed(latch, void 0), Effect.zipRight(pipe(Effect.uninterruptibleMask(restore => pipe(Effect.exit(restore(Deferred.await(errorSignal))), Effect.raceFirst(Effect.exit(restore(f(outElem)))),
263
263
  // TODO: remove
264
264
  Effect.flatMap(exit => Effect.suspend(() => exit)))), Effect.tapErrorCause(cause => Deferred.failCause(errorSignal, cause)), Effect.intoDeferred(deferred))), withPermits(1), Effect.forkScoped);
@@ -312,11 +312,11 @@ export const mergeAllWith = ({
312
312
  }), Effect.flatMap(outDone => Ref.update(lastDone, Option.match({
313
313
  onNone: () => Option.some(outDone.value),
314
314
  onSome: lastDone => Option.some(f(lastDone, outDone.value))
315
- }))), Effect.catchAllCause(cause => Cause.isInterrupted(cause) ? Effect.failCause(cause) : pipe(Queue.offer(queue, Effect.failCause(cause)), Effect.zipRight(Deferred.succeed(errorSignal, void 0)), Effect.asUnit)));
315
+ }))), Effect.catchAllCause(cause => Cause.isInterrupted(cause) ? Effect.failCause(cause) : pipe(Queue.offer(queue, Effect.failCause(cause)), Effect.zipRight(Deferred.succeed(errorSignal, void 0)), Effect.asVoid)));
316
316
  yield* $(Effect.matchCauseEffect(pull, {
317
317
  onFailure: cause => pipe(Queue.offer(queue, Effect.failCause(cause)), Effect.zipRight(Effect.succeed(false))),
318
318
  onSuccess: Either.match({
319
- onLeft: outDone => Effect.raceWith(Effect.interruptible(Deferred.await(errorSignal)), Effect.interruptible(withPermits(concurrencyN)(Effect.unit)), {
319
+ onLeft: outDone => Effect.raceWith(Effect.interruptible(Deferred.await(errorSignal)), Effect.interruptible(withPermits(concurrencyN)(Effect.void)), {
320
320
  onSelfDone: (_, permitAcquisition) => Effect.as(Fiber.interrupt(permitAcquisition), false),
321
321
  onOtherDone: (_, failureAwait) => Effect.zipRight(Fiber.interrupt(failureAwait), pipe(Ref.get(lastDone), Effect.flatMap(Option.match({
322
322
  onNone: () => Queue.offer(queue, Effect.succeed(Either.left(outDone))),
@@ -570,7 +570,7 @@ export const toPubSub = pubsub => toQueue(pubsub);
570
570
  /** @internal */
571
571
  export const toPull = self => Effect.map(Effect.acquireRelease(Effect.sync(() => new executor.ChannelExecutor(self, void 0, identity)), (exec, exit) => {
572
572
  const finalize = exec.close(exit);
573
- return finalize === undefined ? Effect.unit : finalize;
573
+ return finalize === undefined ? Effect.void : finalize;
574
574
  }), exec => Effect.suspend(() => interpretToPull(exec.run(), exec)));
575
575
  /** @internal */
576
576
  const interpretToPull = (channelState, exec) => {
@@ -621,7 +621,7 @@ export const writeAll = (...outs) => writeChunk(Chunk.fromIterable(outs));
621
621
  export const writeChunk = outs => writeChunkWriter(0, outs.length, outs);
622
622
  /** @internal */
623
623
  const writeChunkWriter = (idx, len, chunk) => {
624
- return idx === len ? core.unit : pipe(core.write(pipe(chunk, Chunk.unsafeGet(idx))), core.flatMap(() => writeChunkWriter(idx + 1, len, chunk)));
624
+ return idx === len ? core.void : pipe(core.write(pipe(chunk, Chunk.unsafeGet(idx))), core.flatMap(() => writeChunkWriter(idx + 1, len, chunk)));
625
625
  };
626
626
  /** @internal */
627
627
  export const zip = /*#__PURE__*/dual(args => core.isChannel(args[1]), (self, that, options) => options?.concurrent ? mergeWith(self, {