From f1e87733bd4b669f2dcfe758a7ae2b1ddea60715 Mon Sep 17 00:00:00 2001 From: Daniel Micay Date: Mon, 17 Dec 2012 18:08:59 -0500 Subject: [PATCH] add an empty PriorityQueue constructor --- src/libstd/priority_queue.rs | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/src/libstd/priority_queue.rs b/src/libstd/priority_queue.rs index 59d15c8b4c2..2f24b47883f 100644 --- a/src/libstd/priority_queue.rs +++ b/src/libstd/priority_queue.rs @@ -105,8 +105,11 @@ impl PriorityQueue { q.to_vec() } + /// Create an empty PriorityQueue + static pure fn new() -> PriorityQueue { PriorityQueue{data: ~[],} } + /// Create a PriorityQueue from a vector (heapify) - static pub pure fn from_vec(xs: ~[T]) -> PriorityQueue { + static pure fn from_vec(xs: ~[T]) -> PriorityQueue { let mut q = PriorityQueue{data: xs,}; let mut n = q.len() / 2; while n > 0 { @@ -168,7 +171,7 @@ impl PriorityQueue { mod tests { use sort::merge_sort; use core::cmp::le; - use priority_queue::PriorityQueue::from_vec; + use priority_queue::PriorityQueue::{from_vec, new}; #[test] fn test_top_and_pop() { @@ -279,30 +282,27 @@ mod tests { #[test] #[should_fail] #[ignore(cfg(windows))] - fn test_empty_pop() { let mut heap = from_vec::(~[]); heap.pop(); } + fn test_empty_pop() { let mut heap = new::(); heap.pop(); } #[test] fn test_empty_maybe_pop() { - let mut heap = from_vec::(~[]); + let mut heap = new::(); assert heap.maybe_pop().is_none(); } #[test] #[should_fail] #[ignore(cfg(windows))] - fn test_empty_top() { let empty = from_vec::(~[]); empty.top(); } + fn test_empty_top() { let empty = new::(); empty.top(); } #[test] fn test_empty_maybe_top() { - let empty = from_vec::(~[]); + let empty = new::(); assert empty.maybe_top().is_none(); } #[test] #[should_fail] #[ignore(cfg(windows))] - fn test_empty_replace() { - let mut heap = from_vec::(~[]); - heap.replace(5); - } + fn test_empty_replace() { let mut heap = new(); heap.replace(5); } }