Function flow

  • Performs a series of function calls on a value, passing the result of each function call to the next.

    Type Parameters

    • A
    • R

    Parameters

    • a: A
    • fn1: ((x: A) => R)
        • (x): R
        • Parameters

          Returns R

    Returns R

    const add = (a: number, b: number) => a + b;
    const byTwo = (x: number) => x * 2;
    const result = flow(1, add, byTwo);
  • Type Parameters

    • A
    • B
    • R

    Parameters

    • a: A
    • fn1: ((x: A) => B)
        • (x): B
        • Parameters

          Returns B

    • fn2: ((x: B) => R)
        • (x): R
        • Parameters

          Returns R

    Returns R

  • Type Parameters

    • A
    • B
    • C
    • R

    Parameters

    • a: A
    • fn1: ((x: A) => B)
        • (x): B
        • Parameters

          Returns B

    • fn2: ((x: B) => C)
        • (x): C
        • Parameters

          Returns C

    • fn3: ((x: C) => R)
        • (x): R
        • Parameters

          Returns R

    Returns R

  • Type Parameters

    • A
    • B
    • C
    • D
    • R

    Parameters

    • a: A
    • fn1: ((x: A) => B)
        • (x): B
        • Parameters

          Returns B

    • fn2: ((x: B) => C)
        • (x): C
        • Parameters

          Returns C

    • fn3: ((x: C) => D)
        • (x): D
        • Parameters

          Returns D

    • fn4: ((x: D) => R)
        • (x): R
        • Parameters

          Returns R

    Returns R

  • Type Parameters

    • A
    • B
    • C
    • D
    • E
    • R

    Parameters

    • a: A
    • fn1: ((x: A) => B)
        • (x): B
        • Parameters

          Returns B

    • fn2: ((x: B) => C)
        • (x): C
        • Parameters

          Returns C

    • fn3: ((x: C) => D)
        • (x): D
        • Parameters

          Returns D

    • fn4: ((x: D) => E)
        • (x): E
        • Parameters

          Returns E

    • fn5: ((x: E) => R)
        • (x): R
        • Parameters

          Returns R

    Returns R

  • Type Parameters

    • A
    • B
    • C
    • D
    • E
    • F
    • R

    Parameters

    • a: A
    • fn1: ((x: A) => B)
        • (x): B
        • Parameters

          Returns B

    • fn2: ((x: B) => C)
        • (x): C
        • Parameters

          Returns C

    • fn3: ((x: C) => D)
        • (x): D
        • Parameters

          Returns D

    • fn4: ((x: D) => E)
        • (x): E
        • Parameters

          Returns E

    • fn5: ((x: E) => F)
        • (x): F
        • Parameters

          Returns F

    • fn6: ((x: F) => R)
        • (x): R
        • Parameters

          Returns R

    Returns R

  • Type Parameters

    • A
    • B
    • C
    • D
    • E
    • F
    • G
    • R

    Parameters

    • a: A
    • fn1: ((x: A) => B)
        • (x): B
        • Parameters

          Returns B

    • fn2: ((x: B) => C)
        • (x): C
        • Parameters

          Returns C

    • fn3: ((x: C) => D)
        • (x): D
        • Parameters

          Returns D

    • fn4: ((x: D) => E)
        • (x): E
        • Parameters

          Returns E

    • fn5: ((x: E) => F)
        • (x): F
        • Parameters

          Returns F

    • fn6: ((x: F) => G)
        • (x): G
        • Parameters

          Returns G

    • fn7: ((x: G) => R)
        • (x): R
        • Parameters

          Returns R

    Returns R

  • Type Parameters

    • A
    • B
    • C
    • D
    • E
    • F
    • G
    • H
    • R

    Parameters

    • a: A
    • fn1: ((x: A) => B)
        • (x): B
        • Parameters

          Returns B

    • fn2: ((x: B) => C)
        • (x): C
        • Parameters

          Returns C

    • fn3: ((x: C) => D)
        • (x): D
        • Parameters

          Returns D

    • fn4: ((x: D) => E)
        • (x): E
        • Parameters

          Returns E

    • fn5: ((x: E) => F)
        • (x): F
        • Parameters

          Returns F

    • fn6: ((x: F) => G)
        • (x): G
        • Parameters

          Returns G

    • fn7: ((x: G) => H)
        • (x): H
        • Parameters

          Returns H

    • fn8: ((x: H) => R)
        • (x): R
        • Parameters

          Returns R

    Returns R

  • Type Parameters

    • A
    • B
    • C
    • D
    • E
    • F
    • G
    • H
    • I
    • R

    Parameters

    • a: A
    • fn1: ((x: A) => B)
        • (x): B
        • Parameters

          Returns B

    • fn2: ((x: B) => C)
        • (x): C
        • Parameters

          Returns C

    • fn3: ((x: C) => D)
        • (x): D
        • Parameters

          Returns D

    • fn4: ((x: D) => E)
        • (x): E
        • Parameters

          Returns E

    • fn5: ((x: E) => F)
        • (x): F
        • Parameters

          Returns F

    • fn6: ((x: F) => G)
        • (x): G
        • Parameters

          Returns G

    • fn7: ((x: G) => H)
        • (x): H
        • Parameters

          Returns H

    • fn8: ((x: H) => I)
        • (x): I
        • Parameters

          Returns I

    • fn9: ((x: I) => R)
        • (x): R
        • Parameters

          Returns R

    Returns R