summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp/seq.el
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/emacs-lisp/seq.el')
-rw-r--r--lisp/emacs-lisp/seq.el17
1 files changed, 5 insertions, 12 deletions
diff --git a/lisp/emacs-lisp/seq.el b/lisp/emacs-lisp/seq.el
index f9e0e9c0fa8..5ce4d91ec3e 100644
--- a/lisp/emacs-lisp/seq.el
+++ b/lisp/emacs-lisp/seq.el
@@ -200,18 +200,11 @@ The result is a sequence of the same type as SEQ."
TYPE must be one of following symbols: vector, string or list.
\n(fn TYPE SEQUENCE...)"
- ;; Since new seq types might be defined, we need to make sure that
- ;; all seqs are actual sequences.
- (let ((sequences (seq-map (lambda (s)
- (if (sequencep s)
- s
- (seq-into s 'list)))
- seqs)))
- (pcase type
- (`vector (apply #'vconcat sequences))
- (`string (apply #'concat sequences))
- (`list (apply #'append (append sequences '(nil))))
- (_ (error "Not a sequence type name: %S" type)))))
+ (pcase type
+ (`vector (apply #'vconcat seqs))
+ (`string (apply #'concat seqs))
+ (`list (apply #'append (append seqs '(nil))))
+ (_ (error "Not a sequence type name: %S" type))))
(cl-defgeneric seq-into (seq type)
"Convert the sequence SEQ into a sequence of type TYPE.