grdoc Syntax

grdoc currently has two modes of operation supporting c or fortran like comments. The grdoc system has four important aspects, the grdoc delimiters, grdoc keywords, grdoc boolean keywords, and grdoc container keywords. All the keywords are case insensitive, but matches done on the values are not.

grdoc delimiters

The grdoc delimiters indicate the beginning and end of a grdoc region. In the c-style mode, the delimiters are
/*@@

@@*/
In fortran style more the delimiters are
c/*@@

c@@*/
the delimiters must be alone on a line. White space before (in c-mode only) and after the delimiters is ignored.

The only difference between c and fortran mode is that in fortran mode, each grdoc line must start with a one of c, C, *, as is standard for fortran comments. This will remain unmentioned and implied for the rest of this document. Note that there is no restriction to use fortran mode in fortran files if, say, your fortran files are passed through the c-preprocessor.

grdoc keywords

grdoc keywords have the syntax of
@keyword value value value
value value value
The value is terminated when the next keyword is reached. The value may not contain any html constructs (and any constructs will be converted to &lt and &gt etc...)

grdoc boolean keywords

grdoc booleans are essentially keyword/value pairs where the value is optional. They are used to mark facts abouta code. The syntax is
@keyword (optional value)

grdoc container keywords

grdoc container keywords are keywords which can contain other keywords or html text. The syntax for grdoc container keywords is
@cont optional information on one line
contained information including special keywords
which may span many lines
@endcont