summary refs log tree commit diff
diff options
context:
space:
mode:
authorArun Isaac2020-12-31 13:15:59 +0530
committerArun Isaac2020-12-31 15:07:20 +0530
commitb222cda5853f9e0f78c6fe567d5e7ada0218e7bb (patch)
treef0645e334458d1926488268e0201b904a596628c
parent70968110a28f40ca9f7bdb121b075c396040fda3 (diff)
downloadksh-reports-b222cda5853f9e0f78c6fe567d5e7ada0218e7bb.tar.gz
ksh-reports-b222cda5853f9e0f78c6fe567d5e7ada0218e7bb.tar.lz
ksh-reports-b222cda5853f9e0f78c6fe567d5e7ada0218e7bb.zip
Prefer pcase to car, cdr.
* ksh-forms-improved.el (set-values, form-entry,
ksh-forms-org-keyword): Rewrite using pcase instead of car, cdr.
-rw-r--r--ksh-forms-improved.el16
1 files changed, 10 insertions, 6 deletions
diff --git a/ksh-forms-improved.el b/ksh-forms-improved.el
index cfa72b9..83fa0e0 100644
--- a/ksh-forms-improved.el
+++ b/ksh-forms-improved.el
@@ -22,14 +22,16 @@
 ;; Utilities
 (defun set-values (record values)
   "Set record RECORD to values in alist VALUES"
-  (mapc (lambda (field-value)
-	  (aset record (car field-value) (cdr field-value))) values))
+  (seq-do (pcase-lambda (`(,field . ,value))
+            (aset record field value))
+          values))
 
 ;; Entry creation functions for form display
 (defun form-entry (label-field)
-  (list (format "%s\n" (car label-field))
-	(cdr label-field) "\n\n"))
-
+  (pcase label-field
+    (`(,label . ,field)
+     (list (format "%s\n" label)
+           field"\n\n"))))
 
 (defun new-record-filter (record)
   (set-values record default-field-values)
@@ -61,8 +63,10 @@
   (if (and text (not (string-blank-p text)))
       (princ (format "%s\n\n" text))))
 
-  (princ (format "#+%s: %s\n" (car keyword-value) (cdr keyword-value))))
 (defun ksh-forms-org-keyword (keyword-value)
+  (pcase keyword-value
+    (`(,keyword . ,value)
+     (princ (format "#+%s: %s\n" keyword value)))))
 
 (defun ksh-forms-org-latex-header (header)
   (ksh-forms-org-keyword (cons "LATEX_HEADER" header)))