fold<R> method

R fold<R>(
  1. R match1(
    1. T1
    ),
  2. R match2(
    1. T2
    ),
  3. R match3(
    1. T3
    ),
  4. R match4(
    1. T4
    ),
  5. R match5(
    1. T5
    ),
  6. R match6(
    1. T6
    ),
  7. R match7(
    1. T7
    ),
)

Implementation

R fold<R>(
  R Function(T1) match1,
  R Function(T2) match2,
  R Function(T3) match3,
  R Function(T4) match4,
  R Function(T5) match5,
  R Function(T6) match6,
  R Function(T7) match7,
) {
  switch (_discriminator) {
    case 0:
      return match1(_value1 as T1);
    case 1:
      return match2(_value2 as T2);
    case 2:
      return match3(_value3 as T3);
    case 3:
      return match4(_value4 as T4);
    case 4:
      return match5(_value5 as T5);
    case 5:
      return match6(_value6 as T6);
    default:
      return match7(_value7 as T7);
  }
}