diff --git a/runtime/src/main/kotlin/kotlin/Array.kt b/runtime/src/main/kotlin/kotlin/Array.kt index 64c967594d1..737486aed68 100644 --- a/runtime/src/main/kotlin/kotlin/Array.kt +++ b/runtime/src/main/kotlin/kotlin/Array.kt @@ -47,6 +47,10 @@ public final class Array { return IteratorImpl(this) } + public override fun toString(): String { + return this.joinToString(separator = ", ", prefix = "[", postfix = "]") + } + // Konan-specific. @SymbolName("Kotlin_Array_getArrayLength") external private fun getArrayLength(): Int diff --git a/runtime/src/main/kotlin/kotlin/Arrays.kt b/runtime/src/main/kotlin/kotlin/Arrays.kt index ec785784b3f..a29bf45c08c 100644 --- a/runtime/src/main/kotlin/kotlin/Arrays.kt +++ b/runtime/src/main/kotlin/kotlin/Arrays.kt @@ -64,6 +64,10 @@ public final class ByteArray { public operator fun iterator(): ByteIterator { return ByteIteratorImpl(this) } + + public override fun toString(): String { + return this.joinToString(separator = ", ", prefix = "[", postfix = "]") + } } // TODO: replace with generics, once implemented. @@ -116,6 +120,10 @@ public final class CharArray { public operator fun iterator(): kotlin.collections.CharIterator { return CharIteratorImpl(this) } + + public override fun toString(): String { + return this.joinToString(separator = ", ", prefix = "[", postfix = "]") + } } private class CharIteratorImpl(val collection: CharArray) : CharIterator() { @@ -167,6 +175,10 @@ public final class ShortArray { public operator fun iterator(): kotlin.collections.ShortIterator { return ShortIteratorImpl(this) } + + public override fun toString(): String { + return this.joinToString(separator = ", ", prefix = "[", postfix = "]") + } } private class ShortIteratorImpl(val collection: ShortArray) : ShortIterator() { @@ -218,6 +230,10 @@ public final class IntArray { public operator fun iterator(): kotlin.collections.IntIterator { return IntIteratorImpl(this) } + + public override fun toString(): String { + return this.joinToString(separator = ", ", prefix = "[", postfix = "]") + } } private class IntIteratorImpl(val collection: IntArray) : IntIterator() { @@ -269,6 +285,10 @@ public final class LongArray { public operator fun iterator(): kotlin.collections.LongIterator { return LongIteratorImpl(this) } + + public override fun toString(): String { + return this.joinToString(separator = ", ", prefix = "[", postfix = "]") + } } private class LongIteratorImpl(val collection: LongArray) : LongIterator() { @@ -320,6 +340,10 @@ public final class FloatArray { public operator fun iterator(): kotlin.collections.FloatIterator { return FloatIteratorImpl(this) } + + public override fun toString(): String { + return this.joinToString(separator = ", ", prefix = "[", postfix = "]") + } } private class FloatIteratorImpl(val collection: FloatArray) : FloatIterator() { @@ -367,6 +391,10 @@ public final class DoubleArray { public operator fun iterator(): kotlin.collections.DoubleIterator { return DoubleIteratorImpl(this) } + + public override fun toString(): String { + return this.joinToString(separator = ", ", prefix = "[", postfix = "]") + } } private class DoubleIteratorImpl(val collection: DoubleArray) : DoubleIterator() { @@ -414,6 +442,10 @@ public final class BooleanArray { public operator fun iterator(): kotlin.collections.BooleanIterator { return BooleanIteratorImpl(this) } + + public override fun toString(): String { + return this.joinToString(separator = ", ", prefix = "[", postfix = "]") + } } private class BooleanIteratorImpl(val collection: BooleanArray) : BooleanIterator() {