Function: pipe()

Applies a sequence of functions to a value, from left to right.

This utility enables function composition in a left-to-right manner. It supports up to 26 chained functions from A through Z.

Type Param

The initial input value type.

Type Param

Intermediate and final function return types.

Param

The initial input value.

Param

Additional unary functions composing of the previous result.

Example

import { Result } from '@praha/byethrow';

const result = Result.pipe(
  2,
  x => x + 1,
  x => x * 3,
  x => `Result: ${x}`
);
// Result: 9

Call Signature

pipe<A>(a): A

Defined in: functions/pipe.ts:34

Type Parameters

A

A

Parameters

a

A

Returns

A

Call Signature

pipe<A, B>(a, ab): B

Defined in: functions/pipe.ts:35

Type Parameters

A

A

B

B = never

Parameters

a

A

ab

(a) => B

Returns

B

Call Signature

pipe<A, B, C>(a, ab, bc): C

Defined in: functions/pipe.ts:42

Type Parameters

A

A

B

B = never

C

C = never

Parameters

a

A

ab

(a) => B

bc

(b) => C

Returns

C

Call Signature

pipe<A, B, C, D>(a, ab, bc, cd): D

Defined in: functions/pipe.ts:51

Type Parameters

A

A

B

B = never

C

C = never

D

D = never

Parameters

a

A

ab

(a) => B

bc

(b) => C

cd

(c) => D

Returns

D

Call Signature

pipe<A, B, C, D, E>(a, ab, bc, cd, de): E

Defined in: functions/pipe.ts:62

Type Parameters

A

A

B

B = never

C

C = never

D

D = never

E

E = never

Parameters

a

A

ab

(a) => B

bc

(b) => C

cd

(c) => D

de

(d) => E

Returns

E

Call Signature

pipe<A, B, C, D, E, F>(a, ab, bc, cd, de, ef): F

Defined in: functions/pipe.ts:75

Type Parameters

A

A

B

B = never

C

C = never

D

D = never

E

E = never

F

F = never

Parameters

a

A

ab

(a) => B

bc

(b) => C

cd

(c) => D

de

(d) => E

ef

(e) => F

Returns

F

Call Signature

pipe<A, B, C, D, E, F, G>(a, ab, bc, cd, de, ef, fg): G

Defined in: functions/pipe.ts:90

Type Parameters

A

A

B

B = never

C

C = never

D

D = never

E

E = never

F

F = never

G

G = never

Parameters

a

A

ab

(a) => B

bc

(b) => C

cd

(c) => D

de

(d) => E

ef

(e) => F

fg

(f) => G

Returns

G

Call Signature

pipe<A, B, C, D, E, F, G, H>(a, ab, bc, cd, de, ef, fg, gh): H

Defined in: functions/pipe.ts:107

Type Parameters

A

A

B

B = never

C

C = never

D

D = never

E

E = never

F

F = never

G

G = never

H

H = never

Parameters

a

A

ab

(a) => B

bc

(b) => C

cd

(c) => D

de

(d) => E

ef

(e) => F

fg

(f) => G

gh

(g) => H

Returns

H

Call Signature

pipe<A, B, C, D, E, F, G, H, I>(a, ab, bc, cd, de, ef, fg, gh, hi): I

Defined in: functions/pipe.ts:126

Type Parameters

A

A

B

B = never

C

C = never

D

D = never

E

E = never

F

F = never

G

G = never

H

H = never

I

I = never

Parameters

a

A

ab

(a) => B

bc

(b) => C

cd

(c) => D

de

(d) => E

ef

(e) => F

fg

(f) => G

gh

(g) => H

hi

(h) => I

Returns

I

Call Signature

pipe<A, B, C, D, E, F, G, H, I, J>(a, ab, bc, cd, de, ef, fg, gh, hi, ij): J

Defined in: functions/pipe.ts:147

Type Parameters

A

A

B

B = never

C

C = never

