< prev index next >

src/jdk/nashorn/internal/objects/NativeArguments.java

Print this page




 111     /**
 112      * setArgument is used for named argument set.
 113      */
 114     @Override
 115     public void setArgument(final int key, final Object value) {
 116         assert key >= 0 && key < numParams : "invalid argument index";
 117         if (isMapped(key)) {
 118             setArray(getArray().set(key, value, false));
 119         } else {
 120             setUnmappedArg(key, value);
 121         }
 122     }
 123 
 124     @Override
 125     public boolean delete(final int key, final boolean strict) {
 126         final int index = ArrayIndex.getArrayIndex(key);
 127         return isMapped(index) ? deleteMapped(index, strict) : super.delete(key, strict);
 128     }
 129 
 130     @Override
 131     public boolean delete(final long key, final boolean strict) {
 132         final int index = ArrayIndex.getArrayIndex(key);
 133         return isMapped(index) ? deleteMapped(index, strict) : super.delete(key, strict);
 134     }
 135 
 136     @Override
 137     public boolean delete(final double key, final boolean strict) {
 138         final int index = ArrayIndex.getArrayIndex(key);
 139         return isMapped(index) ? deleteMapped(index, strict) : super.delete(key, strict);
 140     }
 141 
 142     @Override
 143     public boolean delete(final Object key, final boolean strict) {
 144         final Object primitiveKey = JSType.toPrimitive(key, String.class);
 145         final int index = ArrayIndex.getArrayIndex(primitiveKey);
 146         return isMapped(index) ? deleteMapped(index, strict) : super.delete(primitiveKey, strict);
 147     }
 148 
 149     /**
 150      * ECMA 15.4.5.1 [[DefineOwnProperty]] ( P, Desc, Throw ) as specialized in
 151      * ECMA 10.6 for Arguments object.
 152      */
 153     @Override
 154     public boolean defineOwnProperty(final String key, final Object propertyDesc, final boolean reject) {
 155         final int index = ArrayIndex.getArrayIndex(key);
 156         if (index >= 0) {




 111     /**
 112      * setArgument is used for named argument set.
 113      */
 114     @Override
 115     public void setArgument(final int key, final Object value) {
 116         assert key >= 0 && key < numParams : "invalid argument index";
 117         if (isMapped(key)) {
 118             setArray(getArray().set(key, value, false));
 119         } else {
 120             setUnmappedArg(key, value);
 121         }
 122     }
 123 
 124     @Override
 125     public boolean delete(final int key, final boolean strict) {
 126         final int index = ArrayIndex.getArrayIndex(key);
 127         return isMapped(index) ? deleteMapped(index, strict) : super.delete(key, strict);
 128     }
 129 
 130     @Override






 131     public boolean delete(final double key, final boolean strict) {
 132         final int index = ArrayIndex.getArrayIndex(key);
 133         return isMapped(index) ? deleteMapped(index, strict) : super.delete(key, strict);
 134     }
 135 
 136     @Override
 137     public boolean delete(final Object key, final boolean strict) {
 138         final Object primitiveKey = JSType.toPrimitive(key, String.class);
 139         final int index = ArrayIndex.getArrayIndex(primitiveKey);
 140         return isMapped(index) ? deleteMapped(index, strict) : super.delete(primitiveKey, strict);
 141     }
 142 
 143     /**
 144      * ECMA 15.4.5.1 [[DefineOwnProperty]] ( P, Desc, Throw ) as specialized in
 145      * ECMA 10.6 for Arguments object.
 146      */
 147     @Override
 148     public boolean defineOwnProperty(final String key, final Object propertyDesc, final boolean reject) {
 149         final int index = ArrayIndex.getArrayIndex(key);
 150         if (index >= 0) {


< prev index next >