package org.eclipse.collections.api.map.primitive;
import org.eclipse.collections.api.IntIterable;
import org.eclipse.collections.api.block.function.primitive.IntToLongFunction;
import org.eclipse.collections.api.block.function.primitive.LongFunction;
import org.eclipse.collections.api.block.function.primitive.LongFunction0;
import org.eclipse.collections.api.block.function.primitive.LongToLongFunction;
import org.eclipse.collections.api.block.predicate.primitive.IntLongPredicate;
import org.eclipse.collections.api.tuple.primitive.IntLongPair;
public interface MutableIntLongMap extends IntLongMap, MutableLongValuesMap
{
void put(int key, long value);
default void putPair(IntLongPair keyValuePair)
{
this.put(keyValuePair.getOne(), keyValuePair.getTwo());
}
void putAll(IntLongMap map);
void removeKey(int key);
void remove(int key);
long removeKeyIfAbsent(int key, long value);
long getIfAbsentPut(int key, long value);
long getIfAbsentPut(int key, LongFunction0 function);
long getIfAbsentPutWithKey(int key, IntToLongFunction function);
<P> long getIfAbsentPutWith(int key, LongFunction<? super P> function, P parameter);
long updateValue(int key, long initialValueIfAbsent, LongToLongFunction function);
@Override
MutableLongIntMap flipUniqueValues();
@Override
MutableIntLongMap select(IntLongPredicate predicate);
@Override
MutableIntLongMap reject(IntLongPredicate predicate);
MutableIntLongMap withKeyValue(int key, long value);
MutableIntLongMap withoutKey(int key);
MutableIntLongMap withoutAllKeys(IntIterable keys);
MutableIntLongMap asUnmodifiable();
MutableIntLongMap asSynchronized();
long addToValue(int key, long toBeAdded);
}