effect 2.2.5 → 2.3.1

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 (693) hide show
  1. package/RateLimiter/package.json +6 -0
  2. package/dist/cjs/Cause.js +14 -1
  3. package/dist/cjs/Cause.js.map +1 -1
  4. package/dist/cjs/Channel.js.map +1 -1
  5. package/dist/cjs/Clock.js.map +1 -1
  6. package/dist/cjs/Console.js.map +1 -1
  7. package/dist/cjs/Context.js +23 -25
  8. package/dist/cjs/Context.js.map +1 -1
  9. package/dist/cjs/Data.js +3 -3
  10. package/dist/cjs/Data.js.map +1 -1
  11. package/dist/cjs/Deferred.js +1 -1
  12. package/dist/cjs/Deferred.js.map +1 -1
  13. package/dist/cjs/Effect.js +9 -9
  14. package/dist/cjs/Effect.js.map +1 -1
  15. package/dist/cjs/Effectable.js.map +1 -1
  16. package/dist/cjs/Either.js.map +1 -1
  17. package/dist/cjs/Exit.js +2 -2
  18. package/dist/cjs/Exit.js.map +1 -1
  19. package/dist/cjs/Fiber.js.map +1 -1
  20. package/dist/cjs/FiberMap.js +3 -3
  21. package/dist/cjs/FiberRef.js.map +1 -1
  22. package/dist/cjs/FiberRefs.js.map +1 -1
  23. package/dist/cjs/FiberSet.js +3 -3
  24. package/dist/cjs/FiberSet.js.map +1 -1
  25. package/dist/cjs/GroupBy.js.map +1 -1
  26. package/dist/cjs/Layer.js.map +1 -1
  27. package/dist/cjs/LogLevel.js.map +1 -1
  28. package/dist/cjs/Logger.js.map +1 -1
  29. package/dist/cjs/Metric.js.map +1 -1
  30. package/dist/cjs/Number.js +20 -1
  31. package/dist/cjs/Number.js.map +1 -1
  32. package/dist/cjs/Option.js.map +1 -1
  33. package/dist/cjs/Pool.js.map +1 -1
  34. package/dist/cjs/PubSub.js.map +1 -1
  35. package/dist/cjs/Queue.js.map +1 -1
  36. package/dist/cjs/Random.js.map +1 -1
  37. package/dist/cjs/RateLimiter.js +38 -0
  38. package/dist/cjs/RateLimiter.js.map +1 -0
  39. package/dist/cjs/ReadonlyRecord.js +45 -9
  40. package/dist/cjs/ReadonlyRecord.js.map +1 -1
  41. package/dist/cjs/Ref.js.map +1 -1
  42. package/dist/cjs/Request.js.map +1 -1
  43. package/dist/cjs/RequestResolver.js.map +1 -1
  44. package/dist/cjs/Resource.js.map +1 -1
  45. package/dist/cjs/Runtime.js +1 -4
  46. package/dist/cjs/Runtime.js.map +1 -1
  47. package/dist/cjs/RuntimeFlags.js.map +1 -1
  48. package/dist/cjs/STM.js.map +1 -1
  49. package/dist/cjs/Schedule.js.map +1 -1
  50. package/dist/cjs/Scope.js.map +1 -1
  51. package/dist/cjs/ScopedRef.js.map +1 -1
  52. package/dist/cjs/SingleProducerAsyncInput.js.map +1 -1
  53. package/dist/cjs/Sink.js.map +1 -1
  54. package/dist/cjs/Stream.js.map +1 -1
  55. package/dist/cjs/SubscriptionRef.js.map +1 -1
  56. package/dist/cjs/Supervisor.js.map +1 -1
  57. package/dist/cjs/SynchronizedRef.js.map +1 -1
  58. package/dist/cjs/TArray.js.map +1 -1
  59. package/dist/cjs/TDeferred.js.map +1 -1
  60. package/dist/cjs/TMap.js.map +1 -1
  61. package/dist/cjs/TPriorityQueue.js.map +1 -1
  62. package/dist/cjs/TPubSub.js.map +1 -1
  63. package/dist/cjs/TQueue.js.map +1 -1
  64. package/dist/cjs/TRandom.js.map +1 -1
  65. package/dist/cjs/TReentrantLock.js.map +1 -1
  66. package/dist/cjs/TRef.js.map +1 -1
  67. package/dist/cjs/TSemaphore.js.map +1 -1
  68. package/dist/cjs/TSet.js.map +1 -1
  69. package/dist/cjs/Take.js +6 -6
  70. package/dist/cjs/Take.js.map +1 -1
  71. package/dist/cjs/TestAnnotation.js +10 -13
  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 +1 -1
  76. package/dist/cjs/TestClock.js.map +1 -1
  77. package/dist/cjs/TestConfig.js +1 -1
  78. package/dist/cjs/TestConfig.js.map +1 -1
  79. package/dist/cjs/TestContext.js.map +1 -1
  80. package/dist/cjs/TestLive.js +1 -1
  81. package/dist/cjs/TestLive.js.map +1 -1
  82. package/dist/cjs/TestServices.js.map +1 -1
  83. package/dist/cjs/TestSized.js +1 -1
  84. package/dist/cjs/TestSized.js.map +1 -1
  85. package/dist/cjs/Utils.js +0 -1
  86. package/dist/cjs/Utils.js.map +1 -1
  87. package/dist/cjs/index.js +4 -2
  88. package/dist/cjs/index.js.map +1 -1
  89. package/dist/cjs/internal/cache.js.map +1 -1
  90. package/dist/cjs/internal/channel/channelExecutor.js.map +1 -1
  91. package/dist/cjs/internal/channel/mergeDecision.js +2 -6
  92. package/dist/cjs/internal/channel/mergeDecision.js.map +1 -1
  93. package/dist/cjs/internal/channel/singleProducerAsyncInput.js.map +1 -1
  94. package/dist/cjs/internal/channel.js +1 -1
  95. package/dist/cjs/internal/channel.js.map +1 -1
  96. package/dist/cjs/internal/clock.js +1 -1
  97. package/dist/cjs/internal/clock.js.map +1 -1
  98. package/dist/cjs/internal/configProvider.js +2 -4
  99. package/dist/cjs/internal/configProvider.js.map +1 -1
  100. package/dist/cjs/internal/console.js.map +1 -1
  101. package/dist/cjs/internal/context.js +31 -22
  102. package/dist/cjs/internal/context.js.map +1 -1
  103. package/dist/cjs/internal/core-effect.js +13 -27
  104. package/dist/cjs/internal/core-effect.js.map +1 -1
  105. package/dist/cjs/internal/core-stream.js.map +1 -1
  106. package/dist/cjs/internal/core.js +61 -130
  107. package/dist/cjs/internal/core.js.map +1 -1
  108. package/dist/cjs/internal/data.js.map +1 -1
  109. package/dist/cjs/internal/defaultServices/console.js +1 -1
  110. package/dist/cjs/internal/defaultServices/console.js.map +1 -1
  111. package/dist/cjs/internal/defaultServices.js.map +1 -1
  112. package/dist/cjs/internal/deferred.js.map +1 -1
  113. package/dist/cjs/internal/differ/contextPatch.js +9 -9
  114. package/dist/cjs/internal/differ/contextPatch.js.map +1 -1
  115. package/dist/cjs/internal/effect/circular.js +7 -10
  116. package/dist/cjs/internal/effect/circular.js.map +1 -1
  117. package/dist/cjs/internal/effectable.js +4 -4
  118. package/dist/cjs/internal/effectable.js.map +1 -1
  119. package/dist/cjs/internal/fiber.js +2 -6
  120. package/dist/cjs/internal/fiber.js.map +1 -1
  121. package/dist/cjs/internal/fiberRuntime.js +10 -19
  122. package/dist/cjs/internal/fiberRuntime.js.map +1 -1
  123. package/dist/cjs/internal/groupBy.js.map +1 -1
  124. package/dist/cjs/internal/keyedPool.js.map +1 -1
  125. package/dist/cjs/internal/layer/circular.js.map +1 -1
  126. package/dist/cjs/internal/layer.js +3 -3
  127. package/dist/cjs/internal/layer.js.map +1 -1
  128. package/dist/cjs/internal/logSpan.js +3 -5
  129. package/dist/cjs/internal/logSpan.js.map +1 -1
  130. package/dist/cjs/internal/metric.js.map +1 -1
  131. package/dist/cjs/internal/pool.js.map +1 -1
  132. package/dist/cjs/internal/pubsub.js +2 -6
  133. package/dist/cjs/internal/pubsub.js.map +1 -1
  134. package/dist/cjs/internal/query.js.map +1 -1
  135. package/dist/cjs/internal/queue.js.map +1 -1
  136. package/dist/cjs/internal/random.js +1 -1
  137. package/dist/cjs/internal/random.js.map +1 -1
  138. package/dist/cjs/internal/rateLimiter.js +44 -0
  139. package/dist/cjs/internal/rateLimiter.js.map +1 -0
  140. package/dist/cjs/internal/ref.js.map +1 -1
  141. package/dist/cjs/internal/reloadable.js +1 -9
  142. package/dist/cjs/internal/reloadable.js.map +1 -1
  143. package/dist/cjs/internal/runtime.js +0 -1
  144. package/dist/cjs/internal/runtime.js.map +1 -1
  145. package/dist/cjs/internal/schedule.js.map +1 -1
  146. package/dist/cjs/internal/scopedCache.js.map +1 -1
  147. package/dist/cjs/internal/scopedRef.js.map +1 -1
  148. package/dist/cjs/internal/sink.js +7 -7
  149. package/dist/cjs/internal/sink.js.map +1 -1
  150. package/dist/cjs/internal/stm/core.js.map +1 -1
  151. package/dist/cjs/internal/stm/stm/stmState.js.map +1 -1
  152. package/dist/cjs/internal/stm/stm/tExit.js +2 -2
  153. package/dist/cjs/internal/stm/stm/tExit.js.map +1 -1
  154. package/dist/cjs/internal/stm/stm/tryCommit.js.map +1 -1
  155. package/dist/cjs/internal/stm/stm.js.map +1 -1
  156. package/dist/cjs/internal/stm/tArray.js.map +1 -1
  157. package/dist/cjs/internal/stm/tDeferred.js +4 -2
  158. package/dist/cjs/internal/stm/tDeferred.js.map +1 -1
  159. package/dist/cjs/internal/stm/tMap.js.map +1 -1
  160. package/dist/cjs/internal/stm/tPriorityQueue.js.map +1 -1
  161. package/dist/cjs/internal/stm/tPubSub.js.map +1 -1
  162. package/dist/cjs/internal/stm/tQueue.js.map +1 -1
  163. package/dist/cjs/internal/stm/tRandom.js +1 -1
  164. package/dist/cjs/internal/stm/tRandom.js.map +1 -1
  165. package/dist/cjs/internal/stm/tReentrantLock.js.map +1 -1
  166. package/dist/cjs/internal/stm/tRef.js.map +1 -1
  167. package/dist/cjs/internal/stm/tSemaphore.js.map +1 -1
  168. package/dist/cjs/internal/stm/tSet.js.map +1 -1
  169. package/dist/cjs/internal/stream/debounceState.js.map +1 -1
  170. package/dist/cjs/internal/stream/handoff.js.map +1 -1
  171. package/dist/cjs/internal/stream/handoffSignal.js.map +1 -1
  172. package/dist/cjs/internal/stream/pull.js.map +1 -1
  173. package/dist/cjs/internal/stream.js +0 -2
  174. package/dist/cjs/internal/stream.js.map +1 -1
  175. package/dist/cjs/internal/subscriptionRef.js.map +1 -1
  176. package/dist/cjs/internal/supervisor.js.map +1 -1
  177. package/dist/cjs/internal/take.js +2 -2
  178. package/dist/cjs/internal/take.js.map +1 -1
  179. package/dist/cjs/internal/testing/sleep.js.map +1 -1
  180. package/dist/cjs/internal/tracer.js +2 -2
  181. package/dist/cjs/internal/tracer.js.map +1 -1
  182. package/dist/cjs/internal/version.js +1 -1
  183. package/dist/dts/Cache.d.ts +20 -20
  184. package/dist/dts/Cache.d.ts.map +1 -1
  185. package/dist/dts/Cause.d.ts +33 -5
  186. package/dist/dts/Cause.d.ts.map +1 -1
  187. package/dist/dts/Channel.d.ts +197 -194
  188. package/dist/dts/Channel.d.ts.map +1 -1
  189. package/dist/dts/Clock.d.ts +7 -7
  190. package/dist/dts/Clock.d.ts.map +1 -1
  191. package/dist/dts/Config.d.ts +1 -1
  192. package/dist/dts/Config.d.ts.map +1 -1
  193. package/dist/dts/ConfigProvider.d.ts +6 -6
  194. package/dist/dts/ConfigProvider.d.ts.map +1 -1
  195. package/dist/dts/Console.d.ts +43 -43
  196. package/dist/dts/Console.d.ts.map +1 -1
  197. package/dist/dts/Context.d.ts +44 -29
  198. package/dist/dts/Context.d.ts.map +1 -1
  199. package/dist/dts/Data.d.ts +38 -57
  200. package/dist/dts/Data.d.ts.map +1 -1
  201. package/dist/dts/Deferred.d.ts +36 -36
  202. package/dist/dts/Deferred.d.ts.map +1 -1
  203. package/dist/dts/Effect.d.ts +732 -729
  204. package/dist/dts/Effect.d.ts.map +1 -1
  205. package/dist/dts/Effectable.d.ts +8 -8
  206. package/dist/dts/Effectable.d.ts.map +1 -1
  207. package/dist/dts/Either.d.ts +2 -3
  208. package/dist/dts/Either.d.ts.map +1 -1
  209. package/dist/dts/Exit.d.ts +74 -74
  210. package/dist/dts/Exit.d.ts.map +1 -1
  211. package/dist/dts/Fiber.d.ts +75 -75
  212. package/dist/dts/Fiber.d.ts.map +1 -1
  213. package/dist/dts/FiberMap.d.ts +22 -22
  214. package/dist/dts/FiberMap.d.ts.map +1 -1
  215. package/dist/dts/FiberRef.d.ts +28 -28
  216. package/dist/dts/FiberRef.d.ts.map +1 -1
  217. package/dist/dts/FiberRefs.d.ts +1 -1
  218. package/dist/dts/FiberRefs.d.ts.map +1 -1
  219. package/dist/dts/FiberSet.d.ts +16 -16
  220. package/dist/dts/FiberSet.d.ts.map +1 -1
  221. package/dist/dts/GroupBy.d.ts +6 -6
  222. package/dist/dts/GroupBy.d.ts.map +1 -1
  223. package/dist/dts/KeyedPool.d.ts +22 -22
  224. package/dist/dts/KeyedPool.d.ts.map +1 -1
  225. package/dist/dts/Layer.d.ts +126 -126
  226. package/dist/dts/Layer.d.ts.map +1 -1
  227. package/dist/dts/LogLevel.d.ts +2 -2
  228. package/dist/dts/LogLevel.d.ts.map +1 -1
  229. package/dist/dts/Logger.d.ts +14 -14
  230. package/dist/dts/Logger.d.ts.map +1 -1
  231. package/dist/dts/MergeDecision.d.ts +7 -7
  232. package/dist/dts/MergeState.d.ts +13 -13
  233. package/dist/dts/MergeState.d.ts.map +1 -1
  234. package/dist/dts/Metric.d.ts +32 -32
  235. package/dist/dts/Metric.d.ts.map +1 -1
  236. package/dist/dts/MetricPolling.d.ts +6 -6
  237. package/dist/dts/MetricPolling.d.ts.map +1 -1
  238. package/dist/dts/Number.d.ts +15 -0
  239. package/dist/dts/Number.d.ts.map +1 -1
  240. package/dist/dts/Option.d.ts +2 -3
  241. package/dist/dts/Option.d.ts.map +1 -1
  242. package/dist/dts/Pool.d.ts +15 -16
  243. package/dist/dts/Pool.d.ts.map +1 -1
  244. package/dist/dts/PubSub.d.ts +18 -18
  245. package/dist/dts/PubSub.d.ts.map +1 -1
  246. package/dist/dts/Queue.d.ts +40 -40
  247. package/dist/dts/Queue.d.ts.map +1 -1
  248. package/dist/dts/Random.d.ts +13 -13
  249. package/dist/dts/Random.d.ts.map +1 -1
  250. package/dist/dts/RateLimiter.d.ts +31 -0
  251. package/dist/dts/RateLimiter.d.ts.map +1 -0
  252. package/dist/dts/ReadonlyArray.d.ts +3 -3
  253. package/dist/dts/ReadonlyRecord.d.ts +37 -8
  254. package/dist/dts/ReadonlyRecord.d.ts.map +1 -1
  255. package/dist/dts/Ref.d.ts +25 -25
  256. package/dist/dts/Ref.d.ts.map +1 -1
  257. package/dist/dts/Reloadable.d.ts +9 -9
  258. package/dist/dts/Reloadable.d.ts.map +1 -1
  259. package/dist/dts/Request.d.ts +27 -28
  260. package/dist/dts/Request.d.ts.map +1 -1
  261. package/dist/dts/RequestBlock.d.ts +3 -3
  262. package/dist/dts/RequestBlock.d.ts.map +1 -1
  263. package/dist/dts/RequestResolver.d.ts +16 -16
  264. package/dist/dts/RequestResolver.d.ts.map +1 -1
  265. package/dist/dts/Resource.d.ts +7 -7
  266. package/dist/dts/Resource.d.ts.map +1 -1
  267. package/dist/dts/Runtime.d.ts +13 -16
  268. package/dist/dts/Runtime.d.ts.map +1 -1
  269. package/dist/dts/RuntimeFlags.d.ts +10 -10
  270. package/dist/dts/RuntimeFlags.d.ts.map +1 -1
  271. package/dist/dts/STM.d.ts +303 -303
  272. package/dist/dts/STM.d.ts.map +1 -1
  273. package/dist/dts/Schedule.d.ts +47 -47
  274. package/dist/dts/Schedule.d.ts.map +1 -1
  275. package/dist/dts/Scope.d.ts +10 -10
  276. package/dist/dts/Scope.d.ts.map +1 -1
  277. package/dist/dts/ScopedCache.d.ts +14 -14
  278. package/dist/dts/ScopedCache.d.ts.map +1 -1
  279. package/dist/dts/ScopedRef.d.ts +5 -5
  280. package/dist/dts/ScopedRef.d.ts.map +1 -1
  281. package/dist/dts/SingleProducerAsyncInput.d.ts +8 -8
  282. package/dist/dts/SingleProducerAsyncInput.d.ts.map +1 -1
  283. package/dist/dts/Sink.d.ts +214 -205
  284. package/dist/dts/Sink.d.ts.map +1 -1
  285. package/dist/dts/Stream.d.ts +595 -592
  286. package/dist/dts/Stream.d.ts.map +1 -1
  287. package/dist/dts/StreamEmit.d.ts +5 -5
  288. package/dist/dts/StreamEmit.d.ts.map +1 -1
  289. package/dist/dts/Streamable.d.ts +2 -2
  290. package/dist/dts/Streamable.d.ts.map +1 -1
  291. package/dist/dts/SubscriptionRef.d.ts +41 -41
  292. package/dist/dts/SubscriptionRef.d.ts.map +1 -1
  293. package/dist/dts/Supervisor.d.ts +17 -17
  294. package/dist/dts/Supervisor.d.ts.map +1 -1
  295. package/dist/dts/SynchronizedRef.d.ts +41 -41
  296. package/dist/dts/SynchronizedRef.d.ts.map +1 -1
  297. package/dist/dts/TArray.d.ts +72 -72
  298. package/dist/dts/TArray.d.ts.map +1 -1
  299. package/dist/dts/TDeferred.d.ts +12 -12
  300. package/dist/dts/TDeferred.d.ts.map +1 -1
  301. package/dist/dts/TMap.d.ts +67 -67
  302. package/dist/dts/TMap.d.ts.map +1 -1
  303. package/dist/dts/TPriorityQueue.d.ts +23 -23
  304. package/dist/dts/TPriorityQueue.d.ts.map +1 -1
  305. package/dist/dts/TPubSub.d.ts +15 -15
  306. package/dist/dts/TPubSub.d.ts.map +1 -1
  307. package/dist/dts/TQueue.d.ts +40 -40
  308. package/dist/dts/TQueue.d.ts.map +1 -1
  309. package/dist/dts/TRandom.d.ts +13 -13
  310. package/dist/dts/TRandom.d.ts.map +1 -1
  311. package/dist/dts/TReentrantLock.d.ts +21 -21
  312. package/dist/dts/TReentrantLock.d.ts.map +1 -1
  313. package/dist/dts/TRef.d.ts +25 -25
  314. package/dist/dts/TRef.d.ts.map +1 -1
  315. package/dist/dts/TSemaphore.d.ts +15 -15
  316. package/dist/dts/TSemaphore.d.ts.map +1 -1
  317. package/dist/dts/TSet.d.ts +49 -49
  318. package/dist/dts/TSet.d.ts.map +1 -1
  319. package/dist/dts/Take.d.ts +41 -41
  320. package/dist/dts/Take.d.ts.map +1 -1
  321. package/dist/dts/TestAnnotation.d.ts +1 -3
  322. package/dist/dts/TestAnnotation.d.ts.map +1 -1
  323. package/dist/dts/TestAnnotations.d.ts +3 -3
  324. package/dist/dts/TestAnnotations.d.ts.map +1 -1
  325. package/dist/dts/TestClock.d.ts +18 -18
  326. package/dist/dts/TestClock.d.ts.map +1 -1
  327. package/dist/dts/TestConfig.d.ts.map +1 -1
  328. package/dist/dts/TestContext.d.ts +2 -2
  329. package/dist/dts/TestContext.d.ts.map +1 -1
  330. package/dist/dts/TestLive.d.ts +1 -1
  331. package/dist/dts/TestLive.d.ts.map +1 -1
  332. package/dist/dts/TestServices.d.ts +31 -31
  333. package/dist/dts/TestServices.d.ts.map +1 -1
  334. package/dist/dts/TestSized.d.ts +2 -2
  335. package/dist/dts/TestSized.d.ts.map +1 -1
  336. package/dist/dts/Tracer.d.ts +1 -1
  337. package/dist/dts/Utils.d.ts.map +1 -1
  338. package/dist/dts/index.d.ts +12 -2
  339. package/dist/dts/index.d.ts.map +1 -1
  340. package/dist/dts/internal/channel/channelExecutor.d.ts +1 -1
  341. package/dist/dts/internal/channel/channelExecutor.d.ts.map +1 -1
  342. package/dist/dts/internal/core-stream.d.ts +1 -1
  343. package/dist/dts/internal/core-stream.d.ts.map +1 -1
  344. package/dist/dts/internal/rateLimiter.d.ts +2 -0
  345. package/dist/dts/internal/rateLimiter.d.ts.map +1 -0
  346. package/dist/dts/internal/stm/stm.d.ts +6 -6
  347. package/dist/dts/internal/stm/stm.d.ts.map +1 -1
  348. package/dist/dts/internal/version.d.ts +1 -1
  349. package/dist/esm/Cause.js +13 -0
  350. package/dist/esm/Cause.js.map +1 -1
  351. package/dist/esm/Channel.js.map +1 -1
  352. package/dist/esm/Clock.js.map +1 -1
  353. package/dist/esm/Console.js.map +1 -1
  354. package/dist/esm/Context.js +22 -24
  355. package/dist/esm/Context.js.map +1 -1
  356. package/dist/esm/Data.js +4 -5
  357. package/dist/esm/Data.js.map +1 -1
  358. package/dist/esm/Deferred.js +1 -1
  359. package/dist/esm/Deferred.js.map +1 -1
  360. package/dist/esm/Effect.js +9 -9
  361. package/dist/esm/Effect.js.map +1 -1
  362. package/dist/esm/Effectable.js.map +1 -1
  363. package/dist/esm/Either.js.map +1 -1
  364. package/dist/esm/Exit.js +2 -2
  365. package/dist/esm/Exit.js.map +1 -1
  366. package/dist/esm/Fiber.js.map +1 -1
  367. package/dist/esm/FiberMap.js +3 -3
  368. package/dist/esm/FiberRef.js.map +1 -1
  369. package/dist/esm/FiberRefs.js.map +1 -1
  370. package/dist/esm/FiberSet.js +3 -3
  371. package/dist/esm/FiberSet.js.map +1 -1
  372. package/dist/esm/GroupBy.js.map +1 -1
  373. package/dist/esm/Layer.js.map +1 -1
  374. package/dist/esm/LogLevel.js.map +1 -1
  375. package/dist/esm/Logger.js.map +1 -1
  376. package/dist/esm/Metric.js.map +1 -1
  377. package/dist/esm/Number.js +18 -0
  378. package/dist/esm/Number.js.map +1 -1
  379. package/dist/esm/Option.js.map +1 -1
  380. package/dist/esm/Pool.js.map +1 -1
  381. package/dist/esm/PubSub.js.map +1 -1
  382. package/dist/esm/Queue.js.map +1 -1
  383. package/dist/esm/Random.js.map +1 -1
  384. package/dist/esm/RateLimiter.js +7 -0
  385. package/dist/esm/RateLimiter.js.map +1 -0
  386. package/dist/esm/ReadonlyRecord.js +44 -8
  387. package/dist/esm/ReadonlyRecord.js.map +1 -1
  388. package/dist/esm/Ref.js.map +1 -1
  389. package/dist/esm/Request.js.map +1 -1
  390. package/dist/esm/RequestResolver.js.map +1 -1
  391. package/dist/esm/Resource.js.map +1 -1
  392. package/dist/esm/Runtime.js +1 -4
  393. package/dist/esm/Runtime.js.map +1 -1
  394. package/dist/esm/RuntimeFlags.js.map +1 -1
  395. package/dist/esm/STM.js.map +1 -1
  396. package/dist/esm/Schedule.js.map +1 -1
  397. package/dist/esm/Scope.js.map +1 -1
  398. package/dist/esm/ScopedRef.js.map +1 -1
  399. package/dist/esm/SingleProducerAsyncInput.js.map +1 -1
  400. package/dist/esm/Sink.js.map +1 -1
  401. package/dist/esm/Stream.js.map +1 -1
  402. package/dist/esm/SubscriptionRef.js.map +1 -1
  403. package/dist/esm/Supervisor.js.map +1 -1
  404. package/dist/esm/SynchronizedRef.js.map +1 -1
  405. package/dist/esm/TArray.js.map +1 -1
  406. package/dist/esm/TDeferred.js.map +1 -1
  407. package/dist/esm/TMap.js.map +1 -1
  408. package/dist/esm/TPriorityQueue.js.map +1 -1
  409. package/dist/esm/TPubSub.js.map +1 -1
  410. package/dist/esm/TQueue.js.map +1 -1
  411. package/dist/esm/TRandom.js.map +1 -1
  412. package/dist/esm/TReentrantLock.js.map +1 -1
  413. package/dist/esm/TRef.js.map +1 -1
  414. package/dist/esm/TSemaphore.js.map +1 -1
  415. package/dist/esm/TSet.js.map +1 -1
  416. package/dist/esm/Take.js +6 -6
  417. package/dist/esm/Take.js.map +1 -1
  418. package/dist/esm/TestAnnotation.js +10 -13
  419. package/dist/esm/TestAnnotation.js.map +1 -1
  420. package/dist/esm/TestAnnotations.js +1 -1
  421. package/dist/esm/TestAnnotations.js.map +1 -1
  422. package/dist/esm/TestClock.js +1 -1
  423. package/dist/esm/TestClock.js.map +1 -1
  424. package/dist/esm/TestConfig.js +1 -1
  425. package/dist/esm/TestConfig.js.map +1 -1
  426. package/dist/esm/TestContext.js.map +1 -1
  427. package/dist/esm/TestLive.js +1 -1
  428. package/dist/esm/TestLive.js.map +1 -1
  429. package/dist/esm/TestServices.js.map +1 -1
  430. package/dist/esm/TestSized.js +1 -1
  431. package/dist/esm/TestSized.js.map +1 -1
  432. package/dist/esm/Utils.js +1 -1
  433. package/dist/esm/Utils.js.map +1 -1
  434. package/dist/esm/index.js +12 -2
  435. package/dist/esm/index.js.map +1 -1
  436. package/dist/esm/internal/cache.js.map +1 -1
  437. package/dist/esm/internal/channel/channelExecutor.js.map +1 -1
  438. package/dist/esm/internal/channel/mergeDecision.js +2 -6
  439. package/dist/esm/internal/channel/mergeDecision.js.map +1 -1
  440. package/dist/esm/internal/channel/singleProducerAsyncInput.js.map +1 -1
  441. package/dist/esm/internal/channel.js +1 -1
  442. package/dist/esm/internal/channel.js.map +1 -1
  443. package/dist/esm/internal/clock.js +1 -1
  444. package/dist/esm/internal/clock.js.map +1 -1
  445. package/dist/esm/internal/configProvider.js +2 -4
  446. package/dist/esm/internal/configProvider.js.map +1 -1
  447. package/dist/esm/internal/console.js.map +1 -1
  448. package/dist/esm/internal/context.js +28 -20
  449. package/dist/esm/internal/context.js.map +1 -1
  450. package/dist/esm/internal/core-effect.js +12 -26
  451. package/dist/esm/internal/core-effect.js.map +1 -1
  452. package/dist/esm/internal/core-stream.js.map +1 -1
  453. package/dist/esm/internal/core.js +57 -127
  454. package/dist/esm/internal/core.js.map +1 -1
  455. package/dist/esm/internal/data.js.map +1 -1
  456. package/dist/esm/internal/defaultServices/console.js +1 -1
  457. package/dist/esm/internal/defaultServices/console.js.map +1 -1
  458. package/dist/esm/internal/defaultServices.js.map +1 -1
  459. package/dist/esm/internal/deferred.js.map +1 -1
  460. package/dist/esm/internal/differ/contextPatch.js +9 -9
  461. package/dist/esm/internal/differ/contextPatch.js.map +1 -1
  462. package/dist/esm/internal/effect/circular.js +5 -8
  463. package/dist/esm/internal/effect/circular.js.map +1 -1
  464. package/dist/esm/internal/effectable.js +4 -4
  465. package/dist/esm/internal/effectable.js.map +1 -1
  466. package/dist/esm/internal/fiber.js +2 -6
  467. package/dist/esm/internal/fiber.js.map +1 -1
  468. package/dist/esm/internal/fiberRuntime.js +10 -19
  469. package/dist/esm/internal/fiberRuntime.js.map +1 -1
  470. package/dist/esm/internal/groupBy.js.map +1 -1
  471. package/dist/esm/internal/keyedPool.js.map +1 -1
  472. package/dist/esm/internal/layer/circular.js.map +1 -1
  473. package/dist/esm/internal/layer.js +3 -3
  474. package/dist/esm/internal/layer.js.map +1 -1
  475. package/dist/esm/internal/logSpan.js +3 -5
  476. package/dist/esm/internal/logSpan.js.map +1 -1
  477. package/dist/esm/internal/metric.js.map +1 -1
  478. package/dist/esm/internal/pool.js.map +1 -1
  479. package/dist/esm/internal/pubsub.js +1 -5
  480. package/dist/esm/internal/pubsub.js.map +1 -1
  481. package/dist/esm/internal/query.js.map +1 -1
  482. package/dist/esm/internal/queue.js.map +1 -1
  483. package/dist/esm/internal/random.js +1 -1
  484. package/dist/esm/internal/random.js.map +1 -1
  485. package/dist/esm/internal/rateLimiter.js +12 -0
  486. package/dist/esm/internal/rateLimiter.js.map +1 -0
  487. package/dist/esm/internal/ref.js.map +1 -1
  488. package/dist/esm/internal/reloadable.js +1 -9
  489. package/dist/esm/internal/reloadable.js.map +1 -1
  490. package/dist/esm/internal/runtime.js +0 -1
  491. package/dist/esm/internal/runtime.js.map +1 -1
  492. package/dist/esm/internal/schedule.js.map +1 -1
  493. package/dist/esm/internal/scopedCache.js.map +1 -1
  494. package/dist/esm/internal/scopedRef.js.map +1 -1
  495. package/dist/esm/internal/sink.js +7 -7
  496. package/dist/esm/internal/sink.js.map +1 -1
  497. package/dist/esm/internal/stm/core.js.map +1 -1
  498. package/dist/esm/internal/stm/stm/stmState.js.map +1 -1
  499. package/dist/esm/internal/stm/stm/tExit.js +2 -2
  500. package/dist/esm/internal/stm/stm/tExit.js.map +1 -1
  501. package/dist/esm/internal/stm/stm/tryCommit.js.map +1 -1
  502. package/dist/esm/internal/stm/stm.js.map +1 -1
  503. package/dist/esm/internal/stm/tArray.js.map +1 -1
  504. package/dist/esm/internal/stm/tDeferred.js +4 -2
  505. package/dist/esm/internal/stm/tDeferred.js.map +1 -1
  506. package/dist/esm/internal/stm/tMap.js.map +1 -1
  507. package/dist/esm/internal/stm/tPriorityQueue.js.map +1 -1
  508. package/dist/esm/internal/stm/tPubSub.js.map +1 -1
  509. package/dist/esm/internal/stm/tQueue.js.map +1 -1
  510. package/dist/esm/internal/stm/tRandom.js +1 -1
  511. package/dist/esm/internal/stm/tRandom.js.map +1 -1
  512. package/dist/esm/internal/stm/tReentrantLock.js.map +1 -1
  513. package/dist/esm/internal/stm/tRef.js.map +1 -1
  514. package/dist/esm/internal/stm/tSemaphore.js.map +1 -1
  515. package/dist/esm/internal/stm/tSet.js.map +1 -1
  516. package/dist/esm/internal/stream/debounceState.js.map +1 -1
  517. package/dist/esm/internal/stream/handoff.js.map +1 -1
  518. package/dist/esm/internal/stream/handoffSignal.js.map +1 -1
  519. package/dist/esm/internal/stream/pull.js.map +1 -1
  520. package/dist/esm/internal/stream.js +0 -2
  521. package/dist/esm/internal/stream.js.map +1 -1
  522. package/dist/esm/internal/subscriptionRef.js.map +1 -1
  523. package/dist/esm/internal/supervisor.js.map +1 -1
  524. package/dist/esm/internal/take.js +2 -2
  525. package/dist/esm/internal/take.js.map +1 -1
  526. package/dist/esm/internal/testing/sleep.js.map +1 -1
  527. package/dist/esm/internal/tracer.js +2 -2
  528. package/dist/esm/internal/tracer.js.map +1 -1
  529. package/dist/esm/internal/version.js +1 -1
  530. package/package.json +9 -1
  531. package/src/Cache.ts +20 -20
  532. package/src/Cause.ts +37 -13
  533. package/src/Channel.ts +802 -794
  534. package/src/Clock.ts +7 -7
  535. package/src/Config.ts +1 -1
  536. package/src/ConfigProvider.ts +6 -6
  537. package/src/Console.ts +44 -48
  538. package/src/Context.ts +52 -30
  539. package/src/Data.ts +38 -61
  540. package/src/Deferred.ts +39 -41
  541. package/src/Effect.ts +1187 -1206
  542. package/src/Effectable.ts +8 -8
  543. package/src/Either.ts +2 -3
  544. package/src/Exit.ts +88 -105
  545. package/src/Fiber.ts +77 -83
  546. package/src/FiberMap.ts +77 -77
  547. package/src/FiberRef.ts +28 -28
  548. package/src/FiberRefs.ts +1 -1
  549. package/src/FiberSet.ts +61 -62
  550. package/src/GroupBy.ts +8 -12
  551. package/src/KeyedPool.ts +22 -22
  552. package/src/Layer.ts +187 -181
  553. package/src/LogLevel.ts +7 -6
  554. package/src/Logger.ts +18 -18
  555. package/src/MergeDecision.ts +7 -7
  556. package/src/MergeState.ts +16 -16
  557. package/src/Metric.ts +39 -39
  558. package/src/MetricPolling.ts +6 -6
  559. package/src/Number.ts +19 -0
  560. package/src/Option.ts +2 -3
  561. package/src/Pool.ts +15 -16
  562. package/src/PubSub.ts +18 -18
  563. package/src/Queue.ts +43 -46
  564. package/src/Random.ts +13 -15
  565. package/src/RateLimiter.ts +37 -0
  566. package/src/ReadonlyRecord.ts +49 -8
  567. package/src/Ref.ts +25 -25
  568. package/src/Reloadable.ts +10 -10
  569. package/src/Request.ts +31 -31
  570. package/src/RequestBlock.ts +3 -3
  571. package/src/RequestResolver.ts +21 -21
  572. package/src/Resource.ts +13 -13
  573. package/src/Runtime.ts +16 -19
  574. package/src/RuntimeFlags.ts +10 -10
  575. package/src/STM.ts +361 -362
  576. package/src/Schedule.ts +47 -47
  577. package/src/Scheduler.ts +2 -2
  578. package/src/Scope.ts +14 -15
  579. package/src/ScopedCache.ts +14 -14
  580. package/src/ScopedRef.ts +7 -7
  581. package/src/SingleProducerAsyncInput.ts +8 -9
  582. package/src/Sink.ts +357 -381
  583. package/src/Stream.ts +935 -1033
  584. package/src/StreamEmit.ts +5 -5
  585. package/src/Streamable.ts +2 -2
  586. package/src/SubscriptionRef.ts +51 -51
  587. package/src/Supervisor.ts +26 -26
  588. package/src/SynchronizedRef.ts +44 -44
  589. package/src/TArray.ts +74 -74
  590. package/src/TDeferred.ts +14 -14
  591. package/src/TMap.ts +72 -72
  592. package/src/TPriorityQueue.ts +23 -24
  593. package/src/TPubSub.ts +15 -15
  594. package/src/TQueue.ts +40 -40
  595. package/src/TRandom.ts +13 -13
  596. package/src/TReentrantLock.ts +21 -21
  597. package/src/TRef.ts +25 -25
  598. package/src/TSemaphore.ts +15 -15
  599. package/src/TSet.ts +49 -49
  600. package/src/Take.ts +51 -51
  601. package/src/TestAnnotation.ts +6 -17
  602. package/src/TestAnnotations.ts +7 -9
  603. package/src/TestClock.ts +39 -45
  604. package/src/TestConfig.ts +1 -3
  605. package/src/TestContext.ts +3 -3
  606. package/src/TestLive.ts +3 -5
  607. package/src/TestServices.ts +45 -47
  608. package/src/TestSized.ts +5 -5
  609. package/src/Tracer.ts +1 -1
  610. package/src/Utils.ts +8 -10
  611. package/src/index.ts +13 -2
  612. package/src/internal/blockedRequests.ts +2 -2
  613. package/src/internal/cache.ts +38 -38
  614. package/src/internal/channel/channelExecutor.ts +65 -73
  615. package/src/internal/channel/channelState.ts +11 -11
  616. package/src/internal/channel/continuation.ts +10 -10
  617. package/src/internal/channel/mergeDecision.ts +14 -16
  618. package/src/internal/channel/mergeState.ts +12 -12
  619. package/src/internal/channel/singleProducerAsyncInput.ts +15 -17
  620. package/src/internal/channel/subexecutor.ts +7 -7
  621. package/src/internal/channel.ts +901 -980
  622. package/src/internal/clock.ts +6 -6
  623. package/src/internal/concurrency.ts +9 -9
  624. package/src/internal/configProvider.ts +29 -36
  625. package/src/internal/console.ts +12 -12
  626. package/src/internal/context.ts +32 -23
  627. package/src/internal/core-effect.ts +655 -616
  628. package/src/internal/core-stream.ts +317 -325
  629. package/src/internal/core.ts +856 -790
  630. package/src/internal/data.ts +2 -3
  631. package/src/internal/dataSource.ts +14 -14
  632. package/src/internal/defaultServices/console.ts +3 -1
  633. package/src/internal/defaultServices.ts +21 -21
  634. package/src/internal/deferred.ts +9 -9
  635. package/src/internal/differ/contextPatch.ts +17 -17
  636. package/src/internal/effect/circular.ts +154 -159
  637. package/src/internal/effectable.ts +7 -7
  638. package/src/internal/fiber.ts +55 -59
  639. package/src/internal/fiberRefs.ts +1 -1
  640. package/src/internal/fiberRuntime.ts +426 -463
  641. package/src/internal/groupBy.ts +59 -62
  642. package/src/internal/keyedPool.ts +37 -37
  643. package/src/internal/layer/circular.ts +37 -37
  644. package/src/internal/layer.ts +235 -240
  645. package/src/internal/logSpan.ts +3 -5
  646. package/src/internal/metric/polling.ts +5 -5
  647. package/src/internal/metric.ts +54 -55
  648. package/src/internal/pool.ts +72 -72
  649. package/src/internal/pubsub.ts +75 -84
  650. package/src/internal/query.ts +25 -27
  651. package/src/internal/queue.ts +65 -70
  652. package/src/internal/random.ts +9 -9
  653. package/src/internal/rateLimiter.ts +30 -0
  654. package/src/internal/ref.ts +24 -24
  655. package/src/internal/reloadable.ts +11 -31
  656. package/src/internal/request.ts +14 -14
  657. package/src/internal/resource.ts +8 -8
  658. package/src/internal/runtime.ts +21 -22
  659. package/src/internal/schedule.ts +131 -134
  660. package/src/internal/scopedCache.ts +35 -32
  661. package/src/internal/scopedRef.ts +14 -14
  662. package/src/internal/sink.ts +507 -565
  663. package/src/internal/stm/core.ts +101 -102
  664. package/src/internal/stm/stm/stmState.ts +10 -10
  665. package/src/internal/stm/stm/tExit.ts +18 -18
  666. package/src/internal/stm/stm/tryCommit.ts +5 -5
  667. package/src/internal/stm/stm.ts +363 -374
  668. package/src/internal/stm/tArray.ts +92 -92
  669. package/src/internal/stm/tDeferred.ts +16 -14
  670. package/src/internal/stm/tMap.ts +83 -84
  671. package/src/internal/stm/tPriorityQueue.ts +24 -25
  672. package/src/internal/stm/tPubSub.ts +37 -38
  673. package/src/internal/stm/tQueue.ts +44 -48
  674. package/src/internal/stm/tRandom.ts +18 -18
  675. package/src/internal/stm/tReentrantLock.ts +28 -28
  676. package/src/internal/stm/tRef.ts +25 -25
  677. package/src/internal/stm/tSemaphore.ts +16 -16
  678. package/src/internal/stm/tSet.ts +51 -52
  679. package/src/internal/stream/debounceState.ts +7 -7
  680. package/src/internal/stream/emit.ts +4 -4
  681. package/src/internal/stream/handoff.ts +19 -19
  682. package/src/internal/stream/handoffSignal.ts +4 -4
  683. package/src/internal/stream/pull.ts +10 -11
  684. package/src/internal/stream.ts +1770 -1788
  685. package/src/internal/subscriptionRef.ts +17 -17
  686. package/src/internal/supervisor.ts +49 -56
  687. package/src/internal/synchronizedRef.ts +27 -27
  688. package/src/internal/take.ts +61 -61
  689. package/src/internal/testing/sleep.ts +2 -2
  690. package/src/internal/testing/suspendedWarningData.ts +2 -2
  691. package/src/internal/testing/warningData.ts +2 -2
  692. package/src/internal/tracer.ts +2 -6
  693. package/src/internal/version.ts +1 -1
