diff options
Diffstat (limited to 'src/libextra')
| -rw-r--r-- | src/libextra/priority_queue.rs | 14 | ||||
| -rw-r--r-- | src/libextra/ringbuf.rs | 20 |
2 files changed, 19 insertions, 15 deletions
diff --git a/src/libextra/priority_queue.rs b/src/libextra/priority_queue.rs index 33b3931e989..3ae3dae9ea3 100644 --- a/src/libextra/priority_queue.rs +++ b/src/libextra/priority_queue.rs @@ -51,10 +51,14 @@ impl<T:Ord> PriorityQueue<T> { /// Returns the number of elements the queue can hold without reallocating pub fn capacity(&self) -> uint { self.data.capacity() } - pub fn reserve(&mut self, n: uint) { self.data.reserve(n) } - - pub fn reserve_at_least(&mut self, n: uint) { - self.data.reserve_at_least(n) + /// Reserve capacity for exactly n elements in the PriorityQueue. + /// Do nothing if the capacity is already sufficient. + pub fn reserve_exact(&mut self, n: uint) { self.data.reserve_exact(n) } + + /// Reserve capacity for at least n elements in the PriorityQueue. + /// Do nothing if the capacity is already sufficient. + pub fn reserve(&mut self, n: uint) { + self.data.reserve(n) } /// Pop the greatest item from the queue - fails if empty @@ -203,7 +207,7 @@ impl<T: Ord> Extendable<T> for PriorityQueue<T> { let (lower, _) = iter.size_hint(); let len = self.capacity(); - self.reserve_at_least(len + lower); + self.reserve(len + lower); for elem in *iter { self.push(elem); diff --git a/src/libextra/ringbuf.rs b/src/libextra/ringbuf.rs index a4c50386262..4da35942935 100644 --- a/src/libextra/ringbuf.rs +++ b/src/libextra/ringbuf.rs @@ -168,8 +168,8 @@ impl<T> RingBuf<T> { /// # Arguments /// /// * n - The number of elements to reserve space for - pub fn reserve(&mut self, n: uint) { - self.elts.reserve(n); + pub fn reserve_exact(&mut self, n: uint) { + self.elts.reserve_exact(n); } /// Reserve capacity for at least `n` elements in the given RingBuf, @@ -182,8 +182,8 @@ impl<T> RingBuf<T> { /// # Arguments /// /// * n - The number of elements to reserve space for - pub fn reserve_at_least(&mut self, n: uint) { - self.elts.reserve_at_least(n); + pub fn reserve(&mut self, n: uint) { + self.elts.reserve(n); } /// Front-to-back iterator. @@ -641,26 +641,26 @@ mod tests { } #[test] - fn test_reserve() { + fn test_reserve_exact() { let mut d = RingBuf::new(); d.push_back(0u64); - d.reserve(50); + d.reserve_exact(50); assert_eq!(d.elts.capacity(), 50); let mut d = RingBuf::new(); d.push_back(0u32); - d.reserve(50); + d.reserve_exact(50); assert_eq!(d.elts.capacity(), 50); } #[test] - fn test_reserve_at_least() { + fn test_reserve() { let mut d = RingBuf::new(); d.push_back(0u64); - d.reserve_at_least(50); + d.reserve(50); assert_eq!(d.elts.capacity(), 64); let mut d = RingBuf::new(); d.push_back(0u32); - d.reserve_at_least(50); + d.reserve(50); assert_eq!(d.elts.capacity(), 64); } |
