Add use cases of (fn) documentation facility.
* doc/lispref/functions.texi (Function Documentation): Add examples. (Bug#67499) Co-authored-by: Eli Zaretskii <eliz@gnu.org>
This commit is contained in:
parent
c3331cb365
commit
efcbf0b5ab
1 changed files with 33 additions and 0 deletions
|
@ -533,6 +533,39 @@ Instead, use the @code{advertised-calling-convention} declaration
|
|||
compiler emit a warning message when it compiles Lisp programs which
|
||||
use the deprecated calling convention.
|
||||
|
||||
@ifnottex
|
||||
The @code{(fn)} feature is typically used in the following situations:
|
||||
|
||||
@itemize @minus
|
||||
@item To spell out arguments and their purposes in a macro or a function. Example:
|
||||
|
||||
@example
|
||||
(defmacro lambda (&rest cdr)
|
||||
"@dots{}
|
||||
\(fn ARGS [DOCSTRING] [INTERACTIVE] BODY)"@dots{})
|
||||
@end example
|
||||
|
||||
@item To provide a more detailed description and names of arguments. Example:
|
||||
|
||||
@example
|
||||
(defmacro macroexp--accumulate (var+list &rest body)
|
||||
"@dots{}
|
||||
\(fn (VAR LIST) BODY@dots{})"
|
||||
(declare (indent 1))
|
||||
(let ((var (car var+list))
|
||||
(list (cadr var+list))
|
||||
@dots{})))
|
||||
@end example
|
||||
|
||||
@item To better explain the purpose of a @code{defalias}. Example:
|
||||
|
||||
@example
|
||||
(defalias 'abbrev-get 'get
|
||||
"@dots{}
|
||||
\(fn ABBREV PROP)")
|
||||
@end example
|
||||
@end ifnottex
|
||||
|
||||
@cindex computed documentation string
|
||||
@kindex :documentation
|
||||
Documentation strings are usually static, but occasionally it can be
|
||||
|
|
Loading…
Add table
Reference in a new issue