Platform and version requirements: JVM (1.0), JS (1.1), Native (1.3)
interface Iterator<out T>
An iterator over a collection or another entity that can be represented as a sequence of elements. Allows to sequentially access the elements.
Platform and version requirements: JVM (1.0), JS (1.0), Native (1.0)
Creates a sequence that returns all elements from this iterator. The sequence is constrained to be iterated only once.
fun <T> Iterator<T>.asSequence(): Sequence<T>
Platform and version requirements: JVM (1.0), JS (1.0), Native (1.0)
Performs the given operation on each element of this Iterator.
fun <T> Iterator<T>.forEach(operation: (T) -> Unit)
Platform and version requirements: JVM (1.0), JS (1.0), Native (1.0)
Returns the given iterator itself. This allows to use an instance of iterator in a for
loop.
operator fun <T> Iterator<T>.iterator(): Iterator<T>
Platform and version requirements: JVM (1.0), JS (1.0), Native (1.0)
Returns an Iterator wrapping each value produced by this Iterator with the IndexedValue, containing value and it's index.
fun <T> Iterator<T>.withIndex(): Iterator<IndexedValue<T>>
Platform and version requirements: JVM (1.0), JS (1.0), Native (1.0)
A base class to simplify implementing iterators so that implementations only have to implement computeNext to implement the iterator, calling done when the iteration is complete.
abstract class AbstractIterator<T> : Iterator<T>
Platform and version requirements: JVM (1.0), JS (1.0), Native (1.0)
An iterator over a sequence of values of type Boolean
.
abstract class BooleanIterator : Iterator<Boolean>
Platform and version requirements: JVM (1.0), JS (1.0), Native (1.0)
An iterator over a sequence of values of type Byte
.
abstract class ByteIterator : Iterator<Byte>
Platform and version requirements: JVM (1.0), JS (1.0), Native (1.0)
An iterator over a sequence of values of type Char
.
abstract class CharIterator : Iterator<Char>
Platform and version requirements: JVM (1.0), JS (1.0), Native (1.0)
An iterator over a sequence of values of type Double
.
abstract class DoubleIterator : Iterator<Double>
Platform and version requirements: JVM (1.0), JS (1.0), Native (1.0)
An iterator over a sequence of values of type Float
.
abstract class FloatIterator : Iterator<Float>
Platform and version requirements: JVM (1.0), JS (1.0), Native (1.0)
An iterator over a sequence of values of type Int
.
abstract class IntIterator : Iterator<Int>
Platform and version requirements: JVM (1.0), JS (1.0), Native (1.0)
An iterator over a collection that supports indexed access.
interface ListIterator<out T> : Iterator<T>
Platform and version requirements: JVM (1.0), JS (1.0), Native (1.0)
An iterator over a sequence of values of type Long
.
abstract class LongIterator : Iterator<Long>
Platform and version requirements: JVM (1.0), JS (1.0), Native (1.0)
An iterator over a mutable collection. Provides the ability to remove elements while iterating.
interface MutableIterator<out T> : Iterator<T>
Platform and version requirements: JVM (1.0), JS (1.0), Native (1.0)
An iterator over a sequence of values of type Short
.
abstract class ShortIterator : Iterator<Short>
Platform and version requirements: JVM (1.3), JS (1.3), Native (1.3)
An iterator over a sequence of values of type UByte
.
abstract class UByteIterator : Iterator<UByte>
Platform and version requirements: JVM (1.3), JS (1.3), Native (1.3)
An iterator over a sequence of values of type UInt
.
abstract class UIntIterator : Iterator<UInt>
Platform and version requirements: JVM (1.3), JS (1.3), Native (1.3)
An iterator over a sequence of values of type ULong
.
abstract class ULongIterator : Iterator<ULong>
Platform and version requirements: JVM (1.3), JS (1.3), Native (1.3)
An iterator over a sequence of values of type UShort
.
abstract class UShortIterator : Iterator<UShort>