User Tools


Differences

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

Link to this comparison view

cl:functions:next-method-p [2019/07/14 17:00]
cl:functions:next-method-p [2019/09/20 06:00] (current)
Line 1: Line 1:
 +====== Local Function NEXT-METHOD-P ======
 +
 +====Syntax====
 +  * **next-method-p** → //​generalized-boolean//​
 +
 +====Arguments and Values====
 +  * //​generalized-boolean//​ - a //​[[CL:​Glossary:​generalized boolean]]//​.
 +
 +====Description====
 +The locally defined function **next-method-p** can be used within the body //​[[CL:​Glossary:​form|forms]]//​ (but not the //​[[CL:​Glossary:​lambda list]]//) defined by a //​[[CL:​Glossary:​method-defining form]]// to determine whether a next //​[[CL:​Glossary:​method]]//​ exists.
 +
 +The //​[[CL:​Glossary:​function]]//​ **next-method-p** has //​[[CL:​Glossary:​lexical scope]]// and //​[[CL:​Glossary:​indefinite extent]]//.
 +
 +Whether or not **next-method-p** is //​[[CL:​Glossary:​fbound]]//​ in the //​[[CL:​Glossary:​global environment]]//​ is //​[[CL:​Glossary:​implementation-dependent]]//;​ however, the restrictions on redefinition and //​[[CL:​Glossary:​shadowing]]//​ of **next-method-p** are the same as for //​[[CL:​Glossary:​symbols]]//​ in the **''​common-lisp''​** //​[[CL:​Glossary:​package]]//​ which are //​[[CL:​Glossary:​fbound]]//​ in the //​[[CL:​Glossary:​global environment]]//​. The consequences of attempting to use **next-method-p** outside of a //​[[CL:​Glossary:​method-defining form]]// are undefined.
 +
 +====Examples====
 +None.
 +
 +====Affected By====
 +None.
 +
 +====Exceptional Situations====
 +None.
 +
 +====See Also====
 +  * **[[CL:​Functions:​call-next-method|Function CALL-NEXT-METHOD]]**
 +  * **[[CL:​Macros:​defmethod|Macro DEFMETHOD]]**
 +  * **[[CL:​Macros:​call-method|Macro CALL-METHOD]]**
 +
 +====Notes====
 +None.
 +
 +\issue{METHOD-INITFORM:​FORBID-CALL-NEXT-METHOD} \issue{LEXICAL-CONSTRUCT-GLOBAL-DEFINITION:​UNDEFINED}