package org.eclipse.collections.api.map.primitive;
import org.eclipse.collections.api.ByteIterable;
import org.eclipse.collections.api.block.function.primitive.ByteToIntFunction;
import org.eclipse.collections.api.block.function.primitive.IntFunction;
import org.eclipse.collections.api.block.function.primitive.IntFunction0;
import org.eclipse.collections.api.block.function.primitive.IntToIntFunction;
import org.eclipse.collections.api.block.predicate.primitive.ByteIntPredicate;
import org.eclipse.collections.api.tuple.primitive.ByteIntPair;
public interface MutableByteIntMap extends ByteIntMap, MutableIntValuesMap
{
void put(byte key, int value);
default void putPair(ByteIntPair keyValuePair)
{
this.put(keyValuePair.getOne(), keyValuePair.getTwo());
}
void putAll(ByteIntMap map);
void removeKey(byte key);
void remove(byte key);
int removeKeyIfAbsent(byte key, int value);
int getIfAbsentPut(byte key, int value);
int getIfAbsentPut(byte key, IntFunction0 function);
int getIfAbsentPutWithKey(byte key, ByteToIntFunction function);
<P> int getIfAbsentPutWith(byte key, IntFunction<? super P> function, P parameter);
int updateValue(byte key, int initialValueIfAbsent, IntToIntFunction function);
@Override
MutableIntByteMap flipUniqueValues();
@Override
MutableByteIntMap select(ByteIntPredicate predicate);
@Override
MutableByteIntMap reject(ByteIntPredicate predicate);
MutableByteIntMap withKeyValue(byte key, int value);
MutableByteIntMap withoutKey(byte key);
MutableByteIntMap withoutAllKeys(ByteIterable keys);
MutableByteIntMap asUnmodifiable();
MutableByteIntMap asSynchronized();
int addToValue(byte key, int toBeAdded);
}