@typed/fp
Version:
Data Structures and Resources for fp-ts
29 lines • 1.49 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.askAndProvide = exports.askAndUse = exports.provideAllWith = exports.useAllWith = exports.provideSomeWith = exports.useSomeWith = void 0;
const function_1 = require("fp-ts/function");
function useSomeWith(M) {
return (provider) => (hkt) => (0, function_1.pipe)(provider, M.chain((removed) => (0, function_1.pipe)(hkt, M.useSome(removed))));
}
exports.useSomeWith = useSomeWith;
function provideSomeWith(M) {
return (provider) => (hkt) => (0, function_1.pipe)(provider, M.chain((removed) => (0, function_1.pipe)(hkt, M.provideSome(removed))));
}
exports.provideSomeWith = provideSomeWith;
function useAllWith(M) {
return (provider) => (hkt) => (0, function_1.pipe)(provider, M.chain((removed) => (0, function_1.pipe)(hkt, M.useAll(removed))));
}
exports.useAllWith = useAllWith;
function provideAllWith(M) {
return (provider) => (hkt) => (0, function_1.pipe)(provider, M.chain((removed) => (0, function_1.pipe)(hkt, M.provideAll(removed))));
}
exports.provideAllWith = provideAllWith;
function askAndUse(M) {
return (hkt) => (0, function_1.pipe)(M.fromReader((e) => e), M.map((e) => (0, function_1.pipe)(hkt, M.useAll(e))));
}
exports.askAndUse = askAndUse;
function askAndProvide(M) {
return (hkt) => (0, function_1.pipe)(M.fromReader((e) => e), M.map((e) => (0, function_1.pipe)(hkt, M.provideAll(e))));
}
exports.askAndProvide = askAndProvide;
//# sourceMappingURL=Provide.js.map