Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision | Next revision Both sides next revision | ||
tools:currydoc [2013-02-26 09:40] mh |
tools:currydoc [2013-02-26 09:49] mh |
||
---|---|---|---|
Line 13: | Line 13: | ||
overlapping definitions) are provided and combined with | overlapping definitions) are provided and combined with | ||
documentation comments provided by the programmer. | documentation comments provided by the programmer. | ||
+ | |||
+ | ==== Short Summary ==== | ||
+ | |||
+ | A **documentation comment** starts at the beginning of a line | ||
+ | with three dashes (also in literate programs!). | ||
+ | All documentation comments immediately before a | ||
+ | definition of a datatype or (top-level) function are kept together. | ||
+ | The documentation comments for the complete module occur before | ||
+ | the first ''module'' or ''import'' line in the module. | ||
+ | The comments can also contain several special tags. These tags | ||
+ | must be the first thing on its line (in the documentation comment) | ||
+ | and continues until the next tag is encountered or until the | ||
+ | end of the comment. The following tags are recognized: | ||
+ | |||
+ | * ''@author comment'': Specifies the author of a module (only reasonable in module comments). | ||
+ | * ''@version comment'': Specifies the version of a module (only reasonable in module comments). | ||
+ | * ''@cons id comment'': A comment for the constructor ''id'' of a datatype (only reasonable in datatype comments). | ||
+ | * ''@param id comment'': A comment for function parameter ''id'' (only reasonable in function comments). Due to pattern matching, this need not be the name of a parameter given in the declaration of the function but all parameters for this functions must be commented in left-to-right order. | ||
+ | * ''@return comment'': A comment for the return value of a function (only reasonable in function comments). | ||