Blame doc/xmlcmds.doc

Packit 1c1d7e
/******************************************************************************
Packit 1c1d7e
 *
Packit 1c1d7e
 * 
Packit 1c1d7e
 *
Packit 1c1d7e
 * Copyright (C) 1997-2015 by Dimitri van Heesch.
Packit 1c1d7e
 *
Packit 1c1d7e
 * Permission to use, copy, modify, and distribute this software and its
Packit 1c1d7e
 * documentation under the terms of the GNU General Public License is hereby 
Packit 1c1d7e
 * granted. No representations are made about the suitability of this software 
Packit 1c1d7e
 * for any purpose. It is provided "as is" without express or implied warranty.
Packit 1c1d7e
 * See the GNU General Public License for more details.
Packit 1c1d7e
 *
Packit 1c1d7e
 * Documents produced by Doxygen are derivative works derived from the
Packit 1c1d7e
 * input used in their production; they are not affected by this license.
Packit 1c1d7e
 *
Packit 1c1d7e
 */
Packit 1c1d7e
/*! \page xmlcmds XML Commands
Packit 1c1d7e
Packit 1c1d7e
Doxygen supports most of the XML commands that are typically used in C# 
Packit 1c1d7e
code comments. The XML tags are defined in Appendix E of the
Packit 1c1d7e
ECMA-334 
Packit 1c1d7e
standard, which defines the C# language. Unfortunately, the specification is
Packit 1c1d7e
not very precise and a number of the examples given are of poor quality.
Packit 1c1d7e
Packit 1c1d7e
Here is the list of tags supported by doxygen:
Packit 1c1d7e
Packit 1c1d7e
    Packit 1c1d7e
  • <tt>\<c\></tt> Identifies inline text that should be rendered as a
  • Packit 1c1d7e
                           piece of code. Similar to using <tt>\<tt\></tt>text<tt>\</tt\></tt>.
    Packit 1c1d7e
  • <tt>\<code\></tt> Set one or more lines of source code or program output.
  • Packit 1c1d7e
                           Note that this command behaves like \ref cmdcode "\\code" ... \ref cmdendcode "\\endcode"
    Packit 1c1d7e
                           for C# code, but it behaves like the HTML equivalent
    Packit 1c1d7e
                           <tt>\<code\>...\</code\></tt> for other languages.
    Packit 1c1d7e
  • <tt>\<description\></tt> Part of a <tt>\<list\></tt> command, describes an item.
  • Packit 1c1d7e
  • <tt>\<example\></tt> Marks a block of text as an example, ignored by doxygen.
  • Packit 1c1d7e
  • <tt>\<exception cref="member"\></tt> Identifies the exception a
  • Packit 1c1d7e
                             method can throw.
    Packit 1c1d7e
  • <tt>\<include\></tt> Can be used to import a piece of XML from an external
  • Packit 1c1d7e
                             file. Ignored by doxygen at the moment.
    Packit 1c1d7e
  • <tt>\<inheritdoc\></tt> Can be used to insert the documentation of a
  • Packit 1c1d7e
                             member of a base class into the documentation of a 
    Packit 1c1d7e
                             member of a derived class that reimplements it.
    Packit 1c1d7e
  • <tt>\<item\></tt> List item. Can only be used inside a <tt>\<list\></tt> context.
  • Packit 1c1d7e
  • <tt>\<list type="type"\></tt> Starts a list, supported types are <tt>bullet</tt>
  • Packit 1c1d7e
                             or <tt>number</tt> and <tt>table</tt>. 
    Packit 1c1d7e
                             A list consists of a number of <tt>\<item\></tt> tags.
    Packit 1c1d7e
                             A list of type table, is a two column table which can have
    Packit 1c1d7e
                             a header.
    Packit 1c1d7e
  • <tt>\<listheader\></tt> Starts the header of a list of type "table".
  • Packit 1c1d7e
  • <tt>\<para\></tt> Identifies a paragraph of text.
  • Packit 1c1d7e
  • <tt>\<param name="paramName"\></tt> Marks a piece of text as the documentation
  • Packit 1c1d7e
                             for parameter "paramName". Similar to 
    Packit 1c1d7e
                             using \ref cmdparam "\\param".
    Packit 1c1d7e
  • <tt>\<paramref name="paramName"\></tt> Refers to a parameter with name
  • Packit 1c1d7e
                             "paramName". Similar to using \ref cmda "\\a".
    Packit 1c1d7e
  • <tt>\<permission\></tt> Identifies the security accessibility of a member.
  • Packit 1c1d7e
                             Ignored by doxygen.
    Packit 1c1d7e
  • <tt>\<remarks\></tt> Identifies the detailed description.
  • Packit 1c1d7e
  • <tt>\<returns\></tt> Marks a piece of text as the return value of a
  • Packit 1c1d7e
                             function or method. Similar to using \ref cmdreturn "\\return".
    Packit 1c1d7e
  • <tt>\<see cref="member"\></tt> Refers to a member. Similar to \ref cmdref "\\ref".
  • Packit 1c1d7e
  • <tt>\<seealso cref="member"\></tt> Starts a "See also" section referring
  • Packit 1c1d7e
                             to "member". Similar to using \ref cmdsa "\\sa" member.
    Packit 1c1d7e
  • <tt>\<summary\></tt> Identifies the brief description.
  • Packit 1c1d7e
                             Similar to using \ref cmdbrief "\\brief".
    Packit 1c1d7e
  • <tt>\<term\></tt> Part of a <tt>\<list\></tt> command.
  • Packit 1c1d7e
  • <tt>\<typeparam name="paramName"\></tt> Marks a piece of text as the documentation
  • Packit 1c1d7e
                             for type parameter "paramName". Similar to 
    Packit 1c1d7e
                             using \ref cmdparam "\\param".
    Packit 1c1d7e
  • <tt>\<typeparamref name="paramName"\></tt> Refers to a parameter with name
  • Packit 1c1d7e
                             "paramName". Similar to using \ref cmda "\\a".
    Packit 1c1d7e
  • <tt>\<value\></tt> Identifies a property. Ignored by doxygen.
  • Packit 1c1d7e
    Packit 1c1d7e
    Packit 1c1d7e
    Here is an example of a typical piece of code using some of the above commands:
    Packit 1c1d7e
    Packit 1c1d7e
    \code
    Packit 1c1d7e
    /// <summary>
    Packit 1c1d7e
    /// A search engine.
    Packit 1c1d7e
    /// </summary>
    Packit 1c1d7e
    class Engine
    Packit 1c1d7e
    {
    Packit 1c1d7e
      /// <summary>
    Packit 1c1d7e
      /// The Search method takes a series of parameters to specify the search criterion
    Packit 1c1d7e
      /// and returns a dataset containing the result set.
    Packit 1c1d7e
      /// </summary>
    Packit 1c1d7e
      /// <param name="connectionString">the connection string to connect to the
    Packit 1c1d7e
      /// database holding the content to search</param>
    Packit 1c1d7e
      /// <param name="maxRows">The maximum number of rows to
    Packit 1c1d7e
      /// return in the result set</param>
    Packit 1c1d7e
      /// <param name="searchString">The text that we are searching for</param>
    Packit 1c1d7e
      /// <returns>A DataSet instance containing the matching rows. It contains a maximum
    Packit 1c1d7e
      /// number of rows specified by the maxRows parameter</returns>
    Packit 1c1d7e
      public DataSet Search(string connectionString, int maxRows, int searchString)
    Packit 1c1d7e
      {
    Packit 1c1d7e
        DataSet ds = new DataSet();
    Packit 1c1d7e
        return ds;
    Packit 1c1d7e
      }
    Packit 1c1d7e
    }
    Packit 1c1d7e
    \endcode
    Packit 1c1d7e
    Packit 1c1d7e
    Packit 1c1d7e
    \htmlonly
    Packit 1c1d7e
    Go to the next section or return to the
    Packit 1c1d7e
     index.
    Packit 1c1d7e
    \endhtmlonly
    Packit 1c1d7e
    Packit 1c1d7e
    */
    Packit 1c1d7e