summaryrefslogtreecommitdiff
path: root/src/core/entity_ref.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/entity_ref.h')
-rw-r--r--src/core/entity_ref.h31
1 files changed, 25 insertions, 6 deletions
diff --git a/src/core/entity_ref.h b/src/core/entity_ref.h
index fa03737..2b83d07 100644
--- a/src/core/entity_ref.h
+++ b/src/core/entity_ref.h
@@ -5,23 +5,42 @@
* Copyright 2007 John-Mark Bell <jmb@netsurf-browser.org>
*/
-#ifndef dom_internal_core_entityreference_h_
-#define dom_internal_core_entityreference_h_
+#ifndef dom_internal_core_entityrererence_h_
+#define dom_internal_core_entityrererence_h_
#include <dom/core/exceptions.h>
+#include <dom/core/entity_ref.h>
struct dom_document;
struct dom_entity_reference;
struct dom_string;
+struct lwc_string_s;
-dom_exception dom_entity_reference_create(struct dom_document *doc,
- struct dom_string *name, struct dom_string *value,
+dom_exception _dom_entity_reference_create(struct dom_document *doc,
+ struct lwc_string_s *name, struct dom_string *value,
struct dom_entity_reference **result);
-void dom_entity_reference_destroy(struct dom_document *doc,
+void _dom_entity_reference_destroy(struct dom_document *doc,
struct dom_entity_reference *entity);
-dom_exception dom_entity_reference_get_textual_representation(
+#define _dom_entity_reference_initialise _dom_node_initialise
+#define _dom_entity_reference_finalise _dom_node_finalise
+
+/* Following comes the protected vtable */
+void _dom_er_destroy(struct dom_node_internal *node);
+dom_exception _dom_er_alloc(struct dom_document *doc,
+ struct dom_node_internal *n, struct dom_node_internal **ret);
+dom_exception _dom_er_copy(struct dom_node_internal *new,
+ struct dom_node_internal *old);
+
+#define DOM_ER_PROTECT_VTABLE \
+ _dom_er_destroy, \
+ _dom_er_alloc, \
+ _dom_er_copy
+
+/* Helper functions */
+dom_exception _dom_entity_reference_get_textual_representation(
struct dom_entity_reference *entity,
struct dom_string **result);
+
#endif