]> granicus.if.org Git - clang/commitdiff
clang-format: [JS] Allow line breaks after TypeScript type colons.
authorDaniel Jasper <djasper@google.com>
Fri, 3 Jul 2015 10:37:23 +0000 (10:37 +0000)
committerDaniel Jasper <djasper@google.com>
Fri, 3 Jul 2015 10:37:23 +0000 (10:37 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@241339 91177308-0d34-0410-b5e6-96231b3b80d8

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

index 48dedeaef6b9d8122d11e6ab863bee09d211096a..0e1f14ad05f2798a2c7232813039c58538892b48 100644 (file)
@@ -2136,6 +2136,8 @@ bool TokenAnnotator::canBreakBefore(const AnnotatedLine &Line,
   } else if (Style.Language == FormatStyle::LK_JavaScript) {
     if (Left.is(TT_JsFatArrow) && Right.is(tok::l_brace))
       return false;
+    if (Left.is(TT_JsTypeColon))
+      return true;
   }
 
   if (Left.is(tok::at))
index b3e0f68ac3b2bb58efdaba2ef798c9dd0ce7f1bd..e6c12f4ce0f17fd85867ecc94ce2b65faa28f089 100644 (file)
@@ -883,6 +883,8 @@ TEST_F(FormatTestJS, TypeArguments) {
   verifyFormat("class C extends D<E> implements F<G>, H<I> {}");
   verifyFormat("function f(a: List<any> = null) {}");
   verifyFormat("function f(): List<any> {}");
+  verifyFormat("function aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa():\n"
+               "    bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb {}");
 }
 
 TEST_F(FormatTestJS, OptionalTypes) {