convert immutable hashes

main
Matthew Butterick 2 years ago
parent a56ad07fd9
commit 98f12121fa

@ -42,7 +42,8 @@
#:attrs [attrs (make-quad-attrs null)]
#:elems [elems null])
(() (#:tag quad-tag? #:attrs quad-attrs? #:elems quad-elems?) . ->* . quad?)
(quad-constructor tag attrs elems #false))
(let ([attrs (if (immutable? attrs) (make-hasheq (hash->list attrs)) attrs)])
(quad-constructor tag attrs elems #false)))
(define (quad-ref q key [default-val #false])
(hash-ref (quad-attrs q) key default-val))

Loading…
Cancel
Save