diff options
author | Paul Hoad <mydeveloperday@gmail.com> | 2019-03-23 14:43:41 +0000 |
---|---|---|
committer | Paul Hoad <mydeveloperday@gmail.com> | 2019-03-23 14:43:41 +0000 |
commit | aca36bed51a99615ddd5a9db8d63064daa57cdc6 (patch) | |
tree | 4c4643cee591cf9bff5274074f93f1c9b7231c5b | |
parent | c4515d09740be87226d185f7728893d26c5af652 (diff) |
[clang-format] Keep protobuf "package" statement on one line
Summary:
Top-level "package" and "import" statements should generally be kept on one
line, for all languages.
Reviewers: sammccall, krasimir, MyDeveloperDay
Reviewed By: MyDeveloperDay
Subscribers: MyDeveloperDay, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D59627
Patch By: dchai (Donald Chai)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@356835 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/Format/TokenAnnotator.cpp | 6 | ||||
-rw-r--r-- | unittests/Format/FormatTestProto.cpp | 6 |
2 files changed, 9 insertions, 3 deletions
diff --git a/lib/Format/TokenAnnotator.cpp b/lib/Format/TokenAnnotator.cpp index ccf5e51576..a3000a8fde 100644 --- a/lib/Format/TokenAnnotator.cpp +++ b/lib/Format/TokenAnnotator.cpp @@ -1119,10 +1119,10 @@ public: 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)) return LT_ImportStatement; diff --git a/unittests/Format/FormatTestProto.cpp b/unittests/Format/FormatTestProto.cpp index d5683b5b84..fd4870c27f 100644 --- a/unittests/Format/FormatTestProto.cpp +++ b/unittests/Format/FormatTestProto.cpp @@ -393,6 +393,12 @@ TEST_F(FormatTestProto, FormatsOptions) { "};"); } +TEST_F(FormatTestProto, DoesntWrapPackageStatements) { + verifyFormat( + "package" + " some.really.long.package.that.exceeds.the.column.limit00000000;"); +} + TEST_F(FormatTestProto, FormatsService) { verifyFormat("service SearchService {\n" " rpc Search(SearchRequest) returns (SearchResponse) {\n" |