This is the definitions Reference Manual, version 1.0.0, generated automatically by Declt version 4.0 beta 2 "William Riker" on Sun Dec 08 17:55:28 2024 GMT+0.
The main system appears first, followed by any subsystem dependency.
definitions
General definitions reflection library.
Yukari Hafner <shinmera@tymoon.eu>
Yukari Hafner <shinmera@tymoon.eu>
(GIT https://github.com/Shinmera/definitions.git)
zlib
1.0.0
documentation-utils
(system).
sb-introspect
(system)., required, for feature :sbcl
sb-cltl2
(system)., required, for feature :sbcl
package.lisp
(file).
protocol.lisp
(file).
base-types.lisp
(file).
ccl.lisp
(file).
sbcl.lisp
(file).
clasp.lisp
(file).
documentation.lisp
(file).
Files are sorted by type and then listed depth-first from the systems components trees.
definitions/definitions.asd
definitions/package.lisp
definitions/protocol.lisp
definitions/base-types.lisp
definitions/ccl.lisp
definitions/sbcl.lisp
definitions/clasp.lisp
definitions/documentation.lisp
definitions/protocol.lisp
package.lisp
(file).
definitions
(system).
apropos-definitions
(function).
arguments
(generic function).
bind
(generic function).
binding-exists
(condition).
callable
(class).
define-definition-resolver
(macro).
define-simple-definition-resolver
(macro).
define-simple-documentation-lookup
(macro).
define-simple-object-lookup
(macro).
define-simple-type-map
(macro).
definition
(class).
definition-p
(generic function).
definition-resolver
(function).
(setf definition-resolver)
(function).
designator
(generic function).
documentation
(generic function).
find-definitions
(generic function).
global-definition
(class).
initialize-instance
(method).
name
(generic function).
object
(generic function).
(setf object)
(generic function).
package
(generic reader).
print-object
(method).
remove-definition-resolver
(function).
source-location
(generic function).
symbol
(generic function).
type
(generic function).
unbind
(generic function).
visibility
(generic function).
who-defines
(generic function).
*definition-resolvers*
(special variable).
definitions/base-types.lisp
protocol.lisp
(file).
definitions
(system).
bind
(method).
bind
(method).
bind
(method).
bind
(method).
bind
(method).
bind
(method).
bind
(method).
class
(class).
compiler-macro
(class).
condition
(class).
constant
(class).
designator
(method).
documentation
(method).
documentation
(method).
documentation
(method).
documentation
(method).
documentation
(method).
documentation
(method).
documentation
(method).
documentation
(method).
documentation
(method).
documentation
(method).
documentation
(method).
documentation
(method).
function
(class).
generic-function
(class).
initialize-instance
(method).
macro
(class).
method
(class).
method-combination
(class).
name
(method).
object
(method).
object
(method).
object
(method).
object
(method).
object
(reader method).
object
(reader method).
(setf object)
(method).
(setf object)
(method).
(setf object)
(method).
(setf object)
(method).
(setf object)
(method).
(setf object)
(method).
package
(class).
qualifiers
(generic function).
setf-expander
(class).
special-operator
(class).
special-variable
(class).
structure
(class).
symbol
(method).
symbol-macro
(class).
type
(method).
type
(method).
type
(method).
type
(method).
type
(method).
type
(method).
type
(method).
type
(method).
type
(method).
type
(method).
type
(method).
type
(method).
type
(method).
type
(method).
type
(method).
type
(method).
type
(method).
type
(method).
type
(class).
type-definition
(class).
unbind
(method).
unbind
(method).
unbind
(method).
unbind
(method).
unbind
(method).
unbind
(method).
unbind
(method).
variable
(class).
visibility
(method).
designator-class-p
(function).
designator-condition-p
(function).
designator-constant-p
(function).
designator-function-p
(function).
designator-generic-function-p
(function).
designator-structure-p
(function).
designator-symbol-macro-p
(function).
definitions/ccl.lisp
:ccl
base-types.lisp
(file).
definitions
(system).
definitions/sbcl.lisp
:sbcl
ccl.lisp
(file).
base-types.lisp
(file).
definitions
(system).
alien-type
(class).
arguments
(method).
arguments
(method).
arguments
(method).
declaration
(class).
global
(class).
ir1-convert
(class).
object
(reader method).
object
(reader method).
object
(method).
object
(method).
object
(method).
object
(method).
object
(method).
optimizer
(class).
source-location
(method).
source-location
(method).
source-location
(method).
source-location
(method).
source-location
(method).
source-location
(method).
source-location
(method).
source-location
(method).
source-location
(method).
source-location
(method).
source-location
(method).
source-location
(method).
source-location
(method).
source-location
(method).
source-location
(method).
source-location
(method).
source-location
(method).
source-location
(method).
source-location
(method).
source-location
(method).
source-location
(method).
source-location
(method).
source-transform
(class).
transform
(class).
type
(method).
type
(method).
type
(method).
type
(method).
type
(method).
type
(method).
type
(method).
type
(method).
vop
(class).
define-definition-introspect-type
(macro).
transform-definition-source
(function).
definitions/clasp.lisp
:clasp
sbcl.lisp
(file).
ccl.lisp
(file).
base-types.lisp
(file).
definitions
(system).
definitions/documentation.lisp
clasp.lisp
(file).
sbcl.lisp
(file).
ccl.lisp
(file).
base-types.lisp
(file).
definitions
(system).
Packages are listed by definition order.
definitions
org.shirakumo.definitions
common-lisp
.
alien-type
(class).
apropos-definitions
(function).
arguments
(generic function).
bind
(generic function).
binding-exists
(condition).
callable
(class).
class
(class).
compiler-macro
(class).
condition
(class).
constant
(class).
declaration
(class).
define-definition-resolver
(macro).
define-simple-definition-resolver
(macro).
define-simple-documentation-lookup
(macro).
define-simple-object-lookup
(macro).
define-simple-type-map
(macro).
definition
(class).
definition-p
(generic function).
definition-resolver
(function).
(setf definition-resolver)
(function).
designator
(generic function).
documentation
(generic function).
find-definitions
(generic function).
function
(class).
generic-function
(class).
global
(class).
global-definition
(class).
ir1-convert
(class).
macro
(class).
method
(class).
method-combination
(class).
name
(generic function).
object
(generic function).
(setf object)
(generic function).
optimizer
(class).
package
(generic reader).
package
(class).
qualifiers
(generic function).
remove-definition-resolver
(function).
setf-expander
(class).
source-location
(generic function).
source-transform
(class).
special-operator
(class).
special-variable
(class).
structure
(class).
symbol
(generic function).
symbol-macro
(class).
transform
(class).
type
(generic function).
type
(class).
type-definition
(class).
unbind
(generic function).
variable
(class).
visibility
(generic function).
vop
(class).
who-defines
(generic function).
*definition-resolvers*
(special variable).
define-definition-introspect-type
(macro).
designator-class-p
(function).
designator-condition-p
(function).
designator-constant-p
(function).
designator-function-p
(function).
designator-generic-function-p
(function).
designator-structure-p
(function).
designator-symbol-macro-p
(function).
transform-definition-source
(function).
Definitions are sorted by export status, category, package, and then by lexicographic order.
Define a new definition resolver.
This is mostly provided as a shorthand.
See DEFINITION-RESOLVER
A simpler form to define a definition resolver.
This comes in two forms, short-form and long-form:
SHORT-FORM
In this form, only LOOKUP-FUNCTION is provided, and must be a
symbol that names the test-function.
LONG-FORM
In this form, LOOKUP-FUNCTION is a lambda-list, and BODY is
the forms that make up the test-function.
If the test-function returns successfully and returns non-NIL,
then the definition resolver returns a list with a single
instance of the given CLASS, providing the designator as the
initarg for :DESIGNATOR.
The name of the definition resolver is set to CLASS.
See DEFINE-DEFINITION-RESOLVER
A simpler form to define the documentation lookup.
This simply delegates the lookup to CL:DOCUMENTATION, using the
provided arguments. If the DOCUMENTATION-TYPE is T, then
CL:DOCUMENTATION is called with the OBJECT of the definition.
Otherwise, CL:DOCUMENTATION is called with the DESIGNATOR of the
definition and the provided DOCUMENTATION-TYPE.
See DOCUMENTATION
See CL:DOCUMENTATION
See OBJECT
See DESIGNATOR
A simpler form to define the OBJECT method.
This comes in two forms, short-form and long-form:
SHORT-FORM
In this form, only LOOKUP-FUNCTION is provided, and must be
a symbol that names the lookup-function.
LONG-FORM
In this form, LOOKUP-FUNCTION is a lambda-list, and BODY is
the forms that make up the lookup-function.
The lookup-function must accept a single argument, the
definition instance, and must either return the object that the
definition defines, or two values: NIL and :UNKNOWN.
See OBJECT
A simpler form to define the type lookup.
This simply defines a method on TYPE for the given class,
returning the TYPE symbol.
See TYPE
Fuzzily search for definitions matching the given string.
The search is fuzzy in the following way:
If a symbol’s name contains the search string regardless of case,
then the symbol is considered to match, and all definitions
designated by the symbol are included in the
result.
See FIND-DEFINITIONS
Accessor to the definition resolver of the given name.
A definition resolver is a function that accepts two arguments,
a designator and a package, and returns a list of DEFINITION
instances that are named by this designator.
See DEFINITION
See REMOVE-DEFINITION-RESOLVER
See DEFINE-DEFINITION-RESOLVER
See DEFINE-SIMPLE-DEFINITION-RESOLVER
Removes the definition resolver of the given name.
See DEFINITION-RESOLVER
Returns the lambda-list of the callable.
The secondary value of this function is :UNKNOWN if no known
method of retrieving the lambda-list is available. In that
case, the primary value is always NIL.
A call to this function for any subtype of CALLABLE must
not error.
See CALLABLE
Creates a new definition binding.
Returns the canonical designator for the new binding.
DESIGNATOR must be a designator to which a binding should be
established. The designator may be normalised to some other, canonical
designator.
TYPE must be the name or an instance of a definition type for which a
new binding should be established. If it is a name, it is
automatically coerced to an instance of the definition type. Note that
this parameter is purely for dispatch purposes. Modifying or
inspecting the instance in any way leads to undefined behaviour.
OBJECT must be some object in a predefined format that contains the definition information to which the new binding will point. What the structure of this object should be depends on the definition to bind.
If a binding of the given type for the given designator already
exists, or the new binding would conflict with another existing
binding in some way, an error of type BINDING-EXISTS must be
signalled.
If the binding protocol is not implemented, an error of type
NO-APPLICABLE-METHOD is signalled.
If you add custom definition types, you are encouraged to add methods
to this function that allow standardised addition of new definition
bindings.
Once a call to this function returns successfully, DEFINITION-P of the
used designator and type must return T.
See (SETF OBJECT)
See UNBIND
symbol
) (type symbol-macro
) object) ¶symbol
) (type special-variable
) object) ¶compiler-macro
) (object function
)) ¶symbol
) object) ¶Test whether a designator is designating a definition of the given type.
You may pass T for the type to test whether the designator is
designating any definition at all.
This has the same semantics as calling FIND-DEFINITIONS with the
designator, package, and type passed along, and checking that
the returned list of definitions isn’t empty.
See FIND-DEFINITIONS
Returns the designator that names this definition.
Note that a single designator may name many definitions.
A call to this function for any subtype of DEFINITION must
not error.
See DEFINITION
global-definition
)) ¶automatically generated reader method
binding-exists
)) ¶Returns the documentation string associated with this definition.
This may be NIL if no documentation is defined or known.
The secondary value of this function is :UNKNOWN if no known
method of retrieving the docstring is available. In that case,
the primary value is always NIL.
A call to this function for any subtype of DEFINITION must
not error.
See DEFINITION
method-combination
)) ¶setf-expander
)) ¶compiler-macro
)) ¶special-operator
)) ¶global-definition
)) ¶Find applicable definitions for the given designator.
Depending on the type of the designator, the following happens:
PACKAGE — FIND-DEFINITIONS is called for each symbol in the
package, regardless of whether the symbol was
inherited, or internal.
STRING — FIND-DEFINITIONS is called on the package returned
by FIND-PACKAGE on the designator. If no package
is found, an error is signalled.
T — All definitions found by the definition resolvers
for the designator are returned as a single list.
This function should not error except for the above mentioned
case when a string is passed that does not name a package.
The package argument designates the package that the global
definitions should be relative to. This is mostly relevant for
the visibility of the definition.
The type argument allows you to constrain the search to
definitions of the given type.
See DEFINITION
See APROPOS-DEFINITIONS
See DEFINITION-RESOLVER
Returns the name of this definition as a string.
For certain definitions this may be the same as the DESIGNATOR,
or merely a simple mapping of the designator to a string.
This function may return NIL if it is not applicable to reduce
the designator to a string name.
A call to this function for any subtype of DEFINITION must
not error.
See DEFINITION
global-definition
)) ¶Returns the object that this definition defines.
The secondary value of this function is :UNKNOWN if no known
method of retrieving the object is available. In that case,
the primary value is always NIL.
A call to this function for any subtype of DEFINITION must
not error.
See DEFINITION
method-combination
)) ¶setf-expander
)) ¶type-definition
)) ¶compiler-macro
)) ¶global-definition
)) ¶Updates an existing definition binding.
Returns the passed OBJECT.
OBJECT must be some object in a predefined format that contains the definition information to which the new binding will point. What the structure of this object should be depends on the definition to bind.
If the updating protocol is not implemented, an error of type
NO-APPLICABLE-METHOD is signalled.
If you add custom definition types, you are encouraged to add methods
to this function that allow standardised updating of definition
bindings.
See BIND
See UNBIND
special-variable
)) ¶symbol-macro
)) ¶compiler-macro
)) ¶Returns the package this definition is tied to.
Typically this can be derived from the SYMBOL of the definition.
This function is primarily provided for completeness and ease
of use.
This function may return NIL if it is not applicable for the
definition to be tied to a particular package.
A call to this function for any subtype of DEFINITION must
not error.
See DEFINITION
global-definition
)) ¶automatically generated reader method
Returns the list of qualifiers used for the method.
A call to this function for any subtype of METHOD must
not error.
See METHOD
Returns the source location information of this definition.
A successful return will have the form of a plist with the
following keys and values:
:FILE — A pathname to the file in which the definition
was made. This pathname may be logical.
:FORM — The number of the toplevel form in which this
definition was made. This means that in order
to read the definition, this number of calls+1
to READ must be made. This value may be NIL.
:OFFSET — The offset in characters at which this
definition was made. If :FORM is given, this
offset is within the form that is indicated by
the :FORM value. Otherwise, this offset is in
terms of FILE-POSITION from the beginning of
the file.
This may be NIL if no source location is available or known.
The secondary value of this function is :UNKNOWN if no known
method of retrieving the source location is available. In
that case, the primary value is always NIL.
A call to this function for any subtype of DEFINITION must
not error.
See DEFINITION
ir1-convert
)) ¶source-transform
)) ¶alien-type
)) ¶special-variable
)) ¶symbol-macro
)) ¶method-combination
)) ¶generic-function
)) ¶compiler-macro
)) ¶type-definition
)) ¶global-definition
)) ¶Returns the symbol naming this definition.
This is different from the designator in the sense that the
designator may be a compound expression that can be mapped to
a single symbol. For instance, the (SETF FOO) designator would
be reduced to the symbol FOO.
This function may return NIL if it is not applicable to reduce
the designator to a symbol.
A call to this function for any subtype of DEFINITION must
not error.
See DEFINITION
global-definition
)) ¶Returns the type of the object the definition defines.
For cases where the definition can be instantiated, this is
equivalent to calling TYPE-OF on an instance of such a
definition.
This function may NOT return NIL, and must always return some symbol that can be used to identify the type of the definition.
Note that this symbol is not necessarily unique to the type of
the definition, meaning multiple definitions may share the same
name.
A call to this function for any subtype of DEFINITION must
not error.
See DEFINITION
declaration
)) ¶ir1-convert
)) ¶source-transform
)) ¶alien-type
)) ¶symbol-macro
)) ¶special-variable
)) ¶type-definition
)) ¶method-combination
)) ¶generic-function
)) ¶setf-expander
)) ¶compiler-macro
)) ¶special-operator
)) ¶binding-exists
)) ¶type
.
Removes the definition binding.
If the given definition is already unbound, this function does
nothing.
If the unbinding protocol is not implemented for the given definition
type, an error of type NO-APPLICABLE-METHOD is signalled.
If you add custom definition types, you are encouraged to add methods
to this function that allow standardised removal of definition
bindings.
Once a call to this function returns successfully, DEFINITION-P of the
designator and type of the definition must return NIL.
See (SETF OBJECT)
See BIND
special-variable
)) ¶compiler-macro
)) ¶Returns the visibility of the definition from its package.
Returns one of the symbol status designators:
:INTERNAL :EXTERNAL :INHERITED NIL
A call to this function for any subtype of DEFINITION must
not error.
See CL:FIND-SYMBOL
See DEFINITION
global-definition
)) ¶Return all known definitions for a defined object.
Returns a list of DEFINITIONs.
This will attempt to do a reverse lookup of sorts. Given an object
returned by OBJECT for a DEFINITION, this function should return said
DEFINITION, and possibly others that bind the same object.
This call can be costly as the default procedure relies on scanning
through all known definitions to do the reverse lookup.
See DEFINITION
See OBJECT
global-definition
) &key package) ¶definition
) stream) ¶Error signalled when a new binding conflicts with an existing one.
The condition contains the DESIGNATOR and TYPE that the conflicting
binding was intended to be for.
See TYPE
See DESIGNATOR
See BIND
error
.
:designator
This slot is read-only.
Alien-type definition representation.
See GLOBAL-DEFINITION
Superclass for all definitions that represent objects that may be called.
See DEFINITION
See ARGUMENTS
Class definition representation.
Note that this does not include conditions, or structures.
See GLOBAL-DEFINITION
type
.
Compiler-macro definition representation.
See GLOBAL-DEFINITION
Condition definition representation.
See GLOBAL-DEFINITION
type
.
Constant definition representation.
See GLOBAL-DEFINITION
Declaration definition representation.
See GLOBAL-DEFINITION
type
.
Base class for all definitions.
Any definition type MUST subclass this class.
See DESIGNATOR
See OBJECT
See SYMBOL
See NAME
See PACKAGE
See TYPE
See VISIBILITY
See DOCUMENTATION
See SOURCE-LOCATION
Function definition representation.
Note that this does not include macros, compiler-macros, setf-
expanders, or methods.
See GLOBAL-DEFINITION
Generic-function definition representation.
See GLOBAL-DEFINITION
Superclass for global definitions reachable by a simple designator.
This class provides standard implementations for
OBJECT, SYMBOL, NAME, PACKAGE, VISIBILITY, DOCUMENTATION, and
SOURCE-LOCATION. This means that all that’s necessary to reach
compliance for a new subtype of GLOBAL-DEFINITION is the
implementation of an appropriate TYPE method.
However, specific implementations of the other functions,
particularly OBJECT, and DOCUMENTATION are usually needed in
order to make all the information available.
See DEFINITION
See DESIGNATOR
Initarg | Value |
---|---|
:designator | (error designator required.) |
:designator
This slot is read-only.
IR1-Convert definition representation.
See GLOBAL-DEFINITION
Macro definition representation.
Note that this does not include compiler-macros, setf-expanders,
or symbol-macros.
See GLOBAL-DEFINITION
Method definition representation.
Note that this is not discoverable portably.
See QUALIFIERS
See GLOBAL-DEFINITION
Method-combination definition representation.
Note that this is not discoverable portably.
See GLOBAL-DEFINITION
Optimizer definition representation.
See GLOBAL-DEFINITION
Package definition representation.
See GLOBAL-DEFINITION
Setf-expander definition representation.
Note that this is not discoverable portably.
Note that this does not include functions with a (SETF ..)
designator.
See GLOBAL-DEFINITION
Source-transform definition representation.
See GLOBAL-DEFINITION
Special variable definition representation.
Note that this is not discoverable portably.
See GLOBAL-DEFINITION
Structure definition representation.
Note that this may not include structures that are defined
as :VECTOR types.
See GLOBAL-DEFINITION
type
.
Symbol-macro definition representation.
Note that this is not discoverable portably.
See GLOBAL-DEFINITION
Transform definition representation.
See GLOBAL-DEFINITION
Superclass that represents type definitions.
See GLOBAL-DEFINITION
Type definition representation.
Note that this is not discoverable portably. Note that this is only for TYPEDEF-defined types.
See GLOBAL-DEFINITION
type
.
Superclass that represents variable definitions.
See GLOBAL-DEFINITION
VOP definition representation.
See GLOBAL-DEFINITION
This variable contains the map from names to definition resolver functions.
See DEFINITION-RESOLVER
See REMOVE-DEFINITION-RESOLVER
Defines a SOURCE-LOCATION method that uses FIND-DEFINITION-SOURCES-BY-NAME.
The supplied type-name is passed on to FIND-DEFINITION-SOURCES-BY-NAME.
See SOURCE-LOCATION
See SB-INTROSPECT:FIND-DEFINITION-SOURCES-BY-NAME
Translates a DEFINITION-SOURCE instance into the expected format.
See SB-INTROSPECT:DEFINITION-SOURCE
Jump to: | (
A B D F G I M N O P Q R S T U V W |
---|
Jump to: | (
A B D F G I M N O P Q R S T U V W |
---|
Jump to: | *
D M O P S T |
---|
Jump to: | *
D M O P S T |
---|
Jump to: | A B C D F G I M O P S T V |
---|
Jump to: | A B C D F G I M O P S T V |
---|