Просмотр поста

.
reaper
# Jahak (21.04.2016 / 17:30)
reaper, А что делает try?
Второй вариант конечно лучше.
Это макрос:

macro_rules! try {
    ($e:expr) => (match $e {
        Ok(val) => val,
        Err(err) => return Err(::std::convert::From::from(err)),
    });
}


Если всё ок, получаем результат, иначе возвращаем ошибку, которая обрабатывается с помощью метода from, позволяющего сконвертировать её в другой тип. За подробностями сюда: https://habrahabr.ru/post/270371/