diff options
author | Daniel Jasper <djasper@google.com> | 2013-08-27 14:24:43 +0000 |
---|---|---|
committer | Daniel Jasper <djasper@google.com> | 2013-08-27 14:24:43 +0000 |
commit | 4c6e00595b444b958bf11a68cceed9d43dbacbc4 (patch) | |
tree | 170afc94af26e9920953fc9377badec9e75d4db5 /clang/lib/Format/FormatToken.h | |
parent | 5320c2b563d9b6e40c24753325d448d3be6d14b6 (diff) | |
download | bcm5719-llvm-4c6e00595b444b958bf11a68cceed9d43dbacbc4.tar.gz bcm5719-llvm-4c6e00595b444b958bf11a68cceed9d43dbacbc4.zip |
clang-format: Format segments of builder-type calls one per line.
This fixes llvm.org/PR14818.
Before:
return llvm::StringSwitch<Reference::Kind>(name)
.StartsWith(".eh_frame_hdr", ORDER_EH_FRAMEHDR)
.StartsWith(".eh_frame", ORDER_EH_FRAME)
.StartsWith(".init", ORDER_INIT).StartsWith(".fini", ORDER_FINI)
.StartsWith(".hash", ORDER_HASH).Default(ORDER_TEXT);
After:
return llvm::StringSwitch<Reference::Kind>(name)
.StartsWith(".eh_frame_hdr", ORDER_EH_FRAMEHDR)
.StartsWith(".eh_frame", ORDER_EH_FRAME)
.StartsWith(".init", ORDER_INIT)
.StartsWith(".fini", ORDER_FINI)
.StartsWith(".hash", ORDER_HASH)
.Default(ORDER_TEXT);
llvm-svn: 189353
Diffstat (limited to 'clang/lib/Format/FormatToken.h')
-rw-r--r-- | clang/lib/Format/FormatToken.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/clang/lib/Format/FormatToken.h b/clang/lib/Format/FormatToken.h index 150a9755e22..62b0ba6adf2 100644 --- a/clang/lib/Format/FormatToken.h +++ b/clang/lib/Format/FormatToken.h @@ -257,6 +257,12 @@ struct FormatToken { Type == TT_TemplateCloser; } + /// \brief Returns \c true if this is a "." or "->" accessing a member. + bool isMemberAccess() const { + return isOneOf(tok::arrow, tok::period) && + Type != TT_DesignatedInitializerPeriod; + } + bool isUnaryOperator() const { switch (Tok.getKind()) { case tok::plus: @@ -272,10 +278,12 @@ struct FormatToken { return false; } } + bool isBinaryOperator() const { // Comma is a binary operator, but does not behave as such wrt. formatting. return getPrecedence() > prec::Comma; } + bool isTrailingComment() const { return is(tok::comment) && (!Next || Next->NewlinesBefore > 0); } |