Lifetime explicite

Lorsque l'on souhaite stocker des références dans des structures de données, le compilateur a besoin d'information pour connaitre la relation entre les durées de vie des données.

#![allow(unused)]
fn main() {
struct Necklace {
  text: String,
}

struct Cat {
  necklace: &Necklace,
}

let my_necklace = Necklace { text: "Purr".to_string() };
let my_cat = Cat {necklace: &my_necklace };
}
#![allow(unused)]
fn main() {
struct Necklace {
  text: String,
}

struct Cat<'a> {
  necklace: &'a Necklace,
}

let my_necklace = Necklace { text: "Purr".to_string() };
let my_cat = Cat {necklace: &my_necklace };
}