package/src/TSet.ts CHANGED
@@ -60,8 +60,8 @@ export declare namespace TSet {
60
60
  * @category mutations
61
61
  */
62
62
  export const add: {
63
- <A>(value: A): (self: TSet<A>) => STM.STM<never, never, void>
64
- <A>(self: TSet<A>, value: A): STM.STM<never, never, void>
63
+ <A>(value: A): (self: TSet<A>) => STM.STM<void>
64
+ <A>(self: TSet<A>, value: A): STM.STM<void>
65
65
  } = internal.add
66
66
 
67
67
  /**
@@ -72,8 +72,8 @@ export const add: {
72
72
  * @category mutations
73
73
  */
74
74
  export const difference: {
75
- <A>(other: TSet<A>): (self: TSet<A>) => STM.STM<never, never, void>
76
- <A>(self: TSet<A>, other: TSet<A>): STM.STM<never, never, void>
75
+ <A>(other: TSet<A>): (self: TSet<A>) => STM.STM<void>
76
+ <A>(self: TSet<A>, other: TSet<A>): STM.STM<void>
77
77
  } = internal.difference
78
78
 
79
79
  /**
@@ -82,7 +82,7 @@ export const difference: {
82
82
  * @since 2.0.0
83
83
  * @category constructors
84
84
  */
85
- export const empty: <A>() => STM.STM<never, never, TSet<A>> = internal.empty
85
+ export const empty: <A>() => STM.STM<TSet<A>> = internal.empty
86
86
 
87
87
  /**
88
88
  * Atomically performs transactional-effect for each element in set.
@@ -91,8 +91,8 @@ export const empty: <A>() => STM.STM<never, never, TSet<A>> = internal.empty
91
91
  * @category elements
92
92
  */
93
93
  export const forEach: {
94
- <A, R, E>(f: (value: A) => STM.STM<R, E, void>): (self: TSet<A>) => STM.STM<R, E, void>
95
- <A, R, E>(self: TSet<A>, f: (value: A) => STM.STM<R, E, void>): STM.STM<R, E, void>
94
+ <A, R, E>(f: (value: A) => STM.STM<void, E, R>): (self: TSet<A>) => STM.STM<void, E, R>
95
+ <A, R, E>(self: TSet<A>, f: (value: A) => STM.STM<void, E, R>): STM.STM<void, E, R>
96
96
  } = internal.forEach
97
97
 
98
98
  /**
@@ -101,7 +101,7 @@ export const forEach: {
101
101
  * @since 2.0.0
102
102
  * @category constructors
103
103
  */
104
- export const fromIterable: <A>(iterable: Iterable<A>) => STM.STM<never, never, TSet<A>> = internal.fromIterable
104
+ export const fromIterable: <A>(iterable: Iterable<A>) => STM.STM<TSet<A>> = internal.fromIterable
105
105
 
106
106
  /**
107
107
  * Tests whether or not set contains an element.
@@ -110,8 +110,8 @@ export const fromIterable: <A>(iterable: Iterable<A>) => STM.STM<never, never, T
110
110
  * @category elements
111
111
  */
112
112
  export const has: {
113
- <A>(value: A): (self: TSet<A>) => STM.STM<never, never, boolean>
114
- <A>(self: TSet<A>, value: A): STM.STM<never, never, boolean>
113
+ <A>(value: A): (self: TSet<A>) => STM.STM<boolean>
114
+ <A>(self: TSet<A>, value: A): STM.STM<boolean>
115
115
  } = internal.has
116
116
 
117
117
  /**
@@ -122,8 +122,8 @@ export const has: {
122
122
  * @category mutations
123
123
  */
124
124
  export const intersection: {
125
- <A>(other: TSet<A>): (self: TSet<A>) => STM.STM<never, never, void>
126
- <A>(self: TSet<A>, other: TSet<A>): STM.STM<never, never, void>
125
+ <A>(other: TSet<A>): (self: TSet<A>) => STM.STM<void>
126
+ <A>(self: TSet<A>, other: TSet<A>): STM.STM<void>
127
127
  } = internal.intersection
128
128
 
129
129
  /**
@@ -132,7 +132,7 @@ export const intersection: {
132
132
  * @since 2.0.0
133
133
  * @category getters
134
134
  */
135
- export const isEmpty: <A>(self: TSet<A>) => STM.STM<never, never, boolean> = internal.isEmpty
135
+ export const isEmpty: <A>(self: TSet<A>) => STM.STM<boolean> = internal.isEmpty
136
136
 
137
137
  /**
138
138
  * Makes a new `TSet` that is initialized with specified values.
@@ -142,7 +142,7 @@ export const isEmpty: <A>(self: TSet<A>) => STM.STM<never, never, boolean> = int
142
142
  */
143
143
  export const make: <Elements extends Array<any>>(
144
144
  ...elements: Elements
145
- ) => STM.STM<never, never, TSet<Elements[number]>> = internal.make
145
+ ) => STM.STM<TSet<Elements[number]>> = internal.make
146
146
 
