feat: Add move_semantics6.rs exercise (#908)

This commit is contained in:
Lucas Aries
2022-03-29 15:02:35 +02:00
committed by GitHub
parent c80ad089fd
commit 3f0e1303e0
2 changed files with 40 additions and 0 deletions

View File

@@ -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]]