tests work

typed-work
Matthew Butterick 10 years ago
parent f14284df60
commit 55d7528084

@ -53,14 +53,19 @@
comment comment
p-i)) p-i))
(define-predicate xexpr? Xexpr)
(define-predicate txexpr? Txexpr) (define-predicate txexpr? Txexpr)
(define-predicate txexpr-short? Txexpr-Short) (define-predicate txexpr-short? Txexpr-Short)
(define-predicate txexpr-tag? Txexpr-Tag) (define-predicate txexpr-tag? Txexpr-Tag)
(define-predicate txexpr-tags? (Listof Txexpr-Tag)) (define-predicate txexpr-tags? (Listof Txexpr-Tag))
(define-predicate txexpr-attr? Txexpr-Attr) (define-predicate txexpr-attr? Txexpr-Attr)
(define-predicate txexpr-attrs? Txexpr-Attrs) (define-predicate txexpr-attrs? Txexpr-Attrs)
(define-predicate txexpr-element? Xexpr) (define-predicate Valid-Char? Valid-Char)
(define/typed (txexpr-element? x)
(Any -> Boolean)
(if (xexpr? x)
(if (Valid-Char? x) (valid-char? x) #t)
#f))
(define-predicate txexpr-elements? (Listof Xexpr)) (define-predicate txexpr-elements? (Listof Xexpr))
(define-predicate txexpr-attr-key? Txexpr-Attr-Key) (define-predicate txexpr-attr-key? Txexpr-Attr-Key)
(define-predicate txexpr-attr-value? Txexpr-Attr-Value) (define-predicate txexpr-attr-value? Txexpr-Attr-Value)

@ -164,7 +164,7 @@
(set! results (cons (attr-ref tx key) results)) (set! results (cons (attr-ref tx key) results))
(map (λ([e : Txexpr-Element]) (loop e)) (get-elements tx)) (map (λ([e : Txexpr-Element]) (loop e)) (get-elements tx))
(void))) (void)))
results) (reverse results))
;; convert list of alternating keys & values to attr ;; convert list of alternating keys & values to attr

Loading…
Cancel
Save