import { noop } from './noop'; import { identity } from './identity'; import { UnaryFunction } from '../types'; /* tslint:disable:max-line-length */ export function pipe<T>(): UnaryFunction<T, T>; export function pipe<T, A>(fn1: UnaryFunction<T, A>): UnaryFunction<T, A>; export function pipe<T, A, B>(fn1: UnaryFunction<T, A>, fn2: UnaryFunction<A, B>): UnaryFunction<T, B>; export function pipe<T, A, B, C>(fn1: UnaryFunction<T, A>, fn2: UnaryFunction<A, B>, fn3: UnaryFunction<B, C>): UnaryFunction<T, C>; export function pipe<T, A, B, C, D>(fn1: UnaryFunction<T, A>, fn2: UnaryFunction<A, B>, fn3: UnaryFunction<B, C>, fn4: UnaryFunction<C, D>): UnaryFunction<T, D>; export function pipe<T, A, B, C, D, E>(fn1: UnaryFunction<T, A>, fn2: UnaryFunction<A, B>, fn3: UnaryFunction<B, C>, fn4: UnaryFunction<C, D>, fn5: UnaryFunction<D, E>): UnaryFunction<T, E>; export function pipe<T, A, B, C, D, E, F>(fn1: UnaryFunction<T, A>, fn2: UnaryFunction<A, B>, fn3: UnaryFunction<B, C>, fn4: UnaryFunction<C, D>, fn5: UnaryFunction<D, E>, fn6: UnaryFunction<E, F>): UnaryFunction<T, F>; export function pipe<T, A, B, C, D, E, F, G>(fn1: UnaryFunction<T, A>, fn2: UnaryFunction<A, B>, fn3: UnaryFunction<B, C>, fn4: UnaryFunction<C, D>, fn5: UnaryFunction<D, E>, fn6: UnaryFunction<E, F>, fn7: UnaryFunction<F, G>): UnaryFunction<T, G>; export function pipe<T, A, B, C, D, E, F, G, H>(fn1: UnaryFunction<T, A>, fn2: UnaryFunction<A, B>, fn3: UnaryFunction<B, C>, fn4: UnaryFunction<C, D>, fn5: UnaryFunction<D, E>, fn6: UnaryFunction<E, F>, fn7: UnaryFunction<F, G>, fn8: UnaryFunction<G, H>): UnaryFunction<T, H>; export function pipe<T, A, B, C, D, E, F, G, H, I>(fn1: UnaryFunction<T, A>, fn2: UnaryFunction<A, B>, fn3: UnaryFunction<B, C>, fn4: UnaryFunction<C, D>, fn5: UnaryFunction<D, E>, fn6: UnaryFunction<E, F>, fn7: UnaryFunction<F, G>, fn8: UnaryFunction<G, H>, fn9: UnaryFunction<H, I>): UnaryFunction<T, I>; export function pipe<T, A, B, C, D, E, F, G, H, I>(fn1: UnaryFunction<T, A>, fn2: UnaryFunction<A, B>, fn3: UnaryFunction<B, C>, fn4: UnaryFunction<C, D>, fn5: UnaryFunction<D, E>, fn6: UnaryFunction<E, F>, fn7: UnaryFunction<F, G>, fn8: UnaryFunction<G, H>, fn9: UnaryFunction<H, I>, ...fns: UnaryFunction<any, any>[]): UnaryFunction<T, {}>; /* tslint:enable:max-line-length */ export function pipe(...fns: Array<UnaryFunction<any, any>>): UnaryFunction<any, any> { return pipeFromArray(fns); } /** @internal */ export function pipeFromArray<T, R>(fns: Array<UnaryFunction<T, R>>): UnaryFunction<T, R> { if (fns.length === 0) { return identity as UnaryFunction<any, any>; } if (fns.length === 1) { return fns[0]; } return function piped(input: T): R { return fns.reduce((prev: any, fn: UnaryFunction<T, R>) => fn(prev), input as any); }; }
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
ArgumentOutOfRangeError.ts | File | 857 B | 0644 |
|
EmptyError.ts | File | 643 B | 0644 |
|
Immediate.ts | File | 1.02 KB | 0644 |
|
ObjectUnsubscribedError.ts | File | 787 B | 0644 |
|
TimeoutError.ts | File | 586 B | 0644 |
|
UnsubscriptionError.ts | File | 875 B | 0644 |
|
applyMixins.ts | File | 406 B | 0644 |
|
canReportError.ts | File | 692 B | 0644 |
|
errorObject.ts | File | 133 B | 0644 |
|
hostReportError.ts | File | 237 B | 0644 |
|
identity.ts | File | 53 B | 0644 |
|
isArray.ts | File | 112 B | 0644 |
|
isArrayLike.ts | File | 124 B | 0644 |
|
isDate.ts | File | 104 B | 0644 |
|
isFunction.ts | File | 88 B | 0644 |
|
isInteropObservable.ts | File | 354 B | 0644 |
|
isIterable.ts | File | 246 B | 0644 |
|
isNumeric.ts | File | 427 B | 0644 |
|
isObject.ts | File | 96 B | 0644 |
|
isObservable.ts | File | 380 B | 0644 |
|
isPromise.ts | File | 365 B | 0644 |
|
isScheduler.ts | File | 174 B | 0644 |
|
noop.ts | File | 57 B | 0644 |
|
not.ts | File | 259 B | 0644 |
|
pipe.ts | File | 2.72 KB | 0644 |
|
root.ts | File | 1.09 KB | 0644 |
|
subscribeTo.ts | File | 1.39 KB | 0644 |
|
subscribeToArray.ts | File | 389 B | 0644 |
|
subscribeToIterable.ts | File | 830 B | 0644 |
|
subscribeToObservable.ts | File | 666 B | 0644 |
|
subscribeToPromise.ts | File | 440 B | 0644 |
|
subscribeToResult.ts | File | 1.13 KB | 0644 |
|
toSubscriber.ts | File | 779 B | 0644 |
|
tryCatch.ts | File | 426 B | 0644 |
|