aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorGerd Moellmann2001-10-13 20:44:17 +0000
committerGerd Moellmann2001-10-13 20:44:17 +0000
commit47cebab1af3c692a8a4fba6549c5e6b2a3c53714 (patch)
tree0fbc834aab83e880584344cd69f438cb6e2caf28 /src
parentdf7cd53bbe564223b231276db252929ed06cd593 (diff)
downloademacs-47cebab1af3c692a8a4fba6549c5e6b2a3c53714.tar.gz
emacs-47cebab1af3c692a8a4fba6549c5e6b2a3c53714.zip
Put doc strings in comments.
Diffstat (limited to 'src')
-rw-r--r--src/fns.c875
1 files changed, 442 insertions, 433 deletions
diff --git a/src/fns.c b/src/fns.c
index 46f1b6aaa9e..6b6ccd6984a 100644
--- a/src/fns.c
+++ b/src/fns.c
@@ -19,6 +19,7 @@ along with GNU Emacs; see the file COPYING. If not, write to
19the Free Software Foundation, Inc., 59 Temple Place - Suite 330, 19the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
20Boston, MA 02111-1307, USA. */ 20Boston, MA 02111-1307, USA. */
21 21
22#define DOC_STRINGS_IN_COMMENTS
22 23
23#include <config.h> 24#include <config.h>
24 25
@@ -75,20 +76,20 @@ extern long time ();
75#endif 76#endif
76 77
77DEFUN ("identity", Fidentity, Sidentity, 1, 1, 0, 78DEFUN ("identity", Fidentity, Sidentity, 1, 1, 0,
78 "Return the argument unchanged.") 79 /* Return the argument unchanged. */
79 (arg) 80 (arg))
80 Lisp_Object arg; 81 Lisp_Object arg;
81{ 82{
82 return arg; 83 return arg;
83} 84}
84 85
85DEFUN ("random", Frandom, Srandom, 0, 1, 0, 86DEFUN ("random", Frandom, Srandom, 0, 1, 0,
86 "Return a pseudo-random number.\n\ 87 /* Return a pseudo-random number.
87All integers representable in Lisp are equally likely.\n\ 88All integers representable in Lisp are equally likely.
88 On most systems, this is 28 bits' worth.\n\ 89 On most systems, this is 28 bits' worth.
89With positive integer argument N, return random number in interval [0,N).\n\ 90With positive integer argument N, return random number in interval [0,N).
90With argument t, set the random number seed from the current time and pid.") 91With argument t, set the random number seed from the current time and pid. */
91 (n) 92 (n))
92 Lisp_Object n; 93 Lisp_Object n;
93{ 94{
94 EMACS_INT val; 95 EMACS_INT val;
@@ -120,12 +121,12 @@ With argument t, set the random number seed from the current time and pid.")
120/* Random data-structure functions */ 121/* Random data-structure functions */
121 122
122DEFUN ("length", Flength, Slength, 1, 1, 0, 123DEFUN ("length", Flength, Slength, 1, 1, 0,
123 "Return the length of vector, list or string SEQUENCE.\n\ 124 /* Return the length of vector, list or string SEQUENCE.
124A byte-code function object is also allowed.\n\ 125A byte-code function object is also allowed.
125If the string contains multibyte characters, this is not the necessarily\n\ 126If the string contains multibyte characters, this is not the necessarily
126the number of bytes in the string; it is the number of characters.\n\ 127the number of bytes in the string; it is the number of characters.
127To get the number of bytes, use `string-bytes'") 128To get the number of bytes, use `string-bytes'. */
128 (sequence) 129 (sequence))
129 register Lisp_Object sequence; 130 register Lisp_Object sequence;
130{ 131{
131 register Lisp_Object val; 132 register Lisp_Object val;
@@ -177,11 +178,11 @@ To get the number of bytes, use `string-bytes'")
177 since it must terminate. */ 178 since it must terminate. */
178 179
179DEFUN ("safe-length", Fsafe_length, Ssafe_length, 1, 1, 0, 180DEFUN ("safe-length", Fsafe_length, Ssafe_length, 1, 1, 0,
180 "Return the length of a list, but avoid error or infinite loop.\n\ 181 /* Return the length of a list, but avoid error or infinite loop.
181This function never gets an error. If LIST is not really a list,\n\ 182This function never gets an error. If LIST is not really a list,
182it returns 0. If LIST is circular, it returns a finite value\n\ 183it returns 0. If LIST is circular, it returns a finite value
183which is at least the number of distinct elements.") 184which is at least the number of distinct elements. */
184 (list) 185 (list))
185 Lisp_Object list; 186 Lisp_Object list;
186{ 187{
187 Lisp_Object tail, halftail, length; 188 Lisp_Object tail, halftail, length;
@@ -202,10 +203,10 @@ which is at least the number of distinct elements.")
202 return length; 203 return length;
203} 204}
204 205
205DEFUN ("string-bytes", Fstring_bytes, Sstring_bytes, 1, 1, 0, 206DEFUN ("string-bytes", Fstring_bytes, Sstring_bytes, 1, 1, 0,
206 "Return the number of bytes in STRING.\n\ 207 /* Return the number of bytes in STRING.
207If STRING is a multibyte string, this is greater than the length of STRING.") 208If STRING is a multibyte string, this is greater than the length of STRING. */
208 (string) 209 (string))
209 Lisp_Object string; 210 Lisp_Object string;
210{ 211{
211 CHECK_STRING (string, 1); 212 CHECK_STRING (string, 1);
@@ -213,10 +214,10 @@ If STRING is a multibyte string, this is greater than the length of STRING.")
213} 214}
214 215
215DEFUN ("string-equal", Fstring_equal, Sstring_equal, 2, 2, 0, 216DEFUN ("string-equal", Fstring_equal, Sstring_equal, 2, 2, 0,
216 "Return t if two strings have identical contents.\n\ 217 /* Return t if two strings have identical contents.
217Case is significant, but text properties are ignored.\n\ 218Case is significant, but text properties are ignored.
218Symbols are also allowed; their print names are used instead.") 219Symbols are also allowed; their print names are used instead. */
219 (s1, s2) 220 (s1, s2))
220 register Lisp_Object s1, s2; 221 register Lisp_Object s1, s2;
221{ 222{
222 if (SYMBOLP (s1)) 223 if (SYMBOLP (s1))
@@ -235,20 +236,20 @@ Symbols are also allowed; their print names are used instead.")
235 236
236DEFUN ("compare-strings", Fcompare_strings, 237DEFUN ("compare-strings", Fcompare_strings,
237 Scompare_strings, 6, 7, 0, 238 Scompare_strings, 6, 7, 0,
238 "Compare the contents of two strings, converting to multibyte if needed.\n\ 239/* Compare the contents of two strings, converting to multibyte if needed.
239In string STR1, skip the first START1 characters and stop at END1.\n\ 240In string STR1, skip the first START1 characters and stop at END1.
240In string STR2, skip the first START2 characters and stop at END2.\n\ 241In string STR2, skip the first START2 characters and stop at END2.
241END1 and END2 default to the full lengths of the respective strings.\n\ 242END1 and END2 default to the full lengths of the respective strings.
242\n\ 243
243Case is significant in this comparison if IGNORE-CASE is nil.\n\ 244Case is significant in this comparison if IGNORE-CASE is nil.
244Unibyte strings are converted to multibyte for comparison.\n\ 245Unibyte strings are converted to multibyte for comparison.
245\n\ 246
246The value is t if the strings (or specified portions) match.\n\ 247The value is t if the strings (or specified portions) match.
247If string STR1 is less, the value is a negative number N;\n\ 248If string STR1 is less, the value is a negative number N;
248 - 1 - N is the number of characters that match at the beginning.\n\ 249 - 1 - N is the number of characters that match at the beginning.
249If string STR1 is greater, the value is a positive number N;\n\ 250If string STR1 is greater, the value is a positive number N;
250 N - 1 is the number of characters that match at the beginning.") 251 N - 1 is the number of characters that match at the beginning. */
251 (str1, start1, end1, str2, start2, end2, ignore_case) 252 (str1, start1, end1, str2, start2, end2, ignore_case))
252 Lisp_Object str1, start1, end1, start2, str2, end2, ignore_case; 253 Lisp_Object str1, start1, end1, start2, str2, end2, ignore_case;
253{ 254{
254 register int end1_char, end2_char; 255 register int end1_char, end2_char;
@@ -337,10 +338,10 @@ If string STR1 is greater, the value is a positive number N;\n\
337} 338}
338 339
339DEFUN ("string-lessp", Fstring_lessp, Sstring_lessp, 2, 2, 0, 340DEFUN ("string-lessp", Fstring_lessp, Sstring_lessp, 2, 2, 0,
340 "Return t if first arg string is less than second in lexicographic order.\n\ 341/* Return t if first arg string is less than second in lexicographic order.
341Case is significant.\n\ 342Case is significant.
342Symbols are also allowed; their print names are used instead.") 343Symbols are also allowed; their print names are used instead. */
343 (s1, s2) 344 (s1, s2))
344 register Lisp_Object s1, s2; 345 register Lisp_Object s1, s2;
345{ 346{
346 register int end; 347 register int end;
@@ -408,11 +409,11 @@ concat3 (s1, s2, s3)
408} 409}
409 410
410DEFUN ("append", Fappend, Sappend, 0, MANY, 0, 411DEFUN ("append", Fappend, Sappend, 0, MANY, 0,
411 "Concatenate all the arguments and make the result a list.\n\ 412 /* Concatenate all the arguments and make the result a list.
412The result is a list whose elements are the elements of all the arguments.\n\ 413The result is a list whose elements are the elements of all the arguments.
413Each argument may be a list, vector or string.\n\ 414Each argument may be a list, vector or string.
414The last argument is not copied, just used as the tail of the new list.") 415The last argument is not copied, just used as the tail of the new list. */
415 (nargs, args) 416 (nargs, args))
416 int nargs; 417 int nargs;
417 Lisp_Object *args; 418 Lisp_Object *args;
418{ 419{
@@ -420,10 +421,10 @@ The last argument is not copied, just used as the tail of the new list.")
420} 421}
421 422
422DEFUN ("concat", Fconcat, Sconcat, 0, MANY, 0, 423DEFUN ("concat", Fconcat, Sconcat, 0, MANY, 0,
423 "Concatenate all the arguments and make the result a string.\n\ 424 /* Concatenate all the arguments and make the result a string.
424The result is a string whose elements are the elements of all the arguments.\n\ 425The result is a string whose elements are the elements of all the arguments.
425Each argument may be a string or a list or vector of characters (integers).") 426Each argument may be a string or a list or vector of characters (integers). */
426 (nargs, args) 427 (nargs, args))
427 int nargs; 428 int nargs;
428 Lisp_Object *args; 429 Lisp_Object *args;
429{ 430{
@@ -431,10 +432,10 @@ Each argument may be a string or a list or vector of characters (integers).")
431} 432}
432 433
433DEFUN ("vconcat", Fvconcat, Svconcat, 0, MANY, 0, 434DEFUN ("vconcat", Fvconcat, Svconcat, 0, MANY, 0,
434 "Concatenate all the arguments and make the result a vector.\n\ 435 /* Concatenate all the arguments and make the result a vector.
435The result is a vector whose elements are the elements of all the arguments.\n\ 436The result is a vector whose elements are the elements of all the arguments.
436Each argument may be a list, vector or string.") 437Each argument may be a list, vector or string. */
437 (nargs, args) 438 (nargs, args))
438 int nargs; 439 int nargs;
439 Lisp_Object *args; 440 Lisp_Object *args;
440{ 441{
@@ -464,10 +465,10 @@ copy_sub_char_table (arg)
464 465
465 466
466DEFUN ("copy-sequence", Fcopy_sequence, Scopy_sequence, 1, 1, 0, 467DEFUN ("copy-sequence", Fcopy_sequence, Scopy_sequence, 1, 1, 0,
467 "Return a copy of a list, vector or string.\n\ 468 /* Return a copy of a list, vector or string.
468The elements of a list or vector are not copied; they are shared\n\ 469The elements of a list or vector are not copied; they are shared
469with the original.") 470with the original. */
470 (arg) 471 (arg))
471 Lisp_Object arg; 472 Lisp_Object arg;
472{ 473{
473 if (NILP (arg)) return arg; 474 if (NILP (arg)) return arg;
@@ -1053,10 +1054,10 @@ string_make_unibyte (string)
1053 1054
1054DEFUN ("string-make-multibyte", Fstring_make_multibyte, Sstring_make_multibyte, 1055DEFUN ("string-make-multibyte", Fstring_make_multibyte, Sstring_make_multibyte,
1055 1, 1, 0, 1056 1, 1, 0,
1056 "Return the multibyte equivalent of STRING.\n\ 1057 /* Return the multibyte equivalent of STRING.
1057The function `unibyte-char-to-multibyte' is used to convert\n\ 1058The function `unibyte-char-to-multibyte' is used to convert
1058each unibyte character to a multibyte character.") 1059each unibyte character to a multibyte character. */
1059 (string) 1060 (string))
1060 Lisp_Object string; 1061 Lisp_Object string;
1061{ 1062{
1062 CHECK_STRING (string, 0); 1063 CHECK_STRING (string, 0);
@@ -1066,10 +1067,10 @@ each unibyte character to a multibyte character.")
1066 1067
1067DEFUN ("string-make-unibyte", Fstring_make_unibyte, Sstring_make_unibyte, 1068DEFUN ("string-make-unibyte", Fstring_make_unibyte, Sstring_make_unibyte,
1068 1, 1, 0, 1069 1, 1, 0,
1069 "Return the unibyte equivalent of STRING.\n\ 1070 /* Return the unibyte equivalent of STRING.
1070Multibyte character codes are converted to unibyte\n\ 1071Multibyte character codes are converted to unibyte
1071by using just the low 8 bits.") 1072by using just the low 8 bits. */
1072 (string) 1073 (string))
1073 Lisp_Object string; 1074 Lisp_Object string;
1074{ 1075{
1075 CHECK_STRING (string, 0); 1076 CHECK_STRING (string, 0);
@@ -1079,13 +1080,13 @@ by using just the low 8 bits.")
1079 1080
1080DEFUN ("string-as-unibyte", Fstring_as_unibyte, Sstring_as_unibyte, 1081DEFUN ("string-as-unibyte", Fstring_as_unibyte, Sstring_as_unibyte,
1081 1, 1, 0, 1082 1, 1, 0,
1082 "Return a unibyte string with the same individual bytes as STRING.\n\ 1083 /* Return a unibyte string with the same individual bytes as STRING.
1083If STRING is unibyte, the result is STRING itself.\n\ 1084If STRING is unibyte, the result is STRING itself.
1084Otherwise it is a newly created string, with no text properties.\n\ 1085Otherwise it is a newly created string, with no text properties.
1085If STRING is multibyte and contains a character of charset\n\ 1086If STRING is multibyte and contains a character of charset
1086`eight-bit-control' or `eight-bit-graphic', it is converted to the\n\ 1087`eight-bit-control' or `eight-bit-graphic', it is converted to the
1087corresponding single byte.") 1088corresponding single byte. */
1088 (string) 1089 (string))
1089 Lisp_Object string; 1090 Lisp_Object string;
1090{ 1091{
1091 CHECK_STRING (string, 0); 1092 CHECK_STRING (string, 0);
@@ -1105,13 +1106,13 @@ corresponding single byte.")
1105 1106
1106DEFUN ("string-as-multibyte", Fstring_as_multibyte, Sstring_as_multibyte, 1107DEFUN ("string-as-multibyte", Fstring_as_multibyte, Sstring_as_multibyte,
1107 1, 1, 0, 1108 1, 1, 0,
1108 "Return a multibyte string with the same individual bytes as STRING.\n\ 1109/* Return a multibyte string with the same individual bytes as STRING.
1109If STRING is multibyte, the result is STRING itself.\n\ 1110If STRING is multibyte, the result is STRING itself.
1110Otherwise it is a newly created string, with no text properties.\n\ 1111Otherwise it is a newly created string, with no text properties.
1111If STRING is unibyte and contains an individual 8-bit byte (i.e. not\n\ 1112If STRING is unibyte and contains an individual 8-bit byte (i.e. not
1112part of a multibyte form), it is converted to the corresponding\n\ 1113part of a multibyte form), it is converted to the corresponding
1113multibyte character of charset `eight-bit-control' or `eight-bit-graphic'.") 1114multibyte character of charset `eight-bit-control' or `eight-bit-graphic'. */
1114 (string) 1115 (string))
1115 Lisp_Object string; 1116 Lisp_Object string;
1116{ 1117{
1117 CHECK_STRING (string, 0); 1118 CHECK_STRING (string, 0);
@@ -1137,13 +1138,13 @@ multibyte character of charset `eight-bit-control' or `eight-bit-graphic'.")
1137} 1138}
1138 1139
1139DEFUN ("copy-alist", Fcopy_alist, Scopy_alist, 1, 1, 0, 1140DEFUN ("copy-alist", Fcopy_alist, Scopy_alist, 1, 1, 0,
1140 "Return a copy of ALIST.\n\ 1141 /* Return a copy of ALIST.
1141This is an alist which represents the same mapping from objects to objects,\n\ 1142This is an alist which represents the same mapping from objects to objects,
1142but does not share the alist structure with ALIST.\n\ 1143but does not share the alist structure with ALIST.
1143The objects mapped (cars and cdrs of elements of the alist)\n\ 1144The objects mapped (cars and cdrs of elements of the alist)
1144are shared, however.\n\ 1145are shared, however.
1145Elements of ALIST that are not conses are also shared.") 1146Elements of ALIST that are not conses are also shared. */
1146 (alist) 1147 (alist))
1147 Lisp_Object alist; 1148 Lisp_Object alist;
1148{ 1149{
1149 register Lisp_Object tem; 1150 register Lisp_Object tem;
@@ -1164,12 +1165,12 @@ Elements of ALIST that are not conses are also shared.")
1164} 1165}
1165 1166
1166DEFUN ("substring", Fsubstring, Ssubstring, 2, 3, 0, 1167DEFUN ("substring", Fsubstring, Ssubstring, 2, 3, 0,
1167 "Return a substring of STRING, starting at index FROM and ending before TO.\n\ 1168/* Return a substring of STRING, starting at index FROM and ending before TO.
1168TO may be nil or omitted; then the substring runs to the end of STRING.\n\ 1169TO may be nil or omitted; then the substring runs to the end of STRING.
1169If FROM or TO is negative, it counts from the end.\n\ 1170If FROM or TO is negative, it counts from the end.
1170\n\ 1171
1171This function allows vectors as well as strings.") 1172This function allows vectors as well as strings. */
1172 (string, from, to) 1173 (string, from, to))
1173 Lisp_Object string; 1174 Lisp_Object string;
1174 register Lisp_Object from, to; 1175 register Lisp_Object from, to;
1175{ 1176{
@@ -1276,8 +1277,8 @@ substring_both (string, from, from_byte, to, to_byte)
1276} 1277}
1277 1278
1278DEFUN ("nthcdr", Fnthcdr, Snthcdr, 2, 2, 0, 1279DEFUN ("nthcdr", Fnthcdr, Snthcdr, 2, 2, 0,
1279 "Take cdr N times on LIST, returns the result.") 1280 /* Take cdr N times on LIST, returns the result. */
1280 (n, list) 1281 (n, list))
1281 Lisp_Object n; 1282 Lisp_Object n;
1282 register Lisp_Object list; 1283 register Lisp_Object list;
1283{ 1284{
@@ -1295,17 +1296,17 @@ DEFUN ("nthcdr", Fnthcdr, Snthcdr, 2, 2, 0,
1295} 1296}
1296 1297
1297DEFUN ("nth", Fnth, Snth, 2, 2, 0, 1298DEFUN ("nth", Fnth, Snth, 2, 2, 0,
1298 "Return the Nth element of LIST.\n\ 1299 /* Return the Nth element of LIST.
1299N counts from zero. If LIST is not that long, nil is returned.") 1300N counts from zero. If LIST is not that long, nil is returned. */
1300 (n, list) 1301 (n, list))
1301 Lisp_Object n, list; 1302 Lisp_Object n, list;
1302{ 1303{
1303 return Fcar (Fnthcdr (n, list)); 1304 return Fcar (Fnthcdr (n, list));
1304} 1305}
1305 1306
1306DEFUN ("elt", Felt, Selt, 2, 2, 0, 1307DEFUN ("elt", Felt, Selt, 2, 2, 0,
1307 "Return element of SEQUENCE at index N.") 1308 /* Return element of SEQUENCE at index N. */
1308 (sequence, n) 1309 (sequence, n))
1309 register Lisp_Object sequence, n; 1310 register Lisp_Object sequence, n;
1310{ 1311{
1311 CHECK_NUMBER (n, 0); 1312 CHECK_NUMBER (n, 0);
@@ -1322,9 +1323,9 @@ DEFUN ("elt", Felt, Selt, 2, 2, 0,
1322} 1323}
1323 1324
1324DEFUN ("member", Fmember, Smember, 2, 2, 0, 1325DEFUN ("member", Fmember, Smember, 2, 2, 0,
1325 "Return non-nil if ELT is an element of LIST. Comparison done with `equal'.\n\ 1326/* Return non-nil if ELT is an element of LIST. Comparison done with `equal'.
1326The value is actually the tail of LIST whose car is ELT.") 1327The value is actually the tail of LIST whose car is ELT. */
1327 (elt, list) 1328 (elt, list))
1328 register Lisp_Object elt; 1329 register Lisp_Object elt;
1329 Lisp_Object list; 1330 Lisp_Object list;
1330{ 1331{
@@ -1343,10 +1344,10 @@ The value is actually the tail of LIST whose car is ELT.")
1343} 1344}
1344 1345
1345DEFUN ("memq", Fmemq, Smemq, 2, 2, 0, 1346DEFUN ("memq", Fmemq, Smemq, 2, 2, 0,
1346 "Return non-nil if ELT is an element of LIST.\n\ 1347 /* Return non-nil if ELT is an element of LIST.
1347Comparison done with EQ. The value is actually the tail of LIST\n\ 1348Comparison done with EQ. The value is actually the tail of LIST
1348whose car is ELT.") 1349whose car is ELT. */
1349 (elt, list) 1350 (elt, list))
1350 Lisp_Object elt, list; 1351 Lisp_Object elt, list;
1351{ 1352{
1352 while (1) 1353 while (1)
@@ -1373,10 +1374,10 @@ whose car is ELT.")
1373} 1374}
1374 1375
1375DEFUN ("assq", Fassq, Sassq, 2, 2, 0, 1376DEFUN ("assq", Fassq, Sassq, 2, 2, 0,
1376 "Return non-nil if KEY is `eq' to the car of an element of LIST.\n\ 1377 /* Return non-nil if KEY is `eq' to the car of an element of LIST.
1377The value is actually the element of LIST whose car is KEY.\n\ 1378The value is actually the element of LIST whose car is KEY.
1378Elements of LIST that are not conses are ignored.") 1379Elements of LIST that are not conses are ignored. */
1379 (key, list) 1380 (key, list))
1380 Lisp_Object key, list; 1381 Lisp_Object key, list;
1381{ 1382{
1382 Lisp_Object result; 1383 Lisp_Object result;
@@ -1430,9 +1431,9 @@ assq_no_quit (key, list)
1430} 1431}
1431 1432
1432DEFUN ("assoc", Fassoc, Sassoc, 2, 2, 0, 1433DEFUN ("assoc", Fassoc, Sassoc, 2, 2, 0,
1433 "Return non-nil if KEY is `equal' to the car of an element of LIST.\n\ 1434 /* Return non-nil if KEY is `equal' to the car of an element of LIST.
1434The value is actually the element of LIST whose car equals KEY.") 1435The value is actually the element of LIST whose car equals KEY. */
1435 (key, list) 1436 (key, list))
1436 Lisp_Object key, list; 1437 Lisp_Object key, list;
1437{ 1438{
1438 Lisp_Object result, car; 1439 Lisp_Object result, car;
@@ -1474,9 +1475,9 @@ The value is actually the element of LIST whose car equals KEY.")
1474} 1475}
1475 1476
1476DEFUN ("rassq", Frassq, Srassq, 2, 2, 0, 1477DEFUN ("rassq", Frassq, Srassq, 2, 2, 0,
1477 "Return non-nil if KEY is `eq' to the cdr of an element of LIST.\n\ 1478 /* Return non-nil if KEY is `eq' to the cdr of an element of LIST.
1478The value is actually the element of LIST whose cdr is KEY.") 1479The value is actually the element of LIST whose cdr is KEY. */
1479 (key, list) 1480 (key, list))
1480 register Lisp_Object key; 1481 register Lisp_Object key;
1481 Lisp_Object list; 1482 Lisp_Object list;
1482{ 1483{
@@ -1516,9 +1517,9 @@ The value is actually the element of LIST whose cdr is KEY.")
1516} 1517}
1517 1518
1518DEFUN ("rassoc", Frassoc, Srassoc, 2, 2, 0, 1519DEFUN ("rassoc", Frassoc, Srassoc, 2, 2, 0,
1519 "Return non-nil if KEY is `equal' to the cdr of an element of LIST.\n\ 1520 /* Return non-nil if KEY is `equal' to the cdr of an element of LIST.
1520The value is actually the element of LIST whose cdr equals KEY.") 1521The value is actually the element of LIST whose cdr equals KEY. */
1521 (key, list) 1522 (key, list))
1522 Lisp_Object key, list; 1523 Lisp_Object key, list;
1523{ 1524{
1524 Lisp_Object result, cdr; 1525 Lisp_Object result, cdr;
@@ -1560,12 +1561,12 @@ The value is actually the element of LIST whose cdr equals KEY.")
1560} 1561}
1561 1562
1562DEFUN ("delq", Fdelq, Sdelq, 2, 2, 0, 1563DEFUN ("delq", Fdelq, Sdelq, 2, 2, 0,
1563 "Delete by side effect any occurrences of ELT as a member of LIST.\n\ 1564 /* Delete by side effect any occurrences of ELT as a member of LIST.
1564The modified LIST is returned. Comparison is done with `eq'.\n\ 1565The modified LIST is returned. Comparison is done with `eq'.
1565If the first member of LIST is ELT, there is no way to remove it by side effect;\n\ 1566If the first member of LIST is ELT, there is no way to remove it by side effect;
1566therefore, write `(setq foo (delq element foo))'\n\ 1567therefore, write `(setq foo (delq element foo))'
1567to be sure of changing the value of `foo'.") 1568to be sure of changing the value of `foo'. */
1568 (elt, list) 1569 (elt, list))
1569 register Lisp_Object elt; 1570 register Lisp_Object elt;
1570 Lisp_Object list; 1571 Lisp_Object list;
1571{ 1572{
@@ -1595,14 +1596,14 @@ to be sure of changing the value of `foo'.")
1595} 1596}
1596 1597
1597DEFUN ("delete", Fdelete, Sdelete, 2, 2, 0, 1598DEFUN ("delete", Fdelete, Sdelete, 2, 2, 0,
1598 "Delete by side effect any occurrences of ELT as a member of SEQ.\n\ 1599 /* Delete by side effect any occurrences of ELT as a member of SEQ.
1599SEQ must be a list, a vector, or a string.\n\ 1600SEQ must be a list, a vector, or a string.
1600The modified SEQ is returned. Comparison is done with `equal'.\n\ 1601The modified SEQ is returned. Comparison is done with `equal'.
1601If SEQ is not a list, or the first member of SEQ is ELT, deleting it\n\ 1602If SEQ is not a list, or the first member of SEQ is ELT, deleting it
1602is not a side effect; it is simply using a different sequence.\n\ 1603is not a side effect; it is simply using a different sequence.
1603Therefore, write `(setq foo (delete element foo))'\n\ 1604Therefore, write `(setq foo (delete element foo))'
1604to be sure of changing the value of `foo'.") 1605to be sure of changing the value of `foo'. */
1605 (elt, seq) 1606 (elt, seq))
1606 Lisp_Object elt, seq; 1607 Lisp_Object elt, seq;
1607{ 1608{
1608 if (VECTORP (seq)) 1609 if (VECTORP (seq))
@@ -1719,9 +1720,9 @@ to be sure of changing the value of `foo'.")
1719} 1720}
1720 1721
1721DEFUN ("nreverse", Fnreverse, Snreverse, 1, 1, 0, 1722DEFUN ("nreverse", Fnreverse, Snreverse, 1, 1, 0,
1722 "Reverse LIST by modifying cdr pointers.\n\ 1723 /* Reverse LIST by modifying cdr pointers.
1723Returns the beginning of the reversed list.") 1724Returns the beginning of the reversed list. */
1724 (list) 1725 (list))
1725 Lisp_Object list; 1726 Lisp_Object list;
1726{ 1727{
1727 register Lisp_Object prev, tail, next; 1728 register Lisp_Object prev, tail, next;
@@ -1743,9 +1744,9 @@ Returns the beginning of the reversed list.")
1743} 1744}
1744 1745
1745DEFUN ("reverse", Freverse, Sreverse, 1, 1, 0, 1746DEFUN ("reverse", Freverse, Sreverse, 1, 1, 0,
1746 "Reverse LIST, copying. Returns the beginning of the reversed list.\n\ 1747 /* Reverse LIST, copying. Returns the beginning of the reversed list.
1747See also the function `nreverse', which is used more often.") 1748See also the function `nreverse', which is used more often. */
1748 (list) 1749 (list))
1749 Lisp_Object list; 1750 Lisp_Object list;
1750{ 1751{
1751 Lisp_Object new; 1752 Lisp_Object new;
@@ -1760,11 +1761,11 @@ See also the function `nreverse', which is used more often.")
1760Lisp_Object merge (); 1761Lisp_Object merge ();
1761 1762
1762DEFUN ("sort", Fsort, Ssort, 2, 2, 0, 1763DEFUN ("sort", Fsort, Ssort, 2, 2, 0,
1763 "Sort LIST, stably, comparing elements using PREDICATE.\n\ 1764 /* Sort LIST, stably, comparing elements using PREDICATE.
1764Returns the sorted list. LIST is modified by side effects.\n\ 1765Returns the sorted list. LIST is modified by side effects.
1765PREDICATE is called with two elements of LIST, and should return T\n\ 1766PREDICATE is called with two elements of LIST, and should return t
1766if the first element is \"less\" than the second.") 1767if the first element is "less" than the second. */
1767 (list, predicate) 1768 (list, predicate))
1768 Lisp_Object list, predicate; 1769 Lisp_Object list, predicate;
1769{ 1770{
1770 Lisp_Object front, back; 1771 Lisp_Object front, back;
@@ -1852,12 +1853,12 @@ merge (org_l1, org_l2, pred)
1852 1853
1853 1854
1854DEFUN ("plist-get", Fplist_get, Splist_get, 2, 2, 0, 1855DEFUN ("plist-get", Fplist_get, Splist_get, 2, 2, 0,
1855 "Extract a value from a property list.\n\ 1856 /* Extract a value from a property list.
1856PLIST is a property list, which is a list of the form\n\ 1857PLIST is a property list, which is a list of the form
1857\(PROP1 VALUE1 PROP2 VALUE2...). This function returns the value\n\ 1858\(PROP1 VALUE1 PROP2 VALUE2...). This function returns the value
1858corresponding to the given PROP, or nil if PROP is not\n\ 1859corresponding to the given PROP, or nil if PROP is not
1859one of the properties on the list.") 1860one of the properties on the list. */
1860 (plist, prop) 1861 (plist, prop))
1861 Lisp_Object plist; 1862 Lisp_Object plist;
1862 Lisp_Object prop; 1863 Lisp_Object prop;
1863{ 1864{
@@ -1883,9 +1884,9 @@ one of the properties on the list.")
1883} 1884}
1884 1885
1885DEFUN ("get", Fget, Sget, 2, 2, 0, 1886DEFUN ("get", Fget, Sget, 2, 2, 0,
1886 "Return the value of SYMBOL's PROPNAME property.\n\ 1887 /* Return the value of SYMBOL's PROPNAME property.
1887This is the last value stored with `(put SYMBOL PROPNAME VALUE)'.") 1888This is the last value stored with `(put SYMBOL PROPNAME VALUE)'. */
1888 (symbol, propname) 1889 (symbol, propname))
1889 Lisp_Object symbol, propname; 1890 Lisp_Object symbol, propname;
1890{ 1891{
1891 CHECK_SYMBOL (symbol, 0); 1892 CHECK_SYMBOL (symbol, 0);
@@ -1893,14 +1894,14 @@ This is the last value stored with `(put SYMBOL PROPNAME VALUE)'.")
1893} 1894}
1894 1895
1895DEFUN ("plist-put", Fplist_put, Splist_put, 3, 3, 0, 1896DEFUN ("plist-put", Fplist_put, Splist_put, 3, 3, 0,
1896 "Change value in PLIST of PROP to VAL.\n\ 1897 /* Change value in PLIST of PROP to VAL.
1897PLIST is a property list, which is a list of the form\n\ 1898PLIST is a property list, which is a list of the form
1898\(PROP1 VALUE1 PROP2 VALUE2 ...). PROP is a symbol and VAL is any object.\n\ 1899\(PROP1 VALUE1 PROP2 VALUE2 ...). PROP is a symbol and VAL is any object.
1899If PROP is already a property on the list, its value is set to VAL,\n\ 1900If PROP is already a property on the list, its value is set to VAL,
1900otherwise the new PROP VAL pair is added. The new plist is returned;\n\ 1901otherwise the new PROP VAL pair is added. The new plist is returned;
1901use `(setq x (plist-put x prop val))' to be sure to use the new value.\n\ 1902use `(setq x (plist-put x prop val))' to be sure to use the new value.
1902The PLIST is modified by side effects.") 1903The PLIST is modified by side effects. */
1903 (plist, prop, val) 1904 (plist, prop, val))
1904 Lisp_Object plist; 1905 Lisp_Object plist;
1905 register Lisp_Object prop; 1906 register Lisp_Object prop;
1906 Lisp_Object val; 1907 Lisp_Object val;
@@ -1929,9 +1930,9 @@ The PLIST is modified by side effects.")
1929} 1930}
1930 1931
1931DEFUN ("put", Fput, Sput, 3, 3, 0, 1932DEFUN ("put", Fput, Sput, 3, 3, 0,
1932 "Store SYMBOL's PROPNAME property with value VALUE.\n\ 1933 /* Store SYMBOL's PROPNAME property with value VALUE.
1933It can be retrieved with `(get SYMBOL PROPNAME)'.") 1934It can be retrieved with `(get SYMBOL PROPNAME)'. */
1934 (symbol, propname, value) 1935 (symbol, propname, value))
1935 Lisp_Object symbol, propname, value; 1936 Lisp_Object symbol, propname, value;
1936{ 1937{
1937 CHECK_SYMBOL (symbol, 0); 1938 CHECK_SYMBOL (symbol, 0);
@@ -1941,14 +1942,14 @@ It can be retrieved with `(get SYMBOL PROPNAME)'.")
1941} 1942}
1942 1943
1943DEFUN ("equal", Fequal, Sequal, 2, 2, 0, 1944DEFUN ("equal", Fequal, Sequal, 2, 2, 0,
1944 "Return t if two Lisp objects have similar structure and contents.\n\ 1945 /* Return t if two Lisp objects have similar structure and contents.
1945They must have the same data type.\n\ 1946They must have the same data type.
1946Conses are compared by comparing the cars and the cdrs.\n\ 1947Conses are compared by comparing the cars and the cdrs.
1947Vectors and strings are compared element by element.\n\ 1948Vectors and strings are compared element by element.
1948Numbers are compared by value, but integers cannot equal floats.\n\ 1949Numbers are compared by value, but integers cannot equal floats.
1949 (Use `=' if you want integers and floats to be able to be equal.)\n\ 1950 (Use `=' if you want integers and floats to be able to be equal.)
1950Symbols must match exactly.") 1951Symbols must match exactly. */
1951 (o1, o2) 1952 (o1, o2))
1952 register Lisp_Object o1, o2; 1953 register Lisp_Object o1, o2;
1953{ 1954{
1954 return internal_equal (o1, o2, 0) ? Qt : Qnil; 1955 return internal_equal (o1, o2, 0) ? Qt : Qnil;
@@ -2070,9 +2071,9 @@ internal_equal (o1, o2, depth)
2070extern Lisp_Object Fmake_char_internal (); 2071extern Lisp_Object Fmake_char_internal ();
2071 2072
2072DEFUN ("fillarray", Ffillarray, Sfillarray, 2, 2, 0, 2073DEFUN ("fillarray", Ffillarray, Sfillarray, 2, 2, 0,
2073 "Store each element of ARRAY with ITEM.\n\ 2074 /* Store each element of ARRAY with ITEM.
2074ARRAY is a vector, string, char-table, or bool-vector.") 2075ARRAY is a vector, string, char-table, or bool-vector. */
2075 (array, item) 2076 (array, item))
2076 Lisp_Object array, item; 2077 Lisp_Object array, item;
2077{ 2078{
2078 register int size, index, charval; 2079 register int size, index, charval;
@@ -2141,8 +2142,8 @@ ARRAY is a vector, string, char-table, or bool-vector.")
2141 2142
2142DEFUN ("char-table-subtype", Fchar_table_subtype, Schar_table_subtype, 2143DEFUN ("char-table-subtype", Fchar_table_subtype, Schar_table_subtype,
2143 1, 1, 0, 2144 1, 1, 0,
2144 "Return the subtype of char-table CHAR-TABLE. The value is a symbol.") 2145 /* Return the subtype of char-table CHAR-TABLE. The value is a symbol. */
2145 (char_table) 2146 (char_table))
2146 Lisp_Object char_table; 2147 Lisp_Object char_table;
2147{ 2148{
2148 CHECK_CHAR_TABLE (char_table, 0); 2149 CHECK_CHAR_TABLE (char_table, 0);
@@ -2152,12 +2153,12 @@ DEFUN ("char-table-subtype", Fchar_table_subtype, Schar_table_subtype,
2152 2153
2153DEFUN ("char-table-parent", Fchar_table_parent, Schar_table_parent, 2154DEFUN ("char-table-parent", Fchar_table_parent, Schar_table_parent,
2154 1, 1, 0, 2155 1, 1, 0,
2155 "Return the parent char-table of CHAR-TABLE.\n\ 2156 /* Return the parent char-table of CHAR-TABLE.
2156The value is either nil or another char-table.\n\ 2157The value is either nil or another char-table.
2157If CHAR-TABLE holds nil for a given character,\n\ 2158If CHAR-TABLE holds nil for a given character,
2158then the actual applicable value is inherited from the parent char-table\n\ 2159then the actual applicable value is inherited from the parent char-table
2159\(or from its parents, if necessary).") 2160\(or from its parents, if necessary). */
2160 (char_table) 2161 (char_table))
2161 Lisp_Object char_table; 2162 Lisp_Object char_table;
2162{ 2163{
2163 CHECK_CHAR_TABLE (char_table, 0); 2164 CHECK_CHAR_TABLE (char_table, 0);
@@ -2167,9 +2168,9 @@ then the actual applicable value is inherited from the parent char-table\n\
2167 2168
2168DEFUN ("set-char-table-parent", Fset_char_table_parent, Sset_char_table_parent, 2169DEFUN ("set-char-table-parent", Fset_char_table_parent, Sset_char_table_parent,
2169 2, 2, 0, 2170 2, 2, 0,
2170 "Set the parent char-table of CHAR-TABLE to PARENT.\n\ 2171 /* Set the parent char-table of CHAR-TABLE to PARENT.
2171PARENT must be either nil or another char-table.") 2172PARENT must be either nil or another char-table. */
2172 (char_table, parent) 2173 (char_table, parent))
2173 Lisp_Object char_table, parent; 2174 Lisp_Object char_table, parent;
2174{ 2175{
2175 Lisp_Object temp; 2176 Lisp_Object temp;
@@ -2192,8 +2193,8 @@ PARENT must be either nil or another char-table.")
2192 2193
2193DEFUN ("char-table-extra-slot", Fchar_table_extra_slot, Schar_table_extra_slot, 2194DEFUN ("char-table-extra-slot", Fchar_table_extra_slot, Schar_table_extra_slot,
2194 2, 2, 0, 2195 2, 2, 0,
2195 "Return the value of CHAR-TABLE's extra-slot number N.") 2196 /* Return the value of CHAR-TABLE's extra-slot number N. */
2196 (char_table, n) 2197 (char_table, n))
2197 Lisp_Object char_table, n; 2198 Lisp_Object char_table, n;
2198{ 2199{
2199 CHECK_CHAR_TABLE (char_table, 1); 2200 CHECK_CHAR_TABLE (char_table, 1);
@@ -2208,8 +2209,8 @@ DEFUN ("char-table-extra-slot", Fchar_table_extra_slot, Schar_table_extra_slot,
2208DEFUN ("set-char-table-extra-slot", Fset_char_table_extra_slot, 2209DEFUN ("set-char-table-extra-slot", Fset_char_table_extra_slot,
2209 Sset_char_table_extra_slot, 2210 Sset_char_table_extra_slot,
2210 3, 3, 0, 2211 3, 3, 0,
2211 "Set CHAR-TABLE's extra-slot number N to VALUE.") 2212 /* Set CHAR-TABLE's extra-slot number N to VALUE. */
2212 (char_table, n, value) 2213 (char_table, n, value))
2213 Lisp_Object char_table, n, value; 2214 Lisp_Object char_table, n, value;
2214{ 2215{
2215 CHECK_CHAR_TABLE (char_table, 1); 2216 CHECK_CHAR_TABLE (char_table, 1);
@@ -2223,11 +2224,11 @@ DEFUN ("set-char-table-extra-slot", Fset_char_table_extra_slot,
2223 2224
2224DEFUN ("char-table-range", Fchar_table_range, Schar_table_range, 2225DEFUN ("char-table-range", Fchar_table_range, Schar_table_range,
2225 2, 2, 0, 2226 2, 2, 0,
2226 "Return the value in CHAR-TABLE for a range of characters RANGE.\n\ 2227 /* Return the value in CHAR-TABLE for a range of characters RANGE.
2227RANGE should be nil (for the default value)\n\ 2228RANGE should be nil (for the default value)
2228a vector which identifies a character set or a row of a character set,\n\ 2229a vector which identifies a character set or a row of a character set,
2229a character set name, or a character code.") 2230a character set name, or a character code. */
2230 (char_table, range) 2231 (char_table, range))
2231 Lisp_Object char_table, range; 2232 Lisp_Object char_table, range;
2232{ 2233{
2233 CHECK_CHAR_TABLE (char_table, 0); 2234 CHECK_CHAR_TABLE (char_table, 0);
@@ -2269,11 +2270,11 @@ a character set name, or a character code.")
2269 2270
2270DEFUN ("set-char-table-range", Fset_char_table_range, Sset_char_table_range, 2271DEFUN ("set-char-table-range", Fset_char_table_range, Sset_char_table_range,
2271 3, 3, 0, 2272 3, 3, 0,
2272 "Set the value in CHAR-TABLE for a range of characters RANGE to VALUE.\n\ 2273 /* Set the value in CHAR-TABLE for a range of characters RANGE to VALUE.
2273RANGE should be t (for all characters), nil (for the default value)\n\ 2274RANGE should be t (for all characters), nil (for the default value)
2274a vector which identifies a character set or a row of a character set,\n\ 2275a vector which identifies a character set or a row of a character set,
2275a coding system, or a character code.") 2276a coding system, or a character code. */
2276 (char_table, range, value) 2277 (char_table, range, value))
2277 Lisp_Object char_table, range, value; 2278 Lisp_Object char_table, range, value;
2278{ 2279{
2279 int i; 2280 int i;
@@ -2323,10 +2324,10 @@ a coding system, or a character code.")
2323 2324
2324DEFUN ("set-char-table-default", Fset_char_table_default, 2325DEFUN ("set-char-table-default", Fset_char_table_default,
2325 Sset_char_table_default, 3, 3, 0, 2326 Sset_char_table_default, 3, 3, 0,
2326 "Set the default value in CHAR-TABLE for a generic character CHAR to VALUE.\n\ 2327 /* Set the default value in CHAR-TABLE for a generic character CHAR to VALUE.
2327The generic character specifies the group of characters.\n\ 2328The generic character specifies the group of characters.
2328See also the documentation of make-char.") 2329See also the documentation of make-char. */
2329 (char_table, ch, value) 2330 (char_table, ch, value))
2330 Lisp_Object char_table, ch, value; 2331 Lisp_Object char_table, ch, value;
2331{ 2332{
2332 int c, charset, code1, code2; 2333 int c, charset, code1, code2;
@@ -2414,8 +2415,8 @@ optimize_sub_char_table (table, chars)
2414 2415
2415DEFUN ("optimize-char-table", Foptimize_char_table, Soptimize_char_table, 2416DEFUN ("optimize-char-table", Foptimize_char_table, Soptimize_char_table,
2416 1, 1, 0, 2417 1, 1, 0,
2417 "Optimize char table TABLE.") 2418 /* Optimize char table TABLE. */
2418 (table) 2419 (table))
2419 Lisp_Object table; 2420 Lisp_Object table;
2420{ 2421{
2421 Lisp_Object elt; 2422 Lisp_Object elt;
@@ -2521,11 +2522,11 @@ map_char_table (c_function, function, subtable, arg, depth, indices)
2521} 2522}
2522 2523
2523DEFUN ("map-char-table", Fmap_char_table, Smap_char_table, 2524DEFUN ("map-char-table", Fmap_char_table, Smap_char_table,
2524 2, 2, 0, 2525 2, 2, 0,
2525 "Call FUNCTION for each (normal and generic) characters in CHAR-TABLE.\n\ 2526 /* Call FUNCTION for each (normal and generic) characters in CHAR-TABLE.
2526FUNCTION is called with two arguments--a key and a value.\n\ 2527FUNCTION is called with two arguments--a key and a value.
2527The key is always a possible IDX argument to `aref'.") 2528The key is always a possible IDX argument to `aref'. */
2528 (function, char_table) 2529 (function, char_table))
2529 Lisp_Object function, char_table; 2530 Lisp_Object function, char_table;
2530{ 2531{
2531 /* The depth of char table is at most 3. */ 2532 /* The depth of char table is at most 3. */
@@ -2588,9 +2589,9 @@ nconc2 (s1, s2)
2588} 2589}
2589 2590
2590DEFUN ("nconc", Fnconc, Snconc, 0, MANY, 0, 2591DEFUN ("nconc", Fnconc, Snconc, 0, MANY, 0,
2591 "Concatenate any number of lists by altering them.\n\ 2592 /* Concatenate any number of lists by altering them.
2592Only the last argument is not altered, and need not be a list.") 2593Only the last argument is not altered, and need not be a list. */
2593 (nargs, args) 2594 (nargs, args))
2594 int nargs; 2595 int nargs;
2595 Lisp_Object *args; 2596 Lisp_Object *args;
2596{ 2597{
@@ -2717,11 +2718,11 @@ mapcar1 (leni, vals, fn, seq)
2717} 2718}
2718 2719
2719DEFUN ("mapconcat", Fmapconcat, Smapconcat, 3, 3, 0, 2720DEFUN ("mapconcat", Fmapconcat, Smapconcat, 3, 3, 0,
2720 "Apply FUNCTION to each element of SEQUENCE, and concat the results as strings.\n\ 2721 /* Apply FUNCTION to each element of SEQUENCE, and concat the results as strings.
2721In between each pair of results, stick in SEPARATOR. Thus, \" \" as\n\ 2722In between each pair of results, stick in SEPARATOR. Thus, "" as
2722SEPARATOR results in spaces between the values returned by FUNCTION.\n\ 2723SEPARATOR results in spaces between the values returned by FUNCTION.
2723SEQUENCE may be a list, a vector, a bool-vector, or a string.") 2724SEQUENCE may be a list, a vector, a bool-vector, or a string. */
2724 (function, sequence, separator) 2725 (function, sequence, separator))
2725 Lisp_Object function, sequence, separator; 2726 Lisp_Object function, sequence, separator;
2726{ 2727{
2727 Lisp_Object len; 2728 Lisp_Object len;
@@ -2752,10 +2753,10 @@ SEQUENCE may be a list, a vector, a bool-vector, or a string.")
2752} 2753}
2753 2754
2754DEFUN ("mapcar", Fmapcar, Smapcar, 2, 2, 0, 2755DEFUN ("mapcar", Fmapcar, Smapcar, 2, 2, 0,
2755 "Apply FUNCTION to each element of SEQUENCE, and make a list of the results.\n\ 2756 /* Apply FUNCTION to each element of SEQUENCE, and make a list of the results.
2756The result is a list just as long as SEQUENCE.\n\ 2757The result is a list just as long as SEQUENCE.
2757SEQUENCE may be a list, a vector, a bool-vector, or a string.") 2758SEQUENCE may be a list, a vector, a bool-vector, or a string. */
2758 (function, sequence) 2759 (function, sequence))
2759 Lisp_Object function, sequence; 2760 Lisp_Object function, sequence;
2760{ 2761{
2761 register Lisp_Object len; 2762 register Lisp_Object len;
@@ -2772,10 +2773,10 @@ SEQUENCE may be a list, a vector, a bool-vector, or a string.")
2772} 2773}
2773 2774
2774DEFUN ("mapc", Fmapc, Smapc, 2, 2, 0, 2775DEFUN ("mapc", Fmapc, Smapc, 2, 2, 0,
2775 "Apply FUNCTION to each element of SEQUENCE for side effects only.\n\ 2776 /* Apply FUNCTION to each element of SEQUENCE for side effects only.
2776Unlike `mapcar', don't accumulate the results. Return SEQUENCE.\n\ 2777Unlike `mapcar', don't accumulate the results. Return SEQUENCE.
2777SEQUENCE may be a list, a vector, a bool-vector, or a string.") 2778SEQUENCE may be a list, a vector, a bool-vector, or a string. */
2778 (function, sequence) 2779 (function, sequence))
2779 Lisp_Object function, sequence; 2780 Lisp_Object function, sequence;
2780{ 2781{
2781 register int leni; 2782 register int leni;
@@ -2789,18 +2790,18 @@ SEQUENCE may be a list, a vector, a bool-vector, or a string.")
2789/* Anything that calls this function must protect from GC! */ 2790/* Anything that calls this function must protect from GC! */
2790 2791
2791DEFUN ("y-or-n-p", Fy_or_n_p, Sy_or_n_p, 1, 1, 0, 2792DEFUN ("y-or-n-p", Fy_or_n_p, Sy_or_n_p, 1, 1, 0,
2792 "Ask user a \"y or n\" question. Return t if answer is \"y\".\n\ 2793 /* Ask user a "y or n" question. Return t if answer is "y".
2793Takes one argument, which is the string to display to ask the question.\n\ 2794Takes one argument, which is the string to display to ask the question.
2794It should end in a space; `y-or-n-p' adds `(y or n) ' to it.\n\ 2795It should end in a space; `y-or-n-p' adds `(y or n) ' to it.
2795No confirmation of the answer is requested; a single character is enough.\n\ 2796No confirmation of the answer is requested; a single character is enough.
2796Also accepts Space to mean yes, or Delete to mean no. \(Actually, it uses\n\ 2797Also accepts Space to mean yes, or Delete to mean no. \(Actually, it uses
2797the bindings in `query-replace-map'; see the documentation of that variable\n\ 2798the bindings in `query-replace-map'; see the documentation of that variable
2798for more information. In this case, the useful bindings are `act', `skip',\n\ 2799for more information. In this case, the useful bindings are `act', `skip',
2799`recenter', and `quit'.\)\n\ 2800`recenter', and `quit'.\)
2800\n\ 2801
2801Under a windowing system a dialog box will be used if `last-nonmenu-event'\n\ 2802Under a windowing system a dialog box will be used if `last-nonmenu-event'
2802is nil and `use-dialog-box' is non-nil.") 2803is nil and `use-dialog-box' is non-nil. */
2803 (prompt) 2804 (prompt))
2804 Lisp_Object prompt; 2805 Lisp_Object prompt;
2805{ 2806{
2806 register Lisp_Object obj, key, def, map; 2807 register Lisp_Object obj, key, def, map;
@@ -2929,15 +2930,15 @@ do_yes_or_no_p (prompt)
2929/* Anything that calls this function must protect from GC! */ 2930/* Anything that calls this function must protect from GC! */
2930 2931
2931DEFUN ("yes-or-no-p", Fyes_or_no_p, Syes_or_no_p, 1, 1, 0, 2932DEFUN ("yes-or-no-p", Fyes_or_no_p, Syes_or_no_p, 1, 1, 0,
2932 "Ask user a yes-or-no question. Return t if answer is yes.\n\ 2933 /* Ask user a yes-or-no question. Return t if answer is yes.
2933Takes one argument, which is the string to display to ask the question.\n\ 2934Takes one argument, which is the string to display to ask the question.
2934It should end in a space; `yes-or-no-p' adds `(yes or no) ' to it.\n\ 2935It should end in a space; `yes-or-no-p' adds `(yes or no) ' to it.
2935The user must confirm the answer with RET,\n\ 2936The user must confirm the answer with RET,
2936and can edit it until it has been confirmed.\n\ 2937and can edit it until it has been confirmed.
2937\n\ 2938
2938Under a windowing system a dialog box will be used if `last-nonmenu-event'\n\ 2939Under a windowing system a dialog box will be used if `last-nonmenu-event'
2939is nil, and `use-dialog-box' is non-nil.") 2940is nil, and `use-dialog-box' is non-nil. */
2940 (prompt) 2941 (prompt))
2941 Lisp_Object prompt; 2942 Lisp_Object prompt;
2942{ 2943{
2943 register Lisp_Object ans; 2944 register Lisp_Object ans;
@@ -2994,14 +2995,17 @@ is nil, and `use-dialog-box' is non-nil.")
2994} 2995}
2995 2996
2996DEFUN ("load-average", Fload_average, Sload_average, 0, 1, 0, 2997DEFUN ("load-average", Fload_average, Sload_average, 0, 1, 0,
2997 "Return list of 1 minute, 5 minute and 15 minute load averages.\n\ 2998 /* Return list of 1 minute, 5 minute and 15 minute load averages.
2998Each of the three load averages is multiplied by 100,\n\ 2999
2999then converted to integer.\n\ 3000Each of the three load averages is multiplied by 100, then converted
3000When USE-FLOATS is non-nil, floats will be used instead of integers.\n\ 3001to integer.
3001These floats are not multiplied by 100.\n\n\ 3002
3002If the 5-minute or 15-minute load averages are not available, return a\n\ 3003When USE-FLOATS is non-nil, floats will be used instead of integers.
3003shortened list, containing only those averages which are available.") 3004These floats are not multiplied by 100.
3004 (use_floats) 3005
3006If the 5-minute or 15-minute load averages are not available, return a
3007shortened list, containing only those averages which are available. */
3008 (use_floats))
3005 Lisp_Object use_floats; 3009 Lisp_Object use_floats;
3006{ 3010{
3007 double load_ave[3]; 3011 double load_ave[3];
@@ -3025,14 +3029,14 @@ shortened list, containing only those averages which are available.")
3025Lisp_Object Vfeatures, Qsubfeatures, Vafter_load_alist; 3029Lisp_Object Vfeatures, Qsubfeatures, Vafter_load_alist;
3026 3030
3027DEFUN ("featurep", Ffeaturep, Sfeaturep, 1, 2, 0, 3031DEFUN ("featurep", Ffeaturep, Sfeaturep, 1, 2, 0,
3028 "Returns t if FEATURE is present in this Emacs.\n\ 3032 /* Returns t if FEATURE is present in this Emacs.
3029Use this to conditionalize execution of lisp code based on the presence or\n\ 3033
3030absence of emacs or environment extensions.\n\ 3034Use this to conditionalize execution of lisp code based on the
3031Use `provide' to declare that a feature is available.\n\ 3035presence or absence of emacs or environment extensions.
3032This function looks at the value of the variable `features'.\n\ 3036Use `provide' to declare that a feature is available. This function
3033The optional argument SUBFEATURE can be used to check a specific\n\ 3037looks at the value of the variable `features'. The optional argument
3034subfeature of FEATURE.") 3038SUBFEATURE can be used to check a specific subfeature of FEATURE. */
3035 (feature, subfeature) 3039 (feature, subfeature))
3036 Lisp_Object feature, subfeature; 3040 Lisp_Object feature, subfeature;
3037{ 3041{
3038 register Lisp_Object tem; 3042 register Lisp_Object tem;
@@ -3044,10 +3048,10 @@ subfeature of FEATURE.")
3044} 3048}
3045 3049
3046DEFUN ("provide", Fprovide, Sprovide, 1, 2, 0, 3050DEFUN ("provide", Fprovide, Sprovide, 1, 2, 0,
3047 "Announce that FEATURE is a feature of the current Emacs.\n\ 3051 /* Announce that FEATURE is a feature of the current Emacs.
3048The optional argument SUBFEATURES should be a list of symbols listing\n\ 3052The optional argument SUBFEATURES should be a list of symbols listing
3049particular subfeatures supported in this version of FEATURE.") 3053particular subfeatures supported in this version of FEATURE. */
3050 (feature, subfeatures) 3054 (feature, subfeatures))
3051 Lisp_Object feature, subfeatures; 3055 Lisp_Object feature, subfeatures;
3052{ 3056{
3053 register Lisp_Object tem; 3057 register Lisp_Object tem;
@@ -3070,17 +3074,17 @@ particular subfeatures supported in this version of FEATURE.")
3070} 3074}
3071 3075
3072DEFUN ("require", Frequire, Srequire, 1, 3, 0, 3076DEFUN ("require", Frequire, Srequire, 1, 3, 0,
3073 "If feature FEATURE is not loaded, load it from FILENAME.\n\ 3077 /* If feature FEATURE is not loaded, load it from FILENAME.
3074If FEATURE is not a member of the list `features', then the feature\n\ 3078If FEATURE is not a member of the list `features', then the feature
3075is not loaded; so load the file FILENAME.\n\ 3079is not loaded; so load the file FILENAME.
3076If FILENAME is omitted, the printname of FEATURE is used as the file name,\n\ 3080If FILENAME is omitted, the printname of FEATURE is used as the file name,
3077and `load' will try to load this name appended with the suffix `.elc',\n\ 3081and `load' will try to load this name appended with the suffix `.elc',
3078`.el' or the unmodified name, in that order.\n\ 3082`.el' or the unmodified name, in that order.
3079If the optional third argument NOERROR is non-nil,\n\ 3083If the optional third argument NOERROR is non-nil,
3080then return nil if the file is not found instead of signaling an error.\n\ 3084then return nil if the file is not found instead of signaling an error.
3081Normally the return value is FEATURE.\n\ 3085Normally the return value is FEATURE.
3082The normal messages at start and end of loading FILENAME are suppressed.") 3086The normal messages at start and end of loading FILENAME are suppressed. */
3083 (feature, filename, noerror) 3087 (feature, filename, noerror))
3084 Lisp_Object feature, filename, noerror; 3088 Lisp_Object feature, filename, noerror;
3085{ 3089{
3086 register Lisp_Object tem; 3090 register Lisp_Object tem;
@@ -3123,13 +3127,13 @@ The normal messages at start and end of loading FILENAME are suppressed.")
3123 for the sole reason of efficiency. */ 3127 for the sole reason of efficiency. */
3124 3128
3125DEFUN ("plist-member", Fplist_member, Splist_member, 2, 2, 0, 3129DEFUN ("plist-member", Fplist_member, Splist_member, 2, 2, 0,
3126 "Return non-nil if PLIST has the property PROP.\n\ 3130 /* Return non-nil if PLIST has the property PROP.
3127PLIST is a property list, which is a list of the form\n\ 3131PLIST is a property list, which is a list of the form
3128\(PROP1 VALUE1 PROP2 VALUE2 ...\). PROP is a symbol.\n\ 3132\(PROP1 VALUE1 PROP2 VALUE2 ...\). PROP is a symbol.
3129Unlike `plist-get', this allows you to distinguish between a missing\n\ 3133Unlike `plist-get', this allows you to distinguish between a missing
3130property and a property with the value nil.\n\ 3134property and a property with the value nil.
3131The value is actually the tail of PLIST whose car is PROP.") 3135The value is actually the tail of PLIST whose car is PROP. */
3132 (plist, prop) 3136 (plist, prop))
3133 Lisp_Object plist, prop; 3137 Lisp_Object plist, prop;
3134{ 3138{
3135 while (CONSP (plist) && !EQ (XCAR (plist), prop)) 3139 while (CONSP (plist) && !EQ (XCAR (plist), prop))
@@ -3142,9 +3146,9 @@ The value is actually the tail of PLIST whose car is PROP.")
3142} 3146}
3143 3147
3144DEFUN ("widget-put", Fwidget_put, Swidget_put, 3, 3, 0, 3148DEFUN ("widget-put", Fwidget_put, Swidget_put, 3, 3, 0,
3145 "In WIDGET, set PROPERTY to VALUE.\n\ 3149 /* In WIDGET, set PROPERTY to VALUE.
3146The value can later be retrieved with `widget-get'.") 3150The value can later be retrieved with `widget-get'. */
3147 (widget, property, value) 3151 (widget, property, value))
3148 Lisp_Object widget, property, value; 3152 Lisp_Object widget, property, value;
3149{ 3153{
3150 CHECK_CONS (widget, 1); 3154 CHECK_CONS (widget, 1);
@@ -3153,10 +3157,10 @@ The value can later be retrieved with `widget-get'.")
3153} 3157}
3154 3158
3155DEFUN ("widget-get", Fwidget_get, Swidget_get, 2, 2, 0, 3159DEFUN ("widget-get", Fwidget_get, Swidget_get, 2, 2, 0,
3156 "In WIDGET, get the value of PROPERTY.\n\ 3160 /* In WIDGET, get the value of PROPERTY.
3157The value could either be specified when the widget was created, or\n\ 3161The value could either be specified when the widget was created, or
3158later with `widget-put'.") 3162later with `widget-put'. */
3159 (widget, property) 3163 (widget, property))
3160 Lisp_Object widget, property; 3164 Lisp_Object widget, property;
3161{ 3165{
3162 Lisp_Object tmp; 3166 Lisp_Object tmp;
@@ -3180,9 +3184,9 @@ later with `widget-put'.")
3180} 3184}
3181 3185
3182DEFUN ("widget-apply", Fwidget_apply, Swidget_apply, 2, MANY, 0, 3186DEFUN ("widget-apply", Fwidget_apply, Swidget_apply, 2, MANY, 0,
3183 "Apply the value of WIDGET's PROPERTY to the widget itself.\n\ 3187 /* Apply the value of WIDGET's PROPERTY to the widget itself.
3184ARGS are passed as extra arguments to the function.") 3188ARGS are passed as extra arguments to the function. */
3185 (nargs, args) 3189 (nargs, args))
3186 int nargs; 3190 int nargs;
3187 Lisp_Object *args; 3191 Lisp_Object *args;
3188{ 3192{
@@ -3287,11 +3291,11 @@ static int base64_decode_1 P_ ((const char *, char *, int, int, int *));
3287 3291
3288DEFUN ("base64-encode-region", Fbase64_encode_region, Sbase64_encode_region, 3292DEFUN ("base64-encode-region", Fbase64_encode_region, Sbase64_encode_region,
3289 2, 3, "r", 3293 2, 3, "r",
3290 "Base64-encode the region between BEG and END.\n\ 3294 /* Base64-encode the region between BEG and END.
3291Return the length of the encoded text.\n\ 3295Return the length of the encoded text.
3292Optional third argument NO-LINE-BREAK means do not break long lines\n\ 3296Optional third argument NO-LINE-BREAK means do not break long lines
3293into shorter lines.") 3297into shorter lines. */
3294 (beg, end, no_line_break) 3298 (beg, end, no_line_break))
3295 Lisp_Object beg, end, no_line_break; 3299 Lisp_Object beg, end, no_line_break;
3296{ 3300{
3297 char *encoded; 3301 char *encoded;
@@ -3352,10 +3356,10 @@ into shorter lines.")
3352 3356
3353DEFUN ("base64-encode-string", Fbase64_encode_string, Sbase64_encode_string, 3357DEFUN ("base64-encode-string", Fbase64_encode_string, Sbase64_encode_string,
3354 1, 2, 0, 3358 1, 2, 0,
3355 "Base64-encode STRING and return the result.\n\ 3359 /* Base64-encode STRING and return the result.
3356Optional second argument NO-LINE-BREAK means do not break long lines\n\ 3360Optional second argument NO-LINE-BREAK means do not break long lines
3357into shorter lines.") 3361into shorter lines. */
3358 (string, no_line_break) 3362 (string, no_line_break))
3359 Lisp_Object string, no_line_break; 3363 Lisp_Object string, no_line_break;
3360{ 3364{
3361 int allength, length, encoded_length; 3365 int allength, length, encoded_length;
@@ -3493,11 +3497,11 @@ base64_encode_1 (from, to, length, line_break, multibyte)
3493 3497
3494 3498
3495DEFUN ("base64-decode-region", Fbase64_decode_region, Sbase64_decode_region, 3499DEFUN ("base64-decode-region", Fbase64_decode_region, Sbase64_decode_region,
3496 2, 2, "r", 3500 2, 2, "r",
3497 "Base64-decode the region between BEG and END.\n\ 3501 /* Base64-decode the region between BEG and END.
3498Return the length of the decoded text.\n\ 3502Return the length of the decoded text.
3499If the region can't be decoded, signal an error and don't modify the buffer.") 3503If the region can't be decoded, signal an error and don't modify the buffer. */
3500 (beg, end) 3504 (beg, end))
3501 Lisp_Object beg, end; 3505 Lisp_Object beg, end;
3502{ 3506{
3503 int ibeg, iend, length, allength; 3507 int ibeg, iend, length, allength;
@@ -3560,8 +3564,8 @@ If the region can't be decoded, signal an error and don't modify the buffer.")
3560 3564
3561DEFUN ("base64-decode-string", Fbase64_decode_string, Sbase64_decode_string, 3565DEFUN ("base64-decode-string", Fbase64_decode_string, Sbase64_decode_string,
3562 1, 1, 0, 3566 1, 1, 0,
3563 "Base64-decode STRING and return the result.") 3567 /* Base64-decode STRING and return the result. */
3564 (string) 3568 (string))
3565 Lisp_Object string; 3569 Lisp_Object string;
3566{ 3570{
3567 char *decoded; 3571 char *decoded;
@@ -4664,8 +4668,8 @@ sxhash (obj, depth)
4664 4668
4665 4669
4666DEFUN ("sxhash", Fsxhash, Ssxhash, 1, 1, 0, 4670DEFUN ("sxhash", Fsxhash, Ssxhash, 1, 1, 0,
4667 "Compute a hash code for OBJ and return it as integer.") 4671 /* Compute a hash code for OBJ and return it as integer. */
4668 (obj) 4672 (obj))
4669 Lisp_Object obj; 4673 Lisp_Object obj;
4670{ 4674{
4671 unsigned hash = sxhash (obj, 0);; 4675 unsigned hash = sxhash (obj, 0);;
@@ -4674,34 +4678,36 @@ DEFUN ("sxhash", Fsxhash, Ssxhash, 1, 1, 0,
4674 4678
4675 4679
4676DEFUN ("make-hash-table", Fmake_hash_table, Smake_hash_table, 0, MANY, 0, 4680DEFUN ("make-hash-table", Fmake_hash_table, Smake_hash_table, 0, MANY, 0,
4677 "Create and return a new hash table.\n\ 4681 /* Create and return a new hash table.
4678Arguments are specified as keyword/argument pairs. The following\n\ 4682
4679arguments are defined:\n\ 4683Arguments are specified as keyword/argument pairs. The following
4680\n\ 4684arguments are defined:
4681:test TEST -- TEST must be a symbol that specifies how to compare keys.\n\ 4685
4682Default is `eql'. Predefined are the tests `eq', `eql', and `equal'.\n\ 4686:test TEST -- TEST must be a symbol that specifies how to compare
4683User-supplied test and hash functions can be specified via\n\ 4687keys. Default is `eql'. Predefined are the tests `eq', `eql', and
4684`define-hash-table-test'.\n\ 4688`equal'. User-supplied test and hash functions can be specified via
4685\n\ 4689`define-hash-table-test'.
4686:size SIZE -- A hint as to how many elements will be put in the table.\n\ 4690
4687Default is 65.\n\ 4691:size SIZE -- A hint as to how many elements will be put in the table.
4688\n\ 4692Default is 65.
4689:rehash-size REHASH-SIZE - Indicates how to expand the table when\n\ 4693
4690it fills up. If REHASH-SIZE is an integer, add that many space.\n\ 4694:rehash-size REHASH-SIZE - Indicates how to expand the table when it
4691If it is a float, it must be > 1.0, and the new size is computed by\n\ 4695fills up. If REHASH-SIZE is an integer, add that many space. If it
4692multiplying the old size with that factor. Default is 1.5.\n\ 4696is a float, it must be > 1.0, and the new size is computed by
4693\n\ 4697multiplying the old size with that factor. Default is 1.5.
4694:rehash-threshold THRESHOLD -- THRESHOLD must a float > 0, and <= 1.0.\n\ 4698
4695Resize the hash table when ratio of the number of entries in the table.\n\ 4699:rehash-threshold THRESHOLD -- THRESHOLD must a float > 0, and <= 1.0.
4696Default is 0.8.\n\ 4700Resize the hash table when ratio of the number of entries in the
4697\n\ 4701table. Default is 0.8.
4698:weakness WEAK -- WEAK must be one of nil, t, `key', `value',\n\ 4702
4699`key-or-value', or `key-and-value'. If WEAK is not nil, the table returned\n\ 4703:weakness WEAK -- WEAK must be one of nil, t, `key', `value',
4700is a weak table. Key/value pairs are removed from a weak hash table when\n\ 4704`key-or-value', or `key-and-value'. If WEAK is not nil, the table
4701there are no non-weak references pointing to their key, value, one of key\n\ 4705returned is a weak table. Key/value pairs are removed from a weak
4702or value, or both key and value, depending on WEAK. WEAK t is equivalent\n\ 4706hash table when there are no non-weak references pointing to their
4703to `key-and-value'. Default value of WEAK is nil.") 4707key, value, one of key or value, or both key and value, depending on
4704 (nargs, args) 4708WEAK. WEAK t is equivalent to `key-and-value'. Default value of WEAK
4709is nil. */
4710 (nargs, args))
4705 int nargs; 4711 int nargs;
4706 Lisp_Object *args; 4712 Lisp_Object *args;
4707{ 4713{
@@ -4786,8 +4792,8 @@ to `key-and-value'. Default value of WEAK is nil.")
4786 4792
4787 4793
4788DEFUN ("copy-hash-table", Fcopy_hash_table, Scopy_hash_table, 1, 1, 0, 4794DEFUN ("copy-hash-table", Fcopy_hash_table, Scopy_hash_table, 1, 1, 0,
4789 "Return a copy of hash table TABLE.") 4795 /* Return a copy of hash table TABLE. */
4790 (table) 4796 (table))
4791 Lisp_Object table; 4797 Lisp_Object table;
4792{ 4798{
4793 return copy_hash_table (check_hash_table (table)); 4799 return copy_hash_table (check_hash_table (table));
@@ -4795,11 +4801,12 @@ DEFUN ("copy-hash-table", Fcopy_hash_table, Scopy_hash_table, 1, 1, 0,
4795 4801
4796 4802
4797DEFUN ("makehash", Fmakehash, Smakehash, 0, 1, 0, 4803DEFUN ("makehash", Fmakehash, Smakehash, 0, 1, 0,
4798 "Create a new hash table.\n\ 4804 /* Create a new hash table.
4799Optional first argument TEST specifies how to compare keys in\n\ 4805
4800the table. Predefined tests are `eq', `eql', and `equal'. Default\n\ 4806Optional first argument TEST specifies how to compare keys in the
4801is `eql'. New tests can be defined with `define-hash-table-test'.") 4807table. Predefined tests are `eq', `eql', and `equal'. Default is
4802 (test) 4808`eql'. New tests can be defined with `define-hash-table-test'. */
4809 (test))
4803 Lisp_Object test; 4810 Lisp_Object test;
4804{ 4811{
4805 Lisp_Object args[2]; 4812 Lisp_Object args[2];
@@ -4810,9 +4817,9 @@ is `eql'. New tests can be defined with `define-hash-table-test'.")
4810 4817
4811 4818
4812DEFUN ("hash-table-count", Fhash_table_count, Shash_table_count, 1, 1, 0, 4819DEFUN ("hash-table-count", Fhash_table_count, Shash_table_count, 1, 1, 0,
4813 "Return the number of elements in TABLE.") 4820 /* Return the number of elements in TABLE. */
4814 (table) 4821 (table))
4815 Lisp_Object table; 4822 Lisp_Object table;
4816{ 4823{
4817 return check_hash_table (table)->count; 4824 return check_hash_table (table)->count;
4818} 4825}
@@ -4820,9 +4827,9 @@ DEFUN ("hash-table-count", Fhash_table_count, Shash_table_count, 1, 1, 0,
4820 4827
4821DEFUN ("hash-table-rehash-size", Fhash_table_rehash_size, 4828DEFUN ("hash-table-rehash-size", Fhash_table_rehash_size,
4822 Shash_table_rehash_size, 1, 1, 0, 4829 Shash_table_rehash_size, 1, 1, 0,
4823 "Return the current rehash size of TABLE.") 4830 /* Return the current rehash size of TABLE. */
4824 (table) 4831 (table))
4825 Lisp_Object table; 4832 Lisp_Object table;
4826{ 4833{
4827 return check_hash_table (table)->rehash_size; 4834 return check_hash_table (table)->rehash_size;
4828} 4835}
@@ -4830,20 +4837,20 @@ DEFUN ("hash-table-rehash-size", Fhash_table_rehash_size,
4830 4837
4831DEFUN ("hash-table-rehash-threshold", Fhash_table_rehash_threshold, 4838DEFUN ("hash-table-rehash-threshold", Fhash_table_rehash_threshold,
4832 Shash_table_rehash_threshold, 1, 1, 0, 4839 Shash_table_rehash_threshold, 1, 1, 0,
4833 "Return the current rehash threshold of TABLE.") 4840 /* Return the current rehash threshold of TABLE. */
4834 (table) 4841 (table))
4835 Lisp_Object table; 4842 Lisp_Object table;
4836{ 4843{
4837 return check_hash_table (table)->rehash_threshold; 4844 return check_hash_table (table)->rehash_threshold;
4838} 4845}
4839 4846
4840 4847
4841DEFUN ("hash-table-size", Fhash_table_size, Shash_table_size, 1, 1, 0, 4848DEFUN ("hash-table-size", Fhash_table_size, Shash_table_size, 1, 1, 0,
4842 "Return the size of TABLE.\n\ 4849 /* Return the size of TABLE.
4843The size can be used as an argument to `make-hash-table' to create\n\ 4850The size can be used as an argument to `make-hash-table' to create
4844a hash table than can hold as many elements of TABLE holds\n\ 4851a hash table than can hold as many elements of TABLE holds
4845without need for resizing.") 4852without need for resizing. */
4846 (table) 4853 (table))
4847 Lisp_Object table; 4854 Lisp_Object table;
4848{ 4855{
4849 struct Lisp_Hash_Table *h = check_hash_table (table); 4856 struct Lisp_Hash_Table *h = check_hash_table (table);
@@ -4852,9 +4859,9 @@ without need for resizing.")
4852 4859
4853 4860
4854DEFUN ("hash-table-test", Fhash_table_test, Shash_table_test, 1, 1, 0, 4861DEFUN ("hash-table-test", Fhash_table_test, Shash_table_test, 1, 1, 0,
4855 "Return the test TABLE uses.") 4862 /* Return the test TABLE uses. */
4856 (table) 4863 (table))
4857 Lisp_Object table; 4864 Lisp_Object table;
4858{ 4865{
4859 return check_hash_table (table)->test; 4866 return check_hash_table (table)->test;
4860} 4867}
@@ -4862,17 +4869,17 @@ DEFUN ("hash-table-test", Fhash_table_test, Shash_table_test, 1, 1, 0,
4862 4869
4863DEFUN ("hash-table-weakness", Fhash_table_weakness, Shash_table_weakness, 4870DEFUN ("hash-table-weakness", Fhash_table_weakness, Shash_table_weakness,
4864 1, 1, 0, 4871 1, 1, 0,
4865 "Return the weakness of TABLE.") 4872 /* Return the weakness of TABLE. */
4866 (table) 4873 (table))
4867 Lisp_Object table; 4874 Lisp_Object table;
4868{ 4875{
4869 return check_hash_table (table)->weak; 4876 return check_hash_table (table)->weak;
4870} 4877}
4871 4878
4872 4879
4873DEFUN ("hash-table-p", Fhash_table_p, Shash_table_p, 1, 1, 0, 4880DEFUN ("hash-table-p", Fhash_table_p, Shash_table_p, 1, 1, 0,
4874 "Return t if OBJ is a Lisp hash table object.") 4881 /* Return t if OBJ is a Lisp hash table object. */
4875 (obj) 4882 (obj))
4876 Lisp_Object obj; 4883 Lisp_Object obj;
4877{ 4884{
4878 return HASH_TABLE_P (obj) ? Qt : Qnil; 4885 return HASH_TABLE_P (obj) ? Qt : Qnil;
@@ -4880,8 +4887,8 @@ DEFUN ("hash-table-p", Fhash_table_p, Shash_table_p, 1, 1, 0,
4880 4887
4881 4888
4882DEFUN ("clrhash", Fclrhash, Sclrhash, 1, 1, 0, 4889DEFUN ("clrhash", Fclrhash, Sclrhash, 1, 1, 0,
4883 "Clear hash table TABLE.") 4890 /* Clear hash table TABLE. */
4884 (table) 4891 (table))
4885 Lisp_Object table; 4892 Lisp_Object table;
4886{ 4893{
4887 hash_clear (check_hash_table (table)); 4894 hash_clear (check_hash_table (table));
@@ -4890,9 +4897,9 @@ DEFUN ("clrhash", Fclrhash, Sclrhash, 1, 1, 0,
4890 4897
4891 4898
4892DEFUN ("gethash", Fgethash, Sgethash, 2, 3, 0, 4899DEFUN ("gethash", Fgethash, Sgethash, 2, 3, 0,
4893 "Look up KEY in TABLE and return its associated value.\n\ 4900 /* Look up KEY in TABLE and return its associated value.
4894If KEY is not found, return DFLT which defaults to nil.") 4901If KEY is not found, return DFLT which defaults to nil. */
4895 (key, table, dflt) 4902 (key, table, dflt))
4896 Lisp_Object key, table, dflt; 4903 Lisp_Object key, table, dflt;
4897{ 4904{
4898 struct Lisp_Hash_Table *h = check_hash_table (table); 4905 struct Lisp_Hash_Table *h = check_hash_table (table);
@@ -4902,10 +4909,10 @@ If KEY is not found, return DFLT which defaults to nil.")
4902 4909
4903 4910
4904DEFUN ("puthash", Fputhash, Sputhash, 3, 3, 0, 4911DEFUN ("puthash", Fputhash, Sputhash, 3, 3, 0,
4905 "Associate KEY with VALUE in hash table TABLE.\n\ 4912 /* Associate KEY with VALUE in hash table TABLE.
4906If KEY is already present in table, replace its current value with\n\ 4913If KEY is already present in table, replace its current value with
4907VALUE.") 4914VALUE. */
4908 (key, value, table) 4915 (key, value, table))
4909 Lisp_Object key, value, table; 4916 Lisp_Object key, value, table;
4910{ 4917{
4911 struct Lisp_Hash_Table *h = check_hash_table (table); 4918 struct Lisp_Hash_Table *h = check_hash_table (table);
@@ -4923,8 +4930,8 @@ VALUE.")
4923 4930
4924 4931
4925DEFUN ("remhash", Fremhash, Sremhash, 2, 2, 0, 4932DEFUN ("remhash", Fremhash, Sremhash, 2, 2, 0,
4926 "Remove KEY from TABLE.") 4933 /* Remove KEY from TABLE. */
4927 (key, table) 4934 (key, table))
4928 Lisp_Object key, table; 4935 Lisp_Object key, table;
4929{ 4936{
4930 struct Lisp_Hash_Table *h = check_hash_table (table); 4937 struct Lisp_Hash_Table *h = check_hash_table (table);
@@ -4934,9 +4941,9 @@ DEFUN ("remhash", Fremhash, Sremhash, 2, 2, 0,
4934 4941
4935 4942
4936DEFUN ("maphash", Fmaphash, Smaphash, 2, 2, 0, 4943DEFUN ("maphash", Fmaphash, Smaphash, 2, 2, 0,
4937 "Call FUNCTION for all entries in hash table TABLE.\n\ 4944 /* Call FUNCTION for all entries in hash table TABLE.
4938FUNCTION is called with 2 arguments KEY and VALUE.") 4945FUNCTION is called with 2 arguments KEY and VALUE. */
4939 (function, table) 4946 (function, table))
4940 Lisp_Object function, table; 4947 Lisp_Object function, table;
4941{ 4948{
4942 struct Lisp_Hash_Table *h = check_hash_table (table); 4949 struct Lisp_Hash_Table *h = check_hash_table (table);
@@ -4958,16 +4965,17 @@ FUNCTION is called with 2 arguments KEY and VALUE.")
4958 4965
4959DEFUN ("define-hash-table-test", Fdefine_hash_table_test, 4966DEFUN ("define-hash-table-test", Fdefine_hash_table_test,
4960 Sdefine_hash_table_test, 3, 3, 0, 4967 Sdefine_hash_table_test, 3, 3, 0,
4961 "Define a new hash table test with name NAME, a symbol.\n\ 4968 /* Define a new hash table test with name NAME, a symbol.
4962In hash tables create with NAME specified as test, use TEST to compare\n\ 4969
4963keys, and HASH for computing hash codes of keys.\n\ 4970In hash tables created with NAME specified as test, use TEST to
4964\n\ 4971compare keys, and HASH for computing hash codes of keys.
4965TEST must be a function taking two arguments and returning non-nil\n\ 4972
4966if both arguments are the same. HASH must be a function taking\n\ 4973TEST must be a function taking two arguments and returning non-nil if
4967one argument and return an integer that is the hash code of the\n\ 4974both arguments are the same. HASH must be a function taking one
4968argument. Hash code computation should use the whole value range of\n\ 4975argument and return an integer that is the hash code of the argument.
4969integers, including negative integers.") 4976Hash code computation should use the whole value range of integers,
4970 (name, test, hash) 4977including negative integers. */
4978 (name, test, hash))
4971 Lisp_Object name, test, hash; 4979 Lisp_Object name, test, hash;
4972{ 4980{
4973 return Fput (name, Qhash_table_test, list2 (test, hash)); 4981 return Fput (name, Qhash_table_test, list2 (test, hash));
@@ -4983,32 +4991,33 @@ integers, including negative integers.")
4983#include "coding.h" 4991#include "coding.h"
4984 4992
4985DEFUN ("md5", Fmd5, Smd5, 1, 5, 0, 4993DEFUN ("md5", Fmd5, Smd5, 1, 5, 0,
4986 "Return MD5 message digest of OBJECT, a buffer or string.\n\ 4994 /* Return MD5 message digest of OBJECT, a buffer or string.
4987A message digest is a cryptographic checksum of a document,\n\ 4995
4988and the algorithm to calculate it is defined in RFC 1321.\n\ 4996A message digest is a cryptographic checksum of a document, and the
4989\n\ 4997algorithm to calculate it is defined in RFC 1321.
4990The two optional arguments START and END are character positions\n\ 4998
4991specifying for which part of OBJECT the message digest should be computed.\n\ 4999The two optional arguments START and END are character positions
4992If nil or omitted, the digest is computed for the whole OBJECT.\n\ 5000specifying for which part of OBJECT the message digest should be
4993\n\ 5001computed. If nil or omitted, the digest is computed for the whole
4994The MD5 message digest is computed from the result of encoding the\n\ 5002OBJECT.
4995text in a coding system, not directly from the internal Emacs form\n\ 5003
4996of the text. The optional fourth argument CODING-SYSTEM specifies\n\ 5004The MD5 message digest is computed from the result of encoding the
4997which coding system to encode the text with. It should be the same\n\ 5005text in a coding system, not directly from the internal Emacs form of
4998coding system that you used or will use when actually writing the text\n\ 5006the text. The optional fourth argument CODING-SYSTEM specifies which
4999into a file.\n\ 5007coding system to encode the text with. It should be the same coding
5000\n\ 5008system that you used or will use when actually writing the text into a
5001If CODING-SYSTEM is nil or omitted, the default depends on OBJECT.\n\ 5009file.
5002If OBJECT is a buffer, the default for CODING-SYSTEM is whatever\n\ 5010
5003coding system would be chosen by default for writing this text\n\ 5011If CODING-SYSTEM is nil or omitted, the default depends on OBJECT. If
5004into a file.\n\ 5012OBJECT is a buffer, the default for CODING-SYSTEM is whatever coding
5005\n\ 5013system would be chosen by default for writing this text into a file.
5006If OBJECT is a string, the most preferred coding system (see the\n\ 5014
5007command `prefer-coding-system') is used.\n\ 5015If OBJECT is a string, the most preferred coding system (see the
5008\n\ 5016command `prefer-coding-system') is used.
5009If NOERROR is non-nil, silently assume the `raw-text' coding if the\n\ 5017
5010guesswork fails. Normally, an error is signaled in such case.") 5018If NOERROR is non-nil, silently assume the `raw-text' coding if the
5011 (object, start, end, coding_system, noerror) 5019guesswork fails. Normally, an error is signaled in such case. */
5020 (object, start, end, coding_system, noerror))
5012 Lisp_Object object, start, end, coding_system, noerror; 5021 Lisp_Object object, start, end, coding_system, noerror;
5013{ 5022{
5014 unsigned char digest[16]; 5023 unsigned char digest[16];
@@ -5263,17 +5272,17 @@ syms_of_fns ()
5263 5272
5264 Fset (Qyes_or_no_p_history, Qnil); 5273 Fset (Qyes_or_no_p_history, Qnil);
5265 5274
5266 DEFVAR_LISP ("features", &Vfeatures, 5275 DEFVAR_LISP ("features", &Vfeatures
5267 "A list of symbols which are the features of the executing emacs.\n\ 5276 /* A list of symbols which are the features of the executing emacs.
5268Used by `featurep' and `require', and altered by `provide'."); 5277Used by `featurep' and `require', and altered by `provide'. */);
5269 Vfeatures = Qnil; 5278 Vfeatures = Qnil;
5270 Qsubfeatures = intern ("subfeatures"); 5279 Qsubfeatures = intern ("subfeatures");
5271 staticpro (&Qsubfeatures); 5280 staticpro (&Qsubfeatures);
5272 5281
5273 DEFVAR_BOOL ("use-dialog-box", &use_dialog_box, 5282 DEFVAR_BOOL ("use-dialog-box", &use_dialog_box
5274 "*Non-nil means mouse commands use dialog boxes to ask questions.\n\ 5283 /* *Non-nil means mouse commands use dialog boxes to ask questions.
5275This applies to y-or-n and yes-or-no questions asked by commands\n\ 5284This applies to y-or-n and yes-or-no questions asked by commands
5276invoked by mouse clicks and mouse menu items."); 5285invoked by mouse clicks and mouse menu items. */);
5277 use_dialog_box = 1; 5286 use_dialog_box = 1;
5278 5287
5279 defsubr (&Sidentity); 5288 defsubr (&Sidentity);