Skip to content

Commit 1da5def

Browse files
committed
make sumBy generic
1 parent b2c108f commit 1da5def

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

lib/src/iterable.dart

+3-3
Original file line numberDiff line numberDiff line change
@@ -353,12 +353,12 @@ extension IterableJoinToString<E> on Iterable<E> {
353353
extension IterableSumBy<E> on Iterable<E> {
354354
/// Returns the sum of all values produced by [selector] function applied to
355355
/// each element in the collection.
356-
double sumBy(num Function(E element) selector) {
357-
var sum = 0.0;
356+
T sumBy<T extends num>(T Function(E element) selector) {
357+
var sum = T == double ? 0.0 : 0;
358358
for (final current in this) {
359359
sum += selector(current);
360360
}
361-
return sum;
361+
return sum as T;
362362
}
363363
}
364364

0 commit comments

Comments
 (0)