summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/dom/core/attr.h27
-rw-r--r--include/dom/core/document.h123
-rw-r--r--include/dom/core/exceptions.h4
-rw-r--r--include/dom/core/node.h149
-rw-r--r--include/dom/core/string.h18
-rw-r--r--include/dom/functypes.h (renamed from include/dom/ctx.h)12
6 files changed, 145 insertions, 188 deletions
diff --git a/include/dom/core/attr.h b/include/dom/core/attr.h
index 782513e..8807686 100644
--- a/include/dom/core/attr.h
+++ b/include/dom/core/attr.h
@@ -12,26 +12,23 @@
#include <dom/core/exceptions.h>
-struct dom_ctx;
struct dom_element;
struct dom_typeinfo;
struct dom_node;
struct dom_attr;
struct dom_string;
-dom_exception dom_attr_get_name(struct dom_ctx *ctx,
- struct dom_attr *attr, struct dom_string **result);
-dom_exception dom_attr_get_specified(struct dom_ctx *ctx,
- struct dom_attr *attr, bool *result);
-dom_exception dom_attr_get_value(struct dom_ctx *ctx,
- struct dom_attr *attr, struct dom_string **result);
-dom_exception dom_attr_set_value(struct dom_ctx *ctx,
- struct dom_attr *attr, struct dom_string *value);
-dom_exception dom_attr_get_owner(struct dom_ctx *ctx,
- struct dom_attr *attr, struct dom_element **result);
-dom_exception dom_attr_get_typeinfo(struct dom_ctx *ctx,
- struct dom_attr *attr, struct dom_typeinfo **result);
-dom_exception dom_attr_is_id(struct dom_ctx *ctx,
- struct dom_attr *attr, bool *result);
+dom_exception dom_attr_get_name(struct dom_attr *attr,
+ struct dom_string **result);
+dom_exception dom_attr_get_specified(struct dom_attr *attr, bool *result);
+dom_exception dom_attr_get_value(struct dom_attr *attr,
+ struct dom_string **result);
+dom_exception dom_attr_set_value(struct dom_attr *attr,
+ struct dom_string *value);
+dom_exception dom_attr_get_owner(struct dom_attr *attr,
+ struct dom_element **result);
+dom_exception dom_attr_get_typeinfo(struct dom_attr *attr,
+ struct dom_typeinfo **result);
+dom_exception dom_attr_is_id(struct dom_attr *attr, bool *result);
#endif
diff --git a/include/dom/core/document.h b/include/dom/core/document.h
index 347fdc4..96b8dca 100644
--- a/include/dom/core/document.h
+++ b/include/dom/core/document.h
@@ -14,7 +14,6 @@
struct dom_attr;
struct dom_configuration;
-struct dom_ctx;
struct dom_document;
struct dom_document_type;
struct dom_element;
@@ -24,81 +23,69 @@ struct dom_nodelist;
struct dom_string;
struct dom_text;
-dom_exception dom_document_get_doctype(struct dom_ctx *ctx,
- struct dom_document *doc, struct dom_document_type **result);
-dom_exception dom_document_get_implementation(struct dom_ctx *ctx,
- struct dom_document *doc,
+dom_exception dom_document_get_doctype(struct dom_document *doc,
+ struct dom_document_type **result);
+dom_exception dom_document_get_implementation(struct dom_document *doc,
struct dom_implementation **result);
-dom_exception dom_document_get_element(struct dom_ctx *ctx,
- struct dom_document *doc, struct dom_element **result);
-dom_exception dom_document_create_element(struct dom_ctx *ctx,
- struct dom_document *doc, struct dom_string *tag_name,
+dom_exception dom_document_get_element(struct dom_document *doc,
struct dom_element **result);
-dom_exception dom_document_create_document_fragment(struct dom_ctx *ctx,
- struct dom_document *doc, struct dom_node **result);
-dom_exception dom_document_create_text_node(struct dom_ctx *ctx,
- struct dom_document *doc, struct dom_string *data,
- struct dom_text **result);
-dom_exception dom_document_create_cdata_section(struct dom_ctx *ctx,
- struct dom_document *doc, struct dom_string *data,
- struct dom_text **result);
-dom_exception dom_document_create_processing_instruction(struct dom_ctx *ctx,
- struct dom_document *doc, struct dom_string *target,
- struct dom_string *data,
+dom_exception dom_document_create_element(struct dom_document *doc,
+ struct dom_string *tag_name, struct dom_element **result);
+dom_exception dom_document_create_document_fragment(struct dom_document *doc,
struct dom_node **result);
-dom_exception dom_document_create_attribute(struct dom_ctx *ctx,
- struct dom_document *doc, struct dom_string *name,
+dom_exception dom_document_create_text_node(struct dom_document *doc,
+ struct dom_string *data, struct dom_text **result);
+dom_exception dom_document_create_cdata_section(struct dom_document *doc,
+ struct dom_string *data, struct dom_text **result);
+dom_exception dom_document_create_processing_instruction(
+ struct dom_document *doc, struct dom_string *target,
+ struct dom_string *data, struct dom_node **result);
+dom_exception dom_document_create_attribute(struct dom_document *doc,
+ struct dom_string *name, struct dom_attr **result);
+dom_exception dom_document_create_entity_reference(struct dom_document *doc,
+ struct dom_string *name, struct dom_node **result);
+dom_exception dom_document_get_elements_by_tag_name(struct dom_document *doc,
+ struct dom_string *tagname, struct dom_nodelist **result);
+dom_exception dom_document_import_node(struct dom_document *doc,
+ struct dom_node *node, bool deep, struct dom_node **result);
+dom_exception dom_document_create_element_ns(struct dom_document *doc,
+ struct dom_string *namespace, struct dom_string *qname,
+ struct dom_element **result);
+dom_exception dom_document_create_attribute_ns(struct dom_document *doc,
+ struct dom_string *namespace, struct dom_string *qname,
struct dom_attr **result);
-dom_exception dom_document_create_entity_reference(struct dom_ctx *ctx,
- struct dom_document *doc, struct dom_string *name,
- struct dom_node **result);
-dom_exception dom_document_get_elements_by_tag_name(struct dom_ctx *ctx,
- struct dom_document *doc, struct dom_string *tagname,
- struct dom_nodelist **result);
-dom_exception dom_document_import_node(struct dom_ctx *ctx,
- struct dom_document *doc, struct dom_node *node,
- bool deep, struct dom_node **result);
-dom_exception dom_document_create_element_ns(struct dom_ctx *ctx,
- struct dom_document *doc, struct dom_string *namespace,
- struct dom_string *qname, struct dom_element **result);
-dom_exception dom_document_create_attribute_ns(struct dom_ctx *ctx,
- struct dom_document *doc, struct dom_string *namespace,
- struct dom_string *qname, struct dom_attr **result);
-dom_exception dom_document_get_elements_by_tag_name_ns(struct dom_ctx *ctx,
+dom_exception dom_document_get_elements_by_tag_name_ns(
struct dom_document *doc, struct dom_string *namespace,
struct dom_string *localname, struct dom_nodelist **result);
-dom_exception dom_document_get_element_by_id(struct dom_ctx *ctx,
- struct dom_document *doc, struct dom_string *id,
- struct dom_element **result);
-dom_exception dom_document_get_input_encoding(struct dom_ctx *ctx,
- struct dom_document *doc, struct dom_string **result);
-dom_exception dom_document_get_xml_encoding(struct dom_ctx *ctx,
- struct dom_document *doc, struct dom_string **result);
-dom_exception dom_document_get_xml_standalone(struct dom_ctx *ctx,
+dom_exception dom_document_get_element_by_id(struct dom_document *doc,
+ struct dom_string *id, struct dom_element **result);
+dom_exception dom_document_get_input_encoding(struct dom_document *doc,
+ struct dom_string **result);
+dom_exception dom_document_get_xml_encoding(struct dom_document *doc,
+ struct dom_string **result);
+dom_exception dom_document_get_xml_standalone(struct dom_document *doc,
+ bool *result);
+dom_exception dom_document_set_xml_standalone(struct dom_document *doc,
+ bool standalone);
+dom_exception dom_document_get_xml_version(struct dom_document *doc,
+ struct dom_string **result);
+dom_exception dom_document_set_xml_version(struct dom_document *doc,
+ struct dom_string *version);
+dom_exception dom_document_get_strict_error_checking(
struct dom_document *doc, bool *result);
-dom_exception dom_document_set_xml_standalone(struct dom_ctx *ctx,
- struct dom_document *doc, bool standalone);
-dom_exception dom_document_get_xml_version(struct dom_ctx *ctx,
- struct dom_document *doc, struct dom_string **result);
-dom_exception dom_document_set_xml_version(struct dom_ctx *ctx,
- struct dom_document *doc, struct dom_string *version);
-dom_exception dom_document_get_strict_error_checking(struct dom_ctx *ctx,
- struct dom_document *doc, bool *result);
-dom_exception dom_document_set_strict_error_checking(struct dom_ctx *ctx,
+dom_exception dom_document_set_strict_error_checking(
struct dom_document *doc, bool strict);
-dom_exception dom_document_get_uri(struct dom_ctx *ctx,
- struct dom_document *doc, struct dom_string **result);
-dom_exception dom_document_set_uri(struct dom_ctx *ctx,
- struct dom_document *doc, struct dom_string *uri);
-dom_exception dom_document_adopt_node(struct dom_ctx *ctx,
- struct dom_document *doc, struct dom_node *node,
- struct dom_node **result);
-dom_exception dom_document_get_dom_config(struct dom_ctx *ctx,
- struct dom_document *doc, struct dom_configuration **result);
-dom_exception dom_document_normalize(struct dom_ctx *ctx,
- struct dom_document *doc);
-dom_exception dom_document_rename_node(struct dom_ctx *ctx,
- struct dom_document *doc, struct dom_node *node,
+dom_exception dom_document_get_uri(struct dom_document *doc,
+ struct dom_string **result);
+dom_exception dom_document_set_uri(struct dom_document *doc,
+ struct dom_string *uri);
+dom_exception dom_document_adopt_node(struct dom_document *doc,
+ struct dom_node *node, struct dom_node **result);
+dom_exception dom_document_get_dom_config(struct dom_document *doc,
+ struct dom_configuration **result);
+dom_exception dom_document_normalize(struct dom_document *doc);
+dom_exception dom_document_rename_node(struct dom_document *doc,
+ struct dom_node *node,
struct dom_string *namespace, struct dom_string *qname,
struct dom_node **result);
diff --git a/include/dom/core/exceptions.h b/include/dom/core/exceptions.h
index d735013..18a2b6e 100644
--- a/include/dom/core/exceptions.h
+++ b/include/dom/core/exceptions.h
@@ -5,8 +5,8 @@
* Copyright 2007 John-Mark Bell <jmb@netsurf-browser.org>
*/
-#ifndef dom_errors_h_
-#define dom_errors_h_
+#ifndef dom_core_exceptions_h_
+#define dom_core_exceptions_h_
/* The DOM spec says that this is actually an unsigned short */
typedef enum {
diff --git a/include/dom/core/node.h b/include/dom/core/node.h
index e37d99b..e335007 100644
--- a/include/dom/core/node.h
+++ b/include/dom/core/node.h
@@ -13,7 +13,6 @@
#include <dom/core/exceptions.h>
-struct dom_ctx;
struct dom_document;
struct dom_node;
struct dom_node_list;
@@ -69,102 +68,86 @@ typedef enum {
} dom_node_type;
-void dom_node_ref(struct dom_ctx *ctx, struct dom_node *node);
-void dom_node_unref(struct dom_ctx *ctx, struct dom_node *node);
+void dom_node_ref(struct dom_node *node);
+void dom_node_unref(struct dom_node *node);
-dom_exception dom_node_get_name(struct dom_ctx *ctx,
- struct dom_node *node, struct dom_string **result);
-dom_exception dom_node_get_value(struct dom_ctx *ctx,
- struct dom_node *node, struct dom_string **result);
-dom_exception dom_node_set_value(struct dom_ctx *ctx,
- struct dom_node *node, struct dom_string *value);
-dom_exception dom_node_get_type(struct dom_ctx *ctx,
- struct dom_node *node, dom_node_type *result);
-dom_exception dom_node_get_parent(struct dom_ctx *ctx,
- struct dom_node *node, struct dom_node **result);
-dom_exception dom_node_get_children(struct dom_ctx *ctx,
- struct dom_node *node, struct dom_node_list **result);
-dom_exception dom_node_get_first_child(struct dom_ctx *ctx,
- struct dom_node *node, struct dom_node **result);
-dom_exception dom_node_get_last_child(struct dom_ctx *ctx,
- struct dom_node *node, struct dom_node **result);
-dom_exception dom_node_get_previous(struct dom_ctx *ctx,
- struct dom_node *node, struct dom_node **result);
-dom_exception dom_node_get_next(struct dom_ctx *ctx,
- struct dom_node *node, struct dom_node **result);
-dom_exception dom_node_get_attributes(struct dom_ctx *ctx,
- struct dom_node *node, struct dom_named_node_map **result);
-dom_exception dom_node_get_owner(struct dom_ctx *ctx,
- struct dom_node *node, struct dom_document **result);
-dom_exception dom_node_insert_before(struct dom_ctx *ctx,
- struct dom_node *node,
+dom_exception dom_node_get_name(struct dom_node *node,
+ struct dom_string **result);
+dom_exception dom_node_get_value(struct dom_node *node,
+ struct dom_string **result);
+dom_exception dom_node_set_value(struct dom_node *node,
+ struct dom_string *value);
+dom_exception dom_node_get_type(struct dom_node *node,
+ dom_node_type *result);
+dom_exception dom_node_get_parent(struct dom_node *node,
+ struct dom_node **result);
+dom_exception dom_node_get_children(struct dom_node *node,
+ struct dom_node_list **result);
+dom_exception dom_node_get_first_child(struct dom_node *node,
+ struct dom_node **result);
+dom_exception dom_node_get_last_child(struct dom_node *node,
+ struct dom_node **result);
+dom_exception dom_node_get_previous(struct dom_node *node,
+ struct dom_node **result);
+dom_exception dom_node_get_next(struct dom_node *node,
+ struct dom_node **result);
+dom_exception dom_node_get_attributes(struct dom_node *node,
+ struct dom_named_node_map **result);
+dom_exception dom_node_get_owner(struct dom_node *node,
+ struct dom_document **result);
+dom_exception dom_node_insert_before(struct dom_node *node,
struct dom_node *new_child, struct dom_node *ref_child,
struct dom_node **result);
-dom_exception dom_node_replace_child(struct dom_ctx *ctx,
- struct dom_node *node,
+dom_exception dom_node_replace_child(struct dom_node *node,
struct dom_node *new_child, struct dom_node *old_child,
struct dom_node **result);
-dom_exception dom_node_remove_child(struct dom_ctx *ctx,
- struct dom_node *node,
+dom_exception dom_node_remove_child(struct dom_node *node,
struct dom_node *old_child,
struct dom_node **result);
-dom_exception dom_node_append_child(struct dom_ctx *ctx,
- struct dom_node *node,
+dom_exception dom_node_append_child(struct dom_node *node,
struct dom_node *new_child,
struct dom_node **result);
-dom_exception dom_node_has_children(struct dom_ctx *ctx,
- struct dom_node *node, bool *result);
-dom_exception dom_node_clone(struct dom_ctx *ctx,
- struct dom_node *node, bool deep,
+dom_exception dom_node_has_children(struct dom_node *node, bool *result);
+dom_exception dom_node_clone(struct dom_node *node, bool deep,
struct dom_node **result);
-dom_exception dom_node_normalize(struct dom_ctx *ctx,
- struct dom_node *node);
-dom_exception dom_node_is_supported(struct dom_ctx *ctx,
- struct dom_node *node, struct dom_string *feature,
- struct dom_node *version, bool *result);
-dom_exception dom_node_get_namespace(struct dom_ctx *ctx,
- struct dom_node *node, struct dom_string **result);
-dom_exception dom_node_get_prefix(struct dom_ctx *ctx,
- struct dom_node *node, struct dom_string **result);
-dom_exception dom_node_set_prefix(struct dom_ctx *ctx,
- struct dom_node *node, struct dom_string *prefix);
-dom_exception dom_node_get_local_name(struct dom_ctx *ctx,
- struct dom_node *node, struct dom_string **result);
-dom_exception dom_node_has_attributes(struct dom_ctx *ctx,
- struct dom_node *node, bool *result);
-dom_exception dom_node_get_base(struct dom_ctx *ctx,
- struct dom_node *node, struct dom_string **result);
-dom_exception dom_node_compare_document_position(struct dom_ctx *ctx,
- struct dom_node *node, struct dom_node *other,
- uint16_t *result);
-dom_exception dom_node_get_text_content(struct dom_ctx *ctx,
- struct dom_node *node, struct dom_string **result);
-dom_exception dom_node_set_text_content(struct dom_ctx *ctx,
- struct dom_node *node, struct dom_string *content);
-dom_exception dom_node_is_same(struct dom_ctx *ctx,
- struct dom_node *node, struct dom_node *other,
+dom_exception dom_node_normalize(struct dom_node *node);
+dom_exception dom_node_is_supported(struct dom_node *node,
+ struct dom_string *feature, struct dom_node *version,
bool *result);
-dom_exception dom_node_lookup_prefix(struct dom_ctx *ctx,
- struct dom_node *node, struct dom_string *namespace,
+dom_exception dom_node_get_namespace(struct dom_node *node,
struct dom_string **result);
-dom_exception dom_node_is_default_namespace(struct dom_ctx *ctx,
- struct dom_node *node, struct dom_string *namespace,
- bool *result);
-dom_exception dom_node_lookup_namespace(struct dom_ctx *ctx,
- struct dom_node *node, struct dom_string *prefix,
+dom_exception dom_node_get_prefix(struct dom_node *node,
+ struct dom_string **result);
+dom_exception dom_node_set_prefix(struct dom_node *node,
+ struct dom_string *prefix);
+dom_exception dom_node_get_local_name(struct dom_node *node,
struct dom_string **result);
-dom_exception dom_node_is_equal(struct dom_ctx *ctx,
- struct dom_node *node, struct dom_node *other,
+dom_exception dom_node_has_attributes(struct dom_node *node, bool *result);
+dom_exception dom_node_get_base(struct dom_node *node,
+ struct dom_string **result);
+dom_exception dom_node_compare_document_position(struct dom_node *node,
+ struct dom_node *other, uint16_t *result);
+dom_exception dom_node_get_text_content(struct dom_node *node,
+ struct dom_string **result);
+dom_exception dom_node_set_text_content(struct dom_node *node,
+ struct dom_string *content);
+dom_exception dom_node_is_same(struct dom_node *node, struct dom_node *other,
bool *result);
-dom_exception dom_node_get_feature(struct dom_ctx *ctx,
- struct dom_node *node, struct dom_string *feature,
- struct dom_string *version, void **result);
-dom_exception dom_node_set_user_data(struct dom_ctx *ctx,
- struct dom_node *node, struct dom_string *key,
- void *data, dom_user_data_handler handler,
- void **result);
-dom_exception dom_node_get_user_data(struct dom_ctx *ctx,
- struct dom_node *node, struct dom_string *key,
+dom_exception dom_node_lookup_prefix(struct dom_node *node,
+ struct dom_string *namespace, struct dom_string **result);
+dom_exception dom_node_is_default_namespace(struct dom_node *node,
+ struct dom_string *namespace, bool *result);
+dom_exception dom_node_lookup_namespace(struct dom_node *node,
+ struct dom_string *prefix, struct dom_string **result);
+dom_exception dom_node_is_equal(struct dom_node *node,
+ struct dom_node *other, bool *result);
+dom_exception dom_node_get_feature(struct dom_node *node,
+ struct dom_string *feature, struct dom_string *version,
void **result);
+dom_exception dom_node_set_user_data(struct dom_node *node,
+ struct dom_string *key, void *data,
+ dom_user_data_handler handler, void **result);
+dom_exception dom_node_get_user_data(struct dom_node *node,
+ struct dom_string *key, void **result);
#endif
diff --git a/include/dom/core/string.h b/include/dom/core/string.h
index f79eaa7..f591464 100644
--- a/include/dom/core/string.h
+++ b/include/dom/core/string.h
@@ -13,28 +13,26 @@
#include <dom/core/exceptions.h>
-struct dom_ctx;
struct dom_document;
struct dom_string;
/* Claim a reference on a DOM string */
-void dom_string_ref(struct dom_ctx *ctx, struct dom_string *str);
+void dom_string_ref(struct dom_string *str);
/* Release a reference on a DOM string */
-void dom_string_unref(struct dom_ctx *ctx, struct dom_string *str);
+void dom_string_unref(struct dom_string *str);
/* Create a DOM string from an offset into the document buffer */
-dom_exception dom_string_create_from_off(struct dom_ctx *ctx,
- struct dom_document *doc, uint32_t off, size_t len,
- struct dom_string **str);
+dom_exception dom_string_create_from_off(struct dom_document *doc,
+ uint32_t off, size_t len, struct dom_string **str);
/* Create a DOM string from a string of characters */
-dom_exception dom_string_create_from_ptr(struct dom_ctx *ctx,
+dom_exception dom_string_create_from_ptr(struct dom_document *doc,
const uint8_t *ptr, size_t len, struct dom_string **str);
/* Create a DOM string from a constant string of characters */
-dom_exception dom_string_create_from_const_ptr(struct dom_ctx *ctx,
+dom_exception dom_string_create_from_const_ptr(struct dom_document *doc,
const uint8_t *ptr, size_t len, struct dom_string **str);
/* Get a pointer to the string of characters within a DOM string */
-dom_exception dom_string_get_data(struct dom_ctx *ctx,
- struct dom_string *str, const uint8_t **data, size_t *len);
+dom_exception dom_string_get_data(struct dom_string *str,
+ const uint8_t **data, size_t *len);
#endif
diff --git a/include/dom/ctx.h b/include/dom/functypes.h
index f69ec65..85348a2 100644
--- a/include/dom/ctx.h
+++ b/include/dom/functypes.h
@@ -5,8 +5,8 @@
* Copyright 2007 John-Mark Bell <jmb@netsurf-browser.org>
*/
-#ifndef dom_ctx_h_
-#define dom_ctx_h_
+#ifndef dom_functypes_h_
+#define dom_functypes_h_
#include <stddef.h>
@@ -15,12 +15,4 @@
*/
typedef void *(*dom_alloc)(void *ptr, size_t size, void *pw);
-/**
- * DOM allocation context
- */
-struct dom_ctx {
- dom_alloc alloc; /**< Memory (de)allocation function */
- void *pw; /**< Pointer to client data */
-};
-
#endif