GenericIterableExtensions<T> extension
List helpers: indexes, safe lookups, grouping, sorting, chunks, sums. users.groupBy((u) => u.city)
- on
-
- Iterable<
T>
- Iterable<
Methods
-
addAllAndReturn(
Iterable< T> t) → List<T> -
Available on Iterable<
New list with all ofT> , provided by the GenericIterableExtensions extensiontadded at the end. -
addAndReturn(
T t) → List< T> -
Available on Iterable<
New list withT> , provided by the GenericIterableExtensions extensiontadded at the end. -
alternative(
T main, T replace) → List< T> -
Available on Iterable<
New list withT> , provided by the GenericIterableExtensions extensionmainremoved andreplaceadded at the end.tags.alternative("old", "new") -
averageBy(
num value(T item)) → double -
Available on Iterable<
Average of a number from each item (0 when empty).T> , provided by the GenericIterableExtensions extensionscores.averageBy((s) => s.value) -
chunked(
int size) → List< List< T> > -
Available on Iterable<
Splits into lists ofT> , provided by the GenericIterableExtensions extensionsize.[1,2,3,4,5].chunked(2)→ [1,2,3,4,5] -
containsAll(
Iterable< T> list) → bool -
Available on Iterable<
True when every item ofT> , provided by the GenericIterableExtensions extensionlistis in this one. -
containsAny(
Iterable< T> list) → bool -
Available on Iterable<
True when at least one item ofT> , provided by the GenericIterableExtensions extensionlistis in this one. -
distinctBy<
K> (K key(T item)) → List< T> -
Available on Iterable<
Removes duplicates by a field, keeping the first.T> , provided by the GenericIterableExtensions extensionusers.distinctBy((u) => u.id) -
firstOrDefault(
{T? defaultValue}) → T? -
Available on Iterable<
First item, orT> , provided by the GenericIterableExtensions extensiondefaultValuewhen empty.list.firstOrDefault(defaultValue: 0) -
firstWhereOrNull(
bool test(T element)) → T? -
Available on Iterable<
First item that passesT> , provided by the GenericIterableExtensions extensiontest, or null.users.firstWhereOrNull((u) => u.id == id) -
forEachIndexed(
void action(int index, T element)) → void -
Available on Iterable<
forEach() that also gives the index.T> , provided by the GenericIterableExtensions extensionitems.forEachIndexed((i, e) => print("$i $e")) -
getFirstIfExist(
) → T? -
Available on Iterable<
First item, or null when empty.T> , provided by the GenericIterableExtensions extension -
groupBy<
K> (K key(T item)) → Map< K, List< T> > -
Available on Iterable<
Groups items by a key.T> , provided by the GenericIterableExtensions extensionorders.groupBy((o) => o.status)→ {paid:..., pending:...} -
insertAndReturn(
int index, T t) → List< T> -
Available on Iterable<
New list withT> , provided by the GenericIterableExtensions extensiontinserted atindex. -
insertFirstReturn(
T item) → List< T> -
Available on Iterable<
New list withT> , provided by the GenericIterableExtensions extensionitemfirst.[2, 3].insertFirstReturn(1)→1, 2, 3 -
mapIndexed<
E> (E f(int index, T item)) → Iterable< E> -
Available on Iterable<
map() that also gives the index.T> , provided by the GenericIterableExtensions extensionitems.mapIndexed((i, e) => "$i: $e") -
maxBy(
Comparable< Object?> value(T item)) → T? -
Available on Iterable<
Item with the biggest value, or null when empty.T> , provided by the GenericIterableExtensions extensionproducts.maxBy((p) => p.price) -
minBy(
Comparable< Object?> value(T item)) → T? -
Available on Iterable<
Item with the smallest value, or null when empty.T> , provided by the GenericIterableExtensions extensionproducts.minBy((p) => p.price) -
separatedBy(
T separator) → List< T> -
Available on Iterable<
PutsT> , provided by the GenericIterableExtensions extensionseparatorbetween items.[a, b, c].separatedBy(x)→a, x, b, x, c -
sortedBy<
K extends Comparable< (Object?> >K key(T item), {bool descending = false}) → List< T> -
Available on Iterable<
New list sorted by a field;T> , provided by the GenericIterableExtensions extensiondescendingreverses it.users.sortedBy((u) => u.name) -
sumBy(
num value(T item)) → num -
Available on Iterable<
Adds up a number from each item.T> , provided by the GenericIterableExtensions extensioncart.sumBy((i) => i.price * i.count) -
takeIfPossible(
int range) → Iterable< T> -
Available on Iterable<
take() that never throws.T> , provided by the GenericIterableExtensions extensionlist.takeIfPossible(5)