PG
(defun alist-to-plist (alist)
(let (result)
(dolist (elt alist result)
(push (cdr elt) result)
(push (car elt) result))))
Size: a a a
PG
(defun alist-to-plist (alist)
(let (result)
(dolist (elt alist result)
(push (cdr elt) result)
(push (car elt) result))))
DL
(defun alist-to-plist (alist)
(let (result)
(dolist (elt alist result)
(push (cdr elt) result)
(push (car elt) result))))
PG
PG
PG
(defmacro destructuring-dolist (pat-seq-res &rest body)
"\n\n(fn (PATTERN SEQUENCE &optional RESULT) BODY...)"
(declare (indent 1))
(destructuring-bind (pat seq &rest res) pat-seq-res
(let ((elt (gensym "dd-tempvar")))
`(dolist (,elt ,seq ,@res)
(cl-destructuring-bind ,pat ,elt
,@body)))))
DL
DL
(defun alist-to-plist (alist)
(let (result)
(dolist (elt alist result)
(push (cdr elt) result)
(push (car elt) result))))
(defun alist-to-plist (alist)
(thread-last alist
(mapcar (lambda (x)
(list (car x)
(cdr x))))
(apply #'append)))
A
PG
A
VL
(defun alist-to-plist (alist)
(let (result)
(dolist (elt alist result)
(push (cdr elt) result)
(push (car elt) result))))
(defun alist-to-plist (alist plist)
(pcase alist
(`((,key . ,value) . ,rest)
(alist-to-plist rest (cl-list* key value plist)))
(_ plist)))
DL
(defun alist-to-plist (alist)
(reduce (lambda (acc x)
(append acc (list (car x)
(cdr x))))
alist
:initial-value nil))
PG
(defun alist-to-plist (alist plist)
(pcase alist
(`((,key . ,value) . ,rest)
(alist-to-plist rest (cl-list* key value plist)))
(_ plist)))
VL
VL
(defun alist-to-plist (alist)
(loop for (key . value) in alist
nconc (list key value)))
VL
VL