summaryrefslogtreecommitdiff
path: root/src/core/cdatasection.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/cdatasection.h')
-rw-r--r--src/core/cdatasection.h24
1 files changed, 21 insertions, 3 deletions
diff --git a/src/core/cdatasection.h b/src/core/cdatasection.h
index 740c7d7..94d45a2 100644
--- a/src/core/cdatasection.h
+++ b/src/core/cdatasection.h
@@ -9,16 +9,34 @@
#define dom_internal_core_cdatasection_h_
#include <dom/core/exceptions.h>
+#include <dom/core/cdatasection.h>
+struct dom_node_internal;
struct dom_cdata_section;
struct dom_document;
struct dom_string;
+struct lwc_string_s;
-dom_exception dom_cdata_section_create(struct dom_document *doc,
- struct dom_string *name, struct dom_string *value,
+dom_exception _dom_cdata_section_create(struct dom_document *doc,
+ struct lwc_string_s *name, struct dom_string *value,
struct dom_cdata_section **result);
-void dom_cdata_section_destroy(struct dom_document *doc,
+void _dom_cdata_section_destroy(struct dom_document *doc,
struct dom_cdata_section *cdata);
+#define _dom_cdata_section_initialise _dom_text_initialise
+#define _dom_cdata_section_finalise _dom_text_finalise
+
+/* Following comes the protected vtable */
+void __dom_cdata_section_destroy(struct dom_node_internal *node);
+dom_exception _dom_cdata_section_alloc(struct dom_document *doc,
+ struct dom_node_internal *n, struct dom_node_internal **ret);
+dom_exception _dom_cdata_section_copy(struct dom_node_internal *new,
+ struct dom_node_internal *old);
+
+#define DOM_CDATA_SECTION_PROTECT_VTABLE \
+ __dom_cdata_section_destroy, \
+ _dom_cdata_section_alloc, \
+ _dom_cdata_section_copy
+
#endif