UNPKG

fp-ts-std

Version:

The missing pseudo-standard library for fp-ts.

98 lines 2.58 kB
/** * Various functions to aid in working with booleans. You may also find the * `Predicate` module relevant. * * @since 0.1.0 */ import type * as Bounded_ from "fp-ts/Bounded"; import type { Endomorphism } from "fp-ts/Endomorphism"; type Bounded<A> = Bounded_.Bounded<A>; import type { Enum as _Enum } from "./Enum"; type Enum<A> = _Enum<A>; /** * Invert a boolean. * * @example * import { invert } from 'fp-ts-std/Boolean' * * assert.strictEqual(invert(true), false) * assert.strictEqual(invert(false), true) * * @category 3 Functions * @since 0.4.0 */ export declare const invert: Endomorphism<boolean>; /** * Returns `true` if both arguments are `true`, else `false`. Equivalent to * logical conjunction. * * @example * import { and } from 'fp-ts-std/Boolean' * * assert.strictEqual(and(true)(true), true) * assert.strictEqual(and(true)(false), false) * * @category 3 Functions * @since 0.4.0 */ export declare const and: (x: boolean) => Endomorphism<boolean>; /** * Returns `true` if one or both arguments are `true`, else `false`. Equivalent * to logical disjunction. * * @example * import { or } from 'fp-ts-std/Boolean' * * assert.strictEqual(or(true)(false), true) * assert.strictEqual(or(false)(false), false) * * @category 3 Functions * @since 0.4.0 */ export declare const or: (x: boolean) => Endomorphism<boolean>; /** * Returns `true` if one argument is `true` and the other is `false`, else * `false`. Equivalent to exclusive logical disjunction. * * @example * import { xor } from 'fp-ts-std/Boolean' * * assert.strictEqual(xor(true)(false), true) * assert.strictEqual(xor(true)(true), false) * * @category 3 Functions * @since 0.4.0 */ export declare const xor: (x: boolean) => Endomorphism<boolean>; /** * A `Bounded` instance for booleans. * * @example * import { Bounded } from 'fp-ts-std/Boolean' * * assert.strictEqual(Bounded.top, true) * assert.strictEqual(Bounded.bottom, false) * * @category 1 Typeclass Instances * @since 0.17.0 */ export declare const Bounded: Bounded<boolean>; /** * An `Enum` instance for booleans. * * @example * import * as O from 'fp-ts/Option' * import { Enum } from 'fp-ts-std/Boolean' * * assert.deepStrictEqual(Enum.succ(false), O.some(true)) * assert.deepStrictEqual(Enum.succ(true), O.none) * * assert.deepStrictEqual(Enum.pred(true), O.some(false)) * assert.deepStrictEqual(Enum.pred(false), O.none) * * @category 1 Typeclass Instances * @since 0.17.0 */ export declare const Enum: Enum<boolean>; export {}; //# sourceMappingURL=Boolean.d.ts.map