diff options
| author | 2016-10-30 23:37:29 +0100 | |
|---|---|---|
| committer | 2016-10-30 23:37:29 +0100 | |
| commit | 6235bfc5ab85cdd471e315c52c413991fb9dbddf (patch) | |
| tree | f8d726850a60786176f999952c2e9f7c83e5ccbd /src/main/java/cuchaz/enigma/Deobfuscator.java | |
| parent | Fix order of packages, hanging of Enigma and classes nodes not renamed when p... (diff) | |
| download | enigma-fork-6235bfc5ab85cdd471e315c52c413991fb9dbddf.tar.gz enigma-fork-6235bfc5ab85cdd471e315c52c413991fb9dbddf.tar.xz enigma-fork-6235bfc5ab85cdd471e315c52c413991fb9dbddf.zip | |
BREAKING CHANGE: Implement modifier transformer
Known Bugs:
- Inner class modifier isn't saved to mapping
- Inner class modifier isn't applied to bytecode
Diffstat (limited to 'src/main/java/cuchaz/enigma/Deobfuscator.java')
| -rw-r--r-- | src/main/java/cuchaz/enigma/Deobfuscator.java | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/main/java/cuchaz/enigma/Deobfuscator.java b/src/main/java/cuchaz/enigma/Deobfuscator.java index ca38754..fe0e31d 100644 --- a/src/main/java/cuchaz/enigma/Deobfuscator.java +++ b/src/main/java/cuchaz/enigma/Deobfuscator.java | |||
| @@ -607,4 +607,25 @@ public class Deobfuscator { | |||
| 607 | // clear caches | 607 | // clear caches |
| 608 | this.translatorCache.clear(); | 608 | this.translatorCache.clear(); |
| 609 | } | 609 | } |
| 610 | |||
| 611 | public void changeModifier(Entry entry, Mappings.EntryModifier modifierEntry) | ||
| 612 | { | ||
| 613 | Entry obfEntry = obfuscateEntry(entry); | ||
| 614 | if (obfEntry instanceof ClassEntry) | ||
| 615 | this.renamer.setClassModifier((ClassEntry) obfEntry, modifierEntry); | ||
| 616 | else if (obfEntry instanceof FieldEntry) | ||
| 617 | this.renamer.setFieldModifier((FieldEntry) obfEntry, modifierEntry); | ||
| 618 | else if (obfEntry instanceof BehaviorEntry) | ||
| 619 | this.renamer.setMethodModifier((BehaviorEntry) obfEntry, modifierEntry); | ||
| 620 | else | ||
| 621 | throw new Error("Unknown entry type: " + obfEntry); | ||
| 622 | } | ||
| 623 | |||
| 624 | public Mappings.EntryModifier getModifier(Entry obEntry) | ||
| 625 | { | ||
| 626 | Entry entry = obfuscateEntry(obEntry); | ||
| 627 | if (entry != null) | ||
| 628 | obEntry = entry; | ||
| 629 | return getTranslator(TranslationDirection.Deobfuscating).getModifier(obEntry); | ||
| 630 | } | ||
| 610 | } | 631 | } |