effect 2.0.0-next.43 → 2.0.0-next.45
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/Brand/dist/effect-Brand.cjs.dev.js +2 -2
- package/Brand/dist/effect-Brand.cjs.prod.js +2 -2
- package/Cache/dist/effect-Cache.cjs.dev.js +27 -27
- package/Cache/dist/effect-Cache.cjs.prod.js +27 -27
- package/Cause/dist/effect-Cause.cjs.dev.js +16 -16
- package/Cause/dist/effect-Cause.cjs.mjs +1 -1
- package/Cause/dist/effect-Cause.cjs.prod.js +16 -16
- package/Cause/dist/effect-Cause.esm.js +4 -4
- package/Channel/dist/effect-Channel.cjs.dev.js +49 -49
- package/Channel/dist/effect-Channel.cjs.mjs +3 -3
- package/Channel/dist/effect-Channel.cjs.prod.js +49 -49
- package/Channel/dist/effect-Channel.esm.js +8 -8
- package/ChannelSingleProducerAsyncInput/dist/effect-ChannelSingleProducerAsyncInput.cjs.dev.js +35 -35
- package/ChannelSingleProducerAsyncInput/dist/effect-ChannelSingleProducerAsyncInput.cjs.prod.js +35 -35
- package/Chunk/dist/effect-Chunk.cjs.dev.js +2 -2
- package/Chunk/dist/effect-Chunk.cjs.prod.js +2 -2
- package/Clock/dist/effect-Clock.cjs.dev.js +13 -13
- package/Clock/dist/effect-Clock.cjs.prod.js +13 -13
- package/Config/dist/effect-Config.cjs.dev.js +10 -10
- package/Config/dist/effect-Config.cjs.prod.js +10 -10
- package/ConfigError/dist/effect-ConfigError.cjs.dev.js +3 -3
- package/ConfigError/dist/effect-ConfigError.cjs.prod.js +3 -3
- package/ConfigProvider/dist/effect-ConfigProvider.cjs.dev.js +12 -12
- package/ConfigProvider/dist/effect-ConfigProvider.cjs.prod.js +12 -12
- package/ConfigProviderPathPatch/dist/effect-ConfigProviderPathPatch.cjs.dev.js +4 -4
- package/ConfigProviderPathPatch/dist/effect-ConfigProviderPathPatch.cjs.prod.js +4 -4
- package/ConfigSecret/dist/effect-ConfigSecret.cjs.dev.js +3 -3
- package/ConfigSecret/dist/effect-ConfigSecret.cjs.prod.js +3 -3
- package/Console/dist/effect-Console.cjs.dev.js +31 -31
- package/Console/dist/effect-Console.cjs.prod.js +31 -31
- package/Context/dist/effect-Context.cjs.dev.js +3 -3
- package/Context/dist/effect-Context.cjs.prod.js +3 -3
- package/DefaultServices/dist/effect-DefaultServices.cjs.dev.js +13 -13
- package/DefaultServices/dist/effect-DefaultServices.cjs.prod.js +13 -13
- package/Deferred/dist/effect-Deferred.cjs.dev.js +7 -7
- package/Deferred/dist/effect-Deferred.cjs.prod.js +7 -7
- package/Differ/dist/effect-Differ.cjs.dev.js +4 -4
- package/Differ/dist/effect-Differ.cjs.prod.js +4 -4
- package/Duration/dist/effect-Duration.cjs.dev.js +2 -2
- package/Duration/dist/effect-Duration.cjs.prod.js +2 -2
- package/Effect/dist/effect-Effect.cjs.dev.js +41 -41
- package/Effect/dist/effect-Effect.cjs.prod.js +41 -41
- package/Effectable/dist/effect-Effectable.cjs.dev.js +24 -13
- package/Effectable/dist/effect-Effectable.cjs.mjs +5 -4
- package/Effectable/dist/effect-Effectable.cjs.prod.js +24 -13
- package/Effectable/dist/effect-Effectable.esm.js +15 -5
- package/Either/dist/effect-Either.cjs.dev.js +2 -2
- package/Either/dist/effect-Either.cjs.prod.js +2 -2
- package/Encoding/dist/effect-Encoding.cjs.dev.js +2 -2
- package/Encoding/dist/effect-Encoding.cjs.prod.js +2 -2
- package/Error/dist/effect-Error.cjs.dev.js +35 -35
- package/Error/dist/effect-Error.cjs.prod.js +35 -35
- package/Error/dist/effect-Error.esm.js +2 -2
- package/ExecutionStrategy/dist/effect-ExecutionStrategy.cjs.dev.js +2 -2
- package/ExecutionStrategy/dist/effect-ExecutionStrategy.cjs.prod.js +2 -2
- package/Exit/dist/effect-Exit.cjs.dev.js +7 -7
- package/Exit/dist/effect-Exit.cjs.prod.js +7 -7
- package/Fiber/dist/effect-Fiber.cjs.dev.js +28 -28
- package/Fiber/dist/effect-Fiber.cjs.prod.js +28 -28
- package/FiberId/dist/effect-FiberId.cjs.dev.js +4 -4
- package/FiberId/dist/effect-FiberId.cjs.prod.js +4 -4
- package/FiberRef/dist/effect-FiberRef.cjs.dev.js +28 -28
- package/FiberRef/dist/effect-FiberRef.cjs.prod.js +28 -28
- package/FiberRefs/dist/effect-FiberRefs.cjs.dev.js +8 -8
- package/FiberRefs/dist/effect-FiberRefs.cjs.prod.js +8 -8
- package/FiberRefsPatch/dist/effect-FiberRefsPatch.cjs.dev.js +9 -9
- package/FiberRefsPatch/dist/effect-FiberRefsPatch.cjs.prod.js +9 -9
- package/GroupBy/dist/effect-GroupBy.cjs.dev.js +41 -41
- package/GroupBy/dist/effect-GroupBy.cjs.prod.js +41 -41
- package/HashMap/dist/effect-HashMap.cjs.dev.js +19 -19
- package/HashMap/dist/effect-HashMap.cjs.prod.js +19 -19
- package/HashSet/dist/effect-HashSet.cjs.dev.js +19 -19
- package/HashSet/dist/effect-HashSet.cjs.prod.js +19 -19
- package/KeyedPool/dist/effect-KeyedPool.cjs.dev.js +32 -32
- package/KeyedPool/dist/effect-KeyedPool.cjs.prod.js +32 -32
- package/Layer/dist/effect-Layer.cjs.dev.js +31 -31
- package/Layer/dist/effect-Layer.cjs.prod.js +31 -31
- package/List/dist/effect-List.cjs.dev.js +2 -2
- package/List/dist/effect-List.cjs.prod.js +2 -2
- package/LogLevel/dist/effect-LogLevel.cjs.dev.js +7 -7
- package/LogLevel/dist/effect-LogLevel.cjs.prod.js +7 -7
- package/Logger/dist/effect-Logger.cjs.dev.js +32 -32
- package/Logger/dist/effect-Logger.cjs.prod.js +32 -32
- package/Metric/dist/effect-Metric.cjs.dev.js +26 -26
- package/Metric/dist/effect-Metric.cjs.prod.js +26 -26
- package/MetricBoundaries/dist/effect-MetricBoundaries.cjs.dev.js +3 -3
- package/MetricBoundaries/dist/effect-MetricBoundaries.cjs.prod.js +3 -3
- package/MetricHook/dist/effect-MetricHook.cjs.dev.js +5 -5
- package/MetricHook/dist/effect-MetricHook.cjs.prod.js +5 -5
- package/MetricKey/dist/effect-MetricKey.cjs.dev.js +5 -5
- package/MetricKey/dist/effect-MetricKey.cjs.prod.js +5 -5
- package/MetricKeyType/dist/effect-MetricKeyType.cjs.dev.js +3 -3
- package/MetricKeyType/dist/effect-MetricKeyType.cjs.prod.js +3 -3
- package/MetricPolling/dist/effect-MetricPolling.cjs.dev.js +29 -29
- package/MetricPolling/dist/effect-MetricPolling.cjs.prod.js +29 -29
- package/MetricRegistry/dist/effect-MetricRegistry.cjs.dev.js +7 -7
- package/MetricRegistry/dist/effect-MetricRegistry.cjs.prod.js +7 -7
- package/MetricState/dist/effect-MetricState.cjs.dev.js +1 -1
- package/MetricState/dist/effect-MetricState.cjs.prod.js +1 -1
- package/MutableHashMap/dist/effect-MutableHashMap.cjs.dev.js +3 -3
- package/MutableHashMap/dist/effect-MutableHashMap.cjs.prod.js +3 -3
- package/MutableHashSet/dist/effect-MutableHashSet.cjs.dev.js +3 -3
- package/MutableHashSet/dist/effect-MutableHashSet.cjs.prod.js +3 -3
- package/MutableQueue/dist/effect-MutableQueue.cjs.dev.js +2 -2
- package/MutableQueue/dist/effect-MutableQueue.cjs.prod.js +2 -2
- package/Option/dist/effect-Option.cjs.dev.js +2 -2
- package/Option/dist/effect-Option.cjs.prod.js +2 -2
- package/Pool/dist/effect-Pool.cjs.dev.js +28 -28
- package/Pool/dist/effect-Pool.cjs.prod.js +28 -28
- package/PubSub/dist/effect-PubSub.cjs.d.mts +2 -0
- package/PubSub/dist/effect-PubSub.cjs.d.mts.map +1 -0
- package/PubSub/dist/effect-PubSub.cjs.d.ts +2 -0
- package/PubSub/dist/effect-PubSub.cjs.d.ts.map +1 -0
- package/{Hub/dist/effect-Hub.cjs.dev.js → PubSub/dist/effect-PubSub.cjs.dev.js} +162 -162
- package/PubSub/dist/effect-PubSub.cjs.js +7 -0
- package/{Hub/dist/effect-Hub.cjs.mjs → PubSub/dist/effect-PubSub.cjs.mjs} +1 -1
- package/{Hub/dist/effect-Hub.cjs.prod.js → PubSub/dist/effect-PubSub.cjs.prod.js} +162 -162
- package/{Hub/dist/effect-Hub.esm.js → PubSub/dist/effect-PubSub.esm.js} +15 -15
- package/PubSub/package.json +4 -0
- package/Queue/dist/effect-Queue.cjs.dev.js +27 -27
- package/Queue/dist/effect-Queue.cjs.prod.js +27 -27
- package/Random/dist/effect-Random.cjs.dev.js +13 -13
- package/Random/dist/effect-Random.cjs.prod.js +13 -13
- package/ReadonlyArray/dist/effect-ReadonlyArray.cjs.dev.js +2 -2
- package/ReadonlyArray/dist/effect-ReadonlyArray.cjs.prod.js +2 -2
- package/ReadonlyRecord/dist/effect-ReadonlyRecord.cjs.dev.js +2 -2
- package/ReadonlyRecord/dist/effect-ReadonlyRecord.cjs.prod.js +2 -2
- package/RedBlackTree/dist/effect-RedBlackTree.cjs.dev.js +2 -2
- package/RedBlackTree/dist/effect-RedBlackTree.cjs.prod.js +2 -2
- package/Ref/dist/effect-Ref.cjs.dev.js +8 -8
- package/Ref/dist/effect-Ref.cjs.prod.js +8 -8
- package/Reloadable/dist/effect-Reloadable.cjs.dev.js +40 -40
- package/Reloadable/dist/effect-Reloadable.cjs.prod.js +40 -40
- package/Request/dist/effect-Request.cjs.dev.js +28 -28
- package/Request/dist/effect-Request.cjs.prod.js +28 -28
- package/RequestBlock/dist/effect-RequestBlock.cjs.dev.js +35 -35
- package/RequestBlock/dist/effect-RequestBlock.cjs.prod.js +35 -35
- package/RequestResolver/dist/effect-RequestResolver.cjs.dev.js +35 -35
- package/RequestResolver/dist/effect-RequestResolver.cjs.prod.js +35 -35
- package/Resource/dist/effect-Resource.cjs.dev.js +33 -33
- package/Resource/dist/effect-Resource.cjs.prod.js +33 -33
- package/Runtime/dist/effect-Runtime.cjs.dev.js +29 -29
- package/Runtime/dist/effect-Runtime.cjs.prod.js +29 -29
- package/RuntimeFlags/dist/effect-RuntimeFlags.cjs.dev.js +32 -32
- package/RuntimeFlags/dist/effect-RuntimeFlags.cjs.prod.js +32 -32
- package/RuntimeFlagsPatch/dist/effect-RuntimeFlagsPatch.cjs.dev.js +5 -5
- package/RuntimeFlagsPatch/dist/effect-RuntimeFlagsPatch.cjs.prod.js +5 -5
- package/STM/dist/effect-STM.cjs.dev.js +43 -43
- package/STM/dist/effect-STM.cjs.prod.js +43 -43
- package/Schedule/dist/effect-Schedule.cjs.dev.js +18 -18
- package/Schedule/dist/effect-Schedule.cjs.prod.js +18 -18
- package/ScheduleDecision/dist/effect-ScheduleDecision.cjs.dev.js +2 -2
- package/ScheduleDecision/dist/effect-ScheduleDecision.cjs.prod.js +2 -2
- package/ScheduleInterval/dist/effect-ScheduleInterval.cjs.dev.js +2 -2
- package/ScheduleInterval/dist/effect-ScheduleInterval.cjs.prod.js +2 -2
- package/ScheduleIntervals/dist/effect-ScheduleIntervals.cjs.dev.js +2 -2
- package/ScheduleIntervals/dist/effect-ScheduleIntervals.cjs.prod.js +2 -2
- package/Scheduler/dist/effect-Scheduler.cjs.dev.js +7 -7
- package/Scheduler/dist/effect-Scheduler.cjs.prod.js +7 -7
- package/Scope/dist/effect-Scope.cjs.dev.js +26 -26
- package/Scope/dist/effect-Scope.cjs.prod.js +26 -26
- package/ScopedCache/dist/effect-ScopedCache.cjs.dev.js +46 -46
- package/ScopedCache/dist/effect-ScopedCache.cjs.prod.js +46 -46
- package/ScopedRef/dist/effect-ScopedRef.cjs.dev.js +30 -30
- package/ScopedRef/dist/effect-ScopedRef.cjs.prod.js +30 -30
- package/Sink/dist/effect-Sink.cjs.dev.js +42 -42
- package/Sink/dist/effect-Sink.cjs.mjs +1 -1
- package/Sink/dist/effect-Sink.cjs.prod.js +42 -42
- package/Sink/dist/effect-Sink.esm.js +5 -5
- package/SortedMap/dist/effect-SortedMap.cjs.dev.js +2 -2
- package/SortedMap/dist/effect-SortedMap.cjs.prod.js +2 -2
- package/SortedSet/dist/effect-SortedSet.cjs.dev.js +2 -2
- package/SortedSet/dist/effect-SortedSet.cjs.prod.js +2 -2
- package/Stream/dist/effect-Stream.cjs.dev.js +59 -59
- package/Stream/dist/effect-Stream.cjs.mjs +5 -5
- package/Stream/dist/effect-Stream.cjs.prod.js +59 -59
- package/Stream/dist/effect-Stream.esm.js +15 -15
- package/Streamable/dist/effect-Streamable.cjs.d.mts +2 -0
- package/Streamable/dist/effect-Streamable.cjs.d.mts.map +1 -0
- package/Streamable/dist/effect-Streamable.cjs.d.ts +2 -0
- package/Streamable/dist/effect-Streamable.cjs.d.ts.map +1 -0
- package/Streamable/dist/effect-Streamable.cjs.dev.js +152 -0
- package/Streamable/dist/effect-Streamable.cjs.js +7 -0
- package/Streamable/dist/effect-Streamable.cjs.mjs +3 -0
- package/Streamable/dist/effect-Streamable.cjs.prod.js +152 -0
- package/Streamable/dist/effect-Streamable.esm.js +42 -0
- package/Streamable/package.json +4 -0
- package/String/dist/effect-String.cjs.dev.js +2 -2
- package/String/dist/effect-String.cjs.prod.js +2 -2
- package/SubscriptionRef/dist/effect-SubscriptionRef.cjs.dev.js +46 -46
- package/SubscriptionRef/dist/effect-SubscriptionRef.cjs.prod.js +46 -46
- package/Supervisor/dist/effect-Supervisor.cjs.dev.js +33 -33
- package/Supervisor/dist/effect-Supervisor.cjs.prod.js +33 -33
- package/SynchronizedRef/dist/effect-SynchronizedRef.cjs.dev.js +29 -29
- package/SynchronizedRef/dist/effect-SynchronizedRef.cjs.prod.js +29 -29
- package/TArray/dist/effect-TArray.cjs.dev.js +45 -45
- package/TArray/dist/effect-TArray.cjs.prod.js +45 -45
- package/TDeferred/dist/effect-TDeferred.cjs.dev.js +44 -44
- package/TDeferred/dist/effect-TDeferred.cjs.prod.js +44 -44
- package/TMap/dist/effect-TMap.cjs.dev.js +46 -46
- package/TMap/dist/effect-TMap.cjs.prod.js +46 -46
- package/TPriorityQueue/dist/effect-TPriorityQueue.cjs.dev.js +43 -43
- package/TPriorityQueue/dist/effect-TPriorityQueue.cjs.prod.js +43 -43
- package/TPubSub/dist/effect-TPubSub.cjs.d.mts +2 -0
- package/TPubSub/dist/effect-TPubSub.cjs.d.mts.map +1 -0
- package/TPubSub/dist/effect-TPubSub.cjs.d.ts +2 -0
- package/TPubSub/dist/effect-TPubSub.cjs.d.ts.map +1 -0
- package/{THub/dist/effect-THub.cjs.dev.js → TPubSub/dist/effect-TPubSub.cjs.dev.js} +98 -98
- package/TPubSub/dist/effect-TPubSub.cjs.js +7 -0
- package/{THub/dist/effect-THub.cjs.mjs → TPubSub/dist/effect-TPubSub.cjs.mjs} +2 -2
- package/{THub/dist/effect-THub.cjs.prod.js → TPubSub/dist/effect-TPubSub.cjs.prod.js} +98 -98
- package/TPubSub/dist/effect-TPubSub.esm.js +157 -0
- package/TPubSub/package.json +4 -0
- package/TQueue/dist/effect-TQueue.cjs.dev.js +45 -45
- package/TQueue/dist/effect-TQueue.cjs.prod.js +45 -45
- package/TRandom/dist/effect-TRandom.cjs.dev.js +45 -45
- package/TRandom/dist/effect-TRandom.cjs.prod.js +45 -45
- package/TReentrantLock/dist/effect-TReentrantLock.cjs.dev.js +43 -43
- package/TReentrantLock/dist/effect-TReentrantLock.cjs.prod.js +43 -43
- package/TRef/dist/effect-TRef.cjs.dev.js +43 -43
- package/TRef/dist/effect-TRef.cjs.prod.js +43 -43
- package/TSemaphore/dist/effect-TSemaphore.cjs.dev.js +44 -44
- package/TSemaphore/dist/effect-TSemaphore.cjs.prod.js +44 -44
- package/TSet/dist/effect-TSet.cjs.dev.js +46 -46
- package/TSet/dist/effect-TSet.cjs.prod.js +46 -46
- package/Take/dist/effect-Take.cjs.dev.js +35 -35
- package/Take/dist/effect-Take.cjs.prod.js +35 -35
- package/TestAnnotation/dist/effect-TestAnnotation.cjs.dev.js +4 -4
- package/TestAnnotation/dist/effect-TestAnnotation.cjs.prod.js +4 -4
- package/TestAnnotations/dist/effect-TestAnnotations.cjs.dev.js +21 -21
- package/TestAnnotations/dist/effect-TestAnnotations.cjs.prod.js +21 -21
- package/TestClock/dist/effect-TestClock.cjs.dev.js +45 -45
- package/TestClock/dist/effect-TestClock.cjs.prod.js +45 -45
- package/TestConfig/dist/effect-TestConfig.cjs.dev.js +3 -3
- package/TestConfig/dist/effect-TestConfig.cjs.prod.js +3 -3
- package/TestContext/dist/effect-TestContext.cjs.dev.js +34 -34
- package/TestContext/dist/effect-TestContext.cjs.prod.js +34 -34
- package/TestLive/dist/effect-TestLive.cjs.dev.js +13 -13
- package/TestLive/dist/effect-TestLive.cjs.prod.js +13 -13
- package/TestServices/dist/effect-TestServices.cjs.dev.js +38 -38
- package/TestServices/dist/effect-TestServices.cjs.prod.js +38 -38
- package/TestSized/dist/effect-TestSized.cjs.dev.js +7 -7
- package/TestSized/dist/effect-TestSized.cjs.prod.js +7 -7
- package/Tracer/dist/effect-Tracer.cjs.dev.js +13 -13
- package/Tracer/dist/effect-Tracer.cjs.prod.js +13 -13
- package/dist/{Context-01a123ac.cjs.prod.js → Context-0b0d0e29.cjs.prod.js} +2 -2
- package/dist/{Context-593661f6.cjs.dev.js → Context-1f857844.cjs.dev.js} +2 -2
- package/dist/{Effectable-2f022879.cjs.dev.js → Effectable-07258ce9.cjs.dev.js} +10 -8
- package/dist/{Effectable-cd8f3a96.cjs.prod.js → Effectable-c2cd2b50.cjs.prod.js} +10 -8
- package/dist/{Either-7a881c7a.cjs.prod.js → Either-a974e241.cjs.prod.js} +3 -3
- package/dist/{Either-12bbe00c.cjs.dev.js → Either-d49a9926.cjs.dev.js} +3 -3
- package/dist/{ExecutionStrategy-14d3053a.cjs.prod.js → ExecutionStrategy-4808fe5d.cjs.prod.js} +2 -2
- package/dist/{ExecutionStrategy-70f1a920.cjs.dev.js → ExecutionStrategy-7d9d457b.cjs.dev.js} +2 -2
- package/dist/{HashSet-6257b66d.cjs.prod.js → HashSet-0ffa0e48.cjs.prod.js} +32 -32
- package/dist/{HashSet-0b4ff1e4.cjs.dev.js → HashSet-606682d1.cjs.dev.js} +32 -32
- package/dist/{Ref-74b592a4.cjs.dev.js → Ref-4009db78.cjs.dev.js} +1 -1
- package/dist/{Ref-a3a4e50d.cjs.prod.js → Ref-590d873e.cjs.prod.js} +1 -1
- package/dist/{cache-3a55a13a.cjs.prod.js → cache-8a5a4a2d.cjs.prod.js} +13 -13
- package/dist/{cache-83d14f6e.cjs.dev.js → cache-fe0cd2f2.cjs.dev.js} +13 -13
- package/dist/{circular-c3ce70f4.cjs.prod.js → circular-2d1d95bc.cjs.prod.js} +6 -6
- package/dist/{circular-2162b720.cjs.dev.js → circular-325c6904.cjs.dev.js} +6 -6
- package/dist/{circular-a4887ee9.cjs.dev.js → circular-95bf2834.cjs.dev.js} +33 -33
- package/dist/{circular-f72fcb1d.cjs.prod.js → circular-ccfbed47.cjs.prod.js} +33 -33
- package/dist/{config-d0ddc159.cjs.prod.js → config-a72429ce.cjs.prod.js} +3 -3
- package/dist/{config-80900693.cjs.dev.js → config-e4643c63.cjs.dev.js} +3 -3
- package/dist/{configProvider-93617d6d.cjs.prod.js → configProvider-16bc7ff6.cjs.prod.js} +29 -29
- package/dist/{configProvider-ce43fdbf.cjs.dev.js → configProvider-3cdbe5f3.cjs.dev.js} +29 -29
- package/dist/{core-b2dfee8d.cjs.dev.js → core-44c23eaf.cjs.dev.js} +3 -3
- package/dist/{core-0b0539de.cjs.prod.js → core-c87f1ac0.cjs.prod.js} +730 -730
- package/dist/{core-8ff5a82c.cjs.prod.js → core-ce4f24fc.cjs.prod.js} +3 -3
- package/dist/{core-b4d7b4f5.cjs.dev.js → core-efee9c5a.cjs.dev.js} +730 -730
- package/dist/{core-effect-c65770cd.cjs.prod.js → core-effect-867f1514.cjs.prod.js} +75 -73
- package/dist/{core-effect-892f3686.cjs.dev.js → core-effect-f99b558c.cjs.dev.js} +75 -73
- package/dist/{dataSource-837686e6.cjs.prod.js → dataSource-2fe48092.cjs.prod.js} +2 -2
- package/dist/{dataSource-5227437c.cjs.dev.js → dataSource-642004b6.cjs.dev.js} +2 -2
- package/dist/declarations/src/Cause.d.ts +6 -6
- package/dist/declarations/src/Cause.d.ts.map +1 -1
- package/dist/declarations/src/Channel.d.ts +7 -7
- package/dist/declarations/src/Channel.d.ts.map +1 -1
- package/dist/declarations/src/Effect.d.ts +4 -2
- package/dist/declarations/src/Effect.d.ts.map +1 -1
- package/dist/declarations/src/Effectable.d.ts +14 -4
- package/dist/declarations/src/Effectable.d.ts.map +1 -1
- package/dist/declarations/src/Metric.d.ts +31 -7
- package/dist/declarations/src/Metric.d.ts.map +1 -1
- package/dist/declarations/src/MetricHook.d.ts +7 -4
- package/dist/declarations/src/MetricHook.d.ts.map +1 -1
- package/dist/declarations/src/MetricKey.d.ts +24 -4
- package/dist/declarations/src/MetricKey.d.ts.map +1 -1
- package/dist/declarations/src/MetricKeyType.d.ts +9 -6
- package/dist/declarations/src/MetricKeyType.d.ts.map +1 -1
- package/dist/declarations/src/MetricRegistry.d.ts +2 -2
- package/dist/declarations/src/MetricRegistry.d.ts.map +1 -1
- package/dist/declarations/src/MetricState.d.ts +15 -9
- package/dist/declarations/src/MetricState.d.ts.map +1 -1
- package/dist/declarations/src/{Hub.d.ts → PubSub.d.ts} +38 -38
- package/dist/declarations/src/PubSub.d.ts.map +1 -0
- package/dist/declarations/src/Sink.d.ts +4 -4
- package/dist/declarations/src/Sink.d.ts.map +1 -1
- package/dist/declarations/src/Stream.d.ts +24 -24
- package/dist/declarations/src/Stream.d.ts.map +1 -1
- package/dist/declarations/src/Streamable.d.ts +27 -0
- package/dist/declarations/src/Streamable.d.ts.map +1 -0
- package/dist/declarations/src/SubscriptionRef.d.ts.map +1 -1
- package/dist/declarations/src/TPubSub.d.ts +146 -0
- package/dist/declarations/src/TPubSub.d.ts.map +1 -0
- package/dist/declarations/src/index.d.ts +11 -7
- package/dist/declarations/src/index.d.ts.map +1 -1
- package/dist/{defaultServices-086b8ac9.cjs.prod.js → defaultServices-7e943cae.cjs.prod.js} +6 -6
- package/dist/{defaultServices-5530ff0e.cjs.dev.js → defaultServices-eb04fba1.cjs.dev.js} +6 -6
- package/dist/effect.cjs.dev.js +9 -6
- package/dist/effect.cjs.mjs +3 -2
- package/dist/effect.cjs.prod.js +9 -6
- package/dist/effect.esm.js +6 -4
- package/dist/{fiber-1bfb4c1d.cjs.dev.js → fiber-4d2acba3.cjs.dev.js} +12 -12
- package/dist/{fiber-2eb0a4c1.cjs.prod.js → fiber-588d28c2.cjs.prod.js} +12 -12
- package/dist/{fiberRefs-be6b6a70.cjs.prod.js → fiberRefs-51f2a630.cjs.prod.js} +1 -1
- package/dist/{fiberRefs-be4fae6a.cjs.dev.js → fiberRefs-e08092fb.cjs.dev.js} +1 -1
- package/dist/{fiberRuntime-e0db0ab6.cjs.dev.js → fiberRuntime-6e93adff.cjs.dev.js} +107 -102
- package/dist/{fiberRuntime-af2d0ca1.cjs.prod.js → fiberRuntime-7287c284.cjs.prod.js} +107 -102
- package/dist/{groupBy-bd943372.cjs.dev.js → groupBy-1e05ffd4.cjs.dev.js} +4 -4
- package/dist/{groupBy-7ce46ea3.cjs.prod.js → groupBy-6d5815f3.cjs.prod.js} +4 -4
- package/dist/{hook-470b717e.cjs.prod.js → hook-39ebe8b3.cjs.prod.js} +8 -4
- package/dist/{hook-e72b20fd.cjs.dev.js → hook-f9a9b660.cjs.dev.js} +8 -4
- package/dist/{key-378a6a2c.cjs.prod.js → key-66f61406.cjs.prod.js} +3 -3
- package/dist/{key-f0a1408a.cjs.dev.js → key-6d9b350e.cjs.dev.js} +3 -3
- package/dist/{keyType-55f27f07.cjs.dev.js → keyType-22634b88.cjs.dev.js} +9 -2
- package/dist/{keyType-cf67c69c.cjs.prod.js → keyType-8ff33fde.cjs.prod.js} +9 -2
- package/dist/{layer-9cbb61ce.cjs.dev.js → layer-e3745d23.cjs.dev.js} +33 -33
- package/dist/{layer-3b1b0e2e.cjs.prod.js → layer-f8cd3f83.cjs.prod.js} +33 -33
- package/dist/{patch-a1b2802f.cjs.dev.js → patch-b051ae7e.cjs.dev.js} +1 -1
- package/dist/{patch-c4d6c61e.cjs.prod.js → patch-b8d22fb3.cjs.prod.js} +1 -1
- package/dist/{pathPatch-15c8d723.cjs.prod.js → pathPatch-bdcb0e3f.cjs.prod.js} +1 -1
- package/dist/{pathPatch-d9d41297.cjs.dev.js → pathPatch-fc0ba157.cjs.dev.js} +1 -1
- package/dist/{pool-b5c7d254.cjs.prod.js → pool-6c034854.cjs.prod.js} +31 -31
- package/dist/{pool-29b03fb2.cjs.dev.js → pool-a52582b9.cjs.dev.js} +31 -31
- package/dist/{query-d5eefc43.cjs.prod.js → query-59d346d8.cjs.prod.js} +11 -11
- package/dist/{query-67a7c448.cjs.dev.js → query-ab3d963c.cjs.dev.js} +11 -11
- package/dist/{queue-997d6e51.cjs.dev.js → queue-50c41726.cjs.dev.js} +22 -22
- package/dist/{queue-38614769.cjs.prod.js → queue-fcd6126f.cjs.prod.js} +22 -22
- package/dist/{registry-013ecdde.cjs.prod.js → registry-3809a602.cjs.prod.js} +4 -4
- package/dist/{registry-1099de3f.cjs.dev.js → registry-fc4cef7b.cjs.dev.js} +4 -4
- package/dist/{runtime-15cc9cc5.cjs.dev.js → runtime-9047860e.cjs.dev.js} +7 -7
- package/dist/{runtime-3a59f5c4.cjs.prod.js → runtime-aa083fe4.cjs.prod.js} +7 -7
- package/dist/{schedule-1d92198c.cjs.prod.js → schedule-4ca6941d.cjs.prod.js} +40 -40
- package/dist/{schedule-e0f55cab.cjs.dev.js → schedule-fd323904.cjs.dev.js} +40 -40
- package/dist/scopedRef-0fc8943d.cjs.prod.js +55 -0
- package/dist/scopedRef-dc386056.cjs.dev.js +55 -0
- package/dist/{singleProducerAsyncInput-998b8fac.cjs.dev.js → singleProducerAsyncInput-54b43c1b.cjs.dev.js} +1 -1
- package/dist/{singleProducerAsyncInput-1c6cc8fb.cjs.prod.js → singleProducerAsyncInput-61ffe143.cjs.prod.js} +1 -1
- package/dist/{sink-1ac24bca.cjs.dev.js → sink-0445fb11.cjs.dev.js} +17 -17
- package/dist/{sink-4d668efb.cjs.prod.js → sink-ade4fdbe.cjs.prod.js} +17 -17
- package/dist/{state-dd1bd066.cjs.prod.js → state-0bdf02b7.cjs.prod.js} +2 -6
- package/dist/{state-8fbec044.cjs.dev.js → state-931050c4.cjs.dev.js} +2 -6
- package/dist/{stm-fcac86d5.cjs.prod.js → stm-8d082310.cjs.prod.js} +3 -3
- package/dist/{stm-fbb398a5.cjs.dev.js → stm-e9d8effb.cjs.dev.js} +3 -3
- package/dist/{stream-e670e8fa.cjs.prod.js → stream-97061dd9.cjs.prod.js} +31 -28
- package/dist/{stream-adef675d.cjs.dev.js → stream-e220a3b2.cjs.dev.js} +31 -28
- package/dist/{synchronizedRef-37e32854.cjs.dev.js → synchronizedRef-1f28b27f.cjs.dev.js} +6 -6
- package/dist/{synchronizedRef-b4cde4de.cjs.prod.js → synchronizedRef-ff0ddebf.cjs.prod.js} +6 -6
- package/dist/{tArray-70de8ec4.cjs.prod.js → tArray-437f6510.cjs.prod.js} +3 -3
- package/dist/{tArray-239d37ad.cjs.dev.js → tArray-59a819a0.cjs.dev.js} +3 -3
- package/dist/{tMap-a202396b.cjs.prod.js → tMap-ca06b00f.cjs.prod.js} +4 -4
- package/dist/{tMap-4b27665d.cjs.dev.js → tMap-d6376d13.cjs.dev.js} +4 -4
- package/dist/{tQueue-004a478e.cjs.dev.js → tQueue-7b931af8.cjs.dev.js} +3 -3
- package/dist/{tQueue-82c4db95.cjs.prod.js → tQueue-bf3716af.cjs.prod.js} +3 -3
- package/dist/{tRef-bb7cc73a.cjs.dev.js → tRef-5b159626.cjs.dev.js} +1 -1
- package/dist/{tRef-ee2c7f44.cjs.prod.js → tRef-bb143111.cjs.prod.js} +1 -1
- package/internal/Context.esm.js +2 -2
- package/internal/Effectable.esm.js +8 -8
- package/internal/Either.esm.js +3 -3
- package/internal/Option.esm.js +3 -3
- package/internal/cause.esm.js +5 -5
- package/internal/channel.esm.js +5 -5
- package/internal/core-effect.esm.js +3 -1
- package/internal/fiberRuntime.esm.js +13 -8
- package/internal/metric/hook.esm.js +7 -3
- package/internal/metric/key.esm.js +2 -2
- package/internal/metric/keyType.esm.js +9 -2
- package/internal/metric/registry.esm.js +2 -2
- package/internal/metric/state.esm.js +2 -6
- package/internal/metric.esm.js +3 -3
- package/internal/{hub.esm.js → pubsub.esm.js} +108 -108
- package/internal/sink.esm.js +8 -8
- package/internal/stm/{tHub.esm.js → tPubSub.esm.js} +30 -30
- package/internal/stream.esm.js +23 -20
- package/internal/subscriptionRef.esm.js +8 -8
- package/package.json +62 -203
- package/src/.index.ts +30 -0
- package/src/Bigint.ts +381 -0
- package/src/Boolean.ts +261 -0
- package/src/Brand.ts +336 -0
- package/src/Cache.ts +250 -0
- package/src/Cause.ts +813 -0
- package/src/Channel.ts +2244 -0
- package/src/ChannelChildExecutorDecision.ts +138 -0
- package/src/ChannelMergeDecision.ts +94 -0
- package/src/ChannelMergeState.ts +166 -0
- package/src/ChannelMergeStrategy.ts +107 -0
- package/src/ChannelSingleProducerAsyncInput.ts +68 -0
- package/src/ChannelUpstreamPullRequest.ts +110 -0
- package/src/ChannelUpstreamPullStrategy.ts +120 -0
- package/src/Chunk.ts +1314 -0
- package/src/Clock.ts +111 -0
- package/src/Config.ts +447 -0
- package/src/ConfigError.ts +267 -0
- package/src/ConfigProvider.ts +296 -0
- package/src/ConfigProviderPathPatch.ts +100 -0
- package/src/ConfigSecret.ts +76 -0
- package/src/Console.ts +222 -0
- package/src/Context.ts +365 -0
- package/src/Data.ts +295 -0
- package/src/DefaultServices.ts +34 -0
- package/src/Deferred.ts +283 -0
- package/src/Differ.ts +406 -0
- package/src/Duration.ts +558 -0
- package/src/Effect.ts +5177 -0
- package/src/Effectable.ts +107 -0
- package/src/Either.ts +593 -0
- package/src/Encoding.ts +130 -0
- package/src/Equal.ts +64 -0
- package/src/Equivalence.ts +235 -0
- package/src/Error.ts +69 -0
- package/src/ExecutionStrategy.ts +111 -0
- package/src/Exit.ts +464 -0
- package/src/Fiber.ts +650 -0
- package/src/FiberId.ts +187 -0
- package/src/FiberRef.ts +399 -0
- package/src/FiberRefs.ts +160 -0
- package/src/FiberRefsPatch.ts +105 -0
- package/src/FiberStatus.ts +108 -0
- package/src/Function.ts +834 -0
- package/src/GlobalValue.ts +20 -0
- package/src/GroupBy.ts +102 -0
- package/src/HKT.ts +44 -0
- package/src/Hash.ts +162 -0
- package/src/HashMap.ts +373 -0
- package/src/HashSet.ts +300 -0
- package/src/Inspectable.ts +45 -0
- package/src/KeyedPool.ts +160 -0
- package/src/Layer.ts +866 -0
- package/src/List.ts +942 -0
- package/src/LogLevel.ts +266 -0
- package/src/LogSpan.ts +25 -0
- package/src/Logger.ts +321 -0
- package/src/Metric.ts +657 -0
- package/src/MetricBoundaries.ts +70 -0
- package/src/MetricHook.ts +139 -0
- package/src/MetricKey.ts +227 -0
- package/src/MetricKeyType.ts +257 -0
- package/src/MetricLabel.ts +47 -0
- package/src/MetricPair.ts +70 -0
- package/src/MetricPolling.ts +136 -0
- package/src/MetricRegistry.ts +47 -0
- package/src/MetricState.ts +256 -0
- package/src/MutableHashMap.ts +187 -0
- package/src/MutableHashSet.ts +118 -0
- package/src/MutableList.ts +289 -0
- package/src/MutableQueue.ts +227 -0
- package/src/MutableRef.ts +204 -0
- package/src/NonEmptyIterable.ts +30 -0
- package/src/Number.ts +406 -0
- package/src/Option.ts +1307 -0
- package/src/Order.ts +328 -0
- package/src/Ordering.ts +112 -0
- package/src/Pipeable.ts +318 -0
- package/src/Pool.ts +148 -0
- package/src/Predicate.ts +704 -0
- package/src/PubSub.ts +175 -0
- package/src/Queue.ts +575 -0
- package/src/Random.ts +115 -0
- package/src/ReadonlyArray.ts +2017 -0
- package/src/ReadonlyRecord.ts +641 -0
- package/src/RedBlackTree.ts +415 -0
- package/src/Ref.ts +159 -0
- package/src/Reloadable.ts +136 -0
- package/src/Request.ts +285 -0
- package/src/RequestBlock.ts +157 -0
- package/src/RequestResolver.ts +305 -0
- package/src/Resource.ts +97 -0
- package/src/Runtime.ts +216 -0
- package/src/RuntimeFlags.ts +336 -0
- package/src/RuntimeFlagsPatch.ts +183 -0
- package/src/STM.ts +2076 -0
- package/src/Schedule.ts +1396 -0
- package/src/ScheduleDecision.ts +62 -0
- package/src/ScheduleInterval.ts +151 -0
- package/src/ScheduleIntervals.ts +122 -0
- package/src/Scheduler.ts +359 -0
- package/src/Scope.ts +171 -0
- package/src/ScopedCache.ts +148 -0
- package/src/ScopedRef.ts +95 -0
- package/src/Sink.ts +1431 -0
- package/src/SortedMap.ts +229 -0
- package/src/SortedSet.ts +385 -0
- package/src/Stream.ts +4540 -0
- package/src/StreamEmit.ts +83 -0
- package/src/StreamHaltStrategy.ts +111 -0
- package/src/Streamable.ts +42 -0
- package/src/String.ts +682 -0
- package/src/Struct.ts +151 -0
- package/src/SubscriptionRef.ts +273 -0
- package/src/Supervisor.ts +239 -0
- package/src/Symbol.ts +28 -0
- package/src/SynchronizedRef.ts +249 -0
- package/src/TArray.ts +494 -0
- package/src/TDeferred.ts +99 -0
- package/src/TMap.ts +510 -0
- package/src/TPriorityQueue.ts +223 -0
- package/src/TPubSub.ts +187 -0
- package/src/TQueue.ts +431 -0
- package/src/TRandom.ts +129 -0
- package/src/TReentrantLock.ts +224 -0
- package/src/TRef.ts +176 -0
- package/src/TSemaphore.ts +129 -0
- package/src/TSet.ts +349 -0
- package/src/Take.ts +257 -0
- package/src/TestAnnotation.ts +166 -0
- package/src/TestAnnotationMap.ts +124 -0
- package/src/TestAnnotations.ts +113 -0
- package/src/TestClock.ts +552 -0
- package/src/TestConfig.ts +49 -0
- package/src/TestContext.ts +35 -0
- package/src/TestLive.ts +55 -0
- package/src/TestServices.ts +392 -0
- package/src/TestSized.ts +55 -0
- package/src/Tracer.ts +119 -0
- package/src/Tuple.ts +204 -0
- package/src/Types.ts +123 -0
- package/src/Unify.ts +118 -0
- package/src/Utils.ts +699 -0
- package/src/index.ts +845 -0
- package/src/internal/Common.ts +56 -0
- package/src/internal/Context.ts +252 -0
- package/src/internal/Data.ts +51 -0
- package/src/internal/Differ/ChunkPatch.ts +209 -0
- package/src/internal/Differ/ContextPatch.ts +229 -0
- package/src/internal/Differ/HashMapPatch.ts +217 -0
- package/src/internal/Differ/HashSetPatch.ts +174 -0
- package/src/internal/Differ/OrPatch.ts +296 -0
- package/src/internal/Differ.ts +184 -0
- package/src/internal/Effectable.ts +92 -0
- package/src/internal/Either.ts +107 -0
- package/src/internal/Encoding/Base64.ts +282 -0
- package/src/internal/Encoding/Base64Url.ts +28 -0
- package/src/internal/Encoding/Common.ts +24 -0
- package/src/internal/Encoding/Hex.ts +315 -0
- package/src/internal/HashMap/array.ts +49 -0
- package/src/internal/HashMap/bitwise.ts +32 -0
- package/src/internal/HashMap/config.ts +14 -0
- package/src/internal/HashMap/keySet.ts +8 -0
- package/src/internal/HashMap/node.ts +390 -0
- package/src/internal/HashMap.ts +533 -0
- package/src/internal/HashSet.ts +319 -0
- package/src/internal/Iterable.ts +54 -0
- package/src/internal/Option.ts +79 -0
- package/src/internal/ReadonlyArray.ts +8 -0
- package/src/internal/RedBlackTree/iterator.ts +207 -0
- package/src/internal/RedBlackTree/node.ts +48 -0
- package/src/internal/RedBlackTree.ts +1195 -0
- package/src/internal/Stack.ts +4 -0
- package/src/internal/blockedRequests.ts +512 -0
- package/src/internal/cache.ts +714 -0
- package/src/internal/cause.ts +1220 -0
- package/src/internal/channel/channelExecutor.ts +1193 -0
- package/src/internal/channel/channelState.ts +132 -0
- package/src/internal/channel/childExecutorDecision.ts +95 -0
- package/src/internal/channel/continuation.ts +171 -0
- package/src/internal/channel/mergeDecision.ts +115 -0
- package/src/internal/channel/mergeState.ts +120 -0
- package/src/internal/channel/mergeStrategy.ts +72 -0
- package/src/internal/channel/singleProducerAsyncInput.ts +261 -0
- package/src/internal/channel/subexecutor.ts +229 -0
- package/src/internal/channel/upstreamPullRequest.ts +83 -0
- package/src/internal/channel/upstreamPullStrategy.ts +86 -0
- package/src/internal/channel.ts +2516 -0
- package/src/internal/clock.ts +97 -0
- package/src/internal/completedRequestMap.ts +9 -0
- package/src/internal/concurrency.ts +83 -0
- package/src/internal/config.ts +598 -0
- package/src/internal/configError.ts +291 -0
- package/src/internal/configProvider/pathPatch.ts +97 -0
- package/src/internal/configProvider.ts +692 -0
- package/src/internal/configSecret.ts +71 -0
- package/src/internal/console.ts +136 -0
- package/src/internal/core-effect.ts +2146 -0
- package/src/internal/core-stream.ts +999 -0
- package/src/internal/core.ts +2765 -0
- package/src/internal/dataSource.ts +258 -0
- package/src/internal/defaultServices/console.ts +97 -0
- package/src/internal/defaultServices.ts +140 -0
- package/src/internal/deferred.ts +44 -0
- package/src/internal/effect/circular.ts +664 -0
- package/src/internal/executionStrategy.ts +72 -0
- package/src/internal/fiber.ts +350 -0
- package/src/internal/fiberId.ts +270 -0
- package/src/internal/fiberMessage.ts +85 -0
- package/src/internal/fiberRefs/patch.ts +144 -0
- package/src/internal/fiberRefs.ts +239 -0
- package/src/internal/fiberRuntime.ts +3477 -0
- package/src/internal/fiberScope.ts +72 -0
- package/src/internal/fiberStatus.ts +118 -0
- package/src/internal/groupBy.ts +516 -0
- package/src/internal/keyedPool.ts +240 -0
- package/src/internal/layer/circular.ts +203 -0
- package/src/internal/layer.ts +1230 -0
- package/src/internal/logSpan.ts +15 -0
- package/src/internal/logger-circular.ts +24 -0
- package/src/internal/logger.ts +307 -0
- package/src/internal/metric/boundaries.ts +72 -0
- package/src/internal/metric/hook.ts +459 -0
- package/src/internal/metric/key.ts +173 -0
- package/src/internal/metric/keyType.ts +263 -0
- package/src/internal/metric/label.ts +44 -0
- package/src/internal/metric/pair.ts +48 -0
- package/src/internal/metric/polling.ts +143 -0
- package/src/internal/metric/registry.ts +188 -0
- package/src/internal/metric/state.ts +286 -0
- package/src/internal/metric.ts +522 -0
- package/src/internal/opCodes/cause.ts +35 -0
- package/src/internal/opCodes/channel.ts +83 -0
- package/src/internal/opCodes/channelChildExecutorDecision.ts +17 -0
- package/src/internal/opCodes/channelMergeDecision.ts +11 -0
- package/src/internal/opCodes/channelMergeState.ts +17 -0
- package/src/internal/opCodes/channelMergeStrategy.ts +11 -0
- package/src/internal/opCodes/channelState.ts +23 -0
- package/src/internal/opCodes/channelUpstreamPullRequest.ts +11 -0
- package/src/internal/opCodes/channelUpstreamPullStrategy.ts +11 -0
- package/src/internal/opCodes/config.ts +65 -0
- package/src/internal/opCodes/configError.ts +35 -0
- package/src/internal/opCodes/continuation.ts +11 -0
- package/src/internal/opCodes/deferred.ts +11 -0
- package/src/internal/opCodes/effect.ts +83 -0
- package/src/internal/opCodes/layer.ts +53 -0
- package/src/internal/opCodes/streamHaltStrategy.ts +23 -0
- package/src/internal/pool.ts +499 -0
- package/src/internal/pubsub.ts +1557 -0
- package/src/internal/query.ts +199 -0
- package/src/internal/queue.ts +729 -0
- package/src/internal/random.ts +88 -0
- package/src/internal/ref.ts +164 -0
- package/src/internal/reloadable.ts +164 -0
- package/src/internal/request.ts +137 -0
- package/src/internal/resource.ts +64 -0
- package/src/internal/ringBuffer.ts +68 -0
- package/src/internal/runtime.ts +348 -0
- package/src/internal/runtimeFlags.ts +176 -0
- package/src/internal/runtimeFlagsPatch.ts +103 -0
- package/src/internal/schedule/decision.ts +47 -0
- package/src/internal/schedule/interval.ts +101 -0
- package/src/internal/schedule/intervals.ts +179 -0
- package/src/internal/schedule.ts +2096 -0
- package/src/internal/scopedCache.ts +634 -0
- package/src/internal/scopedRef.ts +133 -0
- package/src/internal/singleShotGen.ts +35 -0
- package/src/internal/sink.ts +2118 -0
- package/src/internal/stm/core.ts +804 -0
- package/src/internal/stm/opCodes/stm.ts +71 -0
- package/src/internal/stm/opCodes/stmState.ts +17 -0
- package/src/internal/stm/opCodes/strategy.ts +17 -0
- package/src/internal/stm/opCodes/tExit.ts +29 -0
- package/src/internal/stm/opCodes/tryCommit.ts +11 -0
- package/src/internal/stm/stm/entry.ts +59 -0
- package/src/internal/stm/stm/journal.ts +123 -0
- package/src/internal/stm/stm/opCodes/stm.ts +71 -0
- package/src/internal/stm/stm/opCodes/stmState.ts +17 -0
- package/src/internal/stm/stm/opCodes/strategy.ts +17 -0
- package/src/internal/stm/stm/opCodes/tExit.ts +29 -0
- package/src/internal/stm/stm/opCodes/tryCommit.ts +11 -0
- package/src/internal/stm/stm/stmState.ts +130 -0
- package/src/internal/stm/stm/tExit.ts +180 -0
- package/src/internal/stm/stm/tryCommit.ts +34 -0
- package/src/internal/stm/stm/txnId.ts +14 -0
- package/src/internal/stm/stm/versioned.ts +4 -0
- package/src/internal/stm/stm.ts +1491 -0
- package/src/internal/stm/tArray.ts +550 -0
- package/src/internal/stm/tDeferred.ts +79 -0
- package/src/internal/stm/tMap.ts +824 -0
- package/src/internal/stm/tPriorityQueue.ts +259 -0
- package/src/internal/stm/tPubSub.ts +542 -0
- package/src/internal/stm/tQueue.ts +400 -0
- package/src/internal/stm/tRandom.ts +140 -0
- package/src/internal/stm/tReentrantLock.ts +352 -0
- package/src/internal/stm/tRef.ts +190 -0
- package/src/internal/stm/tSemaphore.ts +113 -0
- package/src/internal/stm/tSet.ts +237 -0
- package/src/internal/stream/debounceState.ts +57 -0
- package/src/internal/stream/emit.ts +46 -0
- package/src/internal/stream/haltStrategy.ts +85 -0
- package/src/internal/stream/handoff.ts +185 -0
- package/src/internal/stream/handoffSignal.ts +59 -0
- package/src/internal/stream/pull.ts +35 -0
- package/src/internal/stream/sinkEndReason.ts +30 -0
- package/src/internal/stream/zipAllState.ts +88 -0
- package/src/internal/stream/zipChunksState.ts +56 -0
- package/src/internal/stream.ts +8089 -0
- package/src/internal/string-utils.ts +107 -0
- package/src/internal/subscriptionRef.ts +133 -0
- package/src/internal/supervisor/patch.ts +190 -0
- package/src/internal/supervisor.ts +301 -0
- package/src/internal/synchronizedRef.ts +115 -0
- package/src/internal/take.ts +198 -0
- package/src/internal/testing/sleep.ts +27 -0
- package/src/internal/testing/suspendedWarningData.ts +85 -0
- package/src/internal/testing/warningData.ts +94 -0
- package/src/internal/timeout.ts +23 -0
- package/src/internal/tracer.ts +74 -0
- package/Hub/dist/effect-Hub.cjs.d.mts +0 -2
- package/Hub/dist/effect-Hub.cjs.d.mts.map +0 -1
- package/Hub/dist/effect-Hub.cjs.d.ts +0 -2
- package/Hub/dist/effect-Hub.cjs.d.ts.map +0 -1
- package/Hub/dist/effect-Hub.cjs.js +0 -7
- package/Hub/package.json +0 -4
- package/THub/dist/effect-THub.cjs.d.mts +0 -2
- package/THub/dist/effect-THub.cjs.d.mts.map +0 -1
- package/THub/dist/effect-THub.cjs.d.ts +0 -2
- package/THub/dist/effect-THub.cjs.d.ts.map +0 -1
- package/THub/dist/effect-THub.cjs.js +0 -7
- package/THub/dist/effect-THub.esm.js +0 -157
- package/THub/package.json +0 -4
- package/dist/declarations/src/Hub.d.ts.map +0 -1
- package/dist/declarations/src/THub.d.ts +0 -146
- package/dist/declarations/src/THub.d.ts.map +0 -1
- package/dist/scopedRef-88ae648a.cjs.dev.js +0 -55
- package/dist/scopedRef-a0257d92.cjs.prod.js +0 -55
- /package/dist/{FiberId-557db880.cjs.dev.js → FiberId-9c555b91.cjs.dev.js} +0 -0
- /package/dist/{FiberId-e594f6e8.cjs.prod.js → FiberId-fd1b9201.cjs.prod.js} +0 -0
- /package/dist/{RuntimeFlagsPatch-ea268c50.cjs.dev.js → RuntimeFlagsPatch-197be4f3.cjs.dev.js} +0 -0
- /package/dist/{RuntimeFlagsPatch-e2769b87.cjs.prod.js → RuntimeFlagsPatch-7f853fa5.cjs.prod.js} +0 -0
- /package/dist/{boundaries-3810d885.cjs.dev.js → boundaries-60c435b8.cjs.dev.js} +0 -0
- /package/dist/{boundaries-20cfad9d.cjs.prod.js → boundaries-73dd633f.cjs.prod.js} +0 -0
- /package/dist/{configError-240e9b61.cjs.dev.js → configError-623ccb8d.cjs.dev.js} +0 -0
- /package/dist/{configError-33e55472.cjs.prod.js → configError-d2914327.cjs.prod.js} +0 -0
- /package/dist/{configSecret-e34c1b14.cjs.dev.js → configSecret-baa8839f.cjs.dev.js} +0 -0
- /package/dist/{configSecret-d1caca55.cjs.prod.js → configSecret-c08c317d.cjs.prod.js} +0 -0
- /package/dist/{take-4857b6af.cjs.dev.js → take-05b33c5b.cjs.dev.js} +0 -0
- /package/dist/{take-9c555b46.cjs.prod.js → take-c7b73760.cjs.prod.js} +0 -0
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 2.0.0
|
|
3
|
+
*/
|
|
4
|
+
import * as internal from "./internal/channel/childExecutorDecision"
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* @since 2.0.0
|
|
8
|
+
* @category symbols
|
|
9
|
+
*/
|
|
10
|
+
export const ChildExecutorDecisionTypeId: unique symbol = internal.ChildExecutorDecisionTypeId
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* @since 2.0.0
|
|
14
|
+
* @category symbols
|
|
15
|
+
*/
|
|
16
|
+
export type ChildExecutorDecisionTypeId = typeof ChildExecutorDecisionTypeId
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* @since 2.0.0
|
|
20
|
+
* @category models
|
|
21
|
+
*/
|
|
22
|
+
export type ChildExecutorDecision = Continue | Close | Yield
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* @since 2.0.0
|
|
26
|
+
*/
|
|
27
|
+
export declare namespace ChildExecutorDecision {
|
|
28
|
+
/**
|
|
29
|
+
* @since 2.0.0
|
|
30
|
+
* @category models
|
|
31
|
+
*/
|
|
32
|
+
export interface Proto {
|
|
33
|
+
readonly [ChildExecutorDecisionTypeId]: ChildExecutorDecisionTypeId
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* Continue executing the current substream
|
|
39
|
+
*
|
|
40
|
+
* @since 2.0.0
|
|
41
|
+
* @category models
|
|
42
|
+
*/
|
|
43
|
+
export interface Continue extends ChildExecutorDecision.Proto {
|
|
44
|
+
readonly _tag: "Continue"
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* Close the current substream with a given value and pass execution to the
|
|
49
|
+
* next substream
|
|
50
|
+
*
|
|
51
|
+
* @since 2.0.0
|
|
52
|
+
* @category models
|
|
53
|
+
*/
|
|
54
|
+
export interface Close extends ChildExecutorDecision.Proto {
|
|
55
|
+
readonly _tag: "Close"
|
|
56
|
+
readonly value: unknown
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
/**
|
|
60
|
+
* Pass execution to the next substream. This either pulls a new element
|
|
61
|
+
* from upstream, or yields to an already created active substream.
|
|
62
|
+
*
|
|
63
|
+
* @since 2.0.0
|
|
64
|
+
* @category models
|
|
65
|
+
*/
|
|
66
|
+
export interface Yield extends ChildExecutorDecision.Proto {
|
|
67
|
+
readonly _tag: "Yield"
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
/**
|
|
71
|
+
* @since 2.0.0
|
|
72
|
+
* @category constructors
|
|
73
|
+
*/
|
|
74
|
+
export const Continue: (_: void) => ChildExecutorDecision = internal.Continue
|
|
75
|
+
|
|
76
|
+
/**
|
|
77
|
+
* @since 2.0.0
|
|
78
|
+
* @category constructors
|
|
79
|
+
*/
|
|
80
|
+
export const Close: (value: unknown) => ChildExecutorDecision = internal.Close
|
|
81
|
+
|
|
82
|
+
/**
|
|
83
|
+
* @since 2.0.0
|
|
84
|
+
* @category constructors
|
|
85
|
+
*/
|
|
86
|
+
export const Yield: (_: void) => ChildExecutorDecision = internal.Yield
|
|
87
|
+
|
|
88
|
+
/**
|
|
89
|
+
* Returns `true` if the specified value is a `ChildExecutorDecision`, `false`
|
|
90
|
+
* otherwise.
|
|
91
|
+
*
|
|
92
|
+
* @since 2.0.0
|
|
93
|
+
* @category refinements
|
|
94
|
+
*/
|
|
95
|
+
export const isChildExecutorDecision: (u: unknown) => u is ChildExecutorDecision = internal.isChildExecutorDecision
|
|
96
|
+
|
|
97
|
+
/**
|
|
98
|
+
* Returns `true` if the specified `ChildExecutorDecision` is a `Continue`,
|
|
99
|
+
* `false` otherwise.
|
|
100
|
+
*
|
|
101
|
+
* @since 2.0.0
|
|
102
|
+
* @category refinements
|
|
103
|
+
*/
|
|
104
|
+
export const isContinue: (self: ChildExecutorDecision) => self is Continue = internal.isContinue
|
|
105
|
+
|
|
106
|
+
/**
|
|
107
|
+
* Returns `true` if the specified `ChildExecutorDecision` is a `Close`, `false`
|
|
108
|
+
* otherwise.
|
|
109
|
+
*
|
|
110
|
+
* @since 2.0.0
|
|
111
|
+
* @category refinements
|
|
112
|
+
*/
|
|
113
|
+
export const isClose: (self: ChildExecutorDecision) => self is Close = internal.isClose
|
|
114
|
+
|
|
115
|
+
/**
|
|
116
|
+
* Returns `true` if the specified `ChildExecutorDecision` is a `Yield`, `false`
|
|
117
|
+
* otherwise.
|
|
118
|
+
*
|
|
119
|
+
* @since 2.0.0
|
|
120
|
+
* @category refinements
|
|
121
|
+
*/
|
|
122
|
+
export const isYield: (self: ChildExecutorDecision) => self is Yield = internal.isYield
|
|
123
|
+
|
|
124
|
+
/**
|
|
125
|
+
* Folds over a `ChildExecutorDecision` to produce a value of type `A`.
|
|
126
|
+
*
|
|
127
|
+
* @since 2.0.0
|
|
128
|
+
* @category folding
|
|
129
|
+
*/
|
|
130
|
+
export const match: {
|
|
131
|
+
<A>(
|
|
132
|
+
options: { readonly onContinue: () => A; readonly onClose: (value: unknown) => A; readonly onYield: () => A }
|
|
133
|
+
): (self: ChildExecutorDecision) => A
|
|
134
|
+
<A>(
|
|
135
|
+
self: ChildExecutorDecision,
|
|
136
|
+
options: { readonly onContinue: () => A; readonly onClose: (value: unknown) => A; readonly onYield: () => A }
|
|
137
|
+
): A
|
|
138
|
+
} = internal.match
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 2.0.0
|
|
3
|
+
*/
|
|
4
|
+
import type * as Effect from "./Effect"
|
|
5
|
+
import type * as Exit from "./Exit"
|
|
6
|
+
import * as internal from "./internal/channel/mergeDecision"
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* @since 2.0.0
|
|
10
|
+
* @category symbols
|
|
11
|
+
*/
|
|
12
|
+
export const MergeDecisionTypeId: unique symbol = internal.MergeDecisionTypeId
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* @since 2.0.0
|
|
16
|
+
* @category symbols
|
|
17
|
+
*/
|
|
18
|
+
export type MergeDecisionTypeId = typeof MergeDecisionTypeId
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* @since 2.0.0
|
|
22
|
+
* @category models
|
|
23
|
+
*/
|
|
24
|
+
export interface MergeDecision<R, E0, Z0, E, Z> extends MergeDecision.Variance<R, E0, Z0, E, Z> {}
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* @since 2.0.0
|
|
28
|
+
*/
|
|
29
|
+
export declare namespace MergeDecision {
|
|
30
|
+
/**
|
|
31
|
+
* @since 2.0.0
|
|
32
|
+
* @category models
|
|
33
|
+
*/
|
|
34
|
+
export interface Variance<R, E0, Z0, E, Z> {
|
|
35
|
+
readonly [MergeDecisionTypeId]: {
|
|
36
|
+
_R: (_: never) => R
|
|
37
|
+
_E0: (_: E0) => void
|
|
38
|
+
_Z0: (_: Z0) => void
|
|
39
|
+
_E: (_: never) => E
|
|
40
|
+
_Z: (_: never) => Z
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* @since 2.0.0
|
|
47
|
+
* @category constructors
|
|
48
|
+
*/
|
|
49
|
+
export const Done: <R, E, Z>(effect: Effect.Effect<R, E, Z>) => MergeDecision<R, unknown, unknown, E, Z> = internal.Done
|
|
50
|
+
|
|
51
|
+
/**
|
|
52
|
+
* @since 2.0.0
|
|
53
|
+
* @category constructors
|
|
54
|
+
*/
|
|
55
|
+
export const Await: <R, E0, Z0, E, Z>(
|
|
56
|
+
f: (exit: Exit.Exit<E0, Z0>) => Effect.Effect<R, E, Z>
|
|
57
|
+
) => MergeDecision<R, E0, Z0, E, Z> = internal.Await
|
|
58
|
+
|
|
59
|
+
/**
|
|
60
|
+
* @since 2.0.0
|
|
61
|
+
* @category constructors
|
|
62
|
+
*/
|
|
63
|
+
export const AwaitConst: <R, E, Z>(effect: Effect.Effect<R, E, Z>) => MergeDecision<R, unknown, unknown, E, Z> =
|
|
64
|
+
internal.AwaitConst
|
|
65
|
+
|
|
66
|
+
/**
|
|
67
|
+
* Returns `true` if the specified value is a `MergeDecision`, `false`
|
|
68
|
+
* otherwise.
|
|
69
|
+
*
|
|
70
|
+
* @since 2.0.0
|
|
71
|
+
* @category refinements
|
|
72
|
+
*/
|
|
73
|
+
export const isMergeDecision: (u: unknown) => u is MergeDecision<unknown, unknown, unknown, unknown, unknown> =
|
|
74
|
+
internal.isMergeDecision
|
|
75
|
+
|
|
76
|
+
/**
|
|
77
|
+
* @since 2.0.0
|
|
78
|
+
* @category folding
|
|
79
|
+
*/
|
|
80
|
+
export const match: {
|
|
81
|
+
<R, E0, Z0, E, Z, Z2>(
|
|
82
|
+
options: {
|
|
83
|
+
readonly onDone: (effect: Effect.Effect<R, E, Z>) => Z2
|
|
84
|
+
readonly onAwait: (f: (exit: Exit.Exit<E0, Z0>) => Effect.Effect<R, E, Z>) => Z2
|
|
85
|
+
}
|
|
86
|
+
): (self: MergeDecision<R, E0, Z0, E, Z>) => Z2
|
|
87
|
+
<R, E0, Z0, E, Z, Z2>(
|
|
88
|
+
self: MergeDecision<R, E0, Z0, E, Z>,
|
|
89
|
+
options: {
|
|
90
|
+
readonly onDone: (effect: Effect.Effect<R, E, Z>) => Z2
|
|
91
|
+
readonly onAwait: (f: (exit: Exit.Exit<E0, Z0>) => Effect.Effect<R, E, Z>) => Z2
|
|
92
|
+
}
|
|
93
|
+
): Z2
|
|
94
|
+
} = internal.match
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 2.0.0
|
|
3
|
+
*/
|
|
4
|
+
import type * as Effect from "./Effect"
|
|
5
|
+
import type * as Either from "./Either"
|
|
6
|
+
import type * as Exit from "./Exit"
|
|
7
|
+
import type * as Fiber from "./Fiber"
|
|
8
|
+
import * as internal from "./internal/channel/mergeState"
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* @since 2.0.0
|
|
12
|
+
* @category symbols
|
|
13
|
+
*/
|
|
14
|
+
export const MergeStateTypeId: unique symbol = internal.MergeStateTypeId
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* @since 2.0.0
|
|
18
|
+
* @category symbols
|
|
19
|
+
*/
|
|
20
|
+
export type MergeStateTypeId = typeof MergeStateTypeId
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* @since 2.0.0
|
|
24
|
+
* @category models
|
|
25
|
+
*/
|
|
26
|
+
export type MergeState<Env, Err, Err1, Err2, Elem, Done, Done1, Done2> =
|
|
27
|
+
| BothRunning<Env, Err, Err1, Err2, Elem, Done, Done1, Done2>
|
|
28
|
+
| LeftDone<Env, Err, Err1, Err2, Elem, Done, Done1, Done2>
|
|
29
|
+
| RightDone<Env, Err, Err1, Err2, Elem, Done, Done1, Done2>
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* @since 2.0.0
|
|
33
|
+
*/
|
|
34
|
+
export declare namespace MergeState {
|
|
35
|
+
/**
|
|
36
|
+
* @since 2.0.0
|
|
37
|
+
* @category models
|
|
38
|
+
*/
|
|
39
|
+
export interface Proto {
|
|
40
|
+
readonly [MergeStateTypeId]: MergeStateTypeId
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* @since 2.0.0
|
|
46
|
+
* @category models
|
|
47
|
+
*/
|
|
48
|
+
export interface BothRunning<_Env, Err, Err1, _Err2, Elem, Done, Done1, _Done2> extends MergeState.Proto {
|
|
49
|
+
readonly _tag: "BothRunning"
|
|
50
|
+
readonly left: Fiber.Fiber<Err, Either.Either<Done, Elem>>
|
|
51
|
+
readonly right: Fiber.Fiber<Err1, Either.Either<Done1, Elem>>
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
/**
|
|
55
|
+
* @since 2.0.0
|
|
56
|
+
* @category models
|
|
57
|
+
*/
|
|
58
|
+
export interface LeftDone<Env, _Err, Err1, Err2, _Elem, _Done, Done1, Done2> extends MergeState.Proto {
|
|
59
|
+
readonly _tag: "LeftDone"
|
|
60
|
+
readonly f: (exit: Exit.Exit<Err1, Done1>) => Effect.Effect<Env, Err2, Done2>
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* @since 2.0.0
|
|
65
|
+
* @category models
|
|
66
|
+
*/
|
|
67
|
+
export interface RightDone<Env, Err, _Err1, Err2, _Elem, Done, _Done1, Done2> extends MergeState.Proto {
|
|
68
|
+
readonly _tag: "RightDone"
|
|
69
|
+
readonly f: (exit: Exit.Exit<Err, Done>) => Effect.Effect<Env, Err2, Done2>
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* @since 2.0.0
|
|
74
|
+
* @category constructors
|
|
75
|
+
*/
|
|
76
|
+
export const BothRunning: <Env, Err, Err1, Err2, Elem, Done, Done1, Done2>(
|
|
77
|
+
left: Fiber.Fiber<Err, Either.Either<Done, Elem>>,
|
|
78
|
+
right: Fiber.Fiber<Err1, Either.Either<Done1, Elem>>
|
|
79
|
+
) => MergeState<Env, Err, Err1, Err2, Elem, Done, Done1, Done2> = internal.BothRunning
|
|
80
|
+
|
|
81
|
+
/**
|
|
82
|
+
* @since 2.0.0
|
|
83
|
+
* @category constructors
|
|
84
|
+
*/
|
|
85
|
+
export const LeftDone: <Env, Err, Err1, Err2, Elem, Done, Done1, Done2>(
|
|
86
|
+
f: (exit: Exit.Exit<Err1, Done1>) => Effect.Effect<Env, Err2, Done2>
|
|
87
|
+
) => MergeState<Env, Err, Err1, Err2, Elem, Done, Done1, Done2> = internal.LeftDone
|
|
88
|
+
|
|
89
|
+
/**
|
|
90
|
+
* @since 2.0.0
|
|
91
|
+
* @category constructors
|
|
92
|
+
*/
|
|
93
|
+
export const RightDone: <Env, Err, Err1, Err2, Elem, Done, Done1, Done2>(
|
|
94
|
+
f: (exit: Exit.Exit<Err, Done>) => Effect.Effect<Env, Err2, Done2>
|
|
95
|
+
) => MergeState<Env, Err, Err1, Err2, Elem, Done, Done1, Done2> = internal.RightDone
|
|
96
|
+
|
|
97
|
+
/**
|
|
98
|
+
* Returns `true` if the specified value is a `MergeState`, `false` otherwise.
|
|
99
|
+
*
|
|
100
|
+
* @since 2.0.0
|
|
101
|
+
* @category refinements
|
|
102
|
+
*/
|
|
103
|
+
export const isMergeState: (
|
|
104
|
+
u: unknown
|
|
105
|
+
) => u is MergeState<unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown> = internal.isMergeState
|
|
106
|
+
|
|
107
|
+
/**
|
|
108
|
+
* Returns `true` if the specified `MergeState` is a `BothRunning`, `false`
|
|
109
|
+
* otherwise.
|
|
110
|
+
*
|
|
111
|
+
* @since 2.0.0
|
|
112
|
+
* @category refinements
|
|
113
|
+
*/
|
|
114
|
+
export const isBothRunning: <Env, Err, Err1, Err2, Elem, Done, Done1, Done2>(
|
|
115
|
+
self: MergeState<Env, Err, Err1, Err2, Elem, Done, Done1, Done2>
|
|
116
|
+
) => self is BothRunning<Env, Err, Err1, Err2, Elem, Done, Done1, Done2> = internal.isBothRunning
|
|
117
|
+
|
|
118
|
+
/**
|
|
119
|
+
* Returns `true` if the specified `MergeState` is a `LeftDone`, `false`
|
|
120
|
+
* otherwise.
|
|
121
|
+
*
|
|
122
|
+
* @since 2.0.0
|
|
123
|
+
* @category refinements
|
|
124
|
+
*/
|
|
125
|
+
export const isLeftDone: <Env, Err, Err1, Err2, Elem, Done, Done1, Done2>(
|
|
126
|
+
self: MergeState<Env, Err, Err1, Err2, Elem, Done, Done1, Done2>
|
|
127
|
+
) => self is LeftDone<Env, Err, Err1, Err2, Elem, Done, Done1, Done2> = internal.isLeftDone
|
|
128
|
+
|
|
129
|
+
/**
|
|
130
|
+
* Returns `true` if the specified `MergeState` is a `RightDone`, `false`
|
|
131
|
+
* otherwise.
|
|
132
|
+
*
|
|
133
|
+
* @since 2.0.0
|
|
134
|
+
* @category refinements
|
|
135
|
+
*/
|
|
136
|
+
export const isRightDone: <Env, Err, Err1, Err2, Elem, Done, Done1, Done2>(
|
|
137
|
+
self: MergeState<Env, Err, Err1, Err2, Elem, Done, Done1, Done2>
|
|
138
|
+
) => self is RightDone<Env, Err, Err1, Err2, Elem, Done, Done1, Done2> = internal.isRightDone
|
|
139
|
+
|
|
140
|
+
/**
|
|
141
|
+
* @since 2.0.0
|
|
142
|
+
* @category folding
|
|
143
|
+
*/
|
|
144
|
+
export const match: {
|
|
145
|
+
<Env, Err, Err1, Err2, Elem, Done, Done1, Done2, Z>(
|
|
146
|
+
options: {
|
|
147
|
+
readonly onBothRunning: (
|
|
148
|
+
left: Fiber.Fiber<Err, Either.Either<Done, Elem>>,
|
|
149
|
+
right: Fiber.Fiber<Err1, Either.Either<Done1, Elem>>
|
|
150
|
+
) => Z
|
|
151
|
+
readonly onLeftDone: (f: (exit: Exit.Exit<Err1, Done1>) => Effect.Effect<Env, Err2, Done2>) => Z
|
|
152
|
+
readonly onRightDone: (f: (exit: Exit.Exit<Err, Done>) => Effect.Effect<Env, Err2, Done2>) => Z
|
|
153
|
+
}
|
|
154
|
+
): (self: MergeState<Env, Err, Err1, Err2, Elem, Done, Done1, Done2>) => Z
|
|
155
|
+
<Env, Err, Err1, Err2, Elem, Done, Done1, Done2, Z>(
|
|
156
|
+
self: MergeState<Env, Err, Err1, Err2, Elem, Done, Done1, Done2>,
|
|
157
|
+
options: {
|
|
158
|
+
readonly onBothRunning: (
|
|
159
|
+
left: Fiber.Fiber<Err, Either.Either<Done, Elem>>,
|
|
160
|
+
right: Fiber.Fiber<Err1, Either.Either<Done1, Elem>>
|
|
161
|
+
) => Z
|
|
162
|
+
readonly onLeftDone: (f: (exit: Exit.Exit<Err1, Done1>) => Effect.Effect<Env, Err2, Done2>) => Z
|
|
163
|
+
readonly onRightDone: (f: (exit: Exit.Exit<Err, Done>) => Effect.Effect<Env, Err2, Done2>) => Z
|
|
164
|
+
}
|
|
165
|
+
): Z
|
|
166
|
+
} = internal.match
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 2.0.0
|
|
3
|
+
*/
|
|
4
|
+
import * as internal from "./internal/channel/mergeStrategy"
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* @since 2.0.0
|
|
8
|
+
* @category symbols
|
|
9
|
+
*/
|
|
10
|
+
export const MergeStrategyTypeId: unique symbol = internal.MergeStrategyTypeId
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* @since 2.0.0
|
|
14
|
+
* @category symbols
|
|
15
|
+
*/
|
|
16
|
+
export type MergeStrategyTypeId = typeof MergeStrategyTypeId
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* @since 2.0.0
|
|
20
|
+
* @category models
|
|
21
|
+
*/
|
|
22
|
+
export type MergeStrategy = BackPressure | BufferSliding
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* @since 2.0.0
|
|
26
|
+
*/
|
|
27
|
+
export declare namespace MergeStrategy {
|
|
28
|
+
/**
|
|
29
|
+
* @since 2.0.0
|
|
30
|
+
* @category models
|
|
31
|
+
*/
|
|
32
|
+
export interface Proto {
|
|
33
|
+
readonly [MergeStrategyTypeId]: MergeStrategyTypeId
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* @since 2.0.0
|
|
39
|
+
* @category models
|
|
40
|
+
*/
|
|
41
|
+
export interface BackPressure extends MergeStrategy.Proto {
|
|
42
|
+
readonly _tag: "BackPressure"
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* @since 2.0.0
|
|
47
|
+
* @category models
|
|
48
|
+
*/
|
|
49
|
+
export interface BufferSliding extends MergeStrategy.Proto {
|
|
50
|
+
readonly _tag: "BufferSliding"
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* @since 2.0.0
|
|
55
|
+
* @category constructors
|
|
56
|
+
*/
|
|
57
|
+
export const BackPressure: (_: void) => MergeStrategy = internal.BackPressure
|
|
58
|
+
|
|
59
|
+
/**
|
|
60
|
+
* @since 2.0.0
|
|
61
|
+
* @category constructors
|
|
62
|
+
*/
|
|
63
|
+
export const BufferSliding: (_: void) => MergeStrategy = internal.BufferSliding
|
|
64
|
+
|
|
65
|
+
/**
|
|
66
|
+
* Returns `true` if the specified value is a `MergeStrategy`, `false`
|
|
67
|
+
* otherwise.
|
|
68
|
+
*
|
|
69
|
+
* @since 2.0.0
|
|
70
|
+
* @category refinements
|
|
71
|
+
*/
|
|
72
|
+
export const isMergeStrategy: (u: unknown) => u is MergeStrategy = internal.isMergeStrategy
|
|
73
|
+
|
|
74
|
+
/**
|
|
75
|
+
* Returns `true` if the specified `MergeStrategy` is a `BackPressure`, `false`
|
|
76
|
+
* otherwise.
|
|
77
|
+
*
|
|
78
|
+
* @since 2.0.0
|
|
79
|
+
* @category refinements
|
|
80
|
+
*/
|
|
81
|
+
export const isBackPressure: (self: MergeStrategy) => self is BackPressure = internal.isBackPressure
|
|
82
|
+
|
|
83
|
+
/**
|
|
84
|
+
* Returns `true` if the specified `MergeStrategy` is a `BufferSliding`, `false`
|
|
85
|
+
* otherwise.
|
|
86
|
+
*
|
|
87
|
+
* @since 2.0.0
|
|
88
|
+
* @category refinements
|
|
89
|
+
*/
|
|
90
|
+
export const isBufferSliding: (self: MergeStrategy) => self is BufferSliding = internal.isBufferSliding
|
|
91
|
+
|
|
92
|
+
/**
|
|
93
|
+
* Folds an `MergeStrategy` into a value of type `A`.
|
|
94
|
+
*
|
|
95
|
+
* @since 2.0.0
|
|
96
|
+
* @category folding
|
|
97
|
+
*/
|
|
98
|
+
export const match: {
|
|
99
|
+
<A>(options: {
|
|
100
|
+
readonly onBackPressure: () => A
|
|
101
|
+
readonly onBufferSliding: () => A
|
|
102
|
+
}): (self: MergeStrategy) => A
|
|
103
|
+
<A>(self: MergeStrategy, options: {
|
|
104
|
+
readonly onBackPressure: () => A
|
|
105
|
+
readonly onBufferSliding: () => A
|
|
106
|
+
}): A
|
|
107
|
+
} = internal.match
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 2.0.0
|
|
3
|
+
*/
|
|
4
|
+
import type * as Cause from "./Cause"
|
|
5
|
+
import type * as Effect from "./Effect"
|
|
6
|
+
import type * as Either from "./Either"
|
|
7
|
+
import type * as Exit from "./Exit"
|
|
8
|
+
import * as internal from "./internal/channel/singleProducerAsyncInput"
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* An MVar-like abstraction for sending data to channels asynchronously which is
|
|
12
|
+
* designed for one producer and multiple consumers.
|
|
13
|
+
*
|
|
14
|
+
* Features the following semantics:
|
|
15
|
+
* - Buffer of size 1.
|
|
16
|
+
* - When emitting, the producer waits for a consumer to pick up the value to
|
|
17
|
+
* prevent "reading ahead" too much.
|
|
18
|
+
* - Once an emitted element is read by a consumer, it is cleared from the
|
|
19
|
+
* buffer, so that at most one consumer sees every emitted element.
|
|
20
|
+
* - When sending a done or error signal, the producer does not wait for a
|
|
21
|
+
* consumer to pick up the signal. The signal stays in the buffer after
|
|
22
|
+
* being read by a consumer, so it can be propagated to multiple consumers.
|
|
23
|
+
* - Trying to publish another emit/error/done after an error/done have
|
|
24
|
+
* already been published results in an interruption.
|
|
25
|
+
*
|
|
26
|
+
* @since 2.0.0
|
|
27
|
+
* @category models
|
|
28
|
+
*/
|
|
29
|
+
export interface SingleProducerAsyncInput<Err, Elem, Done>
|
|
30
|
+
extends AsyncInputProducer<Err, Elem, Done>, AsyncInputConsumer<Err, Elem, Done>
|
|
31
|
+
{
|
|
32
|
+
close(): Effect.Effect<never, never, unknown>
|
|
33
|
+
take(): Effect.Effect<never, never, Exit.Exit<Either.Either<Err, Done>, Elem>>
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Producer-side view of `SingleProducerAsyncInput` for variance purposes.
|
|
38
|
+
*
|
|
39
|
+
* @since 2.0.0
|
|
40
|
+
* @category models
|
|
41
|
+
*/
|
|
42
|
+
export interface AsyncInputProducer<Err, Elem, 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
|
+
}
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* Consumer-side view of `SingleProducerAsyncInput` for variance purposes.
|
|
51
|
+
*
|
|
52
|
+
* @since 2.0.0
|
|
53
|
+
* @category models
|
|
54
|
+
*/
|
|
55
|
+
export interface AsyncInputConsumer<Err, Elem, Done> {
|
|
56
|
+
takeWith<A>(
|
|
57
|
+
onError: (cause: Cause.Cause<Err>) => A,
|
|
58
|
+
onElement: (element: Elem) => A,
|
|
59
|
+
onDone: (value: Done) => A
|
|
60
|
+
): Effect.Effect<never, never, A>
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* @since 2.0.0
|
|
65
|
+
* @category constructors
|
|
66
|
+
*/
|
|
67
|
+
export const make: <Err, Elem, Done>() => Effect.Effect<never, never, SingleProducerAsyncInput<Err, Elem, Done>> =
|
|
68
|
+
internal.make
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 2.0.0
|
|
3
|
+
*/
|
|
4
|
+
import * as internal from "./internal/channel/upstreamPullRequest"
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* @since 2.0.0
|
|
8
|
+
* @category symbols
|
|
9
|
+
*/
|
|
10
|
+
export const UpstreamPullRequestTypeId: unique symbol = internal.UpstreamPullRequestTypeId
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* @since 2.0.0
|
|
14
|
+
* @category symbols
|
|
15
|
+
*/
|
|
16
|
+
export type UpstreamPullRequestTypeId = typeof UpstreamPullRequestTypeId
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* @since 2.0.0
|
|
20
|
+
* @category models
|
|
21
|
+
*/
|
|
22
|
+
export type UpstreamPullRequest<A> = Pulled<A> | NoUpstream
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* @since 2.0.0
|
|
26
|
+
*/
|
|
27
|
+
export declare namespace UpstreamPullRequest {
|
|
28
|
+
/**
|
|
29
|
+
* @since 2.0.0
|
|
30
|
+
* @category models
|
|
31
|
+
*/
|
|
32
|
+
export interface Variance<A> {
|
|
33
|
+
readonly [UpstreamPullRequestTypeId]: {
|
|
34
|
+
readonly _A: (_: never) => A
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
/**
|
|
40
|
+
* @since 2.0.0
|
|
41
|
+
* @category models
|
|
42
|
+
*/
|
|
43
|
+
export interface Pulled<A> extends UpstreamPullRequest.Variance<A> {
|
|
44
|
+
readonly _tag: "Pulled"
|
|
45
|
+
readonly value: A
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* @since 2.0.0
|
|
50
|
+
* @category models
|
|
51
|
+
*/
|
|
52
|
+
export interface NoUpstream extends UpstreamPullRequest.Variance<never> {
|
|
53
|
+
readonly _tag: "NoUpstream"
|
|
54
|
+
readonly activeDownstreamCount: number
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
/**
|
|
58
|
+
* @since 2.0.0
|
|
59
|
+
* @category constructors
|
|
60
|
+
*/
|
|
61
|
+
export const Pulled: <A>(value: A) => UpstreamPullRequest<A> = internal.Pulled
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* @since 2.0.0
|
|
65
|
+
* @category constructors
|
|
66
|
+
*/
|
|
67
|
+
export const NoUpstream: (activeDownstreamCount: number) => UpstreamPullRequest<never> = internal.NoUpstream
|
|
68
|
+
|
|
69
|
+
/**
|
|
70
|
+
* Returns `true` if the specified value is an `UpstreamPullRequest`, `false`
|
|
71
|
+
* otherwise.
|
|
72
|
+
*
|
|
73
|
+
* @since 2.0.0
|
|
74
|
+
* @category refinements
|
|
75
|
+
*/
|
|
76
|
+
export const isUpstreamPullRequest: (u: unknown) => u is UpstreamPullRequest<unknown> = internal.isUpstreamPullRequest
|
|
77
|
+
|
|
78
|
+
/**
|
|
79
|
+
* Returns `true` if the specified `UpstreamPullRequest` is a `Pulled`, `false`
|
|
80
|
+
* otherwise.
|
|
81
|
+
*
|
|
82
|
+
* @since 2.0.0
|
|
83
|
+
* @category refinements
|
|
84
|
+
*/
|
|
85
|
+
export const isPulled: <A>(self: UpstreamPullRequest<A>) => self is Pulled<A> = internal.isPulled
|
|
86
|
+
|
|
87
|
+
/**
|
|
88
|
+
* Returns `true` if the specified `UpstreamPullRequest` is a `NoUpstream`,
|
|
89
|
+
* `false` otherwise.
|
|
90
|
+
*
|
|
91
|
+
* @since 2.0.0
|
|
92
|
+
* @category refinements
|
|
93
|
+
*/
|
|
94
|
+
export const isNoUpstream: <A>(self: UpstreamPullRequest<A>) => self is NoUpstream = internal.isNoUpstream
|
|
95
|
+
|
|
96
|
+
/**
|
|
97
|
+
* Folds an `UpstreamPullRequest<A>` into a value of type `Z`.
|
|
98
|
+
*
|
|
99
|
+
* @since 2.0.0
|
|
100
|
+
* @category folding
|
|
101
|
+
*/
|
|
102
|
+
export const match: {
|
|
103
|
+
<A, Z>(
|
|
104
|
+
options: { readonly onPulled: (value: A) => Z; readonly onNoUpstream: (activeDownstreamCount: number) => Z }
|
|
105
|
+
): (self: UpstreamPullRequest<A>) => Z
|
|
106
|
+
<A, Z>(
|
|
107
|
+
self: UpstreamPullRequest<A>,
|
|
108
|
+
options: { readonly onPulled: (value: A) => Z; readonly onNoUpstream: (activeDownstreamCount: number) => Z }
|
|
109
|
+
): Z
|
|
110
|
+
} = internal.match
|