Package: closer-mop
Generic Function compute-slots
Lambda List
compute-slots (class)
Arguments
Return Value
The value returned is a set of effective slot definition metaobjects.
Details
This generic function computes a set of effective slot definition metaobjects for the class class. The result is a list of
effective slot definition metaobjects: one for each slot that will be accessible in instances of class.
This generic function proceeds in 3 steps:
The first step collects the full set of direct slot definitions from the superclasses of class.
The direct slot definitions are then collected into individual lists, one list for each slot name associated with any of the direct slot definitions. The slot names are compared with eql. Each such list is then sorted into class precedence list order. Direct slot definitions coming from classes earlier in the class precedence list of class appear before those coming from classes later in the class precedence list. For each slot name, the generic function compute-effective-slot-definition is called to compute an effective slot definition. The result of compute-slots is a list of these effective slot definitions, in unspecified order.
In the final step, the location for each effective slot definition is set. This is done by specified around-methods; portable methods cannot take over this behavior. For more information on the slot definition locations, see the section "Instance Structure Protocol".
The list returned by this generic function will not be mutated by the implementation. The results are undefined if a portable program mutates the list returned by this generic function.
This generic function proceeds in 3 steps:
The first step collects the full set of direct slot definitions from the superclasses of class.
The direct slot definitions are then collected into individual lists, one list for each slot name associated with any of the direct slot definitions. The slot names are compared with eql. Each such list is then sorted into class precedence list order. Direct slot definitions coming from classes earlier in the class precedence list of class appear before those coming from classes later in the class precedence list. For each slot name, the generic function compute-effective-slot-definition is called to compute an effective slot definition. The result of compute-slots is a list of these effective slot definitions, in unspecified order.
In the final step, the location for each effective slot definition is set. This is done by specified around-methods; portable methods cannot take over this behavior. For more information on the slot definition locations, see the section "Instance Structure Protocol".
The list returned by this generic function will not be mutated by the implementation. The results are undefined if a portable program mutates the list returned by this generic function.
Methods
compute-slots (class standard-class)
compute-slots (class funcallable-standard-class)
compute-slots (class standard-class)
compute-slots (class funcallable-standard-class)
This method implements the specified behavior of the generic function.
This method can be overridden.
This method can be overridden.
compute-slots (class funcallable-standard-class)
This method implements the specified behavior of the generic function.
This method can be overridden.
This method can be overridden.
compute-slots (class standard-class)
This method implements the specified behavior of computing and storing
slot locations. This method cannot be overridden.
compute-slots (class funcallable-standard-class)
This method implements the specified behavior of computing and storing
slot locations. This method cannot be overridden.