Когда значение Result имеет состояние "Ok", метод unwrap() возвращает связанный с этим состоянием объект, но если результат не является успешным - вызов приводит к аварийному завершению (вызывается макрос "panic!"), . Обычно unwrap() применяется в процессе отладки или при написании тестового кода и не рекомендован для использования в рабочих проектах.
Да-да. Только как не посмотришь Растовский код - unwrap на unwrap-е сидит и unwarp-ом погоняет. Разработчики на Расте, почему-то, называют это "удобным способом обработки ошибок", а про то, что это временный костыль им никто не говорил.
P.S. Я по прежнему уверен, пока не придумают язык, который:
1. Будет удобно разделять бизнес логику и логику взаимодействия с окружающим миром
2. Будет позволять удобно обрабатывать ошибки
3. Будет прямо ограничивать возможнозть забивать на нормальную обработку ошибок
ИТ индустрия будет страдать.