From bcb95bf5fa2c5cfd2e7c80f211f7fd6db6ce2f9a Mon Sep 17 00:00:00 2001 From: John Mark Bell Date: Sat, 12 Mar 2011 17:16:31 +0000 Subject: CSS3 Namespaces svn path=/trunk/libcss/; revision=11972 --- src/parse/language.h | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) (limited to 'src/parse/language.h') diff --git a/src/parse/language.h b/src/parse/language.h index 39b7222..0f1985c 100644 --- a/src/parse/language.h +++ b/src/parse/language.h @@ -18,6 +18,14 @@ #include "parse/parse.h" #include "parse/propstrings.h" +/** + * CSS namespace mapping + */ +typedef struct css_namespace { + lwc_string *prefix; /**< Namespace prefix */ + lwc_string *uri; /**< Namespace URI */ +} css_namespace; + /** * Context for a CSS language parser */ @@ -28,8 +36,9 @@ typedef struct css_language { parserutils_stack *context; /**< Context stack */ enum { - BEFORE_CHARSET, - BEFORE_RULES, + CHARSET_PERMITTED, + IMPORT_PERMITTED, + NAMESPACE_PERMITTED, HAD_RULE } state; /**< State flag, for at-rule handling */ @@ -37,6 +46,10 @@ typedef struct css_language { /** Interned strings */ lwc_string *strings[LAST_KNOWN]; + lwc_string *default_namespace; /**< Default namespace URI */ + css_namespace *namespaces; /**< Array of namespace mappings */ + uint32_t num_namespaces; /**< Number of namespace mappings */ + css_allocator_fn alloc; /**< Memory (de)allocation function */ void *pw; /**< Client's private data */ } css_language; -- cgit v1.2.3