effect 2.0.0-next.56 → 2.0.0-next.57

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 (887) hide show
  1. package/dist/cjs/BigDecimal.js +9 -9
  2. package/dist/cjs/BigDecimal.js.map +1 -1
  3. package/dist/cjs/BigInt.js.map +1 -1
  4. package/dist/cjs/Boolean.js.map +1 -1
  5. package/dist/cjs/Brand.js.map +1 -1
  6. package/dist/cjs/Cache.js.map +1 -1
  7. package/dist/cjs/Cause.js.map +1 -1
  8. package/dist/cjs/Channel.js.map +1 -1
  9. package/dist/cjs/Chunk.js +38 -29
  10. package/dist/cjs/Chunk.js.map +1 -1
  11. package/dist/cjs/Config.js +3 -3
  12. package/dist/cjs/Config.js.map +1 -1
  13. package/dist/cjs/Context.js.map +1 -1
  14. package/dist/cjs/Data.js.map +1 -1
  15. package/dist/cjs/Deferred.js.map +1 -1
  16. package/dist/cjs/Differ.js.map +1 -1
  17. package/dist/cjs/Duration.js +45 -2
  18. package/dist/cjs/Duration.js.map +1 -1
  19. package/dist/cjs/Effect.js +6 -11
  20. package/dist/cjs/Effect.js.map +1 -1
  21. package/dist/cjs/Either.js +36 -7
  22. package/dist/cjs/Either.js.map +1 -1
  23. package/dist/cjs/Equal.js.map +1 -1
  24. package/dist/cjs/Equivalence.js +1 -1
  25. package/dist/cjs/Equivalence.js.map +1 -1
  26. package/dist/cjs/Fiber.js.map +1 -1
  27. package/dist/cjs/FiberRef.js +6 -1
  28. package/dist/cjs/FiberRef.js.map +1 -1
  29. package/dist/cjs/Function.js.map +1 -1
  30. package/dist/cjs/GlobalValue.js.map +1 -1
  31. package/dist/cjs/GroupBy.js.map +1 -1
  32. package/dist/cjs/Hash.js.map +1 -1
  33. package/dist/cjs/Inspectable.js +4 -6
  34. package/dist/cjs/Inspectable.js.map +1 -1
  35. package/dist/cjs/KeyedPool.js.map +1 -1
  36. package/dist/cjs/Layer.js +9 -29
  37. package/dist/cjs/Layer.js.map +1 -1
  38. package/dist/cjs/List.js +25 -22
  39. package/dist/cjs/List.js.map +1 -1
  40. package/dist/cjs/LogLevel.js.map +1 -1
  41. package/dist/cjs/Logger.js.map +1 -1
  42. package/dist/cjs/Match.js.map +1 -1
  43. package/dist/cjs/MergeDecision.js.map +1 -1
  44. package/dist/cjs/Metric.js.map +1 -1
  45. package/dist/cjs/MetricHook.js.map +1 -1
  46. package/dist/cjs/MetricKey.js.map +1 -1
  47. package/dist/cjs/MetricKeyType.js.map +1 -1
  48. package/dist/cjs/MetricPair.js.map +1 -1
  49. package/dist/cjs/MetricState.js.map +1 -1
  50. package/dist/cjs/MutableHashMap.js +1 -1
  51. package/dist/cjs/MutableHashMap.js.map +1 -1
  52. package/dist/cjs/MutableHashSet.js +1 -1
  53. package/dist/cjs/MutableHashSet.js.map +1 -1
  54. package/dist/cjs/MutableList.js +1 -1
  55. package/dist/cjs/MutableList.js.map +1 -1
  56. package/dist/cjs/MutableQueue.js +1 -1
  57. package/dist/cjs/MutableQueue.js.map +1 -1
  58. package/dist/cjs/MutableRef.js +1 -1
  59. package/dist/cjs/MutableRef.js.map +1 -1
  60. package/dist/cjs/NonEmptyIterable.js.map +1 -1
  61. package/dist/cjs/Number.js.map +1 -1
  62. package/dist/cjs/Option.js +19 -12
  63. package/dist/cjs/Option.js.map +1 -1
  64. package/dist/cjs/Order.js +1 -1
  65. package/dist/cjs/Order.js.map +1 -1
  66. package/dist/cjs/Ordering.js.map +1 -1
  67. package/dist/cjs/Pipeable.js.map +1 -1
  68. package/dist/cjs/Pool.js +15 -17
  69. package/dist/cjs/Pool.js.map +1 -1
  70. package/dist/cjs/Predicate.js.map +1 -1
  71. package/dist/cjs/PrimaryKey.js +7 -1
  72. package/dist/cjs/PrimaryKey.js.map +1 -1
  73. package/dist/cjs/Queue.js.map +1 -1
  74. package/dist/cjs/ReadonlyArray.js +200 -187
  75. package/dist/cjs/ReadonlyArray.js.map +1 -1
  76. package/dist/cjs/ReadonlyRecord.js +59 -6
  77. package/dist/cjs/ReadonlyRecord.js.map +1 -1
  78. package/dist/cjs/RedBlackTree.js.map +1 -1
  79. package/dist/cjs/Ref.js.map +1 -1
  80. package/dist/cjs/Reloadable.js.map +1 -1
  81. package/dist/cjs/Request.js +8 -1
  82. package/dist/cjs/Request.js.map +1 -1
  83. package/dist/cjs/RequestBlock.js +5 -24
  84. package/dist/cjs/RequestBlock.js.map +1 -1
  85. package/dist/cjs/RequestResolver.js.map +1 -1
  86. package/dist/cjs/Resource.js.map +1 -1
  87. package/dist/cjs/STM.js.map +1 -1
  88. package/dist/cjs/Schedule.js.map +1 -1
  89. package/dist/cjs/Scheduler.js.map +1 -1
  90. package/dist/cjs/ScopedCache.js.map +1 -1
  91. package/dist/cjs/ScopedRef.js.map +1 -1
  92. package/dist/cjs/Sink.js.map +1 -1
  93. package/dist/cjs/SortedMap.js +1 -1
  94. package/dist/cjs/SortedMap.js.map +1 -1
  95. package/dist/cjs/SortedSet.js +1 -1
  96. package/dist/cjs/SortedSet.js.map +1 -1
  97. package/dist/cjs/Stream.js.map +1 -1
  98. package/dist/cjs/Streamable.js +3 -0
  99. package/dist/cjs/Streamable.js.map +1 -1
  100. package/dist/cjs/String.js.map +1 -1
  101. package/dist/cjs/Struct.js.map +1 -1
  102. package/dist/cjs/SubscriptionRef.js.map +1 -1
  103. package/dist/cjs/Supervisor.js.map +1 -1
  104. package/dist/cjs/SynchronizedRef.js.map +1 -1
  105. package/dist/cjs/TArray.js.map +1 -1
  106. package/dist/cjs/TDeferred.js.map +1 -1
  107. package/dist/cjs/TMap.js.map +1 -1
  108. package/dist/cjs/TPriorityQueue.js.map +1 -1
  109. package/dist/cjs/TPubSub.js.map +1 -1
  110. package/dist/cjs/TQueue.js.map +1 -1
  111. package/dist/cjs/TRef.js.map +1 -1
  112. package/dist/cjs/TSet.js.map +1 -1
  113. package/dist/cjs/Take.js.map +1 -1
  114. package/dist/cjs/TestAnnotation.js.map +1 -1
  115. package/dist/cjs/TestAnnotationMap.js.map +1 -1
  116. package/dist/cjs/TestAnnotations.js.map +1 -1
  117. package/dist/cjs/TestClock.js.map +1 -1
  118. package/dist/cjs/TestContext.js +2 -2
  119. package/dist/cjs/TestContext.js.map +1 -1
  120. package/dist/cjs/UpstreamPullRequest.js.map +1 -1
  121. package/dist/cjs/UpstreamPullStrategy.js.map +1 -1
  122. package/dist/cjs/Utils.js.map +1 -1
  123. package/dist/cjs/internal/Iterable.js.map +1 -1
  124. package/dist/cjs/internal/blockedRequests.js +3 -2
  125. package/dist/cjs/internal/blockedRequests.js.map +1 -1
  126. package/dist/cjs/internal/cache.js +3 -0
  127. package/dist/cjs/internal/cache.js.map +1 -1
  128. package/dist/cjs/internal/cause.js +1 -1
  129. package/dist/cjs/internal/cause.js.map +1 -1
  130. package/dist/cjs/internal/channel/channelExecutor.js.map +1 -1
  131. package/dist/cjs/internal/channel/channelState.js +2 -1
  132. package/dist/cjs/internal/channel/channelState.js.map +1 -1
  133. package/dist/cjs/internal/channel/childExecutorDecision.js.map +1 -1
  134. package/dist/cjs/internal/channel/continuation.js +9 -1
  135. package/dist/cjs/internal/channel/continuation.js.map +1 -1
  136. package/dist/cjs/internal/channel/mergeDecision.js.map +1 -1
  137. package/dist/cjs/internal/channel/mergeState.js.map +1 -1
  138. package/dist/cjs/internal/channel/mergeStrategy.js.map +1 -1
  139. package/dist/cjs/internal/channel/singleProducerAsyncInput.js.map +1 -1
  140. package/dist/cjs/internal/channel/subexecutor.js.map +1 -1
  141. package/dist/cjs/internal/channel/upstreamPullRequest.js +1 -1
  142. package/dist/cjs/internal/channel/upstreamPullRequest.js.map +1 -1
  143. package/dist/cjs/internal/channel/upstreamPullStrategy.js +1 -1
  144. package/dist/cjs/internal/channel/upstreamPullStrategy.js.map +1 -1
  145. package/dist/cjs/internal/channel.js.map +1 -1
  146. package/dist/cjs/internal/clock.js.map +1 -1
  147. package/dist/cjs/internal/concurrency.js.map +1 -1
  148. package/dist/cjs/internal/config.js +16 -24
  149. package/dist/cjs/internal/config.js.map +1 -1
  150. package/dist/cjs/internal/configError.js +2 -2
  151. package/dist/cjs/internal/configError.js.map +1 -1
  152. package/dist/cjs/internal/configProvider/pathPatch.js.map +1 -1
  153. package/dist/cjs/internal/configProvider.js +5 -3
  154. package/dist/cjs/internal/configProvider.js.map +1 -1
  155. package/dist/cjs/internal/configSecret.js.map +1 -1
  156. package/dist/cjs/internal/context.js +5 -5
  157. package/dist/cjs/internal/context.js.map +1 -1
  158. package/dist/cjs/internal/core-effect.js +13 -9
  159. package/dist/cjs/internal/core-effect.js.map +1 -1
  160. package/dist/cjs/internal/core-stream.js +7 -1
  161. package/dist/cjs/internal/core-stream.js.map +1 -1
  162. package/dist/cjs/internal/core.js +47 -77
  163. package/dist/cjs/internal/core.js.map +1 -1
  164. package/dist/cjs/internal/data.js.map +1 -1
  165. package/dist/cjs/internal/dataSource.js.map +1 -1
  166. package/dist/cjs/internal/deferred.js +2 -0
  167. package/dist/cjs/internal/deferred.js.map +1 -1
  168. package/dist/cjs/internal/differ/chunkPatch.js.map +1 -1
  169. package/dist/cjs/internal/differ/contextPatch.js.map +1 -1
  170. package/dist/cjs/internal/differ/hashMapPatch.js.map +1 -1
  171. package/dist/cjs/internal/differ/hashSetPatch.js.map +1 -1
  172. package/dist/cjs/internal/differ/orPatch.js.map +1 -1
  173. package/dist/cjs/internal/differ.js.map +1 -1
  174. package/dist/cjs/internal/effect/circular.js +1 -0
  175. package/dist/cjs/internal/effect/circular.js.map +1 -1
  176. package/dist/cjs/internal/effectable.js +18 -5
  177. package/dist/cjs/internal/effectable.js.map +1 -1
  178. package/dist/cjs/internal/either.js +1 -1
  179. package/dist/cjs/internal/either.js.map +1 -1
  180. package/dist/cjs/internal/encoding/base64.js.map +1 -1
  181. package/dist/cjs/internal/encoding/base64Url.js.map +1 -1
  182. package/dist/cjs/internal/encoding/common.js.map +1 -1
  183. package/dist/cjs/internal/encoding/hex.js.map +1 -1
  184. package/dist/cjs/internal/executionStrategy.js.map +1 -1
  185. package/dist/cjs/internal/fiber.js +2 -0
  186. package/dist/cjs/internal/fiber.js.map +1 -1
  187. package/dist/cjs/internal/fiberId.js +3 -3
  188. package/dist/cjs/internal/fiberId.js.map +1 -1
  189. package/dist/cjs/internal/fiberRefs/patch.js.map +1 -1
  190. package/dist/cjs/internal/fiberRefs.js.map +1 -1
  191. package/dist/cjs/internal/fiberRuntime.js +172 -208
  192. package/dist/cjs/internal/fiberRuntime.js.map +1 -1
  193. package/dist/cjs/internal/groupBy.js +4 -1
  194. package/dist/cjs/internal/groupBy.js.map +1 -1
  195. package/dist/cjs/internal/hashMap/array.js.map +1 -1
  196. package/dist/cjs/internal/hashMap/node.js.map +1 -1
  197. package/dist/cjs/internal/hashMap.js +1 -1
  198. package/dist/cjs/internal/hashMap.js.map +1 -1
  199. package/dist/cjs/internal/hashSet.js +1 -1
  200. package/dist/cjs/internal/hashSet.js.map +1 -1
  201. package/dist/cjs/internal/keyedPool.js +3 -0
  202. package/dist/cjs/internal/keyedPool.js.map +1 -1
  203. package/dist/cjs/internal/layer.js +23 -53
  204. package/dist/cjs/internal/layer.js.map +1 -1
  205. package/dist/cjs/internal/logger.js +2 -1
  206. package/dist/cjs/internal/logger.js.map +1 -1
  207. package/dist/cjs/internal/matcher.js.map +1 -1
  208. package/dist/cjs/internal/metric/hook.js +2 -1
  209. package/dist/cjs/internal/metric/hook.js.map +1 -1
  210. package/dist/cjs/internal/metric/key.js +1 -1
  211. package/dist/cjs/internal/metric/key.js.map +1 -1
  212. package/dist/cjs/internal/metric/keyType.js +2 -1
  213. package/dist/cjs/internal/metric/keyType.js.map +1 -1
  214. package/dist/cjs/internal/metric/pair.js +1 -1
  215. package/dist/cjs/internal/metric/pair.js.map +1 -1
  216. package/dist/cjs/internal/metric/polling.js.map +1 -1
  217. package/dist/cjs/internal/metric/registry.js.map +1 -1
  218. package/dist/cjs/internal/metric/state.js +1 -1
  219. package/dist/cjs/internal/metric/state.js.map +1 -1
  220. package/dist/cjs/internal/metric.js +7 -5
  221. package/dist/cjs/internal/metric.js.map +1 -1
  222. package/dist/cjs/internal/opCodes/layer.js +4 -4
  223. package/dist/cjs/internal/opCodes/layer.js.map +1 -1
  224. package/dist/cjs/internal/option.js +1 -1
  225. package/dist/cjs/internal/option.js.map +1 -1
  226. package/dist/cjs/internal/pool.js +2 -0
  227. package/dist/cjs/internal/pool.js.map +1 -1
  228. package/dist/cjs/internal/pubsub.js +1 -1
  229. package/dist/cjs/internal/pubsub.js.map +1 -1
  230. package/dist/cjs/internal/query.js +1 -1
  231. package/dist/cjs/internal/query.js.map +1 -1
  232. package/dist/cjs/internal/queue.js +6 -4
  233. package/dist/cjs/internal/queue.js.map +1 -1
  234. package/dist/cjs/internal/random.js.map +1 -1
  235. package/dist/cjs/internal/redBlackTree/iterator.js.map +1 -1
  236. package/dist/cjs/internal/redBlackTree.js +3 -1
  237. package/dist/cjs/internal/redBlackTree.js.map +1 -1
  238. package/dist/cjs/internal/ref.js +1 -0
  239. package/dist/cjs/internal/ref.js.map +1 -1
  240. package/dist/cjs/internal/reloadable.js +1 -1
  241. package/dist/cjs/internal/reloadable.js.map +1 -1
  242. package/dist/cjs/internal/request.js +5 -2
  243. package/dist/cjs/internal/request.js.map +1 -1
  244. package/dist/cjs/internal/resource.js +2 -1
  245. package/dist/cjs/internal/resource.js.map +1 -1
  246. package/dist/cjs/internal/ringBuffer.js.map +1 -1
  247. package/dist/cjs/internal/runtime.js +1 -1
  248. package/dist/cjs/internal/runtime.js.map +1 -1
  249. package/dist/cjs/internal/runtimeFlags.js.map +1 -1
  250. package/dist/cjs/internal/schedule/interval.js.map +1 -1
  251. package/dist/cjs/internal/schedule/intervals.js.map +1 -1
  252. package/dist/cjs/internal/schedule.js +6 -1
  253. package/dist/cjs/internal/schedule.js.map +1 -1
  254. package/dist/cjs/internal/scopedCache.js +5 -2
  255. package/dist/cjs/internal/scopedCache.js.map +1 -1
  256. package/dist/cjs/internal/scopedRef.js +1 -0
  257. package/dist/cjs/internal/scopedRef.js.map +1 -1
  258. package/dist/cjs/internal/sink.js +5 -1
  259. package/dist/cjs/internal/sink.js.map +1 -1
  260. package/dist/cjs/internal/stm/core.js +3 -1
  261. package/dist/cjs/internal/stm/core.js.map +1 -1
  262. package/dist/cjs/internal/stm/stm/journal.js.map +1 -1
  263. package/dist/cjs/internal/stm/stm/stmState.js.map +1 -1
  264. package/dist/cjs/internal/stm/stm/tExit.js +2 -1
  265. package/dist/cjs/internal/stm/stm/tExit.js.map +1 -1
  266. package/dist/cjs/internal/stm/stm.js.map +1 -1
  267. package/dist/cjs/internal/stm/tArray.js +1 -1
  268. package/dist/cjs/internal/stm/tArray.js.map +1 -1
  269. package/dist/cjs/internal/stm/tMap.js +2 -1
  270. package/dist/cjs/internal/stm/tMap.js.map +1 -1
  271. package/dist/cjs/internal/stm/tPriorityQueue.js +1 -1
  272. package/dist/cjs/internal/stm/tPriorityQueue.js.map +1 -1
  273. package/dist/cjs/internal/stm/tPubSub.js.map +1 -1
  274. package/dist/cjs/internal/stm/tQueue.js +2 -0
  275. package/dist/cjs/internal/stm/tQueue.js.map +1 -1
  276. package/dist/cjs/internal/stm/tRandom.js.map +1 -1
  277. package/dist/cjs/internal/stm/tReentrantLock.js.map +1 -1
  278. package/dist/cjs/internal/stm/tRef.js +1 -1
  279. package/dist/cjs/internal/stm/tRef.js.map +1 -1
  280. package/dist/cjs/internal/stm/tSemaphore.js.map +1 -1
  281. package/dist/cjs/internal/stm/tSet.js +1 -1
  282. package/dist/cjs/internal/stm/tSet.js.map +1 -1
  283. package/dist/cjs/internal/stream/haltStrategy.js.map +1 -1
  284. package/dist/cjs/internal/stream/handoff.js +1 -1
  285. package/dist/cjs/internal/stream/handoff.js.map +1 -1
  286. package/dist/cjs/internal/stream.js +1 -1
  287. package/dist/cjs/internal/stream.js.map +1 -1
  288. package/dist/cjs/internal/string-utils.js.map +1 -1
  289. package/dist/cjs/internal/subscriptionRef.js +1 -1
  290. package/dist/cjs/internal/subscriptionRef.js.map +1 -1
  291. package/dist/cjs/internal/supervisor/patch.js.map +1 -1
  292. package/dist/cjs/internal/supervisor.js +1 -0
  293. package/dist/cjs/internal/supervisor.js.map +1 -1
  294. package/dist/cjs/internal/synchronizedRef.js.map +1 -1
  295. package/dist/cjs/internal/take.js +2 -1
  296. package/dist/cjs/internal/take.js.map +1 -1
  297. package/dist/cjs/internal/version.js +1 -1
  298. package/dist/dts/BigDecimal.d.ts +5 -5
  299. package/dist/dts/BigDecimal.d.ts.map +1 -1
  300. package/dist/dts/Cache.d.ts +4 -3
  301. package/dist/dts/Cache.d.ts.map +1 -1
  302. package/dist/dts/Cause.d.ts +2 -1
  303. package/dist/dts/Cause.d.ts.map +1 -1
  304. package/dist/dts/Channel.d.ts +8 -7
  305. package/dist/dts/Channel.d.ts.map +1 -1
  306. package/dist/dts/Chunk.d.ts +55 -45
  307. package/dist/dts/Chunk.d.ts.map +1 -1
  308. package/dist/dts/Config.d.ts +16 -15
  309. package/dist/dts/Config.d.ts.map +1 -1
  310. package/dist/dts/Context.d.ts +4 -3
  311. package/dist/dts/Context.d.ts.map +1 -1
  312. package/dist/dts/Data.d.ts +4 -4
  313. package/dist/dts/Data.d.ts.map +1 -1
  314. package/dist/dts/Deferred.d.ts +3 -2
  315. package/dist/dts/Deferred.d.ts.map +1 -1
  316. package/dist/dts/Differ.d.ts +15 -14
  317. package/dist/dts/Differ.d.ts.map +1 -1
  318. package/dist/dts/Duration.d.ts +11 -0
  319. package/dist/dts/Duration.d.ts.map +1 -1
  320. package/dist/dts/Effect.d.ts +30 -27
  321. package/dist/dts/Effect.d.ts.map +1 -1
  322. package/dist/dts/Either.d.ts +46 -10
  323. package/dist/dts/Either.d.ts.map +1 -1
  324. package/dist/dts/Equivalence.d.ts +1 -1
  325. package/dist/dts/Fiber.d.ts +5 -4
  326. package/dist/dts/Fiber.d.ts.map +1 -1
  327. package/dist/dts/FiberRef.d.ts +7 -1
  328. package/dist/dts/FiberRef.d.ts.map +1 -1
  329. package/dist/dts/GroupBy.d.ts +5 -4
  330. package/dist/dts/GroupBy.d.ts.map +1 -1
  331. package/dist/dts/HKT.d.ts +5 -4
  332. package/dist/dts/HKT.d.ts.map +1 -1
  333. package/dist/dts/Inspectable.d.ts +0 -4
  334. package/dist/dts/Inspectable.d.ts.map +1 -1
  335. package/dist/dts/KeyedPool.d.ts +4 -3
  336. package/dist/dts/KeyedPool.d.ts.map +1 -1
  337. package/dist/dts/Layer.d.ts +14 -39
  338. package/dist/dts/Layer.d.ts.map +1 -1
  339. package/dist/dts/List.d.ts +32 -33
  340. package/dist/dts/List.d.ts.map +1 -1
  341. package/dist/dts/Logger.d.ts +3 -2
  342. package/dist/dts/Logger.d.ts.map +1 -1
  343. package/dist/dts/Match.d.ts +20 -8
  344. package/dist/dts/Match.d.ts.map +1 -1
  345. package/dist/dts/MergeDecision.d.ts +6 -5
  346. package/dist/dts/MergeDecision.d.ts.map +1 -1
  347. package/dist/dts/Metric.d.ts +6 -5
  348. package/dist/dts/Metric.d.ts.map +1 -1
  349. package/dist/dts/MetricHook.d.ts +3 -2
  350. package/dist/dts/MetricHook.d.ts.map +1 -1
  351. package/dist/dts/MetricKey.d.ts +2 -1
  352. package/dist/dts/MetricKey.d.ts.map +1 -1
  353. package/dist/dts/MetricKeyType.d.ts +3 -2
  354. package/dist/dts/MetricKeyType.d.ts.map +1 -1
  355. package/dist/dts/MetricPair.d.ts +2 -1
  356. package/dist/dts/MetricPair.d.ts.map +1 -1
  357. package/dist/dts/MetricState.d.ts +2 -1
  358. package/dist/dts/MetricState.d.ts.map +1 -1
  359. package/dist/dts/MutableHashMap.d.ts.map +1 -1
  360. package/dist/dts/MutableHashSet.d.ts.map +1 -1
  361. package/dist/dts/MutableQueue.d.ts.map +1 -1
  362. package/dist/dts/MutableRef.d.ts.map +1 -1
  363. package/dist/dts/Option.d.ts +26 -13
  364. package/dist/dts/Option.d.ts.map +1 -1
  365. package/dist/dts/Order.d.ts +1 -1
  366. package/dist/dts/Pool.d.ts +18 -19
  367. package/dist/dts/Pool.d.ts.map +1 -1
  368. package/dist/dts/PrimaryKey.d.ts +5 -0
  369. package/dist/dts/PrimaryKey.d.ts.map +1 -1
  370. package/dist/dts/Queue.d.ts +5 -4
  371. package/dist/dts/Queue.d.ts.map +1 -1
  372. package/dist/dts/ReadonlyArray.d.ts +134 -170
  373. package/dist/dts/ReadonlyArray.d.ts.map +1 -1
  374. package/dist/dts/ReadonlyRecord.d.ts +38 -5
  375. package/dist/dts/ReadonlyRecord.d.ts.map +1 -1
  376. package/dist/dts/RedBlackTree.d.ts +3 -2
  377. package/dist/dts/RedBlackTree.d.ts.map +1 -1
  378. package/dist/dts/Ref.d.ts +2 -1
  379. package/dist/dts/Ref.d.ts.map +1 -1
  380. package/dist/dts/Reloadable.d.ts +2 -1
  381. package/dist/dts/Reloadable.d.ts.map +1 -1
  382. package/dist/dts/Request.d.ts +14 -3
  383. package/dist/dts/Request.d.ts.map +1 -1
  384. package/dist/dts/RequestBlock.d.ts +17 -36
  385. package/dist/dts/RequestBlock.d.ts.map +1 -1
  386. package/dist/dts/RequestResolver.d.ts +3 -2
  387. package/dist/dts/RequestResolver.d.ts.map +1 -1
  388. package/dist/dts/Resource.d.ts +3 -2
  389. package/dist/dts/Resource.d.ts.map +1 -1
  390. package/dist/dts/STM.d.ts +4 -3
  391. package/dist/dts/STM.d.ts.map +1 -1
  392. package/dist/dts/Schedule.d.ts +7 -6
  393. package/dist/dts/Schedule.d.ts.map +1 -1
  394. package/dist/dts/ScopedCache.d.ts +4 -3
  395. package/dist/dts/ScopedCache.d.ts.map +1 -1
  396. package/dist/dts/ScopedRef.d.ts +2 -1
  397. package/dist/dts/ScopedRef.d.ts.map +1 -1
  398. package/dist/dts/Sink.d.ts +6 -5
  399. package/dist/dts/Sink.d.ts.map +1 -1
  400. package/dist/dts/SortedMap.d.ts +3 -2
  401. package/dist/dts/SortedMap.d.ts.map +1 -1
  402. package/dist/dts/SortedSet.d.ts +2 -1
  403. package/dist/dts/SortedSet.d.ts.map +1 -1
  404. package/dist/dts/Stream.d.ts +5 -4
  405. package/dist/dts/Stream.d.ts.map +1 -1
  406. package/dist/dts/Streamable.d.ts.map +1 -1
  407. package/dist/dts/SubscriptionRef.d.ts +2 -1
  408. package/dist/dts/SubscriptionRef.d.ts.map +1 -1
  409. package/dist/dts/Supervisor.d.ts +2 -1
  410. package/dist/dts/Supervisor.d.ts.map +1 -1
  411. package/dist/dts/SynchronizedRef.d.ts +2 -1
  412. package/dist/dts/SynchronizedRef.d.ts.map +1 -1
  413. package/dist/dts/TArray.d.ts +2 -1
  414. package/dist/dts/TArray.d.ts.map +1 -1
  415. package/dist/dts/TDeferred.d.ts +3 -2
  416. package/dist/dts/TDeferred.d.ts.map +1 -1
  417. package/dist/dts/TMap.d.ts +3 -2
  418. package/dist/dts/TMap.d.ts.map +1 -1
  419. package/dist/dts/TPriorityQueue.d.ts +2 -1
  420. package/dist/dts/TPriorityQueue.d.ts.map +1 -1
  421. package/dist/dts/TPubSub.d.ts +2 -1
  422. package/dist/dts/TPubSub.d.ts.map +1 -1
  423. package/dist/dts/TQueue.d.ts +3 -2
  424. package/dist/dts/TQueue.d.ts.map +1 -1
  425. package/dist/dts/TRef.d.ts +2 -1
  426. package/dist/dts/TRef.d.ts.map +1 -1
  427. package/dist/dts/TSet.d.ts +2 -1
  428. package/dist/dts/TSet.d.ts.map +1 -1
  429. package/dist/dts/Take.d.ts +3 -2
  430. package/dist/dts/Take.d.ts.map +1 -1
  431. package/dist/dts/TestAnnotation.d.ts +2 -1
  432. package/dist/dts/TestAnnotation.d.ts.map +1 -1
  433. package/dist/dts/TestContext.d.ts.map +1 -1
  434. package/dist/dts/Types.d.ts +21 -0
  435. package/dist/dts/Types.d.ts.map +1 -1
  436. package/dist/dts/UpstreamPullRequest.d.ts +2 -1
  437. package/dist/dts/UpstreamPullRequest.d.ts.map +1 -1
  438. package/dist/dts/UpstreamPullStrategy.d.ts +2 -1
  439. package/dist/dts/UpstreamPullStrategy.d.ts.map +1 -1
  440. package/dist/dts/Utils.d.ts +6 -5
  441. package/dist/dts/Utils.d.ts.map +1 -1
  442. package/dist/dts/internal/config.d.ts +1 -2
  443. package/dist/dts/internal/config.d.ts.map +1 -1
  444. package/dist/dts/internal/core-stream.d.ts.map +1 -1
  445. package/dist/dts/internal/logger.d.ts.map +1 -1
  446. package/dist/dts/internal/metric/keyType.d.ts.map +1 -1
  447. package/dist/dts/internal/version.d.ts +1 -1
  448. package/dist/esm/BigDecimal.js +7 -7
  449. package/dist/esm/BigDecimal.js.map +1 -1
  450. package/dist/esm/BigInt.js.map +1 -1
  451. package/dist/esm/Boolean.js.map +1 -1
  452. package/dist/esm/Brand.js.map +1 -1
  453. package/dist/esm/Cache.js.map +1 -1
  454. package/dist/esm/Cause.js.map +1 -1
  455. package/dist/esm/Channel.js.map +1 -1
  456. package/dist/esm/Chunk.js +38 -29
  457. package/dist/esm/Chunk.js.map +1 -1
  458. package/dist/esm/Config.js +3 -3
  459. package/dist/esm/Config.js.map +1 -1
  460. package/dist/esm/Context.js.map +1 -1
  461. package/dist/esm/Data.js.map +1 -1
  462. package/dist/esm/Deferred.js.map +1 -1
  463. package/dist/esm/Differ.js.map +1 -1
  464. package/dist/esm/Duration.js +44 -2
  465. package/dist/esm/Duration.js.map +1 -1
  466. package/dist/esm/Effect.js +2 -7
  467. package/dist/esm/Effect.js.map +1 -1
  468. package/dist/esm/Either.js +35 -6
  469. package/dist/esm/Either.js.map +1 -1
  470. package/dist/esm/Equal.js.map +1 -1
  471. package/dist/esm/Equivalence.js +1 -1
  472. package/dist/esm/Equivalence.js.map +1 -1
  473. package/dist/esm/Fiber.js.map +1 -1
  474. package/dist/esm/FiberRef.js +5 -0
  475. package/dist/esm/FiberRef.js.map +1 -1
  476. package/dist/esm/Function.js.map +1 -1
  477. package/dist/esm/GlobalValue.js.map +1 -1
  478. package/dist/esm/GroupBy.js.map +1 -1
  479. package/dist/esm/HKT.js +0 -3
  480. package/dist/esm/HKT.js.map +1 -1
  481. package/dist/esm/Hash.js.map +1 -1
  482. package/dist/esm/Inspectable.js +2 -4
  483. package/dist/esm/Inspectable.js.map +1 -1
  484. package/dist/esm/KeyedPool.js.map +1 -1
  485. package/dist/esm/Layer.js +8 -28
  486. package/dist/esm/Layer.js.map +1 -1
  487. package/dist/esm/List.js +25 -22
  488. package/dist/esm/List.js.map +1 -1
  489. package/dist/esm/LogLevel.js.map +1 -1
  490. package/dist/esm/Logger.js.map +1 -1
  491. package/dist/esm/Match.js.map +1 -1
  492. package/dist/esm/MergeDecision.js.map +1 -1
  493. package/dist/esm/Metric.js.map +1 -1
  494. package/dist/esm/MetricHook.js.map +1 -1
  495. package/dist/esm/MetricKey.js.map +1 -1
  496. package/dist/esm/MetricKeyType.js.map +1 -1
  497. package/dist/esm/MetricPair.js.map +1 -1
  498. package/dist/esm/MetricState.js.map +1 -1
  499. package/dist/esm/MutableHashMap.js +2 -2
  500. package/dist/esm/MutableHashMap.js.map +1 -1
  501. package/dist/esm/MutableHashSet.js +2 -2
  502. package/dist/esm/MutableHashSet.js.map +1 -1
  503. package/dist/esm/MutableList.js +2 -2
  504. package/dist/esm/MutableList.js.map +1 -1
  505. package/dist/esm/MutableQueue.js +2 -2
  506. package/dist/esm/MutableQueue.js.map +1 -1
  507. package/dist/esm/MutableRef.js +2 -2
  508. package/dist/esm/MutableRef.js.map +1 -1
  509. package/dist/esm/NonEmptyIterable.js.map +1 -1
  510. package/dist/esm/Number.js.map +1 -1
  511. package/dist/esm/Option.js +19 -12
  512. package/dist/esm/Option.js.map +1 -1
  513. package/dist/esm/Order.js +1 -1
  514. package/dist/esm/Order.js.map +1 -1
  515. package/dist/esm/Ordering.js.map +1 -1
  516. package/dist/esm/Pipeable.js.map +1 -1
  517. package/dist/esm/Pool.js +15 -17
  518. package/dist/esm/Pool.js.map +1 -1
  519. package/dist/esm/Predicate.js.map +1 -1
  520. package/dist/esm/PrimaryKey.js +5 -0
  521. package/dist/esm/PrimaryKey.js.map +1 -1
  522. package/dist/esm/Queue.js.map +1 -1
  523. package/dist/esm/ReadonlyArray.js +193 -177
  524. package/dist/esm/ReadonlyArray.js.map +1 -1
  525. package/dist/esm/ReadonlyRecord.js +56 -5
  526. package/dist/esm/ReadonlyRecord.js.map +1 -1
  527. package/dist/esm/RedBlackTree.js.map +1 -1
  528. package/dist/esm/Ref.js.map +1 -1
  529. package/dist/esm/Reloadable.js.map +1 -1
  530. package/dist/esm/Request.js +7 -0
  531. package/dist/esm/Request.js.map +1 -1
  532. package/dist/esm/RequestBlock.js +3 -22
  533. package/dist/esm/RequestBlock.js.map +1 -1
  534. package/dist/esm/RequestResolver.js.map +1 -1
  535. package/dist/esm/Resource.js.map +1 -1
  536. package/dist/esm/STM.js.map +1 -1
  537. package/dist/esm/Schedule.js.map +1 -1
  538. package/dist/esm/Scheduler.js.map +1 -1
  539. package/dist/esm/ScopedCache.js.map +1 -1
  540. package/dist/esm/ScopedRef.js.map +1 -1
  541. package/dist/esm/Sink.js.map +1 -1
  542. package/dist/esm/SortedMap.js +2 -2
  543. package/dist/esm/SortedMap.js.map +1 -1
  544. package/dist/esm/SortedSet.js +2 -2
  545. package/dist/esm/SortedSet.js.map +1 -1
  546. package/dist/esm/Stream.js.map +1 -1
  547. package/dist/esm/Streamable.js +3 -0
  548. package/dist/esm/Streamable.js.map +1 -1
  549. package/dist/esm/String.js.map +1 -1
  550. package/dist/esm/Struct.js.map +1 -1
  551. package/dist/esm/SubscriptionRef.js.map +1 -1
  552. package/dist/esm/Supervisor.js.map +1 -1
  553. package/dist/esm/SynchronizedRef.js.map +1 -1
  554. package/dist/esm/TArray.js.map +1 -1
  555. package/dist/esm/TDeferred.js.map +1 -1
  556. package/dist/esm/TMap.js.map +1 -1
  557. package/dist/esm/TPriorityQueue.js.map +1 -1
  558. package/dist/esm/TPubSub.js.map +1 -1
  559. package/dist/esm/TQueue.js.map +1 -1
  560. package/dist/esm/TRef.js.map +1 -1
  561. package/dist/esm/TSet.js.map +1 -1
  562. package/dist/esm/Take.js.map +1 -1
  563. package/dist/esm/TestAnnotation.js.map +1 -1
  564. package/dist/esm/TestAnnotationMap.js.map +1 -1
  565. package/dist/esm/TestAnnotations.js.map +1 -1
  566. package/dist/esm/TestClock.js.map +1 -1
  567. package/dist/esm/TestContext.js +2 -2
  568. package/dist/esm/TestContext.js.map +1 -1
  569. package/dist/esm/UpstreamPullRequest.js.map +1 -1
  570. package/dist/esm/UpstreamPullStrategy.js.map +1 -1
  571. package/dist/esm/Utils.js.map +1 -1
  572. package/dist/esm/internal/Iterable.js.map +1 -1
  573. package/dist/esm/internal/blockedRequests.js +3 -2
  574. package/dist/esm/internal/blockedRequests.js.map +1 -1
  575. package/dist/esm/internal/cache.js +3 -0
  576. package/dist/esm/internal/cache.js.map +1 -1
  577. package/dist/esm/internal/cause.js +1 -1
  578. package/dist/esm/internal/cause.js.map +1 -1
  579. package/dist/esm/internal/channel/channelExecutor.js.map +1 -1
  580. package/dist/esm/internal/channel/channelState.js +2 -1
  581. package/dist/esm/internal/channel/channelState.js.map +1 -1
  582. package/dist/esm/internal/channel/childExecutorDecision.js.map +1 -1
  583. package/dist/esm/internal/channel/continuation.js +9 -1
  584. package/dist/esm/internal/channel/continuation.js.map +1 -1
  585. package/dist/esm/internal/channel/mergeDecision.js.map +1 -1
  586. package/dist/esm/internal/channel/mergeState.js.map +1 -1
  587. package/dist/esm/internal/channel/mergeStrategy.js.map +1 -1
  588. package/dist/esm/internal/channel/singleProducerAsyncInput.js.map +1 -1
  589. package/dist/esm/internal/channel/subexecutor.js.map +1 -1
  590. package/dist/esm/internal/channel/upstreamPullRequest.js +1 -1
  591. package/dist/esm/internal/channel/upstreamPullRequest.js.map +1 -1
  592. package/dist/esm/internal/channel/upstreamPullStrategy.js +1 -1
  593. package/dist/esm/internal/channel/upstreamPullStrategy.js.map +1 -1
  594. package/dist/esm/internal/channel.js.map +1 -1
  595. package/dist/esm/internal/clock.js.map +1 -1
  596. package/dist/esm/internal/concurrency.js.map +1 -1
  597. package/dist/esm/internal/config.js +15 -22
  598. package/dist/esm/internal/config.js.map +1 -1
  599. package/dist/esm/internal/configError.js +2 -2
  600. package/dist/esm/internal/configError.js.map +1 -1
  601. package/dist/esm/internal/configProvider/pathPatch.js.map +1 -1
  602. package/dist/esm/internal/configProvider.js +5 -3
  603. package/dist/esm/internal/configProvider.js.map +1 -1
  604. package/dist/esm/internal/configSecret.js.map +1 -1
  605. package/dist/esm/internal/context.js +6 -6
  606. package/dist/esm/internal/context.js.map +1 -1
  607. package/dist/esm/internal/core-effect.js +13 -9
  608. package/dist/esm/internal/core-effect.js.map +1 -1
  609. package/dist/esm/internal/core-stream.js +7 -1
  610. package/dist/esm/internal/core-stream.js.map +1 -1
  611. package/dist/esm/internal/core.js +46 -75
  612. package/dist/esm/internal/core.js.map +1 -1
  613. package/dist/esm/internal/data.js.map +1 -1
  614. package/dist/esm/internal/dataSource.js.map +1 -1
  615. package/dist/esm/internal/deferred.js +2 -0
  616. package/dist/esm/internal/deferred.js.map +1 -1
  617. package/dist/esm/internal/differ/chunkPatch.js.map +1 -1
  618. package/dist/esm/internal/differ/contextPatch.js.map +1 -1
  619. package/dist/esm/internal/differ/hashMapPatch.js.map +1 -1
  620. package/dist/esm/internal/differ/hashSetPatch.js.map +1 -1
  621. package/dist/esm/internal/differ/orPatch.js.map +1 -1
  622. package/dist/esm/internal/differ.js.map +1 -1
  623. package/dist/esm/internal/effect/circular.js +1 -0
  624. package/dist/esm/internal/effect/circular.js.map +1 -1
  625. package/dist/esm/internal/effectable.js +17 -4
  626. package/dist/esm/internal/effectable.js.map +1 -1
  627. package/dist/esm/internal/either.js +2 -2
  628. package/dist/esm/internal/either.js.map +1 -1
  629. package/dist/esm/internal/encoding/base64.js.map +1 -1
  630. package/dist/esm/internal/encoding/base64Url.js.map +1 -1
  631. package/dist/esm/internal/encoding/common.js.map +1 -1
  632. package/dist/esm/internal/encoding/hex.js.map +1 -1
  633. package/dist/esm/internal/executionStrategy.js.map +1 -1
  634. package/dist/esm/internal/fiber.js +2 -0
  635. package/dist/esm/internal/fiber.js.map +1 -1
  636. package/dist/esm/internal/fiberId.js +4 -4
  637. package/dist/esm/internal/fiberId.js.map +1 -1
  638. package/dist/esm/internal/fiberRefs/patch.js.map +1 -1
  639. package/dist/esm/internal/fiberRefs.js.map +1 -1
  640. package/dist/esm/internal/fiberRuntime.js +169 -205
  641. package/dist/esm/internal/fiberRuntime.js.map +1 -1
  642. package/dist/esm/internal/groupBy.js +4 -1
  643. package/dist/esm/internal/groupBy.js.map +1 -1
  644. package/dist/esm/internal/hashMap/array.js.map +1 -1
  645. package/dist/esm/internal/hashMap/node.js.map +1 -1
  646. package/dist/esm/internal/hashMap.js +2 -2
  647. package/dist/esm/internal/hashMap.js.map +1 -1
  648. package/dist/esm/internal/hashSet.js +2 -2
  649. package/dist/esm/internal/hashSet.js.map +1 -1
  650. package/dist/esm/internal/keyedPool.js +3 -0
  651. package/dist/esm/internal/keyedPool.js.map +1 -1
  652. package/dist/esm/internal/layer.js +22 -52
  653. package/dist/esm/internal/layer.js.map +1 -1
  654. package/dist/esm/internal/logger.js +2 -1
  655. package/dist/esm/internal/logger.js.map +1 -1
  656. package/dist/esm/internal/matcher.js.map +1 -1
  657. package/dist/esm/internal/metric/hook.js +2 -1
  658. package/dist/esm/internal/metric/hook.js.map +1 -1
  659. package/dist/esm/internal/metric/key.js +1 -1
  660. package/dist/esm/internal/metric/key.js.map +1 -1
  661. package/dist/esm/internal/metric/keyType.js +2 -1
  662. package/dist/esm/internal/metric/keyType.js.map +1 -1
  663. package/dist/esm/internal/metric/pair.js +1 -1
  664. package/dist/esm/internal/metric/pair.js.map +1 -1
  665. package/dist/esm/internal/metric/polling.js.map +1 -1
  666. package/dist/esm/internal/metric/registry.js.map +1 -1
  667. package/dist/esm/internal/metric/state.js +1 -1
  668. package/dist/esm/internal/metric/state.js.map +1 -1
  669. package/dist/esm/internal/metric.js +7 -5
  670. package/dist/esm/internal/metric.js.map +1 -1
  671. package/dist/esm/internal/opCodes/layer.js +3 -3
  672. package/dist/esm/internal/opCodes/layer.js.map +1 -1
  673. package/dist/esm/internal/option.js +2 -2
  674. package/dist/esm/internal/option.js.map +1 -1
  675. package/dist/esm/internal/pool.js +2 -0
  676. package/dist/esm/internal/pool.js.map +1 -1
  677. package/dist/esm/internal/pubsub.js +1 -1
  678. package/dist/esm/internal/pubsub.js.map +1 -1
  679. package/dist/esm/internal/query.js +1 -1
  680. package/dist/esm/internal/query.js.map +1 -1
  681. package/dist/esm/internal/queue.js +6 -4
  682. package/dist/esm/internal/queue.js.map +1 -1
  683. package/dist/esm/internal/random.js.map +1 -1
  684. package/dist/esm/internal/redBlackTree/iterator.js.map +1 -1
  685. package/dist/esm/internal/redBlackTree.js +4 -2
  686. package/dist/esm/internal/redBlackTree.js.map +1 -1
  687. package/dist/esm/internal/ref.js +1 -0
  688. package/dist/esm/internal/ref.js.map +1 -1
  689. package/dist/esm/internal/reloadable.js +1 -1
  690. package/dist/esm/internal/reloadable.js.map +1 -1
  691. package/dist/esm/internal/request.js +4 -1
  692. package/dist/esm/internal/request.js.map +1 -1
  693. package/dist/esm/internal/resource.js +2 -1
  694. package/dist/esm/internal/resource.js.map +1 -1
  695. package/dist/esm/internal/ringBuffer.js.map +1 -1
  696. package/dist/esm/internal/runtime.js +2 -2
  697. package/dist/esm/internal/runtime.js.map +1 -1
  698. package/dist/esm/internal/runtimeFlags.js.map +1 -1
  699. package/dist/esm/internal/schedule/interval.js.map +1 -1
  700. package/dist/esm/internal/schedule/intervals.js.map +1 -1
  701. package/dist/esm/internal/schedule.js +6 -1
  702. package/dist/esm/internal/schedule.js.map +1 -1
  703. package/dist/esm/internal/scopedCache.js +5 -2
  704. package/dist/esm/internal/scopedCache.js.map +1 -1
  705. package/dist/esm/internal/scopedRef.js +1 -0
  706. package/dist/esm/internal/scopedRef.js.map +1 -1
  707. package/dist/esm/internal/sink.js +5 -1
  708. package/dist/esm/internal/sink.js.map +1 -1
  709. package/dist/esm/internal/stm/core.js +3 -1
  710. package/dist/esm/internal/stm/core.js.map +1 -1
  711. package/dist/esm/internal/stm/stm/journal.js.map +1 -1
  712. package/dist/esm/internal/stm/stm/stmState.js.map +1 -1
  713. package/dist/esm/internal/stm/stm/tExit.js +2 -1
  714. package/dist/esm/internal/stm/stm/tExit.js.map +1 -1
  715. package/dist/esm/internal/stm/stm.js.map +1 -1
  716. package/dist/esm/internal/stm/tArray.js +1 -1
  717. package/dist/esm/internal/stm/tArray.js.map +1 -1
  718. package/dist/esm/internal/stm/tMap.js +2 -1
  719. package/dist/esm/internal/stm/tMap.js.map +1 -1
  720. package/dist/esm/internal/stm/tPriorityQueue.js +1 -1
  721. package/dist/esm/internal/stm/tPriorityQueue.js.map +1 -1
  722. package/dist/esm/internal/stm/tPubSub.js.map +1 -1
  723. package/dist/esm/internal/stm/tQueue.js +2 -0
  724. package/dist/esm/internal/stm/tQueue.js.map +1 -1
  725. package/dist/esm/internal/stm/tRandom.js.map +1 -1
  726. package/dist/esm/internal/stm/tReentrantLock.js.map +1 -1
  727. package/dist/esm/internal/stm/tRef.js +1 -1
  728. package/dist/esm/internal/stm/tRef.js.map +1 -1
  729. package/dist/esm/internal/stm/tSemaphore.js.map +1 -1
  730. package/dist/esm/internal/stm/tSet.js +1 -1
  731. package/dist/esm/internal/stm/tSet.js.map +1 -1
  732. package/dist/esm/internal/stream/haltStrategy.js.map +1 -1
  733. package/dist/esm/internal/stream/handoff.js +1 -1
  734. package/dist/esm/internal/stream/handoff.js.map +1 -1
  735. package/dist/esm/internal/stream.js +1 -1
  736. package/dist/esm/internal/stream.js.map +1 -1
  737. package/dist/esm/internal/string-utils.js.map +1 -1
  738. package/dist/esm/internal/subscriptionRef.js +1 -1
  739. package/dist/esm/internal/subscriptionRef.js.map +1 -1
  740. package/dist/esm/internal/supervisor/patch.js.map +1 -1
  741. package/dist/esm/internal/supervisor.js +1 -0
  742. package/dist/esm/internal/supervisor.js.map +1 -1
  743. package/dist/esm/internal/synchronizedRef.js.map +1 -1
  744. package/dist/esm/internal/take.js +2 -1
  745. package/dist/esm/internal/take.js.map +1 -1
  746. package/dist/esm/internal/version.js +1 -1
  747. package/package.json +1 -1
  748. package/src/BigDecimal.ts +7 -7
  749. package/src/Cache.ts +4 -3
  750. package/src/Cause.ts +2 -1
  751. package/src/Channel.ts +8 -7
  752. package/src/Chunk.ts +66 -57
  753. package/src/Config.ts +16 -16
  754. package/src/Context.ts +4 -3
  755. package/src/Data.ts +4 -4
  756. package/src/Deferred.ts +3 -2
  757. package/src/Differ.ts +15 -14
  758. package/src/Duration.ts +54 -2
  759. package/src/Effect.ts +18 -29
  760. package/src/Either.ts +65 -10
  761. package/src/Equivalence.ts +1 -1
  762. package/src/Fiber.ts +5 -4
  763. package/src/FiberRef.ts +8 -1
  764. package/src/GroupBy.ts +5 -4
  765. package/src/HKT.ts +5 -4
  766. package/src/Inspectable.ts +2 -4
  767. package/src/KeyedPool.ts +4 -3
  768. package/src/Layer.ts +19 -56
  769. package/src/List.ts +44 -43
  770. package/src/Logger.ts +3 -2
  771. package/src/Match.ts +50 -38
  772. package/src/MergeDecision.ts +6 -5
  773. package/src/Metric.ts +8 -5
  774. package/src/MetricHook.ts +3 -2
  775. package/src/MetricKey.ts +2 -1
  776. package/src/MetricKeyType.ts +3 -2
  777. package/src/MetricPair.ts +2 -1
  778. package/src/MetricState.ts +2 -1
  779. package/src/MutableHashMap.ts +2 -2
  780. package/src/MutableHashSet.ts +2 -2
  781. package/src/MutableList.ts +2 -2
  782. package/src/MutableQueue.ts +2 -2
  783. package/src/MutableRef.ts +2 -2
  784. package/src/Option.ts +32 -14
  785. package/src/Order.ts +1 -1
  786. package/src/Pool.ts +18 -19
  787. package/src/PrimaryKey.ts +6 -0
  788. package/src/Queue.ts +5 -4
  789. package/src/ReadonlyArray.ts +300 -324
  790. package/src/ReadonlyRecord.ts +60 -5
  791. package/src/RedBlackTree.ts +3 -2
  792. package/src/Ref.ts +2 -1
  793. package/src/Reloadable.ts +2 -1
  794. package/src/Request.ts +15 -3
  795. package/src/RequestBlock.ts +22 -61
  796. package/src/RequestResolver.ts +3 -2
  797. package/src/Resource.ts +3 -2
  798. package/src/STM.ts +4 -3
  799. package/src/Schedule.ts +7 -6
  800. package/src/ScopedCache.ts +4 -3
  801. package/src/ScopedRef.ts +2 -1
  802. package/src/Sink.ts +6 -5
  803. package/src/SortedMap.ts +5 -4
  804. package/src/SortedSet.ts +4 -3
  805. package/src/Stream.ts +5 -4
  806. package/src/Streamable.ts +3 -0
  807. package/src/SubscriptionRef.ts +2 -1
  808. package/src/Supervisor.ts +2 -1
  809. package/src/SynchronizedRef.ts +2 -1
  810. package/src/TArray.ts +2 -1
  811. package/src/TDeferred.ts +3 -2
  812. package/src/TMap.ts +3 -2
  813. package/src/TPriorityQueue.ts +2 -1
  814. package/src/TPubSub.ts +2 -1
  815. package/src/TQueue.ts +3 -2
  816. package/src/TRef.ts +2 -1
  817. package/src/TSet.ts +2 -1
  818. package/src/Take.ts +3 -2
  819. package/src/TestAnnotation.ts +2 -2
  820. package/src/TestContext.ts +5 -4
  821. package/src/Types.ts +24 -0
  822. package/src/UpstreamPullRequest.ts +2 -1
  823. package/src/UpstreamPullStrategy.ts +2 -1
  824. package/src/Utils.ts +6 -5
  825. package/src/internal/blockedRequests.ts +78 -81
  826. package/src/internal/cache.ts +3 -0
  827. package/src/internal/cause.ts +1 -1
  828. package/src/internal/channel/channelState.ts +5 -3
  829. package/src/internal/channel/continuation.ts +19 -10
  830. package/src/internal/channel/upstreamPullRequest.ts +1 -1
  831. package/src/internal/channel/upstreamPullStrategy.ts +1 -1
  832. package/src/internal/config.ts +15 -23
  833. package/src/internal/configError.ts +2 -2
  834. package/src/internal/configProvider.ts +6 -4
  835. package/src/internal/context.ts +6 -6
  836. package/src/internal/core-effect.ts +27 -30
  837. package/src/internal/core-stream.ts +7 -1
  838. package/src/internal/core.ts +78 -118
  839. package/src/internal/deferred.ts +2 -0
  840. package/src/internal/effect/circular.ts +1 -0
  841. package/src/internal/effectable.ts +18 -4
  842. package/src/internal/either.ts +2 -2
  843. package/src/internal/fiber.ts +2 -0
  844. package/src/internal/fiberId.ts +4 -4
  845. package/src/internal/fiberRuntime.ts +228 -269
  846. package/src/internal/groupBy.ts +4 -1
  847. package/src/internal/hashMap.ts +2 -2
  848. package/src/internal/hashSet.ts +2 -2
  849. package/src/internal/keyedPool.ts +3 -0
  850. package/src/internal/layer.ts +29 -77
  851. package/src/internal/logger.ts +2 -1
  852. package/src/internal/metric/hook.ts +2 -1
  853. package/src/internal/metric/key.ts +1 -1
  854. package/src/internal/metric/keyType.ts +2 -1
  855. package/src/internal/metric/pair.ts +1 -1
  856. package/src/internal/metric/state.ts +1 -1
  857. package/src/internal/metric.ts +8 -5
  858. package/src/internal/opCodes/layer.ts +6 -6
  859. package/src/internal/option.ts +2 -2
  860. package/src/internal/pool.ts +2 -0
  861. package/src/internal/pubsub.ts +2 -1
  862. package/src/internal/query.ts +1 -1
  863. package/src/internal/queue.ts +18 -10
  864. package/src/internal/redBlackTree.ts +4 -2
  865. package/src/internal/ref.ts +1 -0
  866. package/src/internal/reloadable.ts +1 -1
  867. package/src/internal/request.ts +14 -1
  868. package/src/internal/resource.ts +2 -1
  869. package/src/internal/runtime.ts +2 -2
  870. package/src/internal/schedule.ts +6 -1
  871. package/src/internal/scopedCache.ts +7 -2
  872. package/src/internal/scopedRef.ts +1 -0
  873. package/src/internal/sink.ts +5 -1
  874. package/src/internal/stm/core.ts +3 -1
  875. package/src/internal/stm/stm/tExit.ts +5 -3
  876. package/src/internal/stm/tArray.ts +1 -1
  877. package/src/internal/stm/tMap.ts +2 -1
  878. package/src/internal/stm/tPriorityQueue.ts +1 -1
  879. package/src/internal/stm/tQueue.ts +2 -0
  880. package/src/internal/stm/tRef.ts +1 -1
  881. package/src/internal/stm/tSet.ts +1 -1
  882. package/src/internal/stream/handoff.ts +1 -1
  883. package/src/internal/stream.ts +2 -2
  884. package/src/internal/subscriptionRef.ts +1 -1
  885. package/src/internal/supervisor.ts +1 -0
  886. package/src/internal/take.ts +2 -1
  887. package/src/internal/version.ts +1 -1
