summaryrefslogtreecommitdiff
path: root/doc/lispref/sequences.texi
diff options
context:
space:
mode:
authorDamien Cassou <damien@cassou.me>2022-09-04 13:21:59 +0200
committerLars Ingebrigtsen <larsi@gnus.org>2022-09-04 13:21:59 +0200
commit4751b51d5e1182975aa002af08a625e4859ec276 (patch)
tree1dcabd8ede4a44d931d998dca9ddba21d2faa324 /doc/lispref/sequences.texi
parent4d50d413e67dd8ae183af8b68f315a667ebf2add (diff)
downloademacs-4751b51d5e1182975aa002af08a625e4859ec276.tar.gz
Add new function `seq-positions'
* doc/lispref/sequences.texi (Sequence Functions): Document it. * lisp/emacs-lisp/seq.el (seq-positions): New function. * lisp/emacs-lisp/shortdoc.el (sequence): Mention it. * test/lisp/emacs-lisp/seq-tests.el (test-seq-positions): Test it (bug#57548).
Diffstat (limited to 'doc/lispref/sequences.texi')
-rw-r--r--doc/lispref/sequences.texi21
1 files changed, 21 insertions, 0 deletions
diff --git a/doc/lispref/sequences.texi b/doc/lispref/sequences.texi
index 2ee19efb1a9..214b1e76e15 100644
--- a/doc/lispref/sequences.texi
+++ b/doc/lispref/sequences.texi
@@ -898,6 +898,27 @@ use instead of the default @code{equal}.
@end example
@end defun
+@defun seq-positions sequence elt &optional testfn
+ This function returns a list of the (zero-based) indices of the
+elements in @var{sequence} for which @var{testfn} returns
+non-@code{nil} when passed the element and @var{elt} as
+arguments. @var{testfn} defaults to @code{equal}.
+
+@example
+@group
+(seq-positions '(a b c a d) 'a)
+@result{} (0 3)
+@end group
+@group
+(seq-positions '(a b c a d) 'z)
+@result{} nil
+@end group
+@group
+(seq-positions '(11 5 7 12 9 15) 10 #'>=)
+@result{} (0 3 5)
+@end group
+@end example
+@end defun
@defun seq-uniq sequence &optional function
This function returns a list of the elements of @var{sequence} with