when2<T1, T2> method

PatternMatcher<I, O> when2<T1, T2>(
  1. TransformingPredicate<I, Pair<T1, T2>> predicate,
  2. O function(
    1. T1 input1,
    2. T2 input2
    )
)

Implementation

PatternMatcher<I, O> when2<T1, T2>(
    TransformingPredicate<I, Pair<T1, T2>> predicate,
    O Function(T1 input1, T2 input2) function) {
  var newCases = List<_Case<I, Pair<T1, T2>, O>>.from(_cases);
  newCases.add(_Case(predicate, (Pair<T1, T2> p) => function(p.a, p.b)));
  return PatternMatcher(newCases);
}