Files
scriptc/tests/fixtures/effect/layer-compose.ts
Chris Tate 2069684b40 Expand static Effect support across common APIs (#598)
* Expand static Effect support across common APIs

* Preserve compiler parity across expanded Effect patterns

* Fix compiler regressions exposed by Effect coverage

* Bound shared type conversion traversal

* Clarify conversion contracts and tidy fixtures

* Run every Effect fixture in CI shards

* Preserve inferred array assignments in concurrent Effect programs

* Record inferred array fixture compiler ordering
2026-10-01 02:49:31 -05:00

8 lines
464 B
TypeScript

import { Context, Effect, Layer } from "effect";
const A = Context.GenericTag<number>("A");
const B = Context.GenericTag<string>("B");
const C = Context.GenericTag<string>("C");
const ab = Layer.merge(Layer.succeed(A, 42), Layer.succeed(B, "world"));
const c = Layer.effect(C, Effect.gen(function* () { const a = yield* A; const b = yield* B; return b + ":" + a; }));
Effect.runPromise(Effect.provide(C, Layer.provide(c, ab))).then((s: string) => console.log(s));