iconv: Bail out of the loop when an illegal sequence of bytes occurs.
[elinks/elinks-j605.git] / src / document / css / parser.h
blob67d00e21549d6ef543b6b5529d8233f09b483010
1 /*! @file
2 * This is interface for the value parser. It is intended to be used
3 * only internally inside of the CSS engine. */
5 #ifndef EL__DOCUMENT_CSS_PARSER_H
6 #define EL__DOCUMENT_CSS_PARSER_H
8 #include "util/lists.h"
9 struct scanner;
10 struct css_stylesheet;
11 struct uri;
13 /** This function takes a semicolon separated list of declarations
14 * from the given string, parses them to atoms, and chains the newly
15 * created struct css_property objects to the specified list.
16 * @returns positive value in case it recognized a property in the
17 * given string, or zero in case of an error. */
18 void css_parse_properties(LIST_OF(struct css_property) *props,
19 struct scanner *scanner);
22 /** Parses the @a string and adds any recognized selectors + properties to the
23 * given stylesheet @a css. If the selector is already in the stylesheet it
24 * properties are added to the that selector. */
25 void css_parse_stylesheet(struct css_stylesheet *css, struct uri *base_uri,
26 const unsigned char *string, const unsigned char *end);
28 #endif