one more simple folly::join optimization
[folly.git] / folly / String-inl.h
index 02d376d82f06e02fd4b64b30f6758705091cc0ca..4bff753e0ab757b291a9a6154a6bf173f31b321c 100644 (file)
@@ -312,6 +312,11 @@ void internalJoinAppend(Delim delimiter,
                         Iterator end,
                         String& output) {
   assert(begin != end);
+  if (std::is_same<Delim, StringPiece>::value &&
+      delimSize(delimiter) == 1) {
+    internalJoinAppend(delimFront(delimiter), begin, end, output);
+    return;
+  }
   toAppend(*begin, &output);
   while (++begin != end) {
     toAppend(delimiter, *begin, &output);