147
147
  /**
148
148
  * Atomically folds using a pure function.
@@ -151,8 +151,8 @@ export const make: <Elements extends Array<any>>(
151
151
  * @category folding
152
152
  */
153
153
  export const reduce: {
154
- <Z, A>(zero: Z, f: (accumulator: Z, value: A) => Z): (self: TSet<A>) => STM.STM<never, never, Z>
155
- <Z, A>(self: TSet<A>, zero: Z, f: (accumulator: Z, value: A) => Z): STM.STM<never, never, Z>
154
+ <Z, A>(zero: Z, f: (accumulator: Z, value: A) => Z): (self: TSet<A>) => STM.STM<Z>
155
+ <Z, A>(self: TSet<A>, zero: Z, f: (accumulator: Z, value: A) => Z): STM.STM<Z>
156
156
  } = internal.reduce
157
157
 
158
158
  /**
@@ -162,8 +162,8 @@ export const reduce: {
162
162
  * @category folding
163
163
  */
164
164
  export const reduceSTM: {
165
- <Z, A, R, E>(zero: Z, f: (accumulator: Z, value: A) => STM.STM<R, E, Z>): (self: TSet<A>) => STM.STM<R, E, Z>
166
- <Z, A, R, E>(self: TSet<A>, zero: Z, f: (accumulator: Z, value: A) => STM.STM<R, E, Z>): STM.STM<R, E, Z>
165
+ <Z, A, R, E>(zero: Z, f: (accumulator: Z, value: A) => STM.STM<Z, E, R>): (self: TSet<A>) => STM.STM<Z, E, R>
166
+ <Z, A, R, E>(self: TSet<A>, zero: Z, f: (accumulator: Z, value: A) => STM.STM<Z, E, R>): STM.STM<Z, E, R>
167
167
  } = internal.reduceSTM
