UNPKG

@typed/fp

Version:

Data Structures and Resources for fp-ts

29 lines 1.49 kB
"use strict"; 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