Function compose

  • Perform right-to-left function composition.

    Type Parameters

    • T1

    • T2

    Parameters

    • op1: ((input) => T2)
        • (input): T2
        • Parameters

          Returns T2

    Returns ((input) => T2)

      • (input): T2
      • Parameters

        Returns T2

    Example

    const func = compose(
    arr => arr.map(v => v + 2)
    (arr: number[]) => arr.map(v => v * 2),
    )
    // [4, 6, 8, 10]
    //
  • Type Parameters

    • T1

    • T2

    • T3

    Parameters

    • op2: ((input) => T3)
        • (input): T3
        • Parameters

          Returns T3

    • op1: ((input) => T2)
        • (input): T2
        • Parameters

          Returns T2

    Returns ((input) => T3)

      • (input): T3
      • Parameters

        Returns T3

  • Type Parameters

    • T1

    • T2

    • T3

    • T4

    Parameters

    • op3: ((input) => T4)
        • (input): T4
        • Parameters

          Returns T4

    • op2: ((input) => T3)
        • (input): T3
        • Parameters

          Returns T3

    • op1: ((input) => T2)
        • (input): T2
        • Parameters

          Returns T2

    Returns ((input) => T4)

      • (input): T4
      • Parameters

        Returns T4

  • Type Parameters

    • T1

    • T2

    • T3

    • T4

    • T5

    Parameters

    • op4: ((input) => T5)
        • (input): T5
        • Parameters

          Returns T5

    • op3: ((input) => T4)
        • (input): T4
        • Parameters

          Returns T4

    • op2: ((input) => T3)
        • (input): T3
        • Parameters

          Returns T3

    • op1: ((input) => T2)
        • (input): T2
        • Parameters

          Returns T2

    Returns ((input) => T5)

      • (input): T5
      • Parameters

        Returns T5

  • Type Parameters

    • T1

    • T2

    • T3

    • T4

    • T5

    • T6

    Parameters

    • op5: ((input) => T6)
        • (input): T6
        • Parameters

          Returns T6

    • op4: ((input) => T5)
        • (input): T5
        • Parameters

          Returns T5

    • op3: ((input) => T4)
        • (input): T4
        • Parameters

          Returns T4

    • op2: ((input) => T3)
        • (input): T3
        • Parameters

          Returns T3

    • op1: ((input) => T2)
        • (input): T2
        • Parameters

          Returns T2

    Returns ((input) => T6)

      • (input): T6
      • Parameters

        Returns T6

  • Type Parameters

    • T1

    • T2

    • T3

    • T4

    • T5

    • T6

    • T7

    Parameters

    • op6: ((input) => T7)
        • (input): T7
        • Parameters

          Returns T7

    • op5: ((input) => T6)
        • (input): T6
        • Parameters

          Returns T6

    • op4: ((input) => T5)
        • (input): T5
        • Parameters

          Returns T5

    • op3: ((input) => T4)
        • (input): T4
        • Parameters

          Returns T4

    • op2: ((input) => T3)
        • (input): T3
        • Parameters

          Returns T3

    • op1: ((input) => T2)
        • (input): T2
        • Parameters

          Returns T2

    Returns ((input) => T7)

      • (input): T7
      • Parameters

        Returns T7

  • Type Parameters

    • T1

    • T2

    • T3

    • T4

    • T5

    • T6

    • T7

    • T8

    Parameters

    • op7: ((input) => T8)
        • (input): T8
        • Parameters

          Returns T8

    • op6: ((input) => T7)
        • (input): T7
        • Parameters

          Returns T7

    • op5: ((input) => T6)
        • (input): T6
        • Parameters

          Returns T6

    • op4: ((input) => T5)
        • (input): T5
        • Parameters

          Returns T5

    • op3: ((input) => T4)
        • (input): T4
        • Parameters

          Returns T4

    • op2: ((input) => T3)
        • (input): T3
        • Parameters

          Returns T3

    • op1: ((input) => T2)
        • (input): T2
        • Parameters

          Returns T2

    Returns ((input) => T8)

      • (input): T8
      • Parameters

        Returns T8

  • Parameters

    • Rest ...operations: ((value) => unknown)[]

    Returns ((value) => unknown)

      • (value): unknown
      • Parameters

        • value: unknown

        Returns unknown

Generated using TypeDoc