168
168
 
169
169
  /**
@@ -173,8 +173,8 @@ export const reduceSTM: {
173
173
  * @category mutations
174
174
  */
175
175
  export const remove: {
176
- <A>(value: A): (self: TSet<A>) => STM.STM<never, never, void>
177
- <A>(self: TSet<A>, value: A): STM.STM<never, never, void>
176
+ <A>(value: A): (self: TSet<A>) => STM.STM<void>
177
+ <A>(self: TSet<A>, value: A): STM.STM<void>
178
178
  } = internal.remove
179
179
 
180
180
  /**
@@ -184,8 +184,8 @@ export const remove: {
184
184
  * @category mutations
185
185
  */
186
186
  export const removeAll: {
187
- <A>(iterable: Iterable<A>): (self: TSet<A>) => STM.STM<never, never, void>
188
- <A>(self: TSet<A>, iterable: Iterable<A>): STM.STM<never, never, void>
187
+ <A>(iterable: Iterable<A>): (self: TSet<A>) => STM.STM<void>
188
+ <A>(self: TSet<A>, iterable: Iterable<A>): STM.STM<void>
189
189
  } = internal.removeAll
190
190
 
191
191
  /**
@@ -198,23 +198,23 @@ export const removeAll: {
198
198
  export const removeIf: {
199
199
  <A>(predicate: Predicate<A>, options: {
200
200
  readonly discard: true
201
- }): (self: TSet<A>) => STM.STM<never, never, void>
201
+ }): (self: TSet<A>) => STM.STM<void>
202
202
  <A>(
203
203
  predicate: Predicate<A>,
204
204
  options?: {
205
205
  readonly discard: false
206
206
  }
207
- ): (self: TSet<A>) => STM.STM<never, never, Array<A>>
207
+ ): (self: TSet<A>) => STM.STM<Array<A>>
208
208
  <A>(self: TSet<A>, predicate: Predicate<A>, options: {
209
209
  readonly discard: true
210
- }): STM.STM<never, never, void>
210
+ }): STM.STM<void>
211
211
  <A>(
212
212
  self: TSet<A>,
213
213
  predicate: Predicate<A>,
214
214
  options?: {
215
215
  readonly discard: false
216
216
  }
217
- ): STM.STM<never, never, Array<A>>
217
+ ): STM.STM<Array<A>>
218
218
  } = internal.removeIf
219
219
 
220
220
  /**
@@ -227,23 +227,23 @@ export const removeIf: {
227
227
  export const retainIf: {
228
228
  <A>(predicate: Predicate<A>, options: {
229
229
  readonly discard: true
230
- }): (self: TSet<A>) => STM.STM<never, never, void>
230
+ }): (self: TSet<A>) => STM.STM<void>
231
231
  <A>(
232
232
  predicate: Predicate<A>,
233
233
  options?: {
234
234
  readonly discard: false
235
235
  }
236
- ): (self: TSet<A>) => STM.STM<never, never, Array<A>>
236
+ ): (self: TSet<A>) => STM.STM<Array<A>>
237
237
  <A>(self: TSet<A>, predicate: Predicate<A>, options: {
238
238
  readonly discard: true
239
- }): STM.STM<never, never, void>
239
+ }): STM.STM<void>
240
240
  <A>(
241
241
  self: TSet<A>,
242
242
  predicate: Predicate<A>,
243
243
  options?: {
244
244
  readonly discard: false
245
245
  }
246
- ): STM.STM<never, never, Array<A>>
246
+ ): STM.STM<Array<A>>
247
247
  } = internal.retainIf
248
248
 
249
249
  /**
@@ -252,7 +252,7 @@ export const retainIf: {
252
252
  * @since 2.0.0
253
253
  * @category getters
254
254
  */
