Provide prop:print-converter propery with `define-record-procedures'.

This fixes quasiquote and constructor-style printing to not fall for
the extra lazy-contract-checking field.
This commit is contained in:
Mike Sperber 2010-06-09 14:37:36 +02:00
parent fc879f1894
commit 2c964b91f0

View File

@ -136,6 +136,10 @@
(custom-write-record '?type-name (custom-write-record '?type-name
(access-record-fields r raw-generic-access number-of-fields) (access-record-fields r raw-generic-access number-of-fields)
port write?))) port write?)))
(cons prop:print-converter
(lambda (r recur)
(list '?constructor
(recur (raw-accessor-proc r)) ...)))
(cons prop:equal+hash (cons prop:equal+hash
(list record-equal? (list record-equal?
(make-equal-hash (lambda (r i) (raw-generic-access r i)) number-of-fields) (make-equal-hash (lambda (r i) (raw-generic-access r i)) number-of-fields)