clang-format: [Java] Fix line break behavior of class declarations.

Change breaking preferences:
1. Break before "extends"
2. Break before "implements"
3. Break within the implements list.

llvm-svn: 221981
This commit is contained in:
Daniel Jasper
2014-11-14 10:15:56 +00:00
parent 5109a7938d
commit 734d52b58b
2 changed files with 24 additions and 11 deletions

View File

@@ -69,8 +69,11 @@ TEST_F(FormatTestJava, ClassDeclarations) {
"}");
verifyFormat("public class A extends B.C {}");
verifyFormat("abstract class SomeClass\n"
" extends SomeOtherClass implements SomeInterface {}",
getStyleWithColumns(60));
verifyFormat("abstract class SomeClass extends SomeOtherClass\n"
" implements SomeInterface {}",
" implements SomeInterfaceeeeeeeeeeeee {}",
getStyleWithColumns(60));
verifyFormat("abstract class SomeClass\n"
" extends SomeOtherClass\n"
@@ -81,14 +84,17 @@ TEST_F(FormatTestJava, ClassDeclarations) {
" implements SomeInterface,\n"
" AnotherInterface {}",
getStyleWithColumns(40));
verifyFormat("abstract class SomeClass\n"
" implements SomeInterface, AnotherInterface {}",
getStyleWithColumns(60));
verifyFormat("@SomeAnnotation()\n"
"abstract class aaaaaaaaaaaa extends bbbbbbbbbbbbbbb\n"
" implements cccccccccccc {\n"
"abstract class aaaaaaaaaaaa\n"
" extends bbbbbbbbbbbbbbb implements cccccccccccc {\n"
"}",
getStyleWithColumns(76));
verifyFormat("@SomeAnnotation()\n"
"abstract class aaaaaaaaa<a> extends bbbbbbbbbbbb<b>\n"
" implements cccccccccccc {\n"
"abstract class aaaaaaaaa<a>\n"
" extends bbbbbbbbbbbb<b> implements cccccccccccc {\n"
"}",
getStyleWithColumns(76));
verifyFormat("interface SomeInterface<A> extends Foo, Bar {\n"