| Crates.io | copy_from_str |
| lib.rs | copy_from_str |
| version | 1.0.6 |
| created_at | 2018-03-22 11:45:39.019188+00 |
| updated_at | 2023-09-17 14:55:13.32395+00 |
| description | An extension trait to copy a string into another string |
| homepage | |
| repository | https://github.com/xfix/copy_from_str |
| max_upload_size | |
| id | 56885 |
| size | 18,312 |
copy_from_strExtension methods for copying strings into a string.
This crate provides copy_from_str function which can be used to
mutate Rust strings. It works similarly to copy_from_slice from
standard library except it is for strings.
use copy_from_str::CopyFromStrExt;
fn make_ascii_uppercase(mut input: &mut str) {
let mut buffer = [0; 4];
while let Some(ch) = input.chars().next() {
let src = ch.to_ascii_uppercase().encode_utf8(&mut buffer);
let (to_uppercase, rest) = { input }.split_at_mut(ch.len_utf8());
to_uppercase.copy_from_str(src);
input = rest;
}
}
let mut str = String::from("Hello, world! 💯");
make_ascii_uppercase(&mut str);
assert_eq!(str, "HELLO, WORLD! 💯");