Files
scriptc/tests/fixtures/effect4/layer-fresh.ts
Chris Tate e2d58f60d2 Expand static support for common Effect 4 patterns (#600)
* Expand static compilation for common Effect 4 patterns

* Run every Effect 4 fixture slice in CI

* Preserve existing corpus behavior across Effect 4 lowering

* Preserve Effect platform callbacks and native stream state

* Record new corpus baselines and retain child stdin refusals

* Retire the obsolete stateful regex diagnostic

* Preserve promise reference count layout for cycle collection
2026-10-01 17:36:29 -05:00

2 lines
513 B
TypeScript

import * as Effect from "effect/Effect";import * as Context from "effect/Context";import * as Layer from "effect/Layer";const C=Context.Service<number>("C");let n=0;const layer=Layer.effect(C,Effect.sync(()=>++n));const p=Effect.gen(function*(){const a=yield* C.pipe(Effect.provide(layer));const b=yield* C.pipe(Effect.provide(Layer.fresh(layer)));const c=yield* C.pipe(Effect.provide(layer,{local:true}));return [a,b,c]});Effect.runPromise(p.pipe(Effect.tap(v=>Effect.sync(()=>console.log(JSON.stringify(v))))))