Skip to content

Variable: partition()

readonly partition: <T, E>(results) => [T[], E[]]

Defined in: core/factories.ts:680

Separates Results into two arrays: successes and failures.

Useful when you want to process successes and errors separately, instead of failing on the first error occurrence.

Type Parameters

T

T

Success value type

E

E

Error type

Parameters

results

readonly Result<T, E>[]

Array of Results

Returns

[T[], E[]]

Tuple [Ok values, errors]

Examples

ts
// Partitioning results
const operations = [
  Result.ok(1),
  Result.err('failure A'),
  Result.ok(2),
  Result.err('failure B'),
  Result.ok(3)
]

const [successes, errors] = Result.partition(operations)
console.log(successes) // [1, 2, 3]
console.log(errors) // ["failure A", "failure B"]
ts
// Batch processing with report
const [processed, failures] = Result.partition(
  items.map((item) => processItem(item))
)

console.log(`${processed.length} items processed`)
console.log(`${failures.length} failures`)
ts
// Empty array
Result.partition([]) // [[], []]