Skip to content

Commit 744e1b3

Browse files
committed
refactor: more readable
1 parent a33952c commit 744e1b3

File tree

5 files changed

+35
-14
lines changed

5 files changed

+35
-14
lines changed

src/main/java/org/jd/core/v1/ClassFileToJavaSourceDecompiler.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,12 +13,14 @@
1313
import org.jd.core.v1.model.classfile.ClassFile;
1414
import org.jd.core.v1.model.javasyntax.CompilationUnit;
1515
import org.jd.core.v1.model.message.DecompileContext;
16+
import org.jd.core.v1.model.token.Token;
1617
import org.jd.core.v1.service.converter.classfiletojavasyntax.ClassFileToJavaSyntaxProcessor;
1718
import org.jd.core.v1.service.deserializer.classfile.ClassFileDeserializer;
1819
import org.jd.core.v1.service.fragmenter.javasyntaxtojavafragment.JavaSyntaxToJavaFragmentProcessor;
1920
import org.jd.core.v1.service.layouter.LayoutFragmentProcessor;
2021
import org.jd.core.v1.service.tokenizer.javafragmenttotoken.JavaFragmentToTokenProcessor;
2122
import org.jd.core.v1.service.writer.WriteTokenProcessor;
23+
import org.jd.core.v1.util.DefaultList;
2224

2325
import java.util.Map;
2426

@@ -59,7 +61,8 @@ protected void decompile(DecompileContext decompileContext) throws Exception {
5961
CompilationUnit compilationUnit = this.converter.process(decompileContext);
6062
this.fragmenter.process(compilationUnit, decompileContext);
6163
this.layouter.process(decompileContext);
62-
this.tokenizer.process(decompileContext);
64+
DefaultList<Token> tokens = this.tokenizer.process(decompileContext.getBody());
65+
decompileContext.setTokens(tokens);
6366
this.writer.process(decompileContext);
6467
}
6568
}

src/main/java/org/jd/core/v1/service/tokenizer/javafragmenttotoken/JavaFragmentToTokenProcessor.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,9 @@
88
package org.jd.core.v1.service.tokenizer.javafragmenttotoken;
99

1010
import org.jd.core.v1.model.javafragment.JavaFragment;
11-
import org.jd.core.v1.model.message.DecompileContext;
11+
import org.jd.core.v1.model.token.Token;
1212
import org.jd.core.v1.service.tokenizer.javafragmenttotoken.visitor.TokenizeJavaFragmentVisitor;
13+
import org.jd.core.v1.util.DefaultList;
1314

1415
import java.util.List;
1516

