Next: , Previous: , Up: Internals   [Contents][Index]


6.2.4 Generic functions

Generic Function: category-name (definition)

Return DEFINITION’s category name.

Package

net.didierverna.declt.

Source

doc.lisp.

Methods
Method: category-name ((definition system-definition))

Return "system"

Source

asdf.lisp.

Method: category-name ((definition module-definition))

Return "module"

Source

asdf.lisp.

Method: category-name ((definition file-definition))

Return "file"

Source

asdf.lisp.

Method: category-name ((definition package-definition))

Return "package".

Source

package.lisp.

Method: category-name ((definition alias-definition))

Return the category name of alias DEFINITION’s referee.

Source

symbol.lisp.

Method: category-name ((definition slot-definition))

Return "slot".

Source

symbol.lisp.

Method: category-name ((definition class-definition))

Return "class".

Source

symbol.lisp.

Method: category-name ((definition condition-definition))

Return "condition".

Source

symbol.lisp.

Method: category-name ((definition structure-definition))

Return "structure".

Source

symbol.lisp.

Method: category-name ((definition writer-method-definition))

Return "writer method".

Source

symbol.lisp.

Method: category-name ((definition reader-method-definition))

Return "reader method".

Source

symbol.lisp.

Method: category-name ((definition method-definition))

Return "method".

Source

symbol.lisp.

Method: category-name ((definition combination-definition))

Return "method combination".

Source

symbol.lisp.

Method: category-name ((definition generic-writer-definition))

Return "generic writer".

Source

symbol.lisp.

Method: category-name ((definition generic-reader-definition))

Return "generic reader".

Source

symbol.lisp.

Method: category-name ((definition generic-function-definition))

Return "generic function".

Source

symbol.lisp.

Method: category-name ((definition ordinary-writer-definition))

Return "writer".

Source

symbol.lisp.

Method: category-name ((definition ordinary-reader-definition))

Return "reader".

Source

symbol.lisp.

Method: category-name ((definition ordinary-function-definition))

Return "function".

Source

symbol.lisp.

Method: category-name ((expander expander-definition))

Return "setf expander".

Source

symbol.lisp.

Method: category-name ((definition type-definition))

Return "type".

Source

symbol.lisp.

Method: category-name ((definition compiler-macro-definition))

Return "compiler macro".

Source

symbol.lisp.

Method: category-name ((definition macro-definition))

Return "macro".

Source

symbol.lisp.

Method: category-name ((definition symbol-macro-definition))

Return "symbol macro".

Source

symbol.lisp.

Method: category-name ((definition special-definition))

Return "special variable".

Source

symbol.lisp.

Method: category-name ((definition constant-definition))

Return "constant".

Source

symbol.lisp.

Generic Reader: declt-notice (object)
Package

net.didierverna.declt.

Methods
Reader Method: declt-notice ((context context))

whether to add a small credit paragraph about Declt. Possible values are NIL, :short, or :long (the default).

Source

doc.lisp.

Target Slot

declt-notice.

Generic Reader: default-values (object)
Package

net.didierverna.declt.

Methods
Reader Method: default-values ((context context))

Whether to render default / standard values.

Source

doc.lisp.

Target Slot

default-values.

Generic Function: document (definition context &key inline writer merged-methods merge-expander &allow-other-keys)

Render DEFINITION’s documentation in CONTEXT.

Package

net.didierverna.declt.

Source

doc.lisp.

Method Combination

document.

Methods
Method: document :open ((definition system-definition) context &key)

Render DEFINITION’s system-specific bits in CONTEXT.

Source

asdf.lisp.

Method: document :close ((definition module-definition) context &key)

Render module DEFINITION’s references in CONTEXT.

Source

asdf.lisp.

Method: document :close ((definition lisp-file-definition) context &key)

Render lisp file DEFINITION’s references in CONTEXT.

Source

asdf.lisp.

Method: document ((definition component-definition) context &key)

Render ASDF component DEFINITION’s documentation in CONTEXT.

Source

asdf.lisp.

Method: document :around ((definition component-definition) context &key)

Anchor, index and document component DEFINITION in CONTEXT. Documentation is done in a @table environment.

Source

asdf.lisp.

Method: document ((definition package-definition) context &key)

Render package DEFINITION’s documentation in context.

Source

package.lisp.

