diff options
| author | 2021-12-29 17:48:01 +0100 | |
|---|---|---|
| committer | 2021-12-29 17:48:01 +0100 | |
| commit | 8c7d09b758bb04b07b9c89a7a46c8f89a3de651c (patch) | |
| tree | a6b39248d22fef25492ca4c4aeb8cb7aca4805e0 /composing-comparators.scm | |
| parent | it’s an SRFI (diff) | |
Nix compose-comparator syntax, rename composed to product comparator
Diffstat (limited to 'composing-comparators.scm')
| -rw-r--r-- | composing-comparators.scm | 24 |
1 files changed, 1 insertions, 23 deletions
diff --git a/composing-comparators.scm b/composing-comparators.scm index c6b6c7d..3356797 100644 --- a/composing-comparators.scm +++ b/composing-comparators.scm @@ -16,7 +16,7 @@ ((comparator-hash-function contents-comparator) x)) #f))) -(define (make-composed-comparator type-test . comparators) +(define (make-product-comparator type-test . comparators) (make-comparator type-test (if (every comparator-equality-predicate comparators) @@ -43,28 +43,6 @@ (list->generator comparators)))) #f))) -(define-syntax compose-comparator - (syntax-rules () - ((_ type-test (unwrap . more) ...) - (make-composed-comparator - type-test - (let-values (((unwrap cmp) (compose-comparator-form unwrap . more))) - (make-wrapper-comparator - (comparator-type-test-predicate cmp) - unwrap - cmp)) ...)))) - -(define-syntax compose-comparator-form - ;; Using this submacro enables enforcement of the correct form with - ;; moderately more useful syntax errors than doing it the SRFI 9 - ;; way, at least within the limited bounds of what one can do for - ;; that in syntax-rules. - (syntax-rules () - ((_ unwrap) (compose-comparator-form unwrap (make-default-comparator))) - ((_ unwrap cmp) - (values - unwrap cmp)))) - (define (comparison-procedures comparator) (values (lambda args (apply <? comparator args)) |
