@adrienlcp/result
A success-or-failure value with no exceptions and no nulls
Fonctionne avec
- TypeScript
Installation
pnpm add @adrienlcp/resultExports
Groupés par la section de la documentation qui les explique. Une ligne mène à sa section.
Présentation1 export
Documentés dans le code seulement1 export
Documentation
Le README et les documents à côté, tels qu’écrits dans le dépôt.
PrésentationREADME.md
A success-or-failure value in thirty lines, with no exceptions and no nulls. Zero dependencies.
import { Result } from '@adrienlcp/result'
const parse = (input: string): Result<number, 'not_a_number'> => {
const value = Number(input)
return Number.isNaN(value) ? Result.failure('not_a_number') : Result.success(value)
}
const result = parse(raw)
if (result.status === 'failure') return result.error // 'not_a_number'
result.data // numberResult<T = void, E = 'unknown'>. A result carrying nothing is
Result.success() — no data key at all, so a caller cannot read
undefined off something the signature never promised. Result.failure() with
no argument means the unknown error.
pnpm add @adrienlcp/result