give StringMap a new ctor which allows you to initialize it
authorChris Lattner <sabre@nondot.org>
Fri, 23 Jul 2010 03:29:59 +0000 (03:29 +0000)
committerChris Lattner <sabre@nondot.org>
Fri, 23 Jul 2010 03:29:59 +0000 (03:29 +0000)
with an existing allocator.  The interesting use case of this
is that it allows "StringMap<whatever, BumpPtrAllocator&>" for
when you want to allocate out of a preexisting bump pointer
allocator owned by someone else.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109213 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/ADT/StringMap.h

index 482193859b64c8906bd96d8abfa9208024d1b17f..59ff6aa4f6aa00ca03785dab05b35a0da53cac7a 100644 (file)
@@ -254,6 +254,10 @@ public:
   StringMap() : StringMapImpl(static_cast<unsigned>(sizeof(MapEntryTy))) {}
   explicit StringMap(unsigned InitialSize)
     : StringMapImpl(InitialSize, static_cast<unsigned>(sizeof(MapEntryTy))) {}
+  
+  explicit StringMap(AllocatorTy A)
+    : StringMapImpl(static_cast<unsigned>(sizeof(MapEntryTy))), Allocator(A) {}
+
   explicit StringMap(const StringMap &RHS)
     : StringMapImpl(static_cast<unsigned>(sizeof(MapEntryTy))) {
     assert(RHS.empty() &&