services: configuration: Change the value of the unset marker.
The new value of %unset-value sticks out more when something goes wrong, and is also more unique; i.e. easier to search for. Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>master
parent
ee08277a70
commit
6fb9759ef3
|
@ -305,12 +305,13 @@ does not have a default value" field kind)))
|
|||
|
||||
;; Ideally this should be an implementation detail, but we export it
|
||||
;; to provide a simpler API that enables unsetting a configuration
|
||||
;; field that has a maybe type, but also a default value.
|
||||
;; field that has a maybe type, but also a default value. We give it
|
||||
;; a value that sticks out to the reader when something goes wrong.
|
||||
;;
|
||||
;; An example use-case would be something like a network application
|
||||
;; that uses a default port, but the field can explicitly be unset to
|
||||
;; request a random port at startup.
|
||||
(define %unset-value 'unset)
|
||||
(define %unset-value '%unset-marker%)
|
||||
|
||||
(define (maybe-value-set? value)
|
||||
"Predicate to check whether a 'maybe' value was explicitly provided."
|
||||
|
|
|
@ -95,7 +95,7 @@
|
|||
;; doesn't interfere with
|
||||
;; define-configuration and define-maybe
|
||||
;; internals.
|
||||
#''unset def))
|
||||
#''%unset-marker% def))
|
||||
#'(def ...) #'(target ...)))
|
||||
((new-doc ...)
|
||||
(map (lambda (doc target)
|
||||
|
|
|
@ -150,7 +150,7 @@
|
|||
(protocol maybe-symbol ""))
|
||||
|
||||
;;; Maybe symbol values are currently seen as serializable, because the
|
||||
;;; unspecified value is 'unset, which is a symbol itself.
|
||||
;;; unspecified value is '%unset-marker%, which is a symbol itself.
|
||||
;;; TODO: Remove expected fail marker after resolution.
|
||||
(test-expect-fail 1)
|
||||
(test-equal "symbol maybe value serialization, unspecified"
|
||||
|
|
Reference in New Issue