| @@ -206,15 +206,16 @@ impl BorrowMut for String { |
|
|
| 206 |
206 |
#[stable(feature = "rust1", since = "1.0.0")] |
| 207 |
207 |
impl ToOwned for str { |
| 208 |
208 |
type Owned = String; |
|
209 |
+ |
| 209 |
210 |
#[inline] |
| 210 |
211 |
fn to_owned(&self) -> String { |
| 211 |
212 |
unsafe { String::from_utf8_unchecked(self.as_bytes().to_owned()) } |
| 212 |
213 |
} |
| 213 |
214 |
|
|
215 |
+#[inline] |
| 214 |
216 |
fn clone_into(&self, target: &mut String) { |
| 215 |
|
-let mut b = mem::take(target).into_bytes(); |
| 216 |
|
-self.as_bytes().clone_into(&mut b); |
| 217 |
|
-*target = unsafe { String::from_utf8_unchecked(b) } |
|
217 |
+ target.clear(); |
|
218 |
+ target.push_str(self); |
| 218 |
219 |
} |
| 219 |
220 |
} |
| 220 |
221 |
|