@typed/fp
Version:
Data Structures and Resources for fp-ts
30 lines • 849 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.MonadRec = exports.ChainRec = exports.chainRec = void 0;
const tslib_1 = require("tslib");
const E = (0, tslib_1.__importStar)(require("fp-ts/Either"));
const function_1 = require("fp-ts/function");
const T = (0, tslib_1.__importStar)(require("fp-ts/Task"));
/**
* @since 0.9.2
* @category Combinator
*/
const chainRec = (f) => (value) => (0, function_1.pipe)(value, f, T.chain(E.match((0, exports.chainRec)(f), T.of)));
exports.chainRec = chainRec;
/**
* @since 0.9.2
* @category Instance
*/
exports.ChainRec = {
chainRec: exports.chainRec,
};
/**
* @since 0.9.2
* @category Instance
*/
exports.MonadRec = {
...T.Monad,
chainRec: exports.chainRec,
};
(0, tslib_1.__exportStar)(require("fp-ts/Task"), exports);
//# sourceMappingURL=Task.js.map