Files
scriptc/tests/fixtures/effect4/sql-query.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
991 B
TypeScript

import * as Effect from "effect/Effect";import * as Stream from "effect/Stream";import * as SqlClient from "effect/sql/SqlClient";import * as Statement from "effect/sql/Statement";import * as Reactivity from "effect/reactivity/Reactivity";const conn={execute:(sql:string,params:ReadonlyArray<unknown>)=>Effect.succeed([{sql,params}]),executeRaw:(sql:string,params:ReadonlyArray<unknown>)=>Effect.succeed([{sql,params}]),executeValuesUnprepared:()=>Effect.succeed([]),executeValues:()=>Effect.succeed([]),executeUnprepared:(sql:string,params:ReadonlyArray<unknown>)=>Effect.succeed([{sql,params}]),executeStream:()=>Stream.empty};Effect.runPromise((Effect.gen(function*(){const sql=yield* SqlClient.make({acquirer:Effect.succeed(conn),compiler:Statement.makeCompilerSqlite(),spanAttributes:[]});return yield* sql.withTransaction(sql`select ${42} as answer`)}).pipe(Effect.scoped,Effect.provide(Reactivity.layer))).pipe(Effect.tap(value=>Effect.sync(()=>console.log(JSON.stringify(value))))))