Packages

CLDomain, like Common Lisp, needs to know the current package when resolving symbols. The :cl:package: directive is the CLDomain equivalent of (in-package ...). You can switch between packages at any time in the documentation file using this directive.

.. cl:package:: package

Use package as the package name when resolving symbols to documentation.

By default, if the package has a documentation string, it will be rendered with the package name as a signature and the documentation string in the content area. This is useful for documenting the purpose and scope of a package.

Options:

:nodoc:

Suppress the package documentation string. Use this when you only want to set the package context without rendering package documentation. This is the most common usage when switching packages in documentation files.

Example with documentation (default):

.. cl:package:: my-package

The package documentation string from Common Lisp will be displayed here.
You can also add additional RST documentation in the directive body.

Example without documentation:

.. cl:package:: sphinxcontrib.cldomain.doc
   :nodoc:

Multi-package documentation:

.. cl:package:: sphinxcontrib.cldomain.doc
   :nodoc:

documentation... documentation... documentation...

.. cl:package:: org.coolness.my.code
   :nodoc:

foo... bar... baz... lemon odor quux!!!