@@ -7,6 +7,7 @@ import * as ref from "./internal/ref.js"
7
7
  import * as internal from "./internal/synchronizedRef.js"
8
8
  import type * as Option from "./Option.js"
9
9
  import type * as Ref from "./Ref.js"
10
+ import type * as Types from "./Types.js"
10
11
 
11
12
  /**
12
13
  * @since 2.0.0
@@ -38,7 +39,7 @@ export declare namespace SynchronizedRef {
38
39
  */
39
40
  export interface Variance<in out A> {
40
41
  readonly [SynchronizedRefTypeId]: {
41
- readonly _A: (_: A) => A
42
+ readonly _A: Types.Invariant<A>
42
43
  }
43
44
  }
44
45
  }
package/src/TArray.ts CHANGED
@@ -7,6 +7,7 @@ import type * as Order from "./Order.js"
7
7
  import type { Predicate } from "./Predicate.js"
8
8
  import type * as STM from "./STM.js"
9
9
  import type * as TRef from "./TRef.js"
10
+ import type * as Types from "./Types.js"
10
11
 
11
12
  /**
12
13
  * @since 2.0.0
@@ -44,7 +45,7 @@ export declare namespace TArray {
44
45
  */
45
46
  export interface Variance<in out A> {
46
47
  readonly [TArrayTypeId]: {
47
- readonly _A: (_: A) => A
48
+ readonly _A: Types.Invariant<A>
48
49
  }
49
50
  }
