groupBy<T, K> method

Grouping<T, K> groupBy<T, K>(
  1. StreamNode<T> node,
  2. K grouper(
    1. T
    ), {
  3. required List<K> possibleGroups,
  4. String? name,
})

Implementation

Grouping<T, K> groupBy<T, K>(StreamNode<T> node, K Function(T) grouper,
    {required List<K> possibleGroups, String? name}) {
  final groupNodes = {
    for (var key in possibleGroups)
      key: FilterNode<T>(node, (T e) => grouper(e) == key, name: '$name-$key')
  };
  return Grouping<T, K>(node, grouper, groupNodes);
}