D

D = never

E

E = never

F

F = never

G

G = never

H

H = never

I

I = never

J

J = never

Parameters

a

A

ab

(a) => B

bc

(b) => C

cd

(c) => D

de

(d) => E

ef

(e) => F

fg

(f) => G

gh

(g) => H

hi

(h) => I

ij

(i) => J

Returns

J

Call Signature

pipe<A, B, C, D, E, F, G, H, I, J, K>(a, ab, bc, cd, de, ef, fg, gh, hi, ij, jk): K

Defined in: functions/pipe.ts:170

Type Parameters

A

A

B

B = never

C

C = never

D

D = never

E

E = never

F

F = never

G

G = never

H

H = never

I

I = never

J

J = never

K

K = never

Parameters

a

A

ab

(a) => B

bc

(b) => C

cd

(c) => D

de

(d) => E

ef

(e) => F

fg

(f) => G

gh

(g) => H

hi

(h) => I

ij

(i) => J

jk

(j) => K

Returns

K

Call Signature

pipe<A, B, C, D, E, F, G, H, I, J, K, L>(a, ab, bc, cd, de, ef, fg, gh, hi, ij, jk, kl): L

Defined in: functions/pipe.ts:195

Type Parameters

A

A

B

B = never

C

C = never

D

D = never

E

E = never

F

F = never

G

G = never

H

H = never

I

I = never

J

J = never

K

K = never

L

L = never

Parameters

a

A

ab

(a) => B

bc

(b) => C

cd

(c) => D

de

(d) => E

ef

(e) => F

fg

(f) => G

gh

(g) => H

hi

(h) => I

ij

(i) => J

jk

(j) => K

kl

(k) => L

Returns

L

Call Signature

pipe<A, B, C, D, E, F, G, H, I, J, K, L, M>(a, ab, bc, cd, de, ef, fg, gh, hi, ij, jk, kl, lm): M

Defined in: functions/pipe.ts:222

Type Parameters

A

A

B

B = never

C

C = never

D

D = never

E

E = never

F

F = never

G

G = never

H

H = never

I

I = never

J

J = never

K

K = never

L

L = never

M

M = never

Parameters

a

A

ab

(a) => B

bc

(b) => C

cd

(c) => D

de

(d) => E

ef

(e) => F

fg

(f) => G

gh

(g) => H

hi

(h) => I

ij

(i) => J

jk

(j) => K

kl

(k) => L

lm

(l) => M

Returns

M

Call Signature

pipe<A, B, C, D, E, F, G, H, I, J, K, L, M, N>(a, ab, bc, cd, de, ef, fg, gh, hi, ij, jk, kl, lm, mn): N

Defined in: functions/pipe.ts:251

Type Parameters

A

A

B

B = never

C

C = never

D

D = never

E

E = never

F

F = never

G

G = never

H

H = never

I

I = never

J

J = never

K

K = never

L

L = never

M

M = never

N

N = never

Parameters

a

A

ab

(a) => B

bc

(b) => C

cd

(c) => D

de

(d) => E

ef

(e) => F

fg

(f) => G

gh

(g) => H

hi

(h) => I

ij

(i) => J

jk

(j) => K

kl

(k) => L

lm

(l) => M

mn

(m) => N

Returns

N

Call Signature

pipe<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O>(a, ab, bc, cd, de, ef, fg, gh, hi, ij, jk, kl, lm, mn, no): O

Defined in: functions/pipe.ts:282

Type Parameters

A

A

B

B = never

C

C = never

D

D = never

E

E = never

F

F = never

G

G = never

H

H = never

I

I = never

J

J = never

K

K = never

L

L = never

M

M = never

N

N = never

O

O = never

Parameters

a

A

ab

(a) => B

bc

(b) => C

cd

(c) => D

de

(d) => E

ef

(e) => F

fg

(f) => G

gh

(g) => H

hi

(h) => I

ij

(i) => J

