Formatting
This commit is contained in:
parent
dee70b57a3
commit
f5ec7e3017
@ -1,5 +1,5 @@
|
|||||||
:experimental:
|
:experimental:
|
||||||
:docdatetime: 2022-07-20T14:07:20+02:00
|
:docdatetime: 2022-07-25T20:00:23+02:00
|
||||||
|
|
||||||
= Enums und Pattern Matching
|
= Enums und Pattern Matching
|
||||||
|
|
||||||
@ -81,7 +81,7 @@ Die Dokumentation dazu ist https://doc.rust-lang.org/std/option/enum.Option.html
|
|||||||
Nur kann es auch prüfen, ob eine Variable einem Enum-Typen angehört.
|
Nur kann es auch prüfen, ob eine Variable einem Enum-Typen angehört.
|
||||||
So wie Rust bis jetzt klang, kann wahrscheinlich jedem Datentypen ein "match-Trait" gegeben werden, der dann eine "Zugehörigkeit" (Gleicheit stimmt ja irgendwie nicht) prüfen kann.
|
So wie Rust bis jetzt klang, kann wahrscheinlich jedem Datentypen ein "match-Trait" gegeben werden, der dann eine "Zugehörigkeit" (Gleicheit stimmt ja irgendwie nicht) prüfen kann.
|
||||||
|
|
||||||
Aber ganz einfach: Angenommen wir wollen die Methode `toCSSString` von oben implementieren.
|
Aber ganz einfach: Angenommen wir wollen die Methode `to_css_string` von oben implementieren.
|
||||||
Diese Methode muss ja, je nach Typ, völlig unterschiedlich funktionieren.
|
Diese Methode muss ja, je nach Typ, völlig unterschiedlich funktionieren.
|
||||||
|
|
||||||
[source, Rust]
|
[source, Rust]
|
||||||
@ -118,7 +118,7 @@ Im Beispiel ist auch deutlich, dass `match` einen Rückgabewert hat, nämlich da
|
|||||||
Entweder muss ein `match` eines Enums jede mögliche Variante abgrasen oder es gibt zwei Alternativen.
|
Entweder muss ein `match` eines Enums jede mögliche Variante abgrasen oder es gibt zwei Alternativen.
|
||||||
|
|
||||||
`other` ist quasi das `default` von Rust.
|
`other` ist quasi das `default` von Rust.
|
||||||
Aber auch `_` matched alles.
|
Aber auch `\_` matched alles.
|
||||||
Der Unterschied ist, dass bei `other` noch der Inhalt genutzt werden kann, bei `_` wird er direkt ignoriert und ist nicht nutzbar.
|
Der Unterschied ist, dass bei `other` noch der Inhalt genutzt werden kann, bei `_` wird er direkt ignoriert und ist nicht nutzbar.
|
||||||
|
|
||||||
=== `if let`
|
=== `if let`
|
||||||
|
Loading…
Reference in New Issue
Block a user