/** * @since 1.0.0 */ import { proto } from "@fp-ts/core/internal/effect" import type { None, Option, Some } from "@fp-ts/core/Option" /** @internal */ export const isNone = (fa: Option): fa is None => fa._tag === "None" /** @internal */ export const isSome = (fa: Option): fa is Some => fa._tag === "Some" /** @internal */ export const none: Option = Object.setPrototypeOf({ _tag: "None" }, proto) /** @internal */ export const some = (a: A): Option => Object.setPrototypeOf({ _tag: "Some", value: a }, proto)