about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--src/libcore/vec.rs12
-rw-r--r--src/libstd/deque.rs2
2 files changed, 7 insertions, 7 deletions
diff --git a/src/libcore/vec.rs b/src/libcore/vec.rs
index 43ab77287a6..b55a3bee8b0 100644
--- a/src/libcore/vec.rs
+++ b/src/libcore/vec.rs
@@ -1865,6 +1865,7 @@ pub trait OwnedVector<T> {
     fn consume(self, f: fn(uint, v: T));
     fn filter(self, f: fn(t: &T) -> bool) -> ~[T];
     fn partition(self, f: pure fn(&T) -> bool) -> (~[T], ~[T]);
+    fn grow_fn(&mut self, n: uint, op: iter::InitOp<T>);
 }
 
 impl<T> OwnedVector<T> for ~[T] {
@@ -1936,6 +1937,11 @@ impl<T> OwnedVector<T> for ~[T] {
     fn partition(self, f: fn(&T) -> bool) -> (~[T], ~[T]) {
         partition(self, f)
     }
+
+    #[inline]
+    fn grow_fn(&mut self, n: uint, op: iter::InitOp<T>) {
+        grow_fn(self, n, op);
+    }
 }
 
 impl<T> Mutable for ~[T] {
@@ -1946,7 +1952,6 @@ impl<T> Mutable for ~[T] {
 pub trait OwnedCopyableVector<T: Copy> {
     fn push_all(&mut self, rhs: &[const T]);
     fn grow(&mut self, n: uint, initval: &T);
-    fn grow_fn(&mut self, n: uint, op: iter::InitOp<T>);
     fn grow_set(&mut self, index: uint, initval: &T, val: T);
 }
 
@@ -1962,11 +1967,6 @@ impl<T: Copy> OwnedCopyableVector<T> for ~[T] {
     }
 
     #[inline]
-    fn grow_fn(&mut self, n: uint, op: iter::InitOp<T>) {
-        grow_fn(self, n, op);
-    }
-
-    #[inline]
     fn grow_set(&mut self, index: uint, initval: &T, val: T) {
         grow_set(self, index, initval, val);
     }
diff --git a/src/libstd/deque.rs b/src/libstd/deque.rs
index 2c90100a6f6..b1285dac9f4 100644
--- a/src/libstd/deque.rs
+++ b/src/libstd/deque.rs
@@ -100,7 +100,7 @@ fn grow<T>(nelts: uint, lo: uint, elts: &mut [Option<T>]) -> ~[Option<T>] {
     assert nelts == elts.len();
     let mut rv = ~[];
 
-    do vec::grow_fn(&mut rv, nelts + 1) |i| {
+    do rv.grow_fn(nelts + 1) |i| {
         let mut element = None;
         element <-> elts[(lo + i) % nelts];
         element