clang-format: [Java] Add space between "synchronized" and "(".
authorDaniel Jasper <djasper@google.com>
Sun, 2 Nov 2014 22:00:57 +0000 (22:00 +0000)
committerDaniel Jasper <djasper@google.com>
Sun, 2 Nov 2014 22:00:57 +0000 (22:00 +0000)
Before:
  synchronized(mData) {
    // ...
  }

After:
  synchronized (mData) {
    // ...
  }

This fixes llvm.org/PR21455.

llvm-svn: 221110

clang/lib/Format/TokenAnnotator.cpp
clang/unittests/Format/FormatTestJava.cpp

index a131397..1056d43 100644 (file)
@@ -1680,6 +1680,9 @@ bool TokenAnnotator::spaceRequiredBefore(const AnnotatedLine &Line,
   } else if (Style.Language == FormatStyle::LK_JavaScript) {
     if (Left.TokenText == "var")
       return true;
+  } else if (Style.Language == FormatStyle::LK_Java) {
+    if (Left.TokenText == "synchronized" && Right.is(tok::l_paren))
+      return Style.SpaceBeforeParens != FormatStyle::SBPO_Never;
   }
   if (Right.Tok.getIdentifierInfo() && Left.Tok.getIdentifierInfo())
     return true; // Never ever merge two identifiers.
index bcbf283..2b05ca4 100644 (file)
@@ -157,5 +157,11 @@ TEST_F(FormatTestJava, TryCatchFinally) {
                "}");
 }
 
+TEST_F(FormatTestJava, SynchronizedKeyword) {
+  verifyFormat("synchronized (mData) {\n"
+               "  // ...\n"
+               "}");
+}
+
 } // end namespace tooling
 } // end namespace clang