50
51
  }
package/src/TDeferred.ts CHANGED
@@ -6,6 +6,7 @@ import * as internal from "./internal/stm/tDeferred.js"
6
6
  import type * as Option from "./Option.js"
7
7
  import type * as STM from "./STM.js"
8
8
  import type * as TRef from "./TRef.js"
9
+ import type * as Types from "./Types.js"
9
10
 
10
11
  /**
11
12
  * @since 2.0.0
@@ -43,8 +44,8 @@ export declare namespace TDeferred {
43
44
  */
44
45
  export interface Variance<in out E, in out A> {
45
46
  readonly [TDeferredTypeId]: {
46
- readonly _E: (_: E) => E
47
- readonly _A: (_: A) => A
47
+ readonly _E: Types.Invariant<E>
48
+ readonly _A: Types.Invariant<A>
48
49
  }
49
50
  }
50
51
  }
package/src/TMap.ts CHANGED
@@ -9,6 +9,7 @@ import type * as Option from "./Option.js"
9
9
  import type * as STM from "./STM.js"
10
10
  import type * as TArray from "./TArray.js"
11
11
  import type * as TRef from "./TRef.js"
12
+ import type * as Types from "./Types.js"
12
13
 
13
14
  /**
14
15
  * @since 2.0.0
@@ -51,8 +52,8 @@ export declare namespace TMap {
51
52
  */
