export the DOM interface CLOS classes

This commit is contained in:
dlichteblau
2006-08-20 12:19:01 +00:00
parent 58307a7cbd
commit cdccd6237e
2 changed files with 50 additions and 33 deletions

View File

@ -40,7 +40,7 @@
(dom-exception-string c)
(dom-exception-arguments c)))))
(defclass node ()
(defclass node (dom:node)
((parent :initarg :parent :initform nil)
(children :initarg :children :initform (make-node-list))
(owner :initarg :owner :initform nil)
@ -63,18 +63,18 @@
(dom:namespace-uri node)))
(setf (slot-value node 'prefix) newval))
(defclass document (node)
(defclass document (node dom:document)
((doc-type :initarg :doc-type :reader dom:doctype)
(dtd :initform nil :reader dtd)
(entity-resolver :initform nil)))
(defclass document-fragment (node)
(defclass document-fragment (node dom:document-fragment)
())
(defclass character-data (node)
(defclass character-data (node dom:character-data)
((value :initarg :data :reader dom:data)))
(defclass attribute (namespace-mixin node)
(defclass attribute (namespace-mixin node dom:attr)
((name :initarg :name :reader dom:name)
(owner-element :initarg :owner-element :reader dom:owner-element)
(specified-p :initarg :specified-p :reader dom:specified)))
@ -93,7 +93,7 @@
(rod-string (dom:name object))
(rod-string (dom:value object)))))
(defclass element (namespace-mixin node)
(defclass element (namespace-mixin node dom:element)
((tag-name :initarg :tag-name :reader dom:tag-name)
(attributes :initarg :attributes :reader dom:attributes)))
@ -105,16 +105,16 @@
(print-unreadable-object (object stream :type t :identity t)
(princ (rod-string (dom:tag-name object)) stream)))
(defclass text (character-data)
(defclass text (character-data dom:text)
())
(defclass comment (character-data)
(defclass comment (character-data dom:comment)
())
(defclass cdata-section (text)
(defclass cdata-section (text dom:cdata-section)
())
(defclass document-type (node)
(defclass document-type (node dom:document-type)
((name :initarg :name :reader dom:name)
(public-id :initarg :public-id :reader dom:public-id)
(system-id :initarg :system-id :reader dom:system-id)
@ -122,25 +122,25 @@
(notations :initarg :notations :reader dom:notations)
(dom::%internal-subset :accessor dom::%internal-subset)))
(defclass notation (node)
(defclass notation (node dom:notation)
((name :initarg :name :reader dom:name)
(public-id :initarg :public-id :reader dom:public-id)
(system-id :initarg :system-id :reader dom:system-id)))
(defclass entity (node)
(defclass entity (node dom:entity)
((name :initarg :name :reader dom:name)
(public-id :initarg :public-id :reader dom:public-id)
(system-id :initarg :system-id :reader dom:system-id)
(notation-name :initarg :notation-name :reader dom:notation-name)))
(defclass entity-reference (node)
(defclass entity-reference (node dom:entity-reference)
((name :initarg :name :reader dom:name)))
(defclass processing-instruction (node)
(defclass processing-instruction (node dom:processing-instruction)
((target :initarg :target :reader dom:target)
(data :initarg :data :reader dom:data)))
(defclass named-node-map ()
(defclass named-node-map (dom:named-node-map)
((items :initarg :items :reader dom:items
:initform nil)
(owner :initarg :owner :reader dom:owner-document)

View File

@ -96,25 +96,25 @@
#:target
#:code
;; not exported:
;;; ;; protocol classes
;; IDL interfaces, exported "inofficially"
#:node
#:document
#:document-fragment
#:character-data
#:attr
#:element
#:text
#:comment
#:cdata-section
#:document-type
#:notation
#:entity
#:entity-reference
#:processing-instruction
#:named-node-map
;; no classes:
;;; #:dom-implementation
;;; #:document-fragment
;;; #:document
;;; #:node
;;; #:node-list
;;; #:named-node-map
;;; #:character-data
;;; #:attr
;;; #:element
;;; #:text
;;; #:comment
;;; #:cdata-section
;;; #:document-type
;;; #:notation
;;; #:entity
;;; #:entity-reference
;;; #:processing-instruction
;;
#:items
@ -142,3 +142,20 @@
#:do-node-map
#:create-document
#:map-document))
(defclass dom:node () ())
(defclass dom:document (dom:node) ())
(defclass dom:document-fragment (dom:node) ())
(defclass dom:character-data (dom:node) ())
(defclass dom:attr (dom:node) ())
(defclass dom:element (dom:node) ())
(defclass dom:text (dom:character-data) ())
(defclass dom:comment (dom:character-data) ())
(defclass dom:cdata-section (dom:text) ())
(defclass dom:document-type (dom:node) ())
(defclass dom:notation (dom:node) ())
(defclass dom:entity (dom:node) ())
(defclass dom:entity-reference (dom:node) ())
(defclass dom:processing-instruction (dom:node) ())
(defclass dom:named-node-map () ())