Report errors in the member file.
This commit is contained in:
parent
9a71545e3e
commit
39554768b3
4 changed files with 76 additions and 15 deletions
|
@ -258,14 +258,23 @@
|
|||
(dict-set m k (string->month v))
|
||||
m)))
|
||||
|
||||
;; All conversions in one place
|
||||
(define (convert-member-keys m)
|
||||
(convert-member-key:month
|
||||
(convert-member-keys:card
|
||||
(convert-member-key:credit
|
||||
(convert-member-keys:markers->periods m 'suspend 'student))
|
||||
'card 'desfire)
|
||||
'joined))
|
||||
;; Adds file-name and lines information to the error key.
|
||||
(define (convert-member-key:error m esym lines file-name)
|
||||
(dict-set m esym
|
||||
(cons file-name
|
||||
(cons lines
|
||||
(dict-ref m esym '())))))
|
||||
|
||||
;; All conversions in one place, including error reporting.
|
||||
(define (convert-member-keys m lines file-name)
|
||||
(convert-member-key:error
|
||||
(convert-member-key:month
|
||||
(convert-member-keys:card
|
||||
(convert-member-key:credit
|
||||
(convert-member-keys:markers->periods m 'suspend 'student))
|
||||
'card 'desfire)
|
||||
'joined)
|
||||
member-file-error-symbol lines file-name))
|
||||
|
||||
;; Fills-in the defaults
|
||||
(define (make-default-member-info)
|
||||
|
@ -281,7 +290,7 @@
|
|||
(r (make-default-member-info))
|
||||
(line-number 1))
|
||||
(if (null? ls)
|
||||
(convert-member-keys r)
|
||||
(convert-member-keys r lines file-name)
|
||||
(let ((p (split-member-line (car ls) file-name lines line-number)))
|
||||
(loop (cdr ls)
|
||||
(if p
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue