aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArun Isaac2024-09-19 21:42:07 +0100
committerArun Isaac2024-09-19 21:42:07 +0100
commit8fb311a8f66eacfd25873f47d53ed4dd547bd1e1 (patch)
treefccb823d00fe35224164f452c31e2b8a9420fabf
parent377e114834f6157effd205dad5b7078aea12e8d4 (diff)
downloadravanan-8fb311a8f66eacfd25873f47d53ed4dd547bd1e1.tar.gz
ravanan-8fb311a8f66eacfd25873f47d53ed4dd547bd1e1.tar.lz
ravanan-8fb311a8f66eacfd25873f47d53ed4dd547bd1e1.zip
work/utils: Add alist=?.
* ravanan/work/utils.scm (alist=?): New public function.
-rw-r--r--ravanan/work/utils.scm6
1 files changed, 6 insertions, 0 deletions
diff --git a/ravanan/work/utils.scm b/ravanan/work/utils.scm
index 51da34c..1323352 100644
--- a/ravanan/work/utils.scm
+++ b/ravanan/work/utils.scm
@@ -24,6 +24,7 @@
#:use-module (ice-9 match)
#:use-module (ice-9 popen)
#:export (list->dotted-list
+ alist=?
assoc-ref*
assoc-set
call-with-temporary-directory
@@ -37,6 +38,11 @@ pairs."
(cons key value)))
lst))
+(define (alist=? alist1 alist2)
+ "Return @code{#t} if @var{alist1} and @var{alist2} are equal. Keys and values are
+compared using @code{equal?}, and the order of key-value pairs does not matter."
+ (lset= equal? alist1 alist2))
+
(define (assoc-ref* alist key)
"Return value mapped to @var{key} in @var{alist}. Raise an &assertion
if not found."