jk

(j) => K

kl

(k) => L

lm

(l) => M

mn

(m) => N

no

(n) => O

Returns

O

Call Signature

pipe<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P>(a, ab, bc, cd, de, ef, fg, gh, hi, ij, jk, kl, lm, mn, no, op): P

Defined in: functions/pipe.ts:315

Type Parameters

A

A

B

B = never

C

C = never

D

D = never

E

E = never

F

F = never

G

G = never

H

H = never

I

I = never

J

J = never

K

K = never

L

L = never

M

M = never

N

N = never

O

O = never

P

P = never

Parameters

a

A

ab

(a) => B

bc

(b) => C

cd

(c) => D

de

(d) => E

ef

(e) => F

fg

(f) => G

gh

(g) => H

hi

(h) => I

ij

(i) => J

jk

(j) => K

kl

(k) => L

lm

(l) => M

mn

(m) => N

no

(n) => O

op

(o) => P

Returns

P

Call Signature

pipe<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q>(a, ab, bc, cd, de, ef, fg, gh, hi, ij, jk, kl, lm, mn, no, op, pq): Q

Defined in: functions/pipe.ts:350

Type Parameters

A

A

B

B = never

C

C = never

D

D = never

E

E = never

F

F = never

G

G = never

H

H = never

I

I = never

J

J = never

K

K = never

L

L = never

M

M = never

N

N = never

O

O = never

P

P = never

Q

Q = never

Parameters

a

A

ab

(a) => B

bc

(b) => C

cd

(c) => D

de

(d) => E

ef

(e) => F

fg

(f) => G

gh

(g) => H

hi

(h) => I

ij

(i) => J

jk

(j) => K

kl

(k) => L

lm

(l) => M

mn

(m) => N

no

(n) => O

op

(o) => P

pq

(p) => Q

Returns

Q

Call Signature

pipe<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R>(a, ab, bc, cd, de, ef, fg, gh, hi, ij, jk, kl, lm, mn, no, op, pq, qr): R

Defined in: functions/pipe.ts:387

Type Parameters

A

A

B

B = never

C

C = never

D

D = never

E

E = never

F

F = never

G

G = never

H

H = never

I

I = never

J

J = never

K

K = never

L

L = never

M

M = never

N

N = never

O

O = never

P

P = never

Q

Q = never

R

R = never

Parameters

a

A

ab

(a) => B

bc

(b) => C

cd

(c) => D

de

(d) => E

ef

(e) => F

fg

(f) => G

gh

(g) => H

hi

(h) => I

ij

(i) => J

jk

(j) => K

kl

(k) => L

lm

(l) => M

mn

(m) => N

no

(n) => O

op

(o) => P

pq

(p) => Q

qr

(q) => R

Returns

R

Call Signature

pipe<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S>(a, ab, bc, cd, de, ef, fg, gh, hi, ij, jk, kl, lm, mn, no, op, pq, qr, rs): S

Defined in: functions/pipe.ts:426

Type Parameters

A

A

B

B = never

C

C = never

D

D = never

E

E = never

F

F = never

G

G = never

H

H = never

I

I = never

J

J = never

K

K = never

L

L = never

M

M = never

N

N = never

O

O = never

P

P = never

Q

Q = never

R

R = never

S

S = never

Parameters

a

A

ab

(a) => B

bc

(b) => C

cd

(c) => D

de

(d) => E

ef

(e) => F

fg

(f) => G

gh

(g) => H

hi

(h) => I

ij

(i) => J

jk

(j) => K

kl

(k) => L

lm

(l) => M

mn

(m) => N

no

(n) => O

op

(o) => P

pq

(p) => Q

qr

(q) => R

rs

(r) => S

Returns

S

Call Signature

pipe<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T>(a, ab, bc, cd, de, ef, fg, gh, hi, ij, jk, kl, lm, mn, no, op, pq, qr, rs, st): T

