UNPKG

fast-iterable

Version:

Provides LINQ-like fluent api operations for iterables and async iterables (ES2018+).

18 lines (17 loc) 647 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.caseCheckRecipe = void 0; const prepare_1 = require("../types-internal/prepare"); const utils_1 = require("../utils"); function caseCheckRecipe(ifTrue, ifFalse, defaultPredicate, predicateTransform = utils_1.identity) { return function (givenPredicate = defaultPredicate) { const predicate = predicateTransform((0, prepare_1.prepare)(givenPredicate)); for (const t of this) { if (predicate(t)) { return ifTrue(t); } } return ifFalse; }; } exports.caseCheckRecipe = caseCheckRecipe;