summaryrefslogtreecommitdiff
path: root/src/main/java/cuchaz/enigma/translation/mapping/EntryMap.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/cuchaz/enigma/translation/mapping/EntryMap.java')
-rw-r--r--src/main/java/cuchaz/enigma/translation/mapping/EntryMap.java24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/main/java/cuchaz/enigma/translation/mapping/EntryMap.java b/src/main/java/cuchaz/enigma/translation/mapping/EntryMap.java
new file mode 100644
index 00000000..6af48466
--- /dev/null
+++ b/src/main/java/cuchaz/enigma/translation/mapping/EntryMap.java
@@ -0,0 +1,24 @@
1package cuchaz.enigma.translation.mapping;
2
3import cuchaz.enigma.translation.representation.entry.Entry;
4
5import javax.annotation.Nullable;
6import java.util.Collection;
7
8public interface EntryMap<T> {
9 void insert(Entry<?> entry, T value);
10
11 @Nullable
12 T remove(Entry<?> entry);
13
14 @Nullable
15 T get(Entry<?> entry);
16
17 default boolean contains(Entry<?> entry) {
18 return get(entry) != null;
19 }
20
21 Collection<Entry<?>> getAllEntries();
22
23 boolean isEmpty();
24}