From 768c72e4e82bd5bf4494ac3ed1a952e2050d336c Mon Sep 17 00:00:00 2001 From: Federico Bond Date: Mon, 25 Aug 2014 00:06:32 -0300 Subject: [PATCH] Replace instances of StringBuffer with StringBuilder --- .../ExtendedCommonASTWithHiddenTokens.java | 46 +++++++++---------- app/src/processing/app/Base.java | 17 ++----- app/src/processing/app/Sketch.java | 20 ++++---- .../processing/app/exec/ProcessHelper.java | 13 +----- .../processing/app/syntax/InputHandler.java | 6 +-- .../processing/app/syntax/JEditTextArea.java | 26 +++++------ .../app/syntax/im/CompositionTextManager.java | 2 +- app/src/processing/mode/java/Compiler.java | 4 +- app/src/processing/mode/java/JavaBuild.java | 6 +-- app/src/processing/mode/java/JavaEditor.java | 14 +++--- .../FileTextFieldTransferHandler.java | 20 ++++---- core/methods/demo/PApplet.java | 2 +- core/methods/src/PAppletMethods.java | 8 ++-- core/src/processing/core/PApplet.java | 8 ++-- core/src/processing/core/PShapeSVG.java | 2 +- core/src/processing/data/JSONArray.java | 2 +- core/src/processing/data/JSONTokener.java | 8 ++-- core/src/processing/data/Table.java | 4 +- java/keywords.txt | 1 + pdex/keywords.txt | 1 + .../mode/experimental/ASTGenerator.java | 6 +-- .../mode/experimental/CompilationChecker.java | 10 ++-- .../mode/experimental/Compiler.java | 4 +- .../experimental/CompletionCandidate.java | 16 +++---- .../mode/experimental/DebugEditor.java | 28 +++++------ .../experimental/ErrorCheckerService.java | 2 +- 26 files changed, 129 insertions(+), 147 deletions(-) diff --git a/app/src/antlr/ExtendedCommonASTWithHiddenTokens.java b/app/src/antlr/ExtendedCommonASTWithHiddenTokens.java index 07f4f510c..1bcf2911d 100644 --- a/app/src/antlr/ExtendedCommonASTWithHiddenTokens.java +++ b/app/src/antlr/ExtendedCommonASTWithHiddenTokens.java @@ -37,7 +37,7 @@ public class ExtendedCommonASTWithHiddenTokens public String getHiddenAfterString() { CommonHiddenStreamToken t; - StringBuffer hiddenAfterString = new StringBuffer(100); + StringBuilder hiddenAfterString = new StringBuilder(100); for ( t = hiddenAfter ; t != null ; t = t.getHiddenAfter() ) { hiddenAfterString.append(t.getText()); @@ -66,7 +66,7 @@ public class ExtendedCommonASTWithHiddenTokens // dump that list - StringBuffer hiddenBeforeString = new StringBuffer(100); + StringBuilder hiddenBeforeString = new StringBuilder(100); for ( CommonHiddenStreamToken t = child; t != null ; t = t.getHiddenAfter() ) { @@ -76,31 +76,29 @@ public class ExtendedCommonASTWithHiddenTokens return hiddenBeforeString.toString(); } - public void xmlSerializeNode(Writer out) - throws IOException { - StringBuffer buf = new StringBuffer(100); - buf.append("<"); - buf.append(getClass().getName() + " "); + public void xmlSerializeNode(Writer out) throws IOException { + StringBuilder sb = new StringBuilder(100); + sb.append("<"); + sb.append(getClass().getName() + " "); - buf.append("hiddenBeforeString=\"" + - encode(getHiddenBeforeString()) + - "\" text=\"" + encode(getText()) + "\" type=\"" + - getType() + "\" hiddenAfterString=\"" + - encode(getHiddenAfterString()) + "\"/>"); - out.write(buf.toString()); + sb.append("hiddenBeforeString=\"" + + encode(getHiddenBeforeString()) + + "\" text=\"" + encode(getText()) + "\" type=\"" + + getType() + "\" hiddenAfterString=\"" + + encode(getHiddenAfterString()) + "\"/>"); + out.write(sb.toString()); } - public void xmlSerializeRootOpen(Writer out) - throws IOException { - StringBuffer buf = new StringBuffer(100); - buf.append("<"); - buf.append(getClass().getName() + " "); - buf.append("hiddenBeforeString=\"" + - encode(getHiddenBeforeString()) + - "\" text=\"" + encode(getText()) + "\" type=\"" + - getType() + "\" hiddenAfterString=\"" + - encode(getHiddenAfterString()) + "\">\n"); - out.write(buf.toString()); + public void xmlSerializeRootOpen(Writer out) throws IOException { + StringBuilder sb = new StringBuilder(100); + sb.append("<"); + sb.append(getClass().getName() + " "); + sb.append("hiddenBeforeString=\"" + + encode(getHiddenBeforeString()) + + "\" text=\"" + encode(getText()) + "\" type=\"" + + getType() + "\" hiddenAfterString=\"" + + encode(getHiddenAfterString()) + "\">\n"); + out.write(sb.toString()); } public void xmlSerializeRootClose(Writer out) diff --git a/app/src/processing/app/Base.java b/app/src/processing/app/Base.java index 007f172a5..6e97ad97c 100644 --- a/app/src/processing/app/Base.java +++ b/app/src/processing/app/Base.java @@ -2780,17 +2780,12 @@ public class Base { static public String contentsToClassPath(File folder) { if (folder == null) return ""; - StringBuffer abuffer = new StringBuffer(); + StringBuilder sb = new StringBuilder(); String sep = System.getProperty("path.separator"); try { String path = folder.getCanonicalPath(); -// disabled as of 0136 - // add the folder itself in case any unzipped files -// abuffer.append(sep); -// abuffer.append(path); -// // When getting the name of this folder, make sure it has a slash // after it, so that the names of sub-items can be added. if (!path.endsWith(File.separator)) { @@ -2805,17 +2800,15 @@ public class Base { if (list[i].toLowerCase().endsWith(".jar") || list[i].toLowerCase().endsWith(".zip")) { - abuffer.append(sep); - abuffer.append(path); - abuffer.append(list[i]); + sb.append(sep); + sb.append(path); + sb.append(list[i]); } } } catch (IOException e) { e.printStackTrace(); // this would be odd } - //System.out.println("included path is " + abuffer.toString()); - //packageListFromClassPath(abuffer.toString()); // WHY? - return abuffer.toString(); + return sb.toString(); } diff --git a/app/src/processing/app/Sketch.java b/app/src/processing/app/Sketch.java index 957f785d8..9f908902d 100644 --- a/app/src/processing/app/Sketch.java +++ b/app/src/processing/app/Sketch.java @@ -1570,24 +1570,24 @@ public class Sketch { */ static public String sanitizeName(String origName) { char orig[] = origName.toCharArray(); - StringBuffer buffer = new StringBuffer(); + StringBuilder sb = new StringBuilder(); // Can't lead with a digit (or anything besides a letter), so prefix with // "sketch_". In 1.x this prefixed with an underscore, but those get shaved // off later, since you can't start a sketch name with underscore anymore. if (!asciiLetter(orig[0])) { - buffer.append("sketch_"); + sb.append("sketch_"); } // for (int i = 0; i < orig.length; i++) { for (char c : orig) { if (asciiLetter(c) || (c >= '0' && c <= '9')) { - buffer.append(c); + sb.append(c); } else { // Tempting to only add if prev char is not underscore, but that // might be more confusing if lots of chars are converted and the // result is a very short string thats nothing like the original. - buffer.append('_'); + sb.append('_'); } } // Let's not be ridiculous about the length of filenames. @@ -1596,22 +1596,22 @@ public class Sketch { // Limiting to that for sketches would mean setting the // upper-bound on the character limit here to 25 characters // (to handle the base name + ".class") - if (buffer.length() > 63) { - buffer.setLength(63); + if (sb.length() > 63) { + sb.setLength(63); } // Remove underscores from the beginning, these seem to be a reserved // thing on Android, plus it sometimes causes trouble elsewhere. int underscore = 0; - while (underscore < buffer.length() && buffer.charAt(underscore) == '_') { + while (underscore < sb.length() && sb.charAt(underscore) == '_') { underscore++; } - if (underscore == buffer.length()) { + if (underscore == sb.length()) { return "bad_sketch_name_please_fix"; } else if (underscore != 0) { - return buffer.substring(underscore); + return sb.substring(underscore); } - return buffer.toString(); + return sb.toString(); } diff --git a/app/src/processing/app/exec/ProcessHelper.java b/app/src/processing/app/exec/ProcessHelper.java index 0bbd2aa97..fdeb0e61a 100644 --- a/app/src/processing/app/exec/ProcessHelper.java +++ b/app/src/processing/app/exec/ProcessHelper.java @@ -50,17 +50,6 @@ public class ProcessHelper { @Override public String toString() { - /* - final StringBuffer buffer = new StringBuffer(); - for (int i = 0; i < cmd.length; i++) { - if (i != 0) { - buffer.append(' '); - } - buffer.append(cmd[i]); - } - return buffer.toString(); - */ -// return exe + " " + PApplet.join(args, " "); return PApplet.join(cmd, " "); } @@ -143,4 +132,4 @@ public class ProcessHelper { } return false; } -} \ No newline at end of file +} diff --git a/app/src/processing/app/syntax/InputHandler.java b/app/src/processing/app/syntax/InputHandler.java index 8f8fc471d..b1b420a1c 100644 --- a/app/src/processing/app/syntax/InputHandler.java +++ b/app/src/processing/app/syntax/InputHandler.java @@ -1151,10 +1151,10 @@ public abstract class InputHandler extends KeyAdapter if(textArea.isEditable()) { - StringBuffer buf = new StringBuffer(); + StringBuilder sb = new StringBuilder(); for(int i = 0; i < repeatCount; i++) - buf.append(str); - textArea.overwriteSetSelectedText(buf.toString()); + sb.append(str); + textArea.overwriteSetSelectedText(sb.toString()); } else { diff --git a/app/src/processing/app/syntax/JEditTextArea.java b/app/src/processing/app/syntax/JEditTextArea.java index a6a1b4136..8f8b545a8 100644 --- a/app/src/processing/app/syntax/JEditTextArea.java +++ b/app/src/processing/app/syntax/JEditTextArea.java @@ -1397,7 +1397,7 @@ public class JEditTextArea extends JComponent start = tmp; } - StringBuffer buf = new StringBuffer(); + StringBuilder sb = new StringBuilder(); Segment seg = new Segment(); for(int i = selectionStartLine; i <= selectionEndLine; i++) @@ -1411,13 +1411,13 @@ public class JEditTextArea extends JComponent lineLen = Math.min(end - start,lineEnd - lineStart); getText(lineStart,lineLen,seg); - buf.append(seg.array,seg.offset,seg.count); + sb.append(seg.array,seg.offset,seg.count); if(i != selectionEndLine) - buf.append('\n'); + sb.append('\n'); } - return buf.toString(); + return sb.toString(); } else { @@ -1691,11 +1691,11 @@ public class JEditTextArea extends JComponent String selection = getSelectedText(); int repeatCount = inputHandler.getRepeatCount(); - StringBuffer buf = new StringBuffer(); + StringBuilder sb = new StringBuilder(); for(int i = 0; i < repeatCount; i++) - buf.append(selection); + sb.append(selection); - clipboard.setContents(new StringSelection(buf.toString()),null); + clipboard.setContents(new StringSelection(sb.toString()), null); } } @@ -1721,7 +1721,7 @@ public class JEditTextArea extends JComponent * specific to any language or version of the PDE. */ public void copyAsHTML() { - StringBuffer cf = new StringBuffer("
\n");
+    StringBuilder cf = new StringBuilder("
\n");
 
     int selStart = getSelectionStart();
     int selStop = getSelectionStop();
@@ -1758,7 +1758,7 @@ public class JEditTextArea extends JComponent
   }
 
 
-  private void emitAsHTML(StringBuffer cf, int line) {
+  private void emitAsHTML(StringBuilder cf, int line) {
     Segment segment = new Segment();
     getLineText(line, segment);
 
@@ -1839,7 +1839,7 @@ public class JEditTextArea extends JComponent
   /**
    * Handle encoding HTML entities for lt, gt, and anything non-ASCII.
    */
-  private void appendAsHTML(StringBuffer buffer, char c) {
+  private void appendAsHTML(StringBuilder buffer, char c) {
     if (c == '<') {
       buffer.append("<");
     } else if (c == '>') {
@@ -1903,11 +1903,11 @@ public class JEditTextArea extends JComponent
         }
 
         int repeatCount = inputHandler.getRepeatCount();
-        StringBuffer buf = new StringBuffer();
+        StringBuilder sb = new StringBuilder();
         for (int i = 0; i < repeatCount; i++) {
-          buf.append(selection);
+          sb.append(selection);
         }
-        selection = buf.toString();
+        selection = sb.toString();
         setSelectedText(selection);
 
       } catch (Exception e) {
diff --git a/app/src/processing/app/syntax/im/CompositionTextManager.java b/app/src/processing/app/syntax/im/CompositionTextManager.java
index 7192e9537..12a9ad341 100644
--- a/app/src/processing/app/syntax/im/CompositionTextManager.java
+++ b/app/src/processing/app/syntax/im/CompositionTextManager.java
@@ -94,7 +94,7 @@ public class CompositionTextManager {
     CompositionTextPainter compositionPainter = textArea.getPainter().getCompositionTextpainter();
     compositionPainter.setComposedTextLayout(getTextLayout(text, committed_count), layoutCaretPosition);
     int textLength = text.getEndIndex() - text.getBeginIndex() - committed_count;
-    StringBuffer unCommitedStringBuf = new StringBuffer(textLength);
+    StringBuilder unCommitedStringBuf = new StringBuilder(textLength);
     char c;
     for (c = text.setIndex(committed_count); c != CharacterIterator.DONE
         && textLength > 0; c = text.next(), --textLength) {
diff --git a/app/src/processing/mode/java/Compiler.java b/app/src/processing/mode/java/Compiler.java
index 417e9f45f..30d1b0e1a 100644
--- a/app/src/processing/mode/java/Compiler.java
+++ b/app/src/processing/mode/java/Compiler.java
@@ -103,8 +103,8 @@ public class Compiler {
 //    PApplet.println(command);
 
     try {
-      // Load errors into a local StringBuffer
-      final StringBuffer errorBuffer = new StringBuffer();
+      // Load errors into a local StringBuilder
+      final StringBuilder errorBuffer = new StringBuilder();
 
       // Create single method dummy writer class to slurp errors from ecj
       Writer internalWriter = new Writer() {
diff --git a/app/src/processing/mode/java/JavaBuild.java b/app/src/processing/mode/java/JavaBuild.java
index 42f8de00f..41206ce8e 100644
--- a/app/src/processing/mode/java/JavaBuild.java
+++ b/app/src/processing/mode/java/JavaBuild.java
@@ -234,7 +234,7 @@ public class JavaBuild {
     // 1. concatenate all .pde files to the 'main' pde
     //    store line number for starting point of each code bit
 
-    StringBuffer bigCode = new StringBuffer();
+    StringBuilder bigCode = new StringBuilder();
     int bigCount = 0;
     for (SketchCode sc : sketch.getCode()) {
       if (sc.isExtension("pde")) {
@@ -1417,7 +1417,7 @@ public class JavaBuild {
 
     String jarList[] = new String[jarListVector.size()];
     jarListVector.copyInto(jarList);
-    StringBuffer exportClassPath = new StringBuffer();
+    StringBuilder exportClassPath = new StringBuilder();
 
     if (exportPlatform == PConstants.MACOSX) {
       for (int i = 0; i < jarList.length; i++) {
@@ -1474,7 +1474,7 @@ public class JavaBuild {
       String lines[] = PApplet.loadStrings(plistTemplate);
       for (int i = 0; i < lines.length; i++) {
         if (lines[i].indexOf("@@") != -1) {
-          StringBuffer sb = new StringBuffer(lines[i]);
+          StringBuilder sb = new StringBuilder(lines[i]);
           int index = 0;
           while ((index = sb.indexOf("@@jvm_runtime@@")) != -1) {
             sb.replace(index, index + "@@jvm_runtime@@".length(),
diff --git a/app/src/processing/mode/java/JavaEditor.java b/app/src/processing/mode/java/JavaEditor.java
index 1da4f0031..119f42870 100644
--- a/app/src/processing/mode/java/JavaEditor.java
+++ b/app/src/processing/mode/java/JavaEditor.java
@@ -791,15 +791,15 @@ public class JavaEditor extends Editor {
     // statement is already in there, but if the user has the import
     // commented out, then this will be a problem.
     String[] list = Base.packageListFromClassPath(jarPath);
-    StringBuffer buffer = new StringBuffer();
+    StringBuilder sb = new StringBuilder();
     for (int i = 0; i < list.length; i++) {
-      buffer.append("import ");
-      buffer.append(list[i]);
-      buffer.append(".*;\n");
+      sb.append("import ");
+      sb.append(list[i]);
+      sb.append(".*;\n");
     }
-    buffer.append('\n');
-    buffer.append(getText());
-    setText(buffer.toString());
+    sb.append('\n');
+    sb.append(getText());
+    setText(sb.toString());
     setSelection(0, 0);  // scroll to start
     sketch.setModified(true);
   }
diff --git a/build/shared/tools/MovieMaker/src/ch/randelshofer/gui/datatransfer/FileTextFieldTransferHandler.java b/build/shared/tools/MovieMaker/src/ch/randelshofer/gui/datatransfer/FileTextFieldTransferHandler.java
index c91eec1df..5288fe7a7 100644
--- a/build/shared/tools/MovieMaker/src/ch/randelshofer/gui/datatransfer/FileTextFieldTransferHandler.java
+++ b/build/shared/tools/MovieMaker/src/ch/randelshofer/gui/datatransfer/FileTextFieldTransferHandler.java
@@ -237,13 +237,13 @@ public class FileTextFieldTransferHandler extends TransferHandler {
             int nch;
             boolean lastWasCR = false;
             int last;
-            StringBuffer sbuff = null;
+            StringBuilder sb = null;
 
             // Read in a block at a time, mapping \r\n to \n, as well as single
             // \r to \n.
             while ((nch = in.read(buff, 0, buff.length)) != -1) {
-                if (sbuff == null) {
-                    sbuff = new StringBuffer(nch);
+                if (sb == null) {
+                    sb = new StringBuilder(nch);
                 }
                 last = 0;
                 for (int counter = 0; counter < nch; counter++) {
@@ -251,7 +251,7 @@ public class FileTextFieldTransferHandler extends TransferHandler {
                         case '\r':
                             if (lastWasCR) {
                                 if (counter == 0) {
-                                    sbuff.append('\n');
+                                    sb.append('\n');
                                 } else {
                                     buff[counter - 1] = '\n';
                                 }
@@ -262,7 +262,7 @@ public class FileTextFieldTransferHandler extends TransferHandler {
                         case '\n':
                             if (lastWasCR) {
                                 if (counter > (last + 1)) {
-                                    sbuff.append(buff, last, counter - last - 1);
+                                    sb.append(buff, last, counter - last - 1);
                                 }
                                 // else nothing to do, can skip \r, next write will
                                 // write \n
@@ -273,7 +273,7 @@ public class FileTextFieldTransferHandler extends TransferHandler {
                         default:
                             if (lastWasCR) {
                                 if (counter == 0) {
-                                    sbuff.append('\n');
+                                    sb.append('\n');
                                 } else {
                                     buff[counter - 1] = '\n';
                                 }
@@ -285,18 +285,18 @@ public class FileTextFieldTransferHandler extends TransferHandler {
                 if (last < nch) {
                     if (lastWasCR) {
                         if (last < (nch - 1)) {
-                            sbuff.append(buff, last, nch - last - 1);
+                            sb.append(buff, last, nch - last - 1);
                         }
                     } else {
-                        sbuff.append(buff, last, nch - last);
+                        sb.append(buff, last, nch - last);
                     }
                 }
             }
             if (lastWasCR) {
-                sbuff.append('\n');
+                sb.append('\n');
             }
             System.out.println("FileTextTransferHandler " + c.getSelectionStart() + ".." + c.getSelectionEnd());
-            c.replaceSelection(sbuff != null ? sbuff.toString() : "");
+            c.replaceSelection(sb != null ? sb.toString() : "");
         }
     }
 
diff --git a/core/methods/demo/PApplet.java b/core/methods/demo/PApplet.java
index ada9f3b48..77d3a5ff7 100644
--- a/core/methods/demo/PApplet.java
+++ b/core/methods/demo/PApplet.java
@@ -5740,7 +5740,7 @@ public class PApplet extends Applet
    *      // list is now "apple, bear, cat"
*/ static public String join(String str[], String separator) { - StringBuffer buffer = new StringBuffer(); + StringBuilder buffer = new StringBuilder(); for (int i = 0; i < str.length; i++) { if (i != 0) buffer.append(separator); buffer.append(str[i]); diff --git a/core/methods/src/PAppletMethods.java b/core/methods/src/PAppletMethods.java index eddee7063..41ea29ef2 100644 --- a/core/methods/src/PAppletMethods.java +++ b/core/methods/src/PAppletMethods.java @@ -67,8 +67,8 @@ public class PAppletMethods extends Task { // Looking good, let's do this! //ByteArrayOutputStream outBytes = new ByteArrayOutputStream(); //PrintStream out = new PrintStream(outBytes, "UTF-8"); - StringBuffer out = new StringBuffer(); - StringBuffer content = new StringBuffer(); + StringBuilder out = new StringBuilder(); + StringBuilder content = new StringBuilder(); try{ BufferedReader applet = createReader(appletFile); @@ -125,11 +125,11 @@ public class PAppletMethods extends Task { } - private void process(StringBuffer out, File input) throws IOException { + private void process(StringBuilder out, File input) throws IOException { BufferedReader in = createReader(input); int comments = 0; String line = null; - StringBuffer commentBuffer = new StringBuffer(); + StringBuilder commentBuffer = new StringBuilder(); while ((line = in.readLine()) != null) { String decl = ""; diff --git a/core/src/processing/core/PApplet.java b/core/src/processing/core/PApplet.java index 46f91331e..20c708866 100755 --- a/core/src/processing/core/PApplet.java +++ b/core/src/processing/core/PApplet.java @@ -8949,12 +8949,12 @@ public class PApplet extends Applet static public String join(String[] list, String separator) { - StringBuffer buffer = new StringBuffer(); + StringBuilder sb = new StringBuilder(); for (int i = 0; i < list.length; i++) { - if (i != 0) buffer.append(separator); - buffer.append(list[i]); + if (i != 0) sb.append(separator); + sb.append(list[i]); } - return buffer.toString(); + return sb.toString(); } diff --git a/core/src/processing/core/PShapeSVG.java b/core/src/processing/core/PShapeSVG.java index 111a0f483..bf7d3ef19 100644 --- a/core/src/processing/core/PShapeSVG.java +++ b/core/src/processing/core/PShapeSVG.java @@ -503,7 +503,7 @@ public class PShapeSVG extends PShape { } char[] pathDataChars = pathData.toCharArray(); - StringBuffer pathBuffer = new StringBuffer(); + StringBuilder pathBuffer = new StringBuilder(); boolean lastSeparate = false; for (int i = 0; i < pathDataChars.length; i++) { diff --git a/core/src/processing/data/JSONArray.java b/core/src/processing/data/JSONArray.java index 35430da60..da68c1fd8 100644 --- a/core/src/processing/data/JSONArray.java +++ b/core/src/processing/data/JSONArray.java @@ -1224,7 +1224,7 @@ public class JSONArray { */ public String join(String separator) { int len = this.size(); - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); for (int i = 0; i < len; i += 1) { if (i > 0) { diff --git a/core/src/processing/data/JSONTokener.java b/core/src/processing/data/JSONTokener.java index 499f10a82..5301a5e3c 100644 --- a/core/src/processing/data/JSONTokener.java +++ b/core/src/processing/data/JSONTokener.java @@ -249,7 +249,7 @@ class JSONTokener { */ public String nextString(char quote) { char c; - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); for (;;) { c = this.next(); switch (c) { @@ -305,7 +305,7 @@ class JSONTokener { * @return A string. */ public String nextTo(char delimiter) { - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); for (;;) { char c = this.next(); if (c == delimiter || c == 0 || c == '\n' || c == '\r') { @@ -327,7 +327,7 @@ class JSONTokener { */ public String nextTo(String delimiters) { char c; - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); for (;;) { c = this.next(); if (delimiters.indexOf(c) >= 0 || c == 0 || @@ -374,7 +374,7 @@ class JSONTokener { * formatting character. */ - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); while (c >= ' ' && ",:]}/\\\"[{;=#".indexOf(c) < 0) { sb.append(c); c = this.next(); diff --git a/core/src/processing/data/Table.java b/core/src/processing/data/Table.java index 251496cd8..6b89f5af7 100644 --- a/core/src/processing/data/Table.java +++ b/core/src/processing/data/Table.java @@ -711,7 +711,7 @@ public class Table { cellData = textpContent; // nothing fancy, the text is in the text:p element } else { XML[] textpKids = textp.getChildren(); - StringBuffer cellBuffer = new StringBuffer(); + StringBuilder cellBuffer = new StringBuilder(); for (XML kid : textpKids) { String kidName = kid.getName(); if (kidName == null) { @@ -770,7 +770,7 @@ public class Table { } - private void odsAppendNotNull(XML kid, StringBuffer buffer) { + private void odsAppendNotNull(XML kid, StringBuilder buffer) { String content = kid.getContent(); if (content != null) { buffer.append(content); diff --git a/java/keywords.txt b/java/keywords.txt index 1a3505f3e..31a83fb22 100644 --- a/java/keywords.txt +++ b/java/keywords.txt @@ -231,6 +231,7 @@ HashMap KEYWORD5 HashMap PrintWriter KEYWORD5 PrintWriter String KEYWORD5 String StringBuffer KEYWORD5 +StringBuilder KEYWORD5 Thread KEYWORD5 boolean KEYWORD5 boolean byte KEYWORD5 byte diff --git a/pdex/keywords.txt b/pdex/keywords.txt index 5ba33d3ab..a7f20baa2 100644 --- a/pdex/keywords.txt +++ b/pdex/keywords.txt @@ -231,6 +231,7 @@ HashMap KEYWORD5 HashMap PrintWriter KEYWORD5 PrintWriter String KEYWORD5 String StringBuffer KEYWORD5 +StringBuilder KEYWORD5 Thread KEYWORD5 boolean KEYWORD5 boolean byte KEYWORD5 byte diff --git a/pdex/src/processing/mode/experimental/ASTGenerator.java b/pdex/src/processing/mode/experimental/ASTGenerator.java index f1dd78f70..fa732a038 100644 --- a/pdex/src/processing/mode/experimental/ASTGenerator.java +++ b/pdex/src/processing/mode/experimental/ASTGenerator.java @@ -342,7 +342,7 @@ public class ASTGenerator { try { factory = new ClassPathFactory(); - StringBuffer tehPath = new StringBuffer(System + StringBuilder tehPath = new StringBuilder(System .getProperty("java.class.path")); if(Base.isMacOS()){ // rt.jar equivalent on OS X is JAVA_HOME/bundle/Classes/classes.jar @@ -1203,7 +1203,7 @@ public class ASTGenerator { continue; } - StringBuffer label = new StringBuffer(method.getName() + "("); + StringBuilder label = new StringBuilder(method.getName() + "("); for (int i = 0; i < method.getParameterTypes().length; i++) { label.append(method.getParameterTypes()[i].getSimpleName()); if (i < method.getParameterTypes().length - 1) @@ -1576,7 +1576,7 @@ public class ASTGenerator { protected String getLabelIfType(ASTNodeWrapper node, SimpleName sn){ ASTNode current = node.getNode().getParent(); String type = ""; - StringBuffer fullName = new StringBuffer(); + StringBuilder fullName = new StringBuilder(); Stack parents = new Stack(); String simpleName = (sn == null) ? node.getNode().toString() : sn.toString(); switch (node.getNodeType()) { diff --git a/pdex/src/processing/mode/experimental/CompilationChecker.java b/pdex/src/processing/mode/experimental/CompilationChecker.java index 1b5459d06..f457b7ebf 100644 --- a/pdex/src/processing/mode/experimental/CompilationChecker.java +++ b/pdex/src/processing/mode/experimental/CompilationChecker.java @@ -457,11 +457,11 @@ public class CompilationChecker { IProblem problem = prob[i]; if (problem == null) continue; - StringBuffer buffer = new StringBuffer(); - buffer.append(problem.getMessage()); - buffer.append(" | line: "); - buffer.append(problem.getSourceLineNumber()); - String msg = buffer.toString(); + StringBuilder sb = new StringBuilder(); + sb.append(problem.getMessage()); + sb.append(" | line: "); + sb.append(problem.getSourceLineNumber()); + String msg = sb.toString(); if (problem.isError()) { error = true; msg = "Error: " + msg; diff --git a/pdex/src/processing/mode/experimental/Compiler.java b/pdex/src/processing/mode/experimental/Compiler.java index 1a85c6a29..de274f707 100755 --- a/pdex/src/processing/mode/experimental/Compiler.java +++ b/pdex/src/processing/mode/experimental/Compiler.java @@ -83,8 +83,8 @@ public class Compiler extends processing.mode.java.Compiler { //PApplet.println(command); try { - // Load errors into a local StringBuffer - final StringBuffer errorBuffer = new StringBuffer(); + // Load errors into a local StringBuilder + final StringBuilder errorBuffer = new StringBuilder(); // Create single method dummy writer class to slurp errors from ecj Writer internalWriter = new Writer() { diff --git a/pdex/src/processing/mode/experimental/CompletionCandidate.java b/pdex/src/processing/mode/experimental/CompletionCandidate.java index 44584319f..ae889b0c4 100644 --- a/pdex/src/processing/mode/experimental/CompletionCandidate.java +++ b/pdex/src/processing/mode/experimental/CompletionCandidate.java @@ -29,8 +29,8 @@ public class CompletionCandidate implements Comparable{ public CompletionCandidate(Method method) { method.getDeclaringClass().getName(); elementName = method.getName(); - StringBuffer label = new StringBuffer(method.getName() + "("); - StringBuffer cstr = new StringBuffer(method.getName() + "("); + StringBuilder label = new StringBuilder(method.getName() + "("); + StringBuilder cstr = new StringBuilder(method.getName() + "("); for (int i = 0; i < method.getParameterTypes().length; i++) { label.append(method.getParameterTypes()[i].getSimpleName()); if (i < method.getParameterTypes().length - 1) { @@ -84,8 +84,8 @@ public class CompletionCandidate implements Comparable{ type = LOCAL_METHOD; List params = (List) method .getStructuralProperty(MethodDeclaration.PARAMETERS_PROPERTY); - StringBuffer label = new StringBuffer(elementName + "("); - StringBuffer cstr = new StringBuffer(method.getName() + "("); + StringBuilder label = new StringBuilder(elementName + "("); + StringBuilder cstr = new StringBuilder(method.getName() + "("); for (int i = 0; i < params.size(); i++) { label.append(params.get(i).toString()); if (i < params.size() - 1) { @@ -177,8 +177,8 @@ public class CompletionCandidate implements Comparable{ MethodDeclaration method = (MethodDeclaration)wrappedObject; List params = (List) method .getStructuralProperty(MethodDeclaration.PARAMETERS_PROPERTY); - StringBuffer label = new StringBuffer(elementName + "("); - StringBuffer cstr = new StringBuffer(method.getName() + "("); + StringBuilder label = new StringBuilder(elementName + "("); + StringBuilder cstr = new StringBuilder(method.getName() + "("); for (int i = 0; i < params.size(); i++) { label.append(params.get(i).toString()); if (i < params.size() - 1) { @@ -198,8 +198,8 @@ public class CompletionCandidate implements Comparable{ } else if (wrappedObject instanceof Method) { Method method = (Method)wrappedObject; - StringBuffer label = new StringBuffer(method.getName() + "("); - StringBuffer cstr = new StringBuffer(method.getName() + "("); + StringBuilder label = new StringBuilder(method.getName() + "("); + StringBuilder cstr = new StringBuilder(method.getName() + "("); for (int i = 0; i < method.getParameterTypes().length; i++) { label.append(method.getParameterTypes()[i].getSimpleName()); if (i < method.getParameterTypes().length - 1) { diff --git a/pdex/src/processing/mode/experimental/DebugEditor.java b/pdex/src/processing/mode/experimental/DebugEditor.java index 824733b33..ec900d9d5 100755 --- a/pdex/src/processing/mode/experimental/DebugEditor.java +++ b/pdex/src/processing/mode/experimental/DebugEditor.java @@ -381,32 +381,32 @@ public class DebugEditor extends JavaEditor implements ActionListener { return; try { System.out.println("Writing errors"); - StringBuffer sbuff = new StringBuffer(); - sbuff.append("Sketch: " + getSketch().getFolder() + ", " + StringBuilder sb = new StringBuilder(); + sb.append("Sketch: " + getSketch().getFolder() + ", " + new java.sql.Timestamp(new java.util.Date().getTime()) + "\nComma in error msg is substituted with ^ symbol\nFor separating arguments in error args | symbol is used\n"); - sbuff.append("ERROR TYPE, ERROR ARGS, ERROR MSG\n"); + sb.append("ERROR TYPE, ERROR ARGS, ERROR MSG\n"); for (String errMsg : errorCheckerService.tempErrorLog.keySet()) { IProblem ip = errorCheckerService.tempErrorLog.get(errMsg); if(ip != null){ - sbuff.append(ErrorMessageSimplifier.getIDName(ip.getID())); - sbuff.append(','); - sbuff.append("{"); + sb.append(ErrorMessageSimplifier.getIDName(ip.getID())); + sb.append(','); + sb.append("{"); for (int i = 0; i < ip.getArguments().length; i++) { - sbuff.append(ip.getArguments()[i]); + sb.append(ip.getArguments()[i]); if(i < ip.getArguments().length - 1) - sbuff.append("| "); + sb.append("| "); } - sbuff.append("}"); - sbuff.append(','); - sbuff.append(ip.getMessage().replace(',', '^')); - sbuff.append("\n"); + sb.append("}"); + sb.append(','); + sb.append(ip.getMessage().replace(',', '^')); + sb.append("\n"); } } - System.out.println(sbuff); + System.out.println(sb); File opFile = new File(getSketch().getFolder(), "ErrorLogs" + File.separator + "ErrorLog_" + System.currentTimeMillis() + ".csv"); - PApplet.saveStream(opFile, new ByteArrayInputStream(sbuff.toString() + PApplet.saveStream(opFile, new ByteArrayInputStream(sb.toString() .getBytes(Charset.defaultCharset()))); } catch (Exception e) { System.err.println("Failed to save log file for sketch " + getSketch().getName()); diff --git a/pdex/src/processing/mode/experimental/ErrorCheckerService.java b/pdex/src/processing/mode/experimental/ErrorCheckerService.java index 82f59aeef..a69b4d5d9 100644 --- a/pdex/src/processing/mode/experimental/ErrorCheckerService.java +++ b/pdex/src/processing/mode/experimental/ErrorCheckerService.java @@ -1288,7 +1288,7 @@ public class ErrorCheckerService implements Runnable{ programImports = new ArrayList(); - StringBuffer rawCode = new StringBuffer(); + StringBuilder rawCode = new StringBuilder(); try {