summaryrefslogtreecommitdiff
path: root/src/core/namednodemap.h
diff options
context:
space:
mode:
authorJohn Mark Bell <jmb@netsurf-browser.org>2007-07-10 23:25:18 +0000
committerJohn Mark Bell <jmb@netsurf-browser.org>2007-07-10 23:25:18 +0000
commit8c37c8567d24d94636cff13bab4eebd9ae690ca2 (patch)
treeb4c493587d97605e69be27b7cd7850ef3bb2a3ac /src/core/namednodemap.h
parentacfc9fd1b44f7b72ba66705daf34914940509793 (diff)
downloadlibdom-8c37c8567d24d94636cff13bab4eebd9ae690ca2.tar.gz
libdom-8c37c8567d24d94636cff13bab4eebd9ae690ca2.tar.bz2
Add NamedNodeMap.
Minor fix for NodeList unref function; ensure it unrefs the owner document after it has finished using it. svn path=/trunk/dom/; revision=3395
Diffstat (limited to 'src/core/namednodemap.h')
-rw-r--r--src/core/namednodemap.h39
1 files changed, 39 insertions, 0 deletions
diff --git a/src/core/namednodemap.h b/src/core/namednodemap.h
new file mode 100644
index 0000000..1cd2b0c
--- /dev/null
+++ b/src/core/namednodemap.h
@@ -0,0 +1,39 @@
+/*
+ * This file is part of libdom.
+ * Licensed under the MIT License,
+ * http://www.opensource.org/licenses/mit-license.php
+ * Copyright 2007 John-Mark Bell <jmb@netsurf-browser.org>
+ */
+
+#ifndef dom_internal_namednodemap_h_
+#define dom_internal_namednodemap_h_
+
+#include <stdbool.h>
+
+#include <dom/core/namednodemap.h>
+
+struct dom_document;
+struct dom_node;
+struct dom_namednodemap;
+struct dom_string;
+
+/**
+ * Type of a named node map
+ */
+typedef enum {
+ DOM_NAMEDNODEMAP_ATTRIBUTES,
+ DOM_NAMEDNODEMAP_ENTITIES,
+ DOM_NAMEDNODEMAP_NOTATIONS
+} dom_namednodemap_type;
+
+/* Create a namednodemap */
+dom_exception dom_namednodemap_create(struct dom_document *doc,
+ struct dom_node *root, dom_namednodemap_type type,
+ struct dom_namednodemap **map);
+
+
+/* Match a namednodemap instance against a set of creation parameters */
+bool dom_namednodemap_match(struct dom_namednodemap *map,
+ struct dom_node *root, dom_namednodemap_type type);
+
+#endif