Files
scriptc/tests/fixtures/effect4/cache.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

4 lines
515 B
TypeScript

import * as Effect from "effect/Effect"
import * as Cache from "effect/Cache"
Effect.runPromise((Effect.gen(function* () { let calls=0;const c=yield* Cache.make({capacity:10,timeToLive:"1 minute",lookup:(key:string)=>Effect.sync(()=>{calls++;return key.length})});const a=yield* Cache.get(c,"world");const b=yield* Cache.get(c,"world");yield* Cache.invalidate(c,"world");const d=yield* Cache.get(c,"world");return [a,b,d,calls]; })).pipe(Effect.tap(value => Effect.sync(() => console.log(JSON.stringify(value))))))