fp-ts-std
Version:
The missing pseudo-standard library for fp-ts.
65 lines • 2.09 kB
TypeScript
/**
* Various functions to aid in working with predicates. You may also find the
* `Boolean` module relevant.
*
* @since 0.12.0
*/
import type { Predicate } from "fp-ts/Predicate";
/**
* Given an array of predicates, returns a predicate that returns true if the
* argument passes all of the predicates.
*
* @example
* import { allPass } from 'fp-ts-std/Predicate'
* import { Predicate } from 'fp-ts/Predicate'
*
* const gt3: Predicate<number> = n => n > 3
* const lt7: Predicate<number> = n => n < 7
* const even: Predicate<number> = n => n % 2 === 0
*
* assert.strictEqual(allPass([gt3, lt7, even])(4), true)
* assert.strictEqual(allPass([gt3, lt7, even])(5), false)
*
* @category 3 Functions
* @since 0.12.0
*/
export declare const allPass: <A>(fs: Predicate<A>[]) => Predicate<A>;
/**
* Given an array of predicates, returns a predicate that returns true if the
* argument passes any of the predicates.
*
* @example
* import { anyPass } from 'fp-ts-std/Predicate'
* import { Predicate } from 'fp-ts/Predicate'
*
* const lt3: Predicate<number> = n => n < 3
* const gt7: Predicate<number> = n => n > 7
* const even: Predicate<number> = n => n % 2 === 0
*
* assert.strictEqual(anyPass([lt3, gt7, even])(4), true)
* assert.strictEqual(anyPass([lt3, gt7, even])(5), false)
*
* @category 3 Functions
* @since 0.12.0
*/
export declare const anyPass: <A>(fs: Predicate<A>[]) => Predicate<A>;
/**
* Given an array of predicates, returns a predicate that returns true if the
* argument passes none of the predicates.
*
* @example
* import { nonePass } from 'fp-ts-std/Predicate'
* import { Predicate } from 'fp-ts/Predicate'
*
* const lt3: Predicate<number> = n => n < 3
* const gt7: Predicate<number> = n => n > 7
* const even: Predicate<number> = n => n % 2 === 0
*
* assert.strictEqual(nonePass([lt3, gt7, even])(4), false)
* assert.strictEqual(nonePass([lt3, gt7, even])(5), true)
*
* @category 3 Functions
* @since 0.12.0
*/
export declare const nonePass: <A>(fs: Predicate<A>[]) => Predicate<A>;
//# sourceMappingURL=Predicate.d.ts.map