summaryrefslogtreecommitdiff
path: root/exercises/16_lifetimes/lifetimes2.rs
diff options
context:
space:
mode:
Diffstat (limited to 'exercises/16_lifetimes/lifetimes2.rs')
-rw-r--r--exercises/16_lifetimes/lifetimes2.rs17
1 files changed, 5 insertions, 12 deletions
diff --git a/exercises/16_lifetimes/lifetimes2.rs b/exercises/16_lifetimes/lifetimes2.rs
index 4f3d8c1..de5a5df 100644
--- a/exercises/16_lifetimes/lifetimes2.rs
+++ b/exercises/16_lifetimes/lifetimes2.rs
@@ -1,13 +1,4 @@
-// lifetimes2.rs
-//
-// So if the compiler is just validating the references passed to the annotated
-// parameters and the return type, what do we need to change?
-//
-// Execute `rustlings hint lifetimes2` or use the `hint` watch subcommand for a
-// hint.
-
-// I AM NOT DONE
-
+// Don't change this function.
fn longest<'a>(x: &'a str, y: &'a str) -> &'a str {
if x.len() > y.len() {
x
@@ -17,11 +8,13 @@ fn longest<'a>(x: &'a str, y: &'a str) -> &'a str {
}
fn main() {
+ // TODO: Fix the compiler error by moving one line.
+
let string1 = String::from("long string is long");
let result;
{
let string2 = String::from("xyz");
- result = longest(string1.as_str(), string2.as_str());
+ result = longest(&string1, &string2);
}
- println!("The longest string is '{}'", result);
+ println!("The longest string is '{result}'");
}