From d39dbc93d93f537962fe998031ade04d7ee6ca6a Mon Sep 17 00:00:00 2001 From: John Mark Bell Date: Fri, 6 Jul 2007 21:42:18 +0000 Subject: Purge all trace of the ballache that was dom_ctx. Document the functions in document.c svn path=/trunk/dom/; revision=3385 --- include/dom/core/attr.h | 27 ++++---- include/dom/core/document.h | 123 ++++++++++++++++------------------ include/dom/core/exceptions.h | 4 +- include/dom/core/node.h | 149 +++++++++++++++++++----------------------- include/dom/core/string.h | 18 +++-- include/dom/ctx.h | 26 -------- include/dom/functypes.h | 18 +++++ 7 files changed, 161 insertions(+), 204 deletions(-) delete mode 100644 include/dom/ctx.h create mode 100644 include/dom/functypes.h (limited to 'include/dom') 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 -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 */ -#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 -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 -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/ctx.h deleted file mode 100644 index f69ec65..0000000 --- a/include/dom/ctx.h +++ /dev/null @@ -1,26 +0,0 @@ -/* - * This file is part of libdom. - * Licensed under the MIT License, - * http://www.opensource.org/licenses/mit-license.php - * Copyright 2007 John-Mark Bell - */ - -#ifndef dom_ctx_h_ -#define dom_ctx_h_ - -#include - -/** - * Type of allocation function for DOM implementation - */ -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 diff --git a/include/dom/functypes.h b/include/dom/functypes.h new file mode 100644 index 0000000..85348a2 --- /dev/null +++ b/include/dom/functypes.h @@ -0,0 +1,18 @@ +/* + * This file is part of libdom. + * Licensed under the MIT License, + * http://www.opensource.org/licenses/mit-license.php + * Copyright 2007 John-Mark Bell + */ + +#ifndef dom_functypes_h_ +#define dom_functypes_h_ + +#include + +/** + * Type of allocation function for DOM implementation + */ +typedef void *(*dom_alloc)(void *ptr, size_t size, void *pw); + +#endif -- cgit v1.2.3