blob: 0994b10d7805e214ab9e6e1472ebe85b383ddafc [file] [log] [blame]
Apache 2.0 is using ScanDoc to document the API's and global variables in
the code. This will explain the basics of how to document using Scandoc.
To start a scandoc block, use /**
To end a scandoc block, use */
In the middle of the block, there are multiple tags we can use:
Description of this functions purpose
@param parameter_name description
@tip Any information the programmer should know
@deffunc function prototype.
The deffunc is not always necessary. ScanDoc does not have a full parser in
it, so any prototype that use a macro in the return type declaration is too
complex for scandoc. Those functions require a deffunc.
An example:
/**
* return the final element of the pathname
* @param pathname The path to get the final element of
* @return the final element of the path
* @tip Examples:
* <PRE>
* "/foo/bar/gum" -> "gum"
* "/foo/bar/gum/" -> ""
* "gum" -> "gum"
* "wi\\n32\\stuff" -> "stuff"
* </PRE>
* @deffunc const char * ap_filename_of_pathname(const char *pathname)
*/
At the top of the header file, we always include
/**
* @package Name of library header
*/
ScanDoc uses a new html file for each package. The html files are named:
Name of library header.html, so try to be concise with your names