Make Array.indices extension property, move to stdlib

This is not something that needs to be intrinsified. Note that compiler
optimizations are still possible and the fact whether 'indices' is a member or
an extension is irrelevant to the optimizer
This commit is contained in:
Alexander Udalov
2014-11-14 20:56:27 +03:00
parent 36a9a99b4f
commit 93696ff9bd
22 changed files with 234 additions and 294 deletions
@@ -26,3 +26,31 @@ public val CharArray.lastIndex: Int
public val Array<*>.lastIndex: Int
get() = this.size - 1
public val BooleanArray.indices: IntRange
get() = IntRange(0, this.size - 1)
public val ByteArray.indices: IntRange
get() = IntRange(0, this.size - 1)
public val ShortArray.indices: IntRange
get() = IntRange(0, this.size - 1)
public val IntArray.indices: IntRange
get() = IntRange(0, this.size - 1)
public val LongArray.indices: IntRange
get() = IntRange(0, this.size - 1)
public val FloatArray.indices: IntRange
get() = IntRange(0, this.size - 1)
public val DoubleArray.indices: IntRange
get() = IntRange(0, this.size - 1)
public val CharArray.indices: IntRange
get() = IntRange(0, this.size - 1)
public val Array<*>.indices: IntRange
get() = IntRange(0, this.size - 1)