Паніки
Rust обробляє фатальні помилки з “panic”.
Rust викличе паніку, якщо під час виконання станеться фатальна помилка:
fn main() { let v = vec![10, 20, 30]; println!("v[100]: {}", v[100]); }
- Паніки – це невиправні та несподівані помилки.
- Паніки є ознакою помилок у програмі.
 - Збої у виконанні, такі як невдалі перевірки меж, можуть викликати паніку
 - Твердження (наприклад, 
assert!) панікують у разі невдачі - Для спеціальних панік можна використовувати макрос 
panic!. 
 - Паніка “розмотує” стек, відкидаючи значення так, як якщо б функції повернулися.
 - Використовуйте API, що не викликають паніки (такі як 
Vec::get), якщо збій неприйнятний. 
This slide should take about 3 minutes. 
                    За замовчуванням паніка призведе до розмотування стека. Розмотування можна зловити:
use std::panic; fn main() { let result = panic::catch_unwind(|| "Ніяких проблем!"); println!("{result:?}"); let result = panic::catch_unwind(|| { panic!("о, ні!"); }); println!("{result:?}"); }
- Перехоплення є незвичайним; не намагайтеся реалізувати виключення за допомогою 
catch_unwind! - Це може бути корисним на серверах, які повинні продовжувати працювати навіть у разі збою одного запиту.
 - Це не працює, якщо у вашому 
Cargo.tomlвстановленоpanic = 'abort'.