effect-io-ai

Package: effect
Module: Result

Result.try

Wraps a synchronous computation that may throw into a Result safely.

Details

Example (Catching JSON parse errors)

import { Result } from "effect"

const ok = Result.try(() => JSON.parse('{"name": "Alice"}'))
console.log(ok)
// Output: { _tag: "Success", success: { name: "Alice" }, ... }

const err = Result.try({
  try: () => JSON.parse("not json"),
  catch: (e) => `Parse failed: ${e}`
})
console.log(Result.isFailure(err))
// Output: true

See

Signature

declare const try: { <A, E>(options: { readonly try: LazyArg<A>; readonly catch: (error: unknown) => E; }): Result<A, E>; <A>(evaluate: LazyArg<A>): Result<A, unknown>; }

Source

Since v2.0.0