diff options
author | Aaron Ballman <aaron@aaronballman.com> | 2014-07-15 21:32:31 +0000 |
---|---|---|
committer | Aaron Ballman <aaron@aaronballman.com> | 2014-07-15 21:32:31 +0000 |
commit | 2a89e8526a297a3ddb2a4e56045060f26cb0f71c (patch) | |
tree | 473bca5646fc3299344622d953901446db7241a8 /clang/lib/AST/TemplateBase.cpp | |
parent | 0aca5f093472f651a853d0df550099af3a5d15c0 (diff) | |
download | bcm5719-llvm-2a89e8526a297a3ddb2a4e56045060f26cb0f71c.tar.gz bcm5719-llvm-2a89e8526a297a3ddb2a4e56045060f26cb0f71c.zip |
Added the pack_elements range accessor. Refactoring some for loops to use range-based for loops instead. No functional changes intended.
llvm-svn: 213095
Diffstat (limited to 'clang/lib/AST/TemplateBase.cpp')
-rw-r--r-- | clang/lib/AST/TemplateBase.cpp | 21 |
1 files changed, 8 insertions, 13 deletions
diff --git a/clang/lib/AST/TemplateBase.cpp b/clang/lib/AST/TemplateBase.cpp index d7ae73cf12c..ac6a754fe73 100644 --- a/clang/lib/AST/TemplateBase.cpp +++ b/clang/lib/AST/TemplateBase.cpp @@ -114,11 +114,9 @@ bool TemplateArgument::isDependent() const { return (getAsExpr()->isTypeDependent() || getAsExpr()->isValueDependent()); case Pack: - for (pack_iterator P = pack_begin(), PEnd = pack_end(); P != PEnd; ++P) { - if (P->isDependent()) + for (const auto &P : pack_elements()) + if (P.isDependent()) return true; - } - return false; } @@ -155,11 +153,9 @@ bool TemplateArgument::isInstantiationDependent() const { return getAsExpr()->isInstantiationDependent(); case Pack: - for (pack_iterator P = pack_begin(), PEnd = pack_end(); P != PEnd; ++P) { - if (P->isInstantiationDependent()) + for (const auto &P : pack_elements()) + if (P.isInstantiationDependent()) return true; - } - return false; } @@ -214,8 +210,8 @@ bool TemplateArgument::containsUnexpandedParameterPack() const { break; case Pack: - for (pack_iterator P = pack_begin(), PEnd = pack_end(); P != PEnd; ++P) - if (P->containsUnexpandedParameterPack()) + for (const auto &P : pack_elements()) + if (P.containsUnexpandedParameterPack()) return true; break; @@ -392,14 +388,13 @@ void TemplateArgument::print(const PrintingPolicy &Policy, case Pack: Out << "<"; bool First = true; - for (TemplateArgument::pack_iterator P = pack_begin(), PEnd = pack_end(); - P != PEnd; ++P) { + for (const auto &P : pack_elements()) { if (First) First = false; else Out << ", "; - P->print(Policy, Out); + P.print(Policy, Out); } Out << ">"; break; |