/** {@inheritDoc} */ @Override public int replace(final int 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} */
/** {@inheritDoc} */ @Override public boolean replace(final int 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} */
@Override public int put(final int k, final int v) { final int pos = find(k); if (pos < 0) { insert(-pos - 1, k, v); return defRetValue; } final int oldValue = value[pos]; value[pos] = v; return oldValue; } private int addToValue(final int pos, final int incr) {
/** {@inheritDoc} */ @Override public int putIfAbsent(final int k, final int v) { final int pos = find(k); if (pos >= 0) return value[pos]; insert(-pos - 1, k, v); return defRetValue; } /** {@inheritDoc} */
/** {@inheritDoc} */ @Override public int computeIfAbsentNullable(final int k, final java.util.function.IntFunction<? extends Integer> mappingFunction) { java.util.Objects.requireNonNull(mappingFunction); final int pos = find(k); if (pos >= 0) return value[pos]; final Integer newValue = mappingFunction.apply(k); if (newValue == null) return defRetValue; final int v = (newValue).intValue(); insert(-pos - 1, k, v); return v; } /** {@inheritDoc} */
/** {@inheritDoc} */ @Override public int computeIfAbsent(final int k, final java.util.function.IntUnaryOperator 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} */
/** {@inheritDoc} */ @Override public int computeIfPresent(final int k, 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) return defRetValue; final Integer newValue = remappingFunction.apply(Integer.valueOf(k), Integer.valueOf(value[pos])); if (newValue == null) { if (((k) == (0))) removeNullEntry(); else removeEntry(pos); return defRetValue; } return value[pos] = (newValue).intValue(); } /** {@inheritDoc} */
/** {@inheritDoc} */ @Override public int merge(final int 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) == (0))) removeNullEntry(); else removeEntry(pos); return defRetValue; } return value[pos] = (newValue).intValue(); } /*
/** {@inheritDoc} */ @Override public int compute(final int k, final java.util.function.BiFunction<? super Integer, ? super Integer, ? extends Integer> remappingFunction) { java.util.Objects.requireNonNull(remappingFunction); final int pos = find(k); final Integer newValue = remappingFunction.apply(Integer.valueOf(k), pos >= 0 ? Integer.valueOf(value[pos]) : null); if (newValue == null) { if (pos >= 0) { if (((k) == (0))) 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} */