Scoping rules

Scopes play an important part in ownership, borrowing, and lifetimes.

That is, they indicate to the compiler:

  • when borrows are valid
  • when resources can be freed
  • and when variables are created or destroyed.