Wie führe ich Code nur aus, wenn Option gleich None ist in Rust?
Hallo zusammen! Ich habe angefangen, Rust zu lernen, und bin auf eine typische Situation gestoßen. Ich habe eine Variable vom Typ `Option`. Ich muss einen bestimmten Codeblock nur dann ausführen, wenn diese Variable `None` ist. Wenn dort ein Wert (`Some`) vorhanden ist, muss nichts getan werden.
Ich weiß, dass man `match` oder `if let` verwenden kann, aber das erscheint mir für eine so einfache Aufgabe zu ausführlich. Zum Beispiel schreibe ich:
```rust
let maybe_name: Option = Some("Alice".to_string());
// Ich muss etwas nur tun, wenn maybe_name == None
```
Ich habe versucht, so zu schreiben:
```rust
if maybe_name == None {
println!("Kein Name vorhanden, muss abgefragt werden");
}
```
Aber der Compiler beschwert sich, dass `Option` das `PartialEq`-Trait für den direkten Vergleich mit `None` nicht implementiert (obwohl es in manchen Fällen funktioniert, ich bin verwirrt). Außerdem habe ich die Methode `is_none()` gesehen, bin mir aber nicht sicher, ob das der richtige Ansatz für die Ausführung von Seiteneffekten ist.
Könnt ihr mir sagen, wie man in Rust idiomatisch Code nur ausführt, wenn `Option` gleich `None` ist?