I totally agree. I love Swift's guard let. It makes early returning [1] easy:
guard let value = optvalue else {
return // optvalue is none
}
There has been several proposals [2][3] to fix it in Rust but they don't seem to go anywhere.I'm using this in my own code now to unwrap or return (it looks stupid):
let value = if let Some(value) = optvalue {
value
} else { // optvalue is none
return;
};
[1] https://szymonkrajewski.pl/why-should-you-return-early/