protected ArrayMapEntryMemory addMapping(int hashIndex, int hashCode, Object key, Memory value) {
        modCount++;
        ArrayMapEntryMemory entry = new ArrayMapEntryMemory(data[hashIndex], hashCode, key, value);
        addEntry(entry, hashIndex);
        size++;
        checkCapacity();

        return entry;
    }
Adds a new key-value mapping into this map.
<p/>
This implementation calls <code>createEntry()</code>, <code>addEntry()</code>
and <code>checkCapacity()</code>.
It also handles changes to <code>modCount</code> and <code>size</code>.
Subclasses could override to fully control adds to the map.

@param hashIndex the index into the data array to store at
@param hashCode  the hash code of the key to add
@param key       the key to add
@param value     the value to add
jphp-runtime/src/php/runtime/memory/support/ArrayMemoryMap.java