none
import { none } from "https://raw.githubusercontent.com/baetheus/fun/main/option.ts";
The cannonical implementation of the None type. Since all None values are equivalent there is no reason to construct more than one object instance.
@example
import type { Option } from "./option.ts";
import * as O from "./option.ts";
function fromNilable<A>(a: A | null | undefined): Option<A> {
return a === null || a === undefined ? O.none : O.some(a);
}
const result1 = fromNilable(null); // None
const result2 = fromNilable(1); // Some<number>
const none: Option<never>;