Skip to content

@epikodelabs/streamix


@epikodelabs/streamix / OperatorChain

Interface: OperatorChain()<T>

Defined in: projects/libraries/streamix/src/lib/abstractions/operator.ts:275

A type representing a chain of stream operators.

Uses function overloading to provide strong type safety for a sequence of operators (up to 16). Beyond 16 operators, the recursive PipeResult type is used as a fallback so that type safety is preserved as long as TypeScript can infer the chain.

Type Parameters

T

T

The initial type of the stream.

Call Signature

OperatorChain(): Stream<T>

Defined in: projects/libraries/streamix/src/lib/abstractions/operator.ts:277

A type representing a chain of stream operators.

Uses function overloading to provide strong type safety for a sequence of operators (up to 16). Beyond 16 operators, the recursive PipeResult type is used as a fallback so that type safety is preserved as long as TypeScript can infer the chain.

Returns

Stream<T>

Call Signature

OperatorChain<A>(op1): Stream<A>

Defined in: projects/libraries/streamix/src/lib/abstractions/operator.ts:280

A type representing a chain of stream operators.

Uses function overloading to provide strong type safety for a sequence of operators (up to 16). Beyond 16 operators, the recursive PipeResult type is used as a fallback so that type safety is preserved as long as TypeScript can infer the chain.

Type Parameters

A

A

Parameters

op1

Operator<T, A>

Returns

Stream<A>

Call Signature

OperatorChain<A, B>(op1, op2): Stream<B>

Defined in: projects/libraries/streamix/src/lib/abstractions/operator.ts:281

A type representing a chain of stream operators.

Uses function overloading to provide strong type safety for a sequence of operators (up to 16). Beyond 16 operators, the recursive PipeResult type is used as a fallback so that type safety is preserved as long as TypeScript can infer the chain.

Type Parameters

A

A

B

B

Parameters

op1

Operator<T, A>

op2

Operator<A, B>

Returns

Stream<B>

Call Signature

OperatorChain<A, B, C>(op1, op2, op3): Stream<C>

Defined in: projects/libraries/streamix/src/lib/abstractions/operator.ts:282

A type representing a chain of stream operators.

Uses function overloading to provide strong type safety for a sequence of operators (up to 16). Beyond 16 operators, the recursive PipeResult type is used as a fallback so that type safety is preserved as long as TypeScript can infer the chain.

Type Parameters

A

A

B

B

C

C

Parameters

op1

Operator<T, A>

op2

Operator<A, B>

op3

Operator<B, C>

Returns

Stream<C>

Call Signature

OperatorChain<A, B, C, D>(op1, op2, op3, op4): Stream<D>

Defined in: projects/libraries/streamix/src/lib/abstractions/operator.ts:283

A type representing a chain of stream operators.

Uses function overloading to provide strong type safety for a sequence of operators (up to 16). Beyond 16 operators, the recursive PipeResult type is used as a fallback so that type safety is preserved as long as TypeScript can infer the chain.

Type Parameters

A

A

B

B

C

C

D

D

Parameters

op1

Operator<T, A>

op2

Operator<A, B>

op3

Operator<B, C>

op4

Operator<C, D>

Returns

Stream<D>

Call Signature

OperatorChain<A, B, C, D, E>(op1, op2, op3, op4, op5): Stream<E>

Defined in: projects/libraries/streamix/src/lib/abstractions/operator.ts:284

A type representing a chain of stream operators.

Uses function overloading to provide strong type safety for a sequence of operators (up to 16). Beyond 16 operators, the recursive PipeResult type is used as a fallback so that type safety is preserved as long as TypeScript can infer the chain.

Type Parameters

A

A

B

B

C

C

D

D

E

E

Parameters

op1

Operator<T, A>

op2

Operator<A, B>

op3

Operator<B, C>

op4

Operator<C, D>

op5

Operator<D, E>

Returns

Stream<E>

Call Signature

OperatorChain<A, B, C, D, E, F>(op1, op2, op3, op4, op5, op6): Stream<F>

Defined in: projects/libraries/streamix/src/lib/abstractions/operator.ts:291

A type representing a chain of stream operators.

Uses function overloading to provide strong type safety for a sequence of operators (up to 16). Beyond 16 operators, the recursive PipeResult type is used as a fallback so that type safety is preserved as long as TypeScript can infer the chain.

Type Parameters

A

A

B

B

C

C

D

D

E

E

F

F

Parameters

op1

Operator<T, A>

op2

Operator<A, B>

op3

Operator<B, C>

op4

Operator<C, D>

op5

Operator<D, E>

op6

Operator<E, F>

Returns

Stream<F>

Call Signature

OperatorChain<A, B, C, D, E, F, G>(op1, op2, op3, op4, op5, op6, op7): Stream<G>

Defined in: projects/libraries/streamix/src/lib/abstractions/operator.ts:299

A type representing a chain of stream operators.

Uses function overloading to provide strong type safety for a sequence of operators (up to 16). Beyond 16 operators, the recursive PipeResult type is used as a fallback so that type safety is preserved as long as TypeScript can infer the chain.

Type Parameters

A

A

B

B

C

C

D

