UNPKG

@typed/fp

Version:

Data Structures and Resources for fp-ts

715 lines 17.4 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.bind = exports.Chain = exports.getApplicativeMonoid = exports.Applicative = exports.getApplySemigroup = exports.apTW = exports.apT = exports.apScondW = exports.apSecond = exports.apSW = exports.apS = exports.apFirstW = exports.apFirst = exports.Apply = exports.Bifunctor = exports.tupled = exports.flap = exports.bindTo = exports.Functor = exports.Pointed = exports.URI = exports.toUnion = exports.swap = exports.fromReaderStream = exports.right = exports.orLeft = exports.orElseFirst = exports.orElse = exports.matchEW = exports.matchE = exports.match = exports.mapLeft = exports.fromReaderStreamL = exports.left = exports.getOrElseEW = exports.getOrElseE = exports.getOrElse = exports.bracketW = exports.bracket = exports.bimap = exports.altValidation = exports.altW = exports.alt = exports.of = exports.map = exports.fromReader = exports.chainW = exports.chain = exports.apW = exports.ap = void 0; exports.chainEnvK = exports.chainFirstEnvK = exports.fromEnv = exports.FromEnv = exports.fromResumeK = exports.chainResumeK = exports.chainFirstResumeK = exports.fromResume = exports.FromResume = exports.fromStreamK = exports.chainStreamK = exports.chainFirstStreamK = exports.fromStream = exports.FromStream = exports.fromTaskK = exports.chainTaskK = exports.chainFirstTaskK = exports.fromTask = exports.FromTask = exports.fromIOK = exports.chainIOK = exports.chainFirstIOK = exports.fromIO = exports.FromIO = exports.fromReaderK = exports.chainReaderKW = exports.chainReaderK = exports.chainFirstReaderK = exports.asks = exports.ask = exports.FromReader = exports.fromPredicate = exports.fromOptionK = exports.fromOption = exports.fromEitherK = exports.filterOrElse = exports.chainOptionK = exports.chainEitherK = exports.fromEither = exports.FromEither = exports.Alternative = exports.zero = exports.altAll = exports.Alt = exports.MonadRec = exports.ChainRec = exports.chainRec = exports.Monad = exports.chainFirstW = exports.chainFirst = void 0; exports.useAllWithReaderStream = exports.useSomeWithReaderStream = exports.provideSomeWithReaderStream = exports.provideAllWithReaderStream = exports.fromReaderStreamK = exports.chainReaderStreamK = exports.chainFirstReaderStreamK = exports.FromReaderStream = exports.useAllWithEnv = exports.useSomeWithEnv = exports.provideSomeWithEnv = exports.provideAllWithEnv = exports.useSome = exports.UseSome = exports.useAll = exports.UseAll = exports.provideSome = exports.ProvideSome = exports.provideAll = exports.ProvideAll = exports.fromEnvK = void 0; const tslib_1 = require("tslib"); /** * ReaderStreamEither is an EitherT of ReaderStream, allowing for you to * represent your application over time with Stream, with support for branching/error-handling * through Either, and dependency injection from Reader. * * @since 0.9.2 */ const ALT = (0, tslib_1.__importStar)(require("fp-ts/Alt")); const App = (0, tslib_1.__importStar)(require("fp-ts/Applicative")); const Ap = (0, tslib_1.__importStar)(require("fp-ts/Apply")); const Ch = (0, tslib_1.__importStar)(require("fp-ts/Chain")); const Ei = (0, tslib_1.__importStar)(require("fp-ts/Either")); const ET = (0, tslib_1.__importStar)(require("fp-ts/EitherT")); 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 FT = (0, tslib_1.__importStar)(require("fp-ts/FromTask")); const F = (0, tslib_1.__importStar)(require("fp-ts/Functor")); const RT = (0, tslib_1.__importStar)(require("fp-ts/ReaderT")); const FE = (0, tslib_1.__importStar)(require("./FromEnv")); const FRS = (0, tslib_1.__importStar)(require("./FromReaderStream")); const FRe = (0, tslib_1.__importStar)(require("./FromResume")); const FS = (0, tslib_1.__importStar)(require("./FromStream")); const function_1 = require("./function"); const RS = (0, tslib_1.__importStar)(require("./ReaderStream")); const S = (0, tslib_1.__importStar)(require("./Stream")); const SE = (0, tslib_1.__importStar)(require("./StreamEither")); /** * @since 0.9.2 * @category Combinator */ exports.ap = RT.ap(SE.Apply); /** * @since 0.9.2 * @category Combinator */ exports.apW = exports.ap; /** * @since 0.9.2 * @category Combinator */ exports.chain = RT.chain(SE.Chain); /** * @since 0.9.2 * @category Combinator */ exports.chainW = exports.chain; /** * @since 0.9.2 * @category Constructor */ exports.fromReader = RT.fromReader(SE.Pointed); /** * @since 0.9.2 * @category Combinator */ exports.map = RT.map(SE.Functor); /** * @since 0.9.2 * @category Constructor */ exports.of = RT.of(SE.Pointed); /** * @since 0.9.2 * @category Combinator */ exports.alt = ET.alt(RS.Monad); /** * @since 0.9.2 * @category Combinator */ exports.altW = exports.alt; /** * @since 0.9.2 * @category Typeclass Constructor */ const altValidation = (semigroup) => ET.altValidation(RS.Monad, semigroup); exports.altValidation = altValidation; /** * @since 0.9.2 * @category Combinator */ exports.bimap = ET.bimap(RS.Functor); /** * @since 0.9.2 * @category Combinator */ exports.bracket = ET.bracket(RS.Monad); /** * @since 0.9.2 * @category Combinator */ exports.bracketW = exports.bracket; /** * @since 0.9.2 * @category Combinator */ exports.getOrElse = ET.getOrElse(RS.Monad); /** * @since 0.9.2 * @category Combinator */ exports.getOrElseE = ET.getOrElseE(RS.Monad); /** * @since 0.9.2 * @category Combinator */ exports.getOrElseEW = exports.getOrElseE; /** * @since 0.9.2 * @category Constructor */ exports.left = ET.left(RS.Monad); /** * @since 0.9.2 * @category Constructor */ exports.fromReaderStreamL = ET.leftF(RS.Monad); /** * @since 0.9.2 * @category Combinator */ exports.mapLeft = ET.mapLeft(RS.Monad); /** * @since 0.9.2 * @category Deconstructor */ exports.match = ET.match(RS.Monad); /** * @since 0.9.2 * @category Deconstructor */ exports.matchE = ET.matchE(RS.Monad); /** * @since 0.9.2 * @category Deconstructor */ exports.matchEW = exports.match; /** * @since 0.9.2 * @category Combinator */ exports.orElse = ET.orElse(RS.Monad); /** * @since 0.9.2 * @category Combinator */ exports.orElseFirst = ET.orElseFirst(RS.Monad); /** * @since 0.9.2 * @category Combinator */ exports.orLeft = ET.orLeft(RS.Monad); /** * @since 0.9.2 * @category Constructor */ exports.right = ET.right(RS.Monad); /** * @since 0.9.2 * @category Constructor */ exports.fromReaderStream = ET.rightF(RS.Monad); /** * @since 0.9.2 * @category Combinator */ exports.swap = ET.swap(RS.Functor); /** * @since 0.9.2 * @category Combinator */ exports.toUnion = ET.toUnion(RS.Functor); /** * @since 0.9.2 * @category URI */ exports.URI = '@typed/fp/ReaderStreamEither'; /** * @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 Combinator */ exports.bindTo = F.bindTo(exports.Functor); /** * @since 0.9.2 * @category Combinator */ exports.flap = F.flap(exports.Functor); /** * @since 0.9.2 * @category Combinator */ exports.tupled = F.tupled(exports.Functor); /** * @since 0.9.2 * @category Instance */ exports.Bifunctor = { ...exports.Functor, bimap: exports.bimap, mapLeft: exports.mapLeft, }; /** * @since 0.9.2 * @category Instance */ exports.Apply = { ...exports.Functor, ap: exports.ap, }; /** * @since 0.9.2 * @category Combinator */ exports.apFirst = Ap.apFirst(exports.Apply); /** * @since 0.13.9 * @category Combinator */ exports.apFirstW = exports.apFirst; /** * @since 0.9.2 * @category Combinator */ exports.apS = Ap.apS(exports.Apply); /** * @since 0.13.9 * @category Combinator */ exports.apSW = exports.apS; /** * @since 0.9.2 * @category Combinator */ exports.apSecond = Ap.apSecond(exports.Apply); /** * @since 0.13.9 * @category Combinator */ exports.apScondW = exports.apFirst; /** * @since 0.9.2 * @category Combinator */ exports.apT = Ap.apT(exports.Apply); /** * @since 0.13.9 * @category Combinator */ exports.apTW = exports.apT; /** * @since 0.9.2 * @category Typeclass Constructor */ exports.getApplySemigroup = Ap.getApplySemigroup(exports.Apply); /** * @since 0.9.2 * @category Instance */ exports.Applicative = { ...exports.Apply, ...exports.Pointed, }; /** * @since 0.9.2 * @category Typeclass Consructor */ exports.getApplicativeMonoid = App.getApplicativeMonoid(exports.Applicative); /** * @since 0.9.2 * @category Instance */ exports.Chain = { ...exports.Functor, chain: exports.chain, }; /** * @since 0.9.2 * @category Combinator */ exports.bind = Ch.bind(exports.Chain); /** * @since 0.9.2 * @category Combinator */ exports.chainFirst = Ch.chainFirst(exports.Chain); /** * @since 0.13.9 * @category Combinator */ exports.chainFirstW = exports.chainFirst; /** * @since 0.9.2 * @category Instance */ exports.Monad = { ...exports.Chain, ...exports.Pointed, }; /** * @since 0.9.2 * @category Combinator */ function chainRec(f) { return (value) => (env) => SE.chainRec((a) => f(a)(env))(value); } exports.chainRec = chainRec; /** * @since 0.9.2 * @category Instance */ exports.ChainRec = { chainRec, }; /** * @since 0.9.2 * @category Instance */ exports.MonadRec = { ...exports.Monad, chainRec, }; /** * @since 0.9.2 * @category Instance */ exports.Alt = { ...exports.Functor, alt: exports.alt, }; /** * @since 0.9.2 * @category Combinator */ exports.altAll = ALT.altAll(exports.Alt); /** * @since 0.9.2 * @category Constructor */ exports.zero = S.empty; /** * @since 0.9.2 * @category Instance */ exports.Alternative = { ...exports.Alt, zero: () => exports.zero, }; /** * @since 0.9.2 * @category Instance */ exports.FromEither = { fromEither: RS.of, }; /** * @since 0.9.2 * @category Constructor */ exports.fromEither = exports.FromEither.fromEither; /** * @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 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.chainFirstReaderK = FR.chainFirstReaderK(exports.FromReader, exports.Chain); /** * @since 0.9.2 * @category Combinator */ exports.chainReaderK = FR.chainReaderK(exports.FromReader, exports.Chain); /** * @since 0.13.9 * @category Combinator */ exports.chainReaderKW = exports.chainReaderK; /** * @since 0.9.2 * @category Constructor */ exports.fromReaderK = FR.fromReaderK(exports.FromReader); /** * @since 0.9.2 * @category Instance */ exports.FromIO = { fromIO: (0, function_1.flow)(RS.fromIO, exports.fromReaderStream), }; /** * @since 0.9.2 * @category Constructor */ exports.fromIO = exports.FromIO.fromIO; /** * @since 0.9.2 * @category Combinator */ exports.chainFirstIOK = FIO.chainFirstIOK(exports.FromIO, exports.Chain); /** * @since 0.9.2 * @category Combinator */ exports.chainIOK = FIO.chainIOK(exports.FromIO, exports.Chain); /** * @since 0.9.2 * @category Constructor */ exports.fromIOK = FIO.fromIOK(exports.FromIO); /** * @since 0.9.2 * @category Instance */ exports.FromTask = { ...exports.FromIO, fromTask: (0, function_1.flow)(RS.fromTask, exports.fromReaderStream), }; /** * @since 0.9.2 * @category Constructor */ exports.fromTask = exports.FromTask.fromTask; /** * @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 Instance */ exports.FromStream = { fromStream: (0, function_1.flow)(RS.fromStream, RS.map(Ei.right)), }; /** * @since 0.9.2 * @category Constructor */ exports.fromStream = exports.FromStream.fromStream; /** * @since 0.9.2 * @category Combinator */ exports.chainFirstStreamK = FS.chainFirstStreamK(exports.FromStream, exports.Chain); /** * @since 0.9.2 * @category Combinator */ exports.chainStreamK = FS.chainStreamK(exports.FromStream, exports.Chain); /** * @since 0.9.2 * @category Constructor */ exports.fromStreamK = FS.fromStreamK(exports.FromStream); /** * @since 0.9.2 * @category Instance */ exports.FromResume = { fromResume: (0, function_1.flow)(RS.fromResume, RS.map((x) => Ei.right(x))), }; /** * @since 0.9.2 * @category Constructor */ exports.fromResume = exports.FromResume.fromResume; /** * @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 Instance */ exports.FromEnv = { fromEnv: (0, function_1.flow)(RS.fromEnv, RS.map((x) => Ei.right(x))), }; /** * @since 0.9.2 * @category Constructor */ exports.fromEnv = exports.FromEnv.fromEnv; /** * @since 0.9.2 * @category Combinator */ exports.chainFirstEnvK = FE.chainFirstEnvK(exports.FromEnv, exports.Chain); /** * @since 0.9.2 * @category Combinator */ exports.chainEnvK = FE.chainEnvK(exports.FromEnv, exports.Chain); /** * @since 0.9.2 * @category Constructor */ exports.fromEnvK = FE.fromEnvK(exports.FromEnv); /** * @since 0.13.9 * @category Instance */ exports.ProvideAll = { provideAll: RS.provideAll, }; /** * @since 0.13.9 * @category Combinator */ exports.provideAll = exports.ProvideAll.provideAll; /** * @since 0.13.9 * @category Instance */ exports.ProvideSome = { provideSome: RS.provideSome, }; /** * @since 0.13.9 * @category Combinator */ exports.provideSome = exports.ProvideSome.provideSome; /** * @since 0.13.9 * @category Instance */ exports.UseAll = { useAll: RS.useAll, }; /** * @since 0.13.9 * @category Combinator */ exports.useAll = exports.UseAll.useAll; /** * @since 0.13.9 * @category Instance */ exports.UseSome = { useSome: RS.useSome, }; /** * @since 0.13.9 * @category Combinator */ exports.useSome = exports.UseSome.useSome; /** * @since 0.13.9 * @category Combinator */ exports.provideAllWithEnv = FE.provideAllWithEnv({ ...exports.FromEnv, ...exports.ProvideAll, ...exports.Chain }); /** * @since 0.13.9 * @category Combinator */ exports.provideSomeWithEnv = FE.provideSomeWithEnv({ ...exports.FromEnv, ...exports.ProvideSome, ...exports.Chain }); /** * @since 0.13.9 * @category Combinator */ exports.useSomeWithEnv = FE.useSomeWithEnv({ ...exports.FromEnv, ...exports.UseSome, ...exports.Chain }); /** * @since 0.13.9 * @category Combinator */ exports.useAllWithEnv = FE.useAllWithEnv({ ...exports.FromEnv, ...exports.UseAll, ...exports.Chain }); /** * @since 0.13.9 * @category Instance */ exports.FromReaderStream = { fromReaderStream: exports.fromReaderStream, }; /** * @since 0.13.9 * @category Combinator */ exports.chainFirstReaderStreamK = FRS.chainFirstReaderStreamK(exports.FromReaderStream, exports.Chain); /** * @since 0.13.9 * @category Combinator */ exports.chainReaderStreamK = FRS.chainReaderStreamK(exports.FromReaderStream, exports.Chain); /** * @since 0.13.9 * @category Constructor */ exports.fromReaderStreamK = FRS.fromReaderStreamK(exports.FromReaderStream); /** * @since 0.13.9 * @category Combinator */ exports.provideAllWithReaderStream = FRS.provideAllWithReaderStream({ ...exports.FromReaderStream, ...exports.ProvideAll, ...exports.Chain, }); /** * @since 0.13.9 * @category Combinator */ exports.provideSomeWithReaderStream = FRS.provideSomeWithReaderStream({ ...exports.FromReaderStream, ...exports.ProvideSome, ...exports.Chain, }); /** * @since 0.13.9 * @category Combinator */ exports.useSomeWithReaderStream = FRS.useSomeWithReaderStream({ ...exports.FromReaderStream, ...exports.UseSome, ...exports.Chain, }); /** * @since 0.13.9 * @category Combinator */ exports.useAllWithReaderStream = FRS.useAllWithReaderStream({ ...exports.FromReaderStream, ...exports.UseAll, ...exports.Chain, }); //# sourceMappingURL=ReaderStreamEither.js.map