Skip to content

Commit 08a7f8d

Browse files
author
Antoine Brunner
committed
Replace itToArray by Iterator.copyToArray
1 parent 2f09cf1 commit 08a7f8d

File tree

1 file changed

+7
-5
lines changed

1 file changed

+7
-5
lines changed

library/src/scala/runtime/DynamicTuple.scala

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -275,7 +275,8 @@ object DynamicTuple {
275275
xxl.elems.asInstanceOf[Array[Object]].take(actualN)
276276
case _ =>
277277
val arr = new Array[Object](actualN)
278-
itToArray(self.asInstanceOf[Product].productIterator, actualN, arr, 0)
278+
self.asInstanceOf[Product].productIterator.asInstanceOf[Iterator[Object]]
279+
.copyToArray(arr, 0, actualN)
279280
arr
280281
}
281282
dynamicFromIArray(arr.asInstanceOf[IArray[Object]]).asInstanceOf[Result]
@@ -294,7 +295,8 @@ object DynamicTuple {
294295
case _ =>
295296
val rem = size - actualN
296297
val arr = new Array[Object](rem)
297-
itToArray(self.asInstanceOf[Product].productIterator.drop(actualN), rem, arr, 0)
298+
self.asInstanceOf[Product].productIterator.asInstanceOf[Iterator[Object]]
299+
.drop(actualN).copyToArray(arr, 0, rem)
298300
arr
299301
}
300302
dynamicFromIArray(arr.asInstanceOf[IArray[Object]]).asInstanceOf[Result]
@@ -313,9 +315,9 @@ object DynamicTuple {
313315
case _ =>
314316
val arr1 = new Array[Object](actualN)
315317
val arr2 = new Array[Object](size - actualN)
316-
val it = self.asInstanceOf[Product].productIterator
317-
itToArray(it, actualN, arr1, 0)
318-
itToArray(it, size - actualN, arr2, 0)
318+
val it = self.asInstanceOf[Product].productIterator.asInstanceOf[Iterator[Object]]
319+
it.copyToArray(arr1, 0, actualN)
320+
it.copyToArray(arr2, 0, size - actualN)
319321
(arr1, arr2)
320322
}
321323
(

0 commit comments

Comments
 (0)