[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/parseclj fcebf65075 180/185: Provide parseclj-alist-merge
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/parseclj fcebf65075 180/185: Provide parseclj-alist-merge for older Emacsen |
Date: |
Tue, 28 Dec 2021 14:05:34 -0500 (EST) |
branch: elpa/parseclj
commit fcebf650759929256ec9c4bb83b677240622be8a
Author: Arne Brasseur <arne@arnebrasseur.net>
Commit: Arne Brasseur <arne@arnebrasseur.net>
Provide parseclj-alist-merge for older Emacsen
---
CHANGELOG.md | 4 ++++
parseclj-alist.el | 11 +++++++++++
parseclj.el | 2 +-
3 files changed, 16 insertions(+), 1 deletion(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index db9490b7fb..32565015c8 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,9 @@
# Unreleased
+## 1.0.4 (2021-09-30)
+
+- Provide parseclj-alist-merge, since we can't use `(map-merge 'alist)` yet in
Emacs 25/26.
+
## 1.0.3 (2021-09-29)
- Remove remaining a.el usage (this time for real)
diff --git a/parseclj-alist.el b/parseclj-alist.el
index 1537293284..824f491667 100644
--- a/parseclj-alist.el
+++ b/parseclj-alist.el
@@ -77,6 +77,17 @@ For example: (parseclj-hash-table :foo 123 :bar 456)"
kv-pairs)
hash-map))
+(defun parseclj-alist-merge (l1 l2)
+ "Merge two association lists."
+ ;; Emacs 27: (map-merge 'alist l1 l2)
+ (let ((keys (delete-dups (append (mapcar #'car l1) (mapcar #'car l2))))
+ (res '()))
+ (seq-doseq (key keys)
+ (push (or (assoc key l2)
+ (assoc key l1))
+ res))
+ (nreverse res)))
+
(provide 'parseclj-alist)
;;; parseclj-alist.el ends here
diff --git a/parseclj.el b/parseclj.el
index f2aecb8ac3..eed113ef33 100644
--- a/parseclj.el
+++ b/parseclj.el
@@ -5,7 +5,7 @@
;; Author: Arne Brasseur <arne@arnebrasseur.net>
;; Keywords: lisp clojure edn parser
;; Package-Requires: ((emacs "25"))
-;; Version: 1.0.3
+;; Version: 1.0.4
;; This file is not part of GNU Emacs.
- [nongnu] elpa/parseclj b2550e6456 133/185: Add docstring for `parseclj-lex--string-value`, (continued)
- [nongnu] elpa/parseclj b2550e6456 133/185: Add docstring for `parseclj-lex--string-value`, ELPA Syncer, 2021/12/28
- [nongnu] elpa/parseclj 13059d8529 138/185: Minor checkdoc fixes, ELPA Syncer, 2021/12/28
- [nongnu] elpa/parseclj 49c715ed22 148/185: For prefix-2 elements: pass children to reduce in right order, ELPA Syncer, 2021/12/28
- [nongnu] elpa/parseclj dc0d165b0a 152/185: Merge pull request #23 from clojure-emacs/read-one, ELPA Syncer, 2021/12/28
- [nongnu] elpa/parseclj 62c9bf9126 177/185: Remove the last remains of a.el, restructure requires, ELPA Syncer, 2021/12/28
- [nongnu] elpa/parseclj 517a371616 166/185: Use map-elt instead of parseclj-alist-get, ELPA Syncer, 2021/12/28
- [nongnu] elpa/parseclj ba04dbe334 171/185: Remove remaining a-list call, move a.el to be test-only, ELPA Syncer, 2021/12/28
- [nongnu] elpa/parseclj 48abe456c6 155/185: Update the installation instructions, ELPA Syncer, 2021/12/28
- [nongnu] elpa/parseclj b234692020 157/185: error on unmatched closing paren/brace, ELPA Syncer, 2021/12/28
- [nongnu] elpa/parseclj 1bb3800f8f 162/185: Update CHANGELOG, ELPA Syncer, 2021/12/28
- [nongnu] elpa/parseclj fcebf65075 180/185: Provide parseclj-alist-merge for older Emacsen,
ELPA Syncer <=
- [nongnu] elpa/parseclj eff9411268 161/185: Merge pull request #26 from ikappaki/master, ELPA Syncer, 2021/12/28
- [nongnu] elpa/parseclj 689ebddbdd 158/185: Add support for shebang and symbolic values, ELPA Syncer, 2021/12/28
- [nongnu] elpa/parseclj 1e46607912 015/185: Split files into packages, More test setup, ELPA Syncer, 2021/12/28
- [nongnu] elpa/parseclj a9dba19760 086/185: Clean up node and token types, ELPA Syncer, 2021/12/28
- [nongnu] elpa/parseclj 9480ae09b3 068/185: push is destructive, in this case cons will do, ELPA Syncer, 2021/12/28
- [nongnu] elpa/parseclj f395b9cbcc 097/185: Move `parseclj--leaf-token-value` to `parseedn` module, ELPA Syncer, 2021/12/28
- [nongnu] elpa/parseclj 91dd43667c 110/185: Fix `parseclj-ast--reduce-branch` for tags., ELPA Syncer, 2021/12/28
- [nongnu] elpa/parseclj 9a586f267d 103/185: Remove `parseedn` requirement from `parseclj`, ELPA Syncer, 2021/12/28
- [nongnu] elpa/parseclj e65eb085ad 114/185: Remove duplicated test, ELPA Syncer, 2021/12/28
- [nongnu] elpa/parseclj 811f35e05a 117/185: Loops reduction over the first 2 elements of the stack, ELPA Syncer, 2021/12/28