Go to the first, previous, next, last section, table of contents.


Documentation generation library

Author(s): Manuel Hermenegildo.

Version: 1.9#58 (2002/4/19, 20:59:33 CEST)

Version of last change: 1.9#35 (1999/12/9, 0:29:7 CET)

This library provides some predicates which generate documentation automatically for a given module or application, using the declarations and assertions used in the module itself as input (see the assertions library). By default, only the exported predicates of the module appear in the documentation. The predicates will be documented in the order in which they appear in the module/1 or module/2 declaration.

The idea of this package is on one hand to reuse the information present in the assertions and on the other to help ensure that code and documentation are kept as coherent as possible. Hopefully, keeping them close together should help in this always difficult task. The resulting documentation is somewhat rigidly structured, but generally sufficient for a reference manual, provided a little effort is put into the assertions and comments. The end product understandably depends heavily on how much work is put into adding additional comments to the source. Some documentation will be generated in any case, but it is recommended that, at the minimum, a module title and a comment for each of the exported predicates be provided.

The exact format in which the documentation is generated is defined in an imported module autodocformats. See the description of the imported predicates for more details and descriptions of the interface. A default definition of this module is provided in the autodocformats library. A simple example of the use of this library for generating a texinfo reference manual (including a driver script, useful Makefiles, etc.) is included with the library source code. Other examples can be found in the Ciao documentation directory (i.e., the Ciao manuals themselves).

Usage and interface (autodoc)

Documentation on exports (autodoc)

PREDICATE: autodoc/10:

Usage: autodoc(Format,Main,LibPaths,SysLibPaths,Idxs,Components,PathAliasF,StartPage,PaperType,Opts)

PREDICATE: generate_man_page/5:

Usage: generate_man_page(Main,LibPaths,SysLibPaths,PathAliasF,Opts)

PREDICATE: generate_description/6:

Usage: generate_description(Format,Main,LibPaths,SysLibPaths,PathAliasF,Opts)

PREDICATE: generate_info_dir_entry/5:

Usage: generate_info_dir_entry(Main,LibPaths,SysLibPaths,PathAliasF,Opts)

PREDICATE: rewrite_docstring/4:

Usage: rewrite_docstring(Format,Idxs,S,RS)

REGTYPE: modtype/1:
modtype(application).
modtype(use_module).
modtype(include).
modtype(part).

Usage:

(UNDOC_REEXPORT): index_comment/2:

Imported from autodocformats (see the corresponding documentation for details).

(UNDOC_REEXPORT): option_comment/2:

Imported from autodocformats (see the corresponding documentation for details).

Documentation on multifiles (autodoc)

PREDICATE: library_directory/1:

No further documentation available for this predicate.

The predicate is multifile.

The predicate is of type dynamic.

Version/Change Log (autodoc)

Version 0.0 (1996/10/10)
First prototype. (Manuel Hermenegildo)


Go to the first, previous, next, last section, table of contents.