summaryrefslogtreecommitdiff
path: root/exercises/16_lifetimes/lifetimes2.rs
blob: 6e329e6d905c38c555dd75360dd3a530decc9011 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// So if the compiler is just validating the references passed to the annotated
// parameters and the return type, what do we need to change?

fn longest<'a>(x: &'a str, y: &'a str) -> &'a str {
    if x.len() > y.len() {
        x
    } else {
        y
    }
}

fn main() {
    let string1 = String::from("long string is long");
    let result;
    {
        let string2 = String::from("xyz");
        result = longest(string1.as_str(), string2.as_str());
    }
    println!("The longest string is '{}'", result);
}