diff options
| author | bors <bors@rust-lang.org> | 2015-01-31 03:57:01 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2015-01-31 03:57:01 +0000 |
| commit | 474b324eda10440d6568ef872a7307d38e7de95b (patch) | |
| tree | 53fc5aaa615f1c6e5abd757e42a75b3d19ce3abb /src/liballoc | |
| parent | 1d00c545ede609b9d43fdf9f252c15da5a66dac7 (diff) | |
| parent | e8fd9d3d0bf0f4974460337df29c0d3ceb514987 (diff) | |
| download | rust-474b324eda10440d6568ef872a7307d38e7de95b.tar.gz rust-474b324eda10440d6568ef872a7307d38e7de95b.zip | |
Auto merge of #21791 - alexcrichton:rollup, r=alexcrichton
Diffstat (limited to 'src/liballoc')
| -rw-r--r-- | src/liballoc/arc.rs | 85 | ||||
| -rw-r--r-- | src/liballoc/boxed_test.rs | 2 | ||||
| -rw-r--r-- | src/liballoc/heap.rs | 2 | ||||
| -rw-r--r-- | src/liballoc/lib.rs | 3 | ||||
| -rw-r--r-- | src/liballoc/rc.rs | 66 |
5 files changed, 80 insertions, 78 deletions
diff --git a/src/liballoc/arc.rs b/src/liballoc/arc.rs index f9f6de2df58..4818e4abaf2 100644 --- a/src/liballoc/arc.rs +++ b/src/liballoc/arc.rs @@ -12,20 +12,22 @@ //! Threadsafe reference-counted boxes (the `Arc<T>` type). //! -//! The `Arc<T>` type provides shared ownership of an immutable value. Destruction is -//! deterministic, and will occur as soon as the last owner is gone. It is marked as `Send` because -//! it uses atomic reference counting. +//! The `Arc<T>` type provides shared ownership of an immutable value. +//! Destruction is deterministic, and will occur as soon as the last owner is +//! gone. It is marked as `Send` because it uses atomic reference counting. //! -//! If you do not need thread-safety, and just need shared ownership, consider the [`Rc<T>` -//! type](../rc/struct.Rc.html). It is the same as `Arc<T>`, but does not use atomics, making it -//! both thread-unsafe as well as significantly faster when updating the reference count. +//! If you do not need thread-safety, and just need shared ownership, consider +//! the [`Rc<T>` type](../rc/struct.Rc.html). It is the same as `Arc<T>`, but +//! does not use atomics, making it both thread-unsafe as well as significantly +//! faster when updating the reference count. //! -//! The `downgrade` method can be used to create a non-owning `Weak<T>` pointer to the box. A -//! `Weak<T>` pointer can be upgraded to an `Arc<T>` pointer, but will return `None` if the value -//! has already been dropped. +//! The `downgrade` method can be used to create a non-owning `Weak<T>` pointer +//! to the box. A `Weak<T>` pointer can be upgraded to an `Arc<T>` pointer, but +//! will return `None` if the value has already been dropped. //! -//! For example, a tree with parent pointers can be represented by putting the nodes behind strong -//! `Arc<T>` pointers, and then storing the parent pointers as `Weak<T>` pointers. +//! For example, a tree with parent pointers can be represented by putting the +//! nodes behind strong `Arc<T>` pointers, and then storing the parent pointers +//! as `Weak<T>` pointers. //! //! # Examples //! @@ -35,7 +37,7 @@ //! use std::sync::Arc; //! use std::thread::Thread; //! -//! let five = Arc::new(5i); +//! let five = Arc::new(5); //! //! for _ in 0u..10 { //! let five = five.clone(); @@ -52,7 +54,7 @@ //! use std::sync::{Arc, Mutex}; //! use std::thread::Thread; //! -//! let five = Arc::new(Mutex::new(5i)); +//! let five = Arc::new(Mutex::new(5)); //! //! for _ in 0u..10 { //! let five = five.clone(); @@ -87,8 +89,9 @@ use heap::deallocate; /// /// # Example /// -/// In this example, a large vector of floats is shared between several tasks. With simple pipes, -/// without `Arc`, a copy would have to be made for each task. +/// In this example, a large vector of floats is shared between several tasks. +/// With simple pipes, without `Arc`, a copy would have to be made for each +/// task. /// /// ```rust /// use std::sync::Arc; @@ -154,7 +157,7 @@ impl<T> Arc<T> { /// ``` /// use std::sync::Arc; /// - /// let five = Arc::new(5i); + /// let five = Arc::new(5); /// ``` #[inline] #[stable(feature = "rust1", since = "1.0.0")] @@ -176,7 +179,7 @@ impl<T> Arc<T> { /// ``` /// use std::sync::Arc; /// - /// let five = Arc::new(5i); + /// let five = Arc::new(5); /// /// let weak_five = five.downgrade(); /// ``` @@ -221,7 +224,7 @@ impl<T> Clone for Arc<T> { /// ``` /// use std::sync::Arc; /// - /// let five = Arc::new(5i); + /// let five = Arc::new(5); /// /// five.clone(); /// ``` @@ -268,7 +271,7 @@ impl<T: Send + Sync + Clone> Arc<T> { /// ``` /// use std::sync::Arc; /// - /// let mut five = Arc::new(5i); + /// let mut five = Arc::new(5); /// /// let mut_five = five.make_unique(); /// ``` @@ -304,14 +307,14 @@ impl<T: Sync + Send> Drop for Arc<T> { /// use std::sync::Arc; /// /// { - /// let five = Arc::new(5i); + /// let five = Arc::new(5); /// /// // stuff /// /// drop(five); // explict drop /// } /// { - /// let five = Arc::new(5i); + /// let five = Arc::new(5); /// /// // stuff /// @@ -371,7 +374,7 @@ impl<T: Sync + Send> Weak<T> { /// ``` /// use std::sync::Arc; /// - /// let five = Arc::new(5i); + /// let five = Arc::new(5); /// /// let weak_five = five.downgrade(); /// @@ -408,7 +411,7 @@ impl<T: Sync + Send> Clone for Weak<T> { /// ``` /// use std::sync::Arc; /// - /// let weak_five = Arc::new(5i).downgrade(); + /// let weak_five = Arc::new(5).downgrade(); /// /// weak_five.clone(); /// ``` @@ -433,7 +436,7 @@ impl<T: Sync + Send> Drop for Weak<T> { /// use std::sync::Arc; /// /// { - /// let five = Arc::new(5i); + /// let five = Arc::new(5); /// let weak_five = five.downgrade(); /// /// // stuff @@ -441,7 +444,7 @@ impl<T: Sync + Send> Drop for Weak<T> { /// drop(weak_five); // explict drop /// } /// { - /// let five = Arc::new(5i); + /// let five = Arc::new(5); /// let weak_five = five.downgrade(); /// /// // stuff @@ -475,9 +478,9 @@ impl<T: PartialEq> PartialEq for Arc<T> { /// ``` /// use std::sync::Arc; /// - /// let five = Arc::new(5i); + /// let five = Arc::new(5); /// - /// five == Arc::new(5i); + /// five == Arc::new(5); /// ``` fn eq(&self, other: &Arc<T>) -> bool { *(*self) == *(*other) } @@ -490,9 +493,9 @@ impl<T: PartialEq> PartialEq for Arc<T> { /// ``` /// use std::sync::Arc; /// - /// let five = Arc::new(5i); + /// let five = Arc::new(5); /// - /// five != Arc::new(5i); + /// five != Arc::new(5); /// ``` fn ne(&self, other: &Arc<T>) -> bool { *(*self) != *(*other) } } @@ -507,9 +510,9 @@ impl<T: PartialOrd> PartialOrd for Arc<T> { /// ``` /// use std::sync::Arc; /// - /// let five = Arc::new(5i); + /// let five = Arc::new(5); /// - /// five.partial_cmp(&Arc::new(5i)); + /// five.partial_cmp(&Arc::new(5)); /// ``` fn partial_cmp(&self, other: &Arc<T>) -> Option<Ordering> { (**self).partial_cmp(&**other) @@ -524,9 +527,9 @@ impl<T: PartialOrd> PartialOrd for Arc<T> { /// ``` /// use std::sync::Arc; /// - /// let five = Arc::new(5i); + /// let five = Arc::new(5); /// - /// five < Arc::new(5i); + /// five < Arc::new(5); /// ``` fn lt(&self, other: &Arc<T>) -> bool { *(*self) < *(*other) } @@ -539,9 +542,9 @@ impl<T: PartialOrd> PartialOrd for Arc<T> { /// ``` /// use std::sync::Arc; /// - /// let five = Arc::new(5i); + /// let five = Arc::new(5); /// - /// five <= Arc::new(5i); + /// five <= Arc::new(5); /// ``` fn le(&self, other: &Arc<T>) -> bool { *(*self) <= *(*other) } @@ -554,9 +557,9 @@ impl<T: PartialOrd> PartialOrd for Arc<T> { /// ``` /// use std::sync::Arc; /// - /// let five = Arc::new(5i); + /// let five = Arc::new(5); /// - /// five > Arc::new(5i); + /// five > Arc::new(5); /// ``` fn gt(&self, other: &Arc<T>) -> bool { *(*self) > *(*other) } @@ -569,9 +572,9 @@ impl<T: PartialOrd> PartialOrd for Arc<T> { /// ``` /// use std::sync::Arc; /// - /// let five = Arc::new(5i); + /// let five = Arc::new(5); /// - /// five >= Arc::new(5i); + /// five >= Arc::new(5); /// ``` fn ge(&self, other: &Arc<T>) -> bool { *(*self) >= *(*other) } } @@ -719,14 +722,14 @@ mod tests { #[test] fn test_live() { - let x = Arc::new(5i); + let x = Arc::new(5); let y = x.downgrade(); assert!(y.upgrade().is_some()); } #[test] fn test_dead() { - let x = Arc::new(5i); + let x = Arc::new(5); let y = x.downgrade(); drop(x); assert!(y.upgrade().is_none()); diff --git a/src/liballoc/boxed_test.rs b/src/liballoc/boxed_test.rs index c47a771f60d..4ffb94e7a61 100644 --- a/src/liballoc/boxed_test.rs +++ b/src/liballoc/boxed_test.rs @@ -20,7 +20,7 @@ use std::boxed::BoxAny; #[test] fn test_owned_clone() { - let a = Box::new(5i); + let a = Box::new(5); let b: Box<int> = a.clone(); assert!(a == b); } diff --git a/src/liballoc/heap.rs b/src/liballoc/heap.rs index 1fb6290c7a3..1d5637a6ad6 100644 --- a/src/liballoc/heap.rs +++ b/src/liballoc/heap.rs @@ -403,7 +403,7 @@ mod test { #[bench] fn alloc_owned_small(b: &mut Bencher) { b.iter(|| { - box 10i + box 10 }) } } diff --git a/src/liballoc/lib.rs b/src/liballoc/lib.rs index 8960667fdfa..99423349020 100644 --- a/src/liballoc/lib.rs +++ b/src/liballoc/lib.rs @@ -66,12 +66,11 @@ html_root_url = "http://doc.rust-lang.org/nightly/")] #![no_std] -#![allow(unknown_features)] #![feature(lang_items, unsafe_destructor)] #![feature(box_syntax)] #![feature(optin_builtin_traits)] +#![feature(int_uint)] #![feature(unboxed_closures)] -#![allow(unknown_features)] #![feature(int_uint)] #![feature(core)] #![feature(hash)] #![feature(libc)] diff --git a/src/liballoc/rc.rs b/src/liballoc/rc.rs index d41673f56ed..8a542e1b8cb 100644 --- a/src/liballoc/rc.rs +++ b/src/liballoc/rc.rs @@ -192,7 +192,7 @@ impl<T> Rc<T> { /// ``` /// use std::rc::Rc; /// - /// let five = Rc::new(5i); + /// let five = Rc::new(5); /// ``` #[stable(feature = "rust1", since = "1.0.0")] pub fn new(value: T) -> Rc<T> { @@ -217,7 +217,7 @@ impl<T> Rc<T> { /// ``` /// use std::rc::Rc; /// - /// let five = Rc::new(5i); + /// let five = Rc::new(5); /// /// let weak_five = five.downgrade(); /// ``` @@ -247,7 +247,7 @@ pub fn strong_count<T>(this: &Rc<T>) -> uint { this.strong() } /// use std::rc; /// use std::rc::Rc; /// -/// let five = Rc::new(5i); +/// let five = Rc::new(5); /// /// rc::is_unique(&five); /// ``` @@ -329,7 +329,7 @@ impl<T: Clone> Rc<T> { /// ``` /// use std::rc::Rc; /// - /// let mut five = Rc::new(5i); + /// let mut five = Rc::new(5); /// /// let mut_five = five.make_unique(); /// ``` @@ -378,14 +378,14 @@ impl<T> Drop for Rc<T> { /// use std::rc::Rc; /// /// { - /// let five = Rc::new(5i); + /// let five = Rc::new(5); /// /// // stuff /// /// drop(five); // explict drop /// } /// { - /// let five = Rc::new(5i); + /// let five = Rc::new(5); /// /// // stuff /// @@ -425,7 +425,7 @@ impl<T> Clone for Rc<T> { /// ``` /// use std::rc::Rc; /// - /// let five = Rc::new(5i); + /// let five = Rc::new(5); /// /// five.clone(); /// ``` @@ -466,9 +466,9 @@ impl<T: PartialEq> PartialEq for Rc<T> { /// ``` /// use std::rc::Rc; /// - /// let five = Rc::new(5i); + /// let five = Rc::new(5); /// - /// five == Rc::new(5i); + /// five == Rc::new(5); /// ``` #[inline(always)] fn eq(&self, other: &Rc<T>) -> bool { **self == **other } @@ -482,9 +482,9 @@ impl<T: PartialEq> PartialEq for Rc<T> { /// ``` /// use std::rc::Rc; /// - /// let five = Rc::new(5i); + /// let five = Rc::new(5); /// - /// five != Rc::new(5i); + /// five != Rc::new(5); /// ``` #[inline(always)] fn ne(&self, other: &Rc<T>) -> bool { **self != **other } @@ -504,9 +504,9 @@ impl<T: PartialOrd> PartialOrd for Rc<T> { /// ``` /// use std::rc::Rc; /// - /// let five = Rc::new(5i); + /// let five = Rc::new(5); /// - /// five.partial_cmp(&Rc::new(5i)); + /// five.partial_cmp(&Rc::new(5)); /// ``` #[inline(always)] fn partial_cmp(&self, other: &Rc<T>) -> Option<Ordering> { @@ -522,9 +522,9 @@ impl<T: PartialOrd> PartialOrd for Rc<T> { /// ``` /// use std::rc::Rc; /// - /// let five = Rc::new(5i); + /// let five = Rc::new(5); /// - /// five < Rc::new(5i); + /// five < Rc::new(5); /// ``` #[inline(always)] fn lt(&self, other: &Rc<T>) -> bool { **self < **other } @@ -538,9 +538,9 @@ impl<T: PartialOrd> PartialOrd for Rc<T> { /// ``` /// use std::rc::Rc; /// - /// let five = Rc::new(5i); + /// let five = Rc::new(5); /// - /// five <= Rc::new(5i); + /// five <= Rc::new(5); /// ``` #[inline(always)] fn le(&self, other: &Rc<T>) -> bool { **self <= **other } @@ -554,9 +554,9 @@ impl<T: PartialOrd> PartialOrd for Rc<T> { /// ``` /// use std::rc::Rc; /// - /// let five = Rc::new(5i); + /// let five = Rc::new(5); /// - /// five > Rc::new(5i); + /// five > Rc::new(5); /// ``` #[inline(always)] fn gt(&self, other: &Rc<T>) -> bool { **self > **other } @@ -570,9 +570,9 @@ impl<T: PartialOrd> PartialOrd for Rc<T> { /// ``` /// use std::rc::Rc; /// - /// let five = Rc::new(5i); + /// let five = Rc::new(5); /// - /// five >= Rc::new(5i); + /// five >= Rc::new(5); /// ``` #[inline(always)] fn ge(&self, other: &Rc<T>) -> bool { **self >= **other } @@ -589,9 +589,9 @@ impl<T: Ord> Ord for Rc<T> { /// ``` /// use std::rc::Rc; /// - /// let five = Rc::new(5i); + /// let five = Rc::new(5); /// - /// five.partial_cmp(&Rc::new(5i)); + /// five.partial_cmp(&Rc::new(5)); /// ``` #[inline] fn cmp(&self, other: &Rc<T>) -> Ordering { (**self).cmp(&**other) } @@ -653,7 +653,7 @@ impl<T> Weak<T> { /// ``` /// use std::rc::Rc; /// - /// let five = Rc::new(5i); + /// let five = Rc::new(5); /// /// let weak_five = five.downgrade(); /// @@ -682,7 +682,7 @@ impl<T> Drop for Weak<T> { /// use std::rc::Rc; /// /// { - /// let five = Rc::new(5i); + /// let five = Rc::new(5); /// let weak_five = five.downgrade(); /// /// // stuff @@ -690,7 +690,7 @@ impl<T> Drop for Weak<T> { /// drop(weak_five); // explict drop /// } /// { - /// let five = Rc::new(5i); + /// let five = Rc::new(5); /// let weak_five = five.downgrade(); /// /// // stuff @@ -726,7 +726,7 @@ impl<T> Clone for Weak<T> { /// ``` /// use std::rc::Rc; /// - /// let weak_five = Rc::new(5i).downgrade(); + /// let weak_five = Rc::new(5).downgrade(); /// /// weak_five.clone(); /// ``` @@ -789,7 +789,7 @@ mod tests { #[test] fn test_clone() { - let x = Rc::new(RefCell::new(5i)); + let x = Rc::new(RefCell::new(5)); let y = x.clone(); *x.borrow_mut() = 20; assert_eq!(*y.borrow(), 20); @@ -797,13 +797,13 @@ mod tests { #[test] fn test_simple() { - let x = Rc::new(5i); + let x = Rc::new(5); assert_eq!(*x, 5); } #[test] fn test_simple_clone() { - let x = Rc::new(5i); + let x = Rc::new(5); let y = x.clone(); assert_eq!(*x, 5); assert_eq!(*y, 5); @@ -811,20 +811,20 @@ mod tests { #[test] fn test_destructor() { - let x = Rc::new(box 5i); + let x = Rc::new(box 5); assert_eq!(**x, 5); } #[test] fn test_live() { - let x = Rc::new(5i); + let x = Rc::new(5); let y = x.downgrade(); assert!(y.upgrade().is_some()); } #[test] fn test_dead() { - let x = Rc::new(5i); + let x = Rc::new(5); let y = x.downgrade(); drop(x); assert!(y.upgrade().is_none()); |
