@depup/effect 3.20.0-depup.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.index/package.json +6 -0
- package/Arbitrary/package.json +6 -0
- package/Array/package.json +6 -0
- package/BigDecimal/package.json +6 -0
- package/BigInt/package.json +6 -0
- package/Boolean/package.json +6 -0
- package/Brand/package.json +6 -0
- package/Cache/package.json +6 -0
- package/Cause/package.json +6 -0
- package/Channel/package.json +6 -0
- package/ChildExecutorDecision/package.json +6 -0
- package/Chunk/package.json +6 -0
- package/Clock/package.json +6 -0
- package/Config/package.json +6 -0
- package/ConfigError/package.json +6 -0
- package/ConfigProvider/package.json +6 -0
- package/ConfigProviderPathPatch/package.json +6 -0
- package/Console/package.json +6 -0
- package/Context/package.json +6 -0
- package/Cron/package.json +6 -0
- package/Data/package.json +6 -0
- package/DateTime/package.json +6 -0
- package/DefaultServices/package.json +6 -0
- package/Deferred/package.json +6 -0
- package/Differ/package.json +6 -0
- package/Duration/package.json +6 -0
- package/Effect/package.json +6 -0
- package/Effectable/package.json +6 -0
- package/Either/package.json +6 -0
- package/Encoding/package.json +6 -0
- package/Equal/package.json +6 -0
- package/Equivalence/package.json +6 -0
- package/ExecutionPlan/package.json +6 -0
- package/ExecutionStrategy/package.json +6 -0
- package/Exit/package.json +6 -0
- package/FastCheck/package.json +6 -0
- package/Fiber/package.json +6 -0
- package/FiberHandle/package.json +6 -0
- package/FiberId/package.json +6 -0
- package/FiberMap/package.json +6 -0
- package/FiberRef/package.json +6 -0
- package/FiberRefs/package.json +6 -0
- package/FiberRefsPatch/package.json +6 -0
- package/FiberSet/package.json +6 -0
- package/FiberStatus/package.json +6 -0
- package/Function/package.json +6 -0
- package/GlobalValue/package.json +6 -0
- package/Graph/package.json +6 -0
- package/GroupBy/package.json +6 -0
- package/HKT/package.json +6 -0
- package/Hash/package.json +6 -0
- package/HashMap/package.json +6 -0
- package/HashRing/package.json +6 -0
- package/HashSet/package.json +6 -0
- package/Inspectable/package.json +6 -0
- package/Iterable/package.json +6 -0
- package/JSONSchema/package.json +6 -0
- package/KeyedPool/package.json +6 -0
- package/LICENSE +21 -0
- package/Layer/package.json +6 -0
- package/LayerMap/package.json +6 -0
- package/List/package.json +6 -0
- package/LogLevel/package.json +6 -0
- package/LogSpan/package.json +6 -0
- package/Logger/package.json +6 -0
- package/Mailbox/package.json +6 -0
- package/ManagedRuntime/package.json +6 -0
- package/Match/package.json +6 -0
- package/MergeDecision/package.json +6 -0
- package/MergeState/package.json +6 -0
- package/MergeStrategy/package.json +6 -0
- package/Metric/package.json +6 -0
- package/MetricBoundaries/package.json +6 -0
- package/MetricHook/package.json +6 -0
- package/MetricKey/package.json +6 -0
- package/MetricKeyType/package.json +6 -0
- package/MetricLabel/package.json +6 -0
- package/MetricPair/package.json +6 -0
- package/MetricPolling/package.json +6 -0
- package/MetricRegistry/package.json +6 -0
- package/MetricState/package.json +6 -0
- package/Micro/package.json +6 -0
- package/ModuleVersion/package.json +6 -0
- package/MutableHashMap/package.json +6 -0
- package/MutableHashSet/package.json +6 -0
- package/MutableList/package.json +6 -0
- package/MutableQueue/package.json +6 -0
- package/MutableRef/package.json +6 -0
- package/NonEmptyIterable/package.json +6 -0
- package/Number/package.json +6 -0
- package/Option/package.json +6 -0
- package/Order/package.json +6 -0
- package/Ordering/package.json +6 -0
- package/ParseResult/package.json +6 -0
- package/PartitionedSemaphore/package.json +6 -0
- package/Pipeable/package.json +6 -0
- package/Pool/package.json +6 -0
- package/Predicate/package.json +6 -0
- package/Pretty/package.json +6 -0
- package/PrimaryKey/package.json +6 -0
- package/PubSub/package.json +6 -0
- package/Queue/package.json +6 -0
- package/README.md +32 -0
- package/Random/package.json +6 -0
- package/RateLimiter/package.json +6 -0
- package/RcMap/package.json +6 -0
- package/RcRef/package.json +6 -0
- package/Readable/package.json +6 -0
- package/Record/package.json +6 -0
- package/RedBlackTree/package.json +6 -0
- package/Redacted/package.json +6 -0
- package/Ref/package.json +6 -0
- package/RegExp/package.json +6 -0
- package/Reloadable/package.json +6 -0
- package/Request/package.json +6 -0
- package/RequestBlock/package.json +6 -0
- package/RequestResolver/package.json +6 -0
- package/Resource/package.json +6 -0
- package/Runtime/package.json +6 -0
- package/RuntimeFlags/package.json +6 -0
- package/RuntimeFlagsPatch/package.json +6 -0
- package/STM/package.json +6 -0
- package/Schedule/package.json +6 -0
- package/ScheduleDecision/package.json +6 -0
- package/ScheduleInterval/package.json +6 -0
- package/ScheduleIntervals/package.json +6 -0
- package/Scheduler/package.json +6 -0
- package/Schema/package.json +6 -0
- package/SchemaAST/package.json +6 -0
- package/Scope/package.json +6 -0
- package/ScopedCache/package.json +6 -0
- package/ScopedRef/package.json +6 -0
- package/Secret/package.json +6 -0
- package/SingleProducerAsyncInput/package.json +6 -0
- package/Sink/package.json +6 -0
- package/SortedMap/package.json +6 -0
- package/SortedSet/package.json +6 -0
- package/Stream/package.json +6 -0
- package/StreamEmit/package.json +6 -0
- package/StreamHaltStrategy/package.json +6 -0
- package/Streamable/package.json +6 -0
- package/String/package.json +6 -0
- package/Struct/package.json +6 -0
- package/Subscribable/package.json +6 -0
- package/SubscriptionRef/package.json +6 -0
- package/Supervisor/package.json +6 -0
- package/Symbol/package.json +6 -0
- package/SynchronizedRef/package.json +6 -0
- package/TArray/package.json +6 -0
- package/TDeferred/package.json +6 -0
- package/TMap/package.json +6 -0
- package/TPriorityQueue/package.json +6 -0
- package/TPubSub/package.json +6 -0
- package/TQueue/package.json +6 -0
- package/TRandom/package.json +6 -0
- package/TReentrantLock/package.json +6 -0
- package/TRef/package.json +6 -0
- package/TSemaphore/package.json +6 -0
- package/TSet/package.json +6 -0
- package/TSubscriptionRef/package.json +6 -0
- package/Take/package.json +6 -0
- package/TestAnnotation/package.json +6 -0
- package/TestAnnotationMap/package.json +6 -0
- package/TestAnnotations/package.json +6 -0
- package/TestClock/package.json +6 -0
- package/TestConfig/package.json +6 -0
- package/TestContext/package.json +6 -0
- package/TestLive/package.json +6 -0
- package/TestServices/package.json +6 -0
- package/TestSized/package.json +6 -0
- package/Tracer/package.json +6 -0
- package/Trie/package.json +6 -0
- package/Tuple/package.json +6 -0
- package/Types/package.json +6 -0
- package/Unify/package.json +6 -0
- package/UpstreamPullRequest/package.json +6 -0
- package/UpstreamPullStrategy/package.json +6 -0
- package/Utils/package.json +6 -0
- package/changes.json +14 -0
- package/dist/cjs/Arbitrary.js +813 -0
- package/dist/cjs/Arbitrary.js.map +1 -0
- package/dist/cjs/Array.js +2695 -0
- package/dist/cjs/Array.js.map +1 -0
- package/dist/cjs/BigDecimal.js +1116 -0
- package/dist/cjs/BigDecimal.js.map +1 -0
- package/dist/cjs/BigInt.js +567 -0
- package/dist/cjs/BigInt.js.map +1 -0
- package/dist/cjs/Boolean.js +251 -0
- package/dist/cjs/Boolean.js.map +1 -0
- package/dist/cjs/Brand.js +175 -0
- package/dist/cjs/Brand.js.map +1 -0
- package/dist/cjs/Cache.js +50 -0
- package/dist/cjs/Cache.js.map +1 -0
- package/dist/cjs/Cause.js +1011 -0
- package/dist/cjs/Cause.js.map +1 -0
- package/dist/cjs/Channel.js +889 -0
- package/dist/cjs/Channel.js.map +1 -0
- package/dist/cjs/ChildExecutorDecision.js +72 -0
- package/dist/cjs/ChildExecutorDecision.js.map +1 -0
- package/dist/cjs/Chunk.js +1114 -0
- package/dist/cjs/Chunk.js.map +1 -0
- package/dist/cjs/Clock.js +45 -0
- package/dist/cjs/Clock.js.map +1 -0
- package/dist/cjs/Config.js +328 -0
- package/dist/cjs/Config.js.map +1 -0
- package/dist/cjs/ConfigError.js +114 -0
- package/dist/cjs/ConfigError.js.map +1 -0
- package/dist/cjs/ConfigProvider.js +173 -0
- package/dist/cjs/ConfigProvider.js.map +1 -0
- package/dist/cjs/ConfigProviderPathPatch.js +38 -0
- package/dist/cjs/ConfigProviderPathPatch.js.map +1 -0
- package/dist/cjs/Console.js +125 -0
- package/dist/cjs/Console.js.map +1 -0
- package/dist/cjs/Context.js +367 -0
- package/dist/cjs/Context.js.map +1 -0
- package/dist/cjs/Cron.js +583 -0
- package/dist/cjs/Cron.js.map +1 -0
- package/dist/cjs/Data.js +291 -0
- package/dist/cjs/Data.js.map +1 -0
- package/dist/cjs/DateTime.js +1084 -0
- package/dist/cjs/DateTime.js.map +1 -0
- package/dist/cjs/DefaultServices.js +19 -0
- package/dist/cjs/DefaultServices.js.map +1 -0
- package/dist/cjs/Deferred.js +167 -0
- package/dist/cjs/Deferred.js.map +1 -0
- package/dist/cjs/Differ.js +140 -0
- package/dist/cjs/Differ.js.map +1 -0
- package/dist/cjs/Duration.js +737 -0
- package/dist/cjs/Duration.js.map +1 -0
- package/dist/cjs/Effect.js +10717 -0
- package/dist/cjs/Effect.js.map +1 -0
- package/dist/cjs/Effectable.js +58 -0
- package/dist/cjs/Effectable.js.map +1 -0
- package/dist/cjs/Either.js +654 -0
- package/dist/cjs/Either.js.map +1 -0
- package/dist/cjs/Encoding.js +155 -0
- package/dist/cjs/Encoding.js.map +1 -0
- package/dist/cjs/Equal.js +81 -0
- package/dist/cjs/Equal.js.map +1 -0
- package/dist/cjs/Equivalence.js +181 -0
- package/dist/cjs/Equivalence.js.map +1 -0
- package/dist/cjs/ExecutionPlan.js +108 -0
- package/dist/cjs/ExecutionPlan.js.map +1 -0
- package/dist/cjs/ExecutionStrategy.js +62 -0
- package/dist/cjs/ExecutionStrategy.js.map +1 -0
- package/dist/cjs/Exit.js +256 -0
- package/dist/cjs/Exit.js.map +1 -0
- package/dist/cjs/FastCheck.js +17 -0
- package/dist/cjs/FastCheck.js.map +1 -0
- package/dist/cjs/Fiber.js +340 -0
- package/dist/cjs/Fiber.js.map +1 -0
- package/dist/cjs/FiberHandle.js +335 -0
- package/dist/cjs/FiberHandle.js.map +1 -0
- package/dist/cjs/FiberId.js +122 -0
- package/dist/cjs/FiberId.js.map +1 -0
- package/dist/cjs/FiberMap.js +374 -0
- package/dist/cjs/FiberMap.js.map +1 -0
- package/dist/cjs/FiberRef.js +243 -0
- package/dist/cjs/FiberRef.js.map +1 -0
- package/dist/cjs/FiberRefs.js +91 -0
- package/dist/cjs/FiberRefs.js.map +1 -0
- package/dist/cjs/FiberRefsPatch.js +39 -0
- package/dist/cjs/FiberRefsPatch.js.map +1 -0
- package/dist/cjs/FiberSet.js +308 -0
- package/dist/cjs/FiberSet.js.map +1 -0
- package/dist/cjs/FiberStatus.js +59 -0
- package/dist/cjs/FiberStatus.js.map +1 -0
- package/dist/cjs/Function.js +488 -0
- package/dist/cjs/Function.js.map +1 -0
- package/dist/cjs/GlobalValue.js +59 -0
- package/dist/cjs/GlobalValue.js.map +1 -0
- package/dist/cjs/Graph.js +3080 -0
- package/dist/cjs/Graph.js.map +1 -0
- package/dist/cjs/GroupBy.js +47 -0
- package/dist/cjs/GroupBy.js.map +1 -0
- package/dist/cjs/HKT.js +6 -0
- package/dist/cjs/HKT.js.map +1 -0
- package/dist/cjs/Hash.js +184 -0
- package/dist/cjs/Hash.js.map +1 -0
- package/dist/cjs/HashMap.js +322 -0
- package/dist/cjs/HashMap.js.map +1 -0
- package/dist/cjs/HashRing.js +257 -0
- package/dist/cjs/HashRing.js.map +1 -0
- package/dist/cjs/HashSet.js +1262 -0
- package/dist/cjs/HashSet.js.map +1 -0
- package/dist/cjs/Inspectable.js +213 -0
- package/dist/cjs/Inspectable.js.map +1 -0
- package/dist/cjs/Iterable.js +1009 -0
- package/dist/cjs/Iterable.js.map +1 -0
- package/dist/cjs/JSONSchema.js +727 -0
- package/dist/cjs/JSONSchema.js.map +1 -0
- package/dist/cjs/KeyedPool.js +83 -0
- package/dist/cjs/KeyedPool.js.map +1 -0
- package/dist/cjs/Layer.js +651 -0
- package/dist/cjs/Layer.js.map +1 -0
- package/dist/cjs/LayerMap.js +212 -0
- package/dist/cjs/LayerMap.js.map +1 -0
- package/dist/cjs/List.js +784 -0
- package/dist/cjs/List.js.map +1 -0
- package/dist/cjs/LogLevel.js +143 -0
- package/dist/cjs/LogLevel.js.map +1 -0
- package/dist/cjs/LogSpan.js +23 -0
- package/dist/cjs/LogSpan.js.map +1 -0
- package/dist/cjs/Logger.js +497 -0
- package/dist/cjs/Logger.js.map +1 -0
- package/dist/cjs/Mailbox.js +105 -0
- package/dist/cjs/Mailbox.js.map +1 -0
- package/dist/cjs/ManagedRuntime.js +49 -0
- package/dist/cjs/ManagedRuntime.js.map +1 -0
- package/dist/cjs/Match.js +819 -0
- package/dist/cjs/Match.js.map +1 -0
- package/dist/cjs/MergeDecision.js +42 -0
- package/dist/cjs/MergeDecision.js.map +1 -0
- package/dist/cjs/MergeState.js +65 -0
- package/dist/cjs/MergeState.js.map +1 -0
- package/dist/cjs/MergeStrategy.js +59 -0
- package/dist/cjs/MergeStrategy.js.map +1 -0
- package/dist/cjs/Metric.js +415 -0
- package/dist/cjs/Metric.js.map +1 -0
- package/dist/cjs/MetricBoundaries.js +40 -0
- package/dist/cjs/MetricBoundaries.js.map +1 -0
- package/dist/cjs/MetricHook.js +54 -0
- package/dist/cjs/MetricHook.js.map +1 -0
- package/dist/cjs/MetricKey.js +70 -0
- package/dist/cjs/MetricKey.js.map +1 -0
- package/dist/cjs/MetricKeyType.js +94 -0
- package/dist/cjs/MetricKeyType.js.map +1 -0
- package/dist/cjs/MetricLabel.js +24 -0
- package/dist/cjs/MetricLabel.js.map +1 -0
- package/dist/cjs/MetricPair.js +28 -0
- package/dist/cjs/MetricPair.js.map +1 -0
- package/dist/cjs/MetricPolling.js +66 -0
- package/dist/cjs/MetricPolling.js.map +1 -0
- package/dist/cjs/MetricRegistry.js +23 -0
- package/dist/cjs/MetricRegistry.js.map +1 -0
- package/dist/cjs/MetricState.js +94 -0
- package/dist/cjs/MetricState.js.map +1 -0
- package/dist/cjs/Micro.js +2582 -0
- package/dist/cjs/Micro.js.map +1 -0
- package/dist/cjs/ModuleVersion.js +25 -0
- package/dist/cjs/ModuleVersion.js.map +1 -0
- package/dist/cjs/MutableHashMap.js +314 -0
- package/dist/cjs/MutableHashMap.js.map +1 -0
- package/dist/cjs/MutableHashSet.js +524 -0
- package/dist/cjs/MutableHashSet.js.map +1 -0
- package/dist/cjs/MutableList.js +258 -0
- package/dist/cjs/MutableList.js.map +1 -0
- package/dist/cjs/MutableQueue.js +173 -0
- package/dist/cjs/MutableQueue.js.map +1 -0
- package/dist/cjs/MutableRef.js +144 -0
- package/dist/cjs/MutableRef.js.map +1 -0
- package/dist/cjs/NonEmptyIterable.js +23 -0
- package/dist/cjs/NonEmptyIterable.js.map +1 -0
- package/dist/cjs/Number.js +903 -0
- package/dist/cjs/Number.js.map +1 -0
- package/dist/cjs/Option.js +1769 -0
- package/dist/cjs/Option.js.map +1 -0
- package/dist/cjs/Order.js +275 -0
- package/dist/cjs/Order.js.map +1 -0
- package/dist/cjs/Ordering.js +80 -0
- package/dist/cjs/Ordering.js.map +1 -0
- package/dist/cjs/ParseResult.js +1594 -0
- package/dist/cjs/ParseResult.js.map +1 -0
- package/dist/cjs/PartitionedSemaphore.js +147 -0
- package/dist/cjs/PartitionedSemaphore.js.map +1 -0
- package/dist/cjs/Pipeable.js +70 -0
- package/dist/cjs/Pipeable.js.map +1 -0
- package/dist/cjs/Pool.js +107 -0
- package/dist/cjs/Pool.js.map +1 -0
- package/dist/cjs/Predicate.js +1159 -0
- package/dist/cjs/Predicate.js.map +1 -0
- package/dist/cjs/Pretty.js +183 -0
- package/dist/cjs/Pretty.js.map +1 -0
- package/dist/cjs/PrimaryKey.js +21 -0
- package/dist/cjs/PrimaryKey.js.map +1 -0
- package/dist/cjs/PubSub.js +127 -0
- package/dist/cjs/PubSub.js.map +1 -0
- package/dist/cjs/Queue.js +255 -0
- package/dist/cjs/Queue.js.map +1 -0
- package/dist/cjs/Random.js +145 -0
- package/dist/cjs/Random.js.map +1 -0
- package/dist/cjs/RateLimiter.js +84 -0
- package/dist/cjs/RateLimiter.js.map +1 -0
- package/dist/cjs/RcMap.js +76 -0
- package/dist/cjs/RcMap.js.map +1 -0
- package/dist/cjs/RcRef.js +58 -0
- package/dist/cjs/RcRef.js.map +1 -0
- package/dist/cjs/Readable.js +55 -0
- package/dist/cjs/Readable.js.map +1 -0
- package/dist/cjs/Record.js +865 -0
- package/dist/cjs/Record.js.map +1 -0
- package/dist/cjs/RedBlackTree.js +266 -0
- package/dist/cjs/RedBlackTree.js.map +1 -0
- package/dist/cjs/Redacted.js +101 -0
- package/dist/cjs/Redacted.js.map +1 -0
- package/dist/cjs/Ref.js +84 -0
- package/dist/cjs/Ref.js.map +1 -0
- package/dist/cjs/RegExp.js +46 -0
- package/dist/cjs/RegExp.js.map +1 -0
- package/dist/cjs/Reloadable.js +66 -0
- package/dist/cjs/Reloadable.js.map +1 -0
- package/dist/cjs/Request.js +148 -0
- package/dist/cjs/Request.js.map +1 -0
- package/dist/cjs/RequestBlock.js +43 -0
- package/dist/cjs/RequestBlock.js.map +1 -0
- package/dist/cjs/RequestResolver.js +185 -0
- package/dist/cjs/RequestResolver.js.map +1 -0
- package/dist/cjs/Resource.js +51 -0
- package/dist/cjs/Resource.js.map +1 -0
- package/dist/cjs/Runtime.js +188 -0
- package/dist/cjs/Runtime.js.map +1 -0
- package/dist/cjs/RuntimeFlags.js +259 -0
- package/dist/cjs/RuntimeFlags.js.map +1 -0
- package/dist/cjs/RuntimeFlagsPatch.js +142 -0
- package/dist/cjs/RuntimeFlagsPatch.js.map +1 -0
- package/dist/cjs/STM.js +981 -0
- package/dist/cjs/STM.js.map +1 -0
- package/dist/cjs/Schedule.js +1603 -0
- package/dist/cjs/Schedule.js.map +1 -0
- package/dist/cjs/ScheduleDecision.js +34 -0
- package/dist/cjs/ScheduleDecision.js.map +1 -0
- package/dist/cjs/ScheduleInterval.js +107 -0
- package/dist/cjs/ScheduleInterval.js.map +1 -0
- package/dist/cjs/ScheduleIntervals.js +85 -0
- package/dist/cjs/ScheduleIntervals.js.map +1 -0
- package/dist/cjs/Scheduler.js +308 -0
- package/dist/cjs/Scheduler.js.map +1 -0
- package/dist/cjs/Schema.js +6254 -0
- package/dist/cjs/Schema.js.map +1 -0
- package/dist/cjs/SchemaAST.js +2552 -0
- package/dist/cjs/SchemaAST.js.map +1 -0
- package/dist/cjs/Scope.js +102 -0
- package/dist/cjs/Scope.js.map +1 -0
- package/dist/cjs/ScopedCache.js +31 -0
- package/dist/cjs/ScopedCache.js.map +1 -0
- package/dist/cjs/ScopedRef.js +49 -0
- package/dist/cjs/ScopedRef.js.map +1 -0
- package/dist/cjs/Secret.js +51 -0
- package/dist/cjs/Secret.js.map +1 -0
- package/dist/cjs/SingleProducerAsyncInput.js +14 -0
- package/dist/cjs/SingleProducerAsyncInput.js.map +1 -0
- package/dist/cjs/Sink.js +872 -0
- package/dist/cjs/Sink.js.map +1 -0
- package/dist/cjs/SortedMap.js +189 -0
- package/dist/cjs/SortedMap.js.map +1 -0
- package/dist/cjs/SortedSet.js +251 -0
- package/dist/cjs/SortedSet.js.map +1 -0
- package/dist/cjs/Stream.js +4112 -0
- package/dist/cjs/Stream.js.map +1 -0
- package/dist/cjs/StreamEmit.js +6 -0
- package/dist/cjs/StreamEmit.js.map +1 -0
- package/dist/cjs/StreamHaltStrategy.js +65 -0
- package/dist/cjs/StreamHaltStrategy.js.map +1 -0
- package/dist/cjs/Streamable.js +45 -0
- package/dist/cjs/Streamable.js.map +1 -0
- package/dist/cjs/String.js +680 -0
- package/dist/cjs/String.js.map +1 -0
- package/dist/cjs/Struct.js +202 -0
- package/dist/cjs/Struct.js.map +1 -0
- package/dist/cjs/Subscribable.js +67 -0
- package/dist/cjs/Subscribable.js.map +1 -0
- package/dist/cjs/SubscriptionRef.js +123 -0
- package/dist/cjs/SubscriptionRef.js.map +1 -0
- package/dist/cjs/Supervisor.js +115 -0
- package/dist/cjs/Supervisor.js.map +1 -0
- package/dist/cjs/Symbol.js +35 -0
- package/dist/cjs/Symbol.js.map +1 -0
- package/dist/cjs/SynchronizedRef.js +126 -0
- package/dist/cjs/SynchronizedRef.js.map +1 -0
- package/dist/cjs/TArray.js +314 -0
- package/dist/cjs/TArray.js.map +1 -0
- package/dist/cjs/TDeferred.js +40 -0
- package/dist/cjs/TDeferred.js.map +1 -0
- package/dist/cjs/TMap.js +286 -0
- package/dist/cjs/TMap.js.map +1 -0
- package/dist/cjs/TPriorityQueue.js +143 -0
- package/dist/cjs/TPriorityQueue.js.map +1 -0
- package/dist/cjs/TPubSub.js +138 -0
- package/dist/cjs/TPubSub.js.map +1 -0
- package/dist/cjs/TQueue.js +237 -0
- package/dist/cjs/TQueue.js.map +1 -0
- package/dist/cjs/TRandom.js +72 -0
- package/dist/cjs/TRandom.js.map +1 -0
- package/dist/cjs/TReentrantLock.js +149 -0
- package/dist/cjs/TReentrantLock.js.map +1 -0
- package/dist/cjs/TRef.js +83 -0
- package/dist/cjs/TRef.js.map +1 -0
- package/dist/cjs/TSemaphore.js +73 -0
- package/dist/cjs/TSemaphore.js.map +1 -0
- package/dist/cjs/TSet.js +208 -0
- package/dist/cjs/TSet.js.map +1 -0
- package/dist/cjs/TSubscriptionRef.js +95 -0
- package/dist/cjs/TSubscriptionRef.js.map +1 -0
- package/dist/cjs/Take.js +155 -0
- package/dist/cjs/Take.js.map +1 -0
- package/dist/cjs/TestAnnotation.js +105 -0
- package/dist/cjs/TestAnnotation.js.map +1 -0
- package/dist/cjs/TestAnnotationMap.js +91 -0
- package/dist/cjs/TestAnnotationMap.js.map +1 -0
- package/dist/cjs/TestAnnotations.js +71 -0
- package/dist/cjs/TestAnnotations.js.map +1 -0
- package/dist/cjs/TestClock.js +372 -0
- package/dist/cjs/TestClock.js.map +1 -0
- package/dist/cjs/TestConfig.js +22 -0
- package/dist/cjs/TestConfig.js.map +1 -0
- package/dist/cjs/TestContext.js +28 -0
- package/dist/cjs/TestContext.js.map +1 -0
- package/dist/cjs/TestLive.js +39 -0
- package/dist/cjs/TestLive.js.map +1 -0
- package/dist/cjs/TestServices.js +255 -0
- package/dist/cjs/TestServices.js.map +1 -0
- package/dist/cjs/TestSized.js +46 -0
- package/dist/cjs/TestSized.js.map +1 -0
- package/dist/cjs/Tracer.js +44 -0
- package/dist/cjs/Tracer.js.map +1 -0
- package/dist/cjs/Trie.js +724 -0
- package/dist/cjs/Trie.js.map +1 -0
- package/dist/cjs/Tuple.js +210 -0
- package/dist/cjs/Tuple.js.map +1 -0
- package/dist/cjs/Types.js +6 -0
- package/dist/cjs/Types.js.map +1 -0
- package/dist/cjs/Unify.js +16 -0
- package/dist/cjs/Unify.js.map +1 -0
- package/dist/cjs/UpstreamPullRequest.js +59 -0
- package/dist/cjs/UpstreamPullRequest.js.map +1 -0
- package/dist/cjs/UpstreamPullStrategy.js +59 -0
- package/dist/cjs/UpstreamPullStrategy.js.map +1 -0
- package/dist/cjs/Utils.js +374 -0
- package/dist/cjs/Utils.js.map +1 -0
- package/dist/cjs/index.js +395 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/internal/array.js +13 -0
- package/dist/cjs/internal/array.js.map +1 -0
- package/dist/cjs/internal/blockedRequests.js +369 -0
- package/dist/cjs/internal/blockedRequests.js.map +1 -0
- package/dist/cjs/internal/cache.js +500 -0
- package/dist/cjs/internal/cache.js.map +1 -0
- package/dist/cjs/internal/cause.js +867 -0
- package/dist/cjs/internal/cause.js.map +1 -0
- package/dist/cjs/internal/channel/channelExecutor.js +697 -0
- package/dist/cjs/internal/channel/channelExecutor.js.map +1 -0
- package/dist/cjs/internal/channel/channelState.js +77 -0
- package/dist/cjs/internal/channel/channelState.js.map +1 -0
- package/dist/cjs/internal/channel/childExecutorDecision.js +74 -0
- package/dist/cjs/internal/channel/childExecutorDecision.js.map +1 -0
- package/dist/cjs/internal/channel/continuation.js +57 -0
- package/dist/cjs/internal/channel/continuation.js.map +1 -0
- package/dist/cjs/internal/channel/mergeDecision.js +60 -0
- package/dist/cjs/internal/channel/mergeDecision.js.map +1 -0
- package/dist/cjs/internal/channel/mergeState.js +83 -0
- package/dist/cjs/internal/channel/mergeState.js.map +1 -0
- package/dist/cjs/internal/channel/mergeStrategy.js +58 -0
- package/dist/cjs/internal/channel/mergeStrategy.js.map +1 -0
- package/dist/cjs/internal/channel/singleProducerAsyncInput.js +171 -0
- package/dist/cjs/internal/channel/singleProducerAsyncInput.js.map +1 -0
- package/dist/cjs/internal/channel/subexecutor.js +163 -0
- package/dist/cjs/internal/channel/subexecutor.js.map +1 -0
- package/dist/cjs/internal/channel/upstreamPullRequest.js +64 -0
- package/dist/cjs/internal/channel/upstreamPullRequest.js.map +1 -0
- package/dist/cjs/internal/channel/upstreamPullStrategy.js +64 -0
- package/dist/cjs/internal/channel/upstreamPullStrategy.js.map +1 -0
- package/dist/cjs/internal/channel.js +738 -0
- package/dist/cjs/internal/channel.js.map +1 -0
- package/dist/cjs/internal/clock.js +85 -0
- package/dist/cjs/internal/clock.js.map +1 -0
- package/dist/cjs/internal/completedRequestMap.js +11 -0
- package/dist/cjs/internal/completedRequestMap.js.map +1 -0
- package/dist/cjs/internal/concurrency.js +37 -0
- package/dist/cjs/internal/concurrency.js.map +1 -0
- package/dist/cjs/internal/config.js +397 -0
- package/dist/cjs/internal/config.js.map +1 -0
- package/dist/cjs/internal/configError.js +284 -0
- package/dist/cjs/internal/configError.js.map +1 -0
- package/dist/cjs/internal/configProvider/pathPatch.js +83 -0
- package/dist/cjs/internal/configProvider/pathPatch.js.map +1 -0
- package/dist/cjs/internal/configProvider.js +443 -0
- package/dist/cjs/internal/configProvider.js.map +1 -0
- package/dist/cjs/internal/console.js +79 -0
- package/dist/cjs/internal/console.js.map +1 -0
- package/dist/cjs/internal/context.js +273 -0
- package/dist/cjs/internal/context.js.map +1 -0
- package/dist/cjs/internal/core-effect.js +872 -0
- package/dist/cjs/internal/core-effect.js.map +1 -0
- package/dist/cjs/internal/core-stream.js +258 -0
- package/dist/cjs/internal/core-stream.js.map +1 -0
- package/dist/cjs/internal/core.js +1713 -0
- package/dist/cjs/internal/core.js.map +1 -0
- package/dist/cjs/internal/data.js +37 -0
- package/dist/cjs/internal/data.js.map +1 -0
- package/dist/cjs/internal/dataSource.js +107 -0
- package/dist/cjs/internal/dataSource.js.map +1 -0
- package/dist/cjs/internal/dateTime.js +839 -0
- package/dist/cjs/internal/dateTime.js.map +1 -0
- package/dist/cjs/internal/defaultServices/console.js +99 -0
- package/dist/cjs/internal/defaultServices/console.js.map +1 -0
- package/dist/cjs/internal/defaultServices.js +92 -0
- package/dist/cjs/internal/defaultServices.js.map +1 -0
- package/dist/cjs/internal/deferred.js +36 -0
- package/dist/cjs/internal/deferred.js.map +1 -0
- package/dist/cjs/internal/differ/chunkPatch.js +139 -0
- package/dist/cjs/internal/differ/chunkPatch.js.map +1 -0
- package/dist/cjs/internal/differ/contextPatch.js +152 -0
- package/dist/cjs/internal/differ/contextPatch.js.map +1 -0
- package/dist/cjs/internal/differ/hashMapPatch.js +139 -0
- package/dist/cjs/internal/differ/hashMapPatch.js.map +1 -0
- package/dist/cjs/internal/differ/hashSetPatch.js +113 -0
- package/dist/cjs/internal/differ/hashSetPatch.js.map +1 -0
- package/dist/cjs/internal/differ/orPatch.js +184 -0
- package/dist/cjs/internal/differ/orPatch.js.map +1 -0
- package/dist/cjs/internal/differ/readonlyArrayPatch.js +138 -0
- package/dist/cjs/internal/differ/readonlyArrayPatch.js.map +1 -0
- package/dist/cjs/internal/differ.js +149 -0
- package/dist/cjs/internal/differ.js.map +1 -0
- package/dist/cjs/internal/doNotation.js +25 -0
- package/dist/cjs/internal/doNotation.js.map +1 -0
- package/dist/cjs/internal/effect/circular.js +420 -0
- package/dist/cjs/internal/effect/circular.js.map +1 -0
- package/dist/cjs/internal/effectable.js +120 -0
- package/dist/cjs/internal/effectable.js.map +1 -0
- package/dist/cjs/internal/either.js +100 -0
- package/dist/cjs/internal/either.js.map +1 -0
- package/dist/cjs/internal/encoding/base64.js +81 -0
- package/dist/cjs/internal/encoding/base64.js.map +1 -0
- package/dist/cjs/internal/encoding/base64Url.js +30 -0
- package/dist/cjs/internal/encoding/base64Url.js.map +1 -0
- package/dist/cjs/internal/encoding/common.js +48 -0
- package/dist/cjs/internal/encoding/common.js.map +1 -0
- package/dist/cjs/internal/encoding/hex.js +57 -0
- package/dist/cjs/internal/encoding/hex.js.map +1 -0
- package/dist/cjs/internal/errors.js +13 -0
- package/dist/cjs/internal/errors.js.map +1 -0
- package/dist/cjs/internal/executionPlan.js +68 -0
- package/dist/cjs/internal/executionPlan.js.map +1 -0
- package/dist/cjs/internal/executionStrategy.js +54 -0
- package/dist/cjs/internal/executionStrategy.js.map +1 -0
- package/dist/cjs/internal/fiber.js +279 -0
- package/dist/cjs/internal/fiber.js.map +1 -0
- package/dist/cjs/internal/fiberId.js +239 -0
- package/dist/cjs/internal/fiberId.js.map +1 -0
- package/dist/cjs/internal/fiberMessage.js +38 -0
- package/dist/cjs/internal/fiberMessage.js.map +1 -0
- package/dist/cjs/internal/fiberRefs/patch.js +115 -0
- package/dist/cjs/internal/fiberRefs/patch.js.map +1 -0
- package/dist/cjs/internal/fiberRefs.js +203 -0
- package/dist/cjs/internal/fiberRefs.js.map +1 -0
- package/dist/cjs/internal/fiberRuntime.js +2207 -0
- package/dist/cjs/internal/fiberRuntime.js.map +1 -0
- package/dist/cjs/internal/fiberScope.js +52 -0
- package/dist/cjs/internal/fiberScope.js.map +1 -0
- package/dist/cjs/internal/fiberStatus.js +85 -0
- package/dist/cjs/internal/fiberStatus.js.map +1 -0
- package/dist/cjs/internal/groupBy.js +222 -0
- package/dist/cjs/internal/groupBy.js.map +1 -0
- package/dist/cjs/internal/hashMap/array.js +56 -0
- package/dist/cjs/internal/hashMap/array.js.map +1 -0
- package/dist/cjs/internal/hashMap/bitwise.js +38 -0
- package/dist/cjs/internal/hashMap/bitwise.js.map +1 -0
- package/dist/cjs/internal/hashMap/config.js +17 -0
- package/dist/cjs/internal/hashMap/config.js.map +1 -0
- package/dist/cjs/internal/hashMap/keySet.js +12 -0
- package/dist/cjs/internal/hashMap/keySet.js.map +1 -0
- package/dist/cjs/internal/hashMap/node.js +268 -0
- package/dist/cjs/internal/hashMap/node.js.map +1 -0
- package/dist/cjs/internal/hashMap.js +379 -0
- package/dist/cjs/internal/hashMap.js.map +1 -0
- package/dist/cjs/internal/hashSet.js +198 -0
- package/dist/cjs/internal/hashSet.js.map +1 -0
- package/dist/cjs/internal/keyedPool.js +170 -0
- package/dist/cjs/internal/keyedPool.js.map +1 -0
- package/dist/cjs/internal/layer/circular.js +80 -0
- package/dist/cjs/internal/layer/circular.js.map +1 -0
- package/dist/cjs/internal/layer.js +595 -0
- package/dist/cjs/internal/layer.js.map +1 -0
- package/dist/cjs/internal/logSpan.js +26 -0
- package/dist/cjs/internal/logSpan.js.map +1 -0
- package/dist/cjs/internal/logger-circular.js +26 -0
- package/dist/cjs/internal/logger-circular.js.map +1 -0
- package/dist/cjs/internal/logger.js +381 -0
- package/dist/cjs/internal/logger.js.map +1 -0
- package/dist/cjs/internal/mailbox.js +462 -0
- package/dist/cjs/internal/mailbox.js.map +1 -0
- package/dist/cjs/internal/managedRuntime/circular.js +10 -0
- package/dist/cjs/internal/managedRuntime/circular.js.map +1 -0
- package/dist/cjs/internal/managedRuntime.js +95 -0
- package/dist/cjs/internal/managedRuntime.js.map +1 -0
- package/dist/cjs/internal/matcher.js +320 -0
- package/dist/cjs/internal/matcher.js.map +1 -0
- package/dist/cjs/internal/metric/boundaries.js +53 -0
- package/dist/cjs/internal/metric/boundaries.js.map +1 -0
- package/dist/cjs/internal/metric/hook.js +388 -0
- package/dist/cjs/internal/metric/hook.js.map +1 -0
- package/dist/cjs/internal/metric/key.js +73 -0
- package/dist/cjs/internal/metric/key.js.map +1 -0
- package/dist/cjs/internal/metric/keyType.js +188 -0
- package/dist/cjs/internal/metric/keyType.js.map +1 -0
- package/dist/cjs/internal/metric/label.js +45 -0
- package/dist/cjs/internal/metric/label.js.map +1 -0
- package/dist/cjs/internal/metric/pair.js +40 -0
- package/dist/cjs/internal/metric/pair.js.map +1 -0
- package/dist/cjs/internal/metric/polling.js +80 -0
- package/dist/cjs/internal/metric/polling.js.map +1 -0
- package/dist/cjs/internal/metric/registry.js +113 -0
- package/dist/cjs/internal/metric/registry.js.map +1 -0
- package/dist/cjs/internal/metric/state.js +201 -0
- package/dist/cjs/internal/metric/state.js.map +1 -0
- package/dist/cjs/internal/metric.js +204 -0
- package/dist/cjs/internal/metric.js.map +1 -0
- package/dist/cjs/internal/opCodes/cause.js +19 -0
- package/dist/cjs/internal/opCodes/cause.js.map +1 -0
- package/dist/cjs/internal/opCodes/channel.js +35 -0
- package/dist/cjs/internal/opCodes/channel.js.map +1 -0
- package/dist/cjs/internal/opCodes/channelChildExecutorDecision.js +13 -0
- package/dist/cjs/internal/opCodes/channelChildExecutorDecision.js.map +1 -0
- package/dist/cjs/internal/opCodes/channelMergeDecision.js +11 -0
- package/dist/cjs/internal/opCodes/channelMergeDecision.js.map +1 -0
- package/dist/cjs/internal/opCodes/channelMergeState.js +13 -0
- package/dist/cjs/internal/opCodes/channelMergeState.js.map +1 -0
- package/dist/cjs/internal/opCodes/channelMergeStrategy.js +11 -0
- package/dist/cjs/internal/opCodes/channelMergeStrategy.js.map +1 -0
- package/dist/cjs/internal/opCodes/channelState.js +15 -0
- package/dist/cjs/internal/opCodes/channelState.js.map +1 -0
- package/dist/cjs/internal/opCodes/channelUpstreamPullRequest.js +11 -0
- package/dist/cjs/internal/opCodes/channelUpstreamPullRequest.js.map +1 -0
- package/dist/cjs/internal/opCodes/channelUpstreamPullStrategy.js +11 -0
- package/dist/cjs/internal/opCodes/channelUpstreamPullStrategy.js.map +1 -0
- package/dist/cjs/internal/opCodes/config.js +29 -0
- package/dist/cjs/internal/opCodes/config.js.map +1 -0
- package/dist/cjs/internal/opCodes/configError.js +19 -0
- package/dist/cjs/internal/opCodes/configError.js.map +1 -0
- package/dist/cjs/internal/opCodes/continuation.js +11 -0
- package/dist/cjs/internal/opCodes/continuation.js.map +1 -0
- package/dist/cjs/internal/opCodes/deferred.js +11 -0
- package/dist/cjs/internal/opCodes/deferred.js.map +1 -0
- package/dist/cjs/internal/opCodes/effect.js +37 -0
- package/dist/cjs/internal/opCodes/effect.js.map +1 -0
- package/dist/cjs/internal/opCodes/layer.js +27 -0
- package/dist/cjs/internal/opCodes/layer.js.map +1 -0
- package/dist/cjs/internal/opCodes/streamHaltStrategy.js +15 -0
- package/dist/cjs/internal/opCodes/streamHaltStrategy.js.map +1 -0
- package/dist/cjs/internal/option.js +82 -0
- package/dist/cjs/internal/option.js.map +1 -0
- package/dist/cjs/internal/pool.js +288 -0
- package/dist/cjs/internal/pool.js.map +1 -0
- package/dist/cjs/internal/pubsub.js +1287 -0
- package/dist/cjs/internal/pubsub.js.map +1 -0
- package/dist/cjs/internal/query.js +102 -0
- package/dist/cjs/internal/query.js.map +1 -0
- package/dist/cjs/internal/queue.js +518 -0
- package/dist/cjs/internal/queue.js.map +1 -0
- package/dist/cjs/internal/random.js +128 -0
- package/dist/cjs/internal/random.js.map +1 -0
- package/dist/cjs/internal/rateLimiter.js +52 -0
- package/dist/cjs/internal/rateLimiter.js.map +1 -0
- package/dist/cjs/internal/rcMap.js +182 -0
- package/dist/cjs/internal/rcMap.js.map +1 -0
- package/dist/cjs/internal/rcRef.js +139 -0
- package/dist/cjs/internal/rcRef.js.map +1 -0
- package/dist/cjs/internal/redBlackTree/iterator.js +199 -0
- package/dist/cjs/internal/redBlackTree/iterator.js.map +1 -0
- package/dist/cjs/internal/redBlackTree/node.js +60 -0
- package/dist/cjs/internal/redBlackTree/node.js.map +1 -0
- package/dist/cjs/internal/redBlackTree.js +1088 -0
- package/dist/cjs/internal/redBlackTree.js.map +1 -0
- package/dist/cjs/internal/redacted.js +67 -0
- package/dist/cjs/internal/redacted.js.map +1 -0
- package/dist/cjs/internal/ref.js +121 -0
- package/dist/cjs/internal/ref.js.map +1 -0
- package/dist/cjs/internal/reloadable.js +56 -0
- package/dist/cjs/internal/reloadable.js.map +1 -0
- package/dist/cjs/internal/request.js +104 -0
- package/dist/cjs/internal/request.js.map +1 -0
- package/dist/cjs/internal/resource.js +49 -0
- package/dist/cjs/internal/resource.js.map +1 -0
- package/dist/cjs/internal/ringBuffer.js +64 -0
- package/dist/cjs/internal/ringBuffer.js.map +1 -0
- package/dist/cjs/internal/runtime.js +321 -0
- package/dist/cjs/internal/runtime.js.map +1 -0
- package/dist/cjs/internal/runtimeFlags.js +126 -0
- package/dist/cjs/internal/runtimeFlags.js.map +1 -0
- package/dist/cjs/internal/runtimeFlagsPatch.js +52 -0
- package/dist/cjs/internal/runtimeFlagsPatch.js.map +1 -0
- package/dist/cjs/internal/schedule/decision.js +44 -0
- package/dist/cjs/internal/schedule/decision.js.map +1 -0
- package/dist/cjs/internal/schedule/interval.js +83 -0
- package/dist/cjs/internal/schedule/interval.js.map +1 -0
- package/dist/cjs/internal/schedule/intervals.js +134 -0
- package/dist/cjs/internal/schedule/intervals.js.map +1 -0
- package/dist/cjs/internal/schedule.js +900 -0
- package/dist/cjs/internal/schedule.js.map +1 -0
- package/dist/cjs/internal/schema/errors.js +113 -0
- package/dist/cjs/internal/schema/errors.js.map +1 -0
- package/dist/cjs/internal/schema/schemaId.js +49 -0
- package/dist/cjs/internal/schema/schemaId.js.map +1 -0
- package/dist/cjs/internal/schema/util.js +48 -0
- package/dist/cjs/internal/schema/util.js.map +1 -0
- package/dist/cjs/internal/scopedCache.js +398 -0
- package/dist/cjs/internal/scopedCache.js.map +1 -0
- package/dist/cjs/internal/scopedRef.js +53 -0
- package/dist/cjs/internal/scopedRef.js.map +1 -0
- package/dist/cjs/internal/secret.js +90 -0
- package/dist/cjs/internal/secret.js.map +1 -0
- package/dist/cjs/internal/singleShotGen.js +37 -0
- package/dist/cjs/internal/singleShotGen.js.map +1 -0
- package/dist/cjs/internal/sink.js +883 -0
- package/dist/cjs/internal/sink.js.map +1 -0
- package/dist/cjs/internal/stack.js +12 -0
- package/dist/cjs/internal/stack.js.map +1 -0
- package/dist/cjs/internal/stm/core.js +525 -0
- package/dist/cjs/internal/stm/core.js.map +1 -0
- package/dist/cjs/internal/stm/entry.js +57 -0
- package/dist/cjs/internal/stm/entry.js.map +1 -0
- package/dist/cjs/internal/stm/journal.js +104 -0
- package/dist/cjs/internal/stm/journal.js.map +1 -0
- package/dist/cjs/internal/stm/opCodes/stm.js +31 -0
- package/dist/cjs/internal/stm/opCodes/stm.js.map +1 -0
- package/dist/cjs/internal/stm/opCodes/stmState.js +13 -0
- package/dist/cjs/internal/stm/opCodes/stmState.js.map +1 -0
- package/dist/cjs/internal/stm/opCodes/strategy.js +13 -0
- package/dist/cjs/internal/stm/opCodes/strategy.js.map +1 -0
- package/dist/cjs/internal/stm/opCodes/tExit.js +17 -0
- package/dist/cjs/internal/stm/opCodes/tExit.js.map +1 -0
- package/dist/cjs/internal/stm/opCodes/tryCommit.js +11 -0
- package/dist/cjs/internal/stm/opCodes/tryCommit.js.map +1 -0
- package/dist/cjs/internal/stm/stm.js +514 -0
- package/dist/cjs/internal/stm/stm.js.map +1 -0
- package/dist/cjs/internal/stm/stmState.js +102 -0
- package/dist/cjs/internal/stm/stmState.js.map +1 -0
- package/dist/cjs/internal/stm/tArray.js +258 -0
- package/dist/cjs/internal/stm/tArray.js.map +1 -0
- package/dist/cjs/internal/stm/tDeferred.js +51 -0
- package/dist/cjs/internal/stm/tDeferred.js.map +1 -0
- package/dist/cjs/internal/stm/tExit.js +116 -0
- package/dist/cjs/internal/stm/tExit.js.map +1 -0
- package/dist/cjs/internal/stm/tMap.js +448 -0
- package/dist/cjs/internal/stm/tMap.js.map +1 -0
- package/dist/cjs/internal/stm/tPriorityQueue.js +164 -0
- package/dist/cjs/internal/stm/tPriorityQueue.js.map +1 -0
- package/dist/cjs/internal/stm/tPubSub.js +397 -0
- package/dist/cjs/internal/stm/tPubSub.js.map +1 -0
- package/dist/cjs/internal/stm/tQueue.js +284 -0
- package/dist/cjs/internal/stm/tQueue.js.map +1 -0
- package/dist/cjs/internal/stm/tRandom.js +92 -0
- package/dist/cjs/internal/stm/tRandom.js.map +1 -0
- package/dist/cjs/internal/stm/tReentrantLock.js +215 -0
- package/dist/cjs/internal/stm/tReentrantLock.js.map +1 -0
- package/dist/cjs/internal/stm/tRef.js +110 -0
- package/dist/cjs/internal/stm/tRef.js.map +1 -0
- package/dist/cjs/internal/stm/tSemaphore.js +72 -0
- package/dist/cjs/internal/stm/tSemaphore.js.map +1 -0
- package/dist/cjs/internal/stm/tSet.js +104 -0
- package/dist/cjs/internal/stm/tSet.js.map +1 -0
- package/dist/cjs/internal/stm/tSubscriptionRef.js +177 -0
- package/dist/cjs/internal/stm/tSubscriptionRef.js.map +1 -0
- package/dist/cjs/internal/stm/tryCommit.js +25 -0
- package/dist/cjs/internal/stm/tryCommit.js.map +1 -0
- package/dist/cjs/internal/stm/txnId.js +18 -0
- package/dist/cjs/internal/stm/txnId.js.map +1 -0
- package/dist/cjs/internal/stm/versioned.js +15 -0
- package/dist/cjs/internal/stm/versioned.js.map +1 -0
- package/dist/cjs/internal/stream/debounceState.js +29 -0
- package/dist/cjs/internal/stream/debounceState.js.map +1 -0
- package/dist/cjs/internal/stream/emit.js +129 -0
- package/dist/cjs/internal/stream/emit.js.map +1 -0
- package/dist/cjs/internal/stream/haltStrategy.js +75 -0
- package/dist/cjs/internal/stream/haltStrategy.js.map +1 -0
- package/dist/cjs/internal/stream/handoff.js +65 -0
- package/dist/cjs/internal/stream/handoff.js.map +1 -0
- package/dist/cjs/internal/stream/handoffSignal.js +31 -0
- package/dist/cjs/internal/stream/handoffSignal.js.map +1 -0
- package/dist/cjs/internal/stream/pull.js +34 -0
- package/dist/cjs/internal/stream/pull.js.map +1 -0
- package/dist/cjs/internal/stream/sinkEndReason.js +19 -0
- package/dist/cjs/internal/stream/sinkEndReason.js.map +1 -0
- package/dist/cjs/internal/stream/zipAllState.js +41 -0
- package/dist/cjs/internal/stream/zipAllState.js.map +1 -0
- package/dist/cjs/internal/stream/zipChunksState.js +29 -0
- package/dist/cjs/internal/stream/zipChunksState.js.map +1 -0
- package/dist/cjs/internal/stream.js +2979 -0
- package/dist/cjs/internal/stream.js.map +1 -0
- package/dist/cjs/internal/string-utils.js +90 -0
- package/dist/cjs/internal/string-utils.js.map +1 -0
- package/dist/cjs/internal/subscriptionRef.js +72 -0
- package/dist/cjs/internal/subscriptionRef.js.map +1 -0
- package/dist/cjs/internal/supervisor/patch.js +135 -0
- package/dist/cjs/internal/supervisor/patch.js.map +1 -0
- package/dist/cjs/internal/supervisor.js +222 -0
- package/dist/cjs/internal/supervisor.js.map +1 -0
- package/dist/cjs/internal/synchronizedRef.js +51 -0
- package/dist/cjs/internal/synchronizedRef.js.map +1 -0
- package/dist/cjs/internal/take.js +130 -0
- package/dist/cjs/internal/take.js.map +1 -0
- package/dist/cjs/internal/testing/sleep.js +14 -0
- package/dist/cjs/internal/testing/sleep.js.map +1 -0
- package/dist/cjs/internal/testing/suspendedWarningData.js +58 -0
- package/dist/cjs/internal/testing/suspendedWarningData.js.map +1 -0
- package/dist/cjs/internal/testing/warningData.js +59 -0
- package/dist/cjs/internal/testing/warningData.js.map +1 -0
- package/dist/cjs/internal/tracer.js +134 -0
- package/dist/cjs/internal/tracer.js.map +1 -0
- package/dist/cjs/internal/trie.js +564 -0
- package/dist/cjs/internal/trie.js.map +1 -0
- package/dist/cjs/internal/version.js +14 -0
- package/dist/cjs/internal/version.js.map +1 -0
- package/dist/dts/Arbitrary.d.ts +69 -0
- package/dist/dts/Arbitrary.d.ts.map +1 -0
- package/dist/dts/Array.d.ts +5922 -0
- package/dist/dts/Array.d.ts.map +1 -0
- package/dist/dts/BigDecimal.d.ts +1483 -0
- package/dist/dts/BigDecimal.d.ts.map +1 -0
- package/dist/dts/BigInt.d.ts +1033 -0
- package/dist/dts/BigInt.d.ts.map +1 -0
- package/dist/dts/Boolean.d.ts +523 -0
- package/dist/dts/Boolean.d.ts.map +1 -0
- package/dist/dts/Brand.d.ts +234 -0
- package/dist/dts/Brand.d.ts.map +1 -0
- package/dist/dts/Cache.d.ts +241 -0
- package/dist/dts/Cache.d.ts.map +1 -0
- package/dist/dts/Cause.d.ts +1928 -0
- package/dist/dts/Cause.d.ts.map +1 -0
- package/dist/dts/Channel.d.ts +1989 -0
- package/dist/dts/Channel.d.ts.map +1 -0
- package/dist/dts/ChildExecutorDecision.d.ts +135 -0
- package/dist/dts/ChildExecutorDecision.d.ts.map +1 -0
- package/dist/dts/Chunk.d.ts +1709 -0
- package/dist/dts/Chunk.d.ts.map +1 -0
- package/dist/dts/Clock.d.ts +97 -0
- package/dist/dts/Clock.d.ts.map +1 -0
- package/dist/dts/Config.d.ts +667 -0
- package/dist/dts/Config.d.ts.map +1 -0
- package/dist/dts/ConfigError.d.ts +238 -0
- package/dist/dts/ConfigError.d.ts.map +1 -0
- package/dist/dts/ConfigProvider.d.ts +372 -0
- package/dist/dts/ConfigProvider.d.ts.map +1 -0
- package/dist/dts/ConfigProviderPathPatch.d.ts +118 -0
- package/dist/dts/ConfigProviderPathPatch.d.ts.map +1 -0
- package/dist/dts/Console.d.ts +224 -0
- package/dist/dts/Console.d.ts.map +1 -0
- package/dist/dts/Context.d.ts +823 -0
- package/dist/dts/Context.d.ts.map +1 -0
- package/dist/dts/Cron.d.ts +226 -0
- package/dist/dts/Cron.d.ts.map +1 -0
- package/dist/dts/Data.d.ts +613 -0
- package/dist/dts/Data.d.ts.map +1 -0
- package/dist/dts/DateTime.d.ts +2417 -0
- package/dist/dts/DateTime.d.ts.map +1 -0
- package/dist/dts/DefaultServices.d.ts +26 -0
- package/dist/dts/DefaultServices.d.ts.map +1 -0
- package/dist/dts/Deferred.d.ts +437 -0
- package/dist/dts/Deferred.d.ts.map +1 -0
- package/dist/dts/Differ.d.ts +420 -0
- package/dist/dts/Differ.d.ts.map +1 -0
- package/dist/dts/Duration.d.ts +557 -0
- package/dist/dts/Duration.d.ts.map +1 -0
- package/dist/dts/Effect.d.ts +26986 -0
- package/dist/dts/Effect.d.ts.map +1 -0
- package/dist/dts/Effectable.d.ts +93 -0
- package/dist/dts/Effectable.d.ts.map +1 -0
- package/dist/dts/Either.d.ts +1431 -0
- package/dist/dts/Either.d.ts.map +1 -0
- package/dist/dts/Encoding.d.ts +160 -0
- package/dist/dts/Encoding.d.ts.map +1 -0
- package/dist/dts/Equal.d.ts +34 -0
- package/dist/dts/Equal.d.ts.map +1 -0
- package/dist/dts/Equivalence.d.ts +158 -0
- package/dist/dts/Equivalence.d.ts.map +1 -0
- package/dist/dts/ExecutionPlan.d.ts +210 -0
- package/dist/dts/ExecutionPlan.d.ts.map +1 -0
- package/dist/dts/ExecutionStrategy.d.ts +122 -0
- package/dist/dts/ExecutionStrategy.d.ts.map +1 -0
- package/dist/dts/Exit.d.ts +663 -0
- package/dist/dts/Exit.d.ts.map +1 -0
- package/dist/dts/FastCheck.d.ts +9 -0
- package/dist/dts/FastCheck.d.ts.map +1 -0
- package/dist/dts/Fiber.d.ts +831 -0
- package/dist/dts/Fiber.d.ts.map +1 -0
- package/dist/dts/FiberHandle.d.ts +270 -0
- package/dist/dts/FiberHandle.d.ts.map +1 -0
- package/dist/dts/FiberId.d.ts +196 -0
- package/dist/dts/FiberId.d.ts.map +1 -0
- package/dist/dts/FiberMap.d.ts +368 -0
- package/dist/dts/FiberMap.d.ts.map +1 -0
- package/dist/dts/FiberRef.d.ts +422 -0
- package/dist/dts/FiberRef.d.ts.map +1 -0
- package/dist/dts/FiberRefs.d.ts +256 -0
- package/dist/dts/FiberRefs.d.ts.map +1 -0
- package/dist/dts/FiberRefsPatch.d.ts +125 -0
- package/dist/dts/FiberRefsPatch.d.ts.map +1 -0
- package/dist/dts/FiberSet.d.ts +236 -0
- package/dist/dts/FiberSet.d.ts.map +1 -0
- package/dist/dts/FiberStatus.d.ts +94 -0
- package/dist/dts/FiberStatus.d.ts.map +1 -0
- package/dist/dts/Function.d.ts +660 -0
- package/dist/dts/Function.d.ts.map +1 -0
- package/dist/dts/GlobalValue.d.ts +25 -0
- package/dist/dts/GlobalValue.d.ts.map +1 -0
- package/dist/dts/Graph.d.ts +1753 -0
- package/dist/dts/Graph.d.ts.map +1 -0
- package/dist/dts/GroupBy.d.ts +125 -0
- package/dist/dts/GroupBy.d.ts.map +1 -0
- package/dist/dts/HKT.d.ts +41 -0
- package/dist/dts/HKT.d.ts.map +1 -0
- package/dist/dts/Hash.d.ts +79 -0
- package/dist/dts/Hash.d.ts.map +1 -0
- package/dist/dts/HashMap.d.ts +863 -0
- package/dist/dts/HashMap.d.ts.map +1 -0
- package/dist/dts/HashRing.d.ts +158 -0
- package/dist/dts/HashRing.d.ts.map +1 -0
- package/dist/dts/HashSet.d.ts +2271 -0
- package/dist/dts/HashSet.d.ts.map +1 -0
- package/dist/dts/Inspectable.d.ts +88 -0
- package/dist/dts/Inspectable.d.ts.map +1 -0
- package/dist/dts/Iterable.d.ts +1047 -0
- package/dist/dts/Iterable.d.ts.map +1 -0
- package/dist/dts/JSONSchema.d.ts +268 -0
- package/dist/dts/JSONSchema.d.ts.map +1 -0
- package/dist/dts/KeyedPool.d.ts +182 -0
- package/dist/dts/KeyedPool.d.ts.map +1 -0
- package/dist/dts/Layer.d.ts +1374 -0
- package/dist/dts/Layer.d.ts.map +1 -0
- package/dist/dts/LayerMap.d.ts +265 -0
- package/dist/dts/LayerMap.d.ts.map +1 -0
- package/dist/dts/List.d.ts +937 -0
- package/dist/dts/List.d.ts.map +1 -0
- package/dist/dts/LogLevel.d.ts +333 -0
- package/dist/dts/LogLevel.d.ts.map +1 -0
- package/dist/dts/LogSpan.d.ts +19 -0
- package/dist/dts/LogSpan.d.ts.map +1 -0
- package/dist/dts/Logger.d.ts +795 -0
- package/dist/dts/Logger.d.ts.map +1 -0
- package/dist/dts/Mailbox.d.ts +274 -0
- package/dist/dts/Mailbox.d.ts.map +1 -0
- package/dist/dts/ManagedRuntime.d.ts +154 -0
- package/dist/dts/ManagedRuntime.d.ts.map +1 -0
- package/dist/dts/Match.d.ts +1140 -0
- package/dist/dts/Match.d.ts.map +1 -0
- package/dist/dts/MergeDecision.d.ts +86 -0
- package/dist/dts/MergeDecision.d.ts.map +1 -0
- package/dist/dts/MergeState.d.ts +130 -0
- package/dist/dts/MergeState.d.ts.map +1 -0
- package/dist/dts/MergeStrategy.d.ts +104 -0
- package/dist/dts/MergeStrategy.d.ts.map +1 -0
- package/dist/dts/Metric.d.ts +1042 -0
- package/dist/dts/Metric.d.ts.map +1 -0
- package/dist/dts/MetricBoundaries.d.ts +58 -0
- package/dist/dts/MetricBoundaries.d.ts.map +1 -0
- package/dist/dts/MetricHook.d.ts +155 -0
- package/dist/dts/MetricHook.d.ts.map +1 -0
- package/dist/dts/MetricKey.d.ts +222 -0
- package/dist/dts/MetricKey.d.ts.map +1 -0
- package/dist/dts/MetricKeyType.d.ts +224 -0
- package/dist/dts/MetricKeyType.d.ts.map +1 -0
- package/dist/dts/MetricLabel.d.ts +42 -0
- package/dist/dts/MetricLabel.d.ts.map +1 -0
- package/dist/dts/MetricPair.d.ts +54 -0
- package/dist/dts/MetricPair.d.ts.map +1 -0
- package/dist/dts/MetricPolling.d.ts +151 -0
- package/dist/dts/MetricPolling.d.ts.map +1 -0
- package/dist/dts/MetricRegistry.d.ts +34 -0
- package/dist/dts/MetricRegistry.d.ts.map +1 -0
- package/dist/dts/MetricState.d.ts +238 -0
- package/dist/dts/MetricState.d.ts.map +1 -0
- package/dist/dts/Micro.d.ts +3440 -0
- package/dist/dts/Micro.d.ts.map +1 -0
- package/dist/dts/ModuleVersion.d.ts +11 -0
- package/dist/dts/ModuleVersion.d.ts.map +1 -0
- package/dist/dts/MutableHashMap.d.ts +170 -0
- package/dist/dts/MutableHashMap.d.ts.map +1 -0
- package/dist/dts/MutableHashSet.d.ts +547 -0
- package/dist/dts/MutableHashSet.d.ts.map +1 -0
- package/dist/dts/MutableList.d.ts +150 -0
- package/dist/dts/MutableList.d.ts.map +1 -0
- package/dist/dts/MutableQueue.d.ts +189 -0
- package/dist/dts/MutableQueue.d.ts.map +1 -0
- package/dist/dts/MutableRef.d.ts +175 -0
- package/dist/dts/MutableRef.d.ts.map +1 -0
- package/dist/dts/NonEmptyIterable.d.ts +21 -0
- package/dist/dts/NonEmptyIterable.d.ts.map +1 -0
- package/dist/dts/Number.d.ts +1361 -0
- package/dist/dts/Number.d.ts.map +1 -0
- package/dist/dts/Option.d.ts +3757 -0
- package/dist/dts/Option.d.ts.map +1 -0
- package/dist/dts/Order.d.ts +260 -0
- package/dist/dts/Order.d.ts.map +1 -0
- package/dist/dts/Ordering.d.ts +144 -0
- package/dist/dts/Ordering.d.ts.map +1 -0
- package/dist/dts/ParseResult.d.ts +560 -0
- package/dist/dts/ParseResult.d.ts.map +1 -0
- package/dist/dts/PartitionedSemaphore.d.ts +76 -0
- package/dist/dts/PartitionedSemaphore.d.ts.map +1 -0
- package/dist/dts/Pipeable.d.ts +65 -0
- package/dist/dts/Pipeable.d.ts.map +1 -0
- package/dist/dts/Pool.d.ts +201 -0
- package/dist/dts/Pool.d.ts.map +1 -0
- package/dist/dts/Predicate.d.ts +2197 -0
- package/dist/dts/Predicate.d.ts.map +1 -0
- package/dist/dts/Pretty.d.ts +26 -0
- package/dist/dts/Pretty.d.ts.map +1 -0
- package/dist/dts/PrimaryKey.d.ts +21 -0
- package/dist/dts/PrimaryKey.d.ts.map +1 -0
- package/dist/dts/PubSub.d.ts +197 -0
- package/dist/dts/PubSub.d.ts.map +1 -0
- package/dist/dts/Queue.d.ts +664 -0
- package/dist/dts/Queue.d.ts.map +1 -0
- package/dist/dts/Random.d.ts +183 -0
- package/dist/dts/Random.d.ts.map +1 -0
- package/dist/dts/RateLimiter.d.ts +134 -0
- package/dist/dts/RateLimiter.d.ts.map +1 -0
- package/dist/dts/RcMap.d.ts +231 -0
- package/dist/dts/RcMap.d.ts.map +1 -0
- package/dist/dts/RcRef.d.ts +111 -0
- package/dist/dts/RcRef.d.ts.map +1 -0
- package/dist/dts/Readable.d.ts +72 -0
- package/dist/dts/Readable.d.ts.map +1 -0
- package/dist/dts/Record.d.ts +1547 -0
- package/dist/dts/Record.d.ts.map +1 -0
- package/dist/dts/RedBlackTree.d.ts +676 -0
- package/dist/dts/RedBlackTree.d.ts.map +1 -0
- package/dist/dts/Redacted.d.ts +133 -0
- package/dist/dts/Redacted.d.ts.map +1 -0
- package/dist/dts/Ref.d.ts +250 -0
- package/dist/dts/Ref.d.ts.map +1 -0
- package/dist/dts/RegExp.d.ts +31 -0
- package/dist/dts/RegExp.d.ts.map +1 -0
- package/dist/dts/Reloadable.d.ts +102 -0
- package/dist/dts/Reloadable.d.ts.map +1 -0
- package/dist/dts/Request.d.ts +383 -0
- package/dist/dts/Request.d.ts.map +1 -0
- package/dist/dts/RequestBlock.d.ts +94 -0
- package/dist/dts/RequestBlock.d.ts.map +1 -0
- package/dist/dts/RequestResolver.d.ts +413 -0
- package/dist/dts/RequestResolver.d.ts.map +1 -0
- package/dist/dts/Resource.d.ts +99 -0
- package/dist/dts/Resource.d.ts.map +1 -0
- package/dist/dts/Runtime.d.ts +578 -0
- package/dist/dts/Runtime.d.ts.map +1 -0
- package/dist/dts/RuntimeFlags.d.ts +397 -0
- package/dist/dts/RuntimeFlags.d.ts.map +1 -0
- package/dist/dts/RuntimeFlagsPatch.d.ts +273 -0
- package/dist/dts/RuntimeFlagsPatch.d.ts.map +1 -0
- package/dist/dts/STM.d.ts +2645 -0
- package/dist/dts/STM.d.ts.map +1 -0
- package/dist/dts/Schedule.d.ts +3509 -0
- package/dist/dts/Schedule.d.ts.map +1 -0
- package/dist/dts/ScheduleDecision.d.ts +50 -0
- package/dist/dts/ScheduleDecision.d.ts.map +1 -0
- package/dist/dts/ScheduleInterval.d.ts +204 -0
- package/dist/dts/ScheduleInterval.d.ts.map +1 -0
- package/dist/dts/ScheduleIntervals.d.ts +159 -0
- package/dist/dts/ScheduleIntervals.d.ts.map +1 -0
- package/dist/dts/Scheduler.d.ts +161 -0
- package/dist/dts/Scheduler.d.ts.map +1 -0
- package/dist/dts/Schema.d.ts +5094 -0
- package/dist/dts/Schema.d.ts.map +1 -0
- package/dist/dts/SchemaAST.d.ts +1360 -0
- package/dist/dts/SchemaAST.d.ts.map +1 -0
- package/dist/dts/Scope.d.ts +194 -0
- package/dist/dts/Scope.d.ts.map +1 -0
- package/dist/dts/ScopedCache.d.ts +127 -0
- package/dist/dts/ScopedCache.d.ts.map +1 -0
- package/dist/dts/ScopedRef.d.ts +125 -0
- package/dist/dts/ScopedRef.d.ts.map +1 -0
- package/dist/dts/Secret.d.ts +76 -0
- package/dist/dts/Secret.d.ts.map +1 -0
- package/dist/dts/SingleProducerAsyncInput.d.ts +57 -0
- package/dist/dts/SingleProducerAsyncInput.d.ts.map +1 -0
- package/dist/dts/Sink.d.ts +1616 -0
- package/dist/dts/Sink.d.ts.map +1 -0
- package/dist/dts/SortedMap.d.ts +234 -0
- package/dist/dts/SortedMap.d.ts.map +1 -0
- package/dist/dts/SortedSet.d.ts +333 -0
- package/dist/dts/SortedSet.d.ts.map +1 -0
- package/dist/dts/Stream.d.ts +10803 -0
- package/dist/dts/Stream.d.ts.map +1 -0
- package/dist/dts/StreamEmit.d.ts +117 -0
- package/dist/dts/StreamEmit.d.ts.map +1 -0
- package/dist/dts/StreamHaltStrategy.d.ts +116 -0
- package/dist/dts/StreamHaltStrategy.d.ts.map +1 -0
- package/dist/dts/Streamable.d.ts +27 -0
- package/dist/dts/Streamable.d.ts.map +1 -0
- package/dist/dts/String.d.ts +848 -0
- package/dist/dts/String.d.ts.map +1 -0
- package/dist/dts/Struct.d.ts +295 -0
- package/dist/dts/Struct.d.ts.map +1 -0
- package/dist/dts/Subscribable.d.ts +76 -0
- package/dist/dts/Subscribable.d.ts.map +1 -0
- package/dist/dts/SubscriptionRef.d.ts +384 -0
- package/dist/dts/SubscriptionRef.d.ts.map +1 -0
- package/dist/dts/Supervisor.d.ts +171 -0
- package/dist/dts/Supervisor.d.ts.map +1 -0
- package/dist/dts/Symbol.d.ts +26 -0
- package/dist/dts/Symbol.d.ts.map +1 -0
- package/dist/dts/SynchronizedRef.d.ts +378 -0
- package/dist/dts/SynchronizedRef.d.ts.map +1 -0
- package/dist/dts/TArray.d.ts +857 -0
- package/dist/dts/TArray.d.ts.map +1 -0
- package/dist/dts/TDeferred.d.ts +104 -0
- package/dist/dts/TDeferred.d.ts.map +1 -0
- package/dist/dts/TMap.d.ts +780 -0
- package/dist/dts/TMap.d.ts.map +1 -0
- package/dist/dts/TPriorityQueue.d.ts +250 -0
- package/dist/dts/TPriorityQueue.d.ts.map +1 -0
- package/dist/dts/TPubSub.d.ts +186 -0
- package/dist/dts/TPubSub.d.ts.map +1 -0
- package/dist/dts/TQueue.d.ts +492 -0
- package/dist/dts/TQueue.d.ts.map +1 -0
- package/dist/dts/TRandom.d.ts +108 -0
- package/dist/dts/TRandom.d.ts.map +1 -0
- package/dist/dts/TReentrantLock.d.ts +230 -0
- package/dist/dts/TReentrantLock.d.ts.map +1 -0
- package/dist/dts/TRef.d.ts +235 -0
- package/dist/dts/TRef.d.ts.map +1 -0
- package/dist/dts/TSemaphore.d.ts +145 -0
- package/dist/dts/TSemaphore.d.ts.map +1 -0
- package/dist/dts/TSet.d.ts +564 -0
- package/dist/dts/TSet.d.ts.map +1 -0
- package/dist/dts/TSubscriptionRef.d.ts +251 -0
- package/dist/dts/TSubscriptionRef.d.ts.map +1 -0
- package/dist/dts/Take.d.ts +271 -0
- package/dist/dts/Take.d.ts.map +1 -0
- package/dist/dts/TestAnnotation.d.ts +71 -0
- package/dist/dts/TestAnnotation.d.ts.map +1 -0
- package/dist/dts/TestAnnotationMap.d.ts +56 -0
- package/dist/dts/TestAnnotationMap.d.ts.map +1 -0
- package/dist/dts/TestAnnotations.d.ts +59 -0
- package/dist/dts/TestAnnotations.d.ts.map +1 -0
- package/dist/dts/TestClock.d.ts +147 -0
- package/dist/dts/TestClock.d.ts.map +1 -0
- package/dist/dts/TestConfig.d.ts +45 -0
- package/dist/dts/TestConfig.d.ts.map +1 -0
- package/dist/dts/TestContext.d.ts +15 -0
- package/dist/dts/TestContext.d.ts.map +1 -0
- package/dist/dts/TestLive.d.ts +35 -0
- package/dist/dts/TestLive.d.ts.map +1 -0
- package/dist/dts/TestServices.d.ts +231 -0
- package/dist/dts/TestServices.d.ts.map +1 -0
- package/dist/dts/TestSized.d.ts +36 -0
- package/dist/dts/TestSized.d.ts.map +1 -0
- package/dist/dts/Tracer.d.ts +152 -0
- package/dist/dts/Tracer.d.ts.map +1 -0
- package/dist/dts/Trie.d.ts +1828 -0
- package/dist/dts/Trie.d.ts.map +1 -0
- package/dist/dts/Tuple.d.ts +446 -0
- package/dist/dts/Tuple.d.ts.map +1 -0
- package/dist/dts/Types.d.ts +330 -0
- package/dist/dts/Types.d.ts.map +1 -0
- package/dist/dts/Unify.d.ts +75 -0
- package/dist/dts/Unify.d.ts.map +1 -0
- package/dist/dts/UpstreamPullRequest.d.ts +109 -0
- package/dist/dts/UpstreamPullRequest.d.ts.map +1 -0
- package/dist/dts/UpstreamPullStrategy.d.ts +110 -0
- package/dist/dts/UpstreamPullStrategy.d.ts.map +1 -0
- package/dist/dts/Utils.d.ts +283 -0
- package/dist/dts/Utils.d.ts.map +1 -0
- package/dist/dts/index.d.ts +1385 -0
- package/dist/dts/index.d.ts.map +1 -0
- package/dist/dts/internal/array.d.ts +5 -0
- package/dist/dts/internal/array.d.ts.map +1 -0
- package/dist/dts/internal/blockedRequests.d.ts +2 -0
- package/dist/dts/internal/blockedRequests.d.ts.map +1 -0
- package/dist/dts/internal/cache.d.ts +2 -0
- package/dist/dts/internal/cache.d.ts.map +1 -0
- package/dist/dts/internal/cause.d.ts +2 -0
- package/dist/dts/internal/cause.d.ts.map +1 -0
- package/dist/dts/internal/channel/channelExecutor.d.ts +3 -0
- package/dist/dts/internal/channel/channelExecutor.d.ts.map +1 -0
- package/dist/dts/internal/channel/channelState.d.ts +2 -0
- package/dist/dts/internal/channel/channelState.d.ts.map +1 -0
- package/dist/dts/internal/channel/childExecutorDecision.d.ts +2 -0
- package/dist/dts/internal/channel/childExecutorDecision.d.ts.map +1 -0
- package/dist/dts/internal/channel/continuation.d.ts +2 -0
- package/dist/dts/internal/channel/continuation.d.ts.map +1 -0
- package/dist/dts/internal/channel/mergeDecision.d.ts +2 -0
- package/dist/dts/internal/channel/mergeDecision.d.ts.map +1 -0
- package/dist/dts/internal/channel/mergeState.d.ts +2 -0
- package/dist/dts/internal/channel/mergeState.d.ts.map +1 -0
- package/dist/dts/internal/channel/mergeStrategy.d.ts +2 -0
- package/dist/dts/internal/channel/mergeStrategy.d.ts.map +1 -0
- package/dist/dts/internal/channel/singleProducerAsyncInput.d.ts +2 -0
- package/dist/dts/internal/channel/singleProducerAsyncInput.d.ts.map +1 -0
- package/dist/dts/internal/channel/subexecutor.d.ts +2 -0
- package/dist/dts/internal/channel/subexecutor.d.ts.map +1 -0
- package/dist/dts/internal/channel/upstreamPullRequest.d.ts +2 -0
- package/dist/dts/internal/channel/upstreamPullRequest.d.ts.map +1 -0
- package/dist/dts/internal/channel/upstreamPullStrategy.d.ts +2 -0
- package/dist/dts/internal/channel/upstreamPullStrategy.d.ts.map +1 -0
- package/dist/dts/internal/channel.d.ts +2 -0
- package/dist/dts/internal/channel.d.ts.map +1 -0
- package/dist/dts/internal/clock.d.ts +2 -0
- package/dist/dts/internal/clock.d.ts.map +1 -0
- package/dist/dts/internal/completedRequestMap.d.ts +2 -0
- package/dist/dts/internal/completedRequestMap.d.ts.map +1 -0
- package/dist/dts/internal/concurrency.d.ts +2 -0
- package/dist/dts/internal/concurrency.d.ts.map +1 -0
- package/dist/dts/internal/config.d.ts +2 -0
- package/dist/dts/internal/config.d.ts.map +1 -0
- package/dist/dts/internal/configError.d.ts +2 -0
- package/dist/dts/internal/configError.d.ts.map +1 -0
- package/dist/dts/internal/configProvider/pathPatch.d.ts +2 -0
- package/dist/dts/internal/configProvider/pathPatch.d.ts.map +1 -0
- package/dist/dts/internal/configProvider.d.ts +2 -0
- package/dist/dts/internal/configProvider.d.ts.map +1 -0
- package/dist/dts/internal/console.d.ts +2 -0
- package/dist/dts/internal/console.d.ts.map +1 -0
- package/dist/dts/internal/context.d.ts +2 -0
- package/dist/dts/internal/context.d.ts.map +1 -0
- package/dist/dts/internal/core-effect.d.ts +8 -0
- package/dist/dts/internal/core-effect.d.ts.map +1 -0
- package/dist/dts/internal/core-stream.d.ts +9 -0
- package/dist/dts/internal/core-stream.d.ts.map +1 -0
- package/dist/dts/internal/core.d.ts +9 -0
- package/dist/dts/internal/core.d.ts.map +1 -0
- package/dist/dts/internal/data.d.ts +2 -0
- package/dist/dts/internal/data.d.ts.map +1 -0
- package/dist/dts/internal/dataSource.d.ts +2 -0
- package/dist/dts/internal/dataSource.d.ts.map +1 -0
- package/dist/dts/internal/dateTime.d.ts +2 -0
- package/dist/dts/internal/dateTime.d.ts.map +1 -0
- package/dist/dts/internal/defaultServices/console.d.ts +2 -0
- package/dist/dts/internal/defaultServices/console.d.ts.map +1 -0
- package/dist/dts/internal/defaultServices.d.ts +10 -0
- package/dist/dts/internal/defaultServices.d.ts.map +1 -0
- package/dist/dts/internal/deferred.d.ts +2 -0
- package/dist/dts/internal/deferred.d.ts.map +1 -0
- package/dist/dts/internal/differ/chunkPatch.d.ts +2 -0
- package/dist/dts/internal/differ/chunkPatch.d.ts.map +1 -0
- package/dist/dts/internal/differ/contextPatch.d.ts +2 -0
- package/dist/dts/internal/differ/contextPatch.d.ts.map +1 -0
- package/dist/dts/internal/differ/hashMapPatch.d.ts +2 -0
- package/dist/dts/internal/differ/hashMapPatch.d.ts.map +1 -0
- package/dist/dts/internal/differ/hashSetPatch.d.ts +2 -0
- package/dist/dts/internal/differ/hashSetPatch.d.ts.map +1 -0
- package/dist/dts/internal/differ/orPatch.d.ts +2 -0
- package/dist/dts/internal/differ/orPatch.d.ts.map +1 -0
- package/dist/dts/internal/differ/readonlyArrayPatch.d.ts +2 -0
- package/dist/dts/internal/differ/readonlyArrayPatch.d.ts.map +1 -0
- package/dist/dts/internal/differ.d.ts +2 -0
- package/dist/dts/internal/differ.d.ts.map +1 -0
- package/dist/dts/internal/doNotation.d.ts +2 -0
- package/dist/dts/internal/doNotation.d.ts.map +1 -0
- package/dist/dts/internal/effect/circular.d.ts +2 -0
- package/dist/dts/internal/effect/circular.d.ts.map +1 -0
- package/dist/dts/internal/effectable.d.ts +2 -0
- package/dist/dts/internal/effectable.d.ts.map +1 -0
- package/dist/dts/internal/either.d.ts +5 -0
- package/dist/dts/internal/either.d.ts.map +1 -0
- package/dist/dts/internal/encoding/base64.d.ts +2 -0
- package/dist/dts/internal/encoding/base64.d.ts.map +1 -0
- package/dist/dts/internal/encoding/base64Url.d.ts +2 -0
- package/dist/dts/internal/encoding/base64Url.d.ts.map +1 -0
- package/dist/dts/internal/encoding/common.d.ts +5 -0
- package/dist/dts/internal/encoding/common.d.ts.map +1 -0
- package/dist/dts/internal/encoding/hex.d.ts +2 -0
- package/dist/dts/internal/encoding/hex.d.ts.map +1 -0
- package/dist/dts/internal/errors.d.ts +5 -0
- package/dist/dts/internal/errors.d.ts.map +1 -0
- package/dist/dts/internal/executionPlan.d.ts +2 -0
- package/dist/dts/internal/executionPlan.d.ts.map +1 -0
- package/dist/dts/internal/executionStrategy.d.ts +2 -0
- package/dist/dts/internal/executionStrategy.d.ts.map +1 -0
- package/dist/dts/internal/fiber.d.ts +6 -0
- package/dist/dts/internal/fiber.d.ts.map +1 -0
- package/dist/dts/internal/fiberId.d.ts +2 -0
- package/dist/dts/internal/fiberId.d.ts.map +1 -0
- package/dist/dts/internal/fiberMessage.d.ts +2 -0
- package/dist/dts/internal/fiberMessage.d.ts.map +1 -0
- package/dist/dts/internal/fiberRefs/patch.d.ts +2 -0
- package/dist/dts/internal/fiberRefs/patch.d.ts.map +1 -0
- package/dist/dts/internal/fiberRefs.d.ts +2 -0
- package/dist/dts/internal/fiberRefs.d.ts.map +1 -0
- package/dist/dts/internal/fiberRuntime.d.ts +7 -0
- package/dist/dts/internal/fiberRuntime.d.ts.map +1 -0
- package/dist/dts/internal/fiberScope.d.ts +18 -0
- package/dist/dts/internal/fiberScope.d.ts.map +1 -0
- package/dist/dts/internal/fiberStatus.d.ts +2 -0
- package/dist/dts/internal/fiberStatus.d.ts.map +1 -0
- package/dist/dts/internal/groupBy.d.ts +2 -0
- package/dist/dts/internal/groupBy.d.ts.map +1 -0
- package/dist/dts/internal/hashMap/array.d.ts +2 -0
- package/dist/dts/internal/hashMap/array.d.ts.map +1 -0
- package/dist/dts/internal/hashMap/bitwise.d.ts +2 -0
- package/dist/dts/internal/hashMap/bitwise.d.ts.map +1 -0
- package/dist/dts/internal/hashMap/config.d.ts +2 -0
- package/dist/dts/internal/hashMap/config.d.ts.map +1 -0
- package/dist/dts/internal/hashMap/keySet.d.ts +2 -0
- package/dist/dts/internal/hashMap/keySet.d.ts.map +1 -0
- package/dist/dts/internal/hashMap/node.d.ts +2 -0
- package/dist/dts/internal/hashMap/node.d.ts.map +1 -0
- package/dist/dts/internal/hashMap.d.ts +9 -0
- package/dist/dts/internal/hashMap.d.ts.map +1 -0
- package/dist/dts/internal/hashSet.d.ts +2 -0
- package/dist/dts/internal/hashSet.d.ts.map +1 -0
- package/dist/dts/internal/keyedPool.d.ts +2 -0
- package/dist/dts/internal/keyedPool.d.ts.map +1 -0
- package/dist/dts/internal/layer/circular.d.ts +2 -0
- package/dist/dts/internal/layer/circular.d.ts.map +1 -0
- package/dist/dts/internal/layer.d.ts +16 -0
- package/dist/dts/internal/layer.d.ts.map +1 -0
- package/dist/dts/internal/logSpan.d.ts +2 -0
- package/dist/dts/internal/logSpan.d.ts.map +1 -0
- package/dist/dts/internal/logger-circular.d.ts +2 -0
- package/dist/dts/internal/logger-circular.d.ts.map +1 -0
- package/dist/dts/internal/logger.d.ts +2 -0
- package/dist/dts/internal/logger.d.ts.map +1 -0
- package/dist/dts/internal/mailbox.d.ts +2 -0
- package/dist/dts/internal/mailbox.d.ts.map +1 -0
- package/dist/dts/internal/managedRuntime/circular.d.ts +2 -0
- package/dist/dts/internal/managedRuntime/circular.d.ts.map +1 -0
- package/dist/dts/internal/managedRuntime.d.ts +2 -0
- package/dist/dts/internal/managedRuntime.d.ts.map +1 -0
- package/dist/dts/internal/matcher.d.ts +2 -0
- package/dist/dts/internal/matcher.d.ts.map +1 -0
- package/dist/dts/internal/metric/boundaries.d.ts +2 -0
- package/dist/dts/internal/metric/boundaries.d.ts.map +1 -0
- package/dist/dts/internal/metric/hook.d.ts +2 -0
- package/dist/dts/internal/metric/hook.d.ts.map +1 -0
- package/dist/dts/internal/metric/key.d.ts +2 -0
- package/dist/dts/internal/metric/key.d.ts.map +1 -0
- package/dist/dts/internal/metric/keyType.d.ts +2 -0
- package/dist/dts/internal/metric/keyType.d.ts.map +1 -0
- package/dist/dts/internal/metric/label.d.ts +2 -0
- package/dist/dts/internal/metric/label.d.ts.map +1 -0
- package/dist/dts/internal/metric/pair.d.ts +2 -0
- package/dist/dts/internal/metric/pair.d.ts.map +1 -0
- package/dist/dts/internal/metric/polling.d.ts +2 -0
- package/dist/dts/internal/metric/polling.d.ts.map +1 -0
- package/dist/dts/internal/metric/registry.d.ts +2 -0
- package/dist/dts/internal/metric/registry.d.ts.map +1 -0
- package/dist/dts/internal/metric/state.d.ts +22 -0
- package/dist/dts/internal/metric/state.d.ts.map +1 -0
- package/dist/dts/internal/metric.d.ts +2 -0
- package/dist/dts/internal/metric.d.ts.map +1 -0
- package/dist/dts/internal/opCodes/cause.d.ts +2 -0
- package/dist/dts/internal/opCodes/cause.d.ts.map +1 -0
- package/dist/dts/internal/opCodes/channel.d.ts +2 -0
- package/dist/dts/internal/opCodes/channel.d.ts.map +1 -0
- package/dist/dts/internal/opCodes/channelChildExecutorDecision.d.ts +2 -0
- package/dist/dts/internal/opCodes/channelChildExecutorDecision.d.ts.map +1 -0
- package/dist/dts/internal/opCodes/channelMergeDecision.d.ts +2 -0
- package/dist/dts/internal/opCodes/channelMergeDecision.d.ts.map +1 -0
- package/dist/dts/internal/opCodes/channelMergeState.d.ts +2 -0
- package/dist/dts/internal/opCodes/channelMergeState.d.ts.map +1 -0
- package/dist/dts/internal/opCodes/channelMergeStrategy.d.ts +2 -0
- package/dist/dts/internal/opCodes/channelMergeStrategy.d.ts.map +1 -0
- package/dist/dts/internal/opCodes/channelState.d.ts +2 -0
- package/dist/dts/internal/opCodes/channelState.d.ts.map +1 -0
- package/dist/dts/internal/opCodes/channelUpstreamPullRequest.d.ts +2 -0
- package/dist/dts/internal/opCodes/channelUpstreamPullRequest.d.ts.map +1 -0
- package/dist/dts/internal/opCodes/channelUpstreamPullStrategy.d.ts +2 -0
- package/dist/dts/internal/opCodes/channelUpstreamPullStrategy.d.ts.map +1 -0
- package/dist/dts/internal/opCodes/config.d.ts +2 -0
- package/dist/dts/internal/opCodes/config.d.ts.map +1 -0
- package/dist/dts/internal/opCodes/configError.d.ts +2 -0
- package/dist/dts/internal/opCodes/configError.d.ts.map +1 -0
- package/dist/dts/internal/opCodes/continuation.d.ts +2 -0
- package/dist/dts/internal/opCodes/continuation.d.ts.map +1 -0
- package/dist/dts/internal/opCodes/deferred.d.ts +2 -0
- package/dist/dts/internal/opCodes/deferred.d.ts.map +1 -0
- package/dist/dts/internal/opCodes/effect.d.ts +2 -0
- package/dist/dts/internal/opCodes/effect.d.ts.map +1 -0
- package/dist/dts/internal/opCodes/layer.d.ts +2 -0
- package/dist/dts/internal/opCodes/layer.d.ts.map +1 -0
- package/dist/dts/internal/opCodes/streamHaltStrategy.d.ts +2 -0
- package/dist/dts/internal/opCodes/streamHaltStrategy.d.ts.map +1 -0
- package/dist/dts/internal/option.d.ts +5 -0
- package/dist/dts/internal/option.d.ts.map +1 -0
- package/dist/dts/internal/pool.d.ts +2 -0
- package/dist/dts/internal/pool.d.ts.map +1 -0
- package/dist/dts/internal/pubsub.d.ts +2 -0
- package/dist/dts/internal/pubsub.d.ts.map +1 -0
- package/dist/dts/internal/query.d.ts +2 -0
- package/dist/dts/internal/query.d.ts.map +1 -0
- package/dist/dts/internal/queue.d.ts +2 -0
- package/dist/dts/internal/queue.d.ts.map +1 -0
- package/dist/dts/internal/random.d.ts +3 -0
- package/dist/dts/internal/random.d.ts.map +1 -0
- package/dist/dts/internal/rateLimiter.d.ts +2 -0
- package/dist/dts/internal/rateLimiter.d.ts.map +1 -0
- package/dist/dts/internal/rcMap.d.ts +2 -0
- package/dist/dts/internal/rcMap.d.ts.map +1 -0
- package/dist/dts/internal/rcRef.d.ts +2 -0
- package/dist/dts/internal/rcRef.d.ts.map +1 -0
- package/dist/dts/internal/redBlackTree/iterator.d.ts +2 -0
- package/dist/dts/internal/redBlackTree/iterator.d.ts.map +1 -0
- package/dist/dts/internal/redBlackTree/node.d.ts +14 -0
- package/dist/dts/internal/redBlackTree/node.d.ts.map +1 -0
- package/dist/dts/internal/redBlackTree.d.ts +2 -0
- package/dist/dts/internal/redBlackTree.d.ts.map +1 -0
- package/dist/dts/internal/redacted.d.ts +2 -0
- package/dist/dts/internal/redacted.d.ts.map +1 -0
- package/dist/dts/internal/ref.d.ts +2 -0
- package/dist/dts/internal/ref.d.ts.map +1 -0
- package/dist/dts/internal/reloadable.d.ts +2 -0
- package/dist/dts/internal/reloadable.d.ts.map +1 -0
- package/dist/dts/internal/request.d.ts +2 -0
- package/dist/dts/internal/request.d.ts.map +1 -0
- package/dist/dts/internal/resource.d.ts +2 -0
- package/dist/dts/internal/resource.d.ts.map +1 -0
- package/dist/dts/internal/ringBuffer.d.ts +2 -0
- package/dist/dts/internal/ringBuffer.d.ts.map +1 -0
- package/dist/dts/internal/runtime.d.ts +2 -0
- package/dist/dts/internal/runtime.d.ts.map +1 -0
- package/dist/dts/internal/runtimeFlags.d.ts +3 -0
- package/dist/dts/internal/runtimeFlags.d.ts.map +1 -0
- package/dist/dts/internal/runtimeFlagsPatch.d.ts +2 -0
- package/dist/dts/internal/runtimeFlagsPatch.d.ts.map +1 -0
- package/dist/dts/internal/schedule/decision.d.ts +2 -0
- package/dist/dts/internal/schedule/decision.d.ts.map +1 -0
- package/dist/dts/internal/schedule/interval.d.ts +2 -0
- package/dist/dts/internal/schedule/interval.d.ts.map +1 -0
- package/dist/dts/internal/schedule/intervals.d.ts +2 -0
- package/dist/dts/internal/schedule/intervals.d.ts.map +1 -0
- package/dist/dts/internal/schedule.d.ts +2 -0
- package/dist/dts/internal/schedule.d.ts.map +1 -0
- package/dist/dts/internal/schema/errors.d.ts +2 -0
- package/dist/dts/internal/schema/errors.d.ts.map +1 -0
- package/dist/dts/internal/schema/schemaId.d.ts +2 -0
- package/dist/dts/internal/schema/schemaId.d.ts.map +1 -0
- package/dist/dts/internal/schema/util.d.ts +2 -0
- package/dist/dts/internal/schema/util.d.ts.map +1 -0
- package/dist/dts/internal/scopedCache.d.ts +2 -0
- package/dist/dts/internal/scopedCache.d.ts.map +1 -0
- package/dist/dts/internal/scopedRef.d.ts +2 -0
- package/dist/dts/internal/scopedRef.d.ts.map +1 -0
- package/dist/dts/internal/secret.d.ts +2 -0
- package/dist/dts/internal/secret.d.ts.map +1 -0
- package/dist/dts/internal/singleShotGen.d.ts +2 -0
- package/dist/dts/internal/singleShotGen.d.ts.map +1 -0
- package/dist/dts/internal/sink.d.ts +2 -0
- package/dist/dts/internal/sink.d.ts.map +1 -0
- package/dist/dts/internal/stack.d.ts +2 -0
- package/dist/dts/internal/stack.d.ts.map +1 -0
- package/dist/dts/internal/stm/core.d.ts +2 -0
- package/dist/dts/internal/stm/core.d.ts.map +1 -0
- package/dist/dts/internal/stm/entry.d.ts +2 -0
- package/dist/dts/internal/stm/entry.d.ts.map +1 -0
- package/dist/dts/internal/stm/journal.d.ts +2 -0
- package/dist/dts/internal/stm/journal.d.ts.map +1 -0
- package/dist/dts/internal/stm/opCodes/stm.d.ts +2 -0
- package/dist/dts/internal/stm/opCodes/stm.d.ts.map +1 -0
- package/dist/dts/internal/stm/opCodes/stmState.d.ts +2 -0
- package/dist/dts/internal/stm/opCodes/stmState.d.ts.map +1 -0
- package/dist/dts/internal/stm/opCodes/strategy.d.ts +2 -0
- package/dist/dts/internal/stm/opCodes/strategy.d.ts.map +1 -0
- package/dist/dts/internal/stm/opCodes/tExit.d.ts +2 -0
- package/dist/dts/internal/stm/opCodes/tExit.d.ts.map +1 -0
- package/dist/dts/internal/stm/opCodes/tryCommit.d.ts +2 -0
- package/dist/dts/internal/stm/opCodes/tryCommit.d.ts.map +1 -0
- package/dist/dts/internal/stm/stm.d.ts +7 -0
- package/dist/dts/internal/stm/stm.d.ts.map +1 -0
- package/dist/dts/internal/stm/stmState.d.ts +2 -0
- package/dist/dts/internal/stm/stmState.d.ts.map +1 -0
- package/dist/dts/internal/stm/tArray.d.ts +2 -0
- package/dist/dts/internal/stm/tArray.d.ts.map +1 -0
- package/dist/dts/internal/stm/tDeferred.d.ts +2 -0
- package/dist/dts/internal/stm/tDeferred.d.ts.map +1 -0
- package/dist/dts/internal/stm/tExit.d.ts +5 -0
- package/dist/dts/internal/stm/tExit.d.ts.map +1 -0
- package/dist/dts/internal/stm/tMap.d.ts +2 -0
- package/dist/dts/internal/stm/tMap.d.ts.map +1 -0
- package/dist/dts/internal/stm/tPriorityQueue.d.ts +2 -0
- package/dist/dts/internal/stm/tPriorityQueue.d.ts.map +1 -0
- package/dist/dts/internal/stm/tPubSub.d.ts +2 -0
- package/dist/dts/internal/stm/tPubSub.d.ts.map +1 -0
- package/dist/dts/internal/stm/tQueue.d.ts +2 -0
- package/dist/dts/internal/stm/tQueue.d.ts.map +1 -0
- package/dist/dts/internal/stm/tRandom.d.ts +2 -0
- package/dist/dts/internal/stm/tRandom.d.ts.map +1 -0
- package/dist/dts/internal/stm/tReentrantLock.d.ts +2 -0
- package/dist/dts/internal/stm/tReentrantLock.d.ts.map +1 -0
- package/dist/dts/internal/stm/tRef.d.ts +4 -0
- package/dist/dts/internal/stm/tRef.d.ts.map +1 -0
- package/dist/dts/internal/stm/tSemaphore.d.ts +2 -0
- package/dist/dts/internal/stm/tSemaphore.d.ts.map +1 -0
- package/dist/dts/internal/stm/tSet.d.ts +2 -0
- package/dist/dts/internal/stm/tSet.d.ts.map +1 -0
- package/dist/dts/internal/stm/tSubscriptionRef.d.ts +2 -0
- package/dist/dts/internal/stm/tSubscriptionRef.d.ts.map +1 -0
- package/dist/dts/internal/stm/tryCommit.d.ts +2 -0
- package/dist/dts/internal/stm/tryCommit.d.ts.map +1 -0
- package/dist/dts/internal/stm/txnId.d.ts +2 -0
- package/dist/dts/internal/stm/txnId.d.ts.map +1 -0
- package/dist/dts/internal/stm/versioned.d.ts +2 -0
- package/dist/dts/internal/stm/versioned.d.ts.map +1 -0
- package/dist/dts/internal/stream/debounceState.d.ts +4 -0
- package/dist/dts/internal/stream/debounceState.d.ts.map +1 -0
- package/dist/dts/internal/stream/emit.d.ts +2 -0
- package/dist/dts/internal/stream/emit.d.ts.map +1 -0
- package/dist/dts/internal/stream/haltStrategy.d.ts +2 -0
- package/dist/dts/internal/stream/haltStrategy.d.ts.map +1 -0
- package/dist/dts/internal/stream/handoff.d.ts +2 -0
- package/dist/dts/internal/stream/handoff.d.ts.map +1 -0
- package/dist/dts/internal/stream/handoffSignal.d.ts +6 -0
- package/dist/dts/internal/stream/handoffSignal.d.ts.map +1 -0
- package/dist/dts/internal/stream/pull.d.ts +2 -0
- package/dist/dts/internal/stream/pull.d.ts.map +1 -0
- package/dist/dts/internal/stream/sinkEndReason.d.ts +2 -0
- package/dist/dts/internal/stream/sinkEndReason.d.ts.map +1 -0
- package/dist/dts/internal/stream/zipAllState.d.ts +2 -0
- package/dist/dts/internal/stream/zipAllState.d.ts.map +1 -0
- package/dist/dts/internal/stream/zipChunksState.d.ts +2 -0
- package/dist/dts/internal/stream/zipChunksState.d.ts.map +1 -0
- package/dist/dts/internal/stream.d.ts +29 -0
- package/dist/dts/internal/stream.d.ts.map +1 -0
- package/dist/dts/internal/string-utils.d.ts +7 -0
- package/dist/dts/internal/string-utils.d.ts.map +1 -0
- package/dist/dts/internal/subscriptionRef.d.ts +2 -0
- package/dist/dts/internal/subscriptionRef.d.ts.map +1 -0
- package/dist/dts/internal/supervisor/patch.d.ts +2 -0
- package/dist/dts/internal/supervisor/patch.d.ts.map +1 -0
- package/dist/dts/internal/supervisor.d.ts +2 -0
- package/dist/dts/internal/supervisor.d.ts.map +1 -0
- package/dist/dts/internal/synchronizedRef.d.ts +2 -0
- package/dist/dts/internal/synchronizedRef.d.ts.map +1 -0
- package/dist/dts/internal/take.d.ts +2 -0
- package/dist/dts/internal/take.d.ts.map +1 -0
- package/dist/dts/internal/testing/sleep.d.ts +2 -0
- package/dist/dts/internal/testing/sleep.d.ts.map +1 -0
- package/dist/dts/internal/testing/suspendedWarningData.d.ts +2 -0
- package/dist/dts/internal/testing/suspendedWarningData.d.ts.map +1 -0
- package/dist/dts/internal/testing/warningData.d.ts +2 -0
- package/dist/dts/internal/testing/warningData.d.ts.map +1 -0
- package/dist/dts/internal/tracer.d.ts +2 -0
- package/dist/dts/internal/tracer.d.ts.map +1 -0
- package/dist/dts/internal/trie.d.ts +2 -0
- package/dist/dts/internal/trie.d.ts.map +1 -0
- package/dist/dts/internal/version.d.ts +3 -0
- package/dist/dts/internal/version.d.ts.map +1 -0
- package/dist/esm/Arbitrary.js +798 -0
- package/dist/esm/Arbitrary.js.map +1 -0
- package/dist/esm/Array.js +2703 -0
- package/dist/esm/Array.js.map +1 -0
- package/dist/esm/BigDecimal.js +1087 -0
- package/dist/esm/BigDecimal.js.map +1 -0
- package/dist/esm/BigInt.js +548 -0
- package/dist/esm/BigInt.js.map +1 -0
- package/dist/esm/Boolean.js +240 -0
- package/dist/esm/Boolean.js.map +1 -0
- package/dist/esm/Brand.js +161 -0
- package/dist/esm/Brand.js.map +1 -0
- package/dist/esm/Cache.js +43 -0
- package/dist/esm/Cache.js.map +1 -0
- package/dist/esm/Cause.js +1004 -0
- package/dist/esm/Cause.js.map +1 -0
- package/dist/esm/Channel.js +887 -0
- package/dist/esm/Channel.js.map +1 -0
- package/dist/esm/ChildExecutorDecision.js +64 -0
- package/dist/esm/ChildExecutorDecision.js.map +1 -0
- package/dist/esm/Chunk.js +1083 -0
- package/dist/esm/Chunk.js.map +1 -0
- package/dist/esm/Clock.js +38 -0
- package/dist/esm/Clock.js.map +1 -0
- package/dist/esm/Config.js +321 -0
- package/dist/esm/Config.js.map +1 -0
- package/dist/esm/ConfigError.js +107 -0
- package/dist/esm/ConfigError.js.map +1 -0
- package/dist/esm/ConfigProvider.js +166 -0
- package/dist/esm/ConfigProvider.js.map +1 -0
- package/dist/esm/ConfigProviderPathPatch.js +30 -0
- package/dist/esm/ConfigProviderPathPatch.js.map +1 -0
- package/dist/esm/Console.js +118 -0
- package/dist/esm/Console.js.map +1 -0
- package/dist/esm/Context.js +360 -0
- package/dist/esm/Context.js.map +1 -0
- package/dist/esm/Cron.js +566 -0
- package/dist/esm/Cron.js.map +1 -0
- package/dist/esm/Data.js +305 -0
- package/dist/esm/Data.js.map +1 -0
- package/dist/esm/DateTime.js +1071 -0
- package/dist/esm/DateTime.js.map +1 -0
- package/dist/esm/DefaultServices.js +12 -0
- package/dist/esm/DefaultServices.js.map +1 -0
- package/dist/esm/Deferred.js +169 -0
- package/dist/esm/Deferred.js.map +1 -0
- package/dist/esm/Differ.js +132 -0
- package/dist/esm/Differ.js.map +1 -0
- package/dist/esm/Duration.js +702 -0
- package/dist/esm/Duration.js.map +1 -0
- package/dist/esm/Effect.js +10883 -0
- package/dist/esm/Effect.js.map +1 -0
- package/dist/esm/Effectable.js +49 -0
- package/dist/esm/Effectable.js.map +1 -0
- package/dist/esm/Either.js +688 -0
- package/dist/esm/Either.js.map +1 -0
- package/dist/esm/Encoding.js +136 -0
- package/dist/esm/Encoding.js.map +1 -0
- package/dist/esm/Equal.js +71 -0
- package/dist/esm/Equal.js.map +1 -0
- package/dist/esm/Equivalence.js +166 -0
- package/dist/esm/Equivalence.js.map +1 -0
- package/dist/esm/ExecutionPlan.js +99 -0
- package/dist/esm/ExecutionPlan.js.map +1 -0
- package/dist/esm/ExecutionStrategy.js +55 -0
- package/dist/esm/ExecutionStrategy.js.map +1 -0
- package/dist/esm/Exit.js +257 -0
- package/dist/esm/Exit.js.map +1 -0
- package/dist/esm/FastCheck.js +9 -0
- package/dist/esm/FastCheck.js.map +1 -0
- package/dist/esm/Fiber.js +350 -0
- package/dist/esm/Fiber.js.map +1 -0
- package/dist/esm/FiberHandle.js +316 -0
- package/dist/esm/FiberHandle.js.map +1 -0
- package/dist/esm/FiberId.js +115 -0
- package/dist/esm/FiberId.js.map +1 -0
- package/dist/esm/FiberMap.js +356 -0
- package/dist/esm/FiberMap.js.map +1 -0
- package/dist/esm/FiberRef.js +242 -0
- package/dist/esm/FiberRef.js.map +1 -0
- package/dist/esm/FiberRefs.js +92 -0
- package/dist/esm/FiberRefs.js.map +1 -0
- package/dist/esm/FiberRefsPatch.js +32 -0
- package/dist/esm/FiberRefsPatch.js.map +1 -0
- package/dist/esm/FiberSet.js +289 -0
- package/dist/esm/FiberSet.js.map +1 -0
- package/dist/esm/FiberStatus.js +52 -0
- package/dist/esm/FiberStatus.js.map +1 -0
- package/dist/esm/Function.js +467 -0
- package/dist/esm/Function.js.map +1 -0
- package/dist/esm/GlobalValue.js +52 -0
- package/dist/esm/GlobalValue.js.map +1 -0
- package/dist/esm/Graph.js +3019 -0
- package/dist/esm/Graph.js.map +1 -0
- package/dist/esm/GroupBy.js +39 -0
- package/dist/esm/GroupBy.js.map +1 -0
- package/dist/esm/HKT.js +2 -0
- package/dist/esm/HKT.js.map +1 -0
- package/dist/esm/Hash.js +166 -0
- package/dist/esm/Hash.js.map +1 -0
- package/dist/esm/HashMap.js +312 -0
- package/dist/esm/HashMap.js.map +1 -0
- package/dist/esm/HashRing.js +245 -0
- package/dist/esm/HashRing.js.map +1 -0
- package/dist/esm/HashSet.js +1253 -0
- package/dist/esm/HashSet.js.map +1 -0
- package/dist/esm/Inspectable.js +194 -0
- package/dist/esm/Inspectable.js.map +1 -0
- package/dist/esm/Iterable.js +987 -0
- package/dist/esm/Iterable.js.map +1 -0
- package/dist/esm/JSONSchema.js +715 -0
- package/dist/esm/JSONSchema.js.map +1 -0
- package/dist/esm/KeyedPool.js +76 -0
- package/dist/esm/KeyedPool.js.map +1 -0
- package/dist/esm/Layer.js +642 -0
- package/dist/esm/Layer.js.map +1 -0
- package/dist/esm/LayerMap.js +202 -0
- package/dist/esm/LayerMap.js.map +1 -0
- package/dist/esm/List.js +756 -0
- package/dist/esm/List.js.map +1 -0
- package/dist/esm/LogLevel.js +135 -0
- package/dist/esm/LogLevel.js.map +1 -0
- package/dist/esm/LogSpan.js +15 -0
- package/dist/esm/LogSpan.js.map +1 -0
- package/dist/esm/Logger.js +490 -0
- package/dist/esm/Logger.js.map +1 -0
- package/dist/esm/Mailbox.js +96 -0
- package/dist/esm/Mailbox.js.map +1 -0
- package/dist/esm/ManagedRuntime.js +42 -0
- package/dist/esm/ManagedRuntime.js.map +1 -0
- package/dist/esm/Match.js +828 -0
- package/dist/esm/Match.js.map +1 -0
- package/dist/esm/MergeDecision.js +35 -0
- package/dist/esm/MergeDecision.js.map +1 -0
- package/dist/esm/MergeState.js +58 -0
- package/dist/esm/MergeState.js.map +1 -0
- package/dist/esm/MergeStrategy.js +51 -0
- package/dist/esm/MergeStrategy.js.map +1 -0
- package/dist/esm/Metric.js +408 -0
- package/dist/esm/Metric.js.map +1 -0
- package/dist/esm/MetricBoundaries.js +33 -0
- package/dist/esm/MetricBoundaries.js.map +1 -0
- package/dist/esm/MetricHook.js +47 -0
- package/dist/esm/MetricHook.js.map +1 -0
- package/dist/esm/MetricKey.js +63 -0
- package/dist/esm/MetricKey.js.map +1 -0
- package/dist/esm/MetricKeyType.js +87 -0
- package/dist/esm/MetricKeyType.js.map +1 -0
- package/dist/esm/MetricLabel.js +17 -0
- package/dist/esm/MetricLabel.js.map +1 -0
- package/dist/esm/MetricPair.js +20 -0
- package/dist/esm/MetricPair.js.map +1 -0
- package/dist/esm/MetricPolling.js +59 -0
- package/dist/esm/MetricPolling.js.map +1 -0
- package/dist/esm/MetricRegistry.js +15 -0
- package/dist/esm/MetricRegistry.js.map +1 -0
- package/dist/esm/MetricState.js +87 -0
- package/dist/esm/MetricState.js.map +1 -0
- package/dist/esm/Micro.js +2528 -0
- package/dist/esm/Micro.js.map +1 -0
- package/dist/esm/ModuleVersion.js +17 -0
- package/dist/esm/ModuleVersion.js.map +1 -0
- package/dist/esm/MutableHashMap.js +299 -0
- package/dist/esm/MutableHashMap.js.map +1 -0
- package/dist/esm/MutableHashSet.js +511 -0
- package/dist/esm/MutableHashSet.js.map +1 -0
- package/dist/esm/MutableList.js +240 -0
- package/dist/esm/MutableList.js.map +1 -0
- package/dist/esm/MutableQueue.js +159 -0
- package/dist/esm/MutableQueue.js.map +1 -0
- package/dist/esm/MutableRef.js +127 -0
- package/dist/esm/MutableRef.js.map +1 -0
- package/dist/esm/NonEmptyIterable.js +16 -0
- package/dist/esm/NonEmptyIterable.js.map +1 -0
- package/dist/esm/Number.js +887 -0
- package/dist/esm/Number.js.map +1 -0
- package/dist/esm/Option.js +1785 -0
- package/dist/esm/Option.js.map +1 -0
- package/dist/esm/Order.js +252 -0
- package/dist/esm/Order.js.map +1 -0
- package/dist/esm/Ordering.js +72 -0
- package/dist/esm/Ordering.js.map +1 -0
- package/dist/esm/ParseResult.js +1556 -0
- package/dist/esm/ParseResult.js.map +1 -0
- package/dist/esm/PartitionedSemaphore.js +137 -0
- package/dist/esm/PartitionedSemaphore.js.map +1 -0
- package/dist/esm/Pipeable.js +62 -0
- package/dist/esm/Pipeable.js.map +1 -0
- package/dist/esm/Pool.js +100 -0
- package/dist/esm/Pool.js.map +1 -0
- package/dist/esm/Predicate.js +1117 -0
- package/dist/esm/Predicate.js.map +1 -0
- package/dist/esm/Pretty.js +174 -0
- package/dist/esm/Pretty.js.map +1 -0
- package/dist/esm/PrimaryKey.js +14 -0
- package/dist/esm/PrimaryKey.js.map +1 -0
- package/dist/esm/PubSub.js +120 -0
- package/dist/esm/PubSub.js.map +1 -0
- package/dist/esm/Queue.js +248 -0
- package/dist/esm/Queue.js.map +1 -0
- package/dist/esm/Random.js +138 -0
- package/dist/esm/Random.js.map +1 -0
- package/dist/esm/RateLimiter.js +77 -0
- package/dist/esm/RateLimiter.js.map +1 -0
- package/dist/esm/RcMap.js +69 -0
- package/dist/esm/RcMap.js.map +1 -0
- package/dist/esm/RcRef.js +51 -0
- package/dist/esm/RcRef.js.map +1 -0
- package/dist/esm/Readable.js +45 -0
- package/dist/esm/Readable.js.map +1 -0
- package/dist/esm/Record.js +846 -0
- package/dist/esm/Record.js.map +1 -0
- package/dist/esm/RedBlackTree.js +259 -0
- package/dist/esm/RedBlackTree.js.map +1 -0
- package/dist/esm/Redacted.js +93 -0
- package/dist/esm/Redacted.js.map +1 -0
- package/dist/esm/Ref.js +77 -0
- package/dist/esm/Ref.js.map +1 -0
- package/dist/esm/RegExp.js +37 -0
- package/dist/esm/RegExp.js.map +1 -0
- package/dist/esm/Reloadable.js +59 -0
- package/dist/esm/Reloadable.js.map +1 -0
- package/dist/esm/Request.js +140 -0
- package/dist/esm/Request.js.map +1 -0
- package/dist/esm/RequestBlock.js +35 -0
- package/dist/esm/RequestBlock.js.map +1 -0
- package/dist/esm/RequestResolver.js +175 -0
- package/dist/esm/RequestResolver.js.map +1 -0
- package/dist/esm/Resource.js +44 -0
- package/dist/esm/Resource.js.map +1 -0
- package/dist/esm/Runtime.js +181 -0
- package/dist/esm/Runtime.js.map +1 -0
- package/dist/esm/RuntimeFlags.js +251 -0
- package/dist/esm/RuntimeFlags.js.map +1 -0
- package/dist/esm/RuntimeFlagsPatch.js +134 -0
- package/dist/esm/RuntimeFlagsPatch.js.map +1 -0
- package/dist/esm/STM.js +1002 -0
- package/dist/esm/STM.js.map +1 -0
- package/dist/esm/Schedule.js +1595 -0
- package/dist/esm/Schedule.js.map +1 -0
- package/dist/esm/ScheduleDecision.js +32 -0
- package/dist/esm/ScheduleDecision.js.map +1 -0
- package/dist/esm/ScheduleInterval.js +100 -0
- package/dist/esm/ScheduleInterval.js.map +1 -0
- package/dist/esm/ScheduleIntervals.js +78 -0
- package/dist/esm/ScheduleIntervals.js.map +1 -0
- package/dist/esm/Scheduler.js +289 -0
- package/dist/esm/Scheduler.js.map +1 -0
- package/dist/esm/Schema.js +6035 -0
- package/dist/esm/Schema.js.map +1 -0
- package/dist/esm/SchemaAST.js +2485 -0
- package/dist/esm/SchemaAST.js.map +1 -0
- package/dist/esm/Scope.js +94 -0
- package/dist/esm/Scope.js.map +1 -0
- package/dist/esm/ScopedCache.js +24 -0
- package/dist/esm/ScopedCache.js.map +1 -0
- package/dist/esm/ScopedRef.js +42 -0
- package/dist/esm/ScopedRef.js.map +1 -0
- package/dist/esm/Secret.js +44 -0
- package/dist/esm/Secret.js.map +1 -0
- package/dist/esm/SingleProducerAsyncInput.js +7 -0
- package/dist/esm/SingleProducerAsyncInput.js.map +1 -0
- package/dist/esm/Sink.js +864 -0
- package/dist/esm/Sink.js.map +1 -0
- package/dist/esm/SortedMap.js +169 -0
- package/dist/esm/SortedMap.js.map +1 -0
- package/dist/esm/SortedSet.js +237 -0
- package/dist/esm/SortedSet.js.map +1 -0
- package/dist/esm/Stream.js +4192 -0
- package/dist/esm/Stream.js.map +1 -0
- package/dist/esm/StreamEmit.js +2 -0
- package/dist/esm/StreamEmit.js.map +1 -0
- package/dist/esm/StreamHaltStrategy.js +57 -0
- package/dist/esm/StreamHaltStrategy.js.map +1 -0
- package/dist/esm/Streamable.js +36 -0
- package/dist/esm/Streamable.js.map +1 -0
- package/dist/esm/String.js +635 -0
- package/dist/esm/String.js.map +1 -0
- package/dist/esm/Struct.js +191 -0
- package/dist/esm/Struct.js.map +1 -0
- package/dist/esm/Subscribable.js +56 -0
- package/dist/esm/Subscribable.js.map +1 -0
- package/dist/esm/SubscriptionRef.js +116 -0
- package/dist/esm/SubscriptionRef.js.map +1 -0
- package/dist/esm/Supervisor.js +107 -0
- package/dist/esm/Supervisor.js.map +1 -0
- package/dist/esm/Symbol.js +27 -0
- package/dist/esm/Symbol.js.map +1 -0
- package/dist/esm/SynchronizedRef.js +119 -0
- package/dist/esm/SynchronizedRef.js.map +1 -0
- package/dist/esm/TArray.js +306 -0
- package/dist/esm/TArray.js.map +1 -0
- package/dist/esm/TDeferred.js +39 -0
- package/dist/esm/TDeferred.js.map +1 -0
- package/dist/esm/TMap.js +279 -0
- package/dist/esm/TMap.js.map +1 -0
- package/dist/esm/TPriorityQueue.js +136 -0
- package/dist/esm/TPriorityQueue.js.map +1 -0
- package/dist/esm/TPubSub.js +131 -0
- package/dist/esm/TPubSub.js.map +1 -0
- package/dist/esm/TQueue.js +229 -0
- package/dist/esm/TQueue.js.map +1 -0
- package/dist/esm/TRandom.js +65 -0
- package/dist/esm/TRandom.js.map +1 -0
- package/dist/esm/TReentrantLock.js +142 -0
- package/dist/esm/TReentrantLock.js.map +1 -0
- package/dist/esm/TRef.js +75 -0
- package/dist/esm/TRef.js.map +1 -0
- package/dist/esm/TSemaphore.js +65 -0
- package/dist/esm/TSemaphore.js.map +1 -0
- package/dist/esm/TSet.js +201 -0
- package/dist/esm/TSet.js.map +1 -0
- package/dist/esm/TSubscriptionRef.js +87 -0
- package/dist/esm/TSubscriptionRef.js.map +1 -0
- package/dist/esm/Take.js +148 -0
- package/dist/esm/Take.js.map +1 -0
- package/dist/esm/TestAnnotation.js +94 -0
- package/dist/esm/TestAnnotation.js.map +1 -0
- package/dist/esm/TestAnnotationMap.js +80 -0
- package/dist/esm/TestAnnotationMap.js.map +1 -0
- package/dist/esm/TestAnnotations.js +61 -0
- package/dist/esm/TestAnnotations.js.map +1 -0
- package/dist/esm/TestClock.js +354 -0
- package/dist/esm/TestClock.js.map +1 -0
- package/dist/esm/TestConfig.js +13 -0
- package/dist/esm/TestConfig.js.map +1 -0
- package/dist/esm/TestContext.js +21 -0
- package/dist/esm/TestContext.js.map +1 -0
- package/dist/esm/TestLive.js +30 -0
- package/dist/esm/TestLive.js.map +1 -0
- package/dist/esm/TestServices.js +230 -0
- package/dist/esm/TestServices.js.map +1 -0
- package/dist/esm/TestSized.js +36 -0
- package/dist/esm/TestSized.js.map +1 -0
- package/dist/esm/Tracer.js +37 -0
- package/dist/esm/Tracer.js.map +1 -0
- package/dist/esm/Trie.js +716 -0
- package/dist/esm/Trie.js.map +1 -0
- package/dist/esm/Tuple.js +235 -0
- package/dist/esm/Tuple.js.map +1 -0
- package/dist/esm/Types.js +7 -0
- package/dist/esm/Types.js.map +1 -0
- package/dist/esm/Unify.js +9 -0
- package/dist/esm/Unify.js.map +1 -0
- package/dist/esm/UpstreamPullRequest.js +51 -0
- package/dist/esm/UpstreamPullRequest.js.map +1 -0
- package/dist/esm/UpstreamPullStrategy.js +51 -0
- package/dist/esm/UpstreamPullStrategy.js.map +1 -0
- package/dist/esm/Utils.js +357 -0
- package/dist/esm/Utils.js.map +1 -0
- package/dist/esm/index.js +1385 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/internal/array.js +6 -0
- package/dist/esm/internal/array.js.map +1 -0
- package/dist/esm/internal/blockedRequests.js +341 -0
- package/dist/esm/internal/blockedRequests.js.map +1 -0
- package/dist/esm/internal/cache.js +480 -0
- package/dist/esm/internal/cache.js.map +1 -0
- package/dist/esm/internal/cause.js +824 -0
- package/dist/esm/internal/cause.js.map +1 -0
- package/dist/esm/internal/channel/channelExecutor.js +688 -0
- package/dist/esm/internal/channel/channelExecutor.js.map +1 -0
- package/dist/esm/internal/channel/channelState.js +59 -0
- package/dist/esm/internal/channel/channelState.js.map +1 -0
- package/dist/esm/internal/channel/childExecutorDecision.js +60 -0
- package/dist/esm/internal/channel/childExecutorDecision.js.map +1 -0
- package/dist/esm/internal/channel/continuation.js +48 -0
- package/dist/esm/internal/channel/continuation.js.map +1 -0
- package/dist/esm/internal/channel/mergeDecision.js +49 -0
- package/dist/esm/internal/channel/mergeDecision.js.map +1 -0
- package/dist/esm/internal/channel/mergeState.js +69 -0
- package/dist/esm/internal/channel/mergeState.js.map +1 -0
- package/dist/esm/internal/channel/mergeStrategy.js +46 -0
- package/dist/esm/internal/channel/mergeStrategy.js.map +1 -0
- package/dist/esm/internal/channel/singleProducerAsyncInput.js +163 -0
- package/dist/esm/internal/channel/singleProducerAsyncInput.js.map +1 -0
- package/dist/esm/internal/channel/subexecutor.js +152 -0
- package/dist/esm/internal/channel/subexecutor.js.map +1 -0
- package/dist/esm/internal/channel/upstreamPullRequest.js +52 -0
- package/dist/esm/internal/channel/upstreamPullRequest.js.map +1 -0
- package/dist/esm/internal/channel/upstreamPullStrategy.js +52 -0
- package/dist/esm/internal/channel/upstreamPullStrategy.js.map +1 -0
- package/dist/esm/internal/channel.js +683 -0
- package/dist/esm/internal/channel.js.map +1 -0
- package/dist/esm/internal/clock.js +77 -0
- package/dist/esm/internal/clock.js.map +1 -0
- package/dist/esm/internal/completedRequestMap.js +5 -0
- package/dist/esm/internal/completedRequestMap.js.map +1 -0
- package/dist/esm/internal/concurrency.js +28 -0
- package/dist/esm/internal/concurrency.js.map +1 -0
- package/dist/esm/internal/config.js +363 -0
- package/dist/esm/internal/config.js.map +1 -0
- package/dist/esm/internal/configError.js +263 -0
- package/dist/esm/internal/configError.js.map +1 -0
- package/dist/esm/internal/configProvider/pathPatch.js +76 -0
- package/dist/esm/internal/configProvider/pathPatch.js.map +1 -0
- package/dist/esm/internal/configProvider.js +425 -0
- package/dist/esm/internal/configProvider.js.map +1 -0
- package/dist/esm/internal/console.js +54 -0
- package/dist/esm/internal/console.js.map +1 -0
- package/dist/esm/internal/context.js +253 -0
- package/dist/esm/internal/context.js.map +1 -0
- package/dist/esm/internal/core-effect.js +811 -0
- package/dist/esm/internal/core-effect.js.map +1 -0
- package/dist/esm/internal/core-stream.js +236 -0
- package/dist/esm/internal/core-stream.js.map +1 -0
- package/dist/esm/internal/core.js +1610 -0
- package/dist/esm/internal/core.js.map +1 -0
- package/dist/esm/internal/data.js +29 -0
- package/dist/esm/internal/data.js.map +1 -0
- package/dist/esm/internal/dataSource.js +93 -0
- package/dist/esm/internal/dataSource.js.map +1 -0
- package/dist/esm/internal/dateTime.js +796 -0
- package/dist/esm/internal/dateTime.js.map +1 -0
- package/dist/esm/internal/defaultServices/console.js +92 -0
- package/dist/esm/internal/defaultServices/console.js.map +1 -0
- package/dist/esm/internal/defaultServices.js +73 -0
- package/dist/esm/internal/defaultServices.js.map +1 -0
- package/dist/esm/internal/deferred.js +27 -0
- package/dist/esm/internal/deferred.js.map +1 -0
- package/dist/esm/internal/differ/chunkPatch.js +130 -0
- package/dist/esm/internal/differ/chunkPatch.js.map +1 -0
- package/dist/esm/internal/differ/contextPatch.js +143 -0
- package/dist/esm/internal/differ/contextPatch.js.map +1 -0
- package/dist/esm/internal/differ/hashMapPatch.js +130 -0
- package/dist/esm/internal/differ/hashMapPatch.js.map +1 -0
- package/dist/esm/internal/differ/hashSetPatch.js +101 -0
- package/dist/esm/internal/differ/hashSetPatch.js.map +1 -0
- package/dist/esm/internal/differ/orPatch.js +170 -0
- package/dist/esm/internal/differ/orPatch.js.map +1 -0
- package/dist/esm/internal/differ/readonlyArrayPatch.js +129 -0
- package/dist/esm/internal/differ/readonlyArrayPatch.js.map +1 -0
- package/dist/esm/internal/differ.js +134 -0
- package/dist/esm/internal/differ.js.map +1 -0
- package/dist/esm/internal/doNotation.js +16 -0
- package/dist/esm/internal/doNotation.js.map +1 -0
- package/dist/esm/internal/effect/circular.js +402 -0
- package/dist/esm/internal/effect/circular.js.map +1 -0
- package/dist/esm/internal/effectable.js +113 -0
- package/dist/esm/internal/effectable.js.map +1 -0
- package/dist/esm/internal/either.js +85 -0
- package/dist/esm/internal/either.js.map +1 -0
- package/dist/esm/internal/encoding/base64.js +71 -0
- package/dist/esm/internal/encoding/base64.js.map +1 -0
- package/dist/esm/internal/encoding/base64Url.js +21 -0
- package/dist/esm/internal/encoding/base64Url.js.map +1 -0
- package/dist/esm/internal/encoding/common.js +38 -0
- package/dist/esm/internal/encoding/common.js.map +1 -0
- package/dist/esm/internal/encoding/hex.js +48 -0
- package/dist/esm/internal/encoding/hex.js.map +1 -0
- package/dist/esm/internal/errors.js +6 -0
- package/dist/esm/internal/errors.js.map +1 -0
- package/dist/esm/internal/executionPlan.js +59 -0
- package/dist/esm/internal/executionPlan.js.map +1 -0
- package/dist/esm/internal/executionStrategy.js +44 -0
- package/dist/esm/internal/executionStrategy.js.map +1 -0
- package/dist/esm/internal/fiber.js +253 -0
- package/dist/esm/internal/fiber.js.map +1 -0
- package/dist/esm/internal/fiberId.js +219 -0
- package/dist/esm/internal/fiberId.js.map +1 -0
- package/dist/esm/internal/fiberMessage.js +28 -0
- package/dist/esm/internal/fiberMessage.js.map +1 -0
- package/dist/esm/internal/fiberRefs/patch.js +107 -0
- package/dist/esm/internal/fiberRefs/patch.js.map +1 -0
- package/dist/esm/internal/fiberRefs.js +189 -0
- package/dist/esm/internal/fiberRefs.js.map +1 -0
- package/dist/esm/internal/fiberRuntime.js +2148 -0
- package/dist/esm/internal/fiberRuntime.js.map +1 -0
- package/dist/esm/internal/fiberScope.js +44 -0
- package/dist/esm/internal/fiberScope.js.map +1 -0
- package/dist/esm/internal/fiberStatus.js +72 -0
- package/dist/esm/internal/fiberStatus.js.map +1 -0
- package/dist/esm/internal/groupBy.js +213 -0
- package/dist/esm/internal/groupBy.js.map +1 -0
- package/dist/esm/internal/hashMap/array.js +48 -0
- package/dist/esm/internal/hashMap/array.js.map +1 -0
- package/dist/esm/internal/hashMap/bitwise.js +29 -0
- package/dist/esm/internal/hashMap/bitwise.js.map +1 -0
- package/dist/esm/internal/hashMap/config.js +11 -0
- package/dist/esm/internal/hashMap/config.js.map +1 -0
- package/dist/esm/internal/hashMap/keySet.js +6 -0
- package/dist/esm/internal/hashMap/keySet.js.map +1 -0
- package/dist/esm/internal/hashMap/node.js +253 -0
- package/dist/esm/internal/hashMap/node.js.map +1 -0
- package/dist/esm/internal/hashMap.js +360 -0
- package/dist/esm/internal/hashMap.js.map +1 -0
- package/dist/esm/internal/hashSet.js +182 -0
- package/dist/esm/internal/hashSet.js.map +1 -0
- package/dist/esm/internal/keyedPool.js +159 -0
- package/dist/esm/internal/keyedPool.js.map +1 -0
- package/dist/esm/internal/layer/circular.js +63 -0
- package/dist/esm/internal/layer/circular.js.map +1 -0
- package/dist/esm/internal/layer.js +552 -0
- package/dist/esm/internal/layer.js.map +1 -0
- package/dist/esm/internal/logSpan.js +17 -0
- package/dist/esm/internal/logSpan.js.map +1 -0
- package/dist/esm/internal/logger-circular.js +19 -0
- package/dist/esm/internal/logger-circular.js.map +1 -0
- package/dist/esm/internal/logger.js +367 -0
- package/dist/esm/internal/logger.js.map +1 -0
- package/dist/esm/internal/mailbox.js +450 -0
- package/dist/esm/internal/mailbox.js.map +1 -0
- package/dist/esm/internal/managedRuntime/circular.js +4 -0
- package/dist/esm/internal/managedRuntime/circular.js.map +1 -0
- package/dist/esm/internal/managedRuntime.js +86 -0
- package/dist/esm/internal/managedRuntime.js.map +1 -0
- package/dist/esm/internal/matcher.js +291 -0
- package/dist/esm/internal/matcher.js.map +1 -0
- package/dist/esm/internal/metric/boundaries.js +42 -0
- package/dist/esm/internal/metric/boundaries.js.map +1 -0
- package/dist/esm/internal/metric/hook.js +375 -0
- package/dist/esm/internal/metric/hook.js.map +1 -0
- package/dist/esm/internal/metric/key.js +60 -0
- package/dist/esm/internal/metric/key.js.map +1 -0
- package/dist/esm/internal/metric/keyType.js +169 -0
- package/dist/esm/internal/metric/keyType.js.map +1 -0
- package/dist/esm/internal/metric/label.js +36 -0
- package/dist/esm/internal/metric/label.js.map +1 -0
- package/dist/esm/internal/metric/pair.js +32 -0
- package/dist/esm/internal/metric/pair.js.map +1 -0
- package/dist/esm/internal/metric/polling.js +69 -0
- package/dist/esm/internal/metric/polling.js.map +1 -0
- package/dist/esm/internal/metric/registry.js +105 -0
- package/dist/esm/internal/metric/registry.js.map +1 -0
- package/dist/esm/internal/metric/state.js +181 -0
- package/dist/esm/internal/metric/state.js.map +1 -0
- package/dist/esm/internal/metric.js +181 -0
- package/dist/esm/internal/metric.js.map +1 -0
- package/dist/esm/internal/opCodes/cause.js +13 -0
- package/dist/esm/internal/opCodes/cause.js.map +1 -0
- package/dist/esm/internal/opCodes/channel.js +29 -0
- package/dist/esm/internal/opCodes/channel.js.map +1 -0
- package/dist/esm/internal/opCodes/channelChildExecutorDecision.js +7 -0
- package/dist/esm/internal/opCodes/channelChildExecutorDecision.js.map +1 -0
- package/dist/esm/internal/opCodes/channelMergeDecision.js +5 -0
- package/dist/esm/internal/opCodes/channelMergeDecision.js.map +1 -0
- package/dist/esm/internal/opCodes/channelMergeState.js +7 -0
- package/dist/esm/internal/opCodes/channelMergeState.js.map +1 -0
- package/dist/esm/internal/opCodes/channelMergeStrategy.js +5 -0
- package/dist/esm/internal/opCodes/channelMergeStrategy.js.map +1 -0
- package/dist/esm/internal/opCodes/channelState.js +9 -0
- package/dist/esm/internal/opCodes/channelState.js.map +1 -0
- package/dist/esm/internal/opCodes/channelUpstreamPullRequest.js +5 -0
- package/dist/esm/internal/opCodes/channelUpstreamPullRequest.js.map +1 -0
- package/dist/esm/internal/opCodes/channelUpstreamPullStrategy.js +5 -0
- package/dist/esm/internal/opCodes/channelUpstreamPullStrategy.js.map +1 -0
- package/dist/esm/internal/opCodes/config.js +23 -0
- package/dist/esm/internal/opCodes/config.js.map +1 -0
- package/dist/esm/internal/opCodes/configError.js +13 -0
- package/dist/esm/internal/opCodes/configError.js.map +1 -0
- package/dist/esm/internal/opCodes/continuation.js +5 -0
- package/dist/esm/internal/opCodes/continuation.js.map +1 -0
- package/dist/esm/internal/opCodes/deferred.js +5 -0
- package/dist/esm/internal/opCodes/deferred.js.map +1 -0
- package/dist/esm/internal/opCodes/effect.js +31 -0
- package/dist/esm/internal/opCodes/effect.js.map +1 -0
- package/dist/esm/internal/opCodes/layer.js +21 -0
- package/dist/esm/internal/opCodes/layer.js.map +1 -0
- package/dist/esm/internal/opCodes/streamHaltStrategy.js +9 -0
- package/dist/esm/internal/opCodes/streamHaltStrategy.js.map +1 -0
- package/dist/esm/internal/option.js +70 -0
- package/dist/esm/internal/option.js.map +1 -0
- package/dist/esm/internal/pool.js +276 -0
- package/dist/esm/internal/pool.js.map +1 -0
- package/dist/esm/internal/pubsub.js +1263 -0
- package/dist/esm/internal/pubsub.js.map +1 -0
- package/dist/esm/internal/query.js +93 -0
- package/dist/esm/internal/query.js.map +1 -0
- package/dist/esm/internal/queue.js +486 -0
- package/dist/esm/internal/queue.js.map +1 -0
- package/dist/esm/internal/random.js +119 -0
- package/dist/esm/internal/random.js.map +1 -0
- package/dist/esm/internal/rateLimiter.js +43 -0
- package/dist/esm/internal/rateLimiter.js.map +1 -0
- package/dist/esm/internal/rcMap.js +173 -0
- package/dist/esm/internal/rcMap.js.map +1 -0
- package/dist/esm/internal/rcRef.js +129 -0
- package/dist/esm/internal/rcRef.js.map +1 -0
- package/dist/esm/internal/redBlackTree/iterator.js +191 -0
- package/dist/esm/internal/redBlackTree/iterator.js.map +1 -0
- package/dist/esm/internal/redBlackTree/node.js +50 -0
- package/dist/esm/internal/redBlackTree/node.js.map +1 -0
- package/dist/esm/internal/redBlackTree.js +1069 -0
- package/dist/esm/internal/redBlackTree.js.map +1 -0
- package/dist/esm/internal/redacted.js +56 -0
- package/dist/esm/internal/redacted.js.map +1 -0
- package/dist/esm/internal/ref.js +110 -0
- package/dist/esm/internal/ref.js.map +1 -0
- package/dist/esm/internal/reloadable.js +42 -0
- package/dist/esm/internal/reloadable.js.map +1 -0
- package/dist/esm/internal/request.js +91 -0
- package/dist/esm/internal/request.js.map +1 -0
- package/dist/esm/internal/resource.js +38 -0
- package/dist/esm/internal/resource.js.map +1 -0
- package/dist/esm/internal/ringBuffer.js +56 -0
- package/dist/esm/internal/ringBuffer.js.map +1 -0
- package/dist/esm/internal/runtime.js +307 -0
- package/dist/esm/internal/runtime.js.map +1 -0
- package/dist/esm/internal/runtimeFlags.js +107 -0
- package/dist/esm/internal/runtimeFlags.js.map +1 -0
- package/dist/esm/internal/runtimeFlagsPatch.js +38 -0
- package/dist/esm/internal/runtimeFlagsPatch.js.map +1 -0
- package/dist/esm/internal/schedule/decision.js +33 -0
- package/dist/esm/internal/schedule/decision.js.map +1 -0
- package/dist/esm/internal/schedule/interval.js +70 -0
- package/dist/esm/internal/schedule/interval.js.map +1 -0
- package/dist/esm/internal/schedule/intervals.js +122 -0
- package/dist/esm/internal/schedule/intervals.js.map +1 -0
- package/dist/esm/internal/schedule.js +832 -0
- package/dist/esm/internal/schedule.js.map +1 -0
- package/dist/esm/internal/schema/errors.js +86 -0
- package/dist/esm/internal/schema/errors.js.map +1 -0
- package/dist/esm/internal/schema/schemaId.js +43 -0
- package/dist/esm/internal/schema/schemaId.js.map +1 -0
- package/dist/esm/internal/schema/util.js +35 -0
- package/dist/esm/internal/schema/util.js.map +1 -0
- package/dist/esm/internal/scopedCache.js +382 -0
- package/dist/esm/internal/scopedCache.js.map +1 -0
- package/dist/esm/internal/scopedRef.js +43 -0
- package/dist/esm/internal/scopedRef.js.map +1 -0
- package/dist/esm/internal/secret.js +77 -0
- package/dist/esm/internal/secret.js.map +1 -0
- package/dist/esm/internal/singleShotGen.js +30 -0
- package/dist/esm/internal/singleShotGen.js.map +1 -0
- package/dist/esm/internal/sink.js +801 -0
- package/dist/esm/internal/sink.js.map +1 -0
- package/dist/esm/internal/stack.js +5 -0
- package/dist/esm/internal/stack.js.map +1 -0
- package/dist/esm/internal/stm/core.js +501 -0
- package/dist/esm/internal/stm/core.js.map +1 -0
- package/dist/esm/internal/stm/entry.js +42 -0
- package/dist/esm/internal/stm/entry.js.map +1 -0
- package/dist/esm/internal/stm/journal.js +89 -0
- package/dist/esm/internal/stm/journal.js.map +1 -0
- package/dist/esm/internal/stm/opCodes/stm.js +25 -0
- package/dist/esm/internal/stm/opCodes/stm.js.map +1 -0
- package/dist/esm/internal/stm/opCodes/stmState.js +7 -0
- package/dist/esm/internal/stm/opCodes/stmState.js.map +1 -0
- package/dist/esm/internal/stm/opCodes/strategy.js +7 -0
- package/dist/esm/internal/stm/opCodes/strategy.js.map +1 -0
- package/dist/esm/internal/stm/opCodes/tExit.js +11 -0
- package/dist/esm/internal/stm/opCodes/tExit.js.map +1 -0
- package/dist/esm/internal/stm/opCodes/tryCommit.js +5 -0
- package/dist/esm/internal/stm/opCodes/tryCommit.js.map +1 -0
- package/dist/esm/internal/stm/stm.js +478 -0
- package/dist/esm/internal/stm/stm.js.map +1 -0
- package/dist/esm/internal/stm/stmState.js +89 -0
- package/dist/esm/internal/stm/stmState.js.map +1 -0
- package/dist/esm/internal/stm/tArray.js +243 -0
- package/dist/esm/internal/stm/tArray.js.map +1 -0
- package/dist/esm/internal/stm/tDeferred.js +41 -0
- package/dist/esm/internal/stm/tDeferred.js.map +1 -0
- package/dist/esm/internal/stm/tExit.js +101 -0
- package/dist/esm/internal/stm/tExit.js.map +1 -0
- package/dist/esm/internal/stm/tMap.js +430 -0
- package/dist/esm/internal/stm/tMap.js.map +1 -0
- package/dist/esm/internal/stm/tPriorityQueue.js +143 -0
- package/dist/esm/internal/stm/tPriorityQueue.js.map +1 -0
- package/dist/esm/internal/stm/tPubSub.js +376 -0
- package/dist/esm/internal/stm/tPubSub.js.map +1 -0
- package/dist/esm/internal/stm/tQueue.js +258 -0
- package/dist/esm/internal/stm/tQueue.js.map +1 -0
- package/dist/esm/internal/stm/tRandom.js +82 -0
- package/dist/esm/internal/stm/tRandom.js.map +1 -0
- package/dist/esm/internal/stm/tReentrantLock.js +192 -0
- package/dist/esm/internal/stm/tReentrantLock.js.map +1 -0
- package/dist/esm/internal/stm/tRef.js +100 -0
- package/dist/esm/internal/stm/tRef.js.map +1 -0
- package/dist/esm/internal/stm/tSemaphore.js +59 -0
- package/dist/esm/internal/stm/tSemaphore.js.map +1 -0
- package/dist/esm/internal/stm/tSet.js +88 -0
- package/dist/esm/internal/stm/tSet.js.map +1 -0
- package/dist/esm/internal/stm/tSubscriptionRef.js +166 -0
- package/dist/esm/internal/stm/tSubscriptionRef.js.map +1 -0
- package/dist/esm/internal/stm/tryCommit.js +16 -0
- package/dist/esm/internal/stm/tryCommit.js.map +1 -0
- package/dist/esm/internal/stm/txnId.js +11 -0
- package/dist/esm/internal/stm/txnId.js.map +1 -0
- package/dist/esm/internal/stm/versioned.js +8 -0
- package/dist/esm/internal/stm/versioned.js.map +1 -0
- package/dist/esm/internal/stream/debounceState.js +21 -0
- package/dist/esm/internal/stream/debounceState.js.map +1 -0
- package/dist/esm/internal/stream/emit.js +120 -0
- package/dist/esm/internal/stream/emit.js.map +1 -0
- package/dist/esm/internal/stream/haltStrategy.js +63 -0
- package/dist/esm/internal/stream/haltStrategy.js.map +1 -0
- package/dist/esm/internal/stream/handoff.js +55 -0
- package/dist/esm/internal/stream/handoff.js.map +1 -0
- package/dist/esm/internal/stream/handoffSignal.js +22 -0
- package/dist/esm/internal/stream/handoffSignal.js.map +1 -0
- package/dist/esm/internal/stream/pull.js +20 -0
- package/dist/esm/internal/stream/pull.js.map +1 -0
- package/dist/esm/internal/stream/sinkEndReason.js +13 -0
- package/dist/esm/internal/stream/sinkEndReason.js.map +1 -0
- package/dist/esm/internal/stream/zipAllState.js +33 -0
- package/dist/esm/internal/stream/zipAllState.js.map +1 -0
- package/dist/esm/internal/stream/zipChunksState.js +21 -0
- package/dist/esm/internal/stream/zipChunksState.js.map +1 -0
- package/dist/esm/internal/stream.js +2867 -0
- package/dist/esm/internal/stream.js.map +1 -0
- package/dist/esm/internal/string-utils.js +77 -0
- package/dist/esm/internal/string-utils.js.map +1 -0
- package/dist/esm/internal/subscriptionRef.js +63 -0
- package/dist/esm/internal/subscriptionRef.js.map +1 -0
- package/dist/esm/internal/supervisor/patch.js +125 -0
- package/dist/esm/internal/supervisor/patch.js.map +1 -0
- package/dist/esm/internal/supervisor.js +207 -0
- package/dist/esm/internal/supervisor.js.map +1 -0
- package/dist/esm/internal/synchronizedRef.js +44 -0
- package/dist/esm/internal/synchronizedRef.js.map +1 -0
- package/dist/esm/internal/take.js +108 -0
- package/dist/esm/internal/take.js.map +1 -0
- package/dist/esm/internal/testing/sleep.js +7 -0
- package/dist/esm/internal/testing/sleep.js.map +1 -0
- package/dist/esm/internal/testing/suspendedWarningData.js +48 -0
- package/dist/esm/internal/testing/suspendedWarningData.js.map +1 -0
- package/dist/esm/internal/testing/warningData.js +49 -0
- package/dist/esm/internal/testing/warningData.js.map +1 -0
- package/dist/esm/internal/tracer.js +122 -0
- package/dist/esm/internal/tracer.js.map +1 -0
- package/dist/esm/internal/trie.js +547 -0
- package/dist/esm/internal/trie.js.map +1 -0
- package/dist/esm/internal/version.js +6 -0
- package/dist/esm/internal/version.js.map +1 -0
- package/dist/esm/package.json +4 -0
- package/index/package.json +6 -0
- package/package.json +1471 -0
- package/src/Arbitrary.ts +1101 -0
- package/src/Array.ts +6854 -0
- package/src/BigDecimal.ts +2037 -0
- package/src/BigInt.ts +1139 -0
- package/src/Boolean.ts +560 -0
- package/src/Brand.ts +360 -0
- package/src/Cache.ts +281 -0
- package/src/Cause.ts +2049 -0
- package/src/Channel.ts +3051 -0
- package/src/ChildExecutorDecision.ts +158 -0
- package/src/Chunk.ts +2350 -0
- package/src/Clock.ts +111 -0
- package/src/Config.ts +743 -0
- package/src/ConfigError.ts +286 -0
- package/src/ConfigProvider.ts +421 -0
- package/src/ConfigProviderPathPatch.ts +132 -0
- package/src/Console.ts +255 -0
- package/src/Context.ts +867 -0
- package/src/Cron.ts +718 -0
- package/src/Data.ts +765 -0
- package/src/DateTime.ts +2715 -0
- package/src/DefaultServices.ts +34 -0
- package/src/Deferred.ts +471 -0
- package/src/Differ.ts +512 -0
- package/src/Duration.ts +1140 -0
- package/src/Effect.ts +29096 -0
- package/src/Effectable.ts +107 -0
- package/src/Either.ts +1723 -0
- package/src/Encoding.ts +195 -0
- package/src/Equal.ts +98 -0
- package/src/Equivalence.ts +259 -0
- package/src/ExecutionPlan.ts +308 -0
- package/src/ExecutionStrategy.ts +138 -0
- package/src/Exit.ts +717 -0
- package/src/FastCheck.ts +9 -0
- package/src/Fiber.ts +926 -0
- package/src/FiberHandle.ts +582 -0
- package/src/FiberId.ts +219 -0
- package/src/FiberMap.ts +779 -0
- package/src/FiberRef.ts +511 -0
- package/src/FiberRefs.ts +288 -0
- package/src/FiberRefsPatch.ts +139 -0
- package/src/FiberSet.ts +529 -0
- package/src/FiberStatus.ts +108 -0
- package/src/Function.ts +1378 -0
- package/src/GlobalValue.ts +53 -0
- package/src/Graph.ts +3764 -0
- package/src/GroupBy.ts +141 -0
- package/src/HKT.ts +45 -0
- package/src/Hash.ts +203 -0
- package/src/HashMap.ts +919 -0
- package/src/HashRing.ts +387 -0
- package/src/HashSet.ts +2346 -0
- package/src/Inspectable.ts +287 -0
- package/src/Iterable.ts +1606 -0
- package/src/JSONSchema.ts +1044 -0
- package/src/KeyedPool.ts +201 -0
- package/src/Layer.ts +1671 -0
- package/src/LayerMap.ts +436 -0
- package/src/List.ts +1469 -0
- package/src/LogLevel.ts +387 -0
- package/src/LogSpan.ts +25 -0
- package/src/Logger.ts +863 -0
- package/src/Mailbox.ts +298 -0
- package/src/ManagedRuntime.ts +180 -0
- package/src/Match.ts +1493 -0
- package/src/MergeDecision.ts +103 -0
- package/src/MergeState.ts +180 -0
- package/src/MergeStrategy.ts +124 -0
- package/src/Metric.ts +1165 -0
- package/src/MetricBoundaries.ts +69 -0
- package/src/MetricHook.ts +175 -0
- package/src/MetricKey.ts +266 -0
- package/src/MetricKeyType.ts +262 -0
- package/src/MetricLabel.ts +47 -0
- package/src/MetricPair.ts +71 -0
- package/src/MetricPolling.ts +182 -0
- package/src/MetricRegistry.ts +48 -0
- package/src/MetricState.ts +273 -0
- package/src/Micro.ts +5556 -0
- package/src/ModuleVersion.ts +18 -0
- package/src/MutableHashMap.ts +518 -0
- package/src/MutableHashSet.ts +706 -0
- package/src/MutableList.ts +333 -0
- package/src/MutableQueue.ts +289 -0
- package/src/MutableRef.ts +258 -0
- package/src/NonEmptyIterable.ts +32 -0
- package/src/Number.ts +1440 -0
- package/src/Option.ts +4028 -0
- package/src/Order.ts +397 -0
- package/src/Ordering.ts +173 -0
- package/src/ParseResult.ts +2068 -0
- package/src/PartitionedSemaphore.ts +200 -0
- package/src/Pipeable.ts +574 -0
- package/src/Pool.ts +220 -0
- package/src/Predicate.ts +2344 -0
- package/src/Pretty.ts +205 -0
- package/src/PrimaryKey.ts +23 -0
- package/src/PubSub.ts +210 -0
- package/src/Queue.ts +748 -0
- package/src/Random.ts +204 -0
- package/src/RateLimiter.ts +138 -0
- package/src/RcMap.ts +245 -0
- package/src/RcRef.ts +122 -0
- package/src/Readable.ts +104 -0
- package/src/Record.ts +1990 -0
- package/src/RedBlackTree.ts +725 -0
- package/src/Redacted.ts +144 -0
- package/src/Ref.ts +268 -0
- package/src/RegExp.ts +38 -0
- package/src/Reloadable.ts +127 -0
- package/src/Request.ts +418 -0
- package/src/RequestBlock.ts +118 -0
- package/src/RequestResolver.ts +495 -0
- package/src/Resource.ts +119 -0
- package/src/Runtime.ts +631 -0
- package/src/RuntimeFlags.ts +436 -0
- package/src/RuntimeFlagsPatch.ts +295 -0
- package/src/STM.ts +3091 -0
- package/src/Schedule.ts +3740 -0
- package/src/ScheduleDecision.ts +62 -0
- package/src/ScheduleInterval.ts +219 -0
- package/src/ScheduleIntervals.ts +172 -0
- package/src/Scheduler.ts +364 -0
- package/src/Schema.ts +11443 -0
- package/src/SchemaAST.ts +3055 -0
- package/src/Scope.ts +240 -0
- package/src/ScopedCache.ts +151 -0
- package/src/ScopedRef.ts +139 -0
- package/src/Secret.ts +88 -0
- package/src/SingleProducerAsyncInput.ts +67 -0
- package/src/Sink.ts +1877 -0
- package/src/SortedMap.ts +361 -0
- package/src/SortedSet.ts +530 -0
- package/src/Stream.ts +11561 -0
- package/src/StreamEmit.ts +136 -0
- package/src/StreamHaltStrategy.ts +140 -0
- package/src/Streamable.ts +45 -0
- package/src/String.ts +1026 -0
- package/src/Struct.ts +335 -0
- package/src/Subscribable.ts +114 -0
- package/src/SubscriptionRef.ts +444 -0
- package/src/Supervisor.ts +240 -0
- package/src/Symbol.ts +29 -0
- package/src/SynchronizedRef.ts +429 -0
- package/src/TArray.ts +922 -0
- package/src/TDeferred.ts +124 -0
- package/src/TMap.ts +875 -0
- package/src/TPriorityQueue.ts +283 -0
- package/src/TPubSub.ts +228 -0
- package/src/TQueue.ts +540 -0
- package/src/TRandom.ts +129 -0
- package/src/TReentrantLock.ts +260 -0
- package/src/TRef.ts +266 -0
- package/src/TSemaphore.ts +169 -0
- package/src/TSet.ts +633 -0
- package/src/TSubscriptionRef.ts +284 -0
- package/src/Take.ts +309 -0
- package/src/TestAnnotation.ts +158 -0
- package/src/TestAnnotationMap.ts +163 -0
- package/src/TestAnnotations.ts +117 -0
- package/src/TestClock.ts +562 -0
- package/src/TestConfig.ts +47 -0
- package/src/TestContext.ts +36 -0
- package/src/TestLive.ts +53 -0
- package/src/TestServices.ts +454 -0
- package/src/TestSized.ts +55 -0
- package/src/Tracer.ts +182 -0
- package/src/Trie.ts +1860 -0
- package/src/Tuple.ts +483 -0
- package/src/Types.ts +361 -0
- package/src/Unify.ts +127 -0
- package/src/UpstreamPullRequest.ts +129 -0
- package/src/UpstreamPullStrategy.ts +133 -0
- package/src/Utils.ts +809 -0
- package/src/index.ts +1561 -0
- package/src/internal/array.ts +8 -0
- package/src/internal/blockedRequests.ts +520 -0
- package/src/internal/cache.ts +733 -0
- package/src/internal/cause.ts +1050 -0
- package/src/internal/channel/channelExecutor.ts +1200 -0
- package/src/internal/channel/channelState.ts +134 -0
- package/src/internal/channel/childExecutorDecision.ts +96 -0
- package/src/internal/channel/continuation.ts +200 -0
- package/src/internal/channel/mergeDecision.ts +113 -0
- package/src/internal/channel/mergeState.ts +120 -0
- package/src/internal/channel/mergeStrategy.ts +72 -0
- package/src/internal/channel/singleProducerAsyncInput.ts +259 -0
- package/src/internal/channel/subexecutor.ts +229 -0
- package/src/internal/channel/upstreamPullRequest.ts +84 -0
- package/src/internal/channel/upstreamPullStrategy.ts +87 -0
- package/src/internal/channel.ts +2603 -0
- package/src/internal/clock.ts +95 -0
- package/src/internal/completedRequestMap.ts +9 -0
- package/src/internal/concurrency.ts +54 -0
- package/src/internal/config.ts +716 -0
- package/src/internal/configError.ts +304 -0
- package/src/internal/configProvider/pathPatch.ts +97 -0
- package/src/internal/configProvider.ts +799 -0
- package/src/internal/console.ts +153 -0
- package/src/internal/context.ts +337 -0
- package/src/internal/core-effect.ts +2293 -0
- package/src/internal/core-stream.ts +998 -0
- package/src/internal/core.ts +3166 -0
- package/src/internal/data.ts +36 -0
- package/src/internal/dataSource.ts +327 -0
- package/src/internal/dateTime.ts +1277 -0
- package/src/internal/defaultServices/console.ts +100 -0
- package/src/internal/defaultServices.ts +163 -0
- package/src/internal/deferred.ts +46 -0
- package/src/internal/differ/chunkPatch.ts +211 -0
- package/src/internal/differ/contextPatch.ts +232 -0
- package/src/internal/differ/hashMapPatch.ts +220 -0
- package/src/internal/differ/hashSetPatch.ts +176 -0
- package/src/internal/differ/orPatch.ts +311 -0
- package/src/internal/differ/readonlyArrayPatch.ts +210 -0
- package/src/internal/differ.ts +200 -0
- package/src/internal/doNotation.ts +80 -0
- package/src/internal/effect/circular.ts +903 -0
- package/src/internal/effectable.ts +131 -0
- package/src/internal/either.ts +110 -0
- package/src/internal/encoding/base64.ts +286 -0
- package/src/internal/encoding/base64Url.ts +29 -0
- package/src/internal/encoding/common.ts +51 -0
- package/src/internal/encoding/hex.ts +315 -0
- package/src/internal/errors.ts +7 -0
- package/src/internal/executionPlan.ts +114 -0
- package/src/internal/executionStrategy.ts +74 -0
- package/src/internal/fiber.ts +388 -0
- package/src/internal/fiberId.ts +267 -0
- package/src/internal/fiberMessage.ts +82 -0
- package/src/internal/fiberRefs/patch.ts +144 -0
- package/src/internal/fiberRefs.ts +297 -0
- package/src/internal/fiberRuntime.ts +3859 -0
- package/src/internal/fiberScope.ts +71 -0
- package/src/internal/fiberStatus.ts +119 -0
- package/src/internal/groupBy.ts +530 -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 +391 -0
- package/src/internal/hashMap.ts +586 -0
- package/src/internal/hashSet.ts +323 -0
- package/src/internal/keyedPool.ts +244 -0
- package/src/internal/layer/circular.ts +214 -0
- package/src/internal/layer.ts +1483 -0
- package/src/internal/logSpan.ts +20 -0
- package/src/internal/logger-circular.ts +24 -0
- package/src/internal/logger.ts +485 -0
- package/src/internal/mailbox.ts +561 -0
- package/src/internal/managedRuntime/circular.ts +6 -0
- package/src/internal/managedRuntime.ts +137 -0
- package/src/internal/matcher.ts +652 -0
- package/src/internal/metric/boundaries.ts +75 -0
- package/src/internal/metric/hook.ts +483 -0
- package/src/internal/metric/key.ts +167 -0
- package/src/internal/metric/keyType.ts +238 -0
- package/src/internal/metric/label.ts +41 -0
- package/src/internal/metric/pair.ts +48 -0
- package/src/internal/metric/polling.ts +149 -0
- package/src/internal/metric/registry.ts +187 -0
- package/src/internal/metric/state.ts +290 -0
- package/src/internal/metric.ts +577 -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 +89 -0
- package/src/internal/opCodes/layer.ts +59 -0
- package/src/internal/opCodes/streamHaltStrategy.ts +23 -0
- package/src/internal/option.ts +80 -0
- package/src/internal/pool.ts +432 -0
- package/src/internal/pubsub.ts +1762 -0
- package/src/internal/query.ts +204 -0
- package/src/internal/queue.ts +766 -0
- package/src/internal/random.ts +161 -0
- package/src/internal/rateLimiter.ts +93 -0
- package/src/internal/rcMap.ts +285 -0
- package/src/internal/rcRef.ts +192 -0
- package/src/internal/redBlackTree/iterator.ts +200 -0
- package/src/internal/redBlackTree/node.ts +68 -0
- package/src/internal/redBlackTree.ts +1245 -0
- package/src/internal/redacted.ts +73 -0
- package/src/internal/ref.ts +171 -0
- package/src/internal/reloadable.ts +140 -0
- package/src/internal/request.ts +177 -0
- package/src/internal/resource.ts +76 -0
- package/src/internal/ringBuffer.ts +68 -0
- package/src/internal/runtime.ts +558 -0
- package/src/internal/runtimeFlags.ts +178 -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 +180 -0
- package/src/internal/schedule.ts +2199 -0
- package/src/internal/schema/errors.ts +191 -0
- package/src/internal/schema/schemaId.ts +106 -0
- package/src/internal/schema/util.ts +50 -0
- package/src/internal/scopedCache.ts +644 -0
- package/src/internal/scopedRef.ts +118 -0
- package/src/internal/secret.ts +89 -0
- package/src/internal/singleShotGen.ts +35 -0
- package/src/internal/sink.ts +2120 -0
- package/src/internal/stack.ts +10 -0
- package/src/internal/stm/core.ts +817 -0
- package/src/internal/stm/entry.ts +59 -0
- package/src/internal/stm/journal.ts +123 -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.ts +1453 -0
- package/src/internal/stm/stmState.ts +136 -0
- package/src/internal/stm/tArray.ts +550 -0
- package/src/internal/stm/tDeferred.ts +81 -0
- package/src/internal/stm/tExit.ts +190 -0
- package/src/internal/stm/tMap.ts +824 -0
- package/src/internal/stm/tPriorityQueue.ts +267 -0
- package/src/internal/stm/tPubSub.ts +551 -0
- package/src/internal/stm/tQueue.ts +393 -0
- package/src/internal/stm/tRandom.ts +140 -0
- package/src/internal/stm/tReentrantLock.ts +352 -0
- package/src/internal/stm/tRef.ts +195 -0
- package/src/internal/stm/tSemaphore.ts +113 -0
- package/src/internal/stm/tSet.ts +259 -0
- package/src/internal/stm/tSubscriptionRef.ts +286 -0
- package/src/internal/stm/tryCommit.ts +34 -0
- package/src/internal/stm/txnId.ts +14 -0
- package/src/internal/stm/versioned.ts +4 -0
- package/src/internal/stream/debounceState.ts +57 -0
- package/src/internal/stream/emit.ts +123 -0
- package/src/internal/stream/haltStrategy.ts +94 -0
- package/src/internal/stream/handoff.ts +187 -0
- package/src/internal/stream/handoffSignal.ts +59 -0
- package/src/internal/stream/pull.ts +34 -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 +8802 -0
- package/src/internal/string-utils.ts +107 -0
- package/src/internal/subscriptionRef.ts +138 -0
- package/src/internal/supervisor/patch.ts +190 -0
- package/src/internal/supervisor.ts +303 -0
- package/src/internal/synchronizedRef.ts +114 -0
- package/src/internal/take.ts +199 -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/tracer.ts +150 -0
- package/src/internal/trie.ts +722 -0
- package/src/internal/version.ts +7 -0
|
@@ -0,0 +1,2528 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A lightweight alternative to the `Effect` data type, with a subset of the functionality.
|
|
3
|
+
*
|
|
4
|
+
* @since 3.4.0
|
|
5
|
+
* @experimental
|
|
6
|
+
*/
|
|
7
|
+
import * as Arr from "./Array.js";
|
|
8
|
+
import * as Context from "./Context.js";
|
|
9
|
+
import * as Effectable from "./Effectable.js";
|
|
10
|
+
import * as Either from "./Either.js";
|
|
11
|
+
import * as Equal from "./Equal.js";
|
|
12
|
+
import { constTrue, constVoid, dual, identity } from "./Function.js";
|
|
13
|
+
import { globalValue } from "./GlobalValue.js";
|
|
14
|
+
import * as Hash from "./Hash.js";
|
|
15
|
+
import { format, NodeInspectSymbol, toStringUnknown } from "./Inspectable.js";
|
|
16
|
+
import * as InternalContext from "./internal/context.js";
|
|
17
|
+
import * as doNotation from "./internal/doNotation.js";
|
|
18
|
+
import { StructuralPrototype } from "./internal/effectable.js";
|
|
19
|
+
import * as Option from "./Option.js";
|
|
20
|
+
import { pipeArguments } from "./Pipeable.js";
|
|
21
|
+
import { hasProperty, isIterable, isTagged } from "./Predicate.js";
|
|
22
|
+
import { SingleShotGen, YieldWrap, yieldWrapGet } from "./Utils.js";
|
|
23
|
+
/**
|
|
24
|
+
* @since 3.4.0
|
|
25
|
+
* @experimental
|
|
26
|
+
* @category type ids
|
|
27
|
+
*/
|
|
28
|
+
export const TypeId = /*#__PURE__*/Symbol.for("effect/Micro");
|
|
29
|
+
/**
|
|
30
|
+
* @since 3.4.0
|
|
31
|
+
* @experimental
|
|
32
|
+
* @category MicroExit
|
|
33
|
+
*/
|
|
34
|
+
export const MicroExitTypeId = /*#__PURE__*/Symbol.for("effect/Micro/MicroExit");
|
|
35
|
+
/**
|
|
36
|
+
* @since 3.4.0
|
|
37
|
+
* @experimental
|
|
38
|
+
* @category guards
|
|
39
|
+
*/
|
|
40
|
+
export const isMicro = u => typeof u === "object" && u !== null && TypeId in u;
|
|
41
|
+
// ----------------------------------------------------------------------------
|
|
42
|
+
// MicroCause
|
|
43
|
+
// ----------------------------------------------------------------------------
|
|
44
|
+
/**
|
|
45
|
+
* @since 3.4.6
|
|
46
|
+
* @experimental
|
|
47
|
+
* @category MicroCause
|
|
48
|
+
*/
|
|
49
|
+
export const MicroCauseTypeId = /*#__PURE__*/Symbol.for("effect/Micro/MicroCause");
|
|
50
|
+
/**
|
|
51
|
+
* @since 3.6.6
|
|
52
|
+
* @experimental
|
|
53
|
+
* @category guards
|
|
54
|
+
*/
|
|
55
|
+
export const isMicroCause = self => hasProperty(self, MicroCauseTypeId);
|
|
56
|
+
const microCauseVariance = {
|
|
57
|
+
_E: identity
|
|
58
|
+
};
|
|
59
|
+
class MicroCauseImpl extends globalThis.Error {
|
|
60
|
+
_tag;
|
|
61
|
+
traces;
|
|
62
|
+
[MicroCauseTypeId];
|
|
63
|
+
constructor(_tag, originalError, traces) {
|
|
64
|
+
const causeName = `MicroCause.${_tag}`;
|
|
65
|
+
let name;
|
|
66
|
+
let message;
|
|
67
|
+
let stack;
|
|
68
|
+
if (originalError instanceof globalThis.Error) {
|
|
69
|
+
name = `(${causeName}) ${originalError.name}`;
|
|
70
|
+
message = originalError.message;
|
|
71
|
+
const messageLines = message.split("\n").length;
|
|
72
|
+
stack = originalError.stack ? `(${causeName}) ${originalError.stack.split("\n").slice(0, messageLines + 3).join("\n")}` : `${name}: ${message}`;
|
|
73
|
+
} else {
|
|
74
|
+
name = causeName;
|
|
75
|
+
message = toStringUnknown(originalError, 0);
|
|
76
|
+
stack = `${name}: ${message}`;
|
|
77
|
+
}
|
|
78
|
+
if (traces.length > 0) {
|
|
79
|
+
stack += `\n ${traces.join("\n ")}`;
|
|
80
|
+
}
|
|
81
|
+
super(message);
|
|
82
|
+
this._tag = _tag;
|
|
83
|
+
this.traces = traces;
|
|
84
|
+
this[MicroCauseTypeId] = microCauseVariance;
|
|
85
|
+
this.name = name;
|
|
86
|
+
this.stack = stack;
|
|
87
|
+
}
|
|
88
|
+
pipe() {
|
|
89
|
+
return pipeArguments(this, arguments);
|
|
90
|
+
}
|
|
91
|
+
toString() {
|
|
92
|
+
return this.stack;
|
|
93
|
+
}
|
|
94
|
+
[NodeInspectSymbol]() {
|
|
95
|
+
return this.stack;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
class Fail extends MicroCauseImpl {
|
|
99
|
+
error;
|
|
100
|
+
constructor(error, traces = []) {
|
|
101
|
+
super("Fail", error, traces);
|
|
102
|
+
this.error = error;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* @since 3.4.6
|
|
107
|
+
* @experimental
|
|
108
|
+
* @category MicroCause
|
|
109
|
+
*/
|
|
110
|
+
export const causeFail = (error, traces = []) => new Fail(error, traces);
|
|
111
|
+
class Die extends MicroCauseImpl {
|
|
112
|
+
defect;
|
|
113
|
+
constructor(defect, traces = []) {
|
|
114
|
+
super("Die", defect, traces);
|
|
115
|
+
this.defect = defect;
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* @since 3.4.6
|
|
120
|
+
* @experimental
|
|
121
|
+
* @category MicroCause
|
|
122
|
+
*/
|
|
123
|
+
export const causeDie = (defect, traces = []) => new Die(defect, traces);
|
|
124
|
+
class Interrupt extends MicroCauseImpl {
|
|
125
|
+
constructor(traces = []) {
|
|
126
|
+
super("Interrupt", "interrupted", traces);
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* @since 3.4.6
|
|
131
|
+
* @experimental
|
|
132
|
+
* @category MicroCause
|
|
133
|
+
*/
|
|
134
|
+
export const causeInterrupt = (traces = []) => new Interrupt(traces);
|
|
135
|
+
/**
|
|
136
|
+
* @since 3.4.6
|
|
137
|
+
* @experimental
|
|
138
|
+
* @category MicroCause
|
|
139
|
+
*/
|
|
140
|
+
export const causeIsFail = self => self._tag === "Fail";
|
|
141
|
+
/**
|
|
142
|
+
* @since 3.4.6
|
|
143
|
+
* @experimental
|
|
144
|
+
* @category MicroCause
|
|
145
|
+
*/
|
|
146
|
+
export const causeIsDie = self => self._tag === "Die";
|
|
147
|
+
/**
|
|
148
|
+
* @since 3.4.6
|
|
149
|
+
* @experimental
|
|
150
|
+
* @category MicroCause
|
|
151
|
+
*/
|
|
152
|
+
export const causeIsInterrupt = self => self._tag === "Interrupt";
|
|
153
|
+
/**
|
|
154
|
+
* @since 3.4.6
|
|
155
|
+
* @experimental
|
|
156
|
+
* @category MicroCause
|
|
157
|
+
*/
|
|
158
|
+
export const causeSquash = self => self._tag === "Fail" ? self.error : self._tag === "Die" ? self.defect : self;
|
|
159
|
+
/**
|
|
160
|
+
* @since 3.4.6
|
|
161
|
+
* @experimental
|
|
162
|
+
* @category MicroCause
|
|
163
|
+
*/
|
|
164
|
+
export const causeWithTrace = /*#__PURE__*/dual(2, (self, trace) => {
|
|
165
|
+
const traces = [...self.traces, trace];
|
|
166
|
+
switch (self._tag) {
|
|
167
|
+
case "Die":
|
|
168
|
+
return causeDie(self.defect, traces);
|
|
169
|
+
case "Interrupt":
|
|
170
|
+
return causeInterrupt(traces);
|
|
171
|
+
case "Fail":
|
|
172
|
+
return causeFail(self.error, traces);
|
|
173
|
+
}
|
|
174
|
+
});
|
|
175
|
+
// ----------------------------------------------------------------------------
|
|
176
|
+
// MicroFiber
|
|
177
|
+
// ----------------------------------------------------------------------------
|
|
178
|
+
/**
|
|
179
|
+
* @since 3.11.0
|
|
180
|
+
* @experimental
|
|
181
|
+
* @category MicroFiber
|
|
182
|
+
*/
|
|
183
|
+
export const MicroFiberTypeId = /*#__PURE__*/Symbol.for("effect/Micro/MicroFiber");
|
|
184
|
+
const fiberVariance = {
|
|
185
|
+
_A: identity,
|
|
186
|
+
_E: identity
|
|
187
|
+
};
|
|
188
|
+
class MicroFiberImpl {
|
|
189
|
+
context;
|
|
190
|
+
interruptible;
|
|
191
|
+
[MicroFiberTypeId];
|
|
192
|
+
_stack = [];
|
|
193
|
+
_observers = [];
|
|
194
|
+
_exit;
|
|
195
|
+
_children;
|
|
196
|
+
currentOpCount = 0;
|
|
197
|
+
constructor(context, interruptible = true) {
|
|
198
|
+
this.context = context;
|
|
199
|
+
this.interruptible = interruptible;
|
|
200
|
+
this[MicroFiberTypeId] = fiberVariance;
|
|
201
|
+
}
|
|
202
|
+
getRef(ref) {
|
|
203
|
+
return InternalContext.unsafeGetReference(this.context, ref);
|
|
204
|
+
}
|
|
205
|
+
addObserver(cb) {
|
|
206
|
+
if (this._exit) {
|
|
207
|
+
cb(this._exit);
|
|
208
|
+
return constVoid;
|
|
209
|
+
}
|
|
210
|
+
this._observers.push(cb);
|
|
211
|
+
return () => {
|
|
212
|
+
const index = this._observers.indexOf(cb);
|
|
213
|
+
if (index >= 0) {
|
|
214
|
+
this._observers.splice(index, 1);
|
|
215
|
+
}
|
|
216
|
+
};
|
|
217
|
+
}
|
|
218
|
+
_interrupted = false;
|
|
219
|
+
unsafeInterrupt() {
|
|
220
|
+
if (this._exit) {
|
|
221
|
+
return;
|
|
222
|
+
}
|
|
223
|
+
this._interrupted = true;
|
|
224
|
+
if (this.interruptible) {
|
|
225
|
+
this.evaluate(exitInterrupt);
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
unsafePoll() {
|
|
229
|
+
return this._exit;
|
|
230
|
+
}
|
|
231
|
+
evaluate(effect) {
|
|
232
|
+
if (this._exit) {
|
|
233
|
+
return;
|
|
234
|
+
} else if (this._yielded !== undefined) {
|
|
235
|
+
const yielded = this._yielded;
|
|
236
|
+
this._yielded = undefined;
|
|
237
|
+
yielded();
|
|
238
|
+
}
|
|
239
|
+
const exit = this.runLoop(effect);
|
|
240
|
+
if (exit === Yield) {
|
|
241
|
+
return;
|
|
242
|
+
}
|
|
243
|
+
// the interruptChildren middlware is added in Micro.fork, so it can be
|
|
244
|
+
// tree-shaken if not used
|
|
245
|
+
const interruptChildren = fiberMiddleware.interruptChildren && fiberMiddleware.interruptChildren(this);
|
|
246
|
+
if (interruptChildren !== undefined) {
|
|
247
|
+
return this.evaluate(flatMap(interruptChildren, () => exit));
|
|
248
|
+
}
|
|
249
|
+
this._exit = exit;
|
|
250
|
+
for (let i = 0; i < this._observers.length; i++) {
|
|
251
|
+
this._observers[i](exit);
|
|
252
|
+
}
|
|
253
|
+
this._observers.length = 0;
|
|
254
|
+
}
|
|
255
|
+
runLoop(effect) {
|
|
256
|
+
let yielding = false;
|
|
257
|
+
let current = effect;
|
|
258
|
+
this.currentOpCount = 0;
|
|
259
|
+
try {
|
|
260
|
+
while (true) {
|
|
261
|
+
this.currentOpCount++;
|
|
262
|
+
if (!yielding && this.getRef(CurrentScheduler).shouldYield(this)) {
|
|
263
|
+
yielding = true;
|
|
264
|
+
const prev = current;
|
|
265
|
+
current = flatMap(yieldNow, () => prev);
|
|
266
|
+
}
|
|
267
|
+
current = current[evaluate](this);
|
|
268
|
+
if (current === Yield) {
|
|
269
|
+
const yielded = this._yielded;
|
|
270
|
+
if (MicroExitTypeId in yielded) {
|
|
271
|
+
this._yielded = undefined;
|
|
272
|
+
return yielded;
|
|
273
|
+
}
|
|
274
|
+
return Yield;
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
} catch (error) {
|
|
278
|
+
if (!hasProperty(current, evaluate)) {
|
|
279
|
+
return exitDie(`MicroFiber.runLoop: Not a valid effect: ${String(current)}`);
|
|
280
|
+
}
|
|
281
|
+
return exitDie(error);
|
|
282
|
+
}
|
|
283
|
+
}
|
|
284
|
+
getCont(symbol) {
|
|
285
|
+
while (true) {
|
|
286
|
+
const op = this._stack.pop();
|
|
287
|
+
if (!op) return undefined;
|
|
288
|
+
const cont = op[ensureCont] && op[ensureCont](this);
|
|
289
|
+
if (cont) return {
|
|
290
|
+
[symbol]: cont
|
|
291
|
+
};
|
|
292
|
+
if (op[symbol]) return op;
|
|
293
|
+
}
|
|
294
|
+
}
|
|
295
|
+
// cancel the yielded operation, or for the yielded exit value
|
|
296
|
+
_yielded = undefined;
|
|
297
|
+
yieldWith(value) {
|
|
298
|
+
this._yielded = value;
|
|
299
|
+
return Yield;
|
|
300
|
+
}
|
|
301
|
+
children() {
|
|
302
|
+
return this._children ??= new Set();
|
|
303
|
+
}
|
|
304
|
+
}
|
|
305
|
+
const fiberMiddleware = /*#__PURE__*/globalValue("effect/Micro/fiberMiddleware", () => ({
|
|
306
|
+
interruptChildren: undefined
|
|
307
|
+
}));
|
|
308
|
+
const fiberInterruptChildren = fiber => {
|
|
309
|
+
if (fiber._children === undefined || fiber._children.size === 0) {
|
|
310
|
+
return undefined;
|
|
311
|
+
}
|
|
312
|
+
return fiberInterruptAll(fiber._children);
|
|
313
|
+
};
|
|
314
|
+
/**
|
|
315
|
+
* @since 3.11.0
|
|
316
|
+
* @experimental
|
|
317
|
+
* @category MicroFiber
|
|
318
|
+
*/
|
|
319
|
+
export const fiberAwait = self => async(resume => sync(self.addObserver(exit => resume(succeed(exit)))));
|
|
320
|
+
/**
|
|
321
|
+
* @since 3.11.2
|
|
322
|
+
* @experimental
|
|
323
|
+
* @category MicroFiber
|
|
324
|
+
*/
|
|
325
|
+
export const fiberJoin = self => flatten(fiberAwait(self));
|
|
326
|
+
/**
|
|
327
|
+
* @since 3.11.0
|
|
328
|
+
* @experimental
|
|
329
|
+
* @category MicroFiber
|
|
330
|
+
*/
|
|
331
|
+
export const fiberInterrupt = self => suspend(() => {
|
|
332
|
+
self.unsafeInterrupt();
|
|
333
|
+
return asVoid(fiberAwait(self));
|
|
334
|
+
});
|
|
335
|
+
/**
|
|
336
|
+
* @since 3.11.0
|
|
337
|
+
* @experimental
|
|
338
|
+
* @category MicroFiber
|
|
339
|
+
*/
|
|
340
|
+
export const fiberInterruptAll = fibers => suspend(() => {
|
|
341
|
+
for (const fiber of fibers) fiber.unsafeInterrupt();
|
|
342
|
+
const iter = fibers[Symbol.iterator]();
|
|
343
|
+
const wait = suspend(() => {
|
|
344
|
+
let result = iter.next();
|
|
345
|
+
while (!result.done) {
|
|
346
|
+
if (result.value.unsafePoll()) {
|
|
347
|
+
result = iter.next();
|
|
348
|
+
continue;
|
|
349
|
+
}
|
|
350
|
+
const fiber = result.value;
|
|
351
|
+
return async(resume => {
|
|
352
|
+
fiber.addObserver(_ => {
|
|
353
|
+
resume(wait);
|
|
354
|
+
});
|
|
355
|
+
});
|
|
356
|
+
}
|
|
357
|
+
return exitVoid;
|
|
358
|
+
});
|
|
359
|
+
return wait;
|
|
360
|
+
});
|
|
361
|
+
const identifier = /*#__PURE__*/Symbol.for("effect/Micro/identifier");
|
|
362
|
+
const args = /*#__PURE__*/Symbol.for("effect/Micro/args");
|
|
363
|
+
const evaluate = /*#__PURE__*/Symbol.for("effect/Micro/evaluate");
|
|
364
|
+
const successCont = /*#__PURE__*/Symbol.for("effect/Micro/successCont");
|
|
365
|
+
const failureCont = /*#__PURE__*/Symbol.for("effect/Micro/failureCont");
|
|
366
|
+
const ensureCont = /*#__PURE__*/Symbol.for("effect/Micro/ensureCont");
|
|
367
|
+
const Yield = /*#__PURE__*/Symbol.for("effect/Micro/Yield");
|
|
368
|
+
const microVariance = {
|
|
369
|
+
_A: identity,
|
|
370
|
+
_E: identity,
|
|
371
|
+
_R: identity
|
|
372
|
+
};
|
|
373
|
+
const MicroProto = {
|
|
374
|
+
...Effectable.EffectPrototype,
|
|
375
|
+
_op: "Micro",
|
|
376
|
+
[TypeId]: microVariance,
|
|
377
|
+
pipe() {
|
|
378
|
+
return pipeArguments(this, arguments);
|
|
379
|
+
},
|
|
380
|
+
[Symbol.iterator]() {
|
|
381
|
+
return new SingleShotGen(new YieldWrap(this));
|
|
382
|
+
},
|
|
383
|
+
toJSON() {
|
|
384
|
+
return {
|
|
385
|
+
_id: "Micro",
|
|
386
|
+
op: this[identifier],
|
|
387
|
+
...(args in this ? {
|
|
388
|
+
args: this[args]
|
|
389
|
+
} : undefined)
|
|
390
|
+
};
|
|
391
|
+
},
|
|
392
|
+
toString() {
|
|
393
|
+
return format(this);
|
|
394
|
+
},
|
|
395
|
+
[NodeInspectSymbol]() {
|
|
396
|
+
return format(this);
|
|
397
|
+
}
|
|
398
|
+
};
|
|
399
|
+
function defaultEvaluate(_fiber) {
|
|
400
|
+
return exitDie(`Micro.evaluate: Not implemented`);
|
|
401
|
+
}
|
|
402
|
+
const makePrimitiveProto = options => ({
|
|
403
|
+
...MicroProto,
|
|
404
|
+
[identifier]: options.op,
|
|
405
|
+
[evaluate]: options.eval ?? defaultEvaluate,
|
|
406
|
+
[successCont]: options.contA,
|
|
407
|
+
[failureCont]: options.contE,
|
|
408
|
+
[ensureCont]: options.ensure
|
|
409
|
+
});
|
|
410
|
+
const makePrimitive = options => {
|
|
411
|
+
const Proto = makePrimitiveProto(options);
|
|
412
|
+
return function () {
|
|
413
|
+
const self = Object.create(Proto);
|
|
414
|
+
self[args] = options.single === false ? arguments : arguments[0];
|
|
415
|
+
return self;
|
|
416
|
+
};
|
|
417
|
+
};
|
|
418
|
+
const makeExit = options => {
|
|
419
|
+
const Proto = {
|
|
420
|
+
...makePrimitiveProto(options),
|
|
421
|
+
[MicroExitTypeId]: MicroExitTypeId,
|
|
422
|
+
_tag: options.op,
|
|
423
|
+
get [options.prop]() {
|
|
424
|
+
return this[args];
|
|
425
|
+
},
|
|
426
|
+
toJSON() {
|
|
427
|
+
return {
|
|
428
|
+
_id: "MicroExit",
|
|
429
|
+
_tag: options.op,
|
|
430
|
+
[options.prop]: this[args]
|
|
431
|
+
};
|
|
432
|
+
},
|
|
433
|
+
[Equal.symbol](that) {
|
|
434
|
+
return isMicroExit(that) && that._tag === options.op && Equal.equals(this[args], that[args]);
|
|
435
|
+
},
|
|
436
|
+
[Hash.symbol]() {
|
|
437
|
+
return Hash.cached(this, Hash.combine(Hash.string(options.op))(Hash.hash(this[args])));
|
|
438
|
+
}
|
|
439
|
+
};
|
|
440
|
+
return function (value) {
|
|
441
|
+
const self = Object.create(Proto);
|
|
442
|
+
self[args] = value;
|
|
443
|
+
self[successCont] = undefined;
|
|
444
|
+
self[failureCont] = undefined;
|
|
445
|
+
self[ensureCont] = undefined;
|
|
446
|
+
return self;
|
|
447
|
+
};
|
|
448
|
+
};
|
|
449
|
+
/**
|
|
450
|
+
* Creates a `Micro` effect that will succeed with the specified constant value.
|
|
451
|
+
*
|
|
452
|
+
* @since 3.4.0
|
|
453
|
+
* @experimental
|
|
454
|
+
* @category constructors
|
|
455
|
+
*/
|
|
456
|
+
export const succeed = /*#__PURE__*/makeExit({
|
|
457
|
+
op: "Success",
|
|
458
|
+
prop: "value",
|
|
459
|
+
eval(fiber) {
|
|
460
|
+
const cont = fiber.getCont(successCont);
|
|
461
|
+
return cont ? cont[successCont](this[args], fiber) : fiber.yieldWith(this);
|
|
462
|
+
}
|
|
463
|
+
});
|
|
464
|
+
/**
|
|
465
|
+
* Creates a `Micro` effect that will fail with the specified `MicroCause`.
|
|
466
|
+
*
|
|
467
|
+
* @since 3.4.6
|
|
468
|
+
* @experimental
|
|
469
|
+
* @category constructors
|
|
470
|
+
*/
|
|
471
|
+
export const failCause = /*#__PURE__*/makeExit({
|
|
472
|
+
op: "Failure",
|
|
473
|
+
prop: "cause",
|
|
474
|
+
eval(fiber) {
|
|
475
|
+
let cont = fiber.getCont(failureCont);
|
|
476
|
+
while (causeIsInterrupt(this[args]) && cont && fiber.interruptible) {
|
|
477
|
+
cont = fiber.getCont(failureCont);
|
|
478
|
+
}
|
|
479
|
+
return cont ? cont[failureCont](this[args], fiber) : fiber.yieldWith(this);
|
|
480
|
+
}
|
|
481
|
+
});
|
|
482
|
+
/**
|
|
483
|
+
* Creates a `Micro` effect that fails with the given error.
|
|
484
|
+
*
|
|
485
|
+
* This results in a `Fail` variant of the `MicroCause` type, where the error is
|
|
486
|
+
* tracked at the type level.
|
|
487
|
+
*
|
|
488
|
+
* @since 3.4.0
|
|
489
|
+
* @experimental
|
|
490
|
+
* @category constructors
|
|
491
|
+
*/
|
|
492
|
+
export const fail = error => failCause(causeFail(error));
|
|
493
|
+
/**
|
|
494
|
+
* Creates a `Micro` effect that succeeds with a lazily evaluated value.
|
|
495
|
+
*
|
|
496
|
+
* If the evaluation of the value throws an error, the effect will fail with a
|
|
497
|
+
* `Die` variant of the `MicroCause` type.
|
|
498
|
+
*
|
|
499
|
+
* @since 3.4.0
|
|
500
|
+
* @experimental
|
|
501
|
+
* @category constructors
|
|
502
|
+
*/
|
|
503
|
+
export const sync = /*#__PURE__*/makePrimitive({
|
|
504
|
+
op: "Sync",
|
|
505
|
+
eval(fiber) {
|
|
506
|
+
const value = this[args]();
|
|
507
|
+
const cont = fiber.getCont(successCont);
|
|
508
|
+
return cont ? cont[successCont](value, fiber) : fiber.yieldWith(exitSucceed(value));
|
|
509
|
+
}
|
|
510
|
+
});
|
|
511
|
+
/**
|
|
512
|
+
* Lazily creates a `Micro` effect from the given side-effect.
|
|
513
|
+
*
|
|
514
|
+
* @since 3.4.0
|
|
515
|
+
* @experimental
|
|
516
|
+
* @category constructors
|
|
517
|
+
*/
|
|
518
|
+
export const suspend = /*#__PURE__*/makePrimitive({
|
|
519
|
+
op: "Suspend",
|
|
520
|
+
eval(_fiber) {
|
|
521
|
+
return this[args]();
|
|
522
|
+
}
|
|
523
|
+
});
|
|
524
|
+
/**
|
|
525
|
+
* Pause the execution of the current `Micro` effect, and resume it on the next
|
|
526
|
+
* scheduler tick.
|
|
527
|
+
*
|
|
528
|
+
* @since 3.4.0
|
|
529
|
+
* @experimental
|
|
530
|
+
* @category constructors
|
|
531
|
+
*/
|
|
532
|
+
export const yieldNowWith = /*#__PURE__*/makePrimitive({
|
|
533
|
+
op: "Yield",
|
|
534
|
+
eval(fiber) {
|
|
535
|
+
let resumed = false;
|
|
536
|
+
fiber.getRef(CurrentScheduler).scheduleTask(() => {
|
|
537
|
+
if (resumed) return;
|
|
538
|
+
fiber.evaluate(exitVoid);
|
|
539
|
+
}, this[args] ?? 0);
|
|
540
|
+
return fiber.yieldWith(() => {
|
|
541
|
+
resumed = true;
|
|
542
|
+
});
|
|
543
|
+
}
|
|
544
|
+
});
|
|
545
|
+
/**
|
|
546
|
+
* Pause the execution of the current `Micro` effect, and resume it on the next
|
|
547
|
+
* scheduler tick.
|
|
548
|
+
*
|
|
549
|
+
* @since 3.4.0
|
|
550
|
+
* @experimental
|
|
551
|
+
* @category constructors
|
|
552
|
+
*/
|
|
553
|
+
export const yieldNow = /*#__PURE__*/yieldNowWith(0);
|
|
554
|
+
/**
|
|
555
|
+
* Creates a `Micro` effect that will succeed with the value wrapped in `Some`.
|
|
556
|
+
*
|
|
557
|
+
* @since 3.4.0
|
|
558
|
+
* @experimental
|
|
559
|
+
* @category constructors
|
|
560
|
+
*/
|
|
561
|
+
export const succeedSome = a => succeed(Option.some(a));
|
|
562
|
+
/**
|
|
563
|
+
* Creates a `Micro` effect that succeeds with `None`.
|
|
564
|
+
*
|
|
565
|
+
* @since 3.4.0
|
|
566
|
+
* @experimental
|
|
567
|
+
* @category constructors
|
|
568
|
+
*/
|
|
569
|
+
export const succeedNone = /*#__PURE__*/succeed(/*#__PURE__*/Option.none());
|
|
570
|
+
/**
|
|
571
|
+
* Creates a `Micro` effect that will fail with the lazily evaluated `MicroCause`.
|
|
572
|
+
*
|
|
573
|
+
* @since 3.4.0
|
|
574
|
+
* @experimental
|
|
575
|
+
* @category constructors
|
|
576
|
+
*/
|
|
577
|
+
export const failCauseSync = evaluate => suspend(() => failCause(evaluate()));
|
|
578
|
+
/**
|
|
579
|
+
* Creates a `Micro` effect that will die with the specified error.
|
|
580
|
+
*
|
|
581
|
+
* This results in a `Die` variant of the `MicroCause` type, where the error is
|
|
582
|
+
* not tracked at the type level.
|
|
583
|
+
*
|
|
584
|
+
* @since 3.4.0
|
|
585
|
+
* @experimental
|
|
586
|
+
* @category constructors
|
|
587
|
+
*/
|
|
588
|
+
export const die = defect => exitDie(defect);
|
|
589
|
+
/**
|
|
590
|
+
* Creates a `Micro` effect that will fail with the lazily evaluated error.
|
|
591
|
+
*
|
|
592
|
+
* This results in a `Fail` variant of the `MicroCause` type, where the error is
|
|
593
|
+
* tracked at the type level.
|
|
594
|
+
*
|
|
595
|
+
* @since 3.4.6
|
|
596
|
+
* @experimental
|
|
597
|
+
* @category constructors
|
|
598
|
+
*/
|
|
599
|
+
export const failSync = error => suspend(() => fail(error()));
|
|
600
|
+
/**
|
|
601
|
+
* Converts an `Option` into a `Micro` effect, that will fail with
|
|
602
|
+
* `NoSuchElementException` if the option is `None`. Otherwise, it will succeed with the
|
|
603
|
+
* value of the option.
|
|
604
|
+
*
|
|
605
|
+
* @since 3.4.0
|
|
606
|
+
* @experimental
|
|
607
|
+
* @category constructors
|
|
608
|
+
*/
|
|
609
|
+
export const fromOption = option => option._tag === "Some" ? succeed(option.value) : fail(new NoSuchElementException({}));
|
|
610
|
+
/**
|
|
611
|
+
* Converts an `Either` into a `Micro` effect, that will fail with the left side
|
|
612
|
+
* of the either if it is a `Left`. Otherwise, it will succeed with the right
|
|
613
|
+
* side of the either.
|
|
614
|
+
*
|
|
615
|
+
* @since 3.4.0
|
|
616
|
+
* @experimental
|
|
617
|
+
* @category constructors
|
|
618
|
+
*/
|
|
619
|
+
export const fromEither = either => either._tag === "Right" ? succeed(either.right) : fail(either.left);
|
|
620
|
+
const void_ = /*#__PURE__*/succeed(void 0);
|
|
621
|
+
export {
|
|
622
|
+
/**
|
|
623
|
+
* A `Micro` effect that will succeed with `void` (`undefined`).
|
|
624
|
+
*
|
|
625
|
+
* @since 3.4.0
|
|
626
|
+
* @experimental
|
|
627
|
+
* @category constructors
|
|
628
|
+
*/
|
|
629
|
+
void_ as void };
|
|
630
|
+
const try_ = options => suspend(() => {
|
|
631
|
+
try {
|
|
632
|
+
return succeed(options.try());
|
|
633
|
+
} catch (err) {
|
|
634
|
+
return fail(options.catch(err));
|
|
635
|
+
}
|
|
636
|
+
});
|
|
637
|
+
export {
|
|
638
|
+
/**
|
|
639
|
+
* The `Micro` equivalent of a try / catch block, which allows you to map
|
|
640
|
+
* thrown errors to a specific error type.
|
|
641
|
+
*
|
|
642
|
+
* @example
|
|
643
|
+
* ```ts
|
|
644
|
+
* import { Micro } from "effect"
|
|
645
|
+
*
|
|
646
|
+
* Micro.try({
|
|
647
|
+
* try: () => { throw new Error("boom") },
|
|
648
|
+
* catch: (cause) => new Error("caught", { cause })
|
|
649
|
+
* })
|
|
650
|
+
* ```
|
|
651
|
+
*
|
|
652
|
+
* @since 3.4.0
|
|
653
|
+
* @experimental
|
|
654
|
+
* @category constructors
|
|
655
|
+
*/
|
|
656
|
+
try_ as try };
|
|
657
|
+
/**
|
|
658
|
+
* Wrap a `Promise` into a `Micro` effect.
|
|
659
|
+
*
|
|
660
|
+
* Any errors will result in a `Die` variant of the `MicroCause` type, where the
|
|
661
|
+
* error is not tracked at the type level.
|
|
662
|
+
*
|
|
663
|
+
* @since 3.4.0
|
|
664
|
+
* @experimental
|
|
665
|
+
* @category constructors
|
|
666
|
+
*/
|
|
667
|
+
export const promise = evaluate => asyncOptions(function (resume, signal) {
|
|
668
|
+
evaluate(signal).then(a => resume(succeed(a)), e => resume(die(e)));
|
|
669
|
+
}, evaluate.length !== 0);
|
|
670
|
+
/**
|
|
671
|
+
* Wrap a `Promise` into a `Micro` effect. Any errors will be caught and
|
|
672
|
+
* converted into a specific error type.
|
|
673
|
+
*
|
|
674
|
+
* @example
|
|
675
|
+
* ```ts
|
|
676
|
+
* import { Micro } from "effect"
|
|
677
|
+
*
|
|
678
|
+
* Micro.tryPromise({
|
|
679
|
+
* try: () => Promise.resolve("success"),
|
|
680
|
+
* catch: (cause) => new Error("caught", { cause })
|
|
681
|
+
* })
|
|
682
|
+
* ```
|
|
683
|
+
*
|
|
684
|
+
* @since 3.4.0
|
|
685
|
+
* @experimental
|
|
686
|
+
* @category constructors
|
|
687
|
+
*/
|
|
688
|
+
export const tryPromise = options => asyncOptions(function (resume, signal) {
|
|
689
|
+
try {
|
|
690
|
+
options.try(signal).then(a => resume(succeed(a)), e => resume(fail(options.catch(e))));
|
|
691
|
+
} catch (err) {
|
|
692
|
+
resume(fail(options.catch(err)));
|
|
693
|
+
}
|
|
694
|
+
}, options.try.length !== 0);
|
|
695
|
+
/**
|
|
696
|
+
* Create a `Micro` effect using the current `MicroFiber`.
|
|
697
|
+
*
|
|
698
|
+
* @since 3.4.0
|
|
699
|
+
* @experimental
|
|
700
|
+
* @category constructors
|
|
701
|
+
*/
|
|
702
|
+
export const withMicroFiber = /*#__PURE__*/makePrimitive({
|
|
703
|
+
op: "WithMicroFiber",
|
|
704
|
+
eval(fiber) {
|
|
705
|
+
return this[args](fiber);
|
|
706
|
+
}
|
|
707
|
+
});
|
|
708
|
+
/**
|
|
709
|
+
* Flush any yielded effects that are waiting to be executed.
|
|
710
|
+
*
|
|
711
|
+
* @since 3.4.0
|
|
712
|
+
* @experimental
|
|
713
|
+
* @category constructors
|
|
714
|
+
*/
|
|
715
|
+
export const yieldFlush = /*#__PURE__*/withMicroFiber(fiber => {
|
|
716
|
+
fiber.getRef(CurrentScheduler).flush();
|
|
717
|
+
return exitVoid;
|
|
718
|
+
});
|
|
719
|
+
const asyncOptions = /*#__PURE__*/makePrimitive({
|
|
720
|
+
op: "Async",
|
|
721
|
+
single: false,
|
|
722
|
+
eval(fiber) {
|
|
723
|
+
const register = this[args][0];
|
|
724
|
+
let resumed = false;
|
|
725
|
+
let yielded = false;
|
|
726
|
+
const controller = this[args][1] ? new AbortController() : undefined;
|
|
727
|
+
const onCancel = register(effect => {
|
|
728
|
+
if (resumed) return;
|
|
729
|
+
resumed = true;
|
|
730
|
+
if (yielded) {
|
|
731
|
+
fiber.evaluate(effect);
|
|
732
|
+
} else {
|
|
733
|
+
yielded = effect;
|
|
734
|
+
}
|
|
735
|
+
}, controller?.signal);
|
|
736
|
+
if (yielded !== false) return yielded;
|
|
737
|
+
yielded = true;
|
|
738
|
+
fiber._yielded = () => {
|
|
739
|
+
resumed = true;
|
|
740
|
+
};
|
|
741
|
+
if (controller === undefined && onCancel === undefined) {
|
|
742
|
+
return Yield;
|
|
743
|
+
}
|
|
744
|
+
fiber._stack.push(asyncFinalizer(() => {
|
|
745
|
+
resumed = true;
|
|
746
|
+
controller?.abort();
|
|
747
|
+
return onCancel ?? exitVoid;
|
|
748
|
+
}));
|
|
749
|
+
return Yield;
|
|
750
|
+
}
|
|
751
|
+
});
|
|
752
|
+
const asyncFinalizer = /*#__PURE__*/makePrimitive({
|
|
753
|
+
op: "AsyncFinalizer",
|
|
754
|
+
ensure(fiber) {
|
|
755
|
+
if (fiber.interruptible) {
|
|
756
|
+
fiber.interruptible = false;
|
|
757
|
+
fiber._stack.push(setInterruptible(true));
|
|
758
|
+
}
|
|
759
|
+
},
|
|
760
|
+
contE(cause, _fiber) {
|
|
761
|
+
return causeIsInterrupt(cause) ? flatMap(this[args](), () => failCause(cause)) : failCause(cause);
|
|
762
|
+
}
|
|
763
|
+
});
|
|
764
|
+
/**
|
|
765
|
+
* Create a `Micro` effect from an asynchronous computation.
|
|
766
|
+
*
|
|
767
|
+
* You can return a cleanup effect that will be run when the effect is aborted.
|
|
768
|
+
* It is also passed an `AbortSignal` that is triggered when the effect is
|
|
769
|
+
* aborted.
|
|
770
|
+
*
|
|
771
|
+
* @since 3.4.0
|
|
772
|
+
* @experimental
|
|
773
|
+
* @category constructors
|
|
774
|
+
*/
|
|
775
|
+
export const async = register => asyncOptions(register, register.length >= 2);
|
|
776
|
+
/**
|
|
777
|
+
* A `Micro` that will never succeed or fail. It wraps `setInterval` to prevent
|
|
778
|
+
* the Javascript runtime from exiting.
|
|
779
|
+
*
|
|
780
|
+
* @since 3.4.0
|
|
781
|
+
* @experimental
|
|
782
|
+
* @category constructors
|
|
783
|
+
*/
|
|
784
|
+
export const never = /*#__PURE__*/async(function () {
|
|
785
|
+
const interval = setInterval(constVoid, 2147483646);
|
|
786
|
+
return sync(() => clearInterval(interval));
|
|
787
|
+
});
|
|
788
|
+
/**
|
|
789
|
+
* @since 3.4.0
|
|
790
|
+
* @experimental
|
|
791
|
+
* @category constructors
|
|
792
|
+
*/
|
|
793
|
+
export const gen = (...args) => suspend(() => fromIterator(args.length === 1 ? args[0]() : args[1].call(args[0])));
|
|
794
|
+
const fromIterator = /*#__PURE__*/makePrimitive({
|
|
795
|
+
op: "Iterator",
|
|
796
|
+
contA(value, fiber) {
|
|
797
|
+
const state = this[args].next(value);
|
|
798
|
+
if (state.done) return succeed(state.value);
|
|
799
|
+
fiber._stack.push(this);
|
|
800
|
+
return yieldWrapGet(state.value);
|
|
801
|
+
},
|
|
802
|
+
eval(fiber) {
|
|
803
|
+
return this[successCont](undefined, fiber);
|
|
804
|
+
}
|
|
805
|
+
});
|
|
806
|
+
// ----------------------------------------------------------------------------
|
|
807
|
+
// mapping & sequencing
|
|
808
|
+
// ----------------------------------------------------------------------------
|
|
809
|
+
/**
|
|
810
|
+
* Create a `Micro` effect that will replace the success value of the given
|
|
811
|
+
* effect.
|
|
812
|
+
*
|
|
813
|
+
* @since 3.4.0
|
|
814
|
+
* @experimental
|
|
815
|
+
* @category mapping & sequencing
|
|
816
|
+
*/
|
|
817
|
+
export const as = /*#__PURE__*/dual(2, (self, value) => map(self, _ => value));
|
|
818
|
+
/**
|
|
819
|
+
* Wrap the success value of this `Micro` effect in a `Some`.
|
|
820
|
+
*
|
|
821
|
+
* @since 3.4.0
|
|
822
|
+
* @experimental
|
|
823
|
+
* @category mapping & sequencing
|
|
824
|
+
*/
|
|
825
|
+
export const asSome = self => map(self, Option.some);
|
|
826
|
+
/**
|
|
827
|
+
* Swap the error and success types of the `Micro` effect.
|
|
828
|
+
*
|
|
829
|
+
* @since 3.4.0
|
|
830
|
+
* @experimental
|
|
831
|
+
* @category mapping & sequencing
|
|
832
|
+
*/
|
|
833
|
+
export const flip = self => matchEffect(self, {
|
|
834
|
+
onFailure: succeed,
|
|
835
|
+
onSuccess: fail
|
|
836
|
+
});
|
|
837
|
+
/**
|
|
838
|
+
* A more flexible version of `flatMap` that combines `map` and `flatMap` into a
|
|
839
|
+
* single API.
|
|
840
|
+
*
|
|
841
|
+
* It also lets you directly pass a `Micro` effect, which will be executed after
|
|
842
|
+
* the current effect.
|
|
843
|
+
*
|
|
844
|
+
* @since 3.4.0
|
|
845
|
+
* @experimental
|
|
846
|
+
* @category mapping & sequencing
|
|
847
|
+
*/
|
|
848
|
+
export const andThen = /*#__PURE__*/dual(2, (self, f) => flatMap(self, a => {
|
|
849
|
+
const value = isMicro(f) ? f : typeof f === "function" ? f(a) : f;
|
|
850
|
+
return isMicro(value) ? value : succeed(value);
|
|
851
|
+
}));
|
|
852
|
+
/**
|
|
853
|
+
* Execute a side effect from the success value of the `Micro` effect.
|
|
854
|
+
*
|
|
855
|
+
* It is similar to the `andThen` api, but the success value is ignored.
|
|
856
|
+
*
|
|
857
|
+
* @since 3.4.0
|
|
858
|
+
* @experimental
|
|
859
|
+
* @category mapping & sequencing
|
|
860
|
+
*/
|
|
861
|
+
export const tap = /*#__PURE__*/dual(2, (self, f) => flatMap(self, a => {
|
|
862
|
+
const value = isMicro(f) ? f : typeof f === "function" ? f(a) : f;
|
|
863
|
+
return isMicro(value) ? as(value, a) : succeed(a);
|
|
864
|
+
}));
|
|
865
|
+
/**
|
|
866
|
+
* Replace the success value of the `Micro` effect with `void`.
|
|
867
|
+
*
|
|
868
|
+
* @since 3.4.0
|
|
869
|
+
* @experimental
|
|
870
|
+
* @category mapping & sequencing
|
|
871
|
+
*/
|
|
872
|
+
export const asVoid = self => flatMap(self, _ => exitVoid);
|
|
873
|
+
/**
|
|
874
|
+
* Access the `MicroExit` of the given `Micro` effect.
|
|
875
|
+
*
|
|
876
|
+
* @since 3.4.6
|
|
877
|
+
* @experimental
|
|
878
|
+
* @category mapping & sequencing
|
|
879
|
+
*/
|
|
880
|
+
export const exit = self => matchCause(self, {
|
|
881
|
+
onFailure: exitFailCause,
|
|
882
|
+
onSuccess: exitSucceed
|
|
883
|
+
});
|
|
884
|
+
/**
|
|
885
|
+
* Replace the error type of the given `Micro` with the full `MicroCause` object.
|
|
886
|
+
*
|
|
887
|
+
* @since 3.4.0
|
|
888
|
+
* @experimental
|
|
889
|
+
* @category mapping & sequencing
|
|
890
|
+
*/
|
|
891
|
+
export const sandbox = self => catchAllCause(self, fail);
|
|
892
|
+
/**
|
|
893
|
+
* Returns an effect that races all the specified effects,
|
|
894
|
+
* yielding the value of the first effect to succeed with a value. Losers of
|
|
895
|
+
* the race will be interrupted immediately
|
|
896
|
+
*
|
|
897
|
+
* @since 3.4.0
|
|
898
|
+
* @experimental
|
|
899
|
+
* @category sequencing
|
|
900
|
+
*/
|
|
901
|
+
export const raceAll = all => withMicroFiber(parent => async(resume => {
|
|
902
|
+
const effects = Arr.fromIterable(all);
|
|
903
|
+
const len = effects.length;
|
|
904
|
+
let doneCount = 0;
|
|
905
|
+
let done = false;
|
|
906
|
+
const fibers = new Set();
|
|
907
|
+
const causes = [];
|
|
908
|
+
const onExit = exit => {
|
|
909
|
+
doneCount++;
|
|
910
|
+
if (exit._tag === "Failure") {
|
|
911
|
+
causes.push(exit.cause);
|
|
912
|
+
if (doneCount >= len) {
|
|
913
|
+
resume(failCause(causes[0]));
|
|
914
|
+
}
|
|
915
|
+
return;
|
|
916
|
+
}
|
|
917
|
+
done = true;
|
|
918
|
+
resume(fibers.size === 0 ? exit : flatMap(uninterruptible(fiberInterruptAll(fibers)), () => exit));
|
|
919
|
+
};
|
|
920
|
+
for (let i = 0; i < len; i++) {
|
|
921
|
+
if (done) break;
|
|
922
|
+
const fiber = unsafeFork(parent, interruptible(effects[i]), true, true);
|
|
923
|
+
fibers.add(fiber);
|
|
924
|
+
fiber.addObserver(exit => {
|
|
925
|
+
fibers.delete(fiber);
|
|
926
|
+
onExit(exit);
|
|
927
|
+
});
|
|
928
|
+
}
|
|
929
|
+
return fiberInterruptAll(fibers);
|
|
930
|
+
}));
|
|
931
|
+
/**
|
|
932
|
+
* Returns an effect that races all the specified effects,
|
|
933
|
+
* yielding the value of the first effect to succeed or fail. Losers of
|
|
934
|
+
* the race will be interrupted immediately.
|
|
935
|
+
*
|
|
936
|
+
* @since 3.4.0
|
|
937
|
+
* @experimental
|
|
938
|
+
* @category sequencing
|
|
939
|
+
*/
|
|
940
|
+
export const raceAllFirst = all => withMicroFiber(parent => async(resume => {
|
|
941
|
+
let done = false;
|
|
942
|
+
const fibers = new Set();
|
|
943
|
+
const onExit = exit => {
|
|
944
|
+
done = true;
|
|
945
|
+
resume(fibers.size === 0 ? exit : flatMap(fiberInterruptAll(fibers), () => exit));
|
|
946
|
+
};
|
|
947
|
+
for (const effect of all) {
|
|
948
|
+
if (done) break;
|
|
949
|
+
const fiber = unsafeFork(parent, interruptible(effect), true, true);
|
|
950
|
+
fibers.add(fiber);
|
|
951
|
+
fiber.addObserver(exit => {
|
|
952
|
+
fibers.delete(fiber);
|
|
953
|
+
onExit(exit);
|
|
954
|
+
});
|
|
955
|
+
}
|
|
956
|
+
return fiberInterruptAll(fibers);
|
|
957
|
+
}));
|
|
958
|
+
/**
|
|
959
|
+
* Returns an effect that races two effects, yielding the value of the first
|
|
960
|
+
* effect to succeed. Losers of the race will be interrupted immediately.
|
|
961
|
+
*
|
|
962
|
+
* @since 3.4.0
|
|
963
|
+
* @experimental
|
|
964
|
+
* @category sequencing
|
|
965
|
+
*/
|
|
966
|
+
export const race = /*#__PURE__*/dual(2, (self, that) => raceAll([self, that]));
|
|
967
|
+
/**
|
|
968
|
+
* Returns an effect that races two effects, yielding the value of the first
|
|
969
|
+
* effect to succeed *or* fail. Losers of the race will be interrupted immediately.
|
|
970
|
+
*
|
|
971
|
+
* @since 3.4.0
|
|
972
|
+
* @experimental
|
|
973
|
+
* @category sequencing
|
|
974
|
+
*/
|
|
975
|
+
export const raceFirst = /*#__PURE__*/dual(2, (self, that) => raceAllFirst([self, that]));
|
|
976
|
+
/**
|
|
977
|
+
* Map the success value of this `Micro` effect to another `Micro` effect, then
|
|
978
|
+
* flatten the result.
|
|
979
|
+
*
|
|
980
|
+
* @since 3.4.0
|
|
981
|
+
* @experimental
|
|
982
|
+
* @category mapping & sequencing
|
|
983
|
+
*/
|
|
984
|
+
export const flatMap = /*#__PURE__*/dual(2, (self, f) => {
|
|
985
|
+
const onSuccess = Object.create(OnSuccessProto);
|
|
986
|
+
onSuccess[args] = self;
|
|
987
|
+
onSuccess[successCont] = f;
|
|
988
|
+
return onSuccess;
|
|
989
|
+
});
|
|
990
|
+
const OnSuccessProto = /*#__PURE__*/makePrimitiveProto({
|
|
991
|
+
op: "OnSuccess",
|
|
992
|
+
eval(fiber) {
|
|
993
|
+
fiber._stack.push(this);
|
|
994
|
+
return this[args];
|
|
995
|
+
}
|
|
996
|
+
});
|
|
997
|
+
// ----------------------------------------------------------------------------
|
|
998
|
+
// mapping & sequencing
|
|
999
|
+
// ----------------------------------------------------------------------------
|
|
1000
|
+
/**
|
|
1001
|
+
* Flattens any nested `Micro` effects, merging the error and requirement types.
|
|
1002
|
+
*
|
|
1003
|
+
* @since 3.4.0
|
|
1004
|
+
* @experimental
|
|
1005
|
+
* @category mapping & sequencing
|
|
1006
|
+
*/
|
|
1007
|
+
export const flatten = self => flatMap(self, identity);
|
|
1008
|
+
/**
|
|
1009
|
+
* Transforms the success value of the `Micro` effect with the specified
|
|
1010
|
+
* function.
|
|
1011
|
+
*
|
|
1012
|
+
* @since 3.4.0
|
|
1013
|
+
* @experimental
|
|
1014
|
+
* @category mapping & sequencing
|
|
1015
|
+
*/
|
|
1016
|
+
export const map = /*#__PURE__*/dual(2, (self, f) => flatMap(self, a => succeed(f(a))));
|
|
1017
|
+
/**
|
|
1018
|
+
* @since 3.4.6
|
|
1019
|
+
* @experimental
|
|
1020
|
+
* @category MicroExit
|
|
1021
|
+
*/
|
|
1022
|
+
export const isMicroExit = u => hasProperty(u, MicroExitTypeId);
|
|
1023
|
+
/**
|
|
1024
|
+
* @since 3.4.6
|
|
1025
|
+
* @experimental
|
|
1026
|
+
* @category MicroExit
|
|
1027
|
+
*/
|
|
1028
|
+
export const exitSucceed = succeed;
|
|
1029
|
+
/**
|
|
1030
|
+
* @since 3.4.6
|
|
1031
|
+
* @experimental
|
|
1032
|
+
* @category MicroExit
|
|
1033
|
+
*/
|
|
1034
|
+
export const exitFailCause = failCause;
|
|
1035
|
+
/**
|
|
1036
|
+
* @since 3.4.6
|
|
1037
|
+
* @experimental
|
|
1038
|
+
* @category MicroExit
|
|
1039
|
+
*/
|
|
1040
|
+
export const exitInterrupt = /*#__PURE__*/exitFailCause(/*#__PURE__*/causeInterrupt());
|
|
1041
|
+
/**
|
|
1042
|
+
* @since 3.4.6
|
|
1043
|
+
* @experimental
|
|
1044
|
+
* @category MicroExit
|
|
1045
|
+
*/
|
|
1046
|
+
export const exitFail = e => exitFailCause(causeFail(e));
|
|
1047
|
+
/**
|
|
1048
|
+
* @since 3.4.6
|
|
1049
|
+
* @experimental
|
|
1050
|
+
* @category MicroExit
|
|
1051
|
+
*/
|
|
1052
|
+
export const exitDie = defect => exitFailCause(causeDie(defect));
|
|
1053
|
+
/**
|
|
1054
|
+
* @since 3.4.6
|
|
1055
|
+
* @experimental
|
|
1056
|
+
* @category MicroExit
|
|
1057
|
+
*/
|
|
1058
|
+
export const exitIsSuccess = self => self._tag === "Success";
|
|
1059
|
+
/**
|
|
1060
|
+
* @since 3.4.6
|
|
1061
|
+
* @experimental
|
|
1062
|
+
* @category MicroExit
|
|
1063
|
+
*/
|
|
1064
|
+
export const exitIsFailure = self => self._tag === "Failure";
|
|
1065
|
+
/**
|
|
1066
|
+
* @since 3.4.6
|
|
1067
|
+
* @experimental
|
|
1068
|
+
* @category MicroExit
|
|
1069
|
+
*/
|
|
1070
|
+
export const exitIsInterrupt = self => exitIsFailure(self) && self.cause._tag === "Interrupt";
|
|
1071
|
+
/**
|
|
1072
|
+
* @since 3.4.6
|
|
1073
|
+
* @experimental
|
|
1074
|
+
* @category MicroExit
|
|
1075
|
+
*/
|
|
1076
|
+
export const exitIsFail = self => exitIsFailure(self) && self.cause._tag === "Fail";
|
|
1077
|
+
/**
|
|
1078
|
+
* @since 3.4.6
|
|
1079
|
+
* @experimental
|
|
1080
|
+
* @category MicroExit
|
|
1081
|
+
*/
|
|
1082
|
+
export const exitIsDie = self => exitIsFailure(self) && self.cause._tag === "Die";
|
|
1083
|
+
/**
|
|
1084
|
+
* @since 3.4.6
|
|
1085
|
+
* @experimental
|
|
1086
|
+
* @category MicroExit
|
|
1087
|
+
*/
|
|
1088
|
+
export const exitVoid = /*#__PURE__*/exitSucceed(void 0);
|
|
1089
|
+
/**
|
|
1090
|
+
* @since 3.11.0
|
|
1091
|
+
* @experimental
|
|
1092
|
+
* @category MicroExit
|
|
1093
|
+
*/
|
|
1094
|
+
export const exitVoidAll = exits => {
|
|
1095
|
+
for (const exit of exits) {
|
|
1096
|
+
if (exit._tag === "Failure") {
|
|
1097
|
+
return exit;
|
|
1098
|
+
}
|
|
1099
|
+
}
|
|
1100
|
+
return exitVoid;
|
|
1101
|
+
};
|
|
1102
|
+
const setImmediate = "setImmediate" in globalThis ? globalThis.setImmediate : f => setTimeout(f, 0);
|
|
1103
|
+
/**
|
|
1104
|
+
* @since 3.5.9
|
|
1105
|
+
* @experimental
|
|
1106
|
+
* @category scheduler
|
|
1107
|
+
*/
|
|
1108
|
+
export class MicroSchedulerDefault {
|
|
1109
|
+
tasks = [];
|
|
1110
|
+
running = false;
|
|
1111
|
+
/**
|
|
1112
|
+
* @since 3.5.9
|
|
1113
|
+
*/
|
|
1114
|
+
scheduleTask(task, _priority) {
|
|
1115
|
+
this.tasks.push(task);
|
|
1116
|
+
if (!this.running) {
|
|
1117
|
+
this.running = true;
|
|
1118
|
+
setImmediate(this.afterScheduled);
|
|
1119
|
+
}
|
|
1120
|
+
}
|
|
1121
|
+
/**
|
|
1122
|
+
* @since 3.5.9
|
|
1123
|
+
*/
|
|
1124
|
+
afterScheduled = () => {
|
|
1125
|
+
this.running = false;
|
|
1126
|
+
this.runTasks();
|
|
1127
|
+
};
|
|
1128
|
+
/**
|
|
1129
|
+
* @since 3.5.9
|
|
1130
|
+
*/
|
|
1131
|
+
runTasks() {
|
|
1132
|
+
const tasks = this.tasks;
|
|
1133
|
+
this.tasks = [];
|
|
1134
|
+
for (let i = 0, len = tasks.length; i < len; i++) {
|
|
1135
|
+
tasks[i]();
|
|
1136
|
+
}
|
|
1137
|
+
}
|
|
1138
|
+
/**
|
|
1139
|
+
* @since 3.5.9
|
|
1140
|
+
*/
|
|
1141
|
+
shouldYield(fiber) {
|
|
1142
|
+
return fiber.currentOpCount >= fiber.getRef(MaxOpsBeforeYield);
|
|
1143
|
+
}
|
|
1144
|
+
/**
|
|
1145
|
+
* @since 3.5.9
|
|
1146
|
+
*/
|
|
1147
|
+
flush() {
|
|
1148
|
+
while (this.tasks.length > 0) {
|
|
1149
|
+
this.runTasks();
|
|
1150
|
+
}
|
|
1151
|
+
}
|
|
1152
|
+
}
|
|
1153
|
+
/**
|
|
1154
|
+
* Access the given `Context.Tag` from the environment.
|
|
1155
|
+
*
|
|
1156
|
+
* @since 3.4.0
|
|
1157
|
+
* @experimental
|
|
1158
|
+
* @category environment
|
|
1159
|
+
*/
|
|
1160
|
+
export const service = tag => withMicroFiber(fiber => succeed(Context.unsafeGet(fiber.context, tag)));
|
|
1161
|
+
/**
|
|
1162
|
+
* Access the given `Context.Tag` from the environment, without tracking the
|
|
1163
|
+
* dependency at the type level.
|
|
1164
|
+
*
|
|
1165
|
+
* It will return an `Option` of the service, depending on whether it is
|
|
1166
|
+
* available in the environment or not.
|
|
1167
|
+
*
|
|
1168
|
+
* @since 3.4.0
|
|
1169
|
+
* @experimental
|
|
1170
|
+
* @category environment
|
|
1171
|
+
*/
|
|
1172
|
+
export const serviceOption = tag => withMicroFiber(fiber => succeed(Context.getOption(fiber.context, tag)));
|
|
1173
|
+
/**
|
|
1174
|
+
* Update the Context with the given mapping function.
|
|
1175
|
+
*
|
|
1176
|
+
* @since 3.11.0
|
|
1177
|
+
* @experimental
|
|
1178
|
+
* @category environment
|
|
1179
|
+
*/
|
|
1180
|
+
export const updateContext = /*#__PURE__*/dual(2, (self, f) => withMicroFiber(fiber => {
|
|
1181
|
+
const prev = fiber.context;
|
|
1182
|
+
fiber.context = f(prev);
|
|
1183
|
+
return onExit(self, () => {
|
|
1184
|
+
fiber.context = prev;
|
|
1185
|
+
return void_;
|
|
1186
|
+
});
|
|
1187
|
+
}));
|
|
1188
|
+
/**
|
|
1189
|
+
* Update the service for the given `Context.Tag` in the environment.
|
|
1190
|
+
*
|
|
1191
|
+
* @since 3.11.0
|
|
1192
|
+
* @experimental
|
|
1193
|
+
* @category environment
|
|
1194
|
+
*/
|
|
1195
|
+
export const updateService = /*#__PURE__*/dual(3, (self, tag, f) => withMicroFiber(fiber => {
|
|
1196
|
+
const prev = Context.unsafeGet(fiber.context, tag);
|
|
1197
|
+
fiber.context = Context.add(fiber.context, tag, f(prev));
|
|
1198
|
+
return onExit(self, () => {
|
|
1199
|
+
fiber.context = Context.add(fiber.context, tag, prev);
|
|
1200
|
+
return void_;
|
|
1201
|
+
});
|
|
1202
|
+
}));
|
|
1203
|
+
/**
|
|
1204
|
+
* Access the current `Context` from the environment.
|
|
1205
|
+
*
|
|
1206
|
+
* @since 3.4.0
|
|
1207
|
+
* @experimental
|
|
1208
|
+
* @category environment
|
|
1209
|
+
*/
|
|
1210
|
+
export const context = () => getContext;
|
|
1211
|
+
const getContext = /*#__PURE__*/withMicroFiber(fiber => succeed(fiber.context));
|
|
1212
|
+
/**
|
|
1213
|
+
* Merge the given `Context` with the current context.
|
|
1214
|
+
*
|
|
1215
|
+
* @since 3.4.0
|
|
1216
|
+
* @experimental
|
|
1217
|
+
* @category environment
|
|
1218
|
+
*/
|
|
1219
|
+
export const provideContext = /*#__PURE__*/dual(2, (self, provided) => updateContext(self, Context.merge(provided)));
|
|
1220
|
+
/**
|
|
1221
|
+
* Add the provided service to the current context.
|
|
1222
|
+
*
|
|
1223
|
+
* @since 3.4.0
|
|
1224
|
+
* @experimental
|
|
1225
|
+
* @category environment
|
|
1226
|
+
*/
|
|
1227
|
+
export const provideService = /*#__PURE__*/dual(3, (self, tag, service) => updateContext(self, Context.add(tag, service)));
|
|
1228
|
+
/**
|
|
1229
|
+
* Create a service using the provided `Micro` effect, and add it to the
|
|
1230
|
+
* current context.
|
|
1231
|
+
*
|
|
1232
|
+
* @since 3.4.6
|
|
1233
|
+
* @experimental
|
|
1234
|
+
* @category environment
|
|
1235
|
+
*/
|
|
1236
|
+
export const provideServiceEffect = /*#__PURE__*/dual(3, (self, tag, acquire) => flatMap(acquire, service => provideService(self, tag, service)));
|
|
1237
|
+
// ========================================================================
|
|
1238
|
+
// References
|
|
1239
|
+
// ========================================================================
|
|
1240
|
+
/**
|
|
1241
|
+
* @since 3.11.0
|
|
1242
|
+
* @experimental
|
|
1243
|
+
* @category references
|
|
1244
|
+
*/
|
|
1245
|
+
export class MaxOpsBeforeYield extends /*#__PURE__*/Context.Reference()("effect/Micro/currentMaxOpsBeforeYield", {
|
|
1246
|
+
defaultValue: () => 2048
|
|
1247
|
+
}) {}
|
|
1248
|
+
/**
|
|
1249
|
+
* @since 3.11.0
|
|
1250
|
+
* @experimental
|
|
1251
|
+
* @category environment refs
|
|
1252
|
+
*/
|
|
1253
|
+
export class CurrentConcurrency extends /*#__PURE__*/Context.Reference()("effect/Micro/currentConcurrency", {
|
|
1254
|
+
defaultValue: () => "unbounded"
|
|
1255
|
+
}) {}
|
|
1256
|
+
/**
|
|
1257
|
+
* @since 3.11.0
|
|
1258
|
+
* @experimental
|
|
1259
|
+
* @category environment refs
|
|
1260
|
+
*/
|
|
1261
|
+
export class CurrentScheduler extends /*#__PURE__*/Context.Reference()("effect/Micro/currentScheduler", {
|
|
1262
|
+
defaultValue: () => new MicroSchedulerDefault()
|
|
1263
|
+
}) {}
|
|
1264
|
+
/**
|
|
1265
|
+
* If you have a `Micro` that uses `concurrency: "inherit"`, you can use this
|
|
1266
|
+
* api to control the concurrency of that `Micro` when it is run.
|
|
1267
|
+
*
|
|
1268
|
+
* @example
|
|
1269
|
+
* ```ts
|
|
1270
|
+
* import * as Micro from "effect/Micro"
|
|
1271
|
+
*
|
|
1272
|
+
* Micro.forEach([1, 2, 3], (n) => Micro.succeed(n), {
|
|
1273
|
+
* concurrency: "inherit"
|
|
1274
|
+
* }).pipe(
|
|
1275
|
+
* Micro.withConcurrency(2) // use a concurrency of 2
|
|
1276
|
+
* )
|
|
1277
|
+
* ```
|
|
1278
|
+
*
|
|
1279
|
+
* @since 3.4.0
|
|
1280
|
+
* @experimental
|
|
1281
|
+
* @category environment refs
|
|
1282
|
+
*/
|
|
1283
|
+
export const withConcurrency = /*#__PURE__*/dual(2, (self, concurrency) => provideService(self, CurrentConcurrency, concurrency));
|
|
1284
|
+
// ----------------------------------------------------------------------------
|
|
1285
|
+
// zipping
|
|
1286
|
+
// ----------------------------------------------------------------------------
|
|
1287
|
+
/**
|
|
1288
|
+
* Combine two `Micro` effects into a single effect that produces a tuple of
|
|
1289
|
+
* their results.
|
|
1290
|
+
*
|
|
1291
|
+
* @since 3.4.0
|
|
1292
|
+
* @experimental
|
|
1293
|
+
* @category zipping
|
|
1294
|
+
*/
|
|
1295
|
+
export const zip = /*#__PURE__*/dual(args => isMicro(args[1]), (self, that, options) => zipWith(self, that, (a, a2) => [a, a2], options));
|
|
1296
|
+
/**
|
|
1297
|
+
* The `Micro.zipWith` function combines two `Micro` effects and allows you to
|
|
1298
|
+
* apply a function to the results of the combined effects, transforming them
|
|
1299
|
+
* into a single value.
|
|
1300
|
+
*
|
|
1301
|
+
* @since 3.4.3
|
|
1302
|
+
* @experimental
|
|
1303
|
+
* @category zipping
|
|
1304
|
+
*/
|
|
1305
|
+
export const zipWith = /*#__PURE__*/dual(args => isMicro(args[1]), (self, that, f, options) => options?.concurrent
|
|
1306
|
+
// Use `all` exclusively for concurrent cases, as it introduces additional overhead due to the management of concurrency
|
|
1307
|
+
? map(all([self, that], {
|
|
1308
|
+
concurrency: 2
|
|
1309
|
+
}), ([a, a2]) => f(a, a2)) : flatMap(self, a => map(that, a2 => f(a, a2))));
|
|
1310
|
+
// ----------------------------------------------------------------------------
|
|
1311
|
+
// filtering & conditionals
|
|
1312
|
+
// ----------------------------------------------------------------------------
|
|
1313
|
+
/**
|
|
1314
|
+
* Filter the specified effect with the provided function, failing with specified
|
|
1315
|
+
* `MicroCause` if the predicate fails.
|
|
1316
|
+
*
|
|
1317
|
+
* In addition to the filtering capabilities discussed earlier, you have the option to further
|
|
1318
|
+
* refine and narrow down the type of the success channel by providing a
|
|
1319
|
+
*
|
|
1320
|
+
* @since 3.4.0
|
|
1321
|
+
* @experimental
|
|
1322
|
+
* @category filtering & conditionals
|
|
1323
|
+
*/
|
|
1324
|
+
export const filterOrFailCause = /*#__PURE__*/dual(args => isMicro(args[0]), (self, refinement, orFailWith) => flatMap(self, a => refinement(a) ? succeed(a) : failCause(orFailWith(a))));
|
|
1325
|
+
/**
|
|
1326
|
+
* Filter the specified effect with the provided function, failing with specified
|
|
1327
|
+
* error if the predicate fails.
|
|
1328
|
+
*
|
|
1329
|
+
* In addition to the filtering capabilities discussed earlier, you have the option to further
|
|
1330
|
+
* refine and narrow down the type of the success channel by providing a
|
|
1331
|
+
*
|
|
1332
|
+
* @since 3.4.0
|
|
1333
|
+
* @experimental
|
|
1334
|
+
* @category filtering & conditionals
|
|
1335
|
+
*/
|
|
1336
|
+
export const filterOrFail = /*#__PURE__*/dual(args => isMicro(args[0]), (self, refinement, orFailWith) => flatMap(self, a => refinement(a) ? succeed(a) : fail(orFailWith(a))));
|
|
1337
|
+
/**
|
|
1338
|
+
* The moral equivalent of `if (p) exp`.
|
|
1339
|
+
*
|
|
1340
|
+
* @since 3.4.0
|
|
1341
|
+
* @experimental
|
|
1342
|
+
* @category filtering & conditionals
|
|
1343
|
+
*/
|
|
1344
|
+
export const when = /*#__PURE__*/dual(2, (self, condition) => flatMap(isMicro(condition) ? condition : sync(condition), pass => pass ? asSome(self) : succeedNone));
|
|
1345
|
+
// ----------------------------------------------------------------------------
|
|
1346
|
+
// repetition
|
|
1347
|
+
// ----------------------------------------------------------------------------
|
|
1348
|
+
/**
|
|
1349
|
+
* Repeat the given `Micro` using the provided options.
|
|
1350
|
+
*
|
|
1351
|
+
* The `while` predicate will be checked after each iteration, and can use the
|
|
1352
|
+
* fall `MicroExit` of the effect to determine if the repetition should continue.
|
|
1353
|
+
*
|
|
1354
|
+
* @since 3.4.6
|
|
1355
|
+
* @experimental
|
|
1356
|
+
* @category repetition
|
|
1357
|
+
*/
|
|
1358
|
+
export const repeatExit = /*#__PURE__*/dual(2, (self, options) => suspend(() => {
|
|
1359
|
+
const startedAt = options.schedule ? Date.now() : 0;
|
|
1360
|
+
let attempt = 0;
|
|
1361
|
+
const loop = flatMap(exit(self), exit => {
|
|
1362
|
+
if (options.while !== undefined && !options.while(exit)) {
|
|
1363
|
+
return exit;
|
|
1364
|
+
} else if (options.times !== undefined && attempt >= options.times) {
|
|
1365
|
+
return exit;
|
|
1366
|
+
}
|
|
1367
|
+
attempt++;
|
|
1368
|
+
let delayEffect = yieldNow;
|
|
1369
|
+
if (options.schedule !== undefined) {
|
|
1370
|
+
const elapsed = Date.now() - startedAt;
|
|
1371
|
+
const duration = options.schedule(attempt, elapsed);
|
|
1372
|
+
if (Option.isNone(duration)) {
|
|
1373
|
+
return exit;
|
|
1374
|
+
}
|
|
1375
|
+
delayEffect = sleep(duration.value);
|
|
1376
|
+
}
|
|
1377
|
+
return flatMap(delayEffect, () => loop);
|
|
1378
|
+
});
|
|
1379
|
+
return loop;
|
|
1380
|
+
}));
|
|
1381
|
+
/**
|
|
1382
|
+
* Repeat the given `Micro` effect using the provided options. Only successful
|
|
1383
|
+
* results will be repeated.
|
|
1384
|
+
*
|
|
1385
|
+
* @since 3.4.0
|
|
1386
|
+
* @experimental
|
|
1387
|
+
* @category repetition
|
|
1388
|
+
*/
|
|
1389
|
+
export const repeat = /*#__PURE__*/dual(args => isMicro(args[0]), (self, options) => repeatExit(self, {
|
|
1390
|
+
...options,
|
|
1391
|
+
while: exit => exit._tag === "Success" && (options?.while === undefined || options.while(exit.value))
|
|
1392
|
+
}));
|
|
1393
|
+
/**
|
|
1394
|
+
* Replicates the given effect `n` times.
|
|
1395
|
+
*
|
|
1396
|
+
* @since 3.11.0
|
|
1397
|
+
* @experimental
|
|
1398
|
+
* @category repetition
|
|
1399
|
+
*/
|
|
1400
|
+
export const replicate = /*#__PURE__*/dual(2, (self, n) => Array.from({
|
|
1401
|
+
length: n
|
|
1402
|
+
}, () => self));
|
|
1403
|
+
/**
|
|
1404
|
+
* Performs this effect the specified number of times and collects the
|
|
1405
|
+
* results.
|
|
1406
|
+
*
|
|
1407
|
+
* @since 3.11.0
|
|
1408
|
+
* @category repetition
|
|
1409
|
+
*/
|
|
1410
|
+
export const replicateEffect = /*#__PURE__*/dual(args => isMicro(args[0]), (self, n, options) => all(replicate(self, n), options));
|
|
1411
|
+
/**
|
|
1412
|
+
* Repeat the given `Micro` effect forever, only stopping if the effect fails.
|
|
1413
|
+
*
|
|
1414
|
+
* @since 3.4.0
|
|
1415
|
+
* @experimental
|
|
1416
|
+
* @category repetition
|
|
1417
|
+
*/
|
|
1418
|
+
export const forever = self => repeat(self);
|
|
1419
|
+
/**
|
|
1420
|
+
* Create a `MicroSchedule` that will stop repeating after the specified number
|
|
1421
|
+
* of attempts.
|
|
1422
|
+
*
|
|
1423
|
+
* @since 3.4.6
|
|
1424
|
+
* @experimental
|
|
1425
|
+
* @category scheduling
|
|
1426
|
+
*/
|
|
1427
|
+
export const scheduleRecurs = n => attempt => attempt <= n ? Option.some(0) : Option.none();
|
|
1428
|
+
/**
|
|
1429
|
+
* Create a `MicroSchedule` that will generate a constant delay.
|
|
1430
|
+
*
|
|
1431
|
+
* @since 3.4.6
|
|
1432
|
+
* @experimental
|
|
1433
|
+
* @category scheduling
|
|
1434
|
+
*/
|
|
1435
|
+
export const scheduleSpaced = millis => () => Option.some(millis);
|
|
1436
|
+
/**
|
|
1437
|
+
* Create a `MicroSchedule` that will generate a delay with an exponential backoff.
|
|
1438
|
+
*
|
|
1439
|
+
* @since 3.4.6
|
|
1440
|
+
* @experimental
|
|
1441
|
+
* @category scheduling
|
|
1442
|
+
*/
|
|
1443
|
+
export const scheduleExponential = (baseMillis, factor = 2) => attempt => Option.some(Math.pow(factor, attempt) * baseMillis);
|
|
1444
|
+
/**
|
|
1445
|
+
* Returns a new `MicroSchedule` with an added calculated delay to each delay
|
|
1446
|
+
* returned by this schedule.
|
|
1447
|
+
*
|
|
1448
|
+
* @since 3.4.6
|
|
1449
|
+
* @experimental
|
|
1450
|
+
* @category scheduling
|
|
1451
|
+
*/
|
|
1452
|
+
export const scheduleAddDelay = /*#__PURE__*/dual(2, (self, f) => (attempt, elapsed) => Option.map(self(attempt, elapsed), duration => duration + f()));
|
|
1453
|
+
/**
|
|
1454
|
+
* Transform a `MicroSchedule` to one that will have a delay that will never exceed
|
|
1455
|
+
* the specified maximum.
|
|
1456
|
+
*
|
|
1457
|
+
* @since 3.4.6
|
|
1458
|
+
* @experimental
|
|
1459
|
+
* @category scheduling
|
|
1460
|
+
*/
|
|
1461
|
+
export const scheduleWithMaxDelay = /*#__PURE__*/dual(2, (self, max) => (attempt, elapsed) => Option.map(self(attempt, elapsed), duration => Math.min(duration, max)));
|
|
1462
|
+
/**
|
|
1463
|
+
* Transform a `MicroSchedule` to one that will stop repeating after the specified
|
|
1464
|
+
* amount of time.
|
|
1465
|
+
*
|
|
1466
|
+
* @since 3.4.6
|
|
1467
|
+
* @experimental
|
|
1468
|
+
* @category scheduling
|
|
1469
|
+
*/
|
|
1470
|
+
export const scheduleWithMaxElapsed = /*#__PURE__*/dual(2, (self, max) => (attempt, elapsed) => elapsed < max ? self(attempt, elapsed) : Option.none());
|
|
1471
|
+
/**
|
|
1472
|
+
* Combines two `MicroSchedule`s, by recurring if either schedule wants to
|
|
1473
|
+
* recur, using the minimum of the two durations between recurrences.
|
|
1474
|
+
*
|
|
1475
|
+
* @since 3.4.6
|
|
1476
|
+
* @experimental
|
|
1477
|
+
* @category scheduling
|
|
1478
|
+
*/
|
|
1479
|
+
export const scheduleUnion = /*#__PURE__*/dual(2, (self, that) => (attempt, elapsed) => Option.zipWith(self(attempt, elapsed), that(attempt, elapsed), (d1, d2) => Math.min(d1, d2)));
|
|
1480
|
+
/**
|
|
1481
|
+
* Combines two `MicroSchedule`s, by recurring only if both schedules want to
|
|
1482
|
+
* recur, using the maximum of the two durations between recurrences.
|
|
1483
|
+
*
|
|
1484
|
+
* @since 3.4.6
|
|
1485
|
+
* @experimental
|
|
1486
|
+
* @category scheduling
|
|
1487
|
+
*/
|
|
1488
|
+
export const scheduleIntersect = /*#__PURE__*/dual(2, (self, that) => (attempt, elapsed) => Option.zipWith(self(attempt, elapsed), that(attempt, elapsed), (d1, d2) => Math.max(d1, d2)));
|
|
1489
|
+
// ----------------------------------------------------------------------------
|
|
1490
|
+
// error handling
|
|
1491
|
+
// ----------------------------------------------------------------------------
|
|
1492
|
+
/**
|
|
1493
|
+
* Catch the full `MicroCause` object of the given `Micro` effect, allowing you to
|
|
1494
|
+
* recover from any kind of cause.
|
|
1495
|
+
*
|
|
1496
|
+
* @since 3.4.6
|
|
1497
|
+
* @experimental
|
|
1498
|
+
* @category error handling
|
|
1499
|
+
*/
|
|
1500
|
+
export const catchAllCause = /*#__PURE__*/dual(2, (self, f) => {
|
|
1501
|
+
const onFailure = Object.create(OnFailureProto);
|
|
1502
|
+
onFailure[args] = self;
|
|
1503
|
+
onFailure[failureCont] = f;
|
|
1504
|
+
return onFailure;
|
|
1505
|
+
});
|
|
1506
|
+
const OnFailureProto = /*#__PURE__*/makePrimitiveProto({
|
|
1507
|
+
op: "OnFailure",
|
|
1508
|
+
eval(fiber) {
|
|
1509
|
+
fiber._stack.push(this);
|
|
1510
|
+
return this[args];
|
|
1511
|
+
}
|
|
1512
|
+
});
|
|
1513
|
+
/**
|
|
1514
|
+
* Selectively catch a `MicroCause` object of the given `Micro` effect,
|
|
1515
|
+
* using the provided predicate to determine if the failure should be caught.
|
|
1516
|
+
*
|
|
1517
|
+
* @since 3.4.6
|
|
1518
|
+
* @experimental
|
|
1519
|
+
* @category error handling
|
|
1520
|
+
*/
|
|
1521
|
+
export const catchCauseIf = /*#__PURE__*/dual(3, (self, predicate, f) => catchAllCause(self, cause => predicate(cause) ? f(cause) : failCause(cause)));
|
|
1522
|
+
/**
|
|
1523
|
+
* Catch the error of the given `Micro` effect, allowing you to recover from it.
|
|
1524
|
+
*
|
|
1525
|
+
* It only catches expected errors.
|
|
1526
|
+
*
|
|
1527
|
+
* @since 3.4.6
|
|
1528
|
+
* @experimental
|
|
1529
|
+
* @category error handling
|
|
1530
|
+
*/
|
|
1531
|
+
export const catchAll = /*#__PURE__*/dual(2, (self, f) => catchCauseIf(self, causeIsFail, cause => f(cause.error)));
|
|
1532
|
+
/**
|
|
1533
|
+
* Catch any unexpected errors of the given `Micro` effect, allowing you to recover from them.
|
|
1534
|
+
*
|
|
1535
|
+
* @since 3.4.6
|
|
1536
|
+
* @experimental
|
|
1537
|
+
* @category error handling
|
|
1538
|
+
*/
|
|
1539
|
+
export const catchAllDefect = /*#__PURE__*/dual(2, (self, f) => catchCauseIf(self, causeIsDie, die => f(die.defect)));
|
|
1540
|
+
/**
|
|
1541
|
+
* Perform a side effect using the full `MicroCause` object of the given `Micro`.
|
|
1542
|
+
*
|
|
1543
|
+
* @since 3.4.6
|
|
1544
|
+
* @experimental
|
|
1545
|
+
* @category error handling
|
|
1546
|
+
*/
|
|
1547
|
+
export const tapErrorCause = /*#__PURE__*/dual(2, (self, f) => tapErrorCauseIf(self, constTrue, f));
|
|
1548
|
+
/**
|
|
1549
|
+
* Perform a side effect using if a `MicroCause` object matches the specified
|
|
1550
|
+
* predicate.
|
|
1551
|
+
*
|
|
1552
|
+
* @since 3.4.0
|
|
1553
|
+
* @experimental
|
|
1554
|
+
* @category error handling
|
|
1555
|
+
*/
|
|
1556
|
+
export const tapErrorCauseIf = /*#__PURE__*/dual(3, (self, refinement, f) => catchCauseIf(self, refinement, cause => andThen(f(cause), failCause(cause))));
|
|
1557
|
+
/**
|
|
1558
|
+
* Perform a side effect from expected errors of the given `Micro`.
|
|
1559
|
+
*
|
|
1560
|
+
* @since 3.4.6
|
|
1561
|
+
* @experimental
|
|
1562
|
+
* @category error handling
|
|
1563
|
+
*/
|
|
1564
|
+
export const tapError = /*#__PURE__*/dual(2, (self, f) => tapErrorCauseIf(self, causeIsFail, fail => f(fail.error)));
|
|
1565
|
+
/**
|
|
1566
|
+
* Perform a side effect from unexpected errors of the given `Micro`.
|
|
1567
|
+
*
|
|
1568
|
+
* @since 3.4.6
|
|
1569
|
+
* @experimental
|
|
1570
|
+
* @category error handling
|
|
1571
|
+
*/
|
|
1572
|
+
export const tapDefect = /*#__PURE__*/dual(2, (self, f) => tapErrorCauseIf(self, causeIsDie, die => f(die.defect)));
|
|
1573
|
+
/**
|
|
1574
|
+
* Catch any expected errors that match the specified predicate.
|
|
1575
|
+
*
|
|
1576
|
+
* @since 3.4.0
|
|
1577
|
+
* @experimental
|
|
1578
|
+
* @category error handling
|
|
1579
|
+
*/
|
|
1580
|
+
export const catchIf = /*#__PURE__*/dual(3, (self, predicate, f) => catchCauseIf(self, f => causeIsFail(f) && predicate(f.error), fail => f(fail.error)));
|
|
1581
|
+
/**
|
|
1582
|
+
* Recovers from the specified tagged error.
|
|
1583
|
+
*
|
|
1584
|
+
* @since 3.4.0
|
|
1585
|
+
* @experimental
|
|
1586
|
+
* @category error handling
|
|
1587
|
+
*/
|
|
1588
|
+
export const catchTag = /*#__PURE__*/dual(3, (self, k, f) => catchIf(self, isTagged(k), f));
|
|
1589
|
+
/**
|
|
1590
|
+
* Transform the full `MicroCause` object of the given `Micro` effect.
|
|
1591
|
+
*
|
|
1592
|
+
* @since 3.4.6
|
|
1593
|
+
* @experimental
|
|
1594
|
+
* @category error handling
|
|
1595
|
+
*/
|
|
1596
|
+
export const mapErrorCause = /*#__PURE__*/dual(2, (self, f) => catchAllCause(self, cause => failCause(f(cause))));
|
|
1597
|
+
/**
|
|
1598
|
+
* Transform any expected errors of the given `Micro` effect.
|
|
1599
|
+
*
|
|
1600
|
+
* @since 3.4.0
|
|
1601
|
+
* @experimental
|
|
1602
|
+
* @category error handling
|
|
1603
|
+
*/
|
|
1604
|
+
export const mapError = /*#__PURE__*/dual(2, (self, f) => catchAll(self, error => fail(f(error))));
|
|
1605
|
+
/**
|
|
1606
|
+
* Elevate any expected errors of the given `Micro` effect to unexpected errors,
|
|
1607
|
+
* resulting in an error type of `never`.
|
|
1608
|
+
*
|
|
1609
|
+
* @since 3.4.0
|
|
1610
|
+
* @experimental
|
|
1611
|
+
* @category error handling
|
|
1612
|
+
*/
|
|
1613
|
+
export const orDie = self => catchAll(self, die);
|
|
1614
|
+
/**
|
|
1615
|
+
* Recover from all errors by succeeding with the given value.
|
|
1616
|
+
*
|
|
1617
|
+
* @since 3.4.0
|
|
1618
|
+
* @experimental
|
|
1619
|
+
* @category error handling
|
|
1620
|
+
*/
|
|
1621
|
+
export const orElseSucceed = /*#__PURE__*/dual(2, (self, f) => catchAll(self, _ => sync(f)));
|
|
1622
|
+
/**
|
|
1623
|
+
* Ignore any expected errors of the given `Micro` effect, returning `void`.
|
|
1624
|
+
*
|
|
1625
|
+
* @since 3.4.0
|
|
1626
|
+
* @experimental
|
|
1627
|
+
* @category error handling
|
|
1628
|
+
*/
|
|
1629
|
+
export const ignore = self => matchEffect(self, {
|
|
1630
|
+
onFailure: _ => void_,
|
|
1631
|
+
onSuccess: _ => void_
|
|
1632
|
+
});
|
|
1633
|
+
/**
|
|
1634
|
+
* Ignore any expected errors of the given `Micro` effect, returning `void`.
|
|
1635
|
+
*
|
|
1636
|
+
* @since 3.4.0
|
|
1637
|
+
* @experimental
|
|
1638
|
+
* @category error handling
|
|
1639
|
+
*/
|
|
1640
|
+
export const ignoreLogged = self => matchEffect(self, {
|
|
1641
|
+
// eslint-disable-next-line no-console
|
|
1642
|
+
onFailure: error => sync(() => console.error(error)),
|
|
1643
|
+
onSuccess: _ => void_
|
|
1644
|
+
});
|
|
1645
|
+
/**
|
|
1646
|
+
* Replace the success value of the given `Micro` effect with an `Option`,
|
|
1647
|
+
* wrapping the success value in `Some` and returning `None` if the effect fails
|
|
1648
|
+
* with an expected error.
|
|
1649
|
+
*
|
|
1650
|
+
* @since 3.4.0
|
|
1651
|
+
* @experimental
|
|
1652
|
+
* @category error handling
|
|
1653
|
+
*/
|
|
1654
|
+
export const option = self => match(self, {
|
|
1655
|
+
onFailure: Option.none,
|
|
1656
|
+
onSuccess: Option.some
|
|
1657
|
+
});
|
|
1658
|
+
/**
|
|
1659
|
+
* Replace the success value of the given `Micro` effect with an `Either`,
|
|
1660
|
+
* wrapping the success value in `Right` and wrapping any expected errors with
|
|
1661
|
+
* a `Left`.
|
|
1662
|
+
*
|
|
1663
|
+
* @since 3.4.0
|
|
1664
|
+
* @experimental
|
|
1665
|
+
* @category error handling
|
|
1666
|
+
*/
|
|
1667
|
+
export const either = self => match(self, {
|
|
1668
|
+
onFailure: Either.left,
|
|
1669
|
+
onSuccess: Either.right
|
|
1670
|
+
});
|
|
1671
|
+
/**
|
|
1672
|
+
* Retry the given `Micro` effect using the provided options.
|
|
1673
|
+
*
|
|
1674
|
+
* @since 3.4.0
|
|
1675
|
+
* @experimental
|
|
1676
|
+
* @category error handling
|
|
1677
|
+
*/
|
|
1678
|
+
export const retry = /*#__PURE__*/dual(args => isMicro(args[0]), (self, options) => repeatExit(self, {
|
|
1679
|
+
...options,
|
|
1680
|
+
while: exit => exit._tag === "Failure" && exit.cause._tag === "Fail" && (options?.while === undefined || options.while(exit.cause.error))
|
|
1681
|
+
}));
|
|
1682
|
+
/**
|
|
1683
|
+
* Add a stack trace to any failures that occur in the effect. The trace will be
|
|
1684
|
+
* added to the `traces` field of the `MicroCause` object.
|
|
1685
|
+
*
|
|
1686
|
+
* @since 3.4.0
|
|
1687
|
+
* @experimental
|
|
1688
|
+
* @category error handling
|
|
1689
|
+
*/
|
|
1690
|
+
export const withTrace = function () {
|
|
1691
|
+
const prevLimit = globalThis.Error.stackTraceLimit;
|
|
1692
|
+
globalThis.Error.stackTraceLimit = 2;
|
|
1693
|
+
const error = new globalThis.Error();
|
|
1694
|
+
globalThis.Error.stackTraceLimit = prevLimit;
|
|
1695
|
+
function generate(name, cause) {
|
|
1696
|
+
const stack = error.stack;
|
|
1697
|
+
if (!stack) {
|
|
1698
|
+
return cause;
|
|
1699
|
+
}
|
|
1700
|
+
const line = stack.split("\n")[2]?.trim().replace(/^at /, "");
|
|
1701
|
+
if (!line) {
|
|
1702
|
+
return cause;
|
|
1703
|
+
}
|
|
1704
|
+
const lineMatch = line.match(/\((.*)\)$/);
|
|
1705
|
+
return causeWithTrace(cause, `at ${name} (${lineMatch ? lineMatch[1] : line})`);
|
|
1706
|
+
}
|
|
1707
|
+
const f = name => self => onError(self, cause => failCause(generate(name, cause)));
|
|
1708
|
+
if (arguments.length === 2) {
|
|
1709
|
+
return f(arguments[1])(arguments[0]);
|
|
1710
|
+
}
|
|
1711
|
+
return f(arguments[0]);
|
|
1712
|
+
};
|
|
1713
|
+
// ----------------------------------------------------------------------------
|
|
1714
|
+
// pattern matching
|
|
1715
|
+
// ----------------------------------------------------------------------------
|
|
1716
|
+
/**
|
|
1717
|
+
* @since 3.4.6
|
|
1718
|
+
* @experimental
|
|
1719
|
+
* @category pattern matching
|
|
1720
|
+
*/
|
|
1721
|
+
export const matchCauseEffect = /*#__PURE__*/dual(2, (self, options) => {
|
|
1722
|
+
const primitive = Object.create(OnSuccessAndFailureProto);
|
|
1723
|
+
primitive[args] = self;
|
|
1724
|
+
primitive[successCont] = options.onSuccess;
|
|
1725
|
+
primitive[failureCont] = options.onFailure;
|
|
1726
|
+
return primitive;
|
|
1727
|
+
});
|
|
1728
|
+
const OnSuccessAndFailureProto = /*#__PURE__*/makePrimitiveProto({
|
|
1729
|
+
op: "OnSuccessAndFailure",
|
|
1730
|
+
eval(fiber) {
|
|
1731
|
+
fiber._stack.push(this);
|
|
1732
|
+
return this[args];
|
|
1733
|
+
}
|
|
1734
|
+
});
|
|
1735
|
+
/**
|
|
1736
|
+
* @since 3.4.6
|
|
1737
|
+
* @experimental
|
|
1738
|
+
* @category pattern matching
|
|
1739
|
+
*/
|
|
1740
|
+
export const matchCause = /*#__PURE__*/dual(2, (self, options) => matchCauseEffect(self, {
|
|
1741
|
+
onFailure: cause => sync(() => options.onFailure(cause)),
|
|
1742
|
+
onSuccess: value => sync(() => options.onSuccess(value))
|
|
1743
|
+
}));
|
|
1744
|
+
/**
|
|
1745
|
+
* @since 3.4.6
|
|
1746
|
+
* @experimental
|
|
1747
|
+
* @category pattern matching
|
|
1748
|
+
*/
|
|
1749
|
+
export const matchEffect = /*#__PURE__*/dual(2, (self, options) => matchCauseEffect(self, {
|
|
1750
|
+
onFailure: cause => cause._tag === "Fail" ? options.onFailure(cause.error) : failCause(cause),
|
|
1751
|
+
onSuccess: options.onSuccess
|
|
1752
|
+
}));
|
|
1753
|
+
/**
|
|
1754
|
+
* @since 3.4.0
|
|
1755
|
+
* @experimental
|
|
1756
|
+
* @category pattern matching
|
|
1757
|
+
*/
|
|
1758
|
+
export const match = /*#__PURE__*/dual(2, (self, options) => matchEffect(self, {
|
|
1759
|
+
onFailure: error => sync(() => options.onFailure(error)),
|
|
1760
|
+
onSuccess: value => sync(() => options.onSuccess(value))
|
|
1761
|
+
}));
|
|
1762
|
+
// ----------------------------------------------------------------------------
|
|
1763
|
+
// delays & timeouts
|
|
1764
|
+
// ----------------------------------------------------------------------------
|
|
1765
|
+
/**
|
|
1766
|
+
* Create a `Micro` effect that will sleep for the specified duration.
|
|
1767
|
+
*
|
|
1768
|
+
* @since 3.4.0
|
|
1769
|
+
* @experimental
|
|
1770
|
+
* @category delays & timeouts
|
|
1771
|
+
*/
|
|
1772
|
+
export const sleep = millis => async(resume => {
|
|
1773
|
+
const timeout = setTimeout(() => {
|
|
1774
|
+
resume(void_);
|
|
1775
|
+
}, millis);
|
|
1776
|
+
return sync(() => {
|
|
1777
|
+
clearTimeout(timeout);
|
|
1778
|
+
});
|
|
1779
|
+
});
|
|
1780
|
+
/**
|
|
1781
|
+
* Returns an effect that will delay the execution of this effect by the
|
|
1782
|
+
* specified duration.
|
|
1783
|
+
*
|
|
1784
|
+
* @since 3.4.0
|
|
1785
|
+
* @experimental
|
|
1786
|
+
* @category delays & timeouts
|
|
1787
|
+
*/
|
|
1788
|
+
export const delay = /*#__PURE__*/dual(2, (self, millis) => andThen(sleep(millis), self));
|
|
1789
|
+
/**
|
|
1790
|
+
* Returns an effect that will timeout this effect, that will execute the
|
|
1791
|
+
* fallback effect if the timeout elapses before the effect has produced a value.
|
|
1792
|
+
*
|
|
1793
|
+
* If the timeout elapses, the running effect will be safely interrupted.
|
|
1794
|
+
*
|
|
1795
|
+
* @since 3.4.0
|
|
1796
|
+
* @experimental
|
|
1797
|
+
* @category delays & timeouts
|
|
1798
|
+
*/
|
|
1799
|
+
export const timeoutOrElse = /*#__PURE__*/dual(2, (self, options) => raceFirst(self, andThen(interruptible(sleep(options.duration)), options.onTimeout)));
|
|
1800
|
+
/**
|
|
1801
|
+
* Returns an effect that will timeout this effect, that will fail with a
|
|
1802
|
+
* `TimeoutException` if the timeout elapses before the effect has produced a
|
|
1803
|
+
* value.
|
|
1804
|
+
*
|
|
1805
|
+
* If the timeout elapses, the running effect will be safely interrupted.
|
|
1806
|
+
*
|
|
1807
|
+
* @since 3.4.0
|
|
1808
|
+
* @experimental
|
|
1809
|
+
* @category delays & timeouts
|
|
1810
|
+
*/
|
|
1811
|
+
export const timeout = /*#__PURE__*/dual(2, (self, millis) => timeoutOrElse(self, {
|
|
1812
|
+
duration: millis,
|
|
1813
|
+
onTimeout: () => fail(new TimeoutException())
|
|
1814
|
+
}));
|
|
1815
|
+
/**
|
|
1816
|
+
* Returns an effect that will timeout this effect, succeeding with a `None`
|
|
1817
|
+
* if the timeout elapses before the effect has produced a value; and `Some` of
|
|
1818
|
+
* the produced value otherwise.
|
|
1819
|
+
*
|
|
1820
|
+
* If the timeout elapses, the running effect will be safely interrupted.
|
|
1821
|
+
*
|
|
1822
|
+
* @since 3.4.0
|
|
1823
|
+
* @experimental
|
|
1824
|
+
* @category delays & timeouts
|
|
1825
|
+
*/
|
|
1826
|
+
export const timeoutOption = /*#__PURE__*/dual(2, (self, millis) => raceFirst(asSome(self), as(interruptible(sleep(millis)), Option.none())));
|
|
1827
|
+
// ----------------------------------------------------------------------------
|
|
1828
|
+
// resources & finalization
|
|
1829
|
+
// ----------------------------------------------------------------------------
|
|
1830
|
+
/**
|
|
1831
|
+
* @since 3.4.0
|
|
1832
|
+
* @experimental
|
|
1833
|
+
* @category resources & finalization
|
|
1834
|
+
*/
|
|
1835
|
+
export const MicroScopeTypeId = /*#__PURE__*/Symbol.for("effect/Micro/MicroScope");
|
|
1836
|
+
/**
|
|
1837
|
+
* @since 3.4.0
|
|
1838
|
+
* @experimental
|
|
1839
|
+
* @category resources & finalization
|
|
1840
|
+
*/
|
|
1841
|
+
export const MicroScope = /*#__PURE__*/Context.GenericTag("effect/Micro/MicroScope");
|
|
1842
|
+
class MicroScopeImpl {
|
|
1843
|
+
[MicroScopeTypeId];
|
|
1844
|
+
state = {
|
|
1845
|
+
_tag: "Open",
|
|
1846
|
+
finalizers: /*#__PURE__*/new Set()
|
|
1847
|
+
};
|
|
1848
|
+
constructor() {
|
|
1849
|
+
this[MicroScopeTypeId] = MicroScopeTypeId;
|
|
1850
|
+
}
|
|
1851
|
+
unsafeAddFinalizer(finalizer) {
|
|
1852
|
+
if (this.state._tag === "Open") {
|
|
1853
|
+
this.state.finalizers.add(finalizer);
|
|
1854
|
+
}
|
|
1855
|
+
}
|
|
1856
|
+
addFinalizer(finalizer) {
|
|
1857
|
+
return suspend(() => {
|
|
1858
|
+
if (this.state._tag === "Open") {
|
|
1859
|
+
this.state.finalizers.add(finalizer);
|
|
1860
|
+
return void_;
|
|
1861
|
+
}
|
|
1862
|
+
return finalizer(this.state.exit);
|
|
1863
|
+
});
|
|
1864
|
+
}
|
|
1865
|
+
unsafeRemoveFinalizer(finalizer) {
|
|
1866
|
+
if (this.state._tag === "Open") {
|
|
1867
|
+
this.state.finalizers.delete(finalizer);
|
|
1868
|
+
}
|
|
1869
|
+
}
|
|
1870
|
+
close(microExit) {
|
|
1871
|
+
return suspend(() => {
|
|
1872
|
+
if (this.state._tag === "Open") {
|
|
1873
|
+
const finalizers = Array.from(this.state.finalizers).reverse();
|
|
1874
|
+
this.state = {
|
|
1875
|
+
_tag: "Closed",
|
|
1876
|
+
exit: microExit
|
|
1877
|
+
};
|
|
1878
|
+
return flatMap(forEach(finalizers, finalizer => exit(finalizer(microExit))), exitVoidAll);
|
|
1879
|
+
}
|
|
1880
|
+
return void_;
|
|
1881
|
+
});
|
|
1882
|
+
}
|
|
1883
|
+
get fork() {
|
|
1884
|
+
return sync(() => {
|
|
1885
|
+
const newScope = new MicroScopeImpl();
|
|
1886
|
+
if (this.state._tag === "Closed") {
|
|
1887
|
+
newScope.state = this.state;
|
|
1888
|
+
return newScope;
|
|
1889
|
+
}
|
|
1890
|
+
function fin(exit) {
|
|
1891
|
+
return newScope.close(exit);
|
|
1892
|
+
}
|
|
1893
|
+
this.state.finalizers.add(fin);
|
|
1894
|
+
newScope.unsafeAddFinalizer(_ => sync(() => this.unsafeRemoveFinalizer(fin)));
|
|
1895
|
+
return newScope;
|
|
1896
|
+
});
|
|
1897
|
+
}
|
|
1898
|
+
}
|
|
1899
|
+
/**
|
|
1900
|
+
* @since 3.4.0
|
|
1901
|
+
* @experimental
|
|
1902
|
+
* @category resources & finalization
|
|
1903
|
+
*/
|
|
1904
|
+
export const scopeMake = /*#__PURE__*/sync(() => new MicroScopeImpl());
|
|
1905
|
+
/**
|
|
1906
|
+
* @since 3.4.0
|
|
1907
|
+
* @experimental
|
|
1908
|
+
* @category resources & finalization
|
|
1909
|
+
*/
|
|
1910
|
+
export const scopeUnsafeMake = () => new MicroScopeImpl();
|
|
1911
|
+
/**
|
|
1912
|
+
* Access the current `MicroScope`.
|
|
1913
|
+
*
|
|
1914
|
+
* @since 3.4.0
|
|
1915
|
+
* @experimental
|
|
1916
|
+
* @category resources & finalization
|
|
1917
|
+
*/
|
|
1918
|
+
export const scope = /*#__PURE__*/service(MicroScope);
|
|
1919
|
+
/**
|
|
1920
|
+
* Provide a `MicroScope` to an effect.
|
|
1921
|
+
*
|
|
1922
|
+
* @since 3.4.0
|
|
1923
|
+
* @experimental
|
|
1924
|
+
* @category resources & finalization
|
|
1925
|
+
*/
|
|
1926
|
+
export const provideScope = /*#__PURE__*/dual(2, (self, scope) => provideService(self, MicroScope, scope));
|
|
1927
|
+
/**
|
|
1928
|
+
* Provide a `MicroScope` to the given effect, closing it after the effect has
|
|
1929
|
+
* finished executing.
|
|
1930
|
+
*
|
|
1931
|
+
* @since 3.4.0
|
|
1932
|
+
* @experimental
|
|
1933
|
+
* @category resources & finalization
|
|
1934
|
+
*/
|
|
1935
|
+
export const scoped = self => suspend(() => {
|
|
1936
|
+
const scope = new MicroScopeImpl();
|
|
1937
|
+
return onExit(provideService(self, MicroScope, scope), exit => scope.close(exit));
|
|
1938
|
+
});
|
|
1939
|
+
/**
|
|
1940
|
+
* Create a resource with a cleanup `Micro` effect, ensuring the cleanup is
|
|
1941
|
+
* executed when the `MicroScope` is closed.
|
|
1942
|
+
*
|
|
1943
|
+
* @since 3.4.0
|
|
1944
|
+
* @experimental
|
|
1945
|
+
* @category resources & finalization
|
|
1946
|
+
*/
|
|
1947
|
+
export const acquireRelease = (acquire, release) => uninterruptible(flatMap(scope, scope => tap(acquire, a => scope.addFinalizer(exit => release(a, exit)))));
|
|
1948
|
+
/**
|
|
1949
|
+
* Add a finalizer to the current `MicroScope`.
|
|
1950
|
+
*
|
|
1951
|
+
* @since 3.4.0
|
|
1952
|
+
* @experimental
|
|
1953
|
+
* @category resources & finalization
|
|
1954
|
+
*/
|
|
1955
|
+
export const addFinalizer = finalizer => flatMap(scope, scope => scope.addFinalizer(finalizer));
|
|
1956
|
+
/**
|
|
1957
|
+
* When the `Micro` effect is completed, run the given finalizer effect with the
|
|
1958
|
+
* `MicroExit` of the executed effect.
|
|
1959
|
+
*
|
|
1960
|
+
* @since 3.4.6
|
|
1961
|
+
* @experimental
|
|
1962
|
+
* @category resources & finalization
|
|
1963
|
+
*/
|
|
1964
|
+
export const onExit = /*#__PURE__*/dual(2, (self, f) => uninterruptibleMask(restore => matchCauseEffect(restore(self), {
|
|
1965
|
+
onFailure: cause => flatMap(f(exitFailCause(cause)), () => failCause(cause)),
|
|
1966
|
+
onSuccess: a => flatMap(f(exitSucceed(a)), () => succeed(a))
|
|
1967
|
+
})));
|
|
1968
|
+
/**
|
|
1969
|
+
* Regardless of the result of the this `Micro` effect, run the finalizer effect.
|
|
1970
|
+
*
|
|
1971
|
+
* @since 3.4.0
|
|
1972
|
+
* @experimental
|
|
1973
|
+
* @category resources & finalization
|
|
1974
|
+
*/
|
|
1975
|
+
export const ensuring = /*#__PURE__*/dual(2, (self, finalizer) => onExit(self, _ => finalizer));
|
|
1976
|
+
/**
|
|
1977
|
+
* When the `Micro` effect is completed, run the given finalizer effect if it
|
|
1978
|
+
* matches the specified predicate.
|
|
1979
|
+
*
|
|
1980
|
+
* @since 3.4.6
|
|
1981
|
+
* @experimental
|
|
1982
|
+
* @category resources & finalization
|
|
1983
|
+
*/
|
|
1984
|
+
export const onExitIf = /*#__PURE__*/dual(3, (self, refinement, f) => onExit(self, exit => refinement(exit) ? f(exit) : exitVoid));
|
|
1985
|
+
/**
|
|
1986
|
+
* When the `Micro` effect fails, run the given finalizer effect with the
|
|
1987
|
+
* `MicroCause` of the executed effect.
|
|
1988
|
+
*
|
|
1989
|
+
* @since 3.4.6
|
|
1990
|
+
* @experimental
|
|
1991
|
+
* @category resources & finalization
|
|
1992
|
+
*/
|
|
1993
|
+
export const onError = /*#__PURE__*/dual(2, (self, f) => onExitIf(self, exitIsFailure, exit => f(exit.cause)));
|
|
1994
|
+
/**
|
|
1995
|
+
* If this `Micro` effect is aborted, run the finalizer effect.
|
|
1996
|
+
*
|
|
1997
|
+
* @since 3.4.6
|
|
1998
|
+
* @experimental
|
|
1999
|
+
* @category resources & finalization
|
|
2000
|
+
*/
|
|
2001
|
+
export const onInterrupt = /*#__PURE__*/dual(2, (self, finalizer) => onExitIf(self, exitIsInterrupt, _ => finalizer));
|
|
2002
|
+
/**
|
|
2003
|
+
* Acquire a resource, use it, and then release the resource when the `use`
|
|
2004
|
+
* effect has completed.
|
|
2005
|
+
*
|
|
2006
|
+
* @since 3.4.0
|
|
2007
|
+
* @experimental
|
|
2008
|
+
* @category resources & finalization
|
|
2009
|
+
*/
|
|
2010
|
+
export const acquireUseRelease = (acquire, use, release) => uninterruptibleMask(restore => flatMap(acquire, a => flatMap(exit(restore(use(a))), exit => andThen(release(a, exit), exit))));
|
|
2011
|
+
// ----------------------------------------------------------------------------
|
|
2012
|
+
// interruption
|
|
2013
|
+
// ----------------------------------------------------------------------------
|
|
2014
|
+
/**
|
|
2015
|
+
* Abort the current `Micro` effect.
|
|
2016
|
+
*
|
|
2017
|
+
* @since 3.4.6
|
|
2018
|
+
* @experimental
|
|
2019
|
+
* @category interruption
|
|
2020
|
+
*/
|
|
2021
|
+
export const interrupt = /*#__PURE__*/failCause(/*#__PURE__*/causeInterrupt());
|
|
2022
|
+
/**
|
|
2023
|
+
* Flag the effect as uninterruptible, which means that when the effect is
|
|
2024
|
+
* interrupted, it will be allowed to continue running until completion.
|
|
2025
|
+
*
|
|
2026
|
+
* @since 3.4.0
|
|
2027
|
+
* @experimental
|
|
2028
|
+
* @category flags
|
|
2029
|
+
*/
|
|
2030
|
+
export const uninterruptible = self => withMicroFiber(fiber => {
|
|
2031
|
+
if (!fiber.interruptible) return self;
|
|
2032
|
+
fiber.interruptible = false;
|
|
2033
|
+
fiber._stack.push(setInterruptible(true));
|
|
2034
|
+
return self;
|
|
2035
|
+
});
|
|
2036
|
+
const setInterruptible = /*#__PURE__*/makePrimitive({
|
|
2037
|
+
op: "SetInterruptible",
|
|
2038
|
+
ensure(fiber) {
|
|
2039
|
+
fiber.interruptible = this[args];
|
|
2040
|
+
if (fiber._interrupted && fiber.interruptible) {
|
|
2041
|
+
return () => exitInterrupt;
|
|
2042
|
+
}
|
|
2043
|
+
}
|
|
2044
|
+
});
|
|
2045
|
+
/**
|
|
2046
|
+
* Flag the effect as interruptible, which means that when the effect is
|
|
2047
|
+
* interrupted, it will be interrupted immediately.
|
|
2048
|
+
*
|
|
2049
|
+
* @since 3.4.0
|
|
2050
|
+
* @experimental
|
|
2051
|
+
* @category flags
|
|
2052
|
+
*/
|
|
2053
|
+
export const interruptible = self => withMicroFiber(fiber => {
|
|
2054
|
+
if (fiber.interruptible) return self;
|
|
2055
|
+
fiber.interruptible = true;
|
|
2056
|
+
fiber._stack.push(setInterruptible(false));
|
|
2057
|
+
if (fiber._interrupted) return exitInterrupt;
|
|
2058
|
+
return self;
|
|
2059
|
+
});
|
|
2060
|
+
/**
|
|
2061
|
+
* Wrap the given `Micro` effect in an uninterruptible region, preventing the
|
|
2062
|
+
* effect from being aborted.
|
|
2063
|
+
*
|
|
2064
|
+
* You can use the `restore` function to restore a `Micro` effect to the
|
|
2065
|
+
* interruptibility state before the `uninterruptibleMask` was applied.
|
|
2066
|
+
*
|
|
2067
|
+
* @example
|
|
2068
|
+
* ```ts
|
|
2069
|
+
* import * as Micro from "effect/Micro"
|
|
2070
|
+
*
|
|
2071
|
+
* Micro.uninterruptibleMask((restore) =>
|
|
2072
|
+
* Micro.sleep(1000).pipe( // uninterruptible
|
|
2073
|
+
* Micro.andThen(restore(Micro.sleep(1000))) // interruptible
|
|
2074
|
+
* )
|
|
2075
|
+
* )
|
|
2076
|
+
* ```
|
|
2077
|
+
*
|
|
2078
|
+
* @since 3.4.0
|
|
2079
|
+
* @experimental
|
|
2080
|
+
* @category interruption
|
|
2081
|
+
*/
|
|
2082
|
+
export const uninterruptibleMask = f => withMicroFiber(fiber => {
|
|
2083
|
+
if (!fiber.interruptible) return f(identity);
|
|
2084
|
+
fiber.interruptible = false;
|
|
2085
|
+
fiber._stack.push(setInterruptible(true));
|
|
2086
|
+
return f(interruptible);
|
|
2087
|
+
});
|
|
2088
|
+
/**
|
|
2089
|
+
* Runs all the provided effects in sequence respecting the structure provided in input.
|
|
2090
|
+
*
|
|
2091
|
+
* Supports multiple arguments, a single argument tuple / array or record / struct.
|
|
2092
|
+
*
|
|
2093
|
+
* @since 3.4.0
|
|
2094
|
+
* @experimental
|
|
2095
|
+
* @category collecting & elements
|
|
2096
|
+
*/
|
|
2097
|
+
export const all = (arg, options) => {
|
|
2098
|
+
if (Array.isArray(arg) || isIterable(arg)) {
|
|
2099
|
+
return forEach(arg, identity, options);
|
|
2100
|
+
} else if (options?.discard) {
|
|
2101
|
+
return forEach(Object.values(arg), identity, options);
|
|
2102
|
+
}
|
|
2103
|
+
return suspend(() => {
|
|
2104
|
+
const out = {};
|
|
2105
|
+
return as(forEach(Object.entries(arg), ([key, effect]) => map(effect, value => {
|
|
2106
|
+
out[key] = value;
|
|
2107
|
+
}), {
|
|
2108
|
+
discard: true,
|
|
2109
|
+
concurrency: options?.concurrency
|
|
2110
|
+
}), out);
|
|
2111
|
+
});
|
|
2112
|
+
};
|
|
2113
|
+
/**
|
|
2114
|
+
* @since 3.11.0
|
|
2115
|
+
* @experimental
|
|
2116
|
+
* @category collecting & elements
|
|
2117
|
+
*/
|
|
2118
|
+
export const whileLoop = /*#__PURE__*/makePrimitive({
|
|
2119
|
+
op: "While",
|
|
2120
|
+
contA(value, fiber) {
|
|
2121
|
+
this[args].step(value);
|
|
2122
|
+
if (this[args].while()) {
|
|
2123
|
+
fiber._stack.push(this);
|
|
2124
|
+
return this[args].body();
|
|
2125
|
+
}
|
|
2126
|
+
return exitVoid;
|
|
2127
|
+
},
|
|
2128
|
+
eval(fiber) {
|
|
2129
|
+
if (this[args].while()) {
|
|
2130
|
+
fiber._stack.push(this);
|
|
2131
|
+
return this[args].body();
|
|
2132
|
+
}
|
|
2133
|
+
return exitVoid;
|
|
2134
|
+
}
|
|
2135
|
+
});
|
|
2136
|
+
/**
|
|
2137
|
+
* For each element of the provided iterable, run the effect and collect the
|
|
2138
|
+
* results.
|
|
2139
|
+
*
|
|
2140
|
+
* If the `discard` option is set to `true`, the results will be discarded and
|
|
2141
|
+
* the effect will return `void`.
|
|
2142
|
+
*
|
|
2143
|
+
* The `concurrency` option can be set to control how many effects are run
|
|
2144
|
+
* concurrently. By default, the effects are run sequentially.
|
|
2145
|
+
*
|
|
2146
|
+
* @since 3.4.0
|
|
2147
|
+
* @experimental
|
|
2148
|
+
* @category collecting & elements
|
|
2149
|
+
*/
|
|
2150
|
+
export const forEach = (iterable, f, options) => withMicroFiber(parent => {
|
|
2151
|
+
const concurrencyOption = options?.concurrency === "inherit" ? parent.getRef(CurrentConcurrency) : options?.concurrency ?? 1;
|
|
2152
|
+
const concurrency = concurrencyOption === "unbounded" ? Number.POSITIVE_INFINITY : Math.max(1, concurrencyOption);
|
|
2153
|
+
const items = Arr.fromIterable(iterable);
|
|
2154
|
+
let length = items.length;
|
|
2155
|
+
if (length === 0) {
|
|
2156
|
+
return options?.discard ? void_ : succeed([]);
|
|
2157
|
+
}
|
|
2158
|
+
const out = options?.discard ? undefined : new Array(length);
|
|
2159
|
+
let index = 0;
|
|
2160
|
+
if (concurrency === 1) {
|
|
2161
|
+
return as(whileLoop({
|
|
2162
|
+
while: () => index < items.length,
|
|
2163
|
+
body: () => f(items[index], index),
|
|
2164
|
+
step: out ? b => out[index++] = b : _ => index++
|
|
2165
|
+
}), out);
|
|
2166
|
+
}
|
|
2167
|
+
return async(resume => {
|
|
2168
|
+
const fibers = new Set();
|
|
2169
|
+
let result = undefined;
|
|
2170
|
+
let inProgress = 0;
|
|
2171
|
+
let doneCount = 0;
|
|
2172
|
+
let pumping = false;
|
|
2173
|
+
let interrupted = false;
|
|
2174
|
+
function pump() {
|
|
2175
|
+
pumping = true;
|
|
2176
|
+
while (inProgress < concurrency && index < length) {
|
|
2177
|
+
const currentIndex = index;
|
|
2178
|
+
const item = items[currentIndex];
|
|
2179
|
+
index++;
|
|
2180
|
+
inProgress++;
|
|
2181
|
+
try {
|
|
2182
|
+
const child = unsafeFork(parent, f(item, currentIndex), true, true);
|
|
2183
|
+
fibers.add(child);
|
|
2184
|
+
child.addObserver(exit => {
|
|
2185
|
+
fibers.delete(child);
|
|
2186
|
+
if (interrupted) {
|
|
2187
|
+
return;
|
|
2188
|
+
} else if (exit._tag === "Failure") {
|
|
2189
|
+
if (result === undefined) {
|
|
2190
|
+
result = exit;
|
|
2191
|
+
length = index;
|
|
2192
|
+
fibers.forEach(fiber => fiber.unsafeInterrupt());
|
|
2193
|
+
}
|
|
2194
|
+
} else if (out !== undefined) {
|
|
2195
|
+
out[currentIndex] = exit.value;
|
|
2196
|
+
}
|
|
2197
|
+
doneCount++;
|
|
2198
|
+
inProgress--;
|
|
2199
|
+
if (doneCount === length) {
|
|
2200
|
+
resume(result ?? succeed(out));
|
|
2201
|
+
} else if (!pumping && inProgress < concurrency) {
|
|
2202
|
+
pump();
|
|
2203
|
+
}
|
|
2204
|
+
});
|
|
2205
|
+
} catch (err) {
|
|
2206
|
+
result = exitDie(err);
|
|
2207
|
+
length = index;
|
|
2208
|
+
fibers.forEach(fiber => fiber.unsafeInterrupt());
|
|
2209
|
+
}
|
|
2210
|
+
}
|
|
2211
|
+
pumping = false;
|
|
2212
|
+
}
|
|
2213
|
+
pump();
|
|
2214
|
+
return suspend(() => {
|
|
2215
|
+
interrupted = true;
|
|
2216
|
+
index = length;
|
|
2217
|
+
return fiberInterruptAll(fibers);
|
|
2218
|
+
});
|
|
2219
|
+
});
|
|
2220
|
+
});
|
|
2221
|
+
/**
|
|
2222
|
+
* Effectfully filter the elements of the provided iterable.
|
|
2223
|
+
*
|
|
2224
|
+
* Use the `concurrency` option to control how many elements are processed
|
|
2225
|
+
* concurrently.
|
|
2226
|
+
*
|
|
2227
|
+
* @since 3.4.0
|
|
2228
|
+
* @experimental
|
|
2229
|
+
* @category collecting & elements
|
|
2230
|
+
*/
|
|
2231
|
+
export const filter = (iterable, f, options) => filterMap(iterable, a => map(f(a), pass => {
|
|
2232
|
+
pass = options?.negate ? !pass : pass;
|
|
2233
|
+
return pass ? Option.some(a) : Option.none();
|
|
2234
|
+
}), options);
|
|
2235
|
+
/**
|
|
2236
|
+
* Effectfully filter the elements of the provided iterable.
|
|
2237
|
+
*
|
|
2238
|
+
* Use the `concurrency` option to control how many elements are processed
|
|
2239
|
+
* concurrently.
|
|
2240
|
+
*
|
|
2241
|
+
* @since 3.4.0
|
|
2242
|
+
* @experimental
|
|
2243
|
+
* @category collecting & elements
|
|
2244
|
+
*/
|
|
2245
|
+
export const filterMap = (iterable, f, options) => suspend(() => {
|
|
2246
|
+
const out = [];
|
|
2247
|
+
return as(forEach(iterable, a => map(f(a), o => {
|
|
2248
|
+
if (o._tag === "Some") {
|
|
2249
|
+
out.push(o.value);
|
|
2250
|
+
}
|
|
2251
|
+
}), {
|
|
2252
|
+
discard: true,
|
|
2253
|
+
concurrency: options?.concurrency
|
|
2254
|
+
}), out);
|
|
2255
|
+
});
|
|
2256
|
+
// ----------------------------------------------------------------------------
|
|
2257
|
+
// do notation
|
|
2258
|
+
// ----------------------------------------------------------------------------
|
|
2259
|
+
/**
|
|
2260
|
+
* Start a do notation block.
|
|
2261
|
+
*
|
|
2262
|
+
* @since 3.4.0
|
|
2263
|
+
* @experimental
|
|
2264
|
+
* @category do notation
|
|
2265
|
+
*/
|
|
2266
|
+
export const Do = /*#__PURE__*/succeed({});
|
|
2267
|
+
/**
|
|
2268
|
+
* Bind the success value of this `Micro` effect to the provided name.
|
|
2269
|
+
*
|
|
2270
|
+
* @since 3.4.0
|
|
2271
|
+
* @experimental
|
|
2272
|
+
* @category do notation
|
|
2273
|
+
*/
|
|
2274
|
+
export const bindTo = /*#__PURE__*/doNotation.bindTo(map);
|
|
2275
|
+
/**
|
|
2276
|
+
* Bind the success value of this `Micro` effect to the provided name.
|
|
2277
|
+
*
|
|
2278
|
+
* @since 3.4.0
|
|
2279
|
+
* @experimental
|
|
2280
|
+
* @category do notation
|
|
2281
|
+
*/
|
|
2282
|
+
export const bind = /*#__PURE__*/doNotation.bind(map, flatMap);
|
|
2283
|
+
const let_ = /*#__PURE__*/doNotation.let_(map);
|
|
2284
|
+
export {
|
|
2285
|
+
/**
|
|
2286
|
+
* Bind the result of a synchronous computation to the given name.
|
|
2287
|
+
*
|
|
2288
|
+
* @since 3.4.0
|
|
2289
|
+
* @experimental
|
|
2290
|
+
* @category do notation
|
|
2291
|
+
*/
|
|
2292
|
+
let_ as let };
|
|
2293
|
+
// ----------------------------------------------------------------------------
|
|
2294
|
+
// fibers & forking
|
|
2295
|
+
// ----------------------------------------------------------------------------
|
|
2296
|
+
/**
|
|
2297
|
+
* Run the `Micro` effect in a new `MicroFiber` that can be awaited, joined, or
|
|
2298
|
+
* aborted.
|
|
2299
|
+
*
|
|
2300
|
+
* When the parent `Micro` finishes, this `Micro` will be aborted.
|
|
2301
|
+
*
|
|
2302
|
+
* @since 3.4.0
|
|
2303
|
+
* @experimental
|
|
2304
|
+
* @category fiber & forking
|
|
2305
|
+
*/
|
|
2306
|
+
export const fork = self => withMicroFiber(fiber => {
|
|
2307
|
+
fiberMiddleware.interruptChildren ??= fiberInterruptChildren;
|
|
2308
|
+
return succeed(unsafeFork(fiber, self));
|
|
2309
|
+
});
|
|
2310
|
+
const unsafeFork = (parent, effect, immediate = false, daemon = false) => {
|
|
2311
|
+
const child = new MicroFiberImpl(parent.context, parent.interruptible);
|
|
2312
|
+
if (!daemon) {
|
|
2313
|
+
parent.children().add(child);
|
|
2314
|
+
child.addObserver(() => parent.children().delete(child));
|
|
2315
|
+
}
|
|
2316
|
+
if (immediate) {
|
|
2317
|
+
child.evaluate(effect);
|
|
2318
|
+
} else {
|
|
2319
|
+
parent.getRef(CurrentScheduler).scheduleTask(() => child.evaluate(effect), 0);
|
|
2320
|
+
}
|
|
2321
|
+
return child;
|
|
2322
|
+
};
|
|
2323
|
+
/**
|
|
2324
|
+
* Run the `Micro` effect in a new `MicroFiber` that can be awaited, joined, or
|
|
2325
|
+
* aborted.
|
|
2326
|
+
*
|
|
2327
|
+
* It will not be aborted when the parent `Micro` finishes.
|
|
2328
|
+
*
|
|
2329
|
+
* @since 3.4.0
|
|
2330
|
+
* @experimental
|
|
2331
|
+
* @category fiber & forking
|
|
2332
|
+
*/
|
|
2333
|
+
export const forkDaemon = self => withMicroFiber(fiber => succeed(unsafeFork(fiber, self, false, true)));
|
|
2334
|
+
/**
|
|
2335
|
+
* Run the `Micro` effect in a new `MicroFiber` that can be awaited, joined, or
|
|
2336
|
+
* aborted.
|
|
2337
|
+
*
|
|
2338
|
+
* The lifetime of the handle will be attached to the provided `MicroScope`.
|
|
2339
|
+
*
|
|
2340
|
+
* @since 3.4.0
|
|
2341
|
+
* @experimental
|
|
2342
|
+
* @category fiber & forking
|
|
2343
|
+
*/
|
|
2344
|
+
export const forkIn = /*#__PURE__*/dual(2, (self, scope) => uninterruptibleMask(restore => flatMap(scope.fork, scope => tap(restore(forkDaemon(onExit(self, exit => scope.close(exit)))), fiber => scope.addFinalizer(_ => fiberInterrupt(fiber))))));
|
|
2345
|
+
/**
|
|
2346
|
+
* Run the `Micro` effect in a new `MicroFiber` that can be awaited, joined, or
|
|
2347
|
+
* aborted.
|
|
2348
|
+
*
|
|
2349
|
+
* The lifetime of the handle will be attached to the current `MicroScope`.
|
|
2350
|
+
*
|
|
2351
|
+
* @since 3.4.0
|
|
2352
|
+
* @experimental
|
|
2353
|
+
* @category fiber & forking
|
|
2354
|
+
*/
|
|
2355
|
+
export const forkScoped = self => flatMap(scope, scope => forkIn(self, scope));
|
|
2356
|
+
// ----------------------------------------------------------------------------
|
|
2357
|
+
// execution
|
|
2358
|
+
// ----------------------------------------------------------------------------
|
|
2359
|
+
/**
|
|
2360
|
+
* Execute the `Micro` effect and return a `MicroFiber` that can be awaited, joined,
|
|
2361
|
+
* or aborted.
|
|
2362
|
+
*
|
|
2363
|
+
* You can listen for the result by adding an observer using the handle's
|
|
2364
|
+
* `addObserver` method.
|
|
2365
|
+
*
|
|
2366
|
+
* @example
|
|
2367
|
+
* ```ts
|
|
2368
|
+
* import * as Micro from "effect/Micro"
|
|
2369
|
+
*
|
|
2370
|
+
* const handle = Micro.succeed(42).pipe(
|
|
2371
|
+
* Micro.delay(1000),
|
|
2372
|
+
* Micro.runFork
|
|
2373
|
+
* )
|
|
2374
|
+
*
|
|
2375
|
+
* handle.addObserver((exit) => {
|
|
2376
|
+
* console.log(exit)
|
|
2377
|
+
* })
|
|
2378
|
+
* ```
|
|
2379
|
+
*
|
|
2380
|
+
* @since 3.4.0
|
|
2381
|
+
* @experimental
|
|
2382
|
+
* @category execution
|
|
2383
|
+
*/
|
|
2384
|
+
export const runFork = (effect, options) => {
|
|
2385
|
+
const fiber = new MicroFiberImpl(CurrentScheduler.context(options?.scheduler ?? new MicroSchedulerDefault()));
|
|
2386
|
+
fiber.evaluate(effect);
|
|
2387
|
+
if (options?.signal) {
|
|
2388
|
+
if (options.signal.aborted) {
|
|
2389
|
+
fiber.unsafeInterrupt();
|
|
2390
|
+
} else {
|
|
2391
|
+
const abort = () => fiber.unsafeInterrupt();
|
|
2392
|
+
options.signal.addEventListener("abort", abort, {
|
|
2393
|
+
once: true
|
|
2394
|
+
});
|
|
2395
|
+
fiber.addObserver(() => options.signal.removeEventListener("abort", abort));
|
|
2396
|
+
}
|
|
2397
|
+
}
|
|
2398
|
+
return fiber;
|
|
2399
|
+
};
|
|
2400
|
+
/**
|
|
2401
|
+
* Execute the `Micro` effect and return a `Promise` that resolves with the
|
|
2402
|
+
* `MicroExit` of the computation.
|
|
2403
|
+
*
|
|
2404
|
+
* @since 3.4.6
|
|
2405
|
+
* @experimental
|
|
2406
|
+
* @category execution
|
|
2407
|
+
*/
|
|
2408
|
+
export const runPromiseExit = (effect, options) => new Promise((resolve, _reject) => {
|
|
2409
|
+
const handle = runFork(effect, options);
|
|
2410
|
+
handle.addObserver(resolve);
|
|
2411
|
+
});
|
|
2412
|
+
/**
|
|
2413
|
+
* Execute the `Micro` effect and return a `Promise` that resolves with the
|
|
2414
|
+
* successful value of the computation.
|
|
2415
|
+
*
|
|
2416
|
+
* @since 3.4.0
|
|
2417
|
+
* @experimental
|
|
2418
|
+
* @category execution
|
|
2419
|
+
*/
|
|
2420
|
+
export const runPromise = (effect, options) => runPromiseExit(effect, options).then(exit => {
|
|
2421
|
+
if (exit._tag === "Failure") {
|
|
2422
|
+
throw exit.cause;
|
|
2423
|
+
}
|
|
2424
|
+
return exit.value;
|
|
2425
|
+
});
|
|
2426
|
+
/**
|
|
2427
|
+
* Attempt to execute the `Micro` effect synchronously and return the `MicroExit`.
|
|
2428
|
+
*
|
|
2429
|
+
* If any asynchronous effects are encountered, the function will return a
|
|
2430
|
+
* `CauseDie` containing the `MicroFiber`.
|
|
2431
|
+
*
|
|
2432
|
+
* @since 3.4.6
|
|
2433
|
+
* @experimental
|
|
2434
|
+
* @category execution
|
|
2435
|
+
*/
|
|
2436
|
+
export const runSyncExit = effect => {
|
|
2437
|
+
const scheduler = new MicroSchedulerDefault();
|
|
2438
|
+
const fiber = runFork(effect, {
|
|
2439
|
+
scheduler
|
|
2440
|
+
});
|
|
2441
|
+
scheduler.flush();
|
|
2442
|
+
return fiber._exit ?? exitDie(fiber);
|
|
2443
|
+
};
|
|
2444
|
+
/**
|
|
2445
|
+
* Attempt to execute the `Micro` effect synchronously and return the success
|
|
2446
|
+
* value.
|
|
2447
|
+
*
|
|
2448
|
+
* @since 3.4.0
|
|
2449
|
+
* @experimental
|
|
2450
|
+
* @category execution
|
|
2451
|
+
*/
|
|
2452
|
+
export const runSync = effect => {
|
|
2453
|
+
const exit = runSyncExit(effect);
|
|
2454
|
+
if (exit._tag === "Failure") throw exit.cause;
|
|
2455
|
+
return exit.value;
|
|
2456
|
+
};
|
|
2457
|
+
const YieldableError = /*#__PURE__*/function () {
|
|
2458
|
+
class YieldableError extends globalThis.Error {}
|
|
2459
|
+
// @effect-diagnostics-next-line floatingEffect:off
|
|
2460
|
+
Object.assign(YieldableError.prototype, MicroProto, StructuralPrototype, {
|
|
2461
|
+
[identifier]: "Failure",
|
|
2462
|
+
[evaluate]() {
|
|
2463
|
+
return fail(this);
|
|
2464
|
+
},
|
|
2465
|
+
toString() {
|
|
2466
|
+
return this.message ? `${this.name}: ${this.message}` : this.name;
|
|
2467
|
+
},
|
|
2468
|
+
toJSON() {
|
|
2469
|
+
return {
|
|
2470
|
+
...this
|
|
2471
|
+
};
|
|
2472
|
+
},
|
|
2473
|
+
[NodeInspectSymbol]() {
|
|
2474
|
+
const stack = this.stack;
|
|
2475
|
+
if (stack) {
|
|
2476
|
+
return `${this.toString()}\n${stack.split("\n").slice(1).join("\n")}`;
|
|
2477
|
+
}
|
|
2478
|
+
return this.toString();
|
|
2479
|
+
}
|
|
2480
|
+
});
|
|
2481
|
+
return YieldableError;
|
|
2482
|
+
}();
|
|
2483
|
+
/**
|
|
2484
|
+
* @since 3.4.0
|
|
2485
|
+
* @experimental
|
|
2486
|
+
* @category errors
|
|
2487
|
+
*/
|
|
2488
|
+
export const Error = /*#__PURE__*/function () {
|
|
2489
|
+
return class extends YieldableError {
|
|
2490
|
+
constructor(args) {
|
|
2491
|
+
super();
|
|
2492
|
+
if (args) {
|
|
2493
|
+
Object.assign(this, args);
|
|
2494
|
+
}
|
|
2495
|
+
}
|
|
2496
|
+
};
|
|
2497
|
+
}();
|
|
2498
|
+
/**
|
|
2499
|
+
* @since 3.4.0
|
|
2500
|
+
* @experimental
|
|
2501
|
+
* @category errors
|
|
2502
|
+
*/
|
|
2503
|
+
export const TaggedError = tag => {
|
|
2504
|
+
class Base extends Error {
|
|
2505
|
+
_tag = tag;
|
|
2506
|
+
}
|
|
2507
|
+
;
|
|
2508
|
+
Base.prototype.name = tag;
|
|
2509
|
+
return Base;
|
|
2510
|
+
};
|
|
2511
|
+
/**
|
|
2512
|
+
* Represents a checked exception which occurs when an expected element was
|
|
2513
|
+
* unable to be found.
|
|
2514
|
+
*
|
|
2515
|
+
* @since 3.4.4
|
|
2516
|
+
* @experimental
|
|
2517
|
+
* @category errors
|
|
2518
|
+
*/
|
|
2519
|
+
export class NoSuchElementException extends /*#__PURE__*/TaggedError("NoSuchElementException") {}
|
|
2520
|
+
/**
|
|
2521
|
+
* Represents a checked exception which occurs when a timeout occurs.
|
|
2522
|
+
*
|
|
2523
|
+
* @since 3.4.4
|
|
2524
|
+
* @experimental
|
|
2525
|
+
* @category errors
|
|
2526
|
+
*/
|
|
2527
|
+
export class TimeoutException extends /*#__PURE__*/TaggedError("TimeoutException") {}
|
|
2528
|
+
//# sourceMappingURL=Micro.js.map
|