Add a new (simple) StringMap::clear method, patch by Pratik
[oota-llvm.git] / include / llvm / ADT / PriorityQueue.h
index 1cff0f2a0ceeaf0ca062a8e6209e18cb944c72bd..f10bb6c7afa85a842511b923defc1b5014c13dcc 100644 (file)
@@ -51,7 +51,7 @@ public:
     // Logarithmic-time heap bubble-up.
     while (i != 0) {
       typename Sequence::size_type parent = (i - 1) / 2;
-      std::swap(this->c[i], this->c[parent]);
+      this->c[i] = this->c[parent];
       i = parent;
     }
 
@@ -70,6 +70,12 @@ public:
   void reheapify() {
     std::make_heap(this->c.begin(), this->c.end(), this->comp);
   }
+
+  /// clear - Erase all elements from the queue.
+  ///
+  void clear() {
+    this->c.clear();
+  }
 };
 
 } // End llvm namespace