KtIterableExtensions<T> extension

on

Properties

dart Iterable<T>
Returns a dart:core Iterable
no setter

Methods

all(bool predicate(T element)) bool
Returns true if all elements match the given predicate.
any([bool predicate(T element)?]) bool
Returns true if at least one element matches the given predicate.
asIterable() KtIterable<T>
Returns this collection as an Iterable.
associate<K, V>(KtPair<K, V> transform(T)) KtMap<K, V>
Returns a Map containing key-value pairs provided by transform function applied to elements of the given collection.
associateBy<K>(K keySelector(T)) KtMap<K, T>
Returns a Map containing the elements from the given collection indexed by the key returned from keySelector function applied to each element.
associateByTo<K, V, M extends KtMutableMap<K, V>>(M destination, K keySelector(T), [V valueTransform(T)?]) → M
Populates and returns the destination mutable map with key-value pairs, where key is provided by the keySelector function and and value is provided by the valueTransform function applied to elements of the given collection.
associateByTransform<K, V>(K keySelector(T), V valueTransform(T)) KtMap<K, V>
Returns a Map containing the elements from the given collection indexed by the key returned from keySelector function applied to each element. The element can be transformed with valueTransform.
associateTo<K, V, M extends KtMutableMap<K, V>>(M destination, KtPair<K, V> transform(T)) → M
Populates and returns the destination mutable map with key-value pairs provided by transform function applied to each element of the given collection.
associateWith<V>(V valueSelector(T)) KtMap<T, V>
Returns a Map where keys are elements from the given collection and values are produced by the valueSelector function applied to each element.
associateWithTo<V, M extends KtMutableMap>(M destination, V valueSelector(T)) → M
Populates and returns the destination mutable map with key-value pairs for each element of the given collection, where key is the element itself and value is provided by the valueSelector function applied to that key.
averageBy(num selector(T)) double
Returns an average value produced by selector function applied to each element in the collection.
cast<R>() KtIterable<R>
Provides a view of this KtIterable as an iterable of R instances.
chunked(int size) KtList<KtList<T>>
Splits this collection into a list of lists each not exceeding the given size.
chunkedTransform<R>(int size, R transform(KtList<T>)) KtList<R>
Splits this collection into several lists each not exceeding the given size and applies the given transform function to an each.
contains(T element) bool
Returns true if element is found in the collection.
count([bool predicate(T)?]) int
Returns the number of elements matching the given predicate or the number of elements when predicate = null.
distinct() KtList<T>
Returns a list containing only distinct elements from the given collection.
distinctBy<K>(K selector(T)) KtList<T>
Returns a list containing only elements from the given collection having distinct keys returned by the given selector function.
drop(int n) KtList<T>
Returns a list containing all elements except first n elements.
dropWhile(bool predicate(T)) KtList<T>
Returns a list containing all elements except first elements that satisfy the given predicate.
elementAt(int index) → T
Returns an element at the given index or throws an IndexOutOfBoundsException if the index is out of bounds of this collection.
elementAtOrElse(int index, T defaultValue(int)) → T
Returns an element at the given index or the result of calling the defaultValue function if the index is out of bounds of this collection.
elementAtOrNull(int index) → T?
Returns an element at the given index or null if the index is out of bounds of this collection.
filter(bool predicate(T)) KtList<T>
Returns a list containing only elements matching the given predicate.
filterIndexed(bool predicate(int index, T)) KtList<T>
Returns a list containing only elements matching the given predicate. @param predicate function that takes the index of an element and the element itself and returns the result of predicate evaluation on the element.
filterIndexedTo<C extends KtMutableCollection>(C destination, bool predicate(int index, T)) → C
Appends all elements matching the given predicate to the given destination. @param predicate function that takes the index of an element and the element itself and returns the result of predicate evaluation on the element.
filterIsInstance<R>() KtList<R>
Returns a list containing all elements that are instances of specified type parameter R.
filterNot(bool predicate(T)) KtList<T>
Returns a list containing all elements not matching the given predicate.
filterNotNullTo<C extends KtMutableCollection>(C destination) → C
Appends all elements that are not null to the given destination.
filterNotTo<C extends KtMutableCollection>(C destination, bool predicate(T)) → C
Appends all elements not matching the given predicate to the given destination.
filterTo<C extends KtMutableCollection>(C destination, bool predicate(T)) → C
Appends all elements matching the given predicate to the given destination.
find(bool predicate(T)) → T?
Returns the first element matching the given predicate, or null if no such element was found.
findLast(bool predicate(T)) → T?
Returns the last element matching the given predicate, or null if no such element was found.
first([bool predicate(T)?]) → T
Returns first element.
firstNotNullOf<R>(R? transform(T?)) → R
Returns the first non-null value after applying the given transform function, throwing a NoSuchElementException exception if there is no such value.
firstNotNullOfOrNull<R>(R? transform(T?)) → R?
Returns the first non-null value after applying the given transform function; null will be returned if there is no such value.
firstOrNull([bool predicate(T)?]) → T?
Returns the first element (matching predicate when provided), or null if the collection is empty.
flatMap<R>(KtIterable<R> transform(T)) KtList<R>
Returns a single list of all elements yielded from results of transform function being invoked on each element of original collection.
flatMapIndexed<R>(KtIterable<R> transform(int index, T)) KtList<R>
Returns a single list of all elements yielded from results of transform function being invoked on each element and its index in the original collection.
flatMapIndexedTo<R, C extends KtMutableCollection<R>>(C destination, KtIterable<R> transform(int index, T)) → C
Appends all elements yielded from results of transform function being invoked on each element and its index in the original collection, to the given destination.
flatMapTo<R, C extends KtMutableCollection<R>>(C destination, KtIterable<R> transform(T)) → C
Appends all elements yielded from results of transform function being invoked on each element of original collection, to the given destination.
fold<R>(R initial, R operation(R acc, T)) → R
Accumulates value starting with initial value and applying operation from left to right to current accumulator value and each element.
foldIndexed<R>(R initial, R operation(int index, R acc, T)) → R
Accumulates value starting with initial value and applying operation from left to right to current accumulator value and each element with its index in the original collection. @param operation function that takes the index of an element, current accumulator value and the element itself, and calculates the next accumulator value.
forEach(void action(T element)) → void
Performs the given action on each element.
forEachIndexed(void action(int index, T element)) → void
Performs the given action on each element, providing sequential index with the element. @param action function that takes the index of an element and the element itself and performs the desired action on the element.
groupBy<K>(K keySelector(T)) KtMap<K, KtList<T>>
Groups elements of the original collection by the key returned by the given keySelector function applied to each element and returns a map where each group key is associated with a list of corresponding elements.
groupByTo<K, M extends KtMutableMap<K, KtMutableList>>(M destination, K keySelector(T)) → M
Groups elements of the original collection by the key returned by the given keySelector function applied to each element and puts to the destination map each group key associated with a list of corresponding elements.
groupByToTransform<K, V, M extends KtMutableMap<K, KtMutableList<V>>>(M destination, K keySelector(T), V valueTransform(T)) → M
Groups values returned by the valueTransform function applied to each element of the original collection by the key returned by the given keySelector function applied to the element and puts to the destination map each group key associated with a list of corresponding values.
groupByTransform<K, V>(K keySelector(T), V valueTransform(T)) KtMap<K, KtList<V>>
Groups values returned by the valueTransform function applied to each element of the original collection by the key returned by the given keySelector function applied to the element and returns a map where each group key is associated with a list of corresponding values.
indexOf(T element) int
Returns first index of element, or -1 if the collection does not contain element.
indexOfFirst(bool predicate(T)) int
Returns index of the first element matching the given predicate, or -1 if the collection does not contain such element.
indexOfLast(bool predicate(T)) int
Returns index of the last element matching the given predicate, or -1 if the collection does not contain such element.
intersect(KtIterable<T> other) KtSet<T>
Returns a set containing all elements that are contained by both this set and the specified collection.
joinToString({String separator = ", ", String prefix = "", String postfix = "", int limit = -1, String truncated = "...", String transform(T)?}) String
Creates a string from all the elements separated using separator and using the given prefix and postfix if supplied.
last([bool predicate(T)?]) → T
Returns the last element matching the given predicate. @throws NoSuchElementException if no such element is found.
lastIndexOf(T element) int
Returns last index of element, or -1 if the collection does not contain element.
lastOrNull([bool predicate(T)?]) → T?
Returns the last element matching the given predicate, or null if no such element was found.
map<R>(R transform(T)) KtList<R>
Returns a list containing the results of applying the given transform function to each element in the original collection.
mapIndexed<R>(R transform(int index, T)) KtList<R>
Returns a list containing the results of applying the given transform function to each element and its index in the original collection. @param transform function that takes the index of an element and the element itself and returns the result of the transform applied to the element.
mapIndexedNotNull<R>(R? transform(int index, T)) KtList<R>
Returns a list containing only the non-null results of applying the given transform function to each element and its index in the original collection. @param transform function that takes the index of an element and the element itself and returns the result of the transform applied to the element.
mapIndexedNotNullTo<R, C extends KtMutableCollection<R>>(C destination, R? transform(int index, T)) → C
Applies the given transform function to each element and its index in the original collection and appends only the non-null results to the given destination. @param transform function that takes the index of an element and the element itself and returns the result of the transform applied to the element.
mapIndexedTo<R, C extends KtMutableCollection<R>>(C destination, R transform(int index, T)) → C
Applies the given transform function to each element and its index in the original collection and appends the results to the given destination. @param transform function that takes the index of an element and the element itself and returns the result of the transform applied to the element.
mapNotNull<R>(R? transform(T)) KtList<R>
Returns a list containing the results of applying the given transform function to each element in the original collection.
mapNotNullTo<R, C extends KtMutableCollection<R>>(C destination, R? transform(T)) → C
Applies the given transform function to each element in the original collection and appends only the non-null results to the given destination.
mapTo<R, C extends KtMutableCollection<R>>(C destination, R transform(T)) → C
Applies the given transform function to each element of the original collection and appends the results to the given destination.
maxBy<R extends Comparable>(R selector(T)) → T?
Returns the first element yielding the largest value of the given function or null if there are no elements.
maxOf<R extends Comparable>(R selector(T)) → R
Returns the largest value among all values produced by selector function applied to each element in the collection.
maxWith(Comparator<T> comparator) → T?
Returns the first element having the largest value according to the provided comparator or null if there are no elements.
minBy<R extends Comparable>(R selector(T)) → T?
Returns the first element yielding the smallest value of the given function or null if there are no elements.
minOf<R extends Comparable>(R selector(T)) → R
Returns the smallest value among all values produced by selector function applied to each element in the array.
minus(KtIterable<T> elements) KtList<T>
Returns a list containing all elements of the original collection except the elements contained in the given elements collection.
minusElement(T element) KtList<T>
Returns a list containing all elements of the original collection without the first occurrence of the given element.
minWith(Comparator<T> comparator) → T?
Returns the first element having the smallest value according to the provided comparator or null if there are no elements.
none([bool predicate(T)?]) bool
Returns true if the collection has no elements or no elements match the given predicate.
partition(bool predicate(T)) KtPair<KtList<T>, KtList<T>>
Splits the original collection into pair of lists, where first list contains elements for which predicate yielded true, while second list contains elements for which predicate yielded false.
plus(KtIterable<T> elements) KtList<T>
Returns a list containing all elements of the original collection and then all elements of the given elements collection.
plusElement(T element) KtList<T>
Returns a list containing all elements of the original collection and then the given element.
reduce<S>(S operation(S acc, T)) → S
Accumulates value starting with the first element and applying operation from left to right to current accumulator value and each element.
reduceIndexed<S>(S operation(int index, S acc, T)) → S
Accumulates value starting with the first element and applying operation from left to right to current accumulator value and each element with its index in the original collection. @param operation function that takes the index of an element, current accumulator value and the element itself and calculates the next accumulator value.
reduceIndexedOrNull<S>(S operation(int index, S acc, T)) → S?
Accumulates value starting with the first element and applying operation from left to right to current accumulator value and each element with its index in the original collection.
reduceOrNull<S>(S operation(S acc, T)) → S?
Accumulates value starting with the first element and applying operation from left to right to current accumulator value and each element.
reversed() KtList<T>
Returns a list with elements in reversed order.
runningReduce<S>(S operation(S acc, T)) KtList<S>
Returns a list containing successive accumulation values generated by applying operation from left to right to each element and current accumulator value that starts with the first element of this collection.
runningReduceIndexed<S>(S operation(int index, S acc, T)) KtList<S>
Returns a list containing successive accumulation values generated by applying operation from left to right to each element, its index in the original collection and current accumulator value that starts with the first element of this collection.
shuffled([Random? random]) KtList<T>
Returns a new list with the elements of this list randomly shuffled.
single([bool predicate(T)?]) → T
Returns the single element matching the given predicate, or throws an exception if the list is empty or has more than one element.
singleOrNull([bool predicate(T)?]) → T?
Returns the single element matching the given predicate, or null if element was not found or more than one element was found.
sorted() KtList<T>
Returns a list of all elements sorted according to their natural sort order.
sortedBy<R extends Comparable>(R selector(T)) KtList<T>
Returns a list of all elements sorted according to natural sort order of the value returned by specified selector function.
sortedByDescending<R extends Comparable>(R selector(T)) KtList<T>
Returns a list of all elements sorted descending according to natural sort order of the value returned by specified selector function.
sortedDescending() KtList<T>
Returns a list of all elements sorted descending according to their natural sort order.
sortedWith(Comparator<T> comparator) KtList<T>
Returns a list of all elements sorted according to the specified comparator.
subtract(KtIterable<T> other) KtSet<T>
Returns a set containing all elements that are contained by this collection and not contained by the specified collection.
sumBy<R extends num>(R selector(T)) → R
Returns the sum of all values produced by selector function applied to each element in the collection.
sumByDouble(double selector(T)) double
Returns the sum of all values produced by selector function applied to each element in the collection.
take(int n) KtList<T>
Returns a list containing first n elements.
takeWhile(bool predicate(T)) KtList<T>
Returns a list containing first elements satisfying the given predicate.
toCollection<C extends KtMutableCollection>(C destination) → C
Appends all elements to the given destination collection.
toHashSet() KtMutableSet<T>
Returns a HashSet of all elements.
toList() KtList<T>
Returns a KtList containing all elements.
toMutableList() KtMutableList<T>
Returns a KtMutableList filled with all elements of this collection.
toMutableSet() KtMutableSet<T>
Returns a mutable set containing all distinct elements from the given collection.
toSet() KtSet<T>
Returns a KtSet of all elements.
union(KtIterable<T> other) KtSet<T>
Returns a set containing all distinct elements from both collections.
windowed(int size, {int step = 1, bool partialWindows = false}) KtList<KtList<T>>
Returns a list of snapshots of the window of the given size sliding along this collection with the given step, where each snapshot is a list.
windowedTransform<R>(int size, R transform(KtList<T>), {int step = 1, bool partialWindows = false}) KtList<R>
Returns a list of results of applying the given transform function to an each list representing a view over the window of the given size sliding along this collection with the given step.
zip<R>(KtIterable<R> other) KtList<KtPair<T, R>>
Returns a list of pairs built from the elements of this collection and other collection with the same index. The returned list has length of the shortest collection.
zipTransform<R, V>(KtIterable<R> other, V transform(T a, R b)) KtList<V>
Returns a list of values built from the elements of this collection and the other collection with the same index using the provided transform function applied to each pair of elements. The returned list has length of the shortest collection.
zipWithNext() KtList<KtPair<T, T>>
Returns a list of pairs of each two adjacent elements in this collection.
zipWithNextTransform<R>(R transform(T a, T b)) KtList<R>
Returns a list containing the results of applying the given transform function to an each pair of two adjacent elements in this collection.

Operators

operator +(KtIterable<T> elements) KtList<T>
Returns a list containing all elements of the original collection and then all elements of the given elements collection.
operator -(KtIterable<T> elements) KtList<T>
Returns a list containing all elements of the original collection except the elements contained in the given elements collection.