diff options
author | David Majnemer <david.majnemer@gmail.com> | 2016-08-11 21:15:00 +0000 |
---|---|---|
committer | David Majnemer <david.majnemer@gmail.com> | 2016-08-11 21:15:00 +0000 |
commit | 0a16c228463ca58c7828b5fd9bdd10b3ba612bbf (patch) | |
tree | 761d8030441a22b5acb0f154ff4586eb6679833f /llvm/include | |
parent | 1b689da04e3f8f2c83b1365853a8af39a27b30ea (diff) | |
download | bcm5719-llvm-0a16c228463ca58c7828b5fd9bdd10b3ba612bbf.tar.gz bcm5719-llvm-0a16c228463ca58c7828b5fd9bdd10b3ba612bbf.zip |
Use range algorithms instead of unpacking begin/end
No functionality change is intended.
llvm-svn: 278417
Diffstat (limited to 'llvm/include')
-rw-r--r-- | llvm/include/llvm/ADT/ArrayRef.h | 11 | ||||
-rw-r--r-- | llvm/include/llvm/Support/CommandLine.h | 3 |
2 files changed, 13 insertions, 1 deletions
diff --git a/llvm/include/llvm/ADT/ArrayRef.h b/llvm/include/llvm/ADT/ArrayRef.h index 1163a9e1701..bfe851485f3 100644 --- a/llvm/include/llvm/ADT/ArrayRef.h +++ b/llvm/include/llvm/ADT/ArrayRef.h @@ -13,6 +13,7 @@ #include "llvm/ADT/Hashing.h" #include "llvm/ADT/None.h" #include "llvm/ADT/SmallVector.h" +#include <array> #include <vector> namespace llvm { @@ -78,6 +79,11 @@ namespace llvm { /*implicit*/ ArrayRef(const std::vector<T, A> &Vec) : Data(Vec.data()), Length(Vec.size()) {} + /// Construct an ArrayRef from a std::array + template <size_t N> + /*implicit*/ LLVM_CONSTEXPR ArrayRef(const std::array<T, N> &Arr) + : Data(Arr.data()), Length(N) {} + /// Construct an ArrayRef from a C array. template <size_t N> /*implicit*/ LLVM_CONSTEXPR ArrayRef(const T (&Arr)[N]) @@ -257,6 +263,11 @@ namespace llvm { /*implicit*/ MutableArrayRef(std::vector<T> &Vec) : ArrayRef<T>(Vec) {} + /// Construct an ArrayRef from a std::array + template <size_t N> + /*implicit*/ LLVM_CONSTEXPR MutableArrayRef(std::array<T, N> &Arr) + : ArrayRef<T>(Arr) {} + /// Construct an MutableArrayRef from a C array. template <size_t N> /*implicit*/ LLVM_CONSTEXPR MutableArrayRef(T (&Arr)[N]) diff --git a/llvm/include/llvm/Support/CommandLine.h b/llvm/include/llvm/Support/CommandLine.h index 70465a0e3fd..a0ec2622b03 100644 --- a/llvm/include/llvm/Support/CommandLine.h +++ b/llvm/include/llvm/Support/CommandLine.h @@ -21,6 +21,7 @@ #define LLVM_SUPPORT_COMMANDLINE_H #include "llvm/ADT/ArrayRef.h" +#include "llvm/ADT/STLExtras.h" #include "llvm/ADT/SmallPtrSet.h" #include "llvm/ADT/SmallVector.h" #include "llvm/ADT/StringMap.h" @@ -278,7 +279,7 @@ public: return getNumOccurrencesFlag() == cl::ConsumeAfter; } bool isInAllSubCommands() const { - return std::any_of(Subs.begin(), Subs.end(), [](const SubCommand *SC) { + return any_of(Subs, [](const SubCommand *SC) { return SC == &*AllSubCommands; }); } |