Identifiants » Historique » Révision 19
Révision 18 (Patrice Nadeau, 2024-01-27 15:47) → Révision 19/52 (Patrice Nadeau, 2024-01-27 15:51)
# Objets
## Règles
1. Comportent au maximum **31** caractères :
1. Lettres minuscules
1. Nombres
1. Trait de soulignement
1. Si plusieurs mots sont utilisés, ils sont séparées par des traits de soulignement
1. Les commentaires Doxygen suivants sont ajoutés
1. * `@brief` : Description obligatoire
1. * `@sa` : Lien vers une autre item (see also), facultatif
1. * `@todo` : Notes sur les tachés à faire, facultatif
1. * `@bug` : Notes sur les bogues présents, facultatif
1. La gradations des notes et remarques se fait selon :
* `@remark` : Non importante
* `@note` : Général
* `@attention` : Important
* `@warning` : Conséquence négative
1. Le modificateur `static` pour les objets ayant une visibilité locale
1. Les objets ne devant plus être utilisés, DOIVENT générer un message lors de la compilation (`-Wall`) si un appel est effectué.
1. Les attributs`deprecated` ou `unavailable` DOIVENT être ajoutés à la déclaration.
1. Les commentaires Doxygen suivants doivent être ajoutés :
1. `@deprecated` :
1. `@since` :
## Exemple
``` c
/**
* @brief OldFunction
* @deprecated Utiliser NewFunction à la place
* @since Version x.x.xx
*/
int OldFunction(void) __attribute__((deprecated));
/**
* @brief OldFunction
* @deprecated Utiliser NewFunction à la place
* @since Version x.x.xx
*/
int OldFunction(void) __attribute__((unavailable));
/**
* @brief MACRO1
* @deprecated Utiliser NEWMACRO à la place
* @since Version x.x.xx
*/
#define MACRO1 43
#pragma GCC poison MACRO1
/**
* @brief Fonction locale
* @return Une valeur
*/
static int local_func(void) {
...
return 0;
}
```
## Justification
* Linux kernel coding style : <https://www.kernel.org/doc/html/v4.10/process/coding-style.html#naming>
* GNU Coding Standards <https://www.gnu.org/prep/standards/html_node/Writing-C.html#Writing-C>
* Embedded C Coding Standard : <https://barrgroup.com/embedded-systems/books/embedded-c-coding-standard>