Method: document ((definition alias-definition) context &key)

Render alias DEFINITION’s documentation in CONTEXT.

Source

symbol.lisp.

Method: document ((definition typed-structure-slot-definition) context &key)

Render typed structure slot DEFINITION’s documentation in CONTEXT. More specifically, render DEFINITION’s reader and writer references.

Source

symbol.lisp.

Method: document ((definition clos-slot-definition) context &key)

Render CLOS slot DEFINITION’s documentation in CONTEXT.
More specifically, render DEFINITION’s reader and writer references.

Source

symbol.lisp.

Method: document ((definition slot-definition) context &key)

Render slot DEFINITION’s documentation in context.
More specifically, render DEFINITION’s value type, and for CLOS slots render allocation, initform, and initargs.

Source

symbol.lisp.

Method: document ((definition typed-structure-definition) context &key)

Render typed structure DEFINITION’s type documentation in CONTEXT.

Source

symbol.lisp.

Method: document ((definition clos-classoid-mixin) context &key)

Render CLOS classoid mixin DEFINITION’s documentation in CONTEXT. More specifically, render DEFINITION’s direct superclasses, subclasses, methods, and initargs references.

Source

symbol.lisp.

Method: document :close ((definition classoid-definition) context &key)

Close classoid DEFINITION’s documentation environment in CONTEXT. More specifically:
- close the @table environment,
- close the @deftp environment.

Source

symbol.lisp.

Method: document ((definition classoid-definition) context &key)

Render classoid DEFINITION’s direct slots references in CONTEXT.

Source

symbol.lisp.

Method: document :open ((definition classoid-definition) context &key)

Open classoid DEFINITION’s documentation environment in CONTEXT. More specifically:
- open a @deftp environment,
- anchor and index DEFINITION,
- render DEFINITION’s docstring,
- open a @table environment,
- render DEFINITIONS’s core documentation.

Source

symbol.lisp.

Method: document :open ((definition method-definition) context &key inline writer)

Open method DEFINITION’s documentation in CONTEXT.
More specifically:
- open a @deffn environment, possibly merging a WRITER method,
- anchor and index DEFINITION,
- render DEFINITION’s docstring,
- open a @table environment,
- render DEFINITION’s source file.
When INLINE, the method definition is documented within its owner’s documentation. In such a case, the package reference is not rendered (as it is the same as the owner’s), and the source file is only referenced if different from that of the owner’s.

Source

symbol.lisp.

Method: document ((definition short-combination-definition) context &key)

Render short method combination DEFINITION’s documentation in CONTEXT.

Source

symbol.lisp.

Method: document ((definition combination-definition) context &key)

Render method combination DEFINITION’s client references in CONTEXT.

Source

symbol.lisp.

Method: document :around ((definition generic-writer-definition) context &key)

Prevent generic writer DEFINITION from being documented when merging.

Source

symbol.lisp.

Method: document :around ((definition generic-reader-definition) context &rest args &key)

Check for potential writer merging with generic reader DEFINITION.

Source

symbol.lisp.

Method: document :close ((definition generic-function-definition) context &key merged-methods)

Close generic function DEFINITION’s documentation.
More specifically:
- render DEFINITION’s method references, possibly merging readers and writers, - close the @table environment,
- close the @deffn environment.

Source

symbol.lisp.

Method: document ((definition generic-function-definition) context &key)

Render generic function DEFINITION’s combination reference in CONTEXT.

Source

symbol.lisp.

Method: document :around ((definition ordinary-writer-definition) context &key)

Prevent ordinary writer DEFINITION from being documented when merging.

Source

symbol.lisp.

Method: document :around ((definition ordinary-reader-definition) context &rest args &key)

Check for potential writer merging with ordinary reader DEFINITION.

Source

symbol.lisp.

Method: document ((definition short-expander-definition) context &key)

Render short expander DEFINITION’s standalone writer reference in CONTEXT.

Source

symbol.lisp.

Method: document ((definition expander-definition) context &key)

Render setf expander DEFINITION’s standalone reader reference in CONTEXT.

Source

symbol.lisp.

Method: document :around ((definition long-expander-definition) context &key)

Prevent long expander DEFINITION from being documented when merging.

Source

symbol.lisp.

Method: document :close ((definition type-definition) context &key)

