CLOS:EQL-SPECIALIZER-OBJECT
(CLOS:EQL-SPECIALIZER-OBJECT
eql-specializer
)
eql-specializer
EQL
specializer metaobject.
This function returns the object associated with
eql-specializer
during initialization.
The value is guaranteed to be EQL
to the value originally passed
to CLOS:INTERN-EQL-SPECIALIZER
, but it is not necessarily EQ
to that
value.
This function SIGNAL
s an ERROR
if
eql-specializer
is not an EQL
specializer.
CLOS:INTERN-EQL-SPECIALIZER
(CLOS:INTERN-EQL-SPECIALIZER
object
)
object
EQL
specializer metaobject for object
.
EQL
specializer
metaobject for object
, creating one if necessary. Two calls to
CLOS:INTERN-EQL-SPECIALIZER
with EQL
arguments will return the same
(i.e., EQ
) value.Remarks. The result of calling CLOS:EQL-SPECIALIZER-OBJECT
on the result of a
call to CLOS:INTERN-EQL-SPECIALIZER
is only guaranteed to be EQL
to the
original object
argument, not necessarily EQ
.
CLOS:SPECIALIZER-DIRECT-METHODS
(CLOS:SPECIALIZER-DIRECT-METHODS
specializer
)
specializer
specializer
as a specializer. The elements of this set are
method metaobjects. This value is maintained by the generic
functions CLOS:ADD-DIRECT-METHOD
and CLOS:REMOVE-DIRECT-METHOD
.
Methods
(CLOS:SPECIALIZER-DIRECT-METHODS
(specializer
CLASS
))
No behavior is specified for this method beyond that which is specified for the generic function.
This method cannot be overridden unless the following methods are overridden as well:
(CLOS:SPECIALIZER-DIRECT-METHODS
(specializer
CLOS:EQL-SPECIALIZER
))
CLOS:SPECIALIZER-DIRECT-GENERIC-FUNCTIONS
(CLOS:SPECIALIZER-DIRECT-GENERIC-FUNCTIONS
specializer
)
specializer
specializer
as a specializer. The elements of this set are generic function metaobjects. This value
is maintained by the generic functions CLOS:ADD-DIRECT-METHOD
and
CLOS:REMOVE-DIRECT-METHOD
.Methods
(CLOS:SPECIALIZER-DIRECT-GENERIC-FUNCTIONS
(specializer
CLASS
))
No behavior is specified for this method beyond that which is specified for the generic function.
This method cannot be overridden unless the following methods are overridden as well:
(CLOS:SPECIALIZER-DIRECT-GENERIC-FUNCTIONS
(specializer
CLOS:EQL-SPECIALIZER
))
CLOS:ADD-DIRECT-METHOD
(CLOS:ADD-DIRECT-METHOD
specializer
method
)
specializer
method
This generic function is called to maintain a set of
backpointers from a specializer to the set of methods specialized to
it. If method
is already in the set, it is not added again (no
ERROR
is SIGNAL
ed).
This set can be accessed as a list by calling the generic
function CLOS:SPECIALIZER-DIRECT-METHODS
. Methods are removed from the
set by CLOS:REMOVE-DIRECT-METHOD
.
The generic function CLOS:ADD-DIRECT-METHOD
is called by
ADD-METHOD
whenever a method is added to a generic function. It is
called once for each of the specializers of the method. Note that in
cases where a specializer appears more than once in the specializers
of a method, this generic function will be called more than once with
the same specializer as argument.
The results are undefined if the specializer
argument
is not one of the specializers of the method
argument.
Methods
(CLOS:ADD-DIRECT-METHOD
(specializer
CLASS
) (method
METHOD
))
This method implements the behavior of the generic function for class specializers.
No behavior is specified for this method beyond that which is specified for the generic function.
This method cannot be overridden unless the following methods are overridden as well:
(CLOS:ADD-DIRECT-METHOD
(specializer
CLOS:EQL-SPECIALIZER
)
(method
METHOD
))
This method implements the behavior of the generic
function for EQL
specializers.
No behavior is specified for this method beyond that which is specified for the generic function.
CLOS:REMOVE-DIRECT-METHOD
(CLOS:REMOVE-DIRECT-METHOD
specializer
method
)
specializer
method
This generic function is called to maintain a set of
backpointers from a specializer to the set of methods specialized to
it. If method
is in the set it is removed. If it is not, no
ERROR
is SIGNAL
ed.
This set can be accessed as a list by calling the generic
function CLOS:SPECIALIZER-DIRECT-METHODS
. Methods are added to the set
by CLOS:ADD-DIRECT-METHOD
.
The generic function CLOS:REMOVE-DIRECT-METHOD
is called by
REMOVE-METHOD
whenever a method is removed from a generic function.
It is called once for each of the specializers of the method. Note
that in cases where a specializer appears more than once in the
specializers of a method, this generic function will be called more
than once with the same specializer as argument.
The results are undefined if the specializer
argument is
not one of the specializers of the method
argument.
Methods
(CLOS:REMOVE-DIRECT-METHOD
(specializer
CLASS
) (method
METHOD
))
This method implements the behavior of the generic function for class specializers.
No behavior is specified for this method beyond that which is specified for the generic function.
This method cannot be overridden unless the following methods are overridden as well:
(CLOS:REMOVE-DIRECT-METHOD
(specializer
CLOS:EQL-SPECIALIZER
)
(method
METHOD
))
This method implements the behavior of the generic
function for EQL
specializers.
No behavior is specified for this method beyond that which is specified for the generic function.
These notes document CLISP version 2.49.93+ | Last modified: 2018-02-19 |