mirror of
https://github.com/vercel-labs/scriptc.git
synced 2026-10-19 05:29:46 +08:00
5 lines
453 B
TypeScript
5 lines
453 B
TypeScript
import * as Effect from "effect/Effect"
|
|
import * as Context from "effect/Context"
|
|
import * as Layer from "effect/Layer"
|
|
const A=Context.Service<number>("A"); const B=Context.Service<number>("B"); const a=Layer.succeed(A,20); const b=Layer.effect(B,A.useSync(n=>n+2)).pipe(Layer.provide(a)); Effect.runPromise((Effect.all([A,B]).pipe(Effect.provide(Layer.mergeAll(a,b)))).pipe(Effect.tap(value => Effect.sync(() => console.log(JSON.stringify(value))))))
|