UNPKG

fast-iterable

Version:

Provides LINQ-like fluent api operations for iterables and async iterables (ES2018+).

26 lines (25 loc) 1.25 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const fluent_symbol_1 = require("./types-internal/fluent-symbol"); const mounters_1 = require("./mounters"); const mounters_2 = require("./mounters"); const types_internal_1 = require("./types-internal"); const internal_wrapper_1 = require("./internal-wrapper"); const sync_handler_1 = require("./sync-handler"); /** * Tranforms an iterable into a [[FluentIterable]]. * @typeparam T The type of the items in the iterable. * @param iterable The iterable instance. * @returns The [[FluentIterable]] instance. */ function fluent(iterable) { return (0, types_internal_1.getFluent)(iterable, sync_handler_1.syncHandler, fluent_symbol_1.fluentSymbol); } Object.assign(sync_handler_1.proxyReference, { ...(0, mounters_2.mountIterableFunctions)(mounters_1.iterableFuncs, internal_wrapper_1.internalWrapper), ...(0, mounters_2.mountIterableFunctions)(mounters_1.iterableAsyncFuncs, internal_wrapper_1.internalAsyncWrapper, true), ...mounters_1.resolvingFuncs, ...(0, mounters_2.mountSpecial)(mounters_1.special, internal_wrapper_1.internalWrapper, internal_wrapper_1.internalAsyncWrapper), fluent: fluent_symbol_1.fluentSymbol, }); exports.default = fluent;