Close type DEFINITION’s documentation environment in CONTEXT. More specifically:
- close the @table environment,
- close the @deftp environment.

Source

symbol.lisp.

Method: document :open ((definition type-definition) context &key)

Open type DEFINITION’s documentation environment in CONTEXT. More specifically:
- open a @deftp environment,
- anchor and index DEFINITION,
- render DEFINITION’s docstring,
- open a @table environment,
- render DEFINITION’s core.

Source

symbol.lisp.

Method: document ((definition accessor-mixin) context &key)

Render accessor mixin DEFINITION’s target slot reference in CONTEXT.

Source

symbol.lisp.

Method: document ((definition setfable-funcoid-definition) context &key merge-expander)

Render setfable funcoid DEFINITION’s expanders information in CONTEXT. More specifically:
- render a reference to a set expander for DEFINITION, unless the definitions are merged,
- render references to all setf expanders expanding to DEFINITION.

Source

symbol.lisp.

Method: document :open ((definition setfable-funcoid-definition) context &key merge-expander writer)

Open setfable funcoid DEFINITION’s documentation environment in CONTEXT. More specifically:
- open a @deffn environment, possibly merging a related setf expander or writer,
- anchor and index DEFINITION,
- render DEFINITION’s docstring,
- open a @table environment,
- render DEFINITION’s core documentation.

Source

symbol.lisp.

Method: document :around ((definition setfable-funcoid-definition) context &rest args &key)

Check for potential expander merging of setfable funcoid DEFINITION.

Source

symbol.lisp.

Method: document :close ((definition funcoid-definition) context &key)

Close funcoid DEFINITION’s documentation environment in CONTEXT. More specifically:
- close the @table environment,
- close the @deffn environment.

Source

symbol.lisp.

Method: document :open ((definition funcoid-definition) context &key)

Open funcoid DEFINITION’s documentation environment in CONTEXT. More specifically:
- open a @deffn environment,
- anchor and index DEFINITION,
- render DEFINITION’s docstring,
- open a @table environment,
- render DEFINITION’s core documentation.
This is the default method.

Source

symbol.lisp.

Method: document :close ((definition varoid-definition) context &key)

Close varoid DEFINITION’s documentation environment in CONTEXT. More specifically:
- close the @table environment,
- close the @defvr environment.

Source

symbol.lisp.

Method: document ((definition varoid-definition) context &key)

Render varoid DEFINITION’s documentation in CONTEXT.
More specifically, render DEFINITION’s package and source file references. As a special exception, slots don’t reference their package, unless it differs from the slot’s owner package, and never reference their source file, which is the same as their owner.

Source

symbol.lisp.

Method: document :open ((definition varoid-definition) context &key)

Open varoid DEFINITIONS’s documentation environment in CONTEXT. More specifically:
- open a @defvr environment,
- anchor and index DEFINITION,
- render DEFINITION’s docstring,
- open a @table environment.

Source

symbol.lisp.

Method: document :around (definition context &key)

Check whether to render foreign DEFINITIONs.

Generic Reader: external-symbols (object)
Generic Writer: (setf external-symbols) (object)
Package

net.didierverna.declt.assess.

Methods
Reader Method: external-symbols ((package-definition package-definition))
Writer Method: (setf external-symbols) ((package-definition package-definition))

The list of corresponding external symbols.

Source

package.lisp.

Target Slot

external-symbols.

Generic Reader: foreign-definitions (object)
Package

net.didierverna.declt.

Methods
Reader Method: foreign-definitions ((context context))

Whether to render foreign definitions.

Source

doc.lisp.

Target Slot

foreign-definitions.

Generic Function: index-command-name (definition)

Return DEFINITION’s index command name.

Package

net.didierverna.declt.

Source

doc.lisp.

Methods
Method: index-command-name ((definition system-definition))

Return "systemindex"

Source

asdf.lisp.

Method: index-command-name ((definition module-definition))

Return "moduleindex"

Source

asdf.lisp.

Method: index-command-name ((definition file-definition))

Return "fileindex"

Source

asdf.lisp.

Method: index-command-name ((definition package-definition))

Return "packageindex".

Source

package.lisp.

Method: index-command-name ((definition alias-definition))

Return the index command name of alias DEFINITION’s referee.

Source

symbol.lisp.

Method: index-command-name ((definition slot-definition))

