< prev index next >
src/jdk/nashorn/internal/runtime/arrays/NumberArrayData.java
Print this page
@@ -119,13 +119,19 @@
}
return this;
}
@Override
- public void shiftLeft(final int by) {
+ public ArrayData shiftLeft(final int by) {
+ if (by >= length()) {
+ shrink(0);
+ } else {
System.arraycopy(array, by, array, 0, array.length - by);
}
+ setLength(Math.max(0, length() - by));
+ return this;
+ }
@Override
public ArrayData shiftRight(final int by) {
final ArrayData newData = ensure(by + length() - 1);
if (newData != this) {
< prev index next >