summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJean Abou Samra <jean@abou-samra.fr>2022-11-06 15:55:24 +0100
committerArne Babenhauserheide <arne_bab@web.de>2022-12-11 02:19:19 +0100
commitb54263dc98b2700fa777745405ad7651601bcdc6 (patch)
tree2c952ec82765ed17b46c47b40a14a306d3f531fc
parentbeb7a2af795640dafb585c342fc331384270b9ca (diff)
downloadguile-b54263dc98b2700fa777745405ad7651601bcdc6.tar.gz
Doc: document that eq?, eqv? and equal? take any number of arguments
-rw-r--r--doc/ref/api-utility.texi26
1 files changed, 14 insertions, 12 deletions
diff --git a/doc/ref/api-utility.texi b/doc/ref/api-utility.texi
index cb7e32f2b..3532bbb84 100644
--- a/doc/ref/api-utility.texi
+++ b/doc/ref/api-utility.texi
@@ -55,11 +55,12 @@ made up of the same pairs. Such lists look the same (when printed),
and @code{equal?} will consider them the same.
@sp 1
-@deffn {Scheme Procedure} eq? x y
+@deffn {Scheme Procedure} eq? @dots{}
@deffnx {C Function} scm_eq_p (x, y)
@rnindex eq?
-Return @code{#t} if @var{x} and @var{y} are the same object, except
-for numbers and characters. For example,
+The Scheme procedure returns @code{#t} if all of its arguments are the
+same object, except for numbers and characters. The C function does the
+same but takes exactly two arguments. For example,
@example
(define x (vector 1 2 3))
@@ -109,15 +110,16 @@ The @code{==} operator should not be used on @code{SCM} values, an
@end deftypefn
@sp 1
-@deffn {Scheme Procedure} eqv? x y
+@deffn {Scheme Procedure} eqv? @dots{}
@deffnx {C Function} scm_eqv_p (x, y)
@rnindex eqv?
-Return @code{#t} if @var{x} and @var{y} are the same object, or for
-characters and numbers the same value.
+The Scheme procedure returns @code{#t} if all of its arguments are the
+same object, or for characters and numbers the same value. The C function
+is similar but takes exactly two arguments.
On objects except characters and numbers, @code{eqv?} is the same as
-@code{eq?} above, it's true if @var{x} and @var{y} are the same
-object.
+@code{eq?} above. @code{(eqv? x y)} is true if @var{x} and @var{y} are
+the same object.
If @var{x} and @var{y} are numbers or characters, @code{eqv?} compares
their type and value. An exact number is not @code{eqv?} to an
@@ -128,13 +130,13 @@ inexact number (even if their value is the same).
(eqv? 1 1.0) @result{} #f
@end example
@end deffn
-
@sp 1
-@deffn {Scheme Procedure} equal? x y
+@deffn {Scheme Procedure} equal? @dots{}
@deffnx {C Function} scm_equal_p (x, y)
@rnindex equal?
-Return @code{#t} if @var{x} and @var{y} are the same type, and their
-contents or value are equal.
+The Scheme procedure returns @code{#t} if all of its arguments are the
+same type, and their contents or value are equal. The C function is
+similar, but takes exactly two arguments.
For a pair, string, vector, array or structure, @code{equal?} compares the
contents, and does so using the same @code{equal?} recursively,