Return "slotsubindex".

Source

symbol.lisp.

Method: index-command-name ((definition class-definition))

Return "classsubindex".

Source

symbol.lisp.

Method: index-command-name ((definition condition-definition))

Return "conditionsubindex".

Source

symbol.lisp.

Method: index-command-name ((definition structure-definition))

Return "structuresubindex".

Source

symbol.lisp.

Method: index-command-name ((definition method-definition))

Return "methodsubindex".

Source

symbol.lisp.

Method: index-command-name ((definition combination-definition))

Return "combinationsubindex".

Source

symbol.lisp.

Method: index-command-name ((definition generic-function-definition))

Return "genericsubindex".

Source

symbol.lisp.

Method: index-command-name ((definition ordinary-function-definition))

Return "functionsubindex".

Source

symbol.lisp.

Method: index-command-name ((expander expander-definition))

Return "expandersubindex".

Source

symbol.lisp.

Method: index-command-name ((definition type-definition))

Return "typesubindex".

Source

symbol.lisp.

Method: index-command-name ((definition compiler-macro-definition))

Return "compilermacrosubindex".

Source

symbol.lisp.

Method: index-command-name ((definition macro-definition))

Return "macrosubindex".

Source

symbol.lisp.

Method: index-command-name ((definition symbol-macro-definition))

Return "symbolmacrosubindex".

Source

symbol.lisp.

Method: index-command-name ((definition special-definition))

Return "specialsubindex".

Source

symbol.lisp.

Method: index-command-name ((definition constant-definition))

Return "constantsubindex".

Source

symbol.lisp.

Generic Reader: internal-symbols (object)
Generic Writer: (setf internal-symbols) (object)
Package

net.didierverna.declt.assess.

Methods
Reader Method: internal-symbols ((package-definition package-definition))
Writer Method: (setf internal-symbols) ((package-definition package-definition))

The list of corresponding internal symbols.

Source

package.lisp.

Target Slot

internal-symbols.

Generic Reader: locations (object)
Package

net.didierverna.declt.

Methods
Reader Method: locations ((context context))

Whether to hyperlink definitions to their locations.
Currently supported values are NIL (the default), and :file-system.

Source

doc.lisp.

Target Slot

locations.

Generic Function: safe-name (definition &optional qualified)

Return DEFINITION’s safe name, possibly QUALIFIED.
Safe names have blank characters replaced with visible Unicode symbols. See ‘reveal’ for more information.

Package

net.didierverna.declt.

Source

doc.lisp.

Methods
Method: safe-name :around ((definition file-definition) &optional qualify)

Append DEFINITION’s file extension at the end, when applicable.

Source

asdf.lisp.

Method: safe-name ((definition component-definition) &optional qualified)

Reveal component DEFINITION’s name, possibly QUALIFIED.
A QUALIFIED component’s name is of the form "path/to/component", each element being the name of a component’s parent.

Source

asdf.lisp.

Method: safe-name :around ((definition slot-definition) &optional qualified)

When QUALIFIED, prepend slot DEFINITION’s classoid safe name.

Source

symbol.lisp.

Method: safe-name :around ((definition method-definition) &optional qualified)

When QUALIFIED, append method DEFINITION’s qualifiers and specializers.

Source

symbol.lisp.

Method: safe-name ((definition symbol-definition) &optional qualified)

Reveal symbol DEFINITION’s name, possibly QUALIFIED.
A QUALIFIED name is of the form "package:[:]symbol", maybe in a setf list. Uninterned symbols are denoted by the ∅ package.

Source

symbol.lisp.

Method: safe-name ((definition definition) &optional qualified)

Reveal unqualifiable DEFINITION’s name. This is the default method.

Generic Function: source-pathname (definition)

Return DEFINITION’s source pathname.

Package

net.didierverna.declt.assess.

Source

definition.lisp.

Methods
Method: source-pathname ((definition component-definition))

Return component DEFINITION’s source pathname.
This actually is the corresponding system’s source file.

Source

asdf.lisp.

Method: source-pathname ((definition alias-definition))

Return NIL.
Aliases are defined dynamically so it’s impossible to locate the code being executed.

Source

symbol.lisp.

Method: source-pathname ((definition slot-definition))

Return slot DEFINITION’s owner source pathname.

Source

