From: Daniel Jasper Date: Thu, 27 Nov 2014 15:37:42 +0000 (+0000) Subject: clang-format: [JS] Contract fewer functions to a single line. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=b16303b04ec50d09cc6eabe20c62c1fba9c0e221;p=clang clang-format: [JS] Contract fewer functions to a single line. Before: var someVariable = function(x) { return x.zIsTooLongForOneLineWithTheDeclarationLine(); }; After: var someVariable = function(x) { return x.zIsTooLongForOneLineWithTheDeclarationLine(); }; git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@222893 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Format/TokenAnnotator.cpp b/lib/Format/TokenAnnotator.cpp index 718a019362..6c04a014a1 100644 --- a/lib/Format/TokenAnnotator.cpp +++ b/lib/Format/TokenAnnotator.cpp @@ -1480,6 +1480,9 @@ unsigned TokenAnnotator::splitPenalty(const AnnotatedLine &Line, return 2; if (Left.is(tok::comma) && Left.NestingLevel == 0) return 3; + } else if (Style.Language == FormatStyle::LK_JavaScript) { + if (Right.is(Keywords.kw_function)) + return 100; } if (Left.is(tok::comma) || (Right.is(tok::identifier) && Right.Next && @@ -1548,8 +1551,6 @@ unsigned TokenAnnotator::splitPenalty(const AnnotatedLine &Line, return 0; if (Left.is(tok::colon) && Left.is(TT_ObjCMethodExpr)) return Line.MightBeFunctionDecl ? 50 : 500; - if (Left.is(tok::colon) && Left.is(TT_DictLiteral)) - return 100; if (Left.is(tok::l_paren) && InFunctionDecl && Style.AlignAfterOpenBracket) return 100; diff --git a/unittests/Format/FormatTestJS.cpp b/unittests/Format/FormatTestJS.cpp index d6785649cb..0d29c178f8 100644 --- a/unittests/Format/FormatTestJS.cpp +++ b/unittests/Format/FormatTestJS.cpp @@ -232,6 +232,11 @@ TEST_F(FormatTestJS, FunctionLiterals) { " };\n" " }\n" "};"); + verifyFormat("{\n" + " var someVariable = function(x) {\n" + " return x.zIsTooLongForOneLineWithTheDeclarationLine();\n" + " };\n" + "}"); verifyFormat("var x = {a: function() { return 1; }};", getGoogleJSStyleWithColumns(38));