52
53
  export interface Variance<in out K, in out V> {
53
54
  readonly [TMapTypeId]: {
54
- readonly _K: (_: K) => K
55
- readonly _V: (_: V) => V
55
+ readonly _K: Types.Invariant<K>
56
+ readonly _V: Types.Invariant<V>
56
57
  }
57
58
  }
58
59
  }
@@ -9,6 +9,7 @@ import type { Predicate } from "./Predicate.js"
9
9
  import type * as SortedMap from "./SortedMap.js"
10
10
  import type * as STM from "./STM.js"
11
11
  import type * as TRef from "./TRef.js"
12
+ import type * as Types from "./Types.js"
12
13
 
13
14
  /**
14
15
  * @since 2.0.0
@@ -52,7 +53,7 @@ export declare namespace TPriorityQueue {
52
53
  */
53
54
  export interface Variance<in out A> {
54
55
  readonly [TPriorityQueueTypeId]: {
55
- readonly _A: (_: A) => A
56
+ readonly _A: Types.Invariant<A>
56
57
  }
57
58
  }
58
59
  }
package/src/TPubSub.ts CHANGED
@@ -9,6 +9,7 @@ import type * as Scope from "./Scope.js"
9
9
  import type * as STM from "./STM.js"
10
10
  import type * as TQueue from "./TQueue.js"
