Safe failback on missing member info.
This commit is contained in:
parent
75de98779b
commit
738db88cf8
1 changed files with 8 additions and 4 deletions
|
@ -222,10 +222,14 @@
|
||||||
|
|
||||||
;; Returns member info key value
|
;; Returns member info key value
|
||||||
(define (brmember-info mr key . defaults)
|
(define (brmember-info mr key . defaults)
|
||||||
(let ((info (ldict-ref mr 'info)))
|
(let ((info (ldict-ref mr 'info #f)))
|
||||||
(if (null? defaults)
|
(if info
|
||||||
(ldict-ref info key)
|
(if (null? defaults)
|
||||||
(ldict-ref info key (car defaults)))))
|
(ldict-ref info key)
|
||||||
|
(ldict-ref info key (car defaults)))
|
||||||
|
(if (null? defaults)
|
||||||
|
(error 'brmember-info "Info key is missing.")
|
||||||
|
(car defaults)))))
|
||||||
|
|
||||||
;; Return mandatory keys with #f as value
|
;; Return mandatory keys with #f as value
|
||||||
(define (brmember-missing-keys mr)
|
(define (brmember-missing-keys mr)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue