public static List<BytecodeAstLanguage> getDebugLanguages() { final AstOptimizationStep[] steps = AstOptimizationStep.values(); final BytecodeAstLanguage[] languages = new BytecodeAstLanguage[steps.length]; languages[0] = new BytecodeAstLanguage("Bytecode AST (Unoptimized)", false, steps[0]); String nextName = "Bytecode AST (Variable Splitting)"; for (int i = 1; i < languages.length; i++) { languages[i] = new BytecodeAstLanguage(nextName, true, steps[i - 1]); nextName = "Bytecode AST (After " + steps[i - 1].name() + ")"; } return ArrayUtilities.asUnmodifiableList(languages); } }
@Override public TypeDecompilationResults decompileType(final TypeDefinition type, final ITextOutput output, final DecompilationOptions options) { writeTypeHeader(type, output); output.writeLine(" {"); output.indent(); try { boolean first = true; for (final MethodDefinition method : type.getDeclaredMethods()) { if (!first) { output.writeLine(); } else { first = false; } decompileMethod(method, output, options); } if (!options.getSettings().getExcludeNestedTypes()) { for (final TypeDefinition innerType : type.getDeclaredTypes()) { output.writeLine(); decompileType(innerType, output, options); } } } finally { output.unindent(); output.writeLine("}"); } return new TypeDecompilationResults( null /*no line number mapping*/); }
VerifyArgument.notNull(options, "options"); writeMethodHeader(method, output); writeError(output, t);
@Override public TypeDecompilationResults decompileType(final TypeDefinition type, final ITextOutput output, final DecompilationOptions options) { writeTypeHeader(type, output); output.writeLine(" {"); output.indent(); try { boolean first = true; for (final MethodDefinition method : type.getDeclaredMethods()) { if (!first) { output.writeLine(); } else { first = false; } decompileMethod(method, output, options); } if (!options.getSettings().getExcludeNestedTypes()) { for (final TypeDefinition innerType : type.getDeclaredTypes()) { output.writeLine(); decompileType(innerType, output, options); } } } finally { output.unindent(); output.writeLine("}"); } return new TypeDecompilationResults( null /*no line number mapping*/); }
VerifyArgument.notNull(options, "options"); writeMethodHeader(method, output); writeError(output, t);
@Override public TypeDecompilationResults decompileType(final TypeDefinition type, final ITextOutput output, final DecompilationOptions options) { writeTypeHeader(type, output); output.writeLine(" {"); output.indent(); try { boolean first = true; for (final MethodDefinition method : type.getDeclaredMethods()) { if (!first) { output.writeLine(); } else { first = false; } decompileMethod(method, output, options); } if (!options.getSettings().getExcludeNestedTypes()) { for (final TypeDefinition innerType : type.getDeclaredTypes()) { output.writeLine(); decompileType(innerType, output, options); } } } finally { output.unindent(); output.writeLine("}"); } return new TypeDecompilationResults( null /*no line number mapping*/); }
VerifyArgument.notNull(options, "options"); writeMethodHeader(method, output); writeError(output, t);
public static List<BytecodeAstLanguage> getDebugLanguages() { final AstOptimizationStep[] steps = AstOptimizationStep.values(); final BytecodeAstLanguage[] languages = new BytecodeAstLanguage[steps.length]; languages[0] = new BytecodeAstLanguage("Bytecode AST (Unoptimized)", false, steps[0]); String nextName = "Bytecode AST (Variable Splitting)"; for (int i = 1; i < languages.length; i++) { languages[i] = new BytecodeAstLanguage(nextName, true, steps[i - 1]); nextName = "Bytecode AST (After " + steps[i - 1].name() + ")"; } return ArrayUtilities.asUnmodifiableList(languages); } }
public static List<BytecodeAstLanguage> getDebugLanguages() { final AstOptimizationStep[] steps = AstOptimizationStep.values(); final BytecodeAstLanguage[] languages = new BytecodeAstLanguage[steps.length]; languages[0] = new BytecodeAstLanguage("Bytecode AST (Unoptimized)", false, steps[0]); String nextName = "Bytecode AST (Variable Splitting)"; for (int i = 1; i < languages.length; i++) { languages[i] = new BytecodeAstLanguage(nextName, true, steps[i - 1]); nextName = "Bytecode AST (After " + steps[i - 1].name() + ")"; } return ArrayUtilities.asUnmodifiableList(languages); } }