From: Daniel Jasper Date: Sun, 31 May 2015 08:40:37 +0000 (+0000) Subject: clang-format: [JS] Fix line breaks in computed property names. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=c374976da0576a91618936110fefda935461e6b6;p=clang clang-format: [JS] Fix line breaks in computed property names. Before: let foo = { [someLongKeyHere]: 1, someOtherLongKeyHere: 2, [keyLongEnoughToWrap]: 3, lastLongKey: 4 }; After: let foo = { [someLongKeyHere]: 1, someOtherLongKeyHere: 2, [keyLongEnoughToWrap]: 3, lastLongKey: 4 }; git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@238671 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Format/TokenAnnotator.cpp b/lib/Format/TokenAnnotator.cpp index 3b6628ecfb..ad40d99ad8 100644 --- a/lib/Format/TokenAnnotator.cpp +++ b/lib/Format/TokenAnnotator.cpp @@ -1321,7 +1321,7 @@ private: else if (Current->is(TT_LambdaArrow)) return prec::Comma; else if (Current->isOneOf(tok::semi, TT_InlineASMColon, - TT_SelectorName) || + TT_SelectorName, TT_JsComputedPropertyName) || (Current->is(tok::comment) && NextNonComment && NextNonComment->is(TT_SelectorName))) return 0; diff --git a/unittests/Format/FormatTestJS.cpp b/unittests/Format/FormatTestJS.cpp index d95ff9ba83..29b8aa1ff1 100644 --- a/unittests/Format/FormatTestJS.cpp +++ b/unittests/Format/FormatTestJS.cpp @@ -153,8 +153,11 @@ TEST_F(FormatTestJS, ContainerLiterals) { verifyFormat("var x = {y: (a) => a};"); // Computed keys. + verifyFormat("var x = {[a]: 1, b: 2, [c]: 3};"); verifyFormat("var x = {\n" " [a]: 1,\n" + " b: 2,\n" + " [c]: 3,\n" "};"); }