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