[PATCH] D17385: clang-format: [JS] re-quote single or double quoted strings.

Martin Probst via cfe-commits cfe-commits at lists.llvm.org
Tue Mar 1 16:05:34 PST 2016


mprobst added inline comments.

================
Comment at: lib/Format/Format.cpp:1087
@@ +1086,3 @@
+        (Style.Quotes == FormatStyle::QS_Single &&
+         !FormatTok->TokenText.startswith("\"")) ||
+        (Style.Quotes == FormatStyle::QS_Double &&
----------------
djasper wrote:
> Are there more than the two options? Otherwise, I would find:
> 
>   Style.Quotes == FormatStyle::QS_Single && FormatTok->TokenText.startswith("\'")
> 
> more intuitive.
I would too, but think about `template strings`. Added a comment. I think it's safer to specifically check for the thing that we do handle/fix below, instead of just accepting everything we think is not correct.

================
Comment at: unittests/Format/FormatTestJS.cpp:638
@@ -637,3 +637,3 @@
 TEST_F(FormatTestJS, StringLiteralConcatenation) {
-  verifyFormat("var literal = 'hello ' +\n"
-               "    'world';");
+  verifyFormat("var literal =\n"
+               "    'hello ' + 'world';",
----------------
djasper wrote:
> Why change this test? I think this was meant to test that we always add a line break between two consecutive string literals as otherwise the user could just have written this without the "' + '".
This was exposed by the char_literal/string_literal test, it aligns the behaviour with what would always happen for a double quoted string. It fits the no-alignment rule.

I've changed the test to make sure it actually wraps on two lines.

================
Comment at: unittests/Format/FormatTestJS.cpp:878
@@ -876,3 +877,3 @@
                "  Y,\n"
-               "} from 'some/long/module.js';",
+               "} from\n    'some/long/module.js';",
                getGoogleJSStyleWithColumns(20));
----------------
djasper wrote:
> I don't think this is intended.
It is. This was incorrectly handled before, the line is longer than 20 chars. It's because I switched single quoted strings from char_literal to string_literal.


http://reviews.llvm.org/D17385





More information about the cfe-commits mailing list