#include "string.h"
#include "cr-parser.h"
#include "cr-num.h"
#include "cr-term.h"
#include "cr-simple-sel.h"
#include "cr-attr-sel.h"
Go to the source code of this file.
Data Structures | |
struct | _CRParserError |
An abstraction of an error reported by by the parsing routines. More... | |
struct | _CRParserPriv |
The private attributes of CRParser. More... | |
Defines | |
#define | PRIVATE(obj) ((obj)->priv) |
#define | CHARS_TAB_SIZE 12 |
#define | IS_NUM(a_char) (((a_char) >= '0' && (a_char) <= '9')?TRUE:FALSE) |
IS_NUM: : the char to test. | |
#define | CHECK_PARSING_STATUS(status, is_exception) |
Checks if 'status' equals CR_OK. | |
#define | CHECK_PARSING_STATUS_ERR(a_this, a_status, a_is_exception, a_err_msg, a_err_status) |
CHECK_PARSING_STATUS_ERR: : the current instance of CRParser . | |
#define | PEEK_NEXT_CHAR(a_this, a_to_char) |
Peeks the next char from the input stream of the current parser by invoking cr_tknzr_input_peek_char(). | |
#define | READ_NEXT_CHAR(a_this, a_to_char) |
Reads the next char from the input stream of the current parser. | |
#define | RECORD_INITIAL_POS(a_this, a_pos) |
Gets information about the current position in the input of the parser. | |
#define | RECORD_CUR_BYTE_ADDR(a_this, a_addr) |
Gets the address of the current byte inside the parser input. | |
#define | PEEK_BYTE(a_parser, a_offset, a_byte_ptr) |
Peeks a byte from the topmost parser input at a given offset from the current position. | |
#define | BYTE(a_parser, a_offset, a_eof) cr_tknzr_peek_byte2 (PRIVATE (a_this)->tknzr, a_offset, a_eof) |
#define | READ_NEXT_BYTE(a_this, a_byte_ptr) |
Reads a byte from the topmost parser input steam. | |
#define | SKIP_BYTES(a_this, a_nb_bytes) |
Skips a given number of byte in the topmost parser input. | |
#define | SKIP_CHARS(a_parser, a_nb_chars) |
Skip utf8 encoded characters. | |
#define | ENSURE_PARSING_COND(condition) if (! (condition)) {status = CR_PARSING_ERROR; goto error ;} |
Tests the condition and if it is false, sets status to "CR_PARSING_ERROR" and goto the 'error' label. | |
#define | ENSURE_PARSING_COND_ERR(a_this, a_condition, a_err_msg, a_err_status) |
#define | GET_NEXT_TOKEN(a_this, a_token_ptr) |
Typedefs | |
typedef _CRParserError | CRParserError |
: | |
Enumerations | |
enum | CRParserState { READY_STATE = 0, TRY_PARSE_CHARSET_STATE, CHARSET_PARSED_STATE, TRY_PARSE_IMPORT_STATE, IMPORT_PARSED_STATE, TRY_PARSE_RULESET_STATE, RULESET_PARSED_STATE, TRY_PARSE_MEDIA_STATE, MEDIA_PARSED_STATE, TRY_PARSE_PAGE_STATE, PAGE_PARSED_STATE, TRY_PARSE_FONT_FACE_STATE, FONT_FACE_PARSED_STATE } |
Functions | |
enum CRStatus | cr_parser_try_to_skip_spaces_and_comments (CRParser *a_this) |
cr_parser_try_to_skip_spaces_and_comments: : the current instance of CRParser. | |
enum CRStatus | cr_parser_parse_term (CRParser *a_this, CRTerm **a_term) |
cr_parser_parse_term: : out parameter. | |
CRParser * | cr_parser_new (CRTknzr *a_tknzr) |
cr_parser_new: : the tokenizer to use for the parsing. | |
CRParser * | cr_parser_new_from_buf (guchar *a_buf, gulong a_len, enum CREncoding a_enc, gboolean a_free_buf) |
cr_parser_new_from_buf: : the buffer to parse. | |
CRParser * | cr_parser_new_from_input (CRInput *a_input) |
cr_parser_new_from_input: : the parser input stream to use. | |
CRParser * | cr_parser_new_from_file (const guchar *a_file_uri, enum CREncoding a_enc) |
cr_parser_new_from_file: : the uri of the file to parse. | |
enum CRStatus | cr_parser_set_sac_handler (CRParser *a_this, CRDocHandler *a_handler) |
cr_parser_set_sac_handler: : the "this pointer" of the current instance of CRParser. | |
enum CRStatus | cr_parser_get_sac_handler (CRParser *a_this, CRDocHandler **a_handler) |
cr_parser_get_sac_handler: : the "this pointer" of the current instance of CRParser. | |
enum CRStatus | cr_parser_set_default_sac_handler (CRParser *a_this) |
cr_parser_set_default_sac_handler: : a pointer to the current instance of CRParser. | |
enum CRStatus | cr_parser_set_use_core_grammar (CRParser *a_this, gboolean a_use_core_grammar) |
cr_parser_set_use_core_grammar: : the current instance of CRParser. | |
enum CRStatus | cr_parser_get_use_core_grammar (CRParser *a_this, gboolean *a_use_core_grammar) |
cr_parser_get_use_core_grammar: : the current instance of CRParser. | |
enum CRStatus | cr_parser_parse_file (CRParser *a_this, const guchar *a_file_uri, enum CREncoding a_enc) |
cr_parser_parse_file: : a pointer to the current instance of CRParser. | |
enum CRStatus | cr_parser_parse_expr (CRParser *a_this, CRTerm **a_expr) |
cr_parser_parse_expr: : the current instance of CRParser. | |
enum CRStatus | cr_parser_parse_prio (CRParser *a_this, CRString **a_prio) |
cr_parser_parse_prio: : the current instance of CRParser. | |
enum CRStatus | cr_parser_parse_declaration (CRParser *a_this, CRString **a_property, CRTerm **a_expr, gboolean *a_important) |
cr_parser_parse_declaration: : the "this pointer" of the current instance of CRParser. | |
enum CRStatus | cr_parser_parse_statement_core (CRParser *a_this) |
cr_parser_parse_statement_core: : the current instance of CRParser. | |
enum CRStatus | cr_parser_parse_ruleset (CRParser *a_this) |
cr_parser_parse_ruleset: : the "this pointer" of the current instance of CRParser. | |
enum CRStatus | cr_parser_parse_import (CRParser *a_this, GList **a_media_list, CRString **a_import_string, CRParsingLocation *a_location) |
cr_parser_parse_import: : the "this pointer" of the current instance of CRParser. | |
enum CRStatus | cr_parser_parse_media (CRParser *a_this) |
cr_parser_parse_media: : the "this pointer" of the current instance of CRParser. | |
enum CRStatus | cr_parser_parse_page (CRParser *a_this) |
enum CRStatus | cr_parser_parse_charset (CRParser *a_this, CRString **a_value, CRParsingLocation *a_charset_sym_location) |
cr_parser_parse_charset: : the "this pointer" of the current instance of CRParser. | |
enum CRStatus | cr_parser_parse_font_face (CRParser *a_this) |
cr_parser_parse_font_face: : the current instance of CRParser. | |
enum CRStatus | cr_parser_parse (CRParser *a_this) |
cr_parser_parse: : the current instance of CRParser. | |
enum CRStatus | cr_parser_set_tknzr (CRParser *a_this, CRTknzr *a_tknzr) |
cr_parser_set_tknzr: : the current instance of CRParser; : the new tokenizer. | |
enum CRStatus | cr_parser_get_tknzr (CRParser *a_this, CRTknzr **a_tknzr) |
cr_parser_get_tknzr: : the current instance of CRParser : out parameter. | |
enum CRStatus | cr_parser_get_parsing_location (CRParser *a_this, CRParsingLocation *a_loc) |
cr_parser_get_parsing_location: : the current instance of CRParser : the parsing location to get. | |
enum CRStatus | cr_parser_parse_buf (CRParser *a_this, const guchar *a_buf, gulong a_len, enum CREncoding a_enc) |
cr_parser_parse_buf: : the current instance of CRparser : the input buffer : the length of the input buffer : the encoding of the buffer | |
void | cr_parser_destroy (CRParser *a_this) |
cr_parser_destroy: : the current instance of CRParser to destroy. |
|
Definition at line 261 of file cr-parser.c. Referenced by cr_parser_parse_import(), and cr_tknzr_get_next_token(). |
|
Definition at line 137 of file cr-parser.c. |
|
Value: if ((status) != CR_OK) \ { \ if (is_exception == FALSE) \ { \ status = CR_PARSING_ERROR ; \ } \ goto error ; \ } If not, goto the 'error' label.
Definition at line 155 of file cr-parser.c. Referenced by cr_parser_parse_expr(), cr_parser_parse_import(), cr_parser_parse_media(), cr_parser_parse_page(), cr_parser_parse_ruleset(), cr_parser_parse_statement_core(), cr_parser_parse_term(), and cr_tknzr_get_next_token(). |
|
Value: if ((a_status) != CR_OK) \ { \ if (a_is_exception == FALSE) a_status = CR_PARSING_ERROR ; \ cr_parser_push_error (a_this, a_err_msg, a_err_status) ; \ goto error ; \ } : the status to check. Is of type enum CRStatus. : in case of error, if is TRUE, the status is set to CR_PARSING_ERROR before goto error. If is false, the real low level status is kept and will be returned by the upper level function that called this macro. Usally,this must be set to FALSE. same as CHECK_PARSING_STATUS() but this one pushes an error on the parser error stack when an error arises. Definition at line 180 of file cr-parser.c. Referenced by cr_parser_parse_declaration(), and cr_parser_parse_ruleset(). |
|
Tests the condition and if it is false, sets status to "CR_PARSING_ERROR" and goto the 'error' label.
Definition at line 309 of file cr-parser.c. Referenced by cr_parser_parse_charset(), cr_parser_parse_font_face(), cr_parser_parse_media(), cr_parser_parse_page(), cr_parser_parse_prio(), cr_parser_parse_statement_core(), and cr_tknzr_get_next_token(). |
|
Value: if (! (a_condition)) \ { \ status = CR_PARSING_ERROR; \ cr_parser_push_error (a_this, a_err_msg, a_err_status) ; \ goto error ; \ } Definition at line 313 of file cr-parser.c. Referenced by cr_parser_parse_ruleset(). |
|
Value: status = cr_tknzr_get_next_token (PRIVATE (a_this)->tknzr, \ a_token_ptr) ; \ ENSURE_PARSING_COND (status == CR_OK) ; Definition at line 321 of file cr-parser.c. |
|
IS_NUM: : the char to test. return TRUE if the character is a number ([0-9]), FALSE otherwise Definition at line 144 of file cr-parser.c. |
|
Value: status = cr_tknzr_peek_byte (PRIVATE (a_this)->tknzr, \ a_offset, \ a_byte_ptr) ; \ CHECK_PARSING_STATUS (status, TRUE) ; If it fails, goto the "error:" label.
Definition at line 255 of file cr-parser.c. |
|
Value: {\ enum CRStatus status ; \ status = cr_tknzr_peek_char (PRIVATE (a_this)->tknzr, a_to_char) ; \ CHECK_PARSING_STATUS (status, TRUE) \ } invokes CHECK_PARSING_STATUS on the status returned by cr_tknzr_peek_char().
Definition at line 198 of file cr-parser.c. Referenced by cr_parser_parse_font_face(), cr_parser_parse_import(), cr_parser_parse_media(), cr_parser_parse_ruleset(), and cr_tknzr_get_next_token(). |
|
Definition at line 135 of file cr-parser.c. |
|
Value: status = cr_tknzr_read_byte (PRIVATE (a_this)->tknzr, a_byte_ptr) ; \ CHECK_PARSING_STATUS (status, TRUE) ; If it fails, goto the "error" label.
Definition at line 271 of file cr-parser.c. Referenced by cr_parser_parse_expr(). |
|
Value: status = cr_tknzr_read_char (PRIVATE (a_this)->tknzr, a_to_char) ; \ CHECK_PARSING_STATUS (status, TRUE) In case of error, jumps to the "error:" label located in the function where this macro is called.
Definition at line 213 of file cr-parser.c. Referenced by cr_parser_parse_declaration(), cr_parser_parse_font_face(), cr_parser_parse_media(), cr_parser_parse_ruleset(), and cr_tknzr_get_next_token(). |
|
Value: status = cr_tknzr_get_cur_byte_addr \ (PRIVATE (a_this)->tknzr, a_addr) ; \ CHECK_PARSING_STATUS (status, TRUE)
Definition at line 239 of file cr-parser.c. |
|
Value: status = cr_tknzr_get_cur_pos (PRIVATE \ (a_this)->tknzr, a_pos) ; \ g_return_val_if_fail (status == CR_OK, status) In case of failure, this macro returns from the calling function and returns a status code of type enum CRStatus.
Definition at line 227 of file cr-parser.c. Referenced by cr_parser_parse_charset(), cr_parser_parse_declaration(), cr_parser_parse_expr(), cr_parser_parse_font_face(), cr_parser_parse_import(), cr_parser_parse_media(), cr_parser_parse_page(), cr_parser_parse_prio(), cr_parser_parse_ruleset(), cr_parser_parse_statement_core(), cr_parser_parse_term(), and cr_tknzr_get_next_token(). |
|
Value: status = cr_tknzr_seek_index (PRIVATE (a_this)->tknzr, \ CR_SEEK_CUR, a_nb_bytes) ; \ CHECK_PARSING_STATUS (status, TRUE) ; Don't update line and column number. In case of error, jumps to the "error:" label of the surrounding function.
Definition at line 283 of file cr-parser.c. |
|
Value: { \ glong nb_chars = a_nb_chars ; \ status = cr_tknzr_consume_chars \ (PRIVATE (a_parser)->tknzr,0, &nb_chars) ; \ CHECK_PARSING_STATUS (status, TRUE) ; \ } Updates line and column numbers.
Definition at line 295 of file cr-parser.c. Referenced by cr_parser_parse_import(), and cr_tknzr_get_next_token(). |
|
: The definition of the CRParser class. Definition at line 74 of file cr-parser.c. |
|
Definition at line 88 of file cr-parser.c. |
|
cr_parser_destroy: : the current instance of CRParser to destroy. Destroys the current instance of CRParser. Definition at line 4495 of file cr-parser.c. References cr_doc_handler_unref(), cr_tknzr_unref(), and PRIVATE. Referenced by cr_declaration_parse_from_buf(), cr_om_parser_destroy(), cr_rgb_parse_from_buf(), cr_statement_at_charset_rule_parse_from_buf(), cr_statement_at_import_rule_parse_from_buf(), cr_statement_at_media_rule_parse_from_buf(), cr_statement_at_page_rule_parse_from_buf(), cr_statement_does_buf_parses_against_core(), cr_statement_font_face_rule_parse_from_buf(), cr_statement_ruleset_parse_from_buf(), and cr_term_parse_expression_from_buf(). |
|
cr_parser_get_parsing_location: : the current instance of CRParser : the parsing location to get. Gets the current parsing location. Returns CR_OK upon succesful completion, an error code otherwise. Definition at line 4441 of file cr-parser.c. References CR_BAD_PARAM_ERROR, cr_tknzr_get_parsing_location(), and PRIVATE. Referenced by cr_parser_parse_import(). |
|
cr_parser_get_sac_handler: : the "this pointer" of the current instance of CRParser. : out parameter. The returned handler. Gets the SAC document handler. Returns CR_OK upon successfull completion, an error code otherwise. Definition at line 2889 of file cr-parser.c. References CR_BAD_PARAM_ERROR, CR_OK, and PRIVATE. Referenced by cr_om_parser_parse_buf(), and cr_om_parser_parse_file(). |
|
cr_parser_get_tknzr: : the current instance of CRParser : out parameter. The returned tokenizer Getter of the parser's underlying tokenizer Returns CR_OK upon succesful completion, an error code otherwise Definition at line 4421 of file cr-parser.c. References CR_BAD_PARAM_ERROR, CR_OK, and PRIVATE. Referenced by cr_declaration_parse_list_from_buf(). |
|
cr_parser_get_use_core_grammar: : the current instance of CRParser. : wether to use the core grammar or not. Returns CR_OK upon succesful completion, an error code otherwise. Definition at line 2955 of file cr-parser.c. References CR_BAD_PARAM_ERROR, CR_OK, and PRIVATE. |
|
cr_parser_new: : the tokenizer to use for the parsing. Creates a new parser to parse data coming the input stream given in parameter. Returns the newly created instance of CRParser, or NULL if an error occured. Definition at line 2751 of file cr-parser.c. References CR_OK, cr_parser_set_tknzr(), and PRIVATE. Referenced by cr_om_parser_parse_buf(), cr_parser_new_from_file(), and cr_parser_new_from_input(). |
|
|
cr_parser_new_from_file: : the uri of the file to parse. : the file encoding to use. Returns the newly built parser. Definition at line 2837 of file cr-parser.c. References cr_parser_new(), cr_tknzr_new_from_uri(), and cr_utils_trace_info. Referenced by cr_om_parser_parse_file(). |
|
cr_parser_new_from_input: : the parser input stream to use. Returns a newly built parser input. Definition at line 2813 of file cr-parser.c. References cr_parser_new(), and cr_tknzr_new(). Referenced by cr_om_parser_new(), and cr_parser_new_from_buf(). |
|
cr_parser_parse: : the current instance of CRParser. Parses the data that comes from the input previously associated to the current instance of CRParser. Returns CR_OK upon succesful completion, an error code otherwise. Definition at line 4370 of file cr-parser.c. References CR_BAD_PARAM_ERROR, CR_ERROR, and PRIVATE. Referenced by cr_parser_parse_buf(), and cr_parser_parse_file(). |
|
cr_parser_parse_buf: : the current instance of CRparser : the input buffer : the length of the input buffer : the encoding of the buffer Parses a stylesheet from a buffer Returns CR_OK upon successful completion, an error code otherwise. Definition at line 4464 of file cr-parser.c. References CR_BAD_PARAM_ERROR, CR_ERROR, CR_OK, cr_parser_parse(), cr_parser_set_tknzr(), cr_tknzr_new_from_buf(), and PRIVATE. Referenced by cr_om_parser_parse_buf(). |
|
cr_parser_parse_charset: : the "this pointer" of the current instance of CRParser. : out parameter. The actual parsed value of the charset declararation. Note that for safety check reasons, *a_value must be set to NULL. : the parsing location of the charset rule Parses a charset declaration as defined implictly by the css2 spec in appendix D.1: charset ::= CHARSET_SYM S* STRING S* ';' Returns CR_OK upon successfull completion, an error code otherwise. Definition at line 4122 of file cr-parser.c. References CHARSET_PARSED_STATE, CHARSET_SYM_TK, CR_BAD_PARAM_ERROR, CR_OK, cr_parser_try_to_skip_spaces_and_comments(), cr_parsing_location_copy(), cr_string_destroy(), cr_tknzr_get_next_token(), cr_tknzr_set_cur_pos(), cr_token_destroy(), ENSURE_PARSING_COND, _CRToken::location, PRIVATE, RECORD_INITIAL_POS, SEMICOLON_TK, _CRToken::str, STRING_TK, TRY_PARSE_CHARSET_STATE, _CRToken::type, and _CRToken::u. Referenced by cr_statement_at_charset_rule_parse_from_buf(). |
|
cr_parser_parse_declaration: : the "this pointer" of the current instance of CRParser. : the successfully parsed property. The caller *must* free the returned pointer. : the expression that represents the attribute value. The caller *must* free the returned pointer. TODO: return the parsed priority, so that upper layers can take benefit from it. Parses a "declaration" as defined by the css2 spec in appendix D.1: declaration ::= [property ':' S* expr prio?]? Returns CR_OK upon successfull completion, an error code otherwise. Definition at line 3169 of file cr-parser.c. References CHECK_PARSING_STATUS_ERR, CR_BAD_PARAM_ERROR, CR_END_OF_INPUT_ERROR, CR_ERROR, CR_OK, cr_parser_parse_expr(), cr_parser_parse_prio(), cr_parser_try_to_skip_spaces_and_comments(), CR_PARSING_ERROR, cr_string_destroy(), CR_SYNTAX_ERROR, cr_term_append_term(), cr_term_destroy(), cr_tknzr_set_cur_pos(), PRIVATE, READ_NEXT_CHAR, and RECORD_INITIAL_POS. Referenced by cr_declaration_parse_from_buf(), cr_declaration_parse_list_from_buf(), cr_parser_parse_font_face(), cr_parser_parse_page(), and cr_parser_parse_ruleset(). |
|
cr_parser_parse_expr: : the current instance of CRParser. : out parameter. the parsed expression. Parses an expression as defined by the css2 spec in appendix D.1: expr: term [ operator term ]* Returns CR_OK upon successful completion, an error code otherwise. Definition at line 3011 of file cr-parser.c. References CHECK_PARSING_STATUS, COMMA, CR_BAD_PARAM_ERROR, CR_END_OF_INPUT_ERROR, CR_ERROR, CR_OK, cr_parser_parse_term(), cr_parser_try_to_skip_spaces_and_comments(), cr_term_append_term(), cr_tknzr_peek_byte(), DIVIDE, PRIVATE, READ_NEXT_BYTE, and RECORD_INITIAL_POS. Referenced by cr_parser_parse_declaration(), and cr_term_parse_expression_from_buf(). |
|
cr_parser_parse_file: : a pointer to the current instance of CRParser. : the uri to the file to load. For the time being, : the encoding of the file to parse. only local files are supported. Parses a the given in parameter. Returns CR_OK upon successfull completion, an error code otherwise. Definition at line 2977 of file cr-parser.c. References CR_BAD_PARAM_ERROR, CR_ERROR, CR_OK, cr_parser_parse(), cr_parser_set_tknzr(), cr_tknzr_new_from_uri(), and PRIVATE. Referenced by cr_om_parser_parse_file(). |
|
cr_parser_parse_font_face: : the current instance of CRParser. Parses the "@font-face" rule specified in the css1 spec in appendix D.1: font_face ::= FONT_FACE_SYM S* '{' S* declaration [ ';' S* declaration ]* '}' S* This function will call SAC handlers whenever it is necessary. Returns CR_OK upon successfull completion, an error code otherwise. Definition at line 4213 of file cr-parser.c. References CBO_TK, CR_BAD_PARAM_ERROR, CR_ERROR, CR_OK, cr_parser_parse_declaration(), cr_parser_try_to_skip_spaces_and_comments(), cr_parsing_location_copy(), cr_string_destroy(), cr_term_ref(), cr_term_unref(), cr_tknzr_get_next_token(), cr_token_destroy(), ENSURE_PARSING_COND, FONT_FACE_SYM_TK, _CRToken::location, PEEK_NEXT_CHAR, PRIVATE, READ_NEXT_CHAR, RECORD_INITIAL_POS, TRY_PARSE_FONT_FACE_STATE, and _CRToken::type. Referenced by cr_statement_font_face_rule_parse_from_buf(). |
|
cr_parser_parse_import: : the "this pointer" of the current instance of CRParser. : out parameter. A linked list of CRString Each CRString is a string that contains a 'medium' declaration part of the successfully parsed 'import' declaration. : out parameter. A string that contains the 'import string". The import string can be either an uri (if it starts with the substring "uri(") or a any other css2 string. Note that *a_import_string must be initially set to NULL or else, this function will return CR_BAD_PARAM_ERROR. : the location (line, column) where the import has been parsed Parses an 'import' declaration as defined in the css2 spec in appendix D.1: import ::= [STRING|URI] S* [ medium [ ',' S* medium]* ]? ';' S* Returns CR_OK upon sucessfull completion, an error code otherwise. Definition at line 3540 of file cr-parser.c. References BYTE, CHECK_PARSING_STATUS, CR_BAD_PARAM_ERROR, CR_END_OF_INPUT_ERROR, CR_OK, cr_parser_get_parsing_location(), cr_parser_try_to_skip_spaces_and_comments(), CR_PARSING_ERROR, cr_tknzr_peek_char(), PEEK_NEXT_CHAR, PRIVATE, RECORD_INITIAL_POS, SKIP_CHARS, and TRY_PARSE_IMPORT_STATE. Referenced by cr_statement_at_import_rule_parse_from_buf(). |
|
cr_parser_parse_media: : the "this pointer" of the current instance of CRParser. Parses a 'media' declaration as specified in the css2 spec at appendix D.1: media ::= S* medium [ ',' S* medium ]* '{' S* ruleset* '}' S* Note that this function calls the required sac handlers during the parsing to notify media productions. See CRDocHandler to know the callback called during parsing. Returns CR_OK upon successfull completion, an error code otherwise. Definition at line 3701 of file cr-parser.c. References CHECK_PARSING_STATUS, CR_BAD_PARAM_ERROR, CR_OK, cr_parser_try_to_skip_spaces_and_comments(), cr_parsing_location_copy(), cr_tknzr_get_next_token(), cr_token_destroy(), ENSURE_PARSING_COND, IDENT_TK, _CRToken::location, MEDIA_SYM_TK, PEEK_NEXT_CHAR, PRIVATE, READ_NEXT_CHAR, RECORD_INITIAL_POS, _CRToken::str, _CRToken::type, and _CRToken::u. Referenced by cr_statement_at_media_rule_parse_from_buf(). |
|
|
cr_parser_parse_prio: : the current instance of CRParser. : a string representing the priority. Today, only "!important" is returned as only this priority is defined by css2. Parses a declaration priority as defined by the css2 grammar in appendix C: prio: IMPORTANT_SYM S* Returns CR_OK upon successful completion, an error code otherwise. Definition at line 3118 of file cr-parser.c. References CR_BAD_PARAM_ERROR, CR_END_OF_INPUT_ERROR, CR_ERROR, CR_OK, cr_parser_try_to_skip_spaces_and_comments(), cr_string_new_from_string(), cr_tknzr_get_next_token(), cr_tknzr_set_cur_pos(), cr_token_destroy(), ENSURE_PARSING_COND, IMPORTANT_SYM_TK, PRIVATE, RECORD_INITIAL_POS, and _CRToken::type. Referenced by cr_parser_parse_declaration(). |
|
cr_parser_parse_ruleset: : the "this pointer" of the current instance of CRParser. Parses a "ruleset" as defined in the css2 spec at appendix D.1. ruleset ::= selector [ ',' S* selector ]* '{' S* declaration? [ ';' S* declaration? ]* '}' S*; This methods calls the the SAC handler on the relevant SAC handler callbacks whenever it encounters some specific constructions. See the documentation of CRDocHandler (the SAC handler) to know when which SAC handler is called. Returns CR_OK upon successfull completion, an error code otherwise. Definition at line 3327 of file cr-parser.c. References CHECK_PARSING_STATUS, CHECK_PARSING_STATUS_ERR, CR_BAD_PARAM_ERROR, CR_OK, cr_parser_parse_declaration(), cr_parser_try_to_skip_spaces_and_comments(), cr_selector_ref(), cr_string_destroy(), CR_SYNTAX_ERROR, cr_term_ref(), cr_term_unref(), cr_tknzr_peek_char(), ENSURE_PARSING_COND_ERR, PEEK_NEXT_CHAR, PRIVATE, READ_NEXT_CHAR, RECORD_INITIAL_POS, and TRY_PARSE_RULESET_STATE. Referenced by cr_statement_ruleset_parse_from_buf(). |
|
cr_parser_parse_statement_core: : the current instance of CRParser. Parses a statement as defined by the css core grammar in chapter 4.1 of the css2 spec. statement : ruleset | at-rule; Returns CR_OK upon successfull completion, an error code otherwise. Definition at line 3263 of file cr-parser.c. References ATKEYWORD_TK, CHARSET_SYM_TK, CHECK_PARSING_STATUS, CR_BAD_PARAM_ERROR, CR_ERROR, CR_OK, cr_tknzr_get_next_token(), cr_tknzr_set_cur_pos(), cr_tknzr_unget_token(), cr_token_destroy(), ENSURE_PARSING_COND, FONT_FACE_SYM_TK, IMPORT_SYM_TK, MEDIA_SYM_TK, PAGE_SYM_TK, PRIVATE, RECORD_INITIAL_POS, and _CRToken::type. Referenced by cr_statement_does_buf_parses_against_core(). |
|
|
cr_parser_set_default_sac_handler: : a pointer to the current instance of CRParser. Sets the SAC handler associated to the current instance of CRParser to the default SAC handler. Returns CR_OK upon successfull completion, an error code otherwise. Definition at line 2908 of file cr-parser.c. References CR_BAD_PARAM_ERROR, cr_doc_handler_destroy(), cr_doc_handler_new(), cr_doc_handler_set_default_sac_handler(), CR_ERROR, CR_OK, cr_parser_set_sac_handler(), and PRIVATE. |
|
cr_parser_set_sac_handler: : the "this pointer" of the current instance of CRParser. : the handler to set. Sets a SAC document handler to the parser. Returns CR_OK upon successfull completion, an error code otherwise. Definition at line 2863 of file cr-parser.c. References CR_BAD_PARAM_ERROR, cr_doc_handler_ref(), cr_doc_handler_unref(), CR_OK, and PRIVATE. Referenced by cr_parser_set_default_sac_handler(), cr_statement_at_media_rule_parse_from_buf(), cr_statement_at_page_rule_parse_from_buf(), cr_statement_font_face_rule_parse_from_buf(), and cr_statement_ruleset_parse_from_buf(). |
|
cr_parser_set_tknzr: : the current instance of CRParser; : the new tokenizer. Returns CR_OK upon successful completion, an error code otherwise. Definition at line 4394 of file cr-parser.c. References CR_BAD_PARAM_ERROR, CR_OK, cr_tknzr_ref(), cr_tknzr_unref(), and PRIVATE. Referenced by cr_parser_new(), cr_parser_parse_buf(), and cr_parser_parse_file(). |
|
cr_parser_set_use_core_grammar: : the current instance of CRParser. : where to parse against the css core grammar. Returns CR_OK upon succesful completion, an error code otherwise. Definition at line 2937 of file cr-parser.c. References CR_BAD_PARAM_ERROR, CR_OK, and PRIVATE. Referenced by cr_statement_does_buf_parses_against_core(). |
|