Update of /project/cxml/cvsroot/cxml/klacks In directory clnet:/tmp/cvs-serv8803/klacks
Modified Files: klacks-impl.lisp klacks.lisp Log Message: SAX overhaul for HAX integration.
* dom/dom-builder.lisp (DOM-BUILDER): Inherit from sax:content-handler.
* klacks/klacks-impl.lisp (KLACKS-DTD-HANDLER): Inherit from sax:default-handler.
* klacks/klacks.lisp (KLACKS:SERIALIZE-EVENT): Bugfix -- call start-cdata and end-cdata on the handler, not the source.
* xml/package.lisp: New export WITH-OUTPUT-SINK.
* xml/sax-handler.lisp (SAX): New exports abstract-handler, content-handler, default-handler. (STANDARD-ATTRIBUTE): Renamed from attribute. (ATTRIBUTE-NAMESPACE-URI, ATTRIBUTE-LOCAL-NAME, ATTRIBUTE-QNAME, ATTRIBUTE-VALUE, ATTRIBUTE-SPECIFIED-P): Wrapper methods for standard-attribute. Wrapper methods for hax:standard-attribute. (all events): pulled into a common define-event form. New dummy method on null. Added a warning to the default method. New error method on abstract-handler. New dummy method on the respective default handler classes.
* xml/sax-proxy.lisp (BROADCAST-HANDLER): Inherit from abstract-handler, not sax-parser-mixin.
* xml/unparse.lisp (sink): Inherit from sax:content-handler. (WITH-OUTPUT-SINK): New macro. (INVOKE-WITH-OUTPUT-SINK): New function.
--- /project/cxml/cvsroot/cxml/klacks/klacks-impl.lisp 2007/08/23 23:16:00 1.12 +++ /project/cxml/cvsroot/cxml/klacks/klacks-impl.lisp 2007/10/14 17:50:11 1.13 @@ -413,7 +413,7 @@
;;;; terrible kludges
-(defclass klacks-dtd-handler () +(defclass klacks-dtd-handler (sax:default-handler) ((handler-source :initarg :source :reader handler-source) (internal-subset-p :initform nil :accessor handler-internal-subset-p)))
--- /project/cxml/cvsroot/cxml/klacks/klacks.lisp 2007/10/03 15:22:57 1.9 +++ /project/cxml/cvsroot/cxml/klacks/klacks.lisp 2007/10/14 17:50:11 1.10 @@ -96,9 +96,9 @@ (:characters (cond ((klacks:current-cdata-section-p source) - (sax:start-cdata source) + (sax:start-cdata handler) (sax:characters handler a) - (sax:end-cdata source)) + (sax:end-cdata handler)) (T (sax:characters handler a)))) (:processing-instruction