A TypeScript port of Rust's Result<T> and Option<T> structures
npm install @flowr/resultA TypeScript port of Rust's Result and Option structs
You can use the following command to install this package, or replace pnpm add with your package manager of choice.
``sh`
pnpm add @flowr/result
Old code without Result.from:
`typescript`
try {
const returnCode = someFunctionThatMightThrow();
return returnCode;
}
catch (error) {
console.error(error);
return null;
}
New Code with Result.from:
`typescript
import { Result } from '@flowr/result';
const returnCode = Result.from(() => someFunctionThatMightThrow());
return returnCode.unwrapOrElse((error) => {
console.error(error);
return null;
});
`
Old code without Result.fromAsync:
`typescript
try {
const returnCode = await someFunctionThatReturnsAPromiseAndMightReject();
return returnCode;
}
catch (error) {
console.error(error);
return null;
}
`
New Code with Result.fromAsync:
`typescript
import { Result } from '@flowr/result';
const returnCode = await Result.fromAsync(async () => someFunctionThatReturnsAPromiseAndMightReject());
return returnCode.unwrapOrElse((error) => {
console.error(error);
return null;
});
``