#include "cssvalues.h"
struct css_value {
const char *name;
int id;
};
#ifdef __GNUC__
__inline
#else
#ifdef __cplusplus
inline
#endif
#endif
static unsigned int
hash_val (register const char *str, register unsigned int len)
{
static const unsigned short asso_values[] =
{
1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641,
1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641,
1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641,
1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641,
1641, 1641, 1641, 1641, 1641, 30, 1641, 1641, 0, 10,
15, 20, 25, 30, 35, 40, 5, 0, 1641, 1641,
1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641,
1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641,
1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641,
1641, 1641, 1641, 1641, 1641, 1641, 1641, 0, 87, 30,
196, 195, 102, 9, 85, 65, 10, 203, 0, 19,
25, 180, 104, 5, 4, 5, 0, 185, 184, 85,
35, 5, 120, 1641, 1641, 1641, 1641, 1641, 1641, 1641,
1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641,
1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641,
1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641,
1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641,
1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641,
1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641,
1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641,
1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641,
1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641,
1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641,
1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641,
1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641,
1641, 1641, 1641, 1641, 1641, 1641
};
register int hval = 0;
switch (len)
{
default:
case 22:
hval += asso_values[(unsigned char)str[21]];
case 21:
hval += asso_values[(unsigned char)str[20]];
case 20:
hval += asso_values[(unsigned char)str[19]];
case 19:
hval += asso_values[(unsigned char)str[18]];
case 18:
hval += asso_values[(unsigned char)str[17]];
case 17:
hval += asso_values[(unsigned char)str[16]];
case 16:
hval += asso_values[(unsigned char)str[15]];
case 15:
hval += asso_values[(unsigned char)str[14]];
case 14:
hval += asso_values[(unsigned char)str[13]];
case 13:
hval += asso_values[(unsigned char)str[12]];
case 12:
hval += asso_values[(unsigned char)str[11]];
case 11:
hval += asso_values[(unsigned char)str[10]];
case 10:
hval += asso_values[(unsigned char)str[9]];
case 9:
hval += asso_values[(unsigned char)str[8]];
case 8:
hval += asso_values[(unsigned char)str[7]];
case 7:
hval += asso_values[(unsigned char)str[6]];
case 6:
hval += asso_values[(unsigned char)str[5]];
case 5:
hval += asso_values[(unsigned char)str[4]];
case 4:
hval += asso_values[(unsigned char)str[3]];
case 3:
hval += asso_values[(unsigned char)str[2]];
case 2:
hval += asso_values[(unsigned char)str[1]];
case 1:
hval += asso_values[(unsigned char)str[0]];
break;
}
return hval;
}
#ifdef __GNUC__
__inline
#endif
const struct css_value *
findValue (register const char *str, register unsigned int len)
{
enum
{
TOTAL_KEYWORDS = 252,
MIN_WORD_LENGTH = 2,
MAX_WORD_LENGTH = 22,
MIN_HASH_VALUE = 0,
MAX_HASH_VALUE = 1640
};
static const struct css_value wordlist_value[] =
{
{"900", CSS_VAL_900},
{"ltr", CSS_VAL_LTR},
{"rtl", CSS_VAL_RTL},
{"800", CSS_VAL_800},
{"start", CSS_VAL_START},
{"100", CSS_VAL_100},
{"200", CSS_VAL_200},
{"gray", CSS_VAL_GRAY},
{"300", CSS_VAL_300},
{"small", CSS_VAL_SMALL},
{"400", CSS_VAL_400},
{"500", CSS_VAL_500},
{"600", CSS_VAL_600},
{"700", CSS_VAL_700},
{"x-small", CSS_VAL_X_SMALL},
{"always", CSS_VAL_ALWAYS},
{"static", CSS_VAL_STATIC},
{"fast", CSS_VAL_FAST},
{"mix", CSS_VAL_MIX},
{"xx-small", CSS_VAL_XX_SMALL},
{"fantasy", CSS_VAL_FANTASY},
{"wait", CSS_VAL_WAIT},
{"italic", CSS_VAL_ITALIC},
{"right", CSS_VAL_RIGHT},
{"thin", CSS_VAL_THIN},
{"hiragana", CSS_VAL_HIRAGANA},
{"aqua", CSS_VAL_AQUA},
{"small-caps", CSS_VAL_SMALL_CAPS},
{"teal", CSS_VAL_TEAL},
{"large", CSS_VAL_LARGE},
{"larger", CSS_VAL_LARGER},
{"grey", CSS_VAL_GREY},
{"navy", CSS_VAL_NAVY},
{"scroll", CSS_VAL_SCROLL},
{"initial", CSS_VAL_INITIAL},
{"smaller", CSS_VAL_SMALLER},
{"cross", CSS_VAL_CROSS},
{"normal", CSS_VAL_NORMAL},
{"text", CSS_VAL_TEXT},
{"graytext", CSS_VAL_GRAYTEXT},
{"slow", CSS_VAL_SLOW},
{"x-large", CSS_VAL_X_LARGE},
{"sub", CSS_VAL_SUB},
{"lime", CSS_VAL_LIME},
{"table", CSS_VAL_TABLE},
{"top", CSS_VAL_TOP},
{"up", CSS_VAL_UP},
{"inset", CSS_VAL_INSET},
{"disc", CSS_VAL_DISC},
{"left", CSS_VAL_LEFT},
{"single", CSS_VAL_SINGLE},
{"icon", CSS_VAL_ICON},
{"pre", CSS_VAL_PRE},
{"hand", CSS_VAL_HAND},
{"xx-large", CSS_VAL_XX_LARGE},
{"scrollbar", CSS_VAL_SCROLLBAR},
{"status-bar", CSS_VAL_STATUS_BAR},
{"crop", CSS_VAL_CROP},
{"stretch", CSS_VAL_STRETCH},
{"black", CSS_VAL_BLACK},
{"circle", CSS_VAL_CIRCLE},
{"armenian", CSS_VAL_ARMENIAN},
{"run-in", CSS_VAL_RUN_IN},
{"both", CSS_VAL_BOTH},
{"show", CSS_VAL_SHOW},
{"portrait", CSS_VAL_PORTRAIT},
{"lighter", CSS_VAL_LIGHTER},
{"transparent", CSS_VAL_TRANSPARENT},
{"compact", CSS_VAL_COMPACT},
{"auto", CSS_VAL_AUTO},
{"serif", CSS_VAL_SERIF},
{"justify", CSS_VAL_JUSTIFY},
{"inline", CSS_VAL_INLINE},
{"crosshair", CSS_VAL_CROSSHAIR},
{"list-item", CSS_VAL_LIST_ITEM},
{"blink", CSS_VAL_BLINK},
{"thick", CSS_VAL_THICK},
{"help", CSS_VAL_HELP},
{"square", CSS_VAL_SQUARE},
{"red", CSS_VAL_RED},
{"nowrap", CSS_VAL_NOWRAP},
{"highlight", CSS_VAL_HIGHLIGHT},
{"caption", CSS_VAL_CAPTION},
{"maroon", CSS_VAL_MAROON},
{"orange", CSS_VAL_ORANGE},
{"end", CSS_VAL_END},
{"alternate", CSS_VAL_ALTERNATE},
{"menu", CSS_VAL_MENU},
{"none", CSS_VAL_NONE},
{"green", CSS_VAL_GREEN},
{"white", CSS_VAL_WHITE},
{"katakana", CSS_VAL_KATAKANA},
{"sans-serif", CSS_VAL_SANS_SERIF},
{"inherit", CSS_VAL_INHERIT},
{"higher", CSS_VAL_HIGHER},
{"solid", CSS_VAL_SOLID},
{"center", CSS_VAL_CENTER},
{"silver", CSS_VAL_SILVER},
{"small-caption", CSS_VAL_SMALL_CAPTION},
{"slide", CSS_VAL_SLIDE},
{"bold", CSS_VAL_BOLD},
{"lower", CSS_VAL_LOWER},
{"yellow", CSS_VAL_YELLOW},
{"bottom", CSS_VAL_BOTTOM},
{"blue", CSS_VAL_BLUE},
{"ridge", CSS_VAL_RIDGE},
{"fuchsia", CSS_VAL_FUCHSIA},
{"invert", CSS_VAL_INVERT},
{"ahead", CSS_VAL_AHEAD},
{"vertical", CSS_VAL_VERTICAL},
{"down", CSS_VAL_DOWN},
{"georgian", CSS_VAL_GEORGIAN},
{"super", CSS_VAL_SUPER},
{"narrower", CSS_VAL_NARROWER},
{"repeat", CSS_VAL_REPEAT},
{"block", CSS_VAL_BLOCK},
{"unfurl", CSS_VAL_UNFURL},
{"separate", CSS_VAL_SEPARATE},
{"decimal", CSS_VAL_DECIMAL},
{"inline-axis", CSS_VAL_INLINE_AXIS},
{"collapse", CSS_VAL_COLLAPSE},
{"-khtml-right", CSS_VAL__KHTML_RIGHT},
{"repeat-y", CSS_VAL_REPEAT_Y},
{"table-cell", CSS_VAL_TABLE_CELL},
{"hide", CSS_VAL_HIDE},
{"infinite", CSS_VAL_INFINITE},
{"text-top", CSS_VAL_TEXT_TOP},
{"wider", CSS_VAL_WIDER},
{"below", CSS_VAL_BELOW},
{"inside", CSS_VAL_INSIDE},
{"hiragana-iroha", CSS_VAL_HIRAGANA_IROHA},
{"landscape", CSS_VAL_LANDSCAPE},
{"loud", CSS_VAL_LOUD},
{"repeat-x", CSS_VAL_REPEAT_X},
{"outset", CSS_VAL_OUTSET},
{"multiple", CSS_VAL_MULTIPLE},
{"baseline", CSS_VAL_BASELINE},
{"pointer", CSS_VAL_POINTER},
{"level", CSS_VAL_LEVEL},
{"forwards", CSS_VAL_FORWARDS},
{"move", CSS_VAL_MOVE},
{"capitalize", CSS_VAL_CAPITALIZE},
{"table-row", CSS_VAL_TABLE_ROW},
{"lower-latin", CSS_VAL_LOWER_LATIN},
{"purple", CSS_VAL_PURPLE},
{"fixed", CSS_VAL_FIXED},
{"-khtml-text", CSS_VAL__KHTML_TEXT},
{"visible", CSS_VAL_VISIBLE},
{"infotext", CSS_VAL_INFOTEXT},
{"marquee", CSS_VAL_MARQUEE},
{"backwards", CSS_VAL_BACKWARDS},
{"s-resize", CSS_VAL_S_RESIZE},
{"olive", CSS_VAL_OLIVE},
{"avoid", CSS_VAL_AVOID},
{"highlighttext", CSS_VAL_HIGHLIGHTTEXT},
{"captiontext", CSS_VAL_CAPTIONTEXT},
{"block-axis", CSS_VAL_BLOCK_AXIS},
{"window", CSS_VAL_WINDOW},
{"n-resize", CSS_VAL_N_RESIZE},
{"relative", CSS_VAL_RELATIVE},
{"above", CSS_VAL_ABOVE},
{"hebrew", CSS_VAL_HEBREW},
{"absolute", CSS_VAL_ABSOLUTE},
{"menutext", CSS_VAL_MENUTEXT},
{"horizontal", CSS_VAL_HORIZONTAL},
{"bolder", CSS_VAL_BOLDER},
{"-khtml-left", CSS_VAL__KHTML_LEFT},
{"cursive", CSS_VAL_CURSIVE},
{"-khtml-box", CSS_VAL__KHTML_BOX},
{"middle", CSS_VAL_MIDDLE},
{"dashed", CSS_VAL_DASHED},
{"default", CSS_VAL_DEFAULT},
{"medium", CSS_VAL_MEDIUM},
{"lower-alpha", CSS_VAL_LOWER_ALPHA},
{"inline-table", CSS_VAL_INLINE_TABLE},
{"embed", CSS_VAL_EMBED},
{"lowercase", CSS_VAL_LOWERCASE},
{"w-resize", CSS_VAL_W_RESIZE},
{"sw-resize", CSS_VAL_SW_RESIZE},
{"buttontext", CSS_VAL_BUTTONTEXT},
{"-khtml-xxx-large", CSS_VAL__KHTML_XXX_LARGE},
{"upper-latin", CSS_VAL_UPPER_LATIN},
{"table-caption", CSS_VAL_TABLE_CAPTION},
{"oblique", CSS_VAL_OBLIQUE},
{"lower-roman", CSS_VAL_LOWER_ROMAN},
{"nw-resize", CSS_VAL_NW_RESIZE},
{"text-bottom", CSS_VAL_TEXT_BOTTOM},
{"-khtml-auto", CSS_VAL__KHTML_AUTO},
{"no-repeat", CSS_VAL_NO_REPEAT},
{"monospace", CSS_VAL_MONOSPACE},
{"table-column", CSS_VAL_TABLE_COLUMN},
{"groove", CSS_VAL_GROOVE},
{"message-box", CSS_VAL_MESSAGE_BOX},
{"hidden", CSS_VAL_HIDDEN},
{"-khtml-nowrap", CSS_VAL__KHTML_NOWRAP},
{"dotted", CSS_VAL_DOTTED},
{"reverse", CSS_VAL_REVERSE},
{"katakana-iroha", CSS_VAL_KATAKANA_IROHA},
{"buttonface", CSS_VAL_BUTTONFACE},
{"e-resize", CSS_VAL_E_RESIZE},
{"upper-alpha", CSS_VAL_UPPER_ALPHA},
{"se-resize", CSS_VAL_SE_RESIZE},
{"-khtml-center", CSS_VAL__KHTML_CENTER},
{"uppercase", CSS_VAL_UPPERCASE},
{"outside", CSS_VAL_OUTSIDE},
{"ne-resize", CSS_VAL_NE_RESIZE},
{"-khtml-body", CSS_VAL__KHTML_BODY},
{"double", CSS_VAL_DOUBLE},
{"overline", CSS_VAL_OVERLINE},
{"upper-roman", CSS_VAL_UPPER_ROMAN},
{"line-through", CSS_VAL_LINE_THROUGH},
{"windowtext", CSS_VAL_WINDOWTEXT},
{"activecaption", CSS_VAL_ACTIVECAPTION},
{"buttonhighlight", CSS_VAL_BUTTONHIGHLIGHT},
{"underline", CSS_VAL_UNDERLINE},
{"inline-block", CSS_VAL_INLINE_BLOCK},
{"background", CSS_VAL_BACKGROUND},
{"expanded", CSS_VAL_EXPANDED},
{"windowframe", CSS_VAL_WINDOWFRAME},
{"inactivecaption", CSS_VAL_INACTIVECAPTION},
{"threedface", CSS_VAL_THREEDFACE},
{"close-quote", CSS_VAL_CLOSE_QUOTE},
{"appworkspace", CSS_VAL_APPWORKSPACE},
{"buttonshadow", CSS_VAL_BUTTONSHADOW},
{"condensed", CSS_VAL_CONDENSED},
{"-khtml-inline-box", CSS_VAL__KHTML_INLINE_BOX},
{"threedhighlight", CSS_VAL_THREEDHIGHLIGHT},
{"table-row-group", CSS_VAL_TABLE_ROW_GROUP},
{"open-quote", CSS_VAL_OPEN_QUOTE},
{"lower-greek", CSS_VAL_LOWER_GREEK},
{"activeborder", CSS_VAL_ACTIVEBORDER},
{"ultra-expanded", CSS_VAL_ULTRA_EXPANDED},
{"inactivecaptiontext", CSS_VAL_INACTIVECAPTIONTEXT},
{"cjk-ideographic", CSS_VAL_CJK_IDEOGRAPHIC},
{"extra-expanded", CSS_VAL_EXTRA_EXPANDED},
{"threedshadow", CSS_VAL_THREEDSHADOW},
{"inactiveborder", CSS_VAL_INACTIVEBORDER},
{"no-close-quote", CSS_VAL_NO_CLOSE_QUOTE},
{"semi-expanded", CSS_VAL_SEMI_EXPANDED},
{"table-column-group", CSS_VAL_TABLE_COLUMN_GROUP},
{"ultra-condensed", CSS_VAL_ULTRA_CONDENSED},
{"infobackground", CSS_VAL_INFOBACKGROUND},
{"extra-condensed", CSS_VAL_EXTRA_CONDENSED},
{"no-open-quote", CSS_VAL_NO_OPEN_QUOTE},
{"semi-condensed", CSS_VAL_SEMI_CONDENSED},
{"threedlightshadow", CSS_VAL_THREEDLIGHTSHADOW},
{"bidi-override", CSS_VAL_BIDI_OVERRIDE},
{"table-footer-group", CSS_VAL_TABLE_FOOTER_GROUP},
{"table-header-group", CSS_VAL_TABLE_HEADER_GROUP},
{"decimal-leading-zero", CSS_VAL_DECIMAL_LEADING_ZERO},
{"threeddarkshadow", CSS_VAL_THREEDDARKSHADOW},
{"-khtml-baseline-middle", CSS_VAL__KHTML_BASELINE_MIDDLE}
};
static const short lookup[] =
{
0, -1, -1, -1, -259, 3, -251, -2,
-1, 4, 5, -1, -1, -1, -1, 6,
-1, -1, 7, -1, 8, -1, -1, -1,
9, 10, -1, -1, -1, -1, 11, -1,
-1, -1, -1, 12, -1, -1, -1, -1,
13, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, 14, -1, -1, -1, -1, -1, 15,
-1, -1, -1, -1, 16, -1, -1, -1,
-1, -1, -1, 17, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 18,
-1, -1, -1, -1, 19, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, 20, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 21, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
22, -1, -1, 23, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 24,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 25, -1, 26, -1,
-1, 27, -1, 28, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
29, -1, -1, -1, 30, 31, 32, -1,
-1, -1, -1, 33, 34, -1, -1, 35,
36, -1, -1, -1, 37, -1, 38, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
39, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 40, -1,
-1, 41, -1, -1, -1, 42, -1, 43,
-1, -1, 44, -1, 45, -1, -1, -1,
-1, 46, 47, -1, -1, -1, -1, -1,
48, 49, -1, 50, 51, -1, -1, 52,
-1, -1, 53, -1, 54, -1, 55, -1,
-1, -1, -1, -1, 56, -1, 57, 58,
59, -1, -1, -1, 60, -1, -1, -1,
-1, -1, -1, -1, -1, 61, 62, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
63, -1, -1, 64, -1, 65, 66, -1,
-1, -1, 67, 68, -1, 69, -1, -1,
-1, -1, -1, 70, 71, -1, -1, 72,
-1, -1, 73, 74, 75, -1, -1, 76,
77, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 78, 79, -1, -1, 80, -1,
-1, -1, -1, 81, 82, -1, -1, -1,
83, -1, -1, -1, -1, 84, -1, -1,
85, -1, -1, 86, -1, -1, -1, -1,
87, 88, -1, -1, 89, -1, 90, 91,
-1, -1, -1, -1, 92, -1, -1, 93,
-1, -1, -1, 94, -1, -1, 95, -1,
-1, 96, -1, -1, -1, 97, -1, -1,
-1, -1, 98, -1, -1, 99, -1, 100,
101, 102, 103, 104, -1, 105, -1, -1,
106, 107, -1, -1, 108, -1, 109, -1,
-1, -1, -1, -1, -1, -1, 110, 111,
-1, -1, -1, -1, -1, 112, -1, -1,
-1, 113, 114, -1, 115, 116, -1, 117,
-1, 118, -1, -1, -1, -1, 119, -1,
-1, -1, 120, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 121, -1, -1, 122, -1, -1,
-1, 123, -1, -1, -1, 124, 125, -1,
126, 127, -1, 128, -1, -1, -1, 129,
130, -1, -1, 131, -1, -1, -1, -1,
-1, 132, -1, 133, -1, 134, -1, -1,
135, -1, -1, -1, 136, 137, 138, -1,
139, -1, 140, 141, -1, 142, -1, -1,
143, -1, -1, -1, -1, -1, -1, -1,
144, 145, -1, -1, -1, 146, -1, -1,
-1, 147, 148, 149, -1, -1, -1, -1,
-1, -1, 150, -1, -1, -1, -1, -1,
-1, -1, -1, 151, -1, -1, -1, -1,
152, 153, -1, -1, -1, -1, -1, -1,
-1, 154, 155, 156, 157, -1, -1, 158,
-1, -1, -1, 159, -1, -1, 160, -1,
-1, -1, -1, 161, 162, -1, 163, -1,
-1, -1, -1, 164, -1, -1, 165, -1,
166, -1, -1, -1, 167, 168, -1, 169,
-1, -1, -1, -1, -1, 170, 171, 172,
-1, -1, -1, 173, -1, -1, -1, 174,
-1, -1, -1, -1, 175, -1, 176, -1,
-1, -1, -1, 177, -1, -1, -1, -1,
178, -1, -1, 179, -1, -1, 180, -1,
181, -1, -1, -1, 182, 183, -1, -1,
-1, -1, 184, -1, 185, -1, 186, -1,
-1, -1, -1, -1, 187, 188, -1, -1,
-1, -1, 189, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 190,
191, -1, -1, -1, -1, -1, -1, -1,
192, -1, 193, -1, -1, 194, -1, 195,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 196, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 197, -1, -1, -1, -1,
-1, -1, -1, -1, 198, -1, -1, -1,
-1, 199, -1, 200, -1, -1, 201, -1,
202, -1, -1, -1, -1, -1, 203, -1,
-1, -1, 204, -1, -1, -1, -1, -1,
-1, -1, 205, 206, -1, -1, -1, -1,
-1, -1, -1, 207, -1, -1, -1, -1,
208, -1, 209, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 210,
-1, -1, 211, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 212, -1,
213, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 214, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, 215, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 216,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 217, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 218, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
219, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 220, -1, -1, 221, -1, -1,
-1, -1, -1, -1, -1, -1, 222, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 223, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 224,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 225, -1, -1, -1, 226, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 227, -1, -1,
-1, -1, -1, 228, 229, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 230, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 231, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 232, -1,
-1, -1, -1, -1, -1, -1, 233, -1,
-1, -1, 234, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 235, -1, -1, -1, 236, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
237, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 238, -1, -1, 239,
-1, -1, 240, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 241, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 242,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 243, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, 244, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, 245, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 246, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 247, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 248, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 249, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 250, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
251
};
if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
{
register int key = hash_val (str, len);
if (key <= MAX_HASH_VALUE && key >= 0)
{
register int index = lookup[key];
if (index >= 0)
{
register const char *s = wordlist_value[index].name;
if (*str == *s && !strcmp (str + 1, s + 1))
return &wordlist_value[index];
}
else if (index < -TOTAL_KEYWORDS)
{
register int offset = - 1 - TOTAL_KEYWORDS - index;
register const struct css_value *wordptr = &wordlist_value[TOTAL_KEYWORDS + lookup[offset]];
register const struct css_value *wordendptr = wordptr + -lookup[offset + 1];
while (wordptr < wordendptr)
{
register const char *s = wordptr->name;
if (*str == *s && !strcmp (str + 1, s + 1))
return wordptr;
wordptr++;
}
}
}
}
return 0;
}
static const char * const valueList[] = {
"",
"inherit",
"initial",
"none",
"hidden",
"inset",
"groove",
"ridge",
"outset",
"dotted",
"dashed",
"solid",
"double",
"caption",
"icon",
"menu",
"message-box",
"small-caption",
"status-bar",
"italic",
"oblique",
"small-caps",
"normal",
"bold",
"bolder",
"lighter",
"100",
"200",
"300",
"400",
"500",
"600",
"700",
"800",
"900",
"xx-small",
"x-small",
"small",
"medium",
"large",
"x-large",
"xx-large",
"-khtml-xxx-large",
"smaller",
"larger",
"wider",
"narrower",
"ultra-condensed",
"extra-condensed",
"condensed",
"semi-condensed",
"semi-expanded",
"expanded",
"extra-expanded",
"ultra-expanded",
"serif",
"sans-serif",
"cursive",
"fantasy",
"monospace",
"-khtml-body",
"aqua",
"black",
"blue",
"fuchsia",
"gray",
"green",
"lime",
"maroon",
"navy",
"olive",
"orange",
"purple",
"red",
"silver",
"teal",
"white",
"yellow",
"transparent",
"activeborder",
"activecaption",
"appworkspace",
"background",
"buttonface",
"buttonhighlight",
"buttonshadow",
"buttontext",
"captiontext",
"graytext",
"highlight",
"highlighttext",
"inactiveborder",
"inactivecaption",
"inactivecaptiontext",
"infobackground",
"infotext",
"menutext",
"scrollbar",
"threeddarkshadow",
"threedface",
"threedhighlight",
"threedlightshadow",
"threedshadow",
"window",
"windowframe",
"windowtext",
"grey",
"-khtml-text",
"repeat",
"repeat-x",
"repeat-y",
"no-repeat",
"baseline",
"middle",
"sub",
"super",
"text-top",
"text-bottom",
"top",
"bottom",
"-khtml-baseline-middle",
"-khtml-auto",
"left",
"right",
"center",
"justify",
"-khtml-left",
"-khtml-right",
"-khtml-center",
"outside",
"inside",
"disc",
"circle",
"square",
"decimal",
"decimal-leading-zero",
"lower-roman",
"upper-roman",
"lower-greek",
"lower-alpha",
"lower-latin",
"upper-alpha",
"upper-latin",
"hebrew",
"armenian",
"georgian",
"cjk-ideographic",
"hiragana",
"katakana",
"hiragana-iroha",
"katakana-iroha",
"inline",
"block",
"list-item",
"run-in",
"compact",
"inline-block",
"table",
"inline-table",
"table-row-group",
"table-header-group",
"table-footer-group",
"table-row",
"table-column-group",
"table-column",
"table-cell",
"table-caption",
"-khtml-box",
"-khtml-inline-box",
"auto",
"crosshair",
"default",
"pointer",
"move",
"e-resize",
"ne-resize",
"nw-resize",
"n-resize",
"se-resize",
"sw-resize",
"s-resize",
"w-resize",
"text",
"wait",
"help",
"ltr",
"rtl",
"capitalize",
"uppercase",
"lowercase",
"visible",
"collapse",
"above",
"absolute",
"always",
"avoid",
"below",
"bidi-override",
"blink",
"both",
"close-quote",
"crop",
"cross",
"embed",
"fixed",
"hand",
"hide",
"higher",
"invert",
"landscape",
"level",
"line-through",
"loud",
"lower",
"marquee",
"mix",
"no-close-quote",
"no-open-quote",
"nowrap",
"open-quote",
"overline",
"portrait",
"pre",
"relative",
"scroll",
"separate",
"show",
"static",
"thick",
"thin",
"underline",
"-khtml-nowrap",
"stretch",
"start",
"end",
"reverse",
"horizontal",
"vertical",
"inline-axis",
"block-axis",
"single",
"multiple",
"forwards",
"backwards",
"ahead",
"up",
"down",
"slow",
"fast",
"infinite",
"slide",
"alternate",
"unfurl",
0
};
DOMString getValueName(unsigned short id)
{
if(id >= CSS_VAL_TOTAL || id == 0)
return DOMString();
else
return DOMString(valueList[id]);
};