effect 2.0.0-next.55 → 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 (1063) hide show
  1. package/README.md +14 -9
  2. package/dist/cjs/BigDecimal.js +9 -9
  3. package/dist/cjs/BigDecimal.js.map +1 -1
  4. package/dist/cjs/BigInt.js.map +1 -1
  5. package/dist/cjs/Boolean.js.map +1 -1
  6. package/dist/cjs/Brand.js.map +1 -1
  7. package/dist/cjs/Cache.js.map +1 -1
  8. package/dist/cjs/Cause.js +53 -18
  9. package/dist/cjs/Cause.js.map +1 -1
  10. package/dist/cjs/Channel.js.map +1 -1
  11. package/dist/cjs/ChildExecutorDecision.js.map +1 -1
  12. package/dist/cjs/Chunk.js +43 -34
  13. package/dist/cjs/Chunk.js.map +1 -1
  14. package/dist/cjs/Config.js +3 -3
  15. package/dist/cjs/Config.js.map +1 -1
  16. package/dist/cjs/Context.js.map +1 -1
  17. package/dist/cjs/Data.js +11 -20
  18. package/dist/cjs/Data.js.map +1 -1
  19. package/dist/cjs/Deferred.js.map +1 -1
  20. package/dist/cjs/Differ.js.map +1 -1
  21. package/dist/cjs/Duration.js +49 -2
  22. package/dist/cjs/Duration.js.map +1 -1
  23. package/dist/cjs/Effect.js +10 -8
  24. package/dist/cjs/Effect.js.map +1 -1
  25. package/dist/cjs/Either.js +44 -8
  26. package/dist/cjs/Either.js.map +1 -1
  27. package/dist/cjs/Equal.js.map +1 -1
  28. package/dist/cjs/Equivalence.js +1 -1
  29. package/dist/cjs/Equivalence.js.map +1 -1
  30. package/dist/cjs/Exit.js.map +1 -1
  31. package/dist/cjs/Fiber.js.map +1 -1
  32. package/dist/cjs/FiberRef.js +6 -1
  33. package/dist/cjs/FiberRef.js.map +1 -1
  34. package/dist/cjs/Function.js.map +1 -1
  35. package/dist/cjs/GlobalValue.js.map +1 -1
  36. package/dist/cjs/GroupBy.js.map +1 -1
  37. package/dist/cjs/Hash.js.map +1 -1
  38. package/dist/cjs/HashMap.js.map +1 -1
  39. package/dist/cjs/Inspectable.js +4 -6
  40. package/dist/cjs/Inspectable.js.map +1 -1
  41. package/dist/cjs/KeyedPool.js.map +1 -1
  42. package/dist/cjs/Layer.js +9 -29
  43. package/dist/cjs/Layer.js.map +1 -1
  44. package/dist/cjs/List.js +25 -22
  45. package/dist/cjs/List.js.map +1 -1
  46. package/dist/cjs/LogLevel.js.map +1 -1
  47. package/dist/cjs/Logger.js.map +1 -1
  48. package/dist/cjs/Match.js.map +1 -1
  49. package/dist/cjs/MergeDecision.js.map +1 -1
  50. package/dist/cjs/MergeState.js.map +1 -1
  51. package/dist/cjs/Metric.js.map +1 -1
  52. package/dist/cjs/MetricHook.js.map +1 -1
  53. package/dist/cjs/MetricKey.js.map +1 -1
  54. package/dist/cjs/MetricKeyType.js.map +1 -1
  55. package/dist/cjs/MetricPair.js.map +1 -1
  56. package/dist/cjs/MetricPolling.js +2 -2
  57. package/dist/cjs/MetricPolling.js.map +1 -1
  58. package/dist/cjs/MetricState.js.map +1 -1
  59. package/dist/cjs/MutableHashMap.js +1 -1
  60. package/dist/cjs/MutableHashMap.js.map +1 -1
  61. package/dist/cjs/MutableHashSet.js +1 -1
  62. package/dist/cjs/MutableHashSet.js.map +1 -1
  63. package/dist/cjs/MutableList.js +1 -1
  64. package/dist/cjs/MutableList.js.map +1 -1
  65. package/dist/cjs/MutableQueue.js +1 -1
  66. package/dist/cjs/MutableQueue.js.map +1 -1
  67. package/dist/cjs/MutableRef.js +1 -1
  68. package/dist/cjs/MutableRef.js.map +1 -1
  69. package/dist/cjs/NonEmptyIterable.js.map +1 -1
  70. package/dist/cjs/Number.js.map +1 -1
  71. package/dist/cjs/Option.js +21 -14
  72. package/dist/cjs/Option.js.map +1 -1
  73. package/dist/cjs/Order.js +1 -1
  74. package/dist/cjs/Order.js.map +1 -1
  75. package/dist/cjs/Ordering.js.map +1 -1
  76. package/dist/cjs/Pipeable.js.map +1 -1
  77. package/dist/cjs/Pool.js +15 -17
  78. package/dist/cjs/Pool.js.map +1 -1
  79. package/dist/cjs/Predicate.js +17 -1
  80. package/dist/cjs/Predicate.js.map +1 -1
  81. package/dist/cjs/PrimaryKey.js +21 -0
  82. package/dist/cjs/PrimaryKey.js.map +1 -0
  83. package/dist/cjs/Queue.js +6 -1
  84. package/dist/cjs/Queue.js.map +1 -1
  85. package/dist/cjs/ReadonlyArray.js +202 -187
  86. package/dist/cjs/ReadonlyArray.js.map +1 -1
  87. package/dist/cjs/ReadonlyRecord.js +61 -8
  88. package/dist/cjs/ReadonlyRecord.js.map +1 -1
  89. package/dist/cjs/RedBlackTree.js.map +1 -1
  90. package/dist/cjs/Ref.js.map +1 -1
  91. package/dist/cjs/Reloadable.js.map +1 -1
  92. package/dist/cjs/Request.js +42 -1
  93. package/dist/cjs/Request.js.map +1 -1
  94. package/dist/cjs/RequestBlock.js +5 -24
  95. package/dist/cjs/RequestBlock.js.map +1 -1
  96. package/dist/cjs/RequestResolver.js.map +1 -1
  97. package/dist/cjs/Resource.js.map +1 -1
  98. package/dist/cjs/STM.js +1 -1
  99. package/dist/cjs/STM.js.map +1 -1
  100. package/dist/cjs/Schedule.js.map +1 -1
  101. package/dist/cjs/Scheduler.js.map +1 -1
  102. package/dist/cjs/ScopedCache.js.map +1 -1
  103. package/dist/cjs/ScopedRef.js.map +1 -1
  104. package/dist/cjs/Sink.js.map +1 -1
  105. package/dist/cjs/SortedMap.js +5 -2
  106. package/dist/cjs/SortedMap.js.map +1 -1
  107. package/dist/cjs/SortedSet.js +3 -3
  108. package/dist/cjs/SortedSet.js.map +1 -1
  109. package/dist/cjs/Stream.js.map +1 -1
  110. package/dist/cjs/Streamable.js +3 -0
  111. package/dist/cjs/Streamable.js.map +1 -1
  112. package/dist/cjs/String.js.map +1 -1
  113. package/dist/cjs/Struct.js.map +1 -1
  114. package/dist/cjs/SubscriptionRef.js.map +1 -1
  115. package/dist/cjs/Supervisor.js.map +1 -1
  116. package/dist/cjs/SynchronizedRef.js.map +1 -1
  117. package/dist/cjs/TArray.js.map +1 -1
  118. package/dist/cjs/TDeferred.js.map +1 -1
  119. package/dist/cjs/TMap.js.map +1 -1
  120. package/dist/cjs/TPriorityQueue.js.map +1 -1
  121. package/dist/cjs/TPubSub.js.map +1 -1
  122. package/dist/cjs/TQueue.js.map +1 -1
  123. package/dist/cjs/TRef.js.map +1 -1
  124. package/dist/cjs/TSet.js.map +1 -1
  125. package/dist/cjs/Take.js.map +1 -1
  126. package/dist/cjs/TestAnnotation.js +3 -1
  127. package/dist/cjs/TestAnnotation.js.map +1 -1
  128. package/dist/cjs/TestAnnotationMap.js.map +1 -1
  129. package/dist/cjs/TestAnnotations.js.map +1 -1
  130. package/dist/cjs/TestClock.js.map +1 -1
  131. package/dist/cjs/TestContext.js +2 -2
  132. package/dist/cjs/TestContext.js.map +1 -1
  133. package/dist/cjs/UpstreamPullRequest.js.map +1 -1
  134. package/dist/cjs/UpstreamPullStrategy.js.map +1 -1
  135. package/dist/cjs/Utils.js.map +1 -1
  136. package/dist/cjs/index.js +4 -2
  137. package/dist/cjs/index.js.map +1 -1
  138. package/dist/cjs/internal/Iterable.js.map +1 -1
  139. package/dist/cjs/internal/blockedRequests.js +3 -2
  140. package/dist/cjs/internal/blockedRequests.js.map +1 -1
  141. package/dist/cjs/internal/cache.js +3 -0
  142. package/dist/cjs/internal/cache.js.map +1 -1
  143. package/dist/cjs/internal/cause.js +5 -104
  144. package/dist/cjs/internal/cause.js.map +1 -1
  145. package/dist/cjs/internal/channel/channelExecutor.js.map +1 -1
  146. package/dist/cjs/internal/channel/channelState.js +2 -1
  147. package/dist/cjs/internal/channel/channelState.js.map +1 -1
  148. package/dist/cjs/internal/channel/childExecutorDecision.js.map +1 -1
  149. package/dist/cjs/internal/channel/continuation.js +9 -1
  150. package/dist/cjs/internal/channel/continuation.js.map +1 -1
  151. package/dist/cjs/internal/channel/mergeDecision.js.map +1 -1
  152. package/dist/cjs/internal/channel/mergeState.js.map +1 -1
  153. package/dist/cjs/internal/channel/mergeStrategy.js.map +1 -1
  154. package/dist/cjs/internal/channel/singleProducerAsyncInput.js.map +1 -1
  155. package/dist/cjs/internal/channel/subexecutor.js.map +1 -1
  156. package/dist/cjs/internal/channel/upstreamPullRequest.js +1 -1
  157. package/dist/cjs/internal/channel/upstreamPullRequest.js.map +1 -1
  158. package/dist/cjs/internal/channel/upstreamPullStrategy.js +1 -1
  159. package/dist/cjs/internal/channel/upstreamPullStrategy.js.map +1 -1
  160. package/dist/cjs/internal/channel.js.map +1 -1
  161. package/dist/cjs/internal/clock.js.map +1 -1
  162. package/dist/cjs/internal/concurrency.js.map +1 -1
  163. package/dist/cjs/internal/config.js +16 -24
  164. package/dist/cjs/internal/config.js.map +1 -1
  165. package/dist/cjs/internal/configError.js +2 -2
  166. package/dist/cjs/internal/configError.js.map +1 -1
  167. package/dist/cjs/internal/configProvider/pathPatch.js.map +1 -1
  168. package/dist/cjs/internal/configProvider.js +18 -4
  169. package/dist/cjs/internal/configProvider.js.map +1 -1
  170. package/dist/cjs/internal/configSecret.js.map +1 -1
  171. package/dist/cjs/internal/context.js +5 -5
  172. package/dist/cjs/internal/context.js.map +1 -1
  173. package/dist/cjs/internal/core-effect.js +19 -15
  174. package/dist/cjs/internal/core-effect.js.map +1 -1
  175. package/dist/cjs/internal/core-stream.js +7 -1
  176. package/dist/cjs/internal/core-stream.js.map +1 -1
  177. package/dist/cjs/internal/core.js +203 -85
  178. package/dist/cjs/internal/core.js.map +1 -1
  179. package/dist/cjs/internal/data.js +4 -22
  180. package/dist/cjs/internal/data.js.map +1 -1
  181. package/dist/cjs/internal/dataSource.js +1 -1
  182. package/dist/cjs/internal/dataSource.js.map +1 -1
  183. package/dist/cjs/internal/deferred.js +2 -0
  184. package/dist/cjs/internal/deferred.js.map +1 -1
  185. package/dist/cjs/internal/differ/chunkPatch.js.map +1 -1
  186. package/dist/cjs/internal/differ/contextPatch.js.map +1 -1
  187. package/dist/cjs/internal/differ/hashMapPatch.js.map +1 -1
  188. package/dist/cjs/internal/differ/hashSetPatch.js.map +1 -1
  189. package/dist/cjs/internal/differ/orPatch.js.map +1 -1
  190. package/dist/cjs/internal/differ.js.map +1 -1
  191. package/dist/cjs/internal/effect/circular.js +1 -0
  192. package/dist/cjs/internal/effect/circular.js.map +1 -1
  193. package/dist/cjs/internal/effectable.js +38 -7
  194. package/dist/cjs/internal/effectable.js.map +1 -1
  195. package/dist/cjs/internal/either.js +1 -1
  196. package/dist/cjs/internal/either.js.map +1 -1
  197. package/dist/cjs/internal/encoding/base64.js.map +1 -1
  198. package/dist/cjs/internal/encoding/base64Url.js.map +1 -1
  199. package/dist/cjs/internal/encoding/common.js.map +1 -1
  200. package/dist/cjs/internal/encoding/hex.js.map +1 -1
  201. package/dist/cjs/internal/executionStrategy.js.map +1 -1
  202. package/dist/cjs/internal/fiber.js +2 -0
  203. package/dist/cjs/internal/fiber.js.map +1 -1
  204. package/dist/cjs/internal/fiberId.js +3 -3
  205. package/dist/cjs/internal/fiberId.js.map +1 -1
  206. package/dist/cjs/internal/fiberMessage.js.map +1 -1
  207. package/dist/cjs/internal/fiberRefs/patch.js.map +1 -1
  208. package/dist/cjs/internal/fiberRefs.js.map +1 -1
  209. package/dist/cjs/internal/fiberRuntime.js +181 -218
  210. package/dist/cjs/internal/fiberRuntime.js.map +1 -1
  211. package/dist/cjs/internal/groupBy.js +4 -1
  212. package/dist/cjs/internal/groupBy.js.map +1 -1
  213. package/dist/cjs/internal/hashMap/array.js.map +1 -1
  214. package/dist/cjs/internal/hashMap/node.js.map +1 -1
  215. package/dist/cjs/internal/hashMap.js +2 -2
  216. package/dist/cjs/internal/hashMap.js.map +1 -1
  217. package/dist/cjs/internal/hashSet.js +3 -3
  218. package/dist/cjs/internal/hashSet.js.map +1 -1
  219. package/dist/cjs/internal/keyedPool.js +3 -0
  220. package/dist/cjs/internal/keyedPool.js.map +1 -1
  221. package/dist/cjs/internal/layer.js +23 -53
  222. package/dist/cjs/internal/layer.js.map +1 -1
  223. package/dist/cjs/internal/logger.js +2 -1
  224. package/dist/cjs/internal/logger.js.map +1 -1
  225. package/dist/cjs/internal/matcher.js.map +1 -1
  226. package/dist/cjs/internal/metric/hook.js +2 -1
  227. package/dist/cjs/internal/metric/hook.js.map +1 -1
  228. package/dist/cjs/internal/metric/key.js +1 -1
  229. package/dist/cjs/internal/metric/key.js.map +1 -1
  230. package/dist/cjs/internal/metric/keyType.js +2 -1
  231. package/dist/cjs/internal/metric/keyType.js.map +1 -1
  232. package/dist/cjs/internal/metric/pair.js +1 -1
  233. package/dist/cjs/internal/metric/pair.js.map +1 -1
  234. package/dist/cjs/internal/metric/polling.js +7 -7
  235. package/dist/cjs/internal/metric/polling.js.map +1 -1
  236. package/dist/cjs/internal/metric/registry.js.map +1 -1
  237. package/dist/cjs/internal/metric/state.js +1 -1
  238. package/dist/cjs/internal/metric/state.js.map +1 -1
  239. package/dist/cjs/internal/metric.js +11 -5
  240. package/dist/cjs/internal/metric.js.map +1 -1
  241. package/dist/cjs/internal/opCodes/layer.js +4 -4
  242. package/dist/cjs/internal/opCodes/layer.js.map +1 -1
  243. package/dist/cjs/internal/option.js +1 -1
  244. package/dist/cjs/internal/option.js.map +1 -1
  245. package/dist/cjs/internal/pool.js +2 -0
  246. package/dist/cjs/internal/pool.js.map +1 -1
  247. package/dist/cjs/internal/pubsub.js +25 -24
  248. package/dist/cjs/internal/pubsub.js.map +1 -1
  249. package/dist/cjs/internal/query.js +1 -1
  250. package/dist/cjs/internal/query.js.map +1 -1
  251. package/dist/cjs/internal/queue.js +14 -3
  252. package/dist/cjs/internal/queue.js.map +1 -1
  253. package/dist/cjs/internal/random.js.map +1 -1
  254. package/dist/cjs/internal/redBlackTree/iterator.js.map +1 -1
  255. package/dist/cjs/internal/redBlackTree.js +8 -2
  256. package/dist/cjs/internal/redBlackTree.js.map +1 -1
  257. package/dist/cjs/internal/ref.js +1 -0
  258. package/dist/cjs/internal/ref.js.map +1 -1
  259. package/dist/cjs/internal/reloadable.js +1 -1
  260. package/dist/cjs/internal/reloadable.js.map +1 -1
  261. package/dist/cjs/internal/request.js +33 -16
  262. package/dist/cjs/internal/request.js.map +1 -1
  263. package/dist/cjs/internal/resource.js +4 -3
  264. package/dist/cjs/internal/resource.js.map +1 -1
  265. package/dist/cjs/internal/ringBuffer.js.map +1 -1
  266. package/dist/cjs/internal/runtime.js +3 -4
  267. package/dist/cjs/internal/runtime.js.map +1 -1
  268. package/dist/cjs/internal/runtimeFlags.js.map +1 -1
  269. package/dist/cjs/internal/schedule/interval.js.map +1 -1
  270. package/dist/cjs/internal/schedule/intervals.js.map +1 -1
  271. package/dist/cjs/internal/schedule.js +12 -8
  272. package/dist/cjs/internal/schedule.js.map +1 -1
  273. package/dist/cjs/internal/scopedCache.js +5 -2
  274. package/dist/cjs/internal/scopedCache.js.map +1 -1
  275. package/dist/cjs/internal/scopedRef.js +1 -0
  276. package/dist/cjs/internal/scopedRef.js.map +1 -1
  277. package/dist/cjs/internal/sink.js +6 -2
  278. package/dist/cjs/internal/sink.js.map +1 -1
  279. package/dist/cjs/internal/stm/core.js +5 -3
  280. package/dist/cjs/internal/stm/core.js.map +1 -1
  281. package/dist/cjs/internal/stm/stm/journal.js.map +1 -1
  282. package/dist/cjs/internal/stm/stm/stmState.js.map +1 -1
  283. package/dist/cjs/internal/stm/stm/tExit.js +2 -1
  284. package/dist/cjs/internal/stm/stm/tExit.js.map +1 -1
  285. package/dist/cjs/internal/stm/stm.js.map +1 -1
  286. package/dist/cjs/internal/stm/tArray.js +1 -1
  287. package/dist/cjs/internal/stm/tArray.js.map +1 -1
  288. package/dist/cjs/internal/stm/tDeferred.js.map +1 -1
  289. package/dist/cjs/internal/stm/tMap.js +2 -1
  290. package/dist/cjs/internal/stm/tMap.js.map +1 -1
  291. package/dist/cjs/internal/stm/tPriorityQueue.js +1 -1
  292. package/dist/cjs/internal/stm/tPriorityQueue.js.map +1 -1
  293. package/dist/cjs/internal/stm/tPubSub.js +17 -14
  294. package/dist/cjs/internal/stm/tPubSub.js.map +1 -1
  295. package/dist/cjs/internal/stm/tQueue.js +8 -7
  296. package/dist/cjs/internal/stm/tQueue.js.map +1 -1
  297. package/dist/cjs/internal/stm/tRandom.js.map +1 -1
  298. package/dist/cjs/internal/stm/tReentrantLock.js.map +1 -1
  299. package/dist/cjs/internal/stm/tRef.js +1 -1
  300. package/dist/cjs/internal/stm/tRef.js.map +1 -1
  301. package/dist/cjs/internal/stm/tSemaphore.js +2 -2
  302. package/dist/cjs/internal/stm/tSemaphore.js.map +1 -1
  303. package/dist/cjs/internal/stm/tSet.js +1 -1
  304. package/dist/cjs/internal/stm/tSet.js.map +1 -1
  305. package/dist/cjs/internal/stream/haltStrategy.js.map +1 -1
  306. package/dist/cjs/internal/stream/handoff.js +1 -1
  307. package/dist/cjs/internal/stream/handoff.js.map +1 -1
  308. package/dist/cjs/internal/stream.js +5 -5
  309. package/dist/cjs/internal/stream.js.map +1 -1
  310. package/dist/cjs/internal/string-utils.js.map +1 -1
  311. package/dist/cjs/internal/subscriptionRef.js +1 -1
  312. package/dist/cjs/internal/subscriptionRef.js.map +1 -1
  313. package/dist/cjs/internal/supervisor/patch.js.map +1 -1
  314. package/dist/cjs/internal/supervisor.js +1 -0
  315. package/dist/cjs/internal/supervisor.js.map +1 -1
  316. package/dist/cjs/internal/synchronizedRef.js.map +1 -1
  317. package/dist/cjs/internal/take.js +3 -2
  318. package/dist/cjs/internal/take.js.map +1 -1
  319. package/dist/cjs/internal/version.js +1 -1
  320. package/dist/dts/BigDecimal.d.ts +5 -5
  321. package/dist/dts/BigDecimal.d.ts.map +1 -1
  322. package/dist/dts/Brand.d.ts +4 -4
  323. package/dist/dts/Brand.d.ts.map +1 -1
  324. package/dist/dts/Cache.d.ts +18 -16
  325. package/dist/dts/Cache.d.ts.map +1 -1
  326. package/dist/dts/Cause.d.ts +94 -26
  327. package/dist/dts/Cause.d.ts.map +1 -1
  328. package/dist/dts/Channel.d.ts +12 -11
  329. package/dist/dts/Channel.d.ts.map +1 -1
  330. package/dist/dts/ChildExecutorDecision.d.ts.map +1 -1
  331. package/dist/dts/Chunk.d.ts +81 -69
  332. package/dist/dts/Chunk.d.ts.map +1 -1
  333. package/dist/dts/Clock.d.ts +4 -4
  334. package/dist/dts/Clock.d.ts.map +1 -1
  335. package/dist/dts/Config.d.ts +20 -19
  336. package/dist/dts/Config.d.ts.map +1 -1
  337. package/dist/dts/ConfigError.d.ts +7 -7
  338. package/dist/dts/ConfigError.d.ts.map +1 -1
  339. package/dist/dts/ConfigProvider.d.ts +3 -3
  340. package/dist/dts/ConfigProvider.d.ts.map +1 -1
  341. package/dist/dts/ConfigProviderPathPatch.d.ts +1 -1
  342. package/dist/dts/ConfigProviderPathPatch.d.ts.map +1 -1
  343. package/dist/dts/Console.d.ts +36 -36
  344. package/dist/dts/Console.d.ts.map +1 -1
  345. package/dist/dts/Context.d.ts +8 -7
  346. package/dist/dts/Context.d.ts.map +1 -1
  347. package/dist/dts/Data.d.ts +6 -20
  348. package/dist/dts/Data.d.ts.map +1 -1
  349. package/dist/dts/Deferred.d.ts +5 -4
  350. package/dist/dts/Deferred.d.ts.map +1 -1
  351. package/dist/dts/Differ.d.ts +24 -23
  352. package/dist/dts/Differ.d.ts.map +1 -1
  353. package/dist/dts/Duration.d.ts +12 -1
  354. package/dist/dts/Duration.d.ts.map +1 -1
  355. package/dist/dts/Effect.d.ts +62 -45
  356. package/dist/dts/Effect.d.ts.map +1 -1
  357. package/dist/dts/Either.d.ts +61 -13
  358. package/dist/dts/Either.d.ts.map +1 -1
  359. package/dist/dts/Equal.d.ts +1 -1
  360. package/dist/dts/Equal.d.ts.map +1 -1
  361. package/dist/dts/Equivalence.d.ts +2 -2
  362. package/dist/dts/Equivalence.d.ts.map +1 -1
  363. package/dist/dts/Exit.d.ts +5 -3
  364. package/dist/dts/Exit.d.ts.map +1 -1
  365. package/dist/dts/Fiber.d.ts +17 -16
  366. package/dist/dts/Fiber.d.ts.map +1 -1
  367. package/dist/dts/FiberRef.d.ts +9 -3
  368. package/dist/dts/FiberRef.d.ts.map +1 -1
  369. package/dist/dts/GroupBy.d.ts +7 -6
  370. package/dist/dts/GroupBy.d.ts.map +1 -1
  371. package/dist/dts/HKT.d.ts +5 -4
  372. package/dist/dts/HKT.d.ts.map +1 -1
  373. package/dist/dts/Hash.d.ts +1 -1
  374. package/dist/dts/Hash.d.ts.map +1 -1
  375. package/dist/dts/HashMap.d.ts +6 -4
  376. package/dist/dts/HashMap.d.ts.map +1 -1
  377. package/dist/dts/HashSet.d.ts +9 -9
  378. package/dist/dts/HashSet.d.ts.map +1 -1
  379. package/dist/dts/Inspectable.d.ts +3 -7
  380. package/dist/dts/Inspectable.d.ts.map +1 -1
  381. package/dist/dts/KeyedPool.d.ts +8 -7
  382. package/dist/dts/KeyedPool.d.ts.map +1 -1
  383. package/dist/dts/Layer.d.ts +16 -41
  384. package/dist/dts/Layer.d.ts.map +1 -1
  385. package/dist/dts/List.d.ts +48 -49
  386. package/dist/dts/List.d.ts.map +1 -1
  387. package/dist/dts/Logger.d.ts +7 -6
  388. package/dist/dts/Logger.d.ts.map +1 -1
  389. package/dist/dts/Match.d.ts +31 -19
  390. package/dist/dts/Match.d.ts.map +1 -1
  391. package/dist/dts/MergeDecision.d.ts +8 -7
  392. package/dist/dts/MergeDecision.d.ts.map +1 -1
  393. package/dist/dts/MergeState.d.ts +5 -5
  394. package/dist/dts/MergeState.d.ts.map +1 -1
  395. package/dist/dts/Metric.d.ts +11 -10
  396. package/dist/dts/Metric.d.ts.map +1 -1
  397. package/dist/dts/MetricHook.d.ts +7 -6
  398. package/dist/dts/MetricHook.d.ts.map +1 -1
  399. package/dist/dts/MetricKey.d.ts +4 -3
  400. package/dist/dts/MetricKey.d.ts.map +1 -1
  401. package/dist/dts/MetricKeyType.d.ts +5 -4
  402. package/dist/dts/MetricKeyType.d.ts.map +1 -1
  403. package/dist/dts/MetricPair.d.ts +4 -3
  404. package/dist/dts/MetricPair.d.ts.map +1 -1
  405. package/dist/dts/MetricPolling.d.ts +16 -16
  406. package/dist/dts/MetricPolling.d.ts.map +1 -1
  407. package/dist/dts/MetricRegistry.d.ts +7 -7
  408. package/dist/dts/MetricRegistry.d.ts.map +1 -1
  409. package/dist/dts/MetricState.d.ts +6 -5
  410. package/dist/dts/MetricState.d.ts.map +1 -1
  411. package/dist/dts/MutableHashMap.d.ts +1 -1
  412. package/dist/dts/MutableHashMap.d.ts.map +1 -1
  413. package/dist/dts/MutableHashSet.d.ts +1 -1
  414. package/dist/dts/MutableHashSet.d.ts.map +1 -1
  415. package/dist/dts/MutableList.d.ts +1 -1
  416. package/dist/dts/MutableList.d.ts.map +1 -1
  417. package/dist/dts/MutableQueue.d.ts +1 -1
  418. package/dist/dts/MutableQueue.d.ts.map +1 -1
  419. package/dist/dts/MutableRef.d.ts +1 -1
  420. package/dist/dts/MutableRef.d.ts.map +1 -1
  421. package/dist/dts/NonEmptyIterable.d.ts +2 -2
  422. package/dist/dts/NonEmptyIterable.d.ts.map +1 -1
  423. package/dist/dts/Option.d.ts +39 -24
  424. package/dist/dts/Option.d.ts.map +1 -1
  425. package/dist/dts/Order.d.ts +2 -2
  426. package/dist/dts/Order.d.ts.map +1 -1
  427. package/dist/dts/Pipeable.d.ts +21 -23
  428. package/dist/dts/Pipeable.d.ts.map +1 -1
  429. package/dist/dts/Pool.d.ts +21 -22
  430. package/dist/dts/Pool.d.ts.map +1 -1
  431. package/dist/dts/Predicate.d.ts +17 -2
  432. package/dist/dts/Predicate.d.ts.map +1 -1
  433. package/dist/dts/PrimaryKey.d.ts +21 -0
  434. package/dist/dts/PrimaryKey.d.ts.map +1 -0
  435. package/dist/dts/PubSub.d.ts +3 -3
  436. package/dist/dts/PubSub.d.ts.map +1 -1
  437. package/dist/dts/Queue.d.ts +49 -29
  438. package/dist/dts/Queue.d.ts.map +1 -1
  439. package/dist/dts/Random.d.ts +3 -3
  440. package/dist/dts/Random.d.ts.map +1 -1
  441. package/dist/dts/ReadonlyArray.d.ts +170 -206
  442. package/dist/dts/ReadonlyArray.d.ts.map +1 -1
  443. package/dist/dts/ReadonlyRecord.d.ts +51 -16
  444. package/dist/dts/ReadonlyRecord.d.ts.map +1 -1
  445. package/dist/dts/RedBlackTree.d.ts +6 -2
  446. package/dist/dts/RedBlackTree.d.ts.map +1 -1
  447. package/dist/dts/Ref.d.ts +5 -4
  448. package/dist/dts/Ref.d.ts.map +1 -1
  449. package/dist/dts/Reloadable.d.ts +4 -3
  450. package/dist/dts/Reloadable.d.ts.map +1 -1
  451. package/dist/dts/Request.d.ts +63 -11
  452. package/dist/dts/Request.d.ts.map +1 -1
  453. package/dist/dts/RequestBlock.d.ts +20 -39
  454. package/dist/dts/RequestBlock.d.ts.map +1 -1
  455. package/dist/dts/RequestResolver.d.ts +7 -6
  456. package/dist/dts/RequestResolver.d.ts.map +1 -1
  457. package/dist/dts/Resource.d.ts +5 -4
  458. package/dist/dts/Resource.d.ts.map +1 -1
  459. package/dist/dts/Runtime.d.ts +3 -3
  460. package/dist/dts/Runtime.d.ts.map +1 -1
  461. package/dist/dts/STM.d.ts +13 -12
  462. package/dist/dts/STM.d.ts.map +1 -1
  463. package/dist/dts/Schedule.d.ts +13 -12
  464. package/dist/dts/Schedule.d.ts.map +1 -1
  465. package/dist/dts/Scheduler.d.ts +3 -3
  466. package/dist/dts/Scheduler.d.ts.map +1 -1
  467. package/dist/dts/ScopedCache.d.ts +13 -12
  468. package/dist/dts/ScopedCache.d.ts.map +1 -1
  469. package/dist/dts/ScopedRef.d.ts +4 -3
  470. package/dist/dts/ScopedRef.d.ts.map +1 -1
  471. package/dist/dts/SingleProducerAsyncInput.d.ts +7 -7
  472. package/dist/dts/SingleProducerAsyncInput.d.ts.map +1 -1
  473. package/dist/dts/Sink.d.ts +13 -9
  474. package/dist/dts/Sink.d.ts.map +1 -1
  475. package/dist/dts/SortedMap.d.ts +6 -2
  476. package/dist/dts/SortedMap.d.ts.map +1 -1
  477. package/dist/dts/SortedSet.d.ts +7 -12
  478. package/dist/dts/SortedSet.d.ts.map +1 -1
  479. package/dist/dts/Stream.d.ts +32 -23
  480. package/dist/dts/Stream.d.ts.map +1 -1
  481. package/dist/dts/StreamEmit.d.ts +12 -12
  482. package/dist/dts/StreamEmit.d.ts.map +1 -1
  483. package/dist/dts/Streamable.d.ts.map +1 -1
  484. package/dist/dts/SubscriptionRef.d.ts +4 -3
  485. package/dist/dts/SubscriptionRef.d.ts.map +1 -1
  486. package/dist/dts/Supervisor.d.ts +11 -10
  487. package/dist/dts/Supervisor.d.ts.map +1 -1
  488. package/dist/dts/SynchronizedRef.d.ts +5 -4
  489. package/dist/dts/SynchronizedRef.d.ts.map +1 -1
  490. package/dist/dts/TArray.d.ts +4 -3
  491. package/dist/dts/TArray.d.ts.map +1 -1
  492. package/dist/dts/TDeferred.d.ts +5 -4
  493. package/dist/dts/TDeferred.d.ts.map +1 -1
  494. package/dist/dts/TMap.d.ts +5 -4
  495. package/dist/dts/TMap.d.ts.map +1 -1
  496. package/dist/dts/TPriorityQueue.d.ts +4 -3
  497. package/dist/dts/TPriorityQueue.d.ts.map +1 -1
  498. package/dist/dts/TPubSub.d.ts +5 -1
  499. package/dist/dts/TPubSub.d.ts.map +1 -1
  500. package/dist/dts/TQueue.d.ts +12 -11
  501. package/dist/dts/TQueue.d.ts.map +1 -1
  502. package/dist/dts/TRandom.d.ts +3 -3
  503. package/dist/dts/TRandom.d.ts.map +1 -1
  504. package/dist/dts/TRef.d.ts +5 -4
  505. package/dist/dts/TRef.d.ts.map +1 -1
  506. package/dist/dts/TSet.d.ts +4 -3
  507. package/dist/dts/TSet.d.ts.map +1 -1
  508. package/dist/dts/Take.d.ts +5 -4
  509. package/dist/dts/Take.d.ts.map +1 -1
  510. package/dist/dts/TestAnnotation.d.ts +6 -3
  511. package/dist/dts/TestAnnotation.d.ts.map +1 -1
  512. package/dist/dts/TestAnnotations.d.ts +2 -2
  513. package/dist/dts/TestAnnotations.d.ts.map +1 -1
  514. package/dist/dts/TestClock.d.ts +3 -3
  515. package/dist/dts/TestClock.d.ts.map +1 -1
  516. package/dist/dts/TestContext.d.ts.map +1 -1
  517. package/dist/dts/TestLive.d.ts +1 -1
  518. package/dist/dts/TestLive.d.ts.map +1 -1
  519. package/dist/dts/TestSized.d.ts +1 -1
  520. package/dist/dts/TestSized.d.ts.map +1 -1
  521. package/dist/dts/Tracer.d.ts +5 -5
  522. package/dist/dts/Tracer.d.ts.map +1 -1
  523. package/dist/dts/Types.d.ts +28 -0
  524. package/dist/dts/Types.d.ts.map +1 -1
  525. package/dist/dts/UpstreamPullRequest.d.ts +4 -3
  526. package/dist/dts/UpstreamPullRequest.d.ts.map +1 -1
  527. package/dist/dts/UpstreamPullStrategy.d.ts +5 -4
  528. package/dist/dts/UpstreamPullStrategy.d.ts.map +1 -1
  529. package/dist/dts/Utils.d.ts +7 -6
  530. package/dist/dts/Utils.d.ts.map +1 -1
  531. package/dist/dts/index.d.ts +4 -0
  532. package/dist/dts/index.d.ts.map +1 -1
  533. package/dist/dts/internal/config.d.ts +1 -2
  534. package/dist/dts/internal/config.d.ts.map +1 -1
  535. package/dist/dts/internal/core-stream.d.ts.map +1 -1
  536. package/dist/dts/internal/fiberScope.d.ts +1 -1
  537. package/dist/dts/internal/fiberScope.d.ts.map +1 -1
  538. package/dist/dts/internal/logger.d.ts.map +1 -1
  539. package/dist/dts/internal/metric/keyType.d.ts.map +1 -1
  540. package/dist/dts/internal/stream/handoffSignal.d.ts +1 -1
  541. package/dist/dts/internal/stream/handoffSignal.d.ts.map +1 -1
  542. package/dist/dts/internal/version.d.ts +1 -1
  543. package/dist/esm/BigDecimal.js +7 -7
  544. package/dist/esm/BigDecimal.js.map +1 -1
  545. package/dist/esm/BigInt.js.map +1 -1
  546. package/dist/esm/Boolean.js.map +1 -1
  547. package/dist/esm/Brand.js.map +1 -1
  548. package/dist/esm/Cache.js.map +1 -1
  549. package/dist/esm/Cause.js +52 -17
  550. package/dist/esm/Cause.js.map +1 -1
  551. package/dist/esm/Channel.js.map +1 -1
  552. package/dist/esm/ChildExecutorDecision.js.map +1 -1
  553. package/dist/esm/Chunk.js +43 -34
  554. package/dist/esm/Chunk.js.map +1 -1
  555. package/dist/esm/Config.js +3 -3
  556. package/dist/esm/Config.js.map +1 -1
  557. package/dist/esm/Context.js.map +1 -1
  558. package/dist/esm/Data.js +10 -19
  559. package/dist/esm/Data.js.map +1 -1
  560. package/dist/esm/Deferred.js.map +1 -1
  561. package/dist/esm/Differ.js.map +1 -1
  562. package/dist/esm/Duration.js +48 -2
  563. package/dist/esm/Duration.js.map +1 -1
  564. package/dist/esm/Effect.js +9 -7
  565. package/dist/esm/Effect.js.map +1 -1
  566. package/dist/esm/Either.js +43 -7
  567. package/dist/esm/Either.js.map +1 -1
  568. package/dist/esm/Equal.js.map +1 -1
  569. package/dist/esm/Equivalence.js +1 -1
  570. package/dist/esm/Equivalence.js.map +1 -1
  571. package/dist/esm/Exit.js.map +1 -1
  572. package/dist/esm/Fiber.js.map +1 -1
  573. package/dist/esm/FiberRef.js +5 -0
  574. package/dist/esm/FiberRef.js.map +1 -1
  575. package/dist/esm/Function.js.map +1 -1
  576. package/dist/esm/GlobalValue.js.map +1 -1
  577. package/dist/esm/GroupBy.js.map +1 -1
  578. package/dist/esm/HKT.js +0 -3
  579. package/dist/esm/HKT.js.map +1 -1
  580. package/dist/esm/Hash.js.map +1 -1
  581. package/dist/esm/HashMap.js.map +1 -1
  582. package/dist/esm/Inspectable.js +2 -4
  583. package/dist/esm/Inspectable.js.map +1 -1
  584. package/dist/esm/KeyedPool.js.map +1 -1
  585. package/dist/esm/Layer.js +8 -28
  586. package/dist/esm/Layer.js.map +1 -1
  587. package/dist/esm/List.js +25 -22
  588. package/dist/esm/List.js.map +1 -1
  589. package/dist/esm/LogLevel.js.map +1 -1
  590. package/dist/esm/Logger.js.map +1 -1
  591. package/dist/esm/Match.js.map +1 -1
  592. package/dist/esm/MergeDecision.js.map +1 -1
  593. package/dist/esm/MergeState.js.map +1 -1
  594. package/dist/esm/Metric.js.map +1 -1
  595. package/dist/esm/MetricHook.js.map +1 -1
  596. package/dist/esm/MetricKey.js.map +1 -1
  597. package/dist/esm/MetricKeyType.js.map +1 -1
  598. package/dist/esm/MetricPair.js.map +1 -1
  599. package/dist/esm/MetricPolling.js +1 -1
  600. package/dist/esm/MetricPolling.js.map +1 -1
  601. package/dist/esm/MetricState.js.map +1 -1
  602. package/dist/esm/MutableHashMap.js +2 -2
  603. package/dist/esm/MutableHashMap.js.map +1 -1
  604. package/dist/esm/MutableHashSet.js +2 -2
  605. package/dist/esm/MutableHashSet.js.map +1 -1
  606. package/dist/esm/MutableList.js +2 -2
  607. package/dist/esm/MutableList.js.map +1 -1
  608. package/dist/esm/MutableQueue.js +2 -2
  609. package/dist/esm/MutableQueue.js.map +1 -1
  610. package/dist/esm/MutableRef.js +2 -2
  611. package/dist/esm/MutableRef.js.map +1 -1
  612. package/dist/esm/NonEmptyIterable.js.map +1 -1
  613. package/dist/esm/Number.js.map +1 -1
  614. package/dist/esm/Option.js +21 -14
  615. package/dist/esm/Option.js.map +1 -1
  616. package/dist/esm/Order.js +1 -1
  617. package/dist/esm/Order.js.map +1 -1
  618. package/dist/esm/Ordering.js.map +1 -1
  619. package/dist/esm/Pipeable.js.map +1 -1
  620. package/dist/esm/Pool.js +15 -17
  621. package/dist/esm/Pool.js.map +1 -1
  622. package/dist/esm/Predicate.js +15 -0
  623. package/dist/esm/Predicate.js.map +1 -1
  624. package/dist/esm/PrimaryKey.js +14 -0
  625. package/dist/esm/PrimaryKey.js.map +1 -0
  626. package/dist/esm/Queue.js +5 -0
  627. package/dist/esm/Queue.js.map +1 -1
  628. package/dist/esm/ReadonlyArray.js +195 -177
  629. package/dist/esm/ReadonlyArray.js.map +1 -1
  630. package/dist/esm/ReadonlyRecord.js +58 -7
  631. package/dist/esm/ReadonlyRecord.js.map +1 -1
  632. package/dist/esm/RedBlackTree.js.map +1 -1
  633. package/dist/esm/Ref.js.map +1 -1
  634. package/dist/esm/Reloadable.js.map +1 -1
  635. package/dist/esm/Request.js +41 -0
  636. package/dist/esm/Request.js.map +1 -1
  637. package/dist/esm/RequestBlock.js +3 -22
  638. package/dist/esm/RequestBlock.js.map +1 -1
  639. package/dist/esm/RequestResolver.js.map +1 -1
  640. package/dist/esm/Resource.js.map +1 -1
  641. package/dist/esm/STM.js +1 -1
  642. package/dist/esm/STM.js.map +1 -1
  643. package/dist/esm/Schedule.js.map +1 -1
  644. package/dist/esm/Scheduler.js.map +1 -1
  645. package/dist/esm/ScopedCache.js.map +1 -1
  646. package/dist/esm/ScopedRef.js.map +1 -1
  647. package/dist/esm/Sink.js.map +1 -1
  648. package/dist/esm/SortedMap.js +6 -3
  649. package/dist/esm/SortedMap.js.map +1 -1
  650. package/dist/esm/SortedSet.js +4 -4
  651. package/dist/esm/SortedSet.js.map +1 -1
  652. package/dist/esm/Stream.js.map +1 -1
  653. package/dist/esm/Streamable.js +3 -0
  654. package/dist/esm/Streamable.js.map +1 -1
  655. package/dist/esm/String.js.map +1 -1
  656. package/dist/esm/Struct.js.map +1 -1
  657. package/dist/esm/SubscriptionRef.js.map +1 -1
  658. package/dist/esm/Supervisor.js.map +1 -1
  659. package/dist/esm/SynchronizedRef.js.map +1 -1
  660. package/dist/esm/TArray.js.map +1 -1
  661. package/dist/esm/TDeferred.js.map +1 -1
  662. package/dist/esm/TMap.js.map +1 -1
  663. package/dist/esm/TPriorityQueue.js.map +1 -1
  664. package/dist/esm/TPubSub.js.map +1 -1
  665. package/dist/esm/TQueue.js.map +1 -1
  666. package/dist/esm/TRef.js.map +1 -1
  667. package/dist/esm/TSet.js.map +1 -1
  668. package/dist/esm/Take.js.map +1 -1
  669. package/dist/esm/TestAnnotation.js +3 -1
  670. package/dist/esm/TestAnnotation.js.map +1 -1
  671. package/dist/esm/TestAnnotationMap.js.map +1 -1
  672. package/dist/esm/TestAnnotations.js.map +1 -1
  673. package/dist/esm/TestClock.js.map +1 -1
  674. package/dist/esm/TestContext.js +2 -2
  675. package/dist/esm/TestContext.js.map +1 -1
  676. package/dist/esm/UpstreamPullRequest.js.map +1 -1
  677. package/dist/esm/UpstreamPullStrategy.js.map +1 -1
  678. package/dist/esm/Utils.js.map +1 -1
  679. package/dist/esm/index.js +4 -0
  680. package/dist/esm/index.js.map +1 -1
  681. package/dist/esm/internal/Iterable.js.map +1 -1
  682. package/dist/esm/internal/blockedRequests.js +3 -2
  683. package/dist/esm/internal/blockedRequests.js.map +1 -1
  684. package/dist/esm/internal/cache.js +3 -0
  685. package/dist/esm/internal/cache.js.map +1 -1
  686. package/dist/esm/internal/cause.js +4 -97
  687. package/dist/esm/internal/cause.js.map +1 -1
  688. package/dist/esm/internal/channel/channelExecutor.js.map +1 -1
  689. package/dist/esm/internal/channel/channelState.js +2 -1
  690. package/dist/esm/internal/channel/channelState.js.map +1 -1
  691. package/dist/esm/internal/channel/childExecutorDecision.js.map +1 -1
  692. package/dist/esm/internal/channel/continuation.js +9 -1
  693. package/dist/esm/internal/channel/continuation.js.map +1 -1
  694. package/dist/esm/internal/channel/mergeDecision.js.map +1 -1
  695. package/dist/esm/internal/channel/mergeState.js.map +1 -1
  696. package/dist/esm/internal/channel/mergeStrategy.js.map +1 -1
  697. package/dist/esm/internal/channel/singleProducerAsyncInput.js.map +1 -1
  698. package/dist/esm/internal/channel/subexecutor.js.map +1 -1
  699. package/dist/esm/internal/channel/upstreamPullRequest.js +1 -1
  700. package/dist/esm/internal/channel/upstreamPullRequest.js.map +1 -1
  701. package/dist/esm/internal/channel/upstreamPullStrategy.js +1 -1
  702. package/dist/esm/internal/channel/upstreamPullStrategy.js.map +1 -1
  703. package/dist/esm/internal/channel.js.map +1 -1
  704. package/dist/esm/internal/clock.js.map +1 -1
  705. package/dist/esm/internal/concurrency.js.map +1 -1
  706. package/dist/esm/internal/config.js +15 -22
  707. package/dist/esm/internal/config.js.map +1 -1
  708. package/dist/esm/internal/configError.js +2 -2
  709. package/dist/esm/internal/configError.js.map +1 -1
  710. package/dist/esm/internal/configProvider/pathPatch.js.map +1 -1
  711. package/dist/esm/internal/configProvider.js +18 -4
  712. package/dist/esm/internal/configProvider.js.map +1 -1
  713. package/dist/esm/internal/configSecret.js.map +1 -1
  714. package/dist/esm/internal/context.js +6 -6
  715. package/dist/esm/internal/context.js.map +1 -1
  716. package/dist/esm/internal/core-effect.js +19 -15
  717. package/dist/esm/internal/core-effect.js.map +1 -1
  718. package/dist/esm/internal/core-stream.js +7 -1
  719. package/dist/esm/internal/core-stream.js.map +1 -1
  720. package/dist/esm/internal/core.js +196 -84
  721. package/dist/esm/internal/core.js.map +1 -1
  722. package/dist/esm/internal/data.js +3 -21
  723. package/dist/esm/internal/data.js.map +1 -1
  724. package/dist/esm/internal/dataSource.js +1 -1
  725. package/dist/esm/internal/dataSource.js.map +1 -1
  726. package/dist/esm/internal/deferred.js +2 -0
  727. package/dist/esm/internal/deferred.js.map +1 -1
  728. package/dist/esm/internal/differ/chunkPatch.js.map +1 -1
  729. package/dist/esm/internal/differ/contextPatch.js.map +1 -1
  730. package/dist/esm/internal/differ/hashMapPatch.js.map +1 -1
  731. package/dist/esm/internal/differ/hashSetPatch.js.map +1 -1
  732. package/dist/esm/internal/differ/orPatch.js.map +1 -1
  733. package/dist/esm/internal/differ.js.map +1 -1
  734. package/dist/esm/internal/effect/circular.js +1 -0
  735. package/dist/esm/internal/effect/circular.js.map +1 -1
  736. package/dist/esm/internal/effectable.js +37 -6
  737. package/dist/esm/internal/effectable.js.map +1 -1
  738. package/dist/esm/internal/either.js +2 -2
  739. package/dist/esm/internal/either.js.map +1 -1
  740. package/dist/esm/internal/encoding/base64.js.map +1 -1
  741. package/dist/esm/internal/encoding/base64Url.js.map +1 -1
  742. package/dist/esm/internal/encoding/common.js.map +1 -1
  743. package/dist/esm/internal/encoding/hex.js.map +1 -1
  744. package/dist/esm/internal/executionStrategy.js.map +1 -1
  745. package/dist/esm/internal/fiber.js +2 -0
  746. package/dist/esm/internal/fiber.js.map +1 -1
  747. package/dist/esm/internal/fiberId.js +4 -4
  748. package/dist/esm/internal/fiberId.js.map +1 -1
  749. package/dist/esm/internal/fiberMessage.js.map +1 -1
  750. package/dist/esm/internal/fiberRefs/patch.js.map +1 -1
  751. package/dist/esm/internal/fiberRefs.js.map +1 -1
  752. package/dist/esm/internal/fiberRuntime.js +178 -215
  753. package/dist/esm/internal/fiberRuntime.js.map +1 -1
  754. package/dist/esm/internal/groupBy.js +4 -1
  755. package/dist/esm/internal/groupBy.js.map +1 -1
  756. package/dist/esm/internal/hashMap/array.js.map +1 -1
  757. package/dist/esm/internal/hashMap/node.js.map +1 -1
  758. package/dist/esm/internal/hashMap.js +3 -3
  759. package/dist/esm/internal/hashMap.js.map +1 -1
  760. package/dist/esm/internal/hashSet.js +4 -4
  761. package/dist/esm/internal/hashSet.js.map +1 -1
  762. package/dist/esm/internal/keyedPool.js +3 -0
  763. package/dist/esm/internal/keyedPool.js.map +1 -1
  764. package/dist/esm/internal/layer.js +22 -52
  765. package/dist/esm/internal/layer.js.map +1 -1
  766. package/dist/esm/internal/logger.js +2 -1
  767. package/dist/esm/internal/logger.js.map +1 -1
  768. package/dist/esm/internal/matcher.js.map +1 -1
  769. package/dist/esm/internal/metric/hook.js +2 -1
  770. package/dist/esm/internal/metric/hook.js.map +1 -1
  771. package/dist/esm/internal/metric/key.js +1 -1
  772. package/dist/esm/internal/metric/key.js.map +1 -1
  773. package/dist/esm/internal/metric/keyType.js +2 -1
  774. package/dist/esm/internal/metric/keyType.js.map +1 -1
  775. package/dist/esm/internal/metric/pair.js +1 -1
  776. package/dist/esm/internal/metric/pair.js.map +1 -1
  777. package/dist/esm/internal/metric/polling.js +6 -6
  778. package/dist/esm/internal/metric/polling.js.map +1 -1
  779. package/dist/esm/internal/metric/registry.js.map +1 -1
  780. package/dist/esm/internal/metric/state.js +1 -1
  781. package/dist/esm/internal/metric/state.js.map +1 -1
  782. package/dist/esm/internal/metric.js +11 -5
  783. package/dist/esm/internal/metric.js.map +1 -1
  784. package/dist/esm/internal/opCodes/layer.js +3 -3
  785. package/dist/esm/internal/opCodes/layer.js.map +1 -1
  786. package/dist/esm/internal/option.js +2 -2
  787. package/dist/esm/internal/option.js.map +1 -1
  788. package/dist/esm/internal/pool.js +2 -0
  789. package/dist/esm/internal/pool.js.map +1 -1
  790. package/dist/esm/internal/pubsub.js +25 -24
  791. package/dist/esm/internal/pubsub.js.map +1 -1
  792. package/dist/esm/internal/query.js +1 -1
  793. package/dist/esm/internal/query.js.map +1 -1
  794. package/dist/esm/internal/queue.js +13 -2
  795. package/dist/esm/internal/queue.js.map +1 -1
  796. package/dist/esm/internal/random.js.map +1 -1
  797. package/dist/esm/internal/redBlackTree/iterator.js.map +1 -1
  798. package/dist/esm/internal/redBlackTree.js +9 -3
  799. package/dist/esm/internal/redBlackTree.js.map +1 -1
  800. package/dist/esm/internal/ref.js +1 -0
  801. package/dist/esm/internal/ref.js.map +1 -1
  802. package/dist/esm/internal/reloadable.js +1 -1
  803. package/dist/esm/internal/reloadable.js.map +1 -1
  804. package/dist/esm/internal/request.js +31 -15
  805. package/dist/esm/internal/request.js.map +1 -1
  806. package/dist/esm/internal/resource.js +4 -3
  807. package/dist/esm/internal/resource.js.map +1 -1
  808. package/dist/esm/internal/ringBuffer.js.map +1 -1
  809. package/dist/esm/internal/runtime.js +3 -4
  810. package/dist/esm/internal/runtime.js.map +1 -1
  811. package/dist/esm/internal/runtimeFlags.js.map +1 -1
  812. package/dist/esm/internal/schedule/interval.js.map +1 -1
  813. package/dist/esm/internal/schedule/intervals.js.map +1 -1
  814. package/dist/esm/internal/schedule.js +12 -8
  815. package/dist/esm/internal/schedule.js.map +1 -1
  816. package/dist/esm/internal/scopedCache.js +5 -2
  817. package/dist/esm/internal/scopedCache.js.map +1 -1
  818. package/dist/esm/internal/scopedRef.js +1 -0
  819. package/dist/esm/internal/scopedRef.js.map +1 -1
  820. package/dist/esm/internal/sink.js +6 -2
  821. package/dist/esm/internal/sink.js.map +1 -1
  822. package/dist/esm/internal/stm/core.js +5 -3
  823. package/dist/esm/internal/stm/core.js.map +1 -1
  824. package/dist/esm/internal/stm/stm/journal.js.map +1 -1
  825. package/dist/esm/internal/stm/stm/stmState.js.map +1 -1
  826. package/dist/esm/internal/stm/stm/tExit.js +2 -1
  827. package/dist/esm/internal/stm/stm/tExit.js.map +1 -1
  828. package/dist/esm/internal/stm/stm.js.map +1 -1
  829. package/dist/esm/internal/stm/tArray.js +1 -1
  830. package/dist/esm/internal/stm/tArray.js.map +1 -1
  831. package/dist/esm/internal/stm/tDeferred.js.map +1 -1
  832. package/dist/esm/internal/stm/tMap.js +2 -1
  833. package/dist/esm/internal/stm/tMap.js.map +1 -1
  834. package/dist/esm/internal/stm/tPriorityQueue.js +1 -1
  835. package/dist/esm/internal/stm/tPriorityQueue.js.map +1 -1
  836. package/dist/esm/internal/stm/tPubSub.js +17 -14
  837. package/dist/esm/internal/stm/tPubSub.js.map +1 -1
  838. package/dist/esm/internal/stm/tQueue.js +8 -7
  839. package/dist/esm/internal/stm/tQueue.js.map +1 -1
  840. package/dist/esm/internal/stm/tRandom.js.map +1 -1
  841. package/dist/esm/internal/stm/tReentrantLock.js.map +1 -1
  842. package/dist/esm/internal/stm/tRef.js +1 -1
  843. package/dist/esm/internal/stm/tRef.js.map +1 -1
  844. package/dist/esm/internal/stm/tSemaphore.js +2 -2
  845. package/dist/esm/internal/stm/tSemaphore.js.map +1 -1
  846. package/dist/esm/internal/stm/tSet.js +1 -1
  847. package/dist/esm/internal/stm/tSet.js.map +1 -1
  848. package/dist/esm/internal/stream/haltStrategy.js.map +1 -1
  849. package/dist/esm/internal/stream/handoff.js +1 -1
  850. package/dist/esm/internal/stream/handoff.js.map +1 -1
  851. package/dist/esm/internal/stream.js +5 -5
  852. package/dist/esm/internal/stream.js.map +1 -1
  853. package/dist/esm/internal/string-utils.js.map +1 -1
  854. package/dist/esm/internal/subscriptionRef.js +1 -1
  855. package/dist/esm/internal/subscriptionRef.js.map +1 -1
  856. package/dist/esm/internal/supervisor/patch.js.map +1 -1
  857. package/dist/esm/internal/supervisor.js +1 -0
  858. package/dist/esm/internal/supervisor.js.map +1 -1
  859. package/dist/esm/internal/synchronizedRef.js.map +1 -1
  860. package/dist/esm/internal/take.js +3 -2
  861. package/dist/esm/internal/take.js.map +1 -1
  862. package/dist/esm/internal/version.js +1 -1
  863. package/dist/esm/package.json +1 -1
  864. package/package.json +10 -2
  865. package/src/BigDecimal.ts +7 -7
  866. package/src/Brand.ts +4 -4
  867. package/src/Cache.ts +18 -19
  868. package/src/Cause.ts +126 -41
  869. package/src/Channel.ts +12 -11
  870. package/src/ChildExecutorDecision.ts +10 -2
  871. package/src/Chunk.ts +110 -93
  872. package/src/Clock.ts +4 -4
  873. package/src/Config.ts +20 -20
  874. package/src/ConfigError.ts +8 -8
  875. package/src/ConfigProvider.ts +5 -5
  876. package/src/ConfigProviderPathPatch.ts +1 -1
  877. package/src/Console.ts +36 -36
  878. package/src/Context.ts +8 -7
  879. package/src/Data.ts +17 -48
  880. package/src/Deferred.ts +5 -4
  881. package/src/Differ.ts +24 -23
  882. package/src/Duration.ts +59 -2
  883. package/src/Effect.ts +104 -53
  884. package/src/Either.ts +93 -15
  885. package/src/Equal.ts +1 -1
  886. package/src/Equivalence.ts +2 -2
  887. package/src/Exit.ts +21 -7
  888. package/src/Fiber.ts +25 -18
  889. package/src/FiberRef.ts +14 -7
  890. package/src/GroupBy.ts +7 -6
  891. package/src/HKT.ts +5 -4
  892. package/src/Hash.ts +1 -1
  893. package/src/HashMap.ts +6 -4
  894. package/src/HashSet.ts +11 -11
  895. package/src/Inspectable.ts +5 -7
  896. package/src/KeyedPool.ts +16 -9
  897. package/src/Layer.ts +21 -58
  898. package/src/List.ts +68 -65
  899. package/src/Logger.ts +7 -6
  900. package/src/Match.ts +61 -49
  901. package/src/MergeDecision.ts +8 -7
  902. package/src/MergeState.ts +11 -5
  903. package/src/Metric.ts +13 -10
  904. package/src/MetricHook.ts +7 -6
  905. package/src/MetricKey.ts +4 -3
  906. package/src/MetricKeyType.ts +5 -4
  907. package/src/MetricPair.ts +4 -3
  908. package/src/MetricPolling.ts +22 -22
  909. package/src/MetricRegistry.ts +9 -9
  910. package/src/MetricState.ts +8 -5
  911. package/src/MutableHashMap.ts +3 -3
  912. package/src/MutableHashSet.ts +3 -3
  913. package/src/MutableList.ts +3 -3
  914. package/src/MutableQueue.ts +3 -3
  915. package/src/MutableRef.ts +3 -3
  916. package/src/NonEmptyIterable.ts +2 -2
  917. package/src/Option.ts +50 -29
  918. package/src/Order.ts +2 -2
  919. package/src/Pipeable.ts +275 -277
  920. package/src/Pool.ts +21 -22
  921. package/src/Predicate.ts +21 -2
  922. package/src/PrimaryKey.ts +23 -0
  923. package/src/PubSub.ts +3 -3
  924. package/src/Queue.ts +55 -32
  925. package/src/Random.ts +3 -3
  926. package/src/ReadonlyArray.ts +351 -390
  927. package/src/ReadonlyRecord.ts +97 -40
  928. package/src/RedBlackTree.ts +6 -2
  929. package/src/Ref.ts +5 -4
  930. package/src/Reloadable.ts +4 -3
  931. package/src/Request.ts +68 -11
  932. package/src/RequestBlock.ts +27 -66
  933. package/src/RequestResolver.ts +7 -6
  934. package/src/Resource.ts +5 -4
  935. package/src/Runtime.ts +3 -3
  936. package/src/STM.ts +27 -15
  937. package/src/Schedule.ts +14 -13
  938. package/src/Scheduler.ts +3 -3
  939. package/src/Scope.ts +3 -3
  940. package/src/ScopedCache.ts +13 -12
  941. package/src/ScopedRef.ts +4 -3
  942. package/src/SingleProducerAsyncInput.ts +7 -7
  943. package/src/Sink.ts +29 -14
  944. package/src/SortedMap.ts +12 -5
  945. package/src/SortedSet.ts +29 -43
  946. package/src/Stream.ts +75 -33
  947. package/src/StreamEmit.ts +12 -12
  948. package/src/Streamable.ts +3 -0
  949. package/src/SubscriptionRef.ts +6 -3
  950. package/src/Supervisor.ts +12 -11
  951. package/src/SynchronizedRef.ts +5 -4
  952. package/src/TArray.ts +5 -4
  953. package/src/TDeferred.ts +6 -5
  954. package/src/TMap.ts +6 -5
  955. package/src/TPriorityQueue.ts +5 -4
  956. package/src/TPubSub.ts +7 -3
  957. package/src/TQueue.ts +12 -11
  958. package/src/TRandom.ts +3 -3
  959. package/src/TRef.ts +6 -5
  960. package/src/TSet.ts +5 -4
  961. package/src/Take.ts +5 -4
  962. package/src/TestAnnotation.ts +9 -5
  963. package/src/TestAnnotations.ts +2 -2
  964. package/src/TestClock.ts +3 -5
  965. package/src/TestContext.ts +5 -4
  966. package/src/TestLive.ts +1 -1
  967. package/src/TestSized.ts +1 -1
  968. package/src/Tracer.ts +6 -6
  969. package/src/Types.ts +32 -0
  970. package/src/UpstreamPullRequest.ts +12 -5
  971. package/src/UpstreamPullStrategy.ts +5 -4
  972. package/src/Utils.ts +7 -6
  973. package/src/index.ts +5 -0
  974. package/src/internal/blockedRequests.ts +78 -81
  975. package/src/internal/cache.ts +15 -12
  976. package/src/internal/cause.ts +15 -139
  977. package/src/internal/channel/channelExecutor.ts +1 -1
  978. package/src/internal/channel/channelState.ts +10 -8
  979. package/src/internal/channel/continuation.ts +71 -42
  980. package/src/internal/channel/mergeDecision.ts +1 -1
  981. package/src/internal/channel/singleProducerAsyncInput.ts +1 -1
  982. package/src/internal/channel/subexecutor.ts +7 -7
  983. package/src/internal/channel/upstreamPullRequest.ts +1 -1
  984. package/src/internal/channel/upstreamPullStrategy.ts +1 -1
  985. package/src/internal/config.ts +21 -29
  986. package/src/internal/configError.ts +2 -2
  987. package/src/internal/configProvider.ts +20 -5
  988. package/src/internal/context.ts +6 -6
  989. package/src/internal/core-effect.ts +75 -67
  990. package/src/internal/core-stream.ts +25 -22
  991. package/src/internal/core.ts +360 -152
  992. package/src/internal/data.ts +3 -22
  993. package/src/internal/dataSource.ts +1 -1
  994. package/src/internal/deferred.ts +7 -5
  995. package/src/internal/differ/contextPatch.ts +5 -5
  996. package/src/internal/differ/orPatch.ts +18 -6
  997. package/src/internal/effect/circular.ts +4 -3
  998. package/src/internal/effectable.ts +41 -8
  999. package/src/internal/either.ts +2 -2
  1000. package/src/internal/fiber.ts +2 -0
  1001. package/src/internal/fiberId.ts +4 -4
  1002. package/src/internal/fiberMessage.ts +1 -4
  1003. package/src/internal/fiberRuntime.ts +242 -284
  1004. package/src/internal/fiberScope.ts +1 -1
  1005. package/src/internal/groupBy.ts +5 -2
  1006. package/src/internal/hashMap/node.ts +5 -5
  1007. package/src/internal/hashMap.ts +25 -24
  1008. package/src/internal/hashSet.ts +20 -22
  1009. package/src/internal/keyedPool.ts +7 -4
  1010. package/src/internal/layer.ts +35 -89
  1011. package/src/internal/logger.ts +2 -1
  1012. package/src/internal/metric/hook.ts +2 -1
  1013. package/src/internal/metric/key.ts +2 -2
  1014. package/src/internal/metric/keyType.ts +2 -1
  1015. package/src/internal/metric/pair.ts +1 -1
  1016. package/src/internal/metric/polling.ts +26 -26
  1017. package/src/internal/metric/state.ts +1 -1
  1018. package/src/internal/metric.ts +12 -5
  1019. package/src/internal/opCodes/layer.ts +6 -6
  1020. package/src/internal/option.ts +2 -2
  1021. package/src/internal/pool.ts +4 -2
  1022. package/src/internal/pubsub.ts +66 -62
  1023. package/src/internal/query.ts +1 -1
  1024. package/src/internal/queue.ts +36 -14
  1025. package/src/internal/redBlackTree/iterator.ts +1 -1
  1026. package/src/internal/redBlackTree/node.ts +1 -1
  1027. package/src/internal/redBlackTree.ts +11 -4
  1028. package/src/internal/ref.ts +2 -1
  1029. package/src/internal/reloadable.ts +2 -2
  1030. package/src/internal/request.ts +53 -14
  1031. package/src/internal/resource.ts +6 -5
  1032. package/src/internal/ringBuffer.ts +1 -1
  1033. package/src/internal/runtime.ts +4 -5
  1034. package/src/internal/schedule.ts +12 -8
  1035. package/src/internal/scopedCache.ts +14 -7
  1036. package/src/internal/scopedRef.ts +2 -1
  1037. package/src/internal/sink.ts +11 -4
  1038. package/src/internal/stack.ts +1 -1
  1039. package/src/internal/stm/core.ts +6 -4
  1040. package/src/internal/stm/stm/stmState.ts +1 -1
  1041. package/src/internal/stm/stm/tExit.ts +8 -6
  1042. package/src/internal/stm/stm/tryCommit.ts +1 -1
  1043. package/src/internal/stm/stm/versioned.ts +1 -1
  1044. package/src/internal/stm/stm.ts +2 -2
  1045. package/src/internal/stm/tArray.ts +3 -3
  1046. package/src/internal/stm/tDeferred.ts +3 -3
  1047. package/src/internal/stm/tMap.ts +5 -4
  1048. package/src/internal/stm/tPriorityQueue.ts +3 -3
  1049. package/src/internal/stm/tPubSub.ts +43 -38
  1050. package/src/internal/stm/tQueue.ts +9 -8
  1051. package/src/internal/stm/tReentrantLock.ts +2 -2
  1052. package/src/internal/stm/tRef.ts +2 -2
  1053. package/src/internal/stm/tSemaphore.ts +2 -2
  1054. package/src/internal/stm/tSet.ts +3 -3
  1055. package/src/internal/stream/debounceState.ts +2 -2
  1056. package/src/internal/stream/handoff.ts +4 -4
  1057. package/src/internal/stream/handoffSignal.ts +2 -2
  1058. package/src/internal/stream/pull.ts +1 -1
  1059. package/src/internal/stream.ts +68 -35
  1060. package/src/internal/subscriptionRef.ts +3 -3
  1061. package/src/internal/supervisor.ts +4 -3
  1062. package/src/internal/take.ts +4 -3
  1063. package/src/internal/version.ts +1 -1
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
@@ -23,12 +24,12 @@ export type TDeferredTypeId = typeof TDeferredTypeId
23
24
  * @since 2.0.0
