Rollup merge of #60404 - lo48576:borrow-mut-for-string, r=sfackler

Implement `BorrowMut<str>` for `String`

Closes rust-lang/rfcs#1282.
This commit is contained in:
Mazdak Farrokhzad
2019-05-01 08:29:15 +02:00
committed by GitHub
+9 -1
View File
@@ -28,7 +28,7 @@
// It's cleaner to just turn off the unused_imports warning than to fix them.
#![allow(unused_imports)]
use core::borrow::Borrow;
use core::borrow::{Borrow, BorrowMut};
use core::str::pattern::{Pattern, Searcher, ReverseSearcher, DoubleEndedSearcher};
use core::mem;
use core::ptr;
@@ -190,6 +190,14 @@ fn borrow(&self) -> &str {
}
}
#[stable(feature = "string_borrow_mut", since = "1.36.0")]
impl BorrowMut<str> for String {
#[inline]
fn borrow_mut(&mut self) -> &mut str {
&mut self[..]
}
}
#[stable(feature = "rust1", since = "1.0.0")]
impl ToOwned for str {
type Owned = String;