]> granicus.if.org Git - clang/commitdiff
clang-format: [JS] Always add space after fat arrow.
authorDaniel Jasper <djasper@google.com>
Tue, 2 Jun 2015 22:06:07 +0000 (22:06 +0000)
committerDaniel Jasper <djasper@google.com>
Tue, 2 Jun 2015 22:06:07 +0000 (22:06 +0000)
Before:
  return () =>[];

After:
  return () => [];

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@238875 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Format/TokenAnnotator.cpp
unittests/Format/FormatTestJS.cpp

index 0ee5a7cc4ef14d2b5d25a2d08fe762ac4093e2c2..3c1c9a1defdbfd874df7976eaa7c486f14a42eb8 100644 (file)
@@ -1878,7 +1878,7 @@ bool TokenAnnotator::spaceRequiredBefore(const AnnotatedLine &Line,
         Left.isOneOf(Keywords.kw_returns, Keywords.kw_option))
       return true;
   } else if (Style.Language == FormatStyle::LK_JavaScript) {
-    if (Left.is(Keywords.kw_var))
+    if (Left.isOneOf(Keywords.kw_var, TT_JsFatArrow))
       return true;
     if (Right.isOneOf(TT_JsTypeColon, TT_JsTypeOptionalQuestion))
       return false;
@@ -1958,10 +1958,9 @@ bool TokenAnnotator::spaceRequiredBefore(const AnnotatedLine &Line,
     return Style.SpaceAfterCStyleCast ||
            Right.isOneOf(TT_BinaryOperator, TT_SelectorName);
 
-  if (Left.is(tok::greater) && Right.is(tok::greater)) {
+  if (Left.is(tok::greater) && Right.is(tok::greater))
     return Right.is(TT_TemplateCloser) && Left.is(TT_TemplateCloser) &&
            (Style.Standard != FormatStyle::LS_Cpp11 || Style.SpacesInAngles);
-  }
   if (Right.isOneOf(tok::arrow, tok::period, tok::arrowstar, tok::periodstar) ||
       Left.isOneOf(tok::arrow, tok::period, tok::arrowstar, tok::periodstar))
     return false;
index 1dcce6f040003b117e082a935aec63ec97bc2db8..80a3e0a66a0597f8d929df2156de1b40c7cd3617 100644 (file)
@@ -484,6 +484,7 @@ TEST_F(FormatTestJS, ArrowFunctions) {
                "  return a;\n"
                "};");
   verifyFormat("var x = (a) => a;");
+  verifyFormat("return () => [];");
 
   // FIXME: This is bad, we should be wrapping before "() => {".
   verifyFormat("someFunction(() => {\n"