255
- export const size: <A>(self: TSet<A>) => STM.STM<never, never, number> = internal.size
255
+ export const size: <A>(self: TSet<A>) => STM.STM<number> = internal.size
256
256
 
257
257
  /**
258
258
  * Takes the first matching value, or retries until there is one.
@@ -261,8 +261,8 @@ export const size: <A>(self: TSet<A>) => STM.STM<never, never, number> = interna
261
261
  * @category mutations
262
262
  */
263
263
  export const takeFirst: {
264
- <A, B>(pf: (a: A) => Option.Option<B>): (self: TSet<A>) => STM.STM<never, never, B>
265
- <A, B>(self: TSet<A>, pf: (a: A) => Option.Option<B>): STM.STM<never, never, B>
264
+ <A, B>(pf: (a: A) => Option.Option<B>): (self: TSet<A>) => STM.STM<B>
265
+ <A, B>(self: TSet<A>, pf: (a: A) => Option.Option<B>): STM.STM<B>
266
266
  } = internal.takeFirst
267
267
 
268
268
  /**
@@ -272,8 +272,8 @@ export const takeFirst: {
272
272
  * @category mutations
273
273
  */
274
274
  export const takeFirstSTM: {
275
- <A, R, E, B>(pf: (a: A) => STM.STM<R, Option.Option<E>, B>): (self: TSet<A>) => STM.STM<R, E, B>
276
- <A, R, E, B>(self: TSet<A>, pf: (a: A) => STM.STM<R, Option.Option<E>, B>): STM.STM<R, E, B>
275
+ <A, R, E, B>(pf: (a: A) => STM.STM<B, Option.Option<E>, R>): (self: TSet<A>) => STM.STM<B, E, R>
276
+ <A, R, E, B>(self: TSet<A>, pf: (a: A) => STM.STM<B, Option.Option<E>, R>): STM.STM<B, E, R>
277
277
  } = internal.takeFirstSTM