Defined in: functions/pipe.ts:467

Type Parameters

A

A

B

B = never

C

C = never

D

D = never

E

E = never

F

F = never

G

G = never

H

H = never

I

I = never

J

J = never

K

K = never

L

L = never

M

M = never

N

N = never

O

O = never

P

P = never

Q

Q = never

R

R = never

S

S = never

T

T = never

Parameters

a

A

ab

(a) => B

bc

(b) => C

cd

(c) => D

de

(d) => E

ef

(e) => F

fg

(f) => G

gh

(g) => H

hi

(h) => I

ij

(i) => J

jk

(j) => K

kl

(k) => L

lm

(l) => M

mn

(m) => N

no

(n) => O

op

(o) => P

pq

(p) => Q

qr

(q) => R

rs

(r) => S

st

(s) => T

Returns

T

Call Signature

pipe<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U>(a, ab, bc, cd, de, ef, fg, gh, hi, ij, jk, kl, lm, mn, no, op, pq, qr, rs, st, tu): U

Defined in: functions/pipe.ts:510

Type Parameters

A

A

B

B = never

C

C = never

D

D = never

E

E = never

F

F = never

G

G = never

H

H = never

I

I = never

J

J = never

K

K = never

L

L = never

M

M = never

N

N = never

O

O = never

P

P = never

Q

Q = never

R

R = never

S

S = never

T

T = never

U

U = never

Parameters

a

A

ab

(a) => B

bc

(b) => C

cd

(c) => D

de

(d) => E

ef

(e) => F

fg

(f) => G

gh

(g) => H

hi

(h) => I

ij

(i) => J

jk

(j) => K

kl

(k) => L

lm

(l) => M

mn

(m) => N

no

(n) => O

op

(o) => P

pq

(p) => Q

qr

(q) => R

rs

(r) => S

st

(s) => T

tu

(t) => U

Returns

U

Call Signature

pipe<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V>(a, ab, bc, cd, de, ef, fg, gh, hi, ij, jk, kl, lm, mn, no, op, pq, qr, rs, st, tu, uv): V

Defined in: functions/pipe.ts:555

Type Parameters

A

A

B

B = never

C

C = never

D

D = never

E

E = never

F

F = never

G

G = never

H

H = never

I

I = never

J

J = never

K

K = never

L

L = never

M

M = never

N

N = never

O

O = never

P

P = never

Q

Q = never

R

R = never

S

S = never

T

T = never

U

U = never

V

V = never

Parameters

a

A

ab

(a) => B

bc

(b) => C

cd

(c) => D

de

(d) => E

ef

(e) => F

fg

(f) => G

gh

(g) => H

hi

(h) => I

ij

(i) => J

jk

(j) => K

kl

(k) => L

lm

(l) => M

mn

(m) => N

no

(n) => O

op

(o) => P

pq

(p) => Q

qr

(q) => R

rs

(r) => S

st

(s) => T

tu

(t) => U

uv

(u) => V

Returns

V

Call Signature

pipe<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W>(a, ab, bc, cd, de, ef, fg, gh, hi, ij, jk, kl, lm, mn, no, op, pq, qr, rs, st, tu, uv, vw): W

Defined in: functions/pipe.ts:602

Type Parameters

A

A

B

B = never

C

C = never

D

D = never

E

E = never

F

F = never

G

G = never

H

H = never

I

I = never

J

J = never

K

K = never

L

L = never

M

M = never

N

N = never

O

O = never

P

P = never

Q

Q = never

R

R = never

S

S = never

T

T = never

U

U = never

V

V = never

W

W = never

Parameters

a

A

ab

(a) => B

bc

(b) => C

cd

(c) => D

de

(d) => E

ef

(e) => F

fg

(f) => G

gh

(g) => H

hi

(h) => I

ij

(i) => J

jk

(j) => K

kl

(k) => L

lm

(l) => M

mn

(m) => N

no

(n) => O

op

