User Tools


Differences

This shows you the differences between two versions of the page.

Link to this comparison view

cl:functions:add-method [2019/07/14 17:00]
cl:functions:add-method [2019/07/18 14:00] (current)
Line 1: Line 1:
 +====== Standard Generic Function ADD-METHOD ======
 +
 +====Syntax====
 +  * **add-method** //​generic-function method// → //​generic-function//​
 +
 +====Method Signatures====
 +  * **add-method** (//​generic-function//​ **[[CL:​Types:​standard-generic-function]]**) (//method// **[[CL:​Types:​method]]**)
 +
 +====Arguments and Values====
 +  * //​generic-function//​ - a //​[[CL:​Glossary:​generic function]]//​ //​[[CL:​Glossary:​object]]//​.
 +  * //method// - a //​[[CL:​Glossary:​method]]//​ //​[[CL:​Glossary:​object]]//​.
 +
 +====Description====
 +The generic function **add-method** adds a //​[[CL:​Glossary:​method]]//​ to a //​[[CL:​Glossary:​generic function]]//​.
 +
 +If //method// agrees with an existing //​[[CL:​Glossary:​method]]//​ of //​generic-function//​ on //​[[CL:​Glossary:​parameter specializer|parameter specializers]]//​ and //​[[CL:​Glossary:​qualifier|qualifiers]]//,​ the existing //​[[CL:​Glossary:​method]]//​ is replaced.
 +
 +====Examples====
 +None.
 +
 +====Affected By====
 +None.
 +
 +====Exceptional Situations====
 +The //​[[CL:​Glossary:​lambda list]]// of the method function of //method// must be congruent with the //​[[CL:​Glossary:​lambda list]]// of //​generic-function//,​ or an error of type **[[CL:​Types:​error]]** is signaled.
 +
 +If //method// is a //​[[CL:​Glossary:​method]]//​ //​[[CL:​Glossary:​object]]//​ of another //​[[CL:​Glossary:​generic function]]//,​ an error of type **[[CL:​Types:​error]]** is signaled.
 +
 +====See Also====
 +  * **[[CL:​Macros:​defmethod|Macro DEFMETHOD]]**
 +  * **[[CL:​Macros:​defgeneric|Macro DEFGENERIC]]**
 +  * **[[CL:​Functions:​find-method|Generic Class FIND-METHOD]]**
 +  * **[[CL:​Functions:​remove-method|Generic Class REMOVE-METHOD]]**
 +  * {\secref\SpecializerQualifierAgreement}
 +
 +====Notes====
 +None.
 +