278
278
 
279
279
  /**
@@ -283,8 +283,8 @@ export const takeFirstSTM: {
283
283
  * @category mutations
284
284
  */
285
285
  export const takeSome: {
286
- <A, B>(pf: (a: A) => Option.Option<B>): (self: TSet<A>) => STM.STM<never, never, [B, ...Array<B>]>
287
- <A, B>(self: TSet<A>, pf: (a: A) => Option.Option<B>): STM.STM<never, never, [B, ...Array<B>]>
286
+ <A, B>(pf: (a: A) => Option.Option<B>): (self: TSet<A>) => STM.STM<[B, ...Array<B>]>
287
+ <A, B>(self: TSet<A>, pf: (a: A) => Option.Option<B>): STM.STM<[B, ...Array<B>]>
288
288
  } = internal.takeSome
289
289
 
290
290
  /**
@@ -294,8 +294,8 @@ export const takeSome: {
294
294
  * @category mutations
295
295
  */
296
296
  export const takeSomeSTM: {
297
- <A, R, E, B>(pf: (a: A) => STM.STM<R, Option.Option<E>, B>): (self: TSet<A>) => STM.STM<R, E, [B, ...Array<B>]>
298
- <A, R, E, B>(self: TSet<A>, pf: (a: A) => STM.STM<R, Option.Option<E>, B>): STM.STM<R, E, [B, ...Array<B>]>
297
+ <A, R, E, B>(pf: (a: A) => STM.STM<B, Option.Option<E>, R>): (self: TSet<A>) => STM.STM<[B, ...Array<B>], E, R>
298
+ <A, R, E, B>(self: TSet<A>, pf: (a: A) => STM.STM<B, Option.Option<E>, R>): STM.STM<[B, ...Array<B>], E, R>
299
299
  } = internal.takeSomeSTM
300
300
 
301
301
  /**
@@ -304,7 +304,7 @@ export const takeSomeSTM: {
304
304
  * @since 2.0.0
305
305
  * @category destructors
306
306
  */
307
- export const toChunk: <A>(self: TSet<A>) => STM.STM<never, never, Chunk.Chunk<A>> = internal.toChunk
307
+ export const toChunk: <A>(self: TSet<A>) => STM.STM<Chunk.Chunk<A>> = internal.toChunk
308
308
 
309
309
  /**
310
310
  * Collects all elements into a `HashSet`.
@@ -312,7 +312,7 @@ export const toChunk: <A>(self: TSet<A>) => STM.STM<never, never, Chunk.Chunk<A>
312
312
  * @since 2.0.0
313
313
  * @category destructors
314
314
  */
315
- export const toHashSet: <A>(self: TSet<A>) => STM.STM<never, never, HashSet.HashSet<A>> = internal.toHashSet
315
+ export const toHashSet: <A>(self: TSet<A>) => STM.STM<HashSet.HashSet<A>> = internal.toHashSet
316
316
 
317
317
  /**
318
318
  * Collects all elements into a `Array`.
@@ -320,7 +320,7 @@ export const toHashSet: <A>(self: TSet<A>) => STM.STM<never, never, HashSet.Hash
320
320
  * @since 2.0.0
321
321
  * @category destructors
322
322
  */
323
- export const toArray: <A>(self: TSet<A>) => STM.STM<never, never, Array<A>> = internal.toArray
323
+ export const toArray: <A>(self: TSet<A>) => STM.STM<Array<A>> = internal.toArray
324
324
 
325
325
  /**
326
326
  * Collects all elements into a `ReadonlySet`.
@@ -328,7 +328,7 @@ export const toArray: <A>(self: TSet<A>) => STM.STM<never, never, Array<A>> = in
328
328
  * @since 2.0.0
329
329
  * @category destructors
330
330
  */
331
- export const toReadonlySet: <A>(self: TSet<A>) => STM.STM<never, never, ReadonlySet<A>> = internal.toReadonlySet
331
+ export const toReadonlySet: <A>(self: TSet<A>) => STM.STM<ReadonlySet<A>> = internal.toReadonlySet
332
332
 
333
333
  /**
334
334
  * Atomically updates all elements using a pure function.
@@ -337,8 +337,8 @@ export const toReadonlySet: <A>(self: TSet<A>) => STM.STM<never, never, Readonly
337
337
  * @category mutations
338
338
  */
339
339
  export const transform: {
340
- <A>(f: (a: A) => A): (self: TSet<A>) => STM.STM<never, never, void>
341
- <A>(self: TSet<A>, f: (a: A) => A): STM.STM<never, never, void>
340
+ <A>(f: (a: A) => A): (self: TSet<A>) => STM.STM<void>
341
+ <A>(self: TSet<A>, f: (a: A) => A): STM.STM<void>
342
342
  } = internal.transform
343
343
 
344
344
  /**
@@ -348,8 +348,8 @@ export const transform: {
348
348
  * @category mutations
349
349
  */
