The mgl-pax Reference Manual

This is the mgl-pax Reference Manual, version 0.4.4, generated automatically by Declt version 4.0 beta 2 "William Riker" on Tue Jul 15 05:59:06 2025 GMT+0.

Table of Contents


1 Introduction


2 Systems

The main system appears first, followed by any subsystem dependency.


2.1 mgl-pax

Documentation system, browser, generator. See the MGL-PAX::@PAX-MANUAL.

Author

Gábor Melis

Contact

Home Page

http://github.com/melisgl/mgl-pax

Source Control

(GIT https://github.com/melisgl/mgl-pax.git)

Bug Tracker

https://github.com/melisgl/mgl-pax/issues

License

MIT, see COPYING.

Long Description

The base system. See MGL-PAX::@LINKS-AND-SYSTEMS.

Version

0.4.4

Defsystem Dependency

mgl-pax.asdf (system).

Dependencies
Source

mgl-pax.asd.

Child Component

src/base/ (module).


2.2 mgl-pax.asdf

Source

mgl-pax.asdf.asd.

Child Component

asdf.lisp (file).


2.3 mgl-pax-bootstrap

Use the [mgl-pax][asdf:system] system. This system is
not for public consumption but solely for systems on which PAX depends and which also use PAX.

Author

Gábor Melis

Contact

License

MIT, see COPYING.

Defsystem Dependency

mgl-pax.asdf (system).

Dependency

autoload (system).

Source

mgl-pax-bootstrap.asd.

Child Component

src/bootstrap/ (module).


2.4 autoload

Bare-bones autoloading facility.

Author

Gábor Melis

Contact

Home Page

http://github.com/melisgl/mgl-pax/tree/master/autoload

Source Control

(GIT https://github.com/melisgl/mgl-pax.git)

Bug Tracker

https://github.com/melisgl/mgl-pax/issues

License

MIT, see COPYING.

Version

0.0.1

Defsystem Dependency

mgl-pax.asdf (system).

Source

autoload.asd.

Child Components

2.5 dref

Reify definitions, provide portable access to
docstrings and source locations in an extensible framework.

Author

Gábor Melis

Contact

Home Page

http://github.com/melisgl/mgl-pax/tree/master/dref

Source Control

(GIT https://github.com/melisgl/mgl-pax.git)

Bug Tracker

https://github.com/melisgl/mgl-pax/issues

License

MIT, see COPYING.

Long Description

DEFUN defines a first-class object: a FUNCTION.
DEFVAR does not. This library provides a way to refer to all definitions and smooths over the differences between implementations. This system has minimal dependencies. It autoloads the ‘dref/full‘ ASDF:SYSTEM, which depends Alexandria and Swank.

Version

0.4.4

Defsystem Dependency

mgl-pax.asdf (system).

Dependencies
Source

dref.asd.

Child Component

src/base/ (module).


3 Modules

Modules are listed depth-first from the system components tree.


3.1 mgl-pax/src/base/

Source

mgl-pax.asd.

Parent Component

mgl-pax (system).

Child Components

3.2 mgl-pax-bootstrap/src/bootstrap/

Source

mgl-pax-bootstrap.asd.

Parent Component

mgl-pax-bootstrap (system).

Child Components

3.3 dref/src/base/

Source

dref.asd.

Parent Component

dref (system).

Child Components

4 Files

Files are sorted by type and then listed depth-first from the systems components trees.


4.1 Lisp


4.1.1 mgl-pax/mgl-pax.asd

Source

mgl-pax.asd.

Parent Component

mgl-pax (system).

ASDF Systems

mgl-pax.


4.1.2 mgl-pax.asdf/mgl-pax.asdf.asd

Source

mgl-pax.asdf.asd.

Parent Component

mgl-pax.asdf (system).

ASDF Systems

mgl-pax.asdf.


4.1.3 mgl-pax-bootstrap/mgl-pax-bootstrap.asd

Source

mgl-pax-bootstrap.asd.

Parent Component

mgl-pax-bootstrap (system).

ASDF Systems

mgl-pax-bootstrap.


4.1.4 autoload/autoload.asd

Source

autoload.asd.

Parent Component

autoload (system).

ASDF Systems

autoload.


4.1.5 dref/dref.asd

Source

dref.asd.

Parent Component

dref (system).

ASDF Systems

dref.


4.1.6 mgl-pax/src/base//pax.lisp

Source

mgl-pax.asd.

Parent Component

src/base/ (module).

Public Interface
Internals

4.1.7 mgl-pax/src/base//extension-api.lisp

Dependency

pax.lisp (file).

Source

mgl-pax.asd.

Parent Component

src/base/ (module).

Public Interface

document-object* (generic function).

Internals

4.1.8 mgl-pax/src/base//document-early.lisp

Dependency

extension-api.lisp (file).

Source

mgl-pax.asd.

Parent Component

src/base/ (module).

Public Interface
Internals

4.1.9 mgl-pax/src/base//web-early.lisp

Dependency

document-early.lisp (file).

Source

mgl-pax.asd.

Parent Component

src/base/ (module).

Public Interface

ensure-web-server (function).


4.1.10 mgl-pax/src/base//transcribe-early.lisp

Dependency

web-early.lisp (file).

Source

mgl-pax.asd.

Parent Component

src/base/ (module).

Public Interface
Internals

ensure-transcribe-loaded (function).


4.1.11 mgl-pax/src/base//locatives-early.lisp

Dependency

transcribe-early.lisp (file).

Source

mgl-pax.asd.

Parent Component

src/base/ (module).

Internals

@pax-locatives (special variable).


4.1.12 mgl-pax.asdf/asdf.lisp

Source

mgl-pax.asdf.asd.

Parent Component

mgl-pax.asdf (system).

Packages

mgl-pax.asdf.

Public Interface
Internals

compile-without-some-warnings (function).


4.1.13 mgl-pax-bootstrap/src/bootstrap//package.lisp

Source

mgl-pax-bootstrap.asd.

Parent Component

src/bootstrap/ (module).

Packages

mgl-pax.


4.1.14 mgl-pax-bootstrap/src/bootstrap//basics.lisp

Dependency

package.lisp (file).

Source

mgl-pax-bootstrap.asd.

Parent Component

src/bootstrap/ (module).

Public Interface
Internals

4.1.15 mgl-pax-bootstrap/src/bootstrap//pax-world.lisp

Dependency

basics.lisp (file).

Source

mgl-pax-bootstrap.asd.

Parent Component

src/bootstrap/ (module).

Public Interface

register-doc-in-pax-world (function).

Internals

4.1.16 autoload/package.lisp

Source

autoload.asd.

Parent Component

autoload (system).

Packages

autoload.


4.1.17 autoload/autoload.lisp

Dependency

package.lisp (file).

Source

autoload.asd.

Parent Component

autoload (system).

Public Interface
Internals

4.1.18 dref/src/base//package.lisp

Source

dref.asd.

Parent Component

src/base/ (module).

Packages
Public Interface
Internals

dref-std-env (function).


4.1.19 dref/src/base//util.lisp

Dependency

package.lisp (file).

Source

dref.asd.

Parent Component

src/base/ (module).

Internals

4.1.20 dref/src/base//dref.lisp

Dependency

util.lisp (file).

Source

dref.asd.

Parent Component

src/base/ (module).

Public Interface
Internals

4.1.21 dref/src/base//extension-api.lisp

Dependency

dref.lisp (file).

Source

dref.asd.

Parent Component

src/base/ (module).

Public Interface
Internals

4.1.22 dref/src/base//early.lisp

Dependency

extension-api.lisp (file).

Source

dref.asd.

Parent Component

src/base/ (module).

Public Interface
Internals

5 Packages

Packages are listed by definition order.


5.1 mgl-pax

See MGL-PAX::@PAX-MANUAL.

Source

package.lisp.

Nickname

pax

Use List
Used By List
Public Interface
Internals

5.2 autoload

Source

package.lisp.

Use List

common-lisp.

Used By List
Public Interface
Internals

5.3 dref

See DREF::@DREF-MANUAL.

Source

package.lisp.

Use List
Used By List

mgl-pax.

Public Interface
Internals

5.4 mgl-pax.asdf

Source

asdf.lisp.

Use List

common-lisp.

Public Interface
Internals

compile-without-some-warnings (function).


5.5 dref-ext

See DREF-EXT::@EXTENDING-DREF.

Source

package.lisp.

Use List
  • common-lisp.
  • editor-hints.named-readtables.
  • mgl-pax.
  • pythonic-string-reader.
Used By List
Public Interface
Internals

6 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.


6.1 Public Interface


6.1.1 Special variables

Special Variable: *browse-html-style*
Package

mgl-pax.

Source

document-early.lisp.

Special Variable: *check-locate*

Enable runtime verification of invariants during LOCATE calls. This carries a performance penalty and is intended for testing and debugging.

In particular, enforce the rule of @CAST-NAME-CHANGE and that [ check-locator-return-values function][docstring]

Package

dref-ext.

Source

extension-api.lisp.

Special Variable: *discard-documentation-p*

The default value of DEFSECTION’s DISCARD-DOCUMENTATION-P argument. One may want to set *DISCARD-DOCUMENTATION-P* to true before building a binary application.

Package

mgl-pax.

Source

basics.lisp.

Special Variable: *document-base-url*
Package

mgl-pax.

Source

document-early.lisp.

Special Variable: *document-downcase-uppercase-code*
Package

mgl-pax.

Source

document-early.lisp.

Special Variable: *document-fancy-html-navigation*
Package

mgl-pax.

Source

document-early.lisp.

Package

mgl-pax.

Source

document-early.lisp.

Special Variable: *document-html-charset*
Package

mgl-pax.

Source

document-early.lisp.

Special Variable: *document-html-default-style*
Package

mgl-pax.

Source

document-early.lisp.

Special Variable: *document-html-head*
Package

mgl-pax.

Source

document-early.lisp.

Special Variable: *document-html-lang*
Package

mgl-pax.

Source

document-early.lisp.

Special Variable: *document-html-max-navigation-table-of-contents-level*
Package

mgl-pax.

Source

document-early.lisp.

Special Variable: *document-html-sidebar*
Package

mgl-pax.

Source

document-early.lisp.

Package

mgl-pax.

Source

document-early.lisp.

Special Variable: *document-hyperspec-root*
Package

mgl-pax.

Source

document-early.lisp.

Package

mgl-pax.

Source

document-early.lisp.

Package

mgl-pax.

Source

document-early.lisp.

Package

mgl-pax.

Source

document-early.lisp.

Special Variable: *document-mark-up-signatures*
Package

mgl-pax.

Source

document-early.lisp.

Special Variable: *document-max-numbering-level*
Package

mgl-pax.

Source

document-early.lisp.

Special Variable: *document-max-table-of-contents-level*
Package

mgl-pax.

Source

document-early.lisp.

Package

mgl-pax.

Source

document-early.lisp.

Special Variable: *document-normalize-packages*
Package

mgl-pax.

Source

document-early.lisp.

Special Variable: *document-pandoc-pdf-header-includes*
Package

mgl-pax.

Source

document-early.lisp.

Special Variable: *document-pandoc-pdf-metadata-block*
Package

mgl-pax.

Source

document-early.lisp.

Special Variable: *document-pandoc-pdf-options*
Package

mgl-pax.

Source

document-early.lisp.

Special Variable: *document-pandoc-program*
Package

mgl-pax.

Source

document-early.lisp.

Special Variable: *document-text-navigation*
Package

mgl-pax.

Source

document-early.lisp.

Special Variable: *document-tight*
Package

mgl-pax.

Source

document-early.lisp.

Special Variable: *document-uppercase-is-code*
Package

mgl-pax.

Source

document-early.lisp.

Special Variable: *document-url-versions*
Package

mgl-pax.

Source

document-early.lisp.

Special Variable: *format*

Bound by DOCUMENT to its FORMAT argument, this allows Markdown output to depend on the output format.

Package

mgl-pax.

Source

document-early.lisp.

Special Variable: *transcribe-check-consistency*
Package

mgl-pax.

Source

transcribe-early.lisp.

Special Variable: *transcribe-syntaxes*
Package

mgl-pax.

Source

transcribe-early.lisp.


6.1.2 Macros

Macro: autoload (name asdf-system-name &key export macro)
Package

autoload.

Source

autoload.lisp.

Macro: call-cast (locative-type dref)

Call the [cast][DEFINE-CAST] to LOCATIVE-TYPE with DREF.

Package

dref-ext.

Source

extension-api.lisp.

Macro: call-locator (object locative-type)

Call the [locator][DEFINE-LOCATOR] for LOCATIVE-TYPE with OBJECT.

Package

dref-ext.

Source

extension-api.lisp.

Macro: call-lookup (name locative-type locative-args)

Call the [lookup][DEFINE-LOOKUP] for LOCATIVE-TYPE with NAME and LOCATIVE-ARGS.

Package

dref-ext.

Source

extension-api.lisp.

Macro: check-locative-args (locative-type locative-args)

Signal a LOCATE-ERROR condition if LOCATIVE-ARGS do not match the LAMBDA-LIST argument of LOCATIVE-TYPE (not evaluated).

Package

dref-ext.

Source

extension-api.lisp.

Macro: define-cast (locative-type ((dref dref-class)) &body body)

Define a method of converting a @DEFINITION to another
with LOCATIVE-TYPE. When a cast’s BODY is evaluated, DREF is bound to an instance DREF-CLASS, which denotes a valid but potentially [non-canonical][ @canonicalization] definition.

Note the @DEFAULT-DOWNCAST often suffices, and defining a cast is only necessary if the [name][ @cast-name-change] or the locative args change:

“‘
(define-cast accessor ((dref reader-dref))
(let ((name (dref-name dref))
(class (second (dref-locative dref))))
(when (ignore-errors (find-accessor-slot-definition name class)) (make-instance ’accessor-dref :name name
:locative ‘(accessor ,class)))))
“‘

- LOCATIVE-TYPE is a valid @LOCATIVE-TYPE.

- If LOCATIVE-TYPE is one of PSEUDO-LOCATIVE-TYPES, then DREF-CLASS must be of another pseudo locative type.

- DREF-CLASS is either a direct _downcast_ or an potentially non-direct _upcast_.

- _Downcast:_ In this case, LOCATIVE-TYPE is one of LOCATIVE-TYPE-DIRECT-SUBS of (DREF-CLASS-TO-LOCATIVE-TYPE DREF-CLASS).

Downcasting to non-direct subtypes is done in multiple steps. Consequently,the BODY of a downcast can rely on (CLASS-OF DREF) being CLASS, not any subclass thereof.

- _Upcast:_ LOCATIVE-TYPE is different but reachable
from (DREF-CLASS-TO-LOCATIVE-TYPE DREF-CLASS) by repeatedly choosing one of LOCATIVE-TYPE-DIRECT-SUPERS. Upcasting to non-direct supertypes is done in one step.

The above are enforced at macro-expansion time.

- BODY must follow the rules in *CHECK-LOCATE*, including those in @CAST-NAME-CHANGE.

Package

dref-ext.

Source

extension-api.lisp.

Macro: define-definer-for-symbol-locative-type (name locative-type &body docstring)

Define a macro with NAME that can be used to attach a lambda list, documentation, and source location to a symbol in the context of LOCATIVE-TYPE. The defined macro’s arglist is ‘(SYMBOL LAMBDA-LIST &OPTIONAL DOCSTRING)‘. LOCATIVE-TYPE is assumed to have been defined with DEFINE-SYMBOL-LOCATIVE-TYPE.

Package

dref-ext.

Source

extension-api.lisp.

Macro: define-dtype (name lambda-list &body body)

Like DEFTYPE, but it may expand into other DTYPEs.

The following example defines ‘METHOD*‘ as the locative METHOD without its direct locative subtypes.

“‘common-lisp
(define-dtype method* () ’(and method (not reader) (not writer))) “‘

See DTYPEP for the semantics and also the locative DTYPE.

Package

dref.

Source

early.lisp.

Macro: define-glossary-term (name (&key title url discard-documentation-p) &body docstring)

Define a global variable with NAME, and set it to a [GLOSSARY-TERM] [class] object. TITLE, URL and DOCSTRING are Markdown strings or NIL. Glossary terms are DOCUMENTed in the lightweight bullet + locative + name/title style. See the glossary entry @NAME for an example.

When a glossary term is linked to in documentation, its TITLE will be the link text instead of the name of the symbol (as with SECTIONs).

Glossary entries with a non-NIL URL are like external links: they are linked to their URL in the generated documentation. These offer a more reliable alternative to using Markdown reference links and are usually not included in SECTIONs.

When DISCARD-DOCUMENTATION-P (defaults to *DISCARD-DOCUMENTATION-P*) is true, DOCSTRING will not be recorded to save memory.

Package

mgl-pax.

Source

basics.lisp.

Macro: define-locative-alias (alias locative-type &body docstring)

Define ALIAS that can be substituted for LOCATIVE-TYPE (both SYMBOLs) for the purposes of LOCATEing. LOCATIVE-TYPE must exist (i.e. be among LOCATIVE-TYPES). For example, let’s define OBJECT as an alias of the CLASS locative:

“‘
(define-locative-alias object class)
“‘

Then, LOCATEing with OBJECT will find the CLASS:

“‘
(dref ’xref ’object)
==> #<DREF XREF CLASS>
“‘

The LOCATIVE-ARGS of OBJECT (none in the above) are passed on to CLASS.

“‘
(arglist (dref ’object ’locative))
=> (&REST ARGS)
=> :DESTRUCTURING
“‘

Note that LOCATIVE-ALIASES are not LOCATIVE-TYPES and are not valid DTYPES.

Also, see PAX::@LOCATIVE-ALIASES in PAX.

Package

dref-ext.

Source

extension-api.lisp.

Macro: define-locative-type (locative-type-and-lambda-list locative-supertypes &optional docstring dref-defclass-form)

Declare [LOCATIVE-TYPE][argument] as a [LOCATIVE][locative],
which is the first step in @EXTENDING-DREF.

- _Simple example_

To define a locative type called ‘DUMMY‘ that takes no arguments and is not a locative subtype of any other locative type:

“‘
(define-locative-type dummy ()
"Dummy docstring.")
“‘

With this definition, only the locatives ‘DUMMY‘ and its equivalent form ‘(DUMMY)‘ are valid. The above defines a DREF subclass called ‘DUMMY-DREF‘ in the current package. All definitions with locative type ‘DUMMY‘ and its locatives subtypes must be instances of ‘DUMMY-DREF‘.

‘(LOCATE ’DUMMY ’LOCATIVE)‘ refers to this definition. That is, ARGLIST, [DOCSTRING][function] and SOURCE-LOCATION all work on it.

- _Complex example_

‘DUMMY‘ may have arguments ‘X‘ and ‘Y‘ and inherit from locative types ‘L1‘ and ‘L2‘:

“‘
(define-locative-type (dummy x &key y) (l1 l2)
"Dummy docstring."
(defclass dummy-dref ()
((xxx :initform nil :accessor dummy-xxx))))
“‘

One may change name of ‘DUMMY-DREF‘, specify superclasses and add slots as with DEFCLASS. Behind the scenes, the DREF classes of ‘L1‘ and ‘L2‘ are added automatically to the list of superclasses.

Arguments:

- The general form of LOCATIVE-TYPE-AND-LAMBDA-LIST
is (LOCATIVE-TYPE &REST LAMBDA-LIST), where LOCATIVE-TYPE is a SYMBOL, and LAMBDA-LIST is a [destructuring lambda list][clhs]. The LOCATIVE-ARGS of [DREF][class]s with @LOCATIVE-TYPE LOCATIVE-TYPE (the argument given to this macro) always conform to this lambda list. See CHECK-LOCATIVE-ARGS.

If LOCATIVE-TYPE-AND-LAMBDA-LIST is a single symbol, then that’s interpreted as LOCATIVE-TYPE, and LAMBDA-LIST is NIL.

- LOCATIVE-SUPERTYPES is a list of @LOCATIVE-TYPEs whose DREF-CLASSes are added to prepended to the list of superclasses this definition.

Locative types defined with DEFINE-LOCATIVE-TYPE can be listed with LISP-LOCATIVE-TYPES.

Package

dref-ext.

Source

extension-api.lisp.

Macro: define-locator (locative-type ((object class)) &body body)

Define a method of finding the @DEFINITION with LOCATIVE-TYPE of instances of CLASS. When a locator’s BODY is evaluated, OBJECT is bound to such an instance.

“‘
(define-locator class ((class class))
(make-instance ’class-dref :name (class-name class) :locative ’class)) “‘

- LOCATIVE-TYPE is one of LISP-LOCATIVE-TYPES. This is because PSEUDO-LOCATIVE-TYPES never RESOLVE to first-class objects.

- OBJECT is a SYMBOL.

- CLASS names a [CLASS][class] that is not a subtype of [XREF][class]. For how to convert definitions from one locative type to another, see DEFINE-CAST.

The above are enforced at macro-expansion time.

- BODY must follow the rules in *CHECK-LOCATE*.

In contrast to when the @INITIAL-DEFINITION is created from an
XREF (see DEFINE-LOOKUP), here LOCATIVE-ARGS are determined from OBJECT.

Package

dref-ext.

Source

extension-api.lisp.

Macro: define-lookup (locative-type (name locative-args) &body body)

Define a method of looking up @DEFINITIONs of LOCATIVE-TYPE
with the given LOCATIVE-ARGS. Lookups are invoked by LOCATE when its OBJECT argument is an XREF with LOCATIVE-TYPE but it is not a DREF, as in the case of ‘(DREF ’PRINT ’FUNCTION)‘. When called, the variables NAME and LOCATIVE-ARGS are bound to XREF-NAME and XREF-LOCATIVE-ARGS of the XREF. LOCATIVE-ARGS is validated with CHECK-LOCATIVE-ARGS before BODY is evaluated.

“‘
(define-lookup variable (name locative-args)
(unless (special-variable-name-p name)
(locate-error))
(make-instance ’variable-dref :name name :locative ’variable)) “‘

- LOCATIVE-TYPE is a valid @LOCATIVE-TYPE.

- NAME and LOCATIVE-ARGS are both SYMBOLs.

The above are enforced at macro-expansion time.

- BODY must follow the rules in *CHECK-LOCATE*.

Package

dref-ext.

Source

extension-api.lisp.

Macro: define-package (package &rest options)

This is like CL:DEFPACKAGE but silences warnings and errors signalled when the redefined package is at variance with the current state of the package. Typically this situation occurs when symbols are exported by calling EXPORT (as is the case with DEFSECTION) as opposed to adding :EXPORT forms to the DEFPACKAGE form and the package definition is subsequently reevaluated. See the section on [package variance](http://www.sbcl.org/manual/#Package-Variance) in the SBCL manual.

The bottom line is that if you rely on DEFSECTION to do the exporting, then you’d better use DEFINE-PACKAGE.

Package

mgl-pax.

Source

basics.lisp.

Macro: define-pseudo-locative-type (locative-type-and-lambda-list locative-supertypes &optional docstring dref-defclass-form)

Like DEFINE-LOCATIVE-TYPE, but declare that [LOCATIVE-TYPE][argument] does not correspond to definitions in the running Lisp. Definitions with pseudo locatives are of DTYPE PSEUDO and are not listed by default by DEFINITIONS.

Locative types defined with DEFINE-PSEUDO-LOCATIVE-TYPE can be listed with PSEUDO-LOCATIVE-TYPES.

Package

dref-ext.

Source

extension-api.lisp.

Macro: define-restart (symbol lambda-list &body docstring)

Associate a definition with the name of a restart, which must be a symbol. LAMBDA-LIST should be what calls like ‘(INVOKE-RESTART ’<SYMBOL> ...)‘ must conform to, but this not enforced.

PAX "defines" standard CL restarts such as USE-VALUE with DEFINE-RESTART:

“‘cl-transcript (:dynenv dref-std-env)
(first-line (source-location-snippet
(source-location (dref ’use-value ’restart))))
=> "(define-restart use-value (value)"
“‘

Note that while there is a CL:RESTART class, its instances have no docstring or source location.

Package

dref.

Source

early.lisp.

Macro: define-symbol-locative-type (locative-type-and-lambda-list locative-supertypes &optional docstring dref-class-def)

Similar to DEFINE-LOCATIVE-TYPE, but it assumes that all things LOCATEable with LOCATIVE-TYPE are going to be symbols defined with a definer defined with DEFINE-DEFINER-FOR-SYMBOL-LOCATIVE-TYPE. Symbol locatives are for attaching a definition (along with arglist, documentation and source location) to a symbol in a particular context. An example will make everything clear:

“‘
(define-symbol-locative-type direction ()
"A direction is a symbol.")

(define-definer-for-symbol-locative-type define-direction direction "With DEFINE-DIRECTION, one can document what a symbol means when interpreted as a DIRECTION.")

(define-direction up ()
"UP is equivalent to a coordinate delta of (0, -1).")
“‘

After all this, ‘(DREF ’UP ’DIRECTION)‘ refers to the ‘DEFINE-DIRECTION‘ form above.

The DREF-CLASS of the defined locative type inherits from SYMBOL-LOCATIVE-DREF, which may be used for specializing when implementing new operations.

Package

dref-ext.

Source

extension-api.lisp.

Macro: defsection (name (&key package readtable export title link-title-to discard-documentation-p) &body entries)

Define a documentation section and maybe export referenced symbols. A bit behind the scenes, a global variable with NAME is defined and is bound to a [SECTION][class] object. By convention, section names start with the character ‘@‘. See @INTRODUCTION for an example.

**Entries**

ENTRIES consists of docstrings and references in any order. Docstrings are arbitrary strings in Markdown format.

References are [XREF][class]s given in the form ‘(NAME LOCATIVE)‘. For example, ‘(FOO FUNCTION)‘ refers to the function ‘FOO‘, ‘(@BAR SECTION)‘ says that ‘@BAR‘ is a subsection of this
one. ‘(BAZ (METHOD (T T T)))‘ refers to the default method of the three argument generic function ‘BAZ‘. ‘(FOO FUNCTION)‘ is equivalent to ‘(FOO (FUNCTION))‘. See the DRef DREF::@INTRODUCTION for more.

The same name may occur in multiple references, typically with different locatives, but this is not required.

The references are not LOCATEd until documentation is generated, so they may refer to things yet to be defined.

**Exporting**

If EXPORT is true (the default), NAME and the @NAMEs of references among ENTRIES which are SYMBOLs are candidates for exporting. A candidate symbol is exported if

- it is [accessible][find-symbol] in PACKAGE, and

- there is a reference to it in the section being defined which is approved by EXPORTABLE-REFERENCE-P.

See DEFINE-PACKAGE if you use the export feature. The idea with confounding documentation and exporting is to force documentation of all exported symbols.

**Misc**

TITLE is a string containing Markdown or NIL. If non-NIL, it determines the text of the heading in the generated output. LINK-TITLE-TO is a reference given as an ‘(NAME LOCATIVE)‘ pair or NIL, to which the heading will link when generating HTML. If not specified, the heading will link to its own anchor.

When DISCARD-DOCUMENTATION-P (defaults to *DISCARD-DOCUMENTATION-P*) is true, ENTRIES will not be recorded to save memory.

Package

mgl-pax.

Source

basics.lisp.

Macro: defun/autoloaded (name lambda-list &body body)
Package

autoload.

Source

autoload.lisp.

Macro: defvar/autoloaded (var &optional val doc)
Package

autoload.

Source

autoload.lisp.

Macro: documenting-definition ((stream &key dref package readtable arglist) &body body)

Write DREF to STREAM as described in *DOCUMENT-MARK-UP-SIGNATURES*, and establish DREF as a @LOCAL-DEFINITION for the processing of BODY.

- DREF defaults to the definition for which documentation is currently being generated.

- If DREF has a DOCTITLE, then it is PRINCed after the LOCATIVE-TYPE (see @MARKDOWN-IN-TITLES). Else, ‘(DREF-NAME DREF)‘ is printed subject to *DOCUMENT-DOWNCASE-UPPERCASE-CODE* but with all Markdown and @MATHJAX markup escaped.

- *PACKAGE* and *READTABLE* are bound to PACKAGE and READTABLE for the duration of printing the ARGLIST and the processing of BODY. If either is NIL, then a default value is computed as described in @PACKAGE-AND-READTABLE.

- ARGLIST:

- If it is not provided, then it defaults to (ARGLIST DREF).

- If NIL, then it is not printed.

- If it is a list, then it is must be a [lambda list][clhs] and is printed without the outermost parens and with the package names removed from the argument names.

- If its is a string, then it must be valid Markdown.

- It is not allowed to have WITH-HEADING within the [dynamic extent][clhs] of BODY.

Package

mgl-pax.

Source

document-early.lisp.

Macro: note (&body args)

Define a note with an optional [NAME][argument] and an optional [DOCSTRING][argument]. The [DOCSTRING][function] of the note is its own docstring concatenated with docstrings of other notes in the lexical scope of BODY.

ARGS has the form \[‘NAME‘\] \[‘DOCSTRING‘\] BODY, where the square brackets indicate optional arguments. See below for the details of parsing ARGS.

__NOTE is experimental and as such subject to change.__

NOTE can occur in an any evaluated position without changing its BODY’s run-time behaviour or introducing any run-time overhead. [Top level forms][clhs] remain top level when whrapped in NOTE. The names of notes live in the same global namespace regardless of nesting or whether they are [top level form][clhs]s. _These properties come at the price of NOTE being weird: it defines named notes at macro-expansion time (or load time). But the definitions are idempotent, so it’s fine to macroexpand NOTE any number of times._

Notes are similar to Lisp comments, but they can be included in the documentation. In fact, notes are auto-included: a @SPECIFIC-LINK to a note is equivalent to including it with the DOCSTRING locative.

Notes are intended to help reduce the distance between code and its documentation when there is no convenient definition docstring to use nearby.

“‘cl-transcript (:dynenv pax-std-env)
(note @xxx "We change the package."
(in-package :mgl-pax))
==> #<PACKAGE "MGL-PAX">
(values (docstring (dref ’@xxx ’note)))
=> "We change the package."
“‘

Here is an example of how to overdo things:

“‘cl-transcript
(note @1+*
"This is a seriously overdone example."
(defun 1+* (x)
"[@1+* note][docstring]"
(if (stringp x)
(note (@1+*/1 :join #\Newline)
"- If X is a STRING, then it is parsed as a REAL number." (let ((obj (read-from-string x)))
(note "It is an error if X does not contain a REAL." (unless (realp obj)
(assert nil)))
(1+ obj)))
(note "- Else, X is assumed to be REAL number, and we simply add 1 to it."
(1+ x)))))

(1+* "7")
=> 8

(values (docstring (dref ’@1+* ’note)))
=> "This is a seriously overdone example.

- If X is a STRING, then it is parsed as a REAL number.
It is an error if X does not contain a REAL.

- Else, X is assumed to be REAL number, and we simply
add 1 to it."
“‘

The parsing of ARGS:

- If the first element of ARGS is not a string, then it is a NAME (a non-NIL SYMBOL) or name with options, currently destructured as ‘(NAME &KEY JOIN)‘. As in DEFSECTION and DEFINE-GLOSSARY-TERM, the convention is that NAME starts with a ‘@‘ character.

JOIN is PRINCed before the docstring of a child note is output. Its default value is a string of two newline characters.

- The next element of ARGS is a Markdown docstring. See @MARKDOWN-IN-DOCSTRINGS.

- The rest of ARGS is the BODY. If BODY is empty, then NIL is returned.

Note that named and nameless notes can contain other named or nameless notes without restriction, but nameless notes without a lexically enclosing named note are just an [implicit progn][clhs] with BODY, and their docstring is discarded.

If NOTE occurs as a [top level form][clhs], then its SOURCE-LOCATION is reliably recorded. Else, the quality of the source location varies, but it is at least within the right top level form on all implementations. On SBCL, exact source location is supported.

Package

mgl-pax.

Source

pax.lisp.

Macro: this-source-location ()

The value of this macro form is a function of no arguments that returns its own SOURCE-LOCATION.

Package

dref-ext.

Source

extension-api.lisp.

Macro: with-dislocated-names (names &body body)

For each name in NAMES, establish a @LOCAL-DEFINITION.

Package

mgl-pax.

Source

document-early.lisp.

Macro: with-heading ((stream &key dref link-title-to) &body body)

Write a Markdown heading with the DOCTITLE of DREF to STREAM.

- DREF defaults to the definition for which documentation is currently being generated.

- Nested WITH-HEADINGs produce nested headings.

- If *DOCUMENT-LINK-SECTIONS*, generate anchors based on DREF.

- LINK-TITLE-TO behaves like the LINK-TITLE-TO argument of DEFSECTION.

Package

mgl-pax.

Source

document-early.lisp.


6.1.3 Setf expanders

Setf Expander: (setf definition-property) (xref indicator)
Package

dref-ext.

Source

extension-api.lisp.

Reader

definition-property (function).

Writer

set-definition-property (function).


6.1.4 Ordinary functions

Function: arglist (object)

Return the arglist of the definition of OBJECT or NIL if the arglist cannot be determined.

The second return value indicates whether the arglist has been found. As the second return value, :ORDINARY indicates an [ordinary lambda list][clhs], :MACRO a [macro lambda list][clhs], :DEFTYPE a [deftype lambda list][clhs], and :DESTRUCTURING a [destructuring lambda list][clhs]. Other non-NIL values are also allowed.

“‘cl-transcript (:dynenv dref-std-env)
(arglist #’arglist)
=> (OBJECT)
=> :ORDINARY
“‘
“‘cl-transcript (:dynenv dref-std-env)
(arglist (dref ’define-locative-type ’macro))
=> (LOCATIVE-TYPE-AND-LAMBDA-LIST LOCATIVE-SUPERTYPES &OPTIONAL DOCSTRING DREF-DEFCLASS-FORM)
=> :MACRO
“‘
“‘cl-transcript (:dynenv dref-std-env)
(arglist (dref ’method ’locative))
=> (&REST QUALIFIERS-AND-SPECIALIZERS)
=> :DESTRUCTURING
“‘

This function supports [MACROs][locative], [COMPILER-MACROs][locative], [SETF][locative] functions, [FUNCTIONs][locative], [GENERIC-FUNCTIONs][locative], [METHODs][locative], [TYPEs][locative], [LOCATIVEs][locative]. Note that ARGLIST depends on the quality of SWANK-BACKEND:ARGLIST. With the exception of SBCL, which has perfect support, all Lisp implementations have minor omissions:

- DEFTYPE lambda lists on ABCL, AllegroCL, CLISP, CCL, CMUCL, ECL; - default values in MACRO lambda lists on AllegroCL;
- various edge cases involving traced functions.

Can be extended via ARGLIST*

Package

dref.

Source

dref.lisp.

Function: call-with-wrappers (wrappers fn)
Package

mgl-pax.asdf.

Source

asdf.lisp.

Function: compile-pax (continuation)
Package

mgl-pax.asdf.

Source

asdf.lisp.

Function: compile-per-file (continuation)
Package

mgl-pax.asdf.

Source

asdf.lisp.

Function: compile-with-source-info (continuation)
Package

mgl-pax.asdf.

Source

asdf.lisp.

Function: compose-wrappers (wrappers)
Package

mgl-pax.asdf.

Source

asdf.lisp.

Function: definition-properties (xref)

Return the properties of XREF as an association list.

Package

dref-ext.

Source

extension-api.lisp.

Function: definition-property (xref indicator)

Return the value of the property associated with XREF whose name is EQL to INDICATOR. The second return value indicates whether the property was found. SETFable.

Package

dref-ext.

Source

extension-api.lisp.

Setf expander for this function

(setf definition-property).

Function: definitions (&rest args)

Autoloaded function in system [dref/full][asdf:system].

Package

dref.

Source

early.lisp.

Function: delete-comments (&rest args)

Autoloaded function in system [mgl-pax/transcribe][asdf:system].

Package

mgl-pax.

Source

transcribe-early.lisp.

Function: delete-definition-properties (xref)

Delete all properties associated with XREF.

Package

dref-ext.

Source

extension-api.lisp.

Function: delete-definition-property (xref indicator)

Delete the property associated with XREF whose name is EQL to INDICATOR. Return true if the property was found.

Package

dref-ext.

Source

extension-api.lisp.

Function: delete-trailing-whitespace (&rest args)

Autoloaded function in system [mgl-pax/transcribe][asdf:system].

Package

mgl-pax.

Source

transcribe-early.lisp.

Function: docstring (object)

Return the docstring from the definition of OBJECT.
As the second value, return the *PACKAGE* that was in effect when the docstring was installed or NIL if it cannot be determined (this is used by PAX:DOCUMENT when PAX::@PARSING the docstring). This function is similar in purpose to CL:DOCUMENTATION.

Note that some locative types such as [ASDF:SYSTEMS][locative] and [DECLARATIONs][locative] have no docstrings, and some Lisp implementations do not record all docstrings. The following are known to be missing:

- [COMPILER-MACRO][locative] docstrings on ABCL, AllegroCL, CCL, ECL; - [METHOD-COMBINATION][locative] docstrings on ABCL, AllegroCL.

Can be extended via DOCSTRING*.

Package

mgl-pax.

Source

dref.lisp.

Function: doctitle (&rest args)

Autoloaded function in system [mgl-pax/document][asdf:system].

Package

mgl-pax.

Source

document-early.lisp.

Function: document (&rest args)

Autoloaded function in system [mgl-pax/document][asdf:system].

Package

mgl-pax.

Source

document-early.lisp.

Function: document-docstring (&rest args)

Autoloaded function in system [mgl-pax/document][asdf:system].

Package

mgl-pax.

Source

document-early.lisp.

Function: dref (name locative &optional errorp)

Shorthand for ‘(LOCATE (XREF NAME LOCATIVE) ERRORP)‘.

Package

dref.

Source

dref.lisp.

Function: dref-apropos (&rest args)

Autoloaded function in system [dref/full][asdf:system].

Package

dref.

Source

early.lisp.

Function: dref-class (locative-type)

Return the name of the CLASS used to represent @DEFINITIONs with LOCATIVE-TYPE. This is always a subclass of [DREF][class]. Returns NIL if LOCATIVE-TYPE is not a valid locative type.

Note that the actual TYPE-OF a DREF is mostly intended for @EXTENDING-DREF. Hence, it is hidden when a DREF is printed:

“‘cl-transcript (:dynenv dref-std-env)
(dref ’print ’function)
==> #<DREF PRINT FUNCTION>
(type-of *)
=> FUNCTION-DREF
“‘

Due to @CANONICALIZATION, the actual type may be a proper subtype of DREF-CLASS:

“‘cl-transcript (:dynenv dref-std-env)
(dref ’documentation ’function)
==> #<DREF DOCUMENTATION GENERIC-FUNCTION>
(type-of *)
=> GENERIC-FUNCTION-DREF
(subtypep ’generic-function-dref ’function-dref)
=> T
=> T
“‘

Package

dref-ext.

Source

extension-api.lisp.

Function: dref-locative-args (dref)
Package

dref.

Source

dref.lisp.

Function: dref-locative-type (dref)
Package

dref.

Source

dref.lisp.

Function: dtypep (&rest args)

Autoloaded function in system [dref/full][asdf:system].

Package

dref.

Source

early.lisp.

Function: ensure-web-server (&rest args)

Autoloaded function in system [mgl-pax/web][asdf:system].

Package

mgl-pax.

Source

web-early.lisp.

Function: escape-markdown (&rest args)

Autoloaded function in system [mgl-pax/document][asdf:system].

Package

mgl-pax.

Source

document-early.lisp.

Function: escape-tex (&rest args)

Autoloaded function in system [mgl-pax/document][asdf:system].

Package

mgl-pax.

Source

document-early.lisp.

Function: install-pax-elisp (target-dir)

Install ‘mgl-pax.el‘ distributed with this package in TARGET-DIR.

Package

mgl-pax.

Source

pax.lisp.

Function: lisp-locative-types ()

Return the locative types that correspond to Lisp definitions, which typically have SOURCE-LOCATION. These are defined with DEFINE-LOCATIVE-TYPE and DEFINE-SYMBOL-LOCATIVE-TYPE and are the constituents of DTYPE T.

This list is in @REVERSE-DEFINITION-ORDER.

Package

dref.

Source

dref.lisp.

Function: locate (object &optional errorp)

Return a [DREF][class] representing the @DEFINITION of OBJECT.

OBJECT must be a supported first-class object, a DREF, or an [XREF][class]:

“‘cl-transcript (:dynenv dref-std-env)
(locate #’print)
==> #<DREF PRINT FUNCTION>
“‘
“‘cl-transcript (:dynenv dref-std-env)
(locate (locate #’print))
==> #<DREF PRINT FUNCTION>
“‘
“‘cl-transcript (:dynenv dref-std-env)
(locate (xref ’print ’function))
==> #<DREF PRINT FUNCTION>
“‘

When OBJECT is a DREF, it is simply returned.

Else, a LOCATE-ERROR is signalled if OBJECT is an XREF with an invalid @LOCATIVE, or if no corresponding definition is found. If ERRORP is NIL, then NIL is returned instead.

“‘cl-transcript (:dynenv dref-std-env)
(locate (xref ’no-such-function ’function))
.. debugger invoked on LOCATE-ERROR:
.. Could not locate NO-SUCH-FUNCTION FUNCTION.
.. NO-SUCH-FUNCTION does not name a function.
“‘
“‘cl-transcript (:dynenv dref-std-env)
(locate (xref ’print ’(function xxx)))
.. debugger invoked on LOCATE-ERROR:
.. Could not locate PRINT #’XXX.
.. Bad arguments (XXX) for locative FUNCTION with lambda list NIL. “‘
“‘cl-transcript (:dynenv dref-std-env)
(locate "xxx")
.. debugger invoked on LOCATE-ERROR:
.. Could not locate "xxx".
“‘

Use the XREF function to construct an XREF without error checking.

See DREF-EXT::@EXTENDING-LOCATE.

Package

dref.

Source

dref.lisp.

Function: locate-error (&optional format-control &rest format-args)

Call this function to signal a LOCATE-ERROR condition from the [dynamic extent][clhs] of a LOCATE call, that is, from the ‘BODY‘s of DEFINE-LOOKUP, DEFINE-LOCATOR and DEFINE-CAST. It is an error to call LOCATE-ERROR elsewhere.

FORMAT-CONTROL, if non-NIL, is a [format control][clhs] for which FORMAT-ARGS are suitable.

Package

dref-ext.

Source

extension-api.lisp.

Function: locative-aliases ()

Return the list of locatives aliases, defined with DEFINE-LOCATIVE-ALIAS.

This list is in @REVERSE-DEFINITION-ORDER.

Package

dref.

Source

dref.lisp.

Function: locative-args (locative)

Return the REST of @LOCATIVE LOCATIVE if it’s a list. If it’s a symbol, then return NIL. See @LOCATIVE.

Package

dref-ext.

Source

dref.lisp.

Function: locative-type (locative)

Return @LOCATIVE-TYPE of the @LOCATIVE LOCATIVE. This is the first element of LOCATIVE if it’s a list. If it’s a symbol, it’s that symbol itself.

Package

dref-ext.

Source

dref.lisp.

Function: locative-type-direct-subs (locative-type)

List the @LOCATIVE-TYPEs whose DREF-CLASSes are direct subclasses of the DREF-CLASS of LOCATIVE-TYPE. These can be considered subtypes of LOCATIVE-TYPE in the sense of DTYPEP.

This list is in @REVERSE-DEFINITION-ORDER.

Package

dref-ext.

Source

extension-api.lisp.

Function: locative-type-direct-supers (locative-type)

List the @LOCATIVE-TYPEs whose DREF-CLASSes are direct superclasses of the DREF-CLASS of LOCATIVE-TYPE. These can be considered supertypes of LOCATIVE-TYPE in the sense of DTYPEP.

This is ordered as in the corresponding definition.

Package

dref-ext.

Source

extension-api.lisp.

Function: locative-types ()

Return a list of non-[alias][locative-aliases] locative types. This is the UNION of LISP-LOCATIVE-TYPES and PSEUDO-LOCATIVE-TYPES, which is the set of constituents of the DTYPE TOP.

This list is in @REVERSE-DEFINITION-ORDER.

Package

dref.

Source

dref.lisp.

Function: make-git-source-uri-fn (asdf-system git-forge-uri &key git-version uri-format-string)

Return an object suitable as :SOURCE-URI-FN of a page spec (see
the PAGES argument of DOCUMENT). The function looks at the source location of the object passed to it, and if the location is found, the path is made relative to the top-level directory of the git checkout containing the file of the ASDF-SYSTEM and finally an \URI pointing to your git forge (such as GitHub) is returned. A warning
is signalled whenever the source location lookup fails or if the source location points to a directory not below the directory of ASDF-SYSTEM.

If GIT-FORGE-URI is ‘"https://github.com/melisgl/mgl-pax/"‘ and GIT-VERSION is ‘"master"‘, then the returned \URI may look like this:

https://github.com/melisgl/mgl-pax/blob/master/src/pax-early.lisp#L12

If GIT-VERSION is NIL, then an attempt is made to determine to current commit id from the ‘.git‘ in the directory holding ASDF-SYSTEM. If no ‘.git‘ directory is found, then no links to
the git forge will be generated.

URI-FORMAT-STRING is a CL:FORMAT control string for four arguments:

- GIT-FORGE-URI,
- GIT-VERSION,
- the relative path to the file of the source location of the reference, - and the line number.

The default value of URI-FORMAT-STRING is for GitHub. If using a non-standard git forge, such as Sourcehut or GitLab, simply pass a suitable URI-FORMAT-STRING matching the \URI scheme of your forge.

Package

mgl-pax.

Source

document-early.lisp.

Function: make-github-source-uri-fn (asdf-system github-uri &key git-version)

This function is a backward-compatibility wrapper around MAKE-GIT-SOURCE-URI-FN, which supersedes MAKE-GITHUB-SOURCE-URI-FN. All arguments are passed on to MAKE-GIT-SOURCE-URI-FN, leaving URI-FORMAT-STRING at its default, which is suitable for GitHub.

Package

mgl-pax.

Source

document-early.lisp.

Function: make-source-location (&rest args)

Autoloaded function in system [dref/full][asdf:system].

Package

dref-ext.

Source

early.lisp.

Function: move-definition-properties (from-xref to-xref)

Associate all properties of FROM-XREF with TO-XREF, as if readding them one-by-one with ‘(SETF DEFINITION-PROPERTY)‘, and deleting them from FROM-XREF with DELETE-DEFINITION-PROPERTY.

Package

dref-ext.

Source

extension-api.lisp.

Function: prin1-to-markdown (&rest args)

Autoloaded function in system [mgl-pax/document][asdf:system].

Package

mgl-pax.

Source

document-early.lisp.

Function: pseudo-locative-types ()

Return the locative types that correspond to non-Lisp definitions. These are the ones defined with DEFINE-PSEUDO-LOCATIVE-TYPE and are the constituents of DTYPE PSEUDO.

This list is in @REVERSE-DEFINITION-ORDER.

Package

dref.

Source

dref.lisp.

Function: register-doc-in-pax-world (name sections page-specs)

Register SECTIONS and PAGE-SPECS under NAME (a symbol) in PAX World. By default, UPDATE-PAX-WORLD generates documentation for all of these. SECTIONS and PAGE-SPECS must be lists of SECTIONs and PAGE-SPECs (SEE DOCUMENT) or designators of function of no arguments that return such lists.

Package

mgl-pax.

Source

pax-world.lisp.

Function: resolve (object &optional errorp)

If OBJECT is an [XREF][class], then return the first-class object associated with its definition if any. Return OBJECT if it’s not an XREF. Thus, the value returned is never an XREF. The second return value is whether resolving succeeded.

“‘cl-transcript (:dynenv dref-std-env)
(resolve (dref ’print ’function))
==> #<FUNCTION PRINT>
=> T
“‘
“‘cl-transcript (:dynenv dref-std-env)
(resolve #’print)
==> #<FUNCTION PRINT>
=> T
“‘

If OBJECT is an XREF, and the definition for it cannot be LOCATEd, then LOCATE-ERROR is signalled.

“‘cl-transcript (:dynenv dref-std-env)
(resolve (xref ’undefined ’variable))
.. debugger invoked on LOCATE-ERROR:
.. Could not locate UNDEFINED VARIABLE.
“‘

If there is a definition, but there is no first-class object corresponding to it, then RESOLVE-ERROR is signalled or NIL is returned depending on ERRORP:

“‘cl-transcript (:dynenv dref-std-env)
(resolve (dref ’*print-length* ’variable))
.. debugger invoked on RESOLVE-ERROR:
.. Could not resolve *PRINT-LENGTH* VARIABLE.
“‘
“‘cl-transcript (:dynenv dref-std-env)
(resolve (dref ’*print-length* ’variable) nil)
=> NIL
=> NIL
“‘

RESOLVE is a partial inverse of LOCATE: if a [DREF][class] is RESOLVEable, then LOCATEing the object it resolves to recovers the DREF equivalent to the original (XREF= and of the same type but not EQ).

Can be extended via RESOLVE*.

Package

dref.

Source

dref.lisp.

Function: resolve-error (&rest format-and-args)

Call this function to signal a RESOLVE-ERROR condition from the [dynamic extent][clhs] of a RESOLVE* method. It is an error to call RESOLVE-ERROR elsewhere.

FORMAT-AND-ARGS, if non-NIL, is a format string and arguments suitable for FORMAT.

Package

dref-ext.

Source

extension-api.lisp.

Function: section-entries (section)

A list of Markdown docstrings and [XREF][class]s in the order they occurred in DEFSECTION.

Package

mgl-pax.

Source

pax.lisp.

Package

mgl-pax.

Source

pax.lisp.

Function: source-location (object &key error)

Return the Swank source location for the [defining form][clhs]
of OBJECT.

The returned Swank location object is to be accessed only through the DREF-EXT::@SOURCE-LOCATIONS API or to be passed to e.g Slime’s ‘slime-goto-source-location‘.

If no source location was found,

- if ERROR is NIL, then return NIL;

- if ERROR is :ERROR, then return a list of the form ‘(:ERROR <ERROR-MESSAGE>)‘ suitable for ‘slime-goto-source-location‘;

- if ERROR is T, then signal an ERROR condition with the same error message as in the previous case.

Note that the availability of source location information varies greatly across Lisp implementations.

Can be extended via SOURCE-LOCATION*.

Package

dref.

Source

dref.lisp.

Function: source-location-adjusted-file-position (&rest args)

Autoloaded function in system [dref/full][asdf:system].

Package

dref-ext.

Source

early.lisp.

Function: source-location-buffer (&rest args)

Autoloaded function in system [dref/full][asdf:system].

Package

dref-ext.

Source

early.lisp.

Function: source-location-buffer-position (&rest args)

Autoloaded function in system [dref/full][asdf:system].

Package

dref-ext.

Source

early.lisp.

Function: source-location-file (&rest args)

Autoloaded function in system [dref/full][asdf:system].

Package

dref-ext.

Source

early.lisp.

Function: source-location-file-position (&rest args)

Autoloaded function in system [dref/full][asdf:system].

Package

dref-ext.

Source

early.lisp.

Function: source-location-p (&rest args)

Autoloaded function in system [dref/full][asdf:system].

Package

dref-ext.

Source

early.lisp.

Function: source-location-snippet (&rest args)

Autoloaded function in system [dref/full][asdf:system].

Package

dref-ext.

Source

early.lisp.

Function: squeeze-whitespace (&rest args)

Autoloaded function in system [mgl-pax/transcribe][asdf:system].

Package

mgl-pax.

Source

transcribe-early.lisp.

Function: transcribe (&rest args)

Autoloaded function in system [mgl-pax/transcribe][asdf:system].

Package

mgl-pax.

Source

transcribe-early.lisp.

Function: update-asdf-system-html-docs (&rest args)

Autoloaded function in system [mgl-pax/document][asdf:system].

Package

mgl-pax.

Source

document-early.lisp.

Function: update-asdf-system-readmes (&rest args)

Autoloaded function in system [mgl-pax/document][asdf:system].

Package

mgl-pax.

Source

document-early.lisp.

Function: update-pax-world (&rest args)

Autoloaded function in system [mgl-pax/full][asdf:system].

Package

mgl-pax.

Source

document-early.lisp.

Function: xref (name locative)

A shorthand for ‘(MAKE-INSTANCE ’XREF :NAME NAME :LOCATIVE LOCATIVE)‘ to create [XREF][class] objects. It does no error checking: the LOCATIVE-TYPE of LOCATIVE-TYPE need not be defined, and the LOCATIVE-ARGS need not be valid. Use LOCATE or the DREF function to create [DREF][class] objects.

Package

dref.

Source

dref.lisp.

Function: xref-locative-args (xref)
Package

dref.

Source

dref.lisp.

Function: xref-locative-type (xref)
Package

dref.

Source

dref.lisp.

Function: xref= (xref1 xref2)

See if XREF1 and XREF2 have the same XREF-NAME and XREF-LOCATIVE under EQUAL. Comparing like this makes most sense for [DREF][class]s. However, two [XREF][class]s different under XREF= may denote the same [DREF][class]s.

Package

dref.

Source

dref.lisp.


6.1.5 Generic functions

Generic Function: arglist* (object)

To extend ARGLIST, specialize OBJECT on a normal
Lisp type or on a subclass of [DREF][class].

ARGLIST first calls ARGLIST* with its OBJECT argument. If that doesn’t work (i.e. the second value returned is NIL), then it calls ARGLIST* with OBJECT either RESOLVEd (if it’s a DREF) or LOCATEd (if it’s not a DREF).

- The default method returns NIL, NIL.

- There is also a method specialized on [DREFs][class], that looks up the DEFINITION-PROPERTY called ARGLIST and returns its value with VALUES-LIST. Thus, an arglist and its kind can be specified with something like

“‘
(setf (definition-property xref ’arglist)
(list arglist :destructuring))
“‘

This function is for extension only. Do not call it directly.

Package

dref-ext.

Source

extension-api.lisp.

Methods
Method: arglist* (object)
Method: arglist* ((dref dref))
Generic Function: docstring* (object)

To extend DOCSTRING, specialize OBJECT on a normal
Lisp type or on a subclass of [DREF][class].

DOCSTRING first calls DOCSTRING* with its OBJECT argument. If that doesn’t work (i.e. NIL is returned), then it calls DOCSTRING* with OBJECT either RESOLVEd (if it’s a DREF) or LOCATEd (if it’s not a DREF).

- The default method returns NIL.

- There is also a method specialized on [DREFs][class], that looks up the DEFINITION-PROPERTY called DOCSTRING and returns its value with VALUES-LIST. Thus, a docstring and a package can be specified with something like

“‘
(setf (definition-property xref ’docstring)
(list docstring *package*))
“‘

This function is for extension only. Do not call it directly.

Package

dref-ext.

Source

extension-api.lisp.

Methods
Method: docstring* (object)
Method: docstring* ((dref dref))
Generic Function: doctitle* (object)

DOCTITLE* extends DOCTITLE in the same way
as DOCSTRING* extends DOCSTRING.

The default method returns NIL.

This function is for extension only. Do not call it directly.

Package

mgl-pax.

Source

document-early.lisp.

Methods
Method: doctitle* (object)
Generic Function: document-object* (object stream)

Write OBJECT in *FORMAT* to STREAM.
Specialize this on a subclass of [DREF][class] if that subclass is not RESOLVEable, else on the type of object it resolves to. This function is for extension only. Don’t call it directly.

Package

mgl-pax.

Source

extension-api.lisp.

Methods
Method: document-object* (object stream)
Generic Reader: dref-locative (object)
Package

dref.

Methods
Reader Method: dref-locative ((dref dref))

The same as XREF-LOCATIVE, but only works on [DREF][class]s. Use it as a statement of intent.

Source

dref.lisp.

Target Slot

locative.

Generic Reader: dref-name (object)
Package

dref.

Methods
Reader Method: dref-name ((dref dref))

The same as XREF-NAME, but only works on [DREF][class]s. Use it as a statement of intent.

Source

dref.lisp.

Target Slot

name.

Generic Reader: dref-origin (object)
Package

dref.

Methods
Reader Method: dref-origin ((dref dref))

The object from which LOCATE constructed this
[DREF][class]. DREF-ORIGIN may have @PRESENTATION arguments, which are not included in LOCATIVE-ARGS as is the case with the INITFORM argument of the VARIABLE locative:

“‘cl-transcript (:dynenv dref-std-env)
(dref ’*standard-output* ’(variable "see-below"))
==> #<DREF *STANDARD-OUTPUT* VARIABLE>
“‘

“‘cl-transcript (:dynenv dref-std-env)
(dref-origin (dref ’*standard-output* ’(variable "see-below"))) ==> #<XREF *STANDARD-OUTPUT* (VARIABLE "see-below")>
“‘

The INITFORM argument overrides the global binding of *STANDARD-OUTPUT* when it’s PAX:DOCUMENTed:

“‘cl-transcript (:dynenv dref-std-env)
(first-line
(pax:document (dref ’*standard-output* ’(variable "see-below")) :stream nil))
=> "- [variable] *STANDARD-OUTPUT* \"see-below\""
“‘

Source

dref.lisp.

Target Slot

origin.

Generic Function: exportable-locative-type-p (locative-type)

Return true if symbols in references with
LOCATIVE-TYPE are to be exported by default when they occur in a DEFSECTION. The default method returns T, while the methods for locative types [SECTION][locative], [GLOSSARY-TERM][locative], [PACKAGE][locative], [ASDF:SYSTEM][locative], METHOD and [INCLUDE][locative] return NIL.

This function is called by the default method of EXPORTABLE-REFERENCE-P to decide what symbols DEFSECTION shall export when its EXPORT argument is true.

Package

mgl-pax.

Source

basics.lisp.

Methods
Method: exportable-locative-type-p ((locative-type (eql mgl-pax:include)))
Method: exportable-locative-type-p ((locative-type (eql method)))
Method: exportable-locative-type-p ((locative-type (eql package)))
Method: exportable-locative-type-p ((locative-type (eql asdf/system:system)))
Method: exportable-locative-type-p (locative-type)
Generic Function: exportable-reference-p (package symbol locative-type locative-args)

Return true if SYMBOL is to be exported from
PACKAGE when it occurs in a DEFSECTION in a reference with LOCATIVE-TYPE and LOCATIVE-ARGS. SYMBOL is [accessible][clhs] in PACKAGE.

The default method calls EXPORTABLE-LOCATIVE-TYPE-P with
LOCATIVE-TYPE and ignores the other arguments.

By default, SECTIONs and GLOSSARY-TERMs are not exported although
they are EXPORTABLE-LOCATIVE-TYPE-P. To export symbols naming
sections from MGL-PAX, the following method could be added:

“‘
(defmethod exportable-reference-p ((package (eql (find-package ’mgl-pax))) symbol (locative-type (eql ’section)) locative-args)
t)
“‘

Package

mgl-pax.

Source

basics.lisp.

Methods
Method: exportable-reference-p ((package (eql #<package "dref">)) symbol locative-type locative-args)
Source

package.lisp.

Method: exportable-reference-p ((package (eql #<package "dref-ext">)) symbol locative-type locative-args)
Source

package.lisp.

Method: exportable-reference-p (package symbol (locative-type (eql mgl-pax:note)) locative-args)
Method: exportable-reference-p (package symbol (locative-type (eql mgl-pax:glossary-term)) locative-args)
Method: exportable-reference-p (package symbol (locative-type (eql mgl-pax:section)) locative-args)
Method: exportable-reference-p (package symbol locative-type locative-args)
Generic Reader: glossary-term-name (object)
Package

mgl-pax.

Methods
Reader Method: glossary-term-name ((glossary-term glossary-term))

The name of the global variable whose value is this GLOSSARY-TERM object.

Source

basics.lisp.

Target Slot

name.

Generic Reader: glossary-term-title (object)
Package

mgl-pax.

Methods
Reader Method: glossary-term-title ((glossary-term glossary-term))

A @TITLE or NIL. Used in generated
documentation (see @MARKDOWN-OUTPUT) and is returned by DOCTITLE for GLOSSARY-TERM objects and GLOSSARY-TERM DREF::@DEFINITIONS..

Source

basics.lisp.

Target Slot

title.

Generic Reader: glossary-term-url (object)
Package

mgl-pax.

Methods
Reader Method: glossary-term-url ((glossary-term glossary-term))

A string or NIL.

Source

basics.lisp.

Target Slot

url.

Generic Function: map-definitions-of-name (fn name locative-type)

Call FN with [DREF][class]s which can be LOCATEd
with an XREF with NAME, LOCATIVE-TYPE and some LOCATIVE-ARGS. The strange wording here is because there may be multiple ways (and thus XREFs) that refer to the same definition.

For most locative types, there is at most one such definition, but for METHOD, for example, there may be many. The default method simply does ‘(DREF NAME LOCATIVE-TYPE NIL)‘ and calls FN with result if [DREF][function] succeeds.

FN must not be called with the same (under XREF=) definition multiple times.

This function is for extending DEFINITIONS and DREF-APROPOS. Do not call it directly.

Package

dref-ext.

Source

extension-api.lisp.

Methods
Method: map-definitions-of-name (fn name locative-type)
Generic Function: map-definitions-of-type (fn locative-type)

Call FN with [DREF][class]s which can be LOCATEd
with an XREF with LOCATIVE-TYPE with some NAME and LOCATIVE-ARGS.

The default method forms XREFs by combining each interned symbol as @NAMEs with LOCATIVE-TYPE and no LOCATIVE-ARGS and calls FN if it LOCATEs a definition.

FN may be called with DREFs that are XREF= but differ in the XREF in their DREF-ORIGIN.

This function is for extending DREF-APROPOS. Do not call it directly.

Package

dref-ext.

Source

extension-api.lisp.

Methods
Method: map-definitions-of-type (fn locative-type)
Generic Function: resolve* (dref)

Return the object defined by the definition DREF
refers to. Signal a RESOLVE-ERROR condition by calling the RESOLVE-ERROR function if the lookup fails.

To keep RESOLVE a partial inverse of LOCATE, DEFINE-LOCATOR may be necessary for RESOLVEable definitions. This function is for extending RESOLVE. Do not call it directly.

It is an error for methods of this generic function to return an [XREF][class].

Package

dref-ext.

Source

extension-api.lisp.

Methods
Method: resolve* :around ((dref dref))
Method: resolve* ((dref dref))
Generic Reader: section-name (object)
Package

mgl-pax.

Methods
Reader Method: section-name ((section section))

The name of the global variable whose value is this SECTION object.

Source

basics.lisp.

Target Slot

name.

Generic Reader: section-package (object)
Package

mgl-pax.

Methods
Reader Method: section-package ((section section))

*PACKAGE* will be bound to this package when generating documentation for this section.

Source

basics.lisp.

Target Slot

package.

Generic Reader: section-readtable (object)
Package

mgl-pax.

Methods
Reader Method: section-readtable ((section section))

*READTABLE* will be bound to this when generating documentation for this section.

Source

basics.lisp.

Target Slot

readtable.

Generic Reader: section-title (object)
Package

mgl-pax.

Methods
Reader Method: section-title ((section section))

A @TITLE or NIL. Used in generated
documentation (see @MARKDOWN-OUTPUT) and is returned by DOCTITLE for SECTION objects and SECTION DREF::@DEFINITIONS.

Source

basics.lisp.

Target Slot

title.

Generic Function: source-location* (object)

To extend SOURCE-LOCATION, specialize OBJECT on a
normal Lisp type or on a subclass of [DREF][class].

SOURCE-LOCATION first calls SOURCE-LOCATION* with its OBJECT argument. If that doesn’t work (i.e. NIL or ‘(:ERROR <MESSAGE>)‘ is returned), then it calls SOURCE-LOCATION* with OBJECT either RESOLVEd (if it’s a DREF) or LOCATEd (if it’s not a DREF).

SOURCE-LOCATION returns the last of the ‘(:ERROR <MESSAGE>)‘s encountered or a generic error message if only NILs were returned.

- The default method returns NIL.

- There is also a method specialized on [DREFs][class], that looks up the DEFINITION-PROPERTY called SOURCE-LOCATION. If present, it must be a function of no arguments that returns a source location or NIL. Typically, this is set up in the defining macro like this:

“‘
(setf (definition-property xref ’source-location) (this-source-location))
“‘

This function is for extension only. Do not call it directly.

Package

dref-ext.

Source

extension-api.lisp.

Methods
Method: source-location* (object)
Method: source-location* ((dref dref))
Generic Reader: xref-locative (object)
Package

dref.

Methods
Reader Method: xref-locative ((xref xref))

The @LOCATIVE of the reference.

The locative is normalized by replacing single-element lists with their only element:

“‘cl-transcript (:dynenv dref-std-env)
(xref ’print ’function)
==> #<XREF PRINT FUNCTION>
“‘
“‘cl-transcript (:dynenv dref-std-env)
(xref ’print ’(function))
==> #<XREF PRINT FUNCTION>
“‘

Source

dref.lisp.

Target Slot

locative.

Generic Reader: xref-name (object)
Package

dref.

Methods
Reader Method: xref-name ((xref xref))

The @NAME of the reference.

Source

dref.lisp.

Target Slot

name.


6.1.6 Standalone methods

Method: initialize-instance :after ((xref xref) &key &allow-other-keys)
Source

dref.lisp.

Method: print-object ((section section) stream)
Source

basics.lisp.

Method: print-object ((xref xref) stream)
Source

dref.lisp.


6.1.7 Conditions

Condition: locate-error

Signalled by LOCATE when the definition cannot be found, and ERRORP is true.

Package

dref-ext.

Source

dref.lisp.

Direct superclasses

error.

Direct methods
Direct slots
Slot: object
Package

dref.

Initargs

:object

Readers

locate-error-object.

Writers

This slot is read-only.

Slot: message
Package

dref.

Initargs

:message

Readers

locate-error-message.

Writers

This slot is read-only.

Slot: message-args
Package

dref.

Initargs

:message-args

Readers

locate-error-message-args.

Writers

This slot is read-only.

Condition: resolve-error

Signalled by RESOLVE when the object defined cannot be returned, and ERRORP is true.

Package

dref-ext.

Source

dref.lisp.

Direct superclasses

error.

Direct methods
Direct slots
Slot: dref
Package

dref.

Initargs

:dref

Readers

resolve-error-dref.

Writers

This slot is read-only.

Slot: message
Package

dref.

Initargs

:message

Readers

resolve-error-message.

Writers

This slot is read-only.

Condition: transcription-consistency-error
Package

mgl-pax.

Source

transcribe-early.lisp.

Direct superclasses

transcription-error.

Condition: transcription-error
Package

mgl-pax.

Source

transcribe-early.lisp.

Direct superclasses

error.

Direct subclasses

transcription-consistency-error.

Package

mgl-pax.

Source

document-early.lisp.

Direct superclasses

warning.


6.1.8 Classes

Class: dref

DREFs can be thought of as @DEFINITIONs that
actually exist, although changes in the system can invalidate them (for example, a DREF to a function definition can be invalidated by FMAKUNBOUND). DREFs must be created with LOCATE or the DREF function.

Two DREFs created in the same [dynamic environment][clhs] denote the same thing if and only if they are XREF=.

Package

dref.

Source

dref.lisp.

Direct superclasses

xref.

Direct subclasses

symbol-locative-dref.

Direct methods
Direct slots
Slot: name

The same as XREF-NAME, but only works on [DREF][class]s. Use it as a statement of intent.

Readers

dref-name.

Writers

This slot is read-only.

Slot: locative

The same as XREF-LOCATIVE, but only works on [DREF][class]s. Use it as a statement of intent.

Package

mgl-pax.

Readers

dref-locative.

Writers

This slot is read-only.

Slot: origin

The object from which LOCATE constructed this
[DREF][class]. DREF-ORIGIN may have @PRESENTATION arguments, which are not included in LOCATIVE-ARGS as is the case with the INITFORM argument of the VARIABLE locative:

“‘cl-transcript (:dynenv dref-std-env)
(dref ’*standard-output* ’(variable "see-below"))
==> #<DREF *STANDARD-OUTPUT* VARIABLE>
“‘

“‘cl-transcript (:dynenv dref-std-env)
(dref-origin (dref ’*standard-output* ’(variable "see-below"))) ==> #<XREF *STANDARD-OUTPUT* (VARIABLE "see-below")>
“‘

The INITFORM argument overrides the global binding of *STANDARD-OUTPUT* when it’s PAX:DOCUMENTed:

“‘cl-transcript (:dynenv dref-std-env)
(first-line
(pax:document (dref ’*standard-output* ’(variable "see-below")) :stream nil))
=> "- [variable] *STANDARD-OUTPUT* \"see-below\""
“‘

Readers

dref-origin.

Writers

This slot is read-only.

Class: glossary-term

See DEFINE-GLOSSARY-TERM.

Package

mgl-pax.

Source

basics.lisp.

Direct methods
Direct slots
Slot: name

The name of the global variable whose value is this GLOSSARY-TERM object.

Initargs

:name

Readers

glossary-term-name.

Writers

This slot is read-only.

Slot: title

A @TITLE or NIL. Used in generated
documentation (see @MARKDOWN-OUTPUT) and is returned by DOCTITLE for GLOSSARY-TERM objects and GLOSSARY-TERM DREF::@DEFINITIONS..

Initargs

:title

Readers

glossary-term-title.

Writers

This slot is read-only.

Slot: url

A string or NIL.

Initargs

:url

Readers

glossary-term-url.

Writers

This slot is read-only.

Slot: docstring
Initargs

:docstring

Readers

glossary-term-docstring.

Writers

This slot is read-only.

Class: restart-dref

DREF-EXT:DREF-CLASS of [RESTART][MGL-PAX:LOCATIVE].

Package

dref-ext.

Source

early.lisp.

Direct superclasses

symbol-locative-dref.

Class: section

DEFSECTION stores its NAME, TITLE, [PACKAGE][type], [READTABLE][type] and ENTRIES arguments in [SECTION][class] objects.

Package

mgl-pax.

Source

basics.lisp.

Direct methods
Direct slots
Slot: name

The name of the global variable whose value is this SECTION object.

Initargs

:name

Readers

section-name.

Writers

This slot is read-only.

Slot: package

*PACKAGE* will be bound to this package when generating documentation for this section.

Package

common-lisp.

Initargs

:package

Readers

section-package.

Writers

This slot is read-only.

Slot: readtable

*READTABLE* will be bound to this when generating documentation for this section.

Package

common-lisp.

Initargs

:readtable

Readers

section-readtable.

Writers

This slot is read-only.

Slot: title

A @TITLE or NIL. Used in generated
documentation (see @MARKDOWN-OUTPUT) and is returned by DOCTITLE for SECTION objects and SECTION DREF::@DEFINITIONS.

Initargs

:title

Readers

section-title.

Writers

This slot is read-only.

Initargs

:link-title-to

Slot: %entries
Initargs

:entries

Class: symbol-locative-dref

All @LOCATIVE-TYPEs defined with DEFINE-SYMBOL-LOCATIVE-TYPE inherit from this class.

Package

dref-ext.

Source

extension-api.lisp.

Direct superclasses

dref.

Direct subclasses

restart-dref.

Class: xref

An XREF (cross-reference) is a @REFERENCE. It may
represent some kind of @DEFINITION of its @NAME in the context given by its @LOCATIVE. The definition may not exist and the locative may even be [invalid][@locative]. The subclass [DREF][class] represents definitions that exist.

Package

dref.

Source

dref.lisp.

Direct subclasses

dref.

Direct methods
Direct slots
Slot: name

The @NAME of the reference.

Initargs

:name

Readers

xref-name.

Writers

This slot is read-only.

Slot: locative

The @LOCATIVE of the reference.

The locative is normalized by replacing single-element lists with their only element:

“‘cl-transcript (:dynenv dref-std-env)
(xref ’print ’function)
==> #<XREF PRINT FUNCTION>
“‘
“‘cl-transcript (:dynenv dref-std-env)
(xref ’print ’(function))
==> #<XREF PRINT FUNCTION>
“‘

Package

mgl-pax.

Initargs

:locative

Readers

xref-locative.

Writers

This slot is read-only.


6.2 Internals


6.2.1 Special variables

Special Variable: *definition-properties*
Package

dref.

Source

extension-api.lisp.

Special Variable: *document-list-view*
Package

mgl-pax.

Special Variable: *document-open-linking*
Package

mgl-pax.

Special Variable: *documenting-dref*
Package

mgl-pax.

Source

document-early.lisp.

Special Variable: *dref-class-to-locative-type*
Package

dref.

Source

extension-api.lisp.

Special Variable: *dtype-expanders*
Package

dref.

Source

early.lisp.

Special Variable: *dummy-locate-error*
Package

dref.

Source

extension-api.lisp.

Special Variable: *first-pass*
Package

mgl-pax.

Special Variable: *git-version-for-test*
Package

mgl-pax.

Source

document-early.lisp.

Special Variable: *lisp-locative-types*
Package

dref.

Source

dref.lisp.

Special Variable: *local-references*
Package

mgl-pax.

Special Variable: *locate-error-ignored*
Package

dref.

Source

dref.lisp.

Special Variable: *locating-object*
Package

dref.

Source

extension-api.lisp.

Special Variable: *locative-aliases*
Package

dref.

Source

dref.lisp.

Special Variable: *locative-type-to-class-info*
Package

dref.

Source

extension-api.lisp.

Special Variable: *locative-types*
Package

dref.

Source

dref.lisp.

Special Variable: *locative-types-and-aliases*
Package

dref.

Source

dref.lisp.

Special Variable: *pax-version*
Package

mgl-pax.

Source

pax.lisp.

Special Variable: *pseudo-locative-types*
Package

dref.

Source

dref.lisp.

Special Variable: *registered-pax-world-docs*
Package

mgl-pax.

Source

pax-world.lisp.

Special Variable: *resolving-dref*
Package

dref.

Source

extension-api.lisp.

Special Variable: *subformat*
Package

mgl-pax.

Special Variable: @adding-new-locatives
Package

mgl-pax.

Source

extension-api.lisp.

Special Variable: @background
Package

mgl-pax.

Source

pax.lisp.

Special Variable: @basic-operations
Package

dref.

Source

dref.lisp.

Special Variable: @basics
Package

mgl-pax.

Source

pax.lisp.

Special Variable: @canonicalization
Package

dref-ext.

Source

extension-api.lisp.

Special Variable: @cast-name-change
Package

dref-ext.

Source

extension-api.lisp.

Special Variable: @default-downcast
Package

dref-ext.

Source

extension-api.lisp.

Special Variable: @defining-locative-types
Package

dref-ext.

Source

extension-api.lisp.

Special Variable: @defining-lookups-locators-and-casts
Package

dref-ext.

Source

extension-api.lisp.

Special Variable: @definition
Package

dref.

Source

dref.lisp.

Special Variable: @definition-properties
Package

dref-ext.

Source

extension-api.lisp.

Special Variable: @dissecting-references
Package

dref.

Source

dref.lisp.

Special Variable: @dref-manual
Package

dref.

Source

dref.lisp.

Special Variable: @dtypes
Package

dref.

Source

dref.lisp.

Special Variable: @emacs-functionality
Package

mgl-pax.

Source

pax.lisp.

Special Variable: @emacs-keys
Package

mgl-pax.

Source

pax.lisp.

Special Variable: @emacs-loading
Package

mgl-pax.

Source

pax.lisp.

Special Variable: @emacs-quicklisp
Package

mgl-pax.

Source

pax.lisp.

Special Variable: @emacs-setup
Package

mgl-pax.

Source

pax.lisp.

Special Variable: @extending-document
Package

mgl-pax.

Source

document-early.lisp.

Special Variable: @extending-dref
Package

dref-ext.

Source

extension-api.lisp.

Special Variable: @extending-everything-else
Package

dref-ext.

Source

extension-api.lisp.

Special Variable: @extending-locate
Package

dref-ext.

Source

extension-api.lisp.

Special Variable: @extension-api
Package

mgl-pax.

Source

extension-api.lisp.

Special Variable: @extension-tutorial
Package

dref-ext.

Source

extension-api.lisp.

Special Variable: @github-workflow
Package

mgl-pax.

Source

document-early.lisp.

Special Variable: @glossary-terms
Package

mgl-pax.

Source

extension-api.lisp.

Special Variable: @initial-definition
Package

dref-ext.

Source

extension-api.lisp.

Special Variable: @introduction
Package

mgl-pax.

Source

pax.lisp.

Special Variable: @introduction
Package

dref.

Source

dref.lisp.

Package

mgl-pax.

Source

pax.lisp.

Package

dref.

Source

dref.lisp.

Special Variable: @listing-definitions
Package

dref.

Source

dref.lisp.

Special Variable: @locative
Package

dref.

Source

dref.lisp.

Special Variable: @locative-aliases
Package

mgl-pax.

Source

extension-api.lisp.

Special Variable: @locative-type
Package

dref.

Source

dref.lisp.

Special Variable: @locative-type-hierarchy
Package

dref-ext.

Source

extension-api.lisp.

Special Variable: @m-.
Package

mgl-pax.

Source

pax.lisp.

Special Variable: @markdown
Package

mgl-pax.

Source

pax.lisp.

Special Variable: @name
Package

dref.

Source

dref.lisp.

Special Variable: @oaoo
Package

mgl-pax.

Source

pax.lisp.

Special Variable: @pax-locatives
Package

mgl-pax.

Source

locatives-early.lisp.

Special Variable: @pax-manual
Package

mgl-pax.

Source

pax.lisp.

Special Variable: @pax-world
Package

mgl-pax.

Source

pax-world.lisp.

Special Variable: @presentation
Package

dref.

Source

dref.lisp.

Special Variable: @quicklisp
Package

mgl-pax.

Source

pax.lisp.

Special Variable: @reference
Package

dref.

Source

dref.lisp.

Special Variable: @references
Package

dref.

Source

dref.lisp.

Special Variable: @references-glossary
Package

dref.

Source

dref.lisp.

Special Variable: @reverse-definition-order
Package

dref.

Source

dref.lisp.

Special Variable: @sections
Package

mgl-pax.

Source

extension-api.lisp.

Special Variable: @slime
Package

mgl-pax.

Source

pax.lisp.

Special Variable: @symbol-locatives
Package

dref-ext.

Source

extension-api.lisp.

Special Variable: @w3m
Package

mgl-pax.

Source

pax.lisp.

Special Variable: end-of-register-doc-example
Package

mgl-pax.

Source

document-early.lisp.


6.2.2 Macros

Macro: %define-locative-type (pseudop locative-type-and-lambda-list locative-supertypes docstring dref-defclass-form extra-superclasses)
Package

dref.

Source

extension-api.lisp.

Macro: load-time-value* (form)

Like LOAD-TIME-VALUE, but evaluate FORM exactly once.

Package

dref.

Source

util.lisp.

Macro: mark-this-source-location (xref)
Package

mgl-pax.

Source

pax.lisp.

Macro: nth-value-or* (nth-value &body forms)
Package

dref.

Source

util.lisp.

Macro: nth-value-or-with-obj-or-def ((obj nth-value) &body body)
Package

dref.

Source

dref.lisp.

Macro: on-unknown-type-warning ((&optional value-form) &body body)
Package

dref.

Source

util.lisp.

Macro: removef (var item)
Package

dref.

Source

dref.lisp.

Macro: succeedsp (&body body)
Package

dref.

Source

util.lisp.

Macro: with-local-references (refs &body body)
Package

mgl-pax.

Source

document-early.lisp.

Macro: with-locate-error-ignored (&body body)
Package

dref.

Source

dref.lisp.

Macro: without-redefinition-warnings (&body body)
Package

autoload.

Source

autoload.lisp.


6.2.3 Setf expanders

Setf Expander: (setf symbol-global-value) (symbol)
Package

autoload.

Source

autoload.lisp.

Reader

symbol-global-value (function).

Writer

set-symbol-global-value (function).


6.2.4 Ordinary functions

Function: %declare-locative-type (pseudop locative-type)
Package

dref.

Source

extension-api.lisp.

Function: %locate (object)

Internally, LOCATE finds an initial [DREF][class] of its OBJECT argument with a [lookup][define-lookup] or with a [locator][define-locator]. This initial DREF is then canonicalized with a series of [casts][define-cast]. In more detail, the process is as follows.

- If the OBJECT argument of LOCATE is a DREF, then it is returned without processing.

Else, LOCATE first needs to finds the initial definition.

Package

dref.

Source

extension-api.lisp.

Function: %locative-type-class-info (locative-type)
Package

dref.

Source

extension-api.lisp.

Function: %locative-type-direct-subs (locative-type dref-class)
Package

dref.

Source

extension-api.lisp.

Function: %locative-type-direct-supers (superclasses)
Package

dref.

Source

extension-api.lisp.

Reader: %note-children (instance)
Writer: (setf %note-children) (instance)
Package

mgl-pax.

Source

pax.lisp.

Target Slot

children.

Reader: %note-join (instance)
Writer: (setf %note-join) (instance)
Package

mgl-pax.

Source

pax.lisp.

Target Slot

join.

Reader: %note-name (instance)
Writer: (setf %note-name) (instance)
Package

mgl-pax.

Source

pax.lisp.

Target Slot

name.

Function: %note-p (object)
Package

mgl-pax.

Source

pax.lisp.

Reader: %note-package (instance)
Writer: (setf %note-package) (instance)
Package

mgl-pax.

Source

pax.lisp.

Target Slot

package.

Function: asdf-system-git-root-and-version (system &key default-version)
Package

mgl-pax.

Source

document-early.lisp.

Function: call-with-heading (&rest args)

Autoloaded function in system [mgl-pax/document][asdf:system].

Package

mgl-pax.

Source

document-early.lisp.

Function: canonicalize-dref (dref)

The initial definition thus found is then canonicalized so that there is a unique @DEFINITION under XREF=:

“‘
(locate #’arglist*)
==> #<DREF ARGLIST* GENERIC-FUNCTION>
(dref ’arglist* ’function)
==> #<DREF ARGLIST* GENERIC-FUNCTION>
(dref ’arglist* ’generic-function)
==> #<DREF ARGLIST* GENERIC-FUNCTION>
“‘

Canonicalization is performed by recursively attempting to [downcast][define-cast] the current definition to one of its LOCATIVE-TYPE-DIRECT-SUBS in a depth-first manner, backtracking if a cast fails.

Package

dref.

Source

extension-api.lisp.

Function: check-body-docstring (docstring)
Package

dref.

Source

extension-api.lisp.

Function: check-cast-name-change (object locative-type located)
Package

dref.

Source

extension-api.lisp.

Function: check-docstring-only-body (body)
Package

dref.

Source

extension-api.lisp.

Package

mgl-pax.

Source

basics.lisp.

Function: check-lisp-and-pseudo-are-distinct (pseudop locative-type superclasses)

The hierarchies of LISP-LOCATIVE-TYPES and PSEUDO-LOCATIVE-TYPES are distinct. That is, the DREF-CLASS of a Lisp locative type must not be a subclass of a PSEUDO one, and vice versa. This is enforced by DEFINE-LOCATIVE-TYPE and DEFINE-PSEUDO-LOCATIVE-TYPE.

Package

dref.

Source

extension-api.lisp.

Function: check-lisp-locative-type (locative-type)
Package

dref.

Source

dref.lisp.

Function: check-locative-args* (locative-type locative-args)
Package

dref.

Source

extension-api.lisp.

Function: check-locative-type (locative-type)
Package

dref.

Source

dref.lisp.

Function: check-locator-return-values (object locative-type located)

[lookups][define-lookup], [locators][define-locator] and [casts][define-cast] obey the following:

- The value returned must be either NIL or a DREF. Alternatively, LOCATE-ERROR may be signalled.

- If a DREF is returned, then its DREF-LOCATIVE-TYPE must be LOCATIVE-TYPE, and its class must be the DREF-CLASS of LOCATIVE-TYPE.

- LOCATIVE-ARGS must be congruent with the destructuring lambda list in the definition of LOCATIVE-TYPE.

Package

dref.

Source

extension-api.lisp.

Function: check-pax-elisp-version (pax-elisp-version)
Package

mgl-pax.

Source

pax.lisp.

Function: check-section-entries (entries section-name)
Package

mgl-pax.

Source

basics.lisp.

Function: compile-without-some-warnings (continuation)
Package

mgl-pax.asdf.

Source

asdf.lisp.

Function: convert-source-location (source-location git-dir object line-file-position-cache)
Package

mgl-pax.

Source

document-early.lisp.

Function: copy-%note (instance)
Package

mgl-pax.

Source

pax.lisp.

Function: declare-locative-alias (locative-type)
Package

dref.

Source

dref.lisp.

Function: declare-locative-type (locative-type)
Package

dref.

Source

dref.lisp.

Function: declare-pseudo-locative-type (locative-type)
Package

dref.

Source

dref.lisp.

Function: definition-property-key (xref)
Package

dref.

Source

extension-api.lisp.

Function: downcasingp (&rest args)

Autoloaded function in system [mgl-pax/document][asdf:system].

Package

mgl-pax.

Source

document-early.lisp.

Function: dref-class-superclasses (locative-type)
Package

dref.

Source

extension-api.lisp.

Function: dref-class-to-locative-type (dref-class)
Package

dref.

Source

extension-api.lisp.

Function: dref-std-env (fn)
Package

dref.

Source

package.lisp.

Function: ensure-dref-loaded (&rest args)

Autoloaded function in system [dref/full][asdf:system].

Package

dref.

Source

dref.lisp.

Function: ensure-list (object)
Package

mgl-pax.

Source

pax.lisp.

Function: ensure-list* (obj)
Package

dref.

Source

util.lisp.

Function: ensure-transcribe-loaded (&rest args)

Autoloaded function in system [mgl-pax/transcribe][asdf:system].

Package

mgl-pax.

Source

transcribe-early.lisp.

Function: expand-define-definer-for-symbol-as-locative-definer-body (symbol locative-type lambda-list docstring)
Package

dref.

Source

extension-api.lisp.

Function: expand-nested-note (parent-name args)
Package

mgl-pax.

Source

pax.lisp.

Function: export-some-symbols (section-name entries package)
Package

mgl-pax.

Source

basics.lisp.

Function: exportablep (section-name package symbol locative)
Package

mgl-pax.

Source

basics.lisp.

Function: file-position-to-line-number (filename file-position cache)
Package

mgl-pax.

Source

document-early.lisp.

Function: find-subclass-of (class classes)
Package

dref.

Source

extension-api.lisp.

Function: find-system* (name &key errorp warnp)
Package

dref.

Source

util.lisp.

Function: git-root (pathname)
Package

mgl-pax.

Source

document-early.lisp.

Function: git-version (pathname)
Package

mgl-pax.

Source

document-early.lisp.

Function: handle-note (parent-name body)
Package

mgl-pax.

Source

pax.lisp.

Function: in-git-p (pathname)
Package

mgl-pax.

Source

document-early.lisp.

Function: invalid-lisp-locative-type (locative-type)
Package

dref.

Source

dref.lisp.

Function: invalid-locative-type (locative-type)
Package

dref.

Source

dref.lisp.

Function: line-file-positions (filename)
Package

mgl-pax.

Source

document-early.lisp.

Function: lisp-locative-type-p (locative-type)
Package

dref.

Source

dref.lisp.

Function: list-designator (x)
Package

mgl-pax.

Source

pax-world.lisp.

Function: locate-initial-definition (object)

LOCATE can find the initial definition in one of two ways:

[ locate-with-lookup function][docstring]

[ locate-with-first-locator function][docstring]

Package

dref.

Source

extension-api.lisp.

Function: locate-with-first-locator (object)

- _With locator
search_

Else, OBJECT is a normal Lisp object, such as a [METHOD][class] object from FIND-METHOD. The first of LISP-LOCATIVE-TYPES whose [locator][ define-locator] succeeds provides the initial definition, which may be defined like this:

“‘
(define-locator method ((obj method)) ...)
“‘

This is a locator that returns definitions with the METHOD locative type and takes an argument named ‘OBJ‘ of class METHOD (which is like a specializer in DEFMETHOD).

- LISP-LOCATIVE-TYPES are tried one by one in the order specified there.

- For a given locative type, if there are multiple locators, standard CLOS method selection applies.

Package

dref.

Source

extension-api.lisp.

Function: locate-with-lookup (xref)

- _With direct
lookup_

If OBJECT is an XREF, then the [lookup][define-lookup]
for (XREF-LOCATIVE-TYPE OBJECT) is invoked. For an XREF with the locative ‘(METHOD (NUMBER))‘, this would be the lookup defined as

“‘
(define-lookup method (name locative-args) ...)
“‘

Package

dref.

Source

extension-api.lisp.

Function: locative-subtype-p (locative-type-1 locative-type-2)
Package

dref.

Source

extension-api.lisp.

Function: locative-type-p (object)
Package

dref.

Source

dref.lisp.

Function: macro-arg-names (arglist)
Package

dref.

Source

util.lisp.

Function: make-%note (&key name children join package)
Package

mgl-pax.

Source

pax.lisp.

Function: malformed-ref-list-in-section-error (what ref-list section-name)
Package

mgl-pax.

Source

basics.lisp.

Function: map-names-for-type (fn locative-type)
Package

dref.

Source

extension-api.lisp.

Function: maybe-default-dref-class (locative-type-and-lambda-list dref-class-def)
Package

dref.

Source

extension-api.lisp.

Function: member-type-specifier-p (type-specifier)
Package

dref.

Source

util.lisp.

Function: normalize-locative (locative)
Package

dref.

Source

dref.lisp.

Function: order-locative-types (locative-types)
Package

dref.

Source

dref.lisp.

Function: parse-body-declare (body)
Package

dref.

Source

util.lisp.

Function: parse-body-docstring (body)
Package

dref.

Source

util.lisp.

Function: parse-note-body (body)
Package

mgl-pax.

Source

pax.lisp.

Function: pathname-as-directory (pathname)
Package

mgl-pax.

Source

document-early.lisp.

Function: pax-pages ()
Package

mgl-pax.

Source

document-early.lisp.

Function: pax-sections ()
Package

mgl-pax.

Source

document-early.lisp.

Function: prin1-to-string/fully-qualified (object)
Package

mgl-pax.

Source

basics.lisp.

Function: print-dref-bullet (&rest args)

Autoloaded function in system [mgl-pax/document][asdf:system].

Package

mgl-pax.

Source

document-early.lisp.

Function: ref-list-p (obj)
Package

mgl-pax.

Source

basics.lisp.

Function: reorder-locative-types ()
Package

dref.

Source

dref.lisp.

Function: satisfies-type-specifier-p (type-specifier)
Package

dref.

Source

util.lisp.

Function: section-entry-to-xref (entry)
Package

mgl-pax.

Source

pax.lisp.

Function: set-definition-property (xref indicator value)
Package

dref.

Source

extension-api.lisp.

Setf expanders to this function

(setf definition-property).

Function: set-symbol-global-value (symbol value)
Package

autoload.

Source

autoload.lisp.

Setf expanders to this function

(setf symbol-global-value).

Function: special-variable-name-p (obj)
Package

autoload.

Source

autoload.lisp.

Function: swank-error-value-p (object)
Package

dref.

Source

dref.lisp.

Function: swank-source-location* (&rest args)

Autoloaded function in system [dref/full][asdf:system].

Package

dref.

Source

early.lisp.

Function: symbol-accessible-in-package-p (symbol package)
Package

mgl-pax.

Source

basics.lisp.

Function: symbol-global-value (symbol)
Package

autoload.

Source

autoload.lisp.

Setf expander for this function

(setf symbol-global-value).

Function: symbol-globally-boundp (symbol)
Package

autoload.

Source

autoload.lisp.

Function: translate-sb-source-location (&rest args)

Autoloaded function in system [dref/full][asdf:system].

Package

dref.

Source

early.lisp.

Function: type-specifier-name (type-specifier)
Package

dref.

Source

util.lisp.

Function: update-class-info (locative-type dref-class superclasses)
Package

dref.

Source

extension-api.lisp.

Function: valid-satisisfies-type-specifier-args-p (args)
Package

dref.

Source

util.lisp.

Function: valid-type-specifier-p (type-specifier)
Package

dref.

Source

util.lisp.

Function: xref-name= (name xref)
Package

dref.

Source

dref.lisp.


6.2.5 Generic functions

Generic Function: dref* (name locative-type locative-args)
Package

dref.

Source

extension-api.lisp.

Methods
Method: dref* (symbol (locative-type (eql restart)) locative-args)
Source

early.lisp.

Method: dref* :around (name locative-type locative-args)
Method: dref* (name locative-type locative-args)
Generic Reader: glossary-term-docstring (object)
Package

mgl-pax.

Methods
Reader Method: glossary-term-docstring ((glossary-term glossary-term))

automatically generated reader method

Source

basics.lisp.

Target Slot

docstring.

Generic Function: locate* (object locative-type)
Package

dref.

Source

extension-api.lisp.

Methods
Method: locate* :around (object locative-type)
Method: locate* (object locative-type)
Method: locate* ((dref dref) locative-type)

Downcasting to [direct locative subtypes][ locative-type-direct-subs] is performed by default by looking up the definition where the locative type is replaced with its sub while the name and the locative args remain the same.

Generic Reader: locate-error-message (condition)
Package

dref.

Methods
Reader Method: locate-error-message ((condition locate-error))
Source

dref.lisp.

Target Slot

message.

Generic Reader: locate-error-message-args (condition)
Package

dref.

Methods
Reader Method: locate-error-message-args ((condition locate-error))
Source

dref.lisp.

Target Slot

message-args.

Generic Reader: locate-error-object (condition)
Package

dref.

Methods
Reader Method: locate-error-object ((condition locate-error))
Source

dref.lisp.

Target Slot

object.

Generic Reader: resolve-error-dref (condition)
Package

dref.

Methods
Reader Method: resolve-error-dref ((condition resolve-error))
Source

dref.lisp.

Target Slot

dref.

Generic Reader: resolve-error-message (condition)
Package

dref.

Methods
Reader Method: resolve-error-message ((condition resolve-error))
Source

dref.lisp.

Target Slot

message.


6.2.6 Structures

Structure: %note
Package

mgl-pax.

Source

pax.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: name
Readers

%note-name.

Writers

(setf %note-name).

Slot: children
Readers

%note-children.

Writers

(setf %note-children).

Slot: join
Readers

%note-join.

Writers

(setf %note-join).

Slot: package
Package

common-lisp.

Readers

%note-package.

Writers

(setf %note-package).


Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   %   (  
A   C   D   E   F   G   H   I   L   M   N   O   P   R   S   T   U   V   W   X  
Index Entry  Section

%
%declare-locative-type: Private ordinary functions
%define-locative-type: Private macros
%locate: Private ordinary functions
%locative-type-class-info: Private ordinary functions
%locative-type-direct-subs: Private ordinary functions
%locative-type-direct-supers: Private ordinary functions
%note-children: Private ordinary functions
%note-join: Private ordinary functions
%note-name: Private ordinary functions
%note-p: Private ordinary functions
%note-package: Private ordinary functions

(
(setf %note-children): Private ordinary functions
(setf %note-join): Private ordinary functions
(setf %note-name): Private ordinary functions
(setf %note-package): Private ordinary functions
(setf definition-property): Public setf expanders
(setf symbol-global-value): Private setf expanders

A
arglist: Public ordinary functions
arglist*: Public generic functions
arglist*: Public generic functions
arglist*: Public generic functions
asdf-system-git-root-and-version: Private ordinary functions
autoload: Public macros

C
call-cast: Public macros
call-locator: Public macros
call-lookup: Public macros
call-with-heading: Private ordinary functions
call-with-wrappers: Public ordinary functions
canonicalize-dref: Private ordinary functions
check-body-docstring: Private ordinary functions
check-cast-name-change: Private ordinary functions
check-docstring-only-body: Private ordinary functions
check-link-title-to: Private ordinary functions
check-lisp-and-pseudo-are-distinct: Private ordinary functions
check-lisp-locative-type: Private ordinary functions
check-locative-args: Public macros
check-locative-args*: Private ordinary functions
check-locative-type: Private ordinary functions
check-locator-return-values: Private ordinary functions
check-pax-elisp-version: Private ordinary functions
check-section-entries: Private ordinary functions
compile-pax: Public ordinary functions
compile-per-file: Public ordinary functions
compile-with-source-info: Public ordinary functions
compile-without-some-warnings: Private ordinary functions
compose-wrappers: Public ordinary functions
convert-source-location: Private ordinary functions
copy-%note: Private ordinary functions

D
declare-locative-alias: Private ordinary functions
declare-locative-type: Private ordinary functions
declare-pseudo-locative-type: Private ordinary functions
define-cast: Public macros
define-definer-for-symbol-locative-type: Public macros
define-dtype: Public macros
define-glossary-term: Public macros
define-locative-alias: Public macros
define-locative-type: Public macros
define-locator: Public macros
define-lookup: Public macros
define-package: Public macros
define-pseudo-locative-type: Public macros
define-restart: Public macros
define-symbol-locative-type: Public macros
definition-properties: Public ordinary functions
definition-property: Public ordinary functions
definition-property-key: Private ordinary functions
definitions: Public ordinary functions
defsection: Public macros
defun/autoloaded: Public macros
defvar/autoloaded: Public macros
delete-comments: Public ordinary functions
delete-definition-properties: Public ordinary functions
delete-definition-property: Public ordinary functions
delete-trailing-whitespace: Public ordinary functions
docstring: Public ordinary functions
docstring*: Public generic functions
docstring*: Public generic functions
docstring*: Public generic functions
doctitle: Public ordinary functions
doctitle*: Public generic functions
doctitle*: Public generic functions
document: Public ordinary functions
document-docstring: Public ordinary functions
document-object*: Public generic functions
document-object*: Public generic functions
documenting-definition: Public macros
downcasingp: Private ordinary functions
dref: Public ordinary functions
dref*: Private generic functions
dref*: Private generic functions
dref*: Private generic functions
dref*: Private generic functions
dref-apropos: Public ordinary functions
dref-class: Public ordinary functions
dref-class-superclasses: Private ordinary functions
dref-class-to-locative-type: Private ordinary functions
dref-locative: Public generic functions
dref-locative: Public generic functions
dref-locative-args: Public ordinary functions
dref-locative-type: Public ordinary functions
dref-name: Public generic functions
dref-name: Public generic functions
dref-origin: Public generic functions
dref-origin: Public generic functions
dref-std-env: Private ordinary functions
dtypep: Public ordinary functions

E
ensure-dref-loaded: Private ordinary functions
ensure-list: Private ordinary functions
ensure-list*: Private ordinary functions
ensure-transcribe-loaded: Private ordinary functions
ensure-web-server: Public ordinary functions
escape-markdown: Public ordinary functions
escape-tex: Public ordinary functions
expand-define-definer-for-symbol-as-locative-definer-body: Private ordinary functions
expand-nested-note: Private ordinary functions
export-some-symbols: Private ordinary functions
exportable-locative-type-p: Public generic functions
exportable-locative-type-p: Public generic functions
exportable-locative-type-p: Public generic functions
exportable-locative-type-p: Public generic functions
exportable-locative-type-p: Public generic functions
exportable-locative-type-p: Public generic functions
exportable-reference-p: Public generic functions
exportable-reference-p: Public generic functions
exportable-reference-p: Public generic functions
exportable-reference-p: Public generic functions
exportable-reference-p: Public generic functions
exportable-reference-p: Public generic functions
exportable-reference-p: Public generic functions
exportablep: Private ordinary functions

F
file-position-to-line-number: Private ordinary functions
find-subclass-of: Private ordinary functions
find-system*: Private ordinary functions
Function, %declare-locative-type: Private ordinary functions
Function, %locate: Private ordinary functions
Function, %locative-type-class-info: Private ordinary functions
Function, %locative-type-direct-subs: Private ordinary functions
Function, %locative-type-direct-supers: Private ordinary functions
Function, %note-children: Private ordinary functions
Function, %note-join: Private ordinary functions
Function, %note-name: Private ordinary functions
Function, %note-p: Private ordinary functions
Function, %note-package: Private ordinary functions
Function, (setf %note-children): Private ordinary functions
Function, (setf %note-join): Private ordinary functions
Function, (setf %note-name): Private ordinary functions
Function, (setf %note-package): Private ordinary functions
Function, arglist: Public ordinary functions
Function, asdf-system-git-root-and-version: Private ordinary functions
Function, call-with-heading: Private ordinary functions
Function, call-with-wrappers: Public ordinary functions
Function, canonicalize-dref: Private ordinary functions
Function, check-body-docstring: Private ordinary functions
Function, check-cast-name-change: Private ordinary functions
Function, check-docstring-only-body: Private ordinary functions
Function, check-link-title-to: Private ordinary functions
Function, check-lisp-and-pseudo-are-distinct: Private ordinary functions
Function, check-lisp-locative-type: Private ordinary functions
Function, check-locative-args*: Private ordinary functions
Function, check-locative-type: Private ordinary functions
Function, check-locator-return-values: Private ordinary functions
Function, check-pax-elisp-version: Private ordinary functions
Function, check-section-entries: Private ordinary functions
Function, compile-pax: Public ordinary functions
Function, compile-per-file: Public ordinary functions
Function, compile-with-source-info: Public ordinary functions
Function, compile-without-some-warnings: Private ordinary functions
Function, compose-wrappers: Public ordinary functions
Function, convert-source-location: Private ordinary functions
Function, copy-%note: Private ordinary functions
Function, declare-locative-alias: Private ordinary functions
Function, declare-locative-type: Private ordinary functions
Function, declare-pseudo-locative-type: Private ordinary functions
Function, definition-properties: Public ordinary functions
Function, definition-property: Public ordinary functions
Function, definition-property-key: Private ordinary functions
Function, definitions: Public ordinary functions
Function, delete-comments: Public ordinary functions
Function, delete-definition-properties: Public ordinary functions
Function, delete-definition-property: Public ordinary functions
Function, delete-trailing-whitespace: Public ordinary functions
Function, docstring: Public ordinary functions
Function, doctitle: Public ordinary functions
Function, document: Public ordinary functions
Function, document-docstring: Public ordinary functions
Function, downcasingp: Private ordinary functions
Function, dref: Public ordinary functions
Function, dref-apropos: Public ordinary functions
Function, dref-class: Public ordinary functions
Function, dref-class-superclasses: Private ordinary functions
Function, dref-class-to-locative-type: Private ordinary functions
Function, dref-locative-args: Public ordinary functions
Function, dref-locative-type: Public ordinary functions
Function, dref-std-env: Private ordinary functions
Function, dtypep: Public ordinary functions
Function, ensure-dref-loaded: Private ordinary functions
Function, ensure-list: Private ordinary functions
Function, ensure-list*: Private ordinary functions
Function, ensure-transcribe-loaded: Private ordinary functions
Function, ensure-web-server: Public ordinary functions
Function, escape-markdown: Public ordinary functions
Function, escape-tex: Public ordinary functions
Function, expand-define-definer-for-symbol-as-locative-definer-body: Private ordinary functions
Function, expand-nested-note: Private ordinary functions
Function, export-some-symbols: Private ordinary functions
Function, exportablep: Private ordinary functions
Function, file-position-to-line-number: Private ordinary functions
Function, find-subclass-of: Private ordinary functions
Function, find-system*: Private ordinary functions
Function, git-root: Private ordinary functions
Function, git-version: Private ordinary functions
Function, handle-note: Private ordinary functions
Function, in-git-p: Private ordinary functions
Function, install-pax-elisp: Public ordinary functions
Function, invalid-lisp-locative-type: Private ordinary functions
Function, invalid-locative-type: Private ordinary functions
Function, line-file-positions: Private ordinary functions
Function, lisp-locative-type-p: Private ordinary functions
Function, lisp-locative-types: Public ordinary functions
Function, list-designator: Private ordinary functions
Function, locate: Public ordinary functions
Function, locate-error: Public ordinary functions
Function, locate-initial-definition: Private ordinary functions
Function, locate-with-first-locator: Private ordinary functions
Function, locate-with-lookup: Private ordinary functions
Function, locative-aliases: Public ordinary functions
Function, locative-args: Public ordinary functions
Function, locative-subtype-p: Private ordinary functions
Function, locative-type: Public ordinary functions
Function, locative-type-direct-subs: Public ordinary functions
Function, locative-type-direct-supers: Public ordinary functions
Function, locative-type-p: Private ordinary functions
Function, locative-types: Public ordinary functions
Function, macro-arg-names: Private ordinary functions
Function, make-%note: Private ordinary functions
Function, make-git-source-uri-fn: Public ordinary functions
Function, make-github-source-uri-fn: Public ordinary functions
Function, make-source-location: Public ordinary functions
Function, malformed-ref-list-in-section-error: Private ordinary functions
Function, map-names-for-type: Private ordinary functions
Function, maybe-default-dref-class: Private ordinary functions
Function, member-type-specifier-p: Private ordinary functions
Function, move-definition-properties: Public ordinary functions
Function, normalize-locative: Private ordinary functions
Function, order-locative-types: Private ordinary functions
Function, parse-body-declare: Private ordinary functions
Function, parse-body-docstring: Private ordinary functions
Function, parse-note-body: Private ordinary functions
Function, pathname-as-directory: Private ordinary functions
Function, pax-pages: Private ordinary functions
Function, pax-sections: Private ordinary functions
Function, prin1-to-markdown: Public ordinary functions
Function, prin1-to-string/fully-qualified: Private ordinary functions
Function, print-dref-bullet: Private ordinary functions
Function, pseudo-locative-types: Public ordinary functions
Function, ref-list-p: Private ordinary functions
Function, register-doc-in-pax-world: Public ordinary functions
Function, reorder-locative-types: Private ordinary functions
Function, resolve: Public ordinary functions
Function, resolve-error: Public ordinary functions
Function, satisfies-type-specifier-p: Private ordinary functions
Function, section-entries: Public ordinary functions
Function, section-entry-to-xref: Private ordinary functions
Function, section-link-title-to: Public ordinary functions
Function, set-definition-property: Private ordinary functions
Function, set-symbol-global-value: Private ordinary functions
Function, source-location: Public ordinary functions
Function, source-location-adjusted-file-position: Public ordinary functions
Function, source-location-buffer: Public ordinary functions
Function, source-location-buffer-position: Public ordinary functions
Function, source-location-file: Public ordinary functions
Function, source-location-file-position: Public ordinary functions
Function, source-location-p: Public ordinary functions
Function, source-location-snippet: Public ordinary functions
Function, special-variable-name-p: Private ordinary functions
Function, squeeze-whitespace: Public ordinary functions
Function, swank-error-value-p: Private ordinary functions
Function, swank-source-location*: Private ordinary functions
Function, symbol-accessible-in-package-p: Private ordinary functions
Function, symbol-global-value: Private ordinary functions
Function, symbol-globally-boundp: Private ordinary functions
Function, transcribe: Public ordinary functions
Function, translate-sb-source-location: Private ordinary functions
Function, type-specifier-name: Private ordinary functions
Function, update-asdf-system-html-docs: Public ordinary functions
Function, update-asdf-system-readmes: Public ordinary functions
Function, update-class-info: Private ordinary functions
Function, update-pax-world: Public ordinary functions
Function, valid-satisisfies-type-specifier-args-p: Private ordinary functions
Function, valid-type-specifier-p: Private ordinary functions
Function, xref: Public ordinary functions
Function, xref-locative-args: Public ordinary functions
Function, xref-locative-type: Public ordinary functions
Function, xref-name=: Private ordinary functions
Function, xref=: Public ordinary functions

G
Generic Function, arglist*: Public generic functions
Generic Function, docstring*: Public generic functions
Generic Function, doctitle*: Public generic functions
Generic Function, document-object*: Public generic functions
Generic Function, dref*: Private generic functions
Generic Function, dref-locative: Public generic functions
Generic Function, dref-name: Public generic functions
Generic Function, dref-origin: Public generic functions
Generic Function, exportable-locative-type-p: Public generic functions
Generic Function, exportable-reference-p: Public generic functions
Generic Function, glossary-term-docstring: Private generic functions
Generic Function, glossary-term-name: Public generic functions
Generic Function, glossary-term-title: Public generic functions
Generic Function, glossary-term-url: Public generic functions
Generic Function, locate*: Private generic functions
Generic Function, locate-error-message: Private generic functions
Generic Function, locate-error-message-args: Private generic functions
Generic Function, locate-error-object: Private generic functions
Generic Function, map-definitions-of-name: Public generic functions
Generic Function, map-definitions-of-type: Public generic functions
Generic Function, resolve*: Public generic functions
Generic Function, resolve-error-dref: Private generic functions
Generic Function, resolve-error-message: Private generic functions
Generic Function, section-name: Public generic functions
Generic Function, section-package: Public generic functions
Generic Function, section-readtable: Public generic functions
Generic Function, section-title: Public generic functions
Generic Function, source-location*: Public generic functions
Generic Function, xref-locative: Public generic functions
Generic Function, xref-name: Public generic functions
git-root: Private ordinary functions
git-version: Private ordinary functions
glossary-term-docstring: Private generic functions
glossary-term-docstring: Private generic functions
glossary-term-name: Public generic functions
glossary-term-name: Public generic functions
glossary-term-title: Public generic functions
glossary-term-title: Public generic functions
glossary-term-url: Public generic functions
glossary-term-url: Public generic functions

H
handle-note: Private ordinary functions

I
in-git-p: Private ordinary functions
initialize-instance: Public standalone methods
install-pax-elisp: Public ordinary functions
invalid-lisp-locative-type: Private ordinary functions
invalid-locative-type: Private ordinary functions

L
line-file-positions: Private ordinary functions
lisp-locative-type-p: Private ordinary functions
lisp-locative-types: Public ordinary functions
list-designator: Private ordinary functions
load-time-value*: Private macros
locate: Public ordinary functions
locate*: Private generic functions
locate*: Private generic functions
locate*: Private generic functions
locate*: Private generic functions
locate-error: Public ordinary functions
locate-error-message: Private generic functions
locate-error-message: Private generic functions
locate-error-message-args: Private generic functions
locate-error-message-args: Private generic functions
locate-error-object: Private generic functions
locate-error-object: Private generic functions
locate-initial-definition: Private ordinary functions
locate-with-first-locator: Private ordinary functions
locate-with-lookup: Private ordinary functions
locative-aliases: Public ordinary functions
locative-args: Public ordinary functions
locative-subtype-p: Private ordinary functions
locative-type: Public ordinary functions
locative-type-direct-subs: Public ordinary functions
locative-type-direct-supers: Public ordinary functions
locative-type-p: Private ordinary functions
locative-types: Public ordinary functions

M
Macro, %define-locative-type: Private macros
Macro, autoload: Public macros
Macro, call-cast: Public macros
Macro, call-locator: Public macros
Macro, call-lookup: Public macros
Macro, check-locative-args: Public macros
Macro, define-cast: Public macros
Macro, define-definer-for-symbol-locative-type: Public macros
Macro, define-dtype: Public macros
Macro, define-glossary-term: Public macros
Macro, define-locative-alias: Public macros
Macro, define-locative-type: Public macros
Macro, define-locator: Public macros
Macro, define-lookup: Public macros
Macro, define-package: Public macros
Macro, define-pseudo-locative-type: Public macros
Macro, define-restart: Public macros
Macro, define-symbol-locative-type: Public macros
Macro, defsection: Public macros
Macro, defun/autoloaded: Public macros
Macro, defvar/autoloaded: Public macros
Macro, documenting-definition: Public macros
Macro, load-time-value*: Private macros
Macro, mark-this-source-location: Private macros
Macro, note: Public macros
Macro, nth-value-or*: Private macros
Macro, nth-value-or-with-obj-or-def: Private macros
Macro, on-unknown-type-warning: Private macros
Macro, removef: Private macros
Macro, succeedsp: Private macros
Macro, this-source-location: Public macros
Macro, with-dislocated-names: Public macros
Macro, with-heading: Public macros
Macro, with-local-references: Private macros
Macro, with-locate-error-ignored: Private macros
Macro, without-redefinition-warnings: Private macros
macro-arg-names: Private ordinary functions
make-%note: Private ordinary functions
make-git-source-uri-fn: Public ordinary functions
make-github-source-uri-fn: Public ordinary functions
make-source-location: Public ordinary functions
malformed-ref-list-in-section-error: Private ordinary functions
map-definitions-of-name: Public generic functions
map-definitions-of-name: Public generic functions
map-definitions-of-type: Public generic functions
map-definitions-of-type: Public generic functions
map-names-for-type: Private ordinary functions
mark-this-source-location: Private macros
maybe-default-dref-class: Private ordinary functions
member-type-specifier-p: Private ordinary functions
Method, arglist*: Public generic functions
Method, arglist*: Public generic functions
Method, docstring*: Public generic functions
Method, docstring*: Public generic functions
Method, doctitle*: Public generic functions
Method, document-object*: Public generic functions
Method, dref*: Private generic functions
Method, dref*: Private generic functions
Method, dref*: Private generic functions
Method, dref-locative: Public generic functions
Method, dref-name: Public generic functions
Method, dref-origin: Public generic functions
Method, exportable-locative-type-p: Public generic functions
Method, exportable-locative-type-p: Public generic functions
Method, exportable-locative-type-p: Public generic functions
Method, exportable-locative-type-p: Public generic functions
Method, exportable-locative-type-p: Public generic functions
Method, exportable-reference-p: Public generic functions
Method, exportable-reference-p: Public generic functions
Method, exportable-reference-p: Public generic functions
Method, exportable-reference-p: Public generic functions
Method, exportable-reference-p: Public generic functions
Method, exportable-reference-p: Public generic functions
Method, glossary-term-docstring: Private generic functions
Method, glossary-term-name: Public generic functions
Method, glossary-term-title: Public generic functions
Method, glossary-term-url: Public generic functions
Method, initialize-instance: Public standalone methods
Method, locate*: Private generic functions
Method, locate*: Private generic functions
Method, locate*: Private generic functions
Method, locate-error-message: Private generic functions
Method, locate-error-message-args: Private generic functions
Method, locate-error-object: Private generic functions
Method, map-definitions-of-name: Public generic functions
Method, map-definitions-of-type: Public generic functions
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, resolve*: Public generic functions
Method, resolve*: Public generic functions
Method, resolve-error-dref: Private generic functions
Method, resolve-error-message: Private generic functions
Method, section-name: Public generic functions
Method, section-package: Public generic functions
Method, section-readtable: Public generic functions
Method, section-title: Public generic functions
Method, source-location*: Public generic functions
Method, source-location*: Public generic functions
Method, xref-locative: Public generic functions
Method, xref-name: Public generic functions
move-definition-properties: Public ordinary functions

N
normalize-locative: Private ordinary functions
note: Public macros
nth-value-or*: Private macros
nth-value-or-with-obj-or-def: Private macros

O
on-unknown-type-warning: Private macros
order-locative-types: Private ordinary functions

P
parse-body-declare: Private ordinary functions
parse-body-docstring: Private ordinary functions
parse-note-body: Private ordinary functions
pathname-as-directory: Private ordinary functions
pax-pages: Private ordinary functions
pax-sections: Private ordinary functions
prin1-to-markdown: Public ordinary functions
prin1-to-string/fully-qualified: Private ordinary functions
print-dref-bullet: Private ordinary functions
print-object: Public standalone methods
print-object: Public standalone methods
pseudo-locative-types: Public ordinary functions

R
ref-list-p: Private ordinary functions
register-doc-in-pax-world: Public ordinary functions
removef: Private macros
reorder-locative-types: Private ordinary functions
resolve: Public ordinary functions
resolve*: Public generic functions
resolve*: Public generic functions
resolve*: Public generic functions
resolve-error: Public ordinary functions
resolve-error-dref: Private generic functions
resolve-error-dref: Private generic functions
resolve-error-message: Private generic functions
resolve-error-message: Private generic functions

S
satisfies-type-specifier-p: Private ordinary functions
section-entries: Public ordinary functions
section-entry-to-xref: Private ordinary functions
section-link-title-to: Public ordinary functions
section-name: Public generic functions
section-name: Public generic functions
section-package: Public generic functions
section-package: Public generic functions
section-readtable: Public generic functions
section-readtable: Public generic functions
section-title: Public generic functions
section-title: Public generic functions
set-definition-property: Private ordinary functions
set-symbol-global-value: Private ordinary functions
Setf Expander, (setf definition-property): Public setf expanders
Setf Expander, (setf symbol-global-value): Private setf expanders
source-location: Public ordinary functions
source-location*: Public generic functions
source-location*: Public generic functions
source-location*: Public generic functions
source-location-adjusted-file-position: Public ordinary functions
source-location-buffer: Public ordinary functions
source-location-buffer-position: Public ordinary functions
source-location-file: Public ordinary functions
source-location-file-position: Public ordinary functions
source-location-p: Public ordinary functions
source-location-snippet: Public ordinary functions
special-variable-name-p: Private ordinary functions
squeeze-whitespace: Public ordinary functions
succeedsp: Private macros
swank-error-value-p: Private ordinary functions
swank-source-location*: Private ordinary functions
symbol-accessible-in-package-p: Private ordinary functions
symbol-global-value: Private ordinary functions
symbol-globally-boundp: Private ordinary functions

T
this-source-location: Public macros
transcribe: Public ordinary functions
translate-sb-source-location: Private ordinary functions
type-specifier-name: Private ordinary functions

U
update-asdf-system-html-docs: Public ordinary functions
update-asdf-system-readmes: Public ordinary functions
update-class-info: Private ordinary functions
update-pax-world: Public ordinary functions

V
valid-satisisfies-type-specifier-args-p: Private ordinary functions
valid-type-specifier-p: Private ordinary functions

W
with-dislocated-names: Public macros
with-heading: Public macros
with-local-references: Private macros
with-locate-error-ignored: Private macros
without-redefinition-warnings: Private macros

X
xref: Public ordinary functions
xref-locative: Public generic functions
xref-locative: Public generic functions
xref-locative-args: Public ordinary functions
xref-locative-type: Public ordinary functions
xref-name: Public generic functions
xref-name: Public generic functions
xref-name=: Private ordinary functions
xref=: Public ordinary functions


A.3 Variables

Jump to:   %   *   @  
C   D   E   J   L   M   N   O   P   R   S   T   U  
Index Entry  Section

%
%entries: Public classes
%link-title-to: Public classes

*
*browse-html-style*: Public special variables
*check-locate*: Public special variables
*definition-properties*: Private special variables
*discard-documentation-p*: Public special variables
*document-base-url*: Public special variables
*document-downcase-uppercase-code*: Public special variables
*document-fancy-html-navigation*: Public special variables
*document-html-bottom-blocks-of-links*: Public special variables
*document-html-charset*: Public special variables
*document-html-default-style*: Public special variables
*document-html-head*: Public special variables
*document-html-lang*: Public special variables
*document-html-max-navigation-table-of-contents-level*: Public special variables
*document-html-sidebar*: Public special variables
*document-html-top-blocks-of-links*: Public special variables
*document-hyperspec-root*: Public special variables
*document-link-code*: Public special variables
*document-link-sections*: Public special variables
*document-link-to-hyperspec*: Public special variables
*document-list-view*: Private special variables
*document-mark-up-signatures*: Public special variables
*document-max-numbering-level*: Public special variables
*document-max-table-of-contents-level*: Public special variables
*document-min-link-hash-length*: Public special variables
*document-normalize-packages*: Public special variables
*document-open-linking*: Private special variables
*document-pandoc-pdf-header-includes*: Public special variables
*document-pandoc-pdf-metadata-block*: Public special variables
*document-pandoc-pdf-options*: Public special variables
*document-pandoc-program*: Public special variables
*document-text-navigation*: Public special variables
*document-tight*: Public special variables
*document-uppercase-is-code*: Public special variables
*document-url-versions*: Public special variables
*documenting-dref*: Private special variables
*dref-class-to-locative-type*: Private special variables
*dtype-expanders*: Private special variables
*dummy-locate-error*: Private special variables
*first-pass*: Private special variables
*format*: Public special variables
*git-version-for-test*: Private special variables
*lisp-locative-types*: Private special variables
*local-references*: Private special variables
*locate-error-ignored*: Private special variables
*locating-object*: Private special variables
*locative-aliases*: Private special variables
*locative-type-to-class-info*: Private special variables
*locative-types*: Private special variables
*locative-types-and-aliases*: Private special variables
*pax-version*: Private special variables
*pseudo-locative-types*: Private special variables
*registered-pax-world-docs*: Private special variables
*resolving-dref*: Private special variables
*subformat*: Private special variables
*transcribe-check-consistency*: Public special variables
*transcribe-syntaxes*: Public special variables

@
@adding-new-locatives: Private special variables
@background: Private special variables
@basic-operations: Private special variables
@basics: Private special variables
@canonicalization: Private special variables
@cast-name-change: Private special variables
@default-downcast: Private special variables
@defining-locative-types: Private special variables
@defining-lookups-locators-and-casts: Private special variables
@definition: Private special variables
@definition-properties: Private special variables
@dissecting-references: Private special variables
@dref-manual: Private special variables
@dtypes: Private special variables
@emacs-functionality: Private special variables
@emacs-keys: Private special variables
@emacs-loading: Private special variables
@emacs-quicklisp: Private special variables
@emacs-setup: Private special variables
@extending-document: Private special variables
@extending-dref: Private special variables
@extending-everything-else: Private special variables
@extending-locate: Private special variables
@extension-api: Private special variables
@extension-tutorial: Private special variables
@github-workflow: Private special variables
@glossary-terms: Private special variables
@initial-definition: Private special variables
@introduction: Private special variables
@introduction: Private special variables
@links-and-systems: Private special variables
@links-and-systems: Private special variables
@listing-definitions: Private special variables
@locative: Private special variables
@locative-aliases: Private special variables
@locative-type: Private special variables
@locative-type-hierarchy: Private special variables
@m-.: Private special variables
@markdown: Private special variables
@name: Private special variables
@oaoo: Private special variables
@pax-locatives: Private special variables
@pax-manual: Private special variables
@pax-world: Private special variables
@presentation: Private special variables
@quicklisp: Private special variables
@reference: Private special variables
@references: Private special variables
@references-glossary: Private special variables
@reverse-definition-order: Private special variables
@sections: Private special variables
@slime: Private special variables
@symbol-locatives: Private special variables
@w3m: Private special variables

C
children: Private structures

D
docstring: Public classes
dref: Public conditions

E
end-of-register-doc-example: Private special variables

J
join: Private structures

L
locative: Public classes
locative: Public classes

M
message: Public conditions
message: Public conditions
message-args: Public conditions

N
name: Public classes
name: Public classes
name: Public classes
name: Public classes
name: Private structures

O
object: Public conditions
origin: Public classes

P
package: Public classes
package: Private structures

R
readtable: Public classes

S
Slot, %entries: Public classes
Slot, %link-title-to: Public classes
Slot, children: Private structures
Slot, docstring: Public classes
Slot, dref: Public conditions
Slot, join: Private structures
Slot, locative: Public classes
Slot, locative: Public classes
Slot, message: Public conditions
Slot, message: Public conditions
Slot, message-args: Public conditions
Slot, name: Public classes
Slot, name: Public classes
Slot, name: Public classes
Slot, name: Public classes
Slot, name: Private structures
Slot, object: Public conditions
Slot, origin: Public classes
Slot, package: Public classes
Slot, package: Private structures
Slot, readtable: Public classes
Slot, title: Public classes
Slot, title: Public classes
Slot, url: Public classes
Special Variable, *browse-html-style*: Public special variables
Special Variable, *check-locate*: Public special variables
Special Variable, *definition-properties*: Private special variables
Special Variable, *discard-documentation-p*: Public special variables
Special Variable, *document-base-url*: Public special variables
Special Variable, *document-downcase-uppercase-code*: Public special variables
Special Variable, *document-fancy-html-navigation*: Public special variables
Special Variable, *document-html-bottom-blocks-of-links*: Public special variables
Special Variable, *document-html-charset*: Public special variables
Special Variable, *document-html-default-style*: Public special variables
Special Variable, *document-html-head*: Public special variables
Special Variable, *document-html-lang*: Public special variables
Special Variable, *document-html-max-navigation-table-of-contents-level*: Public special variables
Special Variable, *document-html-sidebar*: Public special variables
Special Variable, *document-html-top-blocks-of-links*: Public special variables
Special Variable, *document-hyperspec-root*: Public special variables
Special Variable, *document-link-code*: Public special variables
Special Variable, *document-link-sections*: Public special variables
Special Variable, *document-link-to-hyperspec*: Public special variables
Special Variable, *document-list-view*: Private special variables
Special Variable, *document-mark-up-signatures*: Public special variables
Special Variable, *document-max-numbering-level*: Public special variables
Special Variable, *document-max-table-of-contents-level*: Public special variables
Special Variable, *document-min-link-hash-length*: Public special variables
Special Variable, *document-normalize-packages*: Public special variables
Special Variable, *document-open-linking*: Private special variables
Special Variable, *document-pandoc-pdf-header-includes*: Public special variables
Special Variable, *document-pandoc-pdf-metadata-block*: Public special variables
Special Variable, *document-pandoc-pdf-options*: Public special variables
Special Variable, *document-pandoc-program*: Public special variables
Special Variable, *document-text-navigation*: Public special variables
Special Variable, *document-tight*: Public special variables
Special Variable, *document-uppercase-is-code*: Public special variables
Special Variable, *document-url-versions*: Public special variables
Special Variable, *documenting-dref*: Private special variables
Special Variable, *dref-class-to-locative-type*: Private special variables
Special Variable, *dtype-expanders*: Private special variables
Special Variable, *dummy-locate-error*: Private special variables
Special Variable, *first-pass*: Private special variables
Special Variable, *format*: Public special variables
Special Variable, *git-version-for-test*: Private special variables
Special Variable, *lisp-locative-types*: Private special variables
Special Variable, *local-references*: Private special variables
Special Variable, *locate-error-ignored*: Private special variables
Special Variable, *locating-object*: Private special variables
Special Variable, *locative-aliases*: Private special variables
Special Variable, *locative-type-to-class-info*: Private special variables
Special Variable, *locative-types*: Private special variables
Special Variable, *locative-types-and-aliases*: Private special variables
Special Variable, *pax-version*: Private special variables
Special Variable, *pseudo-locative-types*: Private special variables
Special Variable, *registered-pax-world-docs*: Private special variables
Special Variable, *resolving-dref*: Private special variables
Special Variable, *subformat*: Private special variables
Special Variable, *transcribe-check-consistency*: Public special variables
Special Variable, *transcribe-syntaxes*: Public special variables
Special Variable, @adding-new-locatives: Private special variables
Special Variable, @background: Private special variables
Special Variable, @basic-operations: Private special variables
Special Variable, @basics: Private special variables
Special Variable, @canonicalization: Private special variables
Special Variable, @cast-name-change: Private special variables
Special Variable, @default-downcast: Private special variables
Special Variable, @defining-locative-types: Private special variables
Special Variable, @defining-lookups-locators-and-casts: Private special variables
Special Variable, @definition: Private special variables
Special Variable, @definition-properties: Private special variables
Special Variable, @dissecting-references: Private special variables
Special Variable, @dref-manual: Private special variables
Special Variable, @dtypes: Private special variables
Special Variable, @emacs-functionality: Private special variables
Special Variable, @emacs-keys: Private special variables
Special Variable, @emacs-loading: Private special variables
Special Variable, @emacs-quicklisp: Private special variables
Special Variable, @emacs-setup: Private special variables
Special Variable, @extending-document: Private special variables
Special Variable, @extending-dref: Private special variables
Special Variable, @extending-everything-else: Private special variables
Special Variable, @extending-locate: Private special variables
Special Variable, @extension-api: Private special variables
Special Variable, @extension-tutorial: Private special variables
Special Variable, @github-workflow: Private special variables
Special Variable, @glossary-terms: Private special variables
Special Variable, @initial-definition: Private special variables
Special Variable, @introduction: Private special variables
Special Variable, @introduction: Private special variables
Special Variable, @links-and-systems: Private special variables
Special Variable, @links-and-systems: Private special variables
Special Variable, @listing-definitions: Private special variables
Special Variable, @locative: Private special variables
Special Variable, @locative-aliases: Private special variables
Special Variable, @locative-type: Private special variables
Special Variable, @locative-type-hierarchy: Private special variables
Special Variable, @m-.: Private special variables
Special Variable, @markdown: Private special variables
Special Variable, @name: Private special variables
Special Variable, @oaoo: Private special variables
Special Variable, @pax-locatives: Private special variables
Special Variable, @pax-manual: Private special variables
Special Variable, @pax-world: Private special variables
Special Variable, @presentation: Private special variables
Special Variable, @quicklisp: Private special variables
Special Variable, @reference: Private special variables
Special Variable, @references: Private special variables
Special Variable, @references-glossary: Private special variables
Special Variable, @reverse-definition-order: Private special variables
Special Variable, @sections: Private special variables
Special Variable, @slime: Private special variables
Special Variable, @symbol-locatives: Private special variables
Special Variable, @w3m: Private special variables
Special Variable, end-of-register-doc-example: Private special variables

T
title: Public classes
title: Public classes

U
url: Public classes


A.4 Data types

Jump to:   %  
A   B   C   D   E   F   G   L   M   P   R   S   T   U   W   X  
Index Entry  Section

%
%note: Private structures

A
asdf.lisp: The mgl-pax․asdf/asdf․lisp file
autoload: The autoload system
autoload: The autoload package
autoload.asd: The autoload/autoload․asd file
autoload.lisp: The autoload/autoload․lisp file

B
basics.lisp: The mgl-pax-bootstrap/src/bootstrap//basics․lisp file

C
Class, dref: Public classes
Class, glossary-term: Public classes
Class, restart-dref: Public classes
Class, section: Public classes
Class, symbol-locative-dref: Public classes
Class, xref: Public classes
Condition, locate-error: Public conditions
Condition, resolve-error: Public conditions
Condition, transcription-consistency-error: Public conditions
Condition, transcription-error: Public conditions
Condition, unresolvable-reflink: Public conditions

D
document-early.lisp: The mgl-pax/src/base//document-early․lisp file
dref: The dref system
dref: The dref package
dref: Public classes
dref-ext: The dref-ext package
dref.asd: The dref/dref․asd file
dref.lisp: The dref/src/base//dref․lisp file

E
early.lisp: The dref/src/base//early․lisp file
extension-api.lisp: The mgl-pax/src/base//extension-api․lisp file
extension-api.lisp: The dref/src/base//extension-api․lisp file

F
File, asdf.lisp: The mgl-pax․asdf/asdf․lisp file
File, autoload.asd: The autoload/autoload․asd file
File, autoload.lisp: The autoload/autoload․lisp file
File, basics.lisp: The mgl-pax-bootstrap/src/bootstrap//basics․lisp file
File, document-early.lisp: The mgl-pax/src/base//document-early․lisp file
File, dref.asd: The dref/dref․asd file
File, dref.lisp: The dref/src/base//dref․lisp file
File, early.lisp: The dref/src/base//early․lisp file
File, extension-api.lisp: The mgl-pax/src/base//extension-api․lisp file
File, extension-api.lisp: The dref/src/base//extension-api․lisp file
File, locatives-early.lisp: The mgl-pax/src/base//locatives-early․lisp file
File, mgl-pax-bootstrap.asd: The mgl-pax-bootstrap/mgl-pax-bootstrap․asd file
File, mgl-pax.asd: The mgl-pax/mgl-pax․asd file
File, mgl-pax.asdf.asd: The mgl-pax․asdf/mgl-pax․asdf․asd file
File, package.lisp: The mgl-pax-bootstrap/src/bootstrap//package․lisp file
File, package.lisp: The autoload/package․lisp file
File, package.lisp: The dref/src/base//package․lisp file
File, pax-world.lisp: The mgl-pax-bootstrap/src/bootstrap//pax-world․lisp file
File, pax.lisp: The mgl-pax/src/base//pax․lisp file
File, transcribe-early.lisp: The mgl-pax/src/base//transcribe-early․lisp file
File, util.lisp: The dref/src/base//util․lisp file
File, web-early.lisp: The mgl-pax/src/base//web-early․lisp file

G
glossary-term: Public classes

L
locate-error: Public conditions
locatives-early.lisp: The mgl-pax/src/base//locatives-early․lisp file

M
mgl-pax: The mgl-pax system
mgl-pax: The mgl-pax package
mgl-pax-bootstrap: The mgl-pax-bootstrap system
mgl-pax-bootstrap.asd: The mgl-pax-bootstrap/mgl-pax-bootstrap․asd file
mgl-pax.asd: The mgl-pax/mgl-pax․asd file
mgl-pax.asdf: The mgl-pax․asdf system
mgl-pax.asdf: The mgl-pax․asdf package
mgl-pax.asdf.asd: The mgl-pax․asdf/mgl-pax․asdf․asd file
Module, src/base/: The mgl-pax/src/base/ module
Module, src/base/: The dref/src/base/ module
Module, src/bootstrap/: The mgl-pax-bootstrap/src/bootstrap/ module

P
Package, autoload: The autoload package
Package, dref: The dref package
Package, dref-ext: The dref-ext package
Package, mgl-pax: The mgl-pax package
Package, mgl-pax.asdf: The mgl-pax․asdf package
package.lisp: The mgl-pax-bootstrap/src/bootstrap//package․lisp file
package.lisp: The autoload/package․lisp file
package.lisp: The dref/src/base//package․lisp file
pax-world.lisp: The mgl-pax-bootstrap/src/bootstrap//pax-world․lisp file
pax.lisp: The mgl-pax/src/base//pax․lisp file

R
resolve-error: Public conditions
restart-dref: Public classes

S
section: Public classes
src/base/: The mgl-pax/src/base/ module
src/base/: The dref/src/base/ module
src/bootstrap/: The mgl-pax-bootstrap/src/bootstrap/ module
Structure, %note: Private structures
symbol-locative-dref: Public classes
System, autoload: The autoload system
System, dref: The dref system
System, mgl-pax: The mgl-pax system
System, mgl-pax-bootstrap: The mgl-pax-bootstrap system
System, mgl-pax.asdf: The mgl-pax․asdf system

T
transcribe-early.lisp: The mgl-pax/src/base//transcribe-early․lisp file
transcription-consistency-error: Public conditions
transcription-error: Public conditions

U
unresolvable-reflink: Public conditions
util.lisp: The dref/src/base//util․lisp file

W
web-early.lisp: The mgl-pax/src/base//web-early․lisp file

X
xref: Public classes