diff options
| author | Daniel Micay <danielmicay@gmail.com> | 2012-12-17 18:08:59 -0500 |
|---|---|---|
| committer | Brian Anderson <banderson@mozilla.com> | 2012-12-17 15:23:12 -0800 |
| commit | f1e87733bd4b669f2dcfe758a7ae2b1ddea60715 (patch) | |
| tree | add90449df756372b4c5acaf85634aedc603f135 /src/libstd/priority_queue.rs | |
| parent | 02e804bba8e2e82e6e2112ceb297ffb237b42ea6 (diff) | |
| download | rust-f1e87733bd4b669f2dcfe758a7ae2b1ddea60715.tar.gz rust-f1e87733bd4b669f2dcfe758a7ae2b1ddea60715.zip | |
add an empty PriorityQueue constructor
Diffstat (limited to 'src/libstd/priority_queue.rs')
| -rw-r--r-- | src/libstd/priority_queue.rs | 20 |
1 files 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 <T: Ord> PriorityQueue<T> { q.to_vec() } + /// Create an empty PriorityQueue + static pure fn new() -> PriorityQueue<T> { PriorityQueue{data: ~[],} } + /// Create a PriorityQueue from a vector (heapify) - static pub pure fn from_vec(xs: ~[T]) -> PriorityQueue<T> { + static pure fn from_vec(xs: ~[T]) -> PriorityQueue<T> { let mut q = PriorityQueue{data: xs,}; let mut n = q.len() / 2; while n > 0 { @@ -168,7 +171,7 @@ impl <T: Ord> PriorityQueue<T> { 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::<int>(~[]); heap.pop(); } + fn test_empty_pop() { let mut heap = new::<int>(); heap.pop(); } #[test] fn test_empty_maybe_pop() { - let mut heap = from_vec::<int>(~[]); + let mut heap = new::<int>(); assert heap.maybe_pop().is_none(); } #[test] #[should_fail] #[ignore(cfg(windows))] - fn test_empty_top() { let empty = from_vec::<int>(~[]); empty.top(); } + fn test_empty_top() { let empty = new::<int>(); empty.top(); } #[test] fn test_empty_maybe_top() { - let empty = from_vec::<int>(~[]); + let empty = new::<int>(); assert empty.maybe_top().is_none(); } #[test] #[should_fail] #[ignore(cfg(windows))] - fn test_empty_replace() { - let mut heap = from_vec::<int>(~[]); - heap.replace(5); - } + fn test_empty_replace() { let mut heap = new(); heap.replace(5); } } |
