This revision was automatically updated to reflect the committed changes. Closed by commit rC360411: Revert "Revert "[clang-format] Keep protobuf "package" statement on one line"" (authored by krasimir, committed by ).
Changed prior to commit: https://reviews.llvm.org/D60661?vs=198585&id=198992#toc Repository: rC Clang CHANGES SINCE LAST ACTION https://reviews.llvm.org/D60661/new/ https://reviews.llvm.org/D60661 Files: lib/Format/TokenAnnotator.cpp unittests/Format/FormatTestProto.cpp Index: lib/Format/TokenAnnotator.cpp =================================================================== --- lib/Format/TokenAnnotator.cpp +++ lib/Format/TokenAnnotator.cpp @@ -1119,10 +1119,10 @@ return LT_ImportStatement; } - // In .proto files, top-level options are very similar to import statements - // and should not be line-wrapped. + // In .proto files, top-level options and package statements are very + // similar to import statements and should not be line-wrapped. if (Style.Language == FormatStyle::LK_Proto && Line.Level == 0 && - CurrentToken->is(Keywords.kw_option)) { + CurrentToken->isOneOf(Keywords.kw_option, Keywords.kw_package)) { next(); if (CurrentToken && CurrentToken->is(tok::identifier)) { while (CurrentToken) Index: unittests/Format/FormatTestProto.cpp =================================================================== --- unittests/Format/FormatTestProto.cpp +++ unittests/Format/FormatTestProto.cpp @@ -397,6 +397,16 @@ "};"); } +TEST_F(FormatTestProto, DoesntWrapPackageStatements) { + verifyFormat( + "package" + " some.really.long.package.that.exceeds.the.column.limit00000000;"); +} + +TEST_F(FormatTestProto, TrailingCommentAfterPackage) { + verifyFormat("package foo.pkg; // comment\n"); +} + TEST_F(FormatTestProto, FormatsService) { verifyFormat("service SearchService {\n" " rpc Search(SearchRequest) returns (SearchResponse) {\n"
Index: lib/Format/TokenAnnotator.cpp =================================================================== --- lib/Format/TokenAnnotator.cpp +++ lib/Format/TokenAnnotator.cpp @@ -1119,10 +1119,10 @@ return LT_ImportStatement; } - // In .proto files, top-level options are very similar to import statements - // and should not be line-wrapped. + // In .proto files, top-level options and package statements are very + // similar to import statements and should not be line-wrapped. if (Style.Language == FormatStyle::LK_Proto && Line.Level == 0 && - CurrentToken->is(Keywords.kw_option)) { + CurrentToken->isOneOf(Keywords.kw_option, Keywords.kw_package)) { next(); if (CurrentToken && CurrentToken->is(tok::identifier)) { while (CurrentToken) Index: unittests/Format/FormatTestProto.cpp =================================================================== --- unittests/Format/FormatTestProto.cpp +++ unittests/Format/FormatTestProto.cpp @@ -397,6 +397,16 @@ "};"); } +TEST_F(FormatTestProto, DoesntWrapPackageStatements) { + verifyFormat( + "package" + " some.really.long.package.that.exceeds.the.column.limit00000000;"); +} + +TEST_F(FormatTestProto, TrailingCommentAfterPackage) { + verifyFormat("package foo.pkg; // comment\n"); +} + TEST_F(FormatTestProto, FormatsService) { verifyFormat("service SearchService {\n" " rpc Search(SearchRequest) returns (SearchResponse) {\n"
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits