[bknr-devel] SBCL port samll fixes
Tchadvar Roussanov
troussan at gmail.com
Tue Feb 14 04:04:54 UTC 2006
Hans,
In order to compile bknr/src/web/handlers.lisp with the latest cxml and
sbcl, I either have to apply the change from svn to with-element macro in
cxml/xml/unparse.lisp:
(defmacro with-element (qname &body body)
;; XXX Statt qname soll man in zukunft auch mal (lname prefix) angeben
;; koennen. Hat aber Zeit bis DOM 2.
- (when (listp qname)
- (destructuring-bind (n) qname
- (setf qname n)))
`(invoke-with-element (lambda () , at body) ,qname))
or change the handlers.lisp this way:
(defmethod handle-object ((handler xml-object-list-handler) object req)
- (cxml:with-element (xml-object-list-handler-toplevel-element-name
handler)
- (dolist (object (object-list-handler-get-objects handler object req))
- (object-list-handler-show-object-xml handler object req))))
+ (let ((element-name (xml-object-list-handler-toplevel-element-name
handler)))
+ (cxml:with-element element-name
+ (dolist (object (object-list-handler-get-objects handler object req))
+ (object-list-handler-show-object-xml handler object req)))))
In other words move the evaluation of
xml-object-list-handler-toplevel-element-name out of the macro expansion. I
think the two changes are equivalent but the second one has the advantage
not to require to maintain changes to the third party library. Am I missing
something?
Tchavdar
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/bknr-devel/attachments/20060213/b361e609/attachment.html>
More information about the Bknr-devel
mailing list