Package COM.INFORMATIMAGO.LISPDOC.TREE


A package tree index, for hierarchical packages index.

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.
*hierarchical-package-separator*
variable
The character used to separate package 'components' in hierarchical package names.
It's usually a dot, but some may use a different character such as a slash.
Initial value: .
(make-index-tree package-names)
function
RETURN: a new tree filled with nodes for all the PACKAGE-NAMES.

MAKE-TREE

(package-path package)
function

RETURN: A list of component strings representing the name of the
        PACKAGE, assuming it is structured as a list of components
        joined by the *HIERARCHICAL-PACKAGE-SEPARATOR*.

EXAMPLE: (package-path  "COM.INFORMATIMAGO.LISPDOC.TREE")
         --> ("COM" "INFORMATIMAGO" "LISPDOC" "TREE")

tree
structure
A node in the package hierarchical naming tree.

PARENT:   a reference to the parent node, or NIL for the root.
NODE:     the string component naming this node.
PACKAGE:  the joined hierarchical package name of the package designated by this node, or NIL if none.
CHILDREN: the subtrees.
(tree-add-node-at-path tree path pname)
function
DO:     Add a new tree node in the TREE for the package named PNAME at
        the given relative PATH.

RETURN: tree.

TREE-CHILDREN

(tree-children-named tree node)
function
RETURN: the child in the TREE named by NODE.

TREE-COPY

TREE-NODE

(tree-node-at-path tree path)
function
RETURN: The tree node found at the given PATH.

TREE-P

TREE-PACKAGE

TREE-PARENT

(tree-path tree)
function
RETURN: The path from TREE to the root.