Package: closer-mop
Generic Function compute-effective-slot-definition
Lambda List
compute-effective-slot-definition (class name dslotds)
Arguments
Return Value
The value returned by this generic function is an effective slot definition metaobject.
Details
This generic function determines the effective slot definition for a slot in a class. It is called by compute-slots once for each slot accessible in instances of class.
This generic function uses the supplied list of direct slot definition metaobjects to compute the inheritance of slot properties for a single slot. The returned effective slot definition represents the result of computing the inheritance. The name of the new effective slot definition is the same as the name of the direct slot definitions supplied.
The class of the effective slot definition metaobject is determined by calling effective-slot-definition-class. The effective slot definition is then created by calling make-instance. The initialization arguments passed in this call to make-instance are used to initialize the new effective slot definition metaobject. See "Initialization of Slot Definition Metaobjects" for details.
This generic function uses the supplied list of direct slot definition metaobjects to compute the inheritance of slot properties for a single slot. The returned effective slot definition represents the result of computing the inheritance. The name of the new effective slot definition is the same as the name of the direct slot definitions supplied.
The class of the effective slot definition metaobject is determined by calling effective-slot-definition-class. The effective slot definition is then created by calling make-instance. The initialization arguments passed in this call to make-instance are used to initialize the new effective slot definition metaobject. See "Initialization of Slot Definition Metaobjects" for details.
Methods
compute-effective-slot-definition (class standard-class) name direct-slot-definitions)
compute-effective-slot-definition (class funcallable-standard-class) name direct-slot-definitions)
This method implements the inheritance and defaulting of slot options
following the rules described in the "Inheritance of Slots and
Options" section of the CLOS Specification.
This method can be extended, but the value returned by the extending method must be the value returned by this method.
This method can be extended, but the value returned by the extending method must be the value returned by this method.
compute-effective-slot-definition (class funcallable-standard-class) name direct-slot-definitions)
This method implements the inheritance and defaulting of slot options
following the rules described in the "Inheritance of Slots and
Options" section of the CLOS Specification.
This method can be extended, but the value returned by the extending method must be the value returned by this method.
This method can be extended, but the value returned by the extending method must be the value returned by this method.