Mercurial > emacs
changeset 10588:2a8f29cd9e9f
(Frassoc): New function.
(syms_of_fns): defsubr it.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Sun, 29 Jan 1995 22:04:10 +0000 |
parents | 99b9f20b6921 |
children | 4d7bc901319a |
files | src/fns.c |
diffstat | 1 files changed, 22 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/src/fns.c Sun Jan 29 10:15:51 1995 +0000 +++ b/src/fns.c Sun Jan 29 22:04:10 1995 +0000 @@ -569,7 +569,7 @@ DEFUN ("assoc", Fassoc, Sassoc, 2, 2, 0, "Return non-nil if KEY is `equal' to the car of an element of LIST.\n\ -The value is actually the element of LIST whose car is KEY.") +The value is actually the element of LIST whose car equals KEY.") (key, list) register Lisp_Object key; Lisp_Object list; @@ -606,6 +606,26 @@ } return Qnil; } + +DEFUN ("rassoc", Frassoc, Srassoc, 2, 2, 0, + "Return non-nil if KEY is `equal' to the cdr of an element of LIST.\n\ +The value is actually the element of LIST whose cdr equals KEY.") + (key, list) + register Lisp_Object key; + Lisp_Object list; +{ + register Lisp_Object tail; + for (tail = list; !NILP (tail); tail = Fcdr (tail)) + { + register Lisp_Object elt, tem; + elt = Fcar (tail); + if (!CONSP (elt)) continue; + tem = Fequal (Fcdr (elt), key); + if (!NILP (tem)) return elt; + QUIT; + } + return Qnil; +} DEFUN ("delq", Fdelq, Sdelq, 2, 2, 0, "Delete by side effect any occurrences of ELT as a member of LIST.\n\ @@ -1464,6 +1484,7 @@ defsubr (&Sassq); defsubr (&Sassoc); defsubr (&Srassq); + defsubr (&Srassoc); defsubr (&Sdelq); defsubr (&Sdelete); defsubr (&Snreverse);