diff --git a/src/libcollections/vec.rs b/src/libcollections/vec.rs index 751775888b759..0002867495c78 100644 --- a/src/libcollections/vec.rs +++ b/src/libcollections/vec.rs @@ -35,8 +35,7 @@ pub static PTR_MARKER: u8 = 0; /// /// # Examples /// -/// ```rust -/// # use std::vec::Vec; +/// ``` /// let mut vec = Vec::new(); /// vec.push(1i); /// vec.push(2i); @@ -46,16 +45,45 @@ pub static PTR_MARKER: u8 = 0; /// /// assert_eq!(vec.pop(), Some(2)); /// assert_eq!(vec.len(), 1); +/// +/// *vec.get_mut(0) = 7i; +/// assert_eq!(vec[0], 7); +/// +/// vec.push_all([1, 2, 3]); +/// +/// for x in vec.iter() { +/// println!("{}", x); +/// } +/// assert_eq!(vec, vec![7i, 1, 2, 3]); /// ``` /// /// The `vec!` macro is provided to make initialization more convenient: /// -/// ```rust +/// ``` /// let mut vec = vec![1i, 2i, 3i]; /// vec.push(4); /// assert_eq!(vec, vec![1, 2, 3, 4]); /// ``` /// +/// Use a `Vec` as an efficient stack: +/// +/// ``` +/// let mut stack = Vec::new(); +/// +/// stack.push(1i); +/// stack.push(2i); +/// stack.push(3i); +/// +/// loop { +/// let top = match stack.pop() { +/// None => break, // empty +/// Some(x) => x, +/// }; +/// // Prints 3, 2, 1 +/// println!("{}", top); +/// } +/// ``` +/// /// # Capacity and reallocation /// /// The capacity of a vector is the amount of space allocated for any future @@ -86,8 +114,7 @@ impl Vec { /// /// # Example /// - /// ```rust - /// # use std::vec::Vec; + /// ``` /// let mut vec: Vec = Vec::new(); /// ``` #[inline] @@ -112,8 +139,7 @@ impl Vec { /// /// # Example /// - /// ```rust - /// # use std::vec::Vec; + /// ``` /// let mut vec: Vec = Vec::with_capacity(10); /// /// // The vector contains no items, even though it has capacity for more @@ -148,10 +174,9 @@ impl Vec { /// /// # Example /// - /// ```rust - /// # use std::vec::Vec; + /// ``` /// let vec = Vec::from_fn(3, |idx| idx * 2); - /// assert_eq!(vec, vec!(0, 2, 4)); + /// assert_eq!(vec, vec![0, 2, 4]); /// ``` #[inline] pub fn from_fn(length: uint, op: |uint| -> T) -> Vec { @@ -175,6 +200,37 @@ impl Vec { /// - there must be `length` valid instances of type `T` at the /// beginning of that allocation /// - `ptr` must be allocated by the default `Vec` allocator + /// + /// # Example + /// + /// ``` + /// use std::ptr; + /// use std::mem; + /// + /// fn main() { + /// let mut v = vec![1i, 2, 3]; + /// + /// // Pull out the various important pieces of information about `v` + /// let p = v.as_mut_ptr(); + /// let len = v.len(); + /// let cap = v.capacity(); + /// + /// unsafe { + /// // Cast `v` into the void: no destructor run, so we are in + /// // complete control of the allocation to which `p` points. + /// mem::forget(v); + /// + /// // Overwrite memory with 4, 5, 6 + /// for i in range(0, len as int) { + /// ptr::write(p.offset(i), 4 + i); + /// } + /// + /// // Put everything back together into a Vec + /// let rebuilt = Vec::from_raw_parts(len, cap, p); + /// assert_eq!(rebuilt, vec![4i, 5i, 6i]); + /// } + /// } + /// ``` pub unsafe fn from_raw_parts(length: uint, capacity: uint, ptr: *mut T) -> Vec { Vec { len: length, cap: capacity, ptr: ptr } @@ -188,11 +244,11 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let vec = vec!(1i, 2i, 3i, 4i); + /// ``` + /// let vec = vec![1i, 2i, 3i, 4i]; /// let (even, odd) = vec.partition(|&n| n % 2 == 0); - /// assert_eq!(even, vec!(2, 4)); - /// assert_eq!(odd, vec!(1, 3)); + /// assert_eq!(even, vec![2, 4]); + /// assert_eq!(odd, vec![1, 3]); /// ``` #[inline] pub fn partition(self, f: |&T| -> bool) -> (Vec, Vec) { @@ -217,10 +273,10 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let vec = vec!(1i, 2i); + /// ``` + /// let vec = vec![1i, 2i]; /// let vec = vec.append([3i, 4i]); - /// assert_eq!(vec, vec!(1, 2, 3, 4)); + /// assert_eq!(vec, vec![1, 2, 3, 4]); /// ``` #[inline] pub fn append(mut self, second: &[T]) -> Vec { @@ -232,8 +288,7 @@ impl Vec { /// /// # Example /// - /// ```rust - /// # use std::vec::Vec; + /// ``` /// let slice = [1i, 2, 3]; /// let vec = Vec::from_slice(slice); /// ``` @@ -249,8 +304,7 @@ impl Vec { /// Creates a `Vec` with `length` copies of `value`. /// /// # Example - /// ```rust - /// # use std::vec::Vec; + /// ``` /// let vec = Vec::from_elem(3, "hi"); /// println!("{}", vec); // prints [hi, hi, hi] /// ``` @@ -275,10 +329,10 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let mut vec = vec!(1i); + /// ``` + /// let mut vec = vec![1i]; /// vec.push_all([2i, 3, 4]); - /// assert_eq!(vec, vec!(1, 2, 3, 4)); + /// assert_eq!(vec, vec![1, 2, 3, 4]); /// ``` #[inline] pub fn push_all(&mut self, other: &[T]) { @@ -305,10 +359,10 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let mut vec = vec!("hello"); + /// ``` + /// let mut vec = vec!["hello"]; /// vec.grow(2, &("world")); - /// assert_eq!(vec, vec!("hello", "world", "world")); + /// assert_eq!(vec, vec!["hello", "world", "world"]); /// ``` pub fn grow(&mut self, n: uint, value: &T) { self.reserve_additional(n); @@ -329,11 +383,11 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let mut vec = vec!("a", "b", "c"); + /// ``` + /// let mut vec = vec!["a", "b", "c"]; /// vec.grow_set(1, &("fill"), "d"); /// vec.grow_set(4, &("fill"), "e"); - /// assert_eq!(vec, vec!("a", "d", "c", "fill", "e")); + /// assert_eq!(vec, vec!["a", "d", "c", "fill", "e"]); /// ``` pub fn grow_set(&mut self, index: uint, initval: &T, value: T) { let l = self.len(); @@ -351,11 +405,11 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let vec = vec!(1i, 2, 3, 4); + /// ``` + /// let vec = vec![1i, 2, 3, 4]; /// let (even, odd) = vec.partitioned(|&n| n % 2 == 0); - /// assert_eq!(even, vec!(2i, 4)); - /// assert_eq!(odd, vec!(1i, 3)); + /// assert_eq!(even, vec![2i, 4]); + /// assert_eq!(odd, vec![1i, 3]); /// ``` pub fn partitioned(&self, f: |&T| -> bool) -> (Vec, Vec) { let mut lefts = Vec::new(); @@ -501,8 +555,7 @@ impl Vec { /// /// # Example /// - /// ```rust - /// # use std::vec::Vec; + /// ``` /// let vec: Vec = Vec::with_capacity(10); /// assert_eq!(vec.capacity(), 10); /// ``` @@ -520,9 +573,8 @@ impl Vec { /// /// # Example /// - /// ```rust - /// # use std::vec::Vec; - /// let mut vec: Vec = vec!(1i); + /// ``` + /// let mut vec: Vec = vec![1i]; /// vec.reserve_additional(10); /// assert!(vec.capacity() >= 11); /// ``` @@ -546,8 +598,8 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let mut vec = vec!(1i, 2, 3); + /// ``` + /// let mut vec = vec![1i, 2, 3]; /// vec.reserve(10); /// assert!(vec.capacity() >= 10); /// ``` @@ -564,8 +616,7 @@ impl Vec { /// /// # Example /// - /// ```rust - /// # use std::vec::Vec; + /// ``` /// let mut vec: Vec = Vec::with_capacity(10); /// vec.reserve_exact(11); /// assert_eq!(vec.capacity(), 11); @@ -588,8 +639,8 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let mut vec = vec!(1i, 2, 3); + /// ``` + /// let mut vec = vec![1i, 2, 3]; /// vec.shrink_to_fit(); /// ``` pub fn shrink_to_fit(&mut self) { @@ -620,10 +671,10 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let mut vec = vec!(1i, 2, 3); + /// ``` + /// let mut vec = vec![1i, 2, 3]; /// assert_eq!(vec.pop(), Some(3)); - /// assert_eq!(vec, vec!(1, 2)); + /// assert_eq!(vec, vec![1, 2]); /// ``` #[inline] pub fn pop(&mut self) -> Option { @@ -645,10 +696,10 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let mut vec = vec!(1i, 2); + /// ``` + /// let mut vec = vec![1i, 2]; /// vec.push(3); - /// assert_eq!(vec, vec!(1, 2, 3)); + /// assert_eq!(vec, vec![1, 2, 3]); /// ``` #[inline] pub fn push(&mut self, value: T) { @@ -681,10 +732,10 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let vec = vec!(1i, 2); + /// ``` + /// let vec = vec![1i, 2]; /// let vec = vec.append_one(3); - /// assert_eq!(vec, vec!(1, 2, 3)); + /// assert_eq!(vec, vec![1, 2, 3]); /// ``` #[inline] pub fn append_one(mut self, x: T) -> Vec { @@ -699,10 +750,10 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let mut vec = vec!(1i, 2, 3, 4); + /// ``` + /// let mut vec = vec![1i, 2, 3, 4]; /// vec.truncate(2); - /// assert_eq!(vec, vec!(1, 2)); + /// assert_eq!(vec, vec![1, 2]); /// ``` pub fn truncate(&mut self, len: uint) { unsafe { @@ -720,10 +771,10 @@ impl Vec { /// /// # Example /// - /// ```rust + /// ``` /// fn foo(slice: &mut [int]) {} /// - /// let mut vec = vec!(1i, 2); + /// let mut vec = vec![1i, 2]; /// foo(vec.as_mut_slice()); /// ``` #[inline] @@ -742,8 +793,8 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let v = vec!("a".to_string(), "b".to_string()); + /// ``` + /// let v = vec!["a".to_string(), "b".to_string()]; /// for s in v.move_iter() { /// // s has type String, not &String /// println!("{}", s); @@ -766,6 +817,15 @@ impl Vec { /// This will explicitly set the size of the vector, without actually /// modifying its buffers, so it is up to the caller to ensure that the /// vector is actually the specified size. + /// + /// # Example + /// + /// ``` + /// let mut v = vec![1u, 2, 3, 4]; + /// unsafe { + /// v.set_len(1); + /// } + /// ``` #[inline] pub unsafe fn set_len(&mut self, len: uint) { self.len = len; @@ -779,10 +839,10 @@ impl Vec { /// /// # Example /// - /// ```rust + /// ``` /// #![allow(deprecated)] /// - /// let vec = vec!(1i, 2, 3); + /// let vec = vec![1i, 2, 3]; /// assert!(vec.get(1) == &2); /// ``` #[deprecated="prefer using indexing, e.g., vec[0]"] @@ -799,10 +859,10 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let mut vec = vec!(1i, 2, 3); + /// ``` + /// let mut vec = vec![1i, 2, 3]; /// *vec.get_mut(1) = 4; - /// assert_eq!(vec, vec!(1i, 4, 3)); + /// assert_eq!(vec, vec![1i, 4, 3]); /// ``` #[inline] pub fn get_mut<'a>(&'a mut self, index: uint) -> &'a mut T { @@ -814,8 +874,8 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let vec = vec!(1i, 2, 3); + /// ``` + /// let vec = vec![1i, 2, 3]; /// for num in vec.iter() { /// println!("{}", *num); /// } @@ -831,8 +891,8 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let mut vec = vec!(1i, 2, 3); + /// ``` + /// let mut vec = vec![1i, 2, 3]; /// for num in vec.mut_iter() { /// *num = 0; /// } @@ -849,14 +909,14 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let mut v = vec!(5i, 4, 1, 3, 2); + /// ``` + /// let mut v = vec![5i, 4, 1, 3, 2]; /// v.sort_by(|a, b| a.cmp(b)); - /// assert_eq!(v, vec!(1i, 2, 3, 4, 5)); + /// assert_eq!(v, vec![1i, 2, 3, 4, 5]); /// /// // reverse sorting /// v.sort_by(|a, b| b.cmp(a)); - /// assert_eq!(v, vec!(5i, 4, 3, 2, 1)); + /// assert_eq!(v, vec![5i, 4, 3, 2, 1]); /// ``` #[inline] pub fn sort_by(&mut self, compare: |&T, &T| -> Ordering) { @@ -872,8 +932,8 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let vec = vec!(1i, 2, 3, 4); + /// ``` + /// let vec = vec![1i, 2, 3, 4]; /// assert!(vec.slice(0, 2) == [1, 2]); /// ``` #[inline] @@ -889,8 +949,8 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let vec = vec!(1i, 2, 3); + /// ``` + /// let vec = vec![1i, 2, 3]; /// assert!(vec.tail() == [2, 3]); /// ``` #[inline] @@ -906,8 +966,8 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let vec = vec!(1i, 2, 3, 4); + /// ``` + /// let vec = vec![1i, 2, 3, 4]; /// assert!(vec.tailn(2) == [3, 4]); /// ``` #[inline] @@ -920,8 +980,8 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let vec = vec!(1i, 2, 3); + /// ``` + /// let vec = vec![1i, 2, 3]; /// assert!(vec.last() == Some(&3)); /// ``` #[inline] @@ -934,10 +994,10 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let mut vec = vec!(1i, 2, 3); + /// ``` + /// let mut vec = vec![1i, 2, 3]; /// *vec.mut_last().unwrap() = 4; - /// assert_eq!(vec, vec!(1i, 2, 4)); + /// assert_eq!(vec, vec![1i, 2, 4]); /// ``` #[inline] pub fn mut_last<'a>(&'a mut self) -> Option<&'a mut T> { @@ -950,15 +1010,15 @@ impl Vec { /// Returns `None` if `index` is out of bounds. /// /// # Example - /// ```rust - /// let mut v = vec!("foo".to_string(), "bar".to_string(), - /// "baz".to_string(), "qux".to_string()); + /// ``` + /// let mut v = vec!["foo".to_string(), "bar".to_string(), + /// "baz".to_string(), "qux".to_string()]; /// /// assert_eq!(v.swap_remove(1), Some("bar".to_string())); - /// assert_eq!(v, vec!("foo".to_string(), "qux".to_string(), "baz".to_string())); + /// assert_eq!(v, vec!["foo".to_string(), "qux".to_string(), "baz".to_string()]); /// /// assert_eq!(v.swap_remove(0), Some("foo".to_string())); - /// assert_eq!(v, vec!("baz".to_string(), "qux".to_string())); + /// assert_eq!(v, vec!["baz".to_string(), "qux".to_string()]); /// /// assert_eq!(v.swap_remove(2), None); /// ``` @@ -982,10 +1042,10 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let mut vec = vec!(1i, 2, 3); + /// ``` + /// let mut vec = vec![1i, 2, 3]; /// vec.unshift(4); - /// assert_eq!(vec, vec!(4, 1, 2, 3)); + /// assert_eq!(vec, vec![4, 1, 2, 3]); /// ``` #[inline] pub fn unshift(&mut self, element: T) { @@ -1002,10 +1062,10 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let mut vec = vec!(1i, 2, 3); + /// ``` + /// let mut vec = vec![1i, 2, 3]; /// assert!(vec.shift() == Some(1)); - /// assert_eq!(vec, vec!(2, 3)); + /// assert_eq!(vec, vec![2, 3]); /// ``` #[inline] pub fn shift(&mut self) -> Option { @@ -1022,12 +1082,12 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let mut vec = vec!(1i, 2, 3); + /// ``` + /// let mut vec = vec![1i, 2, 3]; /// vec.insert(1, 4); - /// assert_eq!(vec, vec!(1, 4, 2, 3)); + /// assert_eq!(vec, vec![1, 4, 2, 3]); /// vec.insert(4, 5); - /// assert_eq!(vec, vec!(1, 4, 2, 3, 5)); + /// assert_eq!(vec, vec![1, 4, 2, 3, 5]); /// ``` pub fn insert(&mut self, index: uint, element: T) { let len = self.len(); @@ -1056,14 +1116,14 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let mut v = vec!(1i, 2, 3); + /// ``` + /// let mut v = vec![1i, 2, 3]; /// assert_eq!(v.remove(1), Some(2)); - /// assert_eq!(v, vec!(1, 3)); + /// assert_eq!(v, vec![1, 3]); /// /// assert_eq!(v.remove(4), None); /// // v is unchanged: - /// assert_eq!(v, vec!(1, 3)); + /// assert_eq!(v, vec![1, 3]); /// ``` pub fn remove(&mut self, index: uint) -> Option { let len = self.len(); @@ -1095,10 +1155,10 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let mut vec = vec!(box 1i); - /// vec.push_all_move(vec!(box 2, box 3, box 4)); - /// assert_eq!(vec, vec!(box 1, box 2, box 3, box 4)); + /// ``` + /// let mut vec = vec![box 1i]; + /// vec.push_all_move(vec![box 2, box 3, box 4]); + /// assert_eq!(vec, vec![box 1, box 2, box 3, box 4]); /// ``` #[inline] pub fn push_all_move(&mut self, other: Vec) { @@ -1114,8 +1174,8 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let mut vec = vec!(1i, 2, 3, 4); + /// ``` + /// let mut vec = vec![1i, 2, 3, 4]; /// assert!(vec.mut_slice(0, 2) == [1, 2]); /// ``` #[inline] @@ -1132,8 +1192,8 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let mut vec = vec!(1i, 2, 3, 4); + /// ``` + /// let mut vec = vec![1i, 2, 3, 4]; /// assert!(vec.mut_slice_from(2) == [3, 4]); /// ``` #[inline] @@ -1149,8 +1209,8 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let mut vec = vec!(1i, 2, 3, 4); + /// ``` + /// let mut vec = vec![1i, 2, 3, 4]; /// assert!(vec.mut_slice_to(2) == [1, 2]); /// ``` #[inline] @@ -1170,8 +1230,8 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let mut vec = vec!(1i, 2, 3, 4, 5, 6); + /// ``` + /// let mut vec = vec![1i, 2, 3, 4, 5, 6]; /// /// // scoped to restrict the lifetime of the borrows /// { @@ -1201,10 +1261,10 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let mut v = vec!(1i, 2, 3); + /// ``` + /// let mut v = vec![1i, 2, 3]; /// v.reverse(); - /// assert_eq!(v, vec!(3i, 2, 1)); + /// assert_eq!(v, vec![3i, 2, 1]); /// ``` #[inline] pub fn reverse(&mut self) { @@ -1219,8 +1279,8 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let vec = vec!(1i, 2, 3); + /// ``` + /// let vec = vec![1i, 2, 3]; /// assert!(vec.slice_from(1) == [2, 3]); /// ``` #[inline] @@ -1236,8 +1296,8 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let vec = vec!(1i, 2, 3); + /// ``` + /// let vec = vec![1i, 2, 3, 4]; /// assert!(vec.slice_to(2) == [1, 2]); /// ``` #[inline] @@ -1250,6 +1310,13 @@ impl Vec { /// # Failure /// /// Fails if the vector is empty + /// + /// # Example + /// + /// ``` + /// let vec = vec![1i, 2, 3]; + /// assert!(vec.init() == [1, 2]); + /// ``` #[inline] pub fn init<'a>(&'a self) -> &'a [T] { self.slice(0, self.len() - 1) @@ -1263,6 +1330,19 @@ impl Vec { /// /// Modifying the vector may cause its buffer to be reallocated, which /// would also make any pointers to it invalid. + /// + /// # Example + /// + /// ``` + /// let v = vec![1i, 2, 3]; + /// let p = v.as_ptr(); + /// unsafe { + /// // Examine each element manually + /// assert_eq!(*p, 1i); + /// assert_eq!(*p.offset(1), 2i); + /// assert_eq!(*p.offset(2), 3i); + /// } + /// ``` #[inline] pub fn as_ptr(&self) -> *const T { self.ptr as *const T @@ -1275,6 +1355,20 @@ impl Vec { /// /// Modifying the vector may cause its buffer to be reallocated, which /// would also make any pointers to it invalid. + /// + /// # Example + /// + /// ``` + /// use std::ptr; + /// + /// let mut v = vec![1i, 2, 3]; + /// let p = v.as_mut_ptr(); + /// unsafe { + /// ptr::write(p, 9i); + /// ptr::write(p.offset(2), 5i); + /// } + /// assert_eq!(v, vec![9i, 2, 5]); + /// ``` #[inline] pub fn as_mut_ptr(&mut self) -> *mut T { self.ptr @@ -1287,10 +1381,10 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let mut vec = vec!(1i, 2, 3, 4); + /// ``` + /// let mut vec = vec![1i, 2, 3, 4]; /// vec.retain(|x| x%2 == 0); - /// assert_eq!(vec, vec!(2, 4)); + /// assert_eq!(vec, vec![2, 4]); /// ``` pub fn retain(&mut self, f: |&T| -> bool) { let len = self.len(); @@ -1318,10 +1412,10 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let mut vec = vec!(0u, 1); + /// ``` + /// let mut vec = vec![0u, 1]; /// vec.grow_fn(3, |i| i); - /// assert_eq!(vec, vec!(0, 1, 0, 1, 2)); + /// assert_eq!(vec, vec![0, 1, 0, 1, 2]); /// ``` pub fn grow_fn(&mut self, n: uint, f: |uint| -> T) { self.reserve_additional(n); @@ -1339,10 +1433,10 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let mut vec = vec!(3i, 1, 2); + /// ``` + /// let mut vec = vec![3i, 1, 2]; /// vec.sort(); - /// assert_eq!(vec, vec!(1, 2, 3)); + /// assert_eq!(vec, vec![1, 2, 3]); /// ``` pub fn sort(&mut self) { self.as_mut_slice().sort() @@ -1361,8 +1455,8 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let vec = vec!(1i, 2, 3); + /// ``` + /// let vec = vec![1i, 2, 3]; /// assert!(vec.contains(&1)); /// ``` #[inline] @@ -1376,10 +1470,10 @@ impl Vec { /// /// # Example /// - /// ```rust - /// let mut vec = vec!(1i, 2, 2, 3, 2); + /// ``` + /// let mut vec = vec![1i, 2, 2, 3, 2]; /// vec.dedup(); - /// assert_eq!(vec, vec!(1i, 2, 3, 2)); + /// assert_eq!(vec, vec![1i, 2, 3, 2]); /// ``` pub fn dedup(&mut self) { unsafe { @@ -1471,10 +1565,10 @@ impl Vector for Vec { /// /// # Example /// - /// ```rust + /// ``` /// fn foo(slice: &[int]) {} /// - /// let vec = vec!(1i, 2); + /// let vec = vec![1i, 2]; /// foo(vec.as_slice()); /// ``` #[inline]