r220375 - clang-format: Use AllowShortBlocksOnASingleLine for ObjC blocks, too.
Daniel Jasper
djasper at google.com
Wed Oct 22 02:12:44 PDT 2014
Author: djasper
Date: Wed Oct 22 04:12:44 2014
New Revision: 220375
URL: http://llvm.org/viewvc/llvm-project?rev=220375&view=rev
Log:
clang-format: Use AllowShortBlocksOnASingleLine for ObjC blocks, too.
Modified:
cfe/trunk/lib/Format/TokenAnnotator.cpp
cfe/trunk/unittests/Format/FormatTest.cpp
Modified: cfe/trunk/lib/Format/TokenAnnotator.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Format/TokenAnnotator.cpp?rev=220375&r1=220374&r2=220375&view=diff
==============================================================================
--- cfe/trunk/lib/Format/TokenAnnotator.cpp (original)
+++ cfe/trunk/lib/Format/TokenAnnotator.cpp Wed Oct 22 04:12:44 2014
@@ -1782,6 +1782,9 @@ bool TokenAnnotator::mustBreakBefore(con
} else if (Style.Language == FormatStyle::LK_Proto &&
Left.isNot(tok::l_brace) && Right.Type == TT_SelectorName) {
return true;
+ } else if (Left.Type == TT_ObjCBlockLBrace &&
+ !Style.AllowShortBlocksOnASingleLine) {
+ return true;
}
// If the last token before a '}' is a comma or a trailing comment, the
Modified: cfe/trunk/unittests/Format/FormatTest.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/unittests/Format/FormatTest.cpp?rev=220375&r1=220374&r2=220375&view=diff
==============================================================================
--- cfe/trunk/unittests/Format/FormatTest.cpp (original)
+++ cfe/trunk/unittests/Format/FormatTest.cpp Wed Oct 22 04:12:44 2014
@@ -9154,24 +9154,35 @@ TEST_F(FormatTest, FormatsLambdas) {
}
TEST_F(FormatTest, FormatsBlocks) {
- verifyFormat("int (^Block)(int, int);");
- verifyFormat("int (^Block1)(int, int) = ^(int i, int j)");
- verifyFormat("void (^block)(int) = ^(id test) { int i; };");
- verifyFormat("void (^block)(int) = ^(int test) { int i; };");
- verifyFormat("void (^block)(int) = ^id(int test) { int i; };");
- verifyFormat("void (^block)(int) = ^int(int test) { int i; };");
+ FormatStyle ShortBlocks = getLLVMStyle();
+ ShortBlocks.AllowShortBlocksOnASingleLine = true;
+ verifyFormat("int (^Block)(int, int);", ShortBlocks);
+ verifyFormat("int (^Block1)(int, int) = ^(int i, int j)", ShortBlocks);
+ verifyFormat("void (^block)(int) = ^(id test) { int i; };", ShortBlocks);
+ verifyFormat("void (^block)(int) = ^(int test) { int i; };", ShortBlocks);
+ verifyFormat("void (^block)(int) = ^id(int test) { int i; };", ShortBlocks);
+ verifyFormat("void (^block)(int) = ^int(int test) { int i; };", ShortBlocks);
- verifyFormat("foo(^{ bar(); });");
- verifyFormat("foo(a, ^{ bar(); });");
- verifyFormat("{ void (^block)(Object *x); }");
+ verifyFormat("foo(^{ bar(); });", ShortBlocks);
+ verifyFormat("foo(a, ^{ bar(); });", ShortBlocks);
+ verifyFormat("{ void (^block)(Object *x); }", ShortBlocks);
- verifyFormat("[operation setCompletionBlock:^{ [self onOperationDone]; }];");
- verifyFormat("int i = {[operation setCompletionBlock:^{ [self "
- "onOperationDone]; }]};");
- verifyFormat("[operation setCompletionBlock:^(int *i) { f(); }];");
- verifyFormat("int a = [operation block:^int(int *i) { return 1; }];");
+ verifyFormat("[operation setCompletionBlock:^{\n"
+ " [self onOperationDone];\n"
+ "}];");
+ verifyFormat("int i = {[operation setCompletionBlock:^{\n"
+ " [self onOperationDone];\n"
+ "}]};");
+ verifyFormat("[operation setCompletionBlock:^(int *i) {\n"
+ " f();\n"
+ "}];");
+ verifyFormat("int a = [operation block:^int(int *i) {\n"
+ " return 1;\n"
+ "}];");
verifyFormat("[myObject doSomethingWith:arg1\n"
- " aaa:^int(int *a) { return 1; }\n"
+ " aaa:^int(int *a) {\n"
+ " return 1;\n"
+ " }\n"
" bbb:f(a * bbbbbbbb)];");
verifyFormat("[operation setCompletionBlock:^{\n"
More information about the cfe-commits
mailing list