rustlings/exercises/move_semantics/move_semantics6.rs
Michal Bazynski 6df8a4be98 wip
2022-11-10 10:57:37 +01:00

25 lines
516 B
Rust

// move_semantics6.rs
// Execute `rustlings hint move_semantics6` or use the `hint` watch subcommand for a hint.
// You can't change anything except adding or removing references.
fn main() {
let data = "Rust is great!".to_string();
get_char(&data);
string_uppercase(&data);
}
// Should not take ownership
fn get_char(data: &String) -> char {
data.chars().last().unwrap()
}
// Should take ownership
fn string_uppercase(mut data: &String) {
data.to_uppercase();
println!("{}", data);
}