foldIndexed

Common
JVM
JS
Native
1.0
inline fun <T, R> Array<out T>.foldIndexed(
    initial: R,
    operation: (index: Int, acc: R, T) -> R
): R
inline fun <R> ByteArray.foldIndexed(
    initial: R,
    operation: (index: Int, acc: R, Byte) -> R
): R
inline fun <R> ShortArray.foldIndexed(
    initial: R,
    operation: (index: Int, acc: R, Short) -> R
): R
inline fun <R> IntArray.foldIndexed(
    initial: R,
    operation: (index: Int, acc: R, Int) -> R
): R
inline fun <R> LongArray.foldIndexed(
    initial: R,
    operation: (index: Int, acc: R, Long) -> R
): R
inline fun <R> FloatArray.foldIndexed(
    initial: R,
    operation: (index: Int, acc: R, Float) -> R
): R
inline fun <R> DoubleArray.foldIndexed(
    initial: R,
    operation: (index: Int, acc: R, Double) -> R
): R
inline fun <R> BooleanArray.foldIndexed(
    initial: R,
    operation: (index: Int, acc: R, Boolean) -> R
): R
inline fun <R> CharArray.foldIndexed(
    initial: R,
    operation: (index: Int, acc: R, Char) -> R
): R
@ExperimentalUnsignedTypes inline fun <R> UIntArray.foldIndexed(
    initial: R,
    operation: (index: Int, acc: R, UInt) -> R
): R
@ExperimentalUnsignedTypes inline fun <R> ULongArray.foldIndexed(
    initial: R,
    operation: (index: Int, acc: R, ULong) -> R
): R
@ExperimentalUnsignedTypes inline fun <R> UByteArray.foldIndexed(
    initial: R,
    operation: (index: Int, acc: R, UByte) -> R
): R
@ExperimentalUnsignedTypes inline fun <R> UShortArray.foldIndexed(
    initial: R,
    operation: (index: Int, acc: R, UShort) -> R
): 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 array.

Parameters

operation - function that takes the index of an element, current accumulator value and the element itself, and calculates the next accumulator value.

Common
JVM
JS
Native
1.0
inline fun <T, R> Iterable<T>.foldIndexed(
    initial: R,
    operation: (index: Int, acc: R, T) -> R
): 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.

Parameters

operation - function that takes the index of an element, current accumulator value and the element itself, and calculates the next accumulator value.