24
25
  * @category models
25
26
  */
26
- export interface TDeferred<E, A> extends TDeferred.Variance<E, A> {}
27
+ export interface TDeferred<in out E, in out A> extends TDeferred.Variance<E, A> {}
27
28
  /**
28
29
  * @internal
29
30
  * @since 2.0.0
30
31
  */
31
- export interface TDeferred<E, A> {
32
+ export interface TDeferred<in out E, in out A> {
32
33
  /** @internal */
33
34
  readonly ref: TRef.TRef<Option.Option<Either.Either<E, A>>>
34
35
  }
@@ -41,10 +42,10 @@ export declare namespace TDeferred {
41
42
  * @since 2.0.0
42
43
  * @category models
43
44
  */
44
- export interface Variance<E, A> {
45
+ export interface Variance<in out E, in out A> {
45
46
  readonly [TDeferredTypeId]: {
46
- readonly _E: (_: never) => E
47
- readonly _A: (_: never) => 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
@@ -29,12 +30,12 @@ export type TMapTypeId = typeof TMapTypeId
29
30
  * @since 2.0.0
30
31
  * @category models
31
32
  */
32
- export interface TMap<K, V> extends TMap.Variance<K, V> {}
33
+ export interface TMap<in out K, in out V> extends TMap.Variance<K, V> {}
33
34
  /**
34
35
  * @internal
35
36
  * @since 2.0.0
36
37
  */
37
- export interface TMap<K, V> {
38
+ export interface TMap<in out K, in out V> {
38
39
  /** @internal */
39
40
  readonly tBuckets: TRef.TRef<TArray.TArray<Chunk.Chunk<readonly [K, V]>>>
40
41
  /** @internal */
@@ -49,10 +50,10 @@ export declare namespace TMap {
49
50
  * @since 2.0.0
50
51
  * @category models
51
52
  */
52
- export interface Variance<K, V> {
53
+ export interface Variance<in out K, in out V> {
53
54
  readonly [TMapTypeId]: {
54
- readonly _K: (_: never) => K
55
- readonly _V: (_: never) => 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
@@ -32,12 +33,12 @@ export type TPriorityQueueTypeId = typeof TPriorityQueueTypeId
32
33
  * @since 2.0.0
33
34
  * @category models
34
35
  */
35
- export interface TPriorityQueue<A> extends TPriorityQueue.Variance<A> {}
36
+ export interface TPriorityQueue<in out A> extends TPriorityQueue.Variance<A> {}
36
37
  /**
37
38
  * @internal
38
39
  * @since 2.0.0
39
40
  */
40
- export interface TPriorityQueue<A> {
41
+ export interface TPriorityQueue<in out A> {
41
42
  /** @internal */
42
43
  readonly ref: TRef.TRef<SortedMap.SortedMap<A, [A, ...Array<A>]>>
43
44
  }
@@ -50,9 +51,9 @@ export declare namespace TPriorityQueue {
50
51
  * @since 2.0.0
51
52
  * @category models
52
53
  */
53
- export interface Variance<A> {
54
+ export interface Variance<in out A> {
54
55
  readonly [TPriorityQueueTypeId]: {
55
- readonly _A: (_: never) => 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
@@ -26,13 +27,16 @@ export type TPubSubTypeId = typeof TPubSubTypeId
26
27
  * @since 2.0.0
27
28
  * @category models
28
29
  */
29
- export interface TPubSub<A> extends TQueue.TEnqueue<A> {}
30
+ export interface TPubSub<in out A> extends TQueue.TEnqueue<A> {
31
+ readonly [TPubSubTypeId]: {
32
+ readonly _A: Types.Invariant<A>
33
+ }
34
+ }
30
35
  /**
31
36
  * @internal
32
37
  * @since 2.0.0
33
38
  */
34
- export interface TPubSub<A> {
35
- readonly [TPubSubTypeId]: TPubSubTypeId
39
+ export interface TPubSub<in out A> {
36
40
  /** @internal */
37
41
  readonly pubsubSize: TRef.TRef<number>
38
42
  /** @internal */
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
@@ -34,17 +35,17 @@ export type TEnqueueTypeId = typeof TEnqueueTypeId
34
35
  * @since 2.0.0
35
36
  * @category models
36
37
  */
37
- export interface TQueue<A> extends TEnqueue<A>, TDequeue<A> {}
38
+ export interface TQueue<in out A> extends TEnqueue<A>, TDequeue<A> {}
38
39
 
39
40
  /**
40
41
  * @since 2.0.0
41
42
  * @category models
42
43
  */
43
- export interface TEnqueue<A> extends TQueue.TEnqueueVariance<A>, BaseTQueue {
44
+ export interface TEnqueue<in A> extends TQueue.TEnqueueVariance<A>, BaseTQueue {
44
45
  /**
45
46
  * Places one value in the queue.
46
47
  */
47
- readonly offer: (value: A) => STM.STM<never, never, boolean>
48
+ offer(value: A): STM.STM<never, never, boolean>
48
49
 
49
50
  /**
50
51
  * For Bounded TQueue: uses the `BackPressure` Strategy, places the values in
@@ -61,14 +62,14 @@ export interface TEnqueue<A> extends TQueue.TEnqueueVariance<A>, BaseTQueue {
61
62
  * For Dropping TQueue: uses `Dropping` Strategy, It places the values in the
62
63
  * queue but if there is no room it will not enqueue them and return false.
63
64
  */
64
- readonly offerAll: (iterable: Iterable<A>) => STM.STM<never, never, boolean>
65
+ offerAll(iterable: Iterable<A>): STM.STM<never, never, boolean>
65
66
  }
66
67
 
67
68
  /**
68
69
  * @since 2.0.0
69
70
  * @category models
70
71
  */
71
- export interface TDequeue<A> extends TQueue.TDequeueVariance<A>, BaseTQueue {
72
+ export interface TDequeue<out A> extends TQueue.TDequeueVariance<A>, BaseTQueue {
72
73
  /**
73
74
  * Views the next element in the queue without removing it, retrying if the
74
75
  * queue is empty.
@@ -96,7 +97,7 @@ export interface TDequeue<A> extends TQueue.TDequeueVariance<A>, BaseTQueue {
96
97
  /**
97
98
  * Takes up to max number of values from the queue.
98
99
  */
99
- readonly takeUpTo: (max: number) => STM.STM<never, never, Array<A>>
100
+ takeUpTo(max: number): STM.STM<never, never, Array<A>>
100
101
  }
101
102
 
102
103
  /**
@@ -109,7 +110,7 @@ export interface BaseTQueue {
109
110
  /**
110
111
  * Returns the number of elements the queue can hold.
111
112
  */
112
- readonly capacity: () => number
113
+ capacity(): number
113
114
 
114
115
  /**
115
116
  * Retrieves the size of the queue, which is equal to the number of elements
@@ -156,9 +157,9 @@ export declare namespace TQueue {
156
157
  * @since 2.0.0
157
158
  * @category models
158
159
  */
159
- export interface TEnqueueVariance<A> {
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
 
@@ -166,9 +167,9 @@ export declare namespace TQueue {
166
167
  * @since 2.0.0
167
168
  * @category models
168
169
  */
169
- export interface TDequeueVariance<A> {
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/TRandom.ts CHANGED
@@ -42,16 +42,16 @@ export interface TRandom {
42
42
  * Returns the next numeric value in the specified range from the
43
43
  * pseudo-random number generator.
44
44
  */
45
- readonly nextRange: (min: number, max: number) => STM.STM<never, never, number>
45
+ nextRange(min: number, max: number): STM.STM<never, never, number>
46
46
  /**
47
47
  * Returns the next integer value in the specified range from the
48
48
  * pseudo-random number generator.
49
49
  */
50
- readonly nextIntBetween: (min: number, max: number) => STM.STM<never, never, number>
50
+ nextIntBetween(min: number, max: number): STM.STM<never, never, number>
51
51
  /**
52
52
  * Uses the pseudo-random number generator to shuffle the specified iterable.
53
53
  */
54
- readonly shuffle: <A>(elements: Iterable<A>) => STM.STM<never, never, Array<A>>
54
+ shuffle<A>(elements: Iterable<A>): STM.STM<never, never, Array<A>>
55
55
  }
56
56
  /**
57
57
  * @internal
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
@@ -33,17 +34,17 @@ export type TRefTypeId = typeof TRefTypeId
33
34
  * @since 2.0.0
34
35
  * @category models
35
36
  */
36
- export interface TRef<A> extends TRef.Variance<A> {
37
+ export interface TRef<in out A> extends TRef.Variance<A> {
37
38
  /**
38
39
  * Note: the method is unbound, exposed only for potential extensions.
39
40
  */
40
- readonly modify: <B>(f: (a: A) => readonly [B, A]) => STM.STM<never, never, B>
41
+ modify<B>(f: (a: A) => readonly [B, A]): STM.STM<never, never, B>
41
42
  }
42
43
  /**
43
44
  * @internal
44
45
  * @since 2.0.0
45
46
  */
46
- export interface TRef<A> {
47
+ export interface TRef<in out A> {
47
48
  /** @internal */
48
49
  todos: Map<TxnId.TxnId, Journal.Todo>
49
50
  /** @internal */
@@ -57,9 +58,9 @@ export declare namespace TRef {
57
58
  /**
58
59
  * @since 2.0.0
59
60
  */
60
- export interface Variance<A> {
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
@@ -27,12 +28,12 @@ export type TSetTypeId = typeof TSetTypeId
27
28
  * @since 2.0.0
28
29
  * @category models
29
30
  */
30
- export interface TSet<A> extends TSet.Variance<A> {}
31
+ export interface TSet<in out A> extends TSet.Variance<A> {}
31
32
  /**
32
33
  * @internal
33
34
  * @since 2.0.0
34
35
  */
35
- export interface TSet<A> {
36
+ export interface TSet<in out A> {
36
37
  /** @internal */
37
38
  readonly tMap: TMap.TMap<A, void>
38
39
  }
@@ -45,9 +46,9 @@ export declare namespace TSet {
45
46
  * @since 2.0.0
46
47
  * @category models
47
48
  */
48
- export interface Variance<A> {
49
+ export interface Variance<in out A> {
49
50
  readonly [TSetTypeId]: {
50
- readonly _A: (_: never) => 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
@@ -29,7 +30,7 @@ export type TakeTypeId = typeof TakeTypeId
29
30
  * @since 2.0.0
30
31
  * @category models
31
32
  */
32
- export interface Take<E, A> extends Take.Variance<E, A>, Pipeable {
33
+ export interface Take<out E, out A> extends Take.Variance<E, A>, Pipeable {
33
34
  /** @internal */
34
35
  readonly exit: Exit.Exit<Option.Option<E>, Chunk.Chunk<A>>
35
36
  }
@@ -42,10 +43,10 @@ export declare namespace Take {
42
43
  * @since 2.0.0
43
44
  * @category models
44
45
  */
45
- export interface Variance<E, A> {
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
 
@@ -29,17 +29,21 @@ export type TestAnnotationTypeId = typeof TestAnnotationTypeId
29
29
  /**
30
30
  * @since 2.0.0
31
31
  */
32
- export interface TestAnnotation<A> extends Equal.Equal {
33
- readonly [TestAnnotationTypeId]: TestAnnotationTypeId
32
+ export interface TestAnnotation<in out A> extends Equal.Equal {
33
+ readonly [TestAnnotationTypeId]: {
34
+ readonly _A: Types.Invariant<A>
35
+ }
34
36
  readonly identifier: string
35
37
  readonly tag: Context.Tag<A, A>
36
38
  readonly initial: A
37
- readonly combine: (a: A, b: A) => A
39
+ combine(a: A, b: A): A
38
40
  }
39
41
 
40
42
  /** @internal */
41
43
  class TestAnnotationImpl<A> implements Equal.Equal {
42
- readonly [TestAnnotationTypeId]: TestAnnotationTypeId = TestAnnotationTypeId
44
+ readonly [TestAnnotationTypeId] = {
45
+ _A: (_: any) => _
46
+ }
43
47
  constructor(
44
48
  readonly identifier: string,
45
49
  readonly tag: Context.Tag<A, A>,
@@ -46,13 +46,13 @@ export interface TestAnnotations {
46
46
  * Accesses an `Annotations` instance in the context and retrieves the
47
47
  * annotation of the specified type, or its default value if there is none.
48
48
  */
49
- readonly get: <A>(key: TestAnnotation.TestAnnotation<A>) => Effect.Effect<never, never, A>
49
+ get<A>(key: TestAnnotation.TestAnnotation<A>): Effect.Effect<never, never, A>
50
50
 
51
51
  /**
52
52
  * Accesses an `Annotations` instance in the context and appends the
53
53
  * specified annotation to the annotation map.
54
54
  */
55
- readonly annotate: <A>(key: TestAnnotation.TestAnnotation<A>, value: A) => Effect.Effect<never, never, void>
55
+ annotate<A>(key: TestAnnotation.TestAnnotation<A>, value: A): Effect.Effect<never, never, void>
56
56
 
57
57
  /**
58
58
  * Returns the set of all fibers in this test.
package/src/TestClock.ts CHANGED
@@ -76,12 +76,10 @@ import * as Live from "./TestLive.js"
76
76
  * @since 2.0.0
77
77
  */
78
78
  export interface TestClock extends Clock.Clock {
79
- readonly adjust: (duration: Duration.DurationInput) => Effect.Effect<never, never, void>
80
- readonly adjustWith: (
81
- duration: Duration.DurationInput
82
- ) => <R, E, A>(effect: Effect.Effect<R, E, A>) => Effect.Effect<R, E, A>
79
+ adjust(duration: Duration.DurationInput): Effect.Effect<never, never, void>
80
+ adjustWith(duration: Duration.DurationInput): <R, E, A>(effect: Effect.Effect<R, E, A>) => Effect.Effect<R, E, A>
83
81
  readonly save: Effect.Effect<never, never, Effect.Effect<never, never, void>>
84
- readonly setTime: (time: number) => Effect.Effect<never, never, void>
82
+ setTime(time: number): Effect.Effect<never, never, void>
85
83
  readonly sleeps: Effect.Effect<never, never, Chunk.Chunk<number>>
86
84
  }
87
85
 
@@ -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/TestLive.ts CHANGED
@@ -27,7 +27,7 @@ export type TestLiveTypeId = typeof TestLiveTypeId
27
27
  */
28
28
  export interface TestLive {
29
29
  readonly [TestLiveTypeId]: TestLiveTypeId
30
- readonly provide: <R, E, A>(effect: Effect.Effect<R, E, A>) => Effect.Effect<R, E, A>
30
+ provide<R, E, A>(effect: Effect.Effect<R, E, A>): Effect.Effect<R, E, A>
31
31
  }
32
32
 
33
33
  /**
package/src/TestSized.ts CHANGED
@@ -23,7 +23,7 @@ export interface TestSized {
23
23
  readonly [TestSizedTypeId]: TestSizedTypeId
24
24
  readonly fiberRef: FiberRef.FiberRef<number>
25
25
  readonly size: Effect.Effect<never, never, number>
26
- readonly withSize: (size: number) => <R, E, A>(effect: Effect.Effect<R, E, A>) => Effect.Effect<R, E, A>
26
+ withSize(size: number): <R, E, A>(effect: Effect.Effect<R, E, A>) => Effect.Effect<R, E, A>
27
27
  }
28
28
 
29
29
  /**
package/src/Tracer.ts CHANGED
@@ -24,14 +24,14 @@ export type TracerTypeId = typeof TracerTypeId
24
24
  */
25
25
  export interface Tracer {
26
26
  readonly [TracerTypeId]: TracerTypeId
27
- readonly span: (
27
+ span(
28
28
  name: string,
29
29
  parent: Option.Option<ParentSpan>,
30
30
  context: Context.Context<never>,
31
31
  links: ReadonlyArray<SpanLink>,
32
32
  startTime: bigint
33
- ) => Span
34
- readonly context: <X>(f: () => X, fiber: Fiber.RuntimeFiber<any, any>) => X
33
+ ): Span
34
+ context<X>(f: () => X, fiber: Fiber.RuntimeFiber<any, any>): X
35
35
  }
36
36
 
37
37
  /**
@@ -87,9 +87,9 @@ export interface Span {
87
87
  readonly attributes: ReadonlyMap<string, unknown>
88
88
  readonly links: ReadonlyArray<SpanLink>
89
89
  readonly sampled: boolean
90
- readonly end: (endTime: bigint, exit: Exit.Exit<unknown, unknown>) => void
91
- readonly attribute: (key: string, value: unknown) => void
92
- readonly event: (name: string, startTime: bigint, attributes?: Record<string, unknown>) => void
90
+ end(endTime: bigint, exit: Exit.Exit<unknown, unknown>): void
91
+ attribute(key: string, value: unknown): void
92
+ event(name: string, startTime: bigint, attributes?: Record<string, unknown>): void
93
93
  }
94
94
 
95
95
  /**
package/src/Types.ts CHANGED
@@ -142,3 +142,35 @@ export type Concurrency = number | "unbounded" | "inherit"
142
142
  export type Mutable<T> = {
143
143
  -readonly [P in keyof T]: T[P]
144
144
  }
145
+
146
+ /**
147
+ * Avoid inference on a specific parameter
148
+ *
149
+ * @since 2.0.0
150
+ * @category models
151
+ */
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
@@ -29,9 +30,9 @@ export declare namespace UpstreamPullRequest {
29
30
  * @since 2.0.0
30
31
  * @category models
31
32
  */
32
- export interface Variance<A> {
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
  }
@@ -40,7 +41,7 @@ export declare namespace UpstreamPullRequest {
40
41
  * @since 2.0.0
41
42
  * @category models
42
43
  */
43
- export interface Pulled<A> extends UpstreamPullRequest.Variance<A> {
44
+ export interface Pulled<out A> extends UpstreamPullRequest.Variance<A> {
44
45
  readonly _tag: "Pulled"
45
46
  readonly value: A
46
47
  }
@@ -101,10 +102,16 @@ export const isNoUpstream: <A>(self: UpstreamPullRequest<A>) => self is NoUpstre
101
102
  */
102
103
  export const match: {
103
104
  <A, Z>(
104
- options: { readonly onPulled: (value: A) => Z; readonly onNoUpstream: (activeDownstreamCount: number) => Z }
105
+ options: {
106
+ readonly onPulled: (value: A) => Z
107
+ readonly onNoUpstream: (activeDownstreamCount: number) => Z
108
+ }
105
109
  ): (self: UpstreamPullRequest<A>) => Z
106
110
  <A, Z>(
107
111
  self: UpstreamPullRequest<A>,
108
- options: { readonly onPulled: (value: A) => Z; readonly onNoUpstream: (activeDownstreamCount: number) => Z }
112
+ options: {
113
+ readonly onPulled: (value: A) => Z
114
+ readonly onNoUpstream: (activeDownstreamCount: number) => Z
115
+ }
109
116
  ): Z
110
117
  } = internal.match
@@ -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
@@ -30,9 +31,9 @@ export declare namespace UpstreamPullStrategy {
30
31
  * @since 2.0.0
31
32
  * @category models
32
33
  */
33
- export interface Variance<A> {
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
  }
@@ -41,7 +42,7 @@ export declare namespace UpstreamPullStrategy {
41
42
  * @since 2.0.0
42
43
  * @category models
43
44
  */
44
- export interface PullAfterNext<A> extends UpstreamPullStrategy.Variance<A> {
45
+ export interface PullAfterNext<out A> extends UpstreamPullStrategy.Variance<A> {
45
46
  readonly _tag: "PullAfterNext"
46
47
  readonly emitSeparator: Option.Option<A>
47
48
  }
@@ -50,7 +51,7 @@ export interface PullAfterNext<A> extends UpstreamPullStrategy.Variance<A> {
50
51
  * @since 2.0.0
51
52
  * @category models
52
53
  */
53
- export interface PullAfterAllEnqueued<A> extends UpstreamPullStrategy.Variance<A> {
54
+ export interface PullAfterAllEnqueued<out A> extends UpstreamPullStrategy.Variance<A> {
54
55
  readonly _tag: "PullAfterAllEnqueued"
55
56
  readonly emitSeparator: Option.Option<A>
56
57
  }
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.
@@ -38,7 +39,7 @@ export type GenKindTypeId = typeof GenKindTypeId
38
39
  export interface GenKind<F extends TypeLambda, R, O, E, A> extends Variance<F, R, O, E> {
39
40
  readonly value: Kind<F, R, O, E, A>
40
41
 
41
- readonly [Symbol.iterator]: () => Generator<GenKind<F, R, O, E, A>, A>
42
+ [Symbol.iterator](): Generator<GenKind<F, R, O, E, A>, A>
42
43
  }
43
44
 
44
45
  /**
@@ -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
  /**
package/src/index.ts CHANGED
@@ -514,6 +514,11 @@ export * as Pool from "./Pool.js"
514
514
  */
515
515
  export * as Predicate from "./Predicate.js"
516
516
 
517
+ /**
518
+ * @since 2.0.0
519
+ */
520
+ export * as PrimaryKey from "./PrimaryKey.js"
521
+
517
522
  /**
518
523
  * @since 2.0.0
519
524
  */