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/dist/Cache.d.ts
CHANGED
|
@@ -13,7 +13,7 @@ declare const TypeId = "~effect/Cache";
|
|
|
13
13
|
*
|
|
14
14
|
* **Example** (Creating a basic cache)
|
|
15
15
|
*
|
|
16
|
-
* ```ts
|
|
16
|
+
* ```ts import.meta.vitest
|
|
17
17
|
* import { Cache, Effect } from "effect"
|
|
18
18
|
*
|
|
19
19
|
* // Basic cache with string keys and number values
|
|
@@ -30,12 +30,15 @@ declare const TypeId = "~effect/Cache";
|
|
|
30
30
|
*
|
|
31
31
|
* return [value1, value2, value3]
|
|
32
32
|
* })
|
|
33
|
+
*
|
|
34
|
+
* const actual = await Effect.runPromise(program)
|
|
35
|
+
* actual // => [5, 5, 5]
|
|
33
36
|
* ```
|
|
34
37
|
*
|
|
35
38
|
* **Example** (Handling lookup failures)
|
|
36
39
|
*
|
|
37
|
-
* ```ts
|
|
38
|
-
* import { Cache, Effect } from "effect"
|
|
40
|
+
* ```ts import.meta.vitest
|
|
41
|
+
* import { Cache, Effect, Exit } from "effect"
|
|
39
42
|
*
|
|
40
43
|
* // Cache with error handling
|
|
41
44
|
* const program = Effect.gen(function*() {
|
|
@@ -48,16 +51,19 @@ declare const TypeId = "~effect/Cache";
|
|
|
48
51
|
* })
|
|
49
52
|
*
|
|
50
53
|
* // Handle successful and failed lookups
|
|
51
|
-
* const success = yield* Cache.get(cache, "test")
|
|
52
|
-
* const failure = yield* Effect.exit(Cache.get(cache, "error"))
|
|
54
|
+
* const success = yield* Cache.get(cache, "test")
|
|
55
|
+
* const failure = yield* Effect.exit(Cache.get(cache, "error"))
|
|
53
56
|
*
|
|
54
|
-
* return
|
|
57
|
+
* return [success, failure] as const
|
|
55
58
|
* })
|
|
59
|
+
*
|
|
60
|
+
* const actual = await Effect.runPromise(program)
|
|
61
|
+
* actual // => [4, Exit.fail("Lookup failed")]
|
|
56
62
|
* ```
|
|
57
63
|
*
|
|
58
64
|
* **Example** (Using complex keys with TTL)
|
|
59
65
|
*
|
|
60
|
-
* ```ts
|
|
66
|
+
* ```ts import.meta.vitest
|
|
61
67
|
* import { Cache, Data, Duration, Effect } from "effect"
|
|
62
68
|
*
|
|
63
69
|
* // Cache with complex key types and TTL
|
|
@@ -73,8 +79,11 @@ declare const TypeId = "~effect/Cache";
|
|
|
73
79
|
* const userId = new UserId({ id: 123 })
|
|
74
80
|
* const userName = yield* Cache.get(userCache, userId)
|
|
75
81
|
*
|
|
76
|
-
* return userName
|
|
82
|
+
* return userName
|
|
77
83
|
* })
|
|
84
|
+
*
|
|
85
|
+
* const actual = await Effect.runPromise(program)
|
|
86
|
+
* actual // => "User-123"
|
|
78
87
|
* ```
|
|
79
88
|
*
|
|
80
89
|
* @category models
|
|
@@ -127,11 +136,11 @@ export interface Entry<A, E> {
|
|
|
127
136
|
*
|
|
128
137
|
* **Example** (Configuring dynamic time to live)
|
|
129
138
|
*
|
|
130
|
-
* ```ts
|
|
139
|
+
* ```ts import.meta.vitest
|
|
131
140
|
* import { Cache, Effect, Exit } from "effect"
|
|
132
141
|
*
|
|
133
142
|
* // Cache with TTL based on computed value
|
|
134
|
-
* const
|
|
143
|
+
* const program = Effect.gen(function*() {
|
|
135
144
|
* const cache = yield* Cache.makeWith(
|
|
136
145
|
* (id: number) => Effect.succeed({ id, active: id % 2 === 0 }),
|
|
137
146
|
* {
|
|
@@ -146,8 +155,11 @@ export interface Entry<A, E> {
|
|
|
146
155
|
* }
|
|
147
156
|
* )
|
|
148
157
|
*
|
|
149
|
-
* return cache
|
|
158
|
+
* return cache.capacity
|
|
150
159
|
* })
|
|
160
|
+
*
|
|
161
|
+
* const actual = await Effect.runPromise(program)
|
|
162
|
+
* actual // => 1000
|
|
151
163
|
* ```
|
|
152
164
|
*
|
|
153
165
|
* @see {@link make} for a simpler cache constructor with a fixed time-to-live for all entries
|
|
@@ -169,7 +181,7 @@ export declare const makeWith: <Key, A, E = never, R = never, ServiceMode extend
|
|
|
169
181
|
*
|
|
170
182
|
* **Example** (Creating a basic cache)
|
|
171
183
|
*
|
|
172
|
-
* ```ts
|
|
184
|
+
* ```ts import.meta.vitest
|
|
173
185
|
* import { Cache, Effect } from "effect"
|
|
174
186
|
*
|
|
175
187
|
* // Basic cache with string keys
|
|
@@ -181,13 +193,16 @@ export declare const makeWith: <Key, A, E = never, R = never, ServiceMode extend
|
|
|
181
193
|
*
|
|
182
194
|
* const result1 = yield* Cache.get(cache, "hello")
|
|
183
195
|
* const result2 = yield* Cache.get(cache, "world")
|
|
184
|
-
*
|
|
196
|
+
* return { result1, result2 }
|
|
185
197
|
* })
|
|
198
|
+
*
|
|
199
|
+
* const actual = await Effect.runPromise(program)
|
|
200
|
+
* actual // => { result1: 5, result2: 5 }
|
|
186
201
|
* ```
|
|
187
202
|
*
|
|
188
203
|
* **Example** (Creating a cache with TTL)
|
|
189
204
|
*
|
|
190
|
-
* ```ts
|
|
205
|
+
* ```ts import.meta.vitest
|
|
191
206
|
* import { Cache, Effect } from "effect"
|
|
192
207
|
*
|
|
193
208
|
* const program = Effect.gen(function*() {
|
|
@@ -213,11 +228,12 @@ export declare const makeWith: <Key, A, E = never, R = never, ServiceMode extend
|
|
|
213
228
|
* })
|
|
214
229
|
*
|
|
215
230
|
* const user1 = yield* Cache.get(cache, 123)
|
|
216
|
-
* console.log(user1) // { name: "Ada", email: "ada@example.com" }
|
|
217
|
-
*
|
|
218
231
|
* const user2 = yield* Cache.get(cache, 123)
|
|
219
|
-
*
|
|
232
|
+
* return [user1, user2, user1 === user2] as const
|
|
220
233
|
* })
|
|
234
|
+
*
|
|
235
|
+
* const actual = await Effect.runPromise(program)
|
|
236
|
+
* actual // => [{ name: "Ada", email: "ada@example.com" }, { name: "Ada", email: "ada@example.com" }, true]
|
|
221
237
|
* ```
|
|
222
238
|
*
|
|
223
239
|
* @category constructors
|
|
@@ -241,7 +257,7 @@ export declare const make: <Key, A, E = never, R = never, ServiceMode extends "l
|
|
|
241
257
|
*
|
|
242
258
|
* **Example** (Getting cached values)
|
|
243
259
|
*
|
|
244
|
-
* ```ts
|
|
260
|
+
* ```ts import.meta.vitest
|
|
245
261
|
* import { Cache, Effect } from "effect"
|
|
246
262
|
*
|
|
247
263
|
* const program = Effect.gen(function*() {
|
|
@@ -252,20 +268,21 @@ export declare const make: <Key, A, E = never, R = never, ServiceMode extends "l
|
|
|
252
268
|
*
|
|
253
269
|
* // Cache miss - triggers lookup function
|
|
254
270
|
* const result1 = yield* Cache.get(cache, "hello")
|
|
255
|
-
* console.log(result1) // 5
|
|
256
271
|
*
|
|
257
272
|
* // Cache hit - returns cached value without lookup
|
|
258
273
|
* const result2 = yield* Cache.get(cache, "hello")
|
|
259
|
-
* console.log(result2) // 5 (from cache)
|
|
260
274
|
*
|
|
261
275
|
* return { result1, result2 }
|
|
262
276
|
* })
|
|
277
|
+
*
|
|
278
|
+
* const actual = await Effect.runPromise(program)
|
|
279
|
+
* actual // => { result1: 5, result2: 5 }
|
|
263
280
|
* ```
|
|
264
281
|
*
|
|
265
282
|
* **Example** (Handling lookup failures)
|
|
266
283
|
*
|
|
267
|
-
* ```ts
|
|
268
|
-
* import { Cache, Effect } from "effect"
|
|
284
|
+
* ```ts import.meta.vitest
|
|
285
|
+
* import { Cache, Effect, Exit } from "effect"
|
|
269
286
|
*
|
|
270
287
|
* // Error handling when lookup fails
|
|
271
288
|
* const program = Effect.gen(function*() {
|
|
@@ -279,17 +296,19 @@ export declare const make: <Key, A, E = never, R = never, ServiceMode extends "l
|
|
|
279
296
|
*
|
|
280
297
|
* // Successful lookup
|
|
281
298
|
* const success = yield* Cache.get(cache, "hello")
|
|
282
|
-
* console.log(success) // 5
|
|
283
299
|
*
|
|
284
300
|
* // Failed lookup - returns error
|
|
285
301
|
* const failure = yield* Effect.exit(Cache.get(cache, "error"))
|
|
286
|
-
*
|
|
302
|
+
* return [success, failure] as const
|
|
287
303
|
* })
|
|
304
|
+
*
|
|
305
|
+
* const actual = await Effect.runPromise(program)
|
|
306
|
+
* actual // => [5, Exit.fail("Lookup failed")]
|
|
288
307
|
* ```
|
|
289
308
|
*
|
|
290
309
|
* **Example** (Sharing concurrent lookups)
|
|
291
310
|
*
|
|
292
|
-
* ```ts
|
|
311
|
+
* ```ts import.meta.vitest
|
|
293
312
|
* import { Cache, Effect } from "effect"
|
|
294
313
|
*
|
|
295
314
|
* // Concurrent access - multiple gets of same key only invoke lookup once
|
|
@@ -311,9 +330,11 @@ export declare const make: <Key, A, E = never, R = never, ServiceMode extends "l
|
|
|
311
330
|
* Cache.get(cache, "hello")
|
|
312
331
|
* ], { concurrency: "unbounded" })
|
|
313
332
|
*
|
|
314
|
-
*
|
|
315
|
-
* console.log(lookupCount) // 1 (lookup called only once)
|
|
333
|
+
* return { results, lookupCount }
|
|
316
334
|
* })
|
|
335
|
+
*
|
|
336
|
+
* const actual = await Effect.runPromise(program)
|
|
337
|
+
* actual // => { results: [5, 5, 5], lookupCount: 1 }
|
|
317
338
|
* ```
|
|
318
339
|
*
|
|
319
340
|
* @category combinators
|
|
@@ -332,7 +353,7 @@ export declare const get: {
|
|
|
332
353
|
*
|
|
333
354
|
* **Example** (Getting cached values)
|
|
334
355
|
*
|
|
335
|
-
* ```ts
|
|
356
|
+
* ```ts import.meta.vitest
|
|
336
357
|
* import { Cache, Effect } from "effect"
|
|
337
358
|
*
|
|
338
359
|
* const program = Effect.gen(function*() {
|
|
@@ -343,20 +364,21 @@ export declare const get: {
|
|
|
343
364
|
*
|
|
344
365
|
* // Cache miss - triggers lookup function
|
|
345
366
|
* const result1 = yield* Cache.get(cache, "hello")
|
|
346
|
-
* console.log(result1) // 5
|
|
347
367
|
*
|
|
348
368
|
* // Cache hit - returns cached value without lookup
|
|
349
369
|
* const result2 = yield* Cache.get(cache, "hello")
|
|
350
|
-
* console.log(result2) // 5 (from cache)
|
|
351
370
|
*
|
|
352
371
|
* return { result1, result2 }
|
|
353
372
|
* })
|
|
373
|
+
*
|
|
374
|
+
* const actual = await Effect.runPromise(program)
|
|
375
|
+
* actual // => { result1: 5, result2: 5 }
|
|
354
376
|
* ```
|
|
355
377
|
*
|
|
356
378
|
* **Example** (Handling lookup failures)
|
|
357
379
|
*
|
|
358
|
-
* ```ts
|
|
359
|
-
* import { Cache, Effect } from "effect"
|
|
380
|
+
* ```ts import.meta.vitest
|
|
381
|
+
* import { Cache, Effect, Exit } from "effect"
|
|
360
382
|
*
|
|
361
383
|
* // Error handling when lookup fails
|
|
362
384
|
* const program = Effect.gen(function*() {
|
|
@@ -370,17 +392,19 @@ export declare const get: {
|
|
|
370
392
|
*
|
|
371
393
|
* // Successful lookup
|
|
372
394
|
* const success = yield* Cache.get(cache, "hello")
|
|
373
|
-
* console.log(success) // 5
|
|
374
395
|
*
|
|
375
396
|
* // Failed lookup - returns error
|
|
376
397
|
* const failure = yield* Effect.exit(Cache.get(cache, "error"))
|
|
377
|
-
*
|
|
398
|
+
* return [success, failure] as const
|
|
378
399
|
* })
|
|
400
|
+
*
|
|
401
|
+
* const actual = await Effect.runPromise(program)
|
|
402
|
+
* actual // => [5, Exit.fail("Lookup failed")]
|
|
379
403
|
* ```
|
|
380
404
|
*
|
|
381
405
|
* **Example** (Sharing concurrent lookups)
|
|
382
406
|
*
|
|
383
|
-
* ```ts
|
|
407
|
+
* ```ts import.meta.vitest
|
|
384
408
|
* import { Cache, Effect } from "effect"
|
|
385
409
|
*
|
|
386
410
|
* // Concurrent access - multiple gets of same key only invoke lookup once
|
|
@@ -402,9 +426,11 @@ export declare const get: {
|
|
|
402
426
|
* Cache.get(cache, "hello")
|
|
403
427
|
* ], { concurrency: "unbounded" })
|
|
404
428
|
*
|
|
405
|
-
*
|
|
406
|
-
* console.log(lookupCount) // 1 (lookup called only once)
|
|
429
|
+
* return { results, lookupCount }
|
|
407
430
|
* })
|
|
431
|
+
*
|
|
432
|
+
* const actual = await Effect.runPromise(program)
|
|
433
|
+
* actual // => { results: [5, 5, 5], lookupCount: 1 }
|
|
408
434
|
* ```
|
|
409
435
|
*
|
|
410
436
|
* @category combinators
|
|
@@ -423,7 +449,7 @@ export declare const get: {
|
|
|
423
449
|
*
|
|
424
450
|
* **Example** (Getting cached values)
|
|
425
451
|
*
|
|
426
|
-
* ```ts
|
|
452
|
+
* ```ts import.meta.vitest
|
|
427
453
|
* import { Cache, Effect } from "effect"
|
|
428
454
|
*
|
|
429
455
|
* const program = Effect.gen(function*() {
|
|
@@ -434,20 +460,21 @@ export declare const get: {
|
|
|
434
460
|
*
|
|
435
461
|
* // Cache miss - triggers lookup function
|
|
436
462
|
* const result1 = yield* Cache.get(cache, "hello")
|
|
437
|
-
* console.log(result1) // 5
|
|
438
463
|
*
|
|
439
464
|
* // Cache hit - returns cached value without lookup
|
|
440
465
|
* const result2 = yield* Cache.get(cache, "hello")
|
|
441
|
-
* console.log(result2) // 5 (from cache)
|
|
442
466
|
*
|
|
443
467
|
* return { result1, result2 }
|
|
444
468
|
* })
|
|
469
|
+
*
|
|
470
|
+
* const actual = await Effect.runPromise(program)
|
|
471
|
+
* actual // => { result1: 5, result2: 5 }
|
|
445
472
|
* ```
|
|
446
473
|
*
|
|
447
474
|
* **Example** (Handling lookup failures)
|
|
448
475
|
*
|
|
449
|
-
* ```ts
|
|
450
|
-
* import { Cache, Effect } from "effect"
|
|
476
|
+
* ```ts import.meta.vitest
|
|
477
|
+
* import { Cache, Effect, Exit } from "effect"
|
|
451
478
|
*
|
|
452
479
|
* // Error handling when lookup fails
|
|
453
480
|
* const program = Effect.gen(function*() {
|
|
@@ -461,17 +488,19 @@ export declare const get: {
|
|
|
461
488
|
*
|
|
462
489
|
* // Successful lookup
|
|
463
490
|
* const success = yield* Cache.get(cache, "hello")
|
|
464
|
-
* console.log(success) // 5
|
|
465
491
|
*
|
|
466
492
|
* // Failed lookup - returns error
|
|
467
493
|
* const failure = yield* Effect.exit(Cache.get(cache, "error"))
|
|
468
|
-
*
|
|
494
|
+
* return [success, failure] as const
|
|
469
495
|
* })
|
|
496
|
+
*
|
|
497
|
+
* const actual = await Effect.runPromise(program)
|
|
498
|
+
* actual // => [5, Exit.fail("Lookup failed")]
|
|
470
499
|
* ```
|
|
471
500
|
*
|
|
472
501
|
* **Example** (Sharing concurrent lookups)
|
|
473
502
|
*
|
|
474
|
-
* ```ts
|
|
503
|
+
* ```ts import.meta.vitest
|
|
475
504
|
* import { Cache, Effect } from "effect"
|
|
476
505
|
*
|
|
477
506
|
* // Concurrent access - multiple gets of same key only invoke lookup once
|
|
@@ -493,9 +522,11 @@ export declare const get: {
|
|
|
493
522
|
* Cache.get(cache, "hello")
|
|
494
523
|
* ], { concurrency: "unbounded" })
|
|
495
524
|
*
|
|
496
|
-
*
|
|
497
|
-
* console.log(lookupCount) // 1 (lookup called only once)
|
|
525
|
+
* return { results, lookupCount }
|
|
498
526
|
* })
|
|
527
|
+
*
|
|
528
|
+
* const actual = await Effect.runPromise(program)
|
|
529
|
+
* actual // => { results: [5, 5, 5], lookupCount: 1 }
|
|
499
530
|
* ```
|
|
500
531
|
*
|
|
501
532
|
* @category combinators
|
|
@@ -515,8 +546,8 @@ export declare const get: {
|
|
|
515
546
|
*
|
|
516
547
|
* **Example** (Reading cached values without lookup)
|
|
517
548
|
*
|
|
518
|
-
* ```ts
|
|
519
|
-
* import { Cache, Effect } from "effect"
|
|
549
|
+
* ```ts import.meta.vitest
|
|
550
|
+
* import { Cache, Effect, Option } from "effect"
|
|
520
551
|
*
|
|
521
552
|
* const program = Effect.gen(function*() {
|
|
522
553
|
* const cache = yield* Cache.make({
|
|
@@ -526,23 +557,23 @@ export declare const get: {
|
|
|
526
557
|
*
|
|
527
558
|
* // No value in cache yet - returns None without lookup
|
|
528
559
|
* const empty = yield* Cache.getOption(cache, "hello")
|
|
529
|
-
* console.log(empty) // Option.none()
|
|
530
560
|
*
|
|
531
561
|
* // Populate cache using get
|
|
532
562
|
* yield* Cache.get(cache, "hello")
|
|
533
563
|
*
|
|
534
564
|
* // Now getOption returns the cached value
|
|
535
565
|
* const cached = yield* Cache.getOption(cache, "hello")
|
|
536
|
-
*
|
|
537
|
-
*
|
|
538
|
-
* return { empty, cached }
|
|
566
|
+
* return [empty, cached] as const
|
|
539
567
|
* })
|
|
568
|
+
*
|
|
569
|
+
* const actual = await Effect.runPromise(program)
|
|
570
|
+
* actual // => [Option.none(), Option.some(5)]
|
|
540
571
|
* ```
|
|
541
572
|
*
|
|
542
573
|
* **Example** (Skipping expired entries)
|
|
543
574
|
*
|
|
544
|
-
* ```ts
|
|
545
|
-
* import { Cache, Effect } from "effect"
|
|
575
|
+
* ```ts import.meta.vitest
|
|
576
|
+
* import { Cache, Effect, Option } from "effect"
|
|
546
577
|
* import { TestClock } from "effect/testing"
|
|
547
578
|
*
|
|
548
579
|
* // Expired entries return None
|
|
@@ -558,21 +589,23 @@ export declare const get: {
|
|
|
558
589
|
*
|
|
559
590
|
* // Value exists before expiration
|
|
560
591
|
* const beforeExpiry = yield* Cache.getOption(cache, "hello")
|
|
561
|
-
* console.log(beforeExpiry) // Option.some(5)
|
|
562
592
|
*
|
|
563
593
|
* // Simulate time passing
|
|
564
594
|
* yield* TestClock.adjust("2 hours")
|
|
565
595
|
*
|
|
566
596
|
* // Value expired - returns None
|
|
567
597
|
* const afterExpiry = yield* Cache.getOption(cache, "hello")
|
|
568
|
-
*
|
|
598
|
+
* return [beforeExpiry, afterExpiry] as const
|
|
569
599
|
* })
|
|
600
|
+
*
|
|
601
|
+
* const actual = await Effect.runPromise(Effect.provide(program, TestClock.layer()))
|
|
602
|
+
* actual // => [Option.some(5), Option.none()]
|
|
570
603
|
* ```
|
|
571
604
|
*
|
|
572
605
|
* **Example** (Waiting for pending lookups)
|
|
573
606
|
*
|
|
574
|
-
* ```ts
|
|
575
|
-
* import { Cache, Deferred, Effect, Fiber } from "effect"
|
|
607
|
+
* ```ts import.meta.vitest
|
|
608
|
+
* import { Cache, Deferred, Effect, Fiber, Option } from "effect"
|
|
576
609
|
*
|
|
577
610
|
* // Waits for ongoing computation to complete
|
|
578
611
|
* const program = Effect.gen(function*() {
|
|
@@ -592,11 +625,12 @@ export declare const get: {
|
|
|
592
625
|
* yield* Deferred.succeed(deferred, void 0)
|
|
593
626
|
*
|
|
594
627
|
* const result = yield* Fiber.join(optionFiber)
|
|
595
|
-
* console.log(result) // Option.some(42)
|
|
596
|
-
*
|
|
597
628
|
* const value = yield* Fiber.join(getFiber)
|
|
598
|
-
*
|
|
629
|
+
* return [result, value] as const
|
|
599
630
|
* })
|
|
631
|
+
*
|
|
632
|
+
* const actual = await Effect.runPromise(program)
|
|
633
|
+
* actual // => [Option.some(42), 42]
|
|
600
634
|
* ```
|
|
601
635
|
*
|
|
602
636
|
* @category combinators
|
|
@@ -615,8 +649,8 @@ export declare const getOption: {
|
|
|
615
649
|
*
|
|
616
650
|
* **Example** (Reading cached values without lookup)
|
|
617
651
|
*
|
|
618
|
-
* ```ts
|
|
619
|
-
* import { Cache, Effect } from "effect"
|
|
652
|
+
* ```ts import.meta.vitest
|
|
653
|
+
* import { Cache, Effect, Option } from "effect"
|
|
620
654
|
*
|
|
621
655
|
* const program = Effect.gen(function*() {
|
|
622
656
|
* const cache = yield* Cache.make({
|
|
@@ -626,23 +660,23 @@ export declare const getOption: {
|
|
|
626
660
|
*
|
|
627
661
|
* // No value in cache yet - returns None without lookup
|
|
628
662
|
* const empty = yield* Cache.getOption(cache, "hello")
|
|
629
|
-
* console.log(empty) // Option.none()
|
|
630
663
|
*
|
|
631
664
|
* // Populate cache using get
|
|
632
665
|
* yield* Cache.get(cache, "hello")
|
|
633
666
|
*
|
|
634
667
|
* // Now getOption returns the cached value
|
|
635
668
|
* const cached = yield* Cache.getOption(cache, "hello")
|
|
636
|
-
*
|
|
637
|
-
*
|
|
638
|
-
* return { empty, cached }
|
|
669
|
+
* return [empty, cached] as const
|
|
639
670
|
* })
|
|
671
|
+
*
|
|
672
|
+
* const actual = await Effect.runPromise(program)
|
|
673
|
+
* actual // => [Option.none(), Option.some(5)]
|
|
640
674
|
* ```
|
|
641
675
|
*
|
|
642
676
|
* **Example** (Skipping expired entries)
|
|
643
677
|
*
|
|
644
|
-
* ```ts
|
|
645
|
-
* import { Cache, Effect } from "effect"
|
|
678
|
+
* ```ts import.meta.vitest
|
|
679
|
+
* import { Cache, Effect, Option } from "effect"
|
|
646
680
|
* import { TestClock } from "effect/testing"
|
|
647
681
|
*
|
|
648
682
|
* // Expired entries return None
|
|
@@ -658,21 +692,23 @@ export declare const getOption: {
|
|
|
658
692
|
*
|
|
659
693
|
* // Value exists before expiration
|
|
660
694
|
* const beforeExpiry = yield* Cache.getOption(cache, "hello")
|
|
661
|
-
* console.log(beforeExpiry) // Option.some(5)
|
|
662
695
|
*
|
|
663
696
|
* // Simulate time passing
|
|
664
697
|
* yield* TestClock.adjust("2 hours")
|
|
665
698
|
*
|
|
666
699
|
* // Value expired - returns None
|
|
667
700
|
* const afterExpiry = yield* Cache.getOption(cache, "hello")
|
|
668
|
-
*
|
|
701
|
+
* return [beforeExpiry, afterExpiry] as const
|
|
669
702
|
* })
|
|
703
|
+
*
|
|
704
|
+
* const actual = await Effect.runPromise(Effect.provide(program, TestClock.layer()))
|
|
705
|
+
* actual // => [Option.some(5), Option.none()]
|
|
670
706
|
* ```
|
|
671
707
|
*
|
|
672
708
|
* **Example** (Waiting for pending lookups)
|
|
673
709
|
*
|
|
674
|
-
* ```ts
|
|
675
|
-
* import { Cache, Deferred, Effect, Fiber } from "effect"
|
|
710
|
+
* ```ts import.meta.vitest
|
|
711
|
+
* import { Cache, Deferred, Effect, Fiber, Option } from "effect"
|
|
676
712
|
*
|
|
677
713
|
* // Waits for ongoing computation to complete
|
|
678
714
|
* const program = Effect.gen(function*() {
|
|
@@ -692,11 +728,12 @@ export declare const getOption: {
|
|
|
692
728
|
* yield* Deferred.succeed(deferred, void 0)
|
|
693
729
|
*
|
|
694
730
|
* const result = yield* Fiber.join(optionFiber)
|
|
695
|
-
* console.log(result) // Option.some(42)
|
|
696
|
-
*
|
|
697
731
|
* const value = yield* Fiber.join(getFiber)
|
|
698
|
-
*
|
|
732
|
+
* return [result, value] as const
|
|
699
733
|
* })
|
|
734
|
+
*
|
|
735
|
+
* const actual = await Effect.runPromise(program)
|
|
736
|
+
* actual // => [Option.some(42), 42]
|
|
700
737
|
* ```
|
|
701
738
|
*
|
|
702
739
|
* @category combinators
|
|
@@ -715,8 +752,8 @@ export declare const getOption: {
|
|
|
715
752
|
*
|
|
716
753
|
* **Example** (Reading cached values without lookup)
|
|
717
754
|
*
|
|
718
|
-
* ```ts
|
|
719
|
-
* import { Cache, Effect } from "effect"
|
|
755
|
+
* ```ts import.meta.vitest
|
|
756
|
+
* import { Cache, Effect, Option } from "effect"
|
|
720
757
|
*
|
|
721
758
|
* const program = Effect.gen(function*() {
|
|
722
759
|
* const cache = yield* Cache.make({
|
|
@@ -726,23 +763,23 @@ export declare const getOption: {
|
|
|
726
763
|
*
|
|
727
764
|
* // No value in cache yet - returns None without lookup
|
|
728
765
|
* const empty = yield* Cache.getOption(cache, "hello")
|
|
729
|
-
* console.log(empty) // Option.none()
|
|
730
766
|
*
|
|
731
767
|
* // Populate cache using get
|
|
732
768
|
* yield* Cache.get(cache, "hello")
|
|
733
769
|
*
|
|
734
770
|
* // Now getOption returns the cached value
|
|
735
771
|
* const cached = yield* Cache.getOption(cache, "hello")
|
|
736
|
-
*
|
|
737
|
-
*
|
|
738
|
-
* return { empty, cached }
|
|
772
|
+
* return [empty, cached] as const
|
|
739
773
|
* })
|
|
774
|
+
*
|
|
775
|
+
* const actual = await Effect.runPromise(program)
|
|
776
|
+
* actual // => [Option.none(), Option.some(5)]
|
|
740
777
|
* ```
|
|
741
778
|
*
|
|
742
779
|
* **Example** (Skipping expired entries)
|
|
743
780
|
*
|
|
744
|
-
* ```ts
|
|
745
|
-
* import { Cache, Effect } from "effect"
|
|
781
|
+
* ```ts import.meta.vitest
|
|
782
|
+
* import { Cache, Effect, Option } from "effect"
|
|
746
783
|
* import { TestClock } from "effect/testing"
|
|
747
784
|
*
|
|
748
785
|
* // Expired entries return None
|
|
@@ -758,21 +795,23 @@ export declare const getOption: {
|
|
|
758
795
|
*
|
|
759
796
|
* // Value exists before expiration
|
|
760
797
|
* const beforeExpiry = yield* Cache.getOption(cache, "hello")
|
|
761
|
-
* console.log(beforeExpiry) // Option.some(5)
|
|
762
798
|
*
|
|
763
799
|
* // Simulate time passing
|
|
764
800
|
* yield* TestClock.adjust("2 hours")
|
|
765
801
|
*
|
|
766
802
|
* // Value expired - returns None
|
|
767
803
|
* const afterExpiry = yield* Cache.getOption(cache, "hello")
|
|
768
|
-
*
|
|
804
|
+
* return [beforeExpiry, afterExpiry] as const
|
|
769
805
|
* })
|
|
806
|
+
*
|
|
807
|
+
* const actual = await Effect.runPromise(Effect.provide(program, TestClock.layer()))
|
|
808
|
+
* actual // => [Option.some(5), Option.none()]
|
|
770
809
|
* ```
|
|
771
810
|
*
|
|
772
811
|
* **Example** (Waiting for pending lookups)
|
|
773
812
|
*
|
|
774
|
-
* ```ts
|
|
775
|
-
* import { Cache, Deferred, Effect, Fiber } from "effect"
|
|
813
|
+
* ```ts import.meta.vitest
|
|
814
|
+
* import { Cache, Deferred, Effect, Fiber, Option } from "effect"
|
|
776
815
|
*
|
|
777
816
|
* // Waits for ongoing computation to complete
|
|
778
817
|
* const program = Effect.gen(function*() {
|
|
@@ -792,11 +831,12 @@ export declare const getOption: {
|
|
|
792
831
|
* yield* Deferred.succeed(deferred, void 0)
|
|
793
832
|
*
|
|
794
833
|
* const result = yield* Fiber.join(optionFiber)
|
|
795
|
-
* console.log(result) // Option.some(42)
|
|
796
|
-
*
|
|
797
834
|
* const value = yield* Fiber.join(getFiber)
|
|
798
|
-
*
|
|
835
|
+
* return [result, value] as const
|
|
799
836
|
* })
|
|
837
|
+
*
|
|
838
|
+
* const actual = await Effect.runPromise(program)
|
|
839
|
+
* actual // => [Option.some(42), 42]
|
|
800
840
|
* ```
|
|
801
841
|
*
|
|
802
842
|
* @category combinators
|
|
@@ -862,7 +902,7 @@ export declare const getSuccess: {
|
|
|
862
902
|
*
|
|
863
903
|
* **Example** (Setting values directly)
|
|
864
904
|
*
|
|
865
|
-
* ```ts
|
|
905
|
+
* ```ts import.meta.vitest
|
|
866
906
|
* import { Cache, Effect } from "effect"
|
|
867
907
|
*
|
|
868
908
|
* const program = Effect.gen(function*() {
|
|
@@ -873,14 +913,16 @@ export declare const getSuccess: {
|
|
|
873
913
|
*
|
|
874
914
|
* // Set a value directly without invoking lookup
|
|
875
915
|
* yield* Cache.set(cache, "hello", 42)
|
|
876
|
-
*
|
|
877
|
-
* console.log(result) // 42 (not 5 from lookup)
|
|
916
|
+
* return yield* Cache.get(cache, "hello")
|
|
878
917
|
* })
|
|
918
|
+
*
|
|
919
|
+
* const actual = await Effect.runPromise(program)
|
|
920
|
+
* actual // => 42
|
|
879
921
|
* ```
|
|
880
922
|
*
|
|
881
923
|
* **Example** (Overwriting cached values)
|
|
882
924
|
*
|
|
883
|
-
* ```ts
|
|
925
|
+
* ```ts import.meta.vitest
|
|
884
926
|
* import { Cache, Effect } from "effect"
|
|
885
927
|
*
|
|
886
928
|
* // Overwriting existing cached values
|
|
@@ -897,13 +939,16 @@ export declare const getSuccess: {
|
|
|
897
939
|
* yield* Cache.set(cache, "test", 999)
|
|
898
940
|
* const updated = yield* Cache.get(cache, "test") // 999
|
|
899
941
|
*
|
|
900
|
-
*
|
|
942
|
+
* return { original, updated }
|
|
901
943
|
* })
|
|
944
|
+
*
|
|
945
|
+
* const actual = await Effect.runPromise(program)
|
|
946
|
+
* actual // => { original: 4, updated: 999 }
|
|
902
947
|
* ```
|
|
903
948
|
*
|
|
904
949
|
* **Example** (Applying TTL to set values)
|
|
905
950
|
*
|
|
906
|
-
* ```ts
|
|
951
|
+
* ```ts import.meta.vitest
|
|
907
952
|
* import { Cache, Effect } from "effect"
|
|
908
953
|
* import { TestClock } from "effect/testing"
|
|
909
954
|
*
|
|
@@ -917,17 +962,21 @@ export declare const getSuccess: {
|
|
|
917
962
|
*
|
|
918
963
|
* // Set value with TTL applied
|
|
919
964
|
* yield* Cache.set(cache, "temporary", 123)
|
|
920
|
-
*
|
|
965
|
+
* const beforeExpiry = yield* Cache.has(cache, "temporary")
|
|
921
966
|
*
|
|
922
967
|
* // Advance time past TTL
|
|
923
968
|
* yield* TestClock.adjust("2 hours")
|
|
924
|
-
*
|
|
969
|
+
* const afterExpiry = yield* Cache.has(cache, "temporary")
|
|
970
|
+
* return [beforeExpiry, afterExpiry]
|
|
925
971
|
* })
|
|
972
|
+
*
|
|
973
|
+
* const actual = await Effect.runPromise(Effect.provide(program, TestClock.layer()))
|
|
974
|
+
* actual // => [true, false]
|
|
926
975
|
* ```
|
|
927
976
|
*
|
|
928
977
|
* **Example** (Enforcing capacity when setting values)
|
|
929
978
|
*
|
|
930
|
-
* ```ts
|
|
979
|
+
* ```ts import.meta.vitest
|
|
931
980
|
* import { Cache, Effect } from "effect"
|
|
932
981
|
*
|
|
933
982
|
* // Capacity enforcement with set operations
|
|
@@ -940,14 +989,18 @@ export declare const getSuccess: {
|
|
|
940
989
|
* // Fill cache to capacity
|
|
941
990
|
* yield* Cache.set(cache, "a", 1)
|
|
942
991
|
* yield* Cache.set(cache, "b", 2)
|
|
943
|
-
*
|
|
992
|
+
* const sizeBeforeEviction = yield* Cache.size(cache)
|
|
944
993
|
*
|
|
945
994
|
* // Adding another entry evicts oldest
|
|
946
995
|
* yield* Cache.set(cache, "c", 3)
|
|
947
|
-
*
|
|
948
|
-
*
|
|
949
|
-
*
|
|
996
|
+
* const sizeAfterEviction = yield* Cache.size(cache)
|
|
997
|
+
* const hasOldest = yield* Cache.has(cache, "a")
|
|
998
|
+
* const hasNewest = yield* Cache.has(cache, "c")
|
|
999
|
+
* return [sizeBeforeEviction, sizeAfterEviction, hasOldest, hasNewest]
|
|
950
1000
|
* })
|
|
1001
|
+
*
|
|
1002
|
+
* const actual = await Effect.runPromise(program)
|
|
1003
|
+
* actual // => [2, 2, false, true]
|
|
951
1004
|
* ```
|
|
952
1005
|
*
|
|
953
1006
|
* @category combinators
|
|
@@ -960,7 +1013,7 @@ export declare const set: {
|
|
|
960
1013
|
*
|
|
961
1014
|
* **Example** (Setting values directly)
|
|
962
1015
|
*
|
|
963
|
-
* ```ts
|
|
1016
|
+
* ```ts import.meta.vitest
|
|
964
1017
|
* import { Cache, Effect } from "effect"
|
|
965
1018
|
*
|
|
966
1019
|
* const program = Effect.gen(function*() {
|
|
@@ -971,14 +1024,16 @@ export declare const set: {
|
|
|
971
1024
|
*
|
|
972
1025
|
* // Set a value directly without invoking lookup
|
|
973
1026
|
* yield* Cache.set(cache, "hello", 42)
|
|
974
|
-
*
|
|
975
|
-
* console.log(result) // 42 (not 5 from lookup)
|
|
1027
|
+
* return yield* Cache.get(cache, "hello")
|
|
976
1028
|
* })
|
|
1029
|
+
*
|
|
1030
|
+
* const actual = await Effect.runPromise(program)
|
|
1031
|
+
* actual // => 42
|
|
977
1032
|
* ```
|
|
978
1033
|
*
|
|
979
1034
|
* **Example** (Overwriting cached values)
|
|
980
1035
|
*
|
|
981
|
-
* ```ts
|
|
1036
|
+
* ```ts import.meta.vitest
|
|
982
1037
|
* import { Cache, Effect } from "effect"
|
|
983
1038
|
*
|
|
984
1039
|
* // Overwriting existing cached values
|
|
@@ -995,13 +1050,16 @@ export declare const set: {
|
|
|
995
1050
|
* yield* Cache.set(cache, "test", 999)
|
|
996
1051
|
* const updated = yield* Cache.get(cache, "test") // 999
|
|
997
1052
|
*
|
|
998
|
-
*
|
|
1053
|
+
* return { original, updated }
|
|
999
1054
|
* })
|
|
1055
|
+
*
|
|
1056
|
+
* const actual = await Effect.runPromise(program)
|
|
1057
|
+
* actual // => { original: 4, updated: 999 }
|
|
1000
1058
|
* ```
|
|
1001
1059
|
*
|
|
1002
1060
|
* **Example** (Applying TTL to set values)
|
|
1003
1061
|
*
|
|
1004
|
-
* ```ts
|
|
1062
|
+
* ```ts import.meta.vitest
|
|
1005
1063
|
* import { Cache, Effect } from "effect"
|
|
1006
1064
|
* import { TestClock } from "effect/testing"
|
|
1007
1065
|
*
|
|
@@ -1015,17 +1073,21 @@ export declare const set: {
|
|
|
1015
1073
|
*
|
|
1016
1074
|
* // Set value with TTL applied
|
|
1017
1075
|
* yield* Cache.set(cache, "temporary", 123)
|
|
1018
|
-
*
|
|
1076
|
+
* const beforeExpiry = yield* Cache.has(cache, "temporary")
|
|
1019
1077
|
*
|
|
1020
1078
|
* // Advance time past TTL
|
|
1021
1079
|
* yield* TestClock.adjust("2 hours")
|
|
1022
|
-
*
|
|
1080
|
+
* const afterExpiry = yield* Cache.has(cache, "temporary")
|
|
1081
|
+
* return [beforeExpiry, afterExpiry]
|
|
1023
1082
|
* })
|
|
1083
|
+
*
|
|
1084
|
+
* const actual = await Effect.runPromise(Effect.provide(program, TestClock.layer()))
|
|
1085
|
+
* actual // => [true, false]
|
|
1024
1086
|
* ```
|
|
1025
1087
|
*
|
|
1026
1088
|
* **Example** (Enforcing capacity when setting values)
|
|
1027
1089
|
*
|
|
1028
|
-
* ```ts
|
|
1090
|
+
* ```ts import.meta.vitest
|
|
1029
1091
|
* import { Cache, Effect } from "effect"
|
|
1030
1092
|
*
|
|
1031
1093
|
* // Capacity enforcement with set operations
|
|
@@ -1038,14 +1100,18 @@ export declare const set: {
|
|
|
1038
1100
|
* // Fill cache to capacity
|
|
1039
1101
|
* yield* Cache.set(cache, "a", 1)
|
|
1040
1102
|
* yield* Cache.set(cache, "b", 2)
|
|
1041
|
-
*
|
|
1103
|
+
* const sizeBeforeEviction = yield* Cache.size(cache)
|
|
1042
1104
|
*
|
|
1043
1105
|
* // Adding another entry evicts oldest
|
|
1044
1106
|
* yield* Cache.set(cache, "c", 3)
|
|
1045
|
-
*
|
|
1046
|
-
*
|
|
1047
|
-
*
|
|
1107
|
+
* const sizeAfterEviction = yield* Cache.size(cache)
|
|
1108
|
+
* const hasOldest = yield* Cache.has(cache, "a")
|
|
1109
|
+
* const hasNewest = yield* Cache.has(cache, "c")
|
|
1110
|
+
* return [sizeBeforeEviction, sizeAfterEviction, hasOldest, hasNewest]
|
|
1048
1111
|
* })
|
|
1112
|
+
*
|
|
1113
|
+
* const actual = await Effect.runPromise(program)
|
|
1114
|
+
* actual // => [2, 2, false, true]
|
|
1049
1115
|
* ```
|
|
1050
1116
|
*
|
|
1051
1117
|
* @category combinators
|
|
@@ -1058,7 +1124,7 @@ export declare const set: {
|
|
|
1058
1124
|
*
|
|
1059
1125
|
* **Example** (Setting values directly)
|
|
1060
1126
|
*
|
|
1061
|
-
* ```ts
|
|
1127
|
+
* ```ts import.meta.vitest
|
|
1062
1128
|
* import { Cache, Effect } from "effect"
|
|
1063
1129
|
*
|
|
1064
1130
|
* const program = Effect.gen(function*() {
|
|
@@ -1069,14 +1135,16 @@ export declare const set: {
|
|
|
1069
1135
|
*
|
|
1070
1136
|
* // Set a value directly without invoking lookup
|
|
1071
1137
|
* yield* Cache.set(cache, "hello", 42)
|
|
1072
|
-
*
|
|
1073
|
-
* console.log(result) // 42 (not 5 from lookup)
|
|
1138
|
+
* return yield* Cache.get(cache, "hello")
|
|
1074
1139
|
* })
|
|
1140
|
+
*
|
|
1141
|
+
* const actual = await Effect.runPromise(program)
|
|
1142
|
+
* actual // => 42
|
|
1075
1143
|
* ```
|
|
1076
1144
|
*
|
|
1077
1145
|
* **Example** (Overwriting cached values)
|
|
1078
1146
|
*
|
|
1079
|
-
* ```ts
|
|
1147
|
+
* ```ts import.meta.vitest
|
|
1080
1148
|
* import { Cache, Effect } from "effect"
|
|
1081
1149
|
*
|
|
1082
1150
|
* // Overwriting existing cached values
|
|
@@ -1093,13 +1161,16 @@ export declare const set: {
|
|
|
1093
1161
|
* yield* Cache.set(cache, "test", 999)
|
|
1094
1162
|
* const updated = yield* Cache.get(cache, "test") // 999
|
|
1095
1163
|
*
|
|
1096
|
-
*
|
|
1164
|
+
* return { original, updated }
|
|
1097
1165
|
* })
|
|
1166
|
+
*
|
|
1167
|
+
* const actual = await Effect.runPromise(program)
|
|
1168
|
+
* actual // => { original: 4, updated: 999 }
|
|
1098
1169
|
* ```
|
|
1099
1170
|
*
|
|
1100
1171
|
* **Example** (Applying TTL to set values)
|
|
1101
1172
|
*
|
|
1102
|
-
* ```ts
|
|
1173
|
+
* ```ts import.meta.vitest
|
|
1103
1174
|
* import { Cache, Effect } from "effect"
|
|
1104
1175
|
* import { TestClock } from "effect/testing"
|
|
1105
1176
|
*
|
|
@@ -1113,17 +1184,21 @@ export declare const set: {
|
|
|
1113
1184
|
*
|
|
1114
1185
|
* // Set value with TTL applied
|
|
1115
1186
|
* yield* Cache.set(cache, "temporary", 123)
|
|
1116
|
-
*
|
|
1187
|
+
* const beforeExpiry = yield* Cache.has(cache, "temporary")
|
|
1117
1188
|
*
|
|
1118
1189
|
* // Advance time past TTL
|
|
1119
1190
|
* yield* TestClock.adjust("2 hours")
|
|
1120
|
-
*
|
|
1191
|
+
* const afterExpiry = yield* Cache.has(cache, "temporary")
|
|
1192
|
+
* return [beforeExpiry, afterExpiry]
|
|
1121
1193
|
* })
|
|
1194
|
+
*
|
|
1195
|
+
* const actual = await Effect.runPromise(Effect.provide(program, TestClock.layer()))
|
|
1196
|
+
* actual // => [true, false]
|
|
1122
1197
|
* ```
|
|
1123
1198
|
*
|
|
1124
1199
|
* **Example** (Enforcing capacity when setting values)
|
|
1125
1200
|
*
|
|
1126
|
-
* ```ts
|
|
1201
|
+
* ```ts import.meta.vitest
|
|
1127
1202
|
* import { Cache, Effect } from "effect"
|
|
1128
1203
|
*
|
|
1129
1204
|
* // Capacity enforcement with set operations
|
|
@@ -1136,14 +1211,18 @@ export declare const set: {
|
|
|
1136
1211
|
* // Fill cache to capacity
|
|
1137
1212
|
* yield* Cache.set(cache, "a", 1)
|
|
1138
1213
|
* yield* Cache.set(cache, "b", 2)
|
|
1139
|
-
*
|
|
1214
|
+
* const sizeBeforeEviction = yield* Cache.size(cache)
|
|
1140
1215
|
*
|
|
1141
1216
|
* // Adding another entry evicts oldest
|
|
1142
1217
|
* yield* Cache.set(cache, "c", 3)
|
|
1143
|
-
*
|
|
1144
|
-
*
|
|
1145
|
-
*
|
|
1218
|
+
* const sizeAfterEviction = yield* Cache.size(cache)
|
|
1219
|
+
* const hasOldest = yield* Cache.has(cache, "a")
|
|
1220
|
+
* const hasNewest = yield* Cache.has(cache, "c")
|
|
1221
|
+
* return [sizeBeforeEviction, sizeAfterEviction, hasOldest, hasNewest]
|
|
1146
1222
|
* })
|
|
1223
|
+
*
|
|
1224
|
+
* const actual = await Effect.runPromise(program)
|
|
1225
|
+
* actual // => [2, 2, false, true]
|
|
1147
1226
|
* ```
|
|
1148
1227
|
*
|
|
1149
1228
|
* @category combinators
|
|
@@ -1161,7 +1240,7 @@ export declare const set: {
|
|
|
1161
1240
|
*
|
|
1162
1241
|
* **Example** (Checking for cached keys)
|
|
1163
1242
|
*
|
|
1164
|
-
* ```ts
|
|
1243
|
+
* ```ts import.meta.vitest
|
|
1165
1244
|
* import { Cache, Effect } from "effect"
|
|
1166
1245
|
*
|
|
1167
1246
|
* const program = Effect.gen(function*() {
|
|
@@ -1171,17 +1250,21 @@ export declare const set: {
|
|
|
1171
1250
|
* })
|
|
1172
1251
|
*
|
|
1173
1252
|
* // Check non-existent key
|
|
1174
|
-
*
|
|
1253
|
+
* const missing = yield* Cache.has(cache, "missing")
|
|
1175
1254
|
*
|
|
1176
1255
|
* // Add entry and check existence
|
|
1177
1256
|
* yield* Cache.get(cache, "hello")
|
|
1178
|
-
*
|
|
1257
|
+
* const present = yield* Cache.has(cache, "hello")
|
|
1258
|
+
* return [missing, present]
|
|
1179
1259
|
* })
|
|
1260
|
+
*
|
|
1261
|
+
* const actual = await Effect.runPromise(program)
|
|
1262
|
+
* actual // => [false, true]
|
|
1180
1263
|
* ```
|
|
1181
1264
|
*
|
|
1182
1265
|
* **Example** (Checking TTL expiration)
|
|
1183
1266
|
*
|
|
1184
|
-
* ```ts
|
|
1267
|
+
* ```ts import.meta.vitest
|
|
1185
1268
|
* import { Cache, Effect } from "effect"
|
|
1186
1269
|
* import { TestClock } from "effect/testing"
|
|
1187
1270
|
*
|
|
@@ -1195,21 +1278,25 @@ export declare const set: {
|
|
|
1195
1278
|
*
|
|
1196
1279
|
* // Add entry with TTL
|
|
1197
1280
|
* yield* Cache.get(cache, "expires")
|
|
1198
|
-
*
|
|
1281
|
+
* const initial = yield* Cache.has(cache, "expires")
|
|
1199
1282
|
*
|
|
1200
1283
|
* // Still valid before expiration
|
|
1201
1284
|
* yield* TestClock.adjust("30 minutes")
|
|
1202
|
-
*
|
|
1285
|
+
* const beforeExpiry = yield* Cache.has(cache, "expires")
|
|
1203
1286
|
*
|
|
1204
1287
|
* // Expired after TTL
|
|
1205
1288
|
* yield* TestClock.adjust("31 minutes")
|
|
1206
|
-
*
|
|
1289
|
+
* const afterExpiry = yield* Cache.has(cache, "expires")
|
|
1290
|
+
* return [initial, beforeExpiry, afterExpiry]
|
|
1207
1291
|
* })
|
|
1292
|
+
*
|
|
1293
|
+
* const actual = await Effect.runPromise(Effect.provide(program, TestClock.layer()))
|
|
1294
|
+
* actual // => [true, true, false]
|
|
1208
1295
|
* ```
|
|
1209
1296
|
*
|
|
1210
1297
|
* **Example** (Checking multiple keys)
|
|
1211
1298
|
*
|
|
1212
|
-
* ```ts
|
|
1299
|
+
* ```ts import.meta.vitest
|
|
1213
1300
|
* import { Cache, Effect } from "effect"
|
|
1214
1301
|
*
|
|
1215
1302
|
* // Checking multiple keys efficiently
|
|
@@ -1225,16 +1312,16 @@ export declare const set: {
|
|
|
1225
1312
|
*
|
|
1226
1313
|
* // Check multiple keys
|
|
1227
1314
|
* const keys = ["apple", "banana", "cherry", "date"]
|
|
1315
|
+
* const results: Array<string> = []
|
|
1228
1316
|
* for (const key of keys) {
|
|
1229
1317
|
* const exists = yield* Cache.has(cache, key)
|
|
1230
|
-
*
|
|
1318
|
+
* results.push(`${key}: ${exists}`)
|
|
1231
1319
|
* }
|
|
1232
|
-
*
|
|
1233
|
-
* // apple: true
|
|
1234
|
-
* // banana: true
|
|
1235
|
-
* // cherry: false
|
|
1236
|
-
* // date: false
|
|
1320
|
+
* return results
|
|
1237
1321
|
* })
|
|
1322
|
+
*
|
|
1323
|
+
* const actual = await Effect.runPromise(program)
|
|
1324
|
+
* actual // => ["apple: true", "banana: true", "cherry: false", "date: false"]
|
|
1238
1325
|
* ```
|
|
1239
1326
|
*
|
|
1240
1327
|
* @category combinators
|
|
@@ -1251,7 +1338,7 @@ export declare const has: {
|
|
|
1251
1338
|
*
|
|
1252
1339
|
* **Example** (Checking for cached keys)
|
|
1253
1340
|
*
|
|
1254
|
-
* ```ts
|
|
1341
|
+
* ```ts import.meta.vitest
|
|
1255
1342
|
* import { Cache, Effect } from "effect"
|
|
1256
1343
|
*
|
|
1257
1344
|
* const program = Effect.gen(function*() {
|
|
@@ -1261,17 +1348,21 @@ export declare const has: {
|
|
|
1261
1348
|
* })
|
|
1262
1349
|
*
|
|
1263
1350
|
* // Check non-existent key
|
|
1264
|
-
*
|
|
1351
|
+
* const missing = yield* Cache.has(cache, "missing")
|
|
1265
1352
|
*
|
|
1266
1353
|
* // Add entry and check existence
|
|
1267
1354
|
* yield* Cache.get(cache, "hello")
|
|
1268
|
-
*
|
|
1355
|
+
* const present = yield* Cache.has(cache, "hello")
|
|
1356
|
+
* return [missing, present]
|
|
1269
1357
|
* })
|
|
1358
|
+
*
|
|
1359
|
+
* const actual = await Effect.runPromise(program)
|
|
1360
|
+
* actual // => [false, true]
|
|
1270
1361
|
* ```
|
|
1271
1362
|
*
|
|
1272
1363
|
* **Example** (Checking TTL expiration)
|
|
1273
1364
|
*
|
|
1274
|
-
* ```ts
|
|
1365
|
+
* ```ts import.meta.vitest
|
|
1275
1366
|
* import { Cache, Effect } from "effect"
|
|
1276
1367
|
* import { TestClock } from "effect/testing"
|
|
1277
1368
|
*
|
|
@@ -1285,21 +1376,25 @@ export declare const has: {
|
|
|
1285
1376
|
*
|
|
1286
1377
|
* // Add entry with TTL
|
|
1287
1378
|
* yield* Cache.get(cache, "expires")
|
|
1288
|
-
*
|
|
1379
|
+
* const initial = yield* Cache.has(cache, "expires")
|
|
1289
1380
|
*
|
|
1290
1381
|
* // Still valid before expiration
|
|
1291
1382
|
* yield* TestClock.adjust("30 minutes")
|
|
1292
|
-
*
|
|
1383
|
+
* const beforeExpiry = yield* Cache.has(cache, "expires")
|
|
1293
1384
|
*
|
|
1294
1385
|
* // Expired after TTL
|
|
1295
1386
|
* yield* TestClock.adjust("31 minutes")
|
|
1296
|
-
*
|
|
1387
|
+
* const afterExpiry = yield* Cache.has(cache, "expires")
|
|
1388
|
+
* return [initial, beforeExpiry, afterExpiry]
|
|
1297
1389
|
* })
|
|
1390
|
+
*
|
|
1391
|
+
* const actual = await Effect.runPromise(Effect.provide(program, TestClock.layer()))
|
|
1392
|
+
* actual // => [true, true, false]
|
|
1298
1393
|
* ```
|
|
1299
1394
|
*
|
|
1300
1395
|
* **Example** (Checking multiple keys)
|
|
1301
1396
|
*
|
|
1302
|
-
* ```ts
|
|
1397
|
+
* ```ts import.meta.vitest
|
|
1303
1398
|
* import { Cache, Effect } from "effect"
|
|
1304
1399
|
*
|
|
1305
1400
|
* // Checking multiple keys efficiently
|
|
@@ -1315,16 +1410,16 @@ export declare const has: {
|
|
|
1315
1410
|
*
|
|
1316
1411
|
* // Check multiple keys
|
|
1317
1412
|
* const keys = ["apple", "banana", "cherry", "date"]
|
|
1413
|
+
* const results: Array<string> = []
|
|
1318
1414
|
* for (const key of keys) {
|
|
1319
1415
|
* const exists = yield* Cache.has(cache, key)
|
|
1320
|
-
*
|
|
1416
|
+
* results.push(`${key}: ${exists}`)
|
|
1321
1417
|
* }
|
|
1322
|
-
*
|
|
1323
|
-
* // apple: true
|
|
1324
|
-
* // banana: true
|
|
1325
|
-
* // cherry: false
|
|
1326
|
-
* // date: false
|
|
1418
|
+
* return results
|
|
1327
1419
|
* })
|
|
1420
|
+
*
|
|
1421
|
+
* const actual = await Effect.runPromise(program)
|
|
1422
|
+
* actual // => ["apple: true", "banana: true", "cherry: false", "date: false"]
|
|
1328
1423
|
* ```
|
|
1329
1424
|
*
|
|
1330
1425
|
* @category combinators
|
|
@@ -1341,7 +1436,7 @@ export declare const has: {
|
|
|
1341
1436
|
*
|
|
1342
1437
|
* **Example** (Checking for cached keys)
|
|
1343
1438
|
*
|
|
1344
|
-
* ```ts
|
|
1439
|
+
* ```ts import.meta.vitest
|
|
1345
1440
|
* import { Cache, Effect } from "effect"
|
|
1346
1441
|
*
|
|
1347
1442
|
* const program = Effect.gen(function*() {
|
|
@@ -1351,17 +1446,21 @@ export declare const has: {
|
|
|
1351
1446
|
* })
|
|
1352
1447
|
*
|
|
1353
1448
|
* // Check non-existent key
|
|
1354
|
-
*
|
|
1449
|
+
* const missing = yield* Cache.has(cache, "missing")
|
|
1355
1450
|
*
|
|
1356
1451
|
* // Add entry and check existence
|
|
1357
1452
|
* yield* Cache.get(cache, "hello")
|
|
1358
|
-
*
|
|
1453
|
+
* const present = yield* Cache.has(cache, "hello")
|
|
1454
|
+
* return [missing, present]
|
|
1359
1455
|
* })
|
|
1456
|
+
*
|
|
1457
|
+
* const actual = await Effect.runPromise(program)
|
|
1458
|
+
* actual // => [false, true]
|
|
1360
1459
|
* ```
|
|
1361
1460
|
*
|
|
1362
1461
|
* **Example** (Checking TTL expiration)
|
|
1363
1462
|
*
|
|
1364
|
-
* ```ts
|
|
1463
|
+
* ```ts import.meta.vitest
|
|
1365
1464
|
* import { Cache, Effect } from "effect"
|
|
1366
1465
|
* import { TestClock } from "effect/testing"
|
|
1367
1466
|
*
|
|
@@ -1375,21 +1474,25 @@ export declare const has: {
|
|
|
1375
1474
|
*
|
|
1376
1475
|
* // Add entry with TTL
|
|
1377
1476
|
* yield* Cache.get(cache, "expires")
|
|
1378
|
-
*
|
|
1477
|
+
* const initial = yield* Cache.has(cache, "expires")
|
|
1379
1478
|
*
|
|
1380
1479
|
* // Still valid before expiration
|
|
1381
1480
|
* yield* TestClock.adjust("30 minutes")
|
|
1382
|
-
*
|
|
1481
|
+
* const beforeExpiry = yield* Cache.has(cache, "expires")
|
|
1383
1482
|
*
|
|
1384
1483
|
* // Expired after TTL
|
|
1385
1484
|
* yield* TestClock.adjust("31 minutes")
|
|
1386
|
-
*
|
|
1485
|
+
* const afterExpiry = yield* Cache.has(cache, "expires")
|
|
1486
|
+
* return [initial, beforeExpiry, afterExpiry]
|
|
1387
1487
|
* })
|
|
1488
|
+
*
|
|
1489
|
+
* const actual = await Effect.runPromise(Effect.provide(program, TestClock.layer()))
|
|
1490
|
+
* actual // => [true, true, false]
|
|
1388
1491
|
* ```
|
|
1389
1492
|
*
|
|
1390
1493
|
* **Example** (Checking multiple keys)
|
|
1391
1494
|
*
|
|
1392
|
-
* ```ts
|
|
1495
|
+
* ```ts import.meta.vitest
|
|
1393
1496
|
* import { Cache, Effect } from "effect"
|
|
1394
1497
|
*
|
|
1395
1498
|
* // Checking multiple keys efficiently
|
|
@@ -1405,16 +1508,16 @@ export declare const has: {
|
|
|
1405
1508
|
*
|
|
1406
1509
|
* // Check multiple keys
|
|
1407
1510
|
* const keys = ["apple", "banana", "cherry", "date"]
|
|
1511
|
+
* const results: Array<string> = []
|
|
1408
1512
|
* for (const key of keys) {
|
|
1409
1513
|
* const exists = yield* Cache.has(cache, key)
|
|
1410
|
-
*
|
|
1514
|
+
* results.push(`${key}: ${exists}`)
|
|
1411
1515
|
* }
|
|
1412
|
-
*
|
|
1413
|
-
* // apple: true
|
|
1414
|
-
* // banana: true
|
|
1415
|
-
* // cherry: false
|
|
1416
|
-
* // date: false
|
|
1516
|
+
* return results
|
|
1417
1517
|
* })
|
|
1518
|
+
*
|
|
1519
|
+
* const actual = await Effect.runPromise(program)
|
|
1520
|
+
* actual // => ["apple: true", "banana: true", "cherry: false", "date: false"]
|
|
1418
1521
|
* ```
|
|
1419
1522
|
*
|
|
1420
1523
|
* @category combinators
|
|
@@ -1427,7 +1530,7 @@ export declare const has: {
|
|
|
1427
1530
|
*
|
|
1428
1531
|
* **Example** (Invalidating cached entries)
|
|
1429
1532
|
*
|
|
1430
|
-
* ```ts
|
|
1533
|
+
* ```ts import.meta.vitest
|
|
1431
1534
|
* import { Cache, Effect } from "effect"
|
|
1432
1535
|
*
|
|
1433
1536
|
* const program = Effect.gen(function*() {
|
|
@@ -1438,11 +1541,11 @@ export declare const has: {
|
|
|
1438
1541
|
*
|
|
1439
1542
|
* // Add a value to the cache
|
|
1440
1543
|
* yield* Cache.get(cache, "hello")
|
|
1441
|
-
*
|
|
1544
|
+
* const beforeInvalidation = yield* Cache.has(cache, "hello")
|
|
1442
1545
|
*
|
|
1443
1546
|
* // Invalidate the entry
|
|
1444
1547
|
* yield* Cache.invalidate(cache, "hello")
|
|
1445
|
-
*
|
|
1548
|
+
* const afterInvalidation = yield* Cache.has(cache, "hello")
|
|
1446
1549
|
*
|
|
1447
1550
|
* // Invalidating non-existent keys doesn't error
|
|
1448
1551
|
* yield* Cache.invalidate(cache, "nonexistent")
|
|
@@ -1461,7 +1564,11 @@ export declare const has: {
|
|
|
1461
1564
|
* yield* Cache.get(cache2, "test") // lookupCount = 1
|
|
1462
1565
|
* yield* Cache.invalidate(cache2, "test")
|
|
1463
1566
|
* yield* Cache.get(cache2, "test") // lookupCount = 2 (lookup called again)
|
|
1567
|
+
* return { beforeInvalidation, afterInvalidation, lookupCount }
|
|
1464
1568
|
* })
|
|
1569
|
+
*
|
|
1570
|
+
* const actual = await Effect.runPromise(program)
|
|
1571
|
+
* actual // => { beforeInvalidation: true, afterInvalidation: false, lookupCount: 2 }
|
|
1465
1572
|
* ```
|
|
1466
1573
|
*
|
|
1467
1574
|
* @category combinators
|
|
@@ -1473,7 +1580,7 @@ export declare const invalidate: {
|
|
|
1473
1580
|
*
|
|
1474
1581
|
* **Example** (Invalidating cached entries)
|
|
1475
1582
|
*
|
|
1476
|
-
* ```ts
|
|
1583
|
+
* ```ts import.meta.vitest
|
|
1477
1584
|
* import { Cache, Effect } from "effect"
|
|
1478
1585
|
*
|
|
1479
1586
|
* const program = Effect.gen(function*() {
|
|
@@ -1484,11 +1591,11 @@ export declare const invalidate: {
|
|
|
1484
1591
|
*
|
|
1485
1592
|
* // Add a value to the cache
|
|
1486
1593
|
* yield* Cache.get(cache, "hello")
|
|
1487
|
-
*
|
|
1594
|
+
* const beforeInvalidation = yield* Cache.has(cache, "hello")
|
|
1488
1595
|
*
|
|
1489
1596
|
* // Invalidate the entry
|
|
1490
1597
|
* yield* Cache.invalidate(cache, "hello")
|
|
1491
|
-
*
|
|
1598
|
+
* const afterInvalidation = yield* Cache.has(cache, "hello")
|
|
1492
1599
|
*
|
|
1493
1600
|
* // Invalidating non-existent keys doesn't error
|
|
1494
1601
|
* yield* Cache.invalidate(cache, "nonexistent")
|
|
@@ -1507,7 +1614,11 @@ export declare const invalidate: {
|
|
|
1507
1614
|
* yield* Cache.get(cache2, "test") // lookupCount = 1
|
|
1508
1615
|
* yield* Cache.invalidate(cache2, "test")
|
|
1509
1616
|
* yield* Cache.get(cache2, "test") // lookupCount = 2 (lookup called again)
|
|
1617
|
+
* return { beforeInvalidation, afterInvalidation, lookupCount }
|
|
1510
1618
|
* })
|
|
1619
|
+
*
|
|
1620
|
+
* const actual = await Effect.runPromise(program)
|
|
1621
|
+
* actual // => { beforeInvalidation: true, afterInvalidation: false, lookupCount: 2 }
|
|
1511
1622
|
* ```
|
|
1512
1623
|
*
|
|
1513
1624
|
* @category combinators
|
|
@@ -1519,7 +1630,7 @@ export declare const invalidate: {
|
|
|
1519
1630
|
*
|
|
1520
1631
|
* **Example** (Invalidating cached entries)
|
|
1521
1632
|
*
|
|
1522
|
-
* ```ts
|
|
1633
|
+
* ```ts import.meta.vitest
|
|
1523
1634
|
* import { Cache, Effect } from "effect"
|
|
1524
1635
|
*
|
|
1525
1636
|
* const program = Effect.gen(function*() {
|
|
@@ -1530,11 +1641,11 @@ export declare const invalidate: {
|
|
|
1530
1641
|
*
|
|
1531
1642
|
* // Add a value to the cache
|
|
1532
1643
|
* yield* Cache.get(cache, "hello")
|
|
1533
|
-
*
|
|
1644
|
+
* const beforeInvalidation = yield* Cache.has(cache, "hello")
|
|
1534
1645
|
*
|
|
1535
1646
|
* // Invalidate the entry
|
|
1536
1647
|
* yield* Cache.invalidate(cache, "hello")
|
|
1537
|
-
*
|
|
1648
|
+
* const afterInvalidation = yield* Cache.has(cache, "hello")
|
|
1538
1649
|
*
|
|
1539
1650
|
* // Invalidating non-existent keys doesn't error
|
|
1540
1651
|
* yield* Cache.invalidate(cache, "nonexistent")
|
|
@@ -1553,7 +1664,11 @@ export declare const invalidate: {
|
|
|
1553
1664
|
* yield* Cache.get(cache2, "test") // lookupCount = 1
|
|
1554
1665
|
* yield* Cache.invalidate(cache2, "test")
|
|
1555
1666
|
* yield* Cache.get(cache2, "test") // lookupCount = 2 (lookup called again)
|
|
1667
|
+
* return { beforeInvalidation, afterInvalidation, lookupCount }
|
|
1556
1668
|
* })
|
|
1669
|
+
*
|
|
1670
|
+
* const actual = await Effect.runPromise(program)
|
|
1671
|
+
* actual // => { beforeInvalidation: true, afterInvalidation: false, lookupCount: 2 }
|
|
1557
1672
|
* ```
|
|
1558
1673
|
*
|
|
1559
1674
|
* @category combinators
|
|
@@ -1567,7 +1682,7 @@ export declare const invalidate: {
|
|
|
1567
1682
|
*
|
|
1568
1683
|
* **Example** (Invalidating entries conditionally)
|
|
1569
1684
|
*
|
|
1570
|
-
* ```ts
|
|
1685
|
+
* ```ts import.meta.vitest
|
|
1571
1686
|
* import { Cache, Effect } from "effect"
|
|
1572
1687
|
*
|
|
1573
1688
|
* const program = Effect.gen(function*() {
|
|
@@ -1586,8 +1701,7 @@ export declare const invalidate: {
|
|
|
1586
1701
|
* "hello",
|
|
1587
1702
|
* (value) => value === 5
|
|
1588
1703
|
* )
|
|
1589
|
-
*
|
|
1590
|
-
* console.log(yield* Cache.has(cache, "hello")) // false
|
|
1704
|
+
* const hasHello = yield* Cache.has(cache, "hello")
|
|
1591
1705
|
*
|
|
1592
1706
|
* // Don't invalidate when predicate doesn't match
|
|
1593
1707
|
* const invalidated2 = yield* Cache.invalidateWhen(
|
|
@@ -1595,8 +1709,7 @@ export declare const invalidate: {
|
|
|
1595
1709
|
* "hi",
|
|
1596
1710
|
* (value) => value === 5
|
|
1597
1711
|
* )
|
|
1598
|
-
*
|
|
1599
|
-
* console.log(yield* Cache.has(cache, "hi")) // true (still present)
|
|
1712
|
+
* const hasHi = yield* Cache.has(cache, "hi")
|
|
1600
1713
|
*
|
|
1601
1714
|
* // Returns false for non-existent keys
|
|
1602
1715
|
* const invalidated3 = yield* Cache.invalidateWhen(
|
|
@@ -1604,7 +1717,6 @@ export declare const invalidate: {
|
|
|
1604
1717
|
* "nonexistent",
|
|
1605
1718
|
* () => true
|
|
1606
1719
|
* )
|
|
1607
|
-
* console.log(invalidated3) // false
|
|
1608
1720
|
*
|
|
1609
1721
|
* // Returns false for failed cached values
|
|
1610
1722
|
* const cacheWithErrors = yield* Cache.make<string, number, string>({
|
|
@@ -1619,8 +1731,11 @@ export declare const invalidate: {
|
|
|
1619
1731
|
* "fail",
|
|
1620
1732
|
* () => true
|
|
1621
1733
|
* )
|
|
1622
|
-
*
|
|
1734
|
+
* return [invalidated1, hasHello, invalidated2, hasHi, invalidated3, invalidated4]
|
|
1623
1735
|
* })
|
|
1736
|
+
*
|
|
1737
|
+
* const actual = await Effect.runPromise(program)
|
|
1738
|
+
* actual // => [true, false, false, true, false, false]
|
|
1624
1739
|
* ```
|
|
1625
1740
|
*
|
|
1626
1741
|
* @category combinators
|
|
@@ -1633,7 +1748,7 @@ export declare const invalidateWhen: {
|
|
|
1633
1748
|
*
|
|
1634
1749
|
* **Example** (Invalidating entries conditionally)
|
|
1635
1750
|
*
|
|
1636
|
-
* ```ts
|
|
1751
|
+
* ```ts import.meta.vitest
|
|
1637
1752
|
* import { Cache, Effect } from "effect"
|
|
1638
1753
|
*
|
|
1639
1754
|
* const program = Effect.gen(function*() {
|
|
@@ -1652,8 +1767,7 @@ export declare const invalidateWhen: {
|
|
|
1652
1767
|
* "hello",
|
|
1653
1768
|
* (value) => value === 5
|
|
1654
1769
|
* )
|
|
1655
|
-
*
|
|
1656
|
-
* console.log(yield* Cache.has(cache, "hello")) // false
|
|
1770
|
+
* const hasHello = yield* Cache.has(cache, "hello")
|
|
1657
1771
|
*
|
|
1658
1772
|
* // Don't invalidate when predicate doesn't match
|
|
1659
1773
|
* const invalidated2 = yield* Cache.invalidateWhen(
|
|
@@ -1661,8 +1775,7 @@ export declare const invalidateWhen: {
|
|
|
1661
1775
|
* "hi",
|
|
1662
1776
|
* (value) => value === 5
|
|
1663
1777
|
* )
|
|
1664
|
-
*
|
|
1665
|
-
* console.log(yield* Cache.has(cache, "hi")) // true (still present)
|
|
1778
|
+
* const hasHi = yield* Cache.has(cache, "hi")
|
|
1666
1779
|
*
|
|
1667
1780
|
* // Returns false for non-existent keys
|
|
1668
1781
|
* const invalidated3 = yield* Cache.invalidateWhen(
|
|
@@ -1670,7 +1783,6 @@ export declare const invalidateWhen: {
|
|
|
1670
1783
|
* "nonexistent",
|
|
1671
1784
|
* () => true
|
|
1672
1785
|
* )
|
|
1673
|
-
* console.log(invalidated3) // false
|
|
1674
1786
|
*
|
|
1675
1787
|
* // Returns false for failed cached values
|
|
1676
1788
|
* const cacheWithErrors = yield* Cache.make<string, number, string>({
|
|
@@ -1685,8 +1797,11 @@ export declare const invalidateWhen: {
|
|
|
1685
1797
|
* "fail",
|
|
1686
1798
|
* () => true
|
|
1687
1799
|
* )
|
|
1688
|
-
*
|
|
1800
|
+
* return [invalidated1, hasHello, invalidated2, hasHi, invalidated3, invalidated4]
|
|
1689
1801
|
* })
|
|
1802
|
+
*
|
|
1803
|
+
* const actual = await Effect.runPromise(program)
|
|
1804
|
+
* actual // => [true, false, false, true, false, false]
|
|
1690
1805
|
* ```
|
|
1691
1806
|
*
|
|
1692
1807
|
* @category combinators
|
|
@@ -1699,7 +1814,7 @@ export declare const invalidateWhen: {
|
|
|
1699
1814
|
*
|
|
1700
1815
|
* **Example** (Invalidating entries conditionally)
|
|
1701
1816
|
*
|
|
1702
|
-
* ```ts
|
|
1817
|
+
* ```ts import.meta.vitest
|
|
1703
1818
|
* import { Cache, Effect } from "effect"
|
|
1704
1819
|
*
|
|
1705
1820
|
* const program = Effect.gen(function*() {
|
|
@@ -1718,8 +1833,7 @@ export declare const invalidateWhen: {
|
|
|
1718
1833
|
* "hello",
|
|
1719
1834
|
* (value) => value === 5
|
|
1720
1835
|
* )
|
|
1721
|
-
*
|
|
1722
|
-
* console.log(yield* Cache.has(cache, "hello")) // false
|
|
1836
|
+
* const hasHello = yield* Cache.has(cache, "hello")
|
|
1723
1837
|
*
|
|
1724
1838
|
* // Don't invalidate when predicate doesn't match
|
|
1725
1839
|
* const invalidated2 = yield* Cache.invalidateWhen(
|
|
@@ -1727,8 +1841,7 @@ export declare const invalidateWhen: {
|
|
|
1727
1841
|
* "hi",
|
|
1728
1842
|
* (value) => value === 5
|
|
1729
1843
|
* )
|
|
1730
|
-
*
|
|
1731
|
-
* console.log(yield* Cache.has(cache, "hi")) // true (still present)
|
|
1844
|
+
* const hasHi = yield* Cache.has(cache, "hi")
|
|
1732
1845
|
*
|
|
1733
1846
|
* // Returns false for non-existent keys
|
|
1734
1847
|
* const invalidated3 = yield* Cache.invalidateWhen(
|
|
@@ -1736,7 +1849,6 @@ export declare const invalidateWhen: {
|
|
|
1736
1849
|
* "nonexistent",
|
|
1737
1850
|
* () => true
|
|
1738
1851
|
* )
|
|
1739
|
-
* console.log(invalidated3) // false
|
|
1740
1852
|
*
|
|
1741
1853
|
* // Returns false for failed cached values
|
|
1742
1854
|
* const cacheWithErrors = yield* Cache.make<string, number, string>({
|
|
@@ -1751,8 +1863,11 @@ export declare const invalidateWhen: {
|
|
|
1751
1863
|
* "fail",
|
|
1752
1864
|
* () => true
|
|
1753
1865
|
* )
|
|
1754
|
-
*
|
|
1866
|
+
* return [invalidated1, hasHello, invalidated2, hasHi, invalidated3, invalidated4]
|
|
1755
1867
|
* })
|
|
1868
|
+
*
|
|
1869
|
+
* const actual = await Effect.runPromise(program)
|
|
1870
|
+
* actual // => [true, false, false, true, false, false]
|
|
1756
1871
|
* ```
|
|
1757
1872
|
*
|
|
1758
1873
|
* @category combinators
|
|
@@ -1770,7 +1885,7 @@ export declare const invalidateWhen: {
|
|
|
1770
1885
|
*
|
|
1771
1886
|
* **Example** (Refreshing cached values)
|
|
1772
1887
|
*
|
|
1773
|
-
* ```ts
|
|
1888
|
+
* ```ts import.meta.vitest
|
|
1774
1889
|
* import { Cache, Effect } from "effect"
|
|
1775
1890
|
*
|
|
1776
1891
|
* // Force refresh of existing cached values
|
|
@@ -1783,25 +1898,25 @@ export declare const invalidateWhen: {
|
|
|
1783
1898
|
*
|
|
1784
1899
|
* // Initial cache population
|
|
1785
1900
|
* const value1 = yield* Cache.get(cache, "user")
|
|
1786
|
-
* console.log(value1) // "user-1"
|
|
1787
1901
|
*
|
|
1788
1902
|
* // Get from cache (no lookup)
|
|
1789
1903
|
* const value2 = yield* Cache.get(cache, "user")
|
|
1790
|
-
* console.log(value2) // "user-1" (same value)
|
|
1791
1904
|
*
|
|
1792
1905
|
* // Force refresh - always calls lookup
|
|
1793
1906
|
* const refreshed = yield* Cache.refresh(cache, "user")
|
|
1794
|
-
* console.log(refreshed) // "user-2" (new value)
|
|
1795
1907
|
*
|
|
1796
1908
|
* // Subsequent gets return refreshed value
|
|
1797
1909
|
* const value3 = yield* Cache.get(cache, "user")
|
|
1798
|
-
*
|
|
1910
|
+
* return [value1, value2, refreshed, value3, counter]
|
|
1799
1911
|
* })
|
|
1912
|
+
*
|
|
1913
|
+
* const actual = await Effect.runPromise(program)
|
|
1914
|
+
* actual // => ["user-1", "user-1", "user-2", "user-2", 2]
|
|
1800
1915
|
* ```
|
|
1801
1916
|
*
|
|
1802
1917
|
* **Example** (Resetting TTL on refresh)
|
|
1803
1918
|
*
|
|
1804
|
-
* ```ts
|
|
1919
|
+
* ```ts import.meta.vitest
|
|
1805
1920
|
* import { Cache, Effect } from "effect"
|
|
1806
1921
|
* import { TestClock } from "effect/testing"
|
|
1807
1922
|
*
|
|
@@ -1817,20 +1932,24 @@ export declare const invalidateWhen: {
|
|
|
1817
1932
|
* yield* TestClock.adjust("45 minutes")
|
|
1818
1933
|
*
|
|
1819
1934
|
* // Entry would normally expire in 15 minutes
|
|
1820
|
-
*
|
|
1935
|
+
* const beforeRefresh = yield* Cache.has(cache, "test")
|
|
1821
1936
|
*
|
|
1822
1937
|
* // Refresh resets the TTL to full 1 hour
|
|
1823
1938
|
* yield* Cache.refresh(cache, "test")
|
|
1824
1939
|
* yield* TestClock.adjust("30 minutes")
|
|
1825
1940
|
*
|
|
1826
1941
|
* // Still valid because TTL was reset
|
|
1827
|
-
*
|
|
1942
|
+
* const afterRefresh = yield* Cache.has(cache, "test")
|
|
1943
|
+
* return [beforeRefresh, afterRefresh]
|
|
1828
1944
|
* })
|
|
1945
|
+
*
|
|
1946
|
+
* const actual = await Effect.runPromise(Effect.provide(program, TestClock.layer()))
|
|
1947
|
+
* actual // => [true, true]
|
|
1829
1948
|
* ```
|
|
1830
1949
|
*
|
|
1831
1950
|
* **Example** (Refreshing missing keys)
|
|
1832
1951
|
*
|
|
1833
|
-
* ```ts
|
|
1952
|
+
* ```ts import.meta.vitest
|
|
1834
1953
|
* import { Cache, Effect } from "effect"
|
|
1835
1954
|
*
|
|
1836
1955
|
* // Refresh non-existent keys
|
|
@@ -1842,11 +1961,14 @@ export declare const invalidateWhen: {
|
|
|
1842
1961
|
*
|
|
1843
1962
|
* // Refresh non-existent key creates new entry
|
|
1844
1963
|
* const result = yield* Cache.refresh(cache, "newKey")
|
|
1845
|
-
* console.log(result) // "value-for-newKey"
|
|
1846
1964
|
*
|
|
1847
1965
|
* // Verify it's now cached
|
|
1848
|
-
*
|
|
1966
|
+
* const cached = yield* Cache.has(cache, "newKey")
|
|
1967
|
+
* return [result, cached]
|
|
1849
1968
|
* })
|
|
1969
|
+
*
|
|
1970
|
+
* const actual = await Effect.runPromise(program)
|
|
1971
|
+
* actual // => ["value-for-newKey", true]
|
|
1850
1972
|
* ```
|
|
1851
1973
|
*
|
|
1852
1974
|
* @category combinators
|
|
@@ -1863,7 +1985,7 @@ export declare const refresh: {
|
|
|
1863
1985
|
*
|
|
1864
1986
|
* **Example** (Refreshing cached values)
|
|
1865
1987
|
*
|
|
1866
|
-
* ```ts
|
|
1988
|
+
* ```ts import.meta.vitest
|
|
1867
1989
|
* import { Cache, Effect } from "effect"
|
|
1868
1990
|
*
|
|
1869
1991
|
* // Force refresh of existing cached values
|
|
@@ -1876,25 +1998,25 @@ export declare const refresh: {
|
|
|
1876
1998
|
*
|
|
1877
1999
|
* // Initial cache population
|
|
1878
2000
|
* const value1 = yield* Cache.get(cache, "user")
|
|
1879
|
-
* console.log(value1) // "user-1"
|
|
1880
2001
|
*
|
|
1881
2002
|
* // Get from cache (no lookup)
|
|
1882
2003
|
* const value2 = yield* Cache.get(cache, "user")
|
|
1883
|
-
* console.log(value2) // "user-1" (same value)
|
|
1884
2004
|
*
|
|
1885
2005
|
* // Force refresh - always calls lookup
|
|
1886
2006
|
* const refreshed = yield* Cache.refresh(cache, "user")
|
|
1887
|
-
* console.log(refreshed) // "user-2" (new value)
|
|
1888
2007
|
*
|
|
1889
2008
|
* // Subsequent gets return refreshed value
|
|
1890
2009
|
* const value3 = yield* Cache.get(cache, "user")
|
|
1891
|
-
*
|
|
2010
|
+
* return [value1, value2, refreshed, value3, counter]
|
|
1892
2011
|
* })
|
|
2012
|
+
*
|
|
2013
|
+
* const actual = await Effect.runPromise(program)
|
|
2014
|
+
* actual // => ["user-1", "user-1", "user-2", "user-2", 2]
|
|
1893
2015
|
* ```
|
|
1894
2016
|
*
|
|
1895
2017
|
* **Example** (Resetting TTL on refresh)
|
|
1896
2018
|
*
|
|
1897
|
-
* ```ts
|
|
2019
|
+
* ```ts import.meta.vitest
|
|
1898
2020
|
* import { Cache, Effect } from "effect"
|
|
1899
2021
|
* import { TestClock } from "effect/testing"
|
|
1900
2022
|
*
|
|
@@ -1910,20 +2032,24 @@ export declare const refresh: {
|
|
|
1910
2032
|
* yield* TestClock.adjust("45 minutes")
|
|
1911
2033
|
*
|
|
1912
2034
|
* // Entry would normally expire in 15 minutes
|
|
1913
|
-
*
|
|
2035
|
+
* const beforeRefresh = yield* Cache.has(cache, "test")
|
|
1914
2036
|
*
|
|
1915
2037
|
* // Refresh resets the TTL to full 1 hour
|
|
1916
2038
|
* yield* Cache.refresh(cache, "test")
|
|
1917
2039
|
* yield* TestClock.adjust("30 minutes")
|
|
1918
2040
|
*
|
|
1919
2041
|
* // Still valid because TTL was reset
|
|
1920
|
-
*
|
|
2042
|
+
* const afterRefresh = yield* Cache.has(cache, "test")
|
|
2043
|
+
* return [beforeRefresh, afterRefresh]
|
|
1921
2044
|
* })
|
|
2045
|
+
*
|
|
2046
|
+
* const actual = await Effect.runPromise(Effect.provide(program, TestClock.layer()))
|
|
2047
|
+
* actual // => [true, true]
|
|
1922
2048
|
* ```
|
|
1923
2049
|
*
|
|
1924
2050
|
* **Example** (Refreshing missing keys)
|
|
1925
2051
|
*
|
|
1926
|
-
* ```ts
|
|
2052
|
+
* ```ts import.meta.vitest
|
|
1927
2053
|
* import { Cache, Effect } from "effect"
|
|
1928
2054
|
*
|
|
1929
2055
|
* // Refresh non-existent keys
|
|
@@ -1935,11 +2061,14 @@ export declare const refresh: {
|
|
|
1935
2061
|
*
|
|
1936
2062
|
* // Refresh non-existent key creates new entry
|
|
1937
2063
|
* const result = yield* Cache.refresh(cache, "newKey")
|
|
1938
|
-
* console.log(result) // "value-for-newKey"
|
|
1939
2064
|
*
|
|
1940
2065
|
* // Verify it's now cached
|
|
1941
|
-
*
|
|
2066
|
+
* const cached = yield* Cache.has(cache, "newKey")
|
|
2067
|
+
* return [result, cached]
|
|
1942
2068
|
* })
|
|
2069
|
+
*
|
|
2070
|
+
* const actual = await Effect.runPromise(program)
|
|
2071
|
+
* actual // => ["value-for-newKey", true]
|
|
1943
2072
|
* ```
|
|
1944
2073
|
*
|
|
1945
2074
|
* @category combinators
|
|
@@ -1956,7 +2085,7 @@ export declare const refresh: {
|
|
|
1956
2085
|
*
|
|
1957
2086
|
* **Example** (Refreshing cached values)
|
|
1958
2087
|
*
|
|
1959
|
-
* ```ts
|
|
2088
|
+
* ```ts import.meta.vitest
|
|
1960
2089
|
* import { Cache, Effect } from "effect"
|
|
1961
2090
|
*
|
|
1962
2091
|
* // Force refresh of existing cached values
|
|
@@ -1969,25 +2098,25 @@ export declare const refresh: {
|
|
|
1969
2098
|
*
|
|
1970
2099
|
* // Initial cache population
|
|
1971
2100
|
* const value1 = yield* Cache.get(cache, "user")
|
|
1972
|
-
* console.log(value1) // "user-1"
|
|
1973
2101
|
*
|
|
1974
2102
|
* // Get from cache (no lookup)
|
|
1975
2103
|
* const value2 = yield* Cache.get(cache, "user")
|
|
1976
|
-
* console.log(value2) // "user-1" (same value)
|
|
1977
2104
|
*
|
|
1978
2105
|
* // Force refresh - always calls lookup
|
|
1979
2106
|
* const refreshed = yield* Cache.refresh(cache, "user")
|
|
1980
|
-
* console.log(refreshed) // "user-2" (new value)
|
|
1981
2107
|
*
|
|
1982
2108
|
* // Subsequent gets return refreshed value
|
|
1983
2109
|
* const value3 = yield* Cache.get(cache, "user")
|
|
1984
|
-
*
|
|
2110
|
+
* return [value1, value2, refreshed, value3, counter]
|
|
1985
2111
|
* })
|
|
2112
|
+
*
|
|
2113
|
+
* const actual = await Effect.runPromise(program)
|
|
2114
|
+
* actual // => ["user-1", "user-1", "user-2", "user-2", 2]
|
|
1986
2115
|
* ```
|
|
1987
2116
|
*
|
|
1988
2117
|
* **Example** (Resetting TTL on refresh)
|
|
1989
2118
|
*
|
|
1990
|
-
* ```ts
|
|
2119
|
+
* ```ts import.meta.vitest
|
|
1991
2120
|
* import { Cache, Effect } from "effect"
|
|
1992
2121
|
* import { TestClock } from "effect/testing"
|
|
1993
2122
|
*
|
|
@@ -2003,20 +2132,24 @@ export declare const refresh: {
|
|
|
2003
2132
|
* yield* TestClock.adjust("45 minutes")
|
|
2004
2133
|
*
|
|
2005
2134
|
* // Entry would normally expire in 15 minutes
|
|
2006
|
-
*
|
|
2135
|
+
* const beforeRefresh = yield* Cache.has(cache, "test")
|
|
2007
2136
|
*
|
|
2008
2137
|
* // Refresh resets the TTL to full 1 hour
|
|
2009
2138
|
* yield* Cache.refresh(cache, "test")
|
|
2010
2139
|
* yield* TestClock.adjust("30 minutes")
|
|
2011
2140
|
*
|
|
2012
2141
|
* // Still valid because TTL was reset
|
|
2013
|
-
*
|
|
2142
|
+
* const afterRefresh = yield* Cache.has(cache, "test")
|
|
2143
|
+
* return [beforeRefresh, afterRefresh]
|
|
2014
2144
|
* })
|
|
2145
|
+
*
|
|
2146
|
+
* const actual = await Effect.runPromise(Effect.provide(program, TestClock.layer()))
|
|
2147
|
+
* actual // => [true, true]
|
|
2015
2148
|
* ```
|
|
2016
2149
|
*
|
|
2017
2150
|
* **Example** (Refreshing missing keys)
|
|
2018
2151
|
*
|
|
2019
|
-
* ```ts
|
|
2152
|
+
* ```ts import.meta.vitest
|
|
2020
2153
|
* import { Cache, Effect } from "effect"
|
|
2021
2154
|
*
|
|
2022
2155
|
* // Refresh non-existent keys
|
|
@@ -2028,11 +2161,14 @@ export declare const refresh: {
|
|
|
2028
2161
|
*
|
|
2029
2162
|
* // Refresh non-existent key creates new entry
|
|
2030
2163
|
* const result = yield* Cache.refresh(cache, "newKey")
|
|
2031
|
-
* console.log(result) // "value-for-newKey"
|
|
2032
2164
|
*
|
|
2033
2165
|
* // Verify it's now cached
|
|
2034
|
-
*
|
|
2166
|
+
* const cached = yield* Cache.has(cache, "newKey")
|
|
2167
|
+
* return [result, cached]
|
|
2035
2168
|
* })
|
|
2169
|
+
*
|
|
2170
|
+
* const actual = await Effect.runPromise(program)
|
|
2171
|
+
* actual // => ["value-for-newKey", true]
|
|
2036
2172
|
* ```
|
|
2037
2173
|
*
|
|
2038
2174
|
* @category combinators
|
|
@@ -2045,7 +2181,7 @@ export declare const refresh: {
|
|
|
2045
2181
|
*
|
|
2046
2182
|
* **Example** (Invalidating all entries)
|
|
2047
2183
|
*
|
|
2048
|
-
* ```ts
|
|
2184
|
+
* ```ts import.meta.vitest
|
|
2049
2185
|
* import { Cache, Effect } from "effect"
|
|
2050
2186
|
*
|
|
2051
2187
|
* // Clear all cached entries at once
|
|
@@ -2060,18 +2196,29 @@ export declare const refresh: {
|
|
|
2060
2196
|
* yield* Cache.get(cache, "banana")
|
|
2061
2197
|
* yield* Cache.get(cache, "cherry")
|
|
2062
2198
|
*
|
|
2063
|
-
*
|
|
2064
|
-
*
|
|
2199
|
+
* const sizeBeforeInvalidation = yield* Cache.size(cache)
|
|
2200
|
+
* const hasAppleBeforeInvalidation = yield* Cache.has(cache, "apple")
|
|
2065
2201
|
*
|
|
2066
2202
|
* // Clear all entries
|
|
2067
2203
|
* yield* Cache.invalidateAll(cache)
|
|
2068
2204
|
*
|
|
2069
2205
|
* // Verify cache is empty
|
|
2070
|
-
*
|
|
2071
|
-
*
|
|
2072
|
-
*
|
|
2073
|
-
*
|
|
2206
|
+
* const sizeAfterInvalidation = yield* Cache.size(cache)
|
|
2207
|
+
* const hasAppleAfterInvalidation = yield* Cache.has(cache, "apple")
|
|
2208
|
+
* const hasBananaAfterInvalidation = yield* Cache.has(cache, "banana")
|
|
2209
|
+
* const hasCherryAfterInvalidation = yield* Cache.has(cache, "cherry")
|
|
2210
|
+
* return [
|
|
2211
|
+
* sizeBeforeInvalidation,
|
|
2212
|
+
* hasAppleBeforeInvalidation,
|
|
2213
|
+
* sizeAfterInvalidation,
|
|
2214
|
+
* hasAppleAfterInvalidation,
|
|
2215
|
+
* hasBananaAfterInvalidation,
|
|
2216
|
+
* hasCherryAfterInvalidation
|
|
2217
|
+
* ]
|
|
2074
2218
|
* })
|
|
2219
|
+
*
|
|
2220
|
+
* const actual = await Effect.runPromise(program)
|
|
2221
|
+
* actual // => [3, true, 0, false, false, false]
|
|
2075
2222
|
* ```
|
|
2076
2223
|
*
|
|
2077
2224
|
* @category combinators
|
|
@@ -2089,7 +2236,7 @@ export declare const invalidateAll: <Key, A, E, R>(self: Cache<Key, A, E, R>) =>
|
|
|
2089
2236
|
*
|
|
2090
2237
|
* **Example** (Reading cache size)
|
|
2091
2238
|
*
|
|
2092
|
-
* ```ts
|
|
2239
|
+
* ```ts import.meta.vitest
|
|
2093
2240
|
* import { Cache, Effect } from "effect"
|
|
2094
2241
|
*
|
|
2095
2242
|
* const program = Effect.gen(function*() {
|
|
@@ -2100,19 +2247,20 @@ export declare const invalidateAll: <Key, A, E, R>(self: Cache<Key, A, E, R>) =>
|
|
|
2100
2247
|
*
|
|
2101
2248
|
* // Empty cache has size 0
|
|
2102
2249
|
* const emptySize = yield* Cache.size(cache)
|
|
2103
|
-
* console.log(emptySize) // 0
|
|
2104
2250
|
*
|
|
2105
2251
|
* // Add entries and check size
|
|
2106
2252
|
* yield* Cache.get(cache, "hello")
|
|
2107
2253
|
* yield* Cache.get(cache, "world")
|
|
2108
2254
|
* const sizeAfterAdding = yield* Cache.size(cache)
|
|
2109
|
-
* console.log(sizeAfterAdding) // 2
|
|
2110
2255
|
*
|
|
2111
2256
|
* // Size decreases after invalidation
|
|
2112
2257
|
* yield* Cache.invalidate(cache, "hello")
|
|
2113
2258
|
* const sizeAfterInvalidation = yield* Cache.size(cache)
|
|
2114
|
-
*
|
|
2259
|
+
* return [emptySize, sizeAfterAdding, sizeAfterInvalidation]
|
|
2115
2260
|
* })
|
|
2261
|
+
*
|
|
2262
|
+
* const actual = await Effect.runPromise(program)
|
|
2263
|
+
* actual // => [0, 2, 1]
|
|
2116
2264
|
* ```
|
|
2117
2265
|
*
|
|
2118
2266
|
* @category combinators
|
|
@@ -2124,7 +2272,7 @@ export declare const size: <Key, A, E, R>(self: Cache<Key, A, E, R>) => Effect.E
|
|
|
2124
2272
|
*
|
|
2125
2273
|
* **Example** (Reading active keys)
|
|
2126
2274
|
*
|
|
2127
|
-
* ```ts
|
|
2275
|
+
* ```ts import.meta.vitest
|
|
2128
2276
|
* import { Cache, Effect } from "effect"
|
|
2129
2277
|
*
|
|
2130
2278
|
* // Basic key enumeration
|
|
@@ -2141,9 +2289,11 @@ export declare const size: <Key, A, E, R>(self: Cache<Key, A, E, R>) => Effect.E
|
|
|
2141
2289
|
*
|
|
2142
2290
|
* // Retrieve all active keys
|
|
2143
2291
|
* const keys = yield* Cache.keys(cache)
|
|
2144
|
-
*
|
|
2145
|
-
* console.log(Array.from(keys).sort()) // ["cache", "hello", "world"]
|
|
2292
|
+
* return Array.from(keys).sort()
|
|
2146
2293
|
* })
|
|
2294
|
+
*
|
|
2295
|
+
* const actual = await Effect.runPromise(program)
|
|
2296
|
+
* actual // => ["cache", "hello", "world"]
|
|
2147
2297
|
* ```
|
|
2148
2298
|
*
|
|
2149
2299
|
* @category combinators
|
|
@@ -2156,7 +2306,7 @@ export declare const keys: <Key, A, E, R>(self: Cache<Key, A, E, R>) => Effect.E
|
|
|
2156
2306
|
*
|
|
2157
2307
|
* **Example** (Reading all cached values)
|
|
2158
2308
|
*
|
|
2159
|
-
* ```ts
|
|
2309
|
+
* ```ts import.meta.vitest
|
|
2160
2310
|
* import { Cache, Effect } from "effect"
|
|
2161
2311
|
*
|
|
2162
2312
|
* const program = Effect.gen(function*() {
|
|
@@ -2172,10 +2322,11 @@ export declare const keys: <Key, A, E, R>(self: Cache<Key, A, E, R>) => Effect.E
|
|
|
2172
2322
|
*
|
|
2173
2323
|
* // Retrieve all cached values
|
|
2174
2324
|
* const values = yield* Cache.values(cache)
|
|
2175
|
-
*
|
|
2176
|
-
*
|
|
2177
|
-
* console.log(valuesArray) // [1, 2, 3]
|
|
2325
|
+
* return Array.from(values).sort()
|
|
2178
2326
|
* })
|
|
2327
|
+
*
|
|
2328
|
+
* const actual = await Effect.runPromise(program)
|
|
2329
|
+
* actual // => [1, 2, 3]
|
|
2179
2330
|
* ```
|
|
2180
2331
|
*
|
|
2181
2332
|
* @category combinators
|