ANSI conformance fixes

This commit is contained in:
dlichteblau
2006-09-10 14:52:44 +00:00
parent 9126b20cae
commit 70fd8ddd7d
2 changed files with 21 additions and 14 deletions

View File

@ -587,9 +587,11 @@
(setf (slot-value new-child 'parent) node)
new-child))
(defmethod dom:insert-before ((node node) (fragment document-fragment) ref-child)
(dovector (child (dom:child-nodes fragment))
(dom:insert-before node child ref-child))
(defmethod dom:insert-before
((node node) (fragment document-fragment) ref-child)
(let ((children (dom:child-nodes fragment)))
(cxml::while (plusp (length children))
(dom:insert-before node (elt children 0) ref-child)))
fragment)
(defmethod dom:replace-child ((node node) (new-child node) (old-child node))
@ -631,8 +633,9 @@
(defmethod dom:append-child ((node node) (new-child document-fragment))
(assert-writeable node)
(dovector (child (dom:child-nodes new-child))
(dom:append-child node child))
(let ((children (dom:child-nodes new-child)))
(cxml::while (plusp (length children))
(dom:append-child node (elt children 0))))
new-child)
;; was auf node noch implemetiert werden muss:

View File

@ -105,15 +105,19 @@
(declare (type simple-vector range-vector))
;;we were always dealing with a sorted vector... bin search it
(loop with start = 0
with end = (length range-vector)
while (< start end)
for mid-index = (+ start (floor (- end start) 2))
for (mid-item-low mid-item-high) = (aref range-vector mid-index)
if (< mid-item-high code) do (setf start (1+ mid-index))
else if (< code mid-item-low) do (setf end mid-index)
else do (return T)
finally (return nil)))
(let ((start 0)
(end (length range-vector)))
(while (< start end)
(let ((mid-index (+ start (floor (- end start) 2))))
(destructuring-bind (mid-item-low mid-item-high)
(aref range-vector mid-index)
(cond
((< mid-item-high code)
(setf start (1+ mid-index)))
((< code mid-item-low)
(setf end mid-index))
(t
(return t))))))))
(name-start-rune-p (rune)
(or (letter-rune-p rune)