effect 2.0.0-next.55 → 2.0.0-next.56
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/README.md +14 -9
- package/dist/cjs/Cache.js.map +1 -1
- package/dist/cjs/Cause.js +53 -18
- package/dist/cjs/Cause.js.map +1 -1
- package/dist/cjs/ChildExecutorDecision.js.map +1 -1
- package/dist/cjs/Chunk.js +5 -5
- package/dist/cjs/Chunk.js.map +1 -1
- package/dist/cjs/Data.js +11 -20
- package/dist/cjs/Data.js.map +1 -1
- package/dist/cjs/Duration.js +4 -0
- package/dist/cjs/Duration.js.map +1 -1
- package/dist/cjs/Effect.js +11 -4
- package/dist/cjs/Effect.js.map +1 -1
- package/dist/cjs/Either.js +9 -2
- package/dist/cjs/Either.js.map +1 -1
- package/dist/cjs/Exit.js.map +1 -1
- package/dist/cjs/Fiber.js.map +1 -1
- package/dist/cjs/HashMap.js.map +1 -1
- package/dist/cjs/KeyedPool.js.map +1 -1
- package/dist/cjs/List.js.map +1 -1
- package/dist/cjs/MergeState.js.map +1 -1
- package/dist/cjs/MetricPolling.js +2 -2
- package/dist/cjs/MetricPolling.js.map +1 -1
- package/dist/cjs/MetricState.js.map +1 -1
- package/dist/cjs/NonEmptyIterable.js.map +1 -1
- package/dist/cjs/Option.js +2 -2
- package/dist/cjs/Option.js.map +1 -1
- package/dist/cjs/Pipeable.js.map +1 -1
- package/dist/cjs/Predicate.js +17 -1
- package/dist/cjs/Predicate.js.map +1 -1
- package/dist/cjs/PrimaryKey.js +15 -0
- package/dist/cjs/PrimaryKey.js.map +1 -0
- package/dist/cjs/Queue.js +6 -1
- package/dist/cjs/Queue.js.map +1 -1
- package/dist/cjs/ReadonlyArray.js +2 -0
- package/dist/cjs/ReadonlyArray.js.map +1 -1
- package/dist/cjs/ReadonlyRecord.js +2 -2
- package/dist/cjs/ReadonlyRecord.js.map +1 -1
- package/dist/cjs/RedBlackTree.js.map +1 -1
- package/dist/cjs/Request.js +35 -1
- package/dist/cjs/Request.js.map +1 -1
- package/dist/cjs/STM.js +1 -1
- package/dist/cjs/STM.js.map +1 -1
- package/dist/cjs/Sink.js.map +1 -1
- package/dist/cjs/SortedMap.js +4 -1
- package/dist/cjs/SortedMap.js.map +1 -1
- package/dist/cjs/SortedSet.js +2 -2
- package/dist/cjs/SortedSet.js.map +1 -1
- package/dist/cjs/Stream.js.map +1 -1
- package/dist/cjs/SubscriptionRef.js.map +1 -1
- package/dist/cjs/TPubSub.js.map +1 -1
- package/dist/cjs/TestAnnotation.js +3 -1
- package/dist/cjs/TestAnnotation.js.map +1 -1
- package/dist/cjs/TestClock.js.map +1 -1
- package/dist/cjs/UpstreamPullRequest.js.map +1 -1
- package/dist/cjs/index.js +4 -2
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/internal/cache.js.map +1 -1
- package/dist/cjs/internal/cause.js +4 -103
- package/dist/cjs/internal/cause.js.map +1 -1
- package/dist/cjs/internal/channel/continuation.js.map +1 -1
- package/dist/cjs/internal/configProvider.js +13 -1
- package/dist/cjs/internal/configProvider.js.map +1 -1
- package/dist/cjs/internal/core-effect.js +7 -7
- package/dist/cjs/internal/core-effect.js.map +1 -1
- package/dist/cjs/internal/core-stream.js.map +1 -1
- package/dist/cjs/internal/core.js +159 -11
- package/dist/cjs/internal/core.js.map +1 -1
- package/dist/cjs/internal/data.js +4 -22
- package/dist/cjs/internal/data.js.map +1 -1
- package/dist/cjs/internal/dataSource.js +1 -1
- package/dist/cjs/internal/dataSource.js.map +1 -1
- package/dist/cjs/internal/deferred.js.map +1 -1
- package/dist/cjs/internal/differ/orPatch.js.map +1 -1
- package/dist/cjs/internal/effect/circular.js.map +1 -1
- package/dist/cjs/internal/effectable.js +21 -3
- package/dist/cjs/internal/effectable.js.map +1 -1
- package/dist/cjs/internal/fiberMessage.js.map +1 -1
- package/dist/cjs/internal/fiberRuntime.js +9 -10
- package/dist/cjs/internal/fiberRuntime.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 +2 -2
- package/dist/cjs/internal/hashSet.js.map +1 -1
- package/dist/cjs/internal/keyedPool.js.map +1 -1
- package/dist/cjs/internal/layer.js.map +1 -1
- package/dist/cjs/internal/metric/polling.js +7 -7
- package/dist/cjs/internal/metric/polling.js.map +1 -1
- package/dist/cjs/internal/metric.js +4 -0
- package/dist/cjs/internal/metric.js.map +1 -1
- package/dist/cjs/internal/pool.js.map +1 -1
- package/dist/cjs/internal/pubsub.js +24 -23
- package/dist/cjs/internal/pubsub.js.map +1 -1
- package/dist/cjs/internal/queue.js +10 -1
- package/dist/cjs/internal/queue.js.map +1 -1
- package/dist/cjs/internal/redBlackTree.js +5 -1
- package/dist/cjs/internal/redBlackTree.js.map +1 -1
- package/dist/cjs/internal/reloadable.js.map +1 -1
- package/dist/cjs/internal/request.js +29 -15
- package/dist/cjs/internal/request.js.map +1 -1
- package/dist/cjs/internal/resource.js +2 -2
- package/dist/cjs/internal/resource.js.map +1 -1
- package/dist/cjs/internal/runtime.js +2 -3
- package/dist/cjs/internal/runtime.js.map +1 -1
- package/dist/cjs/internal/schedule.js +6 -7
- package/dist/cjs/internal/schedule.js.map +1 -1
- package/dist/cjs/internal/scopedCache.js.map +1 -1
- package/dist/cjs/internal/scopedRef.js.map +1 -1
- package/dist/cjs/internal/sink.js +1 -1
- package/dist/cjs/internal/sink.js.map +1 -1
- package/dist/cjs/internal/stm/core.js +2 -2
- package/dist/cjs/internal/stm/core.js.map +1 -1
- package/dist/cjs/internal/stm/tArray.js.map +1 -1
- package/dist/cjs/internal/stm/tDeferred.js.map +1 -1
- package/dist/cjs/internal/stm/tMap.js.map +1 -1
- package/dist/cjs/internal/stm/tPriorityQueue.js.map +1 -1
- package/dist/cjs/internal/stm/tPubSub.js +17 -14
- package/dist/cjs/internal/stm/tPubSub.js.map +1 -1
- package/dist/cjs/internal/stm/tQueue.js +6 -7
- package/dist/cjs/internal/stm/tQueue.js.map +1 -1
- package/dist/cjs/internal/stm/tSemaphore.js +2 -2
- package/dist/cjs/internal/stm/tSemaphore.js.map +1 -1
- package/dist/cjs/internal/stm/tSet.js.map +1 -1
- package/dist/cjs/internal/stream.js +4 -4
- package/dist/cjs/internal/stream.js.map +1 -1
- package/dist/cjs/internal/subscriptionRef.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/version.js +1 -1
- package/dist/dts/Brand.d.ts +4 -4
- package/dist/dts/Brand.d.ts.map +1 -1
- package/dist/dts/Cache.d.ts +15 -14
- package/dist/dts/Cache.d.ts.map +1 -1
- package/dist/dts/Cause.d.ts +92 -25
- package/dist/dts/Cause.d.ts.map +1 -1
- package/dist/dts/Channel.d.ts +4 -4
- package/dist/dts/Channel.d.ts.map +1 -1
- package/dist/dts/ChildExecutorDecision.d.ts.map +1 -1
- package/dist/dts/Chunk.d.ts +26 -24
- package/dist/dts/Chunk.d.ts.map +1 -1
- package/dist/dts/Clock.d.ts +4 -4
- package/dist/dts/Clock.d.ts.map +1 -1
- package/dist/dts/Config.d.ts +4 -4
- package/dist/dts/Config.d.ts.map +1 -1
- package/dist/dts/ConfigError.d.ts +7 -7
- package/dist/dts/ConfigError.d.ts.map +1 -1
- package/dist/dts/ConfigProvider.d.ts +3 -3
- package/dist/dts/ConfigProvider.d.ts.map +1 -1
- package/dist/dts/ConfigProviderPathPatch.d.ts +1 -1
- package/dist/dts/ConfigProviderPathPatch.d.ts.map +1 -1
- package/dist/dts/Console.d.ts +36 -36
- package/dist/dts/Console.d.ts.map +1 -1
- package/dist/dts/Context.d.ts +4 -4
- package/dist/dts/Context.d.ts.map +1 -1
- package/dist/dts/Data.d.ts +3 -17
- package/dist/dts/Data.d.ts.map +1 -1
- package/dist/dts/Deferred.d.ts +4 -4
- package/dist/dts/Deferred.d.ts.map +1 -1
- package/dist/dts/Differ.d.ts +9 -9
- package/dist/dts/Differ.d.ts.map +1 -1
- package/dist/dts/Duration.d.ts +1 -1
- package/dist/dts/Duration.d.ts.map +1 -1
- package/dist/dts/Effect.d.ts +34 -20
- package/dist/dts/Effect.d.ts.map +1 -1
- package/dist/dts/Either.d.ts +15 -3
- package/dist/dts/Either.d.ts.map +1 -1
- package/dist/dts/Equal.d.ts +1 -1
- package/dist/dts/Equal.d.ts.map +1 -1
- package/dist/dts/Equivalence.d.ts +1 -1
- package/dist/dts/Equivalence.d.ts.map +1 -1
- package/dist/dts/Exit.d.ts +5 -3
- package/dist/dts/Exit.d.ts.map +1 -1
- package/dist/dts/Fiber.d.ts +12 -12
- package/dist/dts/Fiber.d.ts.map +1 -1
- package/dist/dts/FiberRef.d.ts +3 -3
- package/dist/dts/FiberRef.d.ts.map +1 -1
- package/dist/dts/GroupBy.d.ts +2 -2
- package/dist/dts/GroupBy.d.ts.map +1 -1
- package/dist/dts/Hash.d.ts +1 -1
- package/dist/dts/Hash.d.ts.map +1 -1
- package/dist/dts/HashMap.d.ts +6 -4
- package/dist/dts/HashMap.d.ts.map +1 -1
- package/dist/dts/HashSet.d.ts +9 -9
- package/dist/dts/HashSet.d.ts.map +1 -1
- package/dist/dts/Inspectable.d.ts +3 -3
- package/dist/dts/Inspectable.d.ts.map +1 -1
- package/dist/dts/KeyedPool.d.ts +5 -5
- package/dist/dts/KeyedPool.d.ts.map +1 -1
- package/dist/dts/Layer.d.ts +2 -2
- package/dist/dts/Layer.d.ts.map +1 -1
- package/dist/dts/List.d.ts +16 -16
- package/dist/dts/List.d.ts.map +1 -1
- package/dist/dts/Logger.d.ts +4 -4
- package/dist/dts/Logger.d.ts.map +1 -1
- package/dist/dts/Match.d.ts +11 -11
- package/dist/dts/Match.d.ts.map +1 -1
- package/dist/dts/MergeDecision.d.ts +2 -2
- package/dist/dts/MergeDecision.d.ts.map +1 -1
- package/dist/dts/MergeState.d.ts +5 -5
- package/dist/dts/MergeState.d.ts.map +1 -1
- package/dist/dts/Metric.d.ts +5 -5
- package/dist/dts/Metric.d.ts.map +1 -1
- package/dist/dts/MetricHook.d.ts +4 -4
- package/dist/dts/MetricHook.d.ts.map +1 -1
- package/dist/dts/MetricKey.d.ts +2 -2
- package/dist/dts/MetricKey.d.ts.map +1 -1
- package/dist/dts/MetricKeyType.d.ts +2 -2
- package/dist/dts/MetricKeyType.d.ts.map +1 -1
- package/dist/dts/MetricPair.d.ts +2 -2
- package/dist/dts/MetricPair.d.ts.map +1 -1
- package/dist/dts/MetricPolling.d.ts +16 -16
- package/dist/dts/MetricPolling.d.ts.map +1 -1
- package/dist/dts/MetricRegistry.d.ts +7 -7
- package/dist/dts/MetricRegistry.d.ts.map +1 -1
- package/dist/dts/MetricState.d.ts +4 -4
- package/dist/dts/MetricState.d.ts.map +1 -1
- package/dist/dts/MutableHashMap.d.ts +1 -1
- package/dist/dts/MutableHashMap.d.ts.map +1 -1
- package/dist/dts/MutableHashSet.d.ts +1 -1
- package/dist/dts/MutableHashSet.d.ts.map +1 -1
- package/dist/dts/MutableList.d.ts +1 -1
- package/dist/dts/MutableList.d.ts.map +1 -1
- package/dist/dts/MutableQueue.d.ts +1 -1
- package/dist/dts/MutableQueue.d.ts.map +1 -1
- package/dist/dts/MutableRef.d.ts +1 -1
- package/dist/dts/MutableRef.d.ts.map +1 -1
- package/dist/dts/NonEmptyIterable.d.ts +2 -2
- package/dist/dts/NonEmptyIterable.d.ts.map +1 -1
- package/dist/dts/Option.d.ts +13 -11
- package/dist/dts/Option.d.ts.map +1 -1
- package/dist/dts/Order.d.ts +1 -1
- package/dist/dts/Order.d.ts.map +1 -1
- package/dist/dts/Pipeable.d.ts +21 -23
- package/dist/dts/Pipeable.d.ts.map +1 -1
- package/dist/dts/Pool.d.ts +4 -4
- package/dist/dts/Pool.d.ts.map +1 -1
- package/dist/dts/Predicate.d.ts +17 -2
- package/dist/dts/Predicate.d.ts.map +1 -1
- package/dist/dts/PrimaryKey.d.ts +16 -0
- package/dist/dts/PrimaryKey.d.ts.map +1 -0
- package/dist/dts/PubSub.d.ts +3 -3
- package/dist/dts/PubSub.d.ts.map +1 -1
- package/dist/dts/Queue.d.ts +46 -27
- package/dist/dts/Queue.d.ts.map +1 -1
- package/dist/dts/Random.d.ts +3 -3
- package/dist/dts/Random.d.ts.map +1 -1
- package/dist/dts/ReadonlyArray.d.ts +36 -36
- package/dist/dts/ReadonlyArray.d.ts.map +1 -1
- package/dist/dts/ReadonlyRecord.d.ts +13 -11
- package/dist/dts/ReadonlyRecord.d.ts.map +1 -1
- package/dist/dts/RedBlackTree.d.ts +5 -2
- package/dist/dts/RedBlackTree.d.ts.map +1 -1
- package/dist/dts/Ref.d.ts +3 -3
- package/dist/dts/Ref.d.ts.map +1 -1
- package/dist/dts/Reloadable.d.ts +3 -3
- package/dist/dts/Reloadable.d.ts.map +1 -1
- package/dist/dts/Request.d.ts +49 -8
- package/dist/dts/Request.d.ts.map +1 -1
- package/dist/dts/RequestBlock.d.ts +8 -8
- package/dist/dts/RequestBlock.d.ts.map +1 -1
- package/dist/dts/RequestResolver.d.ts +5 -5
- package/dist/dts/RequestResolver.d.ts.map +1 -1
- package/dist/dts/Resource.d.ts +4 -4
- package/dist/dts/Resource.d.ts.map +1 -1
- package/dist/dts/Runtime.d.ts +3 -3
- package/dist/dts/Runtime.d.ts.map +1 -1
- package/dist/dts/STM.d.ts +9 -9
- package/dist/dts/STM.d.ts.map +1 -1
- package/dist/dts/Schedule.d.ts +6 -6
- package/dist/dts/Schedule.d.ts.map +1 -1
- package/dist/dts/Scheduler.d.ts +3 -3
- 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/ScopedRef.d.ts +3 -3
- package/dist/dts/ScopedRef.d.ts.map +1 -1
- package/dist/dts/SingleProducerAsyncInput.d.ts +7 -7
- package/dist/dts/SingleProducerAsyncInput.d.ts.map +1 -1
- package/dist/dts/Sink.d.ts +7 -4
- package/dist/dts/Sink.d.ts.map +1 -1
- package/dist/dts/SortedMap.d.ts +5 -2
- package/dist/dts/SortedMap.d.ts.map +1 -1
- package/dist/dts/SortedSet.d.ts +6 -12
- package/dist/dts/SortedSet.d.ts.map +1 -1
- package/dist/dts/Stream.d.ts +27 -19
- package/dist/dts/Stream.d.ts.map +1 -1
- package/dist/dts/StreamEmit.d.ts +12 -12
- package/dist/dts/StreamEmit.d.ts.map +1 -1
- package/dist/dts/SubscriptionRef.d.ts +3 -3
- package/dist/dts/SubscriptionRef.d.ts.map +1 -1
- package/dist/dts/Supervisor.d.ts +9 -9
- package/dist/dts/Supervisor.d.ts.map +1 -1
- package/dist/dts/SynchronizedRef.d.ts +4 -4
- package/dist/dts/SynchronizedRef.d.ts.map +1 -1
- package/dist/dts/TArray.d.ts +3 -3
- package/dist/dts/TArray.d.ts.map +1 -1
- package/dist/dts/TDeferred.d.ts +4 -4
- package/dist/dts/TDeferred.d.ts.map +1 -1
- package/dist/dts/TMap.d.ts +4 -4
- package/dist/dts/TMap.d.ts.map +1 -1
- package/dist/dts/TPriorityQueue.d.ts +3 -3
- package/dist/dts/TPriorityQueue.d.ts.map +1 -1
- package/dist/dts/TPubSub.d.ts +4 -1
- package/dist/dts/TPubSub.d.ts.map +1 -1
- package/dist/dts/TQueue.d.ts +9 -9
- package/dist/dts/TQueue.d.ts.map +1 -1
- package/dist/dts/TRandom.d.ts +3 -3
- package/dist/dts/TRandom.d.ts.map +1 -1
- package/dist/dts/TRef.d.ts +3 -3
- package/dist/dts/TRef.d.ts.map +1 -1
- package/dist/dts/TSet.d.ts +3 -3
- package/dist/dts/TSet.d.ts.map +1 -1
- package/dist/dts/Take.d.ts +2 -2
- package/dist/dts/Take.d.ts.map +1 -1
- package/dist/dts/TestAnnotation.d.ts +5 -3
- package/dist/dts/TestAnnotation.d.ts.map +1 -1
- package/dist/dts/TestAnnotations.d.ts +2 -2
- package/dist/dts/TestAnnotations.d.ts.map +1 -1
- package/dist/dts/TestClock.d.ts +3 -3
- package/dist/dts/TestClock.d.ts.map +1 -1
- package/dist/dts/TestLive.d.ts +1 -1
- package/dist/dts/TestLive.d.ts.map +1 -1
- package/dist/dts/TestSized.d.ts +1 -1
- package/dist/dts/TestSized.d.ts.map +1 -1
- package/dist/dts/Tracer.d.ts +5 -5
- package/dist/dts/Tracer.d.ts.map +1 -1
- package/dist/dts/Types.d.ts +7 -0
- package/dist/dts/Types.d.ts.map +1 -1
- package/dist/dts/UpstreamPullRequest.d.ts +2 -2
- package/dist/dts/UpstreamPullRequest.d.ts.map +1 -1
- package/dist/dts/UpstreamPullStrategy.d.ts +3 -3
- package/dist/dts/UpstreamPullStrategy.d.ts.map +1 -1
- package/dist/dts/Utils.d.ts +1 -1
- package/dist/dts/Utils.d.ts.map +1 -1
- package/dist/dts/index.d.ts +4 -0
- package/dist/dts/index.d.ts.map +1 -1
- package/dist/dts/internal/core-stream.d.ts.map +1 -1
- package/dist/dts/internal/fiberScope.d.ts +1 -1
- package/dist/dts/internal/fiberScope.d.ts.map +1 -1
- package/dist/dts/internal/stream/handoffSignal.d.ts +1 -1
- package/dist/dts/internal/stream/handoffSignal.d.ts.map +1 -1
- package/dist/dts/internal/version.d.ts +1 -1
- package/dist/esm/Cache.js.map +1 -1
- package/dist/esm/Cause.js +52 -17
- package/dist/esm/Cause.js.map +1 -1
- package/dist/esm/ChildExecutorDecision.js.map +1 -1
- package/dist/esm/Chunk.js +5 -5
- package/dist/esm/Chunk.js.map +1 -1
- package/dist/esm/Data.js +10 -19
- package/dist/esm/Data.js.map +1 -1
- package/dist/esm/Duration.js +4 -0
- package/dist/esm/Duration.js.map +1 -1
- package/dist/esm/Effect.js +7 -0
- package/dist/esm/Effect.js.map +1 -1
- package/dist/esm/Either.js +8 -1
- package/dist/esm/Either.js.map +1 -1
- package/dist/esm/Exit.js.map +1 -1
- package/dist/esm/Fiber.js.map +1 -1
- package/dist/esm/HashMap.js.map +1 -1
- package/dist/esm/KeyedPool.js.map +1 -1
- package/dist/esm/List.js.map +1 -1
- package/dist/esm/MergeState.js.map +1 -1
- package/dist/esm/MetricPolling.js +1 -1
- package/dist/esm/MetricPolling.js.map +1 -1
- package/dist/esm/MetricState.js.map +1 -1
- package/dist/esm/NonEmptyIterable.js.map +1 -1
- package/dist/esm/Option.js +2 -2
- package/dist/esm/Option.js.map +1 -1
- package/dist/esm/Pipeable.js.map +1 -1
- package/dist/esm/Predicate.js +15 -0
- package/dist/esm/Predicate.js.map +1 -1
- package/dist/esm/PrimaryKey.js +9 -0
- package/dist/esm/PrimaryKey.js.map +1 -0
- package/dist/esm/Queue.js +5 -0
- package/dist/esm/Queue.js.map +1 -1
- package/dist/esm/ReadonlyArray.js +2 -0
- package/dist/esm/ReadonlyArray.js.map +1 -1
- package/dist/esm/ReadonlyRecord.js +2 -2
- package/dist/esm/ReadonlyRecord.js.map +1 -1
- package/dist/esm/RedBlackTree.js.map +1 -1
- package/dist/esm/Request.js +34 -0
- package/dist/esm/Request.js.map +1 -1
- package/dist/esm/STM.js +1 -1
- package/dist/esm/STM.js.map +1 -1
- package/dist/esm/Sink.js.map +1 -1
- package/dist/esm/SortedMap.js +4 -1
- package/dist/esm/SortedMap.js.map +1 -1
- package/dist/esm/SortedSet.js +2 -2
- package/dist/esm/SortedSet.js.map +1 -1
- package/dist/esm/Stream.js.map +1 -1
- package/dist/esm/SubscriptionRef.js.map +1 -1
- package/dist/esm/TPubSub.js.map +1 -1
- package/dist/esm/TestAnnotation.js +3 -1
- package/dist/esm/TestAnnotation.js.map +1 -1
- package/dist/esm/TestClock.js.map +1 -1
- package/dist/esm/UpstreamPullRequest.js.map +1 -1
- package/dist/esm/index.js +4 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/internal/cache.js.map +1 -1
- package/dist/esm/internal/cause.js +3 -96
- package/dist/esm/internal/cause.js.map +1 -1
- package/dist/esm/internal/channel/continuation.js.map +1 -1
- package/dist/esm/internal/configProvider.js +13 -1
- package/dist/esm/internal/configProvider.js.map +1 -1
- package/dist/esm/internal/core-effect.js +7 -7
- package/dist/esm/internal/core-effect.js.map +1 -1
- package/dist/esm/internal/core-stream.js.map +1 -1
- package/dist/esm/internal/core.js +151 -10
- package/dist/esm/internal/core.js.map +1 -1
- package/dist/esm/internal/data.js +3 -21
- package/dist/esm/internal/data.js.map +1 -1
- package/dist/esm/internal/dataSource.js +1 -1
- package/dist/esm/internal/dataSource.js.map +1 -1
- package/dist/esm/internal/deferred.js.map +1 -1
- package/dist/esm/internal/differ/orPatch.js.map +1 -1
- package/dist/esm/internal/effect/circular.js.map +1 -1
- package/dist/esm/internal/effectable.js +20 -2
- package/dist/esm/internal/effectable.js.map +1 -1
- package/dist/esm/internal/fiberMessage.js.map +1 -1
- package/dist/esm/internal/fiberRuntime.js +9 -10
- package/dist/esm/internal/fiberRuntime.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 +2 -2
- package/dist/esm/internal/hashSet.js.map +1 -1
- package/dist/esm/internal/keyedPool.js.map +1 -1
- package/dist/esm/internal/layer.js.map +1 -1
- package/dist/esm/internal/metric/polling.js +6 -6
- package/dist/esm/internal/metric/polling.js.map +1 -1
- package/dist/esm/internal/metric.js +4 -0
- package/dist/esm/internal/metric.js.map +1 -1
- package/dist/esm/internal/pool.js.map +1 -1
- package/dist/esm/internal/pubsub.js +24 -23
- package/dist/esm/internal/pubsub.js.map +1 -1
- package/dist/esm/internal/queue.js +9 -0
- package/dist/esm/internal/queue.js.map +1 -1
- package/dist/esm/internal/redBlackTree.js +5 -1
- package/dist/esm/internal/redBlackTree.js.map +1 -1
- package/dist/esm/internal/reloadable.js.map +1 -1
- package/dist/esm/internal/request.js +27 -14
- package/dist/esm/internal/request.js.map +1 -1
- package/dist/esm/internal/resource.js +2 -2
- package/dist/esm/internal/resource.js.map +1 -1
- package/dist/esm/internal/runtime.js +1 -2
- package/dist/esm/internal/runtime.js.map +1 -1
- package/dist/esm/internal/schedule.js +6 -7
- package/dist/esm/internal/schedule.js.map +1 -1
- package/dist/esm/internal/scopedCache.js.map +1 -1
- package/dist/esm/internal/scopedRef.js.map +1 -1
- package/dist/esm/internal/sink.js +1 -1
- package/dist/esm/internal/sink.js.map +1 -1
- package/dist/esm/internal/stm/core.js +2 -2
- package/dist/esm/internal/stm/core.js.map +1 -1
- package/dist/esm/internal/stm/tArray.js.map +1 -1
- package/dist/esm/internal/stm/tDeferred.js.map +1 -1
- package/dist/esm/internal/stm/tMap.js.map +1 -1
- package/dist/esm/internal/stm/tPriorityQueue.js.map +1 -1
- package/dist/esm/internal/stm/tPubSub.js +17 -14
- package/dist/esm/internal/stm/tPubSub.js.map +1 -1
- package/dist/esm/internal/stm/tQueue.js +6 -7
- package/dist/esm/internal/stm/tQueue.js.map +1 -1
- package/dist/esm/internal/stm/tSemaphore.js +2 -2
- package/dist/esm/internal/stm/tSemaphore.js.map +1 -1
- package/dist/esm/internal/stm/tSet.js.map +1 -1
- package/dist/esm/internal/stream.js +4 -4
- package/dist/esm/internal/stream.js.map +1 -1
- package/dist/esm/internal/subscriptionRef.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/version.js +1 -1
- package/dist/esm/package.json +1 -1
- package/package.json +10 -2
- package/src/Brand.ts +4 -4
- package/src/Cache.ts +15 -17
- package/src/Cause.ts +124 -40
- package/src/Channel.ts +4 -4
- package/src/ChildExecutorDecision.ts +10 -2
- package/src/Chunk.ts +44 -36
- package/src/Clock.ts +4 -4
- package/src/Config.ts +4 -4
- package/src/ConfigError.ts +8 -8
- package/src/ConfigProvider.ts +5 -5
- package/src/ConfigProviderPathPatch.ts +1 -1
- package/src/Console.ts +36 -36
- package/src/Context.ts +4 -4
- package/src/Data.ts +13 -44
- package/src/Deferred.ts +4 -4
- package/src/Differ.ts +9 -9
- package/src/Duration.ts +5 -0
- package/src/Effect.ts +88 -26
- package/src/Either.ts +28 -5
- package/src/Equal.ts +1 -1
- package/src/Equivalence.ts +1 -1
- package/src/Exit.ts +21 -7
- package/src/Fiber.ts +20 -14
- package/src/FiberRef.ts +7 -7
- package/src/GroupBy.ts +2 -2
- package/src/Hash.ts +1 -1
- package/src/HashMap.ts +6 -4
- package/src/HashSet.ts +11 -11
- package/src/Inspectable.ts +3 -3
- package/src/KeyedPool.ts +13 -7
- package/src/Layer.ts +2 -2
- package/src/List.ts +24 -22
- package/src/Logger.ts +4 -4
- package/src/Match.ts +11 -11
- package/src/MergeDecision.ts +2 -2
- package/src/MergeState.ts +11 -5
- package/src/Metric.ts +5 -5
- package/src/MetricHook.ts +4 -4
- package/src/MetricKey.ts +2 -2
- package/src/MetricKeyType.ts +2 -2
- package/src/MetricPair.ts +2 -2
- package/src/MetricPolling.ts +22 -22
- package/src/MetricRegistry.ts +9 -9
- package/src/MetricState.ts +6 -4
- package/src/MutableHashMap.ts +1 -1
- package/src/MutableHashSet.ts +1 -1
- package/src/MutableList.ts +1 -1
- package/src/MutableQueue.ts +1 -1
- package/src/MutableRef.ts +1 -1
- package/src/NonEmptyIterable.ts +2 -2
- package/src/Option.ts +18 -15
- package/src/Order.ts +1 -1
- package/src/Pipeable.ts +275 -277
- package/src/Pool.ts +4 -4
- package/src/Predicate.ts +21 -2
- package/src/PrimaryKey.ts +17 -0
- package/src/PubSub.ts +3 -3
- package/src/Queue.ts +52 -30
- package/src/Random.ts +3 -3
- package/src/ReadonlyArray.ts +51 -66
- package/src/ReadonlyRecord.ts +37 -35
- package/src/RedBlackTree.ts +5 -2
- package/src/Ref.ts +3 -3
- package/src/Reloadable.ts +3 -3
- package/src/Request.ts +53 -8
- package/src/RequestBlock.ts +9 -9
- package/src/RequestResolver.ts +5 -5
- package/src/Resource.ts +4 -4
- package/src/Runtime.ts +3 -3
- package/src/STM.ts +23 -12
- package/src/Schedule.ts +7 -7
- package/src/Scheduler.ts +3 -3
- package/src/Scope.ts +3 -3
- package/src/ScopedCache.ts +9 -9
- package/src/ScopedRef.ts +3 -3
- package/src/SingleProducerAsyncInput.ts +7 -7
- package/src/Sink.ts +23 -9
- package/src/SortedMap.ts +9 -3
- package/src/SortedSet.ts +26 -41
- package/src/Stream.ts +70 -29
- package/src/StreamEmit.ts +12 -12
- package/src/SubscriptionRef.ts +5 -3
- package/src/Supervisor.ts +10 -10
- package/src/SynchronizedRef.ts +4 -4
- package/src/TArray.ts +4 -4
- package/src/TDeferred.ts +5 -5
- package/src/TMap.ts +5 -5
- package/src/TPriorityQueue.ts +4 -4
- package/src/TPubSub.ts +6 -3
- package/src/TQueue.ts +9 -9
- package/src/TRandom.ts +3 -3
- package/src/TRef.ts +4 -4
- package/src/TSet.ts +4 -4
- package/src/Take.ts +2 -2
- package/src/TestAnnotation.ts +8 -4
- package/src/TestAnnotations.ts +2 -2
- package/src/TestClock.ts +3 -5
- package/src/TestLive.ts +1 -1
- package/src/TestSized.ts +1 -1
- package/src/Tracer.ts +6 -6
- package/src/Types.ts +8 -0
- package/src/UpstreamPullRequest.ts +10 -4
- package/src/UpstreamPullStrategy.ts +3 -3
- package/src/Utils.ts +1 -1
- package/src/index.ts +5 -0
- package/src/internal/blockedRequests.ts +6 -6
- package/src/internal/cache.ts +12 -12
- package/src/internal/cause.ts +14 -138
- package/src/internal/channel/channelExecutor.ts +1 -1
- package/src/internal/channel/channelState.ts +5 -5
- package/src/internal/channel/continuation.ts +52 -32
- package/src/internal/channel/mergeDecision.ts +1 -1
- package/src/internal/channel/singleProducerAsyncInput.ts +1 -1
- package/src/internal/channel/subexecutor.ts +7 -7
- package/src/internal/config.ts +6 -6
- package/src/internal/configProvider.ts +14 -1
- package/src/internal/core-effect.ts +49 -38
- package/src/internal/core-stream.ts +18 -21
- package/src/internal/core.ts +286 -38
- package/src/internal/data.ts +3 -22
- package/src/internal/dataSource.ts +1 -1
- package/src/internal/deferred.ts +5 -5
- package/src/internal/differ/contextPatch.ts +5 -5
- package/src/internal/differ/orPatch.ts +18 -6
- package/src/internal/effect/circular.ts +3 -3
- package/src/internal/effectable.ts +23 -4
- package/src/internal/fiberMessage.ts +1 -4
- package/src/internal/fiberRuntime.ts +14 -15
- package/src/internal/fiberScope.ts +1 -1
- package/src/internal/groupBy.ts +1 -1
- package/src/internal/hashMap/node.ts +5 -5
- package/src/internal/hashMap.ts +23 -22
- package/src/internal/hashSet.ts +18 -20
- package/src/internal/keyedPool.ts +4 -4
- package/src/internal/layer.ts +6 -12
- package/src/internal/metric/key.ts +1 -1
- package/src/internal/metric/polling.ts +26 -26
- package/src/internal/metric.ts +4 -0
- package/src/internal/pool.ts +2 -2
- package/src/internal/pubsub.ts +64 -61
- package/src/internal/queue.ts +20 -6
- package/src/internal/redBlackTree/iterator.ts +1 -1
- package/src/internal/redBlackTree/node.ts +1 -1
- package/src/internal/redBlackTree.ts +7 -2
- package/src/internal/ref.ts +1 -1
- package/src/internal/reloadable.ts +1 -1
- package/src/internal/request.ts +39 -13
- package/src/internal/resource.ts +4 -4
- package/src/internal/ringBuffer.ts +1 -1
- package/src/internal/runtime.ts +2 -3
- package/src/internal/schedule.ts +6 -7
- package/src/internal/scopedCache.ts +7 -5
- package/src/internal/scopedRef.ts +1 -1
- package/src/internal/sink.ts +6 -3
- package/src/internal/stack.ts +1 -1
- package/src/internal/stm/core.ts +3 -3
- package/src/internal/stm/stm/stmState.ts +1 -1
- package/src/internal/stm/stm/tExit.ts +3 -3
- package/src/internal/stm/stm/tryCommit.ts +1 -1
- package/src/internal/stm/stm/versioned.ts +1 -1
- package/src/internal/stm/stm.ts +2 -2
- package/src/internal/stm/tArray.ts +2 -2
- package/src/internal/stm/tDeferred.ts +3 -3
- package/src/internal/stm/tMap.ts +3 -3
- package/src/internal/stm/tPriorityQueue.ts +2 -2
- package/src/internal/stm/tPubSub.ts +43 -38
- package/src/internal/stm/tQueue.ts +7 -8
- package/src/internal/stm/tReentrantLock.ts +2 -2
- package/src/internal/stm/tRef.ts +1 -1
- package/src/internal/stm/tSemaphore.ts +2 -2
- package/src/internal/stm/tSet.ts +2 -2
- package/src/internal/stream/debounceState.ts +2 -2
- package/src/internal/stream/handoff.ts +3 -3
- package/src/internal/stream/handoffSignal.ts +2 -2
- package/src/internal/stream/pull.ts +1 -1
- package/src/internal/stream.ts +66 -33
- package/src/internal/subscriptionRef.ts +2 -2
- package/src/internal/supervisor.ts +3 -3
- package/src/internal/take.ts +2 -2
- package/src/internal/version.ts +1 -1
package/src/RedBlackTree.ts
CHANGED
|
@@ -30,8 +30,11 @@ export const Direction = RBTI.Direction
|
|
|
30
30
|
* @since 2.0.0
|
|
31
31
|
* @category models
|
|
32
32
|
*/
|
|
33
|
-
export interface RedBlackTree<Key, Value> extends Iterable<[Key, Value]>, Equal, Pipeable, Inspectable {
|
|
34
|
-
readonly [TypeId]:
|
|
33
|
+
export interface RedBlackTree<in out Key, out Value> extends Iterable<[Key, Value]>, Equal, Pipeable, Inspectable {
|
|
34
|
+
readonly [TypeId]: {
|
|
35
|
+
readonly _Key: (_: Key) => Key
|
|
36
|
+
readonly _Value: (_: never) => Value
|
|
37
|
+
}
|
|
35
38
|
}
|
|
36
39
|
|
|
37
40
|
/**
|
package/src/Ref.ts
CHANGED
|
@@ -22,8 +22,8 @@ export type RefTypeId = typeof RefTypeId
|
|
|
22
22
|
* @since 2.0.0
|
|
23
23
|
* @category models
|
|
24
24
|
*/
|
|
25
|
-
export interface Ref<A> extends Ref.Variance<A>, Pipeable {
|
|
26
|
-
|
|
25
|
+
export interface Ref<in out A> extends Ref.Variance<A>, Pipeable {
|
|
26
|
+
modify<B>(f: (a: A) => readonly [B, A]): Effect.Effect<never, never, B>
|
|
27
27
|
}
|
|
28
28
|
|
|
29
29
|
/**
|
|
@@ -34,7 +34,7 @@ export declare namespace Ref {
|
|
|
34
34
|
/**
|
|
35
35
|
* @since 2.0.0
|
|
36
36
|
*/
|
|
37
|
-
export interface Variance<A> {
|
|
37
|
+
export interface Variance<in out A> {
|
|
38
38
|
readonly [RefTypeId]: {
|
|
39
39
|
readonly _A: (_: A) => A
|
|
40
40
|
}
|
package/src/Reloadable.ts
CHANGED
|
@@ -27,7 +27,7 @@ export type ReloadableTypeId = typeof ReloadableTypeId
|
|
|
27
27
|
* @since 2.0.0
|
|
28
28
|
* @category models
|
|
29
29
|
*/
|
|
30
|
-
export interface Reloadable<A> extends Reloadable.Variance<A> {
|
|
30
|
+
export interface Reloadable<in out A> extends Reloadable.Variance<A> {
|
|
31
31
|
/**
|
|
32
32
|
* @internal
|
|
33
33
|
*/
|
|
@@ -46,9 +46,9 @@ export declare namespace Reloadable {
|
|
|
46
46
|
* @since 2.0.0
|
|
47
47
|
* @category models
|
|
48
48
|
*/
|
|
49
|
-
export interface Variance<A> {
|
|
49
|
+
export interface Variance<in out A> {
|
|
50
50
|
readonly [ReloadableTypeId]: {
|
|
51
|
-
readonly _A: (_:
|
|
51
|
+
readonly _A: (_: A) => A
|
|
52
52
|
}
|
|
53
53
|
}
|
|
54
54
|
}
|
package/src/Request.ts
CHANGED
|
@@ -14,6 +14,7 @@ import * as core from "./internal/core.js"
|
|
|
14
14
|
import * as fiberRuntime from "./internal/fiberRuntime.js"
|
|
15
15
|
import * as internal from "./internal/request.js"
|
|
16
16
|
import type * as Option from "./Option.js"
|
|
17
|
+
import type * as Types from "./Types.js"
|
|
17
18
|
|
|
18
19
|
/**
|
|
19
20
|
* @since 2.0.0
|
|
@@ -34,7 +35,7 @@ export type RequestTypeId = typeof RequestTypeId
|
|
|
34
35
|
* @since 2.0.0
|
|
35
36
|
* @category models
|
|
36
37
|
*/
|
|
37
|
-
export interface Request<E, A> extends Request.Variance<E, A>, Data.Case {}
|
|
38
|
+
export interface Request<out E, out A> extends Request.Variance<E, A>, Data.Case {}
|
|
38
39
|
|
|
39
40
|
/**
|
|
40
41
|
* @since 2.0.0
|
|
@@ -44,7 +45,7 @@ export declare namespace Request {
|
|
|
44
45
|
* @since 2.0.0
|
|
45
46
|
* @category models
|
|
46
47
|
*/
|
|
47
|
-
export interface Variance<E, A> {
|
|
48
|
+
export interface Variance<out E, out A> {
|
|
48
49
|
readonly [RequestTypeId]: {
|
|
49
50
|
readonly _E: (_: never) => E
|
|
50
51
|
readonly _A: (_: never) => A
|
|
@@ -120,6 +121,50 @@ export const tagged: <R extends Request<any, any> & { _tag: string }>(
|
|
|
120
121
|
tag: R["_tag"]
|
|
121
122
|
) => Request.Constructor<R, "_tag"> = internal.tagged
|
|
122
123
|
|
|
124
|
+
/**
|
|
125
|
+
* Provides a constructor for a Request Class.
|
|
126
|
+
*
|
|
127
|
+
* @example
|
|
128
|
+
* import * as Request from "effect/Request"
|
|
129
|
+
*
|
|
130
|
+
* type Error = never
|
|
131
|
+
* type Success = string
|
|
132
|
+
*
|
|
133
|
+
* class MyRequest extends Request.Class<Error, Success, {
|
|
134
|
+
* readonly id: string
|
|
135
|
+
* }> {}
|
|
136
|
+
*
|
|
137
|
+
* @since 2.0.0
|
|
138
|
+
* @category constructors
|
|
139
|
+
*/
|
|
140
|
+
export const Class: new<Error, Success, A extends Record<string, any>>(
|
|
141
|
+
args: Types.Equals<Omit<A, keyof Request<unknown, unknown>>, {}> extends true ? void
|
|
142
|
+
: { readonly [P in keyof A as P extends keyof Request<unknown, unknown> ? never : P]: A[P] }
|
|
143
|
+
) => Request<Error, Success> & Readonly<A> = internal.Class as any
|
|
144
|
+
|
|
145
|
+
/**
|
|
146
|
+
* Provides a Tagged constructor for a Request Class.
|
|
147
|
+
*
|
|
148
|
+
* @example
|
|
149
|
+
* import * as Request from "effect/Request"
|
|
150
|
+
*
|
|
151
|
+
* type Error = never
|
|
152
|
+
* type Success = string
|
|
153
|
+
*
|
|
154
|
+
* class MyRequest extends Request.TaggedClass("MyRequest")<Error, Success, {
|
|
155
|
+
* readonly name: string
|
|
156
|
+
* }> {}
|
|
157
|
+
*
|
|
158
|
+
* @since 2.0.0
|
|
159
|
+
* @category constructors
|
|
160
|
+
*/
|
|
161
|
+
export const TaggedClass: <Tag extends string>(
|
|
162
|
+
tag: Tag
|
|
163
|
+
) => new<Error, Success, A extends Record<string, any>>(
|
|
164
|
+
args: Types.Equals<Omit<A, keyof Request<unknown, unknown>>, {}> extends true ? void
|
|
165
|
+
: { readonly [P in keyof A as P extends "_tag" | keyof Request<unknown, unknown> ? never : P]: A[P] }
|
|
166
|
+
) => Request<Error, Success> & Readonly<A> & { readonly _tag: Tag } = internal.TaggedClass as any
|
|
167
|
+
|
|
123
168
|
/**
|
|
124
169
|
* Complete a `Request` with the specified result.
|
|
125
170
|
*
|
|
@@ -189,10 +234,10 @@ export const succeed: {
|
|
|
189
234
|
export interface Listeners {
|
|
190
235
|
readonly count: number
|
|
191
236
|
readonly observers: Set<(count: number) => void>
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
237
|
+
addObserver(f: (count: number) => void): void
|
|
238
|
+
removeObserver(f: (count: number) => void): void
|
|
239
|
+
increment(): void
|
|
240
|
+
decrement(): void
|
|
196
241
|
}
|
|
197
242
|
|
|
198
243
|
/**
|
|
@@ -243,7 +288,7 @@ export type EntryTypeId = typeof EntryTypeId
|
|
|
243
288
|
* @since 2.0.0
|
|
244
289
|
* @category models
|
|
245
290
|
*/
|
|
246
|
-
export interface Entry<R> extends Entry.Variance<R> {
|
|
291
|
+
export interface Entry<out R> extends Entry.Variance<R> {
|
|
247
292
|
readonly request: R
|
|
248
293
|
readonly result: Deferred<
|
|
249
294
|
[R] extends [Request<infer _E, infer _A>] ? _E : never,
|
|
@@ -265,7 +310,7 @@ export declare namespace Entry {
|
|
|
265
310
|
* @since 2.0.0
|
|
266
311
|
* @category models
|
|
267
312
|
*/
|
|
268
|
-
export interface Variance<R> {
|
|
313
|
+
export interface Variance<out R> {
|
|
269
314
|
readonly [EntryTypeId]: {
|
|
270
315
|
readonly _R: (_: never) => R
|
|
271
316
|
}
|
package/src/RequestBlock.ts
CHANGED
|
@@ -30,14 +30,14 @@ export declare namespace RequestBlock {
|
|
|
30
30
|
* @since 2.0.0
|
|
31
31
|
* @category models
|
|
32
32
|
*/
|
|
33
|
-
export interface Reducer<R, Z> {
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
33
|
+
export interface Reducer<in R, in out Z> {
|
|
34
|
+
emptyCase(): Z
|
|
35
|
+
parCase(left: Z, right: Z): Z
|
|
36
|
+
singleCase(
|
|
37
37
|
dataSource: RequestResolver.RequestResolver<unknown, R>,
|
|
38
38
|
blockedRequest: Request.Entry<unknown>
|
|
39
|
-
)
|
|
40
|
-
|
|
39
|
+
): Z
|
|
40
|
+
seqCase(left: Z, right: Z): Z
|
|
41
41
|
}
|
|
42
42
|
}
|
|
43
43
|
|
|
@@ -53,7 +53,7 @@ export interface Empty {
|
|
|
53
53
|
* @since 2.0.0
|
|
54
54
|
* @category models
|
|
55
55
|
*/
|
|
56
|
-
export interface Par<R> {
|
|
56
|
+
export interface Par<out R> {
|
|
57
57
|
readonly _tag: "Par"
|
|
58
58
|
readonly left: RequestBlock<R>
|
|
59
59
|
readonly right: RequestBlock<R>
|
|
@@ -63,7 +63,7 @@ export interface Par<R> {
|
|
|
63
63
|
* @since 2.0.0
|
|
64
64
|
* @category models
|
|
65
65
|
*/
|
|
66
|
-
export interface Seq<R> {
|
|
66
|
+
export interface Seq<out R> {
|
|
67
67
|
readonly _tag: "Seq"
|
|
68
68
|
readonly left: RequestBlock<R>
|
|
69
69
|
readonly right: RequestBlock<R>
|
|
@@ -73,7 +73,7 @@ export interface Seq<R> {
|
|
|
73
73
|
* @since 2.0.0
|
|
74
74
|
* @category models
|
|
75
75
|
*/
|
|
76
|
-
export interface Single<R> {
|
|
76
|
+
export interface Single<out R> {
|
|
77
77
|
readonly _tag: "Single"
|
|
78
78
|
readonly dataSource: RequestResolver.RequestResolver<unknown, R>
|
|
79
79
|
readonly blockedRequest: Request.Entry<unknown>
|
package/src/RequestResolver.ts
CHANGED
|
@@ -48,18 +48,18 @@ export type RequestResolverTypeId = typeof RequestResolverTypeId
|
|
|
48
48
|
* @since 2.0.0
|
|
49
49
|
* @category models
|
|
50
50
|
*/
|
|
51
|
-
export interface RequestResolver<A, R = never> extends Equal.Equal, Pipeable {
|
|
51
|
+
export interface RequestResolver<in A, out R = never> extends RequestResolver.Variance<A, R>, Equal.Equal, Pipeable {
|
|
52
52
|
/**
|
|
53
53
|
* Execute a collection of requests. The outer `Chunk` represents batches
|
|
54
54
|
* of requests that must be performed sequentially. The inner `Chunk`
|
|
55
55
|
* represents a batch of requests that can be performed in parallel.
|
|
56
56
|
*/
|
|
57
|
-
|
|
57
|
+
runAll(requests: Array<Array<Request.Entry<A>>>): Effect.Effect<R, never, void>
|
|
58
58
|
|
|
59
59
|
/**
|
|
60
60
|
* Identify the data source using the specific identifier
|
|
61
61
|
*/
|
|
62
|
-
|
|
62
|
+
identified(...identifiers: Array<unknown>): RequestResolver<A, R>
|
|
63
63
|
}
|
|
64
64
|
|
|
65
65
|
/**
|
|
@@ -70,10 +70,10 @@ export declare namespace RequestResolver {
|
|
|
70
70
|
* @since 2.0.0
|
|
71
71
|
* @category models
|
|
72
72
|
*/
|
|
73
|
-
export interface Variance<
|
|
73
|
+
export interface Variance<in A, out R> {
|
|
74
74
|
readonly [RequestResolverTypeId]: {
|
|
75
|
+
readonly _A: (_: A) => void
|
|
75
76
|
readonly _R: (_: never) => R
|
|
76
|
-
readonly _A: (_: never) => A
|
|
77
77
|
}
|
|
78
78
|
}
|
|
79
79
|
}
|
package/src/Resource.ts
CHANGED
|
@@ -27,7 +27,7 @@ export type ResourceTypeId = typeof ResourceTypeId
|
|
|
27
27
|
* @since 2.0.0
|
|
28
28
|
* @category models
|
|
29
29
|
*/
|
|
30
|
-
export interface Resource<E, A> extends Resource.Variance<E, A> {
|
|
30
|
+
export interface Resource<in out E, in out A> extends Resource.Variance<E, A> {
|
|
31
31
|
/** @internal */
|
|
32
32
|
readonly scopedRef: ScopedRef.ScopedRef<Exit.Exit<E, A>>
|
|
33
33
|
/** @internal */
|
|
@@ -42,10 +42,10 @@ export declare namespace Resource {
|
|
|
42
42
|
* @since 2.0.0
|
|
43
43
|
* @category models
|
|
44
44
|
*/
|
|
45
|
-
export interface Variance<E, A> {
|
|
45
|
+
export interface Variance<in out E, in out A> {
|
|
46
46
|
readonly [ResourceTypeId]: {
|
|
47
|
-
_E: (_:
|
|
48
|
-
_A: (_:
|
|
47
|
+
_E: (_: E) => E
|
|
48
|
+
_A: (_: A) => A
|
|
49
49
|
}
|
|
50
50
|
}
|
|
51
51
|
}
|
package/src/Runtime.ts
CHANGED
|
@@ -18,7 +18,7 @@ import type { Scheduler } from "./Scheduler.js"
|
|
|
18
18
|
* @since 2.0.0
|
|
19
19
|
* @category models
|
|
20
20
|
*/
|
|
21
|
-
export interface AsyncFiberException<E, A> {
|
|
21
|
+
export interface AsyncFiberException<out E, out A> {
|
|
22
22
|
readonly _tag: "AsyncFiberException"
|
|
23
23
|
readonly fiber: Fiber.RuntimeFiber<E, A>
|
|
24
24
|
}
|
|
@@ -27,7 +27,7 @@ export interface AsyncFiberException<E, A> {
|
|
|
27
27
|
* @since 2.0.0
|
|
28
28
|
* @category models
|
|
29
29
|
*/
|
|
30
|
-
export interface Cancel<E, A> {
|
|
30
|
+
export interface Cancel<out E, out A> {
|
|
31
31
|
(fiberId?: FiberId.FiberId, onExit?: (exit: Exit.Exit<E, A>) => void): void
|
|
32
32
|
}
|
|
33
33
|
|
|
@@ -35,7 +35,7 @@ export interface Cancel<E, A> {
|
|
|
35
35
|
* @since 2.0.0
|
|
36
36
|
* @category models
|
|
37
37
|
*/
|
|
38
|
-
export interface Runtime<R> extends Pipeable {
|
|
38
|
+
export interface Runtime<in R> extends Pipeable {
|
|
39
39
|
/**
|
|
40
40
|
* The context used as initial for forks
|
|
41
41
|
*/
|
package/src/STM.ts
CHANGED
|
@@ -65,7 +65,7 @@ export type STMTypeId = typeof STMTypeId
|
|
|
65
65
|
* @since 2.0.0
|
|
66
66
|
* @category models
|
|
67
67
|
*/
|
|
68
|
-
export interface STM<R, E, A> extends Effect.Effect<R, E, A>, STM.Variance<R, E, A>, Pipeable {
|
|
68
|
+
export interface STM<out R, out E, out A> extends Effect.Effect<R, E, A>, STM.Variance<R, E, A>, Pipeable {
|
|
69
69
|
[Unify.typeSymbol]?: unknown
|
|
70
70
|
[Unify.unifySymbol]?: STMUnify<this>
|
|
71
71
|
[Unify.ignoreSymbol]?: STMUnifyIgnore
|
|
@@ -137,7 +137,7 @@ export declare namespace STM {
|
|
|
137
137
|
* @since 2.0.0
|
|
138
138
|
* @category models
|
|
139
139
|
*/
|
|
140
|
-
export interface Variance<R, E, A> {
|
|
140
|
+
export interface Variance<out R, out E, out A> {
|
|
141
141
|
readonly [STMTypeId]: {
|
|
142
142
|
readonly _R: (_: never) => R
|
|
143
143
|
readonly _E: (_: never) => E
|
|
@@ -150,12 +150,12 @@ export declare namespace STM {
|
|
|
150
150
|
* @category models
|
|
151
151
|
* @since 2.0.0
|
|
152
152
|
*/
|
|
153
|
-
export interface STMGen<R, E, A> {
|
|
153
|
+
export interface STMGen<out R, out E, out A> {
|
|
154
154
|
readonly _R: () => R
|
|
155
155
|
readonly _E: () => E
|
|
156
156
|
readonly _A: () => A
|
|
157
157
|
readonly value: STM<R, E, A>
|
|
158
|
-
|
|
158
|
+
[Symbol.iterator](): Generator<STMGen<R, E, A>, A>
|
|
159
159
|
}
|
|
160
160
|
|
|
161
161
|
/**
|
|
@@ -1208,7 +1208,7 @@ export const isSuccess: <R, E, A>(self: STM<R, E, A>) => STM<R, never, boolean>
|
|
|
1208
1208
|
export const iterate: <R, E, Z>(
|
|
1209
1209
|
initial: Z,
|
|
1210
1210
|
options: {
|
|
1211
|
-
readonly while:
|
|
1211
|
+
readonly while: Predicate<Z>
|
|
1212
1212
|
readonly body: (z: Z) => STM<R, E, Z>
|
|
1213
1213
|
}
|
|
1214
1214
|
) => STM<R, E, Z> = stm.iterate
|
|
@@ -1236,7 +1236,7 @@ export const loop: {
|
|
|
1236
1236
|
<Z, R, E, A>(
|
|
1237
1237
|
initial: Z,
|
|
1238
1238
|
options: {
|
|
1239
|
-
readonly while:
|
|
1239
|
+
readonly while: Predicate<Z>
|
|
1240
1240
|
readonly step: (z: Z) => Z
|
|
1241
1241
|
readonly body: (z: Z) => STM<R, E, A>
|
|
1242
1242
|
readonly discard?: false | undefined
|
|
@@ -1245,7 +1245,7 @@ export const loop: {
|
|
|
1245
1245
|
<Z, R, E, A>(
|
|
1246
1246
|
initial: Z,
|
|
1247
1247
|
options: {
|
|
1248
|
-
readonly while:
|
|
1248
|
+
readonly while: Predicate<Z>
|
|
1249
1249
|
readonly step: (z: Z) => Z
|
|
1250
1250
|
readonly body: (z: Z) => STM<R, E, A>
|
|
1251
1251
|
readonly discard: true
|
|
@@ -1465,8 +1465,13 @@ export const orTry: {
|
|
|
1465
1465
|
* @category traversing
|
|
1466
1466
|
*/
|
|
1467
1467
|
export const partition: {
|
|
1468
|
-
<R, E, A, A2>(
|
|
1469
|
-
|
|
1468
|
+
<R, E, A, A2>(
|
|
1469
|
+
f: (a: A) => STM<R, E, A2>
|
|
1470
|
+
): (elements: Iterable<A>) => STM<R, never, [excluded: Array<E>, satisfying: Array<A2>]>
|
|
1471
|
+
<R, E, A, A2>(
|
|
1472
|
+
elements: Iterable<A>,
|
|
1473
|
+
f: (a: A) => STM<R, E, A2>
|
|
1474
|
+
): STM<R, never, [excluded: Array<E>, satisfying: Array<A2>]>
|
|
1470
1475
|
} = stm.partition
|
|
1471
1476
|
|
|
1472
1477
|
/**
|
|
@@ -1823,11 +1828,17 @@ export const tap: {
|
|
|
1823
1828
|
*/
|
|
1824
1829
|
export const tapBoth: {
|
|
1825
1830
|
<E, XE extends E, R2, E2, A2, A, XA extends A, R3, E3, A3>(
|
|
1826
|
-
options: {
|
|
1831
|
+
options: {
|
|
1832
|
+
readonly onFailure: (error: XE) => STM<R2, E2, A2>
|
|
1833
|
+
readonly onSuccess: (value: XA) => STM<R3, E3, A3>
|
|
1834
|
+
}
|
|
1827
1835
|
): <R>(self: STM<R, E, A>) => STM<R2 | R3 | R, E | E2 | E3, A>
|
|
1828
1836
|
<R, E, XE extends E, R2, E2, A2, A, XA extends A, R3, E3, A3>(
|
|
1829
1837
|
self: STM<R, E, A>,
|
|
1830
|
-
options: {
|
|
1838
|
+
options: {
|
|
1839
|
+
readonly onFailure: (error: XE) => STM<R2, E2, A2>
|
|
1840
|
+
readonly onSuccess: (value: XA) => STM<R3, E3, A3>
|
|
1841
|
+
}
|
|
1831
1842
|
): STM<R | R2 | R3, E | E2 | E3, A>
|
|
1832
1843
|
} = stm.tapBoth
|
|
1833
1844
|
|
|
@@ -2026,7 +2037,7 @@ export const firstSuccessOf = <R, E, A>(effects: Iterable<STM<R, E, A>>): STM<R,
|
|
|
2026
2037
|
suspend<R, E, A>(() => {
|
|
2027
2038
|
const list = Chunk.fromIterable(effects)
|
|
2028
2039
|
if (!Chunk.isNonEmpty(list)) {
|
|
2029
|
-
return dieSync(() => Cause.IllegalArgumentException(`Received an empty collection of effects`))
|
|
2040
|
+
return dieSync(() => new Cause.IllegalArgumentException(`Received an empty collection of effects`))
|
|
2030
2041
|
}
|
|
2031
2042
|
return Chunk.reduce(
|
|
2032
2043
|
Chunk.tailNonEmpty(list),
|
package/src/Schedule.ts
CHANGED
|
@@ -67,7 +67,7 @@ export type ScheduleDriverTypeId = typeof ScheduleDriverTypeId
|
|
|
67
67
|
* @category model
|
|
68
68
|
* @since 2.0.0
|
|
69
69
|
*/
|
|
70
|
-
export interface Schedule<Env, In, Out> extends Schedule.Variance<Env, In, Out>, Pipeable {
|
|
70
|
+
export interface Schedule<out Env, in In, out Out> extends Schedule.Variance<Env, In, Out>, Pipeable {
|
|
71
71
|
/**
|
|
72
72
|
* Initial State
|
|
73
73
|
*/
|
|
@@ -75,11 +75,11 @@ export interface Schedule<Env, In, Out> extends Schedule.Variance<Env, In, Out>,
|
|
|
75
75
|
/**
|
|
76
76
|
* Schedule Step
|
|
77
77
|
*/
|
|
78
|
-
|
|
78
|
+
step(
|
|
79
79
|
now: number,
|
|
80
80
|
input: In,
|
|
81
81
|
state: any
|
|
82
|
-
)
|
|
82
|
+
): Effect.Effect<Env, never, readonly [any, Out, ScheduleDecision.ScheduleDecision]>
|
|
83
83
|
}
|
|
84
84
|
|
|
85
85
|
/**
|
|
@@ -90,7 +90,7 @@ export declare namespace Schedule {
|
|
|
90
90
|
* @since 2.0.0
|
|
91
91
|
* @category models
|
|
92
92
|
*/
|
|
93
|
-
export interface Variance<Env, In, Out> {
|
|
93
|
+
export interface Variance<out Env, in In, out Out> {
|
|
94
94
|
readonly [ScheduleTypeId]: {
|
|
95
95
|
readonly _Env: (_: never) => Env
|
|
96
96
|
readonly _In: (_: In) => void
|
|
@@ -101,7 +101,7 @@ export declare namespace Schedule {
|
|
|
101
101
|
/**
|
|
102
102
|
* @since 2.0.0
|
|
103
103
|
*/
|
|
104
|
-
export interface DriverVariance<Env, In, Out> {
|
|
104
|
+
export interface DriverVariance<out Env, in In, out Out> {
|
|
105
105
|
readonly [ScheduleDriverTypeId]: {
|
|
106
106
|
readonly _Env: (_: never) => Env
|
|
107
107
|
readonly _In: (_: In) => void
|
|
@@ -114,11 +114,11 @@ export declare namespace Schedule {
|
|
|
114
114
|
* @since 2.0.0
|
|
115
115
|
* @category models
|
|
116
116
|
*/
|
|
117
|
-
export interface ScheduleDriver<Env, In, Out> extends Schedule.DriverVariance<Env, In, Out> {
|
|
117
|
+
export interface ScheduleDriver<out Env, in In, out Out> extends Schedule.DriverVariance<Env, In, Out> {
|
|
118
118
|
readonly state: Effect.Effect<never, never, unknown>
|
|
119
119
|
readonly last: Effect.Effect<never, Cause.NoSuchElementException, Out>
|
|
120
120
|
readonly reset: Effect.Effect<never, never, void>
|
|
121
|
-
|
|
121
|
+
next(input: In): Effect.Effect<Env, Option.Option<never>, Out>
|
|
122
122
|
}
|
|
123
123
|
|
|
124
124
|
/**
|
package/src/Scheduler.ts
CHANGED
|
@@ -21,15 +21,15 @@ export type Task = () => void
|
|
|
21
21
|
* @category models
|
|
22
22
|
*/
|
|
23
23
|
export interface Scheduler {
|
|
24
|
-
|
|
25
|
-
|
|
24
|
+
shouldYield(fiber: RuntimeFiber<unknown, unknown>): number | false
|
|
25
|
+
scheduleTask(task: Task, priority: number): void
|
|
26
26
|
}
|
|
27
27
|
|
|
28
28
|
/**
|
|
29
29
|
* @since 2.0.0
|
|
30
30
|
* @category utils
|
|
31
31
|
*/
|
|
32
|
-
export class PriorityBuckets<T = Task> {
|
|
32
|
+
export class PriorityBuckets<in out T = Task> {
|
|
33
33
|
/**
|
|
34
34
|
* @since 2.0.0
|
|
35
35
|
*/
|
package/src/Scope.ts
CHANGED
|
@@ -44,11 +44,11 @@ export interface Scope extends Pipeable {
|
|
|
44
44
|
/**
|
|
45
45
|
* @internal
|
|
46
46
|
*/
|
|
47
|
-
|
|
47
|
+
fork(strategy: ExecutionStrategy.ExecutionStrategy): Effect.Effect<never, never, Scope.Closeable>
|
|
48
48
|
/**
|
|
49
49
|
* @internal
|
|
50
50
|
*/
|
|
51
|
-
|
|
51
|
+
addFinalizer(finalizer: Scope.Finalizer): Effect.Effect<never, never, void>
|
|
52
52
|
}
|
|
53
53
|
|
|
54
54
|
/**
|
|
@@ -61,7 +61,7 @@ export interface CloseableScope extends Scope, Pipeable {
|
|
|
61
61
|
/**
|
|
62
62
|
* @internal
|
|
63
63
|
*/
|
|
64
|
-
|
|
64
|
+
close(exit: Exit.Exit<unknown, unknown>): Effect.Effect<never, never, void>
|
|
65
65
|
}
|
|
66
66
|
|
|
67
67
|
/**
|
package/src/ScopedCache.ts
CHANGED
|
@@ -26,18 +26,18 @@ export type ScopedCacheTypeId = typeof ScopedCacheTypeId
|
|
|
26
26
|
* @since 2.0.0
|
|
27
27
|
* @category models
|
|
28
28
|
*/
|
|
29
|
-
export interface ScopedCache<Key, Error, Value> extends ScopedCache.Variance<Key, Error, Value>, Pipeable {
|
|
29
|
+
export interface ScopedCache<in Key, out Error, out Value> extends ScopedCache.Variance<Key, Error, Value>, Pipeable {
|
|
30
30
|
/**
|
|
31
31
|
* Retrieves the value associated with the specified key if it exists.
|
|
32
32
|
* Otherwise returns `Option.none`.
|
|
33
33
|
*/
|
|
34
|
-
|
|
34
|
+
getOption(key: Key): Effect.Effect<Scope.Scope, Error, Option.Option<Value>>
|
|
35
35
|
|
|
36
36
|
/**
|
|
37
37
|
* Retrieves the value associated with the specified key if it exists and the
|
|
38
38
|
* lookup function has completed. Otherwise returns `Option.none`.
|
|
39
39
|
*/
|
|
40
|
-
|
|
40
|
+
getOptionComplete(key: Key): Effect.Effect<Scope.Scope, never, Option.Option<Value>>
|
|
41
41
|
|
|
42
42
|
/**
|
|
43
43
|
* Returns statistics for this cache.
|
|
@@ -49,24 +49,24 @@ export interface ScopedCache<Key, Error, Value> extends ScopedCache.Variance<Key
|
|
|
49
49
|
* cache. Sometime `contains` can return true if the resource is currently
|
|
50
50
|
* being created but not yet totally created.
|
|
51
51
|
*/
|
|
52
|
-
|
|
52
|
+
contains(key: Key): Effect.Effect<never, never, boolean>
|
|
53
53
|
|
|
54
54
|
/**
|
|
55
55
|
* Return statistics for the specified entry.
|
|
56
56
|
*/
|
|
57
|
-
|
|
57
|
+
entryStats(key: Key): Effect.Effect<never, never, Option.Option<Cache.EntryStats>>
|
|
58
58
|
|
|
59
59
|
/**
|
|
60
60
|
* Gets the value from the cache if it exists or otherwise computes it, the
|
|
61
61
|
* release action signals to the cache that the value is no longer being used
|
|
62
62
|
* and can potentially be finalized subject to the policies of the cache.
|
|
63
63
|
*/
|
|
64
|
-
|
|
64
|
+
get(key: Key): Effect.Effect<Scope.Scope, Error, Value>
|
|
65
65
|
|
|
66
66
|
/**
|
|
67
67
|
* Invalidates the resource associated with the specified key.
|
|
68
68
|
*/
|
|
69
|
-
|
|
69
|
+
invalidate(key: Key): Effect.Effect<never, never, void>
|
|
70
70
|
|
|
71
71
|
/**
|
|
72
72
|
* Invalidates all values in the cache.
|
|
@@ -81,7 +81,7 @@ export interface ScopedCache<Key, Error, Value> extends ScopedCache.Variance<Key
|
|
|
81
81
|
* computed, concurrent call the .get will use the old resource if this one is
|
|
82
82
|
* not expired.
|
|
83
83
|
*/
|
|
84
|
-
|
|
84
|
+
refresh(key: Key): Effect.Effect<never, Error, void>
|
|
85
85
|
|
|
86
86
|
/**
|
|
87
87
|
* Returns the approximate number of values in the cache.
|
|
@@ -97,7 +97,7 @@ export declare namespace ScopedCache {
|
|
|
97
97
|
* @since 2.0.0
|
|
98
98
|
* @category models
|
|
99
99
|
*/
|
|
100
|
-
export interface Variance<Key, Error, Value> {
|
|
100
|
+
export interface Variance<in Key, out Error, out Value> {
|
|
101
101
|
readonly [ScopedCacheTypeId]: {
|
|
102
102
|
_Key: (_: Key) => void
|
|
103
103
|
_Error: (_: never) => Error
|
package/src/ScopedRef.ts
CHANGED
|
@@ -30,7 +30,7 @@ export type ScopedRefTypeId = typeof ScopedRefTypeId
|
|
|
30
30
|
* @since 2.0.0
|
|
31
31
|
* @category models
|
|
32
32
|
*/
|
|
33
|
-
export interface ScopedRef<A> extends ScopedRef.Variance<A>, Pipeable {
|
|
33
|
+
export interface ScopedRef<in out A> extends ScopedRef.Variance<A>, Pipeable {
|
|
34
34
|
/** @internal */
|
|
35
35
|
readonly ref: Synchronized.SynchronizedRef<readonly [Scope.Scope.Closeable, A]>
|
|
36
36
|
}
|
|
@@ -43,9 +43,9 @@ export declare namespace ScopedRef {
|
|
|
43
43
|
* @since 2.0.0
|
|
44
44
|
* @category models
|
|
45
45
|
*/
|
|
46
|
-
export interface Variance<A> {
|
|
46
|
+
export interface Variance<in out A> {
|
|
47
47
|
readonly [ScopedRefTypeId]: {
|
|
48
|
-
readonly _A: (_:
|
|
48
|
+
readonly _A: (_: A) => A
|
|
49
49
|
}
|
|
50
50
|
}
|
|
51
51
|
}
|
|
@@ -26,7 +26,7 @@ import * as internal from "./internal/channel/singleProducerAsyncInput.js"
|
|
|
26
26
|
* @since 2.0.0
|
|
27
27
|
* @category models
|
|
28
28
|
*/
|
|
29
|
-
export interface SingleProducerAsyncInput<Err, Elem, Done>
|
|
29
|
+
export interface SingleProducerAsyncInput<in out Err, in out Elem, in out Done>
|
|
30
30
|
extends AsyncInputProducer<Err, Elem, Done>, AsyncInputConsumer<Err, Elem, Done>
|
|
31
31
|
{
|
|
32
32
|
readonly close: Effect.Effect<never, never, unknown>
|
|
@@ -39,11 +39,11 @@ export interface SingleProducerAsyncInput<Err, Elem, Done>
|
|
|
39
39
|
* @since 2.0.0
|
|
40
40
|
* @category models
|
|
41
41
|
*/
|
|
42
|
-
export interface AsyncInputProducer<Err, Elem, Done> {
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
42
|
+
export interface AsyncInputProducer<in Err, in Elem, in Done> {
|
|
43
|
+
awaitRead(): Effect.Effect<never, never, unknown>
|
|
44
|
+
done(value: Done): Effect.Effect<never, never, unknown>
|
|
45
|
+
emit(element: Elem): Effect.Effect<never, never, unknown>
|
|
46
|
+
error(cause: Cause.Cause<Err>): Effect.Effect<never, never, unknown>
|
|
47
47
|
}
|
|
48
48
|
|
|
49
49
|
/**
|
|
@@ -52,7 +52,7 @@ export interface AsyncInputProducer<Err, Elem, Done> {
|
|
|
52
52
|
* @since 2.0.0
|
|
53
53
|
* @category models
|
|
54
54
|
*/
|
|
55
|
-
export interface AsyncInputConsumer<Err, Elem, Done> {
|
|
55
|
+
export interface AsyncInputConsumer<out Err, out Elem, out Done> {
|
|
56
56
|
takeWith<A>(
|
|
57
57
|
onError: (cause: Cause.Cause<Err>) => A,
|
|
58
58
|
onElement: (element: Elem) => A,
|