From e79f6ee3ca0175076645413a3d83a01a366df369 Mon Sep 17 00:00:00 2001 From: Lukas Stadler <lukas.stadler@oracle.com> Date: Mon, 22 May 2017 08:56:29 +0200 Subject: [PATCH] do not use StringBuffer --- .../com/oracle/truffle/r/engine/shell/RCommand.java | 2 +- .../oracle/truffle/r/library/tools/ToolsText.java | 2 +- .../truffle/r/nodes/builtin/base/EncodeString.java | 6 +++--- .../truffle/r/nodes/builtin/base/GrepFunctions.java | 4 ++-- .../oracle/truffle/r/nodes/builtin/base/Parse.java | 2 +- .../oracle/truffle/r/nodes/builtin/base/Strrep.java | 2 +- .../truffle/r/nodes/builtin/base/TraceFunctions.java | 2 +- .../builtin/base/system/SystemFunctionFactory.java | 2 +- .../r/nodes/builtin/helpers/BrowserInteractNode.java | 2 +- .../com/oracle/truffle/r/nodes/ffi/RFFIUtils.java | 4 ++-- .../truffle/r/nodes/objects/DispatchGeneric.java | 2 +- .../src/com/oracle/truffle/r/runtime/DCF.java | 4 ++-- .../src/com/oracle/truffle/r/runtime/RDeparse.java | 2 +- .../src/com/oracle/truffle/r/runtime/REnvVars.java | 2 +- .../src/com/oracle/truffle/r/runtime/RSerialize.java | 2 +- .../truffle/r/runtime/conn/TextConnections.java | 12 ++++++------ .../truffle/r/test/generate/TestOutputManager.java | 6 +++--- .../truffle/r/test/library/stats/TestFitting.java | 4 ++-- 18 files changed, 31 insertions(+), 31 deletions(-) diff --git a/com.oracle.truffle.r.engine/src/com/oracle/truffle/r/engine/shell/RCommand.java b/com.oracle.truffle.r.engine/src/com/oracle/truffle/r/engine/shell/RCommand.java index 0f98a4dbcb..b48d4d484a 100644 --- a/com.oracle.truffle.r.engine/src/com/oracle/truffle/r/engine/shell/RCommand.java +++ b/com.oracle.truffle.r.engine/src/com/oracle/truffle/r/engine/shell/RCommand.java @@ -225,7 +225,7 @@ public class RCommand { } String continuePrompt = getContinuePrompt(vm); - StringBuffer sb = new StringBuffer(input); + StringBuilder sb = new StringBuilder(input); Source source = RSource.fromTextInternal(sb.toString(), RSource.Internal.SHELL_INPUT); boolean hasExecutor = hasExectuor(vm); while (true) { diff --git a/com.oracle.truffle.r.library/src/com/oracle/truffle/r/library/tools/ToolsText.java b/com.oracle.truffle.r.library/src/com/oracle/truffle/r/library/tools/ToolsText.java index 79f1b7df8b..c95e3d4a45 100644 --- a/com.oracle.truffle.r.library/src/com/oracle/truffle/r/library/tools/ToolsText.java +++ b/com.oracle.truffle.r.library/src/com/oracle/truffle/r/library/tools/ToolsText.java @@ -49,7 +49,7 @@ public class ToolsText { for (int i = 0; i < data.length; i++) { String input = strings.getDataAt(i); if (input.indexOf('\t') >= 0) { - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); int b = 0; int start = starts.getDataAt(i % starts.getLength()); for (int sx = 0; sx < input.length(); sx++) { diff --git a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/EncodeString.java b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/EncodeString.java index edff830f72..656ad0b6b1 100644 --- a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/EncodeString.java +++ b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/EncodeString.java @@ -85,7 +85,7 @@ public abstract class EncodeString extends RBuiltinNode.Arg5 { @TruffleBoundary private static String concat(Object... args) { - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); for (Object arg : args) { sb.append(arg); } @@ -229,7 +229,7 @@ public abstract class EncodeString extends RBuiltinNode.Arg5 { @TruffleBoundary private static String addPaddingIgnoreNA(final String el, final int leftPadding, final int rightPadding, final String quoteEl) { - final StringBuffer sb = new StringBuffer(); + final StringBuilder sb = new StringBuilder(); for (int j = 0; j < leftPadding; j++) { sb.append(" "); } @@ -244,7 +244,7 @@ public abstract class EncodeString extends RBuiltinNode.Arg5 { @TruffleBoundary private String addPadding(final String el, final int leftPadding, final int rightPadding, final String quoteEl) { - final StringBuffer sb = new StringBuffer(); + final StringBuilder sb = new StringBuilder(); for (int j = 0; j < leftPadding; j++) { sb.append(" "); } diff --git a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/GrepFunctions.java b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/GrepFunctions.java index 97a8bf4feb..d1432ee475 100644 --- a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/GrepFunctions.java +++ b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/GrepFunctions.java @@ -479,7 +479,7 @@ public class GrepFunctions { int[] fromByteMapping = getFromByteMapping(input); // non-null if it's // necessary - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); while (execNode.execute(pcre.result, 0, input, lastEndOffset, eflag, ovector) >= 0) { nmatch++; @@ -623,7 +623,7 @@ public class GrepFunctions { return nonEmpty; } - private static void pcreStringAdj(StringBuffer sb, String input, String repl, int[] ovector, int[] fromByteMapping) { + private static void pcreStringAdj(StringBuilder sb, String input, String repl, int[] ovector, int[] fromByteMapping) { boolean upper = false; boolean lower = false; int px = 0; diff --git a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/Parse.java b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/Parse.java index b351ea5aef..55e01a2343 100644 --- a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/Parse.java +++ b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/Parse.java @@ -159,7 +159,7 @@ public abstract class Parse extends RBuiltinNode.Arg6 { } private static String coalesce(String[] lines) { - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); for (String line : lines) { sb.append(line); sb.append('\n'); diff --git a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/Strrep.java b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/Strrep.java index 46455a6a60..43dd6c789a 100644 --- a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/Strrep.java +++ b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/Strrep.java @@ -73,7 +73,7 @@ public abstract class Strrep extends RBuiltinNode.Arg2 { if (times == 1) { data[i] = x; } else { - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); for (int t = 0; t < times; t++) { sb.append(x); } diff --git a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/TraceFunctions.java b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/TraceFunctions.java index 653e415b77..586af6390e 100644 --- a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/TraceFunctions.java +++ b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/TraceFunctions.java @@ -203,7 +203,7 @@ public class TraceFunctions { @TruffleBoundary protected static String getStackTrace() { - final StringBuffer result = new StringBuffer(); + final StringBuilder result = new StringBuilder(); Truffle.getRuntime().iterateFrames(frame -> { Frame unwrapped = RArguments.unwrap(frame.getFrame(FrameAccess.READ_ONLY)); if (RArguments.isRFrame(unwrapped)) { diff --git a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/system/SystemFunctionFactory.java b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/system/SystemFunctionFactory.java index e751d26204..a384de71c6 100644 --- a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/system/SystemFunctionFactory.java +++ b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/system/SystemFunctionFactory.java @@ -130,7 +130,7 @@ public abstract class SystemFunctionFactory { newArgsList.add("-e"); newArgsList.add("tools:::.install_packages()"); newArgsList.add("--args"); - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); i = 2; while (i < commandInfo.args.length) { String arg = commandInfo.args[i]; diff --git a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/helpers/BrowserInteractNode.java b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/helpers/BrowserInteractNode.java index 71c6062bdd..c37597d069 100644 --- a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/helpers/BrowserInteractNode.java +++ b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/helpers/BrowserInteractNode.java @@ -147,7 +147,7 @@ public abstract class BrowserInteractNode extends RNode { } default: - StringBuffer sb = new StringBuffer(input); + StringBuilder sb = new StringBuilder(input); while (true) { try { RContext.getEngine().parseAndEval(RSource.fromTextInternal(sb.toString(), RSource.Internal.BROWSER_INPUT), mFrame, true); diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/ffi/RFFIUtils.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/ffi/RFFIUtils.java index 9b7df136ad..46cb7f66b6 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/ffi/RFFIUtils.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/ffi/RFFIUtils.java @@ -150,7 +150,7 @@ public class RFFIUtils { private static void traceCall(CallMode mode, String name, int depthValue, Object... args) { if (traceEnabled) { - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); sb.append("CallRFFI["); sb.append(mode.printName); sb.append(':'); @@ -170,7 +170,7 @@ public class RFFIUtils { } } - private static void printArgs(StringBuffer sb, Object[] args) { + private static void printArgs(StringBuilder sb, Object[] args) { boolean first = true; for (Object arg : args) { if (first) { diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/objects/DispatchGeneric.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/objects/DispatchGeneric.java index ab3e9a0db9..9d4fdeb7f0 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/objects/DispatchGeneric.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/objects/DispatchGeneric.java @@ -42,7 +42,7 @@ public abstract class DispatchGeneric extends RBaseNode { @TruffleBoundary private static String createMultiDispatchString(RStringVector classes) { - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); for (int i = 0; i < classes.getLength(); i++) { if (i > 0) { sb.append('#'); diff --git a/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/DCF.java b/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/DCF.java index 48069f9e2f..0d4e319a07 100644 --- a/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/DCF.java +++ b/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/DCF.java @@ -52,7 +52,7 @@ public class DCF { public static DCF read(String[] lines, Set<String> keepWhiteSet) { DCF result = new DCF(); String fieldName = null; - StringBuffer fieldContent = new StringBuffer(); + StringBuilder fieldContent = new StringBuilder(); Fields fields = new Fields(); for (String line : lines) { if (line == null) { @@ -67,7 +67,7 @@ public class DCF { // should start a field, finish off any current one if (fieldName != null) { fields.add(fieldName, fieldContent.toString()); - fieldContent = new StringBuffer(); + fieldContent = new StringBuilder(); } if (endOfParagraph(line)) { fieldName = null; diff --git a/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/RDeparse.java b/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/RDeparse.java index 73ebc61f28..07974eaba2 100644 --- a/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/RDeparse.java +++ b/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/RDeparse.java @@ -1118,7 +1118,7 @@ public class RDeparse { if (isValidName(name) || name.length() == 0) { return name; } else { - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); sb.append(qc); for (int i = 0; i < name.length(); i++) { char ch = name.charAt(i); diff --git a/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/REnvVars.java b/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/REnvVars.java index 87fcb60bbd..5d7338bd0c 100644 --- a/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/REnvVars.java +++ b/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/REnvVars.java @@ -291,7 +291,7 @@ public final class REnvVars implements RContext.ContextState { } private String expandParameters(String value) { - StringBuffer result = new StringBuffer(); + StringBuilder result = new StringBuilder(); int x = 0; int paramStart = value.indexOf("${", x); while (paramStart >= 0) { diff --git a/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/RSerialize.java b/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/RSerialize.java index 8415803a34..8ee00ebb4a 100644 --- a/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/RSerialize.java +++ b/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/RSerialize.java @@ -2038,7 +2038,7 @@ public class RSerialize { // IDE debugging Iterator<RPairList> iter = active.iterator(); if (iter.hasNext()) { - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); while (iter.hasNext()) { RPairList pl = iter.next(); sb.append('['); diff --git a/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/conn/TextConnections.java b/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/conn/TextConnections.java index b1e4629053..341f5e16bf 100644 --- a/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/conn/TextConnections.java +++ b/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/conn/TextConnections.java @@ -94,7 +94,7 @@ public class TextConnections { TextReadRConnection(TextRConnection base, RAbstractStringVector object) { super(base, 0); assert object != null; - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); for (int i = 0; i < object.getLength(); i++) { sb.append(object.getDataAt(i)); // vector elements are implicitly terminated with a newline @@ -219,7 +219,7 @@ public class TextConnections { } if (incompleteLine != null && !endOfLine) { // end of line not found - accumulate incomplete line - incompleteLine = new StringBuffer(incompleteLine).append(result).toString(); + incompleteLine = new StringBuilder(incompleteLine).append(result).toString(); base.setIncomplete(true); } else if (px < result.length()) { // only reset incompleteLine if @@ -250,7 +250,7 @@ public class TextConnections { @Override public void writeLines(RAbstractStringVector lines, String sep, boolean useBytes) throws IOException { - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); if (incompleteLine != null) { sb.append(incompleteLine); incompleteLine = null; @@ -269,7 +269,7 @@ public class TextConnections { @Override public void writeString(String s, boolean nl) throws IOException { - writeStringInternal(nl ? new StringBuffer(s).append('\n').toString() : s); + writeStringInternal(nl ? new StringBuilder(s).append('\n').toString() : s); } @Override @@ -328,7 +328,7 @@ public class TextConnections { * Strictly implementation-internal connection that is used to support the external debugger. */ public static class InternalStringWriteConnection extends BaseRConnection { - private StringBuffer sb = new StringBuffer(); + private StringBuilder sb = new StringBuilder(); public InternalStringWriteConnection() throws IOException { super(ConnectionClass.Terminal, "w", AbstractOpenMode.Write); @@ -363,7 +363,7 @@ public class TextConnections { public String getString() { String result = sb.toString(); - sb = new StringBuffer(); + sb = new StringBuilder(); return result; } } diff --git a/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/generate/TestOutputManager.java b/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/generate/TestOutputManager.java index 1bfcae0799..11ea456977 100644 --- a/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/generate/TestOutputManager.java +++ b/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/generate/TestOutputManager.java @@ -188,9 +188,9 @@ public class TestOutputManager { } private static class SaveBufferedReader extends BufferedReader { - StringBuffer save; + StringBuilder save; - SaveBufferedReader(Reader in, StringBuffer save) { + SaveBufferedReader(Reader in, StringBuilder save) { super(in); this.save = save; } @@ -217,7 +217,7 @@ public class TestOutputManager { if (!outputFile.exists()) { return null; } - StringBuffer content = new StringBuffer(); + StringBuilder content = new StringBuilder(); try (SaveBufferedReader in = new SaveBufferedReader(new FileReader(outputFile), content)) { // line format for element name: ##elementName // line format for input lines: #input diff --git a/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/library/stats/TestFitting.java b/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/library/stats/TestFitting.java index d1f775861e..56da0b1072 100644 --- a/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/library/stats/TestFitting.java +++ b/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/library/stats/TestFitting.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2014, 2017, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -40,7 +40,7 @@ public class TestFitting extends TestBase { @Test public void testLm() { - StringBuffer printCode = new StringBuffer(); + StringBuilder printCode = new StringBuilder(); for (String name : CHECK_RESULT_NAMES) { printCode.append("print(res$").append(name).append(");"); } -- GitLab