This repository has been archived on 2023-03-24. You can view files and clone it, but cannot push or open issues or pull requests.
rustlings-exercises-completed/exercises/lifetimes
2023-03-24 21:18:51 +00:00
..
lifetimes1.rs Completed Exercises. 2023-03-24 21:18:51 +00:00
lifetimes2.rs Completed Exercises. 2023-03-24 21:18:51 +00:00
lifetimes3.rs Completed Exercises. 2023-03-24 21:18:51 +00:00
README.md feat: add lifetimes exercises 2022-07-15 14:03:38 +02:00

Lifetimes

Lifetimes tell the compiler how to check whether references live long enough to be valid in any given situation. For example lifetimes say "make sure parameter 'a' lives as long as parameter 'b' so that the return value is valid".

They are only necessary on borrows, i.e. references, since copied parameters or moves are owned in their scope and cannot be referenced outside. Lifetimes mean that calling code of e.g. functions can be checked to make sure their arguments are valid. Lifetimes are restrictive of their callers.

Further information