(Обратите внимание на отсутствие скобок в функциях, которые указывают, что они используются как вызываемые объекты, а не принимают возвращаемое значение)

это:

loop {
    let data = match something() {
        Err(err) => {
            warn!("An error: {}; skipped.", err);
            continue;
        },
        Ok(x) => x
    };

    let data2 = match somethingElse() {
        Err(err) => {
            warn!("An error: {}; skipped.", err);
            continue;
        },
        Ok(x) => x
    };

    // and so on
}

Если мне не нужно присваивать значение okdataЯ бы использовалif let Err(err) = something(), но есть ли в коде выше ярлык, который позволит избежать вставки копий веток Err / Ok в этом, я думаю, типичном сценарии? Что-то вродеif let это также вернуло бы значение ok.

Ответы на вопрос(3)

Ваш ответ на вопрос