@clayroach/effect 3.19.14-source-capture.8 → 3.19.14-source-trace.2

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 (452) hide show
  1. package/SourceLocation/package.json +6 -0
  2. package/dist/cjs/Effect.js +2 -28
  3. package/dist/cjs/Effect.js.map +1 -1
  4. package/dist/cjs/FiberRef.js +12 -1
  5. package/dist/cjs/FiberRef.js.map +1 -1
  6. package/dist/cjs/Layer.js +2 -24
  7. package/dist/cjs/Layer.js.map +1 -1
  8. package/dist/cjs/RuntimeFlags.js +1 -29
  9. package/dist/cjs/RuntimeFlags.js.map +1 -1
  10. package/dist/cjs/SourceLocation.js +60 -0
  11. package/dist/cjs/SourceLocation.js.map +1 -0
  12. package/dist/cjs/Tracer.js +1 -15
  13. package/dist/cjs/Tracer.js.map +1 -1
  14. package/dist/cjs/Utils.js +1 -1
  15. package/dist/cjs/Utils.js.map +1 -1
  16. package/dist/cjs/index.js +3 -1
  17. package/dist/cjs/index.js.map +1 -1
  18. package/dist/cjs/internal/clock.js +1 -1
  19. package/dist/cjs/internal/clock.js.map +1 -1
  20. package/dist/cjs/internal/core.js +17 -50
  21. package/dist/cjs/internal/core.js.map +1 -1
  22. package/dist/cjs/internal/effect/circular.js +18 -30
  23. package/dist/cjs/internal/effect/circular.js.map +1 -1
  24. package/dist/cjs/internal/fiberRuntime.js +16 -65
  25. package/dist/cjs/internal/fiberRuntime.js.map +1 -1
  26. package/dist/cjs/internal/layer/circular.js +1 -5
  27. package/dist/cjs/internal/layer/circular.js.map +1 -1
  28. package/dist/cjs/internal/layer.js +1 -3
  29. package/dist/cjs/internal/layer.js.map +1 -1
  30. package/dist/cjs/internal/logger.js +25 -2
  31. package/dist/cjs/internal/logger.js.map +1 -1
  32. package/dist/cjs/internal/runtimeFlags.js +2 -11
  33. package/dist/cjs/internal/runtimeFlags.js.map +1 -1
  34. package/dist/cjs/internal/tracer.js +1 -114
  35. package/dist/cjs/internal/tracer.js.map +1 -1
  36. package/dist/dts/Config.d.ts +2 -2
  37. package/dist/dts/Config.d.ts.map +1 -1
  38. package/dist/dts/Effect.d.ts +8 -29
  39. package/dist/dts/Effect.d.ts.map +1 -1
  40. package/dist/dts/FiberRef.d.ts +12 -0
  41. package/dist/dts/FiberRef.d.ts.map +1 -1
  42. package/dist/dts/Layer.d.ts +0 -22
  43. package/dist/dts/Layer.d.ts.map +1 -1
  44. package/dist/dts/RuntimeFlags.d.ts +0 -28
  45. package/dist/dts/RuntimeFlags.d.ts.map +1 -1
  46. package/dist/dts/SourceLocation.d.ts +88 -0
  47. package/dist/dts/SourceLocation.d.ts.map +1 -0
  48. package/dist/dts/Tracer.d.ts +0 -15
  49. package/dist/dts/Tracer.d.ts.map +1 -1
  50. package/dist/dts/index.d.ts +6 -0
  51. package/dist/dts/index.d.ts.map +1 -1
  52. package/dist/dts/internal/core.d.ts.map +1 -1
  53. package/dist/dts/internal/layer.d.ts.map +1 -1
  54. package/dist/dts/internal/runtimeFlags.d.ts.map +1 -1
  55. package/dist/esm/Effect.js +0 -26
  56. package/dist/esm/Effect.js.map +1 -1
  57. package/dist/esm/FiberRef.js +11 -0
  58. package/dist/esm/FiberRef.js.map +1 -1
  59. package/dist/esm/Layer.js +0 -22
  60. package/dist/esm/Layer.js.map +1 -1
  61. package/dist/esm/RuntimeFlags.js +0 -28
  62. package/dist/esm/RuntimeFlags.js.map +1 -1
  63. package/dist/esm/SourceLocation.js +51 -0
  64. package/dist/esm/SourceLocation.js.map +1 -0
  65. package/dist/esm/Tracer.js +0 -14
  66. package/dist/esm/Tracer.js.map +1 -1
  67. package/dist/esm/Utils.js +1 -1
  68. package/dist/esm/Utils.js.map +1 -1
  69. package/dist/esm/index.js +6 -0
  70. package/dist/esm/index.js.map +1 -1
  71. package/dist/esm/internal/clock.js +1 -1
  72. package/dist/esm/internal/clock.js.map +1 -1
  73. package/dist/esm/internal/core.js +12 -45
  74. package/dist/esm/internal/core.js.map +1 -1
  75. package/dist/esm/internal/effect/circular.js +18 -30
  76. package/dist/esm/internal/effect/circular.js.map +1 -1
  77. package/dist/esm/internal/fiberRuntime.js +13 -60
  78. package/dist/esm/internal/fiberRuntime.js.map +1 -1
  79. package/dist/esm/internal/layer/circular.js +0 -4
  80. package/dist/esm/internal/layer/circular.js.map +1 -1
  81. package/dist/esm/internal/layer.js +0 -2
  82. package/dist/esm/internal/layer.js.map +1 -1
  83. package/dist/esm/internal/logger.js +25 -2
  84. package/dist/esm/internal/logger.js.map +1 -1
  85. package/dist/esm/internal/runtimeFlags.js +1 -9
  86. package/dist/esm/internal/runtimeFlags.js.map +1 -1
  87. package/dist/esm/internal/tracer.js +0 -111
  88. package/dist/esm/internal/tracer.js.map +1 -1
  89. package/package.json +12 -1
  90. package/src/Arbitrary.ts +1101 -0
  91. package/src/Array.ts +3589 -0
  92. package/src/BigDecimal.ts +1349 -0
  93. package/src/BigInt.ts +643 -0
  94. package/src/Boolean.ts +287 -0
  95. package/src/Brand.ts +360 -0
  96. package/src/Cache.ts +281 -0
  97. package/src/Cause.ts +1555 -0
  98. package/src/Channel.ts +2355 -0
  99. package/src/ChildExecutorDecision.ts +146 -0
  100. package/src/Chunk.ts +1495 -0
  101. package/src/Clock.ts +111 -0
  102. package/src/Config.ts +542 -0
  103. package/src/ConfigError.ts +270 -0
  104. package/src/ConfigProvider.ts +333 -0
  105. package/src/ConfigProviderPathPatch.ts +100 -0
  106. package/src/Console.ts +226 -0
  107. package/src/Context.ts +585 -0
  108. package/src/Cron.ts +706 -0
  109. package/src/Data.ts +596 -0
  110. package/src/DateTime.ts +1686 -0
  111. package/src/DefaultServices.ts +34 -0
  112. package/src/Deferred.ts +301 -0
  113. package/src/Differ.ts +450 -0
  114. package/src/Duration.ts +1000 -0
  115. package/src/Effect.ts +14817 -0
  116. package/src/Effectable.ts +107 -0
  117. package/src/Either.ts +1040 -0
  118. package/src/Encoding.ts +195 -0
  119. package/src/Equal.ts +98 -0
  120. package/src/Equivalence.ts +235 -0
  121. package/src/ExecutionPlan.ts +308 -0
  122. package/src/ExecutionStrategy.ts +119 -0
  123. package/src/Exit.ts +467 -0
  124. package/src/FastCheck.ts +9 -0
  125. package/src/Fiber.ts +744 -0
  126. package/src/FiberHandle.ts +540 -0
  127. package/src/FiberId.ts +195 -0
  128. package/src/FiberMap.ts +656 -0
  129. package/src/FiberRef.ts +444 -0
  130. package/src/FiberRefs.ts +204 -0
  131. package/src/FiberRefsPatch.ts +105 -0
  132. package/src/FiberSet.ts +491 -0
  133. package/src/FiberStatus.ts +108 -0
  134. package/src/Function.ts +1222 -0
  135. package/src/GlobalValue.ts +53 -0
  136. package/src/Graph.ts +3732 -0
  137. package/src/GroupBy.ts +103 -0
  138. package/src/HKT.ts +45 -0
  139. package/src/Hash.ts +195 -0
  140. package/src/HashMap.ts +519 -0
  141. package/src/HashRing.ts +317 -0
  142. package/src/HashSet.ts +2346 -0
  143. package/src/Inspectable.ts +287 -0
  144. package/src/Iterable.ts +1119 -0
  145. package/src/JSONSchema.ts +1044 -0
  146. package/src/KeyedPool.ts +167 -0
  147. package/src/Layer.ts +1228 -0
  148. package/src/LayerMap.ts +436 -0
  149. package/src/List.ts +977 -0
  150. package/src/LogLevel.ts +285 -0
  151. package/src/LogSpan.ts +25 -0
  152. package/src/Logger.ts +702 -0
  153. package/src/Mailbox.ts +268 -0
  154. package/src/ManagedRuntime.ts +180 -0
  155. package/src/Match.ts +1477 -0
  156. package/src/MergeDecision.ts +95 -0
  157. package/src/MergeState.ts +172 -0
  158. package/src/MergeStrategy.ts +107 -0
  159. package/src/Metric.ts +780 -0
  160. package/src/MetricBoundaries.ts +69 -0
  161. package/src/MetricHook.ts +151 -0
  162. package/src/MetricKey.ts +224 -0
  163. package/src/MetricKeyType.ts +262 -0
  164. package/src/MetricLabel.ts +47 -0
  165. package/src/MetricPair.ts +71 -0
  166. package/src/MetricPolling.ts +148 -0
  167. package/src/MetricRegistry.ts +48 -0
  168. package/src/MetricState.ts +257 -0
  169. package/src/Micro.ts +4405 -0
  170. package/src/ModuleVersion.ts +18 -0
  171. package/src/MutableHashMap.ts +411 -0
  172. package/src/MutableHashSet.ts +706 -0
  173. package/src/MutableList.ts +297 -0
  174. package/src/MutableQueue.ts +227 -0
  175. package/src/MutableRef.ts +202 -0
  176. package/src/NonEmptyIterable.ts +32 -0
  177. package/src/Number.ts +1071 -0
  178. package/src/Option.ts +2170 -0
  179. package/src/Order.ts +373 -0
  180. package/src/Ordering.ts +111 -0
  181. package/src/ParseResult.ts +2031 -0
  182. package/src/PartitionedSemaphore.ts +200 -0
  183. package/src/Pipeable.ts +566 -0
  184. package/src/Pool.ts +204 -0
  185. package/src/Predicate.ts +1405 -0
  186. package/src/Pretty.ts +205 -0
  187. package/src/PrimaryKey.ts +23 -0
  188. package/src/PubSub.ts +182 -0
  189. package/src/Queue.ts +644 -0
  190. package/src/Random.ts +204 -0
  191. package/src/RateLimiter.ts +138 -0
  192. package/src/RcMap.ts +141 -0
  193. package/src/RcRef.ts +122 -0
  194. package/src/Readable.ts +93 -0
  195. package/src/Record.ts +1274 -0
  196. package/src/RedBlackTree.ts +421 -0
  197. package/src/Redacted.ts +144 -0
  198. package/src/Ref.ts +180 -0
  199. package/src/RegExp.ts +38 -0
  200. package/src/Reloadable.ts +127 -0
  201. package/src/Request.ts +347 -0
  202. package/src/RequestBlock.ts +118 -0
  203. package/src/RequestResolver.ts +366 -0
  204. package/src/Resource.ts +119 -0
  205. package/src/Runtime.ts +383 -0
  206. package/src/RuntimeFlags.ts +336 -0
  207. package/src/RuntimeFlagsPatch.ts +183 -0
  208. package/src/STM.ts +2045 -0
  209. package/src/Schedule.ts +2219 -0
  210. package/src/ScheduleDecision.ts +62 -0
  211. package/src/ScheduleInterval.ts +151 -0
  212. package/src/ScheduleIntervals.ts +122 -0
  213. package/src/Scheduler.ts +353 -0
  214. package/src/Schema.ts +10914 -0
  215. package/src/SchemaAST.ts +3043 -0
  216. package/src/Scope.ts +204 -0
  217. package/src/ScopedCache.ts +151 -0
  218. package/src/ScopedRef.ts +117 -0
  219. package/src/Secret.ts +88 -0
  220. package/src/SingleProducerAsyncInput.ts +67 -0
  221. package/src/Sink.ts +1461 -0
  222. package/src/SortedMap.ts +287 -0
  223. package/src/SortedSet.ts +390 -0
  224. package/src/SourceLocation.ts +108 -0
  225. package/src/Stream.ts +6468 -0
  226. package/src/StreamEmit.ts +136 -0
  227. package/src/StreamHaltStrategy.ts +123 -0
  228. package/src/Streamable.ts +45 -0
  229. package/src/String.ts +778 -0
  230. package/src/Struct.ts +243 -0
  231. package/src/Subscribable.ts +100 -0
  232. package/src/SubscriptionRef.ts +298 -0
  233. package/src/Supervisor.ts +240 -0
  234. package/src/Symbol.ts +29 -0
  235. package/src/SynchronizedRef.ts +270 -0
  236. package/src/TArray.ts +495 -0
  237. package/src/TDeferred.ts +100 -0
  238. package/src/TMap.ts +515 -0
  239. package/src/TPriorityQueue.ts +223 -0
  240. package/src/TPubSub.ts +200 -0
  241. package/src/TQueue.ts +432 -0
  242. package/src/TRandom.ts +129 -0
  243. package/src/TReentrantLock.ts +224 -0
  244. package/src/TRef.ts +178 -0
  245. package/src/TSemaphore.ts +129 -0
  246. package/src/TSet.ts +365 -0
  247. package/src/TSubscriptionRef.ts +192 -0
  248. package/src/Take.ts +258 -0
  249. package/src/TestAnnotation.ts +158 -0
  250. package/src/TestAnnotationMap.ts +119 -0
  251. package/src/TestAnnotations.ts +117 -0
  252. package/src/TestClock.ts +556 -0
  253. package/src/TestConfig.ts +47 -0
  254. package/src/TestContext.ts +36 -0
  255. package/src/TestLive.ts +53 -0
  256. package/src/TestServices.ts +390 -0
  257. package/src/TestSized.ts +55 -0
  258. package/src/Tracer.ts +182 -0
  259. package/src/Trie.ts +840 -0
  260. package/src/Tuple.ts +305 -0
  261. package/src/Types.ts +353 -0
  262. package/src/Unify.ts +113 -0
  263. package/src/UpstreamPullRequest.ts +117 -0
  264. package/src/UpstreamPullStrategy.ts +121 -0
  265. package/src/Utils.ts +809 -0
  266. package/src/index.ts +1568 -0
  267. package/src/internal/array.ts +8 -0
  268. package/src/internal/blockedRequests.ts +520 -0
  269. package/src/internal/cache.ts +733 -0
  270. package/src/internal/cause.ts +1050 -0
  271. package/src/internal/channel/channelExecutor.ts +1200 -0
  272. package/src/internal/channel/channelState.ts +134 -0
  273. package/src/internal/channel/childExecutorDecision.ts +96 -0
  274. package/src/internal/channel/continuation.ts +200 -0
  275. package/src/internal/channel/mergeDecision.ts +113 -0
  276. package/src/internal/channel/mergeState.ts +120 -0
  277. package/src/internal/channel/mergeStrategy.ts +72 -0
  278. package/src/internal/channel/singleProducerAsyncInput.ts +259 -0
  279. package/src/internal/channel/subexecutor.ts +229 -0
  280. package/src/internal/channel/upstreamPullRequest.ts +84 -0
  281. package/src/internal/channel/upstreamPullStrategy.ts +87 -0
  282. package/src/internal/channel.ts +2603 -0
  283. package/src/internal/clock.ts +95 -0
  284. package/src/internal/completedRequestMap.ts +9 -0
  285. package/src/internal/concurrency.ts +54 -0
  286. package/src/internal/config.ts +716 -0
  287. package/src/internal/configError.ts +304 -0
  288. package/src/internal/configProvider/pathPatch.ts +97 -0
  289. package/src/internal/configProvider.ts +799 -0
  290. package/src/internal/console.ts +153 -0
  291. package/src/internal/context.ts +337 -0
  292. package/src/internal/core-effect.ts +2293 -0
  293. package/src/internal/core-stream.ts +998 -0
  294. package/src/internal/core.ts +3189 -0
  295. package/src/internal/data.ts +36 -0
  296. package/src/internal/dataSource.ts +327 -0
  297. package/src/internal/dateTime.ts +1277 -0
  298. package/src/internal/defaultServices/console.ts +100 -0
  299. package/src/internal/defaultServices.ts +163 -0
  300. package/src/internal/deferred.ts +46 -0
  301. package/src/internal/differ/chunkPatch.ts +211 -0
  302. package/src/internal/differ/contextPatch.ts +232 -0
  303. package/src/internal/differ/hashMapPatch.ts +220 -0
  304. package/src/internal/differ/hashSetPatch.ts +176 -0
  305. package/src/internal/differ/orPatch.ts +311 -0
  306. package/src/internal/differ/readonlyArrayPatch.ts +210 -0
  307. package/src/internal/differ.ts +200 -0
  308. package/src/internal/doNotation.ts +80 -0
  309. package/src/internal/effect/circular.ts +895 -0
  310. package/src/internal/effectable.ts +131 -0
  311. package/src/internal/either.ts +110 -0
  312. package/src/internal/encoding/base64.ts +286 -0
  313. package/src/internal/encoding/base64Url.ts +29 -0
  314. package/src/internal/encoding/common.ts +51 -0
  315. package/src/internal/encoding/hex.ts +315 -0
  316. package/src/internal/errors.ts +7 -0
  317. package/src/internal/executionPlan.ts +114 -0
  318. package/src/internal/executionStrategy.ts +74 -0
  319. package/src/internal/fiber.ts +388 -0
  320. package/src/internal/fiberId.ts +267 -0
  321. package/src/internal/fiberMessage.ts +82 -0
  322. package/src/internal/fiberRefs/patch.ts +144 -0
  323. package/src/internal/fiberRefs.ts +297 -0
  324. package/src/internal/fiberRuntime.ts +3842 -0
  325. package/src/internal/fiberScope.ts +71 -0
  326. package/src/internal/fiberStatus.ts +119 -0
  327. package/src/internal/groupBy.ts +530 -0
  328. package/src/internal/hashMap/array.ts +49 -0
  329. package/src/internal/hashMap/bitwise.ts +32 -0
  330. package/src/internal/hashMap/config.ts +14 -0
  331. package/src/internal/hashMap/keySet.ts +8 -0
  332. package/src/internal/hashMap/node.ts +391 -0
  333. package/src/internal/hashMap.ts +586 -0
  334. package/src/internal/hashSet.ts +323 -0
  335. package/src/internal/keyedPool.ts +244 -0
  336. package/src/internal/layer/circular.ts +214 -0
  337. package/src/internal/layer.ts +1483 -0
  338. package/src/internal/logSpan.ts +20 -0
  339. package/src/internal/logger-circular.ts +24 -0
  340. package/src/internal/logger.ts +522 -0
  341. package/src/internal/mailbox.ts +561 -0
  342. package/src/internal/managedRuntime/circular.ts +6 -0
  343. package/src/internal/managedRuntime.ts +134 -0
  344. package/src/internal/matcher.ts +652 -0
  345. package/src/internal/metric/boundaries.ts +75 -0
  346. package/src/internal/metric/hook.ts +483 -0
  347. package/src/internal/metric/key.ts +167 -0
  348. package/src/internal/metric/keyType.ts +238 -0
  349. package/src/internal/metric/label.ts +41 -0
  350. package/src/internal/metric/pair.ts +48 -0
  351. package/src/internal/metric/polling.ts +149 -0
  352. package/src/internal/metric/registry.ts +187 -0
  353. package/src/internal/metric/state.ts +290 -0
  354. package/src/internal/metric.ts +577 -0
  355. package/src/internal/opCodes/cause.ts +35 -0
  356. package/src/internal/opCodes/channel.ts +83 -0
  357. package/src/internal/opCodes/channelChildExecutorDecision.ts +17 -0
  358. package/src/internal/opCodes/channelMergeDecision.ts +11 -0
  359. package/src/internal/opCodes/channelMergeState.ts +17 -0
  360. package/src/internal/opCodes/channelMergeStrategy.ts +11 -0
  361. package/src/internal/opCodes/channelState.ts +23 -0
  362. package/src/internal/opCodes/channelUpstreamPullRequest.ts +11 -0
  363. package/src/internal/opCodes/channelUpstreamPullStrategy.ts +11 -0
  364. package/src/internal/opCodes/config.ts +65 -0
  365. package/src/internal/opCodes/configError.ts +35 -0
  366. package/src/internal/opCodes/continuation.ts +11 -0
  367. package/src/internal/opCodes/deferred.ts +11 -0
  368. package/src/internal/opCodes/effect.ts +89 -0
  369. package/src/internal/opCodes/layer.ts +59 -0
  370. package/src/internal/opCodes/streamHaltStrategy.ts +23 -0
  371. package/src/internal/option.ts +80 -0
  372. package/src/internal/pool.ts +432 -0
  373. package/src/internal/pubsub.ts +1762 -0
  374. package/src/internal/query.ts +204 -0
  375. package/src/internal/queue.ts +766 -0
  376. package/src/internal/random.ts +161 -0
  377. package/src/internal/rateLimiter.ts +93 -0
  378. package/src/internal/rcMap.ts +285 -0
  379. package/src/internal/rcRef.ts +192 -0
  380. package/src/internal/redBlackTree/iterator.ts +200 -0
  381. package/src/internal/redBlackTree/node.ts +68 -0
  382. package/src/internal/redBlackTree.ts +1245 -0
  383. package/src/internal/redacted.ts +73 -0
  384. package/src/internal/ref.ts +171 -0
  385. package/src/internal/reloadable.ts +140 -0
  386. package/src/internal/request.ts +177 -0
  387. package/src/internal/resource.ts +76 -0
  388. package/src/internal/ringBuffer.ts +68 -0
  389. package/src/internal/runtime.ts +558 -0
  390. package/src/internal/runtimeFlags.ts +178 -0
  391. package/src/internal/runtimeFlagsPatch.ts +103 -0
  392. package/src/internal/schedule/decision.ts +47 -0
  393. package/src/internal/schedule/interval.ts +101 -0
  394. package/src/internal/schedule/intervals.ts +180 -0
  395. package/src/internal/schedule.ts +2199 -0
  396. package/src/internal/schema/errors.ts +191 -0
  397. package/src/internal/schema/schemaId.ts +106 -0
  398. package/src/internal/schema/util.ts +50 -0
  399. package/src/internal/scopedCache.ts +644 -0
  400. package/src/internal/scopedRef.ts +118 -0
  401. package/src/internal/secret.ts +89 -0
  402. package/src/internal/singleShotGen.ts +35 -0
  403. package/src/internal/sink.ts +2120 -0
  404. package/src/internal/stack.ts +10 -0
  405. package/src/internal/stm/core.ts +817 -0
  406. package/src/internal/stm/entry.ts +59 -0
  407. package/src/internal/stm/journal.ts +123 -0
  408. package/src/internal/stm/opCodes/stm.ts +71 -0
  409. package/src/internal/stm/opCodes/stmState.ts +17 -0
  410. package/src/internal/stm/opCodes/strategy.ts +17 -0
  411. package/src/internal/stm/opCodes/tExit.ts +29 -0
  412. package/src/internal/stm/opCodes/tryCommit.ts +11 -0
  413. package/src/internal/stm/stm.ts +1453 -0
  414. package/src/internal/stm/stmState.ts +136 -0
  415. package/src/internal/stm/tArray.ts +550 -0
  416. package/src/internal/stm/tDeferred.ts +81 -0
  417. package/src/internal/stm/tExit.ts +190 -0
  418. package/src/internal/stm/tMap.ts +824 -0
  419. package/src/internal/stm/tPriorityQueue.ts +267 -0
  420. package/src/internal/stm/tPubSub.ts +551 -0
  421. package/src/internal/stm/tQueue.ts +393 -0
  422. package/src/internal/stm/tRandom.ts +140 -0
  423. package/src/internal/stm/tReentrantLock.ts +352 -0
  424. package/src/internal/stm/tRef.ts +195 -0
  425. package/src/internal/stm/tSemaphore.ts +113 -0
  426. package/src/internal/stm/tSet.ts +259 -0
  427. package/src/internal/stm/tSubscriptionRef.ts +286 -0
  428. package/src/internal/stm/tryCommit.ts +34 -0
  429. package/src/internal/stm/txnId.ts +14 -0
  430. package/src/internal/stm/versioned.ts +4 -0
  431. package/src/internal/stream/debounceState.ts +57 -0
  432. package/src/internal/stream/emit.ts +123 -0
  433. package/src/internal/stream/haltStrategy.ts +94 -0
  434. package/src/internal/stream/handoff.ts +187 -0
  435. package/src/internal/stream/handoffSignal.ts +59 -0
  436. package/src/internal/stream/pull.ts +34 -0
  437. package/src/internal/stream/sinkEndReason.ts +30 -0
  438. package/src/internal/stream/zipAllState.ts +88 -0
  439. package/src/internal/stream/zipChunksState.ts +56 -0
  440. package/src/internal/stream.ts +8801 -0
  441. package/src/internal/string-utils.ts +107 -0
  442. package/src/internal/subscriptionRef.ts +138 -0
  443. package/src/internal/supervisor/patch.ts +190 -0
  444. package/src/internal/supervisor.ts +303 -0
  445. package/src/internal/synchronizedRef.ts +114 -0
  446. package/src/internal/take.ts +199 -0
  447. package/src/internal/testing/sleep.ts +27 -0
  448. package/src/internal/testing/suspendedWarningData.ts +85 -0
  449. package/src/internal/testing/warningData.ts +94 -0
  450. package/src/internal/tracer.ts +150 -0
  451. package/src/internal/trie.ts +722 -0
  452. package/src/internal/version.ts +7 -0
