Skip to main content
Deno 2 is finally here 🎉️
Learn more
Module

x/evt/lib/util/compose.ts>compose

💧EventEmitter's typesafe replacement
Go to Latest
function compose
import { compose } from "https://deno.land/x/evt@v2.4.13/lib/util/compose.ts";

Parameters

op1: Operator.fλ<A, B>
op2: Operator.fλ<B, C>

Returns

Operator.fλ.Stateless<A, C>

Type Parameters

A
B
C extends B

Parameters

op1: Operator.fλ<A, B>
op2: (data: B) => data is C

Returns

Operator.fλ.Stateless<A, C>

Parameters

op1: Operator.fλ<A, B>
op2: (data: B) => boolean

Returns

Operator.fλ.Stateless<A, B>

Type Parameters

A
B extends A
C

Parameters

op1: (data: A) => data is B
op2: Operator.fλ<B, C>

Returns

Operator.fλ.Stateless<A, B>

Parameters

op1: (data: A) => boolean
op2: Operator.fλ<A, B>

Returns

Operator.fλ.Stateless<A, B>

Type Parameters

A
B extends A
C extends B

Parameters

op1: (data: A) => data is B
op2: (data: B) => data is C

Returns

Operator.fλ.Stateless<A, C>

Type Parameters

A
B extends A

Parameters

op1: (data: A) => data is B
op2: (data: B) => boolean

Returns

Operator.fλ.Stateless<A, B>

Type Parameters

A
B extends A

Parameters

op1: (data: A) => boolean
op2: (data: A) => data is B

Returns

Operator.fλ.Stateless<A, B>

Parameters

op1: (data: A) => boolean
op2: (data: A) => boolean

Returns

Operator.fλ.Stateless<A, A>

Parameters

op1: Operator.fλ<A, B>
op2: Operator.fλ<B, C>
op3: Operator.fλ<C, D>

Returns

Operator.fλ.Stateless<A, D>

Parameters

op1: Operator.fλ<A, B>
op2: Operator.fλ<B, C>
op3: Operator.fλ<C, D>
op4: Operator.fλ<D, E>

Returns

Operator.fλ.Stateless<A, E>

Parameters

op1: Operator.fλ<A, B>
op2: Operator.fλ<B, C>
op3: Operator.fλ<C, D>
op4: Operator.fλ<D, E>

Returns

Operator.fλ.Stateless<A, E>

Parameters

op1: Operator.fλ<A, B>
op2: Operator.fλ<B, C>
op3: Operator.fλ<C, D>
op4: Operator.fλ<D, E>
op5: Operator.fλ<E, F>

Returns

Operator.fλ.Stateless<A, F>

Returns

Operator.fλ.Stateless<A, C>

Parameters

op1: Operator<A, B>
op2: Operator<B, C>
op3: Operator<C, D>

Returns

Operator.fλ.Stateless<A, D>

Parameters

op1: Operator<A, B>
op2: Operator<B, C>
op3: Operator<C, D>
op4: Operator<D, E>

Returns

Operator.fλ.Stateless<A, E>

Parameters

op1: Operator<A, B>
op2: Operator<B, C>
op3: Operator<C, D>
op4: Operator<D, E>
op5: Operator<E, F>

Returns

Operator.fλ.Stateless<A, F>

Parameters

...ops: [Operator<T, any>, ...Operator<any, any>[]]

Returns

Operator.fλ.Stateless<T, any>