11
11
  import type * as TRef from "./TRef.js"
12
+ import type * as Types from "./Types.js"
12
13
 
13
14
  /**
14
15
  * @since 2.0.0
@@ -28,7 +29,7 @@ export type TPubSubTypeId = typeof TPubSubTypeId
28
29
  */
29
30
  export interface TPubSub<in out A> extends TQueue.TEnqueue<A> {
30
31
  readonly [TPubSubTypeId]: {
31
- readonly _A: (_: A) => A
32
+ readonly _A: Types.Invariant<A>
32
33
  }
33
34
  }
34
35
  /**
package/src/TQueue.ts CHANGED
@@ -5,6 +5,7 @@ import * as internal from "./internal/stm/tQueue.js"
5
5
  import type * as Option from "./Option.js"
6
6
  import type { Predicate } from "./Predicate.js"
7
7
  import type * as STM from "./STM.js"
8
+ import type * as Types from "./Types.js"
8
9
 
9
10
  /**
10
11
  * @since 2.0.0
@@ -158,7 +159,7 @@ export declare namespace TQueue {
158
159
  */
159
160
  export interface TEnqueueVariance<in A> {
160
161
  readonly [TEnqueueTypeId]: {
161
- readonly _In: (_: A) => void
162
+ readonly _In: Types.Contravariant<A>
162
163
  }
163
164
  }
