diff options
| author | Alexis Beingessner <a.beingessner@gmail.com> | 2014-08-21 19:42:35 -0400 |
|---|---|---|
| committer | Alexis Beingessner <a.beingessner@gmail.com> | 2014-08-21 20:17:45 -0400 |
| commit | b8dc103a950d1dec441e1936b2d7b18457571e1b (patch) | |
| tree | 07d93838ccc6f16622ccc848e82c4cda9fe219dc | |
| parent | dc65307e3be587aa1bee9d17a539822626198f9d (diff) | |
| download | rust-b8dc103a950d1dec441e1936b2d7b18457571e1b.tar.gz rust-b8dc103a950d1dec441e1936b2d7b18457571e1b.zip | |
make priorityqueue's from_iter use heapify
| -rw-r--r-- | src/libcollections/priority_queue.rs | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/src/libcollections/priority_queue.rs b/src/libcollections/priority_queue.rs index 34cc0225815..28283cdbc51 100644 --- a/src/libcollections/priority_queue.rs +++ b/src/libcollections/priority_queue.rs @@ -527,10 +527,9 @@ impl<'a, T> Iterator<&'a T> for Items<'a, T> { } 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) } } |
