distinctBy<K> method
Returns distinct elements by a derived key, preserving first-seen order.
[1, 2, 1, 3, 2].distinctBy((e) => e); // (1, 2, 3)
Implementation
Iterable<T> distinctBy<K>(K Function(T) keyOf) sync* {
final seen = <K>{};
for (final e in this) {
if (seen.add(keyOf(e))) yield e;
}
}