mirror of
https://github.com/vercel-labs/scriptc.git
synced 2026-10-20 05:40:17 +08:00
* 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
8 lines
464 B
TypeScript
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));
|