base/common/src/main/com/thesett/common/util/maps/SequentialCuckooFunction.java
private int hash32shift(int key)
    {
        key += hash2seed;
        key = ~key + (key << 15);
        key = key ^ (key >>> 12);
        key = key + (key << 2);
        key = key ^ (key >>> 4);
        key = key * 2057;
        key = key ^ (key >>> 16);

        return key;
    }
private int hash32shift(int key)
    {
        key += hash2seed;
        key = ~key + (key << 15);
        key = key ^ (key >>> 12);
        key = key + (key << 2);
        key = key ^ (key >>> 4);
        key = key * 2057;
        key = key ^ (key >>> 16);

        return key;
    }
private int hash32shift ( int key ) { key += hash2seed ; key = ~ key + ( key << 15 ) ; key = key ^ ( key >>> 12 ) ; key = key + ( key << 2 ) ; key = key ^ ( key >>> 4 ) ; key = key * 2057 ; key = key ^ ( key >>> 16 ) ; return key ; }
Thomas Wang's 32-bit shift hash function. <a href="http://www.concentric.net/~Ttwang/tech/inthash.htm"/>
http://www.concentric.net/~Ttwang/tech/inthash.htm</a>

@param  key The integer to compute a hash of.

@return A hash of the integer.
Thomas Wang s 32 - bit shift hash function . <a href = http : // www . concentric . net / ~Ttwang / tech / inthash . htm / > http : // www . concentric . net / ~Ttwang / tech / inthash . htm< / a >