summaryrefslogtreecommitdiffstats
path: root/clang/lib
diff options
context:
space:
mode:
authorDaniel Jasper <djasper@google.com>2015-03-15 13:59:51 +0000
committerDaniel Jasper <djasper@google.com>2015-03-15 13:59:51 +0000
commitbc46b939e647b9ded4ccad7de7694b388369291a (patch)
tree93610082eaec190370a12b60099a6de8cfc333c1 /clang/lib
parent60948b12bb91dc38750d3a75c81d79edb86eda86 (diff)
downloadbcm5719-llvm-bc46b939e647b9ded4ccad7de7694b388369291a.tar.gz
bcm5719-llvm-bc46b939e647b9ded4ccad7de7694b388369291a.zip
clang-format: [JS] support cast syntax and type arguments.
Casts in TS syntax (foo = <type>bar;) should not be followed by whitespace. Patch by Martin Probst. Thank you. llvm-svn: 232321
Diffstat (limited to 'clang/lib')
-rw-r--r--clang/lib/Format/TokenAnnotator.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/clang/lib/Format/TokenAnnotator.cpp b/clang/lib/Format/TokenAnnotator.cpp
index c6c81a48912..911d52d7be5 100644
--- a/clang/lib/Format/TokenAnnotator.cpp
+++ b/clang/lib/Format/TokenAnnotator.cpp
@@ -1779,6 +1779,13 @@ bool TokenAnnotator::spaceRequiredBefore(const AnnotatedLine &Line,
if ((Left.is(tok::l_brace) || Right.is(tok::r_brace)) &&
Line.First->isOneOf(Keywords.kw_import, tok::kw_export))
return false;
+ if (Left.is(TT_TemplateCloser) &&
+ !Right.isOneOf(tok::l_brace, tok::comma, tok::l_square,
+ Keywords.kw_implements, Keywords.kw_extends))
+ // Type assertions ('<type>expr') are not followed by whitespace. Other
+ // locations that should have whitespace following are identified by the
+ // above set of follower tokens.
+ return false;
} else if (Style.Language == FormatStyle::LK_Java) {
if (Left.is(tok::r_square) && Right.is(tok::l_brace))
return true;
OpenPOWER on IntegriCloud