Render a @deffn[x] {CATEGORY} {NAME} [QUALIFIERS] LAMBDA-LIST line. Rendering is done on *standard-output*. CATEGORY, NAME, QUALIFIERS, and LAMBDA-LIST are escaped for Texinfo prior to rendering. LAMBDA-LIST should be provided by ‘safe-lambda-list’ or ‘safe-specializers’, which see.
Render ANCHOR as an @anchor on a standalone line. ANCHOR is escaped for Texinfo prior to rendering. Rendering is done on *standard-output*.
Render a @deffn {CATEGORY} {NAME} [QUALIFIERS] LAMBDA-LIST line. Rendering is done on *standard-output*. CATEGORY, NAME, QUALIFIERS, and LAMBDA-LIST are escaped for Texinfo prior to rendering. LAMBDA-LIST should be provided by ‘safe-lambda-list’ or ‘safe-specializers’, which see.
Render a @deffnx {CATEGORY} {NAME} [QUALIFIERS] LAMBDA-LIST line. Rendering is done on *standard-output*. CATEGORY, NAME, QUALIFIERS, and LAMBDA-LIST are escaped for Texinfo prior to rendering. LAMBDA-LIST should be provided by ‘safe-lambda-list’ or ‘safe-specializers’, which see.
Render a @deftp {CATEGORY} {NAME} [LAMBDA-LIST] line on *standard-output*. CATEGORY, NAME, and LAMBDA-LIST are escaped for Texinfo prior to rendering. LAMBDA-LIST should be provided by ‘safe-lambda-list’, which see.
Render a @defvr {CATEGORY} {NAME} line on *standard-output*. CATEGORY and NAME are escaped for Texinfo prior to rendering.
Render and @end ENVIRONMENT line on *standard-output*. ENVIRONMENT should be a string designator.
Render an @item [TITLE] line on *standard-output*.
Render an @itemize KIND line on *standard-output*.
KIND should be a string designator. It defaults to @bullet.
Render a @multitable @columnFRACTIONS line on *standard-output*.
Render ANCHOR as an @ref with online and printed LABEL.
Both ANCHOR and LABEL are escaped for Texinfo prior to rendering.
LABEL is rendered in teletype.
Rendering is done on *standard-output*.
Render a @table KIND line on *standard-output*.
KIND should be a string designator. It defaults to @strong.
Add the STATUS DEFINITIONS categories nodes to PARENT in CONTEXT.
Add the STATUS CATEGORY node to PARENT for DEFINITIONS in CONTEXT.
Add CHILD node to PARENT node and return CHILD.
Add REPORT’s definitions node to PARENT in CONTEXT.
Add REPORT’s files node to PARENT in CONTEXT.
Add REPORT’s modules node to PARENT in CONTEXT.
Add REPORT’s packages node to PARENT in CONTEXT.
Add REPORT’s systems node to PARENT in CONTEXT.
Render DEFINITION’s anchoring command on *STANDARD-OUTPUT*.
Render DEFINITION’s anchoring and indexing commands on *STANDARD-OUTPUT*.
Return DEFINITION’s anchor name, that is, "(<UID>)".
Send SYMBOL’s INDENTation information to Emacs.
Emacs will set the ’common-lisp-indent-function property.
If INDENT is a symbol, use its indentation definition. Otherwise, INDENT is
considered as an indentation definition.
Return the list of all (sub)TYPE components found in MODULE’s tree.
Return the current time as a string.
Return DEFINITION’s source for TYPE.
Return T if a definition for SYMBOL originating in PATHNAME is domestic.
A definition is considered domestic under the following conditions:
- its originating PATHNAME is known (non NIL) and one of domestic PATHNAMES,
- its originating PATHNAME is unknown, but the SYMBOL’s home package is one of
domestic PACKAGES.
Note that a definition for a domestic symbol, but originating in a foreign
source file is considered foreign.
When STRING, escape it for Texinfo.
Escape STRING for use as a Texinfo anchor name.
In addition to regular escaping, periods, commas, colons, and parenthesis are
replaced with alternative Unicode characters.
Escape STRING for use as a Texinfo anchor label.
In addition to regular escaping, colons are replaced with alternative Unicode
characters.
Escape safe LAMBDA-LIST for Texinfo.
This function expects a value from ‘safe-lambda-list’, which see. It returns a
string properly escaped for Texinfo, apart from &-constructs which retain
their original form, and @ref’s and @t’s which are already properly set.
Return the list of all file components found in MODULE’s tree.
Create and return a file DEFINITION node in CONTEXT.
Finalize DEFINITIONS in domestic PACKAGES and PATHNAMES. For more information, see ‘stabilize’ and ‘freeze’.
Find a definition for OBJECT in DEFINITIONS.
Return the length of the first word in STRING. Initial whitespace characters are skipped.
Freeze DEFINITIONS.
Currently, this means:
- computing the definitions UIDs,
- potentially upgrading generic definitions to reader or writer definitions.
Return FUNCOID’s name, or NIL.
FUNCOID may be a function, a macro function, or a compiler macro function.
Lambda expression are not considered as proper names, so NIL is returned.
Construct a call to ‘defindent’ by reading an argument list from STREAM. This dispatch macro character function is installed on #i in the NET.DIDIERVERNA.DECLT named readtable.
Render DEFINITION’s indexing command on *STANDARD-OUTPUT*.
Render a LIST of items as part of an @itemize KIND environment.
KIND should be a string designator. It defaults to @bullet.
If RENDERER is non-nil, it must be a function of one argument (every LIST
element) that performs the rendering on *standard-output* directly.
Otherwise, the rendering is done by calling format, as explained below.
- FORMAT is the format string to use for every LIST element. It defaults to
"~A".
- KEY is a function of one argument (every LIST element) used to provide
the necessary arguments to the FORMAT string. If multiple arguments are
needed, they should be returned by KEY as multiple values.
Load ASDF SYSTEM-NAME in a manner suitable to extract documentation.
Return the corresponding ASDF system.
SYSTEM-NAME is an ASDF system designator.
Return a long title for DEFINITION.
It is of the form "The <qualified safe name> <type name>".
Return a list of all file definitions for system DEFINITIONS.
Return a list of all module definitions for system DEFINITIONS.
Return a list of all package definitions for FILE- and SYSTEM-DEFINITIONS. This list contains definitions for packages defined in the corresponding files, or for which the source is not found, but the name is of the form SYSTEM/... (case insensitive) for one of the corresponding systems.
Return a list of all domestic symbol definitions.
If ALL-SYMBOLS-P, introspect all accessible symbols in the current Lisp
environment. Otherwise (the default), limit introspection to the symbols from
domestic PACKAGES.
Domesticity is defined in relation to domestic PACKAGES and PATHNAMES; see
‘domesticp’.
Return a list of all system definitions for SYSTEM.
The only guarantee is that the definition for SYSTEM comes first.
The other considered systems are those found recursively in SYSTEM’s
dependencies, and located under SYSTEM’s directory.
See ‘subsystems’ for more information.
Make a new CLASSOID definition for SYMBOL.
Also create all slots definitions. The foreign status of the new classoid and
its slots is computed from domestic PACKAGES and PATHNAMES.
The concrete class of the new definition (structure, class, or condition)
depends on the kind of CLASSOID.
Make a new CLOS SLOT definition, possibly FOREIGN.
Make a new method COMBINATION definition for SYMBOL, possibly FOREIGN. The concrete class of the new definition depends on the COMBINATION type.
Make a new compiler macro alias definition for (possibly SETF) SYMBOL.
Make a new COMPILER-MACRO definition for SYMBOL.
Make a new constant definition for SYMBOL.
Make a new rendering context.
The following keys are available.
- LOCATIONS: whether to hyperlink definitions to their locations.
Currently supported values are NIL (the default), and :file-system.
- DEFAULT-VALUES: whether to render default / standard values.
Defaults to NIL.
- FOREIGN-DEFINITIONS: whether to render foreign definitions.
Defaults to NIL.
- DECLT-NOTICE: whether to add a small credit paragraph to Declt.
Possible values are NIL, :short, or :long (the default).
Make a new setf EXPANDER definition for SYMBOL, possibly foreign.
Make a new FILE definition.
The concrete class of the new definition depends on the kind of FILE.
make a new function alias definition for (possibly SETF) SYMBOL.
Make a new GENERIC function definition for (SETF) SYMBOL, possibly FOREIGN.
Make a new macro alias definition for SYMBOL.
Make a new MACRO definition for SYMBOL.
Make a new METHOD definition, possibly FOREIGN.
Make a new MODULE definition.
Make a new ordinary FUNCTION definition for (SETF) SYMBOL, possibly FOREIGN.
Make a new PACKAGE definition, possibly FOREIGN.
Make a new report.
Make a new special variable definition for SYMBOL.
Make and return a list of all existing domestic definitions for SYMBOL. Domesticity is defined in relation to domestic PACKAGES and PATHNAMES; see ‘domesticp’.
Make a new symbol macro definition for SYMBOL.
Make a new SYSTEM definition.
Make a new system file definition for SYSTEM.
Make a list of system file definitions for SYSTEMS.
Multiple systems may be defined in the same file. There is however only one
definition for each file.
Make a new type definition for SYMBOL.
Make a new typed structure SLOT definition, possibly FOREIGN.
Return T if function DEFINITION and setf EXPANDER can be documented jointly.
Check if WRITER generic definition can be documented jointly with READER. If so, return the generalized Boolean value of ‘merge-methods’, which see.
Merging is only attempted on generic functions defined exclusively via slot
:accessor keywords. For merging to actually occur, there must not exist any
property specific to only one definition, or different between the two (no
related expander information, same method combination, same docstring, etc.).
The only exception is their lambda lists.
The same conditions apply to methods, which definitions are also merged. Only unqualified methods must exist. Standalone reader and writer methods are still permitted.
Attempt to merge READER and WRITER generic definitions methods. See
‘merge-generic-writer’ for the exact conditions under which merging may
occur. If merging is possible, return a list of three values:
1. a list of the form ((READER-METHOD . WRITER-METHOD) ...) for associated
reader and writer methods,
2. a list of standalone readers,
3. a list of standalone writers,
Otherwise, return NIL.
Return WRITER if it can be documented jointly with READER.
Return METHOD’s canonical name.
Return a second value of T if METHOD is in fact a SETF one.
Return the list of all module components found in MODULE’s tree.
Return a new macro or function definition for NAME, or NIL. PACKAGES and PATHNAMES are used to determine domesticity.
Make a new foreign GENERIC function definition. PACKAGES and PATHNAMES are used to determine domesticity.
name
.
next
.
Return T if STRING is non empty and does not span multiple lines.
Return the list of PACKAGE’s external symbols.
Return the lists of PACKAGE’s internal and external symbols as two values.
Return the list of symbols from home PACKAGE.
Parse CONTACT(S) as either a contact string, or a list of such. Return a list of parsed contacts. See ‘parse-contact-string’ for more information.
Parse STRING of the form "My Name <my@address>".
Both name and address are optional. If only an address is provided, the angle
brackets may be omitted.
If neither a name nor an address can be extracted, return NIL. Otherwise,
return the list ("My Name" . "my@address"). In such a case, either the CAR
or the CDR may be null, but not both.
Read one line from STREAM.
Return a list of two values:
- the line itself, or STREAM,
- whether a newline character is missing at the end of the line.
Render a possibly SHORT DEFINITION’s reference in CONTEXT.
Rendering is done on *STANDARD-OUTPUT*.
When DEFINITION is foreign and CONTEXT disables their rendering, the produced
reference is just text. Otherwise, an actual link is created.
Unless SHORT, the DEFINITION type is advertised after the reference
itself. When SHORT, the reference is followed by a PUNCTUATION character (a
dot by default) or NIL.
Render DEFINITION’s documentation core in CONTEXT.
More specifically, render DEFINITION’s package and source file references.
Render COMPONENT’s DEPENDENCIES in CONTEXT, optionally PREFIXing the title.
Render a resolved DEPENDENCY specification in CONTEXT. See ‘resolve-dependency-specification’ for more information.
Render ITEM’s documentation string. Rendering is done on *standard-output*.
Render the header of the Texinfo file.
Render a headline for DEFINITION. Also anchor and index it.
Render NODE at LEVEL and all its children at LEVEL+1.
Render a reference to DEFINITION’s home package definition in CONTEXT.
When FORCE, render a reference to the Common Lisp package, even if CONTEXT
says otherwise.
Possibly render an "uninterned" mention instead of an actual reference,
when there is no home package to reference.
Render an enTITLEd list of [SHORT] references to DEFINITIONS in CONTEXT.
See ‘reference’ for the meaning of SHORT. The list is rendered in an itemized
table item, unless there is only one definition in which case it appears
directly as the table item’s contents.
Rendering is done on *standard-output*.
Render TEXT for Texinfo.
Rendering is done on *standard-output*.
The rendering takes care of escaping the text for Texinfo, and attempts to
embellish the output by detecting potential paragraphs from standalone lines.
Render the whole nodes hierarchy starting at toplevel NODE.
Reorder information in DEPENDENCY-DEF so that the system is always first.
More specifically:
- simple component names are returned as-is,
- :version expressions are returned as (system :version version-specifier),
- :feature expressions are returned as (... :feature feature-expression),
- :require expressions are returned as (system :require).
Note that because a feature expression is defined recursively, the first element in the reordered list may be another reordered sub-list rather than a simple component name directly. In any case, the system name will always be in the deepest first position.
Extract the system name from REORDERED-DEPENDENCY-DEF. See ‘reorder-dependency-def’ for more information.
Resolve dependency SPECIFICATION for (FOREIGN) COMPONENT in DEFINITIONS. SPECIFICATION must already be reordered (see ‘reorder-dependency-def’ for more information). The specification’s component name is replaced with its corresponding definition. A foreign definition may be created in the process.
If such a definition is neither found, nor created, return NIL. Otherwise, return a list of the updated specification (suitable to MAPCAN).
Return a copy of STRING with blanks revealed.
If STRING is empty or null, use the empty set symbol. Otherwise, each blank
character is replaced with a visible Unicode representation. See ‘*blanks*’
for more information.
Return a safe LAMBDA-LIST, suitable to pass to Texinfo.
The original lambda-list’s structure is preserved, but all symbols are
converted to revealed strings, and initform / supplied-p data is removed.
&whole, &environment, and &aux parts are removed as they don’t provide any
information on the funcoid’s usage. SAFE-SPECIALIZERS is provided for method
LAMBDA-LISTs. See ‘safe-specializers’ for more information. Mandatory
arguments associated with a non-nil safe specializer are listed together.
Return a list of safe specializers for method DEFINITION in CONTEXT.
A safe specializer is the printed form of either a reference to a class
definition, or an EQL specializer’s type name.
Unless the CONTEXT specifies otherwise, T specializers are replaced by NIL to
indicate that they are not to be advertized.
For setf and writer definitions, only the specializers rest is used, as these methods get the new value as their first argument.
Return a new property list from KEYS with only SELECTED ones.
Return source pathname for NAMEd object of TYPE.
Return OBJECT’s source pathname.
Compute CLOS classoid slot DEFINITION’s reader and writer definitions. This function is used for regular class and condition slots.
Compute CLOS structure slot DEFINITION’s reader and writer definitions.
Return T if COMPONENT can be found under DIRECTORY.
Return NAME’d SYSTEM dependency if found under DIRECTORY, or nil.
Return the list of SYSTEM and all its dependencies found under DIRECTORY. All dependencies are descended recursively. Both :defsystem-depends-on and :depends-on are included. Potential duplicates are removed.
Return all system names from SYSTEM dependencies. This includes both :defsystem-depends-on and :depends-on.
Check that STRING is of the form nonblank@nonblank, after trimming. Return that string, or issue a warning and return NIL.