effect 4.0.0-beta.102 → 4.0.0-beta.103
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/dist/Array.d.ts +971 -1037
- package/dist/Array.d.ts.map +1 -1
- package/dist/Array.js +381 -407
- package/dist/Array.js.map +1 -1
- package/dist/BigDecimal.d.ts +433 -756
- package/dist/BigDecimal.d.ts.map +1 -1
- package/dist/BigDecimal.js +200 -325
- package/dist/BigDecimal.js.map +1 -1
- package/dist/BigInt.d.ts +207 -267
- package/dist/BigInt.d.ts.map +1 -1
- package/dist/BigInt.js +107 -135
- package/dist/BigInt.js.map +1 -1
- package/dist/Boolean.d.ts +146 -188
- package/dist/Boolean.d.ts.map +1 -1
- package/dist/Boolean.js +64 -84
- package/dist/Boolean.js.map +1 -1
- package/dist/Brand.js.map +1 -1
- package/dist/Cache.d.ts +405 -254
- package/dist/Cache.d.ts.map +1 -1
- package/dist/Cache.js +166 -101
- package/dist/Cache.js.map +1 -1
- package/dist/Cause.d.ts +167 -277
- package/dist/Cause.d.ts.map +1 -1
- package/dist/Cause.js +122 -176
- package/dist/Cause.js.map +1 -1
- package/dist/Channel.d.ts +729 -768
- package/dist/Channel.d.ts.map +1 -1
- package/dist/Channel.js +514 -440
- package/dist/Channel.js.map +1 -1
- package/dist/ChannelSchema.d.ts +1 -1
- package/dist/ChannelSchema.d.ts.map +1 -1
- package/dist/ChannelSchema.js.map +1 -1
- package/dist/Chunk.d.ts +834 -1173
- package/dist/Chunk.d.ts.map +1 -1
- package/dist/Chunk.js +326 -439
- package/dist/Chunk.js.map +1 -1
- package/dist/Clock.d.ts +180 -49
- package/dist/Clock.d.ts.map +1 -1
- package/dist/Clock.js +96 -31
- package/dist/Clock.js.map +1 -1
- package/dist/Combiner.d.ts +20 -33
- package/dist/Combiner.d.ts.map +1 -1
- package/dist/Combiner.js +18 -30
- package/dist/Combiner.js.map +1 -1
- package/dist/Config.d.ts +225 -173
- package/dist/Config.d.ts.map +1 -1
- package/dist/Config.js +336 -265
- package/dist/Config.js.map +1 -1
- package/dist/ConfigProvider.d.ts +194 -68
- package/dist/ConfigProvider.d.ts.map +1 -1
- package/dist/ConfigProvider.js +115 -80
- package/dist/ConfigProvider.js.map +1 -1
- package/dist/Console.d.ts +233 -33
- package/dist/Console.d.ts.map +1 -1
- package/dist/Console.js +232 -32
- package/dist/Console.js.map +1 -1
- package/dist/Context.d.ts +151 -274
- package/dist/Context.d.ts.map +1 -1
- package/dist/Context.js +171 -214
- package/dist/Context.js.map +1 -1
- package/dist/Cron.d.ts +68 -77
- package/dist/Cron.d.ts.map +1 -1
- package/dist/Cron.js +57 -66
- package/dist/Cron.js.map +1 -1
- package/dist/Crypto.d.ts +13 -15
- package/dist/Crypto.d.ts.map +1 -1
- package/dist/Crypto.js +9 -10
- package/dist/Crypto.js.map +1 -1
- package/dist/Data.d.ts +60 -80
- package/dist/Data.d.ts.map +1 -1
- package/dist/Data.js +16 -23
- package/dist/Data.js.map +1 -1
- package/dist/DateTime.d.ts +562 -660
- package/dist/DateTime.d.ts.map +1 -1
- package/dist/DateTime.js +307 -362
- package/dist/DateTime.js.map +1 -1
- package/dist/Deferred.d.ts +253 -256
- package/dist/Deferred.d.ts.map +1 -1
- package/dist/Deferred.js +104 -96
- package/dist/Deferred.js.map +1 -1
- package/dist/Duration.d.ts +216 -308
- package/dist/Duration.d.ts.map +1 -1
- package/dist/Duration.js +132 -186
- package/dist/Duration.js.map +1 -1
- package/dist/Effect.d.ts +2841 -3247
- package/dist/Effect.d.ts.map +1 -1
- package/dist/Effect.js +1322 -1546
- package/dist/Effect.js.map +1 -1
- package/dist/Effectable.js.map +1 -1
- package/dist/Encoding.d.ts +22 -40
- package/dist/Encoding.d.ts.map +1 -1
- package/dist/Encoding.js +22 -40
- package/dist/Encoding.js.map +1 -1
- package/dist/Equal.d.ts +33 -37
- package/dist/Equal.d.ts.map +1 -1
- package/dist/Equal.js +29 -21
- package/dist/Equal.js.map +1 -1
- package/dist/Equivalence.d.ts +103 -105
- package/dist/Equivalence.d.ts.map +1 -1
- package/dist/Equivalence.js +77 -79
- package/dist/Equivalence.js.map +1 -1
- package/dist/ErrorReporter.d.ts +51 -27
- package/dist/ErrorReporter.d.ts.map +1 -1
- package/dist/ErrorReporter.js +50 -26
- package/dist/ErrorReporter.js.map +1 -1
- package/dist/ExecutionPlan.d.ts +13 -55
- package/dist/ExecutionPlan.d.ts.map +1 -1
- package/dist/ExecutionPlan.js +7 -28
- package/dist/ExecutionPlan.js.map +1 -1
- package/dist/Exit.d.ts +116 -192
- package/dist/Exit.d.ts.map +1 -1
- package/dist/Exit.js +82 -130
- package/dist/Exit.js.map +1 -1
- package/dist/Fiber.d.ts +82 -146
- package/dist/Fiber.d.ts.map +1 -1
- package/dist/Fiber.js +48 -87
- package/dist/Fiber.js.map +1 -1
- package/dist/FiberHandle.d.ts +152 -105
- package/dist/FiberHandle.d.ts.map +1 -1
- package/dist/FiberHandle.js +106 -73
- package/dist/FiberHandle.js.map +1 -1
- package/dist/FiberMap.d.ts +213 -168
- package/dist/FiberMap.d.ts.map +1 -1
- package/dist/FiberMap.js +114 -89
- package/dist/FiberMap.js.map +1 -1
- package/dist/FiberSet.d.ts +123 -81
- package/dist/FiberSet.d.ts.map +1 -1
- package/dist/FiberSet.js +85 -59
- package/dist/FiberSet.js.map +1 -1
- package/dist/FileSystem.d.ts +153 -264
- package/dist/FileSystem.d.ts.map +1 -1
- package/dist/FileSystem.js +42 -147
- package/dist/FileSystem.js.map +1 -1
- package/dist/Filter.d.ts +61 -33
- package/dist/Filter.d.ts.map +1 -1
- package/dist/Filter.js +26 -15
- package/dist/Filter.js.map +1 -1
- package/dist/Formatter.d.ts +25 -33
- package/dist/Formatter.d.ts.map +1 -1
- package/dist/Formatter.js +48 -49
- package/dist/Formatter.js.map +1 -1
- package/dist/Function.d.ts +76 -145
- package/dist/Function.d.ts.map +1 -1
- package/dist/Function.js +40 -57
- package/dist/Function.js.map +1 -1
- package/dist/Graph.d.ts +360 -714
- package/dist/Graph.d.ts.map +1 -1
- package/dist/Graph.js +168 -297
- package/dist/Graph.js.map +1 -1
- package/dist/HKT.d.ts +12 -6
- package/dist/HKT.d.ts.map +1 -1
- package/dist/Hash.d.ts +47 -83
- package/dist/Hash.d.ts.map +1 -1
- package/dist/Hash.js +46 -68
- package/dist/Hash.js.map +1 -1
- package/dist/HashMap.d.ts +319 -411
- package/dist/HashMap.d.ts.map +1 -1
- package/dist/HashMap.js +122 -166
- package/dist/HashMap.js.map +1 -1
- package/dist/HashRing.d.ts.map +1 -1
- package/dist/HashRing.js +1 -0
- package/dist/HashRing.js.map +1 -1
- package/dist/HashSet.d.ts +177 -284
- package/dist/HashSet.d.ts.map +1 -1
- package/dist/HashSet.js +68 -109
- package/dist/HashSet.js.map +1 -1
- package/dist/Inspectable.d.ts +12 -12
- package/dist/Inspectable.js +8 -8
- package/dist/Inspectable.js.map +1 -1
- package/dist/Iterable.d.ts +620 -786
- package/dist/Iterable.d.ts.map +1 -1
- package/dist/Iterable.js +228 -306
- package/dist/Iterable.js.map +1 -1
- package/dist/JsonPatch.d.ts +11 -13
- package/dist/JsonPatch.d.ts.map +1 -1
- package/dist/JsonPatch.js +44 -102
- package/dist/JsonPatch.js.map +1 -1
- package/dist/JsonPointer.d.ts +8 -8
- package/dist/JsonPointer.js +8 -8
- package/dist/JsonPointer.js.map +1 -1
- package/dist/JsonSchema.d.ts +98 -44
- package/dist/JsonSchema.d.ts.map +1 -1
- package/dist/JsonSchema.js +297 -234
- package/dist/JsonSchema.js.map +1 -1
- package/dist/Latch.d.ts +23 -35
- package/dist/Latch.d.ts.map +1 -1
- package/dist/Latch.js +16 -28
- package/dist/Latch.js.map +1 -1
- package/dist/Layer.d.ts +359 -260
- package/dist/Layer.d.ts.map +1 -1
- package/dist/Layer.js +195 -175
- package/dist/Layer.js.map +1 -1
- package/dist/LayerMap.d.ts +42 -29
- package/dist/LayerMap.d.ts.map +1 -1
- package/dist/LayerMap.js +31 -21
- package/dist/LayerMap.js.map +1 -1
- package/dist/LayerRef.d.ts +6 -2
- package/dist/LayerRef.d.ts.map +1 -1
- package/dist/LayerRef.js +6 -2
- package/dist/LayerRef.js.map +1 -1
- package/dist/LogLevel.d.ts +114 -214
- package/dist/LogLevel.d.ts.map +1 -1
- package/dist/LogLevel.js +41 -76
- package/dist/LogLevel.js.map +1 -1
- package/dist/Logger.d.ts +218 -467
- package/dist/Logger.d.ts.map +1 -1
- package/dist/Logger.js +204 -450
- package/dist/Logger.js.map +1 -1
- package/dist/ManagedRuntime.d.ts +7 -5
- package/dist/ManagedRuntime.d.ts.map +1 -1
- package/dist/ManagedRuntime.js +7 -5
- package/dist/ManagedRuntime.js.map +1 -1
- package/dist/Match.d.ts +217 -252
- package/dist/Match.d.ts.map +1 -1
- package/dist/Match.js +150 -183
- package/dist/Match.js.map +1 -1
- package/dist/Metric.d.ts +442 -993
- package/dist/Metric.d.ts.map +1 -1
- package/dist/Metric.js +198 -642
- package/dist/Metric.js.map +1 -1
- package/dist/MutableHashMap.d.ts +144 -173
- package/dist/MutableHashMap.d.ts.map +1 -1
- package/dist/MutableHashMap.js +68 -79
- package/dist/MutableHashMap.js.map +1 -1
- package/dist/MutableHashSet.d.ts +84 -89
- package/dist/MutableHashSet.d.ts.map +1 -1
- package/dist/MutableHashSet.js +44 -47
- package/dist/MutableHashSet.js.map +1 -1
- package/dist/MutableList.d.ts +71 -370
- package/dist/MutableList.d.ts.map +1 -1
- package/dist/MutableList.js +59 -284
- package/dist/MutableList.js.map +1 -1
- package/dist/MutableRef.d.ts +420 -243
- package/dist/MutableRef.d.ts.map +1 -1
- package/dist/MutableRef.js +209 -120
- package/dist/MutableRef.js.map +1 -1
- package/dist/Newtype.d.ts +21 -14
- package/dist/Newtype.d.ts.map +1 -1
- package/dist/Newtype.js +15 -13
- package/dist/Newtype.js.map +1 -1
- package/dist/NonEmptyIterable.d.ts +7 -137
- package/dist/NonEmptyIterable.d.ts.map +1 -1
- package/dist/NonEmptyIterable.js +5 -93
- package/dist/NonEmptyIterable.js.map +1 -1
- package/dist/Number.d.ts +196 -233
- package/dist/Number.d.ts.map +1 -1
- package/dist/Number.js +90 -109
- package/dist/Number.js.map +1 -1
- package/dist/Optic.d.ts +97 -189
- package/dist/Optic.d.ts.map +1 -1
- package/dist/Optic.js +187 -290
- package/dist/Optic.js.map +1 -1
- package/dist/Option.d.ts +447 -812
- package/dist/Option.d.ts.map +1 -1
- package/dist/Option.js +211 -392
- package/dist/Option.js.map +1 -1
- package/dist/Order.d.ts +109 -109
- package/dist/Order.js +91 -91
- package/dist/Order.js.map +1 -1
- package/dist/Ordering.d.ts +20 -23
- package/dist/Ordering.d.ts.map +1 -1
- package/dist/Ordering.js +8 -9
- package/dist/Ordering.js.map +1 -1
- package/dist/PartitionedSemaphore.js.map +1 -1
- package/dist/Path.d.ts +38 -41
- package/dist/Path.d.ts.map +1 -1
- package/dist/Path.js +3 -4
- package/dist/Path.js.map +1 -1
- package/dist/Pipeable.d.ts +6 -5
- package/dist/Pipeable.d.ts.map +1 -1
- package/dist/Pipeable.js +2 -2
- package/dist/Pipeable.js.map +1 -1
- package/dist/PlatformError.d.ts +4 -4
- package/dist/PlatformError.js +3 -3
- package/dist/PlatformError.js.map +1 -1
- package/dist/Pool.d.ts +4 -2
- package/dist/Pool.d.ts.map +1 -1
- package/dist/Pool.js +4 -2
- package/dist/Pool.js.map +1 -1
- package/dist/Predicate.d.ts +200 -181
- package/dist/Predicate.d.ts.map +1 -1
- package/dist/Predicate.js +100 -108
- package/dist/Predicate.js.map +1 -1
- package/dist/PrimaryKey.d.ts +7 -7
- package/dist/PrimaryKey.js +5 -5
- package/dist/PrimaryKey.js.map +1 -1
- package/dist/PubSub.d.ts +425 -494
- package/dist/PubSub.d.ts.map +1 -1
- package/dist/PubSub.js +373 -362
- package/dist/PubSub.js.map +1 -1
- package/dist/Pull.d.ts +24 -18
- package/dist/Pull.d.ts.map +1 -1
- package/dist/Pull.js +11 -9
- package/dist/Pull.js.map +1 -1
- package/dist/Queue.d.ts +200 -159
- package/dist/Queue.d.ts.map +1 -1
- package/dist/Queue.js +162 -132
- package/dist/Queue.js.map +1 -1
- package/dist/Random.d.ts +49 -74
- package/dist/Random.d.ts.map +1 -1
- package/dist/Random.js +35 -54
- package/dist/Random.js.map +1 -1
- package/dist/RcMap.d.ts +121 -63
- package/dist/RcMap.d.ts.map +1 -1
- package/dist/RcMap.js +42 -21
- package/dist/RcMap.js.map +1 -1
- package/dist/RcRef.d.ts +24 -13
- package/dist/RcRef.d.ts.map +1 -1
- package/dist/RcRef.js +15 -9
- package/dist/RcRef.js.map +1 -1
- package/dist/Record.d.ts +291 -488
- package/dist/Record.d.ts.map +1 -1
- package/dist/Record.js +111 -202
- package/dist/Record.js.map +1 -1
- package/dist/Redactable.d.ts +6 -2
- package/dist/Redactable.d.ts.map +1 -1
- package/dist/Redactable.js +7 -2
- package/dist/Redactable.js.map +1 -1
- package/dist/Redacted.d.ts +25 -25
- package/dist/Redacted.d.ts.map +1 -1
- package/dist/Redacted.js +19 -20
- package/dist/Redacted.js.map +1 -1
- package/dist/Reducer.d.ts +8 -15
- package/dist/Reducer.d.ts.map +1 -1
- package/dist/Reducer.js +6 -12
- package/dist/Reducer.js.map +1 -1
- package/dist/Ref.d.ts +95 -165
- package/dist/Ref.d.ts.map +1 -1
- package/dist/Ref.js +75 -122
- package/dist/Ref.js.map +1 -1
- package/dist/References.d.ts +102 -168
- package/dist/References.d.ts.map +1 -1
- package/dist/References.js +102 -168
- package/dist/References.js.map +1 -1
- package/dist/RegExp.d.ts +10 -14
- package/dist/RegExp.d.ts.map +1 -1
- package/dist/RegExp.js +10 -14
- package/dist/RegExp.js.map +1 -1
- package/dist/Request.d.ts +31 -21
- package/dist/Request.d.ts.map +1 -1
- package/dist/Request.js +16 -13
- package/dist/Request.js.map +1 -1
- package/dist/RequestResolver.d.ts +201 -90
- package/dist/RequestResolver.d.ts.map +1 -1
- package/dist/RequestResolver.js +87 -41
- package/dist/RequestResolver.js.map +1 -1
- package/dist/Resource.js.map +1 -1
- package/dist/Result.d.ts +302 -470
- package/dist/Result.d.ts.map +1 -1
- package/dist/Result.js +133 -217
- package/dist/Result.js.map +1 -1
- package/dist/Runtime.d.ts +50 -75
- package/dist/Runtime.d.ts.map +1 -1
- package/dist/Runtime.js +39 -60
- package/dist/Runtime.js.map +1 -1
- package/dist/Schedule.d.ts +290 -1636
- package/dist/Schedule.d.ts.map +1 -1
- package/dist/Schedule.js +162 -803
- package/dist/Schedule.js.map +1 -1
- package/dist/Scheduler.d.ts +5 -5
- package/dist/Scheduler.d.ts.map +1 -1
- package/dist/Scheduler.js +18 -6
- package/dist/Scheduler.js.map +1 -1
- package/dist/Schema.d.ts +644 -642
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +491 -527
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaAST.d.ts +27 -50
- package/dist/SchemaAST.d.ts.map +1 -1
- package/dist/SchemaAST.js +366 -279
- package/dist/SchemaAST.js.map +1 -1
- package/dist/SchemaError.d.ts +7 -6
- package/dist/SchemaError.d.ts.map +1 -1
- package/dist/SchemaError.js +7 -6
- package/dist/SchemaError.js.map +1 -1
- package/dist/SchemaGetter.d.ts +217 -174
- package/dist/SchemaGetter.d.ts.map +1 -1
- package/dist/SchemaGetter.js +218 -185
- package/dist/SchemaGetter.js.map +1 -1
- package/dist/SchemaIssue.d.ts +62 -190
- package/dist/SchemaIssue.d.ts.map +1 -1
- package/dist/SchemaIssue.js +73 -265
- package/dist/SchemaIssue.js.map +1 -1
- package/dist/SchemaParser.d.ts +2 -2
- package/dist/SchemaParser.d.ts.map +1 -1
- package/dist/SchemaParser.js +123 -75
- package/dist/SchemaParser.js.map +1 -1
- package/dist/SchemaRepresentation.d.ts +22 -36
- package/dist/SchemaRepresentation.d.ts.map +1 -1
- package/dist/SchemaRepresentation.js +20 -26
- package/dist/SchemaRepresentation.js.map +1 -1
- package/dist/SchemaTransformation.d.ts +114 -74
- package/dist/SchemaTransformation.d.ts.map +1 -1
- package/dist/SchemaTransformation.js +120 -85
- package/dist/SchemaTransformation.js.map +1 -1
- package/dist/Scope.d.ts +123 -151
- package/dist/Scope.d.ts.map +1 -1
- package/dist/Scope.js +72 -92
- package/dist/Scope.js.map +1 -1
- package/dist/ScopedCache.js.map +1 -1
- package/dist/ScopedRef.d.ts +3 -3
- package/dist/ScopedRef.js +2 -2
- package/dist/ScopedRef.js.map +1 -1
- package/dist/Semaphore.d.ts +96 -10
- package/dist/Semaphore.d.ts.map +1 -1
- package/dist/Semaphore.js +78 -39
- package/dist/Semaphore.js.map +1 -1
- package/dist/Sink.d.ts +117 -107
- package/dist/Sink.d.ts.map +1 -1
- package/dist/Sink.js +107 -100
- package/dist/Sink.js.map +1 -1
- package/dist/Stdio.d.ts +1 -1
- package/dist/Stdio.js.map +1 -1
- package/dist/Stream.d.ts +2415 -2949
- package/dist/Stream.d.ts.map +1 -1
- package/dist/Stream.js +1078 -1381
- package/dist/Stream.js.map +1 -1
- package/dist/String.d.ts +262 -308
- package/dist/String.d.ts.map +1 -1
- package/dist/String.js +184 -215
- package/dist/String.js.map +1 -1
- package/dist/Struct.d.ts +109 -114
- package/dist/Struct.d.ts.map +1 -1
- package/dist/Struct.js +41 -50
- package/dist/Struct.js.map +1 -1
- package/dist/SubscriptionRef.d.ts +282 -250
- package/dist/SubscriptionRef.d.ts.map +1 -1
- package/dist/SubscriptionRef.js +104 -92
- package/dist/SubscriptionRef.js.map +1 -1
- package/dist/Symbol.d.ts +3 -3
- package/dist/Symbol.js +3 -3
- package/dist/Symbol.js.map +1 -1
- package/dist/SynchronizedRef.js.map +1 -1
- package/dist/Take.js.map +1 -1
- package/dist/Terminal.d.ts +2 -2
- package/dist/Terminal.js +1 -1
- package/dist/Terminal.js.map +1 -1
- package/dist/Tracer.d.ts +100 -54
- package/dist/Tracer.d.ts.map +1 -1
- package/dist/Tracer.js +41 -24
- package/dist/Tracer.js.map +1 -1
- package/dist/Trie.d.ts +287 -679
- package/dist/Trie.d.ts.map +1 -1
- package/dist/Trie.js +109 -251
- package/dist/Trie.js.map +1 -1
- package/dist/Tuple.d.ts +92 -127
- package/dist/Tuple.d.ts.map +1 -1
- package/dist/Tuple.js +42 -57
- package/dist/Tuple.js.map +1 -1
- package/dist/TxChunk.d.ts +201 -121
- package/dist/TxChunk.d.ts.map +1 -1
- package/dist/TxChunk.js +85 -56
- package/dist/TxChunk.js.map +1 -1
- package/dist/TxDeferred.d.ts +62 -46
- package/dist/TxDeferred.d.ts.map +1 -1
- package/dist/TxDeferred.js +30 -22
- package/dist/TxDeferred.js.map +1 -1
- package/dist/TxHashMap.d.ts +631 -779
- package/dist/TxHashMap.d.ts.map +1 -1
- package/dist/TxHashMap.js +268 -330
- package/dist/TxHashMap.js.map +1 -1
- package/dist/TxHashSet.d.ts +297 -236
- package/dist/TxHashSet.d.ts.map +1 -1
- package/dist/TxHashSet.js +130 -100
- package/dist/TxHashSet.js.map +1 -1
- package/dist/TxPriorityQueue.d.ts +126 -95
- package/dist/TxPriorityQueue.d.ts.map +1 -1
- package/dist/TxPriorityQueue.js +74 -56
- package/dist/TxPriorityQueue.js.map +1 -1
- package/dist/TxPubSub.d.ts +101 -88
- package/dist/TxPubSub.d.ts.map +1 -1
- package/dist/TxPubSub.js +87 -66
- package/dist/TxPubSub.js.map +1 -1
- package/dist/TxQueue.d.ts +200 -180
- package/dist/TxQueue.d.ts.map +1 -1
- package/dist/TxQueue.js +160 -136
- package/dist/TxQueue.js.map +1 -1
- package/dist/TxReentrantLock.d.ts +97 -66
- package/dist/TxReentrantLock.d.ts.map +1 -1
- package/dist/TxReentrantLock.js +67 -45
- package/dist/TxReentrantLock.js.map +1 -1
- package/dist/TxRef.d.ts +51 -32
- package/dist/TxRef.d.ts.map +1 -1
- package/dist/TxRef.js +23 -15
- package/dist/TxRef.js.map +1 -1
- package/dist/TxSemaphore.d.ts +129 -95
- package/dist/TxSemaphore.d.ts.map +1 -1
- package/dist/TxSemaphore.js +85 -70
- package/dist/TxSemaphore.js.map +1 -1
- package/dist/TxSubscriptionRef.d.ts +97 -70
- package/dist/TxSubscriptionRef.d.ts.map +1 -1
- package/dist/TxSubscriptionRef.js +44 -34
- package/dist/TxSubscriptionRef.js.map +1 -1
- package/dist/Types.d.ts +126 -67
- package/dist/Types.d.ts.map +1 -1
- package/dist/UndefinedOr.js.map +1 -1
- package/dist/Unify.d.ts +45 -65
- package/dist/Unify.d.ts.map +1 -1
- package/dist/Unify.js +6 -9
- package/dist/Unify.js.map +1 -1
- package/dist/Utils.d.ts +23 -16
- package/dist/Utils.d.ts.map +1 -1
- package/dist/Utils.js +3 -7
- package/dist/Utils.js.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/internal/array.js.map +1 -1
- package/dist/internal/core.js +1 -1
- package/dist/internal/core.js.map +1 -1
- package/dist/internal/dateTime.js +4 -0
- package/dist/internal/dateTime.js.map +1 -1
- package/dist/internal/doNotation.js.map +1 -1
- package/dist/internal/effect.js +77 -40
- package/dist/internal/effect.js.map +1 -1
- package/dist/internal/equal.js.map +1 -1
- package/dist/internal/errors.js.map +1 -1
- package/dist/internal/executionPlan.js.map +1 -1
- package/dist/internal/hashMap.js.map +1 -1
- package/dist/internal/hashSet.js.map +1 -1
- package/dist/internal/layer.js.map +1 -1
- package/dist/internal/matcher.js.map +1 -1
- package/dist/internal/metric.js.map +1 -1
- package/dist/internal/option.js.map +1 -1
- package/dist/internal/persistence.d.ts +2 -0
- package/dist/internal/persistence.d.ts.map +1 -0
- package/dist/internal/persistence.js +3 -0
- package/dist/internal/persistence.js.map +1 -0
- package/dist/internal/random.js.map +1 -1
- package/dist/internal/rcRef.js.map +1 -1
- package/dist/internal/record.js.map +1 -1
- package/dist/internal/redacted.js.map +1 -1
- package/dist/internal/references.js +3 -0
- package/dist/internal/references.js.map +1 -1
- package/dist/internal/request.js.map +1 -1
- package/dist/internal/result.js.map +1 -1
- package/dist/internal/schedule.js.map +1 -1
- package/dist/internal/schema/annotations.js.map +1 -1
- package/dist/internal/schema/cause.js.map +1 -1
- package/dist/internal/schema/fromJsonSchemaDocument.js +13 -11
- package/dist/internal/schema/fromJsonSchemaDocument.js.map +1 -1
- package/dist/internal/schema/fromRepresentation.js +8 -15
- package/dist/internal/schema/fromRepresentation.js.map +1 -1
- package/dist/internal/schema/parser.d.ts +14 -0
- package/dist/internal/schema/parser.d.ts.map +1 -0
- package/dist/internal/schema/parser.js +13 -0
- package/dist/internal/schema/parser.js.map +1 -0
- package/dist/internal/schema/schema.js.map +1 -1
- package/dist/internal/schema/toArbitrary.js.map +1 -1
- package/dist/internal/schema/toCodeDocument.js.map +1 -1
- package/dist/internal/schema/toEquivalence.js.map +1 -1
- package/dist/internal/schema/toJsonSchemaDocument.js +48 -6
- package/dist/internal/schema/toJsonSchemaDocument.js.map +1 -1
- package/dist/internal/schema/toRepresentation.js +87 -107
- package/dist/internal/schema/toRepresentation.js.map +1 -1
- package/dist/internal/stackTraceLimit.js.map +1 -1
- package/dist/internal/stream.js.map +1 -1
- package/dist/internal/tracer.js.map +1 -1
- package/dist/internal/trie.js +13 -9
- package/dist/internal/trie.js.map +1 -1
- package/dist/testing/FastCheck.d.ts +8 -7
- package/dist/testing/FastCheck.d.ts.map +1 -1
- package/dist/testing/FastCheck.js +8 -7
- package/dist/testing/FastCheck.js.map +1 -1
- package/dist/testing/TestClock.d.ts +57 -28
- package/dist/testing/TestClock.d.ts.map +1 -1
- package/dist/testing/TestClock.js +50 -18
- package/dist/testing/TestClock.js.map +1 -1
- package/dist/testing/TestConsole.d.ts +32 -31
- package/dist/testing/TestConsole.d.ts.map +1 -1
- package/dist/testing/TestConsole.js +24 -22
- package/dist/testing/TestConsole.js.map +1 -1
- package/dist/testing/TestSchema.d.ts +29 -29
- package/dist/testing/TestSchema.js +25 -25
- package/dist/testing/TestSchema.js.map +1 -1
- package/dist/testing/index.js.map +1 -1
- package/dist/unstable/ai/AiError.d.ts +95 -118
- package/dist/unstable/ai/AiError.d.ts.map +1 -1
- package/dist/unstable/ai/AiError.js +94 -117
- package/dist/unstable/ai/AiError.js.map +1 -1
- package/dist/unstable/ai/AnthropicStructuredOutput.d.ts +1 -1
- package/dist/unstable/ai/AnthropicStructuredOutput.js +1 -1
- package/dist/unstable/ai/AnthropicStructuredOutput.js.map +1 -1
- package/dist/unstable/ai/Chat.d.ts +132 -97
- package/dist/unstable/ai/Chat.d.ts.map +1 -1
- package/dist/unstable/ai/Chat.js +55 -51
- package/dist/unstable/ai/Chat.js.map +1 -1
- package/dist/unstable/ai/EmbeddingModel.js.map +1 -1
- package/dist/unstable/ai/IdGenerator.d.ts +32 -28
- package/dist/unstable/ai/IdGenerator.d.ts.map +1 -1
- package/dist/unstable/ai/IdGenerator.js +26 -21
- package/dist/unstable/ai/IdGenerator.js.map +1 -1
- package/dist/unstable/ai/LanguageModel.d.ts +107 -67
- package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
- package/dist/unstable/ai/LanguageModel.js +104 -64
- package/dist/unstable/ai/LanguageModel.js.map +1 -1
- package/dist/unstable/ai/McpProtocol.d.ts +30 -0
- package/dist/unstable/ai/McpProtocol.d.ts.map +1 -0
- package/dist/unstable/ai/McpProtocol.js +20 -0
- package/dist/unstable/ai/McpProtocol.js.map +1 -0
- package/dist/unstable/ai/McpSchema.d.ts +141 -75
- package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
- package/dist/unstable/ai/McpSchema.js +58 -50
- package/dist/unstable/ai/McpSchema.js.map +1 -1
- package/dist/unstable/ai/McpServer.d.ts +68 -59
- package/dist/unstable/ai/McpServer.d.ts.map +1 -1
- package/dist/unstable/ai/McpServer.js +694 -241
- package/dist/unstable/ai/McpServer.js.map +1 -1
- package/dist/unstable/ai/Model.d.ts +8 -19
- package/dist/unstable/ai/Model.d.ts.map +1 -1
- package/dist/unstable/ai/Model.js +9 -20
- package/dist/unstable/ai/Model.js.map +1 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.d.ts +1 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.js +1 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.js.map +1 -1
- package/dist/unstable/ai/Prompt.d.ts +112 -38
- package/dist/unstable/ai/Prompt.d.ts.map +1 -1
- package/dist/unstable/ai/Prompt.js +53 -17
- package/dist/unstable/ai/Prompt.js.map +1 -1
- package/dist/unstable/ai/Response.d.ts +28 -14
- package/dist/unstable/ai/Response.d.ts.map +1 -1
- package/dist/unstable/ai/Response.js +9 -4
- package/dist/unstable/ai/Response.js.map +1 -1
- package/dist/unstable/ai/ResponseIdTracker.js.map +1 -1
- package/dist/unstable/ai/Telemetry.d.ts +46 -13
- package/dist/unstable/ai/Telemetry.d.ts.map +1 -1
- package/dist/unstable/ai/Telemetry.js +18 -7
- package/dist/unstable/ai/Telemetry.js.map +1 -1
- package/dist/unstable/ai/Tokenizer.d.ts +14 -3
- package/dist/unstable/ai/Tokenizer.d.ts.map +1 -1
- package/dist/unstable/ai/Tokenizer.js +10 -2
- package/dist/unstable/ai/Tokenizer.js.map +1 -1
- package/dist/unstable/ai/Tool.d.ts +59 -44
- package/dist/unstable/ai/Tool.d.ts.map +1 -1
- package/dist/unstable/ai/Tool.js +48 -39
- package/dist/unstable/ai/Tool.js.map +1 -1
- package/dist/unstable/ai/Toolkit.d.ts +26 -8
- package/dist/unstable/ai/Toolkit.d.ts.map +1 -1
- package/dist/unstable/ai/Toolkit.js +18 -4
- package/dist/unstable/ai/Toolkit.js.map +1 -1
- package/dist/unstable/ai/index.d.ts +4 -0
- package/dist/unstable/ai/index.d.ts.map +1 -1
- package/dist/unstable/ai/index.js +4 -0
- package/dist/unstable/ai/index.js.map +1 -1
- package/dist/unstable/ai/internal/codec-transformer.js.map +1 -1
- package/dist/unstable/ai/internal/mcpProtocol.d.ts +21 -0
- package/dist/unstable/ai/internal/mcpProtocol.d.ts.map +1 -0
- package/dist/unstable/ai/internal/mcpProtocol.js +22 -0
- package/dist/unstable/ai/internal/mcpProtocol.js.map +1 -0
- package/dist/unstable/ai/internal/mcpProtocolRegistry.d.ts +2 -0
- package/dist/unstable/ai/internal/mcpProtocolRegistry.d.ts.map +1 -0
- package/dist/unstable/ai/internal/mcpProtocolRegistry.js +32 -0
- package/dist/unstable/ai/internal/mcpProtocolRegistry.js.map +1 -0
- package/dist/unstable/ai/internal/structured-output.js +14 -15
- package/dist/unstable/ai/internal/structured-output.js.map +1 -1
- package/dist/unstable/cli/Argument.d.ts +273 -69
- package/dist/unstable/cli/Argument.d.ts.map +1 -1
- package/dist/unstable/cli/Argument.js +111 -33
- package/dist/unstable/cli/Argument.js.map +1 -1
- package/dist/unstable/cli/CliConfig.js.map +1 -1
- package/dist/unstable/cli/CliError.d.ts +69 -76
- package/dist/unstable/cli/CliError.d.ts.map +1 -1
- package/dist/unstable/cli/CliError.js +57 -61
- package/dist/unstable/cli/CliError.js.map +1 -1
- package/dist/unstable/cli/CliOutput.d.ts +35 -54
- package/dist/unstable/cli/CliOutput.d.ts.map +1 -1
- package/dist/unstable/cli/CliOutput.js +26 -42
- package/dist/unstable/cli/CliOutput.js.map +1 -1
- package/dist/unstable/cli/Command.d.ts +705 -107
- package/dist/unstable/cli/Command.d.ts.map +1 -1
- package/dist/unstable/cli/Command.js +238 -42
- package/dist/unstable/cli/Command.js.map +1 -1
- package/dist/unstable/cli/Completions.js.map +1 -1
- package/dist/unstable/cli/Flag.d.ts +418 -138
- package/dist/unstable/cli/Flag.d.ts.map +1 -1
- package/dist/unstable/cli/Flag.js +197 -71
- package/dist/unstable/cli/Flag.js.map +1 -1
- package/dist/unstable/cli/GlobalFlag.d.ts +1 -1
- package/dist/unstable/cli/GlobalFlag.js.map +1 -1
- package/dist/unstable/cli/HelpDoc.d.ts +12 -4
- package/dist/unstable/cli/HelpDoc.d.ts.map +1 -1
- package/dist/unstable/cli/Param.d.ts +292 -78
- package/dist/unstable/cli/Param.d.ts.map +1 -1
- package/dist/unstable/cli/Param.js +128 -46
- package/dist/unstable/cli/Param.js.map +1 -1
- package/dist/unstable/cli/Primitive.d.ts +370 -149
- package/dist/unstable/cli/Primitive.d.ts.map +1 -1
- package/dist/unstable/cli/Primitive.js +344 -136
- package/dist/unstable/cli/Primitive.js.map +1 -1
- package/dist/unstable/cli/Prompt.d.ts +23 -14
- package/dist/unstable/cli/Prompt.d.ts.map +1 -1
- package/dist/unstable/cli/Prompt.js +23 -14
- package/dist/unstable/cli/Prompt.js.map +1 -1
- package/dist/unstable/cli/index.js.map +1 -1
- package/dist/unstable/cli/internal/ansi.js.map +1 -1
- package/dist/unstable/cli/internal/auto-suggest.js.map +1 -1
- package/dist/unstable/cli/internal/command.js.map +1 -1
- package/dist/unstable/cli/internal/completions/bash.js.map +1 -1
- package/dist/unstable/cli/internal/completions/descriptor.js.map +1 -1
- package/dist/unstable/cli/internal/completions/fish.js.map +1 -1
- package/dist/unstable/cli/internal/completions/zsh.js.map +1 -1
- package/dist/unstable/cli/internal/config.js.map +1 -1
- package/dist/unstable/cli/internal/help.js.map +1 -1
- package/dist/unstable/cli/internal/lexer.js +17 -7
- package/dist/unstable/cli/internal/lexer.js.map +1 -1
- package/dist/unstable/cli/internal/parser.js +2 -2
- package/dist/unstable/cli/internal/parser.js.map +1 -1
- package/dist/unstable/cli/internal/wizard.js.map +1 -1
- package/dist/unstable/cluster/ClusterCron.js.map +1 -1
- package/dist/unstable/cluster/ClusterError.js.map +1 -1
- package/dist/unstable/cluster/ClusterMetrics.js.map +1 -1
- package/dist/unstable/cluster/ClusterSchema.d.ts +8 -8
- package/dist/unstable/cluster/ClusterSchema.js +8 -8
- package/dist/unstable/cluster/ClusterSchema.js.map +1 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.js +5 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
- package/dist/unstable/cluster/DeliverAt.js.map +1 -1
- package/dist/unstable/cluster/Entity.d.ts +10 -10
- package/dist/unstable/cluster/Entity.d.ts.map +1 -1
- package/dist/unstable/cluster/Entity.js +8 -8
- package/dist/unstable/cluster/Entity.js.map +1 -1
- package/dist/unstable/cluster/EntityAddress.js.map +1 -1
- package/dist/unstable/cluster/EntityId.js.map +1 -1
- package/dist/unstable/cluster/EntityProxy.d.ts +4 -2
- package/dist/unstable/cluster/EntityProxy.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityProxy.js +4 -2
- package/dist/unstable/cluster/EntityProxy.js.map +1 -1
- package/dist/unstable/cluster/EntityProxyServer.js.map +1 -1
- package/dist/unstable/cluster/EntityResource.d.ts +2 -2
- package/dist/unstable/cluster/EntityResource.js +2 -2
- package/dist/unstable/cluster/EntityResource.js.map +1 -1
- package/dist/unstable/cluster/EntityType.js.map +1 -1
- package/dist/unstable/cluster/Envelope.d.ts +3 -3
- package/dist/unstable/cluster/Envelope.js +3 -3
- package/dist/unstable/cluster/Envelope.js.map +1 -1
- package/dist/unstable/cluster/HttpRunner.d.ts +2 -2
- package/dist/unstable/cluster/HttpRunner.d.ts.map +1 -1
- package/dist/unstable/cluster/HttpRunner.js +6 -4
- package/dist/unstable/cluster/HttpRunner.js.map +1 -1
- package/dist/unstable/cluster/K8sHttpClient.js.map +1 -1
- package/dist/unstable/cluster/MachineId.js.map +1 -1
- package/dist/unstable/cluster/Message.d.ts +9 -9
- package/dist/unstable/cluster/Message.js +6 -6
- package/dist/unstable/cluster/Message.js.map +1 -1
- package/dist/unstable/cluster/MessageStorage.d.ts +15 -15
- package/dist/unstable/cluster/MessageStorage.js +5 -5
- package/dist/unstable/cluster/MessageStorage.js.map +1 -1
- package/dist/unstable/cluster/Reply.d.ts.map +1 -1
- package/dist/unstable/cluster/Reply.js +4 -4
- package/dist/unstable/cluster/Reply.js.map +1 -1
- package/dist/unstable/cluster/Runner.js.map +1 -1
- package/dist/unstable/cluster/RunnerAddress.js.map +1 -1
- package/dist/unstable/cluster/RunnerHealth.d.ts +1 -1
- package/dist/unstable/cluster/RunnerHealth.js +1 -1
- package/dist/unstable/cluster/RunnerHealth.js.map +1 -1
- package/dist/unstable/cluster/RunnerServer.d.ts +2 -1
- package/dist/unstable/cluster/RunnerServer.d.ts.map +1 -1
- package/dist/unstable/cluster/RunnerServer.js +16 -16
- package/dist/unstable/cluster/RunnerServer.js.map +1 -1
- package/dist/unstable/cluster/RunnerStorage.d.ts +2 -2
- package/dist/unstable/cluster/RunnerStorage.js +1 -1
- package/dist/unstable/cluster/RunnerStorage.js.map +1 -1
- package/dist/unstable/cluster/Runners.d.ts +6 -6
- package/dist/unstable/cluster/Runners.d.ts.map +1 -1
- package/dist/unstable/cluster/Runners.js +19 -10
- package/dist/unstable/cluster/Runners.js.map +1 -1
- package/dist/unstable/cluster/ShardId.js.map +1 -1
- package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
- package/dist/unstable/cluster/Sharding.js +3 -2
- package/dist/unstable/cluster/Sharding.js.map +1 -1
- package/dist/unstable/cluster/ShardingConfig.d.ts +3 -3
- package/dist/unstable/cluster/ShardingConfig.js +3 -3
- package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
- package/dist/unstable/cluster/ShardingRegistrationEvent.js.map +1 -1
- package/dist/unstable/cluster/SingleRunner.js.map +1 -1
- package/dist/unstable/cluster/Singleton.js.map +1 -1
- package/dist/unstable/cluster/SingletonAddress.d.ts +1 -1
- package/dist/unstable/cluster/SingletonAddress.js +1 -1
- package/dist/unstable/cluster/SingletonAddress.js.map +1 -1
- package/dist/unstable/cluster/Snowflake.d.ts +8 -8
- package/dist/unstable/cluster/Snowflake.js +8 -8
- package/dist/unstable/cluster/Snowflake.js.map +1 -1
- package/dist/unstable/cluster/SocketRunner.js.map +1 -1
- package/dist/unstable/cluster/SqlMessageStorage.js +1 -1
- package/dist/unstable/cluster/SqlMessageStorage.js.map +1 -1
- package/dist/unstable/cluster/SqlRunnerStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/SqlRunnerStorage.js +20 -5
- package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
- package/dist/unstable/cluster/TestRunner.js.map +1 -1
- package/dist/unstable/cluster/index.js.map +1 -1
- package/dist/unstable/cluster/internal/entityManager.js +5 -5
- package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
- package/dist/unstable/cluster/internal/entityReaper.js.map +1 -1
- package/dist/unstable/cluster/internal/hash.js.map +1 -1
- package/dist/unstable/cluster/internal/interruptors.js.map +1 -1
- package/dist/unstable/cluster/internal/resourceMap.js.map +1 -1
- package/dist/unstable/cluster/internal/resourceRef.js.map +1 -1
- package/dist/unstable/cluster/internal/shardLock.js.map +1 -1
- package/dist/unstable/devtools/DevTools.js.map +1 -1
- package/dist/unstable/devtools/DevToolsClient.js.map +1 -1
- package/dist/unstable/devtools/DevToolsSchema.js.map +1 -1
- package/dist/unstable/devtools/DevToolsServer.js.map +1 -1
- package/dist/unstable/devtools/index.js.map +1 -1
- package/dist/unstable/encoding/Msgpack.d.ts.map +1 -1
- package/dist/unstable/encoding/Msgpack.js +6 -8
- package/dist/unstable/encoding/Msgpack.js.map +1 -1
- package/dist/unstable/encoding/Ndjson.js.map +1 -1
- package/dist/unstable/encoding/Sse.d.ts +72 -8
- package/dist/unstable/encoding/Sse.d.ts.map +1 -1
- package/dist/unstable/encoding/Sse.js +58 -8
- package/dist/unstable/encoding/Sse.js.map +1 -1
- package/dist/unstable/encoding/index.js.map +1 -1
- package/dist/unstable/eventlog/Event.d.ts +20 -20
- package/dist/unstable/eventlog/Event.js.map +1 -1
- package/dist/unstable/eventlog/EventGroup.d.ts +4 -4
- package/dist/unstable/eventlog/EventGroup.js.map +1 -1
- package/dist/unstable/eventlog/EventJournal.d.ts +15 -15
- package/dist/unstable/eventlog/EventJournal.js +13 -13
- package/dist/unstable/eventlog/EventJournal.js.map +1 -1
- package/dist/unstable/eventlog/EventLog.d.ts +3 -3
- package/dist/unstable/eventlog/EventLog.js +3 -3
- package/dist/unstable/eventlog/EventLog.js.map +1 -1
- package/dist/unstable/eventlog/EventLogEncryption.d.ts +1 -1
- package/dist/unstable/eventlog/EventLogEncryption.js +1 -1
- package/dist/unstable/eventlog/EventLogEncryption.js.map +1 -1
- package/dist/unstable/eventlog/EventLogMessage.d.ts +2 -2
- package/dist/unstable/eventlog/EventLogMessage.js +1 -1
- package/dist/unstable/eventlog/EventLogMessage.js.map +1 -1
- package/dist/unstable/eventlog/EventLogRemote.d.ts +15 -15
- package/dist/unstable/eventlog/EventLogRemote.js +1 -1
- package/dist/unstable/eventlog/EventLogRemote.js.map +1 -1
- package/dist/unstable/eventlog/EventLogServer.d.ts +11 -2
- package/dist/unstable/eventlog/EventLogServer.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogServer.js +45 -21
- package/dist/unstable/eventlog/EventLogServer.js.map +1 -1
- package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts +4 -4
- package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogServerEncrypted.js +13 -5
- package/dist/unstable/eventlog/EventLogServerEncrypted.js.map +1 -1
- package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts +5 -5
- package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogServerUnencrypted.js +14 -6
- package/dist/unstable/eventlog/EventLogServerUnencrypted.js.map +1 -1
- package/dist/unstable/eventlog/EventLogSessionAuth.d.ts +1 -1
- package/dist/unstable/eventlog/EventLogSessionAuth.js +1 -1
- package/dist/unstable/eventlog/EventLogSessionAuth.js.map +1 -1
- package/dist/unstable/eventlog/SqlEventJournal.js.map +1 -1
- package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js.map +1 -1
- package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js.map +1 -1
- package/dist/unstable/eventlog/index.js.map +1 -1
- package/dist/unstable/eventlog/internal/identityRootSecretDerivation.js.map +1 -1
- package/dist/unstable/http/Cookies.d.ts +2 -2
- package/dist/unstable/http/Cookies.d.ts.map +1 -1
- package/dist/unstable/http/Cookies.js +30 -18
- package/dist/unstable/http/Cookies.js.map +1 -1
- package/dist/unstable/http/Etag.d.ts +1 -1
- package/dist/unstable/http/Etag.js +1 -1
- package/dist/unstable/http/Etag.js.map +1 -1
- package/dist/unstable/http/FetchHttpClient.d.ts.map +1 -1
- package/dist/unstable/http/FetchHttpClient.js.map +1 -1
- package/dist/unstable/http/Headers.d.ts +2 -2
- package/dist/unstable/http/Headers.js +2 -2
- package/dist/unstable/http/Headers.js.map +1 -1
- package/dist/unstable/http/HttpBody.d.ts +5 -3
- package/dist/unstable/http/HttpBody.d.ts.map +1 -1
- package/dist/unstable/http/HttpBody.js +11 -5
- package/dist/unstable/http/HttpBody.js.map +1 -1
- package/dist/unstable/http/HttpClient.d.ts +51 -44
- package/dist/unstable/http/HttpClient.d.ts.map +1 -1
- package/dist/unstable/http/HttpClient.js +46 -17
- package/dist/unstable/http/HttpClient.js.map +1 -1
- package/dist/unstable/http/HttpClientError.js.map +1 -1
- package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
- package/dist/unstable/http/HttpClientRequest.js +2 -0
- package/dist/unstable/http/HttpClientRequest.js.map +1 -1
- package/dist/unstable/http/HttpClientResponse.d.ts +4 -4
- package/dist/unstable/http/HttpClientResponse.js +2 -2
- package/dist/unstable/http/HttpClientResponse.js.map +1 -1
- package/dist/unstable/http/HttpEffect.d.ts +6 -6
- package/dist/unstable/http/HttpEffect.js +3 -3
- package/dist/unstable/http/HttpEffect.js.map +1 -1
- package/dist/unstable/http/HttpIncomingMessage.js.map +1 -1
- package/dist/unstable/http/HttpMethod.d.ts +6 -9
- package/dist/unstable/http/HttpMethod.d.ts.map +1 -1
- package/dist/unstable/http/HttpMethod.js +6 -9
- package/dist/unstable/http/HttpMethod.js.map +1 -1
- package/dist/unstable/http/HttpMiddleware.d.ts +75 -9
- package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
- package/dist/unstable/http/HttpMiddleware.js +164 -39
- package/dist/unstable/http/HttpMiddleware.js.map +1 -1
- package/dist/unstable/http/HttpPlatform.d.ts +76 -0
- package/dist/unstable/http/HttpPlatform.d.ts.map +1 -1
- package/dist/unstable/http/HttpPlatform.js +32 -0
- package/dist/unstable/http/HttpPlatform.js.map +1 -1
- package/dist/unstable/http/HttpRouter.d.ts +88 -89
- package/dist/unstable/http/HttpRouter.d.ts.map +1 -1
- package/dist/unstable/http/HttpRouter.js +78 -79
- package/dist/unstable/http/HttpRouter.js.map +1 -1
- package/dist/unstable/http/HttpServer.d.ts +13 -13
- package/dist/unstable/http/HttpServer.js +6 -6
- package/dist/unstable/http/HttpServer.js.map +1 -1
- package/dist/unstable/http/HttpServerError.d.ts +2 -2
- package/dist/unstable/http/HttpServerError.js +2 -2
- package/dist/unstable/http/HttpServerError.js.map +1 -1
- package/dist/unstable/http/HttpServerRequest.d.ts +4 -4
- package/dist/unstable/http/HttpServerRequest.js +4 -4
- package/dist/unstable/http/HttpServerRequest.js.map +1 -1
- package/dist/unstable/http/HttpServerRespondable.js.map +1 -1
- package/dist/unstable/http/HttpServerResponse.d.ts +22 -0
- package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerResponse.js +10 -0
- package/dist/unstable/http/HttpServerResponse.js.map +1 -1
- package/dist/unstable/http/HttpStaticServer.d.ts +35 -7
- package/dist/unstable/http/HttpStaticServer.d.ts.map +1 -1
- package/dist/unstable/http/HttpStaticServer.js +35 -7
- package/dist/unstable/http/HttpStaticServer.js.map +1 -1
- package/dist/unstable/http/HttpTraceContext.js.map +1 -1
- package/dist/unstable/http/Multipart.d.ts +6 -6
- package/dist/unstable/http/Multipart.js +5 -5
- package/dist/unstable/http/Multipart.js.map +1 -1
- package/dist/unstable/http/Template.js.map +1 -1
- package/dist/unstable/http/Url.d.ts +33 -63
- package/dist/unstable/http/Url.d.ts.map +1 -1
- package/dist/unstable/http/Url.js +14 -28
- package/dist/unstable/http/Url.js.map +1 -1
- package/dist/unstable/http/UrlParams.d.ts +10 -18
- package/dist/unstable/http/UrlParams.d.ts.map +1 -1
- package/dist/unstable/http/UrlParams.js +9 -17
- package/dist/unstable/http/UrlParams.js.map +1 -1
- package/dist/unstable/http/index.js.map +1 -1
- package/dist/unstable/http/internal/compression.d.ts +2 -0
- package/dist/unstable/http/internal/compression.d.ts.map +1 -0
- package/dist/unstable/http/internal/compression.js +155 -0
- package/dist/unstable/http/internal/compression.js.map +1 -0
- package/dist/unstable/http/internal/preResponseHandler.js.map +1 -1
- package/dist/unstable/httpapi/HttpApi.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.d.ts +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.js +10 -11
- package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiClient.d.ts +4 -5
- package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiClient.js +11 -13
- package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +42 -42
- package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiError.d.ts +13 -13
- package/dist/unstable/httpapi/HttpApiError.js +13 -13
- package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiGroup.d.ts +15 -15
- package/dist/unstable/httpapi/HttpApiGroup.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +71 -24
- package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiMiddleware.js +57 -10
- package/dist/unstable/httpapi/HttpApiMiddleware.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiScalar.d.ts +0 -12
- package/dist/unstable/httpapi/HttpApiScalar.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiScalar.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiSchema.d.ts +6 -6
- package/dist/unstable/httpapi/HttpApiSchema.js +4 -4
- package/dist/unstable/httpapi/HttpApiSchema.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiSecurity.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiSwagger.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiTest.js.map +1 -1
- package/dist/unstable/httpapi/OpenApi.d.ts +13 -13
- package/dist/unstable/httpapi/OpenApi.js +13 -13
- package/dist/unstable/httpapi/OpenApi.js.map +1 -1
- package/dist/unstable/httpapi/index.js.map +1 -1
- package/dist/unstable/httpapi/internal/html.js.map +1 -1
- package/dist/unstable/httpapi/internal/httpApiScalar.js.map +1 -1
- package/dist/unstable/httpapi/internal/httpApiSwagger.js.map +1 -1
- package/dist/unstable/httpapi/internal/mediaType.js.map +1 -1
- package/dist/unstable/observability/Otlp.js.map +1 -1
- package/dist/unstable/observability/OtlpExporter.d.ts +12 -14
- package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpExporter.js +17 -4
- package/dist/unstable/observability/OtlpExporter.js.map +1 -1
- package/dist/unstable/observability/OtlpLogger.js.map +1 -1
- package/dist/unstable/observability/OtlpMetrics.d.ts +4 -1
- package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpMetrics.js.map +1 -1
- package/dist/unstable/observability/OtlpResource.d.ts +16 -7
- package/dist/unstable/observability/OtlpResource.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpResource.js +21 -12
- package/dist/unstable/observability/OtlpResource.js.map +1 -1
- package/dist/unstable/observability/OtlpSerialization.js.map +1 -1
- package/dist/unstable/observability/OtlpTracer.js.map +1 -1
- package/dist/unstable/observability/PrometheusMetrics.d.ts +13 -4
- package/dist/unstable/observability/PrometheusMetrics.d.ts.map +1 -1
- package/dist/unstable/observability/PrometheusMetrics.js +10 -3
- package/dist/unstable/observability/PrometheusMetrics.js.map +1 -1
- package/dist/unstable/observability/index.js.map +1 -1
- package/dist/unstable/observability/internal/otlpEnv.js +1 -1
- package/dist/unstable/observability/internal/otlpEnv.js.map +1 -1
- package/dist/unstable/observability/internal/otlpProtobuf.js.map +1 -1
- package/dist/unstable/observability/internal/protobuf.js +3 -0
- package/dist/unstable/observability/internal/protobuf.js.map +1 -1
- package/dist/unstable/persistence/KeyValueStore.d.ts +8 -3
- package/dist/unstable/persistence/KeyValueStore.d.ts.map +1 -1
- package/dist/unstable/persistence/KeyValueStore.js +22 -13
- package/dist/unstable/persistence/KeyValueStore.js.map +1 -1
- package/dist/unstable/persistence/Persistable.d.ts +8 -8
- package/dist/unstable/persistence/Persistable.js.map +1 -1
- package/dist/unstable/persistence/PersistedCache.js.map +1 -1
- package/dist/unstable/persistence/PersistedQueue.d.ts +6 -6
- package/dist/unstable/persistence/PersistedQueue.js +6 -6
- package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
- package/dist/unstable/persistence/Persistence.d.ts +3 -3
- package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
- package/dist/unstable/persistence/Persistence.js +91 -15
- package/dist/unstable/persistence/Persistence.js.map +1 -1
- package/dist/unstable/persistence/RateLimiter.d.ts +26 -15
- package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
- package/dist/unstable/persistence/RateLimiter.js +24 -13
- package/dist/unstable/persistence/RateLimiter.js.map +1 -1
- package/dist/unstable/persistence/Redis.d.ts +2 -2
- package/dist/unstable/persistence/Redis.js +1 -1
- package/dist/unstable/persistence/Redis.js.map +1 -1
- package/dist/unstable/persistence/index.js.map +1 -1
- package/dist/unstable/process/ChildProcess.d.ts +64 -21
- package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
- package/dist/unstable/process/ChildProcess.js +14 -5
- package/dist/unstable/process/ChildProcess.js.map +1 -1
- package/dist/unstable/process/ChildProcessSpawner.d.ts +21 -10
- package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
- package/dist/unstable/process/ChildProcessSpawner.js +1 -1
- package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
- package/dist/unstable/process/index.js.map +1 -1
- package/dist/unstable/reactivity/AsyncResult.d.ts +8 -8
- package/dist/unstable/reactivity/AsyncResult.d.ts.map +1 -1
- package/dist/unstable/reactivity/AsyncResult.js +10 -10
- package/dist/unstable/reactivity/AsyncResult.js.map +1 -1
- package/dist/unstable/reactivity/Atom.d.ts +25 -22
- package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
- package/dist/unstable/reactivity/Atom.js +14 -13
- package/dist/unstable/reactivity/Atom.js.map +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.d.ts +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.js +4 -1
- package/dist/unstable/reactivity/AtomHttpApi.js.map +1 -1
- package/dist/unstable/reactivity/AtomRef.js.map +1 -1
- package/dist/unstable/reactivity/AtomRegistry.js +24 -3
- package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
- package/dist/unstable/reactivity/AtomRpc.d.ts +1 -1
- package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomRpc.js +4 -1
- package/dist/unstable/reactivity/AtomRpc.js.map +1 -1
- package/dist/unstable/reactivity/Hydration.d.ts +1 -1
- package/dist/unstable/reactivity/Hydration.js +1 -1
- package/dist/unstable/reactivity/Hydration.js.map +1 -1
- package/dist/unstable/reactivity/Reactivity.js.map +1 -1
- package/dist/unstable/reactivity/index.js.map +1 -1
- package/dist/unstable/rpc/Rpc.d.ts +35 -33
- package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
- package/dist/unstable/rpc/Rpc.js +4 -2
- package/dist/unstable/rpc/Rpc.js.map +1 -1
- package/dist/unstable/rpc/RpcClient.d.ts +12 -12
- package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcClient.js +12 -11
- package/dist/unstable/rpc/RpcClient.js.map +1 -1
- package/dist/unstable/rpc/RpcClientError.js.map +1 -1
- package/dist/unstable/rpc/RpcGroup.d.ts +8 -8
- package/dist/unstable/rpc/RpcGroup.js +1 -1
- package/dist/unstable/rpc/RpcGroup.js.map +1 -1
- package/dist/unstable/rpc/RpcMessage.d.ts +31 -30
- package/dist/unstable/rpc/RpcMessage.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcMessage.js +6 -6
- package/dist/unstable/rpc/RpcMessage.js.map +1 -1
- package/dist/unstable/rpc/RpcMiddleware.d.ts +10 -10
- package/dist/unstable/rpc/RpcMiddleware.js +1 -1
- package/dist/unstable/rpc/RpcMiddleware.js.map +1 -1
- package/dist/unstable/rpc/RpcSchema.d.ts +4 -4
- package/dist/unstable/rpc/RpcSchema.js +3 -3
- package/dist/unstable/rpc/RpcSchema.js.map +1 -1
- package/dist/unstable/rpc/RpcSerialization.d.ts +58 -7
- package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcSerialization.js +175 -96
- package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
- package/dist/unstable/rpc/RpcServer.d.ts +13 -13
- package/dist/unstable/rpc/RpcServer.js +17 -13
- package/dist/unstable/rpc/RpcServer.js.map +1 -1
- package/dist/unstable/rpc/RpcTest.js.map +1 -1
- package/dist/unstable/rpc/RpcWorker.d.ts +5 -5
- package/dist/unstable/rpc/RpcWorker.js +4 -4
- package/dist/unstable/rpc/RpcWorker.js.map +1 -1
- package/dist/unstable/rpc/Utils.js.map +1 -1
- package/dist/unstable/rpc/index.js.map +1 -1
- package/dist/unstable/schema/Model.d.ts +52 -50
- package/dist/unstable/schema/Model.d.ts.map +1 -1
- package/dist/unstable/schema/Model.js +35 -33
- package/dist/unstable/schema/Model.js.map +1 -1
- package/dist/unstable/schema/VariantSchema.d.ts +5 -5
- package/dist/unstable/schema/VariantSchema.js +2 -2
- package/dist/unstable/schema/VariantSchema.js.map +1 -1
- package/dist/unstable/schema/index.js.map +1 -1
- package/dist/unstable/socket/Socket.d.ts +11 -3
- package/dist/unstable/socket/Socket.d.ts.map +1 -1
- package/dist/unstable/socket/Socket.js +9 -4
- package/dist/unstable/socket/Socket.js.map +1 -1
- package/dist/unstable/socket/SocketServer.js.map +1 -1
- package/dist/unstable/socket/index.js.map +1 -1
- package/dist/unstable/sql/Migrator.js.map +1 -1
- package/dist/unstable/sql/SqlClient.d.ts +1 -1
- package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
- package/dist/unstable/sql/SqlClient.js +2 -2
- package/dist/unstable/sql/SqlClient.js.map +1 -1
- package/dist/unstable/sql/SqlConnection.js.map +1 -1
- package/dist/unstable/sql/SqlError.js.map +1 -1
- package/dist/unstable/sql/SqlModel.d.ts +2 -2
- package/dist/unstable/sql/SqlModel.js +2 -2
- package/dist/unstable/sql/SqlModel.js.map +1 -1
- package/dist/unstable/sql/SqlResolver.d.ts +5 -5
- package/dist/unstable/sql/SqlResolver.js +2 -2
- package/dist/unstable/sql/SqlResolver.js.map +1 -1
- package/dist/unstable/sql/SqlSchema.js.map +1 -1
- package/dist/unstable/sql/SqlStream.js.map +1 -1
- package/dist/unstable/sql/Statement.d.ts +6 -6
- package/dist/unstable/sql/Statement.js +15 -15
- package/dist/unstable/sql/Statement.js.map +1 -1
- package/dist/unstable/sql/index.js.map +1 -1
- package/dist/unstable/workers/Transferable.d.ts +1 -1
- package/dist/unstable/workers/Transferable.js +1 -1
- package/dist/unstable/workers/Transferable.js.map +1 -1
- package/dist/unstable/workers/Worker.d.ts +2 -2
- package/dist/unstable/workers/Worker.js +2 -2
- package/dist/unstable/workers/Worker.js.map +1 -1
- package/dist/unstable/workers/WorkerError.d.ts +7 -7
- package/dist/unstable/workers/WorkerError.js +6 -6
- package/dist/unstable/workers/WorkerError.js.map +1 -1
- package/dist/unstable/workers/WorkerRunner.d.ts +1 -1
- package/dist/unstable/workers/WorkerRunner.js +1 -1
- package/dist/unstable/workers/WorkerRunner.js.map +1 -1
- package/dist/unstable/workers/index.js.map +1 -1
- package/dist/unstable/workflow/Activity.d.ts +2 -2
- package/dist/unstable/workflow/Activity.js +2 -2
- package/dist/unstable/workflow/Activity.js.map +1 -1
- package/dist/unstable/workflow/DurableClock.d.ts +1 -1
- package/dist/unstable/workflow/DurableClock.js +1 -1
- package/dist/unstable/workflow/DurableClock.js.map +1 -1
- package/dist/unstable/workflow/DurableDeferred.d.ts +10 -10
- package/dist/unstable/workflow/DurableDeferred.js +5 -5
- package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
- package/dist/unstable/workflow/DurableQueue.d.ts +22 -20
- package/dist/unstable/workflow/DurableQueue.d.ts.map +1 -1
- package/dist/unstable/workflow/DurableQueue.js +22 -20
- package/dist/unstable/workflow/DurableQueue.js.map +1 -1
- package/dist/unstable/workflow/Workflow.d.ts +21 -21
- package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
- package/dist/unstable/workflow/Workflow.js +13 -14
- package/dist/unstable/workflow/Workflow.js.map +1 -1
- package/dist/unstable/workflow/WorkflowEngine.d.ts +1 -1
- package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
- package/dist/unstable/workflow/WorkflowProxy.d.ts +4 -2
- package/dist/unstable/workflow/WorkflowProxy.d.ts.map +1 -1
- package/dist/unstable/workflow/WorkflowProxy.js +4 -2
- package/dist/unstable/workflow/WorkflowProxy.js.map +1 -1
- package/dist/unstable/workflow/WorkflowProxyServer.js.map +1 -1
- package/dist/unstable/workflow/index.js.map +1 -1
- package/dist/unstable/workflow/internal/crypto.js.map +1 -1
- package/package.json +5 -6
- package/src/Array.ts +982 -1045
- package/src/BigDecimal.ts +433 -756
- package/src/BigInt.ts +213 -269
- package/src/Boolean.ts +146 -188
- package/src/Cache.ts +409 -255
- package/src/Cause.ts +167 -277
- package/src/Channel.ts +891 -816
- package/src/ChannelSchema.ts +1 -1
- package/src/Chunk.ts +841 -1181
- package/src/Clock.ts +181 -49
- package/src/Combiner.ts +20 -33
- package/src/Config.ts +615 -332
- package/src/ConfigProvider.ts +214 -120
- package/src/Console.ts +289 -39
- package/src/Context.ts +319 -378
- package/src/Cron.ts +68 -77
- package/src/Crypto.ts +13 -15
- package/src/Data.ts +60 -80
- package/src/DateTime.ts +564 -660
- package/src/Deferred.ts +253 -256
- package/src/Duration.ts +216 -308
- package/src/Effect.ts +2893 -3279
- package/src/Encoding.ts +22 -40
- package/src/Equal.ts +49 -39
- package/src/Equivalence.ts +103 -105
- package/src/ErrorReporter.ts +51 -27
- package/src/ExecutionPlan.ts +13 -55
- package/src/Exit.ts +116 -192
- package/src/Fiber.ts +81 -148
- package/src/FiberHandle.ts +152 -105
- package/src/FiberMap.ts +225 -174
- package/src/FiberSet.ts +124 -82
- package/src/FileSystem.ts +155 -263
- package/src/Filter.ts +61 -33
- package/src/Formatter.ts +54 -56
- package/src/Function.ts +76 -145
- package/src/Graph.ts +416 -770
- package/src/HKT.ts +12 -6
- package/src/Hash.ts +52 -83
- package/src/HashMap.ts +319 -411
- package/src/HashRing.ts +1 -0
- package/src/HashSet.ts +177 -284
- package/src/Inspectable.ts +12 -12
- package/src/Iterable.ts +620 -786
- package/src/JsonPatch.ts +58 -112
- package/src/JsonPointer.ts +8 -8
- package/src/JsonSchema.ts +402 -244
- package/src/Latch.ts +23 -35
- package/src/Layer.ts +359 -260
- package/src/LayerMap.ts +49 -29
- package/src/LayerRef.ts +6 -2
- package/src/LogLevel.ts +114 -214
- package/src/Logger.ts +344 -697
- package/src/ManagedRuntime.ts +7 -5
- package/src/Match.ts +217 -252
- package/src/Metric.ts +516 -1089
- package/src/MutableHashMap.ts +218 -255
- package/src/MutableHashSet.ts +84 -89
- package/src/MutableList.ts +73 -370
- package/src/MutableRef.ts +420 -243
- package/src/Newtype.ts +21 -14
- package/src/NonEmptyIterable.ts +7 -137
- package/src/Number.ts +196 -233
- package/src/Optic.ts +243 -383
- package/src/Option.ts +447 -812
- package/src/Order.ts +109 -109
- package/src/Ordering.ts +20 -23
- package/src/Path.ts +38 -41
- package/src/Pipeable.ts +6 -5
- package/src/PlatformError.ts +4 -4
- package/src/Pool.ts +4 -2
- package/src/Predicate.ts +200 -181
- package/src/PrimaryKey.ts +7 -7
- package/src/PubSub.ts +526 -552
- package/src/Pull.ts +24 -18
- package/src/Queue.ts +200 -159
- package/src/Random.ts +49 -74
- package/src/RcMap.ts +121 -63
- package/src/RcRef.ts +24 -13
- package/src/Record.ts +291 -488
- package/src/Redactable.ts +10 -3
- package/src/Redacted.ts +25 -25
- package/src/Reducer.ts +8 -15
- package/src/Ref.ts +221 -361
- package/src/References.ts +102 -168
- package/src/RegExp.ts +10 -14
- package/src/Request.ts +31 -21
- package/src/RequestResolver.ts +202 -91
- package/src/Result.ts +312 -484
- package/src/Runtime.ts +50 -75
- package/src/Schedule.ts +308 -1734
- package/src/Scheduler.ts +20 -7
- package/src/Schema.ts +716 -745
- package/src/SchemaAST.ts +466 -358
- package/src/SchemaError.ts +7 -6
- package/src/SchemaGetter.ts +242 -190
- package/src/SchemaIssue.ts +89 -275
- package/src/SchemaParser.ts +180 -93
- package/src/SchemaRepresentation.ts +22 -40
- package/src/SchemaTransformation.ts +129 -88
- package/src/Scope.ts +123 -151
- package/src/ScopedRef.ts +4 -4
- package/src/Semaphore.ts +152 -51
- package/src/Sink.ts +128 -113
- package/src/Stdio.ts +1 -1
- package/src/Stream.ts +2602 -3123
- package/src/String.ts +275 -312
- package/src/Struct.ts +109 -114
- package/src/SubscriptionRef.ts +284 -252
- package/src/Symbol.ts +3 -3
- package/src/Terminal.ts +2 -2
- package/src/Tracer.ts +102 -55
- package/src/Trie.ts +287 -679
- package/src/Tuple.ts +92 -127
- package/src/TxChunk.ts +201 -121
- package/src/TxDeferred.ts +62 -46
- package/src/TxHashMap.ts +645 -799
- package/src/TxHashSet.ts +443 -356
- package/src/TxPriorityQueue.ts +130 -98
- package/src/TxPubSub.ts +107 -80
- package/src/TxQueue.ts +214 -183
- package/src/TxReentrantLock.ts +97 -66
- package/src/TxRef.ts +51 -32
- package/src/TxSemaphore.ts +129 -95
- package/src/TxSubscriptionRef.ts +97 -70
- package/src/Types.ts +126 -67
- package/src/Unify.ts +45 -65
- package/src/Utils.ts +23 -16
- package/src/internal/core.ts +2 -2
- package/src/internal/dateTime.ts +6 -0
- package/src/internal/effect.ts +93 -48
- package/src/internal/persistence.ts +2 -0
- package/src/internal/references.ts +3 -2
- package/src/internal/schema/fromJsonSchemaDocument.ts +15 -13
- package/src/internal/schema/fromRepresentation.ts +10 -16
- package/src/internal/schema/parser.ts +22 -0
- package/src/internal/schema/toJsonSchemaDocument.ts +60 -6
- package/src/internal/schema/toRepresentation.ts +104 -119
- package/src/internal/trie.ts +10 -11
- package/src/testing/FastCheck.ts +8 -7
- package/src/testing/TestClock.ts +72 -30
- package/src/testing/TestConsole.ts +32 -31
- package/src/testing/TestSchema.ts +29 -29
- package/src/unstable/ai/AiError.ts +95 -118
- package/src/unstable/ai/AnthropicStructuredOutput.ts +1 -1
- package/src/unstable/ai/Chat.ts +132 -97
- package/src/unstable/ai/IdGenerator.ts +32 -28
- package/src/unstable/ai/LanguageModel.ts +107 -67
- package/src/unstable/ai/McpProtocol.ts +48 -0
- package/src/unstable/ai/McpSchema.ts +60 -50
- package/src/unstable/ai/McpServer.ts +930 -304
- package/src/unstable/ai/Model.ts +9 -20
- package/src/unstable/ai/OpenAiStructuredOutput.ts +1 -1
- package/src/unstable/ai/Prompt.ts +145 -43
- package/src/unstable/ai/Response.ts +28 -14
- package/src/unstable/ai/Telemetry.ts +46 -13
- package/src/unstable/ai/Tokenizer.ts +14 -3
- package/src/unstable/ai/Tool.ts +59 -44
- package/src/unstable/ai/Toolkit.ts +26 -8
- package/src/unstable/ai/index.ts +5 -0
- package/src/unstable/ai/internal/mcpProtocol.ts +85 -0
- package/src/unstable/ai/internal/mcpProtocolRegistry.ts +70 -0
- package/src/unstable/ai/internal/structured-output.ts +13 -18
- package/src/unstable/cli/Argument.ts +273 -69
- package/src/unstable/cli/CliError.ts +69 -76
- package/src/unstable/cli/CliOutput.ts +44 -58
- package/src/unstable/cli/Command.ts +705 -107
- package/src/unstable/cli/Flag.ts +418 -138
- package/src/unstable/cli/GlobalFlag.ts +1 -1
- package/src/unstable/cli/HelpDoc.ts +12 -4
- package/src/unstable/cli/Param.ts +292 -78
- package/src/unstable/cli/Primitive.ts +370 -149
- package/src/unstable/cli/Prompt.ts +28 -14
- package/src/unstable/cli/internal/lexer.ts +8 -2
- package/src/unstable/cli/internal/parser.ts +2 -2
- package/src/unstable/cluster/ClusterSchema.ts +8 -8
- package/src/unstable/cluster/ClusterWorkflowEngine.ts +5 -1
- package/src/unstable/cluster/Entity.ts +15 -16
- package/src/unstable/cluster/EntityProxy.ts +4 -2
- package/src/unstable/cluster/EntityResource.ts +2 -2
- package/src/unstable/cluster/Envelope.ts +3 -3
- package/src/unstable/cluster/HttpRunner.ts +6 -4
- package/src/unstable/cluster/Message.ts +9 -9
- package/src/unstable/cluster/MessageStorage.ts +15 -15
- package/src/unstable/cluster/Reply.ts +4 -6
- package/src/unstable/cluster/RunnerHealth.ts +1 -1
- package/src/unstable/cluster/RunnerServer.ts +41 -8
- package/src/unstable/cluster/RunnerStorage.ts +2 -2
- package/src/unstable/cluster/Runners.ts +23 -12
- package/src/unstable/cluster/Sharding.ts +7 -8
- package/src/unstable/cluster/ShardingConfig.ts +3 -3
- package/src/unstable/cluster/SingletonAddress.ts +1 -1
- package/src/unstable/cluster/Snowflake.ts +8 -8
- package/src/unstable/cluster/SqlMessageStorage.ts +1 -1
- package/src/unstable/cluster/SqlRunnerStorage.ts +21 -5
- package/src/unstable/cluster/internal/entityManager.ts +11 -15
- package/src/unstable/encoding/Msgpack.ts +6 -8
- package/src/unstable/encoding/Sse.ts +98 -16
- package/src/unstable/eventlog/Event.ts +20 -20
- package/src/unstable/eventlog/EventGroup.ts +4 -4
- package/src/unstable/eventlog/EventJournal.ts +15 -15
- package/src/unstable/eventlog/EventLog.ts +3 -3
- package/src/unstable/eventlog/EventLogEncryption.ts +1 -1
- package/src/unstable/eventlog/EventLogMessage.ts +2 -2
- package/src/unstable/eventlog/EventLogRemote.ts +1 -1
- package/src/unstable/eventlog/EventLogServer.ts +41 -7
- package/src/unstable/eventlog/EventLogServerEncrypted.ts +13 -5
- package/src/unstable/eventlog/EventLogServerUnencrypted.ts +14 -6
- package/src/unstable/eventlog/EventLogSessionAuth.ts +1 -1
- package/src/unstable/http/Cookies.ts +35 -21
- package/src/unstable/http/Etag.ts +1 -1
- package/src/unstable/http/FetchHttpClient.ts +3 -1
- package/src/unstable/http/Headers.ts +2 -2
- package/src/unstable/http/HttpBody.ts +20 -5
- package/src/unstable/http/HttpClient.ts +83 -55
- package/src/unstable/http/HttpClientRequest.ts +2 -0
- package/src/unstable/http/HttpClientResponse.ts +4 -4
- package/src/unstable/http/HttpEffect.ts +8 -8
- package/src/unstable/http/HttpMethod.ts +6 -9
- package/src/unstable/http/HttpMiddleware.ts +202 -39
- package/src/unstable/http/HttpPlatform.ts +95 -0
- package/src/unstable/http/HttpRouter.ts +102 -98
- package/src/unstable/http/HttpServer.ts +13 -13
- package/src/unstable/http/HttpServerError.ts +2 -2
- package/src/unstable/http/HttpServerRequest.ts +4 -4
- package/src/unstable/http/HttpServerResponse.ts +30 -0
- package/src/unstable/http/HttpStaticServer.ts +35 -7
- package/src/unstable/http/Multipart.ts +6 -6
- package/src/unstable/http/Url.ts +33 -63
- package/src/unstable/http/UrlParams.ts +10 -18
- package/src/unstable/http/internal/compression.ts +196 -0
- package/src/unstable/httpapi/HttpApiBuilder.ts +10 -9
- package/src/unstable/httpapi/HttpApiClient.ts +14 -14
- package/src/unstable/httpapi/HttpApiEndpoint.ts +42 -42
- package/src/unstable/httpapi/HttpApiError.ts +13 -13
- package/src/unstable/httpapi/HttpApiGroup.ts +15 -15
- package/src/unstable/httpapi/HttpApiMiddleware.ts +71 -24
- package/src/unstable/httpapi/HttpApiScalar.ts +0 -12
- package/src/unstable/httpapi/HttpApiSchema.ts +6 -6
- package/src/unstable/httpapi/OpenApi.ts +13 -13
- package/src/unstable/observability/OtlpExporter.ts +31 -19
- package/src/unstable/observability/OtlpMetrics.ts +4 -1
- package/src/unstable/observability/OtlpResource.ts +26 -17
- package/src/unstable/observability/PrometheusMetrics.ts +13 -4
- package/src/unstable/observability/internal/otlpEnv.ts +1 -1
- package/src/unstable/observability/internal/protobuf.ts +3 -0
- package/src/unstable/persistence/KeyValueStore.ts +72 -49
- package/src/unstable/persistence/Persistable.ts +8 -8
- package/src/unstable/persistence/PersistedQueue.ts +6 -6
- package/src/unstable/persistence/Persistence.ts +126 -19
- package/src/unstable/persistence/RateLimiter.ts +26 -15
- package/src/unstable/persistence/Redis.ts +2 -2
- package/src/unstable/process/ChildProcess.ts +64 -21
- package/src/unstable/process/ChildProcessSpawner.ts +21 -10
- package/src/unstable/reactivity/AsyncResult.ts +12 -13
- package/src/unstable/reactivity/Atom.ts +28 -25
- package/src/unstable/reactivity/AtomHttpApi.ts +5 -4
- package/src/unstable/reactivity/AtomRegistry.ts +24 -3
- package/src/unstable/reactivity/AtomRpc.ts +5 -4
- package/src/unstable/reactivity/Hydration.ts +1 -1
- package/src/unstable/rpc/Rpc.ts +35 -33
- package/src/unstable/rpc/RpcClient.ts +16 -15
- package/src/unstable/rpc/RpcGroup.ts +8 -8
- package/src/unstable/rpc/RpcMessage.ts +31 -30
- package/src/unstable/rpc/RpcMiddleware.ts +10 -10
- package/src/unstable/rpc/RpcSchema.ts +4 -4
- package/src/unstable/rpc/RpcSerialization.ts +167 -68
- package/src/unstable/rpc/RpcServer.ts +18 -15
- package/src/unstable/rpc/RpcWorker.ts +5 -5
- package/src/unstable/schema/Model.ts +52 -50
- package/src/unstable/schema/VariantSchema.ts +5 -5
- package/src/unstable/socket/Socket.ts +17 -4
- package/src/unstable/sql/SqlClient.ts +5 -6
- package/src/unstable/sql/SqlModel.ts +2 -2
- package/src/unstable/sql/SqlResolver.ts +5 -5
- package/src/unstable/sql/Statement.ts +24 -23
- package/src/unstable/workers/Transferable.ts +1 -1
- package/src/unstable/workers/Worker.ts +2 -2
- package/src/unstable/workers/WorkerError.ts +7 -7
- package/src/unstable/workers/WorkerRunner.ts +1 -1
- package/src/unstable/workflow/Activity.ts +2 -2
- package/src/unstable/workflow/DurableClock.ts +1 -1
- package/src/unstable/workflow/DurableDeferred.ts +10 -10
- package/src/unstable/workflow/DurableQueue.ts +22 -20
- package/src/unstable/workflow/Workflow.ts +23 -23
- package/src/unstable/workflow/WorkflowEngine.ts +1 -1
- package/src/unstable/workflow/WorkflowProxy.ts +4 -2
- package/dist/internal/version.d.ts +0 -3
- package/dist/internal/version.d.ts.map +0 -1
- package/dist/internal/version.js +0 -2
- package/dist/internal/version.js.map +0 -1
- package/src/internal/version.ts +0 -2
package/src/Ref.ts
CHANGED
|
@@ -35,24 +35,18 @@ const TypeId = "~effect/Ref"
|
|
|
35
35
|
*
|
|
36
36
|
* **Example** (Reading and updating a ref)
|
|
37
37
|
*
|
|
38
|
-
* ```ts
|
|
38
|
+
* ```ts import.meta.vitest
|
|
39
39
|
* import { Effect, Ref } from "effect"
|
|
40
40
|
*
|
|
41
41
|
* const program = Effect.gen(function*() {
|
|
42
|
-
* // Create a ref with initial value
|
|
43
42
|
* const counter = yield* Ref.make(0)
|
|
44
|
-
*
|
|
45
|
-
* // Read the current value
|
|
46
43
|
* const value = yield* Ref.get(counter)
|
|
47
|
-
* console.log(value) // 0
|
|
48
|
-
*
|
|
49
|
-
* // Update the value atomically
|
|
50
44
|
* yield* Ref.update(counter, (n) => n + 1)
|
|
51
|
-
*
|
|
52
|
-
* // Read the updated value
|
|
53
45
|
* const newValue = yield* Ref.get(counter)
|
|
54
|
-
*
|
|
46
|
+
* return [value, newValue]
|
|
55
47
|
* })
|
|
48
|
+
*
|
|
49
|
+
* await Effect.runPromise(program) // => [0, 1]
|
|
56
50
|
* ```
|
|
57
51
|
*
|
|
58
52
|
* @see {@link make} for creating a `Ref`
|
|
@@ -85,18 +79,17 @@ export declare namespace Ref {
|
|
|
85
79
|
*
|
|
86
80
|
* **Example** (Using invariant refs)
|
|
87
81
|
*
|
|
88
|
-
* ```ts
|
|
82
|
+
* ```ts import.meta.vitest
|
|
89
83
|
* import { Effect, Ref } from "effect"
|
|
90
84
|
*
|
|
91
|
-
* // This interface defines the invariant nature of Ref's type parameter
|
|
92
|
-
* // A Ref<A> is both a producer and consumer of A
|
|
93
85
|
* const program = Effect.gen(function*() {
|
|
94
86
|
* const ref = yield* Ref.make(42)
|
|
95
|
-
*
|
|
96
|
-
*
|
|
97
|
-
*
|
|
98
|
-
* yield* Ref.set(ref, value + 1) // consumes number
|
|
87
|
+
* const value = yield* Ref.get(ref)
|
|
88
|
+
* yield* Ref.set(ref, value + 1)
|
|
89
|
+
* return yield* Ref.get(ref)
|
|
99
90
|
* })
|
|
91
|
+
*
|
|
92
|
+
* await Effect.runPromise(program) // => 43
|
|
100
93
|
* ```
|
|
101
94
|
*
|
|
102
95
|
* @category models
|
|
@@ -136,18 +129,11 @@ const RefProto = {
|
|
|
136
129
|
*
|
|
137
130
|
* **Example** (Creating a ref unsafely)
|
|
138
131
|
*
|
|
139
|
-
* ```ts
|
|
132
|
+
* ```ts import.meta.vitest
|
|
140
133
|
* import { Ref } from "effect"
|
|
141
134
|
*
|
|
142
|
-
* // Create a ref directly without Effect
|
|
143
135
|
* const counter = Ref.makeUnsafe(0)
|
|
144
|
-
*
|
|
145
|
-
* // Get the current value
|
|
146
|
-
* const value = Ref.getUnsafe(counter)
|
|
147
|
-
* console.log(value) // 0
|
|
148
|
-
*
|
|
149
|
-
* // Note: This is unsafe and should be used carefully
|
|
150
|
-
* // Prefer Ref.make for Effect-wrapped creation
|
|
136
|
+
* Ref.getUnsafe(counter) // => 0
|
|
151
137
|
* ```
|
|
152
138
|
*
|
|
153
139
|
* @category constructors
|
|
@@ -168,14 +154,15 @@ export const makeUnsafe = <A>(value: A): Ref<A> => {
|
|
|
168
154
|
*
|
|
169
155
|
* **Example** (Creating a ref)
|
|
170
156
|
*
|
|
171
|
-
* ```ts
|
|
157
|
+
* ```ts import.meta.vitest
|
|
172
158
|
* import { Effect, Ref } from "effect"
|
|
173
159
|
*
|
|
174
160
|
* const program = Effect.gen(function*() {
|
|
175
161
|
* const ref = yield* Ref.make(42)
|
|
176
|
-
*
|
|
177
|
-
* console.log(value) // 42
|
|
162
|
+
* return yield* Ref.get(ref)
|
|
178
163
|
* })
|
|
164
|
+
*
|
|
165
|
+
* await Effect.runPromise(program) // => 42
|
|
179
166
|
* ```
|
|
180
167
|
*
|
|
181
168
|
* @see {@link makeUnsafe} for synchronous construction outside Effect code
|
|
@@ -194,14 +181,15 @@ export const make = <A>(value: A): Effect.Effect<Ref<A>> => Effect.sync(() => ma
|
|
|
194
181
|
*
|
|
195
182
|
* **Example** (Getting the current value)
|
|
196
183
|
*
|
|
197
|
-
* ```ts
|
|
184
|
+
* ```ts import.meta.vitest
|
|
198
185
|
* import { Effect, Ref } from "effect"
|
|
199
186
|
*
|
|
200
187
|
* const program = Effect.gen(function*() {
|
|
201
188
|
* const ref = yield* Ref.make(42)
|
|
202
|
-
*
|
|
203
|
-
* console.log(value) // 42
|
|
189
|
+
* return yield* Ref.get(ref)
|
|
204
190
|
* })
|
|
191
|
+
*
|
|
192
|
+
* await Effect.runPromise(program) // => 42
|
|
205
193
|
* ```
|
|
206
194
|
*
|
|
207
195
|
* @see {@link set} for replacing the current value
|
|
@@ -220,29 +208,29 @@ export const get = <A>(self: Ref<A>) => Effect.sync(() => self.ref.current)
|
|
|
220
208
|
*
|
|
221
209
|
* **Example** (Setting a value)
|
|
222
210
|
*
|
|
223
|
-
* ```ts
|
|
211
|
+
* ```ts import.meta.vitest
|
|
224
212
|
* import { Effect, Ref } from "effect"
|
|
225
213
|
*
|
|
226
214
|
* const program = Effect.gen(function*() {
|
|
227
215
|
* const ref = yield* Ref.make(0)
|
|
228
216
|
* yield* Ref.set(ref, 42)
|
|
229
|
-
*
|
|
230
|
-
* console.log(value) // 42
|
|
217
|
+
* return yield* Ref.get(ref)
|
|
231
218
|
* })
|
|
232
219
|
*
|
|
233
|
-
* // Using multiple operations
|
|
234
220
|
* const program2 = Effect.gen(function*() {
|
|
235
221
|
* const ref = yield* Ref.make(0)
|
|
236
222
|
* yield* Ref.set(ref, 100)
|
|
237
|
-
*
|
|
238
|
-
* console.log(value) // 100
|
|
223
|
+
* return yield* Ref.get(ref)
|
|
239
224
|
* })
|
|
225
|
+
*
|
|
226
|
+
* await Effect.runPromise(program) // => 42
|
|
227
|
+
* await Effect.runPromise(program2) // => 100
|
|
240
228
|
* ```
|
|
241
229
|
*
|
|
242
230
|
* @see {@link getAndSet} for setting while returning the previous value
|
|
243
231
|
* @see {@link setAndGet} for setting while returning the new value
|
|
244
232
|
*
|
|
245
|
-
* @category
|
|
233
|
+
* @category mutations
|
|
246
234
|
* @since 2.0.0
|
|
247
235
|
*/
|
|
248
236
|
export const set = dual<
|
|
@@ -255,29 +243,29 @@ export const set = dual<
|
|
|
255
243
|
*
|
|
256
244
|
* **Example** (Setting a value)
|
|
257
245
|
*
|
|
258
|
-
* ```ts
|
|
246
|
+
* ```ts import.meta.vitest
|
|
259
247
|
* import { Effect, Ref } from "effect"
|
|
260
248
|
*
|
|
261
249
|
* const program = Effect.gen(function*() {
|
|
262
250
|
* const ref = yield* Ref.make(0)
|
|
263
251
|
* yield* Ref.set(ref, 42)
|
|
264
|
-
*
|
|
265
|
-
* console.log(value) // 42
|
|
252
|
+
* return yield* Ref.get(ref)
|
|
266
253
|
* })
|
|
267
254
|
*
|
|
268
|
-
* // Using multiple operations
|
|
269
255
|
* const program2 = Effect.gen(function*() {
|
|
270
256
|
* const ref = yield* Ref.make(0)
|
|
271
257
|
* yield* Ref.set(ref, 100)
|
|
272
|
-
*
|
|
273
|
-
* console.log(value) // 100
|
|
258
|
+
* return yield* Ref.get(ref)
|
|
274
259
|
* })
|
|
260
|
+
*
|
|
261
|
+
* await Effect.runPromise(program) // => 42
|
|
262
|
+
* await Effect.runPromise(program2) // => 100
|
|
275
263
|
* ```
|
|
276
264
|
*
|
|
277
265
|
* @see {@link getAndSet} for setting while returning the previous value
|
|
278
266
|
* @see {@link setAndGet} for setting while returning the new value
|
|
279
267
|
*
|
|
280
|
-
* @category
|
|
268
|
+
* @category mutations
|
|
281
269
|
* @since 2.0.0
|
|
282
270
|
*/
|
|
283
271
|
<A>(value: A) => (self: Ref<A>) => Effect.Effect<void>,
|
|
@@ -290,29 +278,29 @@ export const set = dual<
|
|
|
290
278
|
*
|
|
291
279
|
* **Example** (Setting a value)
|
|
292
280
|
*
|
|
293
|
-
* ```ts
|
|
281
|
+
* ```ts import.meta.vitest
|
|
294
282
|
* import { Effect, Ref } from "effect"
|
|
295
283
|
*
|
|
296
284
|
* const program = Effect.gen(function*() {
|
|
297
285
|
* const ref = yield* Ref.make(0)
|
|
298
286
|
* yield* Ref.set(ref, 42)
|
|
299
|
-
*
|
|
300
|
-
* console.log(value) // 42
|
|
287
|
+
* return yield* Ref.get(ref)
|
|
301
288
|
* })
|
|
302
289
|
*
|
|
303
|
-
* // Using multiple operations
|
|
304
290
|
* const program2 = Effect.gen(function*() {
|
|
305
291
|
* const ref = yield* Ref.make(0)
|
|
306
292
|
* yield* Ref.set(ref, 100)
|
|
307
|
-
*
|
|
308
|
-
* console.log(value) // 100
|
|
293
|
+
* return yield* Ref.get(ref)
|
|
309
294
|
* })
|
|
295
|
+
*
|
|
296
|
+
* await Effect.runPromise(program) // => 42
|
|
297
|
+
* await Effect.runPromise(program2) // => 100
|
|
310
298
|
* ```
|
|
311
299
|
*
|
|
312
300
|
* @see {@link getAndSet} for setting while returning the previous value
|
|
313
301
|
* @see {@link setAndGet} for setting while returning the new value
|
|
314
302
|
*
|
|
315
|
-
* @category
|
|
303
|
+
* @category mutations
|
|
316
304
|
* @since 2.0.0
|
|
317
305
|
*/
|
|
318
306
|
<A>(self: Ref<A>, value: A) => Effect.Effect<void>
|
|
@@ -327,19 +315,18 @@ export const set = dual<
|
|
|
327
315
|
*
|
|
328
316
|
* **Example** (Replacing a value atomically)
|
|
329
317
|
*
|
|
330
|
-
* ```ts
|
|
318
|
+
* ```ts import.meta.vitest
|
|
331
319
|
* import { Effect, Ref } from "effect"
|
|
332
320
|
*
|
|
333
321
|
* const program = Effect.gen(function*() {
|
|
334
322
|
* const ref = yield* Ref.make("initial")
|
|
335
323
|
*
|
|
336
|
-
* // Get current value and set new value atomically
|
|
337
324
|
* const previous = yield* Ref.getAndSet(ref, "updated")
|
|
338
|
-
* console.log(previous) // "initial"
|
|
339
|
-
*
|
|
340
325
|
* const current = yield* Ref.get(ref)
|
|
341
|
-
*
|
|
326
|
+
* return [previous, current]
|
|
342
327
|
* })
|
|
328
|
+
*
|
|
329
|
+
* await Effect.runPromise(program) // => ["initial", "updated"]
|
|
343
330
|
* ```
|
|
344
331
|
*
|
|
345
332
|
* @see {@link set} for setting without returning the previous value
|
|
@@ -358,19 +345,18 @@ export const getAndSet = dual<
|
|
|
358
345
|
*
|
|
359
346
|
* **Example** (Replacing a value atomically)
|
|
360
347
|
*
|
|
361
|
-
* ```ts
|
|
348
|
+
* ```ts import.meta.vitest
|
|
362
349
|
* import { Effect, Ref } from "effect"
|
|
363
350
|
*
|
|
364
351
|
* const program = Effect.gen(function*() {
|
|
365
352
|
* const ref = yield* Ref.make("initial")
|
|
366
353
|
*
|
|
367
|
-
* // Get current value and set new value atomically
|
|
368
354
|
* const previous = yield* Ref.getAndSet(ref, "updated")
|
|
369
|
-
* console.log(previous) // "initial"
|
|
370
|
-
*
|
|
371
355
|
* const current = yield* Ref.get(ref)
|
|
372
|
-
*
|
|
356
|
+
* return [previous, current]
|
|
373
357
|
* })
|
|
358
|
+
*
|
|
359
|
+
* await Effect.runPromise(program) // => ["initial", "updated"]
|
|
374
360
|
* ```
|
|
375
361
|
*
|
|
376
362
|
* @see {@link set} for setting without returning the previous value
|
|
@@ -389,19 +375,18 @@ export const getAndSet = dual<
|
|
|
389
375
|
*
|
|
390
376
|
* **Example** (Replacing a value atomically)
|
|
391
377
|
*
|
|
392
|
-
* ```ts
|
|
378
|
+
* ```ts import.meta.vitest
|
|
393
379
|
* import { Effect, Ref } from "effect"
|
|
394
380
|
*
|
|
395
381
|
* const program = Effect.gen(function*() {
|
|
396
382
|
* const ref = yield* Ref.make("initial")
|
|
397
383
|
*
|
|
398
|
-
* // Get current value and set new value atomically
|
|
399
384
|
* const previous = yield* Ref.getAndSet(ref, "updated")
|
|
400
|
-
* console.log(previous) // "initial"
|
|
401
|
-
*
|
|
402
385
|
* const current = yield* Ref.get(ref)
|
|
403
|
-
*
|
|
386
|
+
* return [previous, current]
|
|
404
387
|
* })
|
|
388
|
+
*
|
|
389
|
+
* await Effect.runPromise(program) // => ["initial", "updated"]
|
|
405
390
|
* ```
|
|
406
391
|
*
|
|
407
392
|
* @see {@link set} for setting without returning the previous value
|
|
@@ -427,19 +412,18 @@ export const getAndSet = dual<
|
|
|
427
412
|
*
|
|
428
413
|
* **Example** (Updating and returning the previous value)
|
|
429
414
|
*
|
|
430
|
-
* ```ts
|
|
415
|
+
* ```ts import.meta.vitest
|
|
431
416
|
* import { Effect, Ref } from "effect"
|
|
432
417
|
*
|
|
433
418
|
* const program = Effect.gen(function*() {
|
|
434
419
|
* const counter = yield* Ref.make(10)
|
|
435
420
|
*
|
|
436
|
-
* // Get current value and update it atomically
|
|
437
421
|
* const previous = yield* Ref.getAndUpdate(counter, (n) => n * 2)
|
|
438
|
-
* console.log(previous) // 10
|
|
439
|
-
*
|
|
440
422
|
* const current = yield* Ref.get(counter)
|
|
441
|
-
*
|
|
423
|
+
* return [previous, current]
|
|
442
424
|
* })
|
|
425
|
+
*
|
|
426
|
+
* await Effect.runPromise(program) // => [10, 20]
|
|
443
427
|
* ```
|
|
444
428
|
*
|
|
445
429
|
* @see {@link update} for updating without returning the previous value
|
|
@@ -458,19 +442,18 @@ export const getAndUpdate = dual<
|
|
|
458
442
|
*
|
|
459
443
|
* **Example** (Updating and returning the previous value)
|
|
460
444
|
*
|
|
461
|
-
* ```ts
|
|
445
|
+
* ```ts import.meta.vitest
|
|
462
446
|
* import { Effect, Ref } from "effect"
|
|
463
447
|
*
|
|
464
448
|
* const program = Effect.gen(function*() {
|
|
465
449
|
* const counter = yield* Ref.make(10)
|
|
466
450
|
*
|
|
467
|
-
* // Get current value and update it atomically
|
|
468
451
|
* const previous = yield* Ref.getAndUpdate(counter, (n) => n * 2)
|
|
469
|
-
* console.log(previous) // 10
|
|
470
|
-
*
|
|
471
452
|
* const current = yield* Ref.get(counter)
|
|
472
|
-
*
|
|
453
|
+
* return [previous, current]
|
|
473
454
|
* })
|
|
455
|
+
*
|
|
456
|
+
* await Effect.runPromise(program) // => [10, 20]
|
|
474
457
|
* ```
|
|
475
458
|
*
|
|
476
459
|
* @see {@link update} for updating without returning the previous value
|
|
@@ -489,19 +472,18 @@ export const getAndUpdate = dual<
|
|
|
489
472
|
*
|
|
490
473
|
* **Example** (Updating and returning the previous value)
|
|
491
474
|
*
|
|
492
|
-
* ```ts
|
|
475
|
+
* ```ts import.meta.vitest
|
|
493
476
|
* import { Effect, Ref } from "effect"
|
|
494
477
|
*
|
|
495
478
|
* const program = Effect.gen(function*() {
|
|
496
479
|
* const counter = yield* Ref.make(10)
|
|
497
480
|
*
|
|
498
|
-
* // Get current value and update it atomically
|
|
499
481
|
* const previous = yield* Ref.getAndUpdate(counter, (n) => n * 2)
|
|
500
|
-
* console.log(previous) // 10
|
|
501
|
-
*
|
|
502
482
|
* const current = yield* Ref.get(counter)
|
|
503
|
-
*
|
|
483
|
+
* return [previous, current]
|
|
504
484
|
* })
|
|
485
|
+
*
|
|
486
|
+
* await Effect.runPromise(program) // => [10, 20]
|
|
505
487
|
* ```
|
|
506
488
|
*
|
|
507
489
|
* @see {@link update} for updating without returning the previous value
|
|
@@ -533,32 +515,26 @@ export const getAndUpdate = dual<
|
|
|
533
515
|
*
|
|
534
516
|
* **Example** (Conditionally updating and returning the previous value)
|
|
535
517
|
*
|
|
536
|
-
* ```ts
|
|
518
|
+
* ```ts import.meta.vitest
|
|
537
519
|
* import { Effect, Option, Ref } from "effect"
|
|
538
520
|
*
|
|
539
521
|
* const program = Effect.gen(function*() {
|
|
540
522
|
* const counter = yield* Ref.make(5)
|
|
541
523
|
*
|
|
542
|
-
* // Only update if value is greater than 3
|
|
543
524
|
* const previous1 = yield* Ref.getAndUpdateSome(
|
|
544
525
|
* counter,
|
|
545
526
|
* (n) => n > 3 ? Option.some(n * 2) : Option.none()
|
|
546
527
|
* )
|
|
547
|
-
* console.log(previous1) // 5
|
|
548
|
-
*
|
|
549
528
|
* const current1 = yield* Ref.get(counter)
|
|
550
|
-
* console.log(current1) // 10
|
|
551
|
-
*
|
|
552
|
-
* // Try to update again (won't update since 10 > 3 is true but let's say condition is n < 3)
|
|
553
529
|
* const previous2 = yield* Ref.getAndUpdateSome(
|
|
554
530
|
* counter,
|
|
555
531
|
* (n) => n < 3 ? Option.some(n * 2) : Option.none()
|
|
556
532
|
* )
|
|
557
|
-
* console.log(previous2) // 10
|
|
558
|
-
*
|
|
559
533
|
* const current2 = yield* Ref.get(counter)
|
|
560
|
-
*
|
|
534
|
+
* return [previous1, current1, previous2, current2]
|
|
561
535
|
* })
|
|
536
|
+
*
|
|
537
|
+
* await Effect.runPromise(program) // => [5, 10, 10, 10]
|
|
562
538
|
* ```
|
|
563
539
|
*
|
|
564
540
|
* @see {@link getAndUpdate} for always applying an update
|
|
@@ -583,32 +559,26 @@ export const getAndUpdateSome = dual<
|
|
|
583
559
|
*
|
|
584
560
|
* **Example** (Conditionally updating and returning the previous value)
|
|
585
561
|
*
|
|
586
|
-
* ```ts
|
|
562
|
+
* ```ts import.meta.vitest
|
|
587
563
|
* import { Effect, Option, Ref } from "effect"
|
|
588
564
|
*
|
|
589
565
|
* const program = Effect.gen(function*() {
|
|
590
566
|
* const counter = yield* Ref.make(5)
|
|
591
567
|
*
|
|
592
|
-
* // Only update if value is greater than 3
|
|
593
568
|
* const previous1 = yield* Ref.getAndUpdateSome(
|
|
594
569
|
* counter,
|
|
595
570
|
* (n) => n > 3 ? Option.some(n * 2) : Option.none()
|
|
596
571
|
* )
|
|
597
|
-
* console.log(previous1) // 5
|
|
598
|
-
*
|
|
599
572
|
* const current1 = yield* Ref.get(counter)
|
|
600
|
-
* console.log(current1) // 10
|
|
601
|
-
*
|
|
602
|
-
* // Try to update again (won't update since 10 > 3 is true but let's say condition is n < 3)
|
|
603
573
|
* const previous2 = yield* Ref.getAndUpdateSome(
|
|
604
574
|
* counter,
|
|
605
575
|
* (n) => n < 3 ? Option.some(n * 2) : Option.none()
|
|
606
576
|
* )
|
|
607
|
-
* console.log(previous2) // 10
|
|
608
|
-
*
|
|
609
577
|
* const current2 = yield* Ref.get(counter)
|
|
610
|
-
*
|
|
578
|
+
* return [previous1, current1, previous2, current2]
|
|
611
579
|
* })
|
|
580
|
+
*
|
|
581
|
+
* await Effect.runPromise(program) // => [5, 10, 10, 10]
|
|
612
582
|
* ```
|
|
613
583
|
*
|
|
614
584
|
* @see {@link getAndUpdate} for always applying an update
|
|
@@ -633,32 +603,26 @@ export const getAndUpdateSome = dual<
|
|
|
633
603
|
*
|
|
634
604
|
* **Example** (Conditionally updating and returning the previous value)
|
|
635
605
|
*
|
|
636
|
-
* ```ts
|
|
606
|
+
* ```ts import.meta.vitest
|
|
637
607
|
* import { Effect, Option, Ref } from "effect"
|
|
638
608
|
*
|
|
639
609
|
* const program = Effect.gen(function*() {
|
|
640
610
|
* const counter = yield* Ref.make(5)
|
|
641
611
|
*
|
|
642
|
-
* // Only update if value is greater than 3
|
|
643
612
|
* const previous1 = yield* Ref.getAndUpdateSome(
|
|
644
613
|
* counter,
|
|
645
614
|
* (n) => n > 3 ? Option.some(n * 2) : Option.none()
|
|
646
615
|
* )
|
|
647
|
-
* console.log(previous1) // 5
|
|
648
|
-
*
|
|
649
616
|
* const current1 = yield* Ref.get(counter)
|
|
650
|
-
* console.log(current1) // 10
|
|
651
|
-
*
|
|
652
|
-
* // Try to update again (won't update since 10 > 3 is true but let's say condition is n < 3)
|
|
653
617
|
* const previous2 = yield* Ref.getAndUpdateSome(
|
|
654
618
|
* counter,
|
|
655
619
|
* (n) => n < 3 ? Option.some(n * 2) : Option.none()
|
|
656
620
|
* )
|
|
657
|
-
* console.log(previous2) // 10
|
|
658
|
-
*
|
|
659
621
|
* const current2 = yield* Ref.get(counter)
|
|
660
|
-
*
|
|
622
|
+
* return [previous1, current1, previous2, current2]
|
|
661
623
|
* })
|
|
624
|
+
*
|
|
625
|
+
* await Effect.runPromise(program) // => [5, 10, 10, 10]
|
|
662
626
|
* ```
|
|
663
627
|
*
|
|
664
628
|
* @see {@link getAndUpdate} for always applying an update
|
|
@@ -688,28 +652,24 @@ export const getAndUpdateSome = dual<
|
|
|
688
652
|
*
|
|
689
653
|
* **Example** (Setting and returning the new value)
|
|
690
654
|
*
|
|
691
|
-
* ```ts
|
|
655
|
+
* ```ts import.meta.vitest
|
|
692
656
|
* import { Effect, Ref } from "effect"
|
|
693
657
|
*
|
|
694
658
|
* const program = Effect.gen(function*() {
|
|
695
659
|
* const ref = yield* Ref.make(10)
|
|
696
660
|
*
|
|
697
|
-
* // Set new value and get it back in one operation
|
|
698
661
|
* const newValue = yield* Ref.setAndGet(ref, 42)
|
|
699
|
-
* console.log(newValue) // 42
|
|
700
|
-
*
|
|
701
|
-
* // Verify the ref contains the new value
|
|
702
662
|
* const current = yield* Ref.get(ref)
|
|
703
|
-
*
|
|
663
|
+
* return [newValue, current]
|
|
704
664
|
* })
|
|
705
665
|
*
|
|
706
|
-
* // Useful for sequential operations
|
|
707
666
|
* const program2 = Effect.gen(function*() {
|
|
708
667
|
* const counter = yield* Ref.make(0)
|
|
709
|
-
*
|
|
710
|
-
* const newValue = yield* Ref.setAndGet(counter, 20)
|
|
711
|
-
* console.log(newValue) // 20
|
|
668
|
+
* return yield* Ref.setAndGet(counter, 20)
|
|
712
669
|
* })
|
|
670
|
+
*
|
|
671
|
+
* await Effect.runPromise(program) // => [42, 42]
|
|
672
|
+
* await Effect.runPromise(program2) // => 20
|
|
713
673
|
* ```
|
|
714
674
|
*
|
|
715
675
|
* @category mutations
|
|
@@ -726,28 +686,24 @@ export const setAndGet = dual<
|
|
|
726
686
|
*
|
|
727
687
|
* **Example** (Setting and returning the new value)
|
|
728
688
|
*
|
|
729
|
-
* ```ts
|
|
689
|
+
* ```ts import.meta.vitest
|
|
730
690
|
* import { Effect, Ref } from "effect"
|
|
731
691
|
*
|
|
732
692
|
* const program = Effect.gen(function*() {
|
|
733
693
|
* const ref = yield* Ref.make(10)
|
|
734
694
|
*
|
|
735
|
-
* // Set new value and get it back in one operation
|
|
736
695
|
* const newValue = yield* Ref.setAndGet(ref, 42)
|
|
737
|
-
* console.log(newValue) // 42
|
|
738
|
-
*
|
|
739
|
-
* // Verify the ref contains the new value
|
|
740
696
|
* const current = yield* Ref.get(ref)
|
|
741
|
-
*
|
|
697
|
+
* return [newValue, current]
|
|
742
698
|
* })
|
|
743
699
|
*
|
|
744
|
-
* // Useful for sequential operations
|
|
745
700
|
* const program2 = Effect.gen(function*() {
|
|
746
701
|
* const counter = yield* Ref.make(0)
|
|
747
|
-
*
|
|
748
|
-
* const newValue = yield* Ref.setAndGet(counter, 20)
|
|
749
|
-
* console.log(newValue) // 20
|
|
702
|
+
* return yield* Ref.setAndGet(counter, 20)
|
|
750
703
|
* })
|
|
704
|
+
*
|
|
705
|
+
* await Effect.runPromise(program) // => [42, 42]
|
|
706
|
+
* await Effect.runPromise(program2) // => 20
|
|
751
707
|
* ```
|
|
752
708
|
*
|
|
753
709
|
* @category mutations
|
|
@@ -764,28 +720,24 @@ export const setAndGet = dual<
|
|
|
764
720
|
*
|
|
765
721
|
* **Example** (Setting and returning the new value)
|
|
766
722
|
*
|
|
767
|
-
* ```ts
|
|
723
|
+
* ```ts import.meta.vitest
|
|
768
724
|
* import { Effect, Ref } from "effect"
|
|
769
725
|
*
|
|
770
726
|
* const program = Effect.gen(function*() {
|
|
771
727
|
* const ref = yield* Ref.make(10)
|
|
772
728
|
*
|
|
773
|
-
* // Set new value and get it back in one operation
|
|
774
729
|
* const newValue = yield* Ref.setAndGet(ref, 42)
|
|
775
|
-
* console.log(newValue) // 42
|
|
776
|
-
*
|
|
777
|
-
* // Verify the ref contains the new value
|
|
778
730
|
* const current = yield* Ref.get(ref)
|
|
779
|
-
*
|
|
731
|
+
* return [newValue, current]
|
|
780
732
|
* })
|
|
781
733
|
*
|
|
782
|
-
* // Useful for sequential operations
|
|
783
734
|
* const program2 = Effect.gen(function*() {
|
|
784
735
|
* const counter = yield* Ref.make(0)
|
|
785
|
-
*
|
|
786
|
-
* const newValue = yield* Ref.setAndGet(counter, 20)
|
|
787
|
-
* console.log(newValue) // 20
|
|
736
|
+
* return yield* Ref.setAndGet(counter, 20)
|
|
788
737
|
* })
|
|
738
|
+
*
|
|
739
|
+
* await Effect.runPromise(program) // => [42, 42]
|
|
740
|
+
* await Effect.runPromise(program2) // => 20
|
|
789
741
|
* ```
|
|
790
742
|
*
|
|
791
743
|
* @category mutations
|
|
@@ -810,41 +762,36 @@ export const setAndGet = dual<
|
|
|
810
762
|
*
|
|
811
763
|
* **Example** (Modifying a value atomically)
|
|
812
764
|
*
|
|
813
|
-
* ```ts
|
|
765
|
+
* ```ts import.meta.vitest
|
|
814
766
|
* import { Effect, Ref } from "effect"
|
|
815
767
|
*
|
|
816
768
|
* const program = Effect.gen(function*() {
|
|
817
769
|
* const counter = yield* Ref.make(10)
|
|
818
770
|
*
|
|
819
|
-
* // Modify the ref and return some computation result
|
|
820
771
|
* const result = yield* Ref.modify(counter, (n) => [
|
|
821
|
-
* `Previous value was ${n}`,
|
|
822
|
-
* n * 2
|
|
772
|
+
* `Previous value was ${n}`,
|
|
773
|
+
* n * 2
|
|
823
774
|
* ])
|
|
824
|
-
*
|
|
825
|
-
* console.log(result) // "Previous value was 10"
|
|
826
|
-
*
|
|
827
775
|
* const current = yield* Ref.get(counter)
|
|
828
|
-
*
|
|
776
|
+
* return [result, current]
|
|
829
777
|
* })
|
|
830
778
|
*
|
|
831
|
-
* // Example with more complex computation
|
|
832
779
|
* const program2 = Effect.gen(function*() {
|
|
833
780
|
* const state = yield* Ref.make({ count: 0, total: 0 })
|
|
834
|
-
*
|
|
835
|
-
*
|
|
836
|
-
* s.count,
|
|
837
|
-
* { count: s.count + 1, total: s.total + s.count + 1 } // New state
|
|
781
|
+
* return yield* Ref.modify(state, (s) => [
|
|
782
|
+
* s.count,
|
|
783
|
+
* { count: s.count + 1, total: s.total + s.count + 1 }
|
|
838
784
|
* ])
|
|
839
|
-
*
|
|
840
|
-
* console.log(incremented) // 0
|
|
841
785
|
* })
|
|
786
|
+
*
|
|
787
|
+
* await Effect.runPromise(program) // => ["Previous value was 10", 20]
|
|
788
|
+
* await Effect.runPromise(program2) // => 0
|
|
842
789
|
* ```
|
|
843
790
|
*
|
|
844
791
|
* @see {@link updateAndGet} for returning the new stored value
|
|
845
792
|
* @see {@link modifySome} for optionally updating while returning a separate result
|
|
846
793
|
*
|
|
847
|
-
* @category
|
|
794
|
+
* @category mutations
|
|
848
795
|
* @since 2.0.0
|
|
849
796
|
*/
|
|
850
797
|
export const modify = dual<
|
|
@@ -864,41 +811,36 @@ export const modify = dual<
|
|
|
864
811
|
*
|
|
865
812
|
* **Example** (Modifying a value atomically)
|
|
866
813
|
*
|
|
867
|
-
* ```ts
|
|
814
|
+
* ```ts import.meta.vitest
|
|
868
815
|
* import { Effect, Ref } from "effect"
|
|
869
816
|
*
|
|
870
817
|
* const program = Effect.gen(function*() {
|
|
871
818
|
* const counter = yield* Ref.make(10)
|
|
872
819
|
*
|
|
873
|
-
* // Modify the ref and return some computation result
|
|
874
820
|
* const result = yield* Ref.modify(counter, (n) => [
|
|
875
|
-
* `Previous value was ${n}`,
|
|
876
|
-
* n * 2
|
|
821
|
+
* `Previous value was ${n}`,
|
|
822
|
+
* n * 2
|
|
877
823
|
* ])
|
|
878
|
-
*
|
|
879
|
-
* console.log(result) // "Previous value was 10"
|
|
880
|
-
*
|
|
881
824
|
* const current = yield* Ref.get(counter)
|
|
882
|
-
*
|
|
825
|
+
* return [result, current]
|
|
883
826
|
* })
|
|
884
827
|
*
|
|
885
|
-
* // Example with more complex computation
|
|
886
828
|
* const program2 = Effect.gen(function*() {
|
|
887
829
|
* const state = yield* Ref.make({ count: 0, total: 0 })
|
|
888
|
-
*
|
|
889
|
-
*
|
|
890
|
-
* s.count,
|
|
891
|
-
* { count: s.count + 1, total: s.total + s.count + 1 } // New state
|
|
830
|
+
* return yield* Ref.modify(state, (s) => [
|
|
831
|
+
* s.count,
|
|
832
|
+
* { count: s.count + 1, total: s.total + s.count + 1 }
|
|
892
833
|
* ])
|
|
893
|
-
*
|
|
894
|
-
* console.log(incremented) // 0
|
|
895
834
|
* })
|
|
835
|
+
*
|
|
836
|
+
* await Effect.runPromise(program) // => ["Previous value was 10", 20]
|
|
837
|
+
* await Effect.runPromise(program2) // => 0
|
|
896
838
|
* ```
|
|
897
839
|
*
|
|
898
840
|
* @see {@link updateAndGet} for returning the new stored value
|
|
899
841
|
* @see {@link modifySome} for optionally updating while returning a separate result
|
|
900
842
|
*
|
|
901
|
-
* @category
|
|
843
|
+
* @category mutations
|
|
902
844
|
* @since 2.0.0
|
|
903
845
|
*/
|
|
904
846
|
<A, B>(f: (a: A) => readonly [B, A]) => (self: Ref<A>) => Effect.Effect<B>,
|
|
@@ -918,41 +860,36 @@ export const modify = dual<
|
|
|
918
860
|
*
|
|
919
861
|
* **Example** (Modifying a value atomically)
|
|
920
862
|
*
|
|
921
|
-
* ```ts
|
|
863
|
+
* ```ts import.meta.vitest
|
|
922
864
|
* import { Effect, Ref } from "effect"
|
|
923
865
|
*
|
|
924
866
|
* const program = Effect.gen(function*() {
|
|
925
867
|
* const counter = yield* Ref.make(10)
|
|
926
868
|
*
|
|
927
|
-
* // Modify the ref and return some computation result
|
|
928
869
|
* const result = yield* Ref.modify(counter, (n) => [
|
|
929
|
-
* `Previous value was ${n}`,
|
|
930
|
-
* n * 2
|
|
870
|
+
* `Previous value was ${n}`,
|
|
871
|
+
* n * 2
|
|
931
872
|
* ])
|
|
932
|
-
*
|
|
933
|
-
* console.log(result) // "Previous value was 10"
|
|
934
|
-
*
|
|
935
873
|
* const current = yield* Ref.get(counter)
|
|
936
|
-
*
|
|
874
|
+
* return [result, current]
|
|
937
875
|
* })
|
|
938
876
|
*
|
|
939
|
-
* // Example with more complex computation
|
|
940
877
|
* const program2 = Effect.gen(function*() {
|
|
941
878
|
* const state = yield* Ref.make({ count: 0, total: 0 })
|
|
942
|
-
*
|
|
943
|
-
*
|
|
944
|
-
* s.count,
|
|
945
|
-
* { count: s.count + 1, total: s.total + s.count + 1 } // New state
|
|
879
|
+
* return yield* Ref.modify(state, (s) => [
|
|
880
|
+
* s.count,
|
|
881
|
+
* { count: s.count + 1, total: s.total + s.count + 1 }
|
|
946
882
|
* ])
|
|
947
|
-
*
|
|
948
|
-
* console.log(incremented) // 0
|
|
949
883
|
* })
|
|
884
|
+
*
|
|
885
|
+
* await Effect.runPromise(program) // => ["Previous value was 10", 20]
|
|
886
|
+
* await Effect.runPromise(program2) // => 0
|
|
950
887
|
* ```
|
|
951
888
|
*
|
|
952
889
|
* @see {@link updateAndGet} for returning the new stored value
|
|
953
890
|
* @see {@link modifySome} for optionally updating while returning a separate result
|
|
954
891
|
*
|
|
955
|
-
* @category
|
|
892
|
+
* @category mutations
|
|
956
893
|
* @since 2.0.0
|
|
957
894
|
*/
|
|
958
895
|
<A, B>(self: Ref<A>, f: (a: A) => readonly [B, A]) => Effect.Effect<B>
|
|
@@ -979,13 +916,12 @@ export const modify = dual<
|
|
|
979
916
|
*
|
|
980
917
|
* **Example** (Conditionally modifying a value)
|
|
981
918
|
*
|
|
982
|
-
* ```ts
|
|
919
|
+
* ```ts import.meta.vitest
|
|
983
920
|
* import { Effect, Option, Ref } from "effect"
|
|
984
921
|
*
|
|
985
922
|
* const program = Effect.gen(function*() {
|
|
986
923
|
* const counter = yield* Ref.make(5)
|
|
987
924
|
*
|
|
988
|
-
* // Only modify if value is greater than 3
|
|
989
925
|
* const result1 = yield* Ref.modifySome(
|
|
990
926
|
* counter,
|
|
991
927
|
* (n) =>
|
|
@@ -993,13 +929,7 @@ export const modify = dual<
|
|
|
993
929
|
* ? [`incremented ${n}`, Option.some(n + 10)]
|
|
994
930
|
* : ["no change", Option.none()]
|
|
995
931
|
* )
|
|
996
|
-
*
|
|
997
|
-
* console.log(result1) // "incremented 5"
|
|
998
|
-
*
|
|
999
932
|
* const current1 = yield* Ref.get(counter)
|
|
1000
|
-
* console.log(current1) // 15
|
|
1001
|
-
*
|
|
1002
|
-
* // Try to modify with a condition that fails
|
|
1003
933
|
* const result2 = yield* Ref.modifySome(
|
|
1004
934
|
* counter,
|
|
1005
935
|
* (n) =>
|
|
@@ -1007,18 +937,17 @@ export const modify = dual<
|
|
|
1007
937
|
* ? [`decremented ${n}`, Option.some(n - 5)]
|
|
1008
938
|
* : ["no change", Option.none()]
|
|
1009
939
|
* )
|
|
1010
|
-
*
|
|
1011
|
-
* console.log(result2) // "no change"
|
|
1012
|
-
*
|
|
1013
940
|
* const current2 = yield* Ref.get(counter)
|
|
1014
|
-
*
|
|
941
|
+
* return [result1, current1, result2, current2]
|
|
1015
942
|
* })
|
|
943
|
+
*
|
|
944
|
+
* await Effect.runPromise(program) // => ["incremented 5", 15, "no change", 15]
|
|
1016
945
|
* ```
|
|
1017
946
|
*
|
|
1018
947
|
* @see {@link modify} for always storing a new value
|
|
1019
948
|
* @see {@link updateSome} for optional updates without a separate return value
|
|
1020
949
|
*
|
|
1021
|
-
* @category
|
|
950
|
+
* @category mutations
|
|
1022
951
|
* @since 2.0.0
|
|
1023
952
|
*/
|
|
1024
953
|
export const modifySome: {
|
|
@@ -1038,13 +967,12 @@ export const modifySome: {
|
|
|
1038
967
|
*
|
|
1039
968
|
* **Example** (Conditionally modifying a value)
|
|
1040
969
|
*
|
|
1041
|
-
* ```ts
|
|
970
|
+
* ```ts import.meta.vitest
|
|
1042
971
|
* import { Effect, Option, Ref } from "effect"
|
|
1043
972
|
*
|
|
1044
973
|
* const program = Effect.gen(function*() {
|
|
1045
974
|
* const counter = yield* Ref.make(5)
|
|
1046
975
|
*
|
|
1047
|
-
* // Only modify if value is greater than 3
|
|
1048
976
|
* const result1 = yield* Ref.modifySome(
|
|
1049
977
|
* counter,
|
|
1050
978
|
* (n) =>
|
|
@@ -1052,13 +980,7 @@ export const modifySome: {
|
|
|
1052
980
|
* ? [`incremented ${n}`, Option.some(n + 10)]
|
|
1053
981
|
* : ["no change", Option.none()]
|
|
1054
982
|
* )
|
|
1055
|
-
*
|
|
1056
|
-
* console.log(result1) // "incremented 5"
|
|
1057
|
-
*
|
|
1058
983
|
* const current1 = yield* Ref.get(counter)
|
|
1059
|
-
* console.log(current1) // 15
|
|
1060
|
-
*
|
|
1061
|
-
* // Try to modify with a condition that fails
|
|
1062
984
|
* const result2 = yield* Ref.modifySome(
|
|
1063
985
|
* counter,
|
|
1064
986
|
* (n) =>
|
|
@@ -1066,18 +988,17 @@ export const modifySome: {
|
|
|
1066
988
|
* ? [`decremented ${n}`, Option.some(n - 5)]
|
|
1067
989
|
* : ["no change", Option.none()]
|
|
1068
990
|
* )
|
|
1069
|
-
*
|
|
1070
|
-
* console.log(result2) // "no change"
|
|
1071
|
-
*
|
|
1072
991
|
* const current2 = yield* Ref.get(counter)
|
|
1073
|
-
*
|
|
992
|
+
* return [result1, current1, result2, current2]
|
|
1074
993
|
* })
|
|
994
|
+
*
|
|
995
|
+
* await Effect.runPromise(program) // => ["incremented 5", 15, "no change", 15]
|
|
1075
996
|
* ```
|
|
1076
997
|
*
|
|
1077
998
|
* @see {@link modify} for always storing a new value
|
|
1078
999
|
* @see {@link updateSome} for optional updates without a separate return value
|
|
1079
1000
|
*
|
|
1080
|
-
* @category
|
|
1001
|
+
* @category mutations
|
|
1081
1002
|
* @since 2.0.0
|
|
1082
1003
|
*/
|
|
1083
1004
|
<B, A>(pf: (a: A) => readonly [B, Option.Option<A>]): (self: Ref<A>) => Effect.Effect<B>
|
|
@@ -1097,13 +1018,12 @@ export const modifySome: {
|
|
|
1097
1018
|
*
|
|
1098
1019
|
* **Example** (Conditionally modifying a value)
|
|
1099
1020
|
*
|
|
1100
|
-
* ```ts
|
|
1021
|
+
* ```ts import.meta.vitest
|
|
1101
1022
|
* import { Effect, Option, Ref } from "effect"
|
|
1102
1023
|
*
|
|
1103
1024
|
* const program = Effect.gen(function*() {
|
|
1104
1025
|
* const counter = yield* Ref.make(5)
|
|
1105
1026
|
*
|
|
1106
|
-
* // Only modify if value is greater than 3
|
|
1107
1027
|
* const result1 = yield* Ref.modifySome(
|
|
1108
1028
|
* counter,
|
|
1109
1029
|
* (n) =>
|
|
@@ -1111,13 +1031,7 @@ export const modifySome: {
|
|
|
1111
1031
|
* ? [`incremented ${n}`, Option.some(n + 10)]
|
|
1112
1032
|
* : ["no change", Option.none()]
|
|
1113
1033
|
* )
|
|
1114
|
-
*
|
|
1115
|
-
* console.log(result1) // "incremented 5"
|
|
1116
|
-
*
|
|
1117
1034
|
* const current1 = yield* Ref.get(counter)
|
|
1118
|
-
* console.log(current1) // 15
|
|
1119
|
-
*
|
|
1120
|
-
* // Try to modify with a condition that fails
|
|
1121
1035
|
* const result2 = yield* Ref.modifySome(
|
|
1122
1036
|
* counter,
|
|
1123
1037
|
* (n) =>
|
|
@@ -1125,18 +1039,17 @@ export const modifySome: {
|
|
|
1125
1039
|
* ? [`decremented ${n}`, Option.some(n - 5)]
|
|
1126
1040
|
* : ["no change", Option.none()]
|
|
1127
1041
|
* )
|
|
1128
|
-
*
|
|
1129
|
-
* console.log(result2) // "no change"
|
|
1130
|
-
*
|
|
1131
1042
|
* const current2 = yield* Ref.get(counter)
|
|
1132
|
-
*
|
|
1043
|
+
* return [result1, current1, result2, current2]
|
|
1133
1044
|
* })
|
|
1045
|
+
*
|
|
1046
|
+
* await Effect.runPromise(program) // => ["incremented 5", 15, "no change", 15]
|
|
1134
1047
|
* ```
|
|
1135
1048
|
*
|
|
1136
1049
|
* @see {@link modify} for always storing a new value
|
|
1137
1050
|
* @see {@link updateSome} for optional updates without a separate return value
|
|
1138
1051
|
*
|
|
1139
|
-
* @category
|
|
1052
|
+
* @category mutations
|
|
1140
1053
|
* @since 2.0.0
|
|
1141
1054
|
*/
|
|
1142
1055
|
<A, B>(self: Ref<A>, pf: (a: A) => readonly [B, Option.Option<A>]): Effect.Effect<B>
|
|
@@ -1157,13 +1070,12 @@ export const modifySome: {
|
|
|
1157
1070
|
*
|
|
1158
1071
|
* **Example** (Conditionally modifying a value)
|
|
1159
1072
|
*
|
|
1160
|
-
* ```ts
|
|
1073
|
+
* ```ts import.meta.vitest
|
|
1161
1074
|
* import { Effect, Option, Ref } from "effect"
|
|
1162
1075
|
*
|
|
1163
1076
|
* const program = Effect.gen(function*() {
|
|
1164
1077
|
* const counter = yield* Ref.make(5)
|
|
1165
1078
|
*
|
|
1166
|
-
* // Only modify if value is greater than 3
|
|
1167
1079
|
* const result1 = yield* Ref.modifySome(
|
|
1168
1080
|
* counter,
|
|
1169
1081
|
* (n) =>
|
|
@@ -1171,13 +1083,7 @@ export const modifySome: {
|
|
|
1171
1083
|
* ? [`incremented ${n}`, Option.some(n + 10)]
|
|
1172
1084
|
* : ["no change", Option.none()]
|
|
1173
1085
|
* )
|
|
1174
|
-
*
|
|
1175
|
-
* console.log(result1) // "incremented 5"
|
|
1176
|
-
*
|
|
1177
1086
|
* const current1 = yield* Ref.get(counter)
|
|
1178
|
-
* console.log(current1) // 15
|
|
1179
|
-
*
|
|
1180
|
-
* // Try to modify with a condition that fails
|
|
1181
1087
|
* const result2 = yield* Ref.modifySome(
|
|
1182
1088
|
* counter,
|
|
1183
1089
|
* (n) =>
|
|
@@ -1185,18 +1091,17 @@ export const modifySome: {
|
|
|
1185
1091
|
* ? [`decremented ${n}`, Option.some(n - 5)]
|
|
1186
1092
|
* : ["no change", Option.none()]
|
|
1187
1093
|
* )
|
|
1188
|
-
*
|
|
1189
|
-
* console.log(result2) // "no change"
|
|
1190
|
-
*
|
|
1191
1094
|
* const current2 = yield* Ref.get(counter)
|
|
1192
|
-
*
|
|
1095
|
+
* return [result1, current1, result2, current2]
|
|
1193
1096
|
* })
|
|
1097
|
+
*
|
|
1098
|
+
* await Effect.runPromise(program) // => ["incremented 5", 15, "no change", 15]
|
|
1194
1099
|
* ```
|
|
1195
1100
|
*
|
|
1196
1101
|
* @see {@link modify} for always storing a new value
|
|
1197
1102
|
* @see {@link updateSome} for optional updates without a separate return value
|
|
1198
1103
|
*
|
|
1199
|
-
* @category
|
|
1104
|
+
* @category mutations
|
|
1200
1105
|
* @since 2.0.0
|
|
1201
1106
|
*/
|
|
1202
1107
|
<B, A>(pf: (a: A) => readonly [B, Option.Option<A>]) => (self: Ref<A>) => Effect.Effect<B>,
|
|
@@ -1216,13 +1121,12 @@ export const modifySome: {
|
|
|
1216
1121
|
*
|
|
1217
1122
|
* **Example** (Conditionally modifying a value)
|
|
1218
1123
|
*
|
|
1219
|
-
* ```ts
|
|
1124
|
+
* ```ts import.meta.vitest
|
|
1220
1125
|
* import { Effect, Option, Ref } from "effect"
|
|
1221
1126
|
*
|
|
1222
1127
|
* const program = Effect.gen(function*() {
|
|
1223
1128
|
* const counter = yield* Ref.make(5)
|
|
1224
1129
|
*
|
|
1225
|
-
* // Only modify if value is greater than 3
|
|
1226
1130
|
* const result1 = yield* Ref.modifySome(
|
|
1227
1131
|
* counter,
|
|
1228
1132
|
* (n) =>
|
|
@@ -1230,13 +1134,7 @@ export const modifySome: {
|
|
|
1230
1134
|
* ? [`incremented ${n}`, Option.some(n + 10)]
|
|
1231
1135
|
* : ["no change", Option.none()]
|
|
1232
1136
|
* )
|
|
1233
|
-
*
|
|
1234
|
-
* console.log(result1) // "incremented 5"
|
|
1235
|
-
*
|
|
1236
1137
|
* const current1 = yield* Ref.get(counter)
|
|
1237
|
-
* console.log(current1) // 15
|
|
1238
|
-
*
|
|
1239
|
-
* // Try to modify with a condition that fails
|
|
1240
1138
|
* const result2 = yield* Ref.modifySome(
|
|
1241
1139
|
* counter,
|
|
1242
1140
|
* (n) =>
|
|
@@ -1244,18 +1142,17 @@ export const modifySome: {
|
|
|
1244
1142
|
* ? [`decremented ${n}`, Option.some(n - 5)]
|
|
1245
1143
|
* : ["no change", Option.none()]
|
|
1246
1144
|
* )
|
|
1247
|
-
*
|
|
1248
|
-
* console.log(result2) // "no change"
|
|
1249
|
-
*
|
|
1250
1145
|
* const current2 = yield* Ref.get(counter)
|
|
1251
|
-
*
|
|
1146
|
+
* return [result1, current1, result2, current2]
|
|
1252
1147
|
* })
|
|
1148
|
+
*
|
|
1149
|
+
* await Effect.runPromise(program) // => ["incremented 5", 15, "no change", 15]
|
|
1253
1150
|
* ```
|
|
1254
1151
|
*
|
|
1255
1152
|
* @see {@link modify} for always storing a new value
|
|
1256
1153
|
* @see {@link updateSome} for optional updates without a separate return value
|
|
1257
1154
|
*
|
|
1258
|
-
* @category
|
|
1155
|
+
* @category mutations
|
|
1259
1156
|
* @since 2.0.0
|
|
1260
1157
|
*/
|
|
1261
1158
|
<A, B>(self: Ref<A>, pf: (a: A) => readonly [B, Option.Option<A>]) => Effect.Effect<B>
|
|
@@ -1274,32 +1171,30 @@ export const modifySome: {
|
|
|
1274
1171
|
*
|
|
1275
1172
|
* **Example** (Updating a value)
|
|
1276
1173
|
*
|
|
1277
|
-
* ```ts
|
|
1174
|
+
* ```ts import.meta.vitest
|
|
1278
1175
|
* import { Effect, Ref } from "effect"
|
|
1279
1176
|
*
|
|
1280
1177
|
* const program = Effect.gen(function*() {
|
|
1281
1178
|
* const counter = yield* Ref.make(5)
|
|
1282
1179
|
*
|
|
1283
|
-
* // Update the value
|
|
1284
1180
|
* yield* Ref.update(counter, (n) => n * 2)
|
|
1285
|
-
*
|
|
1286
|
-
* const value = yield* Ref.get(counter)
|
|
1287
|
-
* console.log(value) // 10
|
|
1181
|
+
* return yield* Ref.get(counter)
|
|
1288
1182
|
* })
|
|
1289
1183
|
*
|
|
1290
|
-
* // Using multiple operations
|
|
1291
1184
|
* const program2 = Effect.gen(function*() {
|
|
1292
1185
|
* const counter = yield* Ref.make(5)
|
|
1293
1186
|
* yield* Ref.update(counter, (n: number) => n + 10)
|
|
1294
|
-
*
|
|
1295
|
-
* console.log(value) // 15
|
|
1187
|
+
* return yield* Ref.get(counter)
|
|
1296
1188
|
* })
|
|
1189
|
+
*
|
|
1190
|
+
* await Effect.runPromise(program) // => 10
|
|
1191
|
+
* await Effect.runPromise(program2) // => 15
|
|
1297
1192
|
* ```
|
|
1298
1193
|
*
|
|
1299
1194
|
* @see {@link updateAndGet} for returning the new value
|
|
1300
1195
|
* @see {@link getAndUpdate} for returning the previous value
|
|
1301
1196
|
*
|
|
1302
|
-
* @category
|
|
1197
|
+
* @category mutations
|
|
1303
1198
|
* @since 2.0.0
|
|
1304
1199
|
*/
|
|
1305
1200
|
export const update = dual<
|
|
@@ -1312,32 +1207,30 @@ export const update = dual<
|
|
|
1312
1207
|
*
|
|
1313
1208
|
* **Example** (Updating a value)
|
|
1314
1209
|
*
|
|
1315
|
-
* ```ts
|
|
1210
|
+
* ```ts import.meta.vitest
|
|
1316
1211
|
* import { Effect, Ref } from "effect"
|
|
1317
1212
|
*
|
|
1318
1213
|
* const program = Effect.gen(function*() {
|
|
1319
1214
|
* const counter = yield* Ref.make(5)
|
|
1320
1215
|
*
|
|
1321
|
-
* // Update the value
|
|
1322
1216
|
* yield* Ref.update(counter, (n) => n * 2)
|
|
1323
|
-
*
|
|
1324
|
-
* const value = yield* Ref.get(counter)
|
|
1325
|
-
* console.log(value) // 10
|
|
1217
|
+
* return yield* Ref.get(counter)
|
|
1326
1218
|
* })
|
|
1327
1219
|
*
|
|
1328
|
-
* // Using multiple operations
|
|
1329
1220
|
* const program2 = Effect.gen(function*() {
|
|
1330
1221
|
* const counter = yield* Ref.make(5)
|
|
1331
1222
|
* yield* Ref.update(counter, (n: number) => n + 10)
|
|
1332
|
-
*
|
|
1333
|
-
* console.log(value) // 15
|
|
1223
|
+
* return yield* Ref.get(counter)
|
|
1334
1224
|
* })
|
|
1225
|
+
*
|
|
1226
|
+
* await Effect.runPromise(program) // => 10
|
|
1227
|
+
* await Effect.runPromise(program2) // => 15
|
|
1335
1228
|
* ```
|
|
1336
1229
|
*
|
|
1337
1230
|
* @see {@link updateAndGet} for returning the new value
|
|
1338
1231
|
* @see {@link getAndUpdate} for returning the previous value
|
|
1339
1232
|
*
|
|
1340
|
-
* @category
|
|
1233
|
+
* @category mutations
|
|
1341
1234
|
* @since 2.0.0
|
|
1342
1235
|
*/
|
|
1343
1236
|
<A>(f: (a: A) => A) => (self: Ref<A>) => Effect.Effect<void>,
|
|
@@ -1350,32 +1243,30 @@ export const update = dual<
|
|
|
1350
1243
|
*
|
|
1351
1244
|
* **Example** (Updating a value)
|
|
1352
1245
|
*
|
|
1353
|
-
* ```ts
|
|
1246
|
+
* ```ts import.meta.vitest
|
|
1354
1247
|
* import { Effect, Ref } from "effect"
|
|
1355
1248
|
*
|
|
1356
1249
|
* const program = Effect.gen(function*() {
|
|
1357
1250
|
* const counter = yield* Ref.make(5)
|
|
1358
1251
|
*
|
|
1359
|
-
* // Update the value
|
|
1360
1252
|
* yield* Ref.update(counter, (n) => n * 2)
|
|
1361
|
-
*
|
|
1362
|
-
* const value = yield* Ref.get(counter)
|
|
1363
|
-
* console.log(value) // 10
|
|
1253
|
+
* return yield* Ref.get(counter)
|
|
1364
1254
|
* })
|
|
1365
1255
|
*
|
|
1366
|
-
* // Using multiple operations
|
|
1367
1256
|
* const program2 = Effect.gen(function*() {
|
|
1368
1257
|
* const counter = yield* Ref.make(5)
|
|
1369
1258
|
* yield* Ref.update(counter, (n: number) => n + 10)
|
|
1370
|
-
*
|
|
1371
|
-
* console.log(value) // 15
|
|
1259
|
+
* return yield* Ref.get(counter)
|
|
1372
1260
|
* })
|
|
1261
|
+
*
|
|
1262
|
+
* await Effect.runPromise(program) // => 10
|
|
1263
|
+
* await Effect.runPromise(program2) // => 15
|
|
1373
1264
|
* ```
|
|
1374
1265
|
*
|
|
1375
1266
|
* @see {@link updateAndGet} for returning the new value
|
|
1376
1267
|
* @see {@link getAndUpdate} for returning the previous value
|
|
1377
1268
|
*
|
|
1378
|
-
* @category
|
|
1269
|
+
* @category mutations
|
|
1379
1270
|
* @since 2.0.0
|
|
1380
1271
|
*/
|
|
1381
1272
|
<A>(self: Ref<A>, f: (a: A) => A) => Effect.Effect<void>
|
|
@@ -1393,20 +1284,18 @@ export const update = dual<
|
|
|
1393
1284
|
*
|
|
1394
1285
|
* **Example** (Updating and returning the new value)
|
|
1395
1286
|
*
|
|
1396
|
-
* ```ts
|
|
1287
|
+
* ```ts import.meta.vitest
|
|
1397
1288
|
* import { Effect, Ref } from "effect"
|
|
1398
1289
|
*
|
|
1399
1290
|
* const program = Effect.gen(function*() {
|
|
1400
1291
|
* const counter = yield* Ref.make(5)
|
|
1401
1292
|
*
|
|
1402
|
-
* // Update and get the new value in one operation
|
|
1403
1293
|
* const newValue = yield* Ref.updateAndGet(counter, (n) => n * 3)
|
|
1404
|
-
* console.log(newValue) // 15
|
|
1405
|
-
*
|
|
1406
|
-
* // Verify the ref contains the new value
|
|
1407
1294
|
* const current = yield* Ref.get(counter)
|
|
1408
|
-
*
|
|
1295
|
+
* return [newValue, current]
|
|
1409
1296
|
* })
|
|
1297
|
+
*
|
|
1298
|
+
* await Effect.runPromise(program) // => [15, 15]
|
|
1410
1299
|
* ```
|
|
1411
1300
|
*
|
|
1412
1301
|
* @see {@link update} for updating without returning the new value
|
|
@@ -1425,20 +1314,18 @@ export const updateAndGet = dual<
|
|
|
1425
1314
|
*
|
|
1426
1315
|
* **Example** (Updating and returning the new value)
|
|
1427
1316
|
*
|
|
1428
|
-
* ```ts
|
|
1317
|
+
* ```ts import.meta.vitest
|
|
1429
1318
|
* import { Effect, Ref } from "effect"
|
|
1430
1319
|
*
|
|
1431
1320
|
* const program = Effect.gen(function*() {
|
|
1432
1321
|
* const counter = yield* Ref.make(5)
|
|
1433
1322
|
*
|
|
1434
|
-
* // Update and get the new value in one operation
|
|
1435
1323
|
* const newValue = yield* Ref.updateAndGet(counter, (n) => n * 3)
|
|
1436
|
-
* console.log(newValue) // 15
|
|
1437
|
-
*
|
|
1438
|
-
* // Verify the ref contains the new value
|
|
1439
1324
|
* const current = yield* Ref.get(counter)
|
|
1440
|
-
*
|
|
1325
|
+
* return [newValue, current]
|
|
1441
1326
|
* })
|
|
1327
|
+
*
|
|
1328
|
+
* await Effect.runPromise(program) // => [15, 15]
|
|
1442
1329
|
* ```
|
|
1443
1330
|
*
|
|
1444
1331
|
* @see {@link update} for updating without returning the new value
|
|
@@ -1457,20 +1344,18 @@ export const updateAndGet = dual<
|
|
|
1457
1344
|
*
|
|
1458
1345
|
* **Example** (Updating and returning the new value)
|
|
1459
1346
|
*
|
|
1460
|
-
* ```ts
|
|
1347
|
+
* ```ts import.meta.vitest
|
|
1461
1348
|
* import { Effect, Ref } from "effect"
|
|
1462
1349
|
*
|
|
1463
1350
|
* const program = Effect.gen(function*() {
|
|
1464
1351
|
* const counter = yield* Ref.make(5)
|
|
1465
1352
|
*
|
|
1466
|
-
* // Update and get the new value in one operation
|
|
1467
1353
|
* const newValue = yield* Ref.updateAndGet(counter, (n) => n * 3)
|
|
1468
|
-
* console.log(newValue) // 15
|
|
1469
|
-
*
|
|
1470
|
-
* // Verify the ref contains the new value
|
|
1471
1354
|
* const current = yield* Ref.get(counter)
|
|
1472
|
-
*
|
|
1355
|
+
* return [newValue, current]
|
|
1473
1356
|
* })
|
|
1357
|
+
*
|
|
1358
|
+
* await Effect.runPromise(program) // => [15, 15]
|
|
1474
1359
|
* ```
|
|
1475
1360
|
*
|
|
1476
1361
|
* @see {@link update} for updating without returning the new value
|
|
@@ -1496,37 +1381,33 @@ export const updateAndGet = dual<
|
|
|
1496
1381
|
*
|
|
1497
1382
|
* **Example** (Conditionally updating a value)
|
|
1498
1383
|
*
|
|
1499
|
-
* ```ts
|
|
1384
|
+
* ```ts import.meta.vitest
|
|
1500
1385
|
* import { Effect, Option, Ref } from "effect"
|
|
1501
1386
|
*
|
|
1502
1387
|
* const program = Effect.gen(function*() {
|
|
1503
1388
|
* const counter = yield* Ref.make(5)
|
|
1504
1389
|
*
|
|
1505
|
-
* // Only update if value is even
|
|
1506
1390
|
* yield* Ref.updateSome(
|
|
1507
1391
|
* counter,
|
|
1508
1392
|
* (n) => n % 2 === 0 ? Option.some(n * 2) : Option.none()
|
|
1509
1393
|
* )
|
|
1510
|
-
*
|
|
1511
|
-
* let current = yield* Ref.get(counter)
|
|
1512
|
-
* console.log(current) // 5 (unchanged because 5 is odd)
|
|
1513
|
-
*
|
|
1514
|
-
* // Set to even number and try again
|
|
1394
|
+
* const before = yield* Ref.get(counter)
|
|
1515
1395
|
* yield* Ref.set(counter, 6)
|
|
1516
1396
|
* yield* Ref.updateSome(
|
|
1517
1397
|
* counter,
|
|
1518
1398
|
* (n) => n % 2 === 0 ? Option.some(n * 2) : Option.none()
|
|
1519
1399
|
* )
|
|
1520
|
-
*
|
|
1521
|
-
*
|
|
1522
|
-
* console.log(current) // 12 (updated because 6 is even)
|
|
1400
|
+
* const after = yield* Ref.get(counter)
|
|
1401
|
+
* return [before, after]
|
|
1523
1402
|
* })
|
|
1403
|
+
*
|
|
1404
|
+
* await Effect.runPromise(program) // => [5, 12]
|
|
1524
1405
|
* ```
|
|
1525
1406
|
*
|
|
1526
1407
|
* @see {@link update} for always applying an update
|
|
1527
1408
|
* @see {@link updateSomeAndGet} for returning the resulting current value
|
|
1528
1409
|
*
|
|
1529
|
-
* @category
|
|
1410
|
+
* @category mutations
|
|
1530
1411
|
* @since 2.0.0
|
|
1531
1412
|
*/
|
|
1532
1413
|
export const updateSome = dual<
|
|
@@ -1544,37 +1425,33 @@ export const updateSome = dual<
|
|
|
1544
1425
|
*
|
|
1545
1426
|
* **Example** (Conditionally updating a value)
|
|
1546
1427
|
*
|
|
1547
|
-
* ```ts
|
|
1428
|
+
* ```ts import.meta.vitest
|
|
1548
1429
|
* import { Effect, Option, Ref } from "effect"
|
|
1549
1430
|
*
|
|
1550
1431
|
* const program = Effect.gen(function*() {
|
|
1551
1432
|
* const counter = yield* Ref.make(5)
|
|
1552
1433
|
*
|
|
1553
|
-
* // Only update if value is even
|
|
1554
1434
|
* yield* Ref.updateSome(
|
|
1555
1435
|
* counter,
|
|
1556
1436
|
* (n) => n % 2 === 0 ? Option.some(n * 2) : Option.none()
|
|
1557
1437
|
* )
|
|
1558
|
-
*
|
|
1559
|
-
* let current = yield* Ref.get(counter)
|
|
1560
|
-
* console.log(current) // 5 (unchanged because 5 is odd)
|
|
1561
|
-
*
|
|
1562
|
-
* // Set to even number and try again
|
|
1438
|
+
* const before = yield* Ref.get(counter)
|
|
1563
1439
|
* yield* Ref.set(counter, 6)
|
|
1564
1440
|
* yield* Ref.updateSome(
|
|
1565
1441
|
* counter,
|
|
1566
1442
|
* (n) => n % 2 === 0 ? Option.some(n * 2) : Option.none()
|
|
1567
1443
|
* )
|
|
1568
|
-
*
|
|
1569
|
-
*
|
|
1570
|
-
* console.log(current) // 12 (updated because 6 is even)
|
|
1444
|
+
* const after = yield* Ref.get(counter)
|
|
1445
|
+
* return [before, after]
|
|
1571
1446
|
* })
|
|
1447
|
+
*
|
|
1448
|
+
* await Effect.runPromise(program) // => [5, 12]
|
|
1572
1449
|
* ```
|
|
1573
1450
|
*
|
|
1574
1451
|
* @see {@link update} for always applying an update
|
|
1575
1452
|
* @see {@link updateSomeAndGet} for returning the resulting current value
|
|
1576
1453
|
*
|
|
1577
|
-
* @category
|
|
1454
|
+
* @category mutations
|
|
1578
1455
|
* @since 2.0.0
|
|
1579
1456
|
*/
|
|
1580
1457
|
<A>(f: (a: A) => Option.Option<A>) => (self: Ref<A>) => Effect.Effect<void>,
|
|
@@ -1592,37 +1469,33 @@ export const updateSome = dual<
|
|
|
1592
1469
|
*
|
|
1593
1470
|
* **Example** (Conditionally updating a value)
|
|
1594
1471
|
*
|
|
1595
|
-
* ```ts
|
|
1472
|
+
* ```ts import.meta.vitest
|
|
1596
1473
|
* import { Effect, Option, Ref } from "effect"
|
|
1597
1474
|
*
|
|
1598
1475
|
* const program = Effect.gen(function*() {
|
|
1599
1476
|
* const counter = yield* Ref.make(5)
|
|
1600
1477
|
*
|
|
1601
|
-
* // Only update if value is even
|
|
1602
1478
|
* yield* Ref.updateSome(
|
|
1603
1479
|
* counter,
|
|
1604
1480
|
* (n) => n % 2 === 0 ? Option.some(n * 2) : Option.none()
|
|
1605
1481
|
* )
|
|
1606
|
-
*
|
|
1607
|
-
* let current = yield* Ref.get(counter)
|
|
1608
|
-
* console.log(current) // 5 (unchanged because 5 is odd)
|
|
1609
|
-
*
|
|
1610
|
-
* // Set to even number and try again
|
|
1482
|
+
* const before = yield* Ref.get(counter)
|
|
1611
1483
|
* yield* Ref.set(counter, 6)
|
|
1612
1484
|
* yield* Ref.updateSome(
|
|
1613
1485
|
* counter,
|
|
1614
1486
|
* (n) => n % 2 === 0 ? Option.some(n * 2) : Option.none()
|
|
1615
1487
|
* )
|
|
1616
|
-
*
|
|
1617
|
-
*
|
|
1618
|
-
* console.log(current) // 12 (updated because 6 is even)
|
|
1488
|
+
* const after = yield* Ref.get(counter)
|
|
1489
|
+
* return [before, after]
|
|
1619
1490
|
* })
|
|
1491
|
+
*
|
|
1492
|
+
* await Effect.runPromise(program) // => [5, 12]
|
|
1620
1493
|
* ```
|
|
1621
1494
|
*
|
|
1622
1495
|
* @see {@link update} for always applying an update
|
|
1623
1496
|
* @see {@link updateSomeAndGet} for returning the resulting current value
|
|
1624
1497
|
*
|
|
1625
|
-
* @category
|
|
1498
|
+
* @category mutations
|
|
1626
1499
|
* @since 2.0.0
|
|
1627
1500
|
*/
|
|
1628
1501
|
<A>(self: Ref<A>, f: (a: A) => Option.Option<A>) => Effect.Effect<void>
|
|
@@ -1650,26 +1523,24 @@ export const updateSome = dual<
|
|
|
1650
1523
|
*
|
|
1651
1524
|
* **Example** (Conditionally updating and returning the current value)
|
|
1652
1525
|
*
|
|
1653
|
-
* ```ts
|
|
1526
|
+
* ```ts import.meta.vitest
|
|
1654
1527
|
* import { Effect, Option, Ref } from "effect"
|
|
1655
1528
|
*
|
|
1656
1529
|
* const program = Effect.gen(function*() {
|
|
1657
1530
|
* const counter = yield* Ref.make(10)
|
|
1658
1531
|
*
|
|
1659
|
-
* // Only update if value is greater than 5
|
|
1660
1532
|
* const result1 = yield* Ref.updateSomeAndGet(
|
|
1661
1533
|
* counter,
|
|
1662
1534
|
* (n) => n > 5 ? Option.some(n / 2) : Option.none()
|
|
1663
1535
|
* )
|
|
1664
|
-
* console.log(result1) // 5 (updated and returned)
|
|
1665
|
-
*
|
|
1666
|
-
* // Try to update again with same condition
|
|
1667
1536
|
* const result2 = yield* Ref.updateSomeAndGet(
|
|
1668
1537
|
* counter,
|
|
1669
1538
|
* (n) => n > 5 ? Option.some(n / 2) : Option.none()
|
|
1670
1539
|
* )
|
|
1671
|
-
*
|
|
1540
|
+
* return [result1, result2]
|
|
1672
1541
|
* })
|
|
1542
|
+
*
|
|
1543
|
+
* await Effect.runPromise(program) // => [5, 5]
|
|
1673
1544
|
* ```
|
|
1674
1545
|
*
|
|
1675
1546
|
* @see {@link updateSome} for conditional updates without returning a value
|
|
@@ -1695,26 +1566,24 @@ export const updateSomeAndGet = dual<
|
|
|
1695
1566
|
*
|
|
1696
1567
|
* **Example** (Conditionally updating and returning the current value)
|
|
1697
1568
|
*
|
|
1698
|
-
* ```ts
|
|
1569
|
+
* ```ts import.meta.vitest
|
|
1699
1570
|
* import { Effect, Option, Ref } from "effect"
|
|
1700
1571
|
*
|
|
1701
1572
|
* const program = Effect.gen(function*() {
|
|
1702
1573
|
* const counter = yield* Ref.make(10)
|
|
1703
1574
|
*
|
|
1704
|
-
* // Only update if value is greater than 5
|
|
1705
1575
|
* const result1 = yield* Ref.updateSomeAndGet(
|
|
1706
1576
|
* counter,
|
|
1707
1577
|
* (n) => n > 5 ? Option.some(n / 2) : Option.none()
|
|
1708
1578
|
* )
|
|
1709
|
-
* console.log(result1) // 5 (updated and returned)
|
|
1710
|
-
*
|
|
1711
|
-
* // Try to update again with same condition
|
|
1712
1579
|
* const result2 = yield* Ref.updateSomeAndGet(
|
|
1713
1580
|
* counter,
|
|
1714
1581
|
* (n) => n > 5 ? Option.some(n / 2) : Option.none()
|
|
1715
1582
|
* )
|
|
1716
|
-
*
|
|
1583
|
+
* return [result1, result2]
|
|
1717
1584
|
* })
|
|
1585
|
+
*
|
|
1586
|
+
* await Effect.runPromise(program) // => [5, 5]
|
|
1718
1587
|
* ```
|
|
1719
1588
|
*
|
|
1720
1589
|
* @see {@link updateSome} for conditional updates without returning a value
|
|
@@ -1740,26 +1609,24 @@ export const updateSomeAndGet = dual<
|
|
|
1740
1609
|
*
|
|
1741
1610
|
* **Example** (Conditionally updating and returning the current value)
|
|
1742
1611
|
*
|
|
1743
|
-
* ```ts
|
|
1612
|
+
* ```ts import.meta.vitest
|
|
1744
1613
|
* import { Effect, Option, Ref } from "effect"
|
|
1745
1614
|
*
|
|
1746
1615
|
* const program = Effect.gen(function*() {
|
|
1747
1616
|
* const counter = yield* Ref.make(10)
|
|
1748
1617
|
*
|
|
1749
|
-
* // Only update if value is greater than 5
|
|
1750
1618
|
* const result1 = yield* Ref.updateSomeAndGet(
|
|
1751
1619
|
* counter,
|
|
1752
1620
|
* (n) => n > 5 ? Option.some(n / 2) : Option.none()
|
|
1753
1621
|
* )
|
|
1754
|
-
* console.log(result1) // 5 (updated and returned)
|
|
1755
|
-
*
|
|
1756
|
-
* // Try to update again with same condition
|
|
1757
1622
|
* const result2 = yield* Ref.updateSomeAndGet(
|
|
1758
1623
|
* counter,
|
|
1759
1624
|
* (n) => n > 5 ? Option.some(n / 2) : Option.none()
|
|
1760
1625
|
* )
|
|
1761
|
-
*
|
|
1626
|
+
* return [result1, result2]
|
|
1762
1627
|
* })
|
|
1628
|
+
*
|
|
1629
|
+
* await Effect.runPromise(program) // => [5, 5]
|
|
1763
1630
|
* ```
|
|
1764
1631
|
*
|
|
1765
1632
|
* @see {@link updateSome} for conditional updates without returning a value
|
|
@@ -1792,18 +1659,11 @@ export const updateSomeAndGet = dual<
|
|
|
1792
1659
|
*
|
|
1793
1660
|
* **Example** (Reading a ref unsafely)
|
|
1794
1661
|
*
|
|
1795
|
-
* ```ts
|
|
1662
|
+
* ```ts import.meta.vitest
|
|
1796
1663
|
* import { Ref } from "effect"
|
|
1797
1664
|
*
|
|
1798
|
-
* // Create a ref directly
|
|
1799
1665
|
* const counter = Ref.makeUnsafe(42)
|
|
1800
|
-
*
|
|
1801
|
-
* // Get the value synchronously
|
|
1802
|
-
* const value = Ref.getUnsafe(counter)
|
|
1803
|
-
* console.log(value) // 42
|
|
1804
|
-
*
|
|
1805
|
-
* // Note: This is unsafe and should be used carefully
|
|
1806
|
-
* // Prefer Ref.get for Effect-wrapped access
|
|
1666
|
+
* Ref.getUnsafe(counter) // => 42
|
|
1807
1667
|
* ```
|
|
1808
1668
|
*
|
|
1809
1669
|
* @category getters
|