effect 2.4.19 → 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/Record/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/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 +3 -3
- 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/{ReadonlyRecord.js → Record.js} +29 -29
- package/dist/cjs/Record.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/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 +8 -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 +3 -3
- 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 +46 -47
- package/dist/cjs/internal/configProvider.js.map +1 -1
- package/dist/cjs/internal/core-effect.js +42 -28
- 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 +27 -31
- 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 +1 -1
- package/dist/cjs/internal/effect/circular.js.map +1 -1
- 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 +33 -33
- 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.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/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/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.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/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.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.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/{ReadonlyRecord.d.ts → Record.d.ts} +29 -30
- package/dist/dts/Record.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.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 +11 -7
- 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/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/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 +3 -3
- 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/{ReadonlyRecord.js → Record.js} +29 -29
- package/dist/esm/Record.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/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 +11 -7
- 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 +3 -3
- 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 +46 -47
- package/dist/esm/internal/configProvider.js.map +1 -1
- package/dist/esm/internal/core-effect.js +39 -26
- 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 +24 -26
- 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 +1 -1
- package/dist/esm/internal/effect/circular.js.map +1 -1
- 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 +33 -33
- 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.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/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/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.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/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.map +1 -1
- package/dist/esm/internal/version.js +1 -1
- package/dist/esm/internal/version.js.map +1 -1
- package/package.json +23 -15
- 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/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 +3 -4
- 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/{ReadonlyRecord.ts → Record.ts} +28 -29
- 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/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 +13 -8
- package/src/internal/{readonlyArray.ts → array.ts} +1 -1
- package/src/internal/cache.ts +40 -40
- package/src/internal/cause.ts +5 -6
- 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 +49 -52
- package/src/internal/core-effect.ts +73 -70
- package/src/internal/core-stream.ts +5 -2
- package/src/internal/core.ts +51 -50
- package/src/internal/dataSource.ts +19 -20
- package/src/internal/differ/readonlyArrayPatch.ts +6 -6
- package/src/internal/effect/circular.ts +2 -2
- 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 +45 -45
- package/src/internal/groupBy.ts +4 -4
- package/src/internal/hashMap.ts +0 -1
- 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/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/reloadable.ts +1 -1
- package/src/internal/runtime.ts +5 -5
- 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/supervisor.ts +1 -1
- package/src/internal/take.ts +1 -1
- package/src/internal/tracer.ts +2 -2
- package/src/internal/trie.ts +0 -1
- 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
package/src/ScopedCache.ts
CHANGED
|
@@ -27,7 +27,9 @@ export type ScopedCacheTypeId = typeof ScopedCacheTypeId
|
|
|
27
27
|
* @since 2.0.0
|
|
28
28
|
* @category models
|
|
29
29
|
*/
|
|
30
|
-
export interface ScopedCache<in Key, out
|
|
30
|
+
export interface ScopedCache<in Key, out Value, out Error = never>
|
|
31
|
+
extends ScopedCache.Variance<Key, Value, Error>, Pipeable
|
|
32
|
+
{
|
|
31
33
|
/**
|
|
32
34
|
* Retrieves the value associated with the specified key if it exists.
|
|
33
35
|
* Otherwise returns `Option.none`.
|
|
@@ -98,7 +100,7 @@ export declare namespace ScopedCache {
|
|
|
98
100
|
* @since 2.0.0
|
|
99
101
|
* @category models
|
|
100
102
|
*/
|
|
101
|
-
export interface Variance<in Key, out
|
|
103
|
+
export interface Variance<in Key, out Value, out Error> {
|
|
102
104
|
readonly [ScopedCacheTypeId]: {
|
|
103
105
|
_Key: Types.Contravariant<Key>
|
|
104
106
|
_Error: Types.Covariant<Error>
|
|
@@ -114,13 +116,13 @@ export declare namespace ScopedCache {
|
|
|
114
116
|
* @since 2.0.0
|
|
115
117
|
* @category constructors
|
|
116
118
|
*/
|
|
117
|
-
export const make: <Key,
|
|
119
|
+
export const make: <Key, Value, Error = never, Environment = never>(
|
|
118
120
|
options: {
|
|
119
|
-
readonly lookup: Lookup<Key,
|
|
121
|
+
readonly lookup: Lookup<Key, Value, Error, Environment>
|
|
120
122
|
readonly capacity: number
|
|
121
123
|
readonly timeToLive: Duration.DurationInput
|
|
122
124
|
}
|
|
123
|
-
) => Effect.Effect<ScopedCache<Key,
|
|
125
|
+
) => Effect.Effect<ScopedCache<Key, Value, Error>, never, Scope.Scope | Environment> = internal.make
|
|
124
126
|
|
|
125
127
|
/**
|
|
126
128
|
* Constructs a new cache with the specified capacity, time to live, and
|
|
@@ -130,13 +132,13 @@ export const make: <Key, Environment, Error, Value>(
|
|
|
130
132
|
* @since 2.0.0
|
|
131
133
|
* @category constructors
|
|
132
134
|
*/
|
|
133
|
-
export const makeWith: <Key,
|
|
135
|
+
export const makeWith: <Key, Value, Error = never, Environment = never>(
|
|
134
136
|
options: {
|
|
135
137
|
readonly capacity: number
|
|
136
|
-
readonly lookup: Lookup<Key,
|
|
138
|
+
readonly lookup: Lookup<Key, Value, Error, Environment>
|
|
137
139
|
readonly timeToLive: (exit: Exit.Exit<Value, Error>) => Duration.DurationInput
|
|
138
140
|
}
|
|
139
|
-
) => Effect.Effect<ScopedCache<Key,
|
|
141
|
+
) => Effect.Effect<ScopedCache<Key, Value, Error>, never, Scope.Scope | Environment> = internal.makeWith
|
|
140
142
|
|
|
141
143
|
/**
|
|
142
144
|
* Similar to `Cache.Lookup`, but executes the lookup function within a `Scope`.
|
|
@@ -144,6 +146,6 @@ export const makeWith: <Key, Environment, Error, Value>(
|
|
|
144
146
|
* @since 2.0.0
|
|
145
147
|
* @category models
|
|
146
148
|
*/
|
|
147
|
-
export type Lookup<Key,
|
|
149
|
+
export type Lookup<Key, Value, Error = never, Environment = never> = (
|
|
148
150
|
key: Key
|
|
149
151
|
) => Effect.Effect<Value, Error, Environment | Scope.Scope>
|
package/src/SortedSet.ts
CHANGED
|
@@ -14,7 +14,7 @@ import { pipeArguments } from "./Pipeable.js"
|
|
|
14
14
|
import type { Predicate } from "./Predicate.js"
|
|
15
15
|
import { hasProperty } from "./Predicate.js"
|
|
16
16
|
import * as RBT from "./RedBlackTree.js"
|
|
17
|
-
import type { Invariant
|
|
17
|
+
import type { Invariant } from "./Types.js"
|
|
18
18
|
|
|
19
19
|
const TypeId: unique symbol = Symbol.for("effect/SortedSet")
|
|
20
20
|
|
package/src/Stream.ts
CHANGED
|
@@ -29,7 +29,7 @@ import type * as Emit from "./StreamEmit.js"
|
|
|
29
29
|
import type * as HaltStrategy from "./StreamHaltStrategy.js"
|
|
30
30
|
import type * as Take from "./Take.js"
|
|
31
31
|
import type * as Tracer from "./Tracer.js"
|
|
32
|
-
import type { Covariant, MergeRecord
|
|
32
|
+
import type { Covariant, MergeRecord } from "./Types.js"
|
|
33
33
|
import type * as Unify from "./Unify.js"
|
|
34
34
|
|
|
35
35
|
/**
|
|
@@ -3707,7 +3707,7 @@ export const throttleEffect: {
|
|
|
3707
3707
|
} = internal.throttleEffect
|
|
3708
3708
|
|
|
3709
3709
|
/**
|
|
3710
|
-
* A stream that emits
|
|
3710
|
+
* A stream that emits void values spaced by the specified duration.
|
|
3711
3711
|
*
|
|
3712
3712
|
* @since 2.0.0
|
|
3713
3713
|
* @category constructors
|
|
@@ -3915,13 +3915,16 @@ export const unfoldEffect: <S, A, E, R>(
|
|
|
3915
3915
|
f: (s: S) => Effect.Effect<Option.Option<readonly [A, S]>, E, R>
|
|
3916
3916
|
) => Stream<A, E, R> = internal.unfoldEffect
|
|
3917
3917
|
|
|
3918
|
-
|
|
3919
|
-
|
|
3920
|
-
|
|
3921
|
-
|
|
3922
|
-
|
|
3923
|
-
|
|
3924
|
-
|
|
3918
|
+
const void_: Stream<void> = internal.void
|
|
3919
|
+
export {
|
|
3920
|
+
/**
|
|
3921
|
+
* A stream that contains a single `void` value.
|
|
3922
|
+
*
|
|
3923
|
+
* @since 2.0.0
|
|
3924
|
+
* @category constructors
|
|
3925
|
+
*/
|
|
3926
|
+
void_ as void
|
|
3927
|
+
}
|
|
3925
3928
|
|
|
3926
3929
|
/**
|
|
3927
3930
|
* Creates a stream produced from an `Effect`.
|
|
@@ -4025,7 +4028,7 @@ export const withSpan: {
|
|
|
4025
4028
|
options?: {
|
|
4026
4029
|
readonly attributes?: Record<string, unknown> | undefined
|
|
4027
4030
|
readonly links?: ReadonlyArray<Tracer.SpanLink> | undefined
|
|
4028
|
-
readonly parent?: Tracer.
|
|
4031
|
+
readonly parent?: Tracer.AnySpan | undefined
|
|
4029
4032
|
readonly root?: boolean | undefined
|
|
4030
4033
|
readonly context?: Context.Context<never> | undefined
|
|
4031
4034
|
} | undefined
|
|
@@ -4036,7 +4039,7 @@ export const withSpan: {
|
|
|
4036
4039
|
options?: {
|
|
4037
4040
|
readonly attributes?: Record<string, unknown> | undefined
|
|
4038
4041
|
readonly links?: ReadonlyArray<Tracer.SpanLink> | undefined
|
|
4039
|
-
readonly parent?: Tracer.
|
|
4042
|
+
readonly parent?: Tracer.AnySpan | undefined
|
|
4040
4043
|
readonly root?: boolean | undefined
|
|
4041
4044
|
readonly context?: Context.Context<never> | undefined
|
|
4042
4045
|
} | undefined
|
|
@@ -102,10 +102,22 @@ export const isBoth: (self: HaltStrategy) => self is Both = internal.isBoth
|
|
|
102
102
|
export const isEither: (self: HaltStrategy) => self is Either = internal.isEither
|
|
103
103
|
|
|
104
104
|
/**
|
|
105
|
+
* Folds over the specified `HaltStrategy` using the provided case functions.
|
|
106
|
+
*
|
|
105
107
|
* @since 2.0.0
|
|
106
108
|
* @category folding
|
|
107
109
|
*/
|
|
108
110
|
export const match: {
|
|
109
|
-
<Z>(
|
|
110
|
-
|
|
111
|
+
<Z>(options: {
|
|
112
|
+
readonly onLeft: () => Z
|
|
113
|
+
readonly onRight: () => Z
|
|
114
|
+
readonly onBoth: () => Z
|
|
115
|
+
readonly onEither: () => Z
|
|
116
|
+
}): (self: HaltStrategy) => Z
|
|
117
|
+
<Z>(self: HaltStrategy, options: {
|
|
118
|
+
readonly onLeft: () => Z
|
|
119
|
+
readonly onRight: () => Z
|
|
120
|
+
readonly onBoth: () => Z
|
|
121
|
+
readonly onEither: () => Z
|
|
122
|
+
}): Z
|
|
111
123
|
} = internal.match
|
package/src/String.ts
CHANGED
|
@@ -6,16 +6,16 @@
|
|
|
6
6
|
* @since 2.0.0
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
|
+
import type { NonEmptyArray } from "./Array.js"
|
|
9
10
|
import * as equivalence from "./Equivalence.js"
|
|
10
11
|
import { dual } from "./Function.js"
|
|
11
|
-
import * as readonlyArray from "./internal/
|
|
12
|
+
import * as readonlyArray from "./internal/array.js"
|
|
12
13
|
import * as number from "./Number.js"
|
|
13
14
|
import * as Option from "./Option.js"
|
|
14
15
|
import * as order from "./Order.js"
|
|
15
16
|
import type * as Ordering from "./Ordering.js"
|
|
16
17
|
import type { Refinement } from "./Predicate.js"
|
|
17
18
|
import * as predicate from "./Predicate.js"
|
|
18
|
-
import type { NonEmptyArray } from "./ReadonlyArray.js"
|
|
19
19
|
|
|
20
20
|
/**
|
|
21
21
|
* Tests if a value is a `string`.
|
|
@@ -624,6 +624,49 @@ export const stripMarginWith: {
|
|
|
624
624
|
*/
|
|
625
625
|
export const stripMargin = (self: string): string => stripMarginWith(self, "|")
|
|
626
626
|
|
|
627
|
+
/**
|
|
628
|
+
* @since 2.0.0
|
|
629
|
+
*/
|
|
630
|
+
export const snakeToCamel = (self: string): string => {
|
|
631
|
+
let str = self[0]
|
|
632
|
+
for (let i = 1; i < self.length; i++) {
|
|
633
|
+
str += self[i] === "_" ? self[++i].toUpperCase() : self[i]
|
|
634
|
+
}
|
|
635
|
+
return str
|
|
636
|
+
}
|
|
637
|
+
|
|
638
|
+
/**
|
|
639
|
+
* @since 2.0.0
|
|
640
|
+
*/
|
|
641
|
+
export const snakeToPascal = (self: string): string => {
|
|
642
|
+
let str = self[0].toUpperCase()
|
|
643
|
+
for (let i = 1; i < self.length; i++) {
|
|
644
|
+
str += self[i] === "_" ? self[++i].toUpperCase() : self[i]
|
|
645
|
+
}
|
|
646
|
+
return str
|
|
647
|
+
}
|
|
648
|
+
|
|
649
|
+
/**
|
|
650
|
+
* @since 2.0.0
|
|
651
|
+
*/
|
|
652
|
+
export const snakeToKebab = (self: string): string => self.replace(/_/g, "-")
|
|
653
|
+
|
|
654
|
+
/**
|
|
655
|
+
* @since 2.0.0
|
|
656
|
+
*/
|
|
657
|
+
export const camelToSnake = (self: string): string => self.replace(/([A-Z])/g, "_$1").toLowerCase()
|
|
658
|
+
|
|
659
|
+
/**
|
|
660
|
+
* @since 2.0.0
|
|
661
|
+
*/
|
|
662
|
+
export const pascalToSnake = (self: string): string =>
|
|
663
|
+
(self.slice(0, 1) + self.slice(1).replace(/([A-Z])/g, "_$1")).toLowerCase()
|
|
664
|
+
|
|
665
|
+
/**
|
|
666
|
+
* @since 2.0.0
|
|
667
|
+
*/
|
|
668
|
+
export const kebabToSnake = (self: string): string => self.replace(/-/g, "_")
|
|
669
|
+
|
|
627
670
|
class LinesIterator implements IterableIterator<string> {
|
|
628
671
|
private index: number
|
|
629
672
|
private readonly length: number
|
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
|
*/
|
|
@@ -575,19 +587,12 @@ export * as RateLimiter from "./RateLimiter.js"
|
|
|
575
587
|
*/
|
|
576
588
|
export * as Readable from "./Readable.js"
|
|
577
589
|
|
|
578
|
-
/**
|
|
579
|
-
* This module provides utility functions for working with arrays in TypeScript.
|
|
580
|
-
*
|
|
581
|
-
* @since 2.0.0
|
|
582
|
-
*/
|
|
583
|
-
export * as ReadonlyArray from "./ReadonlyArray.js"
|
|
584
|
-
|
|
585
590
|
/**
|
|
586
591
|
* This module provides utility functions for working with records in TypeScript.
|
|
587
592
|
*
|
|
588
593
|
* @since 2.0.0
|
|
589
594
|
*/
|
|
590
|
-
export * as
|
|
595
|
+
export * as Record from "./Record.js"
|
|
591
596
|
|
|
592
597
|
/**
|
|
593
598
|
* @since 2.0.0
|
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,
|