summaryrefslogtreecommitdiff
path: root/enigma/src/main
diff options
context:
space:
mode:
authorGravatar Joseph Burton2025-10-16 18:26:55 +0100
committerGravatar GitHub2025-10-16 18:26:55 +0100
commit64b1408b96d1ca115f705c8ec59c3bc4c1e82780 (patch)
tree955f64e1bd53a42404c13fbe5b65ff1e2192fa08 /enigma/src/main
parentBump version (diff)
downloadenigma-fork-64b1408b96d1ca115f705c8ec59c3bc4c1e82780.tar.gz
enigma-fork-64b1408b96d1ca115f705c8ec59c3bc4c1e82780.tar.xz
enigma-fork-64b1408b96d1ca115f705c8ec59c3bc4c1e82780.zip
Color unobfuscated tokens in blue (#569)
Diffstat (limited to 'enigma/src/main')
-rw-r--r--enigma/src/main/java/cuchaz/enigma/source/DecompiledClassSource.java13
-rw-r--r--enigma/src/main/java/cuchaz/enigma/source/RenamableTokenType.java3
2 files changed, 14 insertions, 2 deletions
diff --git a/enigma/src/main/java/cuchaz/enigma/source/DecompiledClassSource.java b/enigma/src/main/java/cuchaz/enigma/source/DecompiledClassSource.java
index 4f78e9c..69692db 100644
--- a/enigma/src/main/java/cuchaz/enigma/source/DecompiledClassSource.java
+++ b/enigma/src/main/java/cuchaz/enigma/source/DecompiledClassSource.java
@@ -12,6 +12,7 @@ import cuchaz.enigma.EnigmaProject;
12import cuchaz.enigma.EnigmaServices; 12import cuchaz.enigma.EnigmaServices;
13import cuchaz.enigma.analysis.EntryReference; 13import cuchaz.enigma.analysis.EntryReference;
14import cuchaz.enigma.api.service.NameProposalService; 14import cuchaz.enigma.api.service.NameProposalService;
15import cuchaz.enigma.api.service.ObfuscationTestService;
15import cuchaz.enigma.translation.LocalNameGenerator; 16import cuchaz.enigma.translation.LocalNameGenerator;
16import cuchaz.enigma.translation.TranslateResult; 17import cuchaz.enigma.translation.TranslateResult;
17import cuchaz.enigma.translation.Translator; 18import cuchaz.enigma.translation.Translator;
@@ -72,7 +73,11 @@ public class DecompiledClassSource {
72 return proposedName.get(); 73 return proposedName.get();
73 } 74 }
74 75
75 target.add(RenamableTokenType.OBFUSCATED, movedToken); 76 if (isUnobfuscated(project, entry)) {
77 target.add(RenamableTokenType.UNOBFUSCATED, movedToken);
78 } else {
79 target.add(RenamableTokenType.OBFUSCATED, movedToken);
80 }
76 } 81 }
77 } 82 }
78 83
@@ -96,6 +101,12 @@ public class DecompiledClassSource {
96 }).findFirst(); 101 }).findFirst();
97 } 102 }
98 103
104 private static boolean isUnobfuscated(EnigmaProject project, Entry<?> entry) {
105 EnigmaServices services = project.getEnigma().getServices();
106
107 return services.get(ObfuscationTestService.TYPE).stream().anyMatch(service -> service.testDeobfuscated(entry));
108 }
109
99 @Nullable 110 @Nullable
100 private String generateDefaultName(Entry<?> entry) { 111 private String generateDefaultName(Entry<?> entry) {
101 if (entry instanceof LocalVariableDefEntry) { 112 if (entry instanceof LocalVariableDefEntry) {
diff --git a/enigma/src/main/java/cuchaz/enigma/source/RenamableTokenType.java b/enigma/src/main/java/cuchaz/enigma/source/RenamableTokenType.java
index c63aad9..aad3ada 100644
--- a/enigma/src/main/java/cuchaz/enigma/source/RenamableTokenType.java
+++ b/enigma/src/main/java/cuchaz/enigma/source/RenamableTokenType.java
@@ -3,5 +3,6 @@ package cuchaz.enigma.source;
3public enum RenamableTokenType { 3public enum RenamableTokenType {
4 OBFUSCATED, 4 OBFUSCATED,
5 DEOBFUSCATED, 5 DEOBFUSCATED,
6 PROPOSED 6 PROPOSED,
7 UNOBFUSCATED,
7} 8}