protected void addMapping(int hashIndex, int hashCode, K key, V value) {
        modCount++;
        HashEntry<K, V> entry = createEntry(data[hashIndex], hashCode, key, value);
        addEntry(entry, hashIndex);
        size++;
        checkCapacity();
    }
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/common/collections/map/AbstractHashedMap.java