v0.2.12
This commit is contained in:
73
examples/023-optiont-et-nullablet-examples.md
Normal file
73
examples/023-optiont-et-nullablet-examples.md
Normal file
@@ -0,0 +1,73 @@
|
||||
# Exemples / DO-DON'T — Chapitre 23 — `Option<T>` et `Nullable<T>`
|
||||
|
||||
> Document compagnon non normatif tant qu'une règle n'est pas explicitement référencée comme normative par le chapitre.
|
||||
|
||||
## Exemples actuellement présents dans le chapitre
|
||||
|
||||
### Exemple 1
|
||||
|
||||
```text
|
||||
Option<int32>
|
||||
Option<String>
|
||||
Option<MyStruct>
|
||||
Option<MyClass>
|
||||
```
|
||||
|
||||
### Exemple 2
|
||||
|
||||
```text
|
||||
Option<MyClass>::None
|
||||
```
|
||||
|
||||
### Exemple 3
|
||||
|
||||
```text
|
||||
Nullable<MyClass>::Null
|
||||
```
|
||||
|
||||
### Exemple 4
|
||||
|
||||
```text
|
||||
T?
|
||||
```
|
||||
|
||||
### Exemple 5
|
||||
|
||||
```text
|
||||
Option<Nullable<MyClass>> autorisé
|
||||
Nullable<Option<MyClass>> interdit
|
||||
Nullable<Nullable<MyClass>> interdit
|
||||
```
|
||||
|
||||
### Exemple 6
|
||||
|
||||
```text
|
||||
Option::None
|
||||
Option::Some(Nullable<MyClass>::Null)
|
||||
Option::Some(instance non nulle)
|
||||
```
|
||||
|
||||
### Exemple 7
|
||||
|
||||
```text
|
||||
Option<T> absence sémantique
|
||||
Nullable<T> nullabilité représentationnelle
|
||||
```
|
||||
|
||||
### Exemple 8
|
||||
|
||||
```text
|
||||
match (value) {
|
||||
Option::Some(uint32 number) => {
|
||||
...
|
||||
}
|
||||
|
||||
Option::None => {
|
||||
...
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## DO / DON'T / WHY / compiler error / edge cases
|
||||
|
||||
La couverture structurée de cette section sera enrichie au fur et à mesure de la fermeture des règles du chapitre. La migration `0.2.12` conserve volontairement les exemples historiques dans le chapitre afin de ne perdre aucun contexte normatif.
|
||||
Reference in New Issue
Block a user