effect 3.16.2 → 3.16.4
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/Data.js +1 -0
- package/dist/cjs/Data.js.map +1 -1
- package/dist/cjs/Effect.js +1 -0
- package/dist/cjs/Effect.js.map +1 -1
- package/dist/cjs/Micro.js +1 -0
- package/dist/cjs/Micro.js.map +1 -1
- package/dist/cjs/internal/core-effect.js.map +1 -1
- package/dist/cjs/internal/core.js +1 -0
- package/dist/cjs/internal/core.js.map +1 -1
- package/dist/cjs/internal/fiberRuntime.js +1 -1
- package/dist/cjs/internal/fiberRuntime.js.map +1 -1
- package/dist/cjs/internal/stream.js +1 -0
- package/dist/cjs/internal/stream.js.map +1 -1
- package/dist/cjs/internal/version.js +1 -1
- package/dist/dts/Cause.d.ts +1 -1
- package/dist/dts/Cause.d.ts.map +1 -1
- package/dist/dts/Data.d.ts.map +1 -1
- package/dist/dts/Effect.d.ts +168 -48
- package/dist/dts/Effect.d.ts.map +1 -1
- package/dist/dts/Micro.d.ts.map +1 -1
- package/dist/dts/internal/core-effect.d.ts.map +1 -1
- package/dist/dts/internal/stream.d.ts.map +1 -1
- package/dist/esm/Data.js +1 -0
- package/dist/esm/Data.js.map +1 -1
- package/dist/esm/Effect.js +1 -0
- package/dist/esm/Effect.js.map +1 -1
- package/dist/esm/Micro.js +1 -0
- package/dist/esm/Micro.js.map +1 -1
- package/dist/esm/internal/core-effect.js.map +1 -1
- package/dist/esm/internal/core.js +1 -0
- package/dist/esm/internal/core.js.map +1 -1
- package/dist/esm/internal/fiberRuntime.js +1 -1
- package/dist/esm/internal/fiberRuntime.js.map +1 -1
- package/dist/esm/internal/stream.js +1 -0
- package/dist/esm/internal/stream.js.map +1 -1
- package/dist/esm/internal/version.js +1 -1
- package/package.json +1 -1
- package/src/Cause.ts +1 -1
- package/src/Data.ts +1 -0
- package/src/Effect.ts +191 -90
- package/src/Micro.ts +1 -0
- package/src/internal/core-effect.ts +18 -8
- package/src/internal/core.ts +1 -0
- package/src/internal/fiberRuntime.ts +1 -1
- package/src/internal/stream.ts +1 -0
- package/src/internal/version.ts +1 -1
|
@@ -236,19 +236,29 @@ export const catchSomeDefect = dual<
|
|
|
236
236
|
)
|
|
237
237
|
|
|
238
238
|
/* @internal */
|
|
239
|
-
export const catchTag
|
|
239
|
+
export const catchTag: {
|
|
240
|
+
<E, const K extends Arr.NonEmptyReadonlyArray<E extends { _tag: string } ? E["_tag"] : never>>(
|
|
241
|
+
...tags: K
|
|
242
|
+
): <A, R>(self: Effect.Effect<A, E, R>) => never
|
|
240
243
|
<E, const K extends Arr.NonEmptyReadonlyArray<E extends { _tag: string } ? E["_tag"] : never>, A1, E1, R1>(
|
|
241
|
-
...args: [...tags: K, f: (e: Extract<NoInfer<E>, { _tag: K[number] }>) => Effect.Effect<A1, E1, R1>]
|
|
242
|
-
)
|
|
244
|
+
...args: [...tags: K, f: (e: Extract<Types.NoInfer<E>, { _tag: K[number] }>) => Effect.Effect<A1, E1, R1>]
|
|
245
|
+
): <A, R>(self: Effect.Effect<A, E, R>) => Effect.Effect<A | A1, Exclude<E, { _tag: K[number] }> | E1, R | R1>
|
|
246
|
+
<A, E, R, const K extends Arr.NonEmptyReadonlyArray<E extends { _tag: string } ? E["_tag"] : never>>(
|
|
247
|
+
self: Effect.Effect<A, E, R>,
|
|
248
|
+
...tags: K
|
|
249
|
+
): never
|
|
243
250
|
<A, E, R, const K extends Arr.NonEmptyReadonlyArray<E extends { _tag: string } ? E["_tag"] : never>, R1, E1, A1>(
|
|
244
251
|
self: Effect.Effect<A, E, R>,
|
|
245
|
-
...args: [...tags: K, f: (e: Extract<NoInfer<E>, { _tag: K[number] }>) => Effect.Effect<A1, E1, R1>]
|
|
246
|
-
)
|
|
247
|
-
|
|
252
|
+
...args: [...tags: K, f: (e: Extract<Types.NoInfer<E>, { _tag: K[number] }>) => Effect.Effect<A1, E1, R1>]
|
|
253
|
+
): Effect.Effect<A | A1, Exclude<E, { _tag: K[number] }> | E1, R | R1>
|
|
254
|
+
} = dual(
|
|
248
255
|
(args: any) => core.isEffect(args[0]),
|
|
249
256
|
<A, E, R, const K extends Arr.NonEmptyReadonlyArray<E extends { _tag: string } ? E["_tag"] : never>, R1, E1, A1>(
|
|
250
257
|
self: Effect.Effect<A, E, R>,
|
|
251
|
-
...args: [
|
|
258
|
+
...args: [
|
|
259
|
+
...tags: K & { [I in keyof K]: E extends { _tag: string } ? E["_tag"] : never },
|
|
260
|
+
f: (e: Extract<Types.NoInfer<E>, { _tag: K[number] }>) => Effect.Effect<A1, E1, R1>
|
|
261
|
+
]
|
|
252
262
|
): Effect.Effect<A | A1, Exclude<E, { _tag: K[number] }> | E1, R | R1> => {
|
|
253
263
|
const f = args[args.length - 1] as any
|
|
254
264
|
let predicate: Predicate.Predicate<E>
|
|
@@ -266,7 +276,7 @@ export const catchTag = dual<
|
|
|
266
276
|
}
|
|
267
277
|
return core.catchIf(self, predicate as Predicate.Refinement<E, Extract<E, { _tag: K[number] }>>, f) as any
|
|
268
278
|
}
|
|
269
|
-
)
|
|
279
|
+
) as any
|
|
270
280
|
|
|
271
281
|
/** @internal */
|
|
272
282
|
export const catchTags: {
|
package/src/internal/core.ts
CHANGED
|
@@ -2241,6 +2241,7 @@ export const YieldableError: new(message?: string, options?: ErrorOptions) => Ca
|
|
|
2241
2241
|
return this
|
|
2242
2242
|
}
|
|
2243
2243
|
}
|
|
2244
|
+
// @effect-diagnostics-next-line floatingEffect:off
|
|
2244
2245
|
Object.assign(YieldableError.prototype, StructuralCommitPrototype)
|
|
2245
2246
|
return YieldableError as any
|
|
2246
2247
|
})()
|
|
@@ -1693,7 +1693,7 @@ export const addFinalizer = <X, R>(
|
|
|
1693
1693
|
core.withFiberRuntime(
|
|
1694
1694
|
(runtime) => {
|
|
1695
1695
|
const acquireRefs = runtime.getFiberRefs()
|
|
1696
|
-
const acquireFlags = runtime.currentRuntimeFlags
|
|
1696
|
+
const acquireFlags = runtimeFlags_.disable(runtime.currentRuntimeFlags, runtimeFlags_.Interruption)
|
|
1697
1697
|
return core.flatMap(scope, (scope) =>
|
|
1698
1698
|
core.scopeAddFinalizerExit(scope, (exit) =>
|
|
1699
1699
|
core.withFiberRuntime((runtimeFinalizer) => {
|
package/src/internal/stream.ts
CHANGED
|
@@ -4984,6 +4984,7 @@ export const provideSomeLayer = dual<
|
|
|
4984
4984
|
layer: Layer.Layer<ROut, E2, RIn>
|
|
4985
4985
|
): Stream.Stream<A, E2 | E, RIn | Exclude<R, ROut>> =>
|
|
4986
4986
|
// @ts-expect-error
|
|
4987
|
+
// @effect-diagnostics-next-line missingEffectContext:off
|
|
4987
4988
|
pipe(
|
|
4988
4989
|
self,
|
|
4989
4990
|
provideLayer(pipe(Layer.context(), Layer.merge(layer)))
|
package/src/internal/version.ts
CHANGED