effect 2.0.0-next.55 → 2.0.0-next.56

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 (652) hide show
  1. package/README.md +14 -9
  2. package/dist/cjs/Cache.js.map +1 -1
  3. package/dist/cjs/Cause.js +53 -18
  4. package/dist/cjs/Cause.js.map +1 -1
  5. package/dist/cjs/ChildExecutorDecision.js.map +1 -1
  6. package/dist/cjs/Chunk.js +5 -5
  7. package/dist/cjs/Chunk.js.map +1 -1
  8. package/dist/cjs/Data.js +11 -20
  9. package/dist/cjs/Data.js.map +1 -1
  10. package/dist/cjs/Duration.js +4 -0
  11. package/dist/cjs/Duration.js.map +1 -1
  12. package/dist/cjs/Effect.js +11 -4
  13. package/dist/cjs/Effect.js.map +1 -1
  14. package/dist/cjs/Either.js +9 -2
  15. package/dist/cjs/Either.js.map +1 -1
  16. package/dist/cjs/Exit.js.map +1 -1
  17. package/dist/cjs/Fiber.js.map +1 -1
  18. package/dist/cjs/HashMap.js.map +1 -1
  19. package/dist/cjs/KeyedPool.js.map +1 -1
  20. package/dist/cjs/List.js.map +1 -1
  21. package/dist/cjs/MergeState.js.map +1 -1
  22. package/dist/cjs/MetricPolling.js +2 -2
  23. package/dist/cjs/MetricPolling.js.map +1 -1
  24. package/dist/cjs/MetricState.js.map +1 -1
  25. package/dist/cjs/NonEmptyIterable.js.map +1 -1
  26. package/dist/cjs/Option.js +2 -2
  27. package/dist/cjs/Option.js.map +1 -1
  28. package/dist/cjs/Pipeable.js.map +1 -1
  29. package/dist/cjs/Predicate.js +17 -1
  30. package/dist/cjs/Predicate.js.map +1 -1
  31. package/dist/cjs/PrimaryKey.js +15 -0
  32. package/dist/cjs/PrimaryKey.js.map +1 -0
  33. package/dist/cjs/Queue.js +6 -1
  34. package/dist/cjs/Queue.js.map +1 -1
  35. package/dist/cjs/ReadonlyArray.js +2 -0
  36. package/dist/cjs/ReadonlyArray.js.map +1 -1
  37. package/dist/cjs/ReadonlyRecord.js +2 -2
  38. package/dist/cjs/ReadonlyRecord.js.map +1 -1
  39. package/dist/cjs/RedBlackTree.js.map +1 -1
  40. package/dist/cjs/Request.js +35 -1
  41. package/dist/cjs/Request.js.map +1 -1
  42. package/dist/cjs/STM.js +1 -1
  43. package/dist/cjs/STM.js.map +1 -1
  44. package/dist/cjs/Sink.js.map +1 -1
  45. package/dist/cjs/SortedMap.js +4 -1
  46. package/dist/cjs/SortedMap.js.map +1 -1
  47. package/dist/cjs/SortedSet.js +2 -2
  48. package/dist/cjs/SortedSet.js.map +1 -1
  49. package/dist/cjs/Stream.js.map +1 -1
  50. package/dist/cjs/SubscriptionRef.js.map +1 -1
  51. package/dist/cjs/TPubSub.js.map +1 -1
  52. package/dist/cjs/TestAnnotation.js +3 -1
  53. package/dist/cjs/TestAnnotation.js.map +1 -1
  54. package/dist/cjs/TestClock.js.map +1 -1
  55. package/dist/cjs/UpstreamPullRequest.js.map +1 -1
  56. package/dist/cjs/index.js +4 -2
  57. package/dist/cjs/index.js.map +1 -1
  58. package/dist/cjs/internal/cache.js.map +1 -1
  59. package/dist/cjs/internal/cause.js +4 -103
  60. package/dist/cjs/internal/cause.js.map +1 -1
  61. package/dist/cjs/internal/channel/continuation.js.map +1 -1
  62. package/dist/cjs/internal/configProvider.js +13 -1
  63. package/dist/cjs/internal/configProvider.js.map +1 -1
  64. package/dist/cjs/internal/core-effect.js +7 -7
  65. package/dist/cjs/internal/core-effect.js.map +1 -1
  66. package/dist/cjs/internal/core-stream.js.map +1 -1
  67. package/dist/cjs/internal/core.js +159 -11
  68. package/dist/cjs/internal/core.js.map +1 -1
  69. package/dist/cjs/internal/data.js +4 -22
  70. package/dist/cjs/internal/data.js.map +1 -1
  71. package/dist/cjs/internal/dataSource.js +1 -1
  72. package/dist/cjs/internal/dataSource.js.map +1 -1
  73. package/dist/cjs/internal/deferred.js.map +1 -1
  74. package/dist/cjs/internal/differ/orPatch.js.map +1 -1
  75. package/dist/cjs/internal/effect/circular.js.map +1 -1
  76. package/dist/cjs/internal/effectable.js +21 -3
  77. package/dist/cjs/internal/effectable.js.map +1 -1
  78. package/dist/cjs/internal/fiberMessage.js.map +1 -1
  79. package/dist/cjs/internal/fiberRuntime.js +9 -10
  80. package/dist/cjs/internal/fiberRuntime.js.map +1 -1
  81. package/dist/cjs/internal/hashMap.js +1 -1
  82. package/dist/cjs/internal/hashMap.js.map +1 -1
  83. package/dist/cjs/internal/hashSet.js +2 -2
  84. package/dist/cjs/internal/hashSet.js.map +1 -1
  85. package/dist/cjs/internal/keyedPool.js.map +1 -1
  86. package/dist/cjs/internal/layer.js.map +1 -1
  87. package/dist/cjs/internal/metric/polling.js +7 -7
  88. package/dist/cjs/internal/metric/polling.js.map +1 -1
  89. package/dist/cjs/internal/metric.js +4 -0
  90. package/dist/cjs/internal/metric.js.map +1 -1
  91. package/dist/cjs/internal/pool.js.map +1 -1
  92. package/dist/cjs/internal/pubsub.js +24 -23
  93. package/dist/cjs/internal/pubsub.js.map +1 -1
  94. package/dist/cjs/internal/queue.js +10 -1
  95. package/dist/cjs/internal/queue.js.map +1 -1
  96. package/dist/cjs/internal/redBlackTree.js +5 -1
  97. package/dist/cjs/internal/redBlackTree.js.map +1 -1
  98. package/dist/cjs/internal/reloadable.js.map +1 -1
  99. package/dist/cjs/internal/request.js +29 -15
  100. package/dist/cjs/internal/request.js.map +1 -1
  101. package/dist/cjs/internal/resource.js +2 -2
  102. package/dist/cjs/internal/resource.js.map +1 -1
  103. package/dist/cjs/internal/runtime.js +2 -3
  104. package/dist/cjs/internal/runtime.js.map +1 -1
  105. package/dist/cjs/internal/schedule.js +6 -7
  106. package/dist/cjs/internal/schedule.js.map +1 -1
  107. package/dist/cjs/internal/scopedCache.js.map +1 -1
  108. package/dist/cjs/internal/scopedRef.js.map +1 -1
  109. package/dist/cjs/internal/sink.js +1 -1
  110. package/dist/cjs/internal/sink.js.map +1 -1
  111. package/dist/cjs/internal/stm/core.js +2 -2
  112. package/dist/cjs/internal/stm/core.js.map +1 -1
  113. package/dist/cjs/internal/stm/tArray.js.map +1 -1
  114. package/dist/cjs/internal/stm/tDeferred.js.map +1 -1
  115. package/dist/cjs/internal/stm/tMap.js.map +1 -1
  116. package/dist/cjs/internal/stm/tPriorityQueue.js.map +1 -1
  117. package/dist/cjs/internal/stm/tPubSub.js +17 -14
  118. package/dist/cjs/internal/stm/tPubSub.js.map +1 -1
  119. package/dist/cjs/internal/stm/tQueue.js +6 -7
  120. package/dist/cjs/internal/stm/tQueue.js.map +1 -1
  121. package/dist/cjs/internal/stm/tSemaphore.js +2 -2
  122. package/dist/cjs/internal/stm/tSemaphore.js.map +1 -1
  123. package/dist/cjs/internal/stm/tSet.js.map +1 -1
  124. package/dist/cjs/internal/stream.js +4 -4
  125. package/dist/cjs/internal/stream.js.map +1 -1
  126. package/dist/cjs/internal/subscriptionRef.js.map +1 -1
  127. package/dist/cjs/internal/take.js +1 -1
  128. package/dist/cjs/internal/take.js.map +1 -1
  129. package/dist/cjs/internal/version.js +1 -1
  130. package/dist/dts/Brand.d.ts +4 -4
  131. package/dist/dts/Brand.d.ts.map +1 -1
  132. package/dist/dts/Cache.d.ts +15 -14
  133. package/dist/dts/Cache.d.ts.map +1 -1
  134. package/dist/dts/Cause.d.ts +92 -25
  135. package/dist/dts/Cause.d.ts.map +1 -1
  136. package/dist/dts/Channel.d.ts +4 -4
  137. package/dist/dts/Channel.d.ts.map +1 -1
  138. package/dist/dts/ChildExecutorDecision.d.ts.map +1 -1
  139. package/dist/dts/Chunk.d.ts +26 -24
  140. package/dist/dts/Chunk.d.ts.map +1 -1
  141. package/dist/dts/Clock.d.ts +4 -4
  142. package/dist/dts/Clock.d.ts.map +1 -1
  143. package/dist/dts/Config.d.ts +4 -4
  144. package/dist/dts/Config.d.ts.map +1 -1
  145. package/dist/dts/ConfigError.d.ts +7 -7
  146. package/dist/dts/ConfigError.d.ts.map +1 -1
  147. package/dist/dts/ConfigProvider.d.ts +3 -3
  148. package/dist/dts/ConfigProvider.d.ts.map +1 -1
  149. package/dist/dts/ConfigProviderPathPatch.d.ts +1 -1
  150. package/dist/dts/ConfigProviderPathPatch.d.ts.map +1 -1
  151. package/dist/dts/Console.d.ts +36 -36
  152. package/dist/dts/Console.d.ts.map +1 -1
  153. package/dist/dts/Context.d.ts +4 -4
  154. package/dist/dts/Context.d.ts.map +1 -1
  155. package/dist/dts/Data.d.ts +3 -17
  156. package/dist/dts/Data.d.ts.map +1 -1
  157. package/dist/dts/Deferred.d.ts +4 -4
  158. package/dist/dts/Deferred.d.ts.map +1 -1
  159. package/dist/dts/Differ.d.ts +9 -9
  160. package/dist/dts/Differ.d.ts.map +1 -1
  161. package/dist/dts/Duration.d.ts +1 -1
  162. package/dist/dts/Duration.d.ts.map +1 -1
  163. package/dist/dts/Effect.d.ts +34 -20
  164. package/dist/dts/Effect.d.ts.map +1 -1
  165. package/dist/dts/Either.d.ts +15 -3
  166. package/dist/dts/Either.d.ts.map +1 -1
  167. package/dist/dts/Equal.d.ts +1 -1
  168. package/dist/dts/Equal.d.ts.map +1 -1
  169. package/dist/dts/Equivalence.d.ts +1 -1
  170. package/dist/dts/Equivalence.d.ts.map +1 -1
  171. package/dist/dts/Exit.d.ts +5 -3
  172. package/dist/dts/Exit.d.ts.map +1 -1
  173. package/dist/dts/Fiber.d.ts +12 -12
  174. package/dist/dts/Fiber.d.ts.map +1 -1
  175. package/dist/dts/FiberRef.d.ts +3 -3
  176. package/dist/dts/FiberRef.d.ts.map +1 -1
  177. package/dist/dts/GroupBy.d.ts +2 -2
  178. package/dist/dts/GroupBy.d.ts.map +1 -1
  179. package/dist/dts/Hash.d.ts +1 -1
  180. package/dist/dts/Hash.d.ts.map +1 -1
  181. package/dist/dts/HashMap.d.ts +6 -4
  182. package/dist/dts/HashMap.d.ts.map +1 -1
  183. package/dist/dts/HashSet.d.ts +9 -9
  184. package/dist/dts/HashSet.d.ts.map +1 -1
  185. package/dist/dts/Inspectable.d.ts +3 -3
  186. package/dist/dts/Inspectable.d.ts.map +1 -1
  187. package/dist/dts/KeyedPool.d.ts +5 -5
  188. package/dist/dts/KeyedPool.d.ts.map +1 -1
  189. package/dist/dts/Layer.d.ts +2 -2
  190. package/dist/dts/Layer.d.ts.map +1 -1
  191. package/dist/dts/List.d.ts +16 -16
  192. package/dist/dts/List.d.ts.map +1 -1
  193. package/dist/dts/Logger.d.ts +4 -4
  194. package/dist/dts/Logger.d.ts.map +1 -1
  195. package/dist/dts/Match.d.ts +11 -11
  196. package/dist/dts/Match.d.ts.map +1 -1
  197. package/dist/dts/MergeDecision.d.ts +2 -2
  198. package/dist/dts/MergeDecision.d.ts.map +1 -1
  199. package/dist/dts/MergeState.d.ts +5 -5
  200. package/dist/dts/MergeState.d.ts.map +1 -1
  201. package/dist/dts/Metric.d.ts +5 -5
  202. package/dist/dts/Metric.d.ts.map +1 -1
  203. package/dist/dts/MetricHook.d.ts +4 -4
  204. package/dist/dts/MetricHook.d.ts.map +1 -1
  205. package/dist/dts/MetricKey.d.ts +2 -2
  206. package/dist/dts/MetricKey.d.ts.map +1 -1
  207. package/dist/dts/MetricKeyType.d.ts +2 -2
  208. package/dist/dts/MetricKeyType.d.ts.map +1 -1
  209. package/dist/dts/MetricPair.d.ts +2 -2
  210. package/dist/dts/MetricPair.d.ts.map +1 -1
  211. package/dist/dts/MetricPolling.d.ts +16 -16
  212. package/dist/dts/MetricPolling.d.ts.map +1 -1
  213. package/dist/dts/MetricRegistry.d.ts +7 -7
  214. package/dist/dts/MetricRegistry.d.ts.map +1 -1
  215. package/dist/dts/MetricState.d.ts +4 -4
  216. package/dist/dts/MetricState.d.ts.map +1 -1
  217. package/dist/dts/MutableHashMap.d.ts +1 -1
  218. package/dist/dts/MutableHashMap.d.ts.map +1 -1
  219. package/dist/dts/MutableHashSet.d.ts +1 -1
  220. package/dist/dts/MutableHashSet.d.ts.map +1 -1
  221. package/dist/dts/MutableList.d.ts +1 -1
  222. package/dist/dts/MutableList.d.ts.map +1 -1
  223. package/dist/dts/MutableQueue.d.ts +1 -1
  224. package/dist/dts/MutableQueue.d.ts.map +1 -1
  225. package/dist/dts/MutableRef.d.ts +1 -1
  226. package/dist/dts/MutableRef.d.ts.map +1 -1
  227. package/dist/dts/NonEmptyIterable.d.ts +2 -2
  228. package/dist/dts/NonEmptyIterable.d.ts.map +1 -1
  229. package/dist/dts/Option.d.ts +13 -11
  230. package/dist/dts/Option.d.ts.map +1 -1
  231. package/dist/dts/Order.d.ts +1 -1
  232. package/dist/dts/Order.d.ts.map +1 -1
  233. package/dist/dts/Pipeable.d.ts +21 -23
  234. package/dist/dts/Pipeable.d.ts.map +1 -1
  235. package/dist/dts/Pool.d.ts +4 -4
  236. package/dist/dts/Pool.d.ts.map +1 -1
  237. package/dist/dts/Predicate.d.ts +17 -2
  238. package/dist/dts/Predicate.d.ts.map +1 -1
  239. package/dist/dts/PrimaryKey.d.ts +16 -0
  240. package/dist/dts/PrimaryKey.d.ts.map +1 -0
  241. package/dist/dts/PubSub.d.ts +3 -3
  242. package/dist/dts/PubSub.d.ts.map +1 -1
  243. package/dist/dts/Queue.d.ts +46 -27
  244. package/dist/dts/Queue.d.ts.map +1 -1
  245. package/dist/dts/Random.d.ts +3 -3
  246. package/dist/dts/Random.d.ts.map +1 -1
  247. package/dist/dts/ReadonlyArray.d.ts +36 -36
  248. package/dist/dts/ReadonlyArray.d.ts.map +1 -1
  249. package/dist/dts/ReadonlyRecord.d.ts +13 -11
  250. package/dist/dts/ReadonlyRecord.d.ts.map +1 -1
  251. package/dist/dts/RedBlackTree.d.ts +5 -2
  252. package/dist/dts/RedBlackTree.d.ts.map +1 -1
  253. package/dist/dts/Ref.d.ts +3 -3
  254. package/dist/dts/Ref.d.ts.map +1 -1
  255. package/dist/dts/Reloadable.d.ts +3 -3
  256. package/dist/dts/Reloadable.d.ts.map +1 -1
  257. package/dist/dts/Request.d.ts +49 -8
  258. package/dist/dts/Request.d.ts.map +1 -1
  259. package/dist/dts/RequestBlock.d.ts +8 -8
  260. package/dist/dts/RequestBlock.d.ts.map +1 -1
  261. package/dist/dts/RequestResolver.d.ts +5 -5
  262. package/dist/dts/RequestResolver.d.ts.map +1 -1
  263. package/dist/dts/Resource.d.ts +4 -4
  264. package/dist/dts/Resource.d.ts.map +1 -1
  265. package/dist/dts/Runtime.d.ts +3 -3
  266. package/dist/dts/Runtime.d.ts.map +1 -1
  267. package/dist/dts/STM.d.ts +9 -9
  268. package/dist/dts/STM.d.ts.map +1 -1
  269. package/dist/dts/Schedule.d.ts +6 -6
  270. package/dist/dts/Schedule.d.ts.map +1 -1
  271. package/dist/dts/Scheduler.d.ts +3 -3
  272. package/dist/dts/Scheduler.d.ts.map +1 -1
  273. package/dist/dts/ScopedCache.d.ts +9 -9
  274. package/dist/dts/ScopedCache.d.ts.map +1 -1
  275. package/dist/dts/ScopedRef.d.ts +3 -3
  276. package/dist/dts/ScopedRef.d.ts.map +1 -1
  277. package/dist/dts/SingleProducerAsyncInput.d.ts +7 -7
  278. package/dist/dts/SingleProducerAsyncInput.d.ts.map +1 -1
  279. package/dist/dts/Sink.d.ts +7 -4
  280. package/dist/dts/Sink.d.ts.map +1 -1
  281. package/dist/dts/SortedMap.d.ts +5 -2
  282. package/dist/dts/SortedMap.d.ts.map +1 -1
  283. package/dist/dts/SortedSet.d.ts +6 -12
  284. package/dist/dts/SortedSet.d.ts.map +1 -1
  285. package/dist/dts/Stream.d.ts +27 -19
  286. package/dist/dts/Stream.d.ts.map +1 -1
  287. package/dist/dts/StreamEmit.d.ts +12 -12
  288. package/dist/dts/StreamEmit.d.ts.map +1 -1
  289. package/dist/dts/SubscriptionRef.d.ts +3 -3
  290. package/dist/dts/SubscriptionRef.d.ts.map +1 -1
  291. package/dist/dts/Supervisor.d.ts +9 -9
  292. package/dist/dts/Supervisor.d.ts.map +1 -1
  293. package/dist/dts/SynchronizedRef.d.ts +4 -4
  294. package/dist/dts/SynchronizedRef.d.ts.map +1 -1
  295. package/dist/dts/TArray.d.ts +3 -3
  296. package/dist/dts/TArray.d.ts.map +1 -1
  297. package/dist/dts/TDeferred.d.ts +4 -4
  298. package/dist/dts/TDeferred.d.ts.map +1 -1
  299. package/dist/dts/TMap.d.ts +4 -4
  300. package/dist/dts/TMap.d.ts.map +1 -1
  301. package/dist/dts/TPriorityQueue.d.ts +3 -3
  302. package/dist/dts/TPriorityQueue.d.ts.map +1 -1
  303. package/dist/dts/TPubSub.d.ts +4 -1
  304. package/dist/dts/TPubSub.d.ts.map +1 -1
  305. package/dist/dts/TQueue.d.ts +9 -9
  306. package/dist/dts/TQueue.d.ts.map +1 -1
  307. package/dist/dts/TRandom.d.ts +3 -3
  308. package/dist/dts/TRandom.d.ts.map +1 -1
  309. package/dist/dts/TRef.d.ts +3 -3
  310. package/dist/dts/TRef.d.ts.map +1 -1
  311. package/dist/dts/TSet.d.ts +3 -3
  312. package/dist/dts/TSet.d.ts.map +1 -1
  313. package/dist/dts/Take.d.ts +2 -2
  314. package/dist/dts/Take.d.ts.map +1 -1
  315. package/dist/dts/TestAnnotation.d.ts +5 -3
  316. package/dist/dts/TestAnnotation.d.ts.map +1 -1
  317. package/dist/dts/TestAnnotations.d.ts +2 -2
  318. package/dist/dts/TestAnnotations.d.ts.map +1 -1
  319. package/dist/dts/TestClock.d.ts +3 -3
  320. package/dist/dts/TestClock.d.ts.map +1 -1
  321. package/dist/dts/TestLive.d.ts +1 -1
  322. package/dist/dts/TestLive.d.ts.map +1 -1
  323. package/dist/dts/TestSized.d.ts +1 -1
  324. package/dist/dts/TestSized.d.ts.map +1 -1
  325. package/dist/dts/Tracer.d.ts +5 -5
  326. package/dist/dts/Tracer.d.ts.map +1 -1
  327. package/dist/dts/Types.d.ts +7 -0
  328. package/dist/dts/Types.d.ts.map +1 -1
  329. package/dist/dts/UpstreamPullRequest.d.ts +2 -2
  330. package/dist/dts/UpstreamPullRequest.d.ts.map +1 -1
  331. package/dist/dts/UpstreamPullStrategy.d.ts +3 -3
  332. package/dist/dts/UpstreamPullStrategy.d.ts.map +1 -1
  333. package/dist/dts/Utils.d.ts +1 -1
  334. package/dist/dts/Utils.d.ts.map +1 -1
  335. package/dist/dts/index.d.ts +4 -0
  336. package/dist/dts/index.d.ts.map +1 -1
  337. package/dist/dts/internal/core-stream.d.ts.map +1 -1
  338. package/dist/dts/internal/fiberScope.d.ts +1 -1
  339. package/dist/dts/internal/fiberScope.d.ts.map +1 -1
  340. package/dist/dts/internal/stream/handoffSignal.d.ts +1 -1
  341. package/dist/dts/internal/stream/handoffSignal.d.ts.map +1 -1
  342. package/dist/dts/internal/version.d.ts +1 -1
  343. package/dist/esm/Cache.js.map +1 -1
  344. package/dist/esm/Cause.js +52 -17
  345. package/dist/esm/Cause.js.map +1 -1
  346. package/dist/esm/ChildExecutorDecision.js.map +1 -1
  347. package/dist/esm/Chunk.js +5 -5
  348. package/dist/esm/Chunk.js.map +1 -1
  349. package/dist/esm/Data.js +10 -19
  350. package/dist/esm/Data.js.map +1 -1
  351. package/dist/esm/Duration.js +4 -0
  352. package/dist/esm/Duration.js.map +1 -1
  353. package/dist/esm/Effect.js +7 -0
  354. package/dist/esm/Effect.js.map +1 -1
  355. package/dist/esm/Either.js +8 -1
  356. package/dist/esm/Either.js.map +1 -1
  357. package/dist/esm/Exit.js.map +1 -1
  358. package/dist/esm/Fiber.js.map +1 -1
  359. package/dist/esm/HashMap.js.map +1 -1
  360. package/dist/esm/KeyedPool.js.map +1 -1
  361. package/dist/esm/List.js.map +1 -1
  362. package/dist/esm/MergeState.js.map +1 -1
  363. package/dist/esm/MetricPolling.js +1 -1
  364. package/dist/esm/MetricPolling.js.map +1 -1
  365. package/dist/esm/MetricState.js.map +1 -1
  366. package/dist/esm/NonEmptyIterable.js.map +1 -1
  367. package/dist/esm/Option.js +2 -2
  368. package/dist/esm/Option.js.map +1 -1
  369. package/dist/esm/Pipeable.js.map +1 -1
  370. package/dist/esm/Predicate.js +15 -0
  371. package/dist/esm/Predicate.js.map +1 -1
  372. package/dist/esm/PrimaryKey.js +9 -0
  373. package/dist/esm/PrimaryKey.js.map +1 -0
  374. package/dist/esm/Queue.js +5 -0
  375. package/dist/esm/Queue.js.map +1 -1
  376. package/dist/esm/ReadonlyArray.js +2 -0
  377. package/dist/esm/ReadonlyArray.js.map +1 -1
  378. package/dist/esm/ReadonlyRecord.js +2 -2
  379. package/dist/esm/ReadonlyRecord.js.map +1 -1
  380. package/dist/esm/RedBlackTree.js.map +1 -1
  381. package/dist/esm/Request.js +34 -0
  382. package/dist/esm/Request.js.map +1 -1
  383. package/dist/esm/STM.js +1 -1
  384. package/dist/esm/STM.js.map +1 -1
  385. package/dist/esm/Sink.js.map +1 -1
  386. package/dist/esm/SortedMap.js +4 -1
  387. package/dist/esm/SortedMap.js.map +1 -1
  388. package/dist/esm/SortedSet.js +2 -2
  389. package/dist/esm/SortedSet.js.map +1 -1
  390. package/dist/esm/Stream.js.map +1 -1
  391. package/dist/esm/SubscriptionRef.js.map +1 -1
  392. package/dist/esm/TPubSub.js.map +1 -1
  393. package/dist/esm/TestAnnotation.js +3 -1
  394. package/dist/esm/TestAnnotation.js.map +1 -1
  395. package/dist/esm/TestClock.js.map +1 -1
  396. package/dist/esm/UpstreamPullRequest.js.map +1 -1
  397. package/dist/esm/index.js +4 -0
  398. package/dist/esm/index.js.map +1 -1
  399. package/dist/esm/internal/cache.js.map +1 -1
  400. package/dist/esm/internal/cause.js +3 -96
  401. package/dist/esm/internal/cause.js.map +1 -1
  402. package/dist/esm/internal/channel/continuation.js.map +1 -1
  403. package/dist/esm/internal/configProvider.js +13 -1
  404. package/dist/esm/internal/configProvider.js.map +1 -1
  405. package/dist/esm/internal/core-effect.js +7 -7
  406. package/dist/esm/internal/core-effect.js.map +1 -1
  407. package/dist/esm/internal/core-stream.js.map +1 -1
  408. package/dist/esm/internal/core.js +151 -10
  409. package/dist/esm/internal/core.js.map +1 -1
  410. package/dist/esm/internal/data.js +3 -21
  411. package/dist/esm/internal/data.js.map +1 -1
  412. package/dist/esm/internal/dataSource.js +1 -1
  413. package/dist/esm/internal/dataSource.js.map +1 -1
  414. package/dist/esm/internal/deferred.js.map +1 -1
  415. package/dist/esm/internal/differ/orPatch.js.map +1 -1
  416. package/dist/esm/internal/effect/circular.js.map +1 -1
  417. package/dist/esm/internal/effectable.js +20 -2
  418. package/dist/esm/internal/effectable.js.map +1 -1
  419. package/dist/esm/internal/fiberMessage.js.map +1 -1
  420. package/dist/esm/internal/fiberRuntime.js +9 -10
  421. package/dist/esm/internal/fiberRuntime.js.map +1 -1
  422. package/dist/esm/internal/hashMap.js +1 -1
  423. package/dist/esm/internal/hashMap.js.map +1 -1
  424. package/dist/esm/internal/hashSet.js +2 -2
  425. package/dist/esm/internal/hashSet.js.map +1 -1
  426. package/dist/esm/internal/keyedPool.js.map +1 -1
  427. package/dist/esm/internal/layer.js.map +1 -1
  428. package/dist/esm/internal/metric/polling.js +6 -6
  429. package/dist/esm/internal/metric/polling.js.map +1 -1
  430. package/dist/esm/internal/metric.js +4 -0
  431. package/dist/esm/internal/metric.js.map +1 -1
  432. package/dist/esm/internal/pool.js.map +1 -1
  433. package/dist/esm/internal/pubsub.js +24 -23
  434. package/dist/esm/internal/pubsub.js.map +1 -1
  435. package/dist/esm/internal/queue.js +9 -0
  436. package/dist/esm/internal/queue.js.map +1 -1
  437. package/dist/esm/internal/redBlackTree.js +5 -1
  438. package/dist/esm/internal/redBlackTree.js.map +1 -1
  439. package/dist/esm/internal/reloadable.js.map +1 -1
  440. package/dist/esm/internal/request.js +27 -14
  441. package/dist/esm/internal/request.js.map +1 -1
  442. package/dist/esm/internal/resource.js +2 -2
  443. package/dist/esm/internal/resource.js.map +1 -1
  444. package/dist/esm/internal/runtime.js +1 -2
  445. package/dist/esm/internal/runtime.js.map +1 -1
  446. package/dist/esm/internal/schedule.js +6 -7
  447. package/dist/esm/internal/schedule.js.map +1 -1
  448. package/dist/esm/internal/scopedCache.js.map +1 -1
  449. package/dist/esm/internal/scopedRef.js.map +1 -1
  450. package/dist/esm/internal/sink.js +1 -1
  451. package/dist/esm/internal/sink.js.map +1 -1
  452. package/dist/esm/internal/stm/core.js +2 -2
  453. package/dist/esm/internal/stm/core.js.map +1 -1
  454. package/dist/esm/internal/stm/tArray.js.map +1 -1
  455. package/dist/esm/internal/stm/tDeferred.js.map +1 -1
  456. package/dist/esm/internal/stm/tMap.js.map +1 -1
  457. package/dist/esm/internal/stm/tPriorityQueue.js.map +1 -1
  458. package/dist/esm/internal/stm/tPubSub.js +17 -14
  459. package/dist/esm/internal/stm/tPubSub.js.map +1 -1
  460. package/dist/esm/internal/stm/tQueue.js +6 -7
  461. package/dist/esm/internal/stm/tQueue.js.map +1 -1
  462. package/dist/esm/internal/stm/tSemaphore.js +2 -2
  463. package/dist/esm/internal/stm/tSemaphore.js.map +1 -1
  464. package/dist/esm/internal/stm/tSet.js.map +1 -1
  465. package/dist/esm/internal/stream.js +4 -4
  466. package/dist/esm/internal/stream.js.map +1 -1
  467. package/dist/esm/internal/subscriptionRef.js.map +1 -1
  468. package/dist/esm/internal/take.js +1 -1
  469. package/dist/esm/internal/take.js.map +1 -1
  470. package/dist/esm/internal/version.js +1 -1
  471. package/dist/esm/package.json +1 -1
  472. package/package.json +10 -2
  473. package/src/Brand.ts +4 -4
  474. package/src/Cache.ts +15 -17
  475. package/src/Cause.ts +124 -40
  476. package/src/Channel.ts +4 -4
  477. package/src/ChildExecutorDecision.ts +10 -2
  478. package/src/Chunk.ts +44 -36
  479. package/src/Clock.ts +4 -4
  480. package/src/Config.ts +4 -4
  481. package/src/ConfigError.ts +8 -8
  482. package/src/ConfigProvider.ts +5 -5
  483. package/src/ConfigProviderPathPatch.ts +1 -1
  484. package/src/Console.ts +36 -36
  485. package/src/Context.ts +4 -4
  486. package/src/Data.ts +13 -44
  487. package/src/Deferred.ts +4 -4
  488. package/src/Differ.ts +9 -9
  489. package/src/Duration.ts +5 -0
  490. package/src/Effect.ts +88 -26
  491. package/src/Either.ts +28 -5
  492. package/src/Equal.ts +1 -1
  493. package/src/Equivalence.ts +1 -1
  494. package/src/Exit.ts +21 -7
  495. package/src/Fiber.ts +20 -14
  496. package/src/FiberRef.ts +7 -7
  497. package/src/GroupBy.ts +2 -2
  498. package/src/Hash.ts +1 -1
  499. package/src/HashMap.ts +6 -4
  500. package/src/HashSet.ts +11 -11
  501. package/src/Inspectable.ts +3 -3
  502. package/src/KeyedPool.ts +13 -7
  503. package/src/Layer.ts +2 -2
  504. package/src/List.ts +24 -22
  505. package/src/Logger.ts +4 -4
  506. package/src/Match.ts +11 -11
  507. package/src/MergeDecision.ts +2 -2
  508. package/src/MergeState.ts +11 -5
  509. package/src/Metric.ts +5 -5
  510. package/src/MetricHook.ts +4 -4
  511. package/src/MetricKey.ts +2 -2
  512. package/src/MetricKeyType.ts +2 -2
  513. package/src/MetricPair.ts +2 -2
  514. package/src/MetricPolling.ts +22 -22
  515. package/src/MetricRegistry.ts +9 -9
  516. package/src/MetricState.ts +6 -4
  517. package/src/MutableHashMap.ts +1 -1
  518. package/src/MutableHashSet.ts +1 -1
  519. package/src/MutableList.ts +1 -1
  520. package/src/MutableQueue.ts +1 -1
  521. package/src/MutableRef.ts +1 -1
  522. package/src/NonEmptyIterable.ts +2 -2
  523. package/src/Option.ts +18 -15
  524. package/src/Order.ts +1 -1
  525. package/src/Pipeable.ts +275 -277
  526. package/src/Pool.ts +4 -4
  527. package/src/Predicate.ts +21 -2
  528. package/src/PrimaryKey.ts +17 -0
  529. package/src/PubSub.ts +3 -3
  530. package/src/Queue.ts +52 -30
  531. package/src/Random.ts +3 -3
  532. package/src/ReadonlyArray.ts +51 -66
  533. package/src/ReadonlyRecord.ts +37 -35
  534. package/src/RedBlackTree.ts +5 -2
  535. package/src/Ref.ts +3 -3
  536. package/src/Reloadable.ts +3 -3
  537. package/src/Request.ts +53 -8
  538. package/src/RequestBlock.ts +9 -9
  539. package/src/RequestResolver.ts +5 -5
  540. package/src/Resource.ts +4 -4
  541. package/src/Runtime.ts +3 -3
  542. package/src/STM.ts +23 -12
  543. package/src/Schedule.ts +7 -7
  544. package/src/Scheduler.ts +3 -3
  545. package/src/Scope.ts +3 -3
  546. package/src/ScopedCache.ts +9 -9
  547. package/src/ScopedRef.ts +3 -3
  548. package/src/SingleProducerAsyncInput.ts +7 -7
  549. package/src/Sink.ts +23 -9
  550. package/src/SortedMap.ts +9 -3
  551. package/src/SortedSet.ts +26 -41
  552. package/src/Stream.ts +70 -29
  553. package/src/StreamEmit.ts +12 -12
  554. package/src/SubscriptionRef.ts +5 -3
  555. package/src/Supervisor.ts +10 -10
  556. package/src/SynchronizedRef.ts +4 -4
  557. package/src/TArray.ts +4 -4
  558. package/src/TDeferred.ts +5 -5
  559. package/src/TMap.ts +5 -5
  560. package/src/TPriorityQueue.ts +4 -4
  561. package/src/TPubSub.ts +6 -3
  562. package/src/TQueue.ts +9 -9
  563. package/src/TRandom.ts +3 -3
  564. package/src/TRef.ts +4 -4
  565. package/src/TSet.ts +4 -4
  566. package/src/Take.ts +2 -2
  567. package/src/TestAnnotation.ts +8 -4
  568. package/src/TestAnnotations.ts +2 -2
  569. package/src/TestClock.ts +3 -5
  570. package/src/TestLive.ts +1 -1
  571. package/src/TestSized.ts +1 -1
  572. package/src/Tracer.ts +6 -6
  573. package/src/Types.ts +8 -0
  574. package/src/UpstreamPullRequest.ts +10 -4
  575. package/src/UpstreamPullStrategy.ts +3 -3
  576. package/src/Utils.ts +1 -1
  577. package/src/index.ts +5 -0
  578. package/src/internal/blockedRequests.ts +6 -6
  579. package/src/internal/cache.ts +12 -12
  580. package/src/internal/cause.ts +14 -138
  581. package/src/internal/channel/channelExecutor.ts +1 -1
  582. package/src/internal/channel/channelState.ts +5 -5
  583. package/src/internal/channel/continuation.ts +52 -32
  584. package/src/internal/channel/mergeDecision.ts +1 -1
  585. package/src/internal/channel/singleProducerAsyncInput.ts +1 -1
  586. package/src/internal/channel/subexecutor.ts +7 -7
  587. package/src/internal/config.ts +6 -6
  588. package/src/internal/configProvider.ts +14 -1
  589. package/src/internal/core-effect.ts +49 -38
  590. package/src/internal/core-stream.ts +18 -21
  591. package/src/internal/core.ts +286 -38
  592. package/src/internal/data.ts +3 -22
  593. package/src/internal/dataSource.ts +1 -1
  594. package/src/internal/deferred.ts +5 -5
  595. package/src/internal/differ/contextPatch.ts +5 -5
  596. package/src/internal/differ/orPatch.ts +18 -6
  597. package/src/internal/effect/circular.ts +3 -3
  598. package/src/internal/effectable.ts +23 -4
  599. package/src/internal/fiberMessage.ts +1 -4
  600. package/src/internal/fiberRuntime.ts +14 -15
  601. package/src/internal/fiberScope.ts +1 -1
  602. package/src/internal/groupBy.ts +1 -1
  603. package/src/internal/hashMap/node.ts +5 -5
  604. package/src/internal/hashMap.ts +23 -22
  605. package/src/internal/hashSet.ts +18 -20
  606. package/src/internal/keyedPool.ts +4 -4
  607. package/src/internal/layer.ts +6 -12
  608. package/src/internal/metric/key.ts +1 -1
  609. package/src/internal/metric/polling.ts +26 -26
  610. package/src/internal/metric.ts +4 -0
  611. package/src/internal/pool.ts +2 -2
  612. package/src/internal/pubsub.ts +64 -61
  613. package/src/internal/queue.ts +20 -6
  614. package/src/internal/redBlackTree/iterator.ts +1 -1
  615. package/src/internal/redBlackTree/node.ts +1 -1
  616. package/src/internal/redBlackTree.ts +7 -2
  617. package/src/internal/ref.ts +1 -1
  618. package/src/internal/reloadable.ts +1 -1
  619. package/src/internal/request.ts +39 -13
  620. package/src/internal/resource.ts +4 -4
  621. package/src/internal/ringBuffer.ts +1 -1
  622. package/src/internal/runtime.ts +2 -3
  623. package/src/internal/schedule.ts +6 -7
  624. package/src/internal/scopedCache.ts +7 -5
  625. package/src/internal/scopedRef.ts +1 -1
  626. package/src/internal/sink.ts +6 -3
  627. package/src/internal/stack.ts +1 -1
  628. package/src/internal/stm/core.ts +3 -3
  629. package/src/internal/stm/stm/stmState.ts +1 -1
  630. package/src/internal/stm/stm/tExit.ts +3 -3
  631. package/src/internal/stm/stm/tryCommit.ts +1 -1
  632. package/src/internal/stm/stm/versioned.ts +1 -1
  633. package/src/internal/stm/stm.ts +2 -2
  634. package/src/internal/stm/tArray.ts +2 -2
  635. package/src/internal/stm/tDeferred.ts +3 -3
  636. package/src/internal/stm/tMap.ts +3 -3
  637. package/src/internal/stm/tPriorityQueue.ts +2 -2
  638. package/src/internal/stm/tPubSub.ts +43 -38
  639. package/src/internal/stm/tQueue.ts +7 -8
  640. package/src/internal/stm/tReentrantLock.ts +2 -2
  641. package/src/internal/stm/tRef.ts +1 -1
  642. package/src/internal/stm/tSemaphore.ts +2 -2
  643. package/src/internal/stm/tSet.ts +2 -2
  644. package/src/internal/stream/debounceState.ts +2 -2
  645. package/src/internal/stream/handoff.ts +3 -3
  646. package/src/internal/stream/handoffSignal.ts +2 -2
  647. package/src/internal/stream/pull.ts +1 -1
  648. package/src/internal/stream.ts +66 -33
  649. package/src/internal/subscriptionRef.ts +2 -2
  650. package/src/internal/supervisor.ts +3 -3
  651. package/src/internal/take.ts +2 -2
  652. package/src/internal/version.ts +1 -1
