effect 3.12.12 → 3.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/DateTime.js +17 -1
- package/dist/cjs/DateTime.js.map +1 -1
- package/dist/cjs/Differ.js.map +1 -1
- package/dist/cjs/Duration.js +128 -1
- package/dist/cjs/Duration.js.map +1 -1
- package/dist/cjs/Effect.js +151 -17
- package/dist/cjs/Effect.js.map +1 -1
- package/dist/cjs/Either.js +2 -1
- package/dist/cjs/Either.js.map +1 -1
- package/dist/cjs/FiberHandle.js +54 -21
- package/dist/cjs/FiberHandle.js.map +1 -1
- package/dist/cjs/FiberMap.js +51 -24
- package/dist/cjs/FiberMap.js.map +1 -1
- package/dist/cjs/FiberSet.js +50 -17
- package/dist/cjs/FiberSet.js.map +1 -1
- package/dist/cjs/HashMap.js +19 -1
- package/dist/cjs/HashMap.js.map +1 -1
- package/dist/cjs/HashSet.js +9 -1
- package/dist/cjs/HashSet.js.map +1 -1
- package/dist/cjs/Layer.js +21 -1
- package/dist/cjs/Layer.js.map +1 -1
- package/dist/cjs/RcMap.js +11 -1
- package/dist/cjs/RcMap.js.map +1 -1
- package/dist/cjs/Schema.js +73 -1
- package/dist/cjs/Schema.js.map +1 -1
- package/dist/cjs/internal/core.js +27 -3
- package/dist/cjs/internal/core.js.map +1 -1
- package/dist/cjs/internal/dateTime.js +4 -1
- package/dist/cjs/internal/dateTime.js.map +1 -1
- package/dist/cjs/internal/differ.js +4 -0
- package/dist/cjs/internal/differ.js.map +1 -1
- package/dist/cjs/internal/fiberRuntime.js +15 -2
- package/dist/cjs/internal/fiberRuntime.js.map +1 -1
- package/dist/cjs/internal/hashMap.js +10 -1
- package/dist/cjs/internal/hashMap.js.map +1 -1
- package/dist/cjs/internal/keyedPool.js +1 -1
- package/dist/cjs/internal/keyedPool.js.map +1 -1
- package/dist/cjs/internal/rcMap.js +86 -56
- package/dist/cjs/internal/rcMap.js.map +1 -1
- package/dist/cjs/internal/version.js +1 -1
- package/dist/cjs/internal/version.js.map +1 -1
- package/dist/dts/DateTime.d.ts +16 -0
- package/dist/dts/DateTime.d.ts.map +1 -1
- package/dist/dts/Differ.d.ts +2 -1
- package/dist/dts/Differ.d.ts.map +1 -1
- package/dist/dts/Duration.d.ts +64 -0
- package/dist/dts/Duration.d.ts.map +1 -1
- package/dist/dts/Effect.d.ts +396 -24
- package/dist/dts/Effect.d.ts.map +1 -1
- package/dist/dts/Either.d.ts +7 -0
- package/dist/dts/Either.d.ts.map +1 -1
- package/dist/dts/FiberHandle.d.ts +26 -0
- package/dist/dts/FiberHandle.d.ts.map +1 -1
- package/dist/dts/FiberMap.d.ts +26 -0
- package/dist/dts/FiberMap.d.ts.map +1 -1
- package/dist/dts/FiberSet.d.ts +25 -0
- package/dist/dts/FiberSet.d.ts.map +1 -1
- package/dist/dts/HashMap.d.ts +38 -0
- package/dist/dts/HashMap.d.ts.map +1 -1
- package/dist/dts/HashSet.d.ts +7 -0
- package/dist/dts/HashSet.d.ts.map +1 -1
- package/dist/dts/Layer.d.ts +20 -1
- package/dist/dts/Layer.d.ts.map +1 -1
- package/dist/dts/RcMap.d.ts +32 -0
- package/dist/dts/RcMap.d.ts.map +1 -1
- package/dist/dts/Schema.d.ts +30 -0
- package/dist/dts/Schema.d.ts.map +1 -1
- package/dist/dts/Trie.d.ts +7 -7
- package/dist/dts/Trie.d.ts.map +1 -1
- package/dist/esm/DateTime.js +16 -0
- package/dist/esm/DateTime.js.map +1 -1
- package/dist/esm/Differ.js.map +1 -1
- package/dist/esm/Duration.js +124 -0
- package/dist/esm/Duration.js.map +1 -1
- package/dist/esm/Effect.js +146 -12
- package/dist/esm/Effect.js.map +1 -1
- package/dist/esm/Either.js +7 -0
- package/dist/esm/Either.js.map +1 -1
- package/dist/esm/FiberHandle.js +48 -18
- package/dist/esm/FiberHandle.js.map +1 -1
- package/dist/esm/FiberMap.js +46 -22
- package/dist/esm/FiberMap.js.map +1 -1
- package/dist/esm/FiberSet.js +45 -15
- package/dist/esm/FiberSet.js.map +1 -1
- package/dist/esm/HashMap.js +17 -0
- package/dist/esm/HashMap.js.map +1 -1
- package/dist/esm/HashSet.js +7 -0
- package/dist/esm/HashSet.js.map +1 -1
- package/dist/esm/Layer.js +20 -0
- package/dist/esm/Layer.js.map +1 -1
- package/dist/esm/RcMap.js +10 -0
- package/dist/esm/RcMap.js.map +1 -1
- package/dist/esm/Schema.js +71 -0
- package/dist/esm/Schema.js.map +1 -1
- package/dist/esm/internal/core.js +23 -0
- package/dist/esm/internal/core.js.map +1 -1
- package/dist/esm/internal/dateTime.js +2 -0
- package/dist/esm/internal/dateTime.js.map +1 -1
- package/dist/esm/internal/differ.js +4 -0
- package/dist/esm/internal/differ.js.map +1 -1
- package/dist/esm/internal/fiberRuntime.js +12 -0
- package/dist/esm/internal/fiberRuntime.js.map +1 -1
- package/dist/esm/internal/hashMap.js +9 -0
- package/dist/esm/internal/hashMap.js.map +1 -1
- package/dist/esm/internal/keyedPool.js +1 -1
- package/dist/esm/internal/keyedPool.js.map +1 -1
- package/dist/esm/internal/rcMap.js +85 -55
- package/dist/esm/internal/rcMap.js.map +1 -1
- package/dist/esm/internal/version.js +1 -1
- package/dist/esm/internal/version.js.map +1 -1
- package/package.json +2 -1
- package/src/DateTime.ts +17 -8
- package/src/Differ.ts +2 -1
- package/src/Duration.ts +147 -0
- package/src/Effect.ts +498 -112
- package/src/Either.ts +9 -0
- package/src/FiberHandle.ts +95 -35
- package/src/FiberMap.ts +104 -39
- package/src/FiberSet.ts +93 -24
- package/src/HashMap.ts +40 -0
- package/src/HashSet.ts +8 -0
- package/src/Layer.ts +64 -1
- package/src/RcMap.ts +34 -0
- package/src/Schema.ts +77 -0
- package/src/Trie.ts +7 -7
- package/src/internal/core.ts +80 -0
- package/src/internal/dateTime.ts +3 -0
- package/src/internal/differ.ts +4 -0
- package/src/internal/fiberRuntime.ts +24 -0
- package/src/internal/hashMap.ts +16 -0
- package/src/internal/keyedPool.ts +1 -1
- package/src/internal/rcMap.ts +131 -89
- package/src/internal/version.ts +1 -1
package/src/Effect.ts
CHANGED
|
@@ -34,12 +34,13 @@ import * as defaultServices from "./internal/defaultServices.js"
|
|
|
34
34
|
import * as circular from "./internal/effect/circular.js"
|
|
35
35
|
import * as fiberRuntime from "./internal/fiberRuntime.js"
|
|
36
36
|
import * as layer from "./internal/layer.js"
|
|
37
|
+
import * as option_ from "./internal/option.js"
|
|
37
38
|
import * as query from "./internal/query.js"
|
|
38
39
|
import * as runtime_ from "./internal/runtime.js"
|
|
39
40
|
import * as schedule_ from "./internal/schedule.js"
|
|
40
41
|
import * as internalTracer from "./internal/tracer.js"
|
|
41
42
|
import type * as Layer from "./Layer.js"
|
|
42
|
-
import type
|
|
43
|
+
import type * as LogLevel from "./LogLevel.js"
|
|
43
44
|
import type * as ManagedRuntime from "./ManagedRuntime.js"
|
|
44
45
|
import type * as Metric from "./Metric.js"
|
|
45
46
|
import type * as MetricLabel from "./MetricLabel.js"
|
|
@@ -16778,6 +16779,263 @@ export const filterOrFail: {
|
|
|
16778
16779
|
<A, E, R>(self: Effect<A, E, R>, predicate: Predicate<A>): Effect<A, E | Cause.NoSuchElementException, R>
|
|
16779
16780
|
} = effect.filterOrFail
|
|
16780
16781
|
|
|
16782
|
+
/**
|
|
16783
|
+
* Filters an effect with an effectful predicate, falling back to an alternative
|
|
16784
|
+
* effect if the predicate fails.
|
|
16785
|
+
*
|
|
16786
|
+
* **Details**
|
|
16787
|
+
*
|
|
16788
|
+
* This function applies a predicate to the result of an effect. If the
|
|
16789
|
+
* predicate evaluates to `false`, the effect falls back to the `orElse`
|
|
16790
|
+
* effect. The `orElse` effect can produce an alternative value or perform
|
|
16791
|
+
* additional computations.
|
|
16792
|
+
*
|
|
16793
|
+
* @example
|
|
16794
|
+
* ```ts
|
|
16795
|
+
* import { Effect, pipe } from "effect"
|
|
16796
|
+
*
|
|
16797
|
+
* // Define a user interface
|
|
16798
|
+
* interface User {
|
|
16799
|
+
* readonly name: string
|
|
16800
|
+
* }
|
|
16801
|
+
*
|
|
16802
|
+
* // Simulate an asynchronous authentication function
|
|
16803
|
+
* declare const auth: () => Promise<User | null>
|
|
16804
|
+
*
|
|
16805
|
+
* const program = pipe(
|
|
16806
|
+
* Effect.promise(() => auth()),
|
|
16807
|
+
* // Use filterEffectOrElse with an effectful predicate
|
|
16808
|
+
* Effect.filterEffectOrElse({
|
|
16809
|
+
* predicate: (user) => Effect.succeed(user !== null),
|
|
16810
|
+
* orElse: (user) => Effect.fail(new Error(`Unauthorized user: ${user}`))
|
|
16811
|
+
* }),
|
|
16812
|
+
* )
|
|
16813
|
+
* ```
|
|
16814
|
+
*
|
|
16815
|
+
* @since 3.13.0
|
|
16816
|
+
* @category Filtering
|
|
16817
|
+
*/
|
|
16818
|
+
export const filterEffectOrElse: {
|
|
16819
|
+
/**
|
|
16820
|
+
* Filters an effect with an effectful predicate, falling back to an alternative
|
|
16821
|
+
* effect if the predicate fails.
|
|
16822
|
+
*
|
|
16823
|
+
* **Details**
|
|
16824
|
+
*
|
|
16825
|
+
* This function applies a predicate to the result of an effect. If the
|
|
16826
|
+
* predicate evaluates to `false`, the effect falls back to the `orElse`
|
|
16827
|
+
* effect. The `orElse` effect can produce an alternative value or perform
|
|
16828
|
+
* additional computations.
|
|
16829
|
+
*
|
|
16830
|
+
* @example
|
|
16831
|
+
* ```ts
|
|
16832
|
+
* import { Effect, pipe } from "effect"
|
|
16833
|
+
*
|
|
16834
|
+
* // Define a user interface
|
|
16835
|
+
* interface User {
|
|
16836
|
+
* readonly name: string
|
|
16837
|
+
* }
|
|
16838
|
+
*
|
|
16839
|
+
* // Simulate an asynchronous authentication function
|
|
16840
|
+
* declare const auth: () => Promise<User | null>
|
|
16841
|
+
*
|
|
16842
|
+
* const program = pipe(
|
|
16843
|
+
* Effect.promise(() => auth()),
|
|
16844
|
+
* // Use filterEffectOrElse with an effectful predicate
|
|
16845
|
+
* Effect.filterEffectOrElse({
|
|
16846
|
+
* predicate: (user) => Effect.succeed(user !== null),
|
|
16847
|
+
* orElse: (user) => Effect.fail(new Error(`Unauthorized user: ${user}`))
|
|
16848
|
+
* }),
|
|
16849
|
+
* )
|
|
16850
|
+
* ```
|
|
16851
|
+
*
|
|
16852
|
+
* @since 3.13.0
|
|
16853
|
+
* @category Filtering
|
|
16854
|
+
*/
|
|
16855
|
+
<A, E2, R2, A2, E3, R3>(
|
|
16856
|
+
options: {
|
|
16857
|
+
readonly predicate: (a: NoInfer<A>) => Effect<boolean, E2, R2>
|
|
16858
|
+
readonly orElse: (a: NoInfer<A>) => Effect<A2, E3, R3>
|
|
16859
|
+
}
|
|
16860
|
+
): <E, R>(self: Effect<A, E, R>) => Effect<A | A2, E | E2 | E3, R | R2 | R3>
|
|
16861
|
+
/**
|
|
16862
|
+
* Filters an effect with an effectful predicate, falling back to an alternative
|
|
16863
|
+
* effect if the predicate fails.
|
|
16864
|
+
*
|
|
16865
|
+
* **Details**
|
|
16866
|
+
*
|
|
16867
|
+
* This function applies a predicate to the result of an effect. If the
|
|
16868
|
+
* predicate evaluates to `false`, the effect falls back to the `orElse`
|
|
16869
|
+
* effect. The `orElse` effect can produce an alternative value or perform
|
|
16870
|
+
* additional computations.
|
|
16871
|
+
*
|
|
16872
|
+
* @example
|
|
16873
|
+
* ```ts
|
|
16874
|
+
* import { Effect, pipe } from "effect"
|
|
16875
|
+
*
|
|
16876
|
+
* // Define a user interface
|
|
16877
|
+
* interface User {
|
|
16878
|
+
* readonly name: string
|
|
16879
|
+
* }
|
|
16880
|
+
*
|
|
16881
|
+
* // Simulate an asynchronous authentication function
|
|
16882
|
+
* declare const auth: () => Promise<User | null>
|
|
16883
|
+
*
|
|
16884
|
+
* const program = pipe(
|
|
16885
|
+
* Effect.promise(() => auth()),
|
|
16886
|
+
* // Use filterEffectOrElse with an effectful predicate
|
|
16887
|
+
* Effect.filterEffectOrElse({
|
|
16888
|
+
* predicate: (user) => Effect.succeed(user !== null),
|
|
16889
|
+
* orElse: (user) => Effect.fail(new Error(`Unauthorized user: ${user}`))
|
|
16890
|
+
* }),
|
|
16891
|
+
* )
|
|
16892
|
+
* ```
|
|
16893
|
+
*
|
|
16894
|
+
* @since 3.13.0
|
|
16895
|
+
* @category Filtering
|
|
16896
|
+
*/
|
|
16897
|
+
<A, E, R, E2, R2, A2, E3, R3>(
|
|
16898
|
+
self: Effect<A, E, R>,
|
|
16899
|
+
options: {
|
|
16900
|
+
readonly predicate: (a: A) => Effect<boolean, E2, R2>
|
|
16901
|
+
readonly orElse: (a: A) => Effect<A2, E3, R3>
|
|
16902
|
+
}
|
|
16903
|
+
): Effect<A | A2, E | E2 | E3, R | R2 | R3>
|
|
16904
|
+
} = core.filterEffectOrElse
|
|
16905
|
+
|
|
16906
|
+
/**
|
|
16907
|
+
* Filters an effect with an effectful predicate, failing with a custom error if the predicate fails.
|
|
16908
|
+
*
|
|
16909
|
+
* **Details**
|
|
16910
|
+
*
|
|
16911
|
+
* This function applies a predicate to the result of an effect. If the
|
|
16912
|
+
* predicate evaluates to `false`, the effect fails with a custom error
|
|
16913
|
+
* generated by the `orFailWith` function.
|
|
16914
|
+
*
|
|
16915
|
+
* **When to Use**
|
|
16916
|
+
*
|
|
16917
|
+
* This is useful for enforcing constraints and treating violations as
|
|
16918
|
+
* recoverable errors.
|
|
16919
|
+
*
|
|
16920
|
+
* @example
|
|
16921
|
+
* ```ts
|
|
16922
|
+
* import { Effect, pipe } from "effect"
|
|
16923
|
+
*
|
|
16924
|
+
* // Define a user interface
|
|
16925
|
+
* interface User {
|
|
16926
|
+
* readonly name: string
|
|
16927
|
+
* }
|
|
16928
|
+
*
|
|
16929
|
+
* // Simulate an asynchronous authentication function
|
|
16930
|
+
* declare const auth: () => Promise<User | null>
|
|
16931
|
+
*
|
|
16932
|
+
* const program = pipe(
|
|
16933
|
+
* Effect.promise(() => auth()),
|
|
16934
|
+
* // Use filterEffectOrFail with an effectful predicate
|
|
16935
|
+
* Effect.filterEffectOrFail({
|
|
16936
|
+
* predicate: (user) => Effect.succeed(user !== null),
|
|
16937
|
+
* orFailWith: () => new Error("Unauthorized")
|
|
16938
|
+
* }),
|
|
16939
|
+
* )
|
|
16940
|
+
* ```
|
|
16941
|
+
*
|
|
16942
|
+
* @since 3.13.0
|
|
16943
|
+
* @category Filtering
|
|
16944
|
+
*/
|
|
16945
|
+
export const filterEffectOrFail: {
|
|
16946
|
+
/**
|
|
16947
|
+
* Filters an effect with an effectful predicate, failing with a custom error if the predicate fails.
|
|
16948
|
+
*
|
|
16949
|
+
* **Details**
|
|
16950
|
+
*
|
|
16951
|
+
* This function applies a predicate to the result of an effect. If the
|
|
16952
|
+
* predicate evaluates to `false`, the effect fails with a custom error
|
|
16953
|
+
* generated by the `orFailWith` function.
|
|
16954
|
+
*
|
|
16955
|
+
* **When to Use**
|
|
16956
|
+
*
|
|
16957
|
+
* This is useful for enforcing constraints and treating violations as
|
|
16958
|
+
* recoverable errors.
|
|
16959
|
+
*
|
|
16960
|
+
* @example
|
|
16961
|
+
* ```ts
|
|
16962
|
+
* import { Effect, pipe } from "effect"
|
|
16963
|
+
*
|
|
16964
|
+
* // Define a user interface
|
|
16965
|
+
* interface User {
|
|
16966
|
+
* readonly name: string
|
|
16967
|
+
* }
|
|
16968
|
+
*
|
|
16969
|
+
* // Simulate an asynchronous authentication function
|
|
16970
|
+
* declare const auth: () => Promise<User | null>
|
|
16971
|
+
*
|
|
16972
|
+
* const program = pipe(
|
|
16973
|
+
* Effect.promise(() => auth()),
|
|
16974
|
+
* // Use filterEffectOrFail with an effectful predicate
|
|
16975
|
+
* Effect.filterEffectOrFail({
|
|
16976
|
+
* predicate: (user) => Effect.succeed(user !== null),
|
|
16977
|
+
* orFailWith: () => new Error("Unauthorized")
|
|
16978
|
+
* }),
|
|
16979
|
+
* )
|
|
16980
|
+
* ```
|
|
16981
|
+
*
|
|
16982
|
+
* @since 3.13.0
|
|
16983
|
+
* @category Filtering
|
|
16984
|
+
*/
|
|
16985
|
+
<A, E2, R2, E3>(
|
|
16986
|
+
options: {
|
|
16987
|
+
readonly predicate: (a: NoInfer<A>) => Effect<boolean, E2, R2>
|
|
16988
|
+
readonly orFailWith: (a: NoInfer<A>) => E3
|
|
16989
|
+
}
|
|
16990
|
+
): <E, R>(self: Effect<A, E, R>) => Effect<A, E | E2 | E3, R | R2>
|
|
16991
|
+
/**
|
|
16992
|
+
* Filters an effect with an effectful predicate, failing with a custom error if the predicate fails.
|
|
16993
|
+
*
|
|
16994
|
+
* **Details**
|
|
16995
|
+
*
|
|
16996
|
+
* This function applies a predicate to the result of an effect. If the
|
|
16997
|
+
* predicate evaluates to `false`, the effect fails with a custom error
|
|
16998
|
+
* generated by the `orFailWith` function.
|
|
16999
|
+
*
|
|
17000
|
+
* **When to Use**
|
|
17001
|
+
*
|
|
17002
|
+
* This is useful for enforcing constraints and treating violations as
|
|
17003
|
+
* recoverable errors.
|
|
17004
|
+
*
|
|
17005
|
+
* @example
|
|
17006
|
+
* ```ts
|
|
17007
|
+
* import { Effect, pipe } from "effect"
|
|
17008
|
+
*
|
|
17009
|
+
* // Define a user interface
|
|
17010
|
+
* interface User {
|
|
17011
|
+
* readonly name: string
|
|
17012
|
+
* }
|
|
17013
|
+
*
|
|
17014
|
+
* // Simulate an asynchronous authentication function
|
|
17015
|
+
* declare const auth: () => Promise<User | null>
|
|
17016
|
+
*
|
|
17017
|
+
* const program = pipe(
|
|
17018
|
+
* Effect.promise(() => auth()),
|
|
17019
|
+
* // Use filterEffectOrFail with an effectful predicate
|
|
17020
|
+
* Effect.filterEffectOrFail({
|
|
17021
|
+
* predicate: (user) => Effect.succeed(user !== null),
|
|
17022
|
+
* orFailWith: () => new Error("Unauthorized")
|
|
17023
|
+
* }),
|
|
17024
|
+
* )
|
|
17025
|
+
* ```
|
|
17026
|
+
*
|
|
17027
|
+
* @since 3.13.0
|
|
17028
|
+
* @category Filtering
|
|
17029
|
+
*/
|
|
17030
|
+
<A, E, R, E2, R2, E3>(
|
|
17031
|
+
self: Effect<A, E, R>,
|
|
17032
|
+
options: {
|
|
17033
|
+
readonly predicate: (a: A) => Effect<boolean, E2, R2>
|
|
17034
|
+
readonly orFailWith: (a: A) => E3
|
|
17035
|
+
}
|
|
17036
|
+
): Effect<A, E | E2 | E3, R | R2>
|
|
17037
|
+
} = core.filterEffectOrFail
|
|
17038
|
+
|
|
16781
17039
|
/**
|
|
16782
17040
|
* Executes an effect only if the condition is `false`.
|
|
16783
17041
|
*
|
|
@@ -22755,7 +23013,7 @@ export const log: (...message: ReadonlyArray<any>) => Effect<void, never, never>
|
|
|
22755
23013
|
* @category Logging
|
|
22756
23014
|
*/
|
|
22757
23015
|
export const logWithLevel = (
|
|
22758
|
-
level: LogLevel,
|
|
23016
|
+
level: LogLevel.LogLevel,
|
|
22759
23017
|
...message: ReadonlyArray<any>
|
|
22760
23018
|
): Effect<void> => effect.logWithLevel(level)(...message)
|
|
22761
23019
|
|
|
@@ -23371,7 +23629,7 @@ export const withUnhandledErrorLogLevel: {
|
|
|
23371
23629
|
* @since 2.0.0
|
|
23372
23630
|
* @category Logging
|
|
23373
23631
|
*/
|
|
23374
|
-
(level: Option.Option<LogLevel>): <A, E, R>(self: Effect<A, E, R>) => Effect<A, E, R>
|
|
23632
|
+
(level: Option.Option<LogLevel.LogLevel>): <A, E, R>(self: Effect<A, E, R>) => Effect<A, E, R>
|
|
23375
23633
|
/**
|
|
23376
23634
|
* Configures whether child fibers will log unhandled errors and at what log
|
|
23377
23635
|
* level.
|
|
@@ -23406,9 +23664,107 @@ export const withUnhandledErrorLogLevel: {
|
|
|
23406
23664
|
* @since 2.0.0
|
|
23407
23665
|
* @category Logging
|
|
23408
23666
|
*/
|
|
23409
|
-
<A, E, R>(self: Effect<A, E, R>, level: Option.Option<LogLevel>): Effect<A, E, R>
|
|
23667
|
+
<A, E, R>(self: Effect<A, E, R>, level: Option.Option<LogLevel.LogLevel>): Effect<A, E, R>
|
|
23410
23668
|
} = core.withUnhandledErrorLogLevel
|
|
23411
23669
|
|
|
23670
|
+
/**
|
|
23671
|
+
* Conditionally executes an effect based on the specified log level and currently enabled log level.
|
|
23672
|
+
*
|
|
23673
|
+
* **Details**
|
|
23674
|
+
*
|
|
23675
|
+
* This function runs the provided effect only if the specified log level is
|
|
23676
|
+
* enabled. If the log level is enabled, the effect is executed and its result
|
|
23677
|
+
* is wrapped in `Some`. If the log level is not enabled, the effect is not
|
|
23678
|
+
* executed and `None` is returned.
|
|
23679
|
+
*
|
|
23680
|
+
* This function is useful for conditionally executing logging-related effects
|
|
23681
|
+
* or other operations that depend on the current log level configuration.
|
|
23682
|
+
*
|
|
23683
|
+
* @example
|
|
23684
|
+
* ```ts
|
|
23685
|
+
* import { Effect, Logger, LogLevel } from "effect"
|
|
23686
|
+
*
|
|
23687
|
+
* const program = Effect.gen(function* () {
|
|
23688
|
+
* yield* Effect.whenLogLevel(Effect.logTrace("message1"), LogLevel.Trace); // returns `None`
|
|
23689
|
+
* yield* Effect.whenLogLevel(Effect.logDebug("message2"), LogLevel.Debug); // returns `Some`
|
|
23690
|
+
* }).pipe(Logger.withMinimumLogLevel(LogLevel.Debug));
|
|
23691
|
+
*
|
|
23692
|
+
* // Effect.runFork(program)
|
|
23693
|
+
* // timestamp=... level=DEBUG fiber=#0 message=message2
|
|
23694
|
+
* ```
|
|
23695
|
+
*
|
|
23696
|
+
* @see {@link FiberRef.minimumLogLevel} to retrieve the current minimum log level.
|
|
23697
|
+
*
|
|
23698
|
+
* @since 3.13.0
|
|
23699
|
+
* @category Logging
|
|
23700
|
+
*/
|
|
23701
|
+
export const whenLogLevel: {
|
|
23702
|
+
/**
|
|
23703
|
+
* Conditionally executes an effect based on the specified log level and currently enabled log level.
|
|
23704
|
+
*
|
|
23705
|
+
* **Details**
|
|
23706
|
+
*
|
|
23707
|
+
* This function runs the provided effect only if the specified log level is
|
|
23708
|
+
* enabled. If the log level is enabled, the effect is executed and its result
|
|
23709
|
+
* is wrapped in `Some`. If the log level is not enabled, the effect is not
|
|
23710
|
+
* executed and `None` is returned.
|
|
23711
|
+
*
|
|
23712
|
+
* This function is useful for conditionally executing logging-related effects
|
|
23713
|
+
* or other operations that depend on the current log level configuration.
|
|
23714
|
+
*
|
|
23715
|
+
* @example
|
|
23716
|
+
* ```ts
|
|
23717
|
+
* import { Effect, Logger, LogLevel } from "effect"
|
|
23718
|
+
*
|
|
23719
|
+
* const program = Effect.gen(function* () {
|
|
23720
|
+
* yield* Effect.whenLogLevel(Effect.logTrace("message1"), LogLevel.Trace); // returns `None`
|
|
23721
|
+
* yield* Effect.whenLogLevel(Effect.logDebug("message2"), LogLevel.Debug); // returns `Some`
|
|
23722
|
+
* }).pipe(Logger.withMinimumLogLevel(LogLevel.Debug));
|
|
23723
|
+
*
|
|
23724
|
+
* // Effect.runFork(program)
|
|
23725
|
+
* // timestamp=... level=DEBUG fiber=#0 message=message2
|
|
23726
|
+
* ```
|
|
23727
|
+
*
|
|
23728
|
+
* @see {@link FiberRef.minimumLogLevel} to retrieve the current minimum log level.
|
|
23729
|
+
*
|
|
23730
|
+
* @since 3.13.0
|
|
23731
|
+
* @category Logging
|
|
23732
|
+
*/
|
|
23733
|
+
(level: LogLevel.LogLevel | LogLevel.Literal): <A, E, R>(self: Effect<A, E, R>) => Effect<Option.Option<A>, E, R>
|
|
23734
|
+
/**
|
|
23735
|
+
* Conditionally executes an effect based on the specified log level and currently enabled log level.
|
|
23736
|
+
*
|
|
23737
|
+
* **Details**
|
|
23738
|
+
*
|
|
23739
|
+
* This function runs the provided effect only if the specified log level is
|
|
23740
|
+
* enabled. If the log level is enabled, the effect is executed and its result
|
|
23741
|
+
* is wrapped in `Some`. If the log level is not enabled, the effect is not
|
|
23742
|
+
* executed and `None` is returned.
|
|
23743
|
+
*
|
|
23744
|
+
* This function is useful for conditionally executing logging-related effects
|
|
23745
|
+
* or other operations that depend on the current log level configuration.
|
|
23746
|
+
*
|
|
23747
|
+
* @example
|
|
23748
|
+
* ```ts
|
|
23749
|
+
* import { Effect, Logger, LogLevel } from "effect"
|
|
23750
|
+
*
|
|
23751
|
+
* const program = Effect.gen(function* () {
|
|
23752
|
+
* yield* Effect.whenLogLevel(Effect.logTrace("message1"), LogLevel.Trace); // returns `None`
|
|
23753
|
+
* yield* Effect.whenLogLevel(Effect.logDebug("message2"), LogLevel.Debug); // returns `Some`
|
|
23754
|
+
* }).pipe(Logger.withMinimumLogLevel(LogLevel.Debug));
|
|
23755
|
+
*
|
|
23756
|
+
* // Effect.runFork(program)
|
|
23757
|
+
* // timestamp=... level=DEBUG fiber=#0 message=message2
|
|
23758
|
+
* ```
|
|
23759
|
+
*
|
|
23760
|
+
* @see {@link FiberRef.minimumLogLevel} to retrieve the current minimum log level.
|
|
23761
|
+
*
|
|
23762
|
+
* @since 3.13.0
|
|
23763
|
+
* @category Logging
|
|
23764
|
+
*/
|
|
23765
|
+
<A, E, R>(self: Effect<A, E, R>, level: LogLevel.LogLevel | LogLevel.Literal): Effect<Option.Option<A>, E, R>
|
|
23766
|
+
} = fiberRuntime.whenLogLevel
|
|
23767
|
+
|
|
23412
23768
|
/**
|
|
23413
23769
|
* Converts an effect's failure into a fiber termination, removing the error
|
|
23414
23770
|
* from the effect's type.
|
|
@@ -26651,7 +27007,7 @@ export const withParentSpan: {
|
|
|
26651
27007
|
* ```
|
|
26652
27008
|
*
|
|
26653
27009
|
* @since 2.0.0
|
|
26654
|
-
* @category Optional Wrapping
|
|
27010
|
+
* @category Optional Wrapping & Unwrapping
|
|
26655
27011
|
*/
|
|
26656
27012
|
export const fromNullable: <A>(value: A) => Effect<NonNullable<A>, Cause.NoSuchElementException> = effect.fromNullable
|
|
26657
27013
|
|
|
@@ -26706,12 +27062,47 @@ export const fromNullable: <A>(value: A) => Effect<NonNullable<A>, Cause.NoSuchE
|
|
|
26706
27062
|
* ```
|
|
26707
27063
|
*
|
|
26708
27064
|
* @since 2.0.0
|
|
26709
|
-
* @category Optional Wrapping
|
|
27065
|
+
* @category Optional Wrapping & Unwrapping
|
|
26710
27066
|
*/
|
|
26711
27067
|
export const optionFromOptional: <A, E, R>(
|
|
26712
27068
|
self: Effect<A, E, R>
|
|
26713
27069
|
) => Effect<Option.Option<A>, Exclude<E, Cause.NoSuchElementException>, R> = effect.optionFromOptional
|
|
26714
27070
|
|
|
27071
|
+
/**
|
|
27072
|
+
* Converts an `Option` of an `Effect` into an `Effect` of an `Option`.
|
|
27073
|
+
*
|
|
27074
|
+
* **Details**
|
|
27075
|
+
*
|
|
27076
|
+
* This function transforms an `Option<Effect<A, E, R>>` into an
|
|
27077
|
+
* `Effect<Option<A>, E, R>`. If the `Option` is `None`, the resulting `Effect`
|
|
27078
|
+
* will immediately succeed with a `None` value. If the `Option` is `Some`, the
|
|
27079
|
+
* inner `Effect` will be executed, and its result wrapped in a `Some`.
|
|
27080
|
+
*
|
|
27081
|
+
* @example
|
|
27082
|
+
* ```ts
|
|
27083
|
+
* import { Effect, Option } from "effect"
|
|
27084
|
+
*
|
|
27085
|
+
* // ┌─── Option<Effect<number, never, never>>
|
|
27086
|
+
* // ▼
|
|
27087
|
+
* const maybe = Option.some(Effect.succeed(42))
|
|
27088
|
+
*
|
|
27089
|
+
* // ┌─── Effect<Option<number>, never, never>
|
|
27090
|
+
* // ▼
|
|
27091
|
+
* const result = Effect.transposeOption(maybe)
|
|
27092
|
+
*
|
|
27093
|
+
* console.log(Effect.runSync(result))
|
|
27094
|
+
* // Output: { _id: 'Option', _tag: 'Some', value: 42 }
|
|
27095
|
+
* ```
|
|
27096
|
+
*
|
|
27097
|
+
* @since 3.13.0
|
|
27098
|
+
* @category Optional Wrapping & Unwrapping
|
|
27099
|
+
*/
|
|
27100
|
+
export const transposeOption = <A = never, E = never, R = never>(
|
|
27101
|
+
self: Option.Option<Effect<A, E, R>>
|
|
27102
|
+
): Effect<Option.Option<A>, E, R> => {
|
|
27103
|
+
return option_.isNone(self) ? succeedNone : map(self.value, option_.some)
|
|
27104
|
+
}
|
|
27105
|
+
|
|
26715
27106
|
/**
|
|
26716
27107
|
* @since 2.0.0
|
|
26717
27108
|
* @category Models
|
|
@@ -27222,7 +27613,8 @@ export namespace fn {
|
|
|
27222
27613
|
AEff,
|
|
27223
27614
|
[Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect<infer _A, infer E, infer _R>>] ? E : never,
|
|
27224
27615
|
[Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect<infer _A, infer _E, infer R>>] ? R : never
|
|
27225
|
-
|
|
27616
|
+
>,
|
|
27617
|
+
...args: Args
|
|
27226
27618
|
) => A
|
|
27227
27619
|
): (...args: Args) => A
|
|
27228
27620
|
<Eff extends YieldWrap<Effect<any, any, any>>, AEff, Args extends Array<any>, A, B extends Effect<any, any, any>>(
|
|
@@ -27232,9 +27624,10 @@ export namespace fn {
|
|
|
27232
27624
|
AEff,
|
|
27233
27625
|
[Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect<infer _A, infer E, infer _R>>] ? E : never,
|
|
27234
27626
|
[Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect<infer _A, infer _E, infer R>>] ? R : never
|
|
27235
|
-
|
|
27627
|
+
>,
|
|
27628
|
+
...args: Args
|
|
27236
27629
|
) => A,
|
|
27237
|
-
b: (_: A) => B
|
|
27630
|
+
b: (_: A, ...args: Args) => B
|
|
27238
27631
|
): (...args: Args) => B
|
|
27239
27632
|
<
|
|
27240
27633
|
Eff extends YieldWrap<Effect<any, any, any>>,
|
|
@@ -27250,10 +27643,11 @@ export namespace fn {
|
|
|
27250
27643
|
AEff,
|
|
27251
27644
|
[Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect<infer _A, infer E, infer _R>>] ? E : never,
|
|
27252
27645
|
[Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect<infer _A, infer _E, infer R>>] ? R : never
|
|
27253
|
-
|
|
27646
|
+
>,
|
|
27647
|
+
...args: Args
|
|
27254
27648
|
) => A,
|
|
27255
|
-
b: (_: A) => B,
|
|
27256
|
-
c: (_: B) => C
|
|
27649
|
+
b: (_: A, ...args: Args) => B,
|
|
27650
|
+
c: (_: B, ...args: Args) => C
|
|
27257
27651
|
): (...args: Args) => C
|
|
27258
27652
|
<
|
|
27259
27653
|
Eff extends YieldWrap<Effect<any, any, any>>,
|
|
@@ -27270,11 +27664,12 @@ export namespace fn {
|
|
|
27270
27664
|
AEff,
|
|
27271
27665
|
[Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect<infer _A, infer E, infer _R>>] ? E : never,
|
|
27272
27666
|
[Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect<infer _A, infer _E, infer R>>] ? R : never
|
|
27273
|
-
|
|
27667
|
+
>,
|
|
27668
|
+
...args: Args
|
|
27274
27669
|
) => A,
|
|
27275
|
-
b: (_: A) => B,
|
|
27276
|
-
c: (_: B) => C,
|
|
27277
|
-
d: (_: C) => D
|
|
27670
|
+
b: (_: A, ...args: Args) => B,
|
|
27671
|
+
c: (_: B, ...args: Args) => C,
|
|
27672
|
+
d: (_: C, ...args: Args) => D
|
|
27278
27673
|
): (...args: Args) => D
|
|
27279
27674
|
<
|
|
27280
27675
|
Eff extends YieldWrap<Effect<any, any, any>>,
|
|
@@ -27292,12 +27687,13 @@ export namespace fn {
|
|
|
27292
27687
|
AEff,
|
|
27293
27688
|
[Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect<infer _A, infer E, infer _R>>] ? E : never,
|
|
27294
27689
|
[Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect<infer _A, infer _E, infer R>>] ? R : never
|
|
27295
|
-
|
|
27690
|
+
>,
|
|
27691
|
+
...args: Args
|
|
27296
27692
|
) => A,
|
|
27297
|
-
b: (_: A) => B,
|
|
27298
|
-
c: (_: B) => C,
|
|
27299
|
-
d: (_: C) => D,
|
|
27300
|
-
e: (_: D) => E
|
|
27693
|
+
b: (_: A, ...args: Args) => B,
|
|
27694
|
+
c: (_: B, ...args: Args) => C,
|
|
27695
|
+
d: (_: C, ...args: Args) => D,
|
|
27696
|
+
e: (_: D, ...args: Args) => E
|
|
27301
27697
|
): (...args: Args) => E
|
|
27302
27698
|
<
|
|
27303
27699
|
Eff extends YieldWrap<Effect<any, any, any>>,
|
|
@@ -27316,13 +27712,14 @@ export namespace fn {
|
|
|
27316
27712
|
AEff,
|
|
27317
27713
|
[Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect<infer _A, infer E, infer _R>>] ? E : never,
|
|
27318
27714
|
[Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect<infer _A, infer _E, infer R>>] ? R : never
|
|
27319
|
-
|
|
27715
|
+
>,
|
|
27716
|
+
...args: Args
|
|
27320
27717
|
) => A,
|
|
27321
|
-
b: (_: A) => B,
|
|
27322
|
-
c: (_: B) => C,
|
|
27323
|
-
d: (_: C) => D,
|
|
27324
|
-
e: (_: D) => E,
|
|
27325
|
-
f: (_: E) => F
|
|
27718
|
+
b: (_: A, ...args: Args) => B,
|
|
27719
|
+
c: (_: B, ...args: Args) => C,
|
|
27720
|
+
d: (_: C, ...args: Args) => D,
|
|
27721
|
+
e: (_: D, ...args: Args) => E,
|
|
27722
|
+
f: (_: E, ...args: Args) => F
|
|
27326
27723
|
): (...args: Args) => F
|
|
27327
27724
|
<
|
|
27328
27725
|
Eff extends YieldWrap<Effect<any, any, any>>,
|
|
@@ -27342,14 +27739,15 @@ export namespace fn {
|
|
|
27342
27739
|
AEff,
|
|
27343
27740
|
[Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect<infer _A, infer E, infer _R>>] ? E : never,
|
|
27344
27741
|
[Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect<infer _A, infer _E, infer R>>] ? R : never
|
|
27345
|
-
|
|
27742
|
+
>,
|
|
27743
|
+
...args: Args
|
|
27346
27744
|
) => A,
|
|
27347
|
-
b: (_: A) => B,
|
|
27348
|
-
c: (_: B) => C,
|
|
27349
|
-
d: (_: C) => D,
|
|
27350
|
-
e: (_: D) => E,
|
|
27351
|
-
f: (_: E) => F,
|
|
27352
|
-
g: (_: F) => G
|
|
27745
|
+
b: (_: A, ...args: Args) => B,
|
|
27746
|
+
c: (_: B, ...args: Args) => C,
|
|
27747
|
+
d: (_: C, ...args: Args) => D,
|
|
27748
|
+
e: (_: D, ...args: Args) => E,
|
|
27749
|
+
f: (_: E, ...args: Args) => F,
|
|
27750
|
+
g: (_: F, ...args: Args) => G
|
|
27353
27751
|
): (...args: Args) => G
|
|
27354
27752
|
<
|
|
27355
27753
|
Eff extends YieldWrap<Effect<any, any, any>>,
|
|
@@ -27370,15 +27768,16 @@ export namespace fn {
|
|
|
27370
27768
|
AEff,
|
|
27371
27769
|
[Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect<infer _A, infer E, infer _R>>] ? E : never,
|
|
27372
27770
|
[Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect<infer _A, infer _E, infer R>>] ? R : never
|
|
27373
|
-
|
|
27771
|
+
>,
|
|
27772
|
+
...args: Args
|
|
27374
27773
|
) => A,
|
|
27375
|
-
b: (_: A) => B,
|
|
27376
|
-
c: (_: B) => C,
|
|
27377
|
-
d: (_: C) => D,
|
|
27378
|
-
e: (_: D) => E,
|
|
27379
|
-
f: (_: E) => F,
|
|
27380
|
-
g: (_: F) => G,
|
|
27381
|
-
h: (_: G) => H
|
|
27774
|
+
b: (_: A, ...args: Args) => B,
|
|
27775
|
+
c: (_: B, ...args: Args) => C,
|
|
27776
|
+
d: (_: C, ...args: Args) => D,
|
|
27777
|
+
e: (_: D, ...args: Args) => E,
|
|
27778
|
+
f: (_: E, ...args: Args) => F,
|
|
27779
|
+
g: (_: F, ...args: Args) => G,
|
|
27780
|
+
h: (_: G, ...args: Args) => H
|
|
27382
27781
|
): (...args: Args) => H
|
|
27383
27782
|
<
|
|
27384
27783
|
Eff extends YieldWrap<Effect<any, any, any>>,
|
|
@@ -27400,16 +27799,17 @@ export namespace fn {
|
|
|
27400
27799
|
AEff,
|
|
27401
27800
|
[Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect<infer _A, infer E, infer _R>>] ? E : never,
|
|
27402
27801
|
[Eff] extends [never] ? never : [Eff] extends [YieldWrap<Effect<infer _A, infer _E, infer R>>] ? R : never
|
|
27403
|
-
|
|
27802
|
+
>,
|
|
27803
|
+
...args: Args
|
|
27404
27804
|
) => A,
|
|
27405
|
-
b: (_: A) => B,
|
|
27406
|
-
c: (_: B) => C,
|
|
27407
|
-
d: (_: C) => D,
|
|
27408
|
-
e: (_: D) => E,
|
|
27409
|
-
f: (_: E) => F,
|
|
27410
|
-
g: (_: F) => G,
|
|
27411
|
-
h: (_: G) => H,
|
|
27412
|
-
i: (_: H) => I
|
|
27805
|
+
b: (_: A, ...args: Args) => B,
|
|
27806
|
+
c: (_: B, ...args: Args) => C,
|
|
27807
|
+
d: (_: C, ...args: Args) => D,
|
|
27808
|
+
e: (_: D, ...args: Args) => E,
|
|
27809
|
+
f: (_: E, ...args: Args) => F,
|
|
27810
|
+
g: (_: F, ...args: Args) => G,
|
|
27811
|
+
h: (_: G, ...args: Args) => H,
|
|
27812
|
+
i: (_: H, ...args: Args) => I
|
|
27413
27813
|
): (...args: Args) => I
|
|
27414
27814
|
}
|
|
27415
27815
|
|
|
@@ -27423,75 +27823,75 @@ export namespace fn {
|
|
|
27423
27823
|
): (...args: Args) => Eff
|
|
27424
27824
|
<Eff extends Effect<any, any, any>, A, Args extends Array<any>>(
|
|
27425
27825
|
body: (...args: Args) => A,
|
|
27426
|
-
a: (_: A) => Eff
|
|
27826
|
+
a: (_: A, ...args: Args) => Eff
|
|
27427
27827
|
): (...args: Args) => Eff
|
|
27428
27828
|
<Eff extends Effect<any, any, any>, A, B, Args extends Array<any>>(
|
|
27429
27829
|
body: (...args: Args) => A,
|
|
27430
|
-
a: (_: A) => B,
|
|
27431
|
-
b: (_: B) => Eff
|
|
27830
|
+
a: (_: A, ...args: Args) => B,
|
|
27831
|
+
b: (_: B, ...args: Args) => Eff
|
|
27432
27832
|
): (...args: Args) => Eff
|
|
27433
27833
|
<Eff extends Effect<any, any, any>, A, B, C, Args extends Array<any>>(
|
|
27434
27834
|
body: (...args: Args) => A,
|
|
27435
|
-
a: (_: A) => B,
|
|
27436
|
-
b: (_: B) => C,
|
|
27437
|
-
c: (_: C) => Eff
|
|
27835
|
+
a: (_: A, ...args: Args) => B,
|
|
27836
|
+
b: (_: B, ...args: Args) => C,
|
|
27837
|
+
c: (_: C, ...args: Args) => Eff
|
|
27438
27838
|
): (...args: Args) => Eff
|
|
27439
27839
|
<Eff extends Effect<any, any, any>, A, B, C, D, Args extends Array<any>>(
|
|
27440
27840
|
body: (...args: Args) => A,
|
|
27441
|
-
a: (_: A) => B,
|
|
27442
|
-
b: (_: B) => C,
|
|
27443
|
-
c: (_: C) => D,
|
|
27444
|
-
d: (_: D) => Eff
|
|
27841
|
+
a: (_: A, ...args: Args) => B,
|
|
27842
|
+
b: (_: B, ...args: Args) => C,
|
|
27843
|
+
c: (_: C, ...args: Args) => D,
|
|
27844
|
+
d: (_: D, ...args: Args) => Eff
|
|
27445
27845
|
): (...args: Args) => Eff
|
|
27446
27846
|
<Eff extends Effect<any, any, any>, A, B, C, D, E, Args extends Array<any>>(
|
|
27447
27847
|
body: (...args: Args) => A,
|
|
27448
|
-
a: (_: A) => B,
|
|
27449
|
-
b: (_: B) => C,
|
|
27450
|
-
c: (_: C) => D,
|
|
27451
|
-
d: (_: D) => E,
|
|
27452
|
-
e: (_: E) => Eff
|
|
27848
|
+
a: (_: A, ...args: Args) => B,
|
|
27849
|
+
b: (_: B, ...args: Args) => C,
|
|
27850
|
+
c: (_: C, ...args: Args) => D,
|
|
27851
|
+
d: (_: D, ...args: Args) => E,
|
|
27852
|
+
e: (_: E, ...args: Args) => Eff
|
|
27453
27853
|
): (...args: Args) => Eff
|
|
27454
27854
|
<Eff extends Effect<any, any, any>, A, B, C, D, E, F, Args extends Array<any>>(
|
|
27455
27855
|
body: (...args: Args) => A,
|
|
27456
|
-
a: (_: A) => B,
|
|
27457
|
-
b: (_: B) => C,
|
|
27458
|
-
c: (_: C) => D,
|
|
27459
|
-
d: (_: D) => E,
|
|
27460
|
-
e: (_: E) => F,
|
|
27461
|
-
f: (_:
|
|
27856
|
+
a: (_: A, ...args: Args) => B,
|
|
27857
|
+
b: (_: B, ...args: Args) => C,
|
|
27858
|
+
c: (_: C, ...args: Args) => D,
|
|
27859
|
+
d: (_: D, ...args: Args) => E,
|
|
27860
|
+
e: (_: E, ...args: Args) => F,
|
|
27861
|
+
f: (_: F, ...args: Args) => Eff
|
|
27462
27862
|
): (...args: Args) => Eff
|
|
27463
27863
|
<Eff extends Effect<any, any, any>, A, B, C, D, E, F, G, Args extends Array<any>>(
|
|
27464
27864
|
body: (...args: Args) => A,
|
|
27465
|
-
a: (_: A) => B,
|
|
27466
|
-
b: (_: B) => C,
|
|
27467
|
-
c: (_: C) => D,
|
|
27468
|
-
d: (_: D) => E,
|
|
27469
|
-
e: (_: E) => F,
|
|
27470
|
-
f: (_:
|
|
27471
|
-
g: (_: G) => Eff
|
|
27865
|
+
a: (_: A, ...args: Args) => B,
|
|
27866
|
+
b: (_: B, ...args: Args) => C,
|
|
27867
|
+
c: (_: C, ...args: Args) => D,
|
|
27868
|
+
d: (_: D, ...args: Args) => E,
|
|
27869
|
+
e: (_: E, ...args: Args) => F,
|
|
27870
|
+
f: (_: F, ...args: Args) => G,
|
|
27871
|
+
g: (_: G, ...args: Args) => Eff
|
|
27472
27872
|
): (...args: Args) => Eff
|
|
27473
27873
|
<Eff extends Effect<any, any, any>, A, B, C, D, E, F, G, H, Args extends Array<any>>(
|
|
27474
27874
|
body: (...args: Args) => A,
|
|
27475
|
-
a: (_: A) => B,
|
|
27476
|
-
b: (_: B) => C,
|
|
27477
|
-
c: (_: C) => D,
|
|
27478
|
-
d: (_: D) => E,
|
|
27479
|
-
e: (_: E) => F,
|
|
27480
|
-
f: (_:
|
|
27481
|
-
g: (_: G) => H,
|
|
27482
|
-
h: (_: H) => Eff
|
|
27875
|
+
a: (_: A, ...args: Args) => B,
|
|
27876
|
+
b: (_: B, ...args: Args) => C,
|
|
27877
|
+
c: (_: C, ...args: Args) => D,
|
|
27878
|
+
d: (_: D, ...args: Args) => E,
|
|
27879
|
+
e: (_: E, ...args: Args) => F,
|
|
27880
|
+
f: (_: F, ...args: Args) => G,
|
|
27881
|
+
g: (_: G, ...args: Args) => H,
|
|
27882
|
+
h: (_: H, ...args: Args) => Eff
|
|
27483
27883
|
): (...args: Args) => Eff
|
|
27484
27884
|
<Eff extends Effect<any, any, any>, A, B, C, D, E, F, G, H, I, Args extends Array<any>>(
|
|
27485
27885
|
body: (...args: Args) => A,
|
|
27486
|
-
a: (_: A) => B,
|
|
27487
|
-
b: (_: B) => C,
|
|
27488
|
-
c: (_: C) => D,
|
|
27489
|
-
d: (_: D) => E,
|
|
27490
|
-
e: (_: E) => F,
|
|
27491
|
-
f: (_:
|
|
27492
|
-
g: (_: G) => H,
|
|
27493
|
-
h: (_: H) => I,
|
|
27494
|
-
i: (_: H) => Eff
|
|
27886
|
+
a: (_: A, ...args: Args) => B,
|
|
27887
|
+
b: (_: B, ...args: Args) => C,
|
|
27888
|
+
c: (_: C, ...args: Args) => D,
|
|
27889
|
+
d: (_: D, ...args: Args) => E,
|
|
27890
|
+
e: (_: E, ...args: Args) => F,
|
|
27891
|
+
f: (_: F, ...args: Args) => G,
|
|
27892
|
+
g: (_: G, ...args: Args) => H,
|
|
27893
|
+
h: (_: H, ...args: Args) => I,
|
|
27894
|
+
i: (_: H, ...args: Args) => Eff
|
|
27495
27895
|
): (...args: Args) => Eff
|
|
27496
27896
|
}
|
|
27497
27897
|
}
|
|
@@ -27655,7 +28055,7 @@ function fnApply(options: {
|
|
|
27655
28055
|
if (options.pipeables.length > 0) {
|
|
27656
28056
|
try {
|
|
27657
28057
|
for (const x of options.pipeables) {
|
|
27658
|
-
effect = x(effect)
|
|
28058
|
+
effect = x(effect, ...options.args)
|
|
27659
28059
|
}
|
|
27660
28060
|
} catch (error) {
|
|
27661
28061
|
effect = fnError
|
|
@@ -27693,18 +28093,4 @@ function fnApply(options: {
|
|
|
27693
28093
|
* @since 3.12.0
|
|
27694
28094
|
* @category Tracing
|
|
27695
28095
|
*/
|
|
27696
|
-
export const fnUntraced: fn.Gen =
|
|
27697
|
-
defineLength(
|
|
27698
|
-
body.length,
|
|
27699
|
-
pipeables.length === 0
|
|
27700
|
-
? function(this: any, ...args: Array<any>) {
|
|
27701
|
-
return core.fromIterator(() => body.apply(this, args))
|
|
27702
|
-
}
|
|
27703
|
-
: function(this: any, ...args: Array<any>) {
|
|
27704
|
-
let effect = core.fromIterator(() => body.apply(this, args))
|
|
27705
|
-
for (const x of pipeables) {
|
|
27706
|
-
effect = x(effect)
|
|
27707
|
-
}
|
|
27708
|
-
return effect
|
|
27709
|
-
}
|
|
27710
|
-
)
|
|
28096
|
+
export const fnUntraced: fn.Gen = core.fnUntraced
|