branch: elpa/parseedn commit 8dca313b95e426ba91d77eb9c0a9537c346ba0fa Merge: 35e9f3173a 2b28df1c3d Author: Arne Brasseur <a...@arnebrasseur.net> Commit: GitHub <nore...@github.com>
Merge pull request #15 from tmpUser2022/empty-hash Fix empty hash --- parseedn.el | 2 +- test/parseedn-test.el | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/parseedn.el b/parseedn.el index 1e06e54218..6e93399f91 100644 --- a/parseedn.el +++ b/parseedn.el @@ -165,7 +165,7 @@ TAG-READERS is an optional association list. For more information, see (defun parseedn-print-hash-or-alist (map &optional ks) "Insert hash table MAP or elisp alist as an EDN map into the current buffer." - (let ((keys (or ks (map-keys map)))) + (when-let ((keys (or ks (map-keys map)))) (parseedn-print (car keys)) (insert " ") (parseedn-print (map-elt map (car keys))) diff --git a/test/parseedn-test.el b/test/parseedn-test.el index 49a3a66b2c..8d167d54a8 100644 --- a/test/parseedn-test.el +++ b/test/parseedn-test.el @@ -45,6 +45,7 @@ (should (equal (parseedn-print-str '(:a 1 :b (:c 3))) "{:a 1, :b {:c 3}}")) (should (equal (parseedn-print-str '(edn-tagged-literal unknown "data")) "#unknown \"data\"")) (should (equal (parseedn-print-str '(edn-tagged-literal unknown (edn-tagged-literal unknown "data"))) "#unknown #unknown \"data\"")) + (should (equal (parseedn-print-str #s(hash-table size 0 data ())) "{}")) (should (listp (member (parseedn-print-str (let ((ht (make-hash-table))) (puthash :a 1 ht)