Skip to content

Commit 6da69ec

Browse files
committed
Update docs for str::as_bytes_mut.
* Add "Safety" section describing UTF-8 invariant. * Remove mention of `from_utf8_mut`. It is not necessary to call a function to convert the byte slice back to a string slice. The original string becomes accessible again after the byte slice is no longer used (as shown in the example code).
1 parent 5db778a commit 6da69ec

File tree

1 file changed

+7
-4
lines changed

1 file changed

+7
-4
lines changed

src/libcore/str/mod.rs

+7-4
Original file line numberDiff line numberDiff line change
@@ -2384,11 +2384,14 @@ impl str {
23842384
unsafe { Slices { str: self }.slice }
23852385
}
23862386

2387-
/// Converts a mutable string slice to a mutable byte slice. To convert the
2388-
/// mutable byte slice back into a mutable string slice, use the
2389-
/// [`str::from_utf8_mut`] function.
2387+
/// Converts a mutable string slice to a mutable byte slice.
23902388
///
2391-
/// [`str::from_utf8_mut`]: ./str/fn.from_utf8_mut.html
2389+
/// # Safety
2390+
///
2391+
/// The caller must ensure that the content of the slice is valid UTF-8
2392+
/// before the borrow ends and the underlying `str` is used.
2393+
///
2394+
/// Use of a `str` whose contents are not valid UTF-8 is undefined behavior.
23922395
///
23932396
/// # Examples
23942397
///

0 commit comments

Comments
 (0)