effect 4.0.0 → 4.0.2
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/ai-docs/package.json +2 -2
- package/ai-docs/tsconfig.json +2 -1
- package/dist/Array.d.ts +339 -0
- package/dist/Array.d.ts.map +1 -1
- package/dist/Array.js +143 -3
- package/dist/Array.js.map +1 -1
- package/dist/BigDecimal.d.ts +88 -0
- package/dist/BigDecimal.d.ts.map +1 -1
- package/dist/BigDecimal.js +44 -0
- package/dist/BigDecimal.js.map +1 -1
- package/dist/BigInt.d.ts +68 -0
- package/dist/BigInt.d.ts.map +1 -1
- package/dist/BigInt.js +36 -0
- package/dist/BigInt.js.map +1 -1
- package/dist/Boolean.d.ts +34 -0
- package/dist/Boolean.d.ts.map +1 -1
- package/dist/Boolean.js +18 -0
- package/dist/Boolean.js.map +1 -1
- package/dist/Brand.d.ts +9 -0
- package/dist/Brand.d.ts.map +1 -1
- package/dist/Brand.js +6 -0
- package/dist/Brand.js.map +1 -1
- package/dist/ByteSize.d.ts +86 -0
- package/dist/ByteSize.d.ts.map +1 -1
- package/dist/ByteSize.js +51 -0
- package/dist/ByteSize.js.map +1 -1
- package/dist/Cache.d.ts +38 -1
- package/dist/Cache.d.ts.map +1 -1
- package/dist/Cache.js +47 -23
- package/dist/Cache.js.map +1 -1
- package/dist/Cause.d.ts +82 -0
- package/dist/Cause.d.ts.map +1 -1
- package/dist/Cause.js +61 -1
- package/dist/Cause.js.map +1 -1
- package/dist/Channel.d.ts +327 -4
- package/dist/Channel.d.ts.map +1 -1
- package/dist/Channel.js +168 -8
- package/dist/Channel.js.map +1 -1
- package/dist/ChannelSchema.d.ts +11 -0
- package/dist/ChannelSchema.d.ts.map +1 -1
- package/dist/ChannelSchema.js +6 -0
- package/dist/ChannelSchema.js.map +1 -1
- package/dist/Chunk.d.ts +192 -0
- package/dist/Chunk.d.ts.map +1 -1
- package/dist/Chunk.js +78 -0
- package/dist/Chunk.js.map +1 -1
- package/dist/Clock.d.ts +7 -0
- package/dist/Clock.d.ts.map +1 -1
- package/dist/Clock.js +5 -0
- package/dist/Clock.js.map +1 -1
- package/dist/Combiner.d.ts +10 -0
- package/dist/Combiner.d.ts.map +1 -1
- package/dist/Combiner.js +8 -0
- package/dist/Combiner.js.map +1 -1
- package/dist/Config.d.ts +52 -12
- package/dist/Config.d.ts.map +1 -1
- package/dist/Config.js +55 -5
- package/dist/Config.js.map +1 -1
- package/dist/ConfigProvider.d.ts +28 -0
- package/dist/ConfigProvider.d.ts.map +1 -1
- package/dist/ConfigProvider.js +19 -0
- package/dist/ConfigProvider.js.map +1 -1
- package/dist/Console.d.ts +22 -0
- package/dist/Console.d.ts.map +1 -1
- package/dist/Console.js +20 -0
- package/dist/Console.js.map +1 -1
- package/dist/Context.d.ts +50 -0
- package/dist/Context.d.ts.map +1 -1
- package/dist/Context.js +21 -0
- package/dist/Context.js.map +1 -1
- package/dist/Cron.d.ts +16 -0
- package/dist/Cron.d.ts.map +1 -1
- package/dist/Cron.js +26 -1
- package/dist/Cron.js.map +1 -1
- package/dist/Crypto.d.ts +5 -0
- package/dist/Crypto.d.ts.map +1 -1
- package/dist/Crypto.js +3 -0
- package/dist/Crypto.js.map +1 -1
- package/dist/Data.d.ts +13 -0
- package/dist/Data.d.ts.map +1 -1
- package/dist/Data.js +5 -0
- package/dist/Data.js.map +1 -1
- package/dist/DateTime.d.ts +171 -0
- package/dist/DateTime.d.ts.map +1 -1
- package/dist/DateTime.js +89 -0
- package/dist/DateTime.js.map +1 -1
- package/dist/Deferred.d.ts +51 -0
- package/dist/Deferred.d.ts.map +1 -1
- package/dist/Deferred.js +22 -0
- package/dist/Deferred.js.map +1 -1
- package/dist/Differ.d.ts +2 -0
- package/dist/Differ.d.ts.map +1 -1
- package/dist/Differ.js +1 -0
- package/dist/Duration.d.ts +90 -0
- package/dist/Duration.d.ts.map +1 -1
- package/dist/Duration.js +53 -0
- package/dist/Duration.js.map +1 -1
- package/dist/Effect.d.ts +677 -22
- package/dist/Effect.d.ts.map +1 -1
- package/dist/Effect.js +251 -10
- package/dist/Effect.js.map +1 -1
- package/dist/Effectable.d.ts +4 -0
- package/dist/Effectable.d.ts.map +1 -1
- package/dist/Effectable.js +3 -0
- package/dist/Effectable.js.map +1 -1
- package/dist/Equal.d.ts +8 -0
- package/dist/Equal.d.ts.map +1 -1
- package/dist/Equal.js +9 -1
- package/dist/Equal.js.map +1 -1
- package/dist/Equivalence.d.ts +21 -0
- package/dist/Equivalence.d.ts.map +1 -1
- package/dist/Equivalence.js +16 -0
- package/dist/Equivalence.js.map +1 -1
- package/dist/ErrorReporter.d.ts +36 -0
- package/dist/ErrorReporter.d.ts.map +1 -1
- package/dist/ErrorReporter.js +11 -0
- package/dist/ErrorReporter.js.map +1 -1
- package/dist/ExecutionPlan.d.ts +49 -8
- package/dist/ExecutionPlan.d.ts.map +1 -1
- package/dist/ExecutionPlan.js +7 -0
- package/dist/ExecutionPlan.js.map +1 -1
- package/dist/Exit.d.ts +40 -0
- package/dist/Exit.d.ts.map +1 -1
- package/dist/Exit.js +27 -0
- package/dist/Exit.js.map +1 -1
- package/dist/Fiber.d.ts +20 -0
- package/dist/Fiber.d.ts.map +1 -1
- package/dist/Fiber.js +11 -0
- package/dist/Fiber.js.map +1 -1
- package/dist/FiberHandle.d.ts +21 -0
- package/dist/FiberHandle.d.ts.map +1 -1
- package/dist/FiberHandle.js +21 -4
- package/dist/FiberHandle.js.map +1 -1
- package/dist/FiberMap.d.ts +35 -0
- package/dist/FiberMap.d.ts.map +1 -1
- package/dist/FiberMap.js +19 -0
- package/dist/FiberMap.js.map +1 -1
- package/dist/FiberSet.d.ts +20 -0
- package/dist/FiberSet.d.ts.map +1 -1
- package/dist/FiberSet.js +14 -0
- package/dist/FiberSet.js.map +1 -1
- package/dist/FileSystem.d.ts +15 -0
- package/dist/FileSystem.d.ts.map +1 -1
- package/dist/FileSystem.js +8 -0
- package/dist/FileSystem.js.map +1 -1
- package/dist/Filter.d.ts +55 -0
- package/dist/Filter.d.ts.map +1 -1
- package/dist/Filter.js +28 -0
- package/dist/Filter.js.map +1 -1
- package/dist/Formatter.d.ts +3 -0
- package/dist/Formatter.d.ts.map +1 -1
- package/dist/Formatter.js +39 -1
- package/dist/Formatter.js.map +1 -1
- package/dist/Function.d.ts +30 -0
- package/dist/Function.d.ts.map +1 -1
- package/dist/Function.js +20 -0
- package/dist/Function.js.map +1 -1
- package/dist/Graph.d.ts +247 -12
- package/dist/Graph.d.ts.map +1 -1
- package/dist/Graph.js +149 -28
- package/dist/Graph.js.map +1 -1
- package/dist/HKT.d.ts +5 -0
- package/dist/HKT.d.ts.map +1 -1
- package/dist/Hash.d.ts +14 -0
- package/dist/Hash.d.ts.map +1 -1
- package/dist/Hash.js +12 -0
- package/dist/Hash.js.map +1 -1
- package/dist/HashMap.d.ts +91 -0
- package/dist/HashMap.d.ts.map +1 -1
- package/dist/HashMap.js +39 -0
- package/dist/HashMap.js.map +1 -1
- package/dist/HashRing.d.ts +17 -0
- package/dist/HashRing.d.ts.map +1 -1
- package/dist/HashRing.js +22 -5
- package/dist/HashRing.js.map +1 -1
- package/dist/HashSet.d.ts +49 -0
- package/dist/HashSet.d.ts.map +1 -1
- package/dist/HashSet.js +19 -0
- package/dist/HashSet.js.map +1 -1
- package/dist/Inspectable.d.ts +7 -0
- package/dist/Inspectable.d.ts.map +1 -1
- package/dist/Inspectable.js +6 -0
- package/dist/Inspectable.js.map +1 -1
- package/dist/Iterable.d.ts +127 -0
- package/dist/Iterable.d.ts.map +1 -1
- package/dist/Iterable.js +51 -0
- package/dist/Iterable.js.map +1 -1
- package/dist/JsonPatch.d.ts +4 -0
- package/dist/JsonPatch.d.ts.map +1 -1
- package/dist/JsonPatch.js +3 -0
- package/dist/JsonPatch.js.map +1 -1
- package/dist/JsonPointer.d.ts +5 -0
- package/dist/JsonPointer.d.ts.map +1 -1
- package/dist/JsonPointer.js +5 -0
- package/dist/JsonPointer.js.map +1 -1
- package/dist/JsonSchema.d.ts +16 -0
- package/dist/JsonSchema.d.ts.map +1 -1
- package/dist/JsonSchema.js +11 -0
- package/dist/JsonSchema.js.map +1 -1
- package/dist/Latch.d.ts +14 -0
- package/dist/Latch.d.ts.map +1 -1
- package/dist/Latch.js +10 -0
- package/dist/Latch.js.map +1 -1
- package/dist/Layer.d.ts +100 -0
- package/dist/Layer.d.ts.map +1 -1
- package/dist/Layer.js +45 -1
- package/dist/Layer.js.map +1 -1
- package/dist/LayerMap.d.ts +7 -0
- package/dist/LayerMap.d.ts.map +1 -1
- package/dist/LayerMap.js +4 -0
- package/dist/LayerMap.js.map +1 -1
- package/dist/LayerRef.d.ts +5 -0
- package/dist/LayerRef.d.ts.map +1 -1
- package/dist/LayerRef.js +3 -0
- package/dist/LayerRef.js.map +1 -1
- package/dist/LogLevel.d.ts +20 -0
- package/dist/LogLevel.d.ts.map +1 -1
- package/dist/LogLevel.js +9 -0
- package/dist/LogLevel.js.map +1 -1
- package/dist/Logger.d.ts +25 -0
- package/dist/Logger.d.ts.map +1 -1
- package/dist/Logger.js +30 -4
- package/dist/Logger.js.map +1 -1
- package/dist/ManagedRuntime.d.ts +5 -0
- package/dist/ManagedRuntime.d.ts.map +1 -1
- package/dist/ManagedRuntime.js +9 -1
- package/dist/ManagedRuntime.js.map +1 -1
- package/dist/Match.d.ts +51 -0
- package/dist/Match.d.ts.map +1 -1
- package/dist/Match.js +39 -0
- package/dist/Match.js.map +1 -1
- package/dist/Metric.d.ts +59 -0
- package/dist/Metric.d.ts.map +1 -1
- package/dist/Metric.js +31 -0
- package/dist/Metric.js.map +1 -1
- package/dist/MutableHashMap.d.ts +32 -0
- package/dist/MutableHashMap.d.ts.map +1 -1
- package/dist/MutableHashMap.js +16 -0
- package/dist/MutableHashMap.js.map +1 -1
- package/dist/MutableHashSet.d.ts +16 -0
- package/dist/MutableHashSet.d.ts.map +1 -1
- package/dist/MutableHashSet.js +10 -0
- package/dist/MutableHashSet.js.map +1 -1
- package/dist/MutableList.d.ts +20 -0
- package/dist/MutableList.d.ts.map +1 -1
- package/dist/MutableList.js +18 -0
- package/dist/MutableList.js.map +1 -1
- package/dist/MutableRef.d.ts +31 -0
- package/dist/MutableRef.d.ts.map +1 -1
- package/dist/MutableRef.js +17 -0
- package/dist/MutableRef.js.map +1 -1
- package/dist/Newtype.d.ts +9 -0
- package/dist/Newtype.d.ts.map +1 -1
- package/dist/Newtype.js +6 -0
- package/dist/Newtype.js.map +1 -1
- package/dist/NonEmptyIterable.d.ts +4 -0
- package/dist/NonEmptyIterable.d.ts.map +1 -1
- package/dist/NonEmptyIterable.js +2 -0
- package/dist/NonEmptyIterable.js.map +1 -1
- package/dist/Number.d.ts +61 -0
- package/dist/Number.d.ts.map +1 -1
- package/dist/Number.js +31 -0
- package/dist/Number.js.map +1 -1
- package/dist/Optic.d.ts +41 -0
- package/dist/Optic.d.ts.map +1 -1
- package/dist/Optic.js +20 -0
- package/dist/Optic.js.map +1 -1
- package/dist/Option.d.ts +134 -0
- package/dist/Option.d.ts.map +1 -1
- package/dist/Option.js +61 -0
- package/dist/Option.js.map +1 -1
- package/dist/Order.d.ts +29 -0
- package/dist/Order.d.ts.map +1 -1
- package/dist/Order.js +24 -0
- package/dist/Order.js.map +1 -1
- package/dist/Ordering.d.ts +7 -0
- package/dist/Ordering.d.ts.map +1 -1
- package/dist/Ordering.js +3 -0
- package/dist/Ordering.js.map +1 -1
- package/dist/PartitionedSemaphore.d.ts +24 -0
- package/dist/PartitionedSemaphore.d.ts.map +1 -1
- package/dist/PartitionedSemaphore.js +47 -21
- package/dist/PartitionedSemaphore.js.map +1 -1
- package/dist/Path.d.ts +6 -0
- package/dist/Path.d.ts.map +1 -1
- package/dist/Path.js +4 -0
- package/dist/Path.js.map +1 -1
- package/dist/Pipeable.d.ts +7 -0
- package/dist/Pipeable.d.ts.map +1 -1
- package/dist/Pipeable.js +5 -0
- package/dist/Pipeable.js.map +1 -1
- package/dist/PlatformError.d.ts +8 -0
- package/dist/PlatformError.d.ts.map +1 -1
- package/dist/PlatformError.js +7 -0
- package/dist/PlatformError.js.map +1 -1
- package/dist/Pool.d.ts +28 -5
- package/dist/Pool.d.ts.map +1 -1
- package/dist/Pool.js +42 -42
- package/dist/Pool.js.map +1 -1
- package/dist/Predicate.d.ts +84 -0
- package/dist/Predicate.d.ts.map +1 -1
- package/dist/Predicate.js +48 -0
- package/dist/Predicate.js.map +1 -1
- package/dist/PrimaryKey.d.ts +5 -0
- package/dist/PrimaryKey.d.ts.map +1 -1
- package/dist/PrimaryKey.js +4 -0
- package/dist/PrimaryKey.js.map +1 -1
- package/dist/PubSub.d.ts +67 -5
- package/dist/PubSub.d.ts.map +1 -1
- package/dist/PubSub.js +60 -8
- package/dist/PubSub.js.map +1 -1
- package/dist/Pull.d.ts +20 -0
- package/dist/Pull.d.ts.map +1 -1
- package/dist/Pull.js +10 -0
- package/dist/Pull.js.map +1 -1
- package/dist/Queue.d.ts +60 -0
- package/dist/Queue.d.ts.map +1 -1
- package/dist/Queue.js +58 -8
- package/dist/Queue.js.map +1 -1
- package/dist/Random.d.ts +13 -0
- package/dist/Random.d.ts.map +1 -1
- package/dist/Random.js +9 -0
- package/dist/Random.js.map +1 -1
- package/dist/RcMap.d.ts +23 -0
- package/dist/RcMap.d.ts.map +1 -1
- package/dist/RcMap.js +24 -1
- package/dist/RcMap.js.map +1 -1
- package/dist/RcRef.d.ts +6 -0
- package/dist/RcRef.d.ts.map +1 -1
- package/dist/RcRef.js +3 -0
- package/dist/RcRef.js.map +1 -1
- package/dist/Record.d.ts +100 -0
- package/dist/Record.d.ts.map +1 -1
- package/dist/Record.js +43 -0
- package/dist/Record.js.map +1 -1
- package/dist/Redactable.d.ts +6 -0
- package/dist/Redactable.d.ts.map +1 -1
- package/dist/Redactable.js +4 -0
- package/dist/Redactable.js.map +1 -1
- package/dist/Redacted.d.ts +8 -0
- package/dist/Redacted.d.ts.map +1 -1
- package/dist/Redacted.js +6 -0
- package/dist/Redacted.js.map +1 -1
- package/dist/Reducer.d.ts +4 -0
- package/dist/Reducer.d.ts.map +1 -1
- package/dist/Reducer.js +3 -0
- package/dist/Reducer.js.map +1 -1
- package/dist/Ref.d.ts +20 -0
- package/dist/Ref.d.ts.map +1 -1
- package/dist/Ref.js +16 -0
- package/dist/Ref.js.map +1 -1
- package/dist/References.d.ts +21 -0
- package/dist/References.d.ts.map +1 -1
- package/dist/References.js +19 -0
- package/dist/References.js.map +1 -1
- package/dist/RegExp.d.ts +3 -0
- package/dist/RegExp.d.ts.map +1 -1
- package/dist/RegExp.js +4 -0
- package/dist/RegExp.js.map +1 -1
- package/dist/Request.d.ts +32 -0
- package/dist/Request.d.ts.map +1 -1
- package/dist/Request.js +12 -0
- package/dist/Request.js.map +1 -1
- package/dist/RequestResolver.d.ts +42 -0
- package/dist/RequestResolver.d.ts.map +1 -1
- package/dist/RequestResolver.js +27 -6
- package/dist/RequestResolver.js.map +1 -1
- package/dist/Resource.d.ts +6 -0
- package/dist/Resource.d.ts.map +1 -1
- package/dist/Resource.js +6 -0
- package/dist/Resource.js.map +1 -1
- package/dist/Result.d.ts +91 -0
- package/dist/Result.d.ts.map +1 -1
- package/dist/Result.js +41 -0
- package/dist/Result.js.map +1 -1
- package/dist/Runtime.d.ts +9 -0
- package/dist/Runtime.d.ts.map +1 -1
- package/dist/Runtime.js +7 -0
- package/dist/Runtime.js.map +1 -1
- package/dist/Schedule.d.ts +57 -0
- package/dist/Schedule.d.ts.map +1 -1
- package/dist/Schedule.js +32 -0
- package/dist/Schedule.js.map +1 -1
- package/dist/Scheduler.d.ts +7 -0
- package/dist/Scheduler.d.ts.map +1 -1
- package/dist/Scheduler.js +5 -0
- package/dist/Scheduler.js.map +1 -1
- package/dist/Schema.d.ts +496 -1
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +280 -1
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaAST.d.ts +107 -0
- package/dist/SchemaAST.d.ts.map +1 -1
- package/dist/SchemaAST.js +81 -1
- package/dist/SchemaAST.js.map +1 -1
- package/dist/SchemaGetter.d.ts +69 -2
- package/dist/SchemaGetter.d.ts.map +1 -1
- package/dist/SchemaGetter.js +63 -4
- package/dist/SchemaGetter.js.map +1 -1
- package/dist/SchemaIssue.d.ts +33 -0
- package/dist/SchemaIssue.d.ts.map +1 -1
- package/dist/SchemaIssue.js +18 -0
- package/dist/SchemaIssue.js.map +1 -1
- package/dist/SchemaParser.d.ts +25 -0
- package/dist/SchemaParser.d.ts.map +1 -1
- package/dist/SchemaParser.js +26 -0
- package/dist/SchemaParser.js.map +1 -1
- package/dist/SchemaRepresentation.d.ts +147 -0
- package/dist/SchemaRepresentation.d.ts.map +1 -1
- package/dist/SchemaRepresentation.js +99 -0
- package/dist/SchemaRepresentation.js.map +1 -1
- package/dist/SchemaTransformation.d.ts +53 -0
- package/dist/SchemaTransformation.d.ts.map +1 -1
- package/dist/SchemaTransformation.js +46 -0
- package/dist/SchemaTransformation.js.map +1 -1
- package/dist/Scope.d.ts +19 -0
- package/dist/Scope.d.ts.map +1 -1
- package/dist/Scope.js +12 -0
- package/dist/Scope.js.map +1 -1
- package/dist/ScopedCache.d.ts +34 -0
- package/dist/ScopedCache.d.ts.map +1 -1
- package/dist/ScopedCache.js +50 -19
- package/dist/ScopedCache.js.map +1 -1
- package/dist/ScopedRef.d.ts +9 -0
- package/dist/ScopedRef.d.ts.map +1 -1
- package/dist/ScopedRef.js +6 -0
- package/dist/ScopedRef.js.map +1 -1
- package/dist/Semaphore.d.ts +26 -0
- package/dist/Semaphore.d.ts.map +1 -1
- package/dist/Semaphore.js +10 -0
- package/dist/Semaphore.js.map +1 -1
- package/dist/Sink.d.ts +125 -1
- package/dist/Sink.d.ts.map +1 -1
- package/dist/Sink.js +75 -1
- package/dist/Sink.js.map +1 -1
- package/dist/StandardSchema.d.ts +1 -0
- package/dist/StandardSchema.d.ts.map +1 -1
- package/dist/StandardSchema.js +1 -0
- package/dist/Stdio.d.ts +7 -0
- package/dist/Stdio.d.ts.map +1 -1
- package/dist/Stdio.js +5 -0
- package/dist/Stdio.js.map +1 -1
- package/dist/Stream.d.ts +603 -6
- package/dist/Stream.d.ts.map +1 -1
- package/dist/Stream.js +316 -57
- package/dist/Stream.js.map +1 -1
- package/dist/String.d.ts +87 -0
- package/dist/String.d.ts.map +1 -1
- package/dist/String.js +61 -0
- package/dist/String.js.map +1 -1
- package/dist/Struct.d.ts +46 -0
- package/dist/Struct.d.ts.map +1 -1
- package/dist/Struct.js +19 -0
- package/dist/Struct.js.map +1 -1
- package/dist/SubscriptionRef.d.ts +65 -0
- package/dist/SubscriptionRef.d.ts.map +1 -1
- package/dist/SubscriptionRef.js +25 -0
- package/dist/SubscriptionRef.js.map +1 -1
- package/dist/Symbol.d.ts +2 -0
- package/dist/Symbol.d.ts.map +1 -1
- package/dist/Symbol.js +2 -0
- package/dist/Symbol.js.map +1 -1
- package/dist/SynchronizedRef.d.ts +63 -0
- package/dist/SynchronizedRef.d.ts.map +1 -1
- package/dist/SynchronizedRef.js +24 -0
- package/dist/SynchronizedRef.js.map +1 -1
- package/dist/Take.d.ts +3 -0
- package/dist/Take.d.ts.map +1 -1
- package/dist/Take.js +1 -0
- package/dist/Take.js.map +1 -1
- package/dist/Terminal.d.ts +8 -0
- package/dist/Terminal.d.ts.map +1 -1
- package/dist/Terminal.js +4 -0
- package/dist/Terminal.js.map +1 -1
- package/dist/Tracer.d.ts +23 -0
- package/dist/Tracer.d.ts.map +1 -1
- package/dist/Tracer.js +12 -0
- package/dist/Tracer.js.map +1 -1
- package/dist/Trie.d.ts +68 -0
- package/dist/Trie.d.ts.map +1 -1
- package/dist/Trie.js +28 -0
- package/dist/Trie.js.map +1 -1
- package/dist/Tuple.d.ts +38 -0
- package/dist/Tuple.d.ts.map +1 -1
- package/dist/Tuple.js +18 -0
- package/dist/Tuple.js.map +1 -1
- package/dist/TxChunk.d.ts +52 -0
- package/dist/TxChunk.d.ts.map +1 -1
- package/dist/TxChunk.js +23 -0
- package/dist/TxChunk.js.map +1 -1
- package/dist/TxDeferred.d.ts +15 -0
- package/dist/TxDeferred.d.ts.map +1 -1
- package/dist/TxDeferred.js +8 -0
- package/dist/TxDeferred.js.map +1 -1
- package/dist/TxHashMap.d.ts +83 -0
- package/dist/TxHashMap.d.ts.map +1 -1
- package/dist/TxHashMap.js +52 -7
- package/dist/TxHashMap.js.map +1 -1
- package/dist/TxHashSet.d.ts +51 -0
- package/dist/TxHashSet.d.ts.map +1 -1
- package/dist/TxHashSet.js +29 -4
- package/dist/TxHashSet.js.map +1 -1
- package/dist/TxPriorityQueue.d.ts +30 -0
- package/dist/TxPriorityQueue.d.ts.map +1 -1
- package/dist/TxPriorityQueue.js +22 -1
- package/dist/TxPriorityQueue.js.map +1 -1
- package/dist/TxPubSub.d.ts +25 -0
- package/dist/TxPubSub.d.ts.map +1 -1
- package/dist/TxPubSub.js +19 -0
- package/dist/TxPubSub.js.map +1 -1
- package/dist/TxQueue.d.ts +51 -0
- package/dist/TxQueue.d.ts.map +1 -1
- package/dist/TxQueue.js +30 -0
- package/dist/TxQueue.js.map +1 -1
- package/dist/TxReentrantLock.d.ts +24 -0
- package/dist/TxReentrantLock.d.ts.map +1 -1
- package/dist/TxReentrantLock.js +32 -18
- package/dist/TxReentrantLock.js.map +1 -1
- package/dist/TxRef.d.ts +14 -0
- package/dist/TxRef.d.ts.map +1 -1
- package/dist/TxRef.js +7 -0
- package/dist/TxRef.js.map +1 -1
- package/dist/TxSemaphore.d.ts +25 -0
- package/dist/TxSemaphore.d.ts.map +1 -1
- package/dist/TxSemaphore.js +29 -13
- package/dist/TxSemaphore.js.map +1 -1
- package/dist/TxSubscriptionRef.d.ts +25 -0
- package/dist/TxSubscriptionRef.d.ts.map +1 -1
- package/dist/TxSubscriptionRef.js +12 -0
- package/dist/TxSubscriptionRef.js.map +1 -1
- package/dist/Types.d.ts +36 -0
- package/dist/Types.d.ts.map +1 -1
- package/dist/Types.js +1 -0
- package/dist/UndefinedOr.d.ts +15 -0
- package/dist/UndefinedOr.d.ts.map +1 -1
- package/dist/UndefinedOr.js +9 -0
- package/dist/UndefinedOr.js.map +1 -1
- package/dist/Unify.d.ts +15 -0
- package/dist/Unify.d.ts.map +1 -1
- package/dist/Unify.js +2 -0
- package/dist/Unify.js.map +1 -1
- package/dist/Utils.d.ts +4 -0
- package/dist/Utils.d.ts.map +1 -1
- package/dist/Utils.js +1 -0
- package/dist/Utils.js.map +1 -1
- package/dist/Version.d.ts +26 -0
- package/dist/Version.d.ts.map +1 -0
- package/dist/Version.js +36 -0
- package/dist/Version.js.map +1 -0
- package/dist/ai/Chat.js +1 -1
- package/dist/ai/Chat.js.map +1 -1
- package/dist/ai/DecisionModel.d.ts +22 -0
- package/dist/ai/DecisionModel.d.ts.map +1 -1
- package/dist/ai/DecisionModel.js +22 -4
- package/dist/ai/DecisionModel.js.map +1 -1
- package/dist/ai/LanguageModel.d.ts +8 -0
- package/dist/ai/LanguageModel.d.ts.map +1 -1
- package/dist/ai/LanguageModel.js +27 -15
- package/dist/ai/LanguageModel.js.map +1 -1
- package/dist/ai/McpSchema.d.ts +508 -508
- package/dist/ai/McpSchema.d.ts.map +1 -1
- package/dist/ai/McpSchema.js +1 -1
- package/dist/ai/McpSchema.js.map +1 -1
- package/dist/ai/McpServer.d.ts +32 -11
- package/dist/ai/McpServer.d.ts.map +1 -1
- package/dist/ai/McpServer.js +224 -172
- package/dist/ai/McpServer.js.map +1 -1
- package/dist/ai/Response.d.ts.map +1 -1
- package/dist/ai/Response.js +22 -12
- package/dist/ai/Response.js.map +1 -1
- package/dist/ai/Telemetry.d.ts +49 -41
- package/dist/ai/Telemetry.d.ts.map +1 -1
- package/dist/ai/Telemetry.js +6 -8
- package/dist/ai/Telemetry.js.map +1 -1
- package/dist/ai/internal/mcpProtocol/v2024_11_05.js +1 -0
- package/dist/ai/internal/mcpProtocol/v2024_11_05.js.map +1 -1
- package/dist/ai/internal/mcpProtocol/v2025_03_26.js +1 -0
- package/dist/ai/internal/mcpProtocol/v2025_03_26.js.map +1 -1
- package/dist/ai/internal/mcpProtocol/v2025_06_18.js +1 -0
- package/dist/ai/internal/mcpProtocol/v2025_06_18.js.map +1 -1
- package/dist/ai/internal/mcpProtocol/v2025_11_25.js +1 -0
- package/dist/ai/internal/mcpProtocol/v2025_11_25.js.map +1 -1
- package/dist/ai/internal/mcpRuntime.js +79 -46
- package/dist/ai/internal/mcpRuntime.js.map +1 -1
- package/dist/ai/internal/mcpSchema/v2024_11_05.js +3 -1
- package/dist/ai/internal/mcpSchema/v2024_11_05.js.map +1 -1
- package/dist/ai/internal/mcpStatefulRuntime.js +1 -0
- package/dist/ai/internal/mcpStatefulRuntime.js.map +1 -1
- package/dist/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
- package/dist/cluster/ClusterWorkflowEngine.js +11 -2
- package/dist/cluster/ClusterWorkflowEngine.js.map +1 -1
- package/dist/cluster/K8sHttpClient.d.ts.map +1 -1
- package/dist/cluster/K8sHttpClient.js +5 -2
- package/dist/cluster/K8sHttpClient.js.map +1 -1
- package/dist/cluster/Sharding.d.ts.map +1 -1
- package/dist/cluster/Sharding.js +14 -7
- package/dist/cluster/Sharding.js.map +1 -1
- package/dist/cluster/SqlMessageStorage.d.ts.map +1 -1
- package/dist/cluster/SqlMessageStorage.js +21 -12
- package/dist/cluster/SqlMessageStorage.js.map +1 -1
- package/dist/cluster/SqlRunnerStorage.d.ts.map +1 -1
- package/dist/cluster/SqlRunnerStorage.js +30 -44
- package/dist/cluster/SqlRunnerStorage.js.map +1 -1
- package/dist/cluster/internal/entityManager.js +63 -62
- package/dist/cluster/internal/entityManager.js.map +1 -1
- package/dist/cluster/internal/interruptors.js +8 -0
- package/dist/cluster/internal/interruptors.js.map +1 -1
- package/dist/cluster/internal/resourceMap.js +39 -14
- package/dist/cluster/internal/resourceMap.js.map +1 -1
- package/dist/cluster/internal/resourceRef.js +168 -87
- package/dist/cluster/internal/resourceRef.js.map +1 -1
- package/dist/encoding/Base64.d.ts +4 -0
- package/dist/encoding/Base64.d.ts.map +1 -1
- package/dist/encoding/Base64.js +4 -0
- package/dist/encoding/Base64.js.map +1 -1
- package/dist/encoding/Base64Url.d.ts +4 -0
- package/dist/encoding/Base64Url.d.ts.map +1 -1
- package/dist/encoding/Base64Url.js +4 -0
- package/dist/encoding/Base64Url.js.map +1 -1
- package/dist/encoding/EncodingError.d.ts +4 -0
- package/dist/encoding/EncodingError.d.ts.map +1 -1
- package/dist/encoding/EncodingError.js +4 -0
- package/dist/encoding/EncodingError.js.map +1 -1
- package/dist/encoding/Hex.d.ts +5 -0
- package/dist/encoding/Hex.d.ts.map +1 -1
- package/dist/encoding/Hex.js +5 -0
- package/dist/encoding/Hex.js.map +1 -1
- package/dist/encoding/Toml.js +2 -2
- package/dist/encoding/Toml.js.map +1 -1
- package/dist/encoding/Yaml.d.ts.map +1 -1
- package/dist/encoding/Yaml.js +6 -4
- package/dist/encoding/Yaml.js.map +1 -1
- package/dist/encoding/index.d.ts +4 -0
- package/dist/encoding/index.d.ts.map +1 -1
- package/dist/encoding/index.js +4 -0
- package/dist/encoding/index.js.map +1 -1
- package/dist/eventlog/SqlEventJournal.js +8 -4
- package/dist/eventlog/SqlEventJournal.js.map +1 -1
- package/dist/eventlog/SqlEventLogServerUnencrypted.d.ts +27 -10
- package/dist/eventlog/SqlEventLogServerUnencrypted.d.ts.map +1 -1
- package/dist/eventlog/SqlEventLogServerUnencrypted.js +49 -7
- package/dist/eventlog/SqlEventLogServerUnencrypted.js.map +1 -1
- package/dist/http/Headers.d.ts +3 -1
- package/dist/http/Headers.d.ts.map +1 -1
- package/dist/http/Headers.js +4 -2
- package/dist/http/Headers.js.map +1 -1
- package/dist/http/HttpClient.d.ts +9 -0
- package/dist/http/HttpClient.d.ts.map +1 -1
- package/dist/http/HttpClient.js +40 -21
- package/dist/http/HttpClient.js.map +1 -1
- package/dist/http/HttpClientResponse.js +3 -1
- package/dist/http/HttpClientResponse.js.map +1 -1
- package/dist/http/HttpEffect.d.ts +3 -0
- package/dist/http/HttpEffect.d.ts.map +1 -1
- package/dist/http/HttpEffect.js +5 -2
- package/dist/http/HttpEffect.js.map +1 -1
- package/dist/http/HttpMiddleware.d.ts +17 -0
- package/dist/http/HttpMiddleware.d.ts.map +1 -1
- package/dist/http/HttpMiddleware.js +58 -40
- package/dist/http/HttpMiddleware.js.map +1 -1
- package/dist/http/HttpServer.d.ts +1 -1
- package/dist/http/HttpServer.d.ts.map +1 -1
- package/dist/http/HttpStaticServer.d.ts.map +1 -1
- package/dist/http/HttpStaticServer.js +14 -0
- package/dist/http/HttpStaticServer.js.map +1 -1
- package/dist/http/HttpTraceContext.d.ts +1 -1
- package/dist/http/HttpTraceContext.d.ts.map +1 -1
- package/dist/http/HttpTraceContext.js +4 -4
- package/dist/http/HttpTraceContext.js.map +1 -1
- package/dist/http/internal/tracing.d.ts +2 -0
- package/dist/http/internal/tracing.d.ts.map +1 -0
- package/dist/http/internal/tracing.js +37 -0
- package/dist/http/internal/tracing.js.map +1 -0
- package/dist/http-api/HttpApiBuilder.js +2 -1
- package/dist/http-api/HttpApiBuilder.js.map +1 -1
- package/dist/http-api/HttpApiClient.d.ts +12 -3
- package/dist/http-api/HttpApiClient.d.ts.map +1 -1
- package/dist/http-api/HttpApiClient.js.map +1 -1
- package/dist/http-api/HttpApiError.d.ts +4 -2
- package/dist/http-api/HttpApiError.d.ts.map +1 -1
- package/dist/http-api/HttpApiError.js +7 -3
- package/dist/http-api/HttpApiError.js.map +1 -1
- package/dist/http-api/HttpApiSecurity.d.ts +8 -8
- package/dist/http-api/HttpApiSecurity.js +8 -8
- package/dist/index.d.ts +155 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +155 -0
- package/dist/index.js.map +1 -1
- package/dist/internal/arbitrary/array.js +3 -3
- package/dist/internal/arbitrary/array.js.map +1 -1
- package/dist/internal/arbitrary/model.js +26 -11
- package/dist/internal/arbitrary/model.js.map +1 -1
- package/dist/internal/arbitrary/runner.js +8 -8
- package/dist/internal/arbitrary/runner.js.map +1 -1
- package/dist/internal/arbitrary/schema.js +4 -5
- package/dist/internal/arbitrary/schema.js.map +1 -1
- package/dist/internal/core.js +43 -2
- package/dist/internal/core.js.map +1 -1
- package/dist/internal/dateTime.js +1 -1
- package/dist/internal/dateTime.js.map +1 -1
- package/dist/internal/effect.js +104 -120
- package/dist/internal/effect.js.map +1 -1
- package/dist/internal/rcRef.js +59 -23
- package/dist/internal/rcRef.js.map +1 -1
- package/dist/internal/schedule.js +7 -5
- package/dist/internal/schedule.js.map +1 -1
- package/dist/internal/schema/fromJsonSchemaDocument.js +11 -8
- package/dist/internal/schema/fromJsonSchemaDocument.js.map +1 -1
- package/dist/internal/schema/standardSchema.js +2 -2
- package/dist/internal/schema/standardSchema.js.map +1 -1
- package/dist/internal/version.d.ts +2 -0
- package/dist/internal/version.d.ts.map +1 -0
- package/dist/internal/version.js +3 -0
- package/dist/internal/version.js.map +1 -0
- package/dist/observability/OtlpExporter.d.ts.map +1 -1
- package/dist/observability/OtlpExporter.js +5 -6
- package/dist/observability/OtlpExporter.js.map +1 -1
- package/dist/observability/OtlpLogger.d.ts.map +1 -1
- package/dist/observability/OtlpLogger.js +23 -27
- package/dist/observability/OtlpLogger.js.map +1 -1
- package/dist/observability/OtlpMetrics.d.ts +5 -3
- package/dist/observability/OtlpMetrics.d.ts.map +1 -1
- package/dist/observability/OtlpMetrics.js +21 -94
- package/dist/observability/OtlpMetrics.js.map +1 -1
- package/dist/observability/OtlpResource.d.ts +4 -3
- package/dist/observability/OtlpResource.d.ts.map +1 -1
- package/dist/observability/OtlpResource.js +20 -23
- package/dist/observability/OtlpResource.js.map +1 -1
- package/dist/observability/OtlpTracer.d.ts +1 -0
- package/dist/observability/OtlpTracer.d.ts.map +1 -1
- package/dist/observability/OtlpTracer.js +32 -36
- package/dist/observability/OtlpTracer.js.map +1 -1
- package/dist/observability/internal/otlpProtobuf.js +32 -1
- package/dist/observability/internal/otlpProtobuf.js.map +1 -1
- package/dist/reactivity/AsyncResult.d.ts +1 -1
- package/dist/reactivity/Atom.d.ts +5 -5
- package/dist/reactivity/Atom.d.ts.map +1 -1
- package/dist/reactivity/Atom.js +9 -5
- package/dist/reactivity/Atom.js.map +1 -1
- package/dist/reactivity/AtomHttpApi.d.ts +2 -2
- package/dist/reactivity/AtomHttpApi.d.ts.map +1 -1
- package/dist/reactivity/AtomRegistry.d.ts +8 -0
- package/dist/reactivity/AtomRegistry.d.ts.map +1 -1
- package/dist/reactivity/AtomRegistry.js.map +1 -1
- package/dist/rpc/RpcClient.d.ts +21 -3
- package/dist/rpc/RpcClient.d.ts.map +1 -1
- package/dist/rpc/RpcClient.js +58 -34
- package/dist/rpc/RpcClient.js.map +1 -1
- package/dist/rpc/RpcServer.d.ts.map +1 -1
- package/dist/rpc/RpcServer.js +20 -23
- package/dist/rpc/RpcServer.js.map +1 -1
- package/dist/rpc/Utils.d.ts +2 -3
- package/dist/rpc/Utils.d.ts.map +1 -1
- package/dist/rpc/Utils.js +3 -4
- package/dist/rpc/Utils.js.map +1 -1
- package/dist/rpc/internal/tracing.d.ts +2 -0
- package/dist/rpc/internal/tracing.d.ts.map +1 -0
- package/dist/rpc/internal/tracing.js +18 -0
- package/dist/rpc/internal/tracing.js.map +1 -0
- package/dist/schema/SchemaCompiler/runtime.js +9 -1
- package/dist/schema/SchemaCompiler/runtime.js.map +1 -1
- package/dist/sql/SqlClient.js +4 -4
- package/dist/sql/SqlClient.js.map +1 -1
- package/dist/sql/Statement.d.ts +21 -1
- package/dist/sql/Statement.d.ts.map +1 -1
- package/dist/sql/Statement.js +55 -7
- package/dist/sql/Statement.js.map +1 -1
- package/dist/testing/TestClock.d.ts +8 -0
- package/dist/testing/TestClock.d.ts.map +1 -1
- package/dist/testing/TestClock.js +7 -0
- package/dist/testing/TestClock.js.map +1 -1
- package/dist/testing/TestConsole.d.ts +7 -0
- package/dist/testing/TestConsole.d.ts.map +1 -1
- package/dist/testing/TestConsole.js +6 -0
- package/dist/testing/TestConsole.js.map +1 -1
- package/dist/testing/index.d.ts +3 -0
- package/dist/testing/index.d.ts.map +1 -1
- package/dist/testing/index.js +3 -0
- package/dist/testing/index.js.map +1 -1
- package/dist/workflow/WorkflowEngine.d.ts +2 -0
- package/dist/workflow/WorkflowEngine.d.ts.map +1 -1
- package/dist/workflow/WorkflowEngine.js +1 -0
- package/dist/workflow/WorkflowEngine.js.map +1 -1
- package/package.json +3 -3
- package/src/Array.ts +351 -3
- package/src/BigDecimal.ts +88 -0
- package/src/BigInt.ts +68 -0
- package/src/Boolean.ts +34 -0
- package/src/Brand.ts +10 -0
- package/src/ByteSize.ts +87 -0
- package/src/Cache.ts +72 -24
- package/src/Cause.ts +83 -1
- package/src/Channel.ts +368 -18
- package/src/ChannelSchema.ts +13 -0
- package/src/Chunk.ts +193 -0
- package/src/Clock.ts +7 -0
- package/src/Combiner.ts +10 -0
- package/src/Config.ts +82 -8
- package/src/ConfigProvider.ts +28 -0
- package/src/Console.ts +26 -0
- package/src/Context.ts +50 -0
- package/src/Cron.ts +32 -1
- package/src/Crypto.ts +5 -0
- package/src/Data.ts +13 -0
- package/src/DateTime.ts +171 -0
- package/src/Deferred.ts +51 -0
- package/src/Differ.ts +2 -0
- package/src/Duration.ts +90 -0
- package/src/Effect.ts +692 -27
- package/src/Effectable.ts +4 -0
- package/src/Equal.ts +12 -1
- package/src/Equivalence.ts +22 -0
- package/src/ErrorReporter.ts +36 -0
- package/src/ExecutionPlan.ts +58 -14
- package/src/Exit.ts +40 -0
- package/src/Fiber.ts +20 -0
- package/src/FiberHandle.ts +29 -4
- package/src/FiberMap.ts +38 -0
- package/src/FiberSet.ts +21 -0
- package/src/FileSystem.ts +16 -0
- package/src/Filter.ts +55 -0
- package/src/Formatter.ts +42 -1
- package/src/Function.ts +30 -0
- package/src/Graph.ts +317 -36
- package/src/HKT.ts +5 -0
- package/src/Hash.ts +15 -0
- package/src/HashMap.ts +91 -0
- package/src/HashRing.ts +32 -5
- package/src/HashSet.ts +53 -0
- package/src/Inspectable.ts +8 -0
- package/src/Iterable.ts +127 -0
- package/src/JsonPatch.ts +5 -0
- package/src/JsonPointer.ts +5 -0
- package/src/JsonSchema.ts +17 -0
- package/src/Latch.ts +14 -0
- package/src/Layer.ts +101 -1
- package/src/LayerMap.ts +7 -0
- package/src/LayerRef.ts +5 -0
- package/src/LogLevel.ts +20 -0
- package/src/Logger.ts +41 -5
- package/src/ManagedRuntime.ts +12 -1
- package/src/Match.ts +52 -0
- package/src/Metric.ts +69 -0
- package/src/MutableHashMap.ts +44 -0
- package/src/MutableHashSet.ts +17 -0
- package/src/MutableList.ts +21 -0
- package/src/MutableRef.ts +32 -0
- package/src/Newtype.ts +9 -0
- package/src/NonEmptyIterable.ts +4 -0
- package/src/Number.ts +61 -0
- package/src/Optic.ts +57 -0
- package/src/Option.ts +134 -0
- package/src/Order.ts +30 -0
- package/src/Ordering.ts +7 -0
- package/src/PartitionedSemaphore.ts +61 -22
- package/src/Path.ts +6 -0
- package/src/Pipeable.ts +7 -0
- package/src/PlatformError.ts +8 -0
- package/src/Pool.ts +48 -37
- package/src/Predicate.ts +85 -0
- package/src/PrimaryKey.ts +5 -0
- package/src/PubSub.ts +90 -9
- package/src/Pull.ts +20 -0
- package/src/Queue.ts +80 -10
- package/src/Random.ts +13 -0
- package/src/RcMap.ts +49 -2
- package/src/RcRef.ts +6 -0
- package/src/Record.ts +100 -0
- package/src/Redactable.ts +6 -0
- package/src/Redacted.ts +8 -0
- package/src/Reducer.ts +4 -0
- package/src/Ref.ts +42 -0
- package/src/References.ts +21 -0
- package/src/RegExp.ts +4 -0
- package/src/Request.ts +32 -0
- package/src/RequestResolver.ts +59 -10
- package/src/Resource.ts +7 -0
- package/src/Result.ts +93 -0
- package/src/Runtime.ts +10 -0
- package/src/Schedule.ts +61 -0
- package/src/Scheduler.ts +7 -0
- package/src/Schema.ts +499 -4
- package/src/SchemaAST.ts +115 -1
- package/src/SchemaGetter.ts +80 -4
- package/src/SchemaIssue.ts +34 -0
- package/src/SchemaParser.ts +26 -0
- package/src/SchemaRepresentation.ts +148 -0
- package/src/SchemaTransformation.ts +53 -0
- package/src/Scope.ts +19 -0
- package/src/ScopedCache.ts +82 -19
- package/src/ScopedRef.ts +9 -0
- package/src/Semaphore.ts +26 -0
- package/src/Sink.ts +126 -2
- package/src/StandardSchema.ts +1 -0
- package/src/Stdio.ts +7 -0
- package/src/Stream.ts +780 -103
- package/src/String.ts +87 -0
- package/src/Struct.ts +46 -0
- package/src/SubscriptionRef.ts +65 -0
- package/src/Symbol.ts +2 -0
- package/src/SynchronizedRef.ts +63 -0
- package/src/Take.ts +3 -0
- package/src/Terminal.ts +8 -0
- package/src/Tracer.ts +23 -0
- package/src/Trie.ts +68 -0
- package/src/Tuple.ts +38 -0
- package/src/TxChunk.ts +52 -0
- package/src/TxDeferred.ts +15 -0
- package/src/TxHashMap.ts +97 -6
- package/src/TxHashSet.ts +83 -3
- package/src/TxPriorityQueue.ts +34 -2
- package/src/TxPubSub.ts +26 -0
- package/src/TxQueue.ts +51 -0
- package/src/TxReentrantLock.ts +53 -36
- package/src/TxRef.ts +14 -0
- package/src/TxSemaphore.ts +47 -31
- package/src/TxSubscriptionRef.ts +25 -0
- package/src/Types.ts +36 -0
- package/src/UndefinedOr.ts +15 -0
- package/src/Unify.ts +15 -0
- package/src/Utils.ts +4 -0
- package/src/Version.ts +38 -0
- package/src/ai/Chat.ts +1 -1
- package/src/ai/DecisionModel.ts +42 -1
- package/src/ai/LanguageModel.ts +43 -21
- package/src/ai/McpSchema.ts +3 -3
- package/src/ai/McpServer.ts +119 -39
- package/src/ai/Response.ts +27 -12
- package/src/ai/Telemetry.ts +62 -58
- package/src/ai/internal/mcpProtocol/v2024_11_05.ts +1 -0
- package/src/ai/internal/mcpProtocol/v2025_03_26.ts +1 -0
- package/src/ai/internal/mcpProtocol/v2025_06_18.ts +1 -0
- package/src/ai/internal/mcpProtocol/v2025_11_25.ts +1 -0
- package/src/ai/internal/mcpRuntime.ts +84 -43
- package/src/ai/internal/mcpSchema/v2024_11_05.ts +4 -2
- package/src/ai/internal/mcpStatefulRuntime.ts +2 -0
- package/src/cluster/ClusterWorkflowEngine.ts +18 -4
- package/src/cluster/K8sHttpClient.ts +12 -2
- package/src/cluster/Sharding.ts +24 -24
- package/src/cluster/SqlMessageStorage.ts +26 -13
- package/src/cluster/SqlRunnerStorage.ts +85 -113
- package/src/cluster/internal/entityManager.ts +68 -80
- package/src/cluster/internal/interruptors.ts +13 -0
- package/src/cluster/internal/resourceMap.ts +55 -17
- package/src/cluster/internal/resourceRef.ts +189 -96
- package/src/encoding/Base64.ts +4 -0
- package/src/encoding/Base64Url.ts +4 -0
- package/src/encoding/EncodingError.ts +5 -0
- package/src/encoding/Hex.ts +5 -0
- package/src/encoding/Toml.ts +2 -2
- package/src/encoding/Yaml.ts +8 -4
- package/src/encoding/index.ts +4 -0
- package/src/eventlog/SqlEventJournal.ts +18 -4
- package/src/eventlog/SqlEventLogServerUnencrypted.ts +282 -235
- package/src/http/Headers.ts +8 -2
- package/src/http/HttpClient.ts +44 -27
- package/src/http/HttpClientResponse.ts +3 -1
- package/src/http/HttpEffect.ts +11 -2
- package/src/http/HttpMiddleware.ts +67 -46
- package/src/http/HttpServer.ts +1 -1
- package/src/http/HttpStaticServer.ts +16 -0
- package/src/http/HttpTraceContext.ts +8 -4
- package/src/http/internal/tracing.ts +52 -0
- package/src/http-api/HttpApiBuilder.ts +5 -1
- package/src/http-api/HttpApiClient.ts +13 -4
- package/src/http-api/HttpApiError.ts +8 -3
- package/src/http-api/HttpApiSecurity.ts +8 -8
- package/src/index.ts +156 -0
- package/src/internal/arbitrary/array.ts +3 -3
- package/src/internal/arbitrary/model.ts +37 -14
- package/src/internal/arbitrary/runner.ts +7 -7
- package/src/internal/arbitrary/schema.ts +4 -3
- package/src/internal/core.ts +56 -2
- package/src/internal/dateTime.ts +3 -1
- package/src/internal/effect.ts +156 -156
- package/src/internal/rcRef.ts +83 -33
- package/src/internal/schedule.ts +23 -17
- package/src/internal/schema/fromJsonSchemaDocument.ts +5 -3
- package/src/internal/schema/standardSchema.ts +2 -2
- package/src/internal/version.ts +2 -0
- package/src/observability/OtlpExporter.ts +9 -6
- package/src/observability/OtlpLogger.ts +20 -21
- package/src/observability/OtlpMetrics.ts +34 -93
- package/src/observability/OtlpResource.ts +18 -27
- package/src/observability/OtlpTracer.ts +34 -40
- package/src/observability/internal/otlpProtobuf.ts +60 -0
- package/src/reactivity/AsyncResult.ts +1 -1
- package/src/reactivity/Atom.ts +10 -6
- package/src/reactivity/AtomHttpApi.ts +2 -4
- package/src/reactivity/AtomRegistry.ts +7 -0
- package/src/rpc/RpcClient.ts +74 -46
- package/src/rpc/RpcServer.ts +28 -25
- package/src/rpc/Utils.ts +4 -10
- package/src/rpc/internal/tracing.ts +22 -0
- package/src/schema/SchemaCompiler/runtime.ts +4 -1
- package/src/sql/SqlClient.ts +4 -4
- package/src/sql/Statement.ts +59 -7
- package/src/testing/TestClock.ts +9 -0
- package/src/testing/TestConsole.ts +8 -0
- package/src/testing/index.ts +3 -0
- package/src/workflow/WorkflowEngine.ts +4 -0
package/dist/Stream.js
CHANGED
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
* stream lifecycle: create a stream, transform or combine it, control buffering
|
|
9
9
|
* and timing, handle failures, and finally consume it.
|
|
10
10
|
*
|
|
11
|
+
* @stability stable
|
|
11
12
|
* @since 2.0.0
|
|
12
13
|
*/
|
|
13
14
|
// @effect-diagnostics returnEffectInGen:off
|
|
@@ -55,6 +56,7 @@ import { isString } from "./String.js";
|
|
|
55
56
|
*
|
|
56
57
|
* @see {@link isStream} for the public guard that checks this identifier
|
|
57
58
|
*
|
|
59
|
+
* @stability stable
|
|
58
60
|
* @category type IDs
|
|
59
61
|
* @since 4.0.0
|
|
60
62
|
*/
|
|
@@ -71,6 +73,7 @@ export const TypeId = "~effect/Stream";
|
|
|
71
73
|
* Stream.isStream({ data: [1, 2, 3] }) // => false
|
|
72
74
|
* ```
|
|
73
75
|
*
|
|
76
|
+
* @stability stable
|
|
74
77
|
* @category guards
|
|
75
78
|
* @since 4.0.0
|
|
76
79
|
*/
|
|
@@ -86,6 +89,7 @@ export const isStream = u => hasProperty(u, TypeId);
|
|
|
86
89
|
* Stream.DefaultChunkSize // => 4096
|
|
87
90
|
* ```
|
|
88
91
|
*
|
|
92
|
+
* @stability stable
|
|
89
93
|
* @category constants
|
|
90
94
|
* @since 2.0.0
|
|
91
95
|
*/
|
|
@@ -103,6 +107,7 @@ export const DefaultChunkSize = Channel.DefaultChunkSize;
|
|
|
103
107
|
* await Effect.runPromise(Stream.runCollect(stream)) // => [1, 2, 3]
|
|
104
108
|
* ```
|
|
105
109
|
*
|
|
110
|
+
* @stability stable
|
|
106
111
|
* @category constructors
|
|
107
112
|
* @since 2.0.0
|
|
108
113
|
*/
|
|
@@ -119,6 +124,7 @@ export const fromChannel = internal.fromChannel;
|
|
|
119
124
|
* await Effect.runPromise(Stream.runCollect(stream)) // => [42]
|
|
120
125
|
* ```
|
|
121
126
|
*
|
|
127
|
+
* @stability stable
|
|
122
128
|
* @category constructors
|
|
123
129
|
* @since 2.0.0
|
|
124
130
|
*/
|
|
@@ -149,6 +155,7 @@ export const fromEffect = effect => fromChannel(Channel.fromEffect(Effect.map(ef
|
|
|
149
155
|
* ) // => ["Hello, World!"]
|
|
150
156
|
* ```
|
|
151
157
|
*
|
|
158
|
+
* @stability stable
|
|
152
159
|
* @category accessors
|
|
153
160
|
* @since 4.0.0
|
|
154
161
|
*/
|
|
@@ -190,6 +197,7 @@ export const service = service => fromEffect(Effect.service(service));
|
|
|
190
197
|
* ) // => ["Hello, World!"]
|
|
191
198
|
* ```
|
|
192
199
|
*
|
|
200
|
+
* @stability stable
|
|
193
201
|
* @category accessors
|
|
194
202
|
* @since 4.0.0
|
|
195
203
|
*/
|
|
@@ -211,6 +219,7 @@ export const serviceOption = service => fromEffect(Effect.serviceOption(service)
|
|
|
211
219
|
* drained // => true
|
|
212
220
|
* ```
|
|
213
221
|
*
|
|
222
|
+
* @stability stable
|
|
214
223
|
* @category constructors
|
|
215
224
|
* @since 4.0.0
|
|
216
225
|
*/
|
|
@@ -228,6 +237,7 @@ export const fromEffectDrain = effect => fromPull(Effect.succeed(Effect.flatMap(
|
|
|
228
237
|
* await Effect.runPromise(Stream.runCollect(stream)) // => [1, 2, 3, 4, 5]
|
|
229
238
|
* ```
|
|
230
239
|
*
|
|
240
|
+
* @stability stable
|
|
231
241
|
* @category constructors
|
|
232
242
|
* @since 4.0.0
|
|
233
243
|
*/
|
|
@@ -245,6 +255,7 @@ export const fromEffectRepeat = effect => fromPull(Effect.succeed(Effect.map(eff
|
|
|
245
255
|
* await Effect.runPromise(Stream.runCollect(stream)) // => ["ping", "ping", "ping"]
|
|
246
256
|
* ```
|
|
247
257
|
*
|
|
258
|
+
* @stability stable
|
|
248
259
|
* @category constructors
|
|
249
260
|
* @since 4.0.0
|
|
250
261
|
*/
|
|
@@ -276,6 +287,7 @@ export const fromEffectSchedule = (effect, schedule) => fromPull(Effect.gen(func
|
|
|
276
287
|
* await Effect.runPromise(Stream.tick(0).pipe(Stream.take(3), Stream.runCollect)) // => [undefined, undefined, undefined]
|
|
277
288
|
* ```
|
|
278
289
|
*
|
|
290
|
+
* @stability stable
|
|
279
291
|
* @category constructors
|
|
280
292
|
* @since 2.0.0
|
|
281
293
|
*/
|
|
@@ -316,6 +328,7 @@ export const tick = interval => fromPull(Effect.sync(() => {
|
|
|
316
328
|
* await Effect.runPromise(program) // => [1, 2, 3]
|
|
317
329
|
* ```
|
|
318
330
|
*
|
|
331
|
+
* @stability stable
|
|
319
332
|
* @category constructors
|
|
320
333
|
* @since 2.0.0
|
|
321
334
|
*/
|
|
@@ -335,6 +348,7 @@ export const fromPull = pull => fromChannel(Channel.fromPull(pull));
|
|
|
335
348
|
* await Effect.runPromise(Stream.runCollect(transformed)) // => [1, 2, 3]
|
|
336
349
|
* ```
|
|
337
350
|
*
|
|
351
|
+
* @stability stable
|
|
338
352
|
* @category constructors
|
|
339
353
|
* @since 4.0.0
|
|
340
354
|
*/
|
|
@@ -368,6 +382,7 @@ export const transformPull = (self, f) => fromChannel(Channel.fromTransform((_,
|
|
|
368
382
|
* finalized // => [true]
|
|
369
383
|
* ```
|
|
370
384
|
*
|
|
385
|
+
* @stability stable
|
|
371
386
|
* @category constructors
|
|
372
387
|
* @since 4.0.0
|
|
373
388
|
*/
|
|
@@ -385,6 +400,7 @@ export const transformPullBracket = (self, f) => fromChannel(Channel.fromTransfo
|
|
|
385
400
|
* values.flat() // => [1, 2, 3]
|
|
386
401
|
* ```
|
|
387
402
|
*
|
|
403
|
+
* @stability stable
|
|
388
404
|
* @category destructors
|
|
389
405
|
* @since 2.0.0
|
|
390
406
|
*/
|
|
@@ -420,6 +436,7 @@ export const toChannel = stream => stream.channel;
|
|
|
420
436
|
* await Effect.runPromise(Stream.runCollect(stream)) // => [1, 2, 3]
|
|
421
437
|
* ```
|
|
422
438
|
*
|
|
439
|
+
* @stability stable
|
|
423
440
|
* @category constructors
|
|
424
441
|
* @since 4.0.0
|
|
425
442
|
*/
|
|
@@ -435,6 +452,7 @@ export const callback = (f, options) => fromChannel(Channel.callbackArray(f, opt
|
|
|
435
452
|
* await Effect.runPromise(Stream.runCollect(Stream.empty)) // => []
|
|
436
453
|
* ```
|
|
437
454
|
*
|
|
455
|
+
* @stability stable
|
|
438
456
|
* @category constructors
|
|
439
457
|
* @since 2.0.0
|
|
440
458
|
*/
|
|
@@ -450,6 +468,7 @@ export const empty = /*#__PURE__*/fromChannel(Channel.empty);
|
|
|
450
468
|
* await Effect.runPromise(Stream.runCollect(Stream.succeed(3))) // => [3]
|
|
451
469
|
* ```
|
|
452
470
|
*
|
|
471
|
+
* @stability stable
|
|
453
472
|
* @category constructors
|
|
454
473
|
* @since 2.0.0
|
|
455
474
|
*/
|
|
@@ -467,6 +486,7 @@ export const succeed = value => fromChannel(Channel.succeed(Arr.of(value)));
|
|
|
467
486
|
* await Effect.runPromise(Stream.runCollect(stream)) // => [1, 2, 3]
|
|
468
487
|
* ```
|
|
469
488
|
*
|
|
489
|
+
* @stability stable
|
|
470
490
|
* @category constructors
|
|
471
491
|
* @since 2.0.0
|
|
472
492
|
*/
|
|
@@ -486,6 +506,7 @@ export const make = (...values) => fromArray(values);
|
|
|
486
506
|
* await Effect.runPromise(Stream.sync(() => 2 + 1).pipe(Stream.runCollect)) // => [3]
|
|
487
507
|
* ```
|
|
488
508
|
*
|
|
509
|
+
* @stability stable
|
|
489
510
|
* @category constructors
|
|
490
511
|
* @since 2.0.0
|
|
491
512
|
*/
|
|
@@ -505,6 +526,7 @@ export const sync = evaluate => fromChannel(Channel.sync(() => Arr.of(evaluate()
|
|
|
505
526
|
* await Effect.runPromise(Stream.suspend(() => Stream.make(1, 2, 3)).pipe(Stream.runCollect)) // => [1, 2, 3]
|
|
506
527
|
* ```
|
|
507
528
|
*
|
|
529
|
+
* @stability stable
|
|
508
530
|
* @category constructors
|
|
509
531
|
* @since 2.0.0
|
|
510
532
|
*/
|
|
@@ -520,6 +542,7 @@ export const suspend = stream => fromChannel(Channel.suspend(() => stream().chan
|
|
|
520
542
|
* await Effect.runPromise(Effect.exit(Stream.runCollect(Stream.fail("Uh oh!")))) // => Exit.fail("Uh oh!")
|
|
521
543
|
* ```
|
|
522
544
|
*
|
|
545
|
+
* @stability stable
|
|
523
546
|
* @category constructors
|
|
524
547
|
* @since 2.0.0
|
|
525
548
|
*/
|
|
@@ -537,6 +560,7 @@ export const fail = error => fromChannel(Channel.fail(error));
|
|
|
537
560
|
* await Effect.runPromise(Stream.runCollect(stream).pipe(Effect.exit)) // => Exit.fail("Uh oh!")
|
|
538
561
|
* ```
|
|
539
562
|
*
|
|
563
|
+
* @stability stable
|
|
540
564
|
* @category constructors
|
|
541
565
|
* @since 2.0.0
|
|
542
566
|
*/
|
|
@@ -556,6 +580,7 @@ export const failSync = evaluate => fromChannel(Channel.failSync(evaluate));
|
|
|
556
580
|
* await Effect.runPromise(Stream.runCollect(stream)) // => ["recovered"]
|
|
557
581
|
* ```
|
|
558
582
|
*
|
|
583
|
+
* @stability stable
|
|
559
584
|
* @category constructors
|
|
560
585
|
* @since 2.0.0
|
|
561
586
|
*/
|
|
@@ -574,6 +599,7 @@ export const failCause = cause => fromChannel(Channel.failCause(cause));
|
|
|
574
599
|
* await Effect.runPromise(Effect.exit(Stream.runCollect(stream))) // => Exit.failCause(Cause.die(defect))
|
|
575
600
|
* ```
|
|
576
601
|
*
|
|
602
|
+
* @stability stable
|
|
577
603
|
* @category constructors
|
|
578
604
|
* @since 2.0.0
|
|
579
605
|
*/
|
|
@@ -593,6 +619,7 @@ export const die = defect => fromChannel(Channel.die(defect));
|
|
|
593
619
|
* await Effect.runPromise(Stream.runCollect(stream).pipe(Effect.exit)) // => Exit.fail("Connection timeout after retries")
|
|
594
620
|
* ```
|
|
595
621
|
*
|
|
622
|
+
* @stability stable
|
|
596
623
|
* @category constructors
|
|
597
624
|
* @since 2.0.0
|
|
598
625
|
*/
|
|
@@ -627,6 +654,7 @@ export const failCauseSync = evaluate => fromChannel(Channel.failCauseSync(evalu
|
|
|
627
654
|
* await Effect.runPromise(program)
|
|
628
655
|
* ```
|
|
629
656
|
*
|
|
657
|
+
* @stability stable
|
|
630
658
|
* @category constructors
|
|
631
659
|
* @since 2.0.0
|
|
632
660
|
*/
|
|
@@ -656,6 +684,7 @@ export const fromIteratorSucceed = (iterator, maxChunkSize) => fromChannel(Chann
|
|
|
656
684
|
* await Effect.runPromise(program)
|
|
657
685
|
* ```
|
|
658
686
|
*
|
|
687
|
+
* @stability stable
|
|
659
688
|
* @category constructors
|
|
660
689
|
* @since 2.0.0
|
|
661
690
|
*/
|
|
@@ -696,6 +725,7 @@ export const fromIterable = (iterable, options) => Array.isArray(iterable) && op
|
|
|
696
725
|
* await Effect.runPromise(program)
|
|
697
726
|
* ```
|
|
698
727
|
*
|
|
728
|
+
* @stability stable
|
|
699
729
|
* @category constructors
|
|
700
730
|
* @since 2.0.0
|
|
701
731
|
*/
|
|
@@ -719,6 +749,7 @@ export const fromIterableEffect = iterable => unwrap(Effect.map(iterable, fromIt
|
|
|
719
749
|
* await Effect.runPromise(program)
|
|
720
750
|
* ```
|
|
721
751
|
*
|
|
752
|
+
* @stability stable
|
|
722
753
|
* @category constructors
|
|
723
754
|
* @since 4.0.0
|
|
724
755
|
*/
|
|
@@ -740,6 +771,7 @@ export const fromIterableEffectRepeat = iterable => flatMap(fromEffectRepeat(ite
|
|
|
740
771
|
* await Effect.runPromise(program)
|
|
741
772
|
* ```
|
|
742
773
|
*
|
|
774
|
+
* @stability stable
|
|
743
775
|
* @category constructors
|
|
744
776
|
* @since 4.0.0
|
|
745
777
|
*/
|
|
@@ -766,6 +798,7 @@ export const fromArray = array => Arr.isReadonlyArrayNonEmpty(array) ? fromChann
|
|
|
766
798
|
* await Effect.runPromise(program)
|
|
767
799
|
* ```
|
|
768
800
|
*
|
|
801
|
+
* @stability stable
|
|
769
802
|
* @category constructors
|
|
770
803
|
* @since 4.0.0
|
|
771
804
|
*/
|
|
@@ -787,6 +820,7 @@ export const fromArrayEffect = effect => unwrap(Effect.map(effect, fromArray));
|
|
|
787
820
|
* await Effect.runPromise(program)
|
|
788
821
|
* ```
|
|
789
822
|
*
|
|
823
|
+
* @stability stable
|
|
790
824
|
* @category constructors
|
|
791
825
|
* @since 4.0.0
|
|
792
826
|
*/
|
|
@@ -819,6 +853,7 @@ export const fromArrays = (...arrays) => fromChannel(Channel.fromArray(Arr.filte
|
|
|
819
853
|
* await Effect.runPromise(program)
|
|
820
854
|
* ```
|
|
821
855
|
*
|
|
856
|
+
* @stability stable
|
|
822
857
|
* @category constructors
|
|
823
858
|
* @since 2.0.0
|
|
824
859
|
*/
|
|
@@ -851,6 +886,7 @@ export const fromQueue = queue => fromChannel(Channel.fromQueueArray(queue));
|
|
|
851
886
|
* await Effect.runPromise(program)
|
|
852
887
|
* ```
|
|
853
888
|
*
|
|
889
|
+
* @stability stable
|
|
854
890
|
* @category constructors
|
|
855
891
|
* @since 2.0.0
|
|
856
892
|
*/
|
|
@@ -883,6 +919,7 @@ export const fromPubSub = pubsub => fromChannel(Channel.fromPubSubArray(pubsub))
|
|
|
883
919
|
* await Effect.runPromise(program)
|
|
884
920
|
* ```
|
|
885
921
|
*
|
|
922
|
+
* @stability stable
|
|
886
923
|
* @category constructors
|
|
887
924
|
* @since 4.0.0
|
|
888
925
|
*/
|
|
@@ -924,6 +961,7 @@ export const fromPubSubTake = pubsub => fromChannel(Channel.fromPubSubTake(pubsu
|
|
|
924
961
|
* await Effect.runPromise(program)
|
|
925
962
|
* ```
|
|
926
963
|
*
|
|
964
|
+
* @stability stable
|
|
927
965
|
* @category constructors
|
|
928
966
|
* @since 2.0.0
|
|
929
967
|
*/
|
|
@@ -952,6 +990,7 @@ export const fromReadableStream = options => fromChannel(Channel.fromReadableStr
|
|
|
952
990
|
*
|
|
953
991
|
* ```
|
|
954
992
|
*
|
|
993
|
+
* @stability stable
|
|
955
994
|
* @category constructors
|
|
956
995
|
* @since 2.0.0
|
|
957
996
|
*/
|
|
@@ -975,6 +1014,7 @@ export const fromAsyncIterable = (iterable, onError) => fromChannel(Channel.from
|
|
|
975
1014
|
* await Effect.runPromise(program)
|
|
976
1015
|
* ```
|
|
977
1016
|
*
|
|
1017
|
+
* @stability stable
|
|
978
1018
|
* @category constructors
|
|
979
1019
|
* @since 2.0.0
|
|
980
1020
|
*/
|
|
@@ -1008,6 +1048,7 @@ export const fromSchedule = schedule => fromPull(Effect.map(Schedule.toStepWithS
|
|
|
1008
1048
|
* await Effect.runPromise(program)
|
|
1009
1049
|
* ```
|
|
1010
1050
|
*
|
|
1051
|
+
* @stability stable
|
|
1011
1052
|
* @category constructors
|
|
1012
1053
|
* @since 4.0.0
|
|
1013
1054
|
*/
|
|
@@ -1041,6 +1082,7 @@ export const fromSubscription = pubsub => fromChannel(Channel.fromSubscriptionAr
|
|
|
1041
1082
|
*
|
|
1042
1083
|
* ```
|
|
1043
1084
|
*
|
|
1085
|
+
* @stability stable
|
|
1044
1086
|
* @category constructors
|
|
1045
1087
|
* @since 3.1.0
|
|
1046
1088
|
*/
|
|
@@ -1077,6 +1119,7 @@ export const fromEventListener = (target, type, options) => callback(queue => {
|
|
|
1077
1119
|
* await Effect.runPromise(program)
|
|
1078
1120
|
* ```
|
|
1079
1121
|
*
|
|
1122
|
+
* @stability stable
|
|
1080
1123
|
* @category constructors
|
|
1081
1124
|
* @since 2.0.0
|
|
1082
1125
|
*/
|
|
@@ -1117,6 +1160,7 @@ export const unfold = (s, f) => fromPull(Effect.sync(() => {
|
|
|
1117
1160
|
* await Effect.runPromise(Stream.runCollect(stream)) // => [0, 1, 2, 3]
|
|
1118
1161
|
* ```
|
|
1119
1162
|
*
|
|
1163
|
+
* @stability stable
|
|
1120
1164
|
* @category constructors
|
|
1121
1165
|
* @since 2.0.0
|
|
1122
1166
|
*/
|
|
@@ -1154,6 +1198,7 @@ export const paginate = (s, f) => fromPull(Effect.sync(() => {
|
|
|
1154
1198
|
* await Effect.runPromise(program)
|
|
1155
1199
|
* ```
|
|
1156
1200
|
*
|
|
1201
|
+
* @stability stable
|
|
1157
1202
|
* @category constructors
|
|
1158
1203
|
* @since 2.0.0
|
|
1159
1204
|
*/
|
|
@@ -1180,6 +1225,7 @@ export const iterate = (value, next) => unfold(value, a => Effect.succeed([a, ne
|
|
|
1180
1225
|
* await Effect.runPromise(program)
|
|
1181
1226
|
* ```
|
|
1182
1227
|
*
|
|
1228
|
+
* @stability stable
|
|
1183
1229
|
* @category constructors
|
|
1184
1230
|
* @since 2.0.0
|
|
1185
1231
|
*/
|
|
@@ -1216,6 +1262,7 @@ export const range = (min, max, chunkSize = Channel.DefaultChunkSize) => min > m
|
|
|
1216
1262
|
* await Effect.runPromise(program) // => []
|
|
1217
1263
|
* ```
|
|
1218
1264
|
*
|
|
1265
|
+
* @stability stable
|
|
1219
1266
|
* @category constructors
|
|
1220
1267
|
* @since 2.0.0
|
|
1221
1268
|
*/
|
|
@@ -1239,6 +1286,7 @@ export const never = /*#__PURE__*/fromChannel(Channel.never);
|
|
|
1239
1286
|
* await Effect.runPromise(program)
|
|
1240
1287
|
* ```
|
|
1241
1288
|
*
|
|
1289
|
+
* @stability stable
|
|
1242
1290
|
* @category constructors
|
|
1243
1291
|
* @since 2.0.0
|
|
1244
1292
|
*/
|
|
@@ -1269,6 +1317,7 @@ export const unwrap = effect => fromChannel(Channel.unwrap(Effect.map(effect, to
|
|
|
1269
1317
|
* events // => ["acquire", "release"]
|
|
1270
1318
|
* ```
|
|
1271
1319
|
*
|
|
1320
|
+
* @stability stable
|
|
1272
1321
|
* @category resource management
|
|
1273
1322
|
* @since 2.0.0
|
|
1274
1323
|
*/
|
|
@@ -1285,6 +1334,7 @@ export const scoped = self => fromChannel(Channel.scoped(self.channel));
|
|
|
1285
1334
|
* await Effect.runPromise(Stream.runCollect(stream)) // => [1, 3, 5]
|
|
1286
1335
|
* ```
|
|
1287
1336
|
*
|
|
1337
|
+
* @stability stable
|
|
1288
1338
|
* @category mapping
|
|
1289
1339
|
* @since 2.0.0
|
|
1290
1340
|
*/
|
|
@@ -1313,6 +1363,7 @@ export const map = /*#__PURE__*/dual(2, (self, f) => suspend(() => {
|
|
|
1313
1363
|
*
|
|
1314
1364
|
* @see {@link map} for deriving the replacement value from each element
|
|
1315
1365
|
*
|
|
1366
|
+
* @stability stable
|
|
1316
1367
|
* @category mapping
|
|
1317
1368
|
* @since 4.0.0
|
|
1318
1369
|
*/
|
|
@@ -1348,6 +1399,7 @@ export const as = /*#__PURE__*/dual(2, (self, value) => map(self, () => value));
|
|
|
1348
1399
|
* await Effect.runPromise(program)
|
|
1349
1400
|
* ```
|
|
1350
1401
|
*
|
|
1402
|
+
* @stability stable
|
|
1351
1403
|
* @category mapping
|
|
1352
1404
|
* @since 2.0.0
|
|
1353
1405
|
*/
|
|
@@ -1372,6 +1424,7 @@ export const mapBoth = /*#__PURE__*/dual(2, (self, options) => self.pipe(map(opt
|
|
|
1372
1424
|
* await Effect.runPromise(program)
|
|
1373
1425
|
* ```
|
|
1374
1426
|
*
|
|
1427
|
+
* @stability stable
|
|
1375
1428
|
* @category mapping
|
|
1376
1429
|
* @since 4.0.0
|
|
1377
1430
|
*/
|
|
@@ -1410,6 +1463,7 @@ export const mapArray = /*#__PURE__*/dual(2, (self, f) => fromChannel(Channel.ma
|
|
|
1410
1463
|
* events // => ["Processing: 1", "Processing: 2", "Processing: 3"]
|
|
1411
1464
|
* ```
|
|
1412
1465
|
*
|
|
1466
|
+
* @stability stable
|
|
1413
1467
|
* @category mapping
|
|
1414
1468
|
* @since 2.0.0
|
|
1415
1469
|
*/
|
|
@@ -1437,6 +1491,7 @@ export const mapEffect = /*#__PURE__*/dual(args => isStream(args[0]), (self, f,
|
|
|
1437
1491
|
* await Effect.runPromise(program)
|
|
1438
1492
|
* ```
|
|
1439
1493
|
*
|
|
1494
|
+
* @stability stable
|
|
1440
1495
|
* @category sequencing
|
|
1441
1496
|
* @since 2.0.0
|
|
1442
1497
|
*/
|
|
@@ -1468,6 +1523,7 @@ export const flattenEffect = /*#__PURE__*/dual(args => isStream(args[0]), (self,
|
|
|
1468
1523
|
* await Effect.runPromise(program)
|
|
1469
1524
|
* ```
|
|
1470
1525
|
*
|
|
1526
|
+
* @stability stable
|
|
1471
1527
|
* @category mapping
|
|
1472
1528
|
* @since 4.0.0
|
|
1473
1529
|
*/
|
|
@@ -1500,6 +1556,7 @@ export const mapArrayEffect = /*#__PURE__*/dual(2, (self, f) => fromChannel(Chan
|
|
|
1500
1556
|
* await Effect.runPromise(program)
|
|
1501
1557
|
* ```
|
|
1502
1558
|
*
|
|
1559
|
+
* @stability stable
|
|
1503
1560
|
* @category error handling
|
|
1504
1561
|
* @since 4.0.0
|
|
1505
1562
|
*/
|
|
@@ -1528,6 +1585,7 @@ export const result = self => self.pipe(map(Result.succeed), catch_(e => succeed
|
|
|
1528
1585
|
* events // => ["before mapping: 1", "after mapping: 2", "before mapping: 2", "after mapping: 4", "before mapping: 3", "after mapping: 6"]
|
|
1529
1586
|
* ```
|
|
1530
1587
|
*
|
|
1588
|
+
* @stability stable
|
|
1531
1589
|
* @category sequencing
|
|
1532
1590
|
* @since 2.0.0
|
|
1533
1591
|
*/
|
|
@@ -1558,6 +1616,7 @@ export const tap = /*#__PURE__*/dual(args => isStream(args[0]), (self, f, option
|
|
|
1558
1616
|
* events // => ["seen: 1", "seen: 2", "error: boom"]
|
|
1559
1617
|
* ```
|
|
1560
1618
|
*
|
|
1619
|
+
* @stability stable
|
|
1561
1620
|
* @category sequencing
|
|
1562
1621
|
* @since 2.0.0
|
|
1563
1622
|
*/
|
|
@@ -1589,6 +1648,7 @@ export const tapBoth = /*#__PURE__*/dual(2, (self, options) => self.pipe(tapErro
|
|
|
1589
1648
|
* await Effect.runPromise(program)
|
|
1590
1649
|
* ```
|
|
1591
1650
|
*
|
|
1651
|
+
* @stability stable
|
|
1592
1652
|
* @category sequencing
|
|
1593
1653
|
* @since 2.0.0
|
|
1594
1654
|
*/
|
|
@@ -1616,15 +1676,20 @@ export const tapSink = /*#__PURE__*/dual(2, (self, sink) => transformPullBracket
|
|
|
1616
1676
|
return sinkLatch.open;
|
|
1617
1677
|
}, true), Effect.forkIn(scope));
|
|
1618
1678
|
const pullAndOffer = pull.pipe(Effect.flatMap(chunk_ => {
|
|
1679
|
+
// The sink may have exited while the upstream pull was suspended.
|
|
1680
|
+
if (causeSink) return Effect.failCause(causeSink);
|
|
1681
|
+
if (sinkDone) return Effect.succeed(chunk_);
|
|
1619
1682
|
chunk = chunk_;
|
|
1620
1683
|
sinkLatch.closeUnsafe();
|
|
1621
1684
|
upstreamLatch.openUnsafe();
|
|
1622
1685
|
return Effect.as(sinkLatch.await, chunk_);
|
|
1623
1686
|
}), Pull.catchDone(() => {
|
|
1687
|
+
if (causeSink) return Effect.failCause(causeSink);
|
|
1688
|
+
if (sinkDone) return Cause.done();
|
|
1624
1689
|
streamDone = true;
|
|
1625
1690
|
sinkLatch.closeUnsafe();
|
|
1626
1691
|
upstreamLatch.openUnsafe();
|
|
1627
|
-
return Effect.flatMap(sinkLatch.await, () => Cause.done());
|
|
1692
|
+
return Effect.flatMap(sinkLatch.await, () => causeSink ? Effect.failCause(causeSink) : Cause.done());
|
|
1628
1693
|
}));
|
|
1629
1694
|
return Effect.suspend(() => {
|
|
1630
1695
|
if (causeSink) {
|
|
@@ -1661,6 +1726,7 @@ export const tapSink = /*#__PURE__*/dual(2, (self, sink) => transformPullBracket
|
|
|
1661
1726
|
* await Effect.runPromise(program)
|
|
1662
1727
|
* ```
|
|
1663
1728
|
*
|
|
1729
|
+
* @stability stable
|
|
1664
1730
|
* @category sequencing
|
|
1665
1731
|
* @since 2.0.0
|
|
1666
1732
|
*/
|
|
@@ -1685,6 +1751,7 @@ export const flatMap = /*#__PURE__*/dual(args => isStream(args[0]), (self, f, op
|
|
|
1685
1751
|
* }))
|
|
1686
1752
|
* ```
|
|
1687
1753
|
*
|
|
1754
|
+
* @stability stable
|
|
1688
1755
|
* @category sequencing
|
|
1689
1756
|
* @since 4.0.0
|
|
1690
1757
|
*/
|
|
@@ -1718,6 +1785,7 @@ export const switchMap = /*#__PURE__*/dual(args => isStream(args[0]), (self, f,
|
|
|
1718
1785
|
* await Effect.runPromise(program)
|
|
1719
1786
|
* ```
|
|
1720
1787
|
*
|
|
1788
|
+
* @stability stable
|
|
1721
1789
|
* @category sequencing
|
|
1722
1790
|
* @since 2.0.0
|
|
1723
1791
|
*/
|
|
@@ -1740,6 +1808,7 @@ export const flatten = /*#__PURE__*/dual(args => isStream(args[0]), (self, optio
|
|
|
1740
1808
|
* await Effect.runPromise(program)
|
|
1741
1809
|
* ```
|
|
1742
1810
|
*
|
|
1811
|
+
* @stability stable
|
|
1743
1812
|
* @category sequencing
|
|
1744
1813
|
* @since 4.0.0
|
|
1745
1814
|
*/
|
|
@@ -1760,6 +1829,7 @@ export const flattenArray = self => fromChannel(Channel.flattenArray(self.channe
|
|
|
1760
1829
|
* await Effect.runPromise(program)
|
|
1761
1830
|
* ```
|
|
1762
1831
|
*
|
|
1832
|
+
* @stability stable
|
|
1763
1833
|
* @category sequencing
|
|
1764
1834
|
* @since 2.0.0
|
|
1765
1835
|
*/
|
|
@@ -1789,6 +1859,7 @@ export const drain = self => fromChannel(Channel.drain(self.channel));
|
|
|
1789
1859
|
* events // => ["background task"]
|
|
1790
1860
|
* ```
|
|
1791
1861
|
*
|
|
1862
|
+
* @stability stable
|
|
1792
1863
|
* @category sequencing
|
|
1793
1864
|
* @since 2.0.0
|
|
1794
1865
|
*/
|
|
@@ -1813,6 +1884,7 @@ export const drainFork = /*#__PURE__*/dual(2, (self, that) => mergeEffect(self,
|
|
|
1813
1884
|
* await Effect.runPromise(program)
|
|
1814
1885
|
* ```
|
|
1815
1886
|
*
|
|
1887
|
+
* @stability stable
|
|
1816
1888
|
* @category repetition
|
|
1817
1889
|
* @since 2.0.0
|
|
1818
1890
|
*/
|
|
@@ -1837,6 +1909,7 @@ export const repeat = /*#__PURE__*/dual(2, (self, schedule) => fromChannel(Chann
|
|
|
1837
1909
|
* await Effect.runPromise(program)
|
|
1838
1910
|
* ```
|
|
1839
1911
|
*
|
|
1912
|
+
* @stability stable
|
|
1840
1913
|
* @category rate limiting
|
|
1841
1914
|
* @since 2.0.0
|
|
1842
1915
|
*/
|
|
@@ -1861,6 +1934,7 @@ export const schedule = /*#__PURE__*/dual(2, (self, schedule) => self.channel.pi
|
|
|
1861
1934
|
* await Effect.runPromise(program)
|
|
1862
1935
|
* ```
|
|
1863
1936
|
*
|
|
1937
|
+
* @stability stable
|
|
1864
1938
|
* @category delays & timeouts
|
|
1865
1939
|
* @since 2.0.0
|
|
1866
1940
|
*/
|
|
@@ -1889,6 +1963,7 @@ export const timeout = /*#__PURE__*/dual(2, (self, duration) => timeoutOrElse(se
|
|
|
1889
1963
|
*
|
|
1890
1964
|
* @see {@link timeout} for ending the stream instead of switching to a fallback stream
|
|
1891
1965
|
*
|
|
1966
|
+
* @stability stable
|
|
1892
1967
|
* @category delays & timeouts
|
|
1893
1968
|
* @since 4.0.0
|
|
1894
1969
|
*/
|
|
@@ -1950,6 +2025,7 @@ export const timeoutOrElse = /*#__PURE__*/dual(2, (self, options) => {
|
|
|
1950
2025
|
* await Effect.runPromise(program)
|
|
1951
2026
|
* ```
|
|
1952
2027
|
*
|
|
2028
|
+
* @stability stable
|
|
1953
2029
|
* @category repetition
|
|
1954
2030
|
* @since 2.0.0
|
|
1955
2031
|
*/
|
|
@@ -1988,6 +2064,7 @@ export const repeatElements = /*#__PURE__*/dual(2, (self, schedule) => fromChann
|
|
|
1988
2064
|
* await Effect.runPromise(program)
|
|
1989
2065
|
* ```
|
|
1990
2066
|
*
|
|
2067
|
+
* @stability stable
|
|
1991
2068
|
* @category repetition
|
|
1992
2069
|
* @since 2.0.0
|
|
1993
2070
|
*/
|
|
@@ -2009,6 +2086,7 @@ export const forever = self => fromChannel(Channel.forever(self.channel));
|
|
|
2009
2086
|
* await Effect.runPromise(program)
|
|
2010
2087
|
* ```
|
|
2011
2088
|
*
|
|
2089
|
+
* @stability stable
|
|
2012
2090
|
* @category sequencing
|
|
2013
2091
|
* @since 4.0.0
|
|
2014
2092
|
*/
|
|
@@ -2036,6 +2114,7 @@ export const flattenIterable = self => flatMap(self, fromIterable);
|
|
|
2036
2114
|
* await Effect.runPromise(program)
|
|
2037
2115
|
* ```
|
|
2038
2116
|
*
|
|
2117
|
+
* @stability stable
|
|
2039
2118
|
* @category sequencing
|
|
2040
2119
|
* @since 2.0.0
|
|
2041
2120
|
*/
|
|
@@ -2057,6 +2136,7 @@ export const flattenTake = self => self.channel.pipe(Channel.flattenArray, Chann
|
|
|
2057
2136
|
* }))
|
|
2058
2137
|
* ```
|
|
2059
2138
|
*
|
|
2139
|
+
* @stability stable
|
|
2060
2140
|
* @category sequencing
|
|
2061
2141
|
* @since 2.0.0
|
|
2062
2142
|
*/
|
|
@@ -2097,6 +2177,7 @@ function* concatChannels(self, that) {
|
|
|
2097
2177
|
* await Effect.runPromise(program)
|
|
2098
2178
|
* ```
|
|
2099
2179
|
*
|
|
2180
|
+
* @stability stable
|
|
2100
2181
|
* @category sequencing
|
|
2101
2182
|
* @since 2.0.0
|
|
2102
2183
|
*/
|
|
@@ -2125,6 +2206,7 @@ export const prepend = /*#__PURE__*/dual(2, (self, values) => concat(fromIterabl
|
|
|
2125
2206
|
* await Effect.runPromise(program)
|
|
2126
2207
|
* ```
|
|
2127
2208
|
*
|
|
2209
|
+
* @stability stable
|
|
2128
2210
|
* @category merging
|
|
2129
2211
|
* @since 2.0.0
|
|
2130
2212
|
*/
|
|
@@ -2161,6 +2243,7 @@ export const merge = /*#__PURE__*/dual(args => isStream(args[0]) && isStream(arg
|
|
|
2161
2243
|
* events // => ["side task"]
|
|
2162
2244
|
* ```
|
|
2163
2245
|
*
|
|
2246
|
+
* @stability stable
|
|
2164
2247
|
* @category merging
|
|
2165
2248
|
* @since 4.0.0
|
|
2166
2249
|
*/
|
|
@@ -2201,6 +2284,7 @@ export const mergeEffect = /*#__PURE__*/dual(2, (self, effect) => self.channel.p
|
|
|
2201
2284
|
* await Effect.runPromise(program)
|
|
2202
2285
|
* ```
|
|
2203
2286
|
*
|
|
2287
|
+
* @stability stable
|
|
2204
2288
|
* @category merging
|
|
2205
2289
|
* @since 4.0.0
|
|
2206
2290
|
*/
|
|
@@ -2234,6 +2318,7 @@ export const mergeResult = /*#__PURE__*/dual(2, (self, that) => merge(map(self,
|
|
|
2234
2318
|
* await Effect.runPromise(program)
|
|
2235
2319
|
* ```
|
|
2236
2320
|
*
|
|
2321
|
+
* @stability stable
|
|
2237
2322
|
* @category merging
|
|
2238
2323
|
* @since 2.0.0
|
|
2239
2324
|
*/
|
|
@@ -2272,6 +2357,7 @@ export const mergeLeft = /*#__PURE__*/dual(2, (left, right) => mergeEffect(left,
|
|
|
2272
2357
|
* await Effect.runPromise(program)
|
|
2273
2358
|
* ```
|
|
2274
2359
|
*
|
|
2360
|
+
* @stability stable
|
|
2275
2361
|
* @category merging
|
|
2276
2362
|
* @since 2.0.0
|
|
2277
2363
|
*/
|
|
@@ -2313,6 +2399,7 @@ export const mergeRight = /*#__PURE__*/dual(2, (left, right) => mergeEffect(righ
|
|
|
2313
2399
|
* @see {@link merge} for merging exactly two streams and choosing a halt strategy
|
|
2314
2400
|
* @see {@link flatten} for flattening a stream that already emits streams
|
|
2315
2401
|
*
|
|
2402
|
+
* @stability stable
|
|
2316
2403
|
* @category merging
|
|
2317
2404
|
* @since 2.0.0
|
|
2318
2405
|
*/
|
|
@@ -2340,6 +2427,7 @@ export const mergeAll = /*#__PURE__*/dual(2, (streams, options) => flatten(fromI
|
|
|
2340
2427
|
* await Effect.runPromise(program)
|
|
2341
2428
|
* ```
|
|
2342
2429
|
*
|
|
2430
|
+
* @stability stable
|
|
2343
2431
|
* @category zipping
|
|
2344
2432
|
* @since 2.0.0
|
|
2345
2433
|
*/
|
|
@@ -2369,6 +2457,7 @@ export const cross = /*#__PURE__*/dual(2, (left, right) => crossWith(left, right
|
|
|
2369
2457
|
* await Effect.runPromise(program)
|
|
2370
2458
|
* ```
|
|
2371
2459
|
*
|
|
2460
|
+
* @stability stable
|
|
2372
2461
|
* @category zipping
|
|
2373
2462
|
* @since 2.0.0
|
|
2374
2463
|
*/
|
|
@@ -2394,6 +2483,7 @@ export const crossWith = /*#__PURE__*/dual(3, (left, right, f) => flatMap(left,
|
|
|
2394
2483
|
* await Effect.runPromise(program)
|
|
2395
2484
|
* ```
|
|
2396
2485
|
*
|
|
2486
|
+
* @stability stable
|
|
2397
2487
|
* @category zipping
|
|
2398
2488
|
* @since 2.0.0
|
|
2399
2489
|
*/
|
|
@@ -2436,6 +2526,7 @@ const zipArrays = f => (leftArr, rightArr) => {
|
|
|
2436
2526
|
* await Effect.runPromise(program)
|
|
2437
2527
|
* ```
|
|
2438
2528
|
*
|
|
2529
|
+
* @stability stable
|
|
2439
2530
|
* @category zipping
|
|
2440
2531
|
* @since 4.0.0
|
|
2441
2532
|
*/
|
|
@@ -2494,6 +2585,7 @@ export const zipWithArray = /*#__PURE__*/dual(3, (left, right, f) => fromChannel
|
|
|
2494
2585
|
* await Effect.runPromise(program)
|
|
2495
2586
|
* ```
|
|
2496
2587
|
*
|
|
2588
|
+
* @stability stable
|
|
2497
2589
|
* @category zipping
|
|
2498
2590
|
* @since 2.0.0
|
|
2499
2591
|
*/
|
|
@@ -2522,6 +2614,7 @@ export const zip = /*#__PURE__*/dual(2, (self, that) => zipWith(self, that, (a,
|
|
|
2522
2614
|
* await Effect.runPromise(program)
|
|
2523
2615
|
* ```
|
|
2524
2616
|
*
|
|
2617
|
+
* @stability stable
|
|
2525
2618
|
* @category zipping
|
|
2526
2619
|
* @since 2.0.0
|
|
2527
2620
|
*/
|
|
@@ -2551,6 +2644,7 @@ export const zipLeft = /*#__PURE__*/dual(2, (left, right) => zipWithArray(left,
|
|
|
2551
2644
|
* await Effect.runPromise(program)
|
|
2552
2645
|
* ```
|
|
2553
2646
|
*
|
|
2647
|
+
* @stability stable
|
|
2554
2648
|
* @category zipping
|
|
2555
2649
|
* @since 2.0.0
|
|
2556
2650
|
*/
|
|
@@ -2589,6 +2683,7 @@ export const zipRight = /*#__PURE__*/dual(2, (left, right) => zipWithArray(left,
|
|
|
2589
2683
|
* await Effect.runPromise(program)
|
|
2590
2684
|
* ```
|
|
2591
2685
|
*
|
|
2686
|
+
* @stability stable
|
|
2592
2687
|
* @category zipping
|
|
2593
2688
|
* @since 2.0.0
|
|
2594
2689
|
*/
|
|
@@ -2612,6 +2707,7 @@ export const zipFlatten = /*#__PURE__*/dual(2, (self, that) => zipWith(self, tha
|
|
|
2612
2707
|
* await Effect.runPromise(program)
|
|
2613
2708
|
* ```
|
|
2614
2709
|
*
|
|
2710
|
+
* @stability stable
|
|
2615
2711
|
* @category zipping
|
|
2616
2712
|
* @since 2.0.0
|
|
2617
2713
|
*/
|
|
@@ -2633,6 +2729,7 @@ export const zipWithIndex = self => map(self, (a, i) => [a, i]);
|
|
|
2633
2729
|
* }))
|
|
2634
2730
|
* ```
|
|
2635
2731
|
*
|
|
2732
|
+
* @stability stable
|
|
2636
2733
|
* @category zipping
|
|
2637
2734
|
* @since 2.0.0
|
|
2638
2735
|
*/
|
|
@@ -2672,6 +2769,7 @@ export const zipWithNext = self => mapAccumArray(self, Option.none, (acc, arr) =
|
|
|
2672
2769
|
* await Effect.runPromise(program)
|
|
2673
2770
|
* ```
|
|
2674
2771
|
*
|
|
2772
|
+
* @stability stable
|
|
2675
2773
|
* @category zipping
|
|
2676
2774
|
* @since 2.0.0
|
|
2677
2775
|
*/
|
|
@@ -2703,6 +2801,7 @@ export const zipWithPrevious = self => mapAccumArray(self, Option.none, (acc, ar
|
|
|
2703
2801
|
* await Effect.runPromise(program)
|
|
2704
2802
|
* ```
|
|
2705
2803
|
*
|
|
2804
|
+
* @stability stable
|
|
2706
2805
|
* @category zipping
|
|
2707
2806
|
* @since 2.0.0
|
|
2708
2807
|
*/
|
|
@@ -2767,6 +2866,7 @@ export const zipWithPreviousAndNext = self => mapAccumArray(self, () => ({
|
|
|
2767
2866
|
* await Effect.runPromise(program)
|
|
2768
2867
|
* ```
|
|
2769
2868
|
*
|
|
2869
|
+
* @stability stable
|
|
2770
2870
|
* @category zipping
|
|
2771
2871
|
* @since 3.3.0
|
|
2772
2872
|
*/
|
|
@@ -2774,6 +2874,7 @@ export const zipLatestAll = (...streams) => fromChannel(Channel.suspend(() => {
|
|
|
2774
2874
|
const latest = [];
|
|
2775
2875
|
const emitted = new Set();
|
|
2776
2876
|
const readyLatch = Latch.makeUnsafe();
|
|
2877
|
+
const emptyLatch = Latch.makeUnsafe();
|
|
2777
2878
|
return Channel.mergeAll(Channel.fromArray(streams.map((s, i) => s.channel.pipe(Channel.flattenArray, Channel.mapEffect(a => {
|
|
2778
2879
|
latest[i] = a;
|
|
2779
2880
|
if (!emitted.has(i)) {
|
|
@@ -2784,10 +2885,12 @@ export const zipLatestAll = (...streams) => fromChannel(Channel.suspend(() => {
|
|
|
2784
2885
|
return Effect.as(readyLatch.open, Arr.of(latest.slice()));
|
|
2785
2886
|
}
|
|
2786
2887
|
return Effect.succeed(Arr.of(latest.slice()));
|
|
2787
|
-
}), Channel.filter(isNotUndefined)
|
|
2888
|
+
}), Channel.filter(isNotUndefined),
|
|
2889
|
+
// An input ending without a value makes a complete tuple impossible.
|
|
2890
|
+
Channel.mapDoneEffect(() => emitted.has(i) ? Effect.void : emptyLatch.open)))), {
|
|
2788
2891
|
concurrency: "unbounded",
|
|
2789
2892
|
bufferSize: 0
|
|
2790
|
-
});
|
|
2893
|
+
}).pipe(Channel.interruptWhen(emptyLatch.await));
|
|
2791
2894
|
}));
|
|
2792
2895
|
/**
|
|
2793
2896
|
* Combines two streams by emitting each new element with the latest value from the other stream.
|
|
@@ -2819,6 +2922,7 @@ export const zipLatestAll = (...streams) => fromChannel(Channel.suspend(() => {
|
|
|
2819
2922
|
* await Effect.runPromise(program)
|
|
2820
2923
|
* ```
|
|
2821
2924
|
*
|
|
2925
|
+
* @stability stable
|
|
2822
2926
|
* @category zipping
|
|
2823
2927
|
* @since 2.0.0
|
|
2824
2928
|
*/
|
|
@@ -2857,6 +2961,7 @@ export const zipLatest = /*#__PURE__*/dual(2, (left, right) => zipLatestAll(left
|
|
|
2857
2961
|
* }))
|
|
2858
2962
|
* ```
|
|
2859
2963
|
*
|
|
2964
|
+
* @stability stable
|
|
2860
2965
|
* @category zipping
|
|
2861
2966
|
* @since 2.0.0
|
|
2862
2967
|
*/
|
|
@@ -2887,6 +2992,7 @@ export const zipLatestWith = /*#__PURE__*/dual(3, (left, right, f) => map(zipLat
|
|
|
2887
2992
|
* await Effect.runPromise(program)
|
|
2888
2993
|
* ```
|
|
2889
2994
|
*
|
|
2995
|
+
* @stability stable
|
|
2890
2996
|
* @category racing
|
|
2891
2997
|
* @since 3.5.0
|
|
2892
2998
|
*/
|
|
@@ -2935,6 +3041,7 @@ export const raceAll = (...streams) => fromChannel(Channel.fromTransform((_, sco
|
|
|
2935
3041
|
* await Effect.runPromise(program)
|
|
2936
3042
|
* ```
|
|
2937
3043
|
*
|
|
3044
|
+
* @stability stable
|
|
2938
3045
|
* @category racing
|
|
2939
3046
|
* @since 3.7.0
|
|
2940
3047
|
*/
|
|
@@ -2958,6 +3065,7 @@ export const race = /*#__PURE__*/dual(2, (left, right) => raceAll(left, right));
|
|
|
2958
3065
|
* await Effect.runPromise(program)
|
|
2959
3066
|
* ```
|
|
2960
3067
|
*
|
|
3068
|
+
* @stability stable
|
|
2961
3069
|
* @category filtering
|
|
2962
3070
|
* @since 2.0.0
|
|
2963
3071
|
*/
|
|
@@ -2978,6 +3086,7 @@ export const filter = /*#__PURE__*/dual(2, (self, predicate) => fromChannel(Chan
|
|
|
2978
3086
|
* @see {@link filterMapEffect} for an effectful `Filter`
|
|
2979
3087
|
* @see {@link partition} for consuming both filter success and failure values
|
|
2980
3088
|
*
|
|
3089
|
+
* @stability stable
|
|
2981
3090
|
* @category filtering
|
|
2982
3091
|
* @since 2.0.0
|
|
2983
3092
|
*/
|
|
@@ -3000,6 +3109,7 @@ export const filterMap = /*#__PURE__*/dual(2, (self, filter) => fromChannel(Chan
|
|
|
3000
3109
|
* await Effect.runPromise(program)
|
|
3001
3110
|
* ```
|
|
3002
3111
|
*
|
|
3112
|
+
* @stability stable
|
|
3003
3113
|
* @category filtering
|
|
3004
3114
|
* @since 2.0.0
|
|
3005
3115
|
*/
|
|
@@ -3021,6 +3131,7 @@ export const filterEffect = /*#__PURE__*/dual(2, (self, predicate) => fromChanne
|
|
|
3021
3131
|
* @see {@link filterEffect} for effectfully keeping original elements
|
|
3022
3132
|
* @see {@link mapEffect} for effectfully transforming every element
|
|
3023
3133
|
*
|
|
3134
|
+
* @stability stable
|
|
3024
3135
|
* @category filtering
|
|
3025
3136
|
* @since 2.0.0
|
|
3026
3137
|
*/
|
|
@@ -3055,6 +3166,7 @@ export const filterMapEffect = /*#__PURE__*/dual(2, (self, filter) => fromChanne
|
|
|
3055
3166
|
* await Effect.runPromise(Effect.scoped(program))
|
|
3056
3167
|
* ```
|
|
3057
3168
|
*
|
|
3169
|
+
* @stability stable
|
|
3058
3170
|
* @category filtering
|
|
3059
3171
|
* @since 4.0.0
|
|
3060
3172
|
*/
|
|
@@ -3103,6 +3215,7 @@ export const partitionQueue = /*#__PURE__*/dual(args => isStream(args[0]), /*#__
|
|
|
3103
3215
|
}), Effect.forkIn(scope));
|
|
3104
3216
|
return [passes, fails];
|
|
3105
3217
|
}));
|
|
3218
|
+
const fromQueueShutdownOnEnd = queue => fromChannel(Channel.fromTransform((_, scope) => Effect.as(Scope.addFinalizer(scope, Queue.shutdown(queue)), Queue.takeAll(queue))));
|
|
3106
3219
|
/**
|
|
3107
3220
|
* Splits a stream with an effectful `Filter`, returning scoped streams for
|
|
3108
3221
|
* filter successes and failures.
|
|
@@ -3122,10 +3235,11 @@ export const partitionQueue = /*#__PURE__*/dual(args => isStream(args[0]), /*#__
|
|
|
3122
3235
|
* @see {@link partitionQueue} for the lower-level queue result
|
|
3123
3236
|
* @see {@link filterMapEffect} for effectful filtering that discards failed filter results
|
|
3124
3237
|
*
|
|
3238
|
+
* @stability stable
|
|
3125
3239
|
* @category filtering
|
|
3126
3240
|
* @since 4.0.0
|
|
3127
3241
|
*/
|
|
3128
|
-
export const partitionEffect = /*#__PURE__*/dual(args => isStream(args[0]), (self, filter, options) => Effect.map(partitionQueue(mapEffect(self, a => filter(a), options), result => result, options), ([passes, fails]) => [
|
|
3242
|
+
export const partitionEffect = /*#__PURE__*/dual(args => isStream(args[0]), (self, filter, options) => Effect.map(partitionQueue(mapEffect(self, a => filter(a), options), result => result, options), ([passes, fails]) => [fromQueueShutdownOnEnd(passes), fromQueueShutdownOnEnd(fails)]));
|
|
3129
3243
|
/**
|
|
3130
3244
|
* Splits a stream into scoped passing and failing substreams using a
|
|
3131
3245
|
* `Filter`.
|
|
@@ -3156,12 +3270,13 @@ export const partitionEffect = /*#__PURE__*/dual(args => isStream(args[0]), (sel
|
|
|
3156
3270
|
* await Effect.runPromise(Effect.scoped(program))
|
|
3157
3271
|
* ```
|
|
3158
3272
|
*
|
|
3273
|
+
* @stability stable
|
|
3159
3274
|
* @category filtering
|
|
3160
3275
|
* @since 2.0.0
|
|
3161
3276
|
*/
|
|
3162
3277
|
export const partition = /*#__PURE__*/dual(args => isStream(args[0]), (self, filter, options) => Effect.map(partitionQueue(self, filter, {
|
|
3163
3278
|
capacity: options?.capacity ?? 16
|
|
3164
|
-
}), ([passes, fails]) => [
|
|
3279
|
+
}), ([passes, fails]) => [fromQueueShutdownOnEnd(passes), fromQueueShutdownOnEnd(fails)]));
|
|
3165
3280
|
/**
|
|
3166
3281
|
* Returns the specified stream if the given condition is satisfied, otherwise
|
|
3167
3282
|
* returns an empty stream.
|
|
@@ -3181,6 +3296,7 @@ export const partition = /*#__PURE__*/dual(args => isStream(args[0]), (self, fil
|
|
|
3181
3296
|
* await Effect.runPromise(program)
|
|
3182
3297
|
* ```
|
|
3183
3298
|
*
|
|
3299
|
+
* @stability stable
|
|
3184
3300
|
* @category filtering
|
|
3185
3301
|
* @since 2.0.0
|
|
3186
3302
|
*/
|
|
@@ -3212,6 +3328,7 @@ export const when = /*#__PURE__*/dual(2, (self, test) => test.pipe(Effect.map(pa
|
|
|
3212
3328
|
* await Effect.runPromise(program)
|
|
3213
3329
|
* ```
|
|
3214
3330
|
*
|
|
3331
|
+
* @stability stable
|
|
3215
3332
|
* @category destructors
|
|
3216
3333
|
* @since 2.0.0
|
|
3217
3334
|
*/
|
|
@@ -3222,11 +3339,12 @@ export const peel = /*#__PURE__*/dual(2, /*#__PURE__*/Effect.fnUntraced(function
|
|
|
3222
3339
|
cause = cause_;
|
|
3223
3340
|
return Effect.failCause(cause_);
|
|
3224
3341
|
});
|
|
3225
|
-
|
|
3226
|
-
|
|
3227
|
-
if (
|
|
3228
|
-
|
|
3229
|
-
|
|
3342
|
+
const [result, leftover] = yield* Effect.scopedWith(scope => sink.transform(pull, scope));
|
|
3343
|
+
let stream = cause ? empty : fromPull(Effect.succeed(originalPull));
|
|
3344
|
+
if (leftover) {
|
|
3345
|
+
stream = concat(fromArray(leftover), stream);
|
|
3346
|
+
}
|
|
3347
|
+
return [result, stream];
|
|
3230
3348
|
}));
|
|
3231
3349
|
/**
|
|
3232
3350
|
* Buffers up to `capacity` elements so a faster producer can progress
|
|
@@ -3255,6 +3373,7 @@ export const peel = /*#__PURE__*/dual(2, /*#__PURE__*/Effect.fnUntraced(function
|
|
|
3255
3373
|
* await Effect.runPromise(program)
|
|
3256
3374
|
* ```
|
|
3257
3375
|
*
|
|
3376
|
+
* @stability stable
|
|
3258
3377
|
* @category buffering
|
|
3259
3378
|
* @since 2.0.0
|
|
3260
3379
|
*/
|
|
@@ -3286,6 +3405,7 @@ export const buffer = /*#__PURE__*/dual(2, (self, options) => fromChannel(Channe
|
|
|
3286
3405
|
* await Effect.runPromise(program)
|
|
3287
3406
|
* ```
|
|
3288
3407
|
*
|
|
3408
|
+
* @stability stable
|
|
3289
3409
|
* @category buffering
|
|
3290
3410
|
* @since 4.0.0
|
|
3291
3411
|
*/
|
|
@@ -3317,6 +3437,7 @@ export const bufferArray = /*#__PURE__*/dual(2, (self, options) => fromChannel(C
|
|
|
3317
3437
|
* await Effect.runPromise(program)
|
|
3318
3438
|
* ```
|
|
3319
3439
|
*
|
|
3440
|
+
* @stability stable
|
|
3320
3441
|
* @category error handling
|
|
3321
3442
|
* @since 2.0.0
|
|
3322
3443
|
*/
|
|
@@ -3341,6 +3462,7 @@ export const catchCause = /*#__PURE__*/dual(2, (self, f) => self.channel.pipe(Ch
|
|
|
3341
3462
|
* result // => ["recovered: boom"]
|
|
3342
3463
|
* ```
|
|
3343
3464
|
*
|
|
3465
|
+
* @stability stable
|
|
3344
3466
|
* @category error handling
|
|
3345
3467
|
* @since 4.0.0
|
|
3346
3468
|
*/
|
|
@@ -3370,6 +3492,7 @@ export const catchDefect = /*#__PURE__*/dual(2, (self, f) => self.channel.pipe(C
|
|
|
3370
3492
|
* observations // => [false]
|
|
3371
3493
|
* ```
|
|
3372
3494
|
*
|
|
3495
|
+
* @stability stable
|
|
3373
3496
|
* @category error handling
|
|
3374
3497
|
* @since 2.0.0
|
|
3375
3498
|
*/
|
|
@@ -3397,6 +3520,7 @@ export {
|
|
|
3397
3520
|
* await Effect.runPromise(program)
|
|
3398
3521
|
* ```
|
|
3399
3522
|
*
|
|
3523
|
+
* @stability stable
|
|
3400
3524
|
* @category error handling
|
|
3401
3525
|
* @since 4.0.0
|
|
3402
3526
|
*/
|
|
@@ -3425,6 +3549,7 @@ catch_ as catch };
|
|
|
3425
3549
|
* errors // => ["boom"]
|
|
3426
3550
|
* ```
|
|
3427
3551
|
*
|
|
3552
|
+
* @stability stable
|
|
3428
3553
|
* @category error handling
|
|
3429
3554
|
* @since 2.0.0
|
|
3430
3555
|
*/
|
|
@@ -3464,6 +3589,7 @@ export const tapError = /*#__PURE__*/dual(2, (self, f) => self.channel.pipe(Chan
|
|
|
3464
3589
|
* @see {@link tapError} for peeking at every typed error
|
|
3465
3590
|
* @see {@link catchTag} for recovering from a tagged error
|
|
3466
3591
|
*
|
|
3592
|
+
* @stability stable
|
|
3467
3593
|
* @category error handling
|
|
3468
3594
|
* @since 4.0.0
|
|
3469
3595
|
*/
|
|
@@ -3499,6 +3625,7 @@ export const tapErrorTag = /*#__PURE__*/dual(3, (self, k, f) => {
|
|
|
3499
3625
|
* @see {@link tapCause} for peeking at the full failure cause
|
|
3500
3626
|
* @see {@link catchDefect} for recovering from defects
|
|
3501
3627
|
*
|
|
3628
|
+
* @stability stable
|
|
3502
3629
|
* @category error handling
|
|
3503
3630
|
* @since 4.0.0
|
|
3504
3631
|
*/
|
|
@@ -3536,6 +3663,7 @@ export const tapDefect = /*#__PURE__*/dual(2, (self, f) => tapCause(self, cause
|
|
|
3536
3663
|
* await Effect.runPromise(program)
|
|
3537
3664
|
* ```
|
|
3538
3665
|
*
|
|
3666
|
+
* @stability stable
|
|
3539
3667
|
* @category error handling
|
|
3540
3668
|
* @since 4.0.0
|
|
3541
3669
|
*/
|
|
@@ -3559,6 +3687,7 @@ export const catchIf = /*#__PURE__*/dual(args => isStream(args[0]), (self, predi
|
|
|
3559
3687
|
* @see {@link catchTags} for `_tag` based recovery from multiple tagged errors
|
|
3560
3688
|
* @see {@link catchCauseFilter} for filtering full causes
|
|
3561
3689
|
*
|
|
3690
|
+
* @stability stable
|
|
3562
3691
|
* @category error handling
|
|
3563
3692
|
* @since 4.0.0
|
|
3564
3693
|
*/
|
|
@@ -3593,6 +3722,7 @@ export const catchFilter = /*#__PURE__*/dual(args => isStream(args[0]), (self, f
|
|
|
3593
3722
|
* await Effect.runPromise(program)
|
|
3594
3723
|
* ```
|
|
3595
3724
|
*
|
|
3725
|
+
* @stability stable
|
|
3596
3726
|
* @category error handling
|
|
3597
3727
|
* @since 2.0.0
|
|
3598
3728
|
*/
|
|
@@ -3634,6 +3764,7 @@ export const catchTag = /*#__PURE__*/dual(args => isStream(args[0]), (self, k, f
|
|
|
3634
3764
|
* await Effect.runPromise(program)
|
|
3635
3765
|
* ```
|
|
3636
3766
|
*
|
|
3767
|
+
* @stability stable
|
|
3637
3768
|
* @category error handling
|
|
3638
3769
|
* @since 2.0.0
|
|
3639
3770
|
*/
|
|
@@ -3690,6 +3821,7 @@ export const catchTags = /*#__PURE__*/dual(args => isStream(args[0]), (self, cas
|
|
|
3690
3821
|
* await Effect.runPromise(program)
|
|
3691
3822
|
* ```
|
|
3692
3823
|
*
|
|
3824
|
+
* @stability stable
|
|
3693
3825
|
* @category error handling
|
|
3694
3826
|
* @since 4.0.0
|
|
3695
3827
|
*/
|
|
@@ -3732,6 +3864,7 @@ export const catchReason = /*#__PURE__*/dual(args => isStream(args[0]), (self, e
|
|
|
3732
3864
|
* await Effect.runPromise(program)
|
|
3733
3865
|
* ```
|
|
3734
3866
|
*
|
|
3867
|
+
* @stability stable
|
|
3735
3868
|
* @category error handling
|
|
3736
3869
|
* @since 4.0.0
|
|
3737
3870
|
*/
|
|
@@ -3784,6 +3917,7 @@ export const catchReasons = /*#__PURE__*/dual(args => isStream(args[0]), (self,
|
|
|
3784
3917
|
* @see {@link catchReason} for recovering from a specific reason
|
|
3785
3918
|
* @see {@link catchReasons} for handling several reasons at once
|
|
3786
3919
|
*
|
|
3920
|
+
* @stability stable
|
|
3787
3921
|
* @category error handling
|
|
3788
3922
|
* @since 4.0.0
|
|
3789
3923
|
*/
|
|
@@ -3813,6 +3947,7 @@ export const unwrapReason = /*#__PURE__*/dual(2, (self, errorTag) => catchFilter
|
|
|
3813
3947
|
* await Effect.runPromise(program)
|
|
3814
3948
|
* ```
|
|
3815
3949
|
*
|
|
3950
|
+
* @stability stable
|
|
3816
3951
|
* @category error handling
|
|
3817
3952
|
* @since 2.0.0
|
|
3818
3953
|
*/
|
|
@@ -3841,6 +3976,7 @@ export const mapError = /*#__PURE__*/dual(2, (self, f) => fromChannel(Channel.ma
|
|
|
3841
3976
|
* await Effect.runPromise(program)
|
|
3842
3977
|
* ```
|
|
3843
3978
|
*
|
|
3979
|
+
* @stability stable
|
|
3844
3980
|
* @category error handling
|
|
3845
3981
|
* @since 4.0.0
|
|
3846
3982
|
*/
|
|
@@ -3865,6 +4001,7 @@ export const catchCauseIf = /*#__PURE__*/dual(3, (self, predicate, f) => fromCha
|
|
|
3865
4001
|
* @see {@link catchFilter} for filtering typed error values instead of full causes
|
|
3866
4002
|
* @see {@link catchCause} for recovering from every cause without filtering
|
|
3867
4003
|
*
|
|
4004
|
+
* @stability stable
|
|
3868
4005
|
* @category error handling
|
|
3869
4006
|
* @since 4.0.0
|
|
3870
4007
|
*/
|
|
@@ -3888,6 +4025,7 @@ export const catchCauseFilter = /*#__PURE__*/dual(3, (self, filter, f) => fromCh
|
|
|
3888
4025
|
* await Effect.runPromise(program)
|
|
3889
4026
|
* ```
|
|
3890
4027
|
*
|
|
4028
|
+
* @stability stable
|
|
3891
4029
|
* @category error handling
|
|
3892
4030
|
* @since 2.0.0
|
|
3893
4031
|
*/
|
|
@@ -3912,6 +4050,7 @@ export const orElseIfEmpty = /*#__PURE__*/dual(2, (self, orElse) => fromChannel(
|
|
|
3912
4050
|
* await Effect.runPromise(program)
|
|
3913
4051
|
* ```
|
|
3914
4052
|
*
|
|
4053
|
+
* @stability stable
|
|
3915
4054
|
* @category error handling
|
|
3916
4055
|
* @since 2.0.0
|
|
3917
4056
|
*/
|
|
@@ -3936,6 +4075,7 @@ export const orElseSucceed = /*#__PURE__*/dual(2, (self, f) => catch_(self, e =>
|
|
|
3936
4075
|
* await Effect.runPromise(program)
|
|
3937
4076
|
* ```
|
|
3938
4077
|
*
|
|
4078
|
+
* @stability stable
|
|
3939
4079
|
* @category error handling
|
|
3940
4080
|
* @since 2.0.0
|
|
3941
4081
|
*/
|
|
@@ -3987,6 +4127,7 @@ export const orDie = self => fromChannel(Channel.orDie(self.channel));
|
|
|
3987
4127
|
*
|
|
3988
4128
|
* @see {@link ignoreCause} for a variant that also ignores defects, not just typed failures
|
|
3989
4129
|
*
|
|
4130
|
+
* @stability stable
|
|
3990
4131
|
* @category error handling
|
|
3991
4132
|
* @since 4.0.0
|
|
3992
4133
|
*/
|
|
@@ -4017,6 +4158,7 @@ export const ignore = /*#__PURE__*/dual(args => isStream(args[0]), (self, option
|
|
|
4017
4158
|
*
|
|
4018
4159
|
* @see {@link ignore} to ignore only typed failures without suppressing defects
|
|
4019
4160
|
*
|
|
4161
|
+
* @stability stable
|
|
4020
4162
|
* @category error handling
|
|
4021
4163
|
* @since 4.0.0
|
|
4022
4164
|
*/
|
|
@@ -4051,6 +4193,7 @@ export const ignoreCause = /*#__PURE__*/dual(args => isStream(args[0]), (self, o
|
|
|
4051
4193
|
* await Effect.runPromise(program)
|
|
4052
4194
|
* ```
|
|
4053
4195
|
*
|
|
4196
|
+
* @stability stable
|
|
4054
4197
|
* @category error handling
|
|
4055
4198
|
* @since 2.0.0
|
|
4056
4199
|
*/
|
|
@@ -4109,6 +4252,7 @@ const retryWithoutReset = (self, schedule) => unwrap(Effect.map(Schedule.toStepW
|
|
|
4109
4252
|
* await Effect.runPromise(program)
|
|
4110
4253
|
* ```
|
|
4111
4254
|
*
|
|
4255
|
+
* @stability unstable
|
|
4112
4256
|
* @category error handling
|
|
4113
4257
|
* @since 3.16.0
|
|
4114
4258
|
*/
|
|
@@ -4197,6 +4341,7 @@ export const withExecutionPlan = /*#__PURE__*/dual(args => isStream(args[0]), (s
|
|
|
4197
4341
|
* await Effect.runPromise(program)
|
|
4198
4342
|
* ```
|
|
4199
4343
|
*
|
|
4344
|
+
* @stability stable
|
|
4200
4345
|
* @category filtering
|
|
4201
4346
|
* @since 2.0.0
|
|
4202
4347
|
*/
|
|
@@ -4225,6 +4370,7 @@ export const take = /*#__PURE__*/dual(2, (self, n) => {
|
|
|
4225
4370
|
* await Effect.runPromise(program) // => [[1, 2]]
|
|
4226
4371
|
* ```
|
|
4227
4372
|
*
|
|
4373
|
+
* @stability unstable
|
|
4228
4374
|
* @category filtering
|
|
4229
4375
|
* @since 4.0.0
|
|
4230
4376
|
*/
|
|
@@ -4266,6 +4412,7 @@ export const limitBytes = /*#__PURE__*/dual(3, (self, bytes, onLimitReached) =>
|
|
|
4266
4412
|
* await Effect.runPromise(program)
|
|
4267
4413
|
* ```
|
|
4268
4414
|
*
|
|
4415
|
+
* @stability stable
|
|
4269
4416
|
* @category filtering
|
|
4270
4417
|
* @since 2.0.0
|
|
4271
4418
|
*/
|
|
@@ -4314,6 +4461,7 @@ export const takeRight = /*#__PURE__*/dual(2, (self, n) => {
|
|
|
4314
4461
|
* await Effect.runPromise(program)
|
|
4315
4462
|
* ```
|
|
4316
4463
|
*
|
|
4464
|
+
* @stability stable
|
|
4317
4465
|
* @category filtering
|
|
4318
4466
|
* @since 2.0.0
|
|
4319
4467
|
*/
|
|
@@ -4355,6 +4503,7 @@ export const takeUntil = /*#__PURE__*/dual(args => isStream(args[0]), (self, pre
|
|
|
4355
4503
|
* await Effect.runPromise(program)
|
|
4356
4504
|
* ```
|
|
4357
4505
|
*
|
|
4506
|
+
* @stability stable
|
|
4358
4507
|
* @category filtering
|
|
4359
4508
|
* @since 2.0.0
|
|
4360
4509
|
*/
|
|
@@ -4394,6 +4543,7 @@ export const takeUntilEffect = /*#__PURE__*/dual(args => isStream(args[0]), (sel
|
|
|
4394
4543
|
* await Effect.runPromise(program)
|
|
4395
4544
|
* ```
|
|
4396
4545
|
*
|
|
4546
|
+
* @stability stable
|
|
4397
4547
|
* @category filtering
|
|
4398
4548
|
* @since 2.0.0
|
|
4399
4549
|
*/
|
|
@@ -4430,6 +4580,7 @@ export const takeWhile = /*#__PURE__*/dual(2, (self, predicate) => transformPull
|
|
|
4430
4580
|
* @see {@link filterMap} for filtering across the whole stream instead of only the leading prefix
|
|
4431
4581
|
* @see {@link dropWhileFilter} for dropping the accepted prefix and keeping the remaining original elements
|
|
4432
4582
|
*
|
|
4583
|
+
* @stability stable
|
|
4433
4584
|
* @category filtering
|
|
4434
4585
|
* @since 4.0.0
|
|
4435
4586
|
*/
|
|
@@ -4473,6 +4624,7 @@ export const takeWhileFilter = /*#__PURE__*/dual(2, (self, filter) => transformP
|
|
|
4473
4624
|
* await Effect.runPromise(program)
|
|
4474
4625
|
* ```
|
|
4475
4626
|
*
|
|
4627
|
+
* @stability stable
|
|
4476
4628
|
* @category filtering
|
|
4477
4629
|
* @since 4.0.0
|
|
4478
4630
|
*/
|
|
@@ -4503,6 +4655,7 @@ export const takeWhileEffect = /*#__PURE__*/dual(2, (self, predicate) => takeUnt
|
|
|
4503
4655
|
* await Effect.runPromise(program)
|
|
4504
4656
|
* ```
|
|
4505
4657
|
*
|
|
4658
|
+
* @stability stable
|
|
4506
4659
|
* @category filtering
|
|
4507
4660
|
* @since 2.0.0
|
|
4508
4661
|
*/
|
|
@@ -4538,6 +4691,7 @@ export const drop = /*#__PURE__*/dual(2, (self, n) => {
|
|
|
4538
4691
|
* }))
|
|
4539
4692
|
* ```
|
|
4540
4693
|
*
|
|
4694
|
+
* @stability stable
|
|
4541
4695
|
* @category filtering
|
|
4542
4696
|
* @since 2.0.0
|
|
4543
4697
|
*/
|
|
@@ -4567,6 +4721,7 @@ export const dropUntil = /*#__PURE__*/dual(2, (self, predicate) => drop(dropWhil
|
|
|
4567
4721
|
* await Effect.runPromise(program)
|
|
4568
4722
|
* ```
|
|
4569
4723
|
*
|
|
4724
|
+
* @stability stable
|
|
4570
4725
|
* @category filtering
|
|
4571
4726
|
* @since 2.0.0
|
|
4572
4727
|
*/
|
|
@@ -4590,6 +4745,7 @@ export const dropUntilEffect = /*#__PURE__*/dual(2, (self, predicate) => drop(dr
|
|
|
4590
4745
|
* await Effect.runPromise(program)
|
|
4591
4746
|
* ```
|
|
4592
4747
|
*
|
|
4748
|
+
* @stability stable
|
|
4593
4749
|
* @category filtering
|
|
4594
4750
|
* @since 2.0.0
|
|
4595
4751
|
*/
|
|
@@ -4622,6 +4778,7 @@ export const dropWhile = /*#__PURE__*/dual(2, (self, predicate) => transformPull
|
|
|
4622
4778
|
* @see {@link takeWhileFilter} for keeping the accepted prefix as filter success values
|
|
4623
4779
|
* @see {@link dropWhileEffect} for effectful predicate prefix dropping
|
|
4624
4780
|
*
|
|
4781
|
+
* @stability stable
|
|
4625
4782
|
* @category filtering
|
|
4626
4783
|
* @since 4.0.0
|
|
4627
4784
|
*/
|
|
@@ -4654,6 +4811,7 @@ export const dropWhileFilter = /*#__PURE__*/dual(2, (self, filter) => transformP
|
|
|
4654
4811
|
* await Effect.runPromise(program)
|
|
4655
4812
|
* ```
|
|
4656
4813
|
*
|
|
4814
|
+
* @stability stable
|
|
4657
4815
|
* @category filtering
|
|
4658
4816
|
* @since 2.0.0
|
|
4659
4817
|
*/
|
|
@@ -4698,6 +4856,7 @@ export const dropWhileEffect = /*#__PURE__*/dual(2, (self, predicate) => transfo
|
|
|
4698
4856
|
* await Effect.runPromise(program)
|
|
4699
4857
|
* ```
|
|
4700
4858
|
*
|
|
4859
|
+
* @stability stable
|
|
4701
4860
|
* @category filtering
|
|
4702
4861
|
* @since 2.0.0
|
|
4703
4862
|
*/
|
|
@@ -4735,6 +4894,7 @@ export const dropRight = /*#__PURE__*/dual(2, (self, n) => {
|
|
|
4735
4894
|
* await Effect.runPromise(program)
|
|
4736
4895
|
* ```
|
|
4737
4896
|
*
|
|
4897
|
+
* @stability stable
|
|
4738
4898
|
* @category grouping
|
|
4739
4899
|
* @since 2.0.0
|
|
4740
4900
|
*/
|
|
@@ -4764,6 +4924,7 @@ export const chunks = self => self.channel.pipe(Channel.map(Arr.of), fromChannel
|
|
|
4764
4924
|
* await Effect.runPromise(program)
|
|
4765
4925
|
* ```
|
|
4766
4926
|
*
|
|
4927
|
+
* @stability stable
|
|
4767
4928
|
* @category grouping
|
|
4768
4929
|
* @since 2.0.0
|
|
4769
4930
|
*/
|
|
@@ -4832,6 +4993,7 @@ export const rechunk = /*#__PURE__*/dual(2, (self, target) => {
|
|
|
4832
4993
|
* }))
|
|
4833
4994
|
* ```
|
|
4834
4995
|
*
|
|
4996
|
+
* @stability stable
|
|
4835
4997
|
* @category grouping
|
|
4836
4998
|
* @since 2.0.0
|
|
4837
4999
|
*/
|
|
@@ -4860,6 +5022,7 @@ export const sliding = /*#__PURE__*/dual(2, (self, chunkSize) => slidingSize(sel
|
|
|
4860
5022
|
* await Effect.runPromise(program)
|
|
4861
5023
|
* ```
|
|
4862
5024
|
*
|
|
5025
|
+
* @stability stable
|
|
4863
5026
|
* @category grouping
|
|
4864
5027
|
* @since 2.0.0
|
|
4865
5028
|
*/
|
|
@@ -4895,8 +5058,8 @@ export const slidingSize = /*#__PURE__*/dual(3, (self, chunkSize, stepSize) => {
|
|
|
4895
5058
|
return Effect.succeed(chunks);
|
|
4896
5059
|
},
|
|
4897
5060
|
onFailure(cause_) {
|
|
4898
|
-
|
|
4899
|
-
if (list.length === 0) return Effect.failCause(cause_);
|
|
5061
|
+
// The buffer has already advanced by step after a full window.
|
|
5062
|
+
if (list.length === 0 || emitted && list.length <= windowSize - step) return Effect.failCause(cause_);
|
|
4900
5063
|
cause = cause_;
|
|
4901
5064
|
return Effect.succeed(Arr.of(MutableList.takeAll(list)));
|
|
4902
5065
|
}
|
|
@@ -4927,6 +5090,7 @@ export const slidingSize = /*#__PURE__*/dual(3, (self, chunkSize, stepSize) => {
|
|
|
4927
5090
|
* await Effect.runPromise(program)
|
|
4928
5091
|
* ```
|
|
4929
5092
|
*
|
|
5093
|
+
* @stability stable
|
|
4930
5094
|
* @category grouping
|
|
4931
5095
|
* @since 2.0.0
|
|
4932
5096
|
*/
|
|
@@ -4980,6 +5144,7 @@ export const split = /*#__PURE__*/dual(2, (self, predicate) => mapAccumArray(sel
|
|
|
4980
5144
|
* await Effect.runPromise(program)
|
|
4981
5145
|
* ```
|
|
4982
5146
|
*
|
|
5147
|
+
* @stability stable
|
|
4983
5148
|
* @category merging
|
|
4984
5149
|
* @since 2.0.0
|
|
4985
5150
|
*/
|
|
@@ -5023,6 +5188,7 @@ export const combine = /*#__PURE__*/dual(4, (self, that, s, f) => Channel.combin
|
|
|
5023
5188
|
* await Effect.runPromise(program)
|
|
5024
5189
|
* ```
|
|
5025
5190
|
*
|
|
5191
|
+
* @stability stable
|
|
5026
5192
|
* @category merging
|
|
5027
5193
|
* @since 4.0.0
|
|
5028
5194
|
*/
|
|
@@ -5050,6 +5216,7 @@ export const combineArray = /*#__PURE__*/dual(4, (self, that, s, f) => fromChann
|
|
|
5050
5216
|
* await Effect.runPromise(program)
|
|
5051
5217
|
* ```
|
|
5052
5218
|
*
|
|
5219
|
+
* @stability stable
|
|
5053
5220
|
* @category mapping
|
|
5054
5221
|
* @since 2.0.0
|
|
5055
5222
|
*/
|
|
@@ -5094,6 +5261,7 @@ export const mapAccum = /*#__PURE__*/dual(args => isStream(args[0]), (self, init
|
|
|
5094
5261
|
* await Effect.runPromise(program)
|
|
5095
5262
|
* ```
|
|
5096
5263
|
*
|
|
5264
|
+
* @stability stable
|
|
5097
5265
|
* @category mapping
|
|
5098
5266
|
* @since 4.0.0
|
|
5099
5267
|
*/
|
|
@@ -5142,6 +5310,7 @@ const emptyArr = /*#__PURE__*/Arr.empty();
|
|
|
5142
5310
|
* await Effect.runPromise(program)
|
|
5143
5311
|
* ```
|
|
5144
5312
|
*
|
|
5313
|
+
* @stability stable
|
|
5145
5314
|
* @category mapping
|
|
5146
5315
|
* @since 2.0.0
|
|
5147
5316
|
*/
|
|
@@ -5187,6 +5356,7 @@ export const mapAccumEffect = /*#__PURE__*/dual(args => isStream(args[0]), (self
|
|
|
5187
5356
|
* await Effect.runPromise(program)
|
|
5188
5357
|
* ```
|
|
5189
5358
|
*
|
|
5359
|
+
* @stability stable
|
|
5190
5360
|
* @category mapping
|
|
5191
5361
|
* @since 4.0.0
|
|
5192
5362
|
*/
|
|
@@ -5215,23 +5385,20 @@ export const mapAccumArrayEffect = /*#__PURE__*/dual(args => isStream(args[0]),
|
|
|
5215
5385
|
* await Effect.runPromise(program)
|
|
5216
5386
|
* ```
|
|
5217
5387
|
*
|
|
5388
|
+
* @stability stable
|
|
5218
5389
|
* @category accumulation
|
|
5219
5390
|
* @since 2.0.0
|
|
5220
5391
|
*/
|
|
5221
5392
|
export const scan = /*#__PURE__*/dual(3, (self, initial, f) => suspend(() => {
|
|
5222
|
-
|
|
5223
|
-
return fromChannel(Channel.mapAccum(self.channel,
|
|
5393
|
+
const seed = initial();
|
|
5394
|
+
return concat(succeed(seed), fromChannel(Channel.mapAccum(self.channel, () => seed, (state, arr) => {
|
|
5224
5395
|
const states = Arr.empty();
|
|
5225
|
-
if (isFirst) {
|
|
5226
|
-
isFirst = false;
|
|
5227
|
-
states.push(state);
|
|
5228
|
-
}
|
|
5229
5396
|
for (let index = 0; index < arr.length; index++) {
|
|
5230
5397
|
state = f(state, arr[index]);
|
|
5231
5398
|
states.push(state);
|
|
5232
5399
|
}
|
|
5233
5400
|
return [state, Arr.of(states)];
|
|
5234
|
-
}));
|
|
5401
|
+
})));
|
|
5235
5402
|
}));
|
|
5236
5403
|
/**
|
|
5237
5404
|
* Accumulates state effectfully and emits the initial state plus each accumulated state.
|
|
@@ -5251,6 +5418,7 @@ export const scan = /*#__PURE__*/dual(3, (self, initial, f) => suspend(() => {
|
|
|
5251
5418
|
* await Effect.runPromise(program)
|
|
5252
5419
|
* ```
|
|
5253
5420
|
*
|
|
5421
|
+
* @stability stable
|
|
5254
5422
|
* @category accumulation
|
|
5255
5423
|
* @since 2.0.0
|
|
5256
5424
|
*/
|
|
@@ -5272,6 +5440,7 @@ export const scanEffect = /*#__PURE__*/dual(3, (self, initial, f) => suspend(()
|
|
|
5272
5440
|
* await Effect.runPromise(program)
|
|
5273
5441
|
* ```
|
|
5274
5442
|
*
|
|
5443
|
+
* @stability stable
|
|
5275
5444
|
* @category rate limiting
|
|
5276
5445
|
* @since 2.0.0
|
|
5277
5446
|
*/
|
|
@@ -5369,6 +5538,7 @@ export const debounce = /*#__PURE__*/dual(2, (self, duration) => transformPull(s
|
|
|
5369
5538
|
* }))
|
|
5370
5539
|
* ```
|
|
5371
5540
|
*
|
|
5541
|
+
* @stability stable
|
|
5372
5542
|
* @category rate limiting
|
|
5373
5543
|
* @since 2.0.0
|
|
5374
5544
|
*/
|
|
@@ -5405,31 +5575,30 @@ const throttleShapeEffect = (self, cost, units, duration, burst) => transformPul
|
|
|
5405
5575
|
const durationMs = Duration.toMillis(Duration.fromInputUnsafe(duration));
|
|
5406
5576
|
const max = units + burst < 0 ? Number.POSITIVE_INFINITY : units + burst;
|
|
5407
5577
|
let tokens = units;
|
|
5408
|
-
let
|
|
5578
|
+
let timestampNanos = clock.monotonicTimeNanosUnsafe();
|
|
5409
5579
|
return Effect.succeed(Effect.flatMap(pull, arr => Effect.flatMap(cost(arr), weight => {
|
|
5410
|
-
const
|
|
5411
|
-
const elapsed =
|
|
5580
|
+
const currentNanos = clock.monotonicTimeNanosUnsafe();
|
|
5581
|
+
const elapsed = Number(currentNanos - timestampNanos) / 1_000_000;
|
|
5412
5582
|
const cycles = elapsed / durationMs;
|
|
5413
5583
|
const sum = tokens + cycles * units;
|
|
5414
|
-
const available =
|
|
5584
|
+
const available = Math.min(sum, max);
|
|
5415
5585
|
const remaining = available - weight;
|
|
5416
5586
|
if (remaining >= 0) {
|
|
5417
5587
|
tokens = remaining;
|
|
5418
|
-
|
|
5588
|
+
timestampNanos = currentNanos;
|
|
5419
5589
|
return Effect.succeed(arr);
|
|
5420
5590
|
}
|
|
5421
|
-
// Calculate delay needed
|
|
5422
5591
|
const waitCycles = -remaining / units;
|
|
5423
5592
|
const delayMs = Math.max(0, waitCycles * durationMs);
|
|
5424
5593
|
if (delayMs > 0) {
|
|
5425
5594
|
return Effect.flatMap(Effect.sleep(delayMs), () => {
|
|
5426
5595
|
tokens = remaining;
|
|
5427
|
-
|
|
5596
|
+
timestampNanos = currentNanos;
|
|
5428
5597
|
return Effect.succeed(arr);
|
|
5429
5598
|
});
|
|
5430
5599
|
}
|
|
5431
5600
|
tokens = remaining;
|
|
5432
|
-
|
|
5601
|
+
timestampNanos = currentNanos;
|
|
5433
5602
|
return Effect.succeed(arr);
|
|
5434
5603
|
})));
|
|
5435
5604
|
}));
|
|
@@ -5473,6 +5642,7 @@ const throttleShapeEffect = (self, cost, units, duration, burst) => transformPul
|
|
|
5473
5642
|
* await Effect.runPromise(program)
|
|
5474
5643
|
* ```
|
|
5475
5644
|
*
|
|
5645
|
+
* @stability stable
|
|
5476
5646
|
* @category rate limiting
|
|
5477
5647
|
* @since 2.0.0
|
|
5478
5648
|
*/
|
|
@@ -5505,6 +5675,7 @@ export const throttle = /*#__PURE__*/dual(2, (self, options) => throttleEffect(s
|
|
|
5505
5675
|
* await Effect.runPromise(program)
|
|
5506
5676
|
* ```
|
|
5507
5677
|
*
|
|
5678
|
+
* @stability stable
|
|
5508
5679
|
* @category grouping
|
|
5509
5680
|
* @since 2.0.0
|
|
5510
5681
|
*/
|
|
@@ -5515,8 +5686,9 @@ export const grouped = /*#__PURE__*/dual(2, (self, n) => chunks(rechunk(self, n)
|
|
|
5515
5686
|
*
|
|
5516
5687
|
* **Details**
|
|
5517
5688
|
*
|
|
5518
|
-
*
|
|
5519
|
-
* are
|
|
5689
|
+
* The duration starts when the first element of a group arrives, so an idle
|
|
5690
|
+
* stream does not wake up. Finite fractional chunk sizes are rounded down.
|
|
5691
|
+
* `NaN` and non-positive sizes are treated as `1`.
|
|
5520
5692
|
*
|
|
5521
5693
|
* **Example** (Grouping elements by size or time)
|
|
5522
5694
|
*
|
|
@@ -5534,6 +5706,7 @@ export const grouped = /*#__PURE__*/dual(2, (self, n) => chunks(rechunk(self, n)
|
|
|
5534
5706
|
* await Effect.runPromise(program)
|
|
5535
5707
|
* ```
|
|
5536
5708
|
*
|
|
5709
|
+
* @stability stable
|
|
5537
5710
|
* @category grouping
|
|
5538
5711
|
* @since 2.0.0
|
|
5539
5712
|
*/
|
|
@@ -5566,6 +5739,7 @@ export const groupedWithin = /*#__PURE__*/dual(3, (self, chunkSize, duration) =>
|
|
|
5566
5739
|
* await Effect.runPromise(program)
|
|
5567
5740
|
* ```
|
|
5568
5741
|
*
|
|
5742
|
+
* @stability stable
|
|
5569
5743
|
* @category grouping
|
|
5570
5744
|
* @since 2.0.0
|
|
5571
5745
|
*/
|
|
@@ -5604,6 +5778,7 @@ export const groupBy = /*#__PURE__*/dual(args => isStream(args[0]), (self, f, op
|
|
|
5604
5778
|
* await Effect.runPromise(program)
|
|
5605
5779
|
* ```
|
|
5606
5780
|
*
|
|
5781
|
+
* @stability stable
|
|
5607
5782
|
* @category grouping
|
|
5608
5783
|
* @since 2.0.0
|
|
5609
5784
|
*/
|
|
@@ -5637,7 +5812,7 @@ const groupByImpl = (self, f, options) => transformPullBracket(self, Effect.fnUn
|
|
|
5637
5812
|
capacity: options?.bufferSize ?? 4096
|
|
5638
5813
|
}).pipe(Effect.tap(queue => {
|
|
5639
5814
|
MutableHashMap.set(queueMap, key, queue);
|
|
5640
|
-
return Queue.offer(out, [key,
|
|
5815
|
+
return Queue.offer(out, [key, fromQueueShutdownOnEnd(queue)]);
|
|
5641
5816
|
})), queue => {
|
|
5642
5817
|
MutableHashMap.remove(queueMap, key);
|
|
5643
5818
|
return Queue.end(queue);
|
|
@@ -5669,6 +5844,7 @@ const groupByImpl = (self, f, options) => transformPullBracket(self, Effect.fnUn
|
|
|
5669
5844
|
* @see {@link groupByKey} for grouping all elements with the same key across the stream
|
|
5670
5845
|
* @see {@link groupBy} for custom grouped stream construction
|
|
5671
5846
|
*
|
|
5847
|
+
* @stability stable
|
|
5672
5848
|
* @category grouping
|
|
5673
5849
|
* @since 2.0.0
|
|
5674
5850
|
*/
|
|
@@ -5726,6 +5902,7 @@ export const groupAdjacentBy = /*#__PURE__*/dual(2, (self, f) => transformPull(s
|
|
|
5726
5902
|
* await Effect.runPromise(program)
|
|
5727
5903
|
* ```
|
|
5728
5904
|
*
|
|
5905
|
+
* @stability stable
|
|
5729
5906
|
* @category aggregation
|
|
5730
5907
|
* @since 2.0.0
|
|
5731
5908
|
*/
|
|
@@ -5774,6 +5951,7 @@ export const transduce = /*#__PURE__*/dual(2, (self, sink) => transformPull(self
|
|
|
5774
5951
|
* }))
|
|
5775
5952
|
* ```
|
|
5776
5953
|
*
|
|
5954
|
+
* @stability stable
|
|
5777
5955
|
* @category aggregation
|
|
5778
5956
|
* @since 2.0.0
|
|
5779
5957
|
*/
|
|
@@ -5784,6 +5962,18 @@ export const aggregate = /*#__PURE__*/dual(2, (self, sink) => aggregateWithin(se
|
|
|
5784
5962
|
* **Details**
|
|
5785
5963
|
*
|
|
5786
5964
|
* The schedule can flush the current aggregation even if the sink has not finished.
|
|
5965
|
+
* It is stepped at most once per aggregation, when the aggregation receives its
|
|
5966
|
+
* first element, with the previous aggregation's output as input. An aggregation
|
|
5967
|
+
* the sink completes immediately, such as one built from leftovers, may finish
|
|
5968
|
+
* without stepping the schedule.
|
|
5969
|
+
*
|
|
5970
|
+
* Time between aggregations is hidden from the schedule, so an idle stream does
|
|
5971
|
+
* not run it. Time-based schedules such as `Schedule.fixed` and
|
|
5972
|
+
* `Schedule.upTo({ duration })` only count time spent aggregating; use
|
|
5973
|
+
* `Schedule.spaced` for a flush timer.
|
|
5974
|
+
*
|
|
5975
|
+
* When the schedule ends, the stream emits the current aggregation and any sink
|
|
5976
|
+
* leftovers, then ends without pulling more from upstream.
|
|
5787
5977
|
*
|
|
5788
5978
|
* **Example** (Aggregating with a sink and schedule)
|
|
5789
5979
|
*
|
|
@@ -5803,6 +5993,7 @@ export const aggregate = /*#__PURE__*/dual(2, (self, sink) => aggregateWithin(se
|
|
|
5803
5993
|
* }))
|
|
5804
5994
|
* ```
|
|
5805
5995
|
*
|
|
5996
|
+
* @stability stable
|
|
5806
5997
|
* @category aggregation
|
|
5807
5998
|
* @since 2.0.0
|
|
5808
5999
|
*/
|
|
@@ -5813,55 +6004,58 @@ export const aggregateWithin = /*#__PURE__*/dual(3, (self, sink, schedule) => fr
|
|
|
5813
6004
|
const buffer = yield* Queue.make({
|
|
5814
6005
|
capacity: 0
|
|
5815
6006
|
});
|
|
5816
|
-
// upstream -> buffer
|
|
5817
6007
|
yield* pull.pipe(pullLatch.whenOpen, Effect.flatMap(arr => {
|
|
5818
6008
|
pullLatch.closeUnsafe();
|
|
5819
6009
|
return Queue.offer(buffer, arr);
|
|
5820
6010
|
}), Effect.forever,
|
|
5821
|
-
//
|
|
6011
|
+
// Keep autoYield enabled so the schedule can run.
|
|
5822
6012
|
Effect.catchCause(cause => Queue.failCause(buffer, cause)), Effect.forkIn(scope));
|
|
5823
|
-
// schedule
|
|
6013
|
+
// The schedule clock excludes time between aggregations.
|
|
6014
|
+
const clock = yield* Clock;
|
|
6015
|
+
const step = yield* Schedule.toStep(schedule);
|
|
6016
|
+
const hasInput = Latch.makeUnsafe(false);
|
|
6017
|
+
let scheduleTime = clock.currentTimeMillisUnsafe();
|
|
6018
|
+
let openedAt = 0;
|
|
5824
6019
|
let lastOutput = Option.none();
|
|
5825
6020
|
let leftover;
|
|
5826
|
-
|
|
5827
|
-
|
|
5828
|
-
|
|
5829
|
-
return Effect.flatMap(step(lastOutput), () => !sinkHasInput ? loop() : Queue.offer(buffer, scheduleStep));
|
|
5830
|
-
});
|
|
5831
|
-
const stepToBuffer = stepLoop.pipe(Effect.flatMap(() => Effect.never), Pull.catchDone(() => Cause.done()));
|
|
5832
|
-
// buffer -> sink
|
|
5833
|
-
const pullFromBuffer = Queue.take(buffer).pipe(Effect.flatMap(arr => {
|
|
5834
|
-
if (arr === scheduleStep) {
|
|
5835
|
-
return Cause.done();
|
|
6021
|
+
const onInput = chunk => {
|
|
6022
|
+
if (hasInput.openUnsafe()) {
|
|
6023
|
+
openedAt = clock.currentTimeMillisUnsafe();
|
|
5836
6024
|
}
|
|
5837
|
-
|
|
5838
|
-
|
|
5839
|
-
|
|
6025
|
+
return Effect.succeed(chunk);
|
|
6026
|
+
};
|
|
6027
|
+
const stepToBuffer = hasInput.await.pipe(Effect.flatMap(() => step(scheduleTime, lastOutput)), Effect.flatMap(([, delay]) => Effect.sleep(delay)), Effect.flatMap(() => Queue.offer(buffer, scheduleStep)),
|
|
6028
|
+
// End input so the sink drains leftovers without further upstream pulls.
|
|
6029
|
+
Pull.catchDone(() => Queue.end(buffer)), Effect.flatMap(() => Effect.never));
|
|
5840
6030
|
const sinkUpstream = Effect.suspend(() => {
|
|
5841
6031
|
if (leftover !== undefined) {
|
|
5842
6032
|
const chunk = leftover;
|
|
5843
6033
|
leftover = undefined;
|
|
5844
|
-
|
|
5845
|
-
return Effect.succeed(chunk);
|
|
6034
|
+
return onInput(chunk);
|
|
5846
6035
|
}
|
|
5847
|
-
|
|
5848
|
-
|
|
6036
|
+
if (buffer.state._tag === "Open") {
|
|
6037
|
+
pullLatch.openUnsafe();
|
|
6038
|
+
}
|
|
6039
|
+
return Effect.flatMap(Queue.take(buffer), arr => arr === scheduleStep ? Cause.done() : onInput(arr));
|
|
5849
6040
|
});
|
|
5850
|
-
const
|
|
5851
|
-
|
|
5852
|
-
|
|
6041
|
+
const emit = Effect.flatMap(([value, leftover_]) => {
|
|
6042
|
+
if (hasInput.isOpen()) {
|
|
6043
|
+
scheduleTime += clock.currentTimeMillisUnsafe() - openedAt;
|
|
6044
|
+
} else if (buffer.state._tag === "Done") {
|
|
6045
|
+
return Cause.done();
|
|
6046
|
+
}
|
|
5853
6047
|
lastOutput = Option.some(value);
|
|
5854
6048
|
leftover = leftover_;
|
|
5855
6049
|
return Effect.succeed(Arr.of(value));
|
|
5856
6050
|
});
|
|
5857
6051
|
return Effect.suspend(() => {
|
|
5858
|
-
// if the buffer has exited and there is no more data to process
|
|
5859
6052
|
if (buffer.state._tag === "Done" && leftover === undefined) {
|
|
5860
6053
|
return buffer.state.exit;
|
|
5861
6054
|
}
|
|
5862
|
-
|
|
5863
|
-
|
|
5864
|
-
|
|
6055
|
+
hasInput.closeUnsafe();
|
|
6056
|
+
const pull = emit(Effect.suspend(() => sink.transform(sinkUpstream, scope)));
|
|
6057
|
+
return buffer.state._tag === "Open" ? Effect.raceFirst(pull, stepToBuffer) : pull;
|
|
6058
|
+
});
|
|
5865
6059
|
}))));
|
|
5866
6060
|
/**
|
|
5867
6061
|
* Creates a fixed-size tuple of streams that each emit
|
|
@@ -5899,6 +6093,7 @@ export const aggregateWithin = /*#__PURE__*/dual(3, (self, sink, schedule) => fr
|
|
|
5899
6093
|
* await Effect.runPromise(program)
|
|
5900
6094
|
* ```
|
|
5901
6095
|
*
|
|
6096
|
+
* @stability stable
|
|
5902
6097
|
* @category broadcasting
|
|
5903
6098
|
* @since 4.0.0
|
|
5904
6099
|
*/
|
|
@@ -5947,6 +6142,7 @@ const makePubSub = options => Effect.acquireRelease(options.capacity === "unboun
|
|
|
5947
6142
|
* await Effect.runPromise(program)
|
|
5948
6143
|
* ```
|
|
5949
6144
|
*
|
|
6145
|
+
* @stability stable
|
|
5950
6146
|
* @category broadcasting
|
|
5951
6147
|
* @since 2.0.0
|
|
5952
6148
|
*/
|
|
@@ -5995,6 +6191,7 @@ export const broadcast = /*#__PURE__*/dual(2, (self, options) => Effect.map(toPu
|
|
|
5995
6191
|
* result // => { values: [[1, 2, 3], [1, 2, 3]], acquisitions: 1 }
|
|
5996
6192
|
* ```
|
|
5997
6193
|
*
|
|
6194
|
+
* @stability stable
|
|
5998
6195
|
* @category broadcasting
|
|
5999
6196
|
* @since 3.8.0
|
|
6000
6197
|
*/
|
|
@@ -6033,6 +6230,7 @@ export const share = /*#__PURE__*/dual(2, (self, options) => Effect.map(RcRef.ma
|
|
|
6033
6230
|
* await Effect.runPromise(program)
|
|
6034
6231
|
* ```
|
|
6035
6232
|
*
|
|
6233
|
+
* @stability stable
|
|
6036
6234
|
* @category sequencing
|
|
6037
6235
|
* @since 2.0.0
|
|
6038
6236
|
*/
|
|
@@ -6068,6 +6266,7 @@ export const pipeThroughChannel = /*#__PURE__*/dual(2, (self, channel) => fromCh
|
|
|
6068
6266
|
* }))
|
|
6069
6267
|
* ```
|
|
6070
6268
|
*
|
|
6269
|
+
* @stability stable
|
|
6071
6270
|
* @category sequencing
|
|
6072
6271
|
* @since 2.0.0
|
|
6073
6272
|
*/
|
|
@@ -6096,6 +6295,7 @@ export const pipeThroughChannelOrFail = /*#__PURE__*/dual(2, (self, channel) =>
|
|
|
6096
6295
|
* await Effect.runPromise(program)
|
|
6097
6296
|
* ```
|
|
6098
6297
|
*
|
|
6298
|
+
* @stability stable
|
|
6099
6299
|
* @category sequencing
|
|
6100
6300
|
* @since 2.0.0
|
|
6101
6301
|
*/
|
|
@@ -6118,6 +6318,7 @@ export const pipeThrough = /*#__PURE__*/dual(2, (self, sink) => self.channel.pip
|
|
|
6118
6318
|
* await Effect.runPromise(program)
|
|
6119
6319
|
* ```
|
|
6120
6320
|
*
|
|
6321
|
+
* @stability stable
|
|
6121
6322
|
* @category accumulation
|
|
6122
6323
|
* @since 4.0.0
|
|
6123
6324
|
*/
|
|
@@ -6143,6 +6344,7 @@ export const collect = self => fromEffect(runCollect(self));
|
|
|
6143
6344
|
* await Effect.runPromise(program)
|
|
6144
6345
|
* ```
|
|
6145
6346
|
*
|
|
6347
|
+
* @stability stable
|
|
6146
6348
|
* @category accumulation
|
|
6147
6349
|
* @since 2.0.0
|
|
6148
6350
|
*/
|
|
@@ -6170,6 +6372,7 @@ export const accumulate = self => mapAccumArray(self, Arr.empty, (acc, as) => {
|
|
|
6170
6372
|
* await Effect.runPromise(program)
|
|
6171
6373
|
* ```
|
|
6172
6374
|
*
|
|
6375
|
+
* @stability stable
|
|
6173
6376
|
* @category deduplication
|
|
6174
6377
|
* @since 2.0.0
|
|
6175
6378
|
*/
|
|
@@ -6194,6 +6397,7 @@ export const changes = self => changesWith(self, Equal.equals);
|
|
|
6194
6397
|
* )
|
|
6195
6398
|
* ```
|
|
6196
6399
|
*
|
|
6400
|
+
* @stability stable
|
|
6197
6401
|
* @category deduplication
|
|
6198
6402
|
* @since 2.0.0
|
|
6199
6403
|
*/
|
|
@@ -6241,6 +6445,7 @@ export const changesWith = /*#__PURE__*/dual(2, (self, f) => transformPull(self,
|
|
|
6241
6445
|
* await Effect.runPromise(program)
|
|
6242
6446
|
* ```
|
|
6243
6447
|
*
|
|
6448
|
+
* @stability stable
|
|
6244
6449
|
* @category deduplication
|
|
6245
6450
|
* @since 2.0.0
|
|
6246
6451
|
*/
|
|
@@ -6290,6 +6495,7 @@ export const changesWithEffect = /*#__PURE__*/dual(2, (self, f) => transformPull
|
|
|
6290
6495
|
* await Effect.runPromise(program)
|
|
6291
6496
|
* ```
|
|
6292
6497
|
*
|
|
6498
|
+
* @stability stable
|
|
6293
6499
|
* @category text
|
|
6294
6500
|
* @since 2.0.0
|
|
6295
6501
|
*/
|
|
@@ -6318,6 +6524,7 @@ export const decodeText = /*#__PURE__*/dual(args => isStream(args[0]), (self, op
|
|
|
6318
6524
|
* await Effect.runPromise(program)
|
|
6319
6525
|
* ```
|
|
6320
6526
|
*
|
|
6527
|
+
* @stability stable
|
|
6321
6528
|
* @category text
|
|
6322
6529
|
* @since 2.0.0
|
|
6323
6530
|
*/
|
|
@@ -6341,6 +6548,7 @@ export const encodeText = self => suspend(() => {
|
|
|
6341
6548
|
* }))
|
|
6342
6549
|
* ```
|
|
6343
6550
|
*
|
|
6551
|
+
* @stability stable
|
|
6344
6552
|
* @category text
|
|
6345
6553
|
* @since 2.0.0
|
|
6346
6554
|
*/
|
|
@@ -6362,6 +6570,7 @@ export const splitLines = self => self.channel.pipe(Channel.pipeTo(Channel.split
|
|
|
6362
6570
|
* await Effect.runPromise(program)
|
|
6363
6571
|
* ```
|
|
6364
6572
|
*
|
|
6573
|
+
* @stability stable
|
|
6365
6574
|
* @category sequencing
|
|
6366
6575
|
* @since 2.0.0
|
|
6367
6576
|
*/
|
|
@@ -6401,6 +6610,7 @@ export const intersperse = /*#__PURE__*/dual(2, (self, element) => mapArray(self
|
|
|
6401
6610
|
* await Effect.runPromise(program)
|
|
6402
6611
|
* ```
|
|
6403
6612
|
*
|
|
6613
|
+
* @stability stable
|
|
6404
6614
|
* @category sequencing
|
|
6405
6615
|
* @since 2.0.0
|
|
6406
6616
|
*/
|
|
@@ -6428,6 +6638,7 @@ export const intersperseAffixes = /*#__PURE__*/dual(2, (self, options) => succee
|
|
|
6428
6638
|
* await Effect.runPromise(program)
|
|
6429
6639
|
* ```
|
|
6430
6640
|
*
|
|
6641
|
+
* @stability stable
|
|
6431
6642
|
* @category merging
|
|
6432
6643
|
* @since 2.0.0
|
|
6433
6644
|
*/
|
|
@@ -6460,6 +6671,7 @@ export const interleave = /*#__PURE__*/dual(2, (self, that) => interleaveWith(se
|
|
|
6460
6671
|
* await Effect.runPromise(program)
|
|
6461
6672
|
* ```
|
|
6462
6673
|
*
|
|
6674
|
+
* @stability stable
|
|
6463
6675
|
* @category merging
|
|
6464
6676
|
* @since 2.0.0
|
|
6465
6677
|
*/
|
|
@@ -6524,6 +6736,7 @@ export const interleaveWith = /*#__PURE__*/dual(3, (self, that, decider) => from
|
|
|
6524
6736
|
* await Effect.runPromise(program)
|
|
6525
6737
|
* ```
|
|
6526
6738
|
*
|
|
6739
|
+
* @stability stable
|
|
6527
6740
|
* @category interruption
|
|
6528
6741
|
* @since 2.0.0
|
|
6529
6742
|
*/
|
|
@@ -6565,6 +6778,7 @@ export const interruptWhen = /*#__PURE__*/dual(2, (self, effect) => fromChannel(
|
|
|
6565
6778
|
* await Effect.runPromise(program)
|
|
6566
6779
|
* ```
|
|
6567
6780
|
*
|
|
6781
|
+
* @stability stable
|
|
6568
6782
|
* @category interruption
|
|
6569
6783
|
* @since 2.0.0
|
|
6570
6784
|
*/
|
|
@@ -6592,6 +6806,7 @@ export const haltWhen = /*#__PURE__*/dual(2, (self, effect) => fromChannel(Chann
|
|
|
6592
6806
|
* exits // => ["success"]
|
|
6593
6807
|
* ```
|
|
6594
6808
|
*
|
|
6809
|
+
* @stability stable
|
|
6595
6810
|
* @category resource management
|
|
6596
6811
|
* @since 4.0.0
|
|
6597
6812
|
*/
|
|
@@ -6623,6 +6838,7 @@ export const onExit = /*#__PURE__*/dual(2, (self, finalizer) => fromChannel(Chan
|
|
|
6623
6838
|
* errors // => ["boom"]
|
|
6624
6839
|
* ```
|
|
6625
6840
|
*
|
|
6841
|
+
* @stability stable
|
|
6626
6842
|
* @category resource management
|
|
6627
6843
|
* @since 2.0.0
|
|
6628
6844
|
*/
|
|
@@ -6649,6 +6865,7 @@ export const onError = /*#__PURE__*/dual(2, (self, cleanup) => fromChannel(Chann
|
|
|
6649
6865
|
* events // => ["started"]
|
|
6650
6866
|
* ```
|
|
6651
6867
|
*
|
|
6868
|
+
* @stability stable
|
|
6652
6869
|
* @category sequencing
|
|
6653
6870
|
* @since 3.6.0
|
|
6654
6871
|
*/
|
|
@@ -6671,6 +6888,7 @@ export const onStart = /*#__PURE__*/dual(2, (self, onStart) => fromChannel(Chann
|
|
|
6671
6888
|
* first // => [1]
|
|
6672
6889
|
* ```
|
|
6673
6890
|
*
|
|
6891
|
+
* @stability stable
|
|
6674
6892
|
* @category sequencing
|
|
6675
6893
|
* @since 4.0.0
|
|
6676
6894
|
*/
|
|
@@ -6696,6 +6914,7 @@ export const onFirst = /*#__PURE__*/dual(2, (self, onFirst) => fromChannel(Chann
|
|
|
6696
6914
|
* events // => ["ended"]
|
|
6697
6915
|
* ```
|
|
6698
6916
|
*
|
|
6917
|
+
* @stability stable
|
|
6699
6918
|
* @category sequencing
|
|
6700
6919
|
* @since 3.6.0
|
|
6701
6920
|
*/
|
|
@@ -6722,6 +6941,7 @@ export const onEnd = /*#__PURE__*/dual(2, (self, onEnd) => fromChannel(Channel.o
|
|
|
6722
6941
|
* events // => ["cleanup"]
|
|
6723
6942
|
* ```
|
|
6724
6943
|
*
|
|
6944
|
+
* @stability stable
|
|
6725
6945
|
* @category resource management
|
|
6726
6946
|
* @since 2.0.0
|
|
6727
6947
|
*/
|
|
@@ -6752,6 +6972,7 @@ export const ensuring = /*#__PURE__*/dual(2, (self, finalizer) => fromChannel(Ch
|
|
|
6752
6972
|
* await Effect.runPromise(Stream.runCollect(withEnv)) // => ["Hello, Ada"]
|
|
6753
6973
|
* ```
|
|
6754
6974
|
*
|
|
6975
|
+
* @stability stable
|
|
6755
6976
|
* @category providing services
|
|
6756
6977
|
* @since 4.0.0
|
|
6757
6978
|
*/
|
|
@@ -6787,6 +7008,7 @@ export const provide = /*#__PURE__*/dual(args => isStream(args[0]), (self, layer
|
|
|
6787
7008
|
* await Effect.runPromise(program)
|
|
6788
7009
|
* ```
|
|
6789
7010
|
*
|
|
7011
|
+
* @stability stable
|
|
6790
7012
|
* @category providing services
|
|
6791
7013
|
* @since 2.0.0
|
|
6792
7014
|
*/
|
|
@@ -6824,6 +7046,7 @@ export const provideContext = /*#__PURE__*/dual(2, (self, context) => fromChanne
|
|
|
6824
7046
|
* await Effect.runPromise(program)
|
|
6825
7047
|
* ```
|
|
6826
7048
|
*
|
|
7049
|
+
* @stability stable
|
|
6827
7050
|
* @category providing services
|
|
6828
7051
|
* @since 2.0.0
|
|
6829
7052
|
*/
|
|
@@ -6859,6 +7082,7 @@ export const provideService = /*#__PURE__*/dual(3, (self, key, service) => fromC
|
|
|
6859
7082
|
* events // => ["loading"]
|
|
6860
7083
|
* ```
|
|
6861
7084
|
*
|
|
7085
|
+
* @stability stable
|
|
6862
7086
|
* @category providing services
|
|
6863
7087
|
* @since 2.0.0
|
|
6864
7088
|
*/
|
|
@@ -6899,6 +7123,7 @@ export const provideServiceEffect = /*#__PURE__*/dual(3, (self, key, service) =>
|
|
|
6899
7123
|
* )
|
|
6900
7124
|
* ```
|
|
6901
7125
|
*
|
|
7126
|
+
* @stability stable
|
|
6902
7127
|
* @category providing services
|
|
6903
7128
|
* @since 4.0.0
|
|
6904
7129
|
*/
|
|
@@ -6925,6 +7150,7 @@ export const updateContext = /*#__PURE__*/dual(2, (self, f) => fromChannel(Chann
|
|
|
6925
7150
|
* await Effect.runPromise(Effect.provideService(program, Counter, { count: 0 }))
|
|
6926
7151
|
* ```
|
|
6927
7152
|
*
|
|
7153
|
+
* @stability stable
|
|
6928
7154
|
* @category providing services
|
|
6929
7155
|
* @since 2.0.0
|
|
6930
7156
|
*/
|
|
@@ -6947,6 +7173,7 @@ export const updateService = /*#__PURE__*/dual(3, (self, service, f) => updateCo
|
|
|
6947
7173
|
* )
|
|
6948
7174
|
* ```
|
|
6949
7175
|
*
|
|
7176
|
+
* @stability stable
|
|
6950
7177
|
* @category tracing
|
|
6951
7178
|
* @since 2.0.0
|
|
6952
7179
|
*/
|
|
@@ -6982,6 +7209,7 @@ export const withSpan = function () {
|
|
|
6982
7209
|
* await Effect.runPromise(effect)
|
|
6983
7210
|
* ```
|
|
6984
7211
|
*
|
|
7212
|
+
* @stability stable
|
|
6985
7213
|
* @category do notation
|
|
6986
7214
|
* @since 2.0.0
|
|
6987
7215
|
*/
|
|
@@ -7012,6 +7240,7 @@ export {
|
|
|
7012
7240
|
* await Effect.runPromise(program)
|
|
7013
7241
|
* ```
|
|
7014
7242
|
*
|
|
7243
|
+
* @stability stable
|
|
7015
7244
|
* @category do notation
|
|
7016
7245
|
* @since 2.0.0
|
|
7017
7246
|
*/
|
|
@@ -7034,6 +7263,7 @@ let_ as let };
|
|
|
7034
7263
|
* await Effect.runPromise(result) // => [{ a: 1, b: 2 }, { a: 2, b: 3 }]
|
|
7035
7264
|
* ```
|
|
7036
7265
|
*
|
|
7266
|
+
* @stability stable
|
|
7037
7267
|
* @category do notation
|
|
7038
7268
|
* @since 2.0.0
|
|
7039
7269
|
*/
|
|
@@ -7062,6 +7292,7 @@ export const bind = /*#__PURE__*/dual(args => isStream(args[0]), (self, name, f,
|
|
|
7062
7292
|
* await Effect.runPromise(program)
|
|
7063
7293
|
* ```
|
|
7064
7294
|
*
|
|
7295
|
+
* @stability stable
|
|
7065
7296
|
* @category do notation
|
|
7066
7297
|
* @since 2.0.0
|
|
7067
7298
|
*/
|
|
@@ -7082,6 +7313,7 @@ export const bindEffect = /*#__PURE__*/dual(args => isStream(args[0]), (self, na
|
|
|
7082
7313
|
* await Effect.runPromise(Stream.runCollect(stream)) // => [{ value: 1 }, { value: 2 }, { value: 3 }]
|
|
7083
7314
|
* ```
|
|
7084
7315
|
*
|
|
7316
|
+
* @stability stable
|
|
7085
7317
|
* @category do notation
|
|
7086
7318
|
* @since 2.0.0
|
|
7087
7319
|
*/
|
|
@@ -7101,6 +7333,7 @@ export const bindTo = /*#__PURE__*/dual(2, (self, name) => map(self, a => ({
|
|
|
7101
7333
|
* await Effect.runPromise(program) // => 6
|
|
7102
7334
|
* ```
|
|
7103
7335
|
*
|
|
7336
|
+
* @stability stable
|
|
7104
7337
|
* @category destructors
|
|
7105
7338
|
* @since 2.0.0
|
|
7106
7339
|
*/
|
|
@@ -7123,6 +7356,7 @@ export const run = /*#__PURE__*/dual(2, (self, sink) => Effect.scopedWith(scope
|
|
|
7123
7356
|
* await Effect.runPromise(program)
|
|
7124
7357
|
* ```
|
|
7125
7358
|
*
|
|
7359
|
+
* @stability stable
|
|
7126
7360
|
* @category destructors
|
|
7127
7361
|
* @since 2.0.0
|
|
7128
7362
|
*/
|
|
@@ -7150,6 +7384,7 @@ export const runCollect = self => Channel.runFold(self.channel, () => [], (acc,
|
|
|
7150
7384
|
* await Effect.runPromise(program)
|
|
7151
7385
|
* ```
|
|
7152
7386
|
*
|
|
7387
|
+
* @stability stable
|
|
7153
7388
|
* @category destructors
|
|
7154
7389
|
* @since 2.0.0
|
|
7155
7390
|
*/
|
|
@@ -7170,6 +7405,7 @@ export const runCount = self => Channel.runFold(self.channel, () => 0, (acc, chu
|
|
|
7170
7405
|
* await Effect.runPromise(program)
|
|
7171
7406
|
* ```
|
|
7172
7407
|
*
|
|
7408
|
+
* @stability stable
|
|
7173
7409
|
* @category destructors
|
|
7174
7410
|
* @since 2.0.0
|
|
7175
7411
|
*/
|
|
@@ -7199,6 +7435,7 @@ export const runSum = self => Channel.runFold(self.channel, () => 0, (acc, chunk
|
|
|
7199
7435
|
* await Effect.runPromise(program)
|
|
7200
7436
|
* ```
|
|
7201
7437
|
*
|
|
7438
|
+
* @stability stable
|
|
7202
7439
|
* @category destructors
|
|
7203
7440
|
* @since 2.0.0
|
|
7204
7441
|
*/
|
|
@@ -7233,6 +7470,7 @@ export const runFold = /*#__PURE__*/dual(3, (self, initial, f) => Channel.runFol
|
|
|
7233
7470
|
* await Effect.runPromise(program)
|
|
7234
7471
|
* ```
|
|
7235
7472
|
*
|
|
7473
|
+
* @stability stable
|
|
7236
7474
|
* @category destructors
|
|
7237
7475
|
* @since 2.0.0
|
|
7238
7476
|
*/
|
|
@@ -7264,6 +7502,7 @@ export const runFoldEffect = /*#__PURE__*/dual(3, (self, initial, f) => Channel.
|
|
|
7264
7502
|
* await Effect.runPromise(program)
|
|
7265
7503
|
* ```
|
|
7266
7504
|
*
|
|
7505
|
+
* @stability stable
|
|
7267
7506
|
* @category destructors
|
|
7268
7507
|
* @since 2.0.0
|
|
7269
7508
|
*/
|
|
@@ -7289,6 +7528,7 @@ export const runHead = self => Effect.map(Channel.runHead(self.channel), Option.
|
|
|
7289
7528
|
* @see {@link runCollect} for collecting every emitted element
|
|
7290
7529
|
* @see {@link runDrain} for consuming the stream while discarding emitted elements
|
|
7291
7530
|
*
|
|
7531
|
+
* @stability stable
|
|
7292
7532
|
* @category destructors
|
|
7293
7533
|
* @since 2.0.0
|
|
7294
7534
|
*/
|
|
@@ -7312,6 +7552,7 @@ export const runLast = self => Effect.map(Channel.runLast(self.channel), Option.
|
|
|
7312
7552
|
* values // => ["Processing: 1", "Processing: 2", "Processing: 3"]
|
|
7313
7553
|
* ```
|
|
7314
7554
|
*
|
|
7555
|
+
* @stability stable
|
|
7315
7556
|
* @category destructors
|
|
7316
7557
|
* @since 2.0.0
|
|
7317
7558
|
*/
|
|
@@ -7348,6 +7589,7 @@ export const runForEach = /*#__PURE__*/dual(2, (self, f) => Channel.runForEach(s
|
|
|
7348
7589
|
* values // => [1, 2, 3]
|
|
7349
7590
|
* ```
|
|
7350
7591
|
*
|
|
7592
|
+
* @stability stable
|
|
7351
7593
|
* @category destructors
|
|
7352
7594
|
* @since 2.0.0
|
|
7353
7595
|
*/
|
|
@@ -7384,6 +7626,7 @@ export const runForEachWhile = /*#__PURE__*/dual(2, (self, f) => Channel.runForE
|
|
|
7384
7626
|
* chunks // => ["1, 2, 3, 4, 5"]
|
|
7385
7627
|
* ```
|
|
7386
7628
|
*
|
|
7629
|
+
* @stability stable
|
|
7387
7630
|
* @category destructors
|
|
7388
7631
|
* @since 4.0.0
|
|
7389
7632
|
*/
|
|
@@ -7409,6 +7652,7 @@ export const runForEachArray = /*#__PURE__*/dual(2, (self, f) => Channel.runForE
|
|
|
7409
7652
|
* values // => [1, 2, 3]
|
|
7410
7653
|
* ```
|
|
7411
7654
|
*
|
|
7655
|
+
* @stability stable
|
|
7412
7656
|
* @category destructors
|
|
7413
7657
|
* @since 2.0.0
|
|
7414
7658
|
*/
|
|
@@ -7439,6 +7683,7 @@ export const runDrain = self => Channel.runDrain(self.channel);
|
|
|
7439
7683
|
* await Effect.runPromise(program)
|
|
7440
7684
|
* ```
|
|
7441
7685
|
*
|
|
7686
|
+
* @stability stable
|
|
7442
7687
|
* @category destructors
|
|
7443
7688
|
* @since 2.0.0
|
|
7444
7689
|
*/
|
|
@@ -7460,6 +7705,7 @@ export const toPull = self => Channel.toPull(self.channel);
|
|
|
7460
7705
|
* await Effect.runPromise(program)
|
|
7461
7706
|
* ```
|
|
7462
7707
|
*
|
|
7708
|
+
* @stability stable
|
|
7463
7709
|
* @category destructors
|
|
7464
7710
|
* @since 2.0.0
|
|
7465
7711
|
*/
|
|
@@ -7488,6 +7734,7 @@ export const mkString = self => Channel.runFold(self.channel, () => "", (acc, ch
|
|
|
7488
7734
|
* await Effect.runPromise(program) // => [1, 2, 3, 4]
|
|
7489
7735
|
* ```
|
|
7490
7736
|
*
|
|
7737
|
+
* @stability stable
|
|
7491
7738
|
* @category destructors
|
|
7492
7739
|
* @since 4.0.0
|
|
7493
7740
|
*/
|
|
@@ -7514,6 +7761,7 @@ export const mkArrayBuffer = self => Effect.map(Channel.mkUint8Array(self.channe
|
|
|
7514
7761
|
* await Effect.runPromise(program)
|
|
7515
7762
|
* ```
|
|
7516
7763
|
*
|
|
7764
|
+
* @stability stable
|
|
7517
7765
|
* @category destructors
|
|
7518
7766
|
* @since 4.0.0
|
|
7519
7767
|
*/
|
|
@@ -7541,6 +7789,7 @@ export const mkUint8Array = self => Channel.mkUint8Array(self.channel);
|
|
|
7541
7789
|
* values // => [ 1, 2, 3, 4, 5 ]
|
|
7542
7790
|
* ```
|
|
7543
7791
|
*
|
|
7792
|
+
* @stability stable
|
|
7544
7793
|
* @category destructors
|
|
7545
7794
|
* @since 4.0.0
|
|
7546
7795
|
*/
|
|
@@ -7595,6 +7844,7 @@ export const toReadableStreamWith = /*#__PURE__*/dual(args => isStream(args[0]),
|
|
|
7595
7844
|
* values // => [ 1, 2, 3 ]
|
|
7596
7845
|
* ```
|
|
7597
7846
|
*
|
|
7847
|
+
* @stability stable
|
|
7598
7848
|
* @category destructors
|
|
7599
7849
|
* @since 2.0.0
|
|
7600
7850
|
*/
|
|
@@ -7626,6 +7876,7 @@ export const toReadableStream = /*#__PURE__*/dual(args => isStream(args[0]), (se
|
|
|
7626
7876
|
* await Effect.runPromise(effect)
|
|
7627
7877
|
* ```
|
|
7628
7878
|
*
|
|
7879
|
+
* @stability stable
|
|
7629
7880
|
* @category destructors
|
|
7630
7881
|
* @since 2.0.0
|
|
7631
7882
|
*/
|
|
@@ -7649,6 +7900,7 @@ export const toReadableStreamEffect = /*#__PURE__*/dual(args => isStream(args[0]
|
|
|
7649
7900
|
* await Array.fromAsync(iterable) // => [1, 2, 3]
|
|
7650
7901
|
* ```
|
|
7651
7902
|
*
|
|
7903
|
+
* @stability stable
|
|
7652
7904
|
* @category destructors
|
|
7653
7905
|
* @since 4.0.0
|
|
7654
7906
|
*/
|
|
@@ -7739,6 +7991,7 @@ export const toAsyncIterableWith = /*#__PURE__*/dual(2, (self, context) => ({
|
|
|
7739
7991
|
* await Effect.runPromise(program) // => [1, 2, 3]
|
|
7740
7992
|
* ```
|
|
7741
7993
|
*
|
|
7994
|
+
* @stability stable
|
|
7742
7995
|
* @category destructors
|
|
7743
7996
|
* @since 3.15.0
|
|
7744
7997
|
*/
|
|
@@ -7756,6 +8009,7 @@ export const toAsyncIterableEffect = self => Effect.map(Effect.context(), contex
|
|
|
7756
8009
|
* await Array.fromAsync(Stream.toAsyncIterable(stream)) // => [1, 2, 3]
|
|
7757
8010
|
* ```
|
|
7758
8011
|
*
|
|
8012
|
+
* @stability stable
|
|
7759
8013
|
* @category destructors
|
|
7760
8014
|
* @since 3.15.0
|
|
7761
8015
|
*/
|
|
@@ -7789,6 +8043,7 @@ export const toAsyncIterable = self => toAsyncIterableWith(self, Context.empty()
|
|
|
7789
8043
|
* await Effect.runPromise(program)
|
|
7790
8044
|
* ```
|
|
7791
8045
|
*
|
|
8046
|
+
* @stability stable
|
|
7792
8047
|
* @category destructors
|
|
7793
8048
|
* @since 2.0.0
|
|
7794
8049
|
*/
|
|
@@ -7818,6 +8073,7 @@ export const runIntoPubSub = /*#__PURE__*/dual(args => isStream(args[0]), (self,
|
|
|
7818
8073
|
* await Effect.runPromise(program)
|
|
7819
8074
|
* ```
|
|
7820
8075
|
*
|
|
8076
|
+
* @stability stable
|
|
7821
8077
|
* @category destructors
|
|
7822
8078
|
* @since 2.0.0
|
|
7823
8079
|
*/
|
|
@@ -7850,6 +8106,7 @@ export const toPubSub = /*#__PURE__*/dual(2, (self, options) => Channel.toPubSub
|
|
|
7850
8106
|
* await Effect.runPromise(Effect.scoped(program))
|
|
7851
8107
|
* ```
|
|
7852
8108
|
*
|
|
8109
|
+
* @stability stable
|
|
7853
8110
|
* @category destructors
|
|
7854
8111
|
* @since 4.0.0
|
|
7855
8112
|
*/
|
|
@@ -7877,6 +8134,7 @@ export const toPubSubTake = /*#__PURE__*/dual(2, (self, options) => Channel.toPu
|
|
|
7877
8134
|
* await Effect.runPromise(Effect.scoped(program))
|
|
7878
8135
|
* ```
|
|
7879
8136
|
*
|
|
8137
|
+
* @stability stable
|
|
7880
8138
|
* @category destructors
|
|
7881
8139
|
* @since 2.0.0
|
|
7882
8140
|
*/
|
|
@@ -7910,6 +8168,7 @@ export const toQueue = /*#__PURE__*/dual(2, (self, options) => Channel.toQueueAr
|
|
|
7910
8168
|
* await Effect.runPromise(program)
|
|
7911
8169
|
* ```
|
|
7912
8170
|
*
|
|
8171
|
+
* @stability stable
|
|
7913
8172
|
* @category destructors
|
|
7914
8173
|
* @since 2.0.0
|
|
7915
8174
|
*/
|