Documentation XML pour le code Delphi
Remonter à Sortie XML du compilateur
Les compilateurs Delphi peuvent générer de la documentation XML pour le code source compilé.
Pour activer cette fonctionnalité, sélectionnez Projet > Options > Compilateur Delphi > Compilation et activez l'option "Générer la documentation XML" sous Autres options.
Pour activer cette fonctionnalité sur la ligne de commande, exécutez le compilateur en ligne de commande en utilisant l'option --doc
.
La documentation XML générée par le compilateur est créée à partir de la représentation interne du compilateur concernant les classes, les méthodes, les variables, et ainsi de suite. Ne la confondez pas avec la documentation XML que les compilateurs génèrent avec la documentation inline XML écrite manuellement.
- Remarque : Vous pouvez générer de la documentation HTML pour un projet Delphi (ou C++) RAD Studio spécifique. Voir Génération de la documentation d'un projet.
Le format (schéma) du fichier XML est décrit dans Déclarations globales de sortie XML du compilateur.
Sommaire
Exemple
Le fichier C:\file.pas
contient la définition d'une :
- Enumération :
TFocus
. - Classe :
TVideoCamera
.
Enumération
Définition TFocus
:
/// <summary>
/// For objects located closer than 10 meters, use fcNear;
/// otherwise use fcFar.
/// </summary>
TFocus = (fcNear, fcFar);
Documentation XML générée :
<const name="fcNear" type="TFocus" file="C:\file.pas" line="13">
<value>
fcNear
</value>
</const>
<const name="fcFar" type="TFocus" file="C:\file.pas" line="13">
<value>
fcFar
</value>
</const>
<enum name="TFocus" file="C:\file.pas" line="13">
<devnotes>
<summary>
For objects located closer than 10 meters, use fcNear;
otherwise use fcFar.
</summary>
</devnotes>
<element value="0" name="fcNear" file="C:\file.pas" line="13" />
<element value="1" name="fcFar" file="C:\file.pas" line="13" />
</enum>
Notez que les commentaires de la documentation XML sont inclus dans la documentation XML générée par le compilateur (voir les éléments devnotes).
Classe
Définition TVideoCamera
:
TVideoCamera = class
private
FFocus: TFocus;
public
property Focus: TFocus read FFocus write FFocus;
procedure SetFocus(ADistance: Integer);
end;
procedure TVideoCamera.SetFocus(ADistance: Integer);
begin
if ADistance < 10 { meters } then
FFocus := fcNear
else
FFocus := fcFar;
end;
Documentation XML générée (certains membres hérités de TObject ont été retirés pour plus de clarté) :
<class name="TVideoCamera" file="C:\file.pas" line="15">
<ancestor name="TObject" namespace="System">
<methodref name="Create" visibility="public" procflags="constructor">
</methodref>
<methodref name="Free" visibility="public">
</methodref>
</ancestor>
<members>
<field name="FFocus" type="TFocus" visibility="private" size="1" offset="4" file="C:\file.pas" line="17" />
<property name="Focus" visibility="public" read="FFocus" write="FFocus" type="TFocus" file="C:\file.pas" line="19" />
<procedure name="SetFocus" visibility="public" file="C:\file.pas" line="20">
<parameters>
<parameter name="ADistance" type="Integer" />
</parameters>
</procedure>
</members>
</class>
Voir aussi
- Commentaires de documentation XML
- Génération de la documentation d'un projet (documentation HTML)
- Déclarations globales de sortie XML du compilateur (syntaxe)