This commit is contained in:
2026-09-13 21:59:15 +02:00
parent b72193d656
commit 6e0a4a91d9
19 changed files with 434 additions and 151 deletions

View File

@@ -72,6 +72,7 @@ a ^ b
```text
OpPartialEqual<Lhs,Rhs>
OpEqual<T>
Equatable<T>
```
### Exemple 9
@@ -241,3 +242,21 @@ a < b && b < c
## 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.
### Exemple 29 — `Equatable<T>` ne duplique pas `==`
```text
interface Equatable<T> extends OpEqual<T> {
}
```
`Equatable<T>` sert de contrainte sémantique aux APIs génériques ; l'implémentation opérateur reste `OpEqual<T>`.
### Exemple 30 — floats
```text
NaN == NaN // false selon IEEE
+0.0 == -0.0 // true selon IEEE
```
Les `float*` bruts ne satisfont donc pas directement `Equatable<float*>`.