Wikipedia

Natural Docs

Natural Docs
Natural-Docs-Logo.png
Original author(s)Greg Valure
Stable release
2.0.2 / May 15, 2018
Repository Edit this at Wikidata
Written inC# (Perl before 2.0)[1]
Operating systemCross-platform
TypeDocumentation generator
LicenseAffero General Public License
WebsiteNaturalDocs.org

Natural Docs is a multi-language documentation generator. It is written in C# and available as free software under the terms of the Affero General Public License. It attempts to keep the comments written in source code just as readable as the generated documentation. It is written and maintained by Greg Valure.

Background

Theoretically, Natural Docs can generate documentation from any language that can support comments, or from plain text files. When executed, it can automatically document functions, variables, classes, and inheritance from ActionScript, C#, and Perl regardless of existing documentation in the source code. In all other languages, these need to be explicitly documented for them to be generated. It can generate documentation in HTML, either with frames or without.

Unlike Javadoc, it is not considered an industry standard for documenting in any language, although it can incorporate Javadoc documentation for languages with "full support."[2] It is used by some hobbyists and companies, such as CNET Networks, Inc. and Iron Realms Entertainment.[3][4] It has gained popularity amongst ActionScript developers because no other free documentation generator exists that fully supports ActionScript and because it generates higher-quality output than similar generators that partially support the language, such as ROBODoc.

Example

This is an example of the documentation style:

 /*  * Function: Multiply  *   * Multiplies two integers.  *  * Parameters:  * x - The first integer.  * y - The second integer.  *  * Returns:  * The two integers multiplied together.  *  * See Also:  * <Divide>  */ int Multiply (int x, int y) { return x * y; } 

For comparison, this is how the same thing would be documented with Javadoc:

 /**   * Multiplies two integers.   *   * @param x The first integer.   * @param y The second integer.   * @return The two integers multiplied together.   * @see Divide   */ int Multiply (int x, int y) { return x * y; } 

See also

Notes and references

Further reading

This article is copied from an article on Wikipedia® - the free encyclopedia created and edited by its online user community. The text was not checked or edited by anyone on our staff. Although the vast majority of Wikipedia® encyclopedia articles provide accurate and timely information, please do not assume the accuracy of any particular article. This article is distributed under the terms of GNU Free Documentation License.

Copyright © 2003-2025 Farlex, Inc Disclaimer
All content on this website, including dictionary, thesaurus, literature, geography, and other reference data is for informational purposes only. This information should not be considered complete, up to date, and is not intended to be used in place of a visit, consultation, or advice of a legal, medical, or any other professional.