164
165
 
@@ -168,7 +169,7 @@ export declare namespace TQueue {
168
169
  */
169
170
  export interface TDequeueVariance<out A> {
170
171
  readonly [TDequeueTypeId]: {
171
- readonly _Out: (_: never) => A
172
+ readonly _Out: Types.Covariant<A>
172
173
  }
173
174
  }
174
175
  }
package/src/TRef.ts CHANGED
@@ -8,6 +8,7 @@ import type * as Versioned from "./internal/stm/stm/versioned.js"
8
8
  import * as internal from "./internal/stm/tRef.js"
9
9
  import type * as Option from "./Option.js"
10
10
  import type * as STM from "./STM.js"
11
+ import type * as Types from "./Types.js"
11
12
 
12
13
  /**
13
14
  * @since 2.0.0
@@ -59,7 +60,7 @@ export declare namespace TRef {
59
60
  */
60
61
  export interface Variance<in out A> {
61
62
  readonly [TRefTypeId]: {
62
- readonly _A: (_: A) => A
63
+ readonly _A: Types.Invariant<A>
63
64
  }
64
65
  }
65
66
  }
package/src/TSet.ts CHANGED
@@ -8,6 +8,7 @@ import type * as Option from "./Option.js"
8
8
  import type { Predicate } from "./Predicate.js"
9
9
  import type * as STM from "./STM.js"
10
10
  import type * as TMap from "./TMap.js"
11
+ import type * as Types from "./Types.js"
11
12
 
12
13
  /**
13
14
  * @since 2.0.0
@@ -47,7 +48,7 @@ export declare namespace TSet {
47
48
  */
48
49
  export interface Variance<in out A> {
49
50
  readonly [TSetTypeId]: {
50
- readonly _A: (_: A) => A
51
+ readonly _A: Types.Invariant<A>
51
52
  }
52
53
  }
53
54
  }
package/src/Take.ts CHANGED
@@ -8,6 +8,7 @@ import type * as Exit from "./Exit.js"
8
8
  import * as internal from "./internal/take.js"
9
9
  import type * as Option from "./Option.js"
10
10
  import type { Pipeable } from "./Pipeable.js"
11
+ import type * as Types from "./Types.js"
11
12
 
12
13
  /**
13
14
  * @since 2.0.0
@@ -44,8 +45,8 @@ export declare namespace Take {
44
45
  */
45
46
  export interface Variance<out E, out A> {
46
47
  readonly [TakeTypeId]: {
47
- readonly _E: (_: never) => E
48
- readonly _A: (_: never) => A
48
+ readonly _E: Types.Covariant<E>
49
+ readonly _A: Types.Covariant<A>
49
50
  }
50
51
  }
51
52
  }
@@ -12,7 +12,7 @@ import * as HashSet from "./HashSet.js"
12
12
  import type * as MutableRef from "./MutableRef.js"
13
13
  import { hasProperty } from "./Predicate.js"
14
14
  import type * as SortedSet from "./SortedSet.js"
15
-
15
+ import type * as Types from "./Types.js"
16
16
  /** @internal */
17
17
  const TestAnnotationSymbolKey = "effect/TestAnnotation"
18
18
 
@@ -31,7 +31,7 @@ export type TestAnnotationTypeId = typeof TestAnnotationTypeId
31
31
  */
