summaryrefslogtreecommitdiff
path: root/include/dom/core
diff options
context:
space:
mode:
authorBo Yang <struggleyb.nku@gmail.com>2009-04-29 12:44:35 +0000
committerBo Yang <struggleyb.nku@gmail.com>2009-04-29 12:44:35 +0000
commit2de93d957296913fc8e13d7deafaf7c61dfcf265 (patch)
tree8e0f209cee78455b2707b872dad6b2f691902b34 /include/dom/core
parent62ef8dccac05d5cf6e109b6fdd6de11e598e5f9d (diff)
downloadlibdom-2de93d957296913fc8e13d7deafaf7c61dfcf265.tar.gz
libdom-2de93d957296913fc8e13d7deafaf7c61dfcf265.tar.bz2
Make dom_namednodemap and dom_nodelist more usable through macroes. Note, it is the partly-completed testcase that find this problem. Our DOMTS is on its way.
svn path=/trunk/dom/; revision=7365
Diffstat (limited to 'include/dom/core')
-rw-r--r--include/dom/core/namednodemap.h53
-rw-r--r--include/dom/core/nodelist.h5
2 files changed, 50 insertions, 8 deletions
diff --git a/include/dom/core/namednodemap.h b/include/dom/core/namednodemap.h
index 77c4cc3..fd2b754 100644
--- a/include/dom/core/namednodemap.h
+++ b/include/dom/core/namednodemap.h
@@ -21,24 +21,63 @@ void dom_namednodemap_unref(struct dom_namednodemap *map);
dom_exception dom_namednodemap_get_length(struct dom_namednodemap *map,
unsigned long *length);
-dom_exception dom_namednodemap_get_named_item(struct dom_namednodemap *map,
+dom_exception _dom_namednodemap_get_named_item(struct dom_namednodemap *map,
struct dom_string *name, struct dom_node **node);
-dom_exception dom_namednodemap_set_named_item(struct dom_namednodemap *map,
+
+#define dom_namednodemap_get_named_item(m, n, r) \
+ _dom_namednodemap_get_named_item((dom_namednodemap *) (m), \
+ (dom_string *) (n), (dom_node **) (r))
+
+
+dom_exception _dom_namednodemap_set_named_item(struct dom_namednodemap *map,
struct dom_node *arg, struct dom_node **node);
-dom_exception dom_namednodemap_remove_named_item(
+
+#define dom_namednodemap_set_named_item(m, a, n) \
+ _dom_namednodemap_set_named_item((dom_namednodemap *) (m), \
+ (dom_node *) (a), (dom_node **) (n))
+
+
+dom_exception _dom_namednodemap_remove_named_item(
struct dom_namednodemap *map, struct dom_string *name,
struct dom_node **node);
-dom_exception dom_namednodemap_item(struct dom_namednodemap *map,
+
+#define dom_namednodemap_remove_named_item(m, n, r) \
+ _dom_namednodemap_remove_named_item((dom_namednodemap *) (m), \
+ (dom_string *) (n), (dom_node **) (n))
+
+
+dom_exception _dom_namednodemap_item(struct dom_namednodemap *map,
unsigned long index, struct dom_node **node);
-dom_exception dom_namednodemap_get_named_item_ns(
+#define dom_namednodemap_item(m, i, n) _dom_namednodemap_item( \
+ (dom_namednodemap *) (m), (unsigned long) (i), \
+ (dom_node **) (n))
+
+
+dom_exception _dom_namednodemap_get_named_item_ns(
struct dom_namednodemap *map, struct dom_string *namespace,
struct dom_string *localname, struct dom_node **node);
-dom_exception dom_namednodemap_set_named_item_ns(
+
+#define dom_namednodemap_get_named_item_ns(m, n, l, r) \
+ _dom_namednodemap_get_named_item_ns((dom_namednodemap *) (m), \
+ (dom_string *) (n), (dom_string *) (l), (dom_node **) (n))
+
+
+dom_exception _dom_namednodemap_set_named_item_ns(
struct dom_namednodemap *map, struct dom_node *arg,
struct dom_node **node);
-dom_exception dom_namednodemap_remove_named_item_ns(
+
+#define dom_namednodemap_set_named_item_ns(m, a, n) \
+ _dom_namednodemap_set_named_item_ns((dom_namednodemap *) (m), \
+ (dom_node *) (a), (dom_node **) (n))
+
+
+dom_exception _dom_namednodemap_remove_named_item_ns(
struct dom_namednodemap *map, struct dom_string *namespace,
struct dom_string *localname, struct dom_node **node);
+#define dom_namednodemap_remove_named_item_ns(m, n, l, r) \
+ _dom_namednodemap_remove_named_item_ns((dom_namednodemap *) (m), \
+ (dom_string *) (n), (dom_string *) (l), (dom_node **) (r))
+
#endif
diff --git a/include/dom/core/nodelist.h b/include/dom/core/nodelist.h
index d3b0df9..2aad313 100644
--- a/include/dom/core/nodelist.h
+++ b/include/dom/core/nodelist.h
@@ -19,7 +19,10 @@ void dom_nodelist_unref(struct dom_nodelist *list);
dom_exception dom_nodelist_get_length(struct dom_nodelist *list,
unsigned long *length);
-dom_exception dom_nodelist_item(struct dom_nodelist *list,
+dom_exception _dom_nodelist_item(struct dom_nodelist *list,
unsigned long index, struct dom_node **node);
+#define dom_nodelist_item(l, i, n) _dom_nodelist_item((dom_nodelist *) (l), \
+ (unsigned long) (i), (dom_node **) (n))
+
#endif