]> granicus.if.org Git - apache/blob - docs/manual/developer/documenting.html.en
new XML
[apache] / docs / manual / developer / documenting.html.en
1 <?xml version="1.0" encoding="ISO-8859-1"?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"><head><!--
4         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
5               This file is generated from xml source: DO NOT EDIT
6         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
7       -->
8 <title>Documenting Apache 2.0 - Apache HTTP Server</title>
9 <link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
10 <link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
11 <link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" />
12 <link href="../images/favicon.ico" rel="shortcut icon" /></head>
13 <body id="manual-page"><div id="page-header">
14 <p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="../faq/">FAQ</a> | <a href="../glossary.html">Glossary</a> | <a href="../sitemap.html">Sitemap</a></p>
15 <p class="apache">Apache HTTP Server Version 2.1</p>
16 <img alt="" src="../images/feather.gif" /></div>
17 <div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="../images/left.gif" /></a></div>
18 <div id="path">
19 <a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">HTTP Server</a> &gt; <a href="http://httpd.apache.org/docs-project/">Documentation</a> &gt; <a href="../">Version 2.1</a></div><div id="page-content"><div id="preamble"><h1>Documenting Apache 2.0</h1>
20     <p>Apache 2.0 uses <a href="http://www.doxygen.org/">Doxygen</a> to
21     document the APIs and global variables in the the code. This will explain
22     the basics of how to document using Doxygen.</p>
23 </div>
24 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
25 <div class="section">
26 <h2><a name="brief" id="brief">Brief Description</a></h2>
27     <p>To start a documentation block, use <code>/**</code><br />
28     To end a documentation block, use <code>*/</code></p>
29
30     <p>In the middle of the block, there are multiple tags we can
31     use:</p>
32
33     <div class="example"><p><code>
34       Description of this functions purpose<br />
35       @param parameter_name description<br />
36       @return description<br />
37       @deffunc signature of the function<br />
38     </code></p></div>
39       
40     <p>The <code>deffunc</code> is not always necessary. DoxyGen does not
41     have a full parser  in it, so any prototype that use a macro in the
42     return type declaration is too complex for scandoc. Those functions
43     require a <code>deffunc</code>. An example (using &amp;gt; rather
44     than &gt;):</p>
45
46     <div class="example"><p><code>
47       /**<br />
48   * return the final element of the pathname<br />
49   * @param pathname The path to get the final element of<br />
50   * @return the final element of the path<br />
51   * @tip Examples:<br />
52   * &lt;pre&gt;<br />
53   *                 "/foo/bar/gum"   -&amp;gt; "gum"<br />
54   *                 "/foo/bar/gum/"  -&amp;gt; ""<br />
55   *                 "gum"            -&amp;gt; "gum"<br />
56   *                 "wi\\n32\\stuff" -&amp;gt; "stuff"<br />
57   * &lt;/pre&gt;<br />
58   * @deffunc const char * ap_filename_of_pathname(const char *pathname)<br />
59   */
60     </code></p></div>
61
62     <p>At the top of the header file, always include:</p>
63     <div class="example"><p><code>
64       /**<br />
65   * @package Name of library header<br />
66   */
67     </code></p></div>
68
69     <p>Doxygen uses a new HTML file for each package. The HTML files are named
70     {Name_of_library_header}.html, so try to be concise with your names.</p>
71
72     <p>For a further discussion of the possibilities please refer to
73     <a href="http://www.doxygen.org/">the Doxygen site</a>.</p>
74 </div></div>
75 <div id="footer">
76 <p class="apache">Maintained by the <a href="http://httpd.apache.org/docs-project/">Apache HTTP Server Documentation Project</a></p>
77 <p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="../faq/">FAQ</a> | <a href="../glossary.html">Glossary</a> | <a href="../sitemap.html">Sitemap</a></p></div>
78 </body></html>