effect 2.4.18 → 3.0.0
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.
- package/Array/package.json +6 -0
- package/FiberHandle/package.json +6 -0
- package/Readable/package.json +6 -0
- package/Record/package.json +6 -0
- package/RegExp/package.json +6 -0
- package/Subscribable/package.json +6 -0
- package/dist/cjs/{ReadonlyArray.js → Array.js} +46 -23
- package/dist/cjs/Array.js.map +1 -0
- package/dist/cjs/Brand.js +2 -2
- package/dist/cjs/Brand.js.map +1 -1
- package/dist/cjs/Channel.js +4 -8
- package/dist/cjs/Channel.js.map +1 -1
- package/dist/cjs/Chunk.js +5 -1
- package/dist/cjs/Chunk.js.map +1 -1
- package/dist/cjs/ConfigError.js.map +1 -1
- package/dist/cjs/Cron.js +13 -13
- package/dist/cjs/Cron.js.map +1 -1
- package/dist/cjs/Duration.js +39 -2
- package/dist/cjs/Duration.js.map +1 -1
- package/dist/cjs/Effect.js +14 -10
- package/dist/cjs/Effect.js.map +1 -1
- package/dist/cjs/Either.js +4 -1
- package/dist/cjs/Either.js.map +1 -1
- package/dist/cjs/ExecutionStrategy.js.map +1 -1
- package/dist/cjs/Exit.js +3 -9
- package/dist/cjs/Exit.js.map +1 -1
- package/dist/cjs/Fiber.js +2 -8
- package/dist/cjs/Fiber.js.map +1 -1
- package/dist/cjs/FiberHandle.js +288 -0
- package/dist/cjs/FiberHandle.js.map +1 -0
- package/dist/cjs/FiberMap.js +86 -27
- package/dist/cjs/FiberMap.js.map +1 -1
- package/dist/cjs/FiberRefs.js.map +1 -1
- package/dist/cjs/FiberSet.js +51 -15
- package/dist/cjs/FiberSet.js.map +1 -1
- package/dist/cjs/HashMap.js.map +1 -1
- package/dist/cjs/HashSet.js.map +1 -1
- package/dist/cjs/Iterable.js +40 -5
- package/dist/cjs/Iterable.js.map +1 -1
- package/dist/cjs/Layer.js.map +1 -1
- package/dist/cjs/List.js +8 -7
- package/dist/cjs/List.js.map +1 -1
- package/dist/cjs/Metric.js +3 -1
- package/dist/cjs/Metric.js.map +1 -1
- package/dist/cjs/MetricKey.js.map +1 -1
- package/dist/cjs/MetricKeyType.js.map +1 -1
- package/dist/cjs/MutableHashMap.js +0 -4
- package/dist/cjs/MutableHashMap.js.map +1 -1
- package/dist/cjs/Option.js +3 -6
- package/dist/cjs/Option.js.map +1 -1
- package/dist/cjs/Readable.js +79 -0
- package/dist/cjs/Readable.js.map +1 -0
- package/dist/cjs/{ReadonlyRecord.js → Record.js} +29 -29
- package/dist/cjs/Record.js.map +1 -0
- package/dist/cjs/RegExp.js +24 -0
- package/dist/cjs/RegExp.js.map +1 -0
- package/dist/cjs/STM.js +4 -10
- package/dist/cjs/STM.js.map +1 -1
- package/dist/cjs/Schedule.js +2 -2
- package/dist/cjs/Schedule.js.map +1 -1
- package/dist/cjs/ScopedCache.js.map +1 -1
- package/dist/cjs/Stream.js +3 -9
- package/dist/cjs/Stream.js.map +1 -1
- package/dist/cjs/StreamHaltStrategy.js +2 -0
- package/dist/cjs/StreamHaltStrategy.js.map +1 -1
- package/dist/cjs/String.js +44 -2
- package/dist/cjs/String.js.map +1 -1
- package/dist/cjs/Subscribable.js +91 -0
- package/dist/cjs/Subscribable.js.map +1 -0
- package/dist/cjs/SubscriptionRef.js.map +1 -1
- package/dist/cjs/TestAnnotation.js +2 -1
- package/dist/cjs/TestAnnotation.js.map +1 -1
- package/dist/cjs/TestAnnotations.js +1 -1
- package/dist/cjs/TestAnnotations.js.map +1 -1
- package/dist/cjs/TestClock.js +3 -3
- package/dist/cjs/TestClock.js.map +1 -1
- package/dist/cjs/Tracer.js.map +1 -1
- package/dist/cjs/index.js +14 -6
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/internal/{readonlyArray.js → array.js} +1 -1
- package/dist/cjs/internal/array.js.map +1 -0
- package/dist/cjs/internal/cache.js +3 -3
- package/dist/cjs/internal/cache.js.map +1 -1
- package/dist/cjs/internal/cause.js +6 -5
- package/dist/cjs/internal/cause.js.map +1 -1
- package/dist/cjs/internal/channel/channelExecutor.js +15 -15
- package/dist/cjs/internal/channel/channelExecutor.js.map +1 -1
- package/dist/cjs/internal/channel/channelState.js +1 -1
- package/dist/cjs/internal/channel/channelState.js.map +1 -1
- package/dist/cjs/internal/channel/singleProducerAsyncInput.js +1 -1
- package/dist/cjs/internal/channel/singleProducerAsyncInput.js.map +1 -1
- package/dist/cjs/internal/channel.js +10 -10
- package/dist/cjs/internal/channel.js.map +1 -1
- package/dist/cjs/internal/clock.js +2 -2
- package/dist/cjs/internal/clock.js.map +1 -1
- package/dist/cjs/internal/configError.js +20 -19
- package/dist/cjs/internal/configError.js.map +1 -1
- package/dist/cjs/internal/configProvider/pathPatch.js +1 -1
- package/dist/cjs/internal/configProvider/pathPatch.js.map +1 -1
- package/dist/cjs/internal/configProvider.js +48 -49
- package/dist/cjs/internal/configProvider.js.map +1 -1
- package/dist/cjs/internal/core-effect.js +68 -40
- package/dist/cjs/internal/core-effect.js.map +1 -1
- package/dist/cjs/internal/core-stream.js +2 -3
- package/dist/cjs/internal/core-stream.js.map +1 -1
- package/dist/cjs/internal/core.js +41 -114
- package/dist/cjs/internal/core.js.map +1 -1
- package/dist/cjs/internal/dataSource.js +19 -2
- package/dist/cjs/internal/dataSource.js.map +1 -1
- package/dist/cjs/internal/differ/readonlyArrayPatch.js +6 -6
- package/dist/cjs/internal/differ/readonlyArrayPatch.js.map +1 -1
- package/dist/cjs/internal/effect/circular.js +6 -1
- package/dist/cjs/internal/effect/circular.js.map +1 -1
- package/dist/cjs/internal/errors.js +13 -0
- package/dist/cjs/internal/errors.js.map +1 -0
- package/dist/cjs/internal/executionStrategy.js +4 -4
- package/dist/cjs/internal/executionStrategy.js.map +1 -1
- package/dist/cjs/internal/fiber.js +5 -6
- package/dist/cjs/internal/fiber.js.map +1 -1
- package/dist/cjs/internal/fiberRefs/patch.js +1 -1
- package/dist/cjs/internal/fiberRefs/patch.js.map +1 -1
- package/dist/cjs/internal/fiberRefs.js +1 -1
- package/dist/cjs/internal/fiberRefs.js.map +1 -1
- package/dist/cjs/internal/fiberRuntime.js +106 -66
- package/dist/cjs/internal/fiberRuntime.js.map +1 -1
- package/dist/cjs/internal/groupBy.js +3 -3
- package/dist/cjs/internal/groupBy.js.map +1 -1
- package/dist/cjs/internal/hashMap.js +1 -1
- package/dist/cjs/internal/hashMap.js.map +1 -1
- package/dist/cjs/internal/hashSet.js.map +1 -1
- package/dist/cjs/internal/layer/circular.js.map +1 -1
- package/dist/cjs/internal/layer.js +5 -5
- package/dist/cjs/internal/layer.js.map +1 -1
- package/dist/cjs/internal/logger.js +28 -8
- package/dist/cjs/internal/logger.js.map +1 -1
- package/dist/cjs/internal/managedRuntime.js +1 -1
- package/dist/cjs/internal/managedRuntime.js.map +1 -1
- package/dist/cjs/internal/matcher.js +5 -4
- package/dist/cjs/internal/matcher.js.map +1 -1
- package/dist/cjs/internal/metric/boundaries.js +4 -4
- package/dist/cjs/internal/metric/boundaries.js.map +1 -1
- package/dist/cjs/internal/metric/hook.js +20 -17
- package/dist/cjs/internal/metric/hook.js.map +1 -1
- package/dist/cjs/internal/metric/key.js +4 -4
- package/dist/cjs/internal/metric/key.js.map +1 -1
- package/dist/cjs/internal/metric/keyType.js +6 -1
- package/dist/cjs/internal/metric/keyType.js.map +1 -1
- package/dist/cjs/internal/metric/state.js +4 -4
- package/dist/cjs/internal/metric/state.js.map +1 -1
- package/dist/cjs/internal/metric.js +4 -4
- package/dist/cjs/internal/metric.js.map +1 -1
- package/dist/cjs/internal/pool.js +11 -11
- package/dist/cjs/internal/pool.js.map +1 -1
- package/dist/cjs/internal/pubsub.js +5 -5
- package/dist/cjs/internal/pubsub.js.map +1 -1
- package/dist/cjs/internal/query.js +2 -2
- package/dist/cjs/internal/query.js.map +1 -1
- package/dist/cjs/internal/queue.js +9 -9
- package/dist/cjs/internal/queue.js.map +1 -1
- package/dist/cjs/internal/rateLimiter.js +1 -1
- package/dist/cjs/internal/rateLimiter.js.map +1 -1
- package/dist/cjs/internal/redBlackTree/iterator.js +2 -2
- package/dist/cjs/internal/redBlackTree/iterator.js.map +1 -1
- package/dist/cjs/internal/ref.js +6 -1
- package/dist/cjs/internal/ref.js.map +1 -1
- package/dist/cjs/internal/reloadable.js +1 -1
- package/dist/cjs/internal/reloadable.js.map +1 -1
- package/dist/cjs/internal/runtime.js +4 -4
- package/dist/cjs/internal/runtime.js.map +1 -1
- package/dist/cjs/internal/schedule/intervals.js +2 -1
- package/dist/cjs/internal/schedule/intervals.js.map +1 -1
- package/dist/cjs/internal/schedule.js +5 -5
- package/dist/cjs/internal/schedule.js.map +1 -1
- package/dist/cjs/internal/scopedCache.js +7 -7
- package/dist/cjs/internal/scopedCache.js.map +1 -1
- package/dist/cjs/internal/scopedRef.js +4 -4
- package/dist/cjs/internal/scopedRef.js.map +1 -1
- package/dist/cjs/internal/secret.js +2 -2
- package/dist/cjs/internal/secret.js.map +1 -1
- package/dist/cjs/internal/sink.js +10 -10
- package/dist/cjs/internal/sink.js.map +1 -1
- package/dist/cjs/internal/stm/stm/tExit.js +2 -4
- package/dist/cjs/internal/stm/stm/tExit.js.map +1 -1
- package/dist/cjs/internal/stm/stm.js +11 -11
- package/dist/cjs/internal/stm/stm.js.map +1 -1
- package/dist/cjs/internal/stm/tMap.js +3 -3
- package/dist/cjs/internal/stm/tMap.js.map +1 -1
- package/dist/cjs/internal/stm/tPriorityQueue.js +11 -11
- package/dist/cjs/internal/stm/tPriorityQueue.js.map +1 -1
- package/dist/cjs/internal/stm/tPubSub.js +3 -3
- package/dist/cjs/internal/stm/tPubSub.js.map +1 -1
- package/dist/cjs/internal/stm/tQueue.js +3 -3
- package/dist/cjs/internal/stm/tQueue.js.map +1 -1
- package/dist/cjs/internal/stm/tSet.js +1 -1
- package/dist/cjs/internal/stm/tSet.js.map +1 -1
- package/dist/cjs/internal/stream/haltStrategy.js +5 -5
- package/dist/cjs/internal/stream/haltStrategy.js.map +1 -1
- package/dist/cjs/internal/stream.js +84 -85
- package/dist/cjs/internal/stream.js.map +1 -1
- package/dist/cjs/internal/subscriptionRef.js +8 -0
- package/dist/cjs/internal/subscriptionRef.js.map +1 -1
- package/dist/cjs/internal/supervisor.js +1 -1
- package/dist/cjs/internal/supervisor.js.map +1 -1
- package/dist/cjs/internal/take.js +1 -1
- package/dist/cjs/internal/take.js.map +1 -1
- package/dist/cjs/internal/tracer.js.map +1 -1
- package/dist/cjs/internal/trie.js +1 -1
- package/dist/cjs/internal/trie.js.map +1 -1
- package/dist/cjs/internal/version.js +1 -1
- package/dist/cjs/internal/version.js.map +1 -1
- package/dist/dts/{ReadonlyArray.d.ts → Array.d.ts} +39 -18
- package/dist/dts/Array.d.ts.map +1 -0
- package/dist/dts/BigDecimal.d.ts.map +1 -1
- package/dist/dts/BigInt.d.ts.map +1 -1
- package/dist/dts/Brand.d.ts +1 -19
- package/dist/dts/Brand.d.ts.map +1 -1
- package/dist/dts/Cache.d.ts +10 -10
- package/dist/dts/Cache.d.ts.map +1 -1
- package/dist/dts/Cause.d.ts +1 -1
- package/dist/dts/Cause.d.ts.map +1 -1
- package/dist/dts/Channel.d.ts +6 -4
- package/dist/dts/Channel.d.ts.map +1 -1
- package/dist/dts/Chunk.d.ts +1 -4
- package/dist/dts/Chunk.d.ts.map +1 -1
- package/dist/dts/ConfigError.d.ts +7 -6
- package/dist/dts/ConfigError.d.ts.map +1 -1
- package/dist/dts/Cron.d.ts +0 -5
- package/dist/dts/Cron.d.ts.map +1 -1
- package/dist/dts/Duration.d.ts +16 -0
- package/dist/dts/Duration.d.ts.map +1 -1
- package/dist/dts/Effect.d.ts +38 -33
- package/dist/dts/Effect.d.ts.map +1 -1
- package/dist/dts/Either.d.ts +5 -2
- package/dist/dts/Either.d.ts.map +1 -1
- package/dist/dts/Encoding.d.ts.map +1 -1
- package/dist/dts/Equivalence.d.ts.map +1 -1
- package/dist/dts/ExecutionStrategy.d.ts +10 -2
- package/dist/dts/ExecutionStrategy.d.ts.map +1 -1
- package/dist/dts/Exit.d.ts +4 -3
- package/dist/dts/Exit.d.ts.map +1 -1
- package/dist/dts/Fiber.d.ts +4 -2
- package/dist/dts/Fiber.d.ts.map +1 -1
- package/dist/dts/FiberHandle.d.ts +189 -0
- package/dist/dts/FiberHandle.d.ts.map +1 -0
- package/dist/dts/FiberMap.d.ts +48 -12
- package/dist/dts/FiberMap.d.ts.map +1 -1
- package/dist/dts/FiberRefs.d.ts +1 -1
- package/dist/dts/FiberRefs.d.ts.map +1 -1
- package/dist/dts/FiberSet.d.ts +9 -5
- package/dist/dts/FiberSet.d.ts.map +1 -1
- package/dist/dts/Function.d.ts.map +1 -1
- package/dist/dts/GroupBy.d.ts +1 -1
- package/dist/dts/GroupBy.d.ts.map +1 -1
- package/dist/dts/HashMap.d.ts +0 -1
- package/dist/dts/HashMap.d.ts.map +1 -1
- package/dist/dts/HashSet.d.ts +0 -1
- package/dist/dts/HashSet.d.ts.map +1 -1
- package/dist/dts/Iterable.d.ts +12 -5
- package/dist/dts/Iterable.d.ts.map +1 -1
- package/dist/dts/Layer.d.ts +6 -6
- package/dist/dts/Layer.d.ts.map +1 -1
- package/dist/dts/List.d.ts +0 -11
- package/dist/dts/List.d.ts.map +1 -1
- package/dist/dts/Logger.d.ts +2 -2
- package/dist/dts/Logger.d.ts.map +1 -1
- package/dist/dts/Metric.d.ts +7 -2
- package/dist/dts/Metric.d.ts.map +1 -1
- package/dist/dts/MetricKey.d.ts +4 -1
- package/dist/dts/MetricKey.d.ts.map +1 -1
- package/dist/dts/MetricKeyType.d.ts +4 -1
- package/dist/dts/MetricKeyType.d.ts.map +1 -1
- package/dist/dts/MutableHashMap.d.ts.map +1 -1
- package/dist/dts/Option.d.ts +5 -3
- package/dist/dts/Option.d.ts.map +1 -1
- package/dist/dts/Order.d.ts.map +1 -1
- package/dist/dts/Readable.d.ts +55 -0
- package/dist/dts/Readable.d.ts.map +1 -0
- package/dist/dts/{ReadonlyRecord.d.ts → Record.d.ts} +29 -30
- package/dist/dts/Record.d.ts.map +1 -0
- package/dist/dts/Ref.d.ts +2 -2
- package/dist/dts/Ref.d.ts.map +1 -1
- package/dist/dts/RegExp.d.ts +17 -0
- package/dist/dts/RegExp.d.ts.map +1 -0
- package/dist/dts/Request.d.ts +1 -1
- package/dist/dts/Request.d.ts.map +1 -1
- package/dist/dts/RequestResolver.d.ts +2 -2
- package/dist/dts/RequestResolver.d.ts.map +1 -1
- package/dist/dts/STM.d.ts +6 -4
- package/dist/dts/STM.d.ts.map +1 -1
- package/dist/dts/Schedule.d.ts +1 -1
- package/dist/dts/Scheduler.d.ts.map +1 -1
- package/dist/dts/ScopedCache.d.ts +9 -9
- package/dist/dts/ScopedCache.d.ts.map +1 -1
- package/dist/dts/SortedMap.d.ts.map +1 -1
- package/dist/dts/SortedSet.d.ts +1 -1
- package/dist/dts/SortedSet.d.ts.map +1 -1
- package/dist/dts/Stream.d.ts +8 -6
- package/dist/dts/Stream.d.ts.map +1 -1
- package/dist/dts/StreamHaltStrategy.d.ts +14 -2
- package/dist/dts/StreamHaltStrategy.d.ts.map +1 -1
- package/dist/dts/String.d.ts +25 -1
- package/dist/dts/String.d.ts.map +1 -1
- package/dist/dts/Subscribable.d.ts +59 -0
- package/dist/dts/Subscribable.d.ts.map +1 -0
- package/dist/dts/SubscriptionRef.d.ts +2 -2
- package/dist/dts/SubscriptionRef.d.ts.map +1 -1
- package/dist/dts/TestAnnotation.d.ts.map +1 -1
- package/dist/dts/TestAnnotationMap.d.ts.map +1 -1
- package/dist/dts/TestAnnotations.d.ts +0 -3
- package/dist/dts/TestAnnotations.d.ts.map +1 -1
- package/dist/dts/TestClock.d.ts.map +1 -1
- package/dist/dts/TestLive.d.ts.map +1 -1
- package/dist/dts/TestServices.d.ts.map +1 -1
- package/dist/dts/TestSized.d.ts.map +1 -1
- package/dist/dts/Tracer.d.ts +12 -5
- package/dist/dts/Tracer.d.ts.map +1 -1
- package/dist/dts/Trie.d.ts +1 -1
- package/dist/dts/Trie.d.ts.map +1 -1
- package/dist/dts/Types.d.ts +0 -7
- package/dist/dts/Types.d.ts.map +1 -1
- package/dist/dts/index.d.ts +22 -4
- package/dist/dts/index.d.ts.map +1 -1
- package/dist/dts/internal/array.d.ts +5 -0
- package/dist/dts/internal/array.d.ts.map +1 -0
- package/dist/dts/internal/core-stream.d.ts +4 -0
- package/dist/dts/internal/core-stream.d.ts.map +1 -1
- package/dist/dts/internal/core.d.ts +3 -1
- package/dist/dts/internal/core.d.ts.map +1 -1
- package/dist/dts/internal/errors.d.ts +5 -0
- package/dist/dts/internal/errors.d.ts.map +1 -0
- package/dist/dts/internal/fiber.d.ts +5 -1
- package/dist/dts/internal/fiber.d.ts.map +1 -1
- package/dist/dts/internal/hashMap.d.ts.map +1 -1
- package/dist/dts/internal/logger.d.ts.map +1 -1
- package/dist/dts/internal/metric/keyType.d.ts +3 -1
- package/dist/dts/internal/metric/keyType.d.ts.map +1 -1
- package/dist/dts/internal/metric/state.d.ts.map +1 -1
- package/dist/dts/internal/random.d.ts.map +1 -1
- package/dist/dts/internal/runtimeFlags.d.ts.map +1 -1
- package/dist/dts/internal/stm/stm/tExit.d.ts +4 -1
- package/dist/dts/internal/stm/stm/tExit.d.ts.map +1 -1
- package/dist/dts/internal/stm/stm.d.ts +3 -0
- package/dist/dts/internal/stm/stm.d.ts.map +1 -1
- package/dist/dts/internal/stream.d.ts +5 -1
- package/dist/dts/internal/stream.d.ts.map +1 -1
- package/dist/esm/{ReadonlyArray.js → Array.js} +42 -20
- package/dist/esm/Array.js.map +1 -0
- package/dist/esm/Brand.js +2 -2
- package/dist/esm/Brand.js.map +1 -1
- package/dist/esm/Channel.js +4 -2
- package/dist/esm/Channel.js.map +1 -1
- package/dist/esm/Chunk.js +4 -1
- package/dist/esm/Chunk.js.map +1 -1
- package/dist/esm/ConfigError.js.map +1 -1
- package/dist/esm/Cron.js +13 -13
- package/dist/esm/Cron.js.map +1 -1
- package/dist/esm/Duration.js +38 -1
- package/dist/esm/Duration.js.map +1 -1
- package/dist/esm/Effect.js +11 -2
- package/dist/esm/Effect.js.map +1 -1
- package/dist/esm/Either.js +4 -1
- package/dist/esm/Either.js.map +1 -1
- package/dist/esm/ExecutionStrategy.js.map +1 -1
- package/dist/esm/Exit.js +4 -2
- package/dist/esm/Exit.js.map +1 -1
- package/dist/esm/Fiber.js +3 -1
- package/dist/esm/Fiber.js.map +1 -1
- package/dist/esm/FiberHandle.js +247 -0
- package/dist/esm/FiberHandle.js.map +1 -0
- package/dist/esm/FiberMap.js +85 -26
- package/dist/esm/FiberMap.js.map +1 -1
- package/dist/esm/FiberRefs.js.map +1 -1
- package/dist/esm/FiberSet.js +51 -15
- package/dist/esm/FiberSet.js.map +1 -1
- package/dist/esm/HashMap.js.map +1 -1
- package/dist/esm/HashSet.js.map +1 -1
- package/dist/esm/Iterable.js +39 -4
- package/dist/esm/Iterable.js.map +1 -1
- package/dist/esm/Layer.js.map +1 -1
- package/dist/esm/List.js +7 -6
- package/dist/esm/List.js.map +1 -1
- package/dist/esm/Metric.js +3 -1
- package/dist/esm/Metric.js.map +1 -1
- package/dist/esm/MetricKey.js.map +1 -1
- package/dist/esm/MetricKeyType.js.map +1 -1
- package/dist/esm/MutableHashMap.js +0 -3
- package/dist/esm/MutableHashMap.js.map +1 -1
- package/dist/esm/Option.js +4 -2
- package/dist/esm/Option.js.map +1 -1
- package/dist/esm/Readable.js +45 -0
- package/dist/esm/Readable.js.map +1 -0
- package/dist/esm/{ReadonlyRecord.js → Record.js} +29 -29
- package/dist/esm/Record.js.map +1 -0
- package/dist/esm/RegExp.js +17 -0
- package/dist/esm/RegExp.js.map +1 -0
- package/dist/esm/STM.js +5 -3
- package/dist/esm/STM.js.map +1 -1
- package/dist/esm/Schedule.js +1 -1
- package/dist/esm/Schedule.js.map +1 -1
- package/dist/esm/ScopedCache.js.map +1 -1
- package/dist/esm/Stream.js +5 -3
- package/dist/esm/Stream.js.map +1 -1
- package/dist/esm/StreamHaltStrategy.js +2 -0
- package/dist/esm/StreamHaltStrategy.js.map +1 -1
- package/dist/esm/String.js +37 -1
- package/dist/esm/String.js.map +1 -1
- package/dist/esm/Subscribable.js +56 -0
- package/dist/esm/Subscribable.js.map +1 -0
- package/dist/esm/SubscriptionRef.js.map +1 -1
- package/dist/esm/TestAnnotation.js +2 -1
- package/dist/esm/TestAnnotation.js.map +1 -1
- package/dist/esm/TestAnnotations.js +1 -1
- package/dist/esm/TestAnnotations.js.map +1 -1
- package/dist/esm/TestClock.js +3 -3
- package/dist/esm/TestClock.js.map +1 -1
- package/dist/esm/Tracer.js.map +1 -1
- package/dist/esm/index.js +22 -4
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/internal/{readonlyArray.js → array.js} +1 -1
- package/dist/esm/internal/array.js.map +1 -0
- package/dist/esm/internal/cache.js +3 -3
- package/dist/esm/internal/cache.js.map +1 -1
- package/dist/esm/internal/cause.js +6 -5
- package/dist/esm/internal/cause.js.map +1 -1
- package/dist/esm/internal/channel/channelExecutor.js +15 -15
- package/dist/esm/internal/channel/channelExecutor.js.map +1 -1
- package/dist/esm/internal/channel/channelState.js +1 -1
- package/dist/esm/internal/channel/channelState.js.map +1 -1
- package/dist/esm/internal/channel/singleProducerAsyncInput.js +1 -1
- package/dist/esm/internal/channel/singleProducerAsyncInput.js.map +1 -1
- package/dist/esm/internal/channel.js +8 -8
- package/dist/esm/internal/channel.js.map +1 -1
- package/dist/esm/internal/clock.js +2 -2
- package/dist/esm/internal/clock.js.map +1 -1
- package/dist/esm/internal/configError.js +20 -19
- package/dist/esm/internal/configError.js.map +1 -1
- package/dist/esm/internal/configProvider/pathPatch.js +1 -1
- package/dist/esm/internal/configProvider/pathPatch.js.map +1 -1
- package/dist/esm/internal/configProvider.js +48 -49
- package/dist/esm/internal/configProvider.js.map +1 -1
- package/dist/esm/internal/core-effect.js +64 -38
- package/dist/esm/internal/core-effect.js.map +1 -1
- package/dist/esm/internal/core-stream.js +3 -2
- package/dist/esm/internal/core-stream.js.map +1 -1
- package/dist/esm/internal/core.js +37 -108
- package/dist/esm/internal/core.js.map +1 -1
- package/dist/esm/internal/dataSource.js +19 -2
- package/dist/esm/internal/dataSource.js.map +1 -1
- package/dist/esm/internal/differ/readonlyArrayPatch.js +6 -6
- package/dist/esm/internal/differ/readonlyArrayPatch.js.map +1 -1
- package/dist/esm/internal/effect/circular.js +6 -1
- package/dist/esm/internal/effect/circular.js.map +1 -1
- package/dist/esm/internal/errors.js +6 -0
- package/dist/esm/internal/errors.js.map +1 -0
- package/dist/esm/internal/executionStrategy.js +4 -4
- package/dist/esm/internal/executionStrategy.js.map +1 -1
- package/dist/esm/internal/fiber.js +6 -5
- package/dist/esm/internal/fiber.js.map +1 -1
- package/dist/esm/internal/fiberRefs/patch.js +1 -1
- package/dist/esm/internal/fiberRefs/patch.js.map +1 -1
- package/dist/esm/internal/fiberRefs.js +1 -1
- package/dist/esm/internal/fiberRefs.js.map +1 -1
- package/dist/esm/internal/fiberRuntime.js +104 -63
- package/dist/esm/internal/fiberRuntime.js.map +1 -1
- package/dist/esm/internal/groupBy.js +3 -3
- package/dist/esm/internal/groupBy.js.map +1 -1
- package/dist/esm/internal/hashMap.js +1 -1
- package/dist/esm/internal/hashMap.js.map +1 -1
- package/dist/esm/internal/hashSet.js.map +1 -1
- package/dist/esm/internal/layer/circular.js.map +1 -1
- package/dist/esm/internal/layer.js +5 -5
- package/dist/esm/internal/layer.js.map +1 -1
- package/dist/esm/internal/logger.js +28 -8
- package/dist/esm/internal/logger.js.map +1 -1
- package/dist/esm/internal/managedRuntime.js +1 -1
- package/dist/esm/internal/managedRuntime.js.map +1 -1
- package/dist/esm/internal/matcher.js +4 -3
- package/dist/esm/internal/matcher.js.map +1 -1
- package/dist/esm/internal/metric/boundaries.js +4 -4
- package/dist/esm/internal/metric/boundaries.js.map +1 -1
- package/dist/esm/internal/metric/hook.js +20 -17
- package/dist/esm/internal/metric/hook.js.map +1 -1
- package/dist/esm/internal/metric/key.js +4 -4
- package/dist/esm/internal/metric/key.js.map +1 -1
- package/dist/esm/internal/metric/keyType.js +5 -1
- package/dist/esm/internal/metric/keyType.js.map +1 -1
- package/dist/esm/internal/metric/state.js +4 -4
- package/dist/esm/internal/metric/state.js.map +1 -1
- package/dist/esm/internal/metric.js +4 -4
- package/dist/esm/internal/metric.js.map +1 -1
- package/dist/esm/internal/pool.js +11 -11
- package/dist/esm/internal/pool.js.map +1 -1
- package/dist/esm/internal/pubsub.js +5 -5
- package/dist/esm/internal/pubsub.js.map +1 -1
- package/dist/esm/internal/query.js +2 -2
- package/dist/esm/internal/query.js.map +1 -1
- package/dist/esm/internal/queue.js +9 -9
- package/dist/esm/internal/queue.js.map +1 -1
- package/dist/esm/internal/rateLimiter.js +1 -1
- package/dist/esm/internal/rateLimiter.js.map +1 -1
- package/dist/esm/internal/redBlackTree/iterator.js +2 -2
- package/dist/esm/internal/redBlackTree/iterator.js.map +1 -1
- package/dist/esm/internal/ref.js +6 -1
- package/dist/esm/internal/ref.js.map +1 -1
- package/dist/esm/internal/reloadable.js +1 -1
- package/dist/esm/internal/reloadable.js.map +1 -1
- package/dist/esm/internal/runtime.js +4 -4
- package/dist/esm/internal/runtime.js.map +1 -1
- package/dist/esm/internal/schedule/intervals.js +2 -1
- package/dist/esm/internal/schedule/intervals.js.map +1 -1
- package/dist/esm/internal/schedule.js +3 -3
- package/dist/esm/internal/schedule.js.map +1 -1
- package/dist/esm/internal/scopedCache.js +7 -7
- package/dist/esm/internal/scopedCache.js.map +1 -1
- package/dist/esm/internal/scopedRef.js +4 -4
- package/dist/esm/internal/scopedRef.js.map +1 -1
- package/dist/esm/internal/secret.js +2 -2
- package/dist/esm/internal/secret.js.map +1 -1
- package/dist/esm/internal/sink.js +10 -10
- package/dist/esm/internal/sink.js.map +1 -1
- package/dist/esm/internal/stm/stm/tExit.js +3 -2
- package/dist/esm/internal/stm/stm/tExit.js.map +1 -1
- package/dist/esm/internal/stm/stm.js +11 -9
- package/dist/esm/internal/stm/stm.js.map +1 -1
- package/dist/esm/internal/stm/tMap.js +3 -3
- package/dist/esm/internal/stm/tMap.js.map +1 -1
- package/dist/esm/internal/stm/tPriorityQueue.js +11 -11
- package/dist/esm/internal/stm/tPriorityQueue.js.map +1 -1
- package/dist/esm/internal/stm/tPubSub.js +3 -3
- package/dist/esm/internal/stm/tPubSub.js.map +1 -1
- package/dist/esm/internal/stm/tQueue.js +3 -3
- package/dist/esm/internal/stm/tQueue.js.map +1 -1
- package/dist/esm/internal/stm/tSet.js +1 -1
- package/dist/esm/internal/stm/tSet.js.map +1 -1
- package/dist/esm/internal/stream/haltStrategy.js +5 -5
- package/dist/esm/internal/stream/haltStrategy.js.map +1 -1
- package/dist/esm/internal/stream.js +85 -84
- package/dist/esm/internal/stream.js.map +1 -1
- package/dist/esm/internal/subscriptionRef.js +8 -0
- package/dist/esm/internal/subscriptionRef.js.map +1 -1
- package/dist/esm/internal/supervisor.js +1 -1
- package/dist/esm/internal/supervisor.js.map +1 -1
- package/dist/esm/internal/take.js +1 -1
- package/dist/esm/internal/take.js.map +1 -1
- package/dist/esm/internal/tracer.js.map +1 -1
- package/dist/esm/internal/trie.js +1 -1
- package/dist/esm/internal/trie.js.map +1 -1
- package/dist/esm/internal/version.js +1 -1
- package/dist/esm/internal/version.js.map +1 -1
- package/package.json +45 -13
- package/src/{ReadonlyArray.ts → Array.ts} +47 -24
- package/src/Brand.ts +3 -3
- package/src/Cache.ts +12 -10
- package/src/Cause.ts +1 -1
- package/src/Channel.ts +12 -9
- package/src/Chunk.ts +3 -3
- package/src/ConfigError.ts +7 -6
- package/src/Cron.ts +17 -17
- package/src/Duration.ts +54 -1
- package/src/Effect.ts +46 -57
- package/src/Either.ts +7 -7
- package/src/ExecutionStrategy.ts +10 -2
- package/src/Exit.ts +11 -9
- package/src/Fiber.ts +11 -8
- package/src/FiberHandle.ts +414 -0
- package/src/FiberMap.ts +181 -73
- package/src/FiberRefs.ts +1 -1
- package/src/FiberSet.ts +96 -36
- package/src/GroupBy.ts +1 -1
- package/src/HashMap.ts +0 -1
- package/src/HashSet.ts +0 -1
- package/src/Iterable.ts +48 -10
- package/src/Layer.ts +6 -6
- package/src/List.ts +8 -7
- package/src/Logger.ts +2 -2
- package/src/Metric.ts +9 -2
- package/src/MetricKey.ts +9 -1
- package/src/MetricKeyType.ts +6 -1
- package/src/MutableHashMap.ts +1 -1
- package/src/Option.ts +9 -6
- package/src/Readable.ts +92 -0
- package/src/{ReadonlyRecord.ts → Record.ts} +28 -29
- package/src/Ref.ts +2 -2
- package/src/RegExp.ts +17 -0
- package/src/Request.ts +1 -1
- package/src/RequestResolver.ts +4 -4
- package/src/STM.ts +12 -9
- package/src/Schedule.ts +1 -1
- package/src/ScopedCache.ts +11 -9
- package/src/SortedSet.ts +1 -1
- package/src/Stream.ts +14 -11
- package/src/StreamHaltStrategy.ts +14 -2
- package/src/String.ts +45 -2
- package/src/Subscribable.ts +99 -0
- package/src/SubscriptionRef.ts +2 -2
- package/src/TestAnnotation.ts +2 -1
- package/src/TestAnnotations.ts +1 -1
- package/src/TestClock.ts +3 -3
- package/src/Tracer.ts +13 -5
- package/src/Trie.ts +1 -1
- package/src/Types.ts +0 -8
- package/src/index.ts +26 -4
- package/src/internal/{readonlyArray.ts → array.ts} +1 -1
- package/src/internal/cache.ts +40 -40
- package/src/internal/cause.ts +8 -8
- package/src/internal/channel/channelExecutor.ts +15 -15
- package/src/internal/channel/channelState.ts +1 -1
- package/src/internal/channel/singleProducerAsyncInput.ts +1 -1
- package/src/internal/channel.ts +11 -11
- package/src/internal/clock.ts +2 -2
- package/src/internal/configError.ts +22 -21
- package/src/internal/configProvider/pathPatch.ts +1 -1
- package/src/internal/configProvider.ts +51 -55
- package/src/internal/core-effect.ts +149 -134
- package/src/internal/core-stream.ts +5 -2
- package/src/internal/core.ts +64 -200
- package/src/internal/dataSource.ts +19 -20
- package/src/internal/differ/readonlyArrayPatch.ts +6 -6
- package/src/internal/effect/circular.ts +9 -3
- package/src/internal/errors.ts +7 -0
- package/src/internal/executionStrategy.ts +14 -12
- package/src/internal/fiber.ts +8 -5
- package/src/internal/fiberRefs/patch.ts +1 -1
- package/src/internal/fiberRefs.ts +1 -1
- package/src/internal/fiberRuntime.ts +157 -123
- package/src/internal/groupBy.ts +4 -4
- package/src/internal/hashMap.ts +1 -2
- package/src/internal/hashSet.ts +0 -1
- package/src/internal/layer/circular.ts +2 -2
- package/src/internal/layer.ts +9 -9
- package/src/internal/logger.ts +28 -8
- package/src/internal/managedRuntime.ts +1 -1
- package/src/internal/matcher.ts +5 -3
- package/src/internal/metric/boundaries.ts +5 -5
- package/src/internal/metric/hook.ts +21 -18
- package/src/internal/metric/key.ts +8 -5
- package/src/internal/metric/keyType.ts +5 -2
- package/src/internal/metric/state.ts +5 -5
- package/src/internal/metric.ts +8 -6
- package/src/internal/pool.ts +11 -11
- package/src/internal/pubsub.ts +6 -6
- package/src/internal/query.ts +4 -4
- package/src/internal/queue.ts +11 -11
- package/src/internal/rateLimiter.ts +1 -1
- package/src/internal/redBlackTree/iterator.ts +2 -2
- package/src/internal/ref.ts +8 -2
- package/src/internal/reloadable.ts +1 -1
- package/src/internal/runtime.ts +5 -5
- package/src/internal/schedule/intervals.ts +2 -1
- package/src/internal/schedule.ts +8 -9
- package/src/internal/scopedCache.ts +53 -53
- package/src/internal/scopedRef.ts +4 -4
- package/src/internal/secret.ts +2 -2
- package/src/internal/sink.ts +10 -10
- package/src/internal/stm/stm/tExit.ts +5 -2
- package/src/internal/stm/stm.ts +13 -9
- package/src/internal/stm/tMap.ts +3 -3
- package/src/internal/stm/tPriorityQueue.ts +11 -11
- package/src/internal/stm/tPubSub.ts +3 -3
- package/src/internal/stm/tQueue.ts +3 -3
- package/src/internal/stm/tSet.ts +1 -1
- package/src/internal/stream/haltStrategy.ts +23 -14
- package/src/internal/stream.ts +91 -88
- package/src/internal/subscriptionRef.ts +8 -0
- package/src/internal/supervisor.ts +1 -1
- package/src/internal/take.ts +1 -1
- package/src/internal/tracer.ts +2 -2
- package/src/internal/trie.ts +1 -2
- package/src/internal/version.ts +1 -1
- package/ReadonlyArray/package.json +0 -6
- package/ReadonlyRecord/package.json +0 -6
- package/dist/cjs/ReadonlyArray.js.map +0 -1
- package/dist/cjs/ReadonlyRecord.js.map +0 -1
- package/dist/cjs/internal/Iterable.js +0 -61
- package/dist/cjs/internal/Iterable.js.map +0 -1
- package/dist/cjs/internal/readonlyArray.js.map +0 -1
- package/dist/dts/ReadonlyArray.d.ts.map +0 -1
- package/dist/dts/ReadonlyRecord.d.ts.map +0 -1
- package/dist/dts/internal/Iterable.d.ts +0 -2
- package/dist/dts/internal/Iterable.d.ts.map +0 -1
- package/dist/dts/internal/readonlyArray.d.ts +0 -5
- package/dist/dts/internal/readonlyArray.d.ts.map +0 -1
- package/dist/esm/ReadonlyArray.js.map +0 -1
- package/dist/esm/ReadonlyRecord.js.map +0 -1
- package/dist/esm/internal/Iterable.js +0 -53
- package/dist/esm/internal/Iterable.js.map +0 -1
- package/dist/esm/internal/readonlyArray.js.map +0 -1
- package/src/internal/Iterable.ts +0 -54
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 2.0.0
|
|
3
|
+
*/
|
|
4
|
+
import * as Effect from "./Effect.js"
|
|
5
|
+
import { dual } from "./Function.js"
|
|
6
|
+
import { pipeArguments } from "./Pipeable.js"
|
|
7
|
+
import { hasProperty } from "./Predicate.js"
|
|
8
|
+
import * as Readable from "./Readable.js"
|
|
9
|
+
import * as Stream from "./Stream.js"
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* @since 2.0.0
|
|
13
|
+
* @category type ids
|
|
14
|
+
*/
|
|
15
|
+
export const TypeId = Symbol.for("effect/Subscribable")
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* @since 2.0.0
|
|
19
|
+
* @category type ids
|
|
20
|
+
*/
|
|
21
|
+
export type TypeId = typeof TypeId
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* @since 2.0.0
|
|
25
|
+
* @category models
|
|
26
|
+
*/
|
|
27
|
+
export interface Subscribable<A, E = never, R = never> extends Readable.Readable<A, E, R> {
|
|
28
|
+
readonly [TypeId]: TypeId
|
|
29
|
+
readonly changes: Stream.Stream<A, E, R>
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* @since 2.0.0
|
|
34
|
+
* @category refinements
|
|
35
|
+
*/
|
|
36
|
+
export const isSubscribable = (u: unknown): u is Subscribable<unknown, unknown, unknown> => hasProperty(u, TypeId)
|
|
37
|
+
|
|
38
|
+
const Proto: Omit<Subscribable<any>, "get" | "changes"> = {
|
|
39
|
+
[Readable.TypeId]: Readable.TypeId,
|
|
40
|
+
[TypeId]: TypeId,
|
|
41
|
+
pipe() {
|
|
42
|
+
return pipeArguments(this, arguments)
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
/**
|
|
47
|
+
* @since 2.0.0
|
|
48
|
+
* @category constructors
|
|
49
|
+
*/
|
|
50
|
+
export const make = <A, E, R>(options: {
|
|
51
|
+
readonly get: Effect.Effect<A, E, R>
|
|
52
|
+
readonly changes: Stream.Stream<A, E, R>
|
|
53
|
+
}): Subscribable<A, E, R> => Object.assign(Object.create(Proto), options)
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
* @since 2.0.0
|
|
57
|
+
* @category combinators
|
|
58
|
+
*/
|
|
59
|
+
export const map: {
|
|
60
|
+
<A, B>(f: (a: NoInfer<A>) => B): <E, R>(fa: Subscribable<A, E, R>) => Subscribable<B, E, R>
|
|
61
|
+
<A, E, R, B>(self: Subscribable<A, E, R>, f: (a: NoInfer<A>) => B): Subscribable<B, E, R>
|
|
62
|
+
} = dual(2, <A, E, R, B>(self: Subscribable<A, E, R>, f: (a: NoInfer<A>) => B): Subscribable<B, E, R> =>
|
|
63
|
+
make({
|
|
64
|
+
get: Effect.map(self.get, f),
|
|
65
|
+
changes: Stream.map(self.changes, f)
|
|
66
|
+
}))
|
|
67
|
+
|
|
68
|
+
/**
|
|
69
|
+
* @since 2.0.0
|
|
70
|
+
* @category combinators
|
|
71
|
+
*/
|
|
72
|
+
export const mapEffect: {
|
|
73
|
+
<A, B, E2, R2>(
|
|
74
|
+
f: (a: NoInfer<A>) => Effect.Effect<B, E2, R2>
|
|
75
|
+
): <E, R>(fa: Subscribable<A, E, R>) => Subscribable<B, E | E2, R | R2>
|
|
76
|
+
<A, E, R, B, E2, R2>(
|
|
77
|
+
self: Subscribable<A, E, R>,
|
|
78
|
+
f: (a: NoInfer<A>) => Effect.Effect<B, E2, R2>
|
|
79
|
+
): Subscribable<B, E | E2, R | R2>
|
|
80
|
+
} = dual(2, <A, E, R, B, E2, R2>(
|
|
81
|
+
self: Subscribable<A, E, R>,
|
|
82
|
+
f: (a: NoInfer<A>) => Effect.Effect<B, E2, R2>
|
|
83
|
+
): Subscribable<B, E | E2, R | R2> =>
|
|
84
|
+
make({
|
|
85
|
+
get: Effect.flatMap(self.get, f),
|
|
86
|
+
changes: Stream.mapEffect(self.changes, f)
|
|
87
|
+
}))
|
|
88
|
+
|
|
89
|
+
/**
|
|
90
|
+
* @since 2.0.0
|
|
91
|
+
* @category constructors
|
|
92
|
+
*/
|
|
93
|
+
export const unwrap = <A, E, R, E1, R1>(
|
|
94
|
+
effect: Effect.Effect<Subscribable<A, E, R>, E1, R1>
|
|
95
|
+
): Subscribable<A, E | E1, R | R1> =>
|
|
96
|
+
make({
|
|
97
|
+
get: Effect.flatMap(effect, (s) => s.get),
|
|
98
|
+
changes: Stream.unwrap(Effect.map(effect, (s) => s.changes))
|
|
99
|
+
})
|
package/src/SubscriptionRef.ts
CHANGED
|
@@ -4,10 +4,10 @@
|
|
|
4
4
|
import type * as Effect from "./Effect.js"
|
|
5
5
|
import * as internal from "./internal/subscriptionRef.js"
|
|
6
6
|
import type * as Option from "./Option.js"
|
|
7
|
-
import type { Pipeable } from "./Pipeable.js"
|
|
8
7
|
import type * as PubSub from "./PubSub.js"
|
|
9
8
|
import * as Ref from "./Ref.js"
|
|
10
9
|
import type * as Stream from "./Stream.js"
|
|
10
|
+
import type { Subscribable } from "./Subscribable.js"
|
|
11
11
|
import * as Synchronized from "./SynchronizedRef.js"
|
|
12
12
|
import type * as Types from "./Types.js"
|
|
13
13
|
|
|
@@ -31,7 +31,7 @@ export type SubscriptionRefTypeId = typeof SubscriptionRefTypeId
|
|
|
31
31
|
* @category models
|
|
32
32
|
*/
|
|
33
33
|
export interface SubscriptionRef<in out A>
|
|
34
|
-
extends SubscriptionRef.Variance<A>, Synchronized.SynchronizedRef<A>,
|
|
34
|
+
extends SubscriptionRef.Variance<A>, Synchronized.SynchronizedRef<A>, Subscribable<A>
|
|
35
35
|
{
|
|
36
36
|
/** @internal */
|
|
37
37
|
readonly ref: Ref.Ref<A>
|
package/src/TestAnnotation.ts
CHANGED
|
@@ -8,6 +8,7 @@ import type * as Fiber from "./Fiber.js"
|
|
|
8
8
|
import { pipe } from "./Function.js"
|
|
9
9
|
import * as Hash from "./Hash.js"
|
|
10
10
|
import * as HashSet from "./HashSet.js"
|
|
11
|
+
import { getBugErrorMessage } from "./internal/errors.js"
|
|
11
12
|
import type * as MutableRef from "./MutableRef.js"
|
|
12
13
|
import { hasProperty } from "./Predicate.js"
|
|
13
14
|
import type * as SortedSet from "./SortedSet.js"
|
|
@@ -96,7 +97,7 @@ export const compose = <A>(
|
|
|
96
97
|
if (Either.isLeft(left) && Either.isRight(right)) {
|
|
97
98
|
return right
|
|
98
99
|
}
|
|
99
|
-
throw new Error("
|
|
100
|
+
throw new Error(getBugErrorMessage("TestAnnotation.compose"))
|
|
100
101
|
}
|
|
101
102
|
|
|
102
103
|
/**
|
package/src/TestAnnotations.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @since 2.0.0
|
|
3
3
|
*/
|
|
4
|
+
import * as RA from "./Array.js"
|
|
4
5
|
import * as Context from "./Context.js"
|
|
5
6
|
import type * as Effect from "./Effect.js"
|
|
6
7
|
import * as Equal from "./Equal.js"
|
|
@@ -11,7 +12,6 @@ import * as core from "./internal/core.js"
|
|
|
11
12
|
import * as fiber from "./internal/fiber.js"
|
|
12
13
|
import * as MutableRef from "./MutableRef.js"
|
|
13
14
|
import { hasProperty } from "./Predicate.js"
|
|
14
|
-
import * as RA from "./ReadonlyArray.js"
|
|
15
15
|
import * as Ref from "./Ref.js"
|
|
16
16
|
import * as SortedSet from "./SortedSet.js"
|
|
17
17
|
import * as TestAnnotation from "./TestAnnotation.js"
|
package/src/TestClock.ts
CHANGED
|
@@ -209,7 +209,7 @@ export class TestClockImpl implements TestClock {
|
|
|
209
209
|
core.flatMap((shouldAwait) =>
|
|
210
210
|
shouldAwait ?
|
|
211
211
|
pipe(this.warningStart(), core.zipRight(core.deferredAwait(deferred))) :
|
|
212
|
-
pipe(core.deferredSucceed(deferred, void 0), core.
|
|
212
|
+
pipe(core.deferredSucceed(deferred, void 0), core.asVoid)
|
|
213
213
|
)
|
|
214
214
|
))
|
|
215
215
|
}
|
|
@@ -250,7 +250,7 @@ export class TestClockImpl implements TestClock {
|
|
|
250
250
|
}
|
|
251
251
|
/**
|
|
252
252
|
* Captures a "snapshot" of the identifier and status of all fibers in this
|
|
253
|
-
* test other than the current fiber. Fails with the `
|
|
253
|
+
* test other than the current fiber. Fails with the `void` value if any of
|
|
254
254
|
* these fibers are not done or suspended. Note that because we cannot
|
|
255
255
|
* synchronize on the status of multiple fibers at the same time this
|
|
256
256
|
* snapshot may not be fully consistent.
|
|
@@ -409,7 +409,7 @@ export class TestClockImpl implements TestClock {
|
|
|
409
409
|
core.flatMap((option) => {
|
|
410
410
|
switch (option._tag) {
|
|
411
411
|
case "None": {
|
|
412
|
-
return core.
|
|
412
|
+
return core.void
|
|
413
413
|
}
|
|
414
414
|
case "Some": {
|
|
415
415
|
const [end, deferred] = option.value
|
package/src/Tracer.ts
CHANGED
|
@@ -26,7 +26,7 @@ export interface Tracer {
|
|
|
26
26
|
readonly [TracerTypeId]: TracerTypeId
|
|
27
27
|
span(
|
|
28
28
|
name: string,
|
|
29
|
-
parent: Option.Option<
|
|
29
|
+
parent: Option.Option<AnySpan>,
|
|
30
30
|
context: Context.Context<never>,
|
|
31
31
|
links: ReadonlyArray<SpanLink>,
|
|
32
32
|
startTime: bigint
|
|
@@ -52,13 +52,21 @@ export type SpanStatus = {
|
|
|
52
52
|
* @since 2.0.0
|
|
53
53
|
* @category models
|
|
54
54
|
*/
|
|
55
|
-
export type
|
|
55
|
+
export type AnySpan = Span | ExternalSpan
|
|
56
56
|
|
|
57
57
|
/**
|
|
58
58
|
* @since 2.0.0
|
|
59
59
|
* @category tags
|
|
60
60
|
*/
|
|
61
|
-
export
|
|
61
|
+
export interface ParentSpan {
|
|
62
|
+
readonly _: unique symbol
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
/**
|
|
66
|
+
* @since 2.0.0
|
|
67
|
+
* @category tags
|
|
68
|
+
*/
|
|
69
|
+
export const ParentSpan: Context.Tag<ParentSpan, AnySpan> = internal.spanTag
|
|
62
70
|
|
|
63
71
|
/**
|
|
64
72
|
* @since 2.0.0
|
|
@@ -81,7 +89,7 @@ export interface Span {
|
|
|
81
89
|
readonly name: string
|
|
82
90
|
readonly spanId: string
|
|
83
91
|
readonly traceId: string
|
|
84
|
-
readonly parent: Option.Option<
|
|
92
|
+
readonly parent: Option.Option<AnySpan>
|
|
85
93
|
readonly context: Context.Context<never>
|
|
86
94
|
readonly status: SpanStatus
|
|
87
95
|
readonly attributes: ReadonlyMap<string, unknown>
|
|
@@ -98,7 +106,7 @@ export interface Span {
|
|
|
98
106
|
*/
|
|
99
107
|
export interface SpanLink {
|
|
100
108
|
readonly _tag: "SpanLink"
|
|
101
|
-
readonly span:
|
|
109
|
+
readonly span: AnySpan
|
|
102
110
|
readonly attributes: Readonly<Record<string, unknown>>
|
|
103
111
|
}
|
|
104
112
|
|
package/src/Trie.ts
CHANGED
|
@@ -20,7 +20,7 @@ import type { Inspectable } from "./Inspectable.js"
|
|
|
20
20
|
import * as TR from "./internal/trie.js"
|
|
21
21
|
import type { Option } from "./Option.js"
|
|
22
22
|
import type { Pipeable } from "./Pipeable.js"
|
|
23
|
-
import type { Covariant
|
|
23
|
+
import type { Covariant } from "./Types.js"
|
|
24
24
|
|
|
25
25
|
const TypeId: unique symbol = TR.TrieTypeId as TypeId
|
|
26
26
|
|
package/src/Types.ts
CHANGED
|
@@ -170,14 +170,6 @@ export type Mutable<T> = {
|
|
|
170
170
|
-readonly [P in keyof T]: T[P]
|
|
171
171
|
}
|
|
172
172
|
|
|
173
|
-
/**
|
|
174
|
-
* Avoid inference on a specific parameter
|
|
175
|
-
*
|
|
176
|
-
* @since 2.0.0
|
|
177
|
-
* @category models
|
|
178
|
-
*/
|
|
179
|
-
export type NoInfer<A> = [A][A extends any ? 0 : never]
|
|
180
|
-
|
|
181
173
|
/**
|
|
182
174
|
* Invariant helper.
|
|
183
175
|
*
|
package/src/index.ts
CHANGED
|
@@ -29,6 +29,13 @@ export {
|
|
|
29
29
|
unsafeCoerce
|
|
30
30
|
} from "./Function.js"
|
|
31
31
|
|
|
32
|
+
/**
|
|
33
|
+
* This module provides utility functions for working with arrays in TypeScript.
|
|
34
|
+
*
|
|
35
|
+
* @since 2.0.0
|
|
36
|
+
*/
|
|
37
|
+
export * as Array from "./Array.js"
|
|
38
|
+
|
|
32
39
|
/**
|
|
33
40
|
* This module provides utility functions and type class instances for working with the `BigDecimal` type in TypeScript.
|
|
34
41
|
* It includes functions for basic arithmetic operations, as well as type class instances for `Equivalence` and `Order`.
|
|
@@ -255,6 +262,11 @@ export * as Exit from "./Exit.js"
|
|
|
255
262
|
*/
|
|
256
263
|
export * as Fiber from "./Fiber.js"
|
|
257
264
|
|
|
265
|
+
/**
|
|
266
|
+
* @since 2.0.0
|
|
267
|
+
*/
|
|
268
|
+
export * as FiberHandle from "./FiberHandle.js"
|
|
269
|
+
|
|
258
270
|
/**
|
|
259
271
|
* @since 2.0.0
|
|
260
272
|
*/
|
|
@@ -571,18 +583,16 @@ export * as Random from "./Random.js"
|
|
|
571
583
|
export * as RateLimiter from "./RateLimiter.js"
|
|
572
584
|
|
|
573
585
|
/**
|
|
574
|
-
* This module provides utility functions for working with arrays in TypeScript.
|
|
575
|
-
*
|
|
576
586
|
* @since 2.0.0
|
|
577
587
|
*/
|
|
578
|
-
export * as
|
|
588
|
+
export * as Readable from "./Readable.js"
|
|
579
589
|
|
|
580
590
|
/**
|
|
581
591
|
* This module provides utility functions for working with records in TypeScript.
|
|
582
592
|
*
|
|
583
593
|
* @since 2.0.0
|
|
584
594
|
*/
|
|
585
|
-
export * as
|
|
595
|
+
export * as Record from "./Record.js"
|
|
586
596
|
|
|
587
597
|
/**
|
|
588
598
|
* @since 2.0.0
|
|
@@ -594,6 +604,13 @@ export * as RedBlackTree from "./RedBlackTree.js"
|
|
|
594
604
|
*/
|
|
595
605
|
export * as Ref from "./Ref.js"
|
|
596
606
|
|
|
607
|
+
/**
|
|
608
|
+
* This module provides utility functions for working with RegExp in TypeScript.
|
|
609
|
+
*
|
|
610
|
+
* @since 2.0.0
|
|
611
|
+
*/
|
|
612
|
+
export * as RegExp from "./RegExp.js"
|
|
613
|
+
|
|
597
614
|
/**
|
|
598
615
|
* @since 2.0.0
|
|
599
616
|
*/
|
|
@@ -740,6 +757,11 @@ export * as String from "./String.js"
|
|
|
740
757
|
*/
|
|
741
758
|
export * as Struct from "./Struct.js"
|
|
742
759
|
|
|
760
|
+
/**
|
|
761
|
+
* @since 2.0.0
|
|
762
|
+
*/
|
|
763
|
+
export * as Subscribable from "./Subscribable.js"
|
|
764
|
+
|
|
743
765
|
/**
|
|
744
766
|
* @since 2.0.0
|
|
745
767
|
*/
|
package/src/internal/cache.ts
CHANGED
|
@@ -29,13 +29,13 @@ import * as fiberRuntime from "./fiberRuntime.js"
|
|
|
29
29
|
*
|
|
30
30
|
* @internal
|
|
31
31
|
*/
|
|
32
|
-
export type MapValue<Key,
|
|
33
|
-
| Complete<Key,
|
|
34
|
-
| Pending<Key,
|
|
35
|
-
| Refreshing<Key,
|
|
32
|
+
export type MapValue<Key, Value, Error> =
|
|
33
|
+
| Complete<Key, Value, Error>
|
|
34
|
+
| Pending<Key, Value, Error>
|
|
35
|
+
| Refreshing<Key, Value, Error>
|
|
36
36
|
|
|
37
37
|
/** @internal */
|
|
38
|
-
export interface Complete<out Key, out
|
|
38
|
+
export interface Complete<out Key, out Value, out Error> {
|
|
39
39
|
readonly _tag: "Complete"
|
|
40
40
|
readonly key: MapKey<Key>
|
|
41
41
|
readonly exit: Exit.Exit<Value, Error>
|
|
@@ -44,26 +44,26 @@ export interface Complete<out Key, out Error, out Value> {
|
|
|
44
44
|
}
|
|
45
45
|
|
|
46
46
|
/** @internal */
|
|
47
|
-
export interface Pending<out Key, in out
|
|
47
|
+
export interface Pending<out Key, in out Value, in out Error> {
|
|
48
48
|
readonly _tag: "Pending"
|
|
49
49
|
readonly key: MapKey<Key>
|
|
50
50
|
readonly deferred: Deferred.Deferred<Value, Error>
|
|
51
51
|
}
|
|
52
52
|
|
|
53
53
|
/** @internal */
|
|
54
|
-
export interface Refreshing<out Key, in out
|
|
54
|
+
export interface Refreshing<out Key, in out Value, in out Error> {
|
|
55
55
|
readonly _tag: "Refreshing"
|
|
56
56
|
readonly deferred: Deferred.Deferred<Value, Error>
|
|
57
|
-
readonly complete: Complete<Key,
|
|
57
|
+
readonly complete: Complete<Key, Value, Error>
|
|
58
58
|
}
|
|
59
59
|
|
|
60
60
|
/** @internal */
|
|
61
|
-
export const complete = <Key,
|
|
61
|
+
export const complete = <Key, Value, Error>(
|
|
62
62
|
key: MapKey<Key>,
|
|
63
63
|
exit: Exit.Exit<Value, Error>,
|
|
64
64
|
entryStats: Cache.EntryStats,
|
|
65
65
|
timeToLiveMillis: number
|
|
66
|
-
): MapValue<Key,
|
|
66
|
+
): MapValue<Key, Value, Error> =>
|
|
67
67
|
Data.struct({
|
|
68
68
|
_tag: "Complete" as const,
|
|
69
69
|
key,
|
|
@@ -73,10 +73,10 @@ export const complete = <Key, Error, Value>(
|
|
|
73
73
|
})
|
|
74
74
|
|
|
75
75
|
/** @internal */
|
|
76
|
-
export const pending = <Key,
|
|
76
|
+
export const pending = <Key, Value, Error>(
|
|
77
77
|
key: MapKey<Key>,
|
|
78
78
|
deferred: Deferred.Deferred<Value, Error>
|
|
79
|
-
): MapValue<Key,
|
|
79
|
+
): MapValue<Key, Value, Error> =>
|
|
80
80
|
Data.struct({
|
|
81
81
|
_tag: "Pending" as const,
|
|
82
82
|
key,
|
|
@@ -84,10 +84,10 @@ export const pending = <Key, Error, Value>(
|
|
|
84
84
|
})
|
|
85
85
|
|
|
86
86
|
/** @internal */
|
|
87
|
-
export const refreshing = <Key,
|
|
87
|
+
export const refreshing = <Key, Value, Error>(
|
|
88
88
|
deferred: Deferred.Deferred<Value, Error>,
|
|
89
|
-
complete: Complete<Key,
|
|
90
|
-
): MapValue<Key,
|
|
89
|
+
complete: Complete<Key, Value, Error>
|
|
90
|
+
): MapValue<Key, Value, Error> =>
|
|
91
91
|
Data.struct({
|
|
92
92
|
_tag: "Refreshing" as const,
|
|
93
93
|
deferred,
|
|
@@ -216,8 +216,8 @@ export const makeKeySet = <K>(): KeySet<K> => new KeySetImpl<K>()
|
|
|
216
216
|
*
|
|
217
217
|
* @internal
|
|
218
218
|
*/
|
|
219
|
-
export interface CacheState<in out Key, in out
|
|
220
|
-
map: MutableHashMap.MutableHashMap<Key, MapValue<Key,
|
|
219
|
+
export interface CacheState<in out Key, in out Value, in out Error> {
|
|
220
|
+
map: MutableHashMap.MutableHashMap<Key, MapValue<Key, Value, Error>> // mutable by design
|
|
221
221
|
keys: KeySet<Key> // mutable by design
|
|
222
222
|
accesses: MutableQueue.MutableQueue<MapKey<Key>> // mutable by design
|
|
223
223
|
updating: MutableRef.MutableRef<boolean> // mutable by design
|
|
@@ -230,14 +230,14 @@ export interface CacheState<in out Key, in out Error, in out Value> {
|
|
|
230
230
|
*
|
|
231
231
|
* @internal
|
|
232
232
|
*/
|
|
233
|
-
export const makeCacheState = <Key,
|
|
234
|
-
map: MutableHashMap.MutableHashMap<Key, MapValue<Key,
|
|
233
|
+
export const makeCacheState = <Key, Value, Error>(
|
|
234
|
+
map: MutableHashMap.MutableHashMap<Key, MapValue<Key, Value, Error>>,
|
|
235
235
|
keys: KeySet<Key>,
|
|
236
236
|
accesses: MutableQueue.MutableQueue<MapKey<Key>>,
|
|
237
237
|
updating: MutableRef.MutableRef<boolean>,
|
|
238
238
|
hits: number,
|
|
239
239
|
misses: number
|
|
240
|
-
): CacheState<Key,
|
|
240
|
+
): CacheState<Key, Value, Error> => ({
|
|
241
241
|
map,
|
|
242
242
|
keys,
|
|
243
243
|
accesses,
|
|
@@ -251,7 +251,7 @@ export const makeCacheState = <Key, Error, Value>(
|
|
|
251
251
|
*
|
|
252
252
|
* @internal
|
|
253
253
|
*/
|
|
254
|
-
export const initialCacheState = <Key,
|
|
254
|
+
export const initialCacheState = <Key, Value, Error>(): CacheState<Key, Value, Error> =>
|
|
255
255
|
makeCacheState(
|
|
256
256
|
MutableHashMap.empty(),
|
|
257
257
|
makeKeySet(),
|
|
@@ -292,14 +292,14 @@ export const makeEntryStats = (loadedMillis: number): Cache.EntryStats => ({
|
|
|
292
292
|
loadedMillis
|
|
293
293
|
})
|
|
294
294
|
|
|
295
|
-
class CacheImpl<in out Key, in out
|
|
295
|
+
class CacheImpl<in out Key, in out Value, in out Error> implements Cache.Cache<Key, Value, Error> {
|
|
296
296
|
readonly [CacheTypeId] = cacheVariance
|
|
297
|
-
readonly cacheState: CacheState<Key,
|
|
297
|
+
readonly cacheState: CacheState<Key, Value, Error>
|
|
298
298
|
constructor(
|
|
299
299
|
readonly capacity: number,
|
|
300
300
|
readonly context: Context.Context<any>,
|
|
301
301
|
readonly fiberId: FiberId.FiberId,
|
|
302
|
-
readonly lookup: Cache.Lookup<Key,
|
|
302
|
+
readonly lookup: Cache.Lookup<Key, Value, Error, any>,
|
|
303
303
|
readonly timeToLive: (exit: Exit.Exit<Value, Error>) => Duration.DurationInput
|
|
304
304
|
) {
|
|
305
305
|
this.cacheState = initialCacheState()
|
|
@@ -443,7 +443,7 @@ class CacheImpl<in out Key, in out Error, in out Value> implements Cache.Cache<K
|
|
|
443
443
|
}
|
|
444
444
|
}
|
|
445
445
|
if (value === undefined) {
|
|
446
|
-
return core.
|
|
446
|
+
return core.asVoid(this.lookupValueOf(key, deferred))
|
|
447
447
|
} else {
|
|
448
448
|
switch (value._tag) {
|
|
449
449
|
case "Complete": {
|
|
@@ -452,7 +452,7 @@ class CacheImpl<in out Key, in out Error, in out Value> implements Cache.Cache<K
|
|
|
452
452
|
if (Equal.equals(found, value)) {
|
|
453
453
|
MutableHashMap.remove(this.cacheState.map, k)
|
|
454
454
|
}
|
|
455
|
-
return core.
|
|
455
|
+
return core.asVoid(this.get(key))
|
|
456
456
|
}
|
|
457
457
|
// Only trigger the lookup if we're still the current value, `completedResult`
|
|
458
458
|
return pipe(
|
|
@@ -460,13 +460,13 @@ class CacheImpl<in out Key, in out Error, in out Value> implements Cache.Cache<K
|
|
|
460
460
|
effect.when(() => {
|
|
461
461
|
const current = Option.getOrUndefined(MutableHashMap.get(this.cacheState.map, k))
|
|
462
462
|
if (Equal.equals(current, value)) {
|
|
463
|
-
const mapValue = refreshing(deferred, value as Complete<Key,
|
|
463
|
+
const mapValue = refreshing(deferred, value as Complete<Key, Value, Error>)
|
|
464
464
|
MutableHashMap.set(this.cacheState.map, k, mapValue)
|
|
465
465
|
return true
|
|
466
466
|
}
|
|
467
467
|
return false
|
|
468
468
|
}),
|
|
469
|
-
core.
|
|
469
|
+
core.asVoid
|
|
470
470
|
)
|
|
471
471
|
}
|
|
472
472
|
case "Pending": {
|
|
@@ -496,7 +496,7 @@ class CacheImpl<in out Key, in out Error, in out Value> implements Cache.Cache<K
|
|
|
496
496
|
MutableHashMap.set(
|
|
497
497
|
this.cacheState.map,
|
|
498
498
|
k,
|
|
499
|
-
mapValue as Complete<Key,
|
|
499
|
+
mapValue as Complete<Key, Value, Error>
|
|
500
500
|
)
|
|
501
501
|
})
|
|
502
502
|
)
|
|
@@ -545,7 +545,7 @@ class CacheImpl<in out Key, in out Error, in out Value> implements Cache.Cache<K
|
|
|
545
545
|
}
|
|
546
546
|
|
|
547
547
|
resolveMapValue(
|
|
548
|
-
value: MapValue<Key,
|
|
548
|
+
value: MapValue<Key, Value, Error>,
|
|
549
549
|
ignorePending = false
|
|
550
550
|
): Effect.Effect<Option.Option<Value>, Error> {
|
|
551
551
|
return effect.clockWith((clock) => {
|
|
@@ -665,13 +665,13 @@ class CacheImpl<in out Key, in out Error, in out Value> implements Cache.Cache<K
|
|
|
665
665
|
}
|
|
666
666
|
|
|
667
667
|
/** @internal */
|
|
668
|
-
export const make = <Key,
|
|
668
|
+
export const make = <Key, Value, Error = never, Environment = never>(
|
|
669
669
|
options: {
|
|
670
670
|
readonly capacity: number
|
|
671
671
|
readonly timeToLive: Duration.DurationInput
|
|
672
|
-
readonly lookup: Cache.Lookup<Key,
|
|
672
|
+
readonly lookup: Cache.Lookup<Key, Value, Error, Environment>
|
|
673
673
|
}
|
|
674
|
-
): Effect.Effect<Cache.Cache<Key,
|
|
674
|
+
): Effect.Effect<Cache.Cache<Key, Value, Error>, never, Environment> => {
|
|
675
675
|
const timeToLive = Duration.decode(options.timeToLive)
|
|
676
676
|
return makeWith({
|
|
677
677
|
capacity: options.capacity,
|
|
@@ -681,13 +681,13 @@ export const make = <Key, Environment, Error, Value>(
|
|
|
681
681
|
}
|
|
682
682
|
|
|
683
683
|
/** @internal */
|
|
684
|
-
export const makeWith = <Key,
|
|
684
|
+
export const makeWith = <Key, Value, Error = never, Environment = never>(
|
|
685
685
|
options: {
|
|
686
686
|
readonly capacity: number
|
|
687
|
-
readonly lookup: Cache.Lookup<Key,
|
|
687
|
+
readonly lookup: Cache.Lookup<Key, Value, Error, Environment>
|
|
688
688
|
readonly timeToLive: (exit: Exit.Exit<Value, Error>) => Duration.DurationInput
|
|
689
689
|
}
|
|
690
|
-
): Effect.Effect<Cache.Cache<Key,
|
|
690
|
+
): Effect.Effect<Cache.Cache<Key, Value, Error>, never, Environment> =>
|
|
691
691
|
core.map(
|
|
692
692
|
fiberRuntime.all([core.context<Environment>(), core.fiberId]),
|
|
693
693
|
([context, fiberId]) =>
|
|
@@ -701,12 +701,12 @@ export const makeWith = <Key, Environment, Error, Value>(
|
|
|
701
701
|
)
|
|
702
702
|
|
|
703
703
|
/** @internal */
|
|
704
|
-
export const unsafeMakeWith = <Key,
|
|
704
|
+
export const unsafeMakeWith = <Key, Value, Error = never>(
|
|
705
705
|
capacity: number,
|
|
706
|
-
lookup: Cache.Lookup<Key,
|
|
706
|
+
lookup: Cache.Lookup<Key, Value, Error>,
|
|
707
707
|
timeToLive: (exit: Exit.Exit<Value, Error>) => Duration.DurationInput
|
|
708
|
-
): Cache.Cache<Key,
|
|
709
|
-
new CacheImpl<Key,
|
|
708
|
+
): Cache.Cache<Key, Value, Error> =>
|
|
709
|
+
new CacheImpl<Key, Value, Error>(
|
|
710
710
|
capacity,
|
|
711
711
|
Context.empty() as Context.Context<any>,
|
|
712
712
|
none,
|
package/src/internal/cause.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import * as Array from "../Array.js"
|
|
1
2
|
import type * as Cause from "../Cause.js"
|
|
2
3
|
import * as Chunk from "../Chunk.js"
|
|
3
4
|
import * as Either from "../Either.js"
|
|
@@ -11,9 +12,8 @@ import * as Option from "../Option.js"
|
|
|
11
12
|
import { pipeArguments } from "../Pipeable.js"
|
|
12
13
|
import { hasProperty, isFunction } from "../Predicate.js"
|
|
13
14
|
import type { Predicate, Refinement } from "../Predicate.js"
|
|
14
|
-
import
|
|
15
|
-
import
|
|
16
|
-
import type { NoInfer } from "../Types.js"
|
|
15
|
+
import type { AnySpan, Span } from "../Tracer.js"
|
|
16
|
+
import { getBugErrorMessage } from "./errors.js"
|
|
17
17
|
import * as OpCodes from "./opCodes/cause.js"
|
|
18
18
|
|
|
19
19
|
// -----------------------------------------------------------------------------
|
|
@@ -584,7 +584,7 @@ const flattenCauseLoop = (
|
|
|
584
584
|
while (1) {
|
|
585
585
|
const [parallel, sequential] = pipe(
|
|
586
586
|
causes,
|
|
587
|
-
|
|
587
|
+
Array.reduce(
|
|
588
588
|
[HashSet.empty<unknown>(), Chunk.empty<Cause.Cause<unknown>>()] as const,
|
|
589
589
|
([parallel, sequential], cause) => {
|
|
590
590
|
const [par, seq] = evaluateCause(cause)
|
|
@@ -604,7 +604,7 @@ const flattenCauseLoop = (
|
|
|
604
604
|
causes = sequential
|
|
605
605
|
flattened = updated
|
|
606
606
|
}
|
|
607
|
-
throw new Error("
|
|
607
|
+
throw new Error(getBugErrorMessage("Cause.flattenCauseLoop"))
|
|
608
608
|
}
|
|
609
609
|
|
|
610
610
|
// -----------------------------------------------------------------------------
|
|
@@ -740,7 +740,7 @@ const evaluateCause = (
|
|
|
740
740
|
}
|
|
741
741
|
}
|
|
742
742
|
}
|
|
743
|
-
throw new Error("
|
|
743
|
+
throw new Error(getBugErrorMessage("Cause.evaluateCauseLoop"))
|
|
744
744
|
}
|
|
745
745
|
|
|
746
746
|
// -----------------------------------------------------------------------------
|
|
@@ -990,7 +990,7 @@ export const pretty = <E>(cause: Cause.Cause<E>): string => {
|
|
|
990
990
|
message += `\r\n${filterStack(e.stack)}`
|
|
991
991
|
}
|
|
992
992
|
if (e.span) {
|
|
993
|
-
let current: Span |
|
|
993
|
+
let current: Span | AnySpan | undefined = e.span
|
|
994
994
|
let i = 0
|
|
995
995
|
while (current && current._tag === "Span" && i < 10) {
|
|
996
996
|
message += `\r\n at ${current.name}`
|
|
@@ -1046,7 +1046,7 @@ export const prettyErrorMessage = (u: unknown): string => {
|
|
|
1046
1046
|
hasProperty(u, "toString") &&
|
|
1047
1047
|
isFunction(u["toString"]) &&
|
|
1048
1048
|
u["toString"] !== Object.prototype.toString &&
|
|
1049
|
-
u["toString"] !== Array.prototype.toString
|
|
1049
|
+
u["toString"] !== globalThis.Array.prototype.toString
|
|
1050
1050
|
) {
|
|
1051
1051
|
return u["toString"]()
|
|
1052
1052
|
}
|