• Creates a function that returns the result of invoking the given functions with the this binding of the created function, where each successive invocation is supplied the return value of the previous.

    Differences from lodash:

    • does not accept an arrays of functions
    • all functions will be given only 1 argument (in lodash the first one called can take multiple)
    • might not construct a new function when it is not needed

    Contribution to minified bundle size, when it is the only function imported:

    • Lodash: 5,695 bytes
    • Micro-dash: 111 bytes

    Type Parameters

    • R1

    • R2

    Parameters

    • f1: (() => R1)
        • (): R1
        • Returns R1

    • f2: ((a) => R2)
        • (a): R2
        • Parameters

          • a: R1

          Returns R2

    Returns (() => R2)

      • (): R2
      • Returns R2

  • Type Parameters

    • R1

    • R2

    • R3

    Parameters

    • f1: (() => R1)
        • (): R1
        • Returns R1

    • f2: ((a) => R2)
        • (a): R2
        • Parameters

          • a: R1

          Returns R2

    • f3: ((a) => R3)
        • (a): R3
        • Parameters

          • a: R2

          Returns R3

    Returns (() => R3)

      • (): R3
      • Returns R3

  • Type Parameters

    • R1

    • R2

    • R3

    • R4

    Parameters

    • f1: (() => R1)
        • (): R1
        • Returns R1

    • f2: ((a) => R2)
        • (a): R2
        • Parameters

          • a: R1

          Returns R2

    • f3: ((a) => R3)
        • (a): R3
        • Parameters

          • a: R2

          Returns R3

    • f4: ((a) => R4)
        • (a): R4
        • Parameters

          • a: R3

          Returns R4

    Returns (() => R4)

      • (): R4
      • Returns R4

  • Type Parameters

    • R1

    • R2

    • R3

    • R4

    • R5

    Parameters

    • f1: (() => R1)
        • (): R1
        • Returns R1

    • f2: ((a) => R2)
        • (a): R2
        • Parameters

          • a: R1

          Returns R2

    • f3: ((a) => R3)
        • (a): R3
        • Parameters

          • a: R2

          Returns R3

    • f4: ((a) => R4)
        • (a): R4
        • Parameters

          • a: R3

          Returns R4

    • f5: ((a) => R5)
        • (a): R5
        • Parameters

          • a: R4

          Returns R5

    Returns (() => R5)

      • (): R5
      • Returns R5

  • Type Parameters

    • R1

    • R2

    • R3

    • R4

    • R5

    • R6

    Parameters

    • f1: (() => R1)
        • (): R1
        • Returns R1

    • f2: ((a) => R2)
        • (a): R2
        • Parameters

          • a: R1

          Returns R2

    • f3: ((a) => R3)
        • (a): R3
        • Parameters

          • a: R2

          Returns R3

    • f4: ((a) => R4)
        • (a): R4
        • Parameters

          • a: R3

          Returns R4

    • f5: ((a) => R5)
        • (a): R5
        • Parameters

          • a: R4

          Returns R5

    • f6: ((a) => R6)
        • (a): R6
        • Parameters

          • a: R5

          Returns R6

    Returns (() => R6)

      • (): R6
      • Returns R6

  • Type Parameters

    • R1

    • R2

    • R3

    • R4

    • R5

    • R6

    • R7

    Parameters

    • f1: (() => R1)
        • (): R1
        • Returns R1

    • f2: ((a) => R2)
        • (a): R2
        • Parameters

          • a: R1

          Returns R2

    • f3: ((a) => R3)
        • (a): R3
        • Parameters

          • a: R2

          Returns R3

    • f4: ((a) => R4)
        • (a): R4
        • Parameters

          • a: R3

          Returns R4

    • f5: ((a) => R5)
        • (a): R5
        • Parameters

          • a: R4

          Returns R5

    • f6: ((a) => R6)
        • (a): R6
        • Parameters

          • a: R5

          Returns R6

    • f7: ((a) => R7)
        • (a): R7
        • Parameters

          • a: R6

          Returns R7

    Returns (() => R7)

      • (): R7
      • Returns R7

  • Type Parameters

    • A1

    • R1

    • R2

    Parameters

    • f1: ((a1) => R1)
        • (a1): R1
        • Parameters

          • a1: A1

          Returns R1

    • f2: ((a) => R2)
        • (a): R2
        • Parameters

          • a: R1

          Returns R2

    Returns ((a1) => R2)

      • (a1): R2
      • Parameters

        • a1: A1

        Returns R2

  • Type Parameters

    • A1

    • R1

    • R2

    • R3

    Parameters

    • f1: ((a1) => R1)
        • (a1): R1
        • Parameters

          • a1: A1

          Returns R1

    • f2: ((a) => R2)
        • (a): R2
        • Parameters

          • a: R1

          Returns R2

    • f3: ((a) => R3)
        • (a): R3
        • Parameters

          • a: R2

          Returns R3

    Returns ((a1) => R3)

      • (a1): R3
      • Parameters

        • a1: A1

        Returns R3

  • Type Parameters

    • A1

    • R1

    • R2

    • R3

    • R4

    Parameters

    • f1: ((a1) => R1)
        • (a1): R1
        • Parameters

          • a1: A1

          Returns R1

    • f2: ((a) => R2)
        • (a): R2
        • Parameters

          • a: R1

          Returns R2

    • f3: ((a) => R3)
        • (a): R3
        • Parameters

          • a: R2

          Returns R3

    • f4: ((a) => R4)
        • (a): R4
        • Parameters

          • a: R3

          Returns R4

    Returns ((a1) => R4)

      • (a1): R4
      • Parameters

        • a1: A1

        Returns R4

  • Type Parameters

    • A1

    • R1

    • R2

    • R3

    • R4

    • R5

    Parameters

    • f1: ((a1) => R1)
        • (a1): R1
        • Parameters

          • a1: A1

          Returns R1

    • f2: ((a) => R2)
        • (a): R2
        • Parameters

          • a: R1

          Returns R2

    • f3: ((a) => R3)
        • (a): R3
        • Parameters

          • a: R2

          Returns R3

    • f4: ((a) => R4)
        • (a): R4
        • Parameters

          • a: R3

          Returns R4

    • f5: ((a) => R5)
        • (a): R5
        • Parameters

          • a: R4

          Returns R5

    Returns ((a1) => R5)

      • (a1): R5
      • Parameters

        • a1: A1

        Returns R5

  • Type Parameters

    • A1

    • R1

    • R2

    • R3

    • R4

    • R5

    • R6

    Parameters

    • f1: ((a1) => R1)
        • (a1): R1
        • Parameters

          • a1: A1

          Returns R1

    • f2: ((a) => R2)
        • (a): R2
        • Parameters

          • a: R1

          Returns R2

    • f3: ((a) => R3)
        • (a): R3
        • Parameters

          • a: R2

          Returns R3

    • f4: ((a) => R4)
        • (a): R4
        • Parameters

          • a: R3

          Returns R4

    • f5: ((a) => R5)
        • (a): R5
        • Parameters

          • a: R4

          Returns R5

    • f6: ((a) => R6)
        • (a): R6
        • Parameters

          • a: R5

          Returns R6

    Returns ((a1) => R6)

      • (a1): R6
      • Parameters

        • a1: A1

        Returns R6

  • Type Parameters

    • A1

    • R1

    • R2

    • R3

    • R4

    • R5

    • R6

    • R7

    Parameters

    • f1: ((a1) => R1)
        • (a1): R1
        • Parameters

          • a1: A1

          Returns R1

    • f2: ((a) => R2)
        • (a): R2
        • Parameters

          • a: R1

          Returns R2

    • f3: ((a) => R3)
        • (a): R3
        • Parameters

          • a: R2

          Returns R3

    • f4: ((a) => R4)
        • (a): R4
        • Parameters

          • a: R3

          Returns R4

    • f5: ((a) => R5)
        • (a): R5
        • Parameters

          • a: R4

          Returns R5

    • f6: ((a) => R6)
        • (a): R6
        • Parameters

          • a: R5

          Returns R6

    • f7: ((a) => R7)
        • (a): R7
        • Parameters

          • a: R6

          Returns R7

    Returns ((a1) => R7)

      • (a1): R7
      • Parameters

        • a1: A1

        Returns R7

  • Type Parameters

    • T

    Parameters

    • Rest ...funcs: readonly ((val) => T)[]

    Returns ((val) => T)

      • (val): T
      • Parameters

        • val: T

        Returns T

Generated using TypeDoc