From 63895483fdbc44cb50afa6c81505b24b167f4288 Mon Sep 17 00:00:00 2001 From: Abduqodiri Qurbonzoda Date: Sun, 11 Aug 2019 23:57:27 +0300 Subject: [PATCH] Fix take method from iterating one extra element (KT-32024) --- .../stdlib/common/src/generated/_Arrays.kt | 36 +++++++++---------- .../common/src/generated/_Collections.kt | 4 +-- .../stdlib/common/src/generated/_UArrays.kt | 16 ++++----- .../src/templates/Filtering.kt | 8 ++--- 4 files changed, 32 insertions(+), 32 deletions(-) diff --git a/libraries/stdlib/common/src/generated/_Arrays.kt b/libraries/stdlib/common/src/generated/_Arrays.kt index 3dd538cd50d..d200f331f31 100644 --- a/libraries/stdlib/common/src/generated/_Arrays.kt +++ b/libraries/stdlib/common/src/generated/_Arrays.kt @@ -4137,9 +4137,9 @@ public fun Array.take(n: Int): List { var count = 0 val list = ArrayList(n) for (item in this) { - if (count++ == n) - break list.add(item) + if (++count == n) + break } return list } @@ -4159,9 +4159,9 @@ public fun ByteArray.take(n: Int): List { var count = 0 val list = ArrayList(n) for (item in this) { - if (count++ == n) - break list.add(item) + if (++count == n) + break } return list } @@ -4181,9 +4181,9 @@ public fun ShortArray.take(n: Int): List { var count = 0 val list = ArrayList(n) for (item in this) { - if (count++ == n) - break list.add(item) + if (++count == n) + break } return list } @@ -4203,9 +4203,9 @@ public fun IntArray.take(n: Int): List { var count = 0 val list = ArrayList(n) for (item in this) { - if (count++ == n) - break list.add(item) + if (++count == n) + break } return list } @@ -4225,9 +4225,9 @@ public fun LongArray.take(n: Int): List { var count = 0 val list = ArrayList(n) for (item in this) { - if (count++ == n) - break list.add(item) + if (++count == n) + break } return list } @@ -4247,9 +4247,9 @@ public fun FloatArray.take(n: Int): List { var count = 0 val list = ArrayList(n) for (item in this) { - if (count++ == n) - break list.add(item) + if (++count == n) + break } return list } @@ -4269,9 +4269,9 @@ public fun DoubleArray.take(n: Int): List { var count = 0 val list = ArrayList(n) for (item in this) { - if (count++ == n) - break list.add(item) + if (++count == n) + break } return list } @@ -4291,9 +4291,9 @@ public fun BooleanArray.take(n: Int): List { var count = 0 val list = ArrayList(n) for (item in this) { - if (count++ == n) - break list.add(item) + if (++count == n) + break } return list } @@ -4313,9 +4313,9 @@ public fun CharArray.take(n: Int): List { var count = 0 val list = ArrayList(n) for (item in this) { - if (count++ == n) - break list.add(item) + if (++count == n) + break } return list } diff --git a/libraries/stdlib/common/src/generated/_Collections.kt b/libraries/stdlib/common/src/generated/_Collections.kt index 2add9a8b594..f6f39d52828 100644 --- a/libraries/stdlib/common/src/generated/_Collections.kt +++ b/libraries/stdlib/common/src/generated/_Collections.kt @@ -785,9 +785,9 @@ public fun Iterable.take(n: Int): List { var count = 0 val list = ArrayList(n) for (item in this) { - if (count++ == n) - break list.add(item) + if (++count == n) + break } return list.optimizeReadOnlyList() } diff --git a/libraries/stdlib/common/src/generated/_UArrays.kt b/libraries/stdlib/common/src/generated/_UArrays.kt index d18f9bf4c60..667109705e6 100644 --- a/libraries/stdlib/common/src/generated/_UArrays.kt +++ b/libraries/stdlib/common/src/generated/_UArrays.kt @@ -2103,9 +2103,9 @@ public fun UIntArray.take(n: Int): List { var count = 0 val list = ArrayList(n) for (item in this) { - if (count++ == n) - break list.add(item) + if (++count == n) + break } return list } @@ -2127,9 +2127,9 @@ public fun ULongArray.take(n: Int): List { var count = 0 val list = ArrayList(n) for (item in this) { - if (count++ == n) - break list.add(item) + if (++count == n) + break } return list } @@ -2151,9 +2151,9 @@ public fun UByteArray.take(n: Int): List { var count = 0 val list = ArrayList(n) for (item in this) { - if (count++ == n) - break list.add(item) + if (++count == n) + break } return list } @@ -2175,9 +2175,9 @@ public fun UShortArray.take(n: Int): List { var count = 0 val list = ArrayList(n) for (item in this) { - if (count++ == n) - break list.add(item) + if (++count == n) + break } return list } diff --git a/libraries/tools/kotlin-stdlib-gen/src/templates/Filtering.kt b/libraries/tools/kotlin-stdlib-gen/src/templates/Filtering.kt index 952911edaf5..f4dae54df40 100644 --- a/libraries/tools/kotlin-stdlib-gen/src/templates/Filtering.kt +++ b/libraries/tools/kotlin-stdlib-gen/src/templates/Filtering.kt @@ -153,9 +153,9 @@ object Filtering : TemplateGroupBase() { var count = 0 val list = ArrayList(n) for (item in this) { - if (count++ == n) - break list.add(item) + if (++count == n) + break } return list.optimizeReadOnlyList() """ @@ -201,9 +201,9 @@ object Filtering : TemplateGroupBase() { var count = 0 val list = ArrayList(n) for (item in this) { - if (count++ == n) - break list.add(item) + if (++count == n) + break } return list """