summaryrefslogtreecommitdiff
path: root/src/main/java/cuchaz/enigma/translation/mapping/EntryMap.java
blob: 6af484669fd3882fe15d92a0ca441ed752c60ca5 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
package cuchaz.enigma.translation.mapping;

import cuchaz.enigma.translation.representation.entry.Entry;

import javax.annotation.Nullable;
import java.util.Collection;

public interface EntryMap<T> {
	void insert(Entry<?> entry, T value);

	@Nullable
	T remove(Entry<?> entry);

	@Nullable
	T get(Entry<?> entry);

	default boolean contains(Entry<?> entry) {
		return get(entry) != null;
	}

	Collection<Entry<?>> getAllEntries();

	boolean isEmpty();
}