about summary refs log tree commit diff
path: root/src/liballoc
diff options
context:
space:
mode:
authortoidiu <toidiu@protonmail.com>2017-09-09 16:56:12 -0400
committertoidiu <toidiu@protonmail.com>2017-09-09 16:56:12 -0400
commitc430fa8084277c9ee36b022dd028ed302b3f5afe (patch)
treee5dd903c3f59946f1e7deb5ae69d4f7fdf0ee4a2 /src/liballoc
parent088216fb997c9cb12ce049bbe7975d1f657551ca (diff)
downloadrust-c430fa8084277c9ee36b022dd028ed302b3f5afe.tar.gz
rust-c430fa8084277c9ee36b022dd028ed302b3f5afe.zip
documentation update to demonstrate mutability
Diffstat (limited to 'src/liballoc')
-rw-r--r--src/liballoc/str.rs23
1 files changed, 16 insertions, 7 deletions
diff --git a/src/liballoc/str.rs b/src/liballoc/str.rs
index 79b2bbce2af..e6b28d4d1c2 100644
--- a/src/liballoc/str.rs
+++ b/src/liballoc/str.rs
@@ -362,16 +362,25 @@ impl str {
     /// # Examples
     ///
     /// ```
-    /// let mut v = String::from("🗻∈🌏");
-    ///
-    /// assert_eq!(Some("🗻"), v.get_mut(0..4).map(|v| &*v));
-    ///
-    /// // indices not on UTF-8 sequence boundaries
-    /// assert!(v.get_mut(1..).is_none());
-    /// assert!(v.get_mut(..8).is_none());
+    /// use std::ascii::AsciiExt;
     ///
+    /// let mut v = String::from("hello");
+    /// // correct length
+    /// assert!(v.get_mut(0..5).is_some());
     /// // out of bounds
     /// assert!(v.get_mut(..42).is_none());
+    /// assert_eq!(Some("he"), v.get_mut(0..2).map(|v| &*v));
+    ///
+    /// assert_eq!("hello", v);
+    /// {
+    ///     let s = v.get_mut(0..2);
+    ///     let s = s.map(|s| {
+    ///         s.make_ascii_uppercase();
+    ///         &*s
+    ///     });
+    ///     assert_eq!(Some("HE"), s);
+    /// }
+    /// assert_eq!("HEllo", v);
     /// ```
     #[stable(feature = "str_checked_slicing", since = "1.20.0")]
     #[inline]