D

E

E

F

F

G

G

Parameters

op1

Operator<T, A>

op2

Operator<A, B>

op3

Operator<B, C>

op4

Operator<C, D>

op5

Operator<D, E>

op6

Operator<E, F>

op7

Operator<F, G>

Returns

Stream<G>

Call Signature

OperatorChain<A, B, C, D, E, F, G, H>(op1, op2, op3, op4, op5, op6, op7, op8): Stream<H>

Defined in: projects/libraries/streamix/src/lib/abstractions/operator.ts:308

A type representing a chain of stream operators.

Uses function overloading to provide strong type safety for a sequence of operators (up to 16). Beyond 16 operators, the recursive PipeResult type is used as a fallback so that type safety is preserved as long as TypeScript can infer the chain.

Type Parameters

A

A

B

B

C

C

D

D

E

E

F

F

G

G

H

H

Parameters

op1

Operator<T, A>

op2

Operator<A, B>

op3

Operator<B, C>

op4

Operator<C, D>

op5

Operator<D, E>

op6

Operator<E, F>

op7

Operator<F, G>

op8

Operator<G, H>

Returns

Stream<H>

Call Signature

OperatorChain<A, B, C, D, E, F, G, H, I>(op1, op2, op3, op4, op5, op6, op7, op8, op9): Stream<I>

Defined in: projects/libraries/streamix/src/lib/abstractions/operator.ts:318

A type representing a chain of stream operators.

Uses function overloading to provide strong type safety for a sequence of operators (up to 16). Beyond 16 operators, the recursive PipeResult type is used as a fallback so that type safety is preserved as long as TypeScript can infer the chain.

Type Parameters

A

A

B

B

C

C

D

D

E

E

F

F

G

G

H

H

I

I

Parameters

op1

Operator<T, A>

op2

Operator<A, B>

op3

Operator<B, C>

op4

Operator<C, D>

op5

Operator<D, E>

op6

Operator<E, F>

op7

Operator<F, G>

op8

Operator<G, H>

op9

Operator<H, I>

Returns

Stream<I>

Call Signature

OperatorChain<A, B, C, D, E, F, G, H, I, J>(op1, op2, op3, op4, op5, op6, op7, op8, op9, op10): Stream<J>

Defined in: projects/libraries/streamix/src/lib/abstractions/operator.ts:329

A type representing a chain of stream operators.

Uses function overloading to provide strong type safety for a sequence of operators (up to 16). Beyond 16 operators, the recursive PipeResult type is used as a fallback so that type safety is preserved as long as TypeScript can infer the chain.

Type Parameters

A

A

B

B

C

C

D

D

E

E

F

F

G

G

H

H

I

I

J

J

Parameters

op1

Operator<T, A>

op2

Operator<A, B>

op3

Operator<B, C>

op4

Operator<C, D>

op5

Operator<D, E>

op6

Operator<E, F>

op7

Operator<F, G>

op8

Operator<G, H>

op9

Operator<H, I>

op10

Operator<I, J>

Returns

Stream<J>

Call Signature

OperatorChain<A, B, C, D, E, F, G, H, I, J, K>(op1, op2, op3, op4, op5, op6, op7, op8, op9, op10, op11): Stream<K>

Defined in: projects/libraries/streamix/src/lib/abstractions/operator.ts:341

A type representing a chain of stream operators.

Uses function overloading to provide strong type safety for a sequence of operators (up to 16). Beyond 16 operators, the recursive PipeResult type is used as a fallback so that type safety is preserved as long as TypeScript can infer the chain.

Type Parameters

A

A

B

B

C

C

D

D

E

E

F

F

G

G

H

H

I

I

J

J

K

K

Parameters

op1

Operator<T, A>

op2

Operator<A, B>

op3

Operator<B, C>

op4

Operator<C, D>

op5

Operator<D, E>

op6

Operator<E, F>

op7

Operator<F, G>

op8

Operator<G, H>

op9

Operator<H, I>

op10

Operator<I, J>

op11

Operator<J, K>

Returns

Stream<K>

Call Signature

OperatorChain<A, B, C, D, E, F, G, H, I, J, K, L>(op1, op2, op3, op4, op5, op6, op7, op8, op9, op10, op11, op12): Stream<L>

Defined in: projects/libraries/streamix/src/lib/abstractions/operator.ts:354

A type representing a chain of stream operators.

Uses function overloading to provide strong type safety for a sequence of operators (up to 16). Beyond 16 operators, the recursive PipeResult type is used as a fallback so that type safety is preserved as long as TypeScript can infer the chain.

Type Parameters

A

A

B

B

C

C

D

D

E

E

F

F

G

G

H

H

I

I

J

J

K

K

L

L

Parameters

op1

Operator<T, A>

op2

Operator<A, B>

op3

Operator<B, C>

op4

Operator<C, D>

op5

Operator<D, E>

op6

Operator<E, F>

op7

Operator<F, G>

op8

Operator<G, H>

op9

Operator<H, I>

op10

Operator<I, J>

op11

Operator<J, K>

op12

Operator<K, L>

Returns

Stream<L>

Call Signature

