mirror of
https://github.com/rust-lang/rust.git
synced 2026-06-01 22:18:23 +03:00
add a BaseIter implementation for PriorityQueue
This commit is contained in:
@@ -12,6 +12,7 @@
|
||||
|
||||
use core::container::{Container, Mutable};
|
||||
use core::cmp::Ord;
|
||||
use core::iter::BaseIter;
|
||||
use core::prelude::*;
|
||||
use core::ptr::addr_of;
|
||||
use core::vec;
|
||||
@@ -26,6 +27,14 @@ pub struct PriorityQueue<T> {
|
||||
priv data: ~[T],
|
||||
}
|
||||
|
||||
impl <T: Ord> PriorityQueue<T>: BaseIter<T> {
|
||||
/// Visit all values in the underlying vector.
|
||||
///
|
||||
/// The values are **not** visited in order.
|
||||
pure fn each(&self, f: fn(&T) -> bool) { self.data.each(f) }
|
||||
pure fn size_hint(&self) -> Option<uint> { self.data.size_hint() }
|
||||
}
|
||||
|
||||
impl <T: Ord> PriorityQueue<T>: Container {
|
||||
/// Returns the length of the queue
|
||||
pure fn len(&self) -> uint { self.data.len() }
|
||||
|
||||
Reference in New Issue
Block a user