32
32
  export interface TestAnnotation<in out A> extends Equal.Equal {
33
33
  readonly [TestAnnotationTypeId]: {
34
- readonly _A: (_: A) => A
34
+ readonly _A: Types.Invariant<A>
35
35
  }
36
36
  readonly identifier: string
37
37
  readonly tag: Context.Tag<A, A>
@@ -15,9 +15,10 @@ export const live: Layer.Layer<DefaultServices.DefaultServices, never, TestServi
15
15
  layer.merge(TestServices.liveLayer()),
16
16
  layer.merge(TestServices.sizedLayer(100)),
17
17
  layer.merge(pipe(
18
- TestServices.liveLayer(),
19
- layer.merge(TestServices.annotationsLayer()),
20
- layer.provideMerge(TestClock.defaultTestClock)
18
+ TestClock.defaultTestClock,
19
+ layer.provideMerge(
20
+ layer.merge(TestServices.liveLayer(), TestServices.annotationsLayer())
21
+ )
21
22
  )),
22
23
  layer.merge(TestServices.testConfigLayer({ repeats: 100, retries: 100, samples: 200, shrinks: 1000 }))
23
24
  )
@@ -32,4 +33,4 @@ export const LiveContext: Layer.Layer<never, never, DefaultServices.DefaultServi
32
33
  /**
33
34
  * @since 2.0.0
34
35
  */
35
- export const TestContext: Layer.Layer<never, never, TestServices.TestServices> = layer.provideMerge(LiveContext, live)
36
+ export const TestContext: Layer.Layer<never, never, TestServices.TestServices> = layer.provideMerge(live, LiveContext)
package/src/Types.ts CHANGED
@@ -150,3 +150,27 @@ export type Mutable<T> = {
150
150
  * @category models
151
151
  */
152
152
  export type NoInfer<A> = [A][A extends any ? 0 : never]
153
+
154
+ /**
155
+ * Invariant helper.
156
+ *
157
+ * @since 2.0.0
158
+ * @category models
159
+ */
160
+ export type Invariant<A> = (_: A) => A
161
+
162
+ /**
163
+ * Covariant helper.
164
+ *
165
+ * @since 2.0.0
166
+ * @category models
167
+ */
168
+ export type Covariant<A> = (_: never) => A
169
+
170
+ /**
171
+ * Contravariant helper.
172
+ *
173
+ * @since 2.0.0
174
+ * @category models
175
+ */
176
+ export type Contravariant<A> = (_: A) => void
@@ -2,6 +2,7 @@
2
2
  * @since 2.0.0
3
3
  */
4
4
  import * as internal from "./internal/channel/upstreamPullRequest.js"
5
+ import type * as Types from "./Types.js"
5
6
 
6
7
  /**
7
8
  * @since 2.0.0
@@ -31,7 +32,7 @@ export declare namespace UpstreamPullRequest {
31
32
  */
32
33
  export interface Variance<out A> {
33
34
  readonly [UpstreamPullRequestTypeId]: {
34
- readonly _A: (_: never) => A
35
+ readonly _A: Types.Covariant<A>
35
36
  }
36
37
  }
37
38
  }
@@ -3,6 +3,7 @@
3
3
  */
4
4
  import * as internal from "./internal/channel/upstreamPullStrategy.js"
5
5
  import type * as Option from "./Option.js"
6
+ import type * as Types from "./Types.js"
6
7
 
7
8
  /**
8
9
  * @since 2.0.0
@@ -32,7 +33,7 @@ export declare namespace UpstreamPullStrategy {
32
33
  */
33
34
  export interface Variance<out A> {
34
35
  readonly [UpstreamPullStrategyTypeId]: {
35
- readonly _A: (_: never) => A
36
+ readonly _A: Types.Covariant<A>
36
37
  }
37
38
  }
38
39
  }
package/src/Utils.ts CHANGED
@@ -3,6 +3,7 @@
3
3
  */
4
4
  import { identity } from "./Function.js"
5
5
  import type { Kind, TypeLambda } from "./HKT.js"
6
+ import type * as Types from "./Types.js"
6
7
 
7
8
  /*
8
9
  * Copyright 2014 Thom Chiovoloni, released under the MIT license.
@@ -156,12 +157,12 @@ export const makeGenKind = <F extends TypeLambda, R, O, E, A>(
156
157
  * @category models
157
158
  * @since 2.0.0
158
159
  */
