Skip to content

Commit 3aad2a6

Browse files
committed
Use Fernflower sources for Fernflower arguments
1 parent ee3c94a commit 3aad2a6

File tree

1 file changed

+28
-28
lines changed

1 file changed

+28
-28
lines changed

src/main/java/the/bytecode/club/jda/decompilers/FernflowerDecompiler.java

Lines changed: 28 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
import org.jetbrains.java.decompiler.main.decompiler.BaseDecompiler;
55
import org.jetbrains.java.decompiler.main.decompiler.ConsoleDecompiler;
66
import org.jetbrains.java.decompiler.main.decompiler.PrintStreamLogger;
7-
import org.jetbrains.java.decompiler.main.extern.IBytecodeProvider;
87
import org.jetbrains.java.decompiler.main.extern.IResultSaver;
98
import org.objectweb.asm.tree.ClassNode;
109
import org.objectweb.asm.tree.InnerClassNode;
@@ -14,14 +13,15 @@
1413
import the.bytecode.club.jda.settings.Setting;
1514

1615
import java.io.File;
17-
import java.io.IOException;
1816
import java.nio.file.Files;
1917
import java.nio.file.Path;
2018
import java.util.HashMap;
2119
import java.util.Map;
2220
import java.util.concurrent.atomic.AtomicReference;
2321
import java.util.jar.Manifest;
2422

