summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEli Zaretskii <eliz@gnu.org>2018-10-30 12:14:19 +0200
committerEli Zaretskii <eliz@gnu.org>2018-10-30 12:14:19 +0200
commit38f88a7f00c654a1710b1156150e93e298a0e217 (patch)
tree93f5cfbbec765d8f00f742dd7cd6e52bab1f4554
parent5aeddfac2a55824f700c8913536d665e23afd73d (diff)
downloademacs-38f88a7f00c654a1710b1156150e93e298a0e217.tar.gz
Document that generic functions cannot be commands
* doc/lispref/commands.texi (Defining Commands): * doc/lispref/functions.texi (Generic Functions): Document that generic functions cannot be turned into commands. (Bug#33170)
-rw-r--r--doc/lispref/commands.texi3
-rw-r--r--doc/lispref/functions.texi7
2 files changed, 10 insertions, 0 deletions
diff --git a/doc/lispref/commands.texi b/doc/lispref/commands.texi
index 49c839a8971..427379bc79c 100644
--- a/doc/lispref/commands.texi
+++ b/doc/lispref/commands.texi
@@ -136,6 +136,9 @@ start with a capital, e.g., @code{"use (system-name) instead."}); @code{t}; any
other symbol, which should be an alternative function to use in Lisp
code.
+Generic functions (@pxref{Generic Functions}) cannot be turned into
+commands by adding the @code{interactive} form to them.
+
@menu
* Using Interactive:: General rules for @code{interactive}.
* Interactive Codes:: The standard letter-codes for reading arguments
diff --git a/doc/lispref/functions.texi b/doc/lispref/functions.texi
index 9b8057080ea..242d754dea9 100644
--- a/doc/lispref/functions.texi
+++ b/doc/lispref/functions.texi
@@ -1345,6 +1345,13 @@ to invoke the other auxiliary or primary methods.
This allows you to add more methods, distinguished by @var{string},
for the same specializers and qualifiers.
@end table
+
+Functions defined using @code{cl-defmethod} cannot be made
+interactive, i.e.@: commands (@pxref{Defining Commands}), by adding
+the @code{interactive} form to them. If you need a polymorphic
+command, we recommend defining a normal command that calls a
+polymorphic function defined via @code{cl-defgeneric} and
+@code{cl-defmethod}.
@end defmac
@cindex dispatch of methods for generic function