]> git.lizzy.rs Git - rust.git/commitdiff
make priorityqueue's from_iter use heapify
authorAlexis Beingessner <a.beingessner@gmail.com>
Thu, 21 Aug 2014 23:42:35 +0000 (19:42 -0400)
committerAlexis Beingessner <a.beingessner@gmail.com>
Fri, 22 Aug 2014 00:17:45 +0000 (20:17 -0400)
src/libcollections/priority_queue.rs

index 34cc02258157f346fc30c399d721efed36f26db2..28283cdbc51097d089b88871486d20f9d3272170 100644 (file)
@@ -527,10 +527,9 @@ fn size_hint(&self) -> (uint, Option<uint>) { self.iter.size_hint() }
 }
 
 impl<T: Ord> FromIterator<T> for PriorityQueue<T> {
-    fn from_iter<Iter: Iterator<T>>(iter: Iter) -> PriorityQueue<T> {
-        let mut q = PriorityQueue::new();
-        q.extend(iter);
-        q
+    fn from_iter<Iter: Iterator<T>>(mut iter: Iter) -> PriorityQueue<T> {
+        let vec: Vec<T> = iter.collect();
+        PriorityQueue::from_vec(vec)
     }
 }