From b6be55e043009f2ac5ccaa0fad0af9f8b1dbc369 Mon Sep 17 00:00:00 2001 From: Isaac Levy Date: Sat, 30 Jun 2018 20:58:46 -0400 Subject: [PATCH] Update MessageCompiler.scala inline sb append, ~5x speed up due to unboxed `sb.append(c)` --- project/MessageCompiler.scala | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/project/MessageCompiler.scala b/project/MessageCompiler.scala index 6288b09612806..1528683085873 100644 --- a/project/MessageCompiler.scala +++ b/project/MessageCompiler.scala @@ -126,17 +126,15 @@ ${content mkString "\n"} val sb = new java.lang.StringBuilder(s.size + 10) // wet finger style var i = 0 while (i < s.length) { - sb.append { - s.charAt(i) match { - case '<' => "<"; - case '>' => ">"; - case '&' => "&"; - case '"' => """; - case '\'' => "'"; - case '\r' => ""; - case '\n' => "
"; - case c => c - } + s.charAt(i) match { + case '<' => sb append "<" + case '>' => sb append ">" + case '&' => sb append "&" + case '"' => sb append """ + case '\'' => sb append "'" + case '\r' => () + case '\n' => sb append "
" + case c => sb append c } i += 1 }