r260060 - clang-format: [JS] Don't count shortened object literals as blocks.

Daniel Jasper via cfe-commits cfe-commits at lists.llvm.org
Sun Feb 7 14:17:13 PST 2016


Author: djasper
Date: Sun Feb  7 16:17:13 2016
New Revision: 260060

URL: http://llvm.org/viewvc/llvm-project?rev=260060&view=rev
Log:
clang-format: [JS] Don't count shortened object literals as blocks.

Before:
  f({a},
    () => {
      g();  //
    });

After:
  f({a}, () => {
    g();  //
  });

Modified:
    cfe/trunk/lib/Format/TokenAnnotator.cpp
    cfe/trunk/unittests/Format/FormatTestJS.cpp

Modified: cfe/trunk/lib/Format/TokenAnnotator.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Format/TokenAnnotator.cpp?rev=260060&r1=260059&r2=260060&view=diff
==============================================================================
--- cfe/trunk/lib/Format/TokenAnnotator.cpp (original)
+++ cfe/trunk/lib/Format/TokenAnnotator.cpp Sun Feb  7 16:17:13 2016
@@ -423,7 +423,7 @@ private:
   }
 
   void updateParameterCount(FormatToken *Left, FormatToken *Current) {
-    if (Current->is(tok::l_brace) && !Current->is(TT_DictLiteral))
+    if (Current->is(tok::l_brace) && Current->BlockKind == BK_Block)
       ++Left->BlockParameterCount;
     if (Current->is(tok::comma)) {
       ++Left->ParameterCount;

Modified: cfe/trunk/unittests/Format/FormatTestJS.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/unittests/Format/FormatTestJS.cpp?rev=260060&r1=260059&r2=260060&view=diff
==============================================================================
--- cfe/trunk/unittests/Format/FormatTestJS.cpp (original)
+++ cfe/trunk/unittests/Format/FormatTestJS.cpp Sun Feb  7 16:17:13 2016
@@ -200,6 +200,11 @@ TEST_F(FormatTestJS, ContainerLiterals)
                "  b: 2,\n"
                "  [c]: 3,\n"
                "};");
+
+  // Object literals can leave out labels.
+  verifyFormat("f({a}, () => {\n"
+               "  g();  //\n"
+               "});");
 }
 
 TEST_F(FormatTestJS, MethodsInObjectLiterals) {




More information about the cfe-commits mailing list