350
350
  export const transformSTM: {
351
- <A, R, E>(f: (a: A) => STM.STM<R, E, A>): (self: TSet<A>) => STM.STM<R, E, void>
352
- <A, R, E>(self: TSet<A>, f: (a: A) => STM.STM<R, E, A>): STM.STM<R, E, void>
351
+ <A, R, E>(f: (a: A) => STM.STM<A, E, R>): (self: TSet<A>) => STM.STM<void, E, R>
352
+ <A, R, E>(self: TSet<A>, f: (a: A) => STM.STM<A, E, R>): STM.STM<void, E, R>
353
353
  } = internal.transformSTM
354
354
 
355
355
  /**
@@ -360,6 +360,6 @@ export const transformSTM: {
360
360
  * @category mutations
361
361
  */
362
362
  export const union: {
363
- <A>(other: TSet<A>): (self: TSet<A>) => STM.STM<never, never, void>
364
- <A>(self: TSet<A>, other: TSet<A>): STM.STM<never, never, void>
363
+ <A>(other: TSet<A>): (self: TSet<A>) => STM.STM<void>
364
+ <A>(self: TSet<A>, other: TSet<A>): STM.STM<void>
365
365
  } = internal.union
package/src/Take.ts CHANGED
@@ -23,16 +23,16 @@ export const TakeTypeId: unique symbol = internal.TakeTypeId
23
23
  export type TakeTypeId = typeof TakeTypeId
24
24
 
25
25
  /**
26
- * A `Take<E, A>` represents a single `take` from a queue modeling a stream of
26
+ * A `Take<A, E>` represents a single `take` from a queue modeling a stream of
27
27
  * values. A `Take` may be a failure cause `Cause<E>`, a chunk value `Chunk<A>`,
28
28
  * or an end-of-stream marker.
29
29
  *
30
30
  * @since 2.0.0
31
31
  * @category models
32
32
  */
33
- export interface Take<out E, out A> extends Take.Variance<E, A>, Pipeable {
33
+ export interface Take<out A, out E = never> extends Take.Variance<A, E>, Pipeable {
34
34
  /** @internal */
35
- readonly exit: Exit.Exit<Option.Option<E>, Chunk.Chunk<A>>
35
+ readonly exit: Exit.Exit<Chunk.Chunk<A>, Option.Option<E>>
36
36
  }
37
37
 
38
38
  /**
@@ -43,10 +43,10 @@ export declare namespace Take {
43
43
  * @since 2.0.0
44
44
  * @category models
45
45
  */
46
- export interface Variance<out E, out A> {
46
+ export interface Variance<out A, out E> {
47
47
  readonly [TakeTypeId]: {
48
- readonly _E: Types.Covariant<E>
49
48
  readonly _A: Types.Covariant<A>
49
+ readonly _E: Types.Covariant<E>
50
50
  }
51
51
  }
52
52
  }
@@ -57,7 +57,7 @@ export declare namespace Take {
57
57
  * @since 2.0.0
58
58
  * @category constructors
59
59
  */
60
- export const chunk: <A>(chunk: Chunk.Chunk<A>) => Take<never, A> = internal.chunk
60
+ export const chunk: <A>(chunk: Chunk.Chunk<A>) => Take<A> = internal.chunk
61
61
 
62
62
  /**
63
63
  * Creates a failing `Take` with the specified defect.
@@ -65,7 +65,7 @@ export const chunk: <A>(chunk: Chunk.Chunk<A>) => Take<never, A> = internal.chun
65
65
  * @since 2.0.0
66
66
  * @category constructors
67
67
  */
68
- export const die: (defect: unknown) => Take<never, never> = internal.die
68
+ export const die: (defect: unknown) => Take<never> = internal.die
69
69
 
70
70
  /**
71
71
  * Creates a failing `Take` with the specified error message.
@@ -73,15 +73,15 @@ export const die: (defect: unknown) => Take<never, never> = internal.die
73
73
  * @since 2.0.0
74
74
  * @category constructors
75
75
  */
76
- export const dieMessage: (message: string) => Take<never, never> = internal.dieMessage
76
+ export const dieMessage: (message: string) => Take<never> = internal.dieMessage
77
77
 
78
78
  /**
79
- * Transforms a `Take<E, A>` to an `Effect<never, E, A>`.
79
+ * Transforms a `Take<A, E>` to an `Effect<A, E>`.
80
80
  *
81
81
  * @since 2.0.0
82
82
  * @category destructors
83
83
  */
84
- export const done: <E, A>(self: Take<E, A>) => Effect.Effect<never, Option.Option<E>, Chunk.Chunk<A>> = internal.done
84
+ export const done: <A, E>(self: Take<A, E>) => Effect.Effect<Chunk.Chunk<A>, Option.Option<E>> = internal.done
85
85
 
86
86
  /**
87
87
  * Represents the end-of-stream marker.
@@ -89,7 +89,7 @@ export const done: <E, A>(self: Take<E, A>) => Effect.Effect<never, Option.Optio
89
89
  * @since 2.0.0
90
90
  * @category constructors
91
91
  */
92
- export const end: Take<never, never> = internal.end
92
+ export const end: Take<never> = internal.end
93
93
 
94
94
  /**
95
95
  * Creates a failing `Take` with the specified error.
@@ -97,7 +97,7 @@ export const end: Take<never, never> = internal.end
97
97
  * @since 2.0.0
98
98
  * @category constructors
99
99
  */
100
- export const fail: <E>(error: E) => Take<E, never> = internal.fail
100
+ export const fail: <E>(error: E) => Take<never, E> = internal.fail
101
101
 
102
102
  /**
103
103
  * Creates a failing `Take` with the specified cause.
@@ -105,17 +105,17 @@ export const fail: <E>(error: E) => Take<E, never> = internal.fail
105
105
  * @since 2.0.0
106
106
  * @category constructors
107
107
  */
108
- export const failCause: <E>(cause: Cause.Cause<E>) => Take<E, never> = internal.failCause
108
+ export const failCause: <E>(cause: Cause.Cause<E>) => Take<never, E> = internal.failCause
109
109
 
110
110
  /**
111
- * Creates an effect from `Effect<R, E, A>` that does not fail, but succeeds with
112
- * the `Take<E, A>`. Error from stream when pulling is converted to
111
+ * Creates an effect from `Effect<A, E, R>` that does not fail, but succeeds with
112
+ * the `Take<A, E>`. Error from stream when pulling is converted to
113
113
  * `Take.failCause`. Creates a single value chunk.
114
114
  *
115
115
  * @since 2.0.0
116
116
  * @category constructors
117
117
  */
118
- export const fromEffect: <R, E, A>(effect: Effect.Effect<R, E, A>) => Effect.Effect<R, never, Take<E, A>> =
118
+ export const fromEffect: <A, E, R>(effect: Effect.Effect<A, E, R>) => Effect.Effect<Take<A, E>, never, R> =
119
119
  internal.fromEffect
120
120
 
121
121
  /**
@@ -124,19 +124,19 @@ export const fromEffect: <R, E, A>(effect: Effect.Effect<R, E, A>) => Effect.Eff
124
124
  * @since 2.0.0
125
125
  * @category constructors
126
126
  */
127
- export const fromExit: <E, A>(exit: Exit.Exit<E, A>) => Take<E, A> = internal.fromExit
127
+ export const fromExit: <A, E>(exit: Exit.Exit<A, E>) => Take<A, E> = internal.fromExit
128
128
 
129
129
  /**
130
- * Creates effect from `Effect<R, Option<E>, Chunk<A>>` that does not fail, but
131
- * succeeds with the `Take<E, A>`. Errors from stream when pulling are converted
130
+ * Creates effect from `Effect<Chunk<A>, Option<E>, R>` that does not fail, but
131
+ * succeeds with the `Take<A, E>`. Errors from stream when pulling are converted
132
132
  * to `Take.failCause`, and the end-of-stream is converted to `Take.end`.
133
133
  *
134
134
  * @since 2.0.0
135
135
  * @category constructors
136
136
  */
137
- export const fromPull: <R, E, A>(
138
- pull: Effect.Effect<R, Option.Option<E>, Chunk.Chunk<A>>
139
- ) => Effect.Effect<R, never, Take<E, A>> = internal.fromPull
137
+ export const fromPull: <A, E, R>(
138
+ pull: Effect.Effect<Chunk.Chunk<A>, Option.Option<E>, R>
139
+ ) => Effect.Effect<Take<A, E>, never, R> = internal.fromPull
140
140
 
141
141
  /**
142
142
  * Checks if this `take` is done (`Take.end`).
@@ -144,7 +144,7 @@ export const fromPull: <R, E, A>(
144
144
  * @since 2.0.0
145
145
  * @category getters
146
146
  */
147
- export const isDone: <E, A>(self: Take<E, A>) => boolean = internal.isDone
147
+ export const isDone: <A, E>(self: Take<A, E>) => boolean = internal.isDone
148
148
 
149
149
  /**
150
150
  * Checks if this `take` is a failure.
@@ -152,7 +152,7 @@ export const isDone: <E, A>(self: Take<E, A>) => boolean = internal.isDone
152
152
  * @since 2.0.0
153
153
  * @category getters
154
154
  */
155
- export const isFailure: <E, A>(self: Take<E, A>) => boolean = internal.isFailure
155
+ export const isFailure: <A, E>(self: Take<A, E>) => boolean = internal.isFailure
156
156
 
157
157
  /**
158
158
  * Checks if this `take` is a success.
@@ -160,7 +160,7 @@ export const isFailure: <E, A>(self: Take<E, A>) => boolean = internal.isFailure
160
160
  * @since 2.0.0
161
161
  * @category getters
162
162
  */
163
- export const isSuccess: <E, A>(self: Take<E, A>) => boolean = internal.isSuccess
163
+ export const isSuccess: <A, E>(self: Take<A, E>) => boolean = internal.isSuccess
164
164
 
165
165
  /**
166
166
  * Constructs a `Take`.
@@ -168,17 +168,17 @@ export const isSuccess: <E, A>(self: Take<E, A>) => boolean = internal.isSuccess
168
168
  * @since 2.0.0
169
169
  * @category constructors
170
170
  */
171
- export const make: <E, A>(exit: Exit.Exit<Option.Option<E>, Chunk.Chunk<A>>) => Take<E, A> = internal.make
171
+ export const make: <A, E>(exit: Exit.Exit<Chunk.Chunk<A>, Option.Option<E>>) => Take<A, E> = internal.make
172
172
 
173
173
  /**
174
- * Transforms `Take<E, A>` to `Take<E, B>` by applying function `f`.
174
+ * Transforms `Take<A, E>` to `Take<B, A>` by applying function `f`.
175
175
  *
176
176
  * @since 2.0.0
177
177
  * @category mapping
178
178
  */
179
179
  export const map: {
180
- <A, B>(f: (a: A) => B): <E>(self: Take<E, A>) => Take<E, B>
181
- <E, A, B>(self: Take<E, A>, f: (a: A) => B): Take<E, B>
180
+ <A, B>(f: (a: A) => B): <E>(self: Take<A, E>) => Take<B, E>
181
+ <A, E, B>(self: Take<A, E>, f: (a: A) => B): Take<B, E>
182
182
  } = internal.map
183
183
 
184
184
  /**
@@ -195,9 +195,9 @@ export const match: {
195
195
  readonly onFailure: (cause: Cause.Cause<E>) => Z2
196
196
  readonly onSuccess: (chunk: Chunk.Chunk<A>) => Z3
197
197
  }
198
- ): (self: Take<E, A>) => Z | Z2 | Z3
199
- <Z, E, Z2, A, Z3>(
200
- self: Take<E, A>,
198
+ ): (self: Take<A, E>) => Z | Z2 | Z3
199
+ <A, E, Z, Z2, Z3>(
200
+ self: Take<A, E>,
201
201
  options: {
202
202
  readonly onEnd: () => Z
203
203
  readonly onFailure: (cause: Cause.Cause<E>) => Z2
@@ -216,21 +216,21 @@ export const match: {
216
216
  * @category destructors
217
217
  */
218
218
  export const matchEffect: {
219
- <R, E2, Z, R2, E, Z2, A, R3, E3, Z3>(
219
+ <Z, E2, R, E, Z2, R2, A, Z3, E3, R3>(
220
220
  options: {
221
- readonly onEnd: Effect.Effect<R, E2, Z>
222
- readonly onFailure: (cause: Cause.Cause<E>) => Effect.Effect<R2, E2, Z2>
223
- readonly onSuccess: (chunk: Chunk.Chunk<A>) => Effect.Effect<R3, E3, Z3>
221
+ readonly onEnd: Effect.Effect<Z, E2, R>
222
+ readonly onFailure: (cause: Cause.Cause<E>) => Effect.Effect<Z2, E2, R2>
223
+ readonly onSuccess: (chunk: Chunk.Chunk<A>) => Effect.Effect<Z3, E3, R3>
224
224
  }
225
- ): (self: Take<E, A>) => Effect.Effect<R | R2 | R3, E2 | E | E3, Z | Z2 | Z3>
226
- <R, E2, Z, R2, E, Z2, A, R3, E3, Z3>(
227
- self: Take<E, A>,
225
+ ): (self: Take<A, E>) => Effect.Effect<Z | Z2 | Z3, E2 | E | E3, R | R2 | R3>
226
+ <A, E, Z, E2, R, Z2, R2, Z3, E3, R3>(
227
+ self: Take<A, E>,
228
228
  options: {
229
- readonly onEnd: Effect.Effect<R, E2, Z>
230
- readonly onFailure: (cause: Cause.Cause<E>) => Effect.Effect<R2, E2, Z2>
231
- readonly onSuccess: (chunk: Chunk.Chunk<A>) => Effect.Effect<R3, E3, Z3>
229
+ readonly onEnd: Effect.Effect<Z, E2, R>
230
+ readonly onFailure: (cause: Cause.Cause<E>) => Effect.Effect<Z2, E2, R2>
231
+ readonly onSuccess: (chunk: Chunk.Chunk<A>) => Effect.Effect<Z3, E3, R3>
232
232
  }
233
- ): Effect.Effect<R | R2 | R3, E2 | E | E3, Z | Z2 | Z3>
233
+ ): Effect.Effect<Z | Z2 | Z3, E | E2 | E3, R | R2 | R3>
234
234
  } = internal.matchEffect
235
235
 
236
236
  /**
@@ -239,7 +239,7 @@ export const matchEffect: {
239
239
  * @since 2.0.0
240
240
  * @category constructors
241
241
  */
242
- export const of: <A>(value: A) => Take<never, A> = internal.of
242
+ export const of: <A>(value: A) => Take<A> = internal.of
243
243
 
244
244
  /**
245
245
  * Returns an effect that effectfully "peeks" at the success of this take.
@@ -248,11 +248,11 @@ export const of: <A>(value: A) => Take<never, A> = internal.of
248
248
  * @category sequencing
249
249
  */
250
250
  export const tap: {
251
- <A, R, E2, _>(
252
- f: (chunk: Chunk.Chunk<A>) => Effect.Effect<R, E2, _>
253
- ): <E>(self: Take<E, A>) => Effect.Effect<R, E2 | E, void>
254
- <E, A, R, E2, _>(
255
- self: Take<E, A>,
256
- f: (chunk: Chunk.Chunk<A>) => Effect.Effect<R, E2, _>
257
- ): Effect.Effect<R, E | E2, void>
251
+ <A, _, E2, R>(
252
+ f: (chunk: Chunk.Chunk<A>) => Effect.Effect<_, E2, R>
253
+ ): <E>(self: Take<A, E>) => Effect.Effect<void, E2 | E, R>
254
+ <A, E, _, E2, R>(
255
+ self: Take<A, E>,
256
+ f: (chunk: Chunk.Chunk<A>) => Effect.Effect<_, E2, R>
257
+ ): Effect.Effect<void, E | E2, R>
258
258
  } = internal.tap
@@ -2,7 +2,6 @@
2
2
  * @since 2.0.0
3
3
  */
4
4
  import * as Chunk from "./Chunk.js"
5
- import * as Context from "./Context.js"
6
5
  import * as Either from "./Either.js"
7
6
  import * as Equal from "./Equal.js"
8
7
  import type * as Fiber from "./Fiber.js"
@@ -34,7 +33,6 @@ export interface TestAnnotation<in out A> extends Equal.Equal {
34
33
  readonly _A: Types.Invariant<A>
35
34
  }
36
35
  readonly identifier: string
37
- readonly tag: Context.Tag<A, A>
38
36
  readonly initial: A
39
37
  combine(a: A, b: A): A
40
38
  }
@@ -46,21 +44,18 @@ class TestAnnotationImpl<A> implements Equal.Equal {
46
44
  }
47
45
  constructor(
48
46
  readonly identifier: string,
49
- readonly tag: Context.Tag<A, A>,
50
47
  readonly initial: A,
51
48
  readonly combine: (a: A, b: A) => A
52
49
  ) {}
53
50
  [Hash.symbol](): number {
54
51
  return pipe(
55
52
  Hash.hash(TestAnnotationSymbolKey),
56
- Hash.combine(Hash.hash(this.identifier)),
57
- Hash.combine(Hash.hash(this.tag))
53
+ Hash.combine(Hash.hash(this.identifier))
58
54
  )
59
55
  }
60
56
  [Equal.symbol](that: unknown): boolean {
61
57
  return isTestAnnotation(that) &&
62
- this.identifier === that.identifier &&
63
- Equal.equals(this.tag, that.tag)
58
+ this.identifier === that.identifier
64
59
  }
65
60
  }
