mirror of
https://github.com/vercel-labs/scriptc.git
synced 2026-10-23 06:10:02 +08:00
* 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
5 lines
561 B
TypeScript
5 lines
561 B
TypeScript
import * as Effect from "effect/Effect"
|
|
import * as Layer from "effect/Layer"
|
|
import * as RateLimiter from "effect/persistence/RateLimiter"
|
|
Effect.runPromise((Effect.gen(function*(){const l=yield* RateLimiter.make;const opts={key:"one",limit:1,window:"1 minute" as const,onExceeded:"fail" as const};const a=yield* l.consume(opts);const b=yield* l.consume(opts).pipe(Effect.catch(e=>Effect.succeed(e.reason._tag)));return [a.remaining,b]}).pipe(Effect.provide(RateLimiter.layerStoreMemory))).pipe(Effect.tap(v=>Effect.sync(()=>console.log(JSON.stringify(v))))))
|