@@ -21,15 +22,14 @@
2122
*/
2223
public class JavaFragmentToTokenProcessor {
2324

24-
public void process(DecompileContext decompileContext) throws Exception {
25-
List<JavaFragment> fragments = decompileContext.getBody();
25+
public DefaultList<Token> process(List<JavaFragment> fragments) throws Exception {
2626
TokenizeJavaFragmentVisitor visitor = new TokenizeJavaFragmentVisitor(fragments.size() * 3);
2727

2828
// Create tokens
2929
for (JavaFragment fragment : fragments) {
3030
fragment.accept(visitor);
3131
}
3232

33-
decompileContext.setTokens(visitor.getTokens());
33+
return visitor.getTokens();
3434
}
3535
}

src/test/java/org/jd/core/v1/AbstractJdTest.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,14 @@
66
import org.jd.core.v1.model.classfile.ClassFile;
77
import org.jd.core.v1.model.javasyntax.CompilationUnit;
88
import org.jd.core.v1.model.message.DecompileContext;
9+
import org.jd.core.v1.model.token.Token;
910
import org.jd.core.v1.service.converter.classfiletojavasyntax.ClassFileToJavaSyntaxProcessor;
1011
import org.jd.core.v1.service.deserializer.classfile.ClassFileDeserializer;
1112
import org.jd.core.v1.service.fragmenter.javasyntaxtojavafragment.JavaSyntaxToJavaFragmentProcessor;
1213
import org.jd.core.v1.service.layouter.LayoutFragmentProcessor;
1314
import org.jd.core.v1.service.tokenizer.javafragmenttotoken.JavaFragmentToTokenProcessor;
1415
import org.jd.core.v1.service.writer.WriteTokenProcessor;
16+
import org.jd.core.v1.util.DefaultList;
1517

1618
import java.util.Collections;
1719
import java.util.Map;
@@ -37,7 +39,8 @@ protected String decompile(Loader loader, Printer printer, String internalTypeNa
3739
CompilationUnit compilationUnit = converter.process(decompileContext);
3840
fragmenter.process(compilationUnit, decompileContext);
3941
layouter.process(decompileContext);
40-
tokenizer.process(decompileContext);
42+
DefaultList<Token> tokens = tokenizer.process(decompileContext.getBody());
43+
decompileContext.setTokens(tokens);
4144
writer.process(decompileContext);
4245

4346
String source = printer.toString();

src/test/java/org/jd/core/v1/JarFileToJavaSourceTest.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
import org.jd.core.v1.model.classfile.ClassFile;
1414
import org.jd.core.v1.model.javasyntax.CompilationUnit;
1515
import org.jd.core.v1.model.message.DecompileContext;
16+
import org.jd.core.v1.model.token.Token;
1617
import org.jd.core.v1.printer.PlainTextPrinter;
1718
import org.jd.core.v1.util.DefaultList;
1819
import org.junit.Test;
@@ -162,7 +163,8 @@ protected void test(InputStream inputStream) throws Exception {
162163
CompilationUnit compilationUnit = converter.process(decompileContext);
163164
fragmenter.process(compilationUnit, decompileContext);
164165
layouter.process(decompileContext);
165-
tokenizer.process(decompileContext);
166+
DefaultList<Token> tokens = tokenizer.process(decompileContext.getBody());
167+
decompileContext.setTokens(tokens);
166168
writer.process(decompileContext);
167169
} catch (AssertionError e) {
168170
String msg = (e.getMessage() == null) ? "<?>" : e.getMessage();

src/test/java/org/jd/core/v1/JavaSyntaxToJavaSourceTest.java

Lines changed: 20 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,13 @@
1818
import org.jd.core.v1.model.javasyntax.type.Type;
1919
import org.jd.core.v1.model.javasyntax.type.Types;
2020
import org.jd.core.v1.model.message.DecompileContext;
21+
import org.jd.core.v1.model.token.Token;
2122
import org.jd.core.v1.printer.PlainTextMetaPrinter;
2223
import org.jd.core.v1.service.fragmenter.javasyntaxtojavafragment.JavaSyntaxToJavaFragmentProcessor;
2324
import org.jd.core.v1.service.layouter.LayoutFragmentProcessor;
2425
import org.jd.core.v1.service.tokenizer.javafragmenttotoken.JavaFragmentToTokenProcessor;
2526
import org.jd.core.v1.service.writer.WriteTokenProcessor;
27+
import org.jd.core.v1.util.DefaultList;
2628
import org.junit.Assert;
2729
import org.junit.Test;
2830

@@ -153,7 +155,8 @@ public void testClassDeclaration() throws Exception {
153155

154156
fragmenter.process(compilationUnit, decompileContext);
155157
layouter.process(decompileContext);
156-
tokenizer.process(decompileContext);
158+
DefaultList<Token> tokens = tokenizer.process(decompileContext.getBody());
159+
decompileContext.setTokens(tokens);
157160
writer.process(decompileContext);
158161

159162
String source = printer.toString();
@@ -194,7 +197,9 @@ public void testInterfaceDeclaration() throws Exception {
194197

195198
fragmenter.process(compilationUnit, decompileContext);
196199
layouter.process(decompileContext);
197-
tokenizer.process(decompileContext);
200+
DefaultList<Token> tokens = tokenizer.process(decompileContext.getBody());
201+
decompileContext.setTokens(tokens);
202+
198203
writer.process(decompileContext);
199204

200205
String source = printer.toString();
@@ -245,7 +250,9 @@ public void testEnumDayDeclaration() throws Exception {
245250

246251
fragmenter.process(compilationUnit, decompileContext);
247252
layouter.process(decompileContext);
248-
tokenizer.process(decompileContext);
253+
DefaultList<Token> tokens = tokenizer.process(decompileContext.getBody());
254+
decompileContext.setTokens(tokens);
255+
249256
writer.process(decompileContext);
250257

251258
String source = printer.toString();
@@ -529,9 +536,11 @@ public void testEnumPlanetDeclaration() throws Exception {
529536
decompileContext.setMinorVersion(0);
530537

531538
fragmenter.process(compilationUnit, decompileContext);
532-
layouter.process(decompileContext);
539+
DefaultList<Token> tokens = tokenizer.process(decompileContext.getBody());
540+
decompileContext.setTokens(tokens);
541+
533542
//tokenizer.process(message);
534-
new JavaFragmentToTokenProcessor().process(decompileContext);
543+
tokens = new JavaFragmentToTokenProcessor().process(decompileContext.getBody());
535544
writer.process(decompileContext);
536545

537546
String source = printer.toString();
@@ -600,7 +609,9 @@ public void testSwitch() throws Exception {
600609

601610
fragmenter.process(compilationUnit, decompileContext);
602611
layouter.process(decompileContext);
603-
tokenizer.process(decompileContext);
612+
DefaultList<Token> tokens = tokenizer.process(decompileContext.getBody());
613+
decompileContext.setTokens(tokens);
614+
604615
writer.process(decompileContext);
605616

606617
String source = printer.toString();
@@ -657,7 +668,9 @@ public void testBridgeAndSyntheticAttributes() throws Exception {
657668

658669
fragmenter.process(compilationUnit, decompileContext);
659670
layouter.process(decompileContext);
660-
tokenizer.process(decompileContext);
671+
DefaultList<Token> tokens = tokenizer.process(decompileContext.getBody());
672+
decompileContext.setTokens(tokens);
673+
661674
writer.process(decompileContext);
662675

663676
String source = printer.toString();

0 commit comments

Comments
 (0)