66
61
 
@@ -74,11 +69,10 @@ export const isTestAnnotation = (u: unknown): u is TestAnnotation<unknown> => ha
74
69
  */
75
70
  export const make = <A>(
76
71
  identifier: string,
77
- tag: Context.Tag<A, A>,
78
72
  initial: A,
79
73
  combine: (a: A, b: A) => A
80
74
  ): TestAnnotation<A> => {
81
- return new TestAnnotationImpl(identifier, tag, initial, combine)
75
+ return new TestAnnotationImpl<A>(identifier, initial, combine)
82
76
  }
83
77
 
84
78
  /**
@@ -111,11 +105,10 @@ export const fibers: TestAnnotation<
111
105
  number,
112
106
  Chunk.Chunk<MutableRef.MutableRef<SortedSet.SortedSet<Fiber.RuntimeFiber<unknown, unknown>>>>
113
107
  >
114
- > = make(
108
+ > = make<
109
+ Either.Either<number, Chunk.Chunk<MutableRef.MutableRef<SortedSet.SortedSet<Fiber.RuntimeFiber<unknown, unknown>>>>>
110
+ >(
115
111
  "fibers",
116
- Context.Tag<
117
- Either.Either<number, Chunk.Chunk<MutableRef.MutableRef<SortedSet.SortedSet<Fiber.RuntimeFiber<unknown, unknown>>>>>
118
- >(),
119
112
  Either.left(0),
120
113
  compose
121
114
  )
@@ -127,7 +120,6 @@ export const fibers: TestAnnotation<
127
120
  */
128
121
  export const ignored: TestAnnotation<number> = make(
129
122
  "ignored",
130
- Context.Tag<number>(Symbol.for("effect/TestAnnotation/ignored")),
131
123
  0,
132
124
  (a, b) => a + b
133
125
  )
@@ -139,7 +131,6 @@ export const ignored: TestAnnotation<number> = make(
139
131
  */
140
132
  export const repeated: TestAnnotation<number> = make(
141
133
  "repeated",
142
- Context.Tag<number>(Symbol.for("effect/TestAnnotation/repeated")),
143
134
  0,
144
135
  (a, b) => a + b
145
136
  )
@@ -151,7 +142,6 @@ export const repeated: TestAnnotation<number> = make(
151
142
  */
152
143
  export const retried: TestAnnotation<number> = make(
153
144
  "retried",
154
- Context.Tag<number>(Symbol.for("effect/TestAnnotation/retired")),
155
145
  0,
156
146
  (a, b) => a + b
157
147
  )
@@ -163,7 +153,6 @@ export const retried: TestAnnotation<number> = make(
163
153
  */
164
154
  export const tagged: TestAnnotation<HashSet.HashSet<string>> = make(
165
155
  "tagged",
166
- Context.Tag<HashSet.HashSet<string>>(Symbol.for("effect/TestAnnotation/tagged")),
167
156
  HashSet.empty(),
168
157
  (a, b) => pipe(a, HashSet.union(b))
169
158
  )