# Exemples / DO-DON'T — Chapitre 24 — Casts et conversions > 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 conversion de valeur cast de hiérarchie nominale bitcast de représentation binaire ``` ### Exemple 2 ```text int8 small = ...; int32 large = small; // ERROR int32 explicitLarge = small::toInt32(); // OK ``` ### Exemple 3 ```text Dog dog = ...; Animal animal = dog; Serializable serializable = dog; ``` ### Exemple 4 ```text Animal animal = ...; if (animal is Dog) { // animal est raffiné en Dog ici. } ``` ### Exemple 5 ```text toTarget() conversion exacte et totale tryToTarget() conversion exacte pour la valeur courante, récupérable si impossible roundToTarget() perte de précision explicitement acceptée, conversion totale tryRoundToTarget() perte de précision explicitement acceptée, mais conversion pouvant échouer saturateToTarget() saturation explicite lorsqu'aucun arrondi supplémentaire n'est nécessaire saturatingRoundToTarget() arrondi + saturation explicitement annoncés wrapToTarget() wrapping entier explicite ``` ### Exemple 6 ```text tryExactToInt32() tryFloorToInt32() tryCeilToInt32() tryRoundToInt32() tryTruncateToInt32() ``` ### Exemple 7 ```text annexes/A-numeric-conversions.md ``` ## 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.