diff options
author | Michael Drake <michael.drake@codethink.co.uk> | 2016-01-28 17:13:28 +0000 |
---|---|---|
committer | Michael Drake <michael.drake@codethink.co.uk> | 2016-01-28 17:13:28 +0000 |
commit | cedfbbce5ee148d04cfa87c3e459eea26ba397ef (patch) | |
tree | 89635134eed70c1df176a98aebd54eeab811ab20 /include | |
parent | fa2111088b5bb6b24b4acca53c95e1dc0284682e (diff) | |
download | libdom-cedfbbce5ee148d04cfa87c3e459eea26ba397ef.tar.gz libdom-cedfbbce5ee148d04cfa87c3e459eea26ba397ef.tar.bz2 |
Add function to get html element's tag type.
Diffstat (limited to 'include')
-rw-r--r-- | include/dom/html/html_element.h | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/include/dom/html/html_element.h b/include/dom/html/html_element.h index dc1def1..49a7d59 100644 --- a/include/dom/html/html_element.h +++ b/include/dom/html/html_element.h @@ -9,6 +9,7 @@ #define dom_html_element_h_ #include <dom/core/element.h> +#include <dom/html/html_elements.h> typedef struct dom_html_element dom_html_element; @@ -45,6 +46,12 @@ typedef struct dom_html_element_vtable { dom_exception (*dom_html_element_set_class_name)( struct dom_html_element *element, dom_string *class_name); + + /* This is for providing clients with a convienent way to deal + * with html elements with a specific tag name. */ + dom_exception (*dom_html_element_get_tag_type)( + const struct dom_html_element *element, + dom_html_element_type *type); } dom_html_element_vtable; static inline dom_exception dom_html_element_get_id( @@ -139,5 +146,16 @@ static inline dom_exception dom_html_element_set_class_name( dom_html_element_set_class_name((dom_html_element *) (e), \ (class_name)) +static inline dom_exception dom_html_element_get_tag_type( + const struct dom_html_element *element, + dom_html_element_type *type) +{ + return ((dom_html_element_vtable *) ((dom_node *) element)->vtable)-> + dom_html_element_get_tag_type(element, type); +} +#define dom_html_element_get_tag_type(e, type) \ + dom_html_element_get_tag_type((const dom_html_element *) (e), \ + (type)) + #endif |