Hyperlinkv0.8.0-beta.28

Cause

Cause.AsyncFiberErrorinterfaceeffect/Cause.ts:1681
AsyncFiberError

An error that occurs when trying to run an async fiber with Effect.runSync.

When to use

Use to inspect failures produced when synchronous runners encounter an effect that cannot complete synchronously.

Details

The fiber property stores the fiber that could not be synchronously resolved. This error implements YieldableError.

Example (Accessing the fiber)

import { Cause } from "effect"
import type { Fiber } from "effect"

declare const fiber: Fiber.Fiber<unknown, unknown>

const error = new Cause.AsyncFiberError(fiber)
console.log(error._tag) // "AsyncFiberError"
console.log(error.fiber === fiber) // true
errors
Source effect/Cause.ts:168133 lines
export interface AsyncFiberError extends YieldableError {
  readonly [AsyncFiberErrorTypeId]: typeof AsyncFiberErrorTypeId
  readonly _tag: "AsyncFiberError"
  readonly fiber: Fiber<unknown, unknown>
}

/**
 * Constructs an `AsyncFiberError` for a fiber that could not be resolved
 * synchronously.
 *
 * **When to use**
 *
 * Use to create the error value for a fiber that could not be completed by a
 * synchronous runner.
 *
 * **Example** (Creating an AsyncFiberError)
 *
 * ```ts
 * import { Cause } from "effect"
 * import type { Fiber } from "effect"
 *
 * declare const fiber: Fiber.Fiber<unknown, unknown>
 *
 * const error = new Cause.AsyncFiberError(fiber)
 * console.log(error.message) // "An asynchronous Effect was executed with Effect.runSync"
 * ```
 *
 * @see {@link isAsyncFiberError} for checking unknown values
 *
 * @category constructors
 * @since 4.0.0
 */
export const AsyncFiberError: new(fiber: Fiber<unknown, unknown>) => AsyncFiberError = effect.AsyncFiberError
Referenced by 1 symbols