diff --git a/basis/xml/data/data.factor b/basis/xml/data/data.factor index 1bab8d0374..0af2ec4700 100755 --- a/basis/xml/data/data.factor +++ b/basis/xml/data/data.factor @@ -2,7 +2,7 @@ ! See http://factorcode.org/license.txt for BSD license. USING: kernel sequences sequences.private assocs arrays delegate.protocols delegate vectors accessors multiline -macros words quotations combinators ; +macros words quotations combinators slots ; IN: xml.data TUPLE: name space main url ; @@ -89,7 +89,7 @@ TUPLE: tag name attrs children ; tag boa ; ! For convenience, tags follow the assoc protocol too (for attrs) -CONSULT: assoc-protocol tag tag-attrs ; +CONSULT: assoc-protocol tag attrs>> ; INSTANCE: tag assoc ! They also follow the sequence protocol (for children) @@ -100,14 +100,14 @@ CONSULT: name tag name>> ; M: tag like over tag? [ drop ] [ - [ name>> ] keep tag-attrs + [ name>> ] keep attrs>> rot dup [ V{ } like ] when ] if ; MACRO: clone-slots ( class -- tuple ) [ "slots" word-prop - [ reader>> 1quotation [ clone ] compose ] map + [ name>> reader-word 1quotation [ clone ] compose ] map [ cleave ] curry ] [ [ boa ] curry ] bi compose ; diff --git a/basis/xml/errors/errors.factor b/basis/xml/errors/errors.factor index 9b5b5d6568..bafa325e89 100644 --- a/basis/xml/errors/errors.factor +++ b/basis/xml/errors/errors.factor @@ -171,7 +171,7 @@ M: bad-directive summary ( obj -- str ) [ dup call-next-method write "Misplaced directive:" print - bad-directive-dir write-item nl + dir>> write-item nl ] with-string-writer ; UNION: xml-parse-error multitags notags extra-attrs nonexist-ns