diff options
author | Christopher Baines <mail@cbaines.net> | 2019-03-24 10:49:49 +0000 |
---|---|---|
committer | Christopher Baines <mail@cbaines.net> | 2019-03-24 10:49:49 +0000 |
commit | 21b07b07a973adcf94046f5bec2338c1207c35f4 (patch) | |
tree | a5b9bba052c63f1dae2c063162f8c87f090bea04 /guix-data-service | |
parent | 101caddecc552dd8ffc6ef4195390e674a9806cc (diff) | |
download | data-service-21b07b07a973adcf94046f5bec2338c1207c35f4.tar data-service-21b07b07a973adcf94046f5bec2338c1207c35f4.tar.gz |
Extract out deduplicate-strings to the utils module
Diffstat (limited to 'guix-data-service')
-rw-r--r-- | guix-data-service/model/derivation.scm | 13 | ||||
-rw-r--r-- | guix-data-service/model/utils.scm | 16 |
2 files changed, 15 insertions, 14 deletions
diff --git a/guix-data-service/model/derivation.scm b/guix-data-service/model/derivation.scm index 7a710de..07b8ee6 100644 --- a/guix-data-service/model/derivation.scm +++ b/guix-data-service/model/derivation.scm @@ -519,19 +519,6 @@ ORDER BY derivations.system DESC, (exec-query conn query)) -(define (deduplicate-strings strings) - (pair-fold - (lambda (pair result) - (if (null? (cdr pair)) - (cons (first pair) result) - (if (string=? (first pair) (second pair)) - result - (cons (first pair) result)))) - '() - (sort strings - (lambda (a b) - (string<? a b))))) - (define (deduplicate-derivations derivations) (define sorted-derivations (sort derivations diff --git a/guix-data-service/model/utils.scm b/guix-data-service/model/utils.scm index 8a85e2b..eab3b98 100644 --- a/guix-data-service/model/utils.scm +++ b/guix-data-service/model/utils.scm @@ -5,7 +5,8 @@ #:export (quote-string value->quoted-string-or-null exec-query->vhash - two-lists->vhash)) + two-lists->vhash + deduplicate-strings)) (define (quote-string s) (string-append "'" s "'")) @@ -29,3 +30,16 @@ vlist-null l1 l2)) + +(define (deduplicate-strings strings) + (pair-fold + (lambda (pair result) + (if (null? (cdr pair)) + (cons (first pair) result) + (if (string=? (first pair) (second pair)) + result + (cons (first pair) result)))) + '() + (sort strings + (lambda (a b) + (string<? a b))))) |