Это, собственно, то же направление, что и в Go - новые языки потихоньку отказываются от exeption и их возбуждения, которое было активно введено в C++ Б.Страуструпом ... а далее Java ... и по списку...Как и многие языки программирования, Rust призывает разработчика определенным способом обрабатывать ошибки. Вообще, существует два общих подхода обработки ошибок: с помощью исключений и через возвращаемые значения. И Rust предпочитает возвращаемые значения.
И здесь: 16 Обработка ошибок
Это одна из самых интересных частей любого языка программирования!