@@ -4,11 +4,11 @@ import * as MutableQueue from "../MutableQueue.js";
4
4
  import * as MutableRef from "../MutableRef.js";
5
5
  import * as Option from "../Option.js";
6
6
  import { pipeArguments } from "../Pipeable.js";
7
- import * as cause from "./cause.js";
8
7
  import * as core from "./core.js";
9
8
  import * as executionStrategy from "./executionStrategy.js";
10
9
  import * as fiberRuntime from "./fiberRuntime.js";
11
10
  import * as queue from "./queue.js";
11
+ const AbsentValue = /*#__PURE__*/Symbol.for("effect/PubSub/AbsentValue");
12
12
  const addSubscribers = (subscription, pollers) => subscribers => {
13
13
  if (!subscribers.has(subscription)) {
14
14
  subscribers.set(subscription, new Set());
@@ -136,7 +136,7 @@ class BoundedPubSubArb {
136
136
  slide() {
137
137
  if (this.subscribersIndex !== this.publisherIndex) {
138
138
  const index = this.subscribersIndex % this.capacity;
139
- this.array[index] = null;
139
+ this.array[index] = AbsentValue;
140
140
  this.subscribers[index] = 0;
141
141
  this.subscribersIndex += 1;
142
142
  }
@@ -174,7 +174,7 @@ class BoundedPubSubArbSubscription {
174
174
  const elem = this.self.array[index];
175
175
  this.self.subscribers[index] -= 1;
176
176
  if (this.self.subscribers[index] === 0) {
177
- this.self.array[index] = null;
177
+ this.self.array[index] = AbsentValue;
178
178
  this.self.subscribersIndex += 1;
179
179
  }
180
180
  this.subscriberIndex += 1;
@@ -199,7 +199,7 @@ class BoundedPubSubArbSubscription {
199
199
  const a = this.self.array[index];
200
200
  this.self.subscribers[index] -= 1;
201
201
  if (this.self.subscribers[index] === 0) {
202
- this.self.array[index] = null;
202
+ this.self.array[index] = AbsentValue;
203
203
  this.self.subscribersIndex += 1;
204
204
  }
205
205
  builder.push(a);
@@ -216,7 +216,7 @@ class BoundedPubSubArbSubscription {
216
216
  const index = this.subscriberIndex % this.self.capacity;
217
217
  this.self.subscribers[index] -= 1;
218
218
  if (this.self.subscribers[index] === 0) {
219
- this.self.array[index] = null;
219
+ this.self.array[index] = AbsentValue;
220
220
  this.self.subscribersIndex += 1;
221
221
  }
222
222
  this.subscriberIndex += 1;
@@ -287,7 +287,7 @@ class BoundedPubSubPow2 {
287
287
  slide() {
288
288
  if (this.subscribersIndex !== this.publisherIndex) {
289
289
  const index = this.subscribersIndex & this.mask;
290
- this.array[index] = null;
290
+ this.array[index] = AbsentValue;
291
291
  this.subscribers[index] = 0;
292
292
  this.subscribersIndex += 1;
293
293
  }
@@ -326,7 +326,7 @@ class BoundedPubSubPow2Subscription {
326
326
  const elem = this.self.array[index];
327
327
  this.self.subscribers[index] -= 1;
328
328
  if (this.self.subscribers[index] === 0) {
329
- this.self.array[index] = null;
329
+ this.self.array[index] = AbsentValue;
330
330
  this.self.subscribersIndex += 1;
331
331
  }
332
332
  this.subscriberIndex += 1;
@@ -351,7 +351,7 @@ class BoundedPubSubPow2Subscription {
351
351
  const elem = this.self.array[index];
352
352
  this.self.subscribers[index] -= 1;
353
353
  if (this.self.subscribers[index] === 0) {
354
- this.self.array[index] = null;
354
+ this.self.array[index] = AbsentValue;
355
355
  this.self.subscribersIndex += 1;
356
356
  }
357
357
  builder.push(elem);
@@ -368,7 +368,7 @@ class BoundedPubSubPow2Subscription {
368
368
  const index = this.subscriberIndex & this.self.mask;
369
369
  this.self.subscribers[index] -= 1;
370
370
  if (this.self.subscribers[index] === 0) {
371
- this.self.array[index] = null;
371
+ this.self.array[index] = AbsentValue;
372
372
  this.self.subscribersIndex += 1;
373
373
  }
374
374
  this.subscriberIndex += 1;
@@ -381,7 +381,7 @@ class BoundedPubSubSingle {
381
381
  publisherIndex = 0;
382
382
  subscriberCount = 0;
383
383
  subscribers = 0;
384
- value = null;
384
+ value = AbsentValue;
385
385
  capacity = 1;
386
386
  pipe() {
387
387
  return pipeArguments(this, arguments);
@@ -420,7 +420,7 @@ class BoundedPubSubSingle {
420
420
  slide() {
421
421
  if (this.isFull()) {
422
422
  this.subscribers = 0;
423
- this.value = null;
423
+ this.value = AbsentValue;
424
424
  }
425
425
  }
426
426
  subscribe() {
@@ -451,7 +451,7 @@ class BoundedPubSubSingleSubscription {
451
451
  const elem = this.self.value;
452
452
  this.self.subscribers -= 1;
453
453
  if (this.self.subscribers === 0) {
454
- this.self.value = null;
454
+ this.self.value = AbsentValue;
455
455
  }
456
456
  this.subscriberIndex += 1;
457
457
  return elem;
@@ -463,7 +463,7 @@ class BoundedPubSubSingleSubscription {
463
463
  const a = this.self.value;
464
464
  this.self.subscribers -= 1;
465
465
  if (this.self.subscribers === 0) {
466
- this.self.value = null;
466
+ this.self.value = AbsentValue;
467
467
  }
468
468
  this.subscriberIndex += 1;
469
469
  return Chunk.of(a);
@@ -475,7 +475,7 @@ class BoundedPubSubSingleSubscription {
475
475
  if (this.subscriberIndex !== this.self.publisherIndex) {
476
476
  this.self.subscribers -= 1;
477
477
  if (this.self.subscribers === 0) {
478
- this.self.value = null;
478
+ this.self.value = AbsentValue;
479
479
  }
480
480
  }
481
481
  }
@@ -494,7 +494,7 @@ class Node {
494
494
  }
495
495
  /** @internal */
496
496
  class UnboundedPubSub {
497
- publisherHead = new Node(null, 0, null);
497
+ publisherHead = new Node(AbsentValue, 0, null);
498
498
  publisherIndex = 0;
499
499
  publisherTail;
500
500
  subscribersIndex = 0;
@@ -529,7 +529,7 @@ class UnboundedPubSub {
529
529
  slide() {
530
530
  if (this.publisherHead !== this.publisherTail) {
531
531
  this.publisherHead = this.publisherHead.next;
532
- this.publisherHead.value = null;
532
+ this.publisherHead.value = AbsentValue;
533
533
  this.subscribersIndex += 1;
534
534
  }
535
535
  }
@@ -560,7 +560,7 @@ class UnboundedPubSubSubscription {
560
560
  if (this.subscriberHead === this.self.publisherTail) {
561
561
  loop = false;
562
562
  } else {
563
- if (this.subscriberHead.next.value !== null) {
563
+ if (this.subscriberHead.next.value !== AbsentValue) {
564
564
  empty = false;
565
565
  loop = false;
566
566
  } else {
@@ -588,12 +588,12 @@ class UnboundedPubSubSubscription {
588
588
  loop = false;
589
589
  } else {
590
590
  const elem = this.subscriberHead.next.value;
591
- if (elem !== null) {
591
+ if (elem !== AbsentValue) {
592
592
  polled = elem;
593
593
  this.subscriberHead.subscribers -= 1;
594
594
  if (this.subscriberHead.subscribers === 0) {
595
595
  this.self.publisherHead = this.self.publisherHead.next;
596
- this.self.publisherHead.value = null;
596
+ this.self.publisherHead.value = AbsentValue;
597
597
  this.self.subscribersIndex += 1;
598
598
  }
599
599
  loop = false;
@@ -606,7 +606,7 @@ class UnboundedPubSubSubscription {
606
606
  }
607
607
  pollUpTo(n) {
608
608
  const builder = [];
609
- const default_ = null;
609
+ const default_ = AbsentValue;
610
610
  let i = 0;
611
611
  while (i !== n) {
612
612
  const a = this.poll(default_);
@@ -624,11 +624,11 @@ class UnboundedPubSubSubscription {
624
624
  this.unsubscribed = true;
625
625
  this.self.publisherTail.subscribers -= 1;
626
626
  while (this.subscriberHead !== this.self.publisherTail) {
627
- if (this.subscriberHead.next.value !== null) {
627
+ if (this.subscriberHead.next.value !== AbsentValue) {
628
628
  this.subscriberHead.subscribers -= 1;
629
629
  if (this.subscriberHead.subscribers === 0) {
630
630
  this.self.publisherHead = this.self.publisherHead.next;
631
- this.self.publisherHead.value = null;
631
+ this.self.publisherHead.value = AbsentValue;
632
632
  this.self.subscribersIndex += 1;
633
633
  }
634
634
  }
@@ -765,6 +765,7 @@ class PubSubImpl {
765
765
  shutdownFlag;
766
766
  strategy;
767
767
  [queue.EnqueueTypeId] = queue.enqueueVariance;
768
+ [queue.DequeueTypeId] = queue.dequeueVariance;
768
769
  constructor(pubsub, subscribers, scope, shutdownHook, shutdownFlag, strategy) {
769
770
  this.pubsub = pubsub;
770
771
  this.subscribers = subscribers;
@@ -869,7 +870,7 @@ const nextPow2 = n => {
869
870
  /** @internal */
870
871
  const ensureCapacity = capacity => {
871
872
  if (capacity <= 0) {
872
- throw cause.InvalidPubSubCapacityException(`Cannot construct PubSub with capacity of ${capacity}`);
873
+ throw new core.InvalidPubSubCapacityException(`Cannot construct PubSub with capacity of ${capacity}`);
873
874
  }
874
875
  };
875
876
  /** @internal */
@@ -1 +1 @@
1
- {"version":3,"file":"pubsub.js","names":["Chunk","dual","pipe","MutableQueue","MutableRef","Option","pipeArguments","cause","core","executionStrategy","fiberRuntime","queue","addSubscribers","subscription","pollers","subscribers","has","set","Set","get","add","removeSubscribers","delete","size","bounded","requestedCapacity","sync","makeBoundedPubSub","flatMap","atomicPubSub","makePubSub","BackPressureStrategy","dropping","DroppingStrategy","sliding","SlidingStrategy","unbounded","makeUnboundedPubSub","capacity","self","isFull","isEmpty","shutdown","isShutdown","awaitShutdown","publish","value","publishAll","elements","subscribe","ensureCapacity","BoundedPubSubSingle","nextPow2","BoundedPubSubPow2","BoundedPubSubArb","UnboundedPubSub","makeSubscription","pubsub","strategy","map","deferredMake","deferred","unsafeMakeSubscription","make","shutdownHook","shutdownFlag","SubscriptionImpl","array","publisherIndex","subscriberCount","subscribersIndex","constructor","Array","from","length","index","chunk","fromIterable","n","available","forPubSub","Math","min","iteratorIndex","publishAllIndex","a","unsafeGet","drop","slide","BoundedPubSubArbSubscription","subscriberIndex","unsubscribed","max","poll","default_","elem","pollUpTo","empty","toPoll","builder","pollUpToIndex","push","unsubscribe","mask","BoundedPubSubPow2Subscription","arguments","unsafeHead","BoundedPubSubSingleSubscription","of","Node","next","publisherHead","publisherTail","Number","MAX_SAFE_INTEGER","UnboundedPubSubSubscription","subscriberHead","loop","polled","i","DequeueTypeId","dequeueVariance","isActive","suspend","interrupt","succeed","unsafeSize","none","some","uninterruptible","withFiberRuntime","state","forEachParUnbounded","unsafePollAllQueue","d","deferredInterruptWith","id","zipRight","unsafeOnPubSubEmptySpace","whenEffect","deferredSucceed","asUnit","deferredAwait","take","message","EmptyMutableQueue","deferredUnsafeMake","offer","unsafeCompletePollers","onInterrupt","unsafeRemove","takeAll","as","unsafePollAllSubscription","takeUpTo","unsafePollN","takeBetween","takeRemainderLoop","acc","bs","remaining","b","appendAll","append","PubSubImpl","scope","EnqueueTypeId","enqueueVariance","close","exitInterrupt","unsafeCompleteSubscribers","handleSurplus","unsafeOffer","surplus","unsafePublishAll","acquire","tap","all","fork","sequential","tuple","addFinalizer","acquireRelease","exit","offerAll","scopeMake","unsafeMakePubSub","Map","nextPow","ceil","log","pow","InvalidPubSubCapacityException","unsafeCompleteDeferred","deferredUnsafeDone","unsafeOfferAll","POSITIVE_INFINITY","filter","publishers","fiberId","forEachParUnboundedDiscard","_","last","unit","keepPolling","publisher","published","prepend","unsafeStrategyCompletePollers","unsafeStrategyCompleteSubscribers","iterator","Symbol","done","_pubsub","_subscribers","_elements","_isShutdown","unsafeSlidingPublish","it","pub","poller","pollResult","pollersSet"],"sources":["../../../src/internal/pubsub.ts"],"sourcesContent":[null],"mappings":"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"}
1
+ {"version":3,"file":"pubsub.js","names":["Chunk","dual","pipe","MutableQueue","MutableRef","Option","pipeArguments","core","executionStrategy","fiberRuntime","queue","AbsentValue","Symbol","for","addSubscribers","subscription","pollers","subscribers","has","set","Set","get","add","removeSubscribers","delete","size","bounded","requestedCapacity","sync","makeBoundedPubSub","flatMap","atomicPubSub","makePubSub","BackPressureStrategy","dropping","DroppingStrategy","sliding","SlidingStrategy","unbounded","makeUnboundedPubSub","capacity","self","isFull","isEmpty","shutdown","isShutdown","awaitShutdown","publish","value","publishAll","elements","subscribe","ensureCapacity","BoundedPubSubSingle","nextPow2","BoundedPubSubPow2","BoundedPubSubArb","UnboundedPubSub","makeSubscription","pubsub","strategy","map","deferredMake","deferred","unsafeMakeSubscription","make","shutdownHook","shutdownFlag","SubscriptionImpl","array","publisherIndex","subscriberCount","subscribersIndex","constructor","Array","from","length","index","chunk","fromIterable","n","available","forPubSub","Math","min","iteratorIndex","publishAllIndex","a","unsafeGet","drop","slide","BoundedPubSubArbSubscription","subscriberIndex","unsubscribed","max","poll","default_","elem","pollUpTo","empty","toPoll","builder","pollUpToIndex","push","unsubscribe","mask","BoundedPubSubPow2Subscription","arguments","unsafeHead","BoundedPubSubSingleSubscription","of","Node","next","publisherHead","publisherTail","Number","MAX_SAFE_INTEGER","UnboundedPubSubSubscription","subscriberHead","loop","polled","i","DequeueTypeId","dequeueVariance","isActive","suspend","interrupt","succeed","unsafeSize","none","some","uninterruptible","withFiberRuntime","state","forEachParUnbounded","unsafePollAllQueue","d","deferredInterruptWith","id","zipRight","unsafeOnPubSubEmptySpace","whenEffect","deferredSucceed","asUnit","deferredAwait","take","message","EmptyMutableQueue","deferredUnsafeMake","offer","unsafeCompletePollers","onInterrupt","unsafeRemove","takeAll","as","unsafePollAllSubscription","takeUpTo","unsafePollN","takeBetween","takeRemainderLoop","acc","bs","remaining","b","appendAll","append","PubSubImpl","scope","EnqueueTypeId","enqueueVariance","close","exitInterrupt","unsafeCompleteSubscribers","handleSurplus","unsafeOffer","surplus","unsafePublishAll","acquire","tap","all","fork","sequential","tuple","addFinalizer","acquireRelease","exit","offerAll","scopeMake","unsafeMakePubSub","Map","nextPow","ceil","log","pow","InvalidPubSubCapacityException","unsafeCompleteDeferred","deferredUnsafeDone","unsafeOfferAll","POSITIVE_INFINITY","filter","publishers","fiberId","forEachParUnboundedDiscard","_","last","unit","keepPolling","publisher","published","prepend","unsafeStrategyCompletePollers","unsafeStrategyCompleteSubscribers","iterator","done","_pubsub","_subscribers","_elements","_isShutdown","unsafeSlidingPublish","it","pub","poller","pollResult","pollersSet"],"sources":["../../../src/internal/pubsub.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -21,10 +21,18 @@ const QueueStrategySymbolKey = "effect/QueueStrategy";
21
21
  /** @internal */
22
22
  export const QueueStrategyTypeId = /*#__PURE__*/Symbol.for(QueueStrategySymbolKey);
23
23
  /** @internal */
24
+ const BackingQueueSymbolKey = "effect/BackingQueue";
25
+ /** @internal */
26
+ export const BackingQueueTypeId = /*#__PURE__*/Symbol.for(BackingQueueSymbolKey);
27
+ /** @internal */
24
28
  const queueStrategyVariance = {
25
29
  _A: _ => _
26
30
  };
27
31
  /** @internal */
32
+ const backingQueueVariance = {
33
+ _A: _ => _
34
+ };
35
+ /** @internal */
28
36
  export const enqueueVariance = {
29
37
  _In: _ => _
30
38
  };
@@ -245,6 +253,7 @@ export const make = (queue, strategy) => pipe(core.deferredMake(), core.map(defe
245
253
  /** @internal */
246
254
  export class BackingQueueFromMutableQueue {
247
255
  mutable;
256
+ [BackingQueueTypeId] = backingQueueVariance;
248
257
  constructor(mutable) {
249
258
  this.mutable = mutable;
250
259
  }
@@ -1 +1 @@
1
- {"version":3,"file":"queue.js","names":["Chunk","dual","pipe","MutableQueue","MutableRef","Option","pipeArguments","hasProperty","ReadonlyArray","core","fiberRuntime","EnqueueSymbolKey","EnqueueTypeId","Symbol","for","DequeueSymbolKey","DequeueTypeId","QueueStrategySymbolKey","QueueStrategyTypeId","queueStrategyVariance","_A","_","enqueueVariance","_In","dequeueVariance","_Out","QueueImpl","queue","takers","shutdownHook","shutdownFlag","strategy","constructor","arguments","capacity","size","suspend","catchAll","unsafeSize","interrupt","get","none","some","length","surplusSize","isEmpty","map","isFull","shutdown","uninterruptible","withFiberRuntime","state","set","forEachParUnboundedDiscard","unsafePollAll","d","deferredInterruptWith","id","zipRight","whenEffect","deferredSucceed","asUnit","isShutdown","sync","awaitShutdown","deferredAwait","isActive","unsafeOffer","value","noRemaining","taker","poll","EmptyMutableQueue","unsafeCompleteDeferred","succeeded","offer","unsafeCompleteTakers","succeed","handleSurplus","offerAll","iterable","values","fromIterable","pTakers","unsafePollN","empty","forTakers","remaining","splitAt","i","item","surplus","take","unsafeOnQueueEmptySpace","deferred","deferredUnsafeMake","onInterrupt","unsafeRemove","takeAll","pollUpTo","Number","POSITIVE_INFINITY","takeUpTo","max","takeBetween","min","takeRemainderLoop","self","acc","flatMap","bs","b","appendAll","append","isQueue","u","isEnqueue","isDequeue","bounded","requestedCapacity","make","backingQueueFromMutableQueue","backPressureStrategy","dropping","droppingStrategy","sliding","slidingStrategy","unbounded","unsafeMake","deferredMake","BackingQueueFromMutableQueue","mutable","def","limit","elements","element","head","takeN","n","BackPressureStrategy","DroppingStrategy","SlidingStrategy","putters","onCompleteTakersWithEmptyQueue","putter","fiberId","isLastItem","unit","keepPolling","offered","unsafeOfferAll","prepend","stuff","Array","from","filter","_iterable","_queue","_takers","_isShutdown","iterator","next","offering","done","a","deferredUnsafeDone","as"],"sources":["../../../src/internal/queue.ts"],"sourcesContent":[null],"mappings":"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"}
1
+ {"version":3,"file":"queue.js","names":["Chunk","dual","pipe","MutableQueue","MutableRef","Option","pipeArguments","hasProperty","ReadonlyArray","core","fiberRuntime","EnqueueSymbolKey","EnqueueTypeId","Symbol","for","DequeueSymbolKey","DequeueTypeId","QueueStrategySymbolKey","QueueStrategyTypeId","BackingQueueSymbolKey","BackingQueueTypeId","queueStrategyVariance","_A","_","backingQueueVariance","enqueueVariance","_In","dequeueVariance","_Out","QueueImpl","queue","takers","shutdownHook","shutdownFlag","strategy","constructor","arguments","capacity","size","suspend","catchAll","unsafeSize","interrupt","get","none","some","length","surplusSize","isEmpty","map","isFull","shutdown","uninterruptible","withFiberRuntime","state","set","forEachParUnboundedDiscard","unsafePollAll","d","deferredInterruptWith","id","zipRight","whenEffect","deferredSucceed","asUnit","isShutdown","sync","awaitShutdown","deferredAwait","isActive","unsafeOffer","value","noRemaining","taker","poll","EmptyMutableQueue","unsafeCompleteDeferred","succeeded","offer","unsafeCompleteTakers","succeed","handleSurplus","offerAll","iterable","values","fromIterable","pTakers","unsafePollN","empty","forTakers","remaining","splitAt","i","item","surplus","take","unsafeOnQueueEmptySpace","deferred","deferredUnsafeMake","onInterrupt","unsafeRemove","takeAll","pollUpTo","Number","POSITIVE_INFINITY","takeUpTo","max","takeBetween","min","takeRemainderLoop","self","acc","flatMap","bs","b","appendAll","append","isQueue","u","isEnqueue","isDequeue","bounded","requestedCapacity","make","backingQueueFromMutableQueue","backPressureStrategy","dropping","droppingStrategy","sliding","slidingStrategy","unbounded","unsafeMake","deferredMake","BackingQueueFromMutableQueue","mutable","def","limit","elements","element","head","takeN","n","BackPressureStrategy","DroppingStrategy","SlidingStrategy","putters","onCompleteTakersWithEmptyQueue","putter","fiberId","isLastItem","unit","keepPolling","offered","unsafeOfferAll","prepend","stuff","Array","from","filter","_iterable","_queue","_takers","_isShutdown","iterator","next","offering","done","a","deferredUnsafeDone","as"],"sources":["../../../src/internal/queue.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -12,8 +12,12 @@ import { Stack } from "./stack.js";
12
12
  const RedBlackTreeSymbolKey = "effect/RedBlackTree";
13
13
  /** @internal */
14
14
  export const RedBlackTreeTypeId = /*#__PURE__*/Symbol.for(RedBlackTreeSymbolKey);
15
+ const redBlackTreeVariance = {
16
+ _Key: _ => _,
17
+ _Value: _ => _
18
+ };
15
19
  const RedBlackTreeProto = {
16
- [RedBlackTreeTypeId]: RedBlackTreeTypeId,
20
+ [RedBlackTreeTypeId]: redBlackTreeVariance,
17
21
  [Hash.symbol]() {
18
22
  let hash = Hash.hash(RedBlackTreeSymbolKey);
19
23
  for (const item of this) {