Skip to content

Variable: allSettled()

readonly allSettled: <T>(results) => Ok<SettledResult<OkUnion<T>, ErrUnion<T>>[]>

Defined in: core/factories.ts:553

Collects the status of all Results without failing.

Always returns Ok with array of objects indicating status (ok/err) and corresponding value/error. Never fails, unlike all().

Similar to Promise.allSettled().

Type Parameters

T

T extends readonly Result<unknown, unknown>[]

Results tuple type

Parameters

results

T

Array of Results

Returns

Ok<SettledResult<OkUnion<T>, ErrUnion<T>>[]>

Always Ok with status array

Examples

ts
// Mix of Ok and Err
const results = Result.allSettled([
  Result.ok(1),
  Result.err('failed'),
  Result.ok(3)
])

results.unwrap() // safely unwrap all results
// [
//   { status: 'ok', value: 1 },
//   { status: 'err', reason: 'failed' },
//   { status: 'ok', value: 3 }
// ]
ts
// Processing individual results
const settled = Result.allSettled(operations).unwrap()
const successes = settled.filter(r => r.status === 'ok')
const failures = settled.filter(r => r.status === 'err')
ts
// Empty array
Result.allSettled([]) // Ok([])