diff options
author | Daniel Silverstone <dsilvers@netsurf-browser.org> | 2012-07-04 18:11:19 +0100 |
---|---|---|
committer | Daniel Silverstone <dsilvers@netsurf-browser.org> | 2012-07-04 18:11:19 +0100 |
commit | 6ff1cec49283e8a6be037c54cb52f8ced49178b7 (patch) | |
tree | 3032b887236af87f3208820385ad201304821e79 /src/html | |
parent | 4cefa1956f5e26a1258939c847fad648fa98901b (diff) | |
download | libdom-6ff1cec49283e8a6be037c54cb52f8ced49178b7.tar.gz libdom-6ff1cec49283e8a6be037c54cb52f8ced49178b7.tar.bz2 |
HTMLElement: Replace current get/set id with a macro
Diffstat (limited to 'src/html')
-rw-r--r-- | src/html/html_element.c | 63 |
1 files changed, 30 insertions, 33 deletions
diff --git a/src/html/html_element.c b/src/html/html_element.c index 555e4fb..6719f2e 100644 --- a/src/html/html_element.c +++ b/src/html/html_element.c @@ -103,41 +103,38 @@ dom_exception _dom_html_element_copy(dom_node_internal *old, /*-----------------------------------------------------------------------*/ /* API functions */ -dom_exception _dom_html_element_get_id(dom_html_element *element, - dom_string **id) -{ - dom_exception ret; - dom_string *_memo_id; - - /* Because we're an HTML element, our document is always - * an HTML document, so we can get its memoised id string - */ - _memo_id = - ((struct dom_html_document *) - ((struct dom_node_internal *)element)->owner)->_memo_id; - - ret = dom_element_get_attribute(element, _memo_id, id); - - return ret; +#define SIMPLE_GET_SET(attr) \ +dom_exception _dom_html_element_get_##attr(dom_html_element *element, \ + dom_string **attr) \ +{ \ + dom_exception ret; \ + dom_string *_memo_##attr; \ + \ + _memo_##attr = \ + ((struct dom_html_document *) \ + ((struct dom_node_internal *)element)->owner)->_memo_##attr; \ + \ + ret = dom_element_get_attribute(element, _memo_##attr, attr); \ + \ + return ret; \ +} \ + \ +dom_exception _dom_html_element_set_##attr(dom_html_element *element, \ + dom_string *attr) \ +{ \ + dom_exception ret; \ + dom_string *_memo_##attr; \ + \ + _memo_##attr = \ + ((struct dom_html_document *) \ + ((struct dom_node_internal *)element)->owner)->_memo_##attr; \ + \ + ret = dom_element_set_attribute(element, _memo_##attr, attr); \ + \ + return ret; \ } -dom_exception _dom_html_element_set_id(dom_html_element *element, - dom_string *id) -{ - dom_exception ret; - dom_string *_memo_id; - - /* Because we're an HTML element, our document is always - * an HTML document, so we can get its memoised id string - */ - _memo_id = - ((struct dom_html_document *) - ((struct dom_node_internal *)element)->owner)->_memo_id; - - ret = dom_element_set_attribute(element, _memo_id, id); - - return ret; -} +SIMPLE_GET_SET(id) dom_exception _dom_html_element_get_title(dom_html_element *element, dom_string **title) |