diff options
Diffstat (limited to 'src/jdk/nashorn/internal/runtime/arrays/ObjectArrayData.java')
-rw-r--r-- | src/jdk/nashorn/internal/runtime/arrays/ObjectArrayData.java | 45 |
1 files changed, 22 insertions, 23 deletions
diff --git a/src/jdk/nashorn/internal/runtime/arrays/ObjectArrayData.java b/src/jdk/nashorn/internal/runtime/arrays/ObjectArrayData.java index 0c7f54d0..ebaa3d6d 100644 --- a/src/jdk/nashorn/internal/runtime/arrays/ObjectArrayData.java +++ b/src/jdk/nashorn/internal/runtime/arrays/ObjectArrayData.java @@ -26,7 +26,6 @@ package jdk.nashorn.internal.runtime.arrays; import static jdk.nashorn.internal.codegen.CompilerConstants.specialCall; - import java.lang.invoke.MethodHandle; import java.lang.invoke.MethodHandles; import java.util.Arrays; @@ -77,16 +76,16 @@ final class ObjectArrayData extends ContinuousArrayData implements AnyElements { @Override public ObjectArrayData copy() { - return new ObjectArrayData(array.clone(), (int)length); + return new ObjectArrayData(array.clone(), (int)length()); } @Override public Object[] asObjectArray() { - return array.length == length ? array.clone() : asObjectArrayCopy(); + return array.length == length() ? array.clone() : asObjectArrayCopy(); } private Object[] asObjectArrayCopy() { - final long len = length; + final long len = length(); assert len <= Integer.MAX_VALUE; final Object[] copy = new Object[(int)len]; System.arraycopy(array, 0, copy, 0, (int)len); @@ -105,7 +104,7 @@ final class ObjectArrayData extends ContinuousArrayData implements AnyElements { @Override public ArrayData shiftRight(final int by) { - final ArrayData newData = ensure(by + length - 1); + final ArrayData newData = ensure(by + length() - 1); if (newData != this) { newData.shiftRight(by); return newData; @@ -137,28 +136,28 @@ final class ObjectArrayData extends ContinuousArrayData implements AnyElements { @Override public ArrayData set(final int index, final Object value, final boolean strict) { array[index] = value; - setLength(Math.max(index + 1, length)); + setLength(Math.max(index + 1, length())); return this; } @Override public ArrayData set(final int index, final int value, final boolean strict) { array[index] = value; - setLength(Math.max(index + 1, length)); + setLength(Math.max(index + 1, length())); return this; } @Override public ArrayData set(final int index, final long value, final boolean strict) { array[index] = value; - setLength(Math.max(index + 1, length)); + setLength(Math.max(index + 1, length())); return this; } @Override public ArrayData set(final int index, final double value, final boolean strict) { array[index] = value; - setLength(Math.max(index + 1, length)); + setLength(Math.max(index + 1, length())); return this; } @@ -231,7 +230,7 @@ final class ObjectArrayData extends ContinuousArrayData implements AnyElements { @Override public boolean has(final int index) { - return 0 <= index && index < length; + return 0 <= index && index < length(); } @Override @@ -263,20 +262,20 @@ final class ObjectArrayData extends ContinuousArrayData implements AnyElements { @Override public long fastPush(final Object arg) { - final int len = (int)length; + final int len = (int)length(); if (len == array.length) { array = Arrays.copyOf(array, nextSize(len)); } array[len] = arg; - return ++length; + return increaseLength(); } @Override public Object fastPopObject() { - if (length == 0) { + if (length() == 0) { return ScriptRuntime.UNDEFINED; } - final int newLength = (int)--length; + final int newLength = (int)decreaseLength(); final Object elem = array[newLength]; array[newLength] = ScriptRuntime.EMPTY; return elem; @@ -284,11 +283,11 @@ final class ObjectArrayData extends ContinuousArrayData implements AnyElements { @Override public Object pop() { - if (length == 0) { + if (length() == 0) { return ScriptRuntime.UNDEFINED; } - final int newLength = (int)length - 1; + final int newLength = (int)length() - 1; final Object elem = array[newLength]; setEmpty(newLength); setLength(newLength); @@ -297,14 +296,14 @@ final class ObjectArrayData extends ContinuousArrayData implements AnyElements { @Override public ArrayData slice(final long from, final long to) { - final long start = from < 0 ? from + length : from; + final long start = from < 0 ? from + length() : from; final long newLength = to - start; return new ObjectArrayData(Arrays.copyOfRange(array, (int)from, (int)to), (int)newLength); } @Override public ArrayData push(final boolean strict, final Object item) { - final long len = length; + final long len = length(); final ArrayData newData = ensure(len); if (newData == this) { array[(int)len] = item; @@ -315,7 +314,7 @@ final class ObjectArrayData extends ContinuousArrayData implements AnyElements { @Override public ArrayData fastSplice(final int start, final int removed, final int added) throws UnsupportedOperationException { - final long oldLength = length; + final long oldLength = length(); final long newLength = oldLength - removed + added; if (newLength > SparseArrayData.MAX_DENSE_LENGTH && newLength > array.length) { throw new UnsupportedOperationException(); @@ -343,8 +342,8 @@ final class ObjectArrayData extends ContinuousArrayData implements AnyElements { @Override public ContinuousArrayData fastConcat(final ContinuousArrayData otherData) { - final int otherLength = (int)otherData.length; - final int thisLength = (int)length; + final int otherLength = (int)otherData.length(); + final int thisLength = (int)length(); assert otherLength > 0 && thisLength > 0; final Object[] otherArray = ((ObjectArrayData)otherData).array; @@ -359,7 +358,7 @@ final class ObjectArrayData extends ContinuousArrayData implements AnyElements { @Override public String toString() { - assert length <= array.length : length + " > " + array.length; - return getClass().getSimpleName() + ':' + Arrays.toString(Arrays.copyOf(array, (int)length)); + assert length() <= array.length : length() + " > " + array.length; + return getClass().getSimpleName() + ':' + Arrays.toString(Arrays.copyOf(array, (int)length())); } } |