package/src/Exit.ts ADDED
@@ -0,0 +1,467 @@
1
+ /**
2
+ * @since 2.0.0
3
+ */
4
+ import type * as Cause from "./Cause.js"
5
+ import type * as Effect from "./Effect.js"
6
+ import type * as Either from "./Either.js"
7
+ import type * as FiberId from "./FiberId.js"
8
+ import type { Inspectable } from "./Inspectable.js"
9
+ import * as core from "./internal/core.js"
10
+ import type * as Option from "./Option.js"
11
+ import type { Pipeable } from "./Pipeable.js"
12
+ import type { Predicate, Refinement } from "./Predicate.js"
13
+ import type { NoInfer } from "./Types.js"
14
+ import type * as Unify from "./Unify.js"
15
+
16
+ /**
17
+ * An `Exit<A, E = never>` describes the result of a executing an `Effect` workflow.
18
+ *
19
+ * There are two possible values for an `Exit<A, E>`:
20
+ * - `Exit.Success` contain a success value of type `A`
21
+ * - `Exit.Failure` contains a failure `Cause` of type `E`
22
+ *
23
+ * @since 2.0.0
24
+ * @category models
25
+ */
26
+ export type Exit<A, E = never> = Success<A, E> | Failure<A, E>
27
+
28
+ /**
29
+ * Represents a failed `Effect` workflow containing the `Cause` of the failure
30
+ * of type `E`.
31
+ *
32
+ * @since 2.0.0
33
+ * @category models
34
+ */
35
+ export interface Failure<out A, out E> extends Effect.Effect<A, E>, Pipeable, Inspectable {
36
+ readonly _tag: "Failure"
37
+ readonly _op: "Failure"
38
+ readonly cause: Cause.Cause<E>
39
+ [Unify.typeSymbol]?: unknown
40
+ [Unify.unifySymbol]?: ExitUnify<this>
41
+ [Unify.ignoreSymbol]?: ExitUnifyIgnore
42
+ /** @internal */
43
+ readonly effect_instruction_i0: Cause.Cause<E>
44
+ }
45
+
46
+ /**
47
+ * @category models
48
+ * @since 2.0.0
49
+ */
50
+ export interface ExitUnify<A extends { [Unify.typeSymbol]?: any }> extends Effect.EffectUnify<A> {
51
+ Exit?: () => A[Unify.typeSymbol] extends Exit<infer A0, infer E0> | infer _ ? Exit<A0, E0> : never
52
+ }
53
+
54
+ /**
55
+ * @category models
56
+ * @since 2.0.0
57
+ */
58
+ export interface ExitUnifyIgnore extends Effect.EffectUnifyIgnore {
59
+ Effect?: true
60
+ }
61
+
62
+ /**
63
+ * Represents a successful `Effect` workflow and containing the returned value
64
+ * of type `A`.
65
+ *
66
+ * @since 2.0.0
67
+ * @category models
68
+ */
69
+ export interface Success<out A, out E> extends Effect.Effect<A, E>, Pipeable, Inspectable {
70
+ readonly _tag: "Success"
71
+ readonly _op: "Success"
72
+ readonly value: A
73
+ [Unify.typeSymbol]?: unknown
74
+ [Unify.unifySymbol]?: ExitUnify<this>
75
+ [Unify.ignoreSymbol]?: ExitUnifyIgnore
76
+ /** @internal */
77
+ readonly effect_instruction_i0: A
78
+ }
79
+
80
+ /**
81
+ * Returns `true` if the specified value is an `Exit`, `false` otherwise.
82
+ *
83
+ * @since 2.0.0
84
+ * @category refinements
85
+ */
86
+ export const isExit: (u: unknown) => u is Exit<unknown, unknown> = core.exitIsExit
87
+
88
+ /**
89
+ * Returns `true` if the specified `Exit` is a `Failure`, `false` otherwise.
90
+ *
91
+ * @since 2.0.0
92
+ * @category refinements
93
+ */
94
+ export const isFailure: <A, E>(self: Exit<A, E>) => self is Failure<A, E> = core.exitIsFailure
95
+
96
+ /**
97
+ * Returns `true` if the specified `Exit` is a `Success`, `false` otherwise.
98
+ *
99
+ * @since 2.0.0
100
+ * @category refinements
101
+ */
102
+ export const isSuccess: <A, E>(self: Exit<A, E>) => self is Success<A, E> = core.exitIsSuccess
103
+
104
+ /**
105
+ * Returns `true` if the specified exit is a `Failure` **and** the `Cause` of
106
+ * the failure was due to interruption, `false` otherwise.
107
+ *
108
+ * @since 2.0.0
109
+ * @category getters
110
+ */
111
+ export const isInterrupted: <A, E>(self: Exit<A, E>) => boolean = core.exitIsInterrupted
112
+
113
+ /**
114
+ * Maps the `Success` value of the specified exit to the provided constant
115
+ * value.
116
+ *
117
+ * @since 2.0.0
118
+ * @category mapping
119
+ */
120
+ export const as: {
121
+ <A2>(value: A2): <A, E>(self: Exit<A, E>) => Exit<A2, E>
122
+ <A, E, A2>(self: Exit<A, E>, value: A2): Exit<A2, E>
123
+ } = core.exitAs
124
+
125
+ /**
126
+ * Maps the `Success` value of the specified exit to a void.
127
+ *
128
+ * @since 2.0.0
129
+ * @category mapping
130
+ */
131
+ export const asVoid: <A, E>(self: Exit<A, E>) => Exit<void, E> = core.exitAsVoid
132
+
133
+ /**
134
+ * Returns a `Some<Cause<E>>` if the specified exit is a `Failure`, `None`
135
+ * otherwise.
136
+ *
137
+ * @since 2.0.0
138
+ * @category getters
139
+ */
140
+ export const causeOption: <A, E>(self: Exit<A, E>) => Option.Option<Cause.Cause<E>> = core.exitCauseOption
141
+
142
+ /**
143
+ * Collects all of the specified exit values into a `Some<Exit<List<A>, E>>`. If
144
+ * the provided iterable contains no elements, `None` will be returned.
145
+ *
146
+ * @since 2.0.0
147
+ * @category constructors
148
+ */
149
+ export const all: <A, E>(
150
+ exits: Iterable<Exit<A, E>>,
151
+ options?: { readonly parallel?: boolean | undefined } | undefined
152
+ ) => Option.Option<Exit<Array<A>, E>> = core.exitCollectAll
153
+
154
+ /**
155
+ * Constructs a new `Exit.Failure` from the specified unrecoverable defect.
156
+ *
157
+ * @since 2.0.0
158
+ * @category constructors
159
+ */
160
+ export const die: (defect: unknown) => Exit<never> = core.exitDie
161
+
162
+ /**
163
+ * Executes the predicate on the value of the specified exit if it is a
164
+ * `Success`, otherwise returns `false`.
165
+ *
166
+ * @since 2.0.0
167
+ * @category elements
168
+ */
169
+ export const exists: {
170
+ <A, B extends A>(refinement: Refinement<NoInfer<A>, B>): <E>(self: Exit<A, E>) => self is Exit<B>
171
+ <A>(predicate: Predicate<NoInfer<A>>): <E>(self: Exit<A, E>) => boolean
172
+ <A, E, B extends A>(self: Exit<A, E>, refinement: Refinement<A, B>): self is Exit<B>
173
+ <A, E>(self: Exit<A, E>, predicate: Predicate<A>): boolean
174
+ } = core.exitExists
175
+
176
+ /**
177
+ * Constructs a new `Exit.Failure` from the specified recoverable error of type
178
+ * `E`.
179
+ *
180
+ * @since 2.0.0
181
+ * @category constructors
182
+ */
183
+ export const fail: <E>(error: E) => Exit<never, E> = core.exitFail
184
+
185
+ /**
186
+ * Constructs a new `Exit.Failure` from the specified `Cause` of type `E`.
187
+ *
188
+ * @since 2.0.0
189
+ * @category constructors
190
+ */
191
+ export const failCause: <E>(cause: Cause.Cause<E>) => Exit<never, E> = core.exitFailCause
192
+
193
+ /**
194
+ * @since 2.0.0
195
+ * @category sequencing
196
+ */
197
+ export const flatMap: {
198
+ <A, A2, E2>(f: (a: A) => Exit<A2, E2>): <E>(self: Exit<A, E>) => Exit<A2, E2 | E>
199
+ <A, E, E2, A2>(self: Exit<A, E>, f: (a: A) => Exit<A2, E2>): Exit<A2, E | E2>
200
+ } = core.exitFlatMap
201
+
202
+ /**
203
+ * @since 2.0.0
204
+ * @category sequencing
205
+ */
206
+ export const flatMapEffect: {
207
+ <A, E, A2, E2, R>(
208
+ f: (a: A) => Effect.Effect<Exit<A2, E>, E2, R>
209
+ ): (self: Exit<A, E>) => Effect.Effect<Exit<A2, E>, E2, R>
210
+ <A, E, A2, E2, R>(self: Exit<A, E>, f: (a: A) => Effect.Effect<Exit<A2, E>, E2, R>): Effect.Effect<Exit<A2, E>, E2, R>
211
+ } = core.exitFlatMapEffect
212
+
213
+ /**
214
+ * @since 2.0.0
215
+ * @category sequencing
216
+ */
217
+ export const flatten: <A, E, E2>(self: Exit<Exit<A, E>, E2>) => Exit<A, E | E2> = core.exitFlatten
218
+
219
+ /**
220
+ * @since 2.0.0
221
+ * @category traversing
222
+ */
223
+ export const forEachEffect: {
224
+ <A, B, E2, R>(f: (a: A) => Effect.Effect<B, E2, R>): <E>(self: Exit<A, E>) => Effect.Effect<Exit<B, E2 | E>, never, R>
225
+ <A, E, B, E2, R>(self: Exit<A, E>, f: (a: A) => Effect.Effect<B, E2, R>): Effect.Effect<Exit<B, E | E2>, never, R>
226
+ } = core.exitForEachEffect
227
+
228
+ /**
229
+ * Converts an `Either<R, L>` into an `Exit<R, L>`.
230
+ *
231
+ * @since 2.0.0
232
+ * @category conversions
233
+ */
234
+ export const fromEither: <R, L>(either: Either.Either<R, L>) => Exit<R, L> = core.exitFromEither
235
+
236
+ /**
237
+ * Converts an `Option<A>` into an `Exit<void, A>`.
238
+ *
239
+ * @since 2.0.0
240
+ * @category conversions
241
+ */
242
+ export const fromOption: <A>(option: Option.Option<A>) => Exit<A, void> = core.exitFromOption
243
+
244
+ /**
245
+ * Returns the `A` if specified exit is a `Success`, otherwise returns the
246
+ * alternate `A` value computed from the specified function which receives the
247
+ * `Cause<E>` of the exit `Failure`.
248
+ *
249
+ * @since 2.0.0
250
+ * @category getters
251
+ */
252
+ export const getOrElse: {
253
+ <E, A2>(orElse: (cause: Cause.Cause<E>) => A2): <A>(self: Exit<A, E>) => A2 | A
254
+ <A, E, A2>(self: Exit<A, E>, orElse: (cause: Cause.Cause<E>) => A2): A | A2
255
+ } = core.exitGetOrElse
256
+
257
+ /**
258
+ * Constructs a new `Exit.Failure` from the specified `FiberId` indicating that
259
+ * the `Fiber` running an `Effect` workflow was terminated due to interruption.
260
+ *
261
+ * @since 2.0.0
262
+ * @category constructors
263
+ */
264
+ export const interrupt: (fiberId: FiberId.FiberId) => Exit<never> = core.exitInterrupt
265
+
266
+ /**
267
+ * Maps over the `Success` value of the specified exit using the provided
268
+ * function.
269
+ *
270
+ * @since 2.0.0
271
+ * @category mapping
272
+ */
273
+ export const map: {
274
+ <A, B>(f: (a: A) => B): <E>(self: Exit<A, E>) => Exit<B, E>
275
+ <A, E, B>(self: Exit<A, E>, f: (a: A) => B): Exit<B, E>
276
+ } = core.exitMap
277
+
278
+ /**
279
+ * Maps over the `Success` and `Failure` cases of the specified exit using the
280
+ * provided functions.
281
+ *
282
+ * @since 2.0.0
283
+ * @category mapping
284
+ */
285
+ export const mapBoth: {
286
+ <E, A, E2, A2>(
287
+ options: { readonly onFailure: (e: E) => E2; readonly onSuccess: (a: A) => A2 }
288
+ ): (self: Exit<A, E>) => Exit<A2, E2>
289
+ <A, E, E2, A2>(
290
+ self: Exit<A, E>,
291
+ options: { readonly onFailure: (e: E) => E2; readonly onSuccess: (a: A) => A2 }
292
+ ): Exit<A2, E2>
293
+ } = core.exitMapBoth
294
+
295
+ /**
296
+ * Maps over the error contained in the `Failure` of the specified exit using
297
+ * the provided function.
298
+ *
299
+ * @since 2.0.0
300
+ * @category mapping
301
+ */
302
+ export const mapError: {
303
+ <E, E2>(f: (e: E) => E2): <A>(self: Exit<A, E>) => Exit<A, E2>
304
+ <A, E, E2>(self: Exit<A, E>, f: (e: E) => E2): Exit<A, E2>
305
+ } = core.exitMapError
306
+
307
+ /**
308
+ * Maps over the `Cause` contained in the `Failure` of the specified exit using
309
+ * the provided function.
310
+ *
311
+ * @since 2.0.0
312
+ * @category mapping
313
+ */
314
+ export const mapErrorCause: {
315
+ <E, E2>(f: (cause: Cause.Cause<E>) => Cause.Cause<E2>): <A>(self: Exit<A, E>) => Exit<A, E2>
316
+ <E, A, E2>(self: Exit<A, E>, f: (cause: Cause.Cause<E>) => Cause.Cause<E2>): Exit<A, E2>
317
+ } = core.exitMapErrorCause
318
+
319
+ /**
320
+ * @since 2.0.0
321
+ * @category folding
322
+ */
323
+ export const match: {
324
+ <E, A, Z1, Z2>(
325
+ options: { readonly onFailure: (cause: Cause.Cause<E>) => Z1; readonly onSuccess: (a: A) => Z2 }
326
+ ): (self: Exit<A, E>) => Z1 | Z2
327
+ <A, E, Z1, Z2>(
328
+ self: Exit<A, E>,
329
+ options: { readonly onFailure: (cause: Cause.Cause<E>) => Z1; readonly onSuccess: (a: A) => Z2 }
330
+ ): Z1 | Z2
331
+ } = core.exitMatch
332
+
333
+ /**
334
+ * @since 2.0.0
335
+ * @category folding
336
+ */
337
+ export const matchEffect: {
338
+ <E, A2, E2, R, A, A3, E3, R2>(
339
+ options: {
340
+ readonly onFailure: (cause: Cause.Cause<E>) => Effect.Effect<A2, E2, R>
341
+ readonly onSuccess: (a: A) => Effect.Effect<A3, E3, R2>
342
+ }
343
+ ): (self: Exit<A, E>) => Effect.Effect<A2 | A3, E2 | E3, R | R2>
344
+ <A, E, A2, E2, R, A3, E3, R2>(
345
+ self: Exit<A, E>,
346
+ options: {
347
+ readonly onFailure: (cause: Cause.Cause<E>) => Effect.Effect<A2, E2, R>
348
+ readonly onSuccess: (a: A) => Effect.Effect<A3, E3, R2>
349
+ }
350
+ ): Effect.Effect<A2 | A3, E2 | E3, R | R2>
351
+ } = core.exitMatchEffect
352
+
353
+ /**
354
+ * Constructs a new `Exit.Success` containing the specified value of type `A`.
355
+ *
356
+ * @since 2.0.0
357
+ * @category constructors
358
+ */
359
+ export const succeed: <A>(value: A) => Exit<A> = core.exitSucceed
360
+
361
+ const void_: Exit<void> = core.exitVoid
362
+ export {
363
+ /**
364
+ * Represents an `Exit` which succeeds with `undefined`.
365
+ *
366
+ * @since 2.0.0
367
+ * @category constructors
368
+ */
369
+ void_ as void
370
+ }
371
+
372
+ /**
373
+ * Sequentially zips the this result with the specified result or else returns
374
+ * the failed `Cause<E | E2>`.
375
+ *
376
+ * @since 2.0.0
377
+ * @category zipping
378
+ */
379
+ export const zip: {
380
+ <A2, E2>(that: Exit<A2, E2>): <A, E>(self: Exit<A, E>) => Exit<[A, A2], E2 | E>
381
+ <A, E, A2, E2>(self: Exit<A, E>, that: Exit<A2, E2>): Exit<[A, A2], E | E2>
382
+ } = core.exitZip
383
+
384
+ /**
385
+ * Sequentially zips the this result with the specified result discarding the
386
+ * second element of the tuple or else returns the failed `Cause<E | E2>`.
387
+ *
388
+ * @since 2.0.0
389
+ * @category zipping
390
+ */
391
+ export const zipLeft: {
392
+ <A2, E2>(that: Exit<A2, E2>): <A, E>(self: Exit<A, E>) => Exit<A, E2 | E>
393
+ <A, E, A2, E2>(self: Exit<A, E>, that: Exit<A2, E2>): Exit<A, E | E2>
394
+ } = core.exitZipLeft
395
+
396
+ /**
397
+ * Sequentially zips the this result with the specified result discarding the
398
+ * first element of the tuple or else returns the failed `Cause<E | E2>`.
399
+ *
400
+ * @since 2.0.0
401
+ * @category zipping
402
+ */
403
+ export const zipRight: {
404
+ <A2, E2>(that: Exit<A2, E2>): <A, E>(self: Exit<A, E>) => Exit<A2, E2 | E>
405
+ <A, E, A2, E2>(self: Exit<A, E>, that: Exit<A2, E2>): Exit<A2, E | E2>
406
+ } = core.exitZipRight
407
+
408
+ /**
409
+ * Parallelly zips the this result with the specified result or else returns
410
+ * the failed `Cause<E | E2>`.
411
+ *
412
+ * @since 2.0.0
413
+ * @category zipping
414
+ */
415
+ export const zipPar: {
416
+ <A2, E2>(that: Exit<A2, E2>): <A, E>(self: Exit<A, E>) => Exit<[A, A2], E2 | E>
417
+ <A, E, A2, E2>(self: Exit<A, E>, that: Exit<A2, E2>): Exit<[A, A2], E | E2>
418
+ } = core.exitZipPar
419
+
420
+ /**
421
+ * Parallelly zips the this result with the specified result discarding the
422
+ * second element of the tuple or else returns the failed `Cause<E | E2>`.
423
+ *
424
+ * @since 2.0.0
425
+ * @category zipping
426
+ */
427
+ export const zipParLeft: {
428
+ <A2, E2>(that: Exit<A2, E2>): <A, E>(self: Exit<A, E>) => Exit<A, E2 | E>
429
+ <A, E, A2, E2>(self: Exit<A, E>, that: Exit<A2, E2>): Exit<A, E | E2>
430
+ } = core.exitZipParLeft
431
+
432
+ /**
433
+ * Parallelly zips the this result with the specified result discarding the
434
+ * first element of the tuple or else returns the failed `Cause<E | E2>`.
435
+ *
436
+ * @since 2.0.0
437
+ * @category zipping
438
+ */
439
+ export const zipParRight: {
440
+ <A2, E2>(that: Exit<A2, E2>): <A, E>(self: Exit<A, E>) => Exit<A2, E2 | E>
441
+ <A, E, A2, E2>(self: Exit<A, E>, that: Exit<A2, E2>): Exit<A2, E | E2>
442
+ } = core.exitZipParRight
443
+
444
+ /**
445
+ * Zips this exit together with that exit using the specified combination
446
+ * functions.
447
+ *
448
+ * @since 2.0.0
449
+ * @category zipping
450
+ */
451
+ export const zipWith: {
452
+ <B, E2, A, C, E>(
453
+ that: Exit<B, E2>,
454
+ options: {
455
+ readonly onSuccess: (a: A, b: B) => C
456
+ readonly onFailure: (cause: Cause.Cause<E>, cause2: Cause.Cause<E2>) => Cause.Cause<any>
457
+ }
458
+ ): (self: Exit<A, E>) => Exit<C, any>
459
+ <A, E, B, E2, C>(
460
+ self: Exit<A, E>,
461
+ that: Exit<B, E2>,
462
+ options: {
463
+ readonly onSuccess: (a: A, b: B) => C
464
+ readonly onFailure: (cause: Cause.Cause<E>, cause2: Cause.Cause<E2>) => Cause.Cause<E | E2>
465
+ }
466
+ ): Exit<C, E | E2>
467
+ } = core.exitZipWith
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @since 3.10.0
3
+ */
4
+
5
+ /**
6
+ * @category re-exports
7
+ * @since 3.10.0
8
+ */
9
+ export * from "fast-check"