OperatorChain<A, B, C, D, E, F, G, H, I, J, K, L, M>(op1, op2, op3, op4, op5, op6, op7, op8, op9, op10, op11, op12, op13): Stream<M>

Defined in: projects/libraries/streamix/src/lib/abstractions/operator.ts:368

A type representing a chain of stream operators.

Uses function overloading to provide strong type safety for a sequence of operators (up to 16). Beyond 16 operators, the recursive PipeResult type is used as a fallback so that type safety is preserved as long as TypeScript can infer the chain.

Type Parameters

A

A

B

B

C

C

D

D

E

E

F

F

G

G

H

H

I

I

J

J

K

K

L

L

M

M

Parameters

op1

Operator<T, A>

op2

Operator<A, B>

op3

Operator<B, C>

op4

Operator<C, D>

op5

Operator<D, E>

op6

Operator<E, F>

op7

Operator<F, G>

op8

Operator<G, H>

op9

Operator<H, I>

op10

Operator<I, J>

op11

Operator<J, K>

op12

Operator<K, L>

op13

Operator<L, M>

Returns

Stream<M>

Call Signature

OperatorChain<A, B, C, D, E, F, G, H, I, J, K, L, M, N>(op1, op2, op3, op4, op5, op6, op7, op8, op9, op10, op11, op12, op13, op14): Stream<N>

Defined in: projects/libraries/streamix/src/lib/abstractions/operator.ts:383

A type representing a chain of stream operators.

Uses function overloading to provide strong type safety for a sequence of operators (up to 16). Beyond 16 operators, the recursive PipeResult type is used as a fallback so that type safety is preserved as long as TypeScript can infer the chain.

Type Parameters

A

A

B

B

C

C

D

D

E

E

F

F

G

G

H

H

I

I

J

J

K

K

L

L

M

M

N

N

Parameters

op1

Operator<T, A>

op2

Operator<A, B>

op3

Operator<B, C>

op4

Operator<C, D>

op5

Operator<D, E>

op6

Operator<E, F>

op7

Operator<F, G>

op8

Operator<G, H>

op9

Operator<H, I>

op10

Operator<I, J>

op11

Operator<J, K>

op12

Operator<K, L>

op13

Operator<L, M>

op14

Operator<M, N>

Returns

Stream<N>

Call Signature

OperatorChain<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O>(op1, op2, op3, op4, op5, op6, op7, op8, op9, op10, op11, op12, op13, op14, op15): Stream<O>

Defined in: projects/libraries/streamix/src/lib/abstractions/operator.ts:399

A type representing a chain of stream operators.

Uses function overloading to provide strong type safety for a sequence of operators (up to 16). Beyond 16 operators, the recursive PipeResult type is used as a fallback so that type safety is preserved as long as TypeScript can infer the chain.

Type Parameters

A

A

B

B

C

C

D

D

E

E

F

F

G

G

H

H

I

I

J

J

K

K

L

L

M

M

N

N

O

O

Parameters

op1

Operator<T, A>

op2

Operator<A, B>

op3

Operator<B, C>

op4

Operator<C, D>

op5

Operator<D, E>

op6

Operator<E, F>

op7

Operator<F, G>

op8

Operator<G, H>

op9

Operator<H, I>

op10

Operator<I, J>

op11

Operator<J, K>

op12

Operator<K, L>

op13

Operator<L, M>

op14

Operator<M, N>

op15

Operator<N, O>

Returns

Stream<O>

Call Signature

OperatorChain<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P>(op1, op2, op3, op4, op5, op6, op7, op8, op9, op10, op11, op12, op13, op14, op15, op16): Stream<P>

Defined in: projects/libraries/streamix/src/lib/abstractions/operator.ts:416

A type representing a chain of stream operators.

Uses function overloading to provide strong type safety for a sequence of operators (up to 16). Beyond 16 operators, the recursive PipeResult type is used as a fallback so that type safety is preserved as long as TypeScript can infer the chain.

Type Parameters

A

A

B

B

C

C

D

D

E

E

F

F

G

G

H

H

I

I

J

J

K

K

L

L

M

M

N

N

O

O

P

P

Parameters

op1

Operator<T, A>

op2

Operator<A, B>

op3

Operator<B, C>

op4

Operator<C, D>

op5

Operator<D, E>

op6

Operator<E, F>

op7

Operator<F, G>

op8

Operator<G, H>

op9

Operator<H, I>

op10

Operator<I, J>

op11

Operator<J, K>

op12

Operator<K, L>

op13

Operator<L, M>

op14

Operator<M, N>

op15

Operator<N, O>

op16

Operator<O, P>

Returns

Stream<P>

Call Signature

OperatorChain<Ops>(...operators): PipeResult<T, Ops>

Defined in: projects/libraries/streamix/src/lib/abstractions/operator.ts:440

Fallback for chains longer than 16 operators. Uses the recursive PipeResult type to preserve type safety as long as TypeScript can resolve the conditional type.

Type Parameters

Ops

Ops extends Operator<any, any>[]

Parameters

operators

...Ops & ValidateChain<T, Ops>

Returns

PipeResult<T, Ops>

Released under the GNU AGPL v3 or later.