symbol.lisp.

Method: source-pathname ((definition combination-definition))

Return method combination DEFINITION’s source pathname.

Source

symbol.lisp.

Method: source-pathname ((definition expander-definition))

Return setf expander DEFINITION’s source pathname.

Source

symbol.lisp.

Method: source-pathname ((definition type-definition))

Return type DEFINITION’s source pathname.

Source

symbol.lisp.

Method: source-pathname ((definition symbol-macro-definition))

Return symbol macro DEFINITION’s source pathname.

Source

symbol.lisp.

Method: source-pathname ((definition special-definition))

Return special DEFINITION’s source pathname.

Source

symbol.lisp.

Method: source-pathname ((definition constant-definition))

Return constant DEFINITION’s source pathname.

Source

symbol.lisp.

Method: source-pathname (definition)

Return DEFINITION’s object source pathname (this is the default method).

Generic Function: stabilize (definition definitions packages pathnames)

Stabilize DEFINITION in DEFINITIONS and domestic PACKAGES and PATHNAMES.

Package

net.didierverna.declt.assess.

Source

finalize.lisp.

Method Combination

progn.

Options

:most-specific-first

Methods
Method: stabilize progn ((definition system-definition) definitions packages pathnames)

Compute system DEFINITION’s defsystem dependency definitions. Those definitions are guaranteed to be in the original system’s order.

Method: stabilize progn ((definition module-definition) definitions packages pathnames)

Compute module DEFINITION’s child definitions.
Those definitions are guaranteed to be in the module’s original order.

Method: stabilize progn ((definition lisp-file-definition) definitions packages pathnames)

Compute Lisp file DEFINITION’s definitions list.

Method: stabilize progn ((definition component-definition) definitions packages pathnames)

Compute component DEFINITION’s parent and dependency definitions. Those definitions are guaranteed to be in the original component’s order.

Method: stabilize progn ((definition package-definition) definitions packages pathnames)

Compute package DEFINITION’s use, used-by, and definitions lists. New foreign package definitions may be created and added at the end of DEFINITIONS in the process.

Method: stabilize progn ((definition function-alias-definition) definitions packages pathnames)

Compute simple function alias DEFINITION’s referee.

Method: stabilize progn ((definition compiler-macro-alias-definition) definitions packages pathnames)

Compute compiler macro alias DEFINITION’s referee.

Method: stabilize progn ((definition macro-alias-definition) definitions packages pathnames)

Compute macro alias DEFINITION’s referee.

Method: stabilize progn ((definition typed-structure-slot-definition) definitions packages pathnames)

Compute typed structure slot DEFINITION’s reader and writer definitions.

Method: stabilize progn ((definition clos-slot-definition) definitions packages pathnames)

Compute CLOS slot DEFINITION’s reader and writer definitions.

Method: stabilize progn ((definition clos-classoid-mixin) definitions packages pathnames)

Compute classoid DEFINITION’s super/sub classoids, and method definitions.

Method: stabilize progn ((definition method-definition) definitions packages pathnames)

Compute method DEFINITION’s owner, and specializer references.

Method: stabilize progn ((definition short-combination-definition) definitions packages pathnames)

Compute short combination DEFINITION’s standalone combinator definition.

Method: stabilize progn ((definition combination-definition) definitions packages pathnames)

Compute method combination DEFINITION’s users.

Method: stabilize progn ((definition generic-function-definition) definitions packages pathnames)

Compute generic function DEFINITION’s methods, and combination definition.

Method: stabilize progn ((definition short-expander-definition) definitions packages pathnames)

Compute short setf expander DEFINITION’s standalone writer definition.

Method: stabilize progn ((definition expander-definition) definitions packages pathnames)

Compute setf expander DEFINTIION’s standalone reader definition.

Method: stabilize progn ((definition setfable-funcoid-definition) definitions packages pathnames)

Compute DEFINITION’s expander-for and expanders-to references.

Method: stabilize progn ((definition symbol-definition) definitions packages pathnames)

Compute symbol DEFINITION’s home package definition.
New foreign package definitions may be created and added at the end of DEFINITIONS in the process.

Method: stabilize progn ((definition definition) definitions packages pathnames)

Compute DEFINITION’s source file definition.


Next: Method combinations, Previous: Ordinary functions, Up: Internals   [Contents][Index]