GeneralIterableExtensions<T extends Object> extension

General-purpose aggregation, windowing, and frequency helpers for iterables.

on

Methods

chunks(int size) Iterable<List<T>>

Available on Iterable<T>, provided by the GeneralIterableExtensions extension

Splits this iterable into chunks of size size.
containsAll(Iterable<T> other) bool

Available on Iterable<T>, provided by the GeneralIterableExtensions extension

Returns true if this iterable contains all elements from other.
countWhere(ElementPredicate<T> predicate) int

Available on Iterable<T>, provided by the GeneralIterableExtensions extension

Returns the number of elements that satisfy the given predicate.
dedupeConsecutive() Iterable<T>

Available on Iterable<T>, provided by the GeneralIterableExtensions extension

Removes consecutive duplicate elements (keeps first of each run).
distinctBy<K>(K keyOf(T)) List<T>

Available on Iterable<T>, provided by the GeneralIterableExtensions extension

Distinct elements by key; keeps first occurrence of each key.
groupBy<K>(K keyOf(T)) Map<K, List<T>>

Available on Iterable<T>, provided by the GeneralIterableExtensions extension

Groups elements by the key produced by keyOf.
leastOccurrences() Occurrence<T>?

Available on Iterable<T>, provided by the GeneralIterableExtensions extension

Returns an Occurrence of the least common value and its frequency, or null if the iterable is empty.
mostOccurrences() Occurrence<T>?

Available on Iterable<T>, provided by the GeneralIterableExtensions extension

Finds the most common value in the list.
partition(ElementPredicate<T> predicate) → (List<T>, List<T>)

Available on Iterable<T>, provided by the GeneralIterableExtensions extension

Partitions elements into two lists: those that satisfy predicate and those that do not.
randomElement() → T?

Available on Iterable<T>, provided by the GeneralIterableExtensions extension

Returns a random element from this iterable.
skipEveryNth(int n) Iterable<T>

Available on Iterable<T>, provided by the GeneralIterableExtensions extension

Skips every n-th element. n must be positive.
slidingWindow(int windowSize) Iterable<List<T>>

Available on Iterable<T>, provided by the GeneralIterableExtensions extension

Sliding windows of size windowSize. Each window is a list of windowSize elements.
sortBy<K extends Comparable<K>>(K keyOf(T)) List<T>

Available on Iterable<T>, provided by the GeneralIterableExtensions extension

Sorts by keyOf and returns a new list. keyOf must return Comparable.
takeEveryNth(int n) Iterable<T>

Available on Iterable<T>, provided by the GeneralIterableExtensions extension

Takes every n-th element (1-based: first, then 1+n, 1+2n, ...). n must be positive.
zipWithIndex() Iterable<(int, T)>

Available on Iterable<T>, provided by the GeneralIterableExtensions extension

Zip with index: (0, e0), (1, e1), ....