[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#63985] [PATCH RFC v2 1/5] services: configuration: Simplify normali
From: |
Bruno Victal |
Subject: |
[bug#63985] [PATCH RFC v2 1/5] services: configuration: Simplify normalize-extra-args. |
Date: |
Sat, 10 Jun 2023 21:10:52 +0100 |
* gnu/services/configuration.scm
(define-configuration-helper, normalize-extra-args): Use #f instead of
%unset-value.
---
Notable changes since RFC v1:
* Jami service now passes tests.
* Typo fixes.
* serializer-kwargs renamed to serializer-options.
* Changed INI example to something more innocuous.
gnu/services/configuration.scm | 26 +++++++++++++-------------
1 file changed, 13 insertions(+), 13 deletions(-)
diff --git a/gnu/services/configuration.scm b/gnu/services/configuration.scm
index 367b85c1be..dafe72f4fe 100644
--- a/gnu/services/configuration.scm
+++ b/gnu/services/configuration.scm
@@ -190,32 +190,32 @@ (define (define-configuration-helper serialize?
serializer-prefix syn)
(define (normalize-extra-args s)
"Extract and normalize arguments following @var{doc}."
(let loop ((s s)
- (sanitizer* %unset-value)
- (serializer* %unset-value))
+ (sanitizer* #f)
+ (serializer* #f))
(syntax-case s (sanitizer serializer empty-serializer)
(((sanitizer proc) tail ...)
- (if (maybe-value-set? sanitizer*)
- (syntax-violation 'sanitizer "duplicate entry"
- #'proc)
+ (if sanitizer*
+ (syntax-violation 'sanitizer
+ "duplicate entry" #'proc)
(loop #'(tail ...) #'proc serializer*)))
(((serializer proc) tail ...)
- (if (maybe-value-set? serializer*)
- (syntax-violation 'serializer "duplicate or conflicting entry"
- #'proc)
+ (if serializer*
+ (syntax-violation 'serializer
+ "duplicate or conflicting entry" #'proc)
(loop #'(tail ...) sanitizer* #'proc)))
((empty-serializer tail ...)
- (if (maybe-value-set? serializer*)
+ (if serializer*
(syntax-violation 'empty-serializer
"duplicate or conflicting entry" #f)
(loop #'(tail ...) sanitizer* #'empty-serializer)))
(() ; stop condition
(values (list sanitizer* serializer*)))
((proc) ; TODO: deprecated, to be removed.
- (null? (filter-map maybe-value-set? (list sanitizer* serializer*)))
+ (every not (list sanitizer* serializer*))
(begin
(warning #f (G_ "specifying serializers after documentation is \
deprecated, use (serializer ~a) instead~%") (syntax->datum #'proc))
- (values (list %unset-value #'proc)))))))
+ (values (list #f #'proc)))))))
(syntax-case syn ()
((_ stem (field field-type+def doc extra-args ...) ...)
@@ -239,11 +239,11 @@ (define (define-configuration-helper serialize?
serializer-prefix syn)
default-value))
#'((field-type def) ...)))
((field-sanitizer ...)
- (map maybe-value #'(sanitizer* ...)))
+ #'(sanitizer* ...))
((field-serializer ...)
(map (lambda (type proc)
(and serialize?
- (or (maybe-value proc)
+ (or proc
(if serializer-prefix
(id #'stem serializer-prefix #'serialize-
type)
(id #'stem #'serialize- type)))))
base-commit: 767edbb6fe781d19c19971f2ccd3b0da8fd053fc
--
2.39.2
- [bug#63985] [PATCH RFC 0/5] Generic INI serializer & SRFI-171 for define-configuration, Bruno Victal, 2023/06/09
- [bug#63985] [PATCH RFC 1/5] services: configuration: Simplify normalize-extra-args., Bruno Victal, 2023/06/09
- [bug#63985] [PATCH RFC 2/5] services: configuration: Use transducers within serialize-configuration., Bruno Victal, 2023/06/09
- [bug#63985] [PATCH RFC 3/5] services: fstrim-service-type: Serialize with SRFI-171 transducers., Bruno Victal, 2023/06/09
- [bug#63985] [PATCH RFC 5/5] services: configuration: New generic-ini module., Bruno Victal, 2023/06/09
- [bug#63985] [PATCH RFC 4/5] services: configuration: Add serializer-kwargs field., Bruno Victal, 2023/06/09
- [bug#63985] [PATCH RFC v2 1/5] services: configuration: Simplify normalize-extra-args.,
Bruno Victal <=
- [bug#63985] [PATCH RFC v2 3/5] services: fstrim-service-type: Serialize with SRFI-171 transducers., Bruno Victal, 2023/06/10
- [bug#63985] [PATCH RFC v2 2/5] services: configuration: Use transducers within serialize-configuration., Bruno Victal, 2023/06/10
- [bug#63985] [PATCH RFC v2 4/5] services: configuration: Add serializer-options field., Bruno Victal, 2023/06/10
- [bug#63985] [PATCH RFC v2 5/5] services: configuration: New generic-ini module., Bruno Victal, 2023/06/10
- [bug#63985] [PATCH v3 00/11] Service subsystem improvements, Bruno Victal, 2023/06/26
- [bug#63985] [PATCH v3 06/11] services: configuration: New generic-ini module., Bruno Victal, 2023/06/26
- [bug#63985] [PATCH v3 11/11] services: NetworkManager: Add extra-options field., Bruno Victal, 2023/06/26
- [bug#63985] [PATCH v3 07/11] services: configuration: Add some commonly used predicates., Bruno Victal, 2023/06/26
- [bug#63985] [PATCH v3 05/11] services: configuration: Add serializer-options field., Bruno Victal, 2023/06/26
- [bug#63985] [PATCH v3 10/11] services: NetworkManager: add log-configuration field., Bruno Victal, 2023/06/26