aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2007-04-02 01:21:19 +0000
committerChris Lattner <sabre@nondot.org>2007-04-02 01:21:19 +0000
commit086f18626750482318612a10c3027b946b4e36e4 (patch)
tree323859f4fe9bb7f30bedeec2b7706ad092e82012
parent41b213e532bc67b271d4bb7d621604ac3f6bf044 (diff)
add range version of insert()
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35572 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--include/llvm/ADT/SmallPtrSet.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/include/llvm/ADT/SmallPtrSet.h b/include/llvm/ADT/SmallPtrSet.h
index a85b4974f8..6bd4d0927f 100644
--- a/include/llvm/ADT/SmallPtrSet.h
+++ b/include/llvm/ADT/SmallPtrSet.h
@@ -90,6 +90,12 @@ public:
/// was already in the set.
bool insert(void *Ptr);
+ template <typename IterT>
+ void insert(IterT I, IterT E) {
+ for (; I != E; ++I)
+ insert((void*)*I);
+ }
+
/// erase - If the set contains the specified pointer, remove it and return
/// true, otherwise return false.
bool erase(void *Ptr);
@@ -212,8 +218,7 @@ public:
template<typename It>
SmallPtrSet(It I, It E)
: SmallPtrSetImpl(NextPowerOfTwo<SmallSizePowTwo>::Val) {
- for (; I != E; ++I)
- insert(*I);
+ insert(I, E);
}
typedef SmallPtrSetIterator<PtrType> iterator;