GTK-Doc

Un article de Wikipédia, l'encyclopédie libre.
GTK-Doc
Description de l'image GTK logo.svg.

Informations
Développé par L'équipe GTK+ et de nombreux contributeurs
Dépôt gitlab.gnome.org/GNOME/gtk-docVoir et modifier les données sur Wikidata
Écrit en PythonVoir et modifier les données sur Wikidata
Environnement Multiplate-forme
Type Bibliothèque logicielle
Licence GNU LGPL 2.1
Site web GTK-Doc

GTK-Doc est un logiciel libre générant de la documentation à partir de code source en Langage C. Il est typiquement utilisé pour documenter les API publiques de bibliothèques, telles que celles utilisées par les frameworks GTK+ et GNOME. Mais il peut aussi être utilisé pour documenter du code d'application.

Fonctionnement de GTK-Doc[modifier | modifier le code]

GTK-Doc fonctionne en utilisant la documentation de fonctions placées dans le code source sous la forme de blocs de commentaires avec un formatage spécifique ou la documentation ajoutée aux fichiers prototypes que GTK-Doc utilise (notez cependant que GTK-Doc ne documente que les fonctions déclarées dans des fichiers d'en-tête ; il ne fait rien pour les fonctions statiques).

Exemple[modifier | modifier le code]

Voici un morceau de code à documenter :

#include <stdio.h>

/* 
 * Commentaire simple ne générant aucune documentation 
 * car il n'y a qu'une seule étoile après le slash
 */
void affichage(char *phrase)
{
  fprintf(stdin, "%s", phrase);
}


main()
{
   affichage("hello, world\n");
}

La documentation se fait donc par les commentaires et est initiée par les symboles /** au lieu d'un simple /*

#include <stdio.h>

/**
 * affichage:
 * La fonction affichage() permet l'extraordinaire exploit
 * d'afficher une phrase qui est passée dans l'argument @phrase.
 *
 * Returns: La fonction ne renvoie aucune valeur
 */
void affichage(char *phrase)
{
  fprintf(stdin, "%s", phrase);
}


main()
{
   affichage("hello, world\n");
}

Ceci permettra de documenter son code à la manière de la Glib ou Gtk+ dont on peut voir un exemple ici.

Voir aussi[modifier | modifier le code]

Liens externes[modifier | modifier le code]