(Object key, Object val)
| 225 | } |
| 226 | |
| 227 | public IPersistentMap assocEx(Object key, Object val) { |
| 228 | int i = indexOf(key); |
| 229 | Object[] newArray; |
| 230 | if(i >= 0) |
| 231 | { |
| 232 | throw Util.runtimeException("Key already present"); |
| 233 | } |
| 234 | else //didn't have key, grow |
| 235 | { |
| 236 | if(array.length >= HASHTABLE_THRESHOLD) |
| 237 | return createHT(array).assocEx(key, val); |
| 238 | newArray = new Object[array.length + 2]; |
| 239 | if(array.length > 0) |
| 240 | System.arraycopy(array, 0, newArray, 2, array.length); |
| 241 | newArray[0] = key; |
| 242 | newArray[1] = val; |
| 243 | } |
| 244 | return create(newArray); |
| 245 | } |
| 246 | |
| 247 | public IPersistentMap assoc(Object key, Object val){ |
| 248 | int i = indexOf(key); |
nothing calls this directly
no test coverage detected