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.