(o) => P

pq

(p) => Q

qr

(q) => R

rs

(r) => S

st

(s) => T

tu

(t) => U

uv

(u) => V

vw

(v) => W

Returns

W

Call Signature

pipe<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X>(a, ab, bc, cd, de, ef, fg, gh, hi, ij, jk, kl, lm, mn, no, op, pq, qr, rs, st, tu, uv, vw, wx): X

Defined in: functions/pipe.ts:651

Type Parameters

A

A

B

B = never

C

C = never

D

D = never

E

E = never

F

F = never

G

G = never

H

H = never

I

I = never

J

J = never

K

K = never

L

L = never

M

M = never

N

N = never

O

O = never

P

P = never

Q

Q = never

R

R = never

S

S = never

T

T = never

U

U = never

V

V = never

W

W = never

X

X = never

Parameters

a

A

ab

(a) => B

bc

(b) => C

cd

(c) => D

de

(d) => E

ef

(e) => F

fg

(f) => G

gh

(g) => H

hi

(h) => I

ij

(i) => J

jk

(j) => K

kl

(k) => L

lm

(l) => M

mn

(m) => N

no

(n) => O

op

(o) => P

pq

(p) => Q

qr

(q) => R

rs

(r) => S

st

(s) => T

tu

(t) => U

uv

(u) => V

vw

(v) => W

wx

(w) => X

Returns

X

Call Signature

pipe<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y>(a, ab, bc, cd, de, ef, fg, gh, hi, ij, jk, kl, lm, mn, no, op, pq, qr, rs, st, tu, uv, vw, wx, xy): Y

Defined in: functions/pipe.ts:702

Type Parameters

A

A

B

B = never

C

C = never

D

D = never

E

E = never

F

F = never

G

G = never

H

H = never

I

I = never

J

J = never

K

K = never

L

L = never

M

M = never

N

N = never

O

O = never

P

P = never

Q

Q = never

R

R = never

S

S = never

T

T = never

U

U = never

V

V = never

W

W = never

X

X = never

Y

Y = never

Parameters

a

A

ab

(a) => B

bc

(b) => C

cd

(c) => D

de

(d) => E

ef

(e) => F

fg

(f) => G

gh

(g) => H

hi

(h) => I

ij

(i) => J

jk

(j) => K

kl

(k) => L

lm

(l) => M

mn

(m) => N

no

(n) => O

op

(o) => P

pq

(p) => Q

qr

(q) => R

rs

(r) => S

st

(s) => T

tu

(t) => U

uv

(u) => V

vw

(v) => W

wx

(w) => X

xy

(x) => Y

Returns

Y

Call Signature

pipe<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z>(a, ab, bc, cd, de, ef, fg, gh, hi, ij, jk, kl, lm, mn, no, op, pq, qr, rs, st, tu, uv, vw, wx, xy, yz): Z

Defined in: functions/pipe.ts:755

Type Parameters

A

A

B

B = never

C

C = never

D

D = never

E

E = never

F

F = never

G

G = never

H

H = never

I

I = never

J

J = never

K

K = never

L

L = never

M

M = never

N

N = never

O

O = never

P

P = never

Q

Q = never

R

R = never

S

S = never

T

T = never

U

U = never

V

V = never

W

W = never

X

X = never

Y

Y = never

Z

Z = never

Parameters

a

A

ab

(a) => B

bc

(b) => C

cd

(c) => D

de

(d) => E

ef

(e) => F

fg

(f) => G

gh

(g) => H

hi

(h) => I

ij

(i) => J

jk

(j) => K

kl

(k) => L

lm

(l) => M

mn

(m) => N

no

(n) => O

op

(o) => P

pq

(p) => Q

qr

(q) => R

rs

(r) => S

st

(s) => T

tu

(t) => U

uv

(u) => V

vw

(v) => W

wx

(w) => X

xy

(x) => Y

yz

(y) => Z

Returns

Z