|
ELinks 0.18.0
|
#include <stdio.h>#include <string.h>#include "elinks.h"#include "dom/css/scanner.h"#include "dom/scanner.h"#include "dom/string.h"#include "util/error.h"
Macros | |
| #define | CSS_STRING_MAP(str, type, family) { STATIC_DOM_STRING(str), CSS_TOKEN_##type, CSS_TOKEN_##family } |
| #define | check_css_table(c, bit) (dom_css_scanner_info.scan_table[(unsigned char)(c)] & (bit)) |
| #define | scan_css(scanner, s, bit) while ((s) < (scanner)->end && check_css_table(*(s), bit)) (s)++; |
| #define | scan_back_css(scanner, s, bit) while ((s) >= (scanner)->string && check_css_table(*(s), bit)) (s)--; |
| #define | is_css_ident_start(c) check_css_table(c, CSS_CHAR_IDENT_START) |
| #define | is_css_ident(c) check_css_table(c, CSS_CHAR_IDENT) |
| #define | is_css_digit(c) check_css_table(c, CSS_CHAR_DIGIT) |
| #define | is_css_hexdigit(c) check_css_table(c, CSS_CHAR_HEX_DIGIT) |
| #define | is_css_char_token(c) check_css_table(c, CSS_CHAR_TOKEN) |
| #define | is_css_token_start(c) check_css_table(c, CSS_CHAR_TOKEN_START) |
| #define | skip_css(scanner, s, skipto) |
Enumerations | |
| enum | css_char_group { CSS_CHAR_ALPHA = (1 << 0) , CSS_CHAR_DIGIT = (1 << 1) , CSS_CHAR_HEX_DIGIT = (1 << 2) , CSS_CHAR_IDENT = (1 << 3) , CSS_CHAR_IDENT_START = (1 << 4) , CSS_CHAR_NEWLINE = (1 << 5) , CSS_CHAR_NON_ASCII = (1 << 6) , CSS_CHAR_SGML_MARKUP = (1 << 7) , CSS_CHAR_TOKEN = (1 << 8) , CSS_CHAR_TOKEN_START = (1 << 9) , CSS_CHAR_WHITESPACE = (1 << 10) } |
Functions | |
| static struct dom_scanner_token * | scan_css_tokens (struct dom_scanner *scanner) |
| static void | scan_css_token (struct dom_scanner *scanner, struct dom_scanner_token *token) |
Variables | |
| static const struct dom_scan_table_info | css_scan_table_info [] |
| static const struct dom_scanner_string_mapping | css_string_mappings [] |
| struct dom_scanner_info | dom_css_scanner_info |
| #define check_css_table | ( | c, | |
| bit | |||
| ) | (dom_css_scanner_info.scan_table[(unsigned char)(c)] & (bit)) |
| #define CSS_STRING_MAP | ( | str, | |
| type, | |||
| family | |||
| ) | { STATIC_DOM_STRING(str), CSS_TOKEN_##type, CSS_TOKEN_##family } |
| #define is_css_char_token | ( | c | ) | check_css_table(c, CSS_CHAR_TOKEN) |
| #define is_css_digit | ( | c | ) | check_css_table(c, CSS_CHAR_DIGIT) |
| #define is_css_hexdigit | ( | c | ) | check_css_table(c, CSS_CHAR_HEX_DIGIT) |
| #define is_css_ident | ( | c | ) | check_css_table(c, CSS_CHAR_IDENT) |
| #define is_css_ident_start | ( | c | ) | check_css_table(c, CSS_CHAR_IDENT_START) |
| #define is_css_token_start | ( | c | ) | check_css_table(c, CSS_CHAR_TOKEN_START) |
| #define scan_back_css | ( | scanner, | |
| s, | |||
| bit | |||
| ) | while ((s) >= (scanner)->string && check_css_table(*(s), bit)) (s)--; |
| #define scan_css | ( | scanner, | |
| s, | |||
| bit | |||
| ) | while ((s) < (scanner)->end && check_css_table(*(s), bit)) (s)++; |
| enum css_char_group |
|
inlinestatic |
|
static |
|
static |
|
static |
| struct dom_scanner_info dom_css_scanner_info |