diff options
author | Bo Yang <struggleyb.nku@gmail.com> | 2009-04-29 12:44:35 +0000 |
---|---|---|
committer | Bo Yang <struggleyb.nku@gmail.com> | 2009-04-29 12:44:35 +0000 |
commit | 2de93d957296913fc8e13d7deafaf7c61dfcf265 (patch) | |
tree | 8e0f209cee78455b2707b872dad6b2f691902b34 /include | |
parent | 62ef8dccac05d5cf6e109b6fdd6de11e598e5f9d (diff) | |
download | libdom-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')
-rw-r--r-- | include/dom/core/namednodemap.h | 53 | ||||
-rw-r--r-- | include/dom/core/nodelist.h | 5 |
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 |