path: root/src/core/document_type.h
diff options
authorJohn Mark Bell <>2007-09-19 22:06:26 +0000
committerJohn Mark Bell <>2007-09-19 22:06:26 +0000
commitb2256675eaf9cf9fa239da93db4f205d97fc710c (patch)
treef03cc1aae39835468e3e581aa46dcb0e9bc0ff17 /src/core/document_type.h
parent0f66febea8d8f79357a12a102847bf403fd099c9 (diff)
Begin implementation of DocumentType class
Remove dom_document_set_doctype() -- dom_node_insert_before() (and thus _append_child()) can be used to achieve the same effect. DocumentType node is now a child of the Document node (as it should have been) rather than a hidden field. Make dom_node_destroy() aware of DocumentType nodes potentially having no owner. Make dom_node_finalise() aware of it, too. Make dom_node_get_owner_document() return NULL for Document nodes, as per the spec. Fix bug in dom_node_insert_before() -- previously it failed to catch attempts to insert a second root element. Make dom_node_insert_before() handle DocumentType nodes appropriately. Implement XML binding's dom_implementation_create_document_type() function. Fix XML binding's dom_implementation_create_document() implementation to cope with changed API relating to doctype insertion. Fix up XML parser wrapper to cater for new doctype insertion mechanism. Also sprinkle some NULL about for paranoia purposes. svn path=/trunk/dom/; revision=3551
Diffstat (limited to 'src/core/document_type.h')
1 files changed, 17 insertions, 0 deletions
diff --git a/src/core/document_type.h b/src/core/document_type.h
new file mode 100644
index 0000000..266a1b6
--- /dev/null
+++ b/src/core/document_type.h
@@ -0,0 +1,17 @@
+ * This file is part of libdom.
+ * Licensed under the MIT License,
+ *
+ * Copyright 2007 John-Mark Bell <>
+ */
+#ifndef dom_internal_core_document_type_h_
+#define dom_internal_core_document_type_h_
+struct dom_document_type;
+/* Destroy a document type */
+void dom_document_type_destroy(struct dom_document_type *doctype);