LINUX.ORG.RU

История изменений

Исправление freecoder, (текущая версия) :

Это match в Rust - базовый оператор для сопоставления с образцом. Аналогичный код на Rust будет таким:

let current_balance += match transaction {
    (TransactionType::Deposit, amount) => amount,
    (TransactionType::Withdrawal, amount) => -amount,
    _ => 0.0, 
};

if let используется, когда нужно разматчить только в один паттерн, потому что match требует полного покрытия всех возможных вариантов, в отличии от.

Исходная версия freecoder, :

Это match в Rust - базовый оператор для сопоставления с образцом. Аналогичный код на Rust будет таким:

let current_balance += match transaction {
    (TransactionType::Deposit, amount) => amount,
    (TransactionType::Withdrawal, amount) => -amount,
    _ => 0.0, 
};