summaryrefslogtreecommitdiff
path: root/src/main/java/cuchaz/enigma/analysis/EntryRenamer.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/cuchaz/enigma/analysis/EntryRenamer.java')
-rw-r--r--src/main/java/cuchaz/enigma/analysis/EntryRenamer.java52
1 files changed, 4 insertions, 48 deletions
diff --git a/src/main/java/cuchaz/enigma/analysis/EntryRenamer.java b/src/main/java/cuchaz/enigma/analysis/EntryRenamer.java
index 9a85f6e..f0e7306 100644
--- a/src/main/java/cuchaz/enigma/analysis/EntryRenamer.java
+++ b/src/main/java/cuchaz/enigma/analysis/EntryRenamer.java
@@ -57,35 +57,6 @@ public class EntryRenamer {
57 } 57 }
58 58
59 @SuppressWarnings("unchecked") 59 @SuppressWarnings("unchecked")
60 public static <T> T renameMethodsInThing(Map<MethodEntry, MethodEntry> renames, T thing) {
61 if (thing instanceof MethodEntry) {
62 MethodEntry methodEntry = (MethodEntry) thing;
63 MethodEntry newMethodEntry = renames.get(methodEntry);
64 if (newMethodEntry != null) {
65 return (T) new MethodEntry(
66 methodEntry.getClassEntry(),
67 newMethodEntry.getName(),
68 methodEntry.getSignature()
69 );
70 }
71 return thing;
72 } else if (thing instanceof ArgumentEntry) {
73 ArgumentEntry argumentEntry = (ArgumentEntry) thing;
74 return (T) new ArgumentEntry(
75 renameMethodsInThing(renames, argumentEntry.getBehaviorEntry()),
76 argumentEntry.getIndex(),
77 argumentEntry.getName()
78 );
79 } else if (thing instanceof EntryReference) {
80 EntryReference<Entry, Entry> reference = (EntryReference<Entry, Entry>) thing;
81 reference.entry = renameMethodsInThing(renames, reference.entry);
82 reference.context = renameMethodsInThing(renames, reference.context);
83 return thing;
84 }
85 return thing;
86 }
87
88 @SuppressWarnings("unchecked")
89 public static <T> T renameClassesInThing(final Map<String, String> renames, T thing) { 60 public static <T> T renameClassesInThing(final Map<String, String> renames, T thing) {
90 if (thing instanceof String) { 61 if (thing instanceof String) {
91 String stringEntry = (String) thing; 62 String stringEntry = (String) thing;
@@ -97,31 +68,16 @@ public class EntryRenamer {
97 return (T) new ClassEntry(renameClassesInThing(renames, classEntry.getClassName())); 68 return (T) new ClassEntry(renameClassesInThing(renames, classEntry.getClassName()));
98 } else if (thing instanceof FieldEntry) { 69 } else if (thing instanceof FieldEntry) {
99 FieldEntry fieldEntry = (FieldEntry) thing; 70 FieldEntry fieldEntry = (FieldEntry) thing;
100 return (T) new FieldEntry( 71 return (T) new FieldEntry(renameClassesInThing(renames, fieldEntry.getClassEntry()), fieldEntry.getName(), renameClassesInThing(renames, fieldEntry.getType()));
101 renameClassesInThing(renames, fieldEntry.getClassEntry()),
102 fieldEntry.getName(),
103 renameClassesInThing(renames, fieldEntry.getType())
104 );
105 } else if (thing instanceof ConstructorEntry) { 72 } else if (thing instanceof ConstructorEntry) {
106 ConstructorEntry constructorEntry = (ConstructorEntry) thing; 73 ConstructorEntry constructorEntry = (ConstructorEntry) thing;
107 return (T) new ConstructorEntry( 74 return (T) new ConstructorEntry(renameClassesInThing(renames, constructorEntry.getClassEntry()), renameClassesInThing(renames, constructorEntry.getSignature()));
108 renameClassesInThing(renames, constructorEntry.getClassEntry()),
109 renameClassesInThing(renames, constructorEntry.getSignature())
110 );
111 } else if (thing instanceof MethodEntry) { 75 } else if (thing instanceof MethodEntry) {
112 MethodEntry methodEntry = (MethodEntry) thing; 76 MethodEntry methodEntry = (MethodEntry) thing;
113 return (T) new MethodEntry( 77 return (T) new MethodEntry(renameClassesInThing(renames, methodEntry.getClassEntry()), methodEntry.getName(), renameClassesInThing(renames, methodEntry.getSignature()));
114 renameClassesInThing(renames, methodEntry.getClassEntry()),
115 methodEntry.getName(),
116 renameClassesInThing(renames, methodEntry.getSignature())
117 );
118 } else if (thing instanceof ArgumentEntry) { 78 } else if (thing instanceof ArgumentEntry) {
119 ArgumentEntry argumentEntry = (ArgumentEntry) thing; 79 ArgumentEntry argumentEntry = (ArgumentEntry) thing;
120 return (T) new ArgumentEntry( 80 return (T) new ArgumentEntry(renameClassesInThing(renames, argumentEntry.getBehaviorEntry()), argumentEntry.getIndex(), argumentEntry.getName());
121 renameClassesInThing(renames, argumentEntry.getBehaviorEntry()),
122 argumentEntry.getIndex(),
123 argumentEntry.getName()
124 );
125 } else if (thing instanceof EntryReference) { 81 } else if (thing instanceof EntryReference) {
126 EntryReference<Entry, Entry> reference = (EntryReference<Entry, Entry>) thing; 82 EntryReference<Entry, Entry> reference = (EntryReference<Entry, Entry>) thing;
127 reference.entry = renameClassesInThing(renames, reference.entry); 83 reference.entry = renameClassesInThing(renames, reference.entry);