@Override public void clear() { Reference2IntLinkedOpenHashMap.this.clear(); } /** {@inheritDoc} */
@Override public boolean contains(int v) { return containsValue(v); } @Override
private int removeNullEntry() { containsNullKey = false; key[n] = null; final int oldValue = value[n]; size--; fixPointers(n); if (n > minN && size < maxFill / 4 && n > DEFAULT_INITIAL_SIZE) rehash(n / 2); return oldValue; } @Override
private int removeEntry(final int pos) { final int oldValue = value[pos]; size--; fixPointers(pos); shiftKeys(pos); if (n > minN && size < maxFill / 4 && n > DEFAULT_INITIAL_SIZE) rehash(n / 2); return oldValue; } private int removeNullEntry() {
/** Creates a new term-collection visitor. */ public TermCollectionVisitor() { index2termMap = new Reference2ObjectOpenHashMap<Index,Object2IntMap<String>>(); indexMap = new Reference2IntLinkedOpenHashMap<Index>( Hash.DEFAULT_INITIAL_SIZE, .5f ); term2Id = new Object2IntLinkedOpenHashMap<String>(); term2Id.defaultReturnValue( -1 ); }
/** {@inheritDoc} */ @Override public int mergeInt(final K k, final int v, final java.util.function.BiFunction<? super Integer, ? super Integer, ? extends Integer> remappingFunction) { java.util.Objects.requireNonNull(remappingFunction); final int pos = find(k); if (pos < 0) { insert(-pos - 1, k, v); return v; } final Integer newValue = remappingFunction.apply(Integer.valueOf(value[pos]), Integer.valueOf(v)); if (newValue == null) { if (((k) == (null))) removeNullEntry(); else removeEntry(pos); return defRetValue; } return value[pos] = (newValue).intValue(); } /*
@Override public void putAll(Map<? extends K, ? extends Integer> m) { if (f <= .5) ensureCapacity(m.size()); // The resulting map will be sized for m.size() elements else tryCapacity(size() + m.size()); // The resulting map will be tentatively sized for size() + m.size() // elements super.putAll(m); } @SuppressWarnings("unchecked")
/** {@inheritDoc} */ @Override public int computeIntIfPresent(final K k, final java.util.function.BiFunction<? super K, ? super Integer, ? extends Integer> remappingFunction) { java.util.Objects.requireNonNull(remappingFunction); final int pos = find(k); if (pos < 0) return defRetValue; final Integer newValue = remappingFunction.apply((k), Integer.valueOf(value[pos])); if (newValue == null) { if (((k) == (null))) removeNullEntry(); else removeEntry(pos); return defRetValue; } return value[pos] = (newValue).intValue(); } /** {@inheritDoc} */
if (((k) == (null))) { if (containsNullKey) return addToValue(n, incr); pos = n; containsNullKey = true; & mask]) == (null))) { if (((curr) == (k))) return addToValue(pos, incr); while (!((curr = key[pos = (pos + 1) & mask]) == (null))) if (((curr) == (k))) return addToValue(pos, incr); rehash(arraySize(size + 1, f)); if (ASSERTS) checkTable();
/** {@inheritDoc} */ @Override public boolean replace(final K k, final int oldValue, final int v) { final int pos = find(k); if (pos < 0 || !((oldValue) == (value[pos]))) return false; value[pos] = v; return true; } /** {@inheritDoc} */
/** * Shifts left entries with the specified hash code, starting at the specified * position, and empties the resulting free entry. * * @param pos * a starting position. */ protected final void shiftKeys(int pos) { // Shift entries with the same hash. int last, slot; K curr; final K[] key = this.key; for (;;) { pos = ((last = pos) + 1) & mask; for (;;) { if (((curr = key[pos]) == (null))) { key[last] = (null); return; } slot = (it.unimi.dsi.fastutil.HashCommon.mix(System.identityHashCode(curr))) & mask; if (last <= pos ? last >= slot || slot > pos : last >= slot && slot > pos) break; pos = (pos + 1) & mask; } key[last] = curr; value[last] = value[pos]; fixPointers(pos, last); } } @Override
/** Creates a new term-collection visitor. */ public TermCollectionVisitor() { index2termMap = new Reference2ObjectOpenHashMap<Index,Object2IntMap<String>>(); indexMap = new Reference2IntLinkedOpenHashMap<Index>( Hash.DEFAULT_INITIAL_SIZE, .5f ); term2Id = new Object2IntLinkedOpenHashMap<String>(); term2Id.defaultReturnValue( -1 ); }
/** {@inheritDoc} */ @Override public int computeInt(final K k, final java.util.function.BiFunction<? super K, ? super Integer, ? extends Integer> remappingFunction) { java.util.Objects.requireNonNull(remappingFunction); final int pos = find(k); final Integer newValue = remappingFunction.apply((k), pos >= 0 ? Integer.valueOf(value[pos]) : null); if (newValue == null) { if (pos >= 0) { if (((k) == (null))) removeNullEntry(); else removeEntry(pos); } return defRetValue; } int newVal = (newValue).intValue(); if (pos < 0) { insert(-pos - 1, k, newVal); return newVal; } return value[pos] = newVal; } /** {@inheritDoc} */
/** {@inheritDoc} */ @Override public int replace(final K k, final int v) { final int pos = find(k); if (pos < 0) return defRetValue; final int oldValue = value[pos]; value[pos] = v; return oldValue; } /** {@inheritDoc} */
/** Creates a new term-collection visitor. */ public TermCollectionVisitor() { index2termMap = new Reference2ObjectOpenHashMap<Index,Object2IntMap<String>>(); indexMap = new Reference2IntLinkedOpenHashMap<Index>( Hash.DEFAULT_INITIAL_SIZE, .5f ); term2Id = new Object2IntLinkedOpenHashMap<String>(); term2Id.defaultReturnValue( -1 ); }
/** Creates a new term-collection visitor. */ public TermCollectionVisitor() { index2termMap = new Reference2ObjectOpenHashMap<Index,Object2IntMap<String>>(); indexMap = new Reference2IntLinkedOpenHashMap<Index>( Hash.DEFAULT_INITIAL_SIZE, .5f ); term2Id = new Object2IntLinkedOpenHashMap<String>(); term2Id.defaultReturnValue( -1 ); }
/** {@inheritDoc} */ @Override public int computeIntIfAbsent(final K k, final java.util.function.ToIntFunction<? super K> mappingFunction) { java.util.Objects.requireNonNull(mappingFunction); final int pos = find(k); if (pos >= 0) return value[pos]; final int newValue = mappingFunction.applyAsInt(k); insert(-pos - 1, k, newValue); return newValue; } /** {@inheritDoc} */