const warnValue = TernaryResult.warn(2, 'slow');
const mappedWarn = TernaryResult.mapWarn(warnValue, (warning) => `${warning}!`);
const okPassthrough = TernaryResult.mapWarn(
TernaryResult.ok(3),
(value: number) => value * 2,
);
assert.deepStrictEqual(mappedWarn, TernaryResult.warn(2, 'slow!'));
assert.deepStrictEqual(okPassthrough, TernaryResult.ok(3));
Maps the Warn variant while leaving Ok/Err untouched.
const warnValue = TernaryResult.warn(2, 'slow');
const mappedWarn = TernaryResult.mapWarn(warnValue, (warning) => `${warning}!`);
const okPassthrough = TernaryResult.mapWarn(
TernaryResult.ok(3),
(value: number) => value * 2,
);
assert.deepStrictEqual(mappedWarn, TernaryResult.warn(2, 'slow!'));
assert.deepStrictEqual(okPassthrough, TernaryResult.ok(3));
Maps the Warn variant while leaving Ok/Err untouched.