Doxygen
|
Doxygen supports most of the XML commands that are typically used in C# code comments. The XML tags are defined in Appendix D of the ECMA-334 standard, which defines the C# language. Unfortunately, the specification is not very precise and a number of the examples given are of poor quality.
Here is the list of tags supported by doxygen:
<c>
Identifies inline text that should be rendered as a piece of code. Similar to using <tt>
text</tt>
. <code>
Set one or more lines of source code or program output. Note that this command behaves like \code ... \endcode for C# code, but it behaves like the HTML equivalent <code>...</code>
for other languages. <description>
Part of a <list>
command, describes an item. <example>
Marks a block of text as an example, ignored by doxygen. <exception cref="member">
Identifies the exception a method can throw. <include>
Can be used to import a piece of XML from an external file. Ignored by doxygen at the moment. <inheritdoc>
Can be used to insert the documentation of a member of a base class into the documentation of a member of a derived class that reimplements it. <item>
List item. Can only be used inside a <list>
context. <list type="type">
Starts a list, supported types are bullet
or number
and table
. A list consists of a number of <item>
tags. A list of type table, is a two column table which can have a header. <listheader>
Starts the header of a list of type "table". <para>
Identifies a paragraph of text. <param name="paramName">
Marks a piece of text as the documentation for parameter "paramName". Similar to using \param. <paramref name="paramName">
Refers to a parameter with name "paramName". Similar to using \a. <permission>
Identifies the security accessibility of a member. Ignored by doxygen. <remarks>
Identifies the detailed description. <returns>
Marks a piece of text as the return value of a function or method. Similar to using \return. <see cref="member">
Refers to a member. Similar to \ref. <seealso cref="member">
Starts a "See also" section referring to "member". Similar to using \sa member. <summary>
Identifies the brief description. Similar to using \brief. <term>
Part of a <list>
command. <typeparam name="paramName">
Marks a piece of text as the documentation for type parameter "paramName". Similar to using \param. <typeparamref name="paramName">
Refers to a parameter with name "paramName". Similar to using \a. <value>
Identifies a property. Ignored by doxygen. <![CDATA[...]]>
The text inside this tag (on the ...) is handled as normal doxygen comment except for the XML special characters <
, >
and &
that are used as if they were escaped. Here is an example of a typical piece of code using some of the above commands: