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,415 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 2.0.0
|
|
3
|
+
*/
|
|
4
|
+
import type { Chunk } from "./Chunk"
|
|
5
|
+
import type { Equal } from "./Equal"
|
|
6
|
+
import type { Inspectable } from "./Inspectable"
|
|
7
|
+
import * as RBT from "./internal/RedBlackTree"
|
|
8
|
+
import * as RBTI from "./internal/RedBlackTree/iterator"
|
|
9
|
+
import type { Option } from "./Option"
|
|
10
|
+
import type { Order } from "./Order"
|
|
11
|
+
import type { Pipeable } from "./Pipeable"
|
|
12
|
+
|
|
13
|
+
const TypeId: unique symbol = RBT.RedBlackTreeTypeId as TypeId
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* @since 2.0.0
|
|
17
|
+
* @category symbol
|
|
18
|
+
*/
|
|
19
|
+
export type TypeId = typeof TypeId
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* @since 2.0.0
|
|
23
|
+
* @category constants
|
|
24
|
+
*/
|
|
25
|
+
export const Direction = RBTI.Direction
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* A Red-Black Tree.
|
|
29
|
+
*
|
|
30
|
+
* @since 2.0.0
|
|
31
|
+
* @category models
|
|
32
|
+
*/
|
|
33
|
+
export interface RedBlackTree<Key, Value> extends Iterable<readonly [Key, Value]>, Equal, Pipeable, Inspectable {
|
|
34
|
+
readonly [TypeId]: TypeId
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* @since 2.0.0
|
|
39
|
+
*/
|
|
40
|
+
export declare namespace RedBlackTree {
|
|
41
|
+
/**
|
|
42
|
+
* @since 2.0.0
|
|
43
|
+
*/
|
|
44
|
+
export type Direction = number & {
|
|
45
|
+
readonly Direction: unique symbol
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* @since 2.0.0
|
|
51
|
+
* @category refinements
|
|
52
|
+
*/
|
|
53
|
+
export const isRedBlackTree: {
|
|
54
|
+
<K, V>(u: Iterable<readonly [K, V]>): u is RedBlackTree<K, V>
|
|
55
|
+
(u: unknown): u is RedBlackTree<unknown, unknown>
|
|
56
|
+
} = RBT.isRedBlackTree
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
* Creates an empty `RedBlackTree`.
|
|
60
|
+
*
|
|
61
|
+
* @since 2.0.0
|
|
62
|
+
* @category constructors
|
|
63
|
+
*/
|
|
64
|
+
export const empty: <K, V = never>(ord: Order<K>) => RedBlackTree<K, V> = RBT.empty
|
|
65
|
+
|
|
66
|
+
/**
|
|
67
|
+
* Constructs a new tree from an iterable of key-value pairs.
|
|
68
|
+
*
|
|
69
|
+
* @since 2.0.0
|
|
70
|
+
* @category constructors
|
|
71
|
+
*/
|
|
72
|
+
export const fromIterable: <K, V>(ord: Order<K>) => (entries: Iterable<readonly [K, V]>) => RedBlackTree<K, V> =
|
|
73
|
+
RBT.fromIterable
|
|
74
|
+
|
|
75
|
+
/**
|
|
76
|
+
* Constructs a new `RedBlackTree` from the specified entries.
|
|
77
|
+
*
|
|
78
|
+
* @since 2.0.0
|
|
79
|
+
* @category constructors
|
|
80
|
+
*/
|
|
81
|
+
export const make: <K>(
|
|
82
|
+
ord: Order<K>
|
|
83
|
+
) => <Entries extends Array<readonly [K, any]>>(
|
|
84
|
+
...entries: Entries
|
|
85
|
+
) => RedBlackTree<K, Entries[number] extends readonly [any, infer V] ? V : never> = RBT.make
|
|
86
|
+
|
|
87
|
+
/**
|
|
88
|
+
* Returns an iterator that points to the element at the specified index of the
|
|
89
|
+
* tree.
|
|
90
|
+
*
|
|
91
|
+
* **Note**: The iterator will run through elements in order.
|
|
92
|
+
*
|
|
93
|
+
* @since 2.0.0
|
|
94
|
+
* @category traversing
|
|
95
|
+
*/
|
|
96
|
+
export const at: {
|
|
97
|
+
(index: number): <K, V>(self: RedBlackTree<K, V>) => Iterable<readonly [K, V]>
|
|
98
|
+
<K, V>(self: RedBlackTree<K, V>, index: number): Iterable<readonly [K, V]>
|
|
99
|
+
} = RBT.atForwards
|
|
100
|
+
|
|
101
|
+
/**
|
|
102
|
+
* Returns an iterator that points to the element at the specified index of the
|
|
103
|
+
* tree.
|
|
104
|
+
*
|
|
105
|
+
* **Note**: The iterator will run through elements in reverse order.
|
|
106
|
+
*
|
|
107
|
+
* @since 2.0.0
|
|
108
|
+
* @category traversing
|
|
109
|
+
*/
|
|
110
|
+
export const atReversed: {
|
|
111
|
+
(index: number): <K, V>(self: RedBlackTree<K, V>) => Iterable<readonly [K, V]>
|
|
112
|
+
<K, V>(self: RedBlackTree<K, V>, index: number): Iterable<readonly [K, V]>
|
|
113
|
+
} = RBT.atBackwards
|
|
114
|
+
|
|
115
|
+
/**
|
|
116
|
+
* Finds all values in the tree associated with the specified key.
|
|
117
|
+
*
|
|
118
|
+
* @since 2.0.0
|
|
119
|
+
* @category elements
|
|
120
|
+
*/
|
|
121
|
+
export const findAll: {
|
|
122
|
+
<K>(key: K): <V>(self: RedBlackTree<K, V>) => Chunk<V>
|
|
123
|
+
<K, V>(self: RedBlackTree<K, V>, key: K): Chunk<V>
|
|
124
|
+
} = RBT.findAll
|
|
125
|
+
|
|
126
|
+
/**
|
|
127
|
+
* Finds the first value in the tree associated with the specified key, if it exists.
|
|
128
|
+
*
|
|
129
|
+
* @category elements
|
|
130
|
+
* @since 2.0.0
|
|
131
|
+
*/
|
|
132
|
+
export const findFirst: {
|
|
133
|
+
<K>(key: K): <V>(self: RedBlackTree<K, V>) => Option<V>
|
|
134
|
+
<K, V>(self: RedBlackTree<K, V>, key: K): Option<V>
|
|
135
|
+
} = RBT.findFirst
|
|
136
|
+
|
|
137
|
+
/**
|
|
138
|
+
* Returns the first entry in the tree, if it exists.
|
|
139
|
+
*
|
|
140
|
+
* @since 2.0.0
|
|
141
|
+
* @category getters
|
|
142
|
+
*/
|
|
143
|
+
export const first: <K, V>(self: RedBlackTree<K, V>) => Option<readonly [K, V]> = RBT.first
|
|
144
|
+
|
|
145
|
+
/**
|
|
146
|
+
* Returns the element at the specified index within the tree or `None` if the
|
|
147
|
+
* specified index does not exist.
|
|
148
|
+
*
|
|
149
|
+
* @since 2.0.0
|
|
150
|
+
* @category elements
|
|
151
|
+
*/
|
|
152
|
+
export const getAt: {
|
|
153
|
+
(index: number): <K, V>(self: RedBlackTree<K, V>) => Option<readonly [K, V]>
|
|
154
|
+
<K, V>(self: RedBlackTree<K, V>, index: number): Option<readonly [K, V]>
|
|
155
|
+
} = RBT.getAt
|
|
156
|
+
|
|
157
|
+
/**
|
|
158
|
+
* Gets the `Order<K>` that the `RedBlackTree<K, V>` is using.
|
|
159
|
+
*
|
|
160
|
+
* @since 2.0.0
|
|
161
|
+
* @category getters
|
|
162
|
+
*/
|
|
163
|
+
export const getOrder: <K, V>(self: RedBlackTree<K, V>) => Order<K> = RBT.getOrder
|
|
164
|
+
|
|
165
|
+
/**
|
|
166
|
+
* Returns an iterator that traverse entries in order with keys greater than the
|
|
167
|
+
* specified key.
|
|
168
|
+
*
|
|
169
|
+
* @since 2.0.0
|
|
170
|
+
* @category traversing
|
|
171
|
+
*/
|
|
172
|
+
export const greaterThan: {
|
|
173
|
+
<K>(key: K): <V>(self: RedBlackTree<K, V>) => Iterable<readonly [K, V]>
|
|
174
|
+
<K, V>(self: RedBlackTree<K, V>, key: K): Iterable<readonly [K, V]>
|
|
175
|
+
} = RBT.greaterThanForwards
|
|
176
|
+
|
|
177
|
+
/**
|
|
178
|
+
* Returns an iterator that traverse entries in reverse order with keys greater
|
|
179
|
+
* than the specified key.
|
|
180
|
+
*
|
|
181
|
+
* @since 2.0.0
|
|
182
|
+
* @category traversing
|
|
183
|
+
*/
|
|
184
|
+
export const greaterThanReversed: {
|
|
185
|
+
<K>(key: K): <V>(self: RedBlackTree<K, V>) => Iterable<readonly [K, V]>
|
|
186
|
+
<K, V>(self: RedBlackTree<K, V>, key: K): Iterable<readonly [K, V]>
|
|
187
|
+
} = RBT.greaterThanBackwards
|
|
188
|
+
|
|
189
|
+
/**
|
|
190
|
+
* Returns an iterator that traverse entries in order with keys greater than or
|
|
191
|
+
* equal to the specified key.
|
|
192
|
+
*
|
|
193
|
+
* @since 2.0.0
|
|
194
|
+
* @category traversing
|
|
195
|
+
*/
|
|
196
|
+
export const greaterThanEqual: {
|
|
197
|
+
<K>(key: K): <V>(self: RedBlackTree<K, V>) => Iterable<readonly [K, V]>
|
|
198
|
+
<K, V>(self: RedBlackTree<K, V>, key: K): Iterable<readonly [K, V]>
|
|
199
|
+
} = RBT.greaterThanEqualForwards
|
|
200
|
+
|
|
201
|
+
/**
|
|
202
|
+
* Returns an iterator that traverse entries in reverse order with keys greater
|
|
203
|
+
* than or equal to the specified key.
|
|
204
|
+
*
|
|
205
|
+
* @since 2.0.0
|
|
206
|
+
* @category traversing
|
|
207
|
+
*/
|
|
208
|
+
export const greaterThanEqualReversed: {
|
|
209
|
+
<K>(key: K): <V>(self: RedBlackTree<K, V>) => Iterable<readonly [K, V]>
|
|
210
|
+
<K, V>(self: RedBlackTree<K, V>, key: K): Iterable<readonly [K, V]>
|
|
211
|
+
} = RBT.greaterThanEqualBackwards
|
|
212
|
+
|
|
213
|
+
/**
|
|
214
|
+
* Finds the item with key, if it exists.
|
|
215
|
+
*
|
|
216
|
+
* @since 2.0.0
|
|
217
|
+
* @category elements
|
|
218
|
+
*/
|
|
219
|
+
export const has: {
|
|
220
|
+
<K>(key: K): <V>(self: RedBlackTree<K, V>) => boolean
|
|
221
|
+
<K, V>(self: RedBlackTree<K, V>, key: K): boolean
|
|
222
|
+
} = RBT.has
|
|
223
|
+
|
|
224
|
+
/**
|
|
225
|
+
* Insert a new item into the tree.
|
|
226
|
+
*
|
|
227
|
+
* @since 2.0.0
|
|
228
|
+
*/
|
|
229
|
+
export const insert: {
|
|
230
|
+
<K, V>(key: K, value: V): (self: RedBlackTree<K, V>) => RedBlackTree<K, V>
|
|
231
|
+
<K, V>(self: RedBlackTree<K, V>, key: K, value: V): RedBlackTree<K, V>
|
|
232
|
+
} = RBT.insert
|
|
233
|
+
|
|
234
|
+
/**
|
|
235
|
+
* Get all the keys present in the tree in order.
|
|
236
|
+
*
|
|
237
|
+
* @since 2.0.0
|
|
238
|
+
* @category getters
|
|
239
|
+
*/
|
|
240
|
+
export const keys: <K, V>(self: RedBlackTree<K, V>) => IterableIterator<K> = RBT.keysForward
|
|
241
|
+
|
|
242
|
+
/**
|
|
243
|
+
* Get all the keys present in the tree in reverse order.
|
|
244
|
+
*
|
|
245
|
+
* @since 2.0.0
|
|
246
|
+
* @category getters
|
|
247
|
+
*/
|
|
248
|
+
export const keysReversed: <K, V>(self: RedBlackTree<K, V>) => IterableIterator<K> = RBT.keysBackward
|
|
249
|
+
|
|
250
|
+
/**
|
|
251
|
+
* Returns the last entry in the tree, if it exists.
|
|
252
|
+
*
|
|
253
|
+
* @since 2.0.0
|
|
254
|
+
* @category getters
|
|
255
|
+
*/
|
|
256
|
+
export const last: <K, V>(self: RedBlackTree<K, V>) => Option<readonly [K, V]> = RBT.last
|
|
257
|
+
|
|
258
|
+
/**
|
|
259
|
+
* Returns an iterator that traverse entries in order with keys less than the
|
|
260
|
+
* specified key.
|
|
261
|
+
*
|
|
262
|
+
* @since 2.0.0
|
|
263
|
+
* @category traversing
|
|
264
|
+
*/
|
|
265
|
+
export const lessThan: {
|
|
266
|
+
<K>(key: K): <V>(self: RedBlackTree<K, V>) => Iterable<readonly [K, V]>
|
|
267
|
+
<K, V>(self: RedBlackTree<K, V>, key: K): Iterable<readonly [K, V]>
|
|
268
|
+
} = RBT.lessThanForwards
|
|
269
|
+
|
|
270
|
+
/**
|
|
271
|
+
* Returns an iterator that traverse entries in reverse order with keys less
|
|
272
|
+
* than the specified key.
|
|
273
|
+
*
|
|
274
|
+
* @since 2.0.0
|
|
275
|
+
* @category traversing
|
|
276
|
+
*/
|
|
277
|
+
export const lessThanReversed: {
|
|
278
|
+
<K>(key: K): <V>(self: RedBlackTree<K, V>) => Iterable<readonly [K, V]>
|
|
279
|
+
<K, V>(self: RedBlackTree<K, V>, key: K): Iterable<readonly [K, V]>
|
|
280
|
+
} = RBT.lessThanBackwards
|
|
281
|
+
|
|
282
|
+
/**
|
|
283
|
+
* Returns an iterator that traverse entries in order with keys less than or
|
|
284
|
+
* equal to the specified key.
|
|
285
|
+
*
|
|
286
|
+
* @since 2.0.0
|
|
287
|
+
* @category traversing
|
|
288
|
+
*/
|
|
289
|
+
export const lessThanEqual: {
|
|
290
|
+
<K>(key: K): <V>(self: RedBlackTree<K, V>) => Iterable<readonly [K, V]>
|
|
291
|
+
<K, V>(self: RedBlackTree<K, V>, key: K): Iterable<readonly [K, V]>
|
|
292
|
+
} = RBT.lessThanEqualForwards
|
|
293
|
+
|
|
294
|
+
/**
|
|
295
|
+
* Returns an iterator that traverse entries in reverse order with keys less
|
|
296
|
+
* than or equal to the specified key.
|
|
297
|
+
*
|
|
298
|
+
* @since 2.0.0
|
|
299
|
+
* @category traversing
|
|
300
|
+
*/
|
|
301
|
+
export const lessThanEqualReversed: {
|
|
302
|
+
<K>(key: K): <V>(self: RedBlackTree<K, V>) => Iterable<readonly [K, V]>
|
|
303
|
+
<K, V>(self: RedBlackTree<K, V>, key: K): Iterable<readonly [K, V]>
|
|
304
|
+
} = RBT.lessThanEqualBackwards
|
|
305
|
+
|
|
306
|
+
/**
|
|
307
|
+
* Execute the specified function for each node of the tree, in order.
|
|
308
|
+
*
|
|
309
|
+
* @since 2.0.0
|
|
310
|
+
* @category traversing
|
|
311
|
+
*/
|
|
312
|
+
export const forEach: {
|
|
313
|
+
<K, V>(f: (key: K, value: V) => void): (self: RedBlackTree<K, V>) => void
|
|
314
|
+
<K, V>(self: RedBlackTree<K, V>, f: (key: K, value: V) => void): void
|
|
315
|
+
} = RBT.forEach
|
|
316
|
+
|
|
317
|
+
/**
|
|
318
|
+
* Visit each node of the tree in order with key greater then or equal to max.
|
|
319
|
+
*
|
|
320
|
+
* @since 2.0.0
|
|
321
|
+
* @category traversing
|
|
322
|
+
*/
|
|
323
|
+
export const forEachGreaterThanEqual: {
|
|
324
|
+
<K, V>(min: K, f: (key: K, value: V) => void): (self: RedBlackTree<K, V>) => void
|
|
325
|
+
<K, V>(self: RedBlackTree<K, V>, min: K, f: (key: K, value: V) => void): void
|
|
326
|
+
} = RBT.forEachGreaterThanEqual
|
|
327
|
+
|
|
328
|
+
/**
|
|
329
|
+
* Visit each node of the tree in order with key lower then max.
|
|
330
|
+
*
|
|
331
|
+
* @since 2.0.0
|
|
332
|
+
* @category traversing
|
|
333
|
+
*/
|
|
334
|
+
export const forEachLessThan: {
|
|
335
|
+
<K, V>(max: K, f: (key: K, value: V) => void): (self: RedBlackTree<K, V>) => void
|
|
336
|
+
<K, V>(self: RedBlackTree<K, V>, max: K, f: (key: K, value: V) => void): void
|
|
337
|
+
} = RBT.forEachLessThan
|
|
338
|
+
|
|
339
|
+
/**
|
|
340
|
+
* Visit each node of the tree in order with key lower than max and greater
|
|
341
|
+
* than or equal to min.
|
|
342
|
+
*
|
|
343
|
+
* @since 2.0.0
|
|
344
|
+
* @category traversing
|
|
345
|
+
*/
|
|
346
|
+
export const forEachBetween: {
|
|
347
|
+
<K, V>(
|
|
348
|
+
options: {
|
|
349
|
+
readonly min: K
|
|
350
|
+
readonly max: K
|
|
351
|
+
readonly body: (key: K, value: V) => void
|
|
352
|
+
}
|
|
353
|
+
): (self: RedBlackTree<K, V>) => void
|
|
354
|
+
<K, V>(
|
|
355
|
+
self: RedBlackTree<K, V>,
|
|
356
|
+
options: {
|
|
357
|
+
readonly min: K
|
|
358
|
+
readonly max: K
|
|
359
|
+
readonly body: (key: K, value: V) => void
|
|
360
|
+
}
|
|
361
|
+
): void
|
|
362
|
+
} = RBT.forEachBetween
|
|
363
|
+
|
|
364
|
+
/**
|
|
365
|
+
* Reduce a state over the entries of the tree.
|
|
366
|
+
*
|
|
367
|
+
* @since 2.0.0
|
|
368
|
+
* @category folding
|
|
369
|
+
*/
|
|
370
|
+
export const reduce: {
|
|
371
|
+
<Z, V, K>(zero: Z, f: (accumulator: Z, value: V, key: K) => Z): (self: RedBlackTree<K, V>) => Z
|
|
372
|
+
<Z, V, K>(self: RedBlackTree<K, V>, zero: Z, f: (accumulator: Z, value: V, key: K) => Z): Z
|
|
373
|
+
} = RBT.reduce
|
|
374
|
+
|
|
375
|
+
/**
|
|
376
|
+
* Removes the entry with the specified key, if it exists.
|
|
377
|
+
*
|
|
378
|
+
* @since 2.0.0
|
|
379
|
+
*/
|
|
380
|
+
export const removeFirst: {
|
|
381
|
+
<K>(key: K): <V>(self: RedBlackTree<K, V>) => RedBlackTree<K, V>
|
|
382
|
+
<K, V>(self: RedBlackTree<K, V>, key: K): RedBlackTree<K, V>
|
|
383
|
+
} = RBT.removeFirst
|
|
384
|
+
|
|
385
|
+
/**
|
|
386
|
+
* Traverse the tree in reverse order.
|
|
387
|
+
*
|
|
388
|
+
* @since 2.0.0
|
|
389
|
+
* @category traversing
|
|
390
|
+
*/
|
|
391
|
+
export const reversed: <K, V>(self: RedBlackTree<K, V>) => Iterable<readonly [K, V]> = RBT.reversed
|
|
392
|
+
|
|
393
|
+
/**
|
|
394
|
+
* Returns the size of the tree.
|
|
395
|
+
*
|
|
396
|
+
* @since 2.0.0
|
|
397
|
+
* @category getters
|
|
398
|
+
*/
|
|
399
|
+
export const size: <K, V>(self: RedBlackTree<K, V>) => number = RBT.size
|
|
400
|
+
|
|
401
|
+
/**
|
|
402
|
+
* Get all values present in the tree in order.
|
|
403
|
+
*
|
|
404
|
+
* @since 2.0.0
|
|
405
|
+
* @category getters
|
|
406
|
+
*/
|
|
407
|
+
export const values: <K, V>(self: RedBlackTree<K, V>) => IterableIterator<V> = RBT.valuesForward
|
|
408
|
+
|
|
409
|
+
/**
|
|
410
|
+
* Get all values present in the tree in reverse order.
|
|
411
|
+
*
|
|
412
|
+
* @since 2.0.0
|
|
413
|
+
* @category getters
|
|
414
|
+
*/
|
|
415
|
+
export const valuesReversed: <K, V>(self: RedBlackTree<K, V>) => IterableIterator<V> = RBT.valuesBackward
|
package/src/Ref.ts
ADDED
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 2.0.0
|
|
3
|
+
*/
|
|
4
|
+
import type * as Effect from "./Effect"
|
|
5
|
+
import * as internal from "./internal/ref"
|
|
6
|
+
import type * as Option from "./Option"
|
|
7
|
+
import type { Pipeable } from "./Pipeable"
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* @since 2.0.0
|
|
11
|
+
* @category symbols
|
|
12
|
+
*/
|
|
13
|
+
export const RefTypeId: unique symbol = internal.RefTypeId
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* @since 2.0.0
|
|
17
|
+
* @category symbols
|
|
18
|
+
*/
|
|
19
|
+
export type RefTypeId = typeof RefTypeId
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* @since 2.0.0
|
|
23
|
+
* @category models
|
|
24
|
+
*/
|
|
25
|
+
export interface Ref<A> extends Ref.Variance<A>, Pipeable {
|
|
26
|
+
modify<B>(f: (a: A) => readonly [B, A]): Effect.Effect<never, never, B>
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* @since 2.0.0
|
|
31
|
+
* @category models
|
|
32
|
+
*/
|
|
33
|
+
export declare namespace Ref {
|
|
34
|
+
/**
|
|
35
|
+
* @since 2.0.0
|
|
36
|
+
*/
|
|
37
|
+
export interface Variance<A> {
|
|
38
|
+
readonly [RefTypeId]: {
|
|
39
|
+
readonly _A: (_: never) => A
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* @since 2.0.0
|
|
46
|
+
* @category constructors
|
|
47
|
+
*/
|
|
48
|
+
export const make: <A>(value: A) => Effect.Effect<never, never, Ref<A>> = internal.make
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* @since 2.0.0
|
|
52
|
+
* @category getters
|
|
53
|
+
*/
|
|
54
|
+
export const get: <A>(self: Ref<A>) => Effect.Effect<never, never, A> = internal.get
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
* @since 2.0.0
|
|
58
|
+
* @category utils
|
|
59
|
+
*/
|
|
60
|
+
export const getAndSet: {
|
|
61
|
+
<A>(value: A): (self: Ref<A>) => Effect.Effect<never, never, A>
|
|
62
|
+
<A>(self: Ref<A>, value: A): Effect.Effect<never, never, A>
|
|
63
|
+
} = internal.getAndSet
|
|
64
|
+
|
|
65
|
+
/**
|
|
66
|
+
* @since 2.0.0
|
|
67
|
+
* @category utils
|
|
68
|
+
*/
|
|
69
|
+
export const getAndUpdate: {
|
|
70
|
+
<A>(f: (a: A) => A): (self: Ref<A>) => Effect.Effect<never, never, A>
|
|
71
|
+
<A>(self: Ref<A>, f: (a: A) => A): Effect.Effect<never, never, A>
|
|
72
|
+
} = internal.getAndUpdate
|
|
73
|
+
|
|
74
|
+
/**
|
|
75
|
+
* @since 2.0.0
|
|
76
|
+
* @category utils
|
|
77
|
+
*/
|
|
78
|
+
export const getAndUpdateSome: {
|
|
79
|
+
<A>(pf: (a: A) => Option.Option<A>): (self: Ref<A>) => Effect.Effect<never, never, A>
|
|
80
|
+
<A>(self: Ref<A>, pf: (a: A) => Option.Option<A>): Effect.Effect<never, never, A>
|
|
81
|
+
} = internal.getAndUpdateSome
|
|
82
|
+
|
|
83
|
+
/**
|
|
84
|
+
* @since 2.0.0
|
|
85
|
+
* @category utils
|
|
86
|
+
*/
|
|
87
|
+
export const modify: {
|
|
88
|
+
<A, B>(f: (a: A) => readonly [B, A]): (self: Ref<A>) => Effect.Effect<never, never, B>
|
|
89
|
+
<A, B>(self: Ref<A>, f: (a: A) => readonly [B, A]): Effect.Effect<never, never, B>
|
|
90
|
+
} = internal.modify
|
|
91
|
+
|
|
92
|
+
/**
|
|
93
|
+
* @since 2.0.0
|
|
94
|
+
* @category utils
|
|
95
|
+
*/
|
|
96
|
+
export const modifySome: {
|
|
97
|
+
<B, A>(fallback: B, pf: (a: A) => Option.Option<readonly [B, A]>): (self: Ref<A>) => Effect.Effect<never, never, B>
|
|
98
|
+
<A, B>(self: Ref<A>, fallback: B, pf: (a: A) => Option.Option<readonly [B, A]>): Effect.Effect<never, never, B>
|
|
99
|
+
} = internal.modifySome
|
|
100
|
+
|
|
101
|
+
/**
|
|
102
|
+
* @since 2.0.0
|
|
103
|
+
* @category utils
|
|
104
|
+
*/
|
|
105
|
+
export const set: {
|
|
106
|
+
<A>(value: A): (self: Ref<A>) => Effect.Effect<never, never, void>
|
|
107
|
+
<A>(self: Ref<A>, value: A): Effect.Effect<never, never, void>
|
|
108
|
+
} = internal.set
|
|
109
|
+
|
|
110
|
+
/**
|
|
111
|
+
* @since 2.0.0
|
|
112
|
+
* @category utils
|
|
113
|
+
*/
|
|
114
|
+
export const setAndGet: {
|
|
115
|
+
<A>(value: A): (self: Ref<A>) => Effect.Effect<never, never, A>
|
|
116
|
+
<A>(self: Ref<A>, value: A): Effect.Effect<never, never, A>
|
|
117
|
+
} = internal.setAndGet
|
|
118
|
+
|
|
119
|
+
/**
|
|
120
|
+
* @since 2.0.0
|
|
121
|
+
* @category utils
|
|
122
|
+
*/
|
|
123
|
+
export const update: {
|
|
124
|
+
<A>(f: (a: A) => A): (self: Ref<A>) => Effect.Effect<never, never, void>
|
|
125
|
+
<A>(self: Ref<A>, f: (a: A) => A): Effect.Effect<never, never, void>
|
|
126
|
+
} = internal.update
|
|
127
|
+
|
|
128
|
+
/**
|
|
129
|
+
* @since 2.0.0
|
|
130
|
+
* @category utils
|
|
131
|
+
*/
|
|
132
|
+
export const updateAndGet: {
|
|
133
|
+
<A>(f: (a: A) => A): (self: Ref<A>) => Effect.Effect<never, never, A>
|
|
134
|
+
<A>(self: Ref<A>, f: (a: A) => A): Effect.Effect<never, never, A>
|
|
135
|
+
} = internal.updateAndGet
|
|
136
|
+
|
|
137
|
+
/**
|
|
138
|
+
* @since 2.0.0
|
|
139
|
+
* @category utils
|
|
140
|
+
*/
|
|
141
|
+
export const updateSome: {
|
|
142
|
+
<A>(f: (a: A) => Option.Option<A>): (self: Ref<A>) => Effect.Effect<never, never, void>
|
|
143
|
+
<A>(self: Ref<A>, f: (a: A) => Option.Option<A>): Effect.Effect<never, never, void>
|
|
144
|
+
} = internal.updateSome
|
|
145
|
+
|
|
146
|
+
/**
|
|
147
|
+
* @since 2.0.0
|
|
148
|
+
* @category utils
|
|
149
|
+
*/
|
|
150
|
+
export const updateSomeAndGet: {
|
|
151
|
+
<A>(pf: (a: A) => Option.Option<A>): (self: Ref<A>) => Effect.Effect<never, never, A>
|
|
152
|
+
<A>(self: Ref<A>, pf: (a: A) => Option.Option<A>): Effect.Effect<never, never, A>
|
|
153
|
+
} = internal.updateSomeAndGet
|
|
154
|
+
|
|
155
|
+
/**
|
|
156
|
+
* @since 2.0.0
|
|
157
|
+
* @category unsafe
|
|
158
|
+
*/
|
|
159
|
+
export const unsafeMake: <A>(value: A) => Ref<A> = internal.unsafeMake
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 2.0.0
|
|
3
|
+
*/
|
|
4
|
+
import type * as Context from "./Context"
|
|
5
|
+
import type * as Effect from "./Effect"
|
|
6
|
+
import * as internal from "./internal/reloadable"
|
|
7
|
+
import type * as Layer from "./Layer"
|
|
8
|
+
import type * as Schedule from "./Schedule"
|
|
9
|
+
import type * as ScopedRef from "./ScopedRef"
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* @since 2.0.0
|
|
13
|
+
* @category symbols
|
|
14
|
+
*/
|
|
15
|
+
export const ReloadableTypeId: unique symbol = internal.ReloadableTypeId
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* @since 2.0.0
|
|
19
|
+
* @category symbols
|
|
20
|
+
*/
|
|
21
|
+
export type ReloadableTypeId = typeof ReloadableTypeId
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* A `Reloadable` is an implementation of some service that can be dynamically
|
|
25
|
+
* reloaded, or swapped out for another implementation on-the-fly.
|
|
26
|
+
*
|
|
27
|
+
* @since 2.0.0
|
|
28
|
+
* @category models
|
|
29
|
+
*/
|
|
30
|
+
export interface Reloadable<A> extends Reloadable.Variance<A> {
|
|
31
|
+
/**
|
|
32
|
+
* @internal
|
|
33
|
+
*/
|
|
34
|
+
readonly scopedRef: ScopedRef.ScopedRef<A>
|
|
35
|
+
/**
|
|
36
|
+
* @internal
|
|
37
|
+
*/
|
|
38
|
+
reload(): Effect.Effect<never, unknown, void>
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* @since 2.0.0
|
|
43
|
+
*/
|
|
44
|
+
export declare namespace Reloadable {
|
|
45
|
+
/**
|
|
46
|
+
* @since 2.0.0
|
|
47
|
+
* @category models
|
|
48
|
+
*/
|
|
49
|
+
export interface Variance<A> {
|
|
50
|
+
readonly [ReloadableTypeId]: {
|
|
51
|
+
readonly _A: (_: never) => A
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
* Makes a new reloadable service from a layer that describes the construction
|
|
58
|
+
* of a static service. The service is automatically reloaded according to the
|
|
59
|
+
* provided schedule.
|
|
60
|
+
*
|
|
61
|
+
* @since 2.0.0
|
|
62
|
+
* @category constructors
|
|
63
|
+
*/
|
|
64
|
+
export const auto: <Out extends Context.Tag<any, any>, In, E, R>(
|
|
65
|
+
tag: Out,
|
|
66
|
+
options: {
|
|
67
|
+
readonly layer: Layer.Layer<In, E, Context.Tag.Identifier<Out>>
|
|
68
|
+
readonly schedule: Schedule.Schedule<R, unknown, unknown>
|
|
69
|
+
}
|
|
70
|
+
) => Layer.Layer<In | R, E, Reloadable<Context.Tag.Identifier<Out>>> = internal.auto
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* Makes a new reloadable service from a layer that describes the construction
|
|
74
|
+
* of a static service. The service is automatically reloaded according to a
|
|
75
|
+
* schedule, which is extracted from the input to the layer.
|
|
76
|
+
*
|
|
77
|
+
* @since 2.0.0
|
|
78
|
+
* @category constructors
|
|
79
|
+
*/
|
|
80
|
+
export const autoFromConfig: <Out extends Context.Tag<any, any>, In, E, R>(
|
|
81
|
+
tag: Out,
|
|
82
|
+
options: {
|
|
83
|
+
readonly layer: Layer.Layer<In, E, Context.Tag.Identifier<Out>>
|
|
84
|
+
readonly scheduleFromConfig: (context: Context.Context<In>) => Schedule.Schedule<R, unknown, unknown>
|
|
85
|
+
}
|
|
86
|
+
) => Layer.Layer<In | R, E, Reloadable<Context.Tag.Identifier<Out>>> = internal.autoFromConfig
|
|
87
|
+
|
|
88
|
+
/**
|
|
89
|
+
* Retrieves the current version of the reloadable service.
|
|
90
|
+
*
|
|
91
|
+
* @since 2.0.0
|
|
92
|
+
* @category getters
|
|
93
|
+
*/
|
|
94
|
+
export const get: <T extends Context.Tag<any, any>>(
|
|
95
|
+
tag: T
|
|
96
|
+
) => Effect.Effect<Reloadable<Context.Tag.Identifier<T>>, never, Context.Tag.Service<T>> = internal.get
|
|
97
|
+
|
|
98
|
+
/**
|
|
99
|
+
* Makes a new reloadable service from a layer that describes the construction
|
|
100
|
+
* of a static service.
|
|
101
|
+
*
|
|
102
|
+
* @since 2.0.0
|
|
103
|
+
* @category constructors
|
|
104
|
+
*/
|
|
105
|
+
export const manual: <Out extends Context.Tag<any, any>, In, E>(
|
|
106
|
+
tag: Out,
|
|
107
|
+
options: { readonly layer: Layer.Layer<In, E, Context.Tag.Identifier<Out>> }
|
|
108
|
+
) => Layer.Layer<In, E, Reloadable<Context.Tag.Identifier<Out>>> = internal.manual
|
|
109
|
+
|
|
110
|
+
/**
|
|
111
|
+
* Reloads the specified service.
|
|
112
|
+
*
|
|
113
|
+
* @since 2.0.0
|
|
114
|
+
* @category constructors
|
|
115
|
+
*/
|
|
116
|
+
export const reload: <T extends Context.Tag<any, any>>(
|
|
117
|
+
tag: T
|
|
118
|
+
) => Effect.Effect<Reloadable<Context.Tag.Identifier<T>>, unknown, void> = internal.reload
|
|
119
|
+
|
|
120
|
+
/**
|
|
121
|
+
* @since 2.0.0
|
|
122
|
+
* @category context
|
|
123
|
+
*/
|
|
124
|
+
export const tag: <T extends Context.Tag<any, any>>(
|
|
125
|
+
tag: T
|
|
126
|
+
) => Context.Tag<Reloadable<Context.Tag.Identifier<T>>, Reloadable<Context.Tag.Service<T>>> = internal.reloadableTag
|
|
127
|
+
|
|
128
|
+
/**
|
|
129
|
+
* Forks the reload of the service in the background, ignoring any errors.
|
|
130
|
+
*
|
|
131
|
+
* @since 2.0.0
|
|
132
|
+
* @category constructors
|
|
133
|
+
*/
|
|
134
|
+
export const reloadFork: <T extends Context.Tag<any, any>>(
|
|
135
|
+
tag: T
|
|
136
|
+
) => Effect.Effect<Reloadable<Context.Tag.Identifier<T>>, unknown, void> = internal.reloadFork
|