Package COM.INFORMATIMAGO.LISPDOC.GENERATE


A generator class shall have methods defined for all the generic
functions exported from this package.

License:

    LLGPL

    Copyright Pascal J. Bourguignon 2012 - 2015

    You are granted the rights to distribute and use this software
    as governed by the terms of the Lisp Lesser GNU Public License
    <http://opensource.franz.com/preamble.html> also known as the LLGPL.

AUTHOR

(build-flat-symbol-index-groups syms)
function
RETURN:     a list of groups of syms by first letter.
(build-permuted-symbol-index-groups syms)
function
RETURN: a list of groups of syms by first letter of components.
(collect-all-symbols packdocs)
function
RETURN: a list of the docs of all the exported symbols from the
        packages documented in the PACKDOCS list.

COPYRIGHT

DOCUMENTATION-GENERATOR

DOCUMENTATION-TITLE

EMAIL

(first-letter object)
function
RETURN: the initial letter of the name of the object, upcased, or
        the keyword :OTHER if it is not an alphabetic character.
(generate-begin target)
generic-function
Called before generation for the TARGET.
Can be used to open files and other initialization.
(generate-end target)
generic-function
Called before generation for the TARGET.
Can be used to close files and other terminations.
(generate-flat-package-index target pages &optional filename)
generic-function

DO:         Optionally generate a flat list of packages linking to
            each package documentation page, sorted alphabetically.

TARGET:     the generation document instance.

PAGES:      the flat list of packages pages

FILENAME:   the name of the generated file.

(generate-flat-symbol-index target syms &optional filename)
generic-function

DO:         Optionally generate a flat symbol index, sorted
            alphabetically; the symbols are grouped according to the
            initial letter, and for each group an index file is
            generated listing the symbols in the group alphabetically
            with links to the packages they are defined in.

TARGET:     the generation document instance.

SYM:        A list of the symbol doc structures.

FILENAME:   the stem of the name of the generated files.

RETURN:     a sorted list of lists containing the unique initial
            letters of all symbols, or :OTHER for non-alphabetical
            symbols, and the filename of that group index file).

(generate-hierarchical-package-index target tree &optional filename)
generic-function

DO:         Optionally generate a hierarchical package index, by
            listing for each non-trivial node in the TREE, all the
            packages and subsystems.  The packages are links to the
            package documentation page, and the subsystems are links
            to recursively generated hierarchical package index for
            the node.

TARGET:     the generation document instance.

TREE:       the index-tree of the target or one of its subnodes.

FILENAME:   the name of the generated file.

NOTE:       'system' doesn't mean asdf system here; it's just a node
            in the package index tree.

(generate-introduction target)
generic-function
Generate the introduction of the documentation.
It may include a menu to the various indices.
(generate-lispdoc target-class directory packages &rest keys &key &allow-other-keys)
function

DO:         Generate documentation for the exported symbols of each
            package, into the TARGET format, storing one or more files
            in DIRECTORY.

TARGET-CLASS:
            a class designator for a subclass of DOCUMENTATION-GENERATOR.

(generate-navigation-menu target &optional entries)
generic-function

DO:         Optionally generate a navigation menu to navigate to the
            various pages in the ENTRIES list.  If ENTRIES is not
            provided, then (NAVIGATION TARGET) is generated.

ENTRIES:    A list of lists (filename title) used to build the
            navigation menu.

(generate-package-documentation-pages target)
generic-function

DO:         Generate the documentation page for each package in the TARGET packdocs.

TARGET:     the generation document instance.

NOTE:       The default method on the abstract superclass DOCUMENTATION-GENERATOR
            just calls RENDER on each packdoc of the TARGET.

(generate-permuted-symbol-index target syms &optional filename)
generic-function

DO:         Optionally generate a permuted symbol index, sorted
            alphabetically on the first letter of each component of
            the symbol name, components being the substrings of the
            symbol name separated by dashes.  The symbols are grouped
            according to the initial letter of each of its component,
            and for each group, an index file is generated listing the
            symbols in the group, alphabetically, and aligned on the
            initial letter of the component considered for that group.

TARGET:     the generation document instance.

SYM:        A list of the symbol doc structures.

FILENAME:   the stem of the name of the generated files.

RETURN:     a sorted list of lists containing the unique initial
            letters of all components, or :OTHER for non-alphabetical
            symbols, and the filename of that group index file).

(generate-symbol-index target flat-indices permuted-indices symbol-count &optional filename)
generic-function

DO:         Optionally generate a symbol index page, with links to the
            the letters in the FLAT-INDICES to the corresponding  flat
            symbol index file, and the letters in the PERMUTED-INDICES
            to the corresponding permuted symbol index file.

TARGET:     the generation document instance.

FLAT-INDICES:
            A list of flat symbol index indices (list of first letter and index file name).

PERMUTED-INDICES:
            A list of permuted symbol index indices (list of first letter and index file name).

SYMBOL-COUNT:
            Total number of symbols indexed (informative: it's just mentionned in the generated page).

FILENAME:   the name of the generated files.

INDEX-TREE

KEYWORDS

NAVIGATION

(package-navigation-menu target current-page &optional navigation-menu)
generic-function

RETURN:     The list concatenation of the NAVIGATION-MENU and entries
            required to navigate from the CURRENT-PAGE.

NAVIGATION-MENU:
            The current navigation menu; If not provided then
            (NAVIGATION TARGET) is used instead.

PACKDOCS

PAGES

(render doc target)
generic-function
Generate the representation of the DOC structure on the TARGET.

RIGHT-CASE