summaryrefslogtreecommitdiffstats
path: root/clang/lib/Format/FormatToken.h
diff options
context:
space:
mode:
authorDaniel Jasper <djasper@google.com>2013-08-27 14:24:43 +0000
committerDaniel Jasper <djasper@google.com>2013-08-27 14:24:43 +0000
commit4c6e00595b444b958bf11a68cceed9d43dbacbc4 (patch)
tree170afc94af26e9920953fc9377badec9e75d4db5 /clang/lib/Format/FormatToken.h
parent5320c2b563d9b6e40c24753325d448d3be6d14b6 (diff)
downloadbcm5719-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.h8
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);
}
OpenPOWER on IntegriCloud