From 3f0e1303e0b3bf3fecc0baced3c8b8a37f83c184 Mon Sep 17 00:00:00 2001 From: Lucas Aries <73198738+Kallu-A@users.noreply.github.com> Date: Tue, 29 Mar 2022 15:02:35 +0200 Subject: feat: Add move_semantics6.rs exercise (#908) --- info.toml | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'info.toml') diff --git a/info.toml b/info.toml index fbe0d53..9430a16 100644 --- a/info.toml +++ b/info.toml @@ -237,6 +237,21 @@ in the book's section References and Borrowing': https://doc.rust-lang.org/book/ch04-02-references-and-borrowing.html#mutable-references. """ +[[exercises]] +name = "move_semantics6" +path = "exercises/move_semantics/move_semantics6.rs" +mode = "compile" +hint = """ +To find the answer, you can consult the book section "References and Borrowing": +https://doc.rust-lang.org/stable/book/ch04-02-references-and-borrowing.html +The first problem is that `get_char` is taking ownership of the string. +So `data` is moved and can't be used for `string_uppercase` +`data` is moved to `get_char` first, meaning that `string_uppercase` cannot manipulate the data. +Once you've fixed that, `string_uppercase`'s function signature will also need to be adjusted. +Can you figure out how? + +Another hint: it has to do with the `&` character.""" + # PRIMITIVE TYPES [[exercises]] -- cgit v1.2.3