Post Thumbnail

В этой статье научимся правильно обрабатывать ошибки в Rust. Учится будем создавая парсер TOML-конфигураций с валидацией схемы.

Автор объясняет, почему panic! и unwrap подходят только для отладки и прототипирования, а в реальных программах нужно использовать Result<T, E> для ожидаемых сбоев (неверный ввод, отсутствие файлов и вот это все) и Option<T> для отсутствующих значений. Вы узнаете об операторе ?, создании собственных типов ошибок с помощью крейта thiserror, а также о том, как добавить в ошибки позиции в файле (строку и колонку) для понятных сообщений.

Финальный проект - полноценный парсер, который не паникует и возвращает подробные ошибки с указанием места проблемы, плюс схема для валидации типов, обязательных полей и диапазонов значений

Похожее

Post Thumbnail

Перед main

До вызова main() в Rust существует полноценная фаза инициализации, в которой ран...