summaryrefslogtreecommitdiff
path: root/src/cuchaz/enigma/analysis/Ancestries.java
diff options
context:
space:
mode:
authorGravatar hg2014-08-17 10:56:17 -0400
committerGravatar hg2014-08-17 10:56:17 -0400
commit6c4440ac1133bfaa7871d1049d174528a289ef30 (patch)
treefe1142b285c5e43dbd3afe8dd3eb0189f027c6a6 /src/cuchaz/enigma/analysis/Ancestries.java
parenttrying to get inner/anonymous classes working... I have a working heuristic i... (diff)
downloadenigma-fork-6c4440ac1133bfaa7871d1049d174528a289ef30.tar.gz
enigma-fork-6c4440ac1133bfaa7871d1049d174528a289ef30.tar.xz
enigma-fork-6c4440ac1133bfaa7871d1049d174528a289ef30.zip
added support for automatic reconstruction of inner and anonymous classes
also added class to restore bridge method flags taken out by the obfuscator
Diffstat (limited to 'src/cuchaz/enigma/analysis/Ancestries.java')
-rw-r--r--src/cuchaz/enigma/analysis/Ancestries.java20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/cuchaz/enigma/analysis/Ancestries.java b/src/cuchaz/enigma/analysis/Ancestries.java
index 83c239c..b9d8cbf 100644
--- a/src/cuchaz/enigma/analysis/Ancestries.java
+++ b/src/cuchaz/enigma/analysis/Ancestries.java
@@ -47,6 +47,26 @@ public class Ancestries implements Serializable
47 } 47 }
48 } 48 }
49 49
50 public void renameClasses( Map<String,String> renames )
51 {
52 Map<String,String> newSuperclasses = Maps.newHashMap();
53 for( Map.Entry<String,String> entry : m_superclasses.entrySet() )
54 {
55 String subclass = renames.get( entry.getKey() );
56 if( subclass == null )
57 {
58 subclass = entry.getKey();
59 }
60 String superclass = renames.get( entry.getValue() );
61 if( superclass == null )
62 {
63 superclass = entry.getValue();
64 }
65 newSuperclasses.put( subclass, superclass );
66 }
67 m_superclasses = newSuperclasses;
68 }
69
50 public String getSuperclassName( String className ) 70 public String getSuperclassName( String className )
51 { 71 {
52 return m_superclasses.get( className ); 72 return m_superclasses.get( className );