User Tools


Differences

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

Link to this comparison view

cl:functions:invalid-method-error [2019/11/11 05:00]
cl:functions:invalid-method-error [2019/11/15 20:00] (current)
Line 1: Line 1:
 +====== Function INVALID-METHOD-ERROR ======
 +
 +====Syntax====
 +  * **invalid-method-error** //method format-control ''&​rest''​ args// → //​[[CL:​Glossary:​implementation-dependent]]//​
 +
 +====Arguments and Values====
 +  * //method// - a //​[[CL:​Glossary:​method]]//​.
 +  * //​format-control//​ - a //​[[CL:​Glossary:​format control]]//​.
 +  * //args// - //​[[CL:​Glossary:​format arguments]]//​ for the //​format-control//​.
 +
 +====Description====
 +The //​[[CL:​Glossary:​function]]//​ **invalid-method-error** is used to signal an error of type **[[CL:​Types:​error]]** when there is an applicable //​[[CL:​Glossary:​method]]//​ whose //​[[CL:​Glossary:​qualifier|qualifiers]]//​ are not valid for the method combination type. The error message is constructed by using the //​format-control//​ suitable for **[[CL:​Functions:​format]]** and any //args// to it. Because an implementation may need to add additional contextual information to the error message, **invalid-method-error** should be called only within the dynamic extent of a method combination function.
 +
 +The //​[[CL:​Glossary:​function]]//​ **invalid-method-error** is called automatically when a //​[[CL:​Glossary:​method]]//​ fails to satisfy every //​[[CL:​Glossary:​qualifier]]//​ pattern and predicate in a **[[CL:​Macros:​define-method-combination]]** //​[[CL:​Glossary:​form]]//​. A method combination function that imposes additional restrictions should call **invalid-method-error** explicitly if it encounters a //​[[CL:​Glossary:​method]]//​ it cannot accept.
 +
 +Whether **invalid-method-error** returns to its caller or exits via **[[CL:​Special Operators:​throw]]** is //​[[CL:​Glossary:​implementation-dependent]]//​.
 +
 +====Examples====
 +None.
 +
 +====Side Effects====
 +The debugger might be entered.
 +
 +====Affected By====
 +**[[CL:​Variables:​star-break-on-signals-star|*break-on-signals*]]**
 +
 +====Exceptional Situations====
 +None.
 +
 +====See Also====
 +**[[CL:​Macros:​define-method-combination|Macro DEFINE-METHOD-COMBINATION]]**
 +
 +====Notes====
 +None.
 +
 +\issue{FORMAT-STRING-ARGUMENTS:​SPECIFY}