From b4f5f3bc39fb2187c042ad2fa514e51d1261b4d1 Mon Sep 17 00:00:00 2001 From: Hunter Kvalevog Date: Sun, 27 Sep 2026 16:27:24 -0500 Subject: rustlings: complete 16 --- rustlings/exercises/16_lifetimes/lifetimes1.rs | 2 +- rustlings/exercises/16_lifetimes/lifetimes2.rs | 2 +- rustlings/exercises/16_lifetimes/lifetimes3.rs | 6 +++--- 3 files changed, 5 insertions(+), 5 deletions(-) (limited to 'rustlings/exercises') diff --git a/rustlings/exercises/16_lifetimes/lifetimes1.rs b/rustlings/exercises/16_lifetimes/lifetimes1.rs index 19e2d39..683bd75 100644 --- a/rustlings/exercises/16_lifetimes/lifetimes1.rs +++ b/rustlings/exercises/16_lifetimes/lifetimes1.rs @@ -4,7 +4,7 @@ // not own their own data. What if their owner goes out of scope? // TODO: Fix the compiler error by updating the function signature. -fn longest(x: &str, y: &str) -> &str { +fn longest<'a>(x: &'a str, y: &'a str) -> &'a str { if x.len() > y.len() { x } else { diff --git a/rustlings/exercises/16_lifetimes/lifetimes2.rs b/rustlings/exercises/16_lifetimes/lifetimes2.rs index de5a5df..ebbc99c 100644 --- a/rustlings/exercises/16_lifetimes/lifetimes2.rs +++ b/rustlings/exercises/16_lifetimes/lifetimes2.rs @@ -11,9 +11,9 @@ fn main() { // TODO: Fix the compiler error by moving one line. let string1 = String::from("long string is long"); + let string2 = String::from("xyz"); let result; { - let string2 = String::from("xyz"); result = longest(&string1, &string2); } println!("The longest string is '{result}'"); diff --git a/rustlings/exercises/16_lifetimes/lifetimes3.rs b/rustlings/exercises/16_lifetimes/lifetimes3.rs index 1cc2759..91e3922 100644 --- a/rustlings/exercises/16_lifetimes/lifetimes3.rs +++ b/rustlings/exercises/16_lifetimes/lifetimes3.rs @@ -1,9 +1,9 @@ // Lifetimes are also needed when structs hold references. // TODO: Fix the compiler errors about the struct. -struct Book { - author: &str, - title: &str, +struct Book<'a> { + author: &'a str, + title: &'a str, } fn main() { -- cgit v1.2.3