effect 4.0.0-beta.83 → 4.0.0-beta.85
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 +64 -64
- package/dist/Array.js +26 -26
- package/dist/Cache.d.ts +1 -1
- package/dist/Cache.js +1 -1
- package/dist/Cause.d.ts +68 -68
- package/dist/Cause.js +47 -47
- package/dist/Channel.d.ts +5 -5
- package/dist/Channel.js +3 -3
- package/dist/Clock.d.ts +1 -1
- package/dist/Clock.js +1 -1
- package/dist/Combiner.d.ts +9 -9
- package/dist/Combiner.js +8 -8
- package/dist/Config.d.ts +15 -94
- package/dist/Config.d.ts.map +1 -1
- package/dist/Config.js +22 -70
- package/dist/Config.js.map +1 -1
- package/dist/ConfigProvider.d.ts +58 -74
- package/dist/ConfigProvider.d.ts.map +1 -1
- package/dist/ConfigProvider.js +66 -41
- package/dist/ConfigProvider.js.map +1 -1
- package/dist/Console.d.ts +1 -1
- package/dist/Console.js +1 -1
- package/dist/Context.d.ts.map +1 -1
- package/dist/Context.js +4 -3
- package/dist/Context.js.map +1 -1
- package/dist/Data.d.ts +15 -15
- package/dist/Data.js +3 -3
- package/dist/DateTime.d.ts +6 -6
- package/dist/DateTime.js +2 -2
- package/dist/Duration.d.ts +3 -3
- package/dist/Duration.js +3 -3
- package/dist/Effect.d.ts +84 -45
- package/dist/Effect.d.ts.map +1 -1
- package/dist/Effect.js +72 -33
- package/dist/Effect.js.map +1 -1
- package/dist/Equal.d.ts +7 -7
- package/dist/Equal.js +5 -5
- package/dist/Equivalence.d.ts +17 -17
- package/dist/Equivalence.js +13 -13
- package/dist/Exit.d.ts +3 -3
- package/dist/Exit.js +3 -3
- package/dist/Formatter.d.ts +5 -5
- package/dist/Formatter.js +4 -4
- package/dist/Function.d.ts +10 -10
- package/dist/Function.js +3 -3
- package/dist/HashMap.d.ts +3 -3
- package/dist/HashMap.js +1 -1
- package/dist/Iterable.d.ts +6 -6
- package/dist/Iterable.js +2 -2
- package/dist/JsonPatch.d.ts +2 -2
- package/dist/Layer.d.ts +1 -1
- package/dist/Layer.js +5 -4
- package/dist/Layer.js.map +1 -1
- package/dist/LayerMap.d.ts.map +1 -1
- package/dist/LayerMap.js +4 -3
- package/dist/LayerMap.js.map +1 -1
- package/dist/Logger.d.ts +1 -1
- package/dist/Logger.js +1 -1
- package/dist/Match.d.ts +8 -8
- package/dist/Match.js +8 -8
- package/dist/Metric.d.ts +3 -3
- package/dist/Metric.js +3 -3
- package/dist/Optic.d.ts +30 -30
- package/dist/Optic.js +12 -12
- package/dist/Option.d.ts +7 -7
- package/dist/Option.js +7 -7
- package/dist/Order.d.ts +23 -23
- package/dist/Order.js +20 -20
- package/dist/Pool.d.ts +1 -1
- package/dist/Pool.js +1 -1
- package/dist/Predicate.d.ts +88 -88
- package/dist/Predicate.js +47 -47
- package/dist/PubSub.d.ts +3 -3
- package/dist/PubSub.js +3 -3
- package/dist/Random.d.ts +31 -0
- package/dist/Random.d.ts.map +1 -1
- package/dist/Random.js +32 -0
- package/dist/Random.js.map +1 -1
- package/dist/Reducer.d.ts +1 -1
- package/dist/Reducer.js +1 -1
- package/dist/Result.d.ts +18 -18
- package/dist/Result.js +8 -8
- package/dist/Runtime.d.ts +1 -1
- package/dist/Runtime.js +1 -1
- package/dist/Schema.d.ts +313 -126
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +316 -127
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaAST.d.ts +9 -8
- package/dist/SchemaAST.d.ts.map +1 -1
- package/dist/SchemaAST.js +203 -140
- package/dist/SchemaAST.js.map +1 -1
- package/dist/SchemaGetter.d.ts +48 -48
- package/dist/SchemaGetter.js +44 -44
- package/dist/SchemaIssue.d.ts +3 -3
- package/dist/SchemaIssue.js +3 -3
- package/dist/SchemaParser.d.ts +122 -22
- package/dist/SchemaParser.d.ts.map +1 -1
- package/dist/SchemaParser.js +186 -50
- package/dist/SchemaParser.js.map +1 -1
- package/dist/SchemaRepresentation.d.ts +1 -1
- package/dist/SchemaRepresentation.d.ts.map +1 -1
- package/dist/SchemaRepresentation.js +96 -2
- package/dist/SchemaRepresentation.js.map +1 -1
- package/dist/SchemaTransformation.d.ts +20 -20
- package/dist/SchemaTransformation.js +18 -18
- package/dist/Stream.d.ts +3 -3
- package/dist/Stream.js +2 -2
- package/dist/Stream.js.map +1 -1
- package/dist/String.d.ts +1 -1
- package/dist/String.js +1 -1
- package/dist/Struct.d.ts +1 -1
- package/dist/Struct.js +1 -1
- package/dist/Types.d.ts +13 -13
- package/dist/internal/effect.js +33 -20
- package/dist/internal/effect.js.map +1 -1
- package/dist/internal/schema/arbitrary.js +17 -1
- package/dist/internal/schema/arbitrary.js.map +1 -1
- package/dist/internal/schema/cause.d.ts +2 -0
- package/dist/internal/schema/cause.d.ts.map +1 -0
- package/dist/internal/schema/cause.js +24 -0
- package/dist/internal/schema/cause.js.map +1 -0
- package/dist/internal/schema/schema.d.ts +8 -4
- package/dist/internal/schema/schema.d.ts.map +1 -1
- package/dist/internal/schema/schema.js +21 -8
- package/dist/internal/schema/schema.js.map +1 -1
- package/dist/internal/stackTraceLimit.d.ts +2 -0
- package/dist/internal/stackTraceLimit.d.ts.map +1 -0
- package/dist/internal/stackTraceLimit.js +40 -0
- package/dist/internal/stackTraceLimit.js.map +1 -0
- package/dist/internal/tracer.d.ts.map +1 -1
- package/dist/internal/tracer.js +4 -3
- package/dist/internal/tracer.js.map +1 -1
- package/dist/testing/TestSchema.d.ts +3 -3
- package/dist/testing/TestSchema.js +1 -1
- package/dist/unstable/ai/AiError.d.ts +1 -1
- package/dist/unstable/ai/AiError.js +1 -1
- package/dist/unstable/ai/Chat.d.ts +1 -1
- package/dist/unstable/ai/Chat.js +1 -1
- package/dist/unstable/ai/Tool.d.ts.map +1 -1
- package/dist/unstable/ai/Tool.js +4 -5
- package/dist/unstable/ai/Tool.js.map +1 -1
- package/dist/unstable/cli/Prompt.js +2 -2
- package/dist/unstable/cli/Prompt.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiMiddleware.js +4 -3
- package/dist/unstable/httpapi/HttpApiMiddleware.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiScalar.d.ts +2 -2
- package/dist/unstable/persistence/PersistedQueue.js +1 -1
- package/dist/unstable/rpc/Rpc.d.ts +1 -1
- package/dist/unstable/rpc/Rpc.js +1 -1
- package/dist/unstable/rpc/RpcGroup.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcGroup.js +3 -4
- package/dist/unstable/rpc/RpcGroup.js.map +1 -1
- package/dist/unstable/rpc/RpcMiddleware.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcMiddleware.js +4 -3
- package/dist/unstable/rpc/RpcMiddleware.js.map +1 -1
- package/dist/unstable/sql/SqlResolver.d.ts.map +1 -1
- package/dist/unstable/sql/SqlResolver.js +15 -2
- package/dist/unstable/sql/SqlResolver.js.map +1 -1
- package/dist/unstable/workflow/Activity.d.ts +1 -0
- package/dist/unstable/workflow/Activity.d.ts.map +1 -1
- package/dist/unstable/workflow/Activity.js +1 -0
- package/dist/unstable/workflow/Activity.js.map +1 -1
- package/dist/unstable/workflow/WorkflowEngine.js +1 -1
- package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
- package/package.json +1 -1
- package/src/Array.ts +65 -65
- package/src/Cache.ts +1 -1
- package/src/Cause.ts +68 -68
- package/src/Channel.ts +5 -5
- package/src/Clock.ts +1 -1
- package/src/Combiner.ts +9 -9
- package/src/Config.ts +40 -108
- package/src/ConfigProvider.ts +139 -100
- package/src/Console.ts +1 -1
- package/src/Context.ts +4 -5
- package/src/Data.ts +15 -15
- package/src/DateTime.ts +6 -6
- package/src/Duration.ts +3 -3
- package/src/Effect.ts +89 -45
- package/src/Equal.ts +7 -7
- package/src/Equivalence.ts +17 -17
- package/src/Exit.ts +3 -3
- package/src/Formatter.ts +5 -5
- package/src/Function.ts +10 -10
- package/src/HashMap.ts +3 -3
- package/src/Iterable.ts +6 -6
- package/src/JsonPatch.ts +2 -2
- package/src/Layer.ts +5 -5
- package/src/LayerMap.ts +4 -3
- package/src/Logger.ts +1 -1
- package/src/Match.ts +8 -8
- package/src/Metric.ts +3 -3
- package/src/Optic.ts +30 -30
- package/src/Option.ts +7 -7
- package/src/Order.ts +23 -23
- package/src/Pool.ts +1 -1
- package/src/Predicate.ts +88 -88
- package/src/PubSub.ts +3 -3
- package/src/Random.ts +42 -0
- package/src/Reducer.ts +1 -1
- package/src/Result.ts +20 -20
- package/src/Runtime.ts +1 -1
- package/src/Schema.ts +389 -153
- package/src/SchemaAST.ts +237 -148
- package/src/SchemaGetter.ts +48 -48
- package/src/SchemaIssue.ts +3 -3
- package/src/SchemaParser.ts +197 -58
- package/src/SchemaRepresentation.ts +73 -3
- package/src/SchemaTransformation.ts +20 -20
- package/src/Stream.ts +4 -4
- package/src/String.ts +1 -1
- package/src/Struct.ts +1 -1
- package/src/Types.ts +13 -13
- package/src/internal/effect.ts +40 -21
- package/src/internal/schema/arbitrary.ts +23 -2
- package/src/internal/schema/cause.ts +26 -0
- package/src/internal/schema/schema.ts +36 -10
- package/src/internal/stackTraceLimit.ts +63 -0
- package/src/internal/tracer.ts +4 -3
- package/src/testing/TestSchema.ts +3 -3
- package/src/unstable/ai/AiError.ts +1 -1
- package/src/unstable/ai/Chat.ts +1 -1
- package/src/unstable/ai/Tool.ts +4 -3
- package/src/unstable/cli/Prompt.ts +1 -1
- package/src/unstable/httpapi/HttpApiMiddleware.ts +4 -3
- package/src/unstable/httpapi/HttpApiScalar.ts +2 -2
- package/src/unstable/persistence/PersistedQueue.ts +1 -1
- package/src/unstable/rpc/Rpc.ts +1 -1
- package/src/unstable/rpc/RpcGroup.ts +3 -4
- package/src/unstable/rpc/RpcMiddleware.ts +4 -3
- package/src/unstable/sql/SqlResolver.ts +15 -2
- package/src/unstable/workflow/Activity.ts +2 -0
- package/src/unstable/workflow/WorkflowEngine.ts +1 -1
package/dist/Cause.js
CHANGED
|
@@ -29,7 +29,7 @@ export const ReasonTypeId = core.CauseReasonTypeId;
|
|
|
29
29
|
/**
|
|
30
30
|
* Checks whether an arbitrary value is a `Cause`.
|
|
31
31
|
*
|
|
32
|
-
* **Example** (runtime type
|
|
32
|
+
* **Example** (Checking the runtime type)
|
|
33
33
|
*
|
|
34
34
|
* ```ts
|
|
35
35
|
* import { Cause } from "effect"
|
|
@@ -45,7 +45,7 @@ export const isCause = core.isCause;
|
|
|
45
45
|
/**
|
|
46
46
|
* Checks whether an arbitrary value is a `Reason` (`Fail`, `Die`, or `Interrupt`).
|
|
47
47
|
*
|
|
48
|
-
* **Example** (runtime type
|
|
48
|
+
* **Example** (Checking the runtime type)
|
|
49
49
|
*
|
|
50
50
|
* ```ts
|
|
51
51
|
* import { Cause } from "effect"
|
|
@@ -67,7 +67,7 @@ export const isReason = core.isCauseReason;
|
|
|
67
67
|
* Use as a predicate for `Array.filter` to pick out typed `Fail` reasons when
|
|
68
68
|
* iterating over `cause.reasons`.
|
|
69
69
|
*
|
|
70
|
-
* **Example** (
|
|
70
|
+
* **Example** (Filtering fail reasons)
|
|
71
71
|
*
|
|
72
72
|
* ```ts
|
|
73
73
|
* import { Cause } from "effect"
|
|
@@ -92,7 +92,7 @@ export const isFailReason = core.isFailReason;
|
|
|
92
92
|
* Use as a predicate for `Array.filter` to pick out `Die` (defect) reasons when
|
|
93
93
|
* iterating over `cause.reasons`.
|
|
94
94
|
*
|
|
95
|
-
* **Example** (
|
|
95
|
+
* **Example** (Filtering die reasons)
|
|
96
96
|
*
|
|
97
97
|
* ```ts
|
|
98
98
|
* import { Cause } from "effect"
|
|
@@ -117,7 +117,7 @@ export const isDieReason = core.isDieReason;
|
|
|
117
117
|
* Use as a predicate for `Array.filter` to pick out `Interrupt` reasons when
|
|
118
118
|
* iterating over `cause.reasons`.
|
|
119
119
|
*
|
|
120
|
-
* **Example** (
|
|
120
|
+
* **Example** (Filtering interrupt reasons)
|
|
121
121
|
*
|
|
122
122
|
* ```ts
|
|
123
123
|
* import { Cause } from "effect"
|
|
@@ -153,7 +153,7 @@ export const isInterruptReason = core.isInterruptReason;
|
|
|
153
153
|
* The `reasons` array is stored as provided. Treat the array as immutable
|
|
154
154
|
* after passing it to this function.
|
|
155
155
|
*
|
|
156
|
-
* **Example** (
|
|
156
|
+
* **Example** (Building a cause from reasons)
|
|
157
157
|
*
|
|
158
158
|
* ```ts
|
|
159
159
|
* import { Cause } from "effect"
|
|
@@ -185,7 +185,7 @@ export const fromReasons = core.causeFromReasons;
|
|
|
185
185
|
* Represents the absence of failure. Combining any cause with `empty` via
|
|
186
186
|
* {@link combine} returns the original cause unchanged.
|
|
187
187
|
*
|
|
188
|
-
* **Example** (
|
|
188
|
+
* **Example** (Combining with the empty cause)
|
|
189
189
|
*
|
|
190
190
|
* ```ts
|
|
191
191
|
* import { Cause } from "effect"
|
|
@@ -210,7 +210,7 @@ export const empty = core.causeEmpty;
|
|
|
210
210
|
*
|
|
211
211
|
* Use to construct a cause from an expected typed error.
|
|
212
212
|
*
|
|
213
|
-
* **Example** (
|
|
213
|
+
* **Example** (Creating a fail cause)
|
|
214
214
|
*
|
|
215
215
|
* ```ts
|
|
216
216
|
* import { Cause } from "effect"
|
|
@@ -235,7 +235,7 @@ export const fail = core.causeFail;
|
|
|
235
235
|
*
|
|
236
236
|
* Use to construct a cause from an untyped defect or unexpected thrown value.
|
|
237
237
|
*
|
|
238
|
-
* **Example** (
|
|
238
|
+
* **Example** (Creating a die cause)
|
|
239
239
|
*
|
|
240
240
|
* ```ts
|
|
241
241
|
* import { Cause } from "effect"
|
|
@@ -256,7 +256,7 @@ export const die = core.causeDie;
|
|
|
256
256
|
* Creates a `Cause` containing a single `Interrupt` reason,
|
|
257
257
|
* optionally carrying the interrupting fiber's ID.
|
|
258
258
|
*
|
|
259
|
-
* **Example** (
|
|
259
|
+
* **Example** (Creating an interrupt cause)
|
|
260
260
|
*
|
|
261
261
|
* ```ts
|
|
262
262
|
* import { Cause } from "effect"
|
|
@@ -281,7 +281,7 @@ export const interrupt = effect.causeInterrupt;
|
|
|
281
281
|
* Use when constructing a standalone typed failure reason for
|
|
282
282
|
* {@link fromReasons} or direct comparison.
|
|
283
283
|
*
|
|
284
|
-
* **Example** (
|
|
284
|
+
* **Example** (Creating a Fail reason)
|
|
285
285
|
*
|
|
286
286
|
* ```ts
|
|
287
287
|
* import { Cause } from "effect"
|
|
@@ -306,7 +306,7 @@ export const makeFailReason = error => new core.Fail(error);
|
|
|
306
306
|
* Use when constructing a standalone defect reason for {@link fromReasons} or
|
|
307
307
|
* direct comparison.
|
|
308
308
|
*
|
|
309
|
-
* **Example** (
|
|
309
|
+
* **Example** (Creating a Die reason)
|
|
310
310
|
*
|
|
311
311
|
* ```ts
|
|
312
312
|
* import { Cause } from "effect"
|
|
@@ -332,7 +332,7 @@ export const makeDieReason = defect => new core.Die(defect);
|
|
|
332
332
|
* Use when constructing a standalone interrupt reason for {@link fromReasons}
|
|
333
333
|
* or direct comparison.
|
|
334
334
|
*
|
|
335
|
-
* **Example** (
|
|
335
|
+
* **Example** (Creating an Interrupt reason)
|
|
336
336
|
*
|
|
337
337
|
* ```ts
|
|
338
338
|
* import { Cause } from "effect"
|
|
@@ -357,7 +357,7 @@ export const makeInterruptReason = effect.makeInterruptReason;
|
|
|
357
357
|
*
|
|
358
358
|
* Use when you need to detect failures caused only by interruption.
|
|
359
359
|
*
|
|
360
|
-
* **Example** (
|
|
360
|
+
* **Example** (Checking interrupt-only causes)
|
|
361
361
|
*
|
|
362
362
|
* ```ts
|
|
363
363
|
* import { Cause } from "effect"
|
|
@@ -389,7 +389,7 @@ export const hasInterruptsOnly = effect.hasInterruptsOnly;
|
|
|
389
389
|
* containing the mapped failures. If the cause has no `Fail` reasons, the
|
|
390
390
|
* original cause is returned unchanged.
|
|
391
391
|
*
|
|
392
|
-
* **Example** (
|
|
392
|
+
* **Example** (Mapping errors to uppercase)
|
|
393
393
|
*
|
|
394
394
|
* ```ts
|
|
395
395
|
* import { Cause } from "effect"
|
|
@@ -420,7 +420,7 @@ export const map = effect.causeMap;
|
|
|
420
420
|
* - If the result is structurally equal to `self`, `self` is returned
|
|
421
421
|
* (referential shortcut).
|
|
422
422
|
*
|
|
423
|
-
* **Example** (
|
|
423
|
+
* **Example** (Combining two causes)
|
|
424
424
|
*
|
|
425
425
|
* ```ts
|
|
426
426
|
* import { Cause } from "effect"
|
|
@@ -462,7 +462,7 @@ export const combine = effect.causeCombine;
|
|
|
462
462
|
* This function is lossy. Use {@link prettyErrors} or iterate `cause.reasons`
|
|
463
463
|
* when you need all failures.
|
|
464
464
|
*
|
|
465
|
-
* **Example** (
|
|
465
|
+
* **Example** (Squashing a cause)
|
|
466
466
|
*
|
|
467
467
|
* ```ts
|
|
468
468
|
* import { Cause } from "effect"
|
|
@@ -486,7 +486,7 @@ export const squash = effect.causeSquash;
|
|
|
486
486
|
* Use to check whether a cause includes typed failures before extracting,
|
|
487
487
|
* mapping, or rendering them.
|
|
488
488
|
*
|
|
489
|
-
* **Example** (
|
|
489
|
+
* **Example** (Checking for typed errors)
|
|
490
490
|
*
|
|
491
491
|
* ```ts
|
|
492
492
|
* import { Cause } from "effect"
|
|
@@ -513,7 +513,7 @@ export const hasFails = effect.hasFails;
|
|
|
513
513
|
* Use when you need the full `Fail` reason from a `Cause`, including
|
|
514
514
|
* annotations.
|
|
515
515
|
*
|
|
516
|
-
* **Example** (
|
|
516
|
+
* **Example** (Extracting the first Fail reason)
|
|
517
517
|
*
|
|
518
518
|
* ```ts
|
|
519
519
|
* import { Cause, Result } from "effect"
|
|
@@ -542,7 +542,7 @@ export const findFail = effect.findFail;
|
|
|
542
542
|
* Use when you need the first typed error value from a `Cause` as a `Result`
|
|
543
543
|
* that preserves the original cause when no match is found.
|
|
544
544
|
*
|
|
545
|
-
* **Example** (
|
|
545
|
+
* **Example** (Extracting the first error value)
|
|
546
546
|
*
|
|
547
547
|
* ```ts
|
|
548
548
|
* import { Cause, Result } from "effect"
|
|
@@ -569,7 +569,7 @@ export const findError = effect.findError;
|
|
|
569
569
|
* Use when you need the first typed error value from a `Cause` as an `Option`,
|
|
570
570
|
* discarding the original cause.
|
|
571
571
|
*
|
|
572
|
-
* **Example** (
|
|
572
|
+
* **Example** (Extracting an error as Option)
|
|
573
573
|
*
|
|
574
574
|
* ```ts
|
|
575
575
|
* import { Cause, Option } from "effect"
|
|
@@ -595,7 +595,7 @@ export const findErrorOption = effect.findErrorOption;
|
|
|
595
595
|
* Use to check whether a cause includes defects before extracting or rendering
|
|
596
596
|
* them.
|
|
597
597
|
*
|
|
598
|
-
* **Example** (
|
|
598
|
+
* **Example** (Checking for defects)
|
|
599
599
|
*
|
|
600
600
|
* ```ts
|
|
601
601
|
* import { Cause } from "effect"
|
|
@@ -621,7 +621,7 @@ export const hasDies = effect.hasDies;
|
|
|
621
621
|
* Use when you need the full `Die` reason from a `Cause`, including
|
|
622
622
|
* annotations.
|
|
623
623
|
*
|
|
624
|
-
* **Example** (
|
|
624
|
+
* **Example** (Extracting the first Die reason)
|
|
625
625
|
*
|
|
626
626
|
* ```ts
|
|
627
627
|
* import { Cause, Result } from "effect"
|
|
@@ -649,7 +649,7 @@ export const findDie = effect.findDie;
|
|
|
649
649
|
* Use when you need the first defect value from a `Cause` as a `Result`,
|
|
650
650
|
* without the full `Die` reason.
|
|
651
651
|
*
|
|
652
|
-
* **Example** (
|
|
652
|
+
* **Example** (Extracting the first defect)
|
|
653
653
|
*
|
|
654
654
|
* ```ts
|
|
655
655
|
* import { Cause, Result } from "effect"
|
|
@@ -670,7 +670,7 @@ export const findDefect = effect.findDefect;
|
|
|
670
670
|
/**
|
|
671
671
|
* Returns `true` if the cause contains at least one `Interrupt` reason.
|
|
672
672
|
*
|
|
673
|
-
* **Example** (
|
|
673
|
+
* **Example** (Checking for interruptions)
|
|
674
674
|
*
|
|
675
675
|
* ```ts
|
|
676
676
|
* import { Cause } from "effect"
|
|
@@ -697,7 +697,7 @@ export const hasInterrupts = effect.hasInterrupts;
|
|
|
697
697
|
* Use when you need the first `Interrupt` reason from a `Cause`, including the
|
|
698
698
|
* fiber ID and annotations.
|
|
699
699
|
*
|
|
700
|
-
* **Example** (
|
|
700
|
+
* **Example** (Extracting the first interrupt)
|
|
701
701
|
*
|
|
702
702
|
* ```ts
|
|
703
703
|
* import { Cause, Result } from "effect"
|
|
@@ -724,7 +724,7 @@ export const findInterrupt = effect.findInterrupt;
|
|
|
724
724
|
* Use when you need interrupting fiber IDs as a set, with absence represented
|
|
725
725
|
* as an empty set.
|
|
726
726
|
*
|
|
727
|
-
* **Example** (
|
|
727
|
+
* **Example** (Collecting interruptors)
|
|
728
728
|
*
|
|
729
729
|
* ```ts
|
|
730
730
|
* import { Cause } from "effect"
|
|
@@ -759,7 +759,7 @@ export const interruptors = effect.causeInterruptors;
|
|
|
759
759
|
* function succeeds with an empty `Set` when every interrupt reason has an
|
|
760
760
|
* undefined fiber ID.
|
|
761
761
|
*
|
|
762
|
-
* **Example** (
|
|
762
|
+
* **Example** (Extracting interruptors with Result)
|
|
763
763
|
*
|
|
764
764
|
* ```ts
|
|
765
765
|
* import { Cause, Result } from "effect"
|
|
@@ -803,7 +803,7 @@ export const filterInterruptors = effect.causeFilterInterruptors;
|
|
|
803
803
|
*
|
|
804
804
|
* An empty cause returns an empty array.
|
|
805
805
|
*
|
|
806
|
-
* **Example** (
|
|
806
|
+
* **Example** (Converting a cause to errors)
|
|
807
807
|
*
|
|
808
808
|
* ```ts
|
|
809
809
|
* import { Cause } from "effect"
|
|
@@ -850,7 +850,7 @@ export const prettyErrors = effect.causePrettyErrors;
|
|
|
850
850
|
* Rendering an empty cause produces an empty string because there are no
|
|
851
851
|
* errors to render.
|
|
852
852
|
*
|
|
853
|
-
* **Example** (
|
|
853
|
+
* **Example** (Rendering a cause)
|
|
854
854
|
*
|
|
855
855
|
* ```ts
|
|
856
856
|
* import { Cause } from "effect"
|
|
@@ -868,7 +868,7 @@ export const pretty = effect.causePretty;
|
|
|
868
868
|
/**
|
|
869
869
|
* Checks whether an arbitrary value is a `NoSuchElementError`.
|
|
870
870
|
*
|
|
871
|
-
* **Example** (runtime type
|
|
871
|
+
* **Example** (Checking the runtime type)
|
|
872
872
|
*
|
|
873
873
|
* ```ts
|
|
874
874
|
* import { Cause } from "effect"
|
|
@@ -896,7 +896,7 @@ export const NoSuchElementErrorTypeId = core.NoSuchElementErrorTypeId;
|
|
|
896
896
|
* Use to create the error value for APIs that intentionally fail when an
|
|
897
897
|
* expected element is absent.
|
|
898
898
|
*
|
|
899
|
-
* **Example** (
|
|
899
|
+
* **Example** (Creating a NoSuchElementError)
|
|
900
900
|
*
|
|
901
901
|
* ```ts
|
|
902
902
|
* import { Cause } from "effect"
|
|
@@ -914,7 +914,7 @@ export const NoSuchElementError = core.NoSuchElementError;
|
|
|
914
914
|
/**
|
|
915
915
|
* Checks whether an arbitrary value is a `Done` signal.
|
|
916
916
|
*
|
|
917
|
-
* **Example** (runtime type
|
|
917
|
+
* **Example** (Checking the runtime type)
|
|
918
918
|
*
|
|
919
919
|
* ```ts
|
|
920
920
|
* import { Cause } from "effect"
|
|
@@ -955,7 +955,7 @@ export const Done = core.Done;
|
|
|
955
955
|
*
|
|
956
956
|
* Use when you model stream or queue completion through the error channel.
|
|
957
957
|
*
|
|
958
|
-
* **Example** (
|
|
958
|
+
* **Example** (Failing with Done)
|
|
959
959
|
*
|
|
960
960
|
* ```ts
|
|
961
961
|
* import { Cause, Effect } from "effect"
|
|
@@ -983,7 +983,7 @@ export const TimeoutErrorTypeId = effect.TimeoutErrorTypeId;
|
|
|
983
983
|
/**
|
|
984
984
|
* Checks whether an arbitrary value is a `TimeoutError`.
|
|
985
985
|
*
|
|
986
|
-
* **Example** (runtime type
|
|
986
|
+
* **Example** (Checking the runtime type)
|
|
987
987
|
*
|
|
988
988
|
* ```ts
|
|
989
989
|
* import { Cause } from "effect"
|
|
@@ -999,7 +999,7 @@ export const isTimeoutError = effect.isTimeoutError;
|
|
|
999
999
|
/**
|
|
1000
1000
|
* Constructs a `TimeoutError` with an optional message.
|
|
1001
1001
|
*
|
|
1002
|
-
* **Example** (
|
|
1002
|
+
* **Example** (Creating a TimeoutError)
|
|
1003
1003
|
*
|
|
1004
1004
|
* ```ts
|
|
1005
1005
|
* import { Cause } from "effect"
|
|
@@ -1022,7 +1022,7 @@ export const IllegalArgumentErrorTypeId = effect.IllegalArgumentErrorTypeId;
|
|
|
1022
1022
|
/**
|
|
1023
1023
|
* Checks whether an arbitrary value is an `IllegalArgumentError`.
|
|
1024
1024
|
*
|
|
1025
|
-
* **Example** (runtime type
|
|
1025
|
+
* **Example** (Checking the runtime type)
|
|
1026
1026
|
*
|
|
1027
1027
|
* ```ts
|
|
1028
1028
|
* import { Cause } from "effect"
|
|
@@ -1038,7 +1038,7 @@ export const isIllegalArgumentError = effect.isIllegalArgumentError;
|
|
|
1038
1038
|
/**
|
|
1039
1039
|
* Constructs an `IllegalArgumentError` with an optional message.
|
|
1040
1040
|
*
|
|
1041
|
-
* **Example** (
|
|
1041
|
+
* **Example** (Creating an IllegalArgumentError)
|
|
1042
1042
|
*
|
|
1043
1043
|
* ```ts
|
|
1044
1044
|
* import { Cause } from "effect"
|
|
@@ -1054,7 +1054,7 @@ export const IllegalArgumentError = effect.IllegalArgumentError;
|
|
|
1054
1054
|
/**
|
|
1055
1055
|
* Checks whether an arbitrary value is an `ExceededCapacityError`.
|
|
1056
1056
|
*
|
|
1057
|
-
* **Example** (runtime type
|
|
1057
|
+
* **Example** (Checking the runtime type)
|
|
1058
1058
|
*
|
|
1059
1059
|
* ```ts
|
|
1060
1060
|
* import { Cause } from "effect"
|
|
@@ -1081,7 +1081,7 @@ export const ExceededCapacityErrorTypeId = effect.ExceededCapacityErrorTypeId;
|
|
|
1081
1081
|
*
|
|
1082
1082
|
* Use to create the error value for bounded-resource capacity failures.
|
|
1083
1083
|
*
|
|
1084
|
-
* **Example** (
|
|
1084
|
+
* **Example** (Creating an ExceededCapacityError)
|
|
1085
1085
|
*
|
|
1086
1086
|
* ```ts
|
|
1087
1087
|
* import { Cause } from "effect"
|
|
@@ -1107,7 +1107,7 @@ export const AsyncFiberErrorTypeId = effect.AsyncFiberErrorTypeId;
|
|
|
1107
1107
|
/**
|
|
1108
1108
|
* Checks whether an arbitrary value is an `AsyncFiberError`.
|
|
1109
1109
|
*
|
|
1110
|
-
* **Example** (runtime type
|
|
1110
|
+
* **Example** (Checking the runtime type)
|
|
1111
1111
|
*
|
|
1112
1112
|
* ```ts
|
|
1113
1113
|
* import { Cause } from "effect"
|
|
@@ -1133,7 +1133,7 @@ export const isAsyncFiberError = effect.isAsyncFiberError;
|
|
|
1133
1133
|
* Use to create the error value for a fiber that could not be completed by a
|
|
1134
1134
|
* synchronous runner.
|
|
1135
1135
|
*
|
|
1136
|
-
* **Example** (
|
|
1136
|
+
* **Example** (Creating an AsyncFiberError)
|
|
1137
1137
|
*
|
|
1138
1138
|
* ```ts
|
|
1139
1139
|
* import { Cause } from "effect"
|
|
@@ -1161,7 +1161,7 @@ export const UnknownErrorTypeId = effect.UnknownErrorTypeId;
|
|
|
1161
1161
|
/**
|
|
1162
1162
|
* Checks whether an arbitrary value is an `UnknownError`.
|
|
1163
1163
|
*
|
|
1164
|
-
* **Example** (runtime type
|
|
1164
|
+
* **Example** (Checking the runtime type)
|
|
1165
1165
|
*
|
|
1166
1166
|
* ```ts
|
|
1167
1167
|
* import { Cause } from "effect"
|
|
@@ -1179,7 +1179,7 @@ export const isUnknownError = effect.isUnknownError;
|
|
|
1179
1179
|
* cause (stored in `Error.cause`); the second is an optional human-readable
|
|
1180
1180
|
* message.
|
|
1181
1181
|
*
|
|
1182
|
-
* **Example** (
|
|
1182
|
+
* **Example** (Creating an UnknownError)
|
|
1183
1183
|
*
|
|
1184
1184
|
* ```ts
|
|
1185
1185
|
* import { Cause } from "effect"
|
|
@@ -1209,7 +1209,7 @@ export const UnknownError = effect.UnknownError;
|
|
|
1209
1209
|
* - By default, existing keys are preserved. Pass `{ overwrite: true }` to
|
|
1210
1210
|
* replace them.
|
|
1211
1211
|
*
|
|
1212
|
-
* **Example** (
|
|
1212
|
+
* **Example** (Annotating a cause)
|
|
1213
1213
|
*
|
|
1214
1214
|
* ```ts
|
|
1215
1215
|
* import { Cause, Context } from "effect"
|
|
@@ -1237,7 +1237,7 @@ export const annotate = core.causeAnnotate;
|
|
|
1237
1237
|
* Use when you need tracing metadata (e.g. `StackTrace`) from
|
|
1238
1238
|
* a specific reason rather than the whole cause.
|
|
1239
1239
|
*
|
|
1240
|
-
* **Example** (
|
|
1240
|
+
* **Example** (Reading reason annotations)
|
|
1241
1241
|
*
|
|
1242
1242
|
* ```ts
|
|
1243
1243
|
* import { Cause, Context } from "effect"
|
|
@@ -1268,7 +1268,7 @@ export const reasonAnnotations = effect.reasonAnnotations;
|
|
|
1268
1268
|
* When multiple reasons contain the same annotation key, the value from the
|
|
1269
1269
|
* later reason wins.
|
|
1270
1270
|
*
|
|
1271
|
-
* **Example** (
|
|
1271
|
+
* **Example** (Reading merged annotations)
|
|
1272
1272
|
*
|
|
1273
1273
|
* ```ts
|
|
1274
1274
|
* import { Cause, Context } from "effect"
|
package/dist/Channel.d.ts
CHANGED
|
@@ -658,7 +658,7 @@ export declare const sync: <A>(evaluate: LazyArg<A>) => Channel<A>;
|
|
|
658
658
|
/**
|
|
659
659
|
* Represents a `Channel` that emits no elements.
|
|
660
660
|
*
|
|
661
|
-
* **Example** (
|
|
661
|
+
* **Example** (Creating empty channels)
|
|
662
662
|
*
|
|
663
663
|
* ```ts
|
|
664
664
|
* import { Channel } from "effect"
|
|
@@ -682,7 +682,7 @@ export declare const empty: Channel<never>;
|
|
|
682
682
|
/**
|
|
683
683
|
* Represents a `Channel` that never completes.
|
|
684
684
|
*
|
|
685
|
-
* **Example** (
|
|
685
|
+
* **Example** (Creating non-terminating channels)
|
|
686
686
|
*
|
|
687
687
|
* ```ts
|
|
688
688
|
* import { Channel } from "effect"
|
|
@@ -1964,7 +1964,7 @@ export declare const tap: {
|
|
|
1964
1964
|
* sequentially. Use `options.concurrency` and `options.bufferSize` to run child
|
|
1965
1965
|
* channels concurrently.
|
|
1966
1966
|
*
|
|
1967
|
-
* **Example** (
|
|
1967
|
+
* **Example** (Flat mapping channel output)
|
|
1968
1968
|
*
|
|
1969
1969
|
* ```ts
|
|
1970
1970
|
* import { Channel, Data } from "effect"
|
|
@@ -2002,7 +2002,7 @@ export declare const flatMap: {
|
|
|
2002
2002
|
* sequentially. Use `options.concurrency` and `options.bufferSize` to run child
|
|
2003
2003
|
* channels concurrently.
|
|
2004
2004
|
*
|
|
2005
|
-
* **Example** (
|
|
2005
|
+
* **Example** (Flat mapping channel output)
|
|
2006
2006
|
*
|
|
2007
2007
|
* ```ts
|
|
2008
2008
|
* import { Channel, Data } from "effect"
|
|
@@ -2043,7 +2043,7 @@ export declare const flatMap: {
|
|
|
2043
2043
|
* sequentially. Use `options.concurrency` and `options.bufferSize` to run child
|
|
2044
2044
|
* channels concurrently.
|
|
2045
2045
|
*
|
|
2046
|
-
* **Example** (
|
|
2046
|
+
* **Example** (Flat mapping channel output)
|
|
2047
2047
|
*
|
|
2048
2048
|
* ```ts
|
|
2049
2049
|
* import { Channel, Data } from "effect"
|
package/dist/Channel.js
CHANGED
|
@@ -532,7 +532,7 @@ export const sync = evaluate => fromEffect(Effect.sync(evaluate));
|
|
|
532
532
|
/**
|
|
533
533
|
* Represents a `Channel` that emits no elements.
|
|
534
534
|
*
|
|
535
|
-
* **Example** (
|
|
535
|
+
* **Example** (Creating empty channels)
|
|
536
536
|
*
|
|
537
537
|
* ```ts
|
|
538
538
|
* import { Channel } from "effect"
|
|
@@ -556,7 +556,7 @@ export const empty = /*#__PURE__*/fromPull(/*#__PURE__*/Effect.succeed(/*#__PURE
|
|
|
556
556
|
/**
|
|
557
557
|
* Represents a `Channel` that never completes.
|
|
558
558
|
*
|
|
559
|
-
* **Example** (
|
|
559
|
+
* **Example** (Creating non-terminating channels)
|
|
560
560
|
*
|
|
561
561
|
* ```ts
|
|
562
562
|
* import { Channel } from "effect"
|
|
@@ -1558,7 +1558,7 @@ export const tap = /*#__PURE__*/dual(args => isChannel(args[0]), (self, f, optio
|
|
|
1558
1558
|
* sequentially. Use `options.concurrency` and `options.bufferSize` to run child
|
|
1559
1559
|
* channels concurrently.
|
|
1560
1560
|
*
|
|
1561
|
-
* **Example** (
|
|
1561
|
+
* **Example** (Flat mapping channel output)
|
|
1562
1562
|
*
|
|
1563
1563
|
* ```ts
|
|
1564
1564
|
* import { Channel, Data } from "effect"
|
package/dist/Clock.d.ts
CHANGED
|
@@ -114,7 +114,7 @@ export declare const Clock: Context.Reference<Clock>;
|
|
|
114
114
|
* Use when you need the full Clock service interface to perform multiple time
|
|
115
115
|
* operations or call unsafe variants within a single effect.
|
|
116
116
|
*
|
|
117
|
-
* **Example** (
|
|
117
|
+
* **Example** (Accessing the current Clock service)
|
|
118
118
|
*
|
|
119
119
|
* ```ts
|
|
120
120
|
* import { Clock, Effect } from "effect"
|
package/dist/Clock.js
CHANGED
|
@@ -34,7 +34,7 @@ export const Clock = effect.ClockRef;
|
|
|
34
34
|
* Use when you need the full Clock service interface to perform multiple time
|
|
35
35
|
* operations or call unsafe variants within a single effect.
|
|
36
36
|
*
|
|
37
|
-
* **Example** (
|
|
37
|
+
* **Example** (Accessing the current Clock service)
|
|
38
38
|
*
|
|
39
39
|
* ```ts
|
|
40
40
|
* import { Clock, Effect } from "effect"
|
package/dist/Combiner.d.ts
CHANGED
|
@@ -23,7 +23,7 @@ import type * as Order from "./Order.ts";
|
|
|
23
23
|
* `Struct.makeCombiner` or `Option.makeCombinerFailFast`, or define the
|
|
24
24
|
* combining step for a `Reducer`.
|
|
25
25
|
*
|
|
26
|
-
* **Example** (
|
|
26
|
+
* **Example** (Combining numbers with addition)
|
|
27
27
|
*
|
|
28
28
|
* ```ts
|
|
29
29
|
* import { Combiner } from "effect"
|
|
@@ -61,7 +61,7 @@ export interface Combiner<A> {
|
|
|
61
61
|
* The returned combiner's `combine` method delegates to the provided function.
|
|
62
62
|
* Any purity, associativity, or mutation behavior comes from that function.
|
|
63
63
|
*
|
|
64
|
-
* **Example** (
|
|
64
|
+
* **Example** (Multiplying numbers)
|
|
65
65
|
*
|
|
66
66
|
* ```ts
|
|
67
67
|
* import { Combiner } from "effect"
|
|
@@ -90,7 +90,7 @@ export declare function make<A>(combine: (self: A, that: A) => A): Combiner<A>;
|
|
|
90
90
|
* Returns a new `Combiner` where `combine(self, that)` calls the original
|
|
91
91
|
* combiner as `combine(that, self)`.
|
|
92
92
|
*
|
|
93
|
-
* **Example** (
|
|
93
|
+
* **Example** (Reversing string concatenation)
|
|
94
94
|
*
|
|
95
95
|
* ```ts
|
|
96
96
|
* import { Combiner, String } from "effect"
|
|
@@ -120,7 +120,7 @@ export declare function flip<A>(combiner: Combiner<A>): Combiner<A>;
|
|
|
120
120
|
* The combiner compares values using the given `Order`. When values are equal,
|
|
121
121
|
* it returns `that` (the second argument).
|
|
122
122
|
*
|
|
123
|
-
* **Example** (minimum of two numbers)
|
|
123
|
+
* **Example** (Selecting the minimum of two numbers)
|
|
124
124
|
*
|
|
125
125
|
* ```ts
|
|
126
126
|
* import { Combiner, Number } from "effect"
|
|
@@ -153,7 +153,7 @@ export declare function min<A>(order: Order.Order<A>): Combiner<A>;
|
|
|
153
153
|
* The combiner compares values using the given `Order`. When values are equal,
|
|
154
154
|
* it returns `that` (the second argument).
|
|
155
155
|
*
|
|
156
|
-
* **Example** (maximum of two numbers)
|
|
156
|
+
* **Example** (Selecting the maximum of two numbers)
|
|
157
157
|
*
|
|
158
158
|
* ```ts
|
|
159
159
|
* import { Combiner, Number } from "effect"
|
|
@@ -183,7 +183,7 @@ export declare function max<A>(order: Order.Order<A>): Combiner<A>;
|
|
|
183
183
|
*
|
|
184
184
|
* `combine(self, that)` returns `self` and ignores `that`.
|
|
185
185
|
*
|
|
186
|
-
* **Example** (
|
|
186
|
+
* **Example** (Keeping the first value)
|
|
187
187
|
*
|
|
188
188
|
* ```ts
|
|
189
189
|
* import { Combiner } from "effect"
|
|
@@ -210,7 +210,7 @@ export declare function first<A>(): Combiner<A>;
|
|
|
210
210
|
*
|
|
211
211
|
* `combine(self, that)` returns `that` and ignores `self`.
|
|
212
212
|
*
|
|
213
|
-
* **Example** (
|
|
213
|
+
* **Example** (Keeping the last value)
|
|
214
214
|
*
|
|
215
215
|
* ```ts
|
|
216
216
|
* import { Combiner } from "effect"
|
|
@@ -239,7 +239,7 @@ export declare function last<A>(): Combiner<A>;
|
|
|
239
239
|
*
|
|
240
240
|
* `combine(self, that)` returns the constant `a` and ignores both arguments.
|
|
241
241
|
*
|
|
242
|
-
* **Example** (
|
|
242
|
+
* **Example** (Always returning zero)
|
|
243
243
|
*
|
|
244
244
|
* ```ts
|
|
245
245
|
* import { Combiner } from "effect"
|
|
@@ -272,7 +272,7 @@ export declare function constant<A>(a: A): Combiner<A>;
|
|
|
272
272
|
* `combiner.combine(self, combiner.combine(middle, that))`. This function is
|
|
273
273
|
* curried: first provide the separator, then the base combiner.
|
|
274
274
|
*
|
|
275
|
-
* **Example** (
|
|
275
|
+
* **Example** (Joining strings with a separator)
|
|
276
276
|
*
|
|
277
277
|
* ```ts
|
|
278
278
|
* import { Combiner, String } from "effect"
|
package/dist/Combiner.js
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
* The returned combiner's `combine` method delegates to the provided function.
|
|
12
12
|
* Any purity, associativity, or mutation behavior comes from that function.
|
|
13
13
|
*
|
|
14
|
-
* **Example** (
|
|
14
|
+
* **Example** (Multiplying numbers)
|
|
15
15
|
*
|
|
16
16
|
* ```ts
|
|
17
17
|
* import { Combiner } from "effect"
|
|
@@ -44,7 +44,7 @@ export function make(combine) {
|
|
|
44
44
|
* Returns a new `Combiner` where `combine(self, that)` calls the original
|
|
45
45
|
* combiner as `combine(that, self)`.
|
|
46
46
|
*
|
|
47
|
-
* **Example** (
|
|
47
|
+
* **Example** (Reversing string concatenation)
|
|
48
48
|
*
|
|
49
49
|
* ```ts
|
|
50
50
|
* import { Combiner, String } from "effect"
|
|
@@ -76,7 +76,7 @@ export function flip(combiner) {
|
|
|
76
76
|
* The combiner compares values using the given `Order`. When values are equal,
|
|
77
77
|
* it returns `that` (the second argument).
|
|
78
78
|
*
|
|
79
|
-
* **Example** (minimum of two numbers)
|
|
79
|
+
* **Example** (Selecting the minimum of two numbers)
|
|
80
80
|
*
|
|
81
81
|
* ```ts
|
|
82
82
|
* import { Combiner, Number } from "effect"
|
|
@@ -111,7 +111,7 @@ export function min(order) {
|
|
|
111
111
|
* The combiner compares values using the given `Order`. When values are equal,
|
|
112
112
|
* it returns `that` (the second argument).
|
|
113
113
|
*
|
|
114
|
-
* **Example** (maximum of two numbers)
|
|
114
|
+
* **Example** (Selecting the maximum of two numbers)
|
|
115
115
|
*
|
|
116
116
|
* ```ts
|
|
117
117
|
* import { Combiner, Number } from "effect"
|
|
@@ -143,7 +143,7 @@ export function max(order) {
|
|
|
143
143
|
*
|
|
144
144
|
* `combine(self, that)` returns `self` and ignores `that`.
|
|
145
145
|
*
|
|
146
|
-
* **Example** (
|
|
146
|
+
* **Example** (Keeping the first value)
|
|
147
147
|
*
|
|
148
148
|
* ```ts
|
|
149
149
|
* import { Combiner } from "effect"
|
|
@@ -172,7 +172,7 @@ export function first() {
|
|
|
172
172
|
*
|
|
173
173
|
* `combine(self, that)` returns `that` and ignores `self`.
|
|
174
174
|
*
|
|
175
|
-
* **Example** (
|
|
175
|
+
* **Example** (Keeping the last value)
|
|
176
176
|
*
|
|
177
177
|
* ```ts
|
|
178
178
|
* import { Combiner } from "effect"
|
|
@@ -203,7 +203,7 @@ export function last() {
|
|
|
203
203
|
*
|
|
204
204
|
* `combine(self, that)` returns the constant `a` and ignores both arguments.
|
|
205
205
|
*
|
|
206
|
-
* **Example** (
|
|
206
|
+
* **Example** (Always returning zero)
|
|
207
207
|
*
|
|
208
208
|
* ```ts
|
|
209
209
|
* import { Combiner } from "effect"
|
|
@@ -238,7 +238,7 @@ export function constant(a) {
|
|
|
238
238
|
* `combiner.combine(self, combiner.combine(middle, that))`. This function is
|
|
239
239
|
* curried: first provide the separator, then the base combiner.
|
|
240
240
|
*
|
|
241
|
-
* **Example** (
|
|
241
|
+
* **Example** (Joining strings with a separator)
|
|
242
242
|
*
|
|
243
243
|
* ```ts
|
|
244
244
|
* import { Combiner, String } from "effect"
|