From 236b7487d525359440815a425cba97fa36903afc Mon Sep 17 00:00:00 2001 From: Tymoteusz Jankowski Date: Sun, 23 Jul 2017 14:18:34 +0200 Subject: Add simple docs example for struct Cell --- src/libcore/cell.rs | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'src/libcore') diff --git a/src/libcore/cell.rs b/src/libcore/cell.rs index 35744f3f16b..7e12d5466c2 100644 --- a/src/libcore/cell.rs +++ b/src/libcore/cell.rs @@ -187,6 +187,29 @@ use ops::{Deref, DerefMut, CoerceUnsized}; use ptr; /// A mutable memory location. +/// +/// ``` +/// use std::cell::Cell; +/// +/// struct SomeStruct { +/// regular_field: u8, +/// special_field: Cell, +/// } +/// +/// let my_struct = SomeStruct { +/// regular_field: 0, +/// special_field: Cell::new(1), +/// }; +/// +/// let new_value = 100; +/// +/// // ERROR, because my_struct is immutable +/// // immutable.regular_field = new_value; +/// +/// // WORKS, special_field is mutable because it is Cell +/// immutable.special_field.set(new_value); +/// assert_eq!(immutable.special_field.get(), new_value); +/// ``` /// /// See the [module-level documentation](index.html) for more. #[stable(feature = "rust1", since = "1.0.0")] -- cgit 1.4.1-3-g733a5 From bb65d3256841e1a7d267a3177a9147fd83857727 Mon Sep 17 00:00:00 2001 From: Tymoteusz Jankowski Date: Mon, 24 Jul 2017 16:23:26 +0200 Subject: add prose --- src/libcore/cell.rs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'src/libcore') diff --git a/src/libcore/cell.rs b/src/libcore/cell.rs index 7e12d5466c2..acff77004ee 100644 --- a/src/libcore/cell.rs +++ b/src/libcore/cell.rs @@ -188,6 +188,11 @@ use ptr; /// A mutable memory location. /// +/// # Example +/// +/// Here you can see how using `Cell` allows to use muttable field inside +/// immutable struct (which is also called "interior mutability"). +/// /// ``` /// use std::cell::Cell; /// @@ -206,7 +211,7 @@ use ptr; /// // ERROR, because my_struct is immutable /// // immutable.regular_field = new_value; /// -/// // WORKS, special_field is mutable because it is Cell +/// // WORKS, although `my_struct` is immutable, field `special_field` is mutable because it is Cell /// immutable.special_field.set(new_value); /// assert_eq!(immutable.special_field.get(), new_value); /// ``` -- cgit 1.4.1-3-g733a5 From 3c535952bc7df52b8b9becae26511fb6ccdab7b1 Mon Sep 17 00:00:00 2001 From: Tymoteusz Jankowski Date: Mon, 24 Jul 2017 18:01:50 +0200 Subject: review fixes --- src/libcore/cell.rs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/libcore') diff --git a/src/libcore/cell.rs b/src/libcore/cell.rs index acff77004ee..804d95f12c4 100644 --- a/src/libcore/cell.rs +++ b/src/libcore/cell.rs @@ -188,10 +188,10 @@ use ptr; /// A mutable memory location. /// -/// # Example +/// # Examples /// -/// Here you can see how using `Cell` allows to use muttable field inside -/// immutable struct (which is also called "interior mutability"). +/// Here you can see how using `Cell` allows to use mutable field inside +/// immutable struct (which is also called 'interior mutability'). /// /// ``` /// use std::cell::Cell; -- cgit 1.4.1-3-g733a5 From 82860753463314e6a1b94f1f97d4d9c4effc0742 Mon Sep 17 00:00:00 2001 From: Tymoteusz Jankowski Date: Mon, 24 Jul 2017 18:07:51 +0200 Subject: ci fix? --- src/libcore/cell.rs | 5 ----- 1 file changed, 5 deletions(-) (limited to 'src/libcore') diff --git a/src/libcore/cell.rs b/src/libcore/cell.rs index 804d95f12c4..1610e89a82d 100644 --- a/src/libcore/cell.rs +++ b/src/libcore/cell.rs @@ -187,12 +187,9 @@ use ops::{Deref, DerefMut, CoerceUnsized}; use ptr; /// A mutable memory location. -/// /// # Examples -/// /// Here you can see how using `Cell` allows to use mutable field inside /// immutable struct (which is also called 'interior mutability'). -/// /// ``` /// use std::cell::Cell; /// @@ -207,10 +204,8 @@ use ptr; /// }; /// /// let new_value = 100; -/// /// // ERROR, because my_struct is immutable /// // immutable.regular_field = new_value; -/// /// // WORKS, although `my_struct` is immutable, field `special_field` is mutable because it is Cell /// immutable.special_field.set(new_value); /// assert_eq!(immutable.special_field.get(), new_value); -- cgit 1.4.1-3-g733a5 From beb072a8938db93e694435e852510b79a0909fd3 Mon Sep 17 00:00:00 2001 From: Tymoteusz Jankowski Date: Mon, 24 Jul 2017 21:45:21 +0200 Subject: empty lines --- src/libcore/cell.rs | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'src/libcore') diff --git a/src/libcore/cell.rs b/src/libcore/cell.rs index 1610e89a82d..1e7c8dfce5b 100644 --- a/src/libcore/cell.rs +++ b/src/libcore/cell.rs @@ -187,9 +187,12 @@ use ops::{Deref, DerefMut, CoerceUnsized}; use ptr; /// A mutable memory location. +/// /// # Examples +/// /// Here you can see how using `Cell` allows to use mutable field inside /// immutable struct (which is also called 'interior mutability'). +/// /// ``` /// use std::cell::Cell; /// @@ -204,8 +207,10 @@ use ptr; /// }; /// /// let new_value = 100; +/// /// // ERROR, because my_struct is immutable /// // immutable.regular_field = new_value; +/// /// // WORKS, although `my_struct` is immutable, field `special_field` is mutable because it is Cell /// immutable.special_field.set(new_value); /// assert_eq!(immutable.special_field.get(), new_value); -- cgit 1.4.1-3-g733a5 From 42dae9d96d2de5e18192ec13fd00380dcaef1745 Mon Sep 17 00:00:00 2001 From: Tshepang Lekhonkhobe Date: Mon, 24 Jul 2017 23:24:42 +0200 Subject: doc: make into_iter example more concise --- src/libcore/iter/traits.rs | 33 ++++++++------------------------- 1 file changed, 8 insertions(+), 25 deletions(-) (limited to 'src/libcore') diff --git a/src/libcore/iter/traits.rs b/src/libcore/iter/traits.rs index 679cf3a9b23..06ede4f3f76 100644 --- a/src/libcore/iter/traits.rs +++ b/src/libcore/iter/traits.rs @@ -147,22 +147,13 @@ pub trait FromIterator: Sized { /// /// ``` /// let v = vec![1, 2, 3]; -/// /// let mut iter = v.into_iter(); /// -/// let n = iter.next(); -/// assert_eq!(Some(1), n); -/// -/// let n = iter.next(); -/// assert_eq!(Some(2), n); -/// -/// let n = iter.next(); -/// assert_eq!(Some(3), n); -/// -/// let n = iter.next(); -/// assert_eq!(None, n); +/// assert_eq!(Some(1), iter.next()); +/// assert_eq!(Some(2), iter.next()); +/// assert_eq!(Some(3), iter.next()); +/// assert_eq!(None, iter.next()); /// ``` -/// /// Implementing `IntoIterator` for your type: /// /// ``` @@ -227,20 +218,12 @@ pub trait IntoIterator { /// /// ``` /// let v = vec![1, 2, 3]; - /// /// let mut iter = v.into_iter(); /// - /// let n = iter.next(); - /// assert_eq!(Some(1), n); - /// - /// let n = iter.next(); - /// assert_eq!(Some(2), n); - /// - /// let n = iter.next(); - /// assert_eq!(Some(3), n); - /// - /// let n = iter.next(); - /// assert_eq!(None, n); + /// assert_eq!(Some(1), iter.next()); + /// assert_eq!(Some(2), iter.next()); + /// assert_eq!(Some(3), iter.next()); + /// assert_eq!(None, iter.next()); /// ``` #[stable(feature = "rust1", since = "1.0.0")] fn into_iter(self) -> Self::IntoIter; -- cgit 1.4.1-3-g733a5 From d429a4eac81aea6070655cdfb5604187d94355a2 Mon Sep 17 00:00:00 2001 From: Tymoteusz Jankowski Date: Mon, 24 Jul 2017 23:43:34 +0200 Subject: s/immutable/my_struct --- src/libcore/cell.rs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/libcore') diff --git a/src/libcore/cell.rs b/src/libcore/cell.rs index 1e7c8dfce5b..21b5557db99 100644 --- a/src/libcore/cell.rs +++ b/src/libcore/cell.rs @@ -209,11 +209,11 @@ use ptr; /// let new_value = 100; /// /// // ERROR, because my_struct is immutable -/// // immutable.regular_field = new_value; +/// // my_struct.regular_field = new_value; /// /// // WORKS, although `my_struct` is immutable, field `special_field` is mutable because it is Cell -/// immutable.special_field.set(new_value); -/// assert_eq!(immutable.special_field.get(), new_value); +/// my_struct.special_field.set(new_value); +/// assert_eq!(my_struct.special_field.get(), new_value); /// ``` /// /// See the [module-level documentation](index.html) for more. -- cgit 1.4.1-3-g733a5 From bbb5311ad692819f979e9c9b1cd506b63c901378 Mon Sep 17 00:00:00 2001 From: Tobias Bucher Date: Sun, 30 Jul 2017 23:20:54 +0200 Subject: Document the `from_str_radix` panic CC #42034 --- src/libcore/num/mod.rs | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/libcore') diff --git a/src/libcore/num/mod.rs b/src/libcore/num/mod.rs index d533310625e..c5175287ccf 100644 --- a/src/libcore/num/mod.rs +++ b/src/libcore/num/mod.rs @@ -131,6 +131,10 @@ macro_rules! int_impl { /// /// Leading and trailing whitespace represent an error. /// + /// # Panics + /// + /// This function panics if `radix` is not in the range from 2 to 36. + /// /// # Examples /// /// Basic usage: -- cgit 1.4.1-3-g733a5 From bbdff02f8c6bac42c0488afbcfa9cdf1fbd3d282 Mon Sep 17 00:00:00 2001 From: Ryan Leckey Date: Sun, 6 Aug 2017 03:16:42 -0700 Subject: Preface 'cares' with 'only' --- src/libcore/iter/iterator.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/libcore') diff --git a/src/libcore/iter/iterator.rs b/src/libcore/iter/iterator.rs index 1685dba3c5a..2472efa14b3 100644 --- a/src/libcore/iter/iterator.rs +++ b/src/libcore/iter/iterator.rs @@ -1247,7 +1247,7 @@ pub trait Iterator { /// assert_eq!(vec![2, 4, 6], doubled); /// ``` /// - /// Because `collect()` cares about what you're collecting into, you can + /// Because `collect()` only cares about what you're collecting into, you can /// still use a partial type hint, `_`, with the turbofish: /// /// ``` -- cgit 1.4.1-3-g733a5