23+
import static org.jetbrains.java.decompiler.main.extern.IFernflowerPreferences.*;
24+
2525
/**
2626
* A FernFlower wrapper with all the options (except 2)
2727
*
@@ -31,32 +31,32 @@
3131

3232
public final class FernflowerDecompiler extends JDADecompiler {
3333
public FernflowerDecompiler() {
34-
settings.registerSetting(new SettingsEntry("rbr", "Hide Bridge Methods", true));
35-
settings.registerSetting(new SettingsEntry("rsy", "Hide Synthetic Class Members", false));
36-
settings.registerSetting(new SettingsEntry("din", "Decompile Inner Classes", true));
37-
settings.registerSetting(new SettingsEntry("dc4", "Collapse 1.4 Class References", true));
38-
settings.registerSetting(new SettingsEntry("das", "Decompile Assertions", true));
39-
settings.registerSetting(new SettingsEntry("hes", "Hide Empty Super Invocation", true));
40-
settings.registerSetting(new SettingsEntry("hec", "Hide Empty Default Constructor", true));
41-
settings.registerSetting(new SettingsEntry("dgs", "Decompile Generic Signatures", false));
42-
settings.registerSetting(new SettingsEntry("ner", "Assume return not throwing exceptions", true));
43-
settings.registerSetting(new SettingsEntry("den", "Decompile enumerations", true));
44-
settings.registerSetting(new SettingsEntry("rgn", "Remove getClass = new SettingsEntry()", true));
45-
settings.registerSetting(new SettingsEntry("lit", "Output numeric literals 'as-is'", false));
46-
settings.registerSetting(new SettingsEntry("asc", "Encode non-ASCII as unicode escapes", true));
47-
settings.registerSetting(new SettingsEntry("bto", "Assume int 1 is boolean true", true));
48-
settings.registerSetting(new SettingsEntry("nns", "Allow not set synthetic attribute", true));
49-
settings.registerSetting(new SettingsEntry("uto", "Consider nameless types as java.lang.Object", true));
50-
settings.registerSetting(new SettingsEntry("udv", "Recover variable names", true));
51-
settings.registerSetting(new SettingsEntry("rer", "Remove empty exceptions", true));
52-
settings.registerSetting(new SettingsEntry("fdi", "De-inline finally", true));
53-
settings.registerSetting(new SettingsEntry("mpm", "Maximum processing time", 0, Setting.SettingType.INT)); // this is a numeric setting!
54-
settings.registerSetting(new SettingsEntry("ren", "Rename ambigious members", false));
55-
// urc: IIDentifierRenamer
56-
settings.registerSetting(new SettingsEntry("inn", "Remove IntelliJ @NotNull", true));
57-
settings.registerSetting(new SettingsEntry("lac", "Decompile lambdas to anonymous classes", false));
58-
// settings.registerSetting(new SettingsEntry("nls", "Newline character")); // this is an optional argument!
59-
settings.registerSetting(new SettingsEntry("ind", "Indentation string", " ", Setting.SettingType.STRING));
34+
settings.registerSetting(new SettingsEntry(REMOVE_BRIDGE, "Hide Bridge Methods", false));
35+
settings.registerSetting(new SettingsEntry(REMOVE_SYNTHETIC, "Hide Synthetic Class Members", false));
36+
settings.registerSetting(new SettingsEntry(DECOMPILE_INNER, "Decompile Inner Classes", true));
37+
settings.registerSetting(new SettingsEntry(DECOMPILE_CLASS_1_4, "Collapse 1.4 Class References", true));
38+
settings.registerSetting(new SettingsEntry(DECOMPILE_ASSERTIONS, "Decompile Assertions", true));
39+
settings.registerSetting(new SettingsEntry(HIDE_EMPTY_SUPER, "Hide Empty Super Invocation", true));
40+
settings.registerSetting(new SettingsEntry(HIDE_DEFAULT_CONSTRUCTOR, "Hide Empty Default Constructor", true));
41+
settings.registerSetting(new SettingsEntry(DECOMPILE_GENERIC_SIGNATURES, "Decompile Generic Signatures", false));
42+
settings.registerSetting(new SettingsEntry(NO_EXCEPTIONS_RETURN, "Assume return not throwing exceptions", true));
43+
settings.registerSetting(new SettingsEntry(DECOMPILE_ENUM, "Decompile enumerations", true));
44+
settings.registerSetting(new SettingsEntry(REMOVE_GET_CLASS_NEW, "Remove getClass()", true));
45+
settings.registerSetting(new SettingsEntry(LITERALS_AS_IS, "Output numeric literals 'as-is'", false));
46+
settings.registerSetting(new SettingsEntry(BOOLEAN_TRUE_ONE, "Assume int 1 is boolean true", true));
47+
settings.registerSetting(new SettingsEntry(ASCII_STRING_CHARACTERS, "Encode non-ASCII as unicode escapes", true));
48+
settings.registerSetting(new SettingsEntry(SYNTHETIC_NOT_SET, "Allow not set synthetic attribute", true));
49+
settings.registerSetting(new SettingsEntry(UNDEFINED_PARAM_TYPE_OBJECT, "Consider nameless types as java.lang.Object", true));
50+
settings.registerSetting(new SettingsEntry(USE_DEBUG_VAR_NAMES, "Recover variable names", true));
51+
settings.registerSetting(new SettingsEntry(REMOVE_EMPTY_RANGES, "Remove empty exceptions", true));
52+
settings.registerSetting(new SettingsEntry(FINALLY_DEINLINE, "De-inline finally", true));
53+
settings.registerSetting(new SettingsEntry(IDEA_NOT_NULL_ANNOTATION, "Remove IntelliJ @NotNull", true));
54+
settings.registerSetting(new SettingsEntry(LAMBDA_TO_ANONYMOUS_CLASS, "Decompile lambdas to anonymous classes", false));
55+
settings.registerSetting(new SettingsEntry(MAX_PROCESSING_METHOD, "Maximum processing time", 0, Setting.SettingType.INT));
56+
settings.registerSetting(new SettingsEntry(RENAME_ENTITIES, "Rename ambigious members", false));
57+
// USER_RENAMER_CLASS IIDentifierRenamer
58+
// settings.registerSetting(new SettingsEntry(NEW_LINE_SEPARATOR, "Newline character")); // this is an optional argument!
59+
settings.registerSetting(new SettingsEntry(INDENT_STRING, "Indentation string", " ", Setting.SettingType.STRING));
6060
}
6161

6262
@Override

0 commit comments

Comments
 (0)