Skip to content
This repository was archived by the owner on Dec 22, 2021. It is now read-only.

Commit faba4cd

Browse files
committed
rename arrayCopy to copySliceToArray
1 parent 57dbc41 commit faba4cd

File tree

1 file changed

+9
-13
lines changed

1 file changed

+9
-13
lines changed

src/main/scala/strawman/collection/mutable/ArrayDeque.scala

Lines changed: 9 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -99,8 +99,8 @@ class ArrayDeque[A] private(var array: Array[AnyRef], var start: Int, var end: I
9999
// Else, either move the prefix right or the suffix left - whichever is shorter
100100
if (2*removals >= size) {
101101
val array2 = ArrayDeque.alloc(size - removals)
102-
arrayCopy(dest = array2, srcStart = 0, destStart = 0, maxItems = idx)
103-
arrayCopy(dest = array2, srcStart = idx + removals - 1, destStart = idx, maxItems = size)
102+
copySliceToArray(srcStart = 0, dest = array2, destStart = 0, maxItems = idx)
103+
copySliceToArray(srcStart = idx + removals - 1, dest = array2, destStart = idx, maxItems = size)
104104
set(array = array2, start = 0, end = size - removals)
105105
} else if (size - idx <= idx + removals) {
106106
//TODO: Instead of if in the loop, break into 2 loops
@@ -164,8 +164,7 @@ class ArrayDeque[A] private(var array: Array[AnyRef], var start: Int, var end: I
164164
} else if (len >= size) {
165165
clone()
166166
} else {
167-
val array2 = ArrayDeque.alloc(len)
168-
arrayCopy(dest = array2, srcStart = left, destStart = 0, maxItems = len)
167+
val array2 = copySliceToArray(srcStart = left, dest = ArrayDeque.alloc(len), destStart = 0, maxItems = len)
169168
new ArrayDeque(array2, 0, len)
170169
}
171170
}
@@ -178,19 +177,16 @@ class ArrayDeque[A] private(var array: Array[AnyRef], var start: Int, var end: I
178177
override def grouped(n: Int) = sliding(n, n)
179178

180179
override def copyToArray[B >: A](dest: Array[B], destStart: Int, len: Int) =
181-
arrayCopy(dest = dest, srcStart = 0, destStart = destStart, maxItems = len)
180+
copySliceToArray(srcStart = 0, dest = dest, destStart = destStart, maxItems = len)
182181

183182
override def companion = ArrayDeque
184183

185184
override def result() = this
186185

187186
override def stringPrefix = "ArrayDeque"
188187

189-
override def toArray[B >: A: ClassTag] = {
190-
val array2 = new Array[B](size)
191-
arrayCopy(dest = array2, srcStart = 0, destStart = 0, maxItems = size)
192-
array2
193-
}
188+
override def toArray[B >: A: ClassTag] =
189+
copySliceToArray(srcStart = 0, dest = new Array[B](size), destStart = 0, maxItems = size)
194190

195191
/**
196192
* This is a more general version of copyToArray - this also accepts a srcStart unlike copyToArray
@@ -202,7 +198,7 @@ class ArrayDeque[A] private(var array: Array[AnyRef], var start: Int, var end: I
202198
* @param destStart
203199
* @param maxItems
204200
*/
205-
def arrayCopy(dest: Array[_], srcStart: Int, destStart: Int, maxItems: Int): Unit = {
201+
def copySliceToArray(srcStart: Int, dest: Array[_], destStart: Int, maxItems: Int): dest.type = {
206202
ArrayDeque.checkIndex(srcStart, this)
207203
ArrayDeque.checkIndex(destStart, dest)
208204
val toCopy = maxItems min (size - srcStart) min (dest.length - destStart)
@@ -214,6 +210,7 @@ class ArrayDeque[A] private(var array: Array[AnyRef], var start: Int, var end: I
214210
Array.copy(src = array, srcPos = 0, dest = dest, destPos = block1, length = toCopy - block1)
215211
}
216212
}
213+
dest
217214
}
218215

219216
/**
@@ -242,8 +239,7 @@ class ArrayDeque[A] private(var array: Array[AnyRef], var start: Int, var end: I
242239
}
243240

244241
private def resize(len: Int) = {
245-
val array2 = ArrayDeque.alloc(len)
246-
arrayCopy(dest = array2, srcStart = 0, destStart = 0, maxItems = size)
242+
val array2 = copySliceToArray(srcStart = 0, dest = ArrayDeque.alloc(len), destStart = 0, maxItems = size)
247243
set(array = array2, start = 0, end = size)
248244
}
249245
}

0 commit comments

Comments
 (0)