mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-05-20 11:40:18 +02:00
elisp `member' subrs
* module/language/elisp/boot.el (%member, member, memql, memq): New functions.
This commit is contained in:
parent
c7e0d2f81c
commit
df9cd3b447
1 changed files with 18 additions and 0 deletions
|
@ -366,6 +366,24 @@
|
|||
(defun nth (n list)
|
||||
(car (nthcdr n list)))
|
||||
|
||||
(defun %member (elt list test)
|
||||
(cond
|
||||
((null list) nil)
|
||||
((consp list)
|
||||
(if (funcall test elt (car list))
|
||||
list
|
||||
(%member elt (cdr list) test)))
|
||||
(t (signal 'wrong-type-argument `(listp ,list)))))
|
||||
|
||||
(defun member (elt list)
|
||||
(%member elt list #'equal))
|
||||
|
||||
(defun memql (elt list)
|
||||
(%member elt list #'eql))
|
||||
|
||||
(defun memq (elt list)
|
||||
(%member elt list #'eq))
|
||||
|
||||
;;; Strings
|
||||
|
||||
(defun string (&rest characters)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue