Make Array.size() a function instead of a property
Also add a deprecated extension property to help migration. This is done to unify getting size of arrays and collections
This commit is contained in:
@@ -28,7 +28,7 @@ class GenerateArrayIterators(out: PrintWriter) : BuiltInsSourceGenerator(out) {
|
||||
val s = kind.capitalized
|
||||
out.println("private class Array${s}Iterator(private val array: ${s}Array) : ${s}Iterator() {")
|
||||
out.println(" private var index = 0")
|
||||
out.println(" override fun hasNext() = index < array.size")
|
||||
out.println(" override fun hasNext() = index < array.size()")
|
||||
out.println(" override fun next$s() = array[index++]")
|
||||
out.println("}")
|
||||
out.println()
|
||||
|
||||
@@ -26,10 +26,12 @@ class GenerateArrays(out: PrintWriter) : BuiltInsSourceGenerator(out) {
|
||||
override fun generateBody() {
|
||||
for (kind in PrimitiveType.values()) {
|
||||
val s = kind.capitalized
|
||||
out.println("public class ${s}Array(public val size: Int) : Cloneable {")
|
||||
out.println("public class ${s}Array(size: Int) : Cloneable {")
|
||||
out.println(" public fun get(index: Int): $s")
|
||||
out.println(" public fun set(index: Int, value: $s): Unit")
|
||||
out.println()
|
||||
out.println(" public fun size(): Int")
|
||||
out.println()
|
||||
out.println(" public fun iterator(): ${s}Iterator")
|
||||
out.println()
|
||||
out.println(" public val indices: IntRange")
|
||||
|
||||
Reference in New Issue
Block a user