Merge pull request #18371 from uschindler/painless_debuggerCleanup
painless: Small cleanup of Debugger class to use StringWriter
This commit is contained in:
commit
6ac2877c32
|
@ -22,11 +22,8 @@ package org.elasticsearch.painless;
|
||||||
import org.objectweb.asm.ClassReader;
|
import org.objectweb.asm.ClassReader;
|
||||||
import org.objectweb.asm.util.TraceClassVisitor;
|
import org.objectweb.asm.util.TraceClassVisitor;
|
||||||
|
|
||||||
import java.io.ByteArrayOutputStream;
|
|
||||||
import java.io.OutputStreamWriter;
|
|
||||||
import java.io.PrintWriter;
|
import java.io.PrintWriter;
|
||||||
import java.io.UnsupportedEncodingException;
|
import java.io.StringWriter;
|
||||||
import java.nio.charset.StandardCharsets;
|
|
||||||
|
|
||||||
/** quick and dirty tools for debugging */
|
/** quick and dirty tools for debugging */
|
||||||
final class Debugger {
|
final class Debugger {
|
||||||
|
@ -39,17 +36,13 @@ final class Debugger {
|
||||||
/** compiles to bytecode, and returns debugging output */
|
/** compiles to bytecode, and returns debugging output */
|
||||||
static String toString(String source, CompilerSettings settings) {
|
static String toString(String source, CompilerSettings settings) {
|
||||||
final byte[] bytes = Compiler.compile("<debugging>", source, settings);
|
final byte[] bytes = Compiler.compile("<debugging>", source, settings);
|
||||||
final ByteArrayOutputStream output = new ByteArrayOutputStream();
|
final StringWriter output = new StringWriter();
|
||||||
final PrintWriter outputWriter = new PrintWriter(new OutputStreamWriter(output, StandardCharsets.UTF_8));
|
final PrintWriter outputWriter = new PrintWriter(output);
|
||||||
final ClassReader reader = new ClassReader(bytes);
|
final ClassReader reader = new ClassReader(bytes);
|
||||||
|
|
||||||
reader.accept(new TraceClassVisitor(outputWriter), 0);
|
reader.accept(new TraceClassVisitor(outputWriter), 0);
|
||||||
outputWriter.flush();
|
outputWriter.flush();
|
||||||
|
|
||||||
try {
|
return output.toString();
|
||||||
return output.toString("UTF-8");
|
|
||||||
} catch (final UnsupportedEncodingException e) {
|
|
||||||
throw new RuntimeException(e);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue