// --------------------------------------------------------------------------- // SQL helper — absorb SqlError into defects (die) // --------------------------------------------------------------------------- import { Effect } from "effect"; import { SqlError } from "@effect/sql/SqlError"; /** * Run an effect that may fail with SqlError, converting to a defect. */ export const absorbSql = ( effect: Effect.Effect, ): Effect.Effect> => effect.pipe( Effect.catchAll((e) => e instanceof SqlError ? Effect.die(e) : Effect.fail(e as Exclude), ), );