extentBy<T, R extends Comparable<Object> > function
Returns the minimum and maximum values using an accessor function.
Implementation
(R, R)? extentBy<T, R extends Comparable<Object>>(
Iterable<T> iterable,
R Function(T) accessor,
) {
final iterator = iterable.iterator;
if (!iterator.moveNext()) return null;
R minValue = accessor(iterator.current);
R maxValue = minValue;
while (iterator.moveNext()) {
final value = accessor(iterator.current);
if (value.compareTo(minValue) < 0) {
minValue = value;
}
if (value.compareTo(maxValue) > 0) {
maxValue = value;
}
}
return (minValue, maxValue);
}