diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/treebuilder/Makefile | 8 | ||||
-rw-r--r-- | src/treebuilder/autogenerated-element-type.c | 705 |
2 files changed, 706 insertions, 7 deletions
diff --git a/src/treebuilder/Makefile b/src/treebuilder/Makefile index ce00a4c..ae2d9c4 100644 --- a/src/treebuilder/Makefile +++ b/src/treebuilder/Makefile @@ -6,12 +6,6 @@ DIR_SOURCES := treebuilder.c \ in_cell.c in_select.c in_select_in_table.c \ in_foreign_content.c after_body.c in_frameset.c \ after_frameset.c after_after_body.c after_after_frameset.c \ - generic_rcdata.c element-type.c - -$(DIR)element-type.c: $(DIR)element-type.gperf - $(VQ)$(ECHO) " GPERF: $<" - $(Q)gperf --output-file=$@ $< - -CLEAN_ITEMS := $(DIR)element-type.c + generic_rcdata.c autogenerated-element-type.c include $(NSBUILD)/Makefile.subdir diff --git a/src/treebuilder/autogenerated-element-type.c b/src/treebuilder/autogenerated-element-type.c new file mode 100644 index 0000000..f3b4f30 --- /dev/null +++ b/src/treebuilder/autogenerated-element-type.c @@ -0,0 +1,705 @@ +/* ANSI-C code produced by gperf version 3.1 */ +/* Command-line: gperf --output-file=src/treebuilder/autogenerated-element-type.c src/treebuilder/element-type.gperf */ +/* Computed positions: -k'1-2,$' */ + +#if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \ + && ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \ + && (')' == 41) && ('*' == 42) && ('+' == 43) && (',' == 44) \ + && ('-' == 45) && ('.' == 46) && ('/' == 47) && ('0' == 48) \ + && ('1' == 49) && ('2' == 50) && ('3' == 51) && ('4' == 52) \ + && ('5' == 53) && ('6' == 54) && ('7' == 55) && ('8' == 56) \ + && ('9' == 57) && (':' == 58) && (';' == 59) && ('<' == 60) \ + && ('=' == 61) && ('>' == 62) && ('?' == 63) && ('A' == 65) \ + && ('B' == 66) && ('C' == 67) && ('D' == 68) && ('E' == 69) \ + && ('F' == 70) && ('G' == 71) && ('H' == 72) && ('I' == 73) \ + && ('J' == 74) && ('K' == 75) && ('L' == 76) && ('M' == 77) \ + && ('N' == 78) && ('O' == 79) && ('P' == 80) && ('Q' == 81) \ + && ('R' == 82) && ('S' == 83) && ('T' == 84) && ('U' == 85) \ + && ('V' == 86) && ('W' == 87) && ('X' == 88) && ('Y' == 89) \ + && ('Z' == 90) && ('[' == 91) && ('\\' == 92) && (']' == 93) \ + && ('^' == 94) && ('_' == 95) && ('a' == 97) && ('b' == 98) \ + && ('c' == 99) && ('d' == 100) && ('e' == 101) && ('f' == 102) \ + && ('g' == 103) && ('h' == 104) && ('i' == 105) && ('j' == 106) \ + && ('k' == 107) && ('l' == 108) && ('m' == 109) && ('n' == 110) \ + && ('o' == 111) && ('p' == 112) && ('q' == 113) && ('r' == 114) \ + && ('s' == 115) && ('t' == 116) && ('u' == 117) && ('v' == 118) \ + && ('w' == 119) && ('x' == 120) && ('y' == 121) && ('z' == 122) \ + && ('{' == 123) && ('|' == 124) && ('}' == 125) && ('~' == 126)) +/* The character set is not based on ISO-646. */ +#error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gperf@gnu.org>." +#endif + +#line 17 "src/treebuilder/element-type.gperf" + +#include <string.h> + +#include "treebuilder/element-type.h" + +#line 24 "src/treebuilder/element-type.gperf" +struct element_type_map; + +#define TOTAL_KEYWORDS 106 +#define MIN_WORD_LENGTH 1 +#define MAX_WORD_LENGTH 14 +#define MIN_HASH_VALUE 1 +#define MAX_HASH_VALUE 219 +/* maximum key range = 219, duplicates = 0 */ + +#ifndef GPERF_DOWNCASE +#define GPERF_DOWNCASE 1 +static unsigned char gperf_downcase[256] = + { + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, + 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, + 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, + 60, 61, 62, 63, 64, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, + 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, + 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, + 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, + 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, + 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, + 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, + 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, + 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, + 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, + 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, + 255 + }; +#endif + +#ifndef GPERF_CASE_STRNCMP +#define GPERF_CASE_STRNCMP 1 +static int +gperf_case_strncmp (register const char *s1, register const char *s2, register size_t n) +{ + for (; n > 0;) + { + unsigned char c1 = gperf_downcase[(unsigned char)*s1++]; + unsigned char c2 = gperf_downcase[(unsigned char)*s2++]; + if (c1 != 0 && c1 == c2) + { + n--; + continue; + } + return (int)c1 - (int)c2; + } + return 0; +} +#endif + +#ifdef __GNUC__ +__inline +#else +#ifdef __cplusplus +inline +#endif +#endif +static unsigned int +hubbub_element_type_hash (register const char *str, register size_t len) +{ + static const unsigned char asso_values[] = + { + 220, 220, 220, 220, 220, 220, 220, 220, 220, 220, + 220, 220, 220, 220, 220, 220, 220, 220, 220, 220, + 220, 220, 220, 220, 220, 220, 220, 220, 220, 220, + 220, 220, 220, 220, 220, 220, 220, 220, 220, 220, + 220, 220, 220, 220, 220, 220, 220, 220, 220, 60, + 20, 70, 105, 50, 10, 50, 5, 220, 220, 220, + 220, 220, 220, 220, 220, 0, 95, 40, 20, 10, + 5, 35, 35, 60, 70, 15, 55, 5, 15, 70, + 35, 0, 0, 10, 0, 100, 125, 40, 10, 65, + 220, 220, 220, 220, 220, 220, 220, 0, 95, 40, + 20, 10, 5, 35, 35, 60, 70, 15, 55, 5, + 15, 70, 35, 0, 0, 10, 0, 100, 125, 40, + 10, 65, 220, 220, 220, 220, 220, 220, 220, 220, + 220, 220, 220, 220, 220, 220, 220, 220, 220, 220, + 220, 220, 220, 220, 220, 220, 220, 220, 220, 220, + 220, 220, 220, 220, 220, 220, 220, 220, 220, 220, + 220, 220, 220, 220, 220, 220, 220, 220, 220, 220, + 220, 220, 220, 220, 220, 220, 220, 220, 220, 220, + 220, 220, 220, 220, 220, 220, 220, 220, 220, 220, + 220, 220, 220, 220, 220, 220, 220, 220, 220, 220, + 220, 220, 220, 220, 220, 220, 220, 220, 220, 220, + 220, 220, 220, 220, 220, 220, 220, 220, 220, 220, + 220, 220, 220, 220, 220, 220, 220, 220, 220, 220, + 220, 220, 220, 220, 220, 220, 220, 220, 220, 220, + 220, 220, 220, 220, 220, 220, 220, 220, 220, 220, + 220, 220, 220, 220, 220, 220, 220, 220 + }; + register unsigned int hval = len; + + switch (hval) + { + default: + hval += asso_values[(unsigned char)str[1]+2]; + /*FALLTHROUGH*/ + case 1: + hval += asso_values[(unsigned char)str[0]]; + break; + } + return hval + asso_values[(unsigned char)str[len - 1]]; +} + +const struct element_type_map * +hubbub_element_type_lookup (register const char *str, register size_t len) +{ + static const struct element_type_map wordlist[] = + { +#line 26 "src/treebuilder/element-type.gperf" + {"a", A}, +#line 126 "src/treebuilder/element-type.gperf" + {"tr", TR}, +#line 30 "src/treebuilder/element-type.gperf" + {"area", AREA}, +#line 29 "src/treebuilder/element-type.gperf" + {"applet", APPLET}, +#line 60 "src/treebuilder/element-type.gperf" + {"font", FONT}, +#line 61 "src/treebuilder/element-type.gperf" + {"footer", FOOTER}, +#line 65 "src/treebuilder/element-type.gperf" + {"frameset", FRAMESET}, +#line 63 "src/treebuilder/element-type.gperf" + {"form", FORM}, +#line 112 "src/treebuilder/element-type.gperf" + {"spacer", SPACER}, +#line 31 "src/treebuilder/element-type.gperf" + {"article", ARTICLE}, +#line 62 "src/treebuilder/element-type.gperf" + {"foreignobject", FOREIGNOBJECT}, +#line 95 "src/treebuilder/element-type.gperf" + {"nobr", NOBR}, +#line 64 "src/treebuilder/element-type.gperf" + {"frame", FRAME}, +#line 108 "src/treebuilder/element-type.gperf" + {"s", S}, +#line 27 "src/treebuilder/element-type.gperf" + {"address", ADDRESS}, +#line 98 "src/treebuilder/element-type.gperf" + {"noscript", NOSCRIPT}, +#line 109 "src/treebuilder/element-type.gperf" + {"script", SCRIPT}, +#line 120 "src/treebuilder/element-type.gperf" + {"td", TD}, +#line 57 "src/treebuilder/element-type.gperf" + {"fieldset", FIELDSET}, +#line 125 "src/treebuilder/element-type.gperf" + {"title", TITLE}, +#line 97 "src/treebuilder/element-type.gperf" + {"noframes", NOFRAMES}, +#line 59 "src/treebuilder/element-type.gperf" + {"figure", FIGURE}, +#line 73 "src/treebuilder/element-type.gperf" + {"hr", HR}, +#line 51 "src/treebuilder/element-type.gperf" + {"dir", DIR}, +#line 122 "src/treebuilder/element-type.gperf" + {"tfoot", TFOOT}, +#line 96 "src/treebuilder/element-type.gperf" + {"noembed", NOEMBED}, +#line 121 "src/treebuilder/element-type.gperf" + {"textarea", TEXTAREA}, +#line 88 "src/treebuilder/element-type.gperf" + {"meta", META}, +#line 58 "src/treebuilder/element-type.gperf" + {"figcaption", FIGCAPTION}, +#line 47 "src/treebuilder/element-type.gperf" + {"dd", DD}, +#line 107 "src/treebuilder/element-type.gperf" + {"pre", PRE}, +#line 110 "src/treebuilder/element-type.gperf" + {"select", SELECT}, +#line 71 "src/treebuilder/element-type.gperf" + {"h6", H6}, +#line 118 "src/treebuilder/element-type.gperf" + {"table", TABLE}, +#line 91 "src/treebuilder/element-type.gperf" + {"mn", MN}, +#line 117 "src/treebuilder/element-type.gperf" + {"svg", SVG}, +#line 106 "src/treebuilder/element-type.gperf" + {"plaintext", PLAINTEXT}, +#line 85 "src/treebuilder/element-type.gperf" + {"marquee", MARQUEE}, +#line 130 "src/treebuilder/element-type.gperf" + {"wbr", WBR}, +#line 46 "src/treebuilder/element-type.gperf" + {"command", COMMAND}, +#line 84 "src/treebuilder/element-type.gperf" + {"malignmark", MALIGNMARK}, +#line 104 "src/treebuilder/element-type.gperf" + {"p", P}, +#line 49 "src/treebuilder/element-type.gperf" + {"details", DETAILS}, +#line 50 "src/treebuilder/element-type.gperf" + {"dialog", DIALOG}, +#line 92 "src/treebuilder/element-type.gperf" + {"mo", MO}, +#line 43 "src/treebuilder/element-type.gperf" + {"center", CENTER}, +#line 90 "src/treebuilder/element-type.gperf" + {"mi", MI}, +#line 45 "src/treebuilder/element-type.gperf" + {"colgroup", COLGROUP}, +#line 86 "src/treebuilder/element-type.gperf" + {"math", MATH}, +#line 105 "src/treebuilder/element-type.gperf" + {"param", PARAM}, +#line 55 "src/treebuilder/element-type.gperf" + {"em", EM}, +#line 82 "src/treebuilder/element-type.gperf" + {"link", LINK}, +#line 119 "src/treebuilder/element-type.gperf" + {"tbody", TBODY}, +#line 102 "src/treebuilder/element-type.gperf" + {"option", OPTION}, +#line 53 "src/treebuilder/element-type.gperf" + {"dl", DL}, +#line 72 "src/treebuilder/element-type.gperf" + {"head", HEAD}, +#line 124 "src/treebuilder/element-type.gperf" + {"thead", THEAD}, +#line 99 "src/treebuilder/element-type.gperf" + {"object", OBJECT}, +#line 40 "src/treebuilder/element-type.gperf" + {"br", BR}, +#line 44 "src/treebuilder/element-type.gperf" + {"col", COL}, +#line 48 "src/treebuilder/element-type.gperf" + {"desc", DESC}, +#line 79 "src/treebuilder/element-type.gperf" + {"input", INPUT}, +#line 42 "src/treebuilder/element-type.gperf" + {"caption", CAPTION}, +#line 28 "src/treebuilder/element-type.gperf" + {"annotation-xml", ANNOTATION_XML}, +#line 56 "src/treebuilder/element-type.gperf" + {"embed", EMBED}, +#line 89 "src/treebuilder/element-type.gperf" + {"mglyph", MGLYPH}, +#line 123 "src/treebuilder/element-type.gperf" + {"th", TH}, +#line 76 "src/treebuilder/element-type.gperf" + {"iframe", IFRAME}, +#line 83 "src/treebuilder/element-type.gperf" + {"listing", LISTING}, +#line 101 "src/treebuilder/element-type.gperf" + {"optgroup", OPTGROUP}, +#line 32 "src/treebuilder/element-type.gperf" + {"aside", ASIDE}, +#line 103 "src/treebuilder/element-type.gperf" + {"output", OUTPUT}, +#line 93 "src/treebuilder/element-type.gperf" + {"ms", MS}, +#line 131 "src/treebuilder/element-type.gperf" + {"xmp", XMP}, +#line 75 "src/treebuilder/element-type.gperf" + {"i", I}, +#line 116 "src/treebuilder/element-type.gperf" + {"summary", SUMMARY}, +#line 127 "src/treebuilder/element-type.gperf" + {"tt", TT}, +#line 38 "src/treebuilder/element-type.gperf" + {"blockquote", BLOCKQUOTE}, +#line 81 "src/treebuilder/element-type.gperf" + {"li", LI}, +#line 94 "src/treebuilder/element-type.gperf" + {"mtext", MTEXT}, +#line 70 "src/treebuilder/element-type.gperf" + {"h5", H5}, +#line 111 "src/treebuilder/element-type.gperf" + {"small", SMALL}, +#line 100 "src/treebuilder/element-type.gperf" + {"ol", OL}, +#line 35 "src/treebuilder/element-type.gperf" + {"basefont", BASEFONT}, +#line 87 "src/treebuilder/element-type.gperf" + {"menu", MENU}, +#line 77 "src/treebuilder/element-type.gperf" + {"image", IMAGE}, +#line 54 "src/treebuilder/element-type.gperf" + {"dt", DT}, +#line 37 "src/treebuilder/element-type.gperf" + {"big", BIG}, +#line 34 "src/treebuilder/element-type.gperf" + {"base", BASE}, +#line 115 "src/treebuilder/element-type.gperf" + {"style", STYLE}, +#line 113 "src/treebuilder/element-type.gperf" + {"strike", STRIKE}, +#line 69 "src/treebuilder/element-type.gperf" + {"h4", H4}, +#line 41 "src/treebuilder/element-type.gperf" + {"button", BUTTON}, +#line 68 "src/treebuilder/element-type.gperf" + {"h3", H3}, +#line 67 "src/treebuilder/element-type.gperf" + {"h2", H2}, +#line 52 "src/treebuilder/element-type.gperf" + {"div", DIV}, +#line 39 "src/treebuilder/element-type.gperf" + {"body", BODY}, +#line 66 "src/treebuilder/element-type.gperf" + {"h1", H1}, +#line 78 "src/treebuilder/element-type.gperf" + {"img", IMG}, +#line 129 "src/treebuilder/element-type.gperf" + {"ul", UL}, +#line 114 "src/treebuilder/element-type.gperf" + {"strong", STRONG}, +#line 80 "src/treebuilder/element-type.gperf" + {"isindex", ISINDEX}, +#line 36 "src/treebuilder/element-type.gperf" + {"bgsound", BGSOUND}, +#line 33 "src/treebuilder/element-type.gperf" + {"b", B}, +#line 128 "src/treebuilder/element-type.gperf" + {"u", U}, +#line 74 "src/treebuilder/element-type.gperf" + {"html", HTML} + }; + + if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH) + { + register unsigned int key = hubbub_element_type_hash (str, len); + + if (key <= MAX_HASH_VALUE && key >= MIN_HASH_VALUE) + { + register const struct element_type_map *resword; + + switch (key - 1) + { + case 0: + resword = &wordlist[0]; + goto compare; + case 1: + resword = &wordlist[1]; + goto compare; + case 3: + resword = &wordlist[2]; + goto compare; + case 5: + resword = &wordlist[3]; + goto compare; + case 8: + resword = &wordlist[4]; + goto compare; + case 10: + resword = &wordlist[5]; + goto compare; + case 12: + resword = &wordlist[6]; + goto compare; + case 13: + resword = &wordlist[7]; + goto compare; + case 15: + resword = &wordlist[8]; + goto compare; + case 16: + resword = &wordlist[9]; + goto compare; + case 17: + resword = &wordlist[10]; + goto compare; + case 18: + resword = &wordlist[11]; + goto compare; + case 19: + resword = &wordlist[12]; + goto compare; + case 20: + resword = &wordlist[13]; + goto compare; + case 21: + resword = &wordlist[14]; + goto compare; + case 22: + resword = &wordlist[15]; + goto compare; + case 25: + resword = &wordlist[16]; + goto compare; + case 26: + resword = &wordlist[17]; + goto compare; + case 27: + resword = &wordlist[18]; + goto compare; + case 29: + resword = &wordlist[19]; + goto compare; + case 32: + resword = &wordlist[20]; + goto compare; + case 35: + resword = &wordlist[21]; + goto compare; + case 36: + resword = &wordlist[22]; + goto compare; + case 37: + resword = &wordlist[23]; + goto compare; + case 39: + resword = &wordlist[24]; + goto compare; + case 41: + resword = &wordlist[25]; + goto compare; + case 42: + resword = &wordlist[26]; + goto compare; + case 43: + resword = &wordlist[27]; + goto compare; + case 44: + resword = &wordlist[28]; + goto compare; + case 46: + resword = &wordlist[29]; + goto compare; + case 47: + resword = &wordlist[30]; + goto compare; + case 50: + resword = &wordlist[31]; + goto compare; + case 51: + resword = &wordlist[32]; + goto compare; + case 54: + resword = &wordlist[33]; + goto compare; + case 56: + resword = &wordlist[34]; + goto compare; + case 57: + resword = &wordlist[35]; + goto compare; + case 58: + resword = &wordlist[36]; + goto compare; + case 61: + resword = &wordlist[37]; + goto compare; + case 62: + resword = &wordlist[38]; + goto compare; + case 66: + resword = &wordlist[39]; + goto compare; + case 69: + resword = &wordlist[40]; + goto compare; + case 70: + resword = &wordlist[41]; + goto compare; + case 71: + resword = &wordlist[42]; + goto compare; + case 75: + resword = &wordlist[43]; + goto compare; + case 76: + resword = &wordlist[44]; + goto compare; + case 80: + resword = &wordlist[45]; + goto compare; + case 81: + resword = &wordlist[46]; + goto compare; + case 82: + resword = &wordlist[47]; + goto compare; + case 83: + resword = &wordlist[48]; + goto compare; + case 84: + resword = &wordlist[49]; + goto compare; + case 86: + resword = &wordlist[50]; + goto compare; + case 88: + resword = &wordlist[51]; + goto compare; + case 89: + resword = &wordlist[52]; + goto compare; + case 90: + resword = &wordlist[53]; + goto compare; + case 91: + resword = &wordlist[54]; + goto compare; + case 93: + resword = &wordlist[55]; + goto compare; + case 94: + resword = &wordlist[56]; + goto compare; + case 95: + resword = &wordlist[57]; + goto compare; + case 96: + resword = &wordlist[58]; + goto compare; + case 97: + resword = &wordlist[59]; + goto compare; + case 98: + resword = &wordlist[60]; + goto compare; + case 99: + resword = &wordlist[61]; + goto compare; + case 101: + resword = &wordlist[62]; + goto compare; + case 103: + resword = &wordlist[63]; + goto compare; + case 104: + resword = &wordlist[64]; + goto compare; + case 105: + resword = &wordlist[65]; + goto compare; + case 106: + resword = &wordlist[66]; + goto compare; + case 110: + resword = &wordlist[67]; + goto compare; + case 111: + resword = &wordlist[68]; + goto compare; + case 112: + resword = &wordlist[69]; + goto compare; + case 114: + resword = &wordlist[70]; + goto compare; + case 115: + resword = &wordlist[71]; + goto compare; + case 116: + resword = &wordlist[72]; + goto compare; + case 117: + resword = &wordlist[73]; + goto compare; + case 120: + resword = &wordlist[74]; + goto compare; + case 121: + resword = &wordlist[75]; + goto compare; + case 126: + resword = &wordlist[76]; + goto compare; + case 129: + resword = &wordlist[77]; + goto compare; + case 131: + resword = &wordlist[78]; + goto compare; + case 134: + resword = &wordlist[79]; + goto compare; + case 136: + resword = &wordlist[80]; + goto compare; + case 139: + resword = &wordlist[81]; + goto compare; + case 141: + resword = &wordlist[82]; + goto compare; + case 142: + resword = &wordlist[83]; + goto compare; + case 143: + resword = &wordlist[84]; + goto compare; + case 144: + resword = &wordlist[85]; + goto compare; + case 146: + resword = &wordlist[86]; + goto compare; + case 147: + resword = &wordlist[87]; + goto compare; + case 148: + resword = &wordlist[88]; + goto compare; + case 149: + resword = &wordlist[89]; + goto compare; + case 150: + resword = &wordlist[90]; + goto compare; + case 151: + resword = &wordlist[91]; + goto compare; + case 155: + resword = &wordlist[92]; + goto compare; + case 156: + resword = &wordlist[93]; + goto compare; + case 161: + resword = &wordlist[94]; + goto compare; + case 162: + resword = &wordlist[95]; + goto compare; + case 163: + resword = &wordlist[96]; + goto compare; + case 166: + resword = &wordlist[97]; + goto compare; + case 167: + resword = &wordlist[98]; + goto compare; + case 171: + resword = &wordlist[99]; + goto compare; + case 175: + resword = &wordlist[100]; + goto compare; + case 176: + resword = &wordlist[101]; + goto compare; + case 181: + resword = &wordlist[102]; + goto compare; + case 190: + resword = &wordlist[103]; + goto compare; + case 200: + resword = &wordlist[104]; + goto compare; + case 218: + resword = &wordlist[105]; + goto compare; + } + return 0; + compare: + { + register const char *s = resword->name; + + if ((((unsigned char)*str ^ (unsigned char)*s) & ~32) == 0 && !gperf_case_strncmp (str, s, len) && s[len] == '\0') + return resword; + } + } + } + return 0; +} |