159
- export interface Variance<F extends TypeLambda, R, O, E> {
160
+ export interface Variance<in out F extends TypeLambda, in R, out O, out E> {
160
161
  readonly [GenKindTypeId]: GenKindTypeId
161
- readonly _F: (_: F) => F
162
- readonly _R: (_: R) => unknown
163
- readonly _O: (_: never) => O
164
- readonly _E: (_: never) => E
162
+ readonly _F: Types.Invariant<F>
163
+ readonly _R: Types.Contravariant<R>
164
+ readonly _O: Types.Covariant<O>
165
+ readonly _E: Types.Covariant<E>
165
166
  }
166
167
 
167
168
  /**
@@ -11,7 +11,7 @@ import type * as RequestBlock from "../RequestBlock.js"
11
11
  import type * as RequestResolver from "../RequestResolver.js"
12
12
 
13
13
  /** @internal */
14
- export const empty: RequestBlock.RequestBlock<never> = {
14
+ export const empty: RequestBlock.RequestBlock = {
15
15
  _tag: "Empty"
16
16
  }
17
17
 
@@ -21,10 +21,10 @@ export const empty: RequestBlock.RequestBlock<never> = {
21
21
  *
22
22
  * @internal
23
23
  */
24
- export const par = <R, R2>(
25
- self: RequestBlock.RequestBlock<R>,
26
- that: RequestBlock.RequestBlock<R2>
27
- ): RequestBlock.RequestBlock<R | R2> => ({
24
+ export const par = (
25
+ self: RequestBlock.RequestBlock,
26
+ that: RequestBlock.RequestBlock
27
+ ): RequestBlock.RequestBlock => ({
28
28
  _tag: "Par",
29
29
  left: self,
30
30
  right: that
@@ -36,10 +36,10 @@ export const par = <R, R2>(
36
36
  *
37
37
  * @internal
38
38
  */
39
- export const seq = <R, R2>(
40
- self: RequestBlock.RequestBlock<R>,
41
- that: RequestBlock.RequestBlock<R2>
42
- ): RequestBlock.RequestBlock<R | R2> => ({
39
+ export const seq = (
40
+ self: RequestBlock.RequestBlock,
41
+ that: RequestBlock.RequestBlock
42
+ ): RequestBlock.RequestBlock => ({
43
43
  _tag: "Seq",
44
44
  left: self,
45
45
  right: that
@@ -51,19 +51,19 @@ export const seq = <R, R2>(
51
51
  *
52
52
  * @internal
53
53
  */
54
- export const single = <R, A>(
55
- dataSource: RequestResolver.RequestResolver<A, R>,
54
+ export const single = <A>(
55
+ dataSource: RequestResolver.RequestResolver<A>,
56
56
  blockedRequest: Request.Entry<A>
57
- ): RequestBlock.RequestBlock<R> => ({
57
+ ): RequestBlock.RequestBlock => ({
58
58
  _tag: "Single",
59
59
  dataSource: dataSource as any,
60
60
  blockedRequest
61
61
  })
62
62
 
63
63
  /** @internal */
64
- export const MapRequestResolversReducer = <R, A, R2>(
65
- f: (dataSource: RequestResolver.RequestResolver<A, R>) => RequestResolver.RequestResolver<A, R2>
66
- ): RequestBlock.RequestBlock.Reducer<R, RequestBlock.RequestBlock<R | R2>> => ({
64
+ export const MapRequestResolversReducer = <A>(
65
+ f: (dataSource: RequestResolver.RequestResolver<A>) => RequestResolver.RequestResolver<A>
66
+ ): RequestBlock.RequestBlock.Reducer<RequestBlock.RequestBlock> => ({
67
67
  emptyCase: () => empty,
68
68
  parCase: (left, right) => par(left, right),
69
69
  seqCase: (left, right) => seq(left, right),
@@ -87,10 +87,10 @@ interface SeqCase {
87
87
  *
88
88
  * @internal
89
89
  */
90
- export const mapRequestResolvers = <R, A, R2>(
91
- self: RequestBlock.RequestBlock<R>,
92
- f: (dataSource: RequestResolver.RequestResolver<A, R>) => RequestResolver.RequestResolver<A, R2>
93
- ): RequestBlock.RequestBlock<R | R2> => reduce(self, MapRequestResolversReducer(f))
90
+ export const mapRequestResolvers = <A>(
91
+ self: RequestBlock.RequestBlock,
92
+ f: (dataSource: RequestResolver.RequestResolver<A>) => RequestResolver.RequestResolver<A>
93
+ ): RequestBlock.RequestBlock => reduce(self, MapRequestResolversReducer(f))
94
94
 
95
95
  /**
96
96
  * Folds over the cases of this collection of blocked requests with the
@@ -98,14 +98,14 @@ export const mapRequestResolvers = <R, A, R2>(
98
98
  *
99
99
  * @internal
100
100
  */
101
- export const reduce = <R, Z>(
102
- self: RequestBlock.RequestBlock<R>,
103
- reducer: RequestBlock.RequestBlock.Reducer<R, Z>
101
+ export const reduce = <Z>(
102
+ self: RequestBlock.RequestBlock,
103
+ reducer: RequestBlock.RequestBlock.Reducer<Z>
104
104
  ): Z => {
105
- let input: List.List<RequestBlock.RequestBlock<R>> = List.of(self)
105
+ let input: List.List<RequestBlock.RequestBlock> = List.of(self)
106
106
  let output = List.empty<Either.Either<BlockedRequestsCase, Z>>()
107
107
  while (List.isCons(input)) {
108
- const current: RequestBlock.RequestBlock<R> = input.head
108
+ const current: RequestBlock.RequestBlock = input.head
109
109
  switch (current._tag) {
110
110
  case "Empty": {
111
111
  output = List.cons(Either.right(reducer.emptyCase()), output)
@@ -164,16 +164,16 @@ export const reduce = <R, Z>(
164
164
  *
165
165
  * @internal
166
166
  */
167
- export const flatten = <R>(
168
- self: RequestBlock.RequestBlock<R>
169
- ): List.List<SequentialCollection<R>> => {
167
+ export const flatten = (
168
+ self: RequestBlock.RequestBlock
169
+ ): List.List<SequentialCollection> => {
170
170
  let current = List.of(self)
171
- let updated = List.empty<SequentialCollection<R>>()
171
+ let updated = List.empty<SequentialCollection>()
172
172
  // eslint-disable-next-line no-constant-condition
173
173
  while (1) {
174
174
  const [parallel, sequential] = List.reduce(
175
175
  current,
176
- [parallelCollectionEmpty<R>(), List.empty<RequestBlock.RequestBlock<R>>()] as const,
176
+ [parallelCollectionEmpty(), List.empty<RequestBlock.RequestBlock>()] as const,
177
177
  ([parallel, sequential], blockedRequest) => {
178
178
  const [par, seq] = step(blockedRequest)
179
179
  return [
@@ -199,13 +199,13 @@ export const flatten = <R>(
199
199
  * of blocked requests that must be performed sequentially after those
200
200
  * requests.
201
201
  */
202
- const step = <R>(
203
- requests: RequestBlock.RequestBlock<R>
204
- ): [ParallelCollection<R>, List.List<RequestBlock.RequestBlock<R>>] => {
205
- let current: RequestBlock.RequestBlock<R> = requests
206
- let parallel = parallelCollectionEmpty<R>()
207
- let stack = List.empty<RequestBlock.RequestBlock<R>>()
208
- let sequential = List.empty<RequestBlock.RequestBlock<R>>()
202
+ const step = (
203
+ requests: RequestBlock.RequestBlock
204
+ ): [ParallelCollection, List.List<RequestBlock.RequestBlock>] => {
205
+ let current: RequestBlock.RequestBlock = requests
206
+ let parallel = parallelCollectionEmpty()
207
+ let stack = List.empty<RequestBlock.RequestBlock>()
208
+ let sequential = List.empty<RequestBlock.RequestBlock>()
209
209
  // eslint-disable-next-line no-constant-condition
210
210
  while (1) {
211
211
  switch (current._tag) {
@@ -275,10 +275,10 @@ const step = <R>(
275
275
  * are both from the same single data source then the requests can be
276
276
  * pipelined while preserving ordering guarantees.
277
277
  */
278
- const merge = <R>(
279
- sequential: List.List<SequentialCollection<R>>,
280
- parallel: ParallelCollection<R>
281
- ): List.List<SequentialCollection<R>> => {
278
+ const merge = (
279
+ sequential: List.List<SequentialCollection>,
280
+ parallel: ParallelCollection
281
+ ): List.List<SequentialCollection> => {
282
282
  if (List.isNil(sequential)) {
283
283
  return List.of(parallelCollectionToSequentialCollection(parallel))
284
284
  }
@@ -326,8 +326,8 @@ class EntryImpl<A extends Request.Request<any, any>> implements Request.Entry<A>
326
326
  ) {}
327
327
  }
328
328
 
329
- /** @internal */
330
329
  const blockedRequestVariance = {
330
+ /* c8 ignore next */
331
331
  _R: (_: never) => _
332
332
  }
333
333
 
@@ -351,10 +351,11 @@ export const RequestBlockParallelTypeId = Symbol.for(
351
351
  )
352
352
 
353
353
  const parallelVariance = {
354
+ /* c8 ignore next */
354
355
  _R: (_: never) => _
355
356
  }
356
357
 
357
- class ParallelImpl<out R> implements ParallelCollection<R> {
358
+ class ParallelImpl implements ParallelCollection {
358
359
  readonly [RequestBlockParallelTypeId] = parallelVariance
359
360
  constructor(
360
361
  readonly map: HashMap.HashMap<
@@ -365,19 +366,19 @@ class ParallelImpl<out R> implements ParallelCollection<R> {
365
366
  }
366
367
 
367
368
  /** @internal */
368
- export const parallelCollectionEmpty = <R>(): ParallelCollection<R> => new ParallelImpl(HashMap.empty())
369
+ export const parallelCollectionEmpty = (): ParallelCollection => new ParallelImpl(HashMap.empty())
369
370
 
370
371
  /** @internal */
371
- export const parallelCollectionMake = <R, A>(
372
- dataSource: RequestResolver.RequestResolver<A, R>,
372
+ export const parallelCollectionMake = <A>(
373
+ dataSource: RequestResolver.RequestResolver<A>,
373
374
  blockedRequest: Request.Entry<A>
374
- ): ParallelCollection<R> => new ParallelImpl(HashMap.make([dataSource, Array.of(blockedRequest)]) as any)
375
+ ): ParallelCollection => new ParallelImpl(HashMap.make([dataSource, Array.of(blockedRequest)]) as any)
375
376
 
376
377
  /** @internal */
377
- export const parallelCollectionCombine = <R, R2>(
378
- self: ParallelCollection<R>,
379
- that: ParallelCollection<R2>
380
- ): ParallelCollection<R | R2> =>
378
+ export const parallelCollectionCombine = (
379
+ self: ParallelCollection,
380
+ that: ParallelCollection
381
+ ): ParallelCollection =>
381
382
  new ParallelImpl(HashMap.reduce(self.map, that.map, (map, value, key) =>
382
383
  HashMap.set(
383
384
  map,
@@ -389,17 +390,17 @@ export const parallelCollectionCombine = <R, R2>(
389
390
  )))
390
391
 
391
392
  /** @internal */
392
- export const parallelCollectionIsEmpty = <R>(self: ParallelCollection<R>): boolean => HashMap.isEmpty(self.map)
393
+ export const parallelCollectionIsEmpty = (self: ParallelCollection): boolean => HashMap.isEmpty(self.map)
393
394
 
394
395
  /** @internal */
395
- export const parallelCollectionKeys = <R>(
396
- self: ParallelCollection<R>
397
- ): Array<RequestResolver.RequestResolver<unknown, R>> => Array.from(HashMap.keys(self.map)) as any
396
+ export const parallelCollectionKeys = (
397
+ self: ParallelCollection
398
+ ): Array<RequestResolver.RequestResolver<unknown>> => Array.from(HashMap.keys(self.map)) as any
398
399
 
399
400
  /** @internal */
400
- export const parallelCollectionToSequentialCollection = <R>(
401
- self: ParallelCollection<R>
402
- ): SequentialCollection<R> => sequentialCollectionMake(HashMap.map(self.map, (x) => Array.of(x)) as any)
401
+ export const parallelCollectionToSequentialCollection = (
402
+ self: ParallelCollection
403
+ ): SequentialCollection => sequentialCollectionMake(HashMap.map(self.map, (x) => Array.of(x)) as any)
403
404
 
404
405
  // TODO
405
406
  // /** @internal */
@@ -412,12 +413,12 @@ export const SequentialCollectionTypeId = Symbol.for(
412
413
  "effect/RequestBlock/RequestBlockSequential"
413
414
  )
414
415
 
415
- /** @internal */
416
416
  const sequentialVariance = {
417
+ /* c8 ignore next */
417
418
  _R: (_: never) => _
418
419
  }
419
420
 
420
- class SequentialImpl<out R> implements SequentialCollection<R> {
421
+ class SequentialImpl implements SequentialCollection {
421
422
  readonly [SequentialCollectionTypeId] = sequentialVariance
422
423
  constructor(
423
424
  readonly map: HashMap.HashMap<
@@ -433,13 +434,13 @@ export const sequentialCollectionMake = <R, A>(
433
434
  RequestResolver.RequestResolver<A, R>,
434
435
  Array<Array<Request.Entry<A>>>
435
436
  >
436
- ): SequentialCollection<R> => new SequentialImpl(map as any)
437
+ ): SequentialCollection => new SequentialImpl(map as any)
437
438
 
438
439
  /** @internal */
439
- export const sequentialCollectionCombine = <R, R2>(
440
- self: SequentialCollection<R>,
441
- that: SequentialCollection<R2>
442
- ): SequentialCollection<R | R2> =>
440
+ export const sequentialCollectionCombine = (
441
+ self: SequentialCollection,
442
+ that: SequentialCollection
443
+ ): SequentialCollection =>
443
444
  new SequentialImpl(HashMap.reduce(that.map, self.map, (map, value, key) =>
444
445
  HashMap.set(
445
446
  map,
@@ -451,24 +452,24 @@ export const sequentialCollectionCombine = <R, R2>(
451
452
  )))
452
453
 
453
454
  /** @internal */
454
- export const sequentialCollectionIsEmpty = <R>(self: SequentialCollection<R>): boolean => HashMap.isEmpty(self.map)
455
+ export const sequentialCollectionIsEmpty = (self: SequentialCollection): boolean => HashMap.isEmpty(self.map)
455
456
 
456
457
  /** @internal */
457
- export const sequentialCollectionKeys = <R>(
458
- self: SequentialCollection<R>
459
- ): Array<RequestResolver.RequestResolver<unknown, R>> => Array.from(HashMap.keys(self.map)) as any
458
+ export const sequentialCollectionKeys = (
459
+ self: SequentialCollection
460
+ ): Array<RequestResolver.RequestResolver<unknown>> => Array.from(HashMap.keys(self.map)) as any
460
461
 
461
462
  /** @internal */
462
- export const sequentialCollectionToChunk = <R>(
463
- self: SequentialCollection<R>
464
- ): Array<[RequestResolver.RequestResolver<unknown, R>, Array<Array<Request.Entry<unknown>>>]> =>
463
+ export const sequentialCollectionToChunk = (
464
+ self: SequentialCollection
465
+ ): Array<[RequestResolver.RequestResolver<unknown>, Array<Array<Request.Entry<unknown>>>]> =>
465
466
  Array.from(self.map) as any
466
467
 
467
468
  /** @internal */
468
469
  export type RequestBlockParallelTypeId = typeof RequestBlockParallelTypeId
469
470
 
470
471
  /** @internal */
471
- export interface ParallelCollection<out R> extends ParallelCollection.Variance<R> {
472
+ export interface ParallelCollection extends ParallelCollection.Variance {
472
473
  readonly map: HashMap.HashMap<
473
474
  RequestResolver.RequestResolver<unknown, unknown>,
474
475
  Array<Request.Entry<unknown>>
@@ -478,10 +479,8 @@ export interface ParallelCollection<out R> extends ParallelCollection.Variance<R
478
479
  /** @internal */
479
480
  export declare namespace ParallelCollection {
480
481
  /** @internal */
481
- export interface Variance<out R> {
482
- readonly [RequestBlockParallelTypeId]: {
483
- readonly _R: (_: never) => R
484
- }
482
+ export interface Variance {
483
+ readonly [RequestBlockParallelTypeId]: {}
485
484
  }
486
485
  }
487
486
 
@@ -489,7 +488,7 @@ export declare namespace ParallelCollection {
489
488
  export type SequentialCollectionTypeId = typeof SequentialCollectionTypeId
490
489
 
491
490
  /** @internal */
492
- export interface SequentialCollection<out R> extends SequentialCollection.Variance<R> {
491
+ export interface SequentialCollection extends SequentialCollection.Variance {
493
492
  readonly map: HashMap.HashMap<
494
493
  RequestResolver.RequestResolver<unknown, unknown>,
495
494
  Array<Array<Request.Entry<unknown>>>
@@ -499,9 +498,7 @@ export interface SequentialCollection<out R> extends SequentialCollection.Varian
499
498
  /** @internal */
500
499
  export declare namespace SequentialCollection {
501
500
  /** @internal */
502
- export interface Variance<out R> {
503
- readonly [SequentialCollectionTypeId]: {
504
- readonly _R: (_: never) => R
505
- }
501
+ export interface Variance {
502
+ readonly [SequentialCollectionTypeId]: {}
506
503
  }
507
504
  }
@@ -269,8 +269,11 @@ export const CacheTypeId: Cache.CacheTypeId = Symbol.for(
269
269
  ) as Cache.CacheTypeId
270
270
 
271
271
  const cacheVariance = {
272
+ /* c8 ignore next */
272
273
  _Key: (_: any) => _,
274
+ /* c8 ignore next */
273
275
  _Error: (_: never) => _,
276
+ /* c8 ignore next */
274
277
  _Value: (_: never) => _
275
278
  }
276
279