v0.1.0-pre.058
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
<!-- file: RULES_RUST.md -->
|
||||
<!-- version: 6 -->
|
||||
<!-- version: 7 -->
|
||||
|
||||
# Règles Rust générales
|
||||
|
||||
@@ -70,6 +70,12 @@ implicit_saturating_sub = "allow"
|
||||
- Le groupe `pub use` précède le groupe `pub(crate) use` dans une même façade.
|
||||
- L’ordre interne suit l’ordre naturel produit par `rustfmt` : les segments et mots séparés sont comparés avant leurs suffixes numériques, par exemple `U8` avant `U16` et `TOKEN` avant `TOKEN2022`.
|
||||
|
||||
## Assertions sur les collections
|
||||
|
||||
- Un test qui vérifie uniquement l’appartenance à un ensemble peut trier la valeur obtenue et la valeur attendue avant `assert_eq!`, afin de ne pas dépendre d’un ordre d’enregistrement non contractuel.
|
||||
- Le tri doit être explicite dans le test et appliqué aux deux collections comparées.
|
||||
- Ne jamais trier une collection lorsque l’ordre fait partie du contrat : comptes Solana, metas, instructions, signers, événements, étapes de pipeline, priorités, journaux ou toute autre séquence ordonnée.
|
||||
|
||||
## Imports et chemins
|
||||
|
||||
- `use` est interdit pour les constantes, fonctions, structures, énumérations, unions, alias de types, modules et macros.
|
||||
|
||||
Reference in New Issue
Block a user