UNPKG

@typed/fp

Version:

Data Structures and Resources for fp-ts

420 lines 10.3 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.filterOrElse = exports.chainOptionK = exports.chainEitherK = exports.fromIOK = exports.chainIOK = exports.chainFirstIOK = exports.fromTaskK = exports.chainTaskK = exports.chainFirstTaskK = exports.fromEnvK = exports.chainFirstEnvK = exports.chainEnvK = exports.fromResumeK = exports.chainResumeK = exports.chainFirstResumeK = exports.fromReaderK = exports.chainReaderK = exports.asks = exports.ask = exports.FromReader = exports.fromReader = exports.FromState = exports.FromEnv = exports.fromEnv = exports.FromResume = exports.fromResume = exports.FromTask = exports.fromTask = exports.FromIO = exports.fromIO = exports.FromEither = exports.fromEither = exports.MonadRec = exports.ChainRec = exports.chainRec = exports.Monad = exports.Chain = exports.Applicative = exports.Apply = exports.Functor = exports.Pointed = exports.URI = exports.of = exports.map = exports.fromState = exports.fromEnvEither = exports.execute = exports.evaluate = exports.chain = exports.ap = void 0; exports.Provide = exports.ProvideAll = exports.ProvideSome = exports.UseAll = exports.UseSome = exports.provideAll = exports.useAll = exports.provideSome = exports.useSome = exports.put = exports.modify = exports.gets = exports.get = exports.fromStateK = exports.chainStateK = exports.fromPredicate = exports.fromOptionK = exports.fromOption = exports.fromEitherK = void 0; const tslib_1 = require("tslib"); const E = (0, tslib_1.__importStar)(require("fp-ts/Either")); const FEi = (0, tslib_1.__importStar)(require("fp-ts/FromEither")); const FIO = (0, tslib_1.__importStar)(require("fp-ts/FromIO")); const FR = (0, tslib_1.__importStar)(require("fp-ts/FromReader")); const FS = (0, tslib_1.__importStar)(require("fp-ts/FromState")); const FT = (0, tslib_1.__importStar)(require("fp-ts/FromTask")); const function_1 = require("fp-ts/function"); const ST = (0, tslib_1.__importStar)(require("fp-ts/StateT")); const FE = (0, tslib_1.__importStar)(require("./FromEnv")); const FRe = (0, tslib_1.__importStar)(require("./FromResume")); const RSE = (0, tslib_1.__importStar)(require("./ReaderStreamEither")); /** * @since 0.9.2 * @category Combinator */ exports.ap = ST.ap(RSE.Chain); /** * @since 0.9.2 * @category Combinator */ exports.chain = ST.chain(RSE.Chain); /** * @since 0.9.2 * @category Combinator */ exports.evaluate = ST.evaluate(RSE.Chain); /** * @since 0.9.2 * @category Combinator */ exports.execute = ST.execute(RSE.Chain); /** * @since 0.9.2 * @category Constructor */ exports.fromEnvEither = ST.fromF(RSE.Chain); /** * @since 0.9.2 * @category Constructor */ exports.fromState = ST.fromState(RSE.Pointed); /** * @since 0.9.2 * @category Combinator */ exports.map = ST.map(RSE.Functor); /** * @since 0.9.2 * @category Constructor */ exports.of = ST.of(RSE.Pointed); /** * @since 0.9.2 * @category URI */ exports.URI = '@typed/fp/StateReaderStreamEither'; /** * @since 0.9.2 * @category Instance */ exports.Pointed = { of: exports.of, }; /** * @since 0.9.2 * @category Instance */ exports.Functor = { map: exports.map, }; /** * @since 0.9.2 * @category Instance */ exports.Apply = { ...exports.Functor, ap: exports.ap, }; /** * @since 0.9.2 * @category Instance */ exports.Applicative = { ...exports.Apply, ...exports.Pointed, }; /** * @since 0.9.2 * @category Instance */ exports.Chain = { ...exports.Functor, chain: exports.chain, }; /** * @since 0.9.2 * @category Instance */ exports.Monad = { ...exports.Chain, ...exports.Pointed, }; /** * @since 0.9.2 * @category Combinator */ const chainRec = (f) => (value) => (0, function_1.flow)(f(value), RSE.chain(([either, nextState]) => (0, function_1.pipe)(either, E.matchW((a) => (0, exports.chainRec)(f)(a)(nextState), (b) => RSE.right([b, nextState]))))); exports.chainRec = chainRec; /** * @since 0.9.2 * @category Instance */ exports.ChainRec = { chainRec: exports.chainRec, }; /** * @since 0.9.2 * @category Instance */ exports.MonadRec = { ...exports.Monad, chainRec: exports.chainRec, }; /** * @since 0.9.2 * @category Constructor */ const fromEither = (either) => (0, exports.fromEnvEither)(RSE.fromEither(either)); exports.fromEither = fromEither; /** * @since 0.9.2 * @category Instance */ exports.FromEither = { fromEither: exports.fromEither, }; /** * @since 0.9.2 * @category Constructor */ const fromIO = (io) => (0, exports.fromEnvEither)(RSE.fromIO(io)); exports.fromIO = fromIO; /** * @since 0.9.2 * @category Instance */ exports.FromIO = { fromIO: exports.fromIO, }; /** * @since 0.9.2 * @category Constructor */ const fromTask = (io) => (0, exports.fromEnvEither)(RSE.fromTask(io)); exports.fromTask = fromTask; /** * @since 0.9.2 * @category INstance */ exports.FromTask = { ...exports.FromIO, fromTask: exports.fromTask, }; /** * @since 0.9.2 * @category Constructor */ const fromResume = (resume) => (0, exports.fromEnvEither)(RSE.fromResume(resume)); exports.fromResume = fromResume; /** * @since 0.9.2 * @category Instance */ exports.FromResume = { fromResume: exports.fromResume, }; /** * @since 0.9.2 * @category Constructor */ const fromEnv = (env) => (0, exports.fromEnvEither)(RSE.fromEnv(env)); exports.fromEnv = fromEnv; /** * @since 0.9.2 * @category Instance */ exports.FromEnv = { fromEnv: exports.fromEnv, }; /** * @since 0.9.2 * @category Instance */ exports.FromState = { fromState: exports.fromState, }; /** * @since 0.9.2 * @category Constructor */ const fromReader = (reader) => (0, exports.fromEnvEither)(RSE.fromReader(reader)); exports.fromReader = fromReader; /** * @since 0.9.2 * @category Instance */ exports.FromReader = { fromReader: exports.fromReader }; /** * @since 0.9.2 * @category Constructor */ exports.ask = FR.ask(exports.FromReader); /** * @since 0.9.2 * @category Constructor */ exports.asks = FR.asks(exports.FromReader); /** * @since 0.9.2 * @category Combinator */ exports.chainReaderK = FR.chainReaderK(exports.FromReader, exports.Chain); /** * @since 0.9.2 * @category Constructor */ exports.fromReaderK = FR.fromReaderK(exports.FromReader); /** * @since 0.9.2 * @category Combinator */ exports.chainFirstResumeK = FRe.chainFirstResumeK(exports.FromResume, exports.Chain); /** * @since 0.9.2 * @category Combinator */ exports.chainResumeK = FRe.chainResumeK(exports.FromResume, exports.Chain); /** * @since 0.9.2 * @category Constructor */ exports.fromResumeK = FRe.fromResumeK(exports.FromResume); /** * @since 0.9.2 * @category Combinator */ exports.chainEnvK = FE.chainEnvK(exports.FromEnv, exports.Chain); /** * @since 0.9.2 * @category Combinator */ exports.chainFirstEnvK = FE.chainFirstEnvK(exports.FromEnv, exports.Chain); /** * @since 0.9.2 * @category Constructor */ exports.fromEnvK = FE.fromEnvK(exports.FromEnv); /** * @since 0.9.2 * @category Combinator */ exports.chainFirstTaskK = FT.chainFirstTaskK(exports.FromTask, exports.Chain); /** * @since 0.9.2 * @category Combinator */ exports.chainTaskK = FT.chainTaskK(exports.FromTask, exports.Chain); /** * @since 0.9.2 * @category Constructor */ exports.fromTaskK = FT.fromTaskK(exports.FromTask); /** * @since 0.9.2 * @category Combinator */ exports.chainFirstIOK = FIO.chainFirstIOK(exports.FromTask, exports.Chain); /** * @since 0.9.2 * @category Combinator */ exports.chainIOK = FIO.chainIOK(exports.FromTask, exports.Chain); /** * @since 0.9.2 * @category Constructor */ exports.fromIOK = FIO.fromIOK(exports.FromTask); /** * @since 0.9.2 * @category Combinator */ exports.chainEitherK = FEi.chainEitherK(exports.FromEither, exports.Chain); /** * @since 0.9.2 * @category Combinator */ exports.chainOptionK = FEi.chainOptionK(exports.FromEither, exports.Chain); /** * @since 0.9.2 * @category Combinator */ exports.filterOrElse = FEi.filterOrElse(exports.FromEither, exports.Chain); /** * @since 0.9.2 * @category Constructor */ exports.fromEitherK = FEi.fromEitherK(exports.FromEither); /** * @since 0.9.2 * @category Constructor */ exports.fromOption = FEi.fromOption(exports.FromEither); /** * @since 0.9.2 * @category Constructor */ exports.fromOptionK = FEi.fromOptionK(exports.FromEither); /** * @since 0.9.2 * @category Constructor */ exports.fromPredicate = FEi.fromPredicate(exports.FromEither); /** * @since 0.9.2 * @category Combinator */ exports.chainStateK = FS.chainStateK(exports.FromState, exports.Chain); /** * @since 0.9.2 * @category Constructor */ exports.fromStateK = FS.fromStateK(exports.FromState); /** * @since 0.9.2 * @category Constructor */ exports.get = FS.get(exports.FromState); /** * @since 0.9.2 * @category Constructor */ exports.gets = FS.gets(exports.FromState); /** * @since 0.9.2 * @category Combinator */ exports.modify = FS.modify(exports.FromState); /** * @since 0.9.2 * @category Combinator */ exports.put = FS.put(exports.FromState); /** * @since 0.9.2 * @category Combinator */ const useSome = (provided) => (srte) => (s) => (r) => srte(s)({ ...r, ...provided }); exports.useSome = useSome; /** * @since 0.9.2 * @category Combinator */ const provideSome = (provided) => (srte) => (s) => (r) => srte(s)({ ...provided, ...r }); exports.provideSome = provideSome; /** * @since 0.9.2 * @category Combinator */ const useAll = (provided) => (srte) => (s) => () => srte(s)(provided); exports.useAll = useAll; /** * @since 0.9.2 * @category Combinator */ const provideAll = (provided) => (srte) => (s) => (r) => srte(s)({ ...provided, ...r }); exports.provideAll = provideAll; /** * @since 0.9.2 * @category Instance */ exports.UseSome = { useSome: exports.useSome, }; /** * @since 0.9.2 * @category Instance */ exports.UseAll = { useAll: exports.useAll, }; /** * @since 0.9.2 * @category Instance */ exports.ProvideSome = { provideSome: exports.provideSome, }; /** * @since 0.9.2 * @category Instance */ exports.ProvideAll = { provideAll: exports.provideAll, }; /** * @since 0.9.2 * @category Instance */ exports.Provide = { useSome: exports.useSome, useAll: exports.useAll, provideSome: exports.provideSome, provideAll: exports.provideAll, }; //# sourceMappingURL=StateReaderStreamEither.js.map