pipe6<A1, A2, A3, A4, A5, A6> function

A6 pipe6<A1, A2, A3, A4, A5, A6>(
  1. A1 a1,
  2. A2 f1(
    1. A1
    ),
  3. A3 f2(
    1. A2
    ),
  4. A4 f3(
    1. A3
    ),
  5. A5 f4(
    1. A4
    ),
  6. A6 f5(
    1. A5
    ),
)

Implementation

A6 pipe6<A1, A2, A3, A4, A5, A6>(
  A1 a1,
  A2 Function(A1) f1,
  A3 Function(A2) f2,
  A4 Function(A3) f3,
  A5 Function(A4) f4,
  A6 Function(A5) f5,
) =>
    f5(
      f4(
        f3(
          f2(
            f1(a1),
          ),
        ),
      ),
    );