summaryrefslogtreecommitdiff
path: root/src/cuchaz/enigma/convert/ClassForest.java
diff options
context:
space:
mode:
authorGravatar jeff2015-02-28 18:00:25 -0500
committerGravatar jeff2015-02-28 18:00:25 -0500
commit741e3472f76d959645ee0e025547d69a03e5b6f2 (patch)
treeda17641de8b891721e435636edbf7a5077d9e6ec /src/cuchaz/enigma/convert/ClassForest.java
parentignore more harmless exceptions from the buggy highlight painter system (diff)
downloadenigma-fork-741e3472f76d959645ee0e025547d69a03e5b6f2.tar.gz
enigma-fork-741e3472f76d959645ee0e025547d69a03e5b6f2.tar.xz
enigma-fork-741e3472f76d959645ee0e025547d69a03e5b6f2.zip
fix up conversion tool to handle Minecraft 1.8.3
Diffstat (limited to 'src/cuchaz/enigma/convert/ClassForest.java')
-rw-r--r--src/cuchaz/enigma/convert/ClassForest.java50
1 files changed, 50 insertions, 0 deletions
diff --git a/src/cuchaz/enigma/convert/ClassForest.java b/src/cuchaz/enigma/convert/ClassForest.java
new file mode 100644
index 0000000..e113eeb
--- /dev/null
+++ b/src/cuchaz/enigma/convert/ClassForest.java
@@ -0,0 +1,50 @@
1package cuchaz.enigma.convert;
2
3import java.util.Collection;
4
5import com.google.common.collect.HashMultimap;
6import com.google.common.collect.Multimap;
7
8import cuchaz.enigma.mapping.ClassEntry;
9
10
11public class ClassForest {
12
13 private ClassIdentifier m_identifier;
14 private Multimap<ClassIdentity,ClassEntry> m_forest;
15
16 public ClassForest(ClassIdentifier identifier) {
17 m_identifier = identifier;
18 m_forest = HashMultimap.create();
19 }
20
21 public ClassIdentifier getIdentifier() {
22 return m_identifier;
23 }
24
25 public void addAll(Iterable<ClassEntry> entries) {
26 for (ClassEntry entry : entries) {
27 add(entry);
28 }
29 }
30
31 private void add(ClassEntry entry) {
32 m_forest.put(m_identifier.identify(entry), entry);
33 }
34
35 public Collection<ClassIdentity> identities() {
36 return m_forest.keySet();
37 }
38
39 public Collection<ClassEntry> classes() {
40 return m_forest.values();
41 }
42
43 public Collection<ClassEntry> getClasses(ClassIdentity identity) {
44 return m_forest.get(identity);
45 }
46
47 public boolean containsIdentity(ClassIdentity identity) {
48 return m_forest.containsKey(identity);
49 }
50}