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:
XML Command | Description |
---|---|
<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> | In case this tag is used outside a <DETAILS> tag this tag identifies the brief description. Similar to using \brief. In case this tag is used inside a <DETAILS> tag this tag identifies the heading of the <DETAILS> tag. |
<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: