if-let Expression
The if-let expression first evaluates the expression on the right of <- in the condition. If the value matches the pattern on the left of <-, the if branch is executed. Otherwise, the else branch is executed (which can be omitted). Example:
main() {
let result = Option<Int64>.Some(2023)
if (let Some(value) <- result) {
println("Operation successful, return value: ${value}")
} else {
println("Operation failed")
}
}
Run the preceding program and the following information will be displayed:
Operation successful, return value: 2023
In the above program, if the initial value of result is changed to Option<Int64>.None, the if-let pattern matching will fail, and the else branch will be executed.
main() {
let result = Option<Int64>.None
if (let Some(value) <- result) {
println("Operation successful, return value: ${value}")
} else {
println("Operation failed")